diff --git a/packages/bcf/src/LoadBCFViewpointParams.ts b/packages/bcf/src/LoadBCFViewpointParams.ts index 9f8f67839..63510a072 100644 --- a/packages/bcf/src/LoadBCFViewpointParams.ts +++ b/packages/bcf/src/LoadBCFViewpointParams.ts @@ -3,7 +3,7 @@ import type {BCFViewpoint} from "./BCFViewpoint"; import {Data} from "@xeokit/data"; /** - * Options for {@link @xeokit/bcf!loadBCFViewpoint}. + * Options for {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint}. * * See {@link "@xeokit/bcf" | @xeokit/bcf} for usage. */ @@ -30,7 +30,7 @@ export interface LoadBCFViewpointParams { * {@link @xeokit/viewer!ViewObject | ViewObjects} within the given target View, ignoring any * {@link @xeokit/viewer!ViewLayer | ViewLayers} that those ViewObjects may have been partitioned into. * - * The {@link @xeokit/bcf!loadBCFViewpoint} function will silently ignore each component state that has no corresponding + * The {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} function will silently ignore each component state that has no corresponding * ViewObject in the target View. */ view: View; @@ -44,7 +44,7 @@ export interface LoadBCFViewpointParams { * Only load BCF viewpoint components if their corresponding {@link @xeokit/viewer!ViewObject | ViewObjects} * are in {@link @xeokit/viewer!ViewLayer |ViewLayers} that have the given IDs. * - * The {@link @xeokit/bcf!loadBCFViewpoint} function will silently ignore each component state that has no corresponding + * The {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} function will silently ignore each component state that has no corresponding * ViewObject in any of these ViewLayers. * * Each ViewLayer's occurrence in {@link @xeokit/bcf!LoadBCFViewpointParams.excludeLayerIds | LoadBCFViewpointParams.excludeLayerIds} will override @@ -56,7 +56,7 @@ export interface LoadBCFViewpointParams { * Never load BCF viewpoint components if their corresponding {@link @xeokit/viewer!ViewObject | ViewObjects} * are in {@link @xeokit/viewer!ViewLayer | ViewLayers} that have the given IDs. * - * The {@link @xeokit/bcf!loadBCFViewpoint} function will silently ignore each component state that has a corresponding + * The {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} function will silently ignore each component state that has a corresponding * ViewObject in any of these ViewLayers. * * Each ViewLayer's occurrence in this list will override its occurrance diff --git a/packages/bcf/src/SaveBCFViewpointParams.ts b/packages/bcf/src/SaveBCFViewpointParams.ts index 11c6743ba..30145df72 100644 --- a/packages/bcf/src/SaveBCFViewpointParams.ts +++ b/packages/bcf/src/SaveBCFViewpointParams.ts @@ -1,7 +1,7 @@ import type {View} from "@xeokit/viewer"; /** - * Options for {@link @xeokit/bcf!saveBCFViewpoint}. + * Options for {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint}. * * See {@link "@xeokit/bcf" | @xeokit/bcf} for usage. */ @@ -68,7 +68,7 @@ export interface SaveBCFViewpointParams { * Only save BCF viewpoint components if their corresponding {@link @xeokit/viewer!ViewObject | ViewObjects} * are in {@link @xeokit/viewer!ViewLayer | ViewLayers} that match these IDs. * - * The {@link @xeokit/bcf!saveBCFViewpoint} function will silently ignore each component state that has no corresponding + * The {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} function will silently ignore each component state that has no corresponding * ViewObject in any of these ViewLayers. * * Each ViewLayer's occurrence in {@link @xeokit/bcf!SaveBCFViewpointParams.excludeLayerIds | SaveBCFViewpointParams.excludeLayerIds} will override @@ -80,7 +80,7 @@ export interface SaveBCFViewpointParams { * Never save BCF viewpoint components if their corresponding {@link @xeokit/viewer!ViewObject | ViewObjects} * are in {@link @xeokit/viewer!ViewLayer |ViewLayers} that have the given IDs. * - * The {@link @xeokit/bcf!saveBCFViewpoint} function will silently ignore each component state that has a corresponding + * The {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} function will silently ignore each component state that has a corresponding * ViewObject in any of these ViewLayers. * * Each ViewLayer's occurrence in this list will override its occurrance diff --git a/packages/bcf/src/index.ts b/packages/bcf/src/index.ts index 3b21f73cb..cbffb5f8f 100644 --- a/packages/bcf/src/index.ts +++ b/packages/bcf/src/index.ts @@ -19,10 +19,10 @@ * project stakeholders in BIM workflows. * * To import a JSON-encoded BCF viewpoint into a {@link @xeokit/viewer!View | View} belonging to a {@link @xeokit/viewer!Viewer | Viewer}, use the - * {@link @xeokit/bcf!loadBCFViewpoint} function. Similarly, to export the state of a View as a JSON-encoded BCF viewpoint, use - * the {@link @xeokit/bcf!saveBCFViewpoint} function. + * {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} function. Similarly, to export the state of a View as a JSON-encoded BCF viewpoint, use + * the {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} function. * - * Refer to {@link @xeokit/bcf!BCFViewpoint} for information on the BCF viewpoint format. + * Refer to {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} for information on the BCF viewpoint format. * *
* @@ -99,7 +99,7 @@ * {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt} events. * * On the SceneModel.onBuilt event, we'll customize the View by arranging the {@link @xeokit/viewer!Camera} and applying - * an X-ray effect tp a couple of objects, then we'll use {@link @xeokit/bcf!saveBCFViewpoint} to save the state of the View to + * an X-ray effect tp a couple of objects, then we'll use {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} to save the state of the View to * a BCF viewpoint. * * Once the SceneModel and DataModel have been built, we can no longer add anything to them. @@ -123,8 +123,8 @@ * }); * ```` * - * Now that we've saved the {@link @xeokit/bcf!BCFViewpoint}, we could now use {@link @xeokit/bcf!loadBCFViewpoint} to load - * the {@link @xeokit/bcf!BCFViewpoint} back into the {@link @xeokit/viewer!View | View}: + * Now that we've saved the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}, we could now use {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} to load + * the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} back into the {@link @xeokit/viewer!View | View}: * * ````javascript * loadBCFViewpoint({ @@ -188,8 +188,8 @@ * myOtherSceneModel.build(); * ```` * - * Now we can use {@link @xeokit/bcf!saveBCFViewpoint} to save the states of only the {@link @xeokit/viewer!ViewObject | ViewObjects} in the - * {@link @xeokit/viewer!ViewLayer | ViewLayer} that contains our SceneModel to a {@link @xeokit/bcf!BCFViewpoint}, while ignoring the + * Now we can use {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} to save the states of only the {@link @xeokit/viewer!ViewObject | ViewObjects} in the + * {@link @xeokit/viewer!ViewLayer | ViewLayer} that contains our SceneModel to a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}, while ignoring the * other ViewLayer: * * ````javascript @@ -200,7 +200,7 @@ * }); * ```` * - * Use {@link @xeokit/bcf!loadBCFViewpoint} to load the {@link @xeokit/bcf!BCFViewpoint} back into the {@link @xeokit/viewer!ViewLayer | ViewLayer}: + * Use {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} to load the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} back into the {@link @xeokit/viewer!ViewLayer | ViewLayer}: * * ````javascript * loadBCFViewpoint({ diff --git a/packages/bcf/src/loadBCFViewpoint.ts b/packages/bcf/src/loadBCFViewpoint.ts index 0ed498be0..08d905974 100644 --- a/packages/bcf/src/loadBCFViewpoint.ts +++ b/packages/bcf/src/loadBCFViewpoint.ts @@ -14,7 +14,7 @@ const tempVec3b = createVec3(); const tempVec3c = createVec3(); /** - * Loads a {@link @xeokit/bcf!BCFViewpoint} into a {@link @xeokit/viewer!View | View}. + * Loads a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} into a {@link @xeokit/viewer!View | View}. * * See {@link "@xeokit/bcf" | @xeokit/bcf} for usage. * diff --git a/packages/bcf/src/saveBCFViewpoint.ts b/packages/bcf/src/saveBCFViewpoint.ts index 49631f5c8..444ed9ac4 100644 --- a/packages/bcf/src/saveBCFViewpoint.ts +++ b/packages/bcf/src/saveBCFViewpoint.ts @@ -6,7 +6,7 @@ import {OrthoProjectionType} from "@xeokit/constants"; import {ViewObject} from "@xeokit/viewer"; /** - * Saves a {@link @xeokit/viewer!View | View} to a {@link @xeokit/bcf!BCFViewpoint}. + * Saves a {@link @xeokit/viewer!View | View} to a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}. * * See {@link "@xeokit/bcf" | @xeokit/bcf} for usage. * diff --git a/packages/compression/src/index.ts b/packages/compression/src/index.ts index c7749ba92..2befb38dc 100644 --- a/packages/compression/src/index.ts +++ b/packages/compression/src/index.ts @@ -22,8 +22,8 @@ * indices for triangle meshes, ignoring normals (as shaders auto-generate them), converting positions to relative-to-center (RTC) * coordinates, and quantizing positions and UVs as 16-bit unsigned integers. * - * An example usage includes compressing a SceneGeometryParams into a {@link @xeokit/scene!SceneGeometryCompressedParams} using the - * {@link @xeokit/scene!compressGeometryParams} function. + * An example usage includes compressing a SceneGeometryParams into a {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} using the + * {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function. * * The resulting SceneGeometryCompressedParams object shows vertex positions relative to the origin * and quantized to 16-bit integers, duplicate positions removed, and adjusted indices. Additionally, edge indices are @@ -52,7 +52,7 @@ * * ## Usage * - * In the example below, we'll use {@link @xeokit/scene!compressGeometryParams} to compress + * In the example below, we'll use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}. * @@ -120,7 +120,7 @@ * } * ```` * - * In the next example, we'll again use {@link @xeokit/scene!compressGeometryParams} to compress + * In the next example, we'll again use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}, which we'll then use to * create a compressed geometry within a {@link @xeokit/scene!SceneModel | SceneModel}. diff --git a/packages/core/src/Component.ts b/packages/core/src/Component.ts index 8ad712767..26f46d144 100755 --- a/packages/core/src/Component.ts +++ b/packages/core/src/Component.ts @@ -45,7 +45,7 @@ export class Component { #ownedComponents: null | { [key: string]: Component }; /** - * Emits an event when the {@link @xeokit/core!Component} has been destroyed. + * Emits an event when the {@link @xeokit/core!Component | Component} has been destroyed. * * @event */ diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index c1e8aea05..52dd07e87 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -6,7 +6,7 @@ * * ## xeokit SDK Core Components * - * * {@link @xeokit/core!Component} base class + * * {@link @xeokit/core!Component | Component} base class * * Various interfaces that are implemented throughout the SDK. * * ## Installation diff --git a/packages/demos/js/xeokit-demo-bundle.js b/packages/demos/js/xeokit-demo-bundle.js index b5c27c929..67692bb7c 100644 --- a/packages/demos/js/xeokit-demo-bundle.js +++ b/packages/demos/js/xeokit-demo-bundle.js @@ -1888,7 +1888,7 @@ var Component = class { #owner; #ownedComponents; /** - * Emits an event when the {@link @xeokit/core!Component} has been destroyed. + * Emits an event when the {@link @xeokit/core!Component | Component} has been destroyed. * * @event */ @@ -1933,7 +1933,7 @@ var Component = class { * Logs an error for this component to the JavaScript console. * * The console message will have this format: *````[ERROR] [ =: ````* - + @param message The error message to log @protected */ @@ -11151,7 +11151,7 @@ var SceneModel = class extends Component { * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from pre-compressed geometry parameters. * * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}. - * * Use {@link @xeokit/scene!compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} + * * Use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} * into {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}. * * ### Usage @@ -11314,8 +11314,15 @@ var SceneModel = class extends Component { } else { matrix = matrix.slice(); } - const origin2 = createVec3(); - const rtcMatrix = createRTCModelMat(matrix, origin2); + let origin2; + let rtcMatrix = matrix; + if (meshParams.origin) { + origin2 = meshParams.origin; + rtcMatrix = matrix; + } else { + origin2 = createVec3(); + rtcMatrix = createRTCModelMat(matrix, origin2); + } const tile = this.scene.getTile(origin2); if (!this.tiles[tile.id]) { this.tiles[tile.id] = tile; @@ -107459,7 +107466,7 @@ var LASLoader3 = { // ../las/dist/loadLAS.js var MAX_VERTICES = 5e5; -function loadLAS(params2) { +function loadLAS(params2, options = {}) { return new Promise(function(resolve2, reject) { const dataModel = params2.dataModel; const sceneModel = params2.sceneModel; @@ -107475,7 +107482,7 @@ function loadLAS(params2) { if (dataModel?.built) { throw new SDKError("DataModel already built"); } - const skip = params2.skip || 1; + const skip = options.skip || 1; const log2 = (msg) => { if (params2.log) { params2.log(msg); @@ -107483,8 +107490,8 @@ function loadLAS(params2) { }; parse(params2.fileData, LASLoader3, { las: { - colorDepth: params2.colorDepth || "auto", - fp64: params2.fp64 !== void 0 ? params2.fp64 : false + colorDepth: options.colorDepth || "auto", + fp64: options.fp64 !== void 0 ? options.fp64 : false } }).then((parsedData) => { const attributes = parsedData.attributes; @@ -107579,7 +107586,7 @@ function loadLAS(params2) { }); function readPositions(positionsValue) { if (positionsValue) { - if (params2.center) { + if (options.center) { const centerPos = createVec3(); const numPoints = positionsValue.length; for (let i2 = 0, len = positionsValue.length; i2 < len; i2 += 3) { @@ -107596,8 +107603,8 @@ function loadLAS(params2) { positionsValue[i2 + 2] -= centerPos[2]; } } - if (params2.transform) { - const mat = createMat4(params2.transform); + if (options.transform) { + const mat = createMat4(options.transform); const pos = createVec3(); for (let i2 = 0, len = positionsValue.length; i2 < len; i2 += 3) { pos[0] = positionsValue[i2 + 0]; @@ -114327,10 +114334,8 @@ function xktToModel(params2) { id: meshId, geometryId, textureSetId, - // origin: tileCenter, + origin: tileCenter, color: meshColor, - metallic: meshMetallic, - roughness: meshRoughness, opacity: meshOpacity }); meshIds.push(meshId); @@ -118364,7 +118369,7 @@ var Camera = class extends Component { } /** * Rotates {@link @xeokit/viewer!Camera.look | Camera.look} about {@link @xeokit/viewer!Camera.eye | Camera.eye}, around the right axis (orthogonal to {@link @xeokit/viewer!Camera.up | Camera.up} and "look"). - + * @param angleInc Angle of rotation in degrees */ pitch(angleInc) { @@ -118711,7 +118716,7 @@ var CameraFlightAnimation = class _CameraFlightAnimation extends Component { * * When the target is a boundary, the {@link @xeokit/viewer!Camera} will fly towards the target and stop when the target fills most of the canvas. * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up````, then CameraFlightAnimation will interpolate the {@link @xeokit/viewer!Camera} to that target and stop there. * - * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component} subtype that has + * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has * an AABB. Defaults to the {@link @xeokit/scene!Scene | Scene}, which causes the {@link @xeokit/viewer!Camera} to fit the Scene in view. * @param [params.arc=0] Factor in range ````[0..1]```` indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} position * will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} position as it flies to the target. @@ -118842,7 +118847,7 @@ var CameraFlightAnimation = class _CameraFlightAnimation extends Component { * * When the target is a boundary, this CameraFlightAnimation will position the {@link @xeokit/viewer!Camera} at where the target fills most of the canvas. * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up```` vectors, then this CameraFlightAnimation will jump the {@link @xeokit/viewer!Camera} to that target. * - * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component} subtype that has a World-space AABB. + * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has a World-space AABB. * @param [params.arc=0] Factor in range [0..1] indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} as it flies to the target. * @param {Number|String|Component} [params.component] ID or instance of a component to fly to. * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to. diff --git a/packages/demos/js/xeokit-demo-bundle.js.map b/packages/demos/js/xeokit-demo-bundle.js.map index 93a09d75f..854524586 100644 --- a/packages/demos/js/xeokit-demo-bundle.js.map +++ b/packages/demos/js/xeokit-demo-bundle.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/dispatching/DispatcherWrapper.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/events/Subscription.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/management/EventManagement.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/dispatching/DispatcherBase.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/dispatching/DispatchError.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/dispatching/EventListBase.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/handling/HandlingBase.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/events/PromiseSubscription.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/dispatching/PromiseDispatcherBase.js", "../../../node_modules/.pnpm/ste-core@3.0.11/node_modules/ste-core/dist/index.js", "../../../node_modules/.pnpm/ste-events@3.0.11/node_modules/ste-events/dist/EventDispatcher.js", "../../../node_modules/.pnpm/ste-events@3.0.11/node_modules/ste-events/dist/EventList.js", "../../../node_modules/.pnpm/ste-events@3.0.11/node_modules/ste-events/dist/EventHandlingBase.js", "../../../node_modules/.pnpm/ste-events@3.0.11/node_modules/ste-events/dist/NonUniformEventList.js", "../../../node_modules/.pnpm/ste-events@3.0.11/node_modules/ste-events/dist/index.js", "../../../node_modules/.pnpm/ste-simple-events@3.0.11/node_modules/ste-simple-events/dist/SimpleEventDispatcher.js", "../../../node_modules/.pnpm/ste-simple-events@3.0.11/node_modules/ste-simple-events/dist/SimpleEventList.js", "../../../node_modules/.pnpm/ste-simple-events@3.0.11/node_modules/ste-simple-events/dist/SimpleEventHandlingBase.js", "../../../node_modules/.pnpm/ste-simple-events@3.0.11/node_modules/ste-simple-events/dist/NonUniformSimpleEventList.js", "../../../node_modules/.pnpm/ste-simple-events@3.0.11/node_modules/ste-simple-events/dist/index.js", "../../../node_modules/.pnpm/ste-signals@3.0.11/node_modules/ste-signals/dist/SignalDispatcher.js", "../../../node_modules/.pnpm/ste-signals@3.0.11/node_modules/ste-signals/dist/SignalList.js", "../../../node_modules/.pnpm/ste-signals@3.0.11/node_modules/ste-signals/dist/SignalHandlingBase.js", "../../../node_modules/.pnpm/ste-signals@3.0.11/node_modules/ste-signals/dist/index.js", "../../../node_modules/.pnpm/ste-promise-events@3.0.11/node_modules/ste-promise-events/dist/PromiseEventDispatcher.js", "../../../node_modules/.pnpm/ste-promise-events@3.0.11/node_modules/ste-promise-events/dist/PromiseEventList.js", "../../../node_modules/.pnpm/ste-promise-events@3.0.11/node_modules/ste-promise-events/dist/PromiseEventHandlingBase.js", "../../../node_modules/.pnpm/ste-promise-events@3.0.11/node_modules/ste-promise-events/dist/NonUniformPromiseEventList.js", "../../../node_modules/.pnpm/ste-promise-events@3.0.11/node_modules/ste-promise-events/dist/index.js", "../../../node_modules/.pnpm/ste-promise-signals@3.0.11/node_modules/ste-promise-signals/dist/PromiseSignalDispatcher.js", "../../../node_modules/.pnpm/ste-promise-signals@3.0.11/node_modules/ste-promise-signals/dist/PromiseSignalList.js", "../../../node_modules/.pnpm/ste-promise-signals@3.0.11/node_modules/ste-promise-signals/dist/PromiseSignalHandlingBase.js", "../../../node_modules/.pnpm/ste-promise-signals@3.0.11/node_modules/ste-promise-signals/dist/index.js", "../../../node_modules/.pnpm/ste-promise-simple-events@3.0.11/node_modules/ste-promise-simple-events/dist/PromiseSimpleEventDispatcher.js", "../../../node_modules/.pnpm/ste-promise-simple-events@3.0.11/node_modules/ste-promise-simple-events/dist/NonUniformPromiseSimpleEventList.js", "../../../node_modules/.pnpm/ste-promise-simple-events@3.0.11/node_modules/ste-promise-simple-events/dist/PromiseSimpleEventList.js", "../../../node_modules/.pnpm/ste-promise-simple-events@3.0.11/node_modules/ste-promise-simple-events/dist/PromiseSimpleEventHandlingBase.js", "../../../node_modules/.pnpm/ste-promise-simple-events@3.0.11/node_modules/ste-promise-simple-events/dist/index.js", "../../../node_modules/.pnpm/strongly-typed-events@3.0.7/node_modules/strongly-typed-events/dist/index.js", "../../core/src/index.ts", "../../core/src/EventEmitter.ts", "../../core/src/Component.ts", "../../core/src/SDKError.ts", "../../constants/src/index.ts", "../../math/src/index.ts", "../../matrix/src/index.ts", "../../utils/src/index.ts", "../../utils/src/Map.ts", "../../utils/src/Queue.ts", "../../utils/src/LoadingManager.ts", "../../utils/src/Loader.ts", "../../utils/src/WorkerPool.ts", "../../utils/src/Cache.ts", "../../utils/src/FileLoader.ts", "../../rtc/src/index.ts", "../../boundaries/src/index.ts", "../../compression/src/index.ts", "../../curves/src/index.ts", "../../procgen/src/index.ts", "../../procgen/src/buildBoxGeometry.ts", "../../procgen/src/buildGridGeometry.ts", "../../procgen/src/buildBoxLinesGeometry.ts", "../../procgen/src/buildCylinderGeometry.ts", "../../procgen/src/buildSphereGeometry.ts", "../../procgen/src/buildTorusGeometry.ts", "../../procgen/src/buildVectorTextGeometry.ts", "../../procgen/src/buildPlaneGeometry.ts", "../../locale/src/index.ts", "../../locale/src/LocaleService.ts", "../../data/src/index.ts", "../../data/src/Property.ts", "../../data/src/PropertySet.ts", "../../data/src/DataObject.ts", "../../data/src/Relationship.ts", "../../data/src/DataModel.ts", "../../data/src/Data.ts", "../../scene/src/index.ts", "../../scene/src/Scene.ts", "../../scene/src/SceneModel.ts", "../../scene/src/SceneGeometry.ts", "../../scene/src/SceneObject.ts", "../../scene/src/SceneTextureSet.ts", "../../scene/src/SceneTexture.ts", "../../scene/src/SceneMesh.ts", "../../scene/src/buildEdgeIndices.ts", "../../scene/src/compressGeometryParams.ts", "../../scene/src/SceneQuantizationRange.ts", "../../scene/src/SceneTile.ts", "../../scene/src/getSceneObjectGeometry.ts", "../../scene/src/buildMat4.ts", "../../kdtree2/src/index.ts", "../../kdtree2/src/KdTree2.ts", "../../kdtree2/src/createKdTree2FromSceneObjectVerts.ts", "../../kdtree2/src/searchKdTree2ForNearestNeighbor.ts", "../../kdtree2/src/KdVertex2.ts", "../../kdtree3/src/index.ts", "../../kdtree3/src/KdTree3.ts", "../../kdtree3/src/sceneObjectsKdTree3.ts", "../../kdtree3/src/createSceneObjectsKdTree3.ts", "../../kdtree3/src/createSceneObjectPrimsKdTree3.ts", "../../kdtree3/src/PrimsKdTree3.ts", "../../kdtree3/src/createPrimsKdTree3.ts", "../../kdtree3/src/searchKdTree3WithAABB.ts", "../../kdtree3/src/searchKdTree3WithFrustum.ts", "../../kdtree3/src/searchKdTree3WithRay.ts", "../../pick/src/index.ts", "../../pick/src/PickPrimsCache.ts", "../../pick/src/Picker.ts", "../../basictypes/src/index.ts", "../../cityjsontypes_1_1_3/src/index.ts", "../../ifctypes/src/index.ts", "../../cityjson/src/index.ts", "../../cityjson/src/earcut.ts", "../../cityjson/src/loadCityJSON.ts", "../../dotbim/src/index.ts", "../../dotbim/src/loadDotBIM.ts", "../../dotbim/src/saveDotBIM.ts", "../../webifc/src/index.ts", "../../../node_modules/.pnpm/web-ifc@0.0.50/node_modules/web-ifc/web-ifc-api.js", "../../webifc/src/loadWebIFC.ts", "../../dtx/src/index.ts", "../../../node_modules/.pnpm/pako@2.1.0/node_modules/pako/dist/pako.esm.mjs", "../../dtx/src/versions/v1/inflateDTX.ts", "../../dtx/src/versions/v1/unpackDTX.ts", "../../dtx/src/versions/v1/dtxToModel.ts", "../../dtx/src/versions/v1/readDTX.ts", "../../dtx/src/loadDTX.ts", "../../dtx/src/versions/v1/deflateDTX.ts", "../../dtx/src/versions/v1/DTX_INFO.ts", "../../dtx/src/versions/v1/modelToDTX.ts", "../../dtx/src/versions/v1/packDTX.ts", "../../dtx/src/versions/v1/writeDTX.ts", "../../dtx/src/saveDTX.ts", "../../las/src/index.ts", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/loader-types.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/env-utils/assert.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/env-utils/globals.js", "../../../node_modules/.pnpm/@probe.gl+env@4.0.9/node_modules/@probe.gl/env/dist/lib/globals.js", "../../../node_modules/.pnpm/@probe.gl+env@4.0.9/node_modules/@probe.gl/env/dist/lib/is-electron.js", "../../../node_modules/.pnpm/@probe.gl+env@4.0.9/node_modules/@probe.gl/env/dist/lib/is-browser.js", "../../../node_modules/.pnpm/@probe.gl+env@4.0.9/node_modules/@probe.gl/env/dist/index.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/local-storage.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/formatters.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/color.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/autobind.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/assert.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/utils/hi-res-timestamp.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/log.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/init.js", "../../../node_modules/.pnpm/@probe.gl+log@4.0.9/node_modules/@probe.gl/log/dist/index.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/option-utils/merge-loader-options.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/module-utils/js-module-utils.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/env-utils/version.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/env-utils/assert.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/env-utils/globals.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-farm/worker-job.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/node/worker_threads-browser.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-utils/get-loadable-worker-url.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-utils/get-transfer-list.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-farm/worker-thread.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-farm/worker-pool.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-farm/worker-farm.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-api/get-worker-url.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/worker-api/validate-worker-version.js", "../../../node_modules/.pnpm/@loaders.gl+worker-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/worker-utils/dist/lib/library-utils/library-utils.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/worker-loader-utils/parse-with-worker.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/binary-utils/get-first-characters.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/parser-utils/parse-json.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/binary-utils/array-buffer-utils.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/binary-utils/memory-copy-utils.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/iterators/async-iteration.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/path-utils/file-aliases.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/node/buffer.browser.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/binary-utils/memory-conversion-utils.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/path-utils/path.js", "../../../node_modules/.pnpm/@loaders.gl+loader-utils@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/loader-utils/dist/lib/path-utils/get-cwd.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/javascript-utils/is-type.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/fetch/fetch-error.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/utils/mime-type-utils.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/utils/url-utils.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/utils/resource-utils.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/utils/response-utils.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/fetch/fetch-file.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/loggers.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/option-defaults.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/option-utils.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/normalize-loader.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/api/register-loaders.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/utils/log.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/api/select-loader.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-string-iterator.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-array-buffer-iterator.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-blob-iterator.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-stream-iterator.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-iterator.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/get-data.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/get-fetch-function.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/loader-utils/loader-context.js", "../../../node_modules/.pnpm/@loaders.gl+core@4.2.2/node_modules/@loaders.gl/core/dist/lib/api/parse.js", "../../../node_modules/.pnpm/@loaders.gl+schema@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/schema/dist/lib/table/simple-table/data-type.js", "../../../node_modules/.pnpm/@loaders.gl+schema@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/schema/dist/lib/mesh/mesh-utils.js", "../../../node_modules/.pnpm/@loaders.gl+schema@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/schema/dist/lib/mesh/deduce-mesh-schema.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/las-loader.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/lib/libs/laz-perf.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/lib/laslaz-decoder.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/lib/get-las-schema.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/lib/parse-las.js", "../../../node_modules/.pnpm/@loaders.gl+las@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/las/dist/index.js", "../../las/src/loadLAS.ts", "../../gltf/src/index.ts", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/EXT_mesh_features.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/utils/version.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/category-api/image-type.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/category-api/parsed-image-api.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/parsers/svg-utils.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/parsers/parse-to-image.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/parsers/parse-to-image-bitmap.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/category-api/parse-isobmff-binary.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/category-api/binary-image-api.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/parsers/parse-to-node-image.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/parsers/parse-image.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/image-loader.js", "../../../node_modules/.pnpm/@loaders.gl+images@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/images/dist/lib/category-api/image-format.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/utils/assert.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/gltf-utils/gltf-constants.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/gltf-utils/gltf-utils.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/gltf-utils/get-typed-array.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/api/gltf-scenegraph.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/utils/3d-tiles-utils.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/EXT_structural_metadata.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/deprecated/EXT_feature_metadata.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/utils/version.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/utils/version.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/parsers/basis-module-loader.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/gl-extensions.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/utils/texture-formats.js", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/constants.ts", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/container.ts", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/buffer-reader.ts", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/util.ts", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/read.ts", "../../../node_modules/.pnpm/ktx-parse@0.0.4/node_modules/ktx-parse/src/write.ts", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/parsers/parse-ktx.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/lib/parsers/parse-basis.js", "../../../node_modules/.pnpm/@loaders.gl+textures@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/textures/dist/basis-loader.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/parsers/parse-glb.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/gltf-utils/resolve-url.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/EXT_meshopt_compression.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/meshopt/meshopt-decoder.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/EXT_texture_webp.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/KHR_texture_basisu.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/KHR_draco_mesh_compression.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/lib/utils/version.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/draco-loader.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/lib/utils/get-draco-schema.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/lib/draco-parser.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/lib/draco-module-loader.js", "../../../node_modules/.pnpm/@loaders.gl+draco@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/draco/dist/index.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/gltf-utils/gltf-attribute-utils.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/KHR_texture_transform.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/lib/common.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/classes/base/math-array.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/lib/validators.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/lib/assert.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/classes/base/vector.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/gl-matrix/common.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/gl-matrix/vec2.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/lib/gl-matrix-extras.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/gl-matrix/vec3.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/classes/vector3.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/classes/base/matrix.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/gl-matrix/mat3.js", "../../../node_modules/.pnpm/@math.gl+core@4.0.1/node_modules/@math.gl/core/dist/classes/matrix3.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/deprecated/KHR_lights_punctual.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/deprecated/KHR_materials_unlit.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/deprecated/KHR_techniques_webgl.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/api/gltf-extensions.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/extensions/KHR_binary_gltf.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/api/normalize-gltf-v1.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/parsers/parse-gltf.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/gltf-loader.js", "../../../node_modules/.pnpm/@loaders.gl+gltf@4.2.2_@loaders.gl+core@4.2.2/node_modules/@loaders.gl/gltf/dist/lib/api/post-process-gltf.js", "../../gltf/src/loadGLTF.ts", "../../xkt/src/index.ts", "../../xkt/src/versions/v10/inflateXKT.ts", "../../xkt/src/versions/v10/unpackXKT.ts", "../../xkt/src/versions/v10/xktToModel.ts", "../../xkt/src/versions/v10/parseXKT.ts", "../../xkt/src/loadXKT.ts", "../../metamodel/src/loadMetamodel.ts", "../../xkt/src/loadXKTManifest.ts", "../../viewer/src/index.ts", "../../viewer/src/Viewer.ts", "../../viewer/src/View.ts", "../../viewer/src/ViewObject.ts", "../../viewer/src/SectionPlane.ts", "../../viewer/src/Metriqs.ts", "../../viewer/src/SAO.ts", "../../viewer/src/Texturing.ts", "../../viewer/src/LinesMaterial.ts", "../../viewer/src/ViewLayer.ts", "../../viewer/src/EmphasisMaterial.ts", "../../viewer/src/Edges.ts", "../../viewer/src/PointsMaterial.ts", "../../viewer/src/Camera.ts", "../../viewer/src/PerspectiveProjection.ts", "../../viewer/src/OrthoProjection.ts", "../../viewer/src/FrustumProjection.ts", "../../viewer/src/CustomProjection.ts", "../../viewer/src/CameraFlightAnimation.ts", "../../viewer/src/stats.ts", "../../viewer/src/scheduler.ts", "../../viewer/src/AmbientLight.ts", "../../viewer/src/DirLight.ts", "../../viewer/src/SnapshotResult.ts", "../../viewer/src/ResolutionScale.ts", "../../viewer/src/PointLight.ts", "../../viewer/src/PickResult.ts", "../../webglrenderer/src/index.ts", "../../ktx2/src/index.ts", "../../ktx2/src/KTX2TextureTranscoder.ts", "../../webglutils/src/WebGLArrayBuf.ts", "../../webglutils/src/WebGLAttribute.ts", "../../webglutils/src/WebGLShader.ts", "../../webglutils/src/WebGLSampler.ts", "../../webglutils/src/WebGLProgram.ts", "../../webglutils/src/WebGLRenderBuffer.ts", "../../webglutils/src/getWebGLExtension.ts", "../../webglutils/src/convertWebGLConstant.ts", "../../webglutils/src/WebGLTexture.ts", "../../webglutils/src/canvas2image.ts", "../../webglutils/src/WEBGL_INFO.ts", "../../webglrenderer/src/RenderContext.ts", "../../webglrenderer/src/WebGLRendererGeometry.ts", "../../webglrenderer/src/WebGLRendererTexture.ts", "../../webglrenderer/src/SCENE_OBJECT_FLAGS.ts", "../../webglrenderer/src/WebGLRendererObject.ts", "../../webglrenderer/src/WebGLRendererMesh.ts", "../../webglrenderer/src/WebGLRendererTextureSet.ts", "../../webglrenderer/src/MeshCounts.ts", "../../webglrenderer/src/RenderFlags.ts", "../../webglrenderer/src/vbo/batching/VBOBatchingBuffer.ts", "../../webglrenderer/src/RENDER_PASSES.ts", "../../webglrenderer/src/vbo/ScratchMemory.ts", "../../webglrenderer/src/vbo/batching/VBOBatchingLayer.ts", "../../webglrenderer/src/vbo/VBORenderer.ts", "../../webglrenderer/src/vbo/batching/VBOBatchingRenderer.ts", "../../webglrenderer/src/vbo/batching/points/renderers/VBOPointsBatchingDrawRenderer.ts", "../../webglrenderer/src/vbo/batching/points/renderers/VBOPointsBatchingPickMeshRenderer.ts", "../../webglrenderer/src/vbo/batching/points/renderers/VBOPointsBatchingSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/VBORendererSet.ts", "../../webglrenderer/src/vbo/batching/points/renderers/rendererFactory.ts", "../../webglrenderer/src/vbo/batching/points/VBOPointsBatchingLayer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/VBOTrianglesBatchingDrawRenderer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/VBOTrianglesBatchingPickMeshRenderer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/VBOTrianglesBatchingSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/VBOTrianglesBatchingEdgesDrawRenderer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/VBOTrianglesBatchingEdgesSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/batching/triangles/renderers/rendererFactory.ts", "../../webglrenderer/src/vbo/batching/triangles/VBOTrianglesBatchingLayer.ts", "../../webglrenderer/src/vbo/instancing/VBOInstancingBuffer.ts", "../../webglrenderer/src/vbo/instancing/VBOInstancingLayer.ts", "../../webglrenderer/src/vbo/instancing/VBOInstancingRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/VBOTrianglesInstancingDrawRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/VBOTrianglesInstancingSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/VBOTrianglesInstancingPickMeshRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/VBOTrianglesInstancingEdgesDrawRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/VBOTrianglesInstancingEdgesSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/instancing/triangles/renderers/rendererFactory.ts", "../../webglrenderer/src/vbo/instancing/triangles/VBOTrianglesInstancingLayer.ts", "../../webglrenderer/src/vbo/instancing/lines/renderers/VBOLinesInstancingDrawRenderer.ts", "../../webglrenderer/src/vbo/instancing/lines/renderers/VBOLinesInstancingPickMeshRenderer.ts", "../../webglrenderer/src/vbo/instancing/lines/renderers/VBOLinesInstancingSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/instancing/lines/renderers/rendererFactory.ts", "../../webglrenderer/src/vbo/instancing/lines/VBOLinesInstancingLayer.ts", "../../webglrenderer/src/vbo/batching/lines/renderers/VBOLinesBatchingDrawRenderer.ts", "../../webglrenderer/src/vbo/batching/lines/renderers/VBOLinesBatchingPickMeshRenderer.ts", "../../webglrenderer/src/vbo/batching/lines/renderers/VBOLinesBatchingSilhouetteRenderer.ts", "../../webglrenderer/src/vbo/batching/lines/renderers/rendererFactory.ts", "../../webglrenderer/src/vbo/batching/lines/VBOLinesBatchingLayer.ts", "../../webglrenderer/src/WebGLRendererModel.ts", "../../webglrenderer/src/RenderStats.ts", "../../webglrenderer/src/WebGLRenderer.ts", "../../webglrenderer/src/WebGLRenderBufferManager.ts", "../../webglrenderer/src/createSceneModelStreamParams.ts", "../../cameracontrol/src/index.ts", "../../cameracontrol/src/PickController.ts", "../../cameracontrol/src/PivotController.ts", "../../cameracontrol/src/PanController.ts", "../../cameracontrol/src/MouseMiscHandler.ts", "../../cameracontrol/src/TouchPanRotateAndDollyHandler.ts", "../../cameracontrol/src/keycodes.ts", "../../cameracontrol/src/MousePanRotateDollyHandler.ts", "../../cameracontrol/src/KeyboardAxisViewHandler.ts", "../../cameracontrol/src/MousePickHandler.ts", "../../cameracontrol/src/TouchPickHandler.ts", "../../cameracontrol/src/KeyboardPanRotateDollyHandler.ts", "../../cameracontrol/src/CameraUpdater.ts", "../../cameracontrol/src/CameraControl.ts", "../../bcf/src/index.ts", "../../bcf/src/loadBCFViewpoint.ts", "../../bcf/src/saveBCFViewpoint.ts", "../../treeview/src/index.ts", "../../treeview/src/TreeView.ts"], - "sourcesContent": ["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DispatcherWrapper = void 0;\n/**\n * Hides the implementation of the event dispatcher. Will expose methods that\n * are relevent to the event.\n *\n * @export\n * @class DispatcherWrapper\n * @implements {ISubscribable}\n * @template TEventHandler The type of event handler.\n */\nclass DispatcherWrapper {\n /**\n * Creates an instance of DispatcherWrapper.\n * @param {ISubscribable} dispatcher\n *\n * @memberOf DispatcherWrapper\n */\n constructor(dispatcher) {\n this._subscribe = (fn) => dispatcher.subscribe(fn);\n this._unsubscribe = (fn) => dispatcher.unsubscribe(fn);\n this._one = (fn) => dispatcher.one(fn);\n this._has = (fn) => dispatcher.has(fn);\n this._clear = () => dispatcher.clear();\n this._count = () => dispatcher.count;\n this._onSubscriptionChange = () => dispatcher.onSubscriptionChange;\n }\n /**\n * Triggered when subscriptions are changed (added or removed).\n *\n * @readonly\n * @type {ISubscribable}\n * @memberOf DispatcherWrapper\n */\n get onSubscriptionChange() {\n return this._onSubscriptionChange();\n }\n /**\n * Returns the number of subscriptions.\n *\n * @readonly\n * @type {number}\n * @memberOf DispatcherWrapper\n */\n get count() {\n return this._count();\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n subscribe(fn) {\n return this._subscribe(fn);\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n sub(fn) {\n return this.subscribe(fn);\n }\n /**\n * Unsubscribe from the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n unsubscribe(fn) {\n this._unsubscribe(fn);\n }\n /**\n * Unsubscribe from the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n unsub(fn) {\n this.unsubscribe(fn);\n }\n /**\n * Subscribe once to the event with the specified name.\n *\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n one(fn) {\n return this._one(fn);\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n has(fn) {\n return this._has(fn);\n }\n /**\n * Clears all the subscriptions.\n *\n * @memberOf DispatcherWrapper\n */\n clear() {\n this._clear();\n }\n}\nexports.DispatcherWrapper = DispatcherWrapper;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Subscription = void 0;\n/**\n * Stores a handler. Manages execution meta data.\n * @class Subscription\n * @template TEventHandler\n */\nclass Subscription {\n /**\n * Creates an instance of Subscription.\n *\n * @param {TEventHandler} handler The handler for the subscription.\n * @param {boolean} isOnce Indicates if the handler should only be executed once.\n */\n constructor(handler, isOnce) {\n this.handler = handler;\n this.isOnce = isOnce;\n /**\n * Indicates if the subscription has been executed before.\n */\n this.isExecuted = false;\n }\n /**\n * Executes the handler.\n *\n * @param {boolean} executeAsync True if the even should be executed async.\n * @param {*} scope The scope the scope of the event.\n * @param {IArguments} args The arguments for the event.\n */\n execute(executeAsync, scope, args) {\n if (!this.isOnce || !this.isExecuted) {\n this.isExecuted = true;\n var fn = this.handler;\n if (executeAsync) {\n setTimeout(() => {\n fn.apply(scope, args);\n }, 1);\n }\n else {\n fn.apply(scope, args);\n }\n }\n }\n}\nexports.Subscription = Subscription;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventManagement = void 0;\n/**\n * Allows the user to interact with the event.\n *\n * @export\n * @class EventManagement\n * @implements {IEventManagement}\n */\nclass EventManagement {\n /**\n * Creates an instance of EventManagement.\n * @param {() => void} unsub An unsubscribe handler.\n *\n * @memberOf EventManagement\n */\n constructor(unsub) {\n this.unsub = unsub;\n this.propagationStopped = false;\n }\n /**\n * Stops the propagation of the event.\n * Cannot be used when async dispatch is done.\n *\n * @memberOf EventManagement\n */\n stopPropagation() {\n this.propagationStopped = true;\n }\n}\nexports.EventManagement = EventManagement;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SubscriptionChangeEventDispatcher = exports.DispatcherBase = void 0;\nconst DispatcherWrapper_1 = require(\"./DispatcherWrapper\");\nconst Subscription_1 = require(\"../events/Subscription\");\nconst EventManagement_1 = require(\"../management/EventManagement\");\n/**\n * Base class for implementation of the dispatcher. It facilitates the subscribe\n * and unsubscribe methods based on generic handlers. The TEventType specifies\n * the type of event that should be exposed. Use the asEvent to expose the\n * dispatcher as event.\n *\n * @export\n * @abstract\n * @class DispatcherBase\n * @implements {ISubscribable}\n * @template TEventHandler The type of event handler.\n */\nclass DispatcherBase {\n constructor() {\n /**\n * The subscriptions.\n *\n * @protected\n *\n * @memberOf DispatcherBase\n */\n this._subscriptions = new Array();\n }\n /**\n * Returns the number of subscriptions.\n *\n * @readonly\n * @type {number}\n * @memberOf DispatcherBase\n */\n get count() {\n return this._subscriptions.length;\n }\n /**\n * Triggered when subscriptions are changed (added or removed).\n *\n * @readonly\n * @type {ISubscribable}\n * @memberOf DispatcherBase\n */\n get onSubscriptionChange() {\n if (this._onSubscriptionChange == null) {\n this._onSubscriptionChange = new SubscriptionChangeEventDispatcher();\n }\n return this._onSubscriptionChange.asEvent();\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n subscribe(fn) {\n if (fn) {\n this._subscriptions.push(this.createSubscription(fn, false));\n this.triggerSubscriptionChange();\n }\n return () => {\n this.unsubscribe(fn);\n };\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n sub(fn) {\n return this.subscribe(fn);\n }\n /**\n * Subscribe once to the event with the specified name.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n one(fn) {\n if (fn) {\n this._subscriptions.push(this.createSubscription(fn, true));\n this.triggerSubscriptionChange();\n }\n return () => {\n this.unsubscribe(fn);\n };\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n has(fn) {\n if (!fn)\n return false;\n return this._subscriptions.some((sub) => sub.handler == fn);\n }\n /**\n * Unsubscribes the handler from the dispatcher.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n unsubscribe(fn) {\n if (!fn)\n return;\n let changes = false;\n for (let i = 0; i < this._subscriptions.length; i++) {\n if (this._subscriptions[i].handler == fn) {\n this._subscriptions.splice(i, 1);\n changes = true;\n break;\n }\n }\n if (changes) {\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Unsubscribes the handler from the dispatcher.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n unsub(fn) {\n this.unsubscribe(fn);\n }\n /**\n * Generic dispatch will dispatch the handlers with the given arguments.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n _dispatch(executeAsync, scope, args) {\n //execute on a copy because of bug #9\n for (let sub of [...this._subscriptions]) {\n let ev = new EventManagement_1.EventManagement(() => this.unsub(sub.handler));\n let nargs = Array.prototype.slice.call(args);\n nargs.push(ev);\n let s = sub;\n s.execute(executeAsync, scope, nargs);\n //cleanup subs that are no longer needed\n this.cleanup(sub);\n if (!executeAsync && ev.propagationStopped) {\n return { propagationStopped: true };\n }\n }\n if (executeAsync) {\n return null;\n }\n return { propagationStopped: false };\n }\n /**\n * Creates a subscription.\n *\n * @protected\n * @param {TEventHandler} handler The handler.\n * @param {boolean} isOnce True if the handler should run only one.\n * @returns {ISubscription} The subscription.\n *\n * @memberOf DispatcherBase\n */\n createSubscription(handler, isOnce) {\n return new Subscription_1.Subscription(handler, isOnce);\n }\n /**\n * Cleans up subs that ran and should run only once.\n *\n * @protected\n * @param {ISubscription} sub The subscription.\n *\n * @memberOf DispatcherBase\n */\n cleanup(sub) {\n let changes = false;\n if (sub.isOnce && sub.isExecuted) {\n let i = this._subscriptions.indexOf(sub);\n if (i > -1) {\n this._subscriptions.splice(i, 1);\n changes = true;\n }\n }\n if (changes) {\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISubscribable}\n *\n * @memberOf DispatcherBase\n */\n asEvent() {\n if (this._wrap == null) {\n this._wrap = new DispatcherWrapper_1.DispatcherWrapper(this);\n }\n return this._wrap;\n }\n /**\n * Clears the subscriptions.\n *\n * @memberOf DispatcherBase\n */\n clear() {\n if (this._subscriptions.length != 0) {\n this._subscriptions.splice(0, this._subscriptions.length);\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Triggers the subscription change event.\n *\n * @private\n *\n * @memberOf DispatcherBase\n */\n triggerSubscriptionChange() {\n if (this._onSubscriptionChange != null) {\n this._onSubscriptionChange.dispatch(this.count);\n }\n }\n}\nexports.DispatcherBase = DispatcherBase;\n/**\n * Dispatcher for subscription changes.\n *\n * @export\n * @class SubscriptionChangeEventDispatcher\n * @extends {DispatcherBase}\n */\nclass SubscriptionChangeEventDispatcher extends DispatcherBase {\n /**\n * Dispatches the event.\n *\n * @param {number} count The currrent number of subscriptions.\n *\n * @memberOf SubscriptionChangeEventDispatcher\n */\n dispatch(count) {\n this._dispatch(false, this, arguments);\n }\n}\nexports.SubscriptionChangeEventDispatcher = SubscriptionChangeEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DispatchError = void 0;\n/**\n * Indicates an error with dispatching.\n *\n * @export\n * @class DispatchError\n * @extends {Error}\n */\nclass DispatchError extends Error {\n /**\n * Creates an instance of DispatchError.\n * @param {string} message The message.\n *\n * @memberOf DispatchError\n */\n constructor(message) {\n super(message);\n }\n}\nexports.DispatchError = DispatchError;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventListBase = void 0;\n/**\n * Base class for event lists classes. Implements the get and remove.\n *\n * @export\n * @abstract\n * @class EventListBaset\n * @template TEventDispatcher The type of event dispatcher.\n */\nclass EventListBase {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n *\n * @param {string} name The name of the event.\n * @returns {TEventDispatcher} The disptacher.\n *\n * @memberOf EventListBase\n */\n get(name) {\n let event = this._events[name];\n if (event) {\n return event;\n }\n event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n *\n * @param {string} name\n *\n * @memberOf EventListBase\n */\n remove(name) {\n delete this._events[name];\n }\n}\nexports.EventListBase = EventListBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HandlingBase = void 0;\n/**\n * Base class that implements event handling. With a an\n * event list this base class will expose events that can be\n * subscribed to. This will give your class generic events.\n *\n * @export\n * @abstract\n * @class HandlingBase\n * @template TEventHandler The type of event handler.\n * @template TDispatcher The type of dispatcher.\n * @template TList The type of event list.\n */\nclass HandlingBase {\n /**\n * Creates an instance of HandlingBase.\n * @param {TList} events The event list. Used for event management.\n *\n * @memberOf HandlingBase\n */\n constructor(events) {\n this.events = events;\n }\n /**\n * Subscribes once to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n one(name, fn) {\n this.events.get(name).one(fn);\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n has(name, fn) {\n return this.events.get(name).has(fn);\n }\n /**\n * Subscribes to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n subscribe(name, fn) {\n this.events.get(name).subscribe(fn);\n }\n /**\n * Subscribes to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n sub(name, fn) {\n this.subscribe(name, fn);\n }\n /**\n * Unsubscribes from the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n unsubscribe(name, fn) {\n this.events.get(name).unsubscribe(fn);\n }\n /**\n * Unsubscribes from the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n unsub(name, fn) {\n this.unsubscribe(name, fn);\n }\n}\nexports.HandlingBase = HandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSubscription = void 0;\n/**\n * Subscription implementation for events with promises.\n *\n * @export\n * @class PromiseSubscription\n * @implements {ISubscription}\n * @template TEventHandler The type of event handler.\n */\nclass PromiseSubscription {\n /**\n * Creates an instance of PromiseSubscription.\n * @param {TEventHandler} handler The handler for the subscription.\n * @param {boolean} isOnce Indicates if the handler should only be executed once.\n *\n * @memberOf PromiseSubscription\n */\n constructor(handler, isOnce) {\n this.handler = handler;\n this.isOnce = isOnce;\n /**\n * Indicates if the subscription has been executed before.\n *\n * @memberOf PromiseSubscription\n */\n this.isExecuted = false;\n }\n /**\n * Executes the handler.\n *\n * @param {boolean} executeAsync True if the even should be executed async.\n * @param {*} scope The scope the scope of the event.\n * @param {IArguments} args The arguments for the event.\n *\n * @memberOf PromiseSubscription\n */\n async execute(executeAsync, scope, args) {\n if (!this.isOnce || !this.isExecuted) {\n this.isExecuted = true;\n //TODO: do we need to cast to any -- seems yuck\n var fn = this.handler;\n if (executeAsync) {\n setTimeout(() => {\n fn.apply(scope, args);\n }, 1);\n return;\n }\n let result = fn.apply(scope, args);\n await result;\n }\n }\n}\nexports.PromiseSubscription = PromiseSubscription;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseDispatcherBase = void 0;\nconst PromiseSubscription_1 = require(\"../events/PromiseSubscription\");\nconst EventManagement_1 = require(\"../management/EventManagement\");\nconst DispatcherBase_1 = require(\"./DispatcherBase\");\nconst DispatchError_1 = require(\"./DispatchError\");\n/**\n * Dispatcher base for dispatchers that use promises. Each promise\n * is awaited before the next is dispatched, unless the event is\n * dispatched with the executeAsync flag.\n *\n * @export\n * @abstract\n * @class PromiseDispatcherBase\n * @extends {DispatcherBase}\n * @template TEventHandler The type of event handler.\n */\nclass PromiseDispatcherBase extends DispatcherBase_1.DispatcherBase {\n /**\n * The normal dispatch cannot be used in this class.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n _dispatch(executeAsync, scope, args) {\n throw new DispatchError_1.DispatchError(\"_dispatch not supported. Use _dispatchAsPromise.\");\n }\n /**\n * Crates a new subscription.\n *\n * @protected\n * @param {TEventHandler} handler The handler.\n * @param {boolean} isOnce Indicates if the handler should only run once.\n * @returns {ISubscription} The subscription.\n *\n * @memberOf PromiseDispatcherBase\n */\n createSubscription(handler, isOnce) {\n return new PromiseSubscription_1.PromiseSubscription(handler, isOnce);\n }\n /**\n * Generic dispatch will dispatch the handlers with the given arguments.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n async _dispatchAsPromise(executeAsync, scope, args) {\n //execute on a copy because of bug #9\n for (let sub of [...this._subscriptions]) {\n let ev = new EventManagement_1.EventManagement(() => this.unsub(sub.handler));\n let nargs = Array.prototype.slice.call(args);\n nargs.push(ev);\n let ps = sub;\n await ps.execute(executeAsync, scope, nargs);\n //cleanup subs that are no longer needed\n this.cleanup(sub);\n if (!executeAsync && ev.propagationStopped) {\n return { propagationStopped: true };\n }\n }\n if (executeAsync) {\n return null;\n }\n return { propagationStopped: false };\n }\n}\nexports.PromiseDispatcherBase = PromiseDispatcherBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SubscriptionChangeEventDispatcher = exports.HandlingBase = exports.PromiseDispatcherBase = exports.PromiseSubscription = exports.DispatchError = exports.EventManagement = exports.EventListBase = exports.DispatcherWrapper = exports.DispatcherBase = exports.Subscription = void 0;\nconst DispatcherBase_1 = require(\"./dispatching/DispatcherBase\");\nObject.defineProperty(exports, \"DispatcherBase\", { enumerable: true, get: function () { return DispatcherBase_1.DispatcherBase; } });\nObject.defineProperty(exports, \"SubscriptionChangeEventDispatcher\", { enumerable: true, get: function () { return DispatcherBase_1.SubscriptionChangeEventDispatcher; } });\nconst DispatchError_1 = require(\"./dispatching/DispatchError\");\nObject.defineProperty(exports, \"DispatchError\", { enumerable: true, get: function () { return DispatchError_1.DispatchError; } });\nconst DispatcherWrapper_1 = require(\"./dispatching/DispatcherWrapper\");\nObject.defineProperty(exports, \"DispatcherWrapper\", { enumerable: true, get: function () { return DispatcherWrapper_1.DispatcherWrapper; } });\nconst EventListBase_1 = require(\"./dispatching/EventListBase\");\nObject.defineProperty(exports, \"EventListBase\", { enumerable: true, get: function () { return EventListBase_1.EventListBase; } });\nconst EventManagement_1 = require(\"./management/EventManagement\");\nObject.defineProperty(exports, \"EventManagement\", { enumerable: true, get: function () { return EventManagement_1.EventManagement; } });\nconst HandlingBase_1 = require(\"./handling/HandlingBase\");\nObject.defineProperty(exports, \"HandlingBase\", { enumerable: true, get: function () { return HandlingBase_1.HandlingBase; } });\nconst PromiseDispatcherBase_1 = require(\"./dispatching/PromiseDispatcherBase\");\nObject.defineProperty(exports, \"PromiseDispatcherBase\", { enumerable: true, get: function () { return PromiseDispatcherBase_1.PromiseDispatcherBase; } });\nconst PromiseSubscription_1 = require(\"./events/PromiseSubscription\");\nObject.defineProperty(exports, \"PromiseSubscription\", { enumerable: true, get: function () { return PromiseSubscription_1.PromiseSubscription; } });\nconst Subscription_1 = require(\"./events/Subscription\");\nObject.defineProperty(exports, \"Subscription\", { enumerable: true, get: function () { return Subscription_1.Subscription; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * Dispatcher implementation for events. Can be used to subscribe, unsubscribe\n * or dispatch events. Use the ToEvent() method to expose the event.\n *\n * @export\n * @class EventDispatcher\n * @extends {DispatcherBase>}\n * @implements {IEvent}\n * @template TSender The sender type.\n * @template TArgs The event arguments type.\n */\nclass EventDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Creates an instance of EventDispatcher.\n *\n * @memberOf EventDispatcher\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TSender} sender The sender.\n * @param {TArgs} args The arguments.\n * @returns {IPropagationStatus} The propagation status to interact with the event\n *\n * @memberOf EventDispatcher\n */\n dispatch(sender, args) {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event in an async way. Does not support event interaction.\n *\n * @param {TSender} sender The sender.\n * @param {TArgs} args The arguments.\n *\n * @memberOf EventDispatcher\n */\n dispatchAsync(sender, args) {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {IEvent} The event.\n *\n * @memberOf EventDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.EventDispatcher = EventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\n/**\n * Storage class for multiple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass EventList extends ste_core_1.EventListBase {\n /**\n * Creates a new EventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new EventDispatcher_1.EventDispatcher();\n }\n}\nexports.EventList = EventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst EventList_1 = require(\"./EventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass EventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new EventList_1.EventList());\n }\n}\nexports.EventHandlingBase = EventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformEventList = void 0;\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new EventDispatcher_1.EventDispatcher();\n }\n}\nexports.NonUniformEventList = NonUniformEventList;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformEventList = exports.EventList = exports.EventHandlingBase = exports.EventDispatcher = void 0;\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\nObject.defineProperty(exports, \"EventDispatcher\", { enumerable: true, get: function () { return EventDispatcher_1.EventDispatcher; } });\nconst EventHandlingBase_1 = require(\"./EventHandlingBase\");\nObject.defineProperty(exports, \"EventHandlingBase\", { enumerable: true, get: function () { return EventHandlingBase_1.EventHandlingBase; } });\nconst EventList_1 = require(\"./EventList\");\nObject.defineProperty(exports, \"EventList\", { enumerable: true, get: function () { return EventList_1.EventList; } });\nconst NonUniformEventList_1 = require(\"./NonUniformEventList\");\nObject.defineProperty(exports, \"NonUniformEventList\", { enumerable: true, get: function () { return NonUniformEventList_1.NonUniformEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a simple event\n *\n * @export\n * @class SimpleEventDispatcher\n * @extends {DispatcherBase>}\n * @implements {ISimpleEvent}\n * @template TArgs\n */\nclass SimpleEventDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Creates an instance of SimpleEventDispatcher.\n *\n * @memberOf SimpleEventDispatcher\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TArgs} args The arguments object.\n * @returns {IPropagationStatus} The status of the event.\n *\n * @memberOf SimpleEventDispatcher\n */\n dispatch(args) {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for the result.\n *\n * @param {TArgs} args The arguments object.\n *\n * @memberOf SimpleEventDispatcher\n */\n dispatchAsync(args) {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISimpleEvent} The event.\n *\n * @memberOf SimpleEventDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.SimpleEventDispatcher = SimpleEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\n/**\n * Storage class for multiple simple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass SimpleEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new SimpleEventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new SimpleEventDispatcher_1.SimpleEventDispatcher();\n }\n}\nexports.SimpleEventList = SimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SimpleEventList_1 = require(\"./SimpleEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass SimpleEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new SimpleEventList_1.SimpleEventList());\n }\n}\nexports.SimpleEventHandlingBase = SimpleEventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformSimpleEventList = void 0;\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformSimpleEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new SimpleEventDispatcher_1.SimpleEventDispatcher();\n }\n}\nexports.NonUniformSimpleEventList = NonUniformSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformSimpleEventList = exports.SimpleEventList = exports.SimpleEventHandlingBase = exports.SimpleEventDispatcher = void 0;\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\nObject.defineProperty(exports, \"SimpleEventDispatcher\", { enumerable: true, get: function () { return SimpleEventDispatcher_1.SimpleEventDispatcher; } });\nconst SimpleEventHandlingBase_1 = require(\"./SimpleEventHandlingBase\");\nObject.defineProperty(exports, \"SimpleEventHandlingBase\", { enumerable: true, get: function () { return SimpleEventHandlingBase_1.SimpleEventHandlingBase; } });\nconst NonUniformSimpleEventList_1 = require(\"./NonUniformSimpleEventList\");\nObject.defineProperty(exports, \"NonUniformSimpleEventList\", { enumerable: true, get: function () { return NonUniformSimpleEventList_1.NonUniformSimpleEventList; } });\nconst SimpleEventList_1 = require(\"./SimpleEventList\");\nObject.defineProperty(exports, \"SimpleEventList\", { enumerable: true, get: function () { return SimpleEventList_1.SimpleEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a signal event.\n *\n * @export\n * @class SignalDispatcher\n * @extends {DispatcherBase}\n * @implements {ISignal}\n */\nclass SignalDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Dispatches the signal.\n *\n * @returns {IPropagationStatus} The status of the signal.\n *\n * @memberOf SignalDispatcher\n */\n dispatch() {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the signal without waiting for the result.\n *\n * @memberOf SignalDispatcher\n */\n dispatchAsync() {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISignal} The signal.\n *\n * @memberOf SignalDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.SignalDispatcher = SignalDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SignalDispatcher_1 = require(\"./SignalDispatcher\");\n/**\n * Storage class for multiple signal events that are accessible by name.\n * Events dispatchers are automatically created.\n *\n * @export\n * @class SignalList\n * @extends {EventListBase}\n */\nclass SignalList extends ste_core_1.EventListBase {\n /**\n * Creates an instance of SignalList.\n *\n * @memberOf SignalList\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n *\n * @protected\n * @returns {SignalDispatcher}\n *\n * @memberOf SignalList\n */\n createDispatcher() {\n return new SignalDispatcher_1.SignalDispatcher();\n }\n}\nexports.SignalList = SignalList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SignalList_1 = require(\"./SignalList\");\n/**\n * Extends objects with signal event handling capabilities.\n *\n * @export\n * @abstract\n * @class SignalHandlingBase\n * @extends {HandlingBase}\n * @implements {ISignalHandling}\n */\nclass SignalHandlingBase extends ste_core_1.HandlingBase {\n /**\n * Creates an instance of SignalHandlingBase.\n *\n * @memberOf SignalHandlingBase\n */\n constructor() {\n super(new SignalList_1.SignalList());\n }\n}\nexports.SignalHandlingBase = SignalHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Promise Signals\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalList = exports.SignalHandlingBase = exports.SignalDispatcher = void 0;\nconst SignalDispatcher_1 = require(\"./SignalDispatcher\");\nObject.defineProperty(exports, \"SignalDispatcher\", { enumerable: true, get: function () { return SignalDispatcher_1.SignalDispatcher; } });\nconst SignalHandlingBase_1 = require(\"./SignalHandlingBase\");\nObject.defineProperty(exports, \"SignalHandlingBase\", { enumerable: true, get: function () { return SignalHandlingBase_1.SignalHandlingBase; } });\nconst SignalList_1 = require(\"./SignalList\");\nObject.defineProperty(exports, \"SignalList\", { enumerable: true, get: function () { return SignalList_1.SignalList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * Dispatcher implementation for events. Can be used to subscribe, unsubscribe\n * or dispatch events. Use the ToEvent() method to expose the event.\n *\n * @export\n * @class PromiseEventDispatcher\n * @extends {PromiseDispatcherBase>}\n * @implements {IPromiseEvent}\n * @template TSender\n * @template TArgs\n */\nclass PromiseEventDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new EventDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TSender} sender The sender object.\n * @param {TArgs} args The argument object.\n * @returns {Promise} The status.\n *\n * @memberOf PromiseEventDispatcher\n */\n async dispatch(sender, args) {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for the result.\n *\n * @param {TSender} sender The sender object.\n * @param {TArgs} args The argument object.\n *\n * @memberOf PromiseEventDispatcher\n */\n dispatchAsync(sender, args) {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseEventDispatcher = PromiseEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\n/**\n * Storage class for multiple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new EventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseEventDispatcher_1.PromiseEventDispatcher();\n }\n}\nexports.PromiseEventList = PromiseEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseEventList_1 = require(\"./PromiseEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseEventList_1.PromiseEventList());\n }\n}\nexports.PromiseEventHandlingBase = PromiseEventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseEventList = void 0;\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformPromiseEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseEventDispatcher_1.PromiseEventDispatcher();\n }\n}\nexports.NonUniformPromiseEventList = NonUniformPromiseEventList;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseEventList = exports.PromiseEventList = exports.PromiseEventHandlingBase = exports.PromiseEventDispatcher = void 0;\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\nObject.defineProperty(exports, \"PromiseEventDispatcher\", { enumerable: true, get: function () { return PromiseEventDispatcher_1.PromiseEventDispatcher; } });\nconst PromiseEventHandlingBase_1 = require(\"./PromiseEventHandlingBase\");\nObject.defineProperty(exports, \"PromiseEventHandlingBase\", { enumerable: true, get: function () { return PromiseEventHandlingBase_1.PromiseEventHandlingBase; } });\nconst PromiseEventList_1 = require(\"./PromiseEventList\");\nObject.defineProperty(exports, \"PromiseEventList\", { enumerable: true, get: function () { return PromiseEventList_1.PromiseEventList; } });\nconst NonUniformPromiseEventList_1 = require(\"./NonUniformPromiseEventList\");\nObject.defineProperty(exports, \"NonUniformPromiseEventList\", { enumerable: true, get: function () { return NonUniformPromiseEventList_1.NonUniformPromiseEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a signal event.\n */\nclass PromiseSignalDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new SignalDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the signal.\n *\n * @returns {IPropagationStatus} The status of the dispatch.\n *\n * @memberOf SignalDispatcher\n */\n async dispatch() {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the signal threaded.\n */\n dispatchAsync() {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseSignalDispatcher = PromiseSignalDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSignalDispatcher_1 = require(\"./PromiseSignalDispatcher\");\n/**\n * Storage class for multiple signal events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseSignalList extends ste_core_1.EventListBase {\n /**\n * Creates a new SignalList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSignalDispatcher_1.PromiseSignalDispatcher();\n }\n}\nexports.PromiseSignalList = PromiseSignalList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSignalList_1 = require(\"./PromiseSignalList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseSignalHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseSignalList_1.PromiseSignalList());\n }\n}\nexports.PromiseSignalHandlingBase = PromiseSignalHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Promise Signals\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalList = exports.PromiseSignalHandlingBase = exports.PromiseSignalDispatcher = void 0;\nconst PromiseSignalDispatcher_1 = require(\"./PromiseSignalDispatcher\");\nObject.defineProperty(exports, \"PromiseSignalDispatcher\", { enumerable: true, get: function () { return PromiseSignalDispatcher_1.PromiseSignalDispatcher; } });\nconst PromiseSignalHandlingBase_1 = require(\"./PromiseSignalHandlingBase\");\nObject.defineProperty(exports, \"PromiseSignalHandlingBase\", { enumerable: true, get: function () { return PromiseSignalHandlingBase_1.PromiseSignalHandlingBase; } });\nconst PromiseSignalList_1 = require(\"./PromiseSignalList\");\nObject.defineProperty(exports, \"PromiseSignalList\", { enumerable: true, get: function () { return PromiseSignalList_1.PromiseSignalList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a simple event\n *\n * @export\n * @class PromiseSimpleEventDispatcher\n * @extends {PromiseDispatcherBase>}\n * @implements {IPromiseSimpleEvent}\n * @template TArgs\n */\nclass PromiseSimpleEventDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new SimpleEventDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n * @param args The arguments object.\n * @returns {IPropagationStatus} The status of the dispatch.\n * @memberOf PromiseSimpleEventDispatcher\n */\n async dispatch(args) {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for it to complete.\n * @param args The argument object.\n * @memberOf PromiseSimpleEventDispatcher\n */\n dispatchAsync(args) {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseSimpleEventDispatcher = PromiseSimpleEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseSimpleEventList = void 0;\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformPromiseSimpleEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher();\n }\n}\nexports.NonUniformPromiseSimpleEventList = NonUniformPromiseSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\n/**\n * Storage class for multiple simple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseSimpleEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new SimpleEventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher();\n }\n}\nexports.PromiseSimpleEventList = PromiseSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSimpleEventList_1 = require(\"./PromiseSimpleEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseSimpleEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseSimpleEventList_1.PromiseSimpleEventList());\n }\n}\nexports.PromiseSimpleEventHandlingBase = PromiseSimpleEventHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseSimpleEventList = exports.PromiseSimpleEventList = exports.PromiseSimpleEventHandlingBase = exports.PromiseSimpleEventDispatcher = void 0;\nconst NonUniformPromiseSimpleEventList_1 = require(\"./NonUniformPromiseSimpleEventList\");\nObject.defineProperty(exports, \"NonUniformPromiseSimpleEventList\", { enumerable: true, get: function () { return NonUniformPromiseSimpleEventList_1.NonUniformPromiseSimpleEventList; } });\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\nObject.defineProperty(exports, \"PromiseSimpleEventDispatcher\", { enumerable: true, get: function () { return PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher; } });\nconst PromiseSimpleEventHandlingBase_1 = require(\"./PromiseSimpleEventHandlingBase\");\nObject.defineProperty(exports, \"PromiseSimpleEventHandlingBase\", { enumerable: true, get: function () { return PromiseSimpleEventHandlingBase_1.PromiseSimpleEventHandlingBase; } });\nconst PromiseSimpleEventList_1 = require(\"./PromiseSimpleEventList\");\nObject.defineProperty(exports, \"PromiseSimpleEventList\", { enumerable: true, get: function () { return PromiseSimpleEventList_1.PromiseSimpleEventList; } });\n", "\"use strict\";\r\n/*!\r\n * Strongly Typed Events for TypeScript\r\n * https://github.com/KeesCBakker/StronlyTypedEvents/\r\n * http://keestalkstech.com\r\n *\r\n * Copyright Kees C. Bakker / KeesTalksTech\r\n * Released under the MIT license\r\n */\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.NonUniformPromiseSimpleEventList = exports.PromiseSimpleEventList = exports.PromiseSimpleEventHandlingBase = exports.PromiseSimpleEventDispatcher = exports.PromiseSignalList = exports.PromiseSignalHandlingBase = exports.PromiseSignalDispatcher = exports.NonUniformPromiseEventList = exports.PromiseEventList = exports.PromiseEventHandlingBase = exports.PromiseEventDispatcher = exports.SignalList = exports.SignalHandlingBase = exports.SignalDispatcher = exports.NonUniformSimpleEventList = exports.SimpleEventList = exports.SimpleEventHandlingBase = exports.SimpleEventDispatcher = exports.NonUniformEventList = exports.EventList = exports.EventHandlingBase = exports.EventDispatcher = exports.HandlingBase = exports.PromiseDispatcherBase = exports.PromiseSubscription = exports.DispatchError = exports.EventManagement = exports.EventListBase = exports.DispatcherWrapper = exports.DispatcherBase = exports.Subscription = void 0;\r\nvar ste_core_1 = require(\"ste-core\");\r\nObject.defineProperty(exports, \"Subscription\", { enumerable: true, get: function () { return ste_core_1.Subscription; } });\r\nObject.defineProperty(exports, \"DispatcherBase\", { enumerable: true, get: function () { return ste_core_1.DispatcherBase; } });\r\nObject.defineProperty(exports, \"DispatcherWrapper\", { enumerable: true, get: function () { return ste_core_1.DispatcherWrapper; } });\r\nObject.defineProperty(exports, \"EventListBase\", { enumerable: true, get: function () { return ste_core_1.EventListBase; } });\r\nObject.defineProperty(exports, \"EventManagement\", { enumerable: true, get: function () { return ste_core_1.EventManagement; } });\r\nObject.defineProperty(exports, \"DispatchError\", { enumerable: true, get: function () { return ste_core_1.DispatchError; } });\r\nObject.defineProperty(exports, \"PromiseSubscription\", { enumerable: true, get: function () { return ste_core_1.PromiseSubscription; } });\r\nObject.defineProperty(exports, \"PromiseDispatcherBase\", { enumerable: true, get: function () { return ste_core_1.PromiseDispatcherBase; } });\r\nObject.defineProperty(exports, \"HandlingBase\", { enumerable: true, get: function () { return ste_core_1.HandlingBase; } });\r\nvar ste_events_1 = require(\"ste-events\");\r\nObject.defineProperty(exports, \"EventDispatcher\", { enumerable: true, get: function () { return ste_events_1.EventDispatcher; } });\r\nObject.defineProperty(exports, \"EventHandlingBase\", { enumerable: true, get: function () { return ste_events_1.EventHandlingBase; } });\r\nObject.defineProperty(exports, \"EventList\", { enumerable: true, get: function () { return ste_events_1.EventList; } });\r\nObject.defineProperty(exports, \"NonUniformEventList\", { enumerable: true, get: function () { return ste_events_1.NonUniformEventList; } });\r\nvar ste_simple_events_1 = require(\"ste-simple-events\");\r\nObject.defineProperty(exports, \"SimpleEventDispatcher\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventDispatcher; } });\r\nObject.defineProperty(exports, \"SimpleEventHandlingBase\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventHandlingBase; } });\r\nObject.defineProperty(exports, \"SimpleEventList\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventList; } });\r\nObject.defineProperty(exports, \"NonUniformSimpleEventList\", { enumerable: true, get: function () { return ste_simple_events_1.NonUniformSimpleEventList; } });\r\nvar ste_signals_1 = require(\"ste-signals\");\r\nObject.defineProperty(exports, \"SignalDispatcher\", { enumerable: true, get: function () { return ste_signals_1.SignalDispatcher; } });\r\nObject.defineProperty(exports, \"SignalHandlingBase\", { enumerable: true, get: function () { return ste_signals_1.SignalHandlingBase; } });\r\nObject.defineProperty(exports, \"SignalList\", { enumerable: true, get: function () { return ste_signals_1.SignalList; } });\r\nvar ste_promise_events_1 = require(\"ste-promise-events\");\r\nObject.defineProperty(exports, \"PromiseEventDispatcher\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseEventHandlingBase\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseEventList\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventList; } });\r\nObject.defineProperty(exports, \"NonUniformPromiseEventList\", { enumerable: true, get: function () { return ste_promise_events_1.NonUniformPromiseEventList; } });\r\nvar ste_promise_signals_1 = require(\"ste-promise-signals\");\r\nObject.defineProperty(exports, \"PromiseSignalDispatcher\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseSignalHandlingBase\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseSignalList\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalList; } });\r\nvar ste_promise_simple_events_1 = require(\"ste-promise-simple-events\");\r\nObject.defineProperty(exports, \"PromiseSimpleEventDispatcher\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseSimpleEventHandlingBase\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseSimpleEventList\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventList; } });\r\nObject.defineProperty(exports, \"NonUniformPromiseSimpleEventList\", { enumerable: true, get: function () { return ste_promise_simple_events_1.NonUniformPromiseSimpleEventList; } });\r\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcore.svg)](https://badge.fury.io/js/%40xeokit%2Fcore)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/core/badge)](https://www.jsdelivr.com/package/npm/@xeokit/core)\n *\n * \n *\n * ## xeokit SDK Core Components\n *\n * * {@link @xeokit/core!Component} base class\n * * Various interfaces that are implemented throughout the SDK.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/core\n * ````\n *\n * @module @xeokit/core\n */\n\nexport * from \"./Component\";\nexport * from \"./SDKError\";\nexport * from \"./EventEmitter\";\nexport * from \"./Capabilities\";\nexport * from \"./TextureTranscoder\";\nexport * from \"./TextureCompressedParams\";\n", "import type {IEvent} from \"strongly-typed-events\";\n\n/**\n * Event emitter.\n *\n * @typeParam TSender - Type of the event sender\n * @typeParam TArgs - Type of the event argument\n */\nexport class EventEmitter {\n\n #ievent: any;\n\n constructor(ievent: IEvent) {\n this.#ievent = ievent;\n }\n\n /**\n * Returns the number of subscriptions.\n */\n get count() : number {\n return this.#ievent.count;\n }\n /**\n * Subscribe to the event.\n *\n * @param func The event handler that is called when the event is dispatched.\n * @returns Function that unsubscribes the event handler from the event.\n */\n subscribe(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().subscribe(func);\n }\n\n /**\n * @private\n * @param sender\n * @param args\n */\n dispatch(sender: TSender, args: TArgs): void {\n this.#ievent.dispatch(sender, args);\n }\n\n /**\n * Subscribe to the event.\n * @param func The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n */\n sub(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().sub(func);\n }\n /**\n * Unsubscribe from the event.\n * @param func The event handler that will be unsubsribed from the event.\n */\n unsubscribe(func: (a: TSender, b: TArgs) => void): void {\n this.#ievent.asEvent().unsubscribe(func);\n }\n\n /**\n * Unsubscribe from the event.\n * @param func The event handler that will be unsubsribed from the event.\n */\n unsub(func: (a: TSender, b: TArgs) => void): void {\n this.#ievent.asEvent().unsub(func);\n }\n\n /**\n * Subscribes to the event only once.\n * @param func The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n */\n one(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().one(func);\n }\n\n /**\n * Checks if the event has a subscription for the specified handler.\n * @param func The event handler.\n */\n has(func: (a: TSender, b: TArgs) => void): boolean {\n return this.#ievent.asEvent().has(func);\n }\n\n /**\n * Clears all the subscriptions.\n */\n clear(): void {\n this.#ievent.asEvent().clear();\n }\n}", "import {EventEmitter} from \"./EventEmitter\";\nimport {EventDispatcher} from \"strongly-typed-events\";\n\nconst createUUID = ((() => {\n const lut: any[] = [];\n for (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n }\n return () => {\n const d0 = Math.random() * 0xffffffff | 0;\n const d1 = Math.random() * 0xffffffff | 0;\n const d2 = Math.random() * 0xffffffff | 0;\n const d3 = Math.random() * 0xffffffff | 0;\n return `${lut[d0 & 0xff] + lut[d0 >> 8 & 0xff] + lut[d0 >> 16 & 0xff] + lut[d0 >> 24 & 0xff]}-${lut[d1 & 0xff]}${lut[d1 >> 8 & 0xff]}-${lut[d1 >> 16 & 0x0f | 0x40]}${lut[d1 >> 24 & 0xff]}-${lut[d2 & 0x3f | 0x80]}${lut[d2 >> 8 & 0xff]}-${lut[d2 >> 16 & 0xff]}${lut[d2 >> 24 & 0xff]}${lut[d3 & 0xff]}${lut[d3 >> 8 & 0xff]}${lut[d3 >> 16 & 0xff]}${lut[d3 >> 24 & 0xff]}`;\n };\n}))();\n\n/**\n * Common base class for xeokit SDK components.\n *\n * ## Summary\n *\n * * Unique ID\n * * Logging methods\n * * Manages lifecycle of child Components\n */\nexport class Component {\n\n /**\n * Unique ID of this Component.\n */\n public id: string;\n\n /**\n * True once this Component has been destroyed.\n *\n * Don't use this Component if this is ````true````.\n */\n public destroyed: boolean;\n\n protected dirty: boolean;\n\n readonly #owner?: Component | null;\n\n #ownedComponents: null | { [key: string]: Component };\n\n /**\n * Emits an event when the {@link @xeokit/core!Component} has been destroyed.\n *\n * @event\n */\n onDestroyed: EventEmitter;\n\n /**\n * Creates a new component.\n */\n constructor(owner: null | Component, cfg: { id?: string, [key: string]: any } = {}) {\n this.#owner = owner;\n this.id = cfg.id || createUUID();\n this.destroyed = false;\n this.#ownedComponents = null;\n this.dirty = false;\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n if (owner) {\n owner.#own(this);\n }\n }\n\n /**\n * Logs a message for this component.\n *\n * The message will have this format: *````[LOG] [ : ````*\n *\n * @param message - The message to log\n * @protected\n */\n log(message: string): void {\n console.log(`[LOG] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs a warning for this component to the JavaScript console.\n *\n * The console message will have this format: *````[WARN] [ =: ````*\n *\n * @param message - The warning message to log\n * @protected\n */\n warn(message: string): void {\n console.warn(`[WARN] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs an error for this component to the JavaScript console.\n *\n * The console message will have this format: *````[ERROR] [ =: ````*\n\n @param message The error message to log\n @protected\n */\n error(message: string): void {\n console.error(`[ERROR] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Flags this component as having a defered state updates it needs to perform.\n */\n protected setDirty(): void {\n this.dirty = true;\n }\n\n /**\n * Gives this component an opportunity to action any defered state updates.\n */\n protected cleanIfDirty(): void {\n if (this.dirty) {\n this.dirty = false;\n this.clean();\n }\n }\n\n /**\n * Forces this component to action any deferred state updates.\n */\n protected clean(): void {\n }\n\n /**\n * Destroys this component.\n *\n * Also destroys any components owned by this one.\n *\n * Sets {@link Component.destroyed} ````true````.\n *\n * Cancels any deferred state updates.\n */\n destroy(): void {\n if (this.destroyed) {\n return;\n }\n this.destroyed = true;\n if (this.#ownedComponents) {\n for (let id in this.#ownedComponents) {\n if (this.#ownedComponents.hasOwnProperty(id)) {\n const component = this.#ownedComponents[id];\n component.destroy();\n delete this.#ownedComponents[id];\n }\n }\n }\n this.#ownedComponents = null;\n this.dirty = false;\n this.onDestroyed.dispatch(this, null);\n this.onDestroyed.clear();\n }\n\n #prefixMessageWithID(message: string): string {\n return ` [${this.constructor.name} \"${this.id}\"]: ${message}`;\n }\n\n #own(component: Component) {\n if (!this.#ownedComponents) {\n this.#ownedComponents = {};\n }\n if (!this.#ownedComponents[component.id]) {\n this.#ownedComponents[component.id] = component;\n }\n component.onDestroyed.one(() => {\n // @ts-ignore\n delete this.#ownedComponents[component.id];\n });\n }\n}\n\n", "/**\n * Basic xeokit SDK error type.\n */\nexport class SDKError extends Error {\n\n}", "/**\n * ## xeokit SDK Constant Definitions\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/constants\n * ````\n *\n * @module @xeokit/constants\n */\n\n/**\n * SceneTexture wrapping mode in which the texture repeats to infinity.\n */\nexport const RepeatWrapping = 1000;\n\n/**\n * SceneTexture wrapping mode in which the last pixel of the texture stretches to the edge of the mesh.\n */\nexport const ClampToEdgeWrapping = 1001;\n\n/**\n * SceneTexture wrapping mode in which the texture repeats to infinity, mirroring on each repeat.\n */\nexport const MirroredRepeatWrapping = 1002;\n\n/**\n * SceneTexture magnification and minification filter that returns the nearest texel to the given sample coordinates.\n */\nexport const NearestFilter = 1003;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and returns the nearest texel to the given sample coordinates.\n */\nexport const NearestMipMapNearestFilter = 1004;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured\n * and returns the nearest texel to the given sample coordinates.\n */\nexport const NearestMipmapNearestFilter = 1004;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured\n * and returns the nearest texel to the center of the pixel at the given sample coordinates.\n */\nexport const NearestMipmapLinearFilter = 1005;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured\n * and returns the nearest texel to the center of the pixel at the given sample coordinates.\n */\nexport const NearestMipMapLinearFilter = 1005;\n\n/**\n * SceneTexture magnification and minification filter that returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearFilter = 1006;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and\n * returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearMipmapNearestFilter = 1007;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and\n * returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearMipMapNearestFilter = 1007;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured,\n * finds within each mipmap the weighted average of the nearest texel to the center of the pixel, then returns the\n * weighted average of those two values.\n */\nexport const LinearMipmapLinearFilter = 1008;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured,\n * finds within each mipmap the weighted average of the nearest texel to the center of the pixel, then returns the\n * weighted average of those two values.\n */\nexport const LinearMipMapLinearFilter = 1008;\n\n/**\n * Unsigned 8-bit integer type.\n */\nexport const UnsignedByteType = 1009;\n\n/**\n * Signed 8-bit integer type.\n */\nexport const ByteType = 1010;\n\n/**\n * Signed 16-bit integer type.\n */\nexport const ShortType = 1011;\n\n/**\n * Unsigned 16-bit integer type.\n */\nexport const UnsignedShortType = 1012;\n\n/**\n * Signed 32-bit integer type.\n */\nexport const IntType = 1013;\n\n/**\n * Unsigned 32-bit integer type.\n */\nexport const UnsignedIntType = 1014;\n\n/**\n * Signed 32-bit floating-point type.\n */\nexport const FloatType = 1015;\n\n/**\n * Signed 16-bit half-precision floating-point type.\n */\nexport const HalfFloatType = 1016;\n\n/**\n * SceneTexture packing mode in which each ````RGBA```` channel is packed into 4 bits, for a combined total of 16 bits.\n */\nexport const UnsignedShort4444Type = 1017;\n\n/**\n * SceneTexture packing mode in which the ````RGB```` channels are each packed into 5 bits, and the ````A```` channel is packed into 1 bit, for a combined total of 16 bits.\n */\nexport const UnsignedShort5551Type = 1018;\n\n/**\n * Unsigned integer type for 24-bit depth texture data.\n */\nexport const UnsignedInt248Type = 1020;\n\n/**\n * SceneTexture sampling mode that discards the ````RGBA```` components and just reads the ````A```` component.\n */\nexport const AlphaFormat = 1021;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` component and reads the ````RGB```` components.\n */\nexport const RGBFormat = 1022;\n\n/**\n * SceneTexture sampling mode that reads the ````RGBA```` components.\n */\nexport const RGBAFormat = 1023;\n\n/**\n * SceneTexture sampling mode that reads each ````RGB```` texture component as a luminance value, converted to a float and clamped\n * to ````[0,1]````, while always reading the ````A```` channel as ````1.0````.\n */\nexport const LuminanceFormat = 1024;\n\n/**\n * SceneTexture sampling mode that reads each of the ````RGBA```` texture components as a luminance/alpha value, converted to a float and clamped to ````[0,1]````.\n */\nexport const LuminanceAlphaFormat = 1025;\n\n/**\n * SceneTexture sampling mode that reads each element as a single depth value, converts it to a float and clamps to ````[0,1]````.\n */\nexport const DepthFormat = 1026;\n\n/**\n * SceneTexture sampling mode that\n */\nexport const DepthStencilFormat = 1027;\n\n/**\n * SceneTexture sampling mode that discards the ````GBA```` components and just reads the ````R```` component.\n */\nexport const RedFormat = 1028;\n\n/**\n * SceneTexture sampling mode that discards the ````GBA```` components and just reads the ````R```` component, as an integer instead of as a float.\n */\nexport const RedIntegerFormat = 1029;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` and ````B```` components and just reads the ````R```` and ````G```` components.\n */\nexport const RGFormat = 1030;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` and ````B```` components and just reads the ````R```` and ````G```` components, as integers instead of floats.\n */\nexport const RGIntegerFormat = 1031;\n\n/**\n * SceneTexture sampling mode that reads the ````RGBA```` components as integers instead of floats.\n */\nexport const RGBAIntegerFormat = 1033;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT1 compressed ````RGB```` image.\n */\nexport const RGB_S3TC_DXT1_Format = 33776;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT1 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT1_Format = 33777;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT3 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT3_Format = 33778;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT5 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT5_Format = 33779;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGB```` compression in 4-bit mode and one block for each 4\u00D74 pixels.\n */\nexport const RGB_PVRTC_4BPPV1_Format = 35840;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGB```` compression in 2-bit mode and one block for each 8\u00D74 pixels.\n */\nexport const RGB_PVRTC_2BPPV1_Format = 35841;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGBA```` compression in 4-bit mode and one block for each 4\u00D74 pixels.\n */\nexport const RGBA_PVRTC_4BPPV1_Format = 35842;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGBA```` compression in 2-bit mode and one block for each 8\u00D74 pixels.\n */\nexport const RGBA_PVRTC_2BPPV1_Format = 35843;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC1 compressed\n * ````RGB```` image.\n */\nexport const RGB_ETC1_Format = 36196;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC2 compressed\n * ````RGB```` image.\n */\nexport const RGB_ETC2_Format = 37492;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC2 compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ETC2_EAC_Format = 37496;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_4x4_Format = 37808;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_5x4_Format = 37809;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_5x5_Format = 37810;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_6x5_Format = 37811;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_6x6_Format = 37812;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x5_Format = 37813;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x6_Format = 37814;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x8_Format = 37815;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x5_Format = 37816;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x6_Format = 37817;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x8_Format = 37818;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x10_Format = 37819;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_12x10_Format = 37820;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_12x12_Format = 37821;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an BPTC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_BPTC_Format = 36492;\n\n/**\n * SceneTexture encoding mode in which the texture image is in linear color space.\n */\nexport const LinearEncoding = 3000;\n\n/**\n * SceneTexture encoding mode in which the texture image is in sRGB color space.\n */\nexport const sRGBEncoding = 3001;\n\n/**\n * Media type for GIF images.\n */\nexport const GIFMediaType = 10000;\n\n/**\n * Media type for JPEG images.\n */\nexport const JPEGMediaType = 10001;\n\n/**\n * Media type for PNG images.\n */\nexport const PNGMediaType = 10002;\n\n/**\n * Points primitive type.\n */\nexport const PointsPrimitive = 20000;\n\n/**\n * Line segments primitive type.\n */\nexport const LinesPrimitive = 20001;\n\n/**\n * Non-closed triangle mesh primitive type.\n *\n * > Since we are able to look inside non-closed surfaces and see their backfaces, these primitive types are always\n * rendered with backfaces enabled.\n */\nexport const TrianglesPrimitive = 20002;\n\n/**\n * Closed triangle mesh primitive type.\n *\n * Since we normally can't see the backfaces inside closed surfaces, these primitive types are normally rendered\n * with backfaces disabled, for extra performance.\n */\nexport const SolidPrimitive = 20003;\n\n/**\n * Non-closed triangle mesh primitive type.\n *\n * Since we are able to look inside non-closed surfaces and see their backfaces, these primitive types are always\n * rendered with backfaces enabled.\n */\nexport const SurfacePrimitive = 20004;\n\n/**\n * Fast rendering mode.\n */\nexport const FastRender = 300001;\n\n/**\n * Quality rendering mode.\n */\nexport const QualityRender = 30000;\n\n/**\n * Meters unit of measurement.\n */\nexport const MetersUnit = 400000;\n\n/**\n * Centimeters unit of measurement.\n */\nexport const CentimetersUnit = 400001;\n\n/**\n * Millimeters unit of measurement.\n */\nexport const MillimetersUnit = 400002;\n\n/**\n * Yards unit of measurement.\n */\nexport const YardsUnit = 400003;\n\n/**\n * Feet unit of measurement.\n */\nexport const FeetUnit = 400004;\n\n/**\n * Inches unit of measurement.\n */\nexport const InchesUnit = 400005;\n\n/**\n * Perspective projection type.\n */\nexport const PerspectiveProjectionType = 500000;\n\n/**\n * Orthographic projection type.\n */\nexport const OrthoProjectionType = 500001;\n\n/**\n * Frustum3 projection type.\n */\nexport const FrustumProjectionType = 500002;\n\n/**\n * Custom projection type.\n */\nexport const CustomProjectionType = 500003;\n\n/**\n * Orbit navigation mode.\n */\nexport const OrbitNavigationMode = 600001;\n\n/**\n * First-person navigation mode.\n */\nexport const FirstPersonNavigationMode = 600002;\n\n/**\n * Plan view navigation mode.\n */\nexport const PlanViewNavigationMode = 600003;\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Core Math Utilities\n *\n * ---\n *\n * ### *Basic math types and constants*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/math\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as math from \"@xeokit/math\";\n *\n * //..\n * ````\n *\n * @module @xeokit/math\n */\n\n/**\n * An array of floating-point numbers.\n */\nexport type FloatArrayParam = (Uint8Array | Int8Array | Uint16Array | Uint32Array | Int16Array | Float32Array | Float64Array | number[]);\n\n/**\n * An array of integer numbers.\n */\nexport type IntArrayParam = (Uint32Array | Uint8Array | Int8Array | Uint16Array | Int16Array | number[]);\n\n/**\n * Minimum safe double-precision value.\n */\nexport const MIN_DOUBLE: number = -Number.MAX_SAFE_INTEGER;\n\n/**\n * Maximum safe double-precision value.\n */\nexport const MAX_DOUBLE: number = Number.MAX_SAFE_INTEGER;\n\n/**\n * The number of radiians in a degree (0.0174532925).\n */\nexport const DEGTORAD: number = 0.0174532925;\n\n/**\n * The number of degrees in a radian.\n */\nexport const RADTODEG: number = 57.295779513;\n\n/**\n * Clamps a value to the given range.\n * @param value Value to clamp.\n * @param min Lower bound.\n * @param max Upper bound.\n * @returns Clamped result.\n */\nexport function clamp(value: number, min: number, max: number): number {\n return Math.max(min, Math.min(max, value));\n}\n\n/**\n * Creates a new {@link FloatArrayParam}.\n */\nexport function newFloatArray(values?: number | FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values);\n}\n\n\nexport const MAX_INT= 10000000;\n\n/**\n * Maximum safe inverse.\n *\n * Returns:\n * - x != 0 => 1/x,\n * - x == 1 => 1\n *\n * @param {number} x\n */\nexport function safeInv(x:number) {\n const retVal = 1 / x;\n if (isNaN(retVal) || !isFinite(retVal)) {\n return 1;\n }\n return retVal;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Matrix and Vector Math Library\n *\n * ---\n *\n * ### *Math functions for 3D/2D matrices, quaternions and vectors*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/matrix\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as matrix from \"@xeokit/matrix\";\n *\n * //..\n * ````\n *\n * @module @xeokit/matrix\n */\nimport {clamp, DEGTORAD, type FloatArrayParam, newFloatArray} from \"@xeokit/math\";\n\n\nconst tempVec4a: FloatArrayParam = createVec4();\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec4b = createVec4();\n\n/**\n * Returns the dot product of two three-element vectors.\n */\nexport function dotVec3(u: FloatArrayParam, v: FloatArrayParam): number {\n return (u[0] * v[0] + u[1] * v[1] + u[2] * v[2]);\n}\n\n/**\n * Returns a new, uninitialized two-element vector.\n */\nexport function createVec2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 2);\n}\n\n/**\n * Returns a new, uninitialized three-element vector.\n */\nexport function createVec3(values?: FloatArrayParam): Float64Array {\n // @ts-ignore\n return new Float64Array(values || 3);\n}\n\n/**\n * Returns a new, uninitialized four-element vector.\n */\nexport function createVec4(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 4);\n}\n\n/**\n * Negates a three-element vector.\n */\nexport function negateVec3(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = -v[0];\n dest[1] = -v[1];\n dest[2] = -v[2];\n return dest;\n}\n\n/**\n * Negates a four-element vector.\n */\nexport function negateVec4(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = -v[0];\n dest[1] = -v[1];\n dest[2] = -v[2];\n dest[3] = -v[3];\n return dest;\n}\n\n/**\n * Adds one four-element vector to another.\n */\nexport function addVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] + v[0];\n dest[1] = u[1] + v[1];\n dest[2] = u[2] + v[2];\n dest[3] = u[3] + v[3];\n return dest;\n}\n\n/**\n * Adds a scalar value to each element of a four-element vector.\n */\nexport function addVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] + s;\n dest[1] = v[1] + s;\n dest[2] = v[2] + s;\n dest[3] = v[3] + s;\n return dest;\n}\n\n/**\n * Multiplies each element of a four-element vector by a scalar.\n */\nexport function mulVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n dest[2] = v[2] * s;\n dest[3] = v[3] * s;\n return dest;\n}\n\n/**\n * Multiplies each element of a three-element vector by a scalar.\n */\nexport function mulVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n dest[2] = v[2] * s;\n return dest;\n}\n\n/**\n * Multiplies each element of a two-element vector by a scalar.\n */\nexport function mulVec2Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n return dest;\n}\n\n/**\n * Adds one three-element vector to another.\n */\nexport function addVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] + v[0];\n dest[1] = u[1] + v[1];\n dest[2] = u[2] + v[2];\n return dest;\n}\n\n/**\n */\nexport function addVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] + s;\n dest[1] = v[1] + s;\n dest[2] = v[2] + s;\n return dest;\n}\n\n/**\n * Subtracts one four-element vector from another.\n */\nexport function subVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n dest[2] = u[2] - v[2];\n dest[3] = u[3] - v[3];\n return dest;\n}\n\n/**\n * Returns true if the two 3-element vectors are the same.\n */\nexport function compareVec3(v1: FloatArrayParam, v2: FloatArrayParam): boolean {\n return (v1[0] === v2[0] && v1[1] === v2[1] && v1[2] === v2[2]);\n}\n\n/**\n * Subtracts one three-element vector from another.\n */\nexport function subVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n dest[2] = u[2] - v[2];\n return dest;\n}\n\n/**\n * Subtracts one two-element vector from another.\n */\nexport function subVec2(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n return dest;\n}\n\n/**\n * Get the geometric mean of the vectors.\n */\nexport function geometricMeanVec2(...vectors: any) {\n const geometricMean = new Float32Array(vectors[0]);\n for (let i = 1; i < vectors.length; i++) {\n geometricMean[0] += vectors[i][0];\n geometricMean[1] += vectors[i][1];\n }\n geometricMean[0] /= vectors.length;\n geometricMean[1] /= vectors.length;\n return geometricMean;\n}\n\n/**\n * Subtracts a scalar value from each element of a four-element vector.\n */\nexport function subVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] - s;\n dest[1] = v[1] - s;\n dest[2] = v[2] - s;\n dest[3] = v[3] - s;\n return dest;\n}\n\n/**\n * Sets each element of a 4-element vector to a scalar value minus the value of that element.\n * @method subScalarVec4\n * @static\n * @param {Array(Number)} v The vector\n * @param s The scalar\n * @param {Array(Number)} [dest] Destination vector\n * @return {Array(Number)} dest if specified, v otherwise\n */\nexport function subScalarVec4(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s - v[0];\n dest[1] = s - v[1];\n dest[2] = s - v[2];\n dest[3] = s - v[3];\n return dest;\n}\n\n/**\n * Multiplies one three-element vector by another.\n */\nexport function mulVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] * v[0];\n dest[1] = u[1] * v[1];\n dest[2] = u[2] * v[2];\n dest[3] = u[3] * v[3];\n return dest;\n}\n\n\n/**\n * Divides one three-element vector by another.\n */\nexport function divVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] / v[0];\n dest[1] = u[1] / v[1];\n dest[2] = u[2] / v[2];\n return dest;\n}\n\n/**\n * Divides one four-element vector by another.\n */\nexport function divVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] / v[0];\n dest[1] = u[1] / v[1];\n dest[2] = u[2] / v[2];\n dest[3] = u[3] / v[3];\n return dest;\n}\n\n/**\n * Divides a scalar by a three-element vector, returning a new vector.\n */\nexport function divScalarVec3(s: number, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s / v[0];\n dest[1] = s / v[1];\n dest[2] = s / v[2];\n return dest;\n}\n\n/**\n * Divides a three-element vector by a scalar.\n */\nexport function divVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] / s;\n dest[1] = v[1] / s;\n dest[2] = v[2] / s;\n return dest;\n}\n\n/**\n * Divides a four-element vector by a scalar.\n */\nexport function divVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] / s;\n dest[1] = v[1] / s;\n dest[2] = v[2] / s;\n dest[3] = v[3] / s;\n return dest;\n}\n\n/**\n * Divides a scalar by a four-element vector, returning a new vector.\n */\nexport function divScalarVec4(s: number, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s / v[0];\n dest[1] = s / v[1];\n dest[2] = s / v[2];\n dest[3] = s / v[3];\n return dest;\n}\n\n/**\n * Returns the dot product of two four-element vectors.\n */\nexport function dotVec4(u: FloatArrayParam, v: FloatArrayParam) {\n return (u[0] * v[0] + u[1] * v[1] + u[2] * v[2] + u[3] * v[3]);\n}\n\n/**\n * Returns the cross product of two four-element vectors.\n */\nexport function cross3Vec4(u: FloatArrayParam, v: FloatArrayParam) {\n const u0 = u[0];\n const u1 = u[1];\n const u2 = u[2];\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n return [\n u1 * v2 - u2 * v1,\n u2 * v0 - u0 * v2,\n u0 * v1 - u1 * v0,\n 0.0];\n}\n\n/**\n * Returns the cross product of two three-element vectors.\n */\nexport function cross3Vec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n const x = u[0];\n const y = u[1];\n const z = u[2];\n const x2 = v[0];\n const y2 = v[1];\n const z2 = v[2];\n dest[0] = y * z2 - z * y2;\n dest[1] = z * x2 - x * z2;\n dest[2] = x * y2 - y * x2;\n return dest;\n}\n\nexport function sqLenVec4(v: FloatArrayParam) { // TODO\n return dotVec4(v, v);\n}\n\n/**\n * Returns the length of a four-element vector.\n * @method lenVec4\n * @static\n * @param {Array(Number)} v The vector\n * @return The length\n */\nexport function lenVec4(v: FloatArrayParam) {\n return Math.sqrt(sqLenVec4(v));\n}\n\n\n/**\n * Returns the dot product of two two-element vectors.\n */\nexport function dotVec2(u: FloatArrayParam, v: FloatArrayParam) {\n return (u[0] * v[0] + u[1] * v[1]);\n}\n\n\nexport function sqLenVec3(v: FloatArrayParam) {\n return dotVec3(v, v);\n}\n\n\nexport function sqLenVec2(v: FloatArrayParam) {\n return dotVec2(v, v);\n}\n\n/**\n * Returns the length of a three-element vector.\n */\nexport function lenVec3(v: FloatArrayParam): number {\n return Math.sqrt(sqLenVec3(v));\n}\n\nexport const distVec3 = ((() => {\n const vec = createVec3();\n return (v: FloatArrayParam, w: FloatArrayParam) => lenVec3(subVec3(v, w, vec));\n}))()\n\n/**\n * Returns the length of a two-element vector.\n */\nexport function lenVec2(v: FloatArrayParam): number {\n return Math.sqrt(sqLenVec2(v));\n}\n\n/**\n * Linearly interpolates between two 3D vectors.\n */\nexport function lerpVec3(t: number, t1: number, t2: number, p1: FloatArrayParam, p2: FloatArrayParam, dest: any) {\n const result = dest || createVec3();\n const f = (t - t1) / (t2 - t1);\n result[0] = p1[0] + (f * (p2[0] - p1[0]));\n result[1] = p1[1] + (f * (p2[1] - p1[1]));\n result[2] = p1[2] + (f * (p2[2] - p1[2]));\n return result;\n}\n\nexport const distVec2 = ((() => {\n const vec = createVec2();\n return (v: FloatArrayParam, w: FloatArrayParam) => lenVec2(subVec2(v, w, vec));\n}))();\n\n/**\n * @method rcpVec3\n * @static\n * @param v createVec3\n * @param dest createVec3 - optional destination\n * @return [] dest if specified, v otherwise\n *\n */\nexport function rcpVec3(v: FloatArrayParam, dest: FloatArrayParam) {\n return divScalarVec3(1.0, v, dest);\n}\n\n/**\n * Normalizes a four-element vector\n *\n */\nexport function normalizeVec4(v: FloatArrayParam, dest: FloatArrayParam) {\n const f = 1.0 / lenVec4(v);\n return mulVec4Scalar(v, f, dest);\n}\n\n/**\n * Normalizes a three-element vector\n * @method normalizeVec4\n * @static\n */\nexport function normalizeVec3(v: FloatArrayParam, dest?: FloatArrayParam) {\n const f = 1.0 / lenVec3(v);\n return mulVec3Scalar(v, f, dest);\n}\n\n/**\n * Normalizes a two-element vector\n */\nexport function normalizeVec2(v: FloatArrayParam, dest: FloatArrayParam) {\n const f = 1.0 / lenVec2(v);\n return mulVec2Scalar(v, f, dest);\n}\n\n/**\n * Gets the angle between two vectors\n */\nexport function angleVec3(v: FloatArrayParam, w: FloatArrayParam) {\n let theta = dotVec3(v, w) / (Math.sqrt(sqLenVec3(v) * sqLenVec3(w)));\n theta = theta < -1 ? -1 : (theta > 1 ? 1 : theta); // Clamp to handle numerical problems\n return Math.acos(theta);\n}\n\n/**\n * Creates a three-element vector from the rotation part of a sixteen-element matrix.\n */\nexport const vec3FromMat4Scale: Function = ((() => {\n\n const tempVec3 = createVec3();\n\n return function (m: FloatArrayParam, dest: FloatArrayParam) {\n\n tempVec3[0] = m[0];\n tempVec3[1] = m[1];\n tempVec3[2] = m[2];\n\n dest[0] = lenVec3(tempVec3);\n\n tempVec3[0] = m[4];\n tempVec3[1] = m[5];\n tempVec3[2] = m[6];\n\n dest[1] = lenVec3(tempVec3);\n\n tempVec3[0] = m[8];\n tempVec3[1] = m[9];\n tempVec3[2] = m[10];\n\n dest[2] = lenVec3(tempVec3);\n\n return dest;\n };\n}))();\n\n/**\n * Converts an n-element vector to a JSON-serializable\n * array with values rounded to two decimal places.\n */\nexport function vecToArray(v: FloatArrayParam): FloatArrayParam {\n v = Array.prototype.slice.call(v);\n for (let i = 0, len = v.length; i < len; i++) {\n v[i] = trunc(v[i]);\n }\n return v;\n}\n\nfunction trunc(v: number) {\n return Math.round(v * 100000) / 100000\n}\n\n\n/**\n * Calculates the normal vector of a triangle.\n */\nexport function triangleNormal(a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam, normal: FloatArrayParam = createVec3()): FloatArrayParam {\n const p1x = b[0] - a[0];\n const p1y = b[1] - a[1];\n const p1z = b[2] - a[2];\n\n const p2x = c[0] - a[0];\n const p2y = c[1] - a[1];\n const p2z = c[2] - a[2];\n\n const p3x = p1y * p2z - p1z * p2y;\n const p3y = p1z * p2x - p1x * p2z;\n const p3z = p1x * p2y - p1y * p2x;\n\n const mag = Math.sqrt(p3x * p3x + p3y * p3y + p3z * p3z);\n if (mag === 0) {\n normal[0] = 0;\n normal[1] = 0;\n normal[2] = 0;\n } else {\n normal[0] = p3x / mag;\n normal[1] = p3y / mag;\n normal[2] = p3z / mag;\n }\n\n return normal\n}\n\n\n/**\n * Returns a new, uninitialized 3x3 matrix.\n */\nexport function createMat3(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new newFloatArray(values || 9);\n}\n\n/**\n * Converts a 3x3 matrix to 4x4.\n */\nexport function mat3ToMat4(mat3: FloatArrayParam, mat4?: FloatArrayParam): FloatArrayParam {\n if (!mat4) {\n mat4 = createMat4();\n }\n mat4[0] = mat3[0];\n mat4[1] = mat3[1];\n mat4[2] = mat3[2];\n mat4[3] = 0;\n mat4[4] = mat3[3];\n mat4[5] = mat3[4];\n mat4[6] = mat3[5];\n mat4[7] = 0;\n mat4[8] = mat3[6];\n mat4[9] = mat3[7];\n mat4[10] = mat3[8];\n mat4[11] = 0;\n mat4[12] = 0;\n mat4[13] = 0;\n mat4[14] = 0;\n mat4[15] = 1;\n return mat4;\n}\n\n/**\n * Returns a new, uninitialized 4x4 matrix.\n */\nexport function createMat4(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 16);\n}\n\nconst tempMat4a = createMat4();\nconst tempMat4b = createMat4();\n\n/**\n * Returns true if the two 4x4 matrices are the same.\n * @param m1\n * @param m2\n * @returns {boolean}\n */\nexport function compareMat4(m1: FloatArrayParam, m2: FloatArrayParam): boolean {\n return m1[0] === m2[0] &&\n m1[1] === m2[1] &&\n m1[2] === m2[2] &&\n m1[3] === m2[3] &&\n m1[4] === m2[4] &&\n m1[5] === m2[5] &&\n m1[6] === m2[6] &&\n m1[7] === m2[7] &&\n m1[8] === m2[8] &&\n m1[9] === m2[9] &&\n m1[10] === m2[10] &&\n m1[11] === m2[11] &&\n m1[12] === m2[12] &&\n m1[13] === m2[13] &&\n m1[14] === m2[14] &&\n m1[15] === m2[15];\n}\n\n/**\n * Returns a 4x4 perspective projection matrix.\n */\nexport function perspectiveMat4(fovyrad: number, aspectratio: number, znear: number, zfar: number, m?: FloatArrayParam): FloatArrayParam {\n const pmin = [];\n const pmax = [];\n pmin[2] = znear;\n pmax[2] = zfar;\n pmax[1] = pmin[2] * Math.tan(fovyrad / 2.0);\n pmin[1] = -pmax[1];\n pmax[0] = pmax[1] * aspectratio;\n pmin[0] = -pmax[0];\n return frustumMat4v(pmin, pmax, m);\n}\n\n/**\n * Returns a 4x4 perspective frustum projection matrix.\n */\nexport function frustumMat4v(fmin: FloatArrayParam, fmax: FloatArrayParam, m?: FloatArrayParam): FloatArrayParam {\n if (!m) {\n m = createMat4();\n }\n const fmin4 = [fmin[0], fmin[1], fmin[2], 0.0];\n const fmax4 = [fmax[0], fmax[1], fmax[2], 0.0];\n addVec4(fmax4, fmin4, tempMat4a);\n subVec4(fmax4, fmin4, tempMat4b);\n const t = 2.0 * fmin4[2];\n const tempMat4b0 = tempMat4b[0];\n const tempMat4b1 = tempMat4b[1];\n const tempMat4b2 = tempMat4b[2];\n m[0] = t / tempMat4b0;\n m[1] = 0.0;\n m[2] = 0.0;\n m[3] = 0.0;\n m[4] = 0.0;\n m[5] = t / tempMat4b1;\n m[6] = 0.0;\n m[7] = 0.0;\n m[8] = tempMat4a[0] / tempMat4b0;\n m[9] = tempMat4a[1] / tempMat4b1;\n m[10] = -tempMat4a[2] / tempMat4b2;\n m[11] = -1.0;\n m[12] = 0.0;\n m[13] = 0.0;\n m[14] = -t * fmax4[2] / tempMat4b2;\n m[15] = 0.0;\n return m;\n}\n\n/**\n * Returns a 4x4 orthographic projection matrix.\n */\nexport function orthoMat4c(\n left: number,\n right: number,\n bottom: number,\n top: number,\n near: number,\n far: number,\n dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const rl = (right - left);\n const tb = (top - bottom);\n const fn = (far - near);\n dest[0] = 2.0 / rl;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 0.0;\n dest[5] = 2.0 / tb;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 0.0;\n dest[9] = 0.0;\n dest[10] = -2.0 / fn;\n dest[11] = 0.0;\n dest[12] = -(left + right) / rl;\n dest[13] = -(top + bottom) / tb;\n dest[14] = -(far + near) / fn;\n dest[15] = 1.0;\n return dest;\n}\n\n/**\n * Returns a 4x4 perspective projection matrix.\n */\nexport function frustumMat4(\n left: number,\n right: number,\n bottom: number,\n top: number,\n near: number,\n far: number,\n dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const rl = (right - left);\n const tb = (top - bottom);\n const fn = (far - near);\n dest[0] = (near * 2) / rl;\n dest[1] = 0;\n dest[2] = 0;\n dest[3] = 0;\n dest[4] = 0;\n dest[5] = (near * 2) / tb;\n dest[6] = 0;\n dest[7] = 0;\n dest[8] = (right + left) / rl;\n dest[9] = (top + bottom) / tb;\n dest[10] = -(far + near) / fn;\n dest[11] = -1;\n dest[12] = 0;\n dest[13] = 0;\n dest[14] = -(far * near * 2) / fn;\n dest[15] = 0;\n return dest;\n}\n\n\n/**\n * Returns a 4x4 identity matrix.\n */\nexport function identityMat4(dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n dest[0] = 1.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 0.0;\n dest[5] = 1.0;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 0.0;\n dest[9] = 0.0;\n dest[10] = 1.0;\n dest[11] = 0.0;\n dest[12] = 0.0;\n dest[13] = 0.0;\n dest[14] = 0.0;\n dest[15] = 1.0;\n return dest;\n}\n\n/**\n * Returns a 3x3 identity matrix.\n */\nexport function identityMat3(dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n dest[0] = 1.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 1.0;\n dest[5] = 0.0;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 1.0;\n return dest;\n}\n\n/**\n * Tests if the given 4x4 matrix is the identity matrix.\n */\nexport function isIdentityMat4(m: FloatArrayParam): boolean {\n if (m[0] !== 1.0 || m[1] !== 0.0 || m[2] !== 0.0 || m[3] !== 0.0 ||\n m[4] !== 0.0 || m[5] !== 1.0 || m[6] !== 0.0 || m[7] !== 0.0 ||\n m[8] !== 0.0 || m[9] !== 0.0 || m[10] !== 1.0 || m[11] !== 0.0 ||\n m[12] !== 0.0 || m[13] !== 0.0 || m[14] !== 0.0 || m[15] !== 1.0) {\n return false;\n }\n return true;\n}\n\n/**\n * Creates a 4x4 rotation matrix.\n */\nexport function rotationMat4v(anglerad: number, axis: FloatArrayParam, m?: FloatArrayParam): FloatArrayParam {\n if (!m) {\n m = createMat4();\n }\n const ax = normalizeVec4([axis[0], axis[1], axis[2], 0.0], []);\n const s = Math.sin(anglerad);\n const c = Math.cos(anglerad);\n const q = 1.0 - c;\n const x = ax[0];\n const y = ax[1];\n const z = ax[2];\n let xy;\n let yz;\n let zx;\n let xs;\n let ys;\n let zs;\n xy = x * y;\n yz = y * z;\n zx = z * x;\n xs = x * s;\n ys = y * s;\n zs = z * s;\n m[0] = (q * x * x) + c;\n m[1] = (q * xy) + zs;\n m[2] = (q * zx) - ys;\n m[3] = 0.0;\n m[4] = (q * xy) - zs;\n m[5] = (q * y * y) + c;\n m[6] = (q * yz) + xs;\n m[7] = 0.0;\n m[8] = (q * zx) + ys;\n m[9] = (q * yz) - xs;\n m[10] = (q * z * z) + c;\n m[11] = 0.0;\n m[12] = 0.0;\n m[13] = 0.0;\n m[14] = 0.0;\n m[15] = 1.0;\n return m;\n}\n\n/**\n * Creates a 4x4 'lookat' viewing transform matrix.\n */\nexport function lookAtMat4v(pos: FloatArrayParam, target: FloatArrayParam, up: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const posx = pos[0];\n const posy = pos[1];\n const posz = pos[2];\n const upx = up[0];\n const upy = up[1];\n const upz = up[2];\n const targetx = target[0];\n const targety = target[1];\n const targetz = target[2];\n if (posx === targetx && posy === targety && posz === targetz) {\n return identityMat4();\n }\n let z0;\n let z1;\n let z2;\n let x0;\n let x1;\n let x2;\n let y0;\n let y1;\n let y2;\n let len;\n //createVec3.direction(eye, center, z);\n z0 = posx - targetx;\n z1 = posy - targety;\n z2 = posz - targetz;\n // normalize (no check needed for 0 because of early return)\n len = 1 / Math.sqrt(z0 * z0 + z1 * z1 + z2 * z2);\n z0 *= len;\n z1 *= len;\n z2 *= len;\n //createVec3.normalize(createVec3.cross(up, z, x));\n x0 = upy * z2 - upz * z1;\n x1 = upz * z0 - upx * z2;\n x2 = upx * z1 - upy * z0;\n len = Math.sqrt(x0 * x0 + x1 * x1 + x2 * x2);\n if (!len) {\n x0 = 0;\n x1 = 0;\n x2 = 0;\n } else {\n len = 1 / len;\n x0 *= len;\n x1 *= len;\n x2 *= len;\n }\n //createVec3.normalize(createVec3.cross(z, x, y));\n y0 = z1 * x2 - z2 * x1;\n y1 = z2 * x0 - z0 * x2;\n y2 = z0 * x1 - z1 * x0;\n len = Math.sqrt(y0 * y0 + y1 * y1 + y2 * y2);\n if (!len) {\n y0 = 0;\n y1 = 0;\n y2 = 0;\n } else {\n len = 1 / len;\n y0 *= len;\n y1 *= len;\n y2 *= len;\n }\n dest[0] = x0;\n dest[1] = y0;\n dest[2] = z0;\n dest[3] = 0;\n dest[4] = x1;\n dest[5] = y1;\n dest[6] = z1;\n dest[7] = 0;\n dest[8] = x2;\n dest[9] = y2;\n dest[10] = z2;\n dest[11] = 0;\n dest[12] = -(x0 * posx + x1 * posy + x2 * posz);\n dest[13] = -(y0 * posx + y1 * posy + y2 * posz);\n dest[14] = -(z0 * posx + z1 * posy + z2 * posz);\n dest[15] = 1;\n return dest;\n}\n\n/**\n * Returns the inverse of the given 4x4 matrix.\n */\nexport function inverseMat4(mat: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = mat;\n }\n const a00 = mat[0];\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a10 = mat[4];\n const a11 = mat[5];\n const a12 = mat[6];\n const a13 = mat[7];\n const a20 = mat[8];\n const a21 = mat[9];\n const a22 = mat[10];\n const a23 = mat[11];\n const a30 = mat[12];\n const a31 = mat[13];\n const a32 = mat[14];\n const a33 = mat[15];\n const b00 = a00 * a11 - a01 * a10;\n const b01 = a00 * a12 - a02 * a10;\n const b02 = a00 * a13 - a03 * a10;\n const b03 = a01 * a12 - a02 * a11;\n const b04 = a01 * a13 - a03 * a11;\n const b05 = a02 * a13 - a03 * a12;\n const b06 = a20 * a31 - a21 * a30;\n const b07 = a20 * a32 - a22 * a30;\n const b08 = a20 * a33 - a23 * a30;\n const b09 = a21 * a32 - a22 * a31;\n const b10 = a21 * a33 - a23 * a31;\n const b11 = a22 * a33 - a23 * a32;\n const invDet = 1 / (b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06);\n dest[0] = (a11 * b11 - a12 * b10 + a13 * b09) * invDet;\n dest[1] = (-a01 * b11 + a02 * b10 - a03 * b09) * invDet;\n dest[2] = (a31 * b05 - a32 * b04 + a33 * b03) * invDet;\n dest[3] = (-a21 * b05 + a22 * b04 - a23 * b03) * invDet;\n dest[4] = (-a10 * b11 + a12 * b08 - a13 * b07) * invDet;\n dest[5] = (a00 * b11 - a02 * b08 + a03 * b07) * invDet;\n dest[6] = (-a30 * b05 + a32 * b02 - a33 * b01) * invDet;\n dest[7] = (a20 * b05 - a22 * b02 + a23 * b01) * invDet;\n dest[8] = (a10 * b10 - a11 * b08 + a13 * b06) * invDet;\n dest[9] = (-a00 * b10 + a01 * b08 - a03 * b06) * invDet;\n dest[10] = (a30 * b04 - a31 * b02 + a33 * b00) * invDet;\n dest[11] = (-a20 * b04 + a21 * b02 - a23 * b00) * invDet;\n dest[12] = (-a10 * b09 + a11 * b07 - a12 * b06) * invDet;\n dest[13] = (a00 * b09 - a01 * b07 + a02 * b06) * invDet;\n dest[14] = (-a30 * b03 + a31 * b01 - a32 * b00) * invDet;\n dest[15] = (a20 * b03 - a21 * b01 + a22 * b00) * invDet;\n return dest;\n}\n\n/**\n * Transposes the given 4x4 matrix.\n */\nexport function transposeMat4(mat: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m4 = mat[4];\n const m14 = mat[14];\n const m8 = mat[8];\n const m13 = mat[13];\n const m12 = mat[12];\n const m9 = mat[9];\n if (!dest || mat === dest) {\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a12 = mat[6];\n const a13 = mat[7];\n const a23 = mat[11];\n mat[1] = m4;\n mat[2] = m8;\n mat[3] = m12;\n mat[4] = a01;\n mat[6] = m9;\n mat[7] = m13;\n mat[8] = a02;\n mat[9] = a12;\n mat[11] = m14;\n mat[12] = a03;\n mat[13] = a13;\n mat[14] = a23;\n return mat;\n }\n dest[0] = mat[0];\n dest[1] = m4;\n dest[2] = m8;\n dest[3] = m12;\n dest[4] = mat[1];\n dest[5] = mat[5];\n dest[6] = m9;\n dest[7] = m13;\n dest[8] = mat[2];\n dest[9] = mat[6];\n dest[10] = mat[10];\n dest[11] = m14;\n dest[12] = mat[3];\n dest[13] = mat[7];\n dest[14] = mat[11];\n dest[15] = mat[15];\n return dest;\n}\n\n/**\n * Multiplies the given 4x4 matrix by the given four-element vector.\n */\nexport function mulMat4v4(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = m;\n }\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n const v3 = v[3];\n dest[0] = m[0] * v0 + m[4] * v1 + m[8] * v2 + m[12] * v3;\n dest[1] = m[1] * v0 + m[5] * v1 + m[9] * v2 + m[13] * v3;\n dest[2] = m[2] * v0 + m[6] * v1 + m[10] * v2 + m[14] * v3;\n dest[3] = m[3] * v0 + m[7] * v1 + m[11] * v2 + m[15] * v3;\n return dest;\n}\n\n/**\n * Multiplies the two given 4x4 matrix by each other.\n * @method mulMat4\n * @static\n */\nexport function mulMat4(a: FloatArrayParam, b: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = a;\n }\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a03 = a[3];\n const a10 = a[4];\n const a11 = a[5];\n const a12 = a[6];\n const a13 = a[7];\n const a20 = a[8];\n const a21 = a[9];\n const a22 = a[10];\n const a23 = a[11];\n const a30 = a[12];\n const a31 = a[13];\n const a32 = a[14];\n const a33 = a[15];\n const b00 = b[0];\n const b01 = b[1];\n const b02 = b[2];\n const b03 = b[3];\n const b10 = b[4];\n const b11 = b[5];\n const b12 = b[6];\n const b13 = b[7];\n const b20 = b[8];\n const b21 = b[9];\n const b22 = b[10];\n const b23 = b[11];\n const b30 = b[12];\n const b31 = b[13];\n const b32 = b[14];\n const b33 = b[15];\n dest[0] = b00 * a00 + b01 * a10 + b02 * a20 + b03 * a30;\n dest[1] = b00 * a01 + b01 * a11 + b02 * a21 + b03 * a31;\n dest[2] = b00 * a02 + b01 * a12 + b02 * a22 + b03 * a32;\n dest[3] = b00 * a03 + b01 * a13 + b02 * a23 + b03 * a33;\n dest[4] = b10 * a00 + b11 * a10 + b12 * a20 + b13 * a30;\n dest[5] = b10 * a01 + b11 * a11 + b12 * a21 + b13 * a31;\n dest[6] = b10 * a02 + b11 * a12 + b12 * a22 + b13 * a32;\n dest[7] = b10 * a03 + b11 * a13 + b12 * a23 + b13 * a33;\n dest[8] = b20 * a00 + b21 * a10 + b22 * a20 + b23 * a30;\n dest[9] = b20 * a01 + b21 * a11 + b22 * a21 + b23 * a31;\n dest[10] = b20 * a02 + b21 * a12 + b22 * a22 + b23 * a32;\n dest[11] = b20 * a03 + b21 * a13 + b22 * a23 + b23 * a33;\n dest[12] = b30 * a00 + b31 * a10 + b32 * a20 + b33 * a30;\n dest[13] = b30 * a01 + b31 * a11 + b32 * a21 + b33 * a31;\n dest[14] = b30 * a02 + b31 * a12 + b32 * a22 + b33 * a32;\n dest[15] = b30 * a03 + b31 * a13 + b32 * a23 + b33 * a33;\n return dest;\n}\n\n/**\n * Multiplies the two given 3x3 matrices by each other.\n */\nexport function mulMat3(a: FloatArrayParam, b: FloatArrayParam, dest: FloatArrayParam = newFloatArray(9)) {\n\n const a11 = a[0];\n const a12 = a[3];\n const a13 = a[6];\n const a21 = a[1];\n const a22 = a[4];\n const a23 = a[7];\n const a31 = a[2];\n const a32 = a[5];\n const a33 = a[8];\n const b11 = b[0];\n const b12 = b[3];\n const b13 = b[6];\n const b21 = b[1];\n const b22 = b[4];\n const b23 = b[7];\n const b31 = b[2];\n const b32 = b[5];\n const b33 = b[8];\n\n dest[0] = a11 * b11 + a12 * b21 + a13 * b31;\n dest[3] = a11 * b12 + a12 * b22 + a13 * b32;\n dest[6] = a11 * b13 + a12 * b23 + a13 * b33;\n\n dest[1] = a21 * b11 + a22 * b21 + a23 * b31;\n dest[4] = a21 * b12 + a22 * b22 + a23 * b32;\n dest[7] = a21 * b13 + a22 * b23 + a23 * b33;\n\n dest[2] = a31 * b11 + a32 * b21 + a33 * b31;\n dest[5] = a31 * b12 + a32 * b22 + a33 * b32;\n dest[8] = a31 * b13 + a32 * b23 + a33 * b33;\n\n return dest;\n}\n\n/**\n * Transforms a three-element position by a 4x4 matrix.\n * @method transformPoint3\n * @static\n */\nexport function transformPoint3(m: FloatArrayParam, p: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = p;\n }\n const x = p[0];\n const y = p[1];\n const z = p[2];\n dest[0] = (m[0] * x) + (m[4] * y) + (m[8] * z) + m[12];\n dest[1] = (m[1] * x) + (m[5] * y) + (m[9] * z) + m[13];\n dest[2] = (m[2] * x) + (m[6] * y) + (m[10] * z) + m[14];\n return dest;\n}\n\n/**\n * Transforms a homogeneous coordinate by a 4x4 matrix.\n * @method transformPoint3\n * @static\n */\nexport function transformPoint4(m: FloatArrayParam, v: FloatArrayParam, dest: FloatArrayParam) {\n dest[0] = m[0] * v[0] + m[4] * v[1] + m[8] * v[2] + m[12] * v[3];\n dest[1] = m[1] * v[0] + m[5] * v[1] + m[9] * v[2] + m[13] * v[3];\n dest[2] = m[2] * v[0] + m[6] * v[1] + m[10] * v[2] + m[14] * v[3];\n dest[3] = m[3] * v[0] + m[7] * v[1] + m[11] * v[2] + m[15] * v[3];\n return dest;\n}\n\n\n/**\n * Transforms an array of three-element positions by a 4x4 matrix.\n * @method transformPoints3\n * @static\n */\nexport function transformPoints3(m: FloatArrayParam, points: number[][], points2: number[][]) {\n const result = points2 || [];\n const len = points.length;\n let p0;\n let p1;\n let p2;\n let pi;\n\n // cache values\n const m0 = m[0];\n\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n let r;\n\n for (let i = 0; i < len; ++i) {\n\n // cache values\n pi = points[i];\n\n p0 = pi[0];\n p1 = pi[1];\n p2 = pi[2];\n\n r = result[i] || (result[i] = [0, 0, 0]);\n\n r[0] = (m0 * p0) + (m4 * p1) + (m8 * p2) + m12;\n r[1] = (m1 * p0) + (m5 * p1) + (m9 * p2) + m13;\n r[2] = (m2 * p0) + (m6 * p1) + (m10 * p2) + m14;\n r[3] = (m3 * p0) + (m7 * p1) + (m11 * p2) + m15;\n }\n\n result.length = len;\n\n return result;\n}\n\n/**\n * Transforms an array of positions by a 4x4 matrix.\n */\nexport function transformPositions3(m: FloatArrayParam, p: FloatArrayParam, p2?: FloatArrayParam) {\n if (!p2) {\n p2 = p;\n }\n let i;\n const len = p.length;\n\n let x;\n let y;\n let z;\n\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n for (i = 0; i < len; i += 3) {\n\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n\n p2[i + 0] = (m0 * x) + (m4 * y) + (m8 * z) + m12;\n p2[i + 1] = (m1 * x) + (m5 * y) + (m9 * z) + m13;\n p2[i + 2] = (m2 * x) + (m6 * y) + (m10 * z) + m14;\n p2[i + 3] = (m3 * x) + (m7 * y) + (m11 * z) + m15;\n }\n\n return p2;\n}\n\n/**\n * Transforms an array of positions by a 4x4 matrix.\n */\nexport function transformPositions4(m: FloatArrayParam, p: FloatArrayParam, p2?: FloatArrayParam) {\n if (!p2) {\n p2 = p;\n }\n let i;\n const len = p.length;\n let x;\n let y;\n let z;\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n for (i = 0; i < len; i += 4) {\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n p2[i + 0] = (m0 * x) + (m4 * y) + (m8 * z) + m12;\n p2[i + 1] = (m1 * x) + (m5 * y) + (m9 * z) + m13;\n p2[i + 2] = (m2 * x) + (m6 * y) + (m10 * z) + m14;\n p2[i + 3] = (m3 * x) + (m7 * y) + (m11 * z) + m15;\n }\n return p2;\n}\n\n/**\n * Transforms a three-element vector by a 4x4 matrix.\n */\nexport function transformVec3(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n dest = dest || createVec3();\n dest[0] = (m[0] * v0) + (m[4] * v1) + (m[8] * v2);\n dest[1] = (m[1] * v0) + (m[5] * v1) + (m[9] * v2);\n dest[2] = (m[2] * v0) + (m[6] * v1) + (m[10] * v2);\n return dest;\n}\n\n/**\n * Transforms a four-element vector by a 4x4 matrix.\n * @method transformVec4\n * @static\n */\nexport function transformVec4(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n const v3 = v[3];\n dest = dest || createVec4();\n dest[0] = m[0] * v0 + m[4] * v1 + m[8] * v2 + m[12] * v3;\n dest[1] = m[1] * v0 + m[5] * v1 + m[9] * v2 + m[13] * v3;\n dest[2] = m[2] * v0 + m[6] * v1 + m[10] * v2 + m[14] * v3;\n dest[3] = m[3] * v0 + m[7] * v1 + m[11] * v2 + m[15] * v3;\n return dest;\n}\n\n\n/**\n * Efficiently post-concatenates a scaling to the given matrix.\n */\nexport function scaleMat4v(xyz: FloatArrayParam, m: FloatArrayParam = identityMat4()) {\n const x = xyz[0];\n const y = xyz[1];\n const z = xyz[2];\n m[0] *= x;\n m[4] *= y;\n m[8] *= z;\n m[1] *= x;\n m[5] *= y;\n m[9] *= z;\n m[2] *= x;\n m[6] *= y;\n m[10] *= z;\n m[3] *= x;\n m[7] *= y;\n m[11] *= z;\n return m;\n}\n\n/**\n */\nexport function scalingMat4v(v: FloatArrayParam, m: FloatArrayParam = identityMat4()): FloatArrayParam {\n m[0] = v[0];\n m[5] = v[1];\n m[10] = v[2];\n return m;\n}\n\n/**\n * Returns a 3x3 scale matrix.\n */\nexport function scalingMat3v(v: FloatArrayParam, m: FloatArrayParam = identityMat3()): FloatArrayParam {\n m[0] = v[0];\n m[4] = v[1];\n return m;\n}\n\n/**\n * Returns a 4x4 scale matrix.\n */\nexport const scalingMat4c = ((() => {\n const xyz: FloatArrayParam = newFloatArray(3);\n return (x: number, y: number, z: number, dest?: FloatArrayParam) => {\n xyz[0] = x;\n xyz[1] = y;\n xyz[2] = z;\n return scalingMat4v(xyz, dest);\n };\n}))()\n\n/**\n * Efficiently post-concatenates a scaling to the given matrix.\n * @method scaleMat4c\n * @param x\n * @param y\n * @param z\n * @param m\n */\nexport function scaleMat4c(x: number, y: number, z: number, m: FloatArrayParam): FloatArrayParam {\n\n m[0] *= x;\n m[4] *= y;\n m[8] *= z;\n\n m[1] *= x;\n m[5] *= y;\n m[9] *= z;\n\n m[2] *= x;\n m[6] *= y;\n m[10] *= z;\n\n m[3] *= x;\n m[7] *= y;\n m[11] *= z;\n return m;\n}\n\n/**\n * Returns 4x4 scale matrix.\n */\nexport function scalingMat4s(s: number): FloatArrayParam {\n return scalingMat4c(s, s, s);\n}\n\n/**\n * Composes a 4x4 matrix from the given position, quaternion and scale.\n * @param position\n * @param quaternion\n * @param scale\n * @param mat\n */\nexport function composeMat4(\n position: FloatArrayParam,\n quaternion: FloatArrayParam,\n scale: FloatArrayParam,\n mat: FloatArrayParam = createMat4()): FloatArrayParam {\n quatToRotationMat4(quaternion, mat);\n scaleMat4v(scale, mat);\n translateMat4v(position, mat);\n return mat;\n}\n\n/**\n * Composes a 4x4 matrix from the given position, euler rotation angles and scale.\n * @param position\n * @param rotation\n * @param scale\n * @param mat\n */\nexport function composeMat4Euler(\n position: FloatArrayParam,\n rotation: FloatArrayParam,\n scale: FloatArrayParam,\n mat: FloatArrayParam = createMat4()): FloatArrayParam {\n quatToRotationMat4(eulerToQuat(rotation, \"XYZ\", identityQuat()), mat);\n scaleMat4v(scale, mat);\n translateMat4v(position, mat);\n return mat;\n}\n\n/**\n * Decomposes a 4x4 matrix into position, quaternion and scale.\n */\nexport const decomposeMat4 = (() => {\n const vec = createVec3();\n const matrix = createMat4();\n return function decompose(mat: FloatArrayParam, position: FloatArrayParam, quaternion: FloatArrayParam, scale: FloatArrayParam) {\n vec[0] = mat[0];\n vec[1] = mat[1];\n vec[2] = mat[2];\n let sx = lenVec3(vec);\n vec[0] = mat[4];\n vec[1] = mat[5];\n vec[2] = mat[6];\n const sy = lenVec3(vec);\n vec[8] = mat[8];\n vec[9] = mat[9];\n vec[10] = mat[10];\n const sz = lenVec3(vec);\n const det = determinantMat4(mat);\n if (det < 0) {\n sx = -sx;\n }\n position[0] = mat[12];\n position[1] = mat[13];\n position[2] = mat[14];\n // scale the rotation part\n // @ts-ignore\n matrix.set(mat);\n const invSX = 1 / sx;\n const invSY = 1 / sy;\n const invSZ = 1 / sz;\n matrix[0] *= invSX;\n matrix[1] *= invSX;\n matrix[2] *= invSX;\n matrix[4] *= invSY;\n matrix[5] *= invSY;\n matrix[6] *= invSY;\n matrix[8] *= invSZ;\n matrix[9] *= invSZ;\n matrix[10] *= invSZ;\n mat4ToQuat(matrix, quaternion);\n scale[0] = sx;\n scale[1] = sy;\n scale[2] = sz;\n\n };\n})();\n\n/**\n * Efficiently post-concatenates a translation to the given matrix.\n */\nexport function translateMat4v(xyz: FloatArrayParam, m: FloatArrayParam = identityMat4()) {\n return translateMat4c(xyz[0], xyz[1], xyz[2], m);\n}\n\n/**\n * Efficiently post-concatenates a translation, given as separate components, to the given matrix.\n */\nexport function translateMat4c(x: number, y: number, z: number, m: FloatArrayParam = identityMat4()) {\n const m3 = m[3];\n m[0] += m3 * x;\n m[1] += m3 * y;\n m[2] += m3 * z;\n const m7 = m[7];\n m[4] += m7 * x;\n m[5] += m7 * y;\n m[6] += m7 * z;\n const m11 = m[11];\n m[8] += m11 * x;\n m[9] += m11 * y;\n m[10] += m11 * z;\n const m15 = m[15];\n m[12] += m15 * x;\n m[13] += m15 * y;\n m[14] += m15 * z;\n return m;\n}\n\n/**\n * Creates a new matrix that replaces the translation in the rightmost column of the given\n * affine matrix with the given translation.\n */\nexport function setMat4Translation(m: FloatArrayParam, translation: FloatArrayParam, dest: FloatArrayParam): FloatArrayParam {\n\n dest[0] = m[0];\n dest[1] = m[1];\n dest[2] = m[2];\n dest[3] = m[3];\n\n dest[4] = m[4];\n dest[5] = m[5];\n dest[6] = m[6];\n dest[7] = m[7];\n\n dest[8] = m[8];\n dest[9] = m[9];\n dest[10] = m[10];\n dest[11] = m[11];\n\n dest[12] = translation[0];\n dest[13] = translation[1];\n dest[14] = translation[2];\n dest[15] = m[15];\n\n return dest;\n}\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport function translationMat4v(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m = dest || identityMat4();\n m[12] = v[0];\n m[13] = v[1];\n m[14] = v[2];\n return m;\n}\n\n/**\n * Returns 3x3 translation matrix.\n */\nexport function translationMat3v(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m = dest || identityMat3();\n m[6] = v[0];\n m[7] = v[1];\n return m;\n}\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport const translationMat4c = ((() => {\n const xyz = newFloatArray(3);\n return (x: number, y: number, z: number, dest: FloatArrayParam): FloatArrayParam => {\n xyz[0] = x;\n xyz[1] = y;\n xyz[2] = z;\n return translationMat4v(xyz, dest);\n };\n}))();\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport function translationMat4s(s: number, dest: FloatArrayParam) {\n return translationMat4c(s, s, s, dest);\n}\n\n\n/**\n * Returns the determinant of the given 4x4 matrix.\n */\nexport function determinantMat4(mat: FloatArrayParam): number {\n const a00 = mat[0];\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a10 = mat[4];\n const a11 = mat[5];\n const a12 = mat[6];\n const a13 = mat[7];\n const a20 = mat[8];\n const a21 = mat[9];\n const a22 = mat[10];\n const a23 = mat[11];\n const a30 = mat[12];\n const a31 = mat[13];\n const a32 = mat[14];\n const a33 = mat[15];\n return a30 * a21 * a12 * a03 - a20 * a31 * a12 * a03 - a30 * a11 * a22 * a03 + a10 * a31 * a22 * a03 +\n a20 * a11 * a32 * a03 - a10 * a21 * a32 * a03 - a30 * a21 * a02 * a13 + a20 * a31 * a02 * a13 +\n a30 * a01 * a22 * a13 - a00 * a31 * a22 * a13 - a20 * a01 * a32 * a13 + a00 * a21 * a32 * a13 +\n a30 * a11 * a02 * a23 - a10 * a31 * a02 * a23 - a30 * a01 * a12 * a23 + a00 * a31 * a12 * a23 +\n a10 * a01 * a32 * a23 - a00 * a11 * a32 * a23 - a20 * a11 * a02 * a33 + a10 * a21 * a02 * a33 +\n a20 * a01 * a12 * a33 - a00 * a21 * a12 * a33 - a10 * a01 * a22 * a33 + a00 * a11 * a22 * a33;\n}\n\n/**\n * Gets Euler angles from a 4x4 matrix.\n *\n * @param {mat The 4x4 matrix.\n * @param order Desired Euler angle order: \"XYZ\", \"YXZ\", \"ZXY\" etc.\n * @param [dest] Destination Euler angles, created by default.\n * @returns The Euler angles.\n */\nexport function mat4ToEuler(mat: FloatArrayParam, order: string, dest: FloatArrayParam = createVec3()) {\n // Assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)\n const m11 = mat[0];\n const m12 = mat[4];\n const m13 = mat[8];\n const m21 = mat[1];\n const m22 = mat[5];\n const m23 = mat[9];\n const m31 = mat[2];\n const m32 = mat[6];\n const m33 = mat[10];\n if (order === 'XYZ') {\n dest[1] = Math.asin(clamp(m13, -1, 1));\n if (Math.abs(m13) < 0.99999) {\n dest[0] = Math.atan2(-m23, m33);\n dest[2] = Math.atan2(-m12, m11);\n } else {\n dest[0] = Math.atan2(m32, m22);\n dest[2] = 0;\n }\n } else if (order === 'YXZ') {\n dest[0] = Math.asin(-clamp(m23, -1, 1));\n if (Math.abs(m23) < 0.99999) {\n dest[1] = Math.atan2(m13, m33);\n dest[2] = Math.atan2(m21, m22);\n } else {\n dest[1] = Math.atan2(-m31, m11);\n dest[2] = 0;\n }\n } else if (order === 'ZXY') {\n dest[0] = Math.asin(clamp(m32, -1, 1));\n if (Math.abs(m32) < 0.99999) {\n dest[1] = Math.atan2(-m31, m33);\n dest[2] = Math.atan2(-m12, m22);\n } else {\n dest[1] = 0;\n dest[2] = Math.atan2(m21, m11);\n }\n } else if (order === 'ZYX') {\n dest[1] = Math.asin(-clamp(m31, -1, 1));\n if (Math.abs(m31) < 0.99999) {\n dest[0] = Math.atan2(m32, m33);\n dest[2] = Math.atan2(m21, m11);\n } else {\n dest[0] = 0;\n dest[2] = Math.atan2(-m12, m22);\n }\n } else if (order === 'YZX') {\n dest[2] = Math.asin(clamp(m21, -1, 1));\n if (Math.abs(m21) < 0.99999) {\n dest[0] = Math.atan2(-m23, m22);\n dest[1] = Math.atan2(-m31, m11);\n } else {\n dest[0] = 0;\n dest[1] = Math.atan2(m13, m33);\n }\n } else if (order === 'XZY') {\n dest[2] = Math.asin(-clamp(m12, -1, 1));\n if (Math.abs(m12) < 0.99999) {\n dest[0] = Math.atan2(m32, m22);\n dest[1] = Math.atan2(m13, m11);\n } else {\n dest[0] = Math.atan2(-m23, m33);\n dest[1] = 0;\n }\n }\n return dest;\n}\n\n/**\n * Linearly interpolates between two 4x4 matrices.\n */\nexport function lerpMat4(t: number, t1: number, t2: number, m1: FloatArrayParam, m2: FloatArrayParam, dest?: FloatArrayParam) {\n const result = dest || createMat4();\n const f = (t - t1) / (t2 - t1);\n result[0] = m1[0] + (f * (m2[0] - m1[0]));\n result[1] = m1[1] + (f * (m2[1] - m1[1]));\n result[2] = m1[2] + (f * (m2[2] - m1[2]));\n result[3] = m1[3] + (f * (m2[3] - m1[3]));\n result[4] = m1[4] + (f * (m2[4] - m1[4]));\n result[5] = m1[5] + (f * (m2[5] - m1[5]));\n result[6] = m1[6] + (f * (m2[6] - m1[6]));\n result[7] = m1[7] + (f * (m2[7] - m1[7]));\n result[8] = m1[8] + (f * (m2[8] - m1[8]));\n result[9] = m1[9] + (f * (m2[9] - m1[9]));\n result[10] = m1[10] + (f * (m2[10] - m1[10]));\n result[11] = m1[11] + (f * (m2[11] - m1[11]));\n result[12] = m1[12] + (f * (m2[12] - m1[12]));\n result[13] = m1[13] + (f * (m2[13] - m1[13]));\n result[14] = m1[14] + (f * (m2[14] - m1[14]));\n result[15] = m1[15] + (f * (m2[15] - m1[15]));\n return result;\n}\n\n\n/**\n * Craetes an identity quaternion.\n * @param dest Optional quaternion to initialize\n * @returns New quaternion\n */\nexport function identityQuat(\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n dest[0] = 0.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 1.0;\n return dest;\n}\n\n/**\n * Initializes a quaternion from Euler angles.\n *\n * @param euler The Euler angles.\n * @param order Euler angle order: \"XYZ\", \"YXZ\", \"ZXY\" etc.\n * @param [dest] Destination quaternion, created by default.\n * @returns The quaternion.\n */\nexport function eulerToQuat(\n euler: FloatArrayParam,\n order: string,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n // http://www.mathworks.com/matlabcentral/fileexchange/20696-function-to-convert-between-dcm-euler-angles-quaternions-and-euler-vectors/content/SpinCalc.m\n\n const a = (euler[0] * DEGTORAD) / 2;\n const b = (euler[1] * DEGTORAD) / 2;\n const c = (euler[2] * DEGTORAD) / 2;\n\n const c1 = Math.cos(a);\n const c2 = Math.cos(b);\n const c3 = Math.cos(c);\n const s1 = Math.sin(a);\n const s2 = Math.sin(b);\n const s3 = Math.sin(c);\n\n if (order === \"XYZ\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"YXZ\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n } else if (order === \"ZXY\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"ZYX\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n } else if (order === \"YZX\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"XZY\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n }\n\n return dest;\n}\n\n/**\n * Encodes rotation from a matrix into a quaternion.\n * @param m The matrix\n * @param dest The quaternion\n */\nexport function mat4ToQuat(\n m: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n // http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm\n\n // Assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)\n\n const m11 = m[0];\n const m12 = m[4];\n const m13 = m[8];\n const m21 = m[1];\n const m22 = m[5];\n const m23 = m[9];\n const m31 = m[2];\n const m32 = m[6];\n const m33 = m[10];\n let s;\n\n const trace = m11 + m22 + m33;\n\n if (trace > 0) {\n s = 0.5 / Math.sqrt(trace + 1.0);\n\n dest[3] = 0.25 / s;\n dest[0] = (m32 - m23) * s;\n dest[1] = (m13 - m31) * s;\n dest[2] = (m21 - m12) * s;\n } else if (m11 > m22 && m11 > m33) {\n s = 2.0 * Math.sqrt(1.0 + m11 - m22 - m33);\n\n dest[3] = (m32 - m23) / s;\n dest[0] = 0.25 * s;\n dest[1] = (m12 + m21) / s;\n dest[2] = (m13 + m31) / s;\n } else if (m22 > m33) {\n s = 2.0 * Math.sqrt(1.0 + m22 - m11 - m33);\n\n dest[3] = (m13 - m31) / s;\n dest[0] = (m12 + m21) / s;\n dest[1] = 0.25 * s;\n dest[2] = (m23 + m32) / s;\n } else {\n s = 2.0 * Math.sqrt(1.0 + m33 - m11 - m22);\n\n dest[3] = (m21 - m12) / s;\n dest[0] = (m13 + m31) / s;\n dest[1] = (m23 + m32) / s;\n dest[2] = 0.25 * s;\n }\n\n return dest;\n}\n\n/**\n *\n * @param u\n * @param v\n * @param dest\n */\nexport function vec3PairToQuat(\n u: FloatArrayParam,\n v: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const norm_u_norm_v = Math.sqrt(dotVec3(u, u) * dotVec3(v, v));\n let real_part = norm_u_norm_v + dotVec3(u, v);\n\n if (real_part < 0.00000001 * norm_u_norm_v) {\n // If u and v are exactly opposite, rotate 180 degrees\n // around an arbitrary orthogonal axis. Axis normalisation\n // can happen later, when we normalise the quaternion.\n\n real_part = 0.0;\n\n if (Math.abs(u[0]) > Math.abs(u[2])) {\n dest[0] = -u[1];\n dest[1] = u[0];\n dest[2] = 0;\n } else {\n dest[0] = 0;\n dest[1] = -u[2];\n dest[2] = u[1];\n }\n } else {\n // Otherwise, build quaternion the standard way.\n cross3Vec3(u, v, dest);\n }\n\n dest[3] = real_part;\n\n return normalizeQuat(dest);\n}\n\n/**\n * Converts an angle-axis rotation representation into a quaternion\n * @param angleAxis\n * @param dest\n */\nexport function angleAxisToQuaternion(\n angleAxis: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const halfAngle = angleAxis[3] / 2.0;\n const fsin = Math.sin(halfAngle);\n dest[0] = fsin * angleAxis[0];\n dest[1] = fsin * angleAxis[1];\n dest[2] = fsin * angleAxis[2];\n dest[3] = Math.cos(halfAngle);\n return dest;\n}\n\n/**\n * Converts a quaternion to Euler angles\n * @param q\n * @param order\n * @param dest\n */\nexport function quatToEuler(\n q: FloatArrayParam,\n order: string,\n dest: FloatArrayParam = createVec3()\n) {\n quatToRotationMat4(q, tempMat4a);\n mat4ToEuler(tempMat4a, order, dest);\n return dest;\n}\n\n/**\n * Multiples a pair of quaternions\n * @param p\n * @param q\n * @param dest\n */\nexport function mulQuats(\n p: FloatArrayParam,\n q: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const p0 = p[0];\n const p1 = p[1];\n const p2 = p[2];\n const p3 = p[3];\n const q0 = q[0];\n const q1 = q[1];\n const q2 = q[2];\n const q3 = q[3];\n dest[0] = p3 * q0 + p0 * q3 + p1 * q2 - p2 * q1;\n dest[1] = p3 * q1 + p1 * q3 + p2 * q0 - p0 * q2;\n dest[2] = p3 * q2 + p2 * q3 + p0 * q1 - p1 * q0;\n dest[3] = p3 * q3 - p0 * q0 - p1 * q1 - p2 * q2;\n return dest;\n}\n\n/**\n *\n * @param q\n * @param vec\n * @param dest\n */\nexport function vec3ApplyQuat(\n q: FloatArrayParam,\n vec: FloatArrayParam,\n dest: FloatArrayParam = createVec3()\n): FloatArrayParam {\n const x = vec[0];\n const y = vec[1];\n const z = vec[2];\n\n const qx = q[0];\n const qy = q[1];\n const qz = q[2];\n const qw = q[3];\n\n // calculate quat * vector\n\n const ix = qw * x + qy * z - qz * y;\n const iy = qw * y + qz * x - qx * z;\n const iz = qw * z + qx * y - qy * x;\n const iw = -qx * x - qy * y - qz * z;\n\n // calculate result * inverse quat\n\n dest[0] = ix * qw + iw * -qx + iy * -qz - iz * -qy;\n dest[1] = iy * qw + iw * -qy + iz * -qx - ix * -qz;\n dest[2] = iz * qw + iw * -qz + ix * -qy - iy * -qx;\n\n return dest;\n}\n\n/**\n * Converts a quaternion into a matrix.\n * @param q\n * @param dest\n */\nexport function quatToMat4(\n q: FloatArrayParam,\n dest?: FloatArrayParam\n): FloatArrayParam {\n dest = identityMat4(dest);\n\n const q0 = q[0]; //x\n const q1 = q[1]; //y\n const q2 = q[2]; //z\n const q3 = q[3]; //w\n\n const tx = 2.0 * q0;\n const ty = 2.0 * q1;\n const tz = 2.0 * q2;\n\n const twx = tx * q3;\n const twy = ty * q3;\n const twz = tz * q3;\n\n const txx = tx * q0;\n const txy = ty * q0;\n const txz = tz * q0;\n\n const tyy = ty * q1;\n const tyz = tz * q1;\n const tzz = tz * q2;\n\n dest[0] = 1.0 - (tyy + tzz);\n dest[1] = txy + twz;\n dest[2] = txz - twy;\n\n dest[4] = txy - twz;\n dest[5] = 1.0 - (txx + tzz);\n dest[6] = tyz + twx;\n\n dest[8] = txz + twy;\n dest[9] = tyz - twx;\n\n dest[10] = 1.0 - (txx + tyy);\n\n return dest;\n}\n\n/**\n * Converts a quaternion into a rotation matrix.\n * @param q\n * @param m\n */\nexport function quatToRotationMat4(\n q: FloatArrayParam,\n m: FloatArrayParam\n): FloatArrayParam {\n const x = q[0];\n const y = q[1];\n const z = q[2];\n const w = q[3];\n\n const x2 = x + x;\n const y2 = y + y;\n const z2 = z + z;\n const xx = x * x2;\n const xy = x * y2;\n const xz = x * z2;\n const yy = y * y2;\n const yz = y * z2;\n const zz = z * z2;\n const wx = w * x2;\n const wy = w * y2;\n const wz = w * z2;\n\n m[0] = 1 - (yy + zz);\n m[4] = xy - wz;\n m[8] = xz + wy;\n\n m[1] = xy + wz;\n m[5] = 1 - (xx + zz);\n m[9] = yz - wx;\n\n m[2] = xz - wy;\n m[6] = yz + wx;\n m[10] = 1 - (xx + yy);\n\n // last column\n m[3] = 0;\n m[7] = 0;\n m[11] = 0;\n\n // bottom row\n m[12] = 0;\n m[13] = 0;\n m[14] = 0;\n m[15] = 1;\n\n return m;\n}\n\n/**\n * Normalizes a quaternion\n * @param q\n * @param dest\n * @returns The normalized quaternion\n */\nexport function normalizeQuat(\n q: FloatArrayParam,\n dest: FloatArrayParam = q\n): FloatArrayParam {\n const len = lenVec4([q[0], q[1], q[2], q[3]]);\n dest[0] = q[0] / len;\n dest[1] = q[1] / len;\n dest[2] = q[2] / len;\n dest[3] = q[3] / len;\n return dest;\n}\n\n/**\n * Gets the conjugate of a quaternion.\n * @param q\n * @param dest\n * @returns The conjugate of the quaternion\n */\nexport function conjugateQuat(\n q: FloatArrayParam,\n dest: FloatArrayParam = q\n) {\n dest[0] = -q[0];\n dest[1] = -q[1];\n dest[2] = -q[2];\n dest[3] = q[3];\n return dest;\n}\n\n/**\n * Gets the inverse of a quaternion.\n * @param q\n * @param dest\n * @returns The inverse quaternion\n */\nexport function inverseQuat(q: FloatArrayParam, dest: FloatArrayParam) {\n return normalizeQuat(conjugateQuat(q, dest));\n}\n\n/**\n * Converts a quaternion to angle-axis representation.\n * @param q\n * @param angleAxis\n * @returns The angle-axis rotation\n */\nexport function quatToAngleAxis(\n q: FloatArrayParam,\n angleAxis: FloatArrayParam = createVec4()\n) {\n q = normalizeQuat(q, tempVec4a);\n const q3 = q[3];\n const angle = 2 * Math.acos(q3);\n const s = Math.sqrt(1 - q3 * q3);\n if (s < 0.001) {\n // test to avoid divide by zero, s is always positive due to sqrt\n angleAxis[0] = q[0];\n angleAxis[1] = q[1];\n angleAxis[2] = q[2];\n } else {\n angleAxis[0] = q[0] / s;\n angleAxis[1] = q[1] / s;\n angleAxis[2] = q[2] / s;\n }\n angleAxis[3] = angle; // * 57.295779579;\n return angleAxis;\n}\n\n\n/**\n * Finds the intersection of a 3D ray with a 3D triangle.\n */\nexport function rayTriangleIntersect(origin: FloatArrayParam, dir: FloatArrayParam, a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam, isect: FloatArrayParam): FloatArrayParam | null {\n isect = isect || createVec3();\n const EPSILON = 0.000001;\n const edge1 = subVec3(b, a, tempVec3);\n const edge2 = subVec3(c, a, tempVec3b);\n const pvec = cross3Vec3(dir, edge2, tempVec3c);\n const det = dotVec3(edge1, pvec);\n if (det < EPSILON) {\n return null;\n }\n const tvec = subVec3(origin, a, tempVec3d);\n const u = dotVec3(tvec, pvec);\n if (u < 0 || u > det) {\n return null;\n }\n const qvec = cross3Vec3(tvec, edge1, tempVec3e);\n const v = dotVec3(dir, qvec);\n if (v < 0 || u + v > det) {\n return null;\n }\n const t = dotVec3(edge2, qvec) / det;\n isect[0] = origin[0] + t * dir[0];\n isect[1] = origin[1] + t * dir[1];\n isect[2] = origin[2] + t * dir[2];\n return isect;\n}\n\n/**\n Transforms a ray by a matrix.\n @param matrix 4x4 matrix\n @param rayOrigin The ray origin\n @param rayDir The ray direction\n @param rayOriginDest The transformed ray origin\n @param rayDirDest The transformed ray direction\n */\nexport function transformRay(matrix: FloatArrayParam, rayOrigin: FloatArrayParam, rayDir: FloatArrayParam, rayOriginDest: FloatArrayParam, rayDirDest: FloatArrayParam) {\n tempVec4a[0] = rayOrigin[0];\n tempVec4a[1] = rayOrigin[1];\n tempVec4a[2] = rayOrigin[2];\n tempVec4a[3] = 1;\n transformVec4(matrix, tempVec4a, tempVec4b);\n rayOriginDest[0] = tempVec4b[0];\n rayOriginDest[1] = tempVec4b[1];\n rayOriginDest[2] = tempVec4b[2];\n tempVec4a[0] = rayDir[0];\n tempVec4a[1] = rayDir[1];\n tempVec4a[2] = rayDir[2];\n transformVec3(matrix, tempVec4a, tempVec4b);\n normalizeVec3(tempVec4b);\n rayDirDest[0] = tempVec4b[0];\n rayDirDest[1] = tempVec4b[1];\n rayDirDest[2] = tempVec4b[2];\n}\n\n/**\n Transforms a Canvas-space position into a World-space ray, in the context of a Camera.\n @method canvasPosToWorldRay\n @static\n @param {Number[]} viewMatrix View matrix\n @param {Number[]} projMatrix Projection matrix\n @param {String} projection Projection type (e.g. \"ortho\")\n @param {Number[]} canvasPos The Canvas-space position.\n @param {Number[]} worldRayOrigin The World-space ray origin.\n @param {Number[]} worldRayDir The World-space ray direction.\n */\nexport const canvasPosToWorldRay = ((() => {\n\n const pvMatInv = new Float64Array(16);\n const vec4Near = new Float64Array(4);\n const vec4Far = new Float64Array(4);\n\n const clipToWorld = (clipX, clipY, clipZ, isOrtho, outVec4) => {\n outVec4[0] = clipX;\n outVec4[1] = clipY;\n outVec4[2] = clipZ;\n outVec4[3] = 1;\n\n transformVec4(pvMatInv, outVec4, outVec4);\n if (!isOrtho)\n mulVec4Scalar(outVec4, 1 / outVec4[3]);\n };\n\n return (canvas, viewMatrix, projMatrix, projection, canvasPos, worldRayOrigin, worldRayDir) => {\n const isOrtho = projection === \"ortho\";\n\n mulMat4(projMatrix, viewMatrix, pvMatInv);\n inverseMat4(pvMatInv, pvMatInv);\n\n // Calculate clip space coordinates, which will be in range\n // of x=[-1..1] and y=[-1..1], with y=(+1) at top\n\n const clipX = 2 * canvasPos[0] / canvas.width - 1; // Calculate clip space coordinates\n const clipY = 1 - 2 * canvasPos[1] / canvas.height;\n\n clipToWorld(clipX, clipY, -1, isOrtho, vec4Near);\n\n clipToWorld(clipX, clipY, 1, isOrtho, vec4Far);\n\n worldRayOrigin[0] = vec4Near[0];\n worldRayOrigin[1] = vec4Near[1];\n worldRayOrigin[2] = vec4Near[2];\n\n subVec3(vec4Far, vec4Near, worldRayDir);\n\n normalizeVec3(worldRayDir);\n };\n}))();\n", "/**\n * ## xeokit SDK Core Utilities Library\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/utils\n * ````\n *\n * @module @xeokit/utils\n */\n\nexport * from \"./Map\";\nexport * from \"./Queue\";\nexport * from \"./Loader\";\nexport * from \"./LoadingManager\";\nexport * from \"./WorkerPool\";\nexport * from \"./Cache\";\nexport * from \"./FileLoader\";\n\n/**\n *\n * @param ob\n */\nexport function clone(ob: any) {\n return JSON.parse(JSON.stringify(ob));\n}\n\nconst guidChars = [[\"0\", 10], [\"A\", 26], [\"a\", 26], [\"_\", 1], [\"$\", 1]].map(function (a) {\n const li :any[]= [];\n // @ts-ignore\n const st = a[0].charCodeAt(0);\n const en = st + a[1];\n for (let i = st; i < en; ++i) {\n li.push(i);\n }\n return String.fromCharCode.apply(null, li);\n}).join(\"\");\n\n/**\n *\n * @param v\n * @param len\n */\nexport function b64(v: number, len: number) {\n const r = (!len || len === 4) ? [0, 6, 12, 18] : [0, 6];\n return r.map(function (i) {\n return guidChars.substr(parseInt(String(v / (1 << i))) % 64, 1)\n }\n ).reverse().join(\"\");\n}\n\n/**\n *\n * @param g\n */\nexport function compressGuid(g: string) {\n const bs = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30].map(function (i) {\n return parseInt(g.substr(i, 2), 16);\n });\n return b64(bs[0], 2) + [1, 4, 7, 10, 13].map(function (i) {\n return b64((bs[i] << 16) + (bs[i + 1] << 8) + bs[i + 2], 4);\n }).join(\"\");\n}\n\n/**\n *\n * @param m\n * @param t\n */\nexport function findNodeOfType(m: any, t: any) {\n const li: any[] = [];\n const _ = function (n: { type: any; children: any; }) {\n if (n.type === t) li.push(n);\n (n.children || []).forEach(function (c: { type: any; children: any; }) {\n _(c);\n });\n };\n _(m);\n return li;\n}\n\n/**\n */\nexport function timeout(dt: number) {\n return new Promise(function (resolve, reject) {\n setTimeout(resolve, dt);\n });\n}\n\nexport function httpRequest(args: { method: string; url: string; }) {\n return new Promise(function (resolve, reject) {\n const xhr = new XMLHttpRequest();\n xhr.open(args.method || \"GET\", args.url, true);\n xhr.onload = function (e) {\n console.log(args.url, xhr.readyState, xhr.status);\n if (xhr.readyState === 4) {\n if (xhr.status === 200) {\n resolve(xhr.responseXML);\n } else {\n reject(xhr.statusText);\n }\n }\n };\n xhr.send(null);\n });\n}\n//\n// export const queryString = function () {\n// // This function is anonymous, is executed immediately and\n// // the return value is assigned to QueryString!\n// const query_string = {};\n// const query = window.location.search.substring(1);\n// const vars = query.split(\"&\");\n// for (let i = 0; i < vars.length; i++) {\n// const pair = vars[i].split(\"=\");\n// // If first entry with this name\n// // @ts-ignore\n// if (typeof query_string[pair[0]] === \"undefined\") {\n// // @ts-ignore\n// query_string[pair[0]] = decodeURIComponent(pair[1]);\n// // If second entry with this name\n// } else { // @ts-ignore\n// if (typeof query_string[pair[0]] === \"string\") {\n// // @ts-ignore\n// query_string[pair[0]] = [query_string[pair[0]], decodeURIComponent(pair[1])];\n// // If third or later entry with this name\n// } else {\n// // @ts-ignore\n// query_string[pair[0]].push(decodeURIComponent(pair[1]));\n// }\n// }\n// }\n// return query_string;\n// }();\n\nexport function loadJSON(url: string,\n ok: {\n (arg0: any): void;\n (_value: any): any;\n },\n err: {\n (arg0: string | ProgressEvent): void;\n (_value: any): any;\n }) {\n // Avoid checking ok and err on each use.\n // @ts-ignore\n const defaultCallback = (_value) => undefined;\n ok = ok || defaultCallback;\n err = err || defaultCallback;\n\n const request = new XMLHttpRequest();\n request.overrideMimeType(\"application/json\");\n request.open('GET', url, true);\n request.addEventListener('load', function (event) {\n // @ts-ignore\n const response = event.target.response;\n if (this.status === 200) {\n let json;\n try {\n json = JSON.parse(response);\n } catch (e) {\n err(`utils.loadJSON(): Failed to parse JSON response - ${e}`);\n }\n ok(json);\n } else if (this.status === 0) {\n // Some browsers return HTTP Status 0 when using non-http protocol\n // e.g. 'file://' or 'data://'. Handle as success.\n console.warn('loadFile: HTTP Status 0 received.');\n try {\n ok(JSON.parse(response));\n } catch (e) {\n err(`utils.loadJSON(): Failed to parse JSON response - ${e}`);\n }\n } else {\n err(event);\n }\n }, false);\n\n request.addEventListener('error', function (event) {\n err(event);\n }, false);\n request.send(null);\n}\n\nexport function loadArraybuffer(url: string, ok: { (arg0: ArrayBuffer): void; (_value: any): any; }, err: { (arg0: string): void; (_value: any): any; }) {\n // Check for data: URI\n // @ts-ignore\n const defaultCallback = (_value) => undefined;\n ok = ok || defaultCallback;\n err = err || defaultCallback;\n const dataUriRegex = /^data:(.*?)(;base64)?,(.*)$/;\n const dataUriRegexResult = url.match(dataUriRegex);\n if (dataUriRegexResult) { // Safari can't handle data URIs through XMLHttpRequest\n const isBase64 = !!dataUriRegexResult[2];\n let data = dataUriRegexResult[3];\n data = window.decodeURIComponent(data);\n if (isBase64) {\n data = window.atob(data);\n }\n try {\n const buffer = new ArrayBuffer(data.length);\n const view = new Uint8Array(buffer);\n for (let i = 0; i < data.length; i++) {\n view[i] = data.charCodeAt(i);\n }\n window.setTimeout(function () {\n ok(buffer);\n }, 0);\n } catch (error) {\n window.setTimeout(function () {\n err(error);\n }, 0);\n }\n } else {\n const request = new XMLHttpRequest();\n request.open('GET', url, true);\n request.responseType = 'arraybuffer';\n request.onreadystatechange = function () {\n if (request.readyState === 4) {\n if (request.status === 200) {\n ok(request.response);\n } else {\n err('loadArrayBuffer error : ' + request.response);\n }\n }\n };\n request.send(null);\n }\n}\n\n/** Downloads an ArrayBuffer to a file.\n *\n * @param arrayBuffer\n * @param filename\n */\nexport function saveArrayBuffer(arrayBuffer: ArrayBuffer, filename: string) {\n const blob = new Blob([arrayBuffer], {type: \"application/octet-stream\"});\n const link = document.createElement('a');\n link.download = filename;\n link.href = window.URL.createObjectURL(blob);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n}\n\n/** Downloads JSON to a file.\n *\n * @param arrayBuffer\n * @param filename\n */\nexport function saveJSON(data:any, filename: string) {\n const blob = new Blob([JSON.stringify(data, null, 2)], { type: 'application/json' });\n const link = document.createElement('a');\n link.download = filename;\n link.href = window.URL.createObjectURL(blob);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n}\n\n/**\n Tests if the given object is an array\n */\nexport function isArray(value: any) {\n return value && !(value.propertyIsEnumerable('length')) && typeof value === 'object' && typeof value.length === 'number';\n}\n\n/**\n Tests if the given value is a string\n */\nexport function isString(value: any) {\n return (typeof value === 'string' || value instanceof String);\n}\n\n/**\n Tests if the given value is a number\n */\nexport function isNumeric(value: any) {\n return !isNaN(parseFloat(value)) && isFinite(value);\n}\n\n/**\n Tests if the given value is an ID\n */\nexport function isID(value: any) {\n return isString(value) || isNumeric(value);\n}\n\n/**\n Tests if the given value is a function\n */\nexport function isFunction(value: any) {\n return (typeof value === \"function\");\n}\n\n/**\n Tests if the given value is a JavaScript JSON object, eg, ````{ foo: \"bar\" }````.\n */\nexport function isObject(value: { constructor: Function; }) {\n const objectConstructor = {}.constructor;\n return (!!value && value.constructor === objectConstructor);\n}\n\n/** Returns a shallow copy\n */\nexport function copy(o: any) {\n return apply(o, {});\n}\n\n/** Add properties of o to o2, overwriting them on o2 if already there\n */\nexport function apply(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n o2[name] = o[name];\n }\n }\n return o2;\n}\n\n/**\n Add non-null/defined properties of o to o2\n */\nexport function apply2(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n if (o[name] !== undefined && o[name] !== null) {\n o2[name] = o[name];\n }\n }\n }\n return o2;\n}\n\n/**\n Add properties of o to o2 where undefined or null on o2\n */\nexport function applyIf(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n if (o2[name] === undefined || o2[name] === null) {\n o2[name] = o[name];\n }\n }\n }\n return o2;\n}\n\n/**\n Returns true if the given map is empty.\n */\nexport function isEmptyObject(obj: any) {\n for (const name in obj) {\n if (obj.hasOwnProperty(name)) {\n return false;\n }\n }\n return true;\n}\n\n/**\n Returns the given ID as a string, in quotes if the ID was a string to begin with.\n This is useful for logging IDs.\n */\nexport function inQuotes(id: any) {\n return isNumeric(id) ? (`${id}`) : (`'${id}'`);\n}\n\n/**\n Returns the concatenation of two typed arrays.\n */\nexport function concat(a: any, b: any) {\n const c = new a.constructor(a.length + b.length);\n c.set(a);\n c.set(b, a.length);\n return c;\n}\n\n/**\n * Returns a new UUID.\n */\nexport const createUUID = ((() => {\n const lut: any[] = [];\n for (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n }\n return () => {\n const d0 = Math.random() * 0xffffffff | 0;\n const d1 = Math.random() * 0xffffffff | 0;\n const d2 = Math.random() * 0xffffffff | 0;\n const d3 = Math.random() * 0xffffffff | 0;\n return `${lut[d0 & 0xff] + lut[d0 >> 8 & 0xff] + lut[d0 >> 16 & 0xff] + lut[d0 >> 24 & 0xff]}-${lut[d1 & 0xff]}${lut[d1 >> 8 & 0xff]}-${lut[d1 >> 16 & 0x0f | 0x40]}${lut[d1 >> 24 & 0xff]}-${lut[d2 & 0x3f | 0x80]}${lut[d2 >> 8 & 0xff]}-${lut[d2 >> 16 & 0xff]}${lut[d2 >> 24 & 0xff]}${lut[d3 & 0xff]}${lut[d3 >> 8 & 0xff]}${lut[d3 >> 16 & 0xff]}${lut[d3 >> 24 & 0xff]}`;\n };\n}))();\n", "/** @private */\nexport class Map {\n readonly items: any[];\n #lastUniqueId: number;\n\n constructor(items: any, baseId?: any) {\n this.items = items || [];\n this.#lastUniqueId = (baseId || 0) + 1;\n }\n\n /**\n * Usage:\n *\n * id = myMap.addItem(\"foo\") // ID internally generated\n * id = myMap.addItem(\"foo\", \"bar\") // ID is \"foo\"\n */\n addItem() {\n let item;\n if (arguments.length === 2) {\n const id = arguments[0];\n item = arguments[1];\n if (this.items[id]) { // Won't happen if given ID is string\n throw \"ID clash: '\" + id + \"'\";\n }\n this.items[id] = item;\n return id;\n\n } else {\n item = arguments[0] || {};\n while (true) {\n const findId = this.#lastUniqueId++;\n if (!this.items[findId]) {\n this.items[findId] = item;\n return findId;\n }\n }\n }\n }\n\n removeItem(id: any) {\n const item = this.items[id];\n delete this.items[id];\n return item;\n }\n}\n", "export class Queue {\n private _head: any[];\n private _headLength: number;\n private _tail: any[];\n private _index: number;\n private _length: number;\n\n constructor() {\n\n this._head = [];\n this._headLength = 0;\n this._tail = [];\n this._index = 0;\n this._length = 0;\n }\n\n get length() {\n return this._length;\n }\n\n shift() {\n if (this._index >= this._headLength) {\n const t = this._head;\n t.length = 0;\n this._head = this._tail;\n this._tail = t;\n this._index = 0;\n this._headLength = this._head.length;\n if (!this._headLength) {\n return;\n }\n }\n const value = this._head[this._index];\n if (this._index < 0) {\n delete this._head[this._index++];\n }\n else {\n this._head[this._index++] = undefined;\n }\n this._length--;\n return value;\n }\n\n push(item: any) {\n this._length++;\n this._tail.push(item);\n return this;\n };\n\n unshift(item: any) {\n this._head[--this._index] = item;\n this._length++;\n return this;\n }\n\n clear() {\n this._head = [];\n this._headLength = 0;\n this._tail = [];\n this._index = 0;\n this._length = 0;\n }\n}\n", "class LoadingManager {\n private isLoading: boolean;\n private itemsLoaded: number;\n private itemsTotal: number;\n private urlModifier: undefined;\n private handlers: any[];\n private onStart: Function|undefined;\n private onLoad: Function;\n private onProgress: Function;\n private onError: Function;\n\n constructor(onLoad: Function, onProgress: Function, onError: Function) {\n\n this.isLoading = false;\n this.itemsLoaded = 0;\n this.itemsTotal = 0;\n this.urlModifier = undefined;\n this.handlers = [];\n\n this.onStart = undefined;\n this.onLoad = onLoad;\n this.onProgress = onProgress;\n this.onError = onError;\n }\n\n itemStart(url: any) {\n this.itemsTotal++;\n if (!this.isLoading) {\n if (this.onStart !== undefined) {\n this.onStart(url, this.itemsLoaded, this.itemsTotal);\n }\n }\n this.isLoading = true;\n }\n\n itemEnd(url: any) {\n this.itemsLoaded++;\n if (this.onProgress !== undefined) {\n this.onProgress(url, this.itemsLoaded, this.itemsTotal);\n }\n if (this.itemsLoaded === this.itemsTotal) {\n this.isLoading = false;\n if (this.onLoad !== undefined) {\n this.onLoad();\n }\n }\n }\n\n itemError(url: any) {\n if (this.onError !== undefined) {\n this.onError(url);\n }\n }\n\n resolveURL(url: any) {\n if (this.urlModifier) {\n // @ts-ignore\n return this.urlModifier(url);\n }\n return url;\n }\n\n setURLModifier(transform: any) {\n this.urlModifier = transform;\n return this;\n }\n\n addHandler(regex: any, loader: any) {\n this.handlers.push(regex, loader);\n return this;\n }\n\n removeHandler(regex: any) {\n const index = this.handlers.indexOf(regex);\n if (index !== -1) {\n this.handlers.splice(index, 2);\n }\n return this;\n }\n\n getHandler(file: any) {\n for (let i = 0, l = this.handlers.length; i < l; i += 2) {\n const regex = this.handlers[i];\n const loader = this.handlers[i + 1];\n if (regex.global) regex.lastIndex = 0; // see #17920\n if (regex.test(file)) {\n return loader;\n }\n }\n return null;\n }\n}\n\n// @ts-ignore\nconst DefaultLoadingManager = new LoadingManager();\n\nexport {DefaultLoadingManager, LoadingManager};\n", "import {DefaultLoadingManager, LoadingManager} from './LoadingManager';\n\nclass Loader {\n manager: LoadingManager;\n crossOrigin: string;\n withCredentials: boolean;\n path: string;\n resourcePath: string;\n requestHeader: {};\n\n constructor(manager: LoadingManager | undefined) {\n\n this.manager = (manager !== undefined) ? manager : DefaultLoadingManager;\n\n this.crossOrigin = 'anonymous';\n this.withCredentials = false;\n this.path = '';\n this.resourcePath = '';\n this.requestHeader = {};\n }\n\n load(url: string, onLoad: Function, onProgress: Function, onError: Function) {\n }\n\n loadAsync(url: string, onProgress: Function) {\n const scope = this;\n return new Promise(function (resolve, reject) {\n // @ts-ignore\n scope.load(url, resolve, onProgress, reject);\n });\n }\n\n parse( /* data */) {\n }\n\n setCrossOrigin(crossOrigin: string) {\n this.crossOrigin = crossOrigin;\n return this;\n }\n\n setWithCredentials(value: boolean) {\n this.withCredentials = value;\n return this;\n }\n\n setPath(path: string) {\n this.path = path;\n return this;\n }\n\n setResourcePath(resourcePath: string) {\n this.resourcePath = resourcePath;\n return this;\n }\n\n setRequestHeader(requestHeader: {}) {\n this.requestHeader = requestHeader;\n return this;\n }\n}\n\nexport {Loader};\n", "/**\n * @author Deepkolos / https://github.com/deepkolos\n */\nexport class WorkerPool {\n private pool: number;\n private queue: any[];\n private workers: any[];\n private workersResolve: any[];\n private workerStatus: number;\n private workerCreator: any;\n\n constructor(pool = 4) {\n this.pool = pool;\n this.queue = [];\n this.workers = [];\n this.workersResolve = [];\n this.workerStatus = 0;\n }\n\n _initWorker(workerId: number) {\n if (!this.workers[workerId]) {\n const worker = this.workerCreator();\n worker.addEventListener('message', this._onMessage.bind(this, workerId));\n this.workers[workerId] = worker;\n }\n }\n\n _getIdleWorker() {\n for (let i = 0; i < this.pool; i++)\n if (!(this.workerStatus & (1 << i))) return i;\n return -1;\n }\n\n _onMessage(workerId: number, msg: string) {\n const resolve = this.workersResolve[workerId];\n resolve && resolve(msg);\n if (this.queue.length) {\n const {resolve, msg, transfer} = this.queue.shift();\n this.workersResolve[workerId] = resolve;\n this.workers[workerId].postMessage(msg, transfer);\n } else {\n this.workerStatus ^= 1 << workerId;\n }\n }\n\n setWorkerCreator(workerCreator: any) {\n this.workerCreator = workerCreator;\n }\n\n setWorkerLimit(pool: number) {\n this.pool = pool;\n }\n\n postMessage(msg: any, transfer: any) {\n return new Promise((resolve) => {\n const workerId = this._getIdleWorker();\n if (workerId !== -1) {\n this._initWorker(workerId);\n this.workerStatus |= 1 << workerId;\n this.workersResolve[workerId] = resolve;\n this.workers[workerId].postMessage(msg, transfer);\n } else {\n this.queue.push({resolve, msg, transfer});\n }\n });\n }\n\n destroy() {\n\n this.workers.forEach((worker) => worker.terminate());\n this.workersResolve.length = 0;\n this.workers.length = 0;\n this.queue.length = 0;\n this.workerStatus = 0;\n\n }\n\n}\n", "const files: any = {};\nlet enabled = false;\n\nconst Cache = {\n\n enabled: false,\n files: {},\n\n add: function (key: string | number, file: any) {\n if (!enabled) {\n return;\n }\n files[key] = file;\n },\n\n get: function (key: string | number) {\n if (!enabled) {\n return;\n }\n return files[key];\n },\n\n remove: function (key: string | number) {\n delete files[key];\n },\n\n clear: function () {\n this.files = {};\n }\n};\n\nexport {Cache};\n", "import {Cache} from './Cache';\nimport {Loader} from './Loader';\nimport type {LoadingManager} from \"./LoadingManager\";\n\nconst loading : {[key:string]:any} = {};\n\nclass FileLoader extends Loader {\n\n mimeType: string;\n responseType: string;\n\n constructor(manager?: LoadingManager) {\n super(manager);\n }\n\n load(url:string, onLoad:Function, onProgress:Function, onError:Function) {\n if (url === undefined) {\n url = '';\n }\n if (this.path !== undefined) {\n url = this.path + url;\n }\n url = this.manager.resolveURL(url);\n const cached = Cache.get(url);\n if (cached !== undefined) {\n this.manager.itemStart(url);\n setTimeout(() => {\n if (onLoad) {\n onLoad(cached);\n }\n this.manager.itemEnd(url);\n }, 0);\n return cached;\n }\n if (loading[url] !== undefined) {\n loading[url].push({onLoad, onProgress, onError});\n return;\n }\n loading[url] = [];\n loading[url].push({onLoad, onProgress, onError});\n const req = new Request(url, {\n headers: new Headers(this.requestHeader),\n credentials: this.withCredentials ? 'include' : 'same-origin'\n });\n const mimeType = this.mimeType;\n const responseType = this.responseType;\n fetch(req).then(response => {\n if (response.status === 200 || response.status === 0) {\n // Some browsers return HTTP Status 0 when using non-http protocol\n // e.g. 'file://' or 'data://'. Handle as success.\n if (response.status === 0) {\n console.warn('FileLoader: HTTP Status 0 received.');\n }\n // @ts-ignore\n if (typeof ReadableStream === 'undefined' || response.body.getReader === undefined) {\n return response;\n }\n const callbacks = loading[url];\n // @ts-ignore\n const reader = response.body.getReader();\n const contentLength = response.headers.get('Content-Length');\n const total = contentLength ? parseInt(contentLength) : 0;\n const lengthComputable = total !== 0;\n let loaded = 0;\n const stream = new ReadableStream({\n start(controller) {\n readData();\n\n function readData() {\n reader.read().then(({done, value}) => {\n if (done) {\n controller.close();\n } else {\n // @ts-ignore\n loaded += value.byteLength;\n const event = new ProgressEvent('progress', {lengthComputable, loaded, total});\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onProgress) {\n callback.onProgress(event);\n }\n }\n controller.enqueue(value);\n readData();\n }\n });\n }\n }\n });\n return new Response(stream);\n } else {\n throw new Error(`fetch for \"${response.url}\" responded with ${response.status}: ${response.statusText}`);\n }\n }).then(response => {\n switch (responseType) {\n case 'arraybuffer':\n return response.arrayBuffer();\n case 'blob':\n return response.blob();\n case 'document':\n return response.text()\n .then(text => {\n const parser = new DOMParser();\n // @ts-ignore\n return parser.parseFromString(text, mimeType);\n });\n case 'json':\n return response.json();\n default:\n if (mimeType === undefined) {\n return response.text();\n } else {\n // sniff encoding\n const re = /charset=\"?([^;\"\\s]*)\"?/i;\n const exec = re.exec(mimeType);\n const label = exec && exec[1] ? exec[1].toLowerCase() : undefined;\n const decoder = new TextDecoder(label);\n return response.arrayBuffer().then(ab => decoder.decode(ab));\n }\n }\n }).then(data => {\n // Add to cache only on HTTP success, so that we do not cache\n // error response bodies as proper responses to requests.\n Cache.add(url, data);\n const callbacks = loading[url];\n delete loading[url];\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onLoad) {\n callback.onLoad(data);\n }\n }\n }).catch(err => {\n // Abort errors and other errors are handled the same\n const callbacks = loading[url];\n if (callbacks === undefined) {\n // When onLoad was called and url was deleted in `loading`\n this.manager.itemError(url);\n throw err;\n\n }\n delete loading[url];\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onError) {\n callback.onError(err);\n }\n }\n this.manager.itemError(url);\n }).finally(() => {\n this.manager.itemEnd(url);\n });\n this.manager.itemStart(url);\n }\n\n setResponseType(value: string) {\n this.responseType = value;\n return this;\n }\n\n setMimeType(value: string) {\n this.mimeType = value;\n return this;\n }\n}\n\n\nexport {FileLoader};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fsvg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit RTC Coordinate Utilities\n *\n * ---\n *\n * ### *Math functions for working with RTC cartesian coordinates*\n *\n * ---\n *\n * * Math functions for working with relative-to-center (RTC) coordinate systems\n * * Used internally within {@link @xeokit/viewer!Viewer | Viewer}\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/rtc\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as rtc from \"@xeokit/rtc\";\n *\n * const worldPos = [100000000000.0, 1000000000.0, 1000000000000.0];\n * const rtcCenter = [0,0,0];\n * const rtcPos = [0,0,0];\n *\n * rtc.worldToRTCPos(worldPos, rtcCenter, rtcPos);\n *\n * //..\n * ````\n *\n * @module @xeokit/rtc\n */\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {\n createVec3, createVec4,\n dotVec3,\n mulVec3Scalar,\n normalizeVec3,\n setMat4Translation,\n transformVec4,\n translateMat4v\n} from \"@xeokit/matrix\";\nimport {getPositions3Center} from \"@xeokit/boundaries\";\n\n\nconst tempVec3a = createVec3();\nconst tempMat = new Float32Array(16);\nconst rtcCenterWorld = new Float64Array(4);\nconst rtcCenterView = new Float64Array(4);\n\n/**\n * The size of tiles within xeokit's relative-to-center (RTC) World coordinate system.\n */\nexport const RTC_CELL_SIZE = 200;\n\n/**\n * Given a view matrix and a relative-to-center (RTC) coordinate origin, returns a view matrix\n * to transform RTC coordinates to View-space.\n */\nexport function createRTCViewMat(viewMat: FloatArrayParam, rtcCenter: FloatArrayParam, rtcViewMat: FloatArrayParam = tempMat): FloatArrayParam {\n rtcCenterWorld[0] = rtcCenter[0];\n rtcCenterWorld[1] = rtcCenter[1];\n rtcCenterWorld[2] = rtcCenter[2];\n rtcCenterWorld[3] = 1;\n transformVec4(viewMat, rtcCenterWorld, rtcCenterView);\n setMat4Translation(viewMat, rtcCenterView, rtcViewMat);\n return rtcViewMat;\n}\n\n/**\n * Given a modeling matrix and a relative-to-center (RTC) coordinate origin, returns an RTC modeling matrix.\n *\n * @param matrix Full-precision absolute modeling matrix, possibly with huge translations.\n * @param rtcCenter Returns the RTC origin.\n * @returns A new RTC modeling matrix, with transforms relative to the RTC origin.\n */\nexport const createRTCModelMat = (() => {\n\n const zeroVec4 = createVec4([0,0,0,1]);\n const tempVec4a = createVec4();\n\n return (matrix: FloatArrayParam, rtcCenter: FloatArrayParam): FloatArrayParam => {\n const tempVec4 = transformVec4(matrix, zeroVec4, tempVec4a);\n rtcCenter[0] = Math.round(tempVec4[0] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n rtcCenter[1] = Math.round(tempVec4[1] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n rtcCenter[2] = Math.round(tempVec4[2] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n const rtcModelMatrix = matrix.slice();\n translateMat4v(mulVec3Scalar(rtcCenter, -1, tempVec3a), rtcModelMatrix);\n return rtcModelMatrix;\n };\n})();\n\n/**\n * Converts a World-space 3D position to RTC.\n *\n * Given a double-precision World-space position, returns a double-precision relative-to-center (RTC) center pos\n * and a single-precision offset fom that center.\n *\n * @param worldPos The World-space position.\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param rtcPos Single-precision offset fom that center.\n */\nexport function worldToRTCPos(worldPos: FloatArrayParam, rtcCenter: FloatArrayParam, rtcPos: FloatArrayParam) {\n\n const xHigh = Float32Array.from([worldPos[0]])[0];\n const xLow = worldPos[0] - xHigh;\n\n const yHigh = Float32Array.from([worldPos[1]])[0];\n const yLow = worldPos[1] - yHigh;\n\n const zHigh = Float32Array.from([worldPos[2]])[0];\n const zLow = worldPos[2] - zHigh;\n\n rtcCenter[0] = xHigh;\n rtcCenter[1] = yHigh;\n rtcCenter[2] = zHigh;\n\n rtcPos[0] = xLow;\n rtcPos[1] = yLow;\n rtcPos[2] = zLow;\n}\n\n/**\n * Converts a World-space 3D position to RTC.\n *\n * Given a double-precision World-space position, returns a double-precision relative-to-center (RTC) center.\n *\n * @param worldCenter The World-space position.\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param [cellSize=200] The size of each coordinate cell within the RTC coordinate system.\n */\nexport function worldToRTCCenter(worldCenter: FloatArrayParam, rtcCenter: FloatArrayParam, cellSize = RTC_CELL_SIZE) {\n rtcCenter[0] = Math.round(worldCenter[0] / cellSize) * cellSize;\n rtcCenter[1] = Math.round(worldCenter[1] / cellSize) * cellSize;\n rtcCenter[2] = Math.round(worldCenter[2] / cellSize) * cellSize;\n return rtcCenter;\n}\n\n/**\n * Converts a flat array of double-precision positions to RTC positions.\n *\n * Returns the RTC positions, along with a computed RTC center for those positions.\n *\n * When computing the RTC position, this function uses a modulus operation to ensure that, whenever possible,\n * identical RTC positions are reused for different positions arrays.\n *\n * @param worldPositions Flat array of World-space 3D positions.\n * @param rtcPositions Outputs the computed flat array of 3D RTC positions.\n * @param rtcCenter Outputs the computed double-precision relative-to-center (RTC) center pos.\n * @param [cellSize=200] The size of each coordinate cell within the RTC coordinate system.\n * @returns ````True```` if the positions actually needed conversion to RTC, else ````false````. When\n * ````false````, we can safely ignore the data returned in ````rtcPositions```` and ````rtcCenter````,\n * since ````rtcCenter```` will equal ````[0,0,0]````, and ````rtcPositions```` will contain identical values to ````positions````.\n */\nexport function worldToRTCPositions(worldPositions: FloatArrayParam, rtcPositions: FloatArrayParam, rtcCenter: FloatArrayParam, cellSize = RTC_CELL_SIZE): boolean {\n\n const center = getPositions3Center(worldPositions, tempVec3a);\n\n const rtcCenterX = Math.round(center[0] / cellSize) * cellSize;\n const rtcCenterY = Math.round(center[1] / cellSize) * cellSize;\n const rtcCenterZ = Math.round(center[2] / cellSize) * cellSize;\n\n for (let i = 0, len = worldPositions.length; i < len; i += 3) {\n rtcPositions[i + 0] = worldPositions[i + 0] - rtcCenterX;\n rtcPositions[i + 1] = worldPositions[i + 1] - rtcCenterY;\n rtcPositions[i + 2] = worldPositions[i + 2] - rtcCenterZ;\n }\n\n rtcCenter[0] = rtcCenterX;\n rtcCenter[1] = rtcCenterY;\n rtcCenter[2] = rtcCenterZ;\n\n const rtcNeeded = (rtcCenter[0] !== 0 || rtcCenter[1] !== 0 || rtcCenter[2] !== 0);\n\n return rtcNeeded;\n}\n\n/**\n * Converts an RTC 3D position to World-space.\n *\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param rtcPos Single-precision offset fom that center.\n * @param worldPos The World-space position.\n */\nexport function rtcToWorldPos(rtcCenter: FloatArrayParam, rtcPos: FloatArrayParam, worldPos: FloatArrayParam): FloatArrayParam {\n worldPos[0] = rtcCenter[0] + rtcPos[0];\n worldPos[1] = rtcCenter[1] + rtcPos[1];\n worldPos[2] = rtcCenter[2] + rtcPos[2];\n return worldPos;\n}\n\n/**\n * Given a 3D plane defined by distance from origin and direction, and an RTC center position,\n * return a plane position that is relative to the RTC center.\n *\n * @param dist\n * @param dir\n * @param rtcCenter\n * @param rtcPlanePos\n * @returns {*}\n */\nexport function getPlaneRTCPos(dist: number, dir: FloatArrayParam, rtcCenter: FloatArrayParam, rtcPlanePos: FloatArrayParam) : FloatArrayParam{\n const rtcCenterToPlaneDist = dotVec3(dir, rtcCenter) + dist;\n const dirNormalized = normalizeVec3(dir, tempVec3a);\n mulVec3Scalar(dirNormalized, -rtcCenterToPlaneDist, rtcPlanePos);\n return rtcPlanePos;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fsvg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Boundaries Math Library\n *\n * ---\n *\n * ### *Tools for 2D and 3D boundary analysis, boundary transformation, and collision detection*\n *\n * ---\n *\n * * Axis-aligned boundaries (AABB2 and AABB3)\n * * Object-aligned boundaries (OBB)\n * * Transformable OOBs\n * * Create boundaries from positions\n * * Find center of positions\n * * FrustumProjection-boundary intersection tests\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/boundaries\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as boundaries from \"@xeokit/boundaries\";\n *\n * //..TODO\n * ````\n *\n * @module @xeokit/boundaries\n */\nimport {FloatArrayParam, IntArrayParam, MAX_DOUBLE, MIN_DOUBLE, newFloatArray} from \"@xeokit/math\";\nimport {createMat4, createVec2, createVec3, lenVec3, mulMat4, subVec3} from \"@xeokit/matrix\";\nimport {decompressPoint3WithMat4} from \"@xeokit/compression\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempMat4a = createMat4();\n\n\n/**\n * Returns a new, uninitialized 3D axis-aligned bounding box.\n */\nexport function createAABB3(values?: FloatArrayParam): Float64Array {\n // @ts-ignore\n return new Float64Array(values || 6);\n}\n\n/**\n * Returns a new, uninitialized 3D axis-aligned bounding box.\n */\nexport function createAABB3Int16(values?: IntArrayParam): Int16Array {\n // @ts-ignore\n return new Int16Array(values || 6);\n}\n\n/**\n * Returns a new, uninitialized 2D axis-aligned bounding box.\n */\nexport function createAABB2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 4);\n}\n\n/**\n * Returns a new, uninitialized 3D oriented bounding box (OBB).\n */\nexport function createOBB3(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 32);\n}\n\n/**\n * Returns a new, uninitialized 2D oriented bounding box (OBB).\n */\nexport function createOBB2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 16);\n}\n\n/** Returns a new 3D bounding sphere */\nexport function createSphere3(\n x: number,\n y: number,\n z: number,\n r: number\n): FloatArrayParam {\n return newFloatArray([x, y, z, r]);\n}\n\n/**\n * Transforms an createOBB3 by a 4x4\n */\nexport function transformOBB3(\n m: FloatArrayParam,\n p: FloatArrayParam,\n p2: FloatArrayParam = p\n): FloatArrayParam {\n let i;\n const len = p.length;\n\n let x;\n let y;\n let z;\n\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n for (i = 0; i < len; i += 4) {\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n\n p2[i + 0] = m0 * x + m4 * y + m8 * z + m12;\n p2[i + 1] = m1 * x + m5 * y + m9 * z + m13;\n p2[i + 2] = m2 * x + m6 * y + m10 * z + m14;\n p2[i + 3] = m3 * x + m7 * y + m11 * z + m15;\n }\n\n return p2;\n}\n\n\n/** Returns true if the first AABB2 contains the second AABB2.\n */\nexport function containsAABB2(\n aabb1: FloatArrayParam,\n aabb2: FloatArrayParam\n): boolean {\n return aabb1[0] <= aabb2[0] &&\n aabb2[3] <= aabb1[3] &&\n aabb1[1] <= aabb2[1] &&\n aabb1[2] <= aabb2[2];\n}\n\n/** Returns true if the first AABB3 contains the second AABB3.\n */\nexport function containsAABB3(\n aabb1: FloatArrayParam,\n aabb2: FloatArrayParam\n): boolean {\n const result =\n aabb1[0] <= aabb2[0] &&\n aabb2[3] <= aabb1[3] &&\n aabb1[1] <= aabb2[1] &&\n aabb2[4] <= aabb1[4] &&\n aabb1[2] <= aabb2[2] &&\n aabb2[5] <= aabb1[5];\n return result;\n}\n\n/**\n * Gets the diagonal size of an createAABB3 given as minima and maxima.\n */\nexport const getAABB3Diag: Function = (() => {\n const min = newFloatArray(3);\n const max = newFloatArray(3);\n const tempVec3 = newFloatArray(3);\n return (aabb: FloatArrayParam): number => {\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n subVec3(max, min, tempVec3);\n return Math.abs(lenVec3(tempVec3));\n };\n})();\n\n/**\n * Get a diagonal boundary size that is symmetrical about the given point.\n */\nexport const getAABB3DiagPoint = (() => {\n const min = newFloatArray(3);\n const max = newFloatArray(3);\n const tempVec3 = newFloatArray(3);\n\n return (aabb: FloatArrayParam, p: FloatArrayParam): number => {\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n\n const diagVec = subVec3(max, min, tempVec3);\n\n const xneg = p[0] - aabb[0];\n const xpos = aabb[3] - p[0];\n const yneg = p[1] - aabb[1];\n const ypos = aabb[4] - p[1];\n const zneg = p[2] - aabb[2];\n const zpos = aabb[5] - p[2];\n\n diagVec[0] += xneg > xpos ? xneg : xpos;\n diagVec[1] += yneg > ypos ? yneg : ypos;\n diagVec[2] += zneg > zpos ? zneg : zpos;\n\n return Math.abs(lenVec3(diagVec));\n };\n})();\n\n/**\n * Gets the area of an AABB.\n */\nexport function getAABB3Area(aabb: FloatArrayParam): number {\n const width = aabb[3] - aabb[0];\n const height = aabb[4] - aabb[1];\n const depth = aabb[5] - aabb[2];\n return width * height * depth;\n}\n\n/**\n * Gets the center of an AABB.\n */\nexport function getAABB3Center(\n aabb: FloatArrayParam,\n dest: FloatArrayParam = createVec3()\n): FloatArrayParam {\n dest[0] = (aabb[0] + aabb[3]) / 2;\n dest[1] = (aabb[1] + aabb[4]) / 2;\n dest[2] = (aabb[2] + aabb[5]) / 2;\n return dest;\n}\n\n/**\n * Gets the center of a 2D AABB.\n */\nexport function getAABB2Center(\n aabb: FloatArrayParam,\n dest: FloatArrayParam = createVec2()\n): FloatArrayParam {\n dest[0] = (aabb[2] + aabb[0]) / 2;\n dest[1] = (aabb[3] + aabb[1]) / 2;\n return dest;\n}\n\n/**\n * Collapses a 3D axis-aligned boundary, ready to expand to fit 3D points.\n * Creates new AABB if none supplied.\n */\nexport function collapseAABB3(aabb: FloatArrayParam = createAABB3()): FloatArrayParam {\n aabb[0] = MAX_DOUBLE;\n aabb[1] = MAX_DOUBLE;\n aabb[2] = MAX_DOUBLE;\n aabb[3] = MIN_DOUBLE;\n aabb[4] = MIN_DOUBLE;\n aabb[5] = MIN_DOUBLE;\n return aabb;\n}\n\n/**\n * Collapses a 3D axis-aligned boundary, ready to expand to fit 3D points.\n * Creates new AABB if none supplied.\n */\nexport function collapseAABB3Int16(aabb: IntArrayParam = createAABB3Int16()): IntArrayParam {\n aabb[0] = 65535;\n aabb[1] = 65535;\n aabb[2] = 65535;\n aabb[3] = -65535;\n aabb[4] = -65535;\n aabb[5] = -65535;\n return aabb;\n}\n\n/**\n * Converts an axis-aligned 3D boundary into an oriented boundary consisting of\n * an array of eight 3D positions, one for each corner of the boundary.\n *\n * @private\n */\nexport function AABB3ToOBB3(aabb: FloatArrayParam = createAABB3(), obb = createOBB3()): FloatArrayParam {\n obb[0] = aabb[0];\n obb[1] = aabb[1];\n obb[2] = aabb[2];\n obb[3] = 1;\n\n obb[4] = aabb[3];\n obb[5] = aabb[1];\n obb[6] = aabb[2];\n obb[7] = 1;\n\n obb[8] = aabb[3];\n obb[9] = aabb[4];\n obb[10] = aabb[2];\n obb[11] = 1;\n\n obb[12] = aabb[0];\n obb[13] = aabb[4];\n obb[14] = aabb[2];\n obb[15] = 1;\n\n obb[16] = aabb[0];\n obb[17] = aabb[1];\n obb[18] = aabb[5];\n obb[19] = 1;\n\n obb[20] = aabb[3];\n obb[21] = aabb[1];\n obb[22] = aabb[5];\n obb[23] = 1;\n\n obb[24] = aabb[3];\n obb[25] = aabb[4];\n obb[26] = aabb[5];\n obb[27] = 1;\n\n obb[28] = aabb[0];\n obb[29] = aabb[4];\n obb[30] = aabb[5];\n obb[31] = 1;\n\n return obb;\n}\n\n/**\n * Expands the first axis-aligned 3D boundary to enclose the second, if required.\n */\nexport function expandAABB3(aabb1: FloatArrayParam, aabb2: FloatArrayParam) {\n if (aabb1[0] > aabb2[0]) {\n aabb1[0] = aabb2[0];\n }\n if (aabb1[1] > aabb2[1]) {\n aabb1[1] = aabb2[1];\n }\n if (aabb1[2] > aabb2[2]) {\n aabb1[2] = aabb2[2];\n }\n if (aabb1[3] < aabb2[3]) {\n aabb1[3] = aabb2[3];\n }\n if (aabb1[4] < aabb2[4]) {\n aabb1[4] = aabb2[4];\n }\n if (aabb1[5] < aabb2[5]) {\n aabb1[5] = aabb2[5];\n }\n return aabb1;\n}\n\n/**\n * Expands the first axis-aligned 2D boundary to enclose the second, if required.\n */\nexport function expandAABB2(aabb1: FloatArrayParam, aabb2: FloatArrayParam) {\n if (aabb1[0] > aabb2[0]) {\n aabb1[0] = aabb2[0];\n }\n if (aabb1[1] > aabb2[1]) {\n aabb1[1] = aabb2[1];\n }\n if (aabb1[3] < aabb2[3]) {\n aabb1[3] = aabb2[3];\n }\n if (aabb1[4] < aabb2[4]) {\n aabb1[4] = aabb2[4];\n }\n return aabb1;\n}\n\n/**\n * Expands an axis-aligned 3D boundary to enclose the given point, if needed.\n */\nexport function expandAABB3Point3(aabb: FloatArrayParam, p: FloatArrayParam) {\n\n if (aabb[0] > p[0]) {\n aabb[0] = p[0];\n }\n\n if (aabb[1] > p[1]) {\n aabb[1] = p[1];\n }\n\n if (aabb[2] > p[2]) {\n aabb[2] = p[2];\n }\n\n if (aabb[3] < p[0]) {\n aabb[3] = p[0];\n }\n\n if (aabb[4] < p[1]) {\n aabb[4] = p[1];\n }\n\n if (aabb[5] < p[2]) {\n aabb[5] = p[2];\n }\n\n return aabb;\n}\n\n/**\n * Expands an axis-aligned 2D boundary to enclose the given point, if needed.\n */\nexport function expandAABB2Point2(aabb: FloatArrayParam, p: FloatArrayParam) {\n\n if (aabb[0] > p[0]) {\n aabb[0] = p[0];\n }\n\n if (aabb[1] > p[1]) {\n aabb[1] = p[1];\n }\n\n if (aabb[3] < p[0]) {\n aabb[3] = p[0];\n }\n\n if (aabb[4] < p[1]) {\n aabb[4] = p[1];\n }\n\n return aabb;\n}\n\n/**\n * Expands an axis-aligned 3D boundary to enclose the given points, if needed.\n */\nexport function expandAABB3Points3(aabb: FloatArrayParam, positions: FloatArrayParam): FloatArrayParam {\n var x;\n var y;\n var z;\n for (var i = 0, len = positions.length; i < len; i += 3) {\n x = positions[i];\n y = positions[i + 1];\n z = positions[i + 2];\n if (aabb[0] > x) {\n aabb[0] = x;\n }\n if (aabb[1] > y) {\n aabb[1] = y;\n }\n if (aabb[2] > z) {\n aabb[2] = z;\n }\n if (aabb[3] < x) {\n aabb[3] = x;\n }\n if (aabb[4] < y) {\n aabb[4] = y;\n }\n if (aabb[5] < z) {\n aabb[5] = z;\n }\n }\n return aabb;\n}\n\n/**\n * Converts an axis-aligned 3D boundary into an oriented boundary consisting of\n * an array of eight 3D positions, one for each corner of the boundary.\n */\nexport function ABB3ToOBB3(\n aabb: FloatArrayParam,\n obb: FloatArrayParam = createOBB3()\n): FloatArrayParam {\n obb[0] = aabb[0];\n obb[1] = aabb[1];\n obb[2] = aabb[2];\n obb[3] = 1;\n\n obb[4] = aabb[3];\n obb[5] = aabb[1];\n obb[6] = aabb[2];\n obb[7] = 1;\n\n obb[8] = aabb[3];\n obb[9] = aabb[4];\n obb[10] = aabb[2];\n obb[11] = 1;\n\n obb[12] = aabb[0];\n obb[13] = aabb[4];\n obb[14] = aabb[2];\n obb[15] = 1;\n\n obb[16] = aabb[0];\n obb[17] = aabb[1];\n obb[18] = aabb[5];\n obb[19] = 1;\n\n obb[20] = aabb[3];\n obb[21] = aabb[1];\n obb[22] = aabb[5];\n obb[23] = 1;\n\n obb[24] = aabb[3];\n obb[25] = aabb[4];\n obb[26] = aabb[5];\n obb[27] = 1;\n\n obb[28] = aabb[0];\n obb[29] = aabb[4];\n obb[30] = aabb[5];\n obb[31] = 1;\n\n return obb;\n}\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the homogeneous 3D points (x,y,z,w) given in a flattened array.\n */\nexport const positions3ToAABB3 = (() => {\n const p = newFloatArray(3);\n\n return (\n positions: FloatArrayParam,\n aabb: FloatArrayParam,\n positionsDecompressMatrix: FloatArrayParam\n ): FloatArrayParam => {\n aabb = aabb || createAABB3();\n\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = positions.length; i < len; i += 3) {\n if (positionsDecompressMatrix) {\n p[0] = positions[i + 0];\n p[1] = positions[i + 1];\n p[2] = positions[i + 2];\n\n decompressPoint3WithMat4(p, positionsDecompressMatrix, p);\n\n x = p[0];\n y = p[1];\n z = p[2];\n } else {\n x = positions[i + 0];\n y = positions[i + 1];\n z = positions[i + 2];\n }\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n };\n})();\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the homogeneous 3D points (x,y,z,w) given in a flattened array.\n */\nexport function OBB3ToAABB3(\n obb: FloatArrayParam,\n aabb: FloatArrayParam = createAABB3()\n): FloatArrayParam {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = obb.length; i < len; i += 4) {\n x = obb[i + 0];\n y = obb[i + 1];\n z = obb[i + 2];\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n}\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the given 3D points.\n */\nexport function points3ToAABB3(\n points: number[][],\n aabb: FloatArrayParam = createAABB3()\n): FloatArrayParam {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = points.length; i < len; i++) {\n x = points[i][0];\n y = points[i][1];\n z = points[i][2];\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n}\n\n/**\n * Gets the 3D center of the given flat array of 3D positions.\n */\nexport function getPositions3Center(\n positions: FloatArrayParam,\n center: FloatArrayParam = createVec3()\n): FloatArrayParam {\n let xCenter = 0;\n let yCenter = 0;\n let zCenter = 0;\n for (let i = 0, len = positions.length; i < len; i += 3) {\n xCenter += positions[i + 0];\n yCenter += positions[i + 1];\n zCenter += positions[i + 2];\n }\n const numPositions = positions.length / 3;\n center[0] = xCenter / numPositions;\n center[1] = yCenter / numPositions;\n center[2] = zCenter / numPositions;\n return center;\n}\n\n\n/**\n * A plane within a {@link Frustum3}.\n */\nexport class FrustumPlane3 {\n\n public testVertex: FloatArrayParam;\n public offset: number;\n public normal: FloatArrayParam;\n\n /**\n * Creates a new frustum plane.\n */\n constructor() {\n this.normal = createVec3();\n this.offset = 0;\n this.testVertex = createVec3();\n }\n\n /**\n * Sets the position and direction of the frustum plane.\n * @param nx\n * @param ny\n * @param nz\n * @param offset\n */\n set(nx: number, ny: number, nz: number, offset: number) {\n const s = 1.0 / Math.sqrt(nx * nx + ny * ny + nz * nz);\n this.normal[0] = nx * s;\n this.normal[1] = ny * s;\n this.normal[2] = nz * s;\n this.offset = offset * s;\n this.testVertex[0] = (this.normal[0] >= 0.0) ? 1 : 0;\n this.testVertex[1] = (this.normal[1] >= 0.0) ? 1 : 0;\n this.testVertex[2] = (this.normal[2] >= 0.0) ? 1 : 0;\n }\n}\n\n/**\n * Intersection state in which first boundary is completely inside the second.\n */\nexport const INSIDE: number = 1;\n\n/**\n * Intersection state in which two boundaries partially intersect.\n */\nexport const INTERSECT: number = 2;\n\n/**\n * Intersection state in which two boundaries do not intersect.\n */\nexport const OUTSIDE: number = 3;\n\n/**\n * A 3D frustum defined as six planes.\n */\nexport class Frustum3 {\n\n /**\n * The six planes that comprise the frustum boundary.\n */\n public planes: FrustumPlane3[];\n\n /**\n * Creates a new FrustumProjection\n */\n constructor() {\n this.planes = [\n new FrustumPlane3(), new FrustumPlane3(), new FrustumPlane3(),\n new FrustumPlane3(), new FrustumPlane3(), new FrustumPlane3()\n ];\n }\n}\n\n/**\n * Sets the extents of a frustum to the World-space volume defined by view and projection matrices.\n * Creates the frustum first if not given.\n */\nexport function setFrustum3(viewMat: FloatArrayParam, projMat: FloatArrayParam, frustum?: Frustum3) {\n const m = mulMat4(projMat, viewMat, tempMat4a);\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n frustum = frustum || new Frustum3();\n frustum.planes[0].set(m3 - m0, m7 - m4, m11 - m8, m15 - m12);\n frustum.planes[1].set(m3 + m0, m7 + m4, m11 + m8, m15 + m12);\n frustum.planes[2].set(m3 - m1, m7 - m5, m11 - m9, m15 - m13);\n frustum.planes[3].set(m3 + m1, m7 + m5, m11 + m9, m15 + m13);\n frustum.planes[4].set(m3 - m2, m7 - m6, m11 - m10, m15 - m14);\n frustum.planes[5].set(m3 + m2, m7 + m6, m11 + m10, m15 + m14);\n return frustum;\n}\n\n/**\n * Tests for intersection between a frustum and an axis-aligned 3D boundary.\n * @param frustum\n * @param aabb\n */\nexport function intersectFrustum3AABB3(frustum: Frustum3, aabb: FloatArrayParam): number {\n let ret = INSIDE;\n const min = tempVec3a;\n const max = tempVec3b;\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n const bminmax = [min, max];\n for (let i = 0; i < 6; ++i) {\n const plane = frustum.planes[i];\n if (((plane.normal[0] * bminmax[plane.testVertex[0]][0]) +\n (plane.normal[1] * bminmax[plane.testVertex[1]][1]) +\n (plane.normal[2] * bminmax[plane.testVertex[2]][2]) +\n (plane.offset)) < 0.0) {\n return OUTSIDE;\n }\n if (((plane.normal[0] * bminmax[1 - plane.testVertex[0]][0]) +\n (plane.normal[1] * bminmax[1 - plane.testVertex[1]][1]) +\n (plane.normal[2] * bminmax[1 - plane.testVertex[2]][2]) +\n (plane.offset)) < 0.0) {\n ret = INTERSECT;\n }\n }\n return ret;\n}\n\n/**\n * Tests for intersection between two axis-aligned 3D boundaries.\n * @param aabb1\n * @param aabb2\n */\nexport function intersectAABB3s(aabb1: FloatArrayParam, aabb2: FloatArrayParam): number {\n\n return INTERSECT;\n // let ret = INSIDE;\n // const min = tempVec3a;\n // const max = tempVec3b;\n // min[0] = aabb[0];\n // min[1] = aabb[1];\n // min[2] = aabb[2];\n // max[0] = aabb[3];\n // max[1] = aabb[4];\n // max[2] = aabb[5];\n // const bminmax = [min, max];\n // for (let i = 0; i < 6; ++i) {\n // const plane = frustum.planes[i];\n // if (((plane.normal[0] * bminmax[plane.testVertex[0]][0]) +\n // (plane.normal[1] * bminmax[plane.testVertex[1]][1]) +\n // (plane.normal[2] * bminmax[plane.testVertex[2]][2]) +\n // (plane.offset)) < 0.0) {\n // return OUTSIDE;\n // }\n // if (((plane.normal[0] * bminmax[1 - plane.testVertex[0]][0]) +\n // (plane.normal[1] * bminmax[1 - plane.testVertex[1]][1]) +\n // (plane.normal[2] * bminmax[1 - plane.testVertex[2]][2]) +\n // (plane.offset)) < 0.0) {\n // ret = INTERSECT;\n // }\n // }\n // return ret;\n}\n\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given {@link @xeokit/constants!TrianglesPrimitive | TrianglesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n * @param indices\n */\nexport function intersectFrustum3Triangles3(frustum: Frustum3, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given triangle primitive.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param a\n * @param b\n * @param c\n */\nexport function intersectFrustum3Triangle3(frustum: Frustum3, a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given\n * {@link @xeokit/constants!LinesPrimitive | LinesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n * @param indices\n */\nexport function intersectFrustum3Lines3(frustum: Frustum3, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the\n * given {@link @xeokit/constants!PointsPrimitive | PointsPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n */\nexport function intersectFrustum3Positions3(frustum: Frustum3, positions: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given position.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param position\n */\nexport function intersectFrustum3Point3(frustum: Frustum3, position: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!TrianglesPrimitive | TrianglesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n * @param indices\n */\nexport function intersectAABB3Triangles3(aabb: FloatArrayParam, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n for (let i = 0, len = indices.length; i < len; i += 3) {\n // if (aabbIntersectsTriangle(positions, indices[i], indices[i + 1], indices[i + 2], aabb)) {\n // return true;\n // }\n }\n return false;\n}\n\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!LinesPrimitive | LinesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n * @param indices\n */\nexport function intersectAABB3Lines3(aabb: FloatArrayParam, positions: FloatArrayParam, indices: IntArrayParam) {\n return false;\n}\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!PointsPrimitive | PointsPrimitive} vertex positions.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n */\nexport function intersectAABB3Positions3(aabb: FloatArrayParam, positions: FloatArrayParam) {\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xmax = aabb[3];\n const ymax = aabb[4];\n const zmax = aabb[5];\n for (let i = 0, len = positions.length; i < len; i += 3) {\n const x = positions[i];\n if (xmin <= x && x <= xmax) {\n const y = positions[i + 1];\n if (ymin <= y && y <= ymax) {\n const z = positions[i + 2];\n if (zmin <= z && z <= zmax) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\n/**\n * Tets if the given 3D AABB contains the given 3D position.\n * @param aabb\n * @param p\n */\nexport function containsAABB3Point3(aabb: FloatArrayParam, p: FloatArrayParam) {\n return (\n aabb[0] <= p[0] && p[0] <= aabb[3] &&\n aabb[1] <= p[1] && p[1] <= aabb[4] &&\n aabb[2] <= p[2] && p[2] <= aabb[5]);\n}\n\n/**\n * Tets if the given 2D AABB contains the given 2D position.\n * @param aabb\n * @param p\n */\nexport function containsAABB2Point2(aabb: FloatArrayParam, p: FloatArrayParam) {\n return (\n aabb[0] <= p[0] && p[0] <= aabb[3] &&\n aabb[1] <= p[1] && p[1] <= aabb[4]);\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/compression/badge)](https://www.jsdelivr.com/package/npm/@xeokit/compression)\n *\n * \n *\n * # xeokit SceneGeometry Compression / Decompression Utilities\n *\n * ---\n *\n * ### *Tools for geometry compression and decompression*\n *\n * ---\n *\n * The xeokit SceneGeometry Compression/Decompression Utilities library provides functions used internally within\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry} implementations to compress geometry. These functions are also\n * provided for users who want to pre-compress their geometry \"offline\" and then\n * use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create compressed geometry directly.\n *\n * The compression techniques used include simplifying geometry by combining duplicate positions and adjusting indices, generating edge\n * indices for triangle meshes, ignoring normals (as shaders auto-generate them), converting positions to relative-to-center (RTC)\n * coordinates, and quantizing positions and UVs as 16-bit unsigned integers.\n *\n * An example usage includes compressing a SceneGeometryParams into a {@link @xeokit/scene!SceneGeometryCompressedParams} using the\n * {@link @xeokit/scene!compressGeometryParams} function.\n *\n * The resulting SceneGeometryCompressedParams object shows vertex positions relative to the origin\n * and quantized to 16-bit integers, duplicate positions removed, and adjusted indices. Additionally, edge indices are\n * generated for the {@link @xeokit/constants!TrianglesPrimitive}, and a positionsDecompressMatrix is included to de-quantize\n * the positions within the Viewer.\n *\n * This library provides a set of functions that are used internally within\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry} implementations to\n * compress geometry. The functions are provided here in case users instead want to pre-compress their geometry \"offline\",\n * and then use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create the compressed geometry directly.\n *\n * ### Compression Techniques Used\n *\n * * Simplifies geometry by combining duplicate positions and adjusting indices\n * * Generates edge indices for triangle meshes\n * * Ignores normals (our shaders auto-generate them)\n * * Converts positions to relative-to-center (RTC) coordinates\n * * Quantizes positions and UVs as 16-bit unsigned integers\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/compression\n * ````\n *\n * ## Usage\n *\n * In the example below, we'll use {@link @xeokit/scene!compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ````javascript\n * import {compressGeometryParams} from \"@xeokit/compression\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [\n * 202, 202, 202, 200, 202, 202,\n * 200, 200, 202, 202, 200, 202,\n * 202, 202, 202, 202, 200, 202,\n * 202, 200, 200, 202, 202, 200,\n * 202, 202, 202, 202, 202, 200,\n * 200, 202, 200, 200, 202, 202,\n * 200, 202, 202, 200, 202, 200,\n * 200, 200, 200, 200, 200, 202,\n * 200, 200, 200, 202, 200, 200,\n * 202, 200, 202, 200, 200, 202,\n * 202, 200, 200, 200, 200, 200,\n * 200, 202, 200, 202, 202, 200\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n * ````\n *\n * The value of our new {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} is shown below.\n *\n * We can see that:\n *\n * * Vertex positions are now relative to ````origin```` and quantized to 16-bit integers\n * * Duplicate positions are removed and indices adjusted\n * * Edge indices generated for our TrianglesPrimitive\n * * A positions 3D boundary ````aabb````, to de-quantize the positions within the Viewer\n *\n * ````javascript\n * {\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * aabb: [200, 200, 200, 202, 202, 202],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 0, 65525, 0, 0,\n * 0, 0\n * ],\n * origin: [0,0,0],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ],\n * edgeIndices: [\n * 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7,\n * 3, 2, 4, 7, 6, 4, 6\n * ]\n * }\n * ````\n *\n * In the next example, we'll again use {@link @xeokit/scene!compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}, which we'll then use to\n * create a compressed geometry within a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n * import {compressGeometryParams} from \"@xeokit/compression\";\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [202, 202, 202, 200, 202, 202, ...],\n * indices: [0, 1, 2, 0, 2, 3, 4, 5, 6, 4, ...]\n * });\n *\n * sceneModel.createGeometryCompressed(geometryCompressedParams);\n *\n * sceneModel.createLayerMesh({ id: \"myMesh\", geometryId: \"myGeometry\" });\n *\n * sceneModel.createObject({ id: \"myObject1\", meshIds: [\"myMesh\"] });\n * sceneModel.createObject({ id: \"myObject2\", meshIds: [\"myMesh\"] });\n *\n * sceneModel.build();\n * ````\n *\n * @module @xeokit/compression\n */\n\nimport {\n createMat3,\n createMat4,\n createVec3,\n identityMat3,\n identityMat4,\n mulMat3,\n mulMat4,\n normalizeVec3,\n scalingMat3v,\n scalingMat4v,\n transformVec3,\n translationMat3v,\n translationMat4v\n} from \"@xeokit/matrix\";\n\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\nconst translate = createMat4();\nconst scale = createMat4();\n\n/**\n * Gets the boundary of a flat positions array.\n *\n * @param array\n * @param min\n * @param max\n */\nexport function getPositions3MinMax(array: FloatArrayParam, min?: FloatArrayParam, max?: FloatArrayParam) {\n let i, j;\n min = min || new Float64Array(3);\n max = max || new Float64Array(3);\n for (i = 0; i < 3; i++) {\n min[i] = Number.MAX_VALUE;\n max[i] = -Number.MAX_VALUE;\n }\n for (i = 0; i < array.length; i += 3) {\n for (j = 0; j < 3; j++) {\n min[j] = Math.min(min[j], array[i + j]);\n max[j] = Math.max(max[j], array[i + j]);\n }\n }\n return {\n min,\n max\n };\n}\n\n/**\n * Creates a de-quantization matrix from a boundary.\n */\nexport function createPositions3DecompressMat4(aabb: FloatArrayParam, positionsDecompressMatrix?: FloatArrayParam): FloatArrayParam {\n positionsDecompressMatrix = positionsDecompressMatrix || createMat4();\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65535;\n identityMat4(translate);\n translationMat4v(aabb, translate);\n identityMat4(scale);\n scalingMat4v([xwid / maxInt, ywid / maxInt, zwid / maxInt], scale);\n mulMat4(translate, scale, positionsDecompressMatrix);\n return positionsDecompressMatrix;\n}\n\n/**\n * Compresses a flat positions array\n */\nexport function compressPositions3(array: FloatArrayParam, min: FloatArrayParam, max: FloatArrayParam) {\n const quantized = new Uint16Array(array.length);\n var multiplier = new Float32Array([\n max[0] !== min[0] ? 65535 / (max[0] - min[0]) : 0,\n max[1] !== min[1] ? 65535 / (max[1] - min[1]) : 0,\n max[2] !== min[2] ? 65535 / (max[2] - min[2]) : 0\n ]);\n let i;\n for (i = 0; i < array.length; i += 3) {\n quantized[i + 0] = Math.floor((array[i + 0] - min[0]) * multiplier[0]);\n quantized[i + 1] = Math.floor((array[i + 1] - min[1]) * multiplier[1]);\n quantized[i + 2] = Math.floor((array[i + 2] - min[2]) * multiplier[2]);\n }\n identityMat4(translate);\n translationMat4v(min, translate);\n identityMat4(scale);\n scalingMat4v([\n (max[0] - min[0]) / 65535,\n (max[1] - min[1]) / 65535,\n (max[2] - min[2]) / 65535\n ], scale);\n const decompressMatrix = mulMat4(translate, scale, identityMat4());\n return {\n quantized: quantized,\n decompressMatrix: decompressMatrix\n };\n}\n\n/**\n * Compresses a 3D position\n * @param p\n * @param aabb\n * @param dest\n */\nexport function compressPoint3WithAABB3(p: FloatArrayParam, aabb: FloatArrayParam, dest: FloatArrayParam = p) {\n const multiplier = new Float32Array([\n aabb[3] !== aabb[0] ? 65535 / (aabb[3] - aabb[0]) : 0,\n aabb[4] !== aabb[1] ? 65535 / (aabb[4] - aabb[1]) : 0,\n aabb[5] !== aabb[2] ? 65535 / (aabb[5] - aabb[2]) : 0\n ]);\n dest[0] = Math.max(0, Math.min(65535, Math.floor((p[0] - aabb[0]) * multiplier[0])));\n dest[1] = Math.max(0, Math.min(65535, Math.floor((p[1] - aabb[1]) * multiplier[1])));\n dest[2] = Math.max(0, Math.min(65535, Math.floor((p[2] - aabb[2]) * multiplier[2])));\n return dest;\n}\n\n/**\n * Decompresses a 3D position\n * @param position\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPoint3WithMat4(position: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: FloatArrayParam = position): FloatArrayParam {\n dest[0] = position[0] * decompressMatrix[0] + decompressMatrix[12];\n dest[1] = position[1] * decompressMatrix[5] + decompressMatrix[13];\n dest[2] = position[2] * decompressMatrix[10] + decompressMatrix[14];\n return dest;\n}\n\n/**\n * Decompresses a 3D position\n * @param position\n * @param aabb\n * @param dest\n */\nexport function decompressPoint3WithAABB3(position: FloatArrayParam, aabb: FloatArrayParam, dest: FloatArrayParam = position): FloatArrayParam {\n const xScale = (aabb[3] - aabb[0]) / 65535;\n const xOffset = aabb[0];\n const yScale = (aabb[4] - aabb[1]) / 65535;\n const yOffset = aabb[1];\n const zScale = (aabb[5] - aabb[2]) / 65535;\n const zOffset = aabb[2];\n\n dest[0] = position[0] * xScale + xOffset;\n dest[1] = position[1] * yScale + yOffset;\n dest[2] = position[2] * zScale + zOffset;\n return dest;\n}\n\n/**\n * Decompresses an axis-aligned 3D boundary\n * @param aabb\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressAABB3WithMat4(aabb: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: FloatArrayParam = aabb): FloatArrayParam {\n dest[0] = aabb[0] * decompressMatrix[0] + decompressMatrix[12];\n dest[1] = aabb[1] * decompressMatrix[5] + decompressMatrix[13];\n dest[2] = aabb[2] * decompressMatrix[10] + decompressMatrix[14];\n dest[3] = aabb[3] * decompressMatrix[0] + decompressMatrix[12];\n dest[4] = aabb[4] * decompressMatrix[5] + decompressMatrix[13];\n dest[5] = aabb[5] * decompressMatrix[10] + decompressMatrix[14];\n return dest;\n}\n\n/**\n * Decompresses an axis-aligned 3D boundary\n * @param aabb\n * @param aabb2\n * @param dest\n */\nexport function decompressAABB3WithAABB3(aabb: FloatArrayParam, aabb2: FloatArrayParam, dest: FloatArrayParam = aabb): FloatArrayParam {\n const xScale = (aabb2[3] - aabb2[0]) / 65535;\n const xOffset = aabb2[0];\n const yScale = (aabb2[4] - aabb2[1]) / 65535;\n const yOffset = aabb2[1];\n const zScale = (aabb2[5] - aabb2[2]) / 65535;\n const zOffset = aabb2[2];\n dest[0] = aabb[0] * xScale + xOffset;\n dest[1] = aabb[1] * yScale + yOffset;\n dest[2] = aabb[2] * zScale + zOffset;\n dest[3] = aabb[3] * xScale + xOffset;\n dest[4] = aabb[4] * yScale + yOffset;\n dest[5] = aabb[5] * zScale + zOffset;\n return dest;\n}\n\n/**\n * Decompresses a flat array of positions\n * @param positions\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPositions3WithMat4(positions: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: Float32Array = new Float32Array(positions.length)): Float32Array {\n for (let i = 0, len = positions.length; i < len; i += 3) {\n dest[i + 0] = positions[i + 0] * decompressMatrix[0] + decompressMatrix[12];\n dest[i + 1] = positions[i + 1] * decompressMatrix[5] + decompressMatrix[13];\n dest[i + 2] = positions[i + 2] * decompressMatrix[10] + decompressMatrix[14];\n }\n return dest;\n}\n\n/**\n * Decompresses a flat array of positions\n * @param positions\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPositions3WithAABB3(positions: FloatArrayParam, aabb: FloatArrayParam, dest: Float32Array = new Float32Array(positions.length)): Float32Array {\n const xScale = (aabb[3] - aabb[0]);\n const xOffset = aabb[0];\n const yScale = (aabb[4] - aabb[1]);\n const yOffset = aabb[1];\n const zScale = (aabb[5] - aabb[2]);\n const zOffset = aabb[2];\n for (let i = 0, len = positions.length; i < len; i += 3) {\n dest[i + 0] = positions[i + 0] * xScale + xOffset;\n dest[i + 1] = positions[i + 1] * yScale + yOffset;\n dest[i + 2] = positions[i + 2] * zScale + zOffset;\n }\n return dest;\n}\n\n/**\n * Gets the 2D min/max boundary of a flat array of UV coordinate\n * @param array\n */\nexport function getUVBounds(array: FloatArrayParam): { min: FloatArrayParam, max: FloatArrayParam } {\n const min = new Float32Array(2);\n const max = new Float32Array(2);\n let i, j;\n for (i = 0; i < 2; i++) {\n min[i] = Number.MAX_VALUE;\n max[i] = -Number.MAX_VALUE;\n }\n for (i = 0; i < array.length; i += 2) {\n for (j = 0; j < 2; j++) {\n min[j] = Math.min(min[j], array[i + j]);\n max[j] = Math.max(max[j], array[i + j]);\n }\n }\n return {\n min: min,\n max: max\n };\n}\n\n/**\n * Compresses a flat array of UV coordinates\n */\nexport var compressUVs = (function () {\n const translate = createMat3();\n const scale = createMat3();\n return function (array: FloatArrayParam, min: FloatArrayParam, max: FloatArrayParam): {\n quantized: Uint16Array,\n decompressMatrix: FloatArrayParam | Float64Array\n } {\n const quantized = new Uint16Array(array.length);\n const multiplier = new Float32Array([\n 65535 / (max[0] - min[0]),\n 65535 / (max[1] - min[1])\n ]);\n let i;\n for (i = 0; i < array.length; i += 2) {\n quantized[i + 0] = Math.floor((array[i + 0] - min[0]) * multiplier[0]);\n quantized[i + 1] = Math.floor((array[i + 1] - min[1]) * multiplier[1]);\n }\n identityMat3(translate);\n translationMat3v(min, translate);\n identityMat3(scale);\n scalingMat3v([\n (max[0] - min[0]) / 65535,\n (max[1] - min[1]) / 65535\n ], scale);\n const decompressMatrix = mulMat3(translate, scale, identityMat3());\n return {\n quantized: quantized,\n decompressMatrix: decompressMatrix\n };\n };\n})();\n\n/**\n * Oct-encodes a flat array of normal vectors\n * @param array\n */\nexport function compressNormals(array: FloatArrayParam): Int8Array { // http://jcgt.org/published/0003/02/01/\n\n // Note: three elements for each encoded normal, in which the last element in each triplet is redundant.\n // This is to work around a mysterious WebGL issue where 2-element normals just wouldn't work in the shader :/\n\n const encoded = new Int8Array(array.length);\n let oct, dec, best, currentCos, bestCos;\n for (let i = 0; i < array.length; i += 3) {\n // Test various combinations of ceil and floor\n // to minimize rounding errors\n best = oct = octEncodeNormalFromArray(array, i, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(array, i, dec);\n oct = octEncodeNormalFromArray(array, i, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormalFromArray(array, i, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormalFromArray(array, i, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n encoded[i] = best[0];\n encoded[i + 1] = best[1];\n }\n return encoded;\n}\n\n/**\n */\nfunction octEncodeNormalFromArray(array: FloatArrayParam, i: number, xfunc: any, yfunc: any): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = array[i] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n let y = array[i + 1] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n if (array[i + 2] < 0) {\n let tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n let tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n\n/**\n * Dot product of a normal in an array against a candidate decoding\n */\nfunction dot(array: FloatArrayParam, i: number, createVec3: FloatArrayParam): number {\n return array[i] * createVec3[0] + array[i + 1] * createVec3[1] + array[i + 2] * createVec3[2];\n}\n\n/**\n */\nexport function decompressUV(uv: FloatArrayParam, decompressMatrix: FloatArrayParam, dest = new Float32Array(2)) {\n dest[0] = uv[0] * decompressMatrix[0] + decompressMatrix[6];\n dest[1] = uv[1] * decompressMatrix[4] + decompressMatrix[7];\n}\n\n/**\n *\n */\nexport function decompressUVs(uvs: FloatArrayParam, decompressMatrix: FloatArrayParam, dest = new Float32Array(uvs.length)) {\n for (let i = 0, len = uvs.length; i < len; i += 3) {\n dest[i + 0] = uvs[i + 0] * decompressMatrix[0] + decompressMatrix[6];\n dest[i + 1] = uvs[i + 1] * decompressMatrix[4] + decompressMatrix[7];\n }\n return dest;\n}\n\n/**\n *\n */\nexport function decompressNormal(oct: FloatArrayParam, result: FloatArrayParam): FloatArrayParam {\n let x = oct[0];\n let y = oct[1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[0] = x / length;\n result[1] = y / length;\n result[2] = z / length;\n return result;\n}\n\n/**\n *\n */\nexport function decompressNormals(octs: string | any[], result: FloatArrayParam): FloatArrayParam {\n for (let i = 0, j = 0, len = octs.length; i < len; i += 2) {\n let x = octs[i + 0];\n let y = octs[i + 1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[j + 0] = x / length;\n result[j + 1] = y / length;\n result[j + 2] = z / length;\n j += 3;\n }\n return result;\n}\n\n/**\n *\n * @param oct\n * @param result\n */\nfunction octDecodeVec2(oct: Int8Array, result: FloatArrayParam = createVec3()): FloatArrayParam {\n let x = oct[0];\n let y = oct[1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[0] = x / length;\n result[1] = y / length;\n result[2] = z / length;\n return result;\n}\n\n/**\n *\n */\nfunction octDecodeVec2s(octs: Int8Array, result: FloatArrayParam): FloatArrayParam {\n for (let i = 0, j = 0, len = octs.length; i < len; i += 2) {\n let x = octs[i + 0];\n let y = octs[i + 1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[j + 0] = x / length;\n result[j + 1] = y / length;\n result[j + 2] = z / length;\n j += 3;\n }\n return result;\n}\n\n/**\n * @private\n */\nexport function quantizePositions3AndCreateMat4(positions: FloatArrayParam, aabb: FloatArrayParam, positionsDecompressMatrix: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenPositions = positions.length;\n const positionsCompressed = new Uint16Array(lenPositions);\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65525;\n const xMultiplier = maxInt / xwid;\n const yMultiplier = maxInt / ywid;\n const zMultiplier = maxInt / zwid;\n const verify = (num: number) => num >= 0 ? num : 0;\n for (let i = 0; i < lenPositions; i += 3) {\n positionsCompressed[i + 0] = Math.floor(verify(positions[i + 0] - xmin) * xMultiplier);\n positionsCompressed[i + 1] = Math.floor(verify(positions[i + 1] - ymin) * yMultiplier);\n positionsCompressed[i + 2] = Math.floor(verify(positions[i + 2] - zmin) * zMultiplier);\n }\n identityMat4(translate);\n translationMat4v(aabb, translate);\n identityMat4(scale);\n scalingMat4v([xwid / maxInt, ywid / maxInt, zwid / maxInt], scale);\n mulMat4(translate, scale, positionsDecompressMatrix);\n return positionsCompressed;\n}\n\n/**\n * @private\n */\nexport function quantizePositions3(positions: FloatArrayParam, aabb: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenPositions = positions.length;\n const positionsCompressed = new Uint16Array(lenPositions);\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65525;\n const xMultiplier = maxInt / xwid;\n const yMultiplier = maxInt / ywid;\n const zMultiplier = maxInt / zwid;\n const verify = (num: number) => num >= 0 ? num : 0;\n for (let i = 0; i < lenPositions; i += 3) {\n positionsCompressed[i + 0] = Math.floor(verify(positions[i + 0] - xmin) * xMultiplier);\n positionsCompressed[i + 1] = Math.floor(verify(positions[i + 1] - ymin) * yMultiplier);\n positionsCompressed[i + 2] = Math.floor(verify(positions[i + 2] - zmin) * zMultiplier);\n }\n return positionsCompressed;\n}\n\n/**\n * @private\n */\nexport function transformAndOctEncodeNormals(worldNormalMatrix: FloatArrayParam, normals: FloatArrayParam, lenNormals: number, compressedNormals: FloatArrayParam, lenCompressedNormals: number) {\n\n function dot(p: FloatArrayParam, createVec3: FloatArrayParam) { // Dot product of a normal in an array against a candidate decoding\n return p[0] * createVec3[0] + p[1] * createVec3[1] + p[2] * createVec3[2];\n }\n\n // http://jcgt.org/published/0003/02/01/\n let oct, dec, best, currentCos, bestCos;\n let i, ei;\n let localNormal = new Float32Array([0, 0, 0, 0]);\n let worldNormal = new Float32Array([0, 0, 0, 0]);\n for (i = 0; i < lenNormals; i += 3) {\n localNormal[0] = normals[i];\n localNormal[1] = normals[i + 1];\n localNormal[2] = normals[i + 2];\n\n transformVec3(worldNormalMatrix, localNormal, worldNormal);\n normalizeVec3(worldNormal, worldNormal);\n\n // Test various combinations of ceil and floor to minimize rounding errors\n best = oct = octEncodeVec3(worldNormal, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(worldNormal, dec);\n oct = octEncodeVec3(worldNormal, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeVec3(worldNormal, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeVec3(worldNormal, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n compressedNormals[lenCompressedNormals + i + 0] = best[0];\n compressedNormals[lenCompressedNormals + i + 1] = best[1];\n compressedNormals[lenCompressedNormals + i + 2] = 0.0; // Unused\n }\n lenCompressedNormals += lenNormals;\n return lenCompressedNormals;\n}\n\n/**\n * @private\n */\nexport function octEncodeNormals(normals: FloatArrayParam) { // http://jcgt.org/published/0003/02/01/\n const lenNormals = normals.length;\n const compressedNormals = new Int8Array(lenNormals)\n let oct, dec, best, currentCos, bestCos;\n for (let i = 0; i < lenNormals; i += 3) {\n // Test various combinations of ceil and floor to minimize rounding errors\n best = oct = octEncodeNormal(normals, i, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(normals, i, dec);\n oct = octEncodeNormal(normals, i, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormal(normals, i, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormal(normals, i, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n compressedNormals[i + 0] = best[0];\n compressedNormals[i + 1] = best[1];\n compressedNormals[i + 2] = 0.0; // Unused\n }\n return compressedNormals;\n}\n\n/**\n * @private\n */\nexport function octEncodeVec3(p: FloatArrayParam, xfunc: string, yfunc: string): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = p[0] / (Math.abs(p[0]) + Math.abs(p[1]) + Math.abs(p[2]));\n let y = p[1] / (Math.abs(p[0]) + Math.abs(p[1]) + Math.abs(p[2]));\n if (p[2] < 0) {\n let tempx = x;\n let tempy = y;\n tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n/**\n * @private\n */\nexport function octEncodeNormal(array: FloatArrayParam, i: number, xfunc: string, yfunc: string): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = array[i] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n let y = array[i + 1] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n if (array[i + 2] < 0) {\n let tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n let tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n/**\n * Compresses a flat array of floatinging point RGB/RGBA colors.\n */\nexport function compressRGBColors(colors: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenColors = colors.length;\n const colorsCompressed = new Uint16Array(lenColors);\n for (let i = 0; i < lenColors; i++) {\n colorsCompressed[i + 0] = Math.floor(colors[i] * 255);\n }\n return colorsCompressed;\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * # xeokit Curves Math Library\n *\n * ---\n *\n * ### *Spline curve math functions*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/curves\n * ````\n *\n * ````javascript\n * import * as curves from \"@xeokit/curves\";\n *\n * //..\n * ````\n *\n * @module @xeokit/curves\n */\n\n/**\n * Finds a tangent to a quadratic B\u00E9zier curve.\n *\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function tangentQuadraticB\u00E9zier(t: number, p0: number, p1: number, p2: number): number {\n return 2 * (1 - t) * (p1 - p0) + 2 * t * (p2 - p1);\n}\n\n/**\n * Finds a tangent to a quadratic B\u00E9zier curve.\n *\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function tangentQuadraticB\u00E9zier3(t: number, p0: number, p1: number, p2: number, p3: number): number {\n return -3 * p0 * (1 - t) * (1 - t) +\n 3 * p1 * (1 - t) * (1 - t) - 6 * t * p1 * (1 - t) +\n 6 * t * p2 * (1 - t) - 3 * t * t * p2 +\n 3 * t * t * p3;\n}\n\n/**\n * Finds a tangent to a spline.\n * @param t\n */\nexport function tangentSpline(t: number) {\n const h00 = 6 * t * t - 6 * t;\n const h10 = 3 * t * t - 4 * t + 1;\n const h01 = -6 * t * t + 6 * t;\n const h11 = 3 * t * t - 2 * t;\n return h00 + h10 + h01 + h11;\n}\n\n/**\n * Catmull-Rom interpolation on a curve.\n * @param p0\n * @param p1\n * @param p2\n * @param p3\n * @param t\n */\nexport function catmullRomInterpolate(p0: number, p1: number, p2: number, p3: number, t: number): number {\n const v0 = (p2 - p0) * 0.5;\n const v1 = (p3 - p1) * 0.5;\n const t2 = t * t;\n const t3 = t * t2;\n return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (-3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\n}\n\n// B\u00E9zier Curve formulii from http://en.wikipedia.org/wiki/B%C3%A9zier_curve\n\n// Quad B\u00E9zier Functions\n\n/**\n * Quad B\u00E9zier curve function b2p0\n *\n * @param t\n * @param p\n */\nexport function b2p0(t: number, p: number): number {\n const k = 1 - t;\n return k * k * p;\n\n}\n\n/**\n * Quad B\u00E9zier curve function b2p1\n * @param t\n * @param p\n */\nexport function b2p1(t: number, p: number): number {\n return 2 * (1 - t) * t * p;\n}\n\n/**\n * Quad B\u00E9zier curve function b2p2\n * @param t\n * @param p\n */\nexport function b2p2(t: number, p: number): number {\n return t * t * p;\n}\n\n/**\n * Quad B\u00E9zier curve function b2\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function b2(this: any, t: number, p0: number, p1: number, p2: number): number {\n return this.b2p0(t, p0) + this.b2p1(t, p1) + this.b2p2(t, p2);\n}\n\n// Cubic B\u00E9zier Functions\n\n/**\n * Cubic B\u00E9zier curve function b3p0\n * @param t\n * @param p\n */\nexport function b3p0(t: number, p: number): number {\n const k = 1 - t;\n return k * k * k * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p1\n * @param t\n * @param p\n */\nexport function b3p1(t: number, p: number): number {\n const k = 1 - t;\n return 3 * k * k * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p2\n * @param t\n * @param p\n */\nexport function b3p2(t: number, p: number): number {\n const k = 1 - t;\n return 3 * k * t * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p3\n * @param t\n * @param p\n */\nexport function b3p3(t: number, p: number) {\n return t * t * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3\n * @param t\n * @param p0\n * @param p1\n * @param p2\n * @param p3\n */\nexport function b3(this: any, t: number, p0: number, p1: number, p2: number, p3: number) {\n return this.b3p0(t, p0) + this.b3p1(t, p1) + this.b3p2(t, p2) + this.b3p3(t, p3);\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fprocgen.svg)](https://badge.fury.io/js/%40xeokit%2Fprocgen)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/procgen/badge)](https://www.jsdelivr.com/package/npm/@xeokit/procgen)\n *\n * \n *\n * # xeokit SceneGeometry Builder Functions\n *\n * ---\n *\n * ### *Functions to generate various 3D geometric primitives*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/procgen\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import {buildBoxGeometry} from \"@xeokit/procgen\";\n *\n * const geometryArrays = buildBoxGeometry({\n * center: [0,0,0],\n * xSize: 1, // Half-size on each axis\n * ySize: 1,\n * zSize: 1\n * });\n * ````\n *\n * @module @xeokit/procgen\n */\nexport * from \"./buildBoxGeometry\";\nexport * from \"./buildGridGeometry\"\nexport * from \"./buildBoxLinesGeometry\";\nexport * from \"./buildCylinderGeometry\";\nexport * from \"./buildSphereGeometry\";\nexport * from \"./buildTorusGeometry\";\nexport * from \"./buildVectorTextGeometry\";\nexport * from \"./buildPlaneGeometry\";\nexport * from \"./GeometryArrays\";\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {SDKError} from \"@xeokit/core\";\n\n/**\n * Creates box-shaped geometry arrays.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a box-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n * TODO\n * ````\n *\n * @function buildBoxGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.xSize=1.0] Half-size on the X-axis.\n * @param [cfg.ySize=1.0] Half-size on the Y-axis.\n * @param [cfg.zSize=1.0] Half-size on the Z-axis.\n * @returns {Object} GeometryArrays arrays.\n */\nexport function buildBoxGeometry(cfg: {\n center?: number[],\n ySize?: number,\n xSize?: number,\n zSize?: number\n} = {\n center: [0, 0, 0],\n xSize: 1,\n ySize: 1,\n zSize: 1\n}): GeometryArrays | SDKError {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n return new SDKError(\"Negative xSize not allowed\");\n }\n\n let ySize = cfg.ySize || 1;\n if (ySize < 0) {\n return new SDKError(\"Negative ySize not allowed\");\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n return new SDKError(\"Negative zSize not allowed\");\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const xmin = -xSize + centerX;\n const ymin = -ySize + centerY;\n const zmin = -zSize + centerZ;\n const xmax = xSize + centerX;\n const ymax = ySize + centerY;\n const zmax = zSize + centerZ;\n\n return utils.apply(cfg, {\n\n primitive: TrianglesPrimitive,\n\n // The vertices - eight for our cube, each\n // one spanning three array elements for X,Y and Z\n positions: [\n\n // v0-v1-v2-v3 front\n xmax, ymax, zmax,\n xmin, ymax, zmax,\n xmin, ymin, zmax,\n xmax, ymin, zmax,\n\n // v0-v3-v4-v1 right\n xmax, ymax, zmax,\n xmax, ymin, zmax,\n xmax, ymin, zmin,\n xmax, ymax, zmin,\n\n // v0-v1-v6-v1 top\n xmax, ymax, zmax,\n xmax, ymax, zmin,\n xmin, ymax, zmin,\n xmin, ymax, zmax,\n\n // v1-v6-v7-v2 left\n xmin, ymax, zmax,\n xmin, ymax, zmin,\n xmin, ymin, zmin,\n xmin, ymin, zmax,\n\n // v7-v4-v3-v2 bottom\n xmin, ymin, zmin,\n xmax, ymin, zmin,\n xmax, ymin, zmax,\n xmin, ymin, zmax,\n\n // v4-v7-v6-v1 back\n xmax, ymin, zmin,\n xmin, ymin, zmin,\n xmin, ymax, zmin,\n xmax, ymax, zmin\n ],\n\n // UV coords\n uv: [\n\n // v0-v1-v2-v3 front\n 1, 0,\n 0, 0,\n 0, 1,\n 1, 1,\n\n // v0-v3-v4-v1 right\n 0, 0,\n 0, 1,\n 1, 1,\n 1, 0,\n\n // v0-v1-v6-v1 top\n 1, 1,\n 1, 0,\n 0, 0,\n 0, 1,\n\n // v1-v6-v7-v2 left\n 1, 0,\n 0, 0,\n 0, 1,\n 1, 1,\n\n // v7-v4-v3-v2 bottom\n 0, 1,\n 1, 1,\n 1, 0,\n 0, 0,\n\n // v4-v7-v6-v1 back\n 0, 1,\n 1, 1,\n 1, 0,\n 0, 0\n ],\n\n // Indices - these organise the\n // positions and uv texture coordinates\n // into geometric primitives in accordance\n // with the \"primitive\" parameter,\n // in this case a set of three indices\n // for each triangle.\n //\n // Note that each triangle is specified\n // in counter-clockwise winding order.\n //\n // You can specify them in clockwise\n // order if you configure the Modes\n // node's frontFace flag as \"cw\", instead of\n // the default \"ccw\".\n indices: [\n 0, 1, 2,\n 0, 2, 3,\n // front\n 4, 5, 6,\n 4, 6, 7,\n // right\n 8, 9, 10,\n 8, 10, 11,\n // top\n 12, 13, 14,\n 12, 14, 15,\n // left\n 16, 17, 18,\n 16, 18, 19,\n // bottom\n 20, 21, 22,\n 20, 22, 23\n ]\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n/**\n * Creates a grid-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a grid-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n\n * ````\n *\n * @function buildGridGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.size=1] Dimension on the X and Z-axis.\n * @param [cfg.divisions=1] Number of divisions on X and Z axis..\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildGridGeometry(cfg = {\n size: 1,\n divisions: 1\n}): GeometryArrays {\n\n let size = cfg.size || 1;\n if (size < 0) {\n console.error(\"negative size not allowed - will invert\");\n size *= -1;\n }\n\n let divisions = cfg.divisions || 1;\n if (divisions < 0) {\n console.error(\"negative divisions not allowed - will invert\");\n divisions *= -1;\n }\n if (divisions < 1) {\n divisions = 1;\n }\n\n size = size || 10;\n divisions = divisions || 10;\n\n const step = size / divisions;\n const halfSize = size / 2;\n\n const positions = [];\n const indices = [];\n let l = 0;\n\n for (let i = 0, j = 0, k = -halfSize; i <= divisions; i++, k += step) {\n\n positions.push(-halfSize);\n positions.push(0);\n positions.push(k);\n\n positions.push(halfSize);\n positions.push(0);\n positions.push(k);\n\n positions.push(k);\n positions.push(0);\n positions.push(-halfSize);\n\n positions.push(k);\n positions.push(0);\n positions.push(halfSize);\n\n indices.push(l++);\n indices.push(l++);\n indices.push(l++);\n indices.push(l++);\n }\n\n return utils.apply(cfg, {\n primitive: \"lines\",\n positions: positions,\n indices: indices\n });\n}\n\n", "import * as utils from \"@xeokit/utils\";\nimport * as constants from \"@xeokit/constants\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n\n\n/**\n * Creates a box-shaped wireframe geometry.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a box-shaped wireframe {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n * TODO\n * ````\n *\n * @function buildBoxLinesGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.xSize=1.0] Half-size on the X-axis.\n * @param [cfg.ySize=1.0] Half-size on the Y-axis.\n * @param [cfg.zSize=1.0] Half-size on the Z-axis.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildBoxLinesGeometry(cfg: {\n center?: (number[] | Float32Array | Float64Array),\n ySize?: number,\n xSize?: number,\n zSize?: number\n} = {\n center: [0, 0, 0],\n xSize: 1,\n ySize: 1,\n zSize: 1\n}): GeometryArrays {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n console.error(\"negative xSize not allowed - will invert\");\n xSize *= -1;\n }\n\n let ySize = cfg.ySize || 1;\n if (ySize < 0) {\n console.error(\"negative ySize not allowed - will invert\");\n ySize *= -1;\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n console.error(\"negative zSize not allowed - will invert\");\n zSize *= -1;\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const xmin = -xSize + centerX;\n const ymin = -ySize + centerY;\n const zmin = -zSize + centerZ;\n const xmax = xSize + centerX;\n const ymax = ySize + centerY;\n const zmax = zSize + centerZ;\n\n return utils.apply(cfg, {\n primitive: constants.LinesPrimitive,\n positions: [\n xmin, ymin, zmin,\n xmin, ymin, zmax,\n xmin, ymax, zmin,\n xmin, ymax, zmax,\n xmax, ymin, zmin,\n xmax, ymin, zmax,\n xmax, ymax, zmin,\n xmax, ymax, zmax\n ],\n indices: [\n 0, 1,\n 1, 3,\n 3, 2,\n 2, 0,\n 4, 5,\n 5, 7,\n 7, 6,\n 6, 4,\n 0, 4,\n 1, 5,\n 2, 6,\n 3, 7\n ]\n });\n}\n\n\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * Creates a cylinder-shaped geometry.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a cylinder-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n *\n * ````\n *\n * @function buildCylinderGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radiusTop=1] Radius of top.\n * @param [cfg.radiusBottom=1] Radius of bottom.\n * @param [cfg.height=1] Height.\n * @param [cfg.radialSegments=60] Number of horizontal segments.\n * @param [cfg.heightSegments=1] Number of vertical segments.\n * @param [cfg.openEnded=false] Whether or not the cylinder has solid caps on the ends.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildCylinderGeometry(cfg: {\n radiusBottom: number;\n center: (number[] | Float32Array | Float64Array);\n radialSegments: number;\n heightSegments: number;\n openEnded: boolean;\n radiusTop: number;\n height: number\n} = {\n radiusTop: 1,\n radiusBottom: 1,\n height: 1,\n radialSegments: 60,\n heightSegments: 1,\n openEnded: false,\n center: [0, 0, 0]\n}): GeometryArrays {\n\n let radiusTop = cfg.radiusTop || 1;\n if (radiusTop < 0) {\n console.error(\"negative radiusTop not allowed - will invert\");\n radiusTop *= -1;\n }\n\n let radiusBottom = cfg.radiusBottom || 1;\n if (radiusBottom < 0) {\n console.error(\"negative radiusBottom not allowed - will invert\");\n radiusBottom *= -1;\n }\n\n let height = cfg.height || 1;\n if (height < 0) {\n console.error(\"negative height not allowed - will invert\");\n height *= -1;\n }\n\n let radialSegments = cfg.radialSegments || 32;\n if (radialSegments < 0) {\n console.error(\"negative radialSegments not allowed - will invert\");\n radialSegments *= -1;\n }\n if (radialSegments < 3) {\n radialSegments = 3;\n }\n\n let heightSegments = cfg.heightSegments || 1;\n if (heightSegments < 0) {\n console.error(\"negative heightSegments not allowed - will invert\");\n heightSegments *= -1;\n }\n if (heightSegments < 1) {\n heightSegments = 1;\n }\n\n const openEnded = cfg.openEnded;\n\n let center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const heightHalf = height / 2;\n const heightLength = height / heightSegments;\n const radialAngle = (2.0 * Math.PI / radialSegments);\n const radialLength = 1.0 / radialSegments;\n //var nextRadius = this._radiusBottom;\n const radiusChange = (radiusTop - radiusBottom) / heightSegments;\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let h;\n let i;\n\n let x;\n let z;\n\n let currentRadius;\n let currentHeight;\n\n let first;\n let second;\n\n let startIndex;\n let tu;\n let tv;\n\n // create vertices\n const normalY = (90.0 - (Math.atan(height / (radiusBottom - radiusTop))) * 180 / Math.PI) / 90.0;\n\n for (h = 0; h <= heightSegments; h++) {\n currentRadius = radiusTop - h * radiusChange;\n currentHeight = heightHalf - h * heightLength;\n\n for (i = 0; i <= radialSegments; i++) {\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n\n normals.push(currentRadius * x);\n normals.push(normalY); //todo\n normals.push(currentRadius * z);\n\n uvs.push((i * radialLength));\n uvs.push(h * 1 / heightSegments);\n\n positions.push((currentRadius * x) + centerX);\n positions.push((currentHeight) + centerY);\n positions.push((currentRadius * z) + centerZ);\n }\n }\n\n // create faces\n for (h = 0; h < heightSegments; h++) {\n for (i = 0; i <= radialSegments; i++) {\n\n first = h * (radialSegments + 1) + i;\n second = first + radialSegments;\n\n indices.push(first);\n indices.push(second);\n indices.push(second + 1);\n\n indices.push(first);\n indices.push(second + 1);\n indices.push(first + 1);\n }\n }\n\n // create top cap\n if (!openEnded && radiusTop > 0) {\n startIndex = (positions.length / 3);\n\n // top center\n normals.push(0.0);\n normals.push(1.0);\n normals.push(0.0);\n\n uvs.push(0.5);\n uvs.push(0.5);\n\n positions.push(0 + centerX);\n positions.push(heightHalf + centerY);\n positions.push(0 + centerZ);\n\n // top triangle fan\n for (i = 0; i <= radialSegments; i++) {\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n tu = (0.5 * Math.sin(i * radialAngle)) + 0.5;\n tv = (0.5 * Math.cos(i * radialAngle)) + 0.5;\n\n normals.push(radiusTop * x);\n normals.push(1.0);\n normals.push(radiusTop * z);\n\n uvs.push(tu);\n uvs.push(tv);\n\n positions.push((radiusTop * x) + centerX);\n positions.push((heightHalf) + centerY);\n positions.push((radiusTop * z) + centerZ);\n }\n\n for (i = 0; i < radialSegments; i++) {\n first = startIndex + 1 + i;\n\n indices.push(first);\n indices.push(first + 1);\n indices.push(startIndex);\n }\n }\n\n // create bottom cap\n if (!openEnded && radiusBottom > 0) {\n\n startIndex = (positions.length / 3);\n\n // top center\n normals.push(0.0);\n normals.push(-1.0);\n normals.push(0.0);\n\n uvs.push(0.5);\n uvs.push(0.5);\n\n positions.push(0 + centerX);\n positions.push(0 - heightHalf + centerY);\n positions.push(0 + centerZ);\n\n // top triangle fan\n for (i = 0; i <= radialSegments; i++) {\n\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n\n tu = (0.5 * Math.sin(i * radialAngle)) + 0.5;\n tv = (0.5 * Math.cos(i * radialAngle)) + 0.5;\n\n normals.push(radiusBottom * x);\n normals.push(-1.0);\n normals.push(radiusBottom * z);\n\n uvs.push(tu);\n uvs.push(tv);\n\n positions.push((radiusBottom * x) + centerX);\n positions.push((0 - heightHalf) + centerY);\n positions.push((radiusBottom * z) + centerZ);\n }\n\n for (i = 0; i < radialSegments; i++) {\n first = startIndex + 1 + i;\n indices.push(startIndex);\n indices.push(first + 1);\n indices.push(first);\n }\n }\n\n return utils.apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * Creates a sphere-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * ````javascript\n\n * ````\n *\n * @function buildSphereGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radius=1] Radius.\n * @param [cfg.heightSegments=24] Number of latitudinal bands.\n * @param {Number} [cfg.widthSegments=18] Number of longitudinal bands.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildSphereGeometry(cfg: {\n center: number[];\n heightSegments: number;\n radius: number;\n widthSegments: number\n} = {\n heightSegments: 18,\n widthSegments: 18,\n radius: 1,\n center: [0, 0, 0]\n}) : GeometryArrays {\n\n const centerX = cfg.center ? cfg.center[0] : 0;\n const centerY = cfg.center ? cfg.center[1] : 0;\n const centerZ = cfg.center ? cfg.center[2] : 0;\n\n let radius = cfg.radius || 1;\n if (radius < 0) {\n console.error(\"negative radius not allowed - will invert\");\n radius *= -1;\n }\n\n let heightSegments = cfg.heightSegments || 18;\n if (heightSegments < 0) {\n console.error(\"negative heightSegments not allowed - will invert\");\n heightSegments *= -1;\n }\n heightSegments = Math.floor(heightSegments);\n if (heightSegments < 18) {\n heightSegments = 18;\n }\n\n let widthSegments = cfg.widthSegments || 18;\n if (widthSegments < 0) {\n console.error(\"negative widthSegments not allowed - will invert\");\n widthSegments *= -1;\n }\n widthSegments = Math.floor(widthSegments);\n if (widthSegments < 18) {\n widthSegments = 18;\n }\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let i;\n let j;\n\n let theta;\n let sinTheta;\n let cosTheta;\n\n let phi;\n let sinPhi;\n let cosPhi;\n\n let x;\n let y;\n let z;\n\n let u;\n let v;\n\n let first;\n let second;\n\n for (i = 0; i <= heightSegments; i++) {\n\n theta = i * Math.PI / heightSegments;\n sinTheta = Math.sin(theta);\n cosTheta = Math.cos(theta);\n\n for (j = 0; j <= widthSegments; j++) {\n\n phi = j * 2 * Math.PI / widthSegments;\n sinPhi = Math.sin(phi);\n cosPhi = Math.cos(phi);\n\n x = cosPhi * sinTheta;\n y = cosTheta;\n z = sinPhi * sinTheta;\n u = 1.0 - j / widthSegments;\n v = i / heightSegments;\n\n normals.push(x);\n normals.push(y);\n normals.push(z);\n\n uvs.push(u);\n uvs.push(v);\n\n positions.push(centerX + radius * x);\n positions.push(centerY + radius * y);\n positions.push(centerZ + radius * z);\n }\n }\n\n for (i = 0; i < heightSegments; i++) {\n for (j = 0; j < widthSegments; j++) {\n\n first = (i * (widthSegments + 1)) + j;\n second = first + widthSegments + 1;\n\n indices.push(first + 1);\n indices.push(second + 1);\n indices.push(second);\n indices.push(first + 1);\n indices.push(second);\n indices.push(first);\n }\n }\n\n return utils.apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "import type {GeometryArrays} from \"./GeometryArrays\";\nimport {apply} from \"@xeokit/utils\";\nimport {normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n\n/**\n * Creates a torus-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * ````javascript\n\n * ````\n *\n * @function buildTorusGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radius=1] The overall radius.\n * @param [cfg.tube=0.3] The tube radius.\n * @param [cfg.radialSegments=32] The number of radial segments.\n * @param [cfg.tubeSegments=24] The number of tubular segments.\n * @param [cfg.arc=Math.PI*0.5] The length of the arc in radians, where Math.PI*2 is a closed torus.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildTorusGeometry(cfg: {\n tube?: number;\n arc?: number;\n center?: number[];\n radialSegments?: number;\n radius?: number;\n tubeSegments?: number\n} = {\n radius: 0,\n tube: 0,\n radialSegments: 0,\n tubeSegments: 0,\n arc: 0,\n center: [0, 0, 0]\n}): GeometryArrays {\n\n let radius = cfg.radius || 1;\n if (radius < 0) {\n console.error(\"negative radius not allowed - will invert\");\n radius *= -1;\n }\n radius *= 0.5;\n\n let tube = cfg.tube || 0.3;\n if (tube < 0) {\n console.error(\"negative tube not allowed - will invert\");\n tube *= -1;\n }\n\n let radialSegments = cfg.radialSegments || 32;\n if (radialSegments < 0) {\n console.error(\"negative radialSegments not allowed - will invert\");\n radialSegments *= -1;\n }\n if (radialSegments < 4) {\n radialSegments = 4;\n }\n\n let tubeSegments = cfg.tubeSegments || 24;\n if (tubeSegments < 0) {\n console.error(\"negative tubeSegments not allowed - will invert\");\n tubeSegments *= -1;\n }\n if (tubeSegments < 4) {\n tubeSegments = 4;\n }\n\n let arc = cfg.arc || Math.PI * 2;\n if (arc < 0) {\n console.warn(\"negative arc not allowed - will invert\");\n arc *= -1;\n }\n if (arc > 360) {\n arc = 360;\n }\n\n const center = cfg.center;\n let centerX = center ? center[0] : 0;\n let centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let u;\n let v;\n let x;\n let y;\n let z;\n let vec;\n\n let i;\n let j;\n\n for (j = 0; j <= tubeSegments; j++) {\n for (i = 0; i <= radialSegments; i++) {\n\n u = i / radialSegments * arc;\n v = 0.785398 + (j / tubeSegments * Math.PI * 2);\n\n centerX = radius * Math.cos(u);\n centerY = radius * Math.sin(u);\n\n x = (radius + tube * Math.cos(v)) * Math.cos(u);\n y = (radius + tube * Math.cos(v)) * Math.sin(u);\n z = tube * Math.sin(v);\n\n positions.push(x + centerX);\n positions.push(y + centerY);\n positions.push(z + centerZ);\n\n uvs.push(1 - (i / radialSegments));\n uvs.push((j / tubeSegments));\n\n vec = normalizeVec3(subVec3([x, y, z], [centerX, centerY, centerZ], []), []);\n\n normals.push(vec[0]);\n normals.push(vec[1]);\n normals.push(vec[2]);\n }\n }\n\n let a;\n let b;\n let c;\n let d;\n\n for (j = 1; j <= tubeSegments; j++) {\n for (i = 1; i <= radialSegments; i++) {\n\n a = (radialSegments + 1) * j + i - 1;\n b = (radialSegments + 1) * (j - 1) + i - 1;\n c = (radialSegments + 1) * (j - 1) + i;\n d = (radialSegments + 1) * j + i;\n\n indices.push(a);\n indices.push(b);\n indices.push(c);\n\n indices.push(c);\n indices.push(d);\n indices.push(a);\n }\n }\n\n return apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n // normals: normals,\n // uv: uvs,\n indices: indices\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {LinesPrimitive} from \"@xeokit/constants\";\n\n\nconst letters = {\n // @ts-ignore\n ' ': {width: 16, points: []},\n '!': {\n width: 10, points: [\n [5, 21],\n [5, 7],\n [-1, -1],\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n '\"': {\n width: 16, points: [\n [4, 21],\n [4, 14],\n [-1, -1],\n [12, 21],\n [12, 14]\n ]\n },\n '#': {\n width: 21, points: [\n [11, 25],\n [4, -7],\n [-1, -1],\n [17, 25],\n [10, -7],\n [-1, -1],\n [4, 12],\n [18, 12],\n [-1, -1],\n [3, 6],\n [17, 6]\n ]\n },\n '$': {\n width: 20, points: [\n [8, 25],\n [8, -4],\n [-1, -1],\n [12, 25],\n [12, -4],\n [-1, -1],\n [17, 18],\n [15, 20],\n [12, 21],\n [8, 21],\n [5, 20],\n [3, 18],\n [3, 16],\n [4, 14],\n [5, 13],\n [7, 12],\n [13, 10],\n [15, 9],\n [16, 8],\n [17, 6],\n [17, 3],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [3, 3]\n ]\n },\n '%': {\n width: 24, points: [\n [21, 21],\n [3, 0],\n [-1, -1],\n [8, 21],\n [10, 19],\n [10, 17],\n [9, 15],\n [7, 14],\n [5, 14],\n [3, 16],\n [3, 18],\n [4, 20],\n [6, 21],\n [8, 21],\n [10, 20],\n [13, 19],\n [16, 19],\n [19, 20],\n [21, 21],\n [-1, -1],\n [17, 7],\n [15, 6],\n [14, 4],\n [14, 2],\n [16, 0],\n [18, 0],\n [20, 1],\n [21, 3],\n [21, 5],\n [19, 7],\n [17, 7]\n ]\n },\n '&': {\n width: 26, points: [\n [23, 12],\n [23, 13],\n [22, 14],\n [21, 14],\n [20, 13],\n [19, 11],\n [17, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [7, 0],\n [5, 1],\n [4, 2],\n [3, 4],\n [3, 6],\n [4, 8],\n [5, 9],\n [12, 13],\n [13, 14],\n [14, 16],\n [14, 18],\n [13, 20],\n [11, 21],\n [9, 20],\n [8, 18],\n [8, 16],\n [9, 13],\n [11, 10],\n [16, 3],\n [18, 1],\n [20, 0],\n [22, 0],\n [23, 1],\n [23, 2]\n ]\n },\n '\\'': {\n width: 10, points: [\n [5, 19],\n [4, 20],\n [5, 21],\n [6, 20],\n [6, 18],\n [5, 16],\n [4, 15]\n ]\n },\n '(': {\n width: 14, points: [\n [11, 25],\n [9, 23],\n [7, 20],\n [5, 16],\n [4, 11],\n [4, 7],\n [5, 2],\n [7, -2],\n [9, -5],\n [11, -7]\n ]\n },\n ')': {\n width: 14, points: [\n [3, 25],\n [5, 23],\n [7, 20],\n [9, 16],\n [10, 11],\n [10, 7],\n [9, 2],\n [7, -2],\n [5, -5],\n [3, -7]\n ]\n },\n '*': {\n width: 16, points: [\n [8, 21],\n [8, 9],\n [-1, -1],\n [3, 18],\n [13, 12],\n [-1, -1],\n [13, 18],\n [3, 12]\n ]\n },\n '+': {\n width: 26, points: [\n [13, 18],\n [13, 0],\n [-1, -1],\n [4, 9],\n [22, 9]\n ]\n },\n ',': {\n width: 10, points: [\n [6, 1],\n [5, 0],\n [4, 1],\n [5, 2],\n [6, 1],\n [6, -1],\n [5, -3],\n [4, -4]\n ]\n },\n '-': {\n width: 26, points: [\n [4, 9],\n [22, 9]\n ]\n },\n '.': {\n width: 10, points: [\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n '/': {\n width: 22, points: [\n [20, 25],\n [2, -7]\n ]\n },\n '0': {\n width: 20, points: [\n [9, 21],\n [6, 20],\n [4, 17],\n [3, 12],\n [3, 9],\n [4, 4],\n [6, 1],\n [9, 0],\n [11, 0],\n [14, 1],\n [16, 4],\n [17, 9],\n [17, 12],\n [16, 17],\n [14, 20],\n [11, 21],\n [9, 21]\n ]\n },\n '1': {\n width: 20, points: [\n [6, 17],\n [8, 18],\n [11, 21],\n [11, 0]\n ]\n },\n '2': {\n width: 20, points: [\n [4, 16],\n [4, 17],\n [5, 19],\n [6, 20],\n [8, 21],\n [12, 21],\n [14, 20],\n [15, 19],\n [16, 17],\n [16, 15],\n [15, 13],\n [13, 10],\n [3, 0],\n [17, 0]\n ]\n },\n '3': {\n width: 20, points: [\n [5, 21],\n [16, 21],\n [10, 13],\n [13, 13],\n [15, 12],\n [16, 11],\n [17, 8],\n [17, 6],\n [16, 3],\n [14, 1],\n [11, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4]\n ]\n },\n '4': {\n width: 20, points: [\n [13, 21],\n [3, 7],\n [18, 7],\n [-1, -1],\n [13, 21],\n [13, 0]\n ]\n },\n '5': {\n width: 20, points: [\n [15, 21],\n [5, 21],\n [4, 12],\n [5, 13],\n [8, 14],\n [11, 14],\n [14, 13],\n [16, 11],\n [17, 8],\n [17, 6],\n [16, 3],\n [14, 1],\n [11, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4]\n ]\n },\n '6': {\n width: 20, points: [\n [16, 18],\n [15, 20],\n [12, 21],\n [10, 21],\n [7, 20],\n [5, 17],\n [4, 12],\n [4, 7],\n [5, 3],\n [7, 1],\n [10, 0],\n [11, 0],\n [14, 1],\n [16, 3],\n [17, 6],\n [17, 7],\n [16, 10],\n [14, 12],\n [11, 13],\n [10, 13],\n [7, 12],\n [5, 10],\n [4, 7]\n ]\n },\n '7': {\n width: 20, points: [\n [17, 21],\n [7, 0],\n [-1, -1],\n [3, 21],\n [17, 21]\n ]\n },\n '8': {\n width: 20, points: [\n [8, 21],\n [5, 20],\n [4, 18],\n [4, 16],\n [5, 14],\n [7, 13],\n [11, 12],\n [14, 11],\n [16, 9],\n [17, 7],\n [17, 4],\n [16, 2],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4],\n [3, 7],\n [4, 9],\n [6, 11],\n [9, 12],\n [13, 13],\n [15, 14],\n [16, 16],\n [16, 18],\n [15, 20],\n [12, 21],\n [8, 21]\n ]\n },\n '9': {\n width: 20, points: [\n [16, 14],\n [15, 11],\n [13, 9],\n [10, 8],\n [9, 8],\n [6, 9],\n [4, 11],\n [3, 14],\n [3, 15],\n [4, 18],\n [6, 20],\n [9, 21],\n [10, 21],\n [13, 20],\n [15, 18],\n [16, 14],\n [16, 9],\n [15, 4],\n [13, 1],\n [10, 0],\n [8, 0],\n [5, 1],\n [4, 3]\n ]\n },\n ':': {\n width: 10, points: [\n [5, 14],\n [4, 13],\n [5, 12],\n [6, 13],\n [5, 14],\n [-1, -1],\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n ';': {\n width: 10, points: [\n [5, 14],\n [4, 13],\n [5, 12],\n [6, 13],\n [5, 14],\n [-1, -1],\n [6, 1],\n [5, 0],\n [4, 1],\n [5, 2],\n [6, 1],\n [6, -1],\n [5, -3],\n [4, -4]\n ]\n },\n '<': {\n width: 24, points: [\n [20, 18],\n [4, 9],\n [20, 0]\n ]\n },\n '=': {\n width: 26, points: [\n [4, 12],\n [22, 12],\n [-1, -1],\n [4, 6],\n [22, 6]\n ]\n },\n '>': {\n width: 24, points: [\n [4, 18],\n [20, 9],\n [4, 0]\n ]\n },\n '?': {\n width: 18, points: [\n [3, 16],\n [3, 17],\n [4, 19],\n [5, 20],\n [7, 21],\n [11, 21],\n [13, 20],\n [14, 19],\n [15, 17],\n [15, 15],\n [14, 13],\n [13, 12],\n [9, 10],\n [9, 7],\n [-1, -1],\n [9, 2],\n [8, 1],\n [9, 0],\n [10, 1],\n [9, 2]\n ]\n },\n '@': {\n width: 27, points: [\n [18, 13],\n [17, 15],\n [15, 16],\n [12, 16],\n [10, 15],\n [9, 14],\n [8, 11],\n [8, 8],\n [9, 6],\n [11, 5],\n [14, 5],\n [16, 6],\n [17, 8],\n [-1, -1],\n [12, 16],\n [10, 14],\n [9, 11],\n [9, 8],\n [10, 6],\n [11, 5],\n [-1, -1],\n [18, 16],\n [17, 8],\n [17, 6],\n [19, 5],\n [21, 5],\n [23, 7],\n [24, 10],\n [24, 12],\n [23, 15],\n [22, 17],\n [20, 19],\n [18, 20],\n [15, 21],\n [12, 21],\n [9, 20],\n [7, 19],\n [5, 17],\n [4, 15],\n [3, 12],\n [3, 9],\n [4, 6],\n [5, 4],\n [7, 2],\n [9, 1],\n [12, 0],\n [15, 0],\n [18, 1],\n [20, 2],\n [21, 3],\n [-1, -1],\n [19, 16],\n [18, 8],\n [18, 6],\n [19, 5]\n ]\n },\n 'A': {\n width: 18, points: [\n [9, 21],\n [1, 0],\n [-1, -1],\n [9, 21],\n [17, 0],\n [-1, -1],\n [4, 7],\n [14, 7]\n ]\n },\n 'B': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 15],\n [17, 13],\n [16, 12],\n [13, 11],\n [-1, -1],\n [4, 11],\n [13, 11],\n [16, 10],\n [17, 9],\n [18, 7],\n [18, 4],\n [17, 2],\n [16, 1],\n [13, 0],\n [4, 0]\n ]\n },\n 'C': {\n width: 21, points: [\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5]\n ]\n },\n 'D': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [11, 21],\n [14, 20],\n [16, 18],\n [17, 16],\n [18, 13],\n [18, 8],\n [17, 5],\n [16, 3],\n [14, 1],\n [11, 0],\n [4, 0]\n ]\n },\n 'E': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [17, 21],\n [-1, -1],\n [4, 11],\n [12, 11],\n [-1, -1],\n [4, 0],\n [17, 0]\n ]\n },\n 'F': {\n width: 18, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [17, 21],\n [-1, -1],\n [4, 11],\n [12, 11]\n ]\n },\n 'G': {\n width: 21, points: [\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [18, 8],\n [-1, -1],\n [13, 8],\n [18, 8]\n ]\n },\n 'H': {\n width: 22, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [18, 21],\n [18, 0],\n [-1, -1],\n [4, 11],\n [18, 11]\n ]\n },\n 'I': {\n width: 8, points: [\n [4, 21],\n [4, 0]\n ]\n },\n 'J': {\n width: 16, points: [\n [12, 21],\n [12, 5],\n [11, 2],\n [10, 1],\n [8, 0],\n [6, 0],\n [4, 1],\n [3, 2],\n [2, 5],\n [2, 7]\n ]\n },\n 'K': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [18, 21],\n [4, 7],\n [-1, -1],\n [9, 12],\n [18, 0]\n ]\n },\n 'L': {\n width: 17, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 0],\n [16, 0]\n ]\n },\n 'M': {\n width: 24, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [12, 0],\n [-1, -1],\n [20, 21],\n [12, 0],\n [-1, -1],\n [20, 21],\n [20, 0]\n ]\n },\n 'N': {\n width: 22, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [18, 0],\n [-1, -1],\n [18, 21],\n [18, 0]\n ]\n },\n 'O': {\n width: 22, points: [\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [19, 8],\n [19, 13],\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21]\n ]\n },\n 'P': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 14],\n [17, 12],\n [16, 11],\n [13, 10],\n [4, 10]\n ]\n },\n 'Q': {\n width: 22, points: [\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [19, 8],\n [19, 13],\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [-1, -1],\n [12, 4],\n [18, -2]\n ]\n },\n 'R': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 15],\n [17, 13],\n [16, 12],\n [13, 11],\n [4, 11],\n [-1, -1],\n [11, 11],\n [18, 0]\n ]\n },\n 'S': {\n width: 20, points: [\n [17, 18],\n [15, 20],\n [12, 21],\n [8, 21],\n [5, 20],\n [3, 18],\n [3, 16],\n [4, 14],\n [5, 13],\n [7, 12],\n [13, 10],\n [15, 9],\n [16, 8],\n [17, 6],\n [17, 3],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [3, 3]\n ]\n },\n 'T': {\n width: 16, points: [\n [8, 21],\n [8, 0],\n [-1, -1],\n [1, 21],\n [15, 21]\n ]\n },\n 'U': {\n width: 22, points: [\n [4, 21],\n [4, 6],\n [5, 3],\n [7, 1],\n [10, 0],\n [12, 0],\n [15, 1],\n [17, 3],\n [18, 6],\n [18, 21]\n ]\n },\n 'V': {\n width: 18, points: [\n [1, 21],\n [9, 0],\n [-1, -1],\n [17, 21],\n [9, 0]\n ]\n },\n 'W': {\n width: 24, points: [\n [2, 21],\n [7, 0],\n [-1, -1],\n [12, 21],\n [7, 0],\n [-1, -1],\n [12, 21],\n [17, 0],\n [-1, -1],\n [22, 21],\n [17, 0]\n ]\n },\n 'X': {\n width: 20, points: [\n [3, 21],\n [17, 0],\n [-1, -1],\n [17, 21],\n [3, 0]\n ]\n },\n 'Y': {\n width: 18, points: [\n [1, 21],\n [9, 11],\n [9, 0],\n [-1, -1],\n [17, 21],\n [9, 11]\n ]\n },\n 'Z': {\n width: 20, points: [\n [17, 21],\n [3, 0],\n [-1, -1],\n [3, 21],\n [17, 21],\n [-1, -1],\n [3, 0],\n [17, 0]\n ]\n },\n '[': {\n width: 14, points: [\n [4, 25],\n [4, -7],\n [-1, -1],\n [5, 25],\n [5, -7],\n [-1, -1],\n [4, 25],\n [11, 25],\n [-1, -1],\n [4, -7],\n [11, -7]\n ]\n },\n '\\\\': {\n width: 14, points: [\n [0, 21],\n [14, -3]\n ]\n },\n ']': {\n width: 14, points: [\n [9, 25],\n [9, -7],\n [-1, -1],\n [10, 25],\n [10, -7],\n [-1, -1],\n [3, 25],\n [10, 25],\n [-1, -1],\n [3, -7],\n [10, -7]\n ]\n },\n '^': {\n width: 16, points: [\n [6, 15],\n [8, 18],\n [10, 15],\n [-1, -1],\n [3, 12],\n [8, 17],\n [13, 12],\n [-1, -1],\n [8, 17],\n [8, 0]\n ]\n },\n '_': {\n width: 16, points: [\n [0, -2],\n [16, -2]\n ]\n },\n '`': {\n width: 10, points: [\n [6, 21],\n [5, 20],\n [4, 18],\n [4, 16],\n [5, 15],\n [6, 16],\n [5, 17]\n ]\n },\n 'a': {\n width: 19, points: [\n [15, 14],\n [15, 0],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'b': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 11],\n [6, 13],\n [8, 14],\n [11, 14],\n [13, 13],\n [15, 11],\n [16, 8],\n [16, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [8, 0],\n [6, 1],\n [4, 3]\n ]\n },\n 'c': {\n width: 18, points: [\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'd': {\n width: 19, points: [\n [15, 21],\n [15, 0],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'e': {\n width: 18, points: [\n [3, 8],\n [15, 8],\n [15, 10],\n [14, 12],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'f': {\n width: 12, points: [\n [10, 21],\n [8, 21],\n [6, 20],\n [5, 17],\n [5, 0],\n [-1, -1],\n [2, 14],\n [9, 14]\n ]\n },\n 'g': {\n width: 19, points: [\n [15, 14],\n [15, -2],\n [14, -5],\n [13, -6],\n [11, -7],\n [8, -7],\n [6, -6],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'h': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0]\n ]\n },\n 'i': {\n width: 8, points: [\n [3, 21],\n [4, 20],\n [5, 21],\n [4, 22],\n [3, 21],\n [-1, -1],\n [4, 14],\n [4, 0]\n ]\n },\n 'j': {\n width: 10, points: [\n [5, 21],\n [6, 20],\n [7, 21],\n [6, 22],\n [5, 21],\n [-1, -1],\n [6, 14],\n [6, -3],\n [5, -6],\n [3, -7],\n [1, -7]\n ]\n },\n 'k': {\n width: 17, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [14, 14],\n [4, 4],\n [-1, -1],\n [8, 8],\n [15, 0]\n ]\n },\n 'l': {\n width: 8, points: [\n [4, 21],\n [4, 0]\n ]\n },\n 'm': {\n width: 30, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0],\n [-1, -1],\n [15, 10],\n [18, 13],\n [20, 14],\n [23, 14],\n [25, 13],\n [26, 10],\n [26, 0]\n ]\n },\n 'n': {\n width: 19, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0]\n ]\n },\n 'o': {\n width: 19, points: [\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3],\n [16, 6],\n [16, 8],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14]\n ]\n },\n 'p': {\n width: 19, points: [\n [4, 14],\n [4, -7],\n [-1, -1],\n [4, 11],\n [6, 13],\n [8, 14],\n [11, 14],\n [13, 13],\n [15, 11],\n [16, 8],\n [16, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [8, 0],\n [6, 1],\n [4, 3]\n ]\n },\n 'q': {\n width: 19, points: [\n [15, 14],\n [15, -7],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'r': {\n width: 13, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 8],\n [5, 11],\n [7, 13],\n [9, 14],\n [12, 14]\n ]\n },\n 's': {\n width: 17, points: [\n [14, 11],\n [13, 13],\n [10, 14],\n [7, 14],\n [4, 13],\n [3, 11],\n [4, 9],\n [6, 8],\n [11, 7],\n [13, 6],\n [14, 4],\n [14, 3],\n [13, 1],\n [10, 0],\n [7, 0],\n [4, 1],\n [3, 3]\n ]\n },\n 't': {\n width: 12, points: [\n [5, 21],\n [5, 4],\n [6, 1],\n [8, 0],\n [10, 0],\n [-1, -1],\n [2, 14],\n [9, 14]\n ]\n },\n 'u': {\n width: 19, points: [\n [4, 14],\n [4, 4],\n [5, 1],\n [7, 0],\n [10, 0],\n [12, 1],\n [15, 4],\n [-1, -1],\n [15, 14],\n [15, 0]\n ]\n },\n 'v': {\n width: 16, points: [\n [2, 14],\n [8, 0],\n [-1, -1],\n [14, 14],\n [8, 0]\n ]\n },\n 'w': {\n width: 22, points: [\n [3, 14],\n [7, 0],\n [-1, -1],\n [11, 14],\n [7, 0],\n [-1, -1],\n [11, 14],\n [15, 0],\n [-1, -1],\n [19, 14],\n [15, 0]\n ]\n },\n 'x': {\n width: 17, points: [\n [3, 14],\n [14, 0],\n [-1, -1],\n [14, 14],\n [3, 0]\n ]\n },\n 'y': {\n width: 16, points: [\n [2, 14],\n [8, 0],\n [-1, -1],\n [14, 14],\n [8, 0],\n [6, -4],\n [4, -6],\n [2, -7],\n [1, -7]\n ]\n },\n 'z': {\n width: 17, points: [\n [14, 14],\n [3, 0],\n [-1, -1],\n [3, 14],\n [14, 14],\n [-1, -1],\n [3, 0],\n [14, 0]\n ]\n },\n '{': {\n width: 14, points: [\n [9, 25],\n [7, 24],\n [6, 23],\n [5, 21],\n [5, 19],\n [6, 17],\n [7, 16],\n [8, 14],\n [8, 12],\n [6, 10],\n [-1, -1],\n [7, 24],\n [6, 22],\n [6, 20],\n [7, 18],\n [8, 17],\n [9, 15],\n [9, 13],\n [8, 11],\n [4, 9],\n [8, 7],\n [9, 5],\n [9, 3],\n [8, 1],\n [7, 0],\n [6, -2],\n [6, -4],\n [7, -6],\n [-1, -1],\n [6, 8],\n [8, 6],\n [8, 4],\n [7, 2],\n [6, 1],\n [5, -1],\n [5, -3],\n [6, -5],\n [7, -6],\n [9, -7]\n ]\n },\n '|': {\n width: 8, points: [\n [4, 25],\n [4, -7]\n ]\n },\n '}': {\n width: 14, points: [\n [5, 25],\n [7, 24],\n [8, 23],\n [9, 21],\n [9, 19],\n [8, 17],\n [7, 16],\n [6, 14],\n [6, 12],\n [8, 10],\n [-1, -1],\n [7, 24],\n [8, 22],\n [8, 20],\n [7, 18],\n [6, 17],\n [5, 15],\n [5, 13],\n [6, 11],\n [10, 9],\n [6, 7],\n [5, 5],\n [5, 3],\n [6, 1],\n [7, 0],\n [8, -2],\n [8, -4],\n [7, -6],\n [-1, -1],\n [8, 8],\n [6, 6],\n [6, 4],\n [7, 2],\n [8, 1],\n [9, -1],\n [9, -3],\n [8, -5],\n [7, -6],\n [5, -7]\n ]\n },\n '~': {\n width: 24, points: [\n [3, 6],\n [3, 8],\n [4, 11],\n [6, 12],\n [8, 12],\n [10, 11],\n [14, 8],\n [16, 7],\n [18, 7],\n [20, 8],\n [21, 10],\n [-1, -1],\n [3, 8],\n [4, 10],\n [6, 11],\n [8, 11],\n [10, 10],\n [14, 7],\n [16, 6],\n [18, 6],\n [20, 7],\n [21, 10],\n [21, 12]\n ]\n }\n};\n\n/**\n * Creates wireframe vector text {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n\n * ````javascript\n *\n * ````\n *\n * @function buildVectorTextGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.origin] 3D point indicating the top left corner.\n * @param [cfg.size=1] Size of each character.\n * @param [cfg.text=\"\"] The text.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildVectorTextGeometry(cfg: {\n size: number;\n origin: number[];\n text: string\n} = {\n origin: [0, 0, 0],\n size: 1,\n text: \"\"\n}): GeometryArrays {\n\n var origin = cfg.origin || [0, 0, 0];\n var xOrigin = origin[0];\n var yOrigin = origin[1];\n var zOrigin = origin[2];\n var size = cfg.size || 1;\n\n var positions = [];\n var indices = [];\n var text = cfg.text;\n if (utils.isNumeric(text)) {\n text = \"\" + text;\n }\n var lines = (text || \"\").split(\"\\n\");\n var countVerts = 0;\n var y = 0;\n var x;\n var str;\n var len;\n var c;\n var mag = 1.0 / 25.0;\n var penUp;\n var p1;\n var p2;\n var needLine;\n var pointsLen;\n var a;\n\n for (var iLine = 0; iLine < lines.length; iLine++) {\n\n x = 0;\n str = lines[iLine];\n len = str.length;\n\n for (var i = 0; i < len; i++) {\n\n // @ts-ignore\n c = letters[str.charAt(i)];\n\n if (c === '\\n') {\n //alert(\"newline\");\n }\n\n if (!c) {\n continue;\n }\n\n penUp = 1;\n p1 = -1;\n p2 = -1;\n needLine = false;\n\n pointsLen = c.points.length;\n\n for (var j = 0; j < pointsLen; j++) {\n a = c.points[j];\n\n if (a[0] === -1 && a[1] === -1) {\n penUp = 1;\n needLine = false;\n continue;\n }\n\n positions.push((x + (a[0] * size) * mag) + xOrigin);\n positions.push((y + (a[1] * size) * mag) + yOrigin);\n positions.push(0 + zOrigin);\n\n if (p1 === -1) {\n p1 = countVerts;\n } else if (p2 === -1) {\n p2 = countVerts;\n } else {\n p1 = p2;\n p2 = countVerts;\n }\n countVerts++;\n\n if (penUp) {\n penUp = false;\n\n } else {\n indices.push(p1);\n indices.push(p2);\n }\n\n needLine = true;\n }\n x += c.width * mag * size;\n\n }\n y -= 35 * mag * size;\n }\n\n return utils.apply(cfg, {\n primitive: LinesPrimitive,\n positions: positions,\n indices: indices\n });\n}\n\n\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n/**\n * Creates a plane-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a plane-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n* TODO\n * ````\n *\n * @function buildPlaneGeometry\n * @param cfg Configs\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.xSize=1] Dimension on the X-axis.\n * @param [cfg.zSize=1] Dimension on the Z-axis.\n * @param [cfg.xSegments=1] Number of segments on the X-axis.\n * @param [cfg.zSegments=1] Number of segments on the Z-axis.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildPlaneGeometry(cfg = {\n xSize: 0,\n zSize: 0,\n xSegments: 1,\n center: [0, 0, 0]\n\n}): GeometryArrays {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n console.error(\"negative xSize not allowed - will invert\");\n xSize *= -1;\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n console.error(\"negative zSize not allowed - will invert\");\n zSize *= -1;\n }\n\n let xSegments = cfg.xSegments || 1;\n if (xSegments < 0) {\n console.error(\"negative xSegments not allowed - will invert\");\n xSegments *= -1;\n }\n if (xSegments < 1) {\n xSegments = 1;\n }\n\n let zSegments = cfg.xSegments || 1;\n if (zSegments < 0) {\n console.error(\"negative zSegments not allowed - will invert\");\n zSegments *= -1;\n }\n if (zSegments < 1) {\n zSegments = 1;\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const halfWidth = xSize / 2;\n const halfHeight = zSize / 2;\n\n const planeX = Math.floor(xSegments) || 1;\n const planeZ = Math.floor(zSegments) || 1;\n\n const planeX1 = planeX + 1;\n const planeZ1 = planeZ + 1;\n\n const segmentWidth = xSize / planeX;\n const segmentHeight = zSize / planeZ;\n\n const positions = new Float32Array(planeX1 * planeZ1 * 3);\n const normals = new Float32Array(planeX1 * planeZ1 * 3);\n const uvs = new Float32Array(planeX1 * planeZ1 * 2);\n\n let offset = 0;\n let offset2 = 0;\n\n let iz;\n let ix;\n let x;\n let a;\n let b;\n let c;\n let d;\n\n for (iz = 0; iz < planeZ1; iz++) {\n\n const z = iz * segmentHeight - halfHeight;\n\n for (ix = 0; ix < planeX1; ix++) {\n\n x = ix * segmentWidth - halfWidth;\n\n positions[offset] = x + centerX;\n positions[offset + 1] = centerY;\n positions[offset + 2] = -z + centerZ;\n\n normals[offset + 2] = -1;\n\n uvs[offset2] = (ix) / planeX;\n uvs[offset2 + 1] = ((planeZ - iz) / planeZ);\n\n offset += 3;\n offset2 += 2;\n }\n }\n\n offset = 0;\n\n const indices = new ((positions.length / 3) > 65535 ? Uint32Array : Uint16Array)(planeX * planeZ * 6);\n\n for (iz = 0; iz < planeZ; iz++) {\n\n for (ix = 0; ix < planeX; ix++) {\n\n a = ix + planeX1 * iz;\n b = ix + planeX1 * (iz + 1);\n c = (ix + 1) + planeX1 * (iz + 1);\n d = (ix + 1) + planeX1 * iz;\n\n indices[offset] = d;\n indices[offset + 1] = b;\n indices[offset + 2] = a;\n\n indices[offset + 3] = d;\n indices[offset + 4] = c;\n indices[offset + 5] = b;\n\n offset += 6;\n }\n }\n\n return utils.apply(cfg, {\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Flocale.svg)](https://badge.fury.io/js/%40xeokit%2Flocale)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/locale/badge)](https://www.jsdelivr.com/package/npm/@xeokit/locale)\n * \n * \n *\n * # xeokit Localization Service\n *\n * ---\n *\n * ### Repository of locale-specific translations for words and phrases\n *\n * ---\n *\n * A container of string translations (\"messages\") for various locales.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/locale\n * ````\n * ## Usage\n *\n * In the example below, we'll create a {@link @xeokit/locale!LocaleService | LocaleService} instance, configured with some English, M\u0101ori and French\n * translations for a NavCube widget.\n *\n * Our LocaleServe will provide translations for the following terms:\n *\n * * \"NavCube.front\"\n * * \"NavCube.back\"\n * * \"NavCube.top\"\n * * \"NavCube.bottom\"\n * * \"NavCube.left\"\n * * \"NavCube.right\"\n *\n * These terms are effectively paths that map to translations for the currently active locale.\n *\n * For example, if the {@link @xeokit/locale!LocaleService | LocaleService}'s locale is set to \"fr\", then the path \"NavCube.back\" will drill down\n * into ````messages->fr->NavCube->front```` and fetch \"Arri\u00E8re\".\n *\n * ````javascript\n * import {LocaleService} from \"@xeokit/locale\";\n *\n * const localeService= new LocaleService({\n * messages: {\n * \"en\": { // English\n * \"NavCube\": {\n * \"front\": \"Front\",\n * \"back\": \"Back\",\n * \"top\": \"Top\",\n * \"bottom\": \"Bottom\",\n * \"left\": \"Left\",\n * \"right\": \"Right\"\n * }\n * },\n * \"mi\": { // M\u0101ori\n * \"NavCube\": {\n * \"front\": \"Mua\",\n * \"back\": \"Tuar\u0101\",\n * \"top\": \"Runga\",\n * \"bottom\": \"Raro\",\n * \"left\": \"Mau\u012B\",\n * \"right\": \"Tika\"\n * }\n * },\n * \"fr\": { // Francais\n * \"NavCube\": {\n * \"front\": \"Avant\",\n * \"back\": \"Arri\u00E8re\",\n * \"top\": \"Sup\u00E9rieur\",\n * \"bottom\": \"Inf\u00E9rieur\",\n * \"left\": \"Gauche\",\n * \"right\": \"Droit\"\n * }\n * }\n * },\n * locale: \"en\"\n * })\n * });\n * ````\n *\n * We can dynamically switch to a different locale at any time:\n *\n * ````javascript\n * localeService.locale = \"mi\"; // Switch to M\u0101ori\n * ````\n *\n * We can load new translations at any time:\n *\n * ````javascript\n * localeService.loadMessages({\n * \"jp\": { // Japanese\n * \"NavCube\": {\n * \"front\": \"\u524D\u90E8\",\n * \"back\": \"\u88CF\",\n * \"top\": \"\u4E0A\",\n * \"bottom\": \"\u5E95\",\n * \"left\": \"\u5DE6\",\n * \"right\": \"\u53F3\"\n * }\n * }\n * });\n * ````\n *\n * And we can clear the translations if needed:\n *\n * ````javascript\n * localeService.clearMessages();\n * ````\n *\n * We can also get an event from the {@link @xeokit/locale!LocaleService | LocaleService} whenever we switch locales or load messages, which is useful\n * for triggering UI elements to refresh themselves with updated translations:\n *\n * ````javascript\n * localeService.onUpdated.subscribe(() => {\n * console.log( viewer.localeService.translate(\"NavCube.left\") );\n * });\n * ````\n *\n * @module @xeokit/locale\n */\nexport * from \"./LocaleService\";", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {EventEmitter} from \"@xeokit/core\";\n\n/**\n * The localization service for a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/locale\"} for usage.\n */\nclass LocaleService {\n\n /**\n * Emits an event each time the locale translations have updated.\n *\n * @event\n */\n readonly onUpdated: EventEmitter;\n #messages: { [key: string]: any };\n #locales: string[];\n #locale: string = \"en\";\n\n /**\n * Constructs a LocaleService.\n *\n * @param cfg LocaleService configuration\n * @param cfg.messages Set of locale translations\n * @param cfg.locale Initial locale\n */\n constructor(cfg: {\n messages?: any,\n locale?: string\n } = {\n messages: {},\n locale: \"\"\n }) {\n this.onUpdated = new EventEmitter(new EventDispatcher());\n this.messages = cfg.messages;\n this.locale = cfg.locale;\n }\n\n /**\n * Replaces the current set of locale translations.\n *\n * * Fires an \"updated\" event when done.\n * * Automatically refreshes any plugins that depend on the translations.\n * * Does not change the current locale.\n *\n * ## Usage\n *\n * ````javascript\n * viewer.localeService.setMessages({\n * messages: {\n * \"en\": { // English\n * \"NavCube\": {\n * \"front\": \"Front\",\n * \"back\": \"Back\",\n * \"top\": \"Top\",\n * \"bottom\": \"Bottom\",\n * \"left\": \"Left\",\n * \"right\": \"Right\"\n * }\n * },\n * \"mi\": { // M\u0101ori\n * \"NavCube\": {\n * \"front\": \"Mua\",\n * \"back\": \"Tuar\u0101\",\n * \"top\": \"Runga\",\n * \"bottom\": \"Raro\",\n * \"left\": \"Mau\u012B\",\n * \"right\": \"Tika\"\n * }\n * }\n * }\n * });\n * ````\n *\n * @param messages The new translations.\n */\n set messages(messages: { [key: string]: any }) {\n this.#messages = messages || {};\n this.#locales = Object.keys(this.#messages);\n this.onUpdated.dispatch(this, this.#locale);\n }\n\n /**\n * Gets the list of available locales.\n *\n * These are derived from the currently configured set of translations.\n *\n * @returns The list of available locales.\n */\n get locales(): string[] {\n return this.#locales;\n }\n\n /**\n * Gets the current locale.\n *\n * @returns {String} The current locale.\n */\n get locale(): string {\n return this.#locale;\n }\n\n /**\n * Sets the current locale.\n *\n * * Fires an \"updated\" event when done.\n * * The given locale does not need to be in the list of available locales returned by {@link LocaleService.locales}, since\n * this method assumes that you may want to load the locales at a later point.\n * * Automatically refreshes any plugins that depend on the translations.\n * * We can then get translations for the locale, if translations have been loaded for it, via {@link LocaleService.translate} and {@link LocaleService.translatePlurals}.\n *\n * @param locale The new current locale.\n */\n set locale(locale: string|undefined) {\n locale = locale || \"de\";\n if (this.#locale === locale) {\n return;\n }\n this.#locale = locale;\n this.onUpdated.dispatch(this, this.#locale);\n }\n\n /**\n * Loads a new set of locale translations, adding them to the existing translations.\n *\n * * Fires an \"updated\" event when done.\n * * Automatically refreshes any plugins that depend on the translations.\n * * Does not change the current locale.\n *\n * ## Usage\n *\n * ````javascript\n * viewer.localeService.loadMessages({\n * \"jp\": { // Japanese\n * \"NavCube\": {\n * \"front\": \"\u524D\u90E8\",\n * \"back\": \"\u88CF\",\n * \"top\": \"\u4E0A\",\n * \"bottom\": \"\u5E95\",\n * \"left\": \"\u5DE6\",\n * \"right\": \"\u53F3\"\n * }\n * }\n * });\n * ````\n *\n * @param messages The new translations.\n */\n loadMessages(messages: { [key: string]: any } = {}) {\n for (let locale in messages) {\n this.#messages[locale] = messages[locale];\n }\n this.messages = this.#messages;\n }\n\n /**\n * Clears all locale translations.\n *\n * * Fires an \"updated\" event when done.\n * * Does not change the current locale.\n * * Automatically refreshes any plugins that depend on the translations, which will cause those\n * plugins to fall back on their internal hard-coded text values, since this method removes all\n * our translations.\n */\n clearMessages() {\n this.messages = {};\n }\n\n /**\n * Translates the given string according to the current locale.\n *\n * Returns null if no translation can be found.\n *\n * @param msg String to translate.\n * @param args Extra parameters.\n * @returns Translated string if found, else null.\n */\n translate(msg: string, args?: any): string | null {\n const localeMessages = this.#messages[this.#locale];\n if (!localeMessages) {\n return null;\n }\n const localeMessage = resolvePath(msg, localeMessages);\n if (localeMessage) {\n if (args) {\n return vsprintf(localeMessage, args);\n }\n return localeMessage;\n }\n return null;\n }\n\n /**\n * Translates the given phrase according to the current locale.\n *\n * Returns null if no translation can be found.\n *\n * @param msg Phrase to translate.\n * @param count The plural number.\n * @param [args] Extra parameters.\n * @returns String|null Translated string if found, else null.\n */\n translatePlurals(msg: string, count: number, args: any): string | null {\n const localeMessages = this.#messages[this.#locale];\n if (!localeMessages) {\n return null;\n }\n let localeMessage = resolvePath(msg, localeMessages);\n count = parseInt(\"\" + count, 10);\n if (count === 0) {\n localeMessage = localeMessage.zero;\n } else {\n localeMessage = (count > 1) ? localeMessage.other : localeMessage.one;\n }\n if (!localeMessage) {\n return null;\n }\n localeMessage = vsprintf(localeMessage, [count]);\n if (args) {\n localeMessage = vsprintf(localeMessage, args);\n }\n return localeMessage;\n }\n}\n\nfunction resolvePath(key: string, json: any) {\n if (json[key]) {\n return json[key];\n }\n const parts = key.split(\".\");\n let obj = json;\n for (let i = 0, len = parts.length; obj && (i < len); i++) {\n const part = parts[i];\n obj = obj[part];\n }\n return obj;\n}\n\nfunction vsprintf(msg: string, args: any = []) {\n return msg.replace(/\\{\\{|\\}\\}|\\{(\\d+)\\}/g, function (m, n) {\n if (m === \"{{\") {\n return \"{\";\n }\n if (m === \"}}\") {\n return \"}\";\n }\n return args[n];\n });\n}\n\nexport {LocaleService};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdata.svg)](https://badge.fury.io/js/%40xeokit%2Fdata)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/data/badge)](https://www.jsdelivr.com/package/npm/@xeokit/data)\n *\n * \n *\n * # xeokit Semantic Data Model\n *\n * ---\n *\n * ### *The SDK's buildable, queryable, importable and exportable semantic data model*\n *\n * ---\n *\n * The xeokit SDK uses a generic entity-relationship data graph to manage model semantics. This graph includes entities,\n * properties, and relationships and is compatible with both the browser and NodeJS. It serves as a versatile tool for generating\n * models, converting between model formats, and navigating content within the model viewer.\n *\n * In more detail, the xeokit SDK provides a {@link @xeokit/data!Data | Data} container class that holds\n * {@link @xeokit/data!DataModel | DataModels} consisting of {@link @xeokit/data!DataObject | DataObjects},\n * {@link @xeokit/data!PropertySet | PropertySets}, and\n * {@link @xeokit/data!Relationship | Relationships}, as shown in the diagram below.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNVMFunDAU_BX0Tu1qgxaW9QLnHBOlSm4VFwc7WVeAkTFV6Wr_vcZmu89A0nIBzxvPmzdGPkMpGYccyop23b2g74rWRcOE4qUWsgkenosmsI9lBPdU0_MVcrjiVPNHI1N9-epVOk5VeXp6_WG0ulmtrExxhtWjRudB0m32sFbJlis9vHC_cP2-LB1bd9i2YGixbLLewk3q5sHWHf7MKzpG1p1Eu6x-uyni4msvKoYBxjut5HCDVqZxDrxT8OYJ9NByvF4bZ6aL_CFhLDuJCP4viQAJNLRGTn7SqkdLbHOmhcPEev5kyrKadxfIDOfMh_92GCMMCogK2NzdmXcYbgq4_SaYZoF1ri_-seaS5xDD3kzsnWOjI_hA9hPWwuk61cvVCl7JN2f5eqz_v3WePPKxzOhanMiwhZqrmgpmLiV78AXoEzd_EeTmk_E32le6gKK5GCrttXwZmhJyrXq-hb5lpv10jUH-RqvOoC1tID_DL8hjEoVRdDxEJE73GSHZYQuDgeMwyY7kkGTRMSbp_nDZwm8pjcIuTGOSJGS_yxKSpjvD50xoqR6na3N82Q7fLX-0cfkD0IeHkg?type=png)](https://mermaid.live/edit#pako:eNqNVMFunDAU_BX0Tu1qgxaW9QLnHBOlSm4VFwc7WVeAkTFV6Wr_vcZmu89A0nIBzxvPmzdGPkMpGYccyop23b2g74rWRcOE4qUWsgkenosmsI9lBPdU0_MVcrjiVPNHI1N9-epVOk5VeXp6_WG0ulmtrExxhtWjRudB0m32sFbJlis9vHC_cP2-LB1bd9i2YGixbLLewk3q5sHWHf7MKzpG1p1Eu6x-uyni4msvKoYBxjut5HCDVqZxDrxT8OYJ9NByvF4bZ6aL_CFhLDuJCP4viQAJNLRGTn7SqkdLbHOmhcPEev5kyrKadxfIDOfMh_92GCMMCogK2NzdmXcYbgq4_SaYZoF1ri_-seaS5xDD3kzsnWOjI_hA9hPWwuk61cvVCl7JN2f5eqz_v3WePPKxzOhanMiwhZqrmgpmLiV78AXoEzd_EeTmk_E32le6gKK5GCrttXwZmhJyrXq-hb5lpv10jUH-RqvOoC1tID_DL8hjEoVRdDxEJE73GSHZYQuDgeMwyY7kkGTRMSbp_nDZwm8pjcIuTGOSJGS_yxKSpjvD50xoqR6na3N82Q7fLX-0cfkD0IeHkg)\n *\n * Various model file formats can be imported into DataModels using methods such as {@link @xeokit/gltf!loadGLTF | loadGLTF}, {@link @xeokit/las!loadLAS | loadLAS},\n * {@link @xeokit/cityjson!loadCityJSON | loadCityJSON}, and {@link @xeokit/dtx!loadDTX | loadDTX},\n * while DataModels can be exported to the native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format using {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * To programmatically build DataModels, builder methods\n * such as {@link @xeokit/data!Data.createModel | Data.createModel}, {@link @xeokit/data!DataModel.createObject | DataModel.createObject},\n * {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet}, and\n * {@link @xeokit/data!DataModel.createRelationship | DataModel.createRelationship} can be employed.\n * DataObjects can be queried using the {@link @xeokit/data!Data.searchObjects | Data.searchObjects} method, and\n * semantic data can be attached to model representations by\n * using it alongside SceneModel.\n *\n * It's important to note that DataObjects and PropertySets are global, created on their DataModels but stored globally\n * on the Data. Additionally, DataModels automatically reuse DataObjects and PropertySets wherever they're already\n * created by other DataModels. Finally, DataObjects can have Relationships with other DataObjects in different DataModels.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/data\n * ````\n *\n * ## Usage\n *\n * * [Creating a DataModel from JSON](#creating-a-scenemodel)\n * * [Creating a DataModel using Builder Methods](#creating-a-scenemodel)\n * * [Reading DataObjects](#reading-dataobjects)\n * * [Searching DataObjects](#searching-dataobjects)\n *\n * ### Creating a DataModel from JSON\n *\n * We will start with an example where we create a {@link @xeokit/data!DataModel | DataModel} using a single parameter object of type {@link @xeokit/data!DataModelParams | DataModelParams}.\n * The DataModel we create will define a simple piece of furniture - a table consisting of a tabletop and four legs.\n * We will then query the data model to retrieve all the {@link @xeokit/data!DataObject | DataObjects} within it.\n *\n * To achieve this, we will create a DataModel that contains six DataObjects: one for the\n * table, one for the tabletop, and one for each of the four legs. We will also define Relationships\n * to connect the DataObjects into an aggregation hierarchy, and we will assign {@link Property | Properties} to the\n * DataObjects to give them attributes such as height and weight.\n *\n * To give the DataObjects and {@link @xeokit/data!Relationship | Relationships} semantic meaning, we will assign\n * them types from one of the SDK's bundled data type sets, basicTypes. This set of types classifies each DataObject\n * as a {@link @xeokit/basictypes!BasicEntity | BasicEntity} and each Relationship as\n * a {@link @xeokit/basictypes!BasicAggregation | BasicAggregation}.\n *\n * It's worth noting that in a real-world scenario, we would likely use a more complex set of data types, such as\n * {@link @xeokit/ifctypes}. However, we cannot mix different sets of data types within our {@link @xeokit/data!Data | Data},\n * as traversals of the DataObjects with {@link @xeokit/data!Data.searchObjects | Data.searchObjects } must be\n * guided uniformly by the same set of types across all the DataObjects and Relationships in the graph.\n *\n * To create our DataModel, we will use the following code, which creates a new Data object and then\n * creates a DataModel from a set of objects, relationships, and property sets. The {@link @xeokit/core!SDKError | SDKError} class\n * is used to handle errors that may occur during the process:\n *\n * ````javascript\n * import { SDKError } from \"@xeokit/core\";\n * import { Data } from \"@xeokit/data\";\n * import * as basicTypes from \"@xeokit/basictypes/basicTypes\";\n *\n * const myData = new Data({});\n *\n * const myDataModel = myData.createModel({\n * id: \"myTableModel\",\n * objects: [\n * {\n * id: \"table\",\n * type: basicTypes.BasicEntity,\n * name: \"Table\",\n * propertySetIds: [\"tablePropertySet\"],\n * },\n * {\n * id: \"redLeg\",\n * name: \"Red table Leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"greenLeg\",\n * name: \"Green table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"blueLeg\",\n * name: \"Blue table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"yellowLeg\",\n * name: \"Yellow table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"tableTop\",\n * name: \"Purple table top\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableTopPropertySet\"],\n * },\n * ],\n * relationships: [\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"table\",\n * relatedObjectId: \"tableTop\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"redLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"greenLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"blueLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"yellowLeg\",\n * },\n * ],\n * propertySets: [\n * {\n * id: \"tablePropertySet\",\n * originalSystemId: \"tablePropertySet\",\n * name: \"Table properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\",\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\",\n * },\n * ],\n * },\n * {\n * id: \"legPropertySet\",\n * originalSystemId: \"legPropertySet\",\n * name: \"Table leg properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\",\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\",\n * },\n * ],\n * },\n * ],\n * });\n *\n * if (myDataModel instanceof SDKError) {\n * console.log(myDataModel.message);\n * } else {\n * myDataModel.build();\n * }\n * ````\n *\n * ### Creating a DataModel using Builder Methods\n *\n * In our second example, we'll create our {@link @xeokit/data!DataModel | DataModel} again, this time instantiating\n * each {@link @xeokit/data!PropertySet | PropertySet}, {@link Property}, {@link @xeokit/data!DataObject | DataObject} and {@link @xeokit/data!Relationship | Relationship} individually, using the\n * {@link @xeokit/data!DataModel | DataModel's} builder methods.\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Data} from \"@xeokit/data\";\n * import * as basicTypes from \"@xeokit/basictypes/basicTypes\";\n *\n * const data = new Data();\n *\n * const dataModel = data.createModel({ // DataModel | SDKError\n * id: \"myTableModel\"\n * });\n *\n * if (dataModel instanceof SDKError) {\n * console.log(dataModel.message);\n *\n * } else {\n *\n * const tablePropertySet = dataModel.createPropertySet({ // PropertySet | SDKError\n * id: \"tablePropertySet\",\n * name: \"Table properties\",\n * type: \"\",\n * properties: [ // Property[]\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\"\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\"\n * }\n * ]\n * });\n *\n * if (tablePropertySet instanceof SDKError) {\n * console.log(tablePropertySet.message);\n * }\n *\n * const legPropertySet = dataModel.createPropertySet({\n * id: \"legPropertySet\",\n * name: \"Table leg properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\"\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\"\n * }\n * ]\n * });\n *\n * const myTableObject = dataModel.createObject({ // DataObject | SDKError\n * id: \"table\",\n * type: basicTypes.BasicEntity,\n * name: \"Table\",\n * propertySetIds: [\"tablePropertySet\"]\n * });\n *\n * if (myTableObject instanceof SDKError) {\n * console.log(myTableObject.message);\n * }\n *\n * dataModel.createObject({\n * id: \"redLeg\",\n * name: \"Red table Leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"greenLeg\",\n * name: \"Green table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"blueLeg\",\n * name: \"Blue table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"yellowLeg\",\n * name: \"Yellow table leg\",\n * type: \"leg\",\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"tableTop\",\n * name: \"Purple table top\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableTopPropertySet\"]\n * });\n *\n * const myRelationship = dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"table\",\n * relatedObjectId: \"tableTop\"\n * });\n *\n * if (myRelationship instanceof SDKError) {\n * console.log(myRelationship.message);\n * }\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"redLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"greenLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"blueLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"yellowLeg\"\n * });\n *\n * dataModel.build()\n * .then(()=>{\n * // Ready for action\n * })\n * .catch((sdkError) => {\n * console.error(sdkError.message);\n * });\n * }\n * ````\n *\n * ### Reading DataObjects\n *\n * With our {@link @xeokit/scene!SceneModel | SceneModel} built, we'll now use the {@link @xeokit/data!Data.searchObjects | Data.searchObjects} method to\n * traverse it to fetch the IDs of the {@link @xeokit/data!DataObject | DataObjects} we find on that path.\n *\n * One example of where we use this method is to query the aggregation hierarchy of the DataObjects for building\n * a tree view of an IFC element hierarchy.\n *\n * ````javascript\n * const resultObjectIds = [];\n *\n * data.searchObjects({\n * startObjectId: \"table\",\n * includeObjects: [basicTypes.BasicEntity],\n * includeRelated: [basicTypes.BasicAggregation],\n * resultObjectIds\n * });\n *\n * // resultObjectIds == [\"table\", \"tableTop\", \"redLeg\", \"greenLeg\", \"blueLeg\", \"yellowLeg\"];\n * ````\n *\n * ### Searching DataObjects\n *\n * In our fourth example, we'll demonstrate how to traverse the {@link @xeokit/data!DataObject | DataObjects} along their\n * {@link @xeokit/data!Relationship | Relationships}. We'll start at the root DataObject and visit all the DataObjects\n * we encounter along the outgoing Relationships.\n *\n * ````javascript\n * const table = data.objects[\"table\"];\n *\n * const relations = table.related[basicTypes.BasicAggregation];\n *\n * for (let i = 0, len = relations.length; i < len; i++) {\n *\n * const relation = relations[i];\n * const dataObject = relation.related;\n *\n * //..\n * }\n * ````\n *\n * @module @xeokit/data\n */\nexport * from \"./Data\";\nexport * from \"./DataModel\";\nexport * from \"./DataObject\";\nexport * from \"./Relationship\";\nexport * from \"./RelationshipParams\";\nexport * from \"./Property\";\nexport * from \"./PropertySet\";\nexport * from \"./DataModelParams\";\nexport * from \"./DataModelContentParams\";\nexport * from \"./DataObjectParams\";\nexport * from \"./PropertyParams\";\nexport * from \"./PropertySetParams\";\nexport * from \"./SearchParams\";\n", "import type {PropertySet} from \"./PropertySet\";\nimport type {PropertyParams} from \"./PropertyParams\";\n\n/**\n * A property in a {@link @xeokit/data!PropertySet | PropertySet}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Property {\n\n /**\n * The PropertySet to which this Property belongs.\n */\n public readonly propertySet: PropertySet;\n\n /**\n * The name of this property.\n */\n public readonly name: string;\n\n /**\n * The value of this property.\n */\n public readonly value: any;\n\n /**\n * The type of this property.\n */\n public readonly type?: string | number;\n\n /**\n * The type of this property's value.\n */\n public readonly valueType?: string | number;\n\n /**\n * Informative text to explain the property.\n */\n public readonly description?: string;\n\n /**\n * @private\n * @ignore\n */\n constructor(\n propertySet: PropertySet,\n propertyCfg: PropertyParams) {\n this.propertySet = propertySet;\n this.name = propertyCfg.name;\n this.type = propertyCfg.type\n this.value = propertyCfg.value\n this.valueType = propertyCfg.valueType;\n this.description = propertyCfg.description;\n }\n}\n", "import {Property} from \"./Property\";\nimport type {DataModel} from \"./DataModel\";\nimport type {PropertySetParams} from \"./PropertySetParams\";\n\n/**\n * A set of {@link Property | Properties} in a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Created with {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet}\n * * Stored in {@link @xeokit/data!Data.propertySets | Data.propertySets} and {@link @xeokit/data!DataModel.propertySets | Data.propertySets}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class PropertySet {\n\n /**\n * The DataModels to which this PropertySet belongs.\n */\n public readonly models: DataModel[];\n\n /**\n * Unique ID.\n *\n * PropertySet instances are registered by this ID in {@link @xeokit/data!Data.propertySets | Data.propertySets}\n * and {@link @xeokit/data!DataModel.propertySets | DataModel.propertySets}.\n */\n public readonly id: string;\n\n /**\n * ID of the corresponding object within the originating system, if any.\n */\n public readonly originalSystemId?: string;\n\n /**\n * Human-readable name of this PropertySet.\n */\n public readonly name: string;\n\n /**\n * Type of this PropertySet.\n */\n public readonly type: string;\n\n /**\n * Properties within this PropertySet.\n */\n public readonly properties: Property[];\n\n /**\n * @private\n */\n constructor(\n dataModel: DataModel,\n propertySetCfg: PropertySetParams) {\n this.models = [dataModel];\n this.id = propertySetCfg.id;\n this.name = propertySetCfg.name;\n this.type = propertySetCfg.type;\n this.properties = [];\n if (propertySetCfg.properties) {\n for (let i = 0, len = propertySetCfg.properties.length; i < len; i++) {\n const property = new Property(this, propertySetCfg.properties[i]);\n this.properties.push(property);\n }\n }\n }\n}\n", "import type {PropertySet} from \"./PropertySet\";\nimport type {DataModel} from \"./DataModel\";\nimport type {Relationship} from \"./Relationship\";\nimport type {Data} from \"./Data\";\n\n/**\n * An object in a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Created with {@link @xeokit/data!DataModel.createObject | DataModel.createObject}\n * * Stored in {@link @xeokit/data!Data.objects | Data.objects}, {@link @xeokit/data!Data.rootObjects | Data.rootObjects}, {@link @xeokit/data!Data.objectsByType | Data.objectsByType}, {@link @xeokit/data!DataModel.objects | Data.objects}, {@link @xeokit/data!DataModel.rootObjects | Data.rootObjects}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class DataObject {\n\n /**\n * {@link @xeokit/data!Data | Data} that contains this DataObject.\n */\n public data: Data;\n\n /**\n * {@link @xeokit/data!DataModel | DataModels} that share this DataObject.\n */\n public models: DataModel[];\n\n /**\n * Globally-unique ID.\n *\n * DataObjects are stored by ID in {@link @xeokit/data!Data.objects | Data.objects}, {@link @xeokit/data!Data.rootObjects | Data.rootObjects}, {@link @xeokit/data!Data.objectsByType | Data.objectsByType} and {@link @xeokit/data!DataModel.rootObjects | Data.rootObjects}.\n */\n public readonly id: string;\n\n /**\n * ID of this DataObject within the originating system, is any. Defaults to the value of\n * {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n originalSystemId?: string;\n\n /**\n * Human-readable name.\n */\n public readonly name?: string;\n\n /**\n * Human-readable description.\n */\n public readonly description?: string;\n\n /**\n * DataObject's type.\n */\n public readonly type: number;\n\n /**\n *{@link @xeokit/data!PropertySet | PropertySets} referenced by this DataObject.\n */\n public readonly propertySets?: PropertySet[];\n\n /**\n * The {@link @xeokit/data!Relationship | Relations} in which this DataObject is the {@link @xeokit/data!Relationship.relatingObject | Relationship.relatingObject} participant.\n *\n * Each DataObject is mapped here by {@link @xeokit/data!Relationship.type | Relationship.type} and sub-mapped by {@link @xeokit/data!Relationship.relatingObject | Relationship.relatingObject}.\n */\n public readonly relating: {\n [key: number]: Relationship[]\n };\n\n /**\n * The {@link @xeokit/data!Relationship | Relationships} in which this DataObject is the {@link @xeokit/data!Relationship.relatedObject | Relationship.relatedObject} participant.\n *\n * Each DataObject is mapped here by {@link @xeokit/data!Relationship.type | Relationship.type} and sub-mapped by {@link @xeokit/data!Relationship.relatedObject | Relationship.relatedObject}.\n */\n public readonly related: {\n [key: number]: Relationship[]\n };\n\n /**\n * @private\n */\n constructor(\n data: Data,\n model: DataModel,\n id: string,\n originalSystemId: string,\n name: string,\n description: string | undefined,\n type: number,\n propertySets?: PropertySet[]) {\n\n this.data = data;\n this.models = [model];\n this.id = id;\n this.originalSystemId = originalSystemId;\n this.name = name;\n this.description = description;\n this.type = type;\n this.propertySets = propertySets || [];\n this.related = {};\n this.relating = {};\n }\n}\n", "import type {DataObject} from \"./DataObject\";\n\n/**\n * A one-to-one relationship between two {@link @xeokit/data!DataObject | DataObjects}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Relationship {\n\n /**\n * The type of this Relationship.\n *\n * This can be any value that identifies the Relationship type within your DataModel.\n */\n readonly type: number;\n\n /**\n * The relating {@link @xeokit/data!DataObject | DataObject} in this Relationship.\n *\n * This Relationship will be stored by {@link @xeokit/data!DataObject.type | DataObject.type}\n * in the DataObject's {@link @xeokit/data!DataObject.related | DataObject.related} attribute.\n */\n readonly relatingObject: DataObject;\n\n /**\n * The related {@link @xeokit/data!DataObject | DataObject} in this Relationship.\n *\n * This Relationship will be stored by {@link @xeokit/data!DataObject.type | DataObject.type} in\n * the DataObject's {@link @xeokit/data!DataObject.relating | DataObject.relating} attribute.\n */\n readonly relatedObject: DataObject;\n\n /**\n * @private\n * @ignore\n */\n constructor(type: number, relatingObject: DataObject, relatedObject: DataObject) {\n this.type = type;\n this.relatingObject = relatingObject;\n this.relatedObject = relatedObject;\n }\n}\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport type {Data} from \"./Data\";\nimport {PropertySet} from \"./PropertySet\";\nimport {DataObject} from \"./DataObject\";\nimport type {DataModelParams} from \"./DataModelParams\";\nimport type {DataObjectParams} from \"./DataObjectParams\";\nimport type {PropertySetParams} from \"./PropertySetParams\";\nimport {Relationship} from \"./Relationship\";\nimport type {RelationshipParams} from \"./RelationshipParams\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {PropertyParams} from \"./PropertyParams\";\nimport {DataModelContentParams} from \"./DataModelContentParams\";\n\n/**\n * xeokit Semantic Data Model.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class DataModel extends Component {\n\n /**\n * The Data that contains this DataModel.\n */\n public readonly data: Data;\n\n /**\n * Unique ID of this DataModel.\n *\n * DataModels are stored against this ID in {@link @xeokit/data!Data.models | Data.models}.\n */\n declare public readonly id: string;\n\n /**\n * The model name, if available.\n */\n public name?: string;\n\n /**\n * The project ID, if available.\n */\n public projectId?: string | number;\n\n /**\n * The revision ID, if available.\n */\n public revisionId?: string | number;\n\n /**\n * The model author, if available.\n */\n public author?: string;\n\n /**\n * The date the model was created, if available.\n */\n public createdAt?: string;\n\n /**\n * The application that created the model, if available.\n */\n public creatingApplication?: string;\n\n /**\n * The model schema version, if available.\n */\n public schema?: string;\n\n /**\n * The{@link @xeokit/data!PropertySet | PropertySets} in this DataModel, mapped to{@link @xeokit/data!PropertySet.id | PropertySet.id}.\n *\n * PropertySets have globally-unique IDs and will also be stored in {@link @xeokit/data!Data.propertySets | Data.propertySets}.\n */\n public readonly propertySets: { [key: string]: PropertySet };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * DataObjects have globally-unique IDs and will also be stored in {@link @xeokit/data!Data.objects | Data.objects}.\n */\n public objects: { [key: string]: DataObject };\n\n /**\n * The root {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped\n * to {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * * This is the set of DataObjects in this DataModel that are not the *related* participant in\n * any {@link @xeokit/data!Relationship | Relationships}, where they have no incoming Relationships and\n * their {@link @xeokit/data!DataObject.relating} property is empty.\n */\n public rootObjects: { [key: string]: DataObject };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped to {@link @xeokit/data!DataObject.type | DataObject.type},\n * sub-mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public objectsByType: { [key: string]: { [key: string]: DataObject } };\n\n /**\n * The {@link @xeokit/data!Relationship | Relationships} in this DataModel.\n *\n * * The Relationships can be between DataObjects in different DataModels, but always within the same Data.\n */\n public relationships: Relationship[];\n\n /**\n * The count of each type of {@link @xeokit/data!DataObject | DataObject} in this DataModel, mapped to {@link @xeokit/data!DataObject.type | DataObject.type}.\n */\n public readonly typeCounts: { [key: string]: number };\n\n /**\n * Emits an event when the {@link @xeokit/data!DataModel | DataModel} has been built.\n *\n * * The DataModel is built using {@link @xeokit/data!DataModel.build | DataModel.build}.\n * * {@link @xeokit/data!DataModel.built | DataModel.built} indicates if the DataModel is currently built.\n * * Don't create anything more in this DataModel once it's built.\n *\n * @event\n */\n public readonly onBuilt: EventEmitter;\n\n /**\n * Indicates if this DataModel has been built.\n *\n * * Set true by {@link @xeokit/data!DataModel.build | DataModel.build}.\n * * Subscribe to updates using {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt} and {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated}.\n */\n built: boolean;\n\n #destroyed: boolean;\n\n /**\n * @private\n */\n constructor(\n data: Data,\n id: string,\n dataModelParams: DataModelParams,\n options?: {\n includeTypes?: string[],\n excludeTypes?: string[],\n globalizeObjectIds?: boolean\n }) {\n\n super(data);\n\n this.onBuilt = new EventEmitter(new EventDispatcher());\n\n this.data = data;\n\n this.id = id;\n this.projectId = dataModelParams.projectId || \"\";\n this.revisionId = dataModelParams.revisionId || \"\";\n this.author = dataModelParams.author || \"\";\n this.createdAt = dataModelParams.createdAt || \"\";\n this.creatingApplication = dataModelParams.creatingApplication || \"\";\n this.schema = dataModelParams.schema || \"\";\n this.propertySets = {};\n this.objects = {};\n this.objectsByType = {};\n this.relationships = [];\n this.typeCounts = {};\n this.rootObjects = {};\n this.built = false;\n this.#destroyed = false;\n\n this.fromJSON(dataModelParams);\n }\n\n /**\n * Adds the given components to this DataModel.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param dataModelParams\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A duplicate PropertySet was already created for this DataModel.\n * * A duplicate DataObject was already created in this DataModel.\n * * DataObjects were not found for a Relationship.\n */\n fromJSON(dataModelParams: DataModelContentParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add components to DataModel - DataModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to add components to DataModel - DataModel already built\");\n }\n if (dataModelParams.propertySets) {\n for (let i = 0, len = dataModelParams.propertySets.length; i < len; i++) {\n this.createPropertySet(dataModelParams.propertySets[i]);\n }\n }\n if (dataModelParams.objects) {\n for (let i = 0, len = dataModelParams.objects.length; i < len; i++) {\n this.createObject(dataModelParams.objects[i]);\n }\n }\n if (dataModelParams.relationships) {\n for (let i = 0, len = dataModelParams.relationships.length; i < len; i++) {\n this.createRelationship(dataModelParams.relationships[i]);\n }\n }\n }\n\n /**\n * Creates a new {@link @xeokit/data!PropertySet | PropertySet}.\n *\n * * Stores the new PropertySet in {@link @xeokit/data!DataModel.propertySets | DataModel.propertySets}\n * and {@link @xeokit/data!Data.propertySets | Data.propertySets}.\n * * Note that PropertySet IDs are globally unique. PropertySet instances are automatically reused and shared among DataModels\n * when IDs given to {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet} match existing PropertySet\n * instances in the same Data.\n *\n * ### Usage\n *\n * ````javascript\n * const propertySet = dataModel.createPropertySet({\n * id: \"myPropertySet\",\n * name: \"My properties\",\n * properties: [{\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of a thing\"\n * }, {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of a thing\"\n * }]\n * });\n *\n * if (propertySet instanceof SDKError) {\n * console.error(propertySet.message);\n * } else {\n * // Success\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param propertySetCfg - PropertySet creation parameters.\n * @returns *{@link PropertySet}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A PropertySet of the given ID was already created for this DataModel. While it's OK\n * for multiple DataModels to *share* PropertySets with duplicate IDs between them, it's not permitted to\n * create duplicate PropertySets within the same DataModel.\n */\n createPropertySet(propertySetCfg: PropertySetParams): PropertySet | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create PropertySet - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"DataModel already built\");\n }\n if (this.propertySets[propertySetCfg.id]) {\n return new SDKError(\"Failed to create PropertySet - PropertySet with same ID already created in this DataModel. It's OK to have duplicates shared between DataModels, but they must be unique within each DataModel.\")\n }\n let propertySet = this.data.propertySets[propertySetCfg.id];\n if (propertySet) {\n this.propertySets[propertySetCfg.id] = propertySet;\n propertySet.models.push(this);\n return propertySet;\n }\n propertySet = new PropertySet(this, propertySetCfg);\n this.propertySets[propertySetCfg.id] = propertySet;\n this.data.propertySets[propertySetCfg.id] = propertySet;\n return propertySet;\n }\n\n /**\n * Creates a new {@link @xeokit/data!DataObject | DataObject}.\n *\n * * Stores the new {@link @xeokit/data!DataObject | DataObject} in {@link DataModel.objects | DataModel.objects} and {@link Data.objects | Data.objects}.\n * * Fires an event via {@link Data.onObjectCreated | Data.onObjectCreated}.\n * * Note that DataObject IDs are globally unique. DataObject instances are automatically reused and shared among DataModels when\n * IDs given to {@link DataModel.createObject | DataModel.createObject} match existing DataObject instances in the same\n * Data. This feature is part of how xeokit supports [*federated data models*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#federated-models).\n *\n * ### Usage\n *\n * ````javascript\n * const myDataObject = dataModel.createObject({\n * id: \"myDataObject\",\n * type: BasicEntity, // @xeokit/basictypes!basicTypes\n * name: \"My Object\",\n * propertySetIds: [\"myPropertySet\"]\n * });\n *\n * const myDataObject2 = dataModel.createObject({\n * id: \"myDataObject2\",\n * name: \"My Other Object\",\n * type: BasicEntity,\n * propertySetIds: [\"myPropertySet\"]\n * });\n *\n * if (myDataObject instanceof SDKError) {\n * console.error(myDataObject.message);\n *\n * } else if (myDataObject2 instanceof SDKError) {\n * console.error(myDataObject2.message);\n *\n * } else { // Success\n * const gotMyDataObject = dataModel.objects[\"myDataObject\"];\n * const gotMyDataObjectAgain = data.objects[\"myDataObject\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param dataObjectParams - DataObject creation parameters.\n * @returns *{@link DataObject}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A DataObject of the given ID was already created in this DataModel. While it's OK\n * for multiple DataModels to *share* DataObjects with duplicate IDs between them, we're not permitted to\n * create duplicate DataObjects within the same DataModel.\n * * A specified PropertySet could not be found.\n */\n createObject(dataObjectParams: DataObjectParams): DataObject | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create DataObject - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create DataObject - DataModel already built\");\n }\n const id = dataObjectParams.id;\n if (this.objects[id]) {\n return new SDKError(\"Failed to create DataObject - DataObject with same ID already created in this DataModel. It's OK to have duplicates shared between DataModels, but they must be unique within each DataModel.\")\n }\n const type = dataObjectParams.type;\n let dataObject = this.data.objects[id];\n if (!dataObject) {\n const propertySets = [];\n if (dataObjectParams.propertySetIds) {\n for (let i = 0, len = dataObjectParams.propertySetIds.length; i < len; i++) {\n const propertySetId = dataObjectParams.propertySetIds[i];\n const propertySet = this.propertySets[propertySetId];\n if (!propertySet) {\n return new SDKError(`Failed to create DataObject - PropertySet not found: \"${propertySetId}\"`);\n } else {\n propertySets.push(propertySet);\n }\n }\n }\n dataObject = new DataObject(this.data, this, id, dataObjectParams.originalSystemId, dataObjectParams.name, dataObjectParams.description, dataObjectParams.type, propertySets);\n this.objects[id] = dataObject;\n this.data.objects[id] = dataObject;\n if (!this.data.objectsByType[type]) {\n this.data.objectsByType[type] = {};\n }\n this.data.objectsByType[type][id] = dataObject;\n this.data.typeCounts[type] = (this.data.typeCounts[type] === undefined) ? 1 : this.data.typeCounts[type] + 1;\n dataObject.models.push(this);\n // if (dataObjectParams.relations) {\n // for (let relationType in dataObjectParams.relations) {\n // if (!dataObject.relating[relationType]) {\n // dataObject.relating[relationType] = [];\n // }\n // const relatedObjectIds = dataObjectParams.relations[relationType];\n // for (let j = 0, lenj = relatedObjectIds.length; j < lenj; j++) {\n // const relatedObjectId = relatedObjectIds[j];\n // const relatedObject = this.data.objects[relatedObjectId];\n // if (!relatedObject) {\n // this.error(`[createObject] Can't create Relationship - DataObject not found: ${relatedObjectId}`);\n // } else {\n // // @ts-ignore\n // const relation = new Relationship(relationType, this, relatedObject);\n // relatedObject.relating[relationType].push(relation);\n // dataObject.related[relationType].push(relation);\n // }\n // }\n // }\n // }\n this.data.onObjectCreated.dispatch(this.data, dataObject);\n } else {\n this.objects[id] = dataObject;\n this.data.objects[id] = dataObject;\n if (!this.objectsByType[type]) {\n this.objectsByType[type] = {};\n }\n this.objectsByType[type][id] = dataObject;\n this.typeCounts[type] = (this.typeCounts[type] === undefined) ? 1 : this.typeCounts[type] + 1;\n dataObject.models.push(this);\n }\n return dataObject;\n }\n\n /**\n * Creates a new {@link @xeokit/data!Relationship | Relationship} between two existing {@link DataObject | DataObjects}.\n *\n * * A Relationship involves a *relating* DataObject and a *related* DataObject.\n * * The *relating* and *related* DataObjects can exist within different DataModels,\n * as long as the DataModels both exist in the same {@link Data}. This feature is part of\n * how xeokit supports the viewing of [*federated models*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#federated-models).\n * * The new Relationship will be stored in\n * - {@link DataModel.relationships | DataModel.relationships},\n * - {@link DataObject.related | DataObject.related} on the *relating* DataObject, and\n * - {@link DataObject.relating | DataObject.relating} on the *related* DataObject.\n *\n * ### Usage\n *\n * ````javascript\n * const myRelationship = dataModel.createRelationship({\n * type: BasicAggregation, // @xeokit/basictypes!basicTypes\n * relatingObjectId: \"myDataObject\",\n * relatedObjectId: \"myDataObject2\"\n * });\n *\n * if (myRelationship instanceof SDKError) {\n * console.error(myRelationship.message);\n *\n * } else { // Success\n * const myDataObject = dataModel.objects[\"myDataObject\"];\n * const myDataObject2 = dataModel.objects[\"myDataObject2\"];\n *\n * const gotMyRelationship = myDataObject.related[BasicAggregation][0];\n * const gotMyRelationshipAgain = myDataObject2.relating[BasicAggregation][0];\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param relationshipParams - Relationship creation parameters.\n * @returns *{@link @xeokit/data!Relationship | Relationship}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built or destroyed.\n * * The *relating* DataObject was not found in the {@link Data} that contains this DataModel.\n * * The *related* DataObject was not found in the Data that contains this DataModel.\n */\n createRelationship(relationshipParams: RelationshipParams): Relationship | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create Relationship - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create Relationship - DataModel already built\");\n }\n const relatingObject = this.data.objects[relationshipParams.relatingObjectId];\n if (!relatingObject) {\n return new SDKError(`Failed to create Relationship - relating DataObject not found: ${relationshipParams.relatingObjectId}`);\n }\n const relatedObject = this.data.objects[relationshipParams.relatedObjectId];\n if (!relatedObject) {\n return new SDKError(`Failed to create Relationship - related DataObject not found: ${relationshipParams.relatedObjectId}`);\n }\n const relation = new Relationship(relationshipParams.type, relatingObject, relatedObject);\n if (!relatedObject.relating[relationshipParams.type]) {\n relatedObject.relating[relationshipParams.type] = [];\n }\n relatedObject.relating[relationshipParams.type].push(relation);\n if (!relatingObject.related[relationshipParams.type]) {\n relatingObject.related[relationshipParams.type] = [];\n }\n relatingObject.related[relationshipParams.type].push(relation);\n this.relationships.push(relation);\n return relation;\n }\n\n /**\n * Finalizes this DataModel, readying it for use.\n *\n * * Fires an event via {@link DataModel.onBuilt | DataModel.onBuilt} and {@link Data.onModelCreated | DataModel.onCreated}, to indicate to subscribers that\n * the DataModel is complete and ready to use.\n * * Sets {@link DataModel.built | DataModel.built} ````true````.\n * * You can only call this method once on a DataModel.\n * * Once built, no more components can be created in a DataModel.\n *\n * ````javascript\n * dataModel.onBuilt.subscribe(()=>{\n * // Our DataModel is built and ready to use\n * });\n *\n * data.onModelCreated.subscribe((dataModel)=>{\n * // Another way to subscribe to DataModel readiness\n * });\n *\n * const result = dataModel.build();\n *\n * if (result instanceof SDKError) {\n * console.error(result.message);\n * } else {\n * // Success\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If DataModel has already been built or destroyed.\n */\n build(): Promise {\n return new Promise((resolve) => {\n if (this.destroyed) {\n throw new SDKError(\"Failed to build DataModel - DataModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to build DataModel - DataModel already built\");\n }\n this.built = true;\n this.onBuilt.dispatch(this, null);\n resolve(this);\n });\n }\n\n /**\n * Gets this DataModel as JSON.\n */\n getJSON(): DataModelParams | SDKError {\n if (this.destroyed) {\n return new SDKError(\"DataModel already destroyed\");\n }\n const dataModelParams = {\n id: this.id,\n propertySets: [],\n objects: [],\n relationships: []\n };\n for (let id in this.propertySets) {\n const propertySet = this.propertySets[id];\n const propertySetParams = {\n id,\n name: propertySet.name,\n properties: [],\n type: propertySet.type,\n originalSystemId: propertySet.originalSystemId\n };\n for (let i = 0, len = propertySet.properties.length; i < len; i++) {\n const property = propertySet.properties[i];\n const propertyParams = {\n name: property.name,\n value: property.value,\n type: property.type,\n valueType: property.valueType,\n description: property.description\n };\n propertySetParams.properties.push(propertyParams);\n }\n dataModelParams.propertySets?.push(propertySetParams);\n }\n for (let id in this.objects) {\n const dataObject = this.objects[id];\n const dataObjectParams = {\n id,\n originalSystemId: dataObject.originalSystemId,\n type: dataObject.type,\n name: dataObject.name,\n propertySetIds: []\n };\n if (dataObject.description !== undefined) {\n dataObjectParams.description = dataObject.description;\n }\n if (dataObject.propertySets) {\n for (let i = 0, len = dataObject.propertySets.length; i < len; i++) {\n const propertySet = dataObject.propertySets[i];\n dataObjectParams.propertySetIds?.push(propertySet.id);\n }\n }\n dataModelParams.objects?.push(dataObjectParams);\n }\n for (let i = 0, len = this.relationships.length; i < len; i++) {\n const relationship = this.relationships[i];\n const relationParams = {\n type: relationship.type,\n relatingObjectId: relationship.relatingObject.id,\n relatedObjectId: relationship.relatedObject.id\n };\n dataModelParams.relationships?.push(relationParams);\n }\n return dataModelParams;\n }\n\n /**\n * Destroys this DataModel.\n *\n * * Fires an event via {@link DataModel.onDestroyed | DataModel.onDestroyed} and {@link Data.onModelDestroyed | Data.onModelDestroyed}.\n * * You can only call this method once on a DataModel.\n * * Once destroyed, no more components can be created in a DataModel.\n * * Does not matter if the DataModel has not yet been built.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been destroyed.\n */\n destroy(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to destroy DataModel - DataModel already destroyed\");\n }\n for (let id in this.objects) {\n const dataObject = this.objects[id];\n if (dataObject.models.length > 1) {\n this.#removeObjectFromModels(dataObject);\n } else {\n delete this.data.objects[id];\n const type = dataObject.type;\n if ((--this.data.typeCounts[type]) === 0) {\n delete this.data.typeCounts[type];\n delete this.data.objectsByType[type];\n this.data.onObjectDestroyed.dispatch(this.data, dataObject);\n for (let type in dataObject.relating) {\n const relations = dataObject.relating[type];\n for (let i = 0, len = relations.length; i < len; i++) {\n const relation = relations[i];\n const related = relation.relatedObject;\n const list = related.relating[type];\n for (let j = 0, k = 0, lenj = list.length; j < lenj; j++) {\n if (list[k].relatingObject === dataObject) {\n // Splice j from related.relating[type]\n list[j] = list[j]\n }\n }\n }\n }\n }\n }\n\n // if (dataObject.parent) {\n // const objects = dataObject.parent.objects;\n // objects.length--;\n // let f = false;\n // for (let i = 0, len = objects.length; i < len; i++) {\n // if (f || (f = objects[i] === dataObject)) {\n // objects[i] = objects[i + 1];\n // }\n // }\n // }\n }\n this.#destroyed = true;\n this.onBuilt.clear();\n super.destroy();\n }\n\n // #removePropertySetFromModels(dataObject: DataObject) {\n // for (let i = 0, len = dataObject.models.length; i < len; i++) {\n // if (dataObject.models[i] === this) {\n // dataObject.models = dataObject.models.splice(i, 1);\n // break;\n // }\n // }\n // }\n\n #removeObjectFromModels(dataObject: DataObject) {\n for (let i = 0, len = dataObject.models.length; i < len; i++) {\n if (dataObject.models[i] === this) {\n dataObject.models = dataObject.models.splice(i, 1);\n break;\n }\n }\n }\n}\n\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\n\nimport {DataModel} from \"./DataModel\";\nimport {DataObject} from \"./DataObject\";\nimport type {PropertySet} from \"./PropertySet\";\nimport type {DataModelParams} from \"./DataModelParams\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {SearchParams} from \"./SearchParams\";\n\n/**\n * An entity-relationship semantic data model.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Data extends Component {\n\n /**\n * The {@link @xeokit/data!DataModel | DataModels} belonging to this Data, each keyed to\n * its {@link @xeokit/data!DataModel.id | DataModel.id}.\n */\n public readonly models: { [key: string]: DataModel };\n\n /**\n * The{@link @xeokit/data!PropertySet | PropertySets} belonging to this Data, mapped to{@link @xeokit/data!PropertySet.id | PropertySet.id}.\n */\n public readonly propertySets: { [key: string]: PropertySet };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this Data, mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public readonly objects: { [key: string]: DataObject };\n\n /**\n * The root {@link @xeokit/data!DataObject | DataObjects} belonging to this Data, each keyed to its {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * * This is the set of DataObjects in the DataModels within this Data that are not the *related* participant in\n * any {@link @xeokit/data!Relationship | Relationships}, where they have no incoming Relationships and\n * their {@link @xeokit/data!DataObject.relating} property is empty.\n */\n public readonly rootObjects: { [key: string]: DataObject };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} belonging to this Data, each map keyed to {@link @xeokit/data!DataObject.type | DataObject.type},\n * containing {@link @xeokit/data!DataObject | DataObjects} keyed to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public readonly objectsByType: { [key: string]: { [key: string]: DataObject } };\n\n /**\n * Tracks number of {@link @xeokit/data!DataObject | DataObjects} of each type in this Data.\n */\n public readonly typeCounts: { [key: string]: number };\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataModel | DataModel} has been created in this Data.\n *\n * @event\n */\n public readonly onModelCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataModel | DataModel} has been destroyed within this Data.\n *\n * @event\n */\n public readonly onModelDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataObject | DataObject} is created within this Data.\n *\n * @event\n */\n public readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataObject | DataObject} is destroyed within this Data.\n *\n * @event\n */\n public readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Creates a new Data.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\n constructor() {\n\n super(null, {});\n\n this.models = {};\n this.propertySets = {};\n this.objects = {};\n this.rootObjects = {};\n this.objectsByType = {};\n this.typeCounts = {};\n\n this.onModelCreated = new EventEmitter(new EventDispatcher());\n this.onModelDestroyed = new EventEmitter(new EventDispatcher());\n this.onObjectCreated = new EventEmitter(new EventDispatcher());\n this.onObjectDestroyed = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Creates a new {@link @xeokit/data!DataModel | DataModel} in this Data.\n *\n * Remember to call {@link @xeokit/data!DataModel.build | DataModel.build} when you've finished building or loading the DataModel. That will\n * fire events via {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated} and {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt}, to\n * indicate to any subscribers that the DataModel is built and ready for use.\n *\n * Note that while we're building/loading the SceneModel, each call that we make to {@link @xeokit/data!DataModel.createObject | DataModel.createObject}\n * will create a new {@link @xeokit/data!DataObject | DataObject}\n * in {@link @xeokit/data!Data.objects | Data.objects} and {@link @xeokit/data!DataModel.objects | DataModel.objects}, and will also fire an event\n * via {@link @xeokit/data!Data.onObjectCreated | Data.onObjectCreated}. However,\n * only when we've received the {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated} and {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt}\n * events can we actually consider the DataModel to be fully constructed.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more details on usage.\n *\n * @param dataModelParams Creation parameters for the new {@link @xeokit/data!DataModel | DataModel}.\n * @param [options] Options for creating the {@link @xeokit/data!DataModel | DataModel}.\n * @param [options.includeTypes] When provided, only create {@link @xeokit/data!DataObject | DataObjects} with types in this list.\n * @param [options.excludeRelating] When provided, never create {@link @xeokit/data!DataObject | DataObjects} with types in this list.\n * @returns {@link @xeokit/data!DataModel | DataModel}\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n * * A DataModel with the given ID already exists in this Data.\n */\n createModel(\n dataModelParams: DataModelParams,\n options?: {\n includeRelating?: string[],\n excludeRelating?: string[],\n }\n ): DataModel | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n let id = dataModelParams.id;\n if (this.models[id]) {\n return new SDKError(`DataModel already created in this Data: ${id}`);\n }\n // @ts-ignore\n const dataModel = new DataModel(this, id, dataModelParams, options);\n this.models[dataModel.id] = dataModel;\n dataModel.onDestroyed.one(() => { // DataModel#destroy() called\n delete this.models[dataModel.id];\n this.onModelDestroyed.dispatch(this, dataModel);\n });\n dataModel.onBuilt.one(() => { // DataModel#build() called\n this.onModelCreated.dispatch(this, dataModel);\n });\n return dataModel;\n }\n\n /**\n * Gets the {@link @xeokit/data!DataObject.id}s of the {@link DataObject | DataObjects} that have the given {@link DataObject.type}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param type The type.\n * @returns {string[]}\n * * Array of {@link DataObject.id}s on success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n getObjectIdsByType(type: string): string[] | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n const objects = this.objectsByType[type];\n return objects ? Object.keys(objects) : [];\n }\n\n /**\n * Finds {@link DataObject | DataObjects} using a customized depth-first traversal.\n *\n * Usually we use this method to recursively find DataObjects of specific {@link DataObject.type | types} within\n * a hierarchy.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param searchParams Search parameters.\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n * * The specified starting DataObject was not found in this Data.\n * * The specified starting DataObject is contained in a different Data than this one.\n */\n searchObjects(searchParams: SearchParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n const includeObjects = (searchParams.includeObjects && searchParams.includeObjects.length > 0) ? arrayToMap(searchParams.includeObjects) : null;\n const excludeObjects = (searchParams.excludeObjects && searchParams.excludeObjects.length > 0) ? arrayToMap(searchParams.excludeObjects) : null;\n const includeRelating = (searchParams.includeRelating && searchParams.includeRelating.length > 0) ? arrayToMap(searchParams.includeRelating) : null;\n const excludeRelating = (searchParams.excludeRelating && searchParams.excludeRelating.length > 0) ? arrayToMap(searchParams.excludeRelating) : null;\n\n function visit(dataObject: DataObject, depth: number) {\n if (!dataObject) {\n return;\n }\n let includeObject = true;\n if (excludeObjects && excludeObjects[dataObject.type]) {\n includeObject = false;\n } else { // @ts-ignore\n if (includeObjects && (!includeObjects[dataObject.type])) {\n includeObject = false;\n }\n }\n if (depth === 0 && searchParams.includeStart === false) {\n includeObject = false;\n }\n if (includeObject) {\n if (searchParams.resultObjectIds) {\n searchParams.resultObjectIds.push(dataObject.id);\n } else if (searchParams.resultObjects) {\n searchParams.resultObjects.push(dataObject);\n } else if (searchParams.resultCallback) {\n if (searchParams.resultCallback(dataObject)) {\n return; // Stop searching\n }\n }\n }\n const related = dataObject.related;\n for (let type in related) {\n const relations = related[type];\n if (relations) {\n for (let i = 0, len = relations.length; i < len; i++) {\n let includeRelation = true;\n if (excludeRelating && excludeRelating[dataObject.type]) {\n includeRelation = false;\n } else {\n if (includeRelating && (!includeRelating[dataObject.type])) {\n includeRelation = false;\n }\n }\n if (includeRelation) {\n visit(relations[i].relatedObject, depth + 1);\n }\n }\n }\n }\n }\n\n const depth = 0;\n if (searchParams.startObjectId) {\n const startObject = this.objects[searchParams.startObjectId];\n if (!startObject) {\n return new SDKError(`Failed to search DataObjects - starting DataObject not found in Data: \"${searchParams.startObjectId}\"`);\n }\n visit(startObject, depth);\n } else if (searchParams.startObject) {\n if (searchParams.startObject.data != this) {\n return new SDKError(`Failed to search DataObjects - starting DataObject not in same Data: \"${searchParams.startObjectId}\"`);\n }\n visit(searchParams.startObject, depth + 1);\n } else {\n for (let id in this.rootObjects) {\n visit(this.rootObjects[id], depth + 1);\n }\n }\n }\n\n /**\n * Destroys all contained {@link DataModel | DataModels}.\n *\n * * Fires {@link Data.onModelDestroyed | Data.onModelDestroyed} and {@link DataModel.onDestroyed | DataModel.onDestroyed}\n * for each existing DataModel in this Data.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n clear(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n for (let id in this.models) {\n this.models[id].destroy();\n }\n }\n\n /**\n * Destroys this Data and all contained {@link DataModel | DataModels}.\n *\n * * Fires {@link Data.onModelDestroyed | Data.onModelDestroyed} and {@link DataModel.onDestroyed | DataModel.onDestroyed}\n * for each existing DataModels in this Data.\n * * Unsubscribes all subscribers to {@link Data.onModelCreated | Data.onModelCreated}, {@link Data.onModelDestroyed | Data.onModelDestroyed}, {@link DataModel.onDestroyed | DataModel.onDestroyed}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n destroy(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n this.clear();\n this.onModelCreated.clear();\n this.onModelDestroyed.clear();\n super.destroy();\n }\n}\n\nfunction arrayToMap(array: any[]): { [key: string]: any } {\n const map: { [key: string]: any } = {};\n for (let i = 0, len = array.length; i < len; i++) {\n map[array[i]] = true;\n }\n return map;\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2FscratchModel.svg)](https://badge.fury.io/js/%40xeokit%2FscratchModel)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/scratchModel/badge)](https://www.jsdelivr.com/package/npm/@xeokit/scratchModel)\n *\n * \n *\n * # xeokit Scene Representation\n *\n * ---\n *\n * ### *The SDK's buildable, viewable, importable and exportable 3D scene representation*\n *\n * ---\n *\n * The xeokit SDK facilitates the management of model representations through a scene graph that incorporates the\n * model's objects, geometries, and materials. This scene graph functions seamlessly in both the browser and NodeJS\n * environments, enabling the generation of models, format conversion, and the provision of content for the SDK's\n * model viewer.\n *\n * To elaborate further:\n *\n * * The {@link @xeokit/scene!Scene | Scene} acts as a container for {@link @xeokit/scene!SceneModel | SceneModels}, which, in turn,\n * comprise {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | Meshes}, {@link @xeokit/scene!SceneGeometry | Geometries}, and {@link @xeokit/scene!SceneTexture | Textures}.\n * * Textures undergo compression to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) via the Basis Universal codec.\n * * SceneGeometry undergoes compression through quantization.\n * * Use a {@link \"@xeokit/viewer\" | Viewer} to view SceneModels in the browser. A Viewer equipped with a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} can view a Scene that has KTX2-compressed textures.\n * * Import SceneModels from a variety of model file formats using importer functions like {@link \"@xeokit/gltf\" | loadGLTF}, {@link \"@xeokit/las\" | loadLAS}, {@link \"@xeokit/cityjson\" | loadCityJSON}, and {@link \"@xeokit/dtx\" | loadDTX}.\n * * Export SceneModels to the native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format through {@link \"@xeokit/dtx\" | saveDTX}.\n * * Create SceneModels programmatically using builder methods like {@link @xeokit/scene!Scene.createModel | Scene.createModel},\n * {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}, {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh},\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}, and {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}. Add geometry\n * primitives using mesh generator functions like {@link @xeokit/procgen!buildBoxGeometry | buildBoxGeometry}, {@link @xeokit/procgen!buildSphereGeometry | buildSphereGeometry}, {@link @xeokit/procgen!buildTorusGeometry | buildTorusGeometry}, {@link @xeokit/procgen!buildCylinderGeometry | buildCylinderGeometry}, {@link @xeokit/procgen!buildPlaneGeometry | buildPlaneGeometry} and {@link @xeokit/procgen!buildVectorTextGeometry | buildVectorTextGeometry}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNVU2PmzAQ_SvIp3aVjTaJk0AOPbQr7aVRpc2qlSoujplN3AJGttkmjfLfawwkNph0uQBvnufNh8c-IcoTQCtEUyLlIyM7QbI4T5gAqhjPg6_PcR6YxzCCDYUcTi1mcAFEwVq7ST98dAwpEOFCWcWSNsK3v7TSBTp71IxrS5Il1-_O8koC5B5sYAc8AyWYAyo4qFLABpQHtaA6uW9GxU6lSVpr9dGnWvDYt7zU_gcNOhzbti1ZmthAAlIJbjn2lasO1mmRXTFPhQJCttsBl1WKwUDxKU-5uP4KXu72OUjLta4DSV2IF4QydbQ4RDfncP1v-mUxrs0aCLIpnz9OP1c7u5lWQ-ukkjL63GbZY3BK01LqoelZIGNSsjfoGDqRtftmKK5CsIwp7caCuGTVmMpHoDwr9NaV6045y7cbxrbWn0v6Gwan8Mlh2eFd9L80ApA4yj6Y6dOFwv-0vjP44yi1yb8cC18BfnCR3hRxZXagrGHpV_4SVfs27CBGkxjd3d_r93h8FyPrgHKIBhlg15Lv8eth1lCfX41pS7xk02O5jWz5ZsQtrkVsKdbQOE6x5nY2tcfbizW_10YMtKBd-qle6ynE-xbaG6ldiUYoA5ERlugbz_Q6RmoPGcRopT8TeCVlqmIU52dNJaXim2NO0eqVpBJGqCwSfVY3l-QFhYQpLtbNNVq9RqggOVqd0AGtpouH8WSyxOFiOo9meDnDI3TU8GyMo-UixBGehOEyCqfnEfrLuXb7MA6nC4wX0wgvQzzH88j4-2mMSpRw_geACkF7?type=png)](https://mermaid.live/edit#pako:eNqNVU2PmzAQ_SvIp3aVjTaJk0AOPbQr7aVRpc2qlSoujplN3AJGttkmjfLfawwkNph0uQBvnufNh8c-IcoTQCtEUyLlIyM7QbI4T5gAqhjPg6_PcR6YxzCCDYUcTi1mcAFEwVq7ST98dAwpEOFCWcWSNsK3v7TSBTp71IxrS5Il1-_O8koC5B5sYAc8AyWYAyo4qFLABpQHtaA6uW9GxU6lSVpr9dGnWvDYt7zU_gcNOhzbti1ZmthAAlIJbjn2lasO1mmRXTFPhQJCttsBl1WKwUDxKU-5uP4KXu72OUjLta4DSV2IF4QydbQ4RDfncP1v-mUxrs0aCLIpnz9OP1c7u5lWQ-ukkjL63GbZY3BK01LqoelZIGNSsjfoGDqRtftmKK5CsIwp7caCuGTVmMpHoDwr9NaV6045y7cbxrbWn0v6Gwan8Mlh2eFd9L80ApA4yj6Y6dOFwv-0vjP44yi1yb8cC18BfnCR3hRxZXagrGHpV_4SVfs27CBGkxjd3d_r93h8FyPrgHKIBhlg15Lv8eth1lCfX41pS7xk02O5jWz5ZsQtrkVsKdbQOE6x5nY2tcfbizW_10YMtKBd-qle6ynE-xbaG6ldiUYoA5ERlugbz_Q6RmoPGcRopT8TeCVlqmIU52dNJaXim2NO0eqVpBJGqCwSfVY3l-QFhYQpLtbNNVq9RqggOVqd0AGtpouH8WSyxOFiOo9meDnDI3TU8GyMo-UixBGehOEyCqfnEfrLuXb7MA6nC4wX0wgvQzzH88j4-2mMSpRw_geACkF7)\n *\n *
\n *\n * ### Notes\n *\n * * TextureSets are collections of textures that are shared among Meshes and are organized into texture atlasses to optimize rendering efficiency on GPUs.\n * * Each SceneMesh can be assigned to only one SceneObject, whereas each SceneGeometry and SceneTextureSet can be allocated to an unlimited number of Meshes.\n * * The {@link getSceneObjectGeometry} function can be used to conveniently iterate the World-space geometry within each\n * {@link @xeokit/scene!SceneObject | SceneObject} - useful for building k-d trees, finding intersections etc.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/scene\n * ````\n *\n * ## Usage\n *\n * * [Creating a SceneModel](#creating-a-scenemodel)\n * * [Reading the SceneModel](#reading-the-scenemodel)\n * * [SceneGeometry Compression](#geometry-compression)\n * * [SceneTexture Compression](#texture-compression)\n *\n * ### Creating a SceneModel\n *\n * In the example below, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} that will model the simple table furniture model\n * shown in the image above. Our SceneModel will get five\n * {@link @xeokit/scene!SceneObject | SceneObjects}, five {@link @xeokit/scene!SceneMesh | Meshes},\n * a {@link @xeokit/scene!SceneGeometry | SceneGeometry} and a {@link @xeokit/scene!SceneTexture | SceneTexture}.\n *\n * When we've finished constructing our SceneModel, we'll call {@link @xeokit/scene!SceneModel.build | SceneModel.build}, which\n * (asynchronously) compresses our SceneTexture.\n *\n * At that point, we can use the SceneModel. For example, we could export it to xeokit's native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx)\n * file format using {@link \"@xeokit/dtx\" | saveDTX}, or view it in the Browser using a {@link \"@xeokit/viewer\" | Viewer}.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {TrianglesPrimitive, LinearEncoding, LinearFilter, ClampToEdgeWrapping} from \"@xeokit/constants\";\n *\n * // Scene is the container of SceneModels\n *\n * const theScene = new Scene();\n *\n * const sceneModel = theScene.createModel({\n * id: \"theModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n *\n * // Most SDK methods return an SDKError when\n * // something goes wrong.\n *\n * // We'll use some SDKErrors in this example\n * // to demonstrate where we can use them.\n *\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * const geometry = sceneModel.createGeometry({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [ // Floats\n * 1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, -1, 1, -1, -1,\n * -1, -1\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n *\n * if (geometry instanceof SDKError) {\n * console.log(geometry.message);\n * }\n *\n * const texture = sceneModel.createTexture({\n * id: \"colorTexture\",\n * src: \"./assets/sample_etc1s.ktx2\",\n * preloadColor: [1, 0, 0, 1],\n * flipY: false,\n * encoding: LinearEncoding,\n * magFilter: LinearFilter,\n * minFilter: LinearFilter,\n * wrapR: ClampToEdgeWrapping,\n * wrapS: ClampToEdgeWrapping,\n * wrapT: ClampToEdgeWrapping,\n * });\n *\n * if (texture instanceof SDKError) {\n * console.log(texture.message);\n * }\n *\n * const theTextureSet = sceneModel.createTextureSet({\n * id: \"theTextureSet\",\n * colorTextureId: \"colorTexture\"\n * });\n *\n * if (theTextureSet instanceof SDKError) {\n * console.log(theTextureSet.message);\n * }\n *\n * const redLegMesh = sceneModel.createLayerMesh({\n * id: \"redLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [-4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1, 0.3, 0.3],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * if (redLegMesh instanceof SDKError) {\n * console.log(redLegMesh.message);\n * }\n *\n * const greenLegMesh = sceneModel.createLayerMesh({\n * id: \"greenLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [0.3, 1.0, 0.3],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const blueLegMesh = sceneModel.createLayerMesh({\n * id: \"blueLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [4, -6, 4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [0.3, 0.3, 1.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const yellowLegMesh = sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [-4, -6, 4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1.0, 1.0, 0.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const tableTopMesh = sceneModel.createLayerMesh({\n * id: \"tableTopMesh\",\n * geometryId: \"boxGeometry\",\n * position: [0, -3, 0],\n * scale: [6, 0.5, 6],\n * rotation: [0, 0, 0],\n * color: [1.0, 0.3, 1.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * // Create five SceneObjects, each using a SceneMesh.\n * // A SceneMesh belongs to exactly one SceneObject.\n *\n * const redLegSceneObject = sceneModel.createObject({\n * id: \"redLegObject\",\n * meshIds: [\"redLegMesh\"]\n * });\n *\n * if (redLegSceneObject instanceof SDKError) {\n * console.log(redLegSceneObject.message);\n * }\n *\n * const greenLegSceneObject = sceneModel.createObject({\n * id: \"greenLegObject\",\n * meshIds: [\"greenLegMesh\"]\n * });\n *\n * const blueLegSceneObject = sceneModel.createObject({\n * id: \"blueLegObject\",\n * meshIds: [\"blueLegMesh\"]\n * });\n *\n * const yellowLegSceneObject = sceneModel.createObject({\n * id: \"yellowLegObject\",\n * meshIds: [\"yellowLegMesh\"]\n * });\n *\n * const tableTopSceneObject = sceneModel.createObject({\n * id: \"tableTopObject\",\n * meshIds: [\"tableTopMesh\"]\n * });\n *\n * // Expect an event when we build the SceneModel\n *\n * sceneModel.onBuilt.subscribe((theSceneModel)=>{ });\n *\n * // Expect an event when we destroy the SceneModel\n *\n * sceneModel.onDestroyed.subscribe((theSceneModel)=>{ });\n *\n * // Now build the SceneModel\n *\n * sceneModel.build().then(()=> {\n * // SceneModel is ready for use\n *\n * }).catch((sdkError) => {\n * console.log(sdkError.message);\n * });\n * }\n * ````\n *\n * ### Reading the SceneModel\n *\n * Now that we've built our SceneModel, we can read all of its components. Note that the {@link @xeokit/scene!SceneTexture} and {@link @xeokit/scene!SceneGeometry}\n * we just created will now be compressed.\n *\n * ````javascript\n * const theSceneModel = theScene.models[\"theModel\"];\n * const theTexture = theSceneModel.textures[\"theColorTexture\"];\n * const theTextureSet = theSceneModel.textureSets[\"theTextureSet\"];\n * const boxGeometry = theSceneModel.geometries[\"boxGeometry\"];\n * const theTableTopMesh = theSceneModel.meshes[\"tableTopMesh\"];\n * const theTableTopObject = theSceneModel.objects[\"tableTopObject\"];\n * const theTableTopObjectAgain = theScene.objects[\"tableTopObject\"];\n * ````\n *\n * ### SceneGeometry Compression\n *\n * The geometry from our query example requires a closer look. Internally, the {@link @xeokit/scene!SceneModel.createGeometry}\n * method uses the {@link @xeokit/scene!compressGeometryParams} function to compress the geometry and generate edge indices for\n * rendering it as a wireframe.\n *\n * We provide that function as part of the API in case users want to pre-compress the geometry themselves\n * and then use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create the compressed geometry directly.\n *\n * The {@link @xeokit/scene!compressGeometryParams} function performs these steps to compress the geometry:\n *\n * * Simplifies geometry by combining duplicate positions and adjusting indices\n * * Generates edge indices for triangle meshes\n * * Ignores normals (our shaders auto-generate them)\n * * Quantizes positions and UVs as 16-bit unsigned integers\n *\n * Our compressed geometry then looks like this:\n *\n * ````javascript\n * const positions = boxGeometry.positions;\n * const indices = boxGeometry.indices;\n * const edgeIndices = boxGeometry.edgeIndices;\n * // ...\n * ````\n *\n * In the example below, we'll now use {@link @xeokit/scene!compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ````javascript\n * import {compressGeometryParams} from \"@xeokit/compression\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [ // Floats\n * 1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, -1, 1, -1, -1,\n * -1, -1\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n * ````\n *\n * The value of our new {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} is shown below.\n *\n * We can see that:\n *\n * * Vertex positions are now quantized to 16-bit integers\n * * Edge indices generated for our TrianglesPrimitive\n * * Quantization range given in axis-sligned bounding box ````aabb````, to de-quantize the positions within the Viewer\n *\n * ````javascript\n * {\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * aabb: [\n * -1, -,1 -,1, 1, 1, 1\n * ],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 0, 65525, 0, 0,\n * 0, 0\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ],\n * edgeIndices: [\n * 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7,\n * 3, 2, 4, 7, 6, 4, 6\n * ]\n * }\n * ````\n *\n * ### SceneTexture Compression\n *\n * The {@link @xeokit/scene!SceneTexture} from our query example also requires a closer look. Internally, the {@link @xeokit/scene!SceneModel.build}\n * method uses [Basis](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#basis) to compress the SceneTexture to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2). We can now read that transcoded data\n * back from {@link @xeokit/scene!SceneTexture.buffers | SceneTexture.buffers}:\n *\n * ````javascript\n * const theTexture = theSceneModel.textures[\"theColorTexture\"];\n *\n * const buffers = thetexture.buffers; // ArrayBuffer[]\n * ````\n *\n * ### Preparing a SceneModel for Progressive Loading\n *\n * TODO: Create in separate tutorial - too complex for here\n *\n * @module @xeokit/scene\n */\n\nexport * from \"./Scene\";\nexport * from \"./SceneModel\";\nexport * from \"./SceneModelStats\";\nexport * from \"./SceneObject\";\nexport * from \"./SceneTexture\";\nexport * from \"./SceneTextureSet\";\nexport * from \"./SceneGeometry\";\nexport * from \"./SceneMesh\";\n\nexport * from \"./RendererGeometry\";\nexport * from \"./RendererMesh\";\nexport * from \"./RendererObject\";\nexport * from \"./RendererModel\";\nexport * from \"./RendererTexture\";\nexport * from \"./RendererTextureSet\";\n\nexport * from \"./SceneMeshParams\";\nexport * from \"./SceneObjectParams\";\nexport * from \"./SceneTextureParams\";\nexport * from \"./SceneTextureSetParams\";\nexport * from \"./SceneGeometryCompressedParams\";\nexport * from \"./SceneGeometryParams\";\nexport * from \"./SceneModelParams\";\nexport * from \"./compressGeometryParams\";\n\nexport * from \"./getSceneObjectGeometry\";\n\nexport * from \"./SceneModelStreamParams\";\nexport * from \"./SceneModelStreamLayerParams\";\n\nexport * from \"./buildMat4\"\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {type FloatArrayParam, MAX_DOUBLE, MIN_DOUBLE} from \"@xeokit/math\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {SceneModel} from \"./SceneModel\";\nimport type {SceneObject} from \"./SceneObject\";\nimport type {SceneModelParams} from \"./SceneModelParams\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneTile} from \"./SceneTile\";\n\n/**\n * A scene representation.\n *\n * A Scene is a container of {@link @xeokit/scene!SceneModel | SceneModels} and {@link @xeokit/scene!SceneObject | SceneObjects}.\n */\nexport class Scene extends Component {\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModels} belonging to this Scene, each keyed to\n * its {@link @xeokit/scene!SceneModel.id | SceneModel.id}.\n */\n public readonly models: { [key: string]: SceneModel };\n\n /**\n * The {@link @xeokit/scene!SceneObject | SceneObjects} in this Scene, mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n */\n public readonly objects: { [key: string]: SceneObject };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} in this Scene\n */\n public readonly tiles: { [key: string]: SceneTile };\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneModel | SceneModel} is created in this Scene.\n *\n * @event\n */\n public readonly onModelCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneModel | SceneModel} is destroyed in this Scene.\n *\n * @event\n */\n public readonly onModelDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneTile} is created in this Scene.\n *\n * @event\n */\n public readonly onTileCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneTile} is destroyed in this Scene.\n *\n * @event\n */\n public readonly onTileDestroyed: EventEmitter;\n\n #onModelBuilts: { [key: string]: any };\n #onModelDestroys: { [key: string]: any };\n #center: Float64Array;\n #aabbDirty: boolean;\n #aabb: Float64Array;\n\n /**\n * Creates a new Scene.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\n constructor() {\n\n super(null, {});\n\n this.#aabb = createAABB3();\n this.#aabbDirty = true;\n\n this.models = {};\n this.objects = {};\n this.tiles = {};\n\n this.#onModelBuilts = {};\n this.#onModelDestroys = {};\n this.onModelCreated = new EventEmitter(new EventDispatcher());\n this.onModelDestroyed = new EventEmitter(new EventDispatcher());\n this.onTileCreated = new EventEmitter(new EventDispatcher());\n this.onTileDestroyed = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets the collective World-space 3D center of all the {@link @xeokit/scene!SceneModel | SceneModels} in this Scene.\n */\n get center(): Float64Array {\n if (this.#aabbDirty) {\n const aabb = this.aabb; // Lazy-build\n this.#center[0] = (aabb[0] + aabb[3]) / 2;\n this.#center[1] = (aabb[1] + aabb[4]) / 2;\n this.#center[2] = (aabb[2] + aabb[5]) / 2;\n }\n return this.#center;\n }\n\n /**\n * Gets the collective World-space 3D [axis-aligned boundary](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#aabb) of all the {@link @xeokit/scene!SceneModel | SceneModels} in this Scene.\n *\n * The boundary will be of the form ````[xMin, yMin, zMin, xMax, yMax, zMax]````.\n */\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n let aabb;\n const objects = this.objects;\n let valid = false;\n for (const objectId in objects) {\n if (objects.hasOwnProperty(objectId)) {\n const object = objects[objectId];\n // if (object.collidable === false) {\n // continue;\n // }\n aabb = object.aabb;\n if (aabb[0] < xmin) {\n xmin = aabb[0];\n }\n if (aabb[1] < ymin) {\n ymin = aabb[1];\n }\n if (aabb[2] < zmin) {\n zmin = aabb[2];\n }\n if (aabb[3] > xmax) {\n xmax = aabb[3];\n }\n if (aabb[4] > ymax) {\n ymax = aabb[4];\n }\n if (aabb[5] > zmax) {\n zmax = aabb[5];\n }\n valid = true;\n }\n }\n if (!valid) {\n xmin = -100;\n ymin = -100;\n zmin = -100;\n xmax = 100;\n ymax = 100;\n zmax = 100;\n }\n this.#aabb[0] = xmin;\n this.#aabb[1] = ymin;\n this.#aabb[2] = zmin;\n this.#aabb[3] = xmax;\n this.#aabb[4] = ymax;\n this.#aabb[5] = zmax;\n this.#aabbDirty = false;\n }\n return this.#aabb;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneModel | SceneModel} in this Scene.\n *\n * Remember to call {@link @xeokit/scene!SceneModel.build | SceneModel.build} when you've finished building or\n * loading the SceneModel. That will\n * fire events via {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated} and {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt}, to\n * indicate to any subscribers that the SceneModel is built and ready for use.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more details on usage.\n *\n * @param sceneModelParams Creation parameters for the new {@link @xeokit/scene!SceneModel | SceneModel}.\n * @returns *{@link @xeokit/scene!SceneModel | SceneModel}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n * * A SceneModel with the given ID already exists in this Scene.\n */\n createModel(sceneModelParams: SceneModelParams): SceneModel | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Scene already destroyed\");\n }\n const id = sceneModelParams.id;\n if (this.models[id]) {\n return new SDKError(`SceneModel already created in this Scene: ${id}`);\n }\n const sceneModel = new SceneModel(this, sceneModelParams);\n this.models[id] = sceneModel;\n sceneModel.onDestroyed.one(() => { // SceneModel#destroy() called\n delete this.models[sceneModel.id];\n this.#deregisterObjects(sceneModel);\n this.onModelDestroyed.dispatch(this, sceneModel);\n });\n sceneModel.onBuilt.one(() => { // SceneModel#build() called\n this.#registerObjects(sceneModel);\n this.onModelCreated.dispatch(this, sceneModel);\n });\n return sceneModel;\n }\n\n /**\n * @private\n */\n setAABBDirty() {\n if (!this.#aabbDirty) {\n this.#aabbDirty = true;\n //this.events.fire(\"aabb\", true);\n }\n }\n\n /**\n * Destroys all contained {@link @xeokit/scene!SceneModel | SceneModels}.\n *\n * * Fires {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed} and\n * {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed} for each existing SceneModel in this Scene.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n */\n clear(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Scene already destroyed\");\n }\n for (let id in this.models) {\n this.models[id].destroy();\n }\n }\n\n /**\n * Destroys this Scene and all contained {@link @xeokit/scene!SceneModel | SceneModels}.\n *\n * * Fires {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed} and {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed}\n * for each existing SceneModels in this Data.\n * * Unsubscribes all subscribers to {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated}, {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed}, {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n */\n destroy(): void | SDKError {\n this.clear();\n this.onModelCreated.clear();\n this.onModelDestroyed.clear();\n this.onTileCreated.clear();\n this.onTileDestroyed.clear();\n super.destroy();\n }\n\n #registerObjects(model: SceneModel) {\n const objects = model.objects;\n for (let id in objects) {\n const object = objects[id];\n this.objects[object.id] = object;\n }\n this.#aabbDirty = true;\n }\n\n #deregisterObjects(model: SceneModel) {\n const objects = model.objects;\n for (let id in objects) {\n const object = objects[id];\n delete this.objects[object.id];\n }\n this.#aabbDirty = true;\n }\n\n getTile(origin: FloatArrayParam):SceneTile {\n const tileId = `${origin[0]}-${origin[1]}-${origin[2]}`;\n let tile = this.tiles[tileId];\n if (tile) {\n tile.numObjects++;\n } else {\n tile = new SceneTile(this, tileId, origin);\n tile.numObjects = 1;\n this.tiles[tileId] = tile;\n this.onTileCreated.dispatch(this, tile);\n }\n return tile;\n }\n\n putTile(tile: SceneTile): void {\n if (this.tiles[tile.id] === undefined) {\n return;\n }\n if (--tile.numObjects <= 0) {\n delete this.tiles[tile.id];\n this.onTileDestroyed.dispatch(this, tile);\n }\n }\n\n\n}\n", "// import {KTX2BasisWriter} from \"@loaders.gl/textures\";\n// import {ImageLoader} from '@loaders.gl/images';\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneGeometry} from \"./SceneGeometry\";\nimport {SceneObject} from \"./SceneObject\";\nimport {SceneTextureSet} from \"./SceneTextureSet\";\nimport {SceneTexture} from \"./SceneTexture\";\nimport {SceneMesh} from \"./SceneMesh\";\nimport type {RendererModel} from \"./RendererModel\";\nimport type {SceneTextureSetParams} from \"./SceneTextureSetParams\";\nimport type {SceneGeometryParams} from \"./SceneGeometryParams\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport type {SceneMeshParams} from \"./SceneMeshParams\";\nimport type {SceneObjectParams} from \"./SceneObjectParams\";\nimport type {SceneTextureParams} from \"./SceneTextureParams\";\nimport {compressGeometryParams} from \"./compressGeometryParams\";\nimport type {SceneModelParams} from \"./SceneModelParams\";\nimport type {Scene} from \"./Scene\";\nimport type {SceneModelStats} from \"./SceneModelStats\";\nimport {\n composeMat4, createMat4,\n createVec3,\n eulerToQuat,\n identityMat4,\n identityQuat,\n mulVec3Scalar,\n translateMat4v\n} from \"@xeokit/matrix\";\nimport {SceneModelStreamParams} from \"./SceneModelStreamParams\";\nimport {SceneQuantizationRange} from \"./SceneQuantizationRange\";\nimport {SceneQuantizationRangeParams} from \"./SceneQuantizationRangeParams\";\nimport {SceneTile} from \"./SceneTile\";\nimport {createRTCModelMat} from \"@xeokit/rtc\";\n\n\n// DTX texture types\n\nconst COLOR_TEXTURE = 0;\nconst METALLIC_ROUGHNESS_TEXTURE = 1;\nconst NORMALS_TEXTURE = 2;\nconst EMISSIVE_TEXTURE = 3;\nconst OCCLUSION_TEXTURE = 4;\n\n// KTX2 encoding options for each texture type\n\nconst TEXTURE_ENCODING_OPTIONS: {\n [key: string]: any\n} = {}\n\nTEXTURE_ENCODING_OPTIONS[COLOR_TEXTURE] = {\n useSRGB: true,\n qualityLevel: 50,\n encodeUASTC: true,\n mipmaps: true\n};\n\nTEXTURE_ENCODING_OPTIONS[EMISSIVE_TEXTURE] = {\n useSRGB: true,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\nTEXTURE_ENCODING_OPTIONS[METALLIC_ROUGHNESS_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 50,\n mipmaps: true // Needed for GGX roughness shading\n};\n\nTEXTURE_ENCODING_OPTIONS[NORMALS_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\nTEXTURE_ENCODING_OPTIONS[OCCLUSION_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\n/**\n * xeokit SceneGeometry and Materials Model.\n *\n * * A representation of a model's geometry and materials within a {@link @xeokit/scene!Scene | Scene}.\n * * Contains {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | SceneMeshes}, {@link @xeokit/scene!SceneGeometry | Geometries} and {@link @xeokit/scene!SceneTexture | Textures}.\n * * Compresses textures using [Basis](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#basis)\n * * Viewable in the Browser with {@link @xeokit/viewer!Viewer | Viewer}\n * * Importable from various model file formats, using {@link @xeokit/gltf!loadGLTF | loadGLTF}, {@link @xeokit/dotbim!loadDotBIM | loadDotBIM}, {@link @xeokit/las!loadLAS | loadLAS}, {@link @xeokit/cityjson!loadCityJSON | loadCityJSON}, {@link @xeokit/dtx!loadDTX | loadDTX}, {@link @xeokit/xkt!loadXKT | loadXKT} (etc)\n * * Exportable to [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format using {@link @xeokit/dtx!saveDTX | saveDTX}\n * * Programmatically buildable using builder methods\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneModel extends Component {\n\n /**\n * Indicates what renderer resources will need to be allocated in a {@link @xeokit/viewer!Viewer | Viewer's}\n * {@link @xeokit/viewer!Renderer | Renderer} to support progressive loading for the {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\n public streamParams?: SceneModelStreamParams;\n\n /**\n * The {@link @xeokit/scene!Scene | Scene} that contains this SceneModel.\n */\n public readonly scene: Scene;\n\n /**\n * Whether IDs of {@link @xeokit/scene!SceneObject | SceneObjects} are globalized.\n *\n * When globalized, the IDs are prefixed with the value of {@link @xeokit/scene!SceneModel.id | SceneModel.id}\n *\n * This is ````false```` by default.\n */\n declare public readonly globalizedIds: boolean;\n\n /**\n * Unique ID of this SceneModel.\n *\n * SceneModel are stored against this ID in {@link @xeokit/scene!Scene.models | Scene.models}.\n */\n declare public readonly id: string;\n\n /**\n * If we want to view this SceneModel with a {@link @xeokit/viewer!Viewer | Viewer}, an\n * optional ID of a {@link @xeokit/viewer!ViewLayer | ViewLayer} to view it in.\n */\n public readonly layerId?: string;\n\n /**\n * Indicates if this SceneModel has already been built.\n *\n * * Set ````true```` by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n * * Subscribe to updates using {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt}\n * and {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated}.\n * * Don't create anything more in this SceneModel once it's built.\n */\n public built: boolean;\n\n /**\n * Indicates if this SceneModel has been destroyed.\n *\n * * Set ````true```` by {@link @xeokit/scene!SceneModel.destroy | SceneModel.destroy}.\n * * Don't create anything more in this SceneModel once it's destroyed.\n */\n declare readonly destroyed: boolean;\n\n /**\n * The edge threshold for automatic [edge primitive generation](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#geometry-edge-generation).\n */\n public readonly edgeThreshold: number;\n\n /**\n * {@link @xeokit/scene!SceneGeometry | Geometries} within this SceneModel, each mapped to {@link @xeokit/scene!SceneGeometry.id | SceneGeometry.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}.\n */\n public readonly geometries: { [key: string]: SceneGeometry };\n\n /**\n * {@link @xeokit/scene!SceneQuantizationRange | SceneQuantizationRanges} within this SceneModel, each mapped to {@link @xeokit/scene!SceneQuantizationRange.id | SceneQuantizationRange.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}.\n */\n public readonly quantizationRanges: { [key: string]: SceneQuantizationRange };\n\n /**\n * {@link @xeokit/scene!SceneTexture | Textures} within this SceneModel, each mapped to {@link @xeokit/scene!SceneTexture.id | SceneTexture.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}.\n * * Compressed asynchronously in {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n */\n public readonly textures: { [key: string]: SceneTexture };\n\n /**\n * {@link @xeokit/scene!SceneTextureSet | TextureSets} within this SceneModel, each mapped to {@link @xeokit/scene!SceneTextureSet.id | SceneTextureSet.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createTextureSet | SceneModel.createTextureSet}.\n */\n public readonly textureSets: { [key: string]: SceneTextureSet };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} used by this SceneModel, each mapped to {@link @xeokit/scene!SceneTile.id | SceneTile.id}.\n */\n public readonly tiles: { [key: string]: SceneTile };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} used by this SceneModel.\n */\n public readonly tilesList: SceneTile [];\n\n /**\n * {@link @xeokit/scene!SceneMesh | SceneMeshes} within this SceneModel, each mapped to {@link @xeokit/scene!SceneMesh.id | SceneMesh.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh}.\n */\n public readonly meshes: { [key: string]: SceneMesh };\n\n /**\n * {@link @xeokit/scene!SceneObject | SceneObjects} within this SceneModel, each mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}.\n */\n readonly objects: { [key: string]: SceneObject };\n\n /**\n * The axis-aligned 3D World-space boundary of this SceneModel.\n *\n * * Created by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n */\n public readonly aabb: Float64Array;\n\n /**\n * Emits an event when this {@link @xeokit/scene!SceneModel | SceneModel} has been built.\n *\n * * Triggered by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n *\n * @event onBuilt\n */\n public readonly onBuilt: EventEmitter;\n\n /**\n * Emits an event when this {@link @xeokit/scene!SceneModel | SceneModel} has been destroyed.\n *\n * * Triggered by {@link @xeokit/scene!SceneModel.destroy | SceneModel.destroy}.\n *\n * @event onDestroyed\n */\n declare public readonly onDestroyed: EventEmitter;\n\n /**\n * Internal interface through which a SceneModel can load updated content into a renderers.\n *\n * @internal\n */\n public rendererModel: RendererModel | null;\n\n /**\n * Statistics on this SceneModel.\n */\n public readonly stats: SceneModelStats;\n\n /**\n * TODO\n *\n * @see {@link @xeokit/scene!SceneModelParams | SceneModelParams}.\n */\n public readonly retained: boolean;\n\n #texturesList: SceneTexture[];\n #numObjects: number;\n #meshUsedByObject: { [key: string]: boolean };\n\n\n /**\n * @private\n */\n constructor(scene: Scene, sceneModelParams: SceneModelParams) {\n super(scene, {\n id: sceneModelParams.id\n });\n\n this.scene = scene;\n\n this.tiles = {};\n this.tilesList = [];\n\n this.onBuilt = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#numObjects = 0;\n this.#meshUsedByObject = {};\n\n this.streamParams = sceneModelParams.streamParams;\n this.globalizedIds = (!!sceneModelParams.globalizedIds);\n this.id = sceneModelParams.id || \"default\";\n this.layerId = sceneModelParams.layerId;\n this.edgeThreshold = 10;\n this.geometries = {};\n this.quantizationRanges = {};\n this.textures = {};\n this.#texturesList = [];\n this.textureSets = {};\n this.meshes = {};\n this.objects = {};\n this.aabb = createAABB3();\n this.built = false;\n this.rendererModel = null;\n\n this.stats = {\n numGeometries: 0,\n numLines: 0,\n numMeshes: 0,\n numObjects: 0,\n numPoints: 0,\n numTextureSets: 0,\n numTextures: 0,\n numTriangles: 0,\n numVertices: 0,\n textureBytes: 0\n };\n\n this.fromJSON(sceneModelParams);\n\n this.retained = (sceneModelParams.retained !== false);\n }\n\n /**\n * Adds components to this SceneModel.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n *\n * @param sceneModelParams\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been built.\n * * If this SceneModel has already been destroyed.\n * * A duplicate component ({@link @xeokit/scene!SceneObject}, {@link @xeokit/scene!SceneMesh},\n * {@link @xeokit/scene!SceneGeometry}, {@link @xeokit/scene!SceneTexture} etc.) was already created within this SceneModel.\n */\n fromJSON(sceneModelParams: SceneModelParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add components to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add components to SceneModel - SceneModel already built\");\n }\n if (sceneModelParams.geometries) {\n for (let i = 0, len = sceneModelParams.geometries.length; i < len; i++) {\n this.createGeometry(sceneModelParams.geometries[i]);\n }\n }\n if (sceneModelParams.geometriesCompressed) {\n for (let i = 0, len = sceneModelParams.geometriesCompressed.length; i < len; i++) {\n this.createGeometryCompressed(sceneModelParams.geometriesCompressed[i]);\n }\n }\n if (sceneModelParams.textures) {\n for (let i = 0, len = sceneModelParams.textures.length; i < len; i++) {\n this.createTexture(sceneModelParams.textures[i]);\n }\n }\n if (sceneModelParams.textureSets) {\n for (let i = 0, len = sceneModelParams.textureSets.length; i < len; i++) {\n this.createTextureSet(sceneModelParams.textureSets[i]);\n }\n }\n if (sceneModelParams.meshes) {\n for (let i = 0, len = sceneModelParams.meshes.length; i < len; i++) {\n this.createMesh(sceneModelParams.meshes[i]);\n }\n }\n if (sceneModelParams.objects) {\n for (let i = 0, len = sceneModelParams.objects.length; i < len; i++) {\n this.createObject(sceneModelParams.objects[i]);\n }\n }\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneTexture} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneTexture} in {@link @xeokit/scene!SceneModel.textures | SceneModel.textures}.\n * * Textures are compressed asynchronously by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n *\n * ### Usage\n *\n * ````javascript\n * const texture = sceneModel.createTexture({\n * id: \"myColorTexture\",\n * src: // Path to JPEG, PNG, KTX2,\n * image: // HTMLImageElement,\n * buffers: // ArrayBuffer[] containing KTX2 MIP levels\n * preloadColor: [1,0,0,1],\n * flipY: false,\n * encoding: LinearEncoding, // @xeokit/constants\n * magFilter: LinearFilter,\n * minFilter: LinearFilter,\n * wrapR: ClampToEdgeWrapping,\n * wrapS: ClampToEdgeWrapping,\n * wrapT: ClampToEdgeWrapping,\n * });\n *\n * const textureAgain = sceneModel.textures[\"myColorTexture\"];\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param textureParams - SceneTexture creation parameters.\n * @returns *{@link @xeokit/scene!SceneTexture}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * Invalid SceneTextureParams were given.\n * * SceneTexture with given ID already exists in this Scene.\n */\n createTexture(textureParams: SceneTextureParams): SceneTexture | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - SceneModel already built\");\n }\n if (!textureParams.imageData && !textureParams.src && !textureParams.buffers) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - Parameter expected: textureParams.imageData, textureParams.src or textureParams.buffers\");\n }\n if (this.textures[textureParams.id]) {\n return new SDKError(`Failed to create Texture in SceneModel - Texture already exists with this ID: ${textureParams.id}`);\n }\n if (textureParams.src) {\n const fileExt = textureParams.src.split('.').pop();\n // if (fileExt !== \"jpg\" && fileExt !== \"jpeg\" && fileExt !== \"png\") {\n // console.error(`Model does not support image files with extension '${fileExt}' - won't create texture '${textureParams.id}`);\n // return;\n // }\n }\n if (textureParams.imageData) {\n this.stats.textureBytes += (textureParams.imageData.width * textureParams.imageData.height * 4); // Guessing\n }\n const texture = new SceneTexture(textureParams);\n this.textures[textureParams.id] = texture;\n this.#texturesList.push(texture);\n this.stats.numTextures++;\n return texture;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneTextureSet} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneTextureSet} in {@link @xeokit/scene!SceneModel.textureSets | SceneModel.textureSets}.\n *\n * ### Usage\n *\n * ````javascript\n * const textureSet = sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\"\n * });\n *\n * const textureSetAgain = sceneModel.textureSets[\"myTextureSet\"];\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param textureSetParams SceneTextureSet creation parameters.\n *\n * @returns *{@link @xeokit/scene!SceneTextureSet}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * Invalid SceneTextureSetParams were given.\n * * SceneTextureSet with given ID already exists in this SceneModel.\n * * One or more of the given Textures could not be found in this SceneModel.\n */\n createTextureSet(textureSetParams: SceneTextureSetParams): SceneTextureSet | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneTextureSet in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneTextureSet in SceneModel - SceneModel already built\");\n }\n if (this.textureSets[textureSetParams.id]) {\n return new SDKError(`Failed to create TextureSet in SceneModel - TextureSet already exists with this ID: ${textureSetParams.id}`);\n }\n let colorTexture;\n if (textureSetParams.colorTextureId !== undefined && textureSetParams.colorTextureId !== null) {\n colorTexture = this.textures[textureSetParams.colorTextureId];\n if (!colorTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.colorTextureId} - ensure that you create it first with createTexture()`);\n }\n colorTexture.channel = COLOR_TEXTURE;\n }\n let metallicRoughnessTexture;\n if (textureSetParams.metallicRoughnessTextureId !== undefined && textureSetParams.metallicRoughnessTextureId !== null) {\n metallicRoughnessTexture = this.textures[textureSetParams.metallicRoughnessTextureId];\n if (!metallicRoughnessTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.metallicRoughnessTextureId} - ensure that you create it first with createTexture()`);\n }\n metallicRoughnessTexture.channel = METALLIC_ROUGHNESS_TEXTURE;\n }\n let normalsTexture;\n if (textureSetParams.normalsTextureId !== undefined && textureSetParams.normalsTextureId !== null) {\n normalsTexture = this.textures[textureSetParams.normalsTextureId];\n if (!normalsTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.normalsTextureId} - ensure that you create it first with createTexture()`);\n }\n normalsTexture.channel = NORMALS_TEXTURE;\n }\n let emissiveTexture;\n if (textureSetParams.emissiveTextureId !== undefined && textureSetParams.emissiveTextureId !== null) {\n emissiveTexture = this.textures[textureSetParams.emissiveTextureId];\n if (!emissiveTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.emissiveTextureId} - ensure that you create it first with createTexture()`);\n }\n emissiveTexture.channel = EMISSIVE_TEXTURE;\n }\n let occlusionTexture;\n if (textureSetParams.occlusionTextureId !== undefined && textureSetParams.occlusionTextureId !== null) {\n occlusionTexture = this.textures[textureSetParams.occlusionTextureId];\n if (!occlusionTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.occlusionTextureId} - ensure that you create it first with createTexture()`);\n }\n occlusionTexture.channel = OCCLUSION_TEXTURE;\n }\n const textureSet = new SceneTextureSet(textureSetParams, {\n emissiveTexture,\n occlusionTexture,\n metallicRoughnessTexture,\n colorTexture\n });\n this.textureSets[textureSetParams.id] = textureSet;\n this.stats.numTextureSets++;\n return textureSet;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from non-compressed geometry parameters.\n *\n * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}.\n *\n * ### Usage\n *\n * ````javascript\n * const boxGeometry = sceneModel.createGeometry({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive, // @xeokit/constants\n * positions: [\n * 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, // v0-v1-v2-v3 front\n * 1, 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, // v0-v3-v4-v1 right\n * 1, 1, 1, 1, 1, -1, -1, 1, -1, -1, 1, 1, // v0-v1-v6-v1 top\n * -1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, // v1-v6-v7-v2 left\n * -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, 1,// v7-v4-v3-v2 bottom\n * 1, -1, -1, -1, -1, -1, -1, 1, -1, 1, 1, -1 // v4-v7-v6-v1 back\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4, 6, 7, 8, 9, 10, 8, 10, 11, 12, 13, 14, 12, 14, 15,\n * 16, 17, 18, 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n *\n * if (boxGeometry instanceof SDKError) {\n * console.log(boxGeometry.message);\n * } else {\n * const boxGeometryAgain = sceneModel.geometries[\"boxGeometry\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param geometryParams Non-compressed geometry parameters.\n * @returns *{@link @xeokit/scene!SceneGeometry}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneGeometryParams were given.\n * * SceneGeometry of given ID already exists in this SceneModel.\n * * Unsupported primitive type given.\n * * Mandatory vertex positions were not given. Vertex positions are mandatory for all primitive types.\n * * Mandatory indices were not given for primitive type that is not {@link @xeokit/constants!PointsPrimitive}. Indices are mandatory for all primitive types except PointsPrimitive.\n * * Indices out of range of vertex positions.\n * * Indices out of range of vertex UVs.\n * * Mismatch between given quantities of vertex positions and UVs.\n */\n createGeometry(geometryParams: SceneGeometryParams): SceneGeometry | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - SceneModel already built\");\n }\n if (!geometryParams) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Parameters expected: geometryParams\");\n }\n if (geometryParams.id === null || geometryParams.id === undefined) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Parameter expected: geometryParams.id\");\n }\n const geometryId = geometryParams.id;\n if (this.geometries[geometryId]) {\n return new SDKError(`Failed to create Geometry in SceneModel - Geometry with this ID already created: ${geometryId}`);\n }\n const primitive = geometryParams.primitive;\n if (primitive !== PointsPrimitive && primitive !== LinesPrimitive && primitive !== TrianglesPrimitive && primitive !== SolidPrimitive && primitive !== SurfacePrimitive) {\n return new SDKError(`Failed to create Geometry in SceneModel - Unsupported value for geometryParams.primitive: '${primitive}' - supported values are PointsPrimitive, LinesPrimitive, TrianglesPrimitive, SolidPrimitive and SurfacePrimitive`);\n }\n if (!geometryParams.positions) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Param expected: geometryParams.positions\");\n }\n if (!geometryParams.indices && primitive !== PointsPrimitive) {\n return new SDKError(`Failed to create Geometry in SceneModel - Param expected: geometryParams.indices (required for primitive type)`);\n }\n if (geometryParams.uvs) {\n if (geometryParams.uvs.length / 2 !== geometryParams.positions.length / 3) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - mismatch between given quantities of vertex positions and UVs\");\n }\n }\n if (geometryParams.indices) {\n const lastPositionsIdx = geometryParams.positions.length / 3;\n for (let i = 0, len = geometryParams.indices.length; i < len; i++) {\n const idx = geometryParams.indices[i];\n if (idx < 0 || idx >= lastPositionsIdx) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - indices out of range of vertex positions\");\n }\n if (geometryParams.uvs) {\n const lastUVsIdx = geometryParams.uvs.length / 2;\n if (idx < 0 || idx >= lastUVsIdx) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - indices out of range of vertex UVs\");\n }\n }\n }\n }\n const geometry = new SceneGeometry(compressGeometryParams(geometryParams));\n this.geometries[geometryId] = geometry;\n this.stats.numGeometries++;\n if (geometryParams.indices) {\n if (geometry.primitive === TrianglesPrimitive) {\n this.stats.numTriangles += geometryParams.indices.length / 3;\n } else if (geometry.primitive === LinesPrimitive) {\n this.stats.numLines += geometryParams.indices.length / 2;\n }\n } else if (geometry.primitive === PointsPrimitive) {\n this.stats.numPoints += geometryParams.positions.length / 3;\n }\n this.stats.numVertices += geometryParams.positions.length / 3;\n return geometry;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from pre-compressed geometry parameters.\n *\n * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}.\n * * Use {@link @xeokit/scene!compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams}\n * into {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ### Usage\n *\n * ````javascript\n * const boxGeometry = sceneModel.createGeometryCompressed({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive, // @xeokit/constants\n * aabb: [-1,-1,-1, 1,1,1],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525, 0, 0,\n * 65525, 65525, 0, 65525, 65525, 0, 0, 65525,\n * 65525, 0, 0, 65525, 0, 0, 0, 0\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ]\n * });\n *\n * if (boxGeometry instanceof SDKError) {\n * console.log(boxGeometry.message);\n * } else {\n * const boxGeometryAgain = sceneModel.geometries[\"boxGeometry\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param geometryCompressedParams Pre-compressed geometry parameters.\n * @returns *{@link @xeokit/scene!SceneGeometry}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneGeometryParams were given.\n * * SceneGeometry of given ID already exists in this SceneModel.\n * * Unsupported primitive type given.\n * * Mandatory vertex positions were not given. Vertex positions are mandatory for all primitive types.\n * * Mandatory indices were not given for primitive type that is not {@link @xeokit/constants!PointsPrimitive}. Indices are mandatory for all primitive types except PointsPrimitive.\n * * Indices out of range of vertex positions.\n * * Indices out of range of vertex UVs.\n * * Mismatch between given quantities of vertex positions and UVs.\n */\n createGeometryCompressed(geometryCompressedParams: SceneGeometryCompressedParams): SceneGeometry | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - SceneModel already built\");\n }\n if (!geometryCompressedParams) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - Parameters expected: geometryCompressedParams\");\n }\n const geometryId = geometryCompressedParams.id;\n if (this.geometries[geometryId]) {\n return new SDKError(`Failed to add compressed Geometry to SceneModel - Geometry with this ID already created: ${geometryId}`);\n }\n const primitive = geometryCompressedParams.primitive;\n if (primitive !== PointsPrimitive && primitive !== LinesPrimitive && primitive !== TrianglesPrimitive && primitive !== SolidPrimitive && primitive !== SurfacePrimitive) {\n return new SDKError(`Failed to add compressed Geometry to SceneModel - Unsupported value for geometryCompressedParams.primitive: '${primitive}' - supported values are PointsPrimitive, LinesPrimitive, TrianglesPrimitive, SolidPrimitive and SurfacePrimitive`);\n }\n const geometry = new SceneGeometry(geometryCompressedParams);\n this.geometries[geometryId] = geometry;\n this.stats.numGeometries++;\n return geometry;\n }\n\n /**\n *\n * @param quantizationRangeParams\n */\n createQuantizationRange(quantizationRangeParams: SceneQuantizationRangeParams): SceneQuantizationRange | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - SceneModel already built\");\n }\n if (!quantizationRangeParams) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - Parameters expected: geometryCompressedParams\");\n }\n const quantizationRangeId = quantizationRangeParams.id;\n if (this.quantizationRanges[quantizationRangeId]) {\n return new SDKError(`Failed to add SceneQuantizationRange to SceneModel - SceneQuantizationRange with this ID already created: ${quantizationRangeId}`);\n }\n const quantizationRange = new SceneQuantizationRange(quantizationRangeParams);\n this.quantizationRanges[quantizationRangeId] = quantizationRange;\n return quantizationRange;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneMesh} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneMesh} in {@link @xeokit/scene!SceneModel.meshes | SceneModel.meshes}.\n * * A {@link @xeokit/scene!SceneMesh} can be owned by one {@link @xeokit/scene!SceneObject}, which can own multiple {@link @xeokit/scene!SceneMesh}es.\n *\n * ### Usage\n *\n * ````javascript\n * const redBoxMesh = sceneModel.createLayerMesh({\n * id: \"redBoxMesh\",\n * geometryId: \"boxGeometry\",\n * textureSetId: \"myTextureSet\",\n * position: [-4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1, 0.3, 0.3]\n * });\n *\n * if (redBoxMesh instanceof SDKError) {\n * console.log(redBoxMesh.message);\n * } else {\n * const redBoxMeshAgain = sceneModel.meshes[\"redBoxMesh\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param meshParams Pre-compressed mesh parameters.\n * @returns *{@link @xeokit/scene!SceneMesh}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneMeshParams were given.\n * * SceneMesh of given ID already exists in this SceneModel.\n * * Specified SceneGeometry could not be found in this SceneModel.\n * * Specified SceneTextureSet could not be found in this SceneModel.\n */\n createMesh(meshParams: SceneMeshParams): SceneMesh | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneMesh in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneMesh in SceneModel - SceneModel already built\");\n }\n if (this.meshes[meshParams.id]) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - SceneMesh already exists with this ID: ${meshParams.id}`);\n }\n const geometry = this.geometries[meshParams.geometryId];\n if (!geometry) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - Geometry not found: ${meshParams.geometryId}`);\n }\n const textureSet = meshParams.textureSetId ? this.textureSets[meshParams.textureSetId] : undefined;\n if (meshParams.textureSetId && !textureSet) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - TextureSet not found: ${meshParams.textureSetId}`);\n }\n let matrix = meshParams.matrix;\n if (!matrix) {\n const position = meshParams.position;\n const scale = meshParams.scale;\n const rotation = meshParams.rotation;\n const quaternion = meshParams.quaternion;\n if (position || scale || rotation || quaternion) {\n matrix = identityMat4();\n composeMat4(position || [0, 0, 0], quaternion || eulerToQuat(rotation || [0, 0, 0], \"XYZ\", identityQuat()), scale || [1, 1, 1], matrix)\n } else {\n matrix = identityMat4();\n }\n } else {\n matrix = matrix.slice();\n }\n const origin = createVec3();\n const rtcMatrix = createRTCModelMat(matrix, origin);\n const tile = this.scene.getTile(origin);\n if (!this.tiles[tile.id]) {\n this.tiles[tile.id] = tile;\n this.tilesList.push(tile);\n }\n const mesh = new SceneMesh({\n id: meshParams.id,\n geometry,\n textureSet,\n matrix,\n rtcMatrix,\n color: meshParams.color,\n opacity: meshParams.opacity,\n tile\n });\n geometry.numMeshes++;\n this.meshes[meshParams.id] = mesh;\n this.stats.numMeshes++;\n return mesh;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneObject}.\n *\n * * Stores the new {@link @xeokit/scene!SceneObject} in {@link @xeokit/scene!SceneModel.objects | SceneModel.objects} and {@link @xeokit/scene!Scene.objects | Scene.objects}.\n * * Fires an event via {@link @xeokit/scene!Scene.onObjectCreated | Scene.onObjectCreated}.\n * * Each {@link @xeokit/scene!SceneMesh} is allowed to belong to one SceneObject.\n * * SceneObject IDs must be unique within the SceneModel's {@link @xeokit/scene!Scene | Scene}.\n *\n * ### Usage\n *\n * ````javascript\n * const redBoxObject = sceneModel.createObject({\n * id: \"redBoxObject\",\n * meshIds: [\"redBoxMesh\"]\n * });\n *\n * if (redBoxObject instanceof SDKError) {\n * console.log(redBoxObject.message);\n * } else {\n * const redBoxObjectAgain = sceneModel.objects[\"redBoxObject\"];\n * const redBoxObjectOnceMore = scene.objects[\"redBoxObject\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param objectParams SceneObject parameters.\n * @returns *{@link @xeokit/scene!SceneObject}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid ObjectParams were given.\n * * SceneObject of given ID already exists in this SceneModel's Scene. Note that SceneObject IDs must be unique within the Scene.\n * * No Meshes were specified.\n * * One or more of the specified Meshes already belong to another SceneObject in this SceneModel.\n * * Specified Meshes could not be found in this SceneModel.\n */\n createObject(objectParams: SceneObjectParams): SceneObject | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneObject - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneObject SceneModel already built\");\n }\n if (objectParams.meshIds.length === 0) {\n return new SDKError(\"Failed to create SceneObject - no meshes specified\");\n }\n const objectId = this.globalizedIds ? `${this.id}.${objectParams.id}` : objectParams.id;\n if (this.scene.objects[objectId]) {\n return new SDKError(`Failed to create SceneObject - SceneObject already exists in Scene: ${objectId}`);\n }\n const meshIds = objectParams.meshIds;\n const meshes = [];\n for (let meshIdIdx = 0, meshIdLen = meshIds.length; meshIdIdx < meshIdLen; meshIdIdx++) {\n const meshId = meshIds[meshIdIdx];\n const mesh = this.meshes[meshId];\n if (!mesh) {\n return new SDKError(`Failed to create SceneObject - SceneMesh not found: ${meshId}`);\n }\n if (this.#meshUsedByObject[meshId]) {\n return new SDKError(`Failed to create SceneObject - SceneMesh ${meshId} already belongs to another SceneObject`);\n }\n meshes.push(mesh);\n this.#meshUsedByObject[mesh.id] = true;\n }\n const sceneObject = new SceneObject({\n id: objectId,\n originallSystemId: objectParams.originalSystemId,\n layerId: this.layerId || objectParams.layerId,\n model: this,\n meshes\n });\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n mesh.object = sceneObject;\n }\n this.#numObjects++;\n this.objects[objectId] = sceneObject;\n this.stats.numObjects++;\n return sceneObject;\n }\n\n /**\n * Finalizes this SceneModel, readying it for use.\n *\n * * Fires an event via {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt} and {@link @xeokit/scene!Scene.onModelCreated | SceneModel.onCreated}, to indicate to subscribers that\n * the SceneModel is complete and ready to use.\n * * Sets {@link @xeokit/scene!SceneModel.built | SceneModel.built} ````true````.\n * * You can only call this method once on a SceneModel.\n * * The SceneModel must have at least one {@link @xeokit/scene!SceneObject}.\n * * Once built, no more components can be created in a SceneModel.\n *\n * ### Usage\n *\n * ````javascript\n * sceneMode.onBuilt.subscribe(()=>{\n * // Our SceneModel is built and ready to use\n * });\n *\n * myScene.onModelCreated.subscribe((sceneModel)=>{\n * // Another way to subscribe to SceneModel readiness\n * });\n *\n * mySceneModel.build().then((result) => { // Asynchronous (texture compression etc).\n * if (result instanceof SDKError) {\n * console.log(result.message);\n * } else {\n * // Now we can do things with our SceneModel\n * }\n * }).catch(sdkError) {// SDKError\n * console.log(sdkError.message);\n * };\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * If no SceneObjects were created in this SceneModel.\n */\n build(): Promise {\n return new Promise((resolve) => {\n if (this.destroyed) {\n throw new SDKError(\"Failed to build SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to build SceneModel - SceneModel already built\");\n }\n this.#removeUnusedComponents()\n // this.#compressTextures().then(() => {\n this.built = true;\n this.onBuilt.dispatch(this, null);\n resolve(this);\n // }).catch((e) => {\n // throw e;\n // });\n });\n }\n\n #removeUnusedComponents() {\n for (let id in this.meshes) {\n const mesh = this.meshes[id];\n if (!mesh.object) {\n mesh.geometry.numMeshes--;\n delete this.meshes[id];\n }\n }\n for (let id in this.geometries) {\n if (this.geometries[id].numMeshes === 0) {\n delete this.geometries[id];\n }\n }\n // let texturesList = [];\n // const textures = {};\n // for (let i = 0, leni = this.texturesList.length; i < leni; i++) {\n // const texture = this.texturesList[i];\n // if (texture.channel !== null) {\n // texture.textureIndex = texturesList.length;\n // texturesList.push(texture);\n // textures[texture.id] = texture;\n // }\n // }\n // this.texturesList = texturesList;\n // this.textures = textures;\n }\n\n /**\n * Gets this SceneModel as JSON.\n */\n getJSON(): SceneModelParams {\n const sceneModelParams = {\n id: this.id,\n geometriesCompressed: [],\n textures: [],\n textureSets: [],\n transforms: [],\n meshes: [],\n objects: []\n };\n if (this.streamParams) {\n sceneModelParams.streamParams = this.streamParams;\n }\n Object.entries(this.geometries).forEach(([key, sceneGeometry]) => {\n sceneModelParams.geometriesCompressed.push((sceneGeometry).getJSON());\n });\n // Object.entries(this.textures).forEach(([key, value]) => {\n // sceneModelParams.textures[key] = (value).getJSON();\n // });\n // Object.entries(this.textureSets).forEach(([key, value]) => {\n // sceneModelParams.textureSets[key] = (value).getJSON();\n // });\n Object.entries(this.meshes).forEach(([key, sceneMesh]) => {\n sceneModelParams.meshes.push((sceneMesh).getJSON());\n });\n Object.entries(this.objects).forEach(([key, sceneObject]) => {\n sceneModelParams.objects.push((sceneObject).getJSON());\n });\n return sceneModelParams;\n }\n\n /**\n * Destroys this SceneModel.\n *\n * Sets {@link Component.destroyed} ````true````.\n */\n destroy() {\n for (let i = 0, len = this.tilesList.length; i < len; i++) {\n this.scene.putTile(this.tilesList[i]);\n }\n super.destroy();\n }\n\n // #compressTextures(): Promise {\n // let countTextures = this.#texturesList.length;\n // return new Promise((resolve) => {\n // if (countTextures === 0) {\n // resolve();\n // return;\n // }\n // for (let i = 0, leni = this.#texturesList.length; i < leni; i++) {\n // const texture = this.#texturesList[i];\n // const encodingOptions = TEXTURE_ENCODING_OPTIONS[texture.channel] || {};\n // if (texture.src) { // SceneTexture created with SceneModel#createTexture({ src: ... })\n // const src = texture.src;\n // const fileExt = src.split('.').pop();\n // switch (fileExt) {\n // case \"jpeg\":\n // case \"jpg\":\n // case \"png\":\n //\n // load(src, ImageLoader, {\n // image: {\n // type: \"data\"\n // }\n // }).then((imageData) => {\n // if (texture.compressed) {\n // encode(imageData, KTX2BasisWriter, encodingOptions).then((encodedData) => {\n // const encodedImageData = new Uint8Array(encodedData);\n // this.stats.textureBytes += encodedImageData.byteLength;\n // texture.imageData = encodedImageData;\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to compress texture: ${err}`);\n // });\n // } else {\n // texture.imageData = new Uint8Array(1);\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to load texture image: ${err}`);\n // });\n // break;\n // default:\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // break;\n // }\n // }\n // if (texture.imageData) {// SceneTexture created with SceneModel#createTexture({ imageData: ... })\n // if (texture.compressed) {\n // encode(texture.imageData, KTX2BasisWriter, encodingOptions)\n // .then((encodedImageData) => {\n // texture.imageData = new Uint8Array(encodedImageData);\n // this.stats.textureBytes += texture.imageData.byteLength;\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to compress texture: ${err}`);\n // });\n // } else {\n // texture.imageData = new Uint8Array(1);\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }\n // }\n // }\n // });\n // }\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {Scene} from \"./Scene\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport type {RendererGeometry} from \"./RendererGeometry\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {IntArrayParam} from \"@xeokit/math\";\n\n/**\n * A geometry in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}\n * * Created with {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}\n * and {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * * Referenced by {@link @xeokit/scene!SceneMesh.geometry | SceneMesh.geometry}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneGeometry {\n\n /**\n * ID for the geometry.\n */\n id: string;\n\n /**\n * Primitive type.\n *\n * Possible values are {@link @xeokit/constants!SolidPrimitive}, {@link @xeokit/constants!SurfacePrimitive},\n * {@link @xeokit/constants!LinesPrimitive}, {@link @xeokit/constants!PointsPrimitive}\n * and {@link @xeokit/constants!TrianglesPrimitive}.\n */\n primitive: number;\n\n /**\n * Axis-aligned, non-quantized 3D boundary of the geometry's vertex positions.\n */\n aabb?: FloatArrayParam;\n\n /**\n * 4x4 matrix to de-quantize the geometry's UV coordinates, when UVs are provided.\n */\n uvsDecompressMatrix?: FloatArrayParam;\n\n /**\n * 3D vertex positions, quantized as 16-bit integers.\n *\n * Internally, the Viewer dequantizes these with {@link @xeokit/scene!SceneGeometry.positionsDecompressMatrix | SceneGeometry.positionsDecompressMatrix}.\n *\n * Vertex positions are required for all primitive types.\n */\n positionsCompressed: IntArrayParam;\n\n /**\n * UV coordinates, quantized as 16-bit integers.\n *\n * Internally, the Viewer de-quantizes these with {@link @xeokit/scene!SceneGeometry.uvsDecompressMatrix | SceneGeometry.uvsDecompressMatrix}.\n */\n uvsCompressed?: IntArrayParam;\n\n /**\n * Vertex RGB colors, quantized as 8-bit integers.\n */\n colorsCompressed?: IntArrayParam;\n\n /**\n * primitive indices.\n *\n * This is either an array of 8-bit, 16-bit or 32-bit values.\n */\n indices?: IntArrayParam;\n\n /**\n * Edge indices.\n *\n * This is either an array of 8-bit, 16-bit or 32-bit values.\n */\n edgeIndices?: IntArrayParam;\n\n /**\n * Interface through which this SceneGeometry can load any user-updated geometry arrays into the renderers.\n *\n * @internal\n */\n rendererGeometry: RendererGeometry | null;\n\n /**\n * TODO\n */\n origin?:FloatArrayParam;\n\n /**\n * The count of {@link @xeokit/scene!SceneMesh | SceneMeshes} that reference this SceneGeometry.\n */\n numMeshes: number;\n\n constructor(params: SceneGeometryCompressedParams) {\n this.id = params.id;\n this.primitive = params.primitive;\n this.positionsCompressed = params.positionsCompressed;\n this.uvsCompressed = params.uvsCompressed;\n this.colorsCompressed = params.colorsCompressed;\n this.indices = params.indices;\n this.edgeIndices = params.edgeIndices;\n this.origin = params.origin;\n this.aabb = params.aabb ? params.aabb.slice() : createAABB3();\n this.numMeshes = 0;\n }\n\n /**\n * Gets this SceneGeometry as JSON.\n */\n getJSON(): SceneGeometryCompressedParams {\n const params = {\n id: this.id,\n primitive: this.primitive,\n aabb: Array.from(this.aabb),\n positionsCompressed: Array.from(this.positionsCompressed)\n };\n if (this.positionsCompressed) {\n params.positionsCompressed = Array.from(this.positionsCompressed);\n }\n if (this.uvsCompressed) {\n params.uvsCompressed = Array.from(this.uvsCompressed);\n }\n if (this.colorsCompressed) {\n params.colorsCompressed = Array.from(this.colorsCompressed);\n }\n if (this.indices) {\n params.indices = Array.from(this.indices);\n }\n if (this.edgeIndices) {\n params.edgeIndices = Array.from(this.edgeIndices);\n }\n return params;\n }\n}\n", "import type {SceneMesh} from \"./SceneMesh\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RendererObject} from \"./RendererObject\";\nimport type {SceneModel} from \"./SceneModel\";\nimport {collapseAABB3, createAABB3, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport {SceneObjectParams} from \"./SceneObjectParams\";\n\n/**\n * An object in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.objects | SceneModel.objects} and {@link @xeokit/scene!Scene.objects | Scene.objects}\n * * Created with {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneObject {\n\n /**\n * Unique ID of this SceneObject.\n *\n * SceneObjects are stored by ID in {@link @xeokit/scene!Scene.objects | Scene.objects}\n * and {@link @xeokit/scene!SceneModel.objects | SceneModel.objects}.\n */\n public readonly id: string;\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModel} that contains this SceneObject.\n */\n public readonly model: SceneModel;\n\n /**\n * ID of this SceneObject within the originating system.\n */\n public readonly originalSystemId: string;\n\n /**\n * The {@link @xeokit/scene!SceneMesh | Meshes} belonging to this SceneObject.\n */\n public readonly meshes: SceneMesh[];\n\n /**\n * Optional layer ID for this SceneObject.\n */\n public readonly layerId?: string;\n\n /**\n * Internal interface through which a {@link @xeokit/viewer!ViewObject | ViewObject} can load property updates\n * into a {@link @xeokit/viewer!Renderer | Renderer} for this SceneObject.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererObject: RendererObject | null;\n\n #aabb: FloatArrayParam;\n #aabbDirty: boolean;\n\n /**\n * @private\n */\n constructor(cfg: {\n model: SceneModel;\n meshes: SceneMesh[];\n id: string;\n originallSystemId?:string;\n layerId?: string;\n }) {\n this.id = cfg.id;\n this.originalSystemId = cfg.originallSystemId || this.id;\n this.layerId = cfg.layerId;\n this.meshes = cfg.meshes;\n this.#aabb = createAABB3();\n this.#aabbDirty = true;\n this.rendererObject = null;\n }\n\n /**\n * Gets the axis-aligned 3D World-space boundary of this SceneObject.\n */\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n collapseAABB3(this.#aabb);\n // getSceneObjectGeometry(this, (geometryView) => {\n // expandAABB3Points3(this.#aabb, geometryView.positionsWorld);\n // return false;\n // });\n this.#aabbDirty = false;\n }\n return this.#aabb;\n }\n\n /**\n * @private\n */\n setAABBDirty() {\n this.#aabbDirty = true;\n }\n\n /**\n * Gets this SceneObject as JSON.\n */\n getJSON(): SceneObjectParams {\n const sceneObjectParams = {\n id: this.id,\n meshIds: []\n };\n if (this.layerId != undefined) {\n sceneObjectParams.layerId = this.layerId;\n }\n if (this.meshes != undefined) {\n for (let i = 0, len = this.meshes.length; i < len; i++) {\n sceneObjectParams.meshIds.push(this.meshes[i].id);\n }\n }\n return sceneObjectParams;\n }\n}\n", "import type {SceneTexture} from \"./SceneTexture\";\nimport type {SceneTextureSetParams} from \"./SceneTextureSetParams\";\nimport type {RendererTextureSet} from \"./RendererTextureSet\";\n\n/**\n * A set of {@link @xeokit/scene!SceneTexture | Textures} in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.textureSets | SceneModel.textureSets}\n * * Created with {@link @xeokit/scene!SceneModel.createTextureSet | SceneModel.createTextureSet}\n * * Referenced by {@link @xeokit/scene!SceneMesh.textureSet | SceneMesh.textureSet}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTextureSet {\n\n /**\n * The ID of this SceneTextureSet.\n */\n id: string;\n\n /**\n * The color {@link @xeokit/scene!SceneTexture} in this set.\n */\n colorTexture?: SceneTexture;\n\n /**\n * The metallic-roughness {@link @xeokit/scene!SceneTexture} in this set.\n */\n metallicRoughnessTexture?: SceneTexture;\n\n /**\n * The occlusion {@link @xeokit/scene!SceneTexture} in this set.\n */\n occlusionTexture?: SceneTexture;\n\n /**\n * The emissive {@link @xeokit/scene!SceneTexture} in this set.\n */\n emissiveTexture?: SceneTexture;\n\n /**\n * Internal interface through which a SceneTextureSet can load property updates into a renderers.\n *\n * This is defined while the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererTextureSet: RendererTextureSet | null;\n\n /**\n * @private\n */\n constructor(textureSetParams: SceneTextureSetParams,\n textures: {\n emissiveTexture?: SceneTexture;\n occlusionTexture?: SceneTexture;\n metallicRoughnessTexture?: SceneTexture;\n colorTexture?: SceneTexture;\n }) {\n\n this.id = textureSetParams.id;\n this.colorTexture = textures.colorTexture;\n this.metallicRoughnessTexture = textures.metallicRoughnessTexture;\n this.occlusionTexture = textures.occlusionTexture;\n this.emissiveTexture = textures.emissiveTexture;\n this.rendererTextureSet = null;\n }\n}\n", "import {\n ClampToEdgeWrapping,\n GIFMediaType,\n JPEGMediaType,\n LinearEncoding,\n LinearFilter,\n LinearMipmapLinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n MirroredRepeatWrapping,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n PNGMediaType,\n RepeatWrapping,\n sRGBEncoding\n} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RendererTexture} from \"./RendererTexture\";\nimport type {SceneTextureParams} from \"./SceneTextureParams\";\nimport {createVec4} from \"@xeokit/matrix\";\n\n/**\n * A texture in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.textures | SceneModel.textures}\n * * Created with {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}\n * * Referenced by {@link @xeokit/scene!SceneTextureSet.colorTexture | SceneTextureSet.colorTexture},\n * {@link @xeokit/scene!SceneTextureSet.metallicRoughnessTexture | SceneTextureSet.metallicRoughnessTexture},\n * {@link @xeokit/scene!SceneTextureSet.occlusionTexture | SceneTextureSet.occlusionTexture} and {@link @xeokit/scene!SceneTextureSet.emissiveTexture | SceneTextureSet.emissiveTexture}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTexture {\n\n /**\n * Internal interface through which this {@link @xeokit/scene!SceneTexture} can load property updates into a renderers.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererTexture: RendererTexture | null;\n\n /**\n * ID for the texture.\n */\n id: string;\n\n /**\n * Path to an image file.\n */\n src?: string;\n\n /**\n * Image file data.\n */\n imageData?: any;\n\n /**\n * Transcoded texture data.\n */\n buffers?: ArrayBuffer[];\n\n /**\n * HTMLImage containing the texture image.\n */\n image?: HTMLImageElement;\n\n /**\n * Pixel height of the texture.\n */\n height: number;\n\n /**\n * Pixel width of the texture.\n */\n width: number;\n\n /**\n * True if the texture is compressed.\n */\n compressed: boolean;\n\n /**\n * Media type of this SceneTexture.\n *\n * Supported values are {@link @xeokit/constants!GIFMediaType}, {@link @xeokit/constants!PNGMediaType} and {@link @xeokit/constants!JPEGMediaType}.\n *\n * Ignored for compressed textures.\n */\n mediaType?: number;\n\n /**\n * How the texture is sampled when a texel covers more than one pixel.\n *\n * Supported values are {@link @xeokit/constants!LinearFilter} and {@link @xeokit/constants!NearestFilter}.\n */\n magFilter: number;\n\n /**\n * How the texture is sampled when a texel covers less than one pixel. Supported values\n * are {@link @xeokit/constants!LinearMipmapLinearFilter}, {@link @xeokit/constants!LinearMipMapNearestFilter},\n * {@link @xeokit/constants!NearestMipMapNearestFilter}, {@link @xeokit/constants!NearestMipMapLinearFilter}\n * and {@link @xeokit/constants!LinearMipMapLinearFilter}.\n *\n * Ignored for compressed textures.\n */\n minFilter: number;\n\n /**\n * S wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapS: number;\n\n /**\n * T wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapT: number;\n\n /**\n * R wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapR: number;\n\n /**\n * Flips this SceneTexture's source data along its vertical axis when ````true````.\n */\n flipY: boolean;\n\n /**\n * SceneTexture encoding format.\n *\n * Supported values are {@link @xeokit/constants!LinearEncoding} and {@link @xeokit/constants!sRGBEncoding}.\n */\n encoding: number;\n\n /**\n * RGBA color to preload the texture with.\n */\n preloadColor: FloatArrayParam;\n\n /**\n * @private\n */\n channel: number;\n\n /**\n * @private\n */\n constructor(params: SceneTextureParams) {\n this.id = params.id;\n this.imageData = params.imageData;\n this.src = params.src;\n this.mediaType = params.mediaType;\n this.minFilter = params.minFilter || LinearMipMapNearestFilter;\n this.magFilter = params.magFilter || LinearMipMapNearestFilter;\n this.wrapS = params.wrapS || RepeatWrapping;\n this.wrapT = params.wrapT || RepeatWrapping;\n this.wrapR = params.wrapR || RepeatWrapping\n this.encoding = params.encoding || LinearEncoding;\n this.preloadColor = createVec4(params.preloadColor || [1, 1, 1, 1]);\n this.channel = 0;\n this.rendererTexture = null;\n }\n}\n\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, identityMat4, isIdentityMat4} from \"@xeokit/matrix\";\nimport type {RendererMesh} from \"./RendererMesh\";\nimport type {SceneGeometry} from \"./SceneGeometry\";\nimport type {SceneTextureSet} from \"./SceneTextureSet\";\nimport type {SceneObject} from \"./SceneObject\";\nimport type {SceneMeshParams} from \"./SceneMeshParams\";\nimport {SceneTile} from \"./SceneTile\";\n\n/**\n * A mesh in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.meshes | SceneModel.meshes}\n * * Created with {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh}\n * * Referenced by {@link @xeokit/scene!SceneObject.meshes | SceneObject.meshes}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneMesh {\n\n /**\n * Unique ID of this SceneMesh.\n *\n * SceneMesh is stored by this ID in {@link @xeokit/scene!SceneModel.meshes}.\n */\n readonly id: string;\n\n /**\n * {@link @xeokit/scene!SceneTile} this SceneMesh belongs to.\n */\n readonly tile: SceneTile;\n\n /**\n * {@link @xeokit/scene!SceneGeometry} used by this SceneMesh.\n */\n readonly geometry: SceneGeometry;\n\n /**\n * {@link @xeokit/scene!SceneTextureSet} used by this SceneMesh.\n */\n readonly textureSet?: SceneTextureSet;\n\n /**\n * Internal interface through which a {@link @xeokit/scene!SceneMesh} can load property updates into a renderers.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to\n * a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererMesh: RendererMesh | null;\n\n /**\n * The {@link @xeokit/scene!SceneObject} that uses this SceneMesh.\n */\n object: SceneObject | null;\n\n /**\n * TODO\n */\n streamLayerIndex: number;\n\n #color: FloatArrayParam;\n #matrix: FloatArrayParam;\n #rtcMatrix: FloatArrayParam;\n #opacity: number;\n\n readonly origin: FloatArrayParam;\n\n /**\n * @private\n */\n constructor(meshParams: {\n id: string;\n geometry: SceneGeometry;\n textureSet?: SceneTextureSet;\n matrix?: FloatArrayParam;\n rtcMatrix?: FloatArrayParam;\n color?: FloatArrayParam;\n opacity?: number;\n tile: SceneTile;\n streamLayerIndex?: number;\n }) {\n this.id = meshParams.id;\n this.#matrix = meshParams.matrix ? createMat4(meshParams.matrix) : identityMat4();\n this.#rtcMatrix = meshParams.rtcMatrix ? createMat4(meshParams.rtcMatrix) : identityMat4();\n this.geometry = meshParams.geometry;\n this.textureSet = meshParams.textureSet;\n this.rendererMesh = null;\n this.color = meshParams.color || new Float32Array([1, 1, 1]);\n this.opacity = (meshParams.opacity !== undefined && meshParams.opacity !== null) ? meshParams.opacity : 1.0;\n this.tile = meshParams.tile;\n this.streamLayerIndex = meshParams.streamLayerIndex !== undefined ? meshParams.streamLayerIndex : 0;\n }\n\n /**\n * Gets the RGB color for this SceneMesh.\n *\n * Each element of the color is in range ````[0..1]````.\n */\n get color(): FloatArrayParam {\n return this.#color;\n }\n\n /**\n * Sets the RGB color for this SceneMesh.\n *\n * Each element of the color is in range ````[0..1]````.\n */\n set color(value: FloatArrayParam) {\n let color = this.#color;\n if (!color) {\n color = this.#color = new Float32Array(4);\n color[3] = 1;\n }\n if (value) {\n color[0] = value[0];\n color[1] = value[1];\n color[2] = value[2];\n } else {\n color[0] = 1;\n color[1] = 1;\n color[2] = 1;\n }\n if (this.rendererMesh) {\n this.rendererMesh.setColor(this.#color);\n }\n }\n\n /**\n * Gets this SceneMesh's local modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @type {FloatArrayParam}\n */\n get matrix(): FloatArrayParam {\n return this.#matrix;\n }\n\n /**\n * Gets this SceneMesh's RTC modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @internal\n * @type {FloatArrayParam}\n */\n get rtcMatrix(): FloatArrayParam {\n return this.#rtcMatrix;\n }\n\n /**\n * Updates this SceneMesh's local modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @type {FloatArrayParam}\n */\n set matrix(matrix: FloatArrayParam) {\n if (matrix) {\n // @ts-ignore\n this.#matrix.set(matrix);\n } else {\n identityMat4(this.#matrix);\n }\n if (this.rendererMesh) {\n this.rendererMesh.setMatrix(this.#matrix);\n }\n if (this.object) {\n this.object.setAABBDirty();\n }\n }\n\n /**\n * Gets the opacity factor for this SceneMesh.\n *\n * This is a factor in range ````[0..1]````.\n */\n get opacity(): number {\n return this.#opacity;\n }\n\n /**\n * Sets the opacity factor for this SceneMesh.\n *\n * This is a factor in range ````[0..1]````.\n */\n set opacity(opacity: number) {\n opacity = (opacity !== undefined && opacity !== null) ? opacity : 1.0;\n if (this.#opacity === opacity) {\n return;\n }\n this.#opacity = opacity;\n if (this.rendererMesh) {\n // this.rendererMesh.setOpacity(this.#opacity);\n }\n }\n\n /**\n * Gets this SceneMesh as JSON.\n */\n getJSON(): SceneMeshParams {\n const meshParams = {\n streamLayerIndex: this.streamLayerIndex || 0,\n id: this.id,\n geometryId: this.geometry.id,\n color: Array.from(this.#color),\n opacity: this.#opacity\n };\n if (!isIdentityMat4(this.#matrix)) {\n meshParams.matrix = Array.from(this.#matrix);\n }\n if (this.textureSet !== undefined) {\n meshParams.textureSetId = this.textureSet.id;\n }\n return meshParams;\n }\n}\n", "import {DEGTORAD, type FloatArrayParam, type IntArrayParam} from \"@xeokit/math\";\nimport {createVec3, cross3Vec3, dotVec3, normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {decompressPoint3WithAABB3, decompressPoint3WithMat4} from \"@xeokit/compression\";\n\nconst uniquePositions: number[] = [];\nconst indicesLookup: number[] = [];\nconst indicesReverseLookup: number[] = [];\nconst weldedIndices: number[] = [];\n\n// TODO: Optimize with caching, but need to cater to both compressed and uncompressed positions\n\nconst faces: { normal: number[]; }[] = [];\nlet numFaces = 0;\nconst compa = new Uint16Array(3);\nconst compb = new Uint16Array(3);\nconst compc = new Uint16Array(3);\nconst a = createVec3();\nconst b = createVec3();\nconst c = createVec3();\nconst cb = createVec3();\nconst ab = createVec3();\nconst cross = createVec3();\nconst normal = createVec3();\n\nfunction weldVertices(positions: FloatArrayParam, indices: IntArrayParam) {\n const positionsMap = {}; // Hashmap for looking up vertices by position coordinates (and making sure they are unique)\n let vx;\n let vy;\n let vz;\n let key;\n const precisionPoints = 4; // number of decimal points, e.g. 4 for epsilon of 0.0001\n const precision = Math.pow(10, precisionPoints);\n let i;\n let len;\n let lenUniquePositions = 0;\n for (i = 0, len = positions.length; i < len; i += 3) {\n vx = positions[i];\n vy = positions[i + 1];\n vz = positions[i + 2];\n key = Math.round(vx * precision) + '_' + Math.round(vy * precision) + '_' + Math.round(vz * precision);\n // @ts-ignore\n if (positionsMap[key] === undefined) {\n // @ts-ignore\n positionsMap[key] = lenUniquePositions / 3;\n uniquePositions[lenUniquePositions++] = vx;\n uniquePositions[lenUniquePositions++] = vy;\n uniquePositions[lenUniquePositions++] = vz;\n }\n // @ts-ignore\n indicesLookup[i / 3] = positionsMap[key];\n }\n for (i = 0, len = indices.length; i < len; i++) {\n weldedIndices[i] = indicesLookup[indices[i]];\n indicesReverseLookup[weldedIndices[i]] = indices[i];\n }\n}\n\nfunction buildFaces(numIndices: number, aabb: FloatArrayParam) {\n numFaces = 0;\n for (let i = 0, len = numIndices; i < len; i += 3) {\n const ia = ((weldedIndices[i]) * 3);\n const ib = ((weldedIndices[i + 1]) * 3);\n const ic = ((weldedIndices[i + 2]) * 3);\n if (aabb) {\n compa[0] = uniquePositions[ia];\n compa[1] = uniquePositions[ia + 1];\n compa[2] = uniquePositions[ia + 2];\n compb[0] = uniquePositions[ib];\n compb[1] = uniquePositions[ib + 1];\n compb[2] = uniquePositions[ib + 2];\n compc[0] = uniquePositions[ic];\n compc[1] = uniquePositions[ic + 1];\n compc[2] = uniquePositions[ic + 2];\n // Decode\n decompressPoint3WithAABB3(compa, aabb, a);\n decompressPoint3WithAABB3(compb, aabb, b);\n decompressPoint3WithAABB3(compc, aabb, c);\n } else {\n a[0] = uniquePositions[ia];\n a[1] = uniquePositions[ia + 1];\n a[2] = uniquePositions[ia + 2];\n b[0] = uniquePositions[ib];\n b[1] = uniquePositions[ib + 1];\n b[2] = uniquePositions[ib + 2];\n c[0] = uniquePositions[ic];\n c[1] = uniquePositions[ic + 1];\n c[2] = uniquePositions[ic + 2];\n }\n subVec3(c, b, cb);\n subVec3(a, b, ab);\n cross3Vec3(cb, ab, cross);\n normalizeVec3(cross, normal);\n // @ts-ignore\n const face = faces[numFaces] || (faces[numFaces] = {normal: createVec3()});\n face.normal[0] = normal[0];\n face.normal[1] = normal[1];\n face.normal[2] = normal[2];\n numFaces++;\n }\n}\n\n\n/**\n * Builds edge connectivity indices from a 3D triangle mesh given as vertex positions and triangle indices\n * @private\n */\nexport function buildEdgeIndices(\n positions: FloatArrayParam,\n indices: IntArrayParam,\n aabb: FloatArrayParam,\n edgeThreshold: number): IntArrayParam {\n\n weldVertices(positions, indices);\n buildFaces(indices.length, aabb);\n\n const edgeIndices = [];\n const thresholdDot = Math.cos(DEGTORAD * edgeThreshold);\n const edges = {};\n\n let edge1;\n let edge2;\n let index1;\n let index2;\n let key;\n let largeIndex = false;\n let edge;\n let normal1;\n let normal2;\n let dot;\n let ia;\n let ib;\n\n for (let i = 0, len = indices.length; i < len; i += 3) {\n const faceIndex = i / 3;\n for (let j = 0; j < 3; j++) {\n edge1 = weldedIndices[i + j];\n edge2 = weldedIndices[i + ((j + 1) % 3)];\n index1 = Math.min(edge1, edge2);\n index2 = Math.max(edge1, edge2);\n key = index1 + \",\" + index2;\n // @ts-ignore\n if (edges[key] === undefined) {\n // @ts-ignore\n edges[key] = {\n index1: index1,\n index2: index2,\n face1: faceIndex,\n face2: undefined\n };\n } else {\n // @ts-ignore\n edges[key].face2 = faceIndex;\n }\n }\n }\n\n for (key in edges) {\n // @ts-ignore\n edge = edges[key];\n // an edge is only rendered if the angle (in degrees) between the face normals of the adjoining faces exceeds this value. default = 1 degree.\n if (edge.face2 !== undefined) {\n normal1 = faces[edge.face1].normal;\n normal2 = faces[edge.face2].normal;\n dot = dotVec3(normal1, normal2);\n if (dot > thresholdDot) {\n continue;\n }\n }\n ia = indicesReverseLookup[edge.index1];\n ib = indicesReverseLookup[edge.index2];\n if (!largeIndex && ia > 65535 || ib > 65535) {\n largeIndex = true;\n }\n edgeIndices.push(ia);\n edgeIndices.push(ib);\n }\n\n return (largeIndex) ? new Uint32Array(edgeIndices) : new Uint16Array(edgeIndices);\n}\n", "import {createMat4, createVec3} from \"@xeokit/matrix\";\nimport {collapseAABB3, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {compressRGBColors, quantizePositions3} from \"@xeokit/compression\";\nimport {buildEdgeIndices} from \"./buildEdgeIndices\";\nimport type {SceneGeometryParams} from \"./SceneGeometryParams\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport {worldToRTCPositions} from \"@xeokit/rtc\";\n\nconst rtcCenter = createVec3();\n\n/**\n * Compresses a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * See {@link @xeokit/scene} for usage examples.\n *\n * @param geometryParams Uncompressed geometry params.\n * @returns Compressed geometry params.\n */\nexport function compressGeometryParams(geometryParams: SceneGeometryParams): SceneGeometryCompressedParams {\n const rtcNeeded = worldToRTCPositions(geometryParams.positions, geometryParams.positions, rtcCenter);\n const aabb = collapseAABB3();\n expandAABB3Points3(aabb, geometryParams.positions);\n const positionsCompressed = quantizePositions3(geometryParams.positions, aabb);\n if (geometryParams.primitive === PointsPrimitive) {\n return {\n id: geometryParams.id,\n primitive: PointsPrimitive,\n aabb,\n uvsDecompressMatrix: undefined,\n positionsCompressed,\n colorsCompressed: geometryParams.colors ? compressRGBColors(geometryParams.colors) : null,\n origin: rtcNeeded ? rtcCenter : null\n };\n }\n if (geometryParams.primitive === LinesPrimitive) {\n return {\n id: geometryParams.id,\n primitive: LinesPrimitive,\n aabb,\n positionsCompressed,\n indices: geometryParams.indices,\n origin: rtcNeeded ? rtcCenter : null\n };\n } else {\n const edgeIndices = (geometryParams.primitive === SolidPrimitive\n || geometryParams.primitive === SurfacePrimitive\n || geometryParams.primitive === TrianglesPrimitive) && geometryParams.indices\n ? buildEdgeIndices(positionsCompressed, geometryParams.indices, aabb, 10)\n : null;\n return { // Assume that closed triangle mesh is decomposed into open surfaces\n id: geometryParams.id,\n primitive: geometryParams.primitive,\n aabb,\n positionsCompressed,\n indices: geometryParams.indices,\n edgeIndices,\n origin: rtcNeeded ? rtcCenter : null\n };\n }\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneQuantizationRangeParams} from \"./SceneQuantizationRangeParams\";\n\n\n/**\n * A geometry in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.quantizationRanges | SceneModel.quantizationRanges}\n * * Created with {@link @xeokit/scene!SceneModel.createQuantizationRange | SceneModel.createQuantizationRange}\n * * Referenced by {@link @xeokit/scene!SceneGeometry.geometry | SceneGeometry.geometry}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneQuantizationRange {\n\n /**\n * ID for the geometry.\n */\n id: string;\n\n /**\n * Axis-aligned 3D boundary to dequantize the positions.\n */\n aabb: FloatArrayParam;\n\n constructor(params: SceneQuantizationRangeParams) {\n this.aabb = params.aabb ? params.aabb.slice() : createAABB3();\n }\n\n /**\n * Gets this SceneQuantizationRange as JSON.\n */\n getJSON(): SceneQuantizationRangeParams {\n const quantizationRangeParams = {\n id: this.id,\n aabb: [\n this.aabb[0],\n this.aabb[1],\n this.aabb[2],\n this.aabb[3],\n this.aabb[4],\n this.aabb[5]\n ]\n };\n\n return quantizationRangeParams;\n }\n}\n", "import {Scene} from \"./Scene\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {SceneModel} from \"./SceneModel\";\nimport {SceneObject} from \"./SceneObject\";\n\n/**\n * A tile in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n *\n * * {@link @xeokit/scene!SceneMeshParams.origin | SceneMeshParams.origin}\n * * Stored in {@link @xeokit/scene!SceneModel.tiles | SceneModel.tiles}\n * * Created automatically for each distinct value of {@link @xeokit/scene!SceneMeshParams.origin | SceneMeshParams.origin} given to {@link @xeokit/scene!SceneMeshParams.createMesh | SceneMeshParams.createMesh}\n * * Each SceneTile is destroyed as soon all {@link @xeokit/scene!SceneTile | SceneTiles} with that origin heve been destroyed\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTile {\n\n /**\n * Unique ID of this SceneTile.\n */\n public readonly id: string;\n\n /**\n * The Scene that owns this SceneTile.\n */\n public readonly scene: Scene;\n\n /**\n * The 3D World-space origin of this SceneTile.\n */\n public readonly origin: FloatArrayParam;\n\n /**\n * The number of {@link @xeokit/scene!SceneMesh | SceneMeshes} associated with this SceneTile.\n */\n public numObjects: number;\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModels} belonging to this SceneTile, each keyed to\n * its {@link @xeokit/scene!SceneModel.id | SceneModel.id}.\n *\n * A SceneModel can belong to more than one SceneTile.\n */\n public readonly models: { [key: string]: SceneModel };\n\n /**\n * The {@link @xeokit/scene!SceneObject | SceneObjects} in this SceneTile,\n * mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n *\n * A SceneObject can belong to more than one SceneTile.\n */\n public readonly objects: { [key: string]: SceneObject };\n\n /**\n * @private\n * @param scene\n * @param id\n * @param origin\n */\n constructor(scene: Scene, id: string, origin: FloatArrayParam) {\n this.scene = scene;\n this.id = id;\n this.origin = origin;\n this.numObjects = 0;\n this.models = {};\n this.objects = {};\n }\n}\n", "import type {SceneObject} from \"./SceneObject\";\nimport type {SceneMesh} from \"./SceneMesh\";\nimport {decompressPositions3WithAABB3} from \"@xeokit/compression\";\nimport {transformPositions3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneGeometry} from \"./SceneGeometry\";\nimport {LinesPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * The {@link getSceneObjectGeometry} passes an instance of GeometryView to its callback\n * for each {@link @xeokit/scene!SceneGeometry} it visits.\n *\n * The GeometryView provides the SceneObject, SceneMesh and SceneGeometry at the current state\n * of iteration, along with accessors through which the caller can\n * get various resources that the GeometryView lazy-computes on-demand, such as decompressed vertex positions, World-space\n * vertex positons, and decompressed vertex UV coordinates.\n */\nexport interface GeometryView {\n\n /**\n * The current {@link @xeokit/scene!SceneObject}.\n */\n object: SceneObject;\n\n /**\n * The current {@link @xeokit/scene!SceneMesh}.\n */\n mesh: SceneMesh;\n\n /**\n * The current {@link @xeokit/scene!SceneMesh | SceneMesh's} position in {@link @xeokit/scene!SceneModel.meshes | SceneObject.meshes}.\n */\n meshIndex: number;\n\n /**\n * The current {@link @xeokit/scene!SceneGeometry}.\n */\n geometry: SceneGeometry;\n\n /**\n * The number of primitives in the current {@link @xeokit/scene!SceneGeometry}.\n */\n readonly numPrimitives: number;\n\n /**\n * The current 3D vertex positions, dequantized, as 32-bit floats.\n */\n readonly positionsDecompressed: FloatArrayParam;\n\n /**\n * The current 3D World-space vertex positions, dequantized and world-transformed, as 64-bit floats.\n */\n readonly positionsWorld: FloatArrayParam;\n\n /**\n * The current vertex UV coordinates, if any, dequantized to 32-bit floats.\n */\n readonly uvsDecompressed: FloatArrayParam;\n}\n\nclass GeometryViewImpl {\n\n object: SceneObject | null;\n mesh: SceneMesh | null;\n meshIndex: number;\n geometry: SceneGeometry | null;\n\n #positionsDecompressed: Float32Array | null;\n #positionsWorld: Float64Array | null;\n\n constructor() {\n this.object = null;\n this.mesh = null;\n this.meshIndex = 0;\n this.geometry = null;\n this.#positionsDecompressed = null;\n this.#positionsWorld = null;\n }\n\n get numPrimitives() {\n const primitiveType = (this.geometry).primitive;\n const elementsPerPrimitiveType = (primitiveType === TrianglesPrimitive ? 3 : (primitiveType === LinesPrimitive ? 2 : 1));\n return this.geometry.indices.length / elementsPerPrimitiveType;\n }\n\n get positionsDecompressed(): FloatArrayParam {\n if (!this.#positionsDecompressed) {\n this.#positionsDecompressed = new Float32Array((this.geometry).positionsCompressed.length);\n decompressPositions3WithAABB3((this.geometry).positionsCompressed, (this.geometry).aabb, this.#positionsDecompressed);\n }\n return this.#positionsDecompressed;\n }\n\n get positionsWorld(): FloatArrayParam {\n if (!this.#positionsWorld) {\n const positionsDecompressed = this.positionsDecompressed;\n this.#positionsWorld = new Float64Array(positionsDecompressed.length);\n transformPositions3(positionsDecompressed, (this.mesh).matrix, this.#positionsWorld);\n }\n return this.#positionsWorld;\n }\n\n get uvsDecompressed(): FloatArrayParam | null{\n return null;\n }\n\n reset() {\n this.#positionsDecompressed = null;\n this.#positionsWorld = null;\n }\n}\n\nconst geometryView = new GeometryViewImpl();\n\n/**\n * Gets the uncompressed, World-space geometry of each {@link @xeokit/scene!SceneGeometryBucket} in each\n * {@link @xeokit/scene!SceneGeometry} in each {@link @xeokit/scene!SceneMesh} in a {@link @xeokit/scene!SceneObject}.\n *\n * If the callback returns ````true````, then this method immediately stops iterating and also returns ````true````.\n *\n * @param sceneObject\n * @param withEachGeometry\n */\nexport function getSceneObjectGeometry(sceneObject: SceneObject, withEachGeometry: (geometryView: GeometryView) => boolean): boolean {\n // geometryView.reset();\n // geometryView.object = sceneObject;\n // for (let i = 0, len = sceneObject.meshes.length; i < len; i++) {\n // const mesh = sceneObject.meshes[i];\n // geometryView.mesh = mesh;\n // geometryView.meshIndex = i;\n // const geometry = mesh.geometry;\n // geometryView.geometry = geometry;\n // for (let j = 0, lenj = geometry.geometryBuckets.length; j < lenj; j++) {\n // geometryView.geometryBucket = geometry.geometryBuckets[j];\n // geometryView.geometryBucketIndex = j;\n // if (withEachGeometry(geometryView)) {\n // return true;\n // }\n // }\n // }\n return false;\n}\n", "import {composeMat4, eulerToQuat, identityMat4, identityQuat} from \"@xeokit/matrix\";\nimport {FloatArrayParam} from \"@xeokit/math\";\n\nconst identityQuaternion = identityQuat();\n\n/**\n * Helper function to build 4x4 transform matrices.\n *\n * @param params\n */\nexport function buildMat4(params: {\n quaternion?: FloatArrayParam;\n rotation?: FloatArrayParam;\n scale?: FloatArrayParam;\n position?: FloatArrayParam;\n\n}) {\n const matrix = identityMat4();\n const position = params.position;\n const scale = params.scale;\n const rotation = params.rotation;\n const quaternion = params.quaternion;\n if (position || scale || rotation || quaternion) {\n composeMat4(\n position || [0, 0, 0],\n quaternion || (rotation\n ? eulerToQuat(rotation, \"XYZ\", identityQuat())\n : identityQuaternion),\n scale || [1, 1, 1],\n matrix);\n }\n return matrix;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * \n *\n * # xeokit 2D Collision Utilities\n *\n * ---\n *\n * ### *Tools for spatial searches and collision tests with 2D k-d trees and boundaries*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/kdtree2\n * ````\n *\n * ## Dependencies\n *\n * * {@link \"@xeokit/scene\" | @xeokit/scene}\n * * {@link \"@xeokit/core\" | @xeokit/core}\n * * {@link \"@xeokit/math\" | @xeokit/math}\n * * {@link \"@xeokit/boundaries\" | @xeokit/boundaries}\n *\n * ## Usage\n *\n * ````javascript\n *\n * ````\n *\n * @module @xeokit/kdtree2\n */\nexport * from \"./KdTree2\";\nexport * from \"./createKdTree2FromSceneObjectVerts\";\nexport * from \"./searchKdTree2ForNearestNeighbor\";\nexport {KdVertex2} from \"./KdVertex2\";\n", "import type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {containsAABB2} from \"@xeokit/boundaries\";\n\nconst MAX_KD_TREE_DEPTH = 10; // Increase if greater precision needed\nconst kdTreeDimLength = new Float32Array(2);\n\n/**\n * An item stored in a 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdItem2D {\n\n /**\n * The item stored in this KdItem2D.\n */\n item: any;\n}\n\n/**\n * A 2D k-d tree node.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdNode2D {\n\n /**\n * The axis-aligned 2D boundary of this kd-tree node.\n */\n aabb: FloatArrayParam;\n\n /**\n * The left KD2Node.\n */\n left?: KdNode2D;\n\n /**\n * The right KD2Node.\n */\n right?: KdNode2D;\n\n /**\n * The {@link KdItem2D | KdItem2Ds} stored in this KD2Node.\n */\n items?: KdItem2D[];\n}\n\n/**\n * Parameters for creating a 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdTree2DParams {\n\n /**\n * The 2D boundary of all the nodes we'll add to this k-d tree.\n */\n aabb: FloatArrayParam;\n\n /**\n * Maximum depth of the 2D kd-tree.\n */\n maxDepth?: number;\n}\n\n/**\n * A static 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport class KdTree2 {\n\n /**\n * The root node in this k-d tree.\n */\n readonly root: KdNode2D;\n\n /**\n * The maximum allowed depth of this 2D k-d tree.\n */\n readonly maxDepth: number;\n\n /**\n * Creates a new 2D k-d tree.\n *\n * @param params\n */\n constructor(params?: KdTree2DParams) {\n this.maxDepth = params?.maxDepth || MAX_KD_TREE_DEPTH;\n\n this.root = {\n // @ts-ignore\n aabb: params.aabb.slice()\n };\n }\n\n /**\n * Inserts a bounded item into this 2D k-d tree.\n *\n * @param item\n * @param aabb\n */\n insertItem(item: any, aabb: IntArrayParam) {\n this.#insertItem(this.root, {item}, aabb, 1)\n }\n\n #insertItem(node: KdNode2D, item: KdItem2D, aabb: IntArrayParam, depth: number) {\n if (depth >= this.maxDepth) {\n node.items = node.items || [];\n node.items.push(item);\n return;\n }\n if (node.left) {\n if (containsAABB2(node.left.aabb, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (node.right) {\n if (containsAABB2(node.right.aabb, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n const nodeAABB = node.aabb;\n kdTreeDimLength[0] = nodeAABB[2] - nodeAABB[0];\n kdTreeDimLength[1] = nodeAABB[3] - nodeAABB[1];\n let dim = 0;\n if (kdTreeDimLength[1] > kdTreeDimLength[dim]) {\n dim = 1;\n }\n if (!node.left) {\n const aabbLeft = nodeAABB.slice();\n aabbLeft[dim + 2] = ((nodeAABB[dim] + nodeAABB[dim + 2]) / 2.0);\n node.left = {\n aabb: aabbLeft\n };\n if (containsAABB2(aabbLeft, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (!node.right) {\n const aabbRight = nodeAABB.slice();\n aabbRight[dim] = ((nodeAABB[dim] + nodeAABB[dim + 2]) / 2.0);\n node.right = {\n aabb: aabbRight\n };\n if (containsAABB2(aabbRight, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n node.items = node.items || [];\n node.items.push(item);\n }\n}\n", "import {type GeometryView, getSceneObjectGeometry, SceneObject} from \"@xeokit/scene\";\nimport {\n INSIDE,\n INTERSECT,\n OUTSIDE,\n setFrustum3,\n intersectFrustum3AABB3,\n intersectFrustum3Point3\n} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, createVec4, transformPoint4} from \"@xeokit/matrix\";\nimport {KdTree2} from \"./KdTree2\";\nimport type {KdVertex2} from \"./KdVertex2\";\n\n/**\n * A k-d tree to accelerate intersection and nearest-neighbour tests on the projected\n * 2D canvas positions of {@link @xeokit/scene!SceneObject} geometry vertices.\n *\n * See {@link \"@xeokit/kd-canvas-verts\"} for usage.\n */\nexport function createKdTree2FromSceneObjectVerts(params: {\n viewMatrix: FloatArrayParam,\n projMatrix: FloatArrayParam,\n canvasBoundary: FloatArrayParam,\n sceneObjects: SceneObject[]\n}): KdTree2 {\n\n const kdTree2D = new KdTree2({\n aabb: params.canvasBoundary\n });\n\n const viewMatrix = createMat4(params.viewMatrix);\n const projMatrix = createMat4(params.projMatrix);\n const frustum = setFrustum3(viewMatrix, projMatrix);\n const canvasBoundary = params.canvasBoundary;\n const sceneObjects = params.sceneObjects;\n\n if (sceneObjects) {\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n insertSceneObject(sceneObjects[i]);\n }\n }\n\n function insertSceneObject(sceneObject: SceneObject, intersects: number = INTERSECT) {\n if (intersects !== INSIDE) {\n intersects = intersectFrustum3AABB3(frustum, sceneObject.aabb);\n }\n if (intersects === OUTSIDE) {\n return;\n }\n // @ts-ignore\n getSceneObjectGeometry(sceneObject, (geometryView: GeometryView): boolean | undefined => {\n const positionsWorld = geometryView.positionsWorld;\n for (let i = 0, len = positionsWorld.length; i < len; i += 3) {\n const worldPos = createVec4();\n worldPos[0] = positionsWorld[i];\n worldPos[1] = positionsWorld[i + 1];\n worldPos[2] = positionsWorld[i + 2];\n worldPos[3] = 1.0;\n if (intersects === INSIDE || intersectFrustum3Point3(frustum, worldPos)) {\n insertVertex(sceneObject, worldPos);\n }\n }\n return false;\n });\n }\n\n function insertVertex(sceneObject: SceneObject, worldPos: FloatArrayParam) {\n const viewPos = createVec4();\n const projPos = createVec4();\n const canvasPos = new Uint16Array(2);\n transformPoint4(viewMatrix, worldPos, viewPos);\n transformPoint4(projMatrix, viewPos, projPos);\n canvasPos[0] = Math.floor((1 + projPos[0] / projPos[3]) * canvasBoundary[2] / 2);\n canvasPos[1] = Math.floor((1 - projPos[1] / projPos[3]) * canvasBoundary[3] / 2);\n kdTree2D.insertItem({sceneObject, worldPos, canvasPos}, [canvasPos[0], canvasPos[1], canvasPos[0], canvasPos[1]]);\n }\n\n return kdTree2D;\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneObject} from \"@xeokit/scene\";\nimport type {KdTree2} from \"./KdTree2\";\n\n/**\n *\n */\nexport function searchKdTree2ForNearestNeighbor(params: {\n kdTree: KdTree2,\n canvasPos: FloatArrayParam\n}): SceneObject[] {\n const kdTree = params.kdTree;\n const canvasPos = params.canvasPos;\n // @ts-ignore\n const sceneObjects = [];\n\n//...\n\n // @ts-ignore\n return sceneObjects;\n}\n", "import type {SceneObject} from \"@xeokit/scene\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\n\n/**\n * TODO\n */\nexport class KdVertex2 {\n sceneObject: SceneObject;\n worldPos: FloatArrayParam;\n canvasPos: IntArrayParam;\n}", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * \n *\n * # xeokit 3D Collision Utilities\n *\n * ---\n *\n * ### *Spatial searches and collision testing with 3D k-d trees, rays and boundaries*\n *\n * ---\n *\n * A {@link KdTree3} organizes items with 3D axis-aligned boundaries into a fast spatial search index that\n * allows us efficiently search it for items whose boundaries intersect given boundaries and volumes.\n *\n * This module provides the following functions to build KdTree3s:\n *\n * * {@link createPrimsKdTree3}: Creates a KdTree3 containing primitives from the given set of geometry arrays, organized by their coordinate 3D boundaries.\n * * {@link createSceneObjectPrimsKdTree3}: Creates a KdTree3 containing primitives belonging to the given SceneObjects, organized by their World-space 3D boundaries.\n * * {@link createSceneObjectsKdTree3}: Create a KdTree3 containing the given SceneObjects, organized by their World-space 3D boundaries.\n *\n * This module provides the following functions to search KdTree3s:\n *\n * * {@link searchKdTree3WithAABB}: Finds the items that collide with a given 3D axis-aligned boundary (AABB).\n * * {@link searchKdTree3WithFrustum}: Finds the items that collide with a given 3D frustum volume.\n * * {@link searchKdTree3WithRay}: Finds the items that collide with a given 3D ray.\n *\n * With these components, applications can implement (at least):\n *\n * * Frustum3 culling for {@link @xeokit/scene!SceneObject | SceneObjects}\n * * Ray-picking SceneObjects\n * * Marquee selection of SceneObjects\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/kdtree3\n * ````\n *\n * ## Dependencies\n *\n * * {@link \"@xeokit/scene\" | @xeokit/scene}\n * * {@link \"@xeokit/core\" | @xeokit/core}\n * * {@link \"@xeokit/math\" | @xeokit/math}\n * * {@link \"@xeokit/boundaries\" | @xeokit/boundaries}\n *\n * ## Usage\n *\n * Querying for {@link @xeokit/scene!SceneObject | SceneObjects} that intersect a 3D World-space boundary:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {SDKError} from \"@xeokit/core\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n * import {KdTree3, searchKdTree3WithAABB} from \"@xeokit/kdtree3\";\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * sceneModel.createGeometry({\n * id: \"theGeometry\", primitive: TrianglesPrimitive,\n * positions: [10.07, 0, 11.07, 9.58, 3.11, 11.07, 8.15, ..],\n * indices: [21, 0, 1, 1, 22, 21, 22, 1, 2, 2, 23, 22, 23, ..]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"redLegMesh\", geometryId: \"theGeometry\",\n * position: [-4, -6, -4], scale: [1, 3, 1], rotation: [0, 0, 0], color: [1, 0.3, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"greenLegMesh\", geometryId: \"theGeometry\", position: [4, -6, -4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 1.0, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"blueLegMesh\", geometryId: \"theGeometry\", position: [4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 0.3, 1.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\", geometryId: \"theGeometry\", position: [-4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [1.0, 1.0, 0.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"tableTopMesh\", geometryId: \"theGeometry\", position: [0, -3, 0], scale: [6, 0.5, 6],\n * rotation: [0, 0, 0], color: [1.0, 0.3, 1.0]\n * });\n *\n * sceneModel.createObject({ id: \"redLegSceneObject\", meshIds: [\"redLegMesh\"] });\n * sceneModel.createObject({ id: \"greenLegSceneObject\", meshIds: [\"greenLegMesh\"] });\n * sceneModel.createObject({ id: \"blueLegSceneObject\", meshIds: [\"blueLegMesh\"] });\n * sceneModel.createObject({ id: \"yellowLegSceneObject\", meshIds: [\"yellowLegMesh\"] });\n * sceneModel.createObject({ id: \"tableTopSceneObject\", meshIds: [\"tableTopMesh\"] });\n *\n * sceneModel.build()\n *\n * .then(() => {\n *\n * const kdTree = createSceneObjectsKdTree3(Object.values(scene.objects));\n *\n * const sceneObjects = searchKdTree3WithAABB({\n * kdTree,\n * aabb : [0, 0, 0, 10, 10, 10]\n * });\n *\n * const sceneObjects2 = searchKdTree3WithFrustum({\n * kdTree,\n * frustum: new Frustum3( .. )\n * });\n *\n * const objectMap = {};\n *\n * for (let i = 0, len = sceneObjects.length; i < len; i++) {\n * const sceneObject = sceneObjects[i];\n * }\n *\n * const redLegSceneObject = objectMap[\"redLegSceneObject\"];\n * const greenLegSceneObject = objectMap[\"greenLegSceneObject\"];\n * const tableTopSceneObject = objectMap[\"tableTopSceneObject\"];\n * });\n * }\n * ````\n *\n * @module @xeokit/kdtree3\n */\nexport * from \"./KdTree3\";\nexport * from \"./createSceneObjectsKdTree3\";\nexport * from \"./createSceneObjectPrimsKdTree3\";\nexport * from \"./createPrimsKdTree3\";\nexport * from \"./searchKdTree3WithAABB\";\nexport * from \"./searchKdTree3WithFrustum\";\nexport * from \"./searchKdTree3WithRay\";\nexport * from \"./KdSceneObjectPrim\";\nexport * from \"./KdTrianglePrim\";\nexport * from \"./KdLinePrim\";\nexport * from \"./KdPointPrim\";\nexport * from \"./PrimsKdTree3\";\nexport * from \"./sceneObjectsKdTree3\";\nexport * from \"./KdNode3\";\nexport * from \"./KdItem3\";\nexport * from \"./KdTree3Params\";\n\n\n", "import {containsAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\nimport type {KdTree3Params} from \"./KdTree3Params\";\n\n\nconst MAX_KD_TREE_DEPTH = 10; // Increase if greater precision needed\nconst kdTreeDimLength = new Float32Array(3);\n\n/**\n * A static k-d tree that organizes anything that has a boundary for\n * efficient 3D World-space boundary and frustm searches.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class KdTree3 {\n\n #root: KdNode3;\n #maxDepth: any;\n #numNodes: number;\n #numObjects: number;\n\n /**\n * Creates a new KdTree3.\n *\n * @param params\n */\n constructor(params: KdTree3Params) {\n this.#maxDepth = params?.maxDepth || MAX_KD_TREE_DEPTH;\n this.#root = {\n index: 0,\n aabb: params.aabb.slice()\n };\n this.#numNodes = 0;\n }\n\n get root(): KdNode3 {\n return this.#root;\n }\n\n insertItem(item: any, aabb: FloatArrayParam) {\n this.#insertItem(this.#root, {index: this.#numObjects++, item}, aabb, 1)\n }\n\n #insertItem(node: KdNode3, item: KdItem3D, aabb: FloatArrayParam, depth: number) {\n if (depth >= this.#maxDepth) {\n node.items = node.items || [];\n node.items.push(item);\n expandAABB3(node.aabb, aabb);\n return;\n }\n if (node.left) {\n if (containsAABB3(node.left.aabb, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (node.right) {\n if (containsAABB3(node.right.aabb, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n const nodeAABB = node.aabb;\n kdTreeDimLength[0] = nodeAABB[3] - nodeAABB[0];\n kdTreeDimLength[1] = nodeAABB[4] - nodeAABB[1];\n kdTreeDimLength[2] = nodeAABB[5] - nodeAABB[2];\n let dim = 0;\n if (kdTreeDimLength[1] > kdTreeDimLength[dim]) {\n dim = 1;\n }\n if (kdTreeDimLength[2] > kdTreeDimLength[dim]) {\n dim = 2;\n }\n if (!node.left) {\n const aabbLeft = nodeAABB.slice();\n aabbLeft[dim + 3] = ((nodeAABB[dim] + nodeAABB[dim + 3]) / 2.0);\n node.left = {\n index: this.#numNodes++,\n aabb: aabbLeft\n };\n if (containsAABB3(aabbLeft, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (!node.right) {\n const aabbRight = nodeAABB.slice();\n aabbRight[dim] = ((nodeAABB[dim] + nodeAABB[dim + 3]) / 2.0);\n node.right = {\n index: this.#numNodes++,\n aabb: aabbRight\n };\n if (containsAABB3(aabbRight, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n node.items = node.items || [];\n node.items.push(item);\n expandAABB3(node.aabb, aabb);\n }\n}\n", "import {KdTree3} from \"./KdTree3\";\n\n/**\n * k-d tree built by {@link createSceneObjectsKdTree3} that contains {@link @xeokit/scene!SceneObject | SceneObject} item types.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class SceneObjectsKdTree3 extends KdTree3 {\n}", "import type {SceneObject} from \"@xeokit/scene\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {SceneObjectsKdTree3} from \"./sceneObjectsKdTree3\";\n\n/**\n * Indexes the given SceneObjects in a k-d tree for efficient collision detection.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function createSceneObjectsKdTree3(sceneObjects: SceneObject[]): SceneObjectsKdTree3 {\n const aabb = collapseAABB3();\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n expandAABB3(aabb, sceneObjects[i].aabb);\n }\n const kdTree = new SceneObjectsKdTree3({aabb});\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n kdTree.insertItem(sceneObject, sceneObject.aabb);\n }\n return kdTree;\n}\n\n\n", "import {type GeometryView, getSceneObjectGeometry, SceneGeometry, SceneObject} from \"@xeokit/scene\";\nimport {KdTree3} from \"./KdTree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {KdSceneObjectPrim} from \"./KdSceneObjectPrim\";\n\n/**\n * k-d tree built by {@link createSceneObjectPrimsKdTree3}.\n */\nexport class SceneObjectsPrimsKdTree3 extends KdTree3 {}\n\n/**\n * Creates a KdTree3 that indexes the primitives belonging to the given SceneObjects in 3D World-space.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n *\n * @param sceneObjects\n */\nexport function createSceneObjectPrimsKdTree3(sceneObjects: SceneObject[]): SceneObjectsPrimsKdTree3 {\n\n const tempAABBInt16 = new Int16Array(6);\n\n function insertPoint(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = aabb[3] = ax;\n aabb[1] = aabb[4] = ay;\n aabb[2] = aabb[5] = az;\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a}}, aabb);\n }\n\n function insertLine(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, b: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx);\n aabb[1] = Math.min(ay, by);\n aabb[2] = Math.min(az, bz);\n aabb[3] = Math.max(ax, bx);\n aabb[4] = Math.max(ay, by);\n aabb[5] = Math.max(az, bz);\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a, b}}, aabb);\n }\n\n function insertTriangle(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, b: number, c: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const cx = positions[(c * 3)];\n const cy = positions[(c * 3) + 1];\n const cz = positions[(c * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx, cx);\n aabb[1] = Math.min(ay, by, cy);\n aabb[2] = Math.min(az, bz, cz);\n aabb[3] = Math.max(ax, bx, cx);\n aabb[4] = Math.max(ay, by, cy);\n aabb[5] = Math.max(az, bz, cz);\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a, b, c}}, aabb);\n }\n\n const aabb = collapseAABB3();\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const viewObject = sceneObjects[i];\n expandAABB3(aabb, viewObject.aabb);\n }\n const kdTree = new SceneObjectsPrimsKdTree3({\n aabb\n });\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n getSceneObjectGeometry(sceneObject, (geometryView: GeometryView) => {\n const sceneGeometry = geometryView.geometry;\n const positionsWorld = geometryView.positionsWorld; // <-- Can be expensive\n const indices = sceneGeometry.indices;\n switch (sceneGeometry.primitive) {\n case PointsPrimitive:\n for (let j = 0, lenj = positionsWorld.length / 3; j < lenj; j++) {\n insertPoint(sceneObject, sceneGeometry, positionsWorld, j, kdTree);\n }\n break;\n case TrianglesPrimitive:\n if (indices) {\n for (let j = 0, lenj = indices.length; j < lenj; j += 3) {\n insertTriangle(sceneObject, sceneGeometry, positionsWorld, indices[j], indices[j + 1], indices[j + 2], kdTree);\n }\n }\n break;\n case LinesPrimitive:\n if (indices) {\n for (let j = 0, lenj = indices.length; j < lenj; j += 2) {\n insertLine(sceneObject, sceneGeometry, positionsWorld, indices[j], indices[j + 1], kdTree);\n }\n }\n break;\n }\n return true;\n\n });\n }\n return kdTree;\n}\n", "import {KdTree3} from \"./KdTree3\";\n\n/**\n * k-d tree built by {@link createPrimsKdTree3} that contains {@link KdTriangle3}, {@link KdLine3} and {@link KdPoint3} item types.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class PrimsKdTree3 extends KdTree3 {\n\n}", "import {createAABB3Int16, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdTrianglePrim} from \"./KdTrianglePrim\";\nimport type {KdLinePrim} from \"./KdLinePrim\";\nimport type {KdPointPrim} from \"./KdPointPrim\";\nimport {PrimsKdTree3} from \"./PrimsKdTree3\";\n\nconst tempAABBInt16 = new Int16Array(6);\n\n/**\n * Creates a KdTree3 that indexes the 3D primitives in the given arrays.\n *\n * This function does not care which coordinate space the primitives are in (ie. Local, World, View etc).\n *\n * This function also works for coordinates of any precision (ie. Float32Array, Float64Array, Int16Array, Int32Array etc).\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function createPrimsKdTree3(primitiveType: number, positions: FloatArrayParam, indices?: IntArrayParam): PrimsKdTree3 {\n const kdTree = new PrimsKdTree3({\n aabb: expandAABB3Points3(createAABB3Int16(), positions)\n });\n\n switch (primitiveType) {\n case PointsPrimitive:\n for (let i = 0, len = positions.length / 3; i < len; i++) {\n insertPoint(positions, i, kdTree);\n }\n break;\n case TrianglesPrimitive:\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i += 3) {\n insertTriangle(positions, indices[i], indices[i + 1], indices[i + 2], kdTree);\n }\n }\n break;\n case LinesPrimitive:\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i += 2) {\n insertLine(positions, indices[i], indices[i + 1], kdTree);\n }\n }\n break;\n }\n return kdTree;\n}\n\nfunction insertPoint(positions: FloatArrayParam, a: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = aabb[3] = ax;\n aabb[1] = aabb[4] = ay;\n aabb[2] = aabb[5] = az;\n kdTree.insertItem({a}, aabb);\n}\n\nfunction insertLine(positions: FloatArrayParam, a: number, b: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx);\n aabb[1] = Math.min(ay, by);\n aabb[2] = Math.min(az, bz);\n aabb[3] = Math.max(ax, bx);\n aabb[4] = Math.max(ay, by);\n aabb[5] = Math.max(az, bz);\n kdTree.insertItem({a, b}, aabb);\n}\n\nfunction insertTriangle(positions: FloatArrayParam, a: number, b: number, c: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const cx = positions[(c * 3)];\n const cy = positions[(c * 3) + 1];\n const cz = positions[(c * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx, cx);\n aabb[1] = Math.min(ay, by, cy);\n aabb[2] = Math.min(az, bz, cz);\n aabb[3] = Math.max(ax, bx, cx);\n aabb[4] = Math.max(ay, by, cy);\n aabb[5] = Math.max(az, bz, cz);\n kdTree.insertItem({a, b, c}, aabb);\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {INTERSECT, intersectAABB3s, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D axis-aligned bounding box (AABB).\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithAABB(params: {\n kdTree: KdTree3,\n aabb: FloatArrayParam\n}): KdItem3D[] {\n\n const kdTree = params.kdTree;\n const aabb = params.aabb;\n const foundItems: KdItem3D[] = [];\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = intersectAABB3s(aabb, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "import {Frustum3, INTERSECT, intersectFrustum3AABB3, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D {@link @xeokit/boundaries!Frustum3}.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithFrustum(params: {\n kdTree: KdTree3,\n frustum: Frustum3\n}): KdItem3D[] {\n const kdTree = params.kdTree;\n const frustum = params.frustum;\n const foundItems: KdItem3D[] = [];\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = intersectFrustum3AABB3(frustum, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {INTERSECT, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D ray.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithRay(params: {\n kdTree: KdTree3,\n origin: FloatArrayParam,\n dir: FloatArrayParam\n}): KdItem3D[] {\n\n const kdTree = params.kdTree;\n const origin = params.origin;\n const dir = params.dir;\n const foundItems: KdItem3D[] = [];\n\n function testRayIntersectsAABB3(origin: FloatArrayParam, dir: FloatArrayParam, aabb: FloatArrayParam) : number{\n return 0;\n }\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = testRayIntersectsAABB3(origin, dir, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * # xeokit Picking System\n *\n * ---\n *\n * ### *Select objects and primitives using rays and boundaries*\n *\n * ---\n *\n * The following class diagrams depict xeokit's picking system architecture.\n *\n * The {@link @xeokit/collision!SceneObjectsKdTree3 | SceneObjectsKdTree3} class, a k-d tree that arranges\n * {@link @xeokit/scene!SceneObject | SceneObjects} for\n * efficient collision testing with boundaries, rays, and frustums, is positioned in the center of the\n * first diagram. To construct a SceneObjectsKdTree3, use\n * the {@link @xeokit/collision!createSceneObjectsKdTree3 | createSceneObjectsKdTree3} function.\n *\n * To find SceneObjects in the SceneObjectsKdTree3 that intersect a 3D world-space ray,\n * use {@link Picker.rayPick | Picker.rayPick()}, which will generate a {@link RayPickResult}. To find SceneObjects\n * that intersect a 2D marquee boundary, use {@link Picker.marqueePick | Picker.marqueePick()},\n * which will generate a {@link MarqueePickResult}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNp9k99PgzAQx_-V5p6cQTLkdx98MlGji2bzyfSlwqnVUbRAskn4322BuYFMEtLLfe_z5Xq0NSR5ikAhWfOiuBT8VfGMyVQoTEqRS3K3ZJJJQsxrnraOrBKUeP_8rovqndL0gV66yIBd1EEPIvlARX4BQhTfmuTJbfqoEF2L5Eq8Ckn052d02YlLLKp1WeyhjKuvCnEI9skZXezVAdmMuznYQtHbaK3eFTXD6r-2prQ48Bhhe3S4jxF2Lf6Q_ZgYOAxOz84udGDbpwwmeqDkSjspXmLR_SMmj9KjNgboIZS3kCGmJkTJCrlK3gw1pbfkpAUlNzLFjQEnhvkft8J1N-DRFo4z5BcCCzJUGRepPuPtyWNQvmGGDKgOU3zh2osBk40u5VWZr7YyAVqqCi2oPlM9oP5WAH3h60JnMRVlrhb9vTGLBZ9cAq1hA9QJYzsI5lHoeL7jeLEbWbAF6gaR7cZz3_HOg_g89KLGgu88165z2w_8UGuuH8wDN_Lc1u6pFU0fzQ91PCxm?type=png)](https://mermaid.live/edit#pako:eNp9k99PgzAQx_-V5p6cQTLkdx98MlGji2bzyfSlwqnVUbRAskn4322BuYFMEtLLfe_z5Xq0NSR5ikAhWfOiuBT8VfGMyVQoTEqRS3K3ZJJJQsxrnraOrBKUeP_8rovqndL0gV66yIBd1EEPIvlARX4BQhTfmuTJbfqoEF2L5Eq8Ckn052d02YlLLKp1WeyhjKuvCnEI9skZXezVAdmMuznYQtHbaK3eFTXD6r-2prQ48Bhhe3S4jxF2Lf6Q_ZgYOAxOz84udGDbpwwmeqDkSjspXmLR_SMmj9KjNgboIZS3kCGmJkTJCrlK3gw1pbfkpAUlNzLFjQEnhvkft8J1N-DRFo4z5BcCCzJUGRepPuPtyWNQvmGGDKgOU3zh2osBk40u5VWZr7YyAVqqCi2oPlM9oP5WAH3h60JnMRVlrhb9vTGLBZ9cAq1hA9QJYzsI5lHoeL7jeLEbWbAF6gaR7cZz3_HOg_g89KLGgu88165z2w_8UGuuH8wDN_Lc1u6pFU0fzQ91PCxm)\n *\n *
\n *\n * ### Unpacking the Pick Results\n *\n * A {@link MarqueePickResult} provides a list of SceneObjects that intersect the marquee, so unpacking that is trivial.\n *\n * On the other hand, a {@link RayPickResult} includes comprehensive details regarding\n * each ray-SceneObject intersection. This information includes everything necessary to inspect the geometry of the intersecting\n * primitives within each SceneObject, and the coordinates at which each of them intersect the ray.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqlVVtvmzAY_SvIj1USBXKh8LCHtlI3bdGiptKkiRcHvqZewY5ssyWr8t9nDA42kLbSePHtnOPvil9RyjJAMUpzLMQdwTuOi4RmhEMqCaPe401CE-rpT2O8TQoUvm9_KcCrOam-AsQzCHsH4-3WrE-uyEqBPYu-A1aA5Md2p8CSk0OH7orcNyRbaM9JQST5DdYWE6TyRdxByoo9ByFWjnh7_U2ZvoAUF4y-d1DOreaK2-YCyNpDosKZQk-0GYakPxM5FJz60PVVQY3yqc2UlSMvQX6CrsZjNU4mVwnSsY-9W0YlJvRs1jmYPbxrW5-pc2mxLIoNbq0zTj_g45qkLw8gylw7LFqzW7-0WzXha_aNUJiZ2OCYlsUWeL3anlenFv_ICaa7_H2OtmpIYc0IlQN0y6yNY7aBWs7UG1WD1G5Z3FW9aUgVpp65HbHr1oersq4rwahUhVHP_jCeKxcM2o24SliC2Hj8SU86biS049ZldOxtIFejTvLbrMbdhBq_B84tuWFUr1kuyrV1eJbsd9oFjin3jzObLNSlblLSwVglGf_geC_eQOpifxdVF2jsNTj7B9z9TP9o6nA04y80g4P7H-_LNE3x3zpte35ACo1QAbzAJFPvla70BMlnKCBBsZpm8IRVVSdI1bqC4lKyzZGmKH7CuYARKvcZltA8ceddyIhkfNU8gtUwQntMUfyKDij2l9OJH_lBGAbBchrM_MUIHVG8nE2i63AWTueLKArCaL44jdBfxpTsdHIdLOfzZTBb-GEUTf1A6_3Uh5KXcPoHqcxSqw?type=png)](https://mermaid.live/edit#pako:eNqlVVtvmzAY_SvIj1USBXKh8LCHtlI3bdGiptKkiRcHvqZewY5ssyWr8t9nDA42kLbSePHtnOPvil9RyjJAMUpzLMQdwTuOi4RmhEMqCaPe401CE-rpT2O8TQoUvm9_KcCrOam-AsQzCHsH4-3WrE-uyEqBPYu-A1aA5Md2p8CSk0OH7orcNyRbaM9JQST5DdYWE6TyRdxByoo9ByFWjnh7_U2ZvoAUF4y-d1DOreaK2-YCyNpDosKZQk-0GYakPxM5FJz60PVVQY3yqc2UlSMvQX6CrsZjNU4mVwnSsY-9W0YlJvRs1jmYPbxrW5-pc2mxLIoNbq0zTj_g45qkLw8gylw7LFqzW7-0WzXha_aNUJiZ2OCYlsUWeL3anlenFv_ICaa7_H2OtmpIYc0IlQN0y6yNY7aBWs7UG1WD1G5Z3FW9aUgVpp65HbHr1oersq4rwahUhVHP_jCeKxcM2o24SliC2Hj8SU86biS049ZldOxtIFejTvLbrMbdhBq_B84tuWFUr1kuyrV1eJbsd9oFjin3jzObLNSlblLSwVglGf_geC_eQOpifxdVF2jsNTj7B9z9TP9o6nA04y80g4P7H-_LNE3x3zpte35ACo1QAbzAJFPvla70BMlnKCBBsZpm8IRVVSdI1bqC4lKyzZGmKH7CuYARKvcZltA8ceddyIhkfNU8gtUwQntMUfyKDij2l9OJH_lBGAbBchrM_MUIHVG8nE2i63AWTueLKArCaL44jdBfxpTsdHIdLOfzZTBb-GEUTf1A6_3Uh5KXcPoHqcxSqw)\n *\n *
\n *\n * RayPickResult represents the hierarchical arrangement of Scene components selected by Picker.rayPick(). This\n * structure enables the iteration of the chosen SceneObjects, and the iteration of the selected Meshes, Geometries, and\n * GeometryBuckets within each SceneObject. The structure goes all the way down to the chosen primitives, which can be\n * KdLine3D, KdPoint3D, or KdTriangle3D.\n *\n * A primitive has one or more vertex indices, and the number of indices is determined by the primitive type. These\n * indices are used to access the compressed vertex coordinates of the primitive within\n * SceneGeometryBucket.positionsCompressed. These coordinates can be decompressed using SceneGeometry.positionsDecompressMatrix and\n * then transformed into the World-space coordinate system using SceneMesh.matrix to obtain the final coordinates of the primitive.\n *\n * To keep a low memory footprint, while being flexible and extensible, both the RayPickResult and xeokit's\n * scene graph have been designed in such a way that requires some boilerplate code to traverse and unpack them. This\n * includes coordinate decompression and transformation, which we'll demonstrate in the example code below.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/collision\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {SDKError} from \"@xeokit/core\";\n * import {TrianglesPrimitive, LinesPrimitive, PointsPrimitive} from \"@xeokit/constants\";\n * import {KdTree3, searchKdTree3WithAABB} from \"@xeokit/kdtree3\";\n *\n * // Create a scene graph - notice there's not a Viewer in sight\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * // Build our standard Table model, with a table top and four legs\n *\n * sceneModel.createGeometry({\n * id: \"theGeometry\", primitive: TrianglesPrimitive,\n * positions: [10.07, 0, 11.07, 9.58, 3.11, 11.07, 8.15, ..],\n * indices: [21, 0, 1, 1, 22, 21, 22, 1, 2, 2, 23, 22, 23, ..]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"redLegMesh\", geometryId: \"theGeometry\",\n * position: [-4, -6, -4], scale: [1, 3, 1], rotation: [0, 0, 0], color: [1, 0.3, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"greenLegMesh\", geometryId: \"theGeometry\", position: [4, -6, -4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 1.0, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"blueLegMesh\", geometryId: \"theGeometry\", position: [4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 0.3, 1.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\", geometryId: \"theGeometry\", position: [-4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [1.0, 1.0, 0.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"tableTopMesh\", geometryId: \"theGeometry\", position: [0, -3, 0], scale: [6, 0.5, 6],\n * rotation: [0, 0, 0], color: [1.0, 0.3, 1.0]\n * });\n *\n * sceneModel.createObject({ id: \"redLegSceneObject\", meshIds: [\"redLegMesh\"] });\n * sceneModel.createObject({ id: \"greenLegSceneObject\", meshIds: [\"greenLegMesh\"] });\n * sceneModel.createObject({ id: \"blueLegSceneObject\", meshIds: [\"blueLegMesh\"] });\n * sceneModel.createObject({ id: \"yellowLegSceneObject\", meshIds: [\"yellowLegMesh\"] });\n * sceneModel.createObject({ id: \"tableTopSceneObject\", meshIds: [\"tableTopMesh\"] });\n *\n * sceneModel.build()\n *\n * .then(() => {\n *\n * // When our model is finalized, insert all\n * // its SceneObjects into a SceneObjectsKdTree3\n *\n * const sceneObjectsKdTree3 = createSceneObjectsKdTree3(Object.values(scene.objects));\n *\n * // Then we'll try to ray-pick the SceneObjects\n *\n * const picker = new Picker();\n *\n * const rayPickResult = picker.rayPick({\n * sceneObjectsKdTree3,\n * origin: [0,0,100],\n * dir: [0,0,-1];\n * });\n *\n * // We get a RayPickResults, which contains a\n * // SceneObjectHit that wraps each SceneObject we picked\n *\n * for (let i =0, len = rayPickResult.sceneObjectHits.length; i < len; i++) {\n *\n * const sceneObjectHit = rayPickResult.sceneObjectHits[i];\n * const sceneObject = sceneObjectHit.sceneObject;\n *\n * // Within each SceneObjectHit we get a MeshHit that wraps each SceneMesh that\n * // was picked in this SceneObject\n *\n * const meshHit = sceneObjectHit.meshHit;\n * const mesh = meshHit.mesh;\n *\n * // Within the MeshHit, a single GeometryHit that wraps\n * // the SceneGeometry that was picked\n *\n * const geometryHit = meshHit.geometryHit;\n * const geometry = geometryHit.geometry;\n *\n * // Within the GeometryHit, we get a GeometryBucketHit for each hit\n *\n * const geometryBucketHit = geometryHit.geometryBucketHit;\n * const geometryBucket = geometryBucketHit.geometryBucket;\n *\n * // And finally within the GeometryBucketHit, a PrimHit\n * // for each primitive that was hit within the SceneGeometryBucket.\n *\n * // Each PrimtHit wraps a single a single KdPointPrim, KdLinePrim or KdTrianglePrim,\n * // which represents a point, line or triangle primitive, respectively.\n *\n * for (let j = 0, lenj = geometryBucketHit.primHits.length; j < lenj; j++) {\n *\n * const primHit = geometryBucketHit.primHits[j];\n * const primitive = primHit.primitive;\n *\n * // We know the primitive type from the SceneGeometry\n *\n * switch (geometry.primitive) {\n *\n * case TrianglesPrimitive:\n *\n * // Using the vertex indices of each primitive,\n * // we can then access the compressed coordinates\n * // for that vertex, then we can decompress them\n * // and transform them into World-space.\n *\n * const kdTriangle3D = primHit.prim;\n *\n * break;\n *\n * case LinesPrimitive:\n * const kdTriangle3D = primHit.prim;\n *\n * break;\n *\n * case PointsPrimitive:\n * const kdPoint3D = primHit.prim;\n *\n * break;\n * }\n * }\n * }\n * });\n * }\n *\n * ````\n *\n * @module @xeokit/pick\n */\nexport * from \"./Picker\";\nexport * from \"./MarqueePickResult\";\nexport * from \"./RayPickResult\";\nexport {SceneObjectHit} from \"./SceneObjectHit\";\nexport {MeshHit} from \"./MeshHit\";\nexport {GeometryHit} from \"./GeometryHit\";\nexport {PrimHit} from \"./PrimHit\";\n\n\n", "import type {KdTree3, PrimsKdTree3} from \"@xeokit/kdtree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * Caches reusable resources for {@link rayPick} and {@link marqueePick}.\n *\n * These resources are lazy-generated by these methods. When provided\n * again to the methods, we can avoid the method needing to re-generate them.\n *\n * > Internally, the resources consist of lazy-generated {@link PrimsKdTree3 | PrimsKdTree3s}, cached for\n * {@link @xeokit/scene!SceneGeometryBucket | GeometryBuckets} of\n * candidate {@link @xeokit/scene!SceneObject | SceneObjects} while picking.\n */\nexport class PickPrimsCache {\n\n /**\n * TODO\n */\n primitivesKdTrees: {\n [key: string]: {\n primitivesKdTree: PrimsKdTree3,\n positions: FloatArrayParam\n }\n };\n\n /**\n * TODO\n */\n constructor() {\n this.primitivesKdTrees = {};\n }\n\n /**\n * TODO\n */\n clear() {\n this.primitivesKdTrees = {};\n }\n}", "import {\n createPrimsKdTree3,\n KdLinePrim,\n KdPointPrim,\n KdTrianglePrim,\n SceneObjectsKdTree3,\n searchKdTree3WithFrustum,\n searchKdTree3WithRay\n} from \"@xeokit/kdtree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RayPickResult} from \"./RayPickResult\";\nimport type {MarqueePickResult} from \"./MarqueePickResult\";\nimport {PickPrimsCache} from \"./PickPrimsCache\";\nimport {decompressPositions3WithAABB3} from \"@xeokit/compression\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {SceneGeometry, SceneObject} from \"@xeokit/scene\";\n\nimport type {Frustum3} from \"@xeokit/boundaries\";\n\n/**\n * See {@link \"@xeokit/collision!pick\"} for usage.\n */\nexport class Picker {\n\n #pickPrimsCache: PickPrimsCache;\n\n constructor() {\n this.#pickPrimsCache = new PickPrimsCache();\n }\n\n /**\n * TODO\n * @param params\n */\n rayPick(params: {\n sceneObjectsKdTree3: SceneObjectsKdTree3,\n origin: FloatArrayParam,\n dir: FloatArrayParam\n }): RayPickResult {\n\n //\n // Cache for different Scene's?\n //\n\n const sceneObjectsKdTree3 = params.sceneObjectsKdTree3;\n const origin = params.origin;\n const dir = params.dir;\n const rayPickResult = {\n sceneObjectHits: []\n };\n // const kdItems = searchKdTree3WithRay({kdTree: sceneObjectsKdTree3, origin, dir});\n // for (let i = 0, len = kdItems.length; i < len; i++) {\n // const item = kdItems[i];\n // const sceneObject: SceneObject = item.sceneObject;\n // const meshHits: MeshHit[] = [];\n // for (let j = 0, lenj = sceneObject.meshes.length; j < lenj; j++) {\n // const mesh = sceneObject.meshes[j];\n // const geometryBucketHits: GeometryBucketHit[] = [];\n // //////////////////////\n // // Transform ray into mesh local space, by inverse of mesh matrix\n // ///////////////////////\n // const geometry = mesh.geometry;\n // for (let k = 0, lenk = geometry.geometryBuckets.length; k < lenk; k++) {\n // const primHits: any[] = [];\n // const geometryBucket = geometry.geometryBuckets[k];\n // let primsKdTree3 = this.#getPrimsKdTree3(geometry, k, geometryBucket);\n // const primitives = searchKdTree3WithRay({kdTree: primsKdTree3.primsKdTree3, origin, dir});\n // if (primitives.length) {\n // switch (geometry.primitive) {\n // case TrianglesPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const triangle = primitives[l];\n // // const a = triangle.a;\n // // const b = triangle.b;\n // // const c = triangle.c;\n // // const cx = primsKdTree3.positions[a * 3];\n // // const cy = primsKdTree3.positions[a * 3 + 1];\n // // const cz = primsKdTree3.positions[a * 3 + 2];\n //\n // //////////////////////////\n // // Get ray-triangle intersection in worldPos\n // /////////////////////////////\n //\n // // primHits.push({primitive: triangle, worldPos});\n // }\n // break;\n // case LinesPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const line = primitives[l];\n // // primHits.push({primitive: line, worldPos});\n // }\n // break;\n // case PointsPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const point = primitives[l];\n // // primHits.push({primitive: point, worldPos});\n // }\n // break;\n // }\n // }\n // if (primHits.length > 0) {\n // geometryBucketHits.push({geometryBucket, primHits});\n // }\n // }\n // if (geometryBucketHits.length > 0) {\n // meshHits.push({mesh, geometry, geometryBucketHits})\n // }\n // }\n // if (meshHits.length) {\n // rayPickResult.sceneObjectHits.push({sceneObject, meshHits});\n // }\n // }\n return rayPickResult;\n }\n\n /**\n * Picks a {@link @xeokit/scene!SceneObjectsKdTree3} using a 2D marquee to obtain a {@link MarqueePickResult}\n * containing picked {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh}, {@link @xeokit/scene!SceneGeometry},\n * {@link @xeokit/scene!SceneGeometryBucket | GeometryBuckets}, {@link KdTrianglePrim}, {@link KdLinePrim} and {@link KdPointPrim}.\n * @param params\n */\n marqueePick(params: {\n sceneObjectsKdTree3: SceneObjectsKdTree3,\n marquee: FloatArrayParam\n }): MarqueePickResult {\n const sceneObjectsKdTree3 = params.sceneObjectsKdTree3;\n const pickPrimsCache = this.#pickPrimsCache;\n const marqueePickResult = {\n sceneObjects: []\n };\n // @ts-ignore\n const frustum: Frustum3 = null; // Create from marquee\n const kdItems = searchKdTree3WithFrustum({\n kdTree: sceneObjectsKdTree3,\n frustum\n });\n for (let i = 0, len = kdItems.length; i < len; i++) {\n const kdItem = kdItems[i];\n const sceneObject = kdItem.item;\n const meshes = [];\n for (let j = 0, lenj = sceneObject.meshes.length; j < lenj; j++) {\n const mesh = sceneObject.meshes[j];\n const pickedGeometryMeshes = [];\n //////////////////////\n // Transform frustum into mesh local space, by inverse of mesh matrix\n ///////////////////////\n const geometry = mesh.geometry;\n for (let k = 0, lenk = geometry.geometryBuckets.length; k < lenk; k++) {\n const prims = [];\n const geometryBucket = geometry.geometryBuckets[k];\n let primsKdTree3 = this.#getPrimsKdTree3(geometry, k);\n const items = searchKdTree3WithFrustum({\n kdTree: primsKdTree3.primitivesKdTree,\n frustum\n });\n if (items.length) {\n switch (geometry.primitive) {\n case TrianglesPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const triangle = item.item.prim;\n const a = triangle.a;\n const b = triangle.b;\n const c = triangle.c;\n const cx = primsKdTree3.positions[a * 3];\n const cy = primsKdTree3.positions[a * 3 + 1];\n const cz = primsKdTree3.positions[a * 3 + 2];\n //////////////////////////\n // Get FRUSTUM-TRIANGLE-CENTER intersection in worldPos\n /////////////////////////////\n // prims.push({primitive: triangle, worldPos});\n }\n break;\n case LinesPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const line = item.item.prim;\n // prims.push({primitive: line, worldPos});\n }\n break;\n case PointsPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const point = item.item.prim;\n\n // prims.push({primitive: point, worldPos});\n }\n break;\n }\n }\n }\n }\n /////////////////////////////////////////////////////////////////////////\n const selected = false;\n\n if (selected) {\n marqueePickResult.sceneObjects.push(sceneObject);\n }\n }\n return marqueePickResult;\n }\n\n #getPrimsKdTree3(geometry: SceneGeometry, k: number): any {\n const kdTreeId = `${geometry.id}-${k}`;\n // @ts-ignore\n let primsKdTree3 = this.#pickPrimsCache[kdTreeId];\n if (!primsKdTree3) {\n const positions = decompressPositions3WithAABB3(\n geometry.positionsCompressed,\n geometry.aabb,\n new Float32Array(geometry.positionsCompressed.length));\n primsKdTree3 = {\n primsKdTree3: createPrimsKdTree3(geometry.primitive, positions, geometry.indices),\n positions\n }\n // @ts-ignore\n this.#pickPrimsCache[kdTreeId] = primsKdTree3;\n }\n return primsKdTree3;\n }\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit Basic Semantic Data Types\n *\n * * Defines numeric constants for a basic set of entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign basic types to {@link @xeokit/data!DataObject | DataObjects}\n * and {@link @xeokit/data!Relationship | Relationships} and treat them as elements of a basic entity-relationship graph.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} , to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating basic element hierachies.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/basictypes\n * ````\n *\n * @module @xeokit/basictypes\n */\n\n/**\n * A generic entity.\n */\nexport const BasicEntity = 1000;\n\n/**\n * A generic aggregation relationship between two generic entities.\n */\nexport const BasicAggregation = 1001;\n\n\n/**\n * Map of names for all basic entity types.\n */\nexport const typeNames: { [key: number]: string } = {\n [BasicEntity]: \"BasicEntity\",\n [BasicAggregation]: \"BasicAggregation\"\n};\n\n/**\n * Map of type codes for all basic entity type names.\n */\nexport const typeCodes: { [key: string]: number } = {\n \"BasicEntity\": BasicEntity,\n \"BasicAggregation\": BasicAggregation\n};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit CityJSON 1.1.3 Data Types\n *\n * * Defines numeric constants for the set of [CityJSON](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#cityjson) 1.1.3 entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign CityJSON types to {@link @xeokit/data!DataObject | DataObjects}\n * and {@link @xeokit/data!Relationship | Relationships} and treat them as elements of a basic entity-relationship graph.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} , to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating CityJSON objects.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/cityjsontypes1x1x3\n * ````\n *\n * @module @xeokit/cityjsontypes_1_1_3\n */\n\n/**\n * A generic aggregation relationship between two generic entities.\n */\nexport const BasicAggregation = 2001;\n\n/**\n * This CityObject type represents a bridge, which can have attributes such as the length, height, and type of bridge.\n */\nexport const Bridge = 2000;\n\n/**\n * This CityJSON object represents a physical or functional subdivision of a Bridge.\n */\nexport const BridgePart = 2001;\n\n/**\n * This CityJSON type represents a permanent part of a Bridge (inside and/or outside) which does not have the significance of a\n * BridgePart. In contrast to BridgeConstructiveElements, a BridgeInstallation is not essential from a structural point of view.\n * Examples are stairs, antennas or railways.\n */\nexport const BridgeInstallation = 2002;\n\n/**\n * This CityJSON type represents an element of a bridge which is essential from a structural point of view. Examples are pylons,\n * anchorages, slabs, beams.\n */\nexport const BridgeConstructiveElement = 2003;\n\n/**\n * This CityJSON type represents a space within a Bridge or BridgePart intended for human occupancy (e.g. a place of work or\n * recreation) and/or containment (storage) of animals or things. A BridgeRoom is bounded physically and/or virtually (e.g. by\n * ClosureSurfaces or GenericSurfaces).\n */\nexport const BridgeRoom = 2004;\n\n/**\n * This CityJSON type represents equipment for occupant use, usually not fixed to the bridge. [cf. ISO 6707-1]\n */\nexport const BridgeFurniture = 2005;\n\n/**\n * This CityObject type represents a building, which can contain one or more \"BuildingPart\" objects. The Building object can\n * have attributes such as the building height, number of floors, and the year of construction.\n */\nexport const Building = 2006;\n\n/**\n * This CityObject type represents a part of a building, such as a wing or a tower. Building parts can have attributes such\n * as the building part height and the material used in its construction.\n */\nexport const BuildingPart = 2007;\n\n/**\n * This CityJSON type represents a permanent part of a Building (inside and/or outside) which has not the significance of a\n * BuildingPart. Examples are stairs, antennas, balconies or small roofs.\n */\nexport const BuildingInstallation = 2008;\n\n/**\n * This CityJSON type represents an element of a Building which is essential from a structural point of view. Examples are walls,\n * slabs, staircases, beams.\n */\nexport const BuildingConstructiveElement = 2009;\n\n/**\n * This CityJSON type represents equipment for occupant use, usually not fixed to the building. [cf. ISO 6707-1]\n */\nexport const BuildingFurniture = 2010;\n\n/**\n * This CityJSON type represents a horizontal section of a Building. BuildingStorey are not always defined according to the\n * building structure, but can also be defined according to logical considerations.\n */\nexport const BuildingStorey = 2011;\n\n/**\n * This CityJSON type represents a space within a Building or BuildingPart intended for human occupancy (e.g. a place of work or recreation)\n * and/or containment of animals or things. A BuildingRoom is bounded physically and/or virtually (e.g. by ClosureSurfaces or GenericSurfaces).\n */\nexport const BuildingRoom = 2012;\n\n/**\n * This CityJSON type represents a logical subdivision of a Building. BuildingUnits are formed according to some homogeneous\n * property like function, ownership, management, or accessibility. They may be separately sold, rented out, inherited, managed, etc.\n */\nexport const BuildingUnit = 2013;\n\n/**\n * This CityObject type represents outdoor furniture, such as benches, trash cans, and street lamps. CityFurniture objects can\n * have attributes such as the type of furniture and its location.\n */\nexport const CityFurniture = 2014;\n\n/**\n * This CityObject type represents a group of other CityObjects. CityObjectGroup objects can have attributes such as the name\n * of the group and the CityObjects it contains.\n */\nexport const CityObjectGroup = 2015;\n\n/**\n * This CityObject type represents the land use of a particular area, such as residential, commercial, or industrial. LandUse\n * objects can have attributes such as the name of the land use and the area it covers.\n */\nexport const LandUse = 2016;\n\n/**\n * this CityObject type represents an unclassified, generic element of construction.\n */\nexport const OtherConstruction = 2017;\n\n/**\n * This CityObject type represents vegetation, such as trees, bushes, and grass. PlantCover objects can have attributes such\n * as the type of vegetation and its location.\n */\nexport const PlantCover = 2018;\n\n/**\n * This CityObject type represents individual vegetation objects, e.g. trees or bushes.\n */\nexport const SolitaryVegetationObject = 2019;\n\n/**\n * This CityJSON type represents a terrain component as a triangulated irregular network.\n */\nexport const TINRelief = 2020;\n\n\nexport const TransportationSquare = 2021;\n\n/**\n * This CityObject type represents a railway, which can have attributes such as the type of railway and the tracks' location.\n */\nexport const Railway = 2022;\n\n/**\n * This CityObject type represents a road, which can have attributes such as the road type and the road's location.\n */\nexport const Road = 2023;\n\n/**\n * This CityObject type is used to represent any type of underground or underwater structure designed for passage or transportation,\n * such as a subway or water tunnel. It is defined by its geometry and other attributes.\n */\nexport const Tunnel = 2024;\n\n/**\n * This CityObject type represents a physical or functional subdivision of a Tunnel. It would be considered a Tunnel, if it were\n * not part of a collection of other TunnelParts.\n */\nexport const TunnelPart = 2025;\n\n/**\n * This CityObject type represents a permanent part of a Tunnel (inside and/or outside) which does not have the significance of a\n * TunnelPart. In contrast to TunnelConstructiveElement, a TunnelInstallation is not essential from a structural point of view. Examples\n * are stairs, antennas or railings.\n */\nexport const TunnelInstallation = 2026;\n\n/**\n * This CityObject type represents an element of a Tunnel which is essential from a structural point of view. Examples are walls, slabs, beams.\n */\nexport const TunnelConstructiveElement = 2027;\n\n/**\n * This CityObject type represents a hollow space within a Tunnel.\n */\nexport const TunnelHollowSpace = 2028;\n\n/**\n * This CityObject type represents equipment for occupant use, usually not fixed to the tunnel. [cf. ISO 6707-1]\n */\nexport const TunnelFurniture = 2029;\n\n/**\n * This CityObject type represents a body of water, such as a river, lake, or ocean. It is defined by its geometry and other attributes,\n * and can be used to model and analyze hydrological features.\n */\nexport const WaterBody = 2030;\n\n/**\n * This CityObject type is used to represent a natural or man-made channel that carries water, such as a river, canal, or stormwater drain.\n * It is defined by its geometry and other attributes, and can be used to model and analyze hydrological features.\n */\nexport const Waterway = 2031;\n\n/**\n * Map of names for all supported CityObject types.\n */\nexport const typeNames: { [key: number]: string } = {\n [Bridge]: \"Bridge\",\n [BridgePart]: \"BridgePart\",\n [BridgeInstallation]: \"BridgeInstallation\",\n [BridgeConstructiveElement]: \"BridgeConstructiveElement\",\n [BridgeRoom]: \"BridgeRoom\",\n [BridgeFurniture]: \"BridgeFurniture\",\n [Building]: \"Building\",\n [BuildingPart]: \"BuildingPart\",\n [BuildingInstallation]: \"BuildingInstallation\",\n [BuildingConstructiveElement]: \"BuildingConstructiveElement\",\n [BuildingFurniture]: \"BuildingFurniture\",\n [BuildingStorey]: \"BuildingStorey\",\n [BuildingRoom]: \"BuildingRoom\",\n [BuildingUnit]: \"BuildingUnit\",\n [CityFurniture]: \"CityFurniture\",\n [CityObjectGroup]: \"CityObjectGroup\",\n [LandUse]: \"LandUse\",\n [OtherConstruction]: \"OtherConstruction\",\n [PlantCover]: \"PlantCover\",\n [SolitaryVegetationObject]: \"SolitaryVegetationObject\",\n [TINRelief]: \"TINRelief\",\n [TransportationSquare]: \"TransportationSquare\",\n [Railway]: \"Railway\",\n [Road]: \"Road\",\n [Tunnel]: \"Tunnel\",\n [TunnelPart]: \"TunnelPart\",\n [TunnelInstallation]: \"TunnelInstallation\",\n [TunnelConstructiveElement]: \"TunnelInstallation\",\n [TunnelHollowSpace]: \"TunnelHollowSpace\",\n [TunnelFurniture]: \"TunnelFurniture\",\n [WaterBody]: \"WaterBody\",\n [Waterway]: \"Waterway\",\n};\n\n/**\n * Map of type codes for all CityObject type names.\n */\nexport const typeCodes: { [key: string]: number } = {\n \"Bridge\": Bridge,\n \"BridgePart\": BridgePart,\n \"BridgeInstallation\": BridgeInstallation,\n \"BridgeConstructiveElement\": BridgeConstructiveElement,\n \"BridgeRoom\": BridgeRoom,\n \"BridgeFurniture\": BridgeFurniture,\n \"Building\": Building,\n \"BuildingPart\": BuildingPart,\n \"BuildingInstallation\": BuildingInstallation,\n \"BuildingConstructiveElement\": BuildingConstructiveElement,\n \"BuildingFurniture\": BuildingFurniture,\n \"BuildingStorey\": BuildingStorey,\n \"BuildingRoom\": BuildingRoom,\n \"BuildingUnit\": BuildingUnit,\n \"CityFurniture\": CityFurniture,\n \"CityObjectGroup\": CityObjectGroup,\n \"LandUse\": LandUse,\n \"OtherConstruction\": OtherConstruction,\n \"PlantCover\": PlantCover,\n \"SolitaryVegetationObject\": SolitaryVegetationObject,\n \"TINRelief\": TINRelief,\n \"TransportationSquare\": TransportationSquare,\n \"Railway\": Railway,\n \"Road\": Road,\n \"Tunnel\": Tunnel,\n \"TunnelPart\": TunnelPart,\n \"TunnelInstallation\": TunnelInstallation,\n \"TunnelConstructiveElement\": TunnelInstallation,\n \"TunnelHollowSpace\": TunnelHollowSpace,\n \"TunnelFurniture\": TunnelFurniture,\n \"WaterBody\": WaterBody,\n \"Waterway\": Waterway\n};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit IFC Data Types\n *\n * * Defines numeric constants for [IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc) entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign IFC types to {@link @xeokit/data!DataObject | DataObjects} and\n * {@link @xeokit/data!Relationship | Relationships} and treat them as IFC elements.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating IFC element hierachies.\n * * Supports IFC versions 2x3 and 4.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/basictypes\n * ````\n *\n * @module @xeokit/ifcTypes\n */\n\n/**\n * A request is the act or instance of asking for something, such as a request for information, bid submission, or performance of work.\n */\nexport const IfcActionRequest = 1000;\n\n/**\n * The IfcActor defines all actors or human agents involved in a project during its full life cycle. It facilitates the use of person and organization definitions in the resource part of the IFC object model. This includes name, address, telecommunication addresses, and roles.\n */\nexport const IfcActor = 1001;\n\n/**\n * This entity indicates a role which is performed by an actor, either a person, an organization or a person related to an organization.\n */\nexport const IfcActorRole: number = 1002;\n\n/**\n * An actuator is a mechanical device for moving or controlling a mechanism or system. An actuator takes energy, usually created by air, electricity, or liquid, and converts that into some kind of motion.\n */\nexport const IfcActuator = 1003;\n\n/**\n * The distribution control element type IfcActuatorType defines commonly shared information for occurrences of actuators. The set of shared information may include:\n */\nexport const IfcActuatorType = 1004;\n\n/**\n * This abstract entity represents various kinds of postal and telecom addresses.\n */\nexport const IfcAddress = 1005;\n\n/**\n * An advanced B-rep is a boundary representation model in which all faces, edges and vertices are explicitly represented. It is a solid with explicit topology and elementary or free-form geometry. The faces of the B-rep are of type IfcAdvancedFace. An advanced B-rep has to meet the same topological constraints as the manifold solid B-rep.\n */\nexport const IfcAdvancedBrep = 1006;\n\n/**\n * The IfcAdvancedBrepWithVoids is a specialization of an advanced B-rep which contains one or more voids in its interior. The voids are represented as closed shells which are defined so that the shell normal point into the void.\n */\nexport const IfcAdvancedBrepWithVoids = 1007;\n\n/**\n * An advanced face is a specialization of a face surface that has to meet requirements on using particular topological and geometric representation items for the definition of the faces, edges and vertices.\n */\nexport const IfcAdvancedFace = 1008;\n\n/**\n * An air terminal is a terminating or origination point for the transfer of air between distribution system(s) and one or more spaces. It can also be used for the transfer of air between adjacent spaces.\n */\nexport const IfcAirTerminal = 1009;\n\n/**\n * An air terminal box typically participates in an HVAC duct distribution system and is used to control or modulate the amount of air delivered to its downstream ductwork. An air terminal box type is often referred to as an \"air flow regulator\".\n */\nexport const IfcAirTerminalBox = 1010;\n\n/**\n * The flow controller type IfcAirTerminalBoxType defines commonly shared information for occurrences of air terminal boxes. The set of shared information may include:\n */\nexport const IfcAirTerminalBoxType = 1011;\n\n/**\n * The flow terminal type IfcAirTerminalType defines commonly shared information for occurrences of air terminals. The set of shared information may include:\n */\nexport const IfcAirTerminalType = 1012;\n\n/**\n * An air-to-air heat recovery device employs a counter-flow heat exchanger between inbound and outbound air flow. It is typically used to transfer heat from warmer air in one chamber to cooler air in the second chamber (i.e., typically used to recover heat from the conditioned air being exhausted and the outside air being supplied to a building), resulting in energy savings from reduced heating (or cooling) requirements.\n */\nexport const IfcAirToAirHeatRecovery = 1013;\n\n/**\n * The energy conversion device type IfcAirToAirHeatRecoveryType defines commonly shared information for occurrences of air to air heat recoverys. The set of shared information may include:\n */\nexport const IfcAirToAirHeatRecoveryType = 1014;\n\n/**\n * An alarm is a device that signals the existence of a condition or situation that is outside the boundaries of normal expectation or that activates such a device.\n */\nexport const IfcAlarm = 1015;\n\n/**\n * The distribution control element type IfcAlarmType defines commonly shared information for occurrences of alarms. The set of shared information may include:\n */\nexport const IfcAlarmType = 1016;\n\n/**\n * An annotation is an information element within the geometric (and spatial) context of a project, that adds a note or meaning to the objects which constitutes the project model. Annotations include additional points, curves, text, dimensioning, hatching and other forms of graphical notes. It also includes virtual or symbolic representations of additional model components, not representing products or spatial structures, such as event elements, survey points, contour lines or similar.\n */\nexport const IfcAnnotation = 1017;\n\n/**\n * The IfcAnnotationFillArea defines an area by a definite OuterBoundary, that might include InnerBoundaries. The areas defined by the InnerBoundaries are excluded from applying the fill area style. The InnerBoundaries shall not intersect with the OuterBoundary nor being outside of the OuterBoundary.\n */\nexport const IfcAnnotationFillArea = 1018;\n\n/**\n * IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer.\n */\nexport const IfcApplication = 1019;\n\n/**\n * This entity captures a value driven by a formula, with additional qualifications including unit basis, valid date range, and categorization.\n */\nexport const IfcAppliedValue = 1020;\n\n/**\n * An IfcApproval represents information about approval processes such as for a plan, a design, a proposal, or a change order in a construction or facilities management project. IfcApproval is referenced by IfcRelAssociatesApproval in IfcControlExtension schema, and thereby can be related to all subtypes of IfcRoot. An approval may also be given to resource objects using IfcResourceApprovalRelationship\n */\nexport const IfcApproval = 1021;\n\n/**\n * An IfcApprovalRelationship associates approvals (one relating approval and one or more related approvals), each having different status or level as the approval process or the approved objects evolve.\n */\nexport const IfcApprovalRelationship = 1022;\n\n/**\n * The closed profile IfcArbitraryClosedProfileDef defines an arbitrary two-dimensional profile for the use within the swept surface geometry, the swept area solid or a sectioned spine. It is given by an outer boundary from which the surface or solid can be constructed.\n */\nexport const IfcArbitraryClosedProfileDef = 1023;\n\n/**\n * The open profile IfcArbitraryOpenProfileDef defines an arbitrary two-dimensional open profile for the use within the swept surface geometry. It is given by an open boundary from which the surface can be constructed.\n */\nexport const IfcArbitraryOpenProfileDef = 1024;\n\n/**\n * The IfcArbitraryProfileDefWithVoids defines an arbitrary closed two-dimensional profile with holes. It is given by an outer boundary and inner boundaries. A kdtree3 usage of IfcArbitraryProfileDefWithVoids is as the cross section for the creation of swept surfaces or swept solids.\n */\nexport const IfcArbitraryProfileDefWithVoids = 1025;\n\n/**\n * An asset is a uniquely identifiable grouping of elements acting as a single entity that has a financial value or that can be operated on as a single unit.\n */\nexport const IfcAsset = 1026;\n\n/**\n * IfcAsymmetricIShapeProfileDef defines a section profile that provides the defining parameters of a singly symmetric I-shaped section. Its parameters and orientation relative to the position coordinate system are according to the following illustration. The centre of the position coordinate system is in the profile's centre of the bounding box.\n */\nexport const IfcAsymmetricIShapeProfileDef = 1027;\n\n/**\n * An audio-visual appliance is a device that displays, captures, transmits, or receives audio or video.\n */\nexport const IfcAudioVisualAppliance = 1028;\n\n/**\n * The flow terminal type IfcAudioVisualApplianceType defines commonly shared information for occurrences of audio visual appliances. The set of shared information may include:\n */\nexport const IfcAudioVisualApplianceType = 1029;\n\n/**\n * The IfcAxis1Placement provides location and direction of a single axis.\n */\nexport const IfcAxis1Placement = 1030;\n\n/**\n * The IfcAxis2Placement2D provides location and orientation to place items in a two-dimensional space. The attribute RefDirection defines the x axis, the y axis is derived. If the attribute RefDirection is not given, the placement defaults to P[1] (x-axis) as [1.,0.] and P[2] (y-axis) as [0.,1.].\n */\nexport const IfcAxis2Placement2D = 1031;\n\n/**\n * The IfcAxis2Placement3D provides location and orientations to place items in a three-dimensional space. The attribute Axis defines the Z direction, RefDirection the X direction. The Y direction is derived.\n */\nexport const IfcAxis2Placement3D = 1032;\n\n/**\n * An IfcBeam is a horizontal, or nearly horizontal, structural member that is capable of withstanding load primarily by resisting bending. It represents such a member from an architectural point of view. It is not required to be load bearing.\n */\nexport const IfcBeam = 1033;\n\n/**\n * The standard beam, IfcBeamStandardCase, defines a beam with certain constraints for the provision of material usage, parameters and with certain constraints for the geometric representation. The IfcBeamStandardCase handles all cases of beams, that:\n */\nexport const IfcBeamStandardCase = 1034;\n\n/**\n * The element type IfcBeamType defines commonly shared information for occurrences of beams. The set of shared information may include:\n */\nexport const IfcBeamType = 1035;\n\n/**\n * An IfcBlobTexture provides a 2-dimensional distribution of the lighting parameters of a surface onto which it is mapped. The texture itself is given as a single binary blob, representing the content of a pixel format file. The file format of the pixel file is given by the RasterFormat attribute and allowable formats are guided by where rule SupportedRasterFormat.\n */\nexport const IfcBlobTexture = 1036;\n\n/**\n * The IfcBlock is a Construction Solid SceneGeometry (CSG) 3D primitive. It is defined by a position and a positve distance along the three orthogonal axes. The inherited Position attribute has the IfcAxisPlacement3D type and provides:\n */\nexport const IfcBlock = 1037;\n\n/**\n * A boiler is a closed, pressure-rated vessel in which water or other fluid is heated using an energy source such as natural gas, heating oil, or electricity. The fluid in the vessel is then circulated out of the boiler for use in various processes or heating applications.\n */\nexport const IfcBoiler = 1038;\n\n/**\n * The energy conversion device type IfcBoilerType defines commonly shared information for occurrences of boilers. The set of shared information may include:\n */\nexport const IfcBoilerType = 1039;\n\n/**\n * A clipping result is defined as a special subtype of the general IfcBooleanResult. It constrains the operands and the operator of the Boolean result.\n */\nexport const IfcBooleanClippingResult = 1040;\n\n/**\n * The IfcBooleanResult is the result of applying a Boolean operation to two operands being solids.\n */\nexport const IfcBooleanResult = 1041;\n\n/**\n * The abstract entity IfcBoundaryCondition is the supertype of all boundary conditions that can be applied to structural connection definitions, either directly for the connection (e.g. the joint) or for the relation between a structural member and the connection.\n */\nexport const IfcBoundaryCondition = 1042;\n\n/**\n * An IfcBoundaryCurve defines a curve acting as the boundary of a surface.\n */\nexport const IfcBoundaryCurve = 1043;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryEdgeCondition = 1044;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryFaceCondition = 1045;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryNodeCondition = 1046;\n\n/**\n * Describes linearly elastic support conditions or connection conditions, including linearly elastic warping restraints.\n */\nexport const IfcBoundaryNodeConditionWarping = 1047;\n\n/**\n * An IfcBoundedCurve is a curve of finite length.\n */\nexport const IfcBoundedCurve = 1048;\n\n/**\n * An IfcBoundedSurface is a surface of finite area.\n */\nexport const IfcBoundedSurface = 1049;\n\n/**\n * The IfcBoundingBox defines an orthogonal box oriented parallel to the axes of the object coordinate system in which it is defined. It is defined by a Corner being a three-dimensional Cartesian point and three length measures defining the X, Y and Z parameters of the box in the direction of the positive axes.\n */\nexport const IfcBoundingBox = 1050;\n\n/**\n * The IfcBoxedHalfSpace is used (as its supertype IfcHalfSpaceSolid) only within Boolean operations. It divides the domain into exactly two subsets, where the domain in question is that of the attribute Enclosure.\n */\nexport const IfcBoxedHalfSpace = 1051;\n\n/**\n * The IfcBSplineCurve is a spline curve parameterized by spline functions.\n */\nexport const IfcBSplineCurve = 1052;\n\n/**\n * The IfcBSplineCurveWithKnots is a spline curve parameterized by spline functions for which the knot values are explicitly given.\n */\nexport const IfcBSplineCurveWithKnots = 1053;\n\n/**\n * The IfcBSplineSurface is a general form of rational or polynomial parametric surface.\n */\nexport const IfcBSplineSurface = 1054;\n\n/**\n * The IfcBSplineSurfaceWithKnots is a general form of rational or polynomial parametric surface in which the knot values are explicitly given.\n */\nexport const IfcBSplineSurfaceWithKnots = 1055;\n\n/**\n * A building represents a structure that provides shelter for its occupants or contents and stands in one place. The building is also used to provide a basic element within the spatial structure hierarchy for the components of a building project (together with site, storey, and space).\n */\nexport const IfcBuilding = 1056;\n\n/**\n * IfcBuildingElementPart represents major components as subordinate parts of a building element. Typical usage examples include precast concrete sandwich walls, where the layers may have different geometry representations. In this case the layered material representation does not sufficiently describe the element. Each layer is represented by an own instance of the IfcBuildingElementPart with its own geometry description.\n */\nexport const IfcBuildingElementPart = 1057;\n\n/**\n * The building element part type defines lists of commonly shared property set definitions and representation maps of parts of a building element.\n */\nexport const IfcBuildingElementPartType = 1058;\n\n/**\n * The IfcBuildingElementProxy is a proxy definition that provides the same functionality as subtypes of IfcBuildingElement, but without having a predefined meaning of the special type of building element, it represents.\n */\nexport const IfcBuildingElementProxy = 1059;\n\n/**\n * IfcBuildingElementProxyType defines a list of commonly shared property set definitions of a building element proxy and an optional set of product representations. It is used to define an element specification (i.e. the specific product information, that is kdtree3 to all occurrences of that product type).\n */\nexport const IfcBuildingElementProxyType = 1060;\n\n/**\n * The building storey has an elevation and typically represents a (nearly) horizontal aggregation of spaces that are vertically bound.\n */\nexport const IfcBuildingStorey = 1061;\n\n/**\n * A building system is a group by which building elements are grouped according to a kdtree3 function within the facility.\n */\nexport const IfcBuildingSystem = 1062;\n\n/**\n * A burner is a device that converts fuel into heat through combustion. It includes gas, oil, and wood burners.\n */\nexport const IfcBurner = 1063;\n\n/**\n * The energy conversion device type IfcBurnerType defines commonly shared information for occurrences of burners. The set of shared information may include:\n */\nexport const IfcBurnerType = 1064;\n\n/**\n * A cable carrier fitting is a fitting that is placed at junction or transition in a cable carrier system.\n */\nexport const IfcCableCarrierFitting = 1065;\n\n/**\n * The flow fitting type IfcCableCarrierFittingType defines commonly shared information for occurrences of cable carrier fittings. The set of shared information may include:\n */\nexport const IfcCableCarrierFittingType = 1066;\n\n/**\n * A cable carrier segment is a flow segment that is specifically used to carry and support cabling.\n */\nexport const IfcCableCarrierSegment = 1067;\n\n/**\n * The flow segment type IfcCableCarrierSegmentType defines commonly shared information for occurrences of cable carrier segments. The set of shared information may include:\n */\nexport const IfcCableCarrierSegmentType = 1068;\n\n/**\n * A cable fitting is a fitting that is placed at a junction, transition or termination in a cable system.\n */\nexport const IfcCableFitting = 1069;\n\n/**\n * The flow fitting type IfcCableFittingType defines commonly shared information for occurrences of cable fittings. The set of shared information may include:\n */\nexport const IfcCableFittingType = 1070;\n\n/**\n * A cable segment is a flow segment used to carry electrical power, data, or telecommunications signals.\n */\nexport const IfcCableSegment = 1071;\n\n/**\n * The flow segment type IfcCableSegmentType defines commonly shared information for occurrences of cable segments. The set of shared information may include:\n */\nexport const IfcCableSegmentType = 1072;\n\n/**\n * An IfcCartesianPoint defines a point by coordinates in an orthogonal, right-handed Cartesian coordinate system. For the purpose of this specification only two and three dimensional Cartesian points are used.\n */\nexport const IfcCartesianPoint = 1073;\n\n/**\n * The IfcCartesianPointList is the abstract supertype of list of points.\n */\nexport const IfcCartesianPointList = 1074;\n\n/**\n * The IfcCartesianPointList2D defines an ordered collection of two-dimentional Cartesian points. Each Cartesian point is provided as an two-dimensional point by a fixed list of two coordinates. The attribute CoordList is a two-dimensional list, where\n */\nexport const IfcCartesianPointList2D = 1075;\n\n/**\n * The IfcCartesianPointList3D defines an ordered collection of three-dimentional Cartesian points. Each Cartesian point is provided as an three-dimensional point by a fixed list of three coordinates. The attribute CoordList is a two-dimensional list, where\n */\nexport const IfcCartesianPointList3D = 1076;\n\n/**\n * An IfcCartesianTransformationOperator defines an abstract supertype of different kinds of geometric transformations.\n */\nexport const IfcCartesianTransformationOperator = 1077;\n\n/**\n * An IfcCartesianTransformationOperator2D defines a geometric transformation in two-dimensional space.\n */\nexport const IfcCartesianTransformationOperator2D = 1078;\n\n/**\n * A Cartesian transformation operator 2d non uniform defines a geometric transformation in two-dimensional space composed of translation, rotation, mirroring and non uniform scaling. Non uniform scaling is given by two different scaling factors:\n */\nexport const IfcCartesianTransformationOperator2DnonUniform = 1079;\n\n/**\n * An IfcCartesianTransformationOperator defines a geometric transformation in three-dimensional space.\n */\nexport const IfcCartesianTransformationOperator3D = 1080;\n\n/**\n * A Cartesian transformation operator 3d non uniform defines a geometric transformation in three-dimensional space composed of translation, rotation, mirroring and non uniform scaling. Non uniform scaling is given by three different scaling factors:\n */\nexport const IfcCartesianTransformationOperator3DnonUniform = 1081;\n\n/**\n * The profile IfcCenterLineProfileDef defines an arbitrary two-dimensional open, not self intersecting profile for the use within the swept solid geometry. It is given by an area defined by applying a constant thickness to a centerline, generating an area from which the solid can be constructed.\n */\nexport const IfcCenterLineProfileDef = 1082;\n\n/**\n * A chiller is a device used to remove heat from a liquid via a vapor-compression or absorption refrigeration cycle to cool a fluid, typically water or a mixture of water and glycol. The chilled fluid is then used to cool and dehumidify air in a building.\n */\nexport const IfcChiller = 1083;\n\n/**\n * The energy conversion device type IfcChillerType defines commonly shared information for occurrences of chillers. The set of shared information may include:\n */\nexport const IfcChillerType = 1084;\n\n/**\n * Chimneys are typically vertical, or as near as vertical, parts of the construction of a building and part of the building fabric. Often constructed by pre-cast or insitu concrete, today seldom by bricks.\n */\nexport const IfcChimney = 1085;\n\n/**\n * The building element type IfcChimneyType defines commonly shared information for occurrences of chimneys. The set of shared information may include:\n */\nexport const IfcChimneyType = 1086;\n\n/**\n * An IfcCircle is a curve consisting of a set of points having equal distance from the center.\n */\nexport const IfcCircle = 1087;\n\n/**\n * IfcCircleHollowProfileDef defines a section profile that provides the defining parameters of a circular hollow section (tube) to be used by the swept area solid. Its parameters and orientation relative to the position coordinate system are according to the following illustration.The centre of the position coordinate system is in the profile's centre of the bounding box (for symmetric profiles identical with the centre of gravity).\n */\nexport const IfcCircleHollowProfileDef = 1088;\n\n/**\n * IfcCircleProfileDef defines a circle as the profile definition used by the swept surface geometry or by the swept area solid. It is given by its Radius attribute and placed within the 2D position coordinate system, established by the Position attribute.\n */\nexport const IfcCircleProfileDef = 1089;\n\n/**\n * An IfcCivilElement is a generalization of all elements within a civil engineering works that cannot be represented as BuildingElements, DistributionElements or GeographicElements. Depending on the context of the construction project, included building work, such as buildings or factories, are represented as a collection of IfcBuildingElement's, distribution systems, such as piping or drainage, are represented as a collection of IfcDistributionElement's, and other geographic elements, such as trees, light posts, traffic signs etc. are represented as IfcGeographicElement's.\n */\nexport const IfcCivilElement = 1090;\n\n/**\n * An IfcCivilElementType is used to define an element specification of an element used within civil engineering works. Civil element types include for different types of element that may be used to represent information for construction works external to a building. IfcCivilElementType's may include:\n */\nexport const IfcCivilElementType = 1091;\n\n/**\n * An IfcClassification is used for the arrangement of objects into a class or category according to a kdtree3 purpose or their possession of kdtree3 characteristics. A classification in the sense of IfcClassification is taxonomy, or taxonomic scheme, arranged in a hierarchical structure. A category of objects relates to other categories in a generalization-specialization relationship. Therefore the classification items in an classification are organized in a tree structure.\n */\nexport const IfcClassification = 1092;\n\n/**\n * An IfcClassificationReference is a reference into a classification system or source (see IfcClassification) for a specific classification key (or notation).\n */\nexport const IfcClassificationReference = 1093;\n\n/**\n *\n */\nexport const IfcClosedShell = 1094;\n\n/**\n * A coil is a device used to provide heat transfer between non-mixing media. A kdtree3 example is a cooling coil, which utilizes a finned coil in which circulates chilled water, antifreeze, or refrigerant that is used to remove heat from air moving across the surface of the coil. A coil may be used either for heating or cooling purposes by placing a series of tubes (the coil) carrying a heating or cooling fluid into an airstream. The coil may be constructed from tubes bundled in a serpentine form or from finned tubes that give a extended heat transfer surface.\n */\nexport const IfcCoil = 1095;\n\n/**\n * The energy conversion device type IfcCoilType defines commonly shared information for occurrences of coils. The set of shared information may include:\n */\nexport const IfcCoilType = 1096;\n\n/**\n *\n */\nexport const IfcColourRgb = 1097;\n\n/**\n * The IfcColourRgbList defines an ordered collection of RGB colour values. Each colour value is a fixed list of three colour components (red, green, blue). The attribute ColourList is a two-dimensional list, where:\n */\nexport const IfcColourRgbList = 1098;\n\n/**\n *\n */\nexport const IfcColourSpecification = 1099;\n\n/**\n * \n *\n * # xeokit CityJSON Importer\n *\n * ---\n *\n * ### *Import 3D urban models from CityJSON format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D urban models from [CityJSON](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#cityjson), a JSON-based\n * file format specifically designed for lightweight, user-friendly, and human-readable\n * storage and sharing of 3D models. CityJSON can represent both basic geometric shapes and intricate objects such as\n * buildings and trees, offering a simple alternative to other formats like CityGML.\n *\n * To import a CityJSON model into xeokit, simply use the {@link @xeokit/cityjson!loadCityJSON | loadCityJSON} function, which will load\n * the file into both a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/cityjson\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/cityjson!loadCityJSON | loadCityJSON} to load a CityJSON file into our SceneModel and DataModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadCityJSON} from \"@xeokit/cityjson\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.bim\").then(response => {\n *\n * response.json().then(fileData => {\n *\n * loadCityJSON({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading CityJSON: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/cityjson\n */\nexport * from \"./loadCityJSON\";\n", "// Original algorithm by https://github.com/mapbox/earcut\n//\n// Ported to TypeScript by Ikaros Kappler\n// @date 2020-12-08\n\ninterface IVertex {\n x: number;\n y: number;\n};\n\n\nexport const earcut = (() => {\n\n /**\n * Nodes of a linked list, each node representing a vertex of a ring (a polygon).\n */\n class Node implements IVertex {\n i:number;\n x:number;\n y:number;\n prev:Node|undefined;\n next:Node|undefined;\n z:any;\n prevZ:any;\n nextZ:any;\n steiner:boolean;\n\n constructor( i:number, x:number, y:number ) {\n // vertex index in coordinates array\n this.i = i;\n\n // vertex coordinates\n this.x = x;\n this.y = y;\n\n // previous and next vertex nodes in a polygon ring\n this.prev = null;\n this.next = null;\n\n // z-order curve value\n this.z = null;\n\n // previous and next nodes in z-order\n this.prevZ = null;\n this.nextZ = null;\n\n // indicates whether this is a steiner point\n this.steiner = false;\n }\n };\n\n const earcut = (data:Array, holeIndices?:Array, dim:number=2) : Array => {\n\n dim = dim || 2;\n\n const hasHoles : boolean = holeIndices && holeIndices.length > 0;\n const outerLen : number = hasHoles ? holeIndices[0] * dim : data.length;\n let outerNode : Node = linkedList(data, 0, outerLen, dim, true);\n const triangles : Array = []; // [t0a, t0b, t0c, t1a, t2a, t3a, ... ]\n\n if (!outerNode || outerNode.next === outerNode.prev) return triangles;\n\n let minX : number;\n let minY : number;\n let maxX : number;\n let maxY : number;\n let x : number;\n let y : number;\n let invSize : number;\n\n if (hasHoles) {\n outerNode = eliminateHoles(data, holeIndices, outerNode, dim);\n }\n\n // if the shape is not too simple, we'll use z-order curve hash later; calculate polygon bbox\n // TODO: use Bounds class for calculation?\n if (data.length > 80 * dim) {\n minX = maxX = data[0];\n minY = maxY = data[1];\n\n for (var i = dim; i < outerLen; i += dim) {\n x = data[i];\n y = data[i + 1];\n if (x < minX) minX = x;\n if (y < minY) minY = y;\n if (x > maxX) maxX = x;\n if (y > maxY) maxY = y;\n }\n\n // minX, minY and invSize are later used to transform coords into integers for z-order calculation\n invSize = Math.max(maxX - minX, maxY - minY);\n invSize = invSize !== 0 ? 1 / invSize : 0;\n }\n\n earcutLinked(outerNode, triangles, dim, minX, minY, invSize);\n\n return triangles;\n }\n\n // create a circular doubly linked list from polygon points in the specified winding order\n const linkedList = (\n data : Array,\n start:number,\n end:number,\n dim:number,\n clockwise:boolean\n ) : Node|undefined => {\n var i : number;\n var last : Node|undefined;\n\n if (clockwise === (signedArea(data, start, end, dim) > 0)) {\n for (i = start; i < end; i += dim) {\n last = insertNode(i, data[i], data[i + 1], last);\n }\n } else {\n for (i = end - dim; i >= start; i -= dim) {\n last = insertNode(i, data[i], data[i + 1], last);\n }\n }\n\n if (last && equals(last, last.next)) {\n removeNode(last);\n last = last.next;\n }\n\n return last;\n }\n\n // eliminate colinear or duplicate points\n const filterPoints = (start : Node|undefined, end? : Node) : Node => {\n if (!start) return start;\n if (!end) end = start;\n\n // Remember starting node\n let p : Node = start;\n let again : boolean = false;\n do {\n // TODO: move into 'else' branch?\n again = false;\n\n if (!p.steiner && (equals(p, p.next) || area(p.prev, p, p.next) === 0)) {\n removeNode(p);\n p = end = p.prev;\n if (p === p.next) break;\n again = true;\n\n } else {\n p = p.next;\n }\n } while (again || p !== end);\n\n return end;\n }\n\n // main ear slicing loop which triangulates a polygon (given as a linked list)\n const earcutLinked = ( ear:Node,\n triangles:Array,\n dim:number,\n minX:number,\n minY:number,\n invSize:number,\n pass?:number ) : void => {\n if (!ear) return;\n\n // interlink polygon nodes in z-order\n if (!pass && invSize) {\n indexCurve( ear, minX, minY, invSize );\n }\n\n let stop : Node = ear;\n let prev : Node;\n let next : Node;\n\n // iterate through ears, slicing them one by one\n while (ear.prev !== ear.next) {\n prev = ear.prev;\n next = ear.next;\n\n if (invSize ? isEarHashed(ear, minX, minY, invSize) : isEar(ear)) {\n // cut off the triangle\n triangles.push(prev.i / dim);\n triangles.push(ear.i / dim);\n triangles.push(next.i / dim);\n\n removeNode(ear);\n\n // skipping the next vertex leads to less sliver triangles\n ear = next.next;\n stop = next.next;\n\n continue;\n }\n\n ear = next;\n\n // if we looped through the whole remaining polygon and can't find any more ears\n if (ear === stop) {\n // try filtering points and slicing again\n if (!pass) {\n earcutLinked(filterPoints(ear), triangles, dim, minX, minY, invSize, 1);\n\n // if this didn't work, try curing all small self-intersections locally\n } else if (pass === 1) {\n ear = cureLocalIntersections(filterPoints(ear), triangles, dim);\n earcutLinked(ear, triangles, dim, minX, minY, invSize, 2);\n\n // as a last resort, try splitting the remaining polygon into two\n } else if (pass === 2) {\n splitEarcut(ear, triangles, dim, minX, minY, invSize);\n }\n\n break;\n }\n }\n }; // END earcutLinked\n\n // check whether a polygon node forms a valid ear with adjacent nodes\n const isEar = (ear : Node) : boolean => {\n const a : Node = ear.prev;\n const b : Node = ear;\n const c : Node = ear.next;\n\n if (area(a, b, c) >= 0) return false; // reflex, can't be an ear\n\n // now make sure we don't have other points inside the potential ear\n var p = ear.next.next;\n\n while (p !== ear.prev) {\n if (pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.next;\n }\n\n return true;\n }\n\n const isEarHashed = (ear:Node, minX:number, minY:number, invSize:number) : boolean => {\n var a : Node = ear.prev;\n var b : Node = ear;\n var c : Node = ear.next;\n\n if (area(a, b, c) >= 0) return false; // reflex, can't be an ear\n\n // triangle bbox; min & max are calculated like this for speed\n // TODO: use Triangle.bounds\n var minTX = a.x < b.x ? (a.x < c.x ? a.x : c.x) : (b.x < c.x ? b.x : c.x),\n minTY = a.y < b.y ? (a.y < c.y ? a.y : c.y) : (b.y < c.y ? b.y : c.y),\n maxTX = a.x > b.x ? (a.x > c.x ? a.x : c.x) : (b.x > c.x ? b.x : c.x),\n maxTY = a.y > b.y ? (a.y > c.y ? a.y : c.y) : (b.y > c.y ? b.y : c.y);\n\n // z-order range for the current triangle bbox;\n var minZ = zOrder(minTX, minTY, minX, minY, invSize),\n maxZ = zOrder(maxTX, maxTY, minX, minY, invSize);\n\n var p = ear.prevZ,\n n = ear.nextZ;\n\n // look for points inside the triangle in both directions\n while (p && p.z >= minZ && n && n.z <= maxZ) {\n if (p !== ear.prev && p !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.prevZ;\n\n if (n !== ear.prev && n !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y) &&\n area(n.prev, n, n.next) >= 0) return false;\n n = n.nextZ;\n }\n\n // look for remaining points in decreasing z-order\n while (p && p.z >= minZ) {\n if (p !== ear.prev && p !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.prevZ;\n }\n\n // look for remaining points in increasing z-order\n while (n && n.z <= maxZ) {\n if (n !== ear.prev && n !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y) &&\n area(n.prev, n, n.next) >= 0) return false;\n n = n.nextZ;\n }\n\n return true;\n }\n\n // go through all polygon nodes and cure small local self-intersections\n const cureLocalIntersections = ( start : Node, triangles : Array, dim : number ) : Node => {\n let p : Node = start;\n do {\n let a : Node = p.prev;\n let b : Node = p.next.next;\n\n if (!equals(a, b) && intersects(a, p, p.next, b) && locallyInside(a, b) && locallyInside(b, a)) {\n\n triangles.push(a.i / dim);\n triangles.push(p.i / dim);\n triangles.push(b.i / dim);\n\n // remove two nodes involved\n removeNode(p);\n removeNode(p.next);\n\n p = start = b;\n }\n p = p.next;\n } while (p !== start);\n\n return filterPoints(p);\n }\n\n // try splitting polygon into two and triangulate them independently\n const splitEarcut = ( start: Node, triangles, dim, minX, minY, invSize) : void => {\n // look for a valid diagonal that divides the polygon into two\n let a : Node = start;\n do {\n let b : Node = a.next.next;\n while (b !== a.prev) {\n if (a.i !== b.i && isValidDiagonal(a, b)) {\n // split the polygon in two by the diagonal\n var c = splitPolygon(a, b);\n\n // filter colinear points around the cuts\n a = filterPoints(a, a.next);\n c = filterPoints(c, c.next);\n\n // run earcut on each half\n earcutLinked(a, triangles, dim, minX, minY, invSize);\n earcutLinked(c, triangles, dim, minX, minY, invSize);\n return;\n }\n b = b.next;\n }\n a = a.next;\n } while (a !== start);\n }\n\n // link every hole into the outer loop, producing a single-ring polygon without holes\n const eliminateHoles = ( data:Array,\n holeIndices:Array,\n outerNode:Node,\n dim:number ) : Node => {\n const queue : Array = [];\n let i : number;\n const len = holeIndices.length;\n let start : number;\n let end : number;\n let list : Node;\n\n for (i = 0; i < len; i++) {\n start = holeIndices[i] * dim;\n end = i < len - 1 ? holeIndices[i + 1] * dim : data.length;\n list = linkedList(data, start, end, dim, false);\n if (list === list.next) list.steiner = true;\n queue.push(getLeftmost(list));\n }\n\n queue.sort(compareX);\n\n // process holes from left to right\n for (i = 0; i < queue.length; i++) {\n eliminateHole(queue[i], outerNode);\n outerNode = filterPoints(outerNode, outerNode.next);\n }\n\n return outerNode;\n }\n\n const compareX = ( a : IVertex, b : IVertex ) : number => {\n return a.x - b.x;\n };\n\n // find a bridge between vertices that connects hole with an outer ring and and link it\n const eliminateHole = ( hole : Node, outerNode : Node ) : Node => {\n var bridge = findHoleBridge(hole, outerNode);\n if (!bridge) {\n return outerNode;\n }\n\n var bridgeReverse = splitPolygon(bridge, hole);\n\n // filter collinear points around the cuts\n var filteredBridge = filterPoints(bridge, bridge.next);\n filterPoints(bridgeReverse, bridgeReverse.next);\n\n // Check if input node was removed by the filtering\n return outerNode === bridge ? filteredBridge : outerNode;\n // }\n\n }\n\n // David Eberly's algorithm for finding a bridge between hole and outer polygon\n const findHoleBridge = ( hole : Node, outerNode : Node ) : Node => {\n let p : Node = outerNode;\n let hx : number = hole.x;\n let hy : number = hole.y;\n let qx : number = -Infinity;\n let m : Node;\n\n // find a segment intersected by a ray from the hole's leftmost point to the left;\n // segment's endpoint with lesser x will be potential connection point\n do {\n if (hy <= p.y && hy >= p.next.y && p.next.y !== p.y) {\n var x = p.x + (hy - p.y) * (p.next.x - p.x) / (p.next.y - p.y);\n if (x <= hx && x > qx) {\n qx = x;\n if (x === hx) {\n if (hy === p.y) return p;\n if (hy === p.next.y) return p.next;\n }\n m = p.x < p.next.x ? p : p.next;\n }\n }\n p = p.next;\n } while (p !== outerNode);\n\n if (!m) {\n return null;\n }\n\n if (hx === qx) {\n return m; // hole touches outer segment; pick leftmost endpoint\n }\n\n // look for points inside the triangle of hole point, segment intersection and endpoint;\n // if there are no points found, we have a valid connection;\n // otherwise choose the point of the minimum angle with the ray as connection point\n\n let stop : Node = m;\n let mx : number = m.x;\n let my : number = m.y;\n let tanMin : number = Infinity;\n let tan : number;\n\n p = m;\n\n do {\n if (hx >= p.x && p.x >= mx && hx !== p.x &&\n pointInTriangle(hy < my ? hx : qx, hy, mx, my, hy < my ? qx : hx, hy, p.x, p.y)) {\n\n tan = Math.abs(hy - p.y) / (hx - p.x); // tangential\n\n if (locallyInside(p, hole) &&\n (tan < tanMin || (tan === tanMin && (p.x > m.x || (p.x === m.x && sectorContainsSector(m, p)))))) {\n m = p;\n tanMin = tan;\n }\n }\n\n p = p.next;\n } while (p !== stop);\n\n return m;\n };\n\n // whether sector in vertex m contains sector in vertex p in the same coordinates\n const sectorContainsSector = ( m : Node, p : Node) : boolean => {\n return area(m.prev, m, p.prev) < 0 && area(p.next, m, m.next) < 0;\n };\n\n // interlink polygon nodes in z-order\n const indexCurve = ( start : Node, minX : number, minY : number, invSize : number ) : void => {\n var p = start;\n do {\n if (p.z === null) p.z = zOrder(p.x, p.y, minX, minY, invSize);\n p.prevZ = p.prev;\n p.nextZ = p.next;\n p = p.next;\n } while (p !== start);\n\n p.prevZ.nextZ = null;\n p.prevZ = null;\n\n sortLinked(p);\n }\n\n // Simon Tatham's linked list merge sort algorithm\n // http://www.chiark.greenend.org.uk/~sgtatham/algorithms/listsort.html\n const sortLinked = ( list : Node ) : Node => {\n let i : number;\n let p : Node;\n let q : Node;\n let e : Node;\n let tail : Node;\n let numMerges : number;\n let pSize : number;\n let qSize : number;\n let inSize : number = 1;\n\n do {\n p = list;\n list = null;\n tail = null;\n numMerges = 0;\n\n while (p) {\n numMerges++;\n q = p;\n pSize = 0;\n for (i = 0; i < inSize; i++) {\n pSize++;\n q = q.nextZ;\n if (!q) break;\n }\n qSize = inSize;\n\n while (pSize > 0 || (qSize > 0 && q)) {\n if (pSize !== 0 && (qSize === 0 || !q || p.z <= q.z)) {\n e = p;\n p = p.nextZ;\n pSize--;\n } else {\n e = q;\n q = q.nextZ;\n qSize--;\n }\n\n if (tail) tail.nextZ = e;\n else list = e;\n\n e.prevZ = tail;\n tail = e;\n }\n\n p = q;\n }\n\n tail.nextZ = null;\n inSize *= 2;\n\n } while (numMerges > 1);\n\n return list;\n }\n\n // z-order of a point given coords and inverse of the longer side of data bbox\n const zOrder = ( x:number, y:number, minX:number, minY:number, invSize:number) : number => {\n // coords are transformed into non-negative 15-bit integer range\n x = 32767 * (x - minX) * invSize;\n y = 32767 * (y - minY) * invSize;\n\n x = (x | (x << 8)) & 0x00FF00FF;\n x = (x | (x << 4)) & 0x0F0F0F0F;\n x = (x | (x << 2)) & 0x33333333;\n x = (x | (x << 1)) & 0x55555555;\n\n y = (y | (y << 8)) & 0x00FF00FF;\n y = (y | (y << 4)) & 0x0F0F0F0F;\n y = (y | (y << 2)) & 0x33333333;\n y = (y | (y << 1)) & 0x55555555;\n\n return x | (y << 1);\n }\n\n // find the leftmost node of a polygon ring\n const getLeftmost = ( start: Node ) : Node => {\n let p : Node = start;\n let leftmost : Node = start;\n do {\n if (p.x < leftmost.x || (p.x === leftmost.x && p.y < leftmost.y)) {\n leftmost = p;\n }\n p = p.next;\n } while (p !== start);\n return leftmost;\n }\n\n // check if a point lies within a convex triangle\n // TODO: use Triangle.containsPoint\n const pointInTriangle = ( ax : number, ay : number,\n bx : number, by : number,\n cx : number, cy : number,\n px : number, py : number) : boolean => {\n return (cx - px) * (ay - py) - (ax - px) * (cy - py) >= 0 &&\n (ax - px) * (by - py) - (bx - px) * (ay - py) >= 0 &&\n (bx - px) * (cy - py) - (cx - px) * (by - py) >= 0;\n }\n\n // check if a diagonal between two polygon nodes is valid (lies in polygon interior)\n const isValidDiagonal = ( a : Node, b : Node ) : boolean => {\n return a.next.i !== b.i && a.prev.i !== b.i && !intersectsPolygon(a, b) && // dones't intersect other edges\n (locallyInside(a, b) && locallyInside(b, a) && middleInside(a, b) && // locally visible\n (area(a.prev, a, b.prev) != 0 || area(a, b.prev, b)) != 0 || // does not create opposite-facing sectors\n equals(a, b) && area(a.prev, a, a.next) > 0 && area(b.prev, b, b.next) > 0); // special zero-length case\n }\n\n // signed area of a triangle\n const area = (p:IVertex, q:IVertex, r:IVertex) : number => {\n return (q.y - p.y) * (r.x - q.x) - (q.x - p.x) * (r.y - q.y);\n };\n\n // check if two points are equal\n // TODO: as member function of vertex\n const equals = (p1:IVertex, p2:IVertex) : boolean => {\n return p1.x === p2.x && p1.y === p2.y;\n };\n\n // check if two segments intersect\n // TODO: use Line.intersects\n const intersects = ( p1:IVertex, q1:IVertex, p2:IVertex, q2:IVertex ) : boolean => {\n var o1 = sign(area(p1, q1, p2));\n var o2 = sign(area(p1, q1, q2));\n var o3 = sign(area(p2, q2, p1));\n var o4 = sign(area(p2, q2, q1));\n\n if (o1 !== o2 && o3 !== o4) return true; // general case\n\n if (o1 === 0 && onSegment(p1, p2, q1)) return true; // p1, q1 and p2 are collinear and p2 lies on p1q1\n if (o2 === 0 && onSegment(p1, q2, q1)) return true; // p1, q1 and q2 are collinear and q2 lies on p1q1\n if (o3 === 0 && onSegment(p2, p1, q2)) return true; // p2, q2 and p1 are collinear and p1 lies on p2q2\n if (o4 === 0 && onSegment(p2, q1, q2)) return true; // p2, q2 and q1 are collinear and q1 lies on p2q2\n\n return false;\n };\n\n // for collinear points p, q, r, check if point q lies on segment pr\n const onSegment = ( p:IVertex, q:IVertex, r:IVertex ) : boolean => {\n return q.x <= Math.max(p.x, r.x) && q.x >= Math.min(p.x, r.x) && q.y <= Math.max(p.y, r.y) && q.y >= Math.min(p.y, r.y);\n };\n\n const sign = (num:number) : number => {\n return num > 0 ? 1 : num < 0 ? -1 : 0;\n };\n\n // check if a polygon diagonal intersects any polygon segments\n const intersectsPolygon = ( a:Node, b:Node ) : boolean => {\n let p : Node = a;\n do {\n if (p.i !== a.i && p.next.i !== a.i && p.i !== b.i && p.next.i !== b.i && intersects(p, p.next, a, b)) {\n return true;\n }\n p = p.next;\n } while (p !== a);\n\n return false;\n };\n\n // check if a polygon diagonal is locally inside the polygon\n const locallyInside = ( a : Node, b : Node ) : boolean => {\n return area(a.prev, a, a.next) < 0 ?\n area(a, b, a.next) >= 0 && area(a, a.prev, b) >= 0 :\n area(a, b, a.prev) < 0 || area(a, a.next, b) < 0;\n };\n\n // check if the middle point of a polygon diagonal is inside the polygon\n const middleInside = ( a : Node, b : Node ) : boolean => {\n let p : Node = a;\n let inside : boolean = false;\n const px : number = (a.x + b.x) / 2;\n const py : number = (a.y + b.y) / 2;\n // TODO: call Polygon.contains here?\n do {\n if (((p.y > py) !== (p.next.y > py)) && p.next.y !== p.y &&\n (px < (p.next.x - p.x) * (py - p.y) / (p.next.y - p.y) + p.x))\n inside = !inside;\n p = p.next;\n } while (p !== a);\n\n return inside;\n }\n\n // link two polygon vertices with a bridge; if the vertices belong to the same ring, it splits polygon into two;\n // if one belongs to the outer ring and another to a hole, it merges it into a single ring\n const splitPolygon = ( a : Node, b : Node ) : Node => {\n const a2 : Node = new Node(a.i, a.x, a.y);\n const b2 : Node = new Node(b.i, b.x, b.y);\n const an : Node = a.next;\n const bp : Node = b.prev;\n\n a.next = b;\n b.prev = a;\n\n a2.next = an;\n an.prev = a2;\n\n b2.next = a2;\n a2.prev = b2;\n\n bp.next = b2;\n b2.prev = bp;\n\n return b2;\n };\n\n // create a node and optionally link it with previous one (in a circular doubly linked list)\n const insertNode = (i, x, y, last) : Node => {\n var p : Node = new Node(i, x, y);\n\n if (!last) {\n p.prev = p;\n p.next = p;\n\n } else {\n p.next = last.next;\n p.prev = last;\n last.next.prev = p;\n last.next = p;\n }\n return p;\n };\n\n const removeNode = ( p : Node ) : void => {\n p.next.prev = p.prev;\n p.prev.next = p.next;\n\n if (p.prevZ) p.prevZ.nextZ = p.nextZ;\n if (p.nextZ) p.nextZ.prevZ = p.prevZ;\n };\n\n const signedArea = ( data : Array, start:number, end:number, dim:number) : number => {\n var sum = 0;\n for (var i = start, j = end - dim; i < end; i += dim) {\n sum += (data[j] - data[i]) * (data[i + 1] + data[j + 1]);\n j = i;\n }\n return sum;\n };\n\n return earcut;\n})();\n", "import {\n createVec2,\n createVec3,\n cross3Vec3,\n dotVec3,\n lenVec3,\n mulVec3Scalar,\n normalizeVec3,\n subVec3\n} from \"@xeokit/matrix\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\n// @ts-ignore\nimport {earcut} from './earcut';\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {BasicAggregation} from \"@xeokit/basictypes\";\nimport {typeCodes} from \"@xeokit/cityjsontypes_1_1_3\";\nimport {SDKError} from \"@xeokit/core\";\n\nconst tempVec2a = createVec2();\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\n/**\n * Loads CityJSON into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/cityjson\" | @xeokit/cityjson} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - CityJSON file data.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param options - CityJSON loading options\n * @param options.rotateX - True to rotate the model about the X-axis. Default is false.\n * @returns {Promise} Resolves when CityJSON has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadCityJSON(params: {\n fileData: any,\n sceneModel: SceneModel,\n dataModel?: DataModel\n },\n options: {\n rotateX?: boolean;\n } = {\n rotateX: false\n }): Promise {\n if (params.sceneModel) {\n if (params.sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (params.sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n return Promise.reject(new SDKError(\"DataModel already destroyed\"));\n }\n if (params.dataModel.built) {\n return Promise.reject(new SDKError(\"DataModel already built\"));\n }\n }\n const fileData = params.fileData;\n const ctx = {\n fileData,\n vertices: (fileData.transform && params.sceneModel)\n ? transformVertices(fileData.vertices, fileData.transform, options.rotateX)\n : fileData.vertices,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0\n };\n parseCityJSON(ctx);\n return Promise.resolve();\n}\n\nfunction transformVertices(vertices: any, transform: any, rotateX?: boolean) {\n const transformedVertices = [];\n const scale = transform.scale || createVec3([1, 1, 1]);\n const translate = transform.translate || createVec3([0, 0, 0]);\n for (let i = 0, j = 0; i < vertices.length; i++, j += 3) {\n const x = (vertices[i][0] * scale[0]) + translate[0];\n const y = (vertices[i][1] * scale[1]) + translate[1];\n const z = (vertices[i][2] * scale[2]) + translate[2];\n if (rotateX) {\n transformedVertices.push([x, z, y]);\n } else {\n transformedVertices.push([x, y, z]);\n }\n }\n return transformedVertices;\n}\n\nfunction parseCityJSON(ctx: any) {\n const fileData = ctx.fileData;\n const cityObjects = fileData.CityObjects;\n for (const objectId in cityObjects) {\n parseCityObject(ctx, cityObjects[objectId], objectId);\n }\n if (ctx.dataModel) {\n for (const objectId in cityObjects) {\n parseRelationship(ctx, cityObjects[objectId], objectId);\n }\n }\n}\n\nfunction parseCityObject(ctx: any, cityObject: any, objectId: any) {\n if (ctx.dataModel) {\n ctx.dataModel.createObject({\n id: objectId,\n name: cityObject.type + \" : \" + objectId,\n type: typeCodes[cityObject.type] | 0,\n parent: cityObject.parents ? cityObject.parents[0] : null\n });\n }\n if (ctx.sceneModel) {\n if (!(cityObject.geometry && cityObject.geometry.length > 0)) {\n return;\n }\n const meshIds: string | any[] = [];\n for (let i = 0, len = cityObject.geometry.length; i < len; i++) {\n const geometry = cityObject.geometry[i];\n let objectMaterial;\n let surfaceMaterials;\n const appearance = ctx.fileData.appearance;\n if (appearance) {\n const materials = appearance.materials;\n if (materials) {\n const geometryMaterial = geometry.material;\n if (geometryMaterial) {\n const themeIds = Object.keys(geometryMaterial);\n if (themeIds.length > 0) {\n const themeId = themeIds[0];\n const theme = geometryMaterial[themeId];\n if (theme.value !== undefined) {\n objectMaterial = materials[theme.value];\n } else {\n const values = theme.values;\n if (values) {\n surfaceMaterials = [];\n for (let j = 0, lenj = values.length; j < lenj; j++) {\n const value = values[i];\n const surfaceMaterial = materials[value];\n surfaceMaterials.push(surfaceMaterial);\n }\n }\n }\n }\n }\n }\n }\n if (surfaceMaterials) {\n parseGeometrySurfacesWithOwnMaterials(ctx, geometry, surfaceMaterials, meshIds);\n } else {\n parseGeometrySurfacesWithSharedMaterial(ctx, geometry, objectMaterial, meshIds);\n }\n }\n if (meshIds.length > 0) {\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: meshIds\n });\n }\n }\n}\n\nfunction parseRelationship(ctx: any, cityObject: any, objectId: any) {\n if (cityObject.parents) {\n ctx.dataModel.createRelationship({\n relatingObjectId: cityObject.parents[0],\n relatedObjectId: objectId,\n type: BasicAggregation\n });\n }\n}\n\nfunction parseGeometrySurfacesWithOwnMaterials(ctx: any, geometry: any, surfaceMaterials: any, meshIds: any) {\n const geomType = geometry.type;\n switch (geomType) {\n case \"MultiPoint\":\n break;\n case \"MultiLineString\":\n break;\n case \"MultiSurface\":\n case \"CompositeSurface\":\n const surfaces = geometry.boundaries;\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n break;\n case \"Solid\":\n const shells = geometry.boundaries;\n for (let j = 0; j < shells.length; j++) {\n const surfaces = shells[j];\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n }\n break;\n case \"MultiSolid\":\n case \"CompositeSolid\":\n const solids = geometry.boundaries;\n for (let j = 0; j < solids.length; j++) {\n for (let k = 0; k < solids[j].length; k++) {\n const surfaces = solids[j][k];\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n }\n }\n break;\n case \"GeometryInstance\":\n break;\n }\n}\n\nfunction parseSurfacesWithOwnMaterials(ctx: any, surfaceMaterials: any, surfaces: any, meshIds: any) {\n const vertices = ctx.vertices;\n const sceneModel = ctx.sceneModel;\n for (let i = 0; i < surfaces.length; i++) {\n const surface = surfaces[i];\n const surfaceMaterial = surfaceMaterials[i] || {diffuseColor: [0.8, 0.8, 0.8], transparency: 1.0};\n const face = [];\n const holes = [];\n const sharedIndices: any[] = [];\n const geometryCfg: any = {\n positions: [],\n indices: []\n };\n for (let j = 0; j < surface.length; j++) {\n if (face.length > 0) {\n holes.push(face.length);\n }\n const newFace = extractLocalIndices(ctx, surface[j], sharedIndices, geometryCfg);\n face.push(...newFace);\n }\n if (face.length === 3) { // Triangle\n geometryCfg.indices.push(face[0]);\n geometryCfg.indices.push(face[1]);\n geometryCfg.indices.push(face[2]);\n } else if (face.length > 3) { // Polygon\n // Prepare to triangulate\n const pList = [];\n for (let k = 0; k < face.length; k++) {\n pList.push({\n x: vertices[sharedIndices[face[k]]][0],\n y: vertices[sharedIndices[face[k]]][1],\n z: vertices[sharedIndices[face[k]]][2]\n });\n }\n const normal = getNormalOfPositions(pList, createVec3());\n // Convert to 2D\n let pv = [];\n for (let k = 0; k < pList.length; k++) {\n to2D(pList[k], normal, tempVec2a);\n pv.unshift(tempVec2a[0]);\n pv.unshift(tempVec2a[1]);\n }\n // Triangulate\n const tr = earcut(pv, holes, 2);\n // Create triangles\n for (let k = 0; k < tr.length; k += 3) {\n geometryCfg.indices.unshift(face[tr[k]]);\n geometryCfg.indices.unshift(face[tr[k + 1]]);\n geometryCfg.indices.unshift(face[tr[k + 2]]);\n }\n }\n const geometryId = \"\" + ctx.nextId++;\n sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions: geometryCfg.positions,\n indices: geometryCfg.indices\n });\n const meshId = \"\" + ctx.nextId++;\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: (surfaceMaterial && surfaceMaterial.diffuseColor) ? surfaceMaterial.diffuseColor : [0.8, 0.8, 0.8],\n opacity: (surfaceMaterial && surfaceMaterial.transparency !== undefined) ? (1.0 - surfaceMaterial.transparency) : 1.0\n });\n meshIds.push(meshId);\n }\n}\n\nfunction parseGeometrySurfacesWithSharedMaterial(ctx: any, geometry: any, objectMaterial: any, meshIds: any) {\n const sceneModel = ctx.sceneModel;\n const sharedIndices: any = [];\n const geometryCfg: any = {\n positions: [],\n indices: []\n };\n const geomType = geometry.type;\n switch (geomType) {\n case \"MultiPoint\":\n break;\n case \"MultiLineString\":\n break;\n case \"MultiSurface\":\n case \"CompositeSurface\":\n const surfaces = geometry.boundaries;\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n break;\n case \"Solid\":\n const shells = geometry.boundaries;\n for (let j = 0; j < shells.length; j++) {\n const surfaces = shells[j];\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n }\n break;\n case \"MultiSolid\":\n case \"CompositeSolid\":\n const solids = geometry.boundaries;\n for (let j = 0; j < solids.length; j++) {\n for (let k = 0; k < solids[j].length; k++) {\n const surfaces = solids[j][k];\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n }\n }\n break;\n case \"GeometryInstance\":\n break;\n }\n if (geometryCfg.positions.length > 0 && geometryCfg.indices.length > 0) {\n const geometryId = \"\" + ctx.nextId++;\n sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions: geometryCfg.positions,\n indices: geometryCfg.indices\n });\n const meshId = \"\" + ctx.nextId++;\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: (objectMaterial && objectMaterial.diffuseColor) ? objectMaterial.diffuseColor : [0.8, 0.8, 0.8],\n opacity: 1.0\n });\n meshIds.push(meshId);\n }\n}\n\nfunction parseSurfacesWithSharedMaterial(ctx: any, surfaces: any, sharedIndices: any, primitiveCfg: any) {\n const vertices = ctx.vertices;\n for (let i = 0; i < surfaces.length; i++) {\n let boundary = [];\n let holes = [];\n for (let j = 0; j < surfaces[i].length; j++) {\n if (boundary.length > 0) {\n holes.push(boundary.length);\n }\n const newBoundary = extractLocalIndices(ctx, surfaces[i][j], sharedIndices, primitiveCfg);\n boundary.push(...newBoundary);\n }\n if (boundary.length === 3) { // Triangle\n primitiveCfg.indices.push(boundary[0]);\n primitiveCfg.indices.push(boundary[1]);\n primitiveCfg.indices.push(boundary[2]);\n } else if (boundary.length > 3) { // Polygon\n let pList = [];\n for (let k = 0; k < boundary.length; k++) {\n pList.push({\n x: vertices[sharedIndices[boundary[k]]][0],\n y: vertices[sharedIndices[boundary[k]]][1],\n z: vertices[sharedIndices[boundary[k]]][2]\n });\n }\n const normal = getNormalOfPositions(pList, createVec3());\n let pv = [];\n for (let k = 0; k < pList.length; k++) {\n to2D(pList[k], normal, tempVec2a);\n pv.unshift(tempVec2a[0]);\n pv.unshift(tempVec2a[1]);\n }\n const tr = earcut(pv, holes, 2);\n for (let k = 0; k < tr.length; k += 3) {\n primitiveCfg.indices.unshift(boundary[tr[k]]);\n primitiveCfg.indices.unshift(boundary[tr[k + 1]]);\n primitiveCfg.indices.unshift(boundary[tr[k + 2]]);\n }\n }\n }\n}\n\nfunction extractLocalIndices(ctx: any, boundary: any, sharedIndices: any, geometryCfg: any) {\n const vertices = ctx.vertices;\n const newBoundary = []\n for (let i = 0, len = boundary.length; i < len; i++) {\n const index = boundary[i];\n if (sharedIndices.includes(index)) {\n const vertexIndex = sharedIndices.indexOf(index);\n newBoundary.push(vertexIndex);\n } else {\n geometryCfg.positions.push(vertices[index][0]);\n geometryCfg.positions.push(vertices[index][1]);\n geometryCfg.positions.push(vertices[index][2]);\n newBoundary.push(sharedIndices.length);\n sharedIndices.push(index);\n }\n }\n return newBoundary\n}\n\nfunction getNormalOfPositions(positions: any, normal: any) {\n for (let i = 0; i < positions.length; i++) {\n let nexti = i + 1;\n if (nexti === positions.length) {\n nexti = 0;\n }\n normal[0] += ((positions[i].y - positions[nexti].y) * (positions[i].z + positions[nexti].z));\n normal[1] += ((positions[i].z - positions[nexti].z) * (positions[i].x + positions[nexti].x));\n normal[2] += ((positions[i].x - positions[nexti].x) * (positions[i].y + positions[nexti].y));\n }\n return normalizeVec3(normal);\n}\n\nfunction to2D(_p: any, _n: any, re: any) {\n const p = tempVec3a;\n const n = tempVec3b;\n const x3 = tempVec3c;\n p[0] = _p.x;\n p[1] = _p.y;\n p[2] = _p.z;\n n[0] = _n.x;\n n[1] = _n.y;\n n[2] = _n.z;\n x3[0] = 1.1;\n x3[1] = 1.1;\n x3[2] = 1.1;\n const dist = lenVec3(subVec3(x3, n));\n if (dist < 0.01) {\n x3[0] += 1.0;\n x3[1] += 2.0;\n x3[2] += 3.0;\n }\n const dot = dotVec3(x3, n);\n const tmp2 = mulVec3Scalar(n, dot, createVec3());\n x3[0] -= tmp2[0];\n x3[1] -= tmp2[1];\n x3[2] -= tmp2[2];\n normalizeVec3(x3);\n const y3 = cross3Vec3(n, x3, createVec3());\n const x = dotVec3(p, x3);\n const y = dotVec3(p, y3);\n re[0] = x;\n re[1] = y;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdotbim.svg)](https://badge.fury.io/js/%40xeokit%2Fdotbim)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/dotbim/badge)](https://www.jsdelivr.com/package/npm/@xeokit/dotbim)\n *\n * \n *\n * # xeokit .BIM Importer\n *\n * ---\n *\n * ### *Import building models from the open, free and simple .BIM file format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [.BIM](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dotbim), a JSON-based\n * file format specifically designed for lightweight, user-friendly, and human-readable storage and sharing of 3D BIM models.\n *\n * .BIM is an open-source and minimalist file format for BIM that's built to be easy to read and write. Essentially, .BIM\n * is a transfer format that contains triangulated meshes with a dictionary of information attached to them.\n *\n * To import a .BIM model into xeokit, simply use the {@link loadDotBIM} function, which will load the file into both\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUk1vgkAQ_StkTm2CRpDvGA-GSxNNjdyavazsUGmAJbtLUmr8711ApHow5bLMm9n33szOGVLOECJICyplnNNPQUtSkYrlAlOV88rYHrq4zxtJihXu9I3COJPK0F_OhpMfv3S9HIJUIFX43kMvrwN2bPKCjQFDqQRvu_DSsY_8MVW0p3_GXgteo1Btgs_0BuyABe26kKe8vs_sJ5Z_WRwMbjllMVebt92e6knJcQyrVd3FqFCs1wNEhaDtpskyFAMgb8O7KozN3ikUN4WJO2uq_i066r700QaBBYHZbE3AIpD80XlaGE8GJtUx-XgTTChRlDRnelt6ZwTUCUskEOlfhhltCkVAO9SltFE8aasUIiUaNKGpdbd43S-IMlpIjSLLFRe76wZ2hwk1rSA6wzdEtmfNLct3Lc8OlqHnha4JrYbtuRP6nuuElm97wdK9mPDDuWZdzAPbcxzPDh0_cFzHDXu6jz7Z-bj8Aq5V9Qs?type=png)](https://mermaid.live/edit#pako:eNqNUk1vgkAQ_StkTm2CRpDvGA-GSxNNjdyavazsUGmAJbtLUmr8711ApHow5bLMm9n33szOGVLOECJICyplnNNPQUtSkYrlAlOV88rYHrq4zxtJihXu9I3COJPK0F_OhpMfv3S9HIJUIFX43kMvrwN2bPKCjQFDqQRvu_DSsY_8MVW0p3_GXgteo1Btgs_0BuyABe26kKe8vs_sJ5Z_WRwMbjllMVebt92e6knJcQyrVd3FqFCs1wNEhaDtpskyFAMgb8O7KozN3ikUN4WJO2uq_i066r700QaBBYHZbE3AIpD80XlaGE8GJtUx-XgTTChRlDRnelt6ZwTUCUskEOlfhhltCkVAO9SltFE8aasUIiUaNKGpdbd43S-IMlpIjSLLFRe76wZ2hwk1rSA6wzdEtmfNLct3Lc8OlqHnha4JrYbtuRP6nuuElm97wdK9mPDDuWZdzAPbcxzPDh0_cFzHDXu6jz7Z-bj8Aq5V9Qs)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/dotbim\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/dotbim!loadDotBIM | loadDotBIM} to load a .BIM file into our SceneModel and DataModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadDotBIM} from \"@xeokit/dotbim\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.bim\").then(response => {\n *\n * response.json().then(fileData => {\n *\n * loadDotBIM({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading .BIM: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * Using {@link @xeokit/dotbim!saveDotBIM | saveDotBIM} to export the {@link @xeokit/scene!SceneModel | SceneModel} and\n * {@link @xeokit/data!DataModel | DataModel} back to a .BIM file:\n *\n * ````javascript\n * const dotBIMJSON = saveDTX({\n * sceneModel,\n * dataModel\n * });\n * ````\n *\n * @module @xeokit/dotbim\n */\nexport * from \"./loadDotBIM\";\nexport * from \"./saveDotBIM\";\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {ifcTypeCodes} from \"@xeokit/ifctypes\";\nimport {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * Loads .BIM into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/dotbim\" | @xeokit/dotbim} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - .BIM file data.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param options - .BIM loading options\n * @param options.error - Callback to log any non-fatal errors that occur while loading.\n * @returns {Promise} Resolves when .BIM has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadDotBIM(params: {\n fileData: any,\n sceneModel: SceneModel,\n dataModel?: DataModel\n },\n options: {\n translate?: FloatArrayParam,\n error?: (errMsg: string) => void;\n } = {}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n const fileData = params.fileData;\n const ctx = {\n fileData,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0,\n error: options.error || function (errMsg: string) {\n },\n translate: options.translate\n };\n parseDotBIM(ctx);\n resolve();\n });\n}\n\nfunction parseDotBIM(ctx: any) {\n const fileData = ctx.fileData;\n const meshes = fileData.meshes;\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n const geometry = ctx.sceneModel.createGeometry({\n id: mesh.mesh_id,\n primitive: TrianglesPrimitive,\n positions: mesh.coordinates,\n indices: mesh.indices\n });\n if (geometry instanceof SDKError) {\n ctx.error(`[SceneModel.createGeometry]: ${geometry.message}`);\n }\n }\n const elements = fileData.elements;\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i];\n const info = element.info;\n const objectId =\n element.guid !== undefined\n ? `${element.guid}`\n : (info !== undefined && info.id !== undefined\n ? info.id\n : i);\n if (ctx.sceneModel) {\n const geometryId = element.mesh_id;\n const meshId = `${objectId}-mesh`;\n const vector = element.vector;\n const rotation = element.rotation;\n const color = element.color;\n const mesh = ctx.sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: color ? [color.r, color.g, color.b] : undefined,\n opacity: color ? color.a : 1.0,\n quaternion: rotation ? [rotation.qx, rotation.qy, rotation.qz, rotation.qw] : undefined,\n position: vector\n ? (ctx.translate\n ? [vector.x + ctx.translate[0], vector.y + ctx.translate[1], vector.z + ctx.translate[2]]\n : [vector.x, vector.y, vector.z])\n : (ctx.translate ? ctx.translate : undefined)\n });\n if (mesh instanceof SDKError) {\n ctx.error(`[SceneModel.createMesh]: ${mesh.message}`);\n continue;\n }\n const sceneObject = ctx.sceneModel.createObject({\n id: objectId,\n meshIds: [meshId]\n });\n if (sceneObject instanceof SDKError) {\n ctx.error(`[SceneModel.createObject]: ${sceneObject.message}`);\n continue;\n }\n }\n if (ctx.dataModel) {\n if (!ctx.dataModel.objects[element.guid]) {\n const dataObject = ctx.dataModel.createObject({\n id: objectId,\n type: ifcTypeCodes[element.type],\n name: info.Name,\n description: info.Description\n });\n if (dataObject instanceof SDKError) {\n ctx.error(`[SceneModel.createObject]: ${dataObject.message}`);\n }\n }\n }\n }\n}\n", "import type {DataModel} from \"@xeokit/data\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {decompressPoint3WithAABB3, decompressPoint3WithMat4} from \"@xeokit/compression\";\nimport {createVec3, createVec4, decomposeMat4} from \"@xeokit/matrix\";\nimport {ifcTypeNames} from \"@xeokit/ifctypes\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\n\n/**\n * Exports a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel} to a JSON object\n * containing .BIM file data.\n *\n * See {@link \"@xeokit/dotbim\" | @xeokit/dotbim} for usage.\n *\n * @param params\n * @param params.model - The SceneModel to export to .BIM.\n * @param params.dataModel - The DataModel to export to .BIM.\n * @returns The .BIM file data in an JSON object.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has not yet been built.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the DataModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the DataModel has not yet been built.\n */\nexport function saveDotBIM(params: {\n sceneModel: SceneModel,\n dataModel?: DataModel\n}): Object {\n const sceneModel = params.sceneModel\n const dataModel = params.dataModel;\n if (sceneModel?.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!sceneModel?.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n if (dataModel) {\n if (dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (!dataModel.built) {\n throw new SDKError(\"DataModel not yet built\");\n }\n }\n return modelToDotBIM({sceneModel, dataModel});\n}\n\n\nfunction modelToDotBIM(params: { dataModel: DataModel; sceneModel: SceneModel }): Object {\n\n const dotBim = {\n meshes: [],\n elements: []\n };\n\n const geometries = Object.values(params.sceneModel.geometries);\n\n const meshLookup = {};\n\n for (let i = 0, len = geometries.length; i < len; i++) {\n const geometry = geometries[i];\n const aabb = geometry.aabb;\n const coordinates = [];\n const positionsCompressed = geometry.positionsCompressed;\n for (let k = 0, lenk = positionsCompressed.length; k < lenk; k += 3) {\n tempVec3a[0] = positionsCompressed[k];\n tempVec3a[1] = positionsCompressed[k + 1];\n tempVec3a[2] = positionsCompressed[k + 2];\n decompressPoint3WithAABB3(tempVec3a, aabb, tempVec3b);\n coordinates.push(tempVec3b[0]);\n coordinates.push(tempVec3b[1]);\n coordinates.push(tempVec3b[2]);\n }\n meshLookup[geometry.id] = {\n mesh_id: geometry.id,\n coordinates,\n indices: geometry.indices || []\n };\n }\n\n const sceneObjects = Object.values(params.sceneModel.objects);\n\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n const meshes = sceneObject.meshes;\n let meshId;\n let dbMesh;\n if (meshes.length === 1) {\n const mesh = meshes[0];\n const geometry = mesh.geometry;\n dbMesh = meshLookup[geometry.id];\n dotBim.meshes.push(dbMesh);\n meshId = geometry.id;\n } else {\n dbMesh = {\n mesh_id: sceneObject.id,\n coordinates: [],\n indices: []\n };\n let indicesOffset = 0;\n for (let j = 0, lenj = meshes.length; j < lenj; j++) {\n const sceneMesh = meshes[j];\n const geometry = sceneMesh.geometry;\n const lookupGeometry = meshLookup[geometry.id];\n const coordinates = lookupGeometry.coordinates;\n for (let k = 0, lenk = coordinates.length; k < lenk; k++) {\n dbMesh.coordinates.push(coordinates[k]);\n }\n const indices = lookupGeometry.indices;\n for (let k = 0, lenk = indices.length; k < lenk; k++) {\n dbMesh.indices.push(indices[k] + indicesOffset);\n }\n indicesOffset += coordinates.length / 3;\n }\n dotBim.meshes.push(dbMesh);\n meshId = sceneObject.id;\n }\n const firstMesh = meshes[0];\n const color = firstMesh.color;\n const position = createVec3();\n const quaternion = createVec4();\n const scale = createVec3();\n decomposeMat4(firstMesh.matrix, position, quaternion, scale);\n const info: any = {\n id: sceneObject.id,\n Tag: \"None\"\n };\n let dataObject;\n if (params.dataModel) {\n dataObject = params.dataModel.objects[sceneObject.id];\n if (dataObject) {\n info.type = ifcTypeNames[dataObject.type];\n info.Name = dataObject.name;\n info.Description = dataObject.description;\n }\n }\n if (!dataObject) {\n info.type = \"None\";\n info.Name = \"None\";\n info.Description = \"None\";\n }\n dotBim.elements.push({\n info,\n mesh_id: dbMesh.mesh_id,\n type: info.type,\n color: {\n r: color[0],\n g: color[1],\n b: color[2],\n a: firstMesh.opacity\n },\n vector: {\n x: position[0],\n y: position[1],\n z: position[2]\n },\n rotation: {\n qx: quaternion[0],\n qy: quaternion[0],\n qz: quaternion[0],\n qw: quaternion[0]\n },\n qy: quaternion[1],\n qz: quaternion[2],\n qw: quaternion[3]\n });\n }\n\n return dotBim;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%webifc.svg)](https://badge.fury.io/js/%40xeokit%webifc)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/webifc/badge)](https://www.jsdelivr.com/package/npm/@xeokit/webifc)\n *\n * \n *\n * # xeokit IFC Importer\n *\n * ---\n *\n * ### *Import BIM models from IFC STEP files using the web-ifc API*\n *\n * ---\n *\n * The xeokit SDK can import 3D building models from Industry Foundation Classes ([IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc)) files,\n * a standard file format used in the field of Building Information Modeling (BIM) to exchange information between\n * different software applications used in the construction and building industries.\n *\n * To import a medium-sized IFC model into xeokit, use the {@link @xeokit/webifc!loadWebIFC | loadWebIFC} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}. Internally, loadWebIFC\n * uses the [web-ifc](https://github.com/IFCjs/web-ifc) API to parse geometry and data from the IFC file.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFqwzAM_ZWg0zY62K6hFLaVQaFlpTns4otiK6uHYwfbYYTSf58dJ03bQVkuznt6lp5kHYAbQZADV-jcUuKXxZpppoW0xL00OlvvIu7jWcFJ0ybcUNmB6Sx8UqTTlN9B7xLgltDTR0_d3SeubKUSIxDkvDVdhMeYfcy_RI99-lvZG2sasr4r6Fa9xO1IYezC7WVzGdlOWf5lMRlcGxSfVK7e37YYJuXGMcznTcTkyS4WiUJrsXttq4psItxpeEOFsdkEf6iUFb-opk7VpjpVq_t3iWXOpEn2sl31yiF07ZbBE4PHxwWDZwbFmZ2bwuXk86_uYdKdLDA9GR-D1zdhBjXZGqUIy9c3x8DvqSYGefgVVGGrPIPQSZBi603RaQ65ty3NoG3C8GhYV8grVC6wJKQ3djMsdDyOv8sQ9og?type=png)](https://mermaid.live/edit#pako:eNqNUsFqwzAM_ZWg0zY62K6hFLaVQaFlpTns4otiK6uHYwfbYYTSf58dJ03bQVkuznt6lp5kHYAbQZADV-jcUuKXxZpppoW0xL00OlvvIu7jWcFJ0ybcUNmB6Sx8UqTTlN9B7xLgltDTR0_d3SeubKUSIxDkvDVdhMeYfcy_RI99-lvZG2sasr4r6Fa9xO1IYezC7WVzGdlOWf5lMRlcGxSfVK7e37YYJuXGMcznTcTkyS4WiUJrsXttq4psItxpeEOFsdkEf6iUFb-opk7VpjpVq_t3iWXOpEn2sl31yiF07ZbBE4PHxwWDZwbFmZ2bwuXk86_uYdKdLDA9GR-D1zdhBjXZGqUIy9c3x8DvqSYGefgVVGGrPIPQSZBi603RaQ65ty3NoG3C8GhYV8grVC6wJKQ3djMsdDyOv8sQ9og)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/webifc\n * ````\n *\n * ## Usage\n *\n * The example below shows how to use {@link @xeokit/webifc!loadWebIFC | loadWebIFC} in context.\n *\n * In this example, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry\n * and materials. We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/webifc!loadWebIFC | loadWebIFC} to load an IFC file into our SceneModel and DataModel. Before we do that, however,\n * we need to successfully instantiate and initialize the WebIFC API, which we pass into loadWebIFC.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadWebIFC} from \"@xeokit/webifc\";\n * import * as WebIFC from \"https://cdn.jsdelivr.net/npm/web-ifc@0.0.51/web-ifc-api.js\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const ifcAPI = new WebIFC.IfcAPI();\n *\n * ifcAPI.SetWasmPath(\"https://cdn.jsdelivr.net/npm/web-ifc@0.0.51/\");\n *\n * ifcAPI.Init().then(() => {\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.ifc\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadWebIFC({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading IFC file: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }).catch(message => {\n * console.error(`Error initializing WebIFC.IfcAPI: ${message}`);\n * });\n * }\n * ````\n *\n * @module @xeokit/webifc\n */\nexport * from \"./loadWebIFC\";\n", "var __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __async = (__this, __arguments, generator) => {\n return new Promise((resolve, reject) => {\n var fulfilled = (value) => {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n };\n var rejected = (value) => {\n try {\n step(generator.throw(value));\n } catch (e) {\n reject(e);\n }\n };\n var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);\n step((generator = generator.apply(__this, __arguments)).next());\n });\n};\n\n// dist/web-ifc-mt.js\nvar require_web_ifc_mt = __commonJS({\n \"dist/web-ifc-mt.js\"(exports, module) {\n var WebIFCWasm2 = (() => {\n var _scriptDir = typeof document !== \"undefined\" && document.currentScript ? document.currentScript.src : void 0;\n return function(moduleArg = {}) {\n function GROWABLE_HEAP_I8() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP8;\n }\n function GROWABLE_HEAP_U8() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU8;\n }\n function GROWABLE_HEAP_I16() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP16;\n }\n function GROWABLE_HEAP_U16() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU16;\n }\n function GROWABLE_HEAP_I32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP32;\n }\n function GROWABLE_HEAP_U32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU32;\n }\n function GROWABLE_HEAP_F32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPF32;\n }\n function GROWABLE_HEAP_F64() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPF64;\n }\n var Module = moduleArg;\n var readyPromiseResolve, readyPromiseReject;\n Module[\"ready\"] = new Promise((resolve, reject) => {\n readyPromiseResolve = resolve;\n readyPromiseReject = reject;\n });\n var moduleOverrides = Object.assign({}, Module);\n var arguments_ = [];\n var thisProgram = \"./this.program\";\n var quit_ = (status, toThrow) => {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = typeof window == \"object\";\n var ENVIRONMENT_IS_WORKER = typeof importScripts == \"function\";\n var ENVIRONMENT_IS_NODE = typeof process == \"object\" && typeof process.versions == \"object\" && typeof process.versions.node == \"string\";\n var ENVIRONMENT_IS_PTHREAD = Module[\"ENVIRONMENT_IS_PTHREAD\"] || false;\n var scriptDirectory = \"\";\n function locateFile(path) {\n if (Module[\"locateFile\"]) {\n return Module[\"locateFile\"](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n } else if (typeof document != \"undefined\" && document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (_scriptDir) {\n scriptDirectory = _scriptDir;\n }\n if (scriptDirectory.indexOf(\"blob:\") !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, \"\").lastIndexOf(\"/\") + 1);\n } else {\n scriptDirectory = \"\";\n }\n {\n read_ = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.send(null);\n return xhr.responseText;\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.responseType = \"arraybuffer\";\n xhr.send(null);\n return new Uint8Array(xhr.response);\n };\n }\n readAsync = (url, onload, onerror) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, true);\n xhr.responseType = \"arraybuffer\";\n xhr.onload = () => {\n if (xhr.status == 200 || xhr.status == 0 && xhr.response) {\n onload(xhr.response);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = (title) => document.title = title;\n } else {\n }\n var out = Module[\"print\"] || console.log.bind(console);\n var err = Module[\"printErr\"] || console.error.bind(console);\n Object.assign(Module, moduleOverrides);\n moduleOverrides = null;\n if (Module[\"arguments\"])\n arguments_ = Module[\"arguments\"];\n if (Module[\"thisProgram\"])\n thisProgram = Module[\"thisProgram\"];\n if (Module[\"quit\"])\n quit_ = Module[\"quit\"];\n var wasmBinary;\n if (Module[\"wasmBinary\"])\n wasmBinary = Module[\"wasmBinary\"];\n var noExitRuntime = Module[\"noExitRuntime\"] || true;\n if (typeof WebAssembly != \"object\") {\n abort(\"no native wasm support detected\");\n }\n var wasmMemory;\n var wasmExports;\n var wasmModule;\n var ABORT = false;\n var EXITSTATUS;\n function assert(condition, text) {\n if (!condition) {\n abort(text);\n }\n }\n var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateMemoryViews() {\n var b = wasmMemory.buffer;\n Module[\"HEAP8\"] = HEAP8 = new Int8Array(b);\n Module[\"HEAP16\"] = HEAP16 = new Int16Array(b);\n Module[\"HEAP32\"] = HEAP32 = new Int32Array(b);\n Module[\"HEAPU8\"] = HEAPU8 = new Uint8Array(b);\n Module[\"HEAPU16\"] = HEAPU16 = new Uint16Array(b);\n Module[\"HEAPU32\"] = HEAPU32 = new Uint32Array(b);\n Module[\"HEAPF32\"] = HEAPF32 = new Float32Array(b);\n Module[\"HEAPF64\"] = HEAPF64 = new Float64Array(b);\n }\n var INITIAL_MEMORY = Module[\"INITIAL_MEMORY\"] || 16777216;\n assert(INITIAL_MEMORY >= 5242880, \"INITIAL_MEMORY should be larger than STACK_SIZE, was \" + INITIAL_MEMORY + \"! (STACK_SIZE=\" + 5242880 + \")\");\n if (ENVIRONMENT_IS_PTHREAD) {\n wasmMemory = Module[\"wasmMemory\"];\n } else {\n if (Module[\"wasmMemory\"]) {\n wasmMemory = Module[\"wasmMemory\"];\n } else {\n wasmMemory = new WebAssembly.Memory({ \"initial\": INITIAL_MEMORY / 65536, \"maximum\": 4294967296 / 65536, \"shared\": true });\n if (!(wasmMemory.buffer instanceof SharedArrayBuffer)) {\n err(\"requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag\");\n if (ENVIRONMENT_IS_NODE) {\n err(\"(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)\");\n }\n throw Error(\"bad memory\");\n }\n }\n }\n updateMemoryViews();\n INITIAL_MEMORY = wasmMemory.buffer.byteLength;\n var wasmTable;\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n var runtimeKeepaliveCounter = 0;\n function keepRuntimeAlive() {\n return noExitRuntime || runtimeKeepaliveCounter > 0;\n }\n function preRun() {\n if (Module[\"preRun\"]) {\n if (typeof Module[\"preRun\"] == \"function\")\n Module[\"preRun\"] = [Module[\"preRun\"]];\n while (Module[\"preRun\"].length) {\n addOnPreRun(Module[\"preRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n if (ENVIRONMENT_IS_PTHREAD)\n return;\n if (!Module[\"noFSInit\"] && !FS.init.initialized)\n FS.init();\n FS.ignorePermissions = false;\n TTY.init();\n callRuntimeCallbacks(__ATINIT__);\n }\n function postRun() {\n if (ENVIRONMENT_IS_PTHREAD)\n return;\n if (Module[\"postRun\"]) {\n if (typeof Module[\"postRun\"] == \"function\")\n Module[\"postRun\"] = [Module[\"postRun\"]];\n while (Module[\"postRun\"].length) {\n addOnPostRun(Module[\"postRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnInit(cb) {\n __ATINIT__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function getUniqueRunDependency(id) {\n return id;\n }\n function addRunDependency(id) {\n runDependencies++;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n function abort(what) {\n if (Module[\"onAbort\"]) {\n Module[\"onAbort\"](what);\n }\n what = \"Aborted(\" + what + \")\";\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what += \". Build with -sASSERTIONS for more info.\";\n var e = new WebAssembly.RuntimeError(what);\n readyPromiseReject(e);\n throw e;\n }\n var dataURIPrefix = \"data:application/octet-stream;base64,\";\n function isDataURI(filename) {\n return filename.startsWith(dataURIPrefix);\n }\n var wasmBinaryFile;\n wasmBinaryFile = \"web-ifc-mt.wasm\";\n if (!isDataURI(wasmBinaryFile)) {\n wasmBinaryFile = locateFile(wasmBinaryFile);\n }\n function getBinarySync(file) {\n if (file == wasmBinaryFile && wasmBinary) {\n return new Uint8Array(wasmBinary);\n }\n if (readBinary) {\n return readBinary(file);\n }\n throw \"both async and sync fetching of the wasm failed\";\n }\n function getBinaryPromise(binaryFile) {\n if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {\n if (typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n if (!response[\"ok\"]) {\n throw \"failed to load wasm binary file at '\" + binaryFile + \"'\";\n }\n return response[\"arrayBuffer\"]();\n }).catch(() => getBinarySync(binaryFile));\n }\n }\n return Promise.resolve().then(() => getBinarySync(binaryFile));\n }\n function instantiateArrayBuffer(binaryFile, imports, receiver) {\n return getBinaryPromise(binaryFile).then((binary) => WebAssembly.instantiate(binary, imports)).then((instance) => instance).then(receiver, (reason) => {\n err(\"failed to asynchronously prepare wasm: \" + reason);\n abort(reason);\n });\n }\n function instantiateAsync(binary, binaryFile, imports, callback) {\n if (!binary && typeof WebAssembly.instantiateStreaming == \"function\" && !isDataURI(binaryFile) && typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n var result = WebAssembly.instantiateStreaming(response, imports);\n return result.then(callback, function(reason) {\n err(\"wasm streaming compile failed: \" + reason);\n err(\"falling back to ArrayBuffer instantiation\");\n return instantiateArrayBuffer(binaryFile, imports, callback);\n });\n });\n }\n return instantiateArrayBuffer(binaryFile, imports, callback);\n }\n function createWasm() {\n var info = { \"a\": wasmImports };\n function receiveInstance(instance, module2) {\n var exports2 = instance.exports;\n exports2 = applySignatureConversions(exports2);\n wasmExports = exports2;\n registerTLSInit(wasmExports[\"ma\"]);\n wasmTable = wasmExports[\"ja\"];\n addOnInit(wasmExports[\"ia\"]);\n wasmModule = module2;\n removeRunDependency(\"wasm-instantiate\");\n return exports2;\n }\n addRunDependency(\"wasm-instantiate\");\n function receiveInstantiationResult(result) {\n receiveInstance(result[\"instance\"], result[\"module\"]);\n }\n if (Module[\"instantiateWasm\"]) {\n try {\n return Module[\"instantiateWasm\"](info, receiveInstance);\n } catch (e) {\n err(\"Module.instantiateWasm callback failed with error: \" + e);\n readyPromiseReject(e);\n }\n }\n instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);\n return {};\n }\n var tempDouble;\n var tempI64;\n function ExitStatus(status) {\n this.name = \"ExitStatus\";\n this.message = `Program terminated with exit(${status})`;\n this.status = status;\n }\n var terminateWorker = function(worker) {\n worker.terminate();\n worker.onmessage = (e) => {\n };\n };\n function killThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n delete PThread.pthreads[pthread_ptr];\n terminateWorker(worker);\n __emscripten_thread_free_data(pthread_ptr);\n PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1);\n worker.pthread_ptr = 0;\n }\n function cancelThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n worker.postMessage({ \"cmd\": \"cancel\" });\n }\n function cleanupThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n assert(worker);\n PThread.returnWorkerToPool(worker);\n }\n function spawnThread(threadParams) {\n var worker = PThread.getNewWorker();\n if (!worker) {\n return 6;\n }\n PThread.runningWorkers.push(worker);\n PThread.pthreads[threadParams.pthread_ptr] = worker;\n worker.pthread_ptr = threadParams.pthread_ptr;\n var msg = { \"cmd\": \"run\", \"start_routine\": threadParams.startRoutine, \"arg\": threadParams.arg, \"pthread_ptr\": threadParams.pthread_ptr };\n worker.postMessage(msg, threadParams.transferList);\n return 0;\n }\n var PATH = { isAbs: (path) => path.charAt(0) === \"/\", splitPath: (filename) => {\n var splitPathRe = /^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/;\n return splitPathRe.exec(filename).slice(1);\n }, normalizeArray: (parts, allowAboveRoot) => {\n var up = 0;\n for (var i = parts.length - 1; i >= 0; i--) {\n var last = parts[i];\n if (last === \".\") {\n parts.splice(i, 1);\n } else if (last === \"..\") {\n parts.splice(i, 1);\n up++;\n } else if (up) {\n parts.splice(i, 1);\n up--;\n }\n }\n if (allowAboveRoot) {\n for (; up; up--) {\n parts.unshift(\"..\");\n }\n }\n return parts;\n }, normalize: (path) => {\n var isAbsolute = PATH.isAbs(path), trailingSlash = path.substr(-1) === \"/\";\n path = PATH.normalizeArray(path.split(\"/\").filter((p) => !!p), !isAbsolute).join(\"/\");\n if (!path && !isAbsolute) {\n path = \".\";\n }\n if (path && trailingSlash) {\n path += \"/\";\n }\n return (isAbsolute ? \"/\" : \"\") + path;\n }, dirname: (path) => {\n var result = PATH.splitPath(path), root = result[0], dir = result[1];\n if (!root && !dir) {\n return \".\";\n }\n if (dir) {\n dir = dir.substr(0, dir.length - 1);\n }\n return root + dir;\n }, basename: (path) => {\n if (path === \"/\")\n return \"/\";\n path = PATH.normalize(path);\n path = path.replace(/\\/$/, \"\");\n var lastSlash = path.lastIndexOf(\"/\");\n if (lastSlash === -1)\n return path;\n return path.substr(lastSlash + 1);\n }, join: function() {\n var paths = Array.prototype.slice.call(arguments);\n return PATH.normalize(paths.join(\"/\"));\n }, join2: (l, r) => PATH.normalize(l + \"/\" + r) };\n var initRandomFill = () => {\n if (typeof crypto == \"object\" && typeof crypto[\"getRandomValues\"] == \"function\") {\n return (view) => (view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))), view);\n } else\n abort(\"initRandomDevice\");\n };\n var randomFill = (view) => (randomFill = initRandomFill())(view);\n var PATH_FS = { resolve: function() {\n var resolvedPath = \"\", resolvedAbsolute = false;\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path = i >= 0 ? arguments[i] : FS.cwd();\n if (typeof path != \"string\") {\n throw new TypeError(\"Arguments to path.resolve must be strings\");\n } else if (!path) {\n return \"\";\n }\n resolvedPath = path + \"/\" + resolvedPath;\n resolvedAbsolute = PATH.isAbs(path);\n }\n resolvedPath = PATH.normalizeArray(resolvedPath.split(\"/\").filter((p) => !!p), !resolvedAbsolute).join(\"/\");\n return (resolvedAbsolute ? \"/\" : \"\") + resolvedPath || \".\";\n }, relative: (from, to) => {\n from = PATH_FS.resolve(from).substr(1);\n to = PATH_FS.resolve(to).substr(1);\n function trim(arr) {\n var start = 0;\n for (; start < arr.length; start++) {\n if (arr[start] !== \"\")\n break;\n }\n var end = arr.length - 1;\n for (; end >= 0; end--) {\n if (arr[end] !== \"\")\n break;\n }\n if (start > end)\n return [];\n return arr.slice(start, end - start + 1);\n }\n var fromParts = trim(from.split(\"/\"));\n var toParts = trim(to.split(\"/\"));\n var length = Math.min(fromParts.length, toParts.length);\n var samePartsLength = length;\n for (var i = 0; i < length; i++) {\n if (fromParts[i] !== toParts[i]) {\n samePartsLength = i;\n break;\n }\n }\n var outputParts = [];\n for (var i = samePartsLength; i < fromParts.length; i++) {\n outputParts.push(\"..\");\n }\n outputParts = outputParts.concat(toParts.slice(samePartsLength));\n return outputParts.join(\"/\");\n } };\n var UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => {\n idx >>>= 0;\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.buffer instanceof SharedArrayBuffer ? heapOrArray.slice(idx, endPtr) : heapOrArray.subarray(idx, endPtr));\n }\n var str = \"\";\n while (idx < endPtr) {\n var u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n var u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n };\n var FS_stdin_getChar_buffer = [];\n var lengthBytesUTF8 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var c = str.charCodeAt(i);\n if (c <= 127) {\n len++;\n } else if (c <= 2047) {\n len += 2;\n } else if (c >= 55296 && c <= 57343) {\n len += 4;\n ++i;\n } else {\n len += 3;\n }\n }\n return len;\n };\n var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {\n outIdx >>>= 0;\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = 65536 + ((u & 1023) << 10) | u1 & 1023;\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++ >>> 0] = u;\n } else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 192 | u >> 6;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 224 | u >> 12;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 240 | u >> 18;\n heap[outIdx++ >>> 0] = 128 | u >> 12 & 63;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n }\n }\n heap[outIdx >>> 0] = 0;\n return outIdx - startIdx;\n };\n function intArrayFromString(stringy, dontAddNull, length) {\n var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;\n var u8array = new Array(len);\n var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);\n if (dontAddNull)\n u8array.length = numBytesWritten;\n return u8array;\n }\n var FS_stdin_getChar = () => {\n if (!FS_stdin_getChar_buffer.length) {\n var result = null;\n if (typeof window != \"undefined\" && typeof window.prompt == \"function\") {\n result = window.prompt(\"Input: \");\n if (result !== null) {\n result += \"\\n\";\n }\n } else if (typeof readline == \"function\") {\n result = readline();\n if (result !== null) {\n result += \"\\n\";\n }\n }\n if (!result) {\n return null;\n }\n FS_stdin_getChar_buffer = intArrayFromString(result, true);\n }\n return FS_stdin_getChar_buffer.shift();\n };\n var TTY = { ttys: [], init: function() {\n }, shutdown: function() {\n }, register: function(dev, ops) {\n TTY.ttys[dev] = { input: [], output: [], ops };\n FS.registerDevice(dev, TTY.stream_ops);\n }, stream_ops: { open: function(stream) {\n var tty = TTY.ttys[stream.node.rdev];\n if (!tty) {\n throw new FS.ErrnoError(43);\n }\n stream.tty = tty;\n stream.seekable = false;\n }, close: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, fsync: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, read: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.get_char) {\n throw new FS.ErrnoError(60);\n }\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = stream.tty.ops.get_char(stream.tty);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.put_char) {\n throw new FS.ErrnoError(60);\n }\n try {\n for (var i = 0; i < length; i++) {\n stream.tty.ops.put_char(stream.tty, buffer[offset + i]);\n }\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } }, default_tty_ops: { get_char: function(tty) {\n return FS_stdin_getChar();\n }, put_char: function(tty, val) {\n if (val === null || val === 10) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n }, ioctl_tcgets: function(tty) {\n return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };\n }, ioctl_tcsets: function(tty, optional_actions, data) {\n return 0;\n }, ioctl_tiocgwinsz: function(tty) {\n return [24, 80];\n } }, default_tty1_ops: { put_char: function(tty, val) {\n if (val === null || val === 10) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n } } };\n var mmapAlloc = (size) => {\n abort();\n };\n var MEMFS = { ops_table: null, mount(mount) {\n return MEMFS.createNode(null, \"/\", 16384 | 511, 0);\n }, createNode(parent, name, mode, dev) {\n if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {\n throw new FS.ErrnoError(63);\n }\n if (!MEMFS.ops_table) {\n MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } };\n }\n var node = FS.createNode(parent, name, mode, dev);\n if (FS.isDir(node.mode)) {\n node.node_ops = MEMFS.ops_table.dir.node;\n node.stream_ops = MEMFS.ops_table.dir.stream;\n node.contents = {};\n } else if (FS.isFile(node.mode)) {\n node.node_ops = MEMFS.ops_table.file.node;\n node.stream_ops = MEMFS.ops_table.file.stream;\n node.usedBytes = 0;\n node.contents = null;\n } else if (FS.isLink(node.mode)) {\n node.node_ops = MEMFS.ops_table.link.node;\n node.stream_ops = MEMFS.ops_table.link.stream;\n } else if (FS.isChrdev(node.mode)) {\n node.node_ops = MEMFS.ops_table.chrdev.node;\n node.stream_ops = MEMFS.ops_table.chrdev.stream;\n }\n node.timestamp = Date.now();\n if (parent) {\n parent.contents[name] = node;\n parent.timestamp = node.timestamp;\n }\n return node;\n }, getFileDataAsTypedArray(node) {\n if (!node.contents)\n return new Uint8Array(0);\n if (node.contents.subarray)\n return node.contents.subarray(0, node.usedBytes);\n return new Uint8Array(node.contents);\n }, expandFileStorage(node, newCapacity) {\n var prevCapacity = node.contents ? node.contents.length : 0;\n if (prevCapacity >= newCapacity)\n return;\n var CAPACITY_DOUBLING_MAX = 1024 * 1024;\n newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0);\n if (prevCapacity != 0)\n newCapacity = Math.max(newCapacity, 256);\n var oldContents = node.contents;\n node.contents = new Uint8Array(newCapacity);\n if (node.usedBytes > 0)\n node.contents.set(oldContents.subarray(0, node.usedBytes), 0);\n }, resizeFileStorage(node, newSize) {\n if (node.usedBytes == newSize)\n return;\n if (newSize == 0) {\n node.contents = null;\n node.usedBytes = 0;\n } else {\n var oldContents = node.contents;\n node.contents = new Uint8Array(newSize);\n if (oldContents) {\n node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));\n }\n node.usedBytes = newSize;\n }\n }, node_ops: { getattr(node) {\n var attr = {};\n attr.dev = FS.isChrdev(node.mode) ? node.id : 1;\n attr.ino = node.id;\n attr.mode = node.mode;\n attr.nlink = 1;\n attr.uid = 0;\n attr.gid = 0;\n attr.rdev = node.rdev;\n if (FS.isDir(node.mode)) {\n attr.size = 4096;\n } else if (FS.isFile(node.mode)) {\n attr.size = node.usedBytes;\n } else if (FS.isLink(node.mode)) {\n attr.size = node.link.length;\n } else {\n attr.size = 0;\n }\n attr.atime = new Date(node.timestamp);\n attr.mtime = new Date(node.timestamp);\n attr.ctime = new Date(node.timestamp);\n attr.blksize = 4096;\n attr.blocks = Math.ceil(attr.size / attr.blksize);\n return attr;\n }, setattr(node, attr) {\n if (attr.mode !== void 0) {\n node.mode = attr.mode;\n }\n if (attr.timestamp !== void 0) {\n node.timestamp = attr.timestamp;\n }\n if (attr.size !== void 0) {\n MEMFS.resizeFileStorage(node, attr.size);\n }\n }, lookup(parent, name) {\n throw FS.genericErrors[44];\n }, mknod(parent, name, mode, dev) {\n return MEMFS.createNode(parent, name, mode, dev);\n }, rename(old_node, new_dir, new_name) {\n if (FS.isDir(old_node.mode)) {\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (new_node) {\n for (var i in new_node.contents) {\n throw new FS.ErrnoError(55);\n }\n }\n }\n delete old_node.parent.contents[old_node.name];\n old_node.parent.timestamp = Date.now();\n old_node.name = new_name;\n new_dir.contents[new_name] = old_node;\n new_dir.timestamp = old_node.parent.timestamp;\n old_node.parent = new_dir;\n }, unlink(parent, name) {\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, rmdir(parent, name) {\n var node = FS.lookupNode(parent, name);\n for (var i in node.contents) {\n throw new FS.ErrnoError(55);\n }\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, readdir(node) {\n var entries = [\".\", \"..\"];\n for (var key in node.contents) {\n if (!node.contents.hasOwnProperty(key)) {\n continue;\n }\n entries.push(key);\n }\n return entries;\n }, symlink(parent, newname, oldpath) {\n var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);\n node.link = oldpath;\n return node;\n }, readlink(node) {\n if (!FS.isLink(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n return node.link;\n } }, stream_ops: { read(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= stream.node.usedBytes)\n return 0;\n var size = Math.min(stream.node.usedBytes - position, length);\n if (size > 8 && contents.subarray) {\n buffer.set(contents.subarray(position, position + size), offset);\n } else {\n for (var i = 0; i < size; i++)\n buffer[offset + i] = contents[position + i];\n }\n return size;\n }, write(stream, buffer, offset, length, position, canOwn) {\n if (buffer.buffer === GROWABLE_HEAP_I8().buffer) {\n canOwn = false;\n }\n if (!length)\n return 0;\n var node = stream.node;\n node.timestamp = Date.now();\n if (buffer.subarray && (!node.contents || node.contents.subarray)) {\n if (canOwn) {\n node.contents = buffer.subarray(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (node.usedBytes === 0 && position === 0) {\n node.contents = buffer.slice(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (position + length <= node.usedBytes) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n return length;\n }\n }\n MEMFS.expandFileStorage(node, position + length);\n if (node.contents.subarray && buffer.subarray) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n } else {\n for (var i = 0; i < length; i++) {\n node.contents[position + i] = buffer[offset + i];\n }\n }\n node.usedBytes = Math.max(node.usedBytes, position + length);\n return length;\n }, llseek(stream, offset, whence) {\n var position = offset;\n if (whence === 1) {\n position += stream.position;\n } else if (whence === 2) {\n if (FS.isFile(stream.node.mode)) {\n position += stream.node.usedBytes;\n }\n }\n if (position < 0) {\n throw new FS.ErrnoError(28);\n }\n return position;\n }, allocate(stream, offset, length) {\n MEMFS.expandFileStorage(stream.node, offset + length);\n stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);\n }, mmap(stream, length, position, prot, flags) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n var ptr;\n var allocated;\n var contents = stream.node.contents;\n if (!(flags & 2) && contents.buffer === GROWABLE_HEAP_I8().buffer) {\n allocated = false;\n ptr = contents.byteOffset;\n } else {\n if (position > 0 || position + length < contents.length) {\n if (contents.subarray) {\n contents = contents.subarray(position, position + length);\n } else {\n contents = Array.prototype.slice.call(contents, position, position + length);\n }\n }\n allocated = true;\n ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n GROWABLE_HEAP_I8().set(contents, ptr >>> 0);\n }\n return { ptr, allocated };\n }, msync(stream, buffer, offset, length, mmapFlags) {\n MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);\n return 0;\n } } };\n var asyncLoad = (url, onload, onerror, noRunDep) => {\n var dep = !noRunDep ? getUniqueRunDependency(`al ${url}`) : \"\";\n readAsync(url, (arrayBuffer) => {\n assert(arrayBuffer, `Loading data file \"${url}\" failed (no arrayBuffer).`);\n onload(new Uint8Array(arrayBuffer));\n if (dep)\n removeRunDependency(dep);\n }, (event) => {\n if (onerror) {\n onerror();\n } else {\n throw `Loading data file \"${url}\" failed.`;\n }\n });\n if (dep)\n addRunDependency(dep);\n };\n var preloadPlugins = Module[\"preloadPlugins\"] || [];\n function FS_handledByPreloadPlugin(byteArray, fullname, finish, onerror) {\n if (typeof Browser != \"undefined\")\n Browser.init();\n var handled = false;\n preloadPlugins.forEach(function(plugin) {\n if (handled)\n return;\n if (plugin[\"canHandle\"](fullname)) {\n plugin[\"handle\"](byteArray, fullname, finish, onerror);\n handled = true;\n }\n });\n return handled;\n }\n function FS_createPreloadedFile(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {\n var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent;\n var dep = getUniqueRunDependency(`cp ${fullname}`);\n function processData(byteArray) {\n function finish(byteArray2) {\n if (preFinish)\n preFinish();\n if (!dontCreateFile) {\n FS.createDataFile(parent, name, byteArray2, canRead, canWrite, canOwn);\n }\n if (onload)\n onload();\n removeRunDependency(dep);\n }\n if (FS_handledByPreloadPlugin(byteArray, fullname, finish, () => {\n if (onerror)\n onerror();\n removeRunDependency(dep);\n })) {\n return;\n }\n finish(byteArray);\n }\n addRunDependency(dep);\n if (typeof url == \"string\") {\n asyncLoad(url, (byteArray) => processData(byteArray), onerror);\n } else {\n processData(url);\n }\n }\n function FS_modeStringToFlags(str) {\n var flagModes = { \"r\": 0, \"r+\": 2, \"w\": 512 | 64 | 1, \"w+\": 512 | 64 | 2, \"a\": 1024 | 64 | 1, \"a+\": 1024 | 64 | 2 };\n var flags = flagModes[str];\n if (typeof flags == \"undefined\") {\n throw new Error(`Unknown file open mode: ${str}`);\n }\n return flags;\n }\n function FS_getMode(canRead, canWrite) {\n var mode = 0;\n if (canRead)\n mode |= 292 | 73;\n if (canWrite)\n mode |= 146;\n return mode;\n }\n var FS = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: \"/\", initialized: false, ignorePermissions: true, ErrnoError: null, genericErrors: {}, filesystems: null, syncFSRequests: 0, lookupPath: (path, opts = {}) => {\n path = PATH_FS.resolve(path);\n if (!path)\n return { path: \"\", node: null };\n var defaults = { follow_mount: true, recurse_count: 0 };\n opts = Object.assign(defaults, opts);\n if (opts.recurse_count > 8) {\n throw new FS.ErrnoError(32);\n }\n var parts = path.split(\"/\").filter((p) => !!p);\n var current = FS.root;\n var current_path = \"/\";\n for (var i = 0; i < parts.length; i++) {\n var islast = i === parts.length - 1;\n if (islast && opts.parent) {\n break;\n }\n current = FS.lookupNode(current, parts[i]);\n current_path = PATH.join2(current_path, parts[i]);\n if (FS.isMountpoint(current)) {\n if (!islast || islast && opts.follow_mount) {\n current = current.mounted.root;\n }\n }\n if (!islast || opts.follow) {\n var count = 0;\n while (FS.isLink(current.mode)) {\n var link = FS.readlink(current_path);\n current_path = PATH_FS.resolve(PATH.dirname(current_path), link);\n var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count + 1 });\n current = lookup.node;\n if (count++ > 40) {\n throw new FS.ErrnoError(32);\n }\n }\n }\n }\n return { path: current_path, node: current };\n }, getPath: (node) => {\n var path;\n while (true) {\n if (FS.isRoot(node)) {\n var mount = node.mount.mountpoint;\n if (!path)\n return mount;\n return mount[mount.length - 1] !== \"/\" ? `${mount}/${path}` : mount + path;\n }\n path = path ? `${node.name}/${path}` : node.name;\n node = node.parent;\n }\n }, hashName: (parentid, name) => {\n var hash = 0;\n for (var i = 0; i < name.length; i++) {\n hash = (hash << 5) - hash + name.charCodeAt(i) | 0;\n }\n return (parentid + hash >>> 0) % FS.nameTable.length;\n }, hashAddNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n node.name_next = FS.nameTable[hash];\n FS.nameTable[hash] = node;\n }, hashRemoveNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n if (FS.nameTable[hash] === node) {\n FS.nameTable[hash] = node.name_next;\n } else {\n var current = FS.nameTable[hash];\n while (current) {\n if (current.name_next === node) {\n current.name_next = node.name_next;\n break;\n }\n current = current.name_next;\n }\n }\n }, lookupNode: (parent, name) => {\n var errCode = FS.mayLookup(parent);\n if (errCode) {\n throw new FS.ErrnoError(errCode, parent);\n }\n var hash = FS.hashName(parent.id, name);\n for (var node = FS.nameTable[hash]; node; node = node.name_next) {\n var nodeName = node.name;\n if (node.parent.id === parent.id && nodeName === name) {\n return node;\n }\n }\n return FS.lookup(parent, name);\n }, createNode: (parent, name, mode, rdev) => {\n var node = new FS.FSNode(parent, name, mode, rdev);\n FS.hashAddNode(node);\n return node;\n }, destroyNode: (node) => {\n FS.hashRemoveNode(node);\n }, isRoot: (node) => node === node.parent, isMountpoint: (node) => !!node.mounted, isFile: (mode) => (mode & 61440) === 32768, isDir: (mode) => (mode & 61440) === 16384, isLink: (mode) => (mode & 61440) === 40960, isChrdev: (mode) => (mode & 61440) === 8192, isBlkdev: (mode) => (mode & 61440) === 24576, isFIFO: (mode) => (mode & 61440) === 4096, isSocket: (mode) => (mode & 49152) === 49152, flagsToPermissionString: (flag) => {\n var perms = [\"r\", \"w\", \"rw\"][flag & 3];\n if (flag & 512) {\n perms += \"w\";\n }\n return perms;\n }, nodePermissions: (node, perms) => {\n if (FS.ignorePermissions) {\n return 0;\n }\n if (perms.includes(\"r\") && !(node.mode & 292)) {\n return 2;\n } else if (perms.includes(\"w\") && !(node.mode & 146)) {\n return 2;\n } else if (perms.includes(\"x\") && !(node.mode & 73)) {\n return 2;\n }\n return 0;\n }, mayLookup: (dir) => {\n var errCode = FS.nodePermissions(dir, \"x\");\n if (errCode)\n return errCode;\n if (!dir.node_ops.lookup)\n return 2;\n return 0;\n }, mayCreate: (dir, name) => {\n try {\n var node = FS.lookupNode(dir, name);\n return 20;\n } catch (e) {\n }\n return FS.nodePermissions(dir, \"wx\");\n }, mayDelete: (dir, name, isdir) => {\n var node;\n try {\n node = FS.lookupNode(dir, name);\n } catch (e) {\n return e.errno;\n }\n var errCode = FS.nodePermissions(dir, \"wx\");\n if (errCode) {\n return errCode;\n }\n if (isdir) {\n if (!FS.isDir(node.mode)) {\n return 54;\n }\n if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {\n return 10;\n }\n } else {\n if (FS.isDir(node.mode)) {\n return 31;\n }\n }\n return 0;\n }, mayOpen: (node, flags) => {\n if (!node) {\n return 44;\n }\n if (FS.isLink(node.mode)) {\n return 32;\n } else if (FS.isDir(node.mode)) {\n if (FS.flagsToPermissionString(flags) !== \"r\" || flags & 512) {\n return 31;\n }\n }\n return FS.nodePermissions(node, FS.flagsToPermissionString(flags));\n }, MAX_OPEN_FDS: 4096, nextfd: () => {\n for (var fd = 0; fd <= FS.MAX_OPEN_FDS; fd++) {\n if (!FS.streams[fd]) {\n return fd;\n }\n }\n throw new FS.ErrnoError(33);\n }, getStreamChecked: (fd) => {\n var stream = FS.getStream(fd);\n if (!stream) {\n throw new FS.ErrnoError(8);\n }\n return stream;\n }, getStream: (fd) => FS.streams[fd], createStream: (stream, fd = -1) => {\n if (!FS.FSStream) {\n FS.FSStream = function() {\n this.shared = {};\n };\n FS.FSStream.prototype = {};\n Object.defineProperties(FS.FSStream.prototype, { object: { get() {\n return this.node;\n }, set(val) {\n this.node = val;\n } }, isRead: { get() {\n return (this.flags & 2097155) !== 1;\n } }, isWrite: { get() {\n return (this.flags & 2097155) !== 0;\n } }, isAppend: { get() {\n return this.flags & 1024;\n } }, flags: { get() {\n return this.shared.flags;\n }, set(val) {\n this.shared.flags = val;\n } }, position: { get() {\n return this.shared.position;\n }, set(val) {\n this.shared.position = val;\n } } });\n }\n stream = Object.assign(new FS.FSStream(), stream);\n if (fd == -1) {\n fd = FS.nextfd();\n }\n stream.fd = fd;\n FS.streams[fd] = stream;\n return stream;\n }, closeStream: (fd) => {\n FS.streams[fd] = null;\n }, chrdev_stream_ops: { open: (stream) => {\n var device = FS.getDevice(stream.node.rdev);\n stream.stream_ops = device.stream_ops;\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n }, llseek: () => {\n throw new FS.ErrnoError(70);\n } }, major: (dev) => dev >> 8, minor: (dev) => dev & 255, makedev: (ma, mi) => ma << 8 | mi, registerDevice: (dev, ops) => {\n FS.devices[dev] = { stream_ops: ops };\n }, getDevice: (dev) => FS.devices[dev], getMounts: (mount) => {\n var mounts = [];\n var check = [mount];\n while (check.length) {\n var m = check.pop();\n mounts.push(m);\n check.push.apply(check, m.mounts);\n }\n return mounts;\n }, syncfs: (populate, callback) => {\n if (typeof populate == \"function\") {\n callback = populate;\n populate = false;\n }\n FS.syncFSRequests++;\n if (FS.syncFSRequests > 1) {\n err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);\n }\n var mounts = FS.getMounts(FS.root.mount);\n var completed = 0;\n function doCallback(errCode) {\n FS.syncFSRequests--;\n return callback(errCode);\n }\n function done(errCode) {\n if (errCode) {\n if (!done.errored) {\n done.errored = true;\n return doCallback(errCode);\n }\n return;\n }\n if (++completed >= mounts.length) {\n doCallback(null);\n }\n }\n mounts.forEach((mount) => {\n if (!mount.type.syncfs) {\n return done(null);\n }\n mount.type.syncfs(mount, populate, done);\n });\n }, mount: (type, opts, mountpoint) => {\n var root = mountpoint === \"/\";\n var pseudo = !mountpoint;\n var node;\n if (root && FS.root) {\n throw new FS.ErrnoError(10);\n } else if (!root && !pseudo) {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n mountpoint = lookup.path;\n node = lookup.node;\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n if (!FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n }\n var mount = { type, opts, mountpoint, mounts: [] };\n var mountRoot = type.mount(mount);\n mountRoot.mount = mount;\n mount.root = mountRoot;\n if (root) {\n FS.root = mountRoot;\n } else if (node) {\n node.mounted = mount;\n if (node.mount) {\n node.mount.mounts.push(mount);\n }\n }\n return mountRoot;\n }, unmount: (mountpoint) => {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n if (!FS.isMountpoint(lookup.node)) {\n throw new FS.ErrnoError(28);\n }\n var node = lookup.node;\n var mount = node.mounted;\n var mounts = FS.getMounts(mount);\n Object.keys(FS.nameTable).forEach((hash) => {\n var current = FS.nameTable[hash];\n while (current) {\n var next = current.name_next;\n if (mounts.includes(current.mount)) {\n FS.destroyNode(current);\n }\n current = next;\n }\n });\n node.mounted = null;\n var idx = node.mount.mounts.indexOf(mount);\n node.mount.mounts.splice(idx, 1);\n }, lookup: (parent, name) => parent.node_ops.lookup(parent, name), mknod: (path, mode, dev) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n if (!name || name === \".\" || name === \"..\") {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.mayCreate(parent, name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.mknod) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.mknod(parent, name, mode, dev);\n }, create: (path, mode) => {\n mode = mode !== void 0 ? mode : 438;\n mode &= 4095;\n mode |= 32768;\n return FS.mknod(path, mode, 0);\n }, mkdir: (path, mode) => {\n mode = mode !== void 0 ? mode : 511;\n mode &= 511 | 512;\n mode |= 16384;\n return FS.mknod(path, mode, 0);\n }, mkdirTree: (path, mode) => {\n var dirs = path.split(\"/\");\n var d = \"\";\n for (var i = 0; i < dirs.length; ++i) {\n if (!dirs[i])\n continue;\n d += \"/\" + dirs[i];\n try {\n FS.mkdir(d, mode);\n } catch (e) {\n if (e.errno != 20)\n throw e;\n }\n }\n }, mkdev: (path, mode, dev) => {\n if (typeof dev == \"undefined\") {\n dev = mode;\n mode = 438;\n }\n mode |= 8192;\n return FS.mknod(path, mode, dev);\n }, symlink: (oldpath, newpath) => {\n if (!PATH_FS.resolve(oldpath)) {\n throw new FS.ErrnoError(44);\n }\n var lookup = FS.lookupPath(newpath, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var newname = PATH.basename(newpath);\n var errCode = FS.mayCreate(parent, newname);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.symlink) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.symlink(parent, newname, oldpath);\n }, rename: (old_path, new_path) => {\n var old_dirname = PATH.dirname(old_path);\n var new_dirname = PATH.dirname(new_path);\n var old_name = PATH.basename(old_path);\n var new_name = PATH.basename(new_path);\n var lookup, old_dir, new_dir;\n lookup = FS.lookupPath(old_path, { parent: true });\n old_dir = lookup.node;\n lookup = FS.lookupPath(new_path, { parent: true });\n new_dir = lookup.node;\n if (!old_dir || !new_dir)\n throw new FS.ErrnoError(44);\n if (old_dir.mount !== new_dir.mount) {\n throw new FS.ErrnoError(75);\n }\n var old_node = FS.lookupNode(old_dir, old_name);\n var relative = PATH_FS.relative(old_path, new_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(28);\n }\n relative = PATH_FS.relative(new_path, old_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(55);\n }\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (old_node === new_node) {\n return;\n }\n var isdir = FS.isDir(old_node.mode);\n var errCode = FS.mayDelete(old_dir, old_name, isdir);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!old_dir.node_ops.rename) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {\n throw new FS.ErrnoError(10);\n }\n if (new_dir !== old_dir) {\n errCode = FS.nodePermissions(old_dir, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n FS.hashRemoveNode(old_node);\n try {\n old_dir.node_ops.rename(old_node, new_dir, new_name);\n } catch (e) {\n throw e;\n } finally {\n FS.hashAddNode(old_node);\n }\n }, rmdir: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, true);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.rmdir) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.rmdir(parent, name);\n FS.destroyNode(node);\n }, readdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n if (!node.node_ops.readdir) {\n throw new FS.ErrnoError(54);\n }\n return node.node_ops.readdir(node);\n }, unlink: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, false);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.unlink) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.unlink(parent, name);\n FS.destroyNode(node);\n }, readlink: (path) => {\n var lookup = FS.lookupPath(path);\n var link = lookup.node;\n if (!link) {\n throw new FS.ErrnoError(44);\n }\n if (!link.node_ops.readlink) {\n throw new FS.ErrnoError(28);\n }\n return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));\n }, stat: (path, dontFollow) => {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n var node = lookup.node;\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (!node.node_ops.getattr) {\n throw new FS.ErrnoError(63);\n }\n return node.node_ops.getattr(node);\n }, lstat: (path) => FS.stat(path, true), chmod: (path, mode, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { mode: mode & 4095 | node.mode & ~4095, timestamp: Date.now() });\n }, lchmod: (path, mode) => {\n FS.chmod(path, mode, true);\n }, fchmod: (fd, mode) => {\n var stream = FS.getStreamChecked(fd);\n FS.chmod(stream.node, mode);\n }, chown: (path, uid, gid, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { timestamp: Date.now() });\n }, lchown: (path, uid, gid) => {\n FS.chown(path, uid, gid, true);\n }, fchown: (fd, uid, gid) => {\n var stream = FS.getStreamChecked(fd);\n FS.chown(stream.node, uid, gid);\n }, truncate: (path, len) => {\n if (len < 0) {\n throw new FS.ErrnoError(28);\n }\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: true });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isDir(node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!FS.isFile(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.nodePermissions(node, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n node.node_ops.setattr(node, { size: len, timestamp: Date.now() });\n }, ftruncate: (fd, len) => {\n var stream = FS.getStreamChecked(fd);\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(28);\n }\n FS.truncate(stream.node, len);\n }, utime: (path, atime, mtime) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) });\n }, open: (path, flags, mode) => {\n if (path === \"\") {\n throw new FS.ErrnoError(44);\n }\n flags = typeof flags == \"string\" ? FS_modeStringToFlags(flags) : flags;\n mode = typeof mode == \"undefined\" ? 438 : mode;\n if (flags & 64) {\n mode = mode & 4095 | 32768;\n } else {\n mode = 0;\n }\n var node;\n if (typeof path == \"object\") {\n node = path;\n } else {\n path = PATH.normalize(path);\n try {\n var lookup = FS.lookupPath(path, { follow: !(flags & 131072) });\n node = lookup.node;\n } catch (e) {\n }\n }\n var created = false;\n if (flags & 64) {\n if (node) {\n if (flags & 128) {\n throw new FS.ErrnoError(20);\n }\n } else {\n node = FS.mknod(path, mode, 0);\n created = true;\n }\n }\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (FS.isChrdev(node.mode)) {\n flags &= ~512;\n }\n if (flags & 65536 && !FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n if (!created) {\n var errCode = FS.mayOpen(node, flags);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n if (flags & 512 && !created) {\n FS.truncate(node, 0);\n }\n flags &= ~(128 | 512 | 131072);\n var stream = FS.createStream({ node, path: FS.getPath(node), flags, seekable: true, position: 0, stream_ops: node.stream_ops, ungotten: [], error: false });\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n if (Module[\"logReadFiles\"] && !(flags & 1)) {\n if (!FS.readFiles)\n FS.readFiles = {};\n if (!(path in FS.readFiles)) {\n FS.readFiles[path] = 1;\n }\n }\n return stream;\n }, close: (stream) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (stream.getdents)\n stream.getdents = null;\n try {\n if (stream.stream_ops.close) {\n stream.stream_ops.close(stream);\n }\n } catch (e) {\n throw e;\n } finally {\n FS.closeStream(stream.fd);\n }\n stream.fd = null;\n }, isClosed: (stream) => stream.fd === null, llseek: (stream, offset, whence) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (!stream.seekable || !stream.stream_ops.llseek) {\n throw new FS.ErrnoError(70);\n }\n if (whence != 0 && whence != 1 && whence != 2) {\n throw new FS.ErrnoError(28);\n }\n stream.position = stream.stream_ops.llseek(stream, offset, whence);\n stream.ungotten = [];\n return stream.position;\n }, read: (stream, buffer, offset, length, position) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.read) {\n throw new FS.ErrnoError(28);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);\n if (!seeking)\n stream.position += bytesRead;\n return bytesRead;\n }, write: (stream, buffer, offset, length, position, canOwn) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.write) {\n throw new FS.ErrnoError(28);\n }\n if (stream.seekable && stream.flags & 1024) {\n FS.llseek(stream, 0, 2);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);\n if (!seeking)\n stream.position += bytesWritten;\n return bytesWritten;\n }, allocate: (stream, offset, length) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (offset < 0 || length <= 0) {\n throw new FS.ErrnoError(28);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (!stream.stream_ops.allocate) {\n throw new FS.ErrnoError(138);\n }\n stream.stream_ops.allocate(stream, offset, length);\n }, mmap: (stream, length, position, prot, flags) => {\n if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {\n throw new FS.ErrnoError(2);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(2);\n }\n if (!stream.stream_ops.mmap) {\n throw new FS.ErrnoError(43);\n }\n return stream.stream_ops.mmap(stream, length, position, prot, flags);\n }, msync: (stream, buffer, offset, length, mmapFlags) => {\n if (!stream.stream_ops.msync) {\n return 0;\n }\n return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);\n }, munmap: (stream) => 0, ioctl: (stream, cmd, arg) => {\n if (!stream.stream_ops.ioctl) {\n throw new FS.ErrnoError(59);\n }\n return stream.stream_ops.ioctl(stream, cmd, arg);\n }, readFile: (path, opts = {}) => {\n opts.flags = opts.flags || 0;\n opts.encoding = opts.encoding || \"binary\";\n if (opts.encoding !== \"utf8\" && opts.encoding !== \"binary\") {\n throw new Error(`Invalid encoding type \"${opts.encoding}\"`);\n }\n var ret;\n var stream = FS.open(path, opts.flags);\n var stat = FS.stat(path);\n var length = stat.size;\n var buf = new Uint8Array(length);\n FS.read(stream, buf, 0, length, 0);\n if (opts.encoding === \"utf8\") {\n ret = UTF8ArrayToString(buf, 0);\n } else if (opts.encoding === \"binary\") {\n ret = buf;\n }\n FS.close(stream);\n return ret;\n }, writeFile: (path, data, opts = {}) => {\n opts.flags = opts.flags || 577;\n var stream = FS.open(path, opts.flags, opts.mode);\n if (typeof data == \"string\") {\n var buf = new Uint8Array(lengthBytesUTF8(data) + 1);\n var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);\n FS.write(stream, buf, 0, actualNumBytes, void 0, opts.canOwn);\n } else if (ArrayBuffer.isView(data)) {\n FS.write(stream, data, 0, data.byteLength, void 0, opts.canOwn);\n } else {\n throw new Error(\"Unsupported data type\");\n }\n FS.close(stream);\n }, cwd: () => FS.currentPath, chdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n if (lookup.node === null) {\n throw new FS.ErrnoError(44);\n }\n if (!FS.isDir(lookup.node.mode)) {\n throw new FS.ErrnoError(54);\n }\n var errCode = FS.nodePermissions(lookup.node, \"x\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n FS.currentPath = lookup.path;\n }, createDefaultDirectories: () => {\n FS.mkdir(\"/tmp\");\n FS.mkdir(\"/home\");\n FS.mkdir(\"/home/web_user\");\n }, createDefaultDevices: () => {\n FS.mkdir(\"/dev\");\n FS.registerDevice(FS.makedev(1, 3), { read: () => 0, write: (stream, buffer, offset, length, pos) => length });\n FS.mkdev(\"/dev/null\", FS.makedev(1, 3));\n TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);\n TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);\n FS.mkdev(\"/dev/tty\", FS.makedev(5, 0));\n FS.mkdev(\"/dev/tty1\", FS.makedev(6, 0));\n var randomBuffer = new Uint8Array(1024), randomLeft = 0;\n var randomByte = () => {\n if (randomLeft === 0) {\n randomLeft = randomFill(randomBuffer).byteLength;\n }\n return randomBuffer[--randomLeft];\n };\n FS.createDevice(\"/dev\", \"random\", randomByte);\n FS.createDevice(\"/dev\", \"urandom\", randomByte);\n FS.mkdir(\"/dev/shm\");\n FS.mkdir(\"/dev/shm/tmp\");\n }, createSpecialDirectories: () => {\n FS.mkdir(\"/proc\");\n var proc_self = FS.mkdir(\"/proc/self\");\n FS.mkdir(\"/proc/self/fd\");\n FS.mount({ mount: () => {\n var node = FS.createNode(proc_self, \"fd\", 16384 | 511, 73);\n node.node_ops = { lookup: (parent, name) => {\n var fd = +name;\n var stream = FS.getStreamChecked(fd);\n var ret = { parent: null, mount: { mountpoint: \"fake\" }, node_ops: { readlink: () => stream.path } };\n ret.parent = ret;\n return ret;\n } };\n return node;\n } }, {}, \"/proc/self/fd\");\n }, createStandardStreams: () => {\n if (Module[\"stdin\"]) {\n FS.createDevice(\"/dev\", \"stdin\", Module[\"stdin\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdin\");\n }\n if (Module[\"stdout\"]) {\n FS.createDevice(\"/dev\", \"stdout\", null, Module[\"stdout\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdout\");\n }\n if (Module[\"stderr\"]) {\n FS.createDevice(\"/dev\", \"stderr\", null, Module[\"stderr\"]);\n } else {\n FS.symlink(\"/dev/tty1\", \"/dev/stderr\");\n }\n var stdin = FS.open(\"/dev/stdin\", 0);\n var stdout = FS.open(\"/dev/stdout\", 1);\n var stderr = FS.open(\"/dev/stderr\", 1);\n }, ensureErrnoError: () => {\n if (FS.ErrnoError)\n return;\n FS.ErrnoError = function ErrnoError(errno, node) {\n this.name = \"ErrnoError\";\n this.node = node;\n this.setErrno = function(errno2) {\n this.errno = errno2;\n };\n this.setErrno(errno);\n this.message = \"FS error\";\n };\n FS.ErrnoError.prototype = new Error();\n FS.ErrnoError.prototype.constructor = FS.ErrnoError;\n [44].forEach((code) => {\n FS.genericErrors[code] = new FS.ErrnoError(code);\n FS.genericErrors[code].stack = \"\";\n });\n }, staticInit: () => {\n FS.ensureErrnoError();\n FS.nameTable = new Array(4096);\n FS.mount(MEMFS, {}, \"/\");\n FS.createDefaultDirectories();\n FS.createDefaultDevices();\n FS.createSpecialDirectories();\n FS.filesystems = { \"MEMFS\": MEMFS };\n }, init: (input, output, error) => {\n FS.init.initialized = true;\n FS.ensureErrnoError();\n Module[\"stdin\"] = input || Module[\"stdin\"];\n Module[\"stdout\"] = output || Module[\"stdout\"];\n Module[\"stderr\"] = error || Module[\"stderr\"];\n FS.createStandardStreams();\n }, quit: () => {\n FS.init.initialized = false;\n for (var i = 0; i < FS.streams.length; i++) {\n var stream = FS.streams[i];\n if (!stream) {\n continue;\n }\n FS.close(stream);\n }\n }, findObject: (path, dontResolveLastLink) => {\n var ret = FS.analyzePath(path, dontResolveLastLink);\n if (!ret.exists) {\n return null;\n }\n return ret.object;\n }, analyzePath: (path, dontResolveLastLink) => {\n try {\n var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n path = lookup.path;\n } catch (e) {\n }\n var ret = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null };\n try {\n var lookup = FS.lookupPath(path, { parent: true });\n ret.parentExists = true;\n ret.parentPath = lookup.path;\n ret.parentObject = lookup.node;\n ret.name = PATH.basename(path);\n lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n ret.exists = true;\n ret.path = lookup.path;\n ret.object = lookup.node;\n ret.name = lookup.node.name;\n ret.isRoot = lookup.path === \"/\";\n } catch (e) {\n ret.error = e.errno;\n }\n return ret;\n }, createPath: (parent, path, canRead, canWrite) => {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n var parts = path.split(\"/\").reverse();\n while (parts.length) {\n var part = parts.pop();\n if (!part)\n continue;\n var current = PATH.join2(parent, part);\n try {\n FS.mkdir(current);\n } catch (e) {\n }\n parent = current;\n }\n return current;\n }, createFile: (parent, name, properties, canRead, canWrite) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(canRead, canWrite);\n return FS.create(path, mode);\n }, createDataFile: (parent, name, data, canRead, canWrite, canOwn) => {\n var path = name;\n if (parent) {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n path = name ? PATH.join2(parent, name) : parent;\n }\n var mode = FS_getMode(canRead, canWrite);\n var node = FS.create(path, mode);\n if (data) {\n if (typeof data == \"string\") {\n var arr = new Array(data.length);\n for (var i = 0, len = data.length; i < len; ++i)\n arr[i] = data.charCodeAt(i);\n data = arr;\n }\n FS.chmod(node, mode | 146);\n var stream = FS.open(node, 577);\n FS.write(stream, data, 0, data.length, 0, canOwn);\n FS.close(stream);\n FS.chmod(node, mode);\n }\n return node;\n }, createDevice: (parent, name, input, output) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(!!input, !!output);\n if (!FS.createDevice.major)\n FS.createDevice.major = 64;\n var dev = FS.makedev(FS.createDevice.major++, 0);\n FS.registerDevice(dev, { open: (stream) => {\n stream.seekable = false;\n }, close: (stream) => {\n if (output && output.buffer && output.buffer.length) {\n output(10);\n }\n }, read: (stream, buffer, offset, length, pos) => {\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = input();\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: (stream, buffer, offset, length, pos) => {\n for (var i = 0; i < length; i++) {\n try {\n output(buffer[offset + i]);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } });\n return FS.mkdev(path, mode, dev);\n }, forceLoadFile: (obj) => {\n if (obj.isDevice || obj.isFolder || obj.link || obj.contents)\n return true;\n if (typeof XMLHttpRequest != \"undefined\") {\n throw new Error(\"Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.\");\n } else if (read_) {\n try {\n obj.contents = intArrayFromString(read_(obj.url), true);\n obj.usedBytes = obj.contents.length;\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n } else {\n throw new Error(\"Cannot load without read() or XMLHttpRequest.\");\n }\n }, createLazyFile: (parent, name, url, canRead, canWrite) => {\n function LazyUint8Array() {\n this.lengthKnown = false;\n this.chunks = [];\n }\n LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {\n if (idx > this.length - 1 || idx < 0) {\n return void 0;\n }\n var chunkOffset = idx % this.chunkSize;\n var chunkNum = idx / this.chunkSize | 0;\n return this.getter(chunkNum)[chunkOffset];\n };\n LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {\n this.getter = getter;\n };\n LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {\n var xhr = new XMLHttpRequest();\n xhr.open(\"HEAD\", url, false);\n xhr.send(null);\n if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr.status);\n var datalength = Number(xhr.getResponseHeader(\"Content-length\"));\n var header;\n var hasByteServing = (header = xhr.getResponseHeader(\"Accept-Ranges\")) && header === \"bytes\";\n var usesGzip = (header = xhr.getResponseHeader(\"Content-Encoding\")) && header === \"gzip\";\n var chunkSize = 1024 * 1024;\n if (!hasByteServing)\n chunkSize = datalength;\n var doXHR = (from, to) => {\n if (from > to)\n throw new Error(\"invalid range (\" + from + \", \" + to + \") or no bytes requested!\");\n if (to > datalength - 1)\n throw new Error(\"only \" + datalength + \" bytes available! programmer error!\");\n var xhr2 = new XMLHttpRequest();\n xhr2.open(\"GET\", url, false);\n if (datalength !== chunkSize)\n xhr2.setRequestHeader(\"Range\", \"bytes=\" + from + \"-\" + to);\n xhr2.responseType = \"arraybuffer\";\n if (xhr2.overrideMimeType) {\n xhr2.overrideMimeType(\"text/plain; charset=x-user-defined\");\n }\n xhr2.send(null);\n if (!(xhr2.status >= 200 && xhr2.status < 300 || xhr2.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr2.status);\n if (xhr2.response !== void 0) {\n return new Uint8Array(xhr2.response || []);\n }\n return intArrayFromString(xhr2.responseText || \"\", true);\n };\n var lazyArray2 = this;\n lazyArray2.setDataGetter((chunkNum) => {\n var start = chunkNum * chunkSize;\n var end = (chunkNum + 1) * chunkSize - 1;\n end = Math.min(end, datalength - 1);\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\") {\n lazyArray2.chunks[chunkNum] = doXHR(start, end);\n }\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\")\n throw new Error(\"doXHR failed!\");\n return lazyArray2.chunks[chunkNum];\n });\n if (usesGzip || !datalength) {\n chunkSize = datalength = 1;\n datalength = this.getter(0).length;\n chunkSize = datalength;\n out(\"LazyFiles on gzip forces download of the whole file when length is accessed\");\n }\n this._length = datalength;\n this._chunkSize = chunkSize;\n this.lengthKnown = true;\n };\n if (typeof XMLHttpRequest != \"undefined\") {\n if (!ENVIRONMENT_IS_WORKER)\n throw \"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";\n var lazyArray = new LazyUint8Array();\n Object.defineProperties(lazyArray, { length: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._length;\n } }, chunkSize: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._chunkSize;\n } } });\n var properties = { isDevice: false, contents: lazyArray };\n } else {\n var properties = { isDevice: false, url };\n }\n var node = FS.createFile(parent, name, properties, canRead, canWrite);\n if (properties.contents) {\n node.contents = properties.contents;\n } else if (properties.url) {\n node.contents = null;\n node.url = properties.url;\n }\n Object.defineProperties(node, { usedBytes: { get: function() {\n return this.contents.length;\n } } });\n var stream_ops = {};\n var keys = Object.keys(node.stream_ops);\n keys.forEach((key) => {\n var fn = node.stream_ops[key];\n stream_ops[key] = function forceLoadLazyFile() {\n FS.forceLoadFile(node);\n return fn.apply(null, arguments);\n };\n });\n function writeChunks(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= contents.length)\n return 0;\n var size = Math.min(contents.length - position, length);\n if (contents.slice) {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents[position + i];\n }\n } else {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents.get(position + i);\n }\n }\n return size;\n }\n stream_ops.read = (stream, buffer, offset, length, position) => {\n FS.forceLoadFile(node);\n return writeChunks(stream, buffer, offset, length, position);\n };\n stream_ops.mmap = (stream, length, position, prot, flags) => {\n FS.forceLoadFile(node);\n var ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n writeChunks(stream, GROWABLE_HEAP_I8(), ptr, length, position);\n return { ptr, allocated: true };\n };\n node.stream_ops = stream_ops;\n return node;\n } };\n var UTF8ToString = (ptr, maxBytesToRead) => {\n ptr >>>= 0;\n return ptr ? UTF8ArrayToString(GROWABLE_HEAP_U8(), ptr, maxBytesToRead) : \"\";\n };\n var SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt: function(dirfd, path, allowEmpty) {\n if (PATH.isAbs(path)) {\n return path;\n }\n var dir;\n if (dirfd === -100) {\n dir = FS.cwd();\n } else {\n var dirstream = SYSCALLS.getStreamFromFD(dirfd);\n dir = dirstream.path;\n }\n if (path.length == 0) {\n if (!allowEmpty) {\n throw new FS.ErrnoError(44);\n }\n return dir;\n }\n return PATH.join2(dir, path);\n }, doStat: function(func, path, buf) {\n try {\n var stat = func(path);\n } catch (e) {\n if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {\n return -54;\n }\n throw e;\n }\n GROWABLE_HEAP_I32()[buf >>> 2] = stat.dev;\n GROWABLE_HEAP_I32()[buf + 4 >>> 2] = stat.mode;\n GROWABLE_HEAP_U32()[buf + 8 >>> 2] = stat.nlink;\n GROWABLE_HEAP_I32()[buf + 12 >>> 2] = stat.uid;\n GROWABLE_HEAP_I32()[buf + 16 >>> 2] = stat.gid;\n GROWABLE_HEAP_I32()[buf + 20 >>> 2] = stat.rdev;\n tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 24 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 28 >>> 2] = tempI64[1];\n GROWABLE_HEAP_I32()[buf + 32 >>> 2] = 4096;\n GROWABLE_HEAP_I32()[buf + 36 >>> 2] = stat.blocks;\n var atime = stat.atime.getTime();\n var mtime = stat.mtime.getTime();\n var ctime = stat.ctime.getTime();\n tempI64 = [Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 40 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 44 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 48 >>> 2] = atime % 1e3 * 1e3;\n tempI64 = [Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 56 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 60 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 64 >>> 2] = mtime % 1e3 * 1e3;\n tempI64 = [Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 72 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 76 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 80 >>> 2] = ctime % 1e3 * 1e3;\n tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 88 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 92 >>> 2] = tempI64[1];\n return 0;\n }, doMsync: function(addr, stream, len, flags, offset) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (flags & 2) {\n return 0;\n }\n var buffer = GROWABLE_HEAP_U8().slice(addr, addr + len);\n FS.msync(stream, buffer, offset, len, flags);\n }, varargs: void 0, get() {\n SYSCALLS.varargs += 4;\n var ret = GROWABLE_HEAP_I32()[SYSCALLS.varargs - 4 >>> 2];\n return ret;\n }, getStr(ptr) {\n var ret = UTF8ToString(ptr);\n return ret;\n }, getStreamFromFD: function(fd) {\n var stream = FS.getStreamChecked(fd);\n return stream;\n } };\n function _proc_exit(code) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(1, 1, code);\n EXITSTATUS = code;\n if (!keepRuntimeAlive()) {\n PThread.terminateAllThreads();\n if (Module[\"onExit\"])\n Module[\"onExit\"](code);\n ABORT = true;\n }\n quit_(code, new ExitStatus(code));\n }\n var exitJS = (status, implicit) => {\n EXITSTATUS = status;\n if (ENVIRONMENT_IS_PTHREAD) {\n exitOnMainThread(status);\n throw \"unwind\";\n }\n _proc_exit(status);\n };\n var _exit = exitJS;\n var handleException = (e) => {\n if (e instanceof ExitStatus || e == \"unwind\") {\n return EXITSTATUS;\n }\n quit_(1, e);\n };\n var PThread = { unusedWorkers: [], runningWorkers: [], tlsInitFunctions: [], pthreads: {}, init: function() {\n if (ENVIRONMENT_IS_PTHREAD) {\n PThread.initWorker();\n } else {\n PThread.initMainThread();\n }\n }, initMainThread: function() {\n var pthreadPoolSize = navigator.hardwareConcurrency;\n while (pthreadPoolSize--) {\n PThread.allocateUnusedWorker();\n }\n addOnPreRun(() => {\n addRunDependency(\"loading-workers\");\n PThread.loadWasmModuleToAllWorkers(() => removeRunDependency(\"loading-workers\"));\n });\n }, initWorker: function() {\n noExitRuntime = false;\n }, setExitStatus: function(status) {\n EXITSTATUS = status;\n }, terminateAllThreads__deps: [\"$terminateWorker\"], terminateAllThreads: function() {\n for (var worker of PThread.runningWorkers) {\n terminateWorker(worker);\n }\n for (var worker of PThread.unusedWorkers) {\n terminateWorker(worker);\n }\n PThread.unusedWorkers = [];\n PThread.runningWorkers = [];\n PThread.pthreads = [];\n }, returnWorkerToPool: function(worker) {\n var pthread_ptr = worker.pthread_ptr;\n delete PThread.pthreads[pthread_ptr];\n PThread.unusedWorkers.push(worker);\n PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1);\n worker.pthread_ptr = 0;\n __emscripten_thread_free_data(pthread_ptr);\n }, receiveObjectTransfer: function(data) {\n }, threadInitTLS: function() {\n PThread.tlsInitFunctions.forEach((f) => f());\n }, loadWasmModuleToWorker: (worker) => new Promise((onFinishedLoading) => {\n worker.onmessage = (e) => {\n var d = e[\"data\"];\n var cmd = d[\"cmd\"];\n if (d[\"targetThread\"] && d[\"targetThread\"] != _pthread_self()) {\n var targetWorker = PThread.pthreads[d.targetThread];\n if (targetWorker) {\n targetWorker.postMessage(d, d[\"transferList\"]);\n } else {\n err('Internal error! Worker sent a message \"' + cmd + '\" to target pthread ' + d[\"targetThread\"] + \", but that thread no longer exists!\");\n }\n return;\n }\n if (cmd === \"checkMailbox\") {\n checkMailbox();\n } else if (cmd === \"spawnThread\") {\n spawnThread(d);\n } else if (cmd === \"cleanupThread\") {\n cleanupThread(d[\"thread\"]);\n } else if (cmd === \"killThread\") {\n killThread(d[\"thread\"]);\n } else if (cmd === \"cancelThread\") {\n cancelThread(d[\"thread\"]);\n } else if (cmd === \"loaded\") {\n worker.loaded = true;\n onFinishedLoading(worker);\n } else if (cmd === \"alert\") {\n alert(\"Thread \" + d[\"threadId\"] + \": \" + d[\"text\"]);\n } else if (d.target === \"setimmediate\") {\n worker.postMessage(d);\n } else if (cmd === \"callHandler\") {\n Module[d[\"handler\"]](...d[\"args\"]);\n } else if (cmd) {\n err(\"worker sent an unknown command \" + cmd);\n }\n };\n worker.onerror = (e) => {\n var message = \"worker sent an error!\";\n err(message + \" \" + e.filename + \":\" + e.lineno + \": \" + e.message);\n throw e;\n };\n var handlers = [];\n var knownHandlers = [\"onExit\", \"onAbort\", \"print\", \"printErr\"];\n for (var handler of knownHandlers) {\n if (Module.hasOwnProperty(handler)) {\n handlers.push(handler);\n }\n }\n worker.postMessage({ \"cmd\": \"load\", \"handlers\": handlers, \"urlOrBlob\": Module[\"mainScriptUrlOrBlob\"] || _scriptDir, \"wasmMemory\": wasmMemory, \"wasmModule\": wasmModule });\n }), loadWasmModuleToAllWorkers: function(onMaybeReady) {\n if (ENVIRONMENT_IS_PTHREAD) {\n return onMaybeReady();\n }\n let pthreadPoolReady = Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));\n pthreadPoolReady.then(onMaybeReady);\n }, allocateUnusedWorker: function() {\n var worker;\n var pthreadMainJs = locateFile(\"web-ifc-mt.worker.js\");\n worker = new Worker(pthreadMainJs);\n PThread.unusedWorkers.push(worker);\n }, getNewWorker: function() {\n if (PThread.unusedWorkers.length == 0) {\n PThread.allocateUnusedWorker();\n PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0]);\n }\n return PThread.unusedWorkers.pop();\n } };\n Module[\"PThread\"] = PThread;\n var callRuntimeCallbacks = (callbacks) => {\n while (callbacks.length > 0) {\n callbacks.shift()(Module);\n }\n };\n function establishStackSpace() {\n var pthread_ptr = _pthread_self();\n var stackHigh = GROWABLE_HEAP_I32()[pthread_ptr + 52 >>> 2];\n var stackSize = GROWABLE_HEAP_I32()[pthread_ptr + 56 >>> 2];\n var stackLow = stackHigh - stackSize;\n _emscripten_stack_set_limits(stackHigh, stackLow);\n stackRestore(stackHigh);\n }\n Module[\"establishStackSpace\"] = establishStackSpace;\n function exitOnMainThread(returnCode) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(2, 0, returnCode);\n _exit(returnCode);\n }\n var wasmTableMirror = [];\n var getWasmTableEntry = (funcPtr) => {\n var func = wasmTableMirror[funcPtr];\n if (!func) {\n if (funcPtr >= wasmTableMirror.length)\n wasmTableMirror.length = funcPtr + 1;\n wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);\n }\n return func;\n };\n function invokeEntryPoint(ptr, arg) {\n var result = getWasmTableEntry(ptr)(arg);\n function finish(result2) {\n if (keepRuntimeAlive()) {\n PThread.setExitStatus(result2);\n } else {\n __emscripten_thread_exit(result2);\n }\n }\n finish(result);\n }\n Module[\"invokeEntryPoint\"] = invokeEntryPoint;\n function registerTLSInit(tlsInitFunc) {\n PThread.tlsInitFunctions.push(tlsInitFunc);\n }\n function ExceptionInfo(excPtr) {\n this.excPtr = excPtr;\n this.ptr = excPtr - 24;\n this.set_type = function(type) {\n GROWABLE_HEAP_U32()[this.ptr + 4 >>> 2] = type;\n };\n this.get_type = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 4 >>> 2];\n };\n this.set_destructor = function(destructor) {\n GROWABLE_HEAP_U32()[this.ptr + 8 >>> 2] = destructor;\n };\n this.get_destructor = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 8 >>> 2];\n };\n this.set_caught = function(caught) {\n caught = caught ? 1 : 0;\n GROWABLE_HEAP_I8()[this.ptr + 12 >>> 0] = caught;\n };\n this.get_caught = function() {\n return GROWABLE_HEAP_I8()[this.ptr + 12 >>> 0] != 0;\n };\n this.set_rethrown = function(rethrown) {\n rethrown = rethrown ? 1 : 0;\n GROWABLE_HEAP_I8()[this.ptr + 13 >>> 0] = rethrown;\n };\n this.get_rethrown = function() {\n return GROWABLE_HEAP_I8()[this.ptr + 13 >>> 0] != 0;\n };\n this.init = function(type, destructor) {\n this.set_adjusted_ptr(0);\n this.set_type(type);\n this.set_destructor(destructor);\n };\n this.set_adjusted_ptr = function(adjustedPtr) {\n GROWABLE_HEAP_U32()[this.ptr + 16 >>> 2] = adjustedPtr;\n };\n this.get_adjusted_ptr = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 16 >>> 2];\n };\n this.get_exception_ptr = function() {\n var isPointer = ___cxa_is_pointer_type(this.get_type());\n if (isPointer) {\n return GROWABLE_HEAP_U32()[this.excPtr >>> 2];\n }\n var adjusted = this.get_adjusted_ptr();\n if (adjusted !== 0)\n return adjusted;\n return this.excPtr;\n };\n }\n var exceptionLast = 0;\n var uncaughtExceptionCount = 0;\n function convertI32PairToI53Checked(lo, hi) {\n return hi + 2097152 >>> 0 < 4194305 - !!lo ? (lo >>> 0) + hi * 4294967296 : NaN;\n }\n function ___cxa_throw(ptr, type, destructor) {\n ptr >>>= 0;\n type >>>= 0;\n destructor >>>= 0;\n var info = new ExceptionInfo(ptr);\n info.init(type, destructor);\n exceptionLast = ptr;\n uncaughtExceptionCount++;\n throw exceptionLast;\n }\n function ___emscripten_init_main_thread_js(tb) {\n tb >>>= 0;\n __emscripten_thread_init(tb, !ENVIRONMENT_IS_WORKER, 1, !ENVIRONMENT_IS_WEB, 5242880, false);\n PThread.threadInitTLS();\n }\n function ___emscripten_thread_cleanup(thread) {\n thread >>>= 0;\n if (!ENVIRONMENT_IS_PTHREAD)\n cleanupThread(thread);\n else\n postMessage({ \"cmd\": \"cleanupThread\", \"thread\": thread });\n }\n var tupleRegistrations = {};\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function simpleReadValueFromPointer(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_I32()[pointer >>> 2]);\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var InternalError = void 0;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function(type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters2) {\n var myTypeConverters = getTypeConverters(typeConverters2);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError(\"Mismatched type converter count\");\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach((dt, i) => {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n } else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(() => {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (unregisteredTypes.length === 0) {\n onComplete(typeConverters);\n }\n }\n function __embind_finalize_value_array(rawTupleType) {\n rawTupleType >>>= 0;\n var reg = tupleRegistrations[rawTupleType];\n delete tupleRegistrations[rawTupleType];\n var elements = reg.elements;\n var elementsLength = elements.length;\n var elementTypes = elements.map(function(elt) {\n return elt.getterReturnType;\n }).concat(elements.map(function(elt) {\n return elt.setterArgumentType;\n }));\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n whenDependentTypesAreResolved([rawTupleType], elementTypes, function(elementTypes2) {\n elements.forEach((elt, i) => {\n var getterReturnType = elementTypes2[i];\n var getter = elt.getter;\n var getterContext = elt.getterContext;\n var setterArgumentType = elementTypes2[i + elementsLength];\n var setter = elt.setter;\n var setterContext = elt.setterContext;\n elt.read = (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr));\n elt.write = (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = new Array(elementsLength);\n for (var i = 0; i < elementsLength; ++i) {\n rv[i] = elements[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n if (elementsLength !== o.length) {\n throw new TypeError(`Incorrect number of tuple elements for ${reg.name}: expected=${elementsLength}, actual=${o.length}`);\n }\n var ptr = rawConstructor();\n for (var i = 0; i < elementsLength; ++i) {\n elements[i].write(ptr, o[i]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n }\n var structRegistrations = {};\n var __embind_finalize_value_object = function(structType) {\n structType >>>= 0;\n var reg = structRegistrations[structType];\n delete structRegistrations[structType];\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n var fieldRecords = reg.fields;\n var fieldTypes = fieldRecords.map((field) => field.getterReturnType).concat(fieldRecords.map((field) => field.setterArgumentType));\n whenDependentTypesAreResolved([structType], fieldTypes, (fieldTypes2) => {\n var fields = {};\n fieldRecords.forEach((field, i) => {\n var fieldName = field.fieldName;\n var getterReturnType = fieldTypes2[i];\n var getter = field.getter;\n var getterContext = field.getterContext;\n var setterArgumentType = fieldTypes2[i + fieldRecords.length];\n var setter = field.setter;\n var setterContext = field.setterContext;\n fields[fieldName] = { read: (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr)), write: (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n } };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = {};\n for (var i in fields) {\n rv[i] = fields[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n for (var fieldName in fields) {\n if (!(fieldName in o)) {\n throw new TypeError(`Missing field: \"${fieldName}\"`);\n }\n }\n var ptr = rawConstructor();\n for (fieldName in fields) {\n fields[fieldName].write(ptr, o[fieldName]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n };\n function __embind_register_bigint(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError(`Unknown type size: ${size}`);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = void 0;\n function readLatin1String(ptr) {\n var ret = \"\";\n var c = ptr;\n while (GROWABLE_HEAP_U8()[c >>> 0]) {\n ret += embind_charCodes[GROWABLE_HEAP_U8()[c++ >>> 0]];\n }\n return ret;\n }\n var BindingError = void 0;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n function sharedRegisterType(rawType, registeredInstance, options = {}) {\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError(`type \"${name}\" must have a positive integer typeid pointer`);\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n } else {\n throwBindingError(`Cannot register type '${name}' twice`);\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach((cb) => cb());\n }\n }\n function registerType(rawType, registeredInstance, options = {}) {\n if (!(\"argPackAdvance\" in registeredInstance)) {\n throw new TypeError(\"registerType registeredInstance requires argPackAdvance\");\n }\n return sharedRegisterType(rawType, registeredInstance, options);\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(wt) {\n return !!wt;\n }, \"toWireType\": function(destructors, o) {\n return o ? trueValue : falseValue;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": function(pointer) {\n var heap;\n if (size === 1) {\n heap = GROWABLE_HEAP_I8();\n } else if (size === 2) {\n heap = GROWABLE_HEAP_I16();\n } else if (size === 4) {\n heap = GROWABLE_HEAP_I32();\n } else {\n throw new TypeError(\"Unknown boolean type size: \" + name);\n }\n return this[\"fromWireType\"](heap[pointer >>> shift]);\n }, destructorFunction: null });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return { count: o.count, deleteScheduled: o.deleteScheduled, preservePointerOnDelete: o.preservePointerOnDelete, ptr: o.ptr, ptrType: o.ptrType, smartPtr: o.smartPtr, smartPtrType: o.smartPtrType };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + \" instance already deleted\");\n }\n var finalizationRegistry = false;\n function detachFinalizer(handle) {\n }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n } else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = $$.count.value === 0;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (desiredClass.baseClass === void 0) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n var registeredPointers = {};\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj[\"delete\"]();\n }\n }\n var delayFunction = void 0;\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module[\"getInheritedInstanceCount\"] = getInheritedInstanceCount;\n Module[\"getLiveInheritedInstances\"] = getLiveInheritedInstances;\n Module[\"flushPendingDeletes\"] = flushPendingDeletes;\n Module[\"setDelayFunction\"] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === void 0) {\n throwBindingError(\"ptr should not be undefined\");\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError(\"makeClassHandle requires ptr and ptrType\");\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError(\"Both smartPtrType and smartPtr must be specified\");\n }\n record.count = { value: 1 };\n return attachFinalizer(Object.create(prototype, { $$: { value: record } }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (registeredInstance !== void 0) {\n if (registeredInstance.$$.count.value === 0) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance[\"clone\"]();\n } else {\n var rv = registeredInstance[\"clone\"]();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: rawPointer, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this, ptr });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n } else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp });\n }\n }\n var attachFinalizer = function(handle) {\n if (typeof FinalizationRegistry === \"undefined\") {\n attachFinalizer = (handle2) => handle2;\n return handle;\n }\n finalizationRegistry = new FinalizationRegistry((info) => {\n releaseClassHandle(info.$$);\n });\n attachFinalizer = (handle2) => {\n var $$ = handle2.$$;\n var hasSmartPtr = !!$$.smartPtr;\n if (hasSmartPtr) {\n var info = { $$ };\n finalizationRegistry.register(handle2, info, handle2);\n }\n return handle2;\n };\n detachFinalizer = (handle2) => finalizationRegistry.unregister(handle2);\n return attachFinalizer(handle);\n };\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n } else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), { $$: { value: shallowCopyInternalPointer(this.$$) } }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = void 0;\n this.$$.ptr = void 0;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype[\"isAliasOf\"] = ClassHandle_isAliasOf;\n ClassHandle.prototype[\"clone\"] = ClassHandle_clone;\n ClassHandle.prototype[\"delete\"] = ClassHandle_delete;\n ClassHandle.prototype[\"isDeleted\"] = ClassHandle_isDeleted;\n ClassHandle.prototype[\"deleteLater\"] = ClassHandle_deleteLater;\n }\n function ClassHandle() {\n }\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (name === void 0) {\n return \"_unknown\";\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, \"$\");\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return `_${name}`;\n }\n return name;\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return { [name]: function() {\n return body.apply(this, arguments);\n } }[name];\n }\n function ensureOverloadTable(proto, methodName, humanName) {\n if (proto[methodName].overloadTable === void 0) {\n var prevFunc = proto[methodName];\n proto[methodName] = function() {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (numArguments === void 0 || Module[name].overloadTable !== void 0 && Module[name].overloadTable[numArguments] !== void 0) {\n throwBindingError(`Cannot register public name '${name}' twice`);\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);\n }\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n if (numArguments !== void 0) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n } else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (handle.$$.smartPtr === void 0) {\n throwBindingError(\"Passing raw pointer to smart pointer is illegal\");\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n var clonedHandle = handle[\"clone\"]();\n ptr = this.rawShare(ptr, Emval.toHandle(function() {\n clonedHandle[\"delete\"]();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError(\"Unsupporting sharing policy\");\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle[\"delete\"]();\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype[\"argPackAdvance\"] = 8;\n RegisteredPointer.prototype[\"readValueFromPointer\"] = simpleReadValueFromPointer;\n RegisteredPointer.prototype[\"deleteObject\"] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype[\"fromWireType\"] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === void 0) {\n if (isConst) {\n this[\"toWireType\"] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n } else {\n this[\"toWireType\"] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n } else {\n this[\"toWireType\"] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError(\"Replacing nonexistant public symbol\");\n }\n if (Module[name].overloadTable !== void 0 && numArguments !== void 0) {\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n var dynCallLegacy = (sig, ptr, args) => {\n var f = Module[\"dynCall_\" + sig];\n return args && args.length ? f.apply(null, [ptr].concat(args)) : f.call(null, ptr);\n };\n var dynCall = (sig, ptr, args) => {\n if (sig.includes(\"j\")) {\n return dynCallLegacy(sig, ptr, args);\n }\n var rtn = getWasmTableEntry(ptr).apply(null, args);\n return rtn;\n };\n var getDynCaller = (sig, ptr) => {\n var argCache = [];\n return function() {\n argCache.length = 0;\n Object.assign(argCache, arguments);\n return dynCall(sig, ptr, argCache);\n };\n };\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller() {\n if (signature.includes(\"j\")) {\n return getDynCaller(signature, rawFunction);\n }\n return getWasmTableEntry(rawFunction);\n }\n var fp = makeDynCaller();\n if (typeof fp != \"function\") {\n throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);\n }\n return fp;\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function(message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== void 0) {\n this.stack = this.toString() + \"\\n\" + stack.replace(/^Error(:[^\\n]*)?\\n/, \"\");\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function() {\n if (this.message === void 0) {\n return this.name;\n } else {\n return `${this.name}: ${this.message}`;\n }\n };\n return errorClass;\n }\n var UnboundTypeError = void 0;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([\", \"]));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n rawPointerType >>>= 0;\n rawConstPointerType >>>= 0;\n baseClassRawType >>>= 0;\n getActualTypeSignature >>>= 0;\n getActualType >>>= 0;\n upcastSignature >>>= 0;\n upcast >>>= 0;\n downcastSignature >>>= 0;\n downcast >>>= 0;\n name >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function() {\n throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function(base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n } else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function() {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (registeredClass.constructor_body === void 0) {\n throw new BindingError(name + \" has no accessible constructor\");\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (body === void 0) {\n throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, { constructor: { value: constructor } });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n if (registeredClass.baseClass) {\n if (registeredClass.baseClass.__derivedClasses === void 0) {\n registeredClass.baseClass.__derivedClasses = [];\n }\n registeredClass.baseClass.__derivedClasses.push(registeredClass);\n }\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + \"*\", registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + \" const*\", registeredClass, false, true, false);\n registeredPointers[rawType] = { pointerType: pointerConverter, constPointerType: constPointerConverter };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(GROWABLE_HEAP_U32()[firstElement + i * 4 >>> 2]);\n }\n return array;\n }\n function newFunc(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`);\n }\n var dummy = createNamedFunction(constructor.name || \"unknownFunctionName\", function() {\n });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === void 0) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== \"void\";\n var argsList = \"\";\n var argsListWired = \"\";\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? \", \" : \"\") + \"arg\" + i;\n argsListWired += (i !== 0 ? \", \" : \"\") + \"arg\" + i + \"Wired\";\n }\n var invokerFnBody = `\n return function ${makeLegalFunctionName(humanName)}(${argsList}) {\n if (arguments.length !== ${argCount - 2}) {\n throwBindingError('function ${humanName} called with ${arguments.length} arguments, expected ${argCount - 2} args!');\n }`;\n if (needsDestructorStack) {\n invokerFnBody += \"var destructors = [];\\n\";\n }\n var dtorStack = needsDestructorStack ? \"destructors\" : \"null\";\n var args1 = [\"throwBindingError\", \"invoker\", \"fn\", \"runDestructors\", \"retType\", \"classParam\"];\n var args2 = [throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, argTypes[0], argTypes[1]];\n if (isClassMethodFunc) {\n invokerFnBody += \"var thisWired = classParam.toWireType(\" + dtorStack + \", this);\\n\";\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody += \"var arg\" + i + \"Wired = argType\" + i + \".toWireType(\" + dtorStack + \", arg\" + i + \"); // \" + argTypes[i + 2].name + \"\\n\";\n args1.push(\"argType\" + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = \"thisWired\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired;\n }\n invokerFnBody += (returns || isAsync ? \"var rv = \" : \"\") + \"invoker(fn\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired + \");\\n\";\n if (needsDestructorStack) {\n invokerFnBody += \"runDestructors(destructors);\\n\";\n } else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? \"thisWired\" : \"arg\" + (i - 2) + \"Wired\";\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + \"_dtor(\" + paramName + \"); // \" + argTypes[i].name + \"\\n\";\n args1.push(paramName + \"_dtor\");\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += \"var ret = retType.fromWireType(rv);\\nreturn ret;\\n\";\n } else {\n }\n invokerFnBody += \"}\\n\";\n args1.push(invokerFnBody);\n return newFunc(Function, args1).apply(null, args2);\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n rawClassType >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n invoker >>>= 0;\n rawConstructor >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `constructor ${classType.name}`;\n if (classType.registeredClass.constructor_body === void 0) {\n classType.registeredClass.constructor_body = [];\n }\n if (classType.registeredClass.constructor_body[argCount - 1] !== void 0) {\n throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount - 1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);\n }\n classType.registeredClass.constructor_body[argCount - 1] = () => {\n throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`, rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n argTypes.splice(1, 0, null);\n classType.registeredClass.constructor_body[argCount - 1] = craftInvokerFunction(humanName, argTypes, null, invoker, rawConstructor);\n return [];\n });\n return [];\n });\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual, isAsync) {\n rawClassType >>>= 0;\n methodName >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n rawInvoker >>>= 0;\n context >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `${classType.name}.${methodName}`;\n if (methodName.startsWith(\"@@\")) {\n methodName = Symbol[methodName.substring(2)];\n }\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (method === void 0 || method.overloadTable === void 0 && method.className !== classType.name && method.argCount === argCount - 2) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n } else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync);\n if (proto[methodName].overloadTable === void 0) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n } else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n function handleAllocatorInit() {\n Object.assign(HandleAllocator.prototype, { get(id) {\n return this.allocated[id];\n }, has(id) {\n return this.allocated[id] !== void 0;\n }, allocate(handle) {\n var id = this.freelist.pop() || this.allocated.length;\n this.allocated[id] = handle;\n return id;\n }, free(id) {\n this.allocated[id] = void 0;\n this.freelist.push(id);\n } });\n }\n function HandleAllocator() {\n this.allocated = [void 0];\n this.freelist = [];\n }\n var emval_handles = new HandleAllocator();\n function __emval_decref(handle) {\n handle >>>= 0;\n if (handle >= emval_handles.reserved && --emval_handles.get(handle).refcount === 0) {\n emval_handles.free(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {\n if (emval_handles.allocated[i] !== void 0) {\n ++count;\n }\n }\n return count;\n }\n function init_emval() {\n emval_handles.allocated.push({ value: void 0 }, { value: null }, { value: true }, { value: false });\n emval_handles.reserved = emval_handles.allocated.length;\n Module[\"count_emval_handles\"] = count_emval_handles;\n }\n var Emval = { toValue: (handle) => {\n if (!handle) {\n throwBindingError(\"Cannot use deleted val. handle = \" + handle);\n }\n return emval_handles.get(handle).value;\n }, toHandle: (value) => {\n switch (value) {\n case void 0:\n return 1;\n case null:\n return 2;\n case true:\n return 3;\n case false:\n return 4;\n default: {\n return emval_handles.allocate({ refcount: 1, value });\n }\n }\n } };\n function __embind_register_emval(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(handle) {\n var rv = Emval.toValue(handle);\n __emval_decref(handle);\n return rv;\n }, \"toWireType\": function(destructors, value) {\n return Emval.toHandle(value);\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: null });\n }\n function embindRepr(v) {\n if (v === null) {\n return \"null\";\n }\n var t = typeof v;\n if (t === \"object\" || t === \"array\" || t === \"function\") {\n return v.toString();\n } else {\n return \"\" + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_F32()[pointer >>> 2]);\n };\n case 3:\n return function(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_F64()[pointer >>> 3]);\n };\n default:\n throw new TypeError(\"Unknown float type: \" + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(value) {\n return value;\n }, \"toWireType\": function(destructors, value) {\n return value;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": floatReadValueFromPointer(name, shift), destructorFunction: null });\n }\n function __embind_register_function(name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) {\n name >>>= 0;\n rawArgTypesAddr >>>= 0;\n signature >>>= 0;\n rawInvoker >>>= 0;\n fn >>>= 0;\n var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n name = readLatin1String(name);\n rawInvoker = embind__requireFunction(signature, rawInvoker);\n exposePublicSymbol(name, function() {\n throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes);\n }, argCount - 1);\n whenDependentTypesAreResolved([], argTypes, function(argTypes2) {\n var invokerArgsArray = [argTypes2[0], null].concat(argTypes2.slice(1));\n replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null, rawInvoker, fn, isAsync), argCount - 1);\n return [];\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed ? function readS8FromPointer(pointer) {\n return GROWABLE_HEAP_I8()[pointer >>> 0];\n } : function readU8FromPointer(pointer) {\n return GROWABLE_HEAP_U8()[pointer >>> 0];\n };\n case 1:\n return signed ? function readS16FromPointer(pointer) {\n return GROWABLE_HEAP_I16()[pointer >>> 1];\n } : function readU16FromPointer(pointer) {\n return GROWABLE_HEAP_U16()[pointer >>> 1];\n };\n case 2:\n return signed ? function readS32FromPointer(pointer) {\n return GROWABLE_HEAP_I32()[pointer >>> 2];\n } : function readU32FromPointer(pointer) {\n return GROWABLE_HEAP_U32()[pointer >>> 2];\n };\n default:\n throw new TypeError(\"Unknown integer type: \" + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = (value) => value;\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = (value) => value << bitshift >>> bitshift;\n }\n var isUnsignedType = name.includes(\"unsigned\");\n var checkAssertions = (value, toTypeName) => {\n };\n var toWireType;\n if (isUnsignedType) {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value >>> 0;\n };\n } else {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value;\n };\n }\n registerType(primitiveType, { name, \"fromWireType\": fromWireType, \"toWireType\": toWireType, \"argPackAdvance\": 8, \"readValueFromPointer\": integerReadValueFromPointer(name, shift, minRange !== 0), destructorFunction: null });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n rawType >>>= 0;\n name >>>= 0;\n var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = GROWABLE_HEAP_U32();\n var size = heap[handle >>> 0];\n var data = heap[handle + 1 >>> 0];\n return new TA(heap.buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": decodeMemoryView, \"argPackAdvance\": 8, \"readValueFromPointer\": decodeMemoryView }, { ignoreDuplicateRegistrations: true });\n }\n var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, GROWABLE_HEAP_U8(), outPtr, maxBytesToWrite);\n function __embind_register_std_string(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === \"std::string\";\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = GROWABLE_HEAP_U32()[value >>> 2];\n var payload = value + 4;\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = payload;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = payload + i;\n if (i == length || GROWABLE_HEAP_U8()[currentBytePtr >>> 0] == 0) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n } else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(GROWABLE_HEAP_U8()[payload + i >>> 0]);\n }\n str = a.join(\"\");\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var length;\n var valueIsOfTypeString = typeof value == \"string\";\n if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {\n throwBindingError(\"Cannot pass non-string to std::string\");\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n length = lengthBytesUTF8(value);\n } else {\n length = value.length;\n }\n var base = _malloc(4 + length + 1);\n var ptr = base + 4;\n GROWABLE_HEAP_U32()[base >>> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr, length + 1);\n } else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError(\"String has UTF-16 code units that do not fit in 8 bits\");\n }\n GROWABLE_HEAP_U8()[ptr + i >>> 0] = charCode;\n }\n } else {\n for (var i = 0; i < length; ++i) {\n GROWABLE_HEAP_U8()[ptr + i >>> 0] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, base);\n }\n return base;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n }\n var UTF16Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf-16le\") : void 0;\n var UTF16ToString = (ptr, maxBytesToRead) => {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && GROWABLE_HEAP_U16()[idx >>> 0])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder)\n return UTF16Decoder.decode(GROWABLE_HEAP_U8().slice(ptr, endPtr));\n var str = \"\";\n for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {\n var codeUnit = GROWABLE_HEAP_I16()[ptr + i * 2 >>> 1];\n if (codeUnit == 0)\n break;\n str += String.fromCharCode(codeUnit);\n }\n return str;\n };\n var stringToUTF16 = (str, outPtr, maxBytesToWrite) => {\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n GROWABLE_HEAP_I16()[outPtr >>> 1] = codeUnit;\n outPtr += 2;\n }\n GROWABLE_HEAP_I16()[outPtr >>> 1] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF16 = (str) => str.length * 2;\n var UTF32ToString = (ptr, maxBytesToRead) => {\n var i = 0;\n var str = \"\";\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = GROWABLE_HEAP_I32()[ptr + i * 4 >>> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n } else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n };\n var stringToUTF32 = (str, outPtr, maxBytesToWrite) => {\n outPtr >>>= 0;\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023;\n }\n GROWABLE_HEAP_I32()[outPtr >>> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n GROWABLE_HEAP_I32()[outPtr >>> 2] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF32 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n };\n var __embind_register_std_wstring = function(rawType, charSize, name) {\n rawType >>>= 0;\n charSize >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = () => GROWABLE_HEAP_U16();\n shift = 1;\n } else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = () => GROWABLE_HEAP_U32();\n shift = 2;\n }\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = GROWABLE_HEAP_U32()[value >>> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (i == length || HEAP[currentBytePtr >>> shift] == 0) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (!(typeof value == \"string\")) {\n throwBindingError(`Cannot pass non-string to C++ string type ${name}`);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n GROWABLE_HEAP_U32()[ptr >>> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n };\n function __embind_register_value_array(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n tupleRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), elements: [] };\n }\n function __embind_register_value_array_element(rawTupleType, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n rawTupleType >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n tupleRegistrations[rawTupleType].elements.push({ getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_value_object(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n structRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), fields: [] };\n }\n function __embind_register_value_object_field(structType, fieldName, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n structType >>>= 0;\n fieldName >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n structRegistrations[structType].fields.push({ fieldName: readLatin1String(fieldName), getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_void(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { isVoid: true, name, \"argPackAdvance\": 0, \"fromWireType\": function() {\n return void 0;\n }, \"toWireType\": function(destructors, o) {\n return void 0;\n } });\n }\n var nowIsMonotonic = true;\n var __emscripten_get_now_is_monotonic = () => nowIsMonotonic;\n var maybeExit = () => {\n if (!keepRuntimeAlive()) {\n try {\n if (ENVIRONMENT_IS_PTHREAD)\n __emscripten_thread_exit(EXITSTATUS);\n else\n _exit(EXITSTATUS);\n } catch (e) {\n handleException(e);\n }\n }\n };\n var callUserCallback = (func) => {\n if (ABORT) {\n return;\n }\n try {\n func();\n maybeExit();\n } catch (e) {\n handleException(e);\n }\n };\n function __emscripten_thread_mailbox_await(pthread_ptr) {\n pthread_ptr >>>= 0;\n if (typeof Atomics.waitAsync === \"function\") {\n var wait = Atomics.waitAsync(GROWABLE_HEAP_I32(), pthread_ptr >> 2, pthread_ptr);\n wait.value.then(checkMailbox);\n var waitingAsync = pthread_ptr + 128;\n Atomics.store(GROWABLE_HEAP_I32(), waitingAsync >> 2, 1);\n }\n }\n Module[\"__emscripten_thread_mailbox_await\"] = __emscripten_thread_mailbox_await;\n var checkMailbox = function() {\n var pthread_ptr = _pthread_self();\n if (pthread_ptr) {\n __emscripten_thread_mailbox_await(pthread_ptr);\n callUserCallback(() => __emscripten_check_mailbox());\n }\n };\n Module[\"checkMailbox\"] = checkMailbox;\n var __emscripten_notify_mailbox_postmessage = function(targetThreadId, currThreadId, mainThreadId) {\n targetThreadId >>>= 0;\n currThreadId >>>= 0;\n mainThreadId >>>= 0;\n if (targetThreadId == currThreadId) {\n setTimeout(() => checkMailbox());\n } else if (ENVIRONMENT_IS_PTHREAD) {\n postMessage({ \"targetThread\": targetThreadId, \"cmd\": \"checkMailbox\" });\n } else {\n var worker = PThread.pthreads[targetThreadId];\n if (!worker) {\n return;\n }\n worker.postMessage({ \"cmd\": \"checkMailbox\" });\n }\n };\n function __emscripten_set_offscreencanvas_size(target, width, height) {\n target >>>= 0;\n return -1;\n }\n function __emscripten_thread_set_strongref(thread) {\n thread >>>= 0;\n }\n function requireRegisteredType(rawType, humanName) {\n var impl = registeredTypes[rawType];\n if (impl === void 0) {\n throwBindingError(humanName + \" has unknown type \" + getTypeName(rawType));\n }\n return impl;\n }\n function __emval_as(handle, returnType, destructorsRef) {\n handle >>>= 0;\n returnType >>>= 0;\n destructorsRef >>>= 0;\n handle = Emval.toValue(handle);\n returnType = requireRegisteredType(returnType, \"emval::as\");\n var destructors = [];\n var rd = Emval.toHandle(destructors);\n GROWABLE_HEAP_U32()[destructorsRef >>> 2] = rd;\n return returnType[\"toWireType\"](destructors, handle);\n }\n function emval_lookupTypes(argCount, argTypes) {\n var a = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n a[i] = requireRegisteredType(GROWABLE_HEAP_U32()[argTypes + i * 4 >>> 2], \"parameter \" + i);\n }\n return a;\n }\n function __emval_call(handle, argCount, argTypes, argv) {\n handle >>>= 0;\n argTypes >>>= 0;\n argv >>>= 0;\n handle = Emval.toValue(handle);\n var types = emval_lookupTypes(argCount, argTypes);\n var args = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n var type = types[i];\n args[i] = type[\"readValueFromPointer\"](argv);\n argv += type[\"argPackAdvance\"];\n }\n var rv = handle.apply(void 0, args);\n return Emval.toHandle(rv);\n }\n var emval_symbols = {};\n function getStringOrSymbol(address) {\n var symbol = emval_symbols[address];\n if (symbol === void 0) {\n return readLatin1String(address);\n }\n return symbol;\n }\n function emval_get_global() {\n if (typeof globalThis == \"object\") {\n return globalThis;\n }\n return function() {\n return Function;\n }()(\"return this\")();\n }\n function __emval_get_global(name) {\n name >>>= 0;\n if (name === 0) {\n return Emval.toHandle(emval_get_global());\n } else {\n name = getStringOrSymbol(name);\n return Emval.toHandle(emval_get_global()[name]);\n }\n }\n function __emval_get_property(handle, key) {\n handle >>>= 0;\n key >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n return Emval.toHandle(handle[key]);\n }\n function __emval_incref(handle) {\n handle >>>= 0;\n if (handle > 4) {\n emval_handles.get(handle).refcount += 1;\n }\n }\n function __emval_instanceof(object, constructor) {\n object >>>= 0;\n constructor >>>= 0;\n object = Emval.toValue(object);\n constructor = Emval.toValue(constructor);\n return object instanceof constructor;\n }\n function __emval_is_number(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"number\";\n }\n function __emval_is_string(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"string\";\n }\n function __emval_new_array() {\n return Emval.toHandle([]);\n }\n function __emval_new_cstring(v) {\n v >>>= 0;\n return Emval.toHandle(getStringOrSymbol(v));\n }\n function __emval_new_object() {\n return Emval.toHandle({});\n }\n function __emval_run_destructors(handle) {\n handle >>>= 0;\n var destructors = Emval.toValue(handle);\n runDestructors(destructors);\n __emval_decref(handle);\n }\n function __emval_set_property(handle, key, value) {\n handle >>>= 0;\n key >>>= 0;\n value >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n value = Emval.toValue(value);\n handle[key] = value;\n }\n function __emval_take_value(type, arg) {\n type >>>= 0;\n arg >>>= 0;\n type = requireRegisteredType(type, \"_emval_take_value\");\n var v = type[\"readValueFromPointer\"](arg);\n return Emval.toHandle(v);\n }\n function __gmtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n GROWABLE_HEAP_I32()[tmPtr >>> 2] = date.getUTCSeconds();\n GROWABLE_HEAP_I32()[tmPtr + 4 >>> 2] = date.getUTCMinutes();\n GROWABLE_HEAP_I32()[tmPtr + 8 >>> 2] = date.getUTCHours();\n GROWABLE_HEAP_I32()[tmPtr + 12 >>> 2] = date.getUTCDate();\n GROWABLE_HEAP_I32()[tmPtr + 16 >>> 2] = date.getUTCMonth();\n GROWABLE_HEAP_I32()[tmPtr + 20 >>> 2] = date.getUTCFullYear() - 1900;\n GROWABLE_HEAP_I32()[tmPtr + 24 >>> 2] = date.getUTCDay();\n var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);\n var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 28 >>> 2] = yday;\n }\n var isLeapYear = (year) => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n var MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n var MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];\n var ydayFromDate = (date) => {\n var leap = isLeapYear(date.getFullYear());\n var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE;\n var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1;\n return yday;\n };\n function __localtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n GROWABLE_HEAP_I32()[tmPtr >>> 2] = date.getSeconds();\n GROWABLE_HEAP_I32()[tmPtr + 4 >>> 2] = date.getMinutes();\n GROWABLE_HEAP_I32()[tmPtr + 8 >>> 2] = date.getHours();\n GROWABLE_HEAP_I32()[tmPtr + 12 >>> 2] = date.getDate();\n GROWABLE_HEAP_I32()[tmPtr + 16 >>> 2] = date.getMonth();\n GROWABLE_HEAP_I32()[tmPtr + 20 >>> 2] = date.getFullYear() - 1900;\n GROWABLE_HEAP_I32()[tmPtr + 24 >>> 2] = date.getDay();\n var yday = ydayFromDate(date) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 28 >>> 2] = yday;\n GROWABLE_HEAP_I32()[tmPtr + 36 >>> 2] = -(date.getTimezoneOffset() * 60);\n var start = new Date(date.getFullYear(), 0, 1);\n var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset();\n var winterOffset = start.getTimezoneOffset();\n var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 32 >>> 2] = dst;\n }\n var stringToNewUTF8 = (str) => {\n var size = lengthBytesUTF8(str) + 1;\n var ret = _malloc(size);\n if (ret)\n stringToUTF8(str, ret, size);\n return ret;\n };\n function __tzset_js(timezone, daylight, tzname) {\n timezone >>>= 0;\n daylight >>>= 0;\n tzname >>>= 0;\n var currentYear = new Date().getFullYear();\n var winter = new Date(currentYear, 0, 1);\n var summer = new Date(currentYear, 6, 1);\n var winterOffset = winter.getTimezoneOffset();\n var summerOffset = summer.getTimezoneOffset();\n var stdTimezoneOffset = Math.max(winterOffset, summerOffset);\n GROWABLE_HEAP_U32()[timezone >>> 2] = stdTimezoneOffset * 60;\n GROWABLE_HEAP_I32()[daylight >>> 2] = Number(winterOffset != summerOffset);\n function extractZone(date) {\n var match = date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);\n return match ? match[1] : \"GMT\";\n }\n var winterName = extractZone(winter);\n var summerName = extractZone(summer);\n var winterNamePtr = stringToNewUTF8(winterName);\n var summerNamePtr = stringToNewUTF8(summerName);\n if (summerOffset < winterOffset) {\n GROWABLE_HEAP_U32()[tzname >>> 2] = winterNamePtr;\n GROWABLE_HEAP_U32()[tzname + 4 >>> 2] = summerNamePtr;\n } else {\n GROWABLE_HEAP_U32()[tzname >>> 2] = summerNamePtr;\n GROWABLE_HEAP_U32()[tzname + 4 >>> 2] = winterNamePtr;\n }\n }\n var _abort = () => {\n abort(\"\");\n };\n var warnOnce = (text) => {\n if (!warnOnce.shown)\n warnOnce.shown = {};\n if (!warnOnce.shown[text]) {\n warnOnce.shown[text] = 1;\n err(text);\n }\n };\n function _emscripten_check_blocking_allowed() {\n }\n function _emscripten_date_now() {\n return Date.now();\n }\n var runtimeKeepalivePush = () => {\n runtimeKeepaliveCounter += 1;\n };\n var _emscripten_exit_with_live_runtime = () => {\n runtimeKeepalivePush();\n throw \"unwind\";\n };\n var _emscripten_get_now;\n _emscripten_get_now = () => performance.timeOrigin + performance.now();\n var withStackSave = (f) => {\n var stack = stackSave();\n var ret = f();\n stackRestore(stack);\n return ret;\n };\n var proxyToMainThread = function(index, sync) {\n var numCallArgs = arguments.length - 2;\n var outerArgs = arguments;\n return withStackSave(() => {\n var serializedNumCallArgs = numCallArgs;\n var args = stackAlloc(serializedNumCallArgs * 8);\n var b = args >> 3;\n for (var i = 0; i < numCallArgs; i++) {\n var arg = outerArgs[2 + i];\n GROWABLE_HEAP_F64()[b + i >>> 0] = arg;\n }\n return __emscripten_run_in_main_runtime_thread_js(index, serializedNumCallArgs, args, sync);\n });\n };\n var emscripten_receive_on_main_thread_js_callArgs = [];\n function _emscripten_receive_on_main_thread_js(index, callingThread, numCallArgs, args) {\n callingThread >>>= 0;\n args >>>= 0;\n PThread.currentProxiedOperationCallerThread = callingThread;\n emscripten_receive_on_main_thread_js_callArgs.length = numCallArgs;\n var b = args >> 3;\n for (var i = 0; i < numCallArgs; i++) {\n emscripten_receive_on_main_thread_js_callArgs[i] = GROWABLE_HEAP_F64()[b + i >>> 0];\n }\n var func = proxiedFunctionTable[index];\n return func.apply(null, emscripten_receive_on_main_thread_js_callArgs);\n }\n var getHeapMax = () => 4294901760;\n var growMemory = (size) => {\n var b = wasmMemory.buffer;\n var pages = size - b.byteLength + 65535 >>> 16;\n try {\n wasmMemory.grow(pages);\n updateMemoryViews();\n return 1;\n } catch (e) {\n }\n };\n function _emscripten_resize_heap(requestedSize) {\n requestedSize >>>= 0;\n var oldSize = GROWABLE_HEAP_U8().length;\n if (requestedSize <= oldSize) {\n return false;\n }\n var maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize) {\n return false;\n }\n var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\n for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {\n var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n var replacement = growMemory(newSize);\n if (replacement) {\n return true;\n }\n }\n return false;\n }\n var ENV = {};\n var getExecutableName = () => thisProgram || \"./this.program\";\n var getEnvStrings = () => {\n if (!getEnvStrings.strings) {\n var lang = (typeof navigator == \"object\" && navigator.languages && navigator.languages[0] || \"C\").replace(\"-\", \"_\") + \".UTF-8\";\n var env = { \"USER\": \"web_user\", \"LOGNAME\": \"web_user\", \"PATH\": \"/\", \"PWD\": \"/\", \"HOME\": \"/home/web_user\", \"LANG\": lang, \"_\": getExecutableName() };\n for (var x in ENV) {\n if (ENV[x] === void 0)\n delete env[x];\n else\n env[x] = ENV[x];\n }\n var strings = [];\n for (var x in env) {\n strings.push(`${x}=${env[x]}`);\n }\n getEnvStrings.strings = strings;\n }\n return getEnvStrings.strings;\n };\n var stringToAscii = (str, buffer) => {\n for (var i = 0; i < str.length; ++i) {\n GROWABLE_HEAP_I8()[buffer++ >>> 0] = str.charCodeAt(i);\n }\n GROWABLE_HEAP_I8()[buffer >>> 0] = 0;\n };\n function _environ_get(__environ, environ_buf) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(3, 1, __environ, environ_buf);\n __environ >>>= 0;\n environ_buf >>>= 0;\n var bufSize = 0;\n getEnvStrings().forEach(function(string, i) {\n var ptr = environ_buf + bufSize;\n GROWABLE_HEAP_U32()[__environ + i * 4 >>> 2] = ptr;\n stringToAscii(string, ptr);\n bufSize += string.length + 1;\n });\n return 0;\n }\n function _environ_sizes_get(penviron_count, penviron_buf_size) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(4, 1, penviron_count, penviron_buf_size);\n penviron_count >>>= 0;\n penviron_buf_size >>>= 0;\n var strings = getEnvStrings();\n GROWABLE_HEAP_U32()[penviron_count >>> 2] = strings.length;\n var bufSize = 0;\n strings.forEach(function(string) {\n bufSize += string.length + 1;\n });\n GROWABLE_HEAP_U32()[penviron_buf_size >>> 2] = bufSize;\n return 0;\n }\n function _fd_close(fd) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(5, 1, fd);\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.close(stream);\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_fdstat_get(fd, pbuf) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(6, 1, fd, pbuf);\n pbuf >>>= 0;\n try {\n var rightsBase = 0;\n var rightsInheriting = 0;\n var flags = 0;\n {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4;\n }\n GROWABLE_HEAP_I8()[pbuf >>> 0] = type;\n GROWABLE_HEAP_I16()[pbuf + 2 >>> 1] = flags;\n tempI64 = [rightsBase >>> 0, (tempDouble = rightsBase, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[pbuf + 8 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[pbuf + 12 >>> 2] = tempI64[1];\n tempI64 = [rightsInheriting >>> 0, (tempDouble = rightsInheriting, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[pbuf + 16 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[pbuf + 20 >>> 2] = tempI64[1];\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doReadv = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = GROWABLE_HEAP_U32()[iov >>> 2];\n var len = GROWABLE_HEAP_U32()[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.read(stream, GROWABLE_HEAP_I8(), ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (curr < len)\n break;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_read(fd, iov, iovcnt, pnum) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(7, 1, fd, iov, iovcnt, pnum);\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doReadv(stream, iov, iovcnt);\n GROWABLE_HEAP_U32()[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(8, 1, fd, offset_low, offset_high, whence, newOffset);\n var offset = convertI32PairToI53Checked(offset_low, offset_high);\n newOffset >>>= 0;\n try {\n if (isNaN(offset))\n return 61;\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.llseek(stream, offset, whence);\n tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[newOffset >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[newOffset + 4 >>> 2] = tempI64[1];\n if (stream.getdents && offset === 0 && whence === 0)\n stream.getdents = null;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doWritev = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = GROWABLE_HEAP_U32()[iov >>> 2];\n var len = GROWABLE_HEAP_U32()[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.write(stream, GROWABLE_HEAP_I8(), ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_write(fd, iov, iovcnt, pnum) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(9, 1, fd, iov, iovcnt, pnum);\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doWritev(stream, iov, iovcnt);\n GROWABLE_HEAP_U32()[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var arraySum = (array, index) => {\n var sum = 0;\n for (var i = 0; i <= index; sum += array[i++]) {\n }\n return sum;\n };\n var MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var addDays = (date, days) => {\n var newDate = new Date(date.getTime());\n while (days > 0) {\n var leap = isLeapYear(newDate.getFullYear());\n var currentMonth = newDate.getMonth();\n var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth];\n if (days > daysInCurrentMonth - newDate.getDate()) {\n days -= daysInCurrentMonth - newDate.getDate() + 1;\n newDate.setDate(1);\n if (currentMonth < 11) {\n newDate.setMonth(currentMonth + 1);\n } else {\n newDate.setMonth(0);\n newDate.setFullYear(newDate.getFullYear() + 1);\n }\n } else {\n newDate.setDate(newDate.getDate() + days);\n return newDate;\n }\n }\n return newDate;\n };\n var writeArrayToMemory = (array, buffer) => {\n GROWABLE_HEAP_I8().set(array, buffer >>> 0);\n };\n function _strftime(s, maxsize, format, tm) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n var tm_zone = GROWABLE_HEAP_I32()[tm + 40 >>> 2];\n var date = { tm_sec: GROWABLE_HEAP_I32()[tm >>> 2], tm_min: GROWABLE_HEAP_I32()[tm + 4 >>> 2], tm_hour: GROWABLE_HEAP_I32()[tm + 8 >>> 2], tm_mday: GROWABLE_HEAP_I32()[tm + 12 >>> 2], tm_mon: GROWABLE_HEAP_I32()[tm + 16 >>> 2], tm_year: GROWABLE_HEAP_I32()[tm + 20 >>> 2], tm_wday: GROWABLE_HEAP_I32()[tm + 24 >>> 2], tm_yday: GROWABLE_HEAP_I32()[tm + 28 >>> 2], tm_isdst: GROWABLE_HEAP_I32()[tm + 32 >>> 2], tm_gmtoff: GROWABLE_HEAP_I32()[tm + 36 >>> 2], tm_zone: tm_zone ? UTF8ToString(tm_zone) : \"\" };\n var pattern = UTF8ToString(format);\n var EXPANSION_RULES_1 = { \"%c\": \"%a %b %d %H:%M:%S %Y\", \"%D\": \"%m/%d/%y\", \"%F\": \"%Y-%m-%d\", \"%h\": \"%b\", \"%r\": \"%I:%M:%S %p\", \"%R\": \"%H:%M\", \"%T\": \"%H:%M:%S\", \"%x\": \"%m/%d/%y\", \"%X\": \"%H:%M:%S\", \"%Ec\": \"%c\", \"%EC\": \"%C\", \"%Ex\": \"%m/%d/%y\", \"%EX\": \"%H:%M:%S\", \"%Ey\": \"%y\", \"%EY\": \"%Y\", \"%Od\": \"%d\", \"%Oe\": \"%e\", \"%OH\": \"%H\", \"%OI\": \"%I\", \"%Om\": \"%m\", \"%OM\": \"%M\", \"%OS\": \"%S\", \"%Ou\": \"%u\", \"%OU\": \"%U\", \"%OV\": \"%V\", \"%Ow\": \"%w\", \"%OW\": \"%W\", \"%Oy\": \"%y\" };\n for (var rule in EXPANSION_RULES_1) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_1[rule]);\n }\n var WEEKDAYS = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n var MONTHS = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n function leadingSomething(value, digits, character) {\n var str = typeof value == \"number\" ? value.toString() : value || \"\";\n while (str.length < digits) {\n str = character[0] + str;\n }\n return str;\n }\n function leadingNulls(value, digits) {\n return leadingSomething(value, digits, \"0\");\n }\n function compareByDay(date1, date2) {\n function sgn(value) {\n return value < 0 ? -1 : value > 0 ? 1 : 0;\n }\n var compare;\n if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {\n if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {\n compare = sgn(date1.getDate() - date2.getDate());\n }\n }\n return compare;\n }\n function getFirstWeekStartDate(janFourth) {\n switch (janFourth.getDay()) {\n case 0:\n return new Date(janFourth.getFullYear() - 1, 11, 29);\n case 1:\n return janFourth;\n case 2:\n return new Date(janFourth.getFullYear(), 0, 3);\n case 3:\n return new Date(janFourth.getFullYear(), 0, 2);\n case 4:\n return new Date(janFourth.getFullYear(), 0, 1);\n case 5:\n return new Date(janFourth.getFullYear() - 1, 11, 31);\n case 6:\n return new Date(janFourth.getFullYear() - 1, 11, 30);\n }\n }\n function getWeekBasedYear(date2) {\n var thisDate = addDays(new Date(date2.tm_year + 1900, 0, 1), date2.tm_yday);\n var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);\n var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);\n var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);\n var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);\n if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {\n if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {\n return thisDate.getFullYear() + 1;\n }\n return thisDate.getFullYear();\n }\n return thisDate.getFullYear() - 1;\n }\n var EXPANSION_RULES_2 = { \"%a\": (date2) => WEEKDAYS[date2.tm_wday].substring(0, 3), \"%A\": (date2) => WEEKDAYS[date2.tm_wday], \"%b\": (date2) => MONTHS[date2.tm_mon].substring(0, 3), \"%B\": (date2) => MONTHS[date2.tm_mon], \"%C\": (date2) => {\n var year = date2.tm_year + 1900;\n return leadingNulls(year / 100 | 0, 2);\n }, \"%d\": (date2) => leadingNulls(date2.tm_mday, 2), \"%e\": (date2) => leadingSomething(date2.tm_mday, 2, \" \"), \"%g\": (date2) => getWeekBasedYear(date2).toString().substring(2), \"%G\": (date2) => getWeekBasedYear(date2), \"%H\": (date2) => leadingNulls(date2.tm_hour, 2), \"%I\": (date2) => {\n var twelveHour = date2.tm_hour;\n if (twelveHour == 0)\n twelveHour = 12;\n else if (twelveHour > 12)\n twelveHour -= 12;\n return leadingNulls(twelveHour, 2);\n }, \"%j\": (date2) => leadingNulls(date2.tm_mday + arraySum(isLeapYear(date2.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date2.tm_mon - 1), 3), \"%m\": (date2) => leadingNulls(date2.tm_mon + 1, 2), \"%M\": (date2) => leadingNulls(date2.tm_min, 2), \"%n\": () => \"\\n\", \"%p\": (date2) => {\n if (date2.tm_hour >= 0 && date2.tm_hour < 12) {\n return \"AM\";\n }\n return \"PM\";\n }, \"%S\": (date2) => leadingNulls(date2.tm_sec, 2), \"%t\": () => \"\t\", \"%u\": (date2) => date2.tm_wday || 7, \"%U\": (date2) => {\n var days = date2.tm_yday + 7 - date2.tm_wday;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%V\": (date2) => {\n var val = Math.floor((date2.tm_yday + 7 - (date2.tm_wday + 6) % 7) / 7);\n if ((date2.tm_wday + 371 - date2.tm_yday - 2) % 7 <= 2) {\n val++;\n }\n if (!val) {\n val = 52;\n var dec31 = (date2.tm_wday + 7 - date2.tm_yday - 1) % 7;\n if (dec31 == 4 || dec31 == 5 && isLeapYear(date2.tm_year % 400 - 1)) {\n val++;\n }\n } else if (val == 53) {\n var jan1 = (date2.tm_wday + 371 - date2.tm_yday) % 7;\n if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date2.tm_year)))\n val = 1;\n }\n return leadingNulls(val, 2);\n }, \"%w\": (date2) => date2.tm_wday, \"%W\": (date2) => {\n var days = date2.tm_yday + 7 - (date2.tm_wday + 6) % 7;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%y\": (date2) => (date2.tm_year + 1900).toString().substring(2), \"%Y\": (date2) => date2.tm_year + 1900, \"%z\": (date2) => {\n var off = date2.tm_gmtoff;\n var ahead = off >= 0;\n off = Math.abs(off) / 60;\n off = off / 60 * 100 + off % 60;\n return (ahead ? \"+\" : \"-\") + String(\"0000\" + off).slice(-4);\n }, \"%Z\": (date2) => date2.tm_zone, \"%%\": () => \"%\" };\n pattern = pattern.replace(/%%/g, \"\\0\\0\");\n for (var rule in EXPANSION_RULES_2) {\n if (pattern.includes(rule)) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_2[rule](date));\n }\n }\n pattern = pattern.replace(/\\0\\0/g, \"%\");\n var bytes = intArrayFromString(pattern, false);\n if (bytes.length > maxsize) {\n return 0;\n }\n writeArrayToMemory(bytes, s);\n return bytes.length - 1;\n }\n function _strftime_l(s, maxsize, format, tm, loc) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n loc >>>= 0;\n return _strftime(s, maxsize, format, tm);\n }\n PThread.init();\n var FSNode = function(parent, name, mode, rdev) {\n if (!parent) {\n parent = this;\n }\n this.parent = parent;\n this.mount = parent.mount;\n this.mounted = null;\n this.id = FS.nextInode++;\n this.name = name;\n this.mode = mode;\n this.node_ops = {};\n this.stream_ops = {};\n this.rdev = rdev;\n };\n var readMode = 292 | 73;\n var writeMode = 146;\n Object.defineProperties(FSNode.prototype, { read: { get: function() {\n return (this.mode & readMode) === readMode;\n }, set: function(val) {\n val ? this.mode |= readMode : this.mode &= ~readMode;\n } }, write: { get: function() {\n return (this.mode & writeMode) === writeMode;\n }, set: function(val) {\n val ? this.mode |= writeMode : this.mode &= ~writeMode;\n } }, isFolder: { get: function() {\n return FS.isDir(this.mode);\n } }, isDevice: { get: function() {\n return FS.isChrdev(this.mode);\n } } });\n FS.FSNode = FSNode;\n FS.createPreloadedFile = FS_createPreloadedFile;\n FS.staticInit();\n InternalError = Module[\"InternalError\"] = class InternalError extends Error {\n constructor(message) {\n super(message);\n this.name = \"InternalError\";\n }\n };\n embind_init_charCodes();\n BindingError = Module[\"BindingError\"] = class BindingError extends Error {\n constructor(message) {\n super(message);\n this.name = \"BindingError\";\n }\n };\n init_ClassHandle();\n init_embind();\n init_RegisteredPointer();\n UnboundTypeError = Module[\"UnboundTypeError\"] = extendError(Error, \"UnboundTypeError\");\n handleAllocatorInit();\n init_emval();\n var proxiedFunctionTable = [null, _proc_exit, exitOnMainThread, _environ_get, _environ_sizes_get, _fd_close, _fd_fdstat_get, _fd_read, _fd_seek, _fd_write];\n var wasmImports = { g: ___cxa_throw, Y: ___emscripten_init_main_thread_js, B: ___emscripten_thread_cleanup, fa: __embind_finalize_value_array, r: __embind_finalize_value_object, K: __embind_register_bigint, da: __embind_register_bool, q: __embind_register_class, p: __embind_register_class_constructor, c: __embind_register_class_function, ca: __embind_register_emval, D: __embind_register_float, d: __embind_register_function, t: __embind_register_integer, l: __embind_register_memory_view, E: __embind_register_std_string, y: __embind_register_std_wstring, ga: __embind_register_value_array, m: __embind_register_value_array_element, s: __embind_register_value_object, f: __embind_register_value_object_field, ea: __embind_register_void, T: __emscripten_get_now_is_monotonic, R: __emscripten_notify_mailbox_postmessage, W: __emscripten_set_offscreencanvas_size, X: __emscripten_thread_mailbox_await, ba: __emscripten_thread_set_strongref, k: __emval_as, x: __emval_call, b: __emval_decref, A: __emval_get_global, i: __emval_get_property, o: __emval_incref, G: __emval_instanceof, z: __emval_is_number, F: __emval_is_string, ha: __emval_new_array, h: __emval_new_cstring, v: __emval_new_object, j: __emval_run_destructors, n: __emval_set_property, e: __emval_take_value, I: __gmtime_js, J: __localtime_js, Q: __tzset_js, w: _abort, C: _emscripten_check_blocking_allowed, U: _emscripten_date_now, aa: _emscripten_exit_with_live_runtime, u: _emscripten_get_now, V: _emscripten_receive_on_main_thread_js, P: _emscripten_resize_heap, _: _environ_get, $: _environ_sizes_get, L: _exit, N: _fd_close, Z: _fd_fdstat_get, O: _fd_read, H: _fd_seek, S: _fd_write, a: wasmMemory || Module[\"wasmMemory\"], M: _strftime_l };\n var asm = createWasm();\n var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports[\"ia\"])();\n var _pthread_self = Module[\"_pthread_self\"] = () => (_pthread_self = Module[\"_pthread_self\"] = wasmExports[\"ka\"])();\n var _malloc = (a0) => (_malloc = wasmExports[\"la\"])(a0);\n var __emscripten_tls_init = Module[\"__emscripten_tls_init\"] = () => (__emscripten_tls_init = Module[\"__emscripten_tls_init\"] = wasmExports[\"ma\"])();\n var ___getTypeName = (a0) => (___getTypeName = wasmExports[\"na\"])(a0);\n var __embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = () => (__embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = wasmExports[\"oa\"])();\n var ___errno_location = () => (___errno_location = wasmExports[\"__errno_location\"])();\n var __emscripten_thread_init = Module[\"__emscripten_thread_init\"] = (a0, a1, a2, a3, a4, a5) => (__emscripten_thread_init = Module[\"__emscripten_thread_init\"] = wasmExports[\"pa\"])(a0, a1, a2, a3, a4, a5);\n var __emscripten_thread_crashed = Module[\"__emscripten_thread_crashed\"] = () => (__emscripten_thread_crashed = Module[\"__emscripten_thread_crashed\"] = wasmExports[\"qa\"])();\n var _emscripten_main_thread_process_queued_calls = () => (_emscripten_main_thread_process_queued_calls = wasmExports[\"emscripten_main_thread_process_queued_calls\"])();\n var _emscripten_main_runtime_thread_id = () => (_emscripten_main_runtime_thread_id = wasmExports[\"emscripten_main_runtime_thread_id\"])();\n var __emscripten_run_in_main_runtime_thread_js = (a0, a1, a2, a3) => (__emscripten_run_in_main_runtime_thread_js = wasmExports[\"ra\"])(a0, a1, a2, a3);\n var _emscripten_dispatch_to_thread_ = (a0, a1, a2, a3, a4) => (_emscripten_dispatch_to_thread_ = wasmExports[\"emscripten_dispatch_to_thread_\"])(a0, a1, a2, a3, a4);\n var _free = (a0) => (_free = wasmExports[\"sa\"])(a0);\n var __emscripten_thread_free_data = (a0) => (__emscripten_thread_free_data = wasmExports[\"ta\"])(a0);\n var __emscripten_thread_exit = Module[\"__emscripten_thread_exit\"] = (a0) => (__emscripten_thread_exit = Module[\"__emscripten_thread_exit\"] = wasmExports[\"ua\"])(a0);\n var __emscripten_check_mailbox = Module[\"__emscripten_check_mailbox\"] = () => (__emscripten_check_mailbox = Module[\"__emscripten_check_mailbox\"] = wasmExports[\"va\"])();\n var _emscripten_stack_set_limits = (a0, a1) => (_emscripten_stack_set_limits = wasmExports[\"wa\"])(a0, a1);\n var stackSave = () => (stackSave = wasmExports[\"xa\"])();\n var stackRestore = (a0) => (stackRestore = wasmExports[\"ya\"])(a0);\n var stackAlloc = (a0) => (stackAlloc = wasmExports[\"za\"])(a0);\n var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports[\"__cxa_increment_exception_refcount\"])(a0);\n var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports[\"Aa\"])(a0);\n var dynCall_jiji = Module[\"dynCall_jiji\"] = (a0, a1, a2, a3, a4) => (dynCall_jiji = Module[\"dynCall_jiji\"] = wasmExports[\"Ba\"])(a0, a1, a2, a3, a4);\n var dynCall_viijii = Module[\"dynCall_viijii\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_viijii = Module[\"dynCall_viijii\"] = wasmExports[\"Ca\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = wasmExports[\"Da\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8) => (dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = wasmExports[\"Ea\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8);\n var dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) => (dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = wasmExports[\"Fa\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);\n function applySignatureConversions(exports2) {\n exports2 = Object.assign({}, exports2);\n var makeWrapper_p = (f) => () => f() >>> 0;\n var makeWrapper_pp = (f) => (a0) => f(a0) >>> 0;\n exports2[\"pthread_self\"] = makeWrapper_p(exports2[\"pthread_self\"]);\n exports2[\"malloc\"] = makeWrapper_pp(exports2[\"malloc\"]);\n exports2[\"__getTypeName\"] = makeWrapper_pp(exports2[\"__getTypeName\"]);\n exports2[\"__errno_location\"] = makeWrapper_p(exports2[\"__errno_location\"]);\n exports2[\"stackSave\"] = makeWrapper_p(exports2[\"stackSave\"]);\n exports2[\"stackAlloc\"] = makeWrapper_pp(exports2[\"stackAlloc\"]);\n return exports2;\n }\n Module[\"keepRuntimeAlive\"] = keepRuntimeAlive;\n Module[\"wasmMemory\"] = wasmMemory;\n Module[\"ExitStatus\"] = ExitStatus;\n Module[\"PThread\"] = PThread;\n var calledRun;\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run() {\n if (runDependencies > 0) {\n return;\n }\n if (ENVIRONMENT_IS_PTHREAD) {\n readyPromiseResolve(Module);\n initRuntime();\n startWorker(Module);\n return;\n }\n preRun();\n if (runDependencies > 0) {\n return;\n }\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module[\"calledRun\"] = true;\n if (ABORT)\n return;\n initRuntime();\n readyPromiseResolve(Module);\n if (Module[\"onRuntimeInitialized\"])\n Module[\"onRuntimeInitialized\"]();\n postRun();\n }\n if (Module[\"setStatus\"]) {\n Module[\"setStatus\"](\"Running...\");\n setTimeout(function() {\n setTimeout(function() {\n Module[\"setStatus\"](\"\");\n }, 1);\n doRun();\n }, 1);\n } else {\n doRun();\n }\n }\n if (Module[\"preInit\"]) {\n if (typeof Module[\"preInit\"] == \"function\")\n Module[\"preInit\"] = [Module[\"preInit\"]];\n while (Module[\"preInit\"].length > 0) {\n Module[\"preInit\"].pop()();\n }\n }\n run();\n return moduleArg.ready;\n };\n })();\n if (typeof exports === \"object\" && typeof module === \"object\")\n module.exports = WebIFCWasm2;\n else if (typeof define === \"function\" && define[\"amd\"])\n define([], () => WebIFCWasm2);\n }\n});\n\n// dist/web-ifc.js\nvar require_web_ifc = __commonJS({\n \"dist/web-ifc.js\"(exports, module) {\n var WebIFCWasm2 = (() => {\n var _scriptDir = typeof document !== \"undefined\" && document.currentScript ? document.currentScript.src : void 0;\n return function(moduleArg = {}) {\n var Module = moduleArg;\n var readyPromiseResolve, readyPromiseReject;\n Module[\"ready\"] = new Promise((resolve, reject) => {\n readyPromiseResolve = resolve;\n readyPromiseReject = reject;\n });\n var moduleOverrides = Object.assign({}, Module);\n var arguments_ = [];\n var thisProgram = \"./this.program\";\n var quit_ = (status, toThrow) => {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = true;\n var ENVIRONMENT_IS_WORKER = false;\n var scriptDirectory = \"\";\n function locateFile(path) {\n if (Module[\"locateFile\"]) {\n return Module[\"locateFile\"](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n } else if (typeof document != \"undefined\" && document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (_scriptDir) {\n scriptDirectory = _scriptDir;\n }\n if (scriptDirectory.indexOf(\"blob:\") !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, \"\").lastIndexOf(\"/\") + 1);\n } else {\n scriptDirectory = \"\";\n }\n {\n read_ = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.send(null);\n return xhr.responseText;\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.responseType = \"arraybuffer\";\n xhr.send(null);\n return new Uint8Array(xhr.response);\n };\n }\n readAsync = (url, onload, onerror) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, true);\n xhr.responseType = \"arraybuffer\";\n xhr.onload = () => {\n if (xhr.status == 200 || xhr.status == 0 && xhr.response) {\n onload(xhr.response);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = (title) => document.title = title;\n } else {\n }\n var out = Module[\"print\"] || console.log.bind(console);\n var err = Module[\"printErr\"] || console.error.bind(console);\n Object.assign(Module, moduleOverrides);\n moduleOverrides = null;\n if (Module[\"arguments\"])\n arguments_ = Module[\"arguments\"];\n if (Module[\"thisProgram\"])\n thisProgram = Module[\"thisProgram\"];\n if (Module[\"quit\"])\n quit_ = Module[\"quit\"];\n var wasmBinary;\n if (Module[\"wasmBinary\"])\n wasmBinary = Module[\"wasmBinary\"];\n var noExitRuntime = Module[\"noExitRuntime\"] || true;\n if (typeof WebAssembly != \"object\") {\n abort(\"no native wasm support detected\");\n }\n var wasmMemory;\n var wasmExports;\n var ABORT = false;\n var EXITSTATUS;\n function assert(condition, text) {\n if (!condition) {\n abort(text);\n }\n }\n var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateMemoryViews() {\n var b = wasmMemory.buffer;\n Module[\"HEAP8\"] = HEAP8 = new Int8Array(b);\n Module[\"HEAP16\"] = HEAP16 = new Int16Array(b);\n Module[\"HEAP32\"] = HEAP32 = new Int32Array(b);\n Module[\"HEAPU8\"] = HEAPU8 = new Uint8Array(b);\n Module[\"HEAPU16\"] = HEAPU16 = new Uint16Array(b);\n Module[\"HEAPU32\"] = HEAPU32 = new Uint32Array(b);\n Module[\"HEAPF32\"] = HEAPF32 = new Float32Array(b);\n Module[\"HEAPF64\"] = HEAPF64 = new Float64Array(b);\n }\n var wasmTable;\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n function preRun() {\n if (Module[\"preRun\"]) {\n if (typeof Module[\"preRun\"] == \"function\")\n Module[\"preRun\"] = [Module[\"preRun\"]];\n while (Module[\"preRun\"].length) {\n addOnPreRun(Module[\"preRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n if (!Module[\"noFSInit\"] && !FS.init.initialized)\n FS.init();\n FS.ignorePermissions = false;\n TTY.init();\n callRuntimeCallbacks(__ATINIT__);\n }\n function postRun() {\n if (Module[\"postRun\"]) {\n if (typeof Module[\"postRun\"] == \"function\")\n Module[\"postRun\"] = [Module[\"postRun\"]];\n while (Module[\"postRun\"].length) {\n addOnPostRun(Module[\"postRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnInit(cb) {\n __ATINIT__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function getUniqueRunDependency(id) {\n return id;\n }\n function addRunDependency(id) {\n runDependencies++;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n function abort(what) {\n if (Module[\"onAbort\"]) {\n Module[\"onAbort\"](what);\n }\n what = \"Aborted(\" + what + \")\";\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what += \". Build with -sASSERTIONS for more info.\";\n var e = new WebAssembly.RuntimeError(what);\n readyPromiseReject(e);\n throw e;\n }\n var dataURIPrefix = \"data:application/octet-stream;base64,\";\n function isDataURI(filename) {\n return filename.startsWith(dataURIPrefix);\n }\n var wasmBinaryFile;\n wasmBinaryFile = \"web-ifc.wasm\";\n if (!isDataURI(wasmBinaryFile)) {\n wasmBinaryFile = locateFile(wasmBinaryFile);\n }\n function getBinarySync(file) {\n if (file == wasmBinaryFile && wasmBinary) {\n return new Uint8Array(wasmBinary);\n }\n if (readBinary) {\n return readBinary(file);\n }\n throw \"both async and sync fetching of the wasm failed\";\n }\n function getBinaryPromise(binaryFile) {\n if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {\n if (typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n if (!response[\"ok\"]) {\n throw \"failed to load wasm binary file at '\" + binaryFile + \"'\";\n }\n return response[\"arrayBuffer\"]();\n }).catch(() => getBinarySync(binaryFile));\n }\n }\n return Promise.resolve().then(() => getBinarySync(binaryFile));\n }\n function instantiateArrayBuffer(binaryFile, imports, receiver) {\n return getBinaryPromise(binaryFile).then((binary) => WebAssembly.instantiate(binary, imports)).then((instance) => instance).then(receiver, (reason) => {\n err(\"failed to asynchronously prepare wasm: \" + reason);\n abort(reason);\n });\n }\n function instantiateAsync(binary, binaryFile, imports, callback) {\n if (!binary && typeof WebAssembly.instantiateStreaming == \"function\" && !isDataURI(binaryFile) && typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n var result = WebAssembly.instantiateStreaming(response, imports);\n return result.then(callback, function(reason) {\n err(\"wasm streaming compile failed: \" + reason);\n err(\"falling back to ArrayBuffer instantiation\");\n return instantiateArrayBuffer(binaryFile, imports, callback);\n });\n });\n }\n return instantiateArrayBuffer(binaryFile, imports, callback);\n }\n function createWasm() {\n var info = { \"a\": wasmImports };\n function receiveInstance(instance, module2) {\n var exports2 = instance.exports;\n exports2 = applySignatureConversions(exports2);\n wasmExports = exports2;\n wasmMemory = wasmExports[\"Z\"];\n updateMemoryViews();\n wasmTable = wasmExports[\"$\"];\n addOnInit(wasmExports[\"_\"]);\n removeRunDependency(\"wasm-instantiate\");\n return exports2;\n }\n addRunDependency(\"wasm-instantiate\");\n function receiveInstantiationResult(result) {\n receiveInstance(result[\"instance\"]);\n }\n if (Module[\"instantiateWasm\"]) {\n try {\n return Module[\"instantiateWasm\"](info, receiveInstance);\n } catch (e) {\n err(\"Module.instantiateWasm callback failed with error: \" + e);\n readyPromiseReject(e);\n }\n }\n instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);\n return {};\n }\n var tempDouble;\n var tempI64;\n var callRuntimeCallbacks = (callbacks) => {\n while (callbacks.length > 0) {\n callbacks.shift()(Module);\n }\n };\n function ExceptionInfo(excPtr) {\n this.excPtr = excPtr;\n this.ptr = excPtr - 24;\n this.set_type = function(type) {\n HEAPU32[this.ptr + 4 >>> 2] = type;\n };\n this.get_type = function() {\n return HEAPU32[this.ptr + 4 >>> 2];\n };\n this.set_destructor = function(destructor) {\n HEAPU32[this.ptr + 8 >>> 2] = destructor;\n };\n this.get_destructor = function() {\n return HEAPU32[this.ptr + 8 >>> 2];\n };\n this.set_caught = function(caught) {\n caught = caught ? 1 : 0;\n HEAP8[this.ptr + 12 >>> 0] = caught;\n };\n this.get_caught = function() {\n return HEAP8[this.ptr + 12 >>> 0] != 0;\n };\n this.set_rethrown = function(rethrown) {\n rethrown = rethrown ? 1 : 0;\n HEAP8[this.ptr + 13 >>> 0] = rethrown;\n };\n this.get_rethrown = function() {\n return HEAP8[this.ptr + 13 >>> 0] != 0;\n };\n this.init = function(type, destructor) {\n this.set_adjusted_ptr(0);\n this.set_type(type);\n this.set_destructor(destructor);\n };\n this.set_adjusted_ptr = function(adjustedPtr) {\n HEAPU32[this.ptr + 16 >>> 2] = adjustedPtr;\n };\n this.get_adjusted_ptr = function() {\n return HEAPU32[this.ptr + 16 >>> 2];\n };\n this.get_exception_ptr = function() {\n var isPointer = ___cxa_is_pointer_type(this.get_type());\n if (isPointer) {\n return HEAPU32[this.excPtr >>> 2];\n }\n var adjusted = this.get_adjusted_ptr();\n if (adjusted !== 0)\n return adjusted;\n return this.excPtr;\n };\n }\n var exceptionLast = 0;\n var uncaughtExceptionCount = 0;\n function convertI32PairToI53Checked(lo, hi) {\n return hi + 2097152 >>> 0 < 4194305 - !!lo ? (lo >>> 0) + hi * 4294967296 : NaN;\n }\n function ___cxa_throw(ptr, type, destructor) {\n ptr >>>= 0;\n type >>>= 0;\n destructor >>>= 0;\n var info = new ExceptionInfo(ptr);\n info.init(type, destructor);\n exceptionLast = ptr;\n uncaughtExceptionCount++;\n throw exceptionLast;\n }\n var tupleRegistrations = {};\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function simpleReadValueFromPointer(pointer) {\n return this[\"fromWireType\"](HEAP32[pointer >>> 2]);\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var InternalError = void 0;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function(type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters2) {\n var myTypeConverters = getTypeConverters(typeConverters2);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError(\"Mismatched type converter count\");\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach((dt, i) => {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n } else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(() => {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (unregisteredTypes.length === 0) {\n onComplete(typeConverters);\n }\n }\n function __embind_finalize_value_array(rawTupleType) {\n rawTupleType >>>= 0;\n var reg = tupleRegistrations[rawTupleType];\n delete tupleRegistrations[rawTupleType];\n var elements = reg.elements;\n var elementsLength = elements.length;\n var elementTypes = elements.map(function(elt) {\n return elt.getterReturnType;\n }).concat(elements.map(function(elt) {\n return elt.setterArgumentType;\n }));\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n whenDependentTypesAreResolved([rawTupleType], elementTypes, function(elementTypes2) {\n elements.forEach((elt, i) => {\n var getterReturnType = elementTypes2[i];\n var getter = elt.getter;\n var getterContext = elt.getterContext;\n var setterArgumentType = elementTypes2[i + elementsLength];\n var setter = elt.setter;\n var setterContext = elt.setterContext;\n elt.read = (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr));\n elt.write = (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = new Array(elementsLength);\n for (var i = 0; i < elementsLength; ++i) {\n rv[i] = elements[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n if (elementsLength !== o.length) {\n throw new TypeError(`Incorrect number of tuple elements for ${reg.name}: expected=${elementsLength}, actual=${o.length}`);\n }\n var ptr = rawConstructor();\n for (var i = 0; i < elementsLength; ++i) {\n elements[i].write(ptr, o[i]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n }\n var structRegistrations = {};\n var __embind_finalize_value_object = function(structType) {\n structType >>>= 0;\n var reg = structRegistrations[structType];\n delete structRegistrations[structType];\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n var fieldRecords = reg.fields;\n var fieldTypes = fieldRecords.map((field) => field.getterReturnType).concat(fieldRecords.map((field) => field.setterArgumentType));\n whenDependentTypesAreResolved([structType], fieldTypes, (fieldTypes2) => {\n var fields = {};\n fieldRecords.forEach((field, i) => {\n var fieldName = field.fieldName;\n var getterReturnType = fieldTypes2[i];\n var getter = field.getter;\n var getterContext = field.getterContext;\n var setterArgumentType = fieldTypes2[i + fieldRecords.length];\n var setter = field.setter;\n var setterContext = field.setterContext;\n fields[fieldName] = { read: (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr)), write: (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n } };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = {};\n for (var i in fields) {\n rv[i] = fields[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n for (var fieldName in fields) {\n if (!(fieldName in o)) {\n throw new TypeError(`Missing field: \"${fieldName}\"`);\n }\n }\n var ptr = rawConstructor();\n for (fieldName in fields) {\n fields[fieldName].write(ptr, o[fieldName]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n };\n function __embind_register_bigint(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError(`Unknown type size: ${size}`);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = void 0;\n function readLatin1String(ptr) {\n var ret = \"\";\n var c = ptr;\n while (HEAPU8[c >>> 0]) {\n ret += embind_charCodes[HEAPU8[c++ >>> 0]];\n }\n return ret;\n }\n var BindingError = void 0;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n function sharedRegisterType(rawType, registeredInstance, options = {}) {\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError(`type \"${name}\" must have a positive integer typeid pointer`);\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n } else {\n throwBindingError(`Cannot register type '${name}' twice`);\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach((cb) => cb());\n }\n }\n function registerType(rawType, registeredInstance, options = {}) {\n if (!(\"argPackAdvance\" in registeredInstance)) {\n throw new TypeError(\"registerType registeredInstance requires argPackAdvance\");\n }\n return sharedRegisterType(rawType, registeredInstance, options);\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(wt) {\n return !!wt;\n }, \"toWireType\": function(destructors, o) {\n return o ? trueValue : falseValue;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": function(pointer) {\n var heap;\n if (size === 1) {\n heap = HEAP8;\n } else if (size === 2) {\n heap = HEAP16;\n } else if (size === 4) {\n heap = HEAP32;\n } else {\n throw new TypeError(\"Unknown boolean type size: \" + name);\n }\n return this[\"fromWireType\"](heap[pointer >>> shift]);\n }, destructorFunction: null });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return { count: o.count, deleteScheduled: o.deleteScheduled, preservePointerOnDelete: o.preservePointerOnDelete, ptr: o.ptr, ptrType: o.ptrType, smartPtr: o.smartPtr, smartPtrType: o.smartPtrType };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + \" instance already deleted\");\n }\n var finalizationRegistry = false;\n function detachFinalizer(handle) {\n }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n } else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = $$.count.value === 0;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (desiredClass.baseClass === void 0) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n var registeredPointers = {};\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj[\"delete\"]();\n }\n }\n var delayFunction = void 0;\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module[\"getInheritedInstanceCount\"] = getInheritedInstanceCount;\n Module[\"getLiveInheritedInstances\"] = getLiveInheritedInstances;\n Module[\"flushPendingDeletes\"] = flushPendingDeletes;\n Module[\"setDelayFunction\"] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === void 0) {\n throwBindingError(\"ptr should not be undefined\");\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError(\"makeClassHandle requires ptr and ptrType\");\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError(\"Both smartPtrType and smartPtr must be specified\");\n }\n record.count = { value: 1 };\n return attachFinalizer(Object.create(prototype, { $$: { value: record } }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (registeredInstance !== void 0) {\n if (registeredInstance.$$.count.value === 0) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance[\"clone\"]();\n } else {\n var rv = registeredInstance[\"clone\"]();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: rawPointer, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this, ptr });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n } else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp });\n }\n }\n var attachFinalizer = function(handle) {\n if (typeof FinalizationRegistry === \"undefined\") {\n attachFinalizer = (handle2) => handle2;\n return handle;\n }\n finalizationRegistry = new FinalizationRegistry((info) => {\n releaseClassHandle(info.$$);\n });\n attachFinalizer = (handle2) => {\n var $$ = handle2.$$;\n var hasSmartPtr = !!$$.smartPtr;\n if (hasSmartPtr) {\n var info = { $$ };\n finalizationRegistry.register(handle2, info, handle2);\n }\n return handle2;\n };\n detachFinalizer = (handle2) => finalizationRegistry.unregister(handle2);\n return attachFinalizer(handle);\n };\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n } else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), { $$: { value: shallowCopyInternalPointer(this.$$) } }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = void 0;\n this.$$.ptr = void 0;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype[\"isAliasOf\"] = ClassHandle_isAliasOf;\n ClassHandle.prototype[\"clone\"] = ClassHandle_clone;\n ClassHandle.prototype[\"delete\"] = ClassHandle_delete;\n ClassHandle.prototype[\"isDeleted\"] = ClassHandle_isDeleted;\n ClassHandle.prototype[\"deleteLater\"] = ClassHandle_deleteLater;\n }\n function ClassHandle() {\n }\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (name === void 0) {\n return \"_unknown\";\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, \"$\");\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return `_${name}`;\n }\n return name;\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return { [name]: function() {\n return body.apply(this, arguments);\n } }[name];\n }\n function ensureOverloadTable(proto, methodName, humanName) {\n if (proto[methodName].overloadTable === void 0) {\n var prevFunc = proto[methodName];\n proto[methodName] = function() {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (numArguments === void 0 || Module[name].overloadTable !== void 0 && Module[name].overloadTable[numArguments] !== void 0) {\n throwBindingError(`Cannot register public name '${name}' twice`);\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);\n }\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n if (numArguments !== void 0) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n } else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (handle.$$.smartPtr === void 0) {\n throwBindingError(\"Passing raw pointer to smart pointer is illegal\");\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n var clonedHandle = handle[\"clone\"]();\n ptr = this.rawShare(ptr, Emval.toHandle(function() {\n clonedHandle[\"delete\"]();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError(\"Unsupporting sharing policy\");\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle[\"delete\"]();\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype[\"argPackAdvance\"] = 8;\n RegisteredPointer.prototype[\"readValueFromPointer\"] = simpleReadValueFromPointer;\n RegisteredPointer.prototype[\"deleteObject\"] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype[\"fromWireType\"] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === void 0) {\n if (isConst) {\n this[\"toWireType\"] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n } else {\n this[\"toWireType\"] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n } else {\n this[\"toWireType\"] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError(\"Replacing nonexistant public symbol\");\n }\n if (Module[name].overloadTable !== void 0 && numArguments !== void 0) {\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n var dynCallLegacy = (sig, ptr, args) => {\n var f = Module[\"dynCall_\" + sig];\n return args && args.length ? f.apply(null, [ptr].concat(args)) : f.call(null, ptr);\n };\n var wasmTableMirror = [];\n var getWasmTableEntry = (funcPtr) => {\n var func = wasmTableMirror[funcPtr];\n if (!func) {\n if (funcPtr >= wasmTableMirror.length)\n wasmTableMirror.length = funcPtr + 1;\n wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);\n }\n return func;\n };\n var dynCall = (sig, ptr, args) => {\n if (sig.includes(\"j\")) {\n return dynCallLegacy(sig, ptr, args);\n }\n var rtn = getWasmTableEntry(ptr).apply(null, args);\n return rtn;\n };\n var getDynCaller = (sig, ptr) => {\n var argCache = [];\n return function() {\n argCache.length = 0;\n Object.assign(argCache, arguments);\n return dynCall(sig, ptr, argCache);\n };\n };\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller() {\n if (signature.includes(\"j\")) {\n return getDynCaller(signature, rawFunction);\n }\n return getWasmTableEntry(rawFunction);\n }\n var fp = makeDynCaller();\n if (typeof fp != \"function\") {\n throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);\n }\n return fp;\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function(message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== void 0) {\n this.stack = this.toString() + \"\\n\" + stack.replace(/^Error(:[^\\n]*)?\\n/, \"\");\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function() {\n if (this.message === void 0) {\n return this.name;\n } else {\n return `${this.name}: ${this.message}`;\n }\n };\n return errorClass;\n }\n var UnboundTypeError = void 0;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([\", \"]));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n rawPointerType >>>= 0;\n rawConstPointerType >>>= 0;\n baseClassRawType >>>= 0;\n getActualTypeSignature >>>= 0;\n getActualType >>>= 0;\n upcastSignature >>>= 0;\n upcast >>>= 0;\n downcastSignature >>>= 0;\n downcast >>>= 0;\n name >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function() {\n throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function(base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n } else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function() {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (registeredClass.constructor_body === void 0) {\n throw new BindingError(name + \" has no accessible constructor\");\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (body === void 0) {\n throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, { constructor: { value: constructor } });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n if (registeredClass.baseClass) {\n if (registeredClass.baseClass.__derivedClasses === void 0) {\n registeredClass.baseClass.__derivedClasses = [];\n }\n registeredClass.baseClass.__derivedClasses.push(registeredClass);\n }\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + \"*\", registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + \" const*\", registeredClass, false, true, false);\n registeredPointers[rawType] = { pointerType: pointerConverter, constPointerType: constPointerConverter };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(HEAPU32[firstElement + i * 4 >>> 2]);\n }\n return array;\n }\n function newFunc(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`);\n }\n var dummy = createNamedFunction(constructor.name || \"unknownFunctionName\", function() {\n });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === void 0) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== \"void\";\n var argsList = \"\";\n var argsListWired = \"\";\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? \", \" : \"\") + \"arg\" + i;\n argsListWired += (i !== 0 ? \", \" : \"\") + \"arg\" + i + \"Wired\";\n }\n var invokerFnBody = `\n return function ${makeLegalFunctionName(humanName)}(${argsList}) {\n if (arguments.length !== ${argCount - 2}) {\n throwBindingError('function ${humanName} called with ${arguments.length} arguments, expected ${argCount - 2} args!');\n }`;\n if (needsDestructorStack) {\n invokerFnBody += \"var destructors = [];\\n\";\n }\n var dtorStack = needsDestructorStack ? \"destructors\" : \"null\";\n var args1 = [\"throwBindingError\", \"invoker\", \"fn\", \"runDestructors\", \"retType\", \"classParam\"];\n var args2 = [throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, argTypes[0], argTypes[1]];\n if (isClassMethodFunc) {\n invokerFnBody += \"var thisWired = classParam.toWireType(\" + dtorStack + \", this);\\n\";\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody += \"var arg\" + i + \"Wired = argType\" + i + \".toWireType(\" + dtorStack + \", arg\" + i + \"); // \" + argTypes[i + 2].name + \"\\n\";\n args1.push(\"argType\" + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = \"thisWired\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired;\n }\n invokerFnBody += (returns || isAsync ? \"var rv = \" : \"\") + \"invoker(fn\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired + \");\\n\";\n if (needsDestructorStack) {\n invokerFnBody += \"runDestructors(destructors);\\n\";\n } else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? \"thisWired\" : \"arg\" + (i - 2) + \"Wired\";\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + \"_dtor(\" + paramName + \"); // \" + argTypes[i].name + \"\\n\";\n args1.push(paramName + \"_dtor\");\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += \"var ret = retType.fromWireType(rv);\\nreturn ret;\\n\";\n } else {\n }\n invokerFnBody += \"}\\n\";\n args1.push(invokerFnBody);\n return newFunc(Function, args1).apply(null, args2);\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n rawClassType >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n invoker >>>= 0;\n rawConstructor >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `constructor ${classType.name}`;\n if (classType.registeredClass.constructor_body === void 0) {\n classType.registeredClass.constructor_body = [];\n }\n if (classType.registeredClass.constructor_body[argCount - 1] !== void 0) {\n throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount - 1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);\n }\n classType.registeredClass.constructor_body[argCount - 1] = () => {\n throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`, rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n argTypes.splice(1, 0, null);\n classType.registeredClass.constructor_body[argCount - 1] = craftInvokerFunction(humanName, argTypes, null, invoker, rawConstructor);\n return [];\n });\n return [];\n });\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual, isAsync) {\n rawClassType >>>= 0;\n methodName >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n rawInvoker >>>= 0;\n context >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `${classType.name}.${methodName}`;\n if (methodName.startsWith(\"@@\")) {\n methodName = Symbol[methodName.substring(2)];\n }\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (method === void 0 || method.overloadTable === void 0 && method.className !== classType.name && method.argCount === argCount - 2) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n } else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync);\n if (proto[methodName].overloadTable === void 0) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n } else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n function handleAllocatorInit() {\n Object.assign(HandleAllocator.prototype, { get(id) {\n return this.allocated[id];\n }, has(id) {\n return this.allocated[id] !== void 0;\n }, allocate(handle) {\n var id = this.freelist.pop() || this.allocated.length;\n this.allocated[id] = handle;\n return id;\n }, free(id) {\n this.allocated[id] = void 0;\n this.freelist.push(id);\n } });\n }\n function HandleAllocator() {\n this.allocated = [void 0];\n this.freelist = [];\n }\n var emval_handles = new HandleAllocator();\n function __emval_decref(handle) {\n handle >>>= 0;\n if (handle >= emval_handles.reserved && --emval_handles.get(handle).refcount === 0) {\n emval_handles.free(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {\n if (emval_handles.allocated[i] !== void 0) {\n ++count;\n }\n }\n return count;\n }\n function init_emval() {\n emval_handles.allocated.push({ value: void 0 }, { value: null }, { value: true }, { value: false });\n emval_handles.reserved = emval_handles.allocated.length;\n Module[\"count_emval_handles\"] = count_emval_handles;\n }\n var Emval = { toValue: (handle) => {\n if (!handle) {\n throwBindingError(\"Cannot use deleted val. handle = \" + handle);\n }\n return emval_handles.get(handle).value;\n }, toHandle: (value) => {\n switch (value) {\n case void 0:\n return 1;\n case null:\n return 2;\n case true:\n return 3;\n case false:\n return 4;\n default: {\n return emval_handles.allocate({ refcount: 1, value });\n }\n }\n } };\n function __embind_register_emval(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(handle) {\n var rv = Emval.toValue(handle);\n __emval_decref(handle);\n return rv;\n }, \"toWireType\": function(destructors, value) {\n return Emval.toHandle(value);\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: null });\n }\n function embindRepr(v) {\n if (v === null) {\n return \"null\";\n }\n var t = typeof v;\n if (t === \"object\" || t === \"array\" || t === \"function\") {\n return v.toString();\n } else {\n return \"\" + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function(pointer) {\n return this[\"fromWireType\"](HEAPF32[pointer >>> 2]);\n };\n case 3:\n return function(pointer) {\n return this[\"fromWireType\"](HEAPF64[pointer >>> 3]);\n };\n default:\n throw new TypeError(\"Unknown float type: \" + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(value) {\n return value;\n }, \"toWireType\": function(destructors, value) {\n return value;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": floatReadValueFromPointer(name, shift), destructorFunction: null });\n }\n function __embind_register_function(name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) {\n name >>>= 0;\n rawArgTypesAddr >>>= 0;\n signature >>>= 0;\n rawInvoker >>>= 0;\n fn >>>= 0;\n var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n name = readLatin1String(name);\n rawInvoker = embind__requireFunction(signature, rawInvoker);\n exposePublicSymbol(name, function() {\n throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes);\n }, argCount - 1);\n whenDependentTypesAreResolved([], argTypes, function(argTypes2) {\n var invokerArgsArray = [argTypes2[0], null].concat(argTypes2.slice(1));\n replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null, rawInvoker, fn, isAsync), argCount - 1);\n return [];\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed ? function readS8FromPointer(pointer) {\n return HEAP8[pointer >>> 0];\n } : function readU8FromPointer(pointer) {\n return HEAPU8[pointer >>> 0];\n };\n case 1:\n return signed ? function readS16FromPointer(pointer) {\n return HEAP16[pointer >>> 1];\n } : function readU16FromPointer(pointer) {\n return HEAPU16[pointer >>> 1];\n };\n case 2:\n return signed ? function readS32FromPointer(pointer) {\n return HEAP32[pointer >>> 2];\n } : function readU32FromPointer(pointer) {\n return HEAPU32[pointer >>> 2];\n };\n default:\n throw new TypeError(\"Unknown integer type: \" + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = (value) => value;\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = (value) => value << bitshift >>> bitshift;\n }\n var isUnsignedType = name.includes(\"unsigned\");\n var checkAssertions = (value, toTypeName) => {\n };\n var toWireType;\n if (isUnsignedType) {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value >>> 0;\n };\n } else {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value;\n };\n }\n registerType(primitiveType, { name, \"fromWireType\": fromWireType, \"toWireType\": toWireType, \"argPackAdvance\": 8, \"readValueFromPointer\": integerReadValueFromPointer(name, shift, minRange !== 0), destructorFunction: null });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n rawType >>>= 0;\n name >>>= 0;\n var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = HEAPU32;\n var size = heap[handle >>> 0];\n var data = heap[handle + 1 >>> 0];\n return new TA(heap.buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": decodeMemoryView, \"argPackAdvance\": 8, \"readValueFromPointer\": decodeMemoryView }, { ignoreDuplicateRegistrations: true });\n }\n var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {\n outIdx >>>= 0;\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = 65536 + ((u & 1023) << 10) | u1 & 1023;\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++ >>> 0] = u;\n } else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 192 | u >> 6;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 224 | u >> 12;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 240 | u >> 18;\n heap[outIdx++ >>> 0] = 128 | u >> 12 & 63;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n }\n }\n heap[outIdx >>> 0] = 0;\n return outIdx - startIdx;\n };\n var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);\n var lengthBytesUTF8 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var c = str.charCodeAt(i);\n if (c <= 127) {\n len++;\n } else if (c <= 2047) {\n len += 2;\n } else if (c >= 55296 && c <= 57343) {\n len += 4;\n ++i;\n } else {\n len += 3;\n }\n }\n return len;\n };\n var UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => {\n idx >>>= 0;\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n var str = \"\";\n while (idx < endPtr) {\n var u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n var u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n };\n var UTF8ToString = (ptr, maxBytesToRead) => {\n ptr >>>= 0;\n return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : \"\";\n };\n function __embind_register_std_string(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === \"std::string\";\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = HEAPU32[value >>> 2];\n var payload = value + 4;\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = payload;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = payload + i;\n if (i == length || HEAPU8[currentBytePtr >>> 0] == 0) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n } else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(HEAPU8[payload + i >>> 0]);\n }\n str = a.join(\"\");\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var length;\n var valueIsOfTypeString = typeof value == \"string\";\n if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {\n throwBindingError(\"Cannot pass non-string to std::string\");\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n length = lengthBytesUTF8(value);\n } else {\n length = value.length;\n }\n var base = _malloc(4 + length + 1);\n var ptr = base + 4;\n HEAPU32[base >>> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr, length + 1);\n } else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError(\"String has UTF-16 code units that do not fit in 8 bits\");\n }\n HEAPU8[ptr + i >>> 0] = charCode;\n }\n } else {\n for (var i = 0; i < length; ++i) {\n HEAPU8[ptr + i >>> 0] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, base);\n }\n return base;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n }\n var UTF16Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf-16le\") : void 0;\n var UTF16ToString = (ptr, maxBytesToRead) => {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && HEAPU16[idx >>> 0])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder)\n return UTF16Decoder.decode(HEAPU8.subarray(ptr >>> 0, endPtr >>> 0));\n var str = \"\";\n for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {\n var codeUnit = HEAP16[ptr + i * 2 >>> 1];\n if (codeUnit == 0)\n break;\n str += String.fromCharCode(codeUnit);\n }\n return str;\n };\n var stringToUTF16 = (str, outPtr, maxBytesToWrite) => {\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n HEAP16[outPtr >>> 1] = codeUnit;\n outPtr += 2;\n }\n HEAP16[outPtr >>> 1] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF16 = (str) => str.length * 2;\n var UTF32ToString = (ptr, maxBytesToRead) => {\n var i = 0;\n var str = \"\";\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = HEAP32[ptr + i * 4 >>> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n } else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n };\n var stringToUTF32 = (str, outPtr, maxBytesToWrite) => {\n outPtr >>>= 0;\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023;\n }\n HEAP32[outPtr >>> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n HEAP32[outPtr >>> 2] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF32 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n };\n var __embind_register_std_wstring = function(rawType, charSize, name) {\n rawType >>>= 0;\n charSize >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = () => HEAPU16;\n shift = 1;\n } else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = () => HEAPU32;\n shift = 2;\n }\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = HEAPU32[value >>> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (i == length || HEAP[currentBytePtr >>> shift] == 0) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (!(typeof value == \"string\")) {\n throwBindingError(`Cannot pass non-string to C++ string type ${name}`);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n HEAPU32[ptr >>> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n };\n function __embind_register_value_array(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n tupleRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), elements: [] };\n }\n function __embind_register_value_array_element(rawTupleType, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n rawTupleType >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n tupleRegistrations[rawTupleType].elements.push({ getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_value_object(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n structRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), fields: [] };\n }\n function __embind_register_value_object_field(structType, fieldName, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n structType >>>= 0;\n fieldName >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n structRegistrations[structType].fields.push({ fieldName: readLatin1String(fieldName), getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_void(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { isVoid: true, name, \"argPackAdvance\": 0, \"fromWireType\": function() {\n return void 0;\n }, \"toWireType\": function(destructors, o) {\n return void 0;\n } });\n }\n var nowIsMonotonic = true;\n var __emscripten_get_now_is_monotonic = () => nowIsMonotonic;\n function requireRegisteredType(rawType, humanName) {\n var impl = registeredTypes[rawType];\n if (impl === void 0) {\n throwBindingError(humanName + \" has unknown type \" + getTypeName(rawType));\n }\n return impl;\n }\n function __emval_as(handle, returnType, destructorsRef) {\n handle >>>= 0;\n returnType >>>= 0;\n destructorsRef >>>= 0;\n handle = Emval.toValue(handle);\n returnType = requireRegisteredType(returnType, \"emval::as\");\n var destructors = [];\n var rd = Emval.toHandle(destructors);\n HEAPU32[destructorsRef >>> 2] = rd;\n return returnType[\"toWireType\"](destructors, handle);\n }\n function emval_lookupTypes(argCount, argTypes) {\n var a = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n a[i] = requireRegisteredType(HEAPU32[argTypes + i * 4 >>> 2], \"parameter \" + i);\n }\n return a;\n }\n function __emval_call(handle, argCount, argTypes, argv) {\n handle >>>= 0;\n argTypes >>>= 0;\n argv >>>= 0;\n handle = Emval.toValue(handle);\n var types = emval_lookupTypes(argCount, argTypes);\n var args = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n var type = types[i];\n args[i] = type[\"readValueFromPointer\"](argv);\n argv += type[\"argPackAdvance\"];\n }\n var rv = handle.apply(void 0, args);\n return Emval.toHandle(rv);\n }\n var emval_symbols = {};\n function getStringOrSymbol(address) {\n var symbol = emval_symbols[address];\n if (symbol === void 0) {\n return readLatin1String(address);\n }\n return symbol;\n }\n function emval_get_global() {\n if (typeof globalThis == \"object\") {\n return globalThis;\n }\n return function() {\n return Function;\n }()(\"return this\")();\n }\n function __emval_get_global(name) {\n name >>>= 0;\n if (name === 0) {\n return Emval.toHandle(emval_get_global());\n } else {\n name = getStringOrSymbol(name);\n return Emval.toHandle(emval_get_global()[name]);\n }\n }\n function __emval_get_property(handle, key) {\n handle >>>= 0;\n key >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n return Emval.toHandle(handle[key]);\n }\n function __emval_incref(handle) {\n handle >>>= 0;\n if (handle > 4) {\n emval_handles.get(handle).refcount += 1;\n }\n }\n function __emval_instanceof(object, constructor) {\n object >>>= 0;\n constructor >>>= 0;\n object = Emval.toValue(object);\n constructor = Emval.toValue(constructor);\n return object instanceof constructor;\n }\n function __emval_is_number(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"number\";\n }\n function __emval_is_string(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"string\";\n }\n function __emval_new_array() {\n return Emval.toHandle([]);\n }\n function __emval_new_cstring(v) {\n v >>>= 0;\n return Emval.toHandle(getStringOrSymbol(v));\n }\n function __emval_new_object() {\n return Emval.toHandle({});\n }\n function __emval_run_destructors(handle) {\n handle >>>= 0;\n var destructors = Emval.toValue(handle);\n runDestructors(destructors);\n __emval_decref(handle);\n }\n function __emval_set_property(handle, key, value) {\n handle >>>= 0;\n key >>>= 0;\n value >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n value = Emval.toValue(value);\n handle[key] = value;\n }\n function __emval_take_value(type, arg) {\n type >>>= 0;\n arg >>>= 0;\n type = requireRegisteredType(type, \"_emval_take_value\");\n var v = type[\"readValueFromPointer\"](arg);\n return Emval.toHandle(v);\n }\n function __gmtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n HEAP32[tmPtr >>> 2] = date.getUTCSeconds();\n HEAP32[tmPtr + 4 >>> 2] = date.getUTCMinutes();\n HEAP32[tmPtr + 8 >>> 2] = date.getUTCHours();\n HEAP32[tmPtr + 12 >>> 2] = date.getUTCDate();\n HEAP32[tmPtr + 16 >>> 2] = date.getUTCMonth();\n HEAP32[tmPtr + 20 >>> 2] = date.getUTCFullYear() - 1900;\n HEAP32[tmPtr + 24 >>> 2] = date.getUTCDay();\n var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);\n var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;\n HEAP32[tmPtr + 28 >>> 2] = yday;\n }\n var isLeapYear = (year) => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n var MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n var MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];\n var ydayFromDate = (date) => {\n var leap = isLeapYear(date.getFullYear());\n var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE;\n var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1;\n return yday;\n };\n function __localtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n HEAP32[tmPtr >>> 2] = date.getSeconds();\n HEAP32[tmPtr + 4 >>> 2] = date.getMinutes();\n HEAP32[tmPtr + 8 >>> 2] = date.getHours();\n HEAP32[tmPtr + 12 >>> 2] = date.getDate();\n HEAP32[tmPtr + 16 >>> 2] = date.getMonth();\n HEAP32[tmPtr + 20 >>> 2] = date.getFullYear() - 1900;\n HEAP32[tmPtr + 24 >>> 2] = date.getDay();\n var yday = ydayFromDate(date) | 0;\n HEAP32[tmPtr + 28 >>> 2] = yday;\n HEAP32[tmPtr + 36 >>> 2] = -(date.getTimezoneOffset() * 60);\n var start = new Date(date.getFullYear(), 0, 1);\n var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset();\n var winterOffset = start.getTimezoneOffset();\n var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;\n HEAP32[tmPtr + 32 >>> 2] = dst;\n }\n var stringToNewUTF8 = (str) => {\n var size = lengthBytesUTF8(str) + 1;\n var ret = _malloc(size);\n if (ret)\n stringToUTF8(str, ret, size);\n return ret;\n };\n function __tzset_js(timezone, daylight, tzname) {\n timezone >>>= 0;\n daylight >>>= 0;\n tzname >>>= 0;\n var currentYear = new Date().getFullYear();\n var winter = new Date(currentYear, 0, 1);\n var summer = new Date(currentYear, 6, 1);\n var winterOffset = winter.getTimezoneOffset();\n var summerOffset = summer.getTimezoneOffset();\n var stdTimezoneOffset = Math.max(winterOffset, summerOffset);\n HEAPU32[timezone >>> 2] = stdTimezoneOffset * 60;\n HEAP32[daylight >>> 2] = Number(winterOffset != summerOffset);\n function extractZone(date) {\n var match = date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);\n return match ? match[1] : \"GMT\";\n }\n var winterName = extractZone(winter);\n var summerName = extractZone(summer);\n var winterNamePtr = stringToNewUTF8(winterName);\n var summerNamePtr = stringToNewUTF8(summerName);\n if (summerOffset < winterOffset) {\n HEAPU32[tzname >>> 2] = winterNamePtr;\n HEAPU32[tzname + 4 >>> 2] = summerNamePtr;\n } else {\n HEAPU32[tzname >>> 2] = summerNamePtr;\n HEAPU32[tzname + 4 >>> 2] = winterNamePtr;\n }\n }\n var _abort = () => {\n abort(\"\");\n };\n function _emscripten_date_now() {\n return Date.now();\n }\n var _emscripten_get_now;\n _emscripten_get_now = () => performance.now();\n function _emscripten_memcpy_big(dest, src, num) {\n dest >>>= 0;\n src >>>= 0;\n num >>>= 0;\n return HEAPU8.copyWithin(dest >>> 0, src >>> 0, src + num >>> 0);\n }\n var getHeapMax = () => 4294901760;\n var growMemory = (size) => {\n var b = wasmMemory.buffer;\n var pages = size - b.byteLength + 65535 >>> 16;\n try {\n wasmMemory.grow(pages);\n updateMemoryViews();\n return 1;\n } catch (e) {\n }\n };\n function _emscripten_resize_heap(requestedSize) {\n requestedSize >>>= 0;\n var oldSize = HEAPU8.length;\n var maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize) {\n return false;\n }\n var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\n for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {\n var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n var replacement = growMemory(newSize);\n if (replacement) {\n return true;\n }\n }\n return false;\n }\n var ENV = {};\n var getExecutableName = () => thisProgram || \"./this.program\";\n var getEnvStrings = () => {\n if (!getEnvStrings.strings) {\n var lang = (typeof navigator == \"object\" && navigator.languages && navigator.languages[0] || \"C\").replace(\"-\", \"_\") + \".UTF-8\";\n var env = { \"USER\": \"web_user\", \"LOGNAME\": \"web_user\", \"PATH\": \"/\", \"PWD\": \"/\", \"HOME\": \"/home/web_user\", \"LANG\": lang, \"_\": getExecutableName() };\n for (var x in ENV) {\n if (ENV[x] === void 0)\n delete env[x];\n else\n env[x] = ENV[x];\n }\n var strings = [];\n for (var x in env) {\n strings.push(`${x}=${env[x]}`);\n }\n getEnvStrings.strings = strings;\n }\n return getEnvStrings.strings;\n };\n var stringToAscii = (str, buffer) => {\n for (var i = 0; i < str.length; ++i) {\n HEAP8[buffer++ >>> 0] = str.charCodeAt(i);\n }\n HEAP8[buffer >>> 0] = 0;\n };\n var PATH = { isAbs: (path) => path.charAt(0) === \"/\", splitPath: (filename) => {\n var splitPathRe = /^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/;\n return splitPathRe.exec(filename).slice(1);\n }, normalizeArray: (parts, allowAboveRoot) => {\n var up = 0;\n for (var i = parts.length - 1; i >= 0; i--) {\n var last = parts[i];\n if (last === \".\") {\n parts.splice(i, 1);\n } else if (last === \"..\") {\n parts.splice(i, 1);\n up++;\n } else if (up) {\n parts.splice(i, 1);\n up--;\n }\n }\n if (allowAboveRoot) {\n for (; up; up--) {\n parts.unshift(\"..\");\n }\n }\n return parts;\n }, normalize: (path) => {\n var isAbsolute = PATH.isAbs(path), trailingSlash = path.substr(-1) === \"/\";\n path = PATH.normalizeArray(path.split(\"/\").filter((p) => !!p), !isAbsolute).join(\"/\");\n if (!path && !isAbsolute) {\n path = \".\";\n }\n if (path && trailingSlash) {\n path += \"/\";\n }\n return (isAbsolute ? \"/\" : \"\") + path;\n }, dirname: (path) => {\n var result = PATH.splitPath(path), root = result[0], dir = result[1];\n if (!root && !dir) {\n return \".\";\n }\n if (dir) {\n dir = dir.substr(0, dir.length - 1);\n }\n return root + dir;\n }, basename: (path) => {\n if (path === \"/\")\n return \"/\";\n path = PATH.normalize(path);\n path = path.replace(/\\/$/, \"\");\n var lastSlash = path.lastIndexOf(\"/\");\n if (lastSlash === -1)\n return path;\n return path.substr(lastSlash + 1);\n }, join: function() {\n var paths = Array.prototype.slice.call(arguments);\n return PATH.normalize(paths.join(\"/\"));\n }, join2: (l, r) => PATH.normalize(l + \"/\" + r) };\n var initRandomFill = () => {\n if (typeof crypto == \"object\" && typeof crypto[\"getRandomValues\"] == \"function\") {\n return (view) => crypto.getRandomValues(view);\n } else\n abort(\"initRandomDevice\");\n };\n var randomFill = (view) => (randomFill = initRandomFill())(view);\n var PATH_FS = { resolve: function() {\n var resolvedPath = \"\", resolvedAbsolute = false;\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path = i >= 0 ? arguments[i] : FS.cwd();\n if (typeof path != \"string\") {\n throw new TypeError(\"Arguments to path.resolve must be strings\");\n } else if (!path) {\n return \"\";\n }\n resolvedPath = path + \"/\" + resolvedPath;\n resolvedAbsolute = PATH.isAbs(path);\n }\n resolvedPath = PATH.normalizeArray(resolvedPath.split(\"/\").filter((p) => !!p), !resolvedAbsolute).join(\"/\");\n return (resolvedAbsolute ? \"/\" : \"\") + resolvedPath || \".\";\n }, relative: (from, to) => {\n from = PATH_FS.resolve(from).substr(1);\n to = PATH_FS.resolve(to).substr(1);\n function trim(arr) {\n var start = 0;\n for (; start < arr.length; start++) {\n if (arr[start] !== \"\")\n break;\n }\n var end = arr.length - 1;\n for (; end >= 0; end--) {\n if (arr[end] !== \"\")\n break;\n }\n if (start > end)\n return [];\n return arr.slice(start, end - start + 1);\n }\n var fromParts = trim(from.split(\"/\"));\n var toParts = trim(to.split(\"/\"));\n var length = Math.min(fromParts.length, toParts.length);\n var samePartsLength = length;\n for (var i = 0; i < length; i++) {\n if (fromParts[i] !== toParts[i]) {\n samePartsLength = i;\n break;\n }\n }\n var outputParts = [];\n for (var i = samePartsLength; i < fromParts.length; i++) {\n outputParts.push(\"..\");\n }\n outputParts = outputParts.concat(toParts.slice(samePartsLength));\n return outputParts.join(\"/\");\n } };\n var FS_stdin_getChar_buffer = [];\n function intArrayFromString(stringy, dontAddNull, length) {\n var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;\n var u8array = new Array(len);\n var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);\n if (dontAddNull)\n u8array.length = numBytesWritten;\n return u8array;\n }\n var FS_stdin_getChar = () => {\n if (!FS_stdin_getChar_buffer.length) {\n var result = null;\n if (typeof window != \"undefined\" && typeof window.prompt == \"function\") {\n result = window.prompt(\"Input: \");\n if (result !== null) {\n result += \"\\n\";\n }\n } else if (typeof readline == \"function\") {\n result = readline();\n if (result !== null) {\n result += \"\\n\";\n }\n }\n if (!result) {\n return null;\n }\n FS_stdin_getChar_buffer = intArrayFromString(result, true);\n }\n return FS_stdin_getChar_buffer.shift();\n };\n var TTY = { ttys: [], init: function() {\n }, shutdown: function() {\n }, register: function(dev, ops) {\n TTY.ttys[dev] = { input: [], output: [], ops };\n FS.registerDevice(dev, TTY.stream_ops);\n }, stream_ops: { open: function(stream) {\n var tty = TTY.ttys[stream.node.rdev];\n if (!tty) {\n throw new FS.ErrnoError(43);\n }\n stream.tty = tty;\n stream.seekable = false;\n }, close: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, fsync: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, read: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.get_char) {\n throw new FS.ErrnoError(60);\n }\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = stream.tty.ops.get_char(stream.tty);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.put_char) {\n throw new FS.ErrnoError(60);\n }\n try {\n for (var i = 0; i < length; i++) {\n stream.tty.ops.put_char(stream.tty, buffer[offset + i]);\n }\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } }, default_tty_ops: { get_char: function(tty) {\n return FS_stdin_getChar();\n }, put_char: function(tty, val) {\n if (val === null || val === 10) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n }, ioctl_tcgets: function(tty) {\n return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };\n }, ioctl_tcsets: function(tty, optional_actions, data) {\n return 0;\n }, ioctl_tiocgwinsz: function(tty) {\n return [24, 80];\n } }, default_tty1_ops: { put_char: function(tty, val) {\n if (val === null || val === 10) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n } } };\n var mmapAlloc = (size) => {\n abort();\n };\n var MEMFS = { ops_table: null, mount(mount) {\n return MEMFS.createNode(null, \"/\", 16384 | 511, 0);\n }, createNode(parent, name, mode, dev) {\n if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {\n throw new FS.ErrnoError(63);\n }\n if (!MEMFS.ops_table) {\n MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } };\n }\n var node = FS.createNode(parent, name, mode, dev);\n if (FS.isDir(node.mode)) {\n node.node_ops = MEMFS.ops_table.dir.node;\n node.stream_ops = MEMFS.ops_table.dir.stream;\n node.contents = {};\n } else if (FS.isFile(node.mode)) {\n node.node_ops = MEMFS.ops_table.file.node;\n node.stream_ops = MEMFS.ops_table.file.stream;\n node.usedBytes = 0;\n node.contents = null;\n } else if (FS.isLink(node.mode)) {\n node.node_ops = MEMFS.ops_table.link.node;\n node.stream_ops = MEMFS.ops_table.link.stream;\n } else if (FS.isChrdev(node.mode)) {\n node.node_ops = MEMFS.ops_table.chrdev.node;\n node.stream_ops = MEMFS.ops_table.chrdev.stream;\n }\n node.timestamp = Date.now();\n if (parent) {\n parent.contents[name] = node;\n parent.timestamp = node.timestamp;\n }\n return node;\n }, getFileDataAsTypedArray(node) {\n if (!node.contents)\n return new Uint8Array(0);\n if (node.contents.subarray)\n return node.contents.subarray(0, node.usedBytes);\n return new Uint8Array(node.contents);\n }, expandFileStorage(node, newCapacity) {\n var prevCapacity = node.contents ? node.contents.length : 0;\n if (prevCapacity >= newCapacity)\n return;\n var CAPACITY_DOUBLING_MAX = 1024 * 1024;\n newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0);\n if (prevCapacity != 0)\n newCapacity = Math.max(newCapacity, 256);\n var oldContents = node.contents;\n node.contents = new Uint8Array(newCapacity);\n if (node.usedBytes > 0)\n node.contents.set(oldContents.subarray(0, node.usedBytes), 0);\n }, resizeFileStorage(node, newSize) {\n if (node.usedBytes == newSize)\n return;\n if (newSize == 0) {\n node.contents = null;\n node.usedBytes = 0;\n } else {\n var oldContents = node.contents;\n node.contents = new Uint8Array(newSize);\n if (oldContents) {\n node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));\n }\n node.usedBytes = newSize;\n }\n }, node_ops: { getattr(node) {\n var attr = {};\n attr.dev = FS.isChrdev(node.mode) ? node.id : 1;\n attr.ino = node.id;\n attr.mode = node.mode;\n attr.nlink = 1;\n attr.uid = 0;\n attr.gid = 0;\n attr.rdev = node.rdev;\n if (FS.isDir(node.mode)) {\n attr.size = 4096;\n } else if (FS.isFile(node.mode)) {\n attr.size = node.usedBytes;\n } else if (FS.isLink(node.mode)) {\n attr.size = node.link.length;\n } else {\n attr.size = 0;\n }\n attr.atime = new Date(node.timestamp);\n attr.mtime = new Date(node.timestamp);\n attr.ctime = new Date(node.timestamp);\n attr.blksize = 4096;\n attr.blocks = Math.ceil(attr.size / attr.blksize);\n return attr;\n }, setattr(node, attr) {\n if (attr.mode !== void 0) {\n node.mode = attr.mode;\n }\n if (attr.timestamp !== void 0) {\n node.timestamp = attr.timestamp;\n }\n if (attr.size !== void 0) {\n MEMFS.resizeFileStorage(node, attr.size);\n }\n }, lookup(parent, name) {\n throw FS.genericErrors[44];\n }, mknod(parent, name, mode, dev) {\n return MEMFS.createNode(parent, name, mode, dev);\n }, rename(old_node, new_dir, new_name) {\n if (FS.isDir(old_node.mode)) {\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (new_node) {\n for (var i in new_node.contents) {\n throw new FS.ErrnoError(55);\n }\n }\n }\n delete old_node.parent.contents[old_node.name];\n old_node.parent.timestamp = Date.now();\n old_node.name = new_name;\n new_dir.contents[new_name] = old_node;\n new_dir.timestamp = old_node.parent.timestamp;\n old_node.parent = new_dir;\n }, unlink(parent, name) {\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, rmdir(parent, name) {\n var node = FS.lookupNode(parent, name);\n for (var i in node.contents) {\n throw new FS.ErrnoError(55);\n }\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, readdir(node) {\n var entries = [\".\", \"..\"];\n for (var key in node.contents) {\n if (!node.contents.hasOwnProperty(key)) {\n continue;\n }\n entries.push(key);\n }\n return entries;\n }, symlink(parent, newname, oldpath) {\n var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);\n node.link = oldpath;\n return node;\n }, readlink(node) {\n if (!FS.isLink(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n return node.link;\n } }, stream_ops: { read(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= stream.node.usedBytes)\n return 0;\n var size = Math.min(stream.node.usedBytes - position, length);\n if (size > 8 && contents.subarray) {\n buffer.set(contents.subarray(position, position + size), offset);\n } else {\n for (var i = 0; i < size; i++)\n buffer[offset + i] = contents[position + i];\n }\n return size;\n }, write(stream, buffer, offset, length, position, canOwn) {\n if (buffer.buffer === HEAP8.buffer) {\n canOwn = false;\n }\n if (!length)\n return 0;\n var node = stream.node;\n node.timestamp = Date.now();\n if (buffer.subarray && (!node.contents || node.contents.subarray)) {\n if (canOwn) {\n node.contents = buffer.subarray(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (node.usedBytes === 0 && position === 0) {\n node.contents = buffer.slice(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (position + length <= node.usedBytes) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n return length;\n }\n }\n MEMFS.expandFileStorage(node, position + length);\n if (node.contents.subarray && buffer.subarray) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n } else {\n for (var i = 0; i < length; i++) {\n node.contents[position + i] = buffer[offset + i];\n }\n }\n node.usedBytes = Math.max(node.usedBytes, position + length);\n return length;\n }, llseek(stream, offset, whence) {\n var position = offset;\n if (whence === 1) {\n position += stream.position;\n } else if (whence === 2) {\n if (FS.isFile(stream.node.mode)) {\n position += stream.node.usedBytes;\n }\n }\n if (position < 0) {\n throw new FS.ErrnoError(28);\n }\n return position;\n }, allocate(stream, offset, length) {\n MEMFS.expandFileStorage(stream.node, offset + length);\n stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);\n }, mmap(stream, length, position, prot, flags) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n var ptr;\n var allocated;\n var contents = stream.node.contents;\n if (!(flags & 2) && contents.buffer === HEAP8.buffer) {\n allocated = false;\n ptr = contents.byteOffset;\n } else {\n if (position > 0 || position + length < contents.length) {\n if (contents.subarray) {\n contents = contents.subarray(position, position + length);\n } else {\n contents = Array.prototype.slice.call(contents, position, position + length);\n }\n }\n allocated = true;\n ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n HEAP8.set(contents, ptr >>> 0);\n }\n return { ptr, allocated };\n }, msync(stream, buffer, offset, length, mmapFlags) {\n MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);\n return 0;\n } } };\n var asyncLoad = (url, onload, onerror, noRunDep) => {\n var dep = !noRunDep ? getUniqueRunDependency(`al ${url}`) : \"\";\n readAsync(url, (arrayBuffer) => {\n assert(arrayBuffer, `Loading data file \"${url}\" failed (no arrayBuffer).`);\n onload(new Uint8Array(arrayBuffer));\n if (dep)\n removeRunDependency(dep);\n }, (event) => {\n if (onerror) {\n onerror();\n } else {\n throw `Loading data file \"${url}\" failed.`;\n }\n });\n if (dep)\n addRunDependency(dep);\n };\n var preloadPlugins = Module[\"preloadPlugins\"] || [];\n function FS_handledByPreloadPlugin(byteArray, fullname, finish, onerror) {\n if (typeof Browser != \"undefined\")\n Browser.init();\n var handled = false;\n preloadPlugins.forEach(function(plugin) {\n if (handled)\n return;\n if (plugin[\"canHandle\"](fullname)) {\n plugin[\"handle\"](byteArray, fullname, finish, onerror);\n handled = true;\n }\n });\n return handled;\n }\n function FS_createPreloadedFile(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {\n var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent;\n var dep = getUniqueRunDependency(`cp ${fullname}`);\n function processData(byteArray) {\n function finish(byteArray2) {\n if (preFinish)\n preFinish();\n if (!dontCreateFile) {\n FS.createDataFile(parent, name, byteArray2, canRead, canWrite, canOwn);\n }\n if (onload)\n onload();\n removeRunDependency(dep);\n }\n if (FS_handledByPreloadPlugin(byteArray, fullname, finish, () => {\n if (onerror)\n onerror();\n removeRunDependency(dep);\n })) {\n return;\n }\n finish(byteArray);\n }\n addRunDependency(dep);\n if (typeof url == \"string\") {\n asyncLoad(url, (byteArray) => processData(byteArray), onerror);\n } else {\n processData(url);\n }\n }\n function FS_modeStringToFlags(str) {\n var flagModes = { \"r\": 0, \"r+\": 2, \"w\": 512 | 64 | 1, \"w+\": 512 | 64 | 2, \"a\": 1024 | 64 | 1, \"a+\": 1024 | 64 | 2 };\n var flags = flagModes[str];\n if (typeof flags == \"undefined\") {\n throw new Error(`Unknown file open mode: ${str}`);\n }\n return flags;\n }\n function FS_getMode(canRead, canWrite) {\n var mode = 0;\n if (canRead)\n mode |= 292 | 73;\n if (canWrite)\n mode |= 146;\n return mode;\n }\n var FS = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: \"/\", initialized: false, ignorePermissions: true, ErrnoError: null, genericErrors: {}, filesystems: null, syncFSRequests: 0, lookupPath: (path, opts = {}) => {\n path = PATH_FS.resolve(path);\n if (!path)\n return { path: \"\", node: null };\n var defaults = { follow_mount: true, recurse_count: 0 };\n opts = Object.assign(defaults, opts);\n if (opts.recurse_count > 8) {\n throw new FS.ErrnoError(32);\n }\n var parts = path.split(\"/\").filter((p) => !!p);\n var current = FS.root;\n var current_path = \"/\";\n for (var i = 0; i < parts.length; i++) {\n var islast = i === parts.length - 1;\n if (islast && opts.parent) {\n break;\n }\n current = FS.lookupNode(current, parts[i]);\n current_path = PATH.join2(current_path, parts[i]);\n if (FS.isMountpoint(current)) {\n if (!islast || islast && opts.follow_mount) {\n current = current.mounted.root;\n }\n }\n if (!islast || opts.follow) {\n var count = 0;\n while (FS.isLink(current.mode)) {\n var link = FS.readlink(current_path);\n current_path = PATH_FS.resolve(PATH.dirname(current_path), link);\n var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count + 1 });\n current = lookup.node;\n if (count++ > 40) {\n throw new FS.ErrnoError(32);\n }\n }\n }\n }\n return { path: current_path, node: current };\n }, getPath: (node) => {\n var path;\n while (true) {\n if (FS.isRoot(node)) {\n var mount = node.mount.mountpoint;\n if (!path)\n return mount;\n return mount[mount.length - 1] !== \"/\" ? `${mount}/${path}` : mount + path;\n }\n path = path ? `${node.name}/${path}` : node.name;\n node = node.parent;\n }\n }, hashName: (parentid, name) => {\n var hash = 0;\n for (var i = 0; i < name.length; i++) {\n hash = (hash << 5) - hash + name.charCodeAt(i) | 0;\n }\n return (parentid + hash >>> 0) % FS.nameTable.length;\n }, hashAddNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n node.name_next = FS.nameTable[hash];\n FS.nameTable[hash] = node;\n }, hashRemoveNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n if (FS.nameTable[hash] === node) {\n FS.nameTable[hash] = node.name_next;\n } else {\n var current = FS.nameTable[hash];\n while (current) {\n if (current.name_next === node) {\n current.name_next = node.name_next;\n break;\n }\n current = current.name_next;\n }\n }\n }, lookupNode: (parent, name) => {\n var errCode = FS.mayLookup(parent);\n if (errCode) {\n throw new FS.ErrnoError(errCode, parent);\n }\n var hash = FS.hashName(parent.id, name);\n for (var node = FS.nameTable[hash]; node; node = node.name_next) {\n var nodeName = node.name;\n if (node.parent.id === parent.id && nodeName === name) {\n return node;\n }\n }\n return FS.lookup(parent, name);\n }, createNode: (parent, name, mode, rdev) => {\n var node = new FS.FSNode(parent, name, mode, rdev);\n FS.hashAddNode(node);\n return node;\n }, destroyNode: (node) => {\n FS.hashRemoveNode(node);\n }, isRoot: (node) => node === node.parent, isMountpoint: (node) => !!node.mounted, isFile: (mode) => (mode & 61440) === 32768, isDir: (mode) => (mode & 61440) === 16384, isLink: (mode) => (mode & 61440) === 40960, isChrdev: (mode) => (mode & 61440) === 8192, isBlkdev: (mode) => (mode & 61440) === 24576, isFIFO: (mode) => (mode & 61440) === 4096, isSocket: (mode) => (mode & 49152) === 49152, flagsToPermissionString: (flag) => {\n var perms = [\"r\", \"w\", \"rw\"][flag & 3];\n if (flag & 512) {\n perms += \"w\";\n }\n return perms;\n }, nodePermissions: (node, perms) => {\n if (FS.ignorePermissions) {\n return 0;\n }\n if (perms.includes(\"r\") && !(node.mode & 292)) {\n return 2;\n } else if (perms.includes(\"w\") && !(node.mode & 146)) {\n return 2;\n } else if (perms.includes(\"x\") && !(node.mode & 73)) {\n return 2;\n }\n return 0;\n }, mayLookup: (dir) => {\n var errCode = FS.nodePermissions(dir, \"x\");\n if (errCode)\n return errCode;\n if (!dir.node_ops.lookup)\n return 2;\n return 0;\n }, mayCreate: (dir, name) => {\n try {\n var node = FS.lookupNode(dir, name);\n return 20;\n } catch (e) {\n }\n return FS.nodePermissions(dir, \"wx\");\n }, mayDelete: (dir, name, isdir) => {\n var node;\n try {\n node = FS.lookupNode(dir, name);\n } catch (e) {\n return e.errno;\n }\n var errCode = FS.nodePermissions(dir, \"wx\");\n if (errCode) {\n return errCode;\n }\n if (isdir) {\n if (!FS.isDir(node.mode)) {\n return 54;\n }\n if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {\n return 10;\n }\n } else {\n if (FS.isDir(node.mode)) {\n return 31;\n }\n }\n return 0;\n }, mayOpen: (node, flags) => {\n if (!node) {\n return 44;\n }\n if (FS.isLink(node.mode)) {\n return 32;\n } else if (FS.isDir(node.mode)) {\n if (FS.flagsToPermissionString(flags) !== \"r\" || flags & 512) {\n return 31;\n }\n }\n return FS.nodePermissions(node, FS.flagsToPermissionString(flags));\n }, MAX_OPEN_FDS: 4096, nextfd: () => {\n for (var fd = 0; fd <= FS.MAX_OPEN_FDS; fd++) {\n if (!FS.streams[fd]) {\n return fd;\n }\n }\n throw new FS.ErrnoError(33);\n }, getStreamChecked: (fd) => {\n var stream = FS.getStream(fd);\n if (!stream) {\n throw new FS.ErrnoError(8);\n }\n return stream;\n }, getStream: (fd) => FS.streams[fd], createStream: (stream, fd = -1) => {\n if (!FS.FSStream) {\n FS.FSStream = function() {\n this.shared = {};\n };\n FS.FSStream.prototype = {};\n Object.defineProperties(FS.FSStream.prototype, { object: { get() {\n return this.node;\n }, set(val) {\n this.node = val;\n } }, isRead: { get() {\n return (this.flags & 2097155) !== 1;\n } }, isWrite: { get() {\n return (this.flags & 2097155) !== 0;\n } }, isAppend: { get() {\n return this.flags & 1024;\n } }, flags: { get() {\n return this.shared.flags;\n }, set(val) {\n this.shared.flags = val;\n } }, position: { get() {\n return this.shared.position;\n }, set(val) {\n this.shared.position = val;\n } } });\n }\n stream = Object.assign(new FS.FSStream(), stream);\n if (fd == -1) {\n fd = FS.nextfd();\n }\n stream.fd = fd;\n FS.streams[fd] = stream;\n return stream;\n }, closeStream: (fd) => {\n FS.streams[fd] = null;\n }, chrdev_stream_ops: { open: (stream) => {\n var device = FS.getDevice(stream.node.rdev);\n stream.stream_ops = device.stream_ops;\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n }, llseek: () => {\n throw new FS.ErrnoError(70);\n } }, major: (dev) => dev >> 8, minor: (dev) => dev & 255, makedev: (ma, mi) => ma << 8 | mi, registerDevice: (dev, ops) => {\n FS.devices[dev] = { stream_ops: ops };\n }, getDevice: (dev) => FS.devices[dev], getMounts: (mount) => {\n var mounts = [];\n var check = [mount];\n while (check.length) {\n var m = check.pop();\n mounts.push(m);\n check.push.apply(check, m.mounts);\n }\n return mounts;\n }, syncfs: (populate, callback) => {\n if (typeof populate == \"function\") {\n callback = populate;\n populate = false;\n }\n FS.syncFSRequests++;\n if (FS.syncFSRequests > 1) {\n err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);\n }\n var mounts = FS.getMounts(FS.root.mount);\n var completed = 0;\n function doCallback(errCode) {\n FS.syncFSRequests--;\n return callback(errCode);\n }\n function done(errCode) {\n if (errCode) {\n if (!done.errored) {\n done.errored = true;\n return doCallback(errCode);\n }\n return;\n }\n if (++completed >= mounts.length) {\n doCallback(null);\n }\n }\n mounts.forEach((mount) => {\n if (!mount.type.syncfs) {\n return done(null);\n }\n mount.type.syncfs(mount, populate, done);\n });\n }, mount: (type, opts, mountpoint) => {\n var root = mountpoint === \"/\";\n var pseudo = !mountpoint;\n var node;\n if (root && FS.root) {\n throw new FS.ErrnoError(10);\n } else if (!root && !pseudo) {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n mountpoint = lookup.path;\n node = lookup.node;\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n if (!FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n }\n var mount = { type, opts, mountpoint, mounts: [] };\n var mountRoot = type.mount(mount);\n mountRoot.mount = mount;\n mount.root = mountRoot;\n if (root) {\n FS.root = mountRoot;\n } else if (node) {\n node.mounted = mount;\n if (node.mount) {\n node.mount.mounts.push(mount);\n }\n }\n return mountRoot;\n }, unmount: (mountpoint) => {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n if (!FS.isMountpoint(lookup.node)) {\n throw new FS.ErrnoError(28);\n }\n var node = lookup.node;\n var mount = node.mounted;\n var mounts = FS.getMounts(mount);\n Object.keys(FS.nameTable).forEach((hash) => {\n var current = FS.nameTable[hash];\n while (current) {\n var next = current.name_next;\n if (mounts.includes(current.mount)) {\n FS.destroyNode(current);\n }\n current = next;\n }\n });\n node.mounted = null;\n var idx = node.mount.mounts.indexOf(mount);\n node.mount.mounts.splice(idx, 1);\n }, lookup: (parent, name) => parent.node_ops.lookup(parent, name), mknod: (path, mode, dev) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n if (!name || name === \".\" || name === \"..\") {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.mayCreate(parent, name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.mknod) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.mknod(parent, name, mode, dev);\n }, create: (path, mode) => {\n mode = mode !== void 0 ? mode : 438;\n mode &= 4095;\n mode |= 32768;\n return FS.mknod(path, mode, 0);\n }, mkdir: (path, mode) => {\n mode = mode !== void 0 ? mode : 511;\n mode &= 511 | 512;\n mode |= 16384;\n return FS.mknod(path, mode, 0);\n }, mkdirTree: (path, mode) => {\n var dirs = path.split(\"/\");\n var d = \"\";\n for (var i = 0; i < dirs.length; ++i) {\n if (!dirs[i])\n continue;\n d += \"/\" + dirs[i];\n try {\n FS.mkdir(d, mode);\n } catch (e) {\n if (e.errno != 20)\n throw e;\n }\n }\n }, mkdev: (path, mode, dev) => {\n if (typeof dev == \"undefined\") {\n dev = mode;\n mode = 438;\n }\n mode |= 8192;\n return FS.mknod(path, mode, dev);\n }, symlink: (oldpath, newpath) => {\n if (!PATH_FS.resolve(oldpath)) {\n throw new FS.ErrnoError(44);\n }\n var lookup = FS.lookupPath(newpath, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var newname = PATH.basename(newpath);\n var errCode = FS.mayCreate(parent, newname);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.symlink) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.symlink(parent, newname, oldpath);\n }, rename: (old_path, new_path) => {\n var old_dirname = PATH.dirname(old_path);\n var new_dirname = PATH.dirname(new_path);\n var old_name = PATH.basename(old_path);\n var new_name = PATH.basename(new_path);\n var lookup, old_dir, new_dir;\n lookup = FS.lookupPath(old_path, { parent: true });\n old_dir = lookup.node;\n lookup = FS.lookupPath(new_path, { parent: true });\n new_dir = lookup.node;\n if (!old_dir || !new_dir)\n throw new FS.ErrnoError(44);\n if (old_dir.mount !== new_dir.mount) {\n throw new FS.ErrnoError(75);\n }\n var old_node = FS.lookupNode(old_dir, old_name);\n var relative = PATH_FS.relative(old_path, new_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(28);\n }\n relative = PATH_FS.relative(new_path, old_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(55);\n }\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (old_node === new_node) {\n return;\n }\n var isdir = FS.isDir(old_node.mode);\n var errCode = FS.mayDelete(old_dir, old_name, isdir);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!old_dir.node_ops.rename) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {\n throw new FS.ErrnoError(10);\n }\n if (new_dir !== old_dir) {\n errCode = FS.nodePermissions(old_dir, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n FS.hashRemoveNode(old_node);\n try {\n old_dir.node_ops.rename(old_node, new_dir, new_name);\n } catch (e) {\n throw e;\n } finally {\n FS.hashAddNode(old_node);\n }\n }, rmdir: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, true);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.rmdir) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.rmdir(parent, name);\n FS.destroyNode(node);\n }, readdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n if (!node.node_ops.readdir) {\n throw new FS.ErrnoError(54);\n }\n return node.node_ops.readdir(node);\n }, unlink: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, false);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.unlink) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.unlink(parent, name);\n FS.destroyNode(node);\n }, readlink: (path) => {\n var lookup = FS.lookupPath(path);\n var link = lookup.node;\n if (!link) {\n throw new FS.ErrnoError(44);\n }\n if (!link.node_ops.readlink) {\n throw new FS.ErrnoError(28);\n }\n return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));\n }, stat: (path, dontFollow) => {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n var node = lookup.node;\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (!node.node_ops.getattr) {\n throw new FS.ErrnoError(63);\n }\n return node.node_ops.getattr(node);\n }, lstat: (path) => FS.stat(path, true), chmod: (path, mode, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { mode: mode & 4095 | node.mode & ~4095, timestamp: Date.now() });\n }, lchmod: (path, mode) => {\n FS.chmod(path, mode, true);\n }, fchmod: (fd, mode) => {\n var stream = FS.getStreamChecked(fd);\n FS.chmod(stream.node, mode);\n }, chown: (path, uid, gid, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { timestamp: Date.now() });\n }, lchown: (path, uid, gid) => {\n FS.chown(path, uid, gid, true);\n }, fchown: (fd, uid, gid) => {\n var stream = FS.getStreamChecked(fd);\n FS.chown(stream.node, uid, gid);\n }, truncate: (path, len) => {\n if (len < 0) {\n throw new FS.ErrnoError(28);\n }\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: true });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isDir(node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!FS.isFile(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.nodePermissions(node, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n node.node_ops.setattr(node, { size: len, timestamp: Date.now() });\n }, ftruncate: (fd, len) => {\n var stream = FS.getStreamChecked(fd);\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(28);\n }\n FS.truncate(stream.node, len);\n }, utime: (path, atime, mtime) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) });\n }, open: (path, flags, mode) => {\n if (path === \"\") {\n throw new FS.ErrnoError(44);\n }\n flags = typeof flags == \"string\" ? FS_modeStringToFlags(flags) : flags;\n mode = typeof mode == \"undefined\" ? 438 : mode;\n if (flags & 64) {\n mode = mode & 4095 | 32768;\n } else {\n mode = 0;\n }\n var node;\n if (typeof path == \"object\") {\n node = path;\n } else {\n path = PATH.normalize(path);\n try {\n var lookup = FS.lookupPath(path, { follow: !(flags & 131072) });\n node = lookup.node;\n } catch (e) {\n }\n }\n var created = false;\n if (flags & 64) {\n if (node) {\n if (flags & 128) {\n throw new FS.ErrnoError(20);\n }\n } else {\n node = FS.mknod(path, mode, 0);\n created = true;\n }\n }\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (FS.isChrdev(node.mode)) {\n flags &= ~512;\n }\n if (flags & 65536 && !FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n if (!created) {\n var errCode = FS.mayOpen(node, flags);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n if (flags & 512 && !created) {\n FS.truncate(node, 0);\n }\n flags &= ~(128 | 512 | 131072);\n var stream = FS.createStream({ node, path: FS.getPath(node), flags, seekable: true, position: 0, stream_ops: node.stream_ops, ungotten: [], error: false });\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n if (Module[\"logReadFiles\"] && !(flags & 1)) {\n if (!FS.readFiles)\n FS.readFiles = {};\n if (!(path in FS.readFiles)) {\n FS.readFiles[path] = 1;\n }\n }\n return stream;\n }, close: (stream) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (stream.getdents)\n stream.getdents = null;\n try {\n if (stream.stream_ops.close) {\n stream.stream_ops.close(stream);\n }\n } catch (e) {\n throw e;\n } finally {\n FS.closeStream(stream.fd);\n }\n stream.fd = null;\n }, isClosed: (stream) => stream.fd === null, llseek: (stream, offset, whence) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (!stream.seekable || !stream.stream_ops.llseek) {\n throw new FS.ErrnoError(70);\n }\n if (whence != 0 && whence != 1 && whence != 2) {\n throw new FS.ErrnoError(28);\n }\n stream.position = stream.stream_ops.llseek(stream, offset, whence);\n stream.ungotten = [];\n return stream.position;\n }, read: (stream, buffer, offset, length, position) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.read) {\n throw new FS.ErrnoError(28);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);\n if (!seeking)\n stream.position += bytesRead;\n return bytesRead;\n }, write: (stream, buffer, offset, length, position, canOwn) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.write) {\n throw new FS.ErrnoError(28);\n }\n if (stream.seekable && stream.flags & 1024) {\n FS.llseek(stream, 0, 2);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);\n if (!seeking)\n stream.position += bytesWritten;\n return bytesWritten;\n }, allocate: (stream, offset, length) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (offset < 0 || length <= 0) {\n throw new FS.ErrnoError(28);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (!stream.stream_ops.allocate) {\n throw new FS.ErrnoError(138);\n }\n stream.stream_ops.allocate(stream, offset, length);\n }, mmap: (stream, length, position, prot, flags) => {\n if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {\n throw new FS.ErrnoError(2);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(2);\n }\n if (!stream.stream_ops.mmap) {\n throw new FS.ErrnoError(43);\n }\n return stream.stream_ops.mmap(stream, length, position, prot, flags);\n }, msync: (stream, buffer, offset, length, mmapFlags) => {\n if (!stream.stream_ops.msync) {\n return 0;\n }\n return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);\n }, munmap: (stream) => 0, ioctl: (stream, cmd, arg) => {\n if (!stream.stream_ops.ioctl) {\n throw new FS.ErrnoError(59);\n }\n return stream.stream_ops.ioctl(stream, cmd, arg);\n }, readFile: (path, opts = {}) => {\n opts.flags = opts.flags || 0;\n opts.encoding = opts.encoding || \"binary\";\n if (opts.encoding !== \"utf8\" && opts.encoding !== \"binary\") {\n throw new Error(`Invalid encoding type \"${opts.encoding}\"`);\n }\n var ret;\n var stream = FS.open(path, opts.flags);\n var stat = FS.stat(path);\n var length = stat.size;\n var buf = new Uint8Array(length);\n FS.read(stream, buf, 0, length, 0);\n if (opts.encoding === \"utf8\") {\n ret = UTF8ArrayToString(buf, 0);\n } else if (opts.encoding === \"binary\") {\n ret = buf;\n }\n FS.close(stream);\n return ret;\n }, writeFile: (path, data, opts = {}) => {\n opts.flags = opts.flags || 577;\n var stream = FS.open(path, opts.flags, opts.mode);\n if (typeof data == \"string\") {\n var buf = new Uint8Array(lengthBytesUTF8(data) + 1);\n var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);\n FS.write(stream, buf, 0, actualNumBytes, void 0, opts.canOwn);\n } else if (ArrayBuffer.isView(data)) {\n FS.write(stream, data, 0, data.byteLength, void 0, opts.canOwn);\n } else {\n throw new Error(\"Unsupported data type\");\n }\n FS.close(stream);\n }, cwd: () => FS.currentPath, chdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n if (lookup.node === null) {\n throw new FS.ErrnoError(44);\n }\n if (!FS.isDir(lookup.node.mode)) {\n throw new FS.ErrnoError(54);\n }\n var errCode = FS.nodePermissions(lookup.node, \"x\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n FS.currentPath = lookup.path;\n }, createDefaultDirectories: () => {\n FS.mkdir(\"/tmp\");\n FS.mkdir(\"/home\");\n FS.mkdir(\"/home/web_user\");\n }, createDefaultDevices: () => {\n FS.mkdir(\"/dev\");\n FS.registerDevice(FS.makedev(1, 3), { read: () => 0, write: (stream, buffer, offset, length, pos) => length });\n FS.mkdev(\"/dev/null\", FS.makedev(1, 3));\n TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);\n TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);\n FS.mkdev(\"/dev/tty\", FS.makedev(5, 0));\n FS.mkdev(\"/dev/tty1\", FS.makedev(6, 0));\n var randomBuffer = new Uint8Array(1024), randomLeft = 0;\n var randomByte = () => {\n if (randomLeft === 0) {\n randomLeft = randomFill(randomBuffer).byteLength;\n }\n return randomBuffer[--randomLeft];\n };\n FS.createDevice(\"/dev\", \"random\", randomByte);\n FS.createDevice(\"/dev\", \"urandom\", randomByte);\n FS.mkdir(\"/dev/shm\");\n FS.mkdir(\"/dev/shm/tmp\");\n }, createSpecialDirectories: () => {\n FS.mkdir(\"/proc\");\n var proc_self = FS.mkdir(\"/proc/self\");\n FS.mkdir(\"/proc/self/fd\");\n FS.mount({ mount: () => {\n var node = FS.createNode(proc_self, \"fd\", 16384 | 511, 73);\n node.node_ops = { lookup: (parent, name) => {\n var fd = +name;\n var stream = FS.getStreamChecked(fd);\n var ret = { parent: null, mount: { mountpoint: \"fake\" }, node_ops: { readlink: () => stream.path } };\n ret.parent = ret;\n return ret;\n } };\n return node;\n } }, {}, \"/proc/self/fd\");\n }, createStandardStreams: () => {\n if (Module[\"stdin\"]) {\n FS.createDevice(\"/dev\", \"stdin\", Module[\"stdin\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdin\");\n }\n if (Module[\"stdout\"]) {\n FS.createDevice(\"/dev\", \"stdout\", null, Module[\"stdout\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdout\");\n }\n if (Module[\"stderr\"]) {\n FS.createDevice(\"/dev\", \"stderr\", null, Module[\"stderr\"]);\n } else {\n FS.symlink(\"/dev/tty1\", \"/dev/stderr\");\n }\n var stdin = FS.open(\"/dev/stdin\", 0);\n var stdout = FS.open(\"/dev/stdout\", 1);\n var stderr = FS.open(\"/dev/stderr\", 1);\n }, ensureErrnoError: () => {\n if (FS.ErrnoError)\n return;\n FS.ErrnoError = function ErrnoError(errno, node) {\n this.name = \"ErrnoError\";\n this.node = node;\n this.setErrno = function(errno2) {\n this.errno = errno2;\n };\n this.setErrno(errno);\n this.message = \"FS error\";\n };\n FS.ErrnoError.prototype = new Error();\n FS.ErrnoError.prototype.constructor = FS.ErrnoError;\n [44].forEach((code) => {\n FS.genericErrors[code] = new FS.ErrnoError(code);\n FS.genericErrors[code].stack = \"\";\n });\n }, staticInit: () => {\n FS.ensureErrnoError();\n FS.nameTable = new Array(4096);\n FS.mount(MEMFS, {}, \"/\");\n FS.createDefaultDirectories();\n FS.createDefaultDevices();\n FS.createSpecialDirectories();\n FS.filesystems = { \"MEMFS\": MEMFS };\n }, init: (input, output, error) => {\n FS.init.initialized = true;\n FS.ensureErrnoError();\n Module[\"stdin\"] = input || Module[\"stdin\"];\n Module[\"stdout\"] = output || Module[\"stdout\"];\n Module[\"stderr\"] = error || Module[\"stderr\"];\n FS.createStandardStreams();\n }, quit: () => {\n FS.init.initialized = false;\n for (var i = 0; i < FS.streams.length; i++) {\n var stream = FS.streams[i];\n if (!stream) {\n continue;\n }\n FS.close(stream);\n }\n }, findObject: (path, dontResolveLastLink) => {\n var ret = FS.analyzePath(path, dontResolveLastLink);\n if (!ret.exists) {\n return null;\n }\n return ret.object;\n }, analyzePath: (path, dontResolveLastLink) => {\n try {\n var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n path = lookup.path;\n } catch (e) {\n }\n var ret = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null };\n try {\n var lookup = FS.lookupPath(path, { parent: true });\n ret.parentExists = true;\n ret.parentPath = lookup.path;\n ret.parentObject = lookup.node;\n ret.name = PATH.basename(path);\n lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n ret.exists = true;\n ret.path = lookup.path;\n ret.object = lookup.node;\n ret.name = lookup.node.name;\n ret.isRoot = lookup.path === \"/\";\n } catch (e) {\n ret.error = e.errno;\n }\n return ret;\n }, createPath: (parent, path, canRead, canWrite) => {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n var parts = path.split(\"/\").reverse();\n while (parts.length) {\n var part = parts.pop();\n if (!part)\n continue;\n var current = PATH.join2(parent, part);\n try {\n FS.mkdir(current);\n } catch (e) {\n }\n parent = current;\n }\n return current;\n }, createFile: (parent, name, properties, canRead, canWrite) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(canRead, canWrite);\n return FS.create(path, mode);\n }, createDataFile: (parent, name, data, canRead, canWrite, canOwn) => {\n var path = name;\n if (parent) {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n path = name ? PATH.join2(parent, name) : parent;\n }\n var mode = FS_getMode(canRead, canWrite);\n var node = FS.create(path, mode);\n if (data) {\n if (typeof data == \"string\") {\n var arr = new Array(data.length);\n for (var i = 0, len = data.length; i < len; ++i)\n arr[i] = data.charCodeAt(i);\n data = arr;\n }\n FS.chmod(node, mode | 146);\n var stream = FS.open(node, 577);\n FS.write(stream, data, 0, data.length, 0, canOwn);\n FS.close(stream);\n FS.chmod(node, mode);\n }\n return node;\n }, createDevice: (parent, name, input, output) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(!!input, !!output);\n if (!FS.createDevice.major)\n FS.createDevice.major = 64;\n var dev = FS.makedev(FS.createDevice.major++, 0);\n FS.registerDevice(dev, { open: (stream) => {\n stream.seekable = false;\n }, close: (stream) => {\n if (output && output.buffer && output.buffer.length) {\n output(10);\n }\n }, read: (stream, buffer, offset, length, pos) => {\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = input();\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: (stream, buffer, offset, length, pos) => {\n for (var i = 0; i < length; i++) {\n try {\n output(buffer[offset + i]);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } });\n return FS.mkdev(path, mode, dev);\n }, forceLoadFile: (obj) => {\n if (obj.isDevice || obj.isFolder || obj.link || obj.contents)\n return true;\n if (typeof XMLHttpRequest != \"undefined\") {\n throw new Error(\"Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.\");\n } else if (read_) {\n try {\n obj.contents = intArrayFromString(read_(obj.url), true);\n obj.usedBytes = obj.contents.length;\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n } else {\n throw new Error(\"Cannot load without read() or XMLHttpRequest.\");\n }\n }, createLazyFile: (parent, name, url, canRead, canWrite) => {\n function LazyUint8Array() {\n this.lengthKnown = false;\n this.chunks = [];\n }\n LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {\n if (idx > this.length - 1 || idx < 0) {\n return void 0;\n }\n var chunkOffset = idx % this.chunkSize;\n var chunkNum = idx / this.chunkSize | 0;\n return this.getter(chunkNum)[chunkOffset];\n };\n LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {\n this.getter = getter;\n };\n LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {\n var xhr = new XMLHttpRequest();\n xhr.open(\"HEAD\", url, false);\n xhr.send(null);\n if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr.status);\n var datalength = Number(xhr.getResponseHeader(\"Content-length\"));\n var header;\n var hasByteServing = (header = xhr.getResponseHeader(\"Accept-Ranges\")) && header === \"bytes\";\n var usesGzip = (header = xhr.getResponseHeader(\"Content-Encoding\")) && header === \"gzip\";\n var chunkSize = 1024 * 1024;\n if (!hasByteServing)\n chunkSize = datalength;\n var doXHR = (from, to) => {\n if (from > to)\n throw new Error(\"invalid range (\" + from + \", \" + to + \") or no bytes requested!\");\n if (to > datalength - 1)\n throw new Error(\"only \" + datalength + \" bytes available! programmer error!\");\n var xhr2 = new XMLHttpRequest();\n xhr2.open(\"GET\", url, false);\n if (datalength !== chunkSize)\n xhr2.setRequestHeader(\"Range\", \"bytes=\" + from + \"-\" + to);\n xhr2.responseType = \"arraybuffer\";\n if (xhr2.overrideMimeType) {\n xhr2.overrideMimeType(\"text/plain; charset=x-user-defined\");\n }\n xhr2.send(null);\n if (!(xhr2.status >= 200 && xhr2.status < 300 || xhr2.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr2.status);\n if (xhr2.response !== void 0) {\n return new Uint8Array(xhr2.response || []);\n }\n return intArrayFromString(xhr2.responseText || \"\", true);\n };\n var lazyArray2 = this;\n lazyArray2.setDataGetter((chunkNum) => {\n var start = chunkNum * chunkSize;\n var end = (chunkNum + 1) * chunkSize - 1;\n end = Math.min(end, datalength - 1);\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\") {\n lazyArray2.chunks[chunkNum] = doXHR(start, end);\n }\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\")\n throw new Error(\"doXHR failed!\");\n return lazyArray2.chunks[chunkNum];\n });\n if (usesGzip || !datalength) {\n chunkSize = datalength = 1;\n datalength = this.getter(0).length;\n chunkSize = datalength;\n out(\"LazyFiles on gzip forces download of the whole file when length is accessed\");\n }\n this._length = datalength;\n this._chunkSize = chunkSize;\n this.lengthKnown = true;\n };\n if (typeof XMLHttpRequest != \"undefined\") {\n if (!ENVIRONMENT_IS_WORKER)\n throw \"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";\n var lazyArray = new LazyUint8Array();\n Object.defineProperties(lazyArray, { length: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._length;\n } }, chunkSize: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._chunkSize;\n } } });\n var properties = { isDevice: false, contents: lazyArray };\n } else {\n var properties = { isDevice: false, url };\n }\n var node = FS.createFile(parent, name, properties, canRead, canWrite);\n if (properties.contents) {\n node.contents = properties.contents;\n } else if (properties.url) {\n node.contents = null;\n node.url = properties.url;\n }\n Object.defineProperties(node, { usedBytes: { get: function() {\n return this.contents.length;\n } } });\n var stream_ops = {};\n var keys = Object.keys(node.stream_ops);\n keys.forEach((key) => {\n var fn = node.stream_ops[key];\n stream_ops[key] = function forceLoadLazyFile() {\n FS.forceLoadFile(node);\n return fn.apply(null, arguments);\n };\n });\n function writeChunks(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= contents.length)\n return 0;\n var size = Math.min(contents.length - position, length);\n if (contents.slice) {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents[position + i];\n }\n } else {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents.get(position + i);\n }\n }\n return size;\n }\n stream_ops.read = (stream, buffer, offset, length, position) => {\n FS.forceLoadFile(node);\n return writeChunks(stream, buffer, offset, length, position);\n };\n stream_ops.mmap = (stream, length, position, prot, flags) => {\n FS.forceLoadFile(node);\n var ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n writeChunks(stream, HEAP8, ptr, length, position);\n return { ptr, allocated: true };\n };\n node.stream_ops = stream_ops;\n return node;\n } };\n var SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt: function(dirfd, path, allowEmpty) {\n if (PATH.isAbs(path)) {\n return path;\n }\n var dir;\n if (dirfd === -100) {\n dir = FS.cwd();\n } else {\n var dirstream = SYSCALLS.getStreamFromFD(dirfd);\n dir = dirstream.path;\n }\n if (path.length == 0) {\n if (!allowEmpty) {\n throw new FS.ErrnoError(44);\n }\n return dir;\n }\n return PATH.join2(dir, path);\n }, doStat: function(func, path, buf) {\n try {\n var stat = func(path);\n } catch (e) {\n if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {\n return -54;\n }\n throw e;\n }\n HEAP32[buf >>> 2] = stat.dev;\n HEAP32[buf + 4 >>> 2] = stat.mode;\n HEAPU32[buf + 8 >>> 2] = stat.nlink;\n HEAP32[buf + 12 >>> 2] = stat.uid;\n HEAP32[buf + 16 >>> 2] = stat.gid;\n HEAP32[buf + 20 >>> 2] = stat.rdev;\n tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 24 >>> 2] = tempI64[0], HEAP32[buf + 28 >>> 2] = tempI64[1];\n HEAP32[buf + 32 >>> 2] = 4096;\n HEAP32[buf + 36 >>> 2] = stat.blocks;\n var atime = stat.atime.getTime();\n var mtime = stat.mtime.getTime();\n var ctime = stat.ctime.getTime();\n tempI64 = [Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >>> 2] = tempI64[0], HEAP32[buf + 44 >>> 2] = tempI64[1];\n HEAPU32[buf + 48 >>> 2] = atime % 1e3 * 1e3;\n tempI64 = [Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 56 >>> 2] = tempI64[0], HEAP32[buf + 60 >>> 2] = tempI64[1];\n HEAPU32[buf + 64 >>> 2] = mtime % 1e3 * 1e3;\n tempI64 = [Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 72 >>> 2] = tempI64[0], HEAP32[buf + 76 >>> 2] = tempI64[1];\n HEAPU32[buf + 80 >>> 2] = ctime % 1e3 * 1e3;\n tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 88 >>> 2] = tempI64[0], HEAP32[buf + 92 >>> 2] = tempI64[1];\n return 0;\n }, doMsync: function(addr, stream, len, flags, offset) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (flags & 2) {\n return 0;\n }\n var buffer = HEAPU8.slice(addr, addr + len);\n FS.msync(stream, buffer, offset, len, flags);\n }, varargs: void 0, get() {\n SYSCALLS.varargs += 4;\n var ret = HEAP32[SYSCALLS.varargs - 4 >>> 2];\n return ret;\n }, getStr(ptr) {\n var ret = UTF8ToString(ptr);\n return ret;\n }, getStreamFromFD: function(fd) {\n var stream = FS.getStreamChecked(fd);\n return stream;\n } };\n function _environ_get(__environ, environ_buf) {\n __environ >>>= 0;\n environ_buf >>>= 0;\n var bufSize = 0;\n getEnvStrings().forEach(function(string, i) {\n var ptr = environ_buf + bufSize;\n HEAPU32[__environ + i * 4 >>> 2] = ptr;\n stringToAscii(string, ptr);\n bufSize += string.length + 1;\n });\n return 0;\n }\n function _environ_sizes_get(penviron_count, penviron_buf_size) {\n penviron_count >>>= 0;\n penviron_buf_size >>>= 0;\n var strings = getEnvStrings();\n HEAPU32[penviron_count >>> 2] = strings.length;\n var bufSize = 0;\n strings.forEach(function(string) {\n bufSize += string.length + 1;\n });\n HEAPU32[penviron_buf_size >>> 2] = bufSize;\n return 0;\n }\n function _fd_close(fd) {\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.close(stream);\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_fdstat_get(fd, pbuf) {\n pbuf >>>= 0;\n try {\n var rightsBase = 0;\n var rightsInheriting = 0;\n var flags = 0;\n {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4;\n }\n HEAP8[pbuf >>> 0] = type;\n HEAP16[pbuf + 2 >>> 1] = flags;\n tempI64 = [rightsBase >>> 0, (tempDouble = rightsBase, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[pbuf + 8 >>> 2] = tempI64[0], HEAP32[pbuf + 12 >>> 2] = tempI64[1];\n tempI64 = [rightsInheriting >>> 0, (tempDouble = rightsInheriting, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[pbuf + 16 >>> 2] = tempI64[0], HEAP32[pbuf + 20 >>> 2] = tempI64[1];\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doReadv = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = HEAPU32[iov >>> 2];\n var len = HEAPU32[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.read(stream, HEAP8, ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (curr < len)\n break;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_read(fd, iov, iovcnt, pnum) {\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doReadv(stream, iov, iovcnt);\n HEAPU32[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {\n var offset = convertI32PairToI53Checked(offset_low, offset_high);\n newOffset >>>= 0;\n try {\n if (isNaN(offset))\n return 61;\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.llseek(stream, offset, whence);\n tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >>> 2] = tempI64[0], HEAP32[newOffset + 4 >>> 2] = tempI64[1];\n if (stream.getdents && offset === 0 && whence === 0)\n stream.getdents = null;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doWritev = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = HEAPU32[iov >>> 2];\n var len = HEAPU32[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.write(stream, HEAP8, ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_write(fd, iov, iovcnt, pnum) {\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doWritev(stream, iov, iovcnt);\n HEAPU32[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var arraySum = (array, index) => {\n var sum = 0;\n for (var i = 0; i <= index; sum += array[i++]) {\n }\n return sum;\n };\n var MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var addDays = (date, days) => {\n var newDate = new Date(date.getTime());\n while (days > 0) {\n var leap = isLeapYear(newDate.getFullYear());\n var currentMonth = newDate.getMonth();\n var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth];\n if (days > daysInCurrentMonth - newDate.getDate()) {\n days -= daysInCurrentMonth - newDate.getDate() + 1;\n newDate.setDate(1);\n if (currentMonth < 11) {\n newDate.setMonth(currentMonth + 1);\n } else {\n newDate.setMonth(0);\n newDate.setFullYear(newDate.getFullYear() + 1);\n }\n } else {\n newDate.setDate(newDate.getDate() + days);\n return newDate;\n }\n }\n return newDate;\n };\n var writeArrayToMemory = (array, buffer) => {\n HEAP8.set(array, buffer >>> 0);\n };\n function _strftime(s, maxsize, format, tm) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n var tm_zone = HEAP32[tm + 40 >>> 2];\n var date = { tm_sec: HEAP32[tm >>> 2], tm_min: HEAP32[tm + 4 >>> 2], tm_hour: HEAP32[tm + 8 >>> 2], tm_mday: HEAP32[tm + 12 >>> 2], tm_mon: HEAP32[tm + 16 >>> 2], tm_year: HEAP32[tm + 20 >>> 2], tm_wday: HEAP32[tm + 24 >>> 2], tm_yday: HEAP32[tm + 28 >>> 2], tm_isdst: HEAP32[tm + 32 >>> 2], tm_gmtoff: HEAP32[tm + 36 >>> 2], tm_zone: tm_zone ? UTF8ToString(tm_zone) : \"\" };\n var pattern = UTF8ToString(format);\n var EXPANSION_RULES_1 = { \"%c\": \"%a %b %d %H:%M:%S %Y\", \"%D\": \"%m/%d/%y\", \"%F\": \"%Y-%m-%d\", \"%h\": \"%b\", \"%r\": \"%I:%M:%S %p\", \"%R\": \"%H:%M\", \"%T\": \"%H:%M:%S\", \"%x\": \"%m/%d/%y\", \"%X\": \"%H:%M:%S\", \"%Ec\": \"%c\", \"%EC\": \"%C\", \"%Ex\": \"%m/%d/%y\", \"%EX\": \"%H:%M:%S\", \"%Ey\": \"%y\", \"%EY\": \"%Y\", \"%Od\": \"%d\", \"%Oe\": \"%e\", \"%OH\": \"%H\", \"%OI\": \"%I\", \"%Om\": \"%m\", \"%OM\": \"%M\", \"%OS\": \"%S\", \"%Ou\": \"%u\", \"%OU\": \"%U\", \"%OV\": \"%V\", \"%Ow\": \"%w\", \"%OW\": \"%W\", \"%Oy\": \"%y\" };\n for (var rule in EXPANSION_RULES_1) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_1[rule]);\n }\n var WEEKDAYS = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n var MONTHS = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n function leadingSomething(value, digits, character) {\n var str = typeof value == \"number\" ? value.toString() : value || \"\";\n while (str.length < digits) {\n str = character[0] + str;\n }\n return str;\n }\n function leadingNulls(value, digits) {\n return leadingSomething(value, digits, \"0\");\n }\n function compareByDay(date1, date2) {\n function sgn(value) {\n return value < 0 ? -1 : value > 0 ? 1 : 0;\n }\n var compare;\n if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {\n if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {\n compare = sgn(date1.getDate() - date2.getDate());\n }\n }\n return compare;\n }\n function getFirstWeekStartDate(janFourth) {\n switch (janFourth.getDay()) {\n case 0:\n return new Date(janFourth.getFullYear() - 1, 11, 29);\n case 1:\n return janFourth;\n case 2:\n return new Date(janFourth.getFullYear(), 0, 3);\n case 3:\n return new Date(janFourth.getFullYear(), 0, 2);\n case 4:\n return new Date(janFourth.getFullYear(), 0, 1);\n case 5:\n return new Date(janFourth.getFullYear() - 1, 11, 31);\n case 6:\n return new Date(janFourth.getFullYear() - 1, 11, 30);\n }\n }\n function getWeekBasedYear(date2) {\n var thisDate = addDays(new Date(date2.tm_year + 1900, 0, 1), date2.tm_yday);\n var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);\n var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);\n var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);\n var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);\n if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {\n if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {\n return thisDate.getFullYear() + 1;\n }\n return thisDate.getFullYear();\n }\n return thisDate.getFullYear() - 1;\n }\n var EXPANSION_RULES_2 = { \"%a\": (date2) => WEEKDAYS[date2.tm_wday].substring(0, 3), \"%A\": (date2) => WEEKDAYS[date2.tm_wday], \"%b\": (date2) => MONTHS[date2.tm_mon].substring(0, 3), \"%B\": (date2) => MONTHS[date2.tm_mon], \"%C\": (date2) => {\n var year = date2.tm_year + 1900;\n return leadingNulls(year / 100 | 0, 2);\n }, \"%d\": (date2) => leadingNulls(date2.tm_mday, 2), \"%e\": (date2) => leadingSomething(date2.tm_mday, 2, \" \"), \"%g\": (date2) => getWeekBasedYear(date2).toString().substring(2), \"%G\": (date2) => getWeekBasedYear(date2), \"%H\": (date2) => leadingNulls(date2.tm_hour, 2), \"%I\": (date2) => {\n var twelveHour = date2.tm_hour;\n if (twelveHour == 0)\n twelveHour = 12;\n else if (twelveHour > 12)\n twelveHour -= 12;\n return leadingNulls(twelveHour, 2);\n }, \"%j\": (date2) => leadingNulls(date2.tm_mday + arraySum(isLeapYear(date2.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date2.tm_mon - 1), 3), \"%m\": (date2) => leadingNulls(date2.tm_mon + 1, 2), \"%M\": (date2) => leadingNulls(date2.tm_min, 2), \"%n\": () => \"\\n\", \"%p\": (date2) => {\n if (date2.tm_hour >= 0 && date2.tm_hour < 12) {\n return \"AM\";\n }\n return \"PM\";\n }, \"%S\": (date2) => leadingNulls(date2.tm_sec, 2), \"%t\": () => \"\t\", \"%u\": (date2) => date2.tm_wday || 7, \"%U\": (date2) => {\n var days = date2.tm_yday + 7 - date2.tm_wday;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%V\": (date2) => {\n var val = Math.floor((date2.tm_yday + 7 - (date2.tm_wday + 6) % 7) / 7);\n if ((date2.tm_wday + 371 - date2.tm_yday - 2) % 7 <= 2) {\n val++;\n }\n if (!val) {\n val = 52;\n var dec31 = (date2.tm_wday + 7 - date2.tm_yday - 1) % 7;\n if (dec31 == 4 || dec31 == 5 && isLeapYear(date2.tm_year % 400 - 1)) {\n val++;\n }\n } else if (val == 53) {\n var jan1 = (date2.tm_wday + 371 - date2.tm_yday) % 7;\n if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date2.tm_year)))\n val = 1;\n }\n return leadingNulls(val, 2);\n }, \"%w\": (date2) => date2.tm_wday, \"%W\": (date2) => {\n var days = date2.tm_yday + 7 - (date2.tm_wday + 6) % 7;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%y\": (date2) => (date2.tm_year + 1900).toString().substring(2), \"%Y\": (date2) => date2.tm_year + 1900, \"%z\": (date2) => {\n var off = date2.tm_gmtoff;\n var ahead = off >= 0;\n off = Math.abs(off) / 60;\n off = off / 60 * 100 + off % 60;\n return (ahead ? \"+\" : \"-\") + String(\"0000\" + off).slice(-4);\n }, \"%Z\": (date2) => date2.tm_zone, \"%%\": () => \"%\" };\n pattern = pattern.replace(/%%/g, \"\\0\\0\");\n for (var rule in EXPANSION_RULES_2) {\n if (pattern.includes(rule)) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_2[rule](date));\n }\n }\n pattern = pattern.replace(/\\0\\0/g, \"%\");\n var bytes = intArrayFromString(pattern, false);\n if (bytes.length > maxsize) {\n return 0;\n }\n writeArrayToMemory(bytes, s);\n return bytes.length - 1;\n }\n function _strftime_l(s, maxsize, format, tm, loc) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n loc >>>= 0;\n return _strftime(s, maxsize, format, tm);\n }\n InternalError = Module[\"InternalError\"] = class InternalError extends Error {\n constructor(message) {\n super(message);\n this.name = \"InternalError\";\n }\n };\n embind_init_charCodes();\n BindingError = Module[\"BindingError\"] = class BindingError extends Error {\n constructor(message) {\n super(message);\n this.name = \"BindingError\";\n }\n };\n init_ClassHandle();\n init_embind();\n init_RegisteredPointer();\n UnboundTypeError = Module[\"UnboundTypeError\"] = extendError(Error, \"UnboundTypeError\");\n handleAllocatorInit();\n init_emval();\n var FSNode = function(parent, name, mode, rdev) {\n if (!parent) {\n parent = this;\n }\n this.parent = parent;\n this.mount = parent.mount;\n this.mounted = null;\n this.id = FS.nextInode++;\n this.name = name;\n this.mode = mode;\n this.node_ops = {};\n this.stream_ops = {};\n this.rdev = rdev;\n };\n var readMode = 292 | 73;\n var writeMode = 146;\n Object.defineProperties(FSNode.prototype, { read: { get: function() {\n return (this.mode & readMode) === readMode;\n }, set: function(val) {\n val ? this.mode |= readMode : this.mode &= ~readMode;\n } }, write: { get: function() {\n return (this.mode & writeMode) === writeMode;\n }, set: function(val) {\n val ? this.mode |= writeMode : this.mode &= ~writeMode;\n } }, isFolder: { get: function() {\n return FS.isDir(this.mode);\n } }, isDevice: { get: function() {\n return FS.isChrdev(this.mode);\n } } });\n FS.FSNode = FSNode;\n FS.createPreloadedFile = FS_createPreloadedFile;\n FS.staticInit();\n var wasmImports = { f: ___cxa_throw, W: __embind_finalize_value_array, q: __embind_finalize_value_object, G: __embind_register_bigint, U: __embind_register_bool, p: __embind_register_class, o: __embind_register_class_constructor, b: __embind_register_class_function, T: __embind_register_emval, z: __embind_register_float, c: __embind_register_function, s: __embind_register_integer, k: __embind_register_memory_view, A: __embind_register_std_string, w: __embind_register_std_wstring, X: __embind_register_value_array, l: __embind_register_value_array_element, r: __embind_register_value_object, e: __embind_register_value_object_field, V: __embind_register_void, N: __emscripten_get_now_is_monotonic, j: __emval_as, v: __emval_call, a: __emval_decref, y: __emval_get_global, h: __emval_get_property, n: __emval_incref, C: __emval_instanceof, x: __emval_is_number, B: __emval_is_string, Y: __emval_new_array, g: __emval_new_cstring, t: __emval_new_object, i: __emval_run_destructors, m: __emval_set_property, d: __emval_take_value, E: __gmtime_js, F: __localtime_js, L: __tzset_js, u: _abort, O: _emscripten_date_now, S: _emscripten_memcpy_big, K: _emscripten_resize_heap, Q: _environ_get, R: _environ_sizes_get, I: _fd_close, P: _fd_fdstat_get, J: _fd_read, D: _fd_seek, M: _fd_write, H: _strftime_l };\n var asm = createWasm();\n var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports[\"_\"])();\n var _malloc = (a0) => (_malloc = wasmExports[\"aa\"])(a0);\n var ___getTypeName = (a0) => (___getTypeName = wasmExports[\"ba\"])(a0);\n var __embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = () => (__embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = wasmExports[\"ca\"])();\n var ___errno_location = () => (___errno_location = wasmExports[\"__errno_location\"])();\n var _free = (a0) => (_free = wasmExports[\"da\"])(a0);\n var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports[\"__cxa_increment_exception_refcount\"])(a0);\n var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports[\"ea\"])(a0);\n var dynCall_jiji = Module[\"dynCall_jiji\"] = (a0, a1, a2, a3, a4) => (dynCall_jiji = Module[\"dynCall_jiji\"] = wasmExports[\"fa\"])(a0, a1, a2, a3, a4);\n var dynCall_viijii = Module[\"dynCall_viijii\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_viijii = Module[\"dynCall_viijii\"] = wasmExports[\"ga\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = wasmExports[\"ha\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8) => (dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = wasmExports[\"ia\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8);\n var dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) => (dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = wasmExports[\"ja\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);\n function applySignatureConversions(exports2) {\n exports2 = Object.assign({}, exports2);\n var makeWrapper_pp = (f) => (a0) => f(a0) >>> 0;\n var makeWrapper_p = (f) => () => f() >>> 0;\n exports2[\"malloc\"] = makeWrapper_pp(exports2[\"malloc\"]);\n exports2[\"__getTypeName\"] = makeWrapper_pp(exports2[\"__getTypeName\"]);\n exports2[\"__errno_location\"] = makeWrapper_p(exports2[\"__errno_location\"]);\n exports2[\"stackSave\"] = makeWrapper_p(exports2[\"stackSave\"]);\n exports2[\"stackAlloc\"] = makeWrapper_pp(exports2[\"stackAlloc\"]);\n return exports2;\n }\n var calledRun;\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run() {\n if (runDependencies > 0) {\n return;\n }\n preRun();\n if (runDependencies > 0) {\n return;\n }\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module[\"calledRun\"] = true;\n if (ABORT)\n return;\n initRuntime();\n readyPromiseResolve(Module);\n if (Module[\"onRuntimeInitialized\"])\n Module[\"onRuntimeInitialized\"]();\n postRun();\n }\n if (Module[\"setStatus\"]) {\n Module[\"setStatus\"](\"Running...\");\n setTimeout(function() {\n setTimeout(function() {\n Module[\"setStatus\"](\"\");\n }, 1);\n doRun();\n }, 1);\n } else {\n doRun();\n }\n }\n if (Module[\"preInit\"]) {\n if (typeof Module[\"preInit\"] == \"function\")\n Module[\"preInit\"] = [Module[\"preInit\"]];\n while (Module[\"preInit\"].length > 0) {\n Module[\"preInit\"].pop()();\n }\n }\n run();\n return moduleArg.ready;\n };\n })();\n if (typeof exports === \"object\" && typeof module === \"object\")\n module.exports = WebIFCWasm2;\n else if (typeof define === \"function\" && define[\"amd\"])\n define([], () => WebIFCWasm2);\n }\n});\n\n// dist/ifc-schema.ts\nvar IFCURIREFERENCE = 950732822;\nvar IFCTIME = 4075327185;\nvar IFCTEMPERATURERATEOFCHANGEMEASURE = 1209108979;\nvar IFCSOUNDPRESSURELEVELMEASURE = 3457685358;\nvar IFCSOUNDPOWERLEVELMEASURE = 4157543285;\nvar IFCPROPERTYSETDEFINITIONSET = 2798247006;\nvar IFCPOSITIVEINTEGER = 1790229001;\nvar IFCNONNEGATIVELENGTHMEASURE = 525895558;\nvar IFCLINEINDEX = 1774176899;\nvar IFCLANGUAGEID = 1275358634;\nvar IFCDURATION = 2541165894;\nvar IFCDAYINWEEKNUMBER = 3701338814;\nvar IFCDATETIME = 2195413836;\nvar IFCDATE = 937566702;\nvar IFCCARDINALPOINTREFERENCE = 1683019596;\nvar IFCBINARY = 2314439260;\nvar IFCAREADENSITYMEASURE = 1500781891;\nvar IFCARCINDEX = 3683503648;\nvar IFCYEARNUMBER = 4065007721;\nvar IFCWARPINGMOMENTMEASURE = 1718600412;\nvar IFCWARPINGCONSTANTMEASURE = 51269191;\nvar IFCVOLUMETRICFLOWRATEMEASURE = 2593997549;\nvar IFCVOLUMEMEASURE = 3458127941;\nvar IFCVAPORPERMEABILITYMEASURE = 3345633955;\nvar IFCTORQUEMEASURE = 1278329552;\nvar IFCTIMESTAMP = 2591213694;\nvar IFCTIMEMEASURE = 2726807636;\nvar IFCTHERMODYNAMICTEMPERATUREMEASURE = 743184107;\nvar IFCTHERMALTRANSMITTANCEMEASURE = 2016195849;\nvar IFCTHERMALRESISTANCEMEASURE = 857959152;\nvar IFCTHERMALEXPANSIONCOEFFICIENTMEASURE = 2281867870;\nvar IFCTHERMALCONDUCTIVITYMEASURE = 2645777649;\nvar IFCTHERMALADMITTANCEMEASURE = 232962298;\nvar IFCTEXTTRANSFORMATION = 296282323;\nvar IFCTEXTFONTNAME = 603696268;\nvar IFCTEXTDECORATION = 3490877962;\nvar IFCTEXTALIGNMENT = 1460886941;\nvar IFCTEXT = 2801250643;\nvar IFCTEMPERATUREGRADIENTMEASURE = 58845555;\nvar IFCSPECULARROUGHNESS = 361837227;\nvar IFCSPECULAREXPONENT = 2757832317;\nvar IFCSPECIFICHEATCAPACITYMEASURE = 3477203348;\nvar IFCSOUNDPRESSUREMEASURE = 993287707;\nvar IFCSOUNDPOWERMEASURE = 846465480;\nvar IFCSOLIDANGLEMEASURE = 3471399674;\nvar IFCSHEARMODULUSMEASURE = 408310005;\nvar IFCSECTIONALAREAINTEGRALMEASURE = 2190458107;\nvar IFCSECTIONMODULUSMEASURE = 3467162246;\nvar IFCSECONDINMINUTE = 2766185779;\nvar IFCROTATIONALSTIFFNESSMEASURE = 3211557302;\nvar IFCROTATIONALMASSMEASURE = 1755127002;\nvar IFCROTATIONALFREQUENCYMEASURE = 2133746277;\nvar IFCREAL = 200335297;\nvar IFCRATIOMEASURE = 96294661;\nvar IFCRADIOACTIVITYMEASURE = 3972513137;\nvar IFCPRESSUREMEASURE = 3665567075;\nvar IFCPRESENTABLETEXT = 2169031380;\nvar IFCPOWERMEASURE = 1364037233;\nvar IFCPOSITIVERATIOMEASURE = 1245737093;\nvar IFCPOSITIVEPLANEANGLEMEASURE = 3054510233;\nvar IFCPOSITIVELENGTHMEASURE = 2815919920;\nvar IFCPLANEANGLEMEASURE = 4042175685;\nvar IFCPLANARFORCEMEASURE = 2642773653;\nvar IFCPARAMETERVALUE = 2260317790;\nvar IFCPHMEASURE = 929793134;\nvar IFCNUMERICMEASURE = 2395907400;\nvar IFCNORMALISEDRATIOMEASURE = 2095195183;\nvar IFCMONTHINYEARNUMBER = 765770214;\nvar IFCMONETARYMEASURE = 2615040989;\nvar IFCMOMENTOFINERTIAMEASURE = 3114022597;\nvar IFCMOLECULARWEIGHTMEASURE = 1648970520;\nvar IFCMOISTUREDIFFUSIVITYMEASURE = 3177669450;\nvar IFCMODULUSOFSUBGRADEREACTIONMEASURE = 1753493141;\nvar IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE = 1052454078;\nvar IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE = 2173214787;\nvar IFCMODULUSOFELASTICITYMEASURE = 3341486342;\nvar IFCMINUTEINHOUR = 102610177;\nvar IFCMASSPERLENGTHMEASURE = 3531705166;\nvar IFCMASSMEASURE = 3124614049;\nvar IFCMASSFLOWRATEMEASURE = 4017473158;\nvar IFCMASSDENSITYMEASURE = 1477762836;\nvar IFCMAGNETICFLUXMEASURE = 2486716878;\nvar IFCMAGNETICFLUXDENSITYMEASURE = 286949696;\nvar IFCLUMINOUSINTENSITYMEASURE = 151039812;\nvar IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE = 2755797622;\nvar IFCLUMINOUSFLUXMEASURE = 2095003142;\nvar IFCLOGICAL = 503418787;\nvar IFCLINEARVELOCITYMEASURE = 3086160713;\nvar IFCLINEARSTIFFNESSMEASURE = 1307019551;\nvar IFCLINEARMOMENTMEASURE = 2128979029;\nvar IFCLINEARFORCEMEASURE = 191860431;\nvar IFCLENGTHMEASURE = 1243674935;\nvar IFCLABEL = 3258342251;\nvar IFCKINEMATICVISCOSITYMEASURE = 2054016361;\nvar IFCISOTHERMALMOISTURECAPACITYMEASURE = 3192672207;\nvar IFCIONCONCENTRATIONMEASURE = 3686016028;\nvar IFCINTEGERCOUNTRATEMEASURE = 3809634241;\nvar IFCINTEGER = 1939436016;\nvar IFCINDUCTANCEMEASURE = 2679005408;\nvar IFCILLUMINANCEMEASURE = 3358199106;\nvar IFCIDENTIFIER = 983778844;\nvar IFCHOURINDAY = 2589826445;\nvar IFCHEATINGVALUEMEASURE = 1158859006;\nvar IFCHEATFLUXDENSITYMEASURE = 3113092358;\nvar IFCGLOBALLYUNIQUEID = 3064340077;\nvar IFCFREQUENCYMEASURE = 3044325142;\nvar IFCFORCEMEASURE = 1361398929;\nvar IFCFONTWEIGHT = 2590844177;\nvar IFCFONTVARIANT = 2715512545;\nvar IFCFONTSTYLE = 1102727119;\nvar IFCENERGYMEASURE = 2078135608;\nvar IFCELECTRICVOLTAGEMEASURE = 2506197118;\nvar IFCELECTRICRESISTANCEMEASURE = 2951915441;\nvar IFCELECTRICCURRENTMEASURE = 3790457270;\nvar IFCELECTRICCONDUCTANCEMEASURE = 2093906313;\nvar IFCELECTRICCHARGEMEASURE = 3818826038;\nvar IFCELECTRICCAPACITANCEMEASURE = 1827137117;\nvar IFCDYNAMICVISCOSITYMEASURE = 69416015;\nvar IFCDOSEEQUIVALENTMEASURE = 524656162;\nvar IFCDIMENSIONCOUNT = 4134073009;\nvar IFCDESCRIPTIVEMEASURE = 1514641115;\nvar IFCDAYLIGHTSAVINGHOUR = 300323983;\nvar IFCDAYINMONTHNUMBER = 86635668;\nvar IFCCURVATUREMEASURE = 94842927;\nvar IFCCOUNTMEASURE = 1778710042;\nvar IFCCONTEXTDEPENDENTMEASURE = 3238673880;\nvar IFCCOMPOUNDPLANEANGLEMEASURE = 3812528620;\nvar IFCCOMPLEXNUMBER = 2991860651;\nvar IFCBOXALIGNMENT = 1867003952;\nvar IFCBOOLEAN = 2735952531;\nvar IFCAREAMEASURE = 2650437152;\nvar IFCANGULARVELOCITYMEASURE = 632304761;\nvar IFCAMOUNTOFSUBSTANCEMEASURE = 360377573;\nvar IFCACCELERATIONMEASURE = 4182062534;\nvar IFCABSORBEDDOSEMEASURE = 3699917729;\nvar IFCGEOSLICE = 1971632696;\nvar IFCGEOMODEL = 2680139844;\nvar IFCELECTRICFLOWTREATMENTDEVICE = 24726584;\nvar IFCDISTRIBUTIONBOARD = 3693000487;\nvar IFCCONVEYORSEGMENT = 3460952963;\nvar IFCCAISSONFOUNDATION = 3999819293;\nvar IFCBOREHOLE = 3314249567;\nvar IFCBEARING = 4196446775;\nvar IFCALIGNMENT = 325726236;\nvar IFCTRACKELEMENT = 3425753595;\nvar IFCSIGNAL = 991950508;\nvar IFCREINFORCEDSOIL = 3798194928;\nvar IFCRAIL = 3290496277;\nvar IFCPAVEMENT = 1383356374;\nvar IFCNAVIGATIONELEMENT = 2182337498;\nvar IFCMOORINGDEVICE = 234836483;\nvar IFCMOBILETELECOMMUNICATIONSAPPLIANCE = 2078563270;\nvar IFCLIQUIDTERMINAL = 1638804497;\nvar IFCLINEARPOSITIONINGELEMENT = 1154579445;\nvar IFCKERB = 2696325953;\nvar IFCGEOTECHNICALASSEMBLY = 2713699986;\nvar IFCELECTRICFLOWTREATMENTDEVICETYPE = 2142170206;\nvar IFCEARTHWORKSFILL = 3376911765;\nvar IFCEARTHWORKSELEMENT = 1077100507;\nvar IFCEARTHWORKSCUT = 3071239417;\nvar IFCDISTRIBUTIONBOARDTYPE = 479945903;\nvar IFCDEEPFOUNDATION = 3426335179;\nvar IFCCOURSE = 1502416096;\nvar IFCCONVEYORSEGMENTTYPE = 2940368186;\nvar IFCCAISSONFOUNDATIONTYPE = 3203706013;\nvar IFCBUILTSYSTEM = 3862327254;\nvar IFCBUILTELEMENT = 1876633798;\nvar IFCBRIDGEPART = 963979645;\nvar IFCBRIDGE = 644574406;\nvar IFCBEARINGTYPE = 3649138523;\nvar IFCALIGNMENTVERTICAL = 1662888072;\nvar IFCALIGNMENTSEGMENT = 317615605;\nvar IFCALIGNMENTHORIZONTAL = 1545765605;\nvar IFCALIGNMENTCANT = 4266260250;\nvar IFCVIBRATIONDAMPERTYPE = 3956297820;\nvar IFCVIBRATIONDAMPER = 1530820697;\nvar IFCVEHICLE = 840318589;\nvar IFCTRANSPORTATIONDEVICE = 1953115116;\nvar IFCTRACKELEMENTTYPE = 618700268;\nvar IFCTENDONCONDUITTYPE = 2281632017;\nvar IFCTENDONCONDUIT = 3663046924;\nvar IFCSINESPIRAL = 42703149;\nvar IFCSIGNALTYPE = 1894708472;\nvar IFCSIGNTYPE = 3599934289;\nvar IFCSIGN = 33720170;\nvar IFCSEVENTHORDERPOLYNOMIALSPIRAL = 1027922057;\nvar IFCSEGMENTEDREFERENCECURVE = 544395925;\nvar IFCSECONDORDERPOLYNOMIALSPIRAL = 3649235739;\nvar IFCROADPART = 550521510;\nvar IFCROAD = 146592293;\nvar IFCRELADHERESTOELEMENT = 3818125796;\nvar IFCREFERENT = 4021432810;\nvar IFCRAILWAYPART = 1891881377;\nvar IFCRAILWAY = 3992365140;\nvar IFCRAILTYPE = 1763565496;\nvar IFCPOSITIONINGELEMENT = 1946335990;\nvar IFCPAVEMENTTYPE = 514975943;\nvar IFCNAVIGATIONELEMENTTYPE = 506776471;\nvar IFCMOORINGDEVICETYPE = 710110818;\nvar IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE = 1950438474;\nvar IFCMARINEPART = 976884017;\nvar IFCMARINEFACILITY = 525669439;\nvar IFCLIQUIDTERMINALTYPE = 1770583370;\nvar IFCLINEARELEMENT = 2176059722;\nvar IFCKERBTYPE = 679976338;\nvar IFCIMPACTPROTECTIONDEVICETYPE = 3948183225;\nvar IFCIMPACTPROTECTIONDEVICE = 2568555532;\nvar IFCGRADIENTCURVE = 2898700619;\nvar IFCGEOTECHNICALSTRATUM = 1594536857;\nvar IFCGEOTECHNICALELEMENT = 4230923436;\nvar IFCFACILITYPARTCOMMON = 4228831410;\nvar IFCFACILITYPART = 1310830890;\nvar IFCFACILITY = 24185140;\nvar IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID = 4234616927;\nvar IFCDEEPFOUNDATIONTYPE = 1306400036;\nvar IFCCOURSETYPE = 4189326743;\nvar IFCCOSINESPIRAL = 2000195564;\nvar IFCCLOTHOID = 3497074424;\nvar IFCBUILTELEMENTTYPE = 1626504194;\nvar IFCVEHICLETYPE = 3651464721;\nvar IFCTRIANGULATEDIRREGULARNETWORK = 1229763772;\nvar IFCTRANSPORTATIONDEVICETYPE = 3665877780;\nvar IFCTHIRDORDERPOLYNOMIALSPIRAL = 782932809;\nvar IFCSPIRAL = 2735484536;\nvar IFCSECTIONEDSURFACE = 1356537516;\nvar IFCSECTIONEDSOLIDHORIZONTAL = 1290935644;\nvar IFCSECTIONEDSOLID = 1862484736;\nvar IFCRELPOSITIONS = 1441486842;\nvar IFCRELASSOCIATESPROFILEDEF = 1033248425;\nvar IFCPOLYNOMIALCURVE = 3381221214;\nvar IFCOFFSETCURVEBYDISTANCES = 2485787929;\nvar IFCOFFSETCURVE = 590820931;\nvar IFCINDEXEDPOLYGONALTEXTUREMAP = 3465909080;\nvar IFCDIRECTRIXCURVESWEPTAREASOLID = 593015953;\nvar IFCCURVESEGMENT = 4212018352;\nvar IFCAXIS2PLACEMENTLINEAR = 3425423356;\nvar IFCSEGMENT = 823603102;\nvar IFCPOINTBYDISTANCEEXPRESSION = 2165702409;\nvar IFCOPENCROSSPROFILEDEF = 182550632;\nvar IFCLINEARPLACEMENT = 388784114;\nvar IFCALIGNMENTHORIZONTALSEGMENT = 536804194;\nvar IFCALIGNMENTCANTSEGMENT = 3752311538;\nvar IFCTEXTURECOORDINATEINDICESWITHVOIDS = 1010789467;\nvar IFCTEXTURECOORDINATEINDICES = 222769930;\nvar IFCQUANTITYNUMBER = 2691318326;\nvar IFCALIGNMENTVERTICALSEGMENT = 3633395639;\nvar IFCALIGNMENTPARAMETERSEGMENT = 2879124712;\nvar IFCCONTROLLER = 25142252;\nvar IFCALARM = 3087945054;\nvar IFCACTUATOR = 4288193352;\nvar IFCUNITARYCONTROLELEMENT = 630975310;\nvar IFCSENSOR = 4086658281;\nvar IFCPROTECTIVEDEVICETRIPPINGUNIT = 2295281155;\nvar IFCFLOWINSTRUMENT = 182646315;\nvar IFCFIRESUPPRESSIONTERMINAL = 1426591983;\nvar IFCFILTER = 819412036;\nvar IFCFAN = 3415622556;\nvar IFCELECTRICTIMECONTROL = 1003880860;\nvar IFCELECTRICMOTOR = 402227799;\nvar IFCELECTRICGENERATOR = 264262732;\nvar IFCELECTRICFLOWSTORAGEDEVICE = 3310460725;\nvar IFCELECTRICDISTRIBUTIONBOARD = 862014818;\nvar IFCELECTRICAPPLIANCE = 1904799276;\nvar IFCDUCTSILENCER = 1360408905;\nvar IFCDUCTSEGMENT = 3518393246;\nvar IFCDUCTFITTING = 342316401;\nvar IFCDISTRIBUTIONCIRCUIT = 562808652;\nvar IFCDAMPER = 4074379575;\nvar IFCCOOLINGTOWER = 3640358203;\nvar IFCCOOLEDBEAM = 4136498852;\nvar IFCCONDENSER = 2272882330;\nvar IFCCOMPRESSOR = 3571504051;\nvar IFCCOMMUNICATIONSAPPLIANCE = 3221913625;\nvar IFCCOIL = 639361253;\nvar IFCCHILLER = 3902619387;\nvar IFCCABLESEGMENT = 4217484030;\nvar IFCCABLEFITTING = 1051757585;\nvar IFCCABLECARRIERSEGMENT = 3758799889;\nvar IFCCABLECARRIERFITTING = 635142910;\nvar IFCBURNER = 2938176219;\nvar IFCBOILER = 32344328;\nvar IFCBEAMSTANDARDCASE = 2906023776;\nvar IFCAUDIOVISUALAPPLIANCE = 277319702;\nvar IFCAIRTOAIRHEATRECOVERY = 2056796094;\nvar IFCAIRTERMINALBOX = 177149247;\nvar IFCAIRTERMINAL = 1634111441;\nvar IFCWINDOWSTANDARDCASE = 486154966;\nvar IFCWASTETERMINAL = 4237592921;\nvar IFCWALLELEMENTEDCASE = 4156078855;\nvar IFCVALVE = 4207607924;\nvar IFCUNITARYEQUIPMENT = 4292641817;\nvar IFCUNITARYCONTROLELEMENTTYPE = 3179687236;\nvar IFCTUBEBUNDLE = 3026737570;\nvar IFCTRANSFORMER = 3825984169;\nvar IFCTANK = 812556717;\nvar IFCSWITCHINGDEVICE = 1162798199;\nvar IFCSTRUCTURALLOADCASE = 385403989;\nvar IFCSTACKTERMINAL = 1404847402;\nvar IFCSPACEHEATER = 1999602285;\nvar IFCSOLARDEVICE = 3420628829;\nvar IFCSLABSTANDARDCASE = 3027962421;\nvar IFCSLABELEMENTEDCASE = 3127900445;\nvar IFCSHADINGDEVICE = 1329646415;\nvar IFCSANITARYTERMINAL = 3053780830;\nvar IFCREINFORCINGBARTYPE = 2572171363;\nvar IFCRATIONALBSPLINECURVEWITHKNOTS = 1232101972;\nvar IFCPUMP = 90941305;\nvar IFCPROTECTIVEDEVICETRIPPINGUNITTYPE = 655969474;\nvar IFCPROTECTIVEDEVICE = 738039164;\nvar IFCPLATESTANDARDCASE = 1156407060;\nvar IFCPIPESEGMENT = 3612865200;\nvar IFCPIPEFITTING = 310824031;\nvar IFCOUTLET = 3694346114;\nvar IFCOUTERBOUNDARYCURVE = 144952367;\nvar IFCMOTORCONNECTION = 2474470126;\nvar IFCMEMBERSTANDARDCASE = 1911478936;\nvar IFCMEDICALDEVICE = 1437502449;\nvar IFCLIGHTFIXTURE = 629592764;\nvar IFCLAMP = 76236018;\nvar IFCJUNCTIONBOX = 2176052936;\nvar IFCINTERCEPTOR = 4175244083;\nvar IFCHUMIDIFIER = 2068733104;\nvar IFCHEATEXCHANGER = 3319311131;\nvar IFCFLOWMETER = 2188021234;\nvar IFCEXTERNALSPATIALELEMENT = 1209101575;\nvar IFCEVAPORATOR = 484807127;\nvar IFCEVAPORATIVECOOLER = 3747195512;\nvar IFCENGINE = 2814081492;\nvar IFCELECTRICDISTRIBUTIONBOARDTYPE = 2417008758;\nvar IFCDOORSTANDARDCASE = 3242481149;\nvar IFCDISTRIBUTIONSYSTEM = 3205830791;\nvar IFCCOMMUNICATIONSAPPLIANCETYPE = 400855858;\nvar IFCCOLUMNSTANDARDCASE = 905975707;\nvar IFCCIVILELEMENT = 1677625105;\nvar IFCCHIMNEY = 3296154744;\nvar IFCCABLEFITTINGTYPE = 2674252688;\nvar IFCBURNERTYPE = 2188180465;\nvar IFCBUILDINGSYSTEM = 1177604601;\nvar IFCBUILDINGELEMENTPARTTYPE = 39481116;\nvar IFCBOUNDARYCURVE = 1136057603;\nvar IFCBSPLINECURVEWITHKNOTS = 2461110595;\nvar IFCAUDIOVISUALAPPLIANCETYPE = 1532957894;\nvar IFCWORKCALENDAR = 4088093105;\nvar IFCWINDOWTYPE = 4009809668;\nvar IFCVOIDINGFEATURE = 926996030;\nvar IFCVIBRATIONISOLATOR = 2391383451;\nvar IFCTENDONTYPE = 2415094496;\nvar IFCTENDONANCHORTYPE = 3081323446;\nvar IFCSYSTEMFURNITUREELEMENT = 413509423;\nvar IFCSURFACEFEATURE = 3101698114;\nvar IFCSTRUCTURALSURFACEACTION = 3657597509;\nvar IFCSTRUCTURALCURVEREACTION = 2757150158;\nvar IFCSTRUCTURALCURVEACTION = 1004757350;\nvar IFCSTAIRTYPE = 338393293;\nvar IFCSOLARDEVICETYPE = 1072016465;\nvar IFCSHADINGDEVICETYPE = 4074543187;\nvar IFCSEAMCURVE = 2157484638;\nvar IFCROOFTYPE = 2781568857;\nvar IFCREINFORCINGMESHTYPE = 2310774935;\nvar IFCREINFORCINGELEMENTTYPE = 964333572;\nvar IFCRATIONALBSPLINESURFACEWITHKNOTS = 683857671;\nvar IFCRAMPTYPE = 1469900589;\nvar IFCPOLYGONALFACESET = 2839578677;\nvar IFCPILETYPE = 1158309216;\nvar IFCOPENINGSTANDARDCASE = 3079942009;\nvar IFCMEDICALDEVICETYPE = 1114901282;\nvar IFCINTERSECTIONCURVE = 3113134337;\nvar IFCINTERCEPTORTYPE = 3946677679;\nvar IFCINDEXEDPOLYCURVE = 2571569899;\nvar IFCGEOGRAPHICELEMENT = 3493046030;\nvar IFCFURNITURE = 1509553395;\nvar IFCFOOTINGTYPE = 1893162501;\nvar IFCEXTERNALSPATIALSTRUCTUREELEMENT = 2853485674;\nvar IFCEVENT = 4148101412;\nvar IFCENGINETYPE = 132023988;\nvar IFCELEMENTASSEMBLYTYPE = 2397081782;\nvar IFCDOORTYPE = 2323601079;\nvar IFCCYLINDRICALSURFACE = 1213902940;\nvar IFCCONSTRUCTIONPRODUCTRESOURCETYPE = 1525564444;\nvar IFCCONSTRUCTIONMATERIALRESOURCETYPE = 4105962743;\nvar IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE = 2185764099;\nvar IFCCOMPOSITECURVEONSURFACE = 15328376;\nvar IFCCOMPLEXPROPERTYTEMPLATE = 3875453745;\nvar IFCCIVILELEMENTTYPE = 3893394355;\nvar IFCCHIMNEYTYPE = 2197970202;\nvar IFCBSPLINESURFACEWITHKNOTS = 167062518;\nvar IFCBSPLINESURFACE = 2887950389;\nvar IFCADVANCEDBREPWITHVOIDS = 2603310189;\nvar IFCADVANCEDBREP = 1635779807;\nvar IFCTRIANGULATEDFACESET = 2916149573;\nvar IFCTOROIDALSURFACE = 1935646853;\nvar IFCTESSELLATEDFACESET = 2387106220;\nvar IFCTASKTYPE = 3206491090;\nvar IFCSURFACECURVE = 699246055;\nvar IFCSUBCONTRACTRESOURCETYPE = 4095615324;\nvar IFCSTRUCTURALSURFACEREACTION = 603775116;\nvar IFCSPHERICALSURFACE = 4015995234;\nvar IFCSPATIALZONETYPE = 2481509218;\nvar IFCSPATIALZONE = 463610769;\nvar IFCSPATIALELEMENTTYPE = 710998568;\nvar IFCSPATIALELEMENT = 1412071761;\nvar IFCSIMPLEPROPERTYTEMPLATE = 3663146110;\nvar IFCREVOLVEDAREASOLIDTAPERED = 3243963512;\nvar IFCREPARAMETRISEDCOMPOSITECURVESEGMENT = 816062949;\nvar IFCRELSPACEBOUNDARY2NDLEVEL = 1521410863;\nvar IFCRELSPACEBOUNDARY1STLEVEL = 3523091289;\nvar IFCRELINTERFERESELEMENTS = 427948657;\nvar IFCRELDEFINESBYTEMPLATE = 307848117;\nvar IFCRELDEFINESBYOBJECT = 1462361463;\nvar IFCRELDECLARES = 2565941209;\nvar IFCRELASSIGNSTOGROUPBYFACTOR = 1027710054;\nvar IFCPROPERTYTEMPLATE = 3521284610;\nvar IFCPROPERTYSETTEMPLATE = 492091185;\nvar IFCPROJECTLIBRARY = 653396225;\nvar IFCPROCEDURETYPE = 569719735;\nvar IFCPREDEFINEDPROPERTYSET = 3967405729;\nvar IFCPCURVE = 1682466193;\nvar IFCLABORRESOURCETYPE = 428585644;\nvar IFCINDEXEDPOLYGONALFACEWITHVOIDS = 2294589976;\nvar IFCINDEXEDPOLYGONALFACE = 178912537;\nvar IFCGEOGRAPHICELEMENTTYPE = 4095422895;\nvar IFCFIXEDREFERENCESWEPTAREASOLID = 2652556860;\nvar IFCEXTRUDEDAREASOLIDTAPERED = 2804161546;\nvar IFCEVENTTYPE = 4024345920;\nvar IFCCURVEBOUNDEDSURFACE = 2629017746;\nvar IFCCREWRESOURCETYPE = 1815067380;\nvar IFCCONTEXT = 3419103109;\nvar IFCCONSTRUCTIONRESOURCETYPE = 2574617495;\nvar IFCCARTESIANPOINTLIST3D = 2059837836;\nvar IFCCARTESIANPOINTLIST2D = 1675464909;\nvar IFCCARTESIANPOINTLIST = 574549367;\nvar IFCADVANCEDFACE = 3406155212;\nvar IFCTYPERESOURCE = 3698973494;\nvar IFCTYPEPROCESS = 3736923433;\nvar IFCTESSELLATEDITEM = 901063453;\nvar IFCSWEPTDISKSOLIDPOLYGONAL = 1096409881;\nvar IFCRESOURCETIME = 1042787934;\nvar IFCRESOURCECONSTRAINTRELATIONSHIP = 1608871552;\nvar IFCRESOURCEAPPROVALRELATIONSHIP = 2943643501;\nvar IFCQUANTITYSET = 2090586900;\nvar IFCPROPERTYTEMPLATEDEFINITION = 1482703590;\nvar IFCPREDEFINEDPROPERTIES = 3778827333;\nvar IFCMIRROREDPROFILEDEF = 2998442950;\nvar IFCMATERIALRELATIONSHIP = 853536259;\nvar IFCMATERIALPROFILESETUSAGETAPERING = 3404854881;\nvar IFCMATERIALPROFILESETUSAGE = 3079605661;\nvar IFCMATERIALCONSTITUENTSET = 2852063980;\nvar IFCMATERIALCONSTITUENT = 3708119e3;\nvar IFCLAGTIME = 1585845231;\nvar IFCINDEXEDTRIANGLETEXTUREMAP = 2133299955;\nvar IFCINDEXEDTEXTUREMAP = 1437953363;\nvar IFCINDEXEDCOLOURMAP = 3570813810;\nvar IFCEXTERNALREFERENCERELATIONSHIP = 1437805879;\nvar IFCEXTENDEDPROPERTIES = 297599258;\nvar IFCEVENTTIME = 211053100;\nvar IFCCONVERSIONBASEDUNITWITHOFFSET = 2713554722;\nvar IFCCOLOURRGBLIST = 3285139300;\nvar IFCWORKTIME = 1236880293;\nvar IFCTIMEPERIOD = 1199560280;\nvar IFCTEXTUREVERTEXLIST = 3611470254;\nvar IFCTASKTIMERECURRING = 2771591690;\nvar IFCTASKTIME = 1549132990;\nvar IFCTABLECOLUMN = 2043862942;\nvar IFCSURFACEREINFORCEMENTAREA = 2934153892;\nvar IFCSTRUCTURALLOADORRESULT = 609421318;\nvar IFCSTRUCTURALLOADCONFIGURATION = 3478079324;\nvar IFCSCHEDULINGTIME = 1054537805;\nvar IFCRESOURCELEVELRELATIONSHIP = 2439245199;\nvar IFCREFERENCE = 2433181523;\nvar IFCRECURRENCEPATTERN = 3915482550;\nvar IFCPROPERTYABSTRACTION = 986844984;\nvar IFCPROJECTEDCRS = 3843373140;\nvar IFCPRESENTATIONITEM = 677532197;\nvar IFCMATERIALUSAGEDEFINITION = 1507914824;\nvar IFCMATERIALPROFILEWITHOFFSETS = 552965576;\nvar IFCMATERIALPROFILESET = 164193824;\nvar IFCMATERIALPROFILE = 2235152071;\nvar IFCMATERIALLAYERWITHOFFSETS = 1847252529;\nvar IFCMATERIALDEFINITION = 760658860;\nvar IFCMAPCONVERSION = 3057273783;\nvar IFCEXTERNALINFORMATION = 4294318154;\nvar IFCCOORDINATEREFERENCESYSTEM = 1466758467;\nvar IFCCOORDINATEOPERATION = 1785450214;\nvar IFCCONNECTIONVOLUMEGEOMETRY = 775493141;\nvar IFCREINFORCINGBAR = 979691226;\nvar IFCELECTRICDISTRIBUTIONPOINT = 3700593921;\nvar IFCDISTRIBUTIONCONTROLELEMENT = 1062813311;\nvar IFCDISTRIBUTIONCHAMBERELEMENT = 1052013943;\nvar IFCCONTROLLERTYPE = 578613899;\nvar IFCCHAMFEREDGEFEATURE = 2454782716;\nvar IFCBEAM = 753842376;\nvar IFCALARMTYPE = 3001207471;\nvar IFCACTUATORTYPE = 2874132201;\nvar IFCWINDOW = 3304561284;\nvar IFCWALLSTANDARDCASE = 3512223829;\nvar IFCWALL = 2391406946;\nvar IFCVIBRATIONISOLATORTYPE = 3313531582;\nvar IFCTENDONANCHOR = 2347447852;\nvar IFCTENDON = 3824725483;\nvar IFCSTRUCTURALANALYSISMODEL = 2515109513;\nvar IFCSTAIRFLIGHT = 4252922144;\nvar IFCSTAIR = 331165859;\nvar IFCSLAB = 1529196076;\nvar IFCSENSORTYPE = 1783015770;\nvar IFCROUNDEDEDGEFEATURE = 1376911519;\nvar IFCROOF = 2016517767;\nvar IFCREINFORCINGMESH = 2320036040;\nvar IFCREINFORCINGELEMENT = 3027567501;\nvar IFCRATIONALBEZIERCURVE = 3055160366;\nvar IFCRAMPFLIGHT = 3283111854;\nvar IFCRAMP = 3024970846;\nvar IFCRAILING = 2262370178;\nvar IFCPLATE = 3171933400;\nvar IFCPILE = 1687234759;\nvar IFCMEMBER = 1073191201;\nvar IFCFOOTING = 900683007;\nvar IFCFLOWTREATMENTDEVICE = 3508470533;\nvar IFCFLOWTERMINAL = 2223149337;\nvar IFCFLOWSTORAGEDEVICE = 707683696;\nvar IFCFLOWSEGMENT = 987401354;\nvar IFCFLOWMOVINGDEVICE = 3132237377;\nvar IFCFLOWINSTRUMENTTYPE = 4037862832;\nvar IFCFLOWFITTING = 4278956645;\nvar IFCFLOWCONTROLLER = 2058353004;\nvar IFCFIRESUPPRESSIONTERMINALTYPE = 4222183408;\nvar IFCFILTERTYPE = 1810631287;\nvar IFCFANTYPE = 346874300;\nvar IFCENERGYCONVERSIONDEVICE = 1658829314;\nvar IFCELECTRICALELEMENT = 857184966;\nvar IFCELECTRICALCIRCUIT = 1634875225;\nvar IFCELECTRICTIMECONTROLTYPE = 712377611;\nvar IFCELECTRICMOTORTYPE = 1217240411;\nvar IFCELECTRICHEATERTYPE = 1365060375;\nvar IFCELECTRICGENERATORTYPE = 1534661035;\nvar IFCELECTRICFLOWSTORAGEDEVICETYPE = 3277789161;\nvar IFCELECTRICAPPLIANCETYPE = 663422040;\nvar IFCEDGEFEATURE = 855621170;\nvar IFCDUCTSILENCERTYPE = 2030761528;\nvar IFCDUCTSEGMENTTYPE = 3760055223;\nvar IFCDUCTFITTINGTYPE = 869906466;\nvar IFCDOOR = 395920057;\nvar IFCDISTRIBUTIONPORT = 3041715199;\nvar IFCDISTRIBUTIONFLOWELEMENT = 3040386961;\nvar IFCDISTRIBUTIONELEMENT = 1945004755;\nvar IFCDISTRIBUTIONCONTROLELEMENTTYPE = 2063403501;\nvar IFCDISTRIBUTIONCHAMBERELEMENTTYPE = 1599208980;\nvar IFCDISCRETEACCESSORYTYPE = 2635815018;\nvar IFCDISCRETEACCESSORY = 1335981549;\nvar IFCDIAMETERDIMENSION = 4147604152;\nvar IFCDAMPERTYPE = 3961806047;\nvar IFCCURTAINWALL = 3495092785;\nvar IFCCOVERING = 1973544240;\nvar IFCCOOLINGTOWERTYPE = 2954562838;\nvar IFCCOOLEDBEAMTYPE = 335055490;\nvar IFCCONSTRUCTIONPRODUCTRESOURCE = 488727124;\nvar IFCCONSTRUCTIONMATERIALRESOURCE = 1060000209;\nvar IFCCONSTRUCTIONEQUIPMENTRESOURCE = 3898045240;\nvar IFCCONDITIONCRITERION = 1163958913;\nvar IFCCONDITION = 2188551683;\nvar IFCCONDENSERTYPE = 2816379211;\nvar IFCCOMPRESSORTYPE = 3850581409;\nvar IFCCOLUMN = 843113511;\nvar IFCCOILTYPE = 2301859152;\nvar IFCCIRCLE = 2611217952;\nvar IFCCHILLERTYPE = 2951183804;\nvar IFCCABLESEGMENTTYPE = 1285652485;\nvar IFCCABLECARRIERSEGMENTTYPE = 3293546465;\nvar IFCCABLECARRIERFITTINGTYPE = 395041908;\nvar IFCBUILDINGELEMENTPROXYTYPE = 1909888760;\nvar IFCBUILDINGELEMENTPROXY = 1095909175;\nvar IFCBUILDINGELEMENTPART = 2979338954;\nvar IFCBUILDINGELEMENTCOMPONENT = 52481810;\nvar IFCBUILDINGELEMENT = 3299480353;\nvar IFCBOILERTYPE = 231477066;\nvar IFCBEZIERCURVE = 1916977116;\nvar IFCBEAMTYPE = 819618141;\nvar IFCBSPLINECURVE = 1967976161;\nvar IFCASSET = 3460190687;\nvar IFCANGULARDIMENSION = 2470393545;\nvar IFCAIRTOAIRHEATRECOVERYTYPE = 1871374353;\nvar IFCAIRTERMINALTYPE = 3352864051;\nvar IFCAIRTERMINALBOXTYPE = 1411407467;\nvar IFCACTIONREQUEST = 3821786052;\nvar IFC2DCOMPOSITECURVE = 1213861670;\nvar IFCZONE = 1033361043;\nvar IFCWORKSCHEDULE = 3342526732;\nvar IFCWORKPLAN = 4218914973;\nvar IFCWORKCONTROL = 1028945134;\nvar IFCWASTETERMINALTYPE = 1133259667;\nvar IFCWALLTYPE = 1898987631;\nvar IFCVIRTUALELEMENT = 2769231204;\nvar IFCVALVETYPE = 728799441;\nvar IFCUNITARYEQUIPMENTTYPE = 1911125066;\nvar IFCTUBEBUNDLETYPE = 1600972822;\nvar IFCTRIMMEDCURVE = 3593883385;\nvar IFCTRANSPORTELEMENT = 1620046519;\nvar IFCTRANSFORMERTYPE = 1692211062;\nvar IFCTIMESERIESSCHEDULE = 1637806684;\nvar IFCTANKTYPE = 5716631;\nvar IFCSYSTEM = 2254336722;\nvar IFCSWITCHINGDEVICETYPE = 2315554128;\nvar IFCSUBCONTRACTRESOURCE = 148013059;\nvar IFCSTRUCTURALSURFACECONNECTION = 1975003073;\nvar IFCSTRUCTURALRESULTGROUP = 2986769608;\nvar IFCSTRUCTURALPOINTREACTION = 1235345126;\nvar IFCSTRUCTURALPOINTCONNECTION = 734778138;\nvar IFCSTRUCTURALPOINTACTION = 2082059205;\nvar IFCSTRUCTURALPLANARACTIONVARYING = 3987759626;\nvar IFCSTRUCTURALPLANARACTION = 1621171031;\nvar IFCSTRUCTURALLOADGROUP = 1252848954;\nvar IFCSTRUCTURALLINEARACTIONVARYING = 1721250024;\nvar IFCSTRUCTURALLINEARACTION = 1807405624;\nvar IFCSTRUCTURALCURVEMEMBERVARYING = 2445595289;\nvar IFCSTRUCTURALCURVEMEMBER = 214636428;\nvar IFCSTRUCTURALCURVECONNECTION = 4243806635;\nvar IFCSTRUCTURALCONNECTION = 1179482911;\nvar IFCSTRUCTURALACTION = 682877961;\nvar IFCSTAIRFLIGHTTYPE = 1039846685;\nvar IFCSTACKTERMINALTYPE = 3112655638;\nvar IFCSPACETYPE = 3812236995;\nvar IFCSPACEPROGRAM = 652456506;\nvar IFCSPACEHEATERTYPE = 1305183839;\nvar IFCSPACE = 3856911033;\nvar IFCSLABTYPE = 2533589738;\nvar IFCSITE = 4097777520;\nvar IFCSERVICELIFE = 4105383287;\nvar IFCSCHEDULETIMECONTROL = 3517283431;\nvar IFCSANITARYTERMINALTYPE = 1768891740;\nvar IFCRELASSIGNSTASKS = 2863920197;\nvar IFCRELAGGREGATES = 160246688;\nvar IFCRAMPFLIGHTTYPE = 2324767716;\nvar IFCRAILINGTYPE = 2893384427;\nvar IFCRADIUSDIMENSION = 3248260540;\nvar IFCPUMPTYPE = 2250791053;\nvar IFCPROTECTIVEDEVICETYPE = 1842657554;\nvar IFCPROJECTIONELEMENT = 3651124850;\nvar IFCPROJECTORDERRECORD = 3642467123;\nvar IFCPROJECTORDER = 2904328755;\nvar IFCPROCEDURE = 2744685151;\nvar IFCPORT = 3740093272;\nvar IFCPOLYLINE = 3724593414;\nvar IFCPLATETYPE = 4017108033;\nvar IFCPIPESEGMENTTYPE = 4231323485;\nvar IFCPIPEFITTINGTYPE = 804291784;\nvar IFCPERMIT = 3327091369;\nvar IFCPERFORMANCEHISTORY = 2382730787;\nvar IFCOUTLETTYPE = 2837617999;\nvar IFCORDERACTION = 3425660407;\nvar IFCOPENINGELEMENT = 3588315303;\nvar IFCOCCUPANT = 4143007308;\nvar IFCMOVE = 1916936684;\nvar IFCMOTORCONNECTIONTYPE = 977012517;\nvar IFCMEMBERTYPE = 3181161470;\nvar IFCMECHANICALFASTENERTYPE = 2108223431;\nvar IFCMECHANICALFASTENER = 377706215;\nvar IFCLINEARDIMENSION = 2506943328;\nvar IFCLIGHTFIXTURETYPE = 1161773419;\nvar IFCLAMPTYPE = 1051575348;\nvar IFCLABORRESOURCE = 3827777499;\nvar IFCJUNCTIONBOXTYPE = 4288270099;\nvar IFCINVENTORY = 2391368822;\nvar IFCHUMIDIFIERTYPE = 1806887404;\nvar IFCHEATEXCHANGERTYPE = 1251058090;\nvar IFCGROUP = 2706460486;\nvar IFCGRID = 3009204131;\nvar IFCGASTERMINALTYPE = 200128114;\nvar IFCFURNITURESTANDARD = 814719939;\nvar IFCFURNISHINGELEMENT = 263784265;\nvar IFCFLOWTREATMENTDEVICETYPE = 3009222698;\nvar IFCFLOWTERMINALTYPE = 2297155007;\nvar IFCFLOWSTORAGEDEVICETYPE = 1339347760;\nvar IFCFLOWSEGMENTTYPE = 1834744321;\nvar IFCFLOWMOVINGDEVICETYPE = 1482959167;\nvar IFCFLOWMETERTYPE = 3815607619;\nvar IFCFLOWFITTINGTYPE = 3198132628;\nvar IFCFLOWCONTROLLERTYPE = 3907093117;\nvar IFCFEATUREELEMENTSUBTRACTION = 1287392070;\nvar IFCFEATUREELEMENTADDITION = 2143335405;\nvar IFCFEATUREELEMENT = 2827207264;\nvar IFCFASTENERTYPE = 2489546625;\nvar IFCFASTENER = 647756555;\nvar IFCFACETEDBREPWITHVOIDS = 3737207727;\nvar IFCFACETEDBREP = 807026263;\nvar IFCEVAPORATORTYPE = 3390157468;\nvar IFCEVAPORATIVECOOLERTYPE = 3174744832;\nvar IFCEQUIPMENTSTANDARD = 3272907226;\nvar IFCEQUIPMENTELEMENT = 1962604670;\nvar IFCENERGYCONVERSIONDEVICETYPE = 2107101300;\nvar IFCELLIPSE = 1704287377;\nvar IFCELEMENTCOMPONENTTYPE = 2590856083;\nvar IFCELEMENTCOMPONENT = 1623761950;\nvar IFCELEMENTASSEMBLY = 4123344466;\nvar IFCELEMENT = 1758889154;\nvar IFCELECTRICALBASEPROPERTIES = 360485395;\nvar IFCDISTRIBUTIONFLOWELEMENTTYPE = 3849074793;\nvar IFCDISTRIBUTIONELEMENTTYPE = 3256556792;\nvar IFCDIMENSIONCURVEDIRECTEDCALLOUT = 681481545;\nvar IFCCURTAINWALLTYPE = 1457835157;\nvar IFCCREWRESOURCE = 3295246426;\nvar IFCCOVERINGTYPE = 1916426348;\nvar IFCCOSTSCHEDULE = 1419761937;\nvar IFCCOSTITEM = 3895139033;\nvar IFCCONTROL = 3293443760;\nvar IFCCONSTRUCTIONRESOURCE = 2559216714;\nvar IFCCONIC = 2510884976;\nvar IFCCOMPOSITECURVE = 3732776249;\nvar IFCCOLUMNTYPE = 300633059;\nvar IFCCIRCLEHOLLOWPROFILEDEF = 2937912522;\nvar IFCBUILDINGSTOREY = 3124254112;\nvar IFCBUILDINGELEMENTTYPE = 1950629157;\nvar IFCBUILDING = 4031249490;\nvar IFCBOUNDEDCURVE = 1260505505;\nvar IFCBOOLEANCLIPPINGRESULT = 3649129432;\nvar IFCBLOCK = 1334484129;\nvar IFCASYMMETRICISHAPEPROFILEDEF = 3207858831;\nvar IFCANNOTATION = 1674181508;\nvar IFCACTOR = 2296667514;\nvar IFCTRANSPORTELEMENTTYPE = 2097647324;\nvar IFCTASK = 3473067441;\nvar IFCSYSTEMFURNITUREELEMENTTYPE = 1580310250;\nvar IFCSURFACEOFREVOLUTION = 4124788165;\nvar IFCSURFACEOFLINEAREXTRUSION = 2809605785;\nvar IFCSURFACECURVESWEPTAREASOLID = 2028607225;\nvar IFCSTRUCTUREDDIMENSIONCALLOUT = 4070609034;\nvar IFCSTRUCTURALSURFACEMEMBERVARYING = 2218152070;\nvar IFCSTRUCTURALSURFACEMEMBER = 3979015343;\nvar IFCSTRUCTURALREACTION = 3689010777;\nvar IFCSTRUCTURALMEMBER = 530289379;\nvar IFCSTRUCTURALITEM = 3136571912;\nvar IFCSTRUCTURALACTIVITY = 3544373492;\nvar IFCSPHERE = 451544542;\nvar IFCSPATIALSTRUCTUREELEMENTTYPE = 3893378262;\nvar IFCSPATIALSTRUCTUREELEMENT = 2706606064;\nvar IFCRIGHTCIRCULARCYLINDER = 3626867408;\nvar IFCRIGHTCIRCULARCONE = 4158566097;\nvar IFCREVOLVEDAREASOLID = 1856042241;\nvar IFCRESOURCE = 2914609552;\nvar IFCRELVOIDSELEMENT = 1401173127;\nvar IFCRELSPACEBOUNDARY = 3451746338;\nvar IFCRELSERVICESBUILDINGS = 366585022;\nvar IFCRELSEQUENCE = 4122056220;\nvar IFCRELSCHEDULESCOSTITEMS = 1058617721;\nvar IFCRELREFERENCEDINSPATIALSTRUCTURE = 1245217292;\nvar IFCRELPROJECTSELEMENT = 750771296;\nvar IFCRELOVERRIDESPROPERTIES = 202636808;\nvar IFCRELOCCUPIESSPACES = 2051452291;\nvar IFCRELNESTS = 3268803585;\nvar IFCRELINTERACTIONREQUIREMENTS = 4189434867;\nvar IFCRELFLOWCONTROLELEMENTS = 279856033;\nvar IFCRELFILLSELEMENT = 3940055652;\nvar IFCRELDEFINESBYTYPE = 781010003;\nvar IFCRELDEFINESBYPROPERTIES = 4186316022;\nvar IFCRELDEFINES = 693640335;\nvar IFCRELDECOMPOSES = 2551354335;\nvar IFCRELCOVERSSPACES = 2802773753;\nvar IFCRELCOVERSBLDGELEMENTS = 886880790;\nvar IFCRELCONTAINEDINSPATIALSTRUCTURE = 3242617779;\nvar IFCRELCONNECTSWITHREALIZINGELEMENTS = 3678494232;\nvar IFCRELCONNECTSWITHECCENTRICITY = 504942748;\nvar IFCRELCONNECTSSTRUCTURALMEMBER = 1638771189;\nvar IFCRELCONNECTSSTRUCTURALELEMENT = 3912681535;\nvar IFCRELCONNECTSSTRUCTURALACTIVITY = 2127690289;\nvar IFCRELCONNECTSPORTS = 3190031847;\nvar IFCRELCONNECTSPORTTOELEMENT = 4201705270;\nvar IFCRELCONNECTSPATHELEMENTS = 3945020480;\nvar IFCRELCONNECTSELEMENTS = 1204542856;\nvar IFCRELCONNECTS = 826625072;\nvar IFCRELASSOCIATESPROFILEPROPERTIES = 2851387026;\nvar IFCRELASSOCIATESMATERIAL = 2655215786;\nvar IFCRELASSOCIATESLIBRARY = 3840914261;\nvar IFCRELASSOCIATESDOCUMENT = 982818633;\nvar IFCRELASSOCIATESCONSTRAINT = 2728634034;\nvar IFCRELASSOCIATESCLASSIFICATION = 919958153;\nvar IFCRELASSOCIATESAPPROVAL = 4095574036;\nvar IFCRELASSOCIATESAPPLIEDVALUE = 1327628568;\nvar IFCRELASSOCIATES = 1865459582;\nvar IFCRELASSIGNSTORESOURCE = 205026976;\nvar IFCRELASSIGNSTOPROJECTORDER = 3372526763;\nvar IFCRELASSIGNSTOPRODUCT = 2857406711;\nvar IFCRELASSIGNSTOPROCESS = 4278684876;\nvar IFCRELASSIGNSTOGROUP = 1307041759;\nvar IFCRELASSIGNSTOCONTROL = 2495723537;\nvar IFCRELASSIGNSTOACTOR = 1683148259;\nvar IFCRELASSIGNS = 3939117080;\nvar IFCRECTANGULARTRIMMEDSURFACE = 3454111270;\nvar IFCRECTANGULARPYRAMID = 2798486643;\nvar IFCRECTANGLEHOLLOWPROFILEDEF = 2770003689;\nvar IFCPROXY = 3219374653;\nvar IFCPROPERTYSET = 1451395588;\nvar IFCPROJECTIONCURVE = 4194566429;\nvar IFCPROJECT = 103090709;\nvar IFCPRODUCT = 4208778838;\nvar IFCPROCESS = 2945172077;\nvar IFCPLANE = 220341763;\nvar IFCPLANARBOX = 603570806;\nvar IFCPERMEABLECOVERINGPROPERTIES = 3566463478;\nvar IFCOFFSETCURVE3D = 3505215534;\nvar IFCOFFSETCURVE2D = 3388369263;\nvar IFCOBJECT = 3888040117;\nvar IFCMANIFOLDSOLIDBREP = 1425443689;\nvar IFCLINE = 1281925730;\nvar IFCLSHAPEPROFILEDEF = 572779678;\nvar IFCISHAPEPROFILEDEF = 1484403080;\nvar IFCGEOMETRICCURVESET = 987898635;\nvar IFCFURNITURETYPE = 1268542332;\nvar IFCFURNISHINGELEMENTTYPE = 4238390223;\nvar IFCFLUIDFLOWPROPERTIES = 3455213021;\nvar IFCFILLAREASTYLETILES = 315944413;\nvar IFCFILLAREASTYLETILESYMBOLWITHSTYLE = 4203026998;\nvar IFCFILLAREASTYLEHATCHING = 374418227;\nvar IFCFACEBASEDSURFACEMODEL = 2047409740;\nvar IFCEXTRUDEDAREASOLID = 477187591;\nvar IFCENERGYPROPERTIES = 80994333;\nvar IFCELLIPSEPROFILEDEF = 2835456948;\nvar IFCELEMENTARYSURFACE = 2777663545;\nvar IFCELEMENTTYPE = 339256511;\nvar IFCELEMENTQUANTITY = 1883228015;\nvar IFCEDGELOOP = 1472233963;\nvar IFCDRAUGHTINGPREDEFINEDCURVEFONT = 4006246654;\nvar IFCDRAUGHTINGPREDEFINEDCOLOUR = 445594917;\nvar IFCDRAUGHTINGCALLOUT = 3073041342;\nvar IFCDOORSTYLE = 526551008;\nvar IFCDOORPANELPROPERTIES = 1714330368;\nvar IFCDOORLININGPROPERTIES = 2963535650;\nvar IFCDIRECTION = 32440307;\nvar IFCDIMENSIONCURVETERMINATOR = 4054601972;\nvar IFCDIMENSIONCURVE = 606661476;\nvar IFCDEFINEDSYMBOL = 693772133;\nvar IFCCURVEBOUNDEDPLANE = 2827736869;\nvar IFCCURVE = 2601014836;\nvar IFCCSGSOLID = 2147822146;\nvar IFCCSGPRIMITIVE3D = 2506170314;\nvar IFCCRANERAILFSHAPEPROFILEDEF = 194851669;\nvar IFCCRANERAILASHAPEPROFILEDEF = 4133800736;\nvar IFCCOMPOSITECURVESEGMENT = 2485617015;\nvar IFCCLOSEDSHELL = 2205249479;\nvar IFCCIRCLEPROFILEDEF = 1383045692;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM = 1416205885;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR3D = 3331915920;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM = 3486308946;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR2D = 3749851601;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR = 59481748;\nvar IFCCARTESIANPOINT = 1123145078;\nvar IFCCSHAPEPROFILEDEF = 2898889636;\nvar IFCBOXEDHALFSPACE = 2713105998;\nvar IFCBOUNDINGBOX = 2581212453;\nvar IFCBOUNDEDSURFACE = 4182860854;\nvar IFCBOOLEANRESULT = 2736907675;\nvar IFCAXIS2PLACEMENT3D = 2740243338;\nvar IFCAXIS2PLACEMENT2D = 3125803723;\nvar IFCAXIS1PLACEMENT = 4261334040;\nvar IFCANNOTATIONSURFACE = 1302238472;\nvar IFCANNOTATIONFILLAREAOCCURRENCE = 2265737646;\nvar IFCANNOTATIONFILLAREA = 669184980;\nvar IFCANNOTATIONCURVEOCCURRENCE = 3288037868;\nvar IFCZSHAPEPROFILEDEF = 2543172580;\nvar IFCWINDOWSTYLE = 1299126871;\nvar IFCWINDOWPANELPROPERTIES = 512836454;\nvar IFCWINDOWLININGPROPERTIES = 336235671;\nvar IFCVERTEXLOOP = 2759199220;\nvar IFCVECTOR = 1417489154;\nvar IFCUSHAPEPROFILEDEF = 427810014;\nvar IFCTYPEPRODUCT = 2347495698;\nvar IFCTYPEOBJECT = 1628702193;\nvar IFCTWODIRECTIONREPEATFACTOR = 1345879162;\nvar IFCTRAPEZIUMPROFILEDEF = 2715220739;\nvar IFCTEXTLITERALWITHEXTENT = 3124975700;\nvar IFCTEXTLITERAL = 4282788508;\nvar IFCTERMINATORSYMBOL = 3028897424;\nvar IFCTSHAPEPROFILEDEF = 3071757647;\nvar IFCSWEPTSURFACE = 230924584;\nvar IFCSWEPTDISKSOLID = 1260650574;\nvar IFCSWEPTAREASOLID = 2247615214;\nvar IFCSURFACESTYLERENDERING = 1878645084;\nvar IFCSURFACE = 2513912981;\nvar IFCSUBEDGE = 2233826070;\nvar IFCSTRUCTURALSTEELPROFILEPROPERTIES = 3653947884;\nvar IFCSTRUCTURALPROFILEPROPERTIES = 3843319758;\nvar IFCSTRUCTURALLOADSINGLEFORCEWARPING = 1190533807;\nvar IFCSTRUCTURALLOADSINGLEFORCE = 1597423693;\nvar IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION = 1973038258;\nvar IFCSTRUCTURALLOADSINGLEDISPLACEMENT = 2473145415;\nvar IFCSTRUCTURALLOADPLANARFORCE = 2668620305;\nvar IFCSTRUCTURALLOADLINEARFORCE = 1595516126;\nvar IFCSPACETHERMALLOADPROPERTIES = 390701378;\nvar IFCSOUNDVALUE = 1202362311;\nvar IFCSOUNDPROPERTIES = 2485662743;\nvar IFCSOLIDMODEL = 723233188;\nvar IFCSLIPPAGECONNECTIONCONDITION = 2609359061;\nvar IFCSHELLBASEDSURFACEMODEL = 4124623270;\nvar IFCSERVICELIFEFACTOR = 2411513650;\nvar IFCSECTIONEDSPINE = 1509187699;\nvar IFCROUNDEDRECTANGLEPROFILEDEF = 2778083089;\nvar IFCRELATIONSHIP = 478536968;\nvar IFCREINFORCEMENTDEFINITIONPROPERTIES = 3765753017;\nvar IFCREGULARTIMESERIES = 3413951693;\nvar IFCRECTANGLEPROFILEDEF = 3615266464;\nvar IFCPROPERTYTABLEVALUE = 110355661;\nvar IFCPROPERTYSINGLEVALUE = 3650150729;\nvar IFCPROPERTYSETDEFINITION = 3357820518;\nvar IFCPROPERTYREFERENCEVALUE = 941946838;\nvar IFCPROPERTYLISTVALUE = 2752243245;\nvar IFCPROPERTYENUMERATEDVALUE = 4166981789;\nvar IFCPROPERTYDEFINITION = 1680319473;\nvar IFCPROPERTYBOUNDEDVALUE = 871118103;\nvar IFCPRODUCTDEFINITIONSHAPE = 673634403;\nvar IFCPREDEFINEDPOINTMARKERSYMBOL = 179317114;\nvar IFCPREDEFINEDDIMENSIONSYMBOL = 433424934;\nvar IFCPREDEFINEDCURVEFONT = 2559016684;\nvar IFCPREDEFINEDCOLOUR = 759155922;\nvar IFCPOLYGONALBOUNDEDHALFSPACE = 2775532180;\nvar IFCPOLYLOOP = 2924175390;\nvar IFCPOINTONSURFACE = 1423911732;\nvar IFCPOINTONCURVE = 4022376103;\nvar IFCPOINT = 2067069095;\nvar IFCPLANAREXTENT = 1663979128;\nvar IFCPLACEMENT = 2004835150;\nvar IFCPIXELTEXTURE = 597895409;\nvar IFCPHYSICALCOMPLEXQUANTITY = 3021840470;\nvar IFCPATH = 2519244187;\nvar IFCPARAMETERIZEDPROFILEDEF = 2529465313;\nvar IFCORIENTEDEDGE = 1029017970;\nvar IFCOPENSHELL = 2665983363;\nvar IFCONEDIRECTIONREPEATFACTOR = 2833995503;\nvar IFCOBJECTDEFINITION = 219451334;\nvar IFCMECHANICALCONCRETEMATERIALPROPERTIES = 1430189142;\nvar IFCMATERIALDEFINITIONREPRESENTATION = 2022407955;\nvar IFCMAPPEDITEM = 2347385850;\nvar IFCLOOP = 1008929658;\nvar IFCLOCALPLACEMENT = 2624227202;\nvar IFCLIGHTSOURCESPOT = 3422422726;\nvar IFCLIGHTSOURCEPOSITIONAL = 1520743889;\nvar IFCLIGHTSOURCEGONIOMETRIC = 4266656042;\nvar IFCLIGHTSOURCEDIRECTIONAL = 2604431987;\nvar IFCLIGHTSOURCEAMBIENT = 125510826;\nvar IFCLIGHTSOURCE = 1402838566;\nvar IFCIRREGULARTIMESERIES = 3741457305;\nvar IFCIMAGETEXTURE = 3905492369;\nvar IFCHYGROSCOPICMATERIALPROPERTIES = 2445078500;\nvar IFCHALFSPACESOLID = 812098782;\nvar IFCGRIDPLACEMENT = 178086475;\nvar IFCGEOMETRICSET = 3590301190;\nvar IFCGEOMETRICREPRESENTATIONSUBCONTEXT = 4142052618;\nvar IFCGEOMETRICREPRESENTATIONITEM = 2453401579;\nvar IFCGEOMETRICREPRESENTATIONCONTEXT = 3448662350;\nvar IFCGENERALPROFILEPROPERTIES = 1446786286;\nvar IFCGENERALMATERIALPROPERTIES = 803998398;\nvar IFCFUELPROPERTIES = 3857492461;\nvar IFCFILLAREASTYLE = 738692330;\nvar IFCFAILURECONNECTIONCONDITION = 4219587988;\nvar IFCFACESURFACE = 3008276851;\nvar IFCFACEOUTERBOUND = 803316827;\nvar IFCFACEBOUND = 1809719519;\nvar IFCFACE = 2556980723;\nvar IFCEXTENDEDMATERIALPROPERTIES = 1860660968;\nvar IFCEDGECURVE = 476780140;\nvar IFCEDGE = 3900360178;\nvar IFCDRAUGHTINGPREDEFINEDTEXTFONT = 4170525392;\nvar IFCDOCUMENTREFERENCE = 3732053477;\nvar IFCDIMENSIONPAIR = 1694125774;\nvar IFCDIMENSIONCALLOUTRELATIONSHIP = 2273265877;\nvar IFCDERIVEDPROFILEDEF = 3632507154;\nvar IFCCURVESTYLE = 3800577675;\nvar IFCCONVERSIONBASEDUNIT = 2889183280;\nvar IFCCONTEXTDEPENDENTUNIT = 3050246964;\nvar IFCCONNECTIONPOINTECCENTRICITY = 45288368;\nvar IFCCONNECTIONCURVEGEOMETRY = 1981873012;\nvar IFCCONNECTEDFACESET = 370225590;\nvar IFCCOMPOSITEPROFILEDEF = 1485152156;\nvar IFCCOMPLEXPROPERTY = 2542286263;\nvar IFCCOLOURRGB = 776857604;\nvar IFCCLASSIFICATIONREFERENCE = 647927063;\nvar IFCCENTERLINEPROFILEDEF = 3150382593;\nvar IFCBLOBTEXTURE = 616511568;\nvar IFCARBITRARYPROFILEDEFWITHVOIDS = 2705031697;\nvar IFCARBITRARYOPENPROFILEDEF = 1310608509;\nvar IFCARBITRARYCLOSEDPROFILEDEF = 3798115385;\nvar IFCANNOTATIONTEXTOCCURRENCE = 2297822566;\nvar IFCANNOTATIONSYMBOLOCCURRENCE = 3612888222;\nvar IFCANNOTATIONSURFACEOCCURRENCE = 962685235;\nvar IFCANNOTATIONOCCURRENCE = 2442683028;\nvar IFCWATERPROPERTIES = 1065908215;\nvar IFCVIRTUALGRIDINTERSECTION = 891718957;\nvar IFCVERTEXPOINT = 1907098498;\nvar IFCVERTEXBASEDTEXTUREMAP = 3304826586;\nvar IFCVERTEX = 2799835756;\nvar IFCUNITASSIGNMENT = 180925521;\nvar IFCTOPOLOGYREPRESENTATION = 1735638870;\nvar IFCTOPOLOGICALREPRESENTATIONITEM = 1377556343;\nvar IFCTIMESERIESVALUE = 581633288;\nvar IFCTIMESERIESREFERENCERELATIONSHIP = 1718945513;\nvar IFCTIMESERIES = 3101149627;\nvar IFCTHERMALMATERIALPROPERTIES = 3317419933;\nvar IFCTEXTUREVERTEX = 1210645708;\nvar IFCTEXTUREMAP = 2552916305;\nvar IFCTEXTURECOORDINATEGENERATOR = 1742049831;\nvar IFCTEXTURECOORDINATE = 280115917;\nvar IFCTEXTSTYLEWITHBOXCHARACTERISTICS = 1484833681;\nvar IFCTEXTSTYLETEXTMODEL = 1640371178;\nvar IFCTEXTSTYLEFORDEFINEDFONT = 2636378356;\nvar IFCTEXTSTYLEFONTMODEL = 1983826977;\nvar IFCTEXTSTYLE = 1447204868;\nvar IFCTELECOMADDRESS = 912023232;\nvar IFCTABLEROW = 531007025;\nvar IFCTABLE = 985171141;\nvar IFCSYMBOLSTYLE = 1290481447;\nvar IFCSURFACETEXTURE = 626085974;\nvar IFCSURFACESTYLEWITHTEXTURES = 1351298697;\nvar IFCSURFACESTYLESHADING = 846575682;\nvar IFCSURFACESTYLEREFRACTION = 1607154358;\nvar IFCSURFACESTYLELIGHTING = 3303107099;\nvar IFCSURFACESTYLE = 1300840506;\nvar IFCSTYLEDREPRESENTATION = 3049322572;\nvar IFCSTYLEDITEM = 3958052878;\nvar IFCSTYLEMODEL = 2830218821;\nvar IFCSTRUCTURALLOADTEMPERATURE = 3408363356;\nvar IFCSTRUCTURALLOADSTATIC = 2525727697;\nvar IFCSTRUCTURALLOAD = 2162789131;\nvar IFCSTRUCTURALCONNECTIONCONDITION = 2273995522;\nvar IFCSIMPLEPROPERTY = 3692461612;\nvar IFCSHAPEREPRESENTATION = 4240577450;\nvar IFCSHAPEMODEL = 3982875396;\nvar IFCSHAPEASPECT = 867548509;\nvar IFCSECTIONREINFORCEMENTPROPERTIES = 4165799628;\nvar IFCSECTIONPROPERTIES = 2042790032;\nvar IFCSIUNIT = 448429030;\nvar IFCROOT = 2341007311;\nvar IFCRIBPLATEPROFILEPROPERTIES = 3679540991;\nvar IFCREPRESENTATIONMAP = 1660063152;\nvar IFCREPRESENTATIONITEM = 3008791417;\nvar IFCREPRESENTATIONCONTEXT = 3377609919;\nvar IFCREPRESENTATION = 1076942058;\nvar IFCRELAXATION = 1222501353;\nvar IFCREINFORCEMENTBARPROPERTIES = 1580146022;\nvar IFCREFERENCESVALUEDOCUMENT = 2692823254;\nvar IFCQUANTITYWEIGHT = 825690147;\nvar IFCQUANTITYVOLUME = 2405470396;\nvar IFCQUANTITYTIME = 3252649465;\nvar IFCQUANTITYLENGTH = 931644368;\nvar IFCQUANTITYCOUNT = 2093928680;\nvar IFCQUANTITYAREA = 2044713172;\nvar IFCPROPERTYENUMERATION = 3710013099;\nvar IFCPROPERTYDEPENDENCYRELATIONSHIP = 148025276;\nvar IFCPROPERTYCONSTRAINTRELATIONSHIP = 3896028662;\nvar IFCPROPERTY = 2598011224;\nvar IFCPROFILEPROPERTIES = 2802850158;\nvar IFCPROFILEDEF = 3958567839;\nvar IFCPRODUCTSOFCOMBUSTIONPROPERTIES = 2267347899;\nvar IFCPRODUCTREPRESENTATION = 2095639259;\nvar IFCPRESENTATIONSTYLEASSIGNMENT = 2417041796;\nvar IFCPRESENTATIONSTYLE = 3119450353;\nvar IFCPRESENTATIONLAYERWITHSTYLE = 1304840413;\nvar IFCPRESENTATIONLAYERASSIGNMENT = 2022622350;\nvar IFCPREDEFINEDTEXTFONT = 1775413392;\nvar IFCPREDEFINEDTERMINATORSYMBOL = 3213052703;\nvar IFCPREDEFINEDSYMBOL = 990879717;\nvar IFCPREDEFINEDITEM = 3727388367;\nvar IFCPOSTALADDRESS = 3355820592;\nvar IFCPHYSICALSIMPLEQUANTITY = 2226359599;\nvar IFCPHYSICALQUANTITY = 2483315170;\nvar IFCPERSONANDORGANIZATION = 101040310;\nvar IFCPERSON = 2077209135;\nvar IFCOWNERHISTORY = 1207048766;\nvar IFCORGANIZATIONRELATIONSHIP = 1411181986;\nvar IFCORGANIZATION = 4251960020;\nvar IFCOPTICALMATERIALPROPERTIES = 1227763645;\nvar IFCOBJECTIVE = 2251480897;\nvar IFCOBJECTPLACEMENT = 3701648758;\nvar IFCNAMEDUNIT = 1918398963;\nvar IFCMONETARYUNIT = 2706619895;\nvar IFCMETRIC = 3368373690;\nvar IFCMECHANICALSTEELMATERIALPROPERTIES = 677618848;\nvar IFCMECHANICALMATERIALPROPERTIES = 4256014907;\nvar IFCMEASUREWITHUNIT = 2597039031;\nvar IFCMATERIALPROPERTIES = 3265635763;\nvar IFCMATERIALLIST = 2199411900;\nvar IFCMATERIALLAYERSETUSAGE = 1303795690;\nvar IFCMATERIALLAYERSET = 3303938423;\nvar IFCMATERIALLAYER = 248100487;\nvar IFCMATERIALCLASSIFICATIONRELATIONSHIP = 1847130766;\nvar IFCMATERIAL = 1838606355;\nvar IFCLOCALTIME = 30780891;\nvar IFCLIGHTINTENSITYDISTRIBUTION = 1566485204;\nvar IFCLIGHTDISTRIBUTIONDATA = 4162380809;\nvar IFCLIBRARYREFERENCE = 3452421091;\nvar IFCLIBRARYINFORMATION = 2655187982;\nvar IFCIRREGULARTIMESERIESVALUE = 3020489413;\nvar IFCGRIDAXIS = 852622518;\nvar IFCEXTERNALLYDEFINEDTEXTFONT = 3548104201;\nvar IFCEXTERNALLYDEFINEDSYMBOL = 3207319532;\nvar IFCEXTERNALLYDEFINEDSURFACESTYLE = 1040185647;\nvar IFCEXTERNALLYDEFINEDHATCHSTYLE = 2242383968;\nvar IFCEXTERNALREFERENCE = 3200245327;\nvar IFCENVIRONMENTALIMPACTVALUE = 1648886627;\nvar IFCDRAUGHTINGCALLOUTRELATIONSHIP = 3796139169;\nvar IFCDOCUMENTINFORMATIONRELATIONSHIP = 770865208;\nvar IFCDOCUMENTINFORMATION = 1154170062;\nvar IFCDOCUMENTELECTRONICFORMAT = 1376555844;\nvar IFCDIMENSIONALEXPONENTS = 2949456006;\nvar IFCDERIVEDUNITELEMENT = 1045800335;\nvar IFCDERIVEDUNIT = 1765591967;\nvar IFCDATEANDTIME = 1072939445;\nvar IFCCURVESTYLEFONTPATTERN = 3510044353;\nvar IFCCURVESTYLEFONTANDSCALING = 2367409068;\nvar IFCCURVESTYLEFONT = 1105321065;\nvar IFCCURRENCYRELATIONSHIP = 539742890;\nvar IFCCOSTVALUE = 602808272;\nvar IFCCOORDINATEDUNIVERSALTIMEOFFSET = 1065062679;\nvar IFCCONSTRAINTRELATIONSHIP = 347226245;\nvar IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP = 613356794;\nvar IFCCONSTRAINTAGGREGATIONRELATIONSHIP = 1658513725;\nvar IFCCONSTRAINT = 1959218052;\nvar IFCCONNECTIONSURFACEGEOMETRY = 2732653382;\nvar IFCCONNECTIONPORTGEOMETRY = 4257277454;\nvar IFCCONNECTIONPOINTGEOMETRY = 2614616156;\nvar IFCCONNECTIONGEOMETRY = 2859738748;\nvar IFCCOLOURSPECIFICATION = 3264961684;\nvar IFCCLASSIFICATIONNOTATIONFACET = 3639012971;\nvar IFCCLASSIFICATIONNOTATION = 938368621;\nvar IFCCLASSIFICATIONITEMRELATIONSHIP = 1098599126;\nvar IFCCLASSIFICATIONITEM = 1767535486;\nvar IFCCLASSIFICATION = 747523909;\nvar IFCCALENDARDATE = 622194075;\nvar IFCBOUNDARYNODECONDITIONWARPING = 2069777674;\nvar IFCBOUNDARYNODECONDITION = 1387855156;\nvar IFCBOUNDARYFACECONDITION = 3367102660;\nvar IFCBOUNDARYEDGECONDITION = 1560379544;\nvar IFCBOUNDARYCONDITION = 4037036970;\nvar IFCAPPROVALRELATIONSHIP = 3869604511;\nvar IFCAPPROVALPROPERTYRELATIONSHIP = 390851274;\nvar IFCAPPROVALACTORRELATIONSHIP = 2080292479;\nvar IFCAPPROVAL = 130549933;\nvar IFCAPPLIEDVALUERELATIONSHIP = 1110488051;\nvar IFCAPPLIEDVALUE = 411424972;\nvar IFCAPPLICATION = 639542469;\nvar IFCADDRESS = 618182010;\nvar IFCACTORROLE = 3630933823;\nvar FILE_DESCRIPTION = 599546466;\nvar FILE_NAME = 1390159747;\nvar FILE_SCHEMA = 1109904537;\nvar Handle = class {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n};\nvar logical;\n(function(logical2) {\n logical2[logical2[\"FALSE\"] = 0] = \"FALSE\";\n logical2[logical2[\"TRUE\"] = 1] = \"TRUE\";\n logical2[logical2[\"UNKNOWN\"] = 2] = \"UNKNOWN\";\n})(logical || (logical = {}));\nvar IfcLineObject = class {\n constructor(expressID = -1) {\n this.expressID = expressID;\n this.type = 0;\n }\n};\nvar FromRawLineData = [];\nvar InversePropertyDef = {};\nvar InheritanceDef = {};\nvar Constructors = {};\nvar ToRawLineData = {};\nvar TypeInitialisers = {};\nvar SchemaNames = [];\nfunction TypeInitialiser(schema, tapeItem) {\n if (Array.isArray(tapeItem))\n tapeItem.map((p) => TypeInitialiser(schema, p));\n if (tapeItem.typecode)\n return TypeInitialisers[schema][tapeItem.typecode](tapeItem.value);\n else\n return tapeItem.value;\n}\nfunction Labelise(tapeItem) {\n if (tapeItem.label)\n return tapeItem;\n else\n return { value: tapeItem.value.toString(), valueType: tapeItem.type, type: 2, label: tapeItem.name };\n}\nfunction BooleanConvert(item) {\n switch (item.toString()) {\n case \"true\":\n return \"T\";\n case \"false\":\n return \"F\";\n case \"0\":\n return \"F\";\n case \"1\":\n return \"T\";\n case \"2\":\n return \"U\";\n }\n}\nvar Schemas;\n(function(Schemas2) {\n Schemas2[\"IFC2X3\"] = \"IFC2X3\";\n Schemas2[\"IFC4\"] = \"IFC4\";\n Schemas2[\"IFC4X3\"] = \"IFC4X3\";\n})(Schemas || (Schemas = {}));\nSchemaNames[1] = [\"IFC2X3\", \"IFC2X_FINAL\"];\nFromRawLineData[1] = {\n 3630933823: (v) => new IFC2X3.IfcActorRole(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC2X3.IfcAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 639542469: (v) => new IFC2X3.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => new IFC2X3.IfcAppliedValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 1110488051: (v) => {\n var _a;\n return new IFC2X3.IfcAppliedValueRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value));\n },\n 130549933: (v) => new IFC2X3.IfcApproval(!v[0] ? null : new IFC2X3.IfcText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), new IFC2X3.IfcIdentifier(!v[6] ? null : v[6].value)),\n 2080292479: (v) => new IFC2X3.IfcApprovalActorRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 390851274: (v) => {\n var _a;\n return new IFC2X3.IfcApprovalPropertyRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 3869604511: (v) => new IFC2X3.IfcApprovalRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value)),\n 4037036970: (v) => new IFC2X3.IfcBoundaryCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC2X3.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[6] ? null : v[6].value)),\n 3367102660: (v) => new IFC2X3.IfcBoundaryFaceCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[3] ? null : v[3].value)),\n 1387855156: (v) => new IFC2X3.IfcBoundaryNodeCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[6] ? null : v[6].value)),\n 2069777674: (v) => new IFC2X3.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 622194075: (v) => new IFC2X3.IfcCalendarDate(new IFC2X3.IfcDayInMonthNumber(!v[0] ? null : v[0].value), new IFC2X3.IfcMonthInYearNumber(!v[1] ? null : v[1].value), new IFC2X3.IfcYearNumber(!v[2] ? null : v[2].value)),\n 747523909: (v) => new IFC2X3.IfcClassification(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value)),\n 1767535486: (v) => new IFC2X3.IfcClassificationItem(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1098599126: (v) => {\n var _a;\n return new IFC2X3.IfcClassificationItemRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 938368621: (v) => {\n var _a;\n return new IFC2X3.IfcClassificationNotation(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3639012971: (v) => new IFC2X3.IfcClassificationNotationFacet(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3264961684: (v) => new IFC2X3.IfcColourSpecification(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2859738748: (_) => new IFC2X3.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC2X3.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 4257277454: (v) => new IFC2X3.IfcConnectionPortGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2732653382: (v) => new IFC2X3.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC2X3.IfcConstraint(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1658513725: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintAggregationRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[4]);\n },\n 613356794: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintClassificationRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 347226245: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1065062679: (v) => new IFC2X3.IfcCoordinatedUniversalTimeOffset(new IFC2X3.IfcHourInDay(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMinuteInHour(!v[1] ? null : v[1].value), v[2]),\n 602808272: (v) => new IFC2X3.IfcCostValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcText(!v[7] ? null : v[7].value)),\n 539742890: (v) => new IFC2X3.IfcCurrencyRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC2X3.IfcCurveStyleFont(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC2X3.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC2X3.IfcCurveStyleFontPattern(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1072939445: (v) => new IFC2X3.IfcDateAndTime(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1765591967: (v) => {\n var _a;\n return new IFC2X3.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1045800335: (v) => new IFC2X3.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC2X3.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 1376555844: (v) => new IFC2X3.IfcDocumentElectronicFormat(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1154170062: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDocumentInformation(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC2X3.IfcDocumentInformationRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3796139169: (v) => new IFC2X3.IfcDraughtingCalloutRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1648886627: (v) => new IFC2X3.IfcEnvironmentalImpactValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 3200245327: (v) => new IFC2X3.IfcExternalReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC2X3.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC2X3.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3207319532: (v) => new IFC2X3.IfcExternallyDefinedSymbol(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC2X3.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC2X3.IfcGridAxis(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC2X3.IfcIrregularTimeSeriesValue(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 2655187982: (v) => {\n var _a;\n return new IFC2X3.IfcLibraryInformation(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3452421091: (v) => new IFC2X3.IfcLibraryReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLightDistributionData(new IFC2X3.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC2X3.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 30780891: (v) => new IFC2X3.IfcLocalTime(new IFC2X3.IfcHourInDay(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMinuteInHour(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcSecondInMinute(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcDaylightSavingHour(!v[4] ? null : v[4].value)),\n 1838606355: (v) => new IFC2X3.IfcMaterial(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 248100487: (v) => new IFC2X3.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLogical(!v[2] ? null : v[2].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value));\n },\n 1303795690: (v) => new IFC2X3.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3265635763: (v) => new IFC2X3.IfcMaterialProperties(new Handle(!v[0] ? null : v[0].value)),\n 2597039031: (v) => new IFC2X3.IfcMeasureWithUnit(TypeInitialiser(1, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 4256014907: (v) => new IFC2X3.IfcMechanicalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value)),\n 677618848: (v) => {\n var _a;\n return new IFC2X3.IfcMechanicalSteelMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPressureMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPressureMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPressureMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : ((_a = v[12]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3368373690: (v) => new IFC2X3.IfcMetric(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value)),\n 2706619895: (v) => new IFC2X3.IfcMonetaryUnit(v[0]),\n 1918398963: (v) => new IFC2X3.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (_) => new IFC2X3.IfcObjectPlacement(),\n 2251480897: (v) => new IFC2X3.IfcObjective(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC2X3.IfcLabel(!v[10] ? null : v[10].value)),\n 1227763645: (v) => new IFC2X3.IfcOpticalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[9] ? null : v[9].value)),\n 4251960020: (v) => {\n var _a, _b;\n return new IFC2X3.IfcOrganization(!v[0] ? null : new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC2X3.IfcOrganizationRelationship(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC2X3.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC2X3.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC2X3.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC2X3.IfcPerson(!v[0] ? null : new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC2X3.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC2X3.IfcPhysicalQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC2X3.IfcPhysicalSimpleQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC2X3.IfcPostalAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value));\n },\n 3727388367: (v) => new IFC2X3.IfcPreDefinedItem(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 990879717: (v) => new IFC2X3.IfcPreDefinedSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3213052703: (v) => new IFC2X3.IfcPreDefinedTerminatorSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1775413392: (v) => new IFC2X3.IfcPreDefinedTextFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2022622350: (v) => {\n var _a;\n return new IFC2X3.IfcPresentationLayerAssignment(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPresentationLayerWithStyle(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value, !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC2X3.IfcPresentationStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2417041796: (v) => {\n var _a;\n return new IFC2X3.IfcPresentationStyleAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2095639259: (v) => {\n var _a;\n return new IFC2X3.IfcProductRepresentation(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2267347899: (v) => new IFC2X3.IfcProductsOfCombustionProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcSpecificHeatCapacityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value)),\n 3958567839: (v) => new IFC2X3.IfcProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value)),\n 2802850158: (v) => new IFC2X3.IfcProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2598011224: (v) => new IFC2X3.IfcProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 3896028662: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyConstraintRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value));\n },\n 148025276: (v) => new IFC2X3.IfcPropertyDependencyRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value)),\n 3710013099: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyEnumeration(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC2X3.IfcQuantityArea(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcAreaMeasure(!v[3] ? null : v[3].value)),\n 2093928680: (v) => new IFC2X3.IfcQuantityCount(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcCountMeasure(!v[3] ? null : v[3].value)),\n 931644368: (v) => new IFC2X3.IfcQuantityLength(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 3252649465: (v) => new IFC2X3.IfcQuantityTime(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcTimeMeasure(!v[3] ? null : v[3].value)),\n 2405470396: (v) => new IFC2X3.IfcQuantityVolume(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcVolumeMeasure(!v[3] ? null : v[3].value)),\n 825690147: (v) => new IFC2X3.IfcQuantityWeight(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcMassMeasure(!v[3] ? null : v[3].value)),\n 2692823254: (v) => {\n var _a;\n return new IFC2X3.IfcReferencesValueDocument(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value));\n },\n 1580146022: (v) => new IFC2X3.IfcReinforcementBarProperties(new IFC2X3.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 1222501353: (v) => new IFC2X3.IfcRelaxation(new IFC2X3.IfcNormalisedRatioMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1076942058: (v) => {\n var _a;\n return new IFC2X3.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC2X3.IfcRepresentationContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC2X3.IfcRepresentationItem(),\n 1660063152: (v) => new IFC2X3.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 3679540991: (v) => new IFC2X3.IfcRibPlateProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), v[6]),\n 2341007311: (v) => new IFC2X3.IfcRoot(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC2X3.IfcSIUnit(v[0], v[1], v[2]),\n 2042790032: (v) => new IFC2X3.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC2X3.IfcSectionReinforcementProperties(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 867548509: (v) => {\n var _a;\n return new IFC2X3.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : v[3].value, new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC2X3.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC2X3.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC2X3.IfcSimpleProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 2273995522: (v) => new IFC2X3.IfcStructuralConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC2X3.IfcStructuralLoad(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC2X3.IfcStructuralLoadStatic(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC2X3.IfcStructuralLoadTemperature(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC2X3.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC2X3.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC2X3.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1300840506: (v) => {\n var _a;\n return new IFC2X3.IfcSurfaceStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC2X3.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC2X3.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC2X3.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC2X3.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC2X3.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => new IFC2X3.IfcSurfaceTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1290481447: (v) => new IFC2X3.IfcSymbolStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), TypeInitialiser(1, v[1])),\n 985171141: (v) => {\n var _a;\n return new IFC2X3.IfcTable(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 531007025: (v) => {\n var _a;\n return new IFC2X3.IfcTableRow(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[1] ? null : v[1].value);\n },\n 912023232: (v) => {\n var _a, _b, _c;\n return new IFC2X3.IfcTelecomAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 1447204868: (v) => new IFC2X3.IfcTextStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC2X3.IfcTextStyleFontModel(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(1, v[5]));\n },\n 2636378356: (v) => new IFC2X3.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC2X3.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(1, v[0]), !v[1] ? null : new IFC2X3.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(1, v[3]), !v[4] ? null : TypeInitialiser(1, v[4]), !v[5] ? null : new IFC2X3.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(1, v[6])),\n 1484833681: (v) => new IFC2X3.IfcTextStyleWithBoxCharacteristics(!v[0] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), !v[4] ? null : TypeInitialiser(1, v[4])),\n 280115917: (_) => new IFC2X3.IfcTextureCoordinate(),\n 1742049831: (v) => {\n var _a;\n return new IFC2X3.IfcTextureCoordinateGenerator(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 2552916305: (v) => {\n var _a;\n return new IFC2X3.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1210645708: (v) => {\n var _a;\n return new IFC2X3.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcParameterValue(p.value) : null)) || []);\n },\n 3317419933: (v) => new IFC2X3.IfcThermalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcSpecificHeatCapacityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcThermalConductivityMeasure(!v[4] ? null : v[4].value)),\n 3101149627: (v) => new IFC2X3.IfcTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1718945513: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesReferenceRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 581633288: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 1377556343: (_) => new IFC2X3.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC2X3.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC2X3.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC2X3.IfcVertex(),\n 3304826586: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVertexBasedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1907098498: (v) => new IFC2X3.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1065908215: (v) => new IFC2X3.IfcWaterProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : !v[1] ? null : v[1].value, !v[2] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPHMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[7] ? null : v[7].value)),\n 2442683028: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 962685235: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationSurfaceOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3612888222: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationSymbolOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 2297822566: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationTextOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3798115385: (v) => new IFC2X3.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC2X3.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC2X3.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => new IFC2X3.IfcBlobTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : v[5].value),\n 3150382593: (v) => new IFC2X3.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 647927063: (v) => new IFC2X3.IfcClassificationReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 776857604: (v) => new IFC2X3.IfcColourRgb(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC2X3.IfcComplexProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new IFC2X3.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1485152156: (v) => {\n var _a;\n return new IFC2X3.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC2X3.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC2X3.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC2X3.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC2X3.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC2X3.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3800577675: (v) => new IFC2X3.IfcCurveStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 3632507154: (v) => new IFC2X3.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2273265877: (v) => new IFC2X3.IfcDimensionCalloutRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1694125774: (v) => new IFC2X3.IfcDimensionPair(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3732053477: (v) => new IFC2X3.IfcDocumentReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 4170525392: (v) => new IFC2X3.IfcDraughtingPreDefinedTextFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3900360178: (v) => new IFC2X3.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC2X3.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : v[3].value),\n 1860660968: (v) => {\n var _a;\n return new IFC2X3.IfcExtendedMaterialProperties(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 2556980723: (v) => {\n var _a;\n return new IFC2X3.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC2X3.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 803316827: (v) => new IFC2X3.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 3008276851: (v) => {\n var _a;\n return new IFC2X3.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value);\n },\n 4219587988: (v) => new IFC2X3.IfcFailureConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC2X3.IfcFillAreaStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3857492461: (v) => new IFC2X3.IfcFuelProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcHeatingValueMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcHeatingValueMeasure(!v[4] ? null : v[4].value)),\n 803998398: (v) => new IFC2X3.IfcGeneralMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMolecularWeightMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcMassDensityMeasure(!v[3] ? null : v[3].value)),\n 1446786286: (v) => new IFC2X3.IfcGeneralProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value)),\n 3448662350: (v) => new IFC2X3.IfcGeometricRepresentationContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new IFC2X3.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC2X3.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC2X3.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC2X3.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC2X3.IfcGridPlacement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 812098782: (v) => new IFC2X3.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2445078500: (v) => new IFC2X3.IfcHygroscopicMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcIsothermalMoistureCapacityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcVaporPermeabilityMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcMoistureDiffusivityMeasure(!v[5] ? null : v[5].value)),\n 3905492369: (v) => new IFC2X3.IfcImageTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcIdentifier(!v[4] ? null : v[4].value)),\n 3741457305: (v) => {\n var _a;\n return new IFC2X3.IfcIrregularTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1402838566: (v) => new IFC2X3.IfcLightSource(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC2X3.IfcLightSourceAmbient(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC2X3.IfcLightSourceDirectional(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC2X3.IfcLightSourceGoniometric(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC2X3.IfcLightSourcePositional(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcReal(!v[6] ? null : v[6].value), new IFC2X3.IfcReal(!v[7] ? null : v[7].value), new IFC2X3.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC2X3.IfcLightSourceSpot(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcReal(!v[6] ? null : v[6].value), new IFC2X3.IfcReal(!v[7] ? null : v[7].value), new IFC2X3.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcReal(!v[10] ? null : v[10].value), new IFC2X3.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 2624227202: (v) => new IFC2X3.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC2X3.IfcLoop(),\n 2347385850: (v) => new IFC2X3.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2022407955: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1430189142: (v) => new IFC2X3.IfcMechanicalConcreteMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPressureMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcText(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcText(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcText(!v[11] ? null : v[11].value)),\n 219451334: (v) => new IFC2X3.IfcObjectDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 2833995503: (v) => new IFC2X3.IfcOneDirectionRepeatFactor(new Handle(!v[0] ? null : v[0].value)),\n 2665983363: (v) => {\n var _a;\n return new IFC2X3.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC2X3.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2529465313: (v) => new IFC2X3.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC2X3.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC2X3.IfcPhysicalComplexQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a;\n return new IFC2X3.IfcPixelTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcInteger(!v[4] ? null : v[4].value), new IFC2X3.IfcInteger(!v[5] ? null : v[5].value), new IFC2X3.IfcInteger(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC2X3.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC2X3.IfcPlanarExtent(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC2X3.IfcPoint(),\n 4022376103: (v) => new IFC2X3.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC2X3.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC2X3.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC2X3.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC2X3.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 759155922: (v) => new IFC2X3.IfcPreDefinedColour(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC2X3.IfcPreDefinedCurveFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 433424934: (v) => new IFC2X3.IfcPreDefinedDimensionSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 179317114: (v) => new IFC2X3.IfcPreDefinedPointMarkerSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC2X3.IfcProductDefinitionShape(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 871118103: (v) => new IFC2X3.IfcPropertyBoundedValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : TypeInitialiser(1, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1680319473: (v) => new IFC2X3.IfcPropertyDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 4166981789: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyEnumeratedValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyListValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC2X3.IfcPropertyReferenceValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3357820518: (v) => new IFC2X3.IfcPropertySetDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 3650150729: (v) => new IFC2X3.IfcPropertySingleValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPropertyTableValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value));\n },\n 3615266464: (v) => new IFC2X3.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC2X3.IfcRegularTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC2X3.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3765753017: (v) => {\n var _a;\n return new IFC2X3.IfcReinforcementDefinitionProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 478536968: (v) => new IFC2X3.IfcRelationship(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 2778083089: (v) => new IFC2X3.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 1509187699: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2411513650: (v) => new IFC2X3.IfcServiceLifeFactor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : TypeInitialiser(1, v[5]), TypeInitialiser(1, v[6]), !v[7] ? null : TypeInitialiser(1, v[7])),\n 4124623270: (v) => {\n var _a;\n return new IFC2X3.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2609359061: (v) => new IFC2X3.IfcSlippageConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC2X3.IfcSolidModel(),\n 2485662743: (v) => {\n var _a;\n return new IFC2X3.IfcSoundProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new IFC2X3.IfcBoolean(!v[4] ? null : v[4].value), v[5], ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1202362311: (v) => new IFC2X3.IfcSoundValue(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcFrequencyMeasure(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(1, v[6])),\n 390701378: (v) => new IFC2X3.IfcSpaceThermalLoadProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), v[5], v[6], !v[7] ? null : new IFC2X3.IfcText(!v[7] ? null : v[7].value), new IFC2X3.IfcPowerMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPowerMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcLabel(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLabel(!v[12] ? null : v[12].value), v[13]),\n 1595516126: (v) => new IFC2X3.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC2X3.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC2X3.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC2X3.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC2X3.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC2X3.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 3843319758: (v) => new IFC2X3.IfcStructuralProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcWarpingConstantMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[18] ? null : v[18].value), !v[19] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcLengthMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcLengthMeasure(!v[22] ? null : v[22].value)),\n 3653947884: (v) => new IFC2X3.IfcStructuralSteelProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcWarpingConstantMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[18] ? null : v[18].value), !v[19] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcLengthMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcLengthMeasure(!v[22] ? null : v[22].value), !v[23] ? null : new IFC2X3.IfcAreaMeasure(!v[23] ? null : v[23].value), !v[24] ? null : new IFC2X3.IfcAreaMeasure(!v[24] ? null : v[24].value), !v[25] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[25] ? null : v[25].value), !v[26] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[26] ? null : v[26].value)),\n 2233826070: (v) => new IFC2X3.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC2X3.IfcSurface(),\n 1878645084: (v) => new IFC2X3.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(1, v[7]), v[8]),\n 2247615214: (v) => new IFC2X3.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC2X3.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value)),\n 230924584: (v) => new IFC2X3.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC2X3.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value)),\n 3028897424: (v) => {\n var _a;\n return new IFC2X3.IfcTerminatorSymbol(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value));\n },\n 4282788508: (v) => new IFC2X3.IfcTextLiteral(new IFC2X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC2X3.IfcTextLiteralWithExtent(new IFC2X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 2715220739: (v) => new IFC2X3.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1345879162: (v) => new IFC2X3.IfcTwoDirectionRepeatFactor(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC2X3.IfcTypeObject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTypeProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 427810014: (v) => new IFC2X3.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 1417489154: (v) => new IFC2X3.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC2X3.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 336235671: (v) => new IFC2X3.IfcWindowLiningProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value)),\n 512836454: (v) => new IFC2X3.IfcWindowPanelProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1299126871: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWindowStyle(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : v[10].value, !v[11] ? null : v[11].value);\n },\n 2543172580: (v) => new IFC2X3.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 3288037868: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationCurveOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2265737646: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationFillAreaOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), v[4]);\n },\n 1302238472: (v) => new IFC2X3.IfcAnnotationSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 4261334040: (v) => new IFC2X3.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC2X3.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC2X3.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC2X3.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC2X3.IfcBoundedSurface(),\n 2581212453: (v) => new IFC2X3.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC2X3.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC2X3.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC2X3.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 59481748: (v) => new IFC2X3.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value),\n 3749851601: (v) => new IFC2X3.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value),\n 3486308946: (v) => new IFC2X3.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : !v[4] ? null : v[4].value),\n 3331915920: (v) => new IFC2X3.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC2X3.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : !v[5] ? null : v[5].value, !v[6] ? null : !v[6] ? null : v[6].value),\n 1383045692: (v) => new IFC2X3.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC2X3.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC2X3.IfcCompositeCurveSegment(v[0], !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value)),\n 4133800736: (v) => new IFC2X3.IfcCraneRailAShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), new IFC2X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[14] ? null : v[14].value)),\n 194851669: (v) => new IFC2X3.IfcCraneRailFShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 2506170314: (v) => new IFC2X3.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC2X3.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC2X3.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC2X3.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 693772133: (v) => new IFC2X3.IfcDefinedSymbol(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 606661476: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurve(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 4054601972: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurveTerminator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4]);\n },\n 32440307: (v) => {\n var _a;\n return new IFC2X3.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 2963535650: (v) => new IFC2X3.IfcDoorLiningProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value)),\n 1714330368: (v) => new IFC2X3.IfcDoorPanelProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 526551008: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDoorStyle(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : v[10].value, !v[11] ? null : v[11].value);\n },\n 3073041342: (v) => {\n var _a;\n return new IFC2X3.IfcDraughtingCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 445594917: (v) => new IFC2X3.IfcDraughtingPreDefinedColour(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC2X3.IfcDraughtingPreDefinedCurveFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1472233963: (v) => {\n var _a;\n return new IFC2X3.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC2X3.IfcElementQuantity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC2X3.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC2X3.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 80994333: (v) => new IFC2X3.IfcEnergyProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 477187591: (v) => new IFC2X3.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC2X3.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC2X3.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 4203026998: (v) => new IFC2X3.IfcFillAreaStyleTileSymbolWithStyle(new Handle(!v[0] ? null : v[0].value)),\n 315944413: (v) => {\n var _a;\n return new IFC2X3.IfcFillAreaStyleTiles(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 3455213021: (v) => new IFC2X3.IfcFluidFlowProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLabel(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : TypeInitialiser(1, v[15]), !v[16] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcLinearVelocityMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcPressureMeasure(!v[18] ? null : v[18].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFurnishingElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFurnitureType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC2X3.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC2X3.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 572779678: (v) => new IFC2X3.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 1281925730: (v) => new IFC2X3.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC2X3.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC2X3.IfcObject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3388369263: (v) => new IFC2X3.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value),\n 3505215534: (v) => new IFC2X3.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value, new Handle(!v[3] ? null : v[3].value)),\n 3566463478: (v) => new IFC2X3.IfcPermeableCoveringProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 603570806: (v) => new IFC2X3.IfcPlanarBox(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC2X3.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 2945172077: (v) => new IFC2X3.IfcProcess(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 4208778838: (v) => new IFC2X3.IfcProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC2X3.IfcProject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[8] ? null : v[8].value));\n },\n 4194566429: (v) => {\n var _a;\n return new IFC2X3.IfcProjectionCurve(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1451395588: (v) => {\n var _a;\n return new IFC2X3.IfcPropertySet(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3219374653: (v) => new IFC2X3.IfcProxy(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 2770003689: (v) => new IFC2X3.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC2X3.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC2X3.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC2X3.IfcParameterValue(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 3939117080: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssigns(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToActor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProcess(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 3372526763: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProjectOrder(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociates(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1327628568: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesAppliedValue(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4095574036: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesApproval(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesClassification(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesConstraint(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesDocument(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesLibrary(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesMaterial(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2851387026: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesProfileProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 826625072: (v) => new IFC2X3.IfcRelConnects(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC2X3.IfcRelConnectsElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRelConnectsPathElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC2X3.IfcRelConnectsPortToElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC2X3.IfcRelConnectsPorts(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC2X3.IfcRelConnectsStructuralActivity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3912681535: (v) => new IFC2X3.IfcRelConnectsStructuralElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC2X3.IfcRelConnectsStructuralMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC2X3.IfcRelConnectsWithEccentricity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC2X3.IfcRelConnectsWithRealizingElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC2X3.IfcRelContainedInSpatialStructure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC2X3.IfcRelCoversBldgElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC2X3.IfcRelCoversSpaces(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => {\n var _a;\n return new IFC2X3.IfcRelDecomposes(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 693640335: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefines(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4186316022: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefinesByProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefinesByType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC2X3.IfcRelFillsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC2X3.IfcRelFlowControlElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4189434867: (v) => new IFC2X3.IfcRelInteractionRequirements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcCountMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 3268803585: (v) => {\n var _a;\n return new IFC2X3.IfcRelNests(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2051452291: (v) => {\n var _a;\n return new IFC2X3.IfcRelOccupiesSpaces(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 202636808: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRelOverridesProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value), ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC2X3.IfcRelProjectsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC2X3.IfcRelReferencedInSpatialStructure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 1058617721: (v) => {\n var _a;\n return new IFC2X3.IfcRelSchedulesCostItems(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 4122056220: (v) => new IFC2X3.IfcRelSequence(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcTimeMeasure(!v[6] ? null : v[6].value), v[7]),\n 366585022: (v) => {\n var _a;\n return new IFC2X3.IfcRelServicesBuildings(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC2X3.IfcRelSpaceBoundary(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 1401173127: (v) => new IFC2X3.IfcRelVoidsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2914609552: (v) => new IFC2X3.IfcResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1856042241: (v) => new IFC2X3.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 4158566097: (v) => new IFC2X3.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC2X3.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2706606064: (v) => new IFC2X3.IfcSpatialStructureElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpatialStructureElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 451544542: (v) => new IFC2X3.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3544373492: (v) => new IFC2X3.IfcStructuralActivity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC2X3.IfcStructuralItem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC2X3.IfcStructuralMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC2X3.IfcStructuralReaction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC2X3.IfcStructuralSurfaceMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralSurfaceMemberVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcPositiveLengthMeasure(p.value) : null)) || [], new Handle(!v[10] ? null : v[10].value));\n },\n 4070609034: (v) => {\n var _a;\n return new IFC2X3.IfcStructuredDimensionCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2028607225: (v) => new IFC2X3.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC2X3.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC2X3.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSystemFurnitureElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3473067441: (v) => new IFC2X3.IfcTask(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value),\n 2097647324: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTransportElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2296667514: (v) => new IFC2X3.IfcActor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1674181508: (v) => new IFC2X3.IfcAnnotation(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3207858831: (v) => new IFC2X3.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 1334484129: (v) => new IFC2X3.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC2X3.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC2X3.IfcBoundedCurve(),\n 4031249490: (v) => new IFC2X3.IfcBuilding(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 1950629157: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBuildingElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3124254112: (v) => new IFC2X3.IfcBuildingStorey(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 2937912522: (v) => new IFC2X3.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 300633059: (v) => {\n var _a, _b;\n return new IFC2X3.IfcColumnType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC2X3.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : v[1].value);\n },\n 2510884976: (v) => new IFC2X3.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2559216714: (v) => new IFC2X3.IfcConstructionResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3293443760: (v) => new IFC2X3.IfcControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3895139033: (v) => new IFC2X3.IfcCostItem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1419761937: (v) => {\n var _a;\n return new IFC2X3.IfcCostSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), new IFC2X3.IfcIdentifier(!v[11] ? null : v[11].value), v[12]);\n },\n 1916426348: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoveringType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => new IFC2X3.IfcCrewResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1457835157: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCurtainWallType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 681481545: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurveDirectedCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3256556792: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionFlowElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 360485395: (v) => new IFC2X3.IfcElectricalBaseProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), v[6], new IFC2X3.IfcElectricVoltageMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcFrequencyMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcElectricCurrentMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcElectricCurrentMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPowerMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPowerMeasure(!v[12] ? null : v[12].value), !v[13] ? null : v[13].value),\n 1758889154: (v) => new IFC2X3.IfcElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC2X3.IfcElementAssembly(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 1623761950: (v) => new IFC2X3.IfcElementComponent(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElementComponentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC2X3.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEnergyConversionDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1962604670: (v) => new IFC2X3.IfcEquipmentElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3272907226: (v) => new IFC2X3.IfcEquipmentStandard(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3174744832: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEvaporativeCoolerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEvaporatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 807026263: (v) => new IFC2X3.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC2X3.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 647756555: (v) => new IFC2X3.IfcFastener(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFastenerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2827207264: (v) => new IFC2X3.IfcFeatureElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC2X3.IfcFeatureElementAddition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC2X3.IfcFeatureElementSubtraction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowControllerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowMeterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowMovingDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowStorageDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowTreatmentDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 263784265: (v) => new IFC2X3.IfcFurnishingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 814719939: (v) => new IFC2X3.IfcFurnitureStandard(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 200128114: (v) => {\n var _a, _b;\n return new IFC2X3.IfcGasTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC2X3.IfcGrid(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2706460486: (v) => new IFC2X3.IfcGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC2X3.IfcHeatExchangerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC2X3.IfcHumidifierType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC2X3.IfcInventory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC2X3.IfcJunctionBoxType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3827777499: (v) => new IFC2X3.IfcLaborResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcText(!v[9] ? null : v[9].value)),\n 1051575348: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLampType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLightFixtureType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2506943328: (v) => {\n var _a;\n return new IFC2X3.IfcLinearDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 377706215: (v) => new IFC2X3.IfcMechanicalFastener(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMechanicalFastenerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMemberType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMotorConnectionType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916936684: (v) => {\n var _a;\n return new IFC2X3.IfcMove(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, new Handle(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : ((_a = v[12]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcText(p.value) : null)) || []);\n },\n 4143007308: (v) => new IFC2X3.IfcOccupant(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC2X3.IfcOpeningElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3425660407: (v) => new IFC2X3.IfcOrderAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, new IFC2X3.IfcIdentifier(!v[10] ? null : v[10].value)),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC2X3.IfcOutletType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC2X3.IfcPerformanceHistory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3327091369: (v) => new IFC2X3.IfcPermit(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 804291784: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPipeFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPipeSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPlateType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC2X3.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC2X3.IfcPort(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC2X3.IfcProcedure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value)),\n 2904328755: (v) => new IFC2X3.IfcProjectOrder(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value)),\n 3642467123: (v) => {\n var _a;\n return new IFC2X3.IfcProjectOrderRecord(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[6]);\n },\n 3651124850: (v) => new IFC2X3.IfcProjectionElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC2X3.IfcProtectiveDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPumpType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3248260540: (v) => {\n var _a;\n return new IFC2X3.IfcRadiusDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRailingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2324767716: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRampFlightType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 160246688: (v) => {\n var _a;\n return new IFC2X3.IfcRelAggregates(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2863920197: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsTasks(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSanitaryTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3517283431: (v) => new IFC2X3.IfcScheduleTimeControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcTimeMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcTimeMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcTimeMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcTimeMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcTimeMeasure(!v[17] ? null : v[17].value), !v[18] ? null : !v[18] ? null : v[18].value, !v[19] ? null : new Handle(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcTimeMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcTimeMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[22] ? null : v[22].value)),\n 4105383287: (v) => new IFC2X3.IfcServiceLife(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], new IFC2X3.IfcTimeMeasure(!v[6] ? null : v[6].value)),\n 4097777520: (v) => new IFC2X3.IfcSite(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC2X3.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC2X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSlabType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC2X3.IfcSpace(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpaceHeaterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 652456506: (v) => new IFC2X3.IfcSpaceProgram(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcAreaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), new IFC2X3.IfcAreaMeasure(!v[9] ? null : v[9].value)),\n 3812236995: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpaceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStackTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStairFlightType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC2X3.IfcStructuralAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1179482911: (v) => new IFC2X3.IfcStructuralConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 4243806635: (v) => new IFC2X3.IfcStructuralCurveConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 214636428: (v) => new IFC2X3.IfcStructuralCurveMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 2445595289: (v) => new IFC2X3.IfcStructuralCurveMemberVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 1807405624: (v) => new IFC2X3.IfcStructuralLinearAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]),\n 1721250024: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralLinearActionVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11], new Handle(!v[12] ? null : v[12].value), ((_a = v[13]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1252848954: (v) => new IFC2X3.IfcStructuralLoadGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC2X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value)),\n 1621171031: (v) => new IFC2X3.IfcStructuralPlanarAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]),\n 3987759626: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralPlanarActionVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11], new Handle(!v[12] ? null : v[12].value), ((_a = v[13]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2082059205: (v) => new IFC2X3.IfcStructuralPointAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 734778138: (v) => new IFC2X3.IfcStructuralPointConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1235345126: (v) => new IFC2X3.IfcStructuralPointReaction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC2X3.IfcStructuralResultGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : v[7].value),\n 1975003073: (v) => new IFC2X3.IfcStructuralSurfaceConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => new IFC2X3.IfcSubContractResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcText(!v[10] ? null : v[10].value)),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSwitchingDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC2X3.IfcSystem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 5716631: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTankType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1637806684: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[6], new Handle(!v[7] ? null : v[7].value));\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTransformerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1620046519: (v) => new IFC2X3.IfcTransportElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcMassMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcCountMeasure(!v[10] ? null : v[10].value)),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : v[3].value, v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTubeBundleType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC2X3.IfcUnitaryEquipmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC2X3.IfcValveType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC2X3.IfcVirtualElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWallType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWasteTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC2X3.IfcWorkControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC2X3.IfcWorkPlan(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 3342526732: (v) => {\n var _a;\n return new IFC2X3.IfcWorkSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 1033361043: (v) => new IFC2X3.IfcZone(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1213861670: (v) => {\n var _a;\n return new IFC2X3.Ifc2DCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : v[1].value);\n },\n 3821786052: (v) => new IFC2X3.IfcActionRequest(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirTerminalBoxType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirToAirHeatRecoveryType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2470393545: (v) => {\n var _a;\n return new IFC2X3.IfcAngularDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3460190687: (v) => new IFC2X3.IfcAsset(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), new Handle(!v[12] ? null : v[12].value), new Handle(!v[13] ? null : v[13].value)),\n 1967976161: (v) => {\n var _a;\n return new IFC2X3.IfcBSplineCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBeamType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916977116: (v) => {\n var _a;\n return new IFC2X3.IfcBezierCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBoilerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3299480353: (v) => new IFC2X3.IfcBuildingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 52481810: (v) => new IFC2X3.IfcBuildingElementComponent(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2979338954: (v) => new IFC2X3.IfcBuildingElementPart(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1095909175: (v) => new IFC2X3.IfcBuildingElementProxy(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1909888760: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBuildingElementProxyType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableCarrierFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableCarrierSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC2X3.IfcChillerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2611217952: (v) => new IFC2X3.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoilType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC2X3.IfcColumn(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3850581409: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCompressorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCondenserType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188551683: (v) => new IFC2X3.IfcCondition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1163958913: (v) => new IFC2X3.IfcConditionCriterion(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3898045240: (v) => new IFC2X3.IfcConstructionEquipmentResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1060000209: (v) => {\n var _a;\n return new IFC2X3.IfcConstructionMaterialResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC2X3.IfcRatioMeasure(!v[10] ? null : v[10].value));\n },\n 488727124: (v) => new IFC2X3.IfcConstructionProductResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 335055490: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCooledBeamType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoolingTowerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1973544240: (v) => new IFC2X3.IfcCovering(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC2X3.IfcCurtainWall(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDamperType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4147604152: (v) => {\n var _a;\n return new IFC2X3.IfcDiameterDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1335981549: (v) => new IFC2X3.IfcDiscreteAccessory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDiscreteAccessoryType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionChamberElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionControlElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC2X3.IfcDistributionElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC2X3.IfcDistributionFlowElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC2X3.IfcDistributionPort(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 395920057: (v) => new IFC2X3.IfcDoor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctSilencerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 855621170: (v) => new IFC2X3.IfcEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 663422040: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricApplianceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricFlowStorageDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricGeneratorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1365060375: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricHeaterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricMotorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricTimeControlType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634875225: (v) => new IFC2X3.IfcElectricalCircuit(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 857184966: (v) => new IFC2X3.IfcElectricalElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1658829314: (v) => new IFC2X3.IfcEnergyConversionDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 346874300: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFanType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFilterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFireSuppressionTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC2X3.IfcFlowController(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC2X3.IfcFlowFitting(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowInstrumentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3132237377: (v) => new IFC2X3.IfcFlowMovingDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC2X3.IfcFlowSegment(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC2X3.IfcFlowStorageDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC2X3.IfcFlowTerminal(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC2X3.IfcFlowTreatmentDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC2X3.IfcFooting(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC2X3.IfcMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1687234759: (v) => new IFC2X3.IfcPile(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 3171933400: (v) => new IFC2X3.IfcPlate(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2262370178: (v) => new IFC2X3.IfcRailing(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC2X3.IfcRamp(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC2X3.IfcRampFlight(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3055160366: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRationalBezierCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 3027567501: (v) => new IFC2X3.IfcReinforcingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 2320036040: (v) => new IFC2X3.IfcReinforcingMesh(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), new IFC2X3.IfcAreaMeasure(!v[13] ? null : v[13].value), new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), new IFC2X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), new IFC2X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2016517767: (v) => new IFC2X3.IfcRoof(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1376911519: (v) => new IFC2X3.IfcRoundedEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSensorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1529196076: (v) => new IFC2X3.IfcSlab(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC2X3.IfcStair(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC2X3.IfcStairFlight(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStructuralAnalysisModel(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3824725483: (v) => new IFC2X3.IfcTendon(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9], new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC2X3.IfcTendonAnchor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVibrationIsolatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391406946: (v) => new IFC2X3.IfcWall(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3512223829: (v) => new IFC2X3.IfcWallStandardCase(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3304561284: (v) => new IFC2X3.IfcWindow(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC2X3.IfcActuatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3001207471: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAlarmType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 753842376: (v) => new IFC2X3.IfcBeam(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2454782716: (v) => new IFC2X3.IfcChamferEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 578613899: (v) => {\n var _a, _b;\n return new IFC2X3.IfcControllerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1052013943: (v) => new IFC2X3.IfcDistributionChamberElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1062813311: (v) => new IFC2X3.IfcDistributionControlElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcIdentifier(!v[8] ? null : v[8].value)),\n 3700593921: (v) => new IFC2X3.IfcElectricDistributionPoint(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value)),\n 979691226: (v) => new IFC2X3.IfcReinforcingBar(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13])\n};\nInheritanceDef[1] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 411424972: [IFCENVIRONMENTALIMPACTVALUE, IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 3264961684: [IFCCOLOURRGB],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPORTGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 3796139169: [IFCDIMENSIONPAIR, IFCDIMENSIONCALLOUTRELATIONSHIP],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSYMBOL, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 3265635763: [IFCHYGROSCOPICMATERIALPROPERTIES, IFCGENERALMATERIALPROPERTIES, IFCFUELPROPERTIES, IFCEXTENDEDMATERIALPROPERTIES, IFCWATERPROPERTIES, IFCTHERMALMATERIALPROPERTIES, IFCPRODUCTSOFCOMBUSTIONPROPERTIES, IFCOPTICALMATERIALPROPERTIES, IFCMECHANICALCONCRETEMATERIALPROPERTIES, IFCMECHANICALSTEELMATERIALPROPERTIES, IFCMECHANICALMATERIALPROPERTIES],\n 4256014907: [IFCMECHANICALCONCRETEMATERIALPROPERTIES, IFCMECHANICALSTEELMATERIALPROPERTIES],\n 1918398963: [IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCDRAUGHTINGPREDEFINEDTEXTFONT, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDPOINTMARKERSYMBOL, IFCPREDEFINEDDIMENSIONSYMBOL, IFCPREDEFINEDTERMINATORSYMBOL, IFCPREDEFINEDSYMBOL],\n 990879717: [IFCPREDEFINEDPOINTMARKERSYMBOL, IFCPREDEFINEDDIMENSIONSYMBOL, IFCPREDEFINEDTERMINATORSYMBOL],\n 1775413392: [IFCDRAUGHTINGPREDEFINEDTEXTFONT, IFCTEXTSTYLEFONTMODEL],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSYMBOLSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCRANERAILFSHAPEPROFILEDEF, IFCCRANERAILASHAPEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 2802850158: [IFCSTRUCTURALSTEELPROFILEPROPERTIES, IFCSTRUCTURALPROFILEPROPERTIES, IFCGENERALPROFILEPROPERTIES, IFCRIBPLATEPROFILEPROPERTIES],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLETILESYMBOLWITHSTYLE, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT, IFCDRAUGHTINGCALLOUT, IFCDIRECTION, IFCDEFINEDSYMBOL, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONSURFACE, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCTWODIRECTIONREPEATFACTOR, IFCONEDIRECTIONREPEATFACTOR, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE, IFCANNOTATIONOCCURRENCE, IFCSTYLEDITEM],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS, IFCOBJECT, IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 3958052878: [IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE, IFCANNOTATIONOCCURRENCE],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 280115917: [IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 2442683028: [IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE],\n 3612888222: [IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 2556980723: [IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 1446786286: [IFCSTRUCTURALSTEELPROFILEPROPERTIES, IFCSTRUCTURALPROFILEPROPERTIES],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLETILESYMBOLWITHSTYLE, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT, IFCDRAUGHTINGCALLOUT, IFCDIRECTION, IFCDEFINEDSYMBOL, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONSURFACE, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCTWODIRECTIONREPEATFACTOR, IFCONEDIRECTIONREPEATFACTOR, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 219451334: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS, IFCOBJECT, IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTYPEOBJECT],\n 2833995503: [IFCTWODIRECTIONREPEATFACTOR],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCRANERAILFSHAPEPROFILEDEF, IFCCRANERAILASHAPEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 1680319473: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 723233188: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 3843319758: [IFCSTRUCTURALSTEELPROFILEPROPERTIES],\n 2513912981: [IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 3028897424: [IFCDIMENSIONCURVETERMINATOR],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT],\n 2347495698: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE],\n 3288037868: [IFCPROJECTIONCURVE, IFCDIMENSIONCURVE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE],\n 3073041342: [IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT],\n 339256511: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCPLANE],\n 80994333: [IFCELECTRICALBASEPROPERTIES],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 1484403080: [IFCASYMMETRICISHAPEPROFILEDEF],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP],\n 3888040117: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS],\n 2945172077: [IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK],\n 4208778838: [IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR],\n 1683148259: [IFCRELOCCUPIESSPACES],\n 2495723537: [IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER],\n 1865459582: [IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE],\n 826625072: [IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES],\n 4186316022: [IFCRELOVERRIDESPROPERTIES],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING],\n 3893378262: [IFCSPACETYPE],\n 3544373492: [IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 3473067441: [IFCORDERACTION, IFCMOVE],\n 2296667514: [IFCOCCUPANT],\n 1260505505: [IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE],\n 1950629157: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE],\n 3732776249: [IFC2DCOMPOSITECURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 681481545: [IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER],\n 2590856083: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE],\n 647756555: [IFCMECHANICALFASTENER],\n 2489546625: [IFCMECHANICALFASTENERTYPE],\n 2827207264: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE],\n 3009222698: [IFCFILTERTYPE, IFCDUCTSILENCERTYPE],\n 2706460486: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 682877961: [IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1807405624: [IFCSTRUCTURALLINEARACTIONVARYING],\n 1621171031: [IFCSTRUCTURALPLANARACTIONVARYING],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE],\n 1916977116: [IFCRATIONALBEZIERCURVE],\n 3299480353: [IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT],\n 52481810: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART],\n 2635815018: [IFCVIBRATIONISOLATORTYPE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE],\n 855621170: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE],\n 2058353004: [IFCELECTRICDISTRIBUTIONPOINT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 2391406946: [IFCWALLSTANDARDCASE]\n};\nInversePropertyDef[1] = {\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 130549933: [[\"Actors\", IFCAPPROVALACTORRELATIONSHIP, 1, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 0, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 1, true]],\n 747523909: [[\"Contains\", IFCCLASSIFICATIONITEM, 1, true]],\n 1767535486: [[\"IsClassifiedItemIn\", IFCCLASSIFICATIONITEMRELATIONSHIP, 1, true], [\"IsClassifyingItemIn\", IFCCLASSIFICATIONITEMRELATIONSHIP, 0, true]],\n 1959218052: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 602808272: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 1154170062: [[\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 1, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 0, true]],\n 1648886627: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 3452421091: [[\"ReferenceIntoLibrary\", IFCLIBRARYINFORMATION, 4, true]],\n 1838606355: [[\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"ClassifiedAs\", IFCMATERIALCLASSIFICATIONRELATIONSHIP, 1, true]],\n 248100487: [[\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3368373690: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 2251480897: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 2598011224: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2044713172: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 3692461612: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 531007025: [[\"OfTable\", IFCTABLE, 1, false]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 280115917: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 1742049831: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 2552916305: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 3101149627: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 1377556343: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2442683028: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 962685235: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3612888222: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2297822566: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 370225590: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3732053477: [[\"ReferenceToDocument\", IFCDOCUMENTINFORMATION, 3, true]],\n 3900360178: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2556980723: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1809719519: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true]],\n 2453401579: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true]],\n 3590301190: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3741457305: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 1402838566: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2833995503: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2665983363: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2519244187: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2004835150: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 871118103: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 1680319473: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 4166981789: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2752243245: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 941946838: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 3357820518: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 3650150729: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 110355661: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 3413951693: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 3765753017: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1509187699: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2411513650: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 4124623270: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 723233188: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485662743: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1202362311: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 390701378: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 2233826070: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3028897424: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1345879162: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1417489154: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 336235671: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 512836454: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1299126871: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3288037868: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 669184980: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2265737646: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1302238472: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4261334040: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1123145078: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2205249479: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485617015: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2506170314: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 693772133: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 606661476: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"AnnotatedBySymbols\", IFCTERMINATORSYMBOL, 3, true]],\n 4054601972: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 32440307: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2963535650: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1714330368: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 526551008: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3073041342: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 1472233963: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2777663545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 80994333: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 477187591: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4203026998: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3455213021: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 987898635: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1281925730: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true]],\n 3388369263: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3566463478: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 603570806: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true]],\n 4194566429: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1451395588: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 3219374653: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2798486643: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 451544542: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false], [\"Causes\", IFCSTRUCTURALACTION, 10, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 4070609034: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 2028607225: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1334484129: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 1950629157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3732776249: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 681481545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 360485395: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1704287377: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1962604670: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3272907226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 807026263: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 814719939: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 200128114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2506943328: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1916936684: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 3425660407: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3724593414: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, false], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3642467123: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3248260540: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3517283431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true], [\"ScheduleTimeControlAssigned\", IFCRELASSIGNSTASKS, 7, false]],\n 4105383287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 652456506: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true], [\"HasInteractionReqsFrom\", IFCRELINTERACTIONREQUIREMENTS, 7, true], [\"HasInteractionReqsTo\", IFCRELINTERACTIONREQUIREMENTS, 8, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1721250024: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 3987759626: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false], [\"Causes\", IFCSTRUCTURALACTION, 10, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1637806684: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3593883385: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1213861670: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2470393545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1967976161: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1916977116: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3299480353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 52481810: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2611217952: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2188551683: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1163958913: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"Covers\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4147604152: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, false], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 855621170: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1365060375: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1634875225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 857184966: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3055160366: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1376911519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2454782716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3700593921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]]\n};\nConstructors[1] = {\n 3630933823: (a) => new IFC2X3.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC2X3.IfcAddress(a[0], a[1], a[2]),\n 639542469: (a) => new IFC2X3.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC2X3.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1110488051: (a) => new IFC2X3.IfcAppliedValueRelationship(a[0], a[1], a[2], a[3], a[4]),\n 130549933: (a) => new IFC2X3.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2080292479: (a) => new IFC2X3.IfcApprovalActorRelationship(a[0], a[1], a[2]),\n 390851274: (a) => new IFC2X3.IfcApprovalPropertyRelationship(a[0], a[1]),\n 3869604511: (a) => new IFC2X3.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 4037036970: (a) => new IFC2X3.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC2X3.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC2X3.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC2X3.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC2X3.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 622194075: (a) => new IFC2X3.IfcCalendarDate(a[0], a[1], a[2]),\n 747523909: (a) => new IFC2X3.IfcClassification(a[0], a[1], a[2], a[3]),\n 1767535486: (a) => new IFC2X3.IfcClassificationItem(a[0], a[1], a[2]),\n 1098599126: (a) => new IFC2X3.IfcClassificationItemRelationship(a[0], a[1]),\n 938368621: (a) => new IFC2X3.IfcClassificationNotation(a[0]),\n 3639012971: (a) => new IFC2X3.IfcClassificationNotationFacet(a[0]),\n 3264961684: (a) => new IFC2X3.IfcColourSpecification(a[0]),\n 2859738748: (_) => new IFC2X3.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC2X3.IfcConnectionPointGeometry(a[0], a[1]),\n 4257277454: (a) => new IFC2X3.IfcConnectionPortGeometry(a[0], a[1], a[2]),\n 2732653382: (a) => new IFC2X3.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC2X3.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1658513725: (a) => new IFC2X3.IfcConstraintAggregationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 613356794: (a) => new IFC2X3.IfcConstraintClassificationRelationship(a[0], a[1]),\n 347226245: (a) => new IFC2X3.IfcConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1065062679: (a) => new IFC2X3.IfcCoordinatedUniversalTimeOffset(a[0], a[1], a[2]),\n 602808272: (a) => new IFC2X3.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 539742890: (a) => new IFC2X3.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC2X3.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC2X3.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC2X3.IfcCurveStyleFontPattern(a[0], a[1]),\n 1072939445: (a) => new IFC2X3.IfcDateAndTime(a[0], a[1]),\n 1765591967: (a) => new IFC2X3.IfcDerivedUnit(a[0], a[1], a[2]),\n 1045800335: (a) => new IFC2X3.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC2X3.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1376555844: (a) => new IFC2X3.IfcDocumentElectronicFormat(a[0], a[1], a[2]),\n 1154170062: (a) => new IFC2X3.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC2X3.IfcDocumentInformationRelationship(a[0], a[1], a[2]),\n 3796139169: (a) => new IFC2X3.IfcDraughtingCalloutRelationship(a[0], a[1], a[2], a[3]),\n 1648886627: (a) => new IFC2X3.IfcEnvironmentalImpactValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3200245327: (a) => new IFC2X3.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC2X3.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC2X3.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3207319532: (a) => new IFC2X3.IfcExternallyDefinedSymbol(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC2X3.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC2X3.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC2X3.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC2X3.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4]),\n 3452421091: (a) => new IFC2X3.IfcLibraryReference(a[0], a[1], a[2]),\n 4162380809: (a) => new IFC2X3.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC2X3.IfcLightIntensityDistribution(a[0], a[1]),\n 30780891: (a) => new IFC2X3.IfcLocalTime(a[0], a[1], a[2], a[3], a[4]),\n 1838606355: (a) => new IFC2X3.IfcMaterial(a[0]),\n 1847130766: (a) => new IFC2X3.IfcMaterialClassificationRelationship(a[0], a[1]),\n 248100487: (a) => new IFC2X3.IfcMaterialLayer(a[0], a[1], a[2]),\n 3303938423: (a) => new IFC2X3.IfcMaterialLayerSet(a[0], a[1]),\n 1303795690: (a) => new IFC2X3.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3]),\n 2199411900: (a) => new IFC2X3.IfcMaterialList(a[0]),\n 3265635763: (a) => new IFC2X3.IfcMaterialProperties(a[0]),\n 2597039031: (a) => new IFC2X3.IfcMeasureWithUnit(a[0], a[1]),\n 4256014907: (a) => new IFC2X3.IfcMechanicalMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 677618848: (a) => new IFC2X3.IfcMechanicalSteelMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3368373690: (a) => new IFC2X3.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2706619895: (a) => new IFC2X3.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC2X3.IfcNamedUnit(a[0], a[1]),\n 3701648758: (_) => new IFC2X3.IfcObjectPlacement(),\n 2251480897: (a) => new IFC2X3.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1227763645: (a) => new IFC2X3.IfcOpticalMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4251960020: (a) => new IFC2X3.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1411181986: (a) => new IFC2X3.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1207048766: (a) => new IFC2X3.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC2X3.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC2X3.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC2X3.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC2X3.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC2X3.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3727388367: (a) => new IFC2X3.IfcPreDefinedItem(a[0]),\n 990879717: (a) => new IFC2X3.IfcPreDefinedSymbol(a[0]),\n 3213052703: (a) => new IFC2X3.IfcPreDefinedTerminatorSymbol(a[0]),\n 1775413392: (a) => new IFC2X3.IfcPreDefinedTextFont(a[0]),\n 2022622350: (a) => new IFC2X3.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC2X3.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC2X3.IfcPresentationStyle(a[0]),\n 2417041796: (a) => new IFC2X3.IfcPresentationStyleAssignment(a[0]),\n 2095639259: (a) => new IFC2X3.IfcProductRepresentation(a[0], a[1], a[2]),\n 2267347899: (a) => new IFC2X3.IfcProductsOfCombustionProperties(a[0], a[1], a[2], a[3], a[4]),\n 3958567839: (a) => new IFC2X3.IfcProfileDef(a[0], a[1]),\n 2802850158: (a) => new IFC2X3.IfcProfileProperties(a[0], a[1]),\n 2598011224: (a) => new IFC2X3.IfcProperty(a[0], a[1]),\n 3896028662: (a) => new IFC2X3.IfcPropertyConstraintRelationship(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC2X3.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3710013099: (a) => new IFC2X3.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC2X3.IfcQuantityArea(a[0], a[1], a[2], a[3]),\n 2093928680: (a) => new IFC2X3.IfcQuantityCount(a[0], a[1], a[2], a[3]),\n 931644368: (a) => new IFC2X3.IfcQuantityLength(a[0], a[1], a[2], a[3]),\n 3252649465: (a) => new IFC2X3.IfcQuantityTime(a[0], a[1], a[2], a[3]),\n 2405470396: (a) => new IFC2X3.IfcQuantityVolume(a[0], a[1], a[2], a[3]),\n 825690147: (a) => new IFC2X3.IfcQuantityWeight(a[0], a[1], a[2], a[3]),\n 2692823254: (a) => new IFC2X3.IfcReferencesValueDocument(a[0], a[1], a[2], a[3]),\n 1580146022: (a) => new IFC2X3.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1222501353: (a) => new IFC2X3.IfcRelaxation(a[0], a[1]),\n 1076942058: (a) => new IFC2X3.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC2X3.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC2X3.IfcRepresentationItem(),\n 1660063152: (a) => new IFC2X3.IfcRepresentationMap(a[0], a[1]),\n 3679540991: (a) => new IFC2X3.IfcRibPlateProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2341007311: (a) => new IFC2X3.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC2X3.IfcSIUnit(a[0], a[1], a[2]),\n 2042790032: (a) => new IFC2X3.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC2X3.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 867548509: (a) => new IFC2X3.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC2X3.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC2X3.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 3692461612: (a) => new IFC2X3.IfcSimpleProperty(a[0], a[1]),\n 2273995522: (a) => new IFC2X3.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC2X3.IfcStructuralLoad(a[0]),\n 2525727697: (a) => new IFC2X3.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC2X3.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC2X3.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC2X3.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC2X3.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC2X3.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC2X3.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC2X3.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC2X3.IfcSurfaceStyleShading(a[0]),\n 1351298697: (a) => new IFC2X3.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC2X3.IfcSurfaceTexture(a[0], a[1], a[2], a[3]),\n 1290481447: (a) => new IFC2X3.IfcSymbolStyle(a[0], a[1]),\n 985171141: (a) => new IFC2X3.IfcTable(a[0], a[1]),\n 531007025: (a) => new IFC2X3.IfcTableRow(a[0], a[1]),\n 912023232: (a) => new IFC2X3.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1447204868: (a) => new IFC2X3.IfcTextStyle(a[0], a[1], a[2], a[3]),\n 1983826977: (a) => new IFC2X3.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2636378356: (a) => new IFC2X3.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC2X3.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1484833681: (a) => new IFC2X3.IfcTextStyleWithBoxCharacteristics(a[0], a[1], a[2], a[3], a[4]),\n 280115917: (_) => new IFC2X3.IfcTextureCoordinate(),\n 1742049831: (a) => new IFC2X3.IfcTextureCoordinateGenerator(a[0], a[1]),\n 2552916305: (a) => new IFC2X3.IfcTextureMap(a[0]),\n 1210645708: (a) => new IFC2X3.IfcTextureVertex(a[0]),\n 3317419933: (a) => new IFC2X3.IfcThermalMaterialProperties(a[0], a[1], a[2], a[3], a[4]),\n 3101149627: (a) => new IFC2X3.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1718945513: (a) => new IFC2X3.IfcTimeSeriesReferenceRelationship(a[0], a[1]),\n 581633288: (a) => new IFC2X3.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC2X3.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC2X3.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC2X3.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC2X3.IfcVertex(),\n 3304826586: (a) => new IFC2X3.IfcVertexBasedTextureMap(a[0], a[1]),\n 1907098498: (a) => new IFC2X3.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC2X3.IfcVirtualGridIntersection(a[0], a[1]),\n 1065908215: (a) => new IFC2X3.IfcWaterProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2442683028: (a) => new IFC2X3.IfcAnnotationOccurrence(a[0], a[1], a[2]),\n 962685235: (a) => new IFC2X3.IfcAnnotationSurfaceOccurrence(a[0], a[1], a[2]),\n 3612888222: (a) => new IFC2X3.IfcAnnotationSymbolOccurrence(a[0], a[1], a[2]),\n 2297822566: (a) => new IFC2X3.IfcAnnotationTextOccurrence(a[0], a[1], a[2]),\n 3798115385: (a) => new IFC2X3.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC2X3.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC2X3.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC2X3.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3150382593: (a) => new IFC2X3.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 647927063: (a) => new IFC2X3.IfcClassificationReference(a[0], a[1], a[2], a[3]),\n 776857604: (a) => new IFC2X3.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC2X3.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 1485152156: (a) => new IFC2X3.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC2X3.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC2X3.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC2X3.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC2X3.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC2X3.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 3800577675: (a) => new IFC2X3.IfcCurveStyle(a[0], a[1], a[2], a[3]),\n 3632507154: (a) => new IFC2X3.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 2273265877: (a) => new IFC2X3.IfcDimensionCalloutRelationship(a[0], a[1], a[2], a[3]),\n 1694125774: (a) => new IFC2X3.IfcDimensionPair(a[0], a[1], a[2], a[3]),\n 3732053477: (a) => new IFC2X3.IfcDocumentReference(a[0], a[1], a[2]),\n 4170525392: (a) => new IFC2X3.IfcDraughtingPreDefinedTextFont(a[0]),\n 3900360178: (a) => new IFC2X3.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC2X3.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 1860660968: (a) => new IFC2X3.IfcExtendedMaterialProperties(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC2X3.IfcFace(a[0]),\n 1809719519: (a) => new IFC2X3.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC2X3.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC2X3.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC2X3.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC2X3.IfcFillAreaStyle(a[0], a[1]),\n 3857492461: (a) => new IFC2X3.IfcFuelProperties(a[0], a[1], a[2], a[3], a[4]),\n 803998398: (a) => new IFC2X3.IfcGeneralMaterialProperties(a[0], a[1], a[2], a[3]),\n 1446786286: (a) => new IFC2X3.IfcGeneralProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3448662350: (a) => new IFC2X3.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC2X3.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC2X3.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3590301190: (a) => new IFC2X3.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC2X3.IfcGridPlacement(a[0], a[1]),\n 812098782: (a) => new IFC2X3.IfcHalfSpaceSolid(a[0], a[1]),\n 2445078500: (a) => new IFC2X3.IfcHygroscopicMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3905492369: (a) => new IFC2X3.IfcImageTexture(a[0], a[1], a[2], a[3], a[4]),\n 3741457305: (a) => new IFC2X3.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1402838566: (a) => new IFC2X3.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC2X3.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC2X3.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC2X3.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC2X3.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC2X3.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2624227202: (a) => new IFC2X3.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC2X3.IfcLoop(),\n 2347385850: (a) => new IFC2X3.IfcMappedItem(a[0], a[1]),\n 2022407955: (a) => new IFC2X3.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1430189142: (a) => new IFC2X3.IfcMechanicalConcreteMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 219451334: (a) => new IFC2X3.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 2833995503: (a) => new IFC2X3.IfcOneDirectionRepeatFactor(a[0]),\n 2665983363: (a) => new IFC2X3.IfcOpenShell(a[0]),\n 1029017970: (a) => new IFC2X3.IfcOrientedEdge(a[0], a[1]),\n 2529465313: (a) => new IFC2X3.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC2X3.IfcPath(a[0]),\n 3021840470: (a) => new IFC2X3.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC2X3.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2004835150: (a) => new IFC2X3.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC2X3.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC2X3.IfcPoint(),\n 4022376103: (a) => new IFC2X3.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC2X3.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC2X3.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC2X3.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 759155922: (a) => new IFC2X3.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC2X3.IfcPreDefinedCurveFont(a[0]),\n 433424934: (a) => new IFC2X3.IfcPreDefinedDimensionSymbol(a[0]),\n 179317114: (a) => new IFC2X3.IfcPreDefinedPointMarkerSymbol(a[0]),\n 673634403: (a) => new IFC2X3.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 871118103: (a) => new IFC2X3.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4]),\n 1680319473: (a) => new IFC2X3.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 4166981789: (a) => new IFC2X3.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC2X3.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC2X3.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 3357820518: (a) => new IFC2X3.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 3650150729: (a) => new IFC2X3.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC2X3.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3615266464: (a) => new IFC2X3.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC2X3.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3765753017: (a) => new IFC2X3.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC2X3.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2778083089: (a) => new IFC2X3.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC2X3.IfcSectionedSpine(a[0], a[1], a[2]),\n 2411513650: (a) => new IFC2X3.IfcServiceLifeFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4124623270: (a) => new IFC2X3.IfcShellBasedSurfaceModel(a[0]),\n 2609359061: (a) => new IFC2X3.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC2X3.IfcSolidModel(),\n 2485662743: (a) => new IFC2X3.IfcSoundProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1202362311: (a) => new IFC2X3.IfcSoundValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 390701378: (a) => new IFC2X3.IfcSpaceThermalLoadProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1595516126: (a) => new IFC2X3.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC2X3.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC2X3.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC2X3.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC2X3.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC2X3.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3843319758: (a) => new IFC2X3.IfcStructuralProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22]),\n 3653947884: (a) => new IFC2X3.IfcStructuralSteelProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22], a[23], a[24], a[25], a[26]),\n 2233826070: (a) => new IFC2X3.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC2X3.IfcSurface(),\n 1878645084: (a) => new IFC2X3.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC2X3.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC2X3.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 230924584: (a) => new IFC2X3.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC2X3.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3028897424: (a) => new IFC2X3.IfcTerminatorSymbol(a[0], a[1], a[2], a[3]),\n 4282788508: (a) => new IFC2X3.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC2X3.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 2715220739: (a) => new IFC2X3.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1345879162: (a) => new IFC2X3.IfcTwoDirectionRepeatFactor(a[0], a[1]),\n 1628702193: (a) => new IFC2X3.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2347495698: (a) => new IFC2X3.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 427810014: (a) => new IFC2X3.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1417489154: (a) => new IFC2X3.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC2X3.IfcVertexLoop(a[0]),\n 336235671: (a) => new IFC2X3.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 512836454: (a) => new IFC2X3.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1299126871: (a) => new IFC2X3.IfcWindowStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2543172580: (a) => new IFC2X3.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3288037868: (a) => new IFC2X3.IfcAnnotationCurveOccurrence(a[0], a[1], a[2]),\n 669184980: (a) => new IFC2X3.IfcAnnotationFillArea(a[0], a[1]),\n 2265737646: (a) => new IFC2X3.IfcAnnotationFillAreaOccurrence(a[0], a[1], a[2], a[3], a[4]),\n 1302238472: (a) => new IFC2X3.IfcAnnotationSurface(a[0], a[1]),\n 4261334040: (a) => new IFC2X3.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC2X3.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC2X3.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC2X3.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC2X3.IfcBoundedSurface(),\n 2581212453: (a) => new IFC2X3.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC2X3.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC2X3.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1123145078: (a) => new IFC2X3.IfcCartesianPoint(a[0]),\n 59481748: (a) => new IFC2X3.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC2X3.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC2X3.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC2X3.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC2X3.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC2X3.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC2X3.IfcClosedShell(a[0]),\n 2485617015: (a) => new IFC2X3.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 4133800736: (a) => new IFC2X3.IfcCraneRailAShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 194851669: (a) => new IFC2X3.IfcCraneRailFShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC2X3.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC2X3.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC2X3.IfcCurve(),\n 2827736869: (a) => new IFC2X3.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 693772133: (a) => new IFC2X3.IfcDefinedSymbol(a[0], a[1]),\n 606661476: (a) => new IFC2X3.IfcDimensionCurve(a[0], a[1], a[2]),\n 4054601972: (a) => new IFC2X3.IfcDimensionCurveTerminator(a[0], a[1], a[2], a[3], a[4]),\n 32440307: (a) => new IFC2X3.IfcDirection(a[0]),\n 2963535650: (a) => new IFC2X3.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 1714330368: (a) => new IFC2X3.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 526551008: (a) => new IFC2X3.IfcDoorStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 3073041342: (a) => new IFC2X3.IfcDraughtingCallout(a[0]),\n 445594917: (a) => new IFC2X3.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC2X3.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1472233963: (a) => new IFC2X3.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC2X3.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC2X3.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC2X3.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC2X3.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 80994333: (a) => new IFC2X3.IfcEnergyProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 477187591: (a) => new IFC2X3.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2047409740: (a) => new IFC2X3.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC2X3.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 4203026998: (a) => new IFC2X3.IfcFillAreaStyleTileSymbolWithStyle(a[0]),\n 315944413: (a) => new IFC2X3.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 3455213021: (a) => new IFC2X3.IfcFluidFlowProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18]),\n 4238390223: (a) => new IFC2X3.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC2X3.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC2X3.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC2X3.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 572779678: (a) => new IFC2X3.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1281925730: (a) => new IFC2X3.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC2X3.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC2X3.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 3388369263: (a) => new IFC2X3.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC2X3.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 3566463478: (a) => new IFC2X3.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603570806: (a) => new IFC2X3.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC2X3.IfcPlane(a[0]),\n 2945172077: (a) => new IFC2X3.IfcProcess(a[0], a[1], a[2], a[3], a[4]),\n 4208778838: (a) => new IFC2X3.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC2X3.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4194566429: (a) => new IFC2X3.IfcProjectionCurve(a[0], a[1], a[2]),\n 1451395588: (a) => new IFC2X3.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 3219374653: (a) => new IFC2X3.IfcProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2770003689: (a) => new IFC2X3.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC2X3.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC2X3.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3939117080: (a) => new IFC2X3.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC2X3.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC2X3.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC2X3.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4278684876: (a) => new IFC2X3.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC2X3.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3372526763: (a) => new IFC2X3.IfcRelAssignsToProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC2X3.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC2X3.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 1327628568: (a) => new IFC2X3.IfcRelAssociatesAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4095574036: (a) => new IFC2X3.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC2X3.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC2X3.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC2X3.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC2X3.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC2X3.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2851387026: (a) => new IFC2X3.IfcRelAssociatesProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 826625072: (a) => new IFC2X3.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC2X3.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC2X3.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC2X3.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC2X3.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC2X3.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3912681535: (a) => new IFC2X3.IfcRelConnectsStructuralElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC2X3.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC2X3.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC2X3.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC2X3.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC2X3.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC2X3.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC2X3.IfcRelDecomposes(a[0], a[1], a[2], a[3], a[4], a[5]),\n 693640335: (a) => new IFC2X3.IfcRelDefines(a[0], a[1], a[2], a[3], a[4]),\n 4186316022: (a) => new IFC2X3.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC2X3.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC2X3.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC2X3.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4189434867: (a) => new IFC2X3.IfcRelInteractionRequirements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3268803585: (a) => new IFC2X3.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2051452291: (a) => new IFC2X3.IfcRelOccupiesSpaces(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 202636808: (a) => new IFC2X3.IfcRelOverridesProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 750771296: (a) => new IFC2X3.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC2X3.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1058617721: (a) => new IFC2X3.IfcRelSchedulesCostItems(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4122056220: (a) => new IFC2X3.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 366585022: (a) => new IFC2X3.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC2X3.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1401173127: (a) => new IFC2X3.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2914609552: (a) => new IFC2X3.IfcResource(a[0], a[1], a[2], a[3], a[4]),\n 1856042241: (a) => new IFC2X3.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 4158566097: (a) => new IFC2X3.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC2X3.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 2706606064: (a) => new IFC2X3.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC2X3.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 451544542: (a) => new IFC2X3.IfcSphere(a[0], a[1]),\n 3544373492: (a) => new IFC2X3.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC2X3.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC2X3.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC2X3.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC2X3.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC2X3.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4070609034: (a) => new IFC2X3.IfcStructuredDimensionCallout(a[0]),\n 2028607225: (a) => new IFC2X3.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC2X3.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC2X3.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC2X3.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3473067441: (a) => new IFC2X3.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2097647324: (a) => new IFC2X3.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2296667514: (a) => new IFC2X3.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1674181508: (a) => new IFC2X3.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3207858831: (a) => new IFC2X3.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC2X3.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC2X3.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC2X3.IfcBoundedCurve(),\n 4031249490: (a) => new IFC2X3.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1950629157: (a) => new IFC2X3.IfcBuildingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3124254112: (a) => new IFC2X3.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC2X3.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 300633059: (a) => new IFC2X3.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3732776249: (a) => new IFC2X3.IfcCompositeCurve(a[0], a[1]),\n 2510884976: (a) => new IFC2X3.IfcConic(a[0]),\n 2559216714: (a) => new IFC2X3.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3293443760: (a) => new IFC2X3.IfcControl(a[0], a[1], a[2], a[3], a[4]),\n 3895139033: (a) => new IFC2X3.IfcCostItem(a[0], a[1], a[2], a[3], a[4]),\n 1419761937: (a) => new IFC2X3.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 1916426348: (a) => new IFC2X3.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC2X3.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1457835157: (a) => new IFC2X3.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 681481545: (a) => new IFC2X3.IfcDimensionCurveDirectedCallout(a[0]),\n 3256556792: (a) => new IFC2X3.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC2X3.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 360485395: (a) => new IFC2X3.IfcElectricalBaseProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1758889154: (a) => new IFC2X3.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC2X3.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC2X3.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC2X3.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC2X3.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC2X3.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1962604670: (a) => new IFC2X3.IfcEquipmentElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3272907226: (a) => new IFC2X3.IfcEquipmentStandard(a[0], a[1], a[2], a[3], a[4]),\n 3174744832: (a) => new IFC2X3.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC2X3.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 807026263: (a) => new IFC2X3.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC2X3.IfcFacetedBrepWithVoids(a[0], a[1]),\n 647756555: (a) => new IFC2X3.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2489546625: (a) => new IFC2X3.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2827207264: (a) => new IFC2X3.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC2X3.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC2X3.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC2X3.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC2X3.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC2X3.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC2X3.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC2X3.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC2X3.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC2X3.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC2X3.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 263784265: (a) => new IFC2X3.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 814719939: (a) => new IFC2X3.IfcFurnitureStandard(a[0], a[1], a[2], a[3], a[4]),\n 200128114: (a) => new IFC2X3.IfcGasTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3009204131: (a) => new IFC2X3.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2706460486: (a) => new IFC2X3.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC2X3.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC2X3.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391368822: (a) => new IFC2X3.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC2X3.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC2X3.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1051575348: (a) => new IFC2X3.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC2X3.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2506943328: (a) => new IFC2X3.IfcLinearDimension(a[0]),\n 377706215: (a) => new IFC2X3.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2108223431: (a) => new IFC2X3.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3181161470: (a) => new IFC2X3.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC2X3.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916936684: (a) => new IFC2X3.IfcMove(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4143007308: (a) => new IFC2X3.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC2X3.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3425660407: (a) => new IFC2X3.IfcOrderAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2837617999: (a) => new IFC2X3.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC2X3.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3327091369: (a) => new IFC2X3.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5]),\n 804291784: (a) => new IFC2X3.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC2X3.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC2X3.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3724593414: (a) => new IFC2X3.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC2X3.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC2X3.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC2X3.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3642467123: (a) => new IFC2X3.IfcProjectOrderRecord(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3651124850: (a) => new IFC2X3.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1842657554: (a) => new IFC2X3.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC2X3.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3248260540: (a) => new IFC2X3.IfcRadiusDimension(a[0]),\n 2893384427: (a) => new IFC2X3.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2324767716: (a) => new IFC2X3.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 160246688: (a) => new IFC2X3.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2863920197: (a) => new IFC2X3.IfcRelAssignsTasks(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1768891740: (a) => new IFC2X3.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3517283431: (a) => new IFC2X3.IfcScheduleTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22]),\n 4105383287: (a) => new IFC2X3.IfcServiceLife(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4097777520: (a) => new IFC2X3.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC2X3.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC2X3.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC2X3.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 652456506: (a) => new IFC2X3.IfcSpaceProgram(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC2X3.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3112655638: (a) => new IFC2X3.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC2X3.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC2X3.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1179482911: (a) => new IFC2X3.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4243806635: (a) => new IFC2X3.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 214636428: (a) => new IFC2X3.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2445595289: (a) => new IFC2X3.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1807405624: (a) => new IFC2X3.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1721250024: (a) => new IFC2X3.IfcStructuralLinearActionVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1252848954: (a) => new IFC2X3.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1621171031: (a) => new IFC2X3.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 3987759626: (a) => new IFC2X3.IfcStructuralPlanarActionVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2082059205: (a) => new IFC2X3.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 734778138: (a) => new IFC2X3.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1235345126: (a) => new IFC2X3.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC2X3.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1975003073: (a) => new IFC2X3.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC2X3.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2315554128: (a) => new IFC2X3.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC2X3.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 5716631: (a) => new IFC2X3.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1637806684: (a) => new IFC2X3.IfcTimeSeriesSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1692211062: (a) => new IFC2X3.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1620046519: (a) => new IFC2X3.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3593883385: (a) => new IFC2X3.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC2X3.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC2X3.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC2X3.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC2X3.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1898987631: (a) => new IFC2X3.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC2X3.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1028945134: (a) => new IFC2X3.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4218914973: (a) => new IFC2X3.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 3342526732: (a) => new IFC2X3.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 1033361043: (a) => new IFC2X3.IfcZone(a[0], a[1], a[2], a[3], a[4]),\n 1213861670: (a) => new IFC2X3.Ifc2DCompositeCurve(a[0], a[1]),\n 3821786052: (a) => new IFC2X3.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1411407467: (a) => new IFC2X3.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC2X3.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC2X3.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2470393545: (a) => new IFC2X3.IfcAngularDimension(a[0]),\n 3460190687: (a) => new IFC2X3.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1967976161: (a) => new IFC2X3.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 819618141: (a) => new IFC2X3.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916977116: (a) => new IFC2X3.IfcBezierCurve(a[0], a[1], a[2], a[3], a[4]),\n 231477066: (a) => new IFC2X3.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3299480353: (a) => new IFC2X3.IfcBuildingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 52481810: (a) => new IFC2X3.IfcBuildingElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2979338954: (a) => new IFC2X3.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1095909175: (a) => new IFC2X3.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1909888760: (a) => new IFC2X3.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC2X3.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC2X3.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC2X3.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC2X3.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2611217952: (a) => new IFC2X3.IfcCircle(a[0], a[1]),\n 2301859152: (a) => new IFC2X3.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC2X3.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3850581409: (a) => new IFC2X3.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC2X3.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188551683: (a) => new IFC2X3.IfcCondition(a[0], a[1], a[2], a[3], a[4]),\n 1163958913: (a) => new IFC2X3.IfcConditionCriterion(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3898045240: (a) => new IFC2X3.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1060000209: (a) => new IFC2X3.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC2X3.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 335055490: (a) => new IFC2X3.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC2X3.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1973544240: (a) => new IFC2X3.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC2X3.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3961806047: (a) => new IFC2X3.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4147604152: (a) => new IFC2X3.IfcDiameterDimension(a[0]),\n 1335981549: (a) => new IFC2X3.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2635815018: (a) => new IFC2X3.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1599208980: (a) => new IFC2X3.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC2X3.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC2X3.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC2X3.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC2X3.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 395920057: (a) => new IFC2X3.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 869906466: (a) => new IFC2X3.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC2X3.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC2X3.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 855621170: (a) => new IFC2X3.IfcEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 663422040: (a) => new IFC2X3.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC2X3.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC2X3.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1365060375: (a) => new IFC2X3.IfcElectricHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC2X3.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC2X3.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634875225: (a) => new IFC2X3.IfcElectricalCircuit(a[0], a[1], a[2], a[3], a[4]),\n 857184966: (a) => new IFC2X3.IfcElectricalElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1658829314: (a) => new IFC2X3.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 346874300: (a) => new IFC2X3.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC2X3.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC2X3.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC2X3.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC2X3.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC2X3.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3132237377: (a) => new IFC2X3.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC2X3.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC2X3.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC2X3.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC2X3.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC2X3.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC2X3.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1687234759: (a) => new IFC2X3.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3171933400: (a) => new IFC2X3.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2262370178: (a) => new IFC2X3.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC2X3.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC2X3.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3055160366: (a) => new IFC2X3.IfcRationalBezierCurve(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3027567501: (a) => new IFC2X3.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC2X3.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2016517767: (a) => new IFC2X3.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1376911519: (a) => new IFC2X3.IfcRoundedEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1783015770: (a) => new IFC2X3.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1529196076: (a) => new IFC2X3.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC2X3.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC2X3.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2515109513: (a) => new IFC2X3.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3824725483: (a) => new IFC2X3.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC2X3.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC2X3.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391406946: (a) => new IFC2X3.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3512223829: (a) => new IFC2X3.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3304561284: (a) => new IFC2X3.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2874132201: (a) => new IFC2X3.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3001207471: (a) => new IFC2X3.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 753842376: (a) => new IFC2X3.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2454782716: (a) => new IFC2X3.IfcChamferEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 578613899: (a) => new IFC2X3.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1052013943: (a) => new IFC2X3.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1062813311: (a) => new IFC2X3.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3700593921: (a) => new IFC2X3.IfcElectricDistributionPoint(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 979691226: (a) => new IFC2X3.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13])\n};\nToRawLineData[1] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate],\n 1110488051: (i) => [i.ComponentOfTotal, i.Components, i.ArithmeticOperator, i.Name, i.Description],\n 130549933: (i) => [i.Description, i.ApprovalDateTime, i.ApprovalStatus, i.ApprovalLevel, i.ApprovalQualifier, i.Name, i.Identifier],\n 2080292479: (i) => [i.Actor, i.Approval, i.Role],\n 390851274: (i) => [i.ApprovedProperties, i.Approval],\n 3869604511: (i) => [i.RelatedApproval, i.RelatingApproval, i.Description, i.Name],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, i.LinearStiffnessByLengthX, i.LinearStiffnessByLengthY, i.LinearStiffnessByLengthZ, i.RotationalStiffnessByLengthX, i.RotationalStiffnessByLengthY, i.RotationalStiffnessByLengthZ],\n 3367102660: (i) => [i.Name, i.LinearStiffnessByAreaX, i.LinearStiffnessByAreaY, i.LinearStiffnessByAreaZ],\n 1387855156: (i) => [i.Name, i.LinearStiffnessX, i.LinearStiffnessY, i.LinearStiffnessZ, i.RotationalStiffnessX, i.RotationalStiffnessY, i.RotationalStiffnessZ],\n 2069777674: (i) => [i.Name, i.LinearStiffnessX, i.LinearStiffnessY, i.LinearStiffnessZ, i.RotationalStiffnessX, i.RotationalStiffnessY, i.RotationalStiffnessZ, i.WarpingStiffness],\n 622194075: (i) => [i.DayComponent, i.MonthComponent, i.YearComponent],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name],\n 1767535486: (i) => [i.Notation, i.ItemOf, i.Title],\n 1098599126: (i) => [i.RelatingItem, i.RelatedItems],\n 938368621: (i) => [i.NotationFacets],\n 3639012971: (i) => [i.NotationValue],\n 3264961684: (i) => [i.Name],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 4257277454: (i) => [i.LocationAtRelatingElement, i.LocationAtRelatedElement, i.ProfileOfPort],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1658513725: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedConstraints, i.LogicalAggregator],\n 613356794: (i) => [i.ClassifiedConstraint, i.RelatedClassifications],\n 347226245: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedConstraints],\n 1065062679: (i) => [i.HourOffset, i.MinuteOffset, i.Sense],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.CostType, i.Condition],\n 539742890: (i) => [i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 1072939445: (i) => [i.DateComponent, i.TimeComponent],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 1376555844: (i) => [i.FileExtension, i.MimeContentType, i.MimeSubtype],\n 1154170062: (i) => [i.DocumentId, i.Name, i.Description, i.DocumentReferences, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3796139169: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 1648886627: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.ImpactType, i.Category, i.UserDefinedCategory],\n 3200245327: (i) => [i.Location, i.ItemReference, i.Name],\n 2242383968: (i) => [i.Location, i.ItemReference, i.Name],\n 1040185647: (i) => [i.Location, i.ItemReference, i.Name],\n 3207319532: (i) => [i.Location, i.ItemReference, i.Name],\n 3548104201: (i) => [i.Location, i.ItemReference, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.LibraryReference],\n 3452421091: (i) => [i.Location, i.ItemReference, i.Name],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 30780891: (i) => [i.HourComponent, i.MinuteComponent, i.SecondComponent, i.Zone, i.DaylightSavingOffset],\n 1838606355: (i) => [i.Name],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine],\n 2199411900: (i) => [i.Materials],\n 3265635763: (i) => [i.Material],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 4256014907: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient],\n 677618848: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient, i.YieldStress, i.UltimateStress, i.UltimateStrain, i.HardeningModule, i.ProportionalStress, i.PlasticStrain, i.Relaxations],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (_) => [],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.ResultValues, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 1227763645: (i) => [i.Material, i.VisibleTransmittance, i.SolarTransmittance, i.ThermalIrTransmittance, i.ThermalIrEmissivityBack, i.ThermalIrEmissivityFront, i.VisibleReflectanceBack, i.VisibleReflectanceFront, i.SolarReflectanceFront, i.SolarReflectanceBack],\n 4251960020: (i) => [i.Id, i.Name, i.Description, i.Roles, i.Addresses],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Id, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 3727388367: (i) => [i.Name],\n 990879717: (i) => [i.Name],\n 3213052703: (i) => [i.Name],\n 1775413392: (i) => [i.Name],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, i.LayerOn, i.LayerFrozen, i.LayerBlocked, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2417041796: (i) => [i.Styles],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 2267347899: (i) => [i.Material, i.SpecificHeatCapacity, i.N20Content, i.COContent, i.CO2Content],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 2802850158: (i) => [i.ProfileName, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Description],\n 3896028662: (i) => [i.RelatingConstraint, i.RelatedProperties, i.Name, i.Description],\n 148025276: (i) => [i.DependingProperty, i.DependantProperty, i.Name, i.Description, i.Expression],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue],\n 2692823254: (i) => [i.ReferencedDocument, i.ReferencingValues, i.Name, i.Description],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 1222501353: (i) => [i.RelaxationValue, i.InitialStress],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 3679540991: (i) => [i.ProfileName, i.ProfileDefinition, i.Thickness, i.RibHeight, i.RibWidth, i.RibSpacing, i.Direction],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, i.ProductDefinitional, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3692461612: (i) => [i.Name, i.Description],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaT_Constant, i.DeltaT_Y, i.DeltaT_Z],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform],\n 1290481447: (i) => [i.Name, Labelise(i.StyleOfSymbol)],\n 985171141: (i) => [i.Name, i.Rows],\n 531007025: (i) => [i.RowCells.map((p) => Labelise(p)), i.IsHeading],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 1484833681: (i) => [i.BoxHeight, i.BoxWidth, i.BoxSlantAngle, i.BoxRotateAngle, !i.CharacterSpacing ? null : Labelise(i.CharacterSpacing)],\n 280115917: (_) => [],\n 1742049831: (i) => [i.Mode, i.Parameter.map((p) => Labelise(p))],\n 2552916305: (i) => [i.TextureMaps],\n 1210645708: (i) => [i.Coordinates],\n 3317419933: (i) => [i.Material, i.SpecificHeatCapacity, i.BoilingPoint, i.FreezingPoint, i.ThermalConductivity],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 1718945513: (i) => [i.ReferencedTimeSeries, i.TimeSeriesReferences],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 3304826586: (i) => [i.TextureVertices, i.TexturePoints],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1065908215: (i) => [i.Material, i.IsPotable, i.Hardness, i.AlkalinityConcentration, i.AcidityConcentration, i.ImpuritiesContent, i.PHLevel, i.DissolvedSolidsContent],\n 2442683028: (i) => [i.Item, i.Styles, i.Name],\n 962685235: (i) => [i.Item, i.Styles, i.Name],\n 3612888222: (i) => [i.Item, i.Styles, i.Name],\n 2297822566: (i) => [i.Item, i.Styles, i.Name],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 647927063: (i) => [i.Location, i.ItemReference, i.Name, i.ReferencedSource],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Description, i.UsageName, i.HasProperties],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 2273265877: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 1694125774: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 3732053477: (i) => [i.Location, i.ItemReference, i.Name],\n 4170525392: (i) => [i.Name],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, i.SameSense],\n 1860660968: (i) => [i.Material, i.ExtendedProperties, i.Description, i.Name],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, i.Orientation],\n 803316827: (i) => [i.Bound, i.Orientation],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, i.SameSense],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles],\n 3857492461: (i) => [i.Material, i.CombustionTemperature, i.CarbonContent, i.LowerHeatingValue, i.HigherHeatingValue],\n 803998398: (i) => [i.Material, i.MolecularWeight, i.Porosity, i.MassDensity],\n 1446786286: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, i.AgreementFlag],\n 2445078500: (i) => [i.Material, i.UpperVaporResistanceFactor, i.LowerVaporResistanceFactor, i.IsothermalMoistureCapacity, i.VaporPermeability, i.MoistureDiffusivity],\n 3905492369: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.UrlReference],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1430189142: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient, i.CompressiveStrength, i.MaxAggregateSize, i.AdmixturesDescription, i.Workability, i.ProtectivePoreRatio, i.WaterImpermeability],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2833995503: (i) => [i.RepeatFactor],\n 2665983363: (i) => [i.CfsFaces],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, i.Orientation],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, i.AgreementFlag, i.Position, i.PolygonalBoundary],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 433424934: (i) => [i.Name],\n 179317114: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 871118103: (i) => [i.Name, i.Description, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 4166981789: (i) => [i.Name, i.Description, i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Description, i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Description, i.UsageName, i.PropertyReference],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3650150729: (i) => [i.Name, i.Description, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Description, i.DefiningValues.map((p) => Labelise(p)), i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 2411513650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PredefinedType, !i.UpperValue ? null : Labelise(i.UpperValue), Labelise(i.MostUsedValue), !i.LowerValue ? null : Labelise(i.LowerValue)],\n 4124623270: (i) => [i.SbsmBoundary],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 2485662743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, { type: 3, value: BooleanConvert(i.IsAttenuating.value) }, i.SoundScale, i.SoundValues],\n 1202362311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.SoundLevelTimeSeries, i.Frequency, !i.SoundLevelSingleValue ? null : Labelise(i.SoundLevelSingleValue)],\n 390701378: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableValueRatio, i.ThermalLoadSource, i.PropertySource, i.SourceDescription, i.MaximumValue, i.MinimumValue, i.ThermalLoadTimeSeriesValues, i.UserDefinedThermalLoadSource, i.UserDefinedPropertySource, i.ThermalLoadType],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 3843319758: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea, i.TorsionalConstantX, i.MomentOfInertiaYZ, i.MomentOfInertiaY, i.MomentOfInertiaZ, i.WarpingConstant, i.ShearCentreZ, i.ShearCentreY, i.ShearDeformationAreaZ, i.ShearDeformationAreaY, i.MaximumSectionModulusY, i.MinimumSectionModulusY, i.MaximumSectionModulusZ, i.MinimumSectionModulusZ, i.TorsionalSectionModulus, i.CentreOfGravityInX, i.CentreOfGravityInY],\n 3653947884: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea, i.TorsionalConstantX, i.MomentOfInertiaYZ, i.MomentOfInertiaY, i.MomentOfInertiaZ, i.WarpingConstant, i.ShearCentreZ, i.ShearCentreY, i.ShearDeformationAreaZ, i.ShearDeformationAreaY, i.MaximumSectionModulusY, i.MinimumSectionModulusY, i.MaximumSectionModulusZ, i.MinimumSectionModulusZ, i.TorsionalSectionModulus, i.CentreOfGravityInX, i.CentreOfGravityInY, i.ShearAreaZ, i.ShearAreaY, i.PlasticShapeFactorY, i.PlasticShapeFactorZ],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope, i.CentreOfGravityInY],\n 3028897424: (i) => [i.Item, i.Styles, i.Name, i.AnnotatedCurve],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1345879162: (i) => [i.RepeatFactor, i.SecondRepeatFactor],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope, i.CentreOfGravityInX],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 1299126871: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ConstructionType, i.OperationType, i.ParameterTakesPrecedence, i.Sizeable],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3288037868: (i) => [i.Item, i.Styles, i.Name],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 2265737646: (i) => [i.Item, i.Styles, i.Name, i.FillStyleTarget, i.GlobalOrLocal],\n 1302238472: (i) => [i.Item, i.TextureCoordinates],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, i.AgreementFlag, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius, i.CentreOfGravityInX],\n 1123145078: (i) => [i.Coordinates],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 2485617015: (i) => [i.Transition, i.SameSense, i.ParentCurve],\n 4133800736: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallHeight, i.BaseWidth2, i.Radius, i.HeadWidth, i.HeadDepth2, i.HeadDepth3, i.WebThickness, i.BaseWidth4, i.BaseDepth1, i.BaseDepth2, i.BaseDepth3, i.CentreOfGravityInY],\n 194851669: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallHeight, i.HeadWidth, i.Radius, i.HeadDepth2, i.HeadDepth3, i.WebThickness, i.BaseDepth1, i.BaseDepth2, i.CentreOfGravityInY],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 693772133: (i) => [i.Definition, i.Target],\n 606661476: (i) => [i.Item, i.Styles, i.Name],\n 4054601972: (i) => [i.Item, i.Styles, i.Name, i.AnnotatedCurve, i.Role],\n 32440307: (i) => [i.DirectionRatios],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 526551008: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.OperationType, i.ConstructionType, i.ParameterTakesPrecedence, i.Sizeable],\n 3073041342: (i) => [i.Contents],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 80994333: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.EnergySequence, i.UserDefinedEnergySequence],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 4203026998: (i) => [i.Symbol],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 3455213021: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PropertySource, i.FlowConditionTimeSeries, i.VelocityTimeSeries, i.FlowrateTimeSeries, i.Fluid, i.PressureTimeSeries, i.UserDefinedPropertySource, i.TemperatureSingleValue, i.WetBulbTemperatureSingleValue, i.WetBulbTemperatureTimeSeries, i.TemperatureTimeSeries, !i.FlowrateSingleValue ? null : Labelise(i.FlowrateSingleValue), i.FlowConditionSingleValue, i.VelocitySingleValue, i.PressureSingleValue],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope, i.CentreOfGravityInX, i.CentreOfGravityInY],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3388369263: (i) => [i.BasisCurve, i.Distance, i.SelfIntersect],\n 3505215534: (i) => [i.BasisCurve, i.Distance, i.SelfIntersect, i.RefDirection],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 4194566429: (i) => [i.Item, i.Styles, i.Name],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 3219374653: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.ProxyType, i.Tag],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, i.Usense, i.Vsense],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 3372526763: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 1327628568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingAppliedValue],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 2851387026: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingProfileProperties, i.ProfileSectionLocation, i.ProfileOrientation],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 3912681535: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralMember],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedSpace, i.RelatedCoverings],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 4189434867: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DailyInteraction, i.ImportanceRating, i.LocationOfInteraction, i.RelatedSpaceProgram, i.RelatingSpaceProgram],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2051452291: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 202636808: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition, i.OverridingProperties],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 1058617721: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 451544542: (i) => [i.Position, i.Radius],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness, i.SubsequentThickness, i.VaryingThicknessLocation],\n 4070609034: (i) => [i.Contents],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.CentreOfGravityInY],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 1950629157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3732776249: (i) => [i.Segments, i.SelfIntersect],\n 2510884976: (i) => [i.Position],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.SubmittedBy, i.PreparedBy, i.SubmittedOn, i.Status, i.TargetUsers, i.UpdateDate, i.ID, i.PredefinedType],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 681481545: (i) => [i.Contents],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 360485395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.EnergySequence, i.UserDefinedEnergySequence, i.ElectricCurrentType, i.InputVoltage, i.InputFrequency, i.FullLoadCurrent, i.MinimumCircuitCurrent, i.MaximumPowerInput, i.RatedPowerInput, i.InputPhase],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1962604670: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3272907226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 814719939: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 200128114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.InventoryType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.SkillSet],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2506943328: (i) => [i.Contents],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916936684: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority, i.MoveFrom, i.MoveTo, i.PunchList],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3425660407: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority, i.ActionID],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LifeCyclePhase],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PermitID],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ProcedureID, i.ProcedureType, i.UserDefinedProcedureType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ID, i.PredefinedType, i.Status],\n 3642467123: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Records, i.PredefinedType],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3248260540: (i) => [i.Contents],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2863920197: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl, i.TimeForTask],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3517283431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ActualStart, i.EarlyStart, i.LateStart, i.ScheduleStart, i.ActualFinish, i.EarlyFinish, i.LateFinish, i.ScheduleFinish, i.ScheduleDuration, i.ActualDuration, i.RemainingTime, i.FreeFloat, i.TotalFloat, i.IsCritical, i.StatusTime, i.StartFloat, i.FinishFloat, i.Completion],\n 4105383287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ServiceLifeType, i.ServiceLifeDuration],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.InteriorOrExteriorSpace, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 652456506: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.SpaceProgramIdentifier, i.MaxRequiredArea, i.MinRequiredArea, i.RequestedLocation, i.StandardRequiredArea],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue],\n 1721250024: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue, i.VaryingAppliedLoadLocation, i.SubsequentAppliedLoads],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue],\n 3987759626: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue, i.VaryingAppliedLoadLocation, i.SubsequentAppliedLoads],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, i.IsLinear],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.SubContractor, i.JobDescription],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1637806684: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ApplicableDates, i.TimeSeriesScheduleType, i.TimeSeries],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OperationType, i.CapacityByWeight, i.CapacityByNumber],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, i.SenseAgreement, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1213861670: (i) => [i.Segments, i.SelfIntersect],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.RequestID],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2470393545: (i) => [i.Contents],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.AssetID, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916977116: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3299480353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 52481810: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.CompositionType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188551683: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1163958913: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Criterion, i.CriterionDateTime],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.Suppliers, i.UsageRatio],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4147604152: (i) => [i.Contents],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 855621170: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1365060375: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634875225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 857184966: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3055160366: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect, i.WeightsData],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 1376911519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength, i.Radius],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRiser, i.NumberOfTreads, i.RiserHeight, i.TreadLength],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2454782716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength, i.Width, i.Height],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ControlElementId],\n 3700593921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.DistributionPointFunction, i.UserDefinedFunction],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarRole, i.BarSurface]\n};\nTypeInitialisers[1] = {\n 3699917729: (v) => new IFC2X3.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC2X3.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC2X3.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC2X3.IfcAngularVelocityMeasure(v),\n 2650437152: (v) => new IFC2X3.IfcAreaMeasure(v),\n 2735952531: (v) => new IFC2X3.IfcBoolean(v),\n 1867003952: (v) => new IFC2X3.IfcBoxAlignment(v),\n 2991860651: (v) => new IFC2X3.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC2X3.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC2X3.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC2X3.IfcCountMeasure(v),\n 94842927: (v) => new IFC2X3.IfcCurvatureMeasure(v),\n 86635668: (v) => new IFC2X3.IfcDayInMonthNumber(v),\n 300323983: (v) => new IFC2X3.IfcDaylightSavingHour(v),\n 1514641115: (v) => new IFC2X3.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC2X3.IfcDimensionCount(v),\n 524656162: (v) => new IFC2X3.IfcDoseEquivalentMeasure(v),\n 69416015: (v) => new IFC2X3.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC2X3.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC2X3.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC2X3.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC2X3.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC2X3.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC2X3.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC2X3.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC2X3.IfcFontStyle(v),\n 2715512545: (v) => new IFC2X3.IfcFontVariant(v),\n 2590844177: (v) => new IFC2X3.IfcFontWeight(v),\n 1361398929: (v) => new IFC2X3.IfcForceMeasure(v),\n 3044325142: (v) => new IFC2X3.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC2X3.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC2X3.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC2X3.IfcHeatingValueMeasure(v),\n 2589826445: (v) => new IFC2X3.IfcHourInDay(v),\n 983778844: (v) => new IFC2X3.IfcIdentifier(v),\n 3358199106: (v) => new IFC2X3.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC2X3.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC2X3.IfcInteger(v),\n 3809634241: (v) => new IFC2X3.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC2X3.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC2X3.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC2X3.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC2X3.IfcLabel(v),\n 1243674935: (v) => new IFC2X3.IfcLengthMeasure(v),\n 191860431: (v) => new IFC2X3.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC2X3.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC2X3.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC2X3.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC2X3.IfcLogical(v),\n 2095003142: (v) => new IFC2X3.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC2X3.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC2X3.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC2X3.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC2X3.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC2X3.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC2X3.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC2X3.IfcMassMeasure(v),\n 3531705166: (v) => new IFC2X3.IfcMassPerLengthMeasure(v),\n 102610177: (v) => new IFC2X3.IfcMinuteInHour(v),\n 3341486342: (v) => new IFC2X3.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC2X3.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC2X3.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC2X3.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC2X3.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC2X3.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC2X3.IfcMonthInYearNumber(v),\n 2095195183: (v) => new IFC2X3.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC2X3.IfcNumericMeasure(v),\n 929793134: (v) => new IFC2X3.IfcPHMeasure(v),\n 2260317790: (v) => new IFC2X3.IfcParameterValue(v),\n 2642773653: (v) => new IFC2X3.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC2X3.IfcPlaneAngleMeasure(v),\n 2815919920: (v) => new IFC2X3.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC2X3.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC2X3.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC2X3.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC2X3.IfcPresentableText(v),\n 3665567075: (v) => new IFC2X3.IfcPressureMeasure(v),\n 3972513137: (v) => new IFC2X3.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC2X3.IfcRatioMeasure(v),\n 200335297: (v) => new IFC2X3.IfcReal(v),\n 2133746277: (v) => new IFC2X3.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC2X3.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC2X3.IfcRotationalStiffnessMeasure(v),\n 2766185779: (v) => new IFC2X3.IfcSecondInMinute(v),\n 3467162246: (v) => new IFC2X3.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC2X3.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC2X3.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC2X3.IfcSolidAngleMeasure(v),\n 846465480: (v) => new IFC2X3.IfcSoundPowerMeasure(v),\n 993287707: (v) => new IFC2X3.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC2X3.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC2X3.IfcSpecularExponent(v),\n 361837227: (v) => new IFC2X3.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC2X3.IfcTemperatureGradientMeasure(v),\n 2801250643: (v) => new IFC2X3.IfcText(v),\n 1460886941: (v) => new IFC2X3.IfcTextAlignment(v),\n 3490877962: (v) => new IFC2X3.IfcTextDecoration(v),\n 603696268: (v) => new IFC2X3.IfcTextFontName(v),\n 296282323: (v) => new IFC2X3.IfcTextTransformation(v),\n 232962298: (v) => new IFC2X3.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC2X3.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC2X3.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC2X3.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC2X3.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC2X3.IfcThermodynamicTemperatureMeasure(v),\n 2726807636: (v) => new IFC2X3.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC2X3.IfcTimeStamp(v),\n 1278329552: (v) => new IFC2X3.IfcTorqueMeasure(v),\n 3345633955: (v) => new IFC2X3.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC2X3.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC2X3.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC2X3.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC2X3.IfcWarpingMomentMeasure(v),\n 4065007721: (v) => new IFC2X3.IfcYearNumber(v)\n};\nvar IFC2X3;\n(function(IFC2X32) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC2X32.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC2X32.IfcBoxAlignment = IfcBoxAlignment;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC2X32.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC2X32.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDaylightSavingHour {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYLIGHTSAVINGHOUR\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDaylightSavingHour = IfcDaylightSavingHour;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC2X32.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC2X32.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC2X32.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC2X32.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC2X32.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcHourInDay {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCHOURINDAY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHourInDay = IfcHourInDay;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC2X32.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC2X32.IfcLabel = IfcLabel;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC2X32.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcMinuteInHour {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMINUTEINHOUR\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMinuteInHour = IfcMinuteInHour;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC2X32.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPressureMeasure = IfcPressureMeasure;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSecondInMinute {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECONDINMINUTE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSecondInMinute = IfcSecondInMinute;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC2X32.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC2X32.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC2X32.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC2X32.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC2X32.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcYearNumber = IfcYearNumber;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAheadOrBehind {\n }\n IfcAheadOrBehind.AHEAD = { type: 3, value: \"AHEAD\" };\n IfcAheadOrBehind.BEHIND = { type: 3, value: \"BEHIND\" };\n IFC2X32.IfcAheadOrBehind = IfcAheadOrBehind;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.EYEBALL = { type: 3, value: \"EYEBALL\" };\n IfcAirTerminalTypeEnum.IRIS = { type: 3, value: \"IRIS\" };\n IfcAirTerminalTypeEnum.LINEARGRILLE = { type: 3, value: \"LINEARGRILLE\" };\n IfcAirTerminalTypeEnum.LINEARDIFFUSER = { type: 3, value: \"LINEARDIFFUSER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC2X32.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC2X32.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IFC2X32.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IFC2X32.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.REDUCER = { type: 3, value: \"REDUCER\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.MODIFIEDADDED = { type: 3, value: \"MODIFIEDADDED\" };\n IfcChangeActionEnum.MODIFIEDDELETED = { type: 3, value: \"MODIFIEDDELETED\" };\n IFC2X32.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcConstraintEnum = IfcConstraintEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.PROPORTIONALINTEGRAL = { type: 3, value: \"PROPORTIONALINTEGRAL\" };\n IfcControllerTypeEnum.PROPORTIONALINTEGRALDERIVATIVE = { type: 3, value: \"PROPORTIONALINTEGRALDERIVATIVE\" };\n IfcControllerTypeEnum.TIMEDTWOPOSITION = { type: 3, value: \"TIMEDTWOPOSITION\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCurrencyEnum {\n }\n IfcCurrencyEnum.AED = { type: 3, value: \"AED\" };\n IfcCurrencyEnum.AES = { type: 3, value: \"AES\" };\n IfcCurrencyEnum.ATS = { type: 3, value: \"ATS\" };\n IfcCurrencyEnum.AUD = { type: 3, value: \"AUD\" };\n IfcCurrencyEnum.BBD = { type: 3, value: \"BBD\" };\n IfcCurrencyEnum.BEG = { type: 3, value: \"BEG\" };\n IfcCurrencyEnum.BGL = { type: 3, value: \"BGL\" };\n IfcCurrencyEnum.BHD = { type: 3, value: \"BHD\" };\n IfcCurrencyEnum.BMD = { type: 3, value: \"BMD\" };\n IfcCurrencyEnum.BND = { type: 3, value: \"BND\" };\n IfcCurrencyEnum.BRL = { type: 3, value: \"BRL\" };\n IfcCurrencyEnum.BSD = { type: 3, value: \"BSD\" };\n IfcCurrencyEnum.BWP = { type: 3, value: \"BWP\" };\n IfcCurrencyEnum.BZD = { type: 3, value: \"BZD\" };\n IfcCurrencyEnum.CAD = { type: 3, value: \"CAD\" };\n IfcCurrencyEnum.CBD = { type: 3, value: \"CBD\" };\n IfcCurrencyEnum.CHF = { type: 3, value: \"CHF\" };\n IfcCurrencyEnum.CLP = { type: 3, value: \"CLP\" };\n IfcCurrencyEnum.CNY = { type: 3, value: \"CNY\" };\n IfcCurrencyEnum.CYS = { type: 3, value: \"CYS\" };\n IfcCurrencyEnum.CZK = { type: 3, value: \"CZK\" };\n IfcCurrencyEnum.DDP = { type: 3, value: \"DDP\" };\n IfcCurrencyEnum.DEM = { type: 3, value: \"DEM\" };\n IfcCurrencyEnum.DKK = { type: 3, value: \"DKK\" };\n IfcCurrencyEnum.EGL = { type: 3, value: \"EGL\" };\n IfcCurrencyEnum.EST = { type: 3, value: \"EST\" };\n IfcCurrencyEnum.EUR = { type: 3, value: \"EUR\" };\n IfcCurrencyEnum.FAK = { type: 3, value: \"FAK\" };\n IfcCurrencyEnum.FIM = { type: 3, value: \"FIM\" };\n IfcCurrencyEnum.FJD = { type: 3, value: \"FJD\" };\n IfcCurrencyEnum.FKP = { type: 3, value: \"FKP\" };\n IfcCurrencyEnum.FRF = { type: 3, value: \"FRF\" };\n IfcCurrencyEnum.GBP = { type: 3, value: \"GBP\" };\n IfcCurrencyEnum.GIP = { type: 3, value: \"GIP\" };\n IfcCurrencyEnum.GMD = { type: 3, value: \"GMD\" };\n IfcCurrencyEnum.GRX = { type: 3, value: \"GRX\" };\n IfcCurrencyEnum.HKD = { type: 3, value: \"HKD\" };\n IfcCurrencyEnum.HUF = { type: 3, value: \"HUF\" };\n IfcCurrencyEnum.ICK = { type: 3, value: \"ICK\" };\n IfcCurrencyEnum.IDR = { type: 3, value: \"IDR\" };\n IfcCurrencyEnum.ILS = { type: 3, value: \"ILS\" };\n IfcCurrencyEnum.INR = { type: 3, value: \"INR\" };\n IfcCurrencyEnum.IRP = { type: 3, value: \"IRP\" };\n IfcCurrencyEnum.ITL = { type: 3, value: \"ITL\" };\n IfcCurrencyEnum.JMD = { type: 3, value: \"JMD\" };\n IfcCurrencyEnum.JOD = { type: 3, value: \"JOD\" };\n IfcCurrencyEnum.JPY = { type: 3, value: \"JPY\" };\n IfcCurrencyEnum.KES = { type: 3, value: \"KES\" };\n IfcCurrencyEnum.KRW = { type: 3, value: \"KRW\" };\n IfcCurrencyEnum.KWD = { type: 3, value: \"KWD\" };\n IfcCurrencyEnum.KYD = { type: 3, value: \"KYD\" };\n IfcCurrencyEnum.LKR = { type: 3, value: \"LKR\" };\n IfcCurrencyEnum.LUF = { type: 3, value: \"LUF\" };\n IfcCurrencyEnum.MTL = { type: 3, value: \"MTL\" };\n IfcCurrencyEnum.MUR = { type: 3, value: \"MUR\" };\n IfcCurrencyEnum.MXN = { type: 3, value: \"MXN\" };\n IfcCurrencyEnum.MYR = { type: 3, value: \"MYR\" };\n IfcCurrencyEnum.NLG = { type: 3, value: \"NLG\" };\n IfcCurrencyEnum.NZD = { type: 3, value: \"NZD\" };\n IfcCurrencyEnum.OMR = { type: 3, value: \"OMR\" };\n IfcCurrencyEnum.PGK = { type: 3, value: \"PGK\" };\n IfcCurrencyEnum.PHP = { type: 3, value: \"PHP\" };\n IfcCurrencyEnum.PKR = { type: 3, value: \"PKR\" };\n IfcCurrencyEnum.PLN = { type: 3, value: \"PLN\" };\n IfcCurrencyEnum.PTN = { type: 3, value: \"PTN\" };\n IfcCurrencyEnum.QAR = { type: 3, value: \"QAR\" };\n IfcCurrencyEnum.RUR = { type: 3, value: \"RUR\" };\n IfcCurrencyEnum.SAR = { type: 3, value: \"SAR\" };\n IfcCurrencyEnum.SCR = { type: 3, value: \"SCR\" };\n IfcCurrencyEnum.SEK = { type: 3, value: \"SEK\" };\n IfcCurrencyEnum.SGD = { type: 3, value: \"SGD\" };\n IfcCurrencyEnum.SKP = { type: 3, value: \"SKP\" };\n IfcCurrencyEnum.THB = { type: 3, value: \"THB\" };\n IfcCurrencyEnum.TRL = { type: 3, value: \"TRL\" };\n IfcCurrencyEnum.TTD = { type: 3, value: \"TTD\" };\n IfcCurrencyEnum.TWD = { type: 3, value: \"TWD\" };\n IfcCurrencyEnum.USD = { type: 3, value: \"USD\" };\n IfcCurrencyEnum.VEB = { type: 3, value: \"VEB\" };\n IfcCurrencyEnum.VND = { type: 3, value: \"VND\" };\n IfcCurrencyEnum.XEU = { type: 3, value: \"XEU\" };\n IfcCurrencyEnum.ZAR = { type: 3, value: \"ZAR\" };\n IfcCurrencyEnum.ZWD = { type: 3, value: \"ZWD\" };\n IfcCurrencyEnum.NOK = { type: 3, value: \"NOK\" };\n IFC2X32.IfcCurrencyEnum = IfcCurrencyEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDimensionExtentUsage {\n }\n IfcDimensionExtentUsage.ORIGIN = { type: 3, value: \"ORIGIN\" };\n IfcDimensionExtentUsage.TARGET = { type: 3, value: \"TARGET\" };\n IFC2X32.IfcDimensionExtentUsage = IfcDimensionExtentUsage;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IFC2X32.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcElectricApplianceTypeEnum.DIRECTWATERHEATER = { type: 3, value: \"DIRECTWATERHEATER\" };\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.ELECTRICHEATER = { type: 3, value: \"ELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FACSIMILE = { type: 3, value: \"FACSIMILE\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.INDIRECTWATERHEATER = { type: 3, value: \"INDIRECTWATERHEATER\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.RADIANTHEATER = { type: 3, value: \"RADIANTHEATER\" };\n IfcElectricApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcElectricApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.TV = { type: 3, value: \"TV\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WATERHEATER = { type: 3, value: \"WATERHEATER\" };\n IfcElectricApplianceTypeEnum.WATERCOOLER = { type: 3, value: \"WATERCOOLER\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricCurrentEnum {\n }\n IfcElectricCurrentEnum.ALTERNATING = { type: 3, value: \"ALTERNATING\" };\n IfcElectricCurrentEnum.DIRECT = { type: 3, value: \"DIRECT\" };\n IfcElectricCurrentEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricCurrentEnum = IfcElectricCurrentEnum;\n class IfcElectricDistributionPointFunctionEnum {\n }\n IfcElectricDistributionPointFunctionEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcElectricDistributionPointFunctionEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionPointFunctionEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcElectricDistributionPointFunctionEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionPointFunctionEnum.GASDETECTORPANEL = { type: 3, value: \"GASDETECTORPANEL\" };\n IfcElectricDistributionPointFunctionEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcElectricDistributionPointFunctionEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcElectricDistributionPointFunctionEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionPointFunctionEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionPointFunctionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionPointFunctionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricDistributionPointFunctionEnum = IfcElectricDistributionPointFunctionEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricHeaterTypeEnum {\n }\n IfcElectricHeaterTypeEnum.ELECTRICPOINTHEATER = { type: 3, value: \"ELECTRICPOINTHEATER\" };\n IfcElectricHeaterTypeEnum.ELECTRICCABLEHEATER = { type: 3, value: \"ELECTRICCABLEHEATER\" };\n IfcElectricHeaterTypeEnum.ELECTRICMATHEATER = { type: 3, value: \"ELECTRICMATHEATER\" };\n IfcElectricHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricHeaterTypeEnum = IfcElectricHeaterTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC2X32.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEnergySequenceEnum {\n }\n IfcEnergySequenceEnum.PRIMARY = { type: 3, value: \"PRIMARY\" };\n IfcEnergySequenceEnum.SECONDARY = { type: 3, value: \"SECONDARY\" };\n IfcEnergySequenceEnum.TERTIARY = { type: 3, value: \"TERTIARY\" };\n IfcEnergySequenceEnum.AUXILIARY = { type: 3, value: \"AUXILIARY\" };\n IfcEnergySequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEnergySequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEnergySequenceEnum = IfcEnergySequenceEnum;\n class IfcEnvironmentalImpactCategoryEnum {\n }\n IfcEnvironmentalImpactCategoryEnum.COMBINEDVALUE = { type: 3, value: \"COMBINEDVALUE\" };\n IfcEnvironmentalImpactCategoryEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcEnvironmentalImpactCategoryEnum.EXTRACTION = { type: 3, value: \"EXTRACTION\" };\n IfcEnvironmentalImpactCategoryEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcEnvironmentalImpactCategoryEnum.MANUFACTURE = { type: 3, value: \"MANUFACTURE\" };\n IfcEnvironmentalImpactCategoryEnum.TRANSPORTATION = { type: 3, value: \"TRANSPORTATION\" };\n IfcEnvironmentalImpactCategoryEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEnvironmentalImpactCategoryEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEnvironmentalImpactCategoryEnum = IfcEnvironmentalImpactCategoryEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ELECTRICMETER = { type: 3, value: \"ELECTRICMETER\" };\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.FLOWMETER = { type: 3, value: \"FLOWMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcGasTerminalTypeEnum {\n }\n IfcGasTerminalTypeEnum.GASAPPLIANCE = { type: 3, value: \"GASAPPLIANCE\" };\n IfcGasTerminalTypeEnum.GASBOOSTER = { type: 3, value: \"GASBOOSTER\" };\n IfcGasTerminalTypeEnum.GASBURNER = { type: 3, value: \"GASBURNER\" };\n IfcGasTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGasTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcGasTerminalTypeEnum = IfcGasTerminalTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC2X32.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC2X32.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION_GROUP = { type: 3, value: \"LOAD_COMBINATION_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IFC2X32.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNullStyle {\n }\n IfcNullStyle.NULL = { type: 3, value: \"NULL\" };\n IFC2X32.IfcNullStyle = IfcNullStyle;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IFC2X32.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderRecordTypeEnum {\n }\n IfcProjectOrderRecordTypeEnum.CHANGE = { type: 3, value: \"CHANGE\" };\n IfcProjectOrderRecordTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcProjectOrderRecordTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcProjectOrderRecordTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcProjectOrderRecordTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcProjectOrderRecordTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderRecordTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProjectOrderRecordTypeEnum = IfcProjectOrderRecordTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC2X32.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcPropertySourceEnum {\n }\n IfcPropertySourceEnum.DESIGN = { type: 3, value: \"DESIGN\" };\n IfcPropertySourceEnum.DESIGNMAXIMUM = { type: 3, value: \"DESIGNMAXIMUM\" };\n IfcPropertySourceEnum.DESIGNMINIMUM = { type: 3, value: \"DESIGNMINIMUM\" };\n IfcPropertySourceEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcPropertySourceEnum.ASBUILT = { type: 3, value: \"ASBUILT\" };\n IfcPropertySourceEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcPropertySourceEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcPropertySourceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPropertySourceEnum.NOTKNOWN = { type: 3, value: \"NOTKNOWN\" };\n IFC2X32.IfcPropertySourceEnum = IfcPropertySourceEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHFAILUREDEVICE = { type: 3, value: \"EARTHFAILUREDEVICE\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC2X32.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcResourceConsumptionEnum {\n }\n IfcResourceConsumptionEnum.CONSUMED = { type: 3, value: \"CONSUMED\" };\n IfcResourceConsumptionEnum.PARTIALLYCONSUMED = { type: 3, value: \"PARTIALLYCONSUMED\" };\n IfcResourceConsumptionEnum.NOTCONSUMED = { type: 3, value: \"NOTCONSUMED\" };\n IfcResourceConsumptionEnum.OCCUPIED = { type: 3, value: \"OCCUPIED\" };\n IfcResourceConsumptionEnum.PARTIALLYOCCUPIED = { type: 3, value: \"PARTIALLYOCCUPIED\" };\n IfcResourceConsumptionEnum.NOTOCCUPIED = { type: 3, value: \"NOTOCCUPIED\" };\n IfcResourceConsumptionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcResourceConsumptionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcResourceConsumptionEnum = IfcResourceConsumptionEnum;\n class IfcRibPlateDirectionEnum {\n }\n IfcRibPlateDirectionEnum.DIRECTION_X = { type: 3, value: \"DIRECTION_X\" };\n IfcRibPlateDirectionEnum.DIRECTION_Y = { type: 3, value: \"DIRECTION_Y\" };\n IFC2X32.IfcRibPlateDirectionEnum = IfcRibPlateDirectionEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.COMISSIONINGENGINEER = { type: 3, value: \"COMISSIONINGENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IFC2X32.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC2X32.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IFC2X32.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSequenceEnum = IfcSequenceEnum;\n class IfcServiceLifeFactorTypeEnum {\n }\n IfcServiceLifeFactorTypeEnum.A_QUALITYOFCOMPONENTS = { type: 3, value: \"A_QUALITYOFCOMPONENTS\" };\n IfcServiceLifeFactorTypeEnum.B_DESIGNLEVEL = { type: 3, value: \"B_DESIGNLEVEL\" };\n IfcServiceLifeFactorTypeEnum.C_WORKEXECUTIONLEVEL = { type: 3, value: \"C_WORKEXECUTIONLEVEL\" };\n IfcServiceLifeFactorTypeEnum.D_INDOORENVIRONMENT = { type: 3, value: \"D_INDOORENVIRONMENT\" };\n IfcServiceLifeFactorTypeEnum.E_OUTDOORENVIRONMENT = { type: 3, value: \"E_OUTDOORENVIRONMENT\" };\n IfcServiceLifeFactorTypeEnum.F_INUSECONDITIONS = { type: 3, value: \"F_INUSECONDITIONS\" };\n IfcServiceLifeFactorTypeEnum.G_MAINTENANCELEVEL = { type: 3, value: \"G_MAINTENANCELEVEL\" };\n IfcServiceLifeFactorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcServiceLifeFactorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcServiceLifeFactorTypeEnum = IfcServiceLifeFactorTypeEnum;\n class IfcServiceLifeTypeEnum {\n }\n IfcServiceLifeTypeEnum.ACTUALSERVICELIFE = { type: 3, value: \"ACTUALSERVICELIFE\" };\n IfcServiceLifeTypeEnum.EXPECTEDSERVICELIFE = { type: 3, value: \"EXPECTEDSERVICELIFE\" };\n IfcServiceLifeTypeEnum.OPTIMISTICREFERENCESERVICELIFE = { type: 3, value: \"OPTIMISTICREFERENCESERVICELIFE\" };\n IfcServiceLifeTypeEnum.PESSIMISTICREFERENCESERVICELIFE = { type: 3, value: \"PESSIMISTICREFERENCESERVICELIFE\" };\n IfcServiceLifeTypeEnum.REFERENCESERVICELIFE = { type: 3, value: \"REFERENCESERVICELIFE\" };\n IFC2X32.IfcServiceLifeTypeEnum = IfcServiceLifeTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSoundScaleEnum {\n }\n IfcSoundScaleEnum.DBA = { type: 3, value: \"DBA\" };\n IfcSoundScaleEnum.DBB = { type: 3, value: \"DBB\" };\n IfcSoundScaleEnum.DBC = { type: 3, value: \"DBC\" };\n IfcSoundScaleEnum.NC = { type: 3, value: \"NC\" };\n IfcSoundScaleEnum.NR = { type: 3, value: \"NR\" };\n IfcSoundScaleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSoundScaleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSoundScaleEnum = IfcSoundScaleEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.SECTIONALRADIATOR = { type: 3, value: \"SECTIONALRADIATOR\" };\n IfcSpaceHeaterTypeEnum.PANELRADIATOR = { type: 3, value: \"PANELRADIATOR\" };\n IfcSpaceHeaterTypeEnum.TUBULARRADIATOR = { type: 3, value: \"TUBULARRADIATOR\" };\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.BASEBOARDHEATER = { type: 3, value: \"BASEBOARDHEATER\" };\n IfcSpaceHeaterTypeEnum.FINNEDTUBEUNIT = { type: 3, value: \"FINNEDTUBEUNIT\" };\n IfcSpaceHeaterTypeEnum.UNITHEATER = { type: 3, value: \"UNITHEATER\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IFC2X32.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveTypeEnum {\n }\n IfcStructuralCurveTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStructuralCurveTypeEnum = IfcStructuralCurveTypeEnum;\n class IfcStructuralSurfaceTypeEnum {\n }\n IfcStructuralSurfaceTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStructuralSurfaceTypeEnum = IfcStructuralSurfaceTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IFC2X32.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSurfaceTextureEnum {\n }\n IfcSurfaceTextureEnum.BUMP = { type: 3, value: \"BUMP\" };\n IfcSurfaceTextureEnum.OPACITY = { type: 3, value: \"OPACITY\" };\n IfcSurfaceTextureEnum.REFLECTION = { type: 3, value: \"REFLECTION\" };\n IfcSurfaceTextureEnum.SELFILLUMINATION = { type: 3, value: \"SELFILLUMINATION\" };\n IfcSurfaceTextureEnum.SHININESS = { type: 3, value: \"SHININESS\" };\n IfcSurfaceTextureEnum.SPECULAR = { type: 3, value: \"SPECULAR\" };\n IfcSurfaceTextureEnum.TEXTURE = { type: 3, value: \"TEXTURE\" };\n IfcSurfaceTextureEnum.TRANSPARENCYMAP = { type: 3, value: \"TRANSPARENCYMAP\" };\n IfcSurfaceTextureEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSurfaceTextureEnum = IfcSurfaceTextureEnum;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.PREFORMED = { type: 3, value: \"PREFORMED\" };\n IfcTankTypeEnum.SECTIONAL = { type: 3, value: \"SECTIONAL\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IFC2X32.IfcTextPath = IfcTextPath;\n class IfcThermalLoadSourceEnum {\n }\n IfcThermalLoadSourceEnum.PEOPLE = { type: 3, value: \"PEOPLE\" };\n IfcThermalLoadSourceEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcThermalLoadSourceEnum.EQUIPMENT = { type: 3, value: \"EQUIPMENT\" };\n IfcThermalLoadSourceEnum.VENTILATIONINDOORAIR = { type: 3, value: \"VENTILATIONINDOORAIR\" };\n IfcThermalLoadSourceEnum.VENTILATIONOUTSIDEAIR = { type: 3, value: \"VENTILATIONOUTSIDEAIR\" };\n IfcThermalLoadSourceEnum.RECIRCULATEDAIR = { type: 3, value: \"RECIRCULATEDAIR\" };\n IfcThermalLoadSourceEnum.EXHAUSTAIR = { type: 3, value: \"EXHAUSTAIR\" };\n IfcThermalLoadSourceEnum.AIREXCHANGERATE = { type: 3, value: \"AIREXCHANGERATE\" };\n IfcThermalLoadSourceEnum.DRYBULBTEMPERATURE = { type: 3, value: \"DRYBULBTEMPERATURE\" };\n IfcThermalLoadSourceEnum.RELATIVEHUMIDITY = { type: 3, value: \"RELATIVEHUMIDITY\" };\n IfcThermalLoadSourceEnum.INFILTRATION = { type: 3, value: \"INFILTRATION\" };\n IfcThermalLoadSourceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcThermalLoadSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcThermalLoadSourceEnum = IfcThermalLoadSourceEnum;\n class IfcThermalLoadTypeEnum {\n }\n IfcThermalLoadTypeEnum.SENSIBLE = { type: 3, value: \"SENSIBLE\" };\n IfcThermalLoadTypeEnum.LATENT = { type: 3, value: \"LATENT\" };\n IfcThermalLoadTypeEnum.RADIANT = { type: 3, value: \"RADIANT\" };\n IfcThermalLoadTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcThermalLoadTypeEnum = IfcThermalLoadTypeEnum;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTimeSeriesScheduleTypeEnum {\n }\n IfcTimeSeriesScheduleTypeEnum.ANNUAL = { type: 3, value: \"ANNUAL\" };\n IfcTimeSeriesScheduleTypeEnum.MONTHLY = { type: 3, value: \"MONTHLY\" };\n IfcTimeSeriesScheduleTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcTimeSeriesScheduleTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcTimeSeriesScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTimeSeriesScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTimeSeriesScheduleTypeEnum = IfcTimeSeriesScheduleTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IFC2X32.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC2X32.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.GREASEINTERCEPTOR = { type: 3, value: \"GREASEINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.OILINTERCEPTOR = { type: 3, value: \"OILINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.PETROLINTERCEPTOR = { type: 3, value: \"PETROLINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWorkControlTypeEnum {\n }\n IfcWorkControlTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkControlTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkControlTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWorkControlTypeEnum = IfcWorkControlTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC2X32.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC2X32.IfcAddress = IfcAddress;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC2X32.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.type = 411424972;\n }\n }\n IFC2X32.IfcAppliedValue = IfcAppliedValue;\n class IfcAppliedValueRelationship extends IfcLineObject {\n constructor(ComponentOfTotal, Components, ArithmeticOperator, Name, Description) {\n super();\n this.ComponentOfTotal = ComponentOfTotal;\n this.Components = Components;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Name = Name;\n this.Description = Description;\n this.type = 1110488051;\n }\n }\n IFC2X32.IfcAppliedValueRelationship = IfcAppliedValueRelationship;\n class IfcApproval extends IfcLineObject {\n constructor(Description, ApprovalDateTime, ApprovalStatus, ApprovalLevel, ApprovalQualifier, Name, Identifier) {\n super();\n this.Description = Description;\n this.ApprovalDateTime = ApprovalDateTime;\n this.ApprovalStatus = ApprovalStatus;\n this.ApprovalLevel = ApprovalLevel;\n this.ApprovalQualifier = ApprovalQualifier;\n this.Name = Name;\n this.Identifier = Identifier;\n this.type = 130549933;\n }\n }\n IFC2X32.IfcApproval = IfcApproval;\n class IfcApprovalActorRelationship extends IfcLineObject {\n constructor(Actor, Approval, Role) {\n super();\n this.Actor = Actor;\n this.Approval = Approval;\n this.Role = Role;\n this.type = 2080292479;\n }\n }\n IFC2X32.IfcApprovalActorRelationship = IfcApprovalActorRelationship;\n class IfcApprovalPropertyRelationship extends IfcLineObject {\n constructor(ApprovedProperties, Approval) {\n super();\n this.ApprovedProperties = ApprovedProperties;\n this.Approval = Approval;\n this.type = 390851274;\n }\n }\n IFC2X32.IfcApprovalPropertyRelationship = IfcApprovalPropertyRelationship;\n class IfcApprovalRelationship extends IfcLineObject {\n constructor(RelatedApproval, RelatingApproval, Description, Name) {\n super();\n this.RelatedApproval = RelatedApproval;\n this.RelatingApproval = RelatingApproval;\n this.Description = Description;\n this.Name = Name;\n this.type = 3869604511;\n }\n }\n IFC2X32.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC2X32.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessByLengthX, LinearStiffnessByLengthY, LinearStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessByLengthX = LinearStiffnessByLengthX;\n this.LinearStiffnessByLengthY = LinearStiffnessByLengthY;\n this.LinearStiffnessByLengthZ = LinearStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC2X32.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessByAreaX, LinearStiffnessByAreaY, LinearStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessByAreaX = LinearStiffnessByAreaX;\n this.LinearStiffnessByAreaY = LinearStiffnessByAreaY;\n this.LinearStiffnessByAreaZ = LinearStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC2X32.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessX = LinearStiffnessX;\n this.LinearStiffnessY = LinearStiffnessY;\n this.LinearStiffnessZ = LinearStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC2X32.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.LinearStiffnessX = LinearStiffnessX;\n this.LinearStiffnessY = LinearStiffnessY;\n this.LinearStiffnessZ = LinearStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC2X32.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcCalendarDate extends IfcLineObject {\n constructor(DayComponent, MonthComponent, YearComponent) {\n super();\n this.DayComponent = DayComponent;\n this.MonthComponent = MonthComponent;\n this.YearComponent = YearComponent;\n this.type = 622194075;\n }\n }\n IFC2X32.IfcCalendarDate = IfcCalendarDate;\n class IfcClassification extends IfcLineObject {\n constructor(Source, Edition, EditionDate, Name) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.type = 747523909;\n }\n }\n IFC2X32.IfcClassification = IfcClassification;\n class IfcClassificationItem extends IfcLineObject {\n constructor(Notation, ItemOf, Title) {\n super();\n this.Notation = Notation;\n this.ItemOf = ItemOf;\n this.Title = Title;\n this.type = 1767535486;\n }\n }\n IFC2X32.IfcClassificationItem = IfcClassificationItem;\n class IfcClassificationItemRelationship extends IfcLineObject {\n constructor(RelatingItem, RelatedItems) {\n super();\n this.RelatingItem = RelatingItem;\n this.RelatedItems = RelatedItems;\n this.type = 1098599126;\n }\n }\n IFC2X32.IfcClassificationItemRelationship = IfcClassificationItemRelationship;\n class IfcClassificationNotation extends IfcLineObject {\n constructor(NotationFacets) {\n super();\n this.NotationFacets = NotationFacets;\n this.type = 938368621;\n }\n }\n IFC2X32.IfcClassificationNotation = IfcClassificationNotation;\n class IfcClassificationNotationFacet extends IfcLineObject {\n constructor(NotationValue) {\n super();\n this.NotationValue = NotationValue;\n this.type = 3639012971;\n }\n }\n IFC2X32.IfcClassificationNotationFacet = IfcClassificationNotationFacet;\n class IfcColourSpecification extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC2X32.IfcColourSpecification = IfcColourSpecification;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC2X32.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC2X32.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionPortGeometry extends IfcConnectionGeometry {\n constructor(LocationAtRelatingElement, LocationAtRelatedElement, ProfileOfPort) {\n super();\n this.LocationAtRelatingElement = LocationAtRelatingElement;\n this.LocationAtRelatedElement = LocationAtRelatedElement;\n this.ProfileOfPort = ProfileOfPort;\n this.type = 4257277454;\n }\n }\n IFC2X32.IfcConnectionPortGeometry = IfcConnectionPortGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC2X32.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC2X32.IfcConstraint = IfcConstraint;\n class IfcConstraintAggregationRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingConstraint, RelatedConstraints, LogicalAggregator) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedConstraints = RelatedConstraints;\n this.LogicalAggregator = LogicalAggregator;\n this.type = 1658513725;\n }\n }\n IFC2X32.IfcConstraintAggregationRelationship = IfcConstraintAggregationRelationship;\n class IfcConstraintClassificationRelationship extends IfcLineObject {\n constructor(ClassifiedConstraint, RelatedClassifications) {\n super();\n this.ClassifiedConstraint = ClassifiedConstraint;\n this.RelatedClassifications = RelatedClassifications;\n this.type = 613356794;\n }\n }\n IFC2X32.IfcConstraintClassificationRelationship = IfcConstraintClassificationRelationship;\n class IfcConstraintRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingConstraint, RelatedConstraints) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedConstraints = RelatedConstraints;\n this.type = 347226245;\n }\n }\n IFC2X32.IfcConstraintRelationship = IfcConstraintRelationship;\n class IfcCoordinatedUniversalTimeOffset extends IfcLineObject {\n constructor(HourOffset, MinuteOffset, Sense) {\n super();\n this.HourOffset = HourOffset;\n this.MinuteOffset = MinuteOffset;\n this.Sense = Sense;\n this.type = 1065062679;\n }\n }\n IFC2X32.IfcCoordinatedUniversalTimeOffset = IfcCoordinatedUniversalTimeOffset;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, CostType, Condition) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.CostType = CostType;\n this.Condition = Condition;\n this.type = 602808272;\n }\n }\n IFC2X32.IfcCostValue = IfcCostValue;\n class IfcCurrencyRelationship extends IfcLineObject {\n constructor(RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super();\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC2X32.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyleFont extends IfcLineObject {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC2X32.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcLineObject {\n constructor(Name, CurveFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC2X32.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcLineObject {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC2X32.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDateAndTime extends IfcLineObject {\n constructor(DateComponent, TimeComponent) {\n super();\n this.DateComponent = DateComponent;\n this.TimeComponent = TimeComponent;\n this.type = 1072939445;\n }\n }\n IFC2X32.IfcDateAndTime = IfcDateAndTime;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.type = 1765591967;\n }\n }\n IFC2X32.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC2X32.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC2X32.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcDocumentElectronicFormat extends IfcLineObject {\n constructor(FileExtension, MimeContentType, MimeSubtype) {\n super();\n this.FileExtension = FileExtension;\n this.MimeContentType = MimeContentType;\n this.MimeSubtype = MimeSubtype;\n this.type = 1376555844;\n }\n }\n IFC2X32.IfcDocumentElectronicFormat = IfcDocumentElectronicFormat;\n class IfcDocumentInformation extends IfcLineObject {\n constructor(DocumentId, Name, Description, DocumentReferences, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.DocumentId = DocumentId;\n this.Name = Name;\n this.Description = Description;\n this.DocumentReferences = DocumentReferences;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC2X32.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcLineObject {\n constructor(RelatingDocument, RelatedDocuments, RelationshipType) {\n super();\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC2X32.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDraughtingCalloutRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 3796139169;\n }\n }\n IFC2X32.IfcDraughtingCalloutRelationship = IfcDraughtingCalloutRelationship;\n class IfcEnvironmentalImpactValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, ImpactType, Category, UserDefinedCategory) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.ImpactType = ImpactType;\n this.Category = Category;\n this.UserDefinedCategory = UserDefinedCategory;\n this.type = 1648886627;\n }\n }\n IFC2X32.IfcEnvironmentalImpactValue = IfcEnvironmentalImpactValue;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, ItemReference, Name) {\n super();\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC2X32.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC2X32.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC2X32.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedSymbol extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3207319532;\n }\n }\n IFC2X32.IfcExternallyDefinedSymbol = IfcExternallyDefinedSymbol;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC2X32.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC2X32.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC2X32.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcLineObject {\n constructor(Name, Version, Publisher, VersionDate, LibraryReference) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.LibraryReference = LibraryReference;\n this.type = 2655187982;\n }\n }\n IFC2X32.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3452421091;\n }\n }\n IFC2X32.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC2X32.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC2X32.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcLocalTime extends IfcLineObject {\n constructor(HourComponent, MinuteComponent, SecondComponent, Zone, DaylightSavingOffset) {\n super();\n this.HourComponent = HourComponent;\n this.MinuteComponent = MinuteComponent;\n this.SecondComponent = SecondComponent;\n this.Zone = Zone;\n this.DaylightSavingOffset = DaylightSavingOffset;\n this.type = 30780891;\n }\n }\n IFC2X32.IfcLocalTime = IfcLocalTime;\n class IfcMaterial extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 1838606355;\n }\n }\n IFC2X32.IfcMaterial = IfcMaterial;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC2X32.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialLayer extends IfcLineObject {\n constructor(Material, LayerThickness, IsVentilated) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.type = 248100487;\n }\n }\n IFC2X32.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcLineObject {\n constructor(MaterialLayers, LayerSetName) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.type = 3303938423;\n }\n }\n IFC2X32.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerSetUsage extends IfcLineObject {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.type = 1303795690;\n }\n }\n IFC2X32.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC2X32.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProperties extends IfcLineObject {\n constructor(Material) {\n super();\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC2X32.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC2X32.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMechanicalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient) {\n super(Material);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.type = 4256014907;\n }\n }\n IFC2X32.IfcMechanicalMaterialProperties = IfcMechanicalMaterialProperties;\n class IfcMechanicalSteelMaterialProperties extends IfcMechanicalMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient, YieldStress, UltimateStress, UltimateStrain, HardeningModule, ProportionalStress, PlasticStrain, Relaxations) {\n super(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.YieldStress = YieldStress;\n this.UltimateStress = UltimateStress;\n this.UltimateStrain = UltimateStrain;\n this.HardeningModule = HardeningModule;\n this.ProportionalStress = ProportionalStress;\n this.PlasticStrain = PlasticStrain;\n this.Relaxations = Relaxations;\n this.type = 677618848;\n }\n }\n IFC2X32.IfcMechanicalSteelMaterialProperties = IfcMechanicalSteelMaterialProperties;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.type = 3368373690;\n }\n }\n IFC2X32.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC2X32.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC2X32.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor() {\n super();\n this.type = 3701648758;\n }\n }\n IFC2X32.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, ResultValues, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.ResultValues = ResultValues;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC2X32.IfcObjective = IfcObjective;\n class IfcOpticalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, VisibleTransmittance, SolarTransmittance, ThermalIrTransmittance, ThermalIrEmissivityBack, ThermalIrEmissivityFront, VisibleReflectanceBack, VisibleReflectanceFront, SolarReflectanceFront, SolarReflectanceBack) {\n super(Material);\n this.Material = Material;\n this.VisibleTransmittance = VisibleTransmittance;\n this.SolarTransmittance = SolarTransmittance;\n this.ThermalIrTransmittance = ThermalIrTransmittance;\n this.ThermalIrEmissivityBack = ThermalIrEmissivityBack;\n this.ThermalIrEmissivityFront = ThermalIrEmissivityFront;\n this.VisibleReflectanceBack = VisibleReflectanceBack;\n this.VisibleReflectanceFront = VisibleReflectanceFront;\n this.SolarReflectanceFront = SolarReflectanceFront;\n this.SolarReflectanceBack = SolarReflectanceBack;\n this.type = 1227763645;\n }\n }\n IFC2X32.IfcOpticalMaterialProperties = IfcOpticalMaterialProperties;\n class IfcOrganization extends IfcLineObject {\n constructor(Id, Name, Description, Roles, Addresses) {\n super();\n this.Id = Id;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC2X32.IfcOrganization = IfcOrganization;\n class IfcOrganizationRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC2X32.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC2X32.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Id, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Id = Id;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC2X32.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC2X32.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC2X32.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC2X32.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC2X32.IfcPostalAddress = IfcPostalAddress;\n class IfcPreDefinedItem extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC2X32.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedSymbol extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 990879717;\n }\n }\n IFC2X32.IfcPreDefinedSymbol = IfcPreDefinedSymbol;\n class IfcPreDefinedTerminatorSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 3213052703;\n }\n }\n IFC2X32.IfcPreDefinedTerminatorSymbol = IfcPreDefinedTerminatorSymbol;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC2X32.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC2X32.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC2X32.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC2X32.IfcPresentationStyle = IfcPresentationStyle;\n class IfcPresentationStyleAssignment extends IfcLineObject {\n constructor(Styles) {\n super();\n this.Styles = Styles;\n this.type = 2417041796;\n }\n }\n IFC2X32.IfcPresentationStyleAssignment = IfcPresentationStyleAssignment;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC2X32.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProductsOfCombustionProperties extends IfcMaterialProperties {\n constructor(Material, SpecificHeatCapacity, N20Content, COContent, CO2Content) {\n super(Material);\n this.Material = Material;\n this.SpecificHeatCapacity = SpecificHeatCapacity;\n this.N20Content = N20Content;\n this.COContent = COContent;\n this.CO2Content = CO2Content;\n this.type = 2267347899;\n }\n }\n IFC2X32.IfcProductsOfCombustionProperties = IfcProductsOfCombustionProperties;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC2X32.IfcProfileDef = IfcProfileDef;\n class IfcProfileProperties extends IfcLineObject {\n constructor(ProfileName, ProfileDefinition) {\n super();\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC2X32.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2598011224;\n }\n }\n IFC2X32.IfcProperty = IfcProperty;\n class IfcPropertyConstraintRelationship extends IfcLineObject {\n constructor(RelatingConstraint, RelatedProperties, Name, Description) {\n super();\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedProperties = RelatedProperties;\n this.Name = Name;\n this.Description = Description;\n this.type = 3896028662;\n }\n }\n IFC2X32.IfcPropertyConstraintRelationship = IfcPropertyConstraintRelationship;\n class IfcPropertyDependencyRelationship extends IfcLineObject {\n constructor(DependingProperty, DependantProperty, Name, Description, Expression) {\n super();\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Name = Name;\n this.Description = Description;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC2X32.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertyEnumeration extends IfcLineObject {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC2X32.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.type = 2044713172;\n }\n }\n IFC2X32.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.type = 2093928680;\n }\n }\n IFC2X32.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.type = 931644368;\n }\n }\n IFC2X32.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.type = 3252649465;\n }\n }\n IFC2X32.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.type = 2405470396;\n }\n }\n IFC2X32.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.type = 825690147;\n }\n }\n IFC2X32.IfcQuantityWeight = IfcQuantityWeight;\n class IfcReferencesValueDocument extends IfcLineObject {\n constructor(ReferencedDocument, ReferencingValues, Name, Description) {\n super();\n this.ReferencedDocument = ReferencedDocument;\n this.ReferencingValues = ReferencingValues;\n this.Name = Name;\n this.Description = Description;\n this.type = 2692823254;\n }\n }\n IFC2X32.IfcReferencesValueDocument = IfcReferencesValueDocument;\n class IfcReinforcementBarProperties extends IfcLineObject {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC2X32.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelaxation extends IfcLineObject {\n constructor(RelaxationValue, InitialStress) {\n super();\n this.RelaxationValue = RelaxationValue;\n this.InitialStress = InitialStress;\n this.type = 1222501353;\n }\n }\n IFC2X32.IfcRelaxation = IfcRelaxation;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC2X32.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC2X32.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC2X32.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC2X32.IfcRepresentationMap = IfcRepresentationMap;\n class IfcRibPlateProfileProperties extends IfcProfileProperties {\n constructor(ProfileName, ProfileDefinition, Thickness, RibHeight, RibWidth, RibSpacing, Direction) {\n super(ProfileName, ProfileDefinition);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.Thickness = Thickness;\n this.RibHeight = RibHeight;\n this.RibWidth = RibWidth;\n this.RibSpacing = RibSpacing;\n this.Direction = Direction;\n this.type = 3679540991;\n }\n }\n IFC2X32.IfcRibPlateProfileProperties = IfcRibPlateProfileProperties;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC2X32.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(UnitType, Prefix, Name) {\n super(new Handle(0), UnitType);\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC2X32.IfcSIUnit = IfcSIUnit;\n class IfcSectionProperties extends IfcLineObject {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC2X32.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcLineObject {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC2X32.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC2X32.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC2X32.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC2X32.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Description) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.type = 3692461612;\n }\n }\n IFC2X32.IfcSimpleProperty = IfcSimpleProperty;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC2X32.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC2X32.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadStatic extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC2X32.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaT_Constant, DeltaT_Y, DeltaT_Z) {\n super(Name);\n this.Name = Name;\n this.DeltaT_Constant = DeltaT_Constant;\n this.DeltaT_Y = DeltaT_Y;\n this.DeltaT_Z = DeltaT_Z;\n this.type = 3408363356;\n }\n }\n IFC2X32.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC2X32.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC2X32.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC2X32.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC2X32.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcLineObject {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC2X32.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcLineObject {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC2X32.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcLineObject {\n constructor(SurfaceColour) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.type = 846575682;\n }\n }\n IFC2X32.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcLineObject {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC2X32.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcLineObject {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.type = 626085974;\n }\n }\n IFC2X32.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcSymbolStyle extends IfcPresentationStyle {\n constructor(Name, StyleOfSymbol) {\n super(Name);\n this.Name = Name;\n this.StyleOfSymbol = StyleOfSymbol;\n this.type = 1290481447;\n }\n }\n IFC2X32.IfcSymbolStyle = IfcSymbolStyle;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.type = 985171141;\n }\n }\n IFC2X32.IfcTable = IfcTable;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC2X32.IfcTableRow = IfcTableRow;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.type = 912023232;\n }\n }\n IFC2X32.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.type = 1447204868;\n }\n }\n IFC2X32.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC2X32.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTextStyleForDefinedFont extends IfcLineObject {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC2X32.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcLineObject {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC2X32.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextStyleWithBoxCharacteristics extends IfcLineObject {\n constructor(BoxHeight, BoxWidth, BoxSlantAngle, BoxRotateAngle, CharacterSpacing) {\n super();\n this.BoxHeight = BoxHeight;\n this.BoxWidth = BoxWidth;\n this.BoxSlantAngle = BoxSlantAngle;\n this.BoxRotateAngle = BoxRotateAngle;\n this.CharacterSpacing = CharacterSpacing;\n this.type = 1484833681;\n }\n }\n IFC2X32.IfcTextStyleWithBoxCharacteristics = IfcTextStyleWithBoxCharacteristics;\n class IfcTextureCoordinate extends IfcLineObject {\n constructor() {\n super();\n this.type = 280115917;\n }\n }\n IFC2X32.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Mode, Parameter) {\n super();\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC2X32.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(TextureMaps) {\n super();\n this.TextureMaps = TextureMaps;\n this.type = 2552916305;\n }\n }\n IFC2X32.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcLineObject {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC2X32.IfcTextureVertex = IfcTextureVertex;\n class IfcThermalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, SpecificHeatCapacity, BoilingPoint, FreezingPoint, ThermalConductivity) {\n super(Material);\n this.Material = Material;\n this.SpecificHeatCapacity = SpecificHeatCapacity;\n this.BoilingPoint = BoilingPoint;\n this.FreezingPoint = FreezingPoint;\n this.ThermalConductivity = ThermalConductivity;\n this.type = 3317419933;\n }\n }\n IFC2X32.IfcThermalMaterialProperties = IfcThermalMaterialProperties;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC2X32.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesReferenceRelationship extends IfcLineObject {\n constructor(ReferencedTimeSeries, TimeSeriesReferences) {\n super();\n this.ReferencedTimeSeries = ReferencedTimeSeries;\n this.TimeSeriesReferences = TimeSeriesReferences;\n this.type = 1718945513;\n }\n }\n IFC2X32.IfcTimeSeriesReferenceRelationship = IfcTimeSeriesReferenceRelationship;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC2X32.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC2X32.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC2X32.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC2X32.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC2X32.IfcVertex = IfcVertex;\n class IfcVertexBasedTextureMap extends IfcLineObject {\n constructor(TextureVertices, TexturePoints) {\n super();\n this.TextureVertices = TextureVertices;\n this.TexturePoints = TexturePoints;\n this.type = 3304826586;\n }\n }\n IFC2X32.IfcVertexBasedTextureMap = IfcVertexBasedTextureMap;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC2X32.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC2X32.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWaterProperties extends IfcMaterialProperties {\n constructor(Material, IsPotable, Hardness, AlkalinityConcentration, AcidityConcentration, ImpuritiesContent, PHLevel, DissolvedSolidsContent) {\n super(Material);\n this.Material = Material;\n this.IsPotable = IsPotable;\n this.Hardness = Hardness;\n this.AlkalinityConcentration = AlkalinityConcentration;\n this.AcidityConcentration = AcidityConcentration;\n this.ImpuritiesContent = ImpuritiesContent;\n this.PHLevel = PHLevel;\n this.DissolvedSolidsContent = DissolvedSolidsContent;\n this.type = 1065908215;\n }\n }\n IFC2X32.IfcWaterProperties = IfcWaterProperties;\n class IfcAnnotationOccurrence extends IfcStyledItem {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 2442683028;\n }\n }\n IFC2X32.IfcAnnotationOccurrence = IfcAnnotationOccurrence;\n class IfcAnnotationSurfaceOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 962685235;\n }\n }\n IFC2X32.IfcAnnotationSurfaceOccurrence = IfcAnnotationSurfaceOccurrence;\n class IfcAnnotationSymbolOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3612888222;\n }\n }\n IFC2X32.IfcAnnotationSymbolOccurrence = IfcAnnotationSymbolOccurrence;\n class IfcAnnotationTextOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 2297822566;\n }\n }\n IFC2X32.IfcAnnotationTextOccurrence = IfcAnnotationTextOccurrence;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC2X32.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC2X32.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC2X32.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC2X32.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC2X32.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name, ReferencedSource) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.type = 647927063;\n }\n }\n IFC2X32.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC2X32.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Description, UsageName, HasProperties) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC2X32.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC2X32.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC2X32.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC2X32.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC2X32.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC2X32.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC2X32.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.type = 3800577675;\n }\n }\n IFC2X32.IfcCurveStyle = IfcCurveStyle;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC2X32.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDimensionCalloutRelationship extends IfcDraughtingCalloutRelationship {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 2273265877;\n }\n }\n IFC2X32.IfcDimensionCalloutRelationship = IfcDimensionCalloutRelationship;\n class IfcDimensionPair extends IfcDraughtingCalloutRelationship {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 1694125774;\n }\n }\n IFC2X32.IfcDimensionPair = IfcDimensionPair;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3732053477;\n }\n }\n IFC2X32.IfcDocumentReference = IfcDocumentReference;\n class IfcDraughtingPreDefinedTextFont extends IfcPreDefinedTextFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4170525392;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedTextFont = IfcDraughtingPreDefinedTextFont;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC2X32.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC2X32.IfcEdgeCurve = IfcEdgeCurve;\n class IfcExtendedMaterialProperties extends IfcMaterialProperties {\n constructor(Material, ExtendedProperties, Description, Name) {\n super(Material);\n this.Material = Material;\n this.ExtendedProperties = ExtendedProperties;\n this.Description = Description;\n this.Name = Name;\n this.type = 1860660968;\n }\n }\n IFC2X32.IfcExtendedMaterialProperties = IfcExtendedMaterialProperties;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC2X32.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC2X32.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC2X32.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC2X32.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC2X32.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.type = 738692330;\n }\n }\n IFC2X32.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcFuelProperties extends IfcMaterialProperties {\n constructor(Material, CombustionTemperature, CarbonContent, LowerHeatingValue, HigherHeatingValue) {\n super(Material);\n this.Material = Material;\n this.CombustionTemperature = CombustionTemperature;\n this.CarbonContent = CarbonContent;\n this.LowerHeatingValue = LowerHeatingValue;\n this.HigherHeatingValue = HigherHeatingValue;\n this.type = 3857492461;\n }\n }\n IFC2X32.IfcFuelProperties = IfcFuelProperties;\n class IfcGeneralMaterialProperties extends IfcMaterialProperties {\n constructor(Material, MolecularWeight, Porosity, MassDensity) {\n super(Material);\n this.Material = Material;\n this.MolecularWeight = MolecularWeight;\n this.Porosity = Porosity;\n this.MassDensity = MassDensity;\n this.type = 803998398;\n }\n }\n IFC2X32.IfcGeneralMaterialProperties = IfcGeneralMaterialProperties;\n class IfcGeneralProfileProperties extends IfcProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea) {\n super(ProfileName, ProfileDefinition);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.type = 1446786286;\n }\n }\n IFC2X32.IfcGeneralProfileProperties = IfcGeneralProfileProperties;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC2X32.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC2X32.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, new Handle(0), null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC2X32.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC2X32.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementLocation, PlacementRefDirection) {\n super();\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC2X32.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC2X32.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcHygroscopicMaterialProperties extends IfcMaterialProperties {\n constructor(Material, UpperVaporResistanceFactor, LowerVaporResistanceFactor, IsothermalMoistureCapacity, VaporPermeability, MoistureDiffusivity) {\n super(Material);\n this.Material = Material;\n this.UpperVaporResistanceFactor = UpperVaporResistanceFactor;\n this.LowerVaporResistanceFactor = LowerVaporResistanceFactor;\n this.IsothermalMoistureCapacity = IsothermalMoistureCapacity;\n this.VaporPermeability = VaporPermeability;\n this.MoistureDiffusivity = MoistureDiffusivity;\n this.type = 2445078500;\n }\n }\n IFC2X32.IfcHygroscopicMaterialProperties = IfcHygroscopicMaterialProperties;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, UrlReference) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.UrlReference = UrlReference;\n this.type = 3905492369;\n }\n }\n IFC2X32.IfcImageTexture = IfcImageTexture;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC2X32.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC2X32.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC2X32.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC2X32.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC2X32.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC2X32.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC2X32.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC2X32.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC2X32.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC2X32.IfcMappedItem = IfcMappedItem;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC2X32.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMechanicalConcreteMaterialProperties extends IfcMechanicalMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient, CompressiveStrength, MaxAggregateSize, AdmixturesDescription, Workability, ProtectivePoreRatio, WaterImpermeability) {\n super(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.CompressiveStrength = CompressiveStrength;\n this.MaxAggregateSize = MaxAggregateSize;\n this.AdmixturesDescription = AdmixturesDescription;\n this.Workability = Workability;\n this.ProtectivePoreRatio = ProtectivePoreRatio;\n this.WaterImpermeability = WaterImpermeability;\n this.type = 1430189142;\n }\n }\n IFC2X32.IfcMechanicalConcreteMaterialProperties = IfcMechanicalConcreteMaterialProperties;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC2X32.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOneDirectionRepeatFactor extends IfcGeometricRepresentationItem {\n constructor(RepeatFactor) {\n super();\n this.RepeatFactor = RepeatFactor;\n this.type = 2833995503;\n }\n }\n IFC2X32.IfcOneDirectionRepeatFactor = IfcOneDirectionRepeatFactor;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC2X32.IfcOpenShell = IfcOpenShell;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeElement, Orientation) {\n super(new Handle(0), new Handle(0));\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC2X32.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC2X32.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC2X32.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC2X32.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC2X32.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC2X32.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC2X32.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC2X32.IfcPoint = IfcPoint;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC2X32.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC2X32.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC2X32.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC2X32.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC2X32.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC2X32.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedDimensionSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 433424934;\n }\n }\n IFC2X32.IfcPreDefinedDimensionSymbol = IfcPreDefinedDimensionSymbol;\n class IfcPreDefinedPointMarkerSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 179317114;\n }\n }\n IFC2X32.IfcPreDefinedPointMarkerSymbol = IfcPreDefinedPointMarkerSymbol;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC2X32.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Description, UpperBoundValue, LowerBoundValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.type = 871118103;\n }\n }\n IFC2X32.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC2X32.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Description, EnumerationValues, EnumerationReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC2X32.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Description, ListValues, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC2X32.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Description, UsageName, PropertyReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC2X32.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC2X32.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Description, NominalValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC2X32.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Description, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.type = 110355661;\n }\n }\n IFC2X32.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC2X32.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC2X32.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementDefinitionProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC2X32.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC2X32.IfcRelationship = IfcRelationship;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC2X32.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC2X32.IfcSectionedSpine = IfcSectionedSpine;\n class IfcServiceLifeFactor extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PredefinedType, UpperValue, MostUsedValue, LowerValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PredefinedType = PredefinedType;\n this.UpperValue = UpperValue;\n this.MostUsedValue = MostUsedValue;\n this.LowerValue = LowerValue;\n this.type = 2411513650;\n }\n }\n IFC2X32.IfcServiceLifeFactor = IfcServiceLifeFactor;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC2X32.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC2X32.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC2X32.IfcSolidModel = IfcSolidModel;\n class IfcSoundProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, IsAttenuating, SoundScale, SoundValues) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.IsAttenuating = IsAttenuating;\n this.SoundScale = SoundScale;\n this.SoundValues = SoundValues;\n this.type = 2485662743;\n }\n }\n IFC2X32.IfcSoundProperties = IfcSoundProperties;\n class IfcSoundValue extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, SoundLevelTimeSeries, Frequency, SoundLevelSingleValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.SoundLevelTimeSeries = SoundLevelTimeSeries;\n this.Frequency = Frequency;\n this.SoundLevelSingleValue = SoundLevelSingleValue;\n this.type = 1202362311;\n }\n }\n IFC2X32.IfcSoundValue = IfcSoundValue;\n class IfcSpaceThermalLoadProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableValueRatio, ThermalLoadSource, PropertySource, SourceDescription, MaximumValue, MinimumValue, ThermalLoadTimeSeriesValues, UserDefinedThermalLoadSource, UserDefinedPropertySource, ThermalLoadType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableValueRatio = ApplicableValueRatio;\n this.ThermalLoadSource = ThermalLoadSource;\n this.PropertySource = PropertySource;\n this.SourceDescription = SourceDescription;\n this.MaximumValue = MaximumValue;\n this.MinimumValue = MinimumValue;\n this.ThermalLoadTimeSeriesValues = ThermalLoadTimeSeriesValues;\n this.UserDefinedThermalLoadSource = UserDefinedThermalLoadSource;\n this.UserDefinedPropertySource = UserDefinedPropertySource;\n this.ThermalLoadType = ThermalLoadType;\n this.type = 390701378;\n }\n }\n IFC2X32.IfcSpaceThermalLoadProperties = IfcSpaceThermalLoadProperties;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC2X32.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC2X32.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC2X32.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC2X32.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC2X32.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC2X32.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcStructuralProfileProperties extends IfcGeneralProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY) {\n super(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.TorsionalConstantX = TorsionalConstantX;\n this.MomentOfInertiaYZ = MomentOfInertiaYZ;\n this.MomentOfInertiaY = MomentOfInertiaY;\n this.MomentOfInertiaZ = MomentOfInertiaZ;\n this.WarpingConstant = WarpingConstant;\n this.ShearCentreZ = ShearCentreZ;\n this.ShearCentreY = ShearCentreY;\n this.ShearDeformationAreaZ = ShearDeformationAreaZ;\n this.ShearDeformationAreaY = ShearDeformationAreaY;\n this.MaximumSectionModulusY = MaximumSectionModulusY;\n this.MinimumSectionModulusY = MinimumSectionModulusY;\n this.MaximumSectionModulusZ = MaximumSectionModulusZ;\n this.MinimumSectionModulusZ = MinimumSectionModulusZ;\n this.TorsionalSectionModulus = TorsionalSectionModulus;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3843319758;\n }\n }\n IFC2X32.IfcStructuralProfileProperties = IfcStructuralProfileProperties;\n class IfcStructuralSteelProfileProperties extends IfcStructuralProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY, ShearAreaZ, ShearAreaY, PlasticShapeFactorY, PlasticShapeFactorZ) {\n super(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.TorsionalConstantX = TorsionalConstantX;\n this.MomentOfInertiaYZ = MomentOfInertiaYZ;\n this.MomentOfInertiaY = MomentOfInertiaY;\n this.MomentOfInertiaZ = MomentOfInertiaZ;\n this.WarpingConstant = WarpingConstant;\n this.ShearCentreZ = ShearCentreZ;\n this.ShearCentreY = ShearCentreY;\n this.ShearDeformationAreaZ = ShearDeformationAreaZ;\n this.ShearDeformationAreaY = ShearDeformationAreaY;\n this.MaximumSectionModulusY = MaximumSectionModulusY;\n this.MinimumSectionModulusY = MinimumSectionModulusY;\n this.MaximumSectionModulusZ = MaximumSectionModulusZ;\n this.MinimumSectionModulusZ = MinimumSectionModulusZ;\n this.TorsionalSectionModulus = TorsionalSectionModulus;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.ShearAreaZ = ShearAreaZ;\n this.ShearAreaY = ShearAreaY;\n this.PlasticShapeFactorY = PlasticShapeFactorY;\n this.PlasticShapeFactorZ = PlasticShapeFactorZ;\n this.type = 3653947884;\n }\n }\n IFC2X32.IfcStructuralSteelProfileProperties = IfcStructuralSteelProfileProperties;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC2X32.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC2X32.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC2X32.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC2X32.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC2X32.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC2X32.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3071757647;\n }\n }\n IFC2X32.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTerminatorSymbol extends IfcAnnotationSymbolOccurrence {\n constructor(Item, Styles, Name, AnnotatedCurve) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.AnnotatedCurve = AnnotatedCurve;\n this.type = 3028897424;\n }\n }\n IFC2X32.IfcTerminatorSymbol = IfcTerminatorSymbol;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC2X32.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC2X32.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC2X32.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTwoDirectionRepeatFactor extends IfcOneDirectionRepeatFactor {\n constructor(RepeatFactor, SecondRepeatFactor) {\n super(RepeatFactor);\n this.RepeatFactor = RepeatFactor;\n this.SecondRepeatFactor = SecondRepeatFactor;\n this.type = 1345879162;\n }\n }\n IFC2X32.IfcTwoDirectionRepeatFactor = IfcTwoDirectionRepeatFactor;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC2X32.IfcTypeObject = IfcTypeObject;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC2X32.IfcTypeProduct = IfcTypeProduct;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope, CentreOfGravityInX) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.type = 427810014;\n }\n }\n IFC2X32.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC2X32.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC2X32.IfcVertexLoop = IfcVertexLoop;\n class IfcWindowLiningProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 336235671;\n }\n }\n IFC2X32.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC2X32.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcWindowStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ConstructionType, OperationType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ConstructionType = ConstructionType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 1299126871;\n }\n }\n IFC2X32.IfcWindowStyle = IfcWindowStyle;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC2X32.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAnnotationCurveOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3288037868;\n }\n }\n IFC2X32.IfcAnnotationCurveOccurrence = IfcAnnotationCurveOccurrence;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC2X32.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAnnotationFillAreaOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name, FillStyleTarget, GlobalOrLocal) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.FillStyleTarget = FillStyleTarget;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 2265737646;\n }\n }\n IFC2X32.IfcAnnotationFillAreaOccurrence = IfcAnnotationFillAreaOccurrence;\n class IfcAnnotationSurface extends IfcGeometricRepresentationItem {\n constructor(Item, TextureCoordinates) {\n super();\n this.Item = Item;\n this.TextureCoordinates = TextureCoordinates;\n this.type = 1302238472;\n }\n }\n IFC2X32.IfcAnnotationSurface = IfcAnnotationSurface;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC2X32.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC2X32.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC2X32.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC2X32.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC2X32.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC2X32.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC2X32.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius, CentreOfGravityInX) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.type = 2898889636;\n }\n }\n IFC2X32.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC2X32.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC2X32.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC2X32.IfcClosedShell = IfcClosedShell;\n class IfcCompositeCurveSegment extends IfcGeometricRepresentationItem {\n constructor(Transition, SameSense, ParentCurve) {\n super();\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC2X32.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcCraneRailAShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallHeight, BaseWidth2, Radius, HeadWidth, HeadDepth2, HeadDepth3, WebThickness, BaseWidth4, BaseDepth1, BaseDepth2, BaseDepth3, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallHeight = OverallHeight;\n this.BaseWidth2 = BaseWidth2;\n this.Radius = Radius;\n this.HeadWidth = HeadWidth;\n this.HeadDepth2 = HeadDepth2;\n this.HeadDepth3 = HeadDepth3;\n this.WebThickness = WebThickness;\n this.BaseWidth4 = BaseWidth4;\n this.BaseDepth1 = BaseDepth1;\n this.BaseDepth2 = BaseDepth2;\n this.BaseDepth3 = BaseDepth3;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 4133800736;\n }\n }\n IFC2X32.IfcCraneRailAShapeProfileDef = IfcCraneRailAShapeProfileDef;\n class IfcCraneRailFShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallHeight, HeadWidth, Radius, HeadDepth2, HeadDepth3, WebThickness, BaseDepth1, BaseDepth2, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallHeight = OverallHeight;\n this.HeadWidth = HeadWidth;\n this.Radius = Radius;\n this.HeadDepth2 = HeadDepth2;\n this.HeadDepth3 = HeadDepth3;\n this.WebThickness = WebThickness;\n this.BaseDepth1 = BaseDepth1;\n this.BaseDepth2 = BaseDepth2;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 194851669;\n }\n }\n IFC2X32.IfcCraneRailFShapeProfileDef = IfcCraneRailFShapeProfileDef;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC2X32.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC2X32.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC2X32.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC2X32.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcDefinedSymbol extends IfcGeometricRepresentationItem {\n constructor(Definition, Target) {\n super();\n this.Definition = Definition;\n this.Target = Target;\n this.type = 693772133;\n }\n }\n IFC2X32.IfcDefinedSymbol = IfcDefinedSymbol;\n class IfcDimensionCurve extends IfcAnnotationCurveOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 606661476;\n }\n }\n IFC2X32.IfcDimensionCurve = IfcDimensionCurve;\n class IfcDimensionCurveTerminator extends IfcTerminatorSymbol {\n constructor(Item, Styles, Name, AnnotatedCurve, Role) {\n super(Item, Styles, Name, AnnotatedCurve);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.AnnotatedCurve = AnnotatedCurve;\n this.Role = Role;\n this.type = 4054601972;\n }\n }\n IFC2X32.IfcDimensionCurveTerminator = IfcDimensionCurveTerminator;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC2X32.IfcDirection = IfcDirection;\n class IfcDoorLiningProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 2963535650;\n }\n }\n IFC2X32.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC2X32.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, OperationType, ConstructionType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.ConstructionType = ConstructionType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 526551008;\n }\n }\n IFC2X32.IfcDoorStyle = IfcDoorStyle;\n class IfcDraughtingCallout extends IfcGeometricRepresentationItem {\n constructor(Contents) {\n super();\n this.Contents = Contents;\n this.type = 3073041342;\n }\n }\n IFC2X32.IfcDraughtingCallout = IfcDraughtingCallout;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC2X32.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC2X32.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC2X32.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC2X32.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC2X32.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEnergyProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.EnergySequence = EnergySequence;\n this.UserDefinedEnergySequence = UserDefinedEnergySequence;\n this.type = 80994333;\n }\n }\n IFC2X32.IfcEnergyProperties = IfcEnergyProperties;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC2X32.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC2X32.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC2X32.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTileSymbolWithStyle extends IfcGeometricRepresentationItem {\n constructor(Symbol2) {\n super();\n this.Symbol = Symbol2;\n this.type = 4203026998;\n }\n }\n IFC2X32.IfcFillAreaStyleTileSymbolWithStyle = IfcFillAreaStyleTileSymbolWithStyle;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC2X32.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFluidFlowProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PropertySource, FlowConditionTimeSeries, VelocityTimeSeries, FlowrateTimeSeries, Fluid, PressureTimeSeries, UserDefinedPropertySource, TemperatureSingleValue, WetBulbTemperatureSingleValue, WetBulbTemperatureTimeSeries, TemperatureTimeSeries, FlowrateSingleValue, FlowConditionSingleValue, VelocitySingleValue, PressureSingleValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PropertySource = PropertySource;\n this.FlowConditionTimeSeries = FlowConditionTimeSeries;\n this.VelocityTimeSeries = VelocityTimeSeries;\n this.FlowrateTimeSeries = FlowrateTimeSeries;\n this.Fluid = Fluid;\n this.PressureTimeSeries = PressureTimeSeries;\n this.UserDefinedPropertySource = UserDefinedPropertySource;\n this.TemperatureSingleValue = TemperatureSingleValue;\n this.WetBulbTemperatureSingleValue = WetBulbTemperatureSingleValue;\n this.WetBulbTemperatureTimeSeries = WetBulbTemperatureTimeSeries;\n this.TemperatureTimeSeries = TemperatureTimeSeries;\n this.FlowrateSingleValue = FlowrateSingleValue;\n this.FlowConditionSingleValue = FlowConditionSingleValue;\n this.VelocitySingleValue = VelocitySingleValue;\n this.PressureSingleValue = PressureSingleValue;\n this.type = 3455213021;\n }\n }\n IFC2X32.IfcFluidFlowProperties = IfcFluidFlowProperties;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC2X32.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.type = 1268542332;\n }\n }\n IFC2X32.IfcFurnitureType = IfcFurnitureType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC2X32.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.type = 1484403080;\n }\n }\n IFC2X32.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope, CentreOfGravityInX, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 572779678;\n }\n }\n IFC2X32.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC2X32.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC2X32.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC2X32.IfcObject = IfcObject;\n class IfcOffsetCurve2D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC2X32.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC2X32.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcPermeableCoveringProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC2X32.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC2X32.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC2X32.IfcPlane = IfcPlane;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2945172077;\n }\n }\n IFC2X32.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC2X32.IfcProduct = IfcProduct;\n class IfcProject extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC2X32.IfcProject = IfcProject;\n class IfcProjectionCurve extends IfcAnnotationCurveOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 4194566429;\n }\n }\n IFC2X32.IfcProjectionCurve = IfcProjectionCurve;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC2X32.IfcPropertySet = IfcPropertySet;\n class IfcProxy extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, ProxyType, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.ProxyType = ProxyType;\n this.Tag = Tag;\n this.type = 3219374653;\n }\n }\n IFC2X32.IfcProxy = IfcProxy;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC2X32.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC2X32.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC2X32.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC2X32.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC2X32.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC2X32.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC2X32.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC2X32.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC2X32.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToProjectOrder extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 3372526763;\n }\n }\n IFC2X32.IfcRelAssignsToProjectOrder = IfcRelAssignsToProjectOrder;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC2X32.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC2X32.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesAppliedValue extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingAppliedValue) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingAppliedValue = RelatingAppliedValue;\n this.type = 1327628568;\n }\n }\n IFC2X32.IfcRelAssociatesAppliedValue = IfcRelAssociatesAppliedValue;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC2X32.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC2X32.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC2X32.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC2X32.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC2X32.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC2X32.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelAssociatesProfileProperties extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingProfileProperties, ProfileSectionLocation, ProfileOrientation) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingProfileProperties = RelatingProfileProperties;\n this.ProfileSectionLocation = ProfileSectionLocation;\n this.ProfileOrientation = ProfileOrientation;\n this.type = 2851387026;\n }\n }\n IFC2X32.IfcRelAssociatesProfileProperties = IfcRelAssociatesProfileProperties;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC2X32.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC2X32.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC2X32.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC2X32.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC2X32.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC2X32.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralMember) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralMember = RelatedStructuralMember;\n this.type = 3912681535;\n }\n }\n IFC2X32.IfcRelConnectsStructuralElement = IfcRelConnectsStructuralElement;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC2X32.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC2X32.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC2X32.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC2X32.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC2X32.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedSpace = RelatedSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC2X32.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 2551354335;\n }\n }\n IFC2X32.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 693640335;\n }\n }\n IFC2X32.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC2X32.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC2X32.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC2X32.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC2X32.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInteractionRequirements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, DailyInteraction, ImportanceRating, LocationOfInteraction, RelatedSpaceProgram, RelatingSpaceProgram) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DailyInteraction = DailyInteraction;\n this.ImportanceRating = ImportanceRating;\n this.LocationOfInteraction = LocationOfInteraction;\n this.RelatedSpaceProgram = RelatedSpaceProgram;\n this.RelatingSpaceProgram = RelatingSpaceProgram;\n this.type = 4189434867;\n }\n }\n IFC2X32.IfcRelInteractionRequirements = IfcRelInteractionRequirements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC2X32.IfcRelNests = IfcRelNests;\n class IfcRelOccupiesSpaces extends IfcRelAssignsToActor {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 2051452291;\n }\n }\n IFC2X32.IfcRelOccupiesSpaces = IfcRelOccupiesSpaces;\n class IfcRelOverridesProperties extends IfcRelDefinesByProperties {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition, OverridingProperties) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.OverridingProperties = OverridingProperties;\n this.type = 202636808;\n }\n }\n IFC2X32.IfcRelOverridesProperties = IfcRelOverridesProperties;\n class IfcRelProjectsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC2X32.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC2X32.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSchedulesCostItems extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 1058617721;\n }\n }\n IFC2X32.IfcRelSchedulesCostItems = IfcRelSchedulesCostItems;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.type = 4122056220;\n }\n }\n IFC2X32.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC2X32.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC2X32.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelVoidsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC2X32.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2914609552;\n }\n }\n IFC2X32.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC2X32.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC2X32.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC2X32.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSpatialStructureElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC2X32.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC2X32.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC2X32.IfcSphere = IfcSphere;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC2X32.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC2X32.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC2X32.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC2X32.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC2X32.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness, SubsequentThickness, VaryingThicknessLocation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.SubsequentThickness = SubsequentThickness;\n this.VaryingThicknessLocation = VaryingThicknessLocation;\n this.type = 2218152070;\n }\n }\n IFC2X32.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuredDimensionCallout extends IfcDraughtingCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 4070609034;\n }\n }\n IFC2X32.IfcStructuredDimensionCallout = IfcStructuredDimensionCallout;\n class IfcSurfaceCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC2X32.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC2X32.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC2X32.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1580310250;\n }\n }\n IFC2X32.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.type = 3473067441;\n }\n }\n IFC2X32.IfcTask = IfcTask;\n class IfcTransportElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC2X32.IfcTransportElementType = IfcTransportElementType;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC2X32.IfcActor = IfcActor;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1674181508;\n }\n }\n IFC2X32.IfcAnnotation = IfcAnnotation;\n class IfcAsymmetricIShapeProfileDef extends IfcIShapeProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3207858831;\n }\n }\n IFC2X32.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC2X32.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC2X32.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC2X32.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuilding extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC2X32.IfcBuilding = IfcBuilding;\n class IfcBuildingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1950629157;\n }\n }\n IFC2X32.IfcBuildingElementType = IfcBuildingElementType;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC2X32.IfcBuildingStorey = IfcBuildingStorey;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC2X32.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcColumnType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC2X32.IfcColumnType = IfcColumnType;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC2X32.IfcCompositeCurve = IfcCompositeCurve;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC2X32.IfcConic = IfcConic;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC2X32.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3293443760;\n }\n }\n IFC2X32.IfcControl = IfcControl;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3895139033;\n }\n }\n IFC2X32.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, SubmittedBy, PreparedBy, SubmittedOn, Status, TargetUsers, UpdateDate, ID, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.SubmittedBy = SubmittedBy;\n this.PreparedBy = PreparedBy;\n this.SubmittedOn = SubmittedOn;\n this.Status = Status;\n this.TargetUsers = TargetUsers;\n this.UpdateDate = UpdateDate;\n this.ID = ID;\n this.PredefinedType = PredefinedType;\n this.type = 1419761937;\n }\n }\n IFC2X32.IfcCostSchedule = IfcCostSchedule;\n class IfcCoveringType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC2X32.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 3295246426;\n }\n }\n IFC2X32.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC2X32.IfcCurtainWallType = IfcCurtainWallType;\n class IfcDimensionCurveDirectedCallout extends IfcDraughtingCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 681481545;\n }\n }\n IFC2X32.IfcDimensionCurveDirectedCallout = IfcDimensionCurveDirectedCallout;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC2X32.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC2X32.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcElectricalBaseProperties extends IfcEnergyProperties {\n constructor(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence, ElectricCurrentType, InputVoltage, InputFrequency, FullLoadCurrent, MinimumCircuitCurrent, MaximumPowerInput, RatedPowerInput, InputPhase) {\n super(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.EnergySequence = EnergySequence;\n this.UserDefinedEnergySequence = UserDefinedEnergySequence;\n this.ElectricCurrentType = ElectricCurrentType;\n this.InputVoltage = InputVoltage;\n this.InputFrequency = InputFrequency;\n this.FullLoadCurrent = FullLoadCurrent;\n this.MinimumCircuitCurrent = MinimumCircuitCurrent;\n this.MaximumPowerInput = MaximumPowerInput;\n this.RatedPowerInput = RatedPowerInput;\n this.InputPhase = InputPhase;\n this.type = 360485395;\n }\n }\n IFC2X32.IfcElectricalBaseProperties = IfcElectricalBaseProperties;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC2X32.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC2X32.IfcElementAssembly = IfcElementAssembly;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC2X32.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC2X32.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC2X32.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC2X32.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEquipmentElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1962604670;\n }\n }\n IFC2X32.IfcEquipmentElement = IfcEquipmentElement;\n class IfcEquipmentStandard extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3272907226;\n }\n }\n IFC2X32.IfcEquipmentStandard = IfcEquipmentStandard;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC2X32.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC2X32.IfcEvaporatorType = IfcEvaporatorType;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC2X32.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcManifoldSolidBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC2X32.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 647756555;\n }\n }\n IFC2X32.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2489546625;\n }\n }\n IFC2X32.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC2X32.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC2X32.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC2X32.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC2X32.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC2X32.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC2X32.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC2X32.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC2X32.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC2X32.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC2X32.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC2X32.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC2X32.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurnitureStandard extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 814719939;\n }\n }\n IFC2X32.IfcFurnitureStandard = IfcFurnitureStandard;\n class IfcGasTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 200128114;\n }\n }\n IFC2X32.IfcGasTerminalType = IfcGasTerminalType;\n class IfcGrid extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.type = 3009204131;\n }\n }\n IFC2X32.IfcGrid = IfcGrid;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC2X32.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC2X32.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC2X32.IfcHumidifierType = IfcHumidifierType;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, InventoryType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.InventoryType = InventoryType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC2X32.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC2X32.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, SkillSet) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.SkillSet = SkillSet;\n this.type = 3827777499;\n }\n }\n IFC2X32.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC2X32.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC2X32.IfcLightFixtureType = IfcLightFixtureType;\n class IfcLinearDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 2506943328;\n }\n }\n IFC2X32.IfcLinearDimension = IfcLinearDimension;\n class IfcMechanicalFastener extends IfcFastener {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 377706215;\n }\n }\n IFC2X32.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcFastenerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2108223431;\n }\n }\n IFC2X32.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMemberType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC2X32.IfcMemberType = IfcMemberType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC2X32.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcMove extends IfcTask {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority, MoveFrom, MoveTo, PunchList) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.MoveFrom = MoveFrom;\n this.MoveTo = MoveTo;\n this.PunchList = PunchList;\n this.type = 1916936684;\n }\n }\n IFC2X32.IfcMove = IfcMove;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC2X32.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3588315303;\n }\n }\n IFC2X32.IfcOpeningElement = IfcOpeningElement;\n class IfcOrderAction extends IfcTask {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority, ActionID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.ActionID = ActionID;\n this.type = 3425660407;\n }\n }\n IFC2X32.IfcOrderAction = IfcOrderAction;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC2X32.IfcOutletType = IfcOutletType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LifeCyclePhase) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LifeCyclePhase = LifeCyclePhase;\n this.type = 2382730787;\n }\n }\n IFC2X32.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PermitID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PermitID = PermitID;\n this.type = 3327091369;\n }\n }\n IFC2X32.IfcPermit = IfcPermit;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC2X32.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC2X32.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC2X32.IfcPlateType = IfcPlateType;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC2X32.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC2X32.IfcPort = IfcPort;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ProcedureID, ProcedureType, UserDefinedProcedureType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ProcedureID = ProcedureID;\n this.ProcedureType = ProcedureType;\n this.UserDefinedProcedureType = UserDefinedProcedureType;\n this.type = 2744685151;\n }\n }\n IFC2X32.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ID, PredefinedType, Status) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ID = ID;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.type = 2904328755;\n }\n }\n IFC2X32.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectOrderRecord extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Records, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Records = Records;\n this.PredefinedType = PredefinedType;\n this.type = 3642467123;\n }\n }\n IFC2X32.IfcProjectOrderRecord = IfcProjectOrderRecord;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3651124850;\n }\n }\n IFC2X32.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC2X32.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC2X32.IfcPumpType = IfcPumpType;\n class IfcRadiusDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 3248260540;\n }\n }\n IFC2X32.IfcRadiusDimension = IfcRadiusDimension;\n class IfcRailingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC2X32.IfcRailingType = IfcRailingType;\n class IfcRampFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC2X32.IfcRampFlightType = IfcRampFlightType;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC2X32.IfcRelAggregates = IfcRelAggregates;\n class IfcRelAssignsTasks extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl, TimeForTask) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.TimeForTask = TimeForTask;\n this.type = 2863920197;\n }\n }\n IFC2X32.IfcRelAssignsTasks = IfcRelAssignsTasks;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC2X32.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcScheduleTimeControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ActualStart, EarlyStart, LateStart, ScheduleStart, ActualFinish, EarlyFinish, LateFinish, ScheduleFinish, ScheduleDuration, ActualDuration, RemainingTime, FreeFloat, TotalFloat, IsCritical, StatusTime, StartFloat, FinishFloat, Completion) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ActualStart = ActualStart;\n this.EarlyStart = EarlyStart;\n this.LateStart = LateStart;\n this.ScheduleStart = ScheduleStart;\n this.ActualFinish = ActualFinish;\n this.EarlyFinish = EarlyFinish;\n this.LateFinish = LateFinish;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleDuration = ScheduleDuration;\n this.ActualDuration = ActualDuration;\n this.RemainingTime = RemainingTime;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.StartFloat = StartFloat;\n this.FinishFloat = FinishFloat;\n this.Completion = Completion;\n this.type = 3517283431;\n }\n }\n IFC2X32.IfcScheduleTimeControl = IfcScheduleTimeControl;\n class IfcServiceLife extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ServiceLifeType, ServiceLifeDuration) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ServiceLifeType = ServiceLifeType;\n this.ServiceLifeDuration = ServiceLifeDuration;\n this.type = 4105383287;\n }\n }\n IFC2X32.IfcServiceLife = IfcServiceLife;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC2X32.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC2X32.IfcSlabType = IfcSlabType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, InteriorOrExteriorSpace, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.InteriorOrExteriorSpace = InteriorOrExteriorSpace;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC2X32.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC2X32.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceProgram extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, SpaceProgramIdentifier, MaxRequiredArea, MinRequiredArea, RequestedLocation, StandardRequiredArea) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.SpaceProgramIdentifier = SpaceProgramIdentifier;\n this.MaxRequiredArea = MaxRequiredArea;\n this.MinRequiredArea = MinRequiredArea;\n this.RequestedLocation = RequestedLocation;\n this.StandardRequiredArea = StandardRequiredArea;\n this.type = 652456506;\n }\n }\n IFC2X32.IfcSpaceProgram = IfcSpaceProgram;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3812236995;\n }\n }\n IFC2X32.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC2X32.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC2X32.IfcStairFlightType = IfcStairFlightType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.type = 682877961;\n }\n }\n IFC2X32.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC2X32.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 4243806635;\n }\n }\n IFC2X32.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 214636428;\n }\n }\n IFC2X32.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 2445595289;\n }\n }\n IFC2X32.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralLinearAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.type = 1807405624;\n }\n }\n IFC2X32.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLinearActionVarying extends IfcStructuralLinearAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue, VaryingAppliedLoadLocation, SubsequentAppliedLoads) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.VaryingAppliedLoadLocation = VaryingAppliedLoadLocation;\n this.SubsequentAppliedLoads = SubsequentAppliedLoads;\n this.type = 1721250024;\n }\n }\n IFC2X32.IfcStructuralLinearActionVarying = IfcStructuralLinearActionVarying;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC2X32.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPlanarAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.type = 1621171031;\n }\n }\n IFC2X32.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcStructuralPlanarActionVarying extends IfcStructuralPlanarAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue, VaryingAppliedLoadLocation, SubsequentAppliedLoads) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.VaryingAppliedLoadLocation = VaryingAppliedLoadLocation;\n this.SubsequentAppliedLoads = SubsequentAppliedLoads;\n this.type = 3987759626;\n }\n }\n IFC2X32.IfcStructuralPlanarActionVarying = IfcStructuralPlanarActionVarying;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.type = 2082059205;\n }\n }\n IFC2X32.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 734778138;\n }\n }\n IFC2X32.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC2X32.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC2X32.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC2X32.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, SubContractor, JobDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.SubContractor = SubContractor;\n this.JobDescription = JobDescription;\n this.type = 148013059;\n }\n }\n IFC2X32.IfcSubContractResource = IfcSubContractResource;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC2X32.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC2X32.IfcSystem = IfcSystem;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC2X32.IfcTankType = IfcTankType;\n class IfcTimeSeriesSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ApplicableDates, TimeSeriesScheduleType, TimeSeries) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ApplicableDates = ApplicableDates;\n this.TimeSeriesScheduleType = TimeSeriesScheduleType;\n this.TimeSeries = TimeSeries;\n this.type = 1637806684;\n }\n }\n IFC2X32.IfcTimeSeriesSchedule = IfcTimeSeriesSchedule;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC2X32.IfcTransformerType = IfcTransformerType;\n class IfcTransportElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OperationType, CapacityByWeight, CapacityByNumber) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.CapacityByWeight = CapacityByWeight;\n this.CapacityByNumber = CapacityByNumber;\n this.type = 1620046519;\n }\n }\n IFC2X32.IfcTransportElement = IfcTransportElement;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC2X32.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC2X32.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC2X32.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC2X32.IfcValveType = IfcValveType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2769231204;\n }\n }\n IFC2X32.IfcVirtualElement = IfcVirtualElement;\n class IfcWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC2X32.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC2X32.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 1028945134;\n }\n }\n IFC2X32.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 4218914973;\n }\n }\n IFC2X32.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 3342526732;\n }\n }\n IFC2X32.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 1033361043;\n }\n }\n IFC2X32.IfcZone = IfcZone;\n class Ifc2DCompositeCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1213861670;\n }\n }\n IFC2X32.Ifc2DCompositeCurve = Ifc2DCompositeCurve;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, RequestID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.RequestID = RequestID;\n this.type = 3821786052;\n }\n }\n IFC2X32.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC2X32.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC2X32.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC2X32.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAngularDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 2470393545;\n }\n }\n IFC2X32.IfcAngularDimension = IfcAngularDimension;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, AssetID, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.AssetID = AssetID;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC2X32.IfcAsset = IfcAsset;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC2X32.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBeamType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC2X32.IfcBeamType = IfcBeamType;\n class IfcBezierCurve extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1916977116;\n }\n }\n IFC2X32.IfcBezierCurve = IfcBezierCurve;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC2X32.IfcBoilerType = IfcBoilerType;\n class IfcBuildingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3299480353;\n }\n }\n IFC2X32.IfcBuildingElement = IfcBuildingElement;\n class IfcBuildingElementComponent extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 52481810;\n }\n }\n IFC2X32.IfcBuildingElementComponent = IfcBuildingElementComponent;\n class IfcBuildingElementPart extends IfcBuildingElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2979338954;\n }\n }\n IFC2X32.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementProxy extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.CompositionType = CompositionType;\n this.type = 1095909175;\n }\n }\n IFC2X32.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBuildingElementProxyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC2X32.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC2X32.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC2X32.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC2X32.IfcCableSegmentType = IfcCableSegmentType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC2X32.IfcChillerType = IfcChillerType;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC2X32.IfcCircle = IfcCircle;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC2X32.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 843113511;\n }\n }\n IFC2X32.IfcColumn = IfcColumn;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC2X32.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC2X32.IfcCondenserType = IfcCondenserType;\n class IfcCondition extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2188551683;\n }\n }\n IFC2X32.IfcCondition = IfcCondition;\n class IfcConditionCriterion extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Criterion, CriterionDateTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Criterion = Criterion;\n this.CriterionDateTime = CriterionDateTime;\n this.type = 1163958913;\n }\n }\n IFC2X32.IfcConditionCriterion = IfcConditionCriterion;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 3898045240;\n }\n }\n IFC2X32.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, Suppliers, UsageRatio) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.Suppliers = Suppliers;\n this.UsageRatio = UsageRatio;\n this.type = 1060000209;\n }\n }\n IFC2X32.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 488727124;\n }\n }\n IFC2X32.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC2X32.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC2X32.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCovering extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC2X32.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3495092785;\n }\n }\n IFC2X32.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC2X32.IfcDamperType = IfcDamperType;\n class IfcDiameterDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 4147604152;\n }\n }\n IFC2X32.IfcDiameterDimension = IfcDiameterDimension;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1335981549;\n }\n }\n IFC2X32.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2635815018;\n }\n }\n IFC2X32.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC2X32.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC2X32.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC2X32.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC2X32.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.type = 3041715199;\n }\n }\n IFC2X32.IfcDistributionPort = IfcDistributionPort;\n class IfcDoor extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.type = 395920057;\n }\n }\n IFC2X32.IfcDoor = IfcDoor;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC2X32.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC2X32.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC2X32.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcEdgeFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.type = 855621170;\n }\n }\n IFC2X32.IfcEdgeFeature = IfcEdgeFeature;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC2X32.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC2X32.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC2X32.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1365060375;\n }\n }\n IFC2X32.IfcElectricHeaterType = IfcElectricHeaterType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC2X32.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC2X32.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcElectricalCircuit extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 1634875225;\n }\n }\n IFC2X32.IfcElectricalCircuit = IfcElectricalCircuit;\n class IfcElectricalElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 857184966;\n }\n }\n IFC2X32.IfcElectricalElement = IfcElectricalElement;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC2X32.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC2X32.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC2X32.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC2X32.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC2X32.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC2X32.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC2X32.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC2X32.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC2X32.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC2X32.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC2X32.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC2X32.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC2X32.IfcFooting = IfcFooting;\n class IfcMember extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1073191201;\n }\n }\n IFC2X32.IfcMember = IfcMember;\n class IfcPile extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC2X32.IfcPile = IfcPile;\n class IfcPlate extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3171933400;\n }\n }\n IFC2X32.IfcPlate = IfcPlate;\n class IfcRailing extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC2X32.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 3024970846;\n }\n }\n IFC2X32.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3283111854;\n }\n }\n IFC2X32.IfcRampFlight = IfcRampFlight;\n class IfcRationalBezierCurve extends IfcBezierCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.WeightsData = WeightsData;\n this.type = 3055160366;\n }\n }\n IFC2X32.IfcRationalBezierCurve = IfcRationalBezierCurve;\n class IfcReinforcingElement extends IfcBuildingElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC2X32.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.type = 2320036040;\n }\n }\n IFC2X32.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcRoof extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 2016517767;\n }\n }\n IFC2X32.IfcRoof = IfcRoof;\n class IfcRoundedEdgeFeature extends IfcEdgeFeature {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength, Radius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.Radius = Radius;\n this.type = 1376911519;\n }\n }\n IFC2X32.IfcRoundedEdgeFeature = IfcRoundedEdgeFeature;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC2X32.IfcSensorType = IfcSensorType;\n class IfcSlab extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC2X32.IfcSlab = IfcSlab;\n class IfcStair extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 331165859;\n }\n }\n IFC2X32.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRiser, NumberOfTreads, RiserHeight, TreadLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRiser = NumberOfRiser;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.type = 4252922144;\n }\n }\n IFC2X32.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.type = 2515109513;\n }\n }\n IFC2X32.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC2X32.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 2347447852;\n }\n }\n IFC2X32.IfcTendonAnchor = IfcTendonAnchor;\n class IfcVibrationIsolatorType extends IfcDiscreteAccessoryType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC2X32.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2391406946;\n }\n }\n IFC2X32.IfcWall = IfcWall;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3512223829;\n }\n }\n IFC2X32.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWindow extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.type = 3304561284;\n }\n }\n IFC2X32.IfcWindow = IfcWindow;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC2X32.IfcActuatorType = IfcActuatorType;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC2X32.IfcAlarmType = IfcAlarmType;\n class IfcBeam extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 753842376;\n }\n }\n IFC2X32.IfcBeam = IfcBeam;\n class IfcChamferEdgeFeature extends IfcEdgeFeature {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength, Width, Height) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.Width = Width;\n this.Height = Height;\n this.type = 2454782716;\n }\n }\n IFC2X32.IfcChamferEdgeFeature = IfcChamferEdgeFeature;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC2X32.IfcControllerType = IfcControllerType;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1052013943;\n }\n }\n IFC2X32.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ControlElementId) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ControlElementId = ControlElementId;\n this.type = 1062813311;\n }\n }\n IFC2X32.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcElectricDistributionPoint extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, DistributionPointFunction, UserDefinedFunction) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.DistributionPointFunction = DistributionPointFunction;\n this.UserDefinedFunction = UserDefinedFunction;\n this.type = 3700593921;\n }\n }\n IFC2X32.IfcElectricDistributionPoint = IfcElectricDistributionPoint;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, BarRole, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarRole = BarRole;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC2X32.IfcReinforcingBar = IfcReinforcingBar;\n})(IFC2X3 || (IFC2X3 = {}));\nSchemaNames[2] = [\"IFC4\", \"IFC4X1\", \"IFC4X2\"];\nFromRawLineData[2] = {\n 3630933823: (v) => new IFC4.IfcActorRole(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC4.IfcAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 639542469: (v) => new IFC4.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), new IFC4.IfcLabel(!v[2] ? null : v[2].value), new IFC4.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => {\n var _a;\n return new IFC4.IfcAppliedValue(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 130549933: (v) => new IFC4.IfcApproval(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 4037036970: (v) => new IFC4.IfcBoundaryCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC4.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6])),\n 3367102660: (v) => new IFC4.IfcBoundaryFaceCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3])),\n 1387855156: (v) => new IFC4.IfcBoundaryNodeCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6])),\n 2069777674: (v) => new IFC4.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6]), !v[7] ? null : TypeInitialiser(2, v[7])),\n 2859738748: (_) => new IFC4.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC4.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2732653382: (v) => new IFC4.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 775493141: (v) => new IFC4.IfcConnectionVolumeGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC4.IfcConstraint(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value)),\n 1785450214: (v) => new IFC4.IfcCoordinateOperation(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1466758467: (v) => new IFC4.IfcCoordinateReferenceSystem(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value)),\n 602808272: (v) => {\n var _a;\n return new IFC4.IfcCostValue(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1765591967: (v) => {\n var _a;\n return new IFC4.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1045800335: (v) => new IFC4.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC4.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 4294318154: (_) => new IFC4.IfcExternalInformation(),\n 3200245327: (v) => new IFC4.IfcExternalReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC4.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC4.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC4.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC4.IfcGridAxis(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC4.IfcIrregularTimeSeriesValue(new IFC4.IfcDateTime(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 2655187982: (v) => new IFC4.IfcLibraryInformation(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcURIReference(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcText(!v[5] ? null : v[5].value)),\n 3452421091: (v) => new IFC4.IfcLibraryReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLanguageId(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC4.IfcLightDistributionData(new IFC4.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC4.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3057273783: (v) => new IFC4.IfcMapConversion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcReal(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcReal(!v[7] ? null : v[7].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC4.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 760658860: (_) => new IFC4.IfcMaterialDefinition(),\n 248100487: (v) => new IFC4.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC4.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value));\n },\n 1847252529: (v) => new IFC4.IfcMaterialLayerWithOffsets(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value), v[7], new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC4.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2235152071: (v) => new IFC4.IfcMaterialProfile(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 164193824: (v) => {\n var _a;\n return new IFC4.IfcMaterialProfileSet(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 552965576: (v) => new IFC4.IfcMaterialProfileWithOffsets(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), new IFC4.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1507914824: (_) => new IFC4.IfcMaterialUsageDefinition(),\n 2597039031: (v) => new IFC4.IfcMeasureWithUnit(TypeInitialiser(2, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 3368373690: (v) => new IFC4.IfcMetric(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2706619895: (v) => new IFC4.IfcMonetaryUnit(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1918398963: (v) => new IFC4.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (_) => new IFC4.IfcObjectPlacement(),\n 2251480897: (v) => {\n var _a;\n return new IFC4.IfcObjective(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8], v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 4251960020: (v) => {\n var _a, _b;\n return new IFC4.IfcOrganization(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC4.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC4.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4.IfcPerson(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC4.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC4.IfcPhysicalQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC4.IfcPhysicalSimpleQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC4.IfcPostalAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value));\n },\n 677532197: (_) => new IFC4.IfcPresentationItem(),\n 2022622350: (v) => {\n var _a;\n return new IFC4.IfcPresentationLayerAssignment(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC4.IfcPresentationLayerWithStyle(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC4.IfcPresentationStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2417041796: (v) => {\n var _a;\n return new IFC4.IfcPresentationStyleAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2095639259: (v) => {\n var _a;\n return new IFC4.IfcProductRepresentation(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958567839: (v) => new IFC4.IfcProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value)),\n 3843373140: (v) => new IFC4.IfcProjectedCRS(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 986844984: (_) => new IFC4.IfcPropertyAbstraction(),\n 3710013099: (v) => {\n var _a;\n return new IFC4.IfcPropertyEnumeration(new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC4.IfcQuantityArea(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcAreaMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2093928680: (v) => new IFC4.IfcQuantityCount(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcCountMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 931644368: (v) => new IFC4.IfcQuantityLength(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3252649465: (v) => new IFC4.IfcQuantityTime(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcTimeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2405470396: (v) => new IFC4.IfcQuantityVolume(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcVolumeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 825690147: (v) => new IFC4.IfcQuantityWeight(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcMassMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3915482550: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcRecurrencePattern(v[0], !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcDayInMonthNumber(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcDayInWeekNumber(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcMonthInYearNumber(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcInteger(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value), !v[7] ? null : ((_d = v[7]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2433181523: (v) => {\n var _a;\n return new IFC4.IfcReference(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 1076942058: (v) => {\n var _a;\n return new IFC4.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC4.IfcRepresentationContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC4.IfcRepresentationItem(),\n 1660063152: (v) => new IFC4.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2439245199: (v) => new IFC4.IfcResourceLevelRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2341007311: (v) => new IFC4.IfcRoot(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC4.IfcSIUnit(v[0], v[1], v[2]),\n 1054537805: (v) => new IFC4.IfcSchedulingTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 867548509: (v) => {\n var _a;\n return new IFC4.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), new IFC4.IfcLogical(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC4.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC4.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2273995522: (v) => new IFC4.IfcStructuralConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC4.IfcStructuralLoad(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3478079324: (v) => {\n var _a, _b;\n return new IFC4.IfcStructuralLoadConfiguration(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 609421318: (v) => new IFC4.IfcStructuralLoadOrResult(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC4.IfcStructuralLoadStatic(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC4.IfcStructuralLoadTemperature(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC4.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC4.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC4.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2934153892: (v) => {\n var _a, _b;\n return new IFC4.IfcSurfaceReinforcementArea(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcRatioMeasure(!v[3] ? null : v[3].value));\n },\n 1300840506: (v) => {\n var _a;\n return new IFC4.IfcSurfaceStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC4.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC4.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC4.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC4.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC4.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => {\n var _a;\n return new IFC4.IfcSurfaceTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || []);\n },\n 985171141: (v) => {\n var _a, _b;\n return new IFC4.IfcTable(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2043862942: (v) => new IFC4.IfcTableColumn(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 531007025: (v) => {\n var _a;\n return new IFC4.IfcTableRow(!v[0] ? null : ((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[1] ? null : new IFC4.IfcBoolean(!v[1] ? null : v[1].value));\n },\n 1549132990: (v) => new IFC4.IfcTaskTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value)),\n 2771591690: (v) => new IFC4.IfcTaskTimeRecurring(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value), new Handle(!v[20] ? null : v[20].value)),\n 912023232: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcTelecomAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcURIReference(!v[7] ? null : v[7].value), !v[8] ? null : ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcURIReference(p.value) : null)) || []);\n },\n 1447204868: (v) => new IFC4.IfcTextStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcBoolean(!v[4] ? null : v[4].value)),\n 2636378356: (v) => new IFC4.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC4.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(2, v[0]), !v[1] ? null : new IFC4.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : new IFC4.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(2, v[6])),\n 280115917: (v) => {\n var _a;\n return new IFC4.IfcTextureCoordinate(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1742049831: (v) => {\n var _a, _b;\n return new IFC4.IfcTextureCoordinateGenerator(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 2552916305: (v) => {\n var _a, _b;\n return new IFC4.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[2] ? null : v[2].value));\n },\n 1210645708: (v) => {\n var _a;\n return new IFC4.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || []);\n },\n 3611470254: (v) => {\n var _a;\n return new IFC4.IfcTextureVertexList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcParameterValue(p2.value) : null)) || []));\n },\n 1199560280: (v) => new IFC4.IfcTimePeriod(new IFC4.IfcTime(!v[0] ? null : v[0].value), new IFC4.IfcTime(!v[1] ? null : v[1].value)),\n 3101149627: (v) => new IFC4.IfcTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 581633288: (v) => {\n var _a;\n return new IFC4.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 1377556343: (_) => new IFC4.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC4.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC4.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC4.IfcVertex(),\n 1907098498: (v) => new IFC4.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC4.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1236880293: (v) => new IFC4.IfcWorkTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value)),\n 3869604511: (v) => {\n var _a;\n return new IFC4.IfcApprovalRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3798115385: (v) => new IFC4.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC4.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC4.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => {\n var _a;\n return new IFC4.IfcBlobTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcBinary(!v[6] ? null : v[6].value));\n },\n 3150382593: (v) => new IFC4.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 747523909: (v) => {\n var _a;\n return new IFC4.IfcClassification(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcDate(!v[2] ? null : v[2].value), new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcURIReference(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || []);\n },\n 647927063: (v) => new IFC4.IfcClassificationReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3285139300: (v) => {\n var _a;\n return new IFC4.IfcColourRgbList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcNormalisedRatioMeasure(p2.value) : null)) || []));\n },\n 3264961684: (v) => new IFC4.IfcColourSpecification(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1485152156: (v) => {\n var _a;\n return new IFC4.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC4.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC4.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC4.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC4.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC4.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2713554722: (v) => new IFC4.IfcConversionBasedUnitWithOffset(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4.IfcReal(!v[4] ? null : v[4].value)),\n 539742890: (v) => new IFC4.IfcCurrencyRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3800577675: (v) => new IFC4.IfcCurveStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcBoolean(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC4.IfcCurveStyleFont(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC4.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC4.IfcCurveStyleFontPattern(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3632507154: (v) => new IFC4.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 1154170062: (v) => {\n var _a;\n return new IFC4.IfcDocumentInformation(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcURIReference(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcIdentifier(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcDate(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDate(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC4.IfcDocumentInformationRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value));\n },\n 3732053477: (v) => new IFC4.IfcDocumentReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 3900360178: (v) => new IFC4.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC4.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcBoolean(!v[3] ? null : v[3].value)),\n 211053100: (v) => new IFC4.IfcEventTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDateTime(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value)),\n 297599258: (v) => {\n var _a;\n return new IFC4.IfcExtendedProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1437805879: (v) => {\n var _a;\n return new IFC4.IfcExternalReferenceRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2556980723: (v) => {\n var _a;\n return new IFC4.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC4.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 803316827: (v) => new IFC4.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 3008276851: (v) => {\n var _a;\n return new IFC4.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4219587988: (v) => new IFC4.IfcFailureConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC4.IfcFillAreaStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3448662350: (v) => new IFC4.IfcGeometricRepresentationContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new IFC4.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC4.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC4.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC4.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC4.IfcGridPlacement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 812098782: (v) => new IFC4.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 3905492369: (v) => {\n var _a;\n return new IFC4.IfcImageTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcURIReference(!v[5] ? null : v[5].value));\n },\n 3570813810: (v) => {\n var _a;\n return new IFC4.IfcIndexedColourMap(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1437953363: (v) => {\n var _a;\n return new IFC4.IfcIndexedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value));\n },\n 2133299955: (v) => {\n var _a, _b;\n return new IFC4.IfcIndexedTriangleTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3741457305: (v) => {\n var _a;\n return new IFC4.IfcIrregularTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1585845231: (v) => new IFC4.IfcLagTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), TypeInitialiser(2, v[3]), v[4]),\n 1402838566: (v) => new IFC4.IfcLightSource(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC4.IfcLightSourceAmbient(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC4.IfcLightSourceDirectional(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC4.IfcLightSourceGoniometric(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC4.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC4.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC4.IfcLightSourcePositional(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcReal(!v[6] ? null : v[6].value), new IFC4.IfcReal(!v[7] ? null : v[7].value), new IFC4.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC4.IfcLightSourceSpot(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcReal(!v[6] ? null : v[6].value), new IFC4.IfcReal(!v[7] ? null : v[7].value), new IFC4.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcReal(!v[10] ? null : v[10].value), new IFC4.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC4.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 2624227202: (v) => new IFC4.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC4.IfcLoop(),\n 2347385850: (v) => new IFC4.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1838606355: (v) => new IFC4.IfcMaterial(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 3708119e3: (v) => new IFC4.IfcMaterialConstituent(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2852063980: (v) => {\n var _a;\n return new IFC4.IfcMaterialConstituentSet(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2022407955: (v) => {\n var _a;\n return new IFC4.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1303795690: (v) => new IFC4.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3079605661: (v) => new IFC4.IfcMaterialProfileSetUsage(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3404854881: (v) => new IFC4.IfcMaterialProfileSetUsageTapering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcCardinalPointReference(!v[4] ? null : v[4].value)),\n 3265635763: (v) => {\n var _a;\n return new IFC4.IfcMaterialProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 853536259: (v) => {\n var _a;\n return new IFC4.IfcMaterialRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value));\n },\n 2998442950: (v) => new IFC4.IfcMirroredProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value)),\n 219451334: (v) => new IFC4.IfcObjectDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2665983363: (v) => {\n var _a;\n return new IFC4.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC4.IfcOrganizationRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC4.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 2529465313: (v) => new IFC4.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC4.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC4.IfcPhysicalComplexQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a, _b;\n return new IFC4.IfcPixelTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcInteger(!v[5] ? null : v[5].value), new IFC4.IfcInteger(!v[6] ? null : v[6].value), new IFC4.IfcInteger(!v[7] ? null : v[7].value), ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcBinary(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC4.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC4.IfcPlanarExtent(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC4.IfcPoint(),\n 4022376103: (v) => new IFC4.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC4.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC4.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC4.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3727388367: (v) => new IFC4.IfcPreDefinedItem(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3778827333: (_) => new IFC4.IfcPreDefinedProperties(),\n 1775413392: (v) => new IFC4.IfcPreDefinedTextFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC4.IfcProductDefinitionShape(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802850158: (v) => {\n var _a;\n return new IFC4.IfcProfileProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 2598011224: (v) => new IFC4.IfcProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 1680319473: (v) => new IFC4.IfcPropertyDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 148025276: (v) => new IFC4.IfcPropertyDependencyRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value)),\n 3357820518: (v) => new IFC4.IfcPropertySetDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1482703590: (v) => new IFC4.IfcPropertyTemplateDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2090586900: (v) => new IFC4.IfcQuantitySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 3615266464: (v) => new IFC4.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC4.IfcRegularTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC4.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1580146022: (v) => new IFC4.IfcReinforcementBarProperties(new IFC4.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 478536968: (v) => new IFC4.IfcRelationship(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2943643501: (v) => {\n var _a;\n return new IFC4.IfcResourceApprovalRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1608871552: (v) => {\n var _a;\n return new IFC4.IfcResourceConstraintRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1042787934: (v) => new IFC4.IfcResourceTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDuration(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDuration(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveRatioMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcDateTime(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcPositiveRatioMeasure(!v[17] ? null : v[17].value)),\n 2778083089: (v) => new IFC4.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 2042790032: (v) => new IFC4.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC4.IfcSectionReinforcementProperties(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1509187699: (v) => {\n var _a, _b;\n return new IFC4.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4124623270: (v) => {\n var _a;\n return new IFC4.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC4.IfcSimpleProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2609359061: (v) => new IFC4.IfcSlippageConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC4.IfcSolidModel(),\n 1595516126: (v) => new IFC4.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC4.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC4.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC4.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC4.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC4.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 2233826070: (v) => new IFC4.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC4.IfcSurface(),\n 1878645084: (v) => new IFC4.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(2, v[7]), v[8]),\n 2247615214: (v) => new IFC4.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC4.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value)),\n 1096409881: (v) => new IFC4.IfcSweptDiskSolidPolygonal(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 230924584: (v) => new IFC4.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC4.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value)),\n 901063453: (_) => new IFC4.IfcTessellatedItem(),\n 4282788508: (v) => new IFC4.IfcTextLiteral(new IFC4.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC4.IfcTextLiteralWithExtent(new IFC4.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC4.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC4.IfcTextStyleFontModel(new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(2, v[5]));\n },\n 2715220739: (v) => new IFC4.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC4.IfcTypeObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3736923433: (v) => {\n var _a;\n return new IFC4.IfcTypeProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC4.IfcTypeProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value));\n },\n 3698973494: (v) => {\n var _a;\n return new IFC4.IfcTypeResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 427810014: (v) => new IFC4.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 1417489154: (v) => new IFC4.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC4.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 1299126871: (v) => {\n var _a, _b;\n return new IFC4.IfcWindowStyle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], new IFC4.IfcBoolean(!v[10] ? null : v[10].value), new IFC4.IfcBoolean(!v[11] ? null : v[11].value));\n },\n 2543172580: (v) => new IFC4.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value)),\n 3406155212: (v) => {\n var _a;\n return new IFC4.IfcAdvancedFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC4.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3207858831: (v) => new IFC4.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPlaneAngleMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcPlaneAngleMeasure(!v[14] ? null : v[14].value)),\n 4261334040: (v) => new IFC4.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC4.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC4.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC4.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC4.IfcBoundedSurface(),\n 2581212453: (v) => new IFC4.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC4.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC4.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC4.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || []);\n },\n 574549367: (_) => new IFC4.IfcCartesianPointList(),\n 1675464909: (v) => {\n var _a;\n return new IFC4.IfcCartesianPointList2D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 2059837836: (v) => {\n var _a;\n return new IFC4.IfcCartesianPointList3D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 59481748: (v) => new IFC4.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value)),\n 3749851601: (v) => new IFC4.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value)),\n 3486308946: (v) => new IFC4.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcReal(!v[4] ? null : v[4].value)),\n 3331915920: (v) => new IFC4.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC4.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcReal(!v[6] ? null : v[6].value)),\n 1383045692: (v) => new IFC4.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC4.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 776857604: (v) => new IFC4.IfcColourRgb(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC4.IfcComplexProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC4.IfcCompositeCurveSegment(v[0], new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2574617495: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 3419103109: (v) => {\n var _a;\n return new IFC4.IfcContext(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 1815067380: (v) => {\n var _a, _b;\n return new IFC4.IfcCrewResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2506170314: (v) => new IFC4.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC4.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC4.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC4.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2629017746: (v) => {\n var _a;\n return new IFC4.IfcCurveBoundedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 32440307: (v) => {\n var _a;\n return new IFC4.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 526551008: (v) => {\n var _a, _b;\n return new IFC4.IfcDoorStyle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], new IFC4.IfcBoolean(!v[10] ? null : v[10].value), new IFC4.IfcBoolean(!v[11] ? null : v[11].value));\n },\n 1472233963: (v) => {\n var _a;\n return new IFC4.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC4.IfcElementQuantity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC4.IfcElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC4.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC4.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 4024345920: (v) => {\n var _a;\n return new IFC4.IfcEventType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcLabel(!v[11] ? null : v[11].value));\n },\n 477187591: (v) => new IFC4.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2804161546: (v) => new IFC4.IfcExtrudedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC4.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC4.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 315944413: (v) => {\n var _a, _b;\n return new IFC4.IfcFillAreaStyleTiles(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 2652556860: (v) => new IFC4.IfcFixedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC4.IfcFurnishingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC4.IfcFurnitureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10]);\n },\n 4095422895: (v) => {\n var _a, _b;\n return new IFC4.IfcGeographicElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC4.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC4.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 178912537: (v) => {\n var _a;\n return new IFC4.IfcIndexedPolygonalFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 2294589976: (v) => {\n var _a, _b;\n return new IFC4.IfcIndexedPolygonalFaceWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || [], (_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 572779678: (v) => new IFC4.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value)),\n 428585644: (v) => {\n var _a, _b;\n return new IFC4.IfcLaborResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1281925730: (v) => new IFC4.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC4.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC4.IfcObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3388369263: (v) => new IFC4.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcLogical(!v[2] ? null : v[2].value)),\n 3505215534: (v) => new IFC4.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcLogical(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1682466193: (v) => new IFC4.IfcPcurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 603570806: (v) => new IFC4.IfcPlanarBox(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC4.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 759155922: (v) => new IFC4.IfcPreDefinedColour(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC4.IfcPreDefinedCurveFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3967405729: (v) => new IFC4.IfcPreDefinedPropertySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 569719735: (v) => {\n var _a;\n return new IFC4.IfcProcedureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2945172077: (v) => new IFC4.IfcProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value)),\n 4208778838: (v) => new IFC4.IfcProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC4.IfcProject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 653396225: (v) => {\n var _a;\n return new IFC4.IfcProjectLibrary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 871118103: (v) => new IFC4.IfcPropertyBoundedValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : TypeInitialiser(2, v[5])),\n 4166981789: (v) => {\n var _a;\n return new IFC4.IfcPropertyEnumeratedValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC4.IfcPropertyListValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC4.IfcPropertyReferenceValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1451395588: (v) => {\n var _a;\n return new IFC4.IfcPropertySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 492091185: (v) => {\n var _a;\n return new IFC4.IfcPropertySetTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3650150729: (v) => new IFC4.IfcPropertySingleValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC4.IfcPropertyTableValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]);\n },\n 3521284610: (v) => new IFC4.IfcPropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 3219374653: (v) => new IFC4.IfcProxy(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 2770003689: (v) => new IFC4.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC4.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC4.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4.IfcParameterValue(!v[2] ? null : v[2].value), new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new IFC4.IfcBoolean(!v[5] ? null : v[5].value), new IFC4.IfcBoolean(!v[6] ? null : v[6].value)),\n 3765753017: (v) => {\n var _a;\n return new IFC4.IfcReinforcementDefinitionProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3939117080: (v) => {\n var _a;\n return new IFC4.IfcRelAssigns(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToActor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1027710054: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToGroupByFactor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), new IFC4.IfcRatioMeasure(!v[7] ? null : v[7].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC4.IfcRelAssociates(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4095574036: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesApproval(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesClassification(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesConstraint(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesDocument(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesLibrary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesMaterial(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 826625072: (v) => new IFC4.IfcRelConnects(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC4.IfcRelConnectsElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC4.IfcRelConnectsPathElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC4.IfcRelConnectsPortToElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC4.IfcRelConnectsPorts(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC4.IfcRelConnectsStructuralActivity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC4.IfcRelConnectsStructuralMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC4.IfcRelConnectsWithEccentricity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC4.IfcRelConnectsWithRealizingElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC4.IfcRelContainedInSpatialStructure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC4.IfcRelCoversBldgElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC4.IfcRelCoversSpaces(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2565941209: (v) => {\n var _a;\n return new IFC4.IfcRelDeclares(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => new IFC4.IfcRelDecomposes(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 693640335: (v) => new IFC4.IfcRelDefines(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1462361463: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4186316022: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 307848117: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC4.IfcRelFillsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC4.IfcRelFlowControlElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 427948657: (v) => new IFC4.IfcRelInterferesElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value),\n 3268803585: (v) => {\n var _a;\n return new IFC4.IfcRelNests(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC4.IfcRelProjectsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC4.IfcRelReferencedInSpatialStructure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4122056220: (v) => new IFC4.IfcRelSequence(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 366585022: (v) => {\n var _a;\n return new IFC4.IfcRelServicesBuildings(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC4.IfcRelSpaceBoundary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 3523091289: (v) => new IFC4.IfcRelSpaceBoundary1stLevel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 1521410863: (v) => new IFC4.IfcRelSpaceBoundary2ndLevel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1401173127: (v) => new IFC4.IfcRelVoidsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 816062949: (v) => new IFC4.IfcReparametrisedCompositeCurveSegment(v[0], new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcParameterValue(!v[3] ? null : v[3].value)),\n 2914609552: (v) => new IFC4.IfcResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value)),\n 1856042241: (v) => new IFC4.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 3243963512: (v) => new IFC4.IfcRevolvedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4158566097: (v) => new IFC4.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC4.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3663146110: (v) => new IFC4.IfcSimplePropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value), v[11]),\n 1412071761: (v) => new IFC4.IfcSpatialElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value)),\n 710998568: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2706606064: (v) => new IFC4.IfcSpatialStructureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialStructureElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 463610769: (v) => new IFC4.IfcSpatialZone(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 2481509218: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialZoneType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 451544542: (v) => new IFC4.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 4015995234: (v) => new IFC4.IfcSphericalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3544373492: (v) => new IFC4.IfcStructuralActivity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC4.IfcStructuralItem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC4.IfcStructuralMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC4.IfcStructuralReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC4.IfcStructuralSurfaceMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => new IFC4.IfcStructuralSurfaceMemberVarying(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 603775116: (v) => new IFC4.IfcStructuralSurfaceReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 4095615324: (v) => {\n var _a, _b;\n return new IFC4.IfcSubContractResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 699246055: (v) => {\n var _a;\n return new IFC4.IfcSurfaceCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2028607225: (v) => new IFC4.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC4.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC4.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC4.IfcSystemFurnitureElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3473067441: (v) => new IFC4.IfcTask(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), new IFC4.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcInteger(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), v[12]),\n 3206491090: (v) => {\n var _a;\n return new IFC4.IfcTaskType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 2387106220: (v) => new IFC4.IfcTessellatedFaceSet(new Handle(!v[0] ? null : v[0].value)),\n 1935646853: (v) => new IFC4.IfcToroidalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2097647324: (v) => {\n var _a, _b;\n return new IFC4.IfcTransportElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2916149573: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcTriangulatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : (_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcParameterValue(p2.value) : null)) || []), !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 336235671: (v) => new IFC4.IfcWindowLiningProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcLengthMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcLengthMeasure(!v[15] ? null : v[15].value)),\n 512836454: (v) => new IFC4.IfcWindowPanelProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2296667514: (v) => new IFC4.IfcActor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1635779807: (v) => new IFC4.IfcAdvancedBrep(new Handle(!v[0] ? null : v[0].value)),\n 2603310189: (v) => {\n var _a;\n return new IFC4.IfcAdvancedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1674181508: (v) => new IFC4.IfcAnnotation(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2887950389: (v) => {\n var _a;\n return new IFC4.IfcBSplineSurface(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value));\n },\n 167062518: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4.IfcBSplineSurfaceWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[11]);\n },\n 1334484129: (v) => new IFC4.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC4.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC4.IfcBoundedCurve(),\n 4031249490: (v) => new IFC4.IfcBuilding(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 1950629157: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3124254112: (v) => new IFC4.IfcBuildingStorey(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 2197970202: (v) => {\n var _a, _b;\n return new IFC4.IfcChimneyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2937912522: (v) => new IFC4.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3893394355: (v) => {\n var _a, _b;\n return new IFC4.IfcCivilElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 300633059: (v) => {\n var _a, _b;\n return new IFC4.IfcColumnType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3875453745: (v) => {\n var _a;\n return new IFC4.IfcComplexPropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC4.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 15328376: (v) => {\n var _a;\n return new IFC4.IfcCompositeCurveOnSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 2510884976: (v) => new IFC4.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2185764099: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionEquipmentResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 4105962743: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionMaterialResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1525564444: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionProductResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2559216714: (v) => {\n var _a;\n return new IFC4.IfcConstructionResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 3293443760: (v) => new IFC4.IfcControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3895139033: (v) => {\n var _a, _b;\n return new IFC4.IfcCostItem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1419761937: (v) => new IFC4.IfcCostSchedule(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value)),\n 1916426348: (v) => {\n var _a, _b;\n return new IFC4.IfcCoveringType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => {\n var _a;\n return new IFC4.IfcCrewResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1457835157: (v) => {\n var _a, _b;\n return new IFC4.IfcCurtainWallType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1213902940: (v) => new IFC4.IfcCylindricalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3256556792: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionFlowElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2963535650: (v) => new IFC4.IfcDoorLiningProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcLengthMeasure(!v[16] ? null : v[16].value)),\n 1714330368: (v) => new IFC4.IfcDoorPanelProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2323601079: (v) => {\n var _a, _b;\n return new IFC4.IfcDoorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value));\n },\n 445594917: (v) => new IFC4.IfcDraughtingPreDefinedColour(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC4.IfcDraughtingPreDefinedCurveFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1758889154: (v) => new IFC4.IfcElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC4.IfcElementAssembly(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 2397081782: (v) => {\n var _a, _b;\n return new IFC4.IfcElementAssemblyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1623761950: (v) => new IFC4.IfcElementComponent(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC4.IfcElementComponentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC4.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC4.IfcEnergyConversionDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 132023988: (v) => {\n var _a, _b;\n return new IFC4.IfcEngineType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3174744832: (v) => {\n var _a, _b;\n return new IFC4.IfcEvaporativeCoolerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC4.IfcEvaporatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4148101412: (v) => new IFC4.IfcEvent(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2853485674: (v) => new IFC4.IfcExternalSpatialStructureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value)),\n 807026263: (v) => new IFC4.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC4.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 647756555: (v) => new IFC4.IfcFastener(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC4.IfcFastenerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2827207264: (v) => new IFC4.IfcFeatureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC4.IfcFeatureElementAddition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC4.IfcFeatureElementSubtraction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowControllerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowMeterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowMovingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowStorageDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowTreatmentDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1893162501: (v) => {\n var _a, _b;\n return new IFC4.IfcFootingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 263784265: (v) => new IFC4.IfcFurnishingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1509553395: (v) => new IFC4.IfcFurniture(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3493046030: (v) => new IFC4.IfcGeographicElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcGrid(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[10]);\n },\n 2706460486: (v) => new IFC4.IfcGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC4.IfcHeatExchangerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC4.IfcHumidifierType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2571569899: (v) => {\n var _a;\n return new IFC4.IfcIndexedPolyCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3946677679: (v) => {\n var _a, _b;\n return new IFC4.IfcInterceptorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3113134337: (v) => {\n var _a;\n return new IFC4.IfcIntersectionCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC4.IfcInventory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcDate(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC4.IfcJunctionBoxType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3827777499: (v) => {\n var _a;\n return new IFC4.IfcLaborResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1051575348: (v) => {\n var _a, _b;\n return new IFC4.IfcLampType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC4.IfcLightFixtureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 377706215: (v) => new IFC4.IfcMechanicalFastener(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10]),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC4.IfcMechanicalFastenerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value));\n },\n 1114901282: (v) => {\n var _a, _b;\n return new IFC4.IfcMedicalDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC4.IfcMemberType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC4.IfcMotorConnectionType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4143007308: (v) => new IFC4.IfcOccupant(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC4.IfcOpeningElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3079942009: (v) => new IFC4.IfcOpeningStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC4.IfcOutletType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC4.IfcPerformanceHistory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcLabel(!v[6] ? null : v[6].value), v[7]),\n 3566463478: (v) => new IFC4.IfcPermeableCoveringProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3327091369: (v) => new IFC4.IfcPermit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 1158309216: (v) => {\n var _a, _b;\n return new IFC4.IfcPileType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 804291784: (v) => {\n var _a, _b;\n return new IFC4.IfcPipeFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC4.IfcPipeSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC4.IfcPlateType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2839578677: (v) => {\n var _a, _b;\n return new IFC4.IfcPolygonalFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcBoolean(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC4.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC4.IfcPort(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC4.IfcProcedure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), v[7]),\n 2904328755: (v) => new IFC4.IfcProjectOrder(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 3651124850: (v) => new IFC4.IfcProjectionElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC4.IfcProtectiveDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC4.IfcPumpType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC4.IfcRailingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2324767716: (v) => {\n var _a, _b;\n return new IFC4.IfcRampFlightType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1469900589: (v) => {\n var _a, _b;\n return new IFC4.IfcRampType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 683857671: (v) => {\n var _a, _b, _c, _d, _e, _f;\n return new IFC4.IfcRationalBSplineSurfaceWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[11], (_f = v[12]) == null ? void 0 : _f.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcReal(p2.value) : null)) || []));\n },\n 3027567501: (v) => new IFC4.IfcReinforcingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 964333572: (v) => {\n var _a, _b;\n return new IFC4.IfcReinforcingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2320036040: (v) => new IFC4.IfcReinforcingMesh(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcAreaMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), v[17]),\n 2310774935: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcReinforcingMeshType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcPositiveLengthMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcLabel(!v[18] ? null : v[18].value), !v[19] ? null : ((_c = v[19]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 160246688: (v) => {\n var _a;\n return new IFC4.IfcRelAggregates(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2781568857: (v) => {\n var _a, _b;\n return new IFC4.IfcRoofType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC4.IfcSanitaryTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2157484638: (v) => {\n var _a;\n return new IFC4.IfcSeamCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 4074543187: (v) => {\n var _a, _b;\n return new IFC4.IfcShadingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4097777520: (v) => new IFC4.IfcSite(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC4.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC4.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC4.IfcSlabType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1072016465: (v) => {\n var _a, _b;\n return new IFC4.IfcSolarDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC4.IfcSpace(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC4.IfcSpaceHeaterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3812236995: (v) => {\n var _a, _b;\n return new IFC4.IfcSpaceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC4.IfcStackTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC4.IfcStairFlightType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 338393293: (v) => {\n var _a, _b;\n return new IFC4.IfcStairType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC4.IfcStructuralAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value)),\n 1179482911: (v) => new IFC4.IfcStructuralConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1004757350: (v) => new IFC4.IfcStructuralCurveAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 4243806635: (v) => new IFC4.IfcStructuralCurveConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 214636428: (v) => new IFC4.IfcStructuralCurveMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2445595289: (v) => new IFC4.IfcStructuralCurveMemberVarying(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2757150158: (v) => new IFC4.IfcStructuralCurveReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 1807405624: (v) => new IFC4.IfcStructuralLinearAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1252848954: (v) => new IFC4.IfcStructuralLoadGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value)),\n 2082059205: (v) => new IFC4.IfcStructuralPointAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value)),\n 734778138: (v) => new IFC4.IfcStructuralPointConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1235345126: (v) => new IFC4.IfcStructuralPointReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC4.IfcStructuralResultGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4.IfcBoolean(!v[7] ? null : v[7].value)),\n 3657597509: (v) => new IFC4.IfcStructuralSurfaceAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1975003073: (v) => new IFC4.IfcStructuralSurfaceConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => {\n var _a;\n return new IFC4.IfcSubContractResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 3101698114: (v) => new IFC4.IfcSurfaceFeature(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC4.IfcSwitchingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC4.IfcSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 413509423: (v) => new IFC4.IfcSystemFurnitureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 5716631: (v) => {\n var _a, _b;\n return new IFC4.IfcTankType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3824725483: (v) => new IFC4.IfcTendon(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC4.IfcTendonAnchor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 3081323446: (v) => {\n var _a, _b;\n return new IFC4.IfcTendonAnchorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2415094496: (v) => {\n var _a, _b;\n return new IFC4.IfcTendonType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value));\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC4.IfcTransformerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1620046519: (v) => new IFC4.IfcTransportElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC4.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcBoolean(!v[3] ? null : v[3].value), v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC4.IfcTubeBundleType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC4.IfcUnitaryEquipmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC4.IfcValveType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391383451: (v) => new IFC4.IfcVibrationIsolator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC4.IfcVibrationIsolatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC4.IfcVirtualElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 926996030: (v) => new IFC4.IfcVoidingFeature(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC4.IfcWallType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC4.IfcWasteTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4009809668: (v) => {\n var _a, _b;\n return new IFC4.IfcWindowType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value));\n },\n 4088093105: (v) => {\n var _a, _b;\n return new IFC4.IfcWorkCalendar(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC4.IfcWorkControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC4.IfcWorkPlan(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 3342526732: (v) => {\n var _a;\n return new IFC4.IfcWorkSchedule(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 1033361043: (v) => new IFC4.IfcZone(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 3821786052: (v) => new IFC4.IfcActionRequest(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC4.IfcAirTerminalBoxType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC4.IfcAirTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC4.IfcAirToAirHeatRecoveryType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3460190687: (v) => new IFC4.IfcAsset(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDate(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 1532957894: (v) => {\n var _a, _b;\n return new IFC4.IfcAudioVisualApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1967976161: (v) => {\n var _a;\n return new IFC4.IfcBSplineCurve(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value));\n },\n 2461110595: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcBSplineCurveWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[7]);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC4.IfcBeamType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC4.IfcBoilerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1136057603: (v) => {\n var _a;\n return new IFC4.IfcBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3299480353: (v) => new IFC4.IfcBuildingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2979338954: (v) => new IFC4.IfcBuildingElementPart(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 39481116: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementPartType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1095909175: (v) => new IFC4.IfcBuildingElementProxy(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1909888760: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementProxyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1177604601: (v) => new IFC4.IfcBuildingSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value)),\n 2188180465: (v) => {\n var _a, _b;\n return new IFC4.IfcBurnerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC4.IfcCableCarrierFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC4.IfcCableCarrierSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2674252688: (v) => {\n var _a, _b;\n return new IFC4.IfcCableFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC4.IfcCableSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC4.IfcChillerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3296154744: (v) => new IFC4.IfcChimney(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2611217952: (v) => new IFC4.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1677625105: (v) => new IFC4.IfcCivilElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC4.IfcCoilType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC4.IfcColumn(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 905975707: (v) => new IFC4.IfcColumnStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 400855858: (v) => {\n var _a, _b;\n return new IFC4.IfcCommunicationsApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3850581409: (v) => {\n var _a, _b;\n return new IFC4.IfcCompressorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC4.IfcCondenserType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3898045240: (v) => {\n var _a;\n return new IFC4.IfcConstructionEquipmentResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1060000209: (v) => {\n var _a;\n return new IFC4.IfcConstructionMaterialResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 488727124: (v) => {\n var _a;\n return new IFC4.IfcConstructionProductResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 335055490: (v) => {\n var _a, _b;\n return new IFC4.IfcCooledBeamType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC4.IfcCoolingTowerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1973544240: (v) => new IFC4.IfcCovering(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC4.IfcCurtainWall(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC4.IfcDamperType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1335981549: (v) => new IFC4.IfcDiscreteAccessory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC4.IfcDiscreteAccessoryType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionChamberElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionControlElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC4.IfcDistributionElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC4.IfcDistributionFlowElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC4.IfcDistributionPort(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], v[9]),\n 3205830791: (v) => new IFC4.IfcDistributionSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 395920057: (v) => new IFC4.IfcDoor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 3242481149: (v) => new IFC4.IfcDoorStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctSilencerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 663422040: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2417008758: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricDistributionBoardType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricFlowStorageDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricGeneratorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricMotorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricTimeControlType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1658829314: (v) => new IFC4.IfcEnergyConversionDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2814081492: (v) => new IFC4.IfcEngine(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3747195512: (v) => new IFC4.IfcEvaporativeCooler(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 484807127: (v) => new IFC4.IfcEvaporator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1209101575: (v) => new IFC4.IfcExternalSpatialElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 346874300: (v) => {\n var _a, _b;\n return new IFC4.IfcFanType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC4.IfcFilterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC4.IfcFireSuppressionTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC4.IfcFlowController(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC4.IfcFlowFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowInstrumentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188021234: (v) => new IFC4.IfcFlowMeter(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3132237377: (v) => new IFC4.IfcFlowMovingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC4.IfcFlowSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC4.IfcFlowStorageDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC4.IfcFlowTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC4.IfcFlowTreatmentDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC4.IfcFooting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3319311131: (v) => new IFC4.IfcHeatExchanger(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2068733104: (v) => new IFC4.IfcHumidifier(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4175244083: (v) => new IFC4.IfcInterceptor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2176052936: (v) => new IFC4.IfcJunctionBox(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 76236018: (v) => new IFC4.IfcLamp(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 629592764: (v) => new IFC4.IfcLightFixture(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1437502449: (v) => new IFC4.IfcMedicalDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC4.IfcMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1911478936: (v) => new IFC4.IfcMemberStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2474470126: (v) => new IFC4.IfcMotorConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 144952367: (v) => {\n var _a;\n return new IFC4.IfcOuterBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3694346114: (v) => new IFC4.IfcOutlet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1687234759: (v) => new IFC4.IfcPile(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 310824031: (v) => new IFC4.IfcPipeFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3612865200: (v) => new IFC4.IfcPipeSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3171933400: (v) => new IFC4.IfcPlate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1156407060: (v) => new IFC4.IfcPlateStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 738039164: (v) => new IFC4.IfcProtectiveDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 655969474: (v) => {\n var _a, _b;\n return new IFC4.IfcProtectiveDeviceTrippingUnitType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 90941305: (v) => new IFC4.IfcPump(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2262370178: (v) => new IFC4.IfcRailing(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC4.IfcRamp(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC4.IfcRampFlight(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1232101972: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcRationalBSplineCurveWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[7], ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 979691226: (v) => new IFC4.IfcReinforcingBar(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13]),\n 2572171363: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcReinforcingBarType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC4.IfcLabel(!v[14] ? null : v[14].value), !v[15] ? null : ((_c = v[15]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 2016517767: (v) => new IFC4.IfcRoof(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3053780830: (v) => new IFC4.IfcSanitaryTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC4.IfcSensorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1329646415: (v) => new IFC4.IfcShadingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1529196076: (v) => new IFC4.IfcSlab(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3127900445: (v) => new IFC4.IfcSlabElementedCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3027962421: (v) => new IFC4.IfcSlabStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3420628829: (v) => new IFC4.IfcSolarDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1999602285: (v) => new IFC4.IfcSpaceHeater(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1404847402: (v) => new IFC4.IfcStackTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC4.IfcStair(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC4.IfcStairFlight(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcInteger(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcInteger(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12]),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC4.IfcStructuralAnalysisModel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 385403989: (v) => {\n var _a;\n return new IFC4.IfcStructuralLoadCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : ((_a = v[10]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcRatioMeasure(p.value) : null)) || []);\n },\n 1621171031: (v) => new IFC4.IfcStructuralPlanarAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1162798199: (v) => new IFC4.IfcSwitchingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 812556717: (v) => new IFC4.IfcTank(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3825984169: (v) => new IFC4.IfcTransformer(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3026737570: (v) => new IFC4.IfcTubeBundle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3179687236: (v) => {\n var _a, _b;\n return new IFC4.IfcUnitaryControlElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4292641817: (v) => new IFC4.IfcUnitaryEquipment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4207607924: (v) => new IFC4.IfcValve(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2391406946: (v) => new IFC4.IfcWall(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4156078855: (v) => new IFC4.IfcWallElementedCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3512223829: (v) => new IFC4.IfcWallStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4237592921: (v) => new IFC4.IfcWasteTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3304561284: (v) => new IFC4.IfcWindow(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 486154966: (v) => new IFC4.IfcWindowStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC4.IfcActuatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634111441: (v) => new IFC4.IfcAirTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 177149247: (v) => new IFC4.IfcAirTerminalBox(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2056796094: (v) => new IFC4.IfcAirToAirHeatRecovery(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3001207471: (v) => {\n var _a, _b;\n return new IFC4.IfcAlarmType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 277319702: (v) => new IFC4.IfcAudioVisualAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 753842376: (v) => new IFC4.IfcBeam(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2906023776: (v) => new IFC4.IfcBeamStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 32344328: (v) => new IFC4.IfcBoiler(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2938176219: (v) => new IFC4.IfcBurner(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 635142910: (v) => new IFC4.IfcCableCarrierFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3758799889: (v) => new IFC4.IfcCableCarrierSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1051757585: (v) => new IFC4.IfcCableFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4217484030: (v) => new IFC4.IfcCableSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3902619387: (v) => new IFC4.IfcChiller(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 639361253: (v) => new IFC4.IfcCoil(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3221913625: (v) => new IFC4.IfcCommunicationsAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3571504051: (v) => new IFC4.IfcCompressor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2272882330: (v) => new IFC4.IfcCondenser(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 578613899: (v) => {\n var _a, _b;\n return new IFC4.IfcControllerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4136498852: (v) => new IFC4.IfcCooledBeam(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3640358203: (v) => new IFC4.IfcCoolingTower(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4074379575: (v) => new IFC4.IfcDamper(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1052013943: (v) => new IFC4.IfcDistributionChamberElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 562808652: (v) => new IFC4.IfcDistributionCircuit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 1062813311: (v) => new IFC4.IfcDistributionControlElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 342316401: (v) => new IFC4.IfcDuctFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3518393246: (v) => new IFC4.IfcDuctSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1360408905: (v) => new IFC4.IfcDuctSilencer(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1904799276: (v) => new IFC4.IfcElectricAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 862014818: (v) => new IFC4.IfcElectricDistributionBoard(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3310460725: (v) => new IFC4.IfcElectricFlowStorageDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 264262732: (v) => new IFC4.IfcElectricGenerator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 402227799: (v) => new IFC4.IfcElectricMotor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1003880860: (v) => new IFC4.IfcElectricTimeControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3415622556: (v) => new IFC4.IfcFan(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 819412036: (v) => new IFC4.IfcFilter(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1426591983: (v) => new IFC4.IfcFireSuppressionTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 182646315: (v) => new IFC4.IfcFlowInstrument(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2295281155: (v) => new IFC4.IfcProtectiveDeviceTrippingUnit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4086658281: (v) => new IFC4.IfcSensor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 630975310: (v) => new IFC4.IfcUnitaryControlElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4288193352: (v) => new IFC4.IfcActuator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3087945054: (v) => new IFC4.IfcAlarm(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 25142252: (v) => new IFC4.IfcController(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8])\n};\nInheritanceDef[2] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 411424972: [IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONVOLUMEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 1785450214: [IFCMAPCONVERSION],\n 1466758467: [IFCPROJECTEDCRS],\n 4294318154: [IFCDOCUMENTINFORMATION, IFCCLASSIFICATION, IFCLIBRARYINFORMATION],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 760658860: [IFCMATERIALCONSTITUENTSET, IFCMATERIALCONSTITUENT, IFCMATERIAL, IFCMATERIALPROFILESET, IFCMATERIALPROFILEWITHOFFSETS, IFCMATERIALPROFILE, IFCMATERIALLAYERSET, IFCMATERIALLAYERWITHOFFSETS, IFCMATERIALLAYER],\n 248100487: [IFCMATERIALLAYERWITHOFFSETS],\n 2235152071: [IFCMATERIALPROFILEWITHOFFSETS],\n 1507914824: [IFCMATERIALPROFILESETUSAGETAPERING, IFCMATERIALPROFILESETUSAGE, IFCMATERIALLAYERSETUSAGE],\n 1918398963: [IFCCONVERSIONBASEDUNITWITHOFFSET, IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 677532197: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDITEM, IFCINDEXEDCOLOURMAP, IFCCURVESTYLEFONTPATTERN, IFCCURVESTYLEFONTANDSCALING, IFCCURVESTYLEFONT, IFCCOLOURRGB, IFCCOLOURSPECIFICATION, IFCCOLOURRGBLIST, IFCTEXTUREVERTEXLIST, IFCTEXTUREVERTEX, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR, IFCTEXTURECOORDINATE, IFCTEXTSTYLETEXTMODEL, IFCTEXTSTYLEFORDEFINEDFONT, IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE, IFCSURFACETEXTURE, IFCSURFACESTYLEWITHTEXTURES, IFCSURFACESTYLERENDERING, IFCSURFACESTYLESHADING, IFCSURFACESTYLEREFRACTION, IFCSURFACESTYLELIGHTING],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCMIRROREDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 986844984: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY, IFCPROPERTY, IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES, IFCPREDEFINEDPROPERTIES, IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES, IFCEXTENDEDPROPERTIES, IFCPROPERTYENUMERATION],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCSTYLEDITEM],\n 2439245199: [IFCRESOURCECONSTRAINTRELATIONSHIP, IFCRESOURCEAPPROVALRELATIONSHIP, IFCPROPERTYDEPENDENCYRELATIONSHIP, IFCORGANIZATIONRELATIONSHIP, IFCMATERIALRELATIONSHIP, IFCEXTERNALREFERENCERELATIONSHIP, IFCDOCUMENTINFORMATIONRELATIONSHIP, IFCCURRENCYRELATIONSHIP, IFCAPPROVALRELATIONSHIP],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 1054537805: [IFCRESOURCETIME, IFCLAGTIME, IFCEVENTTIME, IFCWORKTIME, IFCTASKTIMERECURRING, IFCTASKTIME],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC, IFCSTRUCTURALLOADORRESULT, IFCSTRUCTURALLOADCONFIGURATION],\n 609421318: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 1549132990: [IFCTASKTIMERECURRING],\n 280115917: [IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 3264961684: [IFCCOLOURRGB],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 2889183280: [IFCCONVERSIONBASEDUNITWITHOFFSET],\n 3632507154: [IFCMIRROREDPROFILEDEF],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 297599258: [IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES],\n 2556980723: [IFCADVANCEDFACE, IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 3008276851: [IFCADVANCEDFACE],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1437953363: [IFCINDEXEDTRIANGLETEXTUREMAP],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 3079605661: [IFCMATERIALPROFILESETUSAGETAPERING],\n 219451334: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT],\n 3778827333: [IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES],\n 1775413392: [IFCTEXTSTYLEFONTMODEL],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1680319473: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET],\n 1482703590: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE],\n 2090586900: [IFCELEMENTQUANTITY],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 723233188: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 2513912981: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID],\n 1260650574: [IFCSWEPTDISKSOLIDPOLYGONAL],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 901063453: [IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS],\n 3736923433: [IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE],\n 2347495698: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE],\n 3698973494: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 574549367: [IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2485617015: [IFCREPARAMETRISEDCOMPOSITECURVESEGMENT],\n 2574617495: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE],\n 3419103109: [IFCPROJECTLIBRARY, IFCPROJECT],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE],\n 339256511: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE],\n 477187591: [IFCEXTRUDEDAREASOLIDTAPERED],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 178912537: [IFCINDEXEDPOLYGONALFACEWITHVOIDS],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP],\n 3888040117: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 3967405729: [IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 2945172077: [IFCPROCEDURE, IFCEVENT, IFCTASK],\n 4208778838: [IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY],\n 3521284610: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR],\n 1307041759: [IFCRELASSIGNSTOGROUPBYFACTOR],\n 1865459582: [IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL],\n 826625072: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT],\n 3451746338: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL],\n 3523091289: [IFCRELSPACEBOUNDARY2NDLEVEL],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 1856042241: [IFCREVOLVEDAREASOLIDTAPERED],\n 1412071761: [IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT],\n 710998568: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING],\n 3893378262: [IFCSPACETYPE],\n 3544373492: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 699246055: [IFCSEAMCURVE, IFCINTERSECTIONCURVE],\n 2387106220: [IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET],\n 2296667514: [IFCOCCUPANT],\n 1635779807: [IFCADVANCEDBREPWITHVOIDS],\n 2887950389: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS],\n 167062518: [IFCRATIONALBSPLINESURFACEWITHKNOTS],\n 1260505505: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE],\n 1950629157: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE],\n 3732776249: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE],\n 15328376: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER],\n 2590856083: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE],\n 2853485674: [IFCEXTERNALSPATIALELEMENT],\n 807026263: [IFCFACETEDBREPWITHVOIDS],\n 2827207264: [IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE],\n 3009222698: [IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE],\n 263784265: [IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE],\n 2706460486: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 3588315303: [IFCOPENINGSTANDARDCASE],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 964333572: [IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE],\n 682877961: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 1004757350: [IFCSTRUCTURALLINEARACTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1252848954: [IFCSTRUCTURALLOADCASE],\n 3657597509: [IFCSTRUCTURALPLANARACTION],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS],\n 2461110595: [IFCRATIONALBSPLINECURVEWITHKNOTS],\n 1136057603: [IFCOUTERBOUNDARYCURVE],\n 3299480353: [IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY],\n 843113511: [IFCCOLUMNSTANDARDCASE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE],\n 3205830791: [IFCDISTRIBUTIONCIRCUIT],\n 395920057: [IFCDOORSTANDARDCASE],\n 1658829314: [IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE],\n 2058353004: [IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER],\n 4278956645: [IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX],\n 3132237377: [IFCFAN, IFCCOMPRESSOR, IFCPUMP],\n 987401354: [IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT],\n 707683696: [IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK],\n 2223149337: [IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP],\n 3508470533: [IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR],\n 1073191201: [IFCMEMBERSTANDARDCASE],\n 3171933400: [IFCPLATESTANDARDCASE],\n 1529196076: [IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE],\n 2391406946: [IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE],\n 3304561284: [IFCWINDOWSTANDARDCASE],\n 753842376: [IFCBEAMSTANDARDCASE],\n 1062813311: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT]\n};\nInversePropertyDef[2] = {\n 3630933823: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 130549933: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"ApprovedObjects\", IFCRELASSOCIATESAPPROVAL, 5, true], [\"ApprovedResources\", IFCRESOURCEAPPROVALRELATIONSHIP, 3, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 3, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 2, true]],\n 1959218052: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 1466758467: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 602808272: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3200245327: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 2242383968: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 1040185647: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 3548104201: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 2655187982: [[\"LibraryInfoForObjects\", IFCRELASSOCIATESLIBRARY, 5, true], [\"HasLibraryReferences\", IFCLIBRARYREFERENCE, 5, true]],\n 3452421091: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"LibraryRefForObjects\", IFCRELASSOCIATESLIBRARY, 5, true]],\n 760658860: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 248100487: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3303938423: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1847252529: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 2235152071: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 164193824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 552965576: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 1507914824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3368373690: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 2251480897: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3958567839: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3843373140: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 986844984: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3710013099: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2044713172: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"HasShapeAspects\", IFCSHAPEASPECT, 4, true], [\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 626085974: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3101149627: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1377556343: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798115385: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1310608509: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2705031697: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 616511568: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3150382593: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 747523909: [[\"ClassificationForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 647927063: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"ClassificationRefForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 1485152156: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 370225590: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3050246964: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2889183280: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2713554722: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3632507154: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1154170062: [[\"DocumentInfoForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true], [\"HasDocumentReferences\", IFCDOCUMENTREFERENCE, 4, true], [\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 3, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 2, true]],\n 3732053477: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"DocumentRefForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true]],\n 3900360178: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 297599258: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2556980723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 1809719519: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 2453401579: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 3590301190: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3905492369: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3741457305: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1402838566: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1838606355: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"IsRelatedWith\", IFCMATERIALRELATIONSHIP, 3, true], [\"RelatesTo\", IFCMATERIALRELATIONSHIP, 2, true]],\n 3708119e3: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialConstituentSet\", IFCMATERIALCONSTITUENTSET, 2, false]],\n 2852063980: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1303795690: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3079605661: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3404854881: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3265635763: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2998442950: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2665983363: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2529465313: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2519244187: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 597895409: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 2004835150: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3778827333: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 2802850158: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2598011224: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1680319473: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 3357820518: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1482703590: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2090586900: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3615266464: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3413951693: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1580146022: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2778083089: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2042790032: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 4165799628: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1509187699: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124623270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3692461612: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 723233188: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2233826070: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1096409881: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3071757647: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 901063453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2715220739: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true]],\n 3736923433: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3698973494: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 427810014: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1417489154: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1299126871: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2543172580: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3406155212: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 669184980: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3207858831: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4261334040: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2898889636: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1123145078: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 574549367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1675464909: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2059837836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1383045692: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2205249479: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2485617015: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2574617495: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3419103109: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 1815067380: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2506170314: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2629017746: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 32440307: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 526551008: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1472233963: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2777663545: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2835456948: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4024345920: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 477187591: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2804161546: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2652556860: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4095422895: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 987898635: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1484403080: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 178912537: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true]],\n 2294589976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true]],\n 572779678: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 428585644: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1281925730: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true]],\n 3388369263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1682466193: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 603570806: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3967405729: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 569719735: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 653396225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 871118103: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 4166981789: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2752243245: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 941946838: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1451395588: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 492091185: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Defines\", IFCRELDEFINESBYTEMPLATE, 5, true]],\n 3650150729: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 110355661: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 3521284610: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3219374653: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2770003689: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2798486643: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3765753017: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3523091289: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true]],\n 1521410863: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true], [\"Corresponds\", IFCRELSPACEBOUNDARY2NDLEVEL, 10, true]],\n 816062949: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3243963512: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3663146110: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 1412071761: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 710998568: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 463610769: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2481509218: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 451544542: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4015995234: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 603775116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4095615324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 699246055: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2028607225: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 3206491090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2387106220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 1935646853: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2916149573: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 336235671: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 512836454: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1635779807: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2603310189: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2887950389: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 167062518: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1334484129: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 1950629157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2197970202: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2937912522: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3893394355: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3875453745: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3732776249: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 15328376: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2185764099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 4105962743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1525564444: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1213902940: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2963535650: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1714330368: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2323601079: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2397081782: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1704287377: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 132023988: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4148101412: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2853485674: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 807026263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1893162501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1509553395: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3493046030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2571569899: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3946677679: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3113134337: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1114901282: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 3079942009: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3566463478: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1158309216: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2839578677: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3724593414: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1469900589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 683857671: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 964333572: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2310774935: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2781568857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2157484638: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4074543187: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1072016465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 338393293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1004757350: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2757150158: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 3657597509: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3101698114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 413509423: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3081323446: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2415094496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3593883385: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2391383451: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 926996030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4009809668: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4088093105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 1532957894: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1967976161: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2461110595: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1136057603: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3299480353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 39481116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1177604601: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 2188180465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2674252688: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3296154744: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2611217952: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1677625105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 905975707: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 400855858: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"CoversElements\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 3205830791: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3242481149: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2417008758: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2814081492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3747195512: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 484807127: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1209101575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2188021234: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3319311131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2068733104: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4175244083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2176052936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 76236018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 629592764: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1437502449: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1911478936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2474470126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 144952367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3694346114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 310824031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3612865200: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1156407060: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 738039164: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 655969474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 90941305: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1232101972: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2572171363: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3053780830: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1329646415: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3127900445: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3027962421: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3420628829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1999602285: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1404847402: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 385403989: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1162798199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 812556717: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3825984169: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3026737570: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3179687236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4292641817: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4207607924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4156078855: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4237592921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 486154966: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1634111441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 177149247: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2056796094: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 277319702: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2906023776: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 32344328: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2938176219: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 635142910: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3758799889: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1051757585: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4217484030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3902619387: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 639361253: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3221913625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3571504051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2272882330: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4136498852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3640358203: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4074379575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 562808652: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 342316401: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3518393246: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1360408905: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1904799276: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 862014818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3310460725: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 264262732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 402227799: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1003880860: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3415622556: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 819412036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1426591983: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 182646315: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 2295281155: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4086658281: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 630975310: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4288193352: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3087945054: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 25142252: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]]\n};\nConstructors[2] = {\n 3630933823: (a) => new IFC4.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC4.IfcAddress(a[0], a[1], a[2]),\n 639542469: (a) => new IFC4.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC4.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 130549933: (a) => new IFC4.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4037036970: (a) => new IFC4.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC4.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC4.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC4.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC4.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2859738748: (_) => new IFC4.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC4.IfcConnectionPointGeometry(a[0], a[1]),\n 2732653382: (a) => new IFC4.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 775493141: (a) => new IFC4.IfcConnectionVolumeGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC4.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1785450214: (a) => new IFC4.IfcCoordinateOperation(a[0], a[1]),\n 1466758467: (a) => new IFC4.IfcCoordinateReferenceSystem(a[0], a[1], a[2], a[3]),\n 602808272: (a) => new IFC4.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1765591967: (a) => new IFC4.IfcDerivedUnit(a[0], a[1], a[2]),\n 1045800335: (a) => new IFC4.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC4.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4294318154: (_) => new IFC4.IfcExternalInformation(),\n 3200245327: (a) => new IFC4.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC4.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC4.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC4.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC4.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC4.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC4.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3452421091: (a) => new IFC4.IfcLibraryReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4162380809: (a) => new IFC4.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC4.IfcLightIntensityDistribution(a[0], a[1]),\n 3057273783: (a) => new IFC4.IfcMapConversion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1847130766: (a) => new IFC4.IfcMaterialClassificationRelationship(a[0], a[1]),\n 760658860: (_) => new IFC4.IfcMaterialDefinition(),\n 248100487: (a) => new IFC4.IfcMaterialLayer(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3303938423: (a) => new IFC4.IfcMaterialLayerSet(a[0], a[1], a[2]),\n 1847252529: (a) => new IFC4.IfcMaterialLayerWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2199411900: (a) => new IFC4.IfcMaterialList(a[0]),\n 2235152071: (a) => new IFC4.IfcMaterialProfile(a[0], a[1], a[2], a[3], a[4], a[5]),\n 164193824: (a) => new IFC4.IfcMaterialProfileSet(a[0], a[1], a[2], a[3]),\n 552965576: (a) => new IFC4.IfcMaterialProfileWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1507914824: (_) => new IFC4.IfcMaterialUsageDefinition(),\n 2597039031: (a) => new IFC4.IfcMeasureWithUnit(a[0], a[1]),\n 3368373690: (a) => new IFC4.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706619895: (a) => new IFC4.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC4.IfcNamedUnit(a[0], a[1]),\n 3701648758: (_) => new IFC4.IfcObjectPlacement(),\n 2251480897: (a) => new IFC4.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4251960020: (a) => new IFC4.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1207048766: (a) => new IFC4.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC4.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC4.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC4.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC4.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC4.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 677532197: (_) => new IFC4.IfcPresentationItem(),\n 2022622350: (a) => new IFC4.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC4.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC4.IfcPresentationStyle(a[0]),\n 2417041796: (a) => new IFC4.IfcPresentationStyleAssignment(a[0]),\n 2095639259: (a) => new IFC4.IfcProductRepresentation(a[0], a[1], a[2]),\n 3958567839: (a) => new IFC4.IfcProfileDef(a[0], a[1]),\n 3843373140: (a) => new IFC4.IfcProjectedCRS(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 986844984: (_) => new IFC4.IfcPropertyAbstraction(),\n 3710013099: (a) => new IFC4.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC4.IfcQuantityArea(a[0], a[1], a[2], a[3], a[4]),\n 2093928680: (a) => new IFC4.IfcQuantityCount(a[0], a[1], a[2], a[3], a[4]),\n 931644368: (a) => new IFC4.IfcQuantityLength(a[0], a[1], a[2], a[3], a[4]),\n 3252649465: (a) => new IFC4.IfcQuantityTime(a[0], a[1], a[2], a[3], a[4]),\n 2405470396: (a) => new IFC4.IfcQuantityVolume(a[0], a[1], a[2], a[3], a[4]),\n 825690147: (a) => new IFC4.IfcQuantityWeight(a[0], a[1], a[2], a[3], a[4]),\n 3915482550: (a) => new IFC4.IfcRecurrencePattern(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2433181523: (a) => new IFC4.IfcReference(a[0], a[1], a[2], a[3], a[4]),\n 1076942058: (a) => new IFC4.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC4.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC4.IfcRepresentationItem(),\n 1660063152: (a) => new IFC4.IfcRepresentationMap(a[0], a[1]),\n 2439245199: (a) => new IFC4.IfcResourceLevelRelationship(a[0], a[1]),\n 2341007311: (a) => new IFC4.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC4.IfcSIUnit(a[0], a[1], a[2]),\n 1054537805: (a) => new IFC4.IfcSchedulingTime(a[0], a[1], a[2]),\n 867548509: (a) => new IFC4.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC4.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC4.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 2273995522: (a) => new IFC4.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC4.IfcStructuralLoad(a[0]),\n 3478079324: (a) => new IFC4.IfcStructuralLoadConfiguration(a[0], a[1], a[2]),\n 609421318: (a) => new IFC4.IfcStructuralLoadOrResult(a[0]),\n 2525727697: (a) => new IFC4.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC4.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC4.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC4.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC4.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 2934153892: (a) => new IFC4.IfcSurfaceReinforcementArea(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC4.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC4.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC4.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC4.IfcSurfaceStyleShading(a[0], a[1]),\n 1351298697: (a) => new IFC4.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC4.IfcSurfaceTexture(a[0], a[1], a[2], a[3], a[4]),\n 985171141: (a) => new IFC4.IfcTable(a[0], a[1], a[2]),\n 2043862942: (a) => new IFC4.IfcTableColumn(a[0], a[1], a[2], a[3], a[4]),\n 531007025: (a) => new IFC4.IfcTableRow(a[0], a[1]),\n 1549132990: (a) => new IFC4.IfcTaskTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 2771591690: (a) => new IFC4.IfcTaskTimeRecurring(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20]),\n 912023232: (a) => new IFC4.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1447204868: (a) => new IFC4.IfcTextStyle(a[0], a[1], a[2], a[3], a[4]),\n 2636378356: (a) => new IFC4.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC4.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 280115917: (a) => new IFC4.IfcTextureCoordinate(a[0]),\n 1742049831: (a) => new IFC4.IfcTextureCoordinateGenerator(a[0], a[1], a[2]),\n 2552916305: (a) => new IFC4.IfcTextureMap(a[0], a[1], a[2]),\n 1210645708: (a) => new IFC4.IfcTextureVertex(a[0]),\n 3611470254: (a) => new IFC4.IfcTextureVertexList(a[0]),\n 1199560280: (a) => new IFC4.IfcTimePeriod(a[0], a[1]),\n 3101149627: (a) => new IFC4.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 581633288: (a) => new IFC4.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC4.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC4.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC4.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC4.IfcVertex(),\n 1907098498: (a) => new IFC4.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC4.IfcVirtualGridIntersection(a[0], a[1]),\n 1236880293: (a) => new IFC4.IfcWorkTime(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3869604511: (a) => new IFC4.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 3798115385: (a) => new IFC4.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC4.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC4.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC4.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3150382593: (a) => new IFC4.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 747523909: (a) => new IFC4.IfcClassification(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 647927063: (a) => new IFC4.IfcClassificationReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3285139300: (a) => new IFC4.IfcColourRgbList(a[0]),\n 3264961684: (a) => new IFC4.IfcColourSpecification(a[0]),\n 1485152156: (a) => new IFC4.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC4.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC4.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC4.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC4.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC4.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 2713554722: (a) => new IFC4.IfcConversionBasedUnitWithOffset(a[0], a[1], a[2], a[3], a[4]),\n 539742890: (a) => new IFC4.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3800577675: (a) => new IFC4.IfcCurveStyle(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC4.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC4.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC4.IfcCurveStyleFontPattern(a[0], a[1]),\n 3632507154: (a) => new IFC4.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 1154170062: (a) => new IFC4.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC4.IfcDocumentInformationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3732053477: (a) => new IFC4.IfcDocumentReference(a[0], a[1], a[2], a[3], a[4]),\n 3900360178: (a) => new IFC4.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC4.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 211053100: (a) => new IFC4.IfcEventTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 297599258: (a) => new IFC4.IfcExtendedProperties(a[0], a[1], a[2]),\n 1437805879: (a) => new IFC4.IfcExternalReferenceRelationship(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC4.IfcFace(a[0]),\n 1809719519: (a) => new IFC4.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC4.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC4.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC4.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC4.IfcFillAreaStyle(a[0], a[1], a[2]),\n 3448662350: (a) => new IFC4.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC4.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC4.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3590301190: (a) => new IFC4.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC4.IfcGridPlacement(a[0], a[1]),\n 812098782: (a) => new IFC4.IfcHalfSpaceSolid(a[0], a[1]),\n 3905492369: (a) => new IFC4.IfcImageTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3570813810: (a) => new IFC4.IfcIndexedColourMap(a[0], a[1], a[2], a[3]),\n 1437953363: (a) => new IFC4.IfcIndexedTextureMap(a[0], a[1], a[2]),\n 2133299955: (a) => new IFC4.IfcIndexedTriangleTextureMap(a[0], a[1], a[2], a[3]),\n 3741457305: (a) => new IFC4.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1585845231: (a) => new IFC4.IfcLagTime(a[0], a[1], a[2], a[3], a[4]),\n 1402838566: (a) => new IFC4.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC4.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC4.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC4.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC4.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC4.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2624227202: (a) => new IFC4.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC4.IfcLoop(),\n 2347385850: (a) => new IFC4.IfcMappedItem(a[0], a[1]),\n 1838606355: (a) => new IFC4.IfcMaterial(a[0], a[1], a[2]),\n 3708119e3: (a) => new IFC4.IfcMaterialConstituent(a[0], a[1], a[2], a[3], a[4]),\n 2852063980: (a) => new IFC4.IfcMaterialConstituentSet(a[0], a[1], a[2]),\n 2022407955: (a) => new IFC4.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1303795690: (a) => new IFC4.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3], a[4]),\n 3079605661: (a) => new IFC4.IfcMaterialProfileSetUsage(a[0], a[1], a[2]),\n 3404854881: (a) => new IFC4.IfcMaterialProfileSetUsageTapering(a[0], a[1], a[2], a[3], a[4]),\n 3265635763: (a) => new IFC4.IfcMaterialProperties(a[0], a[1], a[2], a[3]),\n 853536259: (a) => new IFC4.IfcMaterialRelationship(a[0], a[1], a[2], a[3], a[4]),\n 2998442950: (a) => new IFC4.IfcMirroredProfileDef(a[0], a[1], a[2], a[3]),\n 219451334: (a) => new IFC4.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 2665983363: (a) => new IFC4.IfcOpenShell(a[0]),\n 1411181986: (a) => new IFC4.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1029017970: (a) => new IFC4.IfcOrientedEdge(a[0], a[1]),\n 2529465313: (a) => new IFC4.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC4.IfcPath(a[0]),\n 3021840470: (a) => new IFC4.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC4.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2004835150: (a) => new IFC4.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC4.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC4.IfcPoint(),\n 4022376103: (a) => new IFC4.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC4.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC4.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC4.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 3727388367: (a) => new IFC4.IfcPreDefinedItem(a[0]),\n 3778827333: (_) => new IFC4.IfcPreDefinedProperties(),\n 1775413392: (a) => new IFC4.IfcPreDefinedTextFont(a[0]),\n 673634403: (a) => new IFC4.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 2802850158: (a) => new IFC4.IfcProfileProperties(a[0], a[1], a[2], a[3]),\n 2598011224: (a) => new IFC4.IfcProperty(a[0], a[1]),\n 1680319473: (a) => new IFC4.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC4.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3357820518: (a) => new IFC4.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 1482703590: (a) => new IFC4.IfcPropertyTemplateDefinition(a[0], a[1], a[2], a[3]),\n 2090586900: (a) => new IFC4.IfcQuantitySet(a[0], a[1], a[2], a[3]),\n 3615266464: (a) => new IFC4.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC4.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1580146022: (a) => new IFC4.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC4.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2943643501: (a) => new IFC4.IfcResourceApprovalRelationship(a[0], a[1], a[2], a[3]),\n 1608871552: (a) => new IFC4.IfcResourceConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1042787934: (a) => new IFC4.IfcResourceTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2778083089: (a) => new IFC4.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2042790032: (a) => new IFC4.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC4.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC4.IfcSectionedSpine(a[0], a[1], a[2]),\n 4124623270: (a) => new IFC4.IfcShellBasedSurfaceModel(a[0]),\n 3692461612: (a) => new IFC4.IfcSimpleProperty(a[0], a[1]),\n 2609359061: (a) => new IFC4.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC4.IfcSolidModel(),\n 1595516126: (a) => new IFC4.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC4.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC4.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC4.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC4.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC4.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2233826070: (a) => new IFC4.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC4.IfcSurface(),\n 1878645084: (a) => new IFC4.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC4.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC4.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 1096409881: (a) => new IFC4.IfcSweptDiskSolidPolygonal(a[0], a[1], a[2], a[3], a[4], a[5]),\n 230924584: (a) => new IFC4.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC4.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 901063453: (_) => new IFC4.IfcTessellatedItem(),\n 4282788508: (a) => new IFC4.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC4.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 1983826977: (a) => new IFC4.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2715220739: (a) => new IFC4.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1628702193: (a) => new IFC4.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3736923433: (a) => new IFC4.IfcTypeProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2347495698: (a) => new IFC4.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3698973494: (a) => new IFC4.IfcTypeResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 427810014: (a) => new IFC4.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1417489154: (a) => new IFC4.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC4.IfcVertexLoop(a[0]),\n 1299126871: (a) => new IFC4.IfcWindowStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2543172580: (a) => new IFC4.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3406155212: (a) => new IFC4.IfcAdvancedFace(a[0], a[1], a[2]),\n 669184980: (a) => new IFC4.IfcAnnotationFillArea(a[0], a[1]),\n 3207858831: (a) => new IFC4.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4261334040: (a) => new IFC4.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC4.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC4.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC4.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC4.IfcBoundedSurface(),\n 2581212453: (a) => new IFC4.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC4.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC4.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1123145078: (a) => new IFC4.IfcCartesianPoint(a[0]),\n 574549367: (_) => new IFC4.IfcCartesianPointList(),\n 1675464909: (a) => new IFC4.IfcCartesianPointList2D(a[0]),\n 2059837836: (a) => new IFC4.IfcCartesianPointList3D(a[0]),\n 59481748: (a) => new IFC4.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC4.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC4.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC4.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC4.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC4.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC4.IfcClosedShell(a[0]),\n 776857604: (a) => new IFC4.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC4.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 2485617015: (a) => new IFC4.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 2574617495: (a) => new IFC4.IfcConstructionResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3419103109: (a) => new IFC4.IfcContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1815067380: (a) => new IFC4.IfcCrewResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC4.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC4.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC4.IfcCurve(),\n 2827736869: (a) => new IFC4.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 2629017746: (a) => new IFC4.IfcCurveBoundedSurface(a[0], a[1], a[2]),\n 32440307: (a) => new IFC4.IfcDirection(a[0]),\n 526551008: (a) => new IFC4.IfcDoorStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1472233963: (a) => new IFC4.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC4.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC4.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC4.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC4.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 4024345920: (a) => new IFC4.IfcEventType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 477187591: (a) => new IFC4.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2804161546: (a) => new IFC4.IfcExtrudedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 2047409740: (a) => new IFC4.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC4.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 315944413: (a) => new IFC4.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 2652556860: (a) => new IFC4.IfcFixedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4238390223: (a) => new IFC4.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC4.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4095422895: (a) => new IFC4.IfcGeographicElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC4.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC4.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 178912537: (a) => new IFC4.IfcIndexedPolygonalFace(a[0]),\n 2294589976: (a) => new IFC4.IfcIndexedPolygonalFaceWithVoids(a[0], a[1]),\n 572779678: (a) => new IFC4.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 428585644: (a) => new IFC4.IfcLaborResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1281925730: (a) => new IFC4.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC4.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC4.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 3388369263: (a) => new IFC4.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC4.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 1682466193: (a) => new IFC4.IfcPcurve(a[0], a[1]),\n 603570806: (a) => new IFC4.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC4.IfcPlane(a[0]),\n 759155922: (a) => new IFC4.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC4.IfcPreDefinedCurveFont(a[0]),\n 3967405729: (a) => new IFC4.IfcPreDefinedPropertySet(a[0], a[1], a[2], a[3]),\n 569719735: (a) => new IFC4.IfcProcedureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2945172077: (a) => new IFC4.IfcProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4208778838: (a) => new IFC4.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC4.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 653396225: (a) => new IFC4.IfcProjectLibrary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 871118103: (a) => new IFC4.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4166981789: (a) => new IFC4.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC4.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC4.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 1451395588: (a) => new IFC4.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 492091185: (a) => new IFC4.IfcPropertySetTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3650150729: (a) => new IFC4.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC4.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3521284610: (a) => new IFC4.IfcPropertyTemplate(a[0], a[1], a[2], a[3]),\n 3219374653: (a) => new IFC4.IfcProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2770003689: (a) => new IFC4.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC4.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC4.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3765753017: (a) => new IFC4.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3939117080: (a) => new IFC4.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC4.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC4.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC4.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1027710054: (a) => new IFC4.IfcRelAssignsToGroupByFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278684876: (a) => new IFC4.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC4.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC4.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC4.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 4095574036: (a) => new IFC4.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC4.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC4.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC4.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC4.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC4.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 826625072: (a) => new IFC4.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC4.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC4.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC4.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC4.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC4.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC4.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC4.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC4.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC4.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC4.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC4.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2565941209: (a) => new IFC4.IfcRelDeclares(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC4.IfcRelDecomposes(a[0], a[1], a[2], a[3]),\n 693640335: (a) => new IFC4.IfcRelDefines(a[0], a[1], a[2], a[3]),\n 1462361463: (a) => new IFC4.IfcRelDefinesByObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4186316022: (a) => new IFC4.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 307848117: (a) => new IFC4.IfcRelDefinesByTemplate(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC4.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC4.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC4.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 427948657: (a) => new IFC4.IfcRelInterferesElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3268803585: (a) => new IFC4.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 750771296: (a) => new IFC4.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC4.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4122056220: (a) => new IFC4.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 366585022: (a) => new IFC4.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC4.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3523091289: (a) => new IFC4.IfcRelSpaceBoundary1stLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1521410863: (a) => new IFC4.IfcRelSpaceBoundary2ndLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1401173127: (a) => new IFC4.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 816062949: (a) => new IFC4.IfcReparametrisedCompositeCurveSegment(a[0], a[1], a[2], a[3]),\n 2914609552: (a) => new IFC4.IfcResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1856042241: (a) => new IFC4.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 3243963512: (a) => new IFC4.IfcRevolvedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 4158566097: (a) => new IFC4.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC4.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 3663146110: (a) => new IFC4.IfcSimplePropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1412071761: (a) => new IFC4.IfcSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 710998568: (a) => new IFC4.IfcSpatialElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2706606064: (a) => new IFC4.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC4.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 463610769: (a) => new IFC4.IfcSpatialZone(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2481509218: (a) => new IFC4.IfcSpatialZoneType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 451544542: (a) => new IFC4.IfcSphere(a[0], a[1]),\n 4015995234: (a) => new IFC4.IfcSphericalSurface(a[0], a[1]),\n 3544373492: (a) => new IFC4.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC4.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC4.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC4.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC4.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC4.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603775116: (a) => new IFC4.IfcStructuralSurfaceReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4095615324: (a) => new IFC4.IfcSubContractResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 699246055: (a) => new IFC4.IfcSurfaceCurve(a[0], a[1], a[2]),\n 2028607225: (a) => new IFC4.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC4.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC4.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC4.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3473067441: (a) => new IFC4.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3206491090: (a) => new IFC4.IfcTaskType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2387106220: (a) => new IFC4.IfcTessellatedFaceSet(a[0]),\n 1935646853: (a) => new IFC4.IfcToroidalSurface(a[0], a[1], a[2]),\n 2097647324: (a) => new IFC4.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2916149573: (a) => new IFC4.IfcTriangulatedFaceSet(a[0], a[1], a[2], a[3], a[4]),\n 336235671: (a) => new IFC4.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 512836454: (a) => new IFC4.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2296667514: (a) => new IFC4.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1635779807: (a) => new IFC4.IfcAdvancedBrep(a[0]),\n 2603310189: (a) => new IFC4.IfcAdvancedBrepWithVoids(a[0], a[1]),\n 1674181508: (a) => new IFC4.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2887950389: (a) => new IFC4.IfcBSplineSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 167062518: (a) => new IFC4.IfcBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC4.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC4.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC4.IfcBoundedCurve(),\n 4031249490: (a) => new IFC4.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1950629157: (a) => new IFC4.IfcBuildingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3124254112: (a) => new IFC4.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2197970202: (a) => new IFC4.IfcChimneyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC4.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3893394355: (a) => new IFC4.IfcCivilElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 300633059: (a) => new IFC4.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3875453745: (a) => new IFC4.IfcComplexPropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3732776249: (a) => new IFC4.IfcCompositeCurve(a[0], a[1]),\n 15328376: (a) => new IFC4.IfcCompositeCurveOnSurface(a[0], a[1]),\n 2510884976: (a) => new IFC4.IfcConic(a[0]),\n 2185764099: (a) => new IFC4.IfcConstructionEquipmentResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4105962743: (a) => new IFC4.IfcConstructionMaterialResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1525564444: (a) => new IFC4.IfcConstructionProductResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2559216714: (a) => new IFC4.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293443760: (a) => new IFC4.IfcControl(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3895139033: (a) => new IFC4.IfcCostItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1419761937: (a) => new IFC4.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916426348: (a) => new IFC4.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC4.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1457835157: (a) => new IFC4.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1213902940: (a) => new IFC4.IfcCylindricalSurface(a[0], a[1]),\n 3256556792: (a) => new IFC4.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC4.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2963535650: (a) => new IFC4.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 1714330368: (a) => new IFC4.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2323601079: (a) => new IFC4.IfcDoorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 445594917: (a) => new IFC4.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC4.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1758889154: (a) => new IFC4.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC4.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2397081782: (a) => new IFC4.IfcElementAssemblyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC4.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC4.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC4.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC4.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 132023988: (a) => new IFC4.IfcEngineType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3174744832: (a) => new IFC4.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC4.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4148101412: (a) => new IFC4.IfcEvent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2853485674: (a) => new IFC4.IfcExternalSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 807026263: (a) => new IFC4.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC4.IfcFacetedBrepWithVoids(a[0], a[1]),\n 647756555: (a) => new IFC4.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2489546625: (a) => new IFC4.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2827207264: (a) => new IFC4.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC4.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC4.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC4.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC4.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC4.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC4.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC4.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC4.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC4.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC4.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1893162501: (a) => new IFC4.IfcFootingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 263784265: (a) => new IFC4.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1509553395: (a) => new IFC4.IfcFurniture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3493046030: (a) => new IFC4.IfcGeographicElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009204131: (a) => new IFC4.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706460486: (a) => new IFC4.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC4.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC4.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2571569899: (a) => new IFC4.IfcIndexedPolyCurve(a[0], a[1], a[2]),\n 3946677679: (a) => new IFC4.IfcInterceptorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3113134337: (a) => new IFC4.IfcIntersectionCurve(a[0], a[1], a[2]),\n 2391368822: (a) => new IFC4.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC4.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC4.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1051575348: (a) => new IFC4.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC4.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 377706215: (a) => new IFC4.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2108223431: (a) => new IFC4.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1114901282: (a) => new IFC4.IfcMedicalDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3181161470: (a) => new IFC4.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC4.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4143007308: (a) => new IFC4.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC4.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3079942009: (a) => new IFC4.IfcOpeningStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2837617999: (a) => new IFC4.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC4.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3566463478: (a) => new IFC4.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3327091369: (a) => new IFC4.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1158309216: (a) => new IFC4.IfcPileType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 804291784: (a) => new IFC4.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC4.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC4.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2839578677: (a) => new IFC4.IfcPolygonalFaceSet(a[0], a[1], a[2], a[3]),\n 3724593414: (a) => new IFC4.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC4.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC4.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC4.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3651124850: (a) => new IFC4.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1842657554: (a) => new IFC4.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC4.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2893384427: (a) => new IFC4.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2324767716: (a) => new IFC4.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1469900589: (a) => new IFC4.IfcRampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 683857671: (a) => new IFC4.IfcRationalBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3027567501: (a) => new IFC4.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 964333572: (a) => new IFC4.IfcReinforcingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC4.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2310774935: (a) => new IFC4.IfcReinforcingMeshType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 160246688: (a) => new IFC4.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2781568857: (a) => new IFC4.IfcRoofType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1768891740: (a) => new IFC4.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2157484638: (a) => new IFC4.IfcSeamCurve(a[0], a[1], a[2]),\n 4074543187: (a) => new IFC4.IfcShadingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4097777520: (a) => new IFC4.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC4.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1072016465: (a) => new IFC4.IfcSolarDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC4.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC4.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC4.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3112655638: (a) => new IFC4.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC4.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 338393293: (a) => new IFC4.IfcStairType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC4.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1179482911: (a) => new IFC4.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1004757350: (a) => new IFC4.IfcStructuralCurveAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4243806635: (a) => new IFC4.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 214636428: (a) => new IFC4.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2445595289: (a) => new IFC4.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2757150158: (a) => new IFC4.IfcStructuralCurveReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1807405624: (a) => new IFC4.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1252848954: (a) => new IFC4.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2082059205: (a) => new IFC4.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 734778138: (a) => new IFC4.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1235345126: (a) => new IFC4.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC4.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3657597509: (a) => new IFC4.IfcStructuralSurfaceAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1975003073: (a) => new IFC4.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC4.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3101698114: (a) => new IFC4.IfcSurfaceFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2315554128: (a) => new IFC4.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC4.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 413509423: (a) => new IFC4.IfcSystemFurnitureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 5716631: (a) => new IFC4.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3824725483: (a) => new IFC4.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC4.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3081323446: (a) => new IFC4.IfcTendonAnchorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2415094496: (a) => new IFC4.IfcTendonType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 1692211062: (a) => new IFC4.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1620046519: (a) => new IFC4.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3593883385: (a) => new IFC4.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC4.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC4.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC4.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391383451: (a) => new IFC4.IfcVibrationIsolator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC4.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC4.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 926996030: (a) => new IFC4.IfcVoidingFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1898987631: (a) => new IFC4.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC4.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4009809668: (a) => new IFC4.IfcWindowType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4088093105: (a) => new IFC4.IfcWorkCalendar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1028945134: (a) => new IFC4.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4218914973: (a) => new IFC4.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 3342526732: (a) => new IFC4.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1033361043: (a) => new IFC4.IfcZone(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3821786052: (a) => new IFC4.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1411407467: (a) => new IFC4.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC4.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC4.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3460190687: (a) => new IFC4.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1532957894: (a) => new IFC4.IfcAudioVisualApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1967976161: (a) => new IFC4.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 2461110595: (a) => new IFC4.IfcBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 819618141: (a) => new IFC4.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 231477066: (a) => new IFC4.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1136057603: (a) => new IFC4.IfcBoundaryCurve(a[0], a[1]),\n 3299480353: (a) => new IFC4.IfcBuildingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2979338954: (a) => new IFC4.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 39481116: (a) => new IFC4.IfcBuildingElementPartType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1095909175: (a) => new IFC4.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1909888760: (a) => new IFC4.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1177604601: (a) => new IFC4.IfcBuildingSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2188180465: (a) => new IFC4.IfcBurnerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC4.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC4.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2674252688: (a) => new IFC4.IfcCableFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC4.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC4.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3296154744: (a) => new IFC4.IfcChimney(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2611217952: (a) => new IFC4.IfcCircle(a[0], a[1]),\n 1677625105: (a) => new IFC4.IfcCivilElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2301859152: (a) => new IFC4.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC4.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 905975707: (a) => new IFC4.IfcColumnStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 400855858: (a) => new IFC4.IfcCommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3850581409: (a) => new IFC4.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC4.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3898045240: (a) => new IFC4.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1060000209: (a) => new IFC4.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC4.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 335055490: (a) => new IFC4.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC4.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1973544240: (a) => new IFC4.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC4.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3961806047: (a) => new IFC4.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1335981549: (a) => new IFC4.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2635815018: (a) => new IFC4.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1599208980: (a) => new IFC4.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC4.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC4.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC4.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC4.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3205830791: (a) => new IFC4.IfcDistributionSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 395920057: (a) => new IFC4.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3242481149: (a) => new IFC4.IfcDoorStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 869906466: (a) => new IFC4.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC4.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC4.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 663422040: (a) => new IFC4.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2417008758: (a) => new IFC4.IfcElectricDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC4.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC4.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC4.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC4.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1658829314: (a) => new IFC4.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2814081492: (a) => new IFC4.IfcEngine(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3747195512: (a) => new IFC4.IfcEvaporativeCooler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 484807127: (a) => new IFC4.IfcEvaporator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1209101575: (a) => new IFC4.IfcExternalSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 346874300: (a) => new IFC4.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC4.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC4.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC4.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC4.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC4.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188021234: (a) => new IFC4.IfcFlowMeter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3132237377: (a) => new IFC4.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC4.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC4.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC4.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC4.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC4.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3319311131: (a) => new IFC4.IfcHeatExchanger(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2068733104: (a) => new IFC4.IfcHumidifier(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4175244083: (a) => new IFC4.IfcInterceptor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2176052936: (a) => new IFC4.IfcJunctionBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 76236018: (a) => new IFC4.IfcLamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 629592764: (a) => new IFC4.IfcLightFixture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1437502449: (a) => new IFC4.IfcMedicalDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC4.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1911478936: (a) => new IFC4.IfcMemberStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2474470126: (a) => new IFC4.IfcMotorConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 144952367: (a) => new IFC4.IfcOuterBoundaryCurve(a[0], a[1]),\n 3694346114: (a) => new IFC4.IfcOutlet(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1687234759: (a) => new IFC4.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 310824031: (a) => new IFC4.IfcPipeFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3612865200: (a) => new IFC4.IfcPipeSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3171933400: (a) => new IFC4.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1156407060: (a) => new IFC4.IfcPlateStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 738039164: (a) => new IFC4.IfcProtectiveDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 655969474: (a) => new IFC4.IfcProtectiveDeviceTrippingUnitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 90941305: (a) => new IFC4.IfcPump(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2262370178: (a) => new IFC4.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC4.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC4.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1232101972: (a) => new IFC4.IfcRationalBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 979691226: (a) => new IFC4.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2572171363: (a) => new IFC4.IfcReinforcingBarType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 2016517767: (a) => new IFC4.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3053780830: (a) => new IFC4.IfcSanitaryTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1783015770: (a) => new IFC4.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1329646415: (a) => new IFC4.IfcShadingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1529196076: (a) => new IFC4.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3127900445: (a) => new IFC4.IfcSlabElementedCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3027962421: (a) => new IFC4.IfcSlabStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3420628829: (a) => new IFC4.IfcSolarDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1999602285: (a) => new IFC4.IfcSpaceHeater(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1404847402: (a) => new IFC4.IfcStackTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC4.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC4.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2515109513: (a) => new IFC4.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 385403989: (a) => new IFC4.IfcStructuralLoadCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1621171031: (a) => new IFC4.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1162798199: (a) => new IFC4.IfcSwitchingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 812556717: (a) => new IFC4.IfcTank(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3825984169: (a) => new IFC4.IfcTransformer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3026737570: (a) => new IFC4.IfcTubeBundle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3179687236: (a) => new IFC4.IfcUnitaryControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4292641817: (a) => new IFC4.IfcUnitaryEquipment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4207607924: (a) => new IFC4.IfcValve(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2391406946: (a) => new IFC4.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4156078855: (a) => new IFC4.IfcWallElementedCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3512223829: (a) => new IFC4.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4237592921: (a) => new IFC4.IfcWasteTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3304561284: (a) => new IFC4.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 486154966: (a) => new IFC4.IfcWindowStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2874132201: (a) => new IFC4.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634111441: (a) => new IFC4.IfcAirTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 177149247: (a) => new IFC4.IfcAirTerminalBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2056796094: (a) => new IFC4.IfcAirToAirHeatRecovery(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3001207471: (a) => new IFC4.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 277319702: (a) => new IFC4.IfcAudioVisualAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 753842376: (a) => new IFC4.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2906023776: (a) => new IFC4.IfcBeamStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 32344328: (a) => new IFC4.IfcBoiler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2938176219: (a) => new IFC4.IfcBurner(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 635142910: (a) => new IFC4.IfcCableCarrierFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3758799889: (a) => new IFC4.IfcCableCarrierSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1051757585: (a) => new IFC4.IfcCableFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4217484030: (a) => new IFC4.IfcCableSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3902619387: (a) => new IFC4.IfcChiller(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639361253: (a) => new IFC4.IfcCoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3221913625: (a) => new IFC4.IfcCommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3571504051: (a) => new IFC4.IfcCompressor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2272882330: (a) => new IFC4.IfcCondenser(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 578613899: (a) => new IFC4.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4136498852: (a) => new IFC4.IfcCooledBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3640358203: (a) => new IFC4.IfcCoolingTower(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074379575: (a) => new IFC4.IfcDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1052013943: (a) => new IFC4.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 562808652: (a) => new IFC4.IfcDistributionCircuit(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1062813311: (a) => new IFC4.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 342316401: (a) => new IFC4.IfcDuctFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3518393246: (a) => new IFC4.IfcDuctSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1360408905: (a) => new IFC4.IfcDuctSilencer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1904799276: (a) => new IFC4.IfcElectricAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 862014818: (a) => new IFC4.IfcElectricDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3310460725: (a) => new IFC4.IfcElectricFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 264262732: (a) => new IFC4.IfcElectricGenerator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 402227799: (a) => new IFC4.IfcElectricMotor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1003880860: (a) => new IFC4.IfcElectricTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3415622556: (a) => new IFC4.IfcFan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 819412036: (a) => new IFC4.IfcFilter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1426591983: (a) => new IFC4.IfcFireSuppressionTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 182646315: (a) => new IFC4.IfcFlowInstrument(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2295281155: (a) => new IFC4.IfcProtectiveDeviceTrippingUnit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4086658281: (a) => new IFC4.IfcSensor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 630975310: (a) => new IFC4.IfcUnitaryControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4288193352: (a) => new IFC4.IfcActuator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3087945054: (a) => new IFC4.IfcAlarm(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 25142252: (a) => new IFC4.IfcController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8])\n};\nToRawLineData[2] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 130549933: (i) => [i.Identifier, i.Name, i.Description, i.TimeOfApproval, i.Status, i.Level, i.Qualifier, i.RequestingApproval, i.GivingApproval],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, !i.TranslationalStiffnessByLengthX ? null : Labelise(i.TranslationalStiffnessByLengthX), !i.TranslationalStiffnessByLengthY ? null : Labelise(i.TranslationalStiffnessByLengthY), !i.TranslationalStiffnessByLengthZ ? null : Labelise(i.TranslationalStiffnessByLengthZ), !i.RotationalStiffnessByLengthX ? null : Labelise(i.RotationalStiffnessByLengthX), !i.RotationalStiffnessByLengthY ? null : Labelise(i.RotationalStiffnessByLengthY), !i.RotationalStiffnessByLengthZ ? null : Labelise(i.RotationalStiffnessByLengthZ)],\n 3367102660: (i) => [i.Name, !i.TranslationalStiffnessByAreaX ? null : Labelise(i.TranslationalStiffnessByAreaX), !i.TranslationalStiffnessByAreaY ? null : Labelise(i.TranslationalStiffnessByAreaY), !i.TranslationalStiffnessByAreaZ ? null : Labelise(i.TranslationalStiffnessByAreaZ)],\n 1387855156: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ)],\n 2069777674: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ), !i.WarpingStiffness ? null : Labelise(i.WarpingStiffness)],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 775493141: (i) => [i.VolumeOnRelatingElement, i.VolumeOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1785450214: (i) => [i.SourceCRS, i.TargetCRS],\n 1466758467: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 4294318154: (_) => [],\n 3200245327: (i) => [i.Location, i.Identification, i.Name],\n 2242383968: (i) => [i.Location, i.Identification, i.Name],\n 1040185647: (i) => [i.Location, i.Identification, i.Name],\n 3548104201: (i) => [i.Location, i.Identification, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.Location, i.Description],\n 3452421091: (i) => [i.Location, i.Identification, i.Name, i.Description, i.Language, i.ReferencedLibrary],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 3057273783: (i) => [i.SourceCRS, i.TargetCRS, i.Eastings, i.Northings, i.OrthogonalHeight, i.XAxisAbscissa, i.XAxisOrdinate, i.Scale],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 760658860: (_) => [],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName, i.Description],\n 1847252529: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority, i.OffsetDirection, i.OffsetValues],\n 2199411900: (i) => [i.Materials],\n 2235152071: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category],\n 164193824: (i) => [i.Name, i.Description, i.MaterialProfiles, i.CompositeProfile],\n 552965576: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category, i.OffsetValues],\n 1507914824: (_) => [],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue, i.ReferencePath],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (_) => [],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.LogicalAggregator, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 4251960020: (i) => [i.Identification, i.Name, i.Description, i.Roles, i.Addresses],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Identification, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 677532197: (_) => [],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, { type: 3, value: BooleanConvert(i.LayerOn.value) }, { type: 3, value: BooleanConvert(i.LayerFrozen.value) }, { type: 3, value: BooleanConvert(i.LayerBlocked.value) }, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2417041796: (i) => [i.Styles],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 3843373140: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum, i.MapProjection, i.MapZone, i.MapUnit],\n 986844984: (_) => [],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue, i.Formula],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue, i.Formula],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue, i.Formula],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue, i.Formula],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue, i.Formula],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue, i.Formula],\n 3915482550: (i) => [i.RecurrenceType, i.DayComponent, i.WeekdayComponent, i.MonthComponent, i.Position, i.Interval, i.Occurrences, i.TimePeriods],\n 2433181523: (i) => [i.TypeIdentifier, i.AttributeIdentifier, i.InstanceName, i.ListPositions, i.InnerReference],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 2439245199: (i) => [i.Name, i.Description],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 1054537805: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, { type: 3, value: BooleanConvert(i.ProductDefinitional.value) }, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 3478079324: (i) => [i.Name, i.Values, i.Locations],\n 609421318: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaTConstant, i.DeltaTY, i.DeltaTZ],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2934153892: (i) => [i.Name, i.SurfaceReinforcement1, i.SurfaceReinforcement2, i.ShearReinforcement],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour, i.Transparency],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter],\n 985171141: (i) => [i.Name, i.Rows, i.Columns],\n 2043862942: (i) => [i.Identifier, i.Name, i.Description, i.Unit, i.ReferencePath],\n 531007025: (i) => [!i.RowCells ? null : i.RowCells.map((p) => Labelise(p)), i.IsHeading == null ? null : { type: 3, value: BooleanConvert(i.IsHeading.value) }],\n 1549132990: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion],\n 2771591690: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion, i.Recurrence],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL, i.MessagingIDs],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 280115917: (i) => [i.Maps],\n 1742049831: (i) => [i.Maps, i.Mode, i.Parameter],\n 2552916305: (i) => [i.Maps, i.Vertices, i.MappedTo],\n 1210645708: (i) => [i.Coordinates],\n 3611470254: (i) => [i.TexCoordsList],\n 1199560280: (i) => [i.StartTime, i.EndTime],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1236880293: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.RecurrencePattern, i.Start, i.Finish],\n 3869604511: (i) => [i.Name, i.Description, i.RelatingApproval, i.RelatedApprovals],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name, i.Description, i.Location, i.ReferenceTokens],\n 647927063: (i) => [i.Location, i.Identification, i.Name, i.ReferencedSource, i.Description, i.Sort],\n 3285139300: (i) => [i.ColourList],\n 3264961684: (i) => [i.Name],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 2713554722: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor, i.ConversionOffset],\n 539742890: (i) => [i.Name, i.Description, i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 1154170062: (i) => [i.Identification, i.Name, i.Description, i.Location, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.Name, i.Description, i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3732053477: (i) => [i.Location, i.Identification, i.Name, i.Description, i.ReferencedDocument],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 211053100: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ActualDate, i.EarlyDate, i.LateDate, i.ScheduleDate],\n 297599258: (i) => [i.Name, i.Description, i.Properties],\n 1437805879: (i) => [i.Name, i.Description, i.RelatingReference, i.RelatedResourceObjects],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 803316827: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles, i.ModelorDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelorDraughting.value) }],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }],\n 3905492369: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.URLReference],\n 3570813810: (i) => [i.MappedTo, i.Opacity, i.Colours, i.ColourIndex],\n 1437953363: (i) => [i.Maps, i.MappedTo, i.TexCoords],\n 2133299955: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndex],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1585845231: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, Labelise(i.LagValue), i.DurationType],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 1838606355: (i) => [i.Name, i.Description, i.Category],\n 3708119e3: (i) => [i.Name, i.Description, i.Material, i.Fraction, i.Category],\n 2852063980: (i) => [i.Name, i.Description, i.MaterialConstituents],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine, i.ReferenceExtent],\n 3079605661: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent],\n 3404854881: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent, i.ForProfileEndSet, i.CardinalEndPoint],\n 3265635763: (i) => [i.Name, i.Description, i.Properties, i.Material],\n 853536259: (i) => [i.Name, i.Description, i.RelatingMaterial, i.RelatedMaterials, i.Expression],\n 2998442950: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2665983363: (i) => [i.CfsFaces],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Position, i.PolygonalBoundary],\n 3727388367: (i) => [i.Name],\n 3778827333: (_) => [],\n 1775413392: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 2802850158: (i) => [i.Name, i.Description, i.Properties, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Description],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 148025276: (i) => [i.Name, i.Description, i.DependingProperty, i.DependantProperty, i.Expression],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1482703590: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2090586900: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2943643501: (i) => [i.Name, i.Description, i.RelatedResourceObjects, i.RelatingApproval],\n 1608871552: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedResourceObjects],\n 1042787934: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ScheduleWork, i.ScheduleUsage, i.ScheduleStart, i.ScheduleFinish, i.ScheduleContour, i.LevelingDelay, i.IsOverAllocated == null ? null : { type: 3, value: BooleanConvert(i.IsOverAllocated.value) }, i.StatusTime, i.ActualWork, i.ActualUsage, i.ActualStart, i.ActualFinish, i.RemainingWork, i.RemainingUsage, i.Completion],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 4124623270: (i) => [i.SbsmBoundary],\n 3692461612: (i) => [i.Name, i.Description],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 1096409881: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam, i.FilletRadius],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope],\n 901063453: (_) => [],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 3736923433: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 3698973494: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 1299126871: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ConstructionType, i.OperationType, { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, { type: 3, value: BooleanConvert(i.Sizeable.value) }],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3406155212: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomFlangeWidth, i.OverallDepth, i.WebThickness, i.BottomFlangeThickness, i.BottomFlangeFilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.BottomFlangeEdgeRadius, i.BottomFlangeSlope, i.TopFlangeEdgeRadius, i.TopFlangeSlope],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius],\n 1123145078: (i) => [i.Coordinates],\n 574549367: (_) => [],\n 1675464909: (i) => [i.CoordList],\n 2059837836: (i) => [i.CoordList],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Description, i.UsageName, i.HasProperties],\n 2485617015: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve],\n 2574617495: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity],\n 3419103109: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 1815067380: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 2629017746: (i) => [i.BasisSurface, i.Boundaries, { type: 3, value: BooleanConvert(i.ImplicitOuter.value) }],\n 32440307: (i) => [i.DirectionRatios],\n 526551008: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.OperationType, i.ConstructionType, { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, { type: 3, value: BooleanConvert(i.Sizeable.value) }],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 4024345920: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2804161546: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth, i.EndSweptArea],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 2652556860: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.FixedReference],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace, i.PredefinedType],\n 4095422895: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.FlangeSlope],\n 178912537: (i) => [i.CoordIndex],\n 2294589976: (i) => [i.CoordIndex, i.InnerCoordIndices],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope],\n 428585644: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3388369263: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3505215534: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.RefDirection],\n 1682466193: (i) => [i.BasisSurface, i.ReferenceCurve],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 3967405729: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 569719735: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 653396225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 871118103: (i) => [i.Name, i.Description, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit, !i.SetPointValue ? null : Labelise(i.SetPointValue)],\n 4166981789: (i) => [i.Name, i.Description, !i.EnumerationValues ? null : i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Description, !i.ListValues ? null : i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Description, i.UsageName, i.PropertyReference],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 492091185: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.ApplicableEntity, i.HasPropertyTemplates],\n 3650150729: (i) => [i.Name, i.Description, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Description, !i.DefiningValues ? null : i.DefiningValues.map((p) => Labelise(p)), !i.DefinedValues ? null : i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit, i.CurveInterpolation],\n 3521284610: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3219374653: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.ProxyType, i.Tag],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, { type: 3, value: BooleanConvert(i.Usense.value) }, { type: 3, value: BooleanConvert(i.Vsense.value) }],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 1027710054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup, i.Factor],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedCoverings],\n 2565941209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingContext, i.RelatedDefinitions],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1462361463: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingObject],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 307848117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedPropertySets, i.RelatingTemplate],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 427948657: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedElement, i.InterferenceGeometry, i.InterferenceType, i.ImpliedOrder],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType, i.UserDefinedSequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 3523091289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary],\n 1521410863: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary, i.CorrespondingBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 816062949: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve, i.ParamLength],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 3243963512: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle, i.EndSweptArea],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 3663146110: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.PrimaryMeasureType, i.SecondaryMeasureType, i.Enumerators, i.PrimaryUnit, i.SecondaryUnit, i.Expression, i.AccessState],\n 1412071761: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 710998568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 463610769: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 2481509218: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 451544542: (i) => [i.Position, i.Radius],\n 4015995234: (i) => [i.Position, i.Radius],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 603775116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 4095615324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 699246055: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Status, i.WorkMethod, { type: 3, value: BooleanConvert(i.IsMilestone.value) }, i.Priority, i.TaskTime, i.PredefinedType],\n 3206491090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.WorkMethod],\n 2387106220: (i) => [i.Coordinates],\n 1935646853: (i) => [i.Position, i.MajorRadius, i.MinorRadius],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2916149573: (i) => [i.Coordinates, i.Normals, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.CoordIndex, i.PnIndex],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle, i.LiningOffset, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1635779807: (i) => [i.Outer],\n 2603310189: (i) => [i.Outer, i.Voids],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2887950389: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 167062518: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 1950629157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 2197970202: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 3893394355: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3875453745: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.UsageName, i.TemplateType, i.HasPropertyTemplates],\n 3732776249: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 15328376: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2510884976: (i) => [i.Position],\n 2185764099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 4105962743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1525564444: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.CostValues, i.CostQuantities],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.SubmittedOn, i.UpdateDate],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1213902940: (i) => [i.Position, i.Radius],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 2323601079: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.OperationType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedOperationType],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 2397081782: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 132023988: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4148101412: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType, i.EventOccurenceTime],\n 2853485674: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1893162501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1509553395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3493046030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes, i.PredefinedType],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2571569899: (i) => [i.Points, !i.Segments ? null : i.Segments.map((p) => Labelise(p)), i.SelfIntersect == null ? null : { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3946677679: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3113134337: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength, i.PredefinedType],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.NominalLength],\n 1114901282: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3079942009: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LifeCyclePhase, i.PredefinedType],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1158309216: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2839578677: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Faces, i.PnIndex],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1469900589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 683857671: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec, i.WeightsData],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 964333572: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.PredefinedType],\n 2310774935: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2781568857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2157484638: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 4074543187: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1072016465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 338393293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1004757350: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.Axis],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2757150158: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.ConditionCoordinateSystem],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, { type: 3, value: BooleanConvert(i.IsLinear.value) }],\n 3657597509: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 3101698114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 413509423: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 3081323446: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2415094496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.SheathDiameter],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, { type: 3, value: BooleanConvert(i.SenseAgreement.value) }, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391383451: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 926996030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4009809668: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.PartitioningType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedPartitioningType],\n 4088093105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.WorkingTimes, i.ExceptionTimes, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1532957894: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2461110595: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1136057603: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3299480353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 39481116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1177604601: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 2188180465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2674252688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3296154744: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 1677625105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 905975707: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 400855858: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection, i.PredefinedType, i.SystemType],\n 3205830791: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 3242481149: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2417008758: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2814081492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3747195512: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 484807127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1209101575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188021234: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3319311131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2068733104: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4175244083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2176052936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 76236018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 629592764: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1437502449: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1911478936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2474470126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 144952367: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3694346114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 310824031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3612865200: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1156407060: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 738039164: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 655969474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 90941305: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1232101972: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec, i.WeightsData],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.PredefinedType, i.BarSurface],\n 2572171363: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarSurface, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3053780830: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1329646415: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3127900445: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3027962421: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3420628829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1999602285: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1404847402: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRisers, i.NumberOfTreads, i.RiserHeight, i.TreadLength, i.PredefinedType],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults, i.SharedPlacement],\n 385403989: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose, i.SelfWeightCoefficients],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1162798199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 812556717: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3825984169: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3026737570: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3179687236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4292641817: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4207607924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4156078855: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4237592921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 486154966: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634111441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 177149247: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2056796094: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 277319702: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2906023776: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 32344328: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2938176219: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 635142910: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3758799889: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1051757585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4217484030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3902619387: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 639361253: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3221913625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3571504051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2272882330: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4136498852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3640358203: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4074379575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 562808652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 342316401: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3518393246: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1360408905: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1904799276: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 862014818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3310460725: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 264262732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 402227799: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1003880860: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3415622556: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 819412036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1426591983: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 182646315: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2295281155: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4086658281: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 630975310: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4288193352: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3087945054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 25142252: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType]\n};\nTypeInitialisers[2] = {\n 3699917729: (v) => new IFC4.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC4.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC4.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC4.IfcAngularVelocityMeasure(v),\n 3683503648: (v) => new IFC4.IfcArcIndex(v.map((x) => x.value)),\n 1500781891: (v) => new IFC4.IfcAreaDensityMeasure(v),\n 2650437152: (v) => new IFC4.IfcAreaMeasure(v),\n 2314439260: (v) => new IFC4.IfcBinary(v),\n 2735952531: (v) => new IFC4.IfcBoolean(v),\n 1867003952: (v) => new IFC4.IfcBoxAlignment(v),\n 1683019596: (v) => new IFC4.IfcCardinalPointReference(v),\n 2991860651: (v) => new IFC4.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC4.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC4.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC4.IfcCountMeasure(v),\n 94842927: (v) => new IFC4.IfcCurvatureMeasure(v),\n 937566702: (v) => new IFC4.IfcDate(v),\n 2195413836: (v) => new IFC4.IfcDateTime(v),\n 86635668: (v) => new IFC4.IfcDayInMonthNumber(v),\n 3701338814: (v) => new IFC4.IfcDayInWeekNumber(v),\n 1514641115: (v) => new IFC4.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC4.IfcDimensionCount(v),\n 524656162: (v) => new IFC4.IfcDoseEquivalentMeasure(v),\n 2541165894: (v) => new IFC4.IfcDuration(v),\n 69416015: (v) => new IFC4.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC4.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC4.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC4.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC4.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC4.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC4.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC4.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC4.IfcFontStyle(v),\n 2715512545: (v) => new IFC4.IfcFontVariant(v),\n 2590844177: (v) => new IFC4.IfcFontWeight(v),\n 1361398929: (v) => new IFC4.IfcForceMeasure(v),\n 3044325142: (v) => new IFC4.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC4.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC4.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC4.IfcHeatingValueMeasure(v),\n 983778844: (v) => new IFC4.IfcIdentifier(v),\n 3358199106: (v) => new IFC4.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC4.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC4.IfcInteger(v),\n 3809634241: (v) => new IFC4.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC4.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC4.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC4.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC4.IfcLabel(v),\n 1275358634: (v) => new IFC4.IfcLanguageId(v),\n 1243674935: (v) => new IFC4.IfcLengthMeasure(v),\n 1774176899: (v) => new IFC4.IfcLineIndex(v.map((x) => x.value)),\n 191860431: (v) => new IFC4.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC4.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC4.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC4.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC4.IfcLogical(v),\n 2095003142: (v) => new IFC4.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC4.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC4.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC4.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC4.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC4.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC4.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC4.IfcMassMeasure(v),\n 3531705166: (v) => new IFC4.IfcMassPerLengthMeasure(v),\n 3341486342: (v) => new IFC4.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC4.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC4.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC4.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC4.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC4.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC4.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC4.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC4.IfcMonthInYearNumber(v),\n 525895558: (v) => new IFC4.IfcNonNegativeLengthMeasure(v),\n 2095195183: (v) => new IFC4.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC4.IfcNumericMeasure(v),\n 929793134: (v) => new IFC4.IfcPHMeasure(v),\n 2260317790: (v) => new IFC4.IfcParameterValue(v),\n 2642773653: (v) => new IFC4.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC4.IfcPlaneAngleMeasure(v),\n 1790229001: (v) => new IFC4.IfcPositiveInteger(v),\n 2815919920: (v) => new IFC4.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC4.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC4.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC4.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC4.IfcPresentableText(v),\n 3665567075: (v) => new IFC4.IfcPressureMeasure(v),\n 2798247006: (v) => new IFC4.IfcPropertySetDefinitionSet(v.map((x) => x.value)),\n 3972513137: (v) => new IFC4.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC4.IfcRatioMeasure(v),\n 200335297: (v) => new IFC4.IfcReal(v),\n 2133746277: (v) => new IFC4.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC4.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC4.IfcRotationalStiffnessMeasure(v),\n 3467162246: (v) => new IFC4.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC4.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC4.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC4.IfcSolidAngleMeasure(v),\n 4157543285: (v) => new IFC4.IfcSoundPowerLevelMeasure(v),\n 846465480: (v) => new IFC4.IfcSoundPowerMeasure(v),\n 3457685358: (v) => new IFC4.IfcSoundPressureLevelMeasure(v),\n 993287707: (v) => new IFC4.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC4.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC4.IfcSpecularExponent(v),\n 361837227: (v) => new IFC4.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC4.IfcTemperatureGradientMeasure(v),\n 1209108979: (v) => new IFC4.IfcTemperatureRateOfChangeMeasure(v),\n 2801250643: (v) => new IFC4.IfcText(v),\n 1460886941: (v) => new IFC4.IfcTextAlignment(v),\n 3490877962: (v) => new IFC4.IfcTextDecoration(v),\n 603696268: (v) => new IFC4.IfcTextFontName(v),\n 296282323: (v) => new IFC4.IfcTextTransformation(v),\n 232962298: (v) => new IFC4.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC4.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC4.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC4.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC4.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC4.IfcThermodynamicTemperatureMeasure(v),\n 4075327185: (v) => new IFC4.IfcTime(v),\n 2726807636: (v) => new IFC4.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC4.IfcTimeStamp(v),\n 1278329552: (v) => new IFC4.IfcTorqueMeasure(v),\n 950732822: (v) => new IFC4.IfcURIReference(v),\n 3345633955: (v) => new IFC4.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC4.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC4.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC4.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC4.IfcWarpingMomentMeasure(v)\n};\nvar IFC4;\n(function(IFC42) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcArcIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcArcIndex = IfcArcIndex;\n ;\n class IfcAreaDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREADENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAreaDensityMeasure = IfcAreaDensityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBinary {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCBINARY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcBinary = IfcBinary;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC42.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC42.IfcBoxAlignment = IfcBoxAlignment;\n class IfcCardinalPointReference {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCARDINALPOINTREFERENCE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCardinalPointReference = IfcCardinalPointReference;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC42.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC42.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDate {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATE\";\n }\n }\n IFC42.IfcDate = IfcDate;\n class IfcDateTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATETIME\";\n }\n }\n IFC42.IfcDateTime = IfcDateTime;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDayInWeekNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINWEEKNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDayInWeekNumber = IfcDayInWeekNumber;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC42.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDuration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDURATION\";\n }\n }\n IFC42.IfcDuration = IfcDuration;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC42.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC42.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC42.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC42.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC42.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC42.IfcLabel = IfcLabel;\n class IfcLanguageId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLANGUAGEID\";\n }\n }\n IFC42.IfcLanguageId = IfcLanguageId;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLineIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcLineIndex = IfcLineIndex;\n ;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC42.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNonNegativeLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNONNEGATIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNonNegativeLengthMeasure = IfcNonNegativeLengthMeasure;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCPOSITIVEINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveInteger = IfcPositiveInteger;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC42.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPressureMeasure = IfcPressureMeasure;\n class IfcPropertySetDefinitionSet {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcPropertySetDefinitionSet = IfcPropertySetDefinitionSet;\n ;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERLEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPowerLevelMeasure = IfcSoundPowerLevelMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSURELEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPressureLevelMeasure = IfcSoundPressureLevelMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcTemperatureRateOfChangeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATURERATEOFCHANGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTemperatureRateOfChangeMeasure = IfcTemperatureRateOfChangeMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC42.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC42.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC42.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC42.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC42.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTIME\";\n }\n }\n IFC42.IfcTime = IfcTime;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcURIReference {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCURIREFERENCE\";\n }\n }\n IFC42.IfcURIReference = IfcURIReference;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcActionRequestTypeEnum {\n }\n IfcActionRequestTypeEnum.EMAIL = { type: 3, value: \"EMAIL\" };\n IfcActionRequestTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcActionRequestTypeEnum.PHONE = { type: 3, value: \"PHONE\" };\n IfcActionRequestTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcActionRequestTypeEnum.VERBAL = { type: 3, value: \"VERBAL\" };\n IfcActionRequestTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionRequestTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionRequestTypeEnum = IfcActionRequestTypeEnum;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.LOUVRE = { type: 3, value: \"LOUVRE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC42.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcAudioVisualApplianceTypeEnum {\n }\n IfcAudioVisualApplianceTypeEnum.AMPLIFIER = { type: 3, value: \"AMPLIFIER\" };\n IfcAudioVisualApplianceTypeEnum.CAMERA = { type: 3, value: \"CAMERA\" };\n IfcAudioVisualApplianceTypeEnum.DISPLAY = { type: 3, value: \"DISPLAY\" };\n IfcAudioVisualApplianceTypeEnum.MICROPHONE = { type: 3, value: \"MICROPHONE\" };\n IfcAudioVisualApplianceTypeEnum.PLAYER = { type: 3, value: \"PLAYER\" };\n IfcAudioVisualApplianceTypeEnum.PROJECTOR = { type: 3, value: \"PROJECTOR\" };\n IfcAudioVisualApplianceTypeEnum.RECEIVER = { type: 3, value: \"RECEIVER\" };\n IfcAudioVisualApplianceTypeEnum.SPEAKER = { type: 3, value: \"SPEAKER\" };\n IfcAudioVisualApplianceTypeEnum.SWITCHER = { type: 3, value: \"SWITCHER\" };\n IfcAudioVisualApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcAudioVisualApplianceTypeEnum.TUNER = { type: 3, value: \"TUNER\" };\n IfcAudioVisualApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAudioVisualApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAudioVisualApplianceTypeEnum = IfcAudioVisualApplianceTypeEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBSplineSurfaceForm {\n }\n IfcBSplineSurfaceForm.PLANE_SURF = { type: 3, value: \"PLANE_SURF\" };\n IfcBSplineSurfaceForm.CYLINDRICAL_SURF = { type: 3, value: \"CYLINDRICAL_SURF\" };\n IfcBSplineSurfaceForm.CONICAL_SURF = { type: 3, value: \"CONICAL_SURF\" };\n IfcBSplineSurfaceForm.SPHERICAL_SURF = { type: 3, value: \"SPHERICAL_SURF\" };\n IfcBSplineSurfaceForm.TOROIDAL_SURF = { type: 3, value: \"TOROIDAL_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_REVOLUTION = { type: 3, value: \"SURF_OF_REVOLUTION\" };\n IfcBSplineSurfaceForm.RULED_SURF = { type: 3, value: \"RULED_SURF\" };\n IfcBSplineSurfaceForm.GENERALISED_CONE = { type: 3, value: \"GENERALISED_CONE\" };\n IfcBSplineSurfaceForm.QUADRIC_SURF = { type: 3, value: \"QUADRIC_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_LINEAR_EXTRUSION = { type: 3, value: \"SURF_OF_LINEAR_EXTRUSION\" };\n IfcBSplineSurfaceForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcBSplineSurfaceForm = IfcBSplineSurfaceForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.HOLLOWCORE = { type: 3, value: \"HOLLOWCORE\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.SPANDREL = { type: 3, value: \"SPANDREL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IfcBenchmarkEnum.INCLUDES = { type: 3, value: \"INCLUDES\" };\n IfcBenchmarkEnum.NOTINCLUDES = { type: 3, value: \"NOTINCLUDES\" };\n IfcBenchmarkEnum.INCLUDEDIN = { type: 3, value: \"INCLUDEDIN\" };\n IfcBenchmarkEnum.NOTINCLUDEDIN = { type: 3, value: \"NOTINCLUDEDIN\" };\n IFC42.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IFC42.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBuildingElementPartTypeEnum {\n }\n IfcBuildingElementPartTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcBuildingElementPartTypeEnum.PRECASTPANEL = { type: 3, value: \"PRECASTPANEL\" };\n IfcBuildingElementPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingElementPartTypeEnum = IfcBuildingElementPartTypeEnum;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcBuildingElementProxyTypeEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcBuildingElementProxyTypeEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IfcBuildingElementProxyTypeEnum.PROVISIONFORVOID = { type: 3, value: \"PROVISIONFORVOID\" };\n IfcBuildingElementProxyTypeEnum.PROVISIONFORSPACE = { type: 3, value: \"PROVISIONFORSPACE\" };\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcBuildingSystemTypeEnum {\n }\n IfcBuildingSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuildingSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuildingSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuildingSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuildingSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuildingSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuildingSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingSystemTypeEnum = IfcBuildingSystemTypeEnum;\n class IfcBurnerTypeEnum {\n }\n IfcBurnerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBurnerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBurnerTypeEnum = IfcBurnerTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.REDUCER = { type: 3, value: \"REDUCER\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableFittingTypeEnum {\n }\n IfcCableFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcCableFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcCableFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableFittingTypeEnum = IfcCableFittingTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.BUSBARSEGMENT = { type: 3, value: \"BUSBARSEGMENT\" };\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.CORESEGMENT = { type: 3, value: \"CORESEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcChimneyTypeEnum {\n }\n IfcChimneyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChimneyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChimneyTypeEnum = IfcChimneyTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.HYDRONICCOIL = { type: 3, value: \"HYDRONICCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.PILASTER = { type: 3, value: \"PILASTER\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCommunicationsApplianceTypeEnum {\n }\n IfcCommunicationsApplianceTypeEnum.ANTENNA = { type: 3, value: \"ANTENNA\" };\n IfcCommunicationsApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcCommunicationsApplianceTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcCommunicationsApplianceTypeEnum.GATEWAY = { type: 3, value: \"GATEWAY\" };\n IfcCommunicationsApplianceTypeEnum.MODEM = { type: 3, value: \"MODEM\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKAPPLIANCE = { type: 3, value: \"NETWORKAPPLIANCE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKBRIDGE = { type: 3, value: \"NETWORKBRIDGE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKHUB = { type: 3, value: \"NETWORKHUB\" };\n IfcCommunicationsApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcCommunicationsApplianceTypeEnum.REPEATER = { type: 3, value: \"REPEATER\" };\n IfcCommunicationsApplianceTypeEnum.ROUTER = { type: 3, value: \"ROUTER\" };\n IfcCommunicationsApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcCommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCommunicationsApplianceTypeEnum = IfcCommunicationsApplianceTypeEnum;\n class IfcComplexPropertyTemplateTypeEnum {\n }\n IfcComplexPropertyTemplateTypeEnum.P_COMPLEX = { type: 3, value: \"P_COMPLEX\" };\n IfcComplexPropertyTemplateTypeEnum.Q_COMPLEX = { type: 3, value: \"Q_COMPLEX\" };\n IFC42.IfcComplexPropertyTemplateTypeEnum = IfcComplexPropertyTemplateTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstraintEnum = IfcConstraintEnum;\n class IfcConstructionEquipmentResourceTypeEnum {\n }\n IfcConstructionEquipmentResourceTypeEnum.DEMOLISHING = { type: 3, value: \"DEMOLISHING\" };\n IfcConstructionEquipmentResourceTypeEnum.EARTHMOVING = { type: 3, value: \"EARTHMOVING\" };\n IfcConstructionEquipmentResourceTypeEnum.ERECTING = { type: 3, value: \"ERECTING\" };\n IfcConstructionEquipmentResourceTypeEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcConstructionEquipmentResourceTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcConstructionEquipmentResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcConstructionEquipmentResourceTypeEnum.PUMPING = { type: 3, value: \"PUMPING\" };\n IfcConstructionEquipmentResourceTypeEnum.TRANSPORTING = { type: 3, value: \"TRANSPORTING\" };\n IfcConstructionEquipmentResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionEquipmentResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstructionEquipmentResourceTypeEnum = IfcConstructionEquipmentResourceTypeEnum;\n class IfcConstructionMaterialResourceTypeEnum {\n }\n IfcConstructionMaterialResourceTypeEnum.AGGREGATES = { type: 3, value: \"AGGREGATES\" };\n IfcConstructionMaterialResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcConstructionMaterialResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcConstructionMaterialResourceTypeEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcConstructionMaterialResourceTypeEnum.GYPSUM = { type: 3, value: \"GYPSUM\" };\n IfcConstructionMaterialResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcConstructionMaterialResourceTypeEnum.METAL = { type: 3, value: \"METAL\" };\n IfcConstructionMaterialResourceTypeEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcConstructionMaterialResourceTypeEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcConstructionMaterialResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IfcConstructionMaterialResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcConstructionMaterialResourceTypeEnum = IfcConstructionMaterialResourceTypeEnum;\n class IfcConstructionProductResourceTypeEnum {\n }\n IfcConstructionProductResourceTypeEnum.ASSEMBLY = { type: 3, value: \"ASSEMBLY\" };\n IfcConstructionProductResourceTypeEnum.FORMWORK = { type: 3, value: \"FORMWORK\" };\n IfcConstructionProductResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionProductResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstructionProductResourceTypeEnum = IfcConstructionProductResourceTypeEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.PROGRAMMABLE = { type: 3, value: \"PROGRAMMABLE\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.MULTIPOSITION = { type: 3, value: \"MULTIPOSITION\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostItemTypeEnum {\n }\n IfcCostItemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostItemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCostItemTypeEnum = IfcCostItemTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.MOLDING = { type: 3, value: \"MOLDING\" };\n IfcCoveringTypeEnum.SKIRTINGBOARD = { type: 3, value: \"SKIRTINGBOARD\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCrewResourceTypeEnum {\n }\n IfcCrewResourceTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcCrewResourceTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcCrewResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCrewResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCrewResourceTypeEnum = IfcCrewResourceTypeEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcCurveInterpolationEnum {\n }\n IfcCurveInterpolationEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LINEAR = { type: 3, value: \"LOG_LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LOG = { type: 3, value: \"LOG_LOG\" };\n IfcCurveInterpolationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCurveInterpolationEnum = IfcCurveInterpolationEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.AREADENSITYUNIT = { type: 3, value: \"AREADENSITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERLEVELUNIT = { type: 3, value: \"SOUNDPOWERLEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSURELEVELUNIT = { type: 3, value: \"SOUNDPRESSURELEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.TEMPERATURERATEOFCHANGEUNIT = { type: 3, value: \"TEMPERATURERATEOFCHANGEUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IFC42.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDiscreteAccessoryTypeEnum {\n }\n IfcDiscreteAccessoryTypeEnum.ANCHORPLATE = { type: 3, value: \"ANCHORPLATE\" };\n IfcDiscreteAccessoryTypeEnum.BRACKET = { type: 3, value: \"BRACKET\" };\n IfcDiscreteAccessoryTypeEnum.SHOE = { type: 3, value: \"SHOE\" };\n IfcDiscreteAccessoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDiscreteAccessoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDiscreteAccessoryTypeEnum = IfcDiscreteAccessoryTypeEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDistributionPortTypeEnum {\n }\n IfcDistributionPortTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcDistributionPortTypeEnum.CABLECARRIER = { type: 3, value: \"CABLECARRIER\" };\n IfcDistributionPortTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcDistributionPortTypeEnum.PIPE = { type: 3, value: \"PIPE\" };\n IfcDistributionPortTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionPortTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionPortTypeEnum = IfcDistributionPortTypeEnum;\n class IfcDistributionSystemEnum {\n }\n IfcDistributionSystemEnum.AIRCONDITIONING = { type: 3, value: \"AIRCONDITIONING\" };\n IfcDistributionSystemEnum.AUDIOVISUAL = { type: 3, value: \"AUDIOVISUAL\" };\n IfcDistributionSystemEnum.CHEMICAL = { type: 3, value: \"CHEMICAL\" };\n IfcDistributionSystemEnum.CHILLEDWATER = { type: 3, value: \"CHILLEDWATER\" };\n IfcDistributionSystemEnum.COMMUNICATION = { type: 3, value: \"COMMUNICATION\" };\n IfcDistributionSystemEnum.COMPRESSEDAIR = { type: 3, value: \"COMPRESSEDAIR\" };\n IfcDistributionSystemEnum.CONDENSERWATER = { type: 3, value: \"CONDENSERWATER\" };\n IfcDistributionSystemEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcDistributionSystemEnum.CONVEYING = { type: 3, value: \"CONVEYING\" };\n IfcDistributionSystemEnum.DATA = { type: 3, value: \"DATA\" };\n IfcDistributionSystemEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcDistributionSystemEnum.DOMESTICCOLDWATER = { type: 3, value: \"DOMESTICCOLDWATER\" };\n IfcDistributionSystemEnum.DOMESTICHOTWATER = { type: 3, value: \"DOMESTICHOTWATER\" };\n IfcDistributionSystemEnum.DRAINAGE = { type: 3, value: \"DRAINAGE\" };\n IfcDistributionSystemEnum.EARTHING = { type: 3, value: \"EARTHING\" };\n IfcDistributionSystemEnum.ELECTRICAL = { type: 3, value: \"ELECTRICAL\" };\n IfcDistributionSystemEnum.ELECTROACOUSTIC = { type: 3, value: \"ELECTROACOUSTIC\" };\n IfcDistributionSystemEnum.EXHAUST = { type: 3, value: \"EXHAUST\" };\n IfcDistributionSystemEnum.FIREPROTECTION = { type: 3, value: \"FIREPROTECTION\" };\n IfcDistributionSystemEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcDistributionSystemEnum.GAS = { type: 3, value: \"GAS\" };\n IfcDistributionSystemEnum.HAZARDOUS = { type: 3, value: \"HAZARDOUS\" };\n IfcDistributionSystemEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcDistributionSystemEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcDistributionSystemEnum.LIGHTNINGPROTECTION = { type: 3, value: \"LIGHTNINGPROTECTION\" };\n IfcDistributionSystemEnum.MUNICIPALSOLIDWASTE = { type: 3, value: \"MUNICIPALSOLIDWASTE\" };\n IfcDistributionSystemEnum.OIL = { type: 3, value: \"OIL\" };\n IfcDistributionSystemEnum.OPERATIONAL = { type: 3, value: \"OPERATIONAL\" };\n IfcDistributionSystemEnum.POWERGENERATION = { type: 3, value: \"POWERGENERATION\" };\n IfcDistributionSystemEnum.RAINWATER = { type: 3, value: \"RAINWATER\" };\n IfcDistributionSystemEnum.REFRIGERATION = { type: 3, value: \"REFRIGERATION\" };\n IfcDistributionSystemEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcDistributionSystemEnum.SEWAGE = { type: 3, value: \"SEWAGE\" };\n IfcDistributionSystemEnum.SIGNAL = { type: 3, value: \"SIGNAL\" };\n IfcDistributionSystemEnum.STORMWATER = { type: 3, value: \"STORMWATER\" };\n IfcDistributionSystemEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcDistributionSystemEnum.TV = { type: 3, value: \"TV\" };\n IfcDistributionSystemEnum.VACUUM = { type: 3, value: \"VACUUM\" };\n IfcDistributionSystemEnum.VENT = { type: 3, value: \"VENT\" };\n IfcDistributionSystemEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcDistributionSystemEnum.WASTEWATER = { type: 3, value: \"WASTEWATER\" };\n IfcDistributionSystemEnum.WATERSUPPLY = { type: 3, value: \"WATERSUPPLY\" };\n IfcDistributionSystemEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionSystemEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionSystemEnum = IfcDistributionSystemEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.FIXEDPANEL = { type: 3, value: \"FIXEDPANEL\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDoorTypeEnum {\n }\n IfcDoorTypeEnum.DOOR = { type: 3, value: \"DOOR\" };\n IfcDoorTypeEnum.GATE = { type: 3, value: \"GATE\" };\n IfcDoorTypeEnum.TRAPDOOR = { type: 3, value: \"TRAPDOOR\" };\n IfcDoorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorTypeEnum = IfcDoorTypeEnum;\n class IfcDoorTypeOperationEnum {\n }\n IfcDoorTypeOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorTypeOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorTypeOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_LEFT = { type: 3, value: \"SWING_FIXED_LEFT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_RIGHT = { type: 3, value: \"SWING_FIXED_RIGHT\" };\n IfcDoorTypeOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorTypeOperationEnum = IfcDoorTypeOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGELECTRICHEATER = { type: 3, value: \"FREESTANDINGELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERHEATER = { type: 3, value: \"FREESTANDINGWATERHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERCOOLER = { type: 3, value: \"FREESTANDINGWATERCOOLER\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.KITCHENMACHINE = { type: 3, value: \"KITCHENMACHINE\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricDistributionBoardTypeEnum {\n }\n IfcElectricDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricDistributionBoardTypeEnum = IfcElectricDistributionBoardTypeEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.CHP = { type: 3, value: \"CHP\" };\n IfcElectricGeneratorTypeEnum.ENGINEGENERATOR = { type: 3, value: \"ENGINEGENERATOR\" };\n IfcElectricGeneratorTypeEnum.STANDALONE = { type: 3, value: \"STANDALONE\" };\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC42.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEngineTypeEnum {\n }\n IfcEngineTypeEnum.EXTERNALCOMBUSTION = { type: 3, value: \"EXTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.INTERNALCOMBUSTION = { type: 3, value: \"INTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEngineTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEngineTypeEnum = IfcEngineTypeEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSION = { type: 3, value: \"DIRECTEXPANSION\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcEventTriggerTypeEnum {\n }\n IfcEventTriggerTypeEnum.EVENTRULE = { type: 3, value: \"EVENTRULE\" };\n IfcEventTriggerTypeEnum.EVENTMESSAGE = { type: 3, value: \"EVENTMESSAGE\" };\n IfcEventTriggerTypeEnum.EVENTTIME = { type: 3, value: \"EVENTTIME\" };\n IfcEventTriggerTypeEnum.EVENTCOMPLEX = { type: 3, value: \"EVENTCOMPLEX\" };\n IfcEventTriggerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTriggerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEventTriggerTypeEnum = IfcEventTriggerTypeEnum;\n class IfcEventTypeEnum {\n }\n IfcEventTypeEnum.STARTEVENT = { type: 3, value: \"STARTEVENT\" };\n IfcEventTypeEnum.ENDEVENT = { type: 3, value: \"ENDEVENT\" };\n IfcEventTypeEnum.INTERMEDIATEEVENT = { type: 3, value: \"INTERMEDIATEEVENT\" };\n IfcEventTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEventTypeEnum = IfcEventTypeEnum;\n class IfcExternalSpatialElementTypeEnum {\n }\n IfcExternalSpatialElementTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcExternalSpatialElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcExternalSpatialElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcExternalSpatialElementTypeEnum = IfcExternalSpatialElementTypeEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFastenerTypeEnum {\n }\n IfcFastenerTypeEnum.GLUE = { type: 3, value: \"GLUE\" };\n IfcFastenerTypeEnum.MORTAR = { type: 3, value: \"MORTAR\" };\n IfcFastenerTypeEnum.WELD = { type: 3, value: \"WELD\" };\n IfcFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFastenerTypeEnum = IfcFastenerTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.COMPRESSEDAIRFILTER = { type: 3, value: \"COMPRESSEDAIRFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.CAISSON_FOUNDATION = { type: 3, value: \"CAISSON_FOUNDATION\" };\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcFurnitureTypeEnum {\n }\n IfcFurnitureTypeEnum.CHAIR = { type: 3, value: \"CHAIR\" };\n IfcFurnitureTypeEnum.TABLE = { type: 3, value: \"TABLE\" };\n IfcFurnitureTypeEnum.DESK = { type: 3, value: \"DESK\" };\n IfcFurnitureTypeEnum.BED = { type: 3, value: \"BED\" };\n IfcFurnitureTypeEnum.FILECABINET = { type: 3, value: \"FILECABINET\" };\n IfcFurnitureTypeEnum.SHELF = { type: 3, value: \"SHELF\" };\n IfcFurnitureTypeEnum.SOFA = { type: 3, value: \"SOFA\" };\n IfcFurnitureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFurnitureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFurnitureTypeEnum = IfcFurnitureTypeEnum;\n class IfcGeographicElementTypeEnum {\n }\n IfcGeographicElementTypeEnum.TERRAIN = { type: 3, value: \"TERRAIN\" };\n IfcGeographicElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeographicElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGeographicElementTypeEnum = IfcGeographicElementTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC42.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcGridTypeEnum {\n }\n IfcGridTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcGridTypeEnum.RADIAL = { type: 3, value: \"RADIAL\" };\n IfcGridTypeEnum.TRIANGULAR = { type: 3, value: \"TRIANGULAR\" };\n IfcGridTypeEnum.IRREGULAR = { type: 3, value: \"IRREGULAR\" };\n IfcGridTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGridTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGridTypeEnum = IfcGridTypeEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcInterceptorTypeEnum {\n }\n IfcInterceptorTypeEnum.CYCLONIC = { type: 3, value: \"CYCLONIC\" };\n IfcInterceptorTypeEnum.GREASE = { type: 3, value: \"GREASE\" };\n IfcInterceptorTypeEnum.OIL = { type: 3, value: \"OIL\" };\n IfcInterceptorTypeEnum.PETROL = { type: 3, value: \"PETROL\" };\n IfcInterceptorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInterceptorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInterceptorTypeEnum = IfcInterceptorTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcInternalOrExternalEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcInternalOrExternalEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.DATA = { type: 3, value: \"DATA\" };\n IfcJunctionBoxTypeEnum.POWER = { type: 3, value: \"POWER\" };\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcKnotType {\n }\n IfcKnotType.UNIFORM_KNOTS = { type: 3, value: \"UNIFORM_KNOTS\" };\n IfcKnotType.QUASI_UNIFORM_KNOTS = { type: 3, value: \"QUASI_UNIFORM_KNOTS\" };\n IfcKnotType.PIECEWISE_BEZIER_KNOTS = { type: 3, value: \"PIECEWISE_BEZIER_KNOTS\" };\n IfcKnotType.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcKnotType = IfcKnotType;\n class IfcLaborResourceTypeEnum {\n }\n IfcLaborResourceTypeEnum.ADMINISTRATION = { type: 3, value: \"ADMINISTRATION\" };\n IfcLaborResourceTypeEnum.CARPENTRY = { type: 3, value: \"CARPENTRY\" };\n IfcLaborResourceTypeEnum.CLEANING = { type: 3, value: \"CLEANING\" };\n IfcLaborResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcLaborResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcLaborResourceTypeEnum.ELECTRIC = { type: 3, value: \"ELECTRIC\" };\n IfcLaborResourceTypeEnum.FINISHING = { type: 3, value: \"FINISHING\" };\n IfcLaborResourceTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcLaborResourceTypeEnum.GENERAL = { type: 3, value: \"GENERAL\" };\n IfcLaborResourceTypeEnum.HVAC = { type: 3, value: \"HVAC\" };\n IfcLaborResourceTypeEnum.LANDSCAPING = { type: 3, value: \"LANDSCAPING\" };\n IfcLaborResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcLaborResourceTypeEnum.PAINTING = { type: 3, value: \"PAINTING\" };\n IfcLaborResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcLaborResourceTypeEnum.PLUMBING = { type: 3, value: \"PLUMBING\" };\n IfcLaborResourceTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcLaborResourceTypeEnum.SITEGRADING = { type: 3, value: \"SITEGRADING\" };\n IfcLaborResourceTypeEnum.STEELWORK = { type: 3, value: \"STEELWORK\" };\n IfcLaborResourceTypeEnum.SURVEYING = { type: 3, value: \"SURVEYING\" };\n IfcLaborResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLaborResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLaborResourceTypeEnum = IfcLaborResourceTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HALOGEN = { type: 3, value: \"HALOGEN\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.LED = { type: 3, value: \"LED\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.OLED = { type: 3, value: \"OLED\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC42.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.SECURITYLIGHTING = { type: 3, value: \"SECURITYLIGHTING\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IfcLogicalOperatorEnum.LOGICALXOR = { type: 3, value: \"LOGICALXOR\" };\n IfcLogicalOperatorEnum.LOGICALNOTAND = { type: 3, value: \"LOGICALNOTAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTOR = { type: 3, value: \"LOGICALNOTOR\" };\n IFC42.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMechanicalFastenerTypeEnum {\n }\n IfcMechanicalFastenerTypeEnum.ANCHORBOLT = { type: 3, value: \"ANCHORBOLT\" };\n IfcMechanicalFastenerTypeEnum.BOLT = { type: 3, value: \"BOLT\" };\n IfcMechanicalFastenerTypeEnum.DOWEL = { type: 3, value: \"DOWEL\" };\n IfcMechanicalFastenerTypeEnum.NAIL = { type: 3, value: \"NAIL\" };\n IfcMechanicalFastenerTypeEnum.NAILPLATE = { type: 3, value: \"NAILPLATE\" };\n IfcMechanicalFastenerTypeEnum.RIVET = { type: 3, value: \"RIVET\" };\n IfcMechanicalFastenerTypeEnum.SCREW = { type: 3, value: \"SCREW\" };\n IfcMechanicalFastenerTypeEnum.SHEARCONNECTOR = { type: 3, value: \"SHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.STAPLE = { type: 3, value: \"STAPLE\" };\n IfcMechanicalFastenerTypeEnum.STUDSHEARCONNECTOR = { type: 3, value: \"STUDSHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMechanicalFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMechanicalFastenerTypeEnum = IfcMechanicalFastenerTypeEnum;\n class IfcMedicalDeviceTypeEnum {\n }\n IfcMedicalDeviceTypeEnum.AIRSTATION = { type: 3, value: \"AIRSTATION\" };\n IfcMedicalDeviceTypeEnum.FEEDAIRUNIT = { type: 3, value: \"FEEDAIRUNIT\" };\n IfcMedicalDeviceTypeEnum.OXYGENGENERATOR = { type: 3, value: \"OXYGENGENERATOR\" };\n IfcMedicalDeviceTypeEnum.OXYGENPLANT = { type: 3, value: \"OXYGENPLANT\" };\n IfcMedicalDeviceTypeEnum.VACUUMSTATION = { type: 3, value: \"VACUUMSTATION\" };\n IfcMedicalDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMedicalDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMedicalDeviceTypeEnum = IfcMedicalDeviceTypeEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNullStyle {\n }\n IfcNullStyle.NULL = { type: 3, value: \"NULL\" };\n IFC42.IfcNullStyle = IfcNullStyle;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.CODEWAIVER = { type: 3, value: \"CODEWAIVER\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.MERGECONFLICT = { type: 3, value: \"MERGECONFLICT\" };\n IfcObjectiveEnum.MODELVIEW = { type: 3, value: \"MODELVIEW\" };\n IfcObjectiveEnum.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOpeningElementTypeEnum {\n }\n IfcOpeningElementTypeEnum.OPENING = { type: 3, value: \"OPENING\" };\n IfcOpeningElementTypeEnum.RECESS = { type: 3, value: \"RECESS\" };\n IfcOpeningElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOpeningElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOpeningElementTypeEnum = IfcOpeningElementTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.DATAOUTLET = { type: 3, value: \"DATAOUTLET\" };\n IfcOutletTypeEnum.TELEPHONEOUTLET = { type: 3, value: \"TELEPHONEOUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPerformanceHistoryTypeEnum {\n }\n IfcPerformanceHistoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPerformanceHistoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPerformanceHistoryTypeEnum = IfcPerformanceHistoryTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPermitTypeEnum {\n }\n IfcPermitTypeEnum.ACCESS = { type: 3, value: \"ACCESS\" };\n IfcPermitTypeEnum.BUILDING = { type: 3, value: \"BUILDING\" };\n IfcPermitTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcPermitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPermitTypeEnum = IfcPermitTypeEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.BORED = { type: 3, value: \"BORED\" };\n IfcPileTypeEnum.DRIVEN = { type: 3, value: \"DRIVEN\" };\n IfcPileTypeEnum.JETGROUTING = { type: 3, value: \"JETGROUTING\" };\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcPreferredSurfaceCurveRepresentation {\n }\n IfcPreferredSurfaceCurveRepresentation.CURVE3D = { type: 3, value: \"CURVE3D\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S1 = { type: 3, value: \"PCURVE_S1\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S2 = { type: 3, value: \"PCURVE_S2\" };\n IFC42.IfcPreferredSurfaceCurveRepresentation = IfcPreferredSurfaceCurveRepresentation;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IFC42.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC42.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcProjectionElementTypeEnum {\n }\n IfcProjectionElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectionElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProjectionElementTypeEnum = IfcProjectionElementTypeEnum;\n class IfcPropertySetTemplateTypeEnum {\n }\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENONLY = { type: 3, value: \"PSET_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENOVERRIDE = { type: 3, value: \"PSET_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.PSET_OCCURRENCEDRIVEN = { type: 3, value: \"PSET_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PERFORMANCEDRIVEN = { type: 3, value: \"PSET_PERFORMANCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENONLY = { type: 3, value: \"QTO_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENOVERRIDE = { type: 3, value: \"QTO_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.QTO_OCCURRENCEDRIVEN = { type: 3, value: \"QTO_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPropertySetTemplateTypeEnum = IfcPropertySetTemplateTypeEnum;\n class IfcProtectiveDeviceTrippingUnitTypeEnum {\n }\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTRONIC = { type: 3, value: \"ELECTRONIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTROMAGNETIC = { type: 3, value: \"ELECTROMAGNETIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.RESIDUALCURRENT = { type: 3, value: \"RESIDUALCURRENT\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProtectiveDeviceTrippingUnitTypeEnum = IfcProtectiveDeviceTrippingUnitTypeEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHLEAKAGECIRCUITBREAKER = { type: 3, value: \"EARTHLEAKAGECIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHINGSWITCH = { type: 3, value: \"EARTHINGSWITCH\" };\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.SUBMERSIBLEPUMP = { type: 3, value: \"SUBMERSIBLEPUMP\" };\n IfcPumpTypeEnum.SUMPPUMP = { type: 3, value: \"SUMPPUMP\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcRecurrenceTypeEnum {\n }\n IfcRecurrenceTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcRecurrenceTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_DAY_OF_MONTH = { type: 3, value: \"MONTHLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_POSITION = { type: 3, value: \"MONTHLY_BY_POSITION\" };\n IfcRecurrenceTypeEnum.BY_DAY_COUNT = { type: 3, value: \"BY_DAY_COUNT\" };\n IfcRecurrenceTypeEnum.BY_WEEKDAY_COUNT = { type: 3, value: \"BY_WEEKDAY_COUNT\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_DAY_OF_MONTH = { type: 3, value: \"YEARLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_POSITION = { type: 3, value: \"YEARLY_BY_POSITION\" };\n IFC42.IfcRecurrenceTypeEnum = IfcRecurrenceTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC42.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcReinforcingBarTypeEnum {\n }\n IfcReinforcingBarTypeEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarTypeEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarTypeEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarTypeEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarTypeEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingBarTypeEnum = IfcReinforcingBarTypeEnum;\n class IfcReinforcingMeshTypeEnum {\n }\n IfcReinforcingMeshTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingMeshTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingMeshTypeEnum = IfcReinforcingMeshTypeEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.COMMISSIONINGENGINEER = { type: 3, value: \"COMMISSIONINGENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IFC42.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC42.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IFC42.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.COSENSOR = { type: 3, value: \"COSENSOR\" };\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.CONDUCTANCESENSOR = { type: 3, value: \"CONDUCTANCESENSOR\" };\n IfcSensorTypeEnum.CONTACTSENSOR = { type: 3, value: \"CONTACTSENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.FROSTSENSOR = { type: 3, value: \"FROSTSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.IDENTIFIERSENSOR = { type: 3, value: \"IDENTIFIERSENSOR\" };\n IfcSensorTypeEnum.IONCONCENTRATIONSENSOR = { type: 3, value: \"IONCONCENTRATIONSENSOR\" };\n IfcSensorTypeEnum.LEVELSENSOR = { type: 3, value: \"LEVELSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.PHSENSOR = { type: 3, value: \"PHSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.RADIATIONSENSOR = { type: 3, value: \"RADIATIONSENSOR\" };\n IfcSensorTypeEnum.RADIOACTIVITYSENSOR = { type: 3, value: \"RADIOACTIVITYSENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.WINDSENSOR = { type: 3, value: \"WINDSENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSequenceEnum = IfcSequenceEnum;\n class IfcShadingDeviceTypeEnum {\n }\n IfcShadingDeviceTypeEnum.JALOUSIE = { type: 3, value: \"JALOUSIE\" };\n IfcShadingDeviceTypeEnum.SHUTTER = { type: 3, value: \"SHUTTER\" };\n IfcShadingDeviceTypeEnum.AWNING = { type: 3, value: \"AWNING\" };\n IfcShadingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcShadingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcShadingDeviceTypeEnum = IfcShadingDeviceTypeEnum;\n class IfcSimplePropertyTemplateTypeEnum {\n }\n IfcSimplePropertyTemplateTypeEnum.P_SINGLEVALUE = { type: 3, value: \"P_SINGLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_ENUMERATEDVALUE = { type: 3, value: \"P_ENUMERATEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_BOUNDEDVALUE = { type: 3, value: \"P_BOUNDEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_LISTVALUE = { type: 3, value: \"P_LISTVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_TABLEVALUE = { type: 3, value: \"P_TABLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_REFERENCEVALUE = { type: 3, value: \"P_REFERENCEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.Q_LENGTH = { type: 3, value: \"Q_LENGTH\" };\n IfcSimplePropertyTemplateTypeEnum.Q_AREA = { type: 3, value: \"Q_AREA\" };\n IfcSimplePropertyTemplateTypeEnum.Q_VOLUME = { type: 3, value: \"Q_VOLUME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_COUNT = { type: 3, value: \"Q_COUNT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_WEIGHT = { type: 3, value: \"Q_WEIGHT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_TIME = { type: 3, value: \"Q_TIME\" };\n IFC42.IfcSimplePropertyTemplateTypeEnum = IfcSimplePropertyTemplateTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSolarDeviceTypeEnum {\n }\n IfcSolarDeviceTypeEnum.SOLARCOLLECTOR = { type: 3, value: \"SOLARCOLLECTOR\" };\n IfcSolarDeviceTypeEnum.SOLARPANEL = { type: 3, value: \"SOLARPANEL\" };\n IfcSolarDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSolarDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSolarDeviceTypeEnum = IfcSolarDeviceTypeEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.RADIATOR = { type: 3, value: \"RADIATOR\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.SPACE = { type: 3, value: \"SPACE\" };\n IfcSpaceTypeEnum.PARKING = { type: 3, value: \"PARKING\" };\n IfcSpaceTypeEnum.GFA = { type: 3, value: \"GFA\" };\n IfcSpaceTypeEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcSpaceTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcSpatialZoneTypeEnum {\n }\n IfcSpatialZoneTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcSpatialZoneTypeEnum.FIRESAFETY = { type: 3, value: \"FIRESAFETY\" };\n IfcSpatialZoneTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcSpatialZoneTypeEnum.OCCUPANCY = { type: 3, value: \"OCCUPANCY\" };\n IfcSpatialZoneTypeEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcSpatialZoneTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcSpatialZoneTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcSpatialZoneTypeEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcSpatialZoneTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpatialZoneTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpatialZoneTypeEnum = IfcSpatialZoneTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IFC42.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveActivityTypeEnum {\n }\n IfcStructuralCurveActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralCurveActivityTypeEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcStructuralCurveActivityTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcStructuralCurveActivityTypeEnum.EQUIDISTANT = { type: 3, value: \"EQUIDISTANT\" };\n IfcStructuralCurveActivityTypeEnum.SINUS = { type: 3, value: \"SINUS\" };\n IfcStructuralCurveActivityTypeEnum.PARABOLA = { type: 3, value: \"PARABOLA\" };\n IfcStructuralCurveActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralCurveActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralCurveActivityTypeEnum = IfcStructuralCurveActivityTypeEnum;\n class IfcStructuralCurveMemberTypeEnum {\n }\n IfcStructuralCurveMemberTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveMemberTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralCurveMemberTypeEnum = IfcStructuralCurveMemberTypeEnum;\n class IfcStructuralSurfaceActivityTypeEnum {\n }\n IfcStructuralSurfaceActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralSurfaceActivityTypeEnum.BILINEAR = { type: 3, value: \"BILINEAR\" };\n IfcStructuralSurfaceActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralSurfaceActivityTypeEnum.ISOCONTOUR = { type: 3, value: \"ISOCONTOUR\" };\n IfcStructuralSurfaceActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralSurfaceActivityTypeEnum = IfcStructuralSurfaceActivityTypeEnum;\n class IfcStructuralSurfaceMemberTypeEnum {\n }\n IfcStructuralSurfaceMemberTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralSurfaceMemberTypeEnum = IfcStructuralSurfaceMemberTypeEnum;\n class IfcSubContractResourceTypeEnum {\n }\n IfcSubContractResourceTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcSubContractResourceTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcSubContractResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSubContractResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSubContractResourceTypeEnum = IfcSubContractResourceTypeEnum;\n class IfcSurfaceFeatureTypeEnum {\n }\n IfcSurfaceFeatureTypeEnum.MARK = { type: 3, value: \"MARK\" };\n IfcSurfaceFeatureTypeEnum.TAG = { type: 3, value: \"TAG\" };\n IfcSurfaceFeatureTypeEnum.TREATMENT = { type: 3, value: \"TREATMENT\" };\n IfcSurfaceFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSurfaceFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSurfaceFeatureTypeEnum = IfcSurfaceFeatureTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IFC42.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.DIMMERSWITCH = { type: 3, value: \"DIMMERSWITCH\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.KEYPAD = { type: 3, value: \"KEYPAD\" };\n IfcSwitchingDeviceTypeEnum.MOMENTARYSWITCH = { type: 3, value: \"MOMENTARYSWITCH\" };\n IfcSwitchingDeviceTypeEnum.SELECTORSWITCH = { type: 3, value: \"SELECTORSWITCH\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcSystemFurnitureElementTypeEnum {\n }\n IfcSystemFurnitureElementTypeEnum.PANEL = { type: 3, value: \"PANEL\" };\n IfcSystemFurnitureElementTypeEnum.WORKSURFACE = { type: 3, value: \"WORKSURFACE\" };\n IfcSystemFurnitureElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSystemFurnitureElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSystemFurnitureElementTypeEnum = IfcSystemFurnitureElementTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.BASIN = { type: 3, value: \"BASIN\" };\n IfcTankTypeEnum.BREAKPRESSURE = { type: 3, value: \"BREAKPRESSURE\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.FEEDANDEXPANSION = { type: 3, value: \"FEEDANDEXPANSION\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.STORAGE = { type: 3, value: \"STORAGE\" };\n IfcTankTypeEnum.VESSEL = { type: 3, value: \"VESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTaskDurationEnum {\n }\n IfcTaskDurationEnum.ELAPSEDTIME = { type: 3, value: \"ELAPSEDTIME\" };\n IfcTaskDurationEnum.WORKTIME = { type: 3, value: \"WORKTIME\" };\n IfcTaskDurationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTaskDurationEnum = IfcTaskDurationEnum;\n class IfcTaskTypeEnum {\n }\n IfcTaskTypeEnum.ATTENDANCE = { type: 3, value: \"ATTENDANCE\" };\n IfcTaskTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcTaskTypeEnum.DEMOLITION = { type: 3, value: \"DEMOLITION\" };\n IfcTaskTypeEnum.DISMANTLE = { type: 3, value: \"DISMANTLE\" };\n IfcTaskTypeEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcTaskTypeEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcTaskTypeEnum.LOGISTIC = { type: 3, value: \"LOGISTIC\" };\n IfcTaskTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcTaskTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcTaskTypeEnum.OPERATION = { type: 3, value: \"OPERATION\" };\n IfcTaskTypeEnum.REMOVAL = { type: 3, value: \"REMOVAL\" };\n IfcTaskTypeEnum.RENOVATION = { type: 3, value: \"RENOVATION\" };\n IfcTaskTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTaskTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTaskTypeEnum = IfcTaskTypeEnum;\n class IfcTendonAnchorTypeEnum {\n }\n IfcTendonAnchorTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonAnchorTypeEnum.FIXED_END = { type: 3, value: \"FIXED_END\" };\n IfcTendonAnchorTypeEnum.TENSIONING_END = { type: 3, value: \"TENSIONING_END\" };\n IfcTendonAnchorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonAnchorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTendonAnchorTypeEnum = IfcTendonAnchorTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IFC42.IfcTextPath = IfcTextPath;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.INVERTER = { type: 3, value: \"INVERTER\" };\n IfcTransformerTypeEnum.RECTIFIER = { type: 3, value: \"RECTIFIER\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IFC42.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.CRANEWAY = { type: 3, value: \"CRANEWAY\" };\n IfcTransportElementTypeEnum.LIFTINGGEAR = { type: 3, value: \"LIFTINGGEAR\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryControlElementTypeEnum {\n }\n IfcUnitaryControlElementTypeEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcUnitaryControlElementTypeEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcUnitaryControlElementTypeEnum.GASDETECTIONPANEL = { type: 3, value: \"GASDETECTIONPANEL\" };\n IfcUnitaryControlElementTypeEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcUnitaryControlElementTypeEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcUnitaryControlElementTypeEnum.HUMIDISTAT = { type: 3, value: \"HUMIDISTAT\" };\n IfcUnitaryControlElementTypeEnum.THERMOSTAT = { type: 3, value: \"THERMOSTAT\" };\n IfcUnitaryControlElementTypeEnum.WEATHERSTATION = { type: 3, value: \"WEATHERSTATION\" };\n IfcUnitaryControlElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryControlElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcUnitaryControlElementTypeEnum = IfcUnitaryControlElementTypeEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.DEHUMIDIFIER = { type: 3, value: \"DEHUMIDIFIER\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcVoidingFeatureTypeEnum {\n }\n IfcVoidingFeatureTypeEnum.CUTOUT = { type: 3, value: \"CUTOUT\" };\n IfcVoidingFeatureTypeEnum.NOTCH = { type: 3, value: \"NOTCH\" };\n IfcVoidingFeatureTypeEnum.HOLE = { type: 3, value: \"HOLE\" };\n IfcVoidingFeatureTypeEnum.MITER = { type: 3, value: \"MITER\" };\n IfcVoidingFeatureTypeEnum.CHAMFER = { type: 3, value: \"CHAMFER\" };\n IfcVoidingFeatureTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcVoidingFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVoidingFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcVoidingFeatureTypeEnum = IfcVoidingFeatureTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.MOVABLE = { type: 3, value: \"MOVABLE\" };\n IfcWallTypeEnum.PARAPET = { type: 3, value: \"PARAPET\" };\n IfcWallTypeEnum.PARTITIONING = { type: 3, value: \"PARTITIONING\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.SOLIDWALL = { type: 3, value: \"SOLIDWALL\" };\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWindowTypeEnum {\n }\n IfcWindowTypeEnum.WINDOW = { type: 3, value: \"WINDOW\" };\n IfcWindowTypeEnum.SKYLIGHT = { type: 3, value: \"SKYLIGHT\" };\n IfcWindowTypeEnum.LIGHTDOME = { type: 3, value: \"LIGHTDOME\" };\n IfcWindowTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowTypeEnum = IfcWindowTypeEnum;\n class IfcWindowTypePartitioningEnum {\n }\n IfcWindowTypePartitioningEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypePartitioningEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowTypePartitioningEnum = IfcWindowTypePartitioningEnum;\n class IfcWorkCalendarTypeEnum {\n }\n IfcWorkCalendarTypeEnum.FIRSTSHIFT = { type: 3, value: \"FIRSTSHIFT\" };\n IfcWorkCalendarTypeEnum.SECONDSHIFT = { type: 3, value: \"SECONDSHIFT\" };\n IfcWorkCalendarTypeEnum.THIRDSHIFT = { type: 3, value: \"THIRDSHIFT\" };\n IfcWorkCalendarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkCalendarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkCalendarTypeEnum = IfcWorkCalendarTypeEnum;\n class IfcWorkPlanTypeEnum {\n }\n IfcWorkPlanTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkPlanTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkPlanTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkPlanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkPlanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkPlanTypeEnum = IfcWorkPlanTypeEnum;\n class IfcWorkScheduleTypeEnum {\n }\n IfcWorkScheduleTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkScheduleTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkScheduleTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkScheduleTypeEnum = IfcWorkScheduleTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC42.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC42.IfcAddress = IfcAddress;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC42.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 411424972;\n }\n }\n IFC42.IfcAppliedValue = IfcAppliedValue;\n class IfcApproval extends IfcLineObject {\n constructor(Identifier, Name, Description, TimeOfApproval, Status, Level, Qualifier, RequestingApproval, GivingApproval) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.TimeOfApproval = TimeOfApproval;\n this.Status = Status;\n this.Level = Level;\n this.Qualifier = Qualifier;\n this.RequestingApproval = RequestingApproval;\n this.GivingApproval = GivingApproval;\n this.type = 130549933;\n }\n }\n IFC42.IfcApproval = IfcApproval;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC42.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByLengthX, TranslationalStiffnessByLengthY, TranslationalStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByLengthX = TranslationalStiffnessByLengthX;\n this.TranslationalStiffnessByLengthY = TranslationalStiffnessByLengthY;\n this.TranslationalStiffnessByLengthZ = TranslationalStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC42.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByAreaX, TranslationalStiffnessByAreaY, TranslationalStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByAreaX = TranslationalStiffnessByAreaX;\n this.TranslationalStiffnessByAreaY = TranslationalStiffnessByAreaY;\n this.TranslationalStiffnessByAreaZ = TranslationalStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC42.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC42.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC42.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC42.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC42.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC42.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConnectionVolumeGeometry extends IfcConnectionGeometry {\n constructor(VolumeOnRelatingElement, VolumeOnRelatedElement) {\n super();\n this.VolumeOnRelatingElement = VolumeOnRelatingElement;\n this.VolumeOnRelatedElement = VolumeOnRelatedElement;\n this.type = 775493141;\n }\n }\n IFC42.IfcConnectionVolumeGeometry = IfcConnectionVolumeGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC42.IfcConstraint = IfcConstraint;\n class IfcCoordinateOperation extends IfcLineObject {\n constructor(SourceCRS, TargetCRS) {\n super();\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.type = 1785450214;\n }\n }\n IFC42.IfcCoordinateOperation = IfcCoordinateOperation;\n class IfcCoordinateReferenceSystem extends IfcLineObject {\n constructor(Name, Description, GeodeticDatum, VerticalDatum) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.type = 1466758467;\n }\n }\n IFC42.IfcCoordinateReferenceSystem = IfcCoordinateReferenceSystem;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 602808272;\n }\n }\n IFC42.IfcCostValue = IfcCostValue;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.type = 1765591967;\n }\n }\n IFC42.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC42.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC42.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcExternalInformation extends IfcLineObject {\n constructor() {\n super();\n this.type = 4294318154;\n }\n }\n IFC42.IfcExternalInformation = IfcExternalInformation;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, Identification, Name) {\n super();\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC42.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC42.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC42.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC42.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC42.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC42.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcExternalInformation {\n constructor(Name, Version, Publisher, VersionDate, Location, Description) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.Location = Location;\n this.Description = Description;\n this.type = 2655187982;\n }\n }\n IFC42.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, Language, ReferencedLibrary) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Language = Language;\n this.ReferencedLibrary = ReferencedLibrary;\n this.type = 3452421091;\n }\n }\n IFC42.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC42.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC42.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcMapConversion extends IfcCoordinateOperation {\n constructor(SourceCRS, TargetCRS, Eastings, Northings, OrthogonalHeight, XAxisAbscissa, XAxisOrdinate, Scale) {\n super(SourceCRS, TargetCRS);\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.Eastings = Eastings;\n this.Northings = Northings;\n this.OrthogonalHeight = OrthogonalHeight;\n this.XAxisAbscissa = XAxisAbscissa;\n this.XAxisOrdinate = XAxisOrdinate;\n this.Scale = Scale;\n this.type = 3057273783;\n }\n }\n IFC42.IfcMapConversion = IfcMapConversion;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC42.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 760658860;\n }\n }\n IFC42.IfcMaterialDefinition = IfcMaterialDefinition;\n class IfcMaterialLayer extends IfcMaterialDefinition {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.type = 248100487;\n }\n }\n IFC42.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcMaterialDefinition {\n constructor(MaterialLayers, LayerSetName, Description) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.Description = Description;\n this.type = 3303938423;\n }\n }\n IFC42.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerWithOffsets extends IfcMaterialLayer {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority, OffsetDirection, OffsetValues) {\n super(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority);\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.OffsetDirection = OffsetDirection;\n this.OffsetValues = OffsetValues;\n this.type = 1847252529;\n }\n }\n IFC42.IfcMaterialLayerWithOffsets = IfcMaterialLayerWithOffsets;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC42.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProfile extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Profile, Priority, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.type = 2235152071;\n }\n }\n IFC42.IfcMaterialProfile = IfcMaterialProfile;\n class IfcMaterialProfileSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialProfiles, CompositeProfile) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialProfiles = MaterialProfiles;\n this.CompositeProfile = CompositeProfile;\n this.type = 164193824;\n }\n }\n IFC42.IfcMaterialProfileSet = IfcMaterialProfileSet;\n class IfcMaterialProfileWithOffsets extends IfcMaterialProfile {\n constructor(Name, Description, Material, Profile, Priority, Category, OffsetValues) {\n super(Name, Description, Material, Profile, Priority, Category);\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.OffsetValues = OffsetValues;\n this.type = 552965576;\n }\n }\n IFC42.IfcMaterialProfileWithOffsets = IfcMaterialProfileWithOffsets;\n class IfcMaterialUsageDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 1507914824;\n }\n }\n IFC42.IfcMaterialUsageDefinition = IfcMaterialUsageDefinition;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC42.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue, ReferencePath) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.ReferencePath = ReferencePath;\n this.type = 3368373690;\n }\n }\n IFC42.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC42.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC42.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor() {\n super();\n this.type = 3701648758;\n }\n }\n IFC42.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, LogicalAggregator, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.LogicalAggregator = LogicalAggregator;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC42.IfcObjective = IfcObjective;\n class IfcOrganization extends IfcLineObject {\n constructor(Identification, Name, Description, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC42.IfcOrganization = IfcOrganization;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC42.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Identification, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC42.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC42.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC42.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC42.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC42.IfcPostalAddress = IfcPostalAddress;\n class IfcPresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 677532197;\n }\n }\n IFC42.IfcPresentationItem = IfcPresentationItem;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC42.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC42.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC42.IfcPresentationStyle = IfcPresentationStyle;\n class IfcPresentationStyleAssignment extends IfcLineObject {\n constructor(Styles) {\n super();\n this.Styles = Styles;\n this.type = 2417041796;\n }\n }\n IFC42.IfcPresentationStyleAssignment = IfcPresentationStyleAssignment;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC42.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC42.IfcProfileDef = IfcProfileDef;\n class IfcProjectedCRS extends IfcCoordinateReferenceSystem {\n constructor(Name, Description, GeodeticDatum, VerticalDatum, MapProjection, MapZone, MapUnit) {\n super(Name, Description, GeodeticDatum, VerticalDatum);\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.MapProjection = MapProjection;\n this.MapZone = MapZone;\n this.MapUnit = MapUnit;\n this.type = 3843373140;\n }\n }\n IFC42.IfcProjectedCRS = IfcProjectedCRS;\n class IfcPropertyAbstraction extends IfcLineObject {\n constructor() {\n super();\n this.type = 986844984;\n }\n }\n IFC42.IfcPropertyAbstraction = IfcPropertyAbstraction;\n class IfcPropertyEnumeration extends IfcPropertyAbstraction {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC42.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.Formula = Formula;\n this.type = 2044713172;\n }\n }\n IFC42.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.Formula = Formula;\n this.type = 2093928680;\n }\n }\n IFC42.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.Formula = Formula;\n this.type = 931644368;\n }\n }\n IFC42.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.Formula = Formula;\n this.type = 3252649465;\n }\n }\n IFC42.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.Formula = Formula;\n this.type = 2405470396;\n }\n }\n IFC42.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.Formula = Formula;\n this.type = 825690147;\n }\n }\n IFC42.IfcQuantityWeight = IfcQuantityWeight;\n class IfcRecurrencePattern extends IfcLineObject {\n constructor(RecurrenceType, DayComponent, WeekdayComponent, MonthComponent, Position, Interval, Occurrences, TimePeriods) {\n super();\n this.RecurrenceType = RecurrenceType;\n this.DayComponent = DayComponent;\n this.WeekdayComponent = WeekdayComponent;\n this.MonthComponent = MonthComponent;\n this.Position = Position;\n this.Interval = Interval;\n this.Occurrences = Occurrences;\n this.TimePeriods = TimePeriods;\n this.type = 3915482550;\n }\n }\n IFC42.IfcRecurrencePattern = IfcRecurrencePattern;\n class IfcReference extends IfcLineObject {\n constructor(TypeIdentifier, AttributeIdentifier, InstanceName, ListPositions, InnerReference) {\n super();\n this.TypeIdentifier = TypeIdentifier;\n this.AttributeIdentifier = AttributeIdentifier;\n this.InstanceName = InstanceName;\n this.ListPositions = ListPositions;\n this.InnerReference = InnerReference;\n this.type = 2433181523;\n }\n }\n IFC42.IfcReference = IfcReference;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC42.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC42.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC42.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC42.IfcRepresentationMap = IfcRepresentationMap;\n class IfcResourceLevelRelationship extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2439245199;\n }\n }\n IFC42.IfcResourceLevelRelationship = IfcResourceLevelRelationship;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC42.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(UnitType, Prefix, Name) {\n super(new Handle(0), UnitType);\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC42.IfcSIUnit = IfcSIUnit;\n class IfcSchedulingTime extends IfcLineObject {\n constructor(Name, DataOrigin, UserDefinedDataOrigin) {\n super();\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.type = 1054537805;\n }\n }\n IFC42.IfcSchedulingTime = IfcSchedulingTime;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC42.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC42.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC42.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC42.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC42.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadConfiguration extends IfcStructuralLoad {\n constructor(Name, Values, Locations) {\n super(Name);\n this.Name = Name;\n this.Values = Values;\n this.Locations = Locations;\n this.type = 3478079324;\n }\n }\n IFC42.IfcStructuralLoadConfiguration = IfcStructuralLoadConfiguration;\n class IfcStructuralLoadOrResult extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 609421318;\n }\n }\n IFC42.IfcStructuralLoadOrResult = IfcStructuralLoadOrResult;\n class IfcStructuralLoadStatic extends IfcStructuralLoadOrResult {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC42.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaTConstant, DeltaTY, DeltaTZ) {\n super(Name);\n this.Name = Name;\n this.DeltaTConstant = DeltaTConstant;\n this.DeltaTY = DeltaTY;\n this.DeltaTZ = DeltaTZ;\n this.type = 3408363356;\n }\n }\n IFC42.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC42.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC42.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC42.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceReinforcementArea extends IfcStructuralLoadOrResult {\n constructor(Name, SurfaceReinforcement1, SurfaceReinforcement2, ShearReinforcement) {\n super(Name);\n this.Name = Name;\n this.SurfaceReinforcement1 = SurfaceReinforcement1;\n this.SurfaceReinforcement2 = SurfaceReinforcement2;\n this.ShearReinforcement = ShearReinforcement;\n this.type = 2934153892;\n }\n }\n IFC42.IfcSurfaceReinforcementArea = IfcSurfaceReinforcementArea;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC42.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcPresentationItem {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC42.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcPresentationItem {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC42.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcPresentationItem {\n constructor(SurfaceColour, Transparency) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.type = 846575682;\n }\n }\n IFC42.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcPresentationItem {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC42.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcPresentationItem {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.type = 626085974;\n }\n }\n IFC42.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows, Columns) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.Columns = Columns;\n this.type = 985171141;\n }\n }\n IFC42.IfcTable = IfcTable;\n class IfcTableColumn extends IfcLineObject {\n constructor(Identifier, Name, Description, Unit, ReferencePath) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.ReferencePath = ReferencePath;\n this.type = 2043862942;\n }\n }\n IFC42.IfcTableColumn = IfcTableColumn;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC42.IfcTableRow = IfcTableRow;\n class IfcTaskTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.type = 1549132990;\n }\n }\n IFC42.IfcTaskTime = IfcTaskTime;\n class IfcTaskTimeRecurring extends IfcTaskTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion, Recurrence) {\n super(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.Recurrence = Recurrence;\n this.type = 2771591690;\n }\n }\n IFC42.IfcTaskTimeRecurring = IfcTaskTimeRecurring;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL, MessagingIDs) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.MessagingIDs = MessagingIDs;\n this.type = 912023232;\n }\n }\n IFC42.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 1447204868;\n }\n }\n IFC42.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleForDefinedFont extends IfcPresentationItem {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC42.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcPresentationItem {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC42.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextureCoordinate extends IfcPresentationItem {\n constructor(Maps) {\n super();\n this.Maps = Maps;\n this.type = 280115917;\n }\n }\n IFC42.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Maps, Mode, Parameter) {\n super(Maps);\n this.Maps = Maps;\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC42.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(Maps, Vertices, MappedTo) {\n super(Maps);\n this.Maps = Maps;\n this.Vertices = Vertices;\n this.MappedTo = MappedTo;\n this.type = 2552916305;\n }\n }\n IFC42.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcPresentationItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC42.IfcTextureVertex = IfcTextureVertex;\n class IfcTextureVertexList extends IfcPresentationItem {\n constructor(TexCoordsList) {\n super();\n this.TexCoordsList = TexCoordsList;\n this.type = 3611470254;\n }\n }\n IFC42.IfcTextureVertexList = IfcTextureVertexList;\n class IfcTimePeriod extends IfcLineObject {\n constructor(StartTime, EndTime) {\n super();\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.type = 1199560280;\n }\n }\n IFC42.IfcTimePeriod = IfcTimePeriod;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC42.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC42.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC42.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC42.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC42.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC42.IfcVertex = IfcVertex;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC42.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC42.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWorkTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, RecurrencePattern, Start, Finish) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.RecurrencePattern = RecurrencePattern;\n this.Start = Start;\n this.Finish = Finish;\n this.type = 1236880293;\n }\n }\n IFC42.IfcWorkTime = IfcWorkTime;\n class IfcApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingApproval, RelatedApprovals) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingApproval = RelatingApproval;\n this.RelatedApprovals = RelatedApprovals;\n this.type = 3869604511;\n }\n }\n IFC42.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC42.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC42.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC42.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC42.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC42.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassification extends IfcExternalInformation {\n constructor(Source, Edition, EditionDate, Name, Description, Location, ReferenceTokens) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.ReferenceTokens = ReferenceTokens;\n this.type = 747523909;\n }\n }\n IFC42.IfcClassification = IfcClassification;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, Identification, Name, ReferencedSource, Description, Sort) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.Description = Description;\n this.Sort = Sort;\n this.type = 647927063;\n }\n }\n IFC42.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgbList extends IfcPresentationItem {\n constructor(ColourList) {\n super();\n this.ColourList = ColourList;\n this.type = 3285139300;\n }\n }\n IFC42.IfcColourRgbList = IfcColourRgbList;\n class IfcColourSpecification extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC42.IfcColourSpecification = IfcColourSpecification;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC42.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC42.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC42.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC42.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC42.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC42.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcConversionBasedUnitWithOffset extends IfcConversionBasedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor, ConversionOffset) {\n super(Dimensions, UnitType, Name, ConversionFactor);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.ConversionOffset = ConversionOffset;\n this.type = 2713554722;\n }\n }\n IFC42.IfcConversionBasedUnitWithOffset = IfcConversionBasedUnitWithOffset;\n class IfcCurrencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC42.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 3800577675;\n }\n }\n IFC42.IfcCurveStyle = IfcCurveStyle;\n class IfcCurveStyleFont extends IfcPresentationItem {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC42.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcPresentationItem {\n constructor(Name, CurveFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC42.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcPresentationItem {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC42.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC42.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDocumentInformation extends IfcExternalInformation {\n constructor(Identification, Name, Description, Location, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC42.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingDocument, RelatedDocuments, RelationshipType) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC42.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, ReferencedDocument) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.ReferencedDocument = ReferencedDocument;\n this.type = 3732053477;\n }\n }\n IFC42.IfcDocumentReference = IfcDocumentReference;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC42.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC42.IfcEdgeCurve = IfcEdgeCurve;\n class IfcEventTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ActualDate, EarlyDate, LateDate, ScheduleDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ActualDate = ActualDate;\n this.EarlyDate = EarlyDate;\n this.LateDate = LateDate;\n this.ScheduleDate = ScheduleDate;\n this.type = 211053100;\n }\n }\n IFC42.IfcEventTime = IfcEventTime;\n class IfcExtendedProperties extends IfcPropertyAbstraction {\n constructor(Name, Description, Properties2) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.type = 297599258;\n }\n }\n IFC42.IfcExtendedProperties = IfcExtendedProperties;\n class IfcExternalReferenceRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingReference, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingReference = RelatingReference;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1437805879;\n }\n }\n IFC42.IfcExternalReferenceRelationship = IfcExternalReferenceRelationship;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC42.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC42.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC42.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC42.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC42.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles, ModelorDraughting) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.ModelorDraughting = ModelorDraughting;\n this.type = 738692330;\n }\n }\n IFC42.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC42.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC42.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, new Handle(0), null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC42.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC42.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementLocation, PlacementRefDirection) {\n super();\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC42.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC42.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, URLReference) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.URLReference = URLReference;\n this.type = 3905492369;\n }\n }\n IFC42.IfcImageTexture = IfcImageTexture;\n class IfcIndexedColourMap extends IfcPresentationItem {\n constructor(MappedTo, Opacity, Colours, ColourIndex) {\n super();\n this.MappedTo = MappedTo;\n this.Opacity = Opacity;\n this.Colours = Colours;\n this.ColourIndex = ColourIndex;\n this.type = 3570813810;\n }\n }\n IFC42.IfcIndexedColourMap = IfcIndexedColourMap;\n class IfcIndexedTextureMap extends IfcTextureCoordinate {\n constructor(Maps, MappedTo, TexCoords) {\n super(Maps);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.type = 1437953363;\n }\n }\n IFC42.IfcIndexedTextureMap = IfcIndexedTextureMap;\n class IfcIndexedTriangleTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndex) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndex = TexCoordIndex;\n this.type = 2133299955;\n }\n }\n IFC42.IfcIndexedTriangleTextureMap = IfcIndexedTriangleTextureMap;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC42.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLagTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, LagValue, DurationType) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.LagValue = LagValue;\n this.DurationType = DurationType;\n this.type = 1585845231;\n }\n }\n IFC42.IfcLagTime = IfcLagTime;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC42.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC42.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC42.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC42.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC42.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC42.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC42.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC42.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC42.IfcMappedItem = IfcMappedItem;\n class IfcMaterial extends IfcMaterialDefinition {\n constructor(Name, Description, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.type = 1838606355;\n }\n }\n IFC42.IfcMaterial = IfcMaterial;\n class IfcMaterialConstituent extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Fraction, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Fraction = Fraction;\n this.Category = Category;\n this.type = 3708119e3;\n }\n }\n IFC42.IfcMaterialConstituent = IfcMaterialConstituent;\n class IfcMaterialConstituentSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialConstituents) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialConstituents = MaterialConstituents;\n this.type = 2852063980;\n }\n }\n IFC42.IfcMaterialConstituentSet = IfcMaterialConstituentSet;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC42.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMaterialLayerSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine, ReferenceExtent) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 1303795690;\n }\n }\n IFC42.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialProfileSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent) {\n super();\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 3079605661;\n }\n }\n IFC42.IfcMaterialProfileSetUsage = IfcMaterialProfileSetUsage;\n class IfcMaterialProfileSetUsageTapering extends IfcMaterialProfileSetUsage {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent, ForProfileEndSet, CardinalEndPoint) {\n super(ForProfileSet, CardinalPoint, ReferenceExtent);\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.ForProfileEndSet = ForProfileEndSet;\n this.CardinalEndPoint = CardinalEndPoint;\n this.type = 3404854881;\n }\n }\n IFC42.IfcMaterialProfileSetUsageTapering = IfcMaterialProfileSetUsageTapering;\n class IfcMaterialProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, Material) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC42.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMaterialRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMaterial, RelatedMaterials, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMaterial = RelatingMaterial;\n this.RelatedMaterials = RelatedMaterials;\n this.Expression = Expression;\n this.type = 853536259;\n }\n }\n IFC42.IfcMaterialRelationship = IfcMaterialRelationship;\n class IfcMirroredProfileDef extends IfcDerivedProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Label) {\n super(ProfileType, ProfileName, ParentProfile, new Handle(0), Label);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Label = Label;\n this.type = 2998442950;\n }\n }\n IFC42.IfcMirroredProfileDef = IfcMirroredProfileDef;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC42.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC42.IfcOpenShell = IfcOpenShell;\n class IfcOrganizationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC42.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeElement, Orientation) {\n super(new Handle(0), new Handle(0));\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC42.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC42.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC42.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC42.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC42.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC42.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC42.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC42.IfcPoint = IfcPoint;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC42.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC42.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC42.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC42.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedItem extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC42.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedProperties extends IfcPropertyAbstraction {\n constructor() {\n super();\n this.type = 3778827333;\n }\n }\n IFC42.IfcPreDefinedProperties = IfcPreDefinedProperties;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC42.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC42.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcProfileProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, ProfileDefinition) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC42.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcPropertyAbstraction {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2598011224;\n }\n }\n IFC42.IfcProperty = IfcProperty;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC42.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyDependencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, DependingProperty, DependantProperty, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC42.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC42.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertyTemplateDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1482703590;\n }\n }\n IFC42.IfcPropertyTemplateDefinition = IfcPropertyTemplateDefinition;\n class IfcQuantitySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2090586900;\n }\n }\n IFC42.IfcQuantitySet = IfcQuantitySet;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC42.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC42.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementBarProperties extends IfcPreDefinedProperties {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC42.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC42.IfcRelationship = IfcRelationship;\n class IfcResourceApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatedResourceObjects, RelatingApproval) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 2943643501;\n }\n }\n IFC42.IfcResourceApprovalRelationship = IfcResourceApprovalRelationship;\n class IfcResourceConstraintRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingConstraint, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1608871552;\n }\n }\n IFC42.IfcResourceConstraintRelationship = IfcResourceConstraintRelationship;\n class IfcResourceTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ScheduleWork, ScheduleUsage, ScheduleStart, ScheduleFinish, ScheduleContour, LevelingDelay, IsOverAllocated, StatusTime, ActualWork, ActualUsage, ActualStart, ActualFinish, RemainingWork, RemainingUsage, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ScheduleWork = ScheduleWork;\n this.ScheduleUsage = ScheduleUsage;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleContour = ScheduleContour;\n this.LevelingDelay = LevelingDelay;\n this.IsOverAllocated = IsOverAllocated;\n this.StatusTime = StatusTime;\n this.ActualWork = ActualWork;\n this.ActualUsage = ActualUsage;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingWork = RemainingWork;\n this.RemainingUsage = RemainingUsage;\n this.Completion = Completion;\n this.type = 1042787934;\n }\n }\n IFC42.IfcResourceTime = IfcResourceTime;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC42.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionProperties extends IfcPreDefinedProperties {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC42.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcPreDefinedProperties {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC42.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC42.IfcSectionedSpine = IfcSectionedSpine;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC42.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Description) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.type = 3692461612;\n }\n }\n IFC42.IfcSimpleProperty = IfcSimpleProperty;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC42.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC42.IfcSolidModel = IfcSolidModel;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC42.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC42.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC42.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC42.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC42.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC42.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC42.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC42.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour, Transparency);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC42.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC42.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC42.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptDiskSolidPolygonal extends IfcSweptDiskSolid {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam, FilletRadius) {\n super(Directrix, Radius, InnerRadius, StartParam, EndParam);\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FilletRadius = FilletRadius;\n this.type = 1096409881;\n }\n }\n IFC42.IfcSweptDiskSolidPolygonal = IfcSweptDiskSolidPolygonal;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC42.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.type = 3071757647;\n }\n }\n IFC42.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTessellatedItem extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 901063453;\n }\n }\n IFC42.IfcTessellatedItem = IfcTessellatedItem;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC42.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC42.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC42.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC42.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC42.IfcTypeObject = IfcTypeObject;\n class IfcTypeProcess extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.type = 3736923433;\n }\n }\n IFC42.IfcTypeProcess = IfcTypeProcess;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC42.IfcTypeProduct = IfcTypeProduct;\n class IfcTypeResource extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.type = 3698973494;\n }\n }\n IFC42.IfcTypeResource = IfcTypeResource;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 427810014;\n }\n }\n IFC42.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC42.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC42.IfcVertexLoop = IfcVertexLoop;\n class IfcWindowStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ConstructionType, OperationType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ConstructionType = ConstructionType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 1299126871;\n }\n }\n IFC42.IfcWindowStyle = IfcWindowStyle;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC42.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAdvancedFace extends IfcFaceSurface {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds, FaceSurface, SameSense);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3406155212;\n }\n }\n IFC42.IfcAdvancedFace = IfcAdvancedFace;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC42.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAsymmetricIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomFlangeWidth, OverallDepth, WebThickness, BottomFlangeThickness, BottomFlangeFilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, BottomFlangeEdgeRadius, BottomFlangeSlope, TopFlangeEdgeRadius, TopFlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomFlangeWidth = BottomFlangeWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.BottomFlangeThickness = BottomFlangeThickness;\n this.BottomFlangeFilletRadius = BottomFlangeFilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.BottomFlangeEdgeRadius = BottomFlangeEdgeRadius;\n this.BottomFlangeSlope = BottomFlangeSlope;\n this.TopFlangeEdgeRadius = TopFlangeEdgeRadius;\n this.TopFlangeSlope = TopFlangeSlope;\n this.type = 3207858831;\n }\n }\n IFC42.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC42.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC42.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC42.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC42.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC42.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC42.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC42.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.type = 2898889636;\n }\n }\n IFC42.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC42.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianPointList extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 574549367;\n }\n }\n IFC42.IfcCartesianPointList = IfcCartesianPointList;\n class IfcCartesianPointList2D extends IfcCartesianPointList {\n constructor(CoordList) {\n super();\n this.CoordList = CoordList;\n this.type = 1675464909;\n }\n }\n IFC42.IfcCartesianPointList2D = IfcCartesianPointList2D;\n class IfcCartesianPointList3D extends IfcCartesianPointList {\n constructor(CoordList) {\n super();\n this.CoordList = CoordList;\n this.type = 2059837836;\n }\n }\n IFC42.IfcCartesianPointList3D = IfcCartesianPointList3D;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC42.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC42.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC42.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC42.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC42.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC42.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC42.IfcClosedShell = IfcClosedShell;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC42.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Description, UsageName, HasProperties) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC42.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeCurveSegment extends IfcGeometricRepresentationItem {\n constructor(Transition, SameSense, ParentCurve) {\n super();\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC42.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcConstructionResourceType extends IfcTypeResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2574617495;\n }\n }\n IFC42.IfcConstructionResourceType = IfcConstructionResourceType;\n class IfcContext extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 3419103109;\n }\n }\n IFC42.IfcContext = IfcContext;\n class IfcCrewResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1815067380;\n }\n }\n IFC42.IfcCrewResourceType = IfcCrewResourceType;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC42.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC42.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC42.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC42.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcCurveBoundedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, Boundaries, ImplicitOuter) {\n super();\n this.BasisSurface = BasisSurface;\n this.Boundaries = Boundaries;\n this.ImplicitOuter = ImplicitOuter;\n this.type = 2629017746;\n }\n }\n IFC42.IfcCurveBoundedSurface = IfcCurveBoundedSurface;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC42.IfcDirection = IfcDirection;\n class IfcDoorStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, OperationType, ConstructionType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.ConstructionType = ConstructionType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 526551008;\n }\n }\n IFC42.IfcDoorStyle = IfcDoorStyle;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC42.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcQuantitySet {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC42.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC42.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC42.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC42.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEventType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, EventTriggerType, UserDefinedEventTriggerType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.type = 4024345920;\n }\n }\n IFC42.IfcEventType = IfcEventType;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC42.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcExtrudedAreaSolidTapered extends IfcExtrudedAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth, EndSweptArea) {\n super(SweptArea, Position, ExtrudedDirection, Depth);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.EndSweptArea = EndSweptArea;\n this.type = 2804161546;\n }\n }\n IFC42.IfcExtrudedAreaSolidTapered = IfcExtrudedAreaSolidTapered;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC42.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC42.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC42.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFixedReferenceSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 2652556860;\n }\n }\n IFC42.IfcFixedReferenceSweptAreaSolid = IfcFixedReferenceSweptAreaSolid;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC42.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 1268542332;\n }\n }\n IFC42.IfcFurnitureType = IfcFurnitureType;\n class IfcGeographicElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4095422895;\n }\n }\n IFC42.IfcGeographicElementType = IfcGeographicElementType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC42.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 1484403080;\n }\n }\n IFC42.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcIndexedPolygonalFace extends IfcTessellatedItem {\n constructor(CoordIndex) {\n super();\n this.CoordIndex = CoordIndex;\n this.type = 178912537;\n }\n }\n IFC42.IfcIndexedPolygonalFace = IfcIndexedPolygonalFace;\n class IfcIndexedPolygonalFaceWithVoids extends IfcIndexedPolygonalFace {\n constructor(CoordIndex, InnerCoordIndices) {\n super(CoordIndex);\n this.CoordIndex = CoordIndex;\n this.InnerCoordIndices = InnerCoordIndices;\n this.type = 2294589976;\n }\n }\n IFC42.IfcIndexedPolygonalFaceWithVoids = IfcIndexedPolygonalFaceWithVoids;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.type = 572779678;\n }\n }\n IFC42.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLaborResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 428585644;\n }\n }\n IFC42.IfcLaborResourceType = IfcLaborResourceType;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC42.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC42.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC42.IfcObject = IfcObject;\n class IfcOffsetCurve2D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC42.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC42.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcPcurve extends IfcCurve {\n constructor(BasisSurface, ReferenceCurve) {\n super();\n this.BasisSurface = BasisSurface;\n this.ReferenceCurve = ReferenceCurve;\n this.type = 1682466193;\n }\n }\n IFC42.IfcPcurve = IfcPcurve;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC42.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC42.IfcPlane = IfcPlane;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC42.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC42.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3967405729;\n }\n }\n IFC42.IfcPreDefinedPropertySet = IfcPreDefinedPropertySet;\n class IfcProcedureType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.type = 569719735;\n }\n }\n IFC42.IfcProcedureType = IfcProcedureType;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2945172077;\n }\n }\n IFC42.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC42.IfcProduct = IfcProduct;\n class IfcProject extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC42.IfcProject = IfcProject;\n class IfcProjectLibrary extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 653396225;\n }\n }\n IFC42.IfcProjectLibrary = IfcProjectLibrary;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Description, UpperBoundValue, LowerBoundValue, Unit, SetPointValue) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.SetPointValue = SetPointValue;\n this.type = 871118103;\n }\n }\n IFC42.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Description, EnumerationValues, EnumerationReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC42.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Description, ListValues, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC42.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Description, UsageName, PropertyReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC42.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC42.IfcPropertySet = IfcPropertySet;\n class IfcPropertySetTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, ApplicableEntity, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.ApplicableEntity = ApplicableEntity;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 492091185;\n }\n }\n IFC42.IfcPropertySetTemplate = IfcPropertySetTemplate;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Description, NominalValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC42.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Description, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit, CurveInterpolation) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.CurveInterpolation = CurveInterpolation;\n this.type = 110355661;\n }\n }\n IFC42.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcPropertyTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3521284610;\n }\n }\n IFC42.IfcPropertyTemplate = IfcPropertyTemplate;\n class IfcProxy extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, ProxyType, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.ProxyType = ProxyType;\n this.Tag = Tag;\n this.type = 3219374653;\n }\n }\n IFC42.IfcProxy = IfcProxy;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC42.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC42.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC42.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcReinforcementDefinitionProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC42.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC42.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC42.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC42.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC42.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToGroupByFactor extends IfcRelAssignsToGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup, Factor) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.Factor = Factor;\n this.type = 1027710054;\n }\n }\n IFC42.IfcRelAssignsToGroupByFactor = IfcRelAssignsToGroupByFactor;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC42.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC42.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC42.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC42.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC42.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC42.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC42.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC42.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC42.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC42.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC42.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC42.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC42.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC42.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC42.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC42.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC42.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC42.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC42.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC42.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC42.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC42.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDeclares extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingContext, RelatedDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingContext = RelatingContext;\n this.RelatedDefinitions = RelatedDefinitions;\n this.type = 2565941209;\n }\n }\n IFC42.IfcRelDeclares = IfcRelDeclares;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2551354335;\n }\n }\n IFC42.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 693640335;\n }\n }\n IFC42.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByObject extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingObject) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingObject = RelatingObject;\n this.type = 1462361463;\n }\n }\n IFC42.IfcRelDefinesByObject = IfcRelDefinesByObject;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC42.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByTemplate extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedPropertySets, RelatingTemplate) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedPropertySets = RelatedPropertySets;\n this.RelatingTemplate = RelatingTemplate;\n this.type = 307848117;\n }\n }\n IFC42.IfcRelDefinesByTemplate = IfcRelDefinesByTemplate;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC42.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC42.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC42.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInterferesElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedElement, InterferenceGeometry, InterferenceType, ImpliedOrder) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.InterferenceGeometry = InterferenceGeometry;\n this.InterferenceType = InterferenceType;\n this.ImpliedOrder = ImpliedOrder;\n this.type = 427948657;\n }\n }\n IFC42.IfcRelInterferesElements = IfcRelInterferesElements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC42.IfcRelNests = IfcRelNests;\n class IfcRelProjectsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC42.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC42.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType, UserDefinedSequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.UserDefinedSequenceType = UserDefinedSequenceType;\n this.type = 4122056220;\n }\n }\n IFC42.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC42.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC42.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelSpaceBoundary1stLevel extends IfcRelSpaceBoundary {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.type = 3523091289;\n }\n }\n IFC42.IfcRelSpaceBoundary1stLevel = IfcRelSpaceBoundary1stLevel;\n class IfcRelSpaceBoundary2ndLevel extends IfcRelSpaceBoundary1stLevel {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary, CorrespondingBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.CorrespondingBoundary = CorrespondingBoundary;\n this.type = 1521410863;\n }\n }\n IFC42.IfcRelSpaceBoundary2ndLevel = IfcRelSpaceBoundary2ndLevel;\n class IfcRelVoidsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC42.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcReparametrisedCompositeCurveSegment extends IfcCompositeCurveSegment {\n constructor(Transition, SameSense, ParentCurve, ParamLength) {\n super(Transition, SameSense, ParentCurve);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.ParamLength = ParamLength;\n this.type = 816062949;\n }\n }\n IFC42.IfcReparametrisedCompositeCurveSegment = IfcReparametrisedCompositeCurveSegment;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2914609552;\n }\n }\n IFC42.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC42.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRevolvedAreaSolidTapered extends IfcRevolvedAreaSolid {\n constructor(SweptArea, Position, Axis, Angle, EndSweptArea) {\n super(SweptArea, Position, Axis, Angle);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.EndSweptArea = EndSweptArea;\n this.type = 3243963512;\n }\n }\n IFC42.IfcRevolvedAreaSolidTapered = IfcRevolvedAreaSolidTapered;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC42.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC42.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSimplePropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, PrimaryMeasureType, SecondaryMeasureType, Enumerators, PrimaryUnit, SecondaryUnit, Expression, AccessState) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.PrimaryMeasureType = PrimaryMeasureType;\n this.SecondaryMeasureType = SecondaryMeasureType;\n this.Enumerators = Enumerators;\n this.PrimaryUnit = PrimaryUnit;\n this.SecondaryUnit = SecondaryUnit;\n this.Expression = Expression;\n this.AccessState = AccessState;\n this.type = 3663146110;\n }\n }\n IFC42.IfcSimplePropertyTemplate = IfcSimplePropertyTemplate;\n class IfcSpatialElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 1412071761;\n }\n }\n IFC42.IfcSpatialElement = IfcSpatialElement;\n class IfcSpatialElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 710998568;\n }\n }\n IFC42.IfcSpatialElementType = IfcSpatialElementType;\n class IfcSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC42.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC42.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSpatialZone extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 463610769;\n }\n }\n IFC42.IfcSpatialZone = IfcSpatialZone;\n class IfcSpatialZoneType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 2481509218;\n }\n }\n IFC42.IfcSpatialZoneType = IfcSpatialZoneType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC42.IfcSphere = IfcSphere;\n class IfcSphericalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 4015995234;\n }\n }\n IFC42.IfcSphericalSurface = IfcSphericalSurface;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC42.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC42.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC42.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC42.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC42.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 2218152070;\n }\n }\n IFC42.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuralSurfaceReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 603775116;\n }\n }\n IFC42.IfcStructuralSurfaceReaction = IfcStructuralSurfaceReaction;\n class IfcSubContractResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4095615324;\n }\n }\n IFC42.IfcSubContractResourceType = IfcSubContractResourceType;\n class IfcSurfaceCurve extends IfcCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super();\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 699246055;\n }\n }\n IFC42.IfcSurfaceCurve = IfcSurfaceCurve;\n class IfcSurfaceCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC42.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC42.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC42.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1580310250;\n }\n }\n IFC42.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Status, WorkMethod, IsMilestone, Priority, TaskTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.TaskTime = TaskTime;\n this.PredefinedType = PredefinedType;\n this.type = 3473067441;\n }\n }\n IFC42.IfcTask = IfcTask;\n class IfcTaskType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, WorkMethod) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.WorkMethod = WorkMethod;\n this.type = 3206491090;\n }\n }\n IFC42.IfcTaskType = IfcTaskType;\n class IfcTessellatedFaceSet extends IfcTessellatedItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 2387106220;\n }\n }\n IFC42.IfcTessellatedFaceSet = IfcTessellatedFaceSet;\n class IfcToroidalSurface extends IfcElementarySurface {\n constructor(Position, MajorRadius, MinorRadius) {\n super(Position);\n this.Position = Position;\n this.MajorRadius = MajorRadius;\n this.MinorRadius = MinorRadius;\n this.type = 1935646853;\n }\n }\n IFC42.IfcToroidalSurface = IfcToroidalSurface;\n class IfcTransportElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC42.IfcTransportElementType = IfcTransportElementType;\n class IfcTriangulatedFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Normals, Closed, CoordIndex, PnIndex) {\n super(Coordinates);\n this.Coordinates = Coordinates;\n this.Normals = Normals;\n this.Closed = Closed;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.type = 2916149573;\n }\n }\n IFC42.IfcTriangulatedFaceSet = IfcTriangulatedFaceSet;\n class IfcWindowLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle, LiningOffset, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningOffset = LiningOffset;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 336235671;\n }\n }\n IFC42.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC42.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC42.IfcActor = IfcActor;\n class IfcAdvancedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 1635779807;\n }\n }\n IFC42.IfcAdvancedBrep = IfcAdvancedBrep;\n class IfcAdvancedBrepWithVoids extends IfcAdvancedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 2603310189;\n }\n }\n IFC42.IfcAdvancedBrepWithVoids = IfcAdvancedBrepWithVoids;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1674181508;\n }\n }\n IFC42.IfcAnnotation = IfcAnnotation;\n class IfcBSplineSurface extends IfcBoundedSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect) {\n super();\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.type = 2887950389;\n }\n }\n IFC42.IfcBSplineSurface = IfcBSplineSurface;\n class IfcBSplineSurfaceWithKnots extends IfcBSplineSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.type = 167062518;\n }\n }\n IFC42.IfcBSplineSurfaceWithKnots = IfcBSplineSurfaceWithKnots;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC42.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC42.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC42.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuilding extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC42.IfcBuilding = IfcBuilding;\n class IfcBuildingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1950629157;\n }\n }\n IFC42.IfcBuildingElementType = IfcBuildingElementType;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC42.IfcBuildingStorey = IfcBuildingStorey;\n class IfcChimneyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2197970202;\n }\n }\n IFC42.IfcChimneyType = IfcChimneyType;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC42.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcCivilElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893394355;\n }\n }\n IFC42.IfcCivilElementType = IfcCivilElementType;\n class IfcColumnType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC42.IfcColumnType = IfcColumnType;\n class IfcComplexPropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, UsageName, TemplateType, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.TemplateType = TemplateType;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 3875453745;\n }\n }\n IFC42.IfcComplexPropertyTemplate = IfcComplexPropertyTemplate;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC42.IfcCompositeCurve = IfcCompositeCurve;\n class IfcCompositeCurveOnSurface extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 15328376;\n }\n }\n IFC42.IfcCompositeCurveOnSurface = IfcCompositeCurveOnSurface;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC42.IfcConic = IfcConic;\n class IfcConstructionEquipmentResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 2185764099;\n }\n }\n IFC42.IfcConstructionEquipmentResourceType = IfcConstructionEquipmentResourceType;\n class IfcConstructionMaterialResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4105962743;\n }\n }\n IFC42.IfcConstructionMaterialResourceType = IfcConstructionMaterialResourceType;\n class IfcConstructionProductResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1525564444;\n }\n }\n IFC42.IfcConstructionProductResourceType = IfcConstructionProductResourceType;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC42.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.type = 3293443760;\n }\n }\n IFC42.IfcControl = IfcControl;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, CostValues, CostQuantities) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.CostValues = CostValues;\n this.CostQuantities = CostQuantities;\n this.type = 3895139033;\n }\n }\n IFC42.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, SubmittedOn, UpdateDate) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.SubmittedOn = SubmittedOn;\n this.UpdateDate = UpdateDate;\n this.type = 1419761937;\n }\n }\n IFC42.IfcCostSchedule = IfcCostSchedule;\n class IfcCoveringType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC42.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3295246426;\n }\n }\n IFC42.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC42.IfcCurtainWallType = IfcCurtainWallType;\n class IfcCylindricalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1213902940;\n }\n }\n IFC42.IfcCylindricalSurface = IfcCylindricalSurface;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC42.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC42.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcDoorLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 2963535650;\n }\n }\n IFC42.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC42.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, OperationType, ParameterTakesPrecedence, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 2323601079;\n }\n }\n IFC42.IfcDoorType = IfcDoorType;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC42.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC42.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC42.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC42.IfcElementAssembly = IfcElementAssembly;\n class IfcElementAssemblyType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2397081782;\n }\n }\n IFC42.IfcElementAssemblyType = IfcElementAssemblyType;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC42.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC42.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC42.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC42.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEngineType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 132023988;\n }\n }\n IFC42.IfcEngineType = IfcEngineType;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC42.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC42.IfcEvaporatorType = IfcEvaporatorType;\n class IfcEvent extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType, EventTriggerType, UserDefinedEventTriggerType, EventOccurenceTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.EventOccurenceTime = EventOccurenceTime;\n this.type = 4148101412;\n }\n }\n IFC42.IfcEvent = IfcEvent;\n class IfcExternalSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 2853485674;\n }\n }\n IFC42.IfcExternalSpatialStructureElement = IfcExternalSpatialStructureElement;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC42.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcFacetedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC42.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 647756555;\n }\n }\n IFC42.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2489546625;\n }\n }\n IFC42.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC42.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC42.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC42.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC42.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC42.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC42.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC42.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC42.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC42.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC42.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC42.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFootingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1893162501;\n }\n }\n IFC42.IfcFootingType = IfcFootingType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC42.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurniture extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1509553395;\n }\n }\n IFC42.IfcFurniture = IfcFurniture;\n class IfcGeographicElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3493046030;\n }\n }\n IFC42.IfcGeographicElement = IfcGeographicElement;\n class IfcGrid extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.PredefinedType = PredefinedType;\n this.type = 3009204131;\n }\n }\n IFC42.IfcGrid = IfcGrid;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC42.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC42.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC42.IfcHumidifierType = IfcHumidifierType;\n class IfcIndexedPolyCurve extends IfcBoundedCurve {\n constructor(Points, Segments, SelfIntersect) {\n super();\n this.Points = Points;\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 2571569899;\n }\n }\n IFC42.IfcIndexedPolyCurve = IfcIndexedPolyCurve;\n class IfcInterceptorType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3946677679;\n }\n }\n IFC42.IfcInterceptorType = IfcInterceptorType;\n class IfcIntersectionCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3113134337;\n }\n }\n IFC42.IfcIntersectionCurve = IfcIntersectionCurve;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC42.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC42.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3827777499;\n }\n }\n IFC42.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC42.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC42.IfcLightFixtureType = IfcLightFixtureType;\n class IfcMechanicalFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.PredefinedType = PredefinedType;\n this.type = 377706215;\n }\n }\n IFC42.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 2108223431;\n }\n }\n IFC42.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMedicalDeviceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1114901282;\n }\n }\n IFC42.IfcMedicalDeviceType = IfcMedicalDeviceType;\n class IfcMemberType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC42.IfcMemberType = IfcMemberType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC42.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC42.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3588315303;\n }\n }\n IFC42.IfcOpeningElement = IfcOpeningElement;\n class IfcOpeningStandardCase extends IfcOpeningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3079942009;\n }\n }\n IFC42.IfcOpeningStandardCase = IfcOpeningStandardCase;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC42.IfcOutletType = IfcOutletType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LifeCyclePhase, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LifeCyclePhase = LifeCyclePhase;\n this.PredefinedType = PredefinedType;\n this.type = 2382730787;\n }\n }\n IFC42.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermeableCoveringProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC42.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3327091369;\n }\n }\n IFC42.IfcPermit = IfcPermit;\n class IfcPileType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1158309216;\n }\n }\n IFC42.IfcPileType = IfcPileType;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC42.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC42.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC42.IfcPlateType = IfcPlateType;\n class IfcPolygonalFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Faces, PnIndex) {\n super(Coordinates);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Faces = Faces;\n this.PnIndex = PnIndex;\n this.type = 2839578677;\n }\n }\n IFC42.IfcPolygonalFaceSet = IfcPolygonalFaceSet;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC42.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC42.IfcPort = IfcPort;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.type = 2744685151;\n }\n }\n IFC42.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 2904328755;\n }\n }\n IFC42.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3651124850;\n }\n }\n IFC42.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC42.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC42.IfcPumpType = IfcPumpType;\n class IfcRailingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC42.IfcRailingType = IfcRailingType;\n class IfcRampFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC42.IfcRampFlightType = IfcRampFlightType;\n class IfcRampType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1469900589;\n }\n }\n IFC42.IfcRampType = IfcRampType;\n class IfcRationalBSplineSurfaceWithKnots extends IfcBSplineSurfaceWithKnots {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec, WeightsData) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 683857671;\n }\n }\n IFC42.IfcRationalBSplineSurfaceWithKnots = IfcRationalBSplineSurfaceWithKnots;\n class IfcReinforcingElement extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC42.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingElementType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 964333572;\n }\n }\n IFC42.IfcReinforcingElementType = IfcReinforcingElementType;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.PredefinedType = PredefinedType;\n this.type = 2320036040;\n }\n }\n IFC42.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcReinforcingMeshType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2310774935;\n }\n }\n IFC42.IfcReinforcingMeshType = IfcReinforcingMeshType;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC42.IfcRelAggregates = IfcRelAggregates;\n class IfcRoofType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2781568857;\n }\n }\n IFC42.IfcRoofType = IfcRoofType;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC42.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcSeamCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 2157484638;\n }\n }\n IFC42.IfcSeamCurve = IfcSeamCurve;\n class IfcShadingDeviceType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4074543187;\n }\n }\n IFC42.IfcShadingDeviceType = IfcShadingDeviceType;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC42.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC42.IfcSlabType = IfcSlabType;\n class IfcSolarDeviceType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1072016465;\n }\n }\n IFC42.IfcSolarDeviceType = IfcSolarDeviceType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC42.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC42.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3812236995;\n }\n }\n IFC42.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC42.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC42.IfcStairFlightType = IfcStairFlightType;\n class IfcStairType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 338393293;\n }\n }\n IFC42.IfcStairType = IfcStairType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 682877961;\n }\n }\n IFC42.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC42.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1004757350;\n }\n }\n IFC42.IfcStructuralCurveAction = IfcStructuralCurveAction;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.Axis = Axis;\n this.type = 4243806635;\n }\n }\n IFC42.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 214636428;\n }\n }\n IFC42.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 2445595289;\n }\n }\n IFC42.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralCurveReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 2757150158;\n }\n }\n IFC42.IfcStructuralCurveReaction = IfcStructuralCurveReaction;\n class IfcStructuralLinearAction extends IfcStructuralCurveAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1807405624;\n }\n }\n IFC42.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC42.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 2082059205;\n }\n }\n IFC42.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 734778138;\n }\n }\n IFC42.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC42.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC42.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 3657597509;\n }\n }\n IFC42.IfcStructuralSurfaceAction = IfcStructuralSurfaceAction;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC42.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 148013059;\n }\n }\n IFC42.IfcSubContractResource = IfcSubContractResource;\n class IfcSurfaceFeature extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3101698114;\n }\n }\n IFC42.IfcSurfaceFeature = IfcSurfaceFeature;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC42.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC42.IfcSystem = IfcSystem;\n class IfcSystemFurnitureElement extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 413509423;\n }\n }\n IFC42.IfcSystemFurnitureElement = IfcSystemFurnitureElement;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC42.IfcTankType = IfcTankType;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC42.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 2347447852;\n }\n }\n IFC42.IfcTendonAnchor = IfcTendonAnchor;\n class IfcTendonAnchorType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3081323446;\n }\n }\n IFC42.IfcTendonAnchorType = IfcTendonAnchorType;\n class IfcTendonType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, SheathDiameter) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.SheathDiameter = SheathDiameter;\n this.type = 2415094496;\n }\n }\n IFC42.IfcTendonType = IfcTendonType;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC42.IfcTransformerType = IfcTransformerType;\n class IfcTransportElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1620046519;\n }\n }\n IFC42.IfcTransportElement = IfcTransportElement;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC42.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC42.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC42.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC42.IfcValveType = IfcValveType;\n class IfcVibrationIsolator extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391383451;\n }\n }\n IFC42.IfcVibrationIsolator = IfcVibrationIsolator;\n class IfcVibrationIsolatorType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC42.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2769231204;\n }\n }\n IFC42.IfcVirtualElement = IfcVirtualElement;\n class IfcVoidingFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 926996030;\n }\n }\n IFC42.IfcVoidingFeature = IfcVoidingFeature;\n class IfcWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC42.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC42.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWindowType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, PartitioningType, ParameterTakesPrecedence, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 4009809668;\n }\n }\n IFC42.IfcWindowType = IfcWindowType;\n class IfcWorkCalendar extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, WorkingTimes, ExceptionTimes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.WorkingTimes = WorkingTimes;\n this.ExceptionTimes = ExceptionTimes;\n this.PredefinedType = PredefinedType;\n this.type = 4088093105;\n }\n }\n IFC42.IfcWorkCalendar = IfcWorkCalendar;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.type = 1028945134;\n }\n }\n IFC42.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 4218914973;\n }\n }\n IFC42.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 3342526732;\n }\n }\n IFC42.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.type = 1033361043;\n }\n }\n IFC42.IfcZone = IfcZone;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3821786052;\n }\n }\n IFC42.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC42.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC42.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC42.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC42.IfcAsset = IfcAsset;\n class IfcAudioVisualApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1532957894;\n }\n }\n IFC42.IfcAudioVisualApplianceType = IfcAudioVisualApplianceType;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC42.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBSplineCurveWithKnots extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.type = 2461110595;\n }\n }\n IFC42.IfcBSplineCurveWithKnots = IfcBSplineCurveWithKnots;\n class IfcBeamType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC42.IfcBeamType = IfcBeamType;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC42.IfcBoilerType = IfcBoilerType;\n class IfcBoundaryCurve extends IfcCompositeCurveOnSurface {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1136057603;\n }\n }\n IFC42.IfcBoundaryCurve = IfcBoundaryCurve;\n class IfcBuildingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3299480353;\n }\n }\n IFC42.IfcBuildingElement = IfcBuildingElement;\n class IfcBuildingElementPart extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2979338954;\n }\n }\n IFC42.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementPartType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 39481116;\n }\n }\n IFC42.IfcBuildingElementPartType = IfcBuildingElementPartType;\n class IfcBuildingElementProxy extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1095909175;\n }\n }\n IFC42.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBuildingElementProxyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC42.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcBuildingSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 1177604601;\n }\n }\n IFC42.IfcBuildingSystem = IfcBuildingSystem;\n class IfcBurnerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2188180465;\n }\n }\n IFC42.IfcBurnerType = IfcBurnerType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC42.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC42.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2674252688;\n }\n }\n IFC42.IfcCableFittingType = IfcCableFittingType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC42.IfcCableSegmentType = IfcCableSegmentType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC42.IfcChillerType = IfcChillerType;\n class IfcChimney extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3296154744;\n }\n }\n IFC42.IfcChimney = IfcChimney;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC42.IfcCircle = IfcCircle;\n class IfcCivilElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1677625105;\n }\n }\n IFC42.IfcCivilElement = IfcCivilElement;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC42.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 843113511;\n }\n }\n IFC42.IfcColumn = IfcColumn;\n class IfcColumnStandardCase extends IfcColumn {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 905975707;\n }\n }\n IFC42.IfcColumnStandardCase = IfcColumnStandardCase;\n class IfcCommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 400855858;\n }\n }\n IFC42.IfcCommunicationsApplianceType = IfcCommunicationsApplianceType;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC42.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC42.IfcCondenserType = IfcCondenserType;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3898045240;\n }\n }\n IFC42.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1060000209;\n }\n }\n IFC42.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 488727124;\n }\n }\n IFC42.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC42.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC42.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCovering extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC42.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3495092785;\n }\n }\n IFC42.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC42.IfcDamperType = IfcDamperType;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1335981549;\n }\n }\n IFC42.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2635815018;\n }\n }\n IFC42.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC42.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC42.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC42.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC42.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection, PredefinedType, SystemType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.PredefinedType = PredefinedType;\n this.SystemType = SystemType;\n this.type = 3041715199;\n }\n }\n IFC42.IfcDistributionPort = IfcDistributionPort;\n class IfcDistributionSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 3205830791;\n }\n }\n IFC42.IfcDistributionSystem = IfcDistributionSystem;\n class IfcDoor extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 395920057;\n }\n }\n IFC42.IfcDoor = IfcDoor;\n class IfcDoorStandardCase extends IfcDoor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 3242481149;\n }\n }\n IFC42.IfcDoorStandardCase = IfcDoorStandardCase;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC42.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC42.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC42.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC42.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2417008758;\n }\n }\n IFC42.IfcElectricDistributionBoardType = IfcElectricDistributionBoardType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC42.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC42.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC42.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC42.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC42.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcEngine extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2814081492;\n }\n }\n IFC42.IfcEngine = IfcEngine;\n class IfcEvaporativeCooler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3747195512;\n }\n }\n IFC42.IfcEvaporativeCooler = IfcEvaporativeCooler;\n class IfcEvaporator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 484807127;\n }\n }\n IFC42.IfcEvaporator = IfcEvaporator;\n class IfcExternalSpatialElement extends IfcExternalSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 1209101575;\n }\n }\n IFC42.IfcExternalSpatialElement = IfcExternalSpatialElement;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC42.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC42.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC42.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC42.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC42.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC42.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMeter extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2188021234;\n }\n }\n IFC42.IfcFlowMeter = IfcFlowMeter;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC42.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC42.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC42.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC42.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC42.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC42.IfcFooting = IfcFooting;\n class IfcHeatExchanger extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3319311131;\n }\n }\n IFC42.IfcHeatExchanger = IfcHeatExchanger;\n class IfcHumidifier extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2068733104;\n }\n }\n IFC42.IfcHumidifier = IfcHumidifier;\n class IfcInterceptor extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4175244083;\n }\n }\n IFC42.IfcInterceptor = IfcInterceptor;\n class IfcJunctionBox extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2176052936;\n }\n }\n IFC42.IfcJunctionBox = IfcJunctionBox;\n class IfcLamp extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 76236018;\n }\n }\n IFC42.IfcLamp = IfcLamp;\n class IfcLightFixture extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 629592764;\n }\n }\n IFC42.IfcLightFixture = IfcLightFixture;\n class IfcMedicalDevice extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1437502449;\n }\n }\n IFC42.IfcMedicalDevice = IfcMedicalDevice;\n class IfcMember extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1073191201;\n }\n }\n IFC42.IfcMember = IfcMember;\n class IfcMemberStandardCase extends IfcMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1911478936;\n }\n }\n IFC42.IfcMemberStandardCase = IfcMemberStandardCase;\n class IfcMotorConnection extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2474470126;\n }\n }\n IFC42.IfcMotorConnection = IfcMotorConnection;\n class IfcOuterBoundaryCurve extends IfcBoundaryCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 144952367;\n }\n }\n IFC42.IfcOuterBoundaryCurve = IfcOuterBoundaryCurve;\n class IfcOutlet extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3694346114;\n }\n }\n IFC42.IfcOutlet = IfcOutlet;\n class IfcPile extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC42.IfcPile = IfcPile;\n class IfcPipeFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 310824031;\n }\n }\n IFC42.IfcPipeFitting = IfcPipeFitting;\n class IfcPipeSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3612865200;\n }\n }\n IFC42.IfcPipeSegment = IfcPipeSegment;\n class IfcPlate extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3171933400;\n }\n }\n IFC42.IfcPlate = IfcPlate;\n class IfcPlateStandardCase extends IfcPlate {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1156407060;\n }\n }\n IFC42.IfcPlateStandardCase = IfcPlateStandardCase;\n class IfcProtectiveDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 738039164;\n }\n }\n IFC42.IfcProtectiveDevice = IfcProtectiveDevice;\n class IfcProtectiveDeviceTrippingUnitType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 655969474;\n }\n }\n IFC42.IfcProtectiveDeviceTrippingUnitType = IfcProtectiveDeviceTrippingUnitType;\n class IfcPump extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 90941305;\n }\n }\n IFC42.IfcPump = IfcPump;\n class IfcRailing extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC42.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3024970846;\n }\n }\n IFC42.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3283111854;\n }\n }\n IFC42.IfcRampFlight = IfcRampFlight;\n class IfcRationalBSplineCurveWithKnots extends IfcBSplineCurveWithKnots {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 1232101972;\n }\n }\n IFC42.IfcRationalBSplineCurveWithKnots = IfcRationalBSplineCurveWithKnots;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, PredefinedType, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.PredefinedType = PredefinedType;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC42.IfcReinforcingBar = IfcReinforcingBar;\n class IfcReinforcingBarType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, BarLength, BarSurface, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarSurface = BarSurface;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2572171363;\n }\n }\n IFC42.IfcReinforcingBarType = IfcReinforcingBarType;\n class IfcRoof extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2016517767;\n }\n }\n IFC42.IfcRoof = IfcRoof;\n class IfcSanitaryTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3053780830;\n }\n }\n IFC42.IfcSanitaryTerminal = IfcSanitaryTerminal;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC42.IfcSensorType = IfcSensorType;\n class IfcShadingDevice extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1329646415;\n }\n }\n IFC42.IfcShadingDevice = IfcShadingDevice;\n class IfcSlab extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC42.IfcSlab = IfcSlab;\n class IfcSlabElementedCase extends IfcSlab {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3127900445;\n }\n }\n IFC42.IfcSlabElementedCase = IfcSlabElementedCase;\n class IfcSlabStandardCase extends IfcSlab {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3027962421;\n }\n }\n IFC42.IfcSlabStandardCase = IfcSlabStandardCase;\n class IfcSolarDevice extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3420628829;\n }\n }\n IFC42.IfcSolarDevice = IfcSolarDevice;\n class IfcSpaceHeater extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1999602285;\n }\n }\n IFC42.IfcSpaceHeater = IfcSpaceHeater;\n class IfcStackTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1404847402;\n }\n }\n IFC42.IfcStackTerminal = IfcStackTerminal;\n class IfcStair extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 331165859;\n }\n }\n IFC42.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRisers, NumberOfTreads, RiserHeight, TreadLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRisers = NumberOfRisers;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.PredefinedType = PredefinedType;\n this.type = 4252922144;\n }\n }\n IFC42.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults, SharedPlacement) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.SharedPlacement = SharedPlacement;\n this.type = 2515109513;\n }\n }\n IFC42.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcStructuralLoadCase extends IfcStructuralLoadGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose, SelfWeightCoefficients) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.SelfWeightCoefficients = SelfWeightCoefficients;\n this.type = 385403989;\n }\n }\n IFC42.IfcStructuralLoadCase = IfcStructuralLoadCase;\n class IfcStructuralPlanarAction extends IfcStructuralSurfaceAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1621171031;\n }\n }\n IFC42.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcSwitchingDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1162798199;\n }\n }\n IFC42.IfcSwitchingDevice = IfcSwitchingDevice;\n class IfcTank extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 812556717;\n }\n }\n IFC42.IfcTank = IfcTank;\n class IfcTransformer extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3825984169;\n }\n }\n IFC42.IfcTransformer = IfcTransformer;\n class IfcTubeBundle extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3026737570;\n }\n }\n IFC42.IfcTubeBundle = IfcTubeBundle;\n class IfcUnitaryControlElementType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3179687236;\n }\n }\n IFC42.IfcUnitaryControlElementType = IfcUnitaryControlElementType;\n class IfcUnitaryEquipment extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4292641817;\n }\n }\n IFC42.IfcUnitaryEquipment = IfcUnitaryEquipment;\n class IfcValve extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4207607924;\n }\n }\n IFC42.IfcValve = IfcValve;\n class IfcWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391406946;\n }\n }\n IFC42.IfcWall = IfcWall;\n class IfcWallElementedCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4156078855;\n }\n }\n IFC42.IfcWallElementedCase = IfcWallElementedCase;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3512223829;\n }\n }\n IFC42.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWasteTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4237592921;\n }\n }\n IFC42.IfcWasteTerminal = IfcWasteTerminal;\n class IfcWindow extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 3304561284;\n }\n }\n IFC42.IfcWindow = IfcWindow;\n class IfcWindowStandardCase extends IfcWindow {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 486154966;\n }\n }\n IFC42.IfcWindowStandardCase = IfcWindowStandardCase;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC42.IfcActuatorType = IfcActuatorType;\n class IfcAirTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1634111441;\n }\n }\n IFC42.IfcAirTerminal = IfcAirTerminal;\n class IfcAirTerminalBox extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 177149247;\n }\n }\n IFC42.IfcAirTerminalBox = IfcAirTerminalBox;\n class IfcAirToAirHeatRecovery extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2056796094;\n }\n }\n IFC42.IfcAirToAirHeatRecovery = IfcAirToAirHeatRecovery;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC42.IfcAlarmType = IfcAlarmType;\n class IfcAudioVisualAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 277319702;\n }\n }\n IFC42.IfcAudioVisualAppliance = IfcAudioVisualAppliance;\n class IfcBeam extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 753842376;\n }\n }\n IFC42.IfcBeam = IfcBeam;\n class IfcBeamStandardCase extends IfcBeam {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2906023776;\n }\n }\n IFC42.IfcBeamStandardCase = IfcBeamStandardCase;\n class IfcBoiler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 32344328;\n }\n }\n IFC42.IfcBoiler = IfcBoiler;\n class IfcBurner extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2938176219;\n }\n }\n IFC42.IfcBurner = IfcBurner;\n class IfcCableCarrierFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 635142910;\n }\n }\n IFC42.IfcCableCarrierFitting = IfcCableCarrierFitting;\n class IfcCableCarrierSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3758799889;\n }\n }\n IFC42.IfcCableCarrierSegment = IfcCableCarrierSegment;\n class IfcCableFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1051757585;\n }\n }\n IFC42.IfcCableFitting = IfcCableFitting;\n class IfcCableSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4217484030;\n }\n }\n IFC42.IfcCableSegment = IfcCableSegment;\n class IfcChiller extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3902619387;\n }\n }\n IFC42.IfcChiller = IfcChiller;\n class IfcCoil extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 639361253;\n }\n }\n IFC42.IfcCoil = IfcCoil;\n class IfcCommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3221913625;\n }\n }\n IFC42.IfcCommunicationsAppliance = IfcCommunicationsAppliance;\n class IfcCompressor extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3571504051;\n }\n }\n IFC42.IfcCompressor = IfcCompressor;\n class IfcCondenser extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2272882330;\n }\n }\n IFC42.IfcCondenser = IfcCondenser;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC42.IfcControllerType = IfcControllerType;\n class IfcCooledBeam extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4136498852;\n }\n }\n IFC42.IfcCooledBeam = IfcCooledBeam;\n class IfcCoolingTower extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3640358203;\n }\n }\n IFC42.IfcCoolingTower = IfcCoolingTower;\n class IfcDamper extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4074379575;\n }\n }\n IFC42.IfcDamper = IfcDamper;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1052013943;\n }\n }\n IFC42.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionCircuit extends IfcDistributionSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 562808652;\n }\n }\n IFC42.IfcDistributionCircuit = IfcDistributionCircuit;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1062813311;\n }\n }\n IFC42.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcDuctFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 342316401;\n }\n }\n IFC42.IfcDuctFitting = IfcDuctFitting;\n class IfcDuctSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3518393246;\n }\n }\n IFC42.IfcDuctSegment = IfcDuctSegment;\n class IfcDuctSilencer extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1360408905;\n }\n }\n IFC42.IfcDuctSilencer = IfcDuctSilencer;\n class IfcElectricAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1904799276;\n }\n }\n IFC42.IfcElectricAppliance = IfcElectricAppliance;\n class IfcElectricDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 862014818;\n }\n }\n IFC42.IfcElectricDistributionBoard = IfcElectricDistributionBoard;\n class IfcElectricFlowStorageDevice extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3310460725;\n }\n }\n IFC42.IfcElectricFlowStorageDevice = IfcElectricFlowStorageDevice;\n class IfcElectricGenerator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 264262732;\n }\n }\n IFC42.IfcElectricGenerator = IfcElectricGenerator;\n class IfcElectricMotor extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 402227799;\n }\n }\n IFC42.IfcElectricMotor = IfcElectricMotor;\n class IfcElectricTimeControl extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1003880860;\n }\n }\n IFC42.IfcElectricTimeControl = IfcElectricTimeControl;\n class IfcFan extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3415622556;\n }\n }\n IFC42.IfcFan = IfcFan;\n class IfcFilter extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 819412036;\n }\n }\n IFC42.IfcFilter = IfcFilter;\n class IfcFireSuppressionTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1426591983;\n }\n }\n IFC42.IfcFireSuppressionTerminal = IfcFireSuppressionTerminal;\n class IfcFlowInstrument extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 182646315;\n }\n }\n IFC42.IfcFlowInstrument = IfcFlowInstrument;\n class IfcProtectiveDeviceTrippingUnit extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2295281155;\n }\n }\n IFC42.IfcProtectiveDeviceTrippingUnit = IfcProtectiveDeviceTrippingUnit;\n class IfcSensor extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4086658281;\n }\n }\n IFC42.IfcSensor = IfcSensor;\n class IfcUnitaryControlElement extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 630975310;\n }\n }\n IFC42.IfcUnitaryControlElement = IfcUnitaryControlElement;\n class IfcActuator extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4288193352;\n }\n }\n IFC42.IfcActuator = IfcActuator;\n class IfcAlarm extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3087945054;\n }\n }\n IFC42.IfcAlarm = IfcAlarm;\n class IfcController extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 25142252;\n }\n }\n IFC42.IfcController = IfcController;\n})(IFC4 || (IFC4 = {}));\nSchemaNames[3] = [\"IFC4X3\", \"IFC4X3_RC3\", \"IFC4X3_RC$\", \"IFC4X3_RC1\", \"IFC4X3_RC2\"];\nFromRawLineData[3] = {\n 3630933823: (v) => new IFC4X3.IfcActorRole(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC4X3.IfcAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2879124712: (v) => new IFC4X3.IfcAlignmentParameterSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3633395639: (v) => new IFC4X3.IfcAlignmentVerticalSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcRatioMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcRatioMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 639542469: (v) => new IFC4X3.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => {\n var _a;\n return new IFC4X3.IfcAppliedValue(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 130549933: (v) => new IFC4X3.IfcApproval(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 4037036970: (v) => new IFC4X3.IfcBoundaryCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC4X3.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6])),\n 3367102660: (v) => new IFC4X3.IfcBoundaryFaceCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3])),\n 1387855156: (v) => new IFC4X3.IfcBoundaryNodeCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6])),\n 2069777674: (v) => new IFC4X3.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6]), !v[7] ? null : TypeInitialiser(3, v[7])),\n 2859738748: (_) => new IFC4X3.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC4X3.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2732653382: (v) => new IFC4X3.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 775493141: (v) => new IFC4X3.IfcConnectionVolumeGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC4X3.IfcConstraint(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1785450214: (v) => new IFC4X3.IfcCoordinateOperation(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1466758467: (v) => new IFC4X3.IfcCoordinateReferenceSystem(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 602808272: (v) => {\n var _a;\n return new IFC4X3.IfcCostValue(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1765591967: (v) => {\n var _a;\n return new IFC4X3.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 1045800335: (v) => new IFC4X3.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC4X3.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 4294318154: (_) => new IFC4X3.IfcExternalInformation(),\n 3200245327: (v) => new IFC4X3.IfcExternalReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC4X3.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC4X3.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC4X3.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC4X3.IfcGridAxis(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC4X3.IfcIrregularTimeSeriesValue(new IFC4X3.IfcDateTime(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 2655187982: (v) => new IFC4X3.IfcLibraryInformation(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcURIReference(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcText(!v[5] ? null : v[5].value)),\n 3452421091: (v) => new IFC4X3.IfcLibraryReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLanguageId(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLightDistributionData(new IFC4X3.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC4X3.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3057273783: (v) => new IFC4X3.IfcMapConversion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcReal(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcReal(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcReal(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcReal(!v[9] ? null : v[9].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 760658860: (_) => new IFC4X3.IfcMaterialDefinition(),\n 248100487: (v) => new IFC4X3.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value));\n },\n 1847252529: (v) => new IFC4X3.IfcMaterialLayerWithOffsets(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), v[7], new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2235152071: (v) => new IFC4X3.IfcMaterialProfile(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value)),\n 164193824: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialProfileSet(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 552965576: (v) => new IFC4X3.IfcMaterialProfileWithOffsets(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1507914824: (_) => new IFC4X3.IfcMaterialUsageDefinition(),\n 2597039031: (v) => new IFC4X3.IfcMeasureWithUnit(TypeInitialiser(3, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 3368373690: (v) => new IFC4X3.IfcMetric(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2706619895: (v) => new IFC4X3.IfcMonetaryUnit(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1918398963: (v) => new IFC4X3.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (v) => new IFC4X3.IfcObjectPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value)),\n 2251480897: (v) => {\n var _a;\n return new IFC4X3.IfcObjective(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8], v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 4251960020: (v) => {\n var _a, _b;\n return new IFC4X3.IfcOrganization(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC4X3.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC4X3.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4X3.IfcPerson(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC4X3.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC4X3.IfcPhysicalQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC4X3.IfcPhysicalSimpleQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC4X3.IfcPostalAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value));\n },\n 677532197: (_) => new IFC4X3.IfcPresentationItem(),\n 2022622350: (v) => {\n var _a;\n return new IFC4X3.IfcPresentationLayerAssignment(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPresentationLayerWithStyle(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC4X3.IfcPresentationStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2095639259: (v) => {\n var _a;\n return new IFC4X3.IfcProductRepresentation(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958567839: (v) => new IFC4X3.IfcProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3843373140: (v) => new IFC4X3.IfcProjectedCRS(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 986844984: (_) => new IFC4X3.IfcPropertyAbstraction(),\n 3710013099: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyEnumeration(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC4X3.IfcQuantityArea(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcAreaMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2093928680: (v) => new IFC4X3.IfcQuantityCount(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcCountMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 931644368: (v) => new IFC4X3.IfcQuantityLength(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2691318326: (v) => new IFC4X3.IfcQuantityNumber(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcNumericMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3252649465: (v) => new IFC4X3.IfcQuantityTime(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcTimeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2405470396: (v) => new IFC4X3.IfcQuantityVolume(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcVolumeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 825690147: (v) => new IFC4X3.IfcQuantityWeight(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcMassMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3915482550: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcRecurrencePattern(v[0], !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcDayInMonthNumber(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcDayInWeekNumber(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcMonthInYearNumber(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcInteger(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), !v[7] ? null : ((_d = v[7]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2433181523: (v) => {\n var _a;\n return new IFC4X3.IfcReference(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 1076942058: (v) => {\n var _a;\n return new IFC4X3.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC4X3.IfcRepresentationContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC4X3.IfcRepresentationItem(),\n 1660063152: (v) => new IFC4X3.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2439245199: (v) => new IFC4X3.IfcResourceLevelRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2341007311: (v) => new IFC4X3.IfcRoot(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC4X3.IfcSIUnit(new Handle(!v[0] ? null : v[0].value), v[1], v[2], v[3]),\n 1054537805: (v) => new IFC4X3.IfcSchedulingTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 867548509: (v) => {\n var _a;\n return new IFC4X3.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC4X3.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC4X3.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2273995522: (v) => new IFC4X3.IfcStructuralConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC4X3.IfcStructuralLoad(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3478079324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStructuralLoadConfiguration(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 609421318: (v) => new IFC4X3.IfcStructuralLoadOrResult(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC4X3.IfcStructuralLoadStatic(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC4X3.IfcStructuralLoadTemperature(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC4X3.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC4X3.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC4X3.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2934153892: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSurfaceReinforcementArea(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcRatioMeasure(!v[3] ? null : v[3].value));\n },\n 1300840506: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC4X3.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC4X3.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC4X3.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC4X3.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || []);\n },\n 985171141: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTable(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2043862942: (v) => new IFC4X3.IfcTableColumn(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 531007025: (v) => {\n var _a;\n return new IFC4X3.IfcTableRow(!v[0] ? null : ((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value));\n },\n 1549132990: (v) => new IFC4X3.IfcTaskTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4X3.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value)),\n 2771591690: (v) => new IFC4X3.IfcTaskTimeRecurring(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4X3.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value), new Handle(!v[20] ? null : v[20].value)),\n 912023232: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcTelecomAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcURIReference(!v[7] ? null : v[7].value), !v[8] ? null : ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcURIReference(p.value) : null)) || []);\n },\n 1447204868: (v) => new IFC4X3.IfcTextStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcBoolean(!v[4] ? null : v[4].value)),\n 2636378356: (v) => new IFC4X3.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC4X3.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(3, v[0]), !v[1] ? null : new IFC4X3.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : new IFC4X3.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(3, v[6])),\n 280115917: (v) => {\n var _a;\n return new IFC4X3.IfcTextureCoordinate(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1742049831: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureCoordinateGenerator(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 222769930: (v) => {\n var _a;\n return new IFC4X3.IfcTextureCoordinateIndices(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 1010789467: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureCoordinateIndicesWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 2552916305: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[2] ? null : v[2].value));\n },\n 1210645708: (v) => {\n var _a;\n return new IFC4X3.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || []);\n },\n 3611470254: (v) => {\n var _a;\n return new IFC4X3.IfcTextureVertexList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []));\n },\n 1199560280: (v) => new IFC4X3.IfcTimePeriod(new IFC4X3.IfcTime(!v[0] ? null : v[0].value), new IFC4X3.IfcTime(!v[1] ? null : v[1].value)),\n 3101149627: (v) => new IFC4X3.IfcTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 581633288: (v) => {\n var _a;\n return new IFC4X3.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 1377556343: (_) => new IFC4X3.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC4X3.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC4X3.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC4X3.IfcVertex(),\n 1907098498: (v) => new IFC4X3.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1236880293: (v) => new IFC4X3.IfcWorkTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value)),\n 3752311538: (v) => new IFC4X3.IfcAlignmentCantSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 536804194: (v) => new IFC4X3.IfcAlignmentHorizontalSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 3869604511: (v) => {\n var _a;\n return new IFC4X3.IfcApprovalRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3798115385: (v) => new IFC4X3.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC4X3.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC4X3.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => {\n var _a;\n return new IFC4X3.IfcBlobTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcBinary(!v[6] ? null : v[6].value));\n },\n 3150382593: (v) => new IFC4X3.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 747523909: (v) => {\n var _a;\n return new IFC4X3.IfcClassification(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcDate(!v[2] ? null : v[2].value), new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcURIReference(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || []);\n },\n 647927063: (v) => new IFC4X3.IfcClassificationReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3285139300: (v) => {\n var _a;\n return new IFC4X3.IfcColourRgbList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcNormalisedRatioMeasure(p2.value) : null)) || []));\n },\n 3264961684: (v) => new IFC4X3.IfcColourSpecification(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1485152156: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC4X3.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC4X3.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC4X3.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC4X3.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC4X3.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2713554722: (v) => new IFC4X3.IfcConversionBasedUnitWithOffset(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcReal(!v[4] ? null : v[4].value)),\n 539742890: (v) => new IFC4X3.IfcCurrencyRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3800577675: (v) => new IFC4X3.IfcCurveStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcBoolean(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC4X3.IfcCurveStyleFont(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC4X3.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC4X3.IfcCurveStyleFontPattern(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3632507154: (v) => new IFC4X3.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1154170062: (v) => {\n var _a;\n return new IFC4X3.IfcDocumentInformation(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcURIReference(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcIdentifier(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcDate(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDate(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC4X3.IfcDocumentInformationRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value));\n },\n 3732053477: (v) => new IFC4X3.IfcDocumentReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 3900360178: (v) => new IFC4X3.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC4X3.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcBoolean(!v[3] ? null : v[3].value)),\n 211053100: (v) => new IFC4X3.IfcEventTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDateTime(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value)),\n 297599258: (v) => {\n var _a;\n return new IFC4X3.IfcExtendedProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1437805879: (v) => {\n var _a;\n return new IFC4X3.IfcExternalReferenceRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2556980723: (v) => {\n var _a;\n return new IFC4X3.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC4X3.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 803316827: (v) => new IFC4X3.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 3008276851: (v) => {\n var _a;\n return new IFC4X3.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4219587988: (v) => new IFC4X3.IfcFailureConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC4X3.IfcFillAreaStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3448662350: (v) => new IFC4X3.IfcGeometricRepresentationContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC4X3.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC4X3.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC4X3.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC4X3.IfcGridPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 812098782: (v) => new IFC4X3.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 3905492369: (v) => {\n var _a;\n return new IFC4X3.IfcImageTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcURIReference(!v[5] ? null : v[5].value));\n },\n 3570813810: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedColourMap(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1437953363: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value));\n },\n 2133299955: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedTriangleTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3741457305: (v) => {\n var _a;\n return new IFC4X3.IfcIrregularTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1585845231: (v) => new IFC4X3.IfcLagTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), TypeInitialiser(3, v[3]), v[4]),\n 1402838566: (v) => new IFC4X3.IfcLightSource(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC4X3.IfcLightSourceAmbient(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC4X3.IfcLightSourceDirectional(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC4X3.IfcLightSourceGoniometric(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC4X3.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC4X3.IfcLightSourcePositional(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcReal(!v[6] ? null : v[6].value), new IFC4X3.IfcReal(!v[7] ? null : v[7].value), new IFC4X3.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC4X3.IfcLightSourceSpot(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcReal(!v[6] ? null : v[6].value), new IFC4X3.IfcReal(!v[7] ? null : v[7].value), new IFC4X3.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcReal(!v[10] ? null : v[10].value), new IFC4X3.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC4X3.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 388784114: (v) => new IFC4X3.IfcLinearPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2624227202: (v) => new IFC4X3.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC4X3.IfcLoop(),\n 2347385850: (v) => new IFC4X3.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1838606355: (v) => new IFC4X3.IfcMaterial(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3708119e3: (v) => new IFC4X3.IfcMaterialConstituent(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2852063980: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialConstituentSet(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2022407955: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1303795690: (v) => new IFC4X3.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3079605661: (v) => new IFC4X3.IfcMaterialProfileSetUsage(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3404854881: (v) => new IFC4X3.IfcMaterialProfileSetUsageTapering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcCardinalPointReference(!v[4] ? null : v[4].value)),\n 3265635763: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 853536259: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value));\n },\n 2998442950: (v) => new IFC4X3.IfcMirroredProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 219451334: (v) => new IFC4X3.IfcObjectDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 182550632: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcOpenCrossProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcNonNegativeLengthMeasure(p.value) : null)) || [], ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPlaneAngleMeasure(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : new Handle(!v[6] ? null : v[6].value));\n },\n 2665983363: (v) => {\n var _a;\n return new IFC4X3.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC4X3.IfcOrganizationRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC4X3.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 2529465313: (v) => new IFC4X3.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC4X3.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC4X3.IfcPhysicalComplexQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPixelTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcInteger(!v[5] ? null : v[5].value), new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), new IFC4X3.IfcInteger(!v[7] ? null : v[7].value), ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcBinary(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC4X3.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC4X3.IfcPlanarExtent(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC4X3.IfcPoint(),\n 2165702409: (v) => new IFC4X3.IfcPointByDistanceExpression(TypeInitialiser(3, v[0]), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4022376103: (v) => new IFC4X3.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC4X3.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4X3.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC4X3.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC4X3.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3727388367: (v) => new IFC4X3.IfcPreDefinedItem(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3778827333: (_) => new IFC4X3.IfcPreDefinedProperties(),\n 1775413392: (v) => new IFC4X3.IfcPreDefinedTextFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC4X3.IfcProductDefinitionShape(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802850158: (v) => {\n var _a;\n return new IFC4X3.IfcProfileProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 2598011224: (v) => new IFC4X3.IfcProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 1680319473: (v) => new IFC4X3.IfcPropertyDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 148025276: (v) => new IFC4X3.IfcPropertyDependencyRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value)),\n 3357820518: (v) => new IFC4X3.IfcPropertySetDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1482703590: (v) => new IFC4X3.IfcPropertyTemplateDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2090586900: (v) => new IFC4X3.IfcQuantitySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 3615266464: (v) => new IFC4X3.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC4X3.IfcRegularTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC4X3.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1580146022: (v) => new IFC4X3.IfcReinforcementBarProperties(new IFC4X3.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 478536968: (v) => new IFC4X3.IfcRelationship(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2943643501: (v) => {\n var _a;\n return new IFC4X3.IfcResourceApprovalRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1608871552: (v) => {\n var _a;\n return new IFC4X3.IfcResourceConstraintRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1042787934: (v) => new IFC4X3.IfcResourceTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDuration(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDuration(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcDateTime(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[17] ? null : v[17].value)),\n 2778083089: (v) => new IFC4X3.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 2042790032: (v) => new IFC4X3.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC4X3.IfcSectionReinforcementProperties(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1509187699: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 823603102: (v) => new IFC4X3.IfcSegment(v[0]),\n 4124623270: (v) => {\n var _a;\n return new IFC4X3.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC4X3.IfcSimpleProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2609359061: (v) => new IFC4X3.IfcSlippageConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC4X3.IfcSolidModel(),\n 1595516126: (v) => new IFC4X3.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC4X3.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC4X3.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC4X3.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC4X3.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC4X3.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 2233826070: (v) => new IFC4X3.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC4X3.IfcSurface(),\n 1878645084: (v) => new IFC4X3.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(3, v[7]), v[8]),\n 2247615214: (v) => new IFC4X3.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC4X3.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value)),\n 1096409881: (v) => new IFC4X3.IfcSweptDiskSolidPolygonal(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value)),\n 230924584: (v) => new IFC4X3.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC4X3.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value)),\n 901063453: (_) => new IFC4X3.IfcTessellatedItem(),\n 4282788508: (v) => new IFC4X3.IfcTextLiteral(new IFC4X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC4X3.IfcTextLiteralWithExtent(new IFC4X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC4X3.IfcTextStyleFontModel(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(3, v[5]));\n },\n 2715220739: (v) => new IFC4X3.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC4X3.IfcTypeObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3736923433: (v) => {\n var _a;\n return new IFC4X3.IfcTypeProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTypeProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 3698973494: (v) => {\n var _a;\n return new IFC4X3.IfcTypeResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 427810014: (v) => new IFC4X3.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 1417489154: (v) => new IFC4X3.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC4X3.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 2543172580: (v) => new IFC4X3.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value)),\n 3406155212: (v) => {\n var _a;\n return new IFC4X3.IfcAdvancedFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC4X3.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3207858831: (v) => new IFC4X3.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[14] ? null : v[14].value)),\n 4261334040: (v) => new IFC4X3.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC4X3.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC4X3.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3425423356: (v) => new IFC4X3.IfcAxis2PlacementLinear(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC4X3.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC4X3.IfcBoundedSurface(),\n 2581212453: (v) => new IFC4X3.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC4X3.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC4X3.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC4X3.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 574549367: (_) => new IFC4X3.IfcCartesianPointList(),\n 1675464909: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCartesianPointList2D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []), !v[1] ? null : ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || []);\n },\n 2059837836: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCartesianPointList3D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []), !v[1] ? null : ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || []);\n },\n 59481748: (v) => new IFC4X3.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value)),\n 3749851601: (v) => new IFC4X3.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value)),\n 3486308946: (v) => new IFC4X3.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcReal(!v[4] ? null : v[4].value)),\n 3331915920: (v) => new IFC4X3.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC4X3.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcReal(!v[6] ? null : v[6].value)),\n 1383045692: (v) => new IFC4X3.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC4X3.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 776857604: (v) => new IFC4X3.IfcColourRgb(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC4X3.IfcComplexProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC4X3.IfcCompositeCurveSegment(v[0], new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2574617495: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 3419103109: (v) => {\n var _a;\n return new IFC4X3.IfcContext(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 1815067380: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCrewResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2506170314: (v) => new IFC4X3.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC4X3.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC4X3.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC4X3.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2629017746: (v) => {\n var _a;\n return new IFC4X3.IfcCurveBoundedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4212018352: (v) => new IFC4X3.IfcCurveSegment(v[0], new Handle(!v[1] ? null : v[1].value), TypeInitialiser(3, v[2]), TypeInitialiser(3, v[3]), new Handle(!v[4] ? null : v[4].value)),\n 32440307: (v) => {\n var _a;\n return new IFC4X3.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 593015953: (v) => new IFC4X3.IfcDirectrixCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4])),\n 1472233963: (v) => {\n var _a;\n return new IFC4X3.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC4X3.IfcElementQuantity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC4X3.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC4X3.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 4024345920: (v) => {\n var _a;\n return new IFC4X3.IfcEventType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcLabel(!v[11] ? null : v[11].value));\n },\n 477187591: (v) => new IFC4X3.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2804161546: (v) => new IFC4X3.IfcExtrudedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC4X3.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC4X3.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 315944413: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFillAreaStyleTiles(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 2652556860: (v) => new IFC4X3.IfcFixedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFurnishingElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFurnitureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10]);\n },\n 4095422895: (v) => {\n var _a, _b;\n return new IFC4X3.IfcGeographicElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC4X3.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC4X3.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 178912537: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedPolygonalFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 2294589976: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedPolygonalFaceWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], (_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3465909080: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedPolygonalTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 572779678: (v) => new IFC4X3.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value)),\n 428585644: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLaborResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1281925730: (v) => new IFC4X3.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC4X3.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC4X3.IfcObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 590820931: (v) => new IFC4X3.IfcOffsetCurve(new Handle(!v[0] ? null : v[0].value)),\n 3388369263: (v) => new IFC4X3.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcLogical(!v[2] ? null : v[2].value)),\n 3505215534: (v) => new IFC4X3.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2485787929: (v) => {\n var _a;\n return new IFC4X3.IfcOffsetCurveByDistances(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1682466193: (v) => new IFC4X3.IfcPcurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 603570806: (v) => new IFC4X3.IfcPlanarBox(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC4X3.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 3381221214: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcPolynomialCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 759155922: (v) => new IFC4X3.IfcPreDefinedColour(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC4X3.IfcPreDefinedCurveFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3967405729: (v) => new IFC4X3.IfcPreDefinedPropertySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 569719735: (v) => {\n var _a;\n return new IFC4X3.IfcProcedureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2945172077: (v) => new IFC4X3.IfcProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value)),\n 4208778838: (v) => new IFC4X3.IfcProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC4X3.IfcProject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 653396225: (v) => {\n var _a;\n return new IFC4X3.IfcProjectLibrary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 871118103: (v) => new IFC4X3.IfcPropertyBoundedValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : TypeInitialiser(3, v[5])),\n 4166981789: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyEnumeratedValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyListValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC4X3.IfcPropertyReferenceValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1451395588: (v) => {\n var _a;\n return new IFC4X3.IfcPropertySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 492091185: (v) => {\n var _a;\n return new IFC4X3.IfcPropertySetTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3650150729: (v) => new IFC4X3.IfcPropertySingleValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPropertyTableValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]);\n },\n 3521284610: (v) => new IFC4X3.IfcPropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2770003689: (v) => new IFC4X3.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC4X3.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC4X3.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4X3.IfcParameterValue(!v[2] ? null : v[2].value), new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value), new IFC4X3.IfcBoolean(!v[5] ? null : v[5].value), new IFC4X3.IfcBoolean(!v[6] ? null : v[6].value)),\n 3765753017: (v) => {\n var _a;\n return new IFC4X3.IfcReinforcementDefinitionProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3939117080: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssigns(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToActor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1027710054: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToGroupByFactor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcRatioMeasure(!v[7] ? null : v[7].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociates(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4095574036: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesApproval(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesClassification(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesConstraint(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesDocument(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesLibrary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesMaterial(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 1033248425: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesProfileDef(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 826625072: (v) => new IFC4X3.IfcRelConnects(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC4X3.IfcRelConnectsElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRelConnectsPathElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC4X3.IfcRelConnectsPortToElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC4X3.IfcRelConnectsPorts(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC4X3.IfcRelConnectsStructuralActivity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC4X3.IfcRelConnectsStructuralMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC4X3.IfcRelConnectsWithEccentricity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC4X3.IfcRelConnectsWithRealizingElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC4X3.IfcRelContainedInSpatialStructure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC4X3.IfcRelCoversBldgElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC4X3.IfcRelCoversSpaces(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2565941209: (v) => {\n var _a;\n return new IFC4X3.IfcRelDeclares(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => new IFC4X3.IfcRelDecomposes(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 693640335: (v) => new IFC4X3.IfcRelDefines(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1462361463: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4186316022: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 307848117: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC4X3.IfcRelFillsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC4X3.IfcRelFlowControlElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 427948657: (v) => new IFC4X3.IfcRelInterferesElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcIdentifier(!v[8] ? null : v[8].value), new IFC4X3.IfcLogical(!v[9] ? null : v[9].value)),\n 3268803585: (v) => {\n var _a;\n return new IFC4X3.IfcRelNests(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1441486842: (v) => {\n var _a;\n return new IFC4X3.IfcRelPositions(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC4X3.IfcRelProjectsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC4X3.IfcRelReferencedInSpatialStructure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4122056220: (v) => new IFC4X3.IfcRelSequence(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value)),\n 366585022: (v) => {\n var _a;\n return new IFC4X3.IfcRelServicesBuildings(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC4X3.IfcRelSpaceBoundary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 3523091289: (v) => new IFC4X3.IfcRelSpaceBoundary1stLevel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 1521410863: (v) => new IFC4X3.IfcRelSpaceBoundary2ndLevel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1401173127: (v) => new IFC4X3.IfcRelVoidsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 816062949: (v) => new IFC4X3.IfcReparametrisedCompositeCurveSegment(v[0], new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value)),\n 2914609552: (v) => new IFC4X3.IfcResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value)),\n 1856042241: (v) => new IFC4X3.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 3243963512: (v) => new IFC4X3.IfcRevolvedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4158566097: (v) => new IFC4X3.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC4X3.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 1862484736: (v) => {\n var _a;\n return new IFC4X3.IfcSectionedSolid(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1290935644: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSolidHorizontal(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1356537516: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3663146110: (v) => new IFC4X3.IfcSimplePropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value), v[11]),\n 1412071761: (v) => new IFC4X3.IfcSpatialElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value)),\n 710998568: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2706606064: (v) => new IFC4X3.IfcSpatialStructureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialStructureElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 463610769: (v) => new IFC4X3.IfcSpatialZone(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 2481509218: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialZoneType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 451544542: (v) => new IFC4X3.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 4015995234: (v) => new IFC4X3.IfcSphericalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 2735484536: (v) => new IFC4X3.IfcSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value)),\n 3544373492: (v) => new IFC4X3.IfcStructuralActivity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC4X3.IfcStructuralItem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC4X3.IfcStructuralMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC4X3.IfcStructuralReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC4X3.IfcStructuralSurfaceMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => new IFC4X3.IfcStructuralSurfaceMemberVarying(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 603775116: (v) => new IFC4X3.IfcStructuralSurfaceReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 4095615324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSubContractResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 699246055: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2028607225: (v) => new IFC4X3.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC4X3.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC4X3.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSystemFurnitureElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3473067441: (v) => new IFC4X3.IfcTask(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcInteger(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), v[12]),\n 3206491090: (v) => {\n var _a;\n return new IFC4X3.IfcTaskType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 2387106220: (v) => new IFC4X3.IfcTessellatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 782932809: (v) => new IFC4X3.IfcThirdOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 1935646853: (v) => new IFC4X3.IfcToroidalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3665877780: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransportationDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2916149573: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcTriangulatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1229763772: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcTriangulatedIrregularNetwork(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], ((_d = v[5]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || []);\n },\n 3651464721: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVehicleType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 336235671: (v) => new IFC4X3.IfcWindowLiningProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcLengthMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcLengthMeasure(!v[15] ? null : v[15].value)),\n 512836454: (v) => new IFC4X3.IfcWindowPanelProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2296667514: (v) => new IFC4X3.IfcActor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1635779807: (v) => new IFC4X3.IfcAdvancedBrep(new Handle(!v[0] ? null : v[0].value)),\n 2603310189: (v) => {\n var _a;\n return new IFC4X3.IfcAdvancedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1674181508: (v) => new IFC4X3.IfcAnnotation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 2887950389: (v) => {\n var _a;\n return new IFC4X3.IfcBSplineSurface(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value));\n },\n 167062518: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4X3.IfcBSplineSurfaceWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[11]);\n },\n 1334484129: (v) => new IFC4X3.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC4X3.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC4X3.IfcBoundedCurve(),\n 3124254112: (v) => new IFC4X3.IfcBuildingStorey(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 1626504194: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuiltElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2197970202: (v) => {\n var _a, _b;\n return new IFC4X3.IfcChimneyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2937912522: (v) => new IFC4X3.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3893394355: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCivilElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3497074424: (v) => new IFC4X3.IfcClothoid(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 300633059: (v) => {\n var _a, _b;\n return new IFC4X3.IfcColumnType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3875453745: (v) => {\n var _a;\n return new IFC4X3.IfcComplexPropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 15328376: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeCurveOnSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 2510884976: (v) => new IFC4X3.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2185764099: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionEquipmentResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 4105962743: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionMaterialResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1525564444: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionProductResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2559216714: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 3293443760: (v) => new IFC4X3.IfcControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 2000195564: (v) => new IFC4X3.IfcCosineSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value)),\n 3895139033: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCostItem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1419761937: (v) => new IFC4X3.IfcCostSchedule(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value)),\n 4189326743: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCourseType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916426348: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoveringType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => {\n var _a;\n return new IFC4X3.IfcCrewResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1457835157: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCurtainWallType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1213902940: (v) => new IFC4X3.IfcCylindricalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1306400036: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDeepFoundationType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 4234616927: (v) => new IFC4X3.IfcDirectrixDerivedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 3256556792: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionFlowElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2963535650: (v) => new IFC4X3.IfcDoorLiningProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcLengthMeasure(!v[16] ? null : v[16].value)),\n 1714330368: (v) => new IFC4X3.IfcDoorPanelProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2323601079: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDoorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value));\n },\n 445594917: (v) => new IFC4X3.IfcDraughtingPreDefinedColour(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC4X3.IfcDraughtingPreDefinedCurveFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1758889154: (v) => new IFC4X3.IfcElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC4X3.IfcElementAssembly(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 2397081782: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementAssemblyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1623761950: (v) => new IFC4X3.IfcElementComponent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementComponentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC4X3.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEnergyConversionDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 132023988: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEngineType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3174744832: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEvaporativeCoolerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEvaporatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4148101412: (v) => new IFC4X3.IfcEvent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2853485674: (v) => new IFC4X3.IfcExternalSpatialStructureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value)),\n 807026263: (v) => new IFC4X3.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC4X3.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 24185140: (v) => new IFC4X3.IfcFacility(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 1310830890: (v) => new IFC4X3.IfcFacilityPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 4228831410: (v) => new IFC4X3.IfcFacilityPartCommon(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 647756555: (v) => new IFC4X3.IfcFastener(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFastenerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2827207264: (v) => new IFC4X3.IfcFeatureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC4X3.IfcFeatureElementAddition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC4X3.IfcFeatureElementSubtraction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowControllerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowMeterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowMovingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowStorageDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowTreatmentDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1893162501: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFootingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 263784265: (v) => new IFC4X3.IfcFurnishingElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1509553395: (v) => new IFC4X3.IfcFurniture(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3493046030: (v) => new IFC4X3.IfcGeographicElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4230923436: (v) => new IFC4X3.IfcGeotechnicalElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1594536857: (v) => new IFC4X3.IfcGeotechnicalStratum(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2898700619: (v) => {\n var _a;\n return new IFC4X3.IfcGradientCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2706460486: (v) => new IFC4X3.IfcGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC4X3.IfcHeatExchangerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC4X3.IfcHumidifierType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2568555532: (v) => new IFC4X3.IfcImpactProtectionDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3948183225: (v) => {\n var _a, _b;\n return new IFC4X3.IfcImpactProtectionDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2571569899: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedPolyCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], new IFC4X3.IfcLogical(!v[2] ? null : v[2].value));\n },\n 3946677679: (v) => {\n var _a, _b;\n return new IFC4X3.IfcInterceptorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3113134337: (v) => {\n var _a;\n return new IFC4X3.IfcIntersectionCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC4X3.IfcInventory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcDate(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC4X3.IfcJunctionBoxType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 679976338: (v) => {\n var _a, _b;\n return new IFC4X3.IfcKerbType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value));\n },\n 3827777499: (v) => {\n var _a;\n return new IFC4X3.IfcLaborResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1051575348: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLampType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLightFixtureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2176059722: (v) => new IFC4X3.IfcLinearElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1770583370: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLiquidTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 525669439: (v) => new IFC4X3.IfcMarineFacility(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 976884017: (v) => new IFC4X3.IfcMarinePart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 377706215: (v) => new IFC4X3.IfcMechanicalFastener(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10]),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMechanicalFastenerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value));\n },\n 1114901282: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMedicalDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMemberType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1950438474: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMobileTelecommunicationsApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 710110818: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMooringDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMotorConnectionType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 506776471: (v) => {\n var _a, _b;\n return new IFC4X3.IfcNavigationElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4143007308: (v) => new IFC4X3.IfcOccupant(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC4X3.IfcOpeningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC4X3.IfcOutletType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 514975943: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPavementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC4X3.IfcPerformanceHistory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), v[7]),\n 3566463478: (v) => new IFC4X3.IfcPermeableCoveringProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3327091369: (v) => new IFC4X3.IfcPermit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 1158309216: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPileType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 804291784: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPipeFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPipeSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPlateType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2839578677: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPolygonalFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC4X3.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC4X3.IfcPort(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1946335990: (v) => new IFC4X3.IfcPositioningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC4X3.IfcProcedure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), v[7]),\n 2904328755: (v) => new IFC4X3.IfcProjectOrder(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 3651124850: (v) => new IFC4X3.IfcProjectionElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC4X3.IfcProtectiveDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPumpType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1763565496: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRailType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRailingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3992365140: (v) => new IFC4X3.IfcRailway(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 1891881377: (v) => new IFC4X3.IfcRailwayPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 2324767716: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRampFlightType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1469900589: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRampType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 683857671: (v) => {\n var _a, _b, _c, _d, _e, _f;\n return new IFC4X3.IfcRationalBSplineSurfaceWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[11], (_f = v[12]) == null ? void 0 : _f.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcReal(p2.value) : null)) || []));\n },\n 4021432810: (v) => new IFC4X3.IfcReferent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 3027567501: (v) => new IFC4X3.IfcReinforcingElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value)),\n 964333572: (v) => {\n var _a, _b;\n return new IFC4X3.IfcReinforcingElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2320036040: (v) => new IFC4X3.IfcReinforcingMesh(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcAreaMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), v[17]),\n 2310774935: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcReinforcingMeshType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcLabel(!v[18] ? null : v[18].value), !v[19] ? null : ((_c = v[19]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 3818125796: (v) => {\n var _a;\n return new IFC4X3.IfcRelAdheresToElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 160246688: (v) => {\n var _a;\n return new IFC4X3.IfcRelAggregates(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 146592293: (v) => new IFC4X3.IfcRoad(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 550521510: (v) => new IFC4X3.IfcRoadPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 2781568857: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRoofType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSanitaryTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2157484638: (v) => {\n var _a;\n return new IFC4X3.IfcSeamCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 3649235739: (v) => new IFC4X3.IfcSecondOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 544395925: (v) => {\n var _a;\n return new IFC4X3.IfcSegmentedReferenceCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 1027922057: (v) => new IFC4X3.IfcSeventhOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 4074543187: (v) => {\n var _a, _b;\n return new IFC4X3.IfcShadingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 33720170: (v) => new IFC4X3.IfcSign(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3599934289: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSignType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1894708472: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSignalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 42703149: (v) => new IFC4X3.IfcSineSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4097777520: (v) => new IFC4X3.IfcSite(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC4X3.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC4X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSlabType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1072016465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSolarDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC4X3.IfcSpace(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpaceHeaterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3812236995: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpaceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStackTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStairFlightType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 338393293: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStairType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC4X3.IfcStructuralAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value)),\n 1179482911: (v) => new IFC4X3.IfcStructuralConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1004757350: (v) => new IFC4X3.IfcStructuralCurveAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 4243806635: (v) => new IFC4X3.IfcStructuralCurveConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 214636428: (v) => new IFC4X3.IfcStructuralCurveMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2445595289: (v) => new IFC4X3.IfcStructuralCurveMemberVarying(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2757150158: (v) => new IFC4X3.IfcStructuralCurveReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 1807405624: (v) => new IFC4X3.IfcStructuralLinearAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1252848954: (v) => new IFC4X3.IfcStructuralLoadGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value)),\n 2082059205: (v) => new IFC4X3.IfcStructuralPointAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value)),\n 734778138: (v) => new IFC4X3.IfcStructuralPointConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1235345126: (v) => new IFC4X3.IfcStructuralPointReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC4X3.IfcStructuralResultGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcBoolean(!v[7] ? null : v[7].value)),\n 3657597509: (v) => new IFC4X3.IfcStructuralSurfaceAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1975003073: (v) => new IFC4X3.IfcStructuralSurfaceConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => {\n var _a;\n return new IFC4X3.IfcSubContractResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 3101698114: (v) => new IFC4X3.IfcSurfaceFeature(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSwitchingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC4X3.IfcSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 413509423: (v) => new IFC4X3.IfcSystemFurnitureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 5716631: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTankType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3824725483: (v) => new IFC4X3.IfcTendon(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC4X3.IfcTendonAnchor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 3081323446: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonAnchorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3663046924: (v) => new IFC4X3.IfcTendonConduit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 2281632017: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonConduitType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2415094496: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value));\n },\n 618700268: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTrackElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransformerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2097647324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransportElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1953115116: (v) => new IFC4X3.IfcTransportationDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcBoolean(!v[3] ? null : v[3].value), v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTubeBundleType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC4X3.IfcUnitaryEquipmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC4X3.IfcValveType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 840318589: (v) => new IFC4X3.IfcVehicle(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1530820697: (v) => new IFC4X3.IfcVibrationDamper(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3956297820: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVibrationDamperType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391383451: (v) => new IFC4X3.IfcVibrationIsolator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVibrationIsolatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC4X3.IfcVirtualElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 926996030: (v) => new IFC4X3.IfcVoidingFeature(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWallType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWasteTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4009809668: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWindowType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value));\n },\n 4088093105: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWorkCalendar(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC4X3.IfcWorkControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC4X3.IfcWorkPlan(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 3342526732: (v) => {\n var _a;\n return new IFC4X3.IfcWorkSchedule(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 1033361043: (v) => new IFC4X3.IfcZone(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3821786052: (v) => new IFC4X3.IfcActionRequest(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirTerminalBoxType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirToAirHeatRecoveryType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4266260250: (v) => new IFC4X3.IfcAlignmentCant(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 1545765605: (v) => new IFC4X3.IfcAlignmentHorizontal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 317615605: (v) => new IFC4X3.IfcAlignmentSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value)),\n 1662888072: (v) => new IFC4X3.IfcAlignmentVertical(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3460190687: (v) => new IFC4X3.IfcAsset(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDate(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 1532957894: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAudioVisualApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1967976161: (v) => {\n var _a;\n return new IFC4X3.IfcBSplineCurve(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value));\n },\n 2461110595: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcBSplineCurveWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[7]);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBeamType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3649138523: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBearingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBoilerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1136057603: (v) => {\n var _a;\n return new IFC4X3.IfcBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 644574406: (v) => new IFC4X3.IfcBridge(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 963979645: (v) => new IFC4X3.IfcBridgePart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 4031249490: (v) => new IFC4X3.IfcBuilding(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 2979338954: (v) => new IFC4X3.IfcBuildingElementPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 39481116: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuildingElementPartType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1909888760: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuildingElementProxyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1177604601: (v) => new IFC4X3.IfcBuildingSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1876633798: (v) => new IFC4X3.IfcBuiltElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3862327254: (v) => new IFC4X3.IfcBuiltSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 2188180465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBurnerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableCarrierFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableCarrierSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2674252688: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3203706013: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCaissonFoundationType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC4X3.IfcChillerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3296154744: (v) => new IFC4X3.IfcChimney(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2611217952: (v) => new IFC4X3.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1677625105: (v) => new IFC4X3.IfcCivilElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoilType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC4X3.IfcColumn(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 400855858: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCommunicationsApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3850581409: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCompressorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCondenserType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3898045240: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionEquipmentResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1060000209: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionMaterialResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 488727124: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionProductResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 2940368186: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConveyorSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 335055490: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCooledBeamType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoolingTowerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1502416096: (v) => new IFC4X3.IfcCourse(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1973544240: (v) => new IFC4X3.IfcCovering(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC4X3.IfcCurtainWall(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDamperType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3426335179: (v) => new IFC4X3.IfcDeepFoundation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1335981549: (v) => new IFC4X3.IfcDiscreteAccessory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDiscreteAccessoryType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 479945903: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionBoardType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionChamberElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionControlElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC4X3.IfcDistributionElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC4X3.IfcDistributionFlowElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC4X3.IfcDistributionPort(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], v[9]),\n 3205830791: (v) => new IFC4X3.IfcDistributionSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 395920057: (v) => new IFC4X3.IfcDoor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctSilencerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3071239417: (v) => new IFC4X3.IfcEarthworksCut(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1077100507: (v) => new IFC4X3.IfcEarthworksElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3376911765: (v) => new IFC4X3.IfcEarthworksFill(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 663422040: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2417008758: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricDistributionBoardType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricFlowStorageDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2142170206: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricFlowTreatmentDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricGeneratorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricMotorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricTimeControlType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1658829314: (v) => new IFC4X3.IfcEnergyConversionDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2814081492: (v) => new IFC4X3.IfcEngine(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3747195512: (v) => new IFC4X3.IfcEvaporativeCooler(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 484807127: (v) => new IFC4X3.IfcEvaporator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1209101575: (v) => new IFC4X3.IfcExternalSpatialElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 346874300: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFanType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFilterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFireSuppressionTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC4X3.IfcFlowController(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC4X3.IfcFlowFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowInstrumentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188021234: (v) => new IFC4X3.IfcFlowMeter(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3132237377: (v) => new IFC4X3.IfcFlowMovingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC4X3.IfcFlowSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC4X3.IfcFlowStorageDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC4X3.IfcFlowTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC4X3.IfcFlowTreatmentDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC4X3.IfcFooting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2713699986: (v) => new IFC4X3.IfcGeotechnicalAssembly(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcGrid(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[10]);\n },\n 3319311131: (v) => new IFC4X3.IfcHeatExchanger(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2068733104: (v) => new IFC4X3.IfcHumidifier(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4175244083: (v) => new IFC4X3.IfcInterceptor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2176052936: (v) => new IFC4X3.IfcJunctionBox(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2696325953: (v) => new IFC4X3.IfcKerb(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), new IFC4X3.IfcBoolean(!v[8] ? null : v[8].value)),\n 76236018: (v) => new IFC4X3.IfcLamp(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 629592764: (v) => new IFC4X3.IfcLightFixture(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1154579445: (v) => new IFC4X3.IfcLinearPositioningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1638804497: (v) => new IFC4X3.IfcLiquidTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1437502449: (v) => new IFC4X3.IfcMedicalDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC4X3.IfcMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2078563270: (v) => new IFC4X3.IfcMobileTelecommunicationsAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 234836483: (v) => new IFC4X3.IfcMooringDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2474470126: (v) => new IFC4X3.IfcMotorConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2182337498: (v) => new IFC4X3.IfcNavigationElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 144952367: (v) => {\n var _a;\n return new IFC4X3.IfcOuterBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3694346114: (v) => new IFC4X3.IfcOutlet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1383356374: (v) => new IFC4X3.IfcPavement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1687234759: (v) => new IFC4X3.IfcPile(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 310824031: (v) => new IFC4X3.IfcPipeFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3612865200: (v) => new IFC4X3.IfcPipeSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3171933400: (v) => new IFC4X3.IfcPlate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 738039164: (v) => new IFC4X3.IfcProtectiveDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 655969474: (v) => {\n var _a, _b;\n return new IFC4X3.IfcProtectiveDeviceTrippingUnitType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 90941305: (v) => new IFC4X3.IfcPump(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3290496277: (v) => new IFC4X3.IfcRail(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2262370178: (v) => new IFC4X3.IfcRailing(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC4X3.IfcRamp(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC4X3.IfcRampFlight(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1232101972: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcRationalBSplineCurveWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[7], ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 3798194928: (v) => new IFC4X3.IfcReinforcedSoil(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 979691226: (v) => new IFC4X3.IfcReinforcingBar(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13]),\n 2572171363: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcReinforcingBarType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC4X3.IfcLabel(!v[14] ? null : v[14].value), !v[15] ? null : ((_c = v[15]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 2016517767: (v) => new IFC4X3.IfcRoof(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3053780830: (v) => new IFC4X3.IfcSanitaryTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSensorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1329646415: (v) => new IFC4X3.IfcShadingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 991950508: (v) => new IFC4X3.IfcSignal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1529196076: (v) => new IFC4X3.IfcSlab(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3420628829: (v) => new IFC4X3.IfcSolarDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1999602285: (v) => new IFC4X3.IfcSpaceHeater(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1404847402: (v) => new IFC4X3.IfcStackTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC4X3.IfcStair(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC4X3.IfcStairFlight(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcInteger(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcInteger(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12]),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStructuralAnalysisModel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 385403989: (v) => {\n var _a;\n return new IFC4X3.IfcStructuralLoadCase(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : ((_a = v[10]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcRatioMeasure(p.value) : null)) || []);\n },\n 1621171031: (v) => new IFC4X3.IfcStructuralPlanarAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1162798199: (v) => new IFC4X3.IfcSwitchingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 812556717: (v) => new IFC4X3.IfcTank(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3425753595: (v) => new IFC4X3.IfcTrackElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3825984169: (v) => new IFC4X3.IfcTransformer(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1620046519: (v) => new IFC4X3.IfcTransportElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3026737570: (v) => new IFC4X3.IfcTubeBundle(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3179687236: (v) => {\n var _a, _b;\n return new IFC4X3.IfcUnitaryControlElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4292641817: (v) => new IFC4X3.IfcUnitaryEquipment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4207607924: (v) => new IFC4X3.IfcValve(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2391406946: (v) => new IFC4X3.IfcWall(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3512223829: (v) => new IFC4X3.IfcWallStandardCase(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4237592921: (v) => new IFC4X3.IfcWasteTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3304561284: (v) => new IFC4X3.IfcWindow(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC4X3.IfcActuatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634111441: (v) => new IFC4X3.IfcAirTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 177149247: (v) => new IFC4X3.IfcAirTerminalBox(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2056796094: (v) => new IFC4X3.IfcAirToAirHeatRecovery(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3001207471: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAlarmType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 325726236: (v) => new IFC4X3.IfcAlignment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 277319702: (v) => new IFC4X3.IfcAudioVisualAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 753842376: (v) => new IFC4X3.IfcBeam(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4196446775: (v) => new IFC4X3.IfcBearing(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 32344328: (v) => new IFC4X3.IfcBoiler(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3314249567: (v) => new IFC4X3.IfcBorehole(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1095909175: (v) => new IFC4X3.IfcBuildingElementProxy(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2938176219: (v) => new IFC4X3.IfcBurner(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 635142910: (v) => new IFC4X3.IfcCableCarrierFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3758799889: (v) => new IFC4X3.IfcCableCarrierSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1051757585: (v) => new IFC4X3.IfcCableFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4217484030: (v) => new IFC4X3.IfcCableSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3999819293: (v) => new IFC4X3.IfcCaissonFoundation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3902619387: (v) => new IFC4X3.IfcChiller(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 639361253: (v) => new IFC4X3.IfcCoil(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3221913625: (v) => new IFC4X3.IfcCommunicationsAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3571504051: (v) => new IFC4X3.IfcCompressor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2272882330: (v) => new IFC4X3.IfcCondenser(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 578613899: (v) => {\n var _a, _b;\n return new IFC4X3.IfcControllerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3460952963: (v) => new IFC4X3.IfcConveyorSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4136498852: (v) => new IFC4X3.IfcCooledBeam(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3640358203: (v) => new IFC4X3.IfcCoolingTower(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4074379575: (v) => new IFC4X3.IfcDamper(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3693000487: (v) => new IFC4X3.IfcDistributionBoard(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1052013943: (v) => new IFC4X3.IfcDistributionChamberElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 562808652: (v) => new IFC4X3.IfcDistributionCircuit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 1062813311: (v) => new IFC4X3.IfcDistributionControlElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 342316401: (v) => new IFC4X3.IfcDuctFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3518393246: (v) => new IFC4X3.IfcDuctSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1360408905: (v) => new IFC4X3.IfcDuctSilencer(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1904799276: (v) => new IFC4X3.IfcElectricAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 862014818: (v) => new IFC4X3.IfcElectricDistributionBoard(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3310460725: (v) => new IFC4X3.IfcElectricFlowStorageDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 24726584: (v) => new IFC4X3.IfcElectricFlowTreatmentDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 264262732: (v) => new IFC4X3.IfcElectricGenerator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 402227799: (v) => new IFC4X3.IfcElectricMotor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1003880860: (v) => new IFC4X3.IfcElectricTimeControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3415622556: (v) => new IFC4X3.IfcFan(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 819412036: (v) => new IFC4X3.IfcFilter(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1426591983: (v) => new IFC4X3.IfcFireSuppressionTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 182646315: (v) => new IFC4X3.IfcFlowInstrument(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2680139844: (v) => new IFC4X3.IfcGeomodel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1971632696: (v) => new IFC4X3.IfcGeoslice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2295281155: (v) => new IFC4X3.IfcProtectiveDeviceTrippingUnit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4086658281: (v) => new IFC4X3.IfcSensor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 630975310: (v) => new IFC4X3.IfcUnitaryControlElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4288193352: (v) => new IFC4X3.IfcActuator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3087945054: (v) => new IFC4X3.IfcAlarm(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 25142252: (v) => new IFC4X3.IfcController(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8])\n};\nInheritanceDef[3] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 2879124712: [IFCALIGNMENTHORIZONTALSEGMENT, IFCALIGNMENTCANTSEGMENT, IFCALIGNMENTVERTICALSEGMENT],\n 411424972: [IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONVOLUMEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 1785450214: [IFCMAPCONVERSION],\n 1466758467: [IFCPROJECTEDCRS],\n 4294318154: [IFCDOCUMENTINFORMATION, IFCCLASSIFICATION, IFCLIBRARYINFORMATION],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 760658860: [IFCMATERIALCONSTITUENTSET, IFCMATERIALCONSTITUENT, IFCMATERIAL, IFCMATERIALPROFILESET, IFCMATERIALPROFILEWITHOFFSETS, IFCMATERIALPROFILE, IFCMATERIALLAYERSET, IFCMATERIALLAYERWITHOFFSETS, IFCMATERIALLAYER],\n 248100487: [IFCMATERIALLAYERWITHOFFSETS],\n 2235152071: [IFCMATERIALPROFILEWITHOFFSETS],\n 1507914824: [IFCMATERIALPROFILESETUSAGETAPERING, IFCMATERIALPROFILESETUSAGE, IFCMATERIALLAYERSETUSAGE],\n 1918398963: [IFCCONVERSIONBASEDUNITWITHOFFSET, IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCLINEARPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYNUMBER, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYNUMBER, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 677532197: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDITEM, IFCINDEXEDCOLOURMAP, IFCCURVESTYLEFONTPATTERN, IFCCURVESTYLEFONTANDSCALING, IFCCURVESTYLEFONT, IFCCOLOURRGB, IFCCOLOURSPECIFICATION, IFCCOLOURRGBLIST, IFCTEXTUREVERTEXLIST, IFCTEXTUREVERTEX, IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR, IFCTEXTURECOORDINATE, IFCTEXTSTYLETEXTMODEL, IFCTEXTSTYLEFORDEFINEDFONT, IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE, IFCSURFACETEXTURE, IFCSURFACESTYLEWITHTEXTURES, IFCSURFACESTYLERENDERING, IFCSURFACESTYLESHADING, IFCSURFACESTYLEREFRACTION, IFCSURFACESTYLELIGHTING],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCOPENCROSSPROFILEDEF, IFCMIRROREDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 986844984: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY, IFCPROPERTY, IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES, IFCPREDEFINEDPROPERTIES, IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES, IFCEXTENDEDPROPERTIES, IFCPROPERTYENUMERATION],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCSEGMENT, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCSTYLEDITEM],\n 2439245199: [IFCRESOURCECONSTRAINTRELATIONSHIP, IFCRESOURCEAPPROVALRELATIONSHIP, IFCPROPERTYDEPENDENCYRELATIONSHIP, IFCORGANIZATIONRELATIONSHIP, IFCMATERIALRELATIONSHIP, IFCEXTERNALREFERENCERELATIONSHIP, IFCDOCUMENTINFORMATIONRELATIONSHIP, IFCCURRENCYRELATIONSHIP, IFCAPPROVALRELATIONSHIP],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 1054537805: [IFCRESOURCETIME, IFCLAGTIME, IFCEVENTTIME, IFCWORKTIME, IFCTASKTIMERECURRING, IFCTASKTIME],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC, IFCSTRUCTURALLOADORRESULT, IFCSTRUCTURALLOADCONFIGURATION],\n 609421318: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 1549132990: [IFCTASKTIMERECURRING],\n 280115917: [IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 222769930: [IFCTEXTURECOORDINATEINDICESWITHVOIDS],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 3264961684: [IFCCOLOURRGB],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 2889183280: [IFCCONVERSIONBASEDUNITWITHOFFSET],\n 3632507154: [IFCMIRROREDPROFILEDEF],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 297599258: [IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES],\n 2556980723: [IFCADVANCEDFACE, IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 3008276851: [IFCADVANCEDFACE],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCSEGMENT, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1437953363: [IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 3079605661: [IFCMATERIALPROFILESETUSAGETAPERING],\n 219451334: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT],\n 3778827333: [IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES],\n 1775413392: [IFCTEXTSTYLEFONTMODEL],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1680319473: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET],\n 1482703590: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE],\n 2090586900: [IFCELEMENTQUANTITY],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 823603102: [IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 723233188: [IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 2513912981: [IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID],\n 1260650574: [IFCSWEPTDISKSOLIDPOLYGONAL],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 901063453: [IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS],\n 3736923433: [IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE],\n 2347495698: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE],\n 3698973494: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 574549367: [IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2485617015: [IFCREPARAMETRISEDCOMPOSITECURVESEGMENT],\n 2574617495: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE],\n 3419103109: [IFCPROJECTLIBRARY, IFCPROJECT],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE],\n 593015953: [IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID],\n 339256511: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE],\n 477187591: [IFCEXTRUDEDAREASOLIDTAPERED],\n 2652556860: [IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 178912537: [IFCINDEXEDPOLYGONALFACEWITHVOIDS],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP],\n 3888040117: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS],\n 590820931: [IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 3967405729: [IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 2945172077: [IFCPROCEDURE, IFCEVENT, IFCTASK],\n 4208778838: [IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT],\n 3521284610: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR],\n 1307041759: [IFCRELASSIGNSTOGROUPBYFACTOR],\n 1865459582: [IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL],\n 826625072: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT],\n 3451746338: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL],\n 3523091289: [IFCRELSPACEBOUNDARY2NDLEVEL],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 1856042241: [IFCREVOLVEDAREASOLIDTAPERED],\n 1862484736: [IFCSECTIONEDSOLIDHORIZONTAL],\n 1412071761: [IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT],\n 710998568: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY],\n 3893378262: [IFCSPACETYPE],\n 2735484536: [IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL],\n 3544373492: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 699246055: [IFCSEAMCURVE, IFCINTERSECTIONCURVE],\n 2387106220: [IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET],\n 3665877780: [IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE],\n 2916149573: [IFCTRIANGULATEDIRREGULARNETWORK],\n 2296667514: [IFCOCCUPANT],\n 1635779807: [IFCADVANCEDBREPWITHVOIDS],\n 2887950389: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS],\n 167062518: [IFCRATIONALBSPLINESURFACEWITHKNOTS],\n 1260505505: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE],\n 1626504194: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE],\n 3732776249: [IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE],\n 15328376: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 1306400036: [IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER],\n 2590856083: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE],\n 2853485674: [IFCEXTERNALSPATIALELEMENT],\n 807026263: [IFCFACETEDBREPWITHVOIDS],\n 24185140: [IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY],\n 1310830890: [IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON],\n 2827207264: [IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE],\n 3009222698: [IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE],\n 263784265: [IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE],\n 4230923436: [IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM],\n 2706460486: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 2176059722: [IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 1946335990: [IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 964333572: [IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE],\n 682877961: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 1004757350: [IFCSTRUCTURALLINEARACTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1252848954: [IFCSTRUCTURALLOADCASE],\n 3657597509: [IFCSTRUCTURALPLANARACTION],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE],\n 1953115116: [IFCTRANSPORTELEMENT, IFCVEHICLE],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS],\n 2461110595: [IFCRATIONALBSPLINECURVEWITHKNOTS],\n 1136057603: [IFCOUTERBOUNDARYCURVE],\n 1876633798: [IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY],\n 3426335179: [IFCCAISSONFOUNDATION, IFCPILE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE],\n 3205830791: [IFCDISTRIBUTIONCIRCUIT],\n 1077100507: [IFCREINFORCEDSOIL, IFCEARTHWORKSFILL],\n 1658829314: [IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE],\n 2058353004: [IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER],\n 4278956645: [IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX],\n 3132237377: [IFCFAN, IFCCOMPRESSOR, IFCPUMP],\n 987401354: [IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT],\n 707683696: [IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK],\n 2223149337: [IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP],\n 3508470533: [IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR],\n 2713699986: [IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE],\n 1154579445: [IFCALIGNMENT],\n 2391406946: [IFCWALLSTANDARDCASE],\n 1062813311: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT]\n};\nInversePropertyDef[3] = {\n 3630933823: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 130549933: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"ApprovedObjects\", IFCRELASSOCIATESAPPROVAL, 5, true], [\"ApprovedResources\", IFCRESOURCEAPPROVALRELATIONSHIP, 3, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 3, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 2, true]],\n 1959218052: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 1466758467: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 602808272: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3200245327: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 2242383968: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 1040185647: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 3548104201: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 2655187982: [[\"LibraryInfoForObjects\", IFCRELASSOCIATESLIBRARY, 5, true], [\"HasLibraryReferences\", IFCLIBRARYREFERENCE, 5, true]],\n 3452421091: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"LibraryRefForObjects\", IFCRELASSOCIATESLIBRARY, 5, true]],\n 760658860: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 248100487: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3303938423: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1847252529: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 2235152071: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 164193824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 552965576: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 1507914824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3368373690: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 2251480897: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3958567839: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3843373140: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 986844984: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3710013099: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2044713172: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2691318326: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"HasShapeAspects\", IFCSHAPEASPECT, 4, true], [\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 867548509: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 626085974: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 222769930: [[\"ToTexMap\", IFCINDEXEDPOLYGONALTEXTUREMAP, 3, false]],\n 1010789467: [[\"ToTexMap\", IFCINDEXEDPOLYGONALTEXTUREMAP, 3, false]],\n 3101149627: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1377556343: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798115385: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1310608509: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2705031697: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 616511568: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3150382593: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 747523909: [[\"ClassificationForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 647927063: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"ClassificationRefForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 1485152156: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 370225590: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3050246964: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2889183280: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2713554722: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3632507154: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1154170062: [[\"DocumentInfoForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true], [\"HasDocumentReferences\", IFCDOCUMENTREFERENCE, 4, true], [\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 3, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 2, true]],\n 3732053477: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"DocumentRefForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true]],\n 3900360178: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 297599258: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2556980723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 1809719519: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 2453401579: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 3590301190: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3905492369: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3741457305: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1402838566: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 388784114: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1838606355: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"IsRelatedWith\", IFCMATERIALRELATIONSHIP, 3, true], [\"RelatesTo\", IFCMATERIALRELATIONSHIP, 2, true]],\n 3708119e3: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialConstituentSet\", IFCMATERIALCONSTITUENTSET, 2, false]],\n 2852063980: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1303795690: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3079605661: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3404854881: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3265635763: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2998442950: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 182550632: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2665983363: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2529465313: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2519244187: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 597895409: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 2004835150: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2165702409: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3778827333: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 2802850158: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2598011224: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1680319473: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 3357820518: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1482703590: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2090586900: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3615266464: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3413951693: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1580146022: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2778083089: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2042790032: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 4165799628: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1509187699: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 823603102: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 4124623270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3692461612: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 723233188: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2233826070: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1096409881: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3071757647: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 901063453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2715220739: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true]],\n 3736923433: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3698973494: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 427810014: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1417489154: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2543172580: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3406155212: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 669184980: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3207858831: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4261334040: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3425423356: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2898889636: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1123145078: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 574549367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1675464909: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2059837836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1383045692: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2205249479: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2485617015: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2574617495: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3419103109: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 1815067380: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2506170314: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2629017746: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4212018352: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 32440307: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 593015953: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1472233963: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2777663545: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2835456948: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4024345920: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 477187591: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2804161546: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2652556860: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4095422895: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 987898635: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1484403080: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 178912537: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true], [\"HasTexCoords\", IFCTEXTURECOORDINATEINDICES, 1, true]],\n 2294589976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true], [\"HasTexCoords\", IFCTEXTURECOORDINATEINDICES, 1, true]],\n 572779678: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 428585644: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1281925730: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true]],\n 590820931: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3388369263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485787929: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1682466193: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 603570806: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3381221214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3967405729: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 569719735: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 653396225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 871118103: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 4166981789: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2752243245: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 941946838: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1451395588: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 492091185: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Defines\", IFCRELDEFINESBYTEMPLATE, 5, true]],\n 3650150729: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 110355661: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 3521284610: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 2770003689: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2798486643: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3765753017: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3523091289: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true]],\n 1521410863: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true], [\"Corresponds\", IFCRELSPACEBOUNDARY2NDLEVEL, 10, true]],\n 816062949: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3243963512: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1862484736: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1290935644: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1356537516: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3663146110: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 1412071761: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 710998568: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 463610769: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2481509218: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 451544542: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4015995234: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2735484536: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 603775116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4095615324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 699246055: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2028607225: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 3206491090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2387106220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 782932809: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1935646853: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3665877780: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2916149573: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 1229763772: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3651464721: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 336235671: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 512836454: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1635779807: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2603310189: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2887950389: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 167062518: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1334484129: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1626504194: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2197970202: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2937912522: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3893394355: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3497074424: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3875453745: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3732776249: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 15328376: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2185764099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 4105962743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1525564444: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 2000195564: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4189326743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1213902940: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1306400036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4234616927: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2963535650: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1714330368: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2323601079: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2397081782: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1704287377: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 132023988: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4148101412: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2853485674: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 807026263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 24185140: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1310830890: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 4228831410: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1893162501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1509553395: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3493046030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4230923436: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1594536857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2898700619: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2568555532: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3948183225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2571569899: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3946677679: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3113134337: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 679976338: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2176059722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1770583370: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 525669439: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 976884017: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1114901282: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1950438474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 710110818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 506776471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 514975943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3566463478: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1158309216: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2839578677: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3724593414: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 1946335990: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1763565496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3992365140: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1891881377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1469900589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 683857671: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4021432810: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 964333572: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2310774935: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 146592293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 550521510: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2781568857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2157484638: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649235739: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 544395925: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1027922057: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4074543187: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 33720170: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3599934289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1894708472: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 42703149: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1072016465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 338393293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1004757350: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2757150158: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 3657597509: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3101698114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"AdheresToElement\", IFCRELADHERESTOELEMENT, 5, false]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 413509423: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3081323446: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3663046924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2281632017: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2415094496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 618700268: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1953115116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3593883385: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 840318589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1530820697: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3956297820: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2391383451: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 926996030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4009809668: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4088093105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4266260250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1545765605: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 317615605: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1662888072: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1532957894: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1967976161: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2461110595: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3649138523: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1136057603: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 644574406: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 963979645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 39481116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1177604601: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1876633798: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3862327254: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 2188180465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2674252688: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3203706013: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3296154744: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2611217952: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1677625105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 400855858: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2940368186: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1502416096: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"CoversElements\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3426335179: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 479945903: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 3205830791: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3071239417: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1077100507: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3376911765: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2417008758: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2142170206: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2814081492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3747195512: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 484807127: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1209101575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2188021234: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2713699986: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 3319311131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2068733104: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4175244083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2176052936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2696325953: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 76236018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 629592764: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1154579445: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 1638804497: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1437502449: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2078563270: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 234836483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2474470126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2182337498: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 144952367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3694346114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1383356374: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 310824031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3612865200: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 738039164: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 655969474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 90941305: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3290496277: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1232101972: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798194928: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2572171363: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3053780830: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1329646415: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 991950508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3420628829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1999602285: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1404847402: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 385403989: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1162798199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 812556717: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3425753595: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3825984169: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3026737570: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3179687236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4292641817: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4207607924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4237592921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1634111441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 177149247: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2056796094: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 325726236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 277319702: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4196446775: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 32344328: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3314249567: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2938176219: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 635142910: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3758799889: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1051757585: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4217484030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3999819293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3902619387: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 639361253: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3221913625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3571504051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2272882330: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3460952963: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4136498852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3640358203: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4074379575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3693000487: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 562808652: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 342316401: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3518393246: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1360408905: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1904799276: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 862014818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3310460725: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 24726584: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 264262732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 402227799: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1003880860: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3415622556: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 819412036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1426591983: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 182646315: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 2680139844: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1971632696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2295281155: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4086658281: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 630975310: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4288193352: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3087945054: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 25142252: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]]\n};\nConstructors[3] = {\n 3630933823: (a) => new IFC4X3.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC4X3.IfcAddress(a[0], a[1], a[2]),\n 2879124712: (a) => new IFC4X3.IfcAlignmentParameterSegment(a[0], a[1]),\n 3633395639: (a) => new IFC4X3.IfcAlignmentVerticalSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639542469: (a) => new IFC4X3.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC4X3.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 130549933: (a) => new IFC4X3.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4037036970: (a) => new IFC4X3.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC4X3.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC4X3.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC4X3.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC4X3.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2859738748: (_) => new IFC4X3.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC4X3.IfcConnectionPointGeometry(a[0], a[1]),\n 2732653382: (a) => new IFC4X3.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 775493141: (a) => new IFC4X3.IfcConnectionVolumeGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC4X3.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1785450214: (a) => new IFC4X3.IfcCoordinateOperation(a[0], a[1]),\n 1466758467: (a) => new IFC4X3.IfcCoordinateReferenceSystem(a[0], a[1], a[2], a[3]),\n 602808272: (a) => new IFC4X3.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1765591967: (a) => new IFC4X3.IfcDerivedUnit(a[0], a[1], a[2], a[3]),\n 1045800335: (a) => new IFC4X3.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC4X3.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4294318154: (_) => new IFC4X3.IfcExternalInformation(),\n 3200245327: (a) => new IFC4X3.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC4X3.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC4X3.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC4X3.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC4X3.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC4X3.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC4X3.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3452421091: (a) => new IFC4X3.IfcLibraryReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4162380809: (a) => new IFC4X3.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC4X3.IfcLightIntensityDistribution(a[0], a[1]),\n 3057273783: (a) => new IFC4X3.IfcMapConversion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1847130766: (a) => new IFC4X3.IfcMaterialClassificationRelationship(a[0], a[1]),\n 760658860: (_) => new IFC4X3.IfcMaterialDefinition(),\n 248100487: (a) => new IFC4X3.IfcMaterialLayer(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3303938423: (a) => new IFC4X3.IfcMaterialLayerSet(a[0], a[1], a[2]),\n 1847252529: (a) => new IFC4X3.IfcMaterialLayerWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2199411900: (a) => new IFC4X3.IfcMaterialList(a[0]),\n 2235152071: (a) => new IFC4X3.IfcMaterialProfile(a[0], a[1], a[2], a[3], a[4], a[5]),\n 164193824: (a) => new IFC4X3.IfcMaterialProfileSet(a[0], a[1], a[2], a[3]),\n 552965576: (a) => new IFC4X3.IfcMaterialProfileWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1507914824: (_) => new IFC4X3.IfcMaterialUsageDefinition(),\n 2597039031: (a) => new IFC4X3.IfcMeasureWithUnit(a[0], a[1]),\n 3368373690: (a) => new IFC4X3.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706619895: (a) => new IFC4X3.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC4X3.IfcNamedUnit(a[0], a[1]),\n 3701648758: (a) => new IFC4X3.IfcObjectPlacement(a[0]),\n 2251480897: (a) => new IFC4X3.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4251960020: (a) => new IFC4X3.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1207048766: (a) => new IFC4X3.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC4X3.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC4X3.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC4X3.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC4X3.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC4X3.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 677532197: (_) => new IFC4X3.IfcPresentationItem(),\n 2022622350: (a) => new IFC4X3.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC4X3.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC4X3.IfcPresentationStyle(a[0]),\n 2095639259: (a) => new IFC4X3.IfcProductRepresentation(a[0], a[1], a[2]),\n 3958567839: (a) => new IFC4X3.IfcProfileDef(a[0], a[1]),\n 3843373140: (a) => new IFC4X3.IfcProjectedCRS(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 986844984: (_) => new IFC4X3.IfcPropertyAbstraction(),\n 3710013099: (a) => new IFC4X3.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC4X3.IfcQuantityArea(a[0], a[1], a[2], a[3], a[4]),\n 2093928680: (a) => new IFC4X3.IfcQuantityCount(a[0], a[1], a[2], a[3], a[4]),\n 931644368: (a) => new IFC4X3.IfcQuantityLength(a[0], a[1], a[2], a[3], a[4]),\n 2691318326: (a) => new IFC4X3.IfcQuantityNumber(a[0], a[1], a[2], a[3], a[4]),\n 3252649465: (a) => new IFC4X3.IfcQuantityTime(a[0], a[1], a[2], a[3], a[4]),\n 2405470396: (a) => new IFC4X3.IfcQuantityVolume(a[0], a[1], a[2], a[3], a[4]),\n 825690147: (a) => new IFC4X3.IfcQuantityWeight(a[0], a[1], a[2], a[3], a[4]),\n 3915482550: (a) => new IFC4X3.IfcRecurrencePattern(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2433181523: (a) => new IFC4X3.IfcReference(a[0], a[1], a[2], a[3], a[4]),\n 1076942058: (a) => new IFC4X3.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC4X3.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC4X3.IfcRepresentationItem(),\n 1660063152: (a) => new IFC4X3.IfcRepresentationMap(a[0], a[1]),\n 2439245199: (a) => new IFC4X3.IfcResourceLevelRelationship(a[0], a[1]),\n 2341007311: (a) => new IFC4X3.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC4X3.IfcSIUnit(a[0], a[1], a[2], a[3]),\n 1054537805: (a) => new IFC4X3.IfcSchedulingTime(a[0], a[1], a[2]),\n 867548509: (a) => new IFC4X3.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC4X3.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC4X3.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 2273995522: (a) => new IFC4X3.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC4X3.IfcStructuralLoad(a[0]),\n 3478079324: (a) => new IFC4X3.IfcStructuralLoadConfiguration(a[0], a[1], a[2]),\n 609421318: (a) => new IFC4X3.IfcStructuralLoadOrResult(a[0]),\n 2525727697: (a) => new IFC4X3.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC4X3.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC4X3.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC4X3.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC4X3.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 2934153892: (a) => new IFC4X3.IfcSurfaceReinforcementArea(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC4X3.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC4X3.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC4X3.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC4X3.IfcSurfaceStyleShading(a[0], a[1]),\n 1351298697: (a) => new IFC4X3.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC4X3.IfcSurfaceTexture(a[0], a[1], a[2], a[3], a[4]),\n 985171141: (a) => new IFC4X3.IfcTable(a[0], a[1], a[2]),\n 2043862942: (a) => new IFC4X3.IfcTableColumn(a[0], a[1], a[2], a[3], a[4]),\n 531007025: (a) => new IFC4X3.IfcTableRow(a[0], a[1]),\n 1549132990: (a) => new IFC4X3.IfcTaskTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 2771591690: (a) => new IFC4X3.IfcTaskTimeRecurring(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20]),\n 912023232: (a) => new IFC4X3.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1447204868: (a) => new IFC4X3.IfcTextStyle(a[0], a[1], a[2], a[3], a[4]),\n 2636378356: (a) => new IFC4X3.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC4X3.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 280115917: (a) => new IFC4X3.IfcTextureCoordinate(a[0]),\n 1742049831: (a) => new IFC4X3.IfcTextureCoordinateGenerator(a[0], a[1], a[2]),\n 222769930: (a) => new IFC4X3.IfcTextureCoordinateIndices(a[0], a[1]),\n 1010789467: (a) => new IFC4X3.IfcTextureCoordinateIndicesWithVoids(a[0], a[1], a[2]),\n 2552916305: (a) => new IFC4X3.IfcTextureMap(a[0], a[1], a[2]),\n 1210645708: (a) => new IFC4X3.IfcTextureVertex(a[0]),\n 3611470254: (a) => new IFC4X3.IfcTextureVertexList(a[0]),\n 1199560280: (a) => new IFC4X3.IfcTimePeriod(a[0], a[1]),\n 3101149627: (a) => new IFC4X3.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 581633288: (a) => new IFC4X3.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC4X3.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC4X3.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC4X3.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC4X3.IfcVertex(),\n 1907098498: (a) => new IFC4X3.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC4X3.IfcVirtualGridIntersection(a[0], a[1]),\n 1236880293: (a) => new IFC4X3.IfcWorkTime(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3752311538: (a) => new IFC4X3.IfcAlignmentCantSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 536804194: (a) => new IFC4X3.IfcAlignmentHorizontalSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3869604511: (a) => new IFC4X3.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 3798115385: (a) => new IFC4X3.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC4X3.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC4X3.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC4X3.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3150382593: (a) => new IFC4X3.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 747523909: (a) => new IFC4X3.IfcClassification(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 647927063: (a) => new IFC4X3.IfcClassificationReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3285139300: (a) => new IFC4X3.IfcColourRgbList(a[0]),\n 3264961684: (a) => new IFC4X3.IfcColourSpecification(a[0]),\n 1485152156: (a) => new IFC4X3.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC4X3.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC4X3.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC4X3.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC4X3.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC4X3.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 2713554722: (a) => new IFC4X3.IfcConversionBasedUnitWithOffset(a[0], a[1], a[2], a[3], a[4]),\n 539742890: (a) => new IFC4X3.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3800577675: (a) => new IFC4X3.IfcCurveStyle(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC4X3.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC4X3.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC4X3.IfcCurveStyleFontPattern(a[0], a[1]),\n 3632507154: (a) => new IFC4X3.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 1154170062: (a) => new IFC4X3.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC4X3.IfcDocumentInformationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3732053477: (a) => new IFC4X3.IfcDocumentReference(a[0], a[1], a[2], a[3], a[4]),\n 3900360178: (a) => new IFC4X3.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC4X3.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 211053100: (a) => new IFC4X3.IfcEventTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 297599258: (a) => new IFC4X3.IfcExtendedProperties(a[0], a[1], a[2]),\n 1437805879: (a) => new IFC4X3.IfcExternalReferenceRelationship(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC4X3.IfcFace(a[0]),\n 1809719519: (a) => new IFC4X3.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC4X3.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC4X3.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC4X3.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC4X3.IfcFillAreaStyle(a[0], a[1], a[2]),\n 3448662350: (a) => new IFC4X3.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC4X3.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC4X3.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3590301190: (a) => new IFC4X3.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC4X3.IfcGridPlacement(a[0], a[1], a[2]),\n 812098782: (a) => new IFC4X3.IfcHalfSpaceSolid(a[0], a[1]),\n 3905492369: (a) => new IFC4X3.IfcImageTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3570813810: (a) => new IFC4X3.IfcIndexedColourMap(a[0], a[1], a[2], a[3]),\n 1437953363: (a) => new IFC4X3.IfcIndexedTextureMap(a[0], a[1], a[2]),\n 2133299955: (a) => new IFC4X3.IfcIndexedTriangleTextureMap(a[0], a[1], a[2], a[3]),\n 3741457305: (a) => new IFC4X3.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1585845231: (a) => new IFC4X3.IfcLagTime(a[0], a[1], a[2], a[3], a[4]),\n 1402838566: (a) => new IFC4X3.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC4X3.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC4X3.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC4X3.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC4X3.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC4X3.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 388784114: (a) => new IFC4X3.IfcLinearPlacement(a[0], a[1], a[2]),\n 2624227202: (a) => new IFC4X3.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC4X3.IfcLoop(),\n 2347385850: (a) => new IFC4X3.IfcMappedItem(a[0], a[1]),\n 1838606355: (a) => new IFC4X3.IfcMaterial(a[0], a[1], a[2]),\n 3708119e3: (a) => new IFC4X3.IfcMaterialConstituent(a[0], a[1], a[2], a[3], a[4]),\n 2852063980: (a) => new IFC4X3.IfcMaterialConstituentSet(a[0], a[1], a[2]),\n 2022407955: (a) => new IFC4X3.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1303795690: (a) => new IFC4X3.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3], a[4]),\n 3079605661: (a) => new IFC4X3.IfcMaterialProfileSetUsage(a[0], a[1], a[2]),\n 3404854881: (a) => new IFC4X3.IfcMaterialProfileSetUsageTapering(a[0], a[1], a[2], a[3], a[4]),\n 3265635763: (a) => new IFC4X3.IfcMaterialProperties(a[0], a[1], a[2], a[3]),\n 853536259: (a) => new IFC4X3.IfcMaterialRelationship(a[0], a[1], a[2], a[3], a[4]),\n 2998442950: (a) => new IFC4X3.IfcMirroredProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 219451334: (a) => new IFC4X3.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 182550632: (a) => new IFC4X3.IfcOpenCrossProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2665983363: (a) => new IFC4X3.IfcOpenShell(a[0]),\n 1411181986: (a) => new IFC4X3.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1029017970: (a) => new IFC4X3.IfcOrientedEdge(a[0], a[1], a[2]),\n 2529465313: (a) => new IFC4X3.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC4X3.IfcPath(a[0]),\n 3021840470: (a) => new IFC4X3.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC4X3.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2004835150: (a) => new IFC4X3.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC4X3.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC4X3.IfcPoint(),\n 2165702409: (a) => new IFC4X3.IfcPointByDistanceExpression(a[0], a[1], a[2], a[3], a[4]),\n 4022376103: (a) => new IFC4X3.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC4X3.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC4X3.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC4X3.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 3727388367: (a) => new IFC4X3.IfcPreDefinedItem(a[0]),\n 3778827333: (_) => new IFC4X3.IfcPreDefinedProperties(),\n 1775413392: (a) => new IFC4X3.IfcPreDefinedTextFont(a[0]),\n 673634403: (a) => new IFC4X3.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 2802850158: (a) => new IFC4X3.IfcProfileProperties(a[0], a[1], a[2], a[3]),\n 2598011224: (a) => new IFC4X3.IfcProperty(a[0], a[1]),\n 1680319473: (a) => new IFC4X3.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC4X3.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3357820518: (a) => new IFC4X3.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 1482703590: (a) => new IFC4X3.IfcPropertyTemplateDefinition(a[0], a[1], a[2], a[3]),\n 2090586900: (a) => new IFC4X3.IfcQuantitySet(a[0], a[1], a[2], a[3]),\n 3615266464: (a) => new IFC4X3.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC4X3.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1580146022: (a) => new IFC4X3.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC4X3.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2943643501: (a) => new IFC4X3.IfcResourceApprovalRelationship(a[0], a[1], a[2], a[3]),\n 1608871552: (a) => new IFC4X3.IfcResourceConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1042787934: (a) => new IFC4X3.IfcResourceTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2778083089: (a) => new IFC4X3.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2042790032: (a) => new IFC4X3.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC4X3.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC4X3.IfcSectionedSpine(a[0], a[1], a[2]),\n 823603102: (a) => new IFC4X3.IfcSegment(a[0]),\n 4124623270: (a) => new IFC4X3.IfcShellBasedSurfaceModel(a[0]),\n 3692461612: (a) => new IFC4X3.IfcSimpleProperty(a[0], a[1]),\n 2609359061: (a) => new IFC4X3.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC4X3.IfcSolidModel(),\n 1595516126: (a) => new IFC4X3.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC4X3.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC4X3.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC4X3.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC4X3.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC4X3.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2233826070: (a) => new IFC4X3.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC4X3.IfcSurface(),\n 1878645084: (a) => new IFC4X3.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC4X3.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC4X3.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 1096409881: (a) => new IFC4X3.IfcSweptDiskSolidPolygonal(a[0], a[1], a[2], a[3], a[4], a[5]),\n 230924584: (a) => new IFC4X3.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC4X3.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 901063453: (_) => new IFC4X3.IfcTessellatedItem(),\n 4282788508: (a) => new IFC4X3.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC4X3.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 1983826977: (a) => new IFC4X3.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2715220739: (a) => new IFC4X3.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1628702193: (a) => new IFC4X3.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3736923433: (a) => new IFC4X3.IfcTypeProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2347495698: (a) => new IFC4X3.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3698973494: (a) => new IFC4X3.IfcTypeResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 427810014: (a) => new IFC4X3.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1417489154: (a) => new IFC4X3.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC4X3.IfcVertexLoop(a[0]),\n 2543172580: (a) => new IFC4X3.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3406155212: (a) => new IFC4X3.IfcAdvancedFace(a[0], a[1], a[2]),\n 669184980: (a) => new IFC4X3.IfcAnnotationFillArea(a[0], a[1]),\n 3207858831: (a) => new IFC4X3.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4261334040: (a) => new IFC4X3.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC4X3.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC4X3.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 3425423356: (a) => new IFC4X3.IfcAxis2PlacementLinear(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC4X3.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC4X3.IfcBoundedSurface(),\n 2581212453: (a) => new IFC4X3.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC4X3.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC4X3.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1123145078: (a) => new IFC4X3.IfcCartesianPoint(a[0]),\n 574549367: (_) => new IFC4X3.IfcCartesianPointList(),\n 1675464909: (a) => new IFC4X3.IfcCartesianPointList2D(a[0], a[1]),\n 2059837836: (a) => new IFC4X3.IfcCartesianPointList3D(a[0], a[1]),\n 59481748: (a) => new IFC4X3.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC4X3.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC4X3.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC4X3.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC4X3.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC4X3.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC4X3.IfcClosedShell(a[0]),\n 776857604: (a) => new IFC4X3.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC4X3.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 2485617015: (a) => new IFC4X3.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 2574617495: (a) => new IFC4X3.IfcConstructionResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3419103109: (a) => new IFC4X3.IfcContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1815067380: (a) => new IFC4X3.IfcCrewResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC4X3.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC4X3.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC4X3.IfcCurve(),\n 2827736869: (a) => new IFC4X3.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 2629017746: (a) => new IFC4X3.IfcCurveBoundedSurface(a[0], a[1], a[2]),\n 4212018352: (a) => new IFC4X3.IfcCurveSegment(a[0], a[1], a[2], a[3], a[4]),\n 32440307: (a) => new IFC4X3.IfcDirection(a[0]),\n 593015953: (a) => new IFC4X3.IfcDirectrixCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4]),\n 1472233963: (a) => new IFC4X3.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC4X3.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC4X3.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC4X3.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC4X3.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 4024345920: (a) => new IFC4X3.IfcEventType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 477187591: (a) => new IFC4X3.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2804161546: (a) => new IFC4X3.IfcExtrudedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 2047409740: (a) => new IFC4X3.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC4X3.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 315944413: (a) => new IFC4X3.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 2652556860: (a) => new IFC4X3.IfcFixedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4238390223: (a) => new IFC4X3.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC4X3.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4095422895: (a) => new IFC4X3.IfcGeographicElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC4X3.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC4X3.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 178912537: (a) => new IFC4X3.IfcIndexedPolygonalFace(a[0]),\n 2294589976: (a) => new IFC4X3.IfcIndexedPolygonalFaceWithVoids(a[0], a[1]),\n 3465909080: (a) => new IFC4X3.IfcIndexedPolygonalTextureMap(a[0], a[1], a[2], a[3]),\n 572779678: (a) => new IFC4X3.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 428585644: (a) => new IFC4X3.IfcLaborResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1281925730: (a) => new IFC4X3.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC4X3.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC4X3.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 590820931: (a) => new IFC4X3.IfcOffsetCurve(a[0]),\n 3388369263: (a) => new IFC4X3.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC4X3.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 2485787929: (a) => new IFC4X3.IfcOffsetCurveByDistances(a[0], a[1], a[2]),\n 1682466193: (a) => new IFC4X3.IfcPcurve(a[0], a[1]),\n 603570806: (a) => new IFC4X3.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC4X3.IfcPlane(a[0]),\n 3381221214: (a) => new IFC4X3.IfcPolynomialCurve(a[0], a[1], a[2], a[3]),\n 759155922: (a) => new IFC4X3.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC4X3.IfcPreDefinedCurveFont(a[0]),\n 3967405729: (a) => new IFC4X3.IfcPreDefinedPropertySet(a[0], a[1], a[2], a[3]),\n 569719735: (a) => new IFC4X3.IfcProcedureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2945172077: (a) => new IFC4X3.IfcProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4208778838: (a) => new IFC4X3.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC4X3.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 653396225: (a) => new IFC4X3.IfcProjectLibrary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 871118103: (a) => new IFC4X3.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4166981789: (a) => new IFC4X3.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC4X3.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC4X3.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 1451395588: (a) => new IFC4X3.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 492091185: (a) => new IFC4X3.IfcPropertySetTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3650150729: (a) => new IFC4X3.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC4X3.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3521284610: (a) => new IFC4X3.IfcPropertyTemplate(a[0], a[1], a[2], a[3]),\n 2770003689: (a) => new IFC4X3.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC4X3.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC4X3.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3765753017: (a) => new IFC4X3.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3939117080: (a) => new IFC4X3.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC4X3.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC4X3.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC4X3.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1027710054: (a) => new IFC4X3.IfcRelAssignsToGroupByFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278684876: (a) => new IFC4X3.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC4X3.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC4X3.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC4X3.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 4095574036: (a) => new IFC4X3.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC4X3.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC4X3.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC4X3.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC4X3.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC4X3.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1033248425: (a) => new IFC4X3.IfcRelAssociatesProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 826625072: (a) => new IFC4X3.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC4X3.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC4X3.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC4X3.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC4X3.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC4X3.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC4X3.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC4X3.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC4X3.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC4X3.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC4X3.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC4X3.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2565941209: (a) => new IFC4X3.IfcRelDeclares(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC4X3.IfcRelDecomposes(a[0], a[1], a[2], a[3]),\n 693640335: (a) => new IFC4X3.IfcRelDefines(a[0], a[1], a[2], a[3]),\n 1462361463: (a) => new IFC4X3.IfcRelDefinesByObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4186316022: (a) => new IFC4X3.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 307848117: (a) => new IFC4X3.IfcRelDefinesByTemplate(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC4X3.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC4X3.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC4X3.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 427948657: (a) => new IFC4X3.IfcRelInterferesElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3268803585: (a) => new IFC4X3.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1441486842: (a) => new IFC4X3.IfcRelPositions(a[0], a[1], a[2], a[3], a[4], a[5]),\n 750771296: (a) => new IFC4X3.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC4X3.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4122056220: (a) => new IFC4X3.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 366585022: (a) => new IFC4X3.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC4X3.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3523091289: (a) => new IFC4X3.IfcRelSpaceBoundary1stLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1521410863: (a) => new IFC4X3.IfcRelSpaceBoundary2ndLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1401173127: (a) => new IFC4X3.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 816062949: (a) => new IFC4X3.IfcReparametrisedCompositeCurveSegment(a[0], a[1], a[2], a[3]),\n 2914609552: (a) => new IFC4X3.IfcResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1856042241: (a) => new IFC4X3.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 3243963512: (a) => new IFC4X3.IfcRevolvedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 4158566097: (a) => new IFC4X3.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC4X3.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 1862484736: (a) => new IFC4X3.IfcSectionedSolid(a[0], a[1]),\n 1290935644: (a) => new IFC4X3.IfcSectionedSolidHorizontal(a[0], a[1], a[2]),\n 1356537516: (a) => new IFC4X3.IfcSectionedSurface(a[0], a[1], a[2]),\n 3663146110: (a) => new IFC4X3.IfcSimplePropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1412071761: (a) => new IFC4X3.IfcSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 710998568: (a) => new IFC4X3.IfcSpatialElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2706606064: (a) => new IFC4X3.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC4X3.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 463610769: (a) => new IFC4X3.IfcSpatialZone(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2481509218: (a) => new IFC4X3.IfcSpatialZoneType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 451544542: (a) => new IFC4X3.IfcSphere(a[0], a[1]),\n 4015995234: (a) => new IFC4X3.IfcSphericalSurface(a[0], a[1]),\n 2735484536: (a) => new IFC4X3.IfcSpiral(a[0]),\n 3544373492: (a) => new IFC4X3.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC4X3.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC4X3.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC4X3.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC4X3.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC4X3.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603775116: (a) => new IFC4X3.IfcStructuralSurfaceReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4095615324: (a) => new IFC4X3.IfcSubContractResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 699246055: (a) => new IFC4X3.IfcSurfaceCurve(a[0], a[1], a[2]),\n 2028607225: (a) => new IFC4X3.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC4X3.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC4X3.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC4X3.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3473067441: (a) => new IFC4X3.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3206491090: (a) => new IFC4X3.IfcTaskType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2387106220: (a) => new IFC4X3.IfcTessellatedFaceSet(a[0], a[1]),\n 782932809: (a) => new IFC4X3.IfcThirdOrderPolynomialSpiral(a[0], a[1], a[2], a[3], a[4]),\n 1935646853: (a) => new IFC4X3.IfcToroidalSurface(a[0], a[1], a[2]),\n 3665877780: (a) => new IFC4X3.IfcTransportationDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2916149573: (a) => new IFC4X3.IfcTriangulatedFaceSet(a[0], a[1], a[2], a[3], a[4]),\n 1229763772: (a) => new IFC4X3.IfcTriangulatedIrregularNetwork(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3651464721: (a) => new IFC4X3.IfcVehicleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 336235671: (a) => new IFC4X3.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 512836454: (a) => new IFC4X3.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2296667514: (a) => new IFC4X3.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1635779807: (a) => new IFC4X3.IfcAdvancedBrep(a[0]),\n 2603310189: (a) => new IFC4X3.IfcAdvancedBrepWithVoids(a[0], a[1]),\n 1674181508: (a) => new IFC4X3.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2887950389: (a) => new IFC4X3.IfcBSplineSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 167062518: (a) => new IFC4X3.IfcBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC4X3.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC4X3.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC4X3.IfcBoundedCurve(),\n 3124254112: (a) => new IFC4X3.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1626504194: (a) => new IFC4X3.IfcBuiltElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2197970202: (a) => new IFC4X3.IfcChimneyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC4X3.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3893394355: (a) => new IFC4X3.IfcCivilElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3497074424: (a) => new IFC4X3.IfcClothoid(a[0], a[1]),\n 300633059: (a) => new IFC4X3.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3875453745: (a) => new IFC4X3.IfcComplexPropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3732776249: (a) => new IFC4X3.IfcCompositeCurve(a[0], a[1]),\n 15328376: (a) => new IFC4X3.IfcCompositeCurveOnSurface(a[0], a[1]),\n 2510884976: (a) => new IFC4X3.IfcConic(a[0]),\n 2185764099: (a) => new IFC4X3.IfcConstructionEquipmentResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4105962743: (a) => new IFC4X3.IfcConstructionMaterialResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1525564444: (a) => new IFC4X3.IfcConstructionProductResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2559216714: (a) => new IFC4X3.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293443760: (a) => new IFC4X3.IfcControl(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2000195564: (a) => new IFC4X3.IfcCosineSpiral(a[0], a[1], a[2]),\n 3895139033: (a) => new IFC4X3.IfcCostItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1419761937: (a) => new IFC4X3.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4189326743: (a) => new IFC4X3.IfcCourseType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916426348: (a) => new IFC4X3.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC4X3.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1457835157: (a) => new IFC4X3.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1213902940: (a) => new IFC4X3.IfcCylindricalSurface(a[0], a[1]),\n 1306400036: (a) => new IFC4X3.IfcDeepFoundationType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4234616927: (a) => new IFC4X3.IfcDirectrixDerivedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3256556792: (a) => new IFC4X3.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC4X3.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2963535650: (a) => new IFC4X3.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 1714330368: (a) => new IFC4X3.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2323601079: (a) => new IFC4X3.IfcDoorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 445594917: (a) => new IFC4X3.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC4X3.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1758889154: (a) => new IFC4X3.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC4X3.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2397081782: (a) => new IFC4X3.IfcElementAssemblyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC4X3.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC4X3.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC4X3.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC4X3.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 132023988: (a) => new IFC4X3.IfcEngineType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3174744832: (a) => new IFC4X3.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC4X3.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4148101412: (a) => new IFC4X3.IfcEvent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2853485674: (a) => new IFC4X3.IfcExternalSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 807026263: (a) => new IFC4X3.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC4X3.IfcFacetedBrepWithVoids(a[0], a[1]),\n 24185140: (a) => new IFC4X3.IfcFacility(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1310830890: (a) => new IFC4X3.IfcFacilityPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4228831410: (a) => new IFC4X3.IfcFacilityPartCommon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 647756555: (a) => new IFC4X3.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2489546625: (a) => new IFC4X3.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2827207264: (a) => new IFC4X3.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC4X3.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC4X3.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC4X3.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC4X3.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC4X3.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC4X3.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC4X3.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC4X3.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC4X3.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC4X3.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1893162501: (a) => new IFC4X3.IfcFootingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 263784265: (a) => new IFC4X3.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1509553395: (a) => new IFC4X3.IfcFurniture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3493046030: (a) => new IFC4X3.IfcGeographicElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4230923436: (a) => new IFC4X3.IfcGeotechnicalElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1594536857: (a) => new IFC4X3.IfcGeotechnicalStratum(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2898700619: (a) => new IFC4X3.IfcGradientCurve(a[0], a[1], a[2], a[3]),\n 2706460486: (a) => new IFC4X3.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC4X3.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC4X3.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2568555532: (a) => new IFC4X3.IfcImpactProtectionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3948183225: (a) => new IFC4X3.IfcImpactProtectionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2571569899: (a) => new IFC4X3.IfcIndexedPolyCurve(a[0], a[1], a[2]),\n 3946677679: (a) => new IFC4X3.IfcInterceptorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3113134337: (a) => new IFC4X3.IfcIntersectionCurve(a[0], a[1], a[2]),\n 2391368822: (a) => new IFC4X3.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC4X3.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 679976338: (a) => new IFC4X3.IfcKerbType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC4X3.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1051575348: (a) => new IFC4X3.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC4X3.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2176059722: (a) => new IFC4X3.IfcLinearElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1770583370: (a) => new IFC4X3.IfcLiquidTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 525669439: (a) => new IFC4X3.IfcMarineFacility(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 976884017: (a) => new IFC4X3.IfcMarinePart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 377706215: (a) => new IFC4X3.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2108223431: (a) => new IFC4X3.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1114901282: (a) => new IFC4X3.IfcMedicalDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3181161470: (a) => new IFC4X3.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1950438474: (a) => new IFC4X3.IfcMobileTelecommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 710110818: (a) => new IFC4X3.IfcMooringDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC4X3.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 506776471: (a) => new IFC4X3.IfcNavigationElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4143007308: (a) => new IFC4X3.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC4X3.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2837617999: (a) => new IFC4X3.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 514975943: (a) => new IFC4X3.IfcPavementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC4X3.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3566463478: (a) => new IFC4X3.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3327091369: (a) => new IFC4X3.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1158309216: (a) => new IFC4X3.IfcPileType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 804291784: (a) => new IFC4X3.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC4X3.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC4X3.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2839578677: (a) => new IFC4X3.IfcPolygonalFaceSet(a[0], a[1], a[2], a[3]),\n 3724593414: (a) => new IFC4X3.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC4X3.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1946335990: (a) => new IFC4X3.IfcPositioningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC4X3.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC4X3.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3651124850: (a) => new IFC4X3.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1842657554: (a) => new IFC4X3.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC4X3.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1763565496: (a) => new IFC4X3.IfcRailType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2893384427: (a) => new IFC4X3.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3992365140: (a) => new IFC4X3.IfcRailway(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1891881377: (a) => new IFC4X3.IfcRailwayPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2324767716: (a) => new IFC4X3.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1469900589: (a) => new IFC4X3.IfcRampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 683857671: (a) => new IFC4X3.IfcRationalBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4021432810: (a) => new IFC4X3.IfcReferent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3027567501: (a) => new IFC4X3.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 964333572: (a) => new IFC4X3.IfcReinforcingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC4X3.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2310774935: (a) => new IFC4X3.IfcReinforcingMeshType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 3818125796: (a) => new IFC4X3.IfcRelAdheresToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 160246688: (a) => new IFC4X3.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 146592293: (a) => new IFC4X3.IfcRoad(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 550521510: (a) => new IFC4X3.IfcRoadPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2781568857: (a) => new IFC4X3.IfcRoofType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1768891740: (a) => new IFC4X3.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2157484638: (a) => new IFC4X3.IfcSeamCurve(a[0], a[1], a[2]),\n 3649235739: (a) => new IFC4X3.IfcSecondOrderPolynomialSpiral(a[0], a[1], a[2], a[3]),\n 544395925: (a) => new IFC4X3.IfcSegmentedReferenceCurve(a[0], a[1], a[2], a[3]),\n 1027922057: (a) => new IFC4X3.IfcSeventhOrderPolynomialSpiral(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074543187: (a) => new IFC4X3.IfcShadingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 33720170: (a) => new IFC4X3.IfcSign(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3599934289: (a) => new IFC4X3.IfcSignType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1894708472: (a) => new IFC4X3.IfcSignalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 42703149: (a) => new IFC4X3.IfcSineSpiral(a[0], a[1], a[2], a[3]),\n 4097777520: (a) => new IFC4X3.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC4X3.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1072016465: (a) => new IFC4X3.IfcSolarDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC4X3.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC4X3.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC4X3.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3112655638: (a) => new IFC4X3.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC4X3.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 338393293: (a) => new IFC4X3.IfcStairType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC4X3.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1179482911: (a) => new IFC4X3.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1004757350: (a) => new IFC4X3.IfcStructuralCurveAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4243806635: (a) => new IFC4X3.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 214636428: (a) => new IFC4X3.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2445595289: (a) => new IFC4X3.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2757150158: (a) => new IFC4X3.IfcStructuralCurveReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1807405624: (a) => new IFC4X3.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1252848954: (a) => new IFC4X3.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2082059205: (a) => new IFC4X3.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 734778138: (a) => new IFC4X3.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1235345126: (a) => new IFC4X3.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC4X3.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3657597509: (a) => new IFC4X3.IfcStructuralSurfaceAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1975003073: (a) => new IFC4X3.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC4X3.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3101698114: (a) => new IFC4X3.IfcSurfaceFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2315554128: (a) => new IFC4X3.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC4X3.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 413509423: (a) => new IFC4X3.IfcSystemFurnitureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 5716631: (a) => new IFC4X3.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3824725483: (a) => new IFC4X3.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC4X3.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3081323446: (a) => new IFC4X3.IfcTendonAnchorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3663046924: (a) => new IFC4X3.IfcTendonConduit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2281632017: (a) => new IFC4X3.IfcTendonConduitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2415094496: (a) => new IFC4X3.IfcTendonType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 618700268: (a) => new IFC4X3.IfcTrackElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1692211062: (a) => new IFC4X3.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2097647324: (a) => new IFC4X3.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1953115116: (a) => new IFC4X3.IfcTransportationDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3593883385: (a) => new IFC4X3.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC4X3.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC4X3.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC4X3.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 840318589: (a) => new IFC4X3.IfcVehicle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1530820697: (a) => new IFC4X3.IfcVibrationDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3956297820: (a) => new IFC4X3.IfcVibrationDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391383451: (a) => new IFC4X3.IfcVibrationIsolator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC4X3.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC4X3.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 926996030: (a) => new IFC4X3.IfcVoidingFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1898987631: (a) => new IFC4X3.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC4X3.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4009809668: (a) => new IFC4X3.IfcWindowType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4088093105: (a) => new IFC4X3.IfcWorkCalendar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1028945134: (a) => new IFC4X3.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4218914973: (a) => new IFC4X3.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 3342526732: (a) => new IFC4X3.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1033361043: (a) => new IFC4X3.IfcZone(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3821786052: (a) => new IFC4X3.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1411407467: (a) => new IFC4X3.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC4X3.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC4X3.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4266260250: (a) => new IFC4X3.IfcAlignmentCant(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1545765605: (a) => new IFC4X3.IfcAlignmentHorizontal(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 317615605: (a) => new IFC4X3.IfcAlignmentSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1662888072: (a) => new IFC4X3.IfcAlignmentVertical(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3460190687: (a) => new IFC4X3.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1532957894: (a) => new IFC4X3.IfcAudioVisualApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1967976161: (a) => new IFC4X3.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 2461110595: (a) => new IFC4X3.IfcBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 819618141: (a) => new IFC4X3.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3649138523: (a) => new IFC4X3.IfcBearingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 231477066: (a) => new IFC4X3.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1136057603: (a) => new IFC4X3.IfcBoundaryCurve(a[0], a[1]),\n 644574406: (a) => new IFC4X3.IfcBridge(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 963979645: (a) => new IFC4X3.IfcBridgePart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4031249490: (a) => new IFC4X3.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2979338954: (a) => new IFC4X3.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 39481116: (a) => new IFC4X3.IfcBuildingElementPartType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1909888760: (a) => new IFC4X3.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1177604601: (a) => new IFC4X3.IfcBuildingSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1876633798: (a) => new IFC4X3.IfcBuiltElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3862327254: (a) => new IFC4X3.IfcBuiltSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2188180465: (a) => new IFC4X3.IfcBurnerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC4X3.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC4X3.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2674252688: (a) => new IFC4X3.IfcCableFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC4X3.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3203706013: (a) => new IFC4X3.IfcCaissonFoundationType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC4X3.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3296154744: (a) => new IFC4X3.IfcChimney(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2611217952: (a) => new IFC4X3.IfcCircle(a[0], a[1]),\n 1677625105: (a) => new IFC4X3.IfcCivilElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2301859152: (a) => new IFC4X3.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC4X3.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 400855858: (a) => new IFC4X3.IfcCommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3850581409: (a) => new IFC4X3.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC4X3.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3898045240: (a) => new IFC4X3.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1060000209: (a) => new IFC4X3.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC4X3.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2940368186: (a) => new IFC4X3.IfcConveyorSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 335055490: (a) => new IFC4X3.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC4X3.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1502416096: (a) => new IFC4X3.IfcCourse(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1973544240: (a) => new IFC4X3.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC4X3.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3961806047: (a) => new IFC4X3.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3426335179: (a) => new IFC4X3.IfcDeepFoundation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1335981549: (a) => new IFC4X3.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2635815018: (a) => new IFC4X3.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 479945903: (a) => new IFC4X3.IfcDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1599208980: (a) => new IFC4X3.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC4X3.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC4X3.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC4X3.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC4X3.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3205830791: (a) => new IFC4X3.IfcDistributionSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 395920057: (a) => new IFC4X3.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 869906466: (a) => new IFC4X3.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC4X3.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC4X3.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3071239417: (a) => new IFC4X3.IfcEarthworksCut(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1077100507: (a) => new IFC4X3.IfcEarthworksElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3376911765: (a) => new IFC4X3.IfcEarthworksFill(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 663422040: (a) => new IFC4X3.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2417008758: (a) => new IFC4X3.IfcElectricDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC4X3.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2142170206: (a) => new IFC4X3.IfcElectricFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC4X3.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC4X3.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC4X3.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1658829314: (a) => new IFC4X3.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2814081492: (a) => new IFC4X3.IfcEngine(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3747195512: (a) => new IFC4X3.IfcEvaporativeCooler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 484807127: (a) => new IFC4X3.IfcEvaporator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1209101575: (a) => new IFC4X3.IfcExternalSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 346874300: (a) => new IFC4X3.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC4X3.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC4X3.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC4X3.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC4X3.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC4X3.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188021234: (a) => new IFC4X3.IfcFlowMeter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3132237377: (a) => new IFC4X3.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC4X3.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC4X3.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC4X3.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC4X3.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC4X3.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2713699986: (a) => new IFC4X3.IfcGeotechnicalAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3009204131: (a) => new IFC4X3.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3319311131: (a) => new IFC4X3.IfcHeatExchanger(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2068733104: (a) => new IFC4X3.IfcHumidifier(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4175244083: (a) => new IFC4X3.IfcInterceptor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2176052936: (a) => new IFC4X3.IfcJunctionBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2696325953: (a) => new IFC4X3.IfcKerb(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 76236018: (a) => new IFC4X3.IfcLamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 629592764: (a) => new IFC4X3.IfcLightFixture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1154579445: (a) => new IFC4X3.IfcLinearPositioningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1638804497: (a) => new IFC4X3.IfcLiquidTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1437502449: (a) => new IFC4X3.IfcMedicalDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC4X3.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2078563270: (a) => new IFC4X3.IfcMobileTelecommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 234836483: (a) => new IFC4X3.IfcMooringDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2474470126: (a) => new IFC4X3.IfcMotorConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2182337498: (a) => new IFC4X3.IfcNavigationElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 144952367: (a) => new IFC4X3.IfcOuterBoundaryCurve(a[0], a[1]),\n 3694346114: (a) => new IFC4X3.IfcOutlet(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1383356374: (a) => new IFC4X3.IfcPavement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1687234759: (a) => new IFC4X3.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 310824031: (a) => new IFC4X3.IfcPipeFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3612865200: (a) => new IFC4X3.IfcPipeSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3171933400: (a) => new IFC4X3.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 738039164: (a) => new IFC4X3.IfcProtectiveDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 655969474: (a) => new IFC4X3.IfcProtectiveDeviceTrippingUnitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 90941305: (a) => new IFC4X3.IfcPump(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3290496277: (a) => new IFC4X3.IfcRail(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2262370178: (a) => new IFC4X3.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC4X3.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC4X3.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1232101972: (a) => new IFC4X3.IfcRationalBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3798194928: (a) => new IFC4X3.IfcReinforcedSoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 979691226: (a) => new IFC4X3.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2572171363: (a) => new IFC4X3.IfcReinforcingBarType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 2016517767: (a) => new IFC4X3.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3053780830: (a) => new IFC4X3.IfcSanitaryTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1783015770: (a) => new IFC4X3.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1329646415: (a) => new IFC4X3.IfcShadingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 991950508: (a) => new IFC4X3.IfcSignal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1529196076: (a) => new IFC4X3.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3420628829: (a) => new IFC4X3.IfcSolarDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1999602285: (a) => new IFC4X3.IfcSpaceHeater(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1404847402: (a) => new IFC4X3.IfcStackTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC4X3.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC4X3.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2515109513: (a) => new IFC4X3.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 385403989: (a) => new IFC4X3.IfcStructuralLoadCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1621171031: (a) => new IFC4X3.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1162798199: (a) => new IFC4X3.IfcSwitchingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 812556717: (a) => new IFC4X3.IfcTank(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3425753595: (a) => new IFC4X3.IfcTrackElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3825984169: (a) => new IFC4X3.IfcTransformer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1620046519: (a) => new IFC4X3.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3026737570: (a) => new IFC4X3.IfcTubeBundle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3179687236: (a) => new IFC4X3.IfcUnitaryControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4292641817: (a) => new IFC4X3.IfcUnitaryEquipment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4207607924: (a) => new IFC4X3.IfcValve(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2391406946: (a) => new IFC4X3.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3512223829: (a) => new IFC4X3.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4237592921: (a) => new IFC4X3.IfcWasteTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3304561284: (a) => new IFC4X3.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2874132201: (a) => new IFC4X3.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634111441: (a) => new IFC4X3.IfcAirTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 177149247: (a) => new IFC4X3.IfcAirTerminalBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2056796094: (a) => new IFC4X3.IfcAirToAirHeatRecovery(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3001207471: (a) => new IFC4X3.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 325726236: (a) => new IFC4X3.IfcAlignment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 277319702: (a) => new IFC4X3.IfcAudioVisualAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 753842376: (a) => new IFC4X3.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4196446775: (a) => new IFC4X3.IfcBearing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 32344328: (a) => new IFC4X3.IfcBoiler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3314249567: (a) => new IFC4X3.IfcBorehole(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1095909175: (a) => new IFC4X3.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2938176219: (a) => new IFC4X3.IfcBurner(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 635142910: (a) => new IFC4X3.IfcCableCarrierFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3758799889: (a) => new IFC4X3.IfcCableCarrierSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1051757585: (a) => new IFC4X3.IfcCableFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4217484030: (a) => new IFC4X3.IfcCableSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3999819293: (a) => new IFC4X3.IfcCaissonFoundation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3902619387: (a) => new IFC4X3.IfcChiller(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639361253: (a) => new IFC4X3.IfcCoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3221913625: (a) => new IFC4X3.IfcCommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3571504051: (a) => new IFC4X3.IfcCompressor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2272882330: (a) => new IFC4X3.IfcCondenser(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 578613899: (a) => new IFC4X3.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3460952963: (a) => new IFC4X3.IfcConveyorSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4136498852: (a) => new IFC4X3.IfcCooledBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3640358203: (a) => new IFC4X3.IfcCoolingTower(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074379575: (a) => new IFC4X3.IfcDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3693000487: (a) => new IFC4X3.IfcDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1052013943: (a) => new IFC4X3.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 562808652: (a) => new IFC4X3.IfcDistributionCircuit(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1062813311: (a) => new IFC4X3.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 342316401: (a) => new IFC4X3.IfcDuctFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3518393246: (a) => new IFC4X3.IfcDuctSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1360408905: (a) => new IFC4X3.IfcDuctSilencer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1904799276: (a) => new IFC4X3.IfcElectricAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 862014818: (a) => new IFC4X3.IfcElectricDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3310460725: (a) => new IFC4X3.IfcElectricFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 24726584: (a) => new IFC4X3.IfcElectricFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 264262732: (a) => new IFC4X3.IfcElectricGenerator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 402227799: (a) => new IFC4X3.IfcElectricMotor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1003880860: (a) => new IFC4X3.IfcElectricTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3415622556: (a) => new IFC4X3.IfcFan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 819412036: (a) => new IFC4X3.IfcFilter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1426591983: (a) => new IFC4X3.IfcFireSuppressionTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 182646315: (a) => new IFC4X3.IfcFlowInstrument(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2680139844: (a) => new IFC4X3.IfcGeomodel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1971632696: (a) => new IFC4X3.IfcGeoslice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2295281155: (a) => new IFC4X3.IfcProtectiveDeviceTrippingUnit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4086658281: (a) => new IFC4X3.IfcSensor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 630975310: (a) => new IFC4X3.IfcUnitaryControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4288193352: (a) => new IFC4X3.IfcActuator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3087945054: (a) => new IFC4X3.IfcAlarm(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 25142252: (a) => new IFC4X3.IfcController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8])\n};\nToRawLineData[3] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 2879124712: (i) => [i.StartTag, i.EndTag],\n 3633395639: (i) => [i.StartTag, i.EndTag, i.StartDistAlong, i.HorizontalLength, i.StartHeight, i.StartGradient, i.EndGradient, i.RadiusOfCurvature, i.PredefinedType],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 130549933: (i) => [i.Identifier, i.Name, i.Description, i.TimeOfApproval, i.Status, i.Level, i.Qualifier, i.RequestingApproval, i.GivingApproval],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, !i.TranslationalStiffnessByLengthX ? null : Labelise(i.TranslationalStiffnessByLengthX), !i.TranslationalStiffnessByLengthY ? null : Labelise(i.TranslationalStiffnessByLengthY), !i.TranslationalStiffnessByLengthZ ? null : Labelise(i.TranslationalStiffnessByLengthZ), !i.RotationalStiffnessByLengthX ? null : Labelise(i.RotationalStiffnessByLengthX), !i.RotationalStiffnessByLengthY ? null : Labelise(i.RotationalStiffnessByLengthY), !i.RotationalStiffnessByLengthZ ? null : Labelise(i.RotationalStiffnessByLengthZ)],\n 3367102660: (i) => [i.Name, !i.TranslationalStiffnessByAreaX ? null : Labelise(i.TranslationalStiffnessByAreaX), !i.TranslationalStiffnessByAreaY ? null : Labelise(i.TranslationalStiffnessByAreaY), !i.TranslationalStiffnessByAreaZ ? null : Labelise(i.TranslationalStiffnessByAreaZ)],\n 1387855156: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ)],\n 2069777674: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ), !i.WarpingStiffness ? null : Labelise(i.WarpingStiffness)],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 775493141: (i) => [i.VolumeOnRelatingElement, i.VolumeOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1785450214: (i) => [i.SourceCRS, i.TargetCRS],\n 1466758467: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType, i.Name],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 4294318154: (_) => [],\n 3200245327: (i) => [i.Location, i.Identification, i.Name],\n 2242383968: (i) => [i.Location, i.Identification, i.Name],\n 1040185647: (i) => [i.Location, i.Identification, i.Name],\n 3548104201: (i) => [i.Location, i.Identification, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.Location, i.Description],\n 3452421091: (i) => [i.Location, i.Identification, i.Name, i.Description, i.Language, i.ReferencedLibrary],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 3057273783: (i) => [i.SourceCRS, i.TargetCRS, i.Eastings, i.Northings, i.OrthogonalHeight, i.XAxisAbscissa, i.XAxisOrdinate, i.Scale, i.ScaleY, i.ScaleZ],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 760658860: (_) => [],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName, i.Description],\n 1847252529: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority, i.OffsetDirection, i.OffsetValues],\n 2199411900: (i) => [i.Materials],\n 2235152071: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category],\n 164193824: (i) => [i.Name, i.Description, i.MaterialProfiles, i.CompositeProfile],\n 552965576: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category, i.OffsetValues],\n 1507914824: (_) => [],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue, i.ReferencePath],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (i) => [i.PlacementRelTo],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.LogicalAggregator, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 4251960020: (i) => [i.Identification, i.Name, i.Description, i.Roles, i.Addresses],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Identification, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 677532197: (_) => [],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, { type: 3, value: BooleanConvert(i.LayerOn.value) }, { type: 3, value: BooleanConvert(i.LayerFrozen.value) }, { type: 3, value: BooleanConvert(i.LayerBlocked.value) }, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 3843373140: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum, i.MapProjection, i.MapZone, i.MapUnit],\n 986844984: (_) => [],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue, i.Formula],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue, i.Formula],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue, i.Formula],\n 2691318326: (i) => [i.Name, i.Description, i.Unit, i.NumberValue, i.Formula],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue, i.Formula],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue, i.Formula],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue, i.Formula],\n 3915482550: (i) => [i.RecurrenceType, i.DayComponent, i.WeekdayComponent, i.MonthComponent, i.Position, i.Interval, i.Occurrences, i.TimePeriods],\n 2433181523: (i) => [i.TypeIdentifier, i.AttributeIdentifier, i.InstanceName, i.ListPositions, i.InnerReference],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 2439245199: (i) => [i.Name, i.Description],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 1054537805: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, { type: 3, value: BooleanConvert(i.ProductDefinitional.value) }, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 3478079324: (i) => [i.Name, i.Values, i.Locations],\n 609421318: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaTConstant, i.DeltaTY, i.DeltaTZ],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2934153892: (i) => [i.Name, i.SurfaceReinforcement1, i.SurfaceReinforcement2, i.ShearReinforcement],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour, i.Transparency],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter],\n 985171141: (i) => [i.Name, i.Rows, i.Columns],\n 2043862942: (i) => [i.Identifier, i.Name, i.Description, i.Unit, i.ReferencePath],\n 531007025: (i) => [!i.RowCells ? null : i.RowCells.map((p) => Labelise(p)), i.IsHeading == null ? null : { type: 3, value: BooleanConvert(i.IsHeading.value) }],\n 1549132990: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion],\n 2771591690: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion, i.Recurrence],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL, i.MessagingIDs],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 280115917: (i) => [i.Maps],\n 1742049831: (i) => [i.Maps, i.Mode, i.Parameter],\n 222769930: (i) => [i.TexCoordIndex, i.TexCoordsOf],\n 1010789467: (i) => [i.TexCoordIndex, i.TexCoordsOf, i.InnerTexCoordIndices],\n 2552916305: (i) => [i.Maps, i.Vertices, i.MappedTo],\n 1210645708: (i) => [i.Coordinates],\n 3611470254: (i) => [i.TexCoordsList],\n 1199560280: (i) => [i.StartTime, i.EndTime],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1236880293: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.RecurrencePattern, i.StartDate, i.FinishDate],\n 3752311538: (i) => [i.StartTag, i.EndTag, i.StartDistAlong, i.HorizontalLength, i.StartCantLeft, i.EndCantLeft, i.StartCantRight, i.EndCantRight, i.PredefinedType],\n 536804194: (i) => [i.StartTag, i.EndTag, i.StartPoint, i.StartDirection, i.StartRadiusOfCurvature, i.EndRadiusOfCurvature, i.SegmentLength, i.GravityCenterLineHeight, i.PredefinedType],\n 3869604511: (i) => [i.Name, i.Description, i.RelatingApproval, i.RelatedApprovals],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name, i.Description, i.Specification, i.ReferenceTokens],\n 647927063: (i) => [i.Location, i.Identification, i.Name, i.ReferencedSource, i.Description, i.Sort],\n 3285139300: (i) => [i.ColourList],\n 3264961684: (i) => [i.Name],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 2713554722: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor, i.ConversionOffset],\n 539742890: (i) => [i.Name, i.Description, i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveStyleFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 1154170062: (i) => [i.Identification, i.Name, i.Description, i.Location, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.Name, i.Description, i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3732053477: (i) => [i.Location, i.Identification, i.Name, i.Description, i.ReferencedDocument],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 211053100: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ActualDate, i.EarlyDate, i.LateDate, i.ScheduleDate],\n 297599258: (i) => [i.Name, i.Description, i.Properties],\n 1437805879: (i) => [i.Name, i.Description, i.RelatingReference, i.RelatedResourceObjects],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 803316827: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementRelTo, i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }],\n 3905492369: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.URLReference],\n 3570813810: (i) => [i.MappedTo, i.Opacity, i.Colours, i.ColourIndex],\n 1437953363: (i) => [i.Maps, i.MappedTo, i.TexCoords],\n 2133299955: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndex],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1585845231: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, Labelise(i.LagValue), i.DurationType],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 388784114: (i) => [i.PlacementRelTo, i.RelativePlacement, i.CartesianPosition],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 1838606355: (i) => [i.Name, i.Description, i.Category],\n 3708119e3: (i) => [i.Name, i.Description, i.Material, i.Fraction, i.Category],\n 2852063980: (i) => [i.Name, i.Description, i.MaterialConstituents],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine, i.ReferenceExtent],\n 3079605661: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent],\n 3404854881: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent, i.ForProfileEndSet, i.CardinalEndPoint],\n 3265635763: (i) => [i.Name, i.Description, i.Properties, i.Material],\n 853536259: (i) => [i.Name, i.Description, i.RelatingMaterial, i.RelatedMaterials, i.MaterialExpression],\n 2998442950: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 182550632: (i) => [i.ProfileType, i.ProfileName, { type: 3, value: BooleanConvert(i.HorizontalWidths.value) }, i.Widths, i.Slopes, i.Tags, i.OffsetPoint],\n 2665983363: (i) => [i.CfsFaces],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 2165702409: (i) => [Labelise(i.DistanceAlong), i.OffsetLateral, i.OffsetVertical, i.OffsetLongitudinal, i.BasisCurve],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Position, i.PolygonalBoundary],\n 3727388367: (i) => [i.Name],\n 3778827333: (_) => [],\n 1775413392: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 2802850158: (i) => [i.Name, i.Description, i.Properties, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Specification],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 148025276: (i) => [i.Name, i.Description, i.DependingProperty, i.DependantProperty, i.Expression],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1482703590: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2090586900: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2943643501: (i) => [i.Name, i.Description, i.RelatedResourceObjects, i.RelatingApproval],\n 1608871552: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedResourceObjects],\n 1042787934: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ScheduleWork, i.ScheduleUsage, i.ScheduleStart, i.ScheduleFinish, i.ScheduleContour, i.LevelingDelay, i.IsOverAllocated == null ? null : { type: 3, value: BooleanConvert(i.IsOverAllocated.value) }, i.StatusTime, i.ActualWork, i.ActualUsage, i.ActualStart, i.ActualFinish, i.RemainingWork, i.RemainingUsage, i.Completion],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 823603102: (i) => [i.Transition],\n 4124623270: (i) => [i.SbsmBoundary],\n 3692461612: (i) => [i.Name, i.Specification],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 1096409881: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam, i.FilletRadius],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope],\n 901063453: (_) => [],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 3736923433: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 3698973494: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3406155212: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomFlangeWidth, i.OverallDepth, i.WebThickness, i.BottomFlangeThickness, i.BottomFlangeFilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.BottomFlangeEdgeRadius, i.BottomFlangeSlope, i.TopFlangeEdgeRadius, i.TopFlangeSlope],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 3425423356: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius],\n 1123145078: (i) => [i.Coordinates],\n 574549367: (_) => [],\n 1675464909: (i) => [i.CoordList, i.TagList],\n 2059837836: (i) => [i.CoordList, i.TagList],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Specification, i.UsageName, i.HasProperties],\n 2485617015: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve],\n 2574617495: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity],\n 3419103109: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 1815067380: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 2629017746: (i) => [i.BasisSurface, i.Boundaries, { type: 3, value: BooleanConvert(i.ImplicitOuter.value) }],\n 4212018352: (i) => [i.Transition, i.Placement, Labelise(i.SegmentStart), Labelise(i.SegmentLength), i.ParentCurve],\n 32440307: (i) => [i.DirectionRatios],\n 593015953: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam)],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 4024345920: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2804161546: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth, i.EndSweptArea],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 2652556860: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.FixedReference],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace, i.PredefinedType],\n 4095422895: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.FlangeSlope],\n 178912537: (i) => [i.CoordIndex],\n 2294589976: (i) => [i.CoordIndex, i.InnerCoordIndices],\n 3465909080: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndices],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope],\n 428585644: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 590820931: (i) => [i.BasisCurve],\n 3388369263: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3505215534: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.RefDirection],\n 2485787929: (i) => [i.BasisCurve, i.OffsetValues, i.Tag],\n 1682466193: (i) => [i.BasisSurface, i.ReferenceCurve],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 3381221214: (i) => [i.Position, i.CoefficientsX, i.CoefficientsY, i.CoefficientsZ],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 3967405729: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 569719735: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 653396225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 871118103: (i) => [i.Name, i.Specification, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit, !i.SetPointValue ? null : Labelise(i.SetPointValue)],\n 4166981789: (i) => [i.Name, i.Specification, !i.EnumerationValues ? null : i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Specification, !i.ListValues ? null : i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Specification, i.UsageName, i.PropertyReference],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 492091185: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.ApplicableEntity, i.HasPropertyTemplates],\n 3650150729: (i) => [i.Name, i.Specification, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Specification, !i.DefiningValues ? null : i.DefiningValues.map((p) => Labelise(p)), !i.DefinedValues ? null : i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit, i.CurveInterpolation],\n 3521284610: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, { type: 3, value: BooleanConvert(i.Usense.value) }, { type: 3, value: BooleanConvert(i.Vsense.value) }],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 1027710054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup, i.Factor],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 1033248425: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingProfileDef],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedCoverings],\n 2565941209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingContext, i.RelatedDefinitions],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1462361463: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingObject],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 307848117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedPropertySets, i.RelatingTemplate],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 427948657: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedElement, i.InterferenceGeometry, i.InterferenceSpace, i.InterferenceType, { type: 3, value: BooleanConvert(i.ImpliedOrder.value) }],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 1441486842: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPositioningElement, i.RelatedProducts],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType, i.UserDefinedSequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 3523091289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary],\n 1521410863: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary, i.CorrespondingBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 816062949: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve, i.ParamLength],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 3243963512: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle, i.EndSweptArea],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 1862484736: (i) => [i.Directrix, i.CrossSections],\n 1290935644: (i) => [i.Directrix, i.CrossSections, i.CrossSectionPositions],\n 1356537516: (i) => [i.Directrix, i.CrossSectionPositions, i.CrossSections],\n 3663146110: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.PrimaryMeasureType, i.SecondaryMeasureType, i.Enumerators, i.PrimaryUnit, i.SecondaryUnit, i.Expression, i.AccessState],\n 1412071761: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 710998568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 463610769: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 2481509218: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 451544542: (i) => [i.Position, i.Radius],\n 4015995234: (i) => [i.Position, i.Radius],\n 2735484536: (i) => [i.Position],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 603775116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 4095615324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 699246055: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Status, i.WorkMethod, { type: 3, value: BooleanConvert(i.IsMilestone.value) }, i.Priority, i.TaskTime, i.PredefinedType],\n 3206491090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.WorkMethod],\n 2387106220: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }],\n 782932809: (i) => [i.Position, i.CubicTerm, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 1935646853: (i) => [i.Position, i.MajorRadius, i.MinorRadius],\n 3665877780: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2916149573: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Normals, i.CoordIndex, i.PnIndex],\n 1229763772: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Normals, i.CoordIndex, i.PnIndex, i.Flags],\n 3651464721: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle, i.LiningOffset, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1635779807: (i) => [i.Outer],\n 2603310189: (i) => [i.Outer, i.Voids],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 2887950389: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 167062518: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 1626504194: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2197970202: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 3893394355: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3497074424: (i) => [i.Position, i.ClothoidConstant],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3875453745: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.UsageName, i.TemplateType, i.HasPropertyTemplates],\n 3732776249: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 15328376: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2510884976: (i) => [i.Position],\n 2185764099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 4105962743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1525564444: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification],\n 2000195564: (i) => [i.Position, i.CosineTerm, i.ConstantTerm],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.CostValues, i.CostQuantities],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.SubmittedOn, i.UpdateDate],\n 4189326743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1213902940: (i) => [i.Position, i.Radius],\n 1306400036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 4234616927: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.FixedReference],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 2323601079: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.OperationType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedOperationType],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 2397081782: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 132023988: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4148101412: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType, i.EventOccurenceTime],\n 2853485674: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 24185140: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 1310830890: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType],\n 4228831410: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1893162501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1509553395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3493046030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4230923436: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1594536857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2898700619: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.BaseCurve, i.EndPoint],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2568555532: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3948183225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2571569899: (i) => [i.Points, !i.Segments ? null : i.Segments.map((p) => Labelise(p)), { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3946677679: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3113134337: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 679976338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, { type: 3, value: BooleanConvert(i.Mountable.value) }],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2176059722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1770583370: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 525669439: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 976884017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength, i.PredefinedType],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.NominalLength],\n 1114901282: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1950438474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 710110818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 506776471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 514975943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LifeCyclePhase, i.PredefinedType],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1158309216: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2839578677: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Faces, i.PnIndex],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1946335990: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1763565496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3992365140: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 1891881377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1469900589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 683857671: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec, i.WeightsData],\n 4021432810: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 964333572: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.PredefinedType],\n 2310774935: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 3818125796: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedSurfaceFeatures],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 146592293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 550521510: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 2781568857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2157484638: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 3649235739: (i) => [i.Position, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 544395925: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.BaseCurve, i.EndPoint],\n 1027922057: (i) => [i.Position, i.SepticTerm, i.SexticTerm, i.QuinticTerm, i.QuarticTerm, i.CubicTerm, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 4074543187: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 33720170: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3599934289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1894708472: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 42703149: (i) => [i.Position, i.SineTerm, i.LinearTerm, i.ConstantTerm],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1072016465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 338393293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1004757350: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.AxisDirection],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2757150158: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.ConditionCoordinateSystem],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, { type: 3, value: BooleanConvert(i.IsLinear.value) }],\n 3657597509: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 3101698114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 413509423: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 3081323446: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3663046924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 2281632017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2415094496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.SheathDiameter],\n 618700268: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1953115116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, { type: 3, value: BooleanConvert(i.SenseAgreement.value) }, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 840318589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1530820697: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3956297820: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391383451: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 926996030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4009809668: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.PartitioningType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedPartitioningType],\n 4088093105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.WorkingTimes, i.ExceptionTimes, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4266260250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.RailHeadDistance],\n 1545765605: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 317615605: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.DesignParameters],\n 1662888072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1532957894: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2461110595: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3649138523: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1136057603: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 644574406: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 963979645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 39481116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1177604601: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 1876633798: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3862327254: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 2188180465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2674252688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3203706013: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3296154744: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 1677625105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 400855858: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2940368186: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1502416096: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3426335179: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 479945903: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection, i.PredefinedType, i.SystemType],\n 3205830791: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3071239417: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1077100507: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3376911765: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2417008758: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2142170206: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2814081492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3747195512: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 484807127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1209101575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188021234: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2713699986: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes, i.PredefinedType],\n 3319311131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2068733104: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4175244083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2176052936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2696325953: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, { type: 3, value: BooleanConvert(i.Mountable.value) }],\n 76236018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 629592764: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1154579445: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1638804497: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1437502449: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2078563270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 234836483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2474470126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2182337498: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 144952367: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3694346114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1383356374: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 310824031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3612865200: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 738039164: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 655969474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 90941305: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3290496277: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1232101972: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec, i.WeightsData],\n 3798194928: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.PredefinedType, i.BarSurface],\n 2572171363: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarSurface, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3053780830: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1329646415: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 991950508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3420628829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1999602285: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1404847402: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRisers, i.NumberOfTreads, i.RiserHeight, i.TreadLength, i.PredefinedType],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults, i.SharedPlacement],\n 385403989: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose, i.SelfWeightCoefficients],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1162798199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 812556717: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3425753595: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3825984169: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3026737570: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3179687236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4292641817: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4207607924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4237592921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634111441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 177149247: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2056796094: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 325726236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 277319702: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4196446775: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 32344328: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3314249567: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2938176219: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 635142910: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3758799889: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1051757585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4217484030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3999819293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3902619387: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 639361253: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3221913625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3571504051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2272882330: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3460952963: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4136498852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3640358203: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4074379575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3693000487: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 562808652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 342316401: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3518393246: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1360408905: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1904799276: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 862014818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3310460725: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 24726584: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 264262732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 402227799: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1003880860: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3415622556: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 819412036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1426591983: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 182646315: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2680139844: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1971632696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2295281155: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4086658281: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 630975310: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4288193352: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3087945054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 25142252: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType]\n};\nTypeInitialisers[3] = {\n 3699917729: (v) => new IFC4X3.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC4X3.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC4X3.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC4X3.IfcAngularVelocityMeasure(v),\n 3683503648: (v) => new IFC4X3.IfcArcIndex(v.map((x) => x.value)),\n 1500781891: (v) => new IFC4X3.IfcAreaDensityMeasure(v),\n 2650437152: (v) => new IFC4X3.IfcAreaMeasure(v),\n 2314439260: (v) => new IFC4X3.IfcBinary(v),\n 2735952531: (v) => new IFC4X3.IfcBoolean(v),\n 1867003952: (v) => new IFC4X3.IfcBoxAlignment(v),\n 1683019596: (v) => new IFC4X3.IfcCardinalPointReference(v),\n 2991860651: (v) => new IFC4X3.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC4X3.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC4X3.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC4X3.IfcCountMeasure(v),\n 94842927: (v) => new IFC4X3.IfcCurvatureMeasure(v),\n 937566702: (v) => new IFC4X3.IfcDate(v),\n 2195413836: (v) => new IFC4X3.IfcDateTime(v),\n 86635668: (v) => new IFC4X3.IfcDayInMonthNumber(v),\n 3701338814: (v) => new IFC4X3.IfcDayInWeekNumber(v),\n 1514641115: (v) => new IFC4X3.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC4X3.IfcDimensionCount(v),\n 524656162: (v) => new IFC4X3.IfcDoseEquivalentMeasure(v),\n 2541165894: (v) => new IFC4X3.IfcDuration(v),\n 69416015: (v) => new IFC4X3.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC4X3.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC4X3.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC4X3.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC4X3.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC4X3.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC4X3.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC4X3.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC4X3.IfcFontStyle(v),\n 2715512545: (v) => new IFC4X3.IfcFontVariant(v),\n 2590844177: (v) => new IFC4X3.IfcFontWeight(v),\n 1361398929: (v) => new IFC4X3.IfcForceMeasure(v),\n 3044325142: (v) => new IFC4X3.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC4X3.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC4X3.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC4X3.IfcHeatingValueMeasure(v),\n 983778844: (v) => new IFC4X3.IfcIdentifier(v),\n 3358199106: (v) => new IFC4X3.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC4X3.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC4X3.IfcInteger(v),\n 3809634241: (v) => new IFC4X3.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC4X3.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC4X3.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC4X3.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC4X3.IfcLabel(v),\n 1275358634: (v) => new IFC4X3.IfcLanguageId(v),\n 1243674935: (v) => new IFC4X3.IfcLengthMeasure(v),\n 1774176899: (v) => new IFC4X3.IfcLineIndex(v.map((x) => x.value)),\n 191860431: (v) => new IFC4X3.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC4X3.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC4X3.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC4X3.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC4X3.IfcLogical(v),\n 2095003142: (v) => new IFC4X3.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC4X3.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC4X3.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC4X3.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC4X3.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC4X3.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC4X3.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC4X3.IfcMassMeasure(v),\n 3531705166: (v) => new IFC4X3.IfcMassPerLengthMeasure(v),\n 3341486342: (v) => new IFC4X3.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC4X3.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC4X3.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC4X3.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC4X3.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC4X3.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC4X3.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC4X3.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC4X3.IfcMonthInYearNumber(v),\n 525895558: (v) => new IFC4X3.IfcNonNegativeLengthMeasure(v),\n 2095195183: (v) => new IFC4X3.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC4X3.IfcNumericMeasure(v),\n 929793134: (v) => new IFC4X3.IfcPHMeasure(v),\n 2260317790: (v) => new IFC4X3.IfcParameterValue(v),\n 2642773653: (v) => new IFC4X3.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC4X3.IfcPlaneAngleMeasure(v),\n 1790229001: (v) => new IFC4X3.IfcPositiveInteger(v),\n 2815919920: (v) => new IFC4X3.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC4X3.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC4X3.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC4X3.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC4X3.IfcPresentableText(v),\n 3665567075: (v) => new IFC4X3.IfcPressureMeasure(v),\n 2798247006: (v) => new IFC4X3.IfcPropertySetDefinitionSet(v.map((x) => x.value)),\n 3972513137: (v) => new IFC4X3.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC4X3.IfcRatioMeasure(v),\n 200335297: (v) => new IFC4X3.IfcReal(v),\n 2133746277: (v) => new IFC4X3.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC4X3.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC4X3.IfcRotationalStiffnessMeasure(v),\n 3467162246: (v) => new IFC4X3.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC4X3.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC4X3.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC4X3.IfcSolidAngleMeasure(v),\n 4157543285: (v) => new IFC4X3.IfcSoundPowerLevelMeasure(v),\n 846465480: (v) => new IFC4X3.IfcSoundPowerMeasure(v),\n 3457685358: (v) => new IFC4X3.IfcSoundPressureLevelMeasure(v),\n 993287707: (v) => new IFC4X3.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC4X3.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC4X3.IfcSpecularExponent(v),\n 361837227: (v) => new IFC4X3.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC4X3.IfcTemperatureGradientMeasure(v),\n 1209108979: (v) => new IFC4X3.IfcTemperatureRateOfChangeMeasure(v),\n 2801250643: (v) => new IFC4X3.IfcText(v),\n 1460886941: (v) => new IFC4X3.IfcTextAlignment(v),\n 3490877962: (v) => new IFC4X3.IfcTextDecoration(v),\n 603696268: (v) => new IFC4X3.IfcTextFontName(v),\n 296282323: (v) => new IFC4X3.IfcTextTransformation(v),\n 232962298: (v) => new IFC4X3.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC4X3.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC4X3.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC4X3.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC4X3.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC4X3.IfcThermodynamicTemperatureMeasure(v),\n 4075327185: (v) => new IFC4X3.IfcTime(v),\n 2726807636: (v) => new IFC4X3.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC4X3.IfcTimeStamp(v),\n 1278329552: (v) => new IFC4X3.IfcTorqueMeasure(v),\n 950732822: (v) => new IFC4X3.IfcURIReference(v),\n 3345633955: (v) => new IFC4X3.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC4X3.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC4X3.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC4X3.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC4X3.IfcWarpingMomentMeasure(v)\n};\nvar IFC4X3;\n(function(IFC4X32) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcArcIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcArcIndex = IfcArcIndex;\n ;\n class IfcAreaDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREADENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAreaDensityMeasure = IfcAreaDensityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBinary {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCBINARY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcBinary = IfcBinary;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC4X32.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC4X32.IfcBoxAlignment = IfcBoxAlignment;\n class IfcCardinalPointReference {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCARDINALPOINTREFERENCE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCardinalPointReference = IfcCardinalPointReference;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC4X32.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC4X32.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDate {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATE\";\n }\n }\n IFC4X32.IfcDate = IfcDate;\n class IfcDateTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATETIME\";\n }\n }\n IFC4X32.IfcDateTime = IfcDateTime;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDayInWeekNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINWEEKNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDayInWeekNumber = IfcDayInWeekNumber;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC4X32.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDuration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDURATION\";\n }\n }\n IFC4X32.IfcDuration = IfcDuration;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC4X32.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC4X32.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC4X32.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC4X32.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC4X32.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC4X32.IfcLabel = IfcLabel;\n class IfcLanguageId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLANGUAGEID\";\n }\n }\n IFC4X32.IfcLanguageId = IfcLanguageId;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLineIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcLineIndex = IfcLineIndex;\n ;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC4X32.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNonNegativeLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNONNEGATIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNonNegativeLengthMeasure = IfcNonNegativeLengthMeasure;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCPOSITIVEINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveInteger = IfcPositiveInteger;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC4X32.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPressureMeasure = IfcPressureMeasure;\n class IfcPropertySetDefinitionSet {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcPropertySetDefinitionSet = IfcPropertySetDefinitionSet;\n ;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERLEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPowerLevelMeasure = IfcSoundPowerLevelMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSURELEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPressureLevelMeasure = IfcSoundPressureLevelMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcTemperatureRateOfChangeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATURERATEOFCHANGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTemperatureRateOfChangeMeasure = IfcTemperatureRateOfChangeMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC4X32.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC4X32.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC4X32.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC4X32.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC4X32.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTIME\";\n }\n }\n IFC4X32.IfcTime = IfcTime;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcURIReference {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCURIREFERENCE\";\n }\n }\n IFC4X32.IfcURIReference = IfcURIReference;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcActionRequestTypeEnum {\n }\n IfcActionRequestTypeEnum.EMAIL = { type: 3, value: \"EMAIL\" };\n IfcActionRequestTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcActionRequestTypeEnum.PHONE = { type: 3, value: \"PHONE\" };\n IfcActionRequestTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcActionRequestTypeEnum.VERBAL = { type: 3, value: \"VERBAL\" };\n IfcActionRequestTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionRequestTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionRequestTypeEnum = IfcActionRequestTypeEnum;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.LOUVRE = { type: 3, value: \"LOUVRE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.RAILWAYCROCODILE = { type: 3, value: \"RAILWAYCROCODILE\" };\n IfcAlarmTypeEnum.RAILWAYDETONATOR = { type: 3, value: \"RAILWAYDETONATOR\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAlignmentCantSegmentTypeEnum {\n }\n IfcAlignmentCantSegmentTypeEnum.BLOSSCURVE = { type: 3, value: \"BLOSSCURVE\" };\n IfcAlignmentCantSegmentTypeEnum.CONSTANTCANT = { type: 3, value: \"CONSTANTCANT\" };\n IfcAlignmentCantSegmentTypeEnum.COSINECURVE = { type: 3, value: \"COSINECURVE\" };\n IfcAlignmentCantSegmentTypeEnum.HELMERTCURVE = { type: 3, value: \"HELMERTCURVE\" };\n IfcAlignmentCantSegmentTypeEnum.LINEARTRANSITION = { type: 3, value: \"LINEARTRANSITION\" };\n IfcAlignmentCantSegmentTypeEnum.SINECURVE = { type: 3, value: \"SINECURVE\" };\n IfcAlignmentCantSegmentTypeEnum.VIENNESEBEND = { type: 3, value: \"VIENNESEBEND\" };\n IFC4X32.IfcAlignmentCantSegmentTypeEnum = IfcAlignmentCantSegmentTypeEnum;\n class IfcAlignmentHorizontalSegmentTypeEnum {\n }\n IfcAlignmentHorizontalSegmentTypeEnum.BLOSSCURVE = { type: 3, value: \"BLOSSCURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CIRCULARARC = { type: 3, value: \"CIRCULARARC\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CLOTHOID = { type: 3, value: \"CLOTHOID\" };\n IfcAlignmentHorizontalSegmentTypeEnum.COSINECURVE = { type: 3, value: \"COSINECURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CUBIC = { type: 3, value: \"CUBIC\" };\n IfcAlignmentHorizontalSegmentTypeEnum.HELMERTCURVE = { type: 3, value: \"HELMERTCURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.LINE = { type: 3, value: \"LINE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.SINECURVE = { type: 3, value: \"SINECURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.VIENNESEBEND = { type: 3, value: \"VIENNESEBEND\" };\n IFC4X32.IfcAlignmentHorizontalSegmentTypeEnum = IfcAlignmentHorizontalSegmentTypeEnum;\n class IfcAlignmentTypeEnum {\n }\n IfcAlignmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlignmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAlignmentTypeEnum = IfcAlignmentTypeEnum;\n class IfcAlignmentVerticalSegmentTypeEnum {\n }\n IfcAlignmentVerticalSegmentTypeEnum.CIRCULARARC = { type: 3, value: \"CIRCULARARC\" };\n IfcAlignmentVerticalSegmentTypeEnum.CLOTHOID = { type: 3, value: \"CLOTHOID\" };\n IfcAlignmentVerticalSegmentTypeEnum.CONSTANTGRADIENT = { type: 3, value: \"CONSTANTGRADIENT\" };\n IfcAlignmentVerticalSegmentTypeEnum.PARABOLICARC = { type: 3, value: \"PARABOLICARC\" };\n IFC4X32.IfcAlignmentVerticalSegmentTypeEnum = IfcAlignmentVerticalSegmentTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcAnnotationTypeEnum {\n }\n IfcAnnotationTypeEnum.ASBUILTAREA = { type: 3, value: \"ASBUILTAREA\" };\n IfcAnnotationTypeEnum.ASBUILTLINE = { type: 3, value: \"ASBUILTLINE\" };\n IfcAnnotationTypeEnum.ASBUILTPOINT = { type: 3, value: \"ASBUILTPOINT\" };\n IfcAnnotationTypeEnum.ASSUMEDAREA = { type: 3, value: \"ASSUMEDAREA\" };\n IfcAnnotationTypeEnum.ASSUMEDLINE = { type: 3, value: \"ASSUMEDLINE\" };\n IfcAnnotationTypeEnum.ASSUMEDPOINT = { type: 3, value: \"ASSUMEDPOINT\" };\n IfcAnnotationTypeEnum.NON_PHYSICAL_SIGNAL = { type: 3, value: \"NON_PHYSICAL_SIGNAL\" };\n IfcAnnotationTypeEnum.SUPERELEVATIONEVENT = { type: 3, value: \"SUPERELEVATIONEVENT\" };\n IfcAnnotationTypeEnum.WIDTHEVENT = { type: 3, value: \"WIDTHEVENT\" };\n IfcAnnotationTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnnotationTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnnotationTypeEnum = IfcAnnotationTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC4X32.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcAudioVisualApplianceTypeEnum {\n }\n IfcAudioVisualApplianceTypeEnum.AMPLIFIER = { type: 3, value: \"AMPLIFIER\" };\n IfcAudioVisualApplianceTypeEnum.CAMERA = { type: 3, value: \"CAMERA\" };\n IfcAudioVisualApplianceTypeEnum.COMMUNICATIONTERMINAL = { type: 3, value: \"COMMUNICATIONTERMINAL\" };\n IfcAudioVisualApplianceTypeEnum.DISPLAY = { type: 3, value: \"DISPLAY\" };\n IfcAudioVisualApplianceTypeEnum.MICROPHONE = { type: 3, value: \"MICROPHONE\" };\n IfcAudioVisualApplianceTypeEnum.PLAYER = { type: 3, value: \"PLAYER\" };\n IfcAudioVisualApplianceTypeEnum.PROJECTOR = { type: 3, value: \"PROJECTOR\" };\n IfcAudioVisualApplianceTypeEnum.RECEIVER = { type: 3, value: \"RECEIVER\" };\n IfcAudioVisualApplianceTypeEnum.RECORDINGEQUIPMENT = { type: 3, value: \"RECORDINGEQUIPMENT\" };\n IfcAudioVisualApplianceTypeEnum.SPEAKER = { type: 3, value: \"SPEAKER\" };\n IfcAudioVisualApplianceTypeEnum.SWITCHER = { type: 3, value: \"SWITCHER\" };\n IfcAudioVisualApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcAudioVisualApplianceTypeEnum.TUNER = { type: 3, value: \"TUNER\" };\n IfcAudioVisualApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAudioVisualApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAudioVisualApplianceTypeEnum = IfcAudioVisualApplianceTypeEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBSplineSurfaceForm {\n }\n IfcBSplineSurfaceForm.CONICAL_SURF = { type: 3, value: \"CONICAL_SURF\" };\n IfcBSplineSurfaceForm.CYLINDRICAL_SURF = { type: 3, value: \"CYLINDRICAL_SURF\" };\n IfcBSplineSurfaceForm.GENERALISED_CONE = { type: 3, value: \"GENERALISED_CONE\" };\n IfcBSplineSurfaceForm.PLANE_SURF = { type: 3, value: \"PLANE_SURF\" };\n IfcBSplineSurfaceForm.QUADRIC_SURF = { type: 3, value: \"QUADRIC_SURF\" };\n IfcBSplineSurfaceForm.RULED_SURF = { type: 3, value: \"RULED_SURF\" };\n IfcBSplineSurfaceForm.SPHERICAL_SURF = { type: 3, value: \"SPHERICAL_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_LINEAR_EXTRUSION = { type: 3, value: \"SURF_OF_LINEAR_EXTRUSION\" };\n IfcBSplineSurfaceForm.SURF_OF_REVOLUTION = { type: 3, value: \"SURF_OF_REVOLUTION\" };\n IfcBSplineSurfaceForm.TOROIDAL_SURF = { type: 3, value: \"TOROIDAL_SURF\" };\n IfcBSplineSurfaceForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcBSplineSurfaceForm = IfcBSplineSurfaceForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.CORNICE = { type: 3, value: \"CORNICE\" };\n IfcBeamTypeEnum.DIAPHRAGM = { type: 3, value: \"DIAPHRAGM\" };\n IfcBeamTypeEnum.EDGEBEAM = { type: 3, value: \"EDGEBEAM\" };\n IfcBeamTypeEnum.GIRDER_SEGMENT = { type: 3, value: \"GIRDER_SEGMENT\" };\n IfcBeamTypeEnum.HATSTONE = { type: 3, value: \"HATSTONE\" };\n IfcBeamTypeEnum.HOLLOWCORE = { type: 3, value: \"HOLLOWCORE\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.PIERCAP = { type: 3, value: \"PIERCAP\" };\n IfcBeamTypeEnum.SPANDREL = { type: 3, value: \"SPANDREL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBearingTypeDisplacementEnum {\n }\n IfcBearingTypeDisplacementEnum.FIXED_MOVEMENT = { type: 3, value: \"FIXED_MOVEMENT\" };\n IfcBearingTypeDisplacementEnum.FREE_MOVEMENT = { type: 3, value: \"FREE_MOVEMENT\" };\n IfcBearingTypeDisplacementEnum.GUIDED_LONGITUDINAL = { type: 3, value: \"GUIDED_LONGITUDINAL\" };\n IfcBearingTypeDisplacementEnum.GUIDED_TRANSVERSAL = { type: 3, value: \"GUIDED_TRANSVERSAL\" };\n IfcBearingTypeDisplacementEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBearingTypeDisplacementEnum = IfcBearingTypeDisplacementEnum;\n class IfcBearingTypeEnum {\n }\n IfcBearingTypeEnum.CYLINDRICAL = { type: 3, value: \"CYLINDRICAL\" };\n IfcBearingTypeEnum.DISK = { type: 3, value: \"DISK\" };\n IfcBearingTypeEnum.ELASTOMERIC = { type: 3, value: \"ELASTOMERIC\" };\n IfcBearingTypeEnum.GUIDE = { type: 3, value: \"GUIDE\" };\n IfcBearingTypeEnum.POT = { type: 3, value: \"POT\" };\n IfcBearingTypeEnum.ROCKER = { type: 3, value: \"ROCKER\" };\n IfcBearingTypeEnum.ROLLER = { type: 3, value: \"ROLLER\" };\n IfcBearingTypeEnum.SPHERICAL = { type: 3, value: \"SPHERICAL\" };\n IfcBearingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBearingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBearingTypeEnum = IfcBearingTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.INCLUDEDIN = { type: 3, value: \"INCLUDEDIN\" };\n IfcBenchmarkEnum.INCLUDES = { type: 3, value: \"INCLUDES\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IfcBenchmarkEnum.NOTINCLUDEDIN = { type: 3, value: \"NOTINCLUDEDIN\" };\n IfcBenchmarkEnum.NOTINCLUDES = { type: 3, value: \"NOTINCLUDES\" };\n IFC4X32.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IFC4X32.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBridgePartTypeEnum {\n }\n IfcBridgePartTypeEnum.ABUTMENT = { type: 3, value: \"ABUTMENT\" };\n IfcBridgePartTypeEnum.DECK = { type: 3, value: \"DECK\" };\n IfcBridgePartTypeEnum.DECK_SEGMENT = { type: 3, value: \"DECK_SEGMENT\" };\n IfcBridgePartTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBridgePartTypeEnum.PIER = { type: 3, value: \"PIER\" };\n IfcBridgePartTypeEnum.PIER_SEGMENT = { type: 3, value: \"PIER_SEGMENT\" };\n IfcBridgePartTypeEnum.PYLON = { type: 3, value: \"PYLON\" };\n IfcBridgePartTypeEnum.SUBSTRUCTURE = { type: 3, value: \"SUBSTRUCTURE\" };\n IfcBridgePartTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcBridgePartTypeEnum.SURFACESTRUCTURE = { type: 3, value: \"SURFACESTRUCTURE\" };\n IfcBridgePartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBridgePartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBridgePartTypeEnum = IfcBridgePartTypeEnum;\n class IfcBridgeTypeEnum {\n }\n IfcBridgeTypeEnum.ARCHED = { type: 3, value: \"ARCHED\" };\n IfcBridgeTypeEnum.CABLE_STAYED = { type: 3, value: \"CABLE_STAYED\" };\n IfcBridgeTypeEnum.CANTILEVER = { type: 3, value: \"CANTILEVER\" };\n IfcBridgeTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcBridgeTypeEnum.FRAMEWORK = { type: 3, value: \"FRAMEWORK\" };\n IfcBridgeTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcBridgeTypeEnum.SUSPENSION = { type: 3, value: \"SUSPENSION\" };\n IfcBridgeTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcBridgeTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBridgeTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBridgeTypeEnum = IfcBridgeTypeEnum;\n class IfcBuildingElementPartTypeEnum {\n }\n IfcBuildingElementPartTypeEnum.APRON = { type: 3, value: \"APRON\" };\n IfcBuildingElementPartTypeEnum.ARMOURUNIT = { type: 3, value: \"ARMOURUNIT\" };\n IfcBuildingElementPartTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcBuildingElementPartTypeEnum.PRECASTPANEL = { type: 3, value: \"PRECASTPANEL\" };\n IfcBuildingElementPartTypeEnum.SAFETYCAGE = { type: 3, value: \"SAFETYCAGE\" };\n IfcBuildingElementPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingElementPartTypeEnum = IfcBuildingElementPartTypeEnum;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcBuildingElementProxyTypeEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcBuildingElementProxyTypeEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcBuildingSystemTypeEnum {\n }\n IfcBuildingSystemTypeEnum.EROSIONPREVENTION = { type: 3, value: \"EROSIONPREVENTION\" };\n IfcBuildingSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuildingSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuildingSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuildingSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuildingSystemTypeEnum.PRESTRESSING = { type: 3, value: \"PRESTRESSING\" };\n IfcBuildingSystemTypeEnum.REINFORCING = { type: 3, value: \"REINFORCING\" };\n IfcBuildingSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuildingSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuildingSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingSystemTypeEnum = IfcBuildingSystemTypeEnum;\n class IfcBuiltSystemTypeEnum {\n }\n IfcBuiltSystemTypeEnum.EROSIONPREVENTION = { type: 3, value: \"EROSIONPREVENTION\" };\n IfcBuiltSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuiltSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuiltSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuiltSystemTypeEnum.MOORING = { type: 3, value: \"MOORING\" };\n IfcBuiltSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuiltSystemTypeEnum.PRESTRESSING = { type: 3, value: \"PRESTRESSING\" };\n IfcBuiltSystemTypeEnum.RAILWAYLINE = { type: 3, value: \"RAILWAYLINE\" };\n IfcBuiltSystemTypeEnum.RAILWAYTRACK = { type: 3, value: \"RAILWAYTRACK\" };\n IfcBuiltSystemTypeEnum.REINFORCING = { type: 3, value: \"REINFORCING\" };\n IfcBuiltSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuiltSystemTypeEnum.TRACKCIRCUIT = { type: 3, value: \"TRACKCIRCUIT\" };\n IfcBuiltSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuiltSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuiltSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuiltSystemTypeEnum = IfcBuiltSystemTypeEnum;\n class IfcBurnerTypeEnum {\n }\n IfcBurnerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBurnerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBurnerTypeEnum = IfcBurnerTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLEBRACKET = { type: 3, value: \"CABLEBRACKET\" };\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CATENARYWIRE = { type: 3, value: \"CATENARYWIRE\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.DROPPER = { type: 3, value: \"DROPPER\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableFittingTypeEnum {\n }\n IfcCableFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcCableFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcCableFittingTypeEnum.FANOUT = { type: 3, value: \"FANOUT\" };\n IfcCableFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableFittingTypeEnum = IfcCableFittingTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.BUSBARSEGMENT = { type: 3, value: \"BUSBARSEGMENT\" };\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.CONTACTWIRESEGMENT = { type: 3, value: \"CONTACTWIRESEGMENT\" };\n IfcCableSegmentTypeEnum.CORESEGMENT = { type: 3, value: \"CORESEGMENT\" };\n IfcCableSegmentTypeEnum.FIBERSEGMENT = { type: 3, value: \"FIBERSEGMENT\" };\n IfcCableSegmentTypeEnum.FIBERTUBE = { type: 3, value: \"FIBERTUBE\" };\n IfcCableSegmentTypeEnum.OPTICALCABLESEGMENT = { type: 3, value: \"OPTICALCABLESEGMENT\" };\n IfcCableSegmentTypeEnum.STITCHWIRE = { type: 3, value: \"STITCHWIRE\" };\n IfcCableSegmentTypeEnum.WIREPAIRSEGMENT = { type: 3, value: \"WIREPAIRSEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcCaissonFoundationTypeEnum {\n }\n IfcCaissonFoundationTypeEnum.CAISSON = { type: 3, value: \"CAISSON\" };\n IfcCaissonFoundationTypeEnum.WELL = { type: 3, value: \"WELL\" };\n IfcCaissonFoundationTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCaissonFoundationTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCaissonFoundationTypeEnum = IfcCaissonFoundationTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcChimneyTypeEnum {\n }\n IfcChimneyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChimneyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChimneyTypeEnum = IfcChimneyTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.HYDRONICCOIL = { type: 3, value: \"HYDRONICCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.PIERSTEM = { type: 3, value: \"PIERSTEM\" };\n IfcColumnTypeEnum.PIERSTEM_SEGMENT = { type: 3, value: \"PIERSTEM_SEGMENT\" };\n IfcColumnTypeEnum.PILASTER = { type: 3, value: \"PILASTER\" };\n IfcColumnTypeEnum.STANDCOLUMN = { type: 3, value: \"STANDCOLUMN\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCommunicationsApplianceTypeEnum {\n }\n IfcCommunicationsApplianceTypeEnum.ANTENNA = { type: 3, value: \"ANTENNA\" };\n IfcCommunicationsApplianceTypeEnum.AUTOMATON = { type: 3, value: \"AUTOMATON\" };\n IfcCommunicationsApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcCommunicationsApplianceTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcCommunicationsApplianceTypeEnum.GATEWAY = { type: 3, value: \"GATEWAY\" };\n IfcCommunicationsApplianceTypeEnum.INTELLIGENTPERIPHERAL = { type: 3, value: \"INTELLIGENTPERIPHERAL\" };\n IfcCommunicationsApplianceTypeEnum.IPNETWORKEQUIPMENT = { type: 3, value: \"IPNETWORKEQUIPMENT\" };\n IfcCommunicationsApplianceTypeEnum.LINESIDEELECTRONICUNIT = { type: 3, value: \"LINESIDEELECTRONICUNIT\" };\n IfcCommunicationsApplianceTypeEnum.MODEM = { type: 3, value: \"MODEM\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKAPPLIANCE = { type: 3, value: \"NETWORKAPPLIANCE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKBRIDGE = { type: 3, value: \"NETWORKBRIDGE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKHUB = { type: 3, value: \"NETWORKHUB\" };\n IfcCommunicationsApplianceTypeEnum.OPTICALLINETERMINAL = { type: 3, value: \"OPTICALLINETERMINAL\" };\n IfcCommunicationsApplianceTypeEnum.OPTICALNETWORKUNIT = { type: 3, value: \"OPTICALNETWORKUNIT\" };\n IfcCommunicationsApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcCommunicationsApplianceTypeEnum.RADIOBLOCKCENTER = { type: 3, value: \"RADIOBLOCKCENTER\" };\n IfcCommunicationsApplianceTypeEnum.REPEATER = { type: 3, value: \"REPEATER\" };\n IfcCommunicationsApplianceTypeEnum.ROUTER = { type: 3, value: \"ROUTER\" };\n IfcCommunicationsApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcCommunicationsApplianceTypeEnum.TELECOMMAND = { type: 3, value: \"TELECOMMAND\" };\n IfcCommunicationsApplianceTypeEnum.TELEPHONYEXCHANGE = { type: 3, value: \"TELEPHONYEXCHANGE\" };\n IfcCommunicationsApplianceTypeEnum.TRANSITIONCOMPONENT = { type: 3, value: \"TRANSITIONCOMPONENT\" };\n IfcCommunicationsApplianceTypeEnum.TRANSPONDER = { type: 3, value: \"TRANSPONDER\" };\n IfcCommunicationsApplianceTypeEnum.TRANSPORTEQUIPMENT = { type: 3, value: \"TRANSPORTEQUIPMENT\" };\n IfcCommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCommunicationsApplianceTypeEnum = IfcCommunicationsApplianceTypeEnum;\n class IfcComplexPropertyTemplateTypeEnum {\n }\n IfcComplexPropertyTemplateTypeEnum.P_COMPLEX = { type: 3, value: \"P_COMPLEX\" };\n IfcComplexPropertyTemplateTypeEnum.Q_COMPLEX = { type: 3, value: \"Q_COMPLEX\" };\n IFC4X32.IfcComplexPropertyTemplateTypeEnum = IfcComplexPropertyTemplateTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstraintEnum = IfcConstraintEnum;\n class IfcConstructionEquipmentResourceTypeEnum {\n }\n IfcConstructionEquipmentResourceTypeEnum.DEMOLISHING = { type: 3, value: \"DEMOLISHING\" };\n IfcConstructionEquipmentResourceTypeEnum.EARTHMOVING = { type: 3, value: \"EARTHMOVING\" };\n IfcConstructionEquipmentResourceTypeEnum.ERECTING = { type: 3, value: \"ERECTING\" };\n IfcConstructionEquipmentResourceTypeEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcConstructionEquipmentResourceTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcConstructionEquipmentResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcConstructionEquipmentResourceTypeEnum.PUMPING = { type: 3, value: \"PUMPING\" };\n IfcConstructionEquipmentResourceTypeEnum.TRANSPORTING = { type: 3, value: \"TRANSPORTING\" };\n IfcConstructionEquipmentResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionEquipmentResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionEquipmentResourceTypeEnum = IfcConstructionEquipmentResourceTypeEnum;\n class IfcConstructionMaterialResourceTypeEnum {\n }\n IfcConstructionMaterialResourceTypeEnum.AGGREGATES = { type: 3, value: \"AGGREGATES\" };\n IfcConstructionMaterialResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcConstructionMaterialResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcConstructionMaterialResourceTypeEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcConstructionMaterialResourceTypeEnum.GYPSUM = { type: 3, value: \"GYPSUM\" };\n IfcConstructionMaterialResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcConstructionMaterialResourceTypeEnum.METAL = { type: 3, value: \"METAL\" };\n IfcConstructionMaterialResourceTypeEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcConstructionMaterialResourceTypeEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcConstructionMaterialResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionMaterialResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionMaterialResourceTypeEnum = IfcConstructionMaterialResourceTypeEnum;\n class IfcConstructionProductResourceTypeEnum {\n }\n IfcConstructionProductResourceTypeEnum.ASSEMBLY = { type: 3, value: \"ASSEMBLY\" };\n IfcConstructionProductResourceTypeEnum.FORMWORK = { type: 3, value: \"FORMWORK\" };\n IfcConstructionProductResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionProductResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionProductResourceTypeEnum = IfcConstructionProductResourceTypeEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.MULTIPOSITION = { type: 3, value: \"MULTIPOSITION\" };\n IfcControllerTypeEnum.PROGRAMMABLE = { type: 3, value: \"PROGRAMMABLE\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcConveyorSegmentTypeEnum {\n }\n IfcConveyorSegmentTypeEnum.BELTCONVEYOR = { type: 3, value: \"BELTCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.BUCKETCONVEYOR = { type: 3, value: \"BUCKETCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.CHUTECONVEYOR = { type: 3, value: \"CHUTECONVEYOR\" };\n IfcConveyorSegmentTypeEnum.SCREWCONVEYOR = { type: 3, value: \"SCREWCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConveyorSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConveyorSegmentTypeEnum = IfcConveyorSegmentTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostItemTypeEnum {\n }\n IfcCostItemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostItemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCostItemTypeEnum = IfcCostItemTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCourseTypeEnum {\n }\n IfcCourseTypeEnum.ARMOUR = { type: 3, value: \"ARMOUR\" };\n IfcCourseTypeEnum.BALLASTBED = { type: 3, value: \"BALLASTBED\" };\n IfcCourseTypeEnum.CORE = { type: 3, value: \"CORE\" };\n IfcCourseTypeEnum.FILTER = { type: 3, value: \"FILTER\" };\n IfcCourseTypeEnum.PAVEMENT = { type: 3, value: \"PAVEMENT\" };\n IfcCourseTypeEnum.PROTECTION = { type: 3, value: \"PROTECTION\" };\n IfcCourseTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCourseTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCourseTypeEnum = IfcCourseTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.COPING = { type: 3, value: \"COPING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.MOLDING = { type: 3, value: \"MOLDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.SKIRTINGBOARD = { type: 3, value: \"SKIRTINGBOARD\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.TOPPING = { type: 3, value: \"TOPPING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCrewResourceTypeEnum {\n }\n IfcCrewResourceTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcCrewResourceTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcCrewResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCrewResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCrewResourceTypeEnum = IfcCrewResourceTypeEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcCurveInterpolationEnum {\n }\n IfcCurveInterpolationEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LINEAR = { type: 3, value: \"LOG_LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LOG = { type: 3, value: \"LOG_LOG\" };\n IfcCurveInterpolationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCurveInterpolationEnum = IfcCurveInterpolationEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.AREADENSITYUNIT = { type: 3, value: \"AREADENSITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERLEVELUNIT = { type: 3, value: \"SOUNDPOWERLEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSURELEVELUNIT = { type: 3, value: \"SOUNDPRESSURELEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.TEMPERATURERATEOFCHANGEUNIT = { type: 3, value: \"TEMPERATURERATEOFCHANGEUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IFC4X32.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDiscreteAccessoryTypeEnum {\n }\n IfcDiscreteAccessoryTypeEnum.ANCHORPLATE = { type: 3, value: \"ANCHORPLATE\" };\n IfcDiscreteAccessoryTypeEnum.BIRDPROTECTION = { type: 3, value: \"BIRDPROTECTION\" };\n IfcDiscreteAccessoryTypeEnum.BRACKET = { type: 3, value: \"BRACKET\" };\n IfcDiscreteAccessoryTypeEnum.CABLEARRANGER = { type: 3, value: \"CABLEARRANGER\" };\n IfcDiscreteAccessoryTypeEnum.ELASTIC_CUSHION = { type: 3, value: \"ELASTIC_CUSHION\" };\n IfcDiscreteAccessoryTypeEnum.EXPANSION_JOINT_DEVICE = { type: 3, value: \"EXPANSION_JOINT_DEVICE\" };\n IfcDiscreteAccessoryTypeEnum.FILLER = { type: 3, value: \"FILLER\" };\n IfcDiscreteAccessoryTypeEnum.FLASHING = { type: 3, value: \"FLASHING\" };\n IfcDiscreteAccessoryTypeEnum.INSULATOR = { type: 3, value: \"INSULATOR\" };\n IfcDiscreteAccessoryTypeEnum.LOCK = { type: 3, value: \"LOCK\" };\n IfcDiscreteAccessoryTypeEnum.PANEL_STRENGTHENING = { type: 3, value: \"PANEL_STRENGTHENING\" };\n IfcDiscreteAccessoryTypeEnum.POINTMACHINEMOUNTINGDEVICE = { type: 3, value: \"POINTMACHINEMOUNTINGDEVICE\" };\n IfcDiscreteAccessoryTypeEnum.POINT_MACHINE_LOCKING_DEVICE = { type: 3, value: \"POINT_MACHINE_LOCKING_DEVICE\" };\n IfcDiscreteAccessoryTypeEnum.RAILBRACE = { type: 3, value: \"RAILBRACE\" };\n IfcDiscreteAccessoryTypeEnum.RAILPAD = { type: 3, value: \"RAILPAD\" };\n IfcDiscreteAccessoryTypeEnum.RAIL_LUBRICATION = { type: 3, value: \"RAIL_LUBRICATION\" };\n IfcDiscreteAccessoryTypeEnum.RAIL_MECHANICAL_EQUIPMENT = { type: 3, value: \"RAIL_MECHANICAL_EQUIPMENT\" };\n IfcDiscreteAccessoryTypeEnum.SHOE = { type: 3, value: \"SHOE\" };\n IfcDiscreteAccessoryTypeEnum.SLIDINGCHAIR = { type: 3, value: \"SLIDINGCHAIR\" };\n IfcDiscreteAccessoryTypeEnum.SOUNDABSORPTION = { type: 3, value: \"SOUNDABSORPTION\" };\n IfcDiscreteAccessoryTypeEnum.TENSIONINGEQUIPMENT = { type: 3, value: \"TENSIONINGEQUIPMENT\" };\n IfcDiscreteAccessoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDiscreteAccessoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDiscreteAccessoryTypeEnum = IfcDiscreteAccessoryTypeEnum;\n class IfcDistributionBoardTypeEnum {\n }\n IfcDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcDistributionBoardTypeEnum.DISPATCHINGBOARD = { type: 3, value: \"DISPATCHINGBOARD\" };\n IfcDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcDistributionBoardTypeEnum.DISTRIBUTIONFRAME = { type: 3, value: \"DISTRIBUTIONFRAME\" };\n IfcDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionBoardTypeEnum = IfcDistributionBoardTypeEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDistributionPortTypeEnum {\n }\n IfcDistributionPortTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcDistributionPortTypeEnum.CABLECARRIER = { type: 3, value: \"CABLECARRIER\" };\n IfcDistributionPortTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcDistributionPortTypeEnum.PIPE = { type: 3, value: \"PIPE\" };\n IfcDistributionPortTypeEnum.WIRELESS = { type: 3, value: \"WIRELESS\" };\n IfcDistributionPortTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionPortTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionPortTypeEnum = IfcDistributionPortTypeEnum;\n class IfcDistributionSystemEnum {\n }\n IfcDistributionSystemEnum.AIRCONDITIONING = { type: 3, value: \"AIRCONDITIONING\" };\n IfcDistributionSystemEnum.AUDIOVISUAL = { type: 3, value: \"AUDIOVISUAL\" };\n IfcDistributionSystemEnum.CATENARY_SYSTEM = { type: 3, value: \"CATENARY_SYSTEM\" };\n IfcDistributionSystemEnum.CHEMICAL = { type: 3, value: \"CHEMICAL\" };\n IfcDistributionSystemEnum.CHILLEDWATER = { type: 3, value: \"CHILLEDWATER\" };\n IfcDistributionSystemEnum.COMMUNICATION = { type: 3, value: \"COMMUNICATION\" };\n IfcDistributionSystemEnum.COMPRESSEDAIR = { type: 3, value: \"COMPRESSEDAIR\" };\n IfcDistributionSystemEnum.CONDENSERWATER = { type: 3, value: \"CONDENSERWATER\" };\n IfcDistributionSystemEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcDistributionSystemEnum.CONVEYING = { type: 3, value: \"CONVEYING\" };\n IfcDistributionSystemEnum.DATA = { type: 3, value: \"DATA\" };\n IfcDistributionSystemEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcDistributionSystemEnum.DOMESTICCOLDWATER = { type: 3, value: \"DOMESTICCOLDWATER\" };\n IfcDistributionSystemEnum.DOMESTICHOTWATER = { type: 3, value: \"DOMESTICHOTWATER\" };\n IfcDistributionSystemEnum.DRAINAGE = { type: 3, value: \"DRAINAGE\" };\n IfcDistributionSystemEnum.EARTHING = { type: 3, value: \"EARTHING\" };\n IfcDistributionSystemEnum.ELECTRICAL = { type: 3, value: \"ELECTRICAL\" };\n IfcDistributionSystemEnum.ELECTROACOUSTIC = { type: 3, value: \"ELECTROACOUSTIC\" };\n IfcDistributionSystemEnum.EXHAUST = { type: 3, value: \"EXHAUST\" };\n IfcDistributionSystemEnum.FIREPROTECTION = { type: 3, value: \"FIREPROTECTION\" };\n IfcDistributionSystemEnum.FIXEDTRANSMISSIONNETWORK = { type: 3, value: \"FIXEDTRANSMISSIONNETWORK\" };\n IfcDistributionSystemEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcDistributionSystemEnum.GAS = { type: 3, value: \"GAS\" };\n IfcDistributionSystemEnum.HAZARDOUS = { type: 3, value: \"HAZARDOUS\" };\n IfcDistributionSystemEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcDistributionSystemEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcDistributionSystemEnum.LIGHTNINGPROTECTION = { type: 3, value: \"LIGHTNINGPROTECTION\" };\n IfcDistributionSystemEnum.MOBILENETWORK = { type: 3, value: \"MOBILENETWORK\" };\n IfcDistributionSystemEnum.MONITORINGSYSTEM = { type: 3, value: \"MONITORINGSYSTEM\" };\n IfcDistributionSystemEnum.MUNICIPALSOLIDWASTE = { type: 3, value: \"MUNICIPALSOLIDWASTE\" };\n IfcDistributionSystemEnum.OIL = { type: 3, value: \"OIL\" };\n IfcDistributionSystemEnum.OPERATIONAL = { type: 3, value: \"OPERATIONAL\" };\n IfcDistributionSystemEnum.OPERATIONALTELEPHONYSYSTEM = { type: 3, value: \"OPERATIONALTELEPHONYSYSTEM\" };\n IfcDistributionSystemEnum.OVERHEAD_CONTACTLINE_SYSTEM = { type: 3, value: \"OVERHEAD_CONTACTLINE_SYSTEM\" };\n IfcDistributionSystemEnum.POWERGENERATION = { type: 3, value: \"POWERGENERATION\" };\n IfcDistributionSystemEnum.RAINWATER = { type: 3, value: \"RAINWATER\" };\n IfcDistributionSystemEnum.REFRIGERATION = { type: 3, value: \"REFRIGERATION\" };\n IfcDistributionSystemEnum.RETURN_CIRCUIT = { type: 3, value: \"RETURN_CIRCUIT\" };\n IfcDistributionSystemEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcDistributionSystemEnum.SEWAGE = { type: 3, value: \"SEWAGE\" };\n IfcDistributionSystemEnum.SIGNAL = { type: 3, value: \"SIGNAL\" };\n IfcDistributionSystemEnum.STORMWATER = { type: 3, value: \"STORMWATER\" };\n IfcDistributionSystemEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcDistributionSystemEnum.TV = { type: 3, value: \"TV\" };\n IfcDistributionSystemEnum.VACUUM = { type: 3, value: \"VACUUM\" };\n IfcDistributionSystemEnum.VENT = { type: 3, value: \"VENT\" };\n IfcDistributionSystemEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcDistributionSystemEnum.WASTEWATER = { type: 3, value: \"WASTEWATER\" };\n IfcDistributionSystemEnum.WATERSUPPLY = { type: 3, value: \"WATERSUPPLY\" };\n IfcDistributionSystemEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionSystemEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionSystemEnum = IfcDistributionSystemEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.FIXEDPANEL = { type: 3, value: \"FIXEDPANEL\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDoorTypeEnum {\n }\n IfcDoorTypeEnum.BOOM_BARRIER = { type: 3, value: \"BOOM_BARRIER\" };\n IfcDoorTypeEnum.DOOR = { type: 3, value: \"DOOR\" };\n IfcDoorTypeEnum.GATE = { type: 3, value: \"GATE\" };\n IfcDoorTypeEnum.TRAPDOOR = { type: 3, value: \"TRAPDOOR\" };\n IfcDoorTypeEnum.TURNSTILE = { type: 3, value: \"TURNSTILE\" };\n IfcDoorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorTypeEnum = IfcDoorTypeEnum;\n class IfcDoorTypeOperationEnum {\n }\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_DOUBLE_SWING = { type: 3, value: \"DOUBLE_PANEL_DOUBLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_FOLDING = { type: 3, value: \"DOUBLE_PANEL_FOLDING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_LIFTING_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_LIFTING_VERTICAL\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SLIDING = { type: 3, value: \"DOUBLE_PANEL_SLIDING\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.LIFTING_HORIZONTAL = { type: 3, value: \"LIFTING_HORIZONTAL\" };\n IfcDoorTypeOperationEnum.LIFTING_VERTICAL_LEFT = { type: 3, value: \"LIFTING_VERTICAL_LEFT\" };\n IfcDoorTypeOperationEnum.LIFTING_VERTICAL_RIGHT = { type: 3, value: \"LIFTING_VERTICAL_RIGHT\" };\n IfcDoorTypeOperationEnum.REVOLVING_HORIZONTAL = { type: 3, value: \"REVOLVING_HORIZONTAL\" };\n IfcDoorTypeOperationEnum.REVOLVING_VERTICAL = { type: 3, value: \"REVOLVING_VERTICAL\" };\n IfcDoorTypeOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_LEFT = { type: 3, value: \"SWING_FIXED_LEFT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_RIGHT = { type: 3, value: \"SWING_FIXED_RIGHT\" };\n IfcDoorTypeOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorTypeOperationEnum = IfcDoorTypeOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcEarthworksCutTypeEnum {\n }\n IfcEarthworksCutTypeEnum.BASE_EXCAVATION = { type: 3, value: \"BASE_EXCAVATION\" };\n IfcEarthworksCutTypeEnum.CUT = { type: 3, value: \"CUT\" };\n IfcEarthworksCutTypeEnum.DREDGING = { type: 3, value: \"DREDGING\" };\n IfcEarthworksCutTypeEnum.EXCAVATION = { type: 3, value: \"EXCAVATION\" };\n IfcEarthworksCutTypeEnum.OVEREXCAVATION = { type: 3, value: \"OVEREXCAVATION\" };\n IfcEarthworksCutTypeEnum.PAVEMENTMILLING = { type: 3, value: \"PAVEMENTMILLING\" };\n IfcEarthworksCutTypeEnum.STEPEXCAVATION = { type: 3, value: \"STEPEXCAVATION\" };\n IfcEarthworksCutTypeEnum.TOPSOILREMOVAL = { type: 3, value: \"TOPSOILREMOVAL\" };\n IfcEarthworksCutTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcEarthworksCutTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEarthworksCutTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEarthworksCutTypeEnum = IfcEarthworksCutTypeEnum;\n class IfcEarthworksFillTypeEnum {\n }\n IfcEarthworksFillTypeEnum.BACKFILL = { type: 3, value: \"BACKFILL\" };\n IfcEarthworksFillTypeEnum.COUNTERWEIGHT = { type: 3, value: \"COUNTERWEIGHT\" };\n IfcEarthworksFillTypeEnum.EMBANKMENT = { type: 3, value: \"EMBANKMENT\" };\n IfcEarthworksFillTypeEnum.SLOPEFILL = { type: 3, value: \"SLOPEFILL\" };\n IfcEarthworksFillTypeEnum.SUBGRADE = { type: 3, value: \"SUBGRADE\" };\n IfcEarthworksFillTypeEnum.SUBGRADEBED = { type: 3, value: \"SUBGRADEBED\" };\n IfcEarthworksFillTypeEnum.TRANSITIONSECTION = { type: 3, value: \"TRANSITIONSECTION\" };\n IfcEarthworksFillTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEarthworksFillTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEarthworksFillTypeEnum = IfcEarthworksFillTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGELECTRICHEATER = { type: 3, value: \"FREESTANDINGELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERCOOLER = { type: 3, value: \"FREESTANDINGWATERCOOLER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERHEATER = { type: 3, value: \"FREESTANDINGWATERHEATER\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.KITCHENMACHINE = { type: 3, value: \"KITCHENMACHINE\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricDistributionBoardTypeEnum {\n }\n IfcElectricDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricDistributionBoardTypeEnum = IfcElectricDistributionBoardTypeEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITOR = { type: 3, value: \"CAPACITOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.COMPENSATOR = { type: 3, value: \"COMPENSATOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTOR = { type: 3, value: \"INDUCTOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.RECHARGER = { type: 3, value: \"RECHARGER\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricFlowTreatmentDeviceTypeEnum {\n }\n IfcElectricFlowTreatmentDeviceTypeEnum.ELECTRONICFILTER = { type: 3, value: \"ELECTRONICFILTER\" };\n IfcElectricFlowTreatmentDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowTreatmentDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricFlowTreatmentDeviceTypeEnum = IfcElectricFlowTreatmentDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.CHP = { type: 3, value: \"CHP\" };\n IfcElectricGeneratorTypeEnum.ENGINEGENERATOR = { type: 3, value: \"ENGINEGENERATOR\" };\n IfcElectricGeneratorTypeEnum.STANDALONE = { type: 3, value: \"STANDALONE\" };\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ABUTMENT = { type: 3, value: \"ABUTMENT\" };\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.CROSS_BRACING = { type: 3, value: \"CROSS_BRACING\" };\n IfcElementAssemblyTypeEnum.DECK = { type: 3, value: \"DECK\" };\n IfcElementAssemblyTypeEnum.DILATATIONPANEL = { type: 3, value: \"DILATATIONPANEL\" };\n IfcElementAssemblyTypeEnum.ENTRANCEWORKS = { type: 3, value: \"ENTRANCEWORKS\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.GRID = { type: 3, value: \"GRID\" };\n IfcElementAssemblyTypeEnum.MAST = { type: 3, value: \"MAST\" };\n IfcElementAssemblyTypeEnum.PIER = { type: 3, value: \"PIER\" };\n IfcElementAssemblyTypeEnum.PYLON = { type: 3, value: \"PYLON\" };\n IfcElementAssemblyTypeEnum.RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY = { type: 3, value: \"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SHELTER = { type: 3, value: \"SHELTER\" };\n IfcElementAssemblyTypeEnum.SIGNALASSEMBLY = { type: 3, value: \"SIGNALASSEMBLY\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.SUMPBUSTER = { type: 3, value: \"SUMPBUSTER\" };\n IfcElementAssemblyTypeEnum.SUPPORTINGASSEMBLY = { type: 3, value: \"SUPPORTINGASSEMBLY\" };\n IfcElementAssemblyTypeEnum.SUSPENSIONASSEMBLY = { type: 3, value: \"SUSPENSIONASSEMBLY\" };\n IfcElementAssemblyTypeEnum.TRACKPANEL = { type: 3, value: \"TRACKPANEL\" };\n IfcElementAssemblyTypeEnum.TRACTION_SWITCHING_ASSEMBLY = { type: 3, value: \"TRACTION_SWITCHING_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.TRAFFIC_CALMING_DEVICE = { type: 3, value: \"TRAFFIC_CALMING_DEVICE\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.TURNOUTPANEL = { type: 3, value: \"TURNOUTPANEL\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC4X32.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEngineTypeEnum {\n }\n IfcEngineTypeEnum.EXTERNALCOMBUSTION = { type: 3, value: \"EXTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.INTERNALCOMBUSTION = { type: 3, value: \"INTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEngineTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEngineTypeEnum = IfcEngineTypeEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSION = { type: 3, value: \"DIRECTEXPANSION\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcEventTriggerTypeEnum {\n }\n IfcEventTriggerTypeEnum.EVENTCOMPLEX = { type: 3, value: \"EVENTCOMPLEX\" };\n IfcEventTriggerTypeEnum.EVENTMESSAGE = { type: 3, value: \"EVENTMESSAGE\" };\n IfcEventTriggerTypeEnum.EVENTRULE = { type: 3, value: \"EVENTRULE\" };\n IfcEventTriggerTypeEnum.EVENTTIME = { type: 3, value: \"EVENTTIME\" };\n IfcEventTriggerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTriggerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEventTriggerTypeEnum = IfcEventTriggerTypeEnum;\n class IfcEventTypeEnum {\n }\n IfcEventTypeEnum.ENDEVENT = { type: 3, value: \"ENDEVENT\" };\n IfcEventTypeEnum.INTERMEDIATEEVENT = { type: 3, value: \"INTERMEDIATEEVENT\" };\n IfcEventTypeEnum.STARTEVENT = { type: 3, value: \"STARTEVENT\" };\n IfcEventTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEventTypeEnum = IfcEventTypeEnum;\n class IfcExternalSpatialElementTypeEnum {\n }\n IfcExternalSpatialElementTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcExternalSpatialElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcExternalSpatialElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcExternalSpatialElementTypeEnum = IfcExternalSpatialElementTypeEnum;\n class IfcFacilityPartCommonTypeEnum {\n }\n IfcFacilityPartCommonTypeEnum.ABOVEGROUND = { type: 3, value: \"ABOVEGROUND\" };\n IfcFacilityPartCommonTypeEnum.BELOWGROUND = { type: 3, value: \"BELOWGROUND\" };\n IfcFacilityPartCommonTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcFacilityPartCommonTypeEnum.LEVELCROSSING = { type: 3, value: \"LEVELCROSSING\" };\n IfcFacilityPartCommonTypeEnum.SEGMENT = { type: 3, value: \"SEGMENT\" };\n IfcFacilityPartCommonTypeEnum.SUBSTRUCTURE = { type: 3, value: \"SUBSTRUCTURE\" };\n IfcFacilityPartCommonTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcFacilityPartCommonTypeEnum.TERMINAL = { type: 3, value: \"TERMINAL\" };\n IfcFacilityPartCommonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFacilityPartCommonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFacilityPartCommonTypeEnum = IfcFacilityPartCommonTypeEnum;\n class IfcFacilityUsageEnum {\n }\n IfcFacilityUsageEnum.LATERAL = { type: 3, value: \"LATERAL\" };\n IfcFacilityUsageEnum.LONGITUDINAL = { type: 3, value: \"LONGITUDINAL\" };\n IfcFacilityUsageEnum.REGION = { type: 3, value: \"REGION\" };\n IfcFacilityUsageEnum.VERTICAL = { type: 3, value: \"VERTICAL\" };\n IfcFacilityUsageEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFacilityUsageEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFacilityUsageEnum = IfcFacilityUsageEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFastenerTypeEnum {\n }\n IfcFastenerTypeEnum.GLUE = { type: 3, value: \"GLUE\" };\n IfcFastenerTypeEnum.MORTAR = { type: 3, value: \"MORTAR\" };\n IfcFastenerTypeEnum.WELD = { type: 3, value: \"WELD\" };\n IfcFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFastenerTypeEnum = IfcFastenerTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.COMPRESSEDAIRFILTER = { type: 3, value: \"COMPRESSEDAIRFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.FIREMONITOR = { type: 3, value: \"FIREMONITOR\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER = { type: 3, value: \"VOLTMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.CAISSON_FOUNDATION = { type: 3, value: \"CAISSON_FOUNDATION\" };\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcFurnitureTypeEnum {\n }\n IfcFurnitureTypeEnum.BED = { type: 3, value: \"BED\" };\n IfcFurnitureTypeEnum.CHAIR = { type: 3, value: \"CHAIR\" };\n IfcFurnitureTypeEnum.DESK = { type: 3, value: \"DESK\" };\n IfcFurnitureTypeEnum.FILECABINET = { type: 3, value: \"FILECABINET\" };\n IfcFurnitureTypeEnum.SHELF = { type: 3, value: \"SHELF\" };\n IfcFurnitureTypeEnum.SOFA = { type: 3, value: \"SOFA\" };\n IfcFurnitureTypeEnum.TABLE = { type: 3, value: \"TABLE\" };\n IfcFurnitureTypeEnum.TECHNICALCABINET = { type: 3, value: \"TECHNICALCABINET\" };\n IfcFurnitureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFurnitureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFurnitureTypeEnum = IfcFurnitureTypeEnum;\n class IfcGeographicElementTypeEnum {\n }\n IfcGeographicElementTypeEnum.SOIL_BORING_POINT = { type: 3, value: \"SOIL_BORING_POINT\" };\n IfcGeographicElementTypeEnum.TERRAIN = { type: 3, value: \"TERRAIN\" };\n IfcGeographicElementTypeEnum.VEGETATION = { type: 3, value: \"VEGETATION\" };\n IfcGeographicElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeographicElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeographicElementTypeEnum = IfcGeographicElementTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGeotechnicalStratumTypeEnum {\n }\n IfcGeotechnicalStratumTypeEnum.SOLID = { type: 3, value: \"SOLID\" };\n IfcGeotechnicalStratumTypeEnum.VOID = { type: 3, value: \"VOID\" };\n IfcGeotechnicalStratumTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcGeotechnicalStratumTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeotechnicalStratumTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeotechnicalStratumTypeEnum = IfcGeotechnicalStratumTypeEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC4X32.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcGridTypeEnum {\n }\n IfcGridTypeEnum.IRREGULAR = { type: 3, value: \"IRREGULAR\" };\n IfcGridTypeEnum.RADIAL = { type: 3, value: \"RADIAL\" };\n IfcGridTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcGridTypeEnum.TRIANGULAR = { type: 3, value: \"TRIANGULAR\" };\n IfcGridTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGridTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGridTypeEnum = IfcGridTypeEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.TURNOUTHEATING = { type: 3, value: \"TURNOUTHEATING\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcImpactProtectionDeviceTypeEnum {\n }\n IfcImpactProtectionDeviceTypeEnum.BUMPER = { type: 3, value: \"BUMPER\" };\n IfcImpactProtectionDeviceTypeEnum.CRASHCUSHION = { type: 3, value: \"CRASHCUSHION\" };\n IfcImpactProtectionDeviceTypeEnum.DAMPINGSYSTEM = { type: 3, value: \"DAMPINGSYSTEM\" };\n IfcImpactProtectionDeviceTypeEnum.FENDER = { type: 3, value: \"FENDER\" };\n IfcImpactProtectionDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcImpactProtectionDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcImpactProtectionDeviceTypeEnum = IfcImpactProtectionDeviceTypeEnum;\n class IfcInterceptorTypeEnum {\n }\n IfcInterceptorTypeEnum.CYCLONIC = { type: 3, value: \"CYCLONIC\" };\n IfcInterceptorTypeEnum.GREASE = { type: 3, value: \"GREASE\" };\n IfcInterceptorTypeEnum.OIL = { type: 3, value: \"OIL\" };\n IfcInterceptorTypeEnum.PETROL = { type: 3, value: \"PETROL\" };\n IfcInterceptorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInterceptorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInterceptorTypeEnum = IfcInterceptorTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcInternalOrExternalEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcInternalOrExternalEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.DATA = { type: 3, value: \"DATA\" };\n IfcJunctionBoxTypeEnum.POWER = { type: 3, value: \"POWER\" };\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcKnotType {\n }\n IfcKnotType.PIECEWISE_BEZIER_KNOTS = { type: 3, value: \"PIECEWISE_BEZIER_KNOTS\" };\n IfcKnotType.QUASI_UNIFORM_KNOTS = { type: 3, value: \"QUASI_UNIFORM_KNOTS\" };\n IfcKnotType.UNIFORM_KNOTS = { type: 3, value: \"UNIFORM_KNOTS\" };\n IfcKnotType.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcKnotType = IfcKnotType;\n class IfcLaborResourceTypeEnum {\n }\n IfcLaborResourceTypeEnum.ADMINISTRATION = { type: 3, value: \"ADMINISTRATION\" };\n IfcLaborResourceTypeEnum.CARPENTRY = { type: 3, value: \"CARPENTRY\" };\n IfcLaborResourceTypeEnum.CLEANING = { type: 3, value: \"CLEANING\" };\n IfcLaborResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcLaborResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcLaborResourceTypeEnum.ELECTRIC = { type: 3, value: \"ELECTRIC\" };\n IfcLaborResourceTypeEnum.FINISHING = { type: 3, value: \"FINISHING\" };\n IfcLaborResourceTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcLaborResourceTypeEnum.GENERAL = { type: 3, value: \"GENERAL\" };\n IfcLaborResourceTypeEnum.HVAC = { type: 3, value: \"HVAC\" };\n IfcLaborResourceTypeEnum.LANDSCAPING = { type: 3, value: \"LANDSCAPING\" };\n IfcLaborResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcLaborResourceTypeEnum.PAINTING = { type: 3, value: \"PAINTING\" };\n IfcLaborResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcLaborResourceTypeEnum.PLUMBING = { type: 3, value: \"PLUMBING\" };\n IfcLaborResourceTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcLaborResourceTypeEnum.SITEGRADING = { type: 3, value: \"SITEGRADING\" };\n IfcLaborResourceTypeEnum.STEELWORK = { type: 3, value: \"STEELWORK\" };\n IfcLaborResourceTypeEnum.SURVEYING = { type: 3, value: \"SURVEYING\" };\n IfcLaborResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLaborResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLaborResourceTypeEnum = IfcLaborResourceTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HALOGEN = { type: 3, value: \"HALOGEN\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.LED = { type: 3, value: \"LED\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.OLED = { type: 3, value: \"OLED\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC4X32.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.SECURITYLIGHTING = { type: 3, value: \"SECURITYLIGHTING\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLiquidTerminalTypeEnum {\n }\n IfcLiquidTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcLiquidTerminalTypeEnum.LOADINGARM = { type: 3, value: \"LOADINGARM\" };\n IfcLiquidTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLiquidTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLiquidTerminalTypeEnum = IfcLiquidTerminalTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTAND = { type: 3, value: \"LOGICALNOTAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTOR = { type: 3, value: \"LOGICALNOTOR\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IfcLogicalOperatorEnum.LOGICALXOR = { type: 3, value: \"LOGICALXOR\" };\n IFC4X32.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMarineFacilityTypeEnum {\n }\n IfcMarineFacilityTypeEnum.BARRIERBEACH = { type: 3, value: \"BARRIERBEACH\" };\n IfcMarineFacilityTypeEnum.BREAKWATER = { type: 3, value: \"BREAKWATER\" };\n IfcMarineFacilityTypeEnum.CANAL = { type: 3, value: \"CANAL\" };\n IfcMarineFacilityTypeEnum.DRYDOCK = { type: 3, value: \"DRYDOCK\" };\n IfcMarineFacilityTypeEnum.FLOATINGDOCK = { type: 3, value: \"FLOATINGDOCK\" };\n IfcMarineFacilityTypeEnum.HYDROLIFT = { type: 3, value: \"HYDROLIFT\" };\n IfcMarineFacilityTypeEnum.JETTY = { type: 3, value: \"JETTY\" };\n IfcMarineFacilityTypeEnum.LAUNCHRECOVERY = { type: 3, value: \"LAUNCHRECOVERY\" };\n IfcMarineFacilityTypeEnum.MARINEDEFENCE = { type: 3, value: \"MARINEDEFENCE\" };\n IfcMarineFacilityTypeEnum.NAVIGATIONALCHANNEL = { type: 3, value: \"NAVIGATIONALCHANNEL\" };\n IfcMarineFacilityTypeEnum.PORT = { type: 3, value: \"PORT\" };\n IfcMarineFacilityTypeEnum.QUAY = { type: 3, value: \"QUAY\" };\n IfcMarineFacilityTypeEnum.REVETMENT = { type: 3, value: \"REVETMENT\" };\n IfcMarineFacilityTypeEnum.SHIPLIFT = { type: 3, value: \"SHIPLIFT\" };\n IfcMarineFacilityTypeEnum.SHIPLOCK = { type: 3, value: \"SHIPLOCK\" };\n IfcMarineFacilityTypeEnum.SHIPYARD = { type: 3, value: \"SHIPYARD\" };\n IfcMarineFacilityTypeEnum.SLIPWAY = { type: 3, value: \"SLIPWAY\" };\n IfcMarineFacilityTypeEnum.WATERWAY = { type: 3, value: \"WATERWAY\" };\n IfcMarineFacilityTypeEnum.WATERWAYSHIPLIFT = { type: 3, value: \"WATERWAYSHIPLIFT\" };\n IfcMarineFacilityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMarineFacilityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMarineFacilityTypeEnum = IfcMarineFacilityTypeEnum;\n class IfcMarinePartTypeEnum {\n }\n IfcMarinePartTypeEnum.ABOVEWATERLINE = { type: 3, value: \"ABOVEWATERLINE\" };\n IfcMarinePartTypeEnum.ANCHORAGE = { type: 3, value: \"ANCHORAGE\" };\n IfcMarinePartTypeEnum.APPROACHCHANNEL = { type: 3, value: \"APPROACHCHANNEL\" };\n IfcMarinePartTypeEnum.BELOWWATERLINE = { type: 3, value: \"BELOWWATERLINE\" };\n IfcMarinePartTypeEnum.BERTHINGSTRUCTURE = { type: 3, value: \"BERTHINGSTRUCTURE\" };\n IfcMarinePartTypeEnum.CHAMBER = { type: 3, value: \"CHAMBER\" };\n IfcMarinePartTypeEnum.CILL_LEVEL = { type: 3, value: \"CILL_LEVEL\" };\n IfcMarinePartTypeEnum.COPELEVEL = { type: 3, value: \"COPELEVEL\" };\n IfcMarinePartTypeEnum.CORE = { type: 3, value: \"CORE\" };\n IfcMarinePartTypeEnum.CREST = { type: 3, value: \"CREST\" };\n IfcMarinePartTypeEnum.GATEHEAD = { type: 3, value: \"GATEHEAD\" };\n IfcMarinePartTypeEnum.GUDINGSTRUCTURE = { type: 3, value: \"GUDINGSTRUCTURE\" };\n IfcMarinePartTypeEnum.HIGHWATERLINE = { type: 3, value: \"HIGHWATERLINE\" };\n IfcMarinePartTypeEnum.LANDFIELD = { type: 3, value: \"LANDFIELD\" };\n IfcMarinePartTypeEnum.LEEWARDSIDE = { type: 3, value: \"LEEWARDSIDE\" };\n IfcMarinePartTypeEnum.LOWWATERLINE = { type: 3, value: \"LOWWATERLINE\" };\n IfcMarinePartTypeEnum.MANUFACTURING = { type: 3, value: \"MANUFACTURING\" };\n IfcMarinePartTypeEnum.NAVIGATIONALAREA = { type: 3, value: \"NAVIGATIONALAREA\" };\n IfcMarinePartTypeEnum.PROTECTION = { type: 3, value: \"PROTECTION\" };\n IfcMarinePartTypeEnum.SHIPTRANSFER = { type: 3, value: \"SHIPTRANSFER\" };\n IfcMarinePartTypeEnum.STORAGEAREA = { type: 3, value: \"STORAGEAREA\" };\n IfcMarinePartTypeEnum.VEHICLESERVICING = { type: 3, value: \"VEHICLESERVICING\" };\n IfcMarinePartTypeEnum.WATERFIELD = { type: 3, value: \"WATERFIELD\" };\n IfcMarinePartTypeEnum.WEATHERSIDE = { type: 3, value: \"WEATHERSIDE\" };\n IfcMarinePartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMarinePartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMarinePartTypeEnum = IfcMarinePartTypeEnum;\n class IfcMechanicalFastenerTypeEnum {\n }\n IfcMechanicalFastenerTypeEnum.ANCHORBOLT = { type: 3, value: \"ANCHORBOLT\" };\n IfcMechanicalFastenerTypeEnum.BOLT = { type: 3, value: \"BOLT\" };\n IfcMechanicalFastenerTypeEnum.CHAIN = { type: 3, value: \"CHAIN\" };\n IfcMechanicalFastenerTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcMechanicalFastenerTypeEnum.DOWEL = { type: 3, value: \"DOWEL\" };\n IfcMechanicalFastenerTypeEnum.NAIL = { type: 3, value: \"NAIL\" };\n IfcMechanicalFastenerTypeEnum.NAILPLATE = { type: 3, value: \"NAILPLATE\" };\n IfcMechanicalFastenerTypeEnum.RAILFASTENING = { type: 3, value: \"RAILFASTENING\" };\n IfcMechanicalFastenerTypeEnum.RAILJOINT = { type: 3, value: \"RAILJOINT\" };\n IfcMechanicalFastenerTypeEnum.RIVET = { type: 3, value: \"RIVET\" };\n IfcMechanicalFastenerTypeEnum.ROPE = { type: 3, value: \"ROPE\" };\n IfcMechanicalFastenerTypeEnum.SCREW = { type: 3, value: \"SCREW\" };\n IfcMechanicalFastenerTypeEnum.SHEARCONNECTOR = { type: 3, value: \"SHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.STAPLE = { type: 3, value: \"STAPLE\" };\n IfcMechanicalFastenerTypeEnum.STUDSHEARCONNECTOR = { type: 3, value: \"STUDSHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMechanicalFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMechanicalFastenerTypeEnum = IfcMechanicalFastenerTypeEnum;\n class IfcMedicalDeviceTypeEnum {\n }\n IfcMedicalDeviceTypeEnum.AIRSTATION = { type: 3, value: \"AIRSTATION\" };\n IfcMedicalDeviceTypeEnum.FEEDAIRUNIT = { type: 3, value: \"FEEDAIRUNIT\" };\n IfcMedicalDeviceTypeEnum.OXYGENGENERATOR = { type: 3, value: \"OXYGENGENERATOR\" };\n IfcMedicalDeviceTypeEnum.OXYGENPLANT = { type: 3, value: \"OXYGENPLANT\" };\n IfcMedicalDeviceTypeEnum.VACUUMSTATION = { type: 3, value: \"VACUUMSTATION\" };\n IfcMedicalDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMedicalDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMedicalDeviceTypeEnum = IfcMedicalDeviceTypeEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.ARCH_SEGMENT = { type: 3, value: \"ARCH_SEGMENT\" };\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STAY_CABLE = { type: 3, value: \"STAY_CABLE\" };\n IfcMemberTypeEnum.STIFFENING_RIB = { type: 3, value: \"STIFFENING_RIB\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUCTURALCABLE = { type: 3, value: \"STRUCTURALCABLE\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.SUSPENDER = { type: 3, value: \"SUSPENDER\" };\n IfcMemberTypeEnum.SUSPENSION_CABLE = { type: 3, value: \"SUSPENSION_CABLE\" };\n IfcMemberTypeEnum.TIEBAR = { type: 3, value: \"TIEBAR\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMobileTelecommunicationsApplianceTypeEnum {\n }\n IfcMobileTelecommunicationsApplianceTypeEnum.ACCESSPOINT = { type: 3, value: \"ACCESSPOINT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.BASEBANDUNIT = { type: 3, value: \"BASEBANDUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.BASETRANSCEIVERSTATION = { type: 3, value: \"BASETRANSCEIVERSTATION\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.E_UTRAN_NODE_B = { type: 3, value: \"E_UTRAN_NODE_B\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.GATEWAY_GPRS_SUPPORT_NODE = { type: 3, value: \"GATEWAY_GPRS_SUPPORT_NODE\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MASTERUNIT = { type: 3, value: \"MASTERUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MOBILESWITCHINGCENTER = { type: 3, value: \"MOBILESWITCHINGCENTER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MSCSERVER = { type: 3, value: \"MSCSERVER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.PACKETCONTROLUNIT = { type: 3, value: \"PACKETCONTROLUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.REMOTERADIOUNIT = { type: 3, value: \"REMOTERADIOUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.REMOTEUNIT = { type: 3, value: \"REMOTEUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.SERVICE_GPRS_SUPPORT_NODE = { type: 3, value: \"SERVICE_GPRS_SUPPORT_NODE\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.SUBSCRIBERSERVER = { type: 3, value: \"SUBSCRIBERSERVER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMobileTelecommunicationsApplianceTypeEnum = IfcMobileTelecommunicationsApplianceTypeEnum;\n class IfcMooringDeviceTypeEnum {\n }\n IfcMooringDeviceTypeEnum.BOLLARD = { type: 3, value: \"BOLLARD\" };\n IfcMooringDeviceTypeEnum.LINETENSIONER = { type: 3, value: \"LINETENSIONER\" };\n IfcMooringDeviceTypeEnum.MAGNETICDEVICE = { type: 3, value: \"MAGNETICDEVICE\" };\n IfcMooringDeviceTypeEnum.MOORINGHOOKS = { type: 3, value: \"MOORINGHOOKS\" };\n IfcMooringDeviceTypeEnum.VACUUMDEVICE = { type: 3, value: \"VACUUMDEVICE\" };\n IfcMooringDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMooringDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMooringDeviceTypeEnum = IfcMooringDeviceTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNavigationElementTypeEnum {\n }\n IfcNavigationElementTypeEnum.BEACON = { type: 3, value: \"BEACON\" };\n IfcNavigationElementTypeEnum.BUOY = { type: 3, value: \"BUOY\" };\n IfcNavigationElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcNavigationElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcNavigationElementTypeEnum = IfcNavigationElementTypeEnum;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.CODEWAIVER = { type: 3, value: \"CODEWAIVER\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.MERGECONFLICT = { type: 3, value: \"MERGECONFLICT\" };\n IfcObjectiveEnum.MODELVIEW = { type: 3, value: \"MODELVIEW\" };\n IfcObjectiveEnum.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOpeningElementTypeEnum {\n }\n IfcOpeningElementTypeEnum.OPENING = { type: 3, value: \"OPENING\" };\n IfcOpeningElementTypeEnum.RECESS = { type: 3, value: \"RECESS\" };\n IfcOpeningElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOpeningElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOpeningElementTypeEnum = IfcOpeningElementTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.DATAOUTLET = { type: 3, value: \"DATAOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.TELEPHONEOUTLET = { type: 3, value: \"TELEPHONEOUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPavementTypeEnum {\n }\n IfcPavementTypeEnum.FLEXIBLE = { type: 3, value: \"FLEXIBLE\" };\n IfcPavementTypeEnum.RIGID = { type: 3, value: \"RIGID\" };\n IfcPavementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPavementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPavementTypeEnum = IfcPavementTypeEnum;\n class IfcPerformanceHistoryTypeEnum {\n }\n IfcPerformanceHistoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPerformanceHistoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPerformanceHistoryTypeEnum = IfcPerformanceHistoryTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPermitTypeEnum {\n }\n IfcPermitTypeEnum.ACCESS = { type: 3, value: \"ACCESS\" };\n IfcPermitTypeEnum.BUILDING = { type: 3, value: \"BUILDING\" };\n IfcPermitTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcPermitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPermitTypeEnum = IfcPermitTypeEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.BORED = { type: 3, value: \"BORED\" };\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.DRIVEN = { type: 3, value: \"DRIVEN\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.JETGROUTING = { type: 3, value: \"JETGROUTING\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.BASE_PLATE = { type: 3, value: \"BASE_PLATE\" };\n IfcPlateTypeEnum.COVER_PLATE = { type: 3, value: \"COVER_PLATE\" };\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.FLANGE_PLATE = { type: 3, value: \"FLANGE_PLATE\" };\n IfcPlateTypeEnum.GUSSET_PLATE = { type: 3, value: \"GUSSET_PLATE\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.SPLICE_PLATE = { type: 3, value: \"SPLICE_PLATE\" };\n IfcPlateTypeEnum.STIFFENER_PLATE = { type: 3, value: \"STIFFENER_PLATE\" };\n IfcPlateTypeEnum.WEB_PLATE = { type: 3, value: \"WEB_PLATE\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcPreferredSurfaceCurveRepresentation {\n }\n IfcPreferredSurfaceCurveRepresentation.CURVE3D = { type: 3, value: \"CURVE3D\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S1 = { type: 3, value: \"PCURVE_S1\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S2 = { type: 3, value: \"PCURVE_S2\" };\n IFC4X32.IfcPreferredSurfaceCurveRepresentation = IfcPreferredSurfaceCurveRepresentation;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IFC4X32.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC4X32.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcProjectionElementTypeEnum {\n }\n IfcProjectionElementTypeEnum.BLISTER = { type: 3, value: \"BLISTER\" };\n IfcProjectionElementTypeEnum.DEVIATOR = { type: 3, value: \"DEVIATOR\" };\n IfcProjectionElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectionElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProjectionElementTypeEnum = IfcProjectionElementTypeEnum;\n class IfcPropertySetTemplateTypeEnum {\n }\n IfcPropertySetTemplateTypeEnum.PSET_MATERIALDRIVEN = { type: 3, value: \"PSET_MATERIALDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_OCCURRENCEDRIVEN = { type: 3, value: \"PSET_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PERFORMANCEDRIVEN = { type: 3, value: \"PSET_PERFORMANCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PROFILEDRIVEN = { type: 3, value: \"PSET_PROFILEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENONLY = { type: 3, value: \"PSET_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENOVERRIDE = { type: 3, value: \"PSET_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.QTO_OCCURRENCEDRIVEN = { type: 3, value: \"QTO_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENONLY = { type: 3, value: \"QTO_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENOVERRIDE = { type: 3, value: \"QTO_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPropertySetTemplateTypeEnum = IfcPropertySetTemplateTypeEnum;\n class IfcProtectiveDeviceTrippingUnitTypeEnum {\n }\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTROMAGNETIC = { type: 3, value: \"ELECTROMAGNETIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTRONIC = { type: 3, value: \"ELECTRONIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.RESIDUALCURRENT = { type: 3, value: \"RESIDUALCURRENT\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProtectiveDeviceTrippingUnitTypeEnum = IfcProtectiveDeviceTrippingUnitTypeEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.ANTI_ARCING_DEVICE = { type: 3, value: \"ANTI_ARCING_DEVICE\" };\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHINGSWITCH = { type: 3, value: \"EARTHINGSWITCH\" };\n IfcProtectiveDeviceTypeEnum.EARTHLEAKAGECIRCUITBREAKER = { type: 3, value: \"EARTHLEAKAGECIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.SPARKGAP = { type: 3, value: \"SPARKGAP\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.VOLTAGELIMITER = { type: 3, value: \"VOLTAGELIMITER\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.SUBMERSIBLEPUMP = { type: 3, value: \"SUBMERSIBLEPUMP\" };\n IfcPumpTypeEnum.SUMPPUMP = { type: 3, value: \"SUMPPUMP\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailTypeEnum {\n }\n IfcRailTypeEnum.BLADE = { type: 3, value: \"BLADE\" };\n IfcRailTypeEnum.CHECKRAIL = { type: 3, value: \"CHECKRAIL\" };\n IfcRailTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailTypeEnum.RACKRAIL = { type: 3, value: \"RACKRAIL\" };\n IfcRailTypeEnum.RAIL = { type: 3, value: \"RAIL\" };\n IfcRailTypeEnum.STOCKRAIL = { type: 3, value: \"STOCKRAIL\" };\n IfcRailTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailTypeEnum = IfcRailTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.FENCE = { type: 3, value: \"FENCE\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRailwayPartTypeEnum {\n }\n IfcRailwayPartTypeEnum.DILATATIONSUPERSTRUCTURE = { type: 3, value: \"DILATATIONSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.LINESIDESTRUCTURE = { type: 3, value: \"LINESIDESTRUCTURE\" };\n IfcRailwayPartTypeEnum.LINESIDESTRUCTUREPART = { type: 3, value: \"LINESIDESTRUCTUREPART\" };\n IfcRailwayPartTypeEnum.PLAINTRACKSUPERSTRUCTURE = { type: 3, value: \"PLAINTRACKSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.TRACKSTRUCTURE = { type: 3, value: \"TRACKSTRUCTURE\" };\n IfcRailwayPartTypeEnum.TRACKSTRUCTUREPART = { type: 3, value: \"TRACKSTRUCTUREPART\" };\n IfcRailwayPartTypeEnum.TURNOUTSUPERSTRUCTURE = { type: 3, value: \"TURNOUTSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailwayPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailwayPartTypeEnum = IfcRailwayPartTypeEnum;\n class IfcRailwayTypeEnum {\n }\n IfcRailwayTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailwayTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailwayTypeEnum = IfcRailwayTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcRecurrenceTypeEnum {\n }\n IfcRecurrenceTypeEnum.BY_DAY_COUNT = { type: 3, value: \"BY_DAY_COUNT\" };\n IfcRecurrenceTypeEnum.BY_WEEKDAY_COUNT = { type: 3, value: \"BY_WEEKDAY_COUNT\" };\n IfcRecurrenceTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_DAY_OF_MONTH = { type: 3, value: \"MONTHLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_POSITION = { type: 3, value: \"MONTHLY_BY_POSITION\" };\n IfcRecurrenceTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_DAY_OF_MONTH = { type: 3, value: \"YEARLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_POSITION = { type: 3, value: \"YEARLY_BY_POSITION\" };\n IFC4X32.IfcRecurrenceTypeEnum = IfcRecurrenceTypeEnum;\n class IfcReferentTypeEnum {\n }\n IfcReferentTypeEnum.BOUNDARY = { type: 3, value: \"BOUNDARY\" };\n IfcReferentTypeEnum.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcReferentTypeEnum.KILOPOINT = { type: 3, value: \"KILOPOINT\" };\n IfcReferentTypeEnum.LANDMARK = { type: 3, value: \"LANDMARK\" };\n IfcReferentTypeEnum.MILEPOINT = { type: 3, value: \"MILEPOINT\" };\n IfcReferentTypeEnum.POSITION = { type: 3, value: \"POSITION\" };\n IfcReferentTypeEnum.REFERENCEMARKER = { type: 3, value: \"REFERENCEMARKER\" };\n IfcReferentTypeEnum.STATION = { type: 3, value: \"STATION\" };\n IfcReferentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReferentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReferentTypeEnum = IfcReferentTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcedSoilTypeEnum {\n }\n IfcReinforcedSoilTypeEnum.DYNAMICALLYCOMPACTED = { type: 3, value: \"DYNAMICALLYCOMPACTED\" };\n IfcReinforcedSoilTypeEnum.GROUTED = { type: 3, value: \"GROUTED\" };\n IfcReinforcedSoilTypeEnum.REPLACED = { type: 3, value: \"REPLACED\" };\n IfcReinforcedSoilTypeEnum.ROLLERCOMPACTED = { type: 3, value: \"ROLLERCOMPACTED\" };\n IfcReinforcedSoilTypeEnum.SURCHARGEPRELOADED = { type: 3, value: \"SURCHARGEPRELOADED\" };\n IfcReinforcedSoilTypeEnum.VERTICALLYDRAINED = { type: 3, value: \"VERTICALLYDRAINED\" };\n IfcReinforcedSoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcedSoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcedSoilTypeEnum = IfcReinforcedSoilTypeEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC4X32.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcReinforcingBarTypeEnum {\n }\n IfcReinforcingBarTypeEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarTypeEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarTypeEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarTypeEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarTypeEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarTypeEnum.SPACEBAR = { type: 3, value: \"SPACEBAR\" };\n IfcReinforcingBarTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingBarTypeEnum = IfcReinforcingBarTypeEnum;\n class IfcReinforcingMeshTypeEnum {\n }\n IfcReinforcingMeshTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingMeshTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingMeshTypeEnum = IfcReinforcingMeshTypeEnum;\n class IfcRoadPartTypeEnum {\n }\n IfcRoadPartTypeEnum.BICYCLECROSSING = { type: 3, value: \"BICYCLECROSSING\" };\n IfcRoadPartTypeEnum.BUS_STOP = { type: 3, value: \"BUS_STOP\" };\n IfcRoadPartTypeEnum.CARRIAGEWAY = { type: 3, value: \"CARRIAGEWAY\" };\n IfcRoadPartTypeEnum.CENTRALISLAND = { type: 3, value: \"CENTRALISLAND\" };\n IfcRoadPartTypeEnum.CENTRALRESERVE = { type: 3, value: \"CENTRALRESERVE\" };\n IfcRoadPartTypeEnum.HARDSHOULDER = { type: 3, value: \"HARDSHOULDER\" };\n IfcRoadPartTypeEnum.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcRoadPartTypeEnum.LAYBY = { type: 3, value: \"LAYBY\" };\n IfcRoadPartTypeEnum.PARKINGBAY = { type: 3, value: \"PARKINGBAY\" };\n IfcRoadPartTypeEnum.PASSINGBAY = { type: 3, value: \"PASSINGBAY\" };\n IfcRoadPartTypeEnum.PEDESTRIAN_CROSSING = { type: 3, value: \"PEDESTRIAN_CROSSING\" };\n IfcRoadPartTypeEnum.RAILWAYCROSSING = { type: 3, value: \"RAILWAYCROSSING\" };\n IfcRoadPartTypeEnum.REFUGEISLAND = { type: 3, value: \"REFUGEISLAND\" };\n IfcRoadPartTypeEnum.ROADSEGMENT = { type: 3, value: \"ROADSEGMENT\" };\n IfcRoadPartTypeEnum.ROADSIDE = { type: 3, value: \"ROADSIDE\" };\n IfcRoadPartTypeEnum.ROADSIDEPART = { type: 3, value: \"ROADSIDEPART\" };\n IfcRoadPartTypeEnum.ROADWAYPLATEAU = { type: 3, value: \"ROADWAYPLATEAU\" };\n IfcRoadPartTypeEnum.ROUNDABOUT = { type: 3, value: \"ROUNDABOUT\" };\n IfcRoadPartTypeEnum.SHOULDER = { type: 3, value: \"SHOULDER\" };\n IfcRoadPartTypeEnum.SIDEWALK = { type: 3, value: \"SIDEWALK\" };\n IfcRoadPartTypeEnum.SOFTSHOULDER = { type: 3, value: \"SOFTSHOULDER\" };\n IfcRoadPartTypeEnum.TOLLPLAZA = { type: 3, value: \"TOLLPLAZA\" };\n IfcRoadPartTypeEnum.TRAFFICISLAND = { type: 3, value: \"TRAFFICISLAND\" };\n IfcRoadPartTypeEnum.TRAFFICLANE = { type: 3, value: \"TRAFFICLANE\" };\n IfcRoadPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoadPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoadPartTypeEnum = IfcRoadPartTypeEnum;\n class IfcRoadTypeEnum {\n }\n IfcRoadTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoadTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoadTypeEnum = IfcRoadTypeEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.COMMISSIONINGENGINEER = { type: 3, value: \"COMMISSIONINGENGINEER\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IFC4X32.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC4X32.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IFC4X32.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.CONDUCTANCESENSOR = { type: 3, value: \"CONDUCTANCESENSOR\" };\n IfcSensorTypeEnum.CONTACTSENSOR = { type: 3, value: \"CONTACTSENSOR\" };\n IfcSensorTypeEnum.COSENSOR = { type: 3, value: \"COSENSOR\" };\n IfcSensorTypeEnum.EARTHQUAKESENSOR = { type: 3, value: \"EARTHQUAKESENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.FOREIGNOBJECTDETECTIONSENSOR = { type: 3, value: \"FOREIGNOBJECTDETECTIONSENSOR\" };\n IfcSensorTypeEnum.FROSTSENSOR = { type: 3, value: \"FROSTSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.IDENTIFIERSENSOR = { type: 3, value: \"IDENTIFIERSENSOR\" };\n IfcSensorTypeEnum.IONCONCENTRATIONSENSOR = { type: 3, value: \"IONCONCENTRATIONSENSOR\" };\n IfcSensorTypeEnum.LEVELSENSOR = { type: 3, value: \"LEVELSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.OBSTACLESENSOR = { type: 3, value: \"OBSTACLESENSOR\" };\n IfcSensorTypeEnum.PHSENSOR = { type: 3, value: \"PHSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.RADIATIONSENSOR = { type: 3, value: \"RADIATIONSENSOR\" };\n IfcSensorTypeEnum.RADIOACTIVITYSENSOR = { type: 3, value: \"RADIOACTIVITYSENSOR\" };\n IfcSensorTypeEnum.RAINSENSOR = { type: 3, value: \"RAINSENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SNOWDEPTHSENSOR = { type: 3, value: \"SNOWDEPTHSENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.TRAINSENSOR = { type: 3, value: \"TRAINSENSOR\" };\n IfcSensorTypeEnum.TURNOUTCLOSURESENSOR = { type: 3, value: \"TURNOUTCLOSURESENSOR\" };\n IfcSensorTypeEnum.WHEELSENSOR = { type: 3, value: \"WHEELSENSOR\" };\n IfcSensorTypeEnum.WINDSENSOR = { type: 3, value: \"WINDSENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSequenceEnum = IfcSequenceEnum;\n class IfcShadingDeviceTypeEnum {\n }\n IfcShadingDeviceTypeEnum.AWNING = { type: 3, value: \"AWNING\" };\n IfcShadingDeviceTypeEnum.JALOUSIE = { type: 3, value: \"JALOUSIE\" };\n IfcShadingDeviceTypeEnum.SHUTTER = { type: 3, value: \"SHUTTER\" };\n IfcShadingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcShadingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcShadingDeviceTypeEnum = IfcShadingDeviceTypeEnum;\n class IfcSignTypeEnum {\n }\n IfcSignTypeEnum.MARKER = { type: 3, value: \"MARKER\" };\n IfcSignTypeEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcSignTypeEnum.PICTORAL = { type: 3, value: \"PICTORAL\" };\n IfcSignTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSignTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSignTypeEnum = IfcSignTypeEnum;\n class IfcSignalTypeEnum {\n }\n IfcSignalTypeEnum.AUDIO = { type: 3, value: \"AUDIO\" };\n IfcSignalTypeEnum.MIXED = { type: 3, value: \"MIXED\" };\n IfcSignalTypeEnum.VISUAL = { type: 3, value: \"VISUAL\" };\n IfcSignalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSignalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSignalTypeEnum = IfcSignalTypeEnum;\n class IfcSimplePropertyTemplateTypeEnum {\n }\n IfcSimplePropertyTemplateTypeEnum.P_BOUNDEDVALUE = { type: 3, value: \"P_BOUNDEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_ENUMERATEDVALUE = { type: 3, value: \"P_ENUMERATEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_LISTVALUE = { type: 3, value: \"P_LISTVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_REFERENCEVALUE = { type: 3, value: \"P_REFERENCEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_SINGLEVALUE = { type: 3, value: \"P_SINGLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_TABLEVALUE = { type: 3, value: \"P_TABLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.Q_AREA = { type: 3, value: \"Q_AREA\" };\n IfcSimplePropertyTemplateTypeEnum.Q_COUNT = { type: 3, value: \"Q_COUNT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_LENGTH = { type: 3, value: \"Q_LENGTH\" };\n IfcSimplePropertyTemplateTypeEnum.Q_NUMBER = { type: 3, value: \"Q_NUMBER\" };\n IfcSimplePropertyTemplateTypeEnum.Q_TIME = { type: 3, value: \"Q_TIME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_VOLUME = { type: 3, value: \"Q_VOLUME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_WEIGHT = { type: 3, value: \"Q_WEIGHT\" };\n IFC4X32.IfcSimplePropertyTemplateTypeEnum = IfcSimplePropertyTemplateTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.APPROACH_SLAB = { type: 3, value: \"APPROACH_SLAB\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.SIDEWALK = { type: 3, value: \"SIDEWALK\" };\n IfcSlabTypeEnum.TRACKSLAB = { type: 3, value: \"TRACKSLAB\" };\n IfcSlabTypeEnum.WEARING = { type: 3, value: \"WEARING\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSolarDeviceTypeEnum {\n }\n IfcSolarDeviceTypeEnum.SOLARCOLLECTOR = { type: 3, value: \"SOLARCOLLECTOR\" };\n IfcSolarDeviceTypeEnum.SOLARPANEL = { type: 3, value: \"SOLARPANEL\" };\n IfcSolarDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSolarDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSolarDeviceTypeEnum = IfcSolarDeviceTypeEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.RADIATOR = { type: 3, value: \"RADIATOR\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.BERTH = { type: 3, value: \"BERTH\" };\n IfcSpaceTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcSpaceTypeEnum.GFA = { type: 3, value: \"GFA\" };\n IfcSpaceTypeEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcSpaceTypeEnum.PARKING = { type: 3, value: \"PARKING\" };\n IfcSpaceTypeEnum.SPACE = { type: 3, value: \"SPACE\" };\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcSpatialZoneTypeEnum {\n }\n IfcSpatialZoneTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcSpatialZoneTypeEnum.FIRESAFETY = { type: 3, value: \"FIRESAFETY\" };\n IfcSpatialZoneTypeEnum.INTERFERENCE = { type: 3, value: \"INTERFERENCE\" };\n IfcSpatialZoneTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcSpatialZoneTypeEnum.OCCUPANCY = { type: 3, value: \"OCCUPANCY\" };\n IfcSpatialZoneTypeEnum.RESERVATION = { type: 3, value: \"RESERVATION\" };\n IfcSpatialZoneTypeEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcSpatialZoneTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcSpatialZoneTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcSpatialZoneTypeEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcSpatialZoneTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpatialZoneTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpatialZoneTypeEnum = IfcSpatialZoneTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.LADDER = { type: 3, value: \"LADDER\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IFC4X32.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveActivityTypeEnum {\n }\n IfcStructuralCurveActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralCurveActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralCurveActivityTypeEnum.EQUIDISTANT = { type: 3, value: \"EQUIDISTANT\" };\n IfcStructuralCurveActivityTypeEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcStructuralCurveActivityTypeEnum.PARABOLA = { type: 3, value: \"PARABOLA\" };\n IfcStructuralCurveActivityTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcStructuralCurveActivityTypeEnum.SINUS = { type: 3, value: \"SINUS\" };\n IfcStructuralCurveActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralCurveActivityTypeEnum = IfcStructuralCurveActivityTypeEnum;\n class IfcStructuralCurveMemberTypeEnum {\n }\n IfcStructuralCurveMemberTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveMemberTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralCurveMemberTypeEnum = IfcStructuralCurveMemberTypeEnum;\n class IfcStructuralSurfaceActivityTypeEnum {\n }\n IfcStructuralSurfaceActivityTypeEnum.BILINEAR = { type: 3, value: \"BILINEAR\" };\n IfcStructuralSurfaceActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralSurfaceActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralSurfaceActivityTypeEnum.ISOCONTOUR = { type: 3, value: \"ISOCONTOUR\" };\n IfcStructuralSurfaceActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralSurfaceActivityTypeEnum = IfcStructuralSurfaceActivityTypeEnum;\n class IfcStructuralSurfaceMemberTypeEnum {\n }\n IfcStructuralSurfaceMemberTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralSurfaceMemberTypeEnum = IfcStructuralSurfaceMemberTypeEnum;\n class IfcSubContractResourceTypeEnum {\n }\n IfcSubContractResourceTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcSubContractResourceTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcSubContractResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSubContractResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSubContractResourceTypeEnum = IfcSubContractResourceTypeEnum;\n class IfcSurfaceFeatureTypeEnum {\n }\n IfcSurfaceFeatureTypeEnum.DEFECT = { type: 3, value: \"DEFECT\" };\n IfcSurfaceFeatureTypeEnum.HATCHMARKING = { type: 3, value: \"HATCHMARKING\" };\n IfcSurfaceFeatureTypeEnum.LINEMARKING = { type: 3, value: \"LINEMARKING\" };\n IfcSurfaceFeatureTypeEnum.MARK = { type: 3, value: \"MARK\" };\n IfcSurfaceFeatureTypeEnum.NONSKIDSURFACING = { type: 3, value: \"NONSKIDSURFACING\" };\n IfcSurfaceFeatureTypeEnum.PAVEMENTSURFACEMARKING = { type: 3, value: \"PAVEMENTSURFACEMARKING\" };\n IfcSurfaceFeatureTypeEnum.RUMBLESTRIP = { type: 3, value: \"RUMBLESTRIP\" };\n IfcSurfaceFeatureTypeEnum.SYMBOLMARKING = { type: 3, value: \"SYMBOLMARKING\" };\n IfcSurfaceFeatureTypeEnum.TAG = { type: 3, value: \"TAG\" };\n IfcSurfaceFeatureTypeEnum.TRANSVERSERUMBLESTRIP = { type: 3, value: \"TRANSVERSERUMBLESTRIP\" };\n IfcSurfaceFeatureTypeEnum.TREATMENT = { type: 3, value: \"TREATMENT\" };\n IfcSurfaceFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSurfaceFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSurfaceFeatureTypeEnum = IfcSurfaceFeatureTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IFC4X32.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.DIMMERSWITCH = { type: 3, value: \"DIMMERSWITCH\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.KEYPAD = { type: 3, value: \"KEYPAD\" };\n IfcSwitchingDeviceTypeEnum.MOMENTARYSWITCH = { type: 3, value: \"MOMENTARYSWITCH\" };\n IfcSwitchingDeviceTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcSwitchingDeviceTypeEnum.SELECTORSWITCH = { type: 3, value: \"SELECTORSWITCH\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.START_AND_STOP_EQUIPMENT = { type: 3, value: \"START_AND_STOP_EQUIPMENT\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcSystemFurnitureElementTypeEnum {\n }\n IfcSystemFurnitureElementTypeEnum.PANEL = { type: 3, value: \"PANEL\" };\n IfcSystemFurnitureElementTypeEnum.SUBRACK = { type: 3, value: \"SUBRACK\" };\n IfcSystemFurnitureElementTypeEnum.WORKSURFACE = { type: 3, value: \"WORKSURFACE\" };\n IfcSystemFurnitureElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSystemFurnitureElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSystemFurnitureElementTypeEnum = IfcSystemFurnitureElementTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.BASIN = { type: 3, value: \"BASIN\" };\n IfcTankTypeEnum.BREAKPRESSURE = { type: 3, value: \"BREAKPRESSURE\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.FEEDANDEXPANSION = { type: 3, value: \"FEEDANDEXPANSION\" };\n IfcTankTypeEnum.OILRETENTIONTRAY = { type: 3, value: \"OILRETENTIONTRAY\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.STORAGE = { type: 3, value: \"STORAGE\" };\n IfcTankTypeEnum.VESSEL = { type: 3, value: \"VESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTaskDurationEnum {\n }\n IfcTaskDurationEnum.ELAPSEDTIME = { type: 3, value: \"ELAPSEDTIME\" };\n IfcTaskDurationEnum.WORKTIME = { type: 3, value: \"WORKTIME\" };\n IfcTaskDurationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTaskDurationEnum = IfcTaskDurationEnum;\n class IfcTaskTypeEnum {\n }\n IfcTaskTypeEnum.ADJUSTMENT = { type: 3, value: \"ADJUSTMENT\" };\n IfcTaskTypeEnum.ATTENDANCE = { type: 3, value: \"ATTENDANCE\" };\n IfcTaskTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcTaskTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcTaskTypeEnum.DEMOLITION = { type: 3, value: \"DEMOLITION\" };\n IfcTaskTypeEnum.DISMANTLE = { type: 3, value: \"DISMANTLE\" };\n IfcTaskTypeEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcTaskTypeEnum.EMERGENCY = { type: 3, value: \"EMERGENCY\" };\n IfcTaskTypeEnum.INSPECTION = { type: 3, value: \"INSPECTION\" };\n IfcTaskTypeEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcTaskTypeEnum.LOGISTIC = { type: 3, value: \"LOGISTIC\" };\n IfcTaskTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcTaskTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcTaskTypeEnum.OPERATION = { type: 3, value: \"OPERATION\" };\n IfcTaskTypeEnum.REMOVAL = { type: 3, value: \"REMOVAL\" };\n IfcTaskTypeEnum.RENOVATION = { type: 3, value: \"RENOVATION\" };\n IfcTaskTypeEnum.SAFETY = { type: 3, value: \"SAFETY\" };\n IfcTaskTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcTaskTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcTaskTypeEnum.TESTING = { type: 3, value: \"TESTING\" };\n IfcTaskTypeEnum.TROUBLESHOOTING = { type: 3, value: \"TROUBLESHOOTING\" };\n IfcTaskTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTaskTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTaskTypeEnum = IfcTaskTypeEnum;\n class IfcTendonAnchorTypeEnum {\n }\n IfcTendonAnchorTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonAnchorTypeEnum.FIXED_END = { type: 3, value: \"FIXED_END\" };\n IfcTendonAnchorTypeEnum.TENSIONING_END = { type: 3, value: \"TENSIONING_END\" };\n IfcTendonAnchorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonAnchorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonAnchorTypeEnum = IfcTendonAnchorTypeEnum;\n class IfcTendonConduitTypeEnum {\n }\n IfcTendonConduitTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonConduitTypeEnum.DIABOLO = { type: 3, value: \"DIABOLO\" };\n IfcTendonConduitTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcTendonConduitTypeEnum.GROUTING_DUCT = { type: 3, value: \"GROUTING_DUCT\" };\n IfcTendonConduitTypeEnum.TRUMPET = { type: 3, value: \"TRUMPET\" };\n IfcTendonConduitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonConduitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonConduitTypeEnum = IfcTendonConduitTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IFC4X32.IfcTextPath = IfcTextPath;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTrackElementTypeEnum {\n }\n IfcTrackElementTypeEnum.BLOCKINGDEVICE = { type: 3, value: \"BLOCKINGDEVICE\" };\n IfcTrackElementTypeEnum.DERAILER = { type: 3, value: \"DERAILER\" };\n IfcTrackElementTypeEnum.FROG = { type: 3, value: \"FROG\" };\n IfcTrackElementTypeEnum.HALF_SET_OF_BLADES = { type: 3, value: \"HALF_SET_OF_BLADES\" };\n IfcTrackElementTypeEnum.SLEEPER = { type: 3, value: \"SLEEPER\" };\n IfcTrackElementTypeEnum.SPEEDREGULATOR = { type: 3, value: \"SPEEDREGULATOR\" };\n IfcTrackElementTypeEnum.TRACKENDOFALIGNMENT = { type: 3, value: \"TRACKENDOFALIGNMENT\" };\n IfcTrackElementTypeEnum.VEHICLESTOP = { type: 3, value: \"VEHICLESTOP\" };\n IfcTrackElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTrackElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTrackElementTypeEnum = IfcTrackElementTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CHOPPER = { type: 3, value: \"CHOPPER\" };\n IfcTransformerTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.INVERTER = { type: 3, value: \"INVERTER\" };\n IfcTransformerTypeEnum.RECTIFIER = { type: 3, value: \"RECTIFIER\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IFC4X32.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.CRANEWAY = { type: 3, value: \"CRANEWAY\" };\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.HAULINGGEAR = { type: 3, value: \"HAULINGGEAR\" };\n IfcTransportElementTypeEnum.LIFTINGGEAR = { type: 3, value: \"LIFTINGGEAR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryControlElementTypeEnum {\n }\n IfcUnitaryControlElementTypeEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcUnitaryControlElementTypeEnum.BASESTATIONCONTROLLER = { type: 3, value: \"BASESTATIONCONTROLLER\" };\n IfcUnitaryControlElementTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcUnitaryControlElementTypeEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcUnitaryControlElementTypeEnum.GASDETECTIONPANEL = { type: 3, value: \"GASDETECTIONPANEL\" };\n IfcUnitaryControlElementTypeEnum.HUMIDISTAT = { type: 3, value: \"HUMIDISTAT\" };\n IfcUnitaryControlElementTypeEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcUnitaryControlElementTypeEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcUnitaryControlElementTypeEnum.THERMOSTAT = { type: 3, value: \"THERMOSTAT\" };\n IfcUnitaryControlElementTypeEnum.WEATHERSTATION = { type: 3, value: \"WEATHERSTATION\" };\n IfcUnitaryControlElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryControlElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcUnitaryControlElementTypeEnum = IfcUnitaryControlElementTypeEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.DEHUMIDIFIER = { type: 3, value: \"DEHUMIDIFIER\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVehicleTypeEnum {\n }\n IfcVehicleTypeEnum.CARGO = { type: 3, value: \"CARGO\" };\n IfcVehicleTypeEnum.ROLLINGSTOCK = { type: 3, value: \"ROLLINGSTOCK\" };\n IfcVehicleTypeEnum.VEHICLE = { type: 3, value: \"VEHICLE\" };\n IfcVehicleTypeEnum.VEHICLEAIR = { type: 3, value: \"VEHICLEAIR\" };\n IfcVehicleTypeEnum.VEHICLEMARINE = { type: 3, value: \"VEHICLEMARINE\" };\n IfcVehicleTypeEnum.VEHICLETRACKED = { type: 3, value: \"VEHICLETRACKED\" };\n IfcVehicleTypeEnum.VEHICLEWHEELED = { type: 3, value: \"VEHICLEWHEELED\" };\n IfcVehicleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVehicleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVehicleTypeEnum = IfcVehicleTypeEnum;\n class IfcVibrationDamperTypeEnum {\n }\n IfcVibrationDamperTypeEnum.AXIAL_YIELD = { type: 3, value: \"AXIAL_YIELD\" };\n IfcVibrationDamperTypeEnum.BENDING_YIELD = { type: 3, value: \"BENDING_YIELD\" };\n IfcVibrationDamperTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcVibrationDamperTypeEnum.RUBBER = { type: 3, value: \"RUBBER\" };\n IfcVibrationDamperTypeEnum.SHEAR_YIELD = { type: 3, value: \"SHEAR_YIELD\" };\n IfcVibrationDamperTypeEnum.VISCOUS = { type: 3, value: \"VISCOUS\" };\n IfcVibrationDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVibrationDamperTypeEnum = IfcVibrationDamperTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.BASE = { type: 3, value: \"BASE\" };\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcVirtualElementTypeEnum {\n }\n IfcVirtualElementTypeEnum.BOUNDARY = { type: 3, value: \"BOUNDARY\" };\n IfcVirtualElementTypeEnum.CLEARANCE = { type: 3, value: \"CLEARANCE\" };\n IfcVirtualElementTypeEnum.PROVISIONFORVOID = { type: 3, value: \"PROVISIONFORVOID\" };\n IfcVirtualElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVirtualElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVirtualElementTypeEnum = IfcVirtualElementTypeEnum;\n class IfcVoidingFeatureTypeEnum {\n }\n IfcVoidingFeatureTypeEnum.CHAMFER = { type: 3, value: \"CHAMFER\" };\n IfcVoidingFeatureTypeEnum.CUTOUT = { type: 3, value: \"CUTOUT\" };\n IfcVoidingFeatureTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcVoidingFeatureTypeEnum.HOLE = { type: 3, value: \"HOLE\" };\n IfcVoidingFeatureTypeEnum.MITER = { type: 3, value: \"MITER\" };\n IfcVoidingFeatureTypeEnum.NOTCH = { type: 3, value: \"NOTCH\" };\n IfcVoidingFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVoidingFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVoidingFeatureTypeEnum = IfcVoidingFeatureTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.MOVABLE = { type: 3, value: \"MOVABLE\" };\n IfcWallTypeEnum.PARAPET = { type: 3, value: \"PARAPET\" };\n IfcWallTypeEnum.PARTITIONING = { type: 3, value: \"PARTITIONING\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.RETAININGWALL = { type: 3, value: \"RETAININGWALL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.SOLIDWALL = { type: 3, value: \"SOLIDWALL\" };\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.WAVEWALL = { type: 3, value: \"WAVEWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWindowTypeEnum {\n }\n IfcWindowTypeEnum.LIGHTDOME = { type: 3, value: \"LIGHTDOME\" };\n IfcWindowTypeEnum.SKYLIGHT = { type: 3, value: \"SKYLIGHT\" };\n IfcWindowTypeEnum.WINDOW = { type: 3, value: \"WINDOW\" };\n IfcWindowTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowTypeEnum = IfcWindowTypeEnum;\n class IfcWindowTypePartitioningEnum {\n }\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypePartitioningEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowTypePartitioningEnum = IfcWindowTypePartitioningEnum;\n class IfcWorkCalendarTypeEnum {\n }\n IfcWorkCalendarTypeEnum.FIRSTSHIFT = { type: 3, value: \"FIRSTSHIFT\" };\n IfcWorkCalendarTypeEnum.SECONDSHIFT = { type: 3, value: \"SECONDSHIFT\" };\n IfcWorkCalendarTypeEnum.THIRDSHIFT = { type: 3, value: \"THIRDSHIFT\" };\n IfcWorkCalendarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkCalendarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkCalendarTypeEnum = IfcWorkCalendarTypeEnum;\n class IfcWorkPlanTypeEnum {\n }\n IfcWorkPlanTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkPlanTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkPlanTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkPlanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkPlanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkPlanTypeEnum = IfcWorkPlanTypeEnum;\n class IfcWorkScheduleTypeEnum {\n }\n IfcWorkScheduleTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkScheduleTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkScheduleTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkScheduleTypeEnum = IfcWorkScheduleTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC4X32.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC4X32.IfcAddress = IfcAddress;\n class IfcAlignmentParameterSegment extends IfcLineObject {\n constructor(StartTag, EndTag) {\n super();\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.type = 2879124712;\n }\n }\n IFC4X32.IfcAlignmentParameterSegment = IfcAlignmentParameterSegment;\n class IfcAlignmentVerticalSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartDistAlong, HorizontalLength, StartHeight, StartGradient, EndGradient, RadiusOfCurvature, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartDistAlong = StartDistAlong;\n this.HorizontalLength = HorizontalLength;\n this.StartHeight = StartHeight;\n this.StartGradient = StartGradient;\n this.EndGradient = EndGradient;\n this.RadiusOfCurvature = RadiusOfCurvature;\n this.PredefinedType = PredefinedType;\n this.type = 3633395639;\n }\n }\n IFC4X32.IfcAlignmentVerticalSegment = IfcAlignmentVerticalSegment;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC4X32.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 411424972;\n }\n }\n IFC4X32.IfcAppliedValue = IfcAppliedValue;\n class IfcApproval extends IfcLineObject {\n constructor(Identifier, Name, Description, TimeOfApproval, Status, Level, Qualifier, RequestingApproval, GivingApproval) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.TimeOfApproval = TimeOfApproval;\n this.Status = Status;\n this.Level = Level;\n this.Qualifier = Qualifier;\n this.RequestingApproval = RequestingApproval;\n this.GivingApproval = GivingApproval;\n this.type = 130549933;\n }\n }\n IFC4X32.IfcApproval = IfcApproval;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC4X32.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByLengthX, TranslationalStiffnessByLengthY, TranslationalStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByLengthX = TranslationalStiffnessByLengthX;\n this.TranslationalStiffnessByLengthY = TranslationalStiffnessByLengthY;\n this.TranslationalStiffnessByLengthZ = TranslationalStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC4X32.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByAreaX, TranslationalStiffnessByAreaY, TranslationalStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByAreaX = TranslationalStiffnessByAreaX;\n this.TranslationalStiffnessByAreaY = TranslationalStiffnessByAreaY;\n this.TranslationalStiffnessByAreaZ = TranslationalStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC4X32.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC4X32.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC4X32.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC4X32.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC4X32.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC4X32.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConnectionVolumeGeometry extends IfcConnectionGeometry {\n constructor(VolumeOnRelatingElement, VolumeOnRelatedElement) {\n super();\n this.VolumeOnRelatingElement = VolumeOnRelatingElement;\n this.VolumeOnRelatedElement = VolumeOnRelatedElement;\n this.type = 775493141;\n }\n }\n IFC4X32.IfcConnectionVolumeGeometry = IfcConnectionVolumeGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC4X32.IfcConstraint = IfcConstraint;\n class IfcCoordinateOperation extends IfcLineObject {\n constructor(SourceCRS, TargetCRS) {\n super();\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.type = 1785450214;\n }\n }\n IFC4X32.IfcCoordinateOperation = IfcCoordinateOperation;\n class IfcCoordinateReferenceSystem extends IfcLineObject {\n constructor(Name, Description, GeodeticDatum, VerticalDatum) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.type = 1466758467;\n }\n }\n IFC4X32.IfcCoordinateReferenceSystem = IfcCoordinateReferenceSystem;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 602808272;\n }\n }\n IFC4X32.IfcCostValue = IfcCostValue;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType, Name) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.Name = Name;\n this.type = 1765591967;\n }\n }\n IFC4X32.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC4X32.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC4X32.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcExternalInformation extends IfcLineObject {\n constructor() {\n super();\n this.type = 4294318154;\n }\n }\n IFC4X32.IfcExternalInformation = IfcExternalInformation;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, Identification, Name) {\n super();\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC4X32.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC4X32.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC4X32.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC4X32.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC4X32.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC4X32.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcExternalInformation {\n constructor(Name, Version, Publisher, VersionDate, Location, Description) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.Location = Location;\n this.Description = Description;\n this.type = 2655187982;\n }\n }\n IFC4X32.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, Language, ReferencedLibrary) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Language = Language;\n this.ReferencedLibrary = ReferencedLibrary;\n this.type = 3452421091;\n }\n }\n IFC4X32.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC4X32.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC4X32.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcMapConversion extends IfcCoordinateOperation {\n constructor(SourceCRS, TargetCRS, Eastings, Northings, OrthogonalHeight, XAxisAbscissa, XAxisOrdinate, Scale, ScaleY, ScaleZ) {\n super(SourceCRS, TargetCRS);\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.Eastings = Eastings;\n this.Northings = Northings;\n this.OrthogonalHeight = OrthogonalHeight;\n this.XAxisAbscissa = XAxisAbscissa;\n this.XAxisOrdinate = XAxisOrdinate;\n this.Scale = Scale;\n this.ScaleY = ScaleY;\n this.ScaleZ = ScaleZ;\n this.type = 3057273783;\n }\n }\n IFC4X32.IfcMapConversion = IfcMapConversion;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC4X32.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 760658860;\n }\n }\n IFC4X32.IfcMaterialDefinition = IfcMaterialDefinition;\n class IfcMaterialLayer extends IfcMaterialDefinition {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.type = 248100487;\n }\n }\n IFC4X32.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcMaterialDefinition {\n constructor(MaterialLayers, LayerSetName, Description) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.Description = Description;\n this.type = 3303938423;\n }\n }\n IFC4X32.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerWithOffsets extends IfcMaterialLayer {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority, OffsetDirection, OffsetValues) {\n super(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority);\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.OffsetDirection = OffsetDirection;\n this.OffsetValues = OffsetValues;\n this.type = 1847252529;\n }\n }\n IFC4X32.IfcMaterialLayerWithOffsets = IfcMaterialLayerWithOffsets;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC4X32.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProfile extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Profile, Priority, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.type = 2235152071;\n }\n }\n IFC4X32.IfcMaterialProfile = IfcMaterialProfile;\n class IfcMaterialProfileSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialProfiles, CompositeProfile) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialProfiles = MaterialProfiles;\n this.CompositeProfile = CompositeProfile;\n this.type = 164193824;\n }\n }\n IFC4X32.IfcMaterialProfileSet = IfcMaterialProfileSet;\n class IfcMaterialProfileWithOffsets extends IfcMaterialProfile {\n constructor(Name, Description, Material, Profile, Priority, Category, OffsetValues) {\n super(Name, Description, Material, Profile, Priority, Category);\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.OffsetValues = OffsetValues;\n this.type = 552965576;\n }\n }\n IFC4X32.IfcMaterialProfileWithOffsets = IfcMaterialProfileWithOffsets;\n class IfcMaterialUsageDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 1507914824;\n }\n }\n IFC4X32.IfcMaterialUsageDefinition = IfcMaterialUsageDefinition;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC4X32.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue, ReferencePath) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.ReferencePath = ReferencePath;\n this.type = 3368373690;\n }\n }\n IFC4X32.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC4X32.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC4X32.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor(PlacementRelTo) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.type = 3701648758;\n }\n }\n IFC4X32.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, LogicalAggregator, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.LogicalAggregator = LogicalAggregator;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC4X32.IfcObjective = IfcObjective;\n class IfcOrganization extends IfcLineObject {\n constructor(Identification, Name, Description, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC4X32.IfcOrganization = IfcOrganization;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC4X32.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Identification, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC4X32.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC4X32.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC4X32.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC4X32.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC4X32.IfcPostalAddress = IfcPostalAddress;\n class IfcPresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 677532197;\n }\n }\n IFC4X32.IfcPresentationItem = IfcPresentationItem;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC4X32.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC4X32.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC4X32.IfcPresentationStyle = IfcPresentationStyle;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC4X32.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC4X32.IfcProfileDef = IfcProfileDef;\n class IfcProjectedCRS extends IfcCoordinateReferenceSystem {\n constructor(Name, Description, GeodeticDatum, VerticalDatum, MapProjection, MapZone, MapUnit) {\n super(Name, Description, GeodeticDatum, VerticalDatum);\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.MapProjection = MapProjection;\n this.MapZone = MapZone;\n this.MapUnit = MapUnit;\n this.type = 3843373140;\n }\n }\n IFC4X32.IfcProjectedCRS = IfcProjectedCRS;\n class IfcPropertyAbstraction extends IfcLineObject {\n constructor() {\n super();\n this.type = 986844984;\n }\n }\n IFC4X32.IfcPropertyAbstraction = IfcPropertyAbstraction;\n class IfcPropertyEnumeration extends IfcPropertyAbstraction {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC4X32.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.Formula = Formula;\n this.type = 2044713172;\n }\n }\n IFC4X32.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.Formula = Formula;\n this.type = 2093928680;\n }\n }\n IFC4X32.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.Formula = Formula;\n this.type = 931644368;\n }\n }\n IFC4X32.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityNumber extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, NumberValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.NumberValue = NumberValue;\n this.Formula = Formula;\n this.type = 2691318326;\n }\n }\n IFC4X32.IfcQuantityNumber = IfcQuantityNumber;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.Formula = Formula;\n this.type = 3252649465;\n }\n }\n IFC4X32.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.Formula = Formula;\n this.type = 2405470396;\n }\n }\n IFC4X32.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.Formula = Formula;\n this.type = 825690147;\n }\n }\n IFC4X32.IfcQuantityWeight = IfcQuantityWeight;\n class IfcRecurrencePattern extends IfcLineObject {\n constructor(RecurrenceType, DayComponent, WeekdayComponent, MonthComponent, Position, Interval, Occurrences, TimePeriods) {\n super();\n this.RecurrenceType = RecurrenceType;\n this.DayComponent = DayComponent;\n this.WeekdayComponent = WeekdayComponent;\n this.MonthComponent = MonthComponent;\n this.Position = Position;\n this.Interval = Interval;\n this.Occurrences = Occurrences;\n this.TimePeriods = TimePeriods;\n this.type = 3915482550;\n }\n }\n IFC4X32.IfcRecurrencePattern = IfcRecurrencePattern;\n class IfcReference extends IfcLineObject {\n constructor(TypeIdentifier, AttributeIdentifier, InstanceName, ListPositions, InnerReference) {\n super();\n this.TypeIdentifier = TypeIdentifier;\n this.AttributeIdentifier = AttributeIdentifier;\n this.InstanceName = InstanceName;\n this.ListPositions = ListPositions;\n this.InnerReference = InnerReference;\n this.type = 2433181523;\n }\n }\n IFC4X32.IfcReference = IfcReference;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC4X32.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC4X32.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC4X32.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC4X32.IfcRepresentationMap = IfcRepresentationMap;\n class IfcResourceLevelRelationship extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2439245199;\n }\n }\n IFC4X32.IfcResourceLevelRelationship = IfcResourceLevelRelationship;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC4X32.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Prefix, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC4X32.IfcSIUnit = IfcSIUnit;\n class IfcSchedulingTime extends IfcLineObject {\n constructor(Name, DataOrigin, UserDefinedDataOrigin) {\n super();\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.type = 1054537805;\n }\n }\n IFC4X32.IfcSchedulingTime = IfcSchedulingTime;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC4X32.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC4X32.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC4X32.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC4X32.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC4X32.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadConfiguration extends IfcStructuralLoad {\n constructor(Name, Values, Locations) {\n super(Name);\n this.Name = Name;\n this.Values = Values;\n this.Locations = Locations;\n this.type = 3478079324;\n }\n }\n IFC4X32.IfcStructuralLoadConfiguration = IfcStructuralLoadConfiguration;\n class IfcStructuralLoadOrResult extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 609421318;\n }\n }\n IFC4X32.IfcStructuralLoadOrResult = IfcStructuralLoadOrResult;\n class IfcStructuralLoadStatic extends IfcStructuralLoadOrResult {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC4X32.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaTConstant, DeltaTY, DeltaTZ) {\n super(Name);\n this.Name = Name;\n this.DeltaTConstant = DeltaTConstant;\n this.DeltaTY = DeltaTY;\n this.DeltaTZ = DeltaTZ;\n this.type = 3408363356;\n }\n }\n IFC4X32.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC4X32.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC4X32.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC4X32.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceReinforcementArea extends IfcStructuralLoadOrResult {\n constructor(Name, SurfaceReinforcement1, SurfaceReinforcement2, ShearReinforcement) {\n super(Name);\n this.Name = Name;\n this.SurfaceReinforcement1 = SurfaceReinforcement1;\n this.SurfaceReinforcement2 = SurfaceReinforcement2;\n this.ShearReinforcement = ShearReinforcement;\n this.type = 2934153892;\n }\n }\n IFC4X32.IfcSurfaceReinforcementArea = IfcSurfaceReinforcementArea;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC4X32.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcPresentationItem {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC4X32.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcPresentationItem {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC4X32.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcPresentationItem {\n constructor(SurfaceColour, Transparency) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.type = 846575682;\n }\n }\n IFC4X32.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcPresentationItem {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC4X32.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcPresentationItem {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.type = 626085974;\n }\n }\n IFC4X32.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows, Columns) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.Columns = Columns;\n this.type = 985171141;\n }\n }\n IFC4X32.IfcTable = IfcTable;\n class IfcTableColumn extends IfcLineObject {\n constructor(Identifier, Name, Description, Unit, ReferencePath) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.ReferencePath = ReferencePath;\n this.type = 2043862942;\n }\n }\n IFC4X32.IfcTableColumn = IfcTableColumn;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC4X32.IfcTableRow = IfcTableRow;\n class IfcTaskTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.type = 1549132990;\n }\n }\n IFC4X32.IfcTaskTime = IfcTaskTime;\n class IfcTaskTimeRecurring extends IfcTaskTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion, Recurrence) {\n super(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.Recurrence = Recurrence;\n this.type = 2771591690;\n }\n }\n IFC4X32.IfcTaskTimeRecurring = IfcTaskTimeRecurring;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL, MessagingIDs) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.MessagingIDs = MessagingIDs;\n this.type = 912023232;\n }\n }\n IFC4X32.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 1447204868;\n }\n }\n IFC4X32.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleForDefinedFont extends IfcPresentationItem {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC4X32.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcPresentationItem {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC4X32.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextureCoordinate extends IfcPresentationItem {\n constructor(Maps) {\n super();\n this.Maps = Maps;\n this.type = 280115917;\n }\n }\n IFC4X32.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Maps, Mode, Parameter) {\n super(Maps);\n this.Maps = Maps;\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC4X32.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureCoordinateIndices extends IfcLineObject {\n constructor(TexCoordIndex, TexCoordsOf) {\n super();\n this.TexCoordIndex = TexCoordIndex;\n this.TexCoordsOf = TexCoordsOf;\n this.type = 222769930;\n }\n }\n IFC4X32.IfcTextureCoordinateIndices = IfcTextureCoordinateIndices;\n class IfcTextureCoordinateIndicesWithVoids extends IfcTextureCoordinateIndices {\n constructor(TexCoordIndex, TexCoordsOf, InnerTexCoordIndices) {\n super(TexCoordIndex, TexCoordsOf);\n this.TexCoordIndex = TexCoordIndex;\n this.TexCoordsOf = TexCoordsOf;\n this.InnerTexCoordIndices = InnerTexCoordIndices;\n this.type = 1010789467;\n }\n }\n IFC4X32.IfcTextureCoordinateIndicesWithVoids = IfcTextureCoordinateIndicesWithVoids;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(Maps, Vertices, MappedTo) {\n super(Maps);\n this.Maps = Maps;\n this.Vertices = Vertices;\n this.MappedTo = MappedTo;\n this.type = 2552916305;\n }\n }\n IFC4X32.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcPresentationItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC4X32.IfcTextureVertex = IfcTextureVertex;\n class IfcTextureVertexList extends IfcPresentationItem {\n constructor(TexCoordsList) {\n super();\n this.TexCoordsList = TexCoordsList;\n this.type = 3611470254;\n }\n }\n IFC4X32.IfcTextureVertexList = IfcTextureVertexList;\n class IfcTimePeriod extends IfcLineObject {\n constructor(StartTime, EndTime) {\n super();\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.type = 1199560280;\n }\n }\n IFC4X32.IfcTimePeriod = IfcTimePeriod;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC4X32.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC4X32.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC4X32.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC4X32.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC4X32.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC4X32.IfcVertex = IfcVertex;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC4X32.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC4X32.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWorkTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, RecurrencePattern, StartDate, FinishDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.RecurrencePattern = RecurrencePattern;\n this.StartDate = StartDate;\n this.FinishDate = FinishDate;\n this.type = 1236880293;\n }\n }\n IFC4X32.IfcWorkTime = IfcWorkTime;\n class IfcAlignmentCantSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartDistAlong, HorizontalLength, StartCantLeft, EndCantLeft, StartCantRight, EndCantRight, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartDistAlong = StartDistAlong;\n this.HorizontalLength = HorizontalLength;\n this.StartCantLeft = StartCantLeft;\n this.EndCantLeft = EndCantLeft;\n this.StartCantRight = StartCantRight;\n this.EndCantRight = EndCantRight;\n this.PredefinedType = PredefinedType;\n this.type = 3752311538;\n }\n }\n IFC4X32.IfcAlignmentCantSegment = IfcAlignmentCantSegment;\n class IfcAlignmentHorizontalSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartPoint, StartDirection, StartRadiusOfCurvature, EndRadiusOfCurvature, SegmentLength, GravityCenterLineHeight, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartPoint = StartPoint;\n this.StartDirection = StartDirection;\n this.StartRadiusOfCurvature = StartRadiusOfCurvature;\n this.EndRadiusOfCurvature = EndRadiusOfCurvature;\n this.SegmentLength = SegmentLength;\n this.GravityCenterLineHeight = GravityCenterLineHeight;\n this.PredefinedType = PredefinedType;\n this.type = 536804194;\n }\n }\n IFC4X32.IfcAlignmentHorizontalSegment = IfcAlignmentHorizontalSegment;\n class IfcApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingApproval, RelatedApprovals) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingApproval = RelatingApproval;\n this.RelatedApprovals = RelatedApprovals;\n this.type = 3869604511;\n }\n }\n IFC4X32.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC4X32.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC4X32.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC4X32.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC4X32.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC4X32.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassification extends IfcExternalInformation {\n constructor(Source, Edition, EditionDate, Name, Description, Specification, ReferenceTokens) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.Description = Description;\n this.Specification = Specification;\n this.ReferenceTokens = ReferenceTokens;\n this.type = 747523909;\n }\n }\n IFC4X32.IfcClassification = IfcClassification;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, Identification, Name, ReferencedSource, Description, Sort) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.Description = Description;\n this.Sort = Sort;\n this.type = 647927063;\n }\n }\n IFC4X32.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgbList extends IfcPresentationItem {\n constructor(ColourList) {\n super();\n this.ColourList = ColourList;\n this.type = 3285139300;\n }\n }\n IFC4X32.IfcColourRgbList = IfcColourRgbList;\n class IfcColourSpecification extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC4X32.IfcColourSpecification = IfcColourSpecification;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC4X32.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC4X32.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC4X32.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC4X32.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC4X32.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC4X32.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcConversionBasedUnitWithOffset extends IfcConversionBasedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor, ConversionOffset) {\n super(Dimensions, UnitType, Name, ConversionFactor);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.ConversionOffset = ConversionOffset;\n this.type = 2713554722;\n }\n }\n IFC4X32.IfcConversionBasedUnitWithOffset = IfcConversionBasedUnitWithOffset;\n class IfcCurrencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC4X32.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 3800577675;\n }\n }\n IFC4X32.IfcCurveStyle = IfcCurveStyle;\n class IfcCurveStyleFont extends IfcPresentationItem {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC4X32.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcPresentationItem {\n constructor(Name, CurveStyleFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveStyleFont = CurveStyleFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC4X32.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcPresentationItem {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC4X32.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC4X32.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDocumentInformation extends IfcExternalInformation {\n constructor(Identification, Name, Description, Location, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC4X32.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingDocument, RelatedDocuments, RelationshipType) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC4X32.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, ReferencedDocument) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.ReferencedDocument = ReferencedDocument;\n this.type = 3732053477;\n }\n }\n IFC4X32.IfcDocumentReference = IfcDocumentReference;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC4X32.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC4X32.IfcEdgeCurve = IfcEdgeCurve;\n class IfcEventTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ActualDate, EarlyDate, LateDate, ScheduleDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ActualDate = ActualDate;\n this.EarlyDate = EarlyDate;\n this.LateDate = LateDate;\n this.ScheduleDate = ScheduleDate;\n this.type = 211053100;\n }\n }\n IFC4X32.IfcEventTime = IfcEventTime;\n class IfcExtendedProperties extends IfcPropertyAbstraction {\n constructor(Name, Description, Properties2) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.type = 297599258;\n }\n }\n IFC4X32.IfcExtendedProperties = IfcExtendedProperties;\n class IfcExternalReferenceRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingReference, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingReference = RelatingReference;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1437805879;\n }\n }\n IFC4X32.IfcExternalReferenceRelationship = IfcExternalReferenceRelationship;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC4X32.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC4X32.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC4X32.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC4X32.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC4X32.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 738692330;\n }\n }\n IFC4X32.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC4X32.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC4X32.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, WorldCoordinateSystem, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, WorldCoordinateSystem, null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC4X32.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC4X32.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, PlacementLocation, PlacementRefDirection) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC4X32.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC4X32.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, URLReference) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.URLReference = URLReference;\n this.type = 3905492369;\n }\n }\n IFC4X32.IfcImageTexture = IfcImageTexture;\n class IfcIndexedColourMap extends IfcPresentationItem {\n constructor(MappedTo, Opacity, Colours, ColourIndex) {\n super();\n this.MappedTo = MappedTo;\n this.Opacity = Opacity;\n this.Colours = Colours;\n this.ColourIndex = ColourIndex;\n this.type = 3570813810;\n }\n }\n IFC4X32.IfcIndexedColourMap = IfcIndexedColourMap;\n class IfcIndexedTextureMap extends IfcTextureCoordinate {\n constructor(Maps, MappedTo, TexCoords) {\n super(Maps);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.type = 1437953363;\n }\n }\n IFC4X32.IfcIndexedTextureMap = IfcIndexedTextureMap;\n class IfcIndexedTriangleTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndex) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndex = TexCoordIndex;\n this.type = 2133299955;\n }\n }\n IFC4X32.IfcIndexedTriangleTextureMap = IfcIndexedTriangleTextureMap;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC4X32.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLagTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, LagValue, DurationType) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.LagValue = LagValue;\n this.DurationType = DurationType;\n this.type = 1585845231;\n }\n }\n IFC4X32.IfcLagTime = IfcLagTime;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC4X32.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC4X32.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC4X32.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC4X32.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC4X32.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC4X32.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLinearPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement, CartesianPosition) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.CartesianPosition = CartesianPosition;\n this.type = 388784114;\n }\n }\n IFC4X32.IfcLinearPlacement = IfcLinearPlacement;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC4X32.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC4X32.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC4X32.IfcMappedItem = IfcMappedItem;\n class IfcMaterial extends IfcMaterialDefinition {\n constructor(Name, Description, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.type = 1838606355;\n }\n }\n IFC4X32.IfcMaterial = IfcMaterial;\n class IfcMaterialConstituent extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Fraction, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Fraction = Fraction;\n this.Category = Category;\n this.type = 3708119e3;\n }\n }\n IFC4X32.IfcMaterialConstituent = IfcMaterialConstituent;\n class IfcMaterialConstituentSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialConstituents) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialConstituents = MaterialConstituents;\n this.type = 2852063980;\n }\n }\n IFC4X32.IfcMaterialConstituentSet = IfcMaterialConstituentSet;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC4X32.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMaterialLayerSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine, ReferenceExtent) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 1303795690;\n }\n }\n IFC4X32.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialProfileSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent) {\n super();\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 3079605661;\n }\n }\n IFC4X32.IfcMaterialProfileSetUsage = IfcMaterialProfileSetUsage;\n class IfcMaterialProfileSetUsageTapering extends IfcMaterialProfileSetUsage {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent, ForProfileEndSet, CardinalEndPoint) {\n super(ForProfileSet, CardinalPoint, ReferenceExtent);\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.ForProfileEndSet = ForProfileEndSet;\n this.CardinalEndPoint = CardinalEndPoint;\n this.type = 3404854881;\n }\n }\n IFC4X32.IfcMaterialProfileSetUsageTapering = IfcMaterialProfileSetUsageTapering;\n class IfcMaterialProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, Material) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC4X32.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMaterialRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMaterial, RelatedMaterials, MaterialExpression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMaterial = RelatingMaterial;\n this.RelatedMaterials = RelatedMaterials;\n this.MaterialExpression = MaterialExpression;\n this.type = 853536259;\n }\n }\n IFC4X32.IfcMaterialRelationship = IfcMaterialRelationship;\n class IfcMirroredProfileDef extends IfcDerivedProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName, ParentProfile, Operator, Label);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 2998442950;\n }\n }\n IFC4X32.IfcMirroredProfileDef = IfcMirroredProfileDef;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC4X32.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOpenCrossProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, HorizontalWidths, Widths, Slopes, Tags, OffsetPoint) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.HorizontalWidths = HorizontalWidths;\n this.Widths = Widths;\n this.Slopes = Slopes;\n this.Tags = Tags;\n this.OffsetPoint = OffsetPoint;\n this.type = 182550632;\n }\n }\n IFC4X32.IfcOpenCrossProfileDef = IfcOpenCrossProfileDef;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC4X32.IfcOpenShell = IfcOpenShell;\n class IfcOrganizationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC4X32.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeStart, EdgeElement, Orientation) {\n super(EdgeStart, new Handle(0));\n this.EdgeStart = EdgeStart;\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC4X32.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC4X32.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC4X32.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC4X32.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC4X32.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC4X32.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC4X32.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC4X32.IfcPoint = IfcPoint;\n class IfcPointByDistanceExpression extends IfcPoint {\n constructor(DistanceAlong, OffsetLateral, OffsetVertical, OffsetLongitudinal, BasisCurve) {\n super();\n this.DistanceAlong = DistanceAlong;\n this.OffsetLateral = OffsetLateral;\n this.OffsetVertical = OffsetVertical;\n this.OffsetLongitudinal = OffsetLongitudinal;\n this.BasisCurve = BasisCurve;\n this.type = 2165702409;\n }\n }\n IFC4X32.IfcPointByDistanceExpression = IfcPointByDistanceExpression;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC4X32.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC4X32.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC4X32.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC4X32.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedItem extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC4X32.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedProperties extends IfcPropertyAbstraction {\n constructor() {\n super();\n this.type = 3778827333;\n }\n }\n IFC4X32.IfcPreDefinedProperties = IfcPreDefinedProperties;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC4X32.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC4X32.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcProfileProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, ProfileDefinition) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC4X32.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcPropertyAbstraction {\n constructor(Name, Specification) {\n super();\n this.Name = Name;\n this.Specification = Specification;\n this.type = 2598011224;\n }\n }\n IFC4X32.IfcProperty = IfcProperty;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC4X32.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyDependencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, DependingProperty, DependantProperty, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC4X32.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC4X32.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertyTemplateDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1482703590;\n }\n }\n IFC4X32.IfcPropertyTemplateDefinition = IfcPropertyTemplateDefinition;\n class IfcQuantitySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2090586900;\n }\n }\n IFC4X32.IfcQuantitySet = IfcQuantitySet;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC4X32.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC4X32.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementBarProperties extends IfcPreDefinedProperties {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC4X32.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC4X32.IfcRelationship = IfcRelationship;\n class IfcResourceApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatedResourceObjects, RelatingApproval) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 2943643501;\n }\n }\n IFC4X32.IfcResourceApprovalRelationship = IfcResourceApprovalRelationship;\n class IfcResourceConstraintRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingConstraint, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1608871552;\n }\n }\n IFC4X32.IfcResourceConstraintRelationship = IfcResourceConstraintRelationship;\n class IfcResourceTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ScheduleWork, ScheduleUsage, ScheduleStart, ScheduleFinish, ScheduleContour, LevelingDelay, IsOverAllocated, StatusTime, ActualWork, ActualUsage, ActualStart, ActualFinish, RemainingWork, RemainingUsage, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ScheduleWork = ScheduleWork;\n this.ScheduleUsage = ScheduleUsage;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleContour = ScheduleContour;\n this.LevelingDelay = LevelingDelay;\n this.IsOverAllocated = IsOverAllocated;\n this.StatusTime = StatusTime;\n this.ActualWork = ActualWork;\n this.ActualUsage = ActualUsage;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingWork = RemainingWork;\n this.RemainingUsage = RemainingUsage;\n this.Completion = Completion;\n this.type = 1042787934;\n }\n }\n IFC4X32.IfcResourceTime = IfcResourceTime;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC4X32.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionProperties extends IfcPreDefinedProperties {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC4X32.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcPreDefinedProperties {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC4X32.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC4X32.IfcSectionedSpine = IfcSectionedSpine;\n class IfcSegment extends IfcGeometricRepresentationItem {\n constructor(Transition) {\n super();\n this.Transition = Transition;\n this.type = 823603102;\n }\n }\n IFC4X32.IfcSegment = IfcSegment;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC4X32.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Specification) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.type = 3692461612;\n }\n }\n IFC4X32.IfcSimpleProperty = IfcSimpleProperty;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC4X32.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC4X32.IfcSolidModel = IfcSolidModel;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC4X32.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC4X32.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC4X32.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC4X32.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC4X32.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC4X32.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC4X32.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC4X32.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour, Transparency);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC4X32.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC4X32.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC4X32.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptDiskSolidPolygonal extends IfcSweptDiskSolid {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam, FilletRadius) {\n super(Directrix, Radius, InnerRadius, StartParam, EndParam);\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FilletRadius = FilletRadius;\n this.type = 1096409881;\n }\n }\n IFC4X32.IfcSweptDiskSolidPolygonal = IfcSweptDiskSolidPolygonal;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC4X32.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.type = 3071757647;\n }\n }\n IFC4X32.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTessellatedItem extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 901063453;\n }\n }\n IFC4X32.IfcTessellatedItem = IfcTessellatedItem;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC4X32.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC4X32.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC4X32.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC4X32.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC4X32.IfcTypeObject = IfcTypeObject;\n class IfcTypeProcess extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.type = 3736923433;\n }\n }\n IFC4X32.IfcTypeProcess = IfcTypeProcess;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC4X32.IfcTypeProduct = IfcTypeProduct;\n class IfcTypeResource extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.type = 3698973494;\n }\n }\n IFC4X32.IfcTypeResource = IfcTypeResource;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 427810014;\n }\n }\n IFC4X32.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC4X32.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC4X32.IfcVertexLoop = IfcVertexLoop;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC4X32.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAdvancedFace extends IfcFaceSurface {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds, FaceSurface, SameSense);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3406155212;\n }\n }\n IFC4X32.IfcAdvancedFace = IfcAdvancedFace;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC4X32.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAsymmetricIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomFlangeWidth, OverallDepth, WebThickness, BottomFlangeThickness, BottomFlangeFilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, BottomFlangeEdgeRadius, BottomFlangeSlope, TopFlangeEdgeRadius, TopFlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomFlangeWidth = BottomFlangeWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.BottomFlangeThickness = BottomFlangeThickness;\n this.BottomFlangeFilletRadius = BottomFlangeFilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.BottomFlangeEdgeRadius = BottomFlangeEdgeRadius;\n this.BottomFlangeSlope = BottomFlangeSlope;\n this.TopFlangeEdgeRadius = TopFlangeEdgeRadius;\n this.TopFlangeSlope = TopFlangeSlope;\n this.type = 3207858831;\n }\n }\n IFC4X32.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC4X32.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC4X32.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC4X32.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcAxis2PlacementLinear extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 3425423356;\n }\n }\n IFC4X32.IfcAxis2PlacementLinear = IfcAxis2PlacementLinear;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC4X32.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC4X32.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC4X32.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC4X32.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.type = 2898889636;\n }\n }\n IFC4X32.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC4X32.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianPointList extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 574549367;\n }\n }\n IFC4X32.IfcCartesianPointList = IfcCartesianPointList;\n class IfcCartesianPointList2D extends IfcCartesianPointList {\n constructor(CoordList, TagList) {\n super();\n this.CoordList = CoordList;\n this.TagList = TagList;\n this.type = 1675464909;\n }\n }\n IFC4X32.IfcCartesianPointList2D = IfcCartesianPointList2D;\n class IfcCartesianPointList3D extends IfcCartesianPointList {\n constructor(CoordList, TagList) {\n super();\n this.CoordList = CoordList;\n this.TagList = TagList;\n this.type = 2059837836;\n }\n }\n IFC4X32.IfcCartesianPointList3D = IfcCartesianPointList3D;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC4X32.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC4X32.IfcClosedShell = IfcClosedShell;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC4X32.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Specification, UsageName, HasProperties) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC4X32.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeCurveSegment extends IfcSegment {\n constructor(Transition, SameSense, ParentCurve) {\n super(Transition);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC4X32.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcConstructionResourceType extends IfcTypeResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2574617495;\n }\n }\n IFC4X32.IfcConstructionResourceType = IfcConstructionResourceType;\n class IfcContext extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 3419103109;\n }\n }\n IFC4X32.IfcContext = IfcContext;\n class IfcCrewResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1815067380;\n }\n }\n IFC4X32.IfcCrewResourceType = IfcCrewResourceType;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC4X32.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC4X32.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC4X32.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC4X32.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcCurveBoundedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, Boundaries, ImplicitOuter) {\n super();\n this.BasisSurface = BasisSurface;\n this.Boundaries = Boundaries;\n this.ImplicitOuter = ImplicitOuter;\n this.type = 2629017746;\n }\n }\n IFC4X32.IfcCurveBoundedSurface = IfcCurveBoundedSurface;\n class IfcCurveSegment extends IfcSegment {\n constructor(Transition, Placement, SegmentStart, SegmentLength, ParentCurve) {\n super(Transition);\n this.Transition = Transition;\n this.Placement = Placement;\n this.SegmentStart = SegmentStart;\n this.SegmentLength = SegmentLength;\n this.ParentCurve = ParentCurve;\n this.type = 4212018352;\n }\n }\n IFC4X32.IfcCurveSegment = IfcCurveSegment;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC4X32.IfcDirection = IfcDirection;\n class IfcDirectrixCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 593015953;\n }\n }\n IFC4X32.IfcDirectrixCurveSweptAreaSolid = IfcDirectrixCurveSweptAreaSolid;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC4X32.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcQuantitySet {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC4X32.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC4X32.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC4X32.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC4X32.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEventType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, EventTriggerType, UserDefinedEventTriggerType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.type = 4024345920;\n }\n }\n IFC4X32.IfcEventType = IfcEventType;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC4X32.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcExtrudedAreaSolidTapered extends IfcExtrudedAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth, EndSweptArea) {\n super(SweptArea, Position, ExtrudedDirection, Depth);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.EndSweptArea = EndSweptArea;\n this.type = 2804161546;\n }\n }\n IFC4X32.IfcExtrudedAreaSolidTapered = IfcExtrudedAreaSolidTapered;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC4X32.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC4X32.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC4X32.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFixedReferenceSweptAreaSolid extends IfcDirectrixCurveSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position, Directrix, StartParam, EndParam);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 2652556860;\n }\n }\n IFC4X32.IfcFixedReferenceSweptAreaSolid = IfcFixedReferenceSweptAreaSolid;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC4X32.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 1268542332;\n }\n }\n IFC4X32.IfcFurnitureType = IfcFurnitureType;\n class IfcGeographicElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4095422895;\n }\n }\n IFC4X32.IfcGeographicElementType = IfcGeographicElementType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC4X32.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 1484403080;\n }\n }\n IFC4X32.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcIndexedPolygonalFace extends IfcTessellatedItem {\n constructor(CoordIndex) {\n super();\n this.CoordIndex = CoordIndex;\n this.type = 178912537;\n }\n }\n IFC4X32.IfcIndexedPolygonalFace = IfcIndexedPolygonalFace;\n class IfcIndexedPolygonalFaceWithVoids extends IfcIndexedPolygonalFace {\n constructor(CoordIndex, InnerCoordIndices) {\n super(CoordIndex);\n this.CoordIndex = CoordIndex;\n this.InnerCoordIndices = InnerCoordIndices;\n this.type = 2294589976;\n }\n }\n IFC4X32.IfcIndexedPolygonalFaceWithVoids = IfcIndexedPolygonalFaceWithVoids;\n class IfcIndexedPolygonalTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndices) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndices = TexCoordIndices;\n this.type = 3465909080;\n }\n }\n IFC4X32.IfcIndexedPolygonalTextureMap = IfcIndexedPolygonalTextureMap;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.type = 572779678;\n }\n }\n IFC4X32.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLaborResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 428585644;\n }\n }\n IFC4X32.IfcLaborResourceType = IfcLaborResourceType;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC4X32.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC4X32.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC4X32.IfcObject = IfcObject;\n class IfcOffsetCurve extends IfcCurve {\n constructor(BasisCurve) {\n super();\n this.BasisCurve = BasisCurve;\n this.type = 590820931;\n }\n }\n IFC4X32.IfcOffsetCurve = IfcOffsetCurve;\n class IfcOffsetCurve2D extends IfcOffsetCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC4X32.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcOffsetCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC4X32.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcOffsetCurveByDistances extends IfcOffsetCurve {\n constructor(BasisCurve, OffsetValues, Tag) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.OffsetValues = OffsetValues;\n this.Tag = Tag;\n this.type = 2485787929;\n }\n }\n IFC4X32.IfcOffsetCurveByDistances = IfcOffsetCurveByDistances;\n class IfcPcurve extends IfcCurve {\n constructor(BasisSurface, ReferenceCurve) {\n super();\n this.BasisSurface = BasisSurface;\n this.ReferenceCurve = ReferenceCurve;\n this.type = 1682466193;\n }\n }\n IFC4X32.IfcPcurve = IfcPcurve;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC4X32.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC4X32.IfcPlane = IfcPlane;\n class IfcPolynomialCurve extends IfcCurve {\n constructor(Position, CoefficientsX, CoefficientsY, CoefficientsZ) {\n super();\n this.Position = Position;\n this.CoefficientsX = CoefficientsX;\n this.CoefficientsY = CoefficientsY;\n this.CoefficientsZ = CoefficientsZ;\n this.type = 3381221214;\n }\n }\n IFC4X32.IfcPolynomialCurve = IfcPolynomialCurve;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC4X32.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC4X32.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3967405729;\n }\n }\n IFC4X32.IfcPreDefinedPropertySet = IfcPreDefinedPropertySet;\n class IfcProcedureType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.type = 569719735;\n }\n }\n IFC4X32.IfcProcedureType = IfcProcedureType;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2945172077;\n }\n }\n IFC4X32.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC4X32.IfcProduct = IfcProduct;\n class IfcProject extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC4X32.IfcProject = IfcProject;\n class IfcProjectLibrary extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 653396225;\n }\n }\n IFC4X32.IfcProjectLibrary = IfcProjectLibrary;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Specification, UpperBoundValue, LowerBoundValue, Unit, SetPointValue) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.SetPointValue = SetPointValue;\n this.type = 871118103;\n }\n }\n IFC4X32.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Specification, EnumerationValues, EnumerationReference) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC4X32.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Specification, ListValues, Unit) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC4X32.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Specification, UsageName, PropertyReference) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC4X32.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC4X32.IfcPropertySet = IfcPropertySet;\n class IfcPropertySetTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, ApplicableEntity, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.ApplicableEntity = ApplicableEntity;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 492091185;\n }\n }\n IFC4X32.IfcPropertySetTemplate = IfcPropertySetTemplate;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Specification, NominalValue, Unit) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC4X32.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Specification, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit, CurveInterpolation) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.CurveInterpolation = CurveInterpolation;\n this.type = 110355661;\n }\n }\n IFC4X32.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcPropertyTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3521284610;\n }\n }\n IFC4X32.IfcPropertyTemplate = IfcPropertyTemplate;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC4X32.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC4X32.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC4X32.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcReinforcementDefinitionProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC4X32.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC4X32.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC4X32.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC4X32.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC4X32.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToGroupByFactor extends IfcRelAssignsToGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup, Factor) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.Factor = Factor;\n this.type = 1027710054;\n }\n }\n IFC4X32.IfcRelAssignsToGroupByFactor = IfcRelAssignsToGroupByFactor;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC4X32.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC4X32.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC4X32.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC4X32.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC4X32.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC4X32.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC4X32.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC4X32.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC4X32.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC4X32.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelAssociatesProfileDef extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingProfileDef) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingProfileDef = RelatingProfileDef;\n this.type = 1033248425;\n }\n }\n IFC4X32.IfcRelAssociatesProfileDef = IfcRelAssociatesProfileDef;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC4X32.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC4X32.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC4X32.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC4X32.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC4X32.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC4X32.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC4X32.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC4X32.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC4X32.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC4X32.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC4X32.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC4X32.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDeclares extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingContext, RelatedDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingContext = RelatingContext;\n this.RelatedDefinitions = RelatedDefinitions;\n this.type = 2565941209;\n }\n }\n IFC4X32.IfcRelDeclares = IfcRelDeclares;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2551354335;\n }\n }\n IFC4X32.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 693640335;\n }\n }\n IFC4X32.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByObject extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingObject) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingObject = RelatingObject;\n this.type = 1462361463;\n }\n }\n IFC4X32.IfcRelDefinesByObject = IfcRelDefinesByObject;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC4X32.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByTemplate extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedPropertySets, RelatingTemplate) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedPropertySets = RelatedPropertySets;\n this.RelatingTemplate = RelatingTemplate;\n this.type = 307848117;\n }\n }\n IFC4X32.IfcRelDefinesByTemplate = IfcRelDefinesByTemplate;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC4X32.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC4X32.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC4X32.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInterferesElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedElement, InterferenceGeometry, InterferenceSpace, InterferenceType, ImpliedOrder) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.InterferenceGeometry = InterferenceGeometry;\n this.InterferenceSpace = InterferenceSpace;\n this.InterferenceType = InterferenceType;\n this.ImpliedOrder = ImpliedOrder;\n this.type = 427948657;\n }\n }\n IFC4X32.IfcRelInterferesElements = IfcRelInterferesElements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC4X32.IfcRelNests = IfcRelNests;\n class IfcRelPositions extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPositioningElement, RelatedProducts) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPositioningElement = RelatingPositioningElement;\n this.RelatedProducts = RelatedProducts;\n this.type = 1441486842;\n }\n }\n IFC4X32.IfcRelPositions = IfcRelPositions;\n class IfcRelProjectsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC4X32.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC4X32.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType, UserDefinedSequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.UserDefinedSequenceType = UserDefinedSequenceType;\n this.type = 4122056220;\n }\n }\n IFC4X32.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC4X32.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC4X32.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelSpaceBoundary1stLevel extends IfcRelSpaceBoundary {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.type = 3523091289;\n }\n }\n IFC4X32.IfcRelSpaceBoundary1stLevel = IfcRelSpaceBoundary1stLevel;\n class IfcRelSpaceBoundary2ndLevel extends IfcRelSpaceBoundary1stLevel {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary, CorrespondingBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.CorrespondingBoundary = CorrespondingBoundary;\n this.type = 1521410863;\n }\n }\n IFC4X32.IfcRelSpaceBoundary2ndLevel = IfcRelSpaceBoundary2ndLevel;\n class IfcRelVoidsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC4X32.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcReparametrisedCompositeCurveSegment extends IfcCompositeCurveSegment {\n constructor(Transition, SameSense, ParentCurve, ParamLength) {\n super(Transition, SameSense, ParentCurve);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.ParamLength = ParamLength;\n this.type = 816062949;\n }\n }\n IFC4X32.IfcReparametrisedCompositeCurveSegment = IfcReparametrisedCompositeCurveSegment;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2914609552;\n }\n }\n IFC4X32.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC4X32.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRevolvedAreaSolidTapered extends IfcRevolvedAreaSolid {\n constructor(SweptArea, Position, Axis, Angle, EndSweptArea) {\n super(SweptArea, Position, Axis, Angle);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.EndSweptArea = EndSweptArea;\n this.type = 3243963512;\n }\n }\n IFC4X32.IfcRevolvedAreaSolidTapered = IfcRevolvedAreaSolidTapered;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC4X32.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC4X32.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSectionedSolid extends IfcSolidModel {\n constructor(Directrix, CrossSections) {\n super();\n this.Directrix = Directrix;\n this.CrossSections = CrossSections;\n this.type = 1862484736;\n }\n }\n IFC4X32.IfcSectionedSolid = IfcSectionedSolid;\n class IfcSectionedSolidHorizontal extends IfcSectionedSolid {\n constructor(Directrix, CrossSections, CrossSectionPositions) {\n super(Directrix, CrossSections);\n this.Directrix = Directrix;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1290935644;\n }\n }\n IFC4X32.IfcSectionedSolidHorizontal = IfcSectionedSolidHorizontal;\n class IfcSectionedSurface extends IfcSurface {\n constructor(Directrix, CrossSectionPositions, CrossSections) {\n super();\n this.Directrix = Directrix;\n this.CrossSectionPositions = CrossSectionPositions;\n this.CrossSections = CrossSections;\n this.type = 1356537516;\n }\n }\n IFC4X32.IfcSectionedSurface = IfcSectionedSurface;\n class IfcSimplePropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, PrimaryMeasureType, SecondaryMeasureType, Enumerators, PrimaryUnit, SecondaryUnit, Expression, AccessState) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.PrimaryMeasureType = PrimaryMeasureType;\n this.SecondaryMeasureType = SecondaryMeasureType;\n this.Enumerators = Enumerators;\n this.PrimaryUnit = PrimaryUnit;\n this.SecondaryUnit = SecondaryUnit;\n this.Expression = Expression;\n this.AccessState = AccessState;\n this.type = 3663146110;\n }\n }\n IFC4X32.IfcSimplePropertyTemplate = IfcSimplePropertyTemplate;\n class IfcSpatialElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 1412071761;\n }\n }\n IFC4X32.IfcSpatialElement = IfcSpatialElement;\n class IfcSpatialElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 710998568;\n }\n }\n IFC4X32.IfcSpatialElementType = IfcSpatialElementType;\n class IfcSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC4X32.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC4X32.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSpatialZone extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 463610769;\n }\n }\n IFC4X32.IfcSpatialZone = IfcSpatialZone;\n class IfcSpatialZoneType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 2481509218;\n }\n }\n IFC4X32.IfcSpatialZoneType = IfcSpatialZoneType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC4X32.IfcSphere = IfcSphere;\n class IfcSphericalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 4015995234;\n }\n }\n IFC4X32.IfcSphericalSurface = IfcSphericalSurface;\n class IfcSpiral extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2735484536;\n }\n }\n IFC4X32.IfcSpiral = IfcSpiral;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC4X32.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC4X32.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC4X32.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC4X32.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC4X32.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 2218152070;\n }\n }\n IFC4X32.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuralSurfaceReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 603775116;\n }\n }\n IFC4X32.IfcStructuralSurfaceReaction = IfcStructuralSurfaceReaction;\n class IfcSubContractResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4095615324;\n }\n }\n IFC4X32.IfcSubContractResourceType = IfcSubContractResourceType;\n class IfcSurfaceCurve extends IfcCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super();\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 699246055;\n }\n }\n IFC4X32.IfcSurfaceCurve = IfcSurfaceCurve;\n class IfcSurfaceCurveSweptAreaSolid extends IfcDirectrixCurveSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position, Directrix, StartParam, EndParam);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC4X32.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC4X32.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC4X32.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1580310250;\n }\n }\n IFC4X32.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Status, WorkMethod, IsMilestone, Priority, TaskTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.TaskTime = TaskTime;\n this.PredefinedType = PredefinedType;\n this.type = 3473067441;\n }\n }\n IFC4X32.IfcTask = IfcTask;\n class IfcTaskType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, WorkMethod) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.WorkMethod = WorkMethod;\n this.type = 3206491090;\n }\n }\n IFC4X32.IfcTaskType = IfcTaskType;\n class IfcTessellatedFaceSet extends IfcTessellatedItem {\n constructor(Coordinates, Closed) {\n super();\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.type = 2387106220;\n }\n }\n IFC4X32.IfcTessellatedFaceSet = IfcTessellatedFaceSet;\n class IfcThirdOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, CubicTerm, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.CubicTerm = CubicTerm;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 782932809;\n }\n }\n IFC4X32.IfcThirdOrderPolynomialSpiral = IfcThirdOrderPolynomialSpiral;\n class IfcToroidalSurface extends IfcElementarySurface {\n constructor(Position, MajorRadius, MinorRadius) {\n super(Position);\n this.Position = Position;\n this.MajorRadius = MajorRadius;\n this.MinorRadius = MinorRadius;\n this.type = 1935646853;\n }\n }\n IFC4X32.IfcToroidalSurface = IfcToroidalSurface;\n class IfcTransportationDeviceType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3665877780;\n }\n }\n IFC4X32.IfcTransportationDeviceType = IfcTransportationDeviceType;\n class IfcTriangulatedFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Normals, CoordIndex, PnIndex) {\n super(Coordinates, Closed);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Normals = Normals;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.type = 2916149573;\n }\n }\n IFC4X32.IfcTriangulatedFaceSet = IfcTriangulatedFaceSet;\n class IfcTriangulatedIrregularNetwork extends IfcTriangulatedFaceSet {\n constructor(Coordinates, Closed, Normals, CoordIndex, PnIndex, Flags) {\n super(Coordinates, Closed, Normals, CoordIndex, PnIndex);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Normals = Normals;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.Flags = Flags;\n this.type = 1229763772;\n }\n }\n IFC4X32.IfcTriangulatedIrregularNetwork = IfcTriangulatedIrregularNetwork;\n class IfcVehicleType extends IfcTransportationDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3651464721;\n }\n }\n IFC4X32.IfcVehicleType = IfcVehicleType;\n class IfcWindowLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle, LiningOffset, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningOffset = LiningOffset;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 336235671;\n }\n }\n IFC4X32.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC4X32.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC4X32.IfcActor = IfcActor;\n class IfcAdvancedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 1635779807;\n }\n }\n IFC4X32.IfcAdvancedBrep = IfcAdvancedBrep;\n class IfcAdvancedBrepWithVoids extends IfcAdvancedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 2603310189;\n }\n }\n IFC4X32.IfcAdvancedBrepWithVoids = IfcAdvancedBrepWithVoids;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 1674181508;\n }\n }\n IFC4X32.IfcAnnotation = IfcAnnotation;\n class IfcBSplineSurface extends IfcBoundedSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect) {\n super();\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.type = 2887950389;\n }\n }\n IFC4X32.IfcBSplineSurface = IfcBSplineSurface;\n class IfcBSplineSurfaceWithKnots extends IfcBSplineSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.type = 167062518;\n }\n }\n IFC4X32.IfcBSplineSurfaceWithKnots = IfcBSplineSurfaceWithKnots;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC4X32.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC4X32.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC4X32.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC4X32.IfcBuildingStorey = IfcBuildingStorey;\n class IfcBuiltElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1626504194;\n }\n }\n IFC4X32.IfcBuiltElementType = IfcBuiltElementType;\n class IfcChimneyType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2197970202;\n }\n }\n IFC4X32.IfcChimneyType = IfcChimneyType;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC4X32.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcCivilElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893394355;\n }\n }\n IFC4X32.IfcCivilElementType = IfcCivilElementType;\n class IfcClothoid extends IfcSpiral {\n constructor(Position, ClothoidConstant) {\n super(Position);\n this.Position = Position;\n this.ClothoidConstant = ClothoidConstant;\n this.type = 3497074424;\n }\n }\n IFC4X32.IfcClothoid = IfcClothoid;\n class IfcColumnType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC4X32.IfcColumnType = IfcColumnType;\n class IfcComplexPropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, UsageName, TemplateType, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.TemplateType = TemplateType;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 3875453745;\n }\n }\n IFC4X32.IfcComplexPropertyTemplate = IfcComplexPropertyTemplate;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC4X32.IfcCompositeCurve = IfcCompositeCurve;\n class IfcCompositeCurveOnSurface extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 15328376;\n }\n }\n IFC4X32.IfcCompositeCurveOnSurface = IfcCompositeCurveOnSurface;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC4X32.IfcConic = IfcConic;\n class IfcConstructionEquipmentResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 2185764099;\n }\n }\n IFC4X32.IfcConstructionEquipmentResourceType = IfcConstructionEquipmentResourceType;\n class IfcConstructionMaterialResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4105962743;\n }\n }\n IFC4X32.IfcConstructionMaterialResourceType = IfcConstructionMaterialResourceType;\n class IfcConstructionProductResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1525564444;\n }\n }\n IFC4X32.IfcConstructionProductResourceType = IfcConstructionProductResourceType;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC4X32.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.type = 3293443760;\n }\n }\n IFC4X32.IfcControl = IfcControl;\n class IfcCosineSpiral extends IfcSpiral {\n constructor(Position, CosineTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.CosineTerm = CosineTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 2000195564;\n }\n }\n IFC4X32.IfcCosineSpiral = IfcCosineSpiral;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, CostValues, CostQuantities) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.CostValues = CostValues;\n this.CostQuantities = CostQuantities;\n this.type = 3895139033;\n }\n }\n IFC4X32.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, SubmittedOn, UpdateDate) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.SubmittedOn = SubmittedOn;\n this.UpdateDate = UpdateDate;\n this.type = 1419761937;\n }\n }\n IFC4X32.IfcCostSchedule = IfcCostSchedule;\n class IfcCourseType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4189326743;\n }\n }\n IFC4X32.IfcCourseType = IfcCourseType;\n class IfcCoveringType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC4X32.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3295246426;\n }\n }\n IFC4X32.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC4X32.IfcCurtainWallType = IfcCurtainWallType;\n class IfcCylindricalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1213902940;\n }\n }\n IFC4X32.IfcCylindricalSurface = IfcCylindricalSurface;\n class IfcDeepFoundationType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1306400036;\n }\n }\n IFC4X32.IfcDeepFoundationType = IfcDeepFoundationType;\n class IfcDirectrixDerivedReferenceSweptAreaSolid extends IfcFixedReferenceSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 4234616927;\n }\n }\n IFC4X32.IfcDirectrixDerivedReferenceSweptAreaSolid = IfcDirectrixDerivedReferenceSweptAreaSolid;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC4X32.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC4X32.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcDoorLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 2963535650;\n }\n }\n IFC4X32.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC4X32.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, OperationType, ParameterTakesPrecedence, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 2323601079;\n }\n }\n IFC4X32.IfcDoorType = IfcDoorType;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC4X32.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC4X32.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC4X32.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC4X32.IfcElementAssembly = IfcElementAssembly;\n class IfcElementAssemblyType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2397081782;\n }\n }\n IFC4X32.IfcElementAssemblyType = IfcElementAssemblyType;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC4X32.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC4X32.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC4X32.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC4X32.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEngineType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 132023988;\n }\n }\n IFC4X32.IfcEngineType = IfcEngineType;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC4X32.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC4X32.IfcEvaporatorType = IfcEvaporatorType;\n class IfcEvent extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType, EventTriggerType, UserDefinedEventTriggerType, EventOccurenceTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.EventOccurenceTime = EventOccurenceTime;\n this.type = 4148101412;\n }\n }\n IFC4X32.IfcEvent = IfcEvent;\n class IfcExternalSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 2853485674;\n }\n }\n IFC4X32.IfcExternalSpatialStructureElement = IfcExternalSpatialStructureElement;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC4X32.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcFacetedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC4X32.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFacility extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 24185140;\n }\n }\n IFC4X32.IfcFacility = IfcFacility;\n class IfcFacilityPart extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.type = 1310830890;\n }\n }\n IFC4X32.IfcFacilityPart = IfcFacilityPart;\n class IfcFacilityPartCommon extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 4228831410;\n }\n }\n IFC4X32.IfcFacilityPartCommon = IfcFacilityPartCommon;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 647756555;\n }\n }\n IFC4X32.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2489546625;\n }\n }\n IFC4X32.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC4X32.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC4X32.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC4X32.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC4X32.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC4X32.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC4X32.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC4X32.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC4X32.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC4X32.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC4X32.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC4X32.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFootingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1893162501;\n }\n }\n IFC4X32.IfcFootingType = IfcFootingType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC4X32.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurniture extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1509553395;\n }\n }\n IFC4X32.IfcFurniture = IfcFurniture;\n class IfcGeographicElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3493046030;\n }\n }\n IFC4X32.IfcGeographicElement = IfcGeographicElement;\n class IfcGeotechnicalElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4230923436;\n }\n }\n IFC4X32.IfcGeotechnicalElement = IfcGeotechnicalElement;\n class IfcGeotechnicalStratum extends IfcGeotechnicalElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1594536857;\n }\n }\n IFC4X32.IfcGeotechnicalStratum = IfcGeotechnicalStratum;\n class IfcGradientCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect, BaseCurve, EndPoint) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.BaseCurve = BaseCurve;\n this.EndPoint = EndPoint;\n this.type = 2898700619;\n }\n }\n IFC4X32.IfcGradientCurve = IfcGradientCurve;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC4X32.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC4X32.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC4X32.IfcHumidifierType = IfcHumidifierType;\n class IfcImpactProtectionDevice extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2568555532;\n }\n }\n IFC4X32.IfcImpactProtectionDevice = IfcImpactProtectionDevice;\n class IfcImpactProtectionDeviceType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3948183225;\n }\n }\n IFC4X32.IfcImpactProtectionDeviceType = IfcImpactProtectionDeviceType;\n class IfcIndexedPolyCurve extends IfcBoundedCurve {\n constructor(Points, Segments, SelfIntersect) {\n super();\n this.Points = Points;\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 2571569899;\n }\n }\n IFC4X32.IfcIndexedPolyCurve = IfcIndexedPolyCurve;\n class IfcInterceptorType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3946677679;\n }\n }\n IFC4X32.IfcInterceptorType = IfcInterceptorType;\n class IfcIntersectionCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3113134337;\n }\n }\n IFC4X32.IfcIntersectionCurve = IfcIntersectionCurve;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC4X32.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC4X32.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcKerbType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, Mountable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.Mountable = Mountable;\n this.type = 679976338;\n }\n }\n IFC4X32.IfcKerbType = IfcKerbType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3827777499;\n }\n }\n IFC4X32.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC4X32.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC4X32.IfcLightFixtureType = IfcLightFixtureType;\n class IfcLinearElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 2176059722;\n }\n }\n IFC4X32.IfcLinearElement = IfcLinearElement;\n class IfcLiquidTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1770583370;\n }\n }\n IFC4X32.IfcLiquidTerminalType = IfcLiquidTerminalType;\n class IfcMarineFacility extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 525669439;\n }\n }\n IFC4X32.IfcMarineFacility = IfcMarineFacility;\n class IfcMarinePart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 976884017;\n }\n }\n IFC4X32.IfcMarinePart = IfcMarinePart;\n class IfcMechanicalFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.PredefinedType = PredefinedType;\n this.type = 377706215;\n }\n }\n IFC4X32.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 2108223431;\n }\n }\n IFC4X32.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMedicalDeviceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1114901282;\n }\n }\n IFC4X32.IfcMedicalDeviceType = IfcMedicalDeviceType;\n class IfcMemberType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC4X32.IfcMemberType = IfcMemberType;\n class IfcMobileTelecommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1950438474;\n }\n }\n IFC4X32.IfcMobileTelecommunicationsApplianceType = IfcMobileTelecommunicationsApplianceType;\n class IfcMooringDeviceType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 710110818;\n }\n }\n IFC4X32.IfcMooringDeviceType = IfcMooringDeviceType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC4X32.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcNavigationElementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 506776471;\n }\n }\n IFC4X32.IfcNavigationElementType = IfcNavigationElementType;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC4X32.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3588315303;\n }\n }\n IFC4X32.IfcOpeningElement = IfcOpeningElement;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC4X32.IfcOutletType = IfcOutletType;\n class IfcPavementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 514975943;\n }\n }\n IFC4X32.IfcPavementType = IfcPavementType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LifeCyclePhase, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LifeCyclePhase = LifeCyclePhase;\n this.PredefinedType = PredefinedType;\n this.type = 2382730787;\n }\n }\n IFC4X32.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermeableCoveringProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC4X32.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3327091369;\n }\n }\n IFC4X32.IfcPermit = IfcPermit;\n class IfcPileType extends IfcDeepFoundationType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1158309216;\n }\n }\n IFC4X32.IfcPileType = IfcPileType;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC4X32.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC4X32.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC4X32.IfcPlateType = IfcPlateType;\n class IfcPolygonalFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Faces, PnIndex) {\n super(Coordinates, Closed);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Faces = Faces;\n this.PnIndex = PnIndex;\n this.type = 2839578677;\n }\n }\n IFC4X32.IfcPolygonalFaceSet = IfcPolygonalFaceSet;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC4X32.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC4X32.IfcPort = IfcPort;\n class IfcPositioningElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1946335990;\n }\n }\n IFC4X32.IfcPositioningElement = IfcPositioningElement;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.type = 2744685151;\n }\n }\n IFC4X32.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 2904328755;\n }\n }\n IFC4X32.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3651124850;\n }\n }\n IFC4X32.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC4X32.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC4X32.IfcPumpType = IfcPumpType;\n class IfcRailType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1763565496;\n }\n }\n IFC4X32.IfcRailType = IfcRailType;\n class IfcRailingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC4X32.IfcRailingType = IfcRailingType;\n class IfcRailway extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 3992365140;\n }\n }\n IFC4X32.IfcRailway = IfcRailway;\n class IfcRailwayPart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 1891881377;\n }\n }\n IFC4X32.IfcRailwayPart = IfcRailwayPart;\n class IfcRampFlightType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC4X32.IfcRampFlightType = IfcRampFlightType;\n class IfcRampType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1469900589;\n }\n }\n IFC4X32.IfcRampType = IfcRampType;\n class IfcRationalBSplineSurfaceWithKnots extends IfcBSplineSurfaceWithKnots {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec, WeightsData) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 683857671;\n }\n }\n IFC4X32.IfcRationalBSplineSurfaceWithKnots = IfcRationalBSplineSurfaceWithKnots;\n class IfcReferent extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 4021432810;\n }\n }\n IFC4X32.IfcReferent = IfcReferent;\n class IfcReinforcingElement extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC4X32.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingElementType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 964333572;\n }\n }\n IFC4X32.IfcReinforcingElementType = IfcReinforcingElementType;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.PredefinedType = PredefinedType;\n this.type = 2320036040;\n }\n }\n IFC4X32.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcReinforcingMeshType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2310774935;\n }\n }\n IFC4X32.IfcReinforcingMeshType = IfcReinforcingMeshType;\n class IfcRelAdheresToElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedSurfaceFeatures) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedSurfaceFeatures = RelatedSurfaceFeatures;\n this.type = 3818125796;\n }\n }\n IFC4X32.IfcRelAdheresToElement = IfcRelAdheresToElement;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC4X32.IfcRelAggregates = IfcRelAggregates;\n class IfcRoad extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 146592293;\n }\n }\n IFC4X32.IfcRoad = IfcRoad;\n class IfcRoadPart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 550521510;\n }\n }\n IFC4X32.IfcRoadPart = IfcRoadPart;\n class IfcRoofType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2781568857;\n }\n }\n IFC4X32.IfcRoofType = IfcRoofType;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC4X32.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcSeamCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 2157484638;\n }\n }\n IFC4X32.IfcSeamCurve = IfcSeamCurve;\n class IfcSecondOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 3649235739;\n }\n }\n IFC4X32.IfcSecondOrderPolynomialSpiral = IfcSecondOrderPolynomialSpiral;\n class IfcSegmentedReferenceCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect, BaseCurve, EndPoint) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.BaseCurve = BaseCurve;\n this.EndPoint = EndPoint;\n this.type = 544395925;\n }\n }\n IFC4X32.IfcSegmentedReferenceCurve = IfcSegmentedReferenceCurve;\n class IfcSeventhOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, SepticTerm, SexticTerm, QuinticTerm, QuarticTerm, CubicTerm, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.SepticTerm = SepticTerm;\n this.SexticTerm = SexticTerm;\n this.QuinticTerm = QuinticTerm;\n this.QuarticTerm = QuarticTerm;\n this.CubicTerm = CubicTerm;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 1027922057;\n }\n }\n IFC4X32.IfcSeventhOrderPolynomialSpiral = IfcSeventhOrderPolynomialSpiral;\n class IfcShadingDeviceType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4074543187;\n }\n }\n IFC4X32.IfcShadingDeviceType = IfcShadingDeviceType;\n class IfcSign extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 33720170;\n }\n }\n IFC4X32.IfcSign = IfcSign;\n class IfcSignType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3599934289;\n }\n }\n IFC4X32.IfcSignType = IfcSignType;\n class IfcSignalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1894708472;\n }\n }\n IFC4X32.IfcSignalType = IfcSignalType;\n class IfcSineSpiral extends IfcSpiral {\n constructor(Position, SineTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.SineTerm = SineTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 42703149;\n }\n }\n IFC4X32.IfcSineSpiral = IfcSineSpiral;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC4X32.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC4X32.IfcSlabType = IfcSlabType;\n class IfcSolarDeviceType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1072016465;\n }\n }\n IFC4X32.IfcSolarDeviceType = IfcSolarDeviceType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC4X32.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC4X32.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3812236995;\n }\n }\n IFC4X32.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC4X32.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC4X32.IfcStairFlightType = IfcStairFlightType;\n class IfcStairType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 338393293;\n }\n }\n IFC4X32.IfcStairType = IfcStairType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 682877961;\n }\n }\n IFC4X32.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC4X32.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1004757350;\n }\n }\n IFC4X32.IfcStructuralCurveAction = IfcStructuralCurveAction;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, AxisDirection) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.AxisDirection = AxisDirection;\n this.type = 4243806635;\n }\n }\n IFC4X32.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 214636428;\n }\n }\n IFC4X32.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 2445595289;\n }\n }\n IFC4X32.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralCurveReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 2757150158;\n }\n }\n IFC4X32.IfcStructuralCurveReaction = IfcStructuralCurveReaction;\n class IfcStructuralLinearAction extends IfcStructuralCurveAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1807405624;\n }\n }\n IFC4X32.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC4X32.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 2082059205;\n }\n }\n IFC4X32.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 734778138;\n }\n }\n IFC4X32.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC4X32.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC4X32.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 3657597509;\n }\n }\n IFC4X32.IfcStructuralSurfaceAction = IfcStructuralSurfaceAction;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC4X32.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 148013059;\n }\n }\n IFC4X32.IfcSubContractResource = IfcSubContractResource;\n class IfcSurfaceFeature extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3101698114;\n }\n }\n IFC4X32.IfcSurfaceFeature = IfcSurfaceFeature;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC4X32.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC4X32.IfcSystem = IfcSystem;\n class IfcSystemFurnitureElement extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 413509423;\n }\n }\n IFC4X32.IfcSystemFurnitureElement = IfcSystemFurnitureElement;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC4X32.IfcTankType = IfcTankType;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC4X32.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 2347447852;\n }\n }\n IFC4X32.IfcTendonAnchor = IfcTendonAnchor;\n class IfcTendonAnchorType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3081323446;\n }\n }\n IFC4X32.IfcTendonAnchorType = IfcTendonAnchorType;\n class IfcTendonConduit extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 3663046924;\n }\n }\n IFC4X32.IfcTendonConduit = IfcTendonConduit;\n class IfcTendonConduitType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2281632017;\n }\n }\n IFC4X32.IfcTendonConduitType = IfcTendonConduitType;\n class IfcTendonType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, SheathDiameter) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.SheathDiameter = SheathDiameter;\n this.type = 2415094496;\n }\n }\n IFC4X32.IfcTendonType = IfcTendonType;\n class IfcTrackElementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 618700268;\n }\n }\n IFC4X32.IfcTrackElementType = IfcTrackElementType;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC4X32.IfcTransformerType = IfcTransformerType;\n class IfcTransportElementType extends IfcTransportationDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC4X32.IfcTransportElementType = IfcTransportElementType;\n class IfcTransportationDevice extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1953115116;\n }\n }\n IFC4X32.IfcTransportationDevice = IfcTransportationDevice;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC4X32.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC4X32.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC4X32.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC4X32.IfcValveType = IfcValveType;\n class IfcVehicle extends IfcTransportationDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 840318589;\n }\n }\n IFC4X32.IfcVehicle = IfcVehicle;\n class IfcVibrationDamper extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1530820697;\n }\n }\n IFC4X32.IfcVibrationDamper = IfcVibrationDamper;\n class IfcVibrationDamperType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3956297820;\n }\n }\n IFC4X32.IfcVibrationDamperType = IfcVibrationDamperType;\n class IfcVibrationIsolator extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391383451;\n }\n }\n IFC4X32.IfcVibrationIsolator = IfcVibrationIsolator;\n class IfcVibrationIsolatorType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC4X32.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2769231204;\n }\n }\n IFC4X32.IfcVirtualElement = IfcVirtualElement;\n class IfcVoidingFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 926996030;\n }\n }\n IFC4X32.IfcVoidingFeature = IfcVoidingFeature;\n class IfcWallType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC4X32.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC4X32.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWindowType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, PartitioningType, ParameterTakesPrecedence, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 4009809668;\n }\n }\n IFC4X32.IfcWindowType = IfcWindowType;\n class IfcWorkCalendar extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, WorkingTimes, ExceptionTimes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.WorkingTimes = WorkingTimes;\n this.ExceptionTimes = ExceptionTimes;\n this.PredefinedType = PredefinedType;\n this.type = 4088093105;\n }\n }\n IFC4X32.IfcWorkCalendar = IfcWorkCalendar;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.type = 1028945134;\n }\n }\n IFC4X32.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 4218914973;\n }\n }\n IFC4X32.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 3342526732;\n }\n }\n IFC4X32.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.type = 1033361043;\n }\n }\n IFC4X32.IfcZone = IfcZone;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3821786052;\n }\n }\n IFC4X32.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC4X32.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC4X32.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC4X32.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAlignmentCant extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, RailHeadDistance) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.RailHeadDistance = RailHeadDistance;\n this.type = 4266260250;\n }\n }\n IFC4X32.IfcAlignmentCant = IfcAlignmentCant;\n class IfcAlignmentHorizontal extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1545765605;\n }\n }\n IFC4X32.IfcAlignmentHorizontal = IfcAlignmentHorizontal;\n class IfcAlignmentSegment extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, DesignParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.DesignParameters = DesignParameters;\n this.type = 317615605;\n }\n }\n IFC4X32.IfcAlignmentSegment = IfcAlignmentSegment;\n class IfcAlignmentVertical extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1662888072;\n }\n }\n IFC4X32.IfcAlignmentVertical = IfcAlignmentVertical;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC4X32.IfcAsset = IfcAsset;\n class IfcAudioVisualApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1532957894;\n }\n }\n IFC4X32.IfcAudioVisualApplianceType = IfcAudioVisualApplianceType;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC4X32.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBSplineCurveWithKnots extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.type = 2461110595;\n }\n }\n IFC4X32.IfcBSplineCurveWithKnots = IfcBSplineCurveWithKnots;\n class IfcBeamType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC4X32.IfcBeamType = IfcBeamType;\n class IfcBearingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3649138523;\n }\n }\n IFC4X32.IfcBearingType = IfcBearingType;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC4X32.IfcBoilerType = IfcBoilerType;\n class IfcBoundaryCurve extends IfcCompositeCurveOnSurface {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1136057603;\n }\n }\n IFC4X32.IfcBoundaryCurve = IfcBoundaryCurve;\n class IfcBridge extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 644574406;\n }\n }\n IFC4X32.IfcBridge = IfcBridge;\n class IfcBridgePart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 963979645;\n }\n }\n IFC4X32.IfcBridgePart = IfcBridgePart;\n class IfcBuilding extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC4X32.IfcBuilding = IfcBuilding;\n class IfcBuildingElementPart extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2979338954;\n }\n }\n IFC4X32.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementPartType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 39481116;\n }\n }\n IFC4X32.IfcBuildingElementPartType = IfcBuildingElementPartType;\n class IfcBuildingElementProxyType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC4X32.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcBuildingSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 1177604601;\n }\n }\n IFC4X32.IfcBuildingSystem = IfcBuildingSystem;\n class IfcBuiltElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1876633798;\n }\n }\n IFC4X32.IfcBuiltElement = IfcBuiltElement;\n class IfcBuiltSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3862327254;\n }\n }\n IFC4X32.IfcBuiltSystem = IfcBuiltSystem;\n class IfcBurnerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2188180465;\n }\n }\n IFC4X32.IfcBurnerType = IfcBurnerType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC4X32.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC4X32.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2674252688;\n }\n }\n IFC4X32.IfcCableFittingType = IfcCableFittingType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC4X32.IfcCableSegmentType = IfcCableSegmentType;\n class IfcCaissonFoundationType extends IfcDeepFoundationType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3203706013;\n }\n }\n IFC4X32.IfcCaissonFoundationType = IfcCaissonFoundationType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC4X32.IfcChillerType = IfcChillerType;\n class IfcChimney extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3296154744;\n }\n }\n IFC4X32.IfcChimney = IfcChimney;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC4X32.IfcCircle = IfcCircle;\n class IfcCivilElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1677625105;\n }\n }\n IFC4X32.IfcCivilElement = IfcCivilElement;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC4X32.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 843113511;\n }\n }\n IFC4X32.IfcColumn = IfcColumn;\n class IfcCommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 400855858;\n }\n }\n IFC4X32.IfcCommunicationsApplianceType = IfcCommunicationsApplianceType;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC4X32.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC4X32.IfcCondenserType = IfcCondenserType;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3898045240;\n }\n }\n IFC4X32.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1060000209;\n }\n }\n IFC4X32.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 488727124;\n }\n }\n IFC4X32.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcConveyorSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2940368186;\n }\n }\n IFC4X32.IfcConveyorSegmentType = IfcConveyorSegmentType;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC4X32.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC4X32.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCourse extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1502416096;\n }\n }\n IFC4X32.IfcCourse = IfcCourse;\n class IfcCovering extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC4X32.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3495092785;\n }\n }\n IFC4X32.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC4X32.IfcDamperType = IfcDamperType;\n class IfcDeepFoundation extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3426335179;\n }\n }\n IFC4X32.IfcDeepFoundation = IfcDeepFoundation;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1335981549;\n }\n }\n IFC4X32.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2635815018;\n }\n }\n IFC4X32.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 479945903;\n }\n }\n IFC4X32.IfcDistributionBoardType = IfcDistributionBoardType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC4X32.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC4X32.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC4X32.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC4X32.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection, PredefinedType, SystemType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.PredefinedType = PredefinedType;\n this.SystemType = SystemType;\n this.type = 3041715199;\n }\n }\n IFC4X32.IfcDistributionPort = IfcDistributionPort;\n class IfcDistributionSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 3205830791;\n }\n }\n IFC4X32.IfcDistributionSystem = IfcDistributionSystem;\n class IfcDoor extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 395920057;\n }\n }\n IFC4X32.IfcDoor = IfcDoor;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC4X32.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC4X32.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC4X32.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcEarthworksCut extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3071239417;\n }\n }\n IFC4X32.IfcEarthworksCut = IfcEarthworksCut;\n class IfcEarthworksElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1077100507;\n }\n }\n IFC4X32.IfcEarthworksElement = IfcEarthworksElement;\n class IfcEarthworksFill extends IfcEarthworksElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3376911765;\n }\n }\n IFC4X32.IfcEarthworksFill = IfcEarthworksFill;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC4X32.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2417008758;\n }\n }\n IFC4X32.IfcElectricDistributionBoardType = IfcElectricDistributionBoardType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC4X32.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricFlowTreatmentDeviceType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2142170206;\n }\n }\n IFC4X32.IfcElectricFlowTreatmentDeviceType = IfcElectricFlowTreatmentDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC4X32.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC4X32.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC4X32.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC4X32.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcEngine extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2814081492;\n }\n }\n IFC4X32.IfcEngine = IfcEngine;\n class IfcEvaporativeCooler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3747195512;\n }\n }\n IFC4X32.IfcEvaporativeCooler = IfcEvaporativeCooler;\n class IfcEvaporator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 484807127;\n }\n }\n IFC4X32.IfcEvaporator = IfcEvaporator;\n class IfcExternalSpatialElement extends IfcExternalSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 1209101575;\n }\n }\n IFC4X32.IfcExternalSpatialElement = IfcExternalSpatialElement;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC4X32.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC4X32.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC4X32.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC4X32.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC4X32.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC4X32.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMeter extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2188021234;\n }\n }\n IFC4X32.IfcFlowMeter = IfcFlowMeter;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC4X32.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC4X32.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC4X32.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC4X32.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC4X32.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC4X32.IfcFooting = IfcFooting;\n class IfcGeotechnicalAssembly extends IfcGeotechnicalElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2713699986;\n }\n }\n IFC4X32.IfcGeotechnicalAssembly = IfcGeotechnicalAssembly;\n class IfcGrid extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.PredefinedType = PredefinedType;\n this.type = 3009204131;\n }\n }\n IFC4X32.IfcGrid = IfcGrid;\n class IfcHeatExchanger extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3319311131;\n }\n }\n IFC4X32.IfcHeatExchanger = IfcHeatExchanger;\n class IfcHumidifier extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2068733104;\n }\n }\n IFC4X32.IfcHumidifier = IfcHumidifier;\n class IfcInterceptor extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4175244083;\n }\n }\n IFC4X32.IfcInterceptor = IfcInterceptor;\n class IfcJunctionBox extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2176052936;\n }\n }\n IFC4X32.IfcJunctionBox = IfcJunctionBox;\n class IfcKerb extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, Mountable) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.Mountable = Mountable;\n this.type = 2696325953;\n }\n }\n IFC4X32.IfcKerb = IfcKerb;\n class IfcLamp extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 76236018;\n }\n }\n IFC4X32.IfcLamp = IfcLamp;\n class IfcLightFixture extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 629592764;\n }\n }\n IFC4X32.IfcLightFixture = IfcLightFixture;\n class IfcLinearPositioningElement extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1154579445;\n }\n }\n IFC4X32.IfcLinearPositioningElement = IfcLinearPositioningElement;\n class IfcLiquidTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1638804497;\n }\n }\n IFC4X32.IfcLiquidTerminal = IfcLiquidTerminal;\n class IfcMedicalDevice extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1437502449;\n }\n }\n IFC4X32.IfcMedicalDevice = IfcMedicalDevice;\n class IfcMember extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1073191201;\n }\n }\n IFC4X32.IfcMember = IfcMember;\n class IfcMobileTelecommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2078563270;\n }\n }\n IFC4X32.IfcMobileTelecommunicationsAppliance = IfcMobileTelecommunicationsAppliance;\n class IfcMooringDevice extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 234836483;\n }\n }\n IFC4X32.IfcMooringDevice = IfcMooringDevice;\n class IfcMotorConnection extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2474470126;\n }\n }\n IFC4X32.IfcMotorConnection = IfcMotorConnection;\n class IfcNavigationElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2182337498;\n }\n }\n IFC4X32.IfcNavigationElement = IfcNavigationElement;\n class IfcOuterBoundaryCurve extends IfcBoundaryCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 144952367;\n }\n }\n IFC4X32.IfcOuterBoundaryCurve = IfcOuterBoundaryCurve;\n class IfcOutlet extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3694346114;\n }\n }\n IFC4X32.IfcOutlet = IfcOutlet;\n class IfcPavement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1383356374;\n }\n }\n IFC4X32.IfcPavement = IfcPavement;\n class IfcPile extends IfcDeepFoundation {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC4X32.IfcPile = IfcPile;\n class IfcPipeFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 310824031;\n }\n }\n IFC4X32.IfcPipeFitting = IfcPipeFitting;\n class IfcPipeSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3612865200;\n }\n }\n IFC4X32.IfcPipeSegment = IfcPipeSegment;\n class IfcPlate extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3171933400;\n }\n }\n IFC4X32.IfcPlate = IfcPlate;\n class IfcProtectiveDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 738039164;\n }\n }\n IFC4X32.IfcProtectiveDevice = IfcProtectiveDevice;\n class IfcProtectiveDeviceTrippingUnitType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 655969474;\n }\n }\n IFC4X32.IfcProtectiveDeviceTrippingUnitType = IfcProtectiveDeviceTrippingUnitType;\n class IfcPump extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 90941305;\n }\n }\n IFC4X32.IfcPump = IfcPump;\n class IfcRail extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3290496277;\n }\n }\n IFC4X32.IfcRail = IfcRail;\n class IfcRailing extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC4X32.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3024970846;\n }\n }\n IFC4X32.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3283111854;\n }\n }\n IFC4X32.IfcRampFlight = IfcRampFlight;\n class IfcRationalBSplineCurveWithKnots extends IfcBSplineCurveWithKnots {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 1232101972;\n }\n }\n IFC4X32.IfcRationalBSplineCurveWithKnots = IfcRationalBSplineCurveWithKnots;\n class IfcReinforcedSoil extends IfcEarthworksElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3798194928;\n }\n }\n IFC4X32.IfcReinforcedSoil = IfcReinforcedSoil;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, PredefinedType, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.PredefinedType = PredefinedType;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC4X32.IfcReinforcingBar = IfcReinforcingBar;\n class IfcReinforcingBarType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, BarLength, BarSurface, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarSurface = BarSurface;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2572171363;\n }\n }\n IFC4X32.IfcReinforcingBarType = IfcReinforcingBarType;\n class IfcRoof extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2016517767;\n }\n }\n IFC4X32.IfcRoof = IfcRoof;\n class IfcSanitaryTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3053780830;\n }\n }\n IFC4X32.IfcSanitaryTerminal = IfcSanitaryTerminal;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC4X32.IfcSensorType = IfcSensorType;\n class IfcShadingDevice extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1329646415;\n }\n }\n IFC4X32.IfcShadingDevice = IfcShadingDevice;\n class IfcSignal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 991950508;\n }\n }\n IFC4X32.IfcSignal = IfcSignal;\n class IfcSlab extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC4X32.IfcSlab = IfcSlab;\n class IfcSolarDevice extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3420628829;\n }\n }\n IFC4X32.IfcSolarDevice = IfcSolarDevice;\n class IfcSpaceHeater extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1999602285;\n }\n }\n IFC4X32.IfcSpaceHeater = IfcSpaceHeater;\n class IfcStackTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1404847402;\n }\n }\n IFC4X32.IfcStackTerminal = IfcStackTerminal;\n class IfcStair extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 331165859;\n }\n }\n IFC4X32.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRisers, NumberOfTreads, RiserHeight, TreadLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRisers = NumberOfRisers;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.PredefinedType = PredefinedType;\n this.type = 4252922144;\n }\n }\n IFC4X32.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults, SharedPlacement) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.SharedPlacement = SharedPlacement;\n this.type = 2515109513;\n }\n }\n IFC4X32.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcStructuralLoadCase extends IfcStructuralLoadGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose, SelfWeightCoefficients) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.SelfWeightCoefficients = SelfWeightCoefficients;\n this.type = 385403989;\n }\n }\n IFC4X32.IfcStructuralLoadCase = IfcStructuralLoadCase;\n class IfcStructuralPlanarAction extends IfcStructuralSurfaceAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1621171031;\n }\n }\n IFC4X32.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcSwitchingDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1162798199;\n }\n }\n IFC4X32.IfcSwitchingDevice = IfcSwitchingDevice;\n class IfcTank extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 812556717;\n }\n }\n IFC4X32.IfcTank = IfcTank;\n class IfcTrackElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3425753595;\n }\n }\n IFC4X32.IfcTrackElement = IfcTrackElement;\n class IfcTransformer extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3825984169;\n }\n }\n IFC4X32.IfcTransformer = IfcTransformer;\n class IfcTransportElement extends IfcTransportationDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1620046519;\n }\n }\n IFC4X32.IfcTransportElement = IfcTransportElement;\n class IfcTubeBundle extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3026737570;\n }\n }\n IFC4X32.IfcTubeBundle = IfcTubeBundle;\n class IfcUnitaryControlElementType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3179687236;\n }\n }\n IFC4X32.IfcUnitaryControlElementType = IfcUnitaryControlElementType;\n class IfcUnitaryEquipment extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4292641817;\n }\n }\n IFC4X32.IfcUnitaryEquipment = IfcUnitaryEquipment;\n class IfcValve extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4207607924;\n }\n }\n IFC4X32.IfcValve = IfcValve;\n class IfcWall extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391406946;\n }\n }\n IFC4X32.IfcWall = IfcWall;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3512223829;\n }\n }\n IFC4X32.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWasteTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4237592921;\n }\n }\n IFC4X32.IfcWasteTerminal = IfcWasteTerminal;\n class IfcWindow extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 3304561284;\n }\n }\n IFC4X32.IfcWindow = IfcWindow;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC4X32.IfcActuatorType = IfcActuatorType;\n class IfcAirTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1634111441;\n }\n }\n IFC4X32.IfcAirTerminal = IfcAirTerminal;\n class IfcAirTerminalBox extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 177149247;\n }\n }\n IFC4X32.IfcAirTerminalBox = IfcAirTerminalBox;\n class IfcAirToAirHeatRecovery extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2056796094;\n }\n }\n IFC4X32.IfcAirToAirHeatRecovery = IfcAirToAirHeatRecovery;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC4X32.IfcAlarmType = IfcAlarmType;\n class IfcAlignment extends IfcLinearPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 325726236;\n }\n }\n IFC4X32.IfcAlignment = IfcAlignment;\n class IfcAudioVisualAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 277319702;\n }\n }\n IFC4X32.IfcAudioVisualAppliance = IfcAudioVisualAppliance;\n class IfcBeam extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 753842376;\n }\n }\n IFC4X32.IfcBeam = IfcBeam;\n class IfcBearing extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4196446775;\n }\n }\n IFC4X32.IfcBearing = IfcBearing;\n class IfcBoiler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 32344328;\n }\n }\n IFC4X32.IfcBoiler = IfcBoiler;\n class IfcBorehole extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3314249567;\n }\n }\n IFC4X32.IfcBorehole = IfcBorehole;\n class IfcBuildingElementProxy extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1095909175;\n }\n }\n IFC4X32.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBurner extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2938176219;\n }\n }\n IFC4X32.IfcBurner = IfcBurner;\n class IfcCableCarrierFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 635142910;\n }\n }\n IFC4X32.IfcCableCarrierFitting = IfcCableCarrierFitting;\n class IfcCableCarrierSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3758799889;\n }\n }\n IFC4X32.IfcCableCarrierSegment = IfcCableCarrierSegment;\n class IfcCableFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1051757585;\n }\n }\n IFC4X32.IfcCableFitting = IfcCableFitting;\n class IfcCableSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4217484030;\n }\n }\n IFC4X32.IfcCableSegment = IfcCableSegment;\n class IfcCaissonFoundation extends IfcDeepFoundation {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3999819293;\n }\n }\n IFC4X32.IfcCaissonFoundation = IfcCaissonFoundation;\n class IfcChiller extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3902619387;\n }\n }\n IFC4X32.IfcChiller = IfcChiller;\n class IfcCoil extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 639361253;\n }\n }\n IFC4X32.IfcCoil = IfcCoil;\n class IfcCommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3221913625;\n }\n }\n IFC4X32.IfcCommunicationsAppliance = IfcCommunicationsAppliance;\n class IfcCompressor extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3571504051;\n }\n }\n IFC4X32.IfcCompressor = IfcCompressor;\n class IfcCondenser extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2272882330;\n }\n }\n IFC4X32.IfcCondenser = IfcCondenser;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC4X32.IfcControllerType = IfcControllerType;\n class IfcConveyorSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3460952963;\n }\n }\n IFC4X32.IfcConveyorSegment = IfcConveyorSegment;\n class IfcCooledBeam extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4136498852;\n }\n }\n IFC4X32.IfcCooledBeam = IfcCooledBeam;\n class IfcCoolingTower extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3640358203;\n }\n }\n IFC4X32.IfcCoolingTower = IfcCoolingTower;\n class IfcDamper extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4074379575;\n }\n }\n IFC4X32.IfcDamper = IfcDamper;\n class IfcDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3693000487;\n }\n }\n IFC4X32.IfcDistributionBoard = IfcDistributionBoard;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1052013943;\n }\n }\n IFC4X32.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionCircuit extends IfcDistributionSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 562808652;\n }\n }\n IFC4X32.IfcDistributionCircuit = IfcDistributionCircuit;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1062813311;\n }\n }\n IFC4X32.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcDuctFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 342316401;\n }\n }\n IFC4X32.IfcDuctFitting = IfcDuctFitting;\n class IfcDuctSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3518393246;\n }\n }\n IFC4X32.IfcDuctSegment = IfcDuctSegment;\n class IfcDuctSilencer extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1360408905;\n }\n }\n IFC4X32.IfcDuctSilencer = IfcDuctSilencer;\n class IfcElectricAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1904799276;\n }\n }\n IFC4X32.IfcElectricAppliance = IfcElectricAppliance;\n class IfcElectricDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 862014818;\n }\n }\n IFC4X32.IfcElectricDistributionBoard = IfcElectricDistributionBoard;\n class IfcElectricFlowStorageDevice extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3310460725;\n }\n }\n IFC4X32.IfcElectricFlowStorageDevice = IfcElectricFlowStorageDevice;\n class IfcElectricFlowTreatmentDevice extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 24726584;\n }\n }\n IFC4X32.IfcElectricFlowTreatmentDevice = IfcElectricFlowTreatmentDevice;\n class IfcElectricGenerator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 264262732;\n }\n }\n IFC4X32.IfcElectricGenerator = IfcElectricGenerator;\n class IfcElectricMotor extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 402227799;\n }\n }\n IFC4X32.IfcElectricMotor = IfcElectricMotor;\n class IfcElectricTimeControl extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1003880860;\n }\n }\n IFC4X32.IfcElectricTimeControl = IfcElectricTimeControl;\n class IfcFan extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3415622556;\n }\n }\n IFC4X32.IfcFan = IfcFan;\n class IfcFilter extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 819412036;\n }\n }\n IFC4X32.IfcFilter = IfcFilter;\n class IfcFireSuppressionTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1426591983;\n }\n }\n IFC4X32.IfcFireSuppressionTerminal = IfcFireSuppressionTerminal;\n class IfcFlowInstrument extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 182646315;\n }\n }\n IFC4X32.IfcFlowInstrument = IfcFlowInstrument;\n class IfcGeomodel extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2680139844;\n }\n }\n IFC4X32.IfcGeomodel = IfcGeomodel;\n class IfcGeoslice extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1971632696;\n }\n }\n IFC4X32.IfcGeoslice = IfcGeoslice;\n class IfcProtectiveDeviceTrippingUnit extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2295281155;\n }\n }\n IFC4X32.IfcProtectiveDeviceTrippingUnit = IfcProtectiveDeviceTrippingUnit;\n class IfcSensor extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4086658281;\n }\n }\n IFC4X32.IfcSensor = IfcSensor;\n class IfcUnitaryControlElement extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 630975310;\n }\n }\n IFC4X32.IfcUnitaryControlElement = IfcUnitaryControlElement;\n class IfcActuator extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4288193352;\n }\n }\n IFC4X32.IfcActuator = IfcActuator;\n class IfcAlarm extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3087945054;\n }\n }\n IFC4X32.IfcAlarm = IfcAlarm;\n class IfcController extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 25142252;\n }\n }\n IFC4X32.IfcController = IfcController;\n})(IFC4X3 || (IFC4X3 = {}));\n\n// dist/helpers/properties.ts\nvar PropsNames = {\n aggregates: {\n name: IFCRELAGGREGATES,\n relating: \"RelatingObject\",\n related: \"RelatedObjects\",\n key: \"children\"\n },\n spatial: {\n name: IFCRELCONTAINEDINSPATIALSTRUCTURE,\n relating: \"RelatingStructure\",\n related: \"RelatedElements\",\n key: \"children\"\n },\n psets: {\n name: IFCRELDEFINESBYPROPERTIES,\n relating: \"RelatingPropertyDefinition\",\n related: \"RelatedObjects\",\n key: \"IsDefinedBy\"\n },\n materials: {\n name: IFCRELASSOCIATESMATERIAL,\n relating: \"RelatingMaterial\",\n related: \"RelatedObjects\",\n key: \"HasAssociations\"\n },\n type: {\n name: IFCRELDEFINESBYTYPE,\n relating: \"RelatingType\",\n related: \"RelatedObjects\",\n key: \"IsDefinedBy\"\n }\n};\nvar Properties = class {\n constructor(api) {\n this.api = api;\n }\n getItemProperties(modelID, id, recursive = false, inverse = false) {\n return __async(this, null, function* () {\n return this.api.GetLine(modelID, id, recursive, inverse);\n });\n }\n getPropertySets(modelID, elementID = 0, recursive = false, includeTypeProperties = false) {\n return __async(this, null, function* () {\n if (includeTypeProperties) {\n let types = yield this.getTypeProperties(modelID, elementID, false);\n let results = [];\n for (let t of types)\n results.push(...yield this.getPropertySets(modelID, t.expressID, recursive));\n return results;\n } else\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.psets, recursive);\n });\n }\n setPropertySets(modelID, elementID, psetID) {\n return __async(this, null, function* () {\n return this.setItemProperties(modelID, elementID, psetID, PropsNames.psets);\n });\n }\n getTypeProperties(modelID, elementID = 0, recursive = false) {\n return __async(this, null, function* () {\n if (this.api.GetModelSchema(modelID) == \"IFC2X3\") {\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.type, recursive);\n } else {\n return yield this.getRelatedProperties(modelID, elementID, __spreadProps(__spreadValues({}, PropsNames.type), { key: \"IsTypedBy\" }), recursive);\n }\n });\n }\n getMaterialsProperties(modelID, elementID = 0, recursive = false, includeTypeMaterials = false) {\n return __async(this, null, function* () {\n if (includeTypeMaterials) {\n let types = yield this.getTypeProperties(modelID, elementID, false);\n let results = [];\n for (let t of types)\n results.push(...yield this.getMaterialsProperties(modelID, t.expressID, recursive));\n return results;\n } else\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.materials, recursive);\n });\n }\n setMaterialsProperties(modelID, elementID, materialID) {\n return __async(this, null, function* () {\n return this.setItemProperties(modelID, elementID, materialID, PropsNames.materials);\n });\n }\n getSpatialStructure(modelID, includeProperties = false) {\n return __async(this, null, function* () {\n const chunks = yield this.getSpatialTreeChunks(modelID);\n const allLines = yield this.api.GetLineIDsWithType(modelID, IFCPROJECT);\n const projectID = allLines.get(0);\n const project = Properties.newIfcProject(projectID);\n yield this.getSpatialNode(modelID, project, chunks, includeProperties);\n return project;\n });\n }\n getRelatedProperties(modelID, elementID, propsName, recursive = false) {\n return __async(this, null, function* () {\n const result = [];\n let rels = null;\n if (elementID !== 0)\n rels = yield this.api.GetLine(modelID, elementID, false, true, propsName.key)[propsName.key];\n else {\n let vec = this.api.GetLineIDsWithType(modelID, propsName.name);\n rels = [];\n for (let i = 0; i < vec.size(); ++i)\n rels.push({ value: vec.get(i) });\n }\n if (rels == null)\n return result;\n if (!Array.isArray(rels))\n rels = [rels];\n for (let i = 0; i < rels.length; i++) {\n let propSetIds = yield this.api.GetLine(modelID, rels[i].value, false, false)[propsName.relating];\n if (propSetIds == null)\n continue;\n if (!Array.isArray(propSetIds))\n propSetIds = [propSetIds];\n for (let x = 0; x < propSetIds.length; x++) {\n result.push(yield this.api.GetLine(modelID, propSetIds[x].value, recursive));\n }\n }\n return result;\n });\n }\n getChunks(modelID, chunks, propNames) {\n return __async(this, null, function* () {\n const relation = yield this.api.GetLineIDsWithType(modelID, propNames.name, true);\n for (let i = 0; i < relation.size(); i++) {\n const rel = yield this.api.GetLine(modelID, relation.get(i), false);\n this.saveChunk(chunks, propNames, rel);\n }\n });\n }\n static newIfcProject(id) {\n return {\n expressID: id,\n type: \"IFCPROJECT\",\n children: []\n };\n }\n getSpatialNode(modelID, node, treeChunks, includeProperties) {\n return __async(this, null, function* () {\n yield this.getChildren(modelID, node, treeChunks, PropsNames.aggregates, includeProperties);\n yield this.getChildren(modelID, node, treeChunks, PropsNames.spatial, includeProperties);\n });\n }\n getChildren(modelID, node, treeChunks, propNames, includeProperties) {\n return __async(this, null, function* () {\n const children = treeChunks[node.expressID];\n if (children == void 0)\n return;\n const prop = propNames.key;\n const nodes = [];\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n let node2 = this.newNode(child, this.api.GetLineType(modelID, child));\n if (includeProperties) {\n const properties = yield this.getItemProperties(modelID, node2.expressID);\n node2 = __spreadValues(__spreadValues({}, properties), node2);\n }\n yield this.getSpatialNode(modelID, node2, treeChunks, includeProperties);\n nodes.push(node2);\n }\n node[prop] = nodes;\n });\n }\n newNode(id, type) {\n return {\n expressID: id,\n type: this.api.GetNameFromTypeCode(type),\n children: []\n };\n }\n getSpatialTreeChunks(modelID) {\n return __async(this, null, function* () {\n const treeChunks = {};\n yield this.getChunks(modelID, treeChunks, PropsNames.aggregates);\n yield this.getChunks(modelID, treeChunks, PropsNames.spatial);\n return treeChunks;\n });\n }\n saveChunk(chunks, propNames, rel) {\n const relating = rel[propNames.relating].value;\n const related = rel[propNames.related].map((r) => r.value);\n if (chunks[relating] == void 0) {\n chunks[relating] = related;\n } else {\n chunks[relating] = chunks[relating].concat(related);\n }\n }\n setItemProperties(modelID, elementID, propID, propsName) {\n return __async(this, null, function* () {\n if (!Array.isArray(elementID))\n elementID = [elementID];\n if (!Array.isArray(propID))\n propID = [propID];\n let foundRel = 0;\n const rels = [];\n const elements = [];\n for (const elID of elementID) {\n const element = yield this.api.GetLine(modelID, elID, false, true);\n if (!element[propsName.key])\n continue;\n elements.push(element);\n }\n if (elements.length < 1)\n return false;\n const relations = this.api.GetLineIDsWithType(modelID, propsName.name);\n for (let i = 0; i < relations.size(); ++i) {\n const rel = yield this.api.GetLine(modelID, relations.get(i));\n if (propID.includes(Number(rel[propsName.relating].value))) {\n rels.push(rel);\n foundRel++;\n }\n if (foundRel == propID.length)\n break;\n }\n for (const element of elements) {\n for (const rel of rels) {\n if (!element[propsName.key].some((e) => e.value === rel.expressID))\n element[propsName.key].push({ type: 5, value: rel.expressID });\n if (!rel[propsName.related].some((e) => e.value === element.expressID)) {\n rel[propsName.related].push({ type: 5, value: element.expressID });\n this.api.WriteLine(modelID, rel);\n }\n }\n this.api.WriteLine(modelID, element);\n }\n return true;\n });\n }\n};\n\n// dist/helpers/log.ts\nvar LogLevel;\n(function(LogLevel2) {\n LogLevel2[LogLevel2[\"LOG_LEVEL_DEBUG\"] = 1] = \"LOG_LEVEL_DEBUG\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_WARN\"] = 3] = \"LOG_LEVEL_WARN\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_ERROR\"] = 4] = \"LOG_LEVEL_ERROR\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_OFF\"] = 6] = \"LOG_LEVEL_OFF\";\n})(LogLevel || (LogLevel = {}));\nvar Log = class {\n static setLogLevel(level) {\n this.logLevel = level;\n }\n static log(msg, ...args) {\n if (this.logLevel <= 4) {\n console.log(msg, ...args);\n }\n }\n static debug(msg, ...args) {\n if (this.logLevel <= 1) {\n console.trace(\"DEBUG: \", msg, ...args);\n }\n }\n static warn(msg, ...args) {\n if (this.logLevel <= 3) {\n console.warn(\"WARN: \", msg, ...args);\n }\n }\n static error(msg, ...args) {\n if (this.logLevel <= 4) {\n console.error(\"ERROR: \", msg, ...args);\n }\n }\n};\nLog.logLevel = 4;\n\n// dist/web-ifc-api.ts\nif (false)\n __WASM_PATH__ = \"./web-ifc\";\nvar WebIFCWasm;\nif (typeof self !== \"undefined\" && self.crossOriginIsolated) {\n try {\n WebIFCWasm = require_web_ifc_mt();\n } catch (ex) {\n WebIFCWasm = require_web_ifc();\n }\n} else\n WebIFCWasm = require_web_ifc();\nvar UNKNOWN = 0;\nvar STRING = 1;\nvar LABEL = 2;\nvar ENUM = 3;\nvar REAL = 4;\nvar REF = 5;\nvar EMPTY = 6;\nvar SET_BEGIN = 7;\nvar SET_END = 8;\nvar LINE_END = 9;\nvar INTEGER = 10;\nfunction ms() {\n return new Date().getTime();\n}\nvar IfcAPI2 = class {\n constructor() {\n this.wasmModule = void 0;\n this.wasmPath = \"\";\n this.isWasmPathAbsolute = false;\n this.modelSchemaList = [];\n this.modelSchemaNameList = [];\n this.ifcGuidMap = new Map();\n this.deletedLines = new Map();\n this.properties = new Properties(this);\n }\n Init(customLocateFileHandler) {\n return __async(this, null, function* () {\n if (WebIFCWasm) {\n let locateFileHandler = (path, prefix) => {\n if (path.endsWith(\".wasm\")) {\n if (this.isWasmPathAbsolute) {\n return this.wasmPath + path;\n }\n return prefix + this.wasmPath + path;\n }\n return prefix + path;\n };\n this.wasmModule = yield WebIFCWasm({ noInitialRun: true, locateFile: customLocateFileHandler || locateFileHandler });\n this.SetLogLevel(LogLevel.LOG_LEVEL_ERROR);\n } else {\n Log.error(`Could not find wasm module at './web-ifc' from web-ifc-api.ts`);\n }\n });\n }\n OpenModels(dataSets, settings) {\n let s = __spreadValues({\n MEMORY_LIMIT: 2147483648\n }, settings);\n s.MEMORY_LIMIT = s.MEMORY_LIMIT / dataSets.length;\n let modelIDs = [];\n for (let dataSet of dataSets)\n modelIDs.push(this.OpenModel(dataSet, s));\n return modelIDs;\n }\n CreateSettings(settings) {\n let s = __spreadValues({\n OPTIMIZE_PROFILES: false,\n COORDINATE_TO_ORIGIN: false,\n CIRCLE_SEGMENTS: 12,\n TAPE_SIZE: 67108864,\n MEMORY_LIMIT: 2147483648\n }, settings);\n let deprecated = [\"USE_FAST_BOOLS\", \"CIRCLE_SEGMENTS_LOW\", \"CIRCLE_SEGMENTS_MEDIUM\", \"CIRCLE_SEGMENTS_HIGH\"];\n for (let d in deprecated) {\n if (d in s) {\n Log.warn(\"Use of deprecated settings \" + d + \" detected\");\n }\n }\n return s;\n }\n LookupSchemaId(schemaName) {\n for (var i = 0; i < SchemaNames.length; i++) {\n if (typeof SchemaNames[i] !== \"undefined\") {\n for (var j = 0; j < SchemaNames[i].length; j++) {\n if (SchemaNames[i][j] == schemaName)\n return i;\n }\n }\n }\n return -1;\n }\n OpenModel(data, settings) {\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.OpenModel(s, (destPtr, offsetInSrc, destSize) => {\n let srcSize = Math.min(data.byteLength - offsetInSrc, destSize);\n let dest = this.wasmModule.HEAPU8.subarray(destPtr, destPtr + srcSize);\n let src = data.subarray(offsetInSrc, offsetInSrc + srcSize);\n dest.set(src);\n return srcSize;\n });\n this.deletedLines.set(result, new Set());\n var schemaName = this.GetHeaderLine(result, FILE_SCHEMA).arguments[0][0].value;\n this.modelSchemaList[result] = this.LookupSchemaId(schemaName);\n this.modelSchemaNameList[result] = schemaName;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + schemaName);\n this.CloseModel(result);\n return -1;\n }\n Log.debug(\"Parsing Model using \" + schemaName + \" Schema\");\n return result;\n }\n OpenModelFromCallback(callback, settings) {\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.OpenModel(s, (destPtr, offsetInSrc, destSize) => {\n let data = callback(offsetInSrc, destSize);\n let srcSize = Math.min(data.byteLength, destSize);\n let dest = this.wasmModule.HEAPU8.subarray(destPtr, destPtr + srcSize);\n dest.set(data);\n return srcSize;\n });\n this.deletedLines.set(result, new Set());\n var schemaName = this.GetHeaderLine(result, FILE_SCHEMA).arguments[0][0].value;\n this.modelSchemaList[result] = this.LookupSchemaId(schemaName);\n this.modelSchemaNameList[result] = schemaName;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + schemaName);\n this.CloseModel(result);\n return -1;\n }\n Log.debug(\"Parsing Model using \" + schemaName + \" Schema\");\n return result;\n }\n GetModelSchema(modelID) {\n return this.modelSchemaNameList[modelID];\n }\n CreateModel(model, settings) {\n var _a, _b, _c;\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.CreateModel(s);\n this.modelSchemaList[result] = this.LookupSchemaId(model.schema);\n this.modelSchemaNameList[result] = model.schema;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + model.schema);\n this.CloseModel(result);\n return -1;\n }\n this.deletedLines.set(result, new Set());\n const modelName = model.name || \"web-ifc-model-\" + result + \".ifc\";\n const timestamp = new Date().toISOString().slice(0, 19);\n const description = ((_a = model.description) == null ? void 0 : _a.map((d) => ({ type: STRING, value: d }))) || [{ type: STRING, value: \"ViewDefinition [CoordinationView]\" }];\n const authors = ((_b = model.authors) == null ? void 0 : _b.map((a) => ({ type: STRING, value: a }))) || [null];\n const orgs = ((_c = model.organizations) == null ? void 0 : _c.map((o) => ({ type: STRING, value: o }))) || [null];\n const auth = model.authorization ? { type: STRING, value: model.authorization } : null;\n this.wasmModule.WriteHeaderLine(result, FILE_DESCRIPTION, [\n description,\n { type: STRING, value: \"2;1\" }\n ]);\n this.wasmModule.WriteHeaderLine(result, FILE_NAME, [\n { type: STRING, value: modelName },\n { type: STRING, value: timestamp },\n authors,\n orgs,\n { type: STRING, value: \"ifcjs/web-ifc-api\" },\n { type: STRING, value: \"ifcjs/web-ifc-api\" },\n auth\n ]);\n this.wasmModule.WriteHeaderLine(result, FILE_SCHEMA, [[{ type: STRING, value: model.schema }]]);\n return result;\n }\n SaveModel(modelID) {\n let dataBuffer = new Uint8Array(0);\n this.wasmModule.SaveModel(modelID, (srcPtr, srcSize) => {\n let src = this.wasmModule.HEAPU8.subarray(srcPtr, srcPtr + srcSize);\n dataBuffer = new Uint8Array(srcSize);\n dataBuffer.set(src, 0);\n });\n return dataBuffer;\n }\n ExportFileAsIFC(modelID) {\n Log.warn(\"ExportFileAsIFC is deprecated, use SaveModel instead\");\n return this.SaveModel(modelID);\n }\n GetGeometry(modelID, geometryExpressID) {\n return this.wasmModule.GetGeometry(modelID, geometryExpressID);\n }\n GetHeaderLine(modelID, headerType) {\n return this.wasmModule.GetHeaderLine(modelID, headerType);\n }\n GetAllTypesOfModel(modelID) {\n let typesNames = [];\n const elements = Object.keys(FromRawLineData[this.modelSchemaList[modelID]]).map((e) => parseInt(e));\n for (let i = 0; i < elements.length; i++) {\n const lines = this.GetLineIDsWithType(modelID, elements[i]);\n if (lines.size() > 0)\n typesNames.push({ typeID: elements[i], typeName: this.wasmModule.GetNameFromTypeCode(elements[i]) });\n }\n return typesNames;\n }\n GetLine(modelID, expressID, flatten = false, inverse = false, inversePropKey = null) {\n let expressCheck = this.wasmModule.ValidateExpressID(modelID, expressID);\n if (!expressCheck) {\n return;\n }\n let rawLineData = this.GetRawLineData(modelID, expressID);\n let lineData;\n try {\n lineData = FromRawLineData[this.modelSchemaList[modelID]][rawLineData.type](rawLineData.arguments);\n lineData.expressID = rawLineData.ID;\n } catch (e) {\n Log.error(\"Invalid IFC Line:\" + expressID);\n if (rawLineData.ID) {\n throw e;\n } else {\n return;\n }\n }\n if (flatten) {\n this.FlattenLine(modelID, lineData);\n }\n let inverseData = InversePropertyDef[this.modelSchemaList[modelID]][rawLineData.type];\n if (inverse && inverseData != null) {\n for (let inverseProp of inverseData) {\n if (inversePropKey && inverseProp[0] !== inversePropKey)\n continue;\n if (!inverseProp[3])\n lineData[inverseProp[0]] = null;\n else\n lineData[inverseProp[0]] = [];\n let targetTypes = [inverseProp[1]];\n if (typeof InheritanceDef[this.modelSchemaList[modelID]][inverseProp[1]] != \"undefined\") {\n targetTypes = targetTypes.concat(InheritanceDef[this.modelSchemaList[modelID]][inverseProp[1]]);\n }\n let inverseIDs = this.wasmModule.GetInversePropertyForItem(modelID, expressID, targetTypes, inverseProp[2], inverseProp[3]);\n if (!inverseProp[3] && inverseIDs.size() > 0) {\n if (!flatten)\n lineData[inverseProp[0]] = { type: 5, value: inverseIDs.get(0) };\n else\n lineData[inverseProp[0]] = this.GetLine(modelID, inverseIDs.get(0));\n } else {\n for (let x = 0; x < inverseIDs.size(); x++) {\n if (!flatten)\n lineData[inverseProp[0]].push({ type: 5, value: inverseIDs.get(x) });\n else\n lineData[inverseProp[0]].push(this.GetLine(modelID, inverseIDs.get(x)));\n }\n }\n }\n }\n return lineData;\n }\n GetNextExpressID(modelID, expressID) {\n return this.wasmModule.GetNextExpressID(modelID, expressID);\n }\n GetAndClearErrors(_) {\n Log.warn(\"GetAndClearErrors is deprecated and will be removed in the next version\");\n return { size: function() {\n return 0;\n }, get: function(_2) {\n return {};\n } };\n }\n CreateIfcEntity(modelID, type, ...args) {\n return Constructors[this.modelSchemaList[modelID]][type](args);\n }\n CreateIfcType(modelID, type, value) {\n return TypeInitialisers[this.modelSchemaList[modelID]][type](value);\n }\n GetNameFromTypeCode(type) {\n return this.wasmModule.GetNameFromTypeCode(type);\n }\n GetTypeCodeFromName(typeName) {\n return this.wasmModule.GetTypeCodeFromName(typeName);\n }\n IsIfcElement(type) {\n return this.wasmModule.IsIfcElement(type);\n }\n GetIfcEntityList(modelID) {\n return Object.keys(FromRawLineData[this.modelSchemaList[modelID]]).map((x) => parseInt(x));\n }\n DeleteLine(modelID, expressID) {\n this.wasmModule.RemoveLine(modelID, expressID);\n this.deletedLines.get(modelID).add(expressID);\n }\n WriteLines(modelID, lineObjects) {\n this.wasmModule.ExtendLineStorage(modelID, lineObjects.length);\n for (let lineObject of lineObjects)\n this.WriteLine(modelID, lineObject);\n }\n WriteLine(modelID, lineObject) {\n if (lineObject.expressID != -1 && this.deletedLines.get(modelID).has(lineObject.expressID)) {\n Log.error(`Cannot re-use deleted express ID`);\n return;\n }\n if (lineObject.expressID != -1 && lineObject.expressID <= this.GetMaxExpressID(modelID) && this.GetLineType(modelID, lineObject.expressID) != lineObject.type && this.GetLineType(modelID, lineObject.expressID) != 0) {\n Log.error(`Cannot change type of existing IFC Line`);\n return;\n }\n let property;\n for (property in lineObject) {\n const lineProperty = lineObject[property];\n if (lineProperty && lineProperty.expressID !== void 0) {\n this.WriteLine(modelID, lineProperty);\n lineObject[property] = new Handle(lineProperty.expressID);\n } else if (Array.isArray(lineProperty) && lineProperty.length > 0) {\n for (let i = 0; i < lineProperty.length; i++) {\n if (lineProperty[i].expressID !== void 0) {\n this.WriteLine(modelID, lineProperty[i]);\n lineObject[property][i] = new Handle(lineProperty[i].expressID);\n }\n }\n }\n }\n if (lineObject.expressID === void 0 || lineObject.expressID < 0) {\n lineObject.expressID = this.GetMaxExpressID(modelID) + 1;\n }\n let rawLineData = {\n ID: lineObject.expressID,\n type: lineObject.type,\n arguments: ToRawLineData[this.modelSchemaList[modelID]][lineObject.type](lineObject)\n };\n this.WriteRawLineData(modelID, rawLineData);\n }\n FlattenLine(modelID, line) {\n Object.keys(line).forEach((propertyName) => {\n let property = line[propertyName];\n if (property && property.type === 5) {\n if (property.value)\n line[propertyName] = this.GetLine(modelID, property.value, true);\n } else if (Array.isArray(property) && property.length > 0 && property[0] && property[0].type === 5) {\n for (let i = 0; i < property.length; i++) {\n if (property[i].value)\n line[propertyName][i] = this.GetLine(modelID, property[i].value, true);\n }\n }\n });\n }\n GetRawLineData(modelID, expressID) {\n return this.wasmModule.GetLine(modelID, expressID);\n }\n WriteRawLineData(modelID, data) {\n this.wasmModule.WriteLine(modelID, data.ID, data.type, data.arguments);\n }\n WriteRawLinesData(modelID, data) {\n this.wasmModule.ExtendLineStorage(modelID, data.length);\n for (let rawLine of data)\n this.wasmModule.WriteLine(modelID, rawLine.ID, rawLine.type, rawLine.arguments);\n }\n GetLineIDsWithType(modelID, type, includeInherited = false) {\n let types = [];\n types.push(type);\n if (includeInherited && typeof InheritanceDef[this.modelSchemaList[modelID]][type] != \"undefined\") {\n types = types.concat(InheritanceDef[this.modelSchemaList[modelID]][type]);\n }\n return this.wasmModule.GetLineIDsWithType(modelID, types);\n }\n GetAllLines(modelID) {\n return this.wasmModule.GetAllLines(modelID);\n }\n GetAllCrossSections2D(modelID) {\n const crossSections = this.wasmModule.GetAllCrossSections2D(modelID);\n const crossSectionList = [];\n for (let i = 0; i < crossSections.size(); i++) {\n const alignment = crossSections.get(i);\n const curveList = [];\n const expressList = [];\n for (let j = 0; j < alignment.curves.size(); j++) {\n const curve = alignment.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y, z: pt.z };\n ptList.push(newPoint);\n }\n const newCurve = { points: ptList };\n curveList.push(newCurve);\n expressList.push(alignment.expressID.get(j));\n }\n const align = { origin, curves: curveList, expressID: expressList };\n crossSectionList.push(align);\n }\n return crossSectionList;\n }\n GetAllCrossSections3D(modelID) {\n const crossSections = this.wasmModule.GetAllCrossSections3D(modelID);\n const crossSectionList = [];\n for (let i = 0; i < crossSections.size(); i++) {\n const alignment = crossSections.get(i);\n const curveList = [];\n const expressList = [];\n for (let j = 0; j < alignment.curves.size(); j++) {\n const curve = alignment.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y, z: pt.z };\n ptList.push(newPoint);\n }\n const newCurve = { points: ptList };\n curveList.push(newCurve);\n expressList.push(alignment.expressID.get(j));\n }\n const align = { origin, curves: curveList, expressID: expressList };\n crossSectionList.push(align);\n }\n return crossSectionList;\n }\n GetAllAlignments(modelID) {\n const alignments = this.wasmModule.GetAllAlignments(modelID);\n const alignmentList = [];\n for (let i = 0; i < alignments.size(); i++) {\n const alignment = alignments.get(i);\n const horList = [];\n for (let j = 0; j < alignment.Horizontal.curves.size(); j++) {\n const curve = alignment.Horizontal.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y };\n ptList.push(newPoint);\n }\n const dtList = [];\n for (let p = 0; p < curve.userData.size(); p++) {\n const dt = curve.userData.get(p);\n dtList.push(dt);\n }\n const newCurve = { points: ptList, data: dtList };\n horList.push(newCurve);\n }\n const verList = [];\n for (let j = 0; j < alignment.Vertical.curves.size(); j++) {\n const curve = alignment.Vertical.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y };\n ptList.push(newPoint);\n }\n const dtList = [];\n for (let p = 0; p < curve.userData.size(); p++) {\n const dt = curve.userData.get(p);\n dtList.push(dt);\n }\n const newCurve = { points: ptList, data: dtList };\n verList.push(newCurve);\n }\n const curve3DList = [];\n if (alignment.Horizontal.curves.size() > 0 && alignment.Vertical.curves.size() > 0) {\n const startH = { x: 0, y: 0, z: 0 };\n const startV = { x: 0, y: 0, z: 0 };\n let lastx = 0;\n let lasty = 0;\n let length = 0;\n for (let j = 0; j < alignment.Horizontal.curves.size(); j++) {\n const curve = alignment.Horizontal.curves.get(j);\n const points = [];\n for (let k = 0; k < curve.points.size(); k++) {\n let alt = 0;\n const pt = curve.points.get(k);\n if (j === 0 && k === 0) {\n lastx = pt.x;\n lasty = pt.y;\n }\n const valueX = pt.x - lastx;\n const valueY = pt.y - lasty;\n lastx = pt.x;\n lasty = pt.y;\n length += Math.sqrt(valueX * valueX + valueY * valueY);\n let first = true;\n let lastAlt = 0;\n let lastX = 0;\n let done = false;\n for (let ii = 0; ii < alignment.Vertical.curves.size(); ii++) {\n const curve2 = alignment.Vertical.curves.get(ii);\n for (let jj = 0; jj < curve2.points.size(); jj++) {\n const pt2 = curve2.points.get(jj);\n if (first) {\n first = false;\n alt = pt2.y;\n lastAlt = pt2.y;\n if (pt2.x >= length) {\n break;\n }\n }\n if (pt2.x >= length) {\n const value1 = pt2.x - lastX;\n const value2 = length - lastX;\n const value3 = value2 / value1;\n alt = lastAlt * (1 - value3) + pt2.y * value3;\n done = true;\n break;\n }\n lastAlt = pt2.y;\n lastX = pt2.x;\n }\n if (done) {\n break;\n }\n }\n points.push({\n x: pt.x - startH.x,\n y: alt - startV.y,\n z: startH.y - pt.y\n });\n }\n const newCurve = { points };\n curve3DList.push(newCurve);\n }\n }\n const align = {\n origin,\n horizontal: horList,\n vertical: verList,\n curve3D: curve3DList\n };\n alignmentList.push(align);\n }\n return alignmentList;\n }\n SetGeometryTransformation(modelID, transformationMatrix) {\n if (transformationMatrix.length != 16) {\n throw new Error(`invalid matrix size: ${transformationMatrix.length}`);\n }\n this.wasmModule.SetGeometryTransformation(modelID, transformationMatrix);\n }\n GetCoordinationMatrix(modelID) {\n return this.wasmModule.GetCoordinationMatrix(modelID);\n }\n GetVertexArray(ptr, size) {\n return this.getSubArray(this.wasmModule.HEAPF32, ptr, size);\n }\n GetIndexArray(ptr, size) {\n return this.getSubArray(this.wasmModule.HEAPU32, ptr, size);\n }\n getSubArray(heap, startPtr, sizeBytes) {\n return heap.subarray(startPtr / 4, startPtr / 4 + sizeBytes).slice(0);\n }\n CloseModel(modelID) {\n this.ifcGuidMap.delete(modelID);\n this.wasmModule.CloseModel(modelID);\n }\n StreamMeshes(modelID, expressIDs, meshCallback) {\n this.wasmModule.StreamMeshes(modelID, expressIDs, meshCallback);\n }\n StreamAllMeshes(modelID, meshCallback) {\n this.wasmModule.StreamAllMeshes(modelID, meshCallback);\n }\n StreamAllMeshesWithTypes(modelID, types, meshCallback) {\n this.wasmModule.StreamAllMeshesWithTypes(modelID, types, meshCallback);\n }\n IsModelOpen(modelID) {\n return this.wasmModule.IsModelOpen(modelID);\n }\n LoadAllGeometry(modelID) {\n return this.wasmModule.LoadAllGeometry(modelID);\n }\n GetFlatMesh(modelID, expressID) {\n return this.wasmModule.GetFlatMesh(modelID, expressID);\n }\n GetMaxExpressID(modelID) {\n return this.wasmModule.GetMaxExpressID(modelID);\n }\n IncrementMaxExpressID(modelID, incrementSize) {\n Log.warn(\"IncrementMaxExpressID is deprecated, use GetNextExpressID or GetMaxExpressID instead\");\n return this.wasmModule.GetMaxExpressID(modelID) + incrementSize;\n }\n GetLineType(modelID, expressID) {\n return this.wasmModule.GetLineType(modelID, expressID);\n }\n GetVersion() {\n return this.wasmModule.GetVersion();\n }\n GetExpressIdFromGuid(modelID, guid) {\n var _a;\n if (!this.ifcGuidMap.has(modelID))\n this.CreateIfcGuidToExpressIdMapping(modelID);\n return (_a = this.ifcGuidMap.get(modelID)) == null ? void 0 : _a.get(guid);\n }\n GetGuidFromExpressId(modelID, expressID) {\n var _a;\n if (!this.ifcGuidMap.has(modelID))\n this.CreateIfcGuidToExpressIdMapping(modelID);\n return (_a = this.ifcGuidMap.get(modelID)) == null ? void 0 : _a.get(expressID);\n }\n CreateIfcGuidToExpressIdMapping(modelID) {\n const map = new Map();\n let entities = this.GetIfcEntityList(modelID);\n for (const typeId of entities) {\n if (!this.IsIfcElement(typeId))\n continue;\n const lines = this.GetLineIDsWithType(modelID, typeId);\n const size = lines.size();\n for (let y = 0; y < size; y++) {\n const expressID = lines.get(y);\n const info = this.GetLine(modelID, expressID);\n try {\n if (\"GlobalId\" in info) {\n const globalID = info.GlobalId.value;\n map.set(expressID, globalID);\n map.set(globalID, expressID);\n }\n } catch (e) {\n continue;\n }\n }\n }\n this.ifcGuidMap.set(modelID, map);\n }\n SetWasmPath(path, absolute = false) {\n this.wasmPath = path;\n this.isWasmPathAbsolute = absolute;\n }\n SetLogLevel(level) {\n Log.setLogLevel(level);\n this.wasmModule.SetLogLevel(level);\n }\n};\nexport {\n Constructors,\n EMPTY,\n ENUM,\n FILE_DESCRIPTION,\n FILE_NAME,\n FILE_SCHEMA,\n FromRawLineData,\n Handle,\n IFC2DCOMPOSITECURVE,\n IFC2X3,\n IFC4,\n IFC4X3,\n IFCABSORBEDDOSEMEASURE,\n IFCACCELERATIONMEASURE,\n IFCACTIONREQUEST,\n IFCACTOR,\n IFCACTORROLE,\n IFCACTUATOR,\n IFCACTUATORTYPE,\n IFCADDRESS,\n IFCADVANCEDBREP,\n IFCADVANCEDBREPWITHVOIDS,\n IFCADVANCEDFACE,\n IFCAIRTERMINAL,\n IFCAIRTERMINALBOX,\n IFCAIRTERMINALBOXTYPE,\n IFCAIRTERMINALTYPE,\n IFCAIRTOAIRHEATRECOVERY,\n IFCAIRTOAIRHEATRECOVERYTYPE,\n IFCALARM,\n IFCALARMTYPE,\n IFCALIGNMENT,\n IFCALIGNMENTCANT,\n IFCALIGNMENTCANTSEGMENT,\n IFCALIGNMENTHORIZONTAL,\n IFCALIGNMENTHORIZONTALSEGMENT,\n IFCALIGNMENTPARAMETERSEGMENT,\n IFCALIGNMENTSEGMENT,\n IFCALIGNMENTVERTICAL,\n IFCALIGNMENTVERTICALSEGMENT,\n IFCAMOUNTOFSUBSTANCEMEASURE,\n IFCANGULARDIMENSION,\n IFCANGULARVELOCITYMEASURE,\n IFCANNOTATION,\n IFCANNOTATIONCURVEOCCURRENCE,\n IFCANNOTATIONFILLAREA,\n IFCANNOTATIONFILLAREAOCCURRENCE,\n IFCANNOTATIONOCCURRENCE,\n IFCANNOTATIONSURFACE,\n IFCANNOTATIONSURFACEOCCURRENCE,\n IFCANNOTATIONSYMBOLOCCURRENCE,\n IFCANNOTATIONTEXTOCCURRENCE,\n IFCAPPLICATION,\n IFCAPPLIEDVALUE,\n IFCAPPLIEDVALUERELATIONSHIP,\n IFCAPPROVAL,\n IFCAPPROVALACTORRELATIONSHIP,\n IFCAPPROVALPROPERTYRELATIONSHIP,\n IFCAPPROVALRELATIONSHIP,\n IFCARBITRARYCLOSEDPROFILEDEF,\n IFCARBITRARYOPENPROFILEDEF,\n IFCARBITRARYPROFILEDEFWITHVOIDS,\n IFCARCINDEX,\n IFCAREADENSITYMEASURE,\n IFCAREAMEASURE,\n IFCASSET,\n IFCASYMMETRICISHAPEPROFILEDEF,\n IFCAUDIOVISUALAPPLIANCE,\n IFCAUDIOVISUALAPPLIANCETYPE,\n IFCAXIS1PLACEMENT,\n IFCAXIS2PLACEMENT2D,\n IFCAXIS2PLACEMENT3D,\n IFCAXIS2PLACEMENTLINEAR,\n IFCBEAM,\n IFCBEAMSTANDARDCASE,\n IFCBEAMTYPE,\n IFCBEARING,\n IFCBEARINGTYPE,\n IFCBEZIERCURVE,\n IFCBINARY,\n IFCBLOBTEXTURE,\n IFCBLOCK,\n IFCBOILER,\n IFCBOILERTYPE,\n IFCBOOLEAN,\n IFCBOOLEANCLIPPINGRESULT,\n IFCBOOLEANRESULT,\n IFCBOREHOLE,\n IFCBOUNDARYCONDITION,\n IFCBOUNDARYCURVE,\n IFCBOUNDARYEDGECONDITION,\n IFCBOUNDARYFACECONDITION,\n IFCBOUNDARYNODECONDITION,\n IFCBOUNDARYNODECONDITIONWARPING,\n IFCBOUNDEDCURVE,\n IFCBOUNDEDSURFACE,\n IFCBOUNDINGBOX,\n IFCBOXALIGNMENT,\n IFCBOXEDHALFSPACE,\n IFCBRIDGE,\n IFCBRIDGEPART,\n IFCBSPLINECURVE,\n IFCBSPLINECURVEWITHKNOTS,\n IFCBSPLINESURFACE,\n IFCBSPLINESURFACEWITHKNOTS,\n IFCBUILDING,\n IFCBUILDINGELEMENT,\n IFCBUILDINGELEMENTCOMPONENT,\n IFCBUILDINGELEMENTPART,\n IFCBUILDINGELEMENTPARTTYPE,\n IFCBUILDINGELEMENTPROXY,\n IFCBUILDINGELEMENTPROXYTYPE,\n IFCBUILDINGELEMENTTYPE,\n IFCBUILDINGSTOREY,\n IFCBUILDINGSYSTEM,\n IFCBUILTELEMENT,\n IFCBUILTELEMENTTYPE,\n IFCBUILTSYSTEM,\n IFCBURNER,\n IFCBURNERTYPE,\n IFCCABLECARRIERFITTING,\n IFCCABLECARRIERFITTINGTYPE,\n IFCCABLECARRIERSEGMENT,\n IFCCABLECARRIERSEGMENTTYPE,\n IFCCABLEFITTING,\n IFCCABLEFITTINGTYPE,\n IFCCABLESEGMENT,\n IFCCABLESEGMENTTYPE,\n IFCCAISSONFOUNDATION,\n IFCCAISSONFOUNDATIONTYPE,\n IFCCALENDARDATE,\n IFCCARDINALPOINTREFERENCE,\n IFCCARTESIANPOINT,\n IFCCARTESIANPOINTLIST,\n IFCCARTESIANPOINTLIST2D,\n IFCCARTESIANPOINTLIST3D,\n IFCCARTESIANTRANSFORMATIONOPERATOR,\n IFCCARTESIANTRANSFORMATIONOPERATOR2D,\n IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM,\n IFCCARTESIANTRANSFORMATIONOPERATOR3D,\n IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM,\n IFCCENTERLINEPROFILEDEF,\n IFCCHAMFEREDGEFEATURE,\n IFCCHILLER,\n IFCCHILLERTYPE,\n IFCCHIMNEY,\n IFCCHIMNEYTYPE,\n IFCCIRCLE,\n IFCCIRCLEHOLLOWPROFILEDEF,\n IFCCIRCLEPROFILEDEF,\n IFCCIVILELEMENT,\n IFCCIVILELEMENTTYPE,\n IFCCLASSIFICATION,\n IFCCLASSIFICATIONITEM,\n IFCCLASSIFICATIONITEMRELATIONSHIP,\n IFCCLASSIFICATIONNOTATION,\n IFCCLASSIFICATIONNOTATIONFACET,\n IFCCLASSIFICATIONREFERENCE,\n IFCCLOSEDSHELL,\n IFCCLOTHOID,\n IFCCOIL,\n IFCCOILTYPE,\n IFCCOLOURRGB,\n IFCCOLOURRGBLIST,\n IFCCOLOURSPECIFICATION,\n IFCCOLUMN,\n IFCCOLUMNSTANDARDCASE,\n IFCCOLUMNTYPE,\n IFCCOMMUNICATIONSAPPLIANCE,\n IFCCOMMUNICATIONSAPPLIANCETYPE,\n IFCCOMPLEXNUMBER,\n IFCCOMPLEXPROPERTY,\n IFCCOMPLEXPROPERTYTEMPLATE,\n IFCCOMPOSITECURVE,\n IFCCOMPOSITECURVEONSURFACE,\n IFCCOMPOSITECURVESEGMENT,\n IFCCOMPOSITEPROFILEDEF,\n IFCCOMPOUNDPLANEANGLEMEASURE,\n IFCCOMPRESSOR,\n IFCCOMPRESSORTYPE,\n IFCCONDENSER,\n IFCCONDENSERTYPE,\n IFCCONDITION,\n IFCCONDITIONCRITERION,\n IFCCONIC,\n IFCCONNECTEDFACESET,\n IFCCONNECTIONCURVEGEOMETRY,\n IFCCONNECTIONGEOMETRY,\n IFCCONNECTIONPOINTECCENTRICITY,\n IFCCONNECTIONPOINTGEOMETRY,\n IFCCONNECTIONPORTGEOMETRY,\n IFCCONNECTIONSURFACEGEOMETRY,\n IFCCONNECTIONVOLUMEGEOMETRY,\n IFCCONSTRAINT,\n IFCCONSTRAINTAGGREGATIONRELATIONSHIP,\n IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP,\n IFCCONSTRAINTRELATIONSHIP,\n IFCCONSTRUCTIONEQUIPMENTRESOURCE,\n IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE,\n IFCCONSTRUCTIONMATERIALRESOURCE,\n IFCCONSTRUCTIONMATERIALRESOURCETYPE,\n IFCCONSTRUCTIONPRODUCTRESOURCE,\n IFCCONSTRUCTIONPRODUCTRESOURCETYPE,\n IFCCONSTRUCTIONRESOURCE,\n IFCCONSTRUCTIONRESOURCETYPE,\n IFCCONTEXT,\n IFCCONTEXTDEPENDENTMEASURE,\n IFCCONTEXTDEPENDENTUNIT,\n IFCCONTROL,\n IFCCONTROLLER,\n IFCCONTROLLERTYPE,\n IFCCONVERSIONBASEDUNIT,\n IFCCONVERSIONBASEDUNITWITHOFFSET,\n IFCCONVEYORSEGMENT,\n IFCCONVEYORSEGMENTTYPE,\n IFCCOOLEDBEAM,\n IFCCOOLEDBEAMTYPE,\n IFCCOOLINGTOWER,\n IFCCOOLINGTOWERTYPE,\n IFCCOORDINATEDUNIVERSALTIMEOFFSET,\n IFCCOORDINATEOPERATION,\n IFCCOORDINATEREFERENCESYSTEM,\n IFCCOSINESPIRAL,\n IFCCOSTITEM,\n IFCCOSTSCHEDULE,\n IFCCOSTVALUE,\n IFCCOUNTMEASURE,\n IFCCOURSE,\n IFCCOURSETYPE,\n IFCCOVERING,\n IFCCOVERINGTYPE,\n IFCCRANERAILASHAPEPROFILEDEF,\n IFCCRANERAILFSHAPEPROFILEDEF,\n IFCCREWRESOURCE,\n IFCCREWRESOURCETYPE,\n IFCCSGPRIMITIVE3D,\n IFCCSGSOLID,\n IFCCSHAPEPROFILEDEF,\n IFCCURRENCYRELATIONSHIP,\n IFCCURTAINWALL,\n IFCCURTAINWALLTYPE,\n IFCCURVATUREMEASURE,\n IFCCURVE,\n IFCCURVEBOUNDEDPLANE,\n IFCCURVEBOUNDEDSURFACE,\n IFCCURVESEGMENT,\n IFCCURVESTYLE,\n IFCCURVESTYLEFONT,\n IFCCURVESTYLEFONTANDSCALING,\n IFCCURVESTYLEFONTPATTERN,\n IFCCYLINDRICALSURFACE,\n IFCDAMPER,\n IFCDAMPERTYPE,\n IFCDATE,\n IFCDATEANDTIME,\n IFCDATETIME,\n IFCDAYINMONTHNUMBER,\n IFCDAYINWEEKNUMBER,\n IFCDAYLIGHTSAVINGHOUR,\n IFCDEEPFOUNDATION,\n IFCDEEPFOUNDATIONTYPE,\n IFCDEFINEDSYMBOL,\n IFCDERIVEDPROFILEDEF,\n IFCDERIVEDUNIT,\n IFCDERIVEDUNITELEMENT,\n IFCDESCRIPTIVEMEASURE,\n IFCDIAMETERDIMENSION,\n IFCDIMENSIONALEXPONENTS,\n IFCDIMENSIONCALLOUTRELATIONSHIP,\n IFCDIMENSIONCOUNT,\n IFCDIMENSIONCURVE,\n IFCDIMENSIONCURVEDIRECTEDCALLOUT,\n IFCDIMENSIONCURVETERMINATOR,\n IFCDIMENSIONPAIR,\n IFCDIRECTION,\n IFCDIRECTRIXCURVESWEPTAREASOLID,\n IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID,\n IFCDISCRETEACCESSORY,\n IFCDISCRETEACCESSORYTYPE,\n IFCDISTRIBUTIONBOARD,\n IFCDISTRIBUTIONBOARDTYPE,\n IFCDISTRIBUTIONCHAMBERELEMENT,\n IFCDISTRIBUTIONCHAMBERELEMENTTYPE,\n IFCDISTRIBUTIONCIRCUIT,\n IFCDISTRIBUTIONCONTROLELEMENT,\n IFCDISTRIBUTIONCONTROLELEMENTTYPE,\n IFCDISTRIBUTIONELEMENT,\n IFCDISTRIBUTIONELEMENTTYPE,\n IFCDISTRIBUTIONFLOWELEMENT,\n IFCDISTRIBUTIONFLOWELEMENTTYPE,\n IFCDISTRIBUTIONPORT,\n IFCDISTRIBUTIONSYSTEM,\n IFCDOCUMENTELECTRONICFORMAT,\n IFCDOCUMENTINFORMATION,\n IFCDOCUMENTINFORMATIONRELATIONSHIP,\n IFCDOCUMENTREFERENCE,\n IFCDOOR,\n IFCDOORLININGPROPERTIES,\n IFCDOORPANELPROPERTIES,\n IFCDOORSTANDARDCASE,\n IFCDOORSTYLE,\n IFCDOORTYPE,\n IFCDOSEEQUIVALENTMEASURE,\n IFCDRAUGHTINGCALLOUT,\n IFCDRAUGHTINGCALLOUTRELATIONSHIP,\n IFCDRAUGHTINGPREDEFINEDCOLOUR,\n IFCDRAUGHTINGPREDEFINEDCURVEFONT,\n IFCDRAUGHTINGPREDEFINEDTEXTFONT,\n IFCDUCTFITTING,\n IFCDUCTFITTINGTYPE,\n IFCDUCTSEGMENT,\n IFCDUCTSEGMENTTYPE,\n IFCDUCTSILENCER,\n IFCDUCTSILENCERTYPE,\n IFCDURATION,\n IFCDYNAMICVISCOSITYMEASURE,\n IFCEARTHWORKSCUT,\n IFCEARTHWORKSELEMENT,\n IFCEARTHWORKSFILL,\n IFCEDGE,\n IFCEDGECURVE,\n IFCEDGEFEATURE,\n IFCEDGELOOP,\n IFCELECTRICALBASEPROPERTIES,\n IFCELECTRICALCIRCUIT,\n IFCELECTRICALELEMENT,\n IFCELECTRICAPPLIANCE,\n IFCELECTRICAPPLIANCETYPE,\n IFCELECTRICCAPACITANCEMEASURE,\n IFCELECTRICCHARGEMEASURE,\n IFCELECTRICCONDUCTANCEMEASURE,\n IFCELECTRICCURRENTMEASURE,\n IFCELECTRICDISTRIBUTIONBOARD,\n IFCELECTRICDISTRIBUTIONBOARDTYPE,\n IFCELECTRICDISTRIBUTIONPOINT,\n IFCELECTRICFLOWSTORAGEDEVICE,\n IFCELECTRICFLOWSTORAGEDEVICETYPE,\n IFCELECTRICFLOWTREATMENTDEVICE,\n IFCELECTRICFLOWTREATMENTDEVICETYPE,\n IFCELECTRICGENERATOR,\n IFCELECTRICGENERATORTYPE,\n IFCELECTRICHEATERTYPE,\n IFCELECTRICMOTOR,\n IFCELECTRICMOTORTYPE,\n IFCELECTRICRESISTANCEMEASURE,\n IFCELECTRICTIMECONTROL,\n IFCELECTRICTIMECONTROLTYPE,\n IFCELECTRICVOLTAGEMEASURE,\n IFCELEMENT,\n IFCELEMENTARYSURFACE,\n IFCELEMENTASSEMBLY,\n IFCELEMENTASSEMBLYTYPE,\n IFCELEMENTCOMPONENT,\n IFCELEMENTCOMPONENTTYPE,\n IFCELEMENTQUANTITY,\n IFCELEMENTTYPE,\n IFCELLIPSE,\n IFCELLIPSEPROFILEDEF,\n IFCENERGYCONVERSIONDEVICE,\n IFCENERGYCONVERSIONDEVICETYPE,\n IFCENERGYMEASURE,\n IFCENERGYPROPERTIES,\n IFCENGINE,\n IFCENGINETYPE,\n IFCENVIRONMENTALIMPACTVALUE,\n IFCEQUIPMENTELEMENT,\n IFCEQUIPMENTSTANDARD,\n IFCEVAPORATIVECOOLER,\n IFCEVAPORATIVECOOLERTYPE,\n IFCEVAPORATOR,\n IFCEVAPORATORTYPE,\n IFCEVENT,\n IFCEVENTTIME,\n IFCEVENTTYPE,\n IFCEXTENDEDMATERIALPROPERTIES,\n IFCEXTENDEDPROPERTIES,\n IFCEXTERNALINFORMATION,\n IFCEXTERNALLYDEFINEDHATCHSTYLE,\n IFCEXTERNALLYDEFINEDSURFACESTYLE,\n IFCEXTERNALLYDEFINEDSYMBOL,\n IFCEXTERNALLYDEFINEDTEXTFONT,\n IFCEXTERNALREFERENCE,\n IFCEXTERNALREFERENCERELATIONSHIP,\n IFCEXTERNALSPATIALELEMENT,\n IFCEXTERNALSPATIALSTRUCTUREELEMENT,\n IFCEXTRUDEDAREASOLID,\n IFCEXTRUDEDAREASOLIDTAPERED,\n IFCFACE,\n IFCFACEBASEDSURFACEMODEL,\n IFCFACEBOUND,\n IFCFACEOUTERBOUND,\n IFCFACESURFACE,\n IFCFACETEDBREP,\n IFCFACETEDBREPWITHVOIDS,\n IFCFACILITY,\n IFCFACILITYPART,\n IFCFACILITYPARTCOMMON,\n IFCFAILURECONNECTIONCONDITION,\n IFCFAN,\n IFCFANTYPE,\n IFCFASTENER,\n IFCFASTENERTYPE,\n IFCFEATUREELEMENT,\n IFCFEATUREELEMENTADDITION,\n IFCFEATUREELEMENTSUBTRACTION,\n IFCFILLAREASTYLE,\n IFCFILLAREASTYLEHATCHING,\n IFCFILLAREASTYLETILES,\n IFCFILLAREASTYLETILESYMBOLWITHSTYLE,\n IFCFILTER,\n IFCFILTERTYPE,\n IFCFIRESUPPRESSIONTERMINAL,\n IFCFIRESUPPRESSIONTERMINALTYPE,\n IFCFIXEDREFERENCESWEPTAREASOLID,\n IFCFLOWCONTROLLER,\n IFCFLOWCONTROLLERTYPE,\n IFCFLOWFITTING,\n IFCFLOWFITTINGTYPE,\n IFCFLOWINSTRUMENT,\n IFCFLOWINSTRUMENTTYPE,\n IFCFLOWMETER,\n IFCFLOWMETERTYPE,\n IFCFLOWMOVINGDEVICE,\n IFCFLOWMOVINGDEVICETYPE,\n IFCFLOWSEGMENT,\n IFCFLOWSEGMENTTYPE,\n IFCFLOWSTORAGEDEVICE,\n IFCFLOWSTORAGEDEVICETYPE,\n IFCFLOWTERMINAL,\n IFCFLOWTERMINALTYPE,\n IFCFLOWTREATMENTDEVICE,\n IFCFLOWTREATMENTDEVICETYPE,\n IFCFLUIDFLOWPROPERTIES,\n IFCFONTSTYLE,\n IFCFONTVARIANT,\n IFCFONTWEIGHT,\n IFCFOOTING,\n IFCFOOTINGTYPE,\n IFCFORCEMEASURE,\n IFCFREQUENCYMEASURE,\n IFCFUELPROPERTIES,\n IFCFURNISHINGELEMENT,\n IFCFURNISHINGELEMENTTYPE,\n IFCFURNITURE,\n IFCFURNITURESTANDARD,\n IFCFURNITURETYPE,\n IFCGASTERMINALTYPE,\n IFCGENERALMATERIALPROPERTIES,\n IFCGENERALPROFILEPROPERTIES,\n IFCGEOGRAPHICELEMENT,\n IFCGEOGRAPHICELEMENTTYPE,\n IFCGEOMETRICCURVESET,\n IFCGEOMETRICREPRESENTATIONCONTEXT,\n IFCGEOMETRICREPRESENTATIONITEM,\n IFCGEOMETRICREPRESENTATIONSUBCONTEXT,\n IFCGEOMETRICSET,\n IFCGEOMODEL,\n IFCGEOSLICE,\n IFCGEOTECHNICALASSEMBLY,\n IFCGEOTECHNICALELEMENT,\n IFCGEOTECHNICALSTRATUM,\n IFCGLOBALLYUNIQUEID,\n IFCGRADIENTCURVE,\n IFCGRID,\n IFCGRIDAXIS,\n IFCGRIDPLACEMENT,\n IFCGROUP,\n IFCHALFSPACESOLID,\n IFCHEATEXCHANGER,\n IFCHEATEXCHANGERTYPE,\n IFCHEATFLUXDENSITYMEASURE,\n IFCHEATINGVALUEMEASURE,\n IFCHOURINDAY,\n IFCHUMIDIFIER,\n IFCHUMIDIFIERTYPE,\n IFCHYGROSCOPICMATERIALPROPERTIES,\n IFCIDENTIFIER,\n IFCILLUMINANCEMEASURE,\n IFCIMAGETEXTURE,\n IFCIMPACTPROTECTIONDEVICE,\n IFCIMPACTPROTECTIONDEVICETYPE,\n IFCINDEXEDCOLOURMAP,\n IFCINDEXEDPOLYCURVE,\n IFCINDEXEDPOLYGONALFACE,\n IFCINDEXEDPOLYGONALFACEWITHVOIDS,\n IFCINDEXEDPOLYGONALTEXTUREMAP,\n IFCINDEXEDTEXTUREMAP,\n IFCINDEXEDTRIANGLETEXTUREMAP,\n IFCINDUCTANCEMEASURE,\n IFCINTEGER,\n IFCINTEGERCOUNTRATEMEASURE,\n IFCINTERCEPTOR,\n IFCINTERCEPTORTYPE,\n IFCINTERSECTIONCURVE,\n IFCINVENTORY,\n IFCIONCONCENTRATIONMEASURE,\n IFCIRREGULARTIMESERIES,\n IFCIRREGULARTIMESERIESVALUE,\n IFCISHAPEPROFILEDEF,\n IFCISOTHERMALMOISTURECAPACITYMEASURE,\n IFCJUNCTIONBOX,\n IFCJUNCTIONBOXTYPE,\n IFCKERB,\n IFCKERBTYPE,\n IFCKINEMATICVISCOSITYMEASURE,\n IFCLABEL,\n IFCLABORRESOURCE,\n IFCLABORRESOURCETYPE,\n IFCLAGTIME,\n IFCLAMP,\n IFCLAMPTYPE,\n IFCLANGUAGEID,\n IFCLENGTHMEASURE,\n IFCLIBRARYINFORMATION,\n IFCLIBRARYREFERENCE,\n IFCLIGHTDISTRIBUTIONDATA,\n IFCLIGHTFIXTURE,\n IFCLIGHTFIXTURETYPE,\n IFCLIGHTINTENSITYDISTRIBUTION,\n IFCLIGHTSOURCE,\n IFCLIGHTSOURCEAMBIENT,\n IFCLIGHTSOURCEDIRECTIONAL,\n IFCLIGHTSOURCEGONIOMETRIC,\n IFCLIGHTSOURCEPOSITIONAL,\n IFCLIGHTSOURCESPOT,\n IFCLINE,\n IFCLINEARDIMENSION,\n IFCLINEARELEMENT,\n IFCLINEARFORCEMEASURE,\n IFCLINEARMOMENTMEASURE,\n IFCLINEARPLACEMENT,\n IFCLINEARPOSITIONINGELEMENT,\n IFCLINEARSTIFFNESSMEASURE,\n IFCLINEARVELOCITYMEASURE,\n IFCLINEINDEX,\n IFCLIQUIDTERMINAL,\n IFCLIQUIDTERMINALTYPE,\n IFCLOCALPLACEMENT,\n IFCLOCALTIME,\n IFCLOGICAL,\n IFCLOOP,\n IFCLSHAPEPROFILEDEF,\n IFCLUMINOUSFLUXMEASURE,\n IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE,\n IFCLUMINOUSINTENSITYMEASURE,\n IFCMAGNETICFLUXDENSITYMEASURE,\n IFCMAGNETICFLUXMEASURE,\n IFCMANIFOLDSOLIDBREP,\n IFCMAPCONVERSION,\n IFCMAPPEDITEM,\n IFCMARINEFACILITY,\n IFCMARINEPART,\n IFCMASSDENSITYMEASURE,\n IFCMASSFLOWRATEMEASURE,\n IFCMASSMEASURE,\n IFCMASSPERLENGTHMEASURE,\n IFCMATERIAL,\n IFCMATERIALCLASSIFICATIONRELATIONSHIP,\n IFCMATERIALCONSTITUENT,\n IFCMATERIALCONSTITUENTSET,\n IFCMATERIALDEFINITION,\n IFCMATERIALDEFINITIONREPRESENTATION,\n IFCMATERIALLAYER,\n IFCMATERIALLAYERSET,\n IFCMATERIALLAYERSETUSAGE,\n IFCMATERIALLAYERWITHOFFSETS,\n IFCMATERIALLIST,\n IFCMATERIALPROFILE,\n IFCMATERIALPROFILESET,\n IFCMATERIALPROFILESETUSAGE,\n IFCMATERIALPROFILESETUSAGETAPERING,\n IFCMATERIALPROFILEWITHOFFSETS,\n IFCMATERIALPROPERTIES,\n IFCMATERIALRELATIONSHIP,\n IFCMATERIALUSAGEDEFINITION,\n IFCMEASUREWITHUNIT,\n IFCMECHANICALCONCRETEMATERIALPROPERTIES,\n IFCMECHANICALFASTENER,\n IFCMECHANICALFASTENERTYPE,\n IFCMECHANICALMATERIALPROPERTIES,\n IFCMECHANICALSTEELMATERIALPROPERTIES,\n IFCMEDICALDEVICE,\n IFCMEDICALDEVICETYPE,\n IFCMEMBER,\n IFCMEMBERSTANDARDCASE,\n IFCMEMBERTYPE,\n IFCMETRIC,\n IFCMINUTEINHOUR,\n IFCMIRROREDPROFILEDEF,\n IFCMOBILETELECOMMUNICATIONSAPPLIANCE,\n IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE,\n IFCMODULUSOFELASTICITYMEASURE,\n IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE,\n IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE,\n IFCMODULUSOFSUBGRADEREACTIONMEASURE,\n IFCMOISTUREDIFFUSIVITYMEASURE,\n IFCMOLECULARWEIGHTMEASURE,\n IFCMOMENTOFINERTIAMEASURE,\n IFCMONETARYMEASURE,\n IFCMONETARYUNIT,\n IFCMONTHINYEARNUMBER,\n IFCMOORINGDEVICE,\n IFCMOORINGDEVICETYPE,\n IFCMOTORCONNECTION,\n IFCMOTORCONNECTIONTYPE,\n IFCMOVE,\n IFCNAMEDUNIT,\n IFCNAVIGATIONELEMENT,\n IFCNAVIGATIONELEMENTTYPE,\n IFCNONNEGATIVELENGTHMEASURE,\n IFCNORMALISEDRATIOMEASURE,\n IFCNUMERICMEASURE,\n IFCOBJECT,\n IFCOBJECTDEFINITION,\n IFCOBJECTIVE,\n IFCOBJECTPLACEMENT,\n IFCOCCUPANT,\n IFCOFFSETCURVE,\n IFCOFFSETCURVE2D,\n IFCOFFSETCURVE3D,\n IFCOFFSETCURVEBYDISTANCES,\n IFCONEDIRECTIONREPEATFACTOR,\n IFCOPENCROSSPROFILEDEF,\n IFCOPENINGELEMENT,\n IFCOPENINGSTANDARDCASE,\n IFCOPENSHELL,\n IFCOPTICALMATERIALPROPERTIES,\n IFCORDERACTION,\n IFCORGANIZATION,\n IFCORGANIZATIONRELATIONSHIP,\n IFCORIENTEDEDGE,\n IFCOUTERBOUNDARYCURVE,\n IFCOUTLET,\n IFCOUTLETTYPE,\n IFCOWNERHISTORY,\n IFCPARAMETERIZEDPROFILEDEF,\n IFCPARAMETERVALUE,\n IFCPATH,\n IFCPAVEMENT,\n IFCPAVEMENTTYPE,\n IFCPCURVE,\n IFCPERFORMANCEHISTORY,\n IFCPERMEABLECOVERINGPROPERTIES,\n IFCPERMIT,\n IFCPERSON,\n IFCPERSONANDORGANIZATION,\n IFCPHMEASURE,\n IFCPHYSICALCOMPLEXQUANTITY,\n IFCPHYSICALQUANTITY,\n IFCPHYSICALSIMPLEQUANTITY,\n IFCPILE,\n IFCPILETYPE,\n IFCPIPEFITTING,\n IFCPIPEFITTINGTYPE,\n IFCPIPESEGMENT,\n IFCPIPESEGMENTTYPE,\n IFCPIXELTEXTURE,\n IFCPLACEMENT,\n IFCPLANARBOX,\n IFCPLANAREXTENT,\n IFCPLANARFORCEMEASURE,\n IFCPLANE,\n IFCPLANEANGLEMEASURE,\n IFCPLATE,\n IFCPLATESTANDARDCASE,\n IFCPLATETYPE,\n IFCPOINT,\n IFCPOINTBYDISTANCEEXPRESSION,\n IFCPOINTONCURVE,\n IFCPOINTONSURFACE,\n IFCPOLYGONALBOUNDEDHALFSPACE,\n IFCPOLYGONALFACESET,\n IFCPOLYLINE,\n IFCPOLYLOOP,\n IFCPOLYNOMIALCURVE,\n IFCPORT,\n IFCPOSITIONINGELEMENT,\n IFCPOSITIVEINTEGER,\n IFCPOSITIVELENGTHMEASURE,\n IFCPOSITIVEPLANEANGLEMEASURE,\n IFCPOSITIVERATIOMEASURE,\n IFCPOSTALADDRESS,\n IFCPOWERMEASURE,\n IFCPREDEFINEDCOLOUR,\n IFCPREDEFINEDCURVEFONT,\n IFCPREDEFINEDDIMENSIONSYMBOL,\n IFCPREDEFINEDITEM,\n IFCPREDEFINEDPOINTMARKERSYMBOL,\n IFCPREDEFINEDPROPERTIES,\n IFCPREDEFINEDPROPERTYSET,\n IFCPREDEFINEDSYMBOL,\n IFCPREDEFINEDTERMINATORSYMBOL,\n IFCPREDEFINEDTEXTFONT,\n IFCPRESENTABLETEXT,\n IFCPRESENTATIONITEM,\n IFCPRESENTATIONLAYERASSIGNMENT,\n IFCPRESENTATIONLAYERWITHSTYLE,\n IFCPRESENTATIONSTYLE,\n IFCPRESENTATIONSTYLEASSIGNMENT,\n IFCPRESSUREMEASURE,\n IFCPROCEDURE,\n IFCPROCEDURETYPE,\n IFCPROCESS,\n IFCPRODUCT,\n IFCPRODUCTDEFINITIONSHAPE,\n IFCPRODUCTREPRESENTATION,\n IFCPRODUCTSOFCOMBUSTIONPROPERTIES,\n IFCPROFILEDEF,\n IFCPROFILEPROPERTIES,\n IFCPROJECT,\n IFCPROJECTEDCRS,\n IFCPROJECTIONCURVE,\n IFCPROJECTIONELEMENT,\n IFCPROJECTLIBRARY,\n IFCPROJECTORDER,\n IFCPROJECTORDERRECORD,\n IFCPROPERTY,\n IFCPROPERTYABSTRACTION,\n IFCPROPERTYBOUNDEDVALUE,\n IFCPROPERTYCONSTRAINTRELATIONSHIP,\n IFCPROPERTYDEFINITION,\n IFCPROPERTYDEPENDENCYRELATIONSHIP,\n IFCPROPERTYENUMERATEDVALUE,\n IFCPROPERTYENUMERATION,\n IFCPROPERTYLISTVALUE,\n IFCPROPERTYREFERENCEVALUE,\n IFCPROPERTYSET,\n IFCPROPERTYSETDEFINITION,\n IFCPROPERTYSETDEFINITIONSET,\n IFCPROPERTYSETTEMPLATE,\n IFCPROPERTYSINGLEVALUE,\n IFCPROPERTYTABLEVALUE,\n IFCPROPERTYTEMPLATE,\n IFCPROPERTYTEMPLATEDEFINITION,\n IFCPROTECTIVEDEVICE,\n IFCPROTECTIVEDEVICETRIPPINGUNIT,\n IFCPROTECTIVEDEVICETRIPPINGUNITTYPE,\n IFCPROTECTIVEDEVICETYPE,\n IFCPROXY,\n IFCPUMP,\n IFCPUMPTYPE,\n IFCQUANTITYAREA,\n IFCQUANTITYCOUNT,\n IFCQUANTITYLENGTH,\n IFCQUANTITYNUMBER,\n IFCQUANTITYSET,\n IFCQUANTITYTIME,\n IFCQUANTITYVOLUME,\n IFCQUANTITYWEIGHT,\n IFCRADIOACTIVITYMEASURE,\n IFCRADIUSDIMENSION,\n IFCRAIL,\n IFCRAILING,\n IFCRAILINGTYPE,\n IFCRAILTYPE,\n IFCRAILWAY,\n IFCRAILWAYPART,\n IFCRAMP,\n IFCRAMPFLIGHT,\n IFCRAMPFLIGHTTYPE,\n IFCRAMPTYPE,\n IFCRATIOMEASURE,\n IFCRATIONALBEZIERCURVE,\n IFCRATIONALBSPLINECURVEWITHKNOTS,\n IFCRATIONALBSPLINESURFACEWITHKNOTS,\n IFCREAL,\n IFCRECTANGLEHOLLOWPROFILEDEF,\n IFCRECTANGLEPROFILEDEF,\n IFCRECTANGULARPYRAMID,\n IFCRECTANGULARTRIMMEDSURFACE,\n IFCRECURRENCEPATTERN,\n IFCREFERENCE,\n IFCREFERENCESVALUEDOCUMENT,\n IFCREFERENT,\n IFCREGULARTIMESERIES,\n IFCREINFORCEDSOIL,\n IFCREINFORCEMENTBARPROPERTIES,\n IFCREINFORCEMENTDEFINITIONPROPERTIES,\n IFCREINFORCINGBAR,\n IFCREINFORCINGBARTYPE,\n IFCREINFORCINGELEMENT,\n IFCREINFORCINGELEMENTTYPE,\n IFCREINFORCINGMESH,\n IFCREINFORCINGMESHTYPE,\n IFCRELADHERESTOELEMENT,\n IFCRELAGGREGATES,\n IFCRELASSIGNS,\n IFCRELASSIGNSTASKS,\n IFCRELASSIGNSTOACTOR,\n IFCRELASSIGNSTOCONTROL,\n IFCRELASSIGNSTOGROUP,\n IFCRELASSIGNSTOGROUPBYFACTOR,\n IFCRELASSIGNSTOPROCESS,\n IFCRELASSIGNSTOPRODUCT,\n IFCRELASSIGNSTOPROJECTORDER,\n IFCRELASSIGNSTORESOURCE,\n IFCRELASSOCIATES,\n IFCRELASSOCIATESAPPLIEDVALUE,\n IFCRELASSOCIATESAPPROVAL,\n IFCRELASSOCIATESCLASSIFICATION,\n IFCRELASSOCIATESCONSTRAINT,\n IFCRELASSOCIATESDOCUMENT,\n IFCRELASSOCIATESLIBRARY,\n IFCRELASSOCIATESMATERIAL,\n IFCRELASSOCIATESPROFILEDEF,\n IFCRELASSOCIATESPROFILEPROPERTIES,\n IFCRELATIONSHIP,\n IFCRELAXATION,\n IFCRELCONNECTS,\n IFCRELCONNECTSELEMENTS,\n IFCRELCONNECTSPATHELEMENTS,\n IFCRELCONNECTSPORTS,\n IFCRELCONNECTSPORTTOELEMENT,\n IFCRELCONNECTSSTRUCTURALACTIVITY,\n IFCRELCONNECTSSTRUCTURALELEMENT,\n IFCRELCONNECTSSTRUCTURALMEMBER,\n IFCRELCONNECTSWITHECCENTRICITY,\n IFCRELCONNECTSWITHREALIZINGELEMENTS,\n IFCRELCONTAINEDINSPATIALSTRUCTURE,\n IFCRELCOVERSBLDGELEMENTS,\n IFCRELCOVERSSPACES,\n IFCRELDECLARES,\n IFCRELDECOMPOSES,\n IFCRELDEFINES,\n IFCRELDEFINESBYOBJECT,\n IFCRELDEFINESBYPROPERTIES,\n IFCRELDEFINESBYTEMPLATE,\n IFCRELDEFINESBYTYPE,\n IFCRELFILLSELEMENT,\n IFCRELFLOWCONTROLELEMENTS,\n IFCRELINTERACTIONREQUIREMENTS,\n IFCRELINTERFERESELEMENTS,\n IFCRELNESTS,\n IFCRELOCCUPIESSPACES,\n IFCRELOVERRIDESPROPERTIES,\n IFCRELPOSITIONS,\n IFCRELPROJECTSELEMENT,\n IFCRELREFERENCEDINSPATIALSTRUCTURE,\n IFCRELSCHEDULESCOSTITEMS,\n IFCRELSEQUENCE,\n IFCRELSERVICESBUILDINGS,\n IFCRELSPACEBOUNDARY,\n IFCRELSPACEBOUNDARY1STLEVEL,\n IFCRELSPACEBOUNDARY2NDLEVEL,\n IFCRELVOIDSELEMENT,\n IFCREPARAMETRISEDCOMPOSITECURVESEGMENT,\n IFCREPRESENTATION,\n IFCREPRESENTATIONCONTEXT,\n IFCREPRESENTATIONITEM,\n IFCREPRESENTATIONMAP,\n IFCRESOURCE,\n IFCRESOURCEAPPROVALRELATIONSHIP,\n IFCRESOURCECONSTRAINTRELATIONSHIP,\n IFCRESOURCELEVELRELATIONSHIP,\n IFCRESOURCETIME,\n IFCREVOLVEDAREASOLID,\n IFCREVOLVEDAREASOLIDTAPERED,\n IFCRIBPLATEPROFILEPROPERTIES,\n IFCRIGHTCIRCULARCONE,\n IFCRIGHTCIRCULARCYLINDER,\n IFCROAD,\n IFCROADPART,\n IFCROOF,\n IFCROOFTYPE,\n IFCROOT,\n IFCROTATIONALFREQUENCYMEASURE,\n IFCROTATIONALMASSMEASURE,\n IFCROTATIONALSTIFFNESSMEASURE,\n IFCROUNDEDEDGEFEATURE,\n IFCROUNDEDRECTANGLEPROFILEDEF,\n IFCSANITARYTERMINAL,\n IFCSANITARYTERMINALTYPE,\n IFCSCHEDULETIMECONTROL,\n IFCSCHEDULINGTIME,\n IFCSEAMCURVE,\n IFCSECONDINMINUTE,\n IFCSECONDORDERPOLYNOMIALSPIRAL,\n IFCSECTIONALAREAINTEGRALMEASURE,\n IFCSECTIONEDSOLID,\n IFCSECTIONEDSOLIDHORIZONTAL,\n IFCSECTIONEDSPINE,\n IFCSECTIONEDSURFACE,\n IFCSECTIONMODULUSMEASURE,\n IFCSECTIONPROPERTIES,\n IFCSECTIONREINFORCEMENTPROPERTIES,\n IFCSEGMENT,\n IFCSEGMENTEDREFERENCECURVE,\n IFCSENSOR,\n IFCSENSORTYPE,\n IFCSERVICELIFE,\n IFCSERVICELIFEFACTOR,\n IFCSEVENTHORDERPOLYNOMIALSPIRAL,\n IFCSHADINGDEVICE,\n IFCSHADINGDEVICETYPE,\n IFCSHAPEASPECT,\n IFCSHAPEMODEL,\n IFCSHAPEREPRESENTATION,\n IFCSHEARMODULUSMEASURE,\n IFCSHELLBASEDSURFACEMODEL,\n IFCSIGN,\n IFCSIGNAL,\n IFCSIGNALTYPE,\n IFCSIGNTYPE,\n IFCSIMPLEPROPERTY,\n IFCSIMPLEPROPERTYTEMPLATE,\n IFCSINESPIRAL,\n IFCSITE,\n IFCSIUNIT,\n IFCSLAB,\n IFCSLABELEMENTEDCASE,\n IFCSLABSTANDARDCASE,\n IFCSLABTYPE,\n IFCSLIPPAGECONNECTIONCONDITION,\n IFCSOLARDEVICE,\n IFCSOLARDEVICETYPE,\n IFCSOLIDANGLEMEASURE,\n IFCSOLIDMODEL,\n IFCSOUNDPOWERLEVELMEASURE,\n IFCSOUNDPOWERMEASURE,\n IFCSOUNDPRESSURELEVELMEASURE,\n IFCSOUNDPRESSUREMEASURE,\n IFCSOUNDPROPERTIES,\n IFCSOUNDVALUE,\n IFCSPACE,\n IFCSPACEHEATER,\n IFCSPACEHEATERTYPE,\n IFCSPACEPROGRAM,\n IFCSPACETHERMALLOADPROPERTIES,\n IFCSPACETYPE,\n IFCSPATIALELEMENT,\n IFCSPATIALELEMENTTYPE,\n IFCSPATIALSTRUCTUREELEMENT,\n IFCSPATIALSTRUCTUREELEMENTTYPE,\n IFCSPATIALZONE,\n IFCSPATIALZONETYPE,\n IFCSPECIFICHEATCAPACITYMEASURE,\n IFCSPECULAREXPONENT,\n IFCSPECULARROUGHNESS,\n IFCSPHERE,\n IFCSPHERICALSURFACE,\n IFCSPIRAL,\n IFCSTACKTERMINAL,\n IFCSTACKTERMINALTYPE,\n IFCSTAIR,\n IFCSTAIRFLIGHT,\n IFCSTAIRFLIGHTTYPE,\n IFCSTAIRTYPE,\n IFCSTRUCTURALACTION,\n IFCSTRUCTURALACTIVITY,\n IFCSTRUCTURALANALYSISMODEL,\n IFCSTRUCTURALCONNECTION,\n IFCSTRUCTURALCONNECTIONCONDITION,\n IFCSTRUCTURALCURVEACTION,\n IFCSTRUCTURALCURVECONNECTION,\n IFCSTRUCTURALCURVEMEMBER,\n IFCSTRUCTURALCURVEMEMBERVARYING,\n IFCSTRUCTURALCURVEREACTION,\n IFCSTRUCTURALITEM,\n IFCSTRUCTURALLINEARACTION,\n IFCSTRUCTURALLINEARACTIONVARYING,\n IFCSTRUCTURALLOAD,\n IFCSTRUCTURALLOADCASE,\n IFCSTRUCTURALLOADCONFIGURATION,\n IFCSTRUCTURALLOADGROUP,\n IFCSTRUCTURALLOADLINEARFORCE,\n IFCSTRUCTURALLOADORRESULT,\n IFCSTRUCTURALLOADPLANARFORCE,\n IFCSTRUCTURALLOADSINGLEDISPLACEMENT,\n IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION,\n IFCSTRUCTURALLOADSINGLEFORCE,\n IFCSTRUCTURALLOADSINGLEFORCEWARPING,\n IFCSTRUCTURALLOADSTATIC,\n IFCSTRUCTURALLOADTEMPERATURE,\n IFCSTRUCTURALMEMBER,\n IFCSTRUCTURALPLANARACTION,\n IFCSTRUCTURALPLANARACTIONVARYING,\n IFCSTRUCTURALPOINTACTION,\n IFCSTRUCTURALPOINTCONNECTION,\n IFCSTRUCTURALPOINTREACTION,\n IFCSTRUCTURALPROFILEPROPERTIES,\n IFCSTRUCTURALREACTION,\n IFCSTRUCTURALRESULTGROUP,\n IFCSTRUCTURALSTEELPROFILEPROPERTIES,\n IFCSTRUCTURALSURFACEACTION,\n IFCSTRUCTURALSURFACECONNECTION,\n IFCSTRUCTURALSURFACEMEMBER,\n IFCSTRUCTURALSURFACEMEMBERVARYING,\n IFCSTRUCTURALSURFACEREACTION,\n IFCSTRUCTUREDDIMENSIONCALLOUT,\n IFCSTYLEDITEM,\n IFCSTYLEDREPRESENTATION,\n IFCSTYLEMODEL,\n IFCSUBCONTRACTRESOURCE,\n IFCSUBCONTRACTRESOURCETYPE,\n IFCSUBEDGE,\n IFCSURFACE,\n IFCSURFACECURVE,\n IFCSURFACECURVESWEPTAREASOLID,\n IFCSURFACEFEATURE,\n IFCSURFACEOFLINEAREXTRUSION,\n IFCSURFACEOFREVOLUTION,\n IFCSURFACEREINFORCEMENTAREA,\n IFCSURFACESTYLE,\n IFCSURFACESTYLELIGHTING,\n IFCSURFACESTYLEREFRACTION,\n IFCSURFACESTYLERENDERING,\n IFCSURFACESTYLESHADING,\n IFCSURFACESTYLEWITHTEXTURES,\n IFCSURFACETEXTURE,\n IFCSWEPTAREASOLID,\n IFCSWEPTDISKSOLID,\n IFCSWEPTDISKSOLIDPOLYGONAL,\n IFCSWEPTSURFACE,\n IFCSWITCHINGDEVICE,\n IFCSWITCHINGDEVICETYPE,\n IFCSYMBOLSTYLE,\n IFCSYSTEM,\n IFCSYSTEMFURNITUREELEMENT,\n IFCSYSTEMFURNITUREELEMENTTYPE,\n IFCTABLE,\n IFCTABLECOLUMN,\n IFCTABLEROW,\n IFCTANK,\n IFCTANKTYPE,\n IFCTASK,\n IFCTASKTIME,\n IFCTASKTIMERECURRING,\n IFCTASKTYPE,\n IFCTELECOMADDRESS,\n IFCTEMPERATUREGRADIENTMEASURE,\n IFCTEMPERATURERATEOFCHANGEMEASURE,\n IFCTENDON,\n IFCTENDONANCHOR,\n IFCTENDONANCHORTYPE,\n IFCTENDONCONDUIT,\n IFCTENDONCONDUITTYPE,\n IFCTENDONTYPE,\n IFCTERMINATORSYMBOL,\n IFCTESSELLATEDFACESET,\n IFCTESSELLATEDITEM,\n IFCTEXT,\n IFCTEXTALIGNMENT,\n IFCTEXTDECORATION,\n IFCTEXTFONTNAME,\n IFCTEXTLITERAL,\n IFCTEXTLITERALWITHEXTENT,\n IFCTEXTSTYLE,\n IFCTEXTSTYLEFONTMODEL,\n IFCTEXTSTYLEFORDEFINEDFONT,\n IFCTEXTSTYLETEXTMODEL,\n IFCTEXTSTYLEWITHBOXCHARACTERISTICS,\n IFCTEXTTRANSFORMATION,\n IFCTEXTURECOORDINATE,\n IFCTEXTURECOORDINATEGENERATOR,\n IFCTEXTURECOORDINATEINDICES,\n IFCTEXTURECOORDINATEINDICESWITHVOIDS,\n IFCTEXTUREMAP,\n IFCTEXTUREVERTEX,\n IFCTEXTUREVERTEXLIST,\n IFCTHERMALADMITTANCEMEASURE,\n IFCTHERMALCONDUCTIVITYMEASURE,\n IFCTHERMALEXPANSIONCOEFFICIENTMEASURE,\n IFCTHERMALMATERIALPROPERTIES,\n IFCTHERMALRESISTANCEMEASURE,\n IFCTHERMALTRANSMITTANCEMEASURE,\n IFCTHERMODYNAMICTEMPERATUREMEASURE,\n IFCTHIRDORDERPOLYNOMIALSPIRAL,\n IFCTIME,\n IFCTIMEMEASURE,\n IFCTIMEPERIOD,\n IFCTIMESERIES,\n IFCTIMESERIESREFERENCERELATIONSHIP,\n IFCTIMESERIESSCHEDULE,\n IFCTIMESERIESVALUE,\n IFCTIMESTAMP,\n IFCTOPOLOGICALREPRESENTATIONITEM,\n IFCTOPOLOGYREPRESENTATION,\n IFCTOROIDALSURFACE,\n IFCTORQUEMEASURE,\n IFCTRACKELEMENT,\n IFCTRACKELEMENTTYPE,\n IFCTRANSFORMER,\n IFCTRANSFORMERTYPE,\n IFCTRANSPORTATIONDEVICE,\n IFCTRANSPORTATIONDEVICETYPE,\n IFCTRANSPORTELEMENT,\n IFCTRANSPORTELEMENTTYPE,\n IFCTRAPEZIUMPROFILEDEF,\n IFCTRIANGULATEDFACESET,\n IFCTRIANGULATEDIRREGULARNETWORK,\n IFCTRIMMEDCURVE,\n IFCTSHAPEPROFILEDEF,\n IFCTUBEBUNDLE,\n IFCTUBEBUNDLETYPE,\n IFCTWODIRECTIONREPEATFACTOR,\n IFCTYPEOBJECT,\n IFCTYPEPROCESS,\n IFCTYPEPRODUCT,\n IFCTYPERESOURCE,\n IFCUNITARYCONTROLELEMENT,\n IFCUNITARYCONTROLELEMENTTYPE,\n IFCUNITARYEQUIPMENT,\n IFCUNITARYEQUIPMENTTYPE,\n IFCUNITASSIGNMENT,\n IFCURIREFERENCE,\n IFCUSHAPEPROFILEDEF,\n IFCVALVE,\n IFCVALVETYPE,\n IFCVAPORPERMEABILITYMEASURE,\n IFCVECTOR,\n IFCVEHICLE,\n IFCVEHICLETYPE,\n IFCVERTEX,\n IFCVERTEXBASEDTEXTUREMAP,\n IFCVERTEXLOOP,\n IFCVERTEXPOINT,\n IFCVIBRATIONDAMPER,\n IFCVIBRATIONDAMPERTYPE,\n IFCVIBRATIONISOLATOR,\n IFCVIBRATIONISOLATORTYPE,\n IFCVIRTUALELEMENT,\n IFCVIRTUALGRIDINTERSECTION,\n IFCVOIDINGFEATURE,\n IFCVOLUMEMEASURE,\n IFCVOLUMETRICFLOWRATEMEASURE,\n IFCWALL,\n IFCWALLELEMENTEDCASE,\n IFCWALLSTANDARDCASE,\n IFCWALLTYPE,\n IFCWARPINGCONSTANTMEASURE,\n IFCWARPINGMOMENTMEASURE,\n IFCWASTETERMINAL,\n IFCWASTETERMINALTYPE,\n IFCWATERPROPERTIES,\n IFCWINDOW,\n IFCWINDOWLININGPROPERTIES,\n IFCWINDOWPANELPROPERTIES,\n IFCWINDOWSTANDARDCASE,\n IFCWINDOWSTYLE,\n IFCWINDOWTYPE,\n IFCWORKCALENDAR,\n IFCWORKCONTROL,\n IFCWORKPLAN,\n IFCWORKSCHEDULE,\n IFCWORKTIME,\n IFCYEARNUMBER,\n IFCZONE,\n IFCZSHAPEPROFILEDEF,\n INTEGER,\n IfcAPI2 as IfcAPI,\n IfcLineObject,\n InheritanceDef,\n InversePropertyDef,\n LABEL,\n LINE_END,\n LogLevel,\n Properties,\n REAL,\n REF,\n SET_BEGIN,\n SET_END,\n STRING,\n SchemaNames,\n Schemas,\n ToRawLineData,\n TypeInitialisers,\n UNKNOWN,\n logical,\n ms\n};\n", "import {\n createMat4,\n createVec3,\n createVec4,\n transformPoint3,\n transformPoint4,\n transformPositions3\n} from \"@xeokit/matrix\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\n//import * as WebIFC from \"web-ifc/web-ifc-api-node\";\nimport * as WebIFC from \"web-ifc\";\nimport {IfcElement, IfcRelAggregates, ifcTypeCodes} from \"@xeokit/ifctypes\";\nimport {worldToRTCPositions} from \"@xeokit/rtc\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {SDKError} from \"@xeokit/core\";\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\n/**\n * @private\n */\ninterface ParsingContext {\n fileData: ArrayBuffer;\n ifcAPI: WebIFC.IfcAPI;\n sceneModel: SceneModel;\n dataModel?: DataModel;\n nextId: number;\n modelId: number;\n lines: WebIFC.Vector;\n ifcProjectId: number;\n}\n\n/**\n * Loads IFC into a {@link @xeokit/scene!SceneModel | SceneModel} and/or {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/webifc\" | @xeokit/webifc} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - IFC file contents.\n * @param params.ifcAPI - WebIFC API.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @returns {Promise} Resolves when IFC has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadWebIFC(params: {\n fileData: ArrayBuffer,\n ifcAPI: WebIFC.IfcAPI,\n sceneModel: SceneModel,\n dataModel?: DataModel\n}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n const dataArray = new Uint8Array(params.fileData);\n const modelId = params.ifcAPI.OpenModel(dataArray);\n const lines = params.ifcAPI.GetLineIDsWithType(modelId, WebIFC.IFCPROJECT);\n const ifcProjectId = lines.get(0);\n const ctx: ParsingContext = {\n fileData: params.fileData,\n modelId,\n lines,\n ifcProjectId,\n ifcAPI: params.ifcAPI,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0\n };\n parseIFC(ctx);\n resolve();\n });\n}\n\nfunction parseIFC(ctx: ParsingContext) {\n if (ctx.dataModel) {\n parseDataModel(ctx);\n }\n if (ctx.sceneModel) {\n parseSceneModel(ctx);\n }\n}\n\nfunction parseDataModel(ctx: ParsingContext) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, WebIFC.IFCPROJECT);\n const ifcProjectId = lines.get(0);\n const ifcProject = ctx.ifcAPI.GetLine(ctx.modelId, ifcProjectId);\n parseDataObjectAggregation(ctx, ifcProject);\n parsePropertySets(ctx);\n}\n\nfunction parsePropertySets(ctx: any) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, WebIFC.IFCRELDEFINESBYPROPERTIES);\n for (let i = 0; i < lines.size(); i++) {\n let relID = lines.get(i);\n let rel = ctx.ifcAPI.GetLine(ctx.modelId, relID, true);\n if (rel) {\n const relatingPropertyDefinition = rel.RelatingPropertyDefinition;\n if (!relatingPropertyDefinition) {\n continue;\n }\n const propertySetId = relatingPropertyDefinition.GlobalId.value;\n const props = relatingPropertyDefinition.HasProperties;\n if (props && props.length > 0) {\n const propertySetType = \"Default\";\n const propertySetName = relatingPropertyDefinition.Name.value;\n const properties = [];\n for (let i = 0, len = props.length; i < len; i++) {\n const prop = props[i];\n const name = prop.Name;\n const nominalValue = prop.NominalValue;\n if (name && nominalValue) {\n properties.push({\n name: name.value,\n type: nominalValue.type,\n value: nominalValue.value,\n valueType: nominalValue.valueType,\n description: prop.Description ? prop.Description.value : (nominalValue.description ? nominalValue.description : \"\")\n });\n }\n }\n ctx.dataModel.createPropertySet({\n id: propertySetId,\n type: propertySetType,\n name: propertySetName,\n properties: properties\n });\n const relatedObjects = rel.RelatedObjects;\n if (!relatedObjects || relatedObjects.length === 0) {\n return;\n }\n for (let i = 0, len = relatedObjects.length; i < len; i++) {\n const relatedObject = relatedObjects[i];\n const dataObjectId = relatedObject.GlobalId.value;\n const dataObject = ctx.dataModel.objects[dataObjectId];\n if (dataObject) {\n if (!dataObject.propertySetIds) {\n dataObject.propertySetIds = [];\n }\n dataObject.propertySetIds.push(propertySetId);\n }\n }\n }\n }\n }\n}\n\nfunction parseDataObjectAggregation(ctx: ParsingContext, ifcElement: any, parentDataObjectId?: string) {\n const type = ifcElement.__proto__.constructor.name;\n createDataObject(ctx, ifcElement, parentDataObjectId);\n const dataObjectId = ifcElement.GlobalId.value;\n parseRelatedItemsOfType(ctx, ifcElement.expressID, 'RelatingObject', 'RelatedObjects', WebIFC.IFCRELAGGREGATES, dataObjectId);\n parseRelatedItemsOfType(ctx, ifcElement.expressID, 'RelatingStructure', 'RelatedElements', WebIFC.IFCRELCONTAINEDINSPATIALSTRUCTURE, dataObjectId);\n}\n\nfunction createDataObject(ctx: ParsingContext, ifcElement: any, parentDataObjectId?: string) {\n const id = ifcElement.GlobalId.value;\n const type = ifcElement.__proto__.constructor.name;\n const name = (ifcElement.Name && ifcElement.Name.value !== \"\") ? ifcElement.Name.value : type;\n let typeCode = ifcTypeCodes[type];\n if (typeCode == undefined) {\n typeCode = IfcElement;\n // TODO: Log this\n }\n ctx.dataModel.createObject({\n id,\n name,\n type: typeCode\n });\n if (parentDataObjectId) {\n ctx.dataModel.createRelationship({\n type: IfcRelAggregates,\n relatingObjectId: parentDataObjectId,\n relatedObjectId: id\n });\n }\n}\n\nfunction parseRelatedItemsOfType(ctx: ParsingContext, id: any, relation: string, related: string, type: number, parentDataObjectId: string) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, type);\n for (let i = 0; i < lines.size(); i++) {\n const relID = lines.get(i);\n const rel = ctx.ifcAPI.GetLine(ctx.modelId, relID);\n const relatedItems = rel[relation];\n let foundElement = false;\n if (Array.isArray(relatedItems)) {\n const values = relatedItems.map((item) => item.value);\n foundElement = values.includes(id);\n } else {\n foundElement = (relatedItems.value === id);\n }\n if (foundElement) {\n const element = rel[related];\n if (!Array.isArray(element)) {\n const ifcElement = ctx.ifcAPI.GetLine(ctx.modelId, element.value);\n parseDataObjectAggregation(ctx, ifcElement, parentDataObjectId);\n } else {\n element.forEach((element2) => {\n const ifcElement = ctx.ifcAPI.GetLine(ctx.modelId, element2.value);\n parseDataObjectAggregation(ctx, ifcElement, parentDataObjectId);\n });\n }\n }\n }\n}\n\nfunction parseSceneModel(ctx: ParsingContext) {\n ctx.ifcAPI.StreamAllMeshes(ctx.modelId, (flatMesh) => {\n // TODO: Can we do geometry reuse with web-ifc?\n const flatMeshExpressID = flatMesh.expressID;\n const placedGeometries = flatMesh.geometries;\n const meshIds = [];\n const properties = ctx.ifcAPI.GetLine(ctx.modelId, flatMeshExpressID);\n const objectId = properties.GlobalId.value;\n const matrix = createMat4();\n const origin = createVec3();\n for (let j = 0, lenj = placedGeometries.size(); j < lenj; j++) {\n const placedGeometry = placedGeometries.get(j);\n const geometry = ctx.ifcAPI.GetGeometry(ctx.modelId, placedGeometry.geometryExpressID);\n const vertexData = ctx.ifcAPI.GetVertexArray(geometry.GetVertexData(), geometry.GetVertexDataSize());\n const indices = ctx.ifcAPI.GetIndexArray(geometry.GetIndexData(), geometry.GetIndexDataSize());\n // De-interleave vertex arrays\n const positions = new Float64Array(vertexData.length / 2);\n const normals = new Float32Array(vertexData.length / 2);\n (matrix).set(placedGeometry.flatTransformation);\n for (let k = 0, l = 0, lenk = vertexData.length / 6; k < lenk; k++, l += 3) {\n tempVec4a[0] = vertexData[k * 6 + 0];\n tempVec4a[1] = vertexData[k * 6 + 1];\n tempVec4a[2] = vertexData[k * 6 + 2];\n tempVec4a[3] = 1;\n transformPoint4(matrix, tempVec4a, tempVec4b);\n positions[l + 0] = tempVec4b[0];\n positions[l + 1] = tempVec4b[1];\n positions[l + 2] = tempVec4b[2];\n }\n\n const rtcNeeded = worldToRTCPositions(positions, positions, origin);\n const geometryId = \"\" + ctx.nextId++;\n ctx.sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions,\n indices\n });\n const meshId = \"\" + ctx.nextId++;\n ctx.sceneModel.createMesh({\n id: meshId,\n geometryId,\n // TODO: matrix with translation if rtcNeeded\n color: [placedGeometry.color.x, placedGeometry.color.y, placedGeometry.color.z],\n opacity: placedGeometry.color.w\n });\n meshIds.push(meshId);\n }\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: meshIds\n });\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdtx.svg)](https://badge.fury.io/js/%40xeokit%2Fdtx)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/dtx/badge)](https://www.jsdelivr.com/package/npm/@xeokit/dtx)\n *\n * \n *\n * # xeokit [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) Format Importer and Exporter\n *\n * ---\n *\n * ### *Import and export SceneModels as xeokit's native binary [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format*\n *\n * ---\n *\n * This package allows us to import and export xeokit {@link @xeokit/scene!SceneModel | SceneModels} as [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx), a\n * compact binary-encoded runtime asset delivery format for geometry and materials.\n *\n * To import a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) model into xeokit, use the {@link loadDTX} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}. To export a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) model, use the {@link saveDTX} function, which will save a\n * {@link @xeokit/scene!SceneModel | SceneModel} to [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx).\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNkk1PwzAMhv9K5RNI3dSPtemqaafd2ASiICGUS9a4ENQ2U5MixrT_Tvo1WiEQvaSvHT9-rfgEqeQIMaQ5U2oj2EvFClrSkosKUy1kaW3vG93mrSTFEnemIrdOtLTMJ3h3yv2bua86kVbINN62oavrLravRc4HwVHpSh4beW7oA38rGX-6ebhjxoUaWqxWh0ajxmq97kKZyHHDNOuUurjqcR0s72DfmKwu25Eayuhewt7xP03HbSYA1QH-aDSZi4JDYTZbU3ApJCNob3hITYpi61Ghsi6mVIOdOP8V29u7pMZFP7BgQ4FVwQQ3S9EOREG_YoEUYvPLMWN1rimYwcxVVmuZHMsUYl3VaEN94Obh-zWCOGO5MlHkQstq1y9ac9hwYCXEJ_iA2HP8eRiFAXHDZUA8J7DhCPHCieYRWRDPJ15EiB-cbfiU0kCdeeD4hLjL0DFh33Nb2HOba1ycvwAqVO7G?type=png)](https://mermaid.live/edit#pako:eNqNkk1PwzAMhv9K5RNI3dSPtemqaafd2ASiICGUS9a4ENQ2U5MixrT_Tvo1WiEQvaSvHT9-rfgEqeQIMaQ5U2oj2EvFClrSkosKUy1kaW3vG93mrSTFEnemIrdOtLTMJ3h3yv2bua86kVbINN62oavrLravRc4HwVHpSh4beW7oA38rGX-6ebhjxoUaWqxWh0ajxmq97kKZyHHDNOuUurjqcR0s72DfmKwu25Eayuhewt7xP03HbSYA1QH-aDSZi4JDYTZbU3ApJCNob3hITYpi61Ghsi6mVIOdOP8V29u7pMZFP7BgQ4FVwQQ3S9EOREG_YoEUYvPLMWN1rimYwcxVVmuZHMsUYl3VaEN94Obh-zWCOGO5MlHkQstq1y9ac9hwYCXEJ_iA2HP8eRiFAXHDZUA8J7DhCPHCieYRWRDPJ15EiB-cbfiU0kCdeeD4hLjL0DFh33Nb2HOba1ycvwAqVO7G)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/dtx\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/dtx!loadDTX | loadDTX} to load\n * a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadDTX, saveDTX} from \"@xeokit/dtx\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.dtx\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadDTX({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading DTX: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * Using {@link @xeokit/dtx!saveDTX | saveDTX} to export the {@link @xeokit/scene!SceneModel | SceneModel} back to\n * [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx):\n *\n * ````javascript\n * const arrayBuffer = saveDTX({\n * sceneModel\n * });\n * ````\n *\n * @module @xeokit/dtx\n */\nexport * from \"./loadDTX\";\nexport * from \"./saveDTX\";\nexport * from \"./versions/v1/DTXData_v1\";\n", "\n/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n/* eslint-disable space-unary-ops */\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n//const Z_FILTERED = 1;\n//const Z_HUFFMAN_ONLY = 2;\n//const Z_RLE = 3;\nconst Z_FIXED$1 = 4;\n//const Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\nconst Z_BINARY = 0;\nconst Z_TEXT = 1;\n//const Z_ASCII = 1; // = Z_TEXT\nconst Z_UNKNOWN$1 = 2;\n\n/*============================================================================*/\n\n\nfunction zero$1(buf) { let len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n// From zutil.h\n\nconst STORED_BLOCK = 0;\nconst STATIC_TREES = 1;\nconst DYN_TREES = 2;\n/* The three kinds of block type */\n\nconst MIN_MATCH$1 = 3;\nconst MAX_MATCH$1 = 258;\n/* The minimum and maximum match lengths */\n\n// From deflate.h\n/* ===========================================================================\n * Internal compression state.\n */\n\nconst LENGTH_CODES$1 = 29;\n/* number of length codes, not counting the special END_BLOCK code */\n\nconst LITERALS$1 = 256;\n/* number of literal bytes 0..255 */\n\nconst L_CODES$1 = LITERALS$1 + 1 + LENGTH_CODES$1;\n/* number of Literal or Length codes, including the END_BLOCK code */\n\nconst D_CODES$1 = 30;\n/* number of distance codes */\n\nconst BL_CODES$1 = 19;\n/* number of codes used to transfer the bit lengths */\n\nconst HEAP_SIZE$1 = 2 * L_CODES$1 + 1;\n/* maximum heap size */\n\nconst MAX_BITS$1 = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst Buf_size = 16;\n/* size of bit buffer in bi_buf */\n\n\n/* ===========================================================================\n * Constants\n */\n\nconst MAX_BL_BITS = 7;\n/* Bit length codes must not exceed MAX_BL_BITS bits */\n\nconst END_BLOCK = 256;\n/* end of block literal code */\n\nconst REP_3_6 = 16;\n/* repeat previous bit length 3-6 times (2 bits of repeat count) */\n\nconst REPZ_3_10 = 17;\n/* repeat a zero length 3-10 times (3 bits of repeat count) */\n\nconst REPZ_11_138 = 18;\n/* repeat a zero length 11-138 times (7 bits of repeat count) */\n\n/* eslint-disable comma-spacing,array-bracket-spacing */\nconst extra_lbits = /* extra bits for each length code */\n new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]);\n\nconst extra_dbits = /* extra bits for each distance code */\n new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]);\n\nconst extra_blbits = /* extra bits for each bit length code */\n new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]);\n\nconst bl_order =\n new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);\n/* eslint-enable comma-spacing,array-bracket-spacing */\n\n/* The lengths of the bit length codes are sent in order of decreasing\n * probability, to avoid transmitting the lengths for unused bit length codes.\n */\n\n/* ===========================================================================\n * Local data. These are initialized only once.\n */\n\n// We pre-fill arrays with 0 to avoid uninitialized gaps\n\nconst DIST_CODE_LEN = 512; /* see definition of array dist_code below */\n\n// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1\nconst static_ltree = new Array((L_CODES$1 + 2) * 2);\nzero$1(static_ltree);\n/* The static literal tree. Since the bit lengths are imposed, there is no\n * need for the L_CODES extra codes used during heap construction. However\n * The codes 286 and 287 are needed to build a canonical tree (see _tr_init\n * below).\n */\n\nconst static_dtree = new Array(D_CODES$1 * 2);\nzero$1(static_dtree);\n/* The static distance tree. (Actually a trivial tree since all codes use\n * 5 bits.)\n */\n\nconst _dist_code = new Array(DIST_CODE_LEN);\nzero$1(_dist_code);\n/* Distance codes. The first 256 values correspond to the distances\n * 3 .. 258, the last 256 values correspond to the top 8 bits of\n * the 15 bit distances.\n */\n\nconst _length_code = new Array(MAX_MATCH$1 - MIN_MATCH$1 + 1);\nzero$1(_length_code);\n/* length code for each normalized match length (0 == MIN_MATCH) */\n\nconst base_length = new Array(LENGTH_CODES$1);\nzero$1(base_length);\n/* First normalized length for each code (0 = MIN_MATCH) */\n\nconst base_dist = new Array(D_CODES$1);\nzero$1(base_dist);\n/* First normalized distance for each code (0 = distance of 1) */\n\n\nfunction StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {\n\n this.static_tree = static_tree; /* static tree or NULL */\n this.extra_bits = extra_bits; /* extra bits for each code or NULL */\n this.extra_base = extra_base; /* base index for extra_bits */\n this.elems = elems; /* max number of elements in the tree */\n this.max_length = max_length; /* max bit length for the codes */\n\n // show if `static_tree` has data or dummy - needed for monomorphic objects\n this.has_stree = static_tree && static_tree.length;\n}\n\n\nlet static_l_desc;\nlet static_d_desc;\nlet static_bl_desc;\n\n\nfunction TreeDesc(dyn_tree, stat_desc) {\n this.dyn_tree = dyn_tree; /* the dynamic tree */\n this.max_code = 0; /* largest code with non zero frequency */\n this.stat_desc = stat_desc; /* the corresponding static tree */\n}\n\n\n\nconst d_code = (dist) => {\n\n return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];\n};\n\n\n/* ===========================================================================\n * Output a short LSB first on the stream.\n * IN assertion: there is enough room in pendingBuf.\n */\nconst put_short = (s, w) => {\n// put_byte(s, (uch)((w) & 0xff));\n// put_byte(s, (uch)((ush)(w) >> 8));\n s.pending_buf[s.pending++] = (w) & 0xff;\n s.pending_buf[s.pending++] = (w >>> 8) & 0xff;\n};\n\n\n/* ===========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\nconst send_bits = (s, value, length) => {\n\n if (s.bi_valid > (Buf_size - length)) {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n put_short(s, s.bi_buf);\n s.bi_buf = value >> (Buf_size - s.bi_valid);\n s.bi_valid += length - Buf_size;\n } else {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n s.bi_valid += length;\n }\n};\n\n\nconst send_code = (s, c, tree) => {\n\n send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);\n};\n\n\n/* ===========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\nconst bi_reverse = (code, len) => {\n\n let res = 0;\n do {\n res |= code & 1;\n code >>>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >>> 1;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer, keeping at most 7 bits in it.\n */\nconst bi_flush = (s) => {\n\n if (s.bi_valid === 16) {\n put_short(s, s.bi_buf);\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n } else if (s.bi_valid >= 8) {\n s.pending_buf[s.pending++] = s.bi_buf & 0xff;\n s.bi_buf >>= 8;\n s.bi_valid -= 8;\n }\n};\n\n\n/* ===========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\nconst gen_bitlen = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const max_code = desc.max_code;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const extra = desc.stat_desc.extra_bits;\n const base = desc.stat_desc.extra_base;\n const max_length = desc.stat_desc.max_length;\n let h; /* heap index */\n let n, m; /* iterate over the tree elements */\n let bits; /* bit length */\n let xbits; /* extra bits */\n let f; /* frequency */\n let overflow = 0; /* number of elements with bit length too large */\n\n for (bits = 0; bits <= MAX_BITS$1; bits++) {\n s.bl_count[bits] = 0;\n }\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */\n\n for (h = s.heap_max + 1; h < HEAP_SIZE$1; h++) {\n n = s.heap[h];\n bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n * 2 + 1]/*.Len*/ = bits;\n /* We overwrite tree[n].Dad which is no longer needed */\n\n if (n > max_code) { continue; } /* not a leaf node */\n\n s.bl_count[bits]++;\n xbits = 0;\n if (n >= base) {\n xbits = extra[n - base];\n }\n f = tree[n * 2]/*.Freq*/;\n s.opt_len += f * (bits + xbits);\n if (has_stree) {\n s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);\n }\n }\n if (overflow === 0) { return; }\n\n // Tracev((stderr,\"\\nbit length overflow\\n\"));\n /* This happens for example on obj2 and pic of the Calgary corpus */\n\n /* Find the first bit length which could increase: */\n do {\n bits = max_length - 1;\n while (s.bl_count[bits] === 0) { bits--; }\n s.bl_count[bits]--; /* move one leaf down the tree */\n s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */\n s.bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits !== 0; bits--) {\n n = s.bl_count[bits];\n while (n !== 0) {\n m = s.heap[--h];\n if (m > max_code) { continue; }\n if (tree[m * 2 + 1]/*.Len*/ !== bits) {\n // Tracev((stderr,\"code %d bits %d->%d\\n\", m, tree[m].Len, bits));\n s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;\n tree[m * 2 + 1]/*.Len*/ = bits;\n }\n n--;\n }\n }\n};\n\n\n/* ===========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\nconst gen_codes = (tree, max_code, bl_count) => {\n// ct_data *tree; /* the tree to decorate */\n// int max_code; /* largest code with non zero frequency */\n// ushf *bl_count; /* number of codes at each bit length */\n\n const next_code = new Array(MAX_BITS$1 + 1); /* next code value for each bit length */\n let code = 0; /* running code value */\n let bits; /* bit index */\n let n; /* code index */\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= MAX_BITS$1; bits++) {\n code = (code + bl_count[bits - 1]) << 1;\n next_code[bits] = code;\n }\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n //Assert (code + bl_count[MAX_BITS]-1 == (1< {\n\n let n; /* iterates over tree elements */\n let bits; /* bit counter */\n let length; /* length value */\n let code; /* code value */\n let dist; /* distance index */\n const bl_count = new Array(MAX_BITS$1 + 1);\n /* number of codes at each bit length for an optimal tree */\n\n // do check in _tr_init()\n //if (static_init_done) return;\n\n /* For some embedded targets, global variables are not initialized: */\n/*#ifdef NO_INIT_GLOBAL_POINTERS\n static_l_desc.static_tree = static_ltree;\n static_l_desc.extra_bits = extra_lbits;\n static_d_desc.static_tree = static_dtree;\n static_d_desc.extra_bits = extra_dbits;\n static_bl_desc.extra_bits = extra_blbits;\n#endif*/\n\n /* Initialize the mapping length (0..255) -> length code (0..28) */\n length = 0;\n for (code = 0; code < LENGTH_CODES$1 - 1; code++) {\n base_length[code] = length;\n for (n = 0; n < (1 << extra_lbits[code]); n++) {\n _length_code[length++] = code;\n }\n }\n //Assert (length == 256, \"tr_static_init: length != 256\");\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n _length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n base_dist[code] = dist;\n for (n = 0; n < (1 << extra_dbits[code]); n++) {\n _dist_code[dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: dist != 256\");\n dist >>= 7; /* from now on, all distances are divided by 128 */\n for (; code < D_CODES$1; code++) {\n base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {\n _dist_code[256 + dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: 256+dist != 512\");\n\n /* Construct the codes of the static literal tree */\n for (bits = 0; bits <= MAX_BITS$1; bits++) {\n bl_count[bits] = 0;\n }\n\n n = 0;\n while (n <= 143) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n while (n <= 255) {\n static_ltree[n * 2 + 1]/*.Len*/ = 9;\n n++;\n bl_count[9]++;\n }\n while (n <= 279) {\n static_ltree[n * 2 + 1]/*.Len*/ = 7;\n n++;\n bl_count[7]++;\n }\n while (n <= 287) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n gen_codes(static_ltree, L_CODES$1 + 1, bl_count);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < D_CODES$1; n++) {\n static_dtree[n * 2 + 1]/*.Len*/ = 5;\n static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);\n }\n\n // Now data ready and we can init static trees\n static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS$1 + 1, L_CODES$1, MAX_BITS$1);\n static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES$1, MAX_BITS$1);\n static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES$1, MAX_BL_BITS);\n\n //static_init_done = true;\n};\n\n\n/* ===========================================================================\n * Initialize a new block.\n */\nconst init_block = (s) => {\n\n let n; /* iterates over tree elements */\n\n /* Initialize the trees. */\n for (n = 0; n < L_CODES$1; n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < D_CODES$1; n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < BL_CODES$1; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }\n\n s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;\n s.opt_len = s.static_len = 0;\n s.sym_next = s.matches = 0;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer and align the output on a byte boundary\n */\nconst bi_windup = (s) =>\n{\n if (s.bi_valid > 8) {\n put_short(s, s.bi_buf);\n } else if (s.bi_valid > 0) {\n //put_byte(s, (Byte)s->bi_buf);\n s.pending_buf[s.pending++] = s.bi_buf;\n }\n s.bi_buf = 0;\n s.bi_valid = 0;\n};\n\n/* ===========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\nconst smaller = (tree, n, m, depth) => {\n\n const _n2 = n * 2;\n const _m2 = m * 2;\n return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||\n (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));\n};\n\n/* ===========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\nconst pqdownheap = (s, tree, k) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to restore */\n// int k; /* node to move down */\n\n const v = s.heap[k];\n let j = k << 1; /* left son of k */\n while (j <= s.heap_len) {\n /* Set j to the smallest of the two sons: */\n if (j < s.heap_len &&\n smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {\n j++;\n }\n /* Exit if v is smaller than both sons */\n if (smaller(tree, v, s.heap[j], s.depth)) { break; }\n\n /* Exchange v with the smallest son */\n s.heap[k] = s.heap[j];\n k = j;\n\n /* And continue down the tree, setting j to the left son of k */\n j <<= 1;\n }\n s.heap[k] = v;\n};\n\n\n// inlined manually\n// const SMALLEST = 1;\n\n/* ===========================================================================\n * Send the block data compressed using the given Huffman trees\n */\nconst compress_block = (s, ltree, dtree) => {\n// deflate_state *s;\n// const ct_data *ltree; /* literal tree */\n// const ct_data *dtree; /* distance tree */\n\n let dist; /* distance of matched string */\n let lc; /* match length or unmatched char (if dist == 0) */\n let sx = 0; /* running index in sym_buf */\n let code; /* the code to send */\n let extra; /* number of extra bits to send */\n\n if (s.sym_next !== 0) {\n do {\n dist = s.pending_buf[s.sym_buf + sx++] & 0xff;\n dist += (s.pending_buf[s.sym_buf + sx++] & 0xff) << 8;\n lc = s.pending_buf[s.sym_buf + sx++];\n if (dist === 0) {\n send_code(s, lc, ltree); /* send a literal byte */\n //Tracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n /* Here, lc is the match length - MIN_MATCH */\n code = _length_code[lc];\n send_code(s, code + LITERALS$1 + 1, ltree); /* send the length code */\n extra = extra_lbits[code];\n if (extra !== 0) {\n lc -= base_length[code];\n send_bits(s, lc, extra); /* send the extra length bits */\n }\n dist--; /* dist is now the match distance - 1 */\n code = d_code(dist);\n //Assert (code < D_CODES, \"bad d_code\");\n\n send_code(s, code, dtree); /* send the distance code */\n extra = extra_dbits[code];\n if (extra !== 0) {\n dist -= base_dist[code];\n send_bits(s, dist, extra); /* send the extra distance bits */\n }\n } /* literal or match pair ? */\n\n /* Check that the overlay between pending_buf and sym_buf is ok: */\n //Assert(s->pending < s->lit_bufsize + sx, \"pendingBuf overflow\");\n\n } while (sx < s.sym_next);\n }\n\n send_code(s, END_BLOCK, ltree);\n};\n\n\n/* ===========================================================================\n * Construct one Huffman tree and assigns the code bit strings and lengths.\n * Update the total bit length for the current block.\n * IN assertion: the field freq is set for all tree elements.\n * OUT assertions: the fields len and code are set to the optimal bit length\n * and corresponding code. The length opt_len is updated; static_len is\n * also updated if stree is not null. The field max_code is set.\n */\nconst build_tree = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const elems = desc.stat_desc.elems;\n let n, m; /* iterate over heap elements */\n let max_code = -1; /* largest code with non zero frequency */\n let node; /* new node being created */\n\n /* Construct the initial heap, with least frequent element in\n * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].\n * heap[0] is not used.\n */\n s.heap_len = 0;\n s.heap_max = HEAP_SIZE$1;\n\n for (n = 0; n < elems; n++) {\n if (tree[n * 2]/*.Freq*/ !== 0) {\n s.heap[++s.heap_len] = max_code = n;\n s.depth[n] = 0;\n\n } else {\n tree[n * 2 + 1]/*.Len*/ = 0;\n }\n }\n\n /* The pkzip format requires that at least one distance code exists,\n * and that at least one bit should be sent even if there is only one\n * possible code. So to avoid special checks later on we force at least\n * two codes of non zero frequency.\n */\n while (s.heap_len < 2) {\n node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);\n tree[node * 2]/*.Freq*/ = 1;\n s.depth[node] = 0;\n s.opt_len--;\n\n if (has_stree) {\n s.static_len -= stree[node * 2 + 1]/*.Len*/;\n }\n /* node is 0 or 1 so it does not have extra bits */\n }\n desc.max_code = max_code;\n\n /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,\n * establish sub-heaps of increasing lengths:\n */\n for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n node = elems; /* next internal node of the tree */\n do {\n //pqremove(s, tree, n); /* n = node of least frequency */\n /*** pqremove ***/\n n = s.heap[1/*SMALLEST*/];\n s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];\n pqdownheap(s, tree, 1/*SMALLEST*/);\n /***/\n\n m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */\n\n s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */\n s.heap[--s.heap_max] = m;\n\n /* Create a new node father of n and m */\n tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;\n s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;\n tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;\n\n /* and insert the new node in the heap */\n s.heap[1/*SMALLEST*/] = node++;\n pqdownheap(s, tree, 1/*SMALLEST*/);\n\n } while (s.heap_len >= 2);\n\n s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n gen_bitlen(s, desc);\n\n /* The field len is now set, we can generate the bit codes */\n gen_codes(tree, max_code, s.bl_count);\n};\n\n\n/* ===========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree.\n */\nconst scan_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n s.bl_tree[curlen * 2]/*.Freq*/ += count;\n\n } else if (curlen !== 0) {\n\n if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }\n s.bl_tree[REP_3_6 * 2]/*.Freq*/++;\n\n } else if (count <= 10) {\n s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;\n\n } else {\n s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;\n }\n\n count = 0;\n prevlen = curlen;\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\nconst send_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n /* tree[max_code+1].Len = -1; */ /* guard already set */\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);\n\n } else if (curlen !== 0) {\n if (curlen !== prevlen) {\n send_code(s, curlen, s.bl_tree);\n count--;\n }\n //Assert(count >= 3 && count <= 6, \" 3_6?\");\n send_code(s, REP_3_6, s.bl_tree);\n send_bits(s, count - 3, 2);\n\n } else if (count <= 10) {\n send_code(s, REPZ_3_10, s.bl_tree);\n send_bits(s, count - 3, 3);\n\n } else {\n send_code(s, REPZ_11_138, s.bl_tree);\n send_bits(s, count - 11, 7);\n }\n\n count = 0;\n prevlen = curlen;\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\nconst build_bl_tree = (s) => {\n\n let max_blindex; /* index of last bit length code of non zero freq */\n\n /* Determine the bit length frequencies for literal and distance trees */\n scan_tree(s, s.dyn_ltree, s.l_desc.max_code);\n scan_tree(s, s.dyn_dtree, s.d_desc.max_code);\n\n /* Build the bit length tree: */\n build_tree(s, s.bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = BL_CODES$1 - 1; max_blindex >= 3; max_blindex--) {\n if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {\n break;\n }\n }\n /* Update opt_len to include the bit length tree and counts */\n s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n //Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n // s->opt_len, s->static_len));\n\n return max_blindex;\n};\n\n\n/* ===========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\nconst send_all_trees = (s, lcodes, dcodes, blcodes) => {\n// deflate_state *s;\n// int lcodes, dcodes, blcodes; /* number of codes for each tree */\n\n let rank; /* index in bl_order */\n\n //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n // \"too many codes\");\n //Tracev((stderr, \"\\nbl counts: \"));\n send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */\n send_bits(s, dcodes - 1, 5);\n send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */\n for (rank = 0; rank < blcodes; rank++) {\n //Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);\n }\n //Tracev((stderr, \"\\nbl tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */\n //Tracev((stderr, \"\\nlit tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */\n //Tracev((stderr, \"\\ndist tree: sent %ld\", s->bits_sent));\n};\n\n\n/* ===========================================================================\n * Check if the data type is TEXT or BINARY, using the following algorithm:\n * - TEXT if the two conditions below are satisfied:\n * a) There are no non-portable control characters belonging to the\n * \"block list\" (0..6, 14..25, 28..31).\n * b) There is at least one printable character belonging to the\n * \"allow list\" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).\n * - BINARY otherwise.\n * - The following partially-portable control characters form a\n * \"gray list\" that is ignored in this detection algorithm:\n * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).\n * IN assertion: the fields Freq of dyn_ltree are set.\n */\nconst detect_data_type = (s) => {\n /* block_mask is the bit mask of block-listed bytes\n * set bits 0..6, 14..25, and 28..31\n * 0xf3ffc07f = binary 11110011111111111100000001111111\n */\n let block_mask = 0xf3ffc07f;\n let n;\n\n /* Check for non-textual (\"block-listed\") bytes. */\n for (n = 0; n <= 31; n++, block_mask >>>= 1) {\n if ((block_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {\n return Z_BINARY;\n }\n }\n\n /* Check for textual (\"allow-listed\") bytes. */\n if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||\n s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n for (n = 32; n < LITERALS$1; n++) {\n if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n }\n\n /* There are no \"block-listed\" or \"allow-listed\" bytes:\n * this stream either is empty or has tolerated (\"gray-listed\") bytes only.\n */\n return Z_BINARY;\n};\n\n\nlet static_init_done = false;\n\n/* ===========================================================================\n * Initialize the tree data structures for a new zlib stream.\n */\nconst _tr_init$1 = (s) =>\n{\n\n if (!static_init_done) {\n tr_static_init();\n static_init_done = true;\n }\n\n s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc);\n s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc);\n s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);\n\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n /* Initialize the first block of the first file: */\n init_block(s);\n};\n\n\n/* ===========================================================================\n * Send a stored block\n */\nconst _tr_stored_block$1 = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); /* send block type */\n bi_windup(s); /* align on byte boundary */\n put_short(s, stored_len);\n put_short(s, ~stored_len);\n if (stored_len) {\n s.pending_buf.set(s.window.subarray(buf, buf + stored_len), s.pending);\n }\n s.pending += stored_len;\n};\n\n\n/* ===========================================================================\n * Send one empty static block to give enough lookahead for inflate.\n * This takes 10 bits, of which 7 may remain in the bit buffer.\n */\nconst _tr_align$1 = (s) => {\n send_bits(s, STATIC_TREES << 1, 3);\n send_code(s, END_BLOCK, static_ltree);\n bi_flush(s);\n};\n\n\n/* ===========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and write out the encoded block.\n */\nconst _tr_flush_block$1 = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block, or NULL if too old */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n let opt_lenb, static_lenb; /* opt_len and static_len in bytes */\n let max_blindex = 0; /* index of last bit length code of non zero freq */\n\n /* Build the Huffman trees unless a stored block is forced */\n if (s.level > 0) {\n\n /* Check if the file is binary or text */\n if (s.strm.data_type === Z_UNKNOWN$1) {\n s.strm.data_type = detect_data_type(s);\n }\n\n /* Construct the literal and distance trees */\n build_tree(s, s.l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n\n build_tree(s, s.d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = build_bl_tree(s);\n\n /* Determine the best encoding. Compute the block lengths in bytes. */\n opt_lenb = (s.opt_len + 3 + 7) >>> 3;\n static_lenb = (s.static_len + 3 + 7) >>> 3;\n\n // Tracev((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u \",\n // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,\n // s->sym_next / 3));\n\n if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }\n\n } else {\n // Assert(buf != (char*)0, \"lost buf\");\n opt_lenb = static_lenb = stored_len + 5; /* force a stored block */\n }\n\n if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {\n /* 4: two words for the lengths */\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n _tr_stored_block$1(s, buf, stored_len, last);\n\n } else if (s.strategy === Z_FIXED$1 || static_lenb === opt_lenb) {\n\n send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);\n compress_block(s, static_ltree, static_dtree);\n\n } else {\n send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);\n send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);\n compress_block(s, s.dyn_ltree, s.dyn_dtree);\n }\n // Assert (s->compressed_len == s->bits_sent, \"bad compressed size\");\n /* The above check is made mod 2^32, for files larger than 512 MB\n * and uLong implemented on 32 bits.\n */\n init_block(s);\n\n if (last) {\n bi_windup(s);\n }\n // Tracev((stderr,\"\\ncomprlen %lu(%lu) \", s->compressed_len>>3,\n // s->compressed_len-7*last));\n};\n\n/* ===========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\nconst _tr_tally$1 = (s, dist, lc) => {\n// deflate_state *s;\n// unsigned dist; /* distance of matched string */\n// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */\n\n s.pending_buf[s.sym_buf + s.sym_next++] = dist;\n s.pending_buf[s.sym_buf + s.sym_next++] = dist >> 8;\n s.pending_buf[s.sym_buf + s.sym_next++] = lc;\n if (dist === 0) {\n /* lc is the unmatched char */\n s.dyn_ltree[lc * 2]/*.Freq*/++;\n } else {\n s.matches++;\n /* Here, lc is the match length - MIN_MATCH */\n dist--; /* dist = match distance - 1 */\n //Assert((ush)dist < (ush)MAX_DIST(s) &&\n // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n // (ush)d_code(dist) < (ush)D_CODES, \"_tr_tally: bad match\");\n\n s.dyn_ltree[(_length_code[lc] + LITERALS$1 + 1) * 2]/*.Freq*/++;\n s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;\n }\n\n return (s.sym_next === s.sym_end);\n};\n\nvar _tr_init_1 = _tr_init$1;\nvar _tr_stored_block_1 = _tr_stored_block$1;\nvar _tr_flush_block_1 = _tr_flush_block$1;\nvar _tr_tally_1 = _tr_tally$1;\nvar _tr_align_1 = _tr_align$1;\n\nvar trees = {\n\t_tr_init: _tr_init_1,\n\t_tr_stored_block: _tr_stored_block_1,\n\t_tr_flush_block: _tr_flush_block_1,\n\t_tr_tally: _tr_tally_1,\n\t_tr_align: _tr_align_1\n};\n\n// Note: adler32 takes 12% for level 0 and 2% for level 6.\n// It isn't worth it to make additional optimizations as in original.\n// Small size is preferable.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst adler32 = (adler, buf, len, pos) => {\n let s1 = (adler & 0xffff) |0,\n s2 = ((adler >>> 16) & 0xffff) |0,\n n = 0;\n\n while (len !== 0) {\n // Set limit ~ twice less than 5552, to keep\n // s2 in 31-bits, because we force signed ints.\n // in other case %= will fail.\n n = len > 2000 ? 2000 : len;\n len -= n;\n\n do {\n s1 = (s1 + buf[pos++]) |0;\n s2 = (s2 + s1) |0;\n } while (--n);\n\n s1 %= 65521;\n s2 %= 65521;\n }\n\n return (s1 | (s2 << 16)) |0;\n};\n\n\nvar adler32_1 = adler32;\n\n// Note: we can't get significant speed boost here.\n// So write code to minimize size - no pregenerated tables\n// and array tools dependencies.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// Use ordinary array, since untyped makes no boost here\nconst makeTable = () => {\n let c, table = [];\n\n for (var n = 0; n < 256; n++) {\n c = n;\n for (var k = 0; k < 8; k++) {\n c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));\n }\n table[n] = c;\n }\n\n return table;\n};\n\n// Create table on load. Just 255 signed longs. Not a problem.\nconst crcTable = new Uint32Array(makeTable());\n\n\nconst crc32 = (crc, buf, len, pos) => {\n const t = crcTable;\n const end = pos + len;\n\n crc ^= -1;\n\n for (let i = pos; i < end; i++) {\n crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF];\n }\n\n return (crc ^ (-1)); // >>> 0;\n};\n\n\nvar crc32_1 = crc32;\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar messages = {\n 2: 'need dictionary', /* Z_NEED_DICT 2 */\n 1: 'stream end', /* Z_STREAM_END 1 */\n 0: '', /* Z_OK 0 */\n '-1': 'file error', /* Z_ERRNO (-1) */\n '-2': 'stream error', /* Z_STREAM_ERROR (-2) */\n '-3': 'data error', /* Z_DATA_ERROR (-3) */\n '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */\n '-5': 'buffer error', /* Z_BUF_ERROR (-5) */\n '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar constants$2 = {\n\n /* Allowed flush values; see deflate() and inflate() below for details */\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n\n /* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n //Z_VERSION_ERROR: -6,\n\n /* compression levels */\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n\n\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n\n /* Possible values of the data_type field (though see inflate()) */\n Z_BINARY: 0,\n Z_TEXT: 1,\n //Z_ASCII: 1, // = Z_TEXT (deprecated)\n Z_UNKNOWN: 2,\n\n /* The deflate compression method */\n Z_DEFLATED: 8\n //Z_NULL: null // Use -1 or null inline, depending on var type\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst { _tr_init, _tr_stored_block, _tr_flush_block, _tr_tally, _tr_align } = trees;\n\n\n\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH: Z_NO_FLUSH$2, Z_PARTIAL_FLUSH, Z_FULL_FLUSH: Z_FULL_FLUSH$1, Z_FINISH: Z_FINISH$3, Z_BLOCK: Z_BLOCK$1,\n Z_OK: Z_OK$3, Z_STREAM_END: Z_STREAM_END$3, Z_STREAM_ERROR: Z_STREAM_ERROR$2, Z_DATA_ERROR: Z_DATA_ERROR$2, Z_BUF_ERROR: Z_BUF_ERROR$1,\n Z_DEFAULT_COMPRESSION: Z_DEFAULT_COMPRESSION$1,\n Z_FILTERED, Z_HUFFMAN_ONLY, Z_RLE, Z_FIXED, Z_DEFAULT_STRATEGY: Z_DEFAULT_STRATEGY$1,\n Z_UNKNOWN,\n Z_DEFLATED: Z_DEFLATED$2\n} = constants$2;\n\n/*============================================================================*/\n\n\nconst MAX_MEM_LEVEL = 9;\n/* Maximum value for memLevel in deflateInit2 */\nconst MAX_WBITS$1 = 15;\n/* 32K LZ77 window */\nconst DEF_MEM_LEVEL = 8;\n\n\nconst LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\nconst LITERALS = 256;\n/* number of literal bytes 0..255 */\nconst L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\nconst D_CODES = 30;\n/* number of distance codes */\nconst BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\nconst HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\nconst MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst MIN_MATCH = 3;\nconst MAX_MATCH = 258;\nconst MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1);\n\nconst PRESET_DICT = 0x20;\n\nconst INIT_STATE = 42; /* zlib header -> BUSY_STATE */\n//#ifdef GZIP\nconst GZIP_STATE = 57; /* gzip header -> BUSY_STATE | EXTRA_STATE */\n//#endif\nconst EXTRA_STATE = 69; /* gzip extra block -> NAME_STATE */\nconst NAME_STATE = 73; /* gzip file name -> COMMENT_STATE */\nconst COMMENT_STATE = 91; /* gzip comment -> HCRC_STATE */\nconst HCRC_STATE = 103; /* gzip header CRC -> BUSY_STATE */\nconst BUSY_STATE = 113; /* deflate -> FINISH_STATE */\nconst FINISH_STATE = 666; /* stream complete */\n\nconst BS_NEED_MORE = 1; /* block not completed, need more input or more output */\nconst BS_BLOCK_DONE = 2; /* block flush performed */\nconst BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */\nconst BS_FINISH_DONE = 4; /* finish done, accept no more input or output */\n\nconst OS_CODE = 0x03; // Unix :) . Don't detect, use this default.\n\nconst err = (strm, errorCode) => {\n strm.msg = messages[errorCode];\n return errorCode;\n};\n\nconst rank = (f) => {\n return ((f) * 2) - ((f) > 4 ? 9 : 0);\n};\n\nconst zero = (buf) => {\n let len = buf.length; while (--len >= 0) { buf[len] = 0; }\n};\n\n/* ===========================================================================\n * Slide the hash table when sliding the window down (could be avoided with 32\n * bit values at the expense of memory usage). We slide even when level == 0 to\n * keep the hash table consistent if we switch back to level > 0 later.\n */\nconst slide_hash = (s) => {\n let n, m;\n let p;\n let wsize = s.w_size;\n\n n = s.hash_size;\n p = n;\n do {\n m = s.head[--p];\n s.head[p] = (m >= wsize ? m - wsize : 0);\n } while (--n);\n n = wsize;\n//#ifndef FASTEST\n p = n;\n do {\n m = s.prev[--p];\n s.prev[p] = (m >= wsize ? m - wsize : 0);\n /* If n is not on any hash chain, prev[n] is garbage but\n * its value will never be used.\n */\n } while (--n);\n//#endif\n};\n\n/* eslint-disable new-cap */\nlet HASH_ZLIB = (s, prev, data) => ((prev << s.hash_shift) ^ data) & s.hash_mask;\n// This hash causes less collisions, https://github.com/nodeca/pako/issues/135\n// But breaks binary compatibility\n//let HASH_FAST = (s, prev, data) => ((prev << 8) + (prev >> 8) + (data << 4)) & s.hash_mask;\nlet HASH = HASH_ZLIB;\n\n\n/* =========================================================================\n * Flush as much pending output as possible. All deflate() output, except for\n * some deflate_stored() output, goes through this function so some\n * applications may wish to modify it to avoid allocating a large\n * strm->next_out buffer and copying into it. (See also read_buf()).\n */\nconst flush_pending = (strm) => {\n const s = strm.state;\n\n //_tr_flush_bits(s);\n let len = s.pending;\n if (len > strm.avail_out) {\n len = strm.avail_out;\n }\n if (len === 0) { return; }\n\n strm.output.set(s.pending_buf.subarray(s.pending_out, s.pending_out + len), strm.next_out);\n strm.next_out += len;\n s.pending_out += len;\n strm.total_out += len;\n strm.avail_out -= len;\n s.pending -= len;\n if (s.pending === 0) {\n s.pending_out = 0;\n }\n};\n\n\nconst flush_block_only = (s, last) => {\n _tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last);\n s.block_start = s.strstart;\n flush_pending(s.strm);\n};\n\n\nconst put_byte = (s, b) => {\n s.pending_buf[s.pending++] = b;\n};\n\n\n/* =========================================================================\n * Put a short in the pending buffer. The 16-bit value is put in MSB order.\n * IN assertion: the stream state is correct and there is enough room in\n * pending_buf.\n */\nconst putShortMSB = (s, b) => {\n\n // put_byte(s, (Byte)(b >> 8));\n// put_byte(s, (Byte)(b & 0xff));\n s.pending_buf[s.pending++] = (b >>> 8) & 0xff;\n s.pending_buf[s.pending++] = b & 0xff;\n};\n\n\n/* ===========================================================================\n * Read a new buffer from the current input stream, update the adler32\n * and total number of bytes read. All deflate() input goes through\n * this function so some applications may wish to modify it to avoid\n * allocating a large strm->input buffer and copying from it.\n * (See also flush_pending()).\n */\nconst read_buf = (strm, buf, start, size) => {\n\n let len = strm.avail_in;\n\n if (len > size) { len = size; }\n if (len === 0) { return 0; }\n\n strm.avail_in -= len;\n\n // zmemcpy(buf, strm->next_in, len);\n buf.set(strm.input.subarray(strm.next_in, strm.next_in + len), start);\n if (strm.state.wrap === 1) {\n strm.adler = adler32_1(strm.adler, buf, len, start);\n }\n\n else if (strm.state.wrap === 2) {\n strm.adler = crc32_1(strm.adler, buf, len, start);\n }\n\n strm.next_in += len;\n strm.total_in += len;\n\n return len;\n};\n\n\n/* ===========================================================================\n * Set match_start to the longest match starting at the given string and\n * return its length. Matches shorter or equal to prev_length are discarded,\n * in which case the result is equal to prev_length and match_start is\n * garbage.\n * IN assertions: cur_match is the head of the hash chain for the current\n * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1\n * OUT assertion: the match length is not greater than s->lookahead.\n */\nconst longest_match = (s, cur_match) => {\n\n let chain_length = s.max_chain_length; /* max hash chain length */\n let scan = s.strstart; /* current string */\n let match; /* matched string */\n let len; /* length of current match */\n let best_len = s.prev_length; /* best match length so far */\n let nice_match = s.nice_match; /* stop if match long enough */\n const limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ?\n s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/;\n\n const _win = s.window; // shortcut\n\n const wmask = s.w_mask;\n const prev = s.prev;\n\n /* Stop when cur_match becomes <= limit. To simplify the code,\n * we prevent matches with the string of window index 0.\n */\n\n const strend = s.strstart + MAX_MATCH;\n let scan_end1 = _win[scan + best_len - 1];\n let scan_end = _win[scan + best_len];\n\n /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.\n * It is easy to get rid of this optimization if necessary.\n */\n // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, \"Code too clever\");\n\n /* Do not waste too much time if we already have a good match: */\n if (s.prev_length >= s.good_match) {\n chain_length >>= 2;\n }\n /* Do not look for matches beyond the end of the input. This is necessary\n * to make deflate deterministic.\n */\n if (nice_match > s.lookahead) { nice_match = s.lookahead; }\n\n // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, \"need lookahead\");\n\n do {\n // Assert(cur_match < s->strstart, \"no future\");\n match = cur_match;\n\n /* Skip to next match if the match length cannot increase\n * or if the match length is less than 2. Note that the checks below\n * for insufficient lookahead only occur occasionally for performance\n * reasons. Therefore uninitialized memory will be accessed, and\n * conditional jumps will be made that depend on those values.\n * However the length of the match is limited to the lookahead, so\n * the output of deflate is not affected by the uninitialized values.\n */\n\n if (_win[match + best_len] !== scan_end ||\n _win[match + best_len - 1] !== scan_end1 ||\n _win[match] !== _win[scan] ||\n _win[++match] !== _win[scan + 1]) {\n continue;\n }\n\n /* The check at best_len-1 can be removed because it will be made\n * again later. (This heuristic is not always a win.)\n * It is not necessary to compare scan[2] and match[2] since they\n * are always equal when the other bytes match, given that\n * the hash keys are equal and that HASH_BITS >= 8.\n */\n scan += 2;\n match++;\n // Assert(*scan == *match, \"match[2]?\");\n\n /* We check for insufficient lookahead only every 8th comparison;\n * the 256th check will be made at strstart+258.\n */\n do {\n /*jshint noempty:false*/\n } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n scan < strend);\n\n // Assert(scan <= s->window+(unsigned)(s->window_size-1), \"wild scan\");\n\n len = MAX_MATCH - (strend - scan);\n scan = strend - MAX_MATCH;\n\n if (len > best_len) {\n s.match_start = cur_match;\n best_len = len;\n if (len >= nice_match) {\n break;\n }\n scan_end1 = _win[scan + best_len - 1];\n scan_end = _win[scan + best_len];\n }\n } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0);\n\n if (best_len <= s.lookahead) {\n return best_len;\n }\n return s.lookahead;\n};\n\n\n/* ===========================================================================\n * Fill the window when the lookahead becomes insufficient.\n * Updates strstart and lookahead.\n *\n * IN assertion: lookahead < MIN_LOOKAHEAD\n * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD\n * At least one byte has been read, or avail_in == 0; reads are\n * performed for at least two bytes (required for the zip translate_eol\n * option -- not supported here).\n */\nconst fill_window = (s) => {\n\n const _w_size = s.w_size;\n let n, more, str;\n\n //Assert(s->lookahead < MIN_LOOKAHEAD, \"already enough lookahead\");\n\n do {\n more = s.window_size - s.lookahead - s.strstart;\n\n // JS ints have 32 bit, block below not needed\n /* Deal with !@#$% 64K limit: */\n //if (sizeof(int) <= 2) {\n // if (more == 0 && s->strstart == 0 && s->lookahead == 0) {\n // more = wsize;\n //\n // } else if (more == (unsigned)(-1)) {\n // /* Very unlikely, but possible on 16 bit machine if\n // * strstart == 0 && lookahead == 1 (input done a byte at time)\n // */\n // more--;\n // }\n //}\n\n\n /* If the window is almost full and there is insufficient lookahead,\n * move the upper half to the lower one to make room in the upper half.\n */\n if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {\n\n s.window.set(s.window.subarray(_w_size, _w_size + _w_size - more), 0);\n s.match_start -= _w_size;\n s.strstart -= _w_size;\n /* we now have strstart >= MAX_DIST */\n s.block_start -= _w_size;\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n slide_hash(s);\n more += _w_size;\n }\n if (s.strm.avail_in === 0) {\n break;\n }\n\n /* If there was no sliding:\n * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&\n * more == window_size - lookahead - strstart\n * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)\n * => more >= window_size - 2*WSIZE + 2\n * In the BIG_MEM or MMAP case (not yet supported),\n * window_size == input_size + MIN_LOOKAHEAD &&\n * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.\n * Otherwise, window_size == 2*WSIZE so more >= 2.\n * If there was sliding, more >= WSIZE. So in all cases, more >= 2.\n */\n //Assert(more >= 2, \"more < 2\");\n n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);\n s.lookahead += n;\n\n /* Initialize the hash value now that we have some input: */\n if (s.lookahead + s.insert >= MIN_MATCH) {\n str = s.strstart - s.insert;\n s.ins_h = s.window[str];\n\n /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + 1]);\n//#if MIN_MATCH != 3\n// Call update_hash() MIN_MATCH-3 more times\n//#endif\n while (s.insert) {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = str;\n str++;\n s.insert--;\n if (s.lookahead + s.insert < MIN_MATCH) {\n break;\n }\n }\n }\n /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,\n * but this is not important since only literal bytes will be emitted.\n */\n\n } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0);\n\n /* If the WIN_INIT bytes after the end of the current data have never been\n * written, then zero those bytes in order to avoid memory check reports of\n * the use of uninitialized (or uninitialised as Julian writes) bytes by\n * the longest match routines. Update the high water mark for the next\n * time through here. WIN_INIT is set to MAX_MATCH since the longest match\n * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.\n */\n// if (s.high_water < s.window_size) {\n// const curr = s.strstart + s.lookahead;\n// let init = 0;\n//\n// if (s.high_water < curr) {\n// /* Previous high water mark below current data -- zero WIN_INIT\n// * bytes or up to end of window, whichever is less.\n// */\n// init = s.window_size - curr;\n// if (init > WIN_INIT)\n// init = WIN_INIT;\n// zmemzero(s->window + curr, (unsigned)init);\n// s->high_water = curr + init;\n// }\n// else if (s->high_water < (ulg)curr + WIN_INIT) {\n// /* High water mark at or above current data, but below current data\n// * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up\n// * to end of window, whichever is less.\n// */\n// init = (ulg)curr + WIN_INIT - s->high_water;\n// if (init > s->window_size - s->high_water)\n// init = s->window_size - s->high_water;\n// zmemzero(s->window + s->high_water, (unsigned)init);\n// s->high_water += init;\n// }\n// }\n//\n// Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD,\n// \"not enough room for search\");\n};\n\n/* ===========================================================================\n * Copy without compression as much as possible from the input stream, return\n * the current block state.\n *\n * In case deflateParams() is used to later switch to a non-zero compression\n * level, s->matches (otherwise unused when storing) keeps track of the number\n * of hash table slides to perform. If s->matches is 1, then one hash table\n * slide will be done when switching. If s->matches is 2, the maximum value\n * allowed here, then the hash table will be cleared, since two or more slides\n * is the same as a clear.\n *\n * deflate_stored() is written to minimize the number of times an input byte is\n * copied. It is most efficient with large input and output buffers, which\n * maximizes the opportunites to have a single copy from next_in to next_out.\n */\nconst deflate_stored = (s, flush) => {\n\n /* Smallest worthy block size when not flushing or finishing. By default\n * this is 32K. This can be as small as 507 bytes for memLevel == 1. For\n * large input and output buffers, the stored block size will be larger.\n */\n let min_block = s.pending_buf_size - 5 > s.w_size ? s.w_size : s.pending_buf_size - 5;\n\n /* Copy as many min_block or larger stored blocks directly to next_out as\n * possible. If flushing, copy the remaining available input to next_out as\n * stored blocks, if there is enough space.\n */\n let len, left, have, last = 0;\n let used = s.strm.avail_in;\n do {\n /* Set len to the maximum size block that we can copy directly with the\n * available input data and output space. Set left to how much of that\n * would be copied from what's left in the window.\n */\n len = 65535/* MAX_STORED */; /* maximum deflate stored block length */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n if (s.strm.avail_out < have) { /* need room for header */\n break;\n }\n /* maximum stored block length that will fit in avail_out: */\n have = s.strm.avail_out - have;\n left = s.strstart - s.block_start; /* bytes left in window */\n if (len > left + s.strm.avail_in) {\n len = left + s.strm.avail_in; /* limit len to the input */\n }\n if (len > have) {\n len = have; /* limit len to the output */\n }\n\n /* If the stored block would be less than min_block in length, or if\n * unable to copy all of the available input when flushing, then try\n * copying to the window and the pending buffer instead. Also don't\n * write an empty block when flushing -- deflate() does that.\n */\n if (len < min_block && ((len === 0 && flush !== Z_FINISH$3) ||\n flush === Z_NO_FLUSH$2 ||\n len !== left + s.strm.avail_in)) {\n break;\n }\n\n /* Make a dummy stored block in pending to get the header bytes,\n * including any pending bits. This also updates the debugging counts.\n */\n last = flush === Z_FINISH$3 && len === left + s.strm.avail_in ? 1 : 0;\n _tr_stored_block(s, 0, 0, last);\n\n /* Replace the lengths in the dummy stored block with len. */\n s.pending_buf[s.pending - 4] = len;\n s.pending_buf[s.pending - 3] = len >> 8;\n s.pending_buf[s.pending - 2] = ~len;\n s.pending_buf[s.pending - 1] = ~len >> 8;\n\n /* Write the stored block header bytes. */\n flush_pending(s.strm);\n\n//#ifdef ZLIB_DEBUG\n// /* Update debugging counts for the data about to be copied. */\n// s->compressed_len += len << 3;\n// s->bits_sent += len << 3;\n//#endif\n\n /* Copy uncompressed bytes from the window to next_out. */\n if (left) {\n if (left > len) {\n left = len;\n }\n //zmemcpy(s->strm->next_out, s->window + s->block_start, left);\n s.strm.output.set(s.window.subarray(s.block_start, s.block_start + left), s.strm.next_out);\n s.strm.next_out += left;\n s.strm.avail_out -= left;\n s.strm.total_out += left;\n s.block_start += left;\n len -= left;\n }\n\n /* Copy uncompressed bytes directly from next_in to next_out, updating\n * the check value.\n */\n if (len) {\n read_buf(s.strm, s.strm.output, s.strm.next_out, len);\n s.strm.next_out += len;\n s.strm.avail_out -= len;\n s.strm.total_out += len;\n }\n } while (last === 0);\n\n /* Update the sliding window with the last s->w_size bytes of the copied\n * data, or append all of the copied data to the existing window if less\n * than s->w_size bytes were copied. Also update the number of bytes to\n * insert in the hash tables, in the event that deflateParams() switches to\n * a non-zero compression level.\n */\n used -= s.strm.avail_in; /* number of input bytes directly copied */\n if (used) {\n /* If any input was used, then no unused input remains in the window,\n * therefore s->block_start == s->strstart.\n */\n if (used >= s.w_size) { /* supplant the previous history */\n s.matches = 2; /* clear hash */\n //zmemcpy(s->window, s->strm->next_in - s->w_size, s->w_size);\n s.window.set(s.strm.input.subarray(s.strm.next_in - s.w_size, s.strm.next_in), 0);\n s.strstart = s.w_size;\n s.insert = s.strstart;\n }\n else {\n if (s.window_size - s.strstart <= used) {\n /* Slide the window down. */\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n //zmemcpy(s->window + s->strstart, s->strm->next_in - used, used);\n s.window.set(s.strm.input.subarray(s.strm.next_in - used, s.strm.next_in), s.strstart);\n s.strstart += used;\n s.insert += used > s.w_size - s.insert ? s.w_size - s.insert : used;\n }\n s.block_start = s.strstart;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* If the last block was written to next_out, then done. */\n if (last) {\n return BS_FINISH_DONE;\n }\n\n /* If flushing and all input has been consumed, then done. */\n if (flush !== Z_NO_FLUSH$2 && flush !== Z_FINISH$3 &&\n s.strm.avail_in === 0 && s.strstart === s.block_start) {\n return BS_BLOCK_DONE;\n }\n\n /* Fill the window with any remaining input. */\n have = s.window_size - s.strstart;\n if (s.strm.avail_in > have && s.block_start >= s.w_size) {\n /* Slide the window down. */\n s.block_start -= s.w_size;\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n have += s.w_size; /* more space now */\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n if (have > s.strm.avail_in) {\n have = s.strm.avail_in;\n }\n if (have) {\n read_buf(s.strm, s.window, s.strstart, have);\n s.strstart += have;\n s.insert += have > s.w_size - s.insert ? s.w_size - s.insert : have;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* There was not enough avail_out to write a complete worthy or flushed\n * stored block to next_out. Write a stored block to pending instead, if we\n * have enough input for a worthy block, or if flushing and there is enough\n * room for the remaining input as a stored block in the pending buffer.\n */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n /* maximum stored block length that will fit in pending: */\n have = s.pending_buf_size - have > 65535/* MAX_STORED */ ? 65535/* MAX_STORED */ : s.pending_buf_size - have;\n min_block = have > s.w_size ? s.w_size : have;\n left = s.strstart - s.block_start;\n if (left >= min_block ||\n ((left || flush === Z_FINISH$3) && flush !== Z_NO_FLUSH$2 &&\n s.strm.avail_in === 0 && left <= have)) {\n len = left > have ? have : left;\n last = flush === Z_FINISH$3 && s.strm.avail_in === 0 &&\n len === left ? 1 : 0;\n _tr_stored_block(s, s.block_start, len, last);\n s.block_start += len;\n flush_pending(s.strm);\n }\n\n /* We've done all we can with the available input and output. */\n return last ? BS_FINISH_STARTED : BS_NEED_MORE;\n};\n\n\n/* ===========================================================================\n * Compress as much as possible from the input stream, return the current\n * block state.\n * This function does not perform lazy evaluation of matches and inserts\n * new strings in the dictionary only for unmatched strings or for short\n * matches. It is used only for the fast compression options.\n */\nconst deflate_fast = (s, flush) => {\n\n let hash_head; /* head of the hash chain */\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) {\n break; /* flush the current block */\n }\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n * At this point we have always match_length < MIN_MATCH\n */\n if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n }\n if (s.match_length >= MIN_MATCH) {\n // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only\n\n /*** _tr_tally_dist(s, s.strstart - s.match_start,\n s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n\n /* Insert new strings in the hash table only if the match length\n * is not too large. This saves time but degrades compression.\n */\n if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) {\n s.match_length--; /* string at strstart already in table */\n do {\n s.strstart++;\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead.\n */\n } while (--s.match_length !== 0);\n s.strstart++;\n } else\n {\n s.strstart += s.match_length;\n s.match_length = 0;\n s.ins_h = s.window[s.strstart];\n /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + 1]);\n\n//#if MIN_MATCH != 3\n// Call UPDATE_HASH() MIN_MATCH-3 more times\n//#endif\n /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not\n * matter since it will be recomputed at next deflate call.\n */\n }\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s.window[s.strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = ((s.strstart < (MIN_MATCH - 1)) ? s.strstart : MIN_MATCH - 1);\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * Same as above, but achieves better compression. We use a lazy\n * evaluation for matches: a match is finally adopted only if there is\n * no better match at the next window position.\n */\nconst deflate_slow = (s, flush) => {\n\n let hash_head; /* head of hash chain */\n let bflush; /* set if current block must be flushed */\n\n let max_insert;\n\n /* Process the input block. */\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n */\n s.prev_length = s.match_length;\n s.prev_match = s.match_start;\n s.match_length = MIN_MATCH - 1;\n\n if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match &&\n s.strstart - hash_head <= (s.w_size - MIN_LOOKAHEAD)/*MAX_DIST(s)*/) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n\n if (s.match_length <= 5 &&\n (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) {\n\n /* If prev_match is also MIN_MATCH, match_start is garbage\n * but we will ignore the current match anyway.\n */\n s.match_length = MIN_MATCH - 1;\n }\n }\n /* If there was a match at the previous step and the current\n * match is not better, output the previous match:\n */\n if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) {\n max_insert = s.strstart + s.lookahead - MIN_MATCH;\n /* Do not insert strings in hash table beyond this. */\n\n //check_match(s, s.strstart-1, s.prev_match, s.prev_length);\n\n /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match,\n s.prev_length - MIN_MATCH, bflush);***/\n bflush = _tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH);\n /* Insert in hash table all strings up to the end of the match.\n * strstart-1 and strstart are already inserted. If there is not\n * enough lookahead, the last two strings are not inserted in\n * the hash table.\n */\n s.lookahead -= s.prev_length - 1;\n s.prev_length -= 2;\n do {\n if (++s.strstart <= max_insert) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n } while (--s.prev_length !== 0);\n s.match_available = 0;\n s.match_length = MIN_MATCH - 1;\n s.strstart++;\n\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n } else if (s.match_available) {\n /* If there was no match at the previous position, output a\n * single literal. If there was a match but the current match\n * is longer, truncate the previous match to a single literal.\n */\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n if (bflush) {\n /*** FLUSH_BLOCK_ONLY(s, 0) ***/\n flush_block_only(s, false);\n /***/\n }\n s.strstart++;\n s.lookahead--;\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n } else {\n /* There is no previous match to compare with, wait for\n * the next step to decide.\n */\n s.match_available = 1;\n s.strstart++;\n s.lookahead--;\n }\n }\n //Assert (flush != Z_NO_FLUSH, \"no flush?\");\n if (s.match_available) {\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n s.match_available = 0;\n }\n s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n return BS_BLOCK_DONE;\n};\n\n\n/* ===========================================================================\n * For Z_RLE, simply look for runs of bytes, generate matches only of distance\n * one. Do not maintain a hash table. (It will be regenerated if this run of\n * deflate switches away from Z_RLE.)\n */\nconst deflate_rle = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n let prev; /* byte at distance one to match */\n let scan, strend; /* scan goes up to strend for length of run */\n\n const _win = s.window;\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the longest run, plus one for the unrolled loop.\n */\n if (s.lookahead <= MAX_MATCH) {\n fill_window(s);\n if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* See how many times the previous byte repeats */\n s.match_length = 0;\n if (s.lookahead >= MIN_MATCH && s.strstart > 0) {\n scan = s.strstart - 1;\n prev = _win[scan];\n if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) {\n strend = s.strstart + MAX_MATCH;\n do {\n /*jshint noempty:false*/\n } while (prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n scan < strend);\n s.match_length = MAX_MATCH - (strend - scan);\n if (s.match_length > s.lookahead) {\n s.match_length = s.lookahead;\n }\n }\n //Assert(scan <= s->window+(uInt)(s->window_size-1), \"wild scan\");\n }\n\n /* Emit match if have run of MIN_MATCH or longer, else emit literal */\n if (s.match_length >= MIN_MATCH) {\n //check_match(s, s.strstart, s.strstart - 1, s.match_length);\n\n /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, 1, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n s.strstart += s.match_length;\n s.match_length = 0;\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * For Z_HUFFMAN_ONLY, do not look for matches. Do not maintain a hash table.\n * (It will be regenerated if this run of deflate switches away from Huffman.)\n */\nconst deflate_huff = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we have a literal to write. */\n if (s.lookahead === 0) {\n fill_window(s);\n if (s.lookahead === 0) {\n if (flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n break; /* flush the current block */\n }\n }\n\n /* Output a literal byte */\n s.match_length = 0;\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n s.lookahead--;\n s.strstart++;\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* Values for max_lazy_match, good_match and max_chain_length, depending on\n * the desired pack level (0..9). The values given below have been tuned to\n * exclude worst case performance for pathological files. Better values may be\n * found for specific files.\n */\nfunction Config(good_length, max_lazy, nice_length, max_chain, func) {\n\n this.good_length = good_length;\n this.max_lazy = max_lazy;\n this.nice_length = nice_length;\n this.max_chain = max_chain;\n this.func = func;\n}\n\nconst configuration_table = [\n /* good lazy nice chain */\n new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */\n new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */\n new Config(4, 5, 16, 8, deflate_fast), /* 2 */\n new Config(4, 6, 32, 32, deflate_fast), /* 3 */\n\n new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */\n new Config(8, 16, 32, 32, deflate_slow), /* 5 */\n new Config(8, 16, 128, 128, deflate_slow), /* 6 */\n new Config(8, 32, 128, 256, deflate_slow), /* 7 */\n new Config(32, 128, 258, 1024, deflate_slow), /* 8 */\n new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */\n];\n\n\n/* ===========================================================================\n * Initialize the \"longest match\" routines for a new zlib stream\n */\nconst lm_init = (s) => {\n\n s.window_size = 2 * s.w_size;\n\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n\n /* Set the default configuration parameters:\n */\n s.max_lazy_match = configuration_table[s.level].max_lazy;\n s.good_match = configuration_table[s.level].good_length;\n s.nice_match = configuration_table[s.level].nice_length;\n s.max_chain_length = configuration_table[s.level].max_chain;\n\n s.strstart = 0;\n s.block_start = 0;\n s.lookahead = 0;\n s.insert = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n s.ins_h = 0;\n};\n\n\nfunction DeflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.status = 0; /* as the name implies */\n this.pending_buf = null; /* output still pending */\n this.pending_buf_size = 0; /* size of pending_buf */\n this.pending_out = 0; /* next pending byte to output to the stream */\n this.pending = 0; /* nb of bytes in the pending buffer */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */\n this.gzhead = null; /* gzip header information to write */\n this.gzindex = 0; /* where in extra, name, or comment */\n this.method = Z_DEFLATED$2; /* can only be DEFLATED */\n this.last_flush = -1; /* value of flush param for previous deflate call */\n\n this.w_size = 0; /* LZ77 window size (32K by default) */\n this.w_bits = 0; /* log2(w_size) (8..16) */\n this.w_mask = 0; /* w_size - 1 */\n\n this.window = null;\n /* Sliding window. Input bytes are read into the second half of the window,\n * and move to the first half later to keep a dictionary of at least wSize\n * bytes. With this organization, matches are limited to a distance of\n * wSize-MAX_MATCH bytes, but this ensures that IO is always\n * performed with a length multiple of the block size.\n */\n\n this.window_size = 0;\n /* Actual size of window: 2*wSize, except when the user input buffer\n * is directly used as sliding window.\n */\n\n this.prev = null;\n /* Link to older string with same hash index. To limit the size of this\n * array to 64K, this link is maintained only for the last 32K strings.\n * An index in this array is thus a window index modulo 32K.\n */\n\n this.head = null; /* Heads of the hash chains or NIL. */\n\n this.ins_h = 0; /* hash index of string to be inserted */\n this.hash_size = 0; /* number of elements in hash table */\n this.hash_bits = 0; /* log2(hash_size) */\n this.hash_mask = 0; /* hash_size-1 */\n\n this.hash_shift = 0;\n /* Number of bits by which ins_h must be shifted at each input\n * step. It must be such that after MIN_MATCH steps, the oldest\n * byte no longer takes part in the hash key, that is:\n * hash_shift * MIN_MATCH >= hash_bits\n */\n\n this.block_start = 0;\n /* Window position at the beginning of the current output block. Gets\n * negative when the window is moved backwards.\n */\n\n this.match_length = 0; /* length of best match */\n this.prev_match = 0; /* previous match */\n this.match_available = 0; /* set if previous match exists */\n this.strstart = 0; /* start of string to insert */\n this.match_start = 0; /* start of matching string */\n this.lookahead = 0; /* number of valid bytes ahead in window */\n\n this.prev_length = 0;\n /* Length of the best match at previous step. Matches not greater than this\n * are discarded. This is used in the lazy match evaluation.\n */\n\n this.max_chain_length = 0;\n /* To speed up deflation, hash chains are never searched beyond this\n * length. A higher limit improves compression ratio but degrades the\n * speed.\n */\n\n this.max_lazy_match = 0;\n /* Attempt to find a better match only when the current match is strictly\n * smaller than this value. This mechanism is used only for compression\n * levels >= 4.\n */\n // That's alias to max_lazy_match, don't use directly\n //this.max_insert_length = 0;\n /* Insert new strings in the hash table only if the match length is not\n * greater than this length. This saves time but degrades compression.\n * max_insert_length is used only for compression levels <= 3.\n */\n\n this.level = 0; /* compression level (1..9) */\n this.strategy = 0; /* favor or force Huffman coding*/\n\n this.good_match = 0;\n /* Use a faster search when the previous match is longer than this */\n\n this.nice_match = 0; /* Stop searching when current match exceeds this */\n\n /* used by trees.c: */\n\n /* Didn't use ct_data typedef below to suppress compiler warning */\n\n // struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */\n // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */\n // struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */\n\n // Use flat array of DOUBLE size, with interleaved fata,\n // because JS does not support effective\n this.dyn_ltree = new Uint16Array(HEAP_SIZE * 2);\n this.dyn_dtree = new Uint16Array((2 * D_CODES + 1) * 2);\n this.bl_tree = new Uint16Array((2 * BL_CODES + 1) * 2);\n zero(this.dyn_ltree);\n zero(this.dyn_dtree);\n zero(this.bl_tree);\n\n this.l_desc = null; /* desc. for literal tree */\n this.d_desc = null; /* desc. for distance tree */\n this.bl_desc = null; /* desc. for bit length tree */\n\n //ush bl_count[MAX_BITS+1];\n this.bl_count = new Uint16Array(MAX_BITS + 1);\n /* number of codes at each bit length for an optimal tree */\n\n //int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */\n this.heap = new Uint16Array(2 * L_CODES + 1); /* heap used to build the Huffman trees */\n zero(this.heap);\n\n this.heap_len = 0; /* number of elements in the heap */\n this.heap_max = 0; /* element of largest frequency */\n /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.\n * The same heap array is used to build all trees.\n */\n\n this.depth = new Uint16Array(2 * L_CODES + 1); //uch depth[2*L_CODES+1];\n zero(this.depth);\n /* Depth of each subtree used as tie breaker for trees of equal frequency\n */\n\n this.sym_buf = 0; /* buffer for distances and literals/lengths */\n\n this.lit_bufsize = 0;\n /* Size of match buffer for literals/lengths. There are 4 reasons for\n * limiting lit_bufsize to 64K:\n * - frequencies can be kept in 16 bit counters\n * - if compression is not successful for the first block, all input\n * data is still in the window so we can still emit a stored block even\n * when input comes from standard input. (This can also be done for\n * all blocks if lit_bufsize is not greater than 32K.)\n * - if compression is not successful for a file smaller than 64K, we can\n * even emit a stored file instead of a stored block (saving 5 bytes).\n * This is applicable only for zip (not gzip or zlib).\n * - creating new Huffman trees less frequently may not provide fast\n * adaptation to changes in the input data statistics. (Take for\n * example a binary file with poorly compressible code followed by\n * a highly compressible string table.) Smaller buffer sizes give\n * fast adaptation but have of course the overhead of transmitting\n * trees more frequently.\n * - I can't count above 4\n */\n\n this.sym_next = 0; /* running index in sym_buf */\n this.sym_end = 0; /* symbol table full when sym_next reaches this */\n\n this.opt_len = 0; /* bit length of current block with optimal trees */\n this.static_len = 0; /* bit length of current block with static trees */\n this.matches = 0; /* number of string matches in current block */\n this.insert = 0; /* bytes at end of window left to insert */\n\n\n this.bi_buf = 0;\n /* Output buffer. bits are inserted starting at the bottom (least\n * significant bits).\n */\n this.bi_valid = 0;\n /* Number of valid bits in bi_buf. All bits above the last valid bit\n * are always zero.\n */\n\n // Used for window memory init. We safely ignore it for JS. That makes\n // sense only for pointers and memory check tools.\n //this.high_water = 0;\n /* High water mark offset in window for initialized bytes -- bytes above\n * this are set to zero in order to avoid memory check warnings when\n * longest match routines access bytes past the input. This is then\n * updated to the new high water mark.\n */\n}\n\n\n/* =========================================================================\n * Check for a valid deflate stream state. Return 0 if ok, 1 if not.\n */\nconst deflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const s = strm.state;\n if (!s || s.strm !== strm || (s.status !== INIT_STATE &&\n//#ifdef GZIP\n s.status !== GZIP_STATE &&\n//#endif\n s.status !== EXTRA_STATE &&\n s.status !== NAME_STATE &&\n s.status !== COMMENT_STATE &&\n s.status !== HCRC_STATE &&\n s.status !== BUSY_STATE &&\n s.status !== FINISH_STATE)) {\n return 1;\n }\n return 0;\n};\n\n\nconst deflateResetKeep = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return err(strm, Z_STREAM_ERROR$2);\n }\n\n strm.total_in = strm.total_out = 0;\n strm.data_type = Z_UNKNOWN;\n\n const s = strm.state;\n s.pending = 0;\n s.pending_out = 0;\n\n if (s.wrap < 0) {\n s.wrap = -s.wrap;\n /* was made negative by deflate(..., Z_FINISH); */\n }\n s.status =\n//#ifdef GZIP\n s.wrap === 2 ? GZIP_STATE :\n//#endif\n s.wrap ? INIT_STATE : BUSY_STATE;\n strm.adler = (s.wrap === 2) ?\n 0 // crc32(0, Z_NULL, 0)\n :\n 1; // adler32(0, Z_NULL, 0)\n s.last_flush = -2;\n _tr_init(s);\n return Z_OK$3;\n};\n\n\nconst deflateReset = (strm) => {\n\n const ret = deflateResetKeep(strm);\n if (ret === Z_OK$3) {\n lm_init(strm.state);\n }\n return ret;\n};\n\n\nconst deflateSetHeader = (strm, head) => {\n\n if (deflateStateCheck(strm) || strm.state.wrap !== 2) {\n return Z_STREAM_ERROR$2;\n }\n strm.state.gzhead = head;\n return Z_OK$3;\n};\n\n\nconst deflateInit2 = (strm, level, method, windowBits, memLevel, strategy) => {\n\n if (!strm) { // === Z_NULL\n return Z_STREAM_ERROR$2;\n }\n let wrap = 1;\n\n if (level === Z_DEFAULT_COMPRESSION$1) {\n level = 6;\n }\n\n if (windowBits < 0) { /* suppress zlib wrapper */\n wrap = 0;\n windowBits = -windowBits;\n }\n\n else if (windowBits > 15) {\n wrap = 2; /* write gzip wrapper instead */\n windowBits -= 16;\n }\n\n\n if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED$2 ||\n windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||\n strategy < 0 || strategy > Z_FIXED || (windowBits === 8 && wrap !== 1)) {\n return err(strm, Z_STREAM_ERROR$2);\n }\n\n\n if (windowBits === 8) {\n windowBits = 9;\n }\n /* until 256-byte window bug fixed */\n\n const s = new DeflateState();\n\n strm.state = s;\n s.strm = strm;\n s.status = INIT_STATE; /* to pass state test in deflateReset() */\n\n s.wrap = wrap;\n s.gzhead = null;\n s.w_bits = windowBits;\n s.w_size = 1 << s.w_bits;\n s.w_mask = s.w_size - 1;\n\n s.hash_bits = memLevel + 7;\n s.hash_size = 1 << s.hash_bits;\n s.hash_mask = s.hash_size - 1;\n s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);\n\n s.window = new Uint8Array(s.w_size * 2);\n s.head = new Uint16Array(s.hash_size);\n s.prev = new Uint16Array(s.w_size);\n\n // Don't need mem init magic for JS.\n //s.high_water = 0; /* nothing written to s->window yet */\n\n s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */\n\n /* We overlay pending_buf and sym_buf. This works since the average size\n * for length/distance pairs over any compressed block is assured to be 31\n * bits or less.\n *\n * Analysis: The longest fixed codes are a length code of 8 bits plus 5\n * extra bits, for lengths 131 to 257. The longest fixed distance codes are\n * 5 bits plus 13 extra bits, for distances 16385 to 32768. The longest\n * possible fixed-codes length/distance pair is then 31 bits total.\n *\n * sym_buf starts one-fourth of the way into pending_buf. So there are\n * three bytes in sym_buf for every four bytes in pending_buf. Each symbol\n * in sym_buf is three bytes -- two for the distance and one for the\n * literal/length. As each symbol is consumed, the pointer to the next\n * sym_buf value to read moves forward three bytes. From that symbol, up to\n * 31 bits are written to pending_buf. The closest the written pending_buf\n * bits gets to the next sym_buf symbol to read is just before the last\n * code is written. At that time, 31*(n-2) bits have been written, just\n * after 24*(n-2) bits have been consumed from sym_buf. sym_buf starts at\n * 8*n bits into pending_buf. (Note that the symbol buffer fills when n-1\n * symbols are written.) The closest the writing gets to what is unread is\n * then n+14 bits. Here n is lit_bufsize, which is 16384 by default, and\n * can range from 128 to 32768.\n *\n * Therefore, at a minimum, there are 142 bits of space between what is\n * written and what is read in the overlain buffers, so the symbols cannot\n * be overwritten by the compressed data. That space is actually 139 bits,\n * due to the three-bit fixed-code block header.\n *\n * That covers the case where either Z_FIXED is specified, forcing fixed\n * codes, or when the use of fixed codes is chosen, because that choice\n * results in a smaller compressed block than dynamic codes. That latter\n * condition then assures that the above analysis also covers all dynamic\n * blocks. A dynamic-code block will only be chosen to be emitted if it has\n * fewer bits than a fixed-code block would for the same set of symbols.\n * Therefore its average symbol length is assured to be less than 31. So\n * the compressed data for a dynamic block also cannot overwrite the\n * symbols from which it is being constructed.\n */\n\n s.pending_buf_size = s.lit_bufsize * 4;\n s.pending_buf = new Uint8Array(s.pending_buf_size);\n\n // It is offset from `s.pending_buf` (size is `s.lit_bufsize * 2`)\n //s->sym_buf = s->pending_buf + s->lit_bufsize;\n s.sym_buf = s.lit_bufsize;\n\n //s->sym_end = (s->lit_bufsize - 1) * 3;\n s.sym_end = (s.lit_bufsize - 1) * 3;\n /* We avoid equality with lit_bufsize*3 because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n\n s.level = level;\n s.strategy = strategy;\n s.method = method;\n\n return deflateReset(strm);\n};\n\nconst deflateInit = (strm, level) => {\n\n return deflateInit2(strm, level, Z_DEFLATED$2, MAX_WBITS$1, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY$1);\n};\n\n\n/* ========================================================================= */\nconst deflate$2 = (strm, flush) => {\n\n if (deflateStateCheck(strm) || flush > Z_BLOCK$1 || flush < 0) {\n return strm ? err(strm, Z_STREAM_ERROR$2) : Z_STREAM_ERROR$2;\n }\n\n const s = strm.state;\n\n if (!strm.output ||\n (strm.avail_in !== 0 && !strm.input) ||\n (s.status === FINISH_STATE && flush !== Z_FINISH$3)) {\n return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR$1 : Z_STREAM_ERROR$2);\n }\n\n const old_flush = s.last_flush;\n s.last_flush = flush;\n\n /* Flush as much pending output as possible */\n if (s.pending !== 0) {\n flush_pending(strm);\n if (strm.avail_out === 0) {\n /* Since avail_out is 0, deflate will be called again with\n * more output space, but possibly with both pending and\n * avail_in equal to zero. There won't be anything to do,\n * but this is not an error situation so make sure we\n * return OK instead of BUF_ERROR at next call of deflate:\n */\n s.last_flush = -1;\n return Z_OK$3;\n }\n\n /* Make sure there is something to do and avoid duplicate consecutive\n * flushes. For repeated and useless calls with Z_FINISH, we keep\n * returning Z_STREAM_END instead of Z_BUF_ERROR.\n */\n } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) &&\n flush !== Z_FINISH$3) {\n return err(strm, Z_BUF_ERROR$1);\n }\n\n /* User must not provide more input after the first FINISH: */\n if (s.status === FINISH_STATE && strm.avail_in !== 0) {\n return err(strm, Z_BUF_ERROR$1);\n }\n\n /* Write the header */\n if (s.status === INIT_STATE && s.wrap === 0) {\n s.status = BUSY_STATE;\n }\n if (s.status === INIT_STATE) {\n /* zlib header */\n let header = (Z_DEFLATED$2 + ((s.w_bits - 8) << 4)) << 8;\n let level_flags = -1;\n\n if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) {\n level_flags = 0;\n } else if (s.level < 6) {\n level_flags = 1;\n } else if (s.level === 6) {\n level_flags = 2;\n } else {\n level_flags = 3;\n }\n header |= (level_flags << 6);\n if (s.strstart !== 0) { header |= PRESET_DICT; }\n header += 31 - (header % 31);\n\n putShortMSB(s, header);\n\n /* Save the adler32 of the preset dictionary: */\n if (s.strstart !== 0) {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n strm.adler = 1; // adler32(0L, Z_NULL, 0);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n//#ifdef GZIP\n if (s.status === GZIP_STATE) {\n /* gzip header */\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n put_byte(s, 31);\n put_byte(s, 139);\n put_byte(s, 8);\n if (!s.gzhead) { // s->gzhead == Z_NULL\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, OS_CODE);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n else {\n put_byte(s, (s.gzhead.text ? 1 : 0) +\n (s.gzhead.hcrc ? 2 : 0) +\n (!s.gzhead.extra ? 0 : 4) +\n (!s.gzhead.name ? 0 : 8) +\n (!s.gzhead.comment ? 0 : 16)\n );\n put_byte(s, s.gzhead.time & 0xff);\n put_byte(s, (s.gzhead.time >> 8) & 0xff);\n put_byte(s, (s.gzhead.time >> 16) & 0xff);\n put_byte(s, (s.gzhead.time >> 24) & 0xff);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, s.gzhead.os & 0xff);\n if (s.gzhead.extra && s.gzhead.extra.length) {\n put_byte(s, s.gzhead.extra.length & 0xff);\n put_byte(s, (s.gzhead.extra.length >> 8) & 0xff);\n }\n if (s.gzhead.hcrc) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending, 0);\n }\n s.gzindex = 0;\n s.status = EXTRA_STATE;\n }\n }\n if (s.status === EXTRA_STATE) {\n if (s.gzhead.extra/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let left = (s.gzhead.extra.length & 0xffff) - s.gzindex;\n while (s.pending + left > s.pending_buf_size) {\n let copy = s.pending_buf_size - s.pending;\n // zmemcpy(s.pending_buf + s.pending,\n // s.gzhead.extra + s.gzindex, copy);\n s.pending_buf.set(s.gzhead.extra.subarray(s.gzindex, s.gzindex + copy), s.pending);\n s.pending = s.pending_buf_size;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex += copy;\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n left -= copy;\n }\n // JS specific: s.gzhead.extra may be TypedArray or Array for backward compatibility\n // TypedArray.slice and TypedArray.from don't exist in IE10-IE11\n let gzhead_extra = new Uint8Array(s.gzhead.extra);\n // zmemcpy(s->pending_buf + s->pending,\n // s->gzhead->extra + s->gzindex, left);\n s.pending_buf.set(gzhead_extra.subarray(s.gzindex, s.gzindex + left), s.pending);\n s.pending += left;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = NAME_STATE;\n }\n if (s.status === NAME_STATE) {\n if (s.gzhead.name/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.name.length) {\n val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = COMMENT_STATE;\n }\n if (s.status === COMMENT_STATE) {\n if (s.gzhead.comment/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.comment.length) {\n val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n }\n s.status = HCRC_STATE;\n }\n if (s.status === HCRC_STATE) {\n if (s.gzhead.hcrc) {\n if (s.pending + 2 > s.pending_buf_size) {\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n }\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n//#endif\n\n /* Start a new block or continue the current one.\n */\n if (strm.avail_in !== 0 || s.lookahead !== 0 ||\n (flush !== Z_NO_FLUSH$2 && s.status !== FINISH_STATE)) {\n let bstate = s.level === 0 ? deflate_stored(s, flush) :\n s.strategy === Z_HUFFMAN_ONLY ? deflate_huff(s, flush) :\n s.strategy === Z_RLE ? deflate_rle(s, flush) :\n configuration_table[s.level].func(s, flush);\n\n if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) {\n s.status = FINISH_STATE;\n }\n if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) {\n if (strm.avail_out === 0) {\n s.last_flush = -1;\n /* avoid BUF_ERROR next call, see above */\n }\n return Z_OK$3;\n /* If flush != Z_NO_FLUSH && avail_out == 0, the next call\n * of deflate should use the same flush parameter to make sure\n * that the flush is complete. So we don't have to output an\n * empty block here, this will be done at next call. This also\n * ensures that for a very small output buffer, we emit at most\n * one empty block.\n */\n }\n if (bstate === BS_BLOCK_DONE) {\n if (flush === Z_PARTIAL_FLUSH) {\n _tr_align(s);\n }\n else if (flush !== Z_BLOCK$1) { /* FULL_FLUSH or SYNC_FLUSH */\n\n _tr_stored_block(s, 0, 0, false);\n /* For a full flush, this empty block will be recognized\n * as a special marker by inflate_sync().\n */\n if (flush === Z_FULL_FLUSH$1) {\n /*** CLEAR_HASH(s); ***/ /* forget history */\n zero(s.head); // Fill with NIL (= 0);\n\n if (s.lookahead === 0) {\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n }\n }\n flush_pending(strm);\n if (strm.avail_out === 0) {\n s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */\n return Z_OK$3;\n }\n }\n }\n\n if (flush !== Z_FINISH$3) { return Z_OK$3; }\n if (s.wrap <= 0) { return Z_STREAM_END$3; }\n\n /* Write the trailer */\n if (s.wrap === 2) {\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n put_byte(s, (strm.adler >> 16) & 0xff);\n put_byte(s, (strm.adler >> 24) & 0xff);\n put_byte(s, strm.total_in & 0xff);\n put_byte(s, (strm.total_in >> 8) & 0xff);\n put_byte(s, (strm.total_in >> 16) & 0xff);\n put_byte(s, (strm.total_in >> 24) & 0xff);\n }\n else\n {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n\n flush_pending(strm);\n /* If avail_out is zero, the application will call deflate again\n * to flush the rest.\n */\n if (s.wrap > 0) { s.wrap = -s.wrap; }\n /* write the trailer only once! */\n return s.pending !== 0 ? Z_OK$3 : Z_STREAM_END$3;\n};\n\n\nconst deflateEnd = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR$2;\n }\n\n const status = strm.state.status;\n\n strm.state = null;\n\n return status === BUSY_STATE ? err(strm, Z_DATA_ERROR$2) : Z_OK$3;\n};\n\n\n/* =========================================================================\n * Initializes the compression dictionary from the given byte\n * sequence without producing any compressed output.\n */\nconst deflateSetDictionary = (strm, dictionary) => {\n\n let dictLength = dictionary.length;\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR$2;\n }\n\n const s = strm.state;\n const wrap = s.wrap;\n\n if (wrap === 2 || (wrap === 1 && s.status !== INIT_STATE) || s.lookahead) {\n return Z_STREAM_ERROR$2;\n }\n\n /* when using zlib wrappers, compute Adler-32 for provided dictionary */\n if (wrap === 1) {\n /* adler32(strm->adler, dictionary, dictLength); */\n strm.adler = adler32_1(strm.adler, dictionary, dictLength, 0);\n }\n\n s.wrap = 0; /* avoid computing Adler-32 in read_buf */\n\n /* if dictionary would fill window, just replace the history */\n if (dictLength >= s.w_size) {\n if (wrap === 0) { /* already empty otherwise */\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n /* use the tail */\n // dictionary = dictionary.slice(dictLength - s.w_size);\n let tmpDict = new Uint8Array(s.w_size);\n tmpDict.set(dictionary.subarray(dictLength - s.w_size, dictLength), 0);\n dictionary = tmpDict;\n dictLength = s.w_size;\n }\n /* insert dictionary into window and hash */\n const avail = strm.avail_in;\n const next = strm.next_in;\n const input = strm.input;\n strm.avail_in = dictLength;\n strm.next_in = 0;\n strm.input = dictionary;\n fill_window(s);\n while (s.lookahead >= MIN_MATCH) {\n let str = s.strstart;\n let n = s.lookahead - (MIN_MATCH - 1);\n do {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n\n s.head[s.ins_h] = str;\n str++;\n } while (--n);\n s.strstart = str;\n s.lookahead = MIN_MATCH - 1;\n fill_window(s);\n }\n s.strstart += s.lookahead;\n s.block_start = s.strstart;\n s.insert = s.lookahead;\n s.lookahead = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n strm.next_in = next;\n strm.input = input;\n strm.avail_in = avail;\n s.wrap = wrap;\n return Z_OK$3;\n};\n\n\nvar deflateInit_1 = deflateInit;\nvar deflateInit2_1 = deflateInit2;\nvar deflateReset_1 = deflateReset;\nvar deflateResetKeep_1 = deflateResetKeep;\nvar deflateSetHeader_1 = deflateSetHeader;\nvar deflate_2$1 = deflate$2;\nvar deflateEnd_1 = deflateEnd;\nvar deflateSetDictionary_1 = deflateSetDictionary;\nvar deflateInfo = 'pako deflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.deflateBound = deflateBound;\nmodule.exports.deflateCopy = deflateCopy;\nmodule.exports.deflateGetDictionary = deflateGetDictionary;\nmodule.exports.deflateParams = deflateParams;\nmodule.exports.deflatePending = deflatePending;\nmodule.exports.deflatePrime = deflatePrime;\nmodule.exports.deflateTune = deflateTune;\n*/\n\nvar deflate_1$2 = {\n\tdeflateInit: deflateInit_1,\n\tdeflateInit2: deflateInit2_1,\n\tdeflateReset: deflateReset_1,\n\tdeflateResetKeep: deflateResetKeep_1,\n\tdeflateSetHeader: deflateSetHeader_1,\n\tdeflate: deflate_2$1,\n\tdeflateEnd: deflateEnd_1,\n\tdeflateSetDictionary: deflateSetDictionary_1,\n\tdeflateInfo: deflateInfo\n};\n\nconst _has = (obj, key) => {\n return Object.prototype.hasOwnProperty.call(obj, key);\n};\n\nvar assign = function (obj /*from1, from2, from3, ...*/) {\n const sources = Array.prototype.slice.call(arguments, 1);\n while (sources.length) {\n const source = sources.shift();\n if (!source) { continue; }\n\n if (typeof source !== 'object') {\n throw new TypeError(source + 'must be non-object');\n }\n\n for (const p in source) {\n if (_has(source, p)) {\n obj[p] = source[p];\n }\n }\n }\n\n return obj;\n};\n\n\n// Join array of chunks to single array.\nvar flattenChunks = (chunks) => {\n // calculate data length\n let len = 0;\n\n for (let i = 0, l = chunks.length; i < l; i++) {\n len += chunks[i].length;\n }\n\n // join chunks\n const result = new Uint8Array(len);\n\n for (let i = 0, pos = 0, l = chunks.length; i < l; i++) {\n let chunk = chunks[i];\n result.set(chunk, pos);\n pos += chunk.length;\n }\n\n return result;\n};\n\nvar common = {\n\tassign: assign,\n\tflattenChunks: flattenChunks\n};\n\n// String encode/decode helpers\n\n\n// Quick check if we can use fast array to bin string conversion\n//\n// - apply(Array) can fail on Android 2.2\n// - apply(Uint8Array) can fail on iOS 5.1 Safari\n//\nlet STR_APPLY_UIA_OK = true;\n\ntry { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }\n\n\n// Table with utf8 lengths (calculated by first byte of sequence)\n// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,\n// because max possible codepoint is 0x10ffff\nconst _utf8len = new Uint8Array(256);\nfor (let q = 0; q < 256; q++) {\n _utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);\n}\n_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start\n\n\n// convert string to array (typed, when possible)\nvar string2buf = (str) => {\n if (typeof TextEncoder === 'function' && TextEncoder.prototype.encode) {\n return new TextEncoder().encode(str);\n }\n\n let buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;\n\n // count binary size\n for (m_pos = 0; m_pos < str_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;\n }\n\n // allocate buffer\n buf = new Uint8Array(buf_len);\n\n // convert\n for (i = 0, m_pos = 0; i < buf_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n if (c < 0x80) {\n /* one byte */\n buf[i++] = c;\n } else if (c < 0x800) {\n /* two bytes */\n buf[i++] = 0xC0 | (c >>> 6);\n buf[i++] = 0x80 | (c & 0x3f);\n } else if (c < 0x10000) {\n /* three bytes */\n buf[i++] = 0xE0 | (c >>> 12);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n } else {\n /* four bytes */\n buf[i++] = 0xf0 | (c >>> 18);\n buf[i++] = 0x80 | (c >>> 12 & 0x3f);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n }\n }\n\n return buf;\n};\n\n// Helper\nconst buf2binstring = (buf, len) => {\n // On Chrome, the arguments in a function call that are allowed is `65534`.\n // If the length of the buffer is smaller than that, we can use this optimization,\n // otherwise we will take a slower path.\n if (len < 65534) {\n if (buf.subarray && STR_APPLY_UIA_OK) {\n return String.fromCharCode.apply(null, buf.length === len ? buf : buf.subarray(0, len));\n }\n }\n\n let result = '';\n for (let i = 0; i < len; i++) {\n result += String.fromCharCode(buf[i]);\n }\n return result;\n};\n\n\n// convert array to string\nvar buf2string = (buf, max) => {\n const len = max || buf.length;\n\n if (typeof TextDecoder === 'function' && TextDecoder.prototype.decode) {\n return new TextDecoder().decode(buf.subarray(0, max));\n }\n\n let i, out;\n\n // Reserve max possible length (2 words per char)\n // NB: by unknown reasons, Array is significantly faster for\n // String.fromCharCode.apply than Uint16Array.\n const utf16buf = new Array(len * 2);\n\n for (out = 0, i = 0; i < len;) {\n let c = buf[i++];\n // quick process ascii\n if (c < 0x80) { utf16buf[out++] = c; continue; }\n\n let c_len = _utf8len[c];\n // skip 5 & 6 byte codes\n if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }\n\n // apply mask on first byte\n c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;\n // join the rest\n while (c_len > 1 && i < len) {\n c = (c << 6) | (buf[i++] & 0x3f);\n c_len--;\n }\n\n // terminated by end of string?\n if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }\n\n if (c < 0x10000) {\n utf16buf[out++] = c;\n } else {\n c -= 0x10000;\n utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);\n utf16buf[out++] = 0xdc00 | (c & 0x3ff);\n }\n }\n\n return buf2binstring(utf16buf, out);\n};\n\n\n// Calculate max possible position in utf8 buffer,\n// that will not break sequence. If that's not possible\n// - (very small limits) return max size as is.\n//\n// buf[] - utf8 bytes array\n// max - length limit (mandatory);\nvar utf8border = (buf, max) => {\n\n max = max || buf.length;\n if (max > buf.length) { max = buf.length; }\n\n // go back from last position, until start of sequence found\n let pos = max - 1;\n while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }\n\n // Very small and broken sequence,\n // return max, because we should return something anyway.\n if (pos < 0) { return max; }\n\n // If we came to start of buffer - that means buffer is too small,\n // return max too.\n if (pos === 0) { return max; }\n\n return (pos + _utf8len[buf[pos]] > max) ? pos : max;\n};\n\nvar strings = {\n\tstring2buf: string2buf,\n\tbuf2string: buf2string,\n\tutf8border: utf8border\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction ZStream() {\n /* next input byte */\n this.input = null; // JS specific, because we have no pointers\n this.next_in = 0;\n /* number of bytes available at input */\n this.avail_in = 0;\n /* total number of input bytes read so far */\n this.total_in = 0;\n /* next output byte should be put there */\n this.output = null; // JS specific, because we have no pointers\n this.next_out = 0;\n /* remaining free space at output */\n this.avail_out = 0;\n /* total number of bytes output so far */\n this.total_out = 0;\n /* last error message, NULL if no error */\n this.msg = ''/*Z_NULL*/;\n /* not visible by applications */\n this.state = null;\n /* best guess about the data type: binary or text */\n this.data_type = 2/*Z_UNKNOWN*/;\n /* adler32 value of the uncompressed data */\n this.adler = 0;\n}\n\nvar zstream = ZStream;\n\nconst toString$1 = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH: Z_NO_FLUSH$1, Z_SYNC_FLUSH, Z_FULL_FLUSH, Z_FINISH: Z_FINISH$2,\n Z_OK: Z_OK$2, Z_STREAM_END: Z_STREAM_END$2,\n Z_DEFAULT_COMPRESSION,\n Z_DEFAULT_STRATEGY,\n Z_DEFLATED: Z_DEFLATED$1\n} = constants$2;\n\n/* ===========================================================================*/\n\n\n/**\n * class Deflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[deflate]],\n * [[deflateRaw]] and [[gzip]].\n **/\n\n/* internal\n * Deflate.chunks -> Array\n *\n * Chunks of output data, if [[Deflate#onData]] not overridden.\n **/\n\n/**\n * Deflate.result -> Uint8Array\n *\n * Compressed result, generated by default [[Deflate#onData]]\n * and [[Deflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Deflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Deflate.err -> Number\n *\n * Error code after deflate finished. 0 (Z_OK) on success.\n * You will not need it in real life, because deflate errors\n * are possible only on wrong options or bad `onData` / `onEnd`\n * custom handlers.\n **/\n\n/**\n * Deflate.msg -> String\n *\n * Error message, if [[Deflate.err]] != 0\n **/\n\n\n/**\n * new Deflate(options)\n * - options (Object): zlib deflate options.\n *\n * Creates new deflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `level`\n * - `windowBits`\n * - `memLevel`\n * - `strategy`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw deflate\n * - `gzip` (Boolean) - create gzip wrapper\n * - `header` (Object) - custom header for gzip\n * - `text` (Boolean) - true if compressed data believed to be text\n * - `time` (Number) - modification time, unix timestamp\n * - `os` (Number) - operation system code\n * - `extra` (Array) - array of bytes with extra data (max 65536)\n * - `name` (String) - file name (binary string)\n * - `comment` (String) - comment (binary string)\n * - `hcrc` (Boolean) - true if header crc should be added\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * , chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * , chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const deflate = new pako.Deflate({ level: 3});\n *\n * deflate.push(chunk1, false);\n * deflate.push(chunk2, true); // true -> last chunk\n *\n * if (deflate.err) { throw new Error(deflate.err); }\n *\n * console.log(deflate.result);\n * ```\n **/\nfunction Deflate$1(options) {\n this.options = common.assign({\n level: Z_DEFAULT_COMPRESSION,\n method: Z_DEFLATED$1,\n chunkSize: 16384,\n windowBits: 15,\n memLevel: 8,\n strategy: Z_DEFAULT_STRATEGY\n }, options || {});\n\n let opt = this.options;\n\n if (opt.raw && (opt.windowBits > 0)) {\n opt.windowBits = -opt.windowBits;\n }\n\n else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) {\n opt.windowBits += 16;\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new zstream();\n this.strm.avail_out = 0;\n\n let status = deflate_1$2.deflateInit2(\n this.strm,\n opt.level,\n opt.method,\n opt.windowBits,\n opt.memLevel,\n opt.strategy\n );\n\n if (status !== Z_OK$2) {\n throw new Error(messages[status]);\n }\n\n if (opt.header) {\n deflate_1$2.deflateSetHeader(this.strm, opt.header);\n }\n\n if (opt.dictionary) {\n let dict;\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n // If we need to compress text, change encoding to utf8.\n dict = strings.string2buf(opt.dictionary);\n } else if (toString$1.call(opt.dictionary) === '[object ArrayBuffer]') {\n dict = new Uint8Array(opt.dictionary);\n } else {\n dict = opt.dictionary;\n }\n\n status = deflate_1$2.deflateSetDictionary(this.strm, dict);\n\n if (status !== Z_OK$2) {\n throw new Error(messages[status]);\n }\n\n this._dict_set = true;\n }\n}\n\n/**\n * Deflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer|String): input data. Strings will be\n * converted to utf8 byte sequence.\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.\n * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.\n *\n * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with\n * new compressed chunks. Returns `true` on success. The last data block must\n * have `flush_mode` Z_FINISH (or `true`). That will flush internal pending\n * buffers and call [[Deflate#onEnd]].\n *\n * On fail call [[Deflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nDeflate$1.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n let status, _flush_mode;\n\n if (this.ended) { return false; }\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH$2 : Z_NO_FLUSH$1;\n\n // Convert data if needed\n if (typeof data === 'string') {\n // If we need to compress text, change encoding to utf8.\n strm.input = strings.string2buf(data);\n } else if (toString$1.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n // Make sure avail_out > 6 to avoid repeating markers\n if ((_flush_mode === Z_SYNC_FLUSH || _flush_mode === Z_FULL_FLUSH) && strm.avail_out <= 6) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n status = deflate_1$2.deflate(strm, _flush_mode);\n\n // Ended => flush and finish\n if (status === Z_STREAM_END$2) {\n if (strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n }\n status = deflate_1$2.deflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return status === Z_OK$2;\n }\n\n // Flush if out buffer full\n if (strm.avail_out === 0) {\n this.onData(strm.output);\n continue;\n }\n\n // Flush if requested and has data\n if (_flush_mode > 0 && strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Deflate#onData(chunk) -> Void\n * - chunk (Uint8Array): output data.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nDeflate$1.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Deflate#onEnd(status) -> Void\n * - status (Number): deflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called once after you tell deflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nDeflate$1.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK$2) {\n this.result = common.flattenChunks(this.chunks);\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * deflate(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * Compress `data` with deflate algorithm and `options`.\n *\n * Supported options are:\n *\n * - level\n * - windowBits\n * - memLevel\n * - strategy\n * - dictionary\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const data = new Uint8Array([1,2,3,4,5,6,7,8,9]);\n *\n * console.log(pako.deflate(data));\n * ```\n **/\nfunction deflate$1(input, options) {\n const deflator = new Deflate$1(options);\n\n deflator.push(input, true);\n\n // That will never happens, if you don't cheat with options :)\n if (deflator.err) { throw deflator.msg || messages[deflator.err]; }\n\n return deflator.result;\n}\n\n\n/**\n * deflateRaw(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction deflateRaw$1(input, options) {\n options = options || {};\n options.raw = true;\n return deflate$1(input, options);\n}\n\n\n/**\n * gzip(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but create gzip wrapper instead of\n * deflate one.\n **/\nfunction gzip$1(input, options) {\n options = options || {};\n options.gzip = true;\n return deflate$1(input, options);\n}\n\n\nvar Deflate_1$1 = Deflate$1;\nvar deflate_2 = deflate$1;\nvar deflateRaw_1$1 = deflateRaw$1;\nvar gzip_1$1 = gzip$1;\nvar constants$1 = constants$2;\n\nvar deflate_1$1 = {\n\tDeflate: Deflate_1$1,\n\tdeflate: deflate_2,\n\tdeflateRaw: deflateRaw_1$1,\n\tgzip: gzip_1$1,\n\tconstants: constants$1\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// See state defs from inflate.js\nconst BAD$1 = 16209; /* got a data error -- remain here until reset */\nconst TYPE$1 = 16191; /* i: waiting for type bits, including last-flag bit */\n\n/*\n Decode literal, length, and distance codes and write out the resulting\n literal and match bytes until either not enough input or output is\n available, an end-of-block is encountered, or a data error is encountered.\n When large enough input and output buffers are supplied to inflate(), for\n example, a 16K input buffer and a 64K output buffer, more than 95% of the\n inflate execution time is spent in this routine.\n\n Entry assumptions:\n\n state.mode === LEN\n strm.avail_in >= 6\n strm.avail_out >= 258\n start >= strm.avail_out\n state.bits < 8\n\n On return, state.mode is one of:\n\n LEN -- ran out of enough output space or enough available input\n TYPE -- reached end of block code, inflate() to interpret next block\n BAD -- error in block data\n\n Notes:\n\n - The maximum input bits used by a length/distance pair is 15 bits for the\n length code, 5 bits for the length extra, 15 bits for the distance code,\n and 13 bits for the distance extra. This totals 48 bits, or six bytes.\n Therefore if strm.avail_in >= 6, then there is enough input to avoid\n checking for available input while decoding.\n\n - The maximum bytes that a single length/distance pair can output is 258\n bytes, which is the maximum length that can be coded. inflate_fast()\n requires strm.avail_out >= 258 for each loop to avoid checking for\n output space.\n */\nvar inffast = function inflate_fast(strm, start) {\n let _in; /* local strm.input */\n let last; /* have enough input while in < last */\n let _out; /* local strm.output */\n let beg; /* inflate()'s initial strm.output */\n let end; /* while out < end, enough space available */\n//#ifdef INFLATE_STRICT\n let dmax; /* maximum distance from zlib header */\n//#endif\n let wsize; /* window size or zero if not using window */\n let whave; /* valid bytes in the window */\n let wnext; /* window write index */\n // Use `s_window` instead `window`, avoid conflict with instrumentation tools\n let s_window; /* allocated sliding window, if wsize != 0 */\n let hold; /* local strm.hold */\n let bits; /* local strm.bits */\n let lcode; /* local strm.lencode */\n let dcode; /* local strm.distcode */\n let lmask; /* mask for first level of length codes */\n let dmask; /* mask for first level of distance codes */\n let here; /* retrieved table entry */\n let op; /* code bits, operation, extra bits, or */\n /* window position, window bytes to copy */\n let len; /* match length, unused bytes */\n let dist; /* match distance */\n let from; /* where to copy match from */\n let from_source;\n\n\n let input, output; // JS specific, because we have no pointers\n\n /* copy state to local variables */\n const state = strm.state;\n //here = state.here;\n _in = strm.next_in;\n input = strm.input;\n last = _in + (strm.avail_in - 5);\n _out = strm.next_out;\n output = strm.output;\n beg = _out - (start - strm.avail_out);\n end = _out + (strm.avail_out - 257);\n//#ifdef INFLATE_STRICT\n dmax = state.dmax;\n//#endif\n wsize = state.wsize;\n whave = state.whave;\n wnext = state.wnext;\n s_window = state.window;\n hold = state.hold;\n bits = state.bits;\n lcode = state.lencode;\n dcode = state.distcode;\n lmask = (1 << state.lenbits) - 1;\n dmask = (1 << state.distbits) - 1;\n\n\n /* decode literals and length/distances until end-of-block or not enough\n input data or output space */\n\n top:\n do {\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n\n here = lcode[hold & lmask];\n\n dolen:\n for (;;) { // Goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n if (op === 0) { /* literal */\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n output[_out++] = here & 0xffff/*here.val*/;\n }\n else if (op & 16) { /* length base */\n len = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (op) {\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n len += hold & ((1 << op) - 1);\n hold >>>= op;\n bits -= op;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", len));\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n here = dcode[hold & dmask];\n\n dodist:\n for (;;) { // goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n\n if (op & 16) { /* distance base */\n dist = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n }\n dist += hold & ((1 << op) - 1);\n//#ifdef INFLATE_STRICT\n if (dist > dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD$1;\n break top;\n }\n//#endif\n hold >>>= op;\n bits -= op;\n //Tracevv((stderr, \"inflate: distance %u\\n\", dist));\n op = _out - beg; /* max distance in output */\n if (dist > op) { /* see if copy from window */\n op = dist - op; /* distance back in window */\n if (op > whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD$1;\n break top;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// if (len <= op - whave) {\n// do {\n// output[_out++] = 0;\n// } while (--len);\n// continue top;\n// }\n// len -= op - whave;\n// do {\n// output[_out++] = 0;\n// } while (--op > whave);\n// if (op === 0) {\n// from = _out - dist;\n// do {\n// output[_out++] = output[from++];\n// } while (--len);\n// continue top;\n// }\n//#endif\n }\n from = 0; // window index\n from_source = s_window;\n if (wnext === 0) { /* very common case */\n from += wsize - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n else if (wnext < op) { /* wrap around window */\n from += wsize + wnext - op;\n op -= wnext;\n if (op < len) { /* some from end of window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = 0;\n if (wnext < len) { /* some from start of window */\n op = wnext;\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n }\n else { /* contiguous in window */\n from += wnext - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n while (len > 2) {\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n len -= 3;\n }\n if (len) {\n output[_out++] = from_source[from++];\n if (len > 1) {\n output[_out++] = from_source[from++];\n }\n }\n }\n else {\n from = _out - dist; /* copy direct from output */\n do { /* minimum length is three */\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n len -= 3;\n } while (len > 2);\n if (len) {\n output[_out++] = output[from++];\n if (len > 1) {\n output[_out++] = output[from++];\n }\n }\n }\n }\n else if ((op & 64) === 0) { /* 2nd level distance code */\n here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dodist;\n }\n else {\n strm.msg = 'invalid distance code';\n state.mode = BAD$1;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n }\n else if ((op & 64) === 0) { /* 2nd level length code */\n here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dolen;\n }\n else if (op & 32) { /* end-of-block */\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.mode = TYPE$1;\n break top;\n }\n else {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD$1;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n } while (_in < last && _out < end);\n\n /* return unused bytes (on entry, bits < 8, so in won't go too far back) */\n len = bits >> 3;\n _in -= len;\n bits -= len << 3;\n hold &= (1 << bits) - 1;\n\n /* update state and return */\n strm.next_in = _in;\n strm.next_out = _out;\n strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last));\n strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end));\n state.hold = hold;\n state.bits = bits;\n return;\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst MAXBITS = 15;\nconst ENOUGH_LENS$1 = 852;\nconst ENOUGH_DISTS$1 = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst CODES$1 = 0;\nconst LENS$1 = 1;\nconst DISTS$1 = 2;\n\nconst lbase = new Uint16Array([ /* Length codes 257..285 base */\n 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,\n 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0\n]);\n\nconst lext = new Uint8Array([ /* Length codes 257..285 extra */\n 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,\n 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78\n]);\n\nconst dbase = new Uint16Array([ /* Distance codes 0..29 base */\n 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,\n 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,\n 8193, 12289, 16385, 24577, 0, 0\n]);\n\nconst dext = new Uint8Array([ /* Distance codes 0..29 extra */\n 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,\n 23, 23, 24, 24, 25, 25, 26, 26, 27, 27,\n 28, 28, 29, 29, 64, 64\n]);\n\nconst inflate_table = (type, lens, lens_index, codes, table, table_index, work, opts) =>\n{\n const bits = opts.bits;\n //here = opts.here; /* table entry for duplication */\n\n let len = 0; /* a code's length in bits */\n let sym = 0; /* index of code symbols */\n let min = 0, max = 0; /* minimum and maximum code lengths */\n let root = 0; /* number of index bits for root table */\n let curr = 0; /* number of index bits for current table */\n let drop = 0; /* code bits to drop for sub-table */\n let left = 0; /* number of prefix codes available */\n let used = 0; /* code entries in table used */\n let huff = 0; /* Huffman code */\n let incr; /* for incrementing code, index */\n let fill; /* index for replicating entries */\n let low; /* low bits for current root entry */\n let mask; /* mask for low root bits */\n let next; /* next available space in table */\n let base = null; /* base value table to use */\n// let shoextra; /* extra bits table to use */\n let match; /* use base and extra for symbol >= match */\n const count = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */\n const offs = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */\n let extra = null;\n\n let here_bits, here_op, here_val;\n\n /*\n Process a set of code lengths to create a canonical Huffman code. The\n code lengths are lens[0..codes-1]. Each length corresponds to the\n symbols 0..codes-1. The Huffman code is generated by first sorting the\n symbols by length from short to long, and retaining the symbol order\n for codes with equal lengths. Then the code starts with all zero bits\n for the first code of the shortest length, and the codes are integer\n increments for the same length, and zeros are appended as the length\n increases. For the deflate format, these bits are stored backwards\n from their more natural integer increment ordering, and so when the\n decoding tables are built in the large loop below, the integer codes\n are incremented backwards.\n\n This routine assumes, but does not check, that all of the entries in\n lens[] are in the range 0..MAXBITS. The caller must assure this.\n 1..MAXBITS is interpreted as that code length. zero means that that\n symbol does not occur in this code.\n\n The codes are sorted by computing a count of codes for each length,\n creating from that a table of starting indices for each length in the\n sorted table, and then entering the symbols in order in the sorted\n table. The sorted table is work[], with that space being provided by\n the caller.\n\n The length counts are used for other purposes as well, i.e. finding\n the minimum and maximum length codes, determining if there are any\n codes at all, checking for a valid set of lengths, and looking ahead\n at length counts to determine sub-table sizes when building the\n decoding tables.\n */\n\n /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */\n for (len = 0; len <= MAXBITS; len++) {\n count[len] = 0;\n }\n for (sym = 0; sym < codes; sym++) {\n count[lens[lens_index + sym]]++;\n }\n\n /* bound code lengths, force root to be within code lengths */\n root = bits;\n for (max = MAXBITS; max >= 1; max--) {\n if (count[max] !== 0) { break; }\n }\n if (root > max) {\n root = max;\n }\n if (max === 0) { /* no symbols to code at all */\n //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */\n //table.bits[opts.table_index] = 1; //here.bits = (var char)1;\n //table.val[opts.table_index++] = 0; //here.val = (var short)0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n\n //table.op[opts.table_index] = 64;\n //table.bits[opts.table_index] = 1;\n //table.val[opts.table_index++] = 0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n opts.bits = 1;\n return 0; /* no symbols, but wait for decoding to report error */\n }\n for (min = 1; min < max; min++) {\n if (count[min] !== 0) { break; }\n }\n if (root < min) {\n root = min;\n }\n\n /* check for an over-subscribed or incomplete set of lengths */\n left = 1;\n for (len = 1; len <= MAXBITS; len++) {\n left <<= 1;\n left -= count[len];\n if (left < 0) {\n return -1;\n } /* over-subscribed */\n }\n if (left > 0 && (type === CODES$1 || max !== 1)) {\n return -1; /* incomplete set */\n }\n\n /* generate offsets into symbol table for each length for sorting */\n offs[1] = 0;\n for (len = 1; len < MAXBITS; len++) {\n offs[len + 1] = offs[len] + count[len];\n }\n\n /* sort symbols by length, by symbol order within each length */\n for (sym = 0; sym < codes; sym++) {\n if (lens[lens_index + sym] !== 0) {\n work[offs[lens[lens_index + sym]]++] = sym;\n }\n }\n\n /*\n Create and fill in decoding tables. In this loop, the table being\n filled is at next and has curr index bits. The code being used is huff\n with length len. That code is converted to an index by dropping drop\n bits off of the bottom. For codes where len is less than drop + curr,\n those top drop + curr - len bits are incremented through all values to\n fill the table with replicated entries.\n\n root is the number of index bits for the root table. When len exceeds\n root, sub-tables are created pointed to by the root entry with an index\n of the low root bits of huff. This is saved in low to check for when a\n new sub-table should be started. drop is zero when the root table is\n being filled, and drop is root when sub-tables are being filled.\n\n When a new sub-table is needed, it is necessary to look ahead in the\n code lengths to determine what size sub-table is needed. The length\n counts are used for this, and so count[] is decremented as codes are\n entered in the tables.\n\n used keeps track of how many table entries have been allocated from the\n provided *table space. It is checked for LENS and DIST tables against\n the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in\n the initial root table size constants. See the comments in inftrees.h\n for more information.\n\n sym increments through all symbols, and the loop terminates when\n all codes of length max, i.e. all codes, have been processed. This\n routine permits incomplete codes, so another loop after this one fills\n in the rest of the decoding tables with invalid code markers.\n */\n\n /* set up for code type */\n // poor man optimization - use if-else instead of switch,\n // to avoid deopts in old v8\n if (type === CODES$1) {\n base = extra = work; /* dummy value--not used */\n match = 20;\n\n } else if (type === LENS$1) {\n base = lbase;\n extra = lext;\n match = 257;\n\n } else { /* DISTS */\n base = dbase;\n extra = dext;\n match = 0;\n }\n\n /* initialize opts for loop */\n huff = 0; /* starting code */\n sym = 0; /* starting code symbol */\n len = min; /* starting code length */\n next = table_index; /* current table to fill in */\n curr = root; /* current table index bits */\n drop = 0; /* current bits to drop from code for index */\n low = -1; /* trigger new sub-table when len > root */\n used = 1 << root; /* use root table entries */\n mask = used - 1; /* mask for comparing low */\n\n /* check available table space */\n if ((type === LENS$1 && used > ENOUGH_LENS$1) ||\n (type === DISTS$1 && used > ENOUGH_DISTS$1)) {\n return 1;\n }\n\n /* process all codes and make table entries */\n for (;;) {\n /* create table entry */\n here_bits = len - drop;\n if (work[sym] + 1 < match) {\n here_op = 0;\n here_val = work[sym];\n }\n else if (work[sym] >= match) {\n here_op = extra[work[sym] - match];\n here_val = base[work[sym] - match];\n }\n else {\n here_op = 32 + 64; /* end of block */\n here_val = 0;\n }\n\n /* replicate for those indices with low len bits equal to huff */\n incr = 1 << (len - drop);\n fill = 1 << curr;\n min = fill; /* save offset to next table */\n do {\n fill -= incr;\n table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;\n } while (fill !== 0);\n\n /* backwards increment the len-bit code huff */\n incr = 1 << (len - 1);\n while (huff & incr) {\n incr >>= 1;\n }\n if (incr !== 0) {\n huff &= incr - 1;\n huff += incr;\n } else {\n huff = 0;\n }\n\n /* go to next symbol, update count, len */\n sym++;\n if (--count[len] === 0) {\n if (len === max) { break; }\n len = lens[lens_index + work[sym]];\n }\n\n /* create new sub-table if needed */\n if (len > root && (huff & mask) !== low) {\n /* if first time, transition to sub-tables */\n if (drop === 0) {\n drop = root;\n }\n\n /* increment past last table */\n next += min; /* here min is 1 << curr */\n\n /* determine length of next table */\n curr = len - drop;\n left = 1 << curr;\n while (curr + drop < max) {\n left -= count[curr + drop];\n if (left <= 0) { break; }\n curr++;\n left <<= 1;\n }\n\n /* check for enough space */\n used += 1 << curr;\n if ((type === LENS$1 && used > ENOUGH_LENS$1) ||\n (type === DISTS$1 && used > ENOUGH_DISTS$1)) {\n return 1;\n }\n\n /* point entry in root table to sub-table */\n low = huff & mask;\n /*table.op[low] = curr;\n table.bits[low] = root;\n table.val[low] = next - opts.table_index;*/\n table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;\n }\n }\n\n /* fill in remaining table entry if code is incomplete (guaranteed to have\n at most one remaining entry, since if the code is incomplete, the\n maximum code length that was allowed to get this far is one bit) */\n if (huff !== 0) {\n //table.op[next + huff] = 64; /* invalid code marker */\n //table.bits[next + huff] = len - drop;\n //table.val[next + huff] = 0;\n table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;\n }\n\n /* set return parameters */\n //opts.table_index += used;\n opts.bits = root;\n return 0;\n};\n\n\nvar inftrees = inflate_table;\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n\n\n\n\n\nconst CODES = 0;\nconst LENS = 1;\nconst DISTS = 2;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_FINISH: Z_FINISH$1, Z_BLOCK, Z_TREES,\n Z_OK: Z_OK$1, Z_STREAM_END: Z_STREAM_END$1, Z_NEED_DICT: Z_NEED_DICT$1, Z_STREAM_ERROR: Z_STREAM_ERROR$1, Z_DATA_ERROR: Z_DATA_ERROR$1, Z_MEM_ERROR: Z_MEM_ERROR$1, Z_BUF_ERROR,\n Z_DEFLATED\n} = constants$2;\n\n\n/* STATES ====================================================================*/\n/* ===========================================================================*/\n\n\nconst HEAD = 16180; /* i: waiting for magic header */\nconst FLAGS = 16181; /* i: waiting for method and flags (gzip) */\nconst TIME = 16182; /* i: waiting for modification time (gzip) */\nconst OS = 16183; /* i: waiting for extra flags and operating system (gzip) */\nconst EXLEN = 16184; /* i: waiting for extra length (gzip) */\nconst EXTRA = 16185; /* i: waiting for extra bytes (gzip) */\nconst NAME = 16186; /* i: waiting for end of file name (gzip) */\nconst COMMENT = 16187; /* i: waiting for end of comment (gzip) */\nconst HCRC = 16188; /* i: waiting for header crc (gzip) */\nconst DICTID = 16189; /* i: waiting for dictionary check value */\nconst DICT = 16190; /* waiting for inflateSetDictionary() call */\nconst TYPE = 16191; /* i: waiting for type bits, including last-flag bit */\nconst TYPEDO = 16192; /* i: same, but skip check to exit inflate on new block */\nconst STORED = 16193; /* i: waiting for stored size (length and complement) */\nconst COPY_ = 16194; /* i/o: same as COPY below, but only first time in */\nconst COPY = 16195; /* i/o: waiting for input or output to copy stored block */\nconst TABLE = 16196; /* i: waiting for dynamic block table lengths */\nconst LENLENS = 16197; /* i: waiting for code length code lengths */\nconst CODELENS = 16198; /* i: waiting for length/lit and distance code lengths */\nconst LEN_ = 16199; /* i: same as LEN below, but only first time in */\nconst LEN = 16200; /* i: waiting for length/lit/eob code */\nconst LENEXT = 16201; /* i: waiting for length extra bits */\nconst DIST = 16202; /* i: waiting for distance code */\nconst DISTEXT = 16203; /* i: waiting for distance extra bits */\nconst MATCH = 16204; /* o: waiting for output space to copy string */\nconst LIT = 16205; /* o: waiting for output space to write literal */\nconst CHECK = 16206; /* i: waiting for 32-bit check value */\nconst LENGTH = 16207; /* i: waiting for 32-bit length (gzip) */\nconst DONE = 16208; /* finished check, done -- remain here until reset */\nconst BAD = 16209; /* got a data error -- remain here until reset */\nconst MEM = 16210; /* got an inflate() memory error -- remain here until reset */\nconst SYNC = 16211; /* looking for synchronization bytes to restart inflate() */\n\n/* ===========================================================================*/\n\n\n\nconst ENOUGH_LENS = 852;\nconst ENOUGH_DISTS = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst MAX_WBITS = 15;\n/* 32K LZ77 window */\nconst DEF_WBITS = MAX_WBITS;\n\n\nconst zswap32 = (q) => {\n\n return (((q >>> 24) & 0xff) +\n ((q >>> 8) & 0xff00) +\n ((q & 0xff00) << 8) +\n ((q & 0xff) << 24));\n};\n\n\nfunction InflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.mode = 0; /* current inflate mode */\n this.last = false; /* true if processing last block */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip,\n bit 2 true to validate check value */\n this.havedict = false; /* true if dictionary provided */\n this.flags = 0; /* gzip header method and flags (0 if zlib), or\n -1 if raw or no header yet */\n this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */\n this.check = 0; /* protected copy of check value */\n this.total = 0; /* protected copy of output count */\n // TODO: may be {}\n this.head = null; /* where to save gzip header information */\n\n /* sliding window */\n this.wbits = 0; /* log base 2 of requested window size */\n this.wsize = 0; /* window size or zero if not using window */\n this.whave = 0; /* valid bytes in the window */\n this.wnext = 0; /* window write index */\n this.window = null; /* allocated sliding window, if needed */\n\n /* bit accumulator */\n this.hold = 0; /* input bit accumulator */\n this.bits = 0; /* number of bits in \"in\" */\n\n /* for string and stored block copying */\n this.length = 0; /* literal or length of data to copy */\n this.offset = 0; /* distance back to copy string from */\n\n /* for table and code decoding */\n this.extra = 0; /* extra bits needed */\n\n /* fixed and dynamic code tables */\n this.lencode = null; /* starting table for length/literal codes */\n this.distcode = null; /* starting table for distance codes */\n this.lenbits = 0; /* index bits for lencode */\n this.distbits = 0; /* index bits for distcode */\n\n /* dynamic table building */\n this.ncode = 0; /* number of code length code lengths */\n this.nlen = 0; /* number of length code lengths */\n this.ndist = 0; /* number of distance code lengths */\n this.have = 0; /* number of code lengths in lens[] */\n this.next = null; /* next available space in codes[] */\n\n this.lens = new Uint16Array(320); /* temporary storage for code lengths */\n this.work = new Uint16Array(288); /* work area for code table building */\n\n /*\n because we don't have pointers in js, we use lencode and distcode directly\n as buffers so we don't need codes\n */\n //this.codes = new Int32Array(ENOUGH); /* space for code tables */\n this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */\n this.distdyn = null; /* dynamic table for distance codes (JS specific) */\n this.sane = 0; /* if false, allow invalid distance too far */\n this.back = 0; /* bits back of last unprocessed length/lit */\n this.was = 0; /* initial length of match */\n}\n\n\nconst inflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const state = strm.state;\n if (!state || state.strm !== strm ||\n state.mode < HEAD || state.mode > SYNC) {\n return 1;\n }\n return 0;\n};\n\n\nconst inflateResetKeep = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n strm.total_in = strm.total_out = state.total = 0;\n strm.msg = ''; /*Z_NULL*/\n if (state.wrap) { /* to support ill-conceived Java test suite */\n strm.adler = state.wrap & 1;\n }\n state.mode = HEAD;\n state.last = 0;\n state.havedict = 0;\n state.flags = -1;\n state.dmax = 32768;\n state.head = null/*Z_NULL*/;\n state.hold = 0;\n state.bits = 0;\n //state.lencode = state.distcode = state.next = state.codes;\n state.lencode = state.lendyn = new Int32Array(ENOUGH_LENS);\n state.distcode = state.distdyn = new Int32Array(ENOUGH_DISTS);\n\n state.sane = 1;\n state.back = -1;\n //Tracev((stderr, \"inflate: reset\\n\"));\n return Z_OK$1;\n};\n\n\nconst inflateReset = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n state.wsize = 0;\n state.whave = 0;\n state.wnext = 0;\n return inflateResetKeep(strm);\n\n};\n\n\nconst inflateReset2 = (strm, windowBits) => {\n let wrap;\n\n /* get the state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n\n /* extract wrap request from windowBits parameter */\n if (windowBits < 0) {\n wrap = 0;\n windowBits = -windowBits;\n }\n else {\n wrap = (windowBits >> 4) + 5;\n if (windowBits < 48) {\n windowBits &= 15;\n }\n }\n\n /* set number of window bits, free window if different */\n if (windowBits && (windowBits < 8 || windowBits > 15)) {\n return Z_STREAM_ERROR$1;\n }\n if (state.window !== null && state.wbits !== windowBits) {\n state.window = null;\n }\n\n /* update state and reset the rest of it */\n state.wrap = wrap;\n state.wbits = windowBits;\n return inflateReset(strm);\n};\n\n\nconst inflateInit2 = (strm, windowBits) => {\n\n if (!strm) { return Z_STREAM_ERROR$1; }\n //strm.msg = Z_NULL; /* in case we return an error */\n\n const state = new InflateState();\n\n //if (state === Z_NULL) return Z_MEM_ERROR;\n //Tracev((stderr, \"inflate: allocated\\n\"));\n strm.state = state;\n state.strm = strm;\n state.window = null/*Z_NULL*/;\n state.mode = HEAD; /* to pass state test in inflateReset2() */\n const ret = inflateReset2(strm, windowBits);\n if (ret !== Z_OK$1) {\n strm.state = null/*Z_NULL*/;\n }\n return ret;\n};\n\n\nconst inflateInit = (strm) => {\n\n return inflateInit2(strm, DEF_WBITS);\n};\n\n\n/*\n Return state with length and distance decoding tables and index sizes set to\n fixed code decoding. Normally this returns fixed tables from inffixed.h.\n If BUILDFIXED is defined, then instead this routine builds the tables the\n first time it's called, and returns those tables the first time and\n thereafter. This reduces the size of the code by about 2K bytes, in\n exchange for a little execution time. However, BUILDFIXED should not be\n used for threaded applications, since the rewriting of the tables and virgin\n may not be thread-safe.\n */\nlet virgin = true;\n\nlet lenfix, distfix; // We have no pointers in JS, so keep tables separate\n\n\nconst fixedtables = (state) => {\n\n /* build fixed huffman tables if first call (may not be thread safe) */\n if (virgin) {\n lenfix = new Int32Array(512);\n distfix = new Int32Array(32);\n\n /* literal/length table */\n let sym = 0;\n while (sym < 144) { state.lens[sym++] = 8; }\n while (sym < 256) { state.lens[sym++] = 9; }\n while (sym < 280) { state.lens[sym++] = 7; }\n while (sym < 288) { state.lens[sym++] = 8; }\n\n inftrees(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 });\n\n /* distance table */\n sym = 0;\n while (sym < 32) { state.lens[sym++] = 5; }\n\n inftrees(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 });\n\n /* do this just once */\n virgin = false;\n }\n\n state.lencode = lenfix;\n state.lenbits = 9;\n state.distcode = distfix;\n state.distbits = 5;\n};\n\n\n/*\n Update the window with the last wsize (normally 32K) bytes written before\n returning. If window does not exist yet, create it. This is only called\n when a window is already in use, or when output has been written during this\n inflate call, but the end of the deflate stream has not been reached yet.\n It is also called to create a window for dictionary data when a dictionary\n is loaded.\n\n Providing output buffers larger than 32K to inflate() should provide a speed\n advantage, since only the last 32K of output is copied to the sliding window\n upon return from inflate(), and since all distances after the first 32K of\n output will fall in the output data, making match copies simpler and faster.\n The advantage may be dependent on the size of the processor's data caches.\n */\nconst updatewindow = (strm, src, end, copy) => {\n\n let dist;\n const state = strm.state;\n\n /* if it hasn't been done already, allocate space for the window */\n if (state.window === null) {\n state.wsize = 1 << state.wbits;\n state.wnext = 0;\n state.whave = 0;\n\n state.window = new Uint8Array(state.wsize);\n }\n\n /* copy state->wsize or less output bytes into the circular window */\n if (copy >= state.wsize) {\n state.window.set(src.subarray(end - state.wsize, end), 0);\n state.wnext = 0;\n state.whave = state.wsize;\n }\n else {\n dist = state.wsize - state.wnext;\n if (dist > copy) {\n dist = copy;\n }\n //zmemcpy(state->window + state->wnext, end - copy, dist);\n state.window.set(src.subarray(end - copy, end - copy + dist), state.wnext);\n copy -= dist;\n if (copy) {\n //zmemcpy(state->window, end - copy, copy);\n state.window.set(src.subarray(end - copy, end), 0);\n state.wnext = copy;\n state.whave = state.wsize;\n }\n else {\n state.wnext += dist;\n if (state.wnext === state.wsize) { state.wnext = 0; }\n if (state.whave < state.wsize) { state.whave += dist; }\n }\n }\n return 0;\n};\n\n\nconst inflate$2 = (strm, flush) => {\n\n let state;\n let input, output; // input/output buffers\n let next; /* next input INDEX */\n let put; /* next output INDEX */\n let have, left; /* available input and output */\n let hold; /* bit buffer */\n let bits; /* bits in bit buffer */\n let _in, _out; /* save starting available input and output */\n let copy; /* number of stored or match bytes to copy */\n let from; /* where to copy match bytes from */\n let from_source;\n let here = 0; /* current decoding table entry */\n let here_bits, here_op, here_val; // paked \"here\" denormalized (JS specific)\n //let last; /* parent table entry */\n let last_bits, last_op, last_val; // paked \"last\" denormalized (JS specific)\n let len; /* length to copy for repeats, bits to drop */\n let ret; /* return code */\n const hbuf = new Uint8Array(4); /* buffer for gzip header crc calculation */\n let opts;\n\n let n; // temporary variable for NEED_BITS\n\n const order = /* permutation of code lengths */\n new Uint8Array([ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]);\n\n\n if (inflateStateCheck(strm) || !strm.output ||\n (!strm.input && strm.avail_in !== 0)) {\n return Z_STREAM_ERROR$1;\n }\n\n state = strm.state;\n if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */\n\n\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n _in = have;\n _out = left;\n ret = Z_OK$1;\n\n inf_leave: // goto emulation\n for (;;) {\n switch (state.mode) {\n case HEAD:\n if (state.wrap === 0) {\n state.mode = TYPEDO;\n break;\n }\n //=== NEEDBITS(16);\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */\n if (state.wbits === 0) {\n state.wbits = 15;\n }\n state.check = 0/*crc32(0L, Z_NULL, 0)*/;\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = FLAGS;\n break;\n }\n if (state.head) {\n state.head.done = false;\n }\n if (!(state.wrap & 1) || /* check if zlib header allowed */\n (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) {\n strm.msg = 'incorrect header check';\n state.mode = BAD;\n break;\n }\n if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n len = (hold & 0x0f)/*BITS(4)*/ + 8;\n if (state.wbits === 0) {\n state.wbits = len;\n }\n if (len > 15 || len > state.wbits) {\n strm.msg = 'invalid window size';\n state.mode = BAD;\n break;\n }\n\n // !!! pako patch. Force use `options.windowBits` if passed.\n // Required to always use max window size by default.\n state.dmax = 1 << state.wbits;\n //state.dmax = 1 << len;\n\n state.flags = 0; /* indicate zlib header */\n //Tracev((stderr, \"inflate: zlib header ok\\n\"));\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = hold & 0x200 ? DICTID : TYPE;\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n break;\n case FLAGS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.flags = hold;\n if ((state.flags & 0xff) !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n if (state.flags & 0xe000) {\n strm.msg = 'unknown header flags set';\n state.mode = BAD;\n break;\n }\n if (state.head) {\n state.head.text = ((hold >> 8) & 1);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = TIME;\n /* falls through */\n case TIME:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.time = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC4(state.check, hold)\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n hbuf[2] = (hold >>> 16) & 0xff;\n hbuf[3] = (hold >>> 24) & 0xff;\n state.check = crc32_1(state.check, hbuf, 4, 0);\n //===\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = OS;\n /* falls through */\n case OS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.xflags = (hold & 0xff);\n state.head.os = (hold >> 8);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = EXLEN;\n /* falls through */\n case EXLEN:\n if (state.flags & 0x0400) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length = hold;\n if (state.head) {\n state.head.extra_len = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n else if (state.head) {\n state.head.extra = null/*Z_NULL*/;\n }\n state.mode = EXTRA;\n /* falls through */\n case EXTRA:\n if (state.flags & 0x0400) {\n copy = state.length;\n if (copy > have) { copy = have; }\n if (copy) {\n if (state.head) {\n len = state.head.extra_len - state.length;\n if (!state.head.extra) {\n // Use untyped array for more convenient processing later\n state.head.extra = new Uint8Array(state.head.extra_len);\n }\n state.head.extra.set(\n input.subarray(\n next,\n // extra field is limited to 65536 bytes\n // - no need for additional size check\n next + copy\n ),\n /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/\n len\n );\n //zmemcpy(state.head.extra + len, next,\n // len + copy > state.head.extra_max ?\n // state.head.extra_max - len : copy);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n state.length -= copy;\n }\n if (state.length) { break inf_leave; }\n }\n state.length = 0;\n state.mode = NAME;\n /* falls through */\n case NAME:\n if (state.flags & 0x0800) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n // TODO: 2 or 1 bytes?\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.name_max*/)) {\n state.head.name += String.fromCharCode(len);\n }\n } while (len && copy < have);\n\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.name = null;\n }\n state.length = 0;\n state.mode = COMMENT;\n /* falls through */\n case COMMENT:\n if (state.flags & 0x1000) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.comm_max*/)) {\n state.head.comment += String.fromCharCode(len);\n }\n } while (len && copy < have);\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.comment = null;\n }\n state.mode = HCRC;\n /* falls through */\n case HCRC:\n if (state.flags & 0x0200) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.check & 0xffff)) {\n strm.msg = 'header crc mismatch';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n if (state.head) {\n state.head.hcrc = ((state.flags >> 9) & 1);\n state.head.done = true;\n }\n strm.adler = state.check = 0;\n state.mode = TYPE;\n break;\n case DICTID:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n strm.adler = state.check = zswap32(hold);\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = DICT;\n /* falls through */\n case DICT:\n if (state.havedict === 0) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n return Z_NEED_DICT$1;\n }\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = TYPE;\n /* falls through */\n case TYPE:\n if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case TYPEDO:\n if (state.last) {\n //--- BYTEBITS() ---//\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n state.mode = CHECK;\n break;\n }\n //=== NEEDBITS(3); */\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.last = (hold & 0x01)/*BITS(1)*/;\n //--- DROPBITS(1) ---//\n hold >>>= 1;\n bits -= 1;\n //---//\n\n switch ((hold & 0x03)/*BITS(2)*/) {\n case 0: /* stored block */\n //Tracev((stderr, \"inflate: stored block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = STORED;\n break;\n case 1: /* fixed block */\n fixedtables(state);\n //Tracev((stderr, \"inflate: fixed codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = LEN_; /* decode codes */\n if (flush === Z_TREES) {\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break inf_leave;\n }\n break;\n case 2: /* dynamic block */\n //Tracev((stderr, \"inflate: dynamic codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = TABLE;\n break;\n case 3:\n strm.msg = 'invalid block type';\n state.mode = BAD;\n }\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break;\n case STORED:\n //--- BYTEBITS() ---// /* go to byte boundary */\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) {\n strm.msg = 'invalid stored block lengths';\n state.mode = BAD;\n break;\n }\n state.length = hold & 0xffff;\n //Tracev((stderr, \"inflate: stored length %u\\n\",\n // state.length));\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = COPY_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case COPY_:\n state.mode = COPY;\n /* falls through */\n case COPY:\n copy = state.length;\n if (copy) {\n if (copy > have) { copy = have; }\n if (copy > left) { copy = left; }\n if (copy === 0) { break inf_leave; }\n //--- zmemcpy(put, next, copy); ---\n output.set(input.subarray(next, next + copy), put);\n //---//\n have -= copy;\n next += copy;\n left -= copy;\n put += copy;\n state.length -= copy;\n break;\n }\n //Tracev((stderr, \"inflate: stored end\\n\"));\n state.mode = TYPE;\n break;\n case TABLE:\n //=== NEEDBITS(14); */\n while (bits < 14) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4;\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n//#ifndef PKZIP_BUG_WORKAROUND\n if (state.nlen > 286 || state.ndist > 30) {\n strm.msg = 'too many length or distance symbols';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracev((stderr, \"inflate: table sizes ok\\n\"));\n state.have = 0;\n state.mode = LENLENS;\n /* falls through */\n case LENLENS:\n while (state.have < state.ncode) {\n //=== NEEDBITS(3);\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.lens[order[state.have++]] = (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n while (state.have < 19) {\n state.lens[order[state.have++]] = 0;\n }\n // We have separate tables & no pointers. 2 commented lines below not needed.\n //state.next = state.codes;\n //state.lencode = state.next;\n // Switch to use dynamic table\n state.lencode = state.lendyn;\n state.lenbits = 7;\n\n opts = { bits: state.lenbits };\n ret = inftrees(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);\n state.lenbits = opts.bits;\n\n if (ret) {\n strm.msg = 'invalid code lengths set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, \"inflate: code lengths ok\\n\"));\n state.have = 0;\n state.mode = CODELENS;\n /* falls through */\n case CODELENS:\n while (state.have < state.nlen + state.ndist) {\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_val < 16) {\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.lens[state.have++] = here_val;\n }\n else {\n if (here_val === 16) {\n //=== NEEDBITS(here.bits + 2);\n n = here_bits + 2;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n if (state.have === 0) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n len = state.lens[state.have - 1];\n copy = 3 + (hold & 0x03);//BITS(2);\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n }\n else if (here_val === 17) {\n //=== NEEDBITS(here.bits + 3);\n n = here_bits + 3;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 3 + (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n else {\n //=== NEEDBITS(here.bits + 7);\n n = here_bits + 7;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 11 + (hold & 0x7f);//BITS(7);\n //--- DROPBITS(7) ---//\n hold >>>= 7;\n bits -= 7;\n //---//\n }\n if (state.have + copy > state.nlen + state.ndist) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n while (copy--) {\n state.lens[state.have++] = len;\n }\n }\n }\n\n /* handle error breaks in while */\n if (state.mode === BAD) { break; }\n\n /* check for end-of-block code (better have one) */\n if (state.lens[256] === 0) {\n strm.msg = 'invalid code -- missing end-of-block';\n state.mode = BAD;\n break;\n }\n\n /* build code tables -- note: do not change the lenbits or distbits\n values here (9 and 6) without reading the comments in inftrees.h\n concerning the ENOUGH constants, which depend on those values */\n state.lenbits = 9;\n\n opts = { bits: state.lenbits };\n ret = inftrees(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.lenbits = opts.bits;\n // state.lencode = state.next;\n\n if (ret) {\n strm.msg = 'invalid literal/lengths set';\n state.mode = BAD;\n break;\n }\n\n state.distbits = 6;\n //state.distcode.copy(state.codes);\n // Switch to use dynamic table\n state.distcode = state.distdyn;\n opts = { bits: state.distbits };\n ret = inftrees(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.distbits = opts.bits;\n // state.distcode = state.next;\n\n if (ret) {\n strm.msg = 'invalid distances set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, 'inflate: codes ok\\n'));\n state.mode = LEN_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case LEN_:\n state.mode = LEN;\n /* falls through */\n case LEN:\n if (have >= 6 && left >= 258) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n inffast(strm, _out);\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n if (state.mode === TYPE) {\n state.back = -1;\n }\n break;\n }\n state.back = 0;\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if (here_bits <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_op && (here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.lencode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n state.length = here_val;\n if (here_op === 0) {\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n state.mode = LIT;\n break;\n }\n if (here_op & 32) {\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.back = -1;\n state.mode = TYPE;\n break;\n }\n if (here_op & 64) {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break;\n }\n state.extra = here_op & 15;\n state.mode = LENEXT;\n /* falls through */\n case LENEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", state.length));\n state.was = state.length;\n state.mode = DIST;\n /* falls through */\n case DIST:\n for (;;) {\n here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if ((here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.distcode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n if (here_op & 64) {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break;\n }\n state.offset = here_val;\n state.extra = (here_op) & 15;\n state.mode = DISTEXT;\n /* falls through */\n case DISTEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n//#ifdef INFLATE_STRICT\n if (state.offset > state.dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracevv((stderr, \"inflate: distance %u\\n\", state.offset));\n state.mode = MATCH;\n /* falls through */\n case MATCH:\n if (left === 0) { break inf_leave; }\n copy = _out - left;\n if (state.offset > copy) { /* copy from window */\n copy = state.offset - copy;\n if (copy > state.whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// Trace((stderr, \"inflate.c too far\\n\"));\n// copy -= state.whave;\n// if (copy > state.length) { copy = state.length; }\n// if (copy > left) { copy = left; }\n// left -= copy;\n// state.length -= copy;\n// do {\n// output[put++] = 0;\n// } while (--copy);\n// if (state.length === 0) { state.mode = LEN; }\n// break;\n//#endif\n }\n if (copy > state.wnext) {\n copy -= state.wnext;\n from = state.wsize - copy;\n }\n else {\n from = state.wnext - copy;\n }\n if (copy > state.length) { copy = state.length; }\n from_source = state.window;\n }\n else { /* copy from output */\n from_source = output;\n from = put - state.offset;\n copy = state.length;\n }\n if (copy > left) { copy = left; }\n left -= copy;\n state.length -= copy;\n do {\n output[put++] = from_source[from++];\n } while (--copy);\n if (state.length === 0) { state.mode = LEN; }\n break;\n case LIT:\n if (left === 0) { break inf_leave; }\n output[put++] = state.length;\n left--;\n state.mode = LEN;\n break;\n case CHECK:\n if (state.wrap) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n // Use '|' instead of '+' to make sure that result is signed\n hold |= input[next++] << bits;\n bits += 8;\n }\n //===//\n _out -= left;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check =\n /*UPDATE_CHECK(state.check, put - _out, _out);*/\n (state.flags ? crc32_1(state.check, output, _out, put - _out) : adler32_1(state.check, output, _out, put - _out));\n\n }\n _out = left;\n // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too\n if ((state.wrap & 4) && (state.flags ? hold : zswap32(hold)) !== state.check) {\n strm.msg = 'incorrect data check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: check matches trailer\\n\"));\n }\n state.mode = LENGTH;\n /* falls through */\n case LENGTH:\n if (state.wrap && state.flags) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.total & 0xffffffff)) {\n strm.msg = 'incorrect length check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: length matches trailer\\n\"));\n }\n state.mode = DONE;\n /* falls through */\n case DONE:\n ret = Z_STREAM_END$1;\n break inf_leave;\n case BAD:\n ret = Z_DATA_ERROR$1;\n break inf_leave;\n case MEM:\n return Z_MEM_ERROR$1;\n case SYNC:\n /* falls through */\n default:\n return Z_STREAM_ERROR$1;\n }\n }\n\n // inf_leave <- here is real place for \"goto inf_leave\", emulated via \"break inf_leave\"\n\n /*\n Return from inflate(), updating the total counts and the check value.\n If there was no progress during the inflate() call, return a buffer\n error. Call updatewindow() to create and/or update the window state.\n Note: a memory error from inflate() is non-recoverable.\n */\n\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n\n if (state.wsize || (_out !== strm.avail_out && state.mode < BAD &&\n (state.mode < CHECK || flush !== Z_FINISH$1))) {\n if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) ;\n }\n _in -= strm.avail_in;\n _out -= strm.avail_out;\n strm.total_in += _in;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check = /*UPDATE_CHECK(state.check, strm.next_out - _out, _out);*/\n (state.flags ? crc32_1(state.check, output, _out, strm.next_out - _out) : adler32_1(state.check, output, _out, strm.next_out - _out));\n }\n strm.data_type = state.bits + (state.last ? 64 : 0) +\n (state.mode === TYPE ? 128 : 0) +\n (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);\n if (((_in === 0 && _out === 0) || flush === Z_FINISH$1) && ret === Z_OK$1) {\n ret = Z_BUF_ERROR;\n }\n return ret;\n};\n\n\nconst inflateEnd = (strm) => {\n\n if (inflateStateCheck(strm)) {\n return Z_STREAM_ERROR$1;\n }\n\n let state = strm.state;\n if (state.window) {\n state.window = null;\n }\n strm.state = null;\n return Z_OK$1;\n};\n\n\nconst inflateGetHeader = (strm, head) => {\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR$1; }\n\n /* save header structure */\n state.head = head;\n head.done = false;\n return Z_OK$1;\n};\n\n\nconst inflateSetDictionary = (strm, dictionary) => {\n const dictLength = dictionary.length;\n\n let state;\n let dictid;\n let ret;\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n state = strm.state;\n\n if (state.wrap !== 0 && state.mode !== DICT) {\n return Z_STREAM_ERROR$1;\n }\n\n /* check for correct dictionary identifier */\n if (state.mode === DICT) {\n dictid = 1; /* adler32(0, null, 0)*/\n /* dictid = adler32(dictid, dictionary, dictLength); */\n dictid = adler32_1(dictid, dictionary, dictLength, 0);\n if (dictid !== state.check) {\n return Z_DATA_ERROR$1;\n }\n }\n /* copy dictionary to window using updatewindow(), which will amend the\n existing dictionary if appropriate */\n ret = updatewindow(strm, dictionary, dictLength, dictLength);\n if (ret) {\n state.mode = MEM;\n return Z_MEM_ERROR$1;\n }\n state.havedict = 1;\n // Tracev((stderr, \"inflate: dictionary set\\n\"));\n return Z_OK$1;\n};\n\n\nvar inflateReset_1 = inflateReset;\nvar inflateReset2_1 = inflateReset2;\nvar inflateResetKeep_1 = inflateResetKeep;\nvar inflateInit_1 = inflateInit;\nvar inflateInit2_1 = inflateInit2;\nvar inflate_2$1 = inflate$2;\nvar inflateEnd_1 = inflateEnd;\nvar inflateGetHeader_1 = inflateGetHeader;\nvar inflateSetDictionary_1 = inflateSetDictionary;\nvar inflateInfo = 'pako inflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.inflateCodesUsed = inflateCodesUsed;\nmodule.exports.inflateCopy = inflateCopy;\nmodule.exports.inflateGetDictionary = inflateGetDictionary;\nmodule.exports.inflateMark = inflateMark;\nmodule.exports.inflatePrime = inflatePrime;\nmodule.exports.inflateSync = inflateSync;\nmodule.exports.inflateSyncPoint = inflateSyncPoint;\nmodule.exports.inflateUndermine = inflateUndermine;\nmodule.exports.inflateValidate = inflateValidate;\n*/\n\nvar inflate_1$2 = {\n\tinflateReset: inflateReset_1,\n\tinflateReset2: inflateReset2_1,\n\tinflateResetKeep: inflateResetKeep_1,\n\tinflateInit: inflateInit_1,\n\tinflateInit2: inflateInit2_1,\n\tinflate: inflate_2$1,\n\tinflateEnd: inflateEnd_1,\n\tinflateGetHeader: inflateGetHeader_1,\n\tinflateSetDictionary: inflateSetDictionary_1,\n\tinflateInfo: inflateInfo\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction GZheader() {\n /* true if compressed data believed to be text */\n this.text = 0;\n /* modification time */\n this.time = 0;\n /* extra flags (not used when writing a gzip file) */\n this.xflags = 0;\n /* operating system */\n this.os = 0;\n /* pointer to extra field or Z_NULL if none */\n this.extra = null;\n /* extra field length (valid if extra != Z_NULL) */\n this.extra_len = 0; // Actually, we don't need it in JS,\n // but leave for few code modifications\n\n //\n // Setup limits is not necessary because in js we should not preallocate memory\n // for inflate use constant limit in 65536 bytes\n //\n\n /* space at extra (only when reading header) */\n // this.extra_max = 0;\n /* pointer to zero-terminated file name or Z_NULL */\n this.name = '';\n /* space at name (only when reading header) */\n // this.name_max = 0;\n /* pointer to zero-terminated comment or Z_NULL */\n this.comment = '';\n /* space at comment (only when reading header) */\n // this.comm_max = 0;\n /* true if there was or will be a header crc */\n this.hcrc = 0;\n /* true when done reading gzip header (not used when writing a gzip file) */\n this.done = false;\n}\n\nvar gzheader = GZheader;\n\nconst toString = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH, Z_FINISH,\n Z_OK, Z_STREAM_END, Z_NEED_DICT, Z_STREAM_ERROR, Z_DATA_ERROR, Z_MEM_ERROR\n} = constants$2;\n\n/* ===========================================================================*/\n\n\n/**\n * class Inflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[inflate]]\n * and [[inflateRaw]].\n **/\n\n/* internal\n * inflate.chunks -> Array\n *\n * Chunks of output data, if [[Inflate#onData]] not overridden.\n **/\n\n/**\n * Inflate.result -> Uint8Array|String\n *\n * Uncompressed result, generated by default [[Inflate#onData]]\n * and [[Inflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Inflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Inflate.err -> Number\n *\n * Error code after inflate finished. 0 (Z_OK) on success.\n * Should be checked if broken data possible.\n **/\n\n/**\n * Inflate.msg -> String\n *\n * Error message, if [[Inflate.err]] != 0\n **/\n\n\n/**\n * new Inflate(options)\n * - options (Object): zlib inflate options.\n *\n * Creates new inflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `windowBits`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw inflate\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n * By default, when no options set, autodetect deflate/gzip data format via\n * wrapper header.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * const chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const inflate = new pako.Inflate({ level: 3});\n *\n * inflate.push(chunk1, false);\n * inflate.push(chunk2, true); // true -> last chunk\n *\n * if (inflate.err) { throw new Error(inflate.err); }\n *\n * console.log(inflate.result);\n * ```\n **/\nfunction Inflate$1(options) {\n this.options = common.assign({\n chunkSize: 1024 * 64,\n windowBits: 15,\n to: ''\n }, options || {});\n\n const opt = this.options;\n\n // Force window size for `raw` data, if not set directly,\n // because we have no header for autodetect.\n if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {\n opt.windowBits = -opt.windowBits;\n if (opt.windowBits === 0) { opt.windowBits = -15; }\n }\n\n // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate\n if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&\n !(options && options.windowBits)) {\n opt.windowBits += 32;\n }\n\n // Gzip header has no info about windows size, we can do autodetect only\n // for deflate. So, if window size not set, force it to max when gzip possible\n if ((opt.windowBits > 15) && (opt.windowBits < 48)) {\n // bit 3 (16) -> gzipped data\n // bit 4 (32) -> autodetect gzip/deflate\n if ((opt.windowBits & 15) === 0) {\n opt.windowBits |= 15;\n }\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new zstream();\n this.strm.avail_out = 0;\n\n let status = inflate_1$2.inflateInit2(\n this.strm,\n opt.windowBits\n );\n\n if (status !== Z_OK) {\n throw new Error(messages[status]);\n }\n\n this.header = new gzheader();\n\n inflate_1$2.inflateGetHeader(this.strm, this.header);\n\n // Setup dictionary\n if (opt.dictionary) {\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n opt.dictionary = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n opt.dictionary = new Uint8Array(opt.dictionary);\n }\n if (opt.raw) { //In raw mode we need to set the dictionary early\n status = inflate_1$2.inflateSetDictionary(this.strm, opt.dictionary);\n if (status !== Z_OK) {\n throw new Error(messages[status]);\n }\n }\n }\n}\n\n/**\n * Inflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer): input data\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE\n * flush modes. See constants. Skipped or `false` means Z_NO_FLUSH,\n * `true` means Z_FINISH.\n *\n * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with\n * new output chunks. Returns `true` on success. If end of stream detected,\n * [[Inflate#onEnd]] will be called.\n *\n * `flush_mode` is not needed for normal operation, because end of stream\n * detected automatically. You may try to use it for advanced things, but\n * this functionality was not tested.\n *\n * On fail call [[Inflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nInflate$1.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n const dictionary = this.options.dictionary;\n let status, _flush_mode, last_avail_out;\n\n if (this.ended) return false;\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;\n\n // Convert data if needed\n if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n status = inflate_1$2.inflate(strm, _flush_mode);\n\n if (status === Z_NEED_DICT && dictionary) {\n status = inflate_1$2.inflateSetDictionary(strm, dictionary);\n\n if (status === Z_OK) {\n status = inflate_1$2.inflate(strm, _flush_mode);\n } else if (status === Z_DATA_ERROR) {\n // Replace code with more verbose\n status = Z_NEED_DICT;\n }\n }\n\n // Skip snyc markers if more data follows and not raw mode\n while (strm.avail_in > 0 &&\n status === Z_STREAM_END &&\n strm.state.wrap > 0 &&\n data[strm.next_in] !== 0)\n {\n inflate_1$2.inflateReset(strm);\n status = inflate_1$2.inflate(strm, _flush_mode);\n }\n\n switch (status) {\n case Z_STREAM_ERROR:\n case Z_DATA_ERROR:\n case Z_NEED_DICT:\n case Z_MEM_ERROR:\n this.onEnd(status);\n this.ended = true;\n return false;\n }\n\n // Remember real `avail_out` value, because we may patch out buffer content\n // to align utf8 strings boundaries.\n last_avail_out = strm.avail_out;\n\n if (strm.next_out) {\n if (strm.avail_out === 0 || status === Z_STREAM_END) {\n\n if (this.options.to === 'string') {\n\n let next_out_utf8 = strings.utf8border(strm.output, strm.next_out);\n\n let tail = strm.next_out - next_out_utf8;\n let utf8str = strings.buf2string(strm.output, next_out_utf8);\n\n // move tail & realign counters\n strm.next_out = tail;\n strm.avail_out = chunkSize - tail;\n if (tail) strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);\n\n this.onData(utf8str);\n\n } else {\n this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));\n }\n }\n }\n\n // Must repeat iteration if out buffer is full\n if (status === Z_OK && last_avail_out === 0) continue;\n\n // Finalize if end of stream reached.\n if (status === Z_STREAM_END) {\n status = inflate_1$2.inflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return true;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Inflate#onData(chunk) -> Void\n * - chunk (Uint8Array|String): output data. When string output requested,\n * each chunk will be string.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nInflate$1.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Inflate#onEnd(status) -> Void\n * - status (Number): inflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called either after you tell inflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nInflate$1.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK) {\n if (this.options.to === 'string') {\n this.result = this.chunks.join('');\n } else {\n this.result = common.flattenChunks(this.chunks);\n }\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * inflate(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Decompress `data` with inflate/ungzip and `options`. Autodetect\n * format via wrapper header by default. That's why we don't provide\n * separate `ungzip` method.\n *\n * Supported options are:\n *\n * - windowBits\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako');\n * const input = pako.deflate(new Uint8Array([1,2,3,4,5,6,7,8,9]));\n * let output;\n *\n * try {\n * output = pako.inflate(input);\n * } catch (err) {\n * console.log(err);\n * }\n * ```\n **/\nfunction inflate$1(input, options) {\n const inflator = new Inflate$1(options);\n\n inflator.push(input);\n\n // That will never happens, if you don't cheat with options :)\n if (inflator.err) throw inflator.msg || messages[inflator.err];\n\n return inflator.result;\n}\n\n\n/**\n * inflateRaw(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * The same as [[inflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction inflateRaw$1(input, options) {\n options = options || {};\n options.raw = true;\n return inflate$1(input, options);\n}\n\n\n/**\n * ungzip(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Just shortcut to [[inflate]], because it autodetects format\n * by header.content. Done for convenience.\n **/\n\n\nvar Inflate_1$1 = Inflate$1;\nvar inflate_2 = inflate$1;\nvar inflateRaw_1$1 = inflateRaw$1;\nvar ungzip$1 = inflate$1;\nvar constants = constants$2;\n\nvar inflate_1$1 = {\n\tInflate: Inflate_1$1,\n\tinflate: inflate_2,\n\tinflateRaw: inflateRaw_1$1,\n\tungzip: ungzip$1,\n\tconstants: constants\n};\n\nconst { Deflate, deflate, deflateRaw, gzip } = deflate_1$1;\n\nconst { Inflate, inflate, inflateRaw, ungzip } = inflate_1$1;\n\n\n\nvar Deflate_1 = Deflate;\nvar deflate_1 = deflate;\nvar deflateRaw_1 = deflateRaw;\nvar gzip_1 = gzip;\nvar Inflate_1 = Inflate;\nvar inflate_1 = inflate;\nvar inflateRaw_1 = inflateRaw;\nvar ungzip_1 = ungzip;\nvar constants_1 = constants$2;\n\nvar pako = {\n\tDeflate: Deflate_1,\n\tdeflate: deflate_1,\n\tdeflateRaw: deflateRaw_1,\n\tgzip: gzip_1,\n\tInflate: Inflate_1,\n\tinflate: inflate_1,\n\tinflateRaw: inflateRaw_1,\n\tungzip: ungzip_1,\n\tconstants: constants_1\n};\n\nexport { Deflate_1 as Deflate, Inflate_1 as Inflate, constants_1 as constants, pako as default, deflate_1 as deflate, deflateRaw_1 as deflateRaw, gzip_1 as gzip, inflate_1 as inflate, inflateRaw_1 as inflateRaw, ungzip_1 as ungzip };\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function inflateDTX(dtxDataDeflated: DTXDataDeflated): DTXData_v1 {\n\n function inflate(array:any, options?: any):any {\n return (array.length === 0) ? [] : (pako.inflate(array, options)).buffer;\n }\n\n return {\n positions: new Uint16Array(inflate(dtxDataDeflated.positions)),\n colors: new Uint8Array(inflate(dtxDataDeflated.colors)),\n indices: new Uint32Array(inflate(dtxDataDeflated.indices)),\n edgeIndices: new Uint32Array(inflate(dtxDataDeflated.edgeIndices)),\n aabbs: new Float32Array(inflate(dtxDataDeflated.aabbs)),\n eachGeometryPositionsBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryPositionsBase)),\n eachGeometryColorsBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryColorsBase)),\n eachGeometryIndicesBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryIndicesBase)),\n eachGeometryEdgeIndicesBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryEdgeIndicesBase)),\n eachGeometryPrimitiveType: new Uint8Array(inflate(dtxDataDeflated.eachGeometryPrimitiveType)),\n eachGeometryAABBBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryAABBBase)),\n matrices: new Float64Array(inflate(dtxDataDeflated.matrices)),\n eachMeshGeometriesBase: new Uint32Array(inflate(dtxDataDeflated.eachMeshGeometriesBase)),\n eachMeshMatricesBase: new Uint32Array(inflate(dtxDataDeflated.eachMeshMatricesBase)),\n eachMeshMaterialAttributes: new Uint8Array(inflate(dtxDataDeflated.eachMeshMaterialAttributes)),\n eachObjectId: JSON.parse(pako.inflate(dtxDataDeflated.eachObjectId, {to: 'string'})),\n eachObjectMeshesBase: new Uint32Array(inflate(dtxDataDeflated.eachObjectMeshesBase))\n };\n}\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\n\n/**\n * @private\n */\nexport function unpackDTX(arrayBuffer: ArrayBuffer): DTXDataDeflated {\n\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const dtxVersion = dataView.getUint32(0, true);\n const numElements = dataView.getUint32(4, true);\n\n const elements = [];\n let byteOffset = (numElements + 2) * 4;\n for (let i = 0; i < numElements; i++) {\n const elementSize = dataView.getUint32((i + 2) * 4, true);\n elements.push(dataArray.subarray(byteOffset, byteOffset + elementSize));\n byteOffset += elementSize;\n }\n\n let i = 0;\n\n return {\n positions: elements[i++],\n colors: elements[i++],\n indices: elements[i++],\n edgeIndices: elements[i++],\n aabbs: elements[i++],\n eachGeometryPositionsBase: elements[i++],\n eachGeometryColorsBase: elements[i++],\n eachGeometryIndicesBase: elements[i++],\n eachGeometryEdgeIndicesBase: elements[i++],\n eachGeometryPrimitiveType: elements[i++],\n eachGeometryAABBBase: elements[i++],\n matrices: elements[i++],\n eachMeshGeometriesBase: elements[i++],\n eachMeshMatricesBase: elements[i++],\n eachMeshMaterialAttributes: elements[i++],\n eachObjectId: elements[i++],\n eachObjectMeshesBase: elements[i++]\n };\n}\n", "import {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport type {SceneGeometryCompressedParams, SceneModel} from \"@xeokit/scene\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * @private\n */\nexport function dtxToModel(params: {\n dtxData: DTXData_v1,\n sceneModel: SceneModel\n}): void {\n\n const dtxData = params.dtxData;\n const sceneModel = params.sceneModel;\n\n const numGeometries = dtxData.eachGeometryPositionsBase.length;\n const numMeshes = dtxData.eachMeshGeometriesBase.length;\n const numObjects = dtxData.eachObjectMeshesBase.length;\n\n let nextMeshId = 0;\n\n const geometryCreated: { [key: string]: boolean } = {};\n\n for (let objectIdx = 0; objectIdx < numObjects; objectIdx++) {\n const objectId = dtxData.eachObjectId[objectIdx];\n const lastObjectIdx = (numObjects - 1);\n const atLastObject = (objectIdx === lastObjectIdx);\n const firstMeshIdx = dtxData.eachObjectMeshesBase [objectIdx];\n const lastMeshIdx = atLastObject ? (numMeshes - 1) : (dtxData.eachObjectMeshesBase[objectIdx + 1] - 1);\n const meshIds = [];\n for (let meshIdx = firstMeshIdx; meshIdx <= lastMeshIdx; meshIdx++) {\n const geometryIdx = dtxData.eachMeshGeometriesBase[meshIdx];\n const meshId = `${nextMeshId++}`;\n const color = decompressColor(dtxData.eachMeshMaterialAttributes.subarray((meshIdx * 4), (meshIdx * 4) + 3));\n const opacity = dtxData.eachMeshMaterialAttributes[(meshIdx * 4) + 3] / 255.0;\n const matricesBase = dtxData.eachMeshMatricesBase[meshIdx];\n const matrix = dtxData.matrices.slice(matricesBase, matricesBase + 16);\n const geometryId = `${geometryIdx}`;\n if (!geometryCreated[geometryId]) {\n const geometryCompressedParams = {\n id: geometryId\n };\n const primitiveType = dtxData.eachGeometryPrimitiveType[geometryIdx];\n switch (primitiveType) {\n case 0:\n geometryCompressedParams.primitive = TrianglesPrimitive;\n break;\n case 1:\n geometryCompressedParams.primitive = SolidPrimitive;\n break;\n case 2:\n geometryCompressedParams.primitive = SurfacePrimitive;\n break;\n case 3:\n geometryCompressedParams.primitive = LinesPrimitive;\n break;\n case 5:\n geometryCompressedParams.primitive = PointsPrimitive;\n break;\n }\n const aabbsBase = dtxData.eachGeometryAABBBase[geometryIdx];\n geometryCompressedParams.aabb = dtxData.aabbs.slice(aabbsBase, aabbsBase + 6);\n let geometryValid = false;\n const atLastGeometry = (geometryIdx === (numGeometries - 1));\n switch (geometryCompressedParams.primitive) {\n case TrianglesPrimitive:\n case SurfacePrimitive:\n case SolidPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryCompressedParams.indices = dtxData.indices.subarray(dtxData.eachGeometryIndicesBase [geometryIdx], atLastGeometry ? dtxData.indices.length : dtxData.eachGeometryIndicesBase [geometryIdx + 1]);\n geometryCompressedParams.edgeIndices = dtxData.edgeIndices.subarray(dtxData.eachGeometryEdgeIndicesBase [geometryIdx], atLastGeometry ? dtxData.edgeIndices.length : dtxData.eachGeometryEdgeIndicesBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0 && geometryCompressedParams.indices.length > 0);\n break;\n case PointsPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0);\n break;\n case LinesPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryCompressedParams.indices = dtxData.indices.subarray(dtxData.eachGeometryIndicesBase [geometryIdx], atLastGeometry ? dtxData.indices.length : dtxData.eachGeometryIndicesBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0 && geometryCompressedParams.indices.length > 0);\n break;\n default:\n continue;\n }\n if (geometryValid) {\n sceneModel.createGeometryCompressed(geometryCompressedParams);\n geometryCreated[geometryId] = true;\n }\n }\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n matrix,\n color,\n opacity\n });\n meshIds.push(meshId);\n }\n if (meshIds.length > 0) {\n sceneModel.createObject({\n id: objectId,\n meshIds\n });\n }\n }\n}\n\nconst decompressColor = (function () {\n const floatColor = new Float32Array(3);\n return function (intColor: FloatArrayParam) {\n floatColor[0] = intColor[0] / 255;\n floatColor[1] = intColor[1] / 255;\n floatColor[2] = intColor[2] / 255;\n return floatColor;\n };\n})();\n\n", "import {inflateDTX} from \"./inflateDTX\";\nimport {unpackDTX} from \"./unpackDTX\";\nimport {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {dtxToModel} from \"./dtxToModel\";\n\n/**\n * @private\n */\nexport function readDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n dtxToModel({\n dtxData: inflateDTX(unpackDTX(fileData)),\n sceneModel\n });\n return Promise.resolve();\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {readDTX} from \"./versions/v1/readDTX\"\n\nconst parsers = {\n 1: readDTX\n};\n\n/**\n * Imports [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data from an ArrayBuffer\n * into a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and\n * {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data\n * @param params.sceneModel - SceneModel to load into.\n * @returns {Promise} Resolves when [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n */\nexport function loadDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n return readDTX(params);\n}\n\n\n/*\nexport function loadDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n const arrayBuffer = params.fileData;\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const dtxVersion = dataView.getUint32(0, true);\n const parser = parsers[dtxVersion];\n if (!parser) {\n return Promise.reject(new SDKError(`Unsupported DTX file version: ${dtxVersion} - supports versions are [${Object.keys(parsers)}]`));\n }\n return readDTX({\n sceneModel\n });\n}\n */\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function deflateDTX(dtxData: DTXData_v1, options: { deflateLevel: 0 | 1 | -1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 }): DTXDataDeflated {\n const pakoOptions: pako.DeflateFunctionOptions = {/*level: options.deflateLevel*/};\n return {\n positions: pako.deflate(dtxData.positions.buffer, pakoOptions),\n colors: pako.deflate(dtxData.colors.buffer, pakoOptions),\n indices: pako.deflate(dtxData.indices.buffer, pakoOptions),\n edgeIndices: pako.deflate(dtxData.edgeIndices.buffer, pakoOptions),\n aabbs: pako.deflate(dtxData.aabbs.buffer, pakoOptions),\n eachGeometryPositionsBase: pako.deflate(dtxData.eachGeometryPositionsBase.buffer, pakoOptions),\n eachGeometryColorsBase: pako.deflate(dtxData.eachGeometryColorsBase.buffer, pakoOptions),\n eachGeometryIndicesBase: pako.deflate(dtxData.eachGeometryIndicesBase.buffer, pakoOptions),\n eachGeometryEdgeIndicesBase: pako.deflate(dtxData.eachGeometryEdgeIndicesBase.buffer, pakoOptions),\n eachGeometryPrimitiveType: pako.deflate(dtxData.eachGeometryPrimitiveType.buffer, pakoOptions),\n eachGeometryAABBBase: pako.deflate(dtxData.eachGeometryAABBBase.buffer, pakoOptions),\n matrices: pako.deflate(dtxData.matrices.buffer, pakoOptions),\n eachMeshGeometriesBase: pako.deflate(dtxData.eachMeshGeometriesBase.buffer, pakoOptions),\n eachMeshMatricesBase: pako.deflate(dtxData.eachMeshMatricesBase.buffer, pakoOptions),\n eachMeshMaterialAttributes: pako.deflate(dtxData.eachMeshMaterialAttributes.buffer, pakoOptions),\n eachObjectId: pako.deflate(JSON.stringify(dtxData.eachObjectId)\n .replace(/[\\u007F-\\uFFFF]/g, function (chr) { // Produce only ASCII-chars, so that the data can be inflated later\n return \"\\\\u\" + (\"0000\" + chr.charCodeAt(0).toString(16)).substr(-4)\n }), pakoOptions),\n eachObjectMeshesBase: pako.deflate(dtxData.eachObjectMeshesBase.buffer, pakoOptions)\n };\n}\n", "/**\n * Provides info on the [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) generated by {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n */\nexport const DTX_INFO = {\n\n /**\n * The [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) version generated by {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * @property dtxVersion\n * @type {number}\n */\n dtxVersion: 1\n};\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport {DTX_INFO} from \"./DTX_INFO\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport {isIdentityMat4} from \"@xeokit/matrix\";\n\nconst DTX_VERSION = DTX_INFO.dtxVersion;\nconst NUM_MATERIAL_ATTRIBUTES = 4;\n\n/**\n * @private\n */\nexport function modelToDTX(params: {\n sceneModel: SceneModel\n}): DTXData_v1 {\n\n const sceneModel = params.sceneModel;\n\n const geometriesList = Object.values(sceneModel.geometries);\n const meshesList = Object.values(sceneModel.meshes);\n const objectsList = Object.values(sceneModel.objects);\n\n const numGeometries = geometriesList.length;\n const numMeshes = meshesList.length;\n const numObjects = objectsList.length;\n\n let identityMatrixAdded = false;\n let identityMatrixBase = 0;\n\n let sizePositions = 0;\n let sizeColors = 0;\n let sizeIndices = 0;\n let sizeEdgeIndices = 0;\n\n const geometryIndices: { [key: string]: number } = {};\n\n for (let geometryIdx = 0; geometryIdx < numGeometries; geometryIdx++) {\n const geometry = geometriesList [geometryIdx];\n if (geometry) {\n if (geometry.positionsCompressed) {\n sizePositions += geometry.positionsCompressed.length;\n if (geometry.indices) {\n sizeIndices += geometry.indices.length;\n }\n if (geometry.edgeIndices) {\n sizeEdgeIndices += geometry.edgeIndices.length;\n }\n if (geometry.colorsCompressed) {\n sizeColors += geometry.colorsCompressed.length;\n }\n }\n }\n }\n\n const dtxData = {\n positions: new Uint16Array(sizePositions),\n colors: new Uint8Array(sizeColors),\n indices: new Uint32Array(sizeIndices),\n edgeIndices: new Uint32Array(sizeEdgeIndices),\n aabbs: null,\n eachGeometryPositionsBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.positions. Every primitive type has positions.\n eachGeometryColorsBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.colors. If the next geometry has the same index, then this geometry has no colors.\n eachGeometryIndicesBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.indices. If the next geometry has the same index, then this geometry has no indices.\n eachGeometryEdgeIndicesBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.edgeIndices. If the next geometry has the same index, then this geometry has no edge indices.\n eachGeometryPrimitiveType: new Uint8Array(numGeometries), // Primitive type for each geometry (0=solid triangles, 1=surface triangles, 2=lines, 3=points)\n eachGeometryAABBBase: new Uint32Array(numGeometries), // Positions dequantization matrices\n matrices: null, // Modeling matrices\n eachMeshGeometriesBase: new Uint32Array(numMeshes), // For each mesh, an index into the eachGeometry* arrays\n eachMeshMatricesBase: new Uint32Array(numMeshes), // For each mesh that shares its geometry, an index to its first element in dtxData.matrices, to indicate the modeling matrix that transforms the shared geometry Local-space vertex positions. This is ignored for meshes that don't share geometries, because the vertex positions of non-shared geometries are pre-transformed into World-space.\n eachMeshMaterialAttributes: new Uint8Array(numMeshes * NUM_MATERIAL_ATTRIBUTES), // For each mesh, an RGBA integer color of format [0..255, 0..255, 0..255, 0..255], and PBR metallic and roughness factors, of format [0..255, 0..255]\n eachObjectId: [], // For each object, an ID string\n eachObjectMeshesBase: new Uint32Array(numObjects) // For each object, the index of the first element of meshes used by the object\n };\n\n let positionsBase = 0;\n let colorsBase = 0;\n let indicesBase = 0;\n let edgeIndicesBase = 0;\n let aabbsBase = 0;\n\n const aabbIdxMap = {};\n\n const aabbs = [];\n const matrices = [];\n\n for (let geometryIdx = 0; geometryIdx < numGeometries; geometryIdx++) {\n const geometry = geometriesList[geometryIdx];\n let primitiveType;\n switch (geometry.primitive) {\n case TrianglesPrimitive:\n primitiveType = 0;\n break;\n case SolidPrimitive:\n primitiveType = 1;\n break;\n case SurfacePrimitive:\n primitiveType = 2;\n break;\n case LinesPrimitive:\n primitiveType = 3;\n break;\n case PointsPrimitive:\n primitiveType = 4;\n break;\n }\n dtxData.eachGeometryPrimitiveType [geometryIdx] = primitiveType;\n const aabb = geometry.aabb;\n const aabbHash = `${aabb[0]}-${aabb[1]}-${aabb[2]}-${aabb[3]}-${aabb[4]}-${aabb[5]}`;\n let aabbIdx = aabbIdxMap[aabbHash];\n if (aabbIdx === undefined) {\n aabbIdx = aabbsBase;\n aabbIdxMap[aabbHash] = aabbIdx;\n aabbs.push(...aabb);\n aabbsBase += 6;\n }\n dtxData.eachGeometryAABBBase [geometryIdx] = aabbIdx;\n dtxData.eachGeometryPositionsBase [geometryIdx] = positionsBase;\n dtxData.eachGeometryColorsBase [geometryIdx] = colorsBase;\n dtxData.positions.set(geometry.positionsCompressed, positionsBase);\n positionsBase += geometry.positionsCompressed.length;\n if (geometry.indices) {\n dtxData.indices.set(geometry.indices, indicesBase);\n dtxData.eachGeometryIndicesBase [geometryIdx] = indicesBase;\n indicesBase += geometry.indices.length;\n }\n if (geometry.edgeIndices) {\n dtxData.edgeIndices.set(geometry.edgeIndices, edgeIndicesBase);\n dtxData.eachGeometryEdgeIndicesBase [geometryIdx] = edgeIndicesBase;\n edgeIndicesBase += geometry.edgeIndices.length;\n }\n if (geometry.colorsCompressed) {\n dtxData.colors.set(geometry.colorsCompressed, colorsBase);\n dtxData.eachGeometryColorsBase [geometryIdx] = colorsBase;\n colorsBase += geometry.colorsCompressed.length;\n }\n geometryIndices[geometry.id] = geometryIdx;\n }\n\n // Meshes and objects\n\n let eachMeshMaterialAttributesBase = 0;\n let matricesBase = 0;\n let meshesBase = 0;\n for (let objectIdx = 0; objectIdx < numObjects; objectIdx++) {\n const object = objectsList[objectIdx];\n dtxData.eachObjectId[objectIdx] = object.id;\n dtxData.eachObjectMeshesBase[objectIdx] = meshesBase;\n for (let objectMeshIdx = 0; objectMeshIdx < object.meshes.length; objectMeshIdx++) {\n const mesh = object.meshes[objectMeshIdx];\n dtxData.eachMeshGeometriesBase [meshesBase] = geometryIndices[mesh.geometry.id];\n if (isIdentityMat4(mesh.matrix)) {\n if (!identityMatrixAdded) {\n matrices.push(...mesh.rtcMatrix);\n dtxData.eachMeshMatricesBase [meshesBase] = matricesBase;\n identityMatrixBase = matricesBase;\n matricesBase += 16;\n identityMatrixAdded = true;\n } else {\n dtxData.eachMeshMatricesBase [meshesBase] = identityMatrixBase;\n }\n } else {\n matrices.push(...mesh.matrix);\n dtxData.eachMeshMatricesBase [meshesBase] = matricesBase;\n matricesBase += 16;\n }\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[0] * 255); // Color RGB\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[1] * 255);\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[2] * 255);\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.opacity * 255); // Opacity\n meshesBase++;\n }\n }\n\n dtxData.aabbs = new Float32Array(aabbs);\n dtxData.matrices = new Float64Array(matrices);\n\n return dtxData;\n}\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport {DTX_INFO} from \"./DTX_INFO\";\n\n/**\n * @private\n */\nexport function packDTX(deflatedData: DTXDataDeflated): ArrayBuffer {\n return toArrayBuffer([\n deflatedData.positions,\n deflatedData.colors,\n deflatedData.indices,\n deflatedData.edgeIndices,\n deflatedData.aabbs,\n deflatedData.eachGeometryPositionsBase,\n deflatedData.eachGeometryColorsBase,\n deflatedData.eachGeometryIndicesBase,\n deflatedData.eachGeometryEdgeIndicesBase,\n deflatedData.eachGeometryPrimitiveType,\n deflatedData.eachGeometryAABBBase,\n deflatedData.matrices,\n deflatedData.eachMeshGeometriesBase,\n deflatedData.eachMeshMatricesBase,\n deflatedData.eachMeshMaterialAttributes,\n deflatedData.eachObjectId,\n deflatedData.eachObjectMeshesBase\n ]);\n}\n\nfunction toArrayBuffer(elements: Buffer[]): ArrayBuffer {\n const indexData = new Uint32Array(elements.length + 2);\n indexData[0] = DTX_INFO.dtxVersion;\n indexData [1] = elements.length; // Stored Data 1.1: number of stored elements\n let dataLen = 0; // Stored Data 1.2: length of stored elements\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i];\n const elementsize = element.length;\n indexData[i + 2] = elementsize;\n dataLen += elementsize;\n }\n const indexBuf = new Uint8Array(indexData.buffer);\n const dataArray = new Uint8Array(indexBuf.length + dataLen);\n dataArray.set(indexBuf);\n let offset = indexBuf.length;\n for (let i = 0, len = elements.length; i < len; i++) { // Stored Data 2: the elements themselves\n const element = elements[i];\n dataArray.set(element, offset);\n offset += element.length;\n }\n return dataArray.buffer;\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {deflateDTX} from \"./deflateDTX\";\nimport {modelToDTX} from \"./modelToDTX\";\nimport {packDTX} from \"./packDTX\";\n\n/** @private\n */\nexport function writeDTX(params: {\n sceneModel: SceneModel\n}): ArrayBuffer {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!params.sceneModel.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n return packDTX(\n deflateDTX(\n modelToDTX({\n sceneModel: params.sceneModel\n }), {\n deflateLevel: 0\n }));\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {writeDTX} from \"./versions/v1/writeDTX\"; // Always the latest\n\n/**\n * Exports a {@link @xeokit/scene!SceneModel | SceneModel} to an ArrayBuffer\n * containing [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data.\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n *\n * @param params\n * @param params.sceneModel - The SceneModel to export to DTX.\n * @returns The [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data in an ArrayBuffer.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has not yet been built.\n */\nexport function saveDTX(params: {\n sceneModel: SceneModel\n}): ArrayBuffer {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!params.sceneModel.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n return writeDTX({\n sceneModel: params.sceneModel\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Flas.svg)](https://badge.fury.io/js/%40xeokit%2Flas)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/las/badge)](https://www.jsdelivr.com/package/npm/@xeokit/las)\n *\n * \n *\n *
\n *\n * # xeokit LAS/LAZ Importer\n *\n * ---\n *\n * ### *Import 3D lidar point cloud datasets*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [LAS](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#las), a\n * file format for the interchange of 3-dimensional point cloud data.\n *\n * The LAS file format is a standardized binary format used for storing and sharing 3D point cloud data from LiDAR\n * scanners. It includes header information and point data attributes, supports compressed and uncompressed data, and\n * is widely used in surveying, mapping, and other industries.\n *\n * To import an LAS model into xeokit, use the {@link loadLAS} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/las\n * ````\n *\n * ## Usage\n *\n * The example below shows how to use {@link @xeokit/las!loadLAS | loadLAS} in context.\n *\n * In this example, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry\n * and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials.\n *\n * We will then use\n * {@link @xeokit/las!loadLAS | loadLAS} to load an LAS/LAZ file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadLAS} from \"@xeokit/las\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n * fetch(\"model.las\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadLAS({\n * fileData,\n * sceneModel\n *\n * }).then(() => {\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading LAS/LAZ file: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }).catch(message => {\n * console.error(`Error initializing WebIFC.IfcAPI: ${message}`);\n * });\n * }\n * ````\n *\n * @module @xeokit/las\n */\nexport * from \"./loadLAS\";\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parseFromContext(data, loaders, options, context) {\n return context._parse(data, loaders, options, context);\n}\n/**\n * Parses `data` synchronously using the specified loader, parse function provided via the loader context\n */\nexport function parseSyncFromContext(data, loader, options, context) {\n if (!context._parseSync) {\n throw new Error('parseSync');\n }\n return context._parseSync(data, loader, options, context);\n}\n/**\n * Parses `data` synchronously using a specified loader, parse function provided via the loader context\n */\nexport async function parseInBatchesFromContext(data, loader, options, context) {\n if (!context._parseInBatches) {\n throw new Error('parseInBatches');\n }\n return context._parseInBatches(data, loader, options, context);\n}\n", "/**\n * Throws an `Error` with the optional `message` if `condition` is falsy\n * @note Replacement for the external assert method to reduce bundle size\n */\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'loader assertion failed.');\n }\n}\n", "// Purpose: include this in your module to avoid\n// dependencies on micro modules like 'global' and 'is-browser';\n/* eslint-disable no-restricted-globals */\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global,\n document: typeof document !== 'undefined' && document\n};\nconst self_ = globals.self || globals.window || globals.global || {};\nconst window_ = globals.window || globals.self || globals.global || {};\nconst global_ = globals.global || globals.self || globals.window || {};\nconst document_ = globals.document || {};\nexport { self_ as self, window_ as window, global_ as global, document_ as document };\n/** true if running in a browser */\nexport const isBrowser = \n// @ts-ignore process does not exist on browser\nBoolean(typeof process !== 'object' || String(process) !== '[object process]' || process.browser);\n/** true if running in a worker thread */\nexport const isWorker = typeof importScripts === 'function';\n// Extract node major version\nconst matches = typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);\n/** Major Node version (as a number) */\nexport const nodeVersion = (matches && parseFloat(matches[1])) || 0;\n", "// Do not name these variables the same as the global objects - will break bundling\nconst global_ = globalThis;\nconst window_ = globalThis;\nconst document_ = globalThis.document || {};\nconst process_ = globalThis.process || {};\nconst console_ = globalThis.console;\nconst navigator_ = globalThis.navigator || {};\nexport { global_ as global, global_ as self, window_ as window, document_ as document, process_ as process, console_ as console, navigator_ as navigator };\n", "// based on https://github.com/cheton/is-electron\n// https://github.com/electron/electron/issues/2288\n/* eslint-disable complexity */\nexport function isElectron(mockUserAgent) {\n // Renderer process\n // @ts-expect-error\n if (typeof window !== 'undefined' && window.process?.type === 'renderer') {\n return true;\n }\n // Main process\n // eslint-disable-next-line\n if (typeof process !== 'undefined' && Boolean(process.versions?.['electron'])) {\n return true;\n }\n // Detect the user agent when the `nodeIntegration` option is set to true\n const realUserAgent = typeof navigator !== 'undefined' && navigator.userAgent;\n const userAgent = mockUserAgent || realUserAgent;\n return Boolean(userAgent && userAgent.indexOf('Electron') >= 0);\n}\n", "// This function is needed in initialization stages,\n// make sure it can be imported in isolation\nimport { isElectron } from \"./is-electron.js\";\n/** Check if in browser by duck-typing Node context */\nexport function isBrowser() {\n const isNode = \n // @ts-expect-error\n typeof process === 'object' && String(process) === '[object process]' && !process?.browser;\n return !isNode || isElectron();\n}\n", "// Extract injected version from package.json (injected by babel plugin)\n// @ts-expect-error\nexport const VERSION = typeof \"4.0.7\" !== 'undefined' ? \"4.0.7\" : 'untranspiled source';\n// ENVIRONMENT\nexport { self, window, global, document, process, console } from \"./lib/globals.js\";\nexport { isBrowser } from \"./lib/is-browser.js\";\nexport { getBrowser, isMobile } from \"./lib/get-browser.js\";\nexport { isElectron } from \"./lib/is-electron.js\";\n// ENVIRONMENT'S ASSERT IS 5-15KB, SO WE PROVIDE OUR OWN\nexport { assert } from \"./utils/assert.js\";\n// TODO - wish we could just export a constant\n// export const isBrowser = checkIfBrowser();\n", "// probe.gl, MIT license\nfunction getStorage(type) {\n try {\n const storage = window[type];\n const x = '__storage_test__';\n storage.setItem(x, x);\n storage.removeItem(x);\n return storage;\n }\n catch (e) {\n return null;\n }\n}\n// Store keys in local storage via simple interface\nexport class LocalStorage {\n constructor(id, defaultConfig, type = 'sessionStorage') {\n this.storage = getStorage(type);\n this.id = id;\n this.config = defaultConfig;\n this._loadConfiguration();\n }\n getConfiguration() {\n return this.config;\n }\n setConfiguration(configuration) {\n Object.assign(this.config, configuration);\n if (this.storage) {\n const serialized = JSON.stringify(this.config);\n this.storage.setItem(this.id, serialized);\n }\n }\n // Get config from persistent store, if available\n _loadConfiguration() {\n let configuration = {};\n if (this.storage) {\n const serializedConfiguration = this.storage.getItem(this.id);\n configuration = serializedConfiguration ? JSON.parse(serializedConfiguration) : {};\n }\n Object.assign(this.config, configuration);\n return this;\n }\n}\n", "// probe.gl, MIT license\n/**\n * Format time\n */\nexport function formatTime(ms) {\n let formatted;\n if (ms < 10) {\n formatted = `${ms.toFixed(2)}ms`;\n }\n else if (ms < 100) {\n formatted = `${ms.toFixed(1)}ms`;\n }\n else if (ms < 1000) {\n formatted = `${ms.toFixed(0)}ms`;\n }\n else {\n formatted = `${(ms / 1000).toFixed(2)}s`;\n }\n return formatted;\n}\nexport function leftPad(string, length = 8) {\n const padLength = Math.max(length - string.length, 0);\n return `${' '.repeat(padLength)}${string}`;\n}\nexport function rightPad(string, length = 8) {\n const padLength = Math.max(length - string.length, 0);\n return `${string}${' '.repeat(padLength)}`;\n}\nexport function formatValue(v, options = {}) {\n const EPSILON = 1e-16;\n const { isInteger = false } = options;\n if (Array.isArray(v) || ArrayBuffer.isView(v)) {\n return formatArrayValue(v, options);\n }\n if (!Number.isFinite(v)) {\n return String(v);\n }\n // @ts-expect-error\n if (Math.abs(v) < EPSILON) {\n return isInteger ? '0' : '0.';\n }\n if (isInteger) {\n // @ts-expect-error\n return v.toFixed(0);\n }\n // @ts-expect-error\n if (Math.abs(v) > 100 && Math.abs(v) < 10000) {\n // @ts-expect-error\n return v.toFixed(0);\n }\n // @ts-expect-error\n const string = v.toPrecision(2);\n const decimal = string.indexOf('.0');\n return decimal === string.length - 2 ? string.slice(0, -1) : string;\n}\n/** Helper to formatValue */\nfunction formatArrayValue(v, options) {\n const { maxElts = 16, size = 1 } = options;\n let string = '[';\n for (let i = 0; i < v.length && i < maxElts; ++i) {\n if (i > 0) {\n string += `,${i % size === 0 ? ' ' : ''}`;\n }\n string += formatValue(v[i], options);\n }\n const terminator = v.length > maxElts ? '...' : ']';\n return `${string}${terminator}`;\n}\n", "import { isBrowser } from '@probe.gl/env';\nexport var COLOR;\n(function (COLOR) {\n COLOR[COLOR[\"BLACK\"] = 30] = \"BLACK\";\n COLOR[COLOR[\"RED\"] = 31] = \"RED\";\n COLOR[COLOR[\"GREEN\"] = 32] = \"GREEN\";\n COLOR[COLOR[\"YELLOW\"] = 33] = \"YELLOW\";\n COLOR[COLOR[\"BLUE\"] = 34] = \"BLUE\";\n COLOR[COLOR[\"MAGENTA\"] = 35] = \"MAGENTA\";\n COLOR[COLOR[\"CYAN\"] = 36] = \"CYAN\";\n COLOR[COLOR[\"WHITE\"] = 37] = \"WHITE\";\n COLOR[COLOR[\"BRIGHT_BLACK\"] = 90] = \"BRIGHT_BLACK\";\n COLOR[COLOR[\"BRIGHT_RED\"] = 91] = \"BRIGHT_RED\";\n COLOR[COLOR[\"BRIGHT_GREEN\"] = 92] = \"BRIGHT_GREEN\";\n COLOR[COLOR[\"BRIGHT_YELLOW\"] = 93] = \"BRIGHT_YELLOW\";\n COLOR[COLOR[\"BRIGHT_BLUE\"] = 94] = \"BRIGHT_BLUE\";\n COLOR[COLOR[\"BRIGHT_MAGENTA\"] = 95] = \"BRIGHT_MAGENTA\";\n COLOR[COLOR[\"BRIGHT_CYAN\"] = 96] = \"BRIGHT_CYAN\";\n COLOR[COLOR[\"BRIGHT_WHITE\"] = 97] = \"BRIGHT_WHITE\";\n})(COLOR || (COLOR = {}));\nconst BACKGROUND_INCREMENT = 10;\nfunction getColor(color) {\n if (typeof color !== 'string') {\n return color;\n }\n color = color.toUpperCase();\n return COLOR[color] || COLOR.WHITE;\n}\nexport function addColor(string, color, background) {\n if (!isBrowser && typeof string === 'string') {\n if (color) {\n const colorCode = getColor(color);\n string = `\\u001b[${colorCode}m${string}\\u001b[39m`;\n }\n if (background) {\n // background colors values are +10\n const colorCode = getColor(background);\n string = `\\u001b[${colorCode + BACKGROUND_INCREMENT}m${string}\\u001b[49m`;\n }\n }\n return string;\n}\n", "// Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n/**\n * Binds the \"this\" argument of all functions on a class instance to the instance\n * @param obj - class instance (typically a react component)\n */\nexport function autobind(obj, predefined = ['constructor']) {\n const proto = Object.getPrototypeOf(obj);\n const propNames = Object.getOwnPropertyNames(proto);\n const object = obj;\n for (const key of propNames) {\n const value = object[key];\n if (typeof value === 'function') {\n if (!predefined.find(name => key === name)) {\n object[key] = value.bind(obj);\n }\n }\n }\n}\n", "export default function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'Assertion failed');\n }\n}\n", "// probe.gl, MIT license\nimport { window, process, isBrowser } from '@probe.gl/env';\n/** Get best timer available. */\nexport function getHiResTimestamp() {\n let timestamp;\n if (isBrowser() && window.performance) {\n timestamp = window?.performance?.now?.();\n }\n else if ('hrtime' in process) {\n // @ts-ignore\n const timeParts = process?.hrtime?.();\n timestamp = timeParts[0] * 1000 + timeParts[1] / 1e6;\n }\n else {\n timestamp = Date.now();\n }\n return timestamp;\n}\n", "// probe.gl, MIT license\n/* eslint-disable no-console */\nimport { VERSION, isBrowser } from '@probe.gl/env';\nimport { LocalStorage } from \"./utils/local-storage.js\";\nimport { formatTime, leftPad } from \"./utils/formatters.js\";\nimport { addColor } from \"./utils/color.js\";\nimport { autobind } from \"./utils/autobind.js\";\nimport assert from \"./utils/assert.js\";\nimport { getHiResTimestamp } from \"./utils/hi-res-timestamp.js\";\n// Instrumentation in other packages may override console methods, so preserve them here\nconst originalConsole = {\n debug: isBrowser() ? console.debug || console.log : console.log,\n log: console.log,\n info: console.info,\n warn: console.warn,\n error: console.error\n};\nconst DEFAULT_LOG_CONFIGURATION = {\n enabled: true,\n level: 0\n};\nfunction noop() { } // eslint-disable-line @typescript-eslint/no-empty-function\nconst cache = {};\nconst ONCE = { once: true };\n/** A console wrapper */\nexport class Log {\n constructor({ id } = { id: '' }) {\n this.VERSION = VERSION;\n this._startTs = getHiResTimestamp();\n this._deltaTs = getHiResTimestamp();\n this.userData = {};\n // TODO - fix support from throttling groups\n this.LOG_THROTTLE_TIMEOUT = 0; // Time before throttled messages are logged again\n this.id = id;\n this.userData = {};\n this._storage = new LocalStorage(`__probe-${this.id}__`, DEFAULT_LOG_CONFIGURATION);\n this.timeStamp(`${this.id} started`);\n autobind(this);\n Object.seal(this);\n }\n set level(newLevel) {\n this.setLevel(newLevel);\n }\n get level() {\n return this.getLevel();\n }\n isEnabled() {\n return this._storage.config.enabled;\n }\n getLevel() {\n return this._storage.config.level;\n }\n /** @return milliseconds, with fractions */\n getTotal() {\n return Number((getHiResTimestamp() - this._startTs).toPrecision(10));\n }\n /** @return milliseconds, with fractions */\n getDelta() {\n return Number((getHiResTimestamp() - this._deltaTs).toPrecision(10));\n }\n /** @deprecated use logLevel */\n set priority(newPriority) {\n this.level = newPriority;\n }\n /** @deprecated use logLevel */\n get priority() {\n return this.level;\n }\n /** @deprecated use logLevel */\n getPriority() {\n return this.level;\n }\n // Configure\n enable(enabled = true) {\n this._storage.setConfiguration({ enabled });\n return this;\n }\n setLevel(level) {\n this._storage.setConfiguration({ level });\n return this;\n }\n /** return the current status of the setting */\n get(setting) {\n return this._storage.config[setting];\n }\n // update the status of the setting\n set(setting, value) {\n this._storage.setConfiguration({ [setting]: value });\n }\n /** Logs the current settings as a table */\n settings() {\n if (console.table) {\n console.table(this._storage.config);\n }\n else {\n console.log(this._storage.config);\n }\n }\n // Unconditional logging\n assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'Assertion failed');\n }\n }\n warn(message) {\n return this._getLogFunction(0, message, originalConsole.warn, arguments, ONCE);\n }\n error(message) {\n return this._getLogFunction(0, message, originalConsole.error, arguments);\n }\n /** Print a deprecation warning */\n deprecated(oldUsage, newUsage) {\n return this.warn(`\\`${oldUsage}\\` is deprecated and will be removed \\\nin a later version. Use \\`${newUsage}\\` instead`);\n }\n /** Print a removal warning */\n removed(oldUsage, newUsage) {\n return this.error(`\\`${oldUsage}\\` has been removed. Use \\`${newUsage}\\` instead`);\n }\n probe(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.log, arguments, {\n time: true,\n once: true\n });\n }\n log(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.debug, arguments);\n }\n info(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.info, arguments);\n }\n once(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.debug || originalConsole.info, arguments, ONCE);\n }\n /** Logs an object as a table */\n table(logLevel, table, columns) {\n if (table) {\n return this._getLogFunction(logLevel, table, console.table || noop, (columns && [columns]), {\n tag: getTableHeader(table)\n });\n }\n return noop;\n }\n time(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.time ? console.time : console.info);\n }\n timeEnd(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.timeEnd ? console.timeEnd : console.info);\n }\n timeStamp(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.timeStamp || noop);\n }\n group(logLevel, message, opts = { collapsed: false }) {\n const options = normalizeArguments({ logLevel, message, opts });\n const { collapsed } = opts;\n // @ts-expect-error\n options.method = (collapsed ? console.groupCollapsed : console.group) || console.info;\n return this._getLogFunction(options);\n }\n groupCollapsed(logLevel, message, opts = {}) {\n return this.group(logLevel, message, Object.assign({}, opts, { collapsed: true }));\n }\n groupEnd(logLevel) {\n return this._getLogFunction(logLevel, '', console.groupEnd || noop);\n }\n // EXPERIMENTAL\n withGroup(logLevel, message, func) {\n this.group(logLevel, message)();\n try {\n func();\n }\n finally {\n this.groupEnd(logLevel)();\n }\n }\n trace() {\n if (console.trace) {\n console.trace();\n }\n }\n // PRIVATE METHODS\n /** Deduces log level from a variety of arguments */\n _shouldLog(logLevel) {\n return this.isEnabled() && this.getLevel() >= normalizeLogLevel(logLevel);\n }\n _getLogFunction(logLevel, message, method, args, opts) {\n if (this._shouldLog(logLevel)) {\n // normalized opts + timings\n opts = normalizeArguments({ logLevel, message, args, opts });\n method = method || opts.method;\n assert(method);\n opts.total = this.getTotal();\n opts.delta = this.getDelta();\n // reset delta timer\n this._deltaTs = getHiResTimestamp();\n const tag = opts.tag || opts.message;\n if (opts.once && tag) {\n if (!cache[tag]) {\n cache[tag] = getHiResTimestamp();\n }\n else {\n return noop;\n }\n }\n // TODO - Make throttling work with groups\n // if (opts.nothrottle || !throttle(tag, this.LOG_THROTTLE_TIMEOUT)) {\n // return noop;\n // }\n message = decorateMessage(this.id, opts.message, opts);\n // Bind console function so that it can be called after being returned\n return method.bind(console, message, ...opts.args);\n }\n return noop;\n }\n}\nLog.VERSION = VERSION;\n/**\n * Get logLevel from first argument:\n * - log(logLevel, message, args) => logLevel\n * - log(message, args) => 0\n * - log({logLevel, ...}, message, args) => logLevel\n * - log({logLevel, message, args}) => logLevel\n */\nfunction normalizeLogLevel(logLevel) {\n if (!logLevel) {\n return 0;\n }\n let resolvedLevel;\n switch (typeof logLevel) {\n case 'number':\n resolvedLevel = logLevel;\n break;\n case 'object':\n // Backward compatibility\n // TODO - deprecate `priority`\n // @ts-expect-error\n resolvedLevel = logLevel.logLevel || logLevel.priority || 0;\n break;\n default:\n return 0;\n }\n // 'log level must be a number'\n assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);\n return resolvedLevel;\n}\n/**\n * \"Normalizes\" the various argument patterns into an object with known types\n * - log(logLevel, message, args) => {logLevel, message, args}\n * - log(message, args) => {logLevel: 0, message, args}\n * - log({logLevel, ...}, message, args) => {logLevel, message, args}\n * - log({logLevel, message, args}) => {logLevel, message, args}\n */\nexport function normalizeArguments(opts) {\n const { logLevel, message } = opts;\n opts.logLevel = normalizeLogLevel(logLevel);\n // We use `arguments` instead of rest parameters (...args) because IE\n // does not support the syntax. Rest parameters is transpiled to code with\n // perf impact. Doing it here instead avoids constructing args when logging is\n // disabled.\n // TODO - remove when/if IE support is dropped\n const args = opts.args ? Array.from(opts.args) : [];\n // args should only contain arguments that appear after `message`\n // eslint-disable-next-line no-empty\n while (args.length && args.shift() !== message) { }\n switch (typeof logLevel) {\n case 'string':\n case 'function':\n if (message !== undefined) {\n args.unshift(message);\n }\n opts.message = logLevel;\n break;\n case 'object':\n Object.assign(opts, logLevel);\n break;\n default:\n }\n // Resolve functions into strings by calling them\n if (typeof opts.message === 'function') {\n opts.message = opts.message();\n }\n const messageType = typeof opts.message;\n // 'log message must be a string' or object\n assert(messageType === 'string' || messageType === 'object');\n // original opts + normalized opts + opts arg + fixed up message\n return Object.assign(opts, { args }, opts.opts);\n}\nfunction decorateMessage(id, message, opts) {\n if (typeof message === 'string') {\n const time = opts.time ? leftPad(formatTime(opts.total)) : '';\n message = opts.time ? `${id}: ${time} ${message}` : `${id}: ${message}`;\n message = addColor(message, opts.color, opts.background);\n }\n return message;\n}\nfunction getTableHeader(table) {\n for (const key in table) {\n for (const title in table[key]) {\n return title || 'untitled';\n }\n }\n return 'empty';\n}\n", "// @ts-nocheck\n/* eslint-disable */\nglobalThis.probe = {};\n", "import { Log } from \"./log.js\";\n// DEFAULT EXPORT IS A LOG INSTANCE\nexport default new Log({ id: '@probe.gl/log' });\n// LOGGING\nexport { Log } from \"./log.js\";\nexport { COLOR } from \"./utils/color.js\";\n// UTILITIES\nexport { addColor } from \"./utils/color.js\";\nexport { leftPad, rightPad } from \"./utils/formatters.js\";\nexport { autobind } from \"./utils/autobind.js\";\nexport { LocalStorage } from \"./utils/local-storage.js\";\nexport { getHiResTimestamp } from \"./utils/hi-res-timestamp.js\";\nimport \"./init.js\";\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n *\n * @param baseOptions Can be undefined, in which case a fresh options object will be minted\n * @param newOptions\n * @returns\n */\nexport function mergeLoaderOptions(baseOptions, newOptions) {\n return mergeOptionsRecursively(baseOptions || {}, newOptions);\n}\nfunction mergeOptionsRecursively(baseOptions, newOptions, level = 0) {\n // Sanity check (jest test runner overwrites the console object which can lead to infinite recursion)\n if (level > 3) {\n return newOptions;\n }\n const options = { ...baseOptions };\n for (const [key, newValue] of Object.entries(newOptions)) {\n if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {\n options[key] = mergeOptionsRecursively(options[key] || {}, newOptions[key], level + 1);\n // Object.assign(options[key] as object, newOptions[key]);\n }\n else {\n options[key] = newOptions[key];\n }\n }\n return options;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { log } from \"../log-utils/log.js\";\n/**\n * Register application-imported modules\n * These modules are typically to big to bundle, or may have issues on some bundlers/environments\n */\nexport function registerJSModules(modules) {\n globalThis.loaders ||= {};\n globalThis.loaders.modules ||= {};\n Object.assign(globalThis.loaders.modules, modules);\n}\n/**\n * Get a pre-registered application-imported module, warn if not present\n */\nexport function checkJSModule(name, caller) {\n const module = globalThis.loaders?.modules?.[name];\n if (!module) {\n log.warn(`${caller}: ${name} library not installed`)();\n }\n}\n/**\n * Get a pre-registered application-imported module, throw if not present\n */\nexport function getJSModule(name, caller) {\n const module = globalThis.loaders?.modules?.[name];\n if (!module) {\n throw new Error(`${caller}: ${name} library not installed`);\n }\n return module;\n}\n/**\n * Get a pre-registered application-imported module, return null if not present\n */\nexport function getJSModuleOrNull(name) {\n const module = globalThis.loaders?.modules?.[name];\n return module || null;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n/**\n * TODO - unpkg.com doesn't seem to have a `latest` specifier for alpha releases...\n * 'beta' on beta branch, 'latest' on prod branch\n */\nexport const NPM_TAG = 'latest';\nfunction getVersion() {\n if (!globalThis._loadersgl_?.version) {\n globalThis._loadersgl_ = globalThis._loadersgl_ || {};\n // __VERSION__ is injected by babel-plugin-version-inline\n if (typeof \"4.2.1\" === 'undefined') {\n // eslint-disable-next-line\n console.warn('loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.');\n globalThis._loadersgl_.version = NPM_TAG;\n }\n else {\n globalThis._loadersgl_.version = \"4.2.1\";\n }\n }\n return globalThis._loadersgl_.version;\n}\nexport const VERSION = getVersion();\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Replacement for the external assert method to reduce bundle size\n// Note: We don't use the second \"message\" argument in calling code,\n// so no need to support it here\n/** Throws an `Error` with the optional `message` if `condition` is falsy */\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'loaders.gl assertion failed.');\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Purpose: include this in your module to avoids adding dependencies on\n// micro modules like 'global' and 'is-browser';\n/* eslint-disable no-restricted-globals */\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global,\n document: typeof document !== 'undefined' && document\n};\nconst self_ = globals.self || globals.window || globals.global || {};\nconst window_ = globals.window || globals.self || globals.global || {};\nconst global_ = globals.global || globals.self || globals.window || {};\nconst document_ = globals.document || {};\nexport { self_ as self, window_ as window, global_ as global, document_ as document };\n/** true if running in the browser, false if running in Node.js */\nexport const isBrowser = \n// @ts-ignore process.browser\ntypeof process !== 'object' || String(process) !== '[object process]' || process.browser;\n/** true if running on a worker thread */\nexport const isWorker = typeof importScripts === 'function';\n/** true if running on a mobile device */\nexport const isMobile = typeof window !== 'undefined' && typeof window.orientation !== 'undefined';\n// Extract node major version\nconst matches = typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);\n/** Version of Node.js if running under Node, otherwise 0 */\nexport const nodeVersion = (matches && parseFloat(matches[1])) || 0;\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\n/**\n * Represents one Job handled by a WorkerPool or WorkerFarm\n */\nexport default class WorkerJob {\n name;\n workerThread;\n isRunning = true;\n /** Promise that resolves when Job is done */\n result;\n _resolve = () => { };\n _reject = () => { };\n constructor(jobName, workerThread) {\n this.name = jobName;\n this.workerThread = workerThread;\n this.result = new Promise((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n }\n /**\n * Send a message to the job's worker thread\n * @param data any data structure, ideally consisting mostly of transferrable objects\n */\n postMessage(type, payload) {\n this.workerThread.postMessage({\n source: 'loaders.gl', // Lets worker ignore unrelated messages\n type,\n payload\n });\n }\n /**\n * Call to resolve the `result` Promise with the supplied value\n */\n done(value) {\n assert(this.isRunning);\n this.isRunning = false;\n this._resolve(value);\n }\n /**\n * Call to reject the `result` Promise with the supplied error\n */\n error(error) {\n assert(this.isRunning);\n this.isRunning = false;\n this._reject(error);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/** Browser polyfill for Node.js built-in `worker_threads` module.\n * These fills are non-functional, and just intended to ensure that\n * `import 'worker_threads` doesn't break browser builds.\n * The replacement is done in package.json browser field\n */\nexport class NodeWorker {\n terminate() { }\n}\nexport const parentPort = null;\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nconst workerURLCache = new Map();\n/**\n * Creates a loadable URL from worker source or URL\n * that can be used to create `Worker` instances.\n * Due to CORS issues it may be necessary to wrap a URL in a small importScripts\n * @param props\n * @param props.source Worker source\n * @param props.url Worker URL\n * @returns loadable url\n */\nexport function getLoadableWorkerURL(props) {\n assert((props.source && !props.url) || (!props.source && props.url)); // Either source or url must be defined\n let workerURL = workerURLCache.get(props.source || props.url);\n if (!workerURL) {\n // Differentiate worker urls from worker source code\n if (props.url) {\n workerURL = getLoadableWorkerURLFromURL(props.url);\n workerURLCache.set(props.url, workerURL);\n }\n if (props.source) {\n workerURL = getLoadableWorkerURLFromSource(props.source);\n workerURLCache.set(props.source, workerURL);\n }\n }\n assert(workerURL);\n return workerURL;\n}\n/**\n * Build a loadable worker URL from worker URL\n * @param url\n * @returns loadable URL\n */\nfunction getLoadableWorkerURLFromURL(url) {\n // A local script url, we can use it to initialize a Worker directly\n if (!url.startsWith('http')) {\n return url;\n }\n // A remote script, we need to use `importScripts` to load from different origin\n const workerSource = buildScriptSource(url);\n return getLoadableWorkerURLFromSource(workerSource);\n}\n/**\n * Build a loadable worker URL from worker source\n * @param workerSource\n * @returns loadable url\n */\nfunction getLoadableWorkerURLFromSource(workerSource) {\n const blob = new Blob([workerSource], { type: 'application/javascript' });\n return URL.createObjectURL(blob);\n}\n/**\n * Per spec, worker cannot be initialized with a script from a different origin\n * However a local worker script can still import scripts from other origins,\n * so we simply build a wrapper script.\n *\n * @param workerUrl\n * @returns source\n */\nfunction buildScriptSource(workerUrl) {\n return `\\\ntry {\n importScripts('${workerUrl}');\n} catch (error) {\n console.error(error);\n throw error;\n}`;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// NOTE - there is a copy of this function is both in core and loader-utils\n// core does not need all the utils in loader-utils, just this one.\n/**\n * Returns an array of Transferrable objects that can be used with postMessage\n * https://developer.mozilla.org/en-US/docs/Web/API/Worker/postMessage\n * @param object data to be sent via postMessage\n * @param recursive - not for application use\n * @param transfers - not for application use\n * @returns a transfer list that can be passed to postMessage\n */\nexport function getTransferList(object, recursive = true, transfers) {\n // Make sure that items in the transfer list is unique\n const transfersSet = transfers || new Set();\n if (!object) {\n // ignore\n }\n else if (isTransferable(object)) {\n transfersSet.add(object);\n }\n else if (isTransferable(object.buffer)) {\n // Typed array\n transfersSet.add(object.buffer);\n }\n else if (ArrayBuffer.isView(object)) {\n // object is a TypeArray viewing into a SharedArrayBuffer (not transferable)\n // Do not iterate through the content in this case\n }\n else if (recursive && typeof object === 'object') {\n for (const key in object) {\n // Avoid perf hit - only go one level deep\n getTransferList(object[key], recursive, transfersSet);\n }\n }\n // If transfers is defined, is internal recursive call\n // Otherwise it's called by the user\n return transfers === undefined ? Array.from(transfersSet) : [];\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/Transferable\nfunction isTransferable(object) {\n if (!object) {\n return false;\n }\n if (object instanceof ArrayBuffer) {\n return true;\n }\n if (typeof MessagePort !== 'undefined' && object instanceof MessagePort) {\n return true;\n }\n if (typeof ImageBitmap !== 'undefined' && object instanceof ImageBitmap) {\n return true;\n }\n // @ts-ignore\n if (typeof OffscreenCanvas !== 'undefined' && object instanceof OffscreenCanvas) {\n return true;\n }\n return false;\n}\n/**\n * Recursively drop non serializable values like functions and regexps.\n * @param object\n */\nexport function getTransferListForWriter(object) {\n if (object === null) {\n return {};\n }\n const clone = Object.assign({}, object);\n Object.keys(clone).forEach((key) => {\n // Typed Arrays and Arrays are passed with no change\n if (typeof object[key] === 'object' &&\n !ArrayBuffer.isView(object[key]) &&\n !(object[key] instanceof Array)) {\n clone[key] = getTransferListForWriter(object[key]);\n }\n else if (typeof clone[key] === 'function' || clone[key] instanceof RegExp) {\n clone[key] = {};\n }\n else {\n clone[key] = object[key];\n }\n });\n return clone;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { NodeWorker } from \"../node/worker_threads.js\";\nimport { isBrowser } from \"../env-utils/globals.js\";\nimport { assert } from \"../env-utils/assert.js\";\nimport { getLoadableWorkerURL } from \"../worker-utils/get-loadable-worker-url.js\";\nimport { getTransferList } from \"../worker-utils/get-transfer-list.js\";\nconst NOOP = () => { };\n/**\n * Represents one worker thread\n */\nexport default class WorkerThread {\n name;\n source;\n url;\n terminated = false;\n worker;\n onMessage;\n onError;\n _loadableURL = '';\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return ((typeof Worker !== 'undefined' && isBrowser) ||\n (typeof NodeWorker !== 'undefined' && !isBrowser));\n }\n constructor(props) {\n const { name, source, url } = props;\n assert(source || url); // Either source or url must be defined\n this.name = name;\n this.source = source;\n this.url = url;\n this.onMessage = NOOP;\n this.onError = (error) => console.log(error); // eslint-disable-line\n this.worker = isBrowser ? this._createBrowserWorker() : this._createNodeWorker();\n }\n /**\n * Terminate this worker thread\n * @note Can free up significant memory\n */\n destroy() {\n this.onMessage = NOOP;\n this.onError = NOOP;\n this.worker.terminate(); // eslint-disable-line @typescript-eslint/no-floating-promises\n this.terminated = true;\n }\n get isRunning() {\n return Boolean(this.onMessage);\n }\n /**\n * Send a message to this worker thread\n * @param data any data structure, ideally consisting mostly of transferrable objects\n * @param transferList If not supplied, calculated automatically by traversing data\n */\n postMessage(data, transferList) {\n transferList = transferList || getTransferList(data);\n // @ts-ignore\n this.worker.postMessage(data, transferList);\n }\n // PRIVATE\n /**\n * Generate a standard Error from an ErrorEvent\n * @param event\n */\n _getErrorFromErrorEvent(event) {\n // Note Error object does not have the expected fields if loading failed completely\n // https://developer.mozilla.org/en-US/docs/Web/API/Worker#Event_handlers\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n let message = 'Failed to load ';\n message += `worker ${this.name} from ${this.url}. `;\n if (event.message) {\n message += `${event.message} in `;\n }\n // const hasFilename = event.filename && !event.filename.startsWith('blob:');\n // message += hasFilename ? event.filename : this.source.slice(0, 100);\n if (event.lineno) {\n message += `:${event.lineno}:${event.colno}`;\n }\n return new Error(message);\n }\n /**\n * Creates a worker thread on the browser\n */\n _createBrowserWorker() {\n this._loadableURL = getLoadableWorkerURL({ source: this.source, url: this.url });\n const worker = new Worker(this._loadableURL, { name: this.name });\n worker.onmessage = (event) => {\n if (!event.data) {\n this.onError(new Error('No data received'));\n }\n else {\n this.onMessage(event.data);\n }\n };\n // This callback represents an uncaught exception in the worker thread\n worker.onerror = (error) => {\n this.onError(this._getErrorFromErrorEvent(error));\n this.terminated = true;\n };\n // TODO - not clear when this would be called, for now just log in case it happens\n worker.onmessageerror = (event) => console.error(event); // eslint-disable-line\n return worker;\n }\n /**\n * Creates a worker thread in node.js\n * @todo https://nodejs.org/api/async_hooks.html#async-resource-worker-pool\n */\n _createNodeWorker() {\n let worker;\n if (this.url) {\n // Make sure relative URLs start with './'\n const absolute = this.url.includes(':/') || this.url.startsWith('/');\n const url = absolute ? this.url : `./${this.url}`;\n // console.log('Starting work from', url);\n worker = new NodeWorker(url, { eval: false });\n }\n else if (this.source) {\n worker = new NodeWorker(this.source, { eval: true });\n }\n else {\n throw new Error('no worker');\n }\n worker.on('message', (data) => {\n // console.error('message', data);\n this.onMessage(data);\n });\n worker.on('error', (error) => {\n // console.error('error', error);\n this.onError(error);\n });\n worker.on('exit', (code) => {\n // console.error('exit', code);\n });\n return worker;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isMobile, isBrowser } from \"../env-utils/globals.js\";\nimport WorkerThread from \"./worker-thread.js\";\nimport WorkerJob from \"./worker-job.js\";\n/**\n * Process multiple data messages with small pool of identical workers\n */\nexport default class WorkerPool {\n name = 'unnamed';\n source; // | Function;\n url;\n maxConcurrency = 1;\n maxMobileConcurrency = 1;\n onDebug = () => { };\n reuseWorkers = true;\n props = {};\n jobQueue = [];\n idleQueue = [];\n count = 0;\n isDestroyed = false;\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return WorkerThread.isSupported();\n }\n /**\n * @param processor - worker function\n * @param maxConcurrency - max count of workers\n */\n constructor(props) {\n this.source = props.source;\n this.url = props.url;\n this.setProps(props);\n }\n /**\n * Terminates all workers in the pool\n * @note Can free up significant memory\n */\n destroy() {\n // Destroy idle workers, active Workers will be destroyed on completion\n this.idleQueue.forEach((worker) => worker.destroy());\n this.isDestroyed = true;\n }\n setProps(props) {\n this.props = { ...this.props, ...props };\n if (props.name !== undefined) {\n this.name = props.name;\n }\n if (props.maxConcurrency !== undefined) {\n this.maxConcurrency = props.maxConcurrency;\n }\n if (props.maxMobileConcurrency !== undefined) {\n this.maxMobileConcurrency = props.maxMobileConcurrency;\n }\n if (props.reuseWorkers !== undefined) {\n this.reuseWorkers = props.reuseWorkers;\n }\n if (props.onDebug !== undefined) {\n this.onDebug = props.onDebug;\n }\n }\n async startJob(name, onMessage = (job, type, data) => job.done(data), onError = (job, error) => job.error(error)) {\n // Promise resolves when thread starts working on this job\n const startPromise = new Promise((onStart) => {\n // Promise resolves when thread completes or fails working on this job\n this.jobQueue.push({ name, onMessage, onError, onStart });\n return this;\n });\n this._startQueuedJob(); // eslint-disable-line @typescript-eslint/no-floating-promises\n return await startPromise;\n }\n // PRIVATE\n /**\n * Starts first queued job if worker is available or can be created\n * Called when job is started and whenever a worker returns to the idleQueue\n */\n async _startQueuedJob() {\n if (!this.jobQueue.length) {\n return;\n }\n const workerThread = this._getAvailableWorker();\n if (!workerThread) {\n return;\n }\n // We have a worker, dequeue and start the job\n const queuedJob = this.jobQueue.shift();\n if (queuedJob) {\n // Emit a debug event\n // @ts-ignore\n this.onDebug({\n message: 'Starting job',\n name: queuedJob.name,\n workerThread,\n backlog: this.jobQueue.length\n });\n // Create a worker job to let the app access thread and manage job completion\n const job = new WorkerJob(queuedJob.name, workerThread);\n // Set the worker thread's message handlers\n workerThread.onMessage = (data) => queuedJob.onMessage(job, data.type, data.payload);\n workerThread.onError = (error) => queuedJob.onError(job, error);\n // Resolve the start promise so that the app can start sending messages to worker\n queuedJob.onStart(job);\n // Wait for the app to signal that the job is complete, then return worker to queue\n try {\n await job.result;\n }\n catch (error) {\n // eslint-disable-next-line no-console\n console.error(`Worker exception: ${error}`);\n }\n finally {\n this.returnWorkerToQueue(workerThread);\n }\n }\n }\n /**\n * Returns a worker to the idle queue\n * Destroys the worker if\n * - pool is destroyed\n * - if this pool doesn't reuse workers\n * - if maxConcurrency has been lowered\n * @param worker\n */\n returnWorkerToQueue(worker) {\n const shouldDestroyWorker = \n // Workers on Node.js prevent the process from exiting.\n // Until we figure out how to close them before exit, we always destroy them\n !isBrowser ||\n // If the pool is destroyed, there is no reason to keep the worker around\n this.isDestroyed ||\n // If the app has disabled worker reuse, any completed workers should be destroyed\n !this.reuseWorkers ||\n // If concurrency has been lowered, this worker might be surplus to requirements\n this.count > this._getMaxConcurrency();\n if (shouldDestroyWorker) {\n worker.destroy();\n this.count--;\n }\n else {\n this.idleQueue.push(worker);\n }\n if (!this.isDestroyed) {\n this._startQueuedJob(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n /**\n * Returns idle worker or creates new worker if maxConcurrency has not been reached\n */\n _getAvailableWorker() {\n // If a worker has completed and returned to the queue, it can be used\n if (this.idleQueue.length > 0) {\n return this.idleQueue.shift() || null;\n }\n // Create fresh worker if we haven't yet created the max amount of worker threads for this worker source\n if (this.count < this._getMaxConcurrency()) {\n this.count++;\n const name = `${this.name.toLowerCase()} (#${this.count} of ${this.maxConcurrency})`;\n return new WorkerThread({ name, source: this.source, url: this.url });\n }\n // No worker available, have to wait\n return null;\n }\n _getMaxConcurrency() {\n return isMobile ? this.maxMobileConcurrency : this.maxConcurrency;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport WorkerPool from \"./worker-pool.js\";\nimport WorkerThread from \"./worker-thread.js\";\nconst DEFAULT_PROPS = {\n maxConcurrency: 3,\n maxMobileConcurrency: 1,\n reuseWorkers: true,\n onDebug: () => { }\n};\n/**\n * Process multiple jobs with a \"farm\" of different workers in worker pools.\n */\nexport default class WorkerFarm {\n props;\n workerPools = new Map();\n // singleton\n static _workerFarm;\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return WorkerThread.isSupported();\n }\n /** Get the singleton instance of the global worker farm */\n static getWorkerFarm(props = {}) {\n WorkerFarm._workerFarm = WorkerFarm._workerFarm || new WorkerFarm({});\n WorkerFarm._workerFarm.setProps(props);\n return WorkerFarm._workerFarm;\n }\n /** get global instance with WorkerFarm.getWorkerFarm() */\n constructor(props) {\n this.props = { ...DEFAULT_PROPS };\n this.setProps(props);\n /** @type Map} */\n this.workerPools = new Map();\n }\n /**\n * Terminate all workers in the farm\n * @note Can free up significant memory\n */\n destroy() {\n for (const workerPool of this.workerPools.values()) {\n workerPool.destroy();\n }\n this.workerPools = new Map();\n }\n /**\n * Set props used when initializing worker pools\n * @param props\n */\n setProps(props) {\n this.props = { ...this.props, ...props };\n // Update worker pool props\n for (const workerPool of this.workerPools.values()) {\n workerPool.setProps(this._getWorkerPoolProps());\n }\n }\n /**\n * Returns a worker pool for the specified worker\n * @param options - only used first time for a specific worker name\n * @param options.name - the name of the worker - used to identify worker pool\n * @param options.url -\n * @param options.source -\n * @example\n * const job = WorkerFarm.getWorkerFarm().getWorkerPool({name, url}).startJob(...);\n */\n getWorkerPool(options) {\n const { name, source, url } = options;\n let workerPool = this.workerPools.get(name);\n if (!workerPool) {\n workerPool = new WorkerPool({\n name,\n source,\n url\n });\n workerPool.setProps(this._getWorkerPoolProps());\n this.workerPools.set(name, workerPool);\n }\n return workerPool;\n }\n _getWorkerPoolProps() {\n return {\n maxConcurrency: this.props.maxConcurrency,\n maxMobileConcurrency: this.props.maxMobileConcurrency,\n reuseWorkers: this.props.reuseWorkers,\n onDebug: this.props.onDebug\n };\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nimport { isBrowser } from \"../env-utils/globals.js\";\nimport { VERSION, NPM_TAG } from \"../env-utils/version.js\";\n/**\n * Gets worker object's name (for debugging in Chrome thread inspector window)\n */\nexport function getWorkerName(worker) {\n const warning = worker.version !== VERSION ? ` (worker-utils@${VERSION})` : '';\n return `${worker.name}@${worker.version}${warning}`;\n}\n/**\n * Generate a worker URL based on worker object and options\n * @returns A URL to one of the following:\n * - a published worker on unpkg CDN\n * - a local test worker\n * - a URL provided by the user in options\n */\nexport function getWorkerURL(worker, options = {}) {\n const workerOptions = options[worker.id] || {};\n const workerFile = isBrowser ? `${worker.id}-worker.js` : `${worker.id}-worker-node.js`;\n let url = workerOptions.workerUrl;\n // HACK: Allow for non-nested workerUrl for the CompressionWorker.\n // For the compression worker, workerOptions is currently not nested correctly. For most loaders,\n // you'd have options within an object, i.e. `{mvt: {coordinates: ...}}` but the CompressionWorker\n // puts options at the top level, not within a `compression` key (its `id`). For this reason, the\n // above `workerOptions` will always be a string (i.e. `'gzip'`) for the CompressionWorker. To not\n // break backwards compatibility, we allow the CompressionWorker to have options at the top level.\n if (!url && worker.id === 'compression') {\n url = options.workerUrl;\n }\n // If URL is test, generate local loaders.gl url\n // @ts-ignore _workerType\n if (options._workerType === 'test') {\n if (isBrowser) {\n url = `modules/${worker.module}/dist/${workerFile}`;\n }\n else {\n // In the test environment the ts-node loader requires TypeScript code\n url = `modules/${worker.module}/src/workers/${worker.id}-worker-node.ts`;\n }\n }\n // If url override is not provided, generate a URL to published version on npm CDN unpkg.com\n if (!url) {\n // GENERATE\n let version = worker.version;\n // On master we need to load npm alpha releases published with the `beta` tag\n if (version === 'latest') {\n // throw new Error('latest worker version specified');\n version = NPM_TAG;\n }\n const versionTag = version ? `@${version}` : '';\n url = `https://unpkg.com/@loaders.gl/${worker.module}${versionTag}/dist/${workerFile}`;\n }\n assert(url);\n // Allow user to override location\n return url;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nimport { VERSION } from \"../env-utils/version.js\";\n/**\n * Check if worker is compatible with this library version\n * @param worker\n * @param libVersion\n * @returns `true` if the two versions are compatible\n */\nexport function validateWorkerVersion(worker, coreVersion = VERSION) {\n assert(worker, 'no worker provided');\n const workerVersion = worker.version;\n if (!coreVersion || !workerVersion) {\n return false;\n }\n // TODO enable when fix the __version__ injection\n // const coreVersions = parseVersion(coreVersion);\n // const workerVersions = parseVersion(workerVersion);\n // assert(\n // coreVersion.major === workerVersion.major && coreVersion.minor <= workerVersion.minor,\n // `worker: ${worker.name} is not compatible. ${coreVersion.major}.${\n // coreVersion.minor\n // }+ is required.`\n // );\n return true;\n}\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction parseVersion(version) {\n const parts = version.split('.').map(Number);\n return { major: parts[0], minor: parts[1] };\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/* global importScripts */\nimport { isBrowser, isWorker } from \"../env-utils/globals.js\";\nimport { assert } from \"../env-utils/assert.js\";\nimport { VERSION } from \"../env-utils/version.js\";\nconst loadLibraryPromises = {}; // promises\n/**\n * Dynamically loads a library (\"module\")\n *\n * - wasm library: Array buffer is returned\n * - js library: Parse JS is returned\n *\n * Method depends on environment\n * - browser - script element is created and installed on document\n * - worker - eval is called on global context\n * - node - file is required\n *\n * @param libraryUrl\n * @param moduleName\n * @param options\n */\nexport async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {\n if (moduleName) {\n libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);\n }\n // Ensure libraries are only loaded once\n loadLibraryPromises[libraryUrl] =\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);\n return await loadLibraryPromises[libraryUrl];\n}\n// TODO - sort out how to resolve paths for main/worker and dev/prod\nexport function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {\n // Check if already a URL\n if (!options.useLocalLibraries && library.startsWith('http')) {\n return library;\n }\n libraryName = libraryName || library;\n // Allow application to import and supply libraries through `options.modules`\n // TODO - See js-module-utils in loader-utils\n const modules = options.modules || {};\n if (modules[libraryName]) {\n return modules[libraryName];\n }\n // Load from local files, not from CDN scripts in Node.js\n // TODO - needs to locate the modules directory when installed!\n if (!isBrowser) {\n return `modules/${moduleName}/dist/libs/${libraryName}`;\n }\n // In browser, load from external scripts\n if (options.CDN) {\n assert(options.CDN.startsWith('http'));\n return `${options.CDN}/${moduleName}@${VERSION}/dist/libs/${libraryName}`;\n }\n // TODO - loading inside workers requires paths relative to worker script location...\n if (isWorker) {\n return `../src/libs/${libraryName}`;\n }\n return `modules/${moduleName}/src/libs/${libraryName}`;\n}\nasync function loadLibraryFromFile(libraryUrl) {\n if (libraryUrl.endsWith('wasm')) {\n return await loadAsArrayBuffer(libraryUrl);\n }\n if (!isBrowser) {\n // TODO - Node doesn't yet support dynamic import from https URLs\n // try {\n // return await import(libraryUrl);\n // } catch (error) {\n // console.error(error);\n // }\n try {\n const { requireFromFile } = globalThis.loaders || {};\n return await requireFromFile?.(libraryUrl);\n }\n catch (error) {\n console.error(error); // eslint-disable-line no-console\n return null;\n }\n }\n if (isWorker) {\n return importScripts(libraryUrl);\n }\n // TODO - fix - should be more secure than string parsing since observes CORS\n // if (isBrowser) {\n // return await loadScriptFromFile(libraryUrl);\n // }\n const scriptSource = await loadAsText(libraryUrl);\n return loadLibraryFromString(scriptSource, libraryUrl);\n}\n/*\nasync function loadScriptFromFile(libraryUrl) {\n const script = document.createElement('script');\n script.src = libraryUrl;\n return await new Promise((resolve, reject) => {\n script.onload = data => {\n resolve(data);\n };\n script.onerror = reject;\n });\n}\n*/\n// TODO - Needs security audit...\n// - Raw eval call\n// - Potentially bypasses CORS\n// Upside is that this separates fetching and parsing\n// we could create a`LibraryLoader` or`ModuleLoader`\nfunction loadLibraryFromString(scriptSource, id) {\n if (!isBrowser) {\n const { requireFromString } = globalThis.loaders || {};\n return requireFromString?.(scriptSource, id);\n }\n if (isWorker) {\n // Use lvalue trick to make eval run in global scope\n eval.call(globalThis, scriptSource); // eslint-disable-line no-eval\n // https://stackoverflow.com/questions/9107240/1-evalthis-vs-evalthis-in-javascript\n // http://perfectionkills.com/global-eval-what-are-the-options/\n return null;\n }\n const script = document.createElement('script');\n script.id = id;\n // most browsers like a separate text node but some throw an error. The second method covers those.\n try {\n script.appendChild(document.createTextNode(scriptSource));\n }\n catch (e) {\n script.text = scriptSource;\n }\n document.body.appendChild(script);\n return null;\n}\n// TODO - technique for module injection into worker, from THREE.DracoLoader...\n/*\nfunction combineWorkerWithLibrary(worker, jsContent) {\n var fn = wWorker.toString();\n var body = [\n '// injected',\n jsContent,\n '',\n '// worker',\n fn.substring(fn.indexOf('{') + 1, fn.lastIndexOf('}'))\n ].join('\\n');\n this.workerSourceURL = URL.createObjectURL(new Blob([body]));\n}\n*/\nasync function loadAsArrayBuffer(url) {\n const { readFileAsArrayBuffer } = globalThis.loaders || {};\n if (isBrowser || !readFileAsArrayBuffer || url.startsWith('http')) {\n const response = await fetch(url);\n return await response.arrayBuffer();\n }\n return await readFileAsArrayBuffer(url);\n}\n/**\n * Load a file from local file system\n * @param filename\n * @returns\n */\nasync function loadAsText(url) {\n const { readFileAsText } = globalThis.loaders || {};\n if (isBrowser || !readFileAsText || url.startsWith('http')) {\n const response = await fetch(url);\n return await response.text();\n }\n return await readFileAsText(url);\n}\n", "import { isBrowser } from '@loaders.gl/worker-utils';\nimport { WorkerFarm, getWorkerURL } from '@loaders.gl/worker-utils';\n/**\n * Determines if a loader can parse with worker\n * @param loader\n * @param options\n */\nexport function canParseWithWorker(loader, options) {\n if (!WorkerFarm.isSupported()) {\n return false;\n }\n // Node workers are still experimental\n if (!isBrowser && !options?._nodeWorkers) {\n return false;\n }\n return loader.worker && options?.worker;\n}\n/**\n * this function expects that the worker function sends certain messages,\n * this can be automated if the worker is wrapper by a call to createLoaderWorker in @loaders.gl/loader-utils.\n */\nexport async function parseWithWorker(loader, data, options, context, parseOnMainThread) {\n const name = loader.id; // TODO\n const url = getWorkerURL(loader, options);\n const workerFarm = WorkerFarm.getWorkerFarm(options);\n const workerPool = workerFarm.getWorkerPool({ name, url });\n // options.log object contains functions which cannot be transferred\n // context.fetch & context.parse functions cannot be transferred\n // TODO - decide how to handle logging on workers\n options = JSON.parse(JSON.stringify(options));\n context = JSON.parse(JSON.stringify(context || {}));\n const job = await workerPool.startJob('process-on-worker', \n // @ts-expect-error\n onMessage.bind(null, parseOnMainThread) // eslint-disable-line @typescript-eslint/no-misused-promises\n );\n job.postMessage('process', {\n // @ts-ignore\n input: data,\n options,\n context\n });\n const result = await job.result;\n // TODO - what is going on here?\n return await result.result;\n}\n/**\n * Handle worker's responses to the main thread\n * @param job\n * @param type\n * @param payload\n */\nasync function onMessage(parseOnMainThread, job, type, payload) {\n switch (type) {\n case 'done':\n job.done(payload);\n break;\n case 'error':\n job.error(new Error(payload.error));\n break;\n case 'process':\n // Worker is asking for main thread to parseO\n const { id, input, options } = payload;\n try {\n const result = await parseOnMainThread(input, options);\n job.postMessage('done', { id, result });\n }\n catch (error) {\n const message = error instanceof Error ? error.message : 'unknown error';\n job.postMessage('error', { id, error: message });\n }\n break;\n default:\n // eslint-disable-next-line\n console.warn(`parse-with-worker unknown message ${type}`);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n * Get the first characters from a binary file (interpret the first bytes as an ASCII string)\n * @param data\n * @param length\n * @returns\n */\nexport function getFirstCharacters(data, length = 5) {\n if (typeof data === 'string') {\n return data.slice(0, length);\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n return getMagicString(data.buffer, data.byteOffset, length);\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n return getMagicString(data, byteOffset, length);\n }\n return '';\n}\n/**\n * Gets a magic string from a \"file\"\n * Typically used to check or detect file format\n * @param arrayBuffer\n * @param byteOffset\n * @param length\n * @returns\n */\nexport function getMagicString(arrayBuffer, byteOffset, length) {\n if (arrayBuffer.byteLength <= byteOffset + length) {\n return '';\n }\n const dataView = new DataView(arrayBuffer);\n let magic = '';\n for (let i = 0; i < length; i++) {\n magic += String.fromCharCode(dataView.getUint8(byteOffset + i));\n }\n return magic;\n}\n", "import { getFirstCharacters } from \"../binary-utils/get-first-characters.js\";\n/**\n * Minimal JSON parser that throws more meaningful error messages\n */\nexport function parseJSON(string) {\n try {\n return JSON.parse(string);\n }\n catch (_) {\n throw new Error(`Failed to parse JSON from data starting with \"${getFirstCharacters(string)}\"`);\n }\n}\n", "/**\n * compare two binary arrays for equality\n * @param a\n * @param b\n * @param byteLength\n */\nexport function compareArrayBuffers(arrayBuffer1, arrayBuffer2, byteLength) {\n byteLength = byteLength || arrayBuffer1.byteLength;\n if (arrayBuffer1.byteLength < byteLength || arrayBuffer2.byteLength < byteLength) {\n return false;\n }\n const array1 = new Uint8Array(arrayBuffer1);\n const array2 = new Uint8Array(arrayBuffer2);\n for (let i = 0; i < array1.length; ++i) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n}\n/**\n * Concatenate a sequence of ArrayBuffers from arguments\n * @return A concatenated ArrayBuffer\n */\nexport function concatenateArrayBuffers(...sources) {\n return concatenateArrayBuffersFromArray(sources);\n}\n/**\n * Concatenate a sequence of ArrayBuffers from array\n * @return A concatenated ArrayBuffer\n */\nexport function concatenateArrayBuffersFromArray(sources) {\n // Make sure all inputs are wrapped in typed arrays\n const sourceArrays = sources.map((source2) => source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2);\n // Get length of all inputs\n const byteLength = sourceArrays.reduce((length, typedArray) => length + typedArray.byteLength, 0);\n // Allocate array with space for all inputs\n const result = new Uint8Array(byteLength);\n // Copy the subarrays\n let offset = 0;\n for (const sourceArray of sourceArrays) {\n result.set(sourceArray, offset);\n offset += sourceArray.byteLength;\n }\n // We work with ArrayBuffers, discard the typed array wrapper\n return result.buffer;\n}\n/**\n * Concatenate arbitrary count of typed arrays\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays\n * @param - list of arrays. All arrays should be the same type\n * @return A concatenated TypedArray\n */\nexport function concatenateTypedArrays(...typedArrays) {\n // @ts-ignore\n const arrays = typedArrays;\n // @ts-ignore\n const TypedArrayConstructor = (arrays && arrays.length > 1 && arrays[0].constructor) || null;\n if (!TypedArrayConstructor) {\n throw new Error('\"concatenateTypedArrays\" - incorrect quantity of arguments or arguments have incompatible data types');\n }\n const sumLength = arrays.reduce((acc, value) => acc + value.length, 0);\n // @ts-ignore typescript does not like dynamic constructors\n const result = new TypedArrayConstructor(sumLength);\n let offset = 0;\n for (const array of arrays) {\n result.set(array, offset);\n offset += array.length;\n }\n return result;\n}\n/**\n * Copy a view of an ArrayBuffer into new ArrayBuffer with byteOffset = 0\n * @param arrayBuffer\n * @param byteOffset\n * @param byteLength\n */\nexport function sliceArrayBuffer(arrayBuffer, byteOffset, byteLength) {\n const subArray = byteLength !== undefined\n ? new Uint8Array(arrayBuffer).subarray(byteOffset, byteOffset + byteLength)\n : new Uint8Array(arrayBuffer).subarray(byteOffset);\n const arrayCopy = new Uint8Array(subArray);\n return arrayCopy.buffer;\n}\n", "import { assert } from \"../env-utils/assert.js\";\n/**\n * Calculate new size of an arrayBuffer to be aligned to an n-byte boundary\n * This function increases `byteLength` by the minimum delta,\n * allowing the total length to be divided by `padding`\n * @param byteLength\n * @param padding\n */\nexport function padToNBytes(byteLength, padding) {\n assert(byteLength >= 0); // `Incorrect 'byteLength' value: ${byteLength}`\n assert(padding > 0); // `Incorrect 'padding' value: ${padding}`\n return (byteLength + (padding - 1)) & ~(padding - 1);\n}\n/**\n * Creates a new Uint8Array based on two different ArrayBuffers\n * @param targetBuffer The first buffer.\n * @param sourceBuffer The second buffer.\n * @return The new ArrayBuffer created out of the two.\n */\nexport function copyArrayBuffer(targetBuffer, sourceBuffer, byteOffset, byteLength = sourceBuffer.byteLength) {\n const targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);\n const sourceArray = new Uint8Array(sourceBuffer);\n targetArray.set(sourceArray);\n return targetBuffer;\n}\n/**\n * Copy from source to target at the targetOffset\n *\n * @param source - The data to copy\n * @param target - The destination to copy data into\n * @param targetOffset - The start offset into target to place the copied data\n * @returns the new offset taking into account proper padding\n */\nexport function copyToArray(source, target, targetOffset) {\n let sourceArray;\n if (source instanceof ArrayBuffer) {\n sourceArray = new Uint8Array(source);\n }\n else {\n // Pack buffer onto the big target array\n //\n // 'source.data.buffer' could be a view onto a larger buffer.\n // We MUST use this constructor to ensure the byteOffset and byteLength is\n // set to correct values from 'source.data' and not the underlying\n // buffer for target.set() to work properly.\n const srcByteOffset = source.byteOffset;\n const srcByteLength = source.byteLength;\n // In gltf parser it is set as \"arrayBuffer\" instead of \"buffer\"\n // https://github.com/visgl/loaders.gl/blob/1e3a82a0a65d7b6a67b1e60633453e5edda2960a/modules/gltf/src/lib/parse-gltf.js#L85\n sourceArray = new Uint8Array(source.buffer || source.arrayBuffer, srcByteOffset, srcByteLength);\n }\n // Pack buffer onto the big target array\n target.set(sourceArray, targetOffset);\n return targetOffset + padToNBytes(sourceArray.byteLength, 4);\n}\n", "import { concatenateArrayBuffers } from \"../binary-utils/array-buffer-utils.js\";\n// GENERAL UTILITIES\n/**\n * Iterate over async iterator, without resetting iterator if end is not reached\n * - forEach intentionally does not reset iterator if exiting loop prematurely\n * so that iteration can continue in a second loop\n * - It is recommended to use a standard for-await as last loop to ensure\n * iterator gets properly reset\n *\n * TODO - optimize using sync iteration if argument is an Iterable?\n *\n * @param iterator\n * @param visitor\n */\nexport async function forEach(iterator, visitor) {\n // eslint-disable-next-line\n while (true) {\n const { done, value } = await iterator.next();\n if (done) {\n iterator.return();\n return;\n }\n const cancel = visitor(value);\n if (cancel) {\n return;\n }\n }\n}\n// Breaking big data into iterable chunks, concatenating iterable chunks into big data objects\n/**\n * Concatenates all data chunks yielded by an (async) iterator\n * This function can e.g. be used to enable atomic parsers to work on (async) iterator inputs\n */\nexport async function concatenateArrayBuffersAsync(asyncIterator) {\n const arrayBuffers = [];\n for await (const chunk of asyncIterator) {\n arrayBuffers.push(chunk);\n }\n return concatenateArrayBuffers(...arrayBuffers);\n}\nexport async function concatenateStringsAsync(asyncIterator) {\n const strings = [];\n for await (const chunk of asyncIterator) {\n strings.push(chunk);\n }\n return strings.join('');\n}\n", "// Simple file alias mechanisms for tests.\nlet pathPrefix = '';\nconst fileAliases = {};\n/*\n * Set a relative path prefix\n */\nexport function setPathPrefix(prefix) {\n pathPrefix = prefix;\n}\n/*\n * Get the relative path prefix\n */\nexport function getPathPrefix() {\n return pathPrefix;\n}\n/**\n *\n * @param aliases\n *\n * Note: addAliases are an experimental export, they are only for testing of loaders.gl loaders\n * not intended as a generic aliasing mechanism\n */\nexport function addAliases(aliases) {\n Object.assign(fileAliases, aliases);\n}\n/**\n * Resolves aliases and adds path-prefix to paths\n */\nexport function resolvePath(filename) {\n for (const alias in fileAliases) {\n if (filename.startsWith(alias)) {\n const replacement = fileAliases[alias];\n filename = filename.replace(alias, replacement);\n }\n }\n if (!filename.startsWith('http://') && !filename.startsWith('https://')) {\n filename = `${pathPrefix}${filename}`;\n }\n return filename;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Isolates Buffer references to ensure they are only bundled under Node.js (avoids big webpack polyfill)\n// this file is selected by the package.json \"browser\" field).\n/**\n * Convert Buffer to ArrayBuffer\n * Converts Node.js `Buffer` to `ArrayBuffer` (without triggering bundler to include Buffer polyfill on browser)\n * @todo better data type\n */\nexport function toArrayBuffer(buffer) {\n return buffer;\n}\n/**\n * Convert (copy) ArrayBuffer to Buffer\n */\nexport function toBuffer(binaryData) {\n throw new Error('Buffer not supported in browser');\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport * as node from \"../node/buffer.js\";\n/**\n * Check for Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n */\nexport function isBuffer(value) {\n return value && typeof value === 'object' && value.isBuffer;\n}\n/**\n * Converts to Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n * @todo better data type\n */\nexport function toBuffer(data) {\n return node.toBuffer ? node.toBuffer(data) : data;\n}\n/**\n * Convert an object to an array buffer\n */\nexport function toArrayBuffer(data) {\n // Note: Should be called first, Buffers can trigger other detections below\n if (isBuffer(data)) {\n return node.toArrayBuffer(data);\n }\n if (data instanceof ArrayBuffer) {\n return data;\n }\n // Careful - Node Buffers look like Uint8Arrays (keep after isBuffer)\n if (ArrayBuffer.isView(data)) {\n if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {\n return data.buffer;\n }\n return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);\n }\n if (typeof data === 'string') {\n const text = data;\n const uint8Array = new TextEncoder().encode(text);\n return uint8Array.buffer;\n }\n // HACK to support Blob polyfill\n if (data && typeof data === 'object' && data._toArrayBuffer) {\n return data._toArrayBuffer();\n }\n throw new Error('toArrayBuffer');\n}\n", "// Beginning of a minimal implementation of the Node.js path API, that doesn't pull in big polyfills.\nimport { getCWD } from \"./get-cwd.js\";\n/**\n * Replacement for Node.js path.filename\n * @param url\n */\nexport function filename(url) {\n const slashIndex = url ? url.lastIndexOf('/') : -1;\n return slashIndex >= 0 ? url.substr(slashIndex + 1) : '';\n}\n/**\n * Replacement for Node.js path.dirname\n * @param url\n */\nexport function dirname(url) {\n const slashIndex = url ? url.lastIndexOf('/') : -1;\n return slashIndex >= 0 ? url.substr(0, slashIndex) : '';\n}\n/**\n * Replacement for Node.js path.join\n * @param parts\n */\nexport function join(...parts) {\n const separator = '/';\n parts = parts.map((part, index) => {\n if (index) {\n part = part.replace(new RegExp(`^${separator}`), '');\n }\n if (index !== parts.length - 1) {\n part = part.replace(new RegExp(`${separator}$`), '');\n }\n return part;\n });\n return parts.join(separator);\n}\n/* eslint-disable no-continue */\n/**\n * https://nodejs.org/api/path.html#path_path_resolve_paths\n * @param paths A sequence of paths or path segments.\n * @return resolved path\n * Forked from BTOdell/path-resolve under MIT license\n * @see https://github.com/BTOdell/path-resolve/blob/master/LICENSE\n */\nexport function resolve(...components) {\n const paths = [];\n for (let _i = 0; _i < components.length; _i++) {\n paths[_i] = components[_i];\n }\n let resolvedPath = '';\n let resolvedAbsolute = false;\n let cwd;\n for (let i = paths.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n let path;\n if (i >= 0) {\n path = paths[i];\n }\n else {\n if (cwd === undefined) {\n cwd = getCWD();\n }\n path = cwd;\n }\n // Skip empty entries\n if (path.length === 0) {\n continue;\n }\n resolvedPath = `${path}/${resolvedPath}`;\n resolvedAbsolute = path.charCodeAt(0) === SLASH;\n }\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n // Normalize the path (removes leading slash)\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n if (resolvedAbsolute) {\n return `/${resolvedPath}`;\n }\n else if (resolvedPath.length > 0) {\n return resolvedPath;\n }\n return '.';\n}\nconst SLASH = 47;\nconst DOT = 46;\n/**\n * Resolves . and .. elements in a path with directory names\n * Forked from BTOdell/path-resolve under MIT license\n * @see https://github.com/BTOdell/path-resolve/blob/master/LICENSE\n */\n/* eslint-disable max-depth */\n// eslint-disable-next-line complexity, max-statements\nfunction normalizeStringPosix(path, allowAboveRoot) {\n let res = '';\n let lastSlash = -1;\n let dots = 0;\n let code;\n let isAboveRoot = false;\n for (let i = 0; i <= path.length; ++i) {\n if (i < path.length) {\n code = path.charCodeAt(i);\n }\n else if (code === SLASH) {\n break;\n }\n else {\n code = SLASH;\n }\n if (code === SLASH) {\n if (lastSlash === i - 1 || dots === 1) {\n // NOOP\n }\n else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 ||\n !isAboveRoot ||\n res.charCodeAt(res.length - 1) !== DOT ||\n res.charCodeAt(res.length - 2) !== DOT) {\n if (res.length > 2) {\n const start = res.length - 1;\n let j = start;\n for (; j >= 0; --j) {\n if (res.charCodeAt(j) === SLASH) {\n break;\n }\n }\n if (j !== start) {\n res = j === -1 ? '' : res.slice(0, j);\n lastSlash = i;\n dots = 0;\n isAboveRoot = false;\n continue;\n }\n }\n else if (res.length === 2 || res.length === 1) {\n res = '';\n lastSlash = i;\n dots = 0;\n isAboveRoot = false;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0) {\n res += '/..';\n }\n else {\n res = '..';\n }\n isAboveRoot = true;\n }\n }\n else {\n const slice = path.slice(lastSlash + 1, i);\n if (res.length > 0) {\n res += `/${slice}`;\n }\n else {\n res = slice;\n }\n isAboveRoot = false;\n }\n lastSlash = i;\n dots = 0;\n }\n else if (code === DOT && dots !== -1) {\n ++dots;\n }\n else {\n dots = -1;\n }\n }\n return res;\n}\n", "// loaders.gl MIT license\nexport function getCWD() {\n if (typeof process !== 'undefined' && typeof process.cwd !== 'undefined') {\n return process.cwd();\n }\n const pathname = window.location?.pathname;\n return pathname?.slice(0, pathname.lastIndexOf('/') + 1) || '';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst isBoolean = (x) => typeof x === 'boolean';\nconst isFunction = (x) => typeof x === 'function';\nexport const isObject = (x) => x !== null && typeof x === 'object';\nexport const isPureObject = (x) => isObject(x) && x.constructor === {}.constructor;\nexport const isPromise = (x) => isObject(x) && isFunction(x.then);\nexport const isIterable = (x) => Boolean(x) && typeof x[Symbol.iterator] === 'function';\nexport const isAsyncIterable = (x) => x && typeof x[Symbol.asyncIterator] === 'function';\nexport const isIterator = (x) => x && isFunction(x.next);\nexport const isResponse = (x) => (typeof Response !== 'undefined' && x instanceof Response) ||\n (x && x.arrayBuffer && x.text && x.json);\nexport const isFile = (x) => typeof File !== 'undefined' && x instanceof File;\nexport const isBlob = (x) => typeof Blob !== 'undefined' && x instanceof Blob;\n/** Check for Node.js `Buffer` without triggering bundler to include buffer polyfill */\nexport const isBuffer = (x) => x && typeof x === 'object' && x.isBuffer;\nexport const isWritableDOMStream = (x) => isObject(x) && isFunction(x.abort) && isFunction(x.getWriter);\nexport const isReadableDOMStream = (x) => (typeof ReadableStream !== 'undefined' && x instanceof ReadableStream) ||\n (isObject(x) && isFunction(x.tee) && isFunction(x.cancel) && isFunction(x.getReader));\n// Not implemented in Firefox: && isFunction(x.pipeTo)\nexport const isWritableNodeStream = (x) => isObject(x) && isFunction(x.end) && isFunction(x.write) && isBoolean(x.writable);\nexport const isReadableNodeStream = (x) => isObject(x) && isFunction(x.read) && isFunction(x.pipe) && isBoolean(x.readable);\nexport const isReadableStream = (x) => isReadableDOMStream(x) || isReadableNodeStream(x);\nexport const isWritableStream = (x) => isWritableDOMStream(x) || isWritableNodeStream(x);\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nexport class FetchError extends Error {\n constructor(message, info) {\n super(message);\n this.reason = info.reason;\n this.url = info.url;\n this.response = info.response;\n }\n /** A best effort reason for why the fetch failed */\n reason;\n /** The URL that failed to load. Empty string if not available. */\n url;\n /** The Response object, if any. */\n response;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// TODO - build/integrate proper MIME type parsing\n// https://mimesniff.spec.whatwg.org/\nconst DATA_URL_PATTERN = /^data:([-\\w.]+\\/[-\\w.+]+)(;|,)/;\nconst MIME_TYPE_PATTERN = /^([-\\w.]+\\/[-\\w.+]+)/;\n/**\n * Compare two MIME types, case insensitively etc.\n * @param mimeType1\n * @param mimeType2\n * @returns true if the MIME types are equivalent\n * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#structure_of_a_mime_type\n */\nexport function compareMIMETypes(mimeType1, mimeType2) {\n if (mimeType1.toLowerCase() === mimeType2.toLowerCase()) {\n return true;\n }\n return false;\n}\n/**\n * Remove extra data like `charset` from MIME types\n * @param mimeString\n * @returns A clean MIME type, or an empty string\n *\n * @todo - handle more advanced MIMETYpes, multiple types\n * @todo - extract charset etc\n */\nexport function parseMIMEType(mimeString) {\n // If resource is a data url, extract any embedded mime type\n const matches = MIME_TYPE_PATTERN.exec(mimeString);\n if (matches) {\n return matches[1];\n }\n return mimeString;\n}\n/**\n * Extract MIME type from data URL\n *\n * @param mimeString\n * @returns A clean MIME type, or an empty string\n *\n * @todo - handle more advanced MIMETYpes, multiple types\n * @todo - extract charset etc\n */\nexport function parseMIMETypeFromURL(url) {\n // If resource is a data URL, extract any embedded mime type\n const matches = DATA_URL_PATTERN.exec(url);\n if (matches) {\n return matches[1];\n }\n return '';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst QUERY_STRING_PATTERN = /\\?.*/;\nexport function extractQueryString(url) {\n const matches = url.match(QUERY_STRING_PATTERN);\n return matches && matches[0];\n}\nexport function stripQueryString(url) {\n return url.replace(QUERY_STRING_PATTERN, '');\n}\nexport function shortenUrlForDisplay(url) {\n if (url.length < 50) {\n return url;\n }\n const urlEnd = url.slice(url.length - 15);\n const urlStart = url.substr(0, 32);\n return `${urlStart}...${urlEnd}`;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isResponse, isBlob } from \"../../javascript-utils/is-type.js\";\nimport { parseMIMEType, parseMIMETypeFromURL } from \"./mime-type-utils.js\";\nimport { stripQueryString } from \"./url-utils.js\";\n/**\n * Returns the URL associated with this resource.\n * The returned value may include a query string and need further processing.\n * If it cannot determine url, the corresponding value will be an empty string\n *\n * @todo string parameters are assumed to be URLs\n */\nexport function getResourceUrl(resource) {\n // If resource is a `Response`, it contains the information directly as a field\n if (isResponse(resource)) {\n const response = resource;\n return response.url;\n }\n // If the resource is a Blob or a File (subclass of Blob)\n if (isBlob(resource)) {\n const blob = resource;\n // File objects have a \"name\" property. Blob objects don't have any\n // url (name) information\n return blob.name || '';\n }\n if (typeof resource === 'string') {\n return resource;\n }\n // Unknown\n return '';\n}\n/**\n * Returns the URL associated with this resource.\n * The returned value may include a query string and need further processing.\n * If it cannot determine url, the corresponding value will be an empty string\n *\n * @todo string parameters are assumed to be URLs\n */\nexport function getResourceMIMEType(resource) {\n // If resource is a response, it contains the information directly\n if (isResponse(resource)) {\n const response = resource;\n const contentTypeHeader = response.headers.get('content-type') || '';\n const noQueryUrl = stripQueryString(response.url);\n return parseMIMEType(contentTypeHeader) || parseMIMETypeFromURL(noQueryUrl);\n }\n // If the resource is a Blob or a File (subclass of Blob)\n if (isBlob(resource)) {\n const blob = resource;\n return blob.type || '';\n }\n if (typeof resource === 'string') {\n return parseMIMETypeFromURL(resource);\n }\n // Unknown\n return '';\n}\n/**\n * Returns (approximate) content length for a resource if it can be determined.\n * Returns -1 if content length cannot be determined.\n * @param resource\n\n * @note string parameters are NOT assumed to be URLs\n */\nexport function getResourceContentLength(resource) {\n if (isResponse(resource)) {\n const response = resource;\n return response.headers['content-length'] || -1;\n }\n if (isBlob(resource)) {\n const blob = resource;\n return blob.size;\n }\n if (typeof resource === 'string') {\n // TODO - handle data URL?\n return resource.length;\n }\n if (resource instanceof ArrayBuffer) {\n return resource.byteLength;\n }\n if (ArrayBuffer.isView(resource)) {\n return resource.byteLength;\n }\n return -1;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isResponse } from \"../../javascript-utils/is-type.js\";\nimport { FetchError } from \"../fetch/fetch-error.js\";\nimport { getResourceContentLength, getResourceUrl, getResourceMIMEType } from \"./resource-utils.js\";\nimport { shortenUrlForDisplay } from \"./url-utils.js\";\n/**\n * Returns a Response object\n * Adds content-length header when possible\n *\n * @param resource\n */\nexport async function makeResponse(resource) {\n if (isResponse(resource)) {\n return resource;\n }\n // Add content-length header if possible\n const headers = {};\n const contentLength = getResourceContentLength(resource);\n if (contentLength >= 0) {\n headers['content-length'] = String(contentLength);\n }\n // `new Response(File)` does not preserve content-type and URL\n // so we add them here\n const url = getResourceUrl(resource);\n const type = getResourceMIMEType(resource);\n if (type) {\n headers['content-type'] = type;\n }\n // Add a custom header with initial bytes if available\n const initialDataUrl = await getInitialDataUrl(resource);\n if (initialDataUrl) {\n headers['x-first-bytes'] = initialDataUrl;\n }\n // TODO - is this the best way of handling strings?\n // Maybe package as data URL instead?\n if (typeof resource === 'string') {\n // Convert to ArrayBuffer to avoid Response treating it as a URL\n resource = new TextEncoder().encode(resource);\n }\n // Attempt to create a Response from the resource, adding headers and setting url\n const response = new Response(resource, { headers });\n // We can't control `Response.url` via constructor, use a property override to record URL.\n Object.defineProperty(response, 'url', { value: url });\n return response;\n}\n/**\n * Checks response status (async) and throws a helpful error message if status is not OK.\n * @param response\n */\nexport async function checkResponse(response) {\n if (!response.ok) {\n const error = await getResponseError(response);\n throw error;\n }\n}\n/**\n * Checks response status (sync) and throws a helpful error message if status is not OK.\n * @param response\n */\nexport function checkResponseSync(response) {\n if (!response.ok) {\n let message = `${response.status} ${response.statusText}`;\n message = message.length > 60 ? `${message.slice(0, 60)}...` : message;\n throw new Error(message);\n }\n}\n// HELPERS\nasync function getResponseError(response) {\n const shortUrl = shortenUrlForDisplay(response.url);\n let message = `Failed to fetch resource (${response.status}) ${response.statusText}: ${shortUrl}`;\n message = message.length > 100 ? `${message.slice(0, 100)}...` : message;\n const info = {\n reason: response.statusText,\n url: response.url,\n response\n };\n try {\n const contentType = response.headers.get('Content-Type');\n info.reason = contentType?.includes('application/json')\n ? await response.json()\n : response.text();\n }\n catch (error) {\n // eslint forbids return in a finally statement, so we just catch here\n }\n return new FetchError(message, info);\n}\nasync function getInitialDataUrl(resource) {\n const INITIAL_DATA_LENGTH = 5;\n if (typeof resource === 'string') {\n return `data:,${resource.slice(0, INITIAL_DATA_LENGTH)}`;\n }\n if (resource instanceof Blob) {\n const blobSlice = resource.slice(0, 5);\n return await new Promise((resolve) => {\n const reader = new FileReader();\n reader.onload = (event) => resolve(event?.target?.result);\n reader.readAsDataURL(blobSlice);\n });\n }\n if (resource instanceof ArrayBuffer) {\n const slice = resource.slice(0, INITIAL_DATA_LENGTH);\n const base64 = arrayBufferToBase64(slice);\n return `data:base64,${base64}`;\n }\n return null;\n}\n// https://stackoverflow.com/questions/9267899/arraybuffer-to-base64-encoded-string\nfunction arrayBufferToBase64(buffer) {\n let binary = '';\n const bytes = new Uint8Array(buffer);\n for (let i = 0; i < bytes.byteLength; i++) {\n binary += String.fromCharCode(bytes[i]);\n }\n return btoa(binary);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { resolvePath } from '@loaders.gl/loader-utils';\nimport { makeResponse } from \"../utils/response-utils.js\";\n// import {FetchError} from './fetch-error';\nexport function isNodePath(url) {\n return !isRequestURL(url) && !isDataURL(url);\n}\nexport function isRequestURL(url) {\n return url.startsWith('http:') || url.startsWith('https:');\n}\nexport function isDataURL(url) {\n return url.startsWith('data:');\n}\n/**\n * fetch API compatible function\n * - Supports fetching from Node.js local file system paths\n * - Respects pathPrefix and file aliases\n */\nexport async function fetchFile(urlOrData, fetchOptions) {\n if (typeof urlOrData === 'string') {\n const url = resolvePath(urlOrData);\n // Support fetching from local file system\n if (isNodePath(url)) {\n if (globalThis.loaders?.fetchNode) {\n return globalThis.loaders?.fetchNode(url, fetchOptions);\n }\n // throw new Error(\n // 'fetchFile: globalThis.loaders.fetchNode not defined. Install @loaders.gl/polyfills'\n // );\n }\n // Call global fetch\n return await fetch(url, fetchOptions);\n }\n // TODO - should we still call fetch on non-URL inputs?\n return await makeResponse(urlOrData);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// probe.gl Log compatible loggers\nimport { Log } from '@probe.gl/log';\nexport const probeLog = new Log({ id: 'loaders.gl' });\n// Logs nothing\nexport class NullLog {\n log() {\n return () => { };\n }\n info() {\n return () => { };\n }\n warn() {\n return () => { };\n }\n error() {\n return () => { };\n }\n}\n// Logs to console\nexport class ConsoleLog {\n console;\n constructor() {\n this.console = console; // eslint-disable-line\n }\n log(...args) {\n return this.console.log.bind(this.console, ...args);\n }\n info(...args) {\n return this.console.info.bind(this.console, ...args);\n }\n warn(...args) {\n return this.console.warn.bind(this.console, ...args);\n }\n error(...args) {\n return this.console.error.bind(this.console, ...args);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser } from '@loaders.gl/loader-utils';\nimport { ConsoleLog } from \"./loggers.js\";\nexport const DEFAULT_LOADER_OPTIONS = {\n // baseUri\n fetch: null,\n mimeType: undefined,\n nothrow: false,\n log: new ConsoleLog(), // A probe.gl compatible (`log.log()()` syntax) that just logs to console\n useLocalLibraries: false,\n CDN: 'https://unpkg.com/@loaders.gl',\n worker: true, // By default, use worker if provided by loader.\n maxConcurrency: 3, // How many worker instances should be created for each loader.\n maxMobileConcurrency: 1, // How many worker instances should be created for each loader on mobile devices.\n reuseWorkers: isBrowser, // By default reuse workers in browser (Node.js refuses to terminate if browsers are running)\n _nodeWorkers: false, // By default do not support node workers\n _workerType: '', // 'test' to use locally generated workers\n limit: 0,\n _limitMB: 0,\n batchSize: 'auto',\n batchDebounceMs: 0,\n metadata: false, // TODO - currently only implemented for parseInBatches, adds initial metadata batch,\n transforms: []\n};\nexport const REMOVED_LOADER_OPTIONS = {\n throws: 'nothrow',\n dataType: '(no longer used)',\n uri: 'baseUri',\n // Warn if fetch options are used on top-level\n method: 'fetch.method',\n headers: 'fetch.headers',\n body: 'fetch.body',\n mode: 'fetch.mode',\n credentials: 'fetch.credentials',\n cache: 'fetch.cache',\n redirect: 'fetch.redirect',\n referrer: 'fetch.referrer',\n referrerPolicy: 'fetch.referrerPolicy',\n integrity: 'fetch.integrity',\n keepalive: 'fetch.keepalive',\n signal: 'fetch.signal'\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { registerJSModules } from '@loaders.gl/loader-utils';\nimport { isPureObject, isObject } from \"../../javascript-utils/is-type.js\";\nimport { probeLog, NullLog } from \"./loggers.js\";\nimport { DEFAULT_LOADER_OPTIONS, REMOVED_LOADER_OPTIONS } from \"./option-defaults.js\";\n/**\n * Helper for safely accessing global loaders.gl variables\n * Wraps initialization of global variable in function to defeat overly aggressive tree-shakers\n */\nexport function getGlobalLoaderState() {\n // @ts-ignore\n globalThis.loaders = globalThis.loaders || {};\n // @ts-ignore\n const { loaders } = globalThis;\n // Add _state object to keep separate from modules added to globalThis.loaders\n if (!loaders._state) {\n loaders._state = {};\n }\n return loaders._state;\n}\n/**\n * Store global loader options on the global object to increase chances of cross loaders-version interoperability\n * NOTE: This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks\n * @returns global loader options merged with default loader options\n */\nexport function getGlobalLoaderOptions() {\n const state = getGlobalLoaderState();\n // Ensure all default loader options from this library are mentioned\n state.globalOptions = state.globalOptions || { ...DEFAULT_LOADER_OPTIONS };\n return state.globalOptions;\n}\n/**\n * Set global loader options\n * @param options\n */\nexport function setGlobalOptions(options) {\n const state = getGlobalLoaderState();\n const globalOptions = getGlobalLoaderOptions();\n // @ts-expect-error First param looks incorrect\n state.globalOptions = normalizeOptionsInternal(globalOptions, options);\n // Make sure any new modules are registered\n registerJSModules(options.modules);\n}\n/**\n * Merges options with global opts and loader defaults, also injects baseUri\n * @param options\n * @param loader\n * @param loaders\n * @param url\n */\nexport function normalizeOptions(options, loader, loaders, url) {\n loaders = loaders || [];\n loaders = Array.isArray(loaders) ? loaders : [loaders];\n validateOptions(options, loaders);\n return normalizeOptionsInternal(loader, options, url);\n}\n// VALIDATE OPTIONS\n/**\n * Warn for unsupported options\n * @param options\n * @param loaders\n */\nfunction validateOptions(options, loaders) {\n // Check top level options\n validateOptionsObject(options, null, DEFAULT_LOADER_OPTIONS, REMOVED_LOADER_OPTIONS, loaders);\n for (const loader of loaders) {\n // Get the scoped, loader specific options from the user supplied options\n const idOptions = ((options && options[loader.id]) || {});\n // Get scoped, loader specific default and deprecated options from the selected loader\n const loaderOptions = (loader.options && loader.options[loader.id]) || {};\n const deprecatedOptions = (loader.deprecatedOptions && loader.deprecatedOptions[loader.id]) || {};\n // Validate loader specific options\n // @ts-ignore\n validateOptionsObject(idOptions, loader.id, loaderOptions, deprecatedOptions, loaders);\n }\n}\n// eslint-disable-next-line max-params, complexity\nfunction validateOptionsObject(options, id, defaultOptions, deprecatedOptions, loaders) {\n const loaderName = id || 'Top level';\n const prefix = id ? `${id}.` : '';\n for (const key in options) {\n // If top level option value is an object it could options for a loader, so ignore\n const isSubOptions = !id && isObject(options[key]);\n const isBaseUriOption = key === 'baseUri' && !id;\n const isWorkerUrlOption = key === 'workerUrl' && id;\n // .workerUrl requires special handling as it is now auto-generated and no longer specified as a default option.\n if (!(key in defaultOptions) && !isBaseUriOption && !isWorkerUrlOption) {\n // Issue deprecation warnings\n if (key in deprecatedOptions) {\n probeLog.warn(`${loaderName} loader option \\'${prefix}${key}\\' no longer supported, use \\'${deprecatedOptions[key]}\\'`)();\n }\n else if (!isSubOptions) {\n const suggestion = findSimilarOption(key, loaders);\n probeLog.warn(`${loaderName} loader option \\'${prefix}${key}\\' not recognized. ${suggestion}`)();\n }\n }\n }\n}\nfunction findSimilarOption(optionKey, loaders) {\n const lowerCaseOptionKey = optionKey.toLowerCase();\n let bestSuggestion = '';\n for (const loader of loaders) {\n for (const key in loader.options) {\n if (optionKey === key) {\n return `Did you mean \\'${loader.id}.${key}\\'?`;\n }\n const lowerCaseKey = key.toLowerCase();\n const isPartialMatch = lowerCaseOptionKey.startsWith(lowerCaseKey) || lowerCaseKey.startsWith(lowerCaseOptionKey);\n if (isPartialMatch) {\n bestSuggestion = bestSuggestion || `Did you mean \\'${loader.id}.${key}\\'?`;\n }\n }\n }\n return bestSuggestion;\n}\nfunction normalizeOptionsInternal(loader, options, url) {\n const loaderDefaultOptions = loader.options || {};\n const mergedOptions = { ...loaderDefaultOptions };\n addUrlOptions(mergedOptions, url);\n // LOGGING: options.log can be set to `null` to defeat logging\n if (mergedOptions.log === null) {\n mergedOptions.log = new NullLog();\n }\n mergeNestedFields(mergedOptions, getGlobalLoaderOptions());\n mergeNestedFields(mergedOptions, options);\n return mergedOptions;\n}\n// Merge nested options objects\nfunction mergeNestedFields(mergedOptions, options) {\n for (const key in options) {\n // Check for nested options\n // object in options => either no key in defaultOptions or object in defaultOptions\n if (key in options) {\n const value = options[key];\n if (isPureObject(value) && isPureObject(mergedOptions[key])) {\n mergedOptions[key] = {\n ...mergedOptions[key],\n ...options[key]\n };\n }\n else {\n mergedOptions[key] = options[key];\n }\n }\n // else: No need to merge nested opts, and the initial merge already copied over the nested options\n }\n}\n/**\n * Harvest information from the url\n * @deprecated This is mainly there to support a hack in the GLTFLoader\n * TODO - baseUri should be a directory, i.e. remove file component from baseUri\n * TODO - extract extension?\n * TODO - extract query parameters?\n * TODO - should these be injected on context instead of options?\n */\nfunction addUrlOptions(options, url) {\n if (url && !('baseUri' in options)) {\n options.baseUri = url;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from '@loaders.gl/loader-utils';\nexport function isLoaderObject(loader) {\n if (!loader) {\n return false;\n }\n if (Array.isArray(loader)) {\n loader = loader[0];\n }\n const hasExtensions = Array.isArray(loader?.extensions);\n /* Now handled by types and worker loaders do not have these\n let hasParser =\n loader.parseTextSync ||\n loader.parseSync ||\n loader.parse ||\n loader.parseStream || // TODO Remove, Replace with parseInBatches\n loader.parseInBatches;\n */\n return hasExtensions;\n}\nexport function normalizeLoader(loader) {\n // This error is fairly easy to trigger by mixing up import statements etc\n // So we make an exception and add a developer error message for this case\n // To help new users from getting stuck here\n assert(loader, 'null loader');\n assert(isLoaderObject(loader), 'invalid loader');\n // NORMALIZE [LOADER, OPTIONS] => LOADER\n // If [loader, options], create a new loaders object with options merged in\n let options;\n if (Array.isArray(loader)) {\n options = loader[1];\n loader = loader[0];\n loader = {\n ...loader,\n options: { ...loader.options, ...options }\n };\n }\n // NORMALIZE text and binary flags\n // Ensure at least one of text/binary flags are properly set\n // @ts-expect-error\n if (loader?.parseTextSync || loader?.parseText) {\n loader.text = true;\n }\n if (!loader.text) {\n loader.binary = true;\n }\n return loader;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { normalizeLoader } from \"../loader-utils/normalize-loader.js\";\nimport { getGlobalLoaderState } from \"../loader-utils/option-utils.js\";\n/**\n * Store global registered loaders on the global object to increase chances of cross loaders-version interoperability\n * This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks\n */\nconst getGlobalLoaderRegistry = () => {\n const state = getGlobalLoaderState();\n state.loaderRegistry = state.loaderRegistry || [];\n return state.loaderRegistry;\n};\n/** Register a list of global loaders */\nexport function registerLoaders(loaders) {\n const loaderRegistry = getGlobalLoaderRegistry();\n loaders = Array.isArray(loaders) ? loaders : [loaders];\n for (const loader of loaders) {\n const normalizedLoader = normalizeLoader(loader);\n if (!loaderRegistry.find((registeredLoader) => normalizedLoader === registeredLoader)) {\n // add to the beginning of the loaderRegistry, so the last registeredLoader get picked\n loaderRegistry.unshift(normalizedLoader);\n }\n }\n}\nexport function getRegisteredLoaders() {\n return getGlobalLoaderRegistry();\n}\n/** @deprecated For testing only */\nexport function _unregisterLoaders() {\n const state = getGlobalLoaderState();\n state.loaderRegistry = [];\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { Log } from '@probe.gl/log';\nexport const log = new Log({ id: 'loaders.gl' });\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { compareArrayBuffers, path } from '@loaders.gl/loader-utils';\nimport { normalizeLoader } from \"../loader-utils/normalize-loader.js\";\nimport { log } from \"../utils/log.js\";\nimport { getResourceUrl, getResourceMIMEType } from \"../utils/resource-utils.js\";\nimport { compareMIMETypes } from \"../utils/mime-type-utils.js\";\nimport { getRegisteredLoaders } from \"./register-loaders.js\";\nimport { isBlob } from \"../../javascript-utils/is-type.js\";\nimport { stripQueryString } from \"../utils/url-utils.js\";\nconst EXT_PATTERN = /\\.([^.]+)$/;\n// TODO - Need a variant that peeks at streams for parseInBatches\n// TODO - Detect multiple matching loaders? Use heuristics to grade matches?\n// TODO - Allow apps to pass context to disambiguate between multiple matches (e.g. multiple .json formats)?\n/**\n * Find a loader that matches file extension and/or initial file content\n * Search the loaders array argument for a loader that matches url extension or initial data\n * Returns: a normalized loader\n * @param data data to assist\n * @param loaders\n * @param options\n * @param context used internally, applications should not provide this parameter\n */\nexport async function selectLoader(data, loaders = [], options, context) {\n if (!validHTTPResponse(data)) {\n return null;\n }\n // First make a sync attempt, disabling exceptions\n let loader = selectLoaderSync(data, loaders, { ...options, nothrow: true }, context);\n if (loader) {\n return loader;\n }\n // For Blobs and Files, try to asynchronously read a small initial slice and test again with that\n // to see if we can detect by initial content\n if (isBlob(data)) {\n data = await data.slice(0, 10).arrayBuffer();\n loader = selectLoaderSync(data, loaders, options, context);\n }\n // no loader available\n if (!loader && !options?.nothrow) {\n throw new Error(getNoValidLoaderMessage(data));\n }\n return loader;\n}\n/**\n * Find a loader that matches file extension and/or initial file content\n * Search the loaders array argument for a loader that matches url extension or initial data\n * Returns: a normalized loader\n * @param data data to assist\n * @param loaders\n * @param options\n * @param context used internally, applications should not provide this parameter\n */\nexport function selectLoaderSync(data, loaders = [], options, context) {\n if (!validHTTPResponse(data)) {\n return null;\n }\n // eslint-disable-next-line complexity\n // if only a single loader was provided (not as array), force its use\n // TODO - Should this behavior be kept and documented?\n if (loaders && !Array.isArray(loaders)) {\n // TODO - remove support for legacy loaders\n return normalizeLoader(loaders);\n }\n // Build list of candidate loaders that will be searched in order for a match\n let candidateLoaders = [];\n // First search supplied loaders\n if (loaders) {\n candidateLoaders = candidateLoaders.concat(loaders);\n }\n // Then fall back to registered loaders\n if (!options?.ignoreRegisteredLoaders) {\n candidateLoaders.push(...getRegisteredLoaders());\n }\n // TODO - remove support for legacy loaders\n normalizeLoaders(candidateLoaders);\n const loader = selectLoaderInternal(data, candidateLoaders, options, context);\n // no loader available\n if (!loader && !options?.nothrow) {\n throw new Error(getNoValidLoaderMessage(data));\n }\n return loader;\n}\n/** Implements loaders selection logic */\n// eslint-disable-next-line complexity\nfunction selectLoaderInternal(data, loaders, options, context) {\n const url = getResourceUrl(data);\n const type = getResourceMIMEType(data);\n const testUrl = stripQueryString(url) || context?.url;\n let loader = null;\n let reason = '';\n // if options.mimeType is supplied, it takes precedence\n if (options?.mimeType) {\n loader = findLoaderByMIMEType(loaders, options?.mimeType);\n reason = `match forced by supplied MIME type ${options?.mimeType}`;\n }\n // Look up loader by url\n loader = loader || findLoaderByUrl(loaders, testUrl);\n reason = reason || (loader ? `matched url ${testUrl}` : '');\n // Look up loader by mime type\n loader = loader || findLoaderByMIMEType(loaders, type);\n reason = reason || (loader ? `matched MIME type ${type}` : '');\n // Look for loader via initial bytes (Note: not always accessible (e.g. Response, stream, async iterator)\n // @ts-ignore Blob | Response\n loader = loader || findLoaderByInitialBytes(loaders, data);\n // @ts-ignore Blob | Response\n reason = reason || (loader ? `matched initial data ${getFirstCharacters(data)}` : '');\n // Look up loader by fallback mime type\n if (options?.fallbackMimeType) {\n loader = loader || findLoaderByMIMEType(loaders, options?.fallbackMimeType);\n reason = reason || (loader ? `matched fallback MIME type ${type}` : '');\n }\n if (reason) {\n log.log(1, `selectLoader selected ${loader?.name}: ${reason}.`);\n }\n return loader;\n}\n/** Check HTTP Response */\nfunction validHTTPResponse(data) {\n // HANDLE HTTP status\n if (data instanceof Response) {\n // 204 - NO CONTENT. This handles cases where e.g. a tile server responds with 204 for a missing tile\n if (data.status === 204) {\n return false;\n }\n }\n return true;\n}\n/** Generate a helpful message to help explain why loader selection failed. */\nfunction getNoValidLoaderMessage(data) {\n const url = getResourceUrl(data);\n const type = getResourceMIMEType(data);\n let message = 'No valid loader found (';\n message += url ? `${path.filename(url)}, ` : 'no url provided, ';\n message += `MIME type: ${type ? `\"${type}\"` : 'not provided'}, `;\n // First characters are only accessible when called on data (string or arrayBuffer).\n // @ts-ignore Blob | Response\n const firstCharacters = data ? getFirstCharacters(data) : '';\n message += firstCharacters ? ` first bytes: \"${firstCharacters}\"` : 'first bytes: not available';\n message += ')';\n return message;\n}\nfunction normalizeLoaders(loaders) {\n for (const loader of loaders) {\n normalizeLoader(loader);\n }\n}\n// TODO - Would be nice to support http://example.com/file.glb?parameter=1\n// E.g: x = new URL('http://example.com/file.glb?load=1'; x.pathname\nfunction findLoaderByUrl(loaders, url) {\n // Get extension\n const match = url && EXT_PATTERN.exec(url);\n const extension = match && match[1];\n return extension ? findLoaderByExtension(loaders, extension) : null;\n}\nfunction findLoaderByExtension(loaders, extension) {\n extension = extension.toLowerCase();\n for (const loader of loaders) {\n for (const loaderExtension of loader.extensions) {\n if (loaderExtension.toLowerCase() === extension) {\n return loader;\n }\n }\n }\n return null;\n}\nfunction findLoaderByMIMEType(loaders, mimeType) {\n for (const loader of loaders) {\n if (loader.mimeTypes?.some((mimeType1) => compareMIMETypes(mimeType, mimeType1))) {\n return loader;\n }\n // Support referring to loaders using the \"unregistered tree\"\n // https://en.wikipedia.org/wiki/Media_type#Unregistered_tree\n if (compareMIMETypes(mimeType, `application/x.${loader.id}`)) {\n return loader;\n }\n }\n return null;\n}\nfunction findLoaderByInitialBytes(loaders, data) {\n if (!data) {\n return null;\n }\n for (const loader of loaders) {\n if (typeof data === 'string') {\n if (testDataAgainstText(data, loader)) {\n return loader;\n }\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n if (testDataAgainstBinary(data.buffer, data.byteOffset, loader)) {\n return loader;\n }\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n if (testDataAgainstBinary(data, byteOffset, loader)) {\n return loader;\n }\n }\n // TODO Handle streaming case (requires creating a new AsyncIterator)\n }\n return null;\n}\nfunction testDataAgainstText(data, loader) {\n if (loader.testText) {\n return loader.testText(data);\n }\n const tests = Array.isArray(loader.tests) ? loader.tests : [loader.tests];\n return tests.some((test) => data.startsWith(test));\n}\nfunction testDataAgainstBinary(data, byteOffset, loader) {\n const tests = Array.isArray(loader.tests) ? loader.tests : [loader.tests];\n return tests.some((test) => testBinary(data, byteOffset, loader, test));\n}\nfunction testBinary(data, byteOffset, loader, test) {\n if (test instanceof ArrayBuffer) {\n return compareArrayBuffers(test, data, test.byteLength);\n }\n switch (typeof test) {\n case 'function':\n return test(data);\n case 'string':\n // Magic bytes check: If `test` is a string, check if binary data starts with that strings\n const magic = getMagicString(data, byteOffset, test.length);\n return test === magic;\n default:\n return false;\n }\n}\nfunction getFirstCharacters(data, length = 5) {\n if (typeof data === 'string') {\n return data.slice(0, length);\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n return getMagicString(data.buffer, data.byteOffset, length);\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n return getMagicString(data, byteOffset, length);\n }\n return '';\n}\nfunction getMagicString(arrayBuffer, byteOffset, length) {\n if (arrayBuffer.byteLength < byteOffset + length) {\n return '';\n }\n const dataView = new DataView(arrayBuffer);\n let magic = '';\n for (let i = 0; i < length; i++) {\n magic += String.fromCharCode(dataView.getUint8(byteOffset + i));\n }\n return magic;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n/**\n * Returns an iterator that breaks a big string into chunks and yields them one-by-one as ArrayBuffers\n * @param blob string to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeStringIterator(string, options) {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n let offset = 0;\n const textEncoder = new TextEncoder();\n while (offset < string.length) {\n // Create a chunk of the right size\n const chunkLength = Math.min(string.length - offset, chunkSize);\n const chunk = string.slice(offset, offset + chunkLength);\n offset += chunkLength;\n // yield an ArrayBuffer chunk\n yield textEncoder.encode(chunk);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n/**\n * Returns an iterator that breaks a big ArrayBuffer into chunks and yields them one-by-one\n * @param blob ArrayBuffer to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeArrayBufferIterator(arrayBuffer, options = {}) {\n const { chunkSize = DEFAULT_CHUNK_SIZE } = options;\n let byteOffset = 0;\n while (byteOffset < arrayBuffer.byteLength) {\n // Create a chunk of the right size\n const chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);\n const chunk = new ArrayBuffer(chunkByteLength);\n // Copy data from the big chunk\n const sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);\n const chunkArray = new Uint8Array(chunk);\n chunkArray.set(sourceArray);\n // yield the chunk\n byteOffset += chunkByteLength;\n yield chunk;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 1024 * 1024; // 1MB \u2014 biggest value that keeps UI responsive\n/**\n * Returns an iterator that breaks a big Blob into chunks and yields them one-by-one\n * @param blob Blob or File object\n * @param options\n * @param options.chunkSize\n */\nexport async function* makeBlobIterator(blob, options) {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n let offset = 0;\n while (offset < blob.size) {\n const end = offset + chunkSize;\n const chunk = await blob.slice(offset, end).arrayBuffer();\n offset = end;\n yield chunk;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser, toArrayBuffer } from '@loaders.gl/loader-utils';\n/**\n * Returns an async iterable that reads from a stream (works in both Node.js and browsers)\n * @param stream stream to iterator over\n */\nexport function makeStreamIterator(stream, options) {\n return isBrowser\n ? makeBrowserStreamIterator(stream, options)\n : makeNodeStreamIterator(stream, options);\n}\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @see https://jakearchibald.com/2017/async-iterators-and-generators/#making-streams-iterate\n */\nasync function* makeBrowserStreamIterator(stream, options) {\n // WhatWG: stream is supposed to have a `getIterator` method\n // if (typeof stream.getIterator === 'function') {\n // return stream.getIterator();\n // }\n // if (typeof stream[Symbol.asyncIterator] === 'function') {\n // return makeToArrayBufferIterator(stream);\n // }\n // In the browser, we first need to get a lock on the stream\n const reader = stream.getReader();\n let nextBatchPromise;\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const currentBatchPromise = nextBatchPromise || reader.read();\n // Issue a read for an additional batch, while we await the next batch\n // Idea is to make fetching happen in parallel with processing / parsing\n if (options?._streamReadAhead) {\n nextBatchPromise = reader.read();\n }\n // Read from the stream\n // value is a Uint8Array\n const { done, value } = await currentBatchPromise;\n // Exit if we're done\n if (done) {\n return;\n }\n // Else yield the chunk\n yield toArrayBuffer(value);\n }\n }\n catch (error) {\n // TODO - examples makes it look like this should always be called,\n // but that generates exceptions so only call it if we do not reach the end\n reader.releaseLock();\n }\n}\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @note Requires Node.js >= 10\n */\nasync function* makeNodeStreamIterator(stream, options) {\n // Hacky test for node version to ensure we don't call bad polyfills\n // NODE 10+: stream is an asyncIterator\n for await (const chunk of stream) {\n yield toArrayBuffer(chunk); // Coerce each chunk to ArrayBuffer\n }\n}\n/* TODO - remove NODE < 10\n * @see https://github.com/bustle/streaming-iterables, MIT license\n *\n if (typeof stream[Symbol.asyncIterator] === 'function') {\n return;\n }\n\n // TODO - check if is this ever used in Node 10+?\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const data = stream.read();\n if (data !== null) {\n yield toArrayBuffer(data);\n // eslint-disable-next-line no-continue\n continue;\n }\n if (stream._readableState?.ended) {\n return;\n }\n await onceReadable(stream);\n }\n\nasync function onceReadable(stream: Readable): Promise {\n return new Promise((resolve) => {\n stream.once('readable', resolve);\n });\n}\n */\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { makeStringIterator } from \"./make-string-iterator.js\";\nimport { makeArrayBufferIterator } from \"./make-array-buffer-iterator.js\";\nimport { makeBlobIterator } from \"./make-blob-iterator.js\";\nimport { makeStreamIterator } from \"./make-stream-iterator.js\";\nimport { isBlob, isReadableStream, isResponse } from \"../../javascript-utils/is-type.js\";\n/**\n * Returns an iterator that breaks its input into chunks and yields them one-by-one.\n * @param data\n * @param options\n * @returns\n * This function can e.g. be used to enable data sources that can only be read atomically\n * (such as `Blob` and `File` via `FileReader`) to still be parsed in batches.\n */\nexport function makeIterator(data, options) {\n if (typeof data === 'string') {\n // Note: Converts string chunks to binary\n return makeStringIterator(data, options);\n }\n if (data instanceof ArrayBuffer) {\n return makeArrayBufferIterator(data, options);\n }\n if (isBlob(data)) {\n return makeBlobIterator(data, options);\n }\n if (isReadableStream(data)) {\n return makeStreamIterator(data, options);\n }\n if (isResponse(data)) {\n const response = data;\n return makeStreamIterator(response.body, options);\n }\n throw new Error('makeIterator');\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { concatenateArrayBuffersAsync } from '@loaders.gl/loader-utils';\nimport { isResponse, isReadableStream, isAsyncIterable, isIterable, isIterator, isBlob, isBuffer } from \"../../javascript-utils/is-type.js\";\nimport { makeIterator } from \"../../iterators/make-iterator/make-iterator.js\";\nimport { checkResponse, makeResponse } from \"../utils/response-utils.js\";\nconst ERR_DATA = 'Cannot convert supplied data type';\n// eslint-disable-next-line complexity\nexport function getArrayBufferOrStringFromDataSync(data, loader, options) {\n if (loader.text && typeof data === 'string') {\n return data;\n }\n if (isBuffer(data)) {\n // @ts-ignore\n data = data.buffer;\n }\n if (data instanceof ArrayBuffer) {\n const arrayBuffer = data;\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(arrayBuffer);\n }\n return arrayBuffer;\n }\n // We may need to handle offsets\n if (ArrayBuffer.isView(data)) {\n // TextDecoder is invoked on typed arrays and will handle offsets\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(data);\n }\n let arrayBuffer = data.buffer;\n // Since we are returning the underlying arrayBuffer, we must create a new copy\n // if this typed array / Buffer is a partial view into the ArryayBuffer\n // TODO - this is a potentially unnecessary copy\n const byteLength = data.byteLength || data.length;\n if (data.byteOffset !== 0 || byteLength !== arrayBuffer.byteLength) {\n // console.warn(`loaders.gl copying arraybuffer of length ${byteLength}`);\n arrayBuffer = arrayBuffer.slice(data.byteOffset, data.byteOffset + byteLength);\n }\n return arrayBuffer;\n }\n throw new Error(ERR_DATA);\n}\n// Convert async iterator to a promise\nexport async function getArrayBufferOrStringFromData(data, loader, options) {\n const isArrayBuffer = data instanceof ArrayBuffer || ArrayBuffer.isView(data);\n if (typeof data === 'string' || isArrayBuffer) {\n return getArrayBufferOrStringFromDataSync(data, loader, options);\n }\n // Blobs and files are FileReader compatible\n if (isBlob(data)) {\n data = await makeResponse(data);\n }\n if (isResponse(data)) {\n const response = data;\n await checkResponse(response);\n return loader.binary ? await response.arrayBuffer() : await response.text();\n }\n if (isReadableStream(data)) {\n // @ts-expect-error TS2559 options type\n data = makeIterator(data, options);\n }\n if (isIterable(data) || isAsyncIterable(data)) {\n // Assume arrayBuffer iterator - attempt to concatenate\n return concatenateArrayBuffersAsync(data);\n }\n throw new Error(ERR_DATA);\n}\nexport async function getAsyncIterableFromData(data, options) {\n if (isIterator(data)) {\n return data;\n }\n if (isResponse(data)) {\n const response = data;\n // Note Since this function is not async, we currently can't load error message, just status\n await checkResponse(response);\n // TODO - bug in polyfill, body can be a Promise under Node.js\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const body = await response.body;\n // TODO - body can be null?\n return makeIterator(body, options);\n }\n if (isBlob(data) || isReadableStream(data)) {\n return makeIterator(data, options);\n }\n if (isAsyncIterable(data)) {\n return data;\n }\n return getIterableFromData(data);\n}\nexport async function getReadableStream(data) {\n if (isReadableStream(data)) {\n return data;\n }\n if (isResponse(data)) {\n // @ts-ignore\n return data.body;\n }\n const response = await makeResponse(data);\n // @ts-ignore\n return response.body;\n}\n// HELPERS\nfunction getIterableFromData(data) {\n // generate an iterator that emits a single chunk\n if (ArrayBuffer.isView(data)) {\n return (function* oneChunk() {\n yield data.buffer;\n })();\n }\n if (data instanceof ArrayBuffer) {\n return (function* oneChunk() {\n yield data;\n })();\n }\n if (isIterator(data)) {\n return data;\n }\n if (isIterable(data)) {\n return data[Symbol.iterator]();\n }\n throw new Error(ERR_DATA);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isObject } from \"../../javascript-utils/is-type.js\";\nimport { fetchFile } from \"../fetch/fetch-file.js\";\nimport { getGlobalLoaderOptions } from \"./option-utils.js\";\n/**\n * Gets the current fetch function from options and context\n * @param options\n * @param context\n */\nexport function getFetchFunction(options, context) {\n const globalOptions = getGlobalLoaderOptions();\n const loaderOptions = options || globalOptions;\n // options.fetch can be a function\n if (typeof loaderOptions.fetch === 'function') {\n return loaderOptions.fetch;\n }\n // options.fetch can be an options object\n if (isObject(loaderOptions.fetch)) {\n return (url) => fetchFile(url, loaderOptions.fetch);\n }\n // else refer to context (from parent loader) if available\n if (context?.fetch) {\n return context?.fetch;\n }\n // else return the default fetch function\n return fetchFile;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getFetchFunction } from \"./get-fetch-function.js\";\nimport { extractQueryString, stripQueryString } from \"../utils/url-utils.js\";\nimport { path } from '@loaders.gl/loader-utils';\n/**\n * \"sub\" loaders invoked by other loaders get a \"context\" injected on `this`\n * The context will inject core methods like `parse` and contain information\n * about loaders and options passed in to the top-level `parse` call.\n *\n * @param context\n * @param options\n * @param previousContext\n */\nexport function getLoaderContext(context, options, parentContext) {\n // For recursive calls, we already have a context\n // TODO - add any additional loaders to context?\n if (parentContext) {\n return parentContext;\n }\n const newContext = {\n fetch: getFetchFunction(options, context),\n ...context\n };\n // Parse URLs so that subloaders can easily generate correct strings\n if (newContext.url) {\n const baseUrl = stripQueryString(newContext.url);\n newContext.baseUrl = baseUrl;\n newContext.queryString = extractQueryString(newContext.url);\n newContext.filename = path.filename(baseUrl);\n newContext.baseUrl = path.dirname(baseUrl);\n }\n // Recursive loading does not use single loader\n if (!Array.isArray(newContext.loaders)) {\n newContext.loaders = null;\n }\n return newContext;\n}\n// eslint-disable-next-line complexity\nexport function getLoadersFromContext(loaders, context) {\n // A single loader (non-array) indicates no selection desired. Force select.\n if (loaders && !Array.isArray(loaders)) {\n return loaders;\n }\n // Create a merged list\n let candidateLoaders;\n if (loaders) {\n candidateLoaders = Array.isArray(loaders) ? loaders : [loaders];\n }\n if (context && context.loaders) {\n const contextLoaders = Array.isArray(context.loaders) ? context.loaders : [context.loaders];\n candidateLoaders = candidateLoaders ? [...candidateLoaders, ...contextLoaders] : contextLoaders;\n }\n // If no loaders, return null to look in globally registered loaders\n return candidateLoaders && candidateLoaders.length ? candidateLoaders : undefined;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { parseWithWorker, canParseWithWorker } from '@loaders.gl/loader-utils';\nimport { assert, validateWorkerVersion } from '@loaders.gl/worker-utils';\nimport { isLoaderObject } from \"../loader-utils/normalize-loader.js\";\nimport { isResponse } from \"../../javascript-utils/is-type.js\";\nimport { normalizeOptions } from \"../loader-utils/option-utils.js\";\nimport { mergeLoaderOptions } from '@loaders.gl/loader-utils';\nimport { getArrayBufferOrStringFromData } from \"../loader-utils/get-data.js\";\nimport { getLoaderContext, getLoadersFromContext } from \"../loader-utils/loader-context.js\";\nimport { getResourceUrl } from \"../utils/resource-utils.js\";\nimport { selectLoader } from \"./select-loader.js\";\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parse(data, loaders, options, context) {\n // Signature: parse(data, options, context | url)\n // Uses registered loaders\n if (loaders && !Array.isArray(loaders) && !isLoaderObject(loaders)) {\n context = undefined; // context not supported in short signature\n options = loaders;\n loaders = undefined;\n }\n data = await data; // Resolve any promise\n options = options || {}; // Could be invalid...\n // Extract a url for auto detection\n const url = getResourceUrl(data);\n // Chooses a loader (and normalizes it)\n // Also use any loaders in the context, new loaders take priority\n const typedLoaders = loaders;\n const candidateLoaders = getLoadersFromContext(typedLoaders, context);\n // todo hacky type cast\n const loader = await selectLoader(data, candidateLoaders, options);\n // Note: if no loader was found, if so just return null\n if (!loader) {\n return null;\n }\n // Normalize options\n // @ts-expect-error\n options = normalizeOptions(options, loader, candidateLoaders, url); // Could be invalid...\n // Get a context (if already present, will be unchanged)\n context = getLoaderContext(\n // @ts-expect-error\n { url, _parse: parse, loaders: candidateLoaders }, options, context || null);\n return await parseWithLoader(loader, data, options, context);\n}\n// TODO: support progress and abort\n// TODO - should accept loader.parseAsyncIterator and concatenate.\nasync function parseWithLoader(loader, data, options, context) {\n validateWorkerVersion(loader);\n options = mergeLoaderOptions(loader.options, options);\n if (isResponse(data)) {\n // Serialize to support passing the response to web worker\n const response = data;\n const { ok, redirected, status, statusText, type, url } = response;\n const headers = Object.fromEntries(response.headers.entries());\n // @ts-expect-error TODO - fix this\n context.response = { headers, ok, redirected, status, statusText, type, url };\n }\n data = await getArrayBufferOrStringFromData(data, loader, options);\n const loaderWithParser = loader;\n // First check for synchronous text parser, wrap results in promises\n if (loaderWithParser.parseTextSync && typeof data === 'string') {\n return loaderWithParser.parseTextSync(data, options, context);\n }\n // If we have a workerUrl and the loader can parse the given options efficiently in a worker\n if (canParseWithWorker(loader, options)) {\n return await parseWithWorker(loader, data, options, context, parse);\n }\n // Check for asynchronous parser\n if (loaderWithParser.parseText && typeof data === 'string') {\n return await loaderWithParser.parseText(data, options, context);\n }\n if (loaderWithParser.parse) {\n return await loaderWithParser.parse(data, options, context);\n }\n // This should not happen, all sync loaders should also offer `parse` function\n assert(!loaderWithParser.parseSync);\n // TBD - If asynchronous parser not available, return null\n throw new Error(`${loader.id} loader - no parser found and worker is disabled`);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/** Deduce column types from values */\nexport function getDataTypeFromValue(value, defaultNumberType = 'float32') {\n if (value instanceof Date) {\n return 'date-millisecond';\n }\n if (value instanceof Number) {\n return defaultNumberType;\n }\n if (typeof value === 'string') {\n return 'utf8';\n }\n if (value === null || value === 'undefined') {\n return 'null';\n }\n return 'null';\n}\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromArray(array) {\n let type = getDataTypeFromTypedArray(array);\n if (type !== 'null') {\n return { type, nullable: false };\n }\n if (array.length > 0) {\n type = getDataTypeFromValue(array[0]);\n return { type, nullable: true };\n }\n return { type: 'null', nullable: true };\n}\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromTypedArray(array) {\n switch (array.constructor) {\n case Int8Array:\n return 'int8';\n case Uint8Array:\n case Uint8ClampedArray:\n return 'uint8';\n case Int16Array:\n return 'int16';\n case Uint16Array:\n return 'uint16';\n case Int32Array:\n return 'int32';\n case Uint32Array:\n return 'uint32';\n case Float32Array:\n return 'float32';\n case Float64Array:\n return 'float64';\n default:\n return 'null';\n }\n}\nexport function getArrayTypeFromDataType(type, nullable) {\n if (!nullable) {\n switch (type) {\n case 'int8':\n return Int8Array;\n case 'uint8':\n return Uint8Array;\n case 'int16':\n return Int16Array;\n case 'uint16':\n return Uint16Array;\n case 'int32':\n return Int32Array;\n case 'uint32':\n return Uint32Array;\n case 'float32':\n return Float32Array;\n case 'float64':\n return Float64Array;\n default:\n break;\n }\n }\n // if (typeof BigInt64Array !== 'undefined') {\n // TYPED_ARRAY_TO_TYPE.BigInt64Array = new Int64();\n // TYPED_ARRAY_TO_TYPE.BigUint64Array = new Uint64();\n // }\n return Array;\n}\n", "/**\n * Get number of vertices in mesh\n * @param attributes\n */\nexport function getMeshSize(attributes) {\n let size = 0;\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n if (ArrayBuffer.isView(attribute)) {\n // @ts-ignore DataView doesn't have BYTES_PER_ELEMENT\n size += attribute.byteLength * attribute.BYTES_PER_ELEMENT;\n }\n }\n return size;\n}\n/**\n * Get the (axis aligned) bounding box of a mesh\n * @param attributes\n * @returns array of two vectors representing the axis aligned bounding box\n */\n// eslint-disable-next-line complexity\nexport function getMeshBoundingBox(attributes) {\n let minX = Infinity;\n let minY = Infinity;\n let minZ = Infinity;\n let maxX = -Infinity;\n let maxY = -Infinity;\n let maxZ = -Infinity;\n const positions = attributes.POSITION ? attributes.POSITION.value : [];\n const len = positions && positions.length;\n for (let i = 0; i < len; i += 3) {\n const x = positions[i];\n const y = positions[i + 1];\n const z = positions[i + 2];\n minX = x < minX ? x : minX;\n minY = y < minY ? y : minY;\n minZ = z < minZ ? z : minZ;\n maxX = x > maxX ? x : maxX;\n maxY = y > maxY ? y : maxY;\n maxZ = z > maxZ ? z : maxZ;\n }\n return [\n [minX, minY, minZ],\n [maxX, maxY, maxZ]\n ];\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getDataTypeFromTypedArray } from \"../table/simple-table/data-type.js\";\n/**\n * Create a schema for mesh attributes data\n * @param attributes\n * @param metadata\n * @returns\n */\nexport function deduceMeshSchema(attributes, metadata = {}) {\n const fields = deduceMeshFields(attributes);\n return { fields, metadata };\n}\n/**\n * Create arrow-like schema field for mesh attribute\n * @param attributeName\n * @param attribute\n * @param optionalMetadata\n * @returns\n */\nexport function deduceMeshField(name, attribute, optionalMetadata) {\n const type = getDataTypeFromTypedArray(attribute.value);\n const metadata = optionalMetadata ? optionalMetadata : makeMeshAttributeMetadata(attribute);\n return {\n name,\n type: { type: 'fixed-size-list', listSize: attribute.size, children: [{ name: 'value', type }] },\n nullable: false,\n metadata\n };\n}\n/**\n * Create fields array for mesh attributes\n * @param attributes\n * @returns\n */\nfunction deduceMeshFields(attributes) {\n const fields = [];\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n fields.push(deduceMeshField(attributeName, attribute));\n }\n return fields;\n}\n/**\n * Make metadata by mesh attribute properties\n * @param attribute\n * @returns\n */\nexport function makeMeshAttributeMetadata(attribute) {\n const result = {};\n if ('byteOffset' in attribute) {\n result.byteOffset = attribute.byteOffset.toString(10);\n }\n if ('byteStride' in attribute) {\n result.byteStride = attribute.byteStride.toString(10);\n }\n if ('normalized' in attribute) {\n result.normalized = attribute.normalized.toString();\n }\n return result;\n}\n", "// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n/**\n * Loader for the LAS (LASer) point cloud format\n * @note Does not support LAS v1.4\n */\nexport const LASLoader = {\n dataType: null,\n batchType: null,\n name: 'LAS',\n id: 'las',\n module: 'las',\n version: VERSION,\n worker: true,\n extensions: ['las', 'laz'], // LAZ is the \"compressed\" flavor of LAS,\n mimeTypes: ['application/octet-stream'], // TODO - text version?\n text: true,\n binary: true,\n tests: ['LAS'],\n options: {\n las: {\n shape: 'mesh',\n fp64: false,\n skip: 1,\n colorDepth: 8\n }\n }\n};\n", "// @ts-nocheck\n/* eslint-disable */\n/*\n * Last update 2020-07-23\n *\n * Compiled from Howard Butler's laz-perf\n * https://github.com/hobu/laz-perf\n * Under LGPL License\n *\n * To update this file:\n * - git clone https://github.com/hobu/laz-perf\n * - cd laz-perf\n * - echo 'set(CMAKE_CXX_FLAGS \"-s SINGLE_FILE=1 ${CMAKE_CXX_FLAGS}\"' >> emscripten/CMakeLists.txt\n * - mkdir build && cd build\n * - cmake .. -DEMSCRIPTEN=1 -DCMAKE_TOOLCHAIN_FILE=/emscripten//cmake/Modules/Platform/Emscripten.cmake\n * - VERBOSE=1 make\n *\n * See the laz-perf repository for required dependencies\n *\n * The result should be build/emscripten/laz-perf.asm.js\n * Copy the content of this file in the getModule function below\n */\n// laz-perf.js\nexport default function getModule() {\n var Module = typeof Module !== 'undefined' ? Module : {};\n var moduleOverrides = {};\n var key;\n for (key in Module) {\n if (Module.hasOwnProperty(key)) {\n moduleOverrides[key] = Module[key];\n }\n }\n var arguments_ = [];\n var thisProgram = './this.program';\n var quit_ = function (status, toThrow) {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = false;\n var ENVIRONMENT_IS_WORKER = false;\n var ENVIRONMENT_IS_NODE = false;\n var ENVIRONMENT_IS_SHELL = false;\n ENVIRONMENT_IS_WEB = typeof window === 'object';\n ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';\n ENVIRONMENT_IS_NODE =\n typeof process === 'object' &&\n typeof process.versions === 'object' &&\n typeof process.versions.node === 'string';\n ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;\n var scriptDirectory = '';\n function locateFile(path) {\n if (Module['locateFile']) {\n return Module['locateFile'](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n var nodeFS;\n var nodePath;\n if (ENVIRONMENT_IS_NODE) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = require('path').dirname(scriptDirectory) + '/';\n }\n else {\n const dirname = typeof __dirname !== 'undefined' ? __dirname : '';\n scriptDirectory = dirname + '/';\n }\n read_ = function shell_read(filename, binary) {\n var ret = tryParseAsDataURI(filename);\n if (ret) {\n return binary ? ret : ret.toString();\n }\n if (!nodeFS)\n nodeFS = require('fs');\n if (!nodePath)\n nodePath = require('path');\n filename = nodePath['normalize'](filename);\n return nodeFS['readFileSync'](filename, binary ? null : 'utf8');\n };\n readBinary = function readBinary(filename) {\n var ret = read_(filename, true);\n if (!ret.buffer) {\n ret = new Uint8Array(ret);\n }\n assert(ret.buffer);\n return ret;\n };\n if (process['argv'].length > 1) {\n thisProgram = process['argv'][1].replace(/\\\\/g, '/');\n }\n arguments_ = process['argv'].slice(2);\n if (typeof module !== 'undefined') {\n module['exports'] = Module;\n }\n process['on']('uncaughtException', function (ex) {\n if (!(ex instanceof ExitStatus)) {\n throw ex;\n }\n });\n process['on']('unhandledRejection', abort);\n quit_ = function (status) {\n process['exit'](status);\n };\n Module['inspect'] = function () {\n return '[Emscripten Module object]';\n };\n }\n else if (ENVIRONMENT_IS_SHELL) {\n if (typeof read != 'undefined') {\n read_ = function shell_read(f) {\n var data = tryParseAsDataURI(f);\n if (data) {\n return intArrayToString(data);\n }\n return read(f);\n };\n }\n readBinary = function readBinary(f) {\n var data;\n data = tryParseAsDataURI(f);\n if (data) {\n return data;\n }\n if (typeof readbuffer === 'function') {\n return new Uint8Array(readbuffer(f));\n }\n data = read(f, 'binary');\n assert(typeof data === 'object');\n return data;\n };\n if (typeof scriptArgs != 'undefined') {\n arguments_ = scriptArgs;\n }\n else if (typeof arguments != 'undefined') {\n arguments_ = arguments;\n }\n if (typeof quit === 'function') {\n quit_ = function (status) {\n quit(status);\n };\n }\n if (typeof print !== 'undefined') {\n if (typeof console === 'undefined')\n console = {};\n console.log = print;\n console.warn = console.error = typeof printErr !== 'undefined' ? printErr : print;\n }\n }\n else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n }\n else if (document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (scriptDirectory.indexOf('blob:') !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf('/') + 1);\n }\n else {\n scriptDirectory = '';\n }\n {\n read_ = function shell_read(url) {\n try {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, false);\n xhr.send(null);\n return xhr.responseText;\n }\n catch (err) {\n var data = tryParseAsDataURI(url);\n if (data) {\n return intArrayToString(data);\n }\n throw err;\n }\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = function readBinary(url) {\n try {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, false);\n xhr.responseType = 'arraybuffer';\n xhr.send(null);\n return new Uint8Array(xhr.response);\n }\n catch (err) {\n var data = tryParseAsDataURI(url);\n if (data) {\n return data;\n }\n throw err;\n }\n };\n }\n readAsync = function readAsync(url, onload, onerror) {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, true);\n xhr.responseType = 'arraybuffer';\n xhr.onload = function xhr_onload() {\n if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) {\n onload(xhr.response);\n return;\n }\n var data = tryParseAsDataURI(url);\n if (data) {\n onload(data.buffer);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = function (title) {\n document.title = title;\n };\n }\n else {\n }\n var out = Module['print'] || console.log.bind(console);\n var err = Module['printErr'] || console.warn.bind(console);\n for (key in moduleOverrides) {\n if (moduleOverrides.hasOwnProperty(key)) {\n Module[key] = moduleOverrides[key];\n }\n }\n moduleOverrides = null;\n if (Module['arguments'])\n arguments_ = Module['arguments'];\n if (Module['thisProgram'])\n thisProgram = Module['thisProgram'];\n if (Module['quit'])\n quit_ = Module['quit'];\n var STACK_ALIGN = 16;\n function dynamicAlloc(size) {\n var ret = HEAP32[DYNAMICTOP_PTR >> 2];\n var end = (ret + size + 15) & -16;\n HEAP32[DYNAMICTOP_PTR >> 2] = end;\n return ret;\n }\n function getNativeTypeSize(type) {\n switch (type) {\n case 'i1':\n case 'i8':\n return 1;\n case 'i16':\n return 2;\n case 'i32':\n return 4;\n case 'i64':\n return 8;\n case 'float':\n return 4;\n case 'double':\n return 8;\n default: {\n if (type[type.length - 1] === '*') {\n return 4;\n }\n else if (type[0] === 'i') {\n var bits = Number(type.substr(1));\n assert(bits % 8 === 0, 'getNativeTypeSize invalid bits ' + bits + ', type ' + type);\n return bits / 8;\n }\n else {\n return 0;\n }\n }\n }\n }\n function warnOnce(text) {\n if (!warnOnce.shown)\n warnOnce.shown = {};\n if (!warnOnce.shown[text]) {\n warnOnce.shown[text] = 1;\n err(text);\n }\n }\n var jsCallStartIndex = 1;\n var functionPointers = new Array(0);\n var funcWrappers = {};\n function dynCall(sig, ptr, args) {\n if (args && args.length) {\n return Module['dynCall_' + sig].apply(null, [ptr].concat(args));\n }\n else {\n return Module['dynCall_' + sig].call(null, ptr);\n }\n }\n var tempRet0 = 0;\n var setTempRet0 = function (value) {\n tempRet0 = value;\n };\n var getTempRet0 = function () {\n return tempRet0;\n };\n var GLOBAL_BASE = 8;\n var wasmBinary;\n if (Module['wasmBinary'])\n wasmBinary = Module['wasmBinary'];\n var noExitRuntime;\n if (Module['noExitRuntime'])\n noExitRuntime = Module['noExitRuntime'];\n function setValue(ptr, value, type, noSafe) {\n type = type || 'i8';\n if (type.charAt(type.length - 1) === '*')\n type = 'i32';\n switch (type) {\n case 'i1':\n HEAP8[ptr >> 0] = value;\n break;\n case 'i8':\n HEAP8[ptr >> 0] = value;\n break;\n case 'i16':\n HEAP16[ptr >> 1] = value;\n break;\n case 'i32':\n HEAP32[ptr >> 2] = value;\n break;\n case 'i64':\n (tempI64 = [\n value >>> 0,\n ((tempDouble = value),\n +Math_abs(tempDouble) >= +1\n ? tempDouble > +0\n ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) | 0) >>> 0\n : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) >>> 0\n : 0)\n ]),\n (HEAP32[ptr >> 2] = tempI64[0]),\n (HEAP32[(ptr + 4) >> 2] = tempI64[1]);\n break;\n case 'float':\n HEAPF32[ptr >> 2] = value;\n break;\n case 'double':\n HEAPF64[ptr >> 3] = value;\n break;\n default:\n abort('invalid type for setValue: ' + type);\n }\n }\n var ABORT = false;\n var EXITSTATUS = 0;\n function assert(condition, text) {\n if (!condition) {\n abort('Assertion failed: ' + text);\n }\n }\n function getCFunc(ident) {\n var func = Module['_' + ident];\n assert(func, 'Cannot call unknown function ' + ident + ', make sure it is exported');\n return func;\n }\n function ccall(ident, returnType, argTypes, args, opts) {\n var toC = {\n string: function (str) {\n var ret = 0;\n if (str !== null && str !== undefined && str !== 0) {\n var len = (str.length << 2) + 1;\n ret = stackAlloc(len);\n stringToUTF8(str, ret, len);\n }\n return ret;\n },\n array: function (arr) {\n var ret = stackAlloc(arr.length);\n writeArrayToMemory(arr, ret);\n return ret;\n }\n };\n function convertReturnValue(ret) {\n if (returnType === 'string')\n return UTF8ToString(ret);\n if (returnType === 'boolean')\n return Boolean(ret);\n return ret;\n }\n var func = getCFunc(ident);\n var cArgs = [];\n var stack = 0;\n if (args) {\n for (var i = 0; i < args.length; i++) {\n var converter = toC[argTypes[i]];\n if (converter) {\n if (stack === 0)\n stack = stackSave();\n cArgs[i] = converter(args[i]);\n }\n else {\n cArgs[i] = args[i];\n }\n }\n }\n var ret = func.apply(null, cArgs);\n ret = convertReturnValue(ret);\n if (stack !== 0)\n stackRestore(stack);\n return ret;\n }\n var ALLOC_NONE = 3;\n var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined;\n function UTF8ArrayToString(heap, idx, maxBytesToRead) {\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heap[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) {\n return UTF8Decoder.decode(heap.subarray(idx, endPtr));\n }\n else {\n var str = '';\n while (idx < endPtr) {\n var u0 = heap[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heap[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode(((u0 & 31) << 6) | u1);\n continue;\n }\n var u2 = heap[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;\n }\n else {\n u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[idx++] & 63);\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n }\n else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : '';\n }\n function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) {\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = (65536 + ((u & 1023) << 10)) | (u1 & 1023);\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++] = u;\n }\n else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++] = 192 | (u >> 6);\n heap[outIdx++] = 128 | (u & 63);\n }\n else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++] = 224 | (u >> 12);\n heap[outIdx++] = 128 | ((u >> 6) & 63);\n heap[outIdx++] = 128 | (u & 63);\n }\n else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++] = 240 | (u >> 18);\n heap[outIdx++] = 128 | ((u >> 12) & 63);\n heap[outIdx++] = 128 | ((u >> 6) & 63);\n heap[outIdx++] = 128 | (u & 63);\n }\n }\n heap[outIdx] = 0;\n return outIdx - startIdx;\n }\n function stringToUTF8(str, outPtr, maxBytesToWrite) {\n return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);\n }\n function lengthBytesUTF8(str) {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343)\n u = (65536 + ((u & 1023) << 10)) | (str.charCodeAt(++i) & 1023);\n if (u <= 127)\n ++len;\n else if (u <= 2047)\n len += 2;\n else if (u <= 65535)\n len += 3;\n else\n len += 4;\n }\n return len;\n }\n var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined;\n function UTF16ToString(ptr, maxBytesToRead) {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && HEAPU16[idx])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder) {\n return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr));\n }\n else {\n var i = 0;\n var str = '';\n while (1) {\n var codeUnit = HEAP16[(ptr + i * 2) >> 1];\n if (codeUnit == 0 || i == maxBytesToRead / 2)\n return str;\n ++i;\n str += String.fromCharCode(codeUnit);\n }\n }\n }\n function stringToUTF16(str, outPtr, maxBytesToWrite) {\n if (maxBytesToWrite === undefined) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n HEAP16[outPtr >> 1] = codeUnit;\n outPtr += 2;\n }\n HEAP16[outPtr >> 1] = 0;\n return outPtr - startPtr;\n }\n function lengthBytesUTF16(str) {\n return str.length * 2;\n }\n function UTF32ToString(ptr, maxBytesToRead) {\n var i = 0;\n var str = '';\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = HEAP32[(ptr + i * 4) >> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n }\n function stringToUTF32(str, outPtr, maxBytesToWrite) {\n if (maxBytesToWrite === undefined) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = (65536 + ((codeUnit & 1023) << 10)) | (trailSurrogate & 1023);\n }\n HEAP32[outPtr >> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n HEAP32[outPtr >> 2] = 0;\n return outPtr - startPtr;\n }\n function lengthBytesUTF32(str) {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n }\n function writeArrayToMemory(array, buffer) {\n HEAP8.set(array, buffer);\n }\n function writeAsciiToMemory(str, buffer, dontAddNull) {\n for (var i = 0; i < str.length; ++i) {\n HEAP8[buffer++ >> 0] = str.charCodeAt(i);\n }\n if (!dontAddNull)\n HEAP8[buffer >> 0] = 0;\n }\n var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n Module['HEAP8'] = HEAP8 = new Int8Array(buf);\n Module['HEAP16'] = HEAP16 = new Int16Array(buf);\n Module['HEAP32'] = HEAP32 = new Int32Array(buf);\n Module['HEAPU8'] = HEAPU8 = new Uint8Array(buf);\n Module['HEAPU16'] = HEAPU16 = new Uint16Array(buf);\n Module['HEAPU32'] = HEAPU32 = new Uint32Array(buf);\n Module['HEAPF32'] = HEAPF32 = new Float32Array(buf);\n Module['HEAPF64'] = HEAPF64 = new Float64Array(buf);\n }\n var STACK_BASE = 22384, DYNAMIC_BASE = 5265264, DYNAMICTOP_PTR = 22176;\n var INITIAL_INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 167772160;\n if (Module['buffer']) {\n buffer = Module['buffer'];\n }\n else {\n buffer = new ArrayBuffer(INITIAL_INITIAL_MEMORY);\n }\n INITIAL_INITIAL_MEMORY = buffer.byteLength;\n updateGlobalBufferAndViews(buffer);\n HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;\n function callRuntimeCallbacks(callbacks) {\n while (callbacks.length > 0) {\n var callback = callbacks.shift();\n if (typeof callback == 'function') {\n callback(Module);\n continue;\n }\n var func = callback.func;\n if (typeof func === 'number') {\n if (callback.arg === undefined) {\n Module['dynCall_v'](func);\n }\n else {\n Module['dynCall_vi'](func, callback.arg);\n }\n }\n else {\n func(callback.arg === undefined ? null : callback.arg);\n }\n }\n }\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATMAIN__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n var runtimeExited = false;\n function preRun() {\n if (Module['preRun']) {\n if (typeof Module['preRun'] == 'function')\n Module['preRun'] = [Module['preRun']];\n while (Module['preRun'].length) {\n addOnPreRun(Module['preRun'].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n callRuntimeCallbacks(__ATINIT__);\n }\n function preMain() {\n callRuntimeCallbacks(__ATMAIN__);\n }\n function exitRuntime() {\n runtimeExited = true;\n }\n function postRun() {\n if (Module['postRun']) {\n if (typeof Module['postRun'] == 'function')\n Module['postRun'] = [Module['postRun']];\n while (Module['postRun'].length) {\n addOnPostRun(Module['postRun'].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var Math_abs = Math.abs;\n var Math_ceil = Math.ceil;\n var Math_floor = Math.floor;\n var Math_min = Math.min;\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function addRunDependency(id) {\n runDependencies++;\n if (Module['monitorRunDependencies']) {\n Module['monitorRunDependencies'](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module['monitorRunDependencies']) {\n Module['monitorRunDependencies'](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n Module['preloadedImages'] = {};\n Module['preloadedAudios'] = {};\n function abort(what) {\n if (Module['onAbort']) {\n Module['onAbort'](what);\n }\n what += '';\n out(what);\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what = 'abort(' + what + '). Build with -s ASSERTIONS=1 for more info.';\n throw what;\n }\n var memoryInitializer = null;\n function hasPrefix(str, prefix) {\n return String.prototype.startsWith ? str.startsWith(prefix) : str.indexOf(prefix) === 0;\n }\n var dataURIPrefix = 'data:application/octet-stream;base64,';\n function isDataURI(filename) {\n return hasPrefix(filename, dataURIPrefix);\n }\n var fileURIPrefix = 'file://';\n var tempDouble;\n var tempI64;\n __ATINIT__.push({\n func: function () {\n globalCtors();\n }\n });\n memoryInitializer =\n 'data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAA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c2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==';\n var tempDoublePtr = 22368;\n function demangle(func) {\n return func;\n }\n function demangleAll(text) {\n var regex = /\\b__Z[\\w\\d_]+/g;\n return text.replace(regex, function (x) {\n var y = demangle(x);\n return x === y ? x : y + ' [' + x + ']';\n });\n }\n function jsStackTrace() {\n var err = new Error();\n if (!err.stack) {\n try {\n throw new Error();\n }\n catch (e) {\n err = e;\n }\n if (!err.stack) {\n return '(no stack trace available)';\n }\n }\n return err.stack.toString();\n }\n function ___cxa_allocate_exception(size) {\n return _malloc(size);\n }\n var ___exception_infos = {};\n var ___exception_caught = [];\n function ___exception_addRef(ptr) {\n if (!ptr)\n return;\n var info = ___exception_infos[ptr];\n info.refcount++;\n }\n function ___exception_deAdjust(adjusted) {\n if (!adjusted || ___exception_infos[adjusted])\n return adjusted;\n for (var key in ___exception_infos) {\n var ptr = +key;\n var adj = ___exception_infos[ptr].adjusted;\n var len = adj.length;\n for (var i = 0; i < len; i++) {\n if (adj[i] === adjusted) {\n return ptr;\n }\n }\n }\n return adjusted;\n }\n function ___cxa_begin_catch(ptr) {\n var info = ___exception_infos[ptr];\n if (info && !info.caught) {\n info.caught = true;\n __ZSt18uncaught_exceptionv.uncaught_exceptions--;\n }\n if (info)\n info.rethrown = false;\n ___exception_caught.push(ptr);\n ___exception_addRef(___exception_deAdjust(ptr));\n return ptr;\n }\n var ___exception_last = 0;\n function ___cxa_throw(ptr, type, destructor) {\n ___exception_infos[ptr] = {\n ptr: ptr,\n adjusted: [ptr],\n type: type,\n destructor: destructor,\n refcount: 0,\n caught: false,\n rethrown: false\n };\n ___exception_last = ptr;\n if (!('uncaught_exception' in __ZSt18uncaught_exceptionv)) {\n __ZSt18uncaught_exceptionv.uncaught_exceptions = 1;\n }\n else {\n __ZSt18uncaught_exceptionv.uncaught_exceptions++;\n }\n throw ptr;\n }\n function ___cxa_uncaught_exceptions() {\n return __ZSt18uncaught_exceptionv.uncaught_exceptions;\n }\n function ___gxx_personality_v0() { }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError('Unknown type size: ' + size);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = undefined;\n function readLatin1String(ptr) {\n var ret = '';\n var c = ptr;\n while (HEAPU8[c]) {\n ret += embind_charCodes[HEAPU8[c++]];\n }\n return ret;\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (undefined === name) {\n return '_unknown';\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, '$');\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return '_' + name;\n }\n else {\n return name;\n }\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return new Function('body', 'return function ' +\n name +\n '() {\\n' +\n ' \"use strict\";' +\n ' return body.apply(this, arguments);\\n' +\n '};\\n')(body);\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function (message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== undefined) {\n this.stack = this.toString() + '\\n' + stack.replace(/^Error(:[^\\n]*)?\\n/, '');\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function () {\n if (this.message === undefined) {\n return this.name;\n }\n else {\n return this.name + ': ' + this.message;\n }\n };\n return errorClass;\n }\n var BindingError = undefined;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n var InternalError = undefined;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function (type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters) {\n var myTypeConverters = getTypeConverters(typeConverters);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError('Mismatched type converter count');\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach(function (dt, i) {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n }\n else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(function () {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (0 === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n }\n function registerType(rawType, registeredInstance, options) {\n options = options || {};\n if (!('argPackAdvance' in registeredInstance)) {\n throw new TypeError('registerType registeredInstance requires argPackAdvance');\n }\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError('type \"' + name + '\" must have a positive integer typeid pointer');\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n }\n else {\n throwBindingError(\"Cannot register type '\" + name + \"' twice\");\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach(function (cb) {\n cb();\n });\n }\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (wt) {\n return !!wt;\n },\n toWireType: function (destructors, o) {\n return o ? trueValue : falseValue;\n },\n argPackAdvance: 8,\n readValueFromPointer: function (pointer) {\n var heap;\n if (size === 1) {\n heap = HEAP8;\n }\n else if (size === 2) {\n heap = HEAP16;\n }\n else if (size === 4) {\n heap = HEAP32;\n }\n else {\n throw new TypeError('Unknown boolean type size: ' + name);\n }\n return this['fromWireType'](heap[pointer >> shift]);\n },\n destructorFunction: null\n });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return {\n count: o.count,\n deleteScheduled: o.deleteScheduled,\n preservePointerOnDelete: o.preservePointerOnDelete,\n ptr: o.ptr,\n ptrType: o.ptrType,\n smartPtr: o.smartPtr,\n smartPtrType: o.smartPtrType\n };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + ' instance already deleted');\n }\n var finalizationGroup = false;\n function detachFinalizer(handle) { }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n }\n else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = 0 === $$.count.value;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function attachFinalizer(handle) {\n if ('undefined' === typeof FinalizationGroup) {\n attachFinalizer = function (handle) {\n return handle;\n };\n return handle;\n }\n finalizationGroup = new FinalizationGroup(function (iter) {\n for (var result = iter.next(); !result.done; result = iter.next()) {\n var $$ = result.value;\n if (!$$.ptr) {\n console.warn('object already deleted: ' + $$.ptr);\n }\n else {\n releaseClassHandle($$);\n }\n }\n });\n attachFinalizer = function (handle) {\n finalizationGroup.register(handle, handle.$$, handle.$$);\n return handle;\n };\n detachFinalizer = function (handle) {\n finalizationGroup.unregister(handle.$$);\n };\n return attachFinalizer(handle);\n }\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n }\n else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), {\n $$: {\n value: shallowCopyInternalPointer(this.$$)\n }\n }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError('Object already scheduled for deletion');\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = undefined;\n this.$$.ptr = undefined;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n var delayFunction = undefined;\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj['delete']();\n }\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError('Object already scheduled for deletion');\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype['isAliasOf'] = ClassHandle_isAliasOf;\n ClassHandle.prototype['clone'] = ClassHandle_clone;\n ClassHandle.prototype['delete'] = ClassHandle_delete;\n ClassHandle.prototype['isDeleted'] = ClassHandle_isDeleted;\n ClassHandle.prototype['deleteLater'] = ClassHandle_deleteLater;\n }\n function ClassHandle() { }\n var registeredPointers = {};\n function ensureOverloadTable(proto, methodName, humanName) {\n if (undefined === proto[methodName].overloadTable) {\n var prevFunc = proto[methodName];\n proto[methodName] = function () {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(\"Function '\" +\n humanName +\n \"' called with an invalid number of arguments (\" +\n arguments.length +\n ') - expects one of (' +\n proto[methodName].overloadTable +\n ')!');\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (undefined === numArguments ||\n (undefined !== Module[name].overloadTable &&\n undefined !== Module[name].overloadTable[numArguments])) {\n throwBindingError(\"Cannot register public name '\" + name + \"' twice\");\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError('Cannot register multiple overloads of a function with the same number of arguments (' +\n numArguments +\n ')!');\n }\n Module[name].overloadTable[numArguments] = value;\n }\n else {\n Module[name] = value;\n if (undefined !== numArguments) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError('Expected null or instance of ' +\n desiredClass.name +\n ', got an instance of ' +\n ptrClass.name);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n }\n else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError('Cannot convert argument of type ' +\n (handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name) +\n ' to parameter type ' +\n this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (undefined === handle.$$.smartPtr) {\n throwBindingError('Passing raw pointer to smart pointer is illegal');\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n }\n else {\n throwBindingError('Cannot convert argument of type ' +\n (handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name) +\n ' to parameter type ' +\n this.name);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n }\n else {\n var clonedHandle = handle['clone']();\n ptr = this.rawShare(ptr, __emval_register(function () {\n clonedHandle['delete']();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError('Unsupporting sharing policy');\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError('Cannot convert argument of type ' +\n handle.$$.ptrType.name +\n ' to parameter type ' +\n this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function simpleReadValueFromPointer(pointer) {\n return this['fromWireType'](HEAPU32[pointer >> 2]);\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle['delete']();\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (undefined === desiredClass.baseClass) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module['getInheritedInstanceCount'] = getInheritedInstanceCount;\n Module['getLiveInheritedInstances'] = getLiveInheritedInstances;\n Module['flushPendingDeletes'] = flushPendingDeletes;\n Module['setDelayFunction'] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === undefined) {\n throwBindingError('ptr should not be undefined');\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError('makeClassHandle requires ptr and ptrType');\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError('Both smartPtrType and smartPtr must be specified');\n }\n record.count = {\n value: 1\n };\n return attachFinalizer(Object.create(prototype, {\n $$: {\n value: record\n }\n }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (undefined !== registeredInstance) {\n if (0 === registeredInstance.$$.count.value) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance['clone']();\n }\n else {\n var rv = registeredInstance['clone']();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, {\n ptrType: this.pointeeType,\n ptr: rawPointer,\n smartPtrType: this,\n smartPtr: ptr\n });\n }\n else {\n return makeClassHandle(this.registeredClass.instancePrototype, {\n ptrType: this,\n ptr: ptr\n });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n }\n else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, {\n ptrType: toType,\n ptr: dp,\n smartPtrType: this,\n smartPtr: ptr\n });\n }\n else {\n return makeClassHandle(toType.registeredClass.instancePrototype, {\n ptrType: toType,\n ptr: dp\n });\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype['argPackAdvance'] = 8;\n RegisteredPointer.prototype['readValueFromPointer'] = simpleReadValueFromPointer;\n RegisteredPointer.prototype['deleteObject'] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype['fromWireType'] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === undefined) {\n if (isConst) {\n this['toWireType'] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n else {\n this['toWireType'] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n }\n else {\n this['toWireType'] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError('Replacing nonexistant public symbol');\n }\n if (undefined !== Module[name].overloadTable && undefined !== numArguments) {\n Module[name].overloadTable[numArguments] = value;\n }\n else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller(dynCall) {\n var args = [];\n for (var i = 1; i < signature.length; ++i) {\n args.push('a' + i);\n }\n var name = 'dynCall_' + signature + '_' + rawFunction;\n var body = 'return function ' + name + '(' + args.join(', ') + ') {\\n';\n body +=\n ' return dynCall(rawFunction' + (args.length ? ', ' : '') + args.join(', ') + ');\\n';\n body += '};\\n';\n return new Function('dynCall', 'rawFunction', body)(dynCall, rawFunction);\n }\n var dc = Module['dynCall_' + signature];\n var fp = makeDynCaller(dc);\n if (typeof fp !== 'function') {\n throwBindingError('unknown function pointer with signature ' + signature + ': ' + rawFunction);\n }\n return fp;\n }\n var UnboundTypeError = undefined;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(message + ': ' + unboundTypes.map(getTypeName).join([', ']));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function () {\n throwUnboundTypeError('Cannot construct ' + name + ' due to unbound types', [\n baseClassRawType\n ]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function (base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n }\n else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function () {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (undefined === registeredClass.constructor_body) {\n throw new BindingError(name + ' has no accessible constructor');\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (undefined === body) {\n throw new BindingError('Tried to invoke ctor of ' +\n name +\n ' with invalid number of parameters (' +\n arguments.length +\n ') - expected (' +\n Object.keys(registeredClass.constructor_body).toString() +\n ') parameters instead!');\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, {\n constructor: {\n value: constructor\n }\n });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + '*', registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + ' const*', registeredClass, false, true, false);\n registeredPointers[rawType] = {\n pointerType: pointerConverter,\n constPointerType: constPointerConverter\n };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(HEAP32[(firstElement >> 2) + i]);\n }\n return array;\n }\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n assert(argCount > 0);\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n var args = [rawConstructor];\n var destructors = [];\n whenDependentTypesAreResolved([], [rawClassType], function (classType) {\n classType = classType[0];\n var humanName = 'constructor ' + classType.name;\n if (undefined === classType.registeredClass.constructor_body) {\n classType.registeredClass.constructor_body = [];\n }\n if (undefined !== classType.registeredClass.constructor_body[argCount - 1]) {\n throw new BindingError('Cannot register multiple constructors with identical number of parameters (' +\n (argCount - 1) +\n \") for class '\" +\n classType.name +\n \"'! Overload resolution is currently only performed using the parameter count, not actual type info!\");\n }\n classType.registeredClass.constructor_body[argCount - 1] = function unboundTypeHandler() {\n throwUnboundTypeError('Cannot construct ' + classType.name + ' due to unbound types', rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function (argTypes) {\n classType.registeredClass.constructor_body[argCount - 1] = function constructor_body() {\n if (arguments.length !== argCount - 1) {\n throwBindingError(humanName +\n ' called with ' +\n arguments.length +\n ' arguments, expected ' +\n (argCount - 1));\n }\n destructors.length = 0;\n args.length = argCount;\n for (var i = 1; i < argCount; ++i) {\n args[i] = argTypes[i]['toWireType'](destructors, arguments[i - 1]);\n }\n var ptr = invoker.apply(null, args);\n runDestructors(destructors);\n return argTypes[0]['fromWireType'](ptr);\n };\n return [];\n });\n return [];\n });\n }\n function new_(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError('new_ called with constructor type ' + typeof constructor + ' which is not a function');\n }\n var dummy = createNamedFunction(constructor.name || 'unknownFunctionName', function () { });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === undefined) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== 'void';\n var argsList = '';\n var argsListWired = '';\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? ', ' : '') + 'arg' + i;\n argsListWired += (i !== 0 ? ', ' : '') + 'arg' + i + 'Wired';\n }\n var invokerFnBody = 'return function ' +\n makeLegalFunctionName(humanName) +\n '(' +\n argsList +\n ') {\\n' +\n 'if (arguments.length !== ' +\n (argCount - 2) +\n ') {\\n' +\n \"throwBindingError('function \" +\n humanName +\n \" called with ' + arguments.length + ' arguments, expected \" +\n (argCount - 2) +\n \" args!');\\n\" +\n '}\\n';\n if (needsDestructorStack) {\n invokerFnBody += 'var destructors = [];\\n';\n }\n var dtorStack = needsDestructorStack ? 'destructors' : 'null';\n var args1 = ['throwBindingError', 'invoker', 'fn', 'runDestructors', 'retType', 'classParam'];\n var args2 = [\n throwBindingError,\n cppInvokerFunc,\n cppTargetFunc,\n runDestructors,\n argTypes[0],\n argTypes[1]\n ];\n if (isClassMethodFunc) {\n invokerFnBody += 'var thisWired = classParam.toWireType(' + dtorStack + ', this);\\n';\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody +=\n 'var arg' +\n i +\n 'Wired = argType' +\n i +\n '.toWireType(' +\n dtorStack +\n ', arg' +\n i +\n '); // ' +\n argTypes[i + 2].name +\n '\\n';\n args1.push('argType' + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = 'thisWired' + (argsListWired.length > 0 ? ', ' : '') + argsListWired;\n }\n invokerFnBody +=\n (returns ? 'var rv = ' : '') +\n 'invoker(fn' +\n (argsListWired.length > 0 ? ', ' : '') +\n argsListWired +\n ');\\n';\n if (needsDestructorStack) {\n invokerFnBody += 'runDestructors(destructors);\\n';\n }\n else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? 'thisWired' : 'arg' + (i - 2) + 'Wired';\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + '_dtor(' + paramName + '); // ' + argTypes[i].name + '\\n';\n args1.push(paramName + '_dtor');\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += 'var ret = retType.fromWireType(rv);\\n' + 'return ret;\\n';\n }\n else {\n }\n invokerFnBody += '}\\n';\n args1.push(invokerFnBody);\n var invokerFunction = new_(Function, args1).apply(null, args2);\n return invokerFunction;\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual) {\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function (classType) {\n classType = classType[0];\n var humanName = classType.name + '.' + methodName;\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError('Cannot call ' + humanName + ' due to unbound types', rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (undefined === method ||\n (undefined === method.overloadTable &&\n method.className !== classType.name &&\n method.argCount === argCount - 2)) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n }\n else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function (argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context);\n if (undefined === proto[methodName].overloadTable) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n }\n else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n var emval_free_list = [];\n var emval_handle_array = [\n {},\n {\n value: undefined\n },\n {\n value: null\n },\n {\n value: true\n },\n {\n value: false\n }\n ];\n function __emval_decref(handle) {\n if (handle > 4 && 0 === --emval_handle_array[handle].refcount) {\n emval_handle_array[handle] = undefined;\n emval_free_list.push(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = 5; i < emval_handle_array.length; ++i) {\n if (emval_handle_array[i] !== undefined) {\n ++count;\n }\n }\n return count;\n }\n function get_first_emval() {\n for (var i = 5; i < emval_handle_array.length; ++i) {\n if (emval_handle_array[i] !== undefined) {\n return emval_handle_array[i];\n }\n }\n return null;\n }\n function init_emval() {\n Module['count_emval_handles'] = count_emval_handles;\n Module['get_first_emval'] = get_first_emval;\n }\n function __emval_register(value) {\n switch (value) {\n case undefined: {\n return 1;\n }\n case null: {\n return 2;\n }\n case true: {\n return 3;\n }\n case false: {\n return 4;\n }\n default: {\n var handle = emval_free_list.length ? emval_free_list.pop() : emval_handle_array.length;\n emval_handle_array[handle] = {\n refcount: 1,\n value: value\n };\n return handle;\n }\n }\n }\n function __embind_register_emval(rawType, name) {\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (handle) {\n var rv = emval_handle_array[handle].value;\n __emval_decref(handle);\n return rv;\n },\n toWireType: function (destructors, value) {\n return __emval_register(value);\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: null\n });\n }\n function _embind_repr(v) {\n if (v === null) {\n return 'null';\n }\n var t = typeof v;\n if (t === 'object' || t === 'array' || t === 'function') {\n return v.toString();\n }\n else {\n return '' + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function (pointer) {\n return this['fromWireType'](HEAPF32[pointer >> 2]);\n };\n case 3:\n return function (pointer) {\n return this['fromWireType'](HEAPF64[pointer >> 3]);\n };\n default:\n throw new TypeError('Unknown float type: ' + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n return value;\n },\n toWireType: function (destructors, value) {\n if (typeof value !== 'number' && typeof value !== 'boolean') {\n throw new TypeError('Cannot convert \"' + _embind_repr(value) + '\" to ' + this.name);\n }\n return value;\n },\n argPackAdvance: 8,\n readValueFromPointer: floatReadValueFromPointer(name, shift),\n destructorFunction: null\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed\n ? function readS8FromPointer(pointer) {\n return HEAP8[pointer];\n }\n : function readU8FromPointer(pointer) {\n return HEAPU8[pointer];\n };\n case 1:\n return signed\n ? function readS16FromPointer(pointer) {\n return HEAP16[pointer >> 1];\n }\n : function readU16FromPointer(pointer) {\n return HEAPU16[pointer >> 1];\n };\n case 2:\n return signed\n ? function readS32FromPointer(pointer) {\n return HEAP32[pointer >> 2];\n }\n : function readU32FromPointer(pointer) {\n return HEAPU32[pointer >> 2];\n };\n default:\n throw new TypeError('Unknown integer type: ' + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = function (value) {\n return value;\n };\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = function (value) {\n return (value << bitshift) >>> bitshift;\n };\n }\n var isUnsignedType = name.indexOf('unsigned') != -1;\n registerType(primitiveType, {\n name: name,\n fromWireType: fromWireType,\n toWireType: function (destructors, value) {\n if (typeof value !== 'number' && typeof value !== 'boolean') {\n throw new TypeError('Cannot convert \"' + _embind_repr(value) + '\" to ' + this.name);\n }\n if (value < minRange || value > maxRange) {\n throw new TypeError('Passing a number \"' +\n _embind_repr(value) +\n '\" from JS side to C/C++ side to an argument of type \"' +\n name +\n '\", which is outside the valid range [' +\n minRange +\n ', ' +\n maxRange +\n ']!');\n }\n return isUnsignedType ? value >>> 0 : value | 0;\n },\n argPackAdvance: 8,\n readValueFromPointer: integerReadValueFromPointer(name, shift, minRange !== 0),\n destructorFunction: null\n });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n var typeMapping = [\n Int8Array,\n Uint8Array,\n Int16Array,\n Uint16Array,\n Int32Array,\n Uint32Array,\n Float32Array,\n Float64Array\n ];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = HEAPU32;\n var size = heap[handle];\n var data = heap[handle + 1];\n return new TA(buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: decodeMemoryView,\n argPackAdvance: 8,\n readValueFromPointer: decodeMemoryView\n }, {\n ignoreDuplicateRegistrations: true\n });\n }\n function __embind_register_std_string(rawType, name) {\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === 'std::string';\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n var length = HEAPU32[value >> 2];\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i;\n if (HEAPU8[currentBytePtr] == 0 || i == length) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === undefined) {\n str = stringSegment;\n }\n else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n }\n else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(HEAPU8[value + 4 + i]);\n }\n str = a.join('');\n }\n _free(value);\n return str;\n },\n toWireType: function (destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var getLength;\n var valueIsOfTypeString = typeof value === 'string';\n if (!(valueIsOfTypeString ||\n value instanceof Uint8Array ||\n value instanceof Uint8ClampedArray ||\n value instanceof Int8Array)) {\n throwBindingError('Cannot pass non-string to std::string');\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n getLength = function () {\n return lengthBytesUTF8(value);\n };\n }\n else {\n getLength = function () {\n return value.length;\n };\n }\n var length = getLength();\n var ptr = _malloc(4 + length + 1);\n HEAPU32[ptr >> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr + 4, length + 1);\n }\n else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError('String has UTF-16 code units that do not fit in 8 bits');\n }\n HEAPU8[ptr + 4 + i] = charCode;\n }\n }\n else {\n for (var i = 0; i < length; ++i) {\n HEAPU8[ptr + 4 + i] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: function (ptr) {\n _free(ptr);\n }\n });\n }\n function __embind_register_std_wstring(rawType, charSize, name) {\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = function () {\n return HEAPU16;\n };\n shift = 1;\n }\n else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = function () {\n return HEAPU32;\n };\n shift = 2;\n }\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n var length = HEAPU32[value >> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (HEAP[currentBytePtr >> shift] == 0 || i == length) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === undefined) {\n str = stringSegment;\n }\n else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n },\n toWireType: function (destructors, value) {\n if (!(typeof value === 'string')) {\n throwBindingError('Cannot pass non-string to C++ string type ' + name);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n HEAPU32[ptr >> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: function (ptr) {\n _free(ptr);\n }\n });\n }\n function __embind_register_void(rawType, name) {\n name = readLatin1String(name);\n registerType(rawType, {\n isVoid: true,\n name: name,\n argPackAdvance: 0,\n fromWireType: function () {\n return undefined;\n },\n toWireType: function (destructors, o) {\n return undefined;\n }\n });\n }\n function _abort() {\n abort();\n }\n function _emscripten_get_heap_size() {\n return HEAPU8.length;\n }\n function abortOnCannotGrowMemory(requestedSize) {\n abort('OOM');\n }\n function _emscripten_resize_heap(requestedSize) {\n requestedSize = requestedSize >>> 0;\n abortOnCannotGrowMemory(requestedSize);\n }\n function _llvm_trap() {\n abort('trap!');\n }\n function _emscripten_memcpy_big(dest, src, num) {\n HEAPU8.copyWithin(dest, src, src + num);\n }\n embind_init_charCodes();\n BindingError = Module['BindingError'] = extendError(Error, 'BindingError');\n InternalError = Module['InternalError'] = extendError(Error, 'InternalError');\n init_ClassHandle();\n init_RegisteredPointer();\n init_embind();\n UnboundTypeError = Module['UnboundTypeError'] = extendError(Error, 'UnboundTypeError');\n init_emval();\n var ASSERTIONS = false;\n function intArrayToString(array) {\n var ret = [];\n for (var i = 0; i < array.length; i++) {\n var chr = array[i];\n if (chr > 255) {\n if (ASSERTIONS) {\n assert(false, 'Character code ' +\n chr +\n ' (' +\n String.fromCharCode(chr) +\n ') at offset ' +\n i +\n ' not in 0x00-0xFF.');\n }\n chr &= 255;\n }\n ret.push(String.fromCharCode(chr));\n }\n return ret.join('');\n }\n var decodeBase64 = typeof atob === 'function'\n ? atob\n : function (input) {\n var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var output = '';\n var chr1, chr2, chr3;\n var enc1, enc2, enc3, enc4;\n var i = 0;\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, '');\n do {\n enc1 = keyStr.indexOf(input.charAt(i++));\n enc2 = keyStr.indexOf(input.charAt(i++));\n enc3 = keyStr.indexOf(input.charAt(i++));\n enc4 = keyStr.indexOf(input.charAt(i++));\n chr1 = (enc1 << 2) | (enc2 >> 4);\n chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n chr3 = ((enc3 & 3) << 6) | enc4;\n output = output + String.fromCharCode(chr1);\n if (enc3 !== 64) {\n output = output + String.fromCharCode(chr2);\n }\n if (enc4 !== 64) {\n output = output + String.fromCharCode(chr3);\n }\n } while (i < input.length);\n return output;\n };\n function intArrayFromBase64(s) {\n if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) {\n var buf;\n try {\n buf = Buffer.from(s, 'base64');\n }\n catch (_) {\n buf = new Buffer(s, 'base64');\n }\n return new Uint8Array(buf['buffer'], buf['byteOffset'], buf['byteLength']);\n }\n try {\n var decoded = decodeBase64(s);\n var bytes = new Uint8Array(decoded.length);\n for (var i = 0; i < decoded.length; ++i) {\n bytes[i] = decoded.charCodeAt(i);\n }\n return bytes;\n }\n catch (_) {\n throw new Error('Converting base64 string to bytes failed.');\n }\n }\n function tryParseAsDataURI(filename) {\n if (!isDataURI(filename)) {\n return;\n }\n return intArrayFromBase64(filename.slice(dataURIPrefix.length));\n }\n var asmGlobalArg = {\n Math: Math,\n Int8Array: Int8Array,\n Int16Array: Int16Array,\n Int32Array: Int32Array,\n Uint8Array: Uint8Array,\n Uint16Array: Uint16Array,\n Float32Array: Float32Array,\n Float64Array: Float64Array\n };\n var asmLibraryArg = {\n A: _emscripten_memcpy_big,\n B: _emscripten_resize_heap,\n C: _llvm_trap,\n D: tempDoublePtr,\n a: abort,\n b: setTempRet0,\n c: getTempRet0,\n d: ___cxa_allocate_exception,\n e: ___cxa_begin_catch,\n f: ___cxa_throw,\n g: ___cxa_uncaught_exceptions,\n h: ___exception_addRef,\n i: ___exception_deAdjust,\n j: ___gxx_personality_v0,\n k: __embind_register_bool,\n l: __embind_register_class,\n m: __embind_register_class_constructor,\n n: __embind_register_class_function,\n o: __embind_register_emval,\n p: __embind_register_float,\n q: __embind_register_integer,\n r: __embind_register_memory_view,\n s: __embind_register_std_string,\n t: __embind_register_std_wstring,\n u: __embind_register_void,\n v: __emval_decref,\n w: __emval_register,\n x: _abort,\n y: _embind_repr,\n z: _emscripten_get_heap_size\n }; // EMSCRIPTEN_START_ASM\n var asm = /** @suppress {uselessCode} */ (function (global, env, buffer) {\n 'use asm';\n var a = new global.Int8Array(buffer), b = new global.Int16Array(buffer), c = new global.Int32Array(buffer), d = new global.Uint8Array(buffer), e = new global.Uint16Array(buffer), f = new global.Float32Array(buffer), g = new global.Float64Array(buffer), h = env.D | 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0.0, q = global.Math.imul, r = global.Math.clz32, s = env.a, t = env.b, u = env.c, v = env.d, w = env.e, x = env.f, y = env.g, z = env.h, A = env.i, B = env.j, C = env.k, D = env.l, E = env.m, F = env.n, G = env.o, H = env.p, I = env.q, J = env.r, K = env.s, L = env.t, M = env.u, N = env.v, O = env.w, P = env.x, Q = env.y, R = env.z, S = env.A, T = env.B, U = env.C, V = 22384, W = 5265264, X = 0.0;\n // EMSCRIPTEN_START_FUNCS\n function ia() {\n em();\n fm();\n }\n function ja() {\n ka(0);\n return;\n }\n function ka(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0;\n a = V;\n V = (V + 16) | 0;\n b = (a + 8) | 0;\n d = a;\n vk();\n m = xk() | 0;\n g = yk() | 0;\n f = Ak() | 0;\n h = Bk() | 0;\n i = Ck() | 0;\n j = Dk() | 0;\n k = Jk() | 0;\n l = Kk() | 0;\n e = Kk() | 0;\n D(f | 0, h | 0, i | 0, j | 0, k | 0, 9, l | 0, m | 0, e | 0, g | 0, 6204, Lk() | 0, 138);\n Nk(1);\n c[d >> 2] = 5;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Uk(6211, b);\n c[d >> 2] = 3;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n cl(6216, b);\n c[d >> 2] = 10;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n kl(6225, b);\n sl();\n g = ul() | 0;\n e = vl() | 0;\n m = xl() | 0;\n l = yl() | 0;\n k = zl() | 0;\n j = Dk() | 0;\n i = Jk() | 0;\n h = Kk() | 0;\n f = Kk() | 0;\n D(m | 0, l | 0, k | 0, j | 0, i | 0, 11, h | 0, g | 0, f | 0, e | 0, 6234, Lk() | 0, 139);\n Gl(2);\n c[d >> 2] = 6;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Nl(6211, b);\n c[d >> 2] = 4;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6248, b);\n c[d >> 2] = 5;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6265, b);\n c[d >> 2] = 6;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6280, b);\n c[d >> 2] = 7;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n _l(6216, b);\n V = a;\n return;\n }\n function la(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n e = V;\n V = (V + 32) | 0;\n h = (e + 16) | 0;\n f = (e + 8) | 0;\n i = e;\n g = eq(20) | 0;\n ta(g, b, d);\n c[i >> 2] = 0;\n c[h >> 2] = c[i >> 2];\n va(f, g, h);\n b = c[f >> 2] | 0;\n c[f >> 2] = c[a >> 2];\n c[a >> 2] = b;\n b = (f + 4) | 0;\n d = (a + 4) | 0;\n g = c[b >> 2] | 0;\n c[b >> 2] = c[d >> 2];\n c[d >> 2] = g;\n wa(f);\n d = eq(352) | 0;\n ua(d, c[a >> 2] | 0);\n g = (a + 8) | 0;\n c[i >> 2] = 0;\n c[h >> 2] = c[i >> 2];\n Fa(f, d, h);\n d = c[f >> 2] | 0;\n c[f >> 2] = c[g >> 2];\n c[g >> 2] = d;\n g = (f + 4) | 0;\n d = (a + 12) | 0;\n b = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Ga(f);\n V = e;\n return;\n }\n function ma(a, b) {\n a = a | 0;\n b = b | 0;\n dd(c[(a + 8) >> 2] | 0, b);\n return;\n }\n function na(a) {\n a = a | 0;\n a = ((Qh(c[(a + 8) >> 2] | 0) | 0) + 107) | 0;\n return (d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24) | 0);\n }\n function oa(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n e = V;\n V = (V + 32) | 0;\n g = (e + 16) | 0;\n f = (e + 8) | 0;\n h = e;\n i = eq(12) | 0;\n Rh(i, b, d);\n c[h >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n Vh(f, i, g);\n i = c[f >> 2] | 0;\n c[f >> 2] = c[a >> 2];\n c[a >> 2] = i;\n i = (f + 4) | 0;\n d = (a + 4) | 0;\n b = c[i >> 2] | 0;\n c[i >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Wh(f);\n d = (a + 8) | 0;\n b = eq(12) | 0;\n Sh(b, c[a >> 2] | 0);\n c[h >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n ai(f, b, g);\n b = c[f >> 2] | 0;\n c[f >> 2] = c[d >> 2];\n c[d >> 2] = b;\n b = (f + 4) | 0;\n h = (a + 12) | 0;\n i = c[b >> 2] | 0;\n c[b >> 2] = c[h >> 2];\n c[h >> 2] = i;\n bi(f);\n Th(f, c[d >> 2] | 0);\n d = (a + 16) | 0;\n h = c[f >> 2] | 0;\n i = (f + 4) | 0;\n b = c[i >> 2] | 0;\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = h;\n d = (a + 20) | 0;\n c[(g + 4) >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Uh(g);\n Uh(f);\n V = e;\n return;\n }\n function pa(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n a = (a + 16) | 0;\n d = c[a >> 2] | 0;\n a: do\n if (d | 0)\n switch (b | 0) {\n case 4: {\n ui(d);\n break a;\n }\n case 8: {\n vi(d);\n vi(c[a >> 2] | 0);\n break a;\n }\n default:\n break a;\n }\n while (0);\n return;\n }\n function qa(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = (a + 16) | 0;\n a = c[d >> 2] | 0;\n a: do\n if (a | 0) {\n switch (b | 0) {\n case 1: {\n hj(a);\n break a;\n }\n case 2: {\n ij(a);\n break a;\n }\n case 8: {\n ui(a);\n a = c[d >> 2] | 0;\n break;\n }\n case 4:\n break;\n default:\n break a;\n }\n ui(a);\n }\n while (0);\n return;\n }\n function ra(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = (a + 16) | 0;\n a = c[d >> 2] | 0;\n a: do\n if (a | 0) {\n switch (b | 0) {\n case 1: {\n Rj(a);\n break a;\n }\n case 2: {\n Sj(a);\n break a;\n }\n case 8: {\n vi(a);\n a = c[d >> 2] | 0;\n break;\n }\n case 4:\n break;\n default:\n break a;\n }\n vi(a);\n }\n while (0);\n return;\n }\n function sa(a, b) {\n a = a | 0;\n b = b | 0;\n a = c[(a + 16) >> 2] | 0;\n if (a | 0)\n $[c[c[a >> 2] >> 2] & 63](a, b) | 0;\n return;\n }\n function ta(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n c[b >> 2] = d;\n c[(b + 4) >> 2] = e;\n c[(b + 8) >> 2] = 0;\n a[(b + 12) >> 0] = 0;\n a[(b + 13) >> 0] = 0;\n c[(b + 16) >> 2] = 0;\n return;\n }\n function ua(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n Va((a + 4) | 0, b);\n Wa((a + 247) | 0);\n c[(a + 288) >> 2] = 0;\n c[(a + 292) >> 2] = 0;\n c[(a + 296) >> 2] = 0;\n Xa((a + 300) | 0);\n b = (a + 312) | 0;\n c[b >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n Ya((a + 328) | 0);\n Za(a);\n return;\n }\n function va(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4296;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n xa(a, e);\n V = d;\n return;\n }\n function wa(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function xa(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function ya(a) {\n a = a | 0;\n w(a | 0) | 0;\n lp();\n }\n function za(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Aa(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n jp(a);\n return;\n }\n function Ba(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 6407 ? (a + 12) | 0 : 0) | 0;\n }\n function Ca(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Da(a, b) {\n a = a | 0;\n b = b | 0;\n Ea(a);\n return;\n }\n function Ea(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Fa(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4324;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Ha(a, e);\n V = d;\n return;\n }\n function Ga(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Ha(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Ia(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ja(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n Ma(a);\n jp(a);\n }\n return;\n }\n function Ka(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 6605 ? (a + 12) | 0 : 0) | 0;\n }\n function La(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ma(a) {\n a = a | 0;\n Na((a + 320) | 0);\n Oa((a + 312) | 0);\n Pa((a + 300) | 0);\n Ta((a + 288) | 0);\n Qa((a + 247) | 0);\n Ra((a + 4) | 0);\n return;\n }\n function Na(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Oa(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Pa(a) {\n a = a | 0;\n Sa(a);\n return;\n }\n function Qa(a) {\n a = a | 0;\n a = (a + 34) | 0;\n a = d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24);\n if (a | 0)\n gq(a);\n return;\n }\n function Ra(a) {\n a = a | 0;\n Ua(c[(a + 12) >> 2] | 0);\n return;\n }\n function Sa(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function Ta(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function Ua(a) {\n a = a | 0;\n er(c[(a + -4) >> 2] | 0);\n return;\n }\n function Va(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = _a(1048576) | 0;\n return;\n }\n function Wa(b) {\n b = b | 0;\n var c = 0;\n c = (b + 32) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n b = (b + 34) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function Xa(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n return;\n }\n function Ya(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n a = (a + 16) | 0;\n c[a >> 2] = -1;\n c[(a + 4) >> 2] = -1;\n return;\n }\n function Za(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 64) | 0;\n g = (i + 32) | 0;\n e = (i + 56) | 0;\n d = (i + 16) | 0;\n h = i;\n $a(c[b >> 2] | 0, e, 4);\n mb(g, e, (e + 4) | 0);\n e = lb(6693) | 0;\n f = a[(g + 11) >> 0] | 0;\n if ((e | 0) == (((f << 24) >> 24 < 0 ? c[(g + 4) >> 2] | 0 : f & 255) | 0)) {\n f = (Hq(g, 0, -1, 6693, e) | 0) == 0;\n Cq(g);\n if (f) {\n e = c[b >> 2] | 0;\n c[d >> 2] = 0;\n c[(d + 4) >> 2] = 0;\n c[(d + 8) >> 2] = 0;\n c[(d + 12) >> 2] = 0;\n c[g >> 2] = c[d >> 2];\n c[(g + 4) >> 2] = c[(d + 4) >> 2];\n c[(g + 8) >> 2] = c[(d + 8) >> 2];\n c[(g + 12) >> 2] = c[(d + 12) >> 2];\n bb(e, g);\n e = (b + 20) | 0;\n $a(c[b >> 2] | 0, e, 227);\n cb(b, e);\n f = db() | 0;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n if ((d | 0) != (f | 0))\n do {\n eb(g, d);\n fb(g, e);\n gb(g);\n d = (d + 24) | 0;\n } while ((d | 0) != (f | 0));\n hb(b);\n ib(b);\n jb(c[b >> 2] | 0);\n f = c[b >> 2] | 0;\n d = ((c[(b + 116) >> 2] | 0) + 8) | 0;\n e = h;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = (h + 8) | 0;\n c[e >> 2] = d;\n c[(e + 4) >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n c[(g + 4) >> 2] = c[(h + 4) >> 2];\n c[(g + 8) >> 2] = c[(h + 8) >> 2];\n c[(g + 12) >> 2] = c[(h + 12) >> 2];\n bb(f, g);\n kb((b + 4) | 0);\n V = i;\n return;\n }\n }\n else\n Cq(g);\n i = v(8) | 0;\n ab(i);\n x(i | 0, 2592, 8);\n }\n function _a(a) {\n a = a | 0;\n var b = 0;\n b = dr((a + 68) | 0) | 0;\n a = (b + 68) & -64;\n c[(a + -4) >> 2] = b;\n return a | 0;\n }\n function $a(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = (b + 13) | 0;\n if (!(a[i >> 0] | 0)) {\n h = (b + 4) | 0;\n f = c[h >> 2] | 0;\n j = (b + 8) | 0;\n g = c[j >> 2] | 0;\n k = (f - g) | 0;\n e = (k | 0) < (e | 0) ? k : e;\n if (e) {\n vr(d | 0, ((c[b >> 2] | 0) + g) | 0, e | 0) | 0;\n g = c[j >> 2] | 0;\n f = c[h >> 2] | 0;\n }\n k = (g + e) | 0;\n c[j >> 2] = k;\n c[(b + 16) >> 2] = e;\n if ((k | 0) >= (f | 0))\n a[i >> 0] = 1;\n }\n else\n a[(b + 12) >> 0] = 1;\n return;\n }\n function ab(a) {\n a = a | 0;\n xq(a, 6791);\n c[a >> 2] = 4352;\n return;\n }\n function bb(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = (d + 8) | 0;\n d = c[g >> 2] | 0;\n g = c[(g + 4) >> 2] | 0;\n e = c[(b + 4) >> 2] | 0;\n f = (((e | 0) < 0) << 31) >> 31;\n if (((g | 0) < (f | 0)) | (((g | 0) == (f | 0)) & (d >>> 0 < e >>> 0)))\n c[(b + 8) >> 2] = d;\n else\n a[(b + 12) >> 0] = 1;\n return;\n }\n function cb(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0.0, e = 0.0, f = 0, i = 0.0, j = 0, k = 0.0, l = 0, m = 0.0, n = 0, o = 0.0;\n n = (c + 179) | 0;\n a[h >> 0] = a[n >> 0];\n a[(h + 1) >> 0] = a[(n + 1) >> 0];\n a[(h + 2) >> 0] = a[(n + 2) >> 0];\n a[(h + 3) >> 0] = a[(n + 3) >> 0];\n a[(h + 4) >> 0] = a[(n + 4) >> 0];\n a[(h + 5) >> 0] = a[(n + 5) >> 0];\n a[(h + 6) >> 0] = a[(n + 6) >> 0];\n a[(h + 7) >> 0] = a[(n + 7) >> 0];\n m = +g[h >> 3];\n j = (c + 187) | 0;\n a[h >> 0] = a[j >> 0];\n a[(h + 1) >> 0] = a[(j + 1) >> 0];\n a[(h + 2) >> 0] = a[(j + 2) >> 0];\n a[(h + 3) >> 0] = a[(j + 3) >> 0];\n a[(h + 4) >> 0] = a[(j + 4) >> 0];\n a[(h + 5) >> 0] = a[(j + 5) >> 0];\n a[(h + 6) >> 0] = a[(j + 6) >> 0];\n a[(h + 7) >> 0] = a[(j + 7) >> 0];\n o = +g[h >> 3];\n b = (c + 195) | 0;\n a[h >> 0] = a[b >> 0];\n a[(h + 1) >> 0] = a[(b + 1) >> 0];\n a[(h + 2) >> 0] = a[(b + 2) >> 0];\n a[(h + 3) >> 0] = a[(b + 3) >> 0];\n a[(h + 4) >> 0] = a[(b + 4) >> 0];\n a[(h + 5) >> 0] = a[(b + 5) >> 0];\n a[(h + 6) >> 0] = a[(b + 6) >> 0];\n a[(h + 7) >> 0] = a[(b + 7) >> 0];\n i = +g[h >> 3];\n l = (c + 203) | 0;\n a[h >> 0] = a[l >> 0];\n a[(h + 1) >> 0] = a[(l + 1) >> 0];\n a[(h + 2) >> 0] = a[(l + 2) >> 0];\n a[(h + 3) >> 0] = a[(l + 3) >> 0];\n a[(h + 4) >> 0] = a[(l + 4) >> 0];\n a[(h + 5) >> 0] = a[(l + 5) >> 0];\n a[(h + 6) >> 0] = a[(l + 6) >> 0];\n a[(h + 7) >> 0] = a[(l + 7) >> 0];\n k = +g[h >> 3];\n f = (c + 211) | 0;\n a[h >> 0] = a[f >> 0];\n a[(h + 1) >> 0] = a[(f + 1) >> 0];\n a[(h + 2) >> 0] = a[(f + 2) >> 0];\n a[(h + 3) >> 0] = a[(f + 3) >> 0];\n a[(h + 4) >> 0] = a[(f + 4) >> 0];\n a[(h + 5) >> 0] = a[(f + 5) >> 0];\n a[(h + 6) >> 0] = a[(f + 6) >> 0];\n a[(h + 7) >> 0] = a[(f + 7) >> 0];\n d = +g[h >> 3];\n c = (c + 219) | 0;\n a[h >> 0] = a[c >> 0];\n a[(h + 1) >> 0] = a[(c + 1) >> 0];\n a[(h + 2) >> 0] = a[(c + 2) >> 0];\n a[(h + 3) >> 0] = a[(c + 3) >> 0];\n a[(h + 4) >> 0] = a[(c + 4) >> 0];\n a[(h + 5) >> 0] = a[(c + 5) >> 0];\n a[(h + 6) >> 0] = a[(c + 6) >> 0];\n a[(h + 7) >> 0] = a[(c + 7) >> 0];\n e = +g[h >> 3];\n g[h >> 3] = o;\n a[n >> 0] = a[h >> 0];\n a[(n + 1) >> 0] = a[(h + 1) >> 0];\n a[(n + 2) >> 0] = a[(h + 2) >> 0];\n a[(n + 3) >> 0] = a[(h + 3) >> 0];\n a[(n + 4) >> 0] = a[(h + 4) >> 0];\n a[(n + 5) >> 0] = a[(h + 5) >> 0];\n a[(n + 6) >> 0] = a[(h + 6) >> 0];\n a[(n + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = m;\n a[l >> 0] = a[h >> 0];\n a[(l + 1) >> 0] = a[(h + 1) >> 0];\n a[(l + 2) >> 0] = a[(h + 2) >> 0];\n a[(l + 3) >> 0] = a[(h + 3) >> 0];\n a[(l + 4) >> 0] = a[(h + 4) >> 0];\n a[(l + 5) >> 0] = a[(h + 5) >> 0];\n a[(l + 6) >> 0] = a[(h + 6) >> 0];\n a[(l + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = k;\n a[j >> 0] = a[h >> 0];\n a[(j + 1) >> 0] = a[(h + 1) >> 0];\n a[(j + 2) >> 0] = a[(h + 2) >> 0];\n a[(j + 3) >> 0] = a[(h + 3) >> 0];\n a[(j + 4) >> 0] = a[(h + 4) >> 0];\n a[(j + 5) >> 0] = a[(h + 5) >> 0];\n a[(j + 6) >> 0] = a[(h + 6) >> 0];\n a[(j + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = i;\n a[f >> 0] = a[h >> 0];\n a[(f + 1) >> 0] = a[(h + 1) >> 0];\n a[(f + 2) >> 0] = a[(h + 2) >> 0];\n a[(f + 3) >> 0] = a[(h + 3) >> 0];\n a[(f + 4) >> 0] = a[(h + 4) >> 0];\n a[(f + 5) >> 0] = a[(h + 5) >> 0];\n a[(f + 6) >> 0] = a[(h + 6) >> 0];\n a[(f + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = e;\n a[b >> 0] = a[h >> 0];\n a[(b + 1) >> 0] = a[(h + 1) >> 0];\n a[(b + 2) >> 0] = a[(h + 2) >> 0];\n a[(b + 3) >> 0] = a[(h + 3) >> 0];\n a[(b + 4) >> 0] = a[(h + 4) >> 0];\n a[(b + 5) >> 0] = a[(h + 5) >> 0];\n a[(b + 6) >> 0] = a[(h + 6) >> 0];\n a[(b + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = d;\n a[c >> 0] = a[h >> 0];\n a[(c + 1) >> 0] = a[(h + 1) >> 0];\n a[(c + 2) >> 0] = a[(h + 2) >> 0];\n a[(c + 3) >> 0] = a[(h + 3) >> 0];\n a[(c + 4) >> 0] = a[(h + 4) >> 0];\n a[(c + 5) >> 0] = a[(h + 5) >> 0];\n a[(c + 6) >> 0] = a[(h + 6) >> 0];\n a[(c + 7) >> 0] = a[(h + 7) >> 0];\n return;\n }\n function db() {\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n g = V;\n V = (V + 48) | 0;\n e = (g + 24) | 0;\n f = g;\n b = (g + 44) | 0;\n if ((a[21440] | 0) == 0 ? Tp(21440) | 0 : 0) {\n c[5374] = 0;\n c[5375] = 0;\n c[5376] = 0;\n $p(21440);\n }\n if ((a[21448] | 0) == 0 ? Tp(21448) | 0 : 0)\n $p(21448);\n if ((c[5374] | 0) == (c[5375] | 0)) {\n rq(21508);\n if ((c[5374] | 0) == (c[5375] | 0)) {\n a[e >> 0] = a[b >> 0] | 0;\n pb(f, e);\n b = c[5375] | 0;\n do\n if (b >>> 0 >= (c[5376] | 0) >>> 0) {\n b = (((((b - (c[5374] | 0)) | 0) / 24) | 0) + 1) | 0;\n d = xb(21496) | 0;\n if (d >>> 0 < b >>> 0)\n cr(21496);\n else {\n h = c[5374] | 0;\n j = ((((c[5376] | 0) - h) | 0) / 24) | 0;\n i = j << 1;\n ub(e, j >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((((c[5375] | 0) - h) | 0) / 24) | 0, 21504);\n d = (e + 8) | 0;\n sb(c[d >> 2] | 0, f);\n c[d >> 2] = (c[d >> 2] | 0) + 24;\n vb(21496, e);\n wb(e);\n break;\n }\n }\n else {\n qb(e, 21496, 1);\n j = (e + 4) | 0;\n sb(c[j >> 2] | 0, f);\n c[j >> 2] = (c[j >> 2] | 0) + 24;\n rb(e);\n }\n while (0);\n gb(f);\n }\n sq(21508);\n }\n V = g;\n return 21496;\n }\n function eb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n do\n if (e)\n if ((b | 0) == (e | 0)) {\n e = tb(a) | 0;\n c[(a + 16) >> 2] = e;\n d = c[d >> 2] | 0;\n da[c[((c[d >> 2] | 0) + 12) >> 2] & 15](d, e);\n break;\n }\n else {\n c[(a + 16) >> 2] = Z[c[((c[e >> 2] | 0) + 8) >> 2] & 15](e) | 0;\n break;\n }\n else\n c[(a + 16) >> 2] = 0;\n while (0);\n return;\n }\n function fb(a, b) {\n a = a | 0;\n b = b | 0;\n a = c[(a + 16) >> 2] | 0;\n if (!a) {\n b = v(4) | 0;\n c[b >> 2] = 0;\n Nb(b);\n x(b | 0, 4168, 131);\n }\n else {\n da[c[((c[a >> 2] | 0) + 24) >> 2] & 15](a, b);\n return;\n }\n }\n function gb(a) {\n a = a | 0;\n var b = 0;\n b = c[(a + 16) >> 2] | 0;\n if ((a | 0) != (b | 0)) {\n if (b | 0)\n ca[c[((c[b >> 2] | 0) + 20) >> 2] & 255](b);\n }\n else\n ca[c[((c[b >> 2] | 0) + 16) >> 2] & 255](b);\n return;\n }\n function hb(b) {\n b = b | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n q = V;\n V = (V + 96) | 0;\n i = (q + 16) | 0;\n o = q;\n l = (q + 72) | 0;\n j = c[b >> 2] | 0;\n m = e[(b + 114) >> 1] | 0;\n n = o;\n c[n >> 2] = 0;\n c[(n + 4) >> 2] = 0;\n n = (o + 8) | 0;\n c[n >> 2] = m;\n c[(n + 4) >> 2] = 0;\n c[i >> 2] = c[o >> 2];\n c[(i + 4) >> 2] = c[(o + 4) >> 2];\n c[(i + 8) >> 2] = c[(o + 8) >> 2];\n c[(i + 12) >> 2] = c[(o + 12) >> 2];\n bb(j, i);\n j = (b + 120) | 0;\n a: do\n if (c[j >> 2] | 0) {\n k = (i + 2) | 0;\n m = (i + 16) | 0;\n n = (i + 20) | 0;\n o = (i + 18) | 0;\n g = 0;\n while (1) {\n if (!(Ob(c[b >> 2] | 0) | 0))\n break a;\n if (Pb(c[b >> 2] | 0) | 0)\n break a;\n $a(c[b >> 2] | 0, i, 54);\n f = 7277;\n h = k;\n while (1) {\n if ((a[h >> 0] | 0) != (a[f >> 0] | 0))\n break;\n h = (h + 1) | 0;\n if ((h | 0) == (m | 0)) {\n p = 8;\n break;\n }\n else\n f = (f + 1) | 0;\n }\n if ((p | 0) == 8\n ? ((p = 0), ((d[o >> 0] | (d[(o + 1) >> 0] << 8)) << 16) >> 16 == 22204)\n : 0)\n break;\n Rb(c[b >> 2] | 0, (d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535, 0, 1);\n g = (g + 1) | 0;\n if (g >>> 0 >= (c[j >> 2] | 0) >>> 0)\n break a;\n }\n o = (d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535;\n p = fq(o) | 0;\n $a(c[b >> 2] | 0, p, o);\n Qb(b, p);\n jp(p);\n p = (b + 125) | 0;\n Tb(l, (b + 247) | 0, (d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 65535);\n Ub((b + 300) | 0, l) | 0;\n Pa(l);\n V = q;\n return;\n }\n while (0);\n q = v(8) | 0;\n Sb(q);\n x(q | 0, 2672, 8);\n }\n function ib(a) {\n a = a | 0;\n var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = V;\n V = (V + 176) | 0;\n g = (n + 40) | 0;\n h = (n + 24) | 0;\n b = (n + 16) | 0;\n f = n;\n k = (n + 152) | 0;\n l = (n + 136) | 0;\n m = (n + 56) | 0;\n j = c[a >> 2] | 0;\n i = (a + 116) | 0;\n o = c[i >> 2] | 0;\n e = h;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = (h + 8) | 0;\n c[e >> 2] = o;\n c[(e + 4) >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n c[(g + 4) >> 2] = c[(h + 4) >> 2];\n c[(g + 8) >> 2] = c[(h + 8) >> 2];\n c[(g + 12) >> 2] = c[(h + 12) >> 2];\n bb(j, g);\n j = b;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n $a(c[a >> 2] | 0, b, 8);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n e = b;\n b = c[e >> 2] | 0;\n e = c[(e + 4) >> 2] | 0;\n if (((b | 0) == -1) & ((e | 0) == -1)) {\n o = v(8) | 0;\n ic(o, 7488);\n x(o | 0, 2720, 8);\n }\n o = c[a >> 2] | 0;\n j = f;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n j = (f + 8) | 0;\n c[j >> 2] = b;\n c[(j + 4) >> 2] = e;\n c[g >> 2] = c[f >> 2];\n c[(g + 4) >> 2] = c[(f + 4) >> 2];\n c[(g + 8) >> 2] = c[(f + 8) >> 2];\n c[(g + 12) >> 2] = c[(f + 12) >> 2];\n bb(o, g);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n $a(c[a >> 2] | 0, g, 8);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n if (c[g >> 2] | 0) {\n o = v(8) | 0;\n jc(o);\n x(o | 0, 2736, 8);\n }\n h = (a + 288) | 0;\n j = (a + 292) | 0;\n c[j >> 2] = c[h >> 2];\n o = (a + 259) | 0;\n if ((d[o >> 0] |\n (d[(o + 1) >> 0] << 8) |\n (d[(o + 2) >> 0] << 16) |\n (d[(o + 3) >> 0] << 24) |\n 0) ==\n -1) {\n o = v(8) | 0;\n ic(o, 7606);\n x(o | 0, 2720, 8);\n }\n f = (g + 4) | 0;\n kc(h, ((c[f >> 2] | 0) + 1) | 0);\n o = c[h >> 2] | 0;\n c[o >> 2] = (c[i >> 2] | 0) + 8;\n c[(o + 4) >> 2] = 0;\n if ((c[f >> 2] | 0) >>> 0 > 1) {\n Va(k, c[a >> 2] | 0);\n lc(l, k);\n mc(m, 32, 2, 8, 0);\n nc(l);\n oc(m);\n if (!(c[f >> 2] | 0)) {\n h = c[h >> 2] | 0;\n e = h;\n }\n else {\n e = 1;\n do {\n if (e >>> 0 > 1)\n b = c[((c[h >> 2] | 0) + ((e + -1) << 3)) >> 2] | 0;\n else\n b = 0;\n i = pc(m, l, b, 1) | 0;\n b = c[h >> 2] | 0;\n o = (b + (e << 3)) | 0;\n c[o >> 2] = i;\n c[(o + 4) >> 2] = (((i | 0) < 0) << 31) >> 31;\n e = (e + 1) | 0;\n } while (e >>> 0 <= (c[f >> 2] | 0) >>> 0);\n e = b;\n h = b;\n }\n b = c[j >> 2] | 0;\n if (((b - e) >> 3) >>> 0 > 1) {\n g = (b - h) >> 3;\n f = h;\n b = 1;\n e = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n do {\n o = (h + (b << 3)) | 0;\n j = o;\n e = lr(c[j >> 2] | 0, c[(j + 4) >> 2] | 0, e | 0, f | 0) | 0;\n f = u() | 0;\n c[o >> 2] = e;\n c[(o + 4) >> 2] = f;\n b = (b + 1) | 0;\n } while (b >>> 0 < g >>> 0);\n }\n qc(m);\n rc(l);\n Ra(k);\n }\n V = n;\n return;\n }\n function jb(b) {\n b = b | 0;\n a[(b + 12) >> 0] = 0;\n a[(b + 13) >> 0] = 0;\n return;\n }\n function kb(a) {\n a = a | 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n return;\n }\n function lb(a) {\n a = a | 0;\n return fo(a) | 0;\n }\n function mb(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 16) | 0;\n g = d;\n h = i;\n f = (e - g) | 0;\n if (f >>> 0 > 4294967279)\n yq(b);\n if (f >>> 0 < 11)\n a[(b + 11) >> 0] = f;\n else {\n k = (f + 16) & -16;\n j = eq(k) | 0;\n c[b >> 2] = j;\n c[(b + 8) >> 2] = k | -2147483648;\n c[(b + 4) >> 2] = f;\n b = j;\n }\n if ((d | 0) != (e | 0)) {\n g = (e - g) | 0;\n f = b;\n while (1) {\n nb(f, d);\n d = (d + 1) | 0;\n if ((d | 0) == (e | 0))\n break;\n else\n f = (f + 1) | 0;\n }\n b = (b + g) | 0;\n }\n a[h >> 0] = 0;\n nb(b, h);\n V = i;\n return;\n }\n function nb(b, c) {\n b = b | 0;\n c = c | 0;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function ob(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function pb(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 4372;\n c[(a + 16) >> 2] = a;\n return;\n }\n function qb(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 24) | 0);\n return;\n }\n function rb(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function sb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n do\n if (e)\n if ((b | 0) == (e | 0)) {\n e = tb(a) | 0;\n c[(a + 16) >> 2] = e;\n d = c[d >> 2] | 0;\n da[c[((c[d >> 2] | 0) + 12) >> 2] & 15](d, e);\n break;\n }\n else {\n c[(a + 16) >> 2] = e;\n c[d >> 2] = 0;\n break;\n }\n else\n c[(a + 16) >> 2] = 0;\n while (0);\n return;\n }\n function tb(a) {\n a = a | 0;\n return a | 0;\n }\n function ub(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 178956970) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 24) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 24) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 24) | 0);\n return;\n }\n function vb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n d = (d + -24) | 0;\n sb((e + -24) | 0, d);\n e = ((c[h >> 2] | 0) + -24) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function wb(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -24) | 0;\n c[e >> 2] = f;\n gb(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function xb(a) {\n a = a | 0;\n return 178956970;\n }\n function yb(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function zb(a) {\n a = a | 0;\n a = eq(8) | 0;\n c[a >> 2] = 4372;\n return a | 0;\n }\n function Ab(a, b) {\n a = a | 0;\n b = b | 0;\n c[b >> 2] = 4372;\n return;\n }\n function Bb(a) {\n a = a | 0;\n return;\n }\n function Cb(a) {\n a = a | 0;\n Da(a, 8);\n return;\n }\n function Db(a, b) {\n a = a | 0;\n b = b | 0;\n Hb((a + 4) | 0, b);\n return;\n }\n function Eb(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 7183 ? (a + 4) | 0 : 0) | 0;\n }\n function Fb(a) {\n a = a | 0;\n return 2664;\n }\n function Gb(a) {\n a = a | 0;\n return;\n }\n function Hb(a, b) {\n a = a | 0;\n b = b | 0;\n Ib(a, b);\n return;\n }\n function Ib(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0;\n b = (c + 104) | 0;\n c = d[b >> 0] | 0;\n e = c >>> 7;\n f = (c >>> 6) & 1;\n if (((e | 0) == 1) & ((f | 0) != 0)) {\n f = v(8) | 0;\n Jb(f);\n x(f | 0, 2632, 8);\n }\n if ((e | 0) == (f | 0)) {\n f = v(8) | 0;\n Kb(f);\n x(f | 0, 2648, 8);\n }\n else {\n a[b >> 0] = c & 63;\n return;\n }\n }\n function Jb(a) {\n a = a | 0;\n xq(a, 7076);\n c[a >> 2] = 4416;\n return;\n }\n function Kb(a) {\n a = a | 0;\n xq(a, 7144);\n c[a >> 2] = 4436;\n return;\n }\n function Lb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Mb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Nb(a) {\n a = a | 0;\n c[a >> 2] = 6092;\n return;\n }\n function Ob(b) {\n b = b | 0;\n var c = 0;\n c = (b + 12) | 0;\n b = (a[c >> 0] | 0) == 0;\n a[c >> 0] = 0;\n return b | 0;\n }\n function Pb(b) {\n b = b | 0;\n return ((a[(b + 13) >> 0] | 0) != 0) | 0;\n }\n function Qb(a, b) {\n a = a | 0;\n b = b | 0;\n a = (a + 247) | 0;\n Vb(a, b);\n if (((d[a >> 0] | (d[(a + 1) >> 0] << 8)) << 16) >> 16 == 2)\n return;\n else {\n b = v(8) | 0;\n Wb(b);\n x(b | 0, 2688, 8);\n }\n }\n function Rb(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n switch (f | 0) {\n case 0:\n break;\n case 2: {\n f = c[(b + 4) >> 2] | 0;\n d =\n lr(lr(d | 0, e | 0, -1, -1) | 0, u() | 0, f | 0, ((((f | 0) < 0) << 31) >> 31) | 0) | 0;\n e = u() | 0;\n break;\n }\n case 1: {\n f = c[(b + 8) >> 2] | 0;\n d = lr(f | 0, ((((f | 0) < 0) << 31) >> 31) | 0, d | 0, e | 0) | 0;\n e = u() | 0;\n break;\n }\n default: {\n e = 0;\n d = 0;\n }\n }\n g = c[(b + 4) >> 2] | 0;\n h = (((g | 0) < 0) << 31) >> 31;\n f = (b + 12) | 0;\n if (((e | 0) < 0) | (((e | 0) > (h | 0)) | (((e | 0) == (h | 0)) & (d >>> 0 >= g >>> 0))))\n a[f >> 0] = 1;\n else {\n a[f >> 0] = 0;\n c[(b + 8) >> 2] = d;\n }\n return;\n }\n function Sb(a) {\n a = a | 0;\n xq(a, 7410);\n c[a >> 2] = 4476;\n return;\n }\n function Tb(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n Xa(a);\n f = (b + 32) | 0;\n if (((d[f >> 0] | (d[(f + 1) >> 0] << 8)) << 16) >> 16) {\n e = (b + 34) | 0;\n b = 0;\n do {\n j =\n d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n k = (j + ((b * 6) | 0)) | 0;\n i = (j + ((b * 6) | 0) + 2) | 0;\n j = (j + ((b * 6) | 0) + 4) | 0;\n _b(g, (d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 65535, (d[i >> 0] | (d[(i + 1) >> 0] << 8)) & 65535, (d[j >> 0] | (d[(j + 1) >> 0] << 8)) & 65535);\n Zb(a, g);\n c = (c - ((d[i >> 0] | (d[(i + 1) >> 0] << 8)) & 65535)) | 0;\n b = (b + 1) | 0;\n } while (b >>> 0 < ((d[f >> 0] | (d[(f + 1) >> 0] << 8)) & 65535) >>> 0);\n }\n if ((c | 0) < 0) {\n k = v(8) | 0;\n Wb(k);\n x(k | 0, 2688, 8);\n }\n if (c | 0) {\n _b(g, 0, c, 2);\n Zb(a, g);\n }\n V = h;\n return;\n }\n function Ub(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0, e = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 1) | 0;\n a[e >> 0] = a[d >> 0] | 0;\n fc(b, c, e);\n V = d;\n return b | 0;\n }\n function Vb(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n f = (c + 2) | 0;\n h = d[c >> 0] | (d[(c + 1) >> 0] << 8);\n a[b >> 0] = h;\n a[(b + 1) >> 0] = h >> 8;\n h = (b + 2) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n a[(b + 4) >> 0] = a[(c + 4) >> 0] | 0;\n h = (c + 6) | 0;\n a[(b + 5) >> 0] = a[(c + 5) >> 0] | 0;\n f = (c + 8) | 0;\n e = (b + 6) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8);\n a[e >> 0] = h;\n a[(e + 1) >> 0] = h >> 8;\n e = (c + 12) | 0;\n h = (b + 8) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8) | (d[(f + 2) >> 0] << 16) | (d[(f + 3) >> 0] << 24);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n a[(h + 2) >> 0] = f >> 16;\n a[(h + 3) >> 0] = f >> 24;\n h = (b + 12) | 0;\n e = d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n a[h >> 0] = e;\n a[(h + 1) >> 0] = e >> 8;\n a[(h + 2) >> 0] = e >> 16;\n a[(h + 3) >> 0] = e >> 24;\n h = (c + 16) | 0;\n e = h;\n e = d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n h = (h + 4) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8) | (d[(h + 2) >> 0] << 16) | (d[(h + 3) >> 0] << 24);\n f = (b + 16) | 0;\n i = f;\n a[i >> 0] = e;\n a[(i + 1) >> 0] = e >> 8;\n a[(i + 2) >> 0] = e >> 16;\n a[(i + 3) >> 0] = e >> 24;\n f = (f + 4) | 0;\n a[f >> 0] = h;\n a[(f + 1) >> 0] = h >> 8;\n a[(f + 2) >> 0] = h >> 16;\n a[(f + 3) >> 0] = h >> 24;\n f = (c + 32) | 0;\n h = (c + 24) | 0;\n i = h;\n i = d[i >> 0] | (d[(i + 1) >> 0] << 8) | (d[(i + 2) >> 0] << 16) | (d[(i + 3) >> 0] << 24);\n h = (h + 4) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8) | (d[(h + 2) >> 0] << 16) | (d[(h + 3) >> 0] << 24);\n e = (b + 24) | 0;\n g = e;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = h;\n a[(e + 1) >> 0] = h >> 8;\n a[(e + 2) >> 0] = h >> 16;\n a[(e + 3) >> 0] = h >> 24;\n e = (c + 34) | 0;\n h = (b + 32) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n g = (b + 34) | 0;\n b = d[g >> 0] | (d[(g + 1) >> 0] << 8) | (d[(g + 2) >> 0] << 16) | (d[(g + 3) >> 0] << 24);\n if (!b)\n b = f;\n else {\n gq(b);\n b = d[h >> 0] | (d[(h + 1) >> 0] << 8);\n }\n f = fq(((b & 65535) * 6) | 0) | 0;\n a[g >> 0] = f;\n a[(g + 1) >> 0] = f >> 8;\n a[(g + 2) >> 0] = f >> 16;\n a[(g + 3) >> 0] = f >> 24;\n if ((b << 16) >> 16\n ? ((b = (c + 36) | 0),\n (i = d[e >> 0] | (d[(e + 1) >> 0] << 8)),\n (a[f >> 0] = i),\n (a[(f + 1) >> 0] = i >> 8),\n (c = (c + 38) | 0),\n (i = (f + 2) | 0),\n (b = d[b >> 0] | (d[(b + 1) >> 0] << 8)),\n (a[i >> 0] = b),\n (a[(i + 1) >> 0] = b >> 8),\n (i = (f + 4) | 0),\n (c = d[c >> 0] | (d[(c + 1) >> 0] << 8)),\n (a[i >> 0] = c),\n (a[(i + 1) >> 0] = c >> 8),\n ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 65535) > 1)\n : 0) {\n b = 1;\n do {\n c = e;\n e = (e + 6) | 0;\n i =\n d[g >> 0] | (d[(g + 1) >> 0] << 8) | (d[(g + 2) >> 0] << 16) | (d[(g + 3) >> 0] << 24);\n j = (c + 8) | 0;\n f = (i + ((b * 6) | 0)) | 0;\n k = d[e >> 0] | (d[(e + 1) >> 0] << 8);\n a[f >> 0] = k;\n a[(f + 1) >> 0] = k >> 8;\n c = (c + 10) | 0;\n f = (i + ((b * 6) | 0) + 2) | 0;\n j = d[j >> 0] | (d[(j + 1) >> 0] << 8);\n a[f >> 0] = j;\n a[(f + 1) >> 0] = j >> 8;\n i = (i + ((b * 6) | 0) + 4) | 0;\n c = d[c >> 0] | (d[(c + 1) >> 0] << 8);\n a[i >> 0] = c;\n a[(i + 1) >> 0] = c >> 8;\n b = (b + 1) | 0;\n } while (b >>> 0 < ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 65535) >>> 0);\n }\n return;\n }\n function Wb(a) {\n a = a | 0;\n xq(a, 7354);\n c[a >> 2] = 4456;\n return;\n }\n function Xb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Yb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Zb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 32) | 0;\n f = i;\n g = (a + 4) | 0;\n d = c[g >> 2] | 0;\n h = (a + 8) | 0;\n do\n if ((d | 0) == (c[h >> 2] | 0)) {\n d = (((((d - (c[a >> 2] | 0)) | 0) / 12) | 0) + 1) | 0;\n e = ec(a) | 0;\n if (e >>> 0 < d >>> 0)\n cr(a);\n else {\n j = c[a >> 2] | 0;\n k = ((((c[h >> 2] | 0) - j) | 0) / 12) | 0;\n h = k << 1;\n bc(f, k >>> 0 < (e >>> 1) >>> 0 ? (h >>> 0 < d >>> 0 ? d : h) : e, ((((c[g >> 2] | 0) - j) | 0) / 12) | 0, (a + 8) | 0);\n h = (f + 8) | 0;\n g = c[h >> 2] | 0;\n c[g >> 2] = c[b >> 2];\n c[(g + 4) >> 2] = c[(b + 4) >> 2];\n c[(g + 8) >> 2] = c[(b + 8) >> 2];\n c[h >> 2] = (c[h >> 2] | 0) + 12;\n cc(a, f);\n dc(f);\n break;\n }\n }\n else {\n $b(f, a, 1);\n k = (f + 4) | 0;\n j = c[k >> 2] | 0;\n c[j >> 2] = c[b >> 2];\n c[(j + 4) >> 2] = c[(b + 4) >> 2];\n c[(j + 8) >> 2] = c[(b + 8) >> 2];\n c[k >> 2] = (c[k >> 2] | 0) + 12;\n ac(f);\n }\n while (0);\n V = i;\n return;\n }\n function _b(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n c[(a + 8) >> 2] = e;\n return;\n }\n function $b(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 12) | 0);\n return;\n }\n function ac(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function bc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 357913941) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 12) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 12) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 12) | 0);\n return;\n }\n function cc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n e = c[a >> 2] | 0;\n h = (a + 4) | 0;\n g = (b + 4) | 0;\n f = ((c[h >> 2] | 0) - e) | 0;\n d = ((c[g >> 2] | 0) + (((((f | 0) / -12) | 0) * 12) | 0)) | 0;\n c[g >> 2] = d;\n if ((f | 0) > 0) {\n ur(d | 0, e | 0, f | 0) | 0;\n e = g;\n d = c[g >> 2] | 0;\n }\n else\n e = g;\n g = c[a >> 2] | 0;\n c[a >> 2] = d;\n c[e >> 2] = g;\n g = (b + 8) | 0;\n f = c[h >> 2] | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = f;\n g = (a + 8) | 0;\n h = (b + 12) | 0;\n a = c[g >> 2] | 0;\n c[g >> 2] = c[h >> 2];\n c[h >> 2] = a;\n c[b >> 2] = c[e >> 2];\n return;\n }\n function dc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + ((~(((((e + -12 - b) | 0) >>> 0) / 12) | 0) * 12) | 0);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ec(a) {\n a = a | 0;\n return 357913941;\n }\n function fc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n gc(a);\n c[a >> 2] = c[b >> 2];\n d = (b + 4) | 0;\n c[(a + 4) >> 2] = c[d >> 2];\n e = (b + 8) | 0;\n c[(a + 8) >> 2] = c[e >> 2];\n c[e >> 2] = 0;\n c[d >> 2] = 0;\n c[b >> 2] = 0;\n return;\n }\n function gc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n e = (a + 4) | 0;\n c[e >> 2] = d;\n f = (a + 8) | 0;\n Da(b, ((c[f >> 2] | 0) - d) | 0);\n c[f >> 2] = 0;\n c[e >> 2] = 0;\n c[a >> 2] = 0;\n }\n return;\n }\n function hc(a) {\n a = a | 0;\n xq(a, 7660);\n c[a >> 2] = 4496;\n return;\n }\n function ic(a, b) {\n a = a | 0;\n b = b | 0;\n xq(a, b);\n c[a >> 2] = 4516;\n return;\n }\n function jc(a) {\n a = a | 0;\n xq(a, 7704);\n c[a >> 2] = 4536;\n return;\n }\n function kc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[a >> 2] | 0;\n e = ((c[d >> 2] | 0) - f) >> 3;\n if (e >>> 0 >= b >>> 0) {\n if (e >>> 0 > b >>> 0)\n c[d >> 2] = f + (b << 3);\n }\n else\n vc(a, (b - e) | 0);\n return;\n }\n function lc(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = -1;\n return;\n }\n function mc(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n c[(a + 12) >> 2] = e;\n c[(a + 16) >> 2] = f;\n c[(a + 36) >> 2] = 0;\n c[(a + 40) >> 2] = 0;\n c[(a + 44) >> 2] = 0;\n Gc((a + 48) | 0);\n c[(a + 68) >> 2] = 0;\n c[(a + 72) >> 2] = 0;\n c[(a + 76) >> 2] = 0;\n do\n if (!f) {\n d = (a + 20) | 0;\n if (((b + -1) | 0) >>> 0 < 31) {\n c[d >> 2] = b;\n f = 1 << b;\n c[(a + 24) >> 2] = f;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n break;\n }\n else {\n c[d >> 2] = 32;\n c[(a + 24) >> 2] = 0;\n c[(a + 28) >> 2] = -2147483648;\n d = 2147483647;\n break;\n }\n }\n else {\n e = (a + 20) | 0;\n c[e >> 2] = 0;\n c[(a + 24) >> 2] = f;\n d = f;\n g = 0;\n while (1) {\n d = d >>> 1;\n b = (g + 1) | 0;\n if (!d)\n break;\n else\n g = b;\n }\n c[e >> 2] = ((1 << g) | 0) == (f | 0) ? g : b;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n }\n while (0);\n c[(a + 32) >> 2] = d;\n c[a >> 2] = 0;\n return;\n }\n function nc(a) {\n a = a | 0;\n var b = 0;\n b = ((Jc(c[a >> 2] | 0) | 0) & 255) << 24;\n b = (((Jc(c[a >> 2] | 0) | 0) & 255) << 16) | b;\n b = b | (((Jc(c[a >> 2] | 0) | 0) & 255) << 8);\n c[(a + 4) >> 2] = b | ((Jc(c[a >> 2] | 0) | 0) & 255);\n return;\n }\n function oc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0;\n q = V;\n V = (V + 64) | 0;\n o = (q + 44) | 0;\n p = q;\n k = (a + 36) | 0;\n l = (a + 40) | 0;\n a: do\n if ((c[k >> 2] | 0) == (c[l >> 2] | 0)) {\n m = (a + 8) | 0;\n b: do\n if (!(c[m >> 2] | 0))\n n = (a + 20) | 0;\n else {\n f = (a + 20) | 0;\n g = (a + 44) | 0;\n h = (o + 4) | 0;\n i = (a + 44) | 0;\n j = (o + 8) | 0;\n e = 0;\n while (1) {\n Oc(p, ((c[f >> 2] | 0) + 1) | 0, 0, 0);\n b = c[l >> 2] | 0;\n if (b >>> 0 < (c[g >> 2] | 0) >>> 0) {\n Pc(o, k, 1);\n Rc(c[h >> 2] | 0, p);\n c[h >> 2] = (c[h >> 2] | 0) + 44;\n Qc(o);\n }\n else {\n b = (((((b - (c[k >> 2] | 0)) | 0) / 44) | 0) + 1) | 0;\n d = Vc(k) | 0;\n if (d >>> 0 < b >>> 0)\n break;\n r = c[k >> 2] | 0;\n t = ((((c[g >> 2] | 0) - r) | 0) / 44) | 0;\n s = t << 1;\n Sc(o, t >>> 0 < (d >>> 1) >>> 0 ? (s >>> 0 < b >>> 0 ? b : s) : d, ((((c[l >> 2] | 0) - r) | 0) / 44) | 0, i);\n Rc(c[j >> 2] | 0, p);\n c[j >> 2] = (c[j >> 2] | 0) + 44;\n Tc(k, o);\n Uc(o);\n }\n Ic(p);\n e = (e + 1) | 0;\n if (e >>> 0 >= (c[m >> 2] | 0) >>> 0) {\n n = f;\n break b;\n }\n }\n cr(k);\n }\n while (0);\n if (c[n >> 2] | 0) {\n h = (a + 12) | 0;\n i = (a + 68) | 0;\n j = (a + 72) | 0;\n k = (a + 76) | 0;\n l = (o + 4) | 0;\n f = (a + 76) | 0;\n g = (o + 8) | 0;\n e = 1;\n while (1) {\n b = c[h >> 2] | 0;\n Oc(p, 1 << (e >>> 0 > b >>> 0 ? b : e), 0, 0);\n b = c[j >> 2] | 0;\n if (b >>> 0 < (c[k >> 2] | 0) >>> 0) {\n Pc(o, i, 1);\n Rc(c[l >> 2] | 0, p);\n c[l >> 2] = (c[l >> 2] | 0) + 44;\n Qc(o);\n }\n else {\n b = (((((b - (c[i >> 2] | 0)) | 0) / 44) | 0) + 1) | 0;\n d = Vc(i) | 0;\n if (d >>> 0 < b >>> 0)\n break;\n t = c[i >> 2] | 0;\n r = ((((c[k >> 2] | 0) - t) | 0) / 44) | 0;\n s = r << 1;\n Sc(o, r >>> 0 < (d >>> 1) >>> 0 ? (s >>> 0 < b >>> 0 ? b : s) : d, ((((c[j >> 2] | 0) - t) | 0) / 44) | 0, f);\n Rc(c[g >> 2] | 0, p);\n c[g >> 2] = (c[g >> 2] | 0) + 44;\n Tc(i, o);\n Uc(o);\n }\n Ic(p);\n e = (e + 1) | 0;\n if (e >>> 0 > (c[n >> 2] | 0) >>> 0)\n break a;\n }\n cr(i);\n }\n }\n while (0);\n V = q;\n return;\n }\n function pc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n d = ((Yc(a, b, ((c[(a + 36) >> 2] | 0) + ((e * 44) | 0)) | 0) | 0) + d) | 0;\n b = c[(a + 24) >> 2] | 0;\n if ((d | 0) < 0)\n return (d + b) | 0;\n else\n return (d - (d >>> 0 < b >>> 0 ? 0 : b)) | 0;\n return 0;\n }\n function qc(a) {\n a = a | 0;\n Hc((a + 68) | 0);\n Hc((a + 36) | 0);\n return;\n }\n function rc(a) {\n a = a | 0;\n return;\n }\n function sc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function tc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function uc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function vc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 32) | 0;\n f = i;\n g = (a + 8) | 0;\n h = (a + 4) | 0;\n d = c[h >> 2] | 0;\n do\n if ((((c[g >> 2] | 0) - d) >> 3) >>> 0 < b >>> 0) {\n d = (((d - (c[a >> 2] | 0)) >> 3) + b) | 0;\n e = Dc(a) | 0;\n if (e >>> 0 < d >>> 0)\n cr(a);\n else {\n j = c[a >> 2] | 0;\n k = ((c[g >> 2] | 0) - j) | 0;\n g = k >> 2;\n xc(f, (k >> 3) >>> 0 < (e >>> 1) >>> 0 ? (g >>> 0 < d >>> 0 ? d : g) : e, ((c[h >> 2] | 0) - j) >> 3, (a + 8) | 0);\n yc(f, b);\n zc(a, f);\n Ac(f);\n break;\n }\n }\n else\n wc(a, b);\n while (0);\n V = i;\n return;\n }\n function wc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n Bc(e, a, b);\n a = (e + 4) | 0;\n b = c[a >> 2] | 0;\n d = c[(e + 8) >> 2] | 0;\n if ((b | 0) != (d | 0)) {\n d = (d + -8 - b) | 0;\n wr(b | 0, 0, ((d + 8) & -8) | 0) | 0;\n c[a >> 2] = b + (((d >>> 3) + 1) << 3);\n }\n Cc(e);\n V = f;\n return;\n }\n function xc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 536870911) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 3) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 3)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 3);\n return;\n }\n function yc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n e = V;\n V = (V + 16) | 0;\n d = e;\n Ec(d, (a + 8) | 0, b);\n a = c[d >> 2] | 0;\n b = c[(d + 4) >> 2] | 0;\n if ((a | 0) != (b | 0)) {\n b = (b + -8 - a) | 0;\n wr(a | 0, 0, ((b + 8) & -8) | 0) | 0;\n c[d >> 2] = a + (((b >>> 3) + 1) << 3);\n }\n Fc(d);\n V = e;\n return;\n }\n function zc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n e = c[a >> 2] | 0;\n h = (a + 4) | 0;\n g = (b + 4) | 0;\n f = ((c[h >> 2] | 0) - e) | 0;\n d = ((c[g >> 2] | 0) + ((0 - (f >> 3)) << 3)) | 0;\n c[g >> 2] = d;\n if ((f | 0) > 0) {\n ur(d | 0, e | 0, f | 0) | 0;\n e = g;\n d = c[g >> 2] | 0;\n }\n else\n e = g;\n g = c[a >> 2] | 0;\n c[a >> 2] = d;\n c[e >> 2] = g;\n g = (b + 8) | 0;\n f = c[h >> 2] | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = f;\n g = (a + 8) | 0;\n h = (b + 12) | 0;\n a = c[g >> 2] | 0;\n c[g >> 2] = c[h >> 2];\n c[h >> 2] = a;\n c[b >> 2] = c[e >> 2];\n return;\n }\n function Ac(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -8 - b) | 0) >>> 3) << 3);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function Bc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + (d << 3);\n return;\n }\n function Cc(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function Dc(a) {\n a = a | 0;\n return 536870911;\n }\n function Ec(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = (c[b >> 2] | 0) + (d << 3);\n c[(a + 8) >> 2] = b;\n return;\n }\n function Fc(a) {\n a = a | 0;\n c[c[(a + 8) >> 2] >> 2] = c[a >> 2];\n return;\n }\n function Gc(a) {\n a = a | 0;\n c[(a + 12) >> 2] = 1;\n c[(a + 16) >> 2] = 2;\n c[(a + 8) >> 2] = 4096;\n c[(a + 4) >> 2] = 4;\n c[a >> 2] = 4;\n return;\n }\n function Hc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n d = c[a >> 2] | 0;\n if (d | 0) {\n e = (a + 4) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) == (d | 0))\n b = d;\n else {\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n }\n c[e >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - b) | 0);\n }\n return;\n }\n function Ic(a) {\n a = a | 0;\n var b = 0;\n b = c[(a + 8) >> 2] | 0;\n if (b | 0)\n Ua(b);\n b = c[(a + 12) >> 2] | 0;\n if (b | 0)\n Ua(b);\n b = c[(a + 16) >> 2] | 0;\n if (b | 0)\n Ua(b);\n return;\n }\n function Jc(b) {\n b = b | 0;\n var d = 0, e = 0;\n e = (b + 4) | 0;\n d = c[e >> 2] | 0;\n if ((d | 0) >= (c[(b + 8) >> 2] | 0)) {\n Kc(b);\n d = c[e >> 2] | 0;\n }\n b = c[(b + 12) >> 2] | 0;\n c[e >> 2] = d + 1;\n return a[(b + d) >> 0] | 0;\n }\n function Kc(a) {\n a = a | 0;\n var b = 0;\n c[(a + 4) >> 2] = 0;\n $a(c[a >> 2] | 0, c[(a + 12) >> 2] | 0, 1048576);\n b = Lc(c[a >> 2] | 0) | 0;\n c[(a + 8) >> 2] = b;\n if (!b) {\n b = v(8) | 0;\n Mc(b);\n x(b | 0, 2752, 8);\n }\n else\n return;\n }\n function Lc(a) {\n a = a | 0;\n return c[(a + 16) >> 2] | 0;\n }\n function Mc(a) {\n a = a | 0;\n xq(a, 7769);\n c[a >> 2] = 4556;\n return;\n }\n function Nc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Oc(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0;\n c[b >> 2] = d;\n a[(b + 4) >> 0] = e & 1;\n h = (b + 8) | 0;\n c[h >> 2] = 0;\n i = (b + 12) | 0;\n c[i >> 2] = 0;\n g = (b + 16) | 0;\n c[g >> 2] = 0;\n if (((d + -2) | 0) >>> 0 > 2046) {\n b = v(8) | 0;\n xq(b, 7789);\n x(b | 0, 3912, 8);\n }\n c[(b + 32) >> 2] = d + -1;\n if ((d >>> 0 > 16) & (e ^ 1)) {\n e = 3;\n while (1)\n if ((1 << (e + 2)) >>> 0 < d >>> 0)\n e = (e + 1) | 0;\n else\n break;\n d = 1 << e;\n c[(b + 36) >> 2] = d;\n c[(b + 40) >> 2] = 15 - e;\n c[g >> 2] = _a(((d << 2) + 8) | 0) | 0;\n d = c[b >> 2] | 0;\n }\n else {\n c[g >> 2] = 0;\n c[(b + 40) >> 2] = 0;\n c[(b + 36) >> 2] = 0;\n }\n c[h >> 2] = _a(d << 2) | 0;\n g = _a(c[b >> 2] << 2) | 0;\n c[i >> 2] = g;\n c[(b + 20) >> 2] = 0;\n d = c[b >> 2] | 0;\n e = (b + 24) | 0;\n c[e >> 2] = d;\n d = (d | 0) != 0;\n if (!f) {\n if (d) {\n d = 0;\n do {\n c[(g + (d << 2)) >> 2] = 1;\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n }\n else if (d) {\n d = 0;\n do {\n c[(g + (d << 2)) >> 2] = c[(f + (d << 2)) >> 2];\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n Xc(b);\n f = (((c[b >> 2] | 0) + 6) | 0) >>> 1;\n c[e >> 2] = f;\n c[(b + 28) >> 2] = f;\n return;\n }\n function Pc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 44) | 0);\n return;\n }\n function Qc(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function Rc(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n c[b >> 2] = c[d >> 2];\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n e = (d + 8) | 0;\n c[(b + 8) >> 2] = c[e >> 2];\n c[(b + 12) >> 2] = c[(d + 12) >> 2];\n c[(b + 16) >> 2] = c[(d + 16) >> 2];\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n c[(b + 36) >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n c[(e + 8) >> 2] = 0;\n return;\n }\n function Sc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 97612893) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 44) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 44) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 44) | 0);\n return;\n }\n function Tc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n d = (d + -44) | 0;\n Wc((e + -44) | 0, d);\n e = ((c[h >> 2] | 0) + -44) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function Uc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -44) | 0;\n c[e >> 2] = f;\n Ic(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function Vc(a) {\n a = a | 0;\n return 97612893;\n }\n function Wc(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = c[d >> 2] | 0;\n c[b >> 2] = e;\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n h = (b + 36) | 0;\n c[h >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n e = e << 2;\n f = _a(e) | 0;\n c[(b + 8) >> 2] = f;\n g = c[b >> 2] | 0;\n if (g | 0)\n vr(f | 0, c[(d + 8) >> 2] | 0, (g << 2) | 0) | 0;\n e = _a(e) | 0;\n c[(b + 12) >> 2] = e;\n f = c[b >> 2] | 0;\n if (f | 0)\n vr(e | 0, c[(d + 12) >> 2] | 0, (f << 2) | 0) | 0;\n e = c[h >> 2] | 0;\n if (e) {\n f = _a(((e << 2) + 8) | 0) | 0;\n c[(b + 16) >> 2] = f;\n e = ((c[h >> 2] << 2) + 8) | 0;\n if (e | 0)\n vr(f | 0, c[(d + 16) >> 2] | 0, e | 0) | 0;\n }\n else\n c[(b + 16) >> 2] = 0;\n return;\n }\n function Xc(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0;\n r = (b + 24) | 0;\n g = (b + 20) | 0;\n d = ((c[g >> 2] | 0) + (c[r >> 2] | 0)) | 0;\n c[g >> 2] = d;\n if (d >>> 0 > 32768) {\n c[g >> 2] = 0;\n if (!(c[b >> 2] | 0))\n d = 0;\n else {\n f = c[(b + 12) >> 2] | 0;\n e = 0;\n do {\n n = (f + (e << 2)) | 0;\n d = (((c[n >> 2] | 0) + 1) | 0) >>> 1;\n c[n >> 2] = d;\n d = ((c[g >> 2] | 0) + d) | 0;\n c[g >> 2] = d;\n e = (e + 1) | 0;\n } while (e >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n }\n n = (2147483648 / (d >>> 0)) | 0;\n do\n if ((a[(b + 4) >> 0] | 0) == 0 ? ((o = (b + 36) | 0), (c[o >> 2] | 0) != 0) : 0) {\n if (c[b >> 2] | 0) {\n j = c[(b + 8) >> 2] | 0;\n k = c[(b + 12) >> 2] | 0;\n l = (b + 40) | 0;\n m = (b + 16) | 0;\n d = 0;\n h = 0;\n i = 0;\n do {\n e = (q(h, n) | 0) >>> 16;\n c[(j + (i << 2)) >> 2] = e;\n h = ((c[(k + (i << 2)) >> 2] | 0) + h) | 0;\n e = e >>> (c[l >> 2] | 0);\n if (d >>> 0 < e >>> 0) {\n f = (i + -1) | 0;\n g = c[m >> 2] | 0;\n do {\n d = (d + 1) | 0;\n c[(g + (d << 2)) >> 2] = f;\n } while ((d | 0) != (e | 0));\n d = e;\n }\n i = (i + 1) | 0;\n } while (i >>> 0 < (c[b >> 2] | 0) >>> 0);\n e = c[m >> 2] | 0;\n c[e >> 2] = 0;\n if (d >>> 0 > (c[o >> 2] | 0) >>> 0) {\n d = b;\n break;\n }\n }\n else {\n e = c[(b + 16) >> 2] | 0;\n c[e >> 2] = 0;\n d = 0;\n }\n do {\n d = (d + 1) | 0;\n c[(e + (d << 2)) >> 2] = (c[b >> 2] | 0) + -1;\n } while (d >>> 0 <= (c[o >> 2] | 0) >>> 0);\n d = b;\n }\n else\n p = 7;\n while (0);\n if ((p | 0) == 7)\n if (!(c[b >> 2] | 0))\n d = b;\n else {\n f = c[(b + 8) >> 2] | 0;\n g = c[(b + 12) >> 2] | 0;\n d = 0;\n e = 0;\n do {\n c[(f + (d << 2)) >> 2] = (q(e, n) | 0) >>> 16;\n e = ((c[(g + (d << 2)) >> 2] | 0) + e) | 0;\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n d = b;\n }\n p = (((c[r >> 2] | 0) * 5) | 0) >>> 2;\n o = ((c[d >> 2] << 3) + 48) | 0;\n p = p >>> 0 > o >>> 0 ? o : p;\n c[r >> 2] = p;\n c[(b + 28) >> 2] = p;\n return;\n }\n function Yc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n d = Zc(b, d) | 0;\n c[a >> 2] = d;\n do\n if (d) {\n if (d >>> 0 >= 32) {\n d = c[(a + 28) >> 2] | 0;\n break;\n }\n e = c[(a + 12) >> 2] | 0;\n if (d >>> 0 > e >>> 0) {\n e = (d - e) | 0;\n d = Zc(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n e = (d << e) | (_c(b, e) | 0);\n }\n else\n e = Zc(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n d = c[a >> 2] | 0;\n if ((e | 0) < ((1 << (d + -1)) | 0)) {\n d = (e + 1 + (-1 << d)) | 0;\n break;\n }\n else {\n d = (e + 1) | 0;\n break;\n }\n }\n else\n d = $c(b, (a + 48) | 0) | 0;\n while (0);\n return d | 0;\n }\n function Zc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = (a + 8) | 0;\n m = c[n >> 2] | 0;\n f = c[(b + 16) >> 2] | 0;\n if (f) {\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n l = m >>> 15;\n c[n >> 2] = l;\n j = ((d >>> 0) / (l >>> 0)) | 0;\n i = j >>> (c[(b + 40) >> 2] | 0);\n g = c[(f + (i << 2)) >> 2] | 0;\n i = ((c[(f + ((i + 1) << 2)) >> 2] | 0) + 1) | 0;\n h = (g + 1) | 0;\n k = c[(b + 8) >> 2] | 0;\n if (i >>> 0 > h >>> 0) {\n f = g;\n g = i;\n do {\n h = ((g + f) | 0) >>> 1;\n i = (c[(k + (h << 2)) >> 2] | 0) >>> 0 > j >>> 0;\n f = i ? f : h;\n g = i ? h : g;\n h = (f + 1) | 0;\n } while (g >>> 0 > h >>> 0);\n g = f;\n }\n f = q(c[(k + (g << 2)) >> 2] | 0, l) | 0;\n if ((g | 0) == (c[(b + 32) >> 2] | 0))\n h = m;\n else\n h = q(c[(k + (h << 2)) >> 2] | 0, l) | 0;\n }\n else {\n k = m >>> 15;\n c[n >> 2] = k;\n i = c[b >> 2] | 0;\n l = c[(b + 8) >> 2] | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n j = i >>> 1;\n f = 0;\n h = m;\n g = 0;\n do {\n o = q(c[(l + (j << 2)) >> 2] | 0, k) | 0;\n m = o >>> 0 > d >>> 0;\n h = m ? o : h;\n f = m ? f : o;\n g = m ? g : j;\n i = m ? j : i;\n j = ((g + i) | 0) >>> 1;\n } while ((j | 0) != (g | 0));\n }\n c[e >> 2] = d - f;\n o = (h - f) | 0;\n c[n >> 2] = o;\n if (o >>> 0 < 16777216)\n ad(a);\n n = ((c[(b + 12) >> 2] | 0) + (g << 2)) | 0;\n c[n >> 2] = (c[n >> 2] | 0) + 1;\n n = (b + 28) | 0;\n o = ((c[n >> 2] | 0) + -1) | 0;\n c[n >> 2] = o;\n if (!o)\n Xc(b);\n return g | 0;\n }\n function _c(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n if (b >>> 0 > 19) {\n d = (bd(a) | 0) & 65535;\n return ((_c(a, (b + -16) | 0) | 0) << 16) | d | 0;\n }\n e = (a + 4) | 0;\n f = c[e >> 2] | 0;\n g = (a + 8) | 0;\n d = (c[g >> 2] | 0) >>> b;\n c[g >> 2] = d;\n b = ((f >>> 0) / (d >>> 0)) | 0;\n c[e >> 2] = f - (q(b, d) | 0);\n if (d >>> 0 < 16777216)\n ad(a);\n return b | 0;\n }\n function $c(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n e = (a + 8) | 0;\n f = c[e >> 2] | 0;\n d = q(f >>> 13, c[(b + 8) >> 2] | 0) | 0;\n g = (a + 4) | 0;\n h = c[g >> 2] | 0;\n i = h >>> 0 >= d >>> 0;\n if (i) {\n c[g >> 2] = h - d;\n d = (f - d) | 0;\n c[e >> 2] = d;\n }\n else {\n c[e >> 2] = d;\n h = (b + 12) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n }\n if (d >>> 0 < 16777216)\n ad(a);\n h = (b + 4) | 0;\n a = ((c[h >> 2] | 0) + -1) | 0;\n c[h >> 2] = a;\n if (!a)\n cd(b);\n return (i & 1) | 0;\n }\n function ad(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = (a + 4) | 0;\n d = (a + 8) | 0;\n e = c[b >> 2] | 0;\n do {\n e = (e << 8) | ((Jc(c[a >> 2] | 0) | 0) & 255);\n c[b >> 2] = e;\n f = c[d >> 2] << 8;\n c[d >> 2] = f;\n } while (f >>> 0 < 16777216);\n return;\n }\n function bd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[d >> 2] | 0;\n b = (a + 8) | 0;\n e = (c[b >> 2] | 0) >>> 16;\n c[b >> 2] = e;\n b = ((f >>> 0) / (e >>> 0)) | 0;\n c[d >> 2] = f - (q(b, e) | 0);\n ad(a);\n return (b & 65535) | 0;\n }\n function cd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0;\n f = c[a >> 2] | 0;\n d = (a + 16) | 0;\n b = ((c[d >> 2] | 0) + f) | 0;\n c[d >> 2] = b;\n if (b >>> 0 > 8192) {\n e = ((b + 1) | 0) >>> 1;\n c[d >> 2] = e;\n g = (a + 12) | 0;\n b = (((c[g >> 2] | 0) + 1) | 0) >>> 1;\n c[g >> 2] = b;\n if ((b | 0) == (e | 0)) {\n b = (e + 1) | 0;\n c[d >> 2] = b;\n d = b;\n b = e;\n }\n else\n d = e;\n }\n else {\n d = b;\n b = c[(a + 12) >> 2] | 0;\n }\n c[(a + 8) >> 2] = (q(b, (2147483648 / (d >>> 0)) | 0) | 0) >>> 18;\n g = (f * 5) | 0;\n g = g >>> 0 > 259 ? 64 : g >>> 2;\n c[a >> 2] = g;\n c[(a + 4) >> 2] = g;\n return;\n }\n function dd(a, b) {\n a = a | 0;\n b = b | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n m = V;\n V = (V + 32) | 0;\n h = (m + 16) | 0;\n i = (m + 8) | 0;\n j = m;\n k = (a + 336) | 0;\n f = k;\n g = (a + 259) | 0;\n if (!((c[(f + 4) >> 2] | 0) == 0\n ? (c[f >> 2] | 0) ==\n (d[g >> 0] |\n (d[(g + 1) >> 0] << 8) |\n (d[(g + 2) >> 0] << 16) |\n (d[(g + 3) >> 0] << 24) |\n 0)\n : 0)) {\n f = (a + 320) | 0;\n e = c[f >> 2] | 0;\n g = e;\n if (!((e | 0) != 0 ? (c[(a + 312) >> 2] | 0) != 0 : 0)) {\n e = g;\n l = 5;\n }\n }\n else {\n f = (a + 320) | 0;\n e = c[(a + 320) >> 2] | 0;\n l = 5;\n }\n if ((l | 0) == 5) {\n l = (a + 320) | 0;\n c[h >> 2] = e;\n c[l >> 2] = 0;\n e = (a + 324) | 0;\n c[(h + 4) >> 2] = c[e >> 2];\n c[e >> 2] = 0;\n Na(h);\n g = (a + 312) | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = 0;\n n = (a + 316) | 0;\n c[(h + 4) >> 2] = c[n >> 2];\n c[n >> 2] = 0;\n Oa(h);\n o = eq(12) | 0;\n lc(o, (a + 4) | 0);\n c[j >> 2] = 0;\n c[h >> 2] = c[j >> 2];\n fd(i, o, h);\n o = c[i >> 2] | 0;\n c[i >> 2] = c[g >> 2];\n c[g >> 2] = o;\n o = (i + 4) | 0;\n j = c[o >> 2] | 0;\n c[o >> 2] = c[n >> 2];\n c[n >> 2] = j;\n Oa(i);\n ed(i, c[g >> 2] | 0, (a + 300) | 0);\n g = c[i >> 2] | 0;\n n = (i + 4) | 0;\n j = c[n >> 2] | 0;\n c[i >> 2] = 0;\n c[n >> 2] = 0;\n c[h >> 2] = c[l >> 2];\n c[l >> 2] = g;\n c[(h + 4) >> 2] = c[e >> 2];\n c[e >> 2] = j;\n Na(h);\n Na(i);\n e = (a + 328) | 0;\n j = e;\n j = lr(c[j >> 2] | 0, c[(j + 4) >> 2] | 0, 1, 0) | 0;\n l = u() | 0;\n c[e >> 2] = j;\n c[(e + 4) >> 2] = l;\n e = k;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = c[f >> 2] | 0;\n }\n $[c[c[e >> 2] >> 2] & 63](e, b) | 0;\n l = k;\n l = lr(c[l >> 2] | 0, c[(l + 4) >> 2] | 0, 1, 0) | 0;\n n = u() | 0;\n o = k;\n c[o >> 2] = l;\n c[(o + 4) >> 2] = n;\n V = m;\n return;\n }\n function ed(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n h = V;\n V = (V + 64) | 0;\n e = (h + 56) | 0;\n f = h;\n g = ld(d) | 0;\n if ((g | 0) == -1) {\n h = v(8) | 0;\n md(h);\n x(h | 0, 2784, 8);\n }\n d = nd(d) | 0;\n a: do\n if (!d)\n switch (g | 0) {\n case 0: {\n g = eq(4788) | 0;\n xd(g);\n wd(a, b, g);\n break a;\n }\n case 1: {\n g = eq(5116) | 0;\n zd(g);\n yd(a, b, g);\n break a;\n }\n case 2: {\n g = eq(5104) | 0;\n Bd(g);\n Ad(a, b, g);\n break a;\n }\n case 3: {\n g = eq(5432) | 0;\n Dd(g);\n Cd(a, b, g);\n break a;\n }\n default: {\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n break a;\n }\n }\n else {\n od(e, b);\n pd(c[e >> 2] | 0);\n if ((g | 2 | 0) == 3)\n qd(c[e >> 2] | 0);\n if ((g | 1 | 0) == 3)\n rd(c[e >> 2] | 0);\n g = c[e >> 2] | 0;\n td(f, d);\n sd(g, f);\n ud(f);\n c[a >> 2] = c[e >> 2];\n g = (e + 4) | 0;\n c[(a + 4) >> 2] = c[g >> 2];\n c[e >> 2] = 0;\n c[g >> 2] = 0;\n vd(e);\n }\n while (0);\n V = h;\n return;\n }\n function fd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4576;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n gd(a, e);\n V = d;\n return;\n }\n function gd(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function hd(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function id(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n rc(a);\n jp(a);\n }\n return;\n }\n function jd(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 7983 ? (a + 12) | 0 : 0) | 0;\n }\n function kd(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ld(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = ((c[(a + 4) >> 2] | 0) - (c[a >> 2] | 0)) | 0;\n a: do\n if (((b | 0) != 0\n ? ((d = ((((b | 0) / 12) | 0) + ((((nd(a) | 0) != 0) << 31) >> 31)) | 0),\n (d | 0) != 0)\n : 0)\n ? ((b = c[a >> 2] | 0), !(Ed(b, Fd() | 0) | 0))\n : 0) {\n switch (d | 0) {\n case 1: {\n a = 0;\n break a;\n }\n case 2: {\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Hd() | 0) | 0) {\n a = 1;\n break a;\n }\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Id() | 0) | 0) {\n a = 2;\n break a;\n }\n break;\n }\n case 3: {\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Hd() | 0) | 0\n ? ((d = ((c[a >> 2] | 0) + 24) | 0), Gd(d, Id() | 0) | 0)\n : 0) {\n a = 3;\n break a;\n }\n break;\n }\n default: {\n }\n }\n a = -1;\n }\n else\n a = -1;\n while (0);\n return a | 0;\n }\n function md(a) {\n a = a | 0;\n xq(a, 8131);\n c[a >> 2] = 4604;\n return;\n }\n function nd(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[(a + 4) >> 2] | 0;\n if (((b | 0) != (c[a >> 2] | 0) ? ((d = b), (c[(d + -12) >> 2] | 0) == 0) : 0)\n ? (c[(d + -4) >> 2] | 0) == 2\n : 0)\n a = c[(d + -8) >> 2] | 0;\n else\n a = 0;\n return a | 0;\n }\n function od(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 4) | 0;\n g = d;\n f = eq(24) | 0;\n Kd(f, b);\n c[g >> 2] = 0;\n c[e >> 2] = c[g >> 2];\n Ld(a, f, e);\n V = d;\n return;\n }\n function pd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(4792) | 0;\n Zd(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n _d(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function qd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(336) | 0;\n af(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n bf(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function rd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(324) | 0;\n Af(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Bf(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function sd(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n h = (j + 12) | 0;\n i = j;\n e = (j + 8) | 0;\n g = eq(64) | 0;\n Qf(g, c[(a + 4) >> 2] | 0, b);\n f = (a + 8) | 0;\n c[e >> 2] = 0;\n c[h >> 2] = c[e >> 2];\n Rf(i, g, h);\n g = (a + 12) | 0;\n b = c[g >> 2] | 0;\n e = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[e >> 2] | 0) >>> 0) {\n b = (((b - (c[f >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(f) | 0;\n if (d >>> 0 < b >>> 0)\n cr(f);\n else {\n k = c[f >> 2] | 0;\n l = ((c[e >> 2] | 0) - k) | 0;\n e = l >> 2;\n be(h, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (e >>> 0 < b >>> 0 ? b : e) : d, ((c[g >> 2] | 0) - k) >> 3, (a + 16) | 0);\n a = (h + 8) | 0;\n g = c[a >> 2] | 0;\n c[g >> 2] = c[i >> 2];\n e = (i + 4) | 0;\n c[(g + 4) >> 2] = c[e >> 2];\n c[i >> 2] = 0;\n c[e >> 2] = 0;\n c[a >> 2] = g + 8;\n ce(f, h);\n de(h);\n break;\n }\n }\n else {\n $d(h, f, 1);\n l = (h + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[i >> 2];\n a = (i + 4) | 0;\n c[(k + 4) >> 2] = c[a >> 2];\n c[i >> 2] = 0;\n c[a >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(h);\n }\n while (0);\n Sd(i);\n V = j;\n return;\n }\n function td(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = V;\n V = (V + 48) | 0;\n f = e;\n c[b >> 2] = d;\n a[(b + 4) >> 0] = 0;\n Jg((b + 8) | 0, d);\n Jg((b + 20) | 0, d);\n Oc(f, 256, 0, 0);\n Kg((b + 32) | 0, d, f);\n Ic(f);\n V = e;\n return;\n }\n function ud(a) {\n a = a | 0;\n Ng((a + 32) | 0);\n _f((a + 20) | 0);\n _f((a + 8) | 0);\n return;\n }\n function vd(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function wd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n Og(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n Pg(a, g, f);\n V = e;\n return;\n }\n function xd(a) {\n a = a | 0;\n ge(a);\n $g((a + 4784) | 0);\n return;\n }\n function yd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n ah(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n bh(a, g, f);\n V = e;\n return;\n }\n function zd(a) {\n a = a | 0;\n ge(a);\n nh((a + 4784) | 0);\n return;\n }\n function Ad(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n oh(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n ph(a, g, f);\n V = e;\n return;\n }\n function Bd(a) {\n a = a | 0;\n ge(a);\n Bh((a + 4784) | 0);\n return;\n }\n function Cd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n Ch(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n Dh(a, g, f);\n V = e;\n return;\n }\n function Dd(a) {\n a = a | 0;\n ge(a);\n Ph((a + 4784) | 0);\n return;\n }\n function Ed(a, b) {\n a = a | 0;\n b = b | 0;\n return ((Gd(a, b) | 0) ^ 1) | 0;\n }\n function Fd() {\n if ((a[21456] | 0) == 0 ? Tp(21456) | 0 : 0) {\n _b(21536, 6, 20, 2);\n $p(21456);\n }\n return 21536;\n }\n function Gd(a, b) {\n a = a | 0;\n b = b | 0;\n if ((c[a >> 2] | 0) == (c[b >> 2] | 0) ? (c[(a + 8) >> 2] | 0) == (c[(b + 8) >> 2] | 0) : 0)\n a = (c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0);\n else\n a = 0;\n return a | 0;\n }\n function Hd() {\n if ((a[21464] | 0) == 0 ? Tp(21464) | 0 : 0) {\n _b(21548, 7, 8, 2);\n $p(21464);\n }\n return 21548;\n }\n function Id() {\n if ((a[21472] | 0) == 0 ? Tp(21472) | 0 : 0) {\n _b(21560, 8, 6, 2);\n $p(21472);\n }\n return 21560;\n }\n function Jd(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Kd(b, d) {\n b = b | 0;\n d = d | 0;\n Md(b);\n c[b >> 2] = 4624;\n c[(b + 4) >> 2] = d;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function Ld(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4664;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Ud(a, e);\n V = d;\n return;\n }\n function Md(a) {\n a = a | 0;\n c[a >> 2] = 4644;\n return;\n }\n function Nd(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n h = k;\n e = c[(b + 8) >> 2] | 0;\n i = c[(b + 12) >> 2] | 0;\n if ((e | 0) != (i | 0)) {\n j = (h + 4) | 0;\n do {\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n g = c[(e + 4) >> 2] | 0;\n c[j >> 2] = g;\n if (g | 0) {\n g = (g + 4) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n }\n d = $[c[((c[f >> 2] | 0) + 12) >> 2] & 63](f, d) | 0;\n Sd(h);\n e = (e + 8) | 0;\n } while ((e | 0) != (i | 0));\n }\n e = (b + 20) | 0;\n if (a[e >> 0] | 0) {\n a[e >> 0] = 0;\n nc(c[(b + 4) >> 2] | 0);\n }\n V = k;\n return d | 0;\n }\n function Od(a) {\n a = a | 0;\n c[a >> 2] = 4624;\n Td((a + 8) | 0);\n Qd(a);\n return;\n }\n function Pd(a) {\n a = a | 0;\n Od(a);\n jp(a);\n return;\n }\n function Qd(a) {\n a = a | 0;\n return;\n }\n function Rd(a) {\n a = a | 0;\n U();\n }\n function Sd(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Td(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n d = c[a >> 2] | 0;\n if (d | 0) {\n e = (a + 4) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) == (d | 0))\n b = d;\n else {\n do {\n b = (b + -8) | 0;\n Sd(b);\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n }\n c[e >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - b) | 0);\n }\n return;\n }\n function Ud(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Vd(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Wd(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Xd(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 8546 ? (a + 12) | 0 : 0) | 0;\n }\n function Yd(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Zd(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4692;\n c[(a + 4) >> 2] = b;\n ge((a + 8) | 0);\n return;\n }\n function _d(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4740;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function $d(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + (d << 3);\n return;\n }\n function ae(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function be(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 536870911) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 3) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 3)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 3);\n return;\n }\n function ce(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n g = d;\n d = (d + -8) | 0;\n c[(e + -8) >> 2] = c[d >> 2];\n g = (g + -4) | 0;\n c[(e + -4) >> 2] = c[g >> 2];\n c[d >> 2] = 0;\n c[g >> 2] = 0;\n e = ((c[h >> 2] | 0) + -8) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function de(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -8) | 0;\n c[e >> 2] = f;\n Sd(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ee(a) {\n a = a | 0;\n return 536870911;\n }\n function fe(a) {\n a = a | 0;\n c[a >> 2] = 4716;\n return;\n }\n function ge(b) {\n b = b | 0;\n oe(b);\n pe((b + 3980) | 0);\n qe((b + 4380) | 0);\n a[(b + 4780) >> 0] = 0;\n a[(b + 4781) >> 0] = 0;\n return;\n }\n function he(a) {\n a = a | 0;\n c[a >> 2] = 4692;\n ze((a + 8) | 0);\n le(a);\n return;\n }\n function ie(a) {\n a = a | 0;\n he(a);\n jp(a);\n return;\n }\n function je(a, b) {\n a = a | 0;\n b = b | 0;\n return b | 0;\n }\n function ke(a, b) {\n a = a | 0;\n b = b | 0;\n return Be((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function le(a) {\n a = a | 0;\n return;\n }\n function me(a) {\n a = a | 0;\n le(a);\n jp(a);\n return;\n }\n function ne(a, b) {\n a = a | 0;\n b = b | 0;\n return b | 0;\n }\n function oe(d) {\n d = d | 0;\n var e = 0, f = 0;\n te(d);\n ue((d + 52) | 0);\n ue((d + 436) | 0);\n Oc((d + 852) | 0, 64, 0, 0);\n a[(d + 3976) >> 0] = 0;\n e = (d + 20) | 0;\n f = (e + 32) | 0;\n do {\n b[e >> 1] = 0;\n e = (e + 2) | 0;\n } while ((e | 0) < (f | 0));\n e = eq(44) | 0;\n Oc(e, 256, 0, 0);\n c[(d + 896) >> 2] = e;\n e = eq(44) | 0;\n Oc(e, 256, 0, 0);\n c[(d + 900) >> 2] = e;\n e = (d + 820) | 0;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n c[(e + 8) >> 2] = 0;\n c[(e + 12) >> 2] = 0;\n c[(e + 16) >> 2] = 0;\n c[(e + 20) >> 2] = 0;\n c[(e + 24) >> 2] = 0;\n c[(e + 28) >> 2] = 0;\n e = 0;\n do {\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 904 + (e << 2)) >> 2] = f;\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 1928 + (e << 2)) >> 2] = f;\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 2952 + (e << 2)) >> 2] = f;\n e = (e + 1) | 0;\n } while (e >>> 0 < 256);\n return;\n }\n function pe(a) {\n a = a | 0;\n xe(a, 16, 4, 8, 0);\n xe((a + 80) | 0, 16, 1, 8, 0);\n xe((a + 160) | 0, 32, 2, 8, 0);\n xe((a + 240) | 0, 32, 22, 8, 0);\n xe((a + 320) | 0, 32, 20, 8, 0);\n return;\n }\n function qe(a) {\n a = a | 0;\n mc(a, 16, 4, 8, 0);\n mc((a + 80) | 0, 16, 1, 8, 0);\n mc((a + 160) | 0, 32, 2, 8, 0);\n mc((a + 240) | 0, 32, 22, 8, 0);\n mc((a + 320) | 0, 32, 20, 8, 0);\n return;\n }\n function re(a) {\n a = a | 0;\n ye((a + 320) | 0);\n ye((a + 240) | 0);\n ye((a + 160) | 0);\n ye((a + 80) | 0);\n ye(a);\n return;\n }\n function se(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[(a + 896) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 900) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n d = 0;\n do {\n b = c[(a + 904 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 1928 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 2952 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n d = (d + 1) | 0;\n } while ((d | 0) != 256);\n Ic((a + 852) | 0);\n return;\n }\n function te(b) {\n b = b | 0;\n var c = 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n c = (b + 4) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 12) | 0;\n c = b;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function ue(a) {\n a = a | 0;\n var b = 0;\n b = (a + 384) | 0;\n do {\n ve(a);\n a = (a + 24) | 0;\n } while ((a | 0) != (b | 0));\n return;\n }\n function ve(a) {\n a = a | 0;\n we(a);\n return;\n }\n function we(b) {\n b = b | 0;\n c[b >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function xe(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n c[(a + 12) >> 2] = e;\n c[(a + 16) >> 2] = f;\n c[(a + 36) >> 2] = 0;\n c[(a + 40) >> 2] = 0;\n c[(a + 44) >> 2] = 0;\n Gc((a + 48) | 0);\n c[(a + 68) >> 2] = 0;\n c[(a + 72) >> 2] = 0;\n c[(a + 76) >> 2] = 0;\n do\n if (!f) {\n d = (a + 20) | 0;\n if (((b + -1) | 0) >>> 0 < 31) {\n c[d >> 2] = b;\n f = 1 << b;\n c[(a + 24) >> 2] = f;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n break;\n }\n else {\n c[d >> 2] = 32;\n c[(a + 24) >> 2] = 0;\n c[(a + 28) >> 2] = -2147483648;\n d = 2147483647;\n break;\n }\n }\n else {\n e = (a + 20) | 0;\n c[e >> 2] = 0;\n c[(a + 24) >> 2] = f;\n d = f;\n g = 0;\n while (1) {\n d = d >>> 1;\n b = (g + 1) | 0;\n if (!d)\n break;\n else\n g = b;\n }\n c[e >> 2] = ((1 << g) | 0) == (f | 0) ? g : b;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n }\n while (0);\n c[(a + 32) >> 2] = d;\n c[a >> 2] = 0;\n return;\n }\n function ye(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0;\n g = (a + 36) | 0;\n d = c[g >> 2] | 0;\n e = (a + 40) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (d | 0));\n c[e >> 2] = d;\n e = (a + 68) | 0;\n f = c[e >> 2] | 0;\n d = (a + 72) | 0;\n b = c[d >> 2] | 0;\n if ((b | 0) != (f | 0))\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (f | 0));\n c[d >> 2] = f;\n Hc(e);\n Hc(g);\n return;\n }\n function ze(a) {\n a = a | 0;\n Ae((a + 4380) | 0);\n re((a + 3980) | 0);\n se(a);\n return;\n }\n function Ae(a) {\n a = a | 0;\n qc((a + 320) | 0);\n qc((a + 240) | 0);\n qc((a + 160) | 0);\n qc((a + 80) | 0);\n qc(a);\n return;\n }\n function Be(f, g, h) {\n f = f | 0;\n g = g | 0;\n h = h | 0;\n var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 32) | 0;\n o = p;\n i = (f + 4781) | 0;\n if (!(a[i >> 0] | 0)) {\n Ce((f + 4380) | 0);\n a[i >> 0] = 1;\n }\n i = (f + 3976) | 0;\n if (!(a[i >> 0] | 0)) {\n a[i >> 0] = 1;\n Ee(De(g) | 0, h, 20);\n Fe(o, h);\n k = f;\n i = o;\n j = (k + 20) | 0;\n do {\n a[k >> 0] = a[i >> 0] | 0;\n k = (k + 1) | 0;\n i = (i + 1) | 0;\n } while ((k | 0) < (j | 0));\n b[(f + 12) >> 1] = 0;\n }\n else {\n m = Zc(g, (f + 852) | 0) | 0;\n if (m) {\n if ((m & 32) | 0)\n He((Zc(g, c[(f + 904 + (((Ge(f) | 0) & 255) << 2)) >> 2] | 0) | 0) & 255, f);\n n = (f + 14) | 0;\n k = a[n >> 0] | 0;\n i = k & 7;\n k = ((k & 255) >>> 3) & 7;\n j = d[(16 + (k << 3) + i) >> 0] | 0;\n i = d[(80 + (k << 3) + i) >> 0] | 0;\n if (!(m & 16))\n l = b[(f + 20 + (j << 1)) >> 1] | 0;\n else {\n q = (f + 20 + (j << 1)) | 0;\n l = (pc((f + 4380) | 0, g, e[q >> 1] | 0, j >>> 0 < 3 ? j : 3) | 0) & 65535;\n b[q >> 1] = l;\n }\n b[(f + 12) >> 1] = l;\n if ((m & 8) | 0) {\n q = (f + 15) | 0;\n a[q >> 0] = Zc(g, c[(f + 1928 + (d[q >> 0] << 2)) >> 2] | 0) | 0;\n }\n if ((m & 4) | 0) {\n n = Zc(g, c[(f + 896 + ((((d[n >> 0] | 0) >>> 6) & 1) << 2)) >> 2] | 0) | 0;\n q = (f + 16) | 0;\n a[q >> 0] = Ie((n + (a[q >> 0] | 0)) | 0) | 0;\n }\n if ((m & 2) | 0) {\n q = (f + 17) | 0;\n a[q >> 0] = Zc(g, c[(f + 2952 + (d[q >> 0] << 2)) >> 2] | 0) | 0;\n }\n if (m & 1) {\n q = (f + 18) | 0;\n b[q >> 1] = pc((f + 4460) | 0, g, e[q >> 1] | 0, 0) | 0;\n }\n }\n else {\n q = a[(f + 14) >> 0] | 0;\n i = q & 7;\n q = ((q & 255) >>> 3) & 7;\n k = q;\n j = d[(16 + (q << 3) + i) >> 0] | 0;\n i = d[(80 + (q << 3) + i) >> 0] | 0;\n }\n l = (f + 52 + ((j * 24) | 0)) | 0;\n m = (f + 4540) | 0;\n n = ((k | 0) == 1) & 1;\n k = pc(m, g, Je(l) | 0, n) | 0;\n c[o >> 2] = k;\n c[f >> 2] = (c[f >> 2] | 0) + k;\n Ke(l, o);\n l = (f + 436 + ((j * 24) | 0)) | 0;\n k = Je(l) | 0;\n j = Le(m) | 0;\n q = (f + 4620) | 0;\n j = pc(q, g, k, (j >>> 0 < 20 ? j & -2 : 20) | n) | 0;\n c[o >> 2] = j;\n k = (f + 4) | 0;\n c[k >> 2] = (c[k >> 2] | 0) + j;\n Ke(l, o);\n o = Le(m) | 0;\n o = ((Le(q) | 0) + o) | 0;\n q = (f + 820 + (i << 2)) | 0;\n o =\n pc((f + 4700) | 0, g, c[q >> 2] | 0, (o >>> 0 < 36 ? (o >>> 1) & 2147483646 : 18) | n) |\n 0;\n c[(f + 8) >> 2] = o;\n c[q >> 2] = o;\n Me(f, h);\n }\n V = p;\n return (h + 20) | 0;\n }\n function Ce(a) {\n a = a | 0;\n oc(a);\n oc((a + 80) | 0);\n oc((a + 160) | 0);\n oc((a + 240) | 0);\n oc((a + 320) | 0);\n return;\n }\n function De(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Ee(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = (b + 4) | 0;\n f = c[k >> 2] | 0;\n j = ((c[(b + 8) >> 2] | 0) - f) | 0;\n j = j >>> 0 > e >>> 0 ? e : j;\n i = (b + 12) | 0;\n g = ((c[i >> 2] | 0) + f) | 0;\n h = (g + j) | 0;\n if (j) {\n f = g;\n g = d;\n while (1) {\n a[g >> 0] = a[f >> 0] | 0;\n f = (f + 1) | 0;\n if ((f | 0) == (h | 0))\n break;\n else\n g = (g + 1) | 0;\n }\n f = c[k >> 2] | 0;\n }\n c[k >> 2] = f + j;\n e = (e - j) | 0;\n if (e | 0) {\n Kc(b);\n g = ((c[i >> 2] | 0) + (c[k >> 2] | 0)) | 0;\n h = (g + e) | 0;\n f = (d + j) | 0;\n while (1) {\n a[f >> 0] = a[g >> 0] | 0;\n g = (g + 1) | 0;\n if ((g | 0) == (h | 0))\n break;\n else\n f = (f + 1) | 0;\n }\n c[k >> 2] = (c[k >> 2] | 0) + e;\n }\n return;\n }\n function Fe(d, e) {\n d = d | 0;\n e = e | 0;\n te(d);\n c[d >> 2] = Ne(e) | 0;\n c[(d + 4) >> 2] = Ne((e + 4) | 0) | 0;\n c[(d + 8) >> 2] = Ne((e + 8) | 0) | 0;\n b[(d + 12) >> 1] = Oe((e + 12) | 0) | 0;\n He(Pe((e + 14) | 0) | 0, d);\n a[(d + 15) >> 0] = Pe((e + 15) | 0) | 0;\n a[(d + 16) >> 0] = Qe((e + 16) | 0) | 0;\n a[(d + 17) >> 0] = Qe((e + 17) | 0) | 0;\n b[(d + 18) >> 1] = Oe((e + 18) | 0) | 0;\n return;\n }\n function Ge(b) {\n b = b | 0;\n return a[(b + 14) >> 0] | 0;\n }\n function He(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 14) >> 0] = b;\n return;\n }\n function Ie(a) {\n a = a | 0;\n return (a & 255) | 0;\n }\n function Je(a) {\n a = a | 0;\n return c[(a + 8) >> 2] | 0;\n }\n function Ke(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = (b + 20) | 0;\n do\n if (!(a[k >> 0] | 0)) {\n j = (b + 8) | 0;\n e = c[j >> 2] | 0;\n f = c[d >> 2] | 0;\n g = (b + 4) | 0;\n h = c[g >> 2] | 0;\n if ((e | 0) >= (f | 0)) {\n if ((h | 0) < (f | 0)) {\n c[b >> 2] = h;\n c[g >> 2] = c[d >> 2];\n }\n else\n c[b >> 2] = f;\n a[k >> 0] = 1;\n break;\n }\n c[b >> 2] = h;\n c[g >> 2] = e;\n g = (b + 16) | 0;\n h = c[g >> 2] | 0;\n i = c[d >> 2] | 0;\n e = (b + 12) | 0;\n f = c[e >> 2] | 0;\n if ((h | 0) < (i | 0)) {\n c[j >> 2] = f;\n c[e >> 2] = h;\n c[g >> 2] = c[d >> 2];\n break;\n }\n if ((f | 0) < (i | 0)) {\n c[j >> 2] = f;\n c[e >> 2] = c[d >> 2];\n break;\n }\n else {\n c[j >> 2] = i;\n break;\n }\n }\n else {\n g = c[d >> 2] | 0;\n i = (b + 8) | 0;\n e = c[i >> 2] | 0;\n h = (b + 12) | 0;\n f = c[h >> 2] | 0;\n if ((g | 0) >= (e | 0)) {\n e = (b + 16) | 0;\n if ((g | 0) < (f | 0)) {\n c[e >> 2] = f;\n c[h >> 2] = c[d >> 2];\n }\n else\n c[e >> 2] = g;\n a[k >> 0] = 0;\n break;\n }\n c[(b + 16) >> 2] = f;\n c[h >> 2] = e;\n e = c[d >> 2] | 0;\n f = c[b >> 2] | 0;\n g = (b + 4) | 0;\n h = c[g >> 2] | 0;\n if ((e | 0) < (f | 0)) {\n c[i >> 2] = h;\n c[g >> 2] = f;\n c[b >> 2] = c[d >> 2];\n break;\n }\n if ((e | 0) < (h | 0)) {\n c[i >> 2] = h;\n c[g >> 2] = c[d >> 2];\n break;\n }\n else {\n c[i >> 2] = e;\n break;\n }\n }\n while (0);\n return;\n }\n function Le(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Me(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0;\n Se(d[b >> 0] | (d[(b + 1) >> 0] << 8) | (d[(b + 2) >> 0] << 16) | (d[(b + 3) >> 0] << 24), c);\n e = (b + 4) | 0;\n Se(d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24), (c + 4) | 0);\n e = (b + 8) | 0;\n Se(d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24), (c + 8) | 0);\n e = (b + 12) | 0;\n Te(d[e >> 0] | (d[(e + 1) >> 0] << 8), (c + 12) | 0);\n Ue(Ge(b) | 0, (c + 14) | 0);\n Ue(a[(b + 15) >> 0] | 0, (c + 15) | 0);\n Ve(a[(b + 16) >> 0] | 0, (c + 16) | 0);\n Ve(a[(b + 17) >> 0] | 0, (c + 17) | 0);\n b = (b + 18) | 0;\n Te(d[b >> 0] | (d[(b + 1) >> 0] << 8), (c + 18) | 0);\n return;\n }\n function Ne(a) {\n a = a | 0;\n return Re(a) | 0;\n }\n function Oe(b) {\n b = b | 0;\n return (((a[(b + 1) >> 0] << 8) | d[b >> 0]) & 65535) | 0;\n }\n function Pe(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function Qe(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function Re(a) {\n a = a | 0;\n return (((d[(a + 1) >> 0] | 0) << 8) |\n (d[a >> 0] | 0) |\n ((d[(a + 2) >> 0] | 0) << 16) |\n ((d[(a + 3) >> 0] | 0) << 24) |\n 0);\n }\n function Se(a, b) {\n a = a | 0;\n b = b | 0;\n We(a, b);\n return;\n }\n function Te(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 1) >> 0] = (b & 65535) >>> 8;\n a[c >> 0] = b;\n return;\n }\n function Ue(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function Ve(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function We(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 3) >> 0] = b >>> 24;\n a[(c + 2) >> 0] = b >>> 16;\n a[(c + 1) >> 0] = b >>> 8;\n a[c >> 0] = b;\n return;\n }\n function Xe(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Ye(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ze(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function _e(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 9202 ? (a + 12) | 0 : 0) | 0;\n }\n function $e(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function af(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4768;\n c[(a + 4) >> 2] = b;\n cf((a + 8) | 0);\n return;\n }\n function bf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4792;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function cf(b) {\n b = b | 0;\n gf(b);\n hf((b + 164) | 0);\n jf((b + 244) | 0);\n a[(b + 324) >> 0] = 0;\n a[(b + 325) >> 0] = 0;\n return;\n }\n function df(a) {\n a = a | 0;\n c[a >> 2] = 4768;\n of((a + 8) | 0);\n le(a);\n return;\n }\n function ef(a) {\n a = a | 0;\n df(a);\n jp(a);\n return;\n }\n function ff(a, b) {\n a = a | 0;\n b = b | 0;\n return qf((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function gf(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n a[b >> 0] = 0;\n Oc((b + 4) | 0, 516, 0, 0);\n Oc((b + 48) | 0, 6, 0, 0);\n c[(b + 92) >> 2] = 0;\n c[(b + 96) >> 2] = 0;\n e = (b + 100) | 0;\n mf(e);\n nf(f);\n g = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n d = 4;\n while (1) {\n i = e;\n j = i;\n a[j >> 0] = g;\n a[(j + 1) >> 0] = g >> 8;\n a[(j + 2) >> 0] = g >> 16;\n a[(j + 3) >> 0] = g >> 24;\n i = (i + 4) | 0;\n a[i >> 0] = f;\n a[(i + 1) >> 0] = f >> 8;\n a[(i + 2) >> 0] = f >> 16;\n a[(i + 3) >> 0] = f >> 24;\n d = (d + -1) | 0;\n if (!d)\n break;\n else\n e = (e + 8) | 0;\n }\n j = (b + 132) | 0;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n c[(j + 8) >> 2] = 0;\n c[(j + 12) >> 2] = 0;\n c[(j + 16) >> 2] = 0;\n c[(j + 20) >> 2] = 0;\n c[(j + 24) >> 2] = 0;\n c[(j + 28) >> 2] = 0;\n V = h;\n return;\n }\n function hf(a) {\n a = a | 0;\n xe(a, 32, 9, 8, 0);\n return;\n }\n function jf(a) {\n a = a | 0;\n mc(a, 32, 9, 8, 0);\n return;\n }\n function kf(a) {\n a = a | 0;\n ye(a);\n return;\n }\n function lf(a) {\n a = a | 0;\n Ic((a + 48) | 0);\n Ic((a + 4) | 0);\n return;\n }\n function mf(a) {\n a = a | 0;\n var b = 0;\n b = (a + 32) | 0;\n do {\n nf(a);\n a = (a + 8) | 0;\n } while ((a | 0) != (b | 0));\n return;\n }\n function nf(b) {\n b = b | 0;\n var c = 0;\n c = b;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function of(a) {\n a = a | 0;\n pf((a + 244) | 0);\n kf((a + 164) | 0);\n lf(a);\n return;\n }\n function pf(a) {\n a = a | 0;\n qc(a);\n return;\n }\n function qf(b, e, f) {\n b = b | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0;\n g = (b + 325) | 0;\n if (!(a[g >> 0] | 0)) {\n rf((b + 244) | 0);\n a[g >> 0] = 1;\n }\n if (!(a[b >> 0] | 0)) {\n a[b >> 0] = 1;\n Ee(De(e) | 0, f, 8);\n i = sf(f) | 0;\n j = u() | 0;\n b = (b + 100) | 0;\n e = b;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n b = (b + 4) | 0;\n a[b >> 0] = j;\n a[(b + 1) >> 0] = j >> 8;\n a[(b + 2) >> 0] = j >> 16;\n a[(b + 3) >> 0] = j >> 24;\n }\n else {\n j = (b + 92) | 0;\n a: do\n if (!(c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0)) {\n g = Zc(e, (b + 48) | 0) | 0;\n switch (g | 0) {\n case 1: {\n e = pc((b + 244) | 0, e, 0, 0) | 0;\n c[(b + 132 + (c[j >> 2] << 2)) >> 2] = e;\n e = c[j >> 2] | 0;\n k = c[(b + 132 + (e << 2)) >> 2] | 0;\n i = (b + 100 + (e << 3)) | 0;\n h = i;\n g = h;\n h = (h + 4) | 0;\n k =\n lr(d[g >> 0] |\n (d[(g + 1) >> 0] << 8) |\n (d[(g + 2) >> 0] << 16) |\n (d[(g + 3) >> 0] << 24) |\n 0, d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, k | 0, ((((k | 0) < 0) << 31) >> 31) | 0) | 0;\n h = u() | 0;\n g = i;\n a[g >> 0] = k;\n a[(g + 1) >> 0] = k >> 8;\n a[(g + 2) >> 0] = k >> 16;\n a[(g + 3) >> 0] = k >> 24;\n i = (i + 4) | 0;\n a[i >> 0] = h;\n a[(i + 1) >> 0] = h >> 8;\n a[(i + 2) >> 0] = h >> 16;\n a[(i + 3) >> 0] = h >> 24;\n c[(b + 148 + (e << 2)) >> 2] = 0;\n break a;\n }\n case 2: {\n k = (b + 96) | 0;\n c[k >> 2] = ((c[k >> 2] | 0) + 1) & 3;\n i = (b + 100 + (c[j >> 2] << 3) + 4) | 0;\n i =\n pc((b + 244) | 0, e, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24), 8) | 0;\n g = (b + 100 + (c[k >> 2] << 3)) | 0;\n h = g;\n a[h >> 0] = 0;\n a[(h + 1) >> 0] = 0;\n a[(h + 2) >> 0] = 0;\n a[(h + 3) >> 0] = 0;\n g = (g + 4) | 0;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n g = tf(e) | 0;\n k = c[k >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n i =\n d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24);\n g =\n d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n g;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[j >> 2] = k;\n c[(b + 132 + (k << 2)) >> 2] = 0;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break a;\n }\n default: {\n if ((g | 0) <= 2)\n break a;\n c[j >> 2] = (g + 2 + (c[j >> 2] | 0)) & 3;\n qf(b, e, f) | 0;\n break a;\n }\n }\n }\n else {\n i = Zc(e, (b + 4) | 0) | 0;\n if ((i | 0) == 1) {\n g = pc((b + 244) | 0, e, c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0, 1) | 0;\n k = c[j >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n g =\n lr(d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24) |\n 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | 0;\n i = u() | 0;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[(b + 148 + (k << 2)) >> 2] = 0;\n break;\n }\n if ((i | 0) >= 511) {\n if ((i | 0) == 512) {\n k = (b + 96) | 0;\n c[k >> 2] = ((c[k >> 2] | 0) + 1) & 3;\n i = (b + 100 + (c[j >> 2] << 3) + 4) | 0;\n i =\n pc((b + 244) | 0, e, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24), 8) | 0;\n g = (b + 100 + (c[k >> 2] << 3)) | 0;\n h = g;\n a[h >> 0] = 0;\n a[(h + 1) >> 0] = 0;\n a[(h + 2) >> 0] = 0;\n a[(h + 3) >> 0] = 0;\n g = (g + 4) | 0;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n g = tf(e) | 0;\n k = c[k >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n i =\n d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24);\n g =\n d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n g;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[j >> 2] = k;\n c[(b + 132 + (k << 2)) >> 2] = 0;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break;\n }\n if ((i | 0) <= 511)\n break;\n c[j >> 2] = ((c[j >> 2] | 0) + i) & 3;\n qf(b, e, f) | 0;\n break;\n }\n do\n if (!i) {\n g = pc((b + 244) | 0, e, 0, 7) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) > 3) {\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n }\n }\n else {\n if ((i | 0) < 500) {\n g = (b + 244) | 0;\n h = q(c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0, i) | 0;\n if ((i | 0) < 10) {\n g = pc(g, e, h, 2) | 0;\n break;\n }\n else {\n g = pc(g, e, h, 3) | 0;\n break;\n }\n }\n if ((i | 0) == 500) {\n g =\n pc((b + 244) | 0, e, ((c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0) * 500) | 0, 4) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) <= 3)\n break;\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break;\n }\n g = (500 - i) | 0;\n h = (b + 244) | 0;\n i = c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0;\n if ((g | 0) > -10) {\n g = pc(h, e, q(i, g) | 0, 5) | 0;\n break;\n }\n g = pc(h, e, q(i, -10) | 0, 6) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) > 3) {\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n }\n }\n while (0);\n k = (b + 100 + (c[j >> 2] << 3)) | 0;\n h = k;\n e = h;\n h = (h + 4) | 0;\n h =\n lr(d[e >> 0] |\n (d[(e + 1) >> 0] << 8) |\n (d[(e + 2) >> 0] << 16) |\n (d[(e + 3) >> 0] << 24) |\n 0, d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | 0;\n e = u() | 0;\n i = k;\n a[i >> 0] = h;\n a[(i + 1) >> 0] = h >> 8;\n a[(i + 2) >> 0] = h >> 16;\n a[(i + 3) >> 0] = h >> 24;\n k = (k + 4) | 0;\n a[k >> 0] = e;\n a[(k + 1) >> 0] = e >> 8;\n a[(k + 2) >> 0] = e >> 16;\n a[(k + 3) >> 0] = e >> 24;\n }\n while (0);\n uf((b + 100 + (c[j >> 2] << 3)) | 0, f);\n }\n return (f + 8) | 0;\n }\n function rf(a) {\n a = a | 0;\n oc(a);\n return;\n }\n function sf(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n e = Re(a) | 0;\n vf(d, e, Re((a + 4) | 0) | 0);\n a = c[d >> 2] | 0;\n t(c[(d + 4) >> 2] | 0);\n V = b;\n return a | 0;\n }\n function tf(a) {\n a = a | 0;\n var b = 0;\n b = (bd(a) | 0) & 65535;\n return (((bd(a) | 0) & 65535) << 16) | b | 0;\n }\n function uf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n c = a;\n We(d[c >> 0] | (d[(c + 1) >> 0] << 8) | (d[(c + 2) >> 0] << 16) | (d[(c + 3) >> 0] << 24), b);\n a = (a + 4) | 0;\n We(d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24), (b + 4) | 0);\n return;\n }\n function vf(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = b;\n a[e >> 0] = c;\n a[(e + 1) >> 0] = c >> 8;\n a[(e + 2) >> 0] = c >> 16;\n a[(e + 3) >> 0] = c >> 24;\n c = (b + 4) | 0;\n a[c >> 0] = d;\n a[(c + 1) >> 0] = d >> 8;\n a[(c + 2) >> 0] = d >> 16;\n a[(c + 3) >> 0] = d >> 24;\n return;\n }\n function wf(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function xf(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function yf(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 9890 ? (a + 12) | 0 : 0) | 0;\n }\n function zf(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Af(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4820;\n c[(a + 4) >> 2] = b;\n Cf((a + 8) | 0);\n return;\n }\n function Bf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4844;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Cf(b) {\n b = b | 0;\n a[b >> 0] = 0;\n Gf((b + 1) | 0);\n Oc((b + 8) | 0, 128, 0, 0);\n Oc((b + 52) | 0, 256, 0, 0);\n Oc((b + 96) | 0, 256, 0, 0);\n Oc((b + 140) | 0, 256, 0, 0);\n Oc((b + 184) | 0, 256, 0, 0);\n Oc((b + 228) | 0, 256, 0, 0);\n Oc((b + 272) | 0, 256, 0, 0);\n return;\n }\n function Df(a) {\n a = a | 0;\n c[a >> 2] = 4820;\n Hf((a + 8) | 0);\n le(a);\n return;\n }\n function Ef(a) {\n a = a | 0;\n Df(a);\n jp(a);\n return;\n }\n function Ff(a, b) {\n a = a | 0;\n b = b | 0;\n return If((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Gf(b) {\n b = b | 0;\n var c = 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n c = (b + 2) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function Hf(a) {\n a = a | 0;\n Ic((a + 272) | 0);\n Ic((a + 228) | 0);\n Ic((a + 184) | 0);\n Ic((a + 140) | 0);\n Ic((a + 96) | 0);\n Ic((a + 52) | 0);\n Ic((a + 8) | 0);\n return;\n }\n function If(c, f, g) {\n c = c | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n o = V;\n V = (V + 16) | 0;\n m = o;\n if (!(a[c >> 0] | 0)) {\n a[c >> 0] = 1;\n Ee(De(f) | 0, g, 6);\n Jf(m, g);\n n = (c + 1) | 0;\n a[n >> 0] = a[m >> 0] | 0;\n a[(n + 1) >> 0] = a[(m + 1) >> 0] | 0;\n a[(n + 2) >> 0] = a[(m + 2) >> 0] | 0;\n a[(n + 3) >> 0] = a[(m + 3) >> 0] | 0;\n a[(n + 4) >> 0] = a[(m + 4) >> 0] | 0;\n a[(n + 5) >> 0] = a[(m + 5) >> 0] | 0;\n }\n else {\n n = Zc(f, (c + 8) | 0) | 0;\n Gf(m);\n if (!(n & 1)) {\n h = (c + 1) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n l = (Zc(f, (c + 52) | 0) | 0) & 255;\n h = (c + 1) | 0;\n h = (Ie((l + ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255)) | 0) | 0) & 255;\n }\n b[m >> 1] = h;\n if (!(n & 2)) {\n l = (c + 1) | 0;\n h = h | ((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & -256);\n }\n else {\n h = (Zc(f, (c + 96) | 0) | 0) & 255;\n l = (c + 1) | 0;\n h =\n ((Ie(((((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & 65535) >>> 8) + h) | 0) | 0) & 255) << 8;\n h = (h | e[m >> 1]) & 65535;\n }\n b[m >> 1] = h;\n do\n if (n & 64) {\n k = (c + 1) | 0;\n i = ((h & 255) - ((d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 255)) | 0;\n if (!(n & 4)) {\n h = (c + 3) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n h = (Zc(f, (c + 140) | 0) | 0) & 255;\n l = (c + 3) | 0;\n l = (i + ((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & 255)) | 0;\n h = (Ie((((l | 0) < 1 ? 0 : (l | 0) > 254 ? 255 : l & 255) + h) | 0) | 0) & 255;\n }\n l = (m + 2) | 0;\n b[l >> 1] = h;\n if (!(n & 16)) {\n h = (c + 5) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n h = Zc(f, (c + 228) | 0) | 0;\n p = (c + 3) | 0;\n j = (c + 5) | 0;\n j =\n (((((i + (b[l >> 1] & 255) - ((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 255)) | 0) /\n 2) |\n 0) +\n ((d[j >> 0] | (d[(j + 1) >> 0] << 8)) & 255)) |\n 0;\n h =\n (Ie((((j | 0) < 1 ? 0 : (j | 0) > 254 ? 255 : j & 255) + (h & 255)) | 0) | 0) & 255;\n }\n j = (m + 4) | 0;\n b[j >> 1] = h;\n h =\n (((e[m >> 1] | 0) >>> 8) - (((d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0;\n if (!(n & 8)) {\n i = (c + 3) | 0;\n i = b[l >> 1] | ((d[i >> 0] | (d[(i + 1) >> 0] << 8)) & -256);\n }\n else {\n i = (Zc(f, (c + 184) | 0) | 0) & 255;\n p = (c + 3) | 0;\n p = ((((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 65535) >>> 8) + h) | 0;\n i =\n ((Ie((((p | 0) < 1 ? 0 : (p | 0) > 254 ? 255 : p & 255) + i) | 0) | 0) & 255) << 8;\n i = (i | e[l >> 1]) & 65535;\n }\n b[l >> 1] = i;\n if (!(n & 32)) {\n p = (c + 5) | 0;\n b[j >> 1] = b[j >> 1] | ((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & -256);\n break;\n }\n else {\n p = Zc(f, (c + 272) | 0) | 0;\n f = (c + 3) | 0;\n n = (c + 5) | 0;\n n =\n (((((((e[l >> 1] | 0) >>> 8) +\n h -\n (((d[f >> 0] | (d[(f + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0) /\n 2) |\n 0) +\n (((d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0;\n p =\n ((Ie((((n | 0) < 1 ? 0 : (n | 0) > 254 ? 255 : n & 255) + (p & 255)) | 0) | 0) &\n 255) <<\n 8;\n b[j >> 1] = p | e[j >> 1];\n break;\n }\n }\n else {\n b[(m + 2) >> 1] = h;\n b[(m + 4) >> 1] = h;\n }\n while (0);\n p = (c + 1) | 0;\n a[p >> 0] = a[m >> 0] | 0;\n a[(p + 1) >> 0] = a[(m + 1) >> 0] | 0;\n a[(p + 2) >> 0] = a[(m + 2) >> 0] | 0;\n a[(p + 3) >> 0] = a[(m + 3) >> 0] | 0;\n a[(p + 4) >> 0] = a[(m + 4) >> 0] | 0;\n a[(p + 5) >> 0] = a[(m + 5) >> 0] | 0;\n Kf(p, g);\n }\n V = o;\n return (g + 6) | 0;\n }\n function Jf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0, d = 0;\n d = Oe(b) | 0;\n c = Oe((b + 2) | 0) | 0;\n Lf(a, d, c, Oe((b + 4) | 0) | 0);\n return;\n }\n function Kf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n Te(d[a >> 0] | (d[(a + 1) >> 0] << 8), b);\n c = (a + 2) | 0;\n Te(d[c >> 0] | (d[(c + 1) >> 0] << 8), (b + 2) | 0);\n a = (a + 4) | 0;\n Te(d[a >> 0] | (d[(a + 1) >> 0] << 8), (b + 4) | 0);\n return;\n }\n function Lf(b, c, d, e) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n a[b >> 0] = c;\n a[(b + 1) >> 0] = c >> 8;\n c = (b + 2) | 0;\n a[c >> 0] = d;\n a[(c + 1) >> 0] = d >> 8;\n d = (b + 4) | 0;\n a[d >> 0] = e;\n a[(d + 1) >> 0] = e >> 8;\n return;\n }\n function Mf(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Nf(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Of(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 10570 ? (a + 12) | 0 : 0) | 0;\n }\n function Pf(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Qf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n fe(a);\n c[a >> 2] = 4872;\n c[(a + 4) >> 2] = b;\n Sf((a + 8) | 0, d);\n return;\n }\n function Rf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4896;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Sf(b, d) {\n b = b | 0;\n d = d | 0;\n c[b >> 2] = c[d >> 2];\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n Wf((b + 8) | 0, (d + 8) | 0);\n Wf((b + 20) | 0, (d + 20) | 0);\n Xf((b + 32) | 0, (d + 32) | 0);\n return;\n }\n function Tf(a) {\n a = a | 0;\n c[a >> 2] = 4872;\n ud((a + 8) | 0);\n le(a);\n return;\n }\n function Uf(a) {\n a = a | 0;\n Tf(a);\n jp(a);\n return;\n }\n function Vf(a, b) {\n a = a | 0;\n b = b | 0;\n return Dg((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Wf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n d = (b + 4) | 0;\n e = ((c[d >> 2] | 0) - (c[b >> 2] | 0)) | 0;\n if (e | 0) {\n Yf(a, e);\n Zf(a, c[b >> 2] | 0, c[d >> 2] | 0, e);\n }\n return;\n }\n function Xf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 32) | 0;\n e = (d + 24) | 0;\n f = (d + 16) | 0;\n h = (d + 8) | 0;\n g = d;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n zg(h, b);\n Ag(g, b);\n c[f >> 2] = c[h >> 2];\n c[(f + 4) >> 2] = c[(h + 4) >> 2];\n c[e >> 2] = c[g >> 2];\n c[(e + 4) >> 2] = c[(g + 4) >> 2];\n cg(a, f, e, 0);\n V = d;\n return;\n }\n function Yf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n if (($f(a) | 0) >>> 0 < b >>> 0)\n cr(a);\n else {\n d = eq(b) | 0;\n c[(a + 4) >> 2] = d;\n c[a >> 2] = d;\n c[(a + 8) >> 2] = d + b;\n return;\n }\n }\n function Zf(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n ag(f, a, e);\n e = (f + 4) | 0;\n a = (d - b) | 0;\n if ((a | 0) > 0) {\n ur(c[e >> 2] | 0, b | 0, a | 0) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + a;\n }\n bg(f);\n V = g;\n return;\n }\n function _f(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function $f(a) {\n a = a | 0;\n return 2147483647;\n }\n function ag(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + d;\n return;\n }\n function bg(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function cg(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n q = V;\n V = (V + 96) | 0;\n p = (q + 80) | 0;\n m = (q + 64) | 0;\n j = (q + 48) | 0;\n k = (q + 40) | 0;\n l = (q + 8) | 0;\n i = q;\n n = (q + 32) | 0;\n o = (q + 16) | 0;\n h = b;\n g = c[h >> 2] | 0;\n h = c[(h + 4) >> 2] | 0;\n f = d;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n e = g;\n if ((f | 0) == (h | 0))\n h = 0;\n else\n h =\n (((((f - (c[d >> 2] | 0)) | 0) / 44) | 0) +\n ((((d - g) >> 2) * 93) | 0) +\n ((((h - (c[g >> 2] | 0)) | 0) / -44) | 0)) |\n 0;\n d = ((c[(a + 8) >> 2] | 0) - (c[(a + 4) >> 2] | 0)) | 0;\n d =\n (((d | 0) == 0 ? 0 : ((((d >> 2) * 93) | 0) + -1) | 0) -\n ((c[(a + 20) >> 2] | 0) + (c[(a + 16) >> 2] | 0))) |\n 0;\n if (h >>> 0 > d >>> 0)\n eg(a, (h - d) | 0);\n fg(k, a);\n fg(i, a);\n f = i;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n g = l;\n c[g >> 2] = d;\n c[(g + 4) >> 2] = f;\n g = d;\n if (h | 0) {\n d = (((((f - (c[d >> 2] | 0)) | 0) / 44) | 0) + h) | 0;\n if ((d | 0) > 0) {\n i = ((d >>> 0) / 93) | 0;\n h = (g + (i << 2)) | 0;\n c[l >> 2] = h;\n d = ((c[h >> 2] | 0) + ((((d - ((i * 93) | 0)) | 0) * 44) | 0)) | 0;\n }\n else {\n d = (92 - d) | 0;\n i = (g + ((((d | 0) / -93) | 0) << 2)) | 0;\n c[l >> 2] = i;\n d = ((c[i >> 2] | 0) + ((((92 - ((d | 0) % 93 | 0)) | 0) * 44) | 0)) | 0;\n }\n c[(l + 4) >> 2] = d;\n }\n c[m >> 2] = c[k >> 2];\n c[(m + 4) >> 2] = c[(k + 4) >> 2];\n c[p >> 2] = c[l >> 2];\n c[(p + 4) >> 2] = c[(l + 4) >> 2];\n gg(j, m, p);\n hg(p, j);\n ig(m, j);\n if (jg(p, m) | 0) {\n g = (o + 4) | 0;\n h = (b + 4) | 0;\n do {\n kg(n, p);\n lg(o, a, n);\n d = c[o >> 2] | 0;\n if ((d | 0) != (c[g >> 2] | 0)) {\n f = c[h >> 2] | 0;\n do {\n Wc(d, f);\n d = ((c[o >> 2] | 0) + 44) | 0;\n c[o >> 2] = d;\n f = (f + 44) | 0;\n c[h >> 2] = f;\n if (((f - (c[e >> 2] | 0)) | 0) == 4092) {\n e = (e + 4) | 0;\n c[b >> 2] = e;\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n }\n } while ((d | 0) != (c[g >> 2] | 0));\n }\n mg(o);\n ng(p) | 0;\n } while (jg(p, m) | 0);\n }\n V = q;\n return;\n }\n function dg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -4 - b) | 0) >>> 2) << 2);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function eg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0;\n B = V;\n V = (V + 64) | 0;\n v = (B + 52) | 0;\n u = (B + 48) | 0;\n w = (B + 28) | 0;\n x = (B + 24) | 0;\n y = (B + 20) | 0;\n p = B;\n z = (a + 8) | 0;\n d = c[z >> 2] | 0;\n A = (a + 4) | 0;\n j = c[A >> 2] | 0;\n s = ((((d | 0) == (j | 0)) & 1) + b) | 0;\n h = ((s >>> 0) / 93) | 0;\n h = (h + ((((s - ((h * 93) | 0)) | 0) != 0) & 1)) | 0;\n s = (a + 16) | 0;\n e = c[s >> 2] | 0;\n i = ((e >>> 0) / 93) | 0;\n r = h >>> 0 < i >>> 0 ? h : i;\n b = (h - r) | 0;\n g = d;\n a: do\n if (!b) {\n c[s >> 2] = (q(r, -93) | 0) + e;\n if (r | 0) {\n i = (a + 12) | 0;\n k = (a + 12) | 0;\n l = (w + 4) | 0;\n m = (w + 8) | 0;\n n = (w + 12) | 0;\n b = r;\n e = j;\n while (1) {\n h = c[e >> 2] | 0;\n g = (e + 4) | 0;\n c[A >> 2] = g;\n t = c[i >> 2] | 0;\n e = t;\n do\n if ((d | 0) == (t | 0)) {\n t = c[a >> 2] | 0;\n d = t;\n if (g >>> 0 <= t >>> 0) {\n d = (e - d) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(w, d, d >>> 2, k);\n c[x >> 2] = c[A >> 2];\n c[y >> 2] = c[z >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[w >> 2];\n c[w >> 2] = d;\n d = c[A >> 2] | 0;\n c[A >> 2] = c[l >> 2];\n c[l >> 2] = d;\n d = c[z >> 2] | 0;\n c[z >> 2] = c[m >> 2];\n c[m >> 2] = d;\n d = c[i >> 2] | 0;\n c[i >> 2] = c[n >> 2];\n c[n >> 2] = d;\n tg(w);\n d = c[z >> 2] | 0;\n break;\n }\n t = g;\n d = (((((t - d) >> 2) + 1) | 0) / -2) | 0;\n f = (g + (d << 2)) | 0;\n e = (e - t) | 0;\n if (!e)\n d = f;\n else {\n vr(f | 0, g | 0, e | 0) | 0;\n d = ((c[A >> 2] | 0) + (d << 2)) | 0;\n }\n t = (f + ((e >> 2) << 2)) | 0;\n c[z >> 2] = t;\n c[A >> 2] = d;\n d = t;\n }\n while (0);\n c[d >> 2] = h;\n d = ((c[z >> 2] | 0) + 4) | 0;\n c[z >> 2] = d;\n b = (b + -1) | 0;\n if (!b)\n break a;\n e = c[A >> 2] | 0;\n }\n }\n }\n else {\n t = (a + 12) | 0;\n e = c[t >> 2] | 0;\n f = (e - (c[a >> 2] | 0)) | 0;\n d = (g - j) >> 2;\n if (b >>> 0 > (((f >> 2) - d) | 0) >>> 0) {\n o = f >> 1;\n n = (d + b) | 0;\n qg(p, o >>> 0 < n >>> 0 ? n : o, (d - r) | 0, (a + 12) | 0);\n do {\n c[v >> 2] = eq(4092) | 0;\n rg(p, v);\n b = (b + -1) | 0;\n } while ((b | 0) != 0);\n if (!r)\n d = c[A >> 2] | 0;\n else {\n i = (p + 8) | 0;\n j = (p + 12) | 0;\n k = (p + 4) | 0;\n l = (p + 16) | 0;\n m = (w + 4) | 0;\n n = (w + 8) | 0;\n o = (w + 12) | 0;\n h = r;\n b = c[i >> 2] | 0;\n d = c[A >> 2] | 0;\n do {\n g = c[j >> 2] | 0;\n e = g;\n do\n if ((b | 0) == (g | 0)) {\n f = c[k >> 2] | 0;\n g = c[p >> 2] | 0;\n b = g;\n if (f >>> 0 <= g >>> 0) {\n b = (e - b) | 0;\n b = (b | 0) == 0 ? 1 : b >> 1;\n qg(w, b, b >>> 2, c[l >> 2] | 0);\n c[x >> 2] = c[k >> 2];\n c[y >> 2] = c[i >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n b = c[p >> 2] | 0;\n c[p >> 2] = c[w >> 2];\n c[w >> 2] = b;\n b = c[k >> 2] | 0;\n c[k >> 2] = c[m >> 2];\n c[m >> 2] = b;\n b = c[i >> 2] | 0;\n c[i >> 2] = c[n >> 2];\n c[n >> 2] = b;\n b = c[j >> 2] | 0;\n c[j >> 2] = c[o >> 2];\n c[o >> 2] = b;\n tg(w);\n b = c[i >> 2] | 0;\n break;\n }\n C = f;\n b = (((((C - b) >> 2) + 1) | 0) / -2) | 0;\n g = (f + (b << 2)) | 0;\n e = (e - C) | 0;\n if (!e)\n b = g;\n else {\n vr(g | 0, f | 0, e | 0) | 0;\n b = ((c[k >> 2] | 0) + (b << 2)) | 0;\n }\n C = (g + ((e >> 2) << 2)) | 0;\n c[i >> 2] = C;\n c[k >> 2] = b;\n b = C;\n }\n while (0);\n c[b >> 2] = c[d >> 2];\n b = ((c[i >> 2] | 0) + 4) | 0;\n c[i >> 2] = b;\n d = ((c[A >> 2] | 0) + 4) | 0;\n c[A >> 2] = d;\n h = (h + -1) | 0;\n } while ((h | 0) != 0);\n }\n b = c[z >> 2] | 0;\n if ((b | 0) != (d | 0)) {\n do {\n b = (b + -4) | 0;\n sg(p, b);\n d = c[A >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[z >> 2] | 0;\n }\n C = c[a >> 2] | 0;\n c[a >> 2] = c[p >> 2];\n c[p >> 2] = C;\n C = (p + 4) | 0;\n c[A >> 2] = c[C >> 2];\n c[C >> 2] = d;\n C = (p + 8) | 0;\n c[z >> 2] = c[C >> 2];\n c[C >> 2] = b;\n C = (p + 12) | 0;\n A = c[t >> 2] | 0;\n c[t >> 2] = c[C >> 2];\n c[C >> 2] = A;\n c[s >> 2] = (c[s >> 2] | 0) + (q(r, -93) | 0);\n tg(p);\n break;\n }\n else {\n b: do\n if ((e | 0) == (g | 0))\n k = 18;\n else {\n while (1) {\n c[v >> 2] = eq(4092) | 0;\n og(a, v);\n b = (b + -1) | 0;\n if (!b)\n break;\n if ((c[t >> 2] | 0) == (c[z >> 2] | 0)) {\n k = 18;\n break b;\n }\n }\n d = r;\n b = c[s >> 2] | 0;\n }\n while (0);\n if ((k | 0) == 18) {\n e = ~(h >>> 0 > i >>> 0 ? i : h);\n d = b;\n do {\n c[v >> 2] = eq(4092) | 0;\n pg(a, v);\n d = (d + -1) | 0;\n f =\n (((((c[z >> 2] | 0) - (c[A >> 2] | 0)) | 0) == 4 ? 92 : 93) + (c[s >> 2] | 0)) |\n 0;\n c[s >> 2] = f;\n } while ((d | 0) != 0);\n d = (b + -1 - e) | 0;\n b = f;\n }\n c[s >> 2] = b + (q(d, -93) | 0);\n if (!d)\n break;\n i = (a + 12) | 0;\n j = (w + 4) | 0;\n k = (w + 8) | 0;\n l = (w + 12) | 0;\n b = c[z >> 2] | 0;\n do {\n g = c[A >> 2] | 0;\n h = c[g >> 2] | 0;\n g = (g + 4) | 0;\n c[A >> 2] = g;\n C = c[t >> 2] | 0;\n e = C;\n do\n if ((b | 0) == (C | 0)) {\n C = c[a >> 2] | 0;\n b = C;\n if (g >>> 0 <= C >>> 0) {\n b = (e - b) | 0;\n b = (b | 0) == 0 ? 1 : b >> 1;\n qg(w, b, b >>> 2, i);\n c[x >> 2] = c[A >> 2];\n c[y >> 2] = c[z >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n b = c[a >> 2] | 0;\n c[a >> 2] = c[w >> 2];\n c[w >> 2] = b;\n b = c[A >> 2] | 0;\n c[A >> 2] = c[j >> 2];\n c[j >> 2] = b;\n b = c[z >> 2] | 0;\n c[z >> 2] = c[k >> 2];\n c[k >> 2] = b;\n b = c[t >> 2] | 0;\n c[t >> 2] = c[l >> 2];\n c[l >> 2] = b;\n tg(w);\n b = c[z >> 2] | 0;\n break;\n }\n C = g;\n b = (((((C - b) >> 2) + 1) | 0) / -2) | 0;\n f = (g + (b << 2)) | 0;\n e = (e - C) | 0;\n if (!e)\n b = f;\n else {\n vr(f | 0, g | 0, e | 0) | 0;\n b = ((c[A >> 2] | 0) + (b << 2)) | 0;\n }\n C = (f + ((e >> 2) << 2)) | 0;\n c[z >> 2] = C;\n c[A >> 2] = b;\n b = C;\n }\n while (0);\n c[b >> 2] = h;\n b = ((c[z >> 2] | 0) + 4) | 0;\n c[z >> 2] = b;\n d = (d + -1) | 0;\n } while ((d | 0) != 0);\n }\n }\n while (0);\n V = B;\n return;\n }\n function fg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = ((c[(b + 16) >> 2] | 0) + (c[(b + 20) >> 2] | 0)) | 0;\n g = c[(b + 4) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function gg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = b;\n b = c[(f + 4) >> 2] | 0;\n e = a;\n c[e >> 2] = c[f >> 2];\n c[(e + 4) >> 2] = b;\n e = d;\n b = c[(e + 4) >> 2] | 0;\n d = (a + 8) | 0;\n c[d >> 2] = c[e >> 2];\n c[(d + 4) >> 2] = b;\n return;\n }\n function hg(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = c[(b + 4) >> 2];\n c[(a + 8) >> 2] = c[(b + 8) >> 2];\n c[(a + 12) >> 2] = c[(b + 12) >> 2];\n return;\n }\n function ig(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n d = V;\n V = (V + 32) | 0;\n e = (d + 24) | 0;\n f = (d + 16) | 0;\n h = (d + 8) | 0;\n g = d;\n i = (b + 8) | 0;\n j = c[i >> 2] | 0;\n i = c[(i + 4) >> 2] | 0;\n b = h;\n c[b >> 2] = j;\n c[(b + 4) >> 2] = i;\n b = g;\n c[b >> 2] = j;\n c[(b + 4) >> 2] = i;\n c[f >> 2] = c[h >> 2];\n c[(f + 4) >> 2] = c[(h + 4) >> 2];\n c[e >> 2] = c[g >> 2];\n c[(e + 4) >> 2] = c[(g + 4) >> 2];\n gg(a, f, e);\n V = d;\n return;\n }\n function jg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((xg(a, b) | 0) ^ 1) | 0;\n }\n function kg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = c[b >> 2] | 0;\n e = c[(b + 4) >> 2] | 0;\n if ((d | 0) == (c[(b + 8) >> 2] | 0))\n yg(a, e, c[(b + 12) >> 2] | 0);\n else\n yg(a, e, ((c[d >> 2] | 0) + 4092) | 0);\n return;\n }\n function lg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = c[d >> 2] | 0;\n c[a >> 2] = e;\n c[(a + 4) >> 2] = c[(d + 4) >> 2];\n c[(a + 8) >> 2] = e;\n c[(a + 12) >> 2] = b;\n return;\n }\n function mg(a) {\n a = a | 0;\n var b = 0;\n b = ((c[(a + 12) >> 2] | 0) + 20) | 0;\n c[b >> 2] = (c[b >> 2] | 0) + (((((c[a >> 2] | 0) - (c[(a + 8) >> 2] | 0)) | 0) / 44) | 0);\n return;\n }\n function ng(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[a >> 2] | 0;\n d = (a + 8) | 0;\n if ((b | 0) == (c[d >> 2] | 0)) {\n e = d;\n b = c[(e + 4) >> 2] | 0;\n d = a;\n c[d >> 2] = c[e >> 2];\n c[(d + 4) >> 2] = b;\n }\n else {\n e = (b + 4) | 0;\n c[a >> 2] = e;\n c[(a + 4) >> 2] = c[e >> 2];\n }\n return a | 0;\n }\n function og(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n f = (p + 32) | 0;\n e = (p + 28) | 0;\n i = (p + 8) | 0;\n j = (p + 4) | 0;\n k = p;\n o = (a + 8) | 0;\n d = c[o >> 2] | 0;\n l = (a + 12) | 0;\n n = c[l >> 2] | 0;\n g = n;\n do\n if ((d | 0) == (n | 0)) {\n n = (a + 4) | 0;\n m = c[n >> 2] | 0;\n q = c[a >> 2] | 0;\n h = q;\n if (m >>> 0 <= q >>> 0) {\n d = (g - h) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(i, d, d >>> 2, (a + 12) | 0);\n c[j >> 2] = c[n >> 2];\n c[k >> 2] = c[o >> 2];\n c[e >> 2] = c[j >> 2];\n c[f >> 2] = c[k >> 2];\n ug(i, e, f);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[i >> 2];\n c[i >> 2] = d;\n d = (i + 4) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 8) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 12) | 0;\n q = c[l >> 2] | 0;\n c[l >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(i);\n d = c[o >> 2] | 0;\n break;\n }\n f = m;\n e = (((((f - h) >> 2) + 1) | 0) / -2) | 0;\n a = (m + (e << 2)) | 0;\n f = (d - f) | 0;\n if (!f)\n d = a;\n else {\n vr(a | 0, m | 0, f | 0) | 0;\n d = ((c[n >> 2] | 0) + (e << 2)) | 0;\n }\n q = (a + ((f >> 2) << 2)) | 0;\n c[o >> 2] = q;\n c[n >> 2] = d;\n d = q;\n }\n while (0);\n c[d >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + 4;\n V = p;\n return;\n }\n function pg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n e = (p + 32) | 0;\n d = (p + 28) | 0;\n h = (p + 8) | 0;\n i = (p + 4) | 0;\n j = p;\n o = (a + 4) | 0;\n m = c[o >> 2] | 0;\n n = c[a >> 2] | 0;\n k = n;\n do\n if ((m | 0) == (n | 0)) {\n n = (a + 8) | 0;\n l = c[n >> 2] | 0;\n g = (a + 12) | 0;\n q = c[g >> 2] | 0;\n f = q;\n if (l >>> 0 >= q >>> 0) {\n q = (f - k) | 0;\n q = (q | 0) == 0 ? 1 : q >> 1;\n qg(h, q, ((q + 3) | 0) >>> 2, (a + 12) | 0);\n c[i >> 2] = c[o >> 2];\n c[j >> 2] = c[n >> 2];\n c[d >> 2] = c[i >> 2];\n c[e >> 2] = c[j >> 2];\n ug(h, d, e);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[h >> 2];\n c[h >> 2] = d;\n d = (h + 4) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 8) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 12) | 0;\n q = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(h);\n d = c[o >> 2] | 0;\n break;\n }\n e = l;\n a = (((((f - e) >> 2) + 1) | 0) / 2) | 0;\n f = (l + (a << 2)) | 0;\n e = (e - m) | 0;\n d = (f + ((0 - (e >> 2)) << 2)) | 0;\n if (!e) {\n d = f;\n e = f;\n }\n else {\n vr(d | 0, m | 0, e | 0) | 0;\n e = ((c[n >> 2] | 0) + (a << 2)) | 0;\n }\n c[o >> 2] = d;\n c[n >> 2] = e;\n }\n else\n d = m;\n while (0);\n c[(d + -4) >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + -4;\n V = p;\n return;\n }\n function qg(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 1073741823) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 2) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 2)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 2);\n return;\n }\n function rg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n f = (p + 32) | 0;\n e = (p + 28) | 0;\n i = (p + 8) | 0;\n j = (p + 4) | 0;\n k = p;\n o = (a + 8) | 0;\n d = c[o >> 2] | 0;\n l = (a + 12) | 0;\n n = c[l >> 2] | 0;\n g = n;\n do\n if ((d | 0) == (n | 0)) {\n n = (a + 4) | 0;\n m = c[n >> 2] | 0;\n q = c[a >> 2] | 0;\n h = q;\n if (m >>> 0 <= q >>> 0) {\n d = (g - h) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(i, d, d >>> 2, c[(a + 16) >> 2] | 0);\n c[j >> 2] = c[n >> 2];\n c[k >> 2] = c[o >> 2];\n c[e >> 2] = c[j >> 2];\n c[f >> 2] = c[k >> 2];\n ug(i, e, f);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[i >> 2];\n c[i >> 2] = d;\n d = (i + 4) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 8) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 12) | 0;\n q = c[l >> 2] | 0;\n c[l >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(i);\n d = c[o >> 2] | 0;\n break;\n }\n f = m;\n e = (((((f - h) >> 2) + 1) | 0) / -2) | 0;\n a = (m + (e << 2)) | 0;\n f = (d - f) | 0;\n if (!f)\n d = a;\n else {\n vr(a | 0, m | 0, f | 0) | 0;\n d = ((c[n >> 2] | 0) + (e << 2)) | 0;\n }\n q = (a + ((f >> 2) << 2)) | 0;\n c[o >> 2] = q;\n c[n >> 2] = d;\n d = q;\n }\n while (0);\n c[d >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + 4;\n V = p;\n return;\n }\n function sg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n e = (p + 32) | 0;\n d = (p + 28) | 0;\n h = (p + 8) | 0;\n i = (p + 4) | 0;\n j = p;\n o = (a + 4) | 0;\n m = c[o >> 2] | 0;\n n = c[a >> 2] | 0;\n k = n;\n do\n if ((m | 0) == (n | 0)) {\n n = (a + 8) | 0;\n l = c[n >> 2] | 0;\n g = (a + 12) | 0;\n q = c[g >> 2] | 0;\n f = q;\n if (l >>> 0 >= q >>> 0) {\n q = (f - k) | 0;\n q = (q | 0) == 0 ? 1 : q >> 1;\n qg(h, q, ((q + 3) | 0) >>> 2, c[(a + 16) >> 2] | 0);\n c[i >> 2] = c[o >> 2];\n c[j >> 2] = c[n >> 2];\n c[d >> 2] = c[i >> 2];\n c[e >> 2] = c[j >> 2];\n ug(h, d, e);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[h >> 2];\n c[h >> 2] = d;\n d = (h + 4) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 8) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 12) | 0;\n q = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(h);\n d = c[o >> 2] | 0;\n break;\n }\n e = l;\n a = (((((f - e) >> 2) + 1) | 0) / 2) | 0;\n f = (l + (a << 2)) | 0;\n e = (e - m) | 0;\n d = (f + ((0 - (e >> 2)) << 2)) | 0;\n if (!e) {\n d = f;\n e = f;\n }\n else {\n vr(d | 0, m | 0, e | 0) | 0;\n e = ((c[n >> 2] | 0) + (a << 2)) | 0;\n }\n c[o >> 2] = d;\n c[n >> 2] = e;\n }\n else\n d = m;\n while (0);\n c[(d + -4) >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + -4;\n V = p;\n return;\n }\n function tg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -4 - b) | 0) >>> 2) << 2);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ug(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n f = c[b >> 2] | 0;\n vg(g, (a + 8) | 0, ((c[d >> 2] | 0) - f) >> 2);\n a = c[g >> 2] | 0;\n e = (g + 4) | 0;\n if ((a | 0) != (c[e >> 2] | 0)) {\n d = f;\n do {\n c[a >> 2] = c[d >> 2];\n a = ((c[g >> 2] | 0) + 4) | 0;\n c[g >> 2] = a;\n d = (d + 4) | 0;\n } while ((a | 0) != (c[e >> 2] | 0));\n c[b >> 2] = d;\n }\n wg(g);\n V = h;\n return;\n }\n function vg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = (c[b >> 2] | 0) + (d << 2);\n c[(a + 8) >> 2] = b;\n return;\n }\n function wg(a) {\n a = a | 0;\n c[c[(a + 8) >> 2] >> 2] = c[a >> 2];\n return;\n }\n function xg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0)) | 0;\n }\n function yg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n return;\n }\n function zg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = c[(b + 4) >> 2] | 0;\n d = c[(b + 16) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Ag(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = ((c[(b + 16) >> 2] | 0) + (c[(b + 20) >> 2] | 0)) | 0;\n g = c[(b + 4) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Bg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 16) | 0;\n e = (i + 8) | 0;\n g = i;\n Cg(e, a);\n fg(g, a);\n f = (e + 4) | 0;\n b = c[f >> 2] | 0;\n g = (g + 4) | 0;\n if ((b | 0) != (c[g >> 2] | 0))\n do {\n Ic(b);\n b = ((c[f >> 2] | 0) + 44) | 0;\n c[f >> 2] = b;\n d = c[e >> 2] | 0;\n if (((b - (c[d >> 2] | 0)) | 0) == 4092) {\n b = (d + 4) | 0;\n c[e >> 2] = b;\n b = c[b >> 2] | 0;\n c[f >> 2] = b;\n }\n } while ((b | 0) != (c[g >> 2] | 0));\n c[(a + 20) >> 2] = 0;\n f = (a + 8) | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n b = ((c[f >> 2] | 0) - d) >> 2;\n if (b >>> 0 > 2)\n do {\n Da(c[d >> 2] | 0, 4092);\n d = ((c[e >> 2] | 0) + 4) | 0;\n c[e >> 2] = d;\n b = ((c[f >> 2] | 0) - d) >> 2;\n } while (b >>> 0 > 2);\n switch (b | 0) {\n case 1: {\n b = 46;\n h = 11;\n break;\n }\n case 2: {\n b = 93;\n h = 11;\n break;\n }\n default: {\n }\n }\n if ((h | 0) == 11)\n c[(a + 16) >> 2] = b;\n V = i;\n return;\n }\n function Cg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = c[(b + 4) >> 2] | 0;\n d = c[(b + 16) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Dg(b, e, f) {\n b = b | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0;\n m = V;\n V = (V + 16) | 0;\n l = m;\n j = (b + 4) | 0;\n if (!(a[j >> 0] | 0)) {\n l = De(e) | 0;\n Ee(l, f, c[b >> 2] | 0);\n l = c[b >> 2] | 0;\n i = (f + l) | 0;\n if (!l)\n g = 0;\n else {\n g = f;\n h = c[(b + 8) >> 2] | 0;\n while (1) {\n a[h >> 0] = a[g >> 0] | 0;\n g = (g + 1) | 0;\n if ((g | 0) == (i | 0))\n break;\n else\n h = (h + 1) | 0;\n }\n g = c[b >> 2] | 0;\n }\n a[j >> 0] = 1;\n f = (f + g) | 0;\n }\n else {\n h = c[(b + 20) >> 2] | 0;\n g = c[(b + 8) >> 2] | 0;\n Cg(l, (b + 32) | 0);\n b = (b + 12) | 0;\n if ((g | 0) != (c[b >> 2] | 0)) {\n k = (l + 4) | 0;\n j = g;\n i = h;\n g = c[k >> 2] | 0;\n while (1) {\n h = d[j >> 0] | 0;\n h = Eg(((Zc(e, g) | 0) + h) | 0) | 0;\n a[i >> 0] = h;\n a[f >> 0] = h;\n a[j >> 0] = h;\n j = (j + 1) | 0;\n f = (f + 1) | 0;\n h = c[l >> 2] | 0;\n g = ((c[k >> 2] | 0) + 44) | 0;\n c[k >> 2] = g;\n if (((g - (c[h >> 2] | 0)) | 0) == 4092) {\n g = (h + 4) | 0;\n c[l >> 2] = g;\n g = c[g >> 2] | 0;\n c[k >> 2] = g;\n }\n if ((j | 0) == (c[b >> 2] | 0))\n break;\n else\n i = (i + 1) | 0;\n }\n }\n }\n V = m;\n return f | 0;\n }\n function Eg(a) {\n a = a | 0;\n return (a & 255) | 0;\n }\n function Fg(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Gg(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Hg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 11262 ? (a + 12) | 0 : 0) | 0;\n }\n function Ig(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Jg(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n if (b | 0) {\n Yf(a, b);\n Lg(a, b);\n }\n return;\n }\n function Kg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n if (b | 0)\n Mg(a, b, d);\n return;\n }\n function Lg(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n ag(f, b, d);\n d = (f + 4) | 0;\n b = c[d >> 2] | 0;\n e = (f + 8) | 0;\n if ((b | 0) != (c[e >> 2] | 0))\n do {\n a[b >> 0] = 0;\n b = ((c[d >> 2] | 0) + 1) | 0;\n c[d >> 2] = b;\n } while ((b | 0) != (c[e >> 2] | 0));\n bg(f);\n V = g;\n return;\n }\n function Mg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n o = V;\n V = (V + 96) | 0;\n n = (o + 80) | 0;\n k = (o + 64) | 0;\n h = (o + 48) | 0;\n i = (o + 40) | 0;\n j = (o + 8) | 0;\n f = o;\n l = (o + 32) | 0;\n m = (o + 16) | 0;\n e = ((c[(a + 8) >> 2] | 0) - (c[(a + 4) >> 2] | 0)) | 0;\n e =\n (((e | 0) == 0 ? 0 : ((((e >> 2) * 93) | 0) + -1) | 0) -\n ((c[(a + 20) >> 2] | 0) + (c[(a + 16) >> 2] | 0))) |\n 0;\n if (e >>> 0 < b >>> 0)\n eg(a, (b - e) | 0);\n fg(i, a);\n fg(f, a);\n e = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n g = j;\n c[g >> 2] = e;\n c[(g + 4) >> 2] = f;\n g = e;\n if (b | 0) {\n e = (((((f - (c[e >> 2] | 0)) | 0) / 44) | 0) + b) | 0;\n if ((e | 0) > 0) {\n b = ((e >>> 0) / 93) | 0;\n g = (g + (b << 2)) | 0;\n c[j >> 2] = g;\n e = ((c[g >> 2] | 0) + ((((e - ((b * 93) | 0)) | 0) * 44) | 0)) | 0;\n }\n else {\n e = (92 - e) | 0;\n b = (g + ((((e | 0) / -93) | 0) << 2)) | 0;\n c[j >> 2] = b;\n e = ((c[b >> 2] | 0) + ((((92 - ((e | 0) % 93 | 0)) | 0) * 44) | 0)) | 0;\n }\n c[(j + 4) >> 2] = e;\n }\n c[k >> 2] = c[i >> 2];\n c[(k + 4) >> 2] = c[(i + 4) >> 2];\n c[n >> 2] = c[j >> 2];\n c[(n + 4) >> 2] = c[(j + 4) >> 2];\n gg(h, k, n);\n hg(n, h);\n ig(k, h);\n if (jg(n, k) | 0) {\n f = (m + 4) | 0;\n do {\n kg(l, n);\n lg(m, a, l);\n e = c[m >> 2] | 0;\n if ((e | 0) != (c[f >> 2] | 0))\n do {\n Wc(e, d);\n e = ((c[m >> 2] | 0) + 44) | 0;\n c[m >> 2] = e;\n } while ((e | 0) != (c[f >> 2] | 0));\n mg(m);\n ng(n) | 0;\n } while (jg(n, k) | 0);\n }\n V = o;\n return;\n }\n function Ng(a) {\n a = a | 0;\n var b = 0, d = 0;\n Bg(a);\n b = c[(a + 4) >> 2] | 0;\n d = c[(a + 8) >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n Da(c[b >> 2] | 0, 4092);\n b = (b + 4) | 0;\n } while ((b | 0) != (d | 0));\n dg(a);\n return;\n }\n function Og(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 4924;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function Pg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4944;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function Qg(a, b) {\n a = a | 0;\n b = b | 0;\n return Tg(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Rg(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 4924;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n Vg(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function Sg(a) {\n a = a | 0;\n Rg(a);\n jp(a);\n return;\n }\n function Tg(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function Ug(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n if (a[b >> 0] | 0) {\n nc(c);\n a[b >> 0] = 0;\n }\n return d | 0;\n }\n function Vg(a) {\n a = a | 0;\n ze(a);\n return;\n }\n function Wg(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Xg(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Yg(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Zg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 12004 ? (a + 12) | 0 : 0) | 0;\n }\n function _g(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function $g(b) {\n b = b | 0;\n a[b >> 0] = 1;\n return;\n }\n function ah(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 4972;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function bh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4992;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function ch(a, b) {\n a = a | 0;\n b = b | 0;\n return fh(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function dh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 4972;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n hh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function eh(a) {\n a = a | 0;\n dh(a);\n jp(a);\n return;\n }\n function fh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return gh((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function gh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 328) | 0, b, qf(a, b, c) | 0) | 0;\n }\n function hh(a) {\n a = a | 0;\n ih((a + 4784) | 0);\n ze(a);\n return;\n }\n function ih(a) {\n a = a | 0;\n of(a);\n return;\n }\n function jh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function kh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function lh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 12827 ? (a + 12) | 0 : 0) | 0;\n }\n function mh(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function nh(a) {\n a = a | 0;\n cf(a);\n $g((a + 328) | 0);\n return;\n }\n function oh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 5020;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function ph(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5040;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function qh(a, b) {\n a = a | 0;\n b = b | 0;\n return th(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function rh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 5020;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n vh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function sh(a) {\n a = a | 0;\n rh(a);\n jp(a);\n return;\n }\n function th(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return uh((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function uh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 316) | 0, b, If(a, b, c) | 0) | 0;\n }\n function vh(a) {\n a = a | 0;\n wh((a + 4784) | 0);\n ze(a);\n return;\n }\n function wh(a) {\n a = a | 0;\n Hf(a);\n return;\n }\n function xh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function yh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function zh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 13672 ? (a + 12) | 0 : 0) | 0;\n }\n function Ah(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Bh(a) {\n a = a | 0;\n Cf(a);\n $g((a + 316) | 0);\n return;\n }\n function Ch(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 5068;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function Dh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5088;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function Eh(a, b) {\n a = a | 0;\n b = b | 0;\n return Hh(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Fh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 5068;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n Jh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function Gh(a) {\n a = a | 0;\n Fh(a);\n jp(a);\n return;\n }\n function Hh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ih((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function Ih(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return uh((a + 328) | 0, b, qf(a, b, c) | 0) | 0;\n }\n function Jh(a) {\n a = a | 0;\n Kh((a + 4784) | 0);\n ze(a);\n return;\n }\n function Kh(a) {\n a = a | 0;\n wh((a + 328) | 0);\n of(a);\n return;\n }\n function Lh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Mh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Nh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 14573 ? (a + 12) | 0 : 0) | 0;\n }\n function Oh(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ph(a) {\n a = a | 0;\n cf(a);\n Bh((a + 328) | 0);\n return;\n }\n function Qh(a) {\n a = a | 0;\n return (a + 20) | 0;\n }\n function Rh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n c[(a + 8) >> 2] = 0;\n return;\n }\n function Sh(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = -1;\n return;\n }\n function Th(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 4) | 0;\n g = d;\n f = eq(24) | 0;\n ii(f, b);\n c[g >> 2] = 0;\n c[e >> 2] = c[g >> 2];\n ji(a, f, e);\n V = d;\n return;\n }\n function Uh(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Vh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5116;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xh(a, e);\n V = d;\n return;\n }\n function Wh(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Xh(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Yh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Zh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n jp(a);\n return;\n }\n function _h(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 14966 ? (a + 12) | 0 : 0) | 0;\n }\n function $h(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ai(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5144;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n ci(a, e);\n V = d;\n return;\n }\n function bi(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function ci(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function di(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ei(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n hi(a);\n jp(a);\n }\n return;\n }\n function fi(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15127 ? (a + 12) | 0 : 0) | 0;\n }\n function gi(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function hi(a) {\n a = a | 0;\n return;\n }\n function ii(b, d) {\n b = b | 0;\n d = d | 0;\n Md(b);\n c[b >> 2] = 5172;\n c[(b + 4) >> 2] = d;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function ji(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5192;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n pi(a, e);\n V = d;\n return;\n }\n function ki(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n h = k;\n e = c[(b + 8) >> 2] | 0;\n i = c[(b + 12) >> 2] | 0;\n if ((e | 0) != (i | 0)) {\n j = (h + 4) | 0;\n do {\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n g = c[(e + 4) >> 2] | 0;\n c[j >> 2] = g;\n if (g | 0) {\n g = (g + 4) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n }\n d = $[c[((c[f >> 2] | 0) + 12) >> 2] & 63](f, d) | 0;\n Sd(h);\n e = (e + 8) | 0;\n } while ((e | 0) != (i | 0));\n }\n e = (b + 20) | 0;\n if (a[e >> 0] | 0) {\n a[e >> 0] = 0;\n ni(c[(b + 4) >> 2] | 0);\n }\n V = k;\n return d | 0;\n }\n function li(a) {\n a = a | 0;\n c[a >> 2] = 5172;\n Td((a + 8) | 0);\n Qd(a);\n return;\n }\n function mi(a) {\n a = a | 0;\n li(a);\n jp(a);\n return;\n }\n function ni(a) {\n a = a | 0;\n var b = 0;\n b = ((oi(c[a >> 2] | 0) | 0) & 255) << 24;\n b = (((oi(c[a >> 2] | 0) | 0) & 255) << 16) | b;\n b = b | (((oi(c[a >> 2] | 0) | 0) & 255) << 8);\n c[(a + 4) >> 2] = b | ((oi(c[a >> 2] | 0) | 0) & 255);\n return;\n }\n function oi(b) {\n b = b | 0;\n var d = 0, e = 0;\n d = c[b >> 2] | 0;\n e = (b + 8) | 0;\n b = c[e >> 2] | 0;\n c[e >> 2] = b + 1;\n return a[(d + b) >> 0] | 0;\n }\n function pi(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function qi(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ri(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function si(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15450 ? (a + 12) | 0 : 0) | 0;\n }\n function ti(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ui(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(180) | 0;\n wi(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n xi(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function vi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(180) | 0;\n Ui(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Vi(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function wi(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5220;\n c[(a + 4) >> 2] = b;\n yi((a + 8) | 0);\n return;\n }\n function xi(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5244;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function yi(b) {\n b = b | 0;\n xe(b, 32, 1, 8, 0);\n mc((b + 80) | 0, 32, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Ci((b + 164) | 0);\n return;\n }\n function zi(a) {\n a = a | 0;\n c[a >> 2] = 5220;\n Di((a + 8) | 0);\n le(a);\n return;\n }\n function Ai(a) {\n a = a | 0;\n zi(a);\n jp(a);\n return;\n }\n function Bi(a, b) {\n a = a | 0;\n b = b | 0;\n return Ei((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Ci(b) {\n b = b | 0;\n a[(b + 4) >> 0] = 0;\n return;\n }\n function Di(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function Ei(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 164) | 0;\n if (Fi(g) | 0) {\n d = Gi((b + 80) | 0, d, c[g >> 2] | 0, 0) | 0;\n c[f >> 2] = d;\n Se(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 4);\n c[f >> 2] = Ne(e) | 0;\n }\n Ji(g, f);\n V = h;\n return (e + 4) | 0;\n }\n function Fi(b) {\n b = b | 0;\n return ((a[(b + 4) >> 0] | 0) != 0) | 0;\n }\n function Gi(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n d = ((Ki(a, b, ((c[(a + 36) >> 2] | 0) + ((e * 44) | 0)) | 0) | 0) + d) | 0;\n b = c[(a + 24) >> 2] | 0;\n if ((d | 0) < 0)\n return (d + b) | 0;\n else\n return (d - (d >>> 0 < b >>> 0 ? 0 : b)) | 0;\n return 0;\n }\n function Hi(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Ii(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n if ((d | 0) > 0) {\n e = 0;\n do {\n a[(c + e) >> 0] = oi(b) | 0;\n e = (e + 1) | 0;\n } while ((e | 0) != (d | 0));\n }\n return;\n }\n function Ji(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = (b + 4) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n c[b >> 2] = c[d >> 2];\n return;\n }\n function Ki(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n d = Li(b, d) | 0;\n c[a >> 2] = d;\n do\n if (d) {\n if (d >>> 0 >= 32) {\n d = c[(a + 28) >> 2] | 0;\n break;\n }\n e = c[(a + 12) >> 2] | 0;\n if (d >>> 0 > e >>> 0) {\n e = (d - e) | 0;\n d = Li(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n e = (d << e) | (Mi(b, e) | 0);\n }\n else\n e = Li(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n d = c[a >> 2] | 0;\n if ((e | 0) < ((1 << (d + -1)) | 0)) {\n d = (e + 1 + (-1 << d)) | 0;\n break;\n }\n else {\n d = (e + 1) | 0;\n break;\n }\n }\n else\n d = Ni(b, (a + 48) | 0) | 0;\n while (0);\n return d | 0;\n }\n function Li(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = (a + 8) | 0;\n m = c[n >> 2] | 0;\n f = c[(b + 16) >> 2] | 0;\n if (f) {\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n l = m >>> 15;\n c[n >> 2] = l;\n j = ((d >>> 0) / (l >>> 0)) | 0;\n i = j >>> (c[(b + 40) >> 2] | 0);\n g = c[(f + (i << 2)) >> 2] | 0;\n i = ((c[(f + ((i + 1) << 2)) >> 2] | 0) + 1) | 0;\n h = (g + 1) | 0;\n k = c[(b + 8) >> 2] | 0;\n if (i >>> 0 > h >>> 0) {\n f = g;\n g = i;\n do {\n h = ((g + f) | 0) >>> 1;\n i = (c[(k + (h << 2)) >> 2] | 0) >>> 0 > j >>> 0;\n f = i ? f : h;\n g = i ? h : g;\n h = (f + 1) | 0;\n } while (g >>> 0 > h >>> 0);\n g = f;\n }\n f = q(c[(k + (g << 2)) >> 2] | 0, l) | 0;\n if ((g | 0) == (c[(b + 32) >> 2] | 0))\n h = m;\n else\n h = q(c[(k + (h << 2)) >> 2] | 0, l) | 0;\n }\n else {\n k = m >>> 15;\n c[n >> 2] = k;\n i = c[b >> 2] | 0;\n l = c[(b + 8) >> 2] | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n j = i >>> 1;\n f = 0;\n h = m;\n g = 0;\n do {\n o = q(c[(l + (j << 2)) >> 2] | 0, k) | 0;\n m = o >>> 0 > d >>> 0;\n h = m ? o : h;\n f = m ? f : o;\n g = m ? g : j;\n i = m ? j : i;\n j = ((g + i) | 0) >>> 1;\n } while ((j | 0) != (g | 0));\n }\n c[e >> 2] = d - f;\n o = (h - f) | 0;\n c[n >> 2] = o;\n if (o >>> 0 < 16777216)\n Oi(a);\n n = ((c[(b + 12) >> 2] | 0) + (g << 2)) | 0;\n c[n >> 2] = (c[n >> 2] | 0) + 1;\n n = (b + 28) | 0;\n o = ((c[n >> 2] | 0) + -1) | 0;\n c[n >> 2] = o;\n if (!o)\n Xc(b);\n return g | 0;\n }\n function Mi(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n if (b >>> 0 > 19) {\n d = (Pi(a) | 0) & 65535;\n return ((Mi(a, (b + -16) | 0) | 0) << 16) | d | 0;\n }\n e = (a + 4) | 0;\n f = c[e >> 2] | 0;\n g = (a + 8) | 0;\n d = (c[g >> 2] | 0) >>> b;\n c[g >> 2] = d;\n b = ((f >>> 0) / (d >>> 0)) | 0;\n c[e >> 2] = f - (q(b, d) | 0);\n if (d >>> 0 < 16777216)\n Oi(a);\n return b | 0;\n }\n function Ni(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n e = (a + 8) | 0;\n f = c[e >> 2] | 0;\n d = q(f >>> 13, c[(b + 8) >> 2] | 0) | 0;\n g = (a + 4) | 0;\n h = c[g >> 2] | 0;\n i = h >>> 0 >= d >>> 0;\n if (i) {\n c[g >> 2] = h - d;\n d = (f - d) | 0;\n c[e >> 2] = d;\n }\n else {\n c[e >> 2] = d;\n h = (b + 12) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n }\n if (d >>> 0 < 16777216)\n Oi(a);\n h = (b + 4) | 0;\n a = ((c[h >> 2] | 0) + -1) | 0;\n c[h >> 2] = a;\n if (!a)\n cd(b);\n return (i & 1) | 0;\n }\n function Oi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = (a + 4) | 0;\n d = (a + 8) | 0;\n e = c[b >> 2] | 0;\n do {\n e = (e << 8) | ((oi(c[a >> 2] | 0) | 0) & 255);\n c[b >> 2] = e;\n f = c[d >> 2] << 8;\n c[d >> 2] = f;\n } while (f >>> 0 < 16777216);\n return;\n }\n function Pi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[d >> 2] | 0;\n b = (a + 8) | 0;\n e = (c[b >> 2] | 0) >>> 16;\n c[b >> 2] = e;\n b = ((f >>> 0) / (e >>> 0)) | 0;\n c[d >> 2] = f - (q(b, e) | 0);\n Oi(a);\n return (b & 65535) | 0;\n }\n function Qi(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ri(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Si(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15904 ? (a + 12) | 0 : 0) | 0;\n }\n function Ti(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ui(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5272;\n c[(a + 4) >> 2] = b;\n Wi((a + 8) | 0);\n return;\n }\n function Vi(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5296;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Wi(b) {\n b = b | 0;\n xe(b, 32, 1, 8, 0);\n mc((b + 80) | 0, 32, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n _i((b + 164) | 0);\n return;\n }\n function Xi(a) {\n a = a | 0;\n c[a >> 2] = 5272;\n $i((a + 8) | 0);\n le(a);\n return;\n }\n function Yi(a) {\n a = a | 0;\n Xi(a);\n jp(a);\n return;\n }\n function Zi(a, b) {\n a = a | 0;\n b = b | 0;\n return aj((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function _i(b) {\n b = b | 0;\n a[(b + 4) >> 0] = 0;\n return;\n }\n function $i(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function aj(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 164) | 0;\n if (bj(g) | 0) {\n d = Gi((b + 80) | 0, d, c[g >> 2] | 0, 0) | 0;\n c[f >> 2] = d;\n We(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 4);\n c[f >> 2] = Re(e) | 0;\n }\n cj(g, f);\n V = h;\n return (e + 4) | 0;\n }\n function bj(b) {\n b = b | 0;\n return ((a[(b + 4) >> 0] | 0) != 0) | 0;\n }\n function cj(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = (b + 4) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n c[b >> 2] = c[d >> 2];\n return;\n }\n function dj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ej(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function fj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 16402 ? (a + 12) | 0 : 0) | 0;\n }\n function gj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function hj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(172) | 0;\n jj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n kj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function ij(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(176) | 0;\n Aj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Bj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function jj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5324;\n c[(a + 4) >> 2] = b;\n lj((a + 8) | 0);\n return;\n }\n function kj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5348;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function lj(b) {\n b = b | 0;\n xe(b, 8, 1, 8, 0);\n mc((b + 80) | 0, 8, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n pj((b + 162) | 0);\n return;\n }\n function mj(a) {\n a = a | 0;\n c[a >> 2] = 5324;\n qj((a + 8) | 0);\n le(a);\n return;\n }\n function nj(a) {\n a = a | 0;\n mj(a);\n jp(a);\n return;\n }\n function oj(a, b) {\n a = a | 0;\n b = b | 0;\n return rj((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function pj(b) {\n b = b | 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function qj(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function rj(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n e = g;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n f = (b + 162) | 0;\n if (sj(f) | 0) {\n c = (Gi((b + 80) | 0, c, a[f >> 0] | 0, 0) | 0) & 255;\n a[e >> 0] = c;\n tj(c, d);\n }\n else {\n Ii(Hi(c) | 0, d, 1);\n a[e >> 0] = uj(d) | 0;\n }\n vj(f, e);\n V = g;\n return (d + 1) | 0;\n }\n function sj(b) {\n b = b | 0;\n return ((a[(b + 1) >> 0] | 0) != 0) | 0;\n }\n function tj(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function uj(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function vj(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0;\n d = (b + 1) | 0;\n if (!(a[d >> 0] | 0))\n a[d >> 0] = 1;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function wj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function xj(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function yj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 16900 ? (a + 12) | 0 : 0) | 0;\n }\n function zj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Aj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5376;\n c[(a + 4) >> 2] = b;\n Cj((a + 8) | 0);\n return;\n }\n function Bj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5400;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Cj(b) {\n b = b | 0;\n xe(b, 16, 1, 8, 0);\n mc((b + 80) | 0, 16, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Gj((b + 162) | 0);\n return;\n }\n function Dj(a) {\n a = a | 0;\n c[a >> 2] = 5376;\n Hj((a + 8) | 0);\n le(a);\n return;\n }\n function Ej(a) {\n a = a | 0;\n Dj(a);\n jp(a);\n return;\n }\n function Fj(a, b) {\n a = a | 0;\n b = b | 0;\n return Ij((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Gj(b) {\n b = b | 0;\n a[(b + 2) >> 0] = 0;\n return;\n }\n function Hj(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function Ij(c, d, e) {\n c = c | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(c + 161) >> 0] | 0))\n oc((c + 80) | 0);\n g = (c + 162) | 0;\n if (Jj(g) | 0) {\n d = (Gi((c + 80) | 0, d, b[g >> 1] | 0, 0) | 0) & 65535;\n b[f >> 1] = d;\n Kj(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 2);\n b[f >> 1] = Lj(e) | 0;\n }\n Mj(g, f);\n V = h;\n return (e + 2) | 0;\n }\n function Jj(b) {\n b = b | 0;\n return ((a[(b + 2) >> 0] | 0) != 0) | 0;\n }\n function Kj(a, b) {\n a = a | 0;\n b = b | 0;\n Te(a, b);\n return;\n }\n function Lj(a) {\n a = a | 0;\n return Oe(a) | 0;\n }\n function Mj(c, d) {\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = (c + 2) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n b[c >> 1] = b[d >> 1] | 0;\n return;\n }\n function Nj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Oj(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Pj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 17398 ? (a + 12) | 0 : 0) | 0;\n }\n function Qj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Rj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(172) | 0;\n Tj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Uj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function Sj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(176) | 0;\n gk(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n hk(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function Tj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5428;\n c[(a + 4) >> 2] = b;\n Vj((a + 8) | 0);\n return;\n }\n function Uj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5452;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Vj(b) {\n b = b | 0;\n xe(b, 8, 1, 8, 0);\n mc((b + 80) | 0, 8, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Zj((b + 162) | 0);\n return;\n }\n function Wj(a) {\n a = a | 0;\n c[a >> 2] = 5428;\n _j((a + 8) | 0);\n le(a);\n return;\n }\n function Xj(a) {\n a = a | 0;\n Wj(a);\n jp(a);\n return;\n }\n function Yj(a, b) {\n a = a | 0;\n b = b | 0;\n return $j((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Zj(b) {\n b = b | 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function _j(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function $j(b, c, e) {\n b = b | 0;\n c = c | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 162) | 0;\n if (ak(g) | 0) {\n c = (Gi((b + 80) | 0, c, d[g >> 0] | 0, 0) | 0) & 255;\n a[f >> 0] = c;\n Ue(c, e);\n }\n else {\n Ii(Hi(c) | 0, e, 1);\n a[f >> 0] = Pe(e) | 0;\n }\n bk(g, f);\n V = h;\n return (e + 1) | 0;\n }\n function ak(b) {\n b = b | 0;\n return ((a[(b + 1) >> 0] | 0) != 0) | 0;\n }\n function bk(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0;\n d = (b + 1) | 0;\n if (!(a[d >> 0] | 0))\n a[d >> 0] = 1;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function ck(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function dk(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function ek(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 17896 ? (a + 12) | 0 : 0) | 0;\n }\n function fk(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function gk(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5480;\n c[(a + 4) >> 2] = b;\n ik((a + 8) | 0);\n return;\n }\n function hk(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5504;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function ik(b) {\n b = b | 0;\n xe(b, 16, 1, 8, 0);\n mc((b + 80) | 0, 16, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n mk((b + 162) | 0);\n return;\n }\n function jk(a) {\n a = a | 0;\n c[a >> 2] = 5480;\n nk((a + 8) | 0);\n le(a);\n return;\n }\n function kk(a) {\n a = a | 0;\n jk(a);\n jp(a);\n return;\n }\n function lk(a, b) {\n a = a | 0;\n b = b | 0;\n return ok((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function mk(b) {\n b = b | 0;\n a[(b + 2) >> 0] = 0;\n return;\n }\n function nk(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function ok(c, d, f) {\n c = c | 0;\n d = d | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0;\n i = V;\n V = (V + 16) | 0;\n g = i;\n if (!(a[(c + 161) >> 0] | 0))\n oc((c + 80) | 0);\n h = (c + 162) | 0;\n if (pk(h) | 0) {\n d = (Gi((c + 80) | 0, d, e[h >> 1] | 0, 0) | 0) & 65535;\n b[g >> 1] = d;\n Te(d, f);\n }\n else {\n Ii(Hi(d) | 0, f, 2);\n b[g >> 1] = Oe(f) | 0;\n }\n qk(h, g);\n V = i;\n return (f + 2) | 0;\n }\n function pk(b) {\n b = b | 0;\n return ((a[(b + 2) >> 0] | 0) != 0) | 0;\n }\n function qk(c, d) {\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = (c + 2) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n b[c >> 1] = b[d >> 1] | 0;\n return;\n }\n function rk(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function sk(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function tk(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 18394 ? (a + 12) | 0 : 0) | 0;\n }\n function uk(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function vk() {\n return;\n }\n function wk(a) {\n a = a | 0;\n return Ek(a) | 0;\n }\n function xk() {\n return 0;\n }\n function yk() {\n return 0;\n }\n function zk(a) {\n a = a | 0;\n if (a | 0) {\n Fk(a);\n jp(a);\n }\n return;\n }\n function Ak() {\n return Gk() | 0;\n }\n function Bk() {\n return Hk() | 0;\n }\n function Ck() {\n return Ik() | 0;\n }\n function Dk() {\n return 0;\n }\n function Ek(a) {\n a = a | 0;\n return 3360;\n }\n function Fk(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n e = b;\n c[e >> 2] = c[a >> 2];\n c[a >> 2] = 0;\n d = (a + 4) | 0;\n c[(e + 4) >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n wa(e);\n d = (a + 8) | 0;\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n f = (a + 12) | 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Ga(e);\n Ga(d);\n wa(a);\n V = b;\n return;\n }\n function Gk() {\n return 3360;\n }\n function Hk() {\n return 3368;\n }\n function Ik() {\n return 3384;\n }\n function Jk() {\n return 18579;\n }\n function Kk() {\n return 18582;\n }\n function Lk() {\n return 18584;\n }\n function Mk() {\n var a = 0;\n a = eq(16) | 0;\n Tk(a);\n return a | 0;\n }\n function Nk(a) {\n a = a | 0;\n var b = 0, c = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n e = Ak() | 0;\n d = Pk(c) | 0;\n c = Qk(c) | 0;\n E(e | 0, d | 0, c | 0, Jk() | 0, 12, a | 0);\n V = b;\n return;\n }\n function Ok(a) {\n a = a | 0;\n return Rk(Y[a & 3]() | 0) | 0;\n }\n function Pk(a) {\n a = a | 0;\n return 1;\n }\n function Qk(a) {\n a = a | 0;\n return Sk() | 0;\n }\n function Rk(a) {\n a = a | 0;\n return a | 0;\n }\n function Sk() {\n return 5524;\n }\n function Tk(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n return;\n }\n function Uk(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = Wk(f) | 0;\n f = Xk(f) | 0;\n b = bl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 4, Yk(e) | 0, 0);\n V = d;\n return;\n }\n function Vk(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = Zk(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = _k(d) | 0;\n g = $k(e) | 0;\n ea[b & 15](a, f, g);\n return;\n }\n function Wk(a) {\n a = a | 0;\n return 4;\n }\n function Xk(a) {\n a = a | 0;\n return al() | 0;\n }\n function Yk(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Zk(a) {\n a = a | 0;\n return a | 0;\n }\n function _k(a) {\n a = a | 0;\n return a | 0;\n }\n function $k(a) {\n a = a | 0;\n return a | 0;\n }\n function al() {\n return 144;\n }\n function bl() {\n return 18587;\n }\n function cl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = el(f) | 0;\n f = fl(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 7, gl(e) | 0, 0);\n V = d;\n return;\n }\n function dl(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Zk(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = hl(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function el(a) {\n a = a | 0;\n return 3;\n }\n function fl(a) {\n a = a | 0;\n return il() | 0;\n }\n function gl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function hl(a) {\n a = a | 0;\n return a | 0;\n }\n function il() {\n return 5528;\n }\n function jl() {\n return 18593;\n }\n function kl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = ml(f) | 0;\n f = nl(f) | 0;\n b = rl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 41, ol(e) | 0, 0);\n V = d;\n return;\n }\n function ll(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n e = V;\n V = (V + 16) | 0;\n d = e;\n g = Zk(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n c[d >> 2] = Z[b & 15](a) | 0;\n g = pl(d) | 0;\n V = e;\n return g | 0;\n }\n function ml(a) {\n a = a | 0;\n return 2;\n }\n function nl(a) {\n a = a | 0;\n return ql() | 0;\n }\n function ol(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function pl(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function ql() {\n return 5540;\n }\n function rl() {\n return 18598;\n }\n function sl() {\n return;\n }\n function tl(a) {\n a = a | 0;\n return Al(a) | 0;\n }\n function ul() {\n return 0;\n }\n function vl() {\n return 0;\n }\n function wl(a) {\n a = a | 0;\n if (a | 0) {\n Bl(a);\n jp(a);\n }\n return;\n }\n function xl() {\n return Cl() | 0;\n }\n function yl() {\n return Dl() | 0;\n }\n function zl() {\n return El() | 0;\n }\n function Al(a) {\n a = a | 0;\n return 3400;\n }\n function Bl(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n e = b;\n c[e >> 2] = c[a >> 2];\n c[a >> 2] = 0;\n d = (a + 4) | 0;\n c[(e + 4) >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n Wh(e);\n d = (a + 16) | 0;\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n f = (a + 20) | 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Uh(e);\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Uh(e);\n Uh(d);\n bi((a + 8) | 0);\n Wh(a);\n V = b;\n return;\n }\n function Cl() {\n return 3400;\n }\n function Dl() {\n return 3408;\n }\n function El() {\n return 3424;\n }\n function Fl() {\n var a = 0;\n a = eq(24) | 0;\n Ml(a);\n return a | 0;\n }\n function Gl(a) {\n a = a | 0;\n var b = 0, c = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n e = xl() | 0;\n d = Il(c) | 0;\n c = Jl(c) | 0;\n E(e | 0, d | 0, c | 0, Jk() | 0, 13, a | 0);\n V = b;\n return;\n }\n function Hl(a) {\n a = a | 0;\n return Kl(Y[a & 3]() | 0) | 0;\n }\n function Il(a) {\n a = a | 0;\n return 1;\n }\n function Jl(a) {\n a = a | 0;\n return Ll() | 0;\n }\n function Kl(a) {\n a = a | 0;\n return a | 0;\n }\n function Ll() {\n return 5548;\n }\n function Ml(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n return;\n }\n function Nl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = Pl(f) | 0;\n f = Ql(f) | 0;\n b = bl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 5, Rl(e) | 0, 0);\n V = d;\n return;\n }\n function Ol(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = Sl(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = _k(d) | 0;\n g = $k(e) | 0;\n ea[b & 15](a, f, g);\n return;\n }\n function Pl(a) {\n a = a | 0;\n return 4;\n }\n function Ql(a) {\n a = a | 0;\n return Tl() | 0;\n }\n function Rl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Sl(a) {\n a = a | 0;\n return a | 0;\n }\n function Tl() {\n return 160;\n }\n function Ul(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = Wl(f) | 0;\n f = Xl(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 8, Yl(e) | 0, 0);\n V = d;\n return;\n }\n function Vl(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Sl(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = $k(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function Wl(a) {\n a = a | 0;\n return 3;\n }\n function Xl(a) {\n a = a | 0;\n return Zl() | 0;\n }\n function Yl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Zl() {\n return 5552;\n }\n function _l(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = am(f) | 0;\n f = bm(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 9, cm(e) | 0, 0);\n V = d;\n return;\n }\n function $l(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Sl(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = hl(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function am(a) {\n a = a | 0;\n return 3;\n }\n function bm(a) {\n a = a | 0;\n return dm() | 0;\n }\n function cm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function dm() {\n return 5564;\n }\n function em() {\n ja();\n return;\n }\n function fm() {\n gm();\n return;\n }\n function gm() {\n hm(22144);\n return;\n }\n function hm(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + 16) | 0;\n c[b >> 2] = a;\n im();\n V = b;\n return;\n }\n function im() {\n M(jm() | 0, 18653);\n C(km() | 0, 18658, 1, 1, 0);\n lm(18663);\n mm(18668);\n nm(18680);\n om(18694);\n pm(18700);\n qm(18715);\n rm(18719);\n sm(18732);\n tm(18737);\n um(18751);\n vm(18757);\n K(wm() | 0, 18764);\n K(xm() | 0, 18776);\n L(ym() | 0, 4, 18809);\n L(zm() | 0, 2, 18822);\n L(Am() | 0, 4, 18837);\n G(Bm() | 0, 18852);\n Cm(18868);\n Dm(18898);\n Em(18935);\n Fm(18974);\n Gm(19005);\n Hm(19045);\n Im(19074);\n Jm(19112);\n Km(19142);\n Dm(19181);\n Em(19213);\n Fm(19246);\n Gm(19279);\n Hm(19313);\n Im(19346);\n Lm(19380);\n Mm(19411);\n Nm(19443);\n return;\n }\n function jm() {\n return _n() | 0;\n }\n function km() {\n return Zn() | 0;\n }\n function lm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Xn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, ((-128 << 24) >> 24) | 0, ((127 << 24) >> 24) | 0);\n V = b;\n return;\n }\n function mm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Vn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, ((-128 << 24) >> 24) | 0, ((127 << 24) >> 24) | 0);\n V = b;\n return;\n }\n function nm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Tn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, 0, 255);\n V = b;\n return;\n }\n function om(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Rn() | 0;\n I(a | 0, c[d >> 2] | 0, 2, ((-32768 << 16) >> 16) | 0, ((32767 << 16) >> 16) | 0);\n V = b;\n return;\n }\n function pm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Pn() | 0;\n I(a | 0, c[d >> 2] | 0, 2, 0, 65535);\n V = b;\n return;\n }\n function qm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Nn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, -2147483648, 2147483647);\n V = b;\n return;\n }\n function rm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Ln() | 0;\n I(a | 0, c[d >> 2] | 0, 4, 0, -1);\n V = b;\n return;\n }\n function sm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Jn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, -2147483648, 2147483647);\n V = b;\n return;\n }\n function tm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Hn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, 0, -1);\n V = b;\n return;\n }\n function um(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Fn() | 0;\n H(a | 0, c[d >> 2] | 0, 4);\n V = b;\n return;\n }\n function vm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Dn() | 0;\n H(a | 0, c[d >> 2] | 0, 8);\n V = b;\n return;\n }\n function wm() {\n return Cn() | 0;\n }\n function xm() {\n return Bn() | 0;\n }\n function ym() {\n return An() | 0;\n }\n function zm() {\n return zn() | 0;\n }\n function Am() {\n return yn() | 0;\n }\n function Bm() {\n return xn() | 0;\n }\n function Cm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = un() | 0;\n a = vn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Dm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = rn() | 0;\n a = sn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Em(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = on() | 0;\n a = pn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Fm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = ln() | 0;\n a = mn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Gm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = hn() | 0;\n a = jn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Hm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = en() | 0;\n a = fn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Im(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = bn() | 0;\n a = cn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Jm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = _m() | 0;\n a = $m() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Km(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Xm() | 0;\n a = Ym() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Lm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Um() | 0;\n a = Vm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Mm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Rm() | 0;\n a = Sm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Nm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Om() | 0;\n a = Pm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Om() {\n return Qm() | 0;\n }\n function Pm() {\n return 7;\n }\n function Qm() {\n return 3440;\n }\n function Rm() {\n return Tm() | 0;\n }\n function Sm() {\n return 7;\n }\n function Tm() {\n return 3448;\n }\n function Um() {\n return Wm() | 0;\n }\n function Vm() {\n return 6;\n }\n function Wm() {\n return 3456;\n }\n function Xm() {\n return Zm() | 0;\n }\n function Ym() {\n return 5;\n }\n function Zm() {\n return 3464;\n }\n function _m() {\n return an() | 0;\n }\n function $m() {\n return 4;\n }\n function an() {\n return 3472;\n }\n function bn() {\n return dn() | 0;\n }\n function cn() {\n return 5;\n }\n function dn() {\n return 3480;\n }\n function en() {\n return gn() | 0;\n }\n function fn() {\n return 4;\n }\n function gn() {\n return 3488;\n }\n function hn() {\n return kn() | 0;\n }\n function jn() {\n return 3;\n }\n function kn() {\n return 3496;\n }\n function ln() {\n return nn() | 0;\n }\n function mn() {\n return 2;\n }\n function nn() {\n return 3504;\n }\n function on() {\n return qn() | 0;\n }\n function pn() {\n return 1;\n }\n function qn() {\n return 3512;\n }\n function rn() {\n return tn() | 0;\n }\n function sn() {\n return 0;\n }\n function tn() {\n return 3520;\n }\n function un() {\n return wn() | 0;\n }\n function vn() {\n return 0;\n }\n function wn() {\n return 3528;\n }\n function xn() {\n return 3536;\n }\n function yn() {\n return 3544;\n }\n function zn() {\n return 3576;\n }\n function An() {\n return 3600;\n }\n function Bn() {\n return 3624;\n }\n function Cn() {\n return 3648;\n }\n function Dn() {\n return En() | 0;\n }\n function En() {\n return 4144;\n }\n function Fn() {\n return Gn() | 0;\n }\n function Gn() {\n return 4136;\n }\n function Hn() {\n return In() | 0;\n }\n function In() {\n return 4128;\n }\n function Jn() {\n return Kn() | 0;\n }\n function Kn() {\n return 4120;\n }\n function Ln() {\n return Mn() | 0;\n }\n function Mn() {\n return 4112;\n }\n function Nn() {\n return On() | 0;\n }\n function On() {\n return 4104;\n }\n function Pn() {\n return Qn() | 0;\n }\n function Qn() {\n return 4096;\n }\n function Rn() {\n return Sn() | 0;\n }\n function Sn() {\n return 4088;\n }\n function Tn() {\n return Un() | 0;\n }\n function Un() {\n return 4072;\n }\n function Vn() {\n return Wn() | 0;\n }\n function Wn() {\n return 4080;\n }\n function Xn() {\n return Yn() | 0;\n }\n function Yn() {\n return 4064;\n }\n function Zn() {\n return 4056;\n }\n function _n() {\n return 4040;\n }\n function $n(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n d = (b + 8) | 0;\n e = (b + 4) | 0;\n f = b;\n c[f >> 2] = a;\n c[e >> 2] = c[f >> 2];\n c[d >> 2] = c[((c[e >> 2] | 0) + 4) >> 2];\n a = Jo(c[d >> 2] | 0) | 0;\n V = b;\n return a | 0;\n }\n function ao() {\n return 21636;\n }\n function bo(a) {\n a = a | 0;\n return (((a + -48) | 0) >>> 0 < 10) | 0;\n }\n function co() {\n return 5576;\n }\n function eo(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0, e = 0;\n d = a[b >> 0] | 0;\n e = a[c >> 0] | 0;\n if ((d << 24) >> 24 == 0 ? 1 : (d << 24) >> 24 != (e << 24) >> 24)\n b = e;\n else {\n do {\n b = (b + 1) | 0;\n c = (c + 1) | 0;\n d = a[b >> 0] | 0;\n e = a[c >> 0] | 0;\n } while (!((d << 24) >> 24 == 0 ? 1 : (d << 24) >> 24 != (e << 24) >> 24));\n b = e;\n }\n return ((d & 255) - (b & 255)) | 0;\n }\n function fo(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = b;\n a: do\n if (!(f & 3))\n e = 5;\n else {\n d = f;\n while (1) {\n if (!(a[b >> 0] | 0)) {\n b = d;\n break a;\n }\n b = (b + 1) | 0;\n d = b;\n if (!(d & 3)) {\n e = 5;\n break;\n }\n }\n }\n while (0);\n if ((e | 0) == 5) {\n while (1) {\n d = c[b >> 2] | 0;\n if (!(((d & -2139062144) ^ -2139062144) & (d + -16843009)))\n b = (b + 4) | 0;\n else\n break;\n }\n if (((d & 255) << 24) >> 24)\n do\n b = (b + 1) | 0;\n while ((a[b >> 0] | 0) != 0);\n }\n return (b - f) | 0;\n }\n function go(a) {\n a = a | 0;\n return;\n }\n function ho(a) {\n a = a | 0;\n return 1;\n }\n function io(b) {\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 74) | 0;\n e = a[d >> 0] | 0;\n a[d >> 0] = (e + 255) | e;\n d = c[b >> 2] | 0;\n if (!(d & 8)) {\n c[(b + 8) >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n e = c[(b + 44) >> 2] | 0;\n c[(b + 28) >> 2] = e;\n c[(b + 20) >> 2] = e;\n c[(b + 16) >> 2] = e + (c[(b + 48) >> 2] | 0);\n b = 0;\n }\n else {\n c[b >> 2] = d | 32;\n b = -1;\n }\n return b | 0;\n }\n function jo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0;\n f = (e + 16) | 0;\n g = c[f >> 2] | 0;\n if (!g)\n if (!(io(e) | 0)) {\n g = c[f >> 2] | 0;\n h = 5;\n }\n else\n f = 0;\n else\n h = 5;\n a: do\n if ((h | 0) == 5) {\n j = (e + 20) | 0;\n i = c[j >> 2] | 0;\n f = i;\n if (((g - i) | 0) >>> 0 < d >>> 0) {\n f = aa[c[(e + 36) >> 2] & 7](e, b, d) | 0;\n break;\n }\n b: do\n if (((a[(e + 75) >> 0] | 0) < 0) | ((d | 0) == 0)) {\n h = 0;\n g = b;\n }\n else {\n i = d;\n while (1) {\n g = (i + -1) | 0;\n if ((a[(b + g) >> 0] | 0) == 10)\n break;\n if (!g) {\n h = 0;\n g = b;\n break b;\n }\n else\n i = g;\n }\n f = aa[c[(e + 36) >> 2] & 7](e, b, i) | 0;\n if (f >>> 0 < i >>> 0)\n break a;\n h = i;\n g = (b + i) | 0;\n d = (d - i) | 0;\n f = c[j >> 2] | 0;\n }\n while (0);\n ur(f | 0, g | 0, d | 0) | 0;\n c[j >> 2] = (c[j >> 2] | 0) + d;\n f = (h + d) | 0;\n }\n while (0);\n return f | 0;\n }\n function ko(a, b) {\n a = a | 0;\n b = b | 0;\n if (!b)\n b = 0;\n else\n b = lo(c[b >> 2] | 0, c[(b + 4) >> 2] | 0, a) | 0;\n return ((b | 0) == 0 ? a : b) | 0;\n }\n function lo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n o = ((c[b >> 2] | 0) + 1794895138) | 0;\n h = mo(c[(b + 8) >> 2] | 0, o) | 0;\n f = mo(c[(b + 12) >> 2] | 0, o) | 0;\n g = mo(c[(b + 16) >> 2] | 0, o) | 0;\n a: do\n if ((h >>> 0 < (d >>> 2) >>> 0\n ? ((n = (d - (h << 2)) | 0), (f >>> 0 < n >>> 0) & (g >>> 0 < n >>> 0))\n : 0)\n ? (((g | f) & 3) | 0) == 0\n : 0) {\n n = f >>> 2;\n m = g >>> 2;\n l = 0;\n while (1) {\n j = h >>> 1;\n k = (l + j) | 0;\n i = k << 1;\n g = (i + n) | 0;\n f = mo(c[(b + (g << 2)) >> 2] | 0, o) | 0;\n g = mo(c[(b + ((g + 1) << 2)) >> 2] | 0, o) | 0;\n if (!((g >>> 0 < d >>> 0) & (f >>> 0 < ((d - g) | 0) >>> 0))) {\n f = 0;\n break a;\n }\n if (a[(b + (g + f)) >> 0] | 0) {\n f = 0;\n break a;\n }\n f = eo(e, (b + g) | 0) | 0;\n if (!f)\n break;\n f = (f | 0) < 0;\n if ((h | 0) == 1) {\n f = 0;\n break a;\n }\n l = f ? l : k;\n h = f ? j : (h - j) | 0;\n }\n f = (i + m) | 0;\n g = mo(c[(b + (f << 2)) >> 2] | 0, o) | 0;\n f = mo(c[(b + ((f + 1) << 2)) >> 2] | 0, o) | 0;\n if ((f >>> 0 < d >>> 0) & (g >>> 0 < ((d - f) | 0) >>> 0))\n f = (a[(b + (f + g)) >> 0] | 0) == 0 ? (b + f) | 0 : 0;\n else\n f = 0;\n }\n else\n f = 0;\n while (0);\n return f | 0;\n }\n function mo(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n c = tr(a | 0) | 0;\n return ((b | 0) == 0 ? a : c) | 0;\n }\n function no(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = d & 255;\n f = (e | 0) != 0;\n a: do\n if (f & (((b & 3) | 0) != 0)) {\n g = d & 255;\n while (1) {\n if ((a[b >> 0] | 0) == (g << 24) >> 24) {\n g = 6;\n break a;\n }\n b = (b + 1) | 0;\n e = (e + -1) | 0;\n f = (e | 0) != 0;\n if (!(f & (((b & 3) | 0) != 0))) {\n g = 5;\n break;\n }\n }\n }\n else\n g = 5;\n while (0);\n if ((g | 0) == 5)\n if (f)\n g = 6;\n else\n b = 0;\n b: do\n if ((g | 0) == 6) {\n if ((a[b >> 0] | 0) != ((d & 255) << 24) >> 24) {\n f = q(h, 16843009) | 0;\n c: do\n if (e >>> 0 > 3)\n do {\n h = c[b >> 2] ^ f;\n if ((((h & -2139062144) ^ -2139062144) & (h + -16843009)) | 0)\n break c;\n b = (b + 4) | 0;\n e = (e + -4) | 0;\n } while (e >>> 0 > 3);\n while (0);\n }\n if (!e)\n b = 0;\n else {\n f = d & 255;\n while (1) {\n if ((a[b >> 0] | 0) == (f << 24) >> 24)\n break b;\n e = (e + -1) | 0;\n if (!e) {\n b = 0;\n break;\n }\n else\n b = (b + 1) | 0;\n }\n }\n }\n while (0);\n return b | 0;\n }\n function oo(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return ro(a, b, c, 1, 8) | 0;\n }\n function po(b, e, f, g, h, i) {\n b = b | 0;\n e = +e;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n i = i | 0;\n var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0.0, s = 0, t = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0;\n H = V;\n V = (V + 560) | 0;\n l = (H + 32) | 0;\n w = (H + 536) | 0;\n G = H;\n F = G;\n m = (H + 540) | 0;\n c[w >> 2] = 0;\n E = (m + 12) | 0;\n Do(e) | 0;\n j = u() | 0;\n if ((j | 0) < 0) {\n e = -e;\n Do(e) | 0;\n D = 1;\n C = 20247;\n j = u() | 0;\n }\n else {\n D = (((h & 2049) | 0) != 0) & 1;\n C = ((h & 2048) | 0) == 0 ? (((h & 1) | 0) == 0 ? 20248 : 20253) : 20250;\n }\n do\n if ((0 == 0) & (((j & 2146435072) | 0) == 2146435072)) {\n G = ((i & 32) | 0) != 0;\n j = (D + 3) | 0;\n zo(b, 32, f, j, h & -65537);\n to(b, C, D);\n to(b, (e != e) | (0.0 != 0.0) ? (G ? 20274 : 20278) : G ? 20266 : 20270, 3);\n zo(b, 32, f, j, h ^ 8192);\n }\n else {\n r = +Eo(e, w) * 2.0;\n j = r != 0.0;\n if (j)\n c[w >> 2] = (c[w >> 2] | 0) + -1;\n v = i | 32;\n if ((v | 0) == 97) {\n o = i & 32;\n s = (o | 0) == 0 ? C : (C + 9) | 0;\n p = D | 2;\n j = (12 - g) | 0;\n do\n if (!((g >>> 0 > 11) | ((j | 0) == 0))) {\n e = 8.0;\n do {\n j = (j + -1) | 0;\n e = e * 16.0;\n } while ((j | 0) != 0);\n if ((a[s >> 0] | 0) == 45) {\n e = -(e + (-r - e));\n break;\n }\n else {\n e = r + e - e;\n break;\n }\n }\n else\n e = r;\n while (0);\n k = c[w >> 2] | 0;\n j = (k | 0) < 0 ? (0 - k) | 0 : k;\n j = yo(j, (((j | 0) < 0) << 31) >> 31, E) | 0;\n if ((j | 0) == (E | 0)) {\n j = (m + 11) | 0;\n a[j >> 0] = 48;\n }\n a[(j + -1) >> 0] = ((k >> 31) & 2) + 43;\n n = (j + -2) | 0;\n a[n >> 0] = i + 15;\n k = (g | 0) < 1;\n l = ((h & 8) | 0) == 0;\n m = G;\n do {\n D = ~~e;\n j = (m + 1) | 0;\n a[m >> 0] = o | d[(640 + D) >> 0];\n e = (e - +(D | 0)) * 16.0;\n if (((j - F) | 0) == 1 ? !(l & (k & (e == 0.0))) : 0) {\n a[j >> 0] = 46;\n m = (m + 2) | 0;\n }\n else\n m = j;\n } while (e != 0.0);\n if ((g | 0) != 0 ? ((-2 - F + m) | 0) < (g | 0) : 0) {\n k = E;\n l = n;\n j = (g + 2 + k - l) | 0;\n }\n else {\n k = E;\n l = n;\n j = (k - F - l + m) | 0;\n }\n E = (j + p) | 0;\n zo(b, 32, f, E, h);\n to(b, s, p);\n zo(b, 48, f, E, h ^ 65536);\n F = (m - F) | 0;\n to(b, G, F);\n G = (k - l) | 0;\n zo(b, 48, (j - (F + G)) | 0, 0, 0);\n to(b, n, G);\n zo(b, 32, f, E, h ^ 8192);\n j = E;\n break;\n }\n k = (g | 0) < 0 ? 6 : g;\n if (j) {\n j = ((c[w >> 2] | 0) + -28) | 0;\n c[w >> 2] = j;\n e = r * 268435456.0;\n }\n else {\n e = r;\n j = c[w >> 2] | 0;\n }\n B = (j | 0) < 0 ? l : (l + 288) | 0;\n l = B;\n do {\n z = ~~e >>> 0;\n c[l >> 2] = z;\n l = (l + 4) | 0;\n e = (e - +(z >>> 0)) * 1.0e9;\n } while (e != 0.0);\n z = B;\n if ((j | 0) > 0) {\n o = B;\n while (1) {\n n = (j | 0) < 29 ? j : 29;\n j = (l + -4) | 0;\n if (j >>> 0 >= o >>> 0) {\n m = 0;\n do {\n t = rr(c[j >> 2] | 0, 0, n | 0) | 0;\n t = lr(t | 0, u() | 0, m | 0, 0) | 0;\n x = u() | 0;\n m = pr(t | 0, x | 0, 1e9, 0) | 0;\n y = kr(m | 0, u() | 0, 1e9, 0) | 0;\n y = mr(t | 0, x | 0, y | 0, u() | 0) | 0;\n u() | 0;\n c[j >> 2] = y;\n j = (j + -4) | 0;\n } while (j >>> 0 >= o >>> 0);\n if (m) {\n y = (o + -4) | 0;\n c[y >> 2] = m;\n m = y;\n }\n else\n m = o;\n }\n else\n m = o;\n a: do\n if (l >>> 0 > m >>> 0) {\n j = l;\n while (1) {\n l = (j + -4) | 0;\n if (c[l >> 2] | 0) {\n l = j;\n break a;\n }\n if (l >>> 0 > m >>> 0)\n j = l;\n else\n break;\n }\n }\n while (0);\n j = ((c[w >> 2] | 0) - n) | 0;\n c[w >> 2] = j;\n if ((j | 0) > 0)\n o = m;\n else\n break;\n }\n }\n else\n m = B;\n if ((j | 0) < 0) {\n g = (((((k + 25) | 0) / 9) | 0) + 1) | 0;\n t = (v | 0) == 102;\n do {\n s = (0 - j) | 0;\n s = (s | 0) < 9 ? s : 9;\n if (m >>> 0 < l >>> 0) {\n n = ((1 << s) + -1) | 0;\n o = 1e9 >>> s;\n p = 0;\n j = m;\n do {\n y = c[j >> 2] | 0;\n c[j >> 2] = (y >>> s) + p;\n p = q(y & n, o) | 0;\n j = (j + 4) | 0;\n } while (j >>> 0 < l >>> 0);\n m = (c[m >> 2] | 0) == 0 ? (m + 4) | 0 : m;\n if (p) {\n c[l >> 2] = p;\n l = (l + 4) | 0;\n }\n }\n else\n m = (c[m >> 2] | 0) == 0 ? (m + 4) | 0 : m;\n j = t ? B : m;\n l = (((l - j) >> 2) | 0) > (g | 0) ? (j + (g << 2)) | 0 : l;\n j = ((c[w >> 2] | 0) + s) | 0;\n c[w >> 2] = j;\n } while ((j | 0) < 0);\n t = m;\n }\n else\n t = m;\n if (t >>> 0 < l >>> 0) {\n j = (((z - t) >> 2) * 9) | 0;\n n = c[t >> 2] | 0;\n if (n >>> 0 >= 10) {\n m = 10;\n do {\n m = (m * 10) | 0;\n j = (j + 1) | 0;\n } while (n >>> 0 >= m >>> 0);\n }\n }\n else\n j = 0;\n x = (v | 0) == 103;\n y = (k | 0) != 0;\n m = (k - ((v | 0) == 102 ? 0 : j) + (((y & x) << 31) >> 31)) | 0;\n if ((m | 0) < ((((((l - z) >> 2) * 9) | 0) + -9) | 0)) {\n w = (m + 9216) | 0;\n m = ((w | 0) / 9) | 0;\n g = (B + 4 + ((m + -1024) << 2)) | 0;\n m = (w - ((m * 9) | 0)) | 0;\n if ((m | 0) < 8) {\n n = 10;\n while (1) {\n n = (n * 10) | 0;\n if ((m | 0) < 7)\n m = (m + 1) | 0;\n else\n break;\n }\n }\n else\n n = 10;\n p = c[g >> 2] | 0;\n m = ((p >>> 0) / (n >>> 0)) | 0;\n s = (p - (q(m, n) | 0)) | 0;\n o = ((g + 4) | 0) == (l | 0);\n if (!(o & ((s | 0) == 0))) {\n r = ((m & 1) | 0) == 0 ? 9007199254740992.0 : 9007199254740994.0;\n w = n >>> 1;\n e = s >>> 0 < w >>> 0 ? 0.5 : o & ((s | 0) == (w | 0)) ? 1.0 : 1.5;\n if (D) {\n w = (a[C >> 0] | 0) == 45;\n e = w ? -e : e;\n r = w ? -r : r;\n }\n m = (p - s) | 0;\n c[g >> 2] = m;\n if (r + e != r) {\n w = (m + n) | 0;\n c[g >> 2] = w;\n if (w >>> 0 > 999999999) {\n n = g;\n j = t;\n while (1) {\n m = (n + -4) | 0;\n c[n >> 2] = 0;\n if (m >>> 0 < j >>> 0) {\n j = (j + -4) | 0;\n c[j >> 2] = 0;\n }\n w = ((c[m >> 2] | 0) + 1) | 0;\n c[m >> 2] = w;\n if (w >>> 0 > 999999999)\n n = m;\n else {\n n = j;\n break;\n }\n }\n }\n else {\n m = g;\n n = t;\n }\n j = (((z - n) >> 2) * 9) | 0;\n p = c[n >> 2] | 0;\n if (p >>> 0 >= 10) {\n o = 10;\n do {\n o = (o * 10) | 0;\n j = (j + 1) | 0;\n } while (p >>> 0 >= o >>> 0);\n }\n }\n else {\n m = g;\n n = t;\n }\n }\n else {\n m = g;\n n = t;\n }\n w = (m + 4) | 0;\n l = l >>> 0 > w >>> 0 ? w : l;\n }\n else\n n = t;\n g = (0 - j) | 0;\n b: do\n if (l >>> 0 > n >>> 0)\n while (1) {\n m = (l + -4) | 0;\n if (c[m >> 2] | 0) {\n w = l;\n v = 1;\n break b;\n }\n if (m >>> 0 > n >>> 0)\n l = m;\n else {\n w = m;\n v = 0;\n break;\n }\n }\n else {\n w = l;\n v = 0;\n }\n while (0);\n do\n if (x) {\n k = (k + ((y ^ 1) & 1)) | 0;\n if (((k | 0) > (j | 0)) & ((j | 0) > -5)) {\n o = (i + -1) | 0;\n k = (k + -1 - j) | 0;\n }\n else {\n o = (i + -2) | 0;\n k = (k + -1) | 0;\n }\n if (!(h & 8)) {\n if (v ? ((A = c[(w + -4) >> 2] | 0), (A | 0) != 0) : 0)\n if (!((A >>> 0) % 10 | 0)) {\n m = 0;\n l = 10;\n do {\n l = (l * 10) | 0;\n m = (m + 1) | 0;\n } while (!((A >>> 0) % (l >>> 0) | 0 | 0));\n }\n else\n m = 0;\n else\n m = 9;\n l = (((((w - z) >> 2) * 9) | 0) + -9) | 0;\n if ((o | 32 | 0) == 102) {\n i = (l - m) | 0;\n i = (i | 0) > 0 ? i : 0;\n k = (k | 0) < (i | 0) ? k : i;\n break;\n }\n else {\n i = (l + j - m) | 0;\n i = (i | 0) > 0 ? i : 0;\n k = (k | 0) < (i | 0) ? k : i;\n break;\n }\n }\n }\n else\n o = i;\n while (0);\n t = (k | 0) != 0;\n p = t ? 1 : (h >>> 3) & 1;\n s = (o | 32 | 0) == 102;\n if (s) {\n x = 0;\n j = (j | 0) > 0 ? j : 0;\n }\n else {\n l = (j | 0) < 0 ? g : j;\n l = yo(l, (((l | 0) < 0) << 31) >> 31, E) | 0;\n m = E;\n if (((m - l) | 0) < 2)\n do {\n l = (l + -1) | 0;\n a[l >> 0] = 48;\n } while (((m - l) | 0) < 2);\n a[(l + -1) >> 0] = ((j >> 31) & 2) + 43;\n j = (l + -2) | 0;\n a[j >> 0] = o;\n x = j;\n j = (m - j) | 0;\n }\n j = (D + 1 + k + p + j) | 0;\n zo(b, 32, f, j, h);\n to(b, C, D);\n zo(b, 48, f, j, h ^ 65536);\n if (s) {\n p = n >>> 0 > B >>> 0 ? B : n;\n s = (G + 9) | 0;\n n = s;\n o = (G + 8) | 0;\n m = p;\n do {\n l = yo(c[m >> 2] | 0, 0, s) | 0;\n if ((m | 0) == (p | 0)) {\n if ((l | 0) == (s | 0)) {\n a[o >> 0] = 48;\n l = o;\n }\n }\n else if (l >>> 0 > G >>> 0) {\n wr(G | 0, 48, (l - F) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n to(b, l, (n - l) | 0);\n m = (m + 4) | 0;\n } while (m >>> 0 <= B >>> 0);\n if (!((((h & 8) | 0) == 0) & (t ^ 1)))\n to(b, 20282, 1);\n if ((m >>> 0 < w >>> 0) & ((k | 0) > 0))\n while (1) {\n l = yo(c[m >> 2] | 0, 0, s) | 0;\n if (l >>> 0 > G >>> 0) {\n wr(G | 0, 48, (l - F) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n to(b, l, (k | 0) < 9 ? k : 9);\n m = (m + 4) | 0;\n l = (k + -9) | 0;\n if (!((m >>> 0 < w >>> 0) & ((k | 0) > 9))) {\n k = l;\n break;\n }\n else\n k = l;\n }\n zo(b, 48, (k + 9) | 0, 9, 0);\n }\n else {\n w = v ? w : (n + 4) | 0;\n if ((n >>> 0 < w >>> 0) & ((k | 0) > -1)) {\n g = (G + 9) | 0;\n t = ((h & 8) | 0) == 0;\n v = g;\n p = (0 - F) | 0;\n s = (G + 8) | 0;\n o = n;\n do {\n l = yo(c[o >> 2] | 0, 0, g) | 0;\n if ((l | 0) == (g | 0)) {\n a[s >> 0] = 48;\n l = s;\n }\n do\n if ((o | 0) == (n | 0)) {\n m = (l + 1) | 0;\n to(b, l, 1);\n if (t & ((k | 0) < 1)) {\n l = m;\n break;\n }\n to(b, 20282, 1);\n l = m;\n }\n else {\n if (l >>> 0 <= G >>> 0)\n break;\n wr(G | 0, 48, (l + p) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n while (0);\n F = (v - l) | 0;\n to(b, l, (k | 0) > (F | 0) ? F : k);\n k = (k - F) | 0;\n o = (o + 4) | 0;\n } while ((o >>> 0 < w >>> 0) & ((k | 0) > -1));\n }\n zo(b, 48, (k + 18) | 0, 18, 0);\n to(b, x, (E - x) | 0);\n }\n zo(b, 32, f, j, h ^ 8192);\n }\n while (0);\n V = H;\n return ((j | 0) < (f | 0) ? f : j) | 0;\n }\n function qo(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0.0, e = 0;\n e = ((c[b >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n d = +g[e >> 3];\n c[b >> 2] = e + 8;\n g[a >> 3] = d;\n return;\n }\n function ro(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0;\n t = V;\n V = (V + 224) | 0;\n p = (t + 208) | 0;\n q = (t + 160) | 0;\n r = (t + 80) | 0;\n s = t;\n h = q;\n i = (h + 40) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n c[p >> 2] = c[e >> 2];\n if ((so(0, d, p, r, q, f, g) | 0) < 0)\n e = -1;\n else {\n if ((c[(b + 76) >> 2] | 0) > -1)\n o = ho(b) | 0;\n else\n o = 0;\n e = c[b >> 2] | 0;\n n = e & 32;\n if ((a[(b + 74) >> 0] | 0) < 1)\n c[b >> 2] = e & -33;\n h = (b + 48) | 0;\n if (!(c[h >> 2] | 0)) {\n i = (b + 44) | 0;\n j = c[i >> 2] | 0;\n c[i >> 2] = s;\n k = (b + 28) | 0;\n c[k >> 2] = s;\n l = (b + 20) | 0;\n c[l >> 2] = s;\n c[h >> 2] = 80;\n m = (b + 16) | 0;\n c[m >> 2] = s + 80;\n e = so(b, d, p, r, q, f, g) | 0;\n if (j) {\n aa[c[(b + 36) >> 2] & 7](b, 0, 0) | 0;\n e = (c[l >> 2] | 0) == 0 ? -1 : e;\n c[i >> 2] = j;\n c[h >> 2] = 0;\n c[m >> 2] = 0;\n c[k >> 2] = 0;\n c[l >> 2] = 0;\n }\n }\n else\n e = so(b, d, p, r, q, f, g) | 0;\n h = c[b >> 2] | 0;\n c[b >> 2] = h | n;\n if (o | 0)\n go(b);\n e = ((h & 32) | 0) == 0 ? e : -1;\n }\n V = t;\n return e | 0;\n }\n function so(d, e, f, h, i, j, k) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n h = h | 0;\n i = i | 0;\n j = j | 0;\n k = k | 0;\n var l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0;\n J = V;\n V = (V + 64) | 0;\n G = (J + 56) | 0;\n I = (J + 40) | 0;\n B = J;\n D = (J + 48) | 0;\n E = (J + 60) | 0;\n c[G >> 2] = e;\n y = (d | 0) != 0;\n z = (B + 40) | 0;\n A = z;\n B = (B + 39) | 0;\n C = (D + 4) | 0;\n l = 0;\n e = 0;\n n = 0;\n a: while (1) {\n do {\n do\n if ((e | 0) > -1)\n if ((l | 0) > ((2147483647 - e) | 0)) {\n c[(ao() | 0) >> 2] = 61;\n e = -1;\n break;\n }\n else {\n e = (l + e) | 0;\n break;\n }\n while (0);\n r = c[G >> 2] | 0;\n l = a[r >> 0] | 0;\n if (!((l << 24) >> 24)) {\n x = 92;\n break a;\n }\n m = r;\n b: while (1) {\n switch ((l << 24) >> 24) {\n case 37: {\n x = 10;\n break b;\n }\n case 0: {\n l = m;\n break b;\n }\n default: {\n }\n }\n w = (m + 1) | 0;\n c[G >> 2] = w;\n l = a[w >> 0] | 0;\n m = w;\n }\n c: do\n if ((x | 0) == 10) {\n x = 0;\n l = m;\n do {\n if ((a[(m + 1) >> 0] | 0) != 37)\n break c;\n l = (l + 1) | 0;\n m = (m + 2) | 0;\n c[G >> 2] = m;\n } while ((a[m >> 0] | 0) == 37);\n }\n while (0);\n l = (l - r) | 0;\n if (y)\n to(d, r, l);\n } while ((l | 0) != 0);\n w = (bo(a[((c[G >> 2] | 0) + 1) >> 0] | 0) | 0) == 0;\n m = c[G >> 2] | 0;\n if (!w ? (a[(m + 2) >> 0] | 0) == 36 : 0) {\n t = ((a[(m + 1) >> 0] | 0) + -48) | 0;\n p = 1;\n l = 3;\n }\n else {\n t = -1;\n p = n;\n l = 1;\n }\n l = (m + l) | 0;\n c[G >> 2] = l;\n m = a[l >> 0] | 0;\n n = (((m << 24) >> 24) + -32) | 0;\n if ((n >>> 0 > 31) | ((((1 << n) & 75913) | 0) == 0))\n o = 0;\n else {\n o = 0;\n do {\n o = (1 << n) | o;\n l = (l + 1) | 0;\n c[G >> 2] = l;\n m = a[l >> 0] | 0;\n n = (((m << 24) >> 24) + -32) | 0;\n } while (!((n >>> 0 > 31) | ((((1 << n) & 75913) | 0) == 0)));\n }\n if ((m << 24) >> 24 == 42) {\n if ((bo(a[(l + 1) >> 0] | 0) | 0) != 0\n ? ((H = c[G >> 2] | 0), (a[(H + 2) >> 0] | 0) == 36)\n : 0) {\n l = (H + 1) | 0;\n c[(i + (((a[l >> 0] | 0) + -48) << 2)) >> 2] = 10;\n l = c[(h + (((a[l >> 0] | 0) + -48) << 3)) >> 2] | 0;\n n = 1;\n m = (H + 3) | 0;\n }\n else {\n if (p | 0) {\n e = -1;\n break;\n }\n if (y) {\n w = ((c[f >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n l = c[w >> 2] | 0;\n c[f >> 2] = w + 4;\n }\n else\n l = 0;\n n = 0;\n m = ((c[G >> 2] | 0) + 1) | 0;\n }\n c[G >> 2] = m;\n w = (l | 0) < 0;\n v = w ? (0 - l) | 0 : l;\n o = w ? o | 8192 : o;\n w = n;\n }\n else {\n l = uo(G) | 0;\n if ((l | 0) < 0) {\n e = -1;\n break;\n }\n v = l;\n w = p;\n m = c[G >> 2] | 0;\n }\n do\n if ((a[m >> 0] | 0) == 46) {\n l = (m + 1) | 0;\n if ((a[l >> 0] | 0) != 42) {\n c[G >> 2] = l;\n l = uo(G) | 0;\n m = c[G >> 2] | 0;\n break;\n }\n if (bo(a[(m + 2) >> 0] | 0) | 0 ? ((F = c[G >> 2] | 0), (a[(F + 3) >> 0] | 0) == 36) : 0) {\n l = (F + 2) | 0;\n c[(i + (((a[l >> 0] | 0) + -48) << 2)) >> 2] = 10;\n l = c[(h + (((a[l >> 0] | 0) + -48) << 3)) >> 2] | 0;\n m = (F + 4) | 0;\n c[G >> 2] = m;\n break;\n }\n if (w | 0) {\n e = -1;\n break a;\n }\n if (y) {\n s = ((c[f >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n l = c[s >> 2] | 0;\n c[f >> 2] = s + 4;\n }\n else\n l = 0;\n m = ((c[G >> 2] | 0) + 2) | 0;\n c[G >> 2] = m;\n }\n else\n l = -1;\n while (0);\n s = 0;\n while (1) {\n if ((((a[m >> 0] | 0) + -65) | 0) >>> 0 > 57) {\n e = -1;\n break a;\n }\n n = m;\n m = (m + 1) | 0;\n c[G >> 2] = m;\n n = a[((a[n >> 0] | 0) + -65 + (176 + ((s * 58) | 0))) >> 0] | 0;\n p = n & 255;\n if (((p + -1) | 0) >>> 0 >= 8)\n break;\n else\n s = p;\n }\n if (!((n << 24) >> 24)) {\n e = -1;\n break;\n }\n q = (t | 0) > -1;\n do\n if ((n << 24) >> 24 == 19)\n if (q) {\n e = -1;\n break a;\n }\n else\n x = 54;\n else {\n if (q) {\n c[(i + (t << 2)) >> 2] = p;\n q = (h + (t << 3)) | 0;\n t = c[(q + 4) >> 2] | 0;\n x = I;\n c[x >> 2] = c[q >> 2];\n c[(x + 4) >> 2] = t;\n x = 54;\n break;\n }\n if (!y) {\n e = 0;\n break a;\n }\n vo(I, p, f, k);\n m = c[G >> 2] | 0;\n x = 55;\n }\n while (0);\n if ((x | 0) == 54) {\n x = 0;\n if (y)\n x = 55;\n else\n l = 0;\n }\n d: do\n if ((x | 0) == 55) {\n x = 0;\n m = a[(m + -1) >> 0] | 0;\n m = ((s | 0) != 0) & (((m & 15) | 0) == 3) ? m & -33 : m;\n n = o & -65537;\n t = ((o & 8192) | 0) == 0 ? o : n;\n e: do\n switch (m | 0) {\n case 110:\n switch (((s & 255) << 24) >> 24) {\n case 0: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 1: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 2: {\n l = c[I >> 2] | 0;\n c[l >> 2] = e;\n c[(l + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n l = 0;\n break d;\n }\n case 3: {\n b[c[I >> 2] >> 1] = e;\n l = 0;\n break d;\n }\n case 4: {\n a[c[I >> 2] >> 0] = e;\n l = 0;\n break d;\n }\n case 6: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 7: {\n l = c[I >> 2] | 0;\n c[l >> 2] = e;\n c[(l + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n l = 0;\n break d;\n }\n default: {\n l = 0;\n break d;\n }\n }\n case 112: {\n m = 120;\n l = l >>> 0 > 8 ? l : 8;\n n = t | 8;\n x = 67;\n break;\n }\n case 88:\n case 120: {\n n = t;\n x = 67;\n break;\n }\n case 111: {\n q = I;\n q = xo(c[q >> 2] | 0, c[(q + 4) >> 2] | 0, z) | 0;\n n = (A - q) | 0;\n o = 0;\n p = 20230;\n l = (((t & 8) | 0) == 0) | ((l | 0) > (n | 0)) ? l : (n + 1) | 0;\n n = t;\n x = 73;\n break;\n }\n case 105:\n case 100: {\n n = I;\n m = c[n >> 2] | 0;\n n = c[(n + 4) >> 2] | 0;\n if ((n | 0) < 0) {\n m = mr(0, 0, m | 0, n | 0) | 0;\n n = u() | 0;\n o = I;\n c[o >> 2] = m;\n c[(o + 4) >> 2] = n;\n o = 1;\n p = 20230;\n x = 72;\n break e;\n }\n else {\n o = (((t & 2049) | 0) != 0) & 1;\n p = ((t & 2048) | 0) == 0 ? (((t & 1) | 0) == 0 ? 20230 : 20232) : 20231;\n x = 72;\n break e;\n }\n }\n case 117: {\n n = I;\n o = 0;\n p = 20230;\n m = c[n >> 2] | 0;\n n = c[(n + 4) >> 2] | 0;\n x = 72;\n break;\n }\n case 99: {\n a[B >> 0] = c[I >> 2];\n r = B;\n o = 0;\n p = 20230;\n q = 1;\n m = n;\n l = A;\n break;\n }\n case 115: {\n s = c[I >> 2] | 0;\n s = (s | 0) == 0 ? 20240 : s;\n t = no(s, 0, l) | 0;\n K = (t | 0) == 0;\n r = s;\n o = 0;\n p = 20230;\n q = K ? l : (t - s) | 0;\n m = n;\n l = K ? (s + l) | 0 : t;\n break;\n }\n case 67: {\n c[D >> 2] = c[I >> 2];\n c[C >> 2] = 0;\n c[I >> 2] = D;\n p = -1;\n x = 79;\n break;\n }\n case 83: {\n if (!l) {\n zo(d, 32, v, 0, t);\n l = 0;\n x = 89;\n }\n else {\n p = l;\n x = 79;\n }\n break;\n }\n case 65:\n case 71:\n case 70:\n case 69:\n case 97:\n case 103:\n case 102:\n case 101: {\n l = _[j & 1](d, +g[I >> 3], v, l, t, m) | 0;\n break d;\n }\n default: {\n o = 0;\n p = 20230;\n q = l;\n m = t;\n l = A;\n }\n }\n while (0);\n f: do\n if ((x | 0) == 67) {\n q = I;\n q = wo(c[q >> 2] | 0, c[(q + 4) >> 2] | 0, z, m & 32) | 0;\n p = I;\n p = (((n & 8) | 0) == 0) | (((c[p >> 2] | 0) == 0) & ((c[(p + 4) >> 2] | 0) == 0));\n o = p ? 0 : 2;\n p = p ? 20230 : (20230 + (m >>> 4)) | 0;\n x = 73;\n }\n else if ((x | 0) == 72) {\n q = yo(m, n, z) | 0;\n n = t;\n x = 73;\n }\n else if ((x | 0) == 79) {\n x = 0;\n o = c[I >> 2] | 0;\n l = 0;\n while (1) {\n m = c[o >> 2] | 0;\n if (!m)\n break;\n m = Ao(E, m) | 0;\n n = (m | 0) < 0;\n if (n | (m >>> 0 > ((p - l) | 0) >>> 0)) {\n x = 83;\n break;\n }\n l = (m + l) | 0;\n if (p >>> 0 > l >>> 0)\n o = (o + 4) | 0;\n else\n break;\n }\n if ((x | 0) == 83) {\n x = 0;\n if (n) {\n e = -1;\n break a;\n }\n }\n zo(d, 32, v, l, t);\n if (!l) {\n l = 0;\n x = 89;\n }\n else {\n n = c[I >> 2] | 0;\n o = 0;\n while (1) {\n m = c[n >> 2] | 0;\n if (!m) {\n x = 89;\n break f;\n }\n m = Ao(E, m) | 0;\n o = (m + o) | 0;\n if ((o | 0) > (l | 0)) {\n x = 89;\n break f;\n }\n to(d, E, m);\n if (o >>> 0 >= l >>> 0) {\n x = 89;\n break;\n }\n else\n n = (n + 4) | 0;\n }\n }\n }\n while (0);\n if ((x | 0) == 73) {\n x = 0;\n m = I;\n m = ((c[m >> 2] | 0) != 0) | ((c[(m + 4) >> 2] | 0) != 0);\n K = ((l | 0) != 0) | m;\n m = (A - q + ((m ^ 1) & 1)) | 0;\n r = K ? q : z;\n q = K ? ((l | 0) > (m | 0) ? l : m) : 0;\n m = (l | 0) > -1 ? n & -65537 : n;\n l = A;\n }\n else if ((x | 0) == 89) {\n x = 0;\n zo(d, 32, v, l, t ^ 8192);\n l = (v | 0) > (l | 0) ? v : l;\n break;\n }\n t = (l - r) | 0;\n s = (q | 0) < (t | 0) ? t : q;\n K = (s + o) | 0;\n l = (v | 0) < (K | 0) ? K : v;\n zo(d, 32, l, K, m);\n to(d, p, o);\n zo(d, 48, l, K, m ^ 65536);\n zo(d, 48, s, t, 0);\n to(d, r, t);\n zo(d, 32, l, K, m ^ 8192);\n }\n while (0);\n n = w;\n }\n g: do\n if ((x | 0) == 92)\n if (!d)\n if (!n)\n e = 0;\n else {\n e = 1;\n while (1) {\n l = c[(i + (e << 2)) >> 2] | 0;\n if (!l)\n break;\n vo((h + (e << 3)) | 0, l, f, k);\n e = (e + 1) | 0;\n if (e >>> 0 >= 10) {\n e = 1;\n break g;\n }\n }\n while (1) {\n if (c[(i + (e << 2)) >> 2] | 0) {\n e = -1;\n break g;\n }\n e = (e + 1) | 0;\n if (e >>> 0 >= 10) {\n e = 1;\n break;\n }\n }\n }\n while (0);\n V = J;\n return e | 0;\n }\n function to(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if (!(c[a >> 2] & 32))\n jo(b, d, a) | 0;\n return;\n }\n function uo(b) {\n b = b | 0;\n var d = 0, e = 0;\n if (!(bo(a[c[b >> 2] >> 0] | 0) | 0))\n d = 0;\n else {\n d = 0;\n do {\n e = c[b >> 2] | 0;\n d = (((d * 10) | 0) + -48 + (a[e >> 0] | 0)) | 0;\n e = (e + 1) | 0;\n c[b >> 2] = e;\n } while ((bo(a[e >> 0] | 0) | 0) != 0);\n }\n return d | 0;\n }\n function vo(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, h = 0.0;\n a: do\n if (b >>> 0 <= 20)\n do\n switch (b | 0) {\n case 9: {\n b = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[b >> 2] | 0;\n c[d >> 2] = b + 4;\n c[a >> 2] = e;\n break a;\n }\n case 10: {\n e = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n b = c[e >> 2] | 0;\n c[d >> 2] = e + 4;\n e = a;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = (((b | 0) < 0) << 31) >> 31;\n break a;\n }\n case 11: {\n e = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n b = c[e >> 2] | 0;\n c[d >> 2] = e + 4;\n e = a;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = 0;\n break a;\n }\n case 12: {\n e = ((c[d >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n b = e;\n f = c[b >> 2] | 0;\n b = c[(b + 4) >> 2] | 0;\n c[d >> 2] = e + 8;\n e = a;\n c[e >> 2] = f;\n c[(e + 4) >> 2] = b;\n break a;\n }\n case 13: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n e = ((e & 65535) << 16) >> 16;\n f = a;\n c[f >> 2] = e;\n c[(f + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n break a;\n }\n case 14: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n f = a;\n c[f >> 2] = e & 65535;\n c[(f + 4) >> 2] = 0;\n break a;\n }\n case 15: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n e = ((e & 255) << 24) >> 24;\n f = a;\n c[f >> 2] = e;\n c[(f + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n break a;\n }\n case 16: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n f = a;\n c[f >> 2] = e & 255;\n c[(f + 4) >> 2] = 0;\n break a;\n }\n case 17: {\n f = ((c[d >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n h = +g[f >> 3];\n c[d >> 2] = f + 8;\n g[a >> 3] = h;\n break a;\n }\n case 18: {\n da[e & 15](a, d);\n break a;\n }\n default:\n break a;\n }\n while (0);\n while (0);\n return;\n }\n function wo(b, c, e, f) {\n b = b | 0;\n c = c | 0;\n e = e | 0;\n f = f | 0;\n if (!(((b | 0) == 0) & ((c | 0) == 0)))\n do {\n e = (e + -1) | 0;\n a[e >> 0] = d[(640 + (b & 15)) >> 0] | 0 | f;\n b = qr(b | 0, c | 0, 4) | 0;\n c = u() | 0;\n } while (!(((b | 0) == 0) & ((c | 0) == 0)));\n return e | 0;\n }\n function xo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n if (!(((b | 0) == 0) & ((c | 0) == 0)))\n do {\n d = (d + -1) | 0;\n a[d >> 0] = (b & 7) | 48;\n b = qr(b | 0, c | 0, 3) | 0;\n c = u() | 0;\n } while (!(((b | 0) == 0) & ((c | 0) == 0)));\n return d | 0;\n }\n function yo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n if ((c >>> 0 > 0) | (((c | 0) == 0) & (b >>> 0 > 4294967295))) {\n do {\n e = b;\n b = pr(b | 0, c | 0, 10, 0) | 0;\n f = c;\n c = u() | 0;\n g = kr(b | 0, c | 0, 10, 0) | 0;\n g = mr(e | 0, f | 0, g | 0, u() | 0) | 0;\n u() | 0;\n d = (d + -1) | 0;\n a[d >> 0] = (g & 255) | 48;\n } while ((f >>> 0 > 9) | (((f | 0) == 9) & (e >>> 0 > 4294967295)));\n c = b;\n }\n else\n c = b;\n if (c)\n do {\n g = c;\n c = ((c >>> 0) / 10) | 0;\n d = (d + -1) | 0;\n a[d >> 0] = (g - ((c * 10) | 0)) | 48;\n } while (g >>> 0 >= 10);\n return d | 0;\n }\n function zo(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = V;\n V = (V + 256) | 0;\n f = g;\n if (((c | 0) > (d | 0)) & (((e & 73728) | 0) == 0)) {\n e = (c - d) | 0;\n wr(f | 0, ((b << 24) >> 24) | 0, (e >>> 0 < 256 ? e : 256) | 0) | 0;\n if (e >>> 0 > 255) {\n b = (c - d) | 0;\n do {\n to(a, f, 256);\n e = (e + -256) | 0;\n } while (e >>> 0 > 255);\n e = b & 255;\n }\n to(a, f, e);\n }\n V = g;\n return;\n }\n function Ao(a, b) {\n a = a | 0;\n b = b | 0;\n if (!a)\n a = 0;\n else\n a = Bo(a, b, 0) | 0;\n return a | 0;\n }\n function Bo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n do\n if (b) {\n if (d >>> 0 < 128) {\n a[b >> 0] = d;\n b = 1;\n break;\n }\n if (!(c[c[((Co() | 0) + 176) >> 2] >> 2] | 0))\n if (((d & -128) | 0) == 57216) {\n a[b >> 0] = d;\n b = 1;\n break;\n }\n else {\n c[(ao() | 0) >> 2] = 25;\n b = -1;\n break;\n }\n if (d >>> 0 < 2048) {\n a[b >> 0] = (d >>> 6) | 192;\n a[(b + 1) >> 0] = (d & 63) | 128;\n b = 2;\n break;\n }\n if ((d >>> 0 < 55296) | (((d & -8192) | 0) == 57344)) {\n a[b >> 0] = (d >>> 12) | 224;\n a[(b + 1) >> 0] = ((d >>> 6) & 63) | 128;\n a[(b + 2) >> 0] = (d & 63) | 128;\n b = 3;\n break;\n }\n if (((d + -65536) | 0) >>> 0 < 1048576) {\n a[b >> 0] = (d >>> 18) | 240;\n a[(b + 1) >> 0] = ((d >>> 12) & 63) | 128;\n a[(b + 2) >> 0] = ((d >>> 6) & 63) | 128;\n a[(b + 3) >> 0] = (d & 63) | 128;\n b = 4;\n break;\n }\n else {\n c[(ao() | 0) >> 2] = 25;\n b = -1;\n break;\n }\n }\n else\n b = 1;\n while (0);\n return b | 0;\n }\n function Co() {\n return co() | 0;\n }\n function Do(a) {\n a = +a;\n var b = 0;\n g[h >> 3] = a;\n b = c[h >> 2] | 0;\n t(c[(h + 4) >> 2] | 0);\n return b | 0;\n }\n function Eo(a, b) {\n a = +a;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n g[h >> 3] = a;\n d = c[h >> 2] | 0;\n e = c[(h + 4) >> 2] | 0;\n f = qr(d | 0, e | 0, 52) | 0;\n u() | 0;\n switch (f & 2047) {\n case 0: {\n if (a != 0.0) {\n a = +Eo(a * 18446744073709551616.0, b);\n d = ((c[b >> 2] | 0) + -64) | 0;\n }\n else\n d = 0;\n c[b >> 2] = d;\n break;\n }\n case 2047:\n break;\n default: {\n c[b >> 2] = (f & 2047) + -1022;\n c[h >> 2] = d;\n c[(h + 4) >> 2] = (e & -2146435073) | 1071644672;\n a = +g[h >> 3];\n }\n }\n return +a;\n }\n function Fo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0;\n a: do\n if (!d)\n b = 0;\n else {\n while (1) {\n e = a[b >> 0] | 0;\n f = a[c >> 0] | 0;\n if ((e << 24) >> 24 != (f << 24) >> 24)\n break;\n d = (d + -1) | 0;\n if (!d) {\n b = 0;\n break a;\n }\n else {\n b = (b + 1) | 0;\n c = (c + 1) | 0;\n }\n }\n b = ((e & 255) - (f & 255)) | 0;\n }\n while (0);\n return b | 0;\n }\n function Go(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n f = V;\n V = (V + 16) | 0;\n g = f;\n c[g >> 2] = e;\n e = Ho(a, b, d, g) | 0;\n V = f;\n return e | 0;\n }\n function Ho(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0;\n j = V;\n V = (V + 160) | 0;\n g = (j + 144) | 0;\n i = j;\n ur(i | 0, 3672, 144) | 0;\n if (((d + -1) | 0) >>> 0 > 2147483646)\n if (!d) {\n b = g;\n d = 1;\n h = 4;\n }\n else {\n c[(ao() | 0) >> 2] = 61;\n d = -1;\n }\n else\n h = 4;\n if ((h | 0) == 4) {\n h = (-2 - b) | 0;\n h = d >>> 0 > h >>> 0 ? h : d;\n c[(i + 48) >> 2] = h;\n g = (i + 20) | 0;\n c[g >> 2] = b;\n c[(i + 44) >> 2] = b;\n d = (b + h) | 0;\n b = (i + 16) | 0;\n c[b >> 2] = d;\n c[(i + 28) >> 2] = d;\n d = oo(i, e, f) | 0;\n if (h) {\n i = c[g >> 2] | 0;\n a[(i + ((((i | 0) == (c[b >> 2] | 0)) << 31) >> 31)) >> 0] = 0;\n }\n }\n V = j;\n return d | 0;\n }\n function Io(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = (a + 20) | 0;\n f = c[e >> 2] | 0;\n a = ((c[(a + 16) >> 2] | 0) - f) | 0;\n a = a >>> 0 > d >>> 0 ? d : a;\n ur(f | 0, b | 0, a | 0) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + a;\n return d | 0;\n }\n function Jo(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = ((fo(a) | 0) + 1) | 0;\n c = dr(b) | 0;\n if (!c)\n a = 0;\n else\n a = ur(c | 0, a | 0, b | 0) | 0;\n return a | 0;\n }\n function Ko(b, e) {\n b = b | 0;\n e = e | 0;\n var f = 0, g = 0;\n f = 0;\n while (1) {\n if ((d[(656 + f) >> 0] | 0) == (b | 0)) {\n g = 4;\n break;\n }\n f = (f + 1) | 0;\n if ((f | 0) == 87) {\n b = 87;\n g = 5;\n break;\n }\n }\n if ((g | 0) == 4)\n if (!f)\n f = 752;\n else {\n b = f;\n g = 5;\n }\n if ((g | 0) == 5) {\n f = 752;\n do {\n do {\n g = f;\n f = (f + 1) | 0;\n } while ((a[g >> 0] | 0) != 0);\n b = (b + -1) | 0;\n } while ((b | 0) != 0);\n }\n return Lo(f, c[(e + 20) >> 2] | 0) | 0;\n }\n function Lo(a, b) {\n a = a | 0;\n b = b | 0;\n return ko(a, b) | 0;\n }\n function Mo(a) {\n a = a | 0;\n return Ko(a, c[((No() | 0) + 176) >> 2] | 0) | 0;\n }\n function No() {\n return co() | 0;\n }\n function Oo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = Mo(b) | 0;\n b = fo(e) | 0;\n if (b >>> 0 >= d >>> 0) {\n b = (d + -1) | 0;\n if (!d)\n b = 68;\n else {\n ur(c | 0, e | 0, b | 0) | 0;\n a[(c + b) >> 0] = 0;\n b = 68;\n }\n }\n else {\n ur(c | 0, e | 0, (b + 1) | 0) | 0;\n b = 0;\n }\n return b | 0;\n }\n function Po() {\n var a = 0, b = 0, d = 0, e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 48) | 0;\n g = (e + 32) | 0;\n b = (e + 24) | 0;\n h = (e + 16) | 0;\n f = e;\n e = (e + 36) | 0;\n a = Qo() | 0;\n if (a | 0 ? ((d = c[a >> 2] | 0), d | 0) : 0) {\n a = (d + 48) | 0;\n if (!(Ro(a) | 0)) {\n c[b >> 2] = 20420;\n To(20370, b);\n }\n b = So(a) | 0;\n if (((b | 0) == 1126902529) & ((u() | 0) == 1129074247))\n a = c[(d + 44) >> 2] | 0;\n else\n a = (d + 80) | 0;\n c[e >> 2] = a;\n d = c[d >> 2] | 0;\n a = c[(d + 4) >> 2] | 0;\n if (aa[c[((c[954] | 0) + 16) >> 2] & 7](3816, d, e) | 0) {\n h = c[e >> 2] | 0;\n h = Z[c[((c[h >> 2] | 0) + 8) >> 2] & 15](h) | 0;\n c[f >> 2] = 20420;\n c[(f + 4) >> 2] = a;\n c[(f + 8) >> 2] = h;\n To(20284, f);\n }\n else {\n c[h >> 2] = 20420;\n c[(h + 4) >> 2] = a;\n To(20329, h);\n }\n }\n To(20408, g);\n }\n function Qo() {\n return 21640;\n }\n function Ro(a) {\n a = a | 0;\n a = So(a) | 0;\n return ((((a & -256) | 0) == 1126902528) & ((u() | 0) == 1129074247)) | 0;\n }\n function So(a) {\n a = a | 0;\n var b = 0;\n b = a;\n a = c[b >> 2] | 0;\n t(c[(b + 4) >> 2] | 0);\n return a | 0;\n }\n function To(a, b) {\n a = a | 0;\n b = b | 0;\n U();\n }\n function Uo(a) {\n a = a | 0;\n return;\n }\n function Vo(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Wo(a) {\n a = a | 0;\n return;\n }\n function Xo(a) {\n a = a | 0;\n return;\n }\n function Yo(d, e, f) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n l = V;\n V = (V + 64) | 0;\n j = l;\n if (!(ap(d, e, 0) | 0))\n if ((e | 0) != 0 ? ((k = ep(e, 3840, 3824, 0) | 0), (k | 0) != 0) : 0) {\n c[j >> 2] = k;\n c[(j + 4) >> 2] = 0;\n c[(j + 8) >> 2] = d;\n c[(j + 12) >> 2] = -1;\n d = (j + 16) | 0;\n e = (j + 24) | 0;\n g = (j + 48) | 0;\n h = d;\n i = (h + 36) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n b[(d + 36) >> 1] = 0;\n a[(d + 38) >> 0] = 0;\n c[g >> 2] = 1;\n fa[c[((c[k >> 2] | 0) + 28) >> 2] & 7](k, j, c[f >> 2] | 0, 1);\n if ((c[e >> 2] | 0) == 1) {\n c[f >> 2] = c[d >> 2];\n d = 1;\n }\n else\n d = 0;\n }\n else\n d = 0;\n else\n d = 1;\n V = l;\n return d | 0;\n }\n function Zo(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, g) | 0)\n dp(0, b, d, e, f);\n return;\n }\n function _o(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0;\n do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (ap(b, c[d >> 2] | 0, g) | 0) {\n if ((c[(d + 16) >> 2] | 0) != (e | 0)\n ? ((h = (d + 20) | 0), (c[h >> 2] | 0) != (e | 0))\n : 0) {\n c[(d + 32) >> 2] = f;\n c[h >> 2] = e;\n g = (d + 40) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) == 1 ? (c[(d + 24) >> 2] | 0) == 2 : 0)\n a[(d + 54) >> 0] = 1;\n c[(d + 44) >> 2] = 4;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function $o(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, 0) | 0)\n bp(0, b, d, e);\n return;\n }\n function ap(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if (d)\n if ((a | 0) == (b | 0))\n a = 1;\n else\n a = (eo(c[(a + 4) >> 2] | 0, c[(b + 4) >> 2] | 0) | 0) == 0;\n else\n a = (c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0);\n return a | 0;\n }\n function bp(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n b = (d + 16) | 0;\n g = c[b >> 2] | 0;\n do\n if (g) {\n if ((g | 0) != (e | 0)) {\n f = (d + 36) | 0;\n c[f >> 2] = (c[f >> 2] | 0) + 1;\n c[(d + 24) >> 2] = 2;\n a[(d + 54) >> 0] = 1;\n break;\n }\n b = (d + 24) | 0;\n if ((c[b >> 2] | 0) == 2)\n c[b >> 2] = f;\n }\n else {\n c[b >> 2] = e;\n c[(d + 24) >> 2] = f;\n c[(d + 36) >> 2] = 1;\n }\n while (0);\n return;\n }\n function cp(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n if ((c[(b + 4) >> 2] | 0) == (d | 0) ? ((f = (b + 28) | 0), (c[f >> 2] | 0) != 1) : 0)\n c[f >> 2] = e;\n return;\n }\n function dp(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n a[(d + 53) >> 0] = 1;\n do\n if ((c[(d + 4) >> 2] | 0) == (f | 0)) {\n a[(d + 52) >> 0] = 1;\n b = (d + 16) | 0;\n f = c[b >> 2] | 0;\n if (!f) {\n c[b >> 2] = e;\n c[(d + 24) >> 2] = g;\n c[(d + 36) >> 2] = 1;\n if (!((g | 0) == 1 ? (c[(d + 48) >> 2] | 0) == 1 : 0))\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) != (e | 0)) {\n g = (d + 36) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n a[(d + 54) >> 0] = 1;\n break;\n }\n f = (d + 24) | 0;\n b = c[f >> 2] | 0;\n if ((b | 0) == 2) {\n c[f >> 2] = g;\n b = g;\n }\n if ((b | 0) == 1 ? (c[(d + 48) >> 2] | 0) == 1 : 0)\n a[(d + 54) >> 0] = 1;\n }\n while (0);\n return;\n }\n function ep(d, e, f, g) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n p = V;\n V = (V + 64) | 0;\n n = p;\n m = c[d >> 2] | 0;\n o = (d + (c[(m + -8) >> 2] | 0)) | 0;\n m = c[(m + -4) >> 2] | 0;\n c[n >> 2] = f;\n c[(n + 4) >> 2] = d;\n c[(n + 8) >> 2] = e;\n c[(n + 12) >> 2] = g;\n d = (n + 16) | 0;\n e = (n + 20) | 0;\n g = (n + 24) | 0;\n h = (n + 28) | 0;\n i = (n + 32) | 0;\n j = (n + 40) | 0;\n k = d;\n l = (k + 36) | 0;\n do {\n c[k >> 2] = 0;\n k = (k + 4) | 0;\n } while ((k | 0) < (l | 0));\n b[(d + 36) >> 1] = 0;\n a[(d + 38) >> 0] = 0;\n a: do\n if (ap(m, f, 0) | 0) {\n c[(n + 48) >> 2] = 1;\n ha[c[((c[m >> 2] | 0) + 20) >> 2] & 3](m, n, o, o, 1, 0);\n d = (c[g >> 2] | 0) == 1 ? o : 0;\n }\n else {\n ga[c[((c[m >> 2] | 0) + 24) >> 2] & 3](m, n, o, 1, 0);\n switch (c[(n + 36) >> 2] | 0) {\n case 0: {\n d =\n ((c[j >> 2] | 0) == 1) & ((c[h >> 2] | 0) == 1) & ((c[i >> 2] | 0) == 1)\n ? c[e >> 2] | 0\n : 0;\n break a;\n }\n case 1:\n break;\n default: {\n d = 0;\n break a;\n }\n }\n if ((c[g >> 2] | 0) != 1\n ? !(((c[j >> 2] | 0) == 0) & ((c[h >> 2] | 0) == 1) & ((c[i >> 2] | 0) == 1))\n : 0) {\n d = 0;\n break;\n }\n d = c[d >> 2] | 0;\n }\n while (0);\n V = p;\n return d | 0;\n }\n function fp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function gp(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, g) | 0)\n dp(0, b, d, e, f);\n else {\n a = c[(a + 8) >> 2] | 0;\n ha[c[((c[a >> 2] | 0) + 20) >> 2] & 3](a, b, d, e, f, g);\n }\n return;\n }\n function hp(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (!(ap(b, c[d >> 2] | 0, g) | 0)) {\n i = c[(b + 8) >> 2] | 0;\n ga[c[((c[i >> 2] | 0) + 24) >> 2] & 3](i, d, e, f, g);\n break;\n }\n if ((c[(d + 16) >> 2] | 0) != (e | 0) ? ((i = (d + 20) | 0), (c[i >> 2] | 0) != (e | 0)) : 0) {\n c[(d + 32) >> 2] = f;\n f = (d + 44) | 0;\n do\n if ((c[f >> 2] | 0) != 4) {\n h = (d + 52) | 0;\n a[h >> 0] = 0;\n j = (d + 53) | 0;\n a[j >> 0] = 0;\n b = c[(b + 8) >> 2] | 0;\n ha[c[((c[b >> 2] | 0) + 20) >> 2] & 3](b, d, e, e, 1, g);\n if (a[j >> 0] | 0) {\n j = (a[h >> 0] | 0) == 0;\n c[f >> 2] = 3;\n if (j)\n break;\n else\n break a;\n }\n else {\n c[f >> 2] = 4;\n break;\n }\n }\n while (0);\n c[i >> 2] = e;\n j = (d + 40) | 0;\n c[j >> 2] = (c[j >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) != 1)\n break;\n if ((c[(d + 24) >> 2] | 0) != 2)\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function ip(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, 0) | 0)\n bp(0, b, d, e);\n else {\n a = c[(a + 8) >> 2] | 0;\n fa[c[((c[a >> 2] | 0) + 28) >> 2] & 7](a, b, d, e);\n }\n return;\n }\n function jp(a) {\n a = a | 0;\n er(a);\n return;\n }\n function kp(a) {\n a = a | 0;\n return;\n }\n function lp() {\n var a = 0, b = 0;\n a = Qo() | 0;\n if ((a | 0 ? ((b = c[a >> 2] | 0), b | 0) : 0) ? Ro((b + 48) | 0) | 0 : 0)\n mp(c[(b + 12) >> 2] | 0);\n mp(np() | 0);\n }\n function mp(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + 16) | 0;\n ba[a & 3]();\n To(20559, b);\n }\n function np() {\n return 2;\n }\n function op(a) {\n a = a | 0;\n return;\n }\n function pp(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function qp(a) {\n a = a | 0;\n return 20599;\n }\n function rp(a) {\n a = a | 0;\n c[a >> 2] = 5916;\n vp((a + 4) | 0);\n return;\n }\n function sp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function tp(a) {\n a = a | 0;\n return up((a + 4) | 0) | 0;\n }\n function up(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function vp(a) {\n a = a | 0;\n var b = 0, d = 0;\n if (wp(a) | 0\n ? ((b = xp(c[a >> 2] | 0) | 0),\n (d = (b + 8) | 0),\n (a = c[d >> 2] | 0),\n (c[d >> 2] = a + -1),\n (a | 0) < 1)\n : 0)\n jp(b);\n return;\n }\n function wp(a) {\n a = a | 0;\n return 1;\n }\n function xp(a) {\n a = a | 0;\n return (a + -12) | 0;\n }\n function yp(a) {\n a = a | 0;\n c[a >> 2] = 5936;\n vp((a + 4) | 0);\n return;\n }\n function zp(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Ap(a) {\n a = a | 0;\n return up((a + 4) | 0) | 0;\n }\n function Bp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function Cp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function Dp() {\n var a = 0;\n a = V;\n V = (V + 16) | 0;\n To(20848, a);\n }\n function Ep(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Fp(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return ap(a, b, 0) | 0;\n }\n function Gp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Hp(d, e, f) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0;\n n = V;\n V = (V + 64) | 0;\n l = n;\n do\n if (!(ap(e, 4048, 0) | 0)) {\n if (Ip(d, e, 0) | 0) {\n e = c[f >> 2] | 0;\n if (!e) {\n e = 1;\n break;\n }\n c[f >> 2] = c[e >> 2];\n e = 1;\n break;\n }\n if ((e | 0) != 0 ? ((g = ep(e, 3840, 3976, 0) | 0), (g | 0) != 0) : 0) {\n e = c[f >> 2] | 0;\n if (e | 0)\n c[f >> 2] = c[e >> 2];\n e = c[(g + 8) >> 2] | 0;\n i = (d + 8) | 0;\n h = c[i >> 2] | 0;\n if (((e & 7 & (h ^ 7)) | 0) == 0 ? ((((e & 96) ^ 96) & h) | 0) == 0 : 0) {\n h = (d + 12) | 0;\n d = c[h >> 2] | 0;\n g = (g + 12) | 0;\n e = c[g >> 2] | 0;\n if (!(ap(d, e, 0) | 0)) {\n if (ap(d, 4040, 0) | 0) {\n if (!e) {\n e = 1;\n break;\n }\n e = (ep(e, 3840, 3992, 0) | 0) == 0;\n break;\n }\n if (d) {\n e = ep(d, 3840, 3976, 0) | 0;\n if (e | 0) {\n if (!(c[i >> 2] & 1)) {\n e = 0;\n break;\n }\n e = Jp(e, c[g >> 2] | 0) | 0;\n break;\n }\n e = c[h >> 2] | 0;\n if (e) {\n e = ep(e, 3840, 4008, 0) | 0;\n if (e | 0) {\n if (!(c[i >> 2] & 1)) {\n e = 0;\n break;\n }\n e = Kp(e, c[g >> 2] | 0) | 0;\n break;\n }\n e = c[h >> 2] | 0;\n if ((((e | 0) != 0 ? ((j = ep(e, 3840, 3824, 0) | 0), (j | 0) != 0) : 0)\n ? ((k = c[g >> 2] | 0), (k | 0) != 0)\n : 0)\n ? ((m = ep(k, 3840, 3824, 0) | 0), (m | 0) != 0)\n : 0) {\n c[l >> 2] = m;\n c[(l + 4) >> 2] = 0;\n c[(l + 8) >> 2] = j;\n c[(l + 12) >> 2] = -1;\n e = (l + 16) | 0;\n d = (l + 24) | 0;\n g = (l + 48) | 0;\n h = e;\n i = (h + 36) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n b[(e + 36) >> 1] = 0;\n a[(e + 38) >> 0] = 0;\n c[g >> 2] = 1;\n fa[c[((c[m >> 2] | 0) + 28) >> 2] & 7](m, l, c[f >> 2] | 0, 1);\n do\n if ((c[d >> 2] | 0) == 1) {\n if (!(c[f >> 2] | 0)) {\n e = 1;\n break;\n }\n c[f >> 2] = c[e >> 2];\n e = 1;\n }\n else\n e = 0;\n while (0);\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else\n e = 1;\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else {\n c[f >> 2] = 0;\n e = 1;\n }\n while (0);\n V = n;\n return e | 0;\n }\n function Ip(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n if (!(c[(a + 8) >> 2] & 24))\n if ((b | 0) != 0 ? ((e = ep(b, 3840, 3960, 0) | 0), (e | 0) != 0) : 0) {\n d = ((c[(e + 8) >> 2] & 24) | 0) != 0;\n f = 5;\n }\n else\n d = 0;\n else {\n d = 1;\n f = 5;\n }\n if ((f | 0) == 5)\n d = ap(a, b, d) | 0;\n return d | 0;\n }\n function Jp(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n while (1) {\n if (!b) {\n b = 0;\n break;\n }\n d = ep(b, 3840, 3976, 0) | 0;\n if (!d) {\n b = 0;\n break;\n }\n f = c[(a + 8) >> 2] | 0;\n if ((c[(d + 8) >> 2] & ~f) | 0) {\n b = 0;\n break;\n }\n e = (a + 12) | 0;\n b = c[e >> 2] | 0;\n d = (d + 12) | 0;\n if (ap(b, c[d >> 2] | 0, 0) | 0) {\n b = 1;\n break;\n }\n if ((((f & 1) | 0) == 0) | ((b | 0) == 0)) {\n b = 0;\n break;\n }\n a = ep(b, 3840, 3976, 0) | 0;\n if (!a) {\n h = 9;\n break;\n }\n b = c[d >> 2] | 0;\n }\n if ((h | 0) == 9) {\n b = c[e >> 2] | 0;\n if ((b | 0) != 0 ? ((g = ep(b, 3840, 4008, 0) | 0), (g | 0) != 0) : 0)\n b = Kp(g, c[d >> 2] | 0) | 0;\n else\n b = 0;\n }\n return b | 0;\n }\n function Kp(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n if ((((b | 0) != 0 ? ((d = ep(b, 3840, 4008, 0) | 0), (d | 0) != 0) : 0)\n ? ((c[(d + 8) >> 2] & ~c[(a + 8) >> 2]) | 0) == 0\n : 0)\n ? ap(c[(a + 12) >> 2] | 0, c[(d + 12) >> 2] | 0, 0) | 0\n : 0)\n a = ap(c[(a + 16) >> 2] | 0, c[(d + 16) >> 2] | 0, 0) | 0;\n else\n a = 0;\n return a | 0;\n }\n function Lp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Mp(b, d, e, f, g, h) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0;\n if (ap(b, c[(d + 8) >> 2] | 0, h) | 0)\n dp(0, d, e, f, g);\n else {\n r = (d + 52) | 0;\n j = a[r >> 0] | 0;\n q = (d + 53) | 0;\n i = a[q >> 0] | 0;\n p = c[(b + 12) >> 2] | 0;\n m = (b + 16 + (p << 3)) | 0;\n a[r >> 0] = 0;\n a[q >> 0] = 0;\n Qp((b + 16) | 0, d, e, f, g, h);\n k = a[r >> 0] | 0;\n j = k | j;\n l = a[q >> 0] | 0;\n i = l | i;\n a: do\n if ((p | 0) > 1) {\n n = (d + 24) | 0;\n o = (b + 8) | 0;\n p = (d + 54) | 0;\n b = (b + 24) | 0;\n do {\n i = i & 1;\n j = j & 1;\n if (a[p >> 0] | 0)\n break a;\n if (!((k << 24) >> 24)) {\n if ((l << 24) >> 24 ? ((c[o >> 2] & 1) | 0) == 0 : 0)\n break a;\n }\n else {\n if ((c[n >> 2] | 0) == 1)\n break a;\n if (!(c[o >> 2] & 2))\n break a;\n }\n a[r >> 0] = 0;\n a[q >> 0] = 0;\n Qp(b, d, e, f, g, h);\n k = a[r >> 0] | 0;\n j = k | j;\n l = a[q >> 0] | 0;\n i = l | i;\n b = (b + 8) | 0;\n } while (b >>> 0 < m >>> 0);\n }\n while (0);\n a[r >> 0] = ((j << 24) >> 24 != 0) & 1;\n a[q >> 0] = ((i << 24) >> 24 != 0) & 1;\n }\n return;\n }\n function Np(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (!(ap(b, c[d >> 2] | 0, g) | 0)) {\n p = c[(b + 12) >> 2] | 0;\n k = (b + 16 + (p << 3)) | 0;\n Rp((b + 16) | 0, d, e, f, g);\n h = (b + 24) | 0;\n if ((p | 0) <= 1)\n break;\n b = c[(b + 8) >> 2] | 0;\n if (((b & 2) | 0) == 0 ? ((j = (d + 36) | 0), (c[j >> 2] | 0) != 1) : 0) {\n if (!(b & 1)) {\n b = (d + 54) | 0;\n while (1) {\n if (a[b >> 0] | 0)\n break a;\n if ((c[j >> 2] | 0) == 1)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n b = (d + 24) | 0;\n i = (d + 54) | 0;\n while (1) {\n if (a[i >> 0] | 0)\n break a;\n if ((c[j >> 2] | 0) == 1 ? (c[b >> 2] | 0) == 1 : 0)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n b = (d + 54) | 0;\n while (1) {\n if (a[b >> 0] | 0)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n if ((c[(d + 16) >> 2] | 0) != (e | 0) ? ((p = (d + 20) | 0), (c[p >> 2] | 0) != (e | 0)) : 0) {\n c[(d + 32) >> 2] = f;\n o = (d + 44) | 0;\n if ((c[o >> 2] | 0) != 4) {\n j = (b + 16 + (c[(b + 12) >> 2] << 3)) | 0;\n k = (d + 52) | 0;\n f = (d + 53) | 0;\n l = (d + 54) | 0;\n m = (b + 8) | 0;\n n = (d + 24) | 0;\n h = 0;\n i = (b + 16) | 0;\n b = 0;\n b: while (1) {\n if (i >>> 0 >= j >>> 0) {\n i = 18;\n break;\n }\n a[k >> 0] = 0;\n a[f >> 0] = 0;\n Qp(i, d, e, e, 1, g);\n if (a[l >> 0] | 0) {\n i = 18;\n break;\n }\n do\n if (a[f >> 0] | 0) {\n if (!(a[k >> 0] | 0))\n if (!(c[m >> 2] & 1)) {\n i = 19;\n break b;\n }\n else {\n b = 1;\n break;\n }\n if ((c[n >> 2] | 0) == 1) {\n h = 1;\n i = 19;\n break b;\n }\n if (!(c[m >> 2] & 2)) {\n h = 1;\n i = 19;\n break b;\n }\n else {\n h = 1;\n b = 1;\n }\n }\n while (0);\n i = (i + 8) | 0;\n }\n if ((i | 0) == 18)\n if (b)\n i = 19;\n else\n b = 4;\n if ((i | 0) == 19)\n b = 3;\n c[o >> 2] = b;\n if (h & 1)\n break;\n }\n c[p >> 2] = e;\n e = (d + 40) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) != 1)\n break;\n if ((c[(d + 24) >> 2] | 0) != 2)\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function Op(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, 0) | 0)) {\n h = c[(b + 12) >> 2] | 0;\n g = (b + 16 + (h << 3)) | 0;\n Pp((b + 16) | 0, d, e, f);\n if ((h | 0) > 1) {\n h = (d + 54) | 0;\n b = (b + 24) | 0;\n do {\n Pp(b, d, e, f);\n if (a[h >> 0] | 0)\n break a;\n b = (b + 8) | 0;\n } while (b >>> 0 < g >>> 0);\n }\n }\n else\n bp(0, d, e, f);\n while (0);\n return;\n }\n function Pp(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = c[(a + 4) >> 2] | 0;\n if (d) {\n f = g >> 8;\n if (g & 1)\n f = c[((c[d >> 2] | 0) + f) >> 2] | 0;\n }\n else\n f = 0;\n a = c[a >> 2] | 0;\n fa[c[((c[a >> 2] | 0) + 28) >> 2] & 7](a, b, (d + f) | 0, ((g & 2) | 0) == 0 ? 2 : e);\n return;\n }\n function Qp(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0;\n i = c[(a + 4) >> 2] | 0;\n h = i >> 8;\n if (i & 1)\n h = c[((c[e >> 2] | 0) + h) >> 2] | 0;\n a = c[a >> 2] | 0;\n ha[c[((c[a >> 2] | 0) + 20) >> 2] & 3](a, b, d, (e + h) | 0, ((i & 2) | 0) == 0 ? 2 : f, g);\n return;\n }\n function Rp(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n h = c[(a + 4) >> 2] | 0;\n g = h >> 8;\n if (h & 1)\n g = c[((c[d >> 2] | 0) + g) >> 2] | 0;\n a = c[a >> 2] | 0;\n ga[c[((c[a >> 2] | 0) + 24) >> 2] & 3](a, b, (d + g) | 0, ((h & 2) | 0) == 0 ? 2 : e, f);\n return;\n }\n function Sp(a) {\n a = a | 0;\n c[a >> 2] = 5896;\n return;\n }\n function Tp(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n Up(c, a);\n a = Vp(c) | 0;\n V = b;\n return a | 0;\n }\n function Up(a, b) {\n a = a | 0;\n b = b | 0;\n _p(a, b);\n return;\n }\n function Vp(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n Wp(d, c[(a + 4) >> 2] | 0);\n if (!(((Xp(d) | 0) << 24) >> 24))\n a = Zp(Yp(a) | 0) | 0;\n else\n a = 0;\n V = b;\n return a | 0;\n }\n function Wp(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n return;\n }\n function Xp(b) {\n b = b | 0;\n return a[c[b >> 2] >> 0] | 0;\n }\n function Yp(a) {\n a = a | 0;\n return a | 0;\n }\n function Zp(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n b = c[(b + 8) >> 2] | 0;\n d = a[b >> 0] | 0;\n do\n if ((d << 24) >> 24 != 1)\n if (!(d & 2)) {\n a[b >> 0] = 2;\n e = 1;\n break;\n }\n else\n To(20985, f);\n else\n e = 0;\n while (0);\n V = g;\n return e | 0;\n }\n function _p(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + 1;\n c[(a + 12) >> 2] = 0;\n return;\n }\n function $p(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n Up(c, a);\n aq(c);\n V = b;\n return;\n }\n function aq(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n Wp(d, c[(a + 4) >> 2] | 0);\n bq(d);\n cq(Yp(a) | 0);\n V = b;\n return;\n }\n function bq(b) {\n b = b | 0;\n a[c[b >> 2] >> 0] = 1;\n return;\n }\n function cq(b) {\n b = b | 0;\n a[c[(b + 8) >> 2] >> 0] = 1;\n return;\n }\n function dq() {\n return 0;\n }\n function eq(a) {\n a = a | 0;\n var b = 0, c = 0;\n c = (a | 0) == 0 ? 1 : a;\n while (1) {\n b = dr(c) | 0;\n if (b | 0) {\n a = 6;\n break;\n }\n a = dq() | 0;\n if (!a) {\n a = 5;\n break;\n }\n ba[a & 3]();\n }\n if ((a | 0) == 5) {\n c = v(4) | 0;\n Sp(c);\n x(c | 0, 3880, 121);\n }\n else if ((a | 0) == 6)\n return b | 0;\n return 0;\n }\n function fq(a) {\n a = a | 0;\n return eq(a) | 0;\n }\n function gq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function hq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n c[e >> 2] = c[d >> 2];\n a = aa[c[((c[a >> 2] | 0) + 16) >> 2] & 7](a, b, e) | 0;\n if (a)\n c[d >> 2] = c[e >> 2];\n V = f;\n return (a & 1) | 0;\n }\n function iq(a) {\n a = a | 0;\n if (!a)\n a = 0;\n else\n a = ((ep(a, 3840, 3976, 0) | 0) != 0) & 1;\n return a | 0;\n }\n function jq(a) {\n a = a | 0;\n return 0;\n }\n function kq() {\n return ((lq() | 0) > 0) | 0;\n }\n function lq() {\n return y() | 0;\n }\n function mq(a) {\n a = a | 0;\n return;\n }\n function nq(a) {\n a = a | 0;\n mq(a);\n jp(a);\n return;\n }\n function oq(a) {\n a = a | 0;\n return 21039;\n }\n function pq(a) {\n a = a | 0;\n return;\n }\n function qq(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = (a + 8) | 0;\n if (!((c[b >> 2] | 0) != 0 ? ((d = c[b >> 2] | 0), (c[b >> 2] = d + -1), (d | 0) != 0) : 0))\n ca[c[((c[a >> 2] | 0) + 16) >> 2] & 255](a);\n return;\n }\n function rq(a) {\n a = a | 0;\n a = jq(a) | 0;\n if (!a)\n return;\n else\n br(a, 21145);\n }\n function sq(a) {\n a = a | 0;\n return;\n }\n function tq(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n e = fo(b) | 0;\n d = eq((e + 13) | 0) | 0;\n c[d >> 2] = e;\n c[(d + 4) >> 2] = e;\n c[(d + 8) >> 2] = 0;\n d = uq(d) | 0;\n ur(d | 0, b | 0, (e + 1) | 0) | 0;\n c[a >> 2] = d;\n return;\n }\n function uq(a) {\n a = a | 0;\n return (a + 12) | 0;\n }\n function vq(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 5916;\n tq((a + 4) | 0, b);\n return;\n }\n function wq(b, d) {\n b = b | 0;\n d = d | 0;\n c[b >> 2] = 5936;\n tq((b + 4) | 0, (a[(d + 11) >> 0] | 0) < 0 ? c[d >> 2] | 0 : d);\n return;\n }\n function xq(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 5936;\n tq((a + 4) | 0, b);\n return;\n }\n function yq(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21163);\n c[a >> 2] = 5956;\n x(a | 0, 3928, 123);\n }\n function zq(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21163);\n c[a >> 2] = 5976;\n x(a | 0, 3944, 123);\n }\n function Aq(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n if (e >>> 0 > 4294967279)\n yq(b);\n if (e >>> 0 < 11)\n a[(b + 11) >> 0] = e;\n else {\n i = (e + 16) & -16;\n h = eq(i) | 0;\n c[b >> 2] = h;\n c[(b + 8) >> 2] = i | -2147483648;\n c[(b + 4) >> 2] = e;\n b = h;\n }\n Bq(b, d, e) | 0;\n a[f >> 0] = 0;\n nb((b + e) | 0, f);\n V = g;\n return;\n }\n function Bq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if (c | 0)\n ur(a | 0, b | 0, c | 0) | 0;\n return a | 0;\n }\n function Cq(b) {\n b = b | 0;\n if ((a[(b + 11) >> 0] | 0) < 0)\n Da(c[b >> 2] | 0, c[(b + 8) >> 2] & 2147483647);\n return;\n }\n function Dq(b, d, e, f, g, h, i, j) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n i = i | 0;\n j = j | 0;\n var k = 0, l = 0, m = 0, n = 0, o = 0;\n o = V;\n V = (V + 16) | 0;\n n = o;\n if (((-18 - d) | 0) >>> 0 < e >>> 0)\n yq(b);\n if ((a[(b + 11) >> 0] | 0) < 0)\n m = c[b >> 2] | 0;\n else\n m = b;\n if (d >>> 0 < 2147483623) {\n k = (e + d) | 0;\n l = d << 1;\n k = k >>> 0 < l >>> 0 ? l : k;\n k = k >>> 0 < 11 ? 11 : (k + 16) & -16;\n }\n else\n k = -17;\n l = eq(k) | 0;\n if (g | 0)\n Bq(l, m, g) | 0;\n if (i | 0)\n Bq((l + g) | 0, j, i) | 0;\n f = (f - h) | 0;\n e = (f - g) | 0;\n if (e | 0)\n Bq((l + g + i) | 0, (m + g + h) | 0, e) | 0;\n e = (d + 1) | 0;\n if ((e | 0) != 11)\n Da(m, e);\n c[b >> 2] = l;\n c[(b + 8) >> 2] = k | -2147483648;\n i = (f + i) | 0;\n c[(b + 4) >> 2] = i;\n a[n >> 0] = 0;\n nb((l + i) | 0, n);\n V = o;\n return;\n }\n function Eq(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n i = k;\n j = (b + 11) | 0;\n f = a[j >> 0] | 0;\n h = (f << 24) >> 24 < 0;\n if (h) {\n g = ((c[(b + 8) >> 2] & 2147483647) + -1) | 0;\n f = c[(b + 4) >> 2] | 0;\n }\n else {\n g = 10;\n f = f & 255;\n }\n if (((g - f) | 0) >>> 0 >= e >>> 0) {\n if (e | 0) {\n if (h)\n g = c[b >> 2] | 0;\n else\n g = b;\n Bq((g + f) | 0, d, e) | 0;\n f = (f + e) | 0;\n if ((a[j >> 0] | 0) < 0)\n c[(b + 4) >> 2] = f;\n else\n a[j >> 0] = f;\n a[i >> 0] = 0;\n nb((g + f) | 0, i);\n }\n }\n else\n Dq(b, g, (f + e - g) | 0, f, f, 0, e, d);\n V = k;\n return b | 0;\n }\n function Fq(a, b) {\n a = a | 0;\n b = b | 0;\n return Eq(a, b, lb(b) | 0) | 0;\n }\n function Gq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if (!c)\n a = 0;\n else\n a = Fo(a, b, c) | 0;\n return a | 0;\n }\n function Hq(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0;\n h = a[(b + 11) >> 0] | 0;\n i = (h << 24) >> 24 < 0;\n if (i)\n h = c[(b + 4) >> 2] | 0;\n else\n h = h & 255;\n if (((g | 0) == -1) | (h >>> 0 < d >>> 0))\n zq(b);\n h = (h - d) | 0;\n e = h >>> 0 < e >>> 0 ? h : e;\n if (i)\n b = c[b >> 2] | 0;\n h = e >>> 0 > g >>> 0;\n b = Gq((b + d) | 0, f, h ? g : e) | 0;\n if (!b)\n return (e >>> 0 < g >>> 0 ? -1 : h & 1) | 0;\n else\n return b | 0;\n return 0;\n }\n function Iq(a) {\n a = a | 0;\n return;\n }\n function Jq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Kq(a) {\n a = a | 0;\n return 21228;\n }\n function Lq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = d;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Mq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n ea[c[((c[a >> 2] | 0) + 12) >> 2] & 15](e, a, b);\n if ((c[(e + 4) >> 2] | 0) == (c[(d + 4) >> 2] | 0))\n a = (c[e >> 2] | 0) == (c[d >> 2] | 0);\n else\n a = 0;\n V = f;\n return a | 0;\n }\n function Nq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n return ((c[b >> 2] | 0) == (d | 0) ? (c[(b + 4) >> 2] | 0) == (a | 0) : 0) | 0;\n }\n function Oq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) > 256)\n Aq(a, 21176, lb(21176) | 0);\n else\n Pq(a, 0, c);\n return;\n }\n function Pq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n Qq(a, c);\n return;\n }\n function Qq(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 1040) | 0;\n g = (i + 1024) | 0;\n e = i;\n h = c[(ao() | 0) >> 2] | 0;\n f = Rq(Oo(d, e, 1024) | 0, e) | 0;\n if (!(a[f >> 0] | 0)) {\n c[g >> 2] = d;\n Go(e, 1024, 21211, g) | 0;\n }\n else\n e = f;\n c[(ao() | 0) >> 2] = h;\n Aq(b, e, lb(e) | 0);\n V = i;\n return;\n }\n function Rq(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n switch (a | 0) {\n case 0: {\n d = b;\n break;\n }\n case -1: {\n a = c[(ao() | 0) >> 2] | 0;\n e = 3;\n break;\n }\n default:\n e = 3;\n }\n if ((e | 0) == 3)\n if ((a | 0) == 28)\n d = 22145;\n else\n P();\n return d | 0;\n }\n function Sq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Tq(a) {\n a = a | 0;\n return 21353;\n }\n function Uq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if ((d | 0) > 256) {\n Wq() | 0;\n b = 6180;\n }\n else {\n Xq() | 0;\n b = 6176;\n }\n c[a >> 2] = d;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Vq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) > 256)\n Aq(a, 21319, lb(21319) | 0);\n else\n Pq(a, 0, c);\n return;\n }\n function Wq() {\n if ((a[21488] | 0) == 0 ? Tp(21488) | 0 : 0)\n $p(21488);\n return 6180;\n }\n function Xq() {\n if ((a[21480] | 0) == 0 ? Tp(21480) | 0 : 0)\n $p(21480);\n return 6176;\n }\n function Yq(a) {\n a = a | 0;\n yp(a);\n return;\n }\n function Zq(a) {\n a = a | 0;\n Yq(a);\n jp(a);\n return;\n }\n function _q(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = c[(b + 4) >> 2] | 0;\n ea[c[((c[d >> 2] | 0) + 24) >> 2] & 15](a, d, c[b >> 2] | 0);\n return;\n }\n function $q(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n if (c[d >> 2] | 0) {\n f = a[(e + 11) >> 0] | 0;\n if ((f << 24) >> 24 < 0)\n f = c[(e + 4) >> 2] | 0;\n else\n f = f & 255;\n if (f | 0)\n Fq(e, 21417) | 0;\n _q(g, d);\n d = a[(g + 11) >> 0] | 0;\n f = (d << 24) >> 24 < 0;\n Eq(e, f ? c[g >> 2] | 0 : g, f ? c[(g + 4) >> 2] | 0 : d & 255) | 0;\n Cq(g);\n }\n c[b >> 2] = c[e >> 2];\n c[(b + 4) >> 2] = c[(e + 4) >> 2];\n c[(b + 8) >> 2] = c[(e + 8) >> 2];\n f = 0;\n while (1) {\n if ((f | 0) == 3)\n break;\n c[(e + (f << 2)) >> 2] = 0;\n f = (f + 1) | 0;\n }\n V = h;\n return;\n }\n function ar(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n e = V;\n V = (V + 32) | 0;\n g = (e + 12) | 0;\n f = e;\n Aq(f, d, lb(d) | 0);\n $q(g, b, f);\n wq(a, g);\n Cq(g);\n Cq(f);\n c[a >> 2] = 6192;\n f = b;\n b = c[(f + 4) >> 2] | 0;\n d = (a + 8) | 0;\n c[d >> 2] = c[f >> 2];\n c[(d + 4) >> 2] = b;\n V = e;\n return;\n }\n function br(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = (f + 8) | 0;\n d = v(16) | 0;\n Wq() | 0;\n c[f >> 2] = a;\n c[(f + 4) >> 2] = 6180;\n c[e >> 2] = c[f >> 2];\n c[(e + 4) >> 2] = c[(f + 4) >> 2];\n ar(d, e, b);\n x(d | 0, 4272, 136);\n }\n function cr(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21420);\n c[a >> 2] = 5956;\n x(a | 0, 3928, 123);\n }\n function dr(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0;\n w = V;\n V = (V + 16) | 0;\n n = w;\n do\n if (a >>> 0 < 245) {\n k = a >>> 0 < 11 ? 16 : (a + 11) & -8;\n a = k >>> 3;\n m = c[5412] | 0;\n d = m >>> a;\n if ((d & 3) | 0) {\n b = (((d & 1) ^ 1) + a) | 0;\n a = (21688 + ((b << 1) << 2)) | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n f = (e + 8) | 0;\n g = c[f >> 2] | 0;\n if ((g | 0) == (a | 0))\n c[5412] = m & ~(1 << b);\n else {\n c[(g + 12) >> 2] = a;\n c[d >> 2] = g;\n }\n v = b << 3;\n c[(e + 4) >> 2] = v | 3;\n v = (e + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n v = f;\n V = w;\n return v | 0;\n }\n l = c[5414] | 0;\n if (k >>> 0 > l >>> 0) {\n if (d | 0) {\n b = 2 << a;\n b = (d << a) & (b | (0 - b));\n b = ((b & (0 - b)) + -1) | 0;\n i = (b >>> 12) & 16;\n b = b >>> i;\n d = (b >>> 5) & 8;\n b = b >>> d;\n g = (b >>> 2) & 4;\n b = b >>> g;\n a = (b >>> 1) & 2;\n b = b >>> a;\n e = (b >>> 1) & 1;\n e = ((d | i | g | a | e) + (b >>> e)) | 0;\n b = (21688 + ((e << 1) << 2)) | 0;\n a = (b + 8) | 0;\n g = c[a >> 2] | 0;\n i = (g + 8) | 0;\n d = c[i >> 2] | 0;\n if ((d | 0) == (b | 0)) {\n a = m & ~(1 << e);\n c[5412] = a;\n }\n else {\n c[(d + 12) >> 2] = b;\n c[a >> 2] = d;\n a = m;\n }\n v = e << 3;\n h = (v - k) | 0;\n c[(g + 4) >> 2] = k | 3;\n f = (g + k) | 0;\n c[(f + 4) >> 2] = h | 1;\n c[(g + v) >> 2] = h;\n if (l | 0) {\n e = c[5417] | 0;\n b = l >>> 3;\n d = (21688 + ((b << 1) << 2)) | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = e;\n c[(b + 12) >> 2] = e;\n c[(e + 8) >> 2] = b;\n c[(e + 12) >> 2] = d;\n }\n c[5414] = h;\n c[5417] = f;\n v = i;\n V = w;\n return v | 0;\n }\n g = c[5413] | 0;\n if (g) {\n d = ((g & (0 - g)) + -1) | 0;\n f = (d >>> 12) & 16;\n d = d >>> f;\n e = (d >>> 5) & 8;\n d = d >>> e;\n h = (d >>> 2) & 4;\n d = d >>> h;\n i = (d >>> 1) & 2;\n d = d >>> i;\n j = (d >>> 1) & 1;\n j = c[(21952 + (((e | f | h | i | j) + (d >>> j)) << 2)) >> 2] | 0;\n d = j;\n i = j;\n j = ((c[(j + 4) >> 2] & -8) - k) | 0;\n while (1) {\n a = c[(d + 16) >> 2] | 0;\n if (!a) {\n a = c[(d + 20) >> 2] | 0;\n if (!a)\n break;\n }\n h = ((c[(a + 4) >> 2] & -8) - k) | 0;\n f = h >>> 0 < j >>> 0;\n d = a;\n i = f ? a : i;\n j = f ? h : j;\n }\n h = (i + k) | 0;\n if (h >>> 0 > i >>> 0) {\n f = c[(i + 24) >> 2] | 0;\n b = c[(i + 12) >> 2] | 0;\n do\n if ((b | 0) == (i | 0)) {\n a = (i + 20) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n a = (i + 16) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n d = 0;\n break;\n }\n }\n while (1) {\n e = (b + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (b + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n b = d;\n a = e;\n }\n }\n else {\n b = d;\n a = e;\n }\n }\n c[a >> 2] = 0;\n d = b;\n }\n else {\n d = c[(i + 8) >> 2] | 0;\n c[(d + 12) >> 2] = b;\n c[(b + 8) >> 2] = d;\n d = b;\n }\n while (0);\n do\n if (f | 0) {\n b = c[(i + 28) >> 2] | 0;\n a = (21952 + (b << 2)) | 0;\n if ((i | 0) == (c[a >> 2] | 0)) {\n c[a >> 2] = d;\n if (!d) {\n c[5413] = g & ~(1 << b);\n break;\n }\n }\n else {\n v = (f + 16) | 0;\n c[((c[v >> 2] | 0) == (i | 0) ? v : (f + 20) | 0) >> 2] = d;\n if (!d)\n break;\n }\n c[(d + 24) >> 2] = f;\n b = c[(i + 16) >> 2] | 0;\n if (b | 0) {\n c[(d + 16) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n b = c[(i + 20) >> 2] | 0;\n if (b | 0) {\n c[(d + 20) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n }\n while (0);\n if (j >>> 0 < 16) {\n v = (j + k) | 0;\n c[(i + 4) >> 2] = v | 3;\n v = (i + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n else {\n c[(i + 4) >> 2] = k | 3;\n c[(h + 4) >> 2] = j | 1;\n c[(h + j) >> 2] = j;\n if (l | 0) {\n e = c[5417] | 0;\n b = l >>> 3;\n d = (21688 + ((b << 1) << 2)) | 0;\n b = 1 << b;\n if (!(b & m)) {\n c[5412] = b | m;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = e;\n c[(b + 12) >> 2] = e;\n c[(e + 8) >> 2] = b;\n c[(e + 12) >> 2] = d;\n }\n c[5414] = j;\n c[5417] = h;\n }\n v = (i + 8) | 0;\n V = w;\n return v | 0;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else if (a >>> 0 <= 4294967231) {\n a = (a + 11) | 0;\n k = a & -8;\n e = c[5413] | 0;\n if (e) {\n f = (0 - k) | 0;\n a = a >>> 8;\n if (a)\n if (k >>> 0 > 16777215)\n j = 31;\n else {\n m = (((a + 1048320) | 0) >>> 16) & 8;\n q = a << m;\n i = (((q + 520192) | 0) >>> 16) & 4;\n q = q << i;\n j = (((q + 245760) | 0) >>> 16) & 2;\n j = (14 - (i | m | j) + ((q << j) >>> 15)) | 0;\n j = ((k >>> ((j + 7) | 0)) & 1) | (j << 1);\n }\n else\n j = 0;\n d = c[(21952 + (j << 2)) >> 2] | 0;\n a: do\n if (!d) {\n d = 0;\n a = 0;\n q = 61;\n }\n else {\n a = 0;\n i = k << ((j | 0) == 31 ? 0 : (25 - (j >>> 1)) | 0);\n g = 0;\n while (1) {\n h = ((c[(d + 4) >> 2] & -8) - k) | 0;\n if (h >>> 0 < f >>> 0)\n if (!h) {\n a = d;\n f = 0;\n q = 65;\n break a;\n }\n else {\n a = d;\n f = h;\n }\n q = c[(d + 20) >> 2] | 0;\n d = c[(d + 16 + ((i >>> 31) << 2)) >> 2] | 0;\n g = ((q | 0) == 0) | ((q | 0) == (d | 0)) ? g : q;\n if (!d) {\n d = g;\n q = 61;\n break;\n }\n else\n i = i << 1;\n }\n }\n while (0);\n if ((q | 0) == 61) {\n if (((d | 0) == 0) & ((a | 0) == 0)) {\n a = 2 << j;\n a = (a | (0 - a)) & e;\n if (!a) {\n m = k;\n break;\n }\n m = ((a & (0 - a)) + -1) | 0;\n h = (m >>> 12) & 16;\n m = m >>> h;\n g = (m >>> 5) & 8;\n m = m >>> g;\n i = (m >>> 2) & 4;\n m = m >>> i;\n j = (m >>> 1) & 2;\n m = m >>> j;\n d = (m >>> 1) & 1;\n a = 0;\n d = c[(21952 + (((g | h | i | j | d) + (m >>> d)) << 2)) >> 2] | 0;\n }\n if (!d) {\n i = a;\n h = f;\n }\n else\n q = 65;\n }\n if ((q | 0) == 65) {\n g = d;\n while (1) {\n m = ((c[(g + 4) >> 2] & -8) - k) | 0;\n d = m >>> 0 < f >>> 0;\n f = d ? m : f;\n a = d ? g : a;\n d = c[(g + 16) >> 2] | 0;\n if (!d)\n d = c[(g + 20) >> 2] | 0;\n if (!d) {\n i = a;\n h = f;\n break;\n }\n else\n g = d;\n }\n }\n if (((i | 0) != 0 ? h >>> 0 < (((c[5414] | 0) - k) | 0) >>> 0 : 0)\n ? ((l = (i + k) | 0), l >>> 0 > i >>> 0)\n : 0) {\n g = c[(i + 24) >> 2] | 0;\n b = c[(i + 12) >> 2] | 0;\n do\n if ((b | 0) == (i | 0)) {\n a = (i + 20) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n a = (i + 16) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n b = 0;\n break;\n }\n }\n while (1) {\n f = (b + 20) | 0;\n d = c[f >> 2] | 0;\n if (!d) {\n f = (b + 16) | 0;\n d = c[f >> 2] | 0;\n if (!d)\n break;\n else {\n b = d;\n a = f;\n }\n }\n else {\n b = d;\n a = f;\n }\n }\n c[a >> 2] = 0;\n }\n else {\n v = c[(i + 8) >> 2] | 0;\n c[(v + 12) >> 2] = b;\n c[(b + 8) >> 2] = v;\n }\n while (0);\n do\n if (g) {\n a = c[(i + 28) >> 2] | 0;\n d = (21952 + (a << 2)) | 0;\n if ((i | 0) == (c[d >> 2] | 0)) {\n c[d >> 2] = b;\n if (!b) {\n e = e & ~(1 << a);\n c[5413] = e;\n break;\n }\n }\n else {\n v = (g + 16) | 0;\n c[((c[v >> 2] | 0) == (i | 0) ? v : (g + 20) | 0) >> 2] = b;\n if (!b)\n break;\n }\n c[(b + 24) >> 2] = g;\n a = c[(i + 16) >> 2] | 0;\n if (a | 0) {\n c[(b + 16) >> 2] = a;\n c[(a + 24) >> 2] = b;\n }\n a = c[(i + 20) >> 2] | 0;\n if (a) {\n c[(b + 20) >> 2] = a;\n c[(a + 24) >> 2] = b;\n }\n }\n while (0);\n b: do\n if (h >>> 0 < 16) {\n v = (h + k) | 0;\n c[(i + 4) >> 2] = v | 3;\n v = (i + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n else {\n c[(i + 4) >> 2] = k | 3;\n c[(l + 4) >> 2] = h | 1;\n c[(l + h) >> 2] = h;\n b = h >>> 3;\n if (h >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = l;\n c[(b + 12) >> 2] = l;\n c[(l + 8) >> 2] = b;\n c[(l + 12) >> 2] = d;\n break;\n }\n b = h >>> 8;\n if (b)\n if (h >>> 0 > 16777215)\n d = 31;\n else {\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n d = (((v + 245760) | 0) >>> 16) & 2;\n d = (14 - (t | u | d) + ((v << d) >>> 15)) | 0;\n d = ((h >>> ((d + 7) | 0)) & 1) | (d << 1);\n }\n else\n d = 0;\n b = (21952 + (d << 2)) | 0;\n c[(l + 28) >> 2] = d;\n a = (l + 16) | 0;\n c[(a + 4) >> 2] = 0;\n c[a >> 2] = 0;\n a = 1 << d;\n if (!(e & a)) {\n c[5413] = e | a;\n c[b >> 2] = l;\n c[(l + 24) >> 2] = b;\n c[(l + 12) >> 2] = l;\n c[(l + 8) >> 2] = l;\n break;\n }\n b = c[b >> 2] | 0;\n c: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (h | 0)) {\n e = h << ((d | 0) == 31 ? 0 : (25 - (d >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (h | 0)) {\n b = a;\n break c;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = l;\n c[(l + 24) >> 2] = b;\n c[(l + 12) >> 2] = l;\n c[(l + 8) >> 2] = l;\n break b;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = l;\n c[u >> 2] = l;\n c[(l + 8) >> 2] = v;\n c[(l + 12) >> 2] = b;\n c[(l + 24) >> 2] = 0;\n }\n while (0);\n v = (i + 8) | 0;\n V = w;\n return v | 0;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else\n m = -1;\n while (0);\n d = c[5414] | 0;\n if (d >>> 0 >= m >>> 0) {\n b = (d - m) | 0;\n a = c[5417] | 0;\n if (b >>> 0 > 15) {\n v = (a + m) | 0;\n c[5417] = v;\n c[5414] = b;\n c[(v + 4) >> 2] = b | 1;\n c[(a + d) >> 2] = b;\n c[(a + 4) >> 2] = m | 3;\n }\n else {\n c[5414] = 0;\n c[5417] = 0;\n c[(a + 4) >> 2] = d | 3;\n v = (a + d + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n v = (a + 8) | 0;\n V = w;\n return v | 0;\n }\n h = c[5415] | 0;\n if (h >>> 0 > m >>> 0) {\n t = (h - m) | 0;\n c[5415] = t;\n v = c[5418] | 0;\n u = (v + m) | 0;\n c[5418] = u;\n c[(u + 4) >> 2] = t | 1;\n c[(v + 4) >> 2] = m | 3;\n v = (v + 8) | 0;\n V = w;\n return v | 0;\n }\n if (!(c[5530] | 0)) {\n c[5532] = 4096;\n c[5531] = 4096;\n c[5533] = -1;\n c[5534] = -1;\n c[5535] = 0;\n c[5523] = 0;\n c[5530] = (n & -16) ^ 1431655768;\n a = 4096;\n }\n else\n a = c[5532] | 0;\n i = (m + 48) | 0;\n j = (m + 47) | 0;\n g = (a + j) | 0;\n f = (0 - a) | 0;\n k = g & f;\n if (k >>> 0 <= m >>> 0) {\n v = 0;\n V = w;\n return v | 0;\n }\n a = c[5522] | 0;\n if (a | 0\n ? ((l = c[5520] | 0), (n = (l + k) | 0), (n >>> 0 <= l >>> 0) | (n >>> 0 > a >>> 0))\n : 0) {\n v = 0;\n V = w;\n return v | 0;\n }\n d: do\n if (!(c[5523] & 4)) {\n d = c[5418] | 0;\n e: do\n if (d) {\n e = 22096;\n while (1) {\n n = c[e >> 2] | 0;\n if (n >>> 0 <= d >>> 0 ? ((n + (c[(e + 4) >> 2] | 0)) | 0) >>> 0 > d >>> 0 : 0)\n break;\n a = c[(e + 8) >> 2] | 0;\n if (!a) {\n q = 128;\n break e;\n }\n else\n e = a;\n }\n b = (g - h) & f;\n if (b >>> 0 < 2147483647) {\n a = fr(b) | 0;\n if ((a | 0) == (((c[e >> 2] | 0) + (c[(e + 4) >> 2] | 0)) | 0)) {\n if ((a | 0) != (-1 | 0)) {\n h = b;\n g = a;\n q = 145;\n break d;\n }\n }\n else {\n e = a;\n q = 136;\n }\n }\n else\n b = 0;\n }\n else\n q = 128;\n while (0);\n do\n if ((q | 0) == 128) {\n d = fr(0) | 0;\n if ((d | 0) != (-1 | 0)\n ? ((b = d),\n (o = c[5531] | 0),\n (p = (o + -1) | 0),\n (b = ((((p & b) | 0) == 0 ? 0 : (((p + b) & (0 - o)) - b) | 0) + k) | 0),\n (o = c[5520] | 0),\n (p = (b + o) | 0),\n (b >>> 0 > m >>> 0) & (b >>> 0 < 2147483647))\n : 0) {\n n = c[5522] | 0;\n if (n | 0 ? (p >>> 0 <= o >>> 0) | (p >>> 0 > n >>> 0) : 0) {\n b = 0;\n break;\n }\n a = fr(b) | 0;\n if ((a | 0) == (d | 0)) {\n h = b;\n g = d;\n q = 145;\n break d;\n }\n else {\n e = a;\n q = 136;\n }\n }\n else\n b = 0;\n }\n while (0);\n do\n if ((q | 0) == 136) {\n d = (0 - b) | 0;\n if (!((i >>> 0 > b >>> 0) & ((b >>> 0 < 2147483647) & ((e | 0) != (-1 | 0)))))\n if ((e | 0) == (-1 | 0)) {\n b = 0;\n break;\n }\n else {\n h = b;\n g = e;\n q = 145;\n break d;\n }\n a = c[5532] | 0;\n a = (j - b + a) & (0 - a);\n if (a >>> 0 >= 2147483647) {\n h = b;\n g = e;\n q = 145;\n break d;\n }\n if ((fr(a) | 0) == (-1 | 0)) {\n fr(d) | 0;\n b = 0;\n break;\n }\n else {\n h = (a + b) | 0;\n g = e;\n q = 145;\n break d;\n }\n }\n while (0);\n c[5523] = c[5523] | 4;\n q = 143;\n }\n else {\n b = 0;\n q = 143;\n }\n while (0);\n if (((q | 0) == 143 ? k >>> 0 < 2147483647 : 0)\n ? ((t = fr(k) | 0),\n (p = fr(0) | 0),\n (r = (p - t) | 0),\n (s = r >>> 0 > ((m + 40) | 0) >>> 0),\n !(((t | 0) == (-1 | 0)) |\n (s ^ 1) |\n (((t >>> 0 < p >>> 0) & (((t | 0) != (-1 | 0)) & ((p | 0) != (-1 | 0)))) ^ 1)))\n : 0) {\n h = s ? r : b;\n g = t;\n q = 145;\n }\n if ((q | 0) == 145) {\n b = ((c[5520] | 0) + h) | 0;\n c[5520] = b;\n if (b >>> 0 > (c[5521] | 0) >>> 0)\n c[5521] = b;\n j = c[5418] | 0;\n f: do\n if (j) {\n b = 22096;\n while (1) {\n a = c[b >> 2] | 0;\n d = c[(b + 4) >> 2] | 0;\n if ((g | 0) == ((a + d) | 0)) {\n q = 154;\n break;\n }\n e = c[(b + 8) >> 2] | 0;\n if (!e)\n break;\n else\n b = e;\n }\n if (((q | 0) == 154 ? ((u = (b + 4) | 0), ((c[(b + 12) >> 2] & 8) | 0) == 0) : 0)\n ? (g >>> 0 > j >>> 0) & (a >>> 0 <= j >>> 0)\n : 0) {\n c[u >> 2] = d + h;\n v = ((c[5415] | 0) + h) | 0;\n t = (j + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (j + t) | 0;\n t = (v - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(j + v + 4) >> 2] = 40;\n c[5419] = c[5534];\n break;\n }\n if (g >>> 0 < (c[5416] | 0) >>> 0)\n c[5416] = g;\n d = (g + h) | 0;\n b = 22096;\n while (1) {\n if ((c[b >> 2] | 0) == (d | 0)) {\n q = 162;\n break;\n }\n a = c[(b + 8) >> 2] | 0;\n if (!a)\n break;\n else\n b = a;\n }\n if ((q | 0) == 162 ? ((c[(b + 12) >> 2] & 8) | 0) == 0 : 0) {\n c[b >> 2] = g;\n l = (b + 4) | 0;\n c[l >> 2] = (c[l >> 2] | 0) + h;\n l = (g + 8) | 0;\n l = (g + (((l & 7) | 0) == 0 ? 0 : (0 - l) & 7)) | 0;\n b = (d + 8) | 0;\n b = (d + (((b & 7) | 0) == 0 ? 0 : (0 - b) & 7)) | 0;\n k = (l + m) | 0;\n i = (b - l - m) | 0;\n c[(l + 4) >> 2] = m | 3;\n g: do\n if ((j | 0) == (b | 0)) {\n v = ((c[5415] | 0) + i) | 0;\n c[5415] = v;\n c[5418] = k;\n c[(k + 4) >> 2] = v | 1;\n }\n else {\n if ((c[5417] | 0) == (b | 0)) {\n v = ((c[5414] | 0) + i) | 0;\n c[5414] = v;\n c[5417] = k;\n c[(k + 4) >> 2] = v | 1;\n c[(k + v) >> 2] = v;\n break;\n }\n a = c[(b + 4) >> 2] | 0;\n if (((a & 3) | 0) == 1) {\n h = a & -8;\n e = a >>> 3;\n h: do\n if (a >>> 0 < 256) {\n a = c[(b + 8) >> 2] | 0;\n d = c[(b + 12) >> 2] | 0;\n if ((d | 0) == (a | 0)) {\n c[5412] = c[5412] & ~(1 << e);\n break;\n }\n else {\n c[(a + 12) >> 2] = d;\n c[(d + 8) >> 2] = a;\n break;\n }\n }\n else {\n g = c[(b + 24) >> 2] | 0;\n a = c[(b + 12) >> 2] | 0;\n do\n if ((a | 0) == (b | 0)) {\n d = (b + 16) | 0;\n e = (d + 4) | 0;\n a = c[e >> 2] | 0;\n if (!a) {\n a = c[d >> 2] | 0;\n if (!a) {\n a = 0;\n break;\n }\n }\n else\n d = e;\n while (1) {\n f = (a + 20) | 0;\n e = c[f >> 2] | 0;\n if (!e) {\n f = (a + 16) | 0;\n e = c[f >> 2] | 0;\n if (!e)\n break;\n else {\n a = e;\n d = f;\n }\n }\n else {\n a = e;\n d = f;\n }\n }\n c[d >> 2] = 0;\n }\n else {\n v = c[(b + 8) >> 2] | 0;\n c[(v + 12) >> 2] = a;\n c[(a + 8) >> 2] = v;\n }\n while (0);\n if (!g)\n break;\n d = c[(b + 28) >> 2] | 0;\n e = (21952 + (d << 2)) | 0;\n do\n if ((c[e >> 2] | 0) != (b | 0)) {\n v = (g + 16) | 0;\n c[((c[v >> 2] | 0) == (b | 0) ? v : (g + 20) | 0) >> 2] = a;\n if (!a)\n break h;\n }\n else {\n c[e >> 2] = a;\n if (a | 0)\n break;\n c[5413] = c[5413] & ~(1 << d);\n break h;\n }\n while (0);\n c[(a + 24) >> 2] = g;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n if (e | 0) {\n c[(a + 16) >> 2] = e;\n c[(e + 24) >> 2] = a;\n }\n d = c[(d + 4) >> 2] | 0;\n if (!d)\n break;\n c[(a + 20) >> 2] = d;\n c[(d + 24) >> 2] = a;\n }\n while (0);\n b = (b + h) | 0;\n f = (h + i) | 0;\n }\n else\n f = i;\n b = (b + 4) | 0;\n c[b >> 2] = c[b >> 2] & -2;\n c[(k + 4) >> 2] = f | 1;\n c[(k + f) >> 2] = f;\n b = f >>> 3;\n if (f >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = k;\n c[(b + 12) >> 2] = k;\n c[(k + 8) >> 2] = b;\n c[(k + 12) >> 2] = d;\n break;\n }\n b = f >>> 8;\n do\n if (!b)\n e = 0;\n else {\n if (f >>> 0 > 16777215) {\n e = 31;\n break;\n }\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n e = (((v + 245760) | 0) >>> 16) & 2;\n e = (14 - (t | u | e) + ((v << e) >>> 15)) | 0;\n e = ((f >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n while (0);\n b = (21952 + (e << 2)) | 0;\n c[(k + 28) >> 2] = e;\n a = (k + 16) | 0;\n c[(a + 4) >> 2] = 0;\n c[a >> 2] = 0;\n a = c[5413] | 0;\n d = 1 << e;\n if (!(a & d)) {\n c[5413] = a | d;\n c[b >> 2] = k;\n c[(k + 24) >> 2] = b;\n c[(k + 12) >> 2] = k;\n c[(k + 8) >> 2] = k;\n break;\n }\n b = c[b >> 2] | 0;\n i: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (f | 0)) {\n e = f << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (f | 0)) {\n b = a;\n break i;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = k;\n c[(k + 24) >> 2] = b;\n c[(k + 12) >> 2] = k;\n c[(k + 8) >> 2] = k;\n break g;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = k;\n c[u >> 2] = k;\n c[(k + 8) >> 2] = v;\n c[(k + 12) >> 2] = b;\n c[(k + 24) >> 2] = 0;\n }\n while (0);\n v = (l + 8) | 0;\n V = w;\n return v | 0;\n }\n b = 22096;\n while (1) {\n a = c[b >> 2] | 0;\n if (a >>> 0 <= j >>> 0 ? ((v = (a + (c[(b + 4) >> 2] | 0)) | 0), v >>> 0 > j >>> 0) : 0)\n break;\n b = c[(b + 8) >> 2] | 0;\n }\n f = (v + -47) | 0;\n a = (f + 8) | 0;\n a = (f + (((a & 7) | 0) == 0 ? 0 : (0 - a) & 7)) | 0;\n f = (j + 16) | 0;\n a = a >>> 0 < f >>> 0 ? j : a;\n b = (a + 8) | 0;\n d = (h + -40) | 0;\n t = (g + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (g + t) | 0;\n t = (d - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(g + d + 4) >> 2] = 40;\n c[5419] = c[5534];\n d = (a + 4) | 0;\n c[d >> 2] = 27;\n c[b >> 2] = c[5524];\n c[(b + 4) >> 2] = c[5525];\n c[(b + 8) >> 2] = c[5526];\n c[(b + 12) >> 2] = c[5527];\n c[5524] = g;\n c[5525] = h;\n c[5527] = 0;\n c[5526] = b;\n b = (a + 24) | 0;\n do {\n u = b;\n b = (b + 4) | 0;\n c[b >> 2] = 7;\n } while (((u + 8) | 0) >>> 0 < v >>> 0);\n if ((a | 0) != (j | 0)) {\n g = (a - j) | 0;\n c[d >> 2] = c[d >> 2] & -2;\n c[(j + 4) >> 2] = g | 1;\n c[a >> 2] = g;\n b = g >>> 3;\n if (g >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = j;\n c[(b + 12) >> 2] = j;\n c[(j + 8) >> 2] = b;\n c[(j + 12) >> 2] = d;\n break;\n }\n b = g >>> 8;\n if (b)\n if (g >>> 0 > 16777215)\n e = 31;\n else {\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n e = (((v + 245760) | 0) >>> 16) & 2;\n e = (14 - (t | u | e) + ((v << e) >>> 15)) | 0;\n e = ((g >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n else\n e = 0;\n d = (21952 + (e << 2)) | 0;\n c[(j + 28) >> 2] = e;\n c[(j + 20) >> 2] = 0;\n c[f >> 2] = 0;\n b = c[5413] | 0;\n a = 1 << e;\n if (!(b & a)) {\n c[5413] = b | a;\n c[d >> 2] = j;\n c[(j + 24) >> 2] = d;\n c[(j + 12) >> 2] = j;\n c[(j + 8) >> 2] = j;\n break;\n }\n b = c[d >> 2] | 0;\n j: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (g | 0)) {\n e = g << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (g | 0)) {\n b = a;\n break j;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = j;\n c[(j + 24) >> 2] = b;\n c[(j + 12) >> 2] = j;\n c[(j + 8) >> 2] = j;\n break f;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = j;\n c[u >> 2] = j;\n c[(j + 8) >> 2] = v;\n c[(j + 12) >> 2] = b;\n c[(j + 24) >> 2] = 0;\n }\n }\n else {\n v = c[5416] | 0;\n if (((v | 0) == 0) | (g >>> 0 < v >>> 0))\n c[5416] = g;\n c[5524] = g;\n c[5525] = h;\n c[5527] = 0;\n c[5421] = c[5530];\n c[5420] = -1;\n c[5425] = 21688;\n c[5424] = 21688;\n c[5427] = 21696;\n c[5426] = 21696;\n c[5429] = 21704;\n c[5428] = 21704;\n c[5431] = 21712;\n c[5430] = 21712;\n c[5433] = 21720;\n c[5432] = 21720;\n c[5435] = 21728;\n c[5434] = 21728;\n c[5437] = 21736;\n c[5436] = 21736;\n c[5439] = 21744;\n c[5438] = 21744;\n c[5441] = 21752;\n c[5440] = 21752;\n c[5443] = 21760;\n c[5442] = 21760;\n c[5445] = 21768;\n c[5444] = 21768;\n c[5447] = 21776;\n c[5446] = 21776;\n c[5449] = 21784;\n c[5448] = 21784;\n c[5451] = 21792;\n c[5450] = 21792;\n c[5453] = 21800;\n c[5452] = 21800;\n c[5455] = 21808;\n c[5454] = 21808;\n c[5457] = 21816;\n c[5456] = 21816;\n c[5459] = 21824;\n c[5458] = 21824;\n c[5461] = 21832;\n c[5460] = 21832;\n c[5463] = 21840;\n c[5462] = 21840;\n c[5465] = 21848;\n c[5464] = 21848;\n c[5467] = 21856;\n c[5466] = 21856;\n c[5469] = 21864;\n c[5468] = 21864;\n c[5471] = 21872;\n c[5470] = 21872;\n c[5473] = 21880;\n c[5472] = 21880;\n c[5475] = 21888;\n c[5474] = 21888;\n c[5477] = 21896;\n c[5476] = 21896;\n c[5479] = 21904;\n c[5478] = 21904;\n c[5481] = 21912;\n c[5480] = 21912;\n c[5483] = 21920;\n c[5482] = 21920;\n c[5485] = 21928;\n c[5484] = 21928;\n c[5487] = 21936;\n c[5486] = 21936;\n v = (h + -40) | 0;\n t = (g + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (g + t) | 0;\n t = (v - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(g + v + 4) >> 2] = 40;\n c[5419] = c[5534];\n }\n while (0);\n b = c[5415] | 0;\n if (b >>> 0 > m >>> 0) {\n t = (b - m) | 0;\n c[5415] = t;\n v = c[5418] | 0;\n u = (v + m) | 0;\n c[5418] = u;\n c[(u + 4) >> 2] = t | 1;\n c[(v + 4) >> 2] = m | 3;\n v = (v + 8) | 0;\n V = w;\n return v | 0;\n }\n }\n c[(ao() | 0) >> 2] = 48;\n v = 0;\n V = w;\n return v | 0;\n }\n function er(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n if (!a)\n return;\n d = (a + -8) | 0;\n f = c[5416] | 0;\n a = c[(a + -4) >> 2] | 0;\n b = a & -8;\n j = (d + b) | 0;\n do\n if (!(a & 1)) {\n e = c[d >> 2] | 0;\n if (!(a & 3))\n return;\n h = (d + (0 - e)) | 0;\n g = (e + b) | 0;\n if (h >>> 0 < f >>> 0)\n return;\n if ((c[5417] | 0) == (h | 0)) {\n a = (j + 4) | 0;\n b = c[a >> 2] | 0;\n if (((b & 3) | 0) != 3) {\n i = h;\n b = g;\n break;\n }\n c[5414] = g;\n c[a >> 2] = b & -2;\n c[(h + 4) >> 2] = g | 1;\n c[(h + g) >> 2] = g;\n return;\n }\n d = e >>> 3;\n if (e >>> 0 < 256) {\n a = c[(h + 8) >> 2] | 0;\n b = c[(h + 12) >> 2] | 0;\n if ((b | 0) == (a | 0)) {\n c[5412] = c[5412] & ~(1 << d);\n i = h;\n b = g;\n break;\n }\n else {\n c[(a + 12) >> 2] = b;\n c[(b + 8) >> 2] = a;\n i = h;\n b = g;\n break;\n }\n }\n f = c[(h + 24) >> 2] | 0;\n a = c[(h + 12) >> 2] | 0;\n do\n if ((a | 0) == (h | 0)) {\n b = (h + 16) | 0;\n d = (b + 4) | 0;\n a = c[d >> 2] | 0;\n if (!a) {\n a = c[b >> 2] | 0;\n if (!a) {\n a = 0;\n break;\n }\n }\n else\n b = d;\n while (1) {\n e = (a + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (a + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n a = d;\n b = e;\n }\n }\n else {\n a = d;\n b = e;\n }\n }\n c[b >> 2] = 0;\n }\n else {\n i = c[(h + 8) >> 2] | 0;\n c[(i + 12) >> 2] = a;\n c[(a + 8) >> 2] = i;\n }\n while (0);\n if (f) {\n b = c[(h + 28) >> 2] | 0;\n d = (21952 + (b << 2)) | 0;\n if ((c[d >> 2] | 0) == (h | 0)) {\n c[d >> 2] = a;\n if (!a) {\n c[5413] = c[5413] & ~(1 << b);\n i = h;\n b = g;\n break;\n }\n }\n else {\n i = (f + 16) | 0;\n c[((c[i >> 2] | 0) == (h | 0) ? i : (f + 20) | 0) >> 2] = a;\n if (!a) {\n i = h;\n b = g;\n break;\n }\n }\n c[(a + 24) >> 2] = f;\n b = (h + 16) | 0;\n d = c[b >> 2] | 0;\n if (d | 0) {\n c[(a + 16) >> 2] = d;\n c[(d + 24) >> 2] = a;\n }\n b = c[(b + 4) >> 2] | 0;\n if (b) {\n c[(a + 20) >> 2] = b;\n c[(b + 24) >> 2] = a;\n i = h;\n b = g;\n }\n else {\n i = h;\n b = g;\n }\n }\n else {\n i = h;\n b = g;\n }\n }\n else {\n i = d;\n h = d;\n }\n while (0);\n if (h >>> 0 >= j >>> 0)\n return;\n a = (j + 4) | 0;\n e = c[a >> 2] | 0;\n if (!(e & 1))\n return;\n if (!(e & 2)) {\n if ((c[5418] | 0) == (j | 0)) {\n j = ((c[5415] | 0) + b) | 0;\n c[5415] = j;\n c[5418] = i;\n c[(i + 4) >> 2] = j | 1;\n if ((i | 0) != (c[5417] | 0))\n return;\n c[5417] = 0;\n c[5414] = 0;\n return;\n }\n if ((c[5417] | 0) == (j | 0)) {\n j = ((c[5414] | 0) + b) | 0;\n c[5414] = j;\n c[5417] = h;\n c[(i + 4) >> 2] = j | 1;\n c[(h + j) >> 2] = j;\n return;\n }\n f = ((e & -8) + b) | 0;\n d = e >>> 3;\n do\n if (e >>> 0 < 256) {\n b = c[(j + 8) >> 2] | 0;\n a = c[(j + 12) >> 2] | 0;\n if ((a | 0) == (b | 0)) {\n c[5412] = c[5412] & ~(1 << d);\n break;\n }\n else {\n c[(b + 12) >> 2] = a;\n c[(a + 8) >> 2] = b;\n break;\n }\n }\n else {\n g = c[(j + 24) >> 2] | 0;\n a = c[(j + 12) >> 2] | 0;\n do\n if ((a | 0) == (j | 0)) {\n b = (j + 16) | 0;\n d = (b + 4) | 0;\n a = c[d >> 2] | 0;\n if (!a) {\n a = c[b >> 2] | 0;\n if (!a) {\n d = 0;\n break;\n }\n }\n else\n b = d;\n while (1) {\n e = (a + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (a + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n a = d;\n b = e;\n }\n }\n else {\n a = d;\n b = e;\n }\n }\n c[b >> 2] = 0;\n d = a;\n }\n else {\n d = c[(j + 8) >> 2] | 0;\n c[(d + 12) >> 2] = a;\n c[(a + 8) >> 2] = d;\n d = a;\n }\n while (0);\n if (g | 0) {\n a = c[(j + 28) >> 2] | 0;\n b = (21952 + (a << 2)) | 0;\n if ((c[b >> 2] | 0) == (j | 0)) {\n c[b >> 2] = d;\n if (!d) {\n c[5413] = c[5413] & ~(1 << a);\n break;\n }\n }\n else {\n e = (g + 16) | 0;\n c[((c[e >> 2] | 0) == (j | 0) ? e : (g + 20) | 0) >> 2] = d;\n if (!d)\n break;\n }\n c[(d + 24) >> 2] = g;\n a = (j + 16) | 0;\n b = c[a >> 2] | 0;\n if (b | 0) {\n c[(d + 16) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n a = c[(a + 4) >> 2] | 0;\n if (a | 0) {\n c[(d + 20) >> 2] = a;\n c[(a + 24) >> 2] = d;\n }\n }\n }\n while (0);\n c[(i + 4) >> 2] = f | 1;\n c[(h + f) >> 2] = f;\n if ((i | 0) == (c[5417] | 0)) {\n c[5414] = f;\n return;\n }\n }\n else {\n c[a >> 2] = e & -2;\n c[(i + 4) >> 2] = b | 1;\n c[(h + b) >> 2] = b;\n f = b;\n }\n a = f >>> 3;\n if (f >>> 0 < 256) {\n d = (21688 + ((a << 1) << 2)) | 0;\n b = c[5412] | 0;\n a = 1 << a;\n if (!(b & a)) {\n c[5412] = b | a;\n a = d;\n b = (d + 8) | 0;\n }\n else {\n b = (d + 8) | 0;\n a = c[b >> 2] | 0;\n }\n c[b >> 2] = i;\n c[(a + 12) >> 2] = i;\n c[(i + 8) >> 2] = a;\n c[(i + 12) >> 2] = d;\n return;\n }\n a = f >>> 8;\n if (a)\n if (f >>> 0 > 16777215)\n e = 31;\n else {\n h = (((a + 1048320) | 0) >>> 16) & 8;\n j = a << h;\n g = (((j + 520192) | 0) >>> 16) & 4;\n j = j << g;\n e = (((j + 245760) | 0) >>> 16) & 2;\n e = (14 - (g | h | e) + ((j << e) >>> 15)) | 0;\n e = ((f >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n else\n e = 0;\n a = (21952 + (e << 2)) | 0;\n c[(i + 28) >> 2] = e;\n c[(i + 20) >> 2] = 0;\n c[(i + 16) >> 2] = 0;\n b = c[5413] | 0;\n d = 1 << e;\n a: do\n if (!(b & d)) {\n c[5413] = b | d;\n c[a >> 2] = i;\n c[(i + 24) >> 2] = a;\n c[(i + 12) >> 2] = i;\n c[(i + 8) >> 2] = i;\n }\n else {\n a = c[a >> 2] | 0;\n b: do\n if (((c[(a + 4) >> 2] & -8) | 0) != (f | 0)) {\n e = f << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (a + 16 + ((e >>> 31) << 2)) | 0;\n b = c[d >> 2] | 0;\n if (!b)\n break;\n if (((c[(b + 4) >> 2] & -8) | 0) == (f | 0)) {\n a = b;\n break b;\n }\n else {\n e = e << 1;\n a = b;\n }\n }\n c[d >> 2] = i;\n c[(i + 24) >> 2] = a;\n c[(i + 12) >> 2] = i;\n c[(i + 8) >> 2] = i;\n break a;\n }\n while (0);\n h = (a + 8) | 0;\n j = c[h >> 2] | 0;\n c[(j + 12) >> 2] = i;\n c[h >> 2] = i;\n c[(i + 8) >> 2] = j;\n c[(i + 12) >> 2] = a;\n c[(i + 24) >> 2] = 0;\n }\n while (0);\n j = ((c[5420] | 0) + -1) | 0;\n c[5420] = j;\n if (j | 0)\n return;\n a = 22104;\n while (1) {\n a = c[a >> 2] | 0;\n if (!a)\n break;\n else\n a = (a + 8) | 0;\n }\n c[5420] = -1;\n return;\n }\n function fr(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n e = (a + 3) & -4;\n a = sr() | 0;\n b = c[a >> 2] | 0;\n d = (b + e) | 0;\n do\n if (((e | 0) < 1) | (d >>> 0 > b >>> 0)) {\n if (d >>> 0 > (R() | 0) >>> 0 ? (T(d | 0) | 0) == 0 : 0)\n break;\n c[a >> 2] = d;\n e = b;\n return e | 0;\n }\n while (0);\n c[(ao() | 0) >> 2] = 48;\n e = -1;\n return e | 0;\n }\n function gr(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + a) | 0;\n V = (V + 15) & -16;\n return b | 0;\n }\n function hr(a) {\n a = a | 0;\n V = a;\n }\n function ir() {\n return V | 0;\n }\n function jr(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0, d = 0, e = 0, f = 0;\n f = a & 65535;\n e = b & 65535;\n c = q(e, f) | 0;\n d = a >>> 16;\n a = ((c >>> 16) + (q(e, d) | 0)) | 0;\n e = b >>> 16;\n b = q(e, f) | 0;\n return ((t(((a >>> 16) + (q(e, d) | 0) + ((((a & 65535) + b) | 0) >>> 16)) | 0),\n ((a + b) << 16) | (c & 65535) | 0) | 0);\n }\n function kr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = a;\n f = c;\n c = jr(e, f) | 0;\n a = u() | 0;\n return (t(((q(b, f) | 0) + (q(d, e) | 0) + a) | (a & 0) | 0), c | 0 | 0) | 0;\n }\n function lr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n c = (a + c) >>> 0;\n return (t(((b + d + ((c >>> 0 < a >>> 0) | 0)) >>> 0) | 0), c | 0) | 0;\n }\n function mr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n d = (b - d - ((c >>> 0 > a >>> 0) | 0)) >>> 0;\n return (t(d | 0), ((a - c) >>> 0) | 0) | 0;\n }\n function nr(a) {\n a = a | 0;\n return (a ? (31 - (r(a ^ (a - 1)) | 0)) | 0 : 32) | 0;\n }\n function or(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n l = a;\n j = b;\n k = j;\n h = d;\n n = e;\n i = n;\n if (!k) {\n g = (f | 0) != 0;\n if (!i) {\n if (g) {\n c[f >> 2] = (l >>> 0) % (h >>> 0);\n c[(f + 4) >> 2] = 0;\n }\n n = 0;\n f = ((l >>> 0) / (h >>> 0)) >>> 0;\n return (t(n | 0), f) | 0;\n }\n else {\n if (!g) {\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = b & 0;\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n }\n g = (i | 0) == 0;\n do\n if (h) {\n if (!g) {\n g = ((r(i | 0) | 0) - (r(k | 0) | 0)) | 0;\n if (g >>> 0 <= 31) {\n m = (g + 1) | 0;\n i = (31 - g) | 0;\n b = (g - 31) >> 31;\n h = m;\n a = ((l >>> (m >>> 0)) & b) | (k << i);\n b = (k >>> (m >>> 0)) & b;\n g = 0;\n i = l << i;\n break;\n }\n if (!f) {\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = j | (b & 0);\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n g = (h - 1) | 0;\n if ((g & h) | 0) {\n i = ((r(h | 0) | 0) + 33 - (r(k | 0) | 0)) | 0;\n p = (64 - i) | 0;\n m = (32 - i) | 0;\n j = m >> 31;\n o = (i - 32) | 0;\n b = o >> 31;\n h = i;\n a = (((m - 1) >> 31) & (k >>> (o >>> 0))) | (((k << m) | (l >>> (i >>> 0))) & b);\n b = b & (k >>> (i >>> 0));\n g = (l << p) & j;\n i = (((k << p) | (l >>> (o >>> 0))) & j) | ((l << m) & ((i - 33) >> 31));\n break;\n }\n if (f | 0) {\n c[f >> 2] = g & l;\n c[(f + 4) >> 2] = 0;\n }\n if ((h | 0) == 1) {\n o = j | (b & 0);\n p = a | 0 | 0;\n return (t(o | 0), p) | 0;\n }\n else {\n p = nr(h | 0) | 0;\n o = (k >>> (p >>> 0)) | 0;\n p = (k << (32 - p)) | (l >>> (p >>> 0)) | 0;\n return (t(o | 0), p) | 0;\n }\n }\n else {\n if (g) {\n if (f | 0) {\n c[f >> 2] = (k >>> 0) % (h >>> 0);\n c[(f + 4) >> 2] = 0;\n }\n o = 0;\n p = ((k >>> 0) / (h >>> 0)) >>> 0;\n return (t(o | 0), p) | 0;\n }\n if (!l) {\n if (f | 0) {\n c[f >> 2] = 0;\n c[(f + 4) >> 2] = (k >>> 0) % (i >>> 0);\n }\n o = 0;\n p = ((k >>> 0) / (i >>> 0)) >>> 0;\n return (t(o | 0), p) | 0;\n }\n g = (i - 1) | 0;\n if (!(g & i)) {\n if (f | 0) {\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = (g & k) | (b & 0);\n }\n o = 0;\n p = k >>> ((nr(i | 0) | 0) >>> 0);\n return (t(o | 0), p) | 0;\n }\n g = ((r(i | 0) | 0) - (r(k | 0) | 0)) | 0;\n if (g >>> 0 <= 30) {\n b = (g + 1) | 0;\n i = (31 - g) | 0;\n h = b;\n a = (k << i) | (l >>> (b >>> 0));\n b = k >>> (b >>> 0);\n g = 0;\n i = l << i;\n break;\n }\n if (!f) {\n o = 0;\n p = 0;\n return (t(o | 0), p) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = j | (b & 0);\n o = 0;\n p = 0;\n return (t(o | 0), p) | 0;\n }\n while (0);\n if (!h) {\n k = i;\n j = 0;\n i = 0;\n }\n else {\n m = d | 0 | 0;\n l = n | (e & 0);\n k = lr(m | 0, l | 0, -1, -1) | 0;\n d = u() | 0;\n j = i;\n i = 0;\n do {\n e = j;\n j = (g >>> 31) | (j << 1);\n g = i | (g << 1);\n e = (a << 1) | (e >>> 31) | 0;\n n = (a >>> 31) | (b << 1) | 0;\n mr(k | 0, d | 0, e | 0, n | 0) | 0;\n p = u() | 0;\n o = (p >> 31) | (((p | 0) < 0 ? -1 : 0) << 1);\n i = o & 1;\n a =\n mr(e | 0, n | 0, (o & m) | 0, (((((p | 0) < 0 ? -1 : 0) >> 31) | (((p | 0) < 0 ? -1 : 0) << 1)) & l) | 0) | 0;\n b = u() | 0;\n h = (h - 1) | 0;\n } while ((h | 0) != 0);\n k = j;\n j = 0;\n }\n h = 0;\n if (f | 0) {\n c[f >> 2] = a;\n c[(f + 4) >> 2] = b;\n }\n o = ((g | 0) >>> 31) | ((k | h) << 1) | (((h << 1) | (g >>> 31)) & 0) | j;\n p = (((g << 1) | (0 >>> 31)) & -2) | i;\n return (t(o | 0), p) | 0;\n }\n function pr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n return or(a, b, c, d, 0) | 0;\n }\n function qr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) < 32) {\n t((b >>> c) | 0);\n return (a >>> c) | ((b & ((1 << c) - 1)) << (32 - c));\n }\n t(0);\n return (b >>> (c - 32)) | 0;\n }\n function rr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) < 32) {\n t((b << c) | ((a & (((1 << c) - 1) << (32 - c))) >>> (32 - c)) | 0);\n return a << c;\n }\n t((a << (c - 32)) | 0);\n return 0;\n }\n function sr() {\n return 22176;\n }\n function tr(a) {\n a = a | 0;\n return (((a & 255) << 24) | (((a >> 8) & 255) << 16) | (((a >> 16) & 255) << 8) | (a >>> 24) | 0);\n }\n function ur(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n if ((e | 0) >= 512) {\n S(b | 0, d | 0, e | 0) | 0;\n return b | 0;\n }\n h = b | 0;\n g = (b + e) | 0;\n if ((b & 3) == (d & 3)) {\n while (b & 3) {\n if (!e)\n return h | 0;\n a[b >> 0] = a[d >> 0] | 0;\n b = (b + 1) | 0;\n d = (d + 1) | 0;\n e = (e - 1) | 0;\n }\n e = (g & -4) | 0;\n f = (e - 64) | 0;\n while ((b | 0) <= (f | 0)) {\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n c[(b + 8) >> 2] = c[(d + 8) >> 2];\n c[(b + 12) >> 2] = c[(d + 12) >> 2];\n c[(b + 16) >> 2] = c[(d + 16) >> 2];\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n c[(b + 36) >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n c[(b + 44) >> 2] = c[(d + 44) >> 2];\n c[(b + 48) >> 2] = c[(d + 48) >> 2];\n c[(b + 52) >> 2] = c[(d + 52) >> 2];\n c[(b + 56) >> 2] = c[(d + 56) >> 2];\n c[(b + 60) >> 2] = c[(d + 60) >> 2];\n b = (b + 64) | 0;\n d = (d + 64) | 0;\n }\n while ((b | 0) < (e | 0)) {\n c[b >> 2] = c[d >> 2];\n b = (b + 4) | 0;\n d = (d + 4) | 0;\n }\n }\n else {\n e = (g - 4) | 0;\n while ((b | 0) < (e | 0)) {\n a[b >> 0] = a[d >> 0] | 0;\n a[(b + 1) >> 0] = a[(d + 1) >> 0] | 0;\n a[(b + 2) >> 0] = a[(d + 2) >> 0] | 0;\n a[(b + 3) >> 0] = a[(d + 3) >> 0] | 0;\n b = (b + 4) | 0;\n d = (d + 4) | 0;\n }\n }\n while ((b | 0) < (g | 0)) {\n a[b >> 0] = a[d >> 0] | 0;\n b = (b + 1) | 0;\n d = (d + 1) | 0;\n }\n return h | 0;\n }\n function vr(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n if (((c | 0) < (b | 0)) & ((b | 0) < ((c + d) | 0))) {\n e = b;\n c = (c + d) | 0;\n b = (b + d) | 0;\n while ((d | 0) > 0) {\n b = (b - 1) | 0;\n c = (c - 1) | 0;\n d = (d - 1) | 0;\n a[b >> 0] = a[c >> 0] | 0;\n }\n b = e;\n }\n else\n ur(b, c, d) | 0;\n return b | 0;\n }\n function wr(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0;\n h = (b + e) | 0;\n d = d & 255;\n if ((e | 0) >= 67) {\n while (b & 3) {\n a[b >> 0] = d;\n b = (b + 1) | 0;\n }\n f = (h & -4) | 0;\n i = d | (d << 8) | (d << 16) | (d << 24);\n g = (f - 64) | 0;\n while ((b | 0) <= (g | 0)) {\n c[b >> 2] = i;\n c[(b + 4) >> 2] = i;\n c[(b + 8) >> 2] = i;\n c[(b + 12) >> 2] = i;\n c[(b + 16) >> 2] = i;\n c[(b + 20) >> 2] = i;\n c[(b + 24) >> 2] = i;\n c[(b + 28) >> 2] = i;\n c[(b + 32) >> 2] = i;\n c[(b + 36) >> 2] = i;\n c[(b + 40) >> 2] = i;\n c[(b + 44) >> 2] = i;\n c[(b + 48) >> 2] = i;\n c[(b + 52) >> 2] = i;\n c[(b + 56) >> 2] = i;\n c[(b + 60) >> 2] = i;\n b = (b + 64) | 0;\n }\n while ((b | 0) < (f | 0)) {\n c[b >> 2] = i;\n b = (b + 4) | 0;\n }\n }\n while ((b | 0) < (h | 0)) {\n a[b >> 0] = d;\n b = (b + 1) | 0;\n }\n return (h - e) | 0;\n }\n function xr(a) {\n a = a | 0;\n return Y[a & 3]() | 0;\n }\n function yr(a, b) {\n a = a | 0;\n b = b | 0;\n return Z[a & 15](b | 0) | 0;\n }\n function zr(a, b, c, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n c = +c;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n return _[a & 1](b | 0, +c, d | 0, e | 0, f | 0, g | 0) | 0;\n }\n function Ar(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return $[a & 63](b | 0, c | 0) | 0;\n }\n function Br(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n return aa[a & 7](b | 0, c | 0, d | 0) | 0;\n }\n function Cr(a) {\n a = a | 0;\n ba[a & 3]();\n }\n function Dr(a, b) {\n a = a | 0;\n b = b | 0;\n ca[a & 255](b | 0);\n }\n function Er(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n da[a & 15](b | 0, c | 0);\n }\n function Fr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n ea[a & 15](b | 0, c | 0, d | 0);\n }\n function Gr(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n fa[a & 7](b | 0, c | 0, d | 0, e | 0);\n }\n function Hr(a, b, c, d, e, f) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n ga[a & 3](b | 0, c | 0, d | 0, e | 0, f | 0);\n }\n function Ir(a, b, c, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n ha[a & 3](b | 0, c | 0, d | 0, e | 0, f | 0, g | 0);\n }\n function Jr() {\n s(0);\n return 0;\n }\n function Kr(a) {\n a = a | 0;\n s(1);\n return 0;\n }\n function Lr(a, b, c, d, e, f) {\n a = a | 0;\n b = +b;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n s(2);\n return 0;\n }\n function Mr(a, b) {\n a = a | 0;\n b = b | 0;\n s(3);\n return 0;\n }\n function Nr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n s(4);\n return 0;\n }\n function Or() {\n s(5);\n }\n function Pr(a) {\n a = a | 0;\n s(6);\n }\n function Qr(a, b) {\n a = a | 0;\n b = b | 0;\n s(7);\n }\n function Rr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n s(8);\n }\n function Sr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n s(9);\n }\n function Tr(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n s(10);\n }\n function Ur(a, b, c, d, e, f) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n s(11);\n }\n // EMSCRIPTEN_END_FUNCS\n var Y = [Jr, Mk, Fl, Jr];\n var Z = [Kr, Ap, zb, Fb, qp, tp, oq, Kq, Tq, wk, na, tl, Ok, Hl, Kr, Kr];\n var _ = [Lr, po];\n var $ = [\n Mr,\n Ba,\n Ka,\n Eb,\n jd,\n Nd,\n Xd,\n je,\n ke,\n ne,\n _e,\n ff,\n yf,\n Ff,\n Of,\n Vf,\n Hg,\n Qg,\n Zg,\n ch,\n lh,\n qh,\n zh,\n Eh,\n Nh,\n _h,\n fi,\n ki,\n si,\n Bi,\n Si,\n Zi,\n fj,\n oj,\n yj,\n Fj,\n Pj,\n Yj,\n ek,\n lk,\n tk,\n ll,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr\n ];\n var aa = [Nr, Io, Yo, Fp, Hp, Mq, Nq, Nr];\n var ba = [Or, Dp, Po, Or];\n var ca = [\n Pr,\n pq,\n za,\n Aa,\n Ca,\n Ia,\n Ja,\n La,\n yp,\n ob,\n Gb,\n yb,\n Bb,\n Cb,\n Lb,\n Mb,\n Xb,\n Yb,\n sc,\n tc,\n uc,\n Nc,\n hd,\n id,\n kd,\n Jd,\n Od,\n Pd,\n Qd,\n Rd,\n Vd,\n Wd,\n Yd,\n he,\n ie,\n le,\n me,\n Ye,\n Ze,\n $e,\n df,\n ef,\n wf,\n xf,\n zf,\n Df,\n Ef,\n Mf,\n Nf,\n Pf,\n Tf,\n Uf,\n Fg,\n Gg,\n Ig,\n Rg,\n Sg,\n Xg,\n Yg,\n _g,\n dh,\n eh,\n jh,\n kh,\n mh,\n rh,\n sh,\n xh,\n yh,\n Ah,\n Fh,\n Gh,\n Lh,\n Mh,\n Oh,\n Yh,\n Zh,\n $h,\n di,\n ei,\n gi,\n li,\n mi,\n qi,\n ri,\n ti,\n zi,\n Ai,\n Qi,\n Ri,\n Ti,\n Xi,\n Yi,\n dj,\n ej,\n gj,\n mj,\n nj,\n wj,\n xj,\n zj,\n Dj,\n Ej,\n Nj,\n Oj,\n Qj,\n Wj,\n Xj,\n ck,\n dk,\n fk,\n jk,\n kk,\n rk,\n sk,\n uk,\n Uo,\n Vo,\n Wo,\n Xo,\n fp,\n op,\n pp,\n rp,\n sp,\n zp,\n Bp,\n Cp,\n Ep,\n Gp,\n Lp,\n mq,\n nq,\n Iq,\n Jq,\n Sq,\n Yq,\n Zq,\n zk,\n wl,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr\n ];\n var da = [Qr, Ab, Db, ma, pa, qa, ra, sa, qo, Qr, Qr, Qr, Qr, Qr, Qr, Qr];\n var ea = [Rr, Lq, Oq, Uq, Vq, la, oa, dl, Vl, $l, Rr, Rr, Rr, Rr, Rr, Rr];\n var fa = [Sr, $o, ip, Op, Vk, Ol, Sr, Sr];\n var ga = [Tr, _o, hp, Np];\n var ha = [Ur, Zo, gp, Mp];\n return {\n __ZSt18uncaught_exceptionv: kq,\n ___cxa_can_catch: hq,\n ___cxa_is_pointer_type: iq,\n ___embind_register_native_and_builtin_types: im,\n ___errno_location: ao,\n ___getTypeName: $n,\n ___muldi3: kr,\n ___udivdi3: pr,\n _bitshift64Lshr: qr,\n _bitshift64Shl: rr,\n _emscripten_get_sbrk_ptr: sr,\n _free: er,\n _i64Add: lr,\n _i64Subtract: mr,\n _llvm_bswap_i32: tr,\n _malloc: dr,\n _memcpy: ur,\n _memmove: vr,\n _memset: wr,\n dynCall_i: xr,\n dynCall_ii: yr,\n dynCall_iidiiii: zr,\n dynCall_iii: Ar,\n dynCall_iiii: Br,\n dynCall_v: Cr,\n dynCall_vi: Dr,\n dynCall_vii: Er,\n dynCall_viii: Fr,\n dynCall_viiii: Gr,\n dynCall_viiiii: Hr,\n dynCall_viiiiii: Ir,\n globalCtors: ia,\n stackAlloc: gr,\n stackRestore: hr,\n stackSave: ir\n };\n })(\n // EMSCRIPTEN_END_ASM\n asmGlobalArg, asmLibraryArg, buffer);\n var __ZSt18uncaught_exceptionv = (Module['__ZSt18uncaught_exceptionv'] =\n asm['__ZSt18uncaught_exceptionv']);\n var ___cxa_can_catch = (Module['___cxa_can_catch'] = asm['___cxa_can_catch']);\n var ___cxa_is_pointer_type = (Module['___cxa_is_pointer_type'] = asm['___cxa_is_pointer_type']);\n var ___embind_register_native_and_builtin_types = (Module['___embind_register_native_and_builtin_types'] = asm['___embind_register_native_and_builtin_types']);\n var ___errno_location = (Module['___errno_location'] = asm['___errno_location']);\n var ___getTypeName = (Module['___getTypeName'] = asm['___getTypeName']);\n var ___muldi3 = (Module['___muldi3'] = asm['___muldi3']);\n var ___udivdi3 = (Module['___udivdi3'] = asm['___udivdi3']);\n var _bitshift64Lshr = (Module['_bitshift64Lshr'] = asm['_bitshift64Lshr']);\n var _bitshift64Shl = (Module['_bitshift64Shl'] = asm['_bitshift64Shl']);\n var _emscripten_get_sbrk_ptr = (Module['_emscripten_get_sbrk_ptr'] =\n asm['_emscripten_get_sbrk_ptr']);\n var _free = (Module['_free'] = asm['_free']);\n var _i64Add = (Module['_i64Add'] = asm['_i64Add']);\n var _i64Subtract = (Module['_i64Subtract'] = asm['_i64Subtract']);\n var _llvm_bswap_i32 = (Module['_llvm_bswap_i32'] = asm['_llvm_bswap_i32']);\n var _malloc = (Module['_malloc'] = asm['_malloc']);\n var _memcpy = (Module['_memcpy'] = asm['_memcpy']);\n var _memmove = (Module['_memmove'] = asm['_memmove']);\n var _memset = (Module['_memset'] = asm['_memset']);\n var globalCtors = (Module['globalCtors'] = asm['globalCtors']);\n var stackAlloc = (Module['stackAlloc'] = asm['stackAlloc']);\n var stackRestore = (Module['stackRestore'] = asm['stackRestore']);\n var stackSave = (Module['stackSave'] = asm['stackSave']);\n var dynCall_i = (Module['dynCall_i'] = asm['dynCall_i']);\n var dynCall_ii = (Module['dynCall_ii'] = asm['dynCall_ii']);\n var dynCall_iidiiii = (Module['dynCall_iidiiii'] = asm['dynCall_iidiiii']);\n var dynCall_iii = (Module['dynCall_iii'] = asm['dynCall_iii']);\n var dynCall_iiii = (Module['dynCall_iiii'] = asm['dynCall_iiii']);\n var dynCall_v = (Module['dynCall_v'] = asm['dynCall_v']);\n var dynCall_vi = (Module['dynCall_vi'] = asm['dynCall_vi']);\n var dynCall_vii = (Module['dynCall_vii'] = asm['dynCall_vii']);\n var dynCall_viii = (Module['dynCall_viii'] = asm['dynCall_viii']);\n var dynCall_viiii = (Module['dynCall_viiii'] = asm['dynCall_viiii']);\n var dynCall_viiiii = (Module['dynCall_viiiii'] = asm['dynCall_viiiii']);\n var dynCall_viiiiii = (Module['dynCall_viiiiii'] = asm['dynCall_viiiiii']);\n Module['asm'] = asm;\n if (memoryInitializer) {\n if (!isDataURI(memoryInitializer)) {\n memoryInitializer = locateFile(memoryInitializer);\n }\n if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) {\n var data = readBinary(memoryInitializer);\n HEAPU8.set(data, GLOBAL_BASE);\n }\n else {\n addRunDependency('memory initializer');\n var applyMemoryInitializer = function (data) {\n if (data.byteLength)\n data = new Uint8Array(data);\n HEAPU8.set(data, GLOBAL_BASE);\n if (Module['memoryInitializerRequest'])\n delete Module['memoryInitializerRequest'].response;\n removeRunDependency('memory initializer');\n };\n var doBrowserLoad = function () {\n readAsync(memoryInitializer, applyMemoryInitializer, function () {\n var e = new Error('could not load memory initializer ' + memoryInitializer);\n throw e;\n });\n };\n var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer);\n if (memoryInitializerBytes) {\n applyMemoryInitializer(memoryInitializerBytes.buffer);\n }\n else if (Module['memoryInitializerRequest']) {\n var useRequest = function () {\n var request = Module['memoryInitializerRequest'];\n var response = request.response;\n if (request.status !== 200 && request.status !== 0) {\n var data = tryParseAsDataURI(Module['memoryInitializerRequestURL']);\n if (data) {\n response = data.buffer;\n }\n else {\n console.warn('a problem seems to have happened with Module.memoryInitializerRequest, status: ' +\n request.status +\n ', retrying ' +\n memoryInitializer);\n doBrowserLoad();\n return;\n }\n }\n applyMemoryInitializer(response);\n };\n if (Module['memoryInitializerRequest'].response) {\n setTimeout(useRequest, 0);\n }\n else {\n Module['memoryInitializerRequest'].addEventListener('load', useRequest);\n }\n }\n else {\n doBrowserLoad();\n }\n }\n }\n var calledRun;\n function ExitStatus(status) {\n this.name = 'ExitStatus';\n this.message = 'Program terminated with exit(' + status + ')';\n this.status = status;\n }\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run(args) {\n args = args || arguments_;\n if (runDependencies > 0) {\n return;\n }\n preRun();\n if (runDependencies > 0)\n return;\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module['calledRun'] = true;\n if (ABORT)\n return;\n initRuntime();\n preMain();\n if (Module['onRuntimeInitialized'])\n Module['onRuntimeInitialized']();\n postRun();\n }\n if (Module['setStatus']) {\n Module['setStatus']('Running...');\n setTimeout(function () {\n setTimeout(function () {\n Module['setStatus']('');\n }, 1);\n doRun();\n }, 1);\n }\n else {\n doRun();\n }\n }\n Module['run'] = run;\n if (Module['preInit']) {\n if (typeof Module['preInit'] == 'function')\n Module['preInit'] = [Module['preInit']];\n while (Module['preInit'].length > 0) {\n Module['preInit'].pop()();\n }\n }\n noExitRuntime = true;\n run();\n return Module;\n}\n", "import getModule from \"./libs/laz-perf.js\";\nlet Module = null;\nconst POINT_FORMAT_READERS = {\n 0: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15)\n };\n },\n 1: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15)\n };\n },\n 2: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15),\n color: [dv.getUint16(20, true), dv.getUint16(22, true), dv.getUint16(24, true)]\n };\n },\n 3: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15),\n color: [dv.getUint16(28, true), dv.getUint16(30, true), dv.getUint16(32, true)]\n };\n }\n};\n/**\n * Reads incoming binary data depends on the Type parameter\n * @param buf\n * @param Type\n * @param offset\n * @param count\n * @returns number | number[] from incoming binary data\n */\nfunction readAs(buf, Type = {}, offset, count) {\n count = count === undefined || count === 0 ? 1 : count;\n const sub = buf.slice(offset, offset + Type.BYTES_PER_ELEMENT * count);\n const r = new Type(sub);\n if (count === 1) {\n return r[0];\n }\n const ret = [];\n for (let i = 0; i < count; i++) {\n ret.push(r[i]);\n }\n return ret;\n}\n/**\n * Parsing of header's attributes\n * @param arraybuffer\n * @returns header as LASHeader\n */\nfunction parseLASHeader(arraybuffer) {\n let start = 32 * 3 + 35;\n const o = {\n pointsOffset: readAs(arraybuffer, Uint32Array, 32 * 3),\n pointsFormatId: readAs(arraybuffer, Uint8Array, 32 * 3 + 8),\n pointsStructSize: readAs(arraybuffer, Uint16Array, 32 * 3 + 8 + 1),\n pointsCount: readAs(arraybuffer, Uint32Array, 32 * 3 + 11),\n scale: readAs(arraybuffer, Float64Array, start, 3)\n };\n start += 24; // 8*3\n o.offset = readAs(arraybuffer, Float64Array, start, 3);\n start += 24;\n const bounds = readAs(arraybuffer, Float64Array, start, 6);\n start += 48; // 8*6;\n o.maxs = [bounds[0], bounds[2], bounds[4]];\n o.mins = [bounds[1], bounds[3], bounds[5]];\n return o;\n}\n// LAS Loader\n// Loads uncompressed files\n//\nclass LASLoader {\n arraybuffer;\n readOffset = 0;\n header = {\n pointsOffset: 0,\n pointsFormatId: 0,\n pointsStructSize: 0,\n pointsCount: 0,\n scale: [0, 0, 0],\n offset: [0, 0, 0],\n maxs: [0],\n mins: [0],\n totalToRead: 0,\n totalRead: 0,\n versionAsString: '',\n isCompressed: true\n };\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n }\n /**\n * @returns boolean\n */\n open() {\n // Nothing needs to be done to open this\n return true;\n }\n /**\n * Parsing of incoming binary\n * @returns LASHeader\n */\n getHeader() {\n this.header = parseLASHeader(this.arraybuffer);\n return this.header;\n }\n /**\n * Reading data\n * @param count\n * @param skip\n * @returns new ArrayBuffer, count, hasMoreData\n */\n readData(count, skip) {\n const { header, arraybuffer } = this;\n if (!header) {\n throw new Error('Cannot start reading data till a header request is issued');\n }\n let { readOffset } = this;\n let start;\n if (skip <= 1) {\n count = Math.min(count, header.pointsCount - readOffset);\n start = header.pointsOffset + readOffset * header.pointsStructSize;\n const end = start + count * header.pointsStructSize;\n readOffset += count;\n this.readOffset = readOffset;\n return {\n buffer: arraybuffer.slice(start, end),\n count,\n hasMoreData: readOffset < header.pointsCount\n };\n }\n const pointsToRead = Math.min(count * skip, header.pointsCount - readOffset);\n const bufferSize = Math.ceil(pointsToRead / skip);\n let pointsRead = 0;\n const buf = new Uint8Array(bufferSize * header.pointsStructSize);\n for (let i = 0; i < pointsToRead; i++) {\n if (i % skip === 0) {\n start = header.pointsOffset + readOffset * header.pointsStructSize;\n const src = new Uint8Array(arraybuffer, start, header.pointsStructSize);\n buf.set(src, pointsRead * header.pointsStructSize);\n pointsRead++;\n }\n readOffset++;\n }\n this.readOffset = readOffset;\n return {\n buffer: buf.buffer,\n count: pointsRead,\n hasMoreData: readOffset < header.pointsCount\n };\n }\n /**\n * Method which brings data to null to close the file\n * @returns\n */\n close() {\n // @ts-ignore Possibly null\n this.arraybuffer = null;\n return true;\n }\n}\n/**\n * LAZ Loader\n * Uses NaCL module to load LAZ files\n */\nclass LAZLoader {\n arraybuffer;\n instance = null; // LASZip instance\n header = null;\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n if (!Module) {\n // Avoid executing laz-perf on import\n Module = getModule();\n }\n }\n /**\n * Opens the file\n * @returns boolean\n */\n open() {\n try {\n const { arraybuffer } = this;\n this.instance = new Module.LASZip();\n const abInt = new Uint8Array(arraybuffer);\n const buf = Module._malloc(arraybuffer.byteLength);\n this.instance.arraybuffer = arraybuffer;\n this.instance.buf = buf;\n Module.HEAPU8.set(abInt, buf);\n this.instance.open(buf, arraybuffer.byteLength);\n this.instance.readOffset = 0;\n return true;\n }\n catch (error) {\n throw new Error(`Failed to open file: ${error.message}`);\n }\n }\n getHeader() {\n if (!this.instance) {\n throw new Error('You need to open the file before trying to read header');\n }\n try {\n const header = parseLASHeader(this.instance.arraybuffer);\n header.pointsFormatId &= 0x3f;\n this.header = header;\n return header;\n }\n catch (error) {\n throw new Error(`Failed to get header: ${error.message}`);\n }\n }\n /**\n * @param count\n * @param offset\n * @param skip\n * @returns Data\n */\n readData(count, offset, skip) {\n if (!this.instance) {\n throw new Error('You need to open the file before trying to read stuff');\n }\n const { header, instance } = this;\n if (!header) {\n throw new Error('You need to query header before reading, I maintain state that way, sorry :(');\n }\n try {\n const pointsToRead = Math.min(count * skip, header.pointsCount - instance.readOffset);\n const bufferSize = Math.ceil(pointsToRead / skip);\n let pointsRead = 0;\n const thisBuf = new Uint8Array(bufferSize * header.pointsStructSize);\n const bufRead = Module._malloc(header.pointsStructSize);\n for (let i = 0; i < pointsToRead; i++) {\n instance.getPoint(bufRead);\n if (i % skip === 0) {\n const a = new Uint8Array(Module.HEAPU8.buffer, bufRead, header.pointsStructSize);\n thisBuf.set(a, pointsRead * header.pointsStructSize);\n pointsRead++;\n }\n instance.readOffset++;\n }\n Module._free(bufRead);\n return {\n buffer: thisBuf.buffer,\n count: pointsRead,\n hasMoreData: instance.readOffset < header.pointsCount\n };\n }\n catch (error) {\n throw new Error(`Failed to read data: ${error.message}`);\n }\n }\n /**\n * Deletes the instance\n * @returns boolean\n */\n close() {\n try {\n if (this.instance !== null) {\n Module._free(this.instance.buf);\n this.instance.delete();\n this.instance = null;\n }\n return true;\n }\n catch (error) {\n throw new Error(`Failed to close file: ${error.message}`);\n }\n }\n}\n/**\n * Helper class: Decodes LAS records into points\n */\nclass LASDecoder {\n arrayb;\n decoder;\n pointsCount;\n pointSize;\n scale;\n offset;\n mins;\n maxs;\n constructor(buffer, len, header) {\n this.arrayb = buffer;\n this.decoder = POINT_FORMAT_READERS[header.pointsFormatId];\n this.pointsCount = len;\n this.pointSize = header.pointsStructSize;\n this.scale = header.scale;\n this.offset = header.offset;\n this.mins = header.mins;\n this.maxs = header.maxs;\n }\n /**\n * Decodes data depends on this point size\n * @param index\n * @returns New object\n */\n getPoint(index) {\n if (index < 0 || index >= this.pointsCount) {\n throw new Error('Point index out of range');\n }\n const dv = new DataView(this.arrayb, index * this.pointSize, this.pointSize);\n return this.decoder(dv);\n }\n}\n/**\n * A single consistent interface for loading LAS/LAZ files\n */\nexport class LASFile {\n arraybuffer;\n formatId = 0;\n loader;\n isCompressed = true;\n isOpen = false;\n version = 0;\n versionAsString = '';\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n if (this.determineVersion() > 13) {\n throw new Error('Only file versions <= 1.3 are supported at this time');\n }\n this.determineFormat();\n if (POINT_FORMAT_READERS[this.formatId] === undefined) {\n throw new Error('The point format ID is not supported');\n }\n this.loader = this.isCompressed\n ? new LAZLoader(this.arraybuffer)\n : new LASLoader(this.arraybuffer);\n }\n /**\n * Determines format in parameters of LASHeaer\n */\n determineFormat() {\n const formatId = readAs(this.arraybuffer, Uint8Array, 32 * 3 + 8);\n const bit7 = (formatId & 0x80) >> 7;\n const bit6 = (formatId & 0x40) >> 6;\n if (bit7 === 1 && bit6 === 1) {\n throw new Error('Old style compression not supported');\n }\n this.formatId = formatId & 0x3f;\n this.isCompressed = bit7 === 1 || bit6 === 1;\n }\n /**\n * Determines version\n * @returns version\n */\n determineVersion() {\n const ver = new Int8Array(this.arraybuffer, 24, 2);\n this.version = ver[0] * 10 + ver[1];\n this.versionAsString = `${ver[0]}.${ver[1]}`;\n return this.version;\n }\n /**\n * Reads if the file is open\n * @returns boolean\n */\n open() {\n if (this.loader.open()) {\n this.isOpen = true;\n }\n }\n /**\n * Gets the header\n * @returns Header\n */\n getHeader() {\n return this.loader.getHeader();\n }\n /**\n * @param count\n * @param start\n * @param skip\n * @returns Data\n */\n readData(count, start, skip) {\n return this.loader.readData(count, start, skip);\n }\n /**\n * Closes the file\n */\n close() {\n if (this.loader.close()) {\n this.isOpen = false;\n }\n }\n /**\n */\n getUnpacker() {\n return LASDecoder;\n }\n}\nexport const LASModuleWasLoaded = false;\n/* eslint no-use-before-define: 2 */\n", "import { deduceMeshSchema } from '@loaders.gl/schema';\n/**\n * Gets schema from PLY header\n * @param lasHeader\n * @param metadata\n * @returns Schema\n */\nexport function getLASSchema(lasHeader, attributes) {\n const metadataMap = makeMetadataFromLasHeader(lasHeader);\n const schema = deduceMeshSchema(attributes, metadataMap);\n return schema;\n}\n/**\n * Make arrow like schema metadata by LASHeader properties\n * @param lasHeader\n * @returns\n */\nexport function makeMetadataFromLasHeader(lasHeader) {\n const metadata = {};\n /* eslint-disable camelcase */\n metadata.las_pointsOffset = lasHeader.pointsOffset.toString(10);\n metadata.las_pointsFormatId = lasHeader.pointsFormatId.toString(10);\n metadata.las_pointsStructSize = lasHeader.pointsStructSize.toString(10);\n metadata.las_pointsCount = lasHeader.pointsCount.toString(10);\n metadata.las_scale = JSON.stringify(lasHeader.scale);\n metadata.las_offset = JSON.stringify(lasHeader.offset);\n if (lasHeader.maxs !== undefined) {\n metadata.las_maxs = JSON.stringify(lasHeader.maxs);\n }\n if (lasHeader.mins !== undefined) {\n metadata.las_mins = JSON.stringify(lasHeader.mins);\n }\n metadata.las_totalToRead = lasHeader.totalToRead.toString(10);\n metadata.las_pointsFortotalReadmatId = lasHeader.totalRead.toString(10);\n if (lasHeader.versionAsString !== undefined) {\n metadata.las_versionAsString = lasHeader.versionAsString;\n }\n if (lasHeader.isCompressed !== undefined) {\n metadata.las_isCompressed = lasHeader.isCompressed.toString();\n }\n return metadata;\n}\n", "import { getMeshBoundingBox /* , convertMesh */ } from '@loaders.gl/schema';\nimport { LASFile } from \"./laslaz-decoder.js\";\nimport { getLASSchema } from \"./get-las-schema.js\";\n/**\n * Parsing of .las file\n * @param arrayBuffer\n * @param options\n * @returns LASHeader\n */\nexport function parseLAS(arrayBuffer, options) {\n return parseLASMesh(arrayBuffer, options);\n // This code breaks pointcloud example on the website\n // const mesh = parseLASMesh(arrayBuffer, options);\n // return convertMesh(mesh, options?.las?.shape || 'mesh') as LASMesh | ArrowTable | ColumnarTable;\n}\n/**\n * Parsing of .las file\n * @param arrayBuffer\n * @param options\n * @returns LASHeader\n */\nfunction parseLASMesh(arrayBuffer, options = {}) {\n let pointIndex = 0;\n let positions;\n let colors;\n let intensities;\n let classifications;\n let originalHeader;\n const lasMesh = {\n loader: 'las',\n loaderData: {},\n // shape: 'mesh',\n schema: { fields: [], metadata: {} },\n header: {\n vertexCount: 0,\n boundingBox: [\n [0, 0, 0],\n [0, 0, 0]\n ]\n },\n attributes: {},\n topology: 'point-list',\n mode: 0 // GL.POINTS\n };\n /* eslint-disable max-statements */\n // @ts-ignore Possibly undefined\n parseLASChunked(arrayBuffer, options.las?.skip, (decoder = {}, lasHeader) => {\n if (!originalHeader) {\n originalHeader = lasHeader;\n const total = lasHeader.totalToRead;\n const PositionsType = options.las?.fp64 ? Float64Array : Float32Array;\n positions = new PositionsType(total * 3);\n // laslaz-decoder.js `pointFormatReaders`\n colors = lasHeader.pointsFormatId >= 2 ? new Uint8Array(total * 4) : null;\n intensities = new Uint16Array(total);\n classifications = new Uint8Array(total);\n lasMesh.loaderData = lasHeader;\n lasMesh.attributes = {\n POSITION: { value: positions, size: 3 },\n // non-gltf attributes, use non-capitalized names for now\n intensity: { value: intensities, size: 1 },\n classification: { value: classifications, size: 1 }\n };\n if (colors) {\n lasMesh.attributes.COLOR_0 = { value: colors, size: 4 };\n }\n }\n const batchSize = decoder.pointsCount;\n const { scale: [scaleX, scaleY, scaleZ], offset: [offsetX, offsetY, offsetZ] } = lasHeader;\n const twoByteColor = detectTwoByteColors(decoder, batchSize, options.las?.colorDepth);\n for (let i = 0; i < batchSize; i++) {\n const { position, color, intensity, classification } = decoder.getPoint(i);\n positions[pointIndex * 3] = position[0] * scaleX + offsetX;\n positions[pointIndex * 3 + 1] = position[1] * scaleY + offsetY;\n positions[pointIndex * 3 + 2] = position[2] * scaleZ + offsetZ;\n if (color && colors) {\n if (twoByteColor) {\n colors[pointIndex * 4] = color[0] / 256;\n colors[pointIndex * 4 + 1] = color[1] / 256;\n colors[pointIndex * 4 + 2] = color[2] / 256;\n }\n else {\n colors[pointIndex * 4] = color[0];\n colors[pointIndex * 4 + 1] = color[1];\n colors[pointIndex * 4 + 2] = color[2];\n }\n colors[pointIndex * 4 + 3] = 255;\n }\n intensities[pointIndex] = intensity;\n classifications[pointIndex] = classification;\n pointIndex++;\n }\n const meshBatch = {\n ...lasMesh,\n header: {\n vertexCount: lasHeader.totalRead\n },\n progress: lasHeader.totalRead / lasHeader.totalToRead\n };\n options?.onProgress?.(meshBatch);\n });\n /* eslint-enable max-statements */\n lasMesh.header = {\n vertexCount: originalHeader.totalToRead,\n boundingBox: getMeshBoundingBox(lasMesh?.attributes || {})\n };\n if (lasMesh) {\n lasMesh.schema = getLASSchema(lasMesh.loaderData, lasMesh.attributes);\n }\n return lasMesh;\n}\n/**\n * parse laz data\n * @param rawData\n * @param skip\n * @param onParseData\n * @return parsed point cloud\n */\n/* eslint-enable max-statements */\nexport function parseLASChunked(rawData, skip, onParseData = {}) {\n const dataHandler = new LASFile(rawData);\n try {\n // open data\n dataHandler.open();\n const header = dataHandler.getHeader();\n // start loading\n const Unpacker = dataHandler.getUnpacker();\n const totalToRead = Math.ceil(header.pointsCount / Math.max(1, skip));\n header.totalToRead = totalToRead;\n let totalRead = 0;\n /* eslint-disable no-constant-condition */\n while (true) {\n const chunk = dataHandler.readData(1000 * 100, 0, skip);\n totalRead += chunk.count;\n header.totalRead = totalRead;\n header.versionAsString = chunk.versionAsString;\n header.isCompressed = chunk.isCompressed;\n const unpacker = new Unpacker(chunk.buffer, chunk.count, header);\n // surface unpacker and progress via call back\n // use unpacker.pointsCount and unpacker.getPoint(i) to handle data in app\n onParseData(unpacker, header);\n if (!chunk.hasMoreData || totalRead >= totalToRead) {\n break;\n }\n }\n }\n catch (e) {\n throw e;\n }\n finally {\n dataHandler.close();\n }\n}\n/**\n * @param decoder\n * @param batchSize\n * @param colorDepth\n * @returns boolean\n */\nfunction detectTwoByteColors(decoder = {}, batchSize, colorDepth) {\n let twoByteColor = false;\n switch (colorDepth) {\n case 8:\n twoByteColor = false;\n break;\n case 16:\n twoByteColor = true;\n break;\n case 'auto':\n if (decoder.getPoint(0).color) {\n for (let i = 0; i < batchSize; i++) {\n const { color } = decoder.getPoint(i);\n // eslint-disable-next-line max-depth\n if (color[0] > 255 || color[1] > 255 || color[2] > 255) {\n twoByteColor = true;\n }\n }\n }\n break;\n default:\n // eslint-disable-next-line\n console.warn('las: illegal value for options.las.colorDepth');\n break;\n }\n return twoByteColor;\n}\n", "import { LASLoader as LASWorkerLoader } from \"./las-loader.js\";\nimport { parseLAS } from \"./lib/parse-las.js\";\nexport { LASWorkerLoader };\n/**\n * Loader for the LAS (LASer) point cloud format\n * @note Does not support LAS v1.4\n */\nexport const LASLoader = {\n ...LASWorkerLoader,\n parse: async (arrayBuffer, options) => parseLAS(arrayBuffer, options),\n parseSync: (arrayBuffer, options) => parseLAS(arrayBuffer, options)\n};\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {createMat4, createVec3, transformPoint3} from \"@xeokit/matrix\";\nimport {BasicAggregation, BasicEntity} from \"@xeokit/basictypes\";\nimport {createUUID} from \"@xeokit/utils\";\nimport {PointsPrimitive} from \"@xeokit/constants\";\nimport {parse} from '@loaders.gl/core';\nimport {LASLoader} from '@loaders.gl/las';\nimport {FloatArrayParam} from \"@xeokit/math\";\n\nconst MAX_VERTICES = 500000; // TODO: Rough estimate\n\n/**\n * Loads LAS/LAZ file data from an ArrayBuffer into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/las\"} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - LAS/LAZ file data\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param params.center - Whether to center the points. Default is false.\n * @param params.transform - Optional flattened 4x4 matrix to transform the points. Applied after centering, if specified.\n * @param params.skip - Option to oad every **n** points. Default is 1.\n * @param params.fp64 - Whether to assume that LAS positions are stored in 64-bit floats instead of 32-bit. Default is true.\n * @param params.colorDepth - Whether to assume that LAS colors are encoded using 8 or 16 bits. Accepted values are 8, 16 an \"auto\".\n * @returns {Promise} Resolves when LAS has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadLAS(params: {\n fileData: ArrayBuffer,\n sceneModel: SceneModel,\n dataModel?: DataModel,\n center?: boolean;\n transform?: FloatArrayParam;\n skip?: number;\n fp64?: boolean;\n colorDepth?: string | number,\n log?: Function\n}): Promise {\n\n return new Promise(function (resolve, reject) {\n\n const dataModel = params.dataModel;\n const sceneModel = params.sceneModel;\n\n if (sceneModel?.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n\n if (sceneModel?.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n\n if (dataModel?.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n\n if (dataModel?.built) {\n throw new SDKError(\"DataModel already built\");\n }\n\n const skip = params.skip || 1;\n\n const log = (msg) => {\n if (params.log) {\n params.log(msg);\n }\n }\n\n parse(params.fileData, LASLoader, {\n las: {\n colorDepth: params.colorDepth || \"auto\",\n fp64: params.fp64 !== undefined ? params.fp64 : false\n }\n\n }).then((parsedData) => {\n\n const attributes = parsedData.attributes;\n\n const loaderData = parsedData.loaderData;\n const pointsFormatId = loaderData.pointsFormatId !== undefined ? loaderData.pointsFormatId : -1;\n\n if (!attributes.POSITION) {\n log(\"No positions found in file (expected for all LAS point formats)\");\n return;\n }\n\n let readAttributes: any = {};\n\n switch (pointsFormatId) {\n case 0:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 0)\");\n return;\n }\n\n readAttributes = readIntensities(attributes.POSITION, attributes.intensity);\n break;\n case 1:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 1)\");\n return;\n }\n readAttributes = readIntensities(attributes.POSITION, attributes.intensity);\n break;\n case 2:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 2)\");\n return;\n }\n\n readAttributes = readColorsAndIntensities(attributes.POSITION, attributes.COLOR_0, attributes.intensity);\n break;\n case 3:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 3)\");\n return;\n }\n readAttributes = readColorsAndIntensities(attributes.POSITION, attributes.COLOR_0, attributes.intensity);\n break;\n }\n\n const pointsChunks = chunkArray(readPositions(readAttributes.positions), MAX_VERTICES * 3);\n const colorsChunks = chunkArray(readAttributes.colors, MAX_VERTICES * 4);\n\n const meshIds = [];\n\n for (let j = 0, lenj = pointsChunks.length; j < lenj; j++) {\n\n const geometryId = `geometry-${j}`;\n\n const geometry = sceneModel.createGeometry({\n id: geometryId,\n primitive: PointsPrimitive,\n positions: pointsChunks[j],\n colors: colorsChunks[j]\n });\n\n if (geometry instanceof SDKError) {\n log(`[ERROR] Failed to load point cloud: ${geometry.message}`);\n } else {\n\n const meshId = `mesh-${j}`;\n meshIds.push(meshId);\n\n const mesh = sceneModel.createMesh({\n id: meshId,\n geometryId\n });\n\n if (mesh instanceof SDKError) {\n log(`[ERROR] Failed to load point cloud: ${mesh.message}`);\n }\n }\n }\n\n const entityId = createUUID();\n\n sceneModel.createObject({\n id: entityId,\n meshIds\n });\n\n if (dataModel) {\n\n const rootMetaObjectId = createUUID();\n\n dataModel.createObject({\n id: rootMetaObjectId,\n type: BasicEntity,\n name: \"Model\",\n });\n\n dataModel.createObject({\n id: entityId,\n type: BasicEntity,\n name: \"PointCloud (LAZ)\",\n });\n\n dataModel.createRelationship({\n type: BasicAggregation,\n relatingObjectId: rootMetaObjectId,\n relatedObjectId: entityId\n });\n }\n\n resolve();\n\n }, (errMsg) => {\n reject(errMsg);\n });\n\n function readPositions(positionsValue) {\n\n if (positionsValue) {\n if (params.center) {\n const centerPos = createVec3();\n const numPoints = positionsValue.length;\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n centerPos[0] += positionsValue[i + 0];\n centerPos[1] += positionsValue[i + 1];\n centerPos[2] += positionsValue[i + 2];\n }\n centerPos[0] /= numPoints;\n centerPos[1] /= numPoints;\n centerPos[2] /= numPoints;\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n positionsValue[i + 0] -= centerPos[0];\n positionsValue[i + 1] -= centerPos[1];\n positionsValue[i + 2] -= centerPos[2];\n }\n }\n if (params.transform) {\n const mat = createMat4(params.transform);\n const pos = createVec3();\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n pos[0] = positionsValue[i + 0];\n pos[1] = positionsValue[i + 1];\n pos[2] = positionsValue[i + 2];\n transformPoint3(mat, pos, pos);\n positionsValue[i + 0] = pos[0];\n positionsValue[i + 1] = pos[1];\n positionsValue[i + 2] = pos[2];\n }\n }\n }\n return positionsValue;\n }\n\n function readColorsAndIntensities(attributesPosition, attributesColor, attributesIntensity) {\n const positionsValue = attributesPosition.value;\n const colors = attributesColor.value;\n const colorSize = attributesColor.size;\n const intensities = attributesIntensity.value;\n const colorsCompressedSize = intensities.length * 4;\n const positions = [];\n const colorsCompressed = new Uint8Array(colorsCompressedSize / skip);\n let count = skip;\n for (let i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, len = intensities.length; i < len; i++, k += colorSize, j += 4, l += 3) {\n if (count <= 0) {\n colorsCompressed[m++] = colors[k + 0];\n colorsCompressed[m++] = colors[k + 1];\n colorsCompressed[m++] = colors[k + 2];\n colorsCompressed[m++] = Math.round((intensities[i] / 65536) * 255);\n positions[n++] = positionsValue[l + 0];\n positions[n++] = positionsValue[l + 1];\n positions[n++] = positionsValue[l + 2];\n count = skip;\n } else {\n count--;\n }\n }\n return {\n positions,\n colors: colorsCompressed\n };\n }\n\n function readIntensities(attributesPosition, attributesIntensity) {\n const positionsValue = attributesPosition.value;\n const intensities = attributesIntensity.intensity;\n const colorsCompressedSize = intensities.length * 4;\n const positions = [];\n const colorsCompressed = new Uint8Array(colorsCompressedSize / skip);\n let count = skip;\n for (let i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, len = intensities.length; i < len; i++, k += 3, j += 4, l += 3) {\n if (count <= 0) {\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = Math.round((intensities[i] / 65536) * 255);\n positions[n++] = positionsValue[l + 0];\n positions[n++] = positionsValue[l + 1];\n positions[n++] = positionsValue[l + 2];\n count = skip;\n } else {\n count--;\n }\n }\n return {\n positions,\n colors: colorsCompressed\n };\n }\n\n function chunkArray(array, chunkSize) {\n if (chunkSize >= array.length) {\n return [array]; // One chunk\n }\n let result = [];\n for (let i = 0; i < array.length; i += chunkSize) {\n result.push(array.slice(i, i + chunkSize));\n }\n return result;\n }\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fgltf.svg)](https://badge.fury.io/js/%40xeokit%2Fgltf)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/gltf/badge)](https://www.jsdelivr.com/package/npm/@xeokit/gltf)\n *\n * \n *\n * # xeokit glTF Importer\n *\n * ---\n *\n * ### *Import models from the industry standard glTF model file format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [glTF](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#gltf) (GL Transmission Format), a\n * file format that is a runtime asset delivery format for 3D scenes and models.\n *\n * glTF is a compact and efficient format for 3D content, allowing fast loading and rendering in apps and web\n * browsers. It stores geometry, materials, textures, animations, and scene hierarchy, and is open and royalty-free,\n * making it a popular choice for 3D content distribution and exchange.\n *\n * To import a glTF model into xeokit, use the {@link loadGLTF} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNpVkctOwzAQRX8lmhVIaZVHE6dRlVUFm1Ygygp548YTMErsynYkStV_x84DqDf2vTM-Mx5foFYcoYS6ZcZsBXvXrKOSSi401lYoGexevB7iwaFGiXt3ow0uVAZuCT7u6vjp8s0oao3M4tNg3d2P3rEXLZ8FR2O1Ont59fSZv1OMP-5eH56Za8PMNTabk9doUVfVaDWixS2zbFTmt62JN9LaifbHaXo5PMpjhsTbghQiCotFRSGmcPgHnUlz7PYahNCh7pjgbpBDLQr2AzukULojx4b1raXgarpU1lt1OMsaSqt7DKE_cTesafRQNqw1zkUurNL76XP8FsKJSSgv8AVlEqXLvMgzEufrjCRRFsIZylVULAuyIklKkoKQNLuG8K2Ug0bLLEoJidd55Ow0iQfY2xDzXVx_ANo5py0?type=png)](https://mermaid.live/edit#pako:eNpVkctOwzAQRX8lmhVIaZVHE6dRlVUFm1Ygygp548YTMErsynYkStV_x84DqDf2vTM-Mx5foFYcoYS6ZcZsBXvXrKOSSi401lYoGexevB7iwaFGiXt3ow0uVAZuCT7u6vjp8s0oao3M4tNg3d2P3rEXLZ8FR2O1Ont59fSZv1OMP-5eH56Za8PMNTabk9doUVfVaDWixS2zbFTmt62JN9LaifbHaXo5PMpjhsTbghQiCotFRSGmcPgHnUlz7PYahNCh7pjgbpBDLQr2AzukULojx4b1raXgarpU1lt1OMsaSqt7DKE_cTesafRQNqw1zkUurNL76XP8FsKJSSgv8AVlEqXLvMgzEufrjCRRFsIZylVULAuyIklKkoKQNLuG8K2Ug0bLLEoJidd55Ow0iQfY2xDzXVx_ANo5py0)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/gltf\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/gltf!loadGLTF | loadGLTF} to load\n * a binary glTF (GLB) file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadGLTF} from \"@xeokit/gltf\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.glb\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadGLTF({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading glTF: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/gltf\n */\nexport * from \"./loadGLTF\";\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { getPrimitiveTextureData } from \"./utils/3d-tiles-utils.js\";\nconst EXT_MESH_FEATURES_NAME = 'EXT_mesh_features';\nexport const name = EXT_MESH_FEATURES_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtMeshFeatures(scenegraph, options);\n}\n/**\n * Decodes feature metadata from extension.\n * @param {GLTFScenegraph} scenegraph - Instance of the class for structured access to GLTF data.\n * @param {GLTFLoaderOptions} options - GLTFLoader options.\n */\nfunction decodeExtMeshFeatures(scenegraph, options) {\n const json = scenegraph.gltf.json;\n if (!json.meshes) {\n return;\n }\n // Iterate through all meshes/primitives.\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processMeshPrimitiveFeatures(scenegraph, primitive, options);\n }\n }\n}\n/**\n * Takes data from EXT_mesh_features and store it in 'data' property of featureIds.\n * If combined with EXT_structural_metadata, corresponding data are taken from the property tables of that extension.\n * @param {GLTFScenegraph} scenegraph - Instance of the class for structured access to GLTF data.\n * @param {GLTFMeshPrimitive} primitive - Primitive that contains extensions.\n * @param {GLTFLoaderOptions} options - GLTFLoader options.\n */\nfunction processMeshPrimitiveFeatures(scenegraph, primitive, options) {\n // Processing of mesh primitive features requires buffers to be loaded.\n if (!options?.gltf?.loadBuffers) {\n return;\n }\n const extension = primitive.extensions?.[EXT_MESH_FEATURES_NAME];\n const featureIds = extension?.featureIds;\n if (!featureIds) {\n return;\n }\n for (const featureId of featureIds) {\n let featureIdData;\n // Process \"Feature ID by Vertex\"\n if (typeof featureId.attribute !== 'undefined') {\n const accessorKey = `_FEATURE_ID_${featureId.attribute}`;\n const accessorIndex = primitive.attributes[accessorKey];\n featureIdData = scenegraph.getTypedArrayForAccessor(accessorIndex);\n }\n // Process \"Feature ID by Texture Coordinates\"\n else if (typeof featureId.texture !== 'undefined' && options?.gltf?.loadImages) {\n featureIdData = getPrimitiveTextureData(scenegraph, featureId.texture, primitive);\n }\n // Process \"Feature ID by Index\"\n else {\n /*\n When both featureId.attribute and featureId.texture are undefined,\n then the feature ID value for each vertex is given implicitly, via the index of the vertex.\n In this case, the featureCount must match the number of vertices of the mesh primitive.\n */\n // TODO: At the moment of writing we don't have a tileset with the data of that kind. Implement it later.\n featureIdData = [];\n }\n featureId.data = featureIdData;\n }\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "import { isBrowser } from '@loaders.gl/loader-utils';\n// @ts-ignore TS2339: Property does not exist on type\nconst parseImageNode = globalThis.loaders?.parseImageNode;\nconst IMAGE_SUPPORTED = typeof Image !== 'undefined'; // NOTE: \"false\" positives if jsdom is installed\nconst IMAGE_BITMAP_SUPPORTED = typeof ImageBitmap !== 'undefined';\nconst NODE_IMAGE_SUPPORTED = Boolean(parseImageNode);\nconst DATA_SUPPORTED = isBrowser ? true : NODE_IMAGE_SUPPORTED;\n/**\n * Checks if a loaders.gl image type is supported\n * @param type image type string\n */\nexport function isImageTypeSupported(type) {\n switch (type) {\n case 'auto':\n // Should only ever be false in Node.js, if polyfills have not been installed...\n return IMAGE_BITMAP_SUPPORTED || IMAGE_SUPPORTED || DATA_SUPPORTED;\n case 'imagebitmap':\n return IMAGE_BITMAP_SUPPORTED;\n case 'image':\n return IMAGE_SUPPORTED;\n case 'data':\n return DATA_SUPPORTED;\n default:\n throw new Error(`@loaders.gl/images: image ${type} not supported in this environment`);\n }\n}\n/**\n * Returns the \"most performant\" supported image type on this platform\n * @returns image type string\n */\nexport function getDefaultImageType() {\n if (IMAGE_BITMAP_SUPPORTED) {\n return 'imagebitmap';\n }\n if (IMAGE_SUPPORTED) {\n return 'image';\n }\n if (DATA_SUPPORTED) {\n return 'data';\n }\n // This should only happen in Node.js\n throw new Error('Install \\'@loaders.gl/polyfills\\' to parse images under Node.js');\n}\n", "export function isImage(image) {\n return Boolean(getImageTypeOrNull(image));\n}\nexport function deleteImage(image) {\n switch (getImageType(image)) {\n case 'imagebitmap':\n image.close();\n break;\n default:\n // Nothing to do for images and image data objects\n }\n}\nexport function getImageType(image) {\n const format = getImageTypeOrNull(image);\n if (!format) {\n throw new Error('Not an image');\n }\n return format;\n}\nexport function getImageSize(image) {\n return getImageData(image);\n}\nexport function getImageData(image) {\n switch (getImageType(image)) {\n case 'data':\n return image;\n case 'image':\n case 'imagebitmap':\n // Extract the image data from the image via a canvas\n const canvas = document.createElement('canvas');\n // TODO - reuse the canvas?\n const context = canvas.getContext('2d');\n if (!context) {\n throw new Error('getImageData');\n }\n // @ts-ignore\n canvas.width = image.width;\n // @ts-ignore\n canvas.height = image.height;\n // @ts-ignore\n context.drawImage(image, 0, 0);\n // @ts-ignore\n return context.getImageData(0, 0, image.width, image.height);\n default:\n throw new Error('getImageData');\n }\n}\n// PRIVATE\n// eslint-disable-next-line complexity\nfunction getImageTypeOrNull(image) {\n if (typeof ImageBitmap !== 'undefined' && image instanceof ImageBitmap) {\n return 'imagebitmap';\n }\n if (typeof Image !== 'undefined' && image instanceof Image) {\n return 'image';\n }\n if (image && typeof image === 'object' && image.data && image.width && image.height) {\n return 'data';\n }\n return null;\n}\n", "// SVG parsing has limitations, e.g:\n// https://bugs.chromium.org/p/chromium/issues/detail?id=606319\nconst SVG_DATA_URL_PATTERN = /^data:image\\/svg\\+xml/;\nconst SVG_URL_PATTERN = /\\.svg((\\?|#).*)?$/;\nexport function isSVG(url) {\n return url && (SVG_DATA_URL_PATTERN.test(url) || SVG_URL_PATTERN.test(url));\n}\nexport function getBlobOrSVGDataUrl(arrayBuffer, url) {\n if (isSVG(url)) {\n // Prepare a properly tagged data URL, and load using normal mechanism\n const textDecoder = new TextDecoder();\n let xmlText = textDecoder.decode(arrayBuffer);\n // TODO Escape in browser to support e.g. Chinese characters\n try {\n if (typeof unescape === 'function' && typeof encodeURIComponent === 'function') {\n xmlText = unescape(encodeURIComponent(xmlText));\n }\n }\n catch (error) {\n throw new Error(error.message);\n }\n // base64 encoding is safer. utf-8 fails in some browsers\n const src = `data:image/svg+xml;base64,${btoa(xmlText)}`;\n return src;\n }\n return getBlob(arrayBuffer, url);\n}\nexport function getBlob(arrayBuffer, url) {\n if (isSVG(url)) {\n // https://bugs.chromium.org/p/chromium/issues/detail?id=606319\n // return new Blob([new Uint8Array(arrayBuffer)], {type: 'image/svg+xml'});\n throw new Error('SVG cannot be parsed directly to imagebitmap');\n }\n // TODO - how to determine mime type? Param? Sniff here?\n return new Blob([new Uint8Array(arrayBuffer)]); // MIME type not needed?\n}\n", "import { getBlobOrSVGDataUrl } from \"./svg-utils.js\";\n// Parses html image from array buffer\nexport async function parseToImage(arrayBuffer, options, url) {\n // Note: image parsing requires conversion to Blob (for createObjectURL).\n // Potentially inefficient for not using `response.blob()` (and for File / Blob inputs)...\n // But presumably not worth adding 'blob' flag to loader objects?\n const blobOrDataUrl = getBlobOrSVGDataUrl(arrayBuffer, url);\n const URL = self.URL || self.webkitURL;\n const objectUrl = typeof blobOrDataUrl !== 'string' && URL.createObjectURL(blobOrDataUrl);\n try {\n return await loadToImage(objectUrl || blobOrDataUrl, options);\n }\n finally {\n if (objectUrl) {\n URL.revokeObjectURL(objectUrl);\n }\n }\n}\nexport async function loadToImage(url, options) {\n const image = new Image();\n image.src = url;\n // The `image.onload()` callback does not guarantee that the image has been decoded\n // so a main thread \"freeze\" can be incurred when using the image for the first time.\n // `Image.decode()` returns a promise that completes when image is decoded.\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decode\n // Note: When calling `img.decode()`, we do not need to wait for `img.onload()`\n // Note: `HTMLImageElement.decode()` is not available in Edge and IE11\n if (options.image && options.image.decode && image.decode) {\n await image.decode();\n return image;\n }\n // Create a promise that tracks onload/onerror callbacks\n return await new Promise((resolve, reject) => {\n try {\n image.onload = () => resolve(image);\n image.onerror = (error) => {\n const message = error instanceof Error ? error.message : 'error';\n reject(new Error(message));\n };\n }\n catch (error) {\n reject(error);\n }\n });\n}\n", "import { isSVG, getBlob } from \"./svg-utils.js\";\nimport { parseToImage } from \"./parse-to-image.js\";\nconst EMPTY_OBJECT = {};\nlet imagebitmapOptionsSupported = true;\n/**\n * Asynchronously parses an array buffer into an ImageBitmap - this contains the decoded data\n * ImageBitmaps are supported on worker threads, but not supported on Edge, IE11 and Safari\n * https://developer.mozilla.org/en-US/docs/Web/API/ImageBitmap#Browser_compatibility\n *\n * TODO - createImageBitmap supports source rect (5 param overload), pass through?\n */\nexport async function parseToImageBitmap(arrayBuffer, options, url) {\n let blob;\n // Cannot parse SVG directly to ImageBitmap, parse to Image first\n if (isSVG(url)) {\n // Note: this only works on main thread\n const image = await parseToImage(arrayBuffer, options, url);\n blob = image;\n }\n else {\n // Create blob from the array buffer\n blob = getBlob(arrayBuffer, url);\n }\n const imagebitmapOptions = options && options.imagebitmap;\n return await safeCreateImageBitmap(blob, imagebitmapOptions);\n}\n/**\n * Safely creates an imageBitmap with options\n * *\n * Firefox crashes if imagebitmapOptions is supplied\n * Avoid supplying if not provided or supported, remember if not supported\n */\nasync function safeCreateImageBitmap(blob, imagebitmapOptions = null) {\n if (isEmptyObject(imagebitmapOptions) || !imagebitmapOptionsSupported) {\n imagebitmapOptions = null;\n }\n if (imagebitmapOptions) {\n try {\n // @ts-ignore Options\n return await createImageBitmap(blob, imagebitmapOptions);\n }\n catch (error) {\n console.warn(error); // eslint-disable-line\n imagebitmapOptionsSupported = false;\n }\n }\n return await createImageBitmap(blob);\n}\nfunction isEmptyObject(object) {\n // @ts-ignore\n for (const key in object || EMPTY_OBJECT) {\n return false;\n }\n return true;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// code adapted from https://github.com/sindresorhus/file-type under MIT license\n/**\n * Tests if a buffer is in ISO base media file format (ISOBMFF) @see https://en.wikipedia.org/wiki/ISO_base_media_file_format\n * (ISOBMFF is a media container standard based on the Apple QuickTime container format)\n */\nexport function getISOBMFFMediaType(buffer) {\n // Almost all ISO base media files start with `ftyp` box. (It's not required to be first, but it's recommended to be.)\n if (!checkString(buffer, 'ftyp', 4)) {\n return null;\n }\n // Extra check: test for 8859-1 printable characters (for simplicity, it's a mask which also catches one non-printable character).\n if ((buffer[8] & 0x60) === 0x00) {\n return null;\n }\n // `ftyp` box must contain a brand major identifier, which must consist of ISO 8859-1 printable characters.\n return decodeMajorBrand(buffer);\n}\n/**\n * brands explained @see https://github.com/strukturag/libheif/issues/83\n * code adapted from @see https://github.com/sindresorhus/file-type/blob/main/core.js#L489-L492\n */\nexport function decodeMajorBrand(buffer) {\n const brandMajor = getUTF8String(buffer, 8, 12).replace('\\0', ' ').trim();\n switch (brandMajor) {\n case 'avif':\n case 'avis':\n return { extension: 'avif', mimeType: 'image/avif' };\n default:\n return null;\n }\n // We don't need these now, but they are easy to add\n // case 'mif1':\n // return {extension: 'heic', mimeType: 'image/heif'};\n // case 'msf1':\n // return {extension: 'heic', mimeType: 'image/heif-sequence'};\n // case 'heic':\n // case 'heix':\n // return {extension: 'heic', mimeType: 'image/heic'};\n // case 'hevc':\n // case 'hevx':\n // return {extension: 'heic', mimeType: 'image/heic-sequence'};\n // case 'qt':\n // return {ext: 'mov', mime: 'video/quicktime'};\n // case 'M4V':\n // case 'M4VH':\n // case 'M4VP':\n // return {ext: 'm4v', mime: 'video/x-m4v'};\n // case 'M4P':\n // return {ext: 'm4p', mime: 'video/mp4'};\n // case 'M4B':\n // return {ext: 'm4b', mime: 'audio/mp4'};\n // case 'M4A':\n // return {ext: 'm4a', mime: 'audio/x-m4a'};\n // case 'F4V':\n // return {ext: 'f4v', mime: 'video/mp4'};\n // case 'F4P':\n // return {ext: 'f4p', mime: 'video/mp4'};\n // case 'F4A':\n // return {ext: 'f4a', mime: 'audio/mp4'};\n // case 'F4B':\n // return {ext: 'f4b', mime: 'audio/mp4'};\n // case 'crx':\n // return {ext: 'cr3', mime: 'image/x-canon-cr3'};\n // default:\n // if (brandMajor.startsWith('3g')) {\n // if (brandMajor.startsWith('3g2')) {\n // return {ext: '3g2', mime: 'video/3gpp2'};\n // }\n // return {ext: '3gp', mime: 'video/3gpp'};\n // }\n // return {ext: 'mp4', mime: 'video/mp4'};\n}\n/** Interpret a chunk of bytes as a UTF8 string */\nfunction getUTF8String(array, start, end) {\n return String.fromCharCode(...array.slice(start, end));\n}\nfunction stringToBytes(string) {\n return [...string].map((character) => character.charCodeAt(0));\n}\nfunction checkString(buffer, header, offset = 0) {\n const headerBytes = stringToBytes(header);\n for (let i = 0; i < headerBytes.length; ++i) {\n if (headerBytes[i] !== buffer[i + offset]) {\n return false;\n }\n }\n return true;\n}\n", "// Attributions\n// * Based on binary-gltf-utils under MIT license: Copyright (c) 2016-17 Karl Cheng\nimport { getISOBMFFMediaType } from \"./parse-isobmff-binary.js\";\nconst BIG_ENDIAN = false;\nconst LITTLE_ENDIAN = true;\n/**\n * Extracts `{mimeType, width and height}` from a memory buffer containing a known image format\n * Currently supports `image/png`, `image/jpeg`, `image/bmp` and `image/gif`.\n * @param binaryData: DataView | ArrayBuffer image file memory to parse\n * @returns metadata or null if memory is not a valid image file format layout.\n */\nexport function getBinaryImageMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n return (getPngMetadata(dataView) ||\n getJpegMetadata(dataView) ||\n getGifMetadata(dataView) ||\n getBmpMetadata(dataView) ||\n getISOBMFFMetadata(dataView));\n}\n// ISOBMFF\nfunction getISOBMFFMetadata(binaryData) {\n const buffer = new Uint8Array(binaryData instanceof DataView ? binaryData.buffer : binaryData);\n const mediaType = getISOBMFFMediaType(buffer);\n if (!mediaType) {\n return null;\n }\n return {\n mimeType: mediaType.mimeType,\n // TODO - decode width and height\n width: 0,\n height: 0\n };\n}\n// PNG\nfunction getPngMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check file contains the first 4 bytes of the PNG signature.\n const isPng = dataView.byteLength >= 24 && dataView.getUint32(0, BIG_ENDIAN) === 0x89504e47;\n if (!isPng) {\n return null;\n }\n // Extract size from a binary PNG file\n return {\n mimeType: 'image/png',\n width: dataView.getUint32(16, BIG_ENDIAN),\n height: dataView.getUint32(20, BIG_ENDIAN)\n };\n}\n// GIF\n// Extract size from a binary GIF file\n// TODO: GIF is not this simple\nfunction getGifMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check first 4 bytes of the GIF signature (\"GIF8\").\n const isGif = dataView.byteLength >= 10 && dataView.getUint32(0, BIG_ENDIAN) === 0x47494638;\n if (!isGif) {\n return null;\n }\n // GIF is little endian.\n return {\n mimeType: 'image/gif',\n width: dataView.getUint16(6, LITTLE_ENDIAN),\n height: dataView.getUint16(8, LITTLE_ENDIAN)\n };\n}\n// BMP\n// TODO: BMP is not this simple\nexport function getBmpMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check magic number is valid (first 2 characters should be \"BM\").\n // The mandatory bitmap file header is 14 bytes long.\n const isBmp = dataView.byteLength >= 14 &&\n dataView.getUint16(0, BIG_ENDIAN) === 0x424d &&\n dataView.getUint32(2, LITTLE_ENDIAN) === dataView.byteLength;\n if (!isBmp) {\n return null;\n }\n // BMP is little endian.\n return {\n mimeType: 'image/bmp',\n width: dataView.getUint32(18, LITTLE_ENDIAN),\n height: dataView.getUint32(22, LITTLE_ENDIAN)\n };\n}\n// JPEG\n// Extract width and height from a binary JPEG file\nfunction getJpegMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check file contains the JPEG \"start of image\" (SOI) marker\n // followed by another marker.\n const isJpeg = dataView.byteLength >= 3 &&\n dataView.getUint16(0, BIG_ENDIAN) === 0xffd8 &&\n dataView.getUint8(2) === 0xff;\n if (!isJpeg) {\n return null;\n }\n const { tableMarkers, sofMarkers } = getJpegMarkers();\n // Exclude the two byte SOI marker.\n let i = 2;\n while (i + 9 < dataView.byteLength) {\n const marker = dataView.getUint16(i, BIG_ENDIAN);\n // The frame that contains the width and height of the JPEG image.\n if (sofMarkers.has(marker)) {\n return {\n mimeType: 'image/jpeg',\n height: dataView.getUint16(i + 5, BIG_ENDIAN), // Number of lines\n width: dataView.getUint16(i + 7, BIG_ENDIAN) // Number of pixels per line\n };\n }\n // Miscellaneous tables/data preceding the frame header.\n if (!tableMarkers.has(marker)) {\n return null;\n }\n // Length includes size of length parameter but not the two byte header.\n i += 2;\n i += dataView.getUint16(i, BIG_ENDIAN);\n }\n return null;\n}\nfunction getJpegMarkers() {\n // Tables/misc header markers.\n // DQT, DHT, DAC, DRI, COM, APP_n\n const tableMarkers = new Set([0xffdb, 0xffc4, 0xffcc, 0xffdd, 0xfffe]);\n for (let i = 0xffe0; i < 0xfff0; ++i) {\n tableMarkers.add(i);\n }\n // SOF markers and DHP marker.\n // These markers are after tables/misc data.\n const sofMarkers = new Set([\n 0xffc0, 0xffc1, 0xffc2, 0xffc3, 0xffc5, 0xffc6, 0xffc7, 0xffc9, 0xffca, 0xffcb, 0xffcd, 0xffce,\n 0xffcf, 0xffde\n ]);\n return { tableMarkers, sofMarkers };\n}\n// TODO - move into image module?\nfunction toDataView(data) {\n if (data instanceof DataView) {\n return data;\n }\n if (ArrayBuffer.isView(data)) {\n return new DataView(data.buffer);\n }\n // TODO: make these functions work for Node.js buffers?\n // if (bufferToArrayBuffer) {\n // data = bufferToArrayBuffer(data);\n // }\n // Careful - Node Buffers will look like ArrayBuffers (keep after isBuffer)\n if (data instanceof ArrayBuffer) {\n return new DataView(data);\n }\n throw new Error('toDataView');\n}\n", "import { assert } from '@loaders.gl/loader-utils';\nimport { getBinaryImageMetadata } from \"../category-api/binary-image-api.js\";\n// Use polyfills if installed to parsed image using get-pixels\nexport async function parseToNodeImage(arrayBuffer, options) {\n const { mimeType } = getBinaryImageMetadata(arrayBuffer) || {};\n // @ts-ignore\n const parseImageNode = globalThis.loaders?.parseImageNode;\n assert(parseImageNode); // '@loaders.gl/polyfills not installed'\n // @ts-expect-error TODO should we throw error in this case?\n return await parseImageNode(arrayBuffer, mimeType);\n}\n", "import { assert } from '@loaders.gl/loader-utils';\nimport { isImageTypeSupported, getDefaultImageType } from \"../category-api/image-type.js\";\nimport { getImageData } from \"../category-api/parsed-image-api.js\";\nimport { parseToImage } from \"./parse-to-image.js\";\nimport { parseToImageBitmap } from \"./parse-to-image-bitmap.js\";\nimport { parseToNodeImage } from \"./parse-to-node-image.js\";\n// Parse to platform defined image type (data on node, ImageBitmap or HTMLImage on browser)\n// eslint-disable-next-line complexity\nexport async function parseImage(arrayBuffer, options, context) {\n options = options || {};\n const imageOptions = options.image || {};\n // The user can request a specific output format via `options.image.type`\n const imageType = imageOptions.type || 'auto';\n const { url } = context || {};\n // Note: For options.image.type === `data`, we may still need to load as `image` or `imagebitmap`\n const loadType = getLoadableImageType(imageType);\n let image;\n switch (loadType) {\n case 'imagebitmap':\n image = await parseToImageBitmap(arrayBuffer, options, url);\n break;\n case 'image':\n image = await parseToImage(arrayBuffer, options, url);\n break;\n case 'data':\n // Node.js loads imagedata directly\n image = await parseToNodeImage(arrayBuffer, options);\n break;\n default:\n assert(false);\n }\n // Browser: if options.image.type === 'data', we can now extract data from the loaded image\n if (imageType === 'data') {\n image = getImageData(image);\n }\n return image;\n}\n// Get a loadable image type from image type\nfunction getLoadableImageType(type) {\n switch (type) {\n case 'auto':\n case 'data':\n // Browser: For image data we need still need to load using an image format\n // Node: the default image type is `data`.\n return getDefaultImageType();\n default:\n // Throw an error if not supported\n isImageTypeSupported(type);\n return type;\n }\n}\n", "// import type { ImageType } from '@loaders.gl/schema';\nimport { VERSION } from \"./lib/utils/version.js\";\nimport { parseImage } from \"./lib/parsers/parse-image.js\";\nimport { getBinaryImageMetadata } from \"./lib/category-api/binary-image-api.js\";\nconst EXTENSIONS = ['png', 'jpg', 'jpeg', 'gif', 'webp', 'bmp', 'ico', 'svg', 'avif'];\nconst MIME_TYPES = [\n 'image/png',\n 'image/jpeg',\n 'image/gif',\n 'image/webp',\n 'image/avif',\n 'image/bmp',\n 'image/vnd.microsoft.icon',\n 'image/svg+xml'\n];\nconst DEFAULT_IMAGE_LOADER_OPTIONS = {\n image: {\n type: 'auto',\n decode: true // if format is HTML\n }\n // imagebitmap: {} - passes (platform dependent) parameters to ImageBitmap constructor\n};\n/**\n * Loads a platform-specific image type\n * Note: This type can be used as input data to WebGL texture creation\n */\nexport const ImageLoader = {\n dataType: null,\n batchType: null,\n id: 'image',\n module: 'images',\n name: 'Images',\n version: VERSION,\n mimeTypes: MIME_TYPES,\n extensions: EXTENSIONS,\n parse: parseImage,\n // TODO: byteOffset, byteLength;\n tests: [(arrayBuffer) => Boolean(getBinaryImageMetadata(new DataView(arrayBuffer)))],\n options: DEFAULT_IMAGE_LOADER_OPTIONS\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser } from '@loaders.gl/loader-utils';\nconst MIME_TYPES = [\n 'image/png',\n 'image/jpeg',\n 'image/gif',\n 'image/webp',\n 'image/avif',\n 'image/tiff',\n // TODO - what is the correct type for SVG\n 'image/svg',\n 'image/svg+xml',\n 'image/bmp',\n 'image/vnd.microsoft.icon'\n];\n/** Only one round of tests is performed */\nconst mimeTypeSupportedPromise = null;\n/** Run-time browser detection of file formats requires async tests for most precise results */\nexport async function getSupportedImageFormats() {\n if (mimeTypeSupportedPromise) {\n return await mimeTypeSupportedPromise;\n }\n const supportedMimeTypes = new Set();\n for (const mimeType of MIME_TYPES) {\n const supported = isBrowser\n ? await checkBrowserImageFormatSupportAsync(mimeType)\n : checkNodeImageFormatSupport(mimeType);\n if (supported) {\n supportedMimeTypes.add(mimeType);\n }\n }\n return supportedMimeTypes;\n}\n/** Cache sync values for speed */\nconst mimeTypeSupportedSync = {};\n/**\n * Check if image MIME type is supported. Result is cached to avoid repeated tests.\n */\nexport function isImageFormatSupported(mimeType) {\n if (mimeTypeSupportedSync[mimeType] === undefined) {\n const supported = isBrowser\n ? checkBrowserImageFormatSupport(mimeType)\n : checkNodeImageFormatSupport(mimeType);\n mimeTypeSupportedSync[mimeType] = supported;\n }\n return mimeTypeSupportedSync[mimeType];\n}\n/**\n * Checks that polyfills are installed and that mimeType is supported by polyfills\n * @todo Ideally polyfills should declare what formats they support, instead of storing that data here.\n */\nfunction checkNodeImageFormatSupport(mimeType) {\n const NODE_FORMAT_SUPPORT = ['image/png', 'image/jpeg', 'image/gif'];\n const imageFormatsNode = globalThis.loaders?.imageFormatsNode || NODE_FORMAT_SUPPORT;\n const parseImageNode = globalThis.loaders?.parseImageNode;\n return Boolean(parseImageNode) && imageFormatsNode.includes(mimeType);\n}\n/** Checks image format support synchronously.\n * @note Unreliable, fails on AVIF\n */\nfunction checkBrowserImageFormatSupport(mimeType) {\n switch (mimeType) {\n case 'image/avif': // Will fail\n case 'image/webp':\n return testBrowserImageFormatSupport(mimeType);\n default:\n return true;\n }\n}\nconst TEST_IMAGE = {\n 'image/avif': 'data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=',\n // Lossy test image. Support for lossy images doesn't guarantee support for all WebP images.\n 'image/webp': 'data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA'\n};\n/** Checks WebP and AVIF support asynchronously */\nasync function checkBrowserImageFormatSupportAsync(mimeType) {\n const dataURL = TEST_IMAGE[mimeType];\n return dataURL ? await testBrowserImageFormatSupportAsync(dataURL) : true;\n}\n/**\n * Checks browser synchronously\n * Checks if toDataURL supports the mimeType.\n * @note Imperfect testOn Chrome this is true for WebP but not for AVIF\n */\nfunction testBrowserImageFormatSupport(mimeType) {\n try {\n const element = document.createElement('canvas');\n const dataURL = element.toDataURL(mimeType);\n return dataURL.indexOf(`data:${mimeType}`) === 0;\n }\n catch {\n // Probably Safari...\n return false;\n }\n}\n// Check WebPSupport asynchronously\nasync function testBrowserImageFormatSupportAsync(testImageDataURL) {\n return new Promise((resolve) => {\n const image = new Image();\n image.src = testImageDataURL;\n image.onload = () => resolve(image.height > 0);\n image.onerror = () => resolve(false);\n });\n}\n", "// Replacement for the external assert method to reduce bundle size\n// Note: We don't use the second \"message\" argument in calling code,\n// so no need to support it here\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'assert failed: gltf');\n }\n}\n", "export const COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nexport const BYTES = {\n 5120: 1, // BYTE\n 5121: 1, // UNSIGNED_BYTE\n 5122: 2, // SHORT\n 5123: 2, // UNSIGNED_SHORT\n 5125: 4, // UNSIGNED_INT\n 5126: 4 // FLOAT\n};\n// ENUM LOOKUP\nexport function getBytesFromComponentType(componentType) {\n return BYTES[componentType];\n}\nexport function getSizeFromAccessorType(type) {\n return COMPONENTS[type];\n}\nexport function getGLEnumFromSamplerParameter(parameter) {\n const GL_TEXTURE_MAG_FILTER = 0x2800;\n const GL_TEXTURE_MIN_FILTER = 0x2801;\n const GL_TEXTURE_WRAP_S = 0x2802;\n const GL_TEXTURE_WRAP_T = 0x2803;\n const PARAMETER_MAP = {\n magFilter: GL_TEXTURE_MAG_FILTER,\n minFilter: GL_TEXTURE_MIN_FILTER,\n wrapS: GL_TEXTURE_WRAP_S,\n wrapT: GL_TEXTURE_WRAP_T\n };\n return PARAMETER_MAP[parameter];\n}\n", "import { assert } from \"../utils/assert.js\";\nimport { BYTES, COMPONENTS } from \"../gltf-utils/gltf-constants.js\";\n/**\n * Memory needed to store texture and all mipmap levels 1 + 1/4 + 1/16 + 1/64 + ...\n * Minimum 1.33, but due to GPU layout may be 1.5\n */\nconst MIPMAP_FACTOR = 1.33;\nconst TYPES = ['SCALAR', 'VEC2', 'VEC3', 'VEC4'];\nconst ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT = [\n [Int8Array, 5120],\n [Uint8Array, 5121],\n [Int16Array, 5122],\n [Uint16Array, 5123],\n [Uint32Array, 5125],\n [Float32Array, 5126],\n [Float64Array, 5130]\n];\nconst ARRAY_TO_COMPONENT_TYPE = new Map(ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT);\nconst ATTRIBUTE_TYPE_TO_COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE = {\n 5120: 1,\n 5121: 1,\n 5122: 2,\n 5123: 2,\n 5125: 4,\n 5126: 4\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY = {\n 5120: Int8Array,\n 5121: Uint8Array,\n 5122: Int16Array,\n 5123: Uint16Array,\n 5125: Uint32Array,\n 5126: Float32Array\n};\nexport function getAccessorTypeFromSize(size) {\n const type = TYPES[size - 1];\n return type || TYPES[0];\n}\nexport function getComponentTypeFromArray(typedArray) {\n const componentType = ARRAY_TO_COMPONENT_TYPE.get(typedArray.constructor);\n if (!componentType) {\n throw new Error('Illegal typed array');\n }\n return componentType;\n}\nexport function getAccessorArrayTypeAndLength(accessor, bufferView) {\n const ArrayType = ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY[accessor.componentType];\n const components = ATTRIBUTE_TYPE_TO_COMPONENTS[accessor.type];\n const bytesPerComponent = ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[accessor.componentType];\n const length = accessor.count * components;\n const byteLength = accessor.count * components * bytesPerComponent;\n assert(byteLength >= 0 && byteLength <= bufferView.byteLength);\n const componentByteSize = BYTES[accessor.componentType];\n const numberOfComponentsInElement = COMPONENTS[accessor.type];\n return { ArrayType, length, byteLength, componentByteSize, numberOfComponentsInElement };\n}\n/**\n * Calculate the GPU memory used by a GLTF tile, for both buffer and texture memory\n * @param gltf - the gltf content of a GLTF tile\n * @returns - total memory usage in bytes\n */\nexport function getMemoryUsageGLTF(gltf) {\n let { images, bufferViews } = gltf;\n images = images || [];\n bufferViews = bufferViews || [];\n const imageBufferViews = images.map((i) => i.bufferView);\n bufferViews = bufferViews.filter((view) => !imageBufferViews.includes(view));\n const bufferMemory = bufferViews.reduce((acc, view) => acc + view.byteLength, 0);\n // Assume each pixel of the texture is 4 channel with mimmaps (which add 33%)\n // TODO correctly handle compressed textures\n const pixelCount = images.reduce((acc, image) => {\n // @ts-ignore\n const { width, height } = image.image;\n return acc + width * height;\n }, 0);\n return bufferMemory + Math.ceil(4 * pixelCount * MIPMAP_FACTOR);\n}\n", "// TODO - GLTFScenegraph should use these\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorArrayTypeAndLength } from \"./gltf-utils.js\";\n// accepts buffer view index or buffer view object\n// returns a `Uint8Array`\nexport function getTypedArrayForBufferView(json, buffers, bufferViewIndex) {\n const bufferView = json.bufferViews[bufferViewIndex];\n assert(bufferView);\n // Get hold of the arrayBuffer\n const bufferIndex = bufferView.buffer;\n const binChunk = buffers[bufferIndex];\n assert(binChunk);\n const byteOffset = (bufferView.byteOffset || 0) + binChunk.byteOffset;\n return new Uint8Array(binChunk.arrayBuffer, byteOffset, bufferView.byteLength);\n}\n// accepts accessor index or accessor object\n// returns a `Uint8Array`\nexport function getTypedArrayForImageData(json, buffers, imageIndex) {\n const image = json.images[imageIndex];\n const bufferViewIndex = json.bufferViews[image.bufferView];\n return getTypedArrayForBufferView(json, buffers, bufferViewIndex);\n}\n/**\n * Gets data pointed by the accessor.\n * @param json - json part of gltf content of a GLTF tile.\n * @param buffers - Array containing buffers of data.\n * @param accessor - accepts accessor index or accessor object.\n * @returns {TypedArray} Typed array with type matching the type of data poited by the accessor.\n */\n// eslint-disable-next-line complexity\nexport function getTypedArrayForAccessor(json, buffers, accessor) {\n const gltfAccessor = typeof accessor === 'number' ? json.accessors?.[accessor] : accessor;\n if (!gltfAccessor) {\n throw new Error(`No gltf accessor ${JSON.stringify(accessor)}`);\n }\n const bufferView = json.bufferViews?.[gltfAccessor.bufferView || 0];\n if (!bufferView) {\n throw new Error(`No gltf buffer view for accessor ${bufferView}`);\n }\n // Get `arrayBuffer` the `bufferView` looks at\n const { arrayBuffer, byteOffset: bufferByteOffset } = buffers[bufferView.buffer];\n // Resulting byteOffset is sum of the buffer, accessor and bufferView byte offsets\n const byteOffset = (bufferByteOffset || 0) + (gltfAccessor.byteOffset || 0) + (bufferView.byteOffset || 0);\n // Deduce TypedArray type and its length from `accessor` and `bufferView` data\n const { ArrayType, length, componentByteSize, numberOfComponentsInElement } = getAccessorArrayTypeAndLength(gltfAccessor, bufferView);\n // 'length' is a whole number of components of all elements in the buffer pointed by the accessor\n // Multiplier to calculate the address of the element in the arrayBuffer\n const elementByteSize = componentByteSize * numberOfComponentsInElement;\n const elementAddressScale = bufferView.byteStride || elementByteSize;\n // Creare an array of component's type where all components (not just elements) will reside\n if (typeof bufferView.byteStride === 'undefined' || bufferView.byteStride === elementByteSize) {\n // No iterleaving\n const result = new ArrayType(arrayBuffer, byteOffset, length);\n return result;\n }\n // Iterleaving\n const result = new ArrayType(length);\n for (let i = 0; i < gltfAccessor.count; i++) {\n const values = new ArrayType(arrayBuffer, byteOffset + i * elementAddressScale, numberOfComponentsInElement);\n result.set(values, i * numberOfComponentsInElement);\n }\n return result;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getBinaryImageMetadata } from '@loaders.gl/images';\nimport { padToNBytes, copyToArray } from '@loaders.gl/loader-utils';\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorTypeFromSize, getComponentTypeFromArray } from \"../gltf-utils/gltf-utils.js\";\nimport { getTypedArrayForAccessor as _getTypedArrayForAccessor } from \"../gltf-utils/get-typed-array.js\";\nfunction makeDefaultGLTFJson() {\n return {\n asset: {\n version: '2.0',\n generator: 'loaders.gl'\n },\n buffers: [],\n extensions: {},\n extensionsRequired: [],\n extensionsUsed: []\n };\n}\n/**\n * Class for structured access to GLTF data\n */\nexport class GLTFScenegraph {\n // internal\n gltf;\n sourceBuffers;\n byteLength;\n // TODO - why is this not GLTFWithBuffers - what happens to images?\n constructor(gltf) {\n // Declare locally so\n this.gltf = {\n json: gltf?.json || makeDefaultGLTFJson(),\n buffers: gltf?.buffers || [],\n images: gltf?.images || []\n };\n this.sourceBuffers = [];\n this.byteLength = 0;\n // Initialize buffers\n if (this.gltf.buffers && this.gltf.buffers[0]) {\n this.byteLength = this.gltf.buffers[0].byteLength;\n this.sourceBuffers = [this.gltf.buffers[0]];\n }\n }\n // Accessors\n get json() {\n return this.gltf.json;\n }\n getApplicationData(key) {\n // TODO - Data is already unpacked by GLBParser\n const data = this.json[key];\n return data;\n }\n getExtraData(key) {\n // TODO - Data is already unpacked by GLBParser\n const extras = (this.json.extras || {});\n return extras[key];\n }\n hasExtension(extensionName) {\n const isUsedExtension = this.getUsedExtensions().find((name) => name === extensionName);\n const isRequiredExtension = this.getRequiredExtensions().find((name) => name === extensionName);\n return typeof isUsedExtension === 'string' || typeof isRequiredExtension === 'string';\n }\n getExtension(extensionName) {\n const isExtension = this.getUsedExtensions().find((name) => name === extensionName);\n const extensions = this.json.extensions || {};\n return isExtension ? extensions[extensionName] : null;\n }\n getRequiredExtension(extensionName) {\n const isRequired = this.getRequiredExtensions().find((name) => name === extensionName);\n return isRequired ? this.getExtension(extensionName) : null;\n }\n getRequiredExtensions() {\n return this.json.extensionsRequired || [];\n }\n getUsedExtensions() {\n return this.json.extensionsUsed || [];\n }\n getRemovedExtensions() {\n return (this.json.extensionsRemoved || []);\n }\n getObjectExtension(object, extensionName) {\n const extensions = object.extensions || {};\n return extensions[extensionName];\n }\n getScene(index) {\n return this.getObject('scenes', index);\n }\n getNode(index) {\n return this.getObject('nodes', index);\n }\n getSkin(index) {\n return this.getObject('skins', index);\n }\n getMesh(index) {\n return this.getObject('meshes', index);\n }\n getMaterial(index) {\n return this.getObject('materials', index);\n }\n getAccessor(index) {\n return this.getObject('accessors', index);\n }\n // getCamera(index: number): object | null {\n // return null; // TODO: fix thi: object as null;\n // }\n getTexture(index) {\n return this.getObject('textures', index);\n }\n getSampler(index) {\n return this.getObject('samplers', index);\n }\n getImage(index) {\n return this.getObject('images', index);\n }\n getBufferView(index) {\n return this.getObject('bufferViews', index);\n }\n getBuffer(index) {\n return this.getObject('buffers', index);\n }\n getObject(array, index) {\n // check if already resolved\n if (typeof index === 'object') {\n return index;\n }\n const object = this.json[array] && this.json[array][index];\n if (!object) {\n throw new Error(`glTF file error: Could not find ${array}[${index}]`); // eslint-disable-line\n }\n return object;\n }\n /**\n * Accepts buffer view index or buffer view object\n * @returns a `Uint8Array`\n */\n getTypedArrayForBufferView(bufferView) {\n bufferView = this.getBufferView(bufferView);\n // @ts-ignore\n const bufferIndex = bufferView.buffer;\n // Get hold of the arrayBuffer\n // const buffer = this.getBuffer(bufferIndex);\n const binChunk = this.gltf.buffers[bufferIndex];\n assert(binChunk);\n // @ts-ignore\n const byteOffset = (bufferView.byteOffset || 0) + binChunk.byteOffset;\n // @ts-ignore\n return new Uint8Array(binChunk.arrayBuffer, byteOffset, bufferView.byteLength);\n }\n /** Accepts accessor index or accessor object\n * @returns a typed array with type that matches the types\n */\n getTypedArrayForAccessor(accessor) {\n // @ts-ignore\n const gltfAccessor = this.getAccessor(accessor);\n return _getTypedArrayForAccessor(this.gltf.json, this.gltf.buffers, gltfAccessor);\n }\n /** accepts accessor index or accessor object\n * returns a `Uint8Array`\n */\n getTypedArrayForImageData(image) {\n // @ts-ignore\n image = this.getAccessor(image);\n // @ts-ignore\n const bufferView = this.getBufferView(image.bufferView);\n const buffer = this.getBuffer(bufferView.buffer);\n // @ts-ignore\n const arrayBuffer = buffer.data;\n const byteOffset = bufferView.byteOffset || 0;\n return new Uint8Array(arrayBuffer, byteOffset, bufferView.byteLength);\n }\n // MODIFERS\n /**\n * Add an extra application-defined key to the top-level data structure\n */\n addApplicationData(key, data) {\n this.json[key] = data;\n return this;\n }\n /**\n * `extras` - Standard GLTF field for storing application specific data\n */\n addExtraData(key, data) {\n this.json.extras = this.json.extras || {};\n this.json.extras[key] = data;\n return this;\n }\n addObjectExtension(object, extensionName, data) {\n // @ts-ignore\n object.extensions = object.extensions || {};\n // TODO - clobber or merge?\n // @ts-ignore\n object.extensions[extensionName] = data;\n this.registerUsedExtension(extensionName);\n return this;\n }\n setObjectExtension(object, extensionName, data) {\n const extensions = object.extensions || {};\n extensions[extensionName] = data;\n // TODO - add to usedExtensions...\n }\n removeObjectExtension(object, extensionName) {\n const extensions = object?.extensions || {};\n if (extensions[extensionName]) {\n this.json.extensionsRemoved = this.json.extensionsRemoved || [];\n const extensionsRemoved = this.json.extensionsRemoved;\n if (!extensionsRemoved.includes(extensionName)) {\n extensionsRemoved.push(extensionName);\n }\n }\n delete extensions[extensionName];\n }\n /**\n * Add to standard GLTF top level extension object, mark as used\n */\n addExtension(extensionName, extensionData = {}) {\n assert(extensionData);\n this.json.extensions = this.json.extensions || {};\n this.json.extensions[extensionName] = extensionData;\n this.registerUsedExtension(extensionName);\n return extensionData;\n }\n /**\n * Standard GLTF top level extension object, mark as used and required\n */\n addRequiredExtension(extensionName, extensionData = {}) {\n assert(extensionData);\n this.addExtension(extensionName, extensionData);\n this.registerRequiredExtension(extensionName);\n return extensionData;\n }\n /**\n * Add extensionName to list of used extensions\n */\n registerUsedExtension(extensionName) {\n this.json.extensionsUsed = this.json.extensionsUsed || [];\n if (!this.json.extensionsUsed.find((ext) => ext === extensionName)) {\n this.json.extensionsUsed.push(extensionName);\n }\n }\n /**\n * Add extensionName to list of required extensions\n */\n registerRequiredExtension(extensionName) {\n this.registerUsedExtension(extensionName);\n this.json.extensionsRequired = this.json.extensionsRequired || [];\n if (!this.json.extensionsRequired.find((ext) => ext === extensionName)) {\n this.json.extensionsRequired.push(extensionName);\n }\n }\n /**\n * Removes an extension from the top-level list\n */\n removeExtension(extensionName) {\n if (this.json.extensions?.[extensionName]) {\n this.json.extensionsRemoved = this.json.extensionsRemoved || [];\n const extensionsRemoved = this.json.extensionsRemoved;\n if (!extensionsRemoved.includes(extensionName)) {\n extensionsRemoved.push(extensionName);\n }\n }\n if (this.json.extensions) {\n delete this.json.extensions[extensionName];\n }\n if (this.json.extensionsRequired) {\n this._removeStringFromArray(this.json.extensionsRequired, extensionName);\n }\n if (this.json.extensionsUsed) {\n this._removeStringFromArray(this.json.extensionsUsed, extensionName);\n }\n }\n /**\n * Set default scene which is to be displayed at load time\n */\n setDefaultScene(sceneIndex) {\n this.json.scene = sceneIndex;\n }\n /**\n * @todo: add more properties for scene initialization:\n * name`, `extensions`, `extras`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#reference-scene\n */\n addScene(scene) {\n const { nodeIndices } = scene;\n this.json.scenes = this.json.scenes || [];\n this.json.scenes.push({ nodes: nodeIndices });\n return this.json.scenes.length - 1;\n }\n /**\n * @todo: add more properties for node initialization:\n * `name`, `extensions`, `extras`, `camera`, `children`, `skin`, `rotation`, `scale`, `translation`, `weights`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#node\n */\n addNode(node) {\n const { meshIndex, matrix } = node;\n this.json.nodes = this.json.nodes || [];\n const nodeData = { mesh: meshIndex };\n if (matrix) {\n // @ts-ignore\n nodeData.matrix = matrix;\n }\n this.json.nodes.push(nodeData);\n return this.json.nodes.length - 1;\n }\n /** Adds a mesh to the json part */\n addMesh(mesh) {\n const { attributes, indices, material, mode = 4 } = mesh;\n const accessors = this._addAttributes(attributes);\n const glTFMesh = {\n primitives: [\n {\n attributes: accessors,\n mode\n }\n ]\n };\n if (indices) {\n const indicesAccessor = this._addIndices(indices);\n // @ts-ignore\n glTFMesh.primitives[0].indices = indicesAccessor;\n }\n if (Number.isFinite(material)) {\n // @ts-ignore\n glTFMesh.primitives[0].material = material;\n }\n this.json.meshes = this.json.meshes || [];\n this.json.meshes.push(glTFMesh);\n return this.json.meshes.length - 1;\n }\n addPointCloud(attributes) {\n // @ts-ignore\n const accessorIndices = this._addAttributes(attributes);\n const glTFMesh = {\n primitives: [\n {\n attributes: accessorIndices,\n mode: 0 // GL.POINTS\n }\n ]\n };\n this.json.meshes = this.json.meshes || [];\n this.json.meshes.push(glTFMesh);\n return this.json.meshes.length - 1;\n }\n /**\n * Adds a binary image. Builds glTF \"JSON metadata\" and saves buffer reference\n * Buffer will be copied into BIN chunk during \"pack\"\n * Currently encodes as glTF image\n * @param imageData\n * @param mimeType\n */\n addImage(imageData, mimeTypeOpt) {\n // If image is referencing a bufferView instead of URI, mimeType must be defined:\n // https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#images\n // \"a reference to a bufferView; in that case mimeType must be defined.\"\n const metadata = getBinaryImageMetadata(imageData);\n const mimeType = mimeTypeOpt || metadata?.mimeType;\n const bufferViewIndex = this.addBufferView(imageData);\n const glTFImage = {\n bufferView: bufferViewIndex,\n mimeType\n };\n this.json.images = this.json.images || [];\n this.json.images.push(glTFImage);\n return this.json.images.length - 1;\n }\n /**\n * Add one untyped source buffer, create a matching glTF `bufferView`, and return its index\n * @param buffer\n */\n addBufferView(buffer, bufferIndex = 0, byteOffset = this.byteLength) {\n const byteLength = buffer.byteLength;\n assert(Number.isFinite(byteLength));\n // Add this buffer to the list of buffers to be written to the body.\n this.sourceBuffers = this.sourceBuffers || [];\n this.sourceBuffers.push(buffer);\n const glTFBufferView = {\n buffer: bufferIndex,\n // Write offset from the start of the binary body\n byteOffset,\n byteLength\n };\n // We've now added the contents to the body, so update the total length\n // Every sub-chunk needs to be 4-byte align ed\n this.byteLength += padToNBytes(byteLength, 4);\n // Add a bufferView indicating start and length of this binary sub-chunk\n this.json.bufferViews = this.json.bufferViews || [];\n this.json.bufferViews.push(glTFBufferView);\n return this.json.bufferViews.length - 1;\n }\n /**\n * Adds an accessor to a bufferView\n * @param bufferViewIndex\n * @param accessor\n */\n addAccessor(bufferViewIndex, accessor) {\n const glTFAccessor = {\n bufferView: bufferViewIndex,\n // @ts-ignore\n type: getAccessorTypeFromSize(accessor.size),\n // @ts-ignore\n componentType: accessor.componentType,\n // @ts-ignore\n count: accessor.count,\n // @ts-ignore\n max: accessor.max,\n // @ts-ignore\n min: accessor.min\n };\n this.json.accessors = this.json.accessors || [];\n this.json.accessors.push(glTFAccessor);\n return this.json.accessors.length - 1;\n }\n /**\n * Add a binary buffer. Builds glTF \"JSON metadata\" and saves buffer reference\n * Buffer will be copied into BIN chunk during \"pack\"\n * Currently encodes buffers as glTF accessors, but this could be optimized\n * @param sourceBuffer\n * @param accessor\n */\n addBinaryBuffer(sourceBuffer, accessor = { size: 3 }) {\n const bufferViewIndex = this.addBufferView(sourceBuffer);\n // @ts-ignore\n let minMax = { min: accessor.min, max: accessor.max };\n if (!minMax.min || !minMax.max) {\n // @ts-ignore\n minMax = this._getAccessorMinMax(sourceBuffer, accessor.size);\n }\n const accessorDefaults = {\n // @ts-ignore\n size: accessor.size,\n componentType: getComponentTypeFromArray(sourceBuffer),\n // @ts-ignore\n count: Math.round(sourceBuffer.length / accessor.size),\n min: minMax.min,\n max: minMax.max\n };\n return this.addAccessor(bufferViewIndex, Object.assign(accessorDefaults, accessor));\n }\n /**\n * Adds a texture to the json part\n * @todo: add more properties for texture initialization\n * `sampler`, `name`, `extensions`, `extras`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#texture\n */\n addTexture(texture) {\n const { imageIndex } = texture;\n const glTFTexture = {\n source: imageIndex\n };\n this.json.textures = this.json.textures || [];\n this.json.textures.push(glTFTexture);\n return this.json.textures.length - 1;\n }\n /** Adds a material to the json part */\n addMaterial(pbrMaterialInfo) {\n this.json.materials = this.json.materials || [];\n this.json.materials.push(pbrMaterialInfo);\n return this.json.materials.length - 1;\n }\n /** Pack the binary chunk */\n createBinaryChunk() {\n // Encoder expects this array undefined or empty\n this.gltf.buffers = [];\n // Allocate total array\n const totalByteLength = this.byteLength;\n const arrayBuffer = new ArrayBuffer(totalByteLength);\n const targetArray = new Uint8Array(arrayBuffer);\n // Copy each array into\n let dstByteOffset = 0;\n for (const sourceBuffer of this.sourceBuffers || []) {\n dstByteOffset = copyToArray(sourceBuffer, targetArray, dstByteOffset);\n }\n // Update the glTF BIN CHUNK byte length\n if (this.json?.buffers?.[0]) {\n this.json.buffers[0].byteLength = totalByteLength;\n }\n else {\n this.json.buffers = [{ byteLength: totalByteLength }];\n }\n // Save generated arrayBuffer\n this.gltf.binary = arrayBuffer;\n // Put arrayBuffer to sourceBuffers for possible additional writing data in the chunk\n this.sourceBuffers = [arrayBuffer];\n }\n // PRIVATE\n _removeStringFromArray(array, string) {\n let found = true;\n while (found) {\n const index = array.indexOf(string);\n if (index > -1) {\n array.splice(index, 1);\n }\n else {\n found = false;\n }\n }\n }\n /**\n * Add attributes to buffers and create `attributes` object which is part of `mesh`\n */\n _addAttributes(attributes = {}) {\n const result = {};\n for (const attributeKey in attributes) {\n const attributeData = attributes[attributeKey];\n const attrName = this._getGltfAttributeName(attributeKey);\n const accessor = this.addBinaryBuffer(attributeData.value, attributeData);\n result[attrName] = accessor;\n }\n return result;\n }\n /**\n * Add indices to buffers\n */\n _addIndices(indices) {\n return this.addBinaryBuffer(indices, { size: 1 });\n }\n /**\n * Deduce gltf specific attribue name from input attribute name\n */\n _getGltfAttributeName(attributeName) {\n switch (attributeName.toLowerCase()) {\n case 'position':\n case 'positions':\n case 'vertices':\n return 'POSITION';\n case 'normal':\n case 'normals':\n return 'NORMAL';\n case 'color':\n case 'colors':\n return 'COLOR_0';\n case 'texcoord':\n case 'texcoords':\n return 'TEXCOORD_0';\n default:\n return attributeName;\n }\n }\n /**\n * Calculate `min` and `max` arrays of accessor according to spec:\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#reference-accessor\n */\n _getAccessorMinMax(buffer, size) {\n const result = { min: null, max: null };\n if (buffer.length < size) {\n return result;\n }\n // @ts-ignore\n result.min = [];\n // @ts-ignore\n result.max = [];\n const initValues = buffer.subarray(0, size);\n for (const value of initValues) {\n // @ts-ignore\n result.min.push(value);\n // @ts-ignore\n result.max.push(value);\n }\n for (let index = size; index < buffer.length; index += size) {\n for (let componentIndex = 0; componentIndex < size; componentIndex++) {\n // @ts-ignore\n result.min[0 + componentIndex] = Math.min(\n // @ts-ignore\n result.min[0 + componentIndex], buffer[index + componentIndex]);\n // @ts-ignore\n result.max[0 + componentIndex] = Math.max(\n // @ts-ignore\n result.max[0 + componentIndex], buffer[index + componentIndex]);\n }\n }\n return result;\n }\n}\n", "/**\n * loaders.gl, MIT license\n *\n * Shared code for 3DTiles extensions:\n * * EXT_feature_metadata\n * * EXT_mesh_features\n * * EXT_structural_metadata\n */\nimport { getComponentTypeFromArray } from \"../../gltf-utils/gltf-utils.js\";\nimport { getImageData } from '@loaders.gl/images';\nfunction emod(n) {\n return ((n % 1) + 1) % 1;\n}\nconst ATTRIBUTE_TYPE_TO_COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16,\n BOOLEAN: 1,\n STRING: 1,\n ENUM: 1\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY = {\n INT8: Int8Array,\n UINT8: Uint8Array,\n INT16: Int16Array,\n UINT16: Uint16Array,\n INT32: Int32Array,\n UINT32: Uint32Array,\n INT64: BigInt64Array,\n UINT64: BigUint64Array,\n FLOAT32: Float32Array,\n FLOAT64: Float64Array\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE = {\n INT8: 1,\n UINT8: 1,\n INT16: 2,\n UINT16: 2,\n INT32: 4,\n UINT32: 4,\n INT64: 8,\n UINT64: 8,\n FLOAT32: 4,\n FLOAT64: 8\n};\nexport function getArrayElementByteSize(attributeType, componentType) {\n return (ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[componentType] *\n ATTRIBUTE_TYPE_TO_COMPONENTS[attributeType]);\n}\n/**\n * Gets offset array from `arrayOffsets` or `stringOffsets`.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param bufferViewIndex - Buffer view index\n * @param offsetType - The type of values in `arrayOffsets` or `stringOffsets`.\n * @param numberOfElements - The number of elements in each property array.\n * @returns Array of values offsets. The number of offsets in the array is equal to `numberOfElements` plus one.\n */\nexport function getOffsetsForProperty(scenegraph, bufferViewIndex, offsetType, numberOfElements) {\n if (offsetType !== 'UINT8' &&\n offsetType !== 'UINT16' &&\n offsetType !== 'UINT32' &&\n offsetType !== 'UINT64') {\n return null;\n }\n const arrayOffsetsBytes = scenegraph.getTypedArrayForBufferView(bufferViewIndex);\n const arrayOffsets = convertRawBufferToMetadataArray(arrayOffsetsBytes, 'SCALAR', // offsets consist of ONE component\n offsetType, numberOfElements + 1 // The number of offsets is equal to the property table `count` plus one.\n );\n // We don't support BigInt offsets at the moment. It requires additional logic and potential issues in Safari\n if (arrayOffsets instanceof BigInt64Array || arrayOffsets instanceof BigUint64Array) {\n return null;\n }\n return arrayOffsets;\n}\n/**\n * Converts raw bytes that are in the buffer to an array of the type defined by the schema.\n * @param data - Raw bytes in the buffer.\n * @param attributeType - SCALAR, VECN, MATN.\n * @param componentType - Type of the component in elements, e.g. 'UINT8' or 'FLOAT32'.\n * @param elementCount - Number of elements in the array. Default value is 1.\n * @returns Data array\n */\nexport function convertRawBufferToMetadataArray(data, attributeType, componentType, elementCount = 1) {\n const numberOfComponents = ATTRIBUTE_TYPE_TO_COMPONENTS[attributeType];\n const ArrayType = ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY[componentType];\n const size = ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[componentType];\n const length = elementCount * numberOfComponents;\n const byteLength = length * size;\n let buffer = data.buffer;\n let offset = data.byteOffset;\n if (offset % size !== 0) {\n const bufferArray = new Uint8Array(buffer);\n buffer = bufferArray.slice(offset, offset + byteLength).buffer;\n offset = 0;\n }\n return new ArrayType(buffer, offset, length);\n}\n/**\n * Processes data encoded in the texture associated with the primitive.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param textureInfo - Reference to the texture where extension data are stored.\n * @param primitive - Primitive object in the mesh.\n * @returns Array of data taken. Null if data can't be taken from the texture.\n */\nexport function getPrimitiveTextureData(scenegraph, textureInfo, primitive) {\n /*\n texture.index is an index for the \"textures\" array.\n The texture object referenced by this index looks like this:\n {\n \"sampler\": 0,\n \"source\": 0\n }\n \"sampler\" is an index for the \"samplers\" array\n \"source\" is an index for the \"images\" array that contains data stored in rgba channels of the image.\n \n texture.texCoord is a number-suffix (like 1) for an attribute like \"TEXCOORD_1\" in meshes.primitives\n The value of \"TEXCOORD_1\" is an accessor that is used to get coordinates.\n These coordinates are being used to get data from the image.\n \n Default for texture.texCoord is 0\n @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/specification/2.0/schema/textureInfo.schema.json\n */\n const texCoordAccessorKey = `TEXCOORD_${textureInfo.texCoord || 0}`;\n const texCoordAccessorIndex = primitive.attributes[texCoordAccessorKey];\n const textureCoordinates = scenegraph.getTypedArrayForAccessor(texCoordAccessorIndex);\n const json = scenegraph.gltf.json;\n const textureIndex = textureInfo.index;\n const imageIndex = json.textures?.[textureIndex]?.source;\n if (typeof imageIndex !== 'undefined') {\n const mimeType = json.images?.[imageIndex]?.mimeType;\n const parsedImage = scenegraph.gltf.images?.[imageIndex];\n // Checking for width is to prevent handling Un-processed images (e.g. [analyze] stage, where loadImages option is set to false)\n if (parsedImage && typeof parsedImage.width !== 'undefined') {\n const textureData = [];\n for (let index = 0; index < textureCoordinates.length; index += 2) {\n const value = getImageValueByCoordinates(parsedImage, mimeType, textureCoordinates, index, textureInfo.channels);\n textureData.push(value);\n }\n return textureData;\n }\n }\n return [];\n}\n/**\n * Puts property data to attributes.\n * It creates corresponding buffer, bufferView and accessor\n * so the data can be accessed like regular data stored in buffers.\n * @param scenegraph - Scenegraph object.\n * @param attributeName - Name of the attribute.\n * @param propertyData - Property data to store.\n * @param featureTable - Array where unique data from the property data are being stored.\n * @param primitive - Primitive object.\n */\nexport function primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTable, primitive) {\n // No reason to create an empty buffer if there is no property data to store.\n if (!propertyData?.length) {\n return;\n }\n /*\n featureTable will contain unique values, e.g.\n propertyData = [24, 35, 28, 24]\n featureTable = [24, 35, 28]\n featureIndices will contain indices that refer featureTextureTable, e.g.\n featureIndices = [0, 1, 2, 0]\n */\n const featureIndices = [];\n for (const texelData of propertyData) {\n let index = featureTable.findIndex((item) => item === texelData);\n if (index === -1) {\n index = featureTable.push(texelData) - 1;\n }\n featureIndices.push(index);\n }\n const typedArray = new Uint32Array(featureIndices);\n const bufferIndex = scenegraph.gltf.buffers.push({\n arrayBuffer: typedArray.buffer,\n byteOffset: typedArray.byteOffset,\n byteLength: typedArray.byteLength\n }) - 1;\n const bufferViewIndex = scenegraph.addBufferView(typedArray, bufferIndex, 0);\n const accessorIndex = scenegraph.addAccessor(bufferViewIndex, {\n size: 1,\n componentType: getComponentTypeFromArray(typedArray),\n count: typedArray.length\n });\n primitive.attributes[attributeName] = accessorIndex;\n}\n/**\n * Gets the value from the texture by coordinates provided.\n * @param parsedImage - Image where the data are stored.\n * @param mimeType - MIME type.\n * @param textureCoordinates - uv coordinates to access data in the image.\n * @param index - Index of uv coordinates in the array textureCoordinates.\n * @param channels - Image channels where data are stored.\n * Channels of an RGBA texture are numbered 0..3 respectively.\n * For Ext_mesh_features and EXT_strucural_metadata the channels default is [0]\n * @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/extensions/2.0/Vendor/EXT_mesh_features/schema/featureIdTexture.schema.json\n * @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTexture.property.schema.json\n * @returns Value taken from the image.\n */\nfunction getImageValueByCoordinates(parsedImage, mimeType, textureCoordinates, index, channels = [0]) {\n const CHANNELS_MAP = {\n r: { offset: 0, shift: 0 },\n g: { offset: 1, shift: 8 },\n b: { offset: 2, shift: 16 },\n a: { offset: 3, shift: 24 }\n };\n const u = textureCoordinates[index];\n const v = textureCoordinates[index + 1];\n let components = 1;\n if (mimeType && (mimeType.indexOf('image/jpeg') !== -1 || mimeType.indexOf('image/png') !== -1))\n components = 4;\n const offset = coordinatesToOffset(u, v, parsedImage, components);\n let value = 0;\n for (const c of channels) {\n /*\n According to the EXT_feature_metadata extension specification:\n Channels are labeled by rgba and are swizzled with a string of 1-4 characters.\n According to the EXT_mesh_features extension specification:\n The channels array contains non-negative integer values corresponding to channels of the source texture that the feature ID consists of.\n Channels of an RGBA texture are numbered 0\u20133 respectively.\n Function getImageValueByCoordinates is used to process both extensions.\n So, there should be possible to get the element of CHANNELS_MAP by either index (0, 1, 2, 3) or key (r, g, b, a).\n */\n const map = typeof c === 'number' ? Object.values(CHANNELS_MAP)[c] : CHANNELS_MAP[c];\n const imageOffset = offset + map.offset;\n const imageData = getImageData(parsedImage);\n if (imageData.data.length <= imageOffset) {\n throw new Error(`${imageData.data.length} <= ${imageOffset}`);\n }\n const imageValue = imageData.data[imageOffset];\n value |= imageValue << map.shift;\n }\n return value;\n}\n/**\n * Retrieves the offset in the image where the data are stored.\n * @param u - u-coordinate.\n * @param v - v-coordinate.\n * @param parsedImage - Image where the data are stored.\n * @param componentsCount - Number of components the data consists of.\n * @returns Offset in the image where the data are stored.\n */\nfunction coordinatesToOffset(u, v, parsedImage, componentsCount = 1) {\n const w = parsedImage.width;\n const iX = emod(u) * (w - 1);\n const indX = Math.round(iX);\n const h = parsedImage.height;\n const iY = emod(v) * (h - 1);\n const indY = Math.round(iY);\n const components = parsedImage.components ? parsedImage.components : componentsCount;\n // components is a number of channels in the image\n const offset = (indY * w + indX) * components;\n return offset;\n}\n/**\n * Parses variable-length array data.\n * In this case every value of the property in the table will be an array\n * of arbitrary length.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - Number of rows in the property table.\n * @param arrayOffsets - Offsets of nested arrays in the flat values array.\n * @param valuesDataBytesLength - Data byte length.\n * @param valueSize - Value size in bytes.\n * @returns Array of typed arrays.\n */\nexport function parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytesLength, valueSize) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const arrayOffset = arrayOffsets[index];\n const arrayByteSize = arrayOffsets[index + 1] - arrayOffsets[index];\n if (arrayByteSize + arrayOffset > valuesDataBytesLength) {\n break;\n }\n const typedArrayOffset = arrayOffset / valueSize;\n const elementCount = arrayByteSize / valueSize;\n attributeValueArray.push(valuesData.slice(typedArrayOffset, typedArrayOffset + elementCount));\n }\n return attributeValueArray;\n}\n/**\n * Parses fixed-length array data.\n * In this case every value of the property in the table will be an array\n * of constant length equal to `arrayCount`.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - Number of rows in the property table.\n * @param arrayCount - Nested arrays length.\n * @returns Array of typed arrays.\n */\nexport function parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const elementOffset = index * arrayCount;\n attributeValueArray.push(valuesData.slice(elementOffset, elementOffset + arrayCount));\n }\n return attributeValueArray;\n}\n/**\n * Decodes properties of string type from binary source.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @param stringOffsets - Index of the buffer view containing offsets for strings. It should be available for string type.\n * @returns String property values\n */\nexport function getPropertyDataString(numberOfElements, valuesDataBytes, arrayOffsets, stringOffsets) {\n if (arrayOffsets) {\n // TODO: implement it as soon as we have the corresponding tileset\n throw new Error('Not implemented - arrayOffsets for strings is specified');\n }\n if (stringOffsets) {\n const stringsArray = [];\n const textDecoder = new TextDecoder('utf8');\n let stringOffset = 0;\n for (let index = 0; index < numberOfElements; index++) {\n const stringByteSize = stringOffsets[index + 1] - stringOffsets[index];\n if (stringByteSize + stringOffset <= valuesDataBytes.length) {\n const stringData = valuesDataBytes.subarray(stringOffset, stringByteSize + stringOffset);\n const stringAttribute = textDecoder.decode(stringData);\n stringsArray.push(stringAttribute);\n stringOffset += stringByteSize;\n }\n }\n return stringsArray;\n }\n return [];\n}\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { convertRawBufferToMetadataArray, getPrimitiveTextureData, primitivePropertyDataToAttributes, getArrayElementByteSize, getOffsetsForProperty, parseVariableLengthArrayNumeric, parseFixedLengthArrayNumeric, getPropertyDataString } from \"./utils/3d-tiles-utils.js\";\nconst EXT_STRUCTURAL_METADATA_NAME = 'EXT_structural_metadata';\nexport const name = EXT_STRUCTURAL_METADATA_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtStructuralMetadata(scenegraph, options);\n}\n/*\n// Example of the extension.\n// See more info at https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata\nconst extensions = {\n \"extensions\": {\n \"EXT_structural_metadata\": {\n \"schema\": {\n \"classes\": {\n \"tree\": {\n \"name\": \"Tree\",\n \"description\": \"Woody, perennial plant.\",\n \"properties\": {\n \"species\": {\n \"description\": \"Type of tree.\",\n \"type\": \"ENUM\",\n \"enumType\": \"speciesEnum\",\n \"required\": true\n },\n \"age\": {\n \"description\": \"The age of the tree, in years\",\n \"type\": \"SCALAR\",\n \"componentType\": \"UINT8\",\n \"required\": true\n }\n }\n }\n },\n \"enums\": {\n \"speciesEnum\": {\n \"name\": \"Species\",\n \"description\": \"An example enum for tree species.\",\n // valueType is not defined here. Default is \"UINT16\"\n \"values\": [\n { \"name\": \"Unspecified\", \"value\": 0 },\n { \"name\": \"Oak\", \"value\": 1 }\n ]\n }\n }\n },\n \"propertyTables\": [{\n \"name\": \"tree_survey_2021-09-29\",\n \"class\": \"tree\",\n \"count\": 10, // The number of elements in each property array (in `species`, in `age`).\n \"properties\": {\n \"species\": {\n \"values\": 0, // It's an index of the buffer view containing property values.\n },\n \"age\": {\n \"values\": 1\n }\n }\n }]\n }\n }\n}\n*/\n/**\n * Decodes feature metadata from extension.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param options - GLTFLoader options.\n */\nfunction decodeExtStructuralMetadata(scenegraph, options) {\n // Decoding metadata involves buffers processing.\n // So, if buffers have not been loaded, there is no reason to process metadata.\n if (!options.gltf?.loadBuffers) {\n return;\n }\n const extension = scenegraph.getExtension(EXT_STRUCTURAL_METADATA_NAME);\n if (!extension) {\n return;\n }\n if (options.gltf?.loadImages) {\n decodePropertyTextures(scenegraph, extension);\n }\n decodePropertyTables(scenegraph, extension);\n}\n/**\n * Processes the data stored in the textures\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTextures(scenegraph, extension) {\n const propertyTextures = extension.propertyTextures;\n const json = scenegraph.gltf.json;\n if (propertyTextures && json.meshes) {\n // Iterate through all meshes/primitives.\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processPrimitivePropertyTextures(scenegraph, propertyTextures, primitive, extension);\n }\n }\n }\n}\n/**\n * Processes the data stored in the property tables.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTables(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const propertyTables = extension.propertyTables;\n if (schemaClasses && propertyTables) {\n for (const schemaName in schemaClasses) {\n const propertyTable = findPropertyTableByClass(propertyTables, schemaName);\n if (propertyTable) {\n processPropertyTable(scenegraph, schema, propertyTable);\n }\n }\n }\n}\n/**\n * Finds the property table by class name.\n * @param propertyTables - propertyTable definition taken from the top-level extension.\n * @param schemaClassName - class name in the extension schema.\n */\nfunction findPropertyTableByClass(propertyTables, schemaClassName) {\n for (const propertyTable of propertyTables) {\n if (propertyTable.class === schemaClassName) {\n return propertyTable;\n }\n }\n return null;\n}\n/**\n * Takes data from property textures reffered by the primitive.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTextures - propertyTexture definition taken from the top-level extention.\n * @param primitive - Primitive object.\n * @param extension - Top-level extension.\n */\nfunction processPrimitivePropertyTextures(scenegraph, propertyTextures, primitive, extension) {\n if (!propertyTextures) {\n return;\n }\n const primitiveExtension = primitive.extensions?.[EXT_STRUCTURAL_METADATA_NAME];\n const primitivePropertyTextureIndices = primitiveExtension?.propertyTextures;\n if (!primitivePropertyTextureIndices) {\n return;\n }\n for (const primitivePropertyTextureIndex of primitivePropertyTextureIndices) {\n const propertyTexture = propertyTextures[primitivePropertyTextureIndex];\n processPrimitivePropertyTexture(scenegraph, propertyTexture, primitive, extension);\n }\n}\n/**\n * Takes property data from the texture pointed by the primitive and appends them to `exension.data`.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTexture - propertyTexture definition taken from the top-level extension.\n * @param primitive - Primitive object.\n * @param extension - Top-level extension.\n */\nfunction processPrimitivePropertyTexture(scenegraph, propertyTexture, primitive, extension) {\n if (!propertyTexture.properties) {\n return;\n }\n if (!extension.dataAttributeNames) {\n extension.dataAttributeNames = [];\n }\n /* Iterate through all properties defined in propertyTexture, e.g. \"speed\" and \"direction\":\n {\n \"class\": \"wind\",\n \"properties\": {\n \"speed\": {\n \"index\": 0,\n \"texCoord\": 0,\n \"channels\": [0]\n },\n \"direction\": {\n \"index\": 0,\n \"texCoord\": 0,\n \"channels\": [1, 2]\n }\n }\n }\n */\n const className = propertyTexture.class;\n for (const propertyName in propertyTexture.properties) {\n // propertyName has values like \"speed\", \"direction\"\n // Make attributeName as a combination of the class name and the propertyName like \"wind_speed\" or \"wind_direction\"\n const attributeName = `${className}_${propertyName}`;\n const textureInfoTopLevel = propertyTexture.properties?.[propertyName];\n if (!textureInfoTopLevel) {\n // eslint-disable-next-line no-continue\n continue;\n }\n // The data taken from all meshes/primitives (the same property, e.g. \"speed\" or \"direction\") will be combined into one array and saved in textureInfoTopLevel.data\n // Initially textureInfoTopLevel.data will be initialized with an empty array.\n if (!textureInfoTopLevel.data) {\n textureInfoTopLevel.data = [];\n }\n const featureTextureTable = textureInfoTopLevel.data;\n const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);\n if (propertyData === null) {\n // eslint-disable-next-line no-continue\n continue;\n }\n primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);\n textureInfoTopLevel.data = featureTextureTable;\n extension.dataAttributeNames.push(attributeName);\n }\n}\n/**\n * Navigates through all properies in the property table, gets properties data,\n * and put the data to `propertyTable.data` as an array.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - schema object.\n * @param propertyTable - propertyTable definition taken from the top-level extension.\n */\nfunction processPropertyTable(scenegraph, schema, propertyTable) {\n const schemaClass = schema.classes?.[propertyTable.class];\n if (!schemaClass) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);\n }\n const numberOfElements = propertyTable.count; // `propertyTable.count` is a number of elements in each property array.\n for (const propertyName in schemaClass.properties) {\n const classProperty = schemaClass.properties[propertyName];\n const propertyTableProperty = propertyTable.properties?.[propertyName];\n if (propertyTableProperty) {\n // Getting all elements (`numberOfElements`) of the array in the `propertyTableProperty`\n const data = getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);\n propertyTableProperty.data = data;\n }\n }\n}\n/**\n * Decodes a propertyTable column from binary source based on property type.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - Schema object.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @returns {string[] | number[] | string[][] | number[][]}\n */\nfunction getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty) {\n let data = [];\n const valuesBufferView = propertyTableProperty.values;\n const valuesDataBytes = scenegraph.getTypedArrayForBufferView(valuesBufferView);\n const arrayOffsets = getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements);\n const stringOffsets = getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements);\n switch (classProperty.type) {\n case 'SCALAR':\n case 'VEC2':\n case 'VEC3':\n case 'VEC4':\n case 'MAT2':\n case 'MAT3':\n case 'MAT4': {\n data = getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets);\n break;\n }\n case 'BOOLEAN': {\n // TODO: implement it as soon as we have the corresponding tileset\n throw new Error(`Not implemented - classProperty.type=${classProperty.type}`);\n }\n case 'STRING': {\n data = getPropertyDataString(numberOfElements, valuesDataBytes, arrayOffsets, stringOffsets);\n break;\n }\n case 'ENUM': {\n data = getPropertyDataENUM(schema, classProperty, numberOfElements, valuesDataBytes, arrayOffsets);\n break;\n }\n default:\n throw new Error(`Unknown classProperty type ${classProperty.type}`);\n }\n return data;\n}\n/**\n * Parses propertyTable.property.arrayOffsets that are offsets of sub-arrays in a flatten array of values.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param classProperty - class property object.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L21\n */\nfunction getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n if (classProperty.array &&\n // `count` is a number of array elements. May only be defined when `array` is true.\n // If `count` is NOT defined, it's a VARIABLE-length array\n typeof classProperty.count === 'undefined' &&\n // `arrayOffsets` is an index of the buffer view containing offsets for variable-length arrays.\n typeof propertyTableProperty.arrayOffsets !== 'undefined') {\n // Data are in a VARIABLE-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.arrayOffsets, propertyTableProperty.arrayOffsetType || 'UINT32', numberOfElements);\n }\n return null;\n}\n/**\n * Parses propertyTable.property.stringOffsets.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L29C10-L29C23\n */\nfunction getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements) {\n if (typeof propertyTableProperty.stringOffsets !== 'undefined' // `stringOffsets` is an index of the buffer view containing offsets for strings.\n ) {\n // Data are in a FIXED-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.stringOffsets, propertyTableProperty.stringOffsetType || 'UINT32', numberOfElements);\n }\n return null;\n}\n/**\n * Decodes properties of SCALAR, VEC-N, MAT-N types from binary sourse.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Property values in a typed array or in an array of typed arrays.\n */\nfunction getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const isArray = classProperty.array;\n const arrayCount = classProperty.count;\n const elementSize = getArrayElementByteSize(classProperty.type, classProperty.componentType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n let valuesData;\n if (classProperty.componentType) {\n valuesData = convertRawBufferToMetadataArray(valuesDataBytes, classProperty.type, \n // The datatype of the element's components. Only applicable to `SCALAR`, `VECN`, and `MATN` types.\n classProperty.componentType, elementCount);\n }\n else {\n // The spec doesn't provide any info what to do if componentType is not set.\n valuesData = valuesDataBytes;\n }\n if (isArray) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);\n }\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);\n }\n return [];\n }\n return valuesData;\n}\n/**\n * Decodes properties of enum type from binary source.\n * @param schema - Schema object.\n * @param classProperty - Class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Strings array of nested strings array.\n */\nfunction getPropertyDataENUM(schema, classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const enumType = classProperty.enumType;\n // Enum ID as declared in the `enums` dictionary. Required when `type` is `ENUM`.\n if (!enumType) {\n throw new Error('Incorrect data in the EXT_structural_metadata extension: classProperty.enumType is not set for type ENUM');\n }\n const enumEntry = schema.enums?.[enumType];\n if (!enumEntry) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: schema.enums does't contain ${enumType}`);\n }\n const enumValueType = enumEntry.valueType || 'UINT16';\n const elementSize = getArrayElementByteSize(classProperty.type, enumValueType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n let valuesData = convertRawBufferToMetadataArray(valuesDataBytes, classProperty.type, enumValueType, elementCount);\n if (!valuesData) {\n valuesData = valuesDataBytes;\n }\n if (classProperty.array) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayENUM({\n valuesData,\n numberOfElements,\n arrayOffsets,\n valuesDataBytesLength: valuesDataBytes.length,\n elementSize,\n enumEntry\n });\n }\n const arrayCount = classProperty.count;\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayENUM(valuesData, numberOfElements, arrayCount, enumEntry);\n }\n return [];\n }\n // Single value (not an array)\n return getEnumsArray(valuesData, 0, numberOfElements, enumEntry);\n}\n/**\n * Parses variable length nested ENUM arrays.\n * @param params.valuesData - Values in a flat typed array.\n * @param params.numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param params.arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @param params.valuesDataBytesLength - Byte length of values array.\n * @param params.elementSize - Single element byte size.\n * @param params.enumEntry - Enums dictionary.\n * @returns Nested strings array.\n */\nfunction parseVariableLengthArrayENUM(params) {\n const { valuesData, numberOfElements, arrayOffsets, valuesDataBytesLength, elementSize, enumEntry } = params;\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const arrayOffset = arrayOffsets[index];\n const arrayByteSize = arrayOffsets[index + 1] - arrayOffsets[index];\n if (arrayByteSize + arrayOffset > valuesDataBytesLength) {\n break;\n }\n const typedArrayOffset = arrayOffset / elementSize;\n const elementCount = arrayByteSize / elementSize;\n const array = getEnumsArray(valuesData, typedArrayOffset, elementCount, enumEntry);\n attributeValueArray.push(array);\n }\n return attributeValueArray;\n}\n/**\n * Parses fixed length ENUM arrays.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param arrayCount - Nested arrays length.\n * @param enumEntry - Enums dictionary.\n * @returns Nested strings array.\n */\nfunction parseFixedLengthArrayENUM(valuesData, numberOfElements, arrayCount, enumEntry) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const elementOffset = arrayCount * index;\n const array = getEnumsArray(valuesData, elementOffset, arrayCount, enumEntry);\n attributeValueArray.push(array);\n }\n return attributeValueArray;\n}\n/**\n * Parses ENUM values into a string array.\n * @param valuesData - Values in a flat typed array.\n * @param offset - Offset to start parse from.\n * @param count - Values length to parse.\n * @param enumEntry - Enums dictionary.\n * @returns Array of strings with parsed ENUM names.\n */\nfunction getEnumsArray(valuesData, offset, count, enumEntry) {\n const array = [];\n for (let i = 0; i < count; i++) {\n // At the moment we don't support BigInt. It requires additional calculations logic\n // and might be an issue in Safari\n if (valuesData instanceof BigInt64Array || valuesData instanceof BigUint64Array) {\n array.push('');\n }\n else {\n const value = valuesData[offset + i];\n const enumObject = getEnumByValue(enumEntry, value);\n if (enumObject) {\n array.push(enumObject.name);\n }\n else {\n array.push('');\n }\n }\n }\n return array;\n}\n/**\n * Looks up ENUM whose `value` property matches the specified number in the parameter `value`.\n * @param {GLTF_EXT_structural_metadata_Enum} enumEntry - ENUM entry containing the array of possible enums.\n * @param {number} value - The value of the ENUM to locate.\n * @returns {GLTF_EXT_structural_metadata_EnumValue | null} ENUM matcihng the specified value or null of no ENUM object was found.\n */\nfunction getEnumByValue(enumEntry, value) {\n for (const enumValue of enumEntry.values) {\n if (enumValue.value === value) {\n return enumValue;\n }\n }\n return null;\n}\n", "import { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nimport { convertRawBufferToMetadataArray, getPrimitiveTextureData, primitivePropertyDataToAttributes, getArrayElementByteSize, getOffsetsForProperty, parseVariableLengthArrayNumeric, parseFixedLengthArrayNumeric, getPropertyDataString } from \"../utils/3d-tiles-utils.js\";\n/** Extension name */\nconst EXT_FEATURE_METADATA_NAME = 'EXT_feature_metadata';\nexport const name = EXT_FEATURE_METADATA_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtFeatureMetadata(scenegraph, options);\n}\n/**\n * Decodes feature metadata from extension.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param options - GLTFLoader options.\n */\nfunction decodeExtFeatureMetadata(scenegraph, options) {\n // Decoding metadata involves buffers processing.\n // So, if buffers have not been loaded, there is no reason to process metadata.\n if (!options.gltf?.loadBuffers) {\n return;\n }\n const extension = scenegraph.getExtension(EXT_FEATURE_METADATA_NAME);\n if (!extension) {\n return;\n }\n if (options.gltf?.loadImages) {\n decodePropertyTextures(scenegraph, extension);\n }\n decodePropertyTables(scenegraph, extension);\n}\n/**\n * Processes the data stored in the textures\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTextures(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const { featureTextures } = extension;\n if (schemaClasses && featureTextures) {\n for (const schemaName in schemaClasses) {\n const schemaClass = schemaClasses[schemaName];\n const featureTexture = findFeatureTextureByClass(featureTextures, schemaName);\n if (featureTexture) {\n handleFeatureTextureProperties(scenegraph, featureTexture, schemaClass);\n }\n }\n }\n}\n/**\n * Processes the data stored in the property tables.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTables(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const propertyTables = extension.featureTables;\n if (schemaClasses && propertyTables) {\n for (const schemaName in schemaClasses) {\n const propertyTable = findPropertyTableByClass(propertyTables, schemaName);\n if (propertyTable) {\n processPropertyTable(scenegraph, schema, propertyTable);\n }\n }\n }\n}\n/**\n * Finds the property table by class name.\n * @param propertyTables - propertyTable definition taken from the top-level extension.\n * @param schemaClassName - class name in the extension schema.\n */\nfunction findPropertyTableByClass(propertyTables, schemaClassName) {\n for (const propertyTableName in propertyTables) {\n const propertyTable = propertyTables[propertyTableName];\n if (propertyTable.class === schemaClassName) {\n return propertyTable;\n }\n }\n return null;\n}\nfunction findFeatureTextureByClass(featureTextures, schemaClassName) {\n for (const featureTexturesName in featureTextures) {\n const featureTable = featureTextures[featureTexturesName];\n if (featureTable.class === schemaClassName) {\n return featureTable;\n }\n }\n return null;\n}\n/**\n * Navigates through all properies in the property table, gets properties data,\n * and put the data to `propertyTable.data` as an array.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - schema object.\n * @param propertyTable - propertyTable definition taken from the top-level extension.\n */\nfunction processPropertyTable(scenegraph, schema, propertyTable) {\n // Though 'class' is not required by spec, it doesn't make any scence when it's not provided.\n // So, bale out here.\n if (!propertyTable.class) {\n return;\n }\n const schemaClass = schema.classes?.[propertyTable.class];\n if (!schemaClass) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);\n }\n const numberOfElements = propertyTable.count; // `propertyTable.count` is a number of elements in each property array.\n for (const propertyName in schemaClass.properties) {\n const classProperty = schemaClass.properties[propertyName];\n const propertyTableProperty = propertyTable.properties?.[propertyName];\n if (propertyTableProperty) {\n // Getting all elements (`numberOfElements`) of the array in the `propertyTableProperty`\n const data = getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);\n propertyTableProperty.data = data;\n }\n }\n}\n/**\n * Navigates through all properies in feature texture and gets properties data.\n * Data will be stored in featureTexture.properties[propertyName].data.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param featureTexture\n * @param schemaClass\n */\nfunction handleFeatureTextureProperties(scenegraph, featureTexture, schemaClass) {\n const attributeName = featureTexture.class;\n for (const propertyName in schemaClass.properties) {\n const featureTextureProperty = featureTexture?.properties?.[propertyName];\n if (featureTextureProperty) {\n const data = getPropertyDataFromTexture(scenegraph, featureTextureProperty, attributeName);\n featureTextureProperty.data = data;\n }\n }\n}\n/**\n * Decodes properties from binary sourse based on property type.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schemaProperty\n * @param numberOfFeatures\n * @param featureTableProperty\n */\nfunction getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfFeatures, featureTableProperty) {\n let data = [];\n const bufferView = featureTableProperty.bufferView;\n const dataArray = scenegraph.getTypedArrayForBufferView(bufferView);\n const arrayOffsets = getArrayOffsetsForProperty(scenegraph, classProperty, featureTableProperty, numberOfFeatures);\n const stringOffsets = getStringOffsetsForProperty(scenegraph, classProperty, featureTableProperty, numberOfFeatures);\n if (classProperty.type === 'STRING' || classProperty.componentType === 'STRING') {\n data = getPropertyDataString(numberOfFeatures, dataArray, arrayOffsets, stringOffsets);\n }\n else if (isNumericProperty(classProperty)) {\n data = getPropertyDataNumeric(classProperty, numberOfFeatures, dataArray, arrayOffsets);\n }\n return data;\n}\n/**\n * Parses propertyTable.property.arrayOffsets that are offsets of sub-arrays in a flatten array of values.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param classProperty - class property object.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L21\n */\nfunction getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n /*\n If ARRAY is used, then componentType must also be specified.\n ARRAY is a fixed-length array when componentCount is defined, and variable-length otherwise.\n */\n if (classProperty.type === 'ARRAY' &&\n // `componentCount` is a number of fixed-length array elements.\n // If `componentCount` is NOT defined, it's a VARIABLE-length array\n typeof classProperty.componentCount === 'undefined' &&\n // `arrayOffsetBufferView` is an index of the buffer view containing offsets for variable-length arrays.\n typeof propertyTableProperty.arrayOffsetBufferView !== 'undefined') {\n // Data are in a VARIABLE-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.arrayOffsetBufferView, propertyTableProperty.offsetType || 'UINT32', // offsetType is used both for stringOffsetBufferView and arrayOffsetBufferView\n numberOfElements);\n }\n return null;\n}\n/**\n * Parses featureTable.property.stringOffsetBufferView.\n * String offsets is an array of offsets of strings in the united array of characters.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array of offset values. The number of offsets in the array is equal to `numberOfElements` plus one.\n * @see https://github.com/CesiumGS/glTF/blob/c38f7f37e894004353c15cd0481bc5b7381ce841/extensions/2.0/Vendor/EXT_feature_metadata/schema/featureTable.property.schema.json#L50C10-L50C32\n */\nfunction getStringOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n if (typeof propertyTableProperty.stringOffsetBufferView !== 'undefined' // `stringOffsetBufferView` is an index of the buffer view containing offsets for strings.\n ) {\n // Data are in a FIXED-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.stringOffsetBufferView, propertyTableProperty.offsetType || 'UINT32', // offsetType is used both for stringOffsetBufferView and arrayOffsetBufferView\n numberOfElements);\n }\n return null;\n}\n/**\n * Checks if the feature table property is of numeric type.\n * @param schemaPropertyType - feature table property\n * @returns true if property is numeric, else - false\n */\nfunction isNumericProperty(schemaProperty) {\n const types = [\n 'UINT8',\n 'INT16',\n 'UINT16',\n 'INT32',\n 'UINT32',\n 'INT64',\n 'UINT64',\n 'FLOAT32',\n 'FLOAT64'\n ];\n return (types.includes(schemaProperty.type) ||\n (typeof schemaProperty.componentType !== 'undefined' &&\n types.includes(schemaProperty.componentType)));\n}\n/**\n * Decodes properties of numeric types from binary sourse.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Property values in a typed array or in an array of typed arrays.\n */\nfunction getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const isArray = classProperty.type === 'ARRAY';\n const arrayCount = classProperty.componentCount;\n /*\n We are getting Numeric data. So,\n the component type can be one of NumericComponentType,\n the attribute type should be 'SCALAR'\n */\n const attributeType = 'SCALAR';\n const componentType = classProperty.componentType || classProperty.type;\n const elementSize = getArrayElementByteSize(attributeType, componentType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n const valuesData = convertRawBufferToMetadataArray(valuesDataBytes, attributeType, componentType, elementCount);\n if (isArray) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);\n }\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);\n }\n return [];\n }\n return valuesData;\n}\n/**\n * Gets properties from texture associated with all mesh primitives.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param featureTextureProperty\n * @param attributeName\n * @returns Feature texture data\n */\nfunction getPropertyDataFromTexture(scenegraph, featureTextureProperty, attributeName) {\n const json = scenegraph.gltf.json;\n if (!json.meshes) {\n return [];\n }\n const featureTextureTable = [];\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processPrimitiveTextures(scenegraph, attributeName, featureTextureProperty, featureTextureTable, primitive);\n }\n }\n return featureTextureTable;\n}\n/**\n * Processes data encoded in the texture associated with the primitive. This data will be accessible through the attributes.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param attributeName\n * @param featureTextureProperty\n * @param featureTextureTable\n * @param primitive\n */\nfunction processPrimitiveTextures(scenegraph, attributeName, featureTextureProperty, featureTextureTable, primitive) {\n const textureInfoTopLevel = {\n channels: featureTextureProperty.channels,\n ...featureTextureProperty.texture\n };\n const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);\n if (!propertyData) {\n return;\n }\n primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { registerJSModules, getJSModuleOrNull } from '@loaders.gl/loader-utils';\nimport { loadLibrary } from '@loaders.gl/worker-utils';\nexport const BASIS_EXTERNAL_LIBRARIES = {\n /** Basis transcoder, javascript wrapper part */\n TRANSCODER: 'basis_transcoder.js',\n /** Basis transcoder, compiled web assembly part */\n TRANSCODER_WASM: 'basis_transcoder.wasm',\n /** Basis encoder, javascript wrapper part */\n ENCODER: 'basis_encoder.js',\n /** Basis encoder, compiled web assembly part */\n ENCODER_WASM: 'basis_encoder.wasm'\n};\nlet loadBasisTranscoderPromise;\n/**\n * Loads wasm transcoder module\n * @param options\n * @returns {BasisFile} promise\n */\nexport async function loadBasisTranscoderModule(options) {\n registerJSModules(options.modules);\n const basis = getJSModuleOrNull('basis');\n if (basis) {\n return basis;\n }\n loadBasisTranscoderPromise ||= loadBasisTranscoder(options);\n return await loadBasisTranscoderPromise;\n}\n/**\n * Loads wasm transcoder module\n * @param options\n * @returns {BasisFile} promise\n */\nasync function loadBasisTranscoder(options) {\n let BASIS = null;\n let wasmBinary = null;\n [BASIS, wasmBinary] = await Promise.all([\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, 'textures', options),\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, 'textures', options)\n ]);\n // Depends on how import happened...\n // @ts-ignore TS2339: Property does not exist on type\n BASIS = BASIS || globalThis.BASIS;\n return await initializeBasisTranscoderModule(BASIS, wasmBinary);\n}\n/**\n * Initialize wasm transcoder module\n * @param BasisModule - js part of the module\n * @param wasmBinary - wasm part of the module\n * @returns {BasisFile} promise\n */\nfunction initializeBasisTranscoderModule(BasisModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n // if you try to return BasisModule the browser crashes!\n BasisModule(options).then((module) => {\n const { BasisFile, initializeBasis } = module;\n initializeBasis();\n resolve({ BasisFile });\n });\n });\n}\nlet loadBasisEncoderPromise;\n/**\n * Loads wasm encoder module\n * @param options\n * @returns {BasisFile, KTX2File} promise\n */\nexport async function loadBasisEncoderModule(options) {\n const modules = options.modules || {};\n if (modules.basisEncoder) {\n return modules.basisEncoder;\n }\n loadBasisEncoderPromise = loadBasisEncoderPromise || loadBasisEncoder(options);\n return await loadBasisEncoderPromise;\n}\n/**\n * Loads wasm encoder module\n * @param options\n * @returns {BasisFile, KTX2File} promise\n */\nasync function loadBasisEncoder(options) {\n let BASIS_ENCODER = null;\n let wasmBinary = null;\n [BASIS_ENCODER, wasmBinary] = await Promise.all([\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, 'textures', options),\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, 'textures', options)\n ]);\n // Depends on how import happened...\n // @ts-ignore TS2339: Property does not exist on type\n BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;\n return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);\n}\n/**\n * Initialize wasm transcoder module\n * @param BasisEncoderModule - js part of the module\n * @param wasmBinary - wasm part of the module\n * @returns {BasisFile, KTX2File} promise\n */\nfunction initializeBasisEncoderModule(BasisEncoderModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n // if you try to return BasisModule the browser crashes!\n BasisEncoderModule(options).then((module) => {\n const { BasisFile, KTX2File, initializeBasis, BasisEncoder } = module;\n initializeBasis();\n resolve({ BasisFile, KTX2File, BasisEncoder });\n });\n });\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/* eslint-disable camelcase */\nexport const GL_EXTENSIONS_CONSTANTS = {\n // WEBGL_compressed_texture_s3tc\n COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83f0,\n COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83f1,\n COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83f2,\n COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83f3,\n // WEBGL_compressed_texture_es3\n COMPRESSED_R11_EAC: 0x9270,\n COMPRESSED_SIGNED_R11_EAC: 0x9271,\n COMPRESSED_RG11_EAC: 0x9272,\n COMPRESSED_SIGNED_RG11_EAC: 0x9273,\n COMPRESSED_RGB8_ETC2: 0x9274,\n COMPRESSED_RGBA8_ETC2_EAC: 0x9275,\n COMPRESSED_SRGB8_ETC2: 0x9276,\n COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9277,\n COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9278,\n COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9279,\n // WEBGL_compressed_texture_pvrtc\n COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8c00,\n COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8c02,\n COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8c01,\n COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8c03,\n // WEBGL_compressed_texture_etc1\n COMPRESSED_RGB_ETC1_WEBGL: 0x8d64,\n // WEBGL_compressed_texture_atc\n COMPRESSED_RGB_ATC_WEBGL: 0x8c92,\n COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 0x8c93,\n COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 0x87ee,\n // WEBGL_compressed_texture_astc\n COMPRESSED_RGBA_ASTC_4X4_KHR: 0x93b0,\n COMPRESSED_RGBA_ASTC_5X4_KHR: 0x93b1,\n COMPRESSED_RGBA_ASTC_5X5_KHR: 0x93b2,\n COMPRESSED_RGBA_ASTC_6X5_KHR: 0x93b3,\n COMPRESSED_RGBA_ASTC_6X6_KHR: 0x93b4,\n COMPRESSED_RGBA_ASTC_8X5_KHR: 0x93b5,\n COMPRESSED_RGBA_ASTC_8X6_KHR: 0x93b6,\n COMPRESSED_RGBA_ASTC_8X8_KHR: 0x93b7,\n COMPRESSED_RGBA_ASTC_10X5_KHR: 0x93b8,\n COMPRESSED_RGBA_ASTC_10X6_KHR: 0x93b9,\n COMPRESSED_RGBA_ASTC_10X8_KHR: 0x93ba,\n COMPRESSED_RGBA_ASTC_10X10_KHR: 0x93bb,\n COMPRESSED_RGBA_ASTC_12X10_KHR: 0x93bc,\n COMPRESSED_RGBA_ASTC_12X12_KHR: 0x93bd,\n COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR: 0x93d0,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR: 0x93d1,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR: 0x93d2,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR: 0x93d3,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR: 0x93d4,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR: 0x93d5,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR: 0x93d6,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR: 0x93d7,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR: 0x93d8,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR: 0x93d9,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR: 0x93da,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 0x93db,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 0x93dc,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 0x93dd,\n // EXT_texture_compression_rgtc\n COMPRESSED_RED_RGTC1_EXT: 0x8dbb,\n COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8dbc,\n COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8dbd,\n COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8dbe,\n // WEBGL_compressed_texture_s3tc_srgb\n COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8c4c,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8c4d,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8c4e,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8c4f\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst BROWSER_PREFIXES = ['', 'WEBKIT_', 'MOZ_'];\nconst WEBGL_EXTENSIONS = {\n /* eslint-disable camelcase */\n WEBGL_compressed_texture_s3tc: 'dxt',\n WEBGL_compressed_texture_s3tc_srgb: 'dxt-srgb',\n WEBGL_compressed_texture_etc1: 'etc1',\n WEBGL_compressed_texture_etc: 'etc2',\n WEBGL_compressed_texture_pvrtc: 'pvrtc',\n WEBGL_compressed_texture_atc: 'atc',\n WEBGL_compressed_texture_astc: 'astc',\n EXT_texture_compression_rgtc: 'rgtc'\n /* eslint-enable camelcase */\n};\nlet formats = null;\n/**\n * Returns a list of formats.\n * Creates a temporary WebGLRenderingContext if none is provided.\n *\n * @param gl - Optional context.\n */\nexport function getSupportedGPUTextureFormats(gl) {\n if (!formats) {\n gl = gl || getWebGLContext() || undefined;\n formats = new Set();\n for (const prefix of BROWSER_PREFIXES) {\n for (const extension in WEBGL_EXTENSIONS) {\n if (gl && gl.getExtension(`${prefix}${extension}`)) {\n const gpuTextureFormat = WEBGL_EXTENSIONS[extension];\n formats.add(gpuTextureFormat);\n }\n }\n }\n }\n return formats;\n}\n/**\n * @returns {WebGLRenderingContext?}\n */\nfunction getWebGLContext() {\n try {\n const canvas = document.createElement('canvas');\n return canvas.getContext('webgl');\n }\n catch (error) {\n return null;\n }\n}\n", "///////////////////////////////////////////////////\n// Common.\n///////////////////////////////////////////////////\n\n// Injected at compile time, from $npm_package_version.\ndeclare const PACKAGE_VERSION: string;\n\nexport const KTX_WRITER = `KTX-Parse v${PACKAGE_VERSION}`;\n\nexport const NUL = new Uint8Array([0x00]);\n\n\n///////////////////////////////////////////////////\n// KTX2 Header.\n///////////////////////////////////////////////////\n\nexport const KTX2_ID = [\n\t// '´', 'K', 'T', 'X', '2', '0', 'ª', '\\r', '\\n', '\\x1A', '\\n'\n\t0xAB, 0x4B, 0x54, 0x58, 0x20, 0x32, 0x30, 0xBB, 0x0D, 0x0A, 0x1A, 0x0A\n];\n\nexport const HEADER_BYTE_LENGTH = 68; // 13 * 4 + 2 * 8\n\nexport enum KTX2SupercompressionScheme {\n\tNONE = 0,\n\tBASISLZ = 1,\n\tZSTD = 2,\n\tZLIB = 3,\n};\n\n\n///////////////////////////////////////////////////\n// Data Format Descriptor (DFD).\n///////////////////////////////////////////////////\n\nexport enum KTX2DataFormatType {\n BASICFORMAT = 0x00,\n};\n\nexport const KHR_DF_VENDORID_KHRONOS = 0;\n\nexport const KHR_DF_VERSION = 2;\n\nexport const KHR_DF_BLOCKSIZE = 40;\n\nexport const VK_FORMAT_UNDEFINED = 0;\n\nexport enum KTX2DataFormatModel {\n UNSPECIFIED = 0,\n\tETC1S = 163,\n\tUASTC = 166,\n};\n\nexport enum KTX2DataFormatPrimaries {\n UNSPECIFIED = 0,\n SRGB = 1,\n};\n\nexport enum KTX2DataFormatTransfer {\n UNSPECIFIED = 0,\n LINEAR = 1,\n SRGB = 2,\n ITU = 3,\n NTSC = 4,\n SLOG = 5,\n SLOG2 = 6,\n};\n\nexport enum KTX2DataFormatFlags {\n ALPHA_STRAIGHT = 0,\n ALPHA_PREMULTIPLIED = 1,\n};\n\nexport enum KTX2DataFormatChannelETC1S {\n RGB = 0,\n RRR = 3,\n GGG = 4,\n AAA = 15,\n};\n\nexport enum KTX2DataFormatChannelUASTC {\n RGB = 0,\n RGBA = 3,\n RRR = 4,\n RRRG = 5,\n};\n", "import { KHR_DF_BLOCKSIZE, KHR_DF_VENDORID_KHRONOS, KHR_DF_VERSION, KTX2DataFormatFlags, KTX2DataFormatModel, KTX2DataFormatPrimaries, KTX2DataFormatType, KTX2SupercompressionScheme, VK_FORMAT_UNDEFINED } from './constants';\n\n/**\n * Represents an unpacked KTX 2.0 texture container. Data for individual mip levels are stored in\n * the `.levels` array, typically compressed in Basis Universal formats. Additional properties\n * provide metadata required to process, transcode, and upload these textures.\n */\nexport class KTX2Container {\n\t/**\n\t * Specifies the image format using Vulkan VkFormat enum values. When using Basis Universal\n\t * texture formats, `vkFormat` must be VK_FORMAT_UNDEFINED.\n\t */\n\tpublic vkFormat = VK_FORMAT_UNDEFINED;\n\n\t/**\n\t * Size of the data type in bytes used to upload the data to a graphics API. When `vkFormat` is\n\t * VK_FORMAT_UNDEFINED, `typeSize` must be 1.\n\t */\n\tpublic typeSize: number = 1;\n\n\t/** Width of the texture image for level 0, in pixels. */\n\tpublic pixelWidth: number = 0;\n\n\t/** Height of the texture image for level 0, in pixels. */\n\tpublic pixelHeight: number = 0;\n\n\t/** Depth of the texture image for level 0, in pixels (3D textures only). */\n\tpublic pixelDepth: number = 0;\n\n\t/** Number of array elements (array textures only). */\n\tpublic layerCount: number = 0;\n\n\t/**\n\t * Number of cubemap faces. For cubemaps and cubemap arrays, `faceCount` must be 6. For all\n\t * other textures, `faceCount` must be 1. Cubemap faces are stored in +X, -X, +Y, -Y, +Z, -Z\n\t * order.\n\t */\n\tpublic faceCount: number = 1;\n\n\t/** Indicates which supercompression scheme has been applied to mip level images, if any. */\n\tpublic supercompressionScheme = KTX2SupercompressionScheme.NONE;\n\n\t/** Mip levels, ordered largest (original) to smallest (~1px). */\n\tpublic levels: KTX2Level[] = [];\n\n\t/** Data Format Descriptor. */\n\tpublic dataFormatDescriptor: KTX2DataFormatDescriptorBasicFormat[] = [{\n\t\tvendorId: KHR_DF_VENDORID_KHRONOS,\n\t\tdescriptorType: KTX2DataFormatType.BASICFORMAT,\n\t\tversionNumber: KHR_DF_VERSION,\n\t\tdescriptorBlockSize: KHR_DF_BLOCKSIZE,\n\t\tcolorModel: KTX2DataFormatModel.UNSPECIFIED,\n\t\tcolorPrimaries: KTX2DataFormatPrimaries.SRGB,\n\t\ttransferFunction: KTX2DataFormatPrimaries.SRGB,\n\t\tflags: KTX2DataFormatFlags.ALPHA_STRAIGHT,\n\t\ttexelBlockDimension: {x: 4, y: 4, z: 1, w: 1},\n\t\tbytesPlane: [],\n\t\tsamples: [],\n\t}];\n\n\t/** Key/Value Data. */\n\tpublic keyValue: {[key: string]: string | Uint8Array} = {};\n\n\t/** Supercompression Global Data. */\n\tpublic globalData: KTX2GlobalDataBasisLZ | null = null;\n}\n\n\n///////////////////////////////////////////////////\n// Mip Levels.\n///////////////////////////////////////////////////\n\nexport interface KTX2Level {\n\t/** Compressed data of the mip level. */\n\tlevelData: Uint8Array;\n\n\t/**\n\t * Size of the mip level after reflation from supercompression, if applicable. When\n\t * `supercompressionType` is BASISLZ, `uncompressedByteLength` must be 0. When\n\t * `supercompressionType` is `NONE`, `uncompressedByteLength` must match the `levelData` byte\n\t * length.\n\t *\n\t * _**NOTICE:** this implies that for formats such as UASTC, `uncompressedByteLength` may\n\t * indicate size after ZSTD reflation (and of transcoded ASTC data), but does _not_ indicate\n\t * size of decoded RGBA32 pixels._\n\t */\n\tuncompressedByteLength: number;\n};\n\n\n///////////////////////////////////////////////////\n// Data Format Descriptor (DFD).\n///////////////////////////////////////////////////\n\nexport interface KTX2DataFormatDescriptorBasicFormat {\n\tvendorId: number;\n\tdescriptorType: number;\n\tversionNumber: number;\n\tdescriptorBlockSize: number;\n\tcolorModel: number;\n\tcolorPrimaries: number;\n\ttransferFunction: number;\n\tflags: number;\n\ttexelBlockDimension: KTX2BasicFormatTexelBlockDimensions;\n\tbytesPlane: number[];\n\tsamples: KTX2BasicFormatSample[],\n};\n\nexport interface KTX2BasicFormatTexelBlockDimensions {\n\tx: number;\n\ty: number;\n\tz: number;\n\tw: number;\n};\n\nexport interface KTX2BasicFormatSample {\n\tbitOffset: number;\n\tbitLength: number;\n\tchannelID: number;\n\tsamplePosition: number[];\n\tsampleLower: number;\n\tsampleUpper: number;\n};\n\n\n///////////////////////////////////////////////////\n// Supercompression Global Data.\n///////////////////////////////////////////////////\n\nexport interface KTX2GlobalDataBasisLZ {\n\tendpointCount: number;\n\tselectorCount: number;\n\timageDescs: KTX2GlobalDataBasisLZImageDesc[];\n\tendpointsData: Uint8Array;\n\tselectorsData: Uint8Array;\n\ttablesData: Uint8Array;\n\textendedData: Uint8Array;\n};\n\ninterface KTX2GlobalDataBasisLZImageDesc {\n\timageFlags: number;\n\trgbSliceByteOffset: number;\n\trgbSliceByteLength: number;\n\talphaSliceByteOffset: number;\n\talphaSliceByteLength: number;\n};\n", "export class BufferReader {\n\tprivate _dataView: DataView;\n\tprivate _littleEndian: boolean;\n\tpublic _offset: number;\n\n\tconstructor(data: Uint8Array, byteOffset: number, byteLength: number, littleEndian: boolean) {\n\t\tthis._dataView = new DataView(data.buffer, data.byteOffset + byteOffset, byteLength);\n\t\tthis._littleEndian = littleEndian;\n\t\tthis._offset = 0;\n\t}\n\n\t_nextUint8() {\n\t\tconst value = this._dataView.getUint8(this._offset);\n\t\tthis._offset += 1;\n\t\treturn value;\n\t}\n\n\t_nextUint16() {\n\t\tconst value = this._dataView.getUint16(this._offset, this._littleEndian);\n\t\tthis._offset += 2;\n\t\treturn value;\n\t}\n\n\t_nextUint32() {\n\t\tconst value = this._dataView.getUint32(this._offset, this._littleEndian);\n\t\tthis._offset += 4;\n\t\treturn value;\n\t}\n\n\t_nextUint64() {\n\t\tconst left = this._dataView.getUint32(this._offset, this._littleEndian);\n\t\tconst right = this._dataView.getUint32(this._offset + 4, this._littleEndian);\n\t\t// TODO(cleanup): Just test this...\n\t\t// const value = this._littleEndian ? left + (2 ** 32 * right) : (2 ** 32 * left) + right;\n\t\tconst value = left + (2 ** 32 * right);\n\t\tthis._offset += 8;\n\t\treturn value;\n\t}\n\n\t_skip(bytes: number) {\n\t\tthis._offset += bytes;\n\t\treturn this;\n\t}\n\n\t_scan(maxByteLength: number, term: number = 0x00): Uint8Array {\n\t\tconst byteOffset = this._offset;\n\t\tlet byteLength = 0;\n\t\twhile (this._dataView.getUint8(this._offset) !== term && byteLength < maxByteLength) {\n\t\t\tbyteLength++;\n\t\t\tthis._offset++;\n\t\t}\n\n\t\tif (byteLength < maxByteLength) this._offset++;\n\n\t\treturn new Uint8Array(\n\t\t\tthis._dataView.buffer,\n\t\t\tthis._dataView.byteOffset + byteOffset,\n\t\t\tbyteLength\n\t\t);\n\t}\n}\n", "\n/** Encodes text to an ArrayBuffer. */\nexport function encodeText(text: string): Uint8Array {\n\tif (typeof TextEncoder !== 'undefined') {\n\t\treturn new TextEncoder().encode(text);\n\t}\n\treturn Buffer.from(text);\n}\n\n/** Decodes an ArrayBuffer to text. */\nexport function decodeText(buffer: Uint8Array): string {\n\tif (typeof TextDecoder !== 'undefined') {\n\t\treturn new TextDecoder().decode(buffer);\n\t}\n\treturn Buffer.from(buffer).toString('utf8');\n}\n\n/** Concatenates N ArrayBuffers. */\nexport function concat (buffers: (ArrayBuffer | Uint8Array)[]): Uint8Array {\n\tlet totalByteLength = 0;\n\tfor (const buffer of buffers) {\n\t\ttotalByteLength += buffer.byteLength;\n\t}\n\n\tconst result = new Uint8Array(totalByteLength);\n\tlet byteOffset = 0;\n\n\tfor (const buffer of buffers) {\n\t\tresult.set(new Uint8Array(buffer), byteOffset);\n\t\tbyteOffset += buffer.byteLength;\n\t}\n\n\treturn result;\n}", "import { BufferReader } from './buffer-reader';\nimport { KTX2_ID } from './constants';\nimport { KTX2Container, KTX2DataFormatDescriptorBasicFormat } from './container';\nimport { decodeText } from './util';\n\n/**\n * Parses a KTX 2.0 file, returning an unpacked {@link KTX2Container} instance with all associated\n * data. The container's mip levels and other binary data are pointers into the original file, not\n * copies, so the original file should not be overwritten after reading.\n *\n * @param data Bytes of KTX 2.0 file, as Uint8Array or Buffer.\n */\nexport function read(data: Uint8Array): KTX2Container {\n\n\t///////////////////////////////////////////////////\n\t// KTX 2.0 Identifier.\n\t///////////////////////////////////////////////////\n\n\tconst id = new Uint8Array(data.buffer, data.byteOffset, KTX2_ID.length);\n\tif (id[0] !== KTX2_ID[0] || // '´'\n\t\tid[1] !== KTX2_ID[1] || // 'K'\n\t\tid[2] !== KTX2_ID[2] || // 'T'\n\t\tid[3] !== KTX2_ID[3] || // 'X'\n\t\tid[4] !== KTX2_ID[4] || // ' '\n\t\tid[5] !== KTX2_ID[5] || // '2'\n\t\tid[6] !== KTX2_ID[6] || // '0'\n\t\tid[7] !== KTX2_ID[7] || // 'ª'\n\t\tid[8] !== KTX2_ID[8] || // '\\r'\n\t\tid[9] !== KTX2_ID[9] || // '\\n'\n\t\tid[10] !== KTX2_ID[10] || // '\\x1A'\n\t\tid[11] !== KTX2_ID[11] // '\\n'\n\t) {\n\t\tthrow new Error('Missing KTX 2.0 identifier.');\n\t}\n\n\tconst container = new KTX2Container();\n\n\t///////////////////////////////////////////////////\n\t// Header.\n\t///////////////////////////////////////////////////\n\n\tconst headerByteLength = 17 * Uint32Array.BYTES_PER_ELEMENT;\n\tconst headerReader = new BufferReader(data, KTX2_ID.length, headerByteLength, true);\n\n\tcontainer.vkFormat = headerReader._nextUint32();\n\tcontainer.typeSize = headerReader._nextUint32();\n\tcontainer.pixelWidth = headerReader._nextUint32();\n\tcontainer.pixelHeight = headerReader._nextUint32();\n\tcontainer.pixelDepth = headerReader._nextUint32();\n\tcontainer.layerCount = headerReader._nextUint32();\n\tcontainer.faceCount = headerReader._nextUint32();\n\n\tconst levelCount = headerReader._nextUint32();\n\n\tcontainer.supercompressionScheme = headerReader._nextUint32();\n\n\tconst dfdByteOffset = headerReader._nextUint32();\n\tconst dfdByteLength = headerReader._nextUint32();\n\tconst kvdByteOffset = headerReader._nextUint32();\n\tconst kvdByteLength = headerReader._nextUint32();\n\tconst sgdByteOffset = headerReader._nextUint64();\n\tconst sgdByteLength = headerReader._nextUint64();\n\n\t///////////////////////////////////////////////////\n\t// Level Index.\n\t///////////////////////////////////////////////////\n\n\tconst levelByteLength = levelCount * 3 * 8;\n\tconst levelReader = new BufferReader(data, KTX2_ID.length + headerByteLength, levelByteLength, true);\n\n\tfor (let i = 0; i < levelCount; i ++) {\n\t\tcontainer.levels.push({\n\t\t\tlevelData: new Uint8Array(data.buffer, data.byteOffset + levelReader._nextUint64(), levelReader._nextUint64()),\n\t\t\tuncompressedByteLength: levelReader._nextUint64(),\n\t\t});\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Data Format Descriptor (DFD).\n\t///////////////////////////////////////////////////\n\n\tconst dfdReader = new BufferReader(data, dfdByteOffset, dfdByteLength, true);\n\n\tconst dfd: KTX2DataFormatDescriptorBasicFormat = {\n\t\tvendorId: dfdReader._skip(4 /* totalSize */)._nextUint16(),\n\t\tdescriptorType: dfdReader._nextUint16(),\n\t\tversionNumber: dfdReader._nextUint16(),\n\t\tdescriptorBlockSize: dfdReader._nextUint16(),\n\t\tcolorModel: dfdReader._nextUint8(),\n\t\tcolorPrimaries: dfdReader._nextUint8(),\n\t\ttransferFunction: dfdReader._nextUint8(),\n\t\tflags: dfdReader._nextUint8(),\n\t\ttexelBlockDimension: {\n\t\t\tx: dfdReader._nextUint8() + 1,\n\t\t\ty: dfdReader._nextUint8() + 1,\n\t\t\tz: dfdReader._nextUint8() + 1,\n\t\t\tw: dfdReader._nextUint8() + 1,\n\t\t},\n\t\tbytesPlane: [\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t],\n\t\tsamples: [],\n\t};\n\n\tconst sampleStart = 6;\n\tconst sampleWords = 4;\n\tconst numSamples = (dfd.descriptorBlockSize / 4 - sampleStart) / sampleWords;\n\n\tfor (let i = 0; i < numSamples; i ++) {\n\t\tdfd.samples[ i ] = {\n\t\t\tbitOffset: dfdReader._nextUint16(),\n\t\t\tbitLength: dfdReader._nextUint8(),\n\t\t\tchannelID: dfdReader._nextUint8(),\n\t\t\tsamplePosition: [\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t],\n\t\t\tsampleLower: dfdReader._nextUint32(),\n\t\t\tsampleUpper: dfdReader._nextUint32(),\n\t\t};\n\t}\n\n\tcontainer.dataFormatDescriptor.length = 0;\n\tcontainer.dataFormatDescriptor.push(dfd);\n\n\n\t///////////////////////////////////////////////////\n\t// Key/Value Data (KVD).\n\t///////////////////////////////////////////////////\n\n\tconst kvdReader = new BufferReader(data, kvdByteOffset, kvdByteLength, true);\n\n\twhile (kvdReader._offset < kvdByteLength) {\n\t\tconst keyValueByteLength = kvdReader._nextUint32();\n\t\tconst keyData = kvdReader._scan(keyValueByteLength);\n\t\tconst key = decodeText(keyData);\n\t\tconst valueData = kvdReader._scan(keyValueByteLength - keyData.byteLength);\n\t\tcontainer.keyValue[key] = key.match(/^ktx/i) ? decodeText(valueData) : valueData;\n\n\t\t// 4-byte alignment.\n\t\tif (keyValueByteLength % 4) kvdReader._skip(4 - (keyValueByteLength % 4));\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Supercompression Global Data (SGD).\n\t///////////////////////////////////////////////////\n\n\tif (sgdByteLength <= 0) return container;\n\n\tconst sgdReader = new BufferReader(data, sgdByteOffset, sgdByteLength, true);\n\n\tconst endpointCount = sgdReader._nextUint16();\n\tconst selectorCount = sgdReader._nextUint16();\n\tconst endpointsByteLength = sgdReader._nextUint32();\n\tconst selectorsByteLength = sgdReader._nextUint32();\n\tconst tablesByteLength = sgdReader._nextUint32();\n\tconst extendedByteLength = sgdReader._nextUint32();\n\n\tconst imageDescs = [];\n\tfor (let i = 0; i < levelCount; i ++) {\n\t\timageDescs.push({\n\t\t\timageFlags: sgdReader._nextUint32(),\n\t\t\trgbSliceByteOffset: sgdReader._nextUint32(),\n\t\t\trgbSliceByteLength: sgdReader._nextUint32(),\n\t\t\talphaSliceByteOffset: sgdReader._nextUint32(),\n\t\t\talphaSliceByteLength: sgdReader._nextUint32(),\n\t\t});\n\t}\n\n\tconst endpointsByteOffset = sgdByteOffset + sgdReader._offset;\n\tconst selectorsByteOffset = endpointsByteOffset + endpointsByteLength;\n\tconst tablesByteOffset = selectorsByteOffset + selectorsByteLength;\n\tconst extendedByteOffset = tablesByteOffset + tablesByteLength;\n\n\tconst endpointsData = new Uint8Array(data.buffer, data.byteOffset + endpointsByteOffset, endpointsByteLength);\n\tconst selectorsData = new Uint8Array(data.buffer, data.byteOffset + selectorsByteOffset, selectorsByteLength);\n\tconst tablesData = new Uint8Array(data.buffer, data.byteOffset + tablesByteOffset, tablesByteLength);\n\tconst extendedData = new Uint8Array(data.buffer, data.byteOffset + extendedByteOffset, extendedByteLength);\n\n\tcontainer.globalData = {\n\t\tendpointCount,\n\t\tselectorCount,\n\t\timageDescs,\n\t\tendpointsData,\n\t\tselectorsData,\n\t\ttablesData,\n\t\textendedData,\n\t};\n\n\treturn container;\n}\n", "import { HEADER_BYTE_LENGTH, KTX2DataFormatType, KTX2_ID, KTX_WRITER, NUL } from './constants';\nimport { KTX2Container } from './container';\nimport { concat, encodeText } from './util';\n\ninterface WriteOptions {keepWriter?: boolean};\nconst DEFAULT_OPTIONS: WriteOptions = {keepWriter: false};\n\n/**\n * Serializes a {@link KTX2Container} instance to a KTX 2.0 file. Mip levels and other binary data\n * are copied into the resulting Uint8Array, so the original container can safely be edited or\n * destroyed after it is serialized.\n *\n * Options:\n * - keepWriter: If true, 'KTXWriter' key/value field is written as provided by the container.\n * \t\tOtherwise, a string for the current ktx-parse version is generated. Default: false.\n *\n * @param container\n * @param options\n */\nexport function write(container: KTX2Container, options: WriteOptions = {}): Uint8Array {\n\toptions = {...DEFAULT_OPTIONS, ...options};\n\n\t///////////////////////////////////////////////////\n\t// Supercompression Global Data (SGD).\n\t///////////////////////////////////////////////////\n\n\tlet sgdBuffer = new ArrayBuffer(0);\n\tif (container.globalData) {\n\t\tconst sgdHeaderBuffer = new ArrayBuffer(20 + container.globalData.imageDescs.length * 5 * 4);\n\t\tconst sgdHeaderView = new DataView(sgdHeaderBuffer);\n\t\tsgdHeaderView.setUint16(0, container.globalData.endpointCount, true);\n\t\tsgdHeaderView.setUint16(2, container.globalData.selectorCount, true);\n\t\tsgdHeaderView.setUint32(4, container.globalData.endpointsData.byteLength, true);\n\t\tsgdHeaderView.setUint32(8, container.globalData.selectorsData.byteLength, true);\n\t\tsgdHeaderView.setUint32(12, container.globalData.tablesData.byteLength, true);\n\t\tsgdHeaderView.setUint32(16, container.globalData.extendedData.byteLength, true);\n\n\t\tfor (let i = 0; i < container.globalData.imageDescs.length; i++) {\n\t\t\tconst imageDesc = container.globalData.imageDescs[i];\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 0, imageDesc.imageFlags, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 4, imageDesc.rgbSliceByteOffset, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 8, imageDesc.rgbSliceByteLength, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 12, imageDesc.alphaSliceByteOffset, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 16, imageDesc.alphaSliceByteLength, true);\n\t\t}\n\n\t\tsgdBuffer = concat([\n\t\t\tsgdHeaderBuffer,\n\t\t\tcontainer.globalData.endpointsData,\n\t\t\tcontainer.globalData.selectorsData,\n\t\t\tcontainer.globalData.tablesData,\n\t\t\tcontainer.globalData.extendedData,\n\t\t]);\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Key/Value Data (KVD).\n\t///////////////////////////////////////////////////\n\n\tconst keyValueData: Uint8Array[] = [];\n\tlet keyValue = container.keyValue;\n\n\tif (!options.keepWriter) {\n\t\tkeyValue = {...container.keyValue, 'KTXwriter': KTX_WRITER};\n\t}\n\n\tfor (const key in keyValue) {\n\t\tconst value = keyValue[key];\n\t\tconst keyData = encodeText(key);\n\t\tconst valueData = typeof value === 'string' ? encodeText(value) : value;\n\t\tconst kvByteLength = keyData.byteLength + 1 + valueData.byteLength + 1;\n\t\tconst kvPadding = kvByteLength % 4 ? (4 - (kvByteLength % 4)) : 0; // align(4)\n\t\tkeyValueData.push(concat([\n\t\t\tnew Uint32Array([kvByteLength]),\n\t\t\tkeyData,\n\t\t\tNUL,\n\t\t\tvalueData,\n\t\t\tNUL,\n\t\t\tnew Uint8Array(kvPadding).fill(0x00), // align(4)\n\t\t]));\n\t}\n\n\tconst kvdBuffer = concat(keyValueData);\n\n\n\t///////////////////////////////////////////////////\n\t// Data Format Descriptor (DFD).\n\t///////////////////////////////////////////////////\n\n\tconst dfdBuffer = new ArrayBuffer(44);\n\tconst dfdView = new DataView(dfdBuffer);\n\n\tif (container.dataFormatDescriptor.length !== 1\n\t\t\t|| container.dataFormatDescriptor[0].descriptorType !== KTX2DataFormatType.BASICFORMAT) {\n\t\tthrow new Error('Only BASICFORMAT Data Format Descriptor output supported.');\n\t}\n\n\tconst dfd = container.dataFormatDescriptor[0];\n\n\tdfdView.setUint32(0, 44, true);\n\tdfdView.setUint16(4, dfd.vendorId, true);\n\tdfdView.setUint16(6, dfd.descriptorType, true);\n\tdfdView.setUint16(8, dfd.versionNumber, true);\n\tdfdView.setUint16(10, dfd.descriptorBlockSize, true);\n\n\tdfdView.setUint8(12, dfd.colorModel);\n\tdfdView.setUint8(13, dfd.colorPrimaries);\n\tdfdView.setUint8(14, dfd.transferFunction);\n\tdfdView.setUint8(15, dfd.flags);\n\n\tdfdView.setUint8(16, dfd.texelBlockDimension.x - 1);\n\tdfdView.setUint8(17, dfd.texelBlockDimension.y - 1);\n\tdfdView.setUint8(18, dfd.texelBlockDimension.z - 1);\n\tdfdView.setUint8(19, dfd.texelBlockDimension.w - 1);\n\n\tfor (let i = 0; i < 8; i++) dfdView.setUint8(20 + i, dfd.bytesPlane[i]);\n\n\tfor (let i = 0; i < dfd.samples.length; i++) {\n\t\tconst sample = dfd.samples[i];\n\t\tconst sampleByteOffset = 28 + i * 16;\n\n\t\tdfdView.setUint16(sampleByteOffset + 0, sample.bitOffset, true);\n\t\tdfdView.setUint8(sampleByteOffset + 2, sample.bitLength);\n\t\tdfdView.setUint8(sampleByteOffset + 3, sample.channelID);\n\n\t\tdfdView.setUint8(sampleByteOffset + 4, sample.samplePosition[0]);\n\t\tdfdView.setUint8(sampleByteOffset + 5, sample.samplePosition[1]);\n\t\tdfdView.setUint8(sampleByteOffset + 6, sample.samplePosition[2]);\n\t\tdfdView.setUint8(sampleByteOffset + 7, sample.samplePosition[3]);\n\n\t\tdfdView.setUint32(sampleByteOffset + 8, sample.sampleLower, true);\n\t\tdfdView.setUint32(sampleByteOffset + 12, sample.sampleUpper, true);\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Data alignment.\n\t///////////////////////////////////////////////////\n\n\tconst dfdByteOffset = KTX2_ID.length + HEADER_BYTE_LENGTH + container.levels.length * 3 * 8;\n\tconst kvdByteOffset = dfdByteOffset + dfdBuffer.byteLength;\n\tlet sgdByteOffset = kvdByteOffset + kvdBuffer.byteLength;\n\tif (sgdByteOffset % 8) sgdByteOffset += 8 - (sgdByteOffset % 8); // align(8)\n\n\n\t///////////////////////////////////////////////////\n\t// Level Index.\n\t///////////////////////////////////////////////////\n\n\tconst levelData: Uint8Array[] = [];\n\tconst levelIndex = new DataView(new ArrayBuffer(container.levels.length * 3 * 8));\n\n\tlet levelDataByteOffset = sgdByteOffset + sgdBuffer.byteLength;\n\tfor (let i = 0; i < container.levels.length; i++) {\n\t\tconst level = container.levels[i];\n\t\tlevelData.push(level.levelData);\n\t\tlevelIndex.setBigUint64(i * 24 + 0, BigInt(levelDataByteOffset), true);\n\t\tlevelIndex.setBigUint64(i * 24 + 8, BigInt(level.levelData.byteLength), true);\n\t\tlevelIndex.setBigUint64(i * 24 + 16, BigInt(level.uncompressedByteLength), true);\n\t\tlevelDataByteOffset += level.levelData.byteLength;\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Header.\n\t///////////////////////////////////////////////////\n\n\tconst headerBuffer = new ArrayBuffer(HEADER_BYTE_LENGTH);\n\tconst headerView = new DataView(headerBuffer);\n\theaderView.setUint32(0, container.vkFormat, true);\n\theaderView.setUint32(4, container.typeSize, true);\n\theaderView.setUint32(8, container.pixelWidth, true);\n\theaderView.setUint32(12, container.pixelHeight, true);\n\theaderView.setUint32(16, container.pixelDepth, true);\n\theaderView.setUint32(20, container.layerCount, true);\n\theaderView.setUint32(24, container.faceCount, true);\n\theaderView.setUint32(28, container.levels.length, true);\n\theaderView.setUint32(32, container.supercompressionScheme, true);\n\n\theaderView.setUint32(36, dfdByteOffset, true);\n\theaderView.setUint32(40, dfdBuffer.byteLength, true);\n\theaderView.setUint32(44, kvdByteOffset, true);\n\theaderView.setUint32(48, kvdBuffer.byteLength, true);\n\theaderView.setBigUint64(52, BigInt(sgdByteOffset), true);\n\theaderView.setBigUint64(60, BigInt(sgdBuffer.byteLength), true);\n\n\n\t///////////////////////////////////////////////////\n\t// Compose.\n\t///////////////////////////////////////////////////\n\n\treturn new Uint8Array(concat([\n\t\tnew Uint8Array(KTX2_ID).buffer,\n\t\theaderBuffer,\n\t\tlevelIndex.buffer,\n\t\tdfdBuffer,\n\t\tkvdBuffer,\n\t\tnew ArrayBuffer(sgdByteOffset - (kvdByteOffset + kvdBuffer.byteLength)), // align(8)\n\t\tsgdBuffer,\n\t\t...levelData,\n\t]));\n}\n\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { read } from 'ktx-parse';\nimport { extractMipmapImages } from \"../utils/extract-mipmap-images.js\";\nimport { mapVkFormatToWebGL } from \"../utils/ktx-format-helper.js\";\nconst KTX2_ID = [\n // '\u00B4', 'K', 'T', 'X', '2', '0', '\u00AA', '\\r', '\\n', '\\x1A', '\\n'\n 0xab, 0x4b, 0x54, 0x58, 0x20, 0x32, 0x30, 0xbb, 0x0d, 0x0a, 0x1a, 0x0a\n];\n// eslint-disable-next-line complexity\nexport function isKTX(data) {\n // const id = new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n const id = new Uint8Array(data);\n const notKTX = id.byteLength < KTX2_ID.length ||\n id[0] !== KTX2_ID[0] || // '\u00B4'\n id[1] !== KTX2_ID[1] || // 'K'\n id[2] !== KTX2_ID[2] || // 'T'\n id[3] !== KTX2_ID[3] || // 'X'\n id[4] !== KTX2_ID[4] || // ' '\n id[5] !== KTX2_ID[5] || // '2'\n id[6] !== KTX2_ID[6] || // '0'\n id[7] !== KTX2_ID[7] || // '\u00AA'\n id[8] !== KTX2_ID[8] || // '\\r'\n id[9] !== KTX2_ID[9] || // '\\n'\n id[10] !== KTX2_ID[10] || // '\\x1A'\n id[11] !== KTX2_ID[11]; // '\\n'\n return !notKTX;\n}\nexport function parseKTX(arrayBuffer) {\n const uint8Array = new Uint8Array(arrayBuffer);\n const ktx = read(uint8Array);\n const mipMapLevels = Math.max(1, ktx.levels.length);\n const width = ktx.pixelWidth;\n const height = ktx.pixelHeight;\n const internalFormat = mapVkFormatToWebGL(ktx.vkFormat);\n return extractMipmapImages(ktx.levels, {\n mipMapLevels,\n width,\n height,\n sizeFunction: (level) => level.uncompressedByteLength,\n internalFormat\n });\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { loadBasisEncoderModule, loadBasisTranscoderModule } from \"./basis-module-loader.js\";\nimport { GL_EXTENSIONS_CONSTANTS } from \"../gl-extensions.js\";\nimport { getSupportedGPUTextureFormats } from \"../utils/texture-formats.js\";\nimport { isKTX } from \"./parse-ktx.js\";\nconst OutputFormat = {\n etc1: {\n basisFormat: 0,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL\n },\n etc2: { basisFormat: 1, compressed: true },\n bc1: {\n basisFormat: 2,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT\n },\n bc3: {\n basisFormat: 3,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT\n },\n bc4: { basisFormat: 4, compressed: true },\n bc5: { basisFormat: 5, compressed: true },\n 'bc7-m6-opaque-only': { basisFormat: 6, compressed: true },\n 'bc7-m5': { basisFormat: 7, compressed: true },\n 'pvrtc1-4-rgb': {\n basisFormat: 8,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG\n },\n 'pvrtc1-4-rgba': {\n basisFormat: 9,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG\n },\n 'astc-4x4': {\n basisFormat: 10,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR\n },\n 'atc-rgb': { basisFormat: 11, compressed: true },\n 'atc-rgba-interpolated-alpha': { basisFormat: 12, compressed: true },\n rgba32: { basisFormat: 13, compressed: false },\n rgb565: { basisFormat: 14, compressed: false },\n bgr565: { basisFormat: 15, compressed: false },\n rgba4444: { basisFormat: 16, compressed: false }\n};\n/**\n * parse data with a Binomial Basis_Universal module\n * @param data\n * @param options\n * @returns compressed texture data\n */\nexport default async function parseBasis(data, options) {\n if (options.basis.containerFormat === 'auto') {\n if (isKTX(data)) {\n const fileConstructors = await loadBasisEncoderModule(options);\n return parseKTX2File(fileConstructors.KTX2File, data, options);\n }\n const { BasisFile } = await loadBasisTranscoderModule(options);\n return parseBasisFile(BasisFile, data, options);\n }\n switch (options.basis.module) {\n case 'encoder':\n const fileConstructors = await loadBasisEncoderModule(options);\n switch (options.basis.containerFormat) {\n case 'ktx2':\n return parseKTX2File(fileConstructors.KTX2File, data, options);\n case 'basis':\n default:\n return parseBasisFile(fileConstructors.BasisFile, data, options);\n }\n case 'transcoder':\n default:\n const { BasisFile } = await loadBasisTranscoderModule(options);\n return parseBasisFile(BasisFile, data, options);\n }\n}\n/**\n * Parse *.basis file data\n * @param BasisFile - initialized transcoder module\n * @param data\n * @param options\n * @returns compressed texture data\n */\nfunction parseBasisFile(BasisFile, data, options) {\n const basisFile = new BasisFile(new Uint8Array(data));\n try {\n if (!basisFile.startTranscoding()) {\n throw new Error('Failed to start basis transcoding');\n }\n const imageCount = basisFile.getNumImages();\n const images = [];\n for (let imageIndex = 0; imageIndex < imageCount; imageIndex++) {\n const levelsCount = basisFile.getNumLevels(imageIndex);\n const levels = [];\n for (let levelIndex = 0; levelIndex < levelsCount; levelIndex++) {\n levels.push(transcodeImage(basisFile, imageIndex, levelIndex, options));\n }\n images.push(levels);\n }\n return images;\n }\n finally {\n basisFile.close();\n basisFile.delete();\n }\n}\n/**\n * Parse the particular level image of a basis file\n * @param basisFile\n * @param imageIndex\n * @param levelIndex\n * @param options\n * @returns compressed texture data\n */\nfunction transcodeImage(basisFile, imageIndex, levelIndex, options) {\n const width = basisFile.getImageWidth(imageIndex, levelIndex);\n const height = basisFile.getImageHeight(imageIndex, levelIndex);\n // See https://github.com/BinomialLLC/basis_universal/pull/83\n const hasAlpha = basisFile.getHasAlpha( /* imageIndex, levelIndex */);\n // Check options for output format etc\n const { compressed, format, basisFormat } = getBasisOptions(options, hasAlpha);\n const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);\n const decodedData = new Uint8Array(decodedSize);\n if (!basisFile.transcodeImage(decodedData, imageIndex, levelIndex, basisFormat, 0, 0)) {\n throw new Error('failed to start Basis transcoding');\n }\n return {\n // standard loaders.gl image category payload\n width,\n height,\n data: decodedData,\n compressed,\n format,\n // Additional fields\n // Add levelSize field.\n hasAlpha\n };\n}\n/**\n * Parse *.ktx2 file data\n * @param KTX2File\n * @param data\n * @param options\n * @returns compressed texture data\n */\nfunction parseKTX2File(KTX2File, data, options) {\n const ktx2File = new KTX2File(new Uint8Array(data));\n try {\n if (!ktx2File.startTranscoding()) {\n throw new Error('failed to start KTX2 transcoding');\n }\n const levelsCount = ktx2File.getLevels();\n const levels = [];\n for (let levelIndex = 0; levelIndex < levelsCount; levelIndex++) {\n levels.push(transcodeKTX2Image(ktx2File, levelIndex, options));\n break; // texture app can only show one level for some reason\n }\n return [levels];\n }\n finally {\n ktx2File.close();\n ktx2File.delete();\n }\n}\n/**\n * Parse the particular level image of a ktx2 file\n * @param ktx2File\n * @param levelIndex\n * @param options\n * @returns\n */\nfunction transcodeKTX2Image(ktx2File, levelIndex, options) {\n const { alphaFlag, height, width } = ktx2File.getImageLevelInfo(levelIndex, 0, 0);\n // Check options for output format etc\n const { compressed, format, basisFormat } = getBasisOptions(options, alphaFlag);\n const decodedSize = ktx2File.getImageTranscodedSizeInBytes(levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat);\n const decodedData = new Uint8Array(decodedSize);\n if (!ktx2File.transcodeImage(decodedData, levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat, 0, -1 /* channel0 */, -1 /* channel1 */)) {\n throw new Error('Failed to transcode KTX2 image');\n }\n return {\n // standard loaders.gl image category payload\n width,\n height,\n data: decodedData,\n compressed,\n // Additional fields\n levelSize: decodedSize,\n hasAlpha: alphaFlag,\n format\n };\n}\n/**\n * Get BasisFormat by loader format option\n * @param options\n * @param hasAlpha\n * @returns BasisFormat data\n */\nfunction getBasisOptions(options, hasAlpha) {\n let format = options && options.basis && options.basis.format;\n if (format === 'auto') {\n format = selectSupportedBasisFormat();\n }\n if (typeof format === 'object') {\n format = hasAlpha ? format.alpha : format.noAlpha;\n }\n format = format.toLowerCase();\n return OutputFormat[format];\n}\n/**\n * Select transcode format from the list of supported formats\n * @returns key for OutputFormat map\n */\nexport function selectSupportedBasisFormat() {\n const supportedFormats = getSupportedGPUTextureFormats();\n if (supportedFormats.has('astc')) {\n return 'astc-4x4';\n }\n else if (supportedFormats.has('dxt')) {\n return {\n alpha: 'bc3',\n noAlpha: 'bc1'\n };\n }\n else if (supportedFormats.has('pvrtc')) {\n return {\n alpha: 'pvrtc1-4-rgba',\n noAlpha: 'pvrtc1-4-rgb'\n };\n }\n else if (supportedFormats.has('etc1')) {\n return 'etc1';\n }\n else if (supportedFormats.has('etc2')) {\n return 'etc2';\n }\n return 'rgb565';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { VERSION } from \"./lib/utils/version.js\";\nimport parseBasis from \"./lib/parsers/parse-basis.js\";\n/**\n * Worker loader for Basis super compressed textures\n */\nexport const BasisWorkerLoader = {\n dataType: null,\n batchType: null,\n name: 'Basis',\n id: 'basis',\n module: 'textures',\n version: VERSION,\n worker: true,\n extensions: ['basis', 'ktx2'],\n mimeTypes: ['application/octet-stream', 'image/ktx2'],\n tests: ['sB'],\n binary: true,\n options: {\n basis: {\n format: 'auto',\n libraryPath: 'libs/',\n containerFormat: 'auto',\n module: 'transcoder'\n }\n }\n};\n/**\n * Loader for Basis super compressed textures\n */\nexport const BasisLoader = {\n ...BasisWorkerLoader,\n parse: parseBasis\n};\n", "import { padToNBytes, assert } from '@loaders.gl/loader-utils';\n/** Binary GLTF is little endian. */\nconst LITTLE_ENDIAN = true;\n/** 'glTF' in Big-Endian ASCII */\nconst MAGIC_glTF = 0x676c5446;\nconst GLB_FILE_HEADER_SIZE = 12;\nconst GLB_CHUNK_HEADER_SIZE = 8;\nconst GLB_CHUNK_TYPE_JSON = 0x4e4f534a;\nconst GLB_CHUNK_TYPE_BIN = 0x004e4942;\nconst GLB_V1_CONTENT_FORMAT_JSON = 0x0;\n/** @deprecated - Backward compatibility for old xviz files */\nconst GLB_CHUNK_TYPE_JSON_XVIZ_DEPRECATED = 0;\n/** @deprecated - Backward compatibility for old xviz files */\nconst GLB_CHUNK_TYPE_BIX_XVIZ_DEPRECATED = 1;\nfunction getMagicString(dataView, byteOffset = 0) {\n return `\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 0))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 1))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 2))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 3))}`;\n}\n/** Check if the contents of an array buffer contains GLB byte markers */\nexport function isGLB(arrayBuffer, byteOffset = 0, options = {}) {\n const dataView = new DataView(arrayBuffer);\n // Check that GLB Header starts with the magic number\n const { magic = MAGIC_glTF } = options;\n const magic1 = dataView.getUint32(byteOffset, false);\n return magic1 === magic || magic1 === MAGIC_glTF;\n}\n/**\n * Synchronously parse a GLB\n * @param glb - Target, Output is stored there\n * @param arrayBuffer - Input data\n * @param byteOffset - Offset into arrayBuffer to start parsing from (for \"embedded\" GLBs, e.g. in 3D tiles)\n * @param options\n * @returns\n */\nexport function parseGLBSync(glb, arrayBuffer, byteOffset = 0, options = {}) {\n // Check that GLB Header starts with the magic number\n const dataView = new DataView(arrayBuffer);\n // Compare format with GLBLoader documentation\n const type = getMagicString(dataView, byteOffset + 0);\n const version = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Version 2 of binary glTF container format\n const byteLength = dataView.getUint32(byteOffset + 8, LITTLE_ENDIAN); // Total byte length of binary file\n Object.assign(glb, {\n // Put less important stuff in a header, to avoid clutter\n header: {\n byteOffset, // Byte offset into the initial arrayBuffer\n byteLength,\n hasBinChunk: false\n },\n type,\n version,\n json: {},\n binChunks: []\n });\n byteOffset += GLB_FILE_HEADER_SIZE;\n switch (glb.version) {\n case 1:\n return parseGLBV1(glb, dataView, byteOffset);\n case 2:\n return parseGLBV2(glb, dataView, byteOffset, (options = {}));\n default:\n throw new Error(`Invalid GLB version ${glb.version}. Only supports version 1 and 2.`);\n }\n}\n/**\n * Parse a V1 GLB\n * @param glb - target, output is stored in this object\n * @param dataView - Input, memory to be parsed\n * @param byteOffset - Offset of first byte of GLB data in the data view\n * @returns Number of bytes parsed (there could be additional non-GLB data after the GLB)\n */\nfunction parseGLBV1(glb, dataView, byteOffset) {\n // Sanity: ensure file is big enough to hold at least the headers\n assert(glb.header.byteLength > GLB_FILE_HEADER_SIZE + GLB_CHUNK_HEADER_SIZE);\n // Explanation of GLB structure:\n // https://cloud.githubusercontent.com/assets/3479527/22600725/36b87122-ea55-11e6-9d40-6fd42819fcab.png\n const contentLength = dataView.getUint32(byteOffset + 0, LITTLE_ENDIAN); // Byte length of chunk\n const contentFormat = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Chunk format as uint32\n byteOffset += GLB_CHUNK_HEADER_SIZE;\n // GLB v1 only supports a single chunk type\n assert(contentFormat === GLB_V1_CONTENT_FORMAT_JSON);\n parseJSONChunk(glb, dataView, byteOffset, contentLength);\n // No need to call the function padToBytes() from parseJSONChunk()\n byteOffset += contentLength;\n byteOffset += parseBINChunk(glb, dataView, byteOffset, glb.header.byteLength);\n return byteOffset;\n}\n/**\n * Parse a V2 GLB\n * @param glb - target, output is stored in this object\n * @param dataView - Input, memory to be parsed\n * @param byteOffset - Offset of first byte of GLB data in the data view\n * @returns Number of bytes parsed (there could be additional non-GLB data after the GLB)\n */\nfunction parseGLBV2(glb, dataView, byteOffset, options) {\n // Sanity: ensure file is big enough to hold at least the first chunk header\n assert(glb.header.byteLength > GLB_FILE_HEADER_SIZE + GLB_CHUNK_HEADER_SIZE);\n parseGLBChunksSync(glb, dataView, byteOffset, options);\n return byteOffset + glb.header.byteLength;\n}\n/** Iterate over GLB chunks and parse them */\nfunction parseGLBChunksSync(glb, dataView, byteOffset, options) {\n // Per spec we must iterate over chunks, ignoring all except JSON and BIN\n // Iterate as long as there is space left for another chunk header\n while (byteOffset + 8 <= glb.header.byteLength) {\n const chunkLength = dataView.getUint32(byteOffset + 0, LITTLE_ENDIAN); // Byte length of chunk\n const chunkFormat = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Chunk format as uint32\n byteOffset += GLB_CHUNK_HEADER_SIZE;\n // Per spec we must iterate over chunks, ignoring all except JSON and BIN\n switch (chunkFormat) {\n case GLB_CHUNK_TYPE_JSON:\n parseJSONChunk(glb, dataView, byteOffset, chunkLength);\n break;\n case GLB_CHUNK_TYPE_BIN:\n parseBINChunk(glb, dataView, byteOffset, chunkLength);\n break;\n // Backward compatibility for very old xviz files\n case GLB_CHUNK_TYPE_JSON_XVIZ_DEPRECATED:\n if (!options.strict) {\n parseJSONChunk(glb, dataView, byteOffset, chunkLength);\n }\n break;\n case GLB_CHUNK_TYPE_BIX_XVIZ_DEPRECATED:\n if (!options.strict) {\n parseBINChunk(glb, dataView, byteOffset, chunkLength);\n }\n break;\n default:\n // Ignore, per spec\n // console.warn(`Unknown GLB chunk type`); // eslint-disable-line\n break;\n }\n byteOffset += padToNBytes(chunkLength, 4);\n }\n return byteOffset;\n}\n/* Parse a GLB JSON chunk */\nfunction parseJSONChunk(glb, dataView, byteOffset, chunkLength) {\n // 1. Create a \"view\" of the binary encoded JSON data inside the GLB\n const jsonChunk = new Uint8Array(dataView.buffer, byteOffset, chunkLength);\n // 2. Decode the JSON binary array into clear text\n const textDecoder = new TextDecoder('utf8');\n const jsonText = textDecoder.decode(jsonChunk);\n // 3. Parse the JSON text into a JavaScript data structure\n glb.json = JSON.parse(jsonText);\n return padToNBytes(chunkLength, 4);\n}\n/** Parse a GLB BIN chunk */\nfunction parseBINChunk(glb, dataView, byteOffset, chunkLength) {\n // Note: BIN chunk can be optional\n glb.header.hasBinChunk = true;\n glb.binChunks.push({\n byteOffset,\n byteLength: chunkLength,\n arrayBuffer: dataView.buffer\n // TODO - copy, or create typed array view?\n });\n return padToNBytes(chunkLength, 4);\n}\n", "// Resolves a relative url against a baseUrl\n// If url is absolute, return it unchanged\nexport function resolveUrl(url, options) {\n // TODO: Use better logic to handle all protocols plus not delay on data\n const absolute = url.startsWith('data:') || url.startsWith('http:') || url.startsWith('https:');\n if (absolute) {\n return url;\n }\n const baseUrl = options.baseUri || options.uri;\n if (!baseUrl) {\n throw new Error(`'baseUri' must be provided to resolve relative url ${url}`);\n }\n return baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1) + url;\n}\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { meshoptDecodeGltfBuffer } from \"../../meshopt/meshopt-decoder.js\";\n// @ts-ignore\n// eslint-disable-next-line\nconst DEFAULT_MESHOPT_OPTIONS = {\n byteOffset: 0,\n filter: 'NONE'\n};\n/** Extension name */\nconst EXT_MESHOPT_COMPRESSION = 'EXT_meshopt_compression';\nexport const name = EXT_MESHOPT_COMPRESSION;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n if (!options?.gltf?.decompressMeshes || !options.gltf?.loadBuffers) {\n return;\n }\n const promises = [];\n for (const bufferViewIndex of gltfData.json.bufferViews || []) {\n promises.push(decodeMeshoptBufferView(scenegraph, bufferViewIndex));\n }\n // Decompress meshes in parallel\n await Promise.all(promises);\n // We have now decompressed all primitives, so remove the top-level extension\n scenegraph.removeExtension(EXT_MESHOPT_COMPRESSION);\n}\n/** Decode one meshopt buffer view */\nasync function decodeMeshoptBufferView(scenegraph, bufferView) {\n const meshoptExtension = scenegraph.getObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);\n if (meshoptExtension) {\n const { byteOffset = 0, byteLength = 0, byteStride, count, mode, filter = 'NONE', buffer: bufferIndex } = meshoptExtension;\n const buffer = scenegraph.gltf.buffers[bufferIndex];\n const source = new Uint8Array(buffer.arrayBuffer, buffer.byteOffset + byteOffset, byteLength);\n const result = new Uint8Array(scenegraph.gltf.buffers[bufferView.buffer].arrayBuffer, bufferView.byteOffset, bufferView.byteLength);\n await meshoptDecodeGltfBuffer(result, count, byteStride, source, mode, filter);\n scenegraph.removeObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);\n }\n}\n", "// This file is part of meshoptimizer library and is distributed under the terms of MIT License.\n// Copyright (C) 2016-2021, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)\n/* eslint-disable camelcase */\nconst isWebAssemblySupported = typeof WebAssembly !== 'object';\n// Built with clang version 11.0.0 (https://github.com/llvm/llvm-project.git 0160ad802e899c2922bc9b29564080c22eb0908c)\n// Built from meshoptimizer 0.16\nconst wasm_base = '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';\nconst wasm_simd = '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';\n// Uses bulk-memory and simd extensions\nconst detector = new Uint8Array([\n 0, 97, 115, 109, 1, 0, 0, 0, 1, 4, 1, 96, 0, 0, 3, 3, 2, 0, 0, 5, 3, 1, 0, 1, 12, 1, 0, 10, 22, 2,\n 12, 0, 65, 0, 65, 0, 65, 0, 252, 10, 0, 0, 11, 7, 0, 65, 0, 253, 15, 26, 11\n]);\n// Used to unpack wasm\nconst wasmpack = new Uint8Array([\n 32, 0, 65, 253, 3, 1, 2, 34, 4, 106, 6, 5, 11, 8, 7, 20, 13, 33, 12, 16, 128, 9, 116, 64, 19, 113,\n 127, 15, 10, 21, 22, 14, 255, 66, 24, 54, 136, 107, 18, 23, 192, 26, 114, 118, 132, 17, 77, 101,\n 130, 144, 27, 87, 131, 44, 45, 74, 156, 154, 70, 167\n]);\nconst FILTERS = {\n // legacy index-based enums for glTF\n 0: '',\n 1: 'meshopt_decodeFilterOct',\n 2: 'meshopt_decodeFilterQuat',\n 3: 'meshopt_decodeFilterExp',\n // string-based enums for glTF\n NONE: '',\n OCTAHEDRAL: 'meshopt_decodeFilterOct',\n QUATERNION: 'meshopt_decodeFilterQuat',\n EXPONENTIAL: 'meshopt_decodeFilterExp'\n};\nconst DECODERS = {\n // legacy index-based enums for glTF\n 0: 'meshopt_decodeVertexBuffer',\n 1: 'meshopt_decodeIndexBuffer',\n 2: 'meshopt_decodeIndexSequence',\n // string-based enums for glTF\n ATTRIBUTES: 'meshopt_decodeVertexBuffer',\n TRIANGLES: 'meshopt_decodeIndexBuffer',\n INDICES: 'meshopt_decodeIndexSequence'\n};\nexport function isMeshoptSupported() {\n return isWebAssemblySupported;\n}\nexport async function meshoptDecodeVertexBuffer(target, count, size, source, filter = 'NONE') {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeVertexBuffer, target, count, size, source, instance.exports[FILTERS[filter]]);\n}\nexport async function meshoptDecodeIndexBuffer(target, count, size, source) {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeIndexBuffer, target, count, size, source);\n}\nexport async function meshoptDecodeIndexSequence(target, count, size, source) {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeIndexSequence, target, count, size, source);\n}\n// eslint-disable-next-line max-params\nexport async function meshoptDecodeGltfBuffer(target, count, size, source, mode, filter = 'NONE') {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports[DECODERS[mode]], target, count, size, source, instance.exports[FILTERS[filter || 'NONE']]);\n}\nlet wasmPromise;\nasync function loadWasmInstance() {\n // eslint-disable-next-line\n if (!wasmPromise) {\n wasmPromise = loadWasmModule();\n }\n return wasmPromise;\n}\nasync function loadWasmModule() {\n let wasm = wasm_base;\n if (WebAssembly.validate(detector)) {\n wasm = wasm_simd;\n // eslint-disable-next-line no-console\n console.log('Warning: meshopt_decoder is using experimental SIMD support');\n }\n const result = await WebAssembly.instantiate(unpack(wasm), {});\n await result.instance.exports.__wasm_call_ctors();\n return result.instance;\n}\nfunction unpack(data) {\n const result = new Uint8Array(data.length);\n for (let i = 0; i < data.length; ++i) {\n const ch = data.charCodeAt(i);\n result[i] = ch > 96 ? ch - 71 : ch > 64 ? ch - 65 : ch > 47 ? ch + 4 : ch > 46 ? 63 : 62;\n }\n let write = 0;\n for (let i = 0; i < data.length; ++i) {\n result[write++] = result[i] < 60 ? wasmpack[result[i]] : (result[i] - 60) * 64 + result[++i];\n }\n return result.buffer.slice(0, write);\n}\n// eslint-disable-next-line max-params\nfunction decode(instance, fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3; // pad for SIMD filter\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res === 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res !== 0) {\n throw new Error(`Malformed buffer data: ${res}`);\n }\n}\n", "// GLTF EXTENSION: EXT_TEXTURE_WEBP\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/EXT_TEXTURE_WEBP\n/* eslint-disable camelcase */\nimport { isImageFormatSupported } from '@loaders.gl/images';\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst EXT_TEXTURE_WEBP = 'EXT_texture_webp';\n/** Extension name */\nexport const name = EXT_TEXTURE_WEBP;\n/**\n * Replaces a texture source reference with the extension texture\n * Done in preprocess() to prevent load of default image\n */\nexport function preprocess(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n if (!isImageFormatSupported('image/webp')) {\n if (scenegraph.getRequiredExtensions().includes(EXT_TEXTURE_WEBP)) {\n throw new Error(`gltf: Required extension ${EXT_TEXTURE_WEBP} not supported by browser`);\n }\n return;\n }\n const { json } = scenegraph;\n for (const texture of json.textures || []) {\n const extension = scenegraph.getObjectExtension(texture, EXT_TEXTURE_WEBP);\n if (extension) {\n // TODO - if multiple texture extensions are present which one wins?\n texture.source = extension.source;\n }\n scenegraph.removeObjectExtension(texture, EXT_TEXTURE_WEBP);\n }\n // Remove the top-level extension\n scenegraph.removeExtension(EXT_TEXTURE_WEBP);\n}\n", "// GLTF EXTENSION: KHR_texture_basisu\n// https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_texture_basisu\n/* eslint-disable camelcase */\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst KHR_TEXTURE_BASISU = 'KHR_texture_basisu';\n/** Extension name */\nexport const name = KHR_TEXTURE_BASISU;\n/**\n * Replaces a texture source reference with the extension texture\n * Done in preprocess() to prevent load of default image\n */\nexport function preprocess(gltfData, options) {\n const scene = new GLTFScenegraph(gltfData);\n const { json } = scene;\n for (const texture of json.textures || []) {\n const extension = scene.getObjectExtension(texture, KHR_TEXTURE_BASISU);\n if (extension) {\n // TODO - if multiple texture extensions are present which one wins?\n texture.source = extension.source;\n scene.removeObjectExtension(texture, KHR_TEXTURE_BASISU);\n }\n }\n // Remove the top-level extension\n scene.removeExtension(KHR_TEXTURE_BASISU);\n}\n", "// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_draco_mesh_compression\n// Only TRIANGLES: 0x0004 and TRIANGLE_STRIP: 0x0005 are supported\n/* eslint-disable camelcase */\nimport { sliceArrayBuffer, parseFromContext } from '@loaders.gl/loader-utils';\nimport { DracoLoader } from '@loaders.gl/draco';\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { getGLTFAccessors, getGLTFAccessor } from \"../gltf-utils/gltf-attribute-utils.js\";\nconst KHR_DRACO_MESH_COMPRESSION = 'KHR_draco_mesh_compression';\n/** Extension name */\nexport const name = KHR_DRACO_MESH_COMPRESSION;\nexport function preprocess(gltfData, options, context) {\n const scenegraph = new GLTFScenegraph(gltfData);\n for (const primitive of makeMeshPrimitiveIterator(scenegraph)) {\n if (scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION)) {\n // TODO - Remove fallback accessors to make sure we don't load unnecessary buffers\n }\n }\n}\nexport async function decode(gltfData, options, context) {\n if (!options?.gltf?.decompressMeshes) {\n return;\n }\n const scenegraph = new GLTFScenegraph(gltfData);\n const promises = [];\n for (const primitive of makeMeshPrimitiveIterator(scenegraph)) {\n if (scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION)) {\n promises.push(decompressPrimitive(scenegraph, primitive, options, context));\n }\n }\n // Decompress meshes in parallel\n await Promise.all(promises);\n // We have now decompressed all primitives, so remove the top-level extension\n scenegraph.removeExtension(KHR_DRACO_MESH_COMPRESSION);\n}\nexport function encode(gltfData, options = {}) {\n const scenegraph = new GLTFScenegraph(gltfData);\n for (const mesh of scenegraph.json.meshes || []) {\n // eslint-disable-next-line camelcase\n // @ts-ignore\n compressMesh(mesh, options);\n // NOTE: Only add the extension if something was actually compressed\n scenegraph.addRequiredExtension(KHR_DRACO_MESH_COMPRESSION);\n }\n}\n// DECODE\n// Unpacks one mesh primitive and removes the extension from the primitive\n// DracoDecoder needs to be imported and registered by app\n// Returns: Promise that resolves when all pending draco decoder jobs for this mesh complete\n// TODO - Implement fallback behavior per KHR_DRACO_MESH_COMPRESSION spec\nasync function decompressPrimitive(scenegraph, primitive, options, context) {\n const dracoExtension = scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION);\n if (!dracoExtension) {\n return;\n }\n const buffer = scenegraph.getTypedArrayForBufferView(dracoExtension.bufferView);\n // TODO - parse does not yet deal well with byte offsets embedded in typed arrays. Copy buffer\n // TODO - remove when `parse` is fixed to handle `byteOffset`s\n const bufferCopy = sliceArrayBuffer(buffer.buffer, buffer.byteOffset); // , buffer.byteLength);\n const dracoOptions = { ...options };\n // TODO - remove hack: The entire tileset might be included, too expensive to serialize\n delete dracoOptions['3d-tiles'];\n const decodedData = await parseFromContext(bufferCopy, DracoLoader, dracoOptions, context);\n const decodedAttributes = getGLTFAccessors(decodedData.attributes);\n // Restore min/max values\n for (const [attributeName, decodedAttribute] of Object.entries(decodedAttributes)) {\n if (attributeName in primitive.attributes) {\n const accessorIndex = primitive.attributes[attributeName];\n const accessor = scenegraph.getAccessor(accessorIndex);\n if (accessor?.min && accessor?.max) {\n decodedAttribute.min = accessor.min;\n decodedAttribute.max = accessor.max;\n }\n }\n }\n // @ts-ignore\n primitive.attributes = decodedAttributes;\n if (decodedData.indices) {\n // @ts-ignore\n primitive.indices = getGLTFAccessor(decodedData.indices);\n }\n // Extension has been processed, delete it\n scenegraph.removeObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION);\n checkPrimitive(primitive);\n}\n// ENCODE\n// eslint-disable-next-line max-len\n// Only TRIANGLES: 0x0004 and TRIANGLE_STRIP: 0x0005 are supported\nfunction compressMesh(attributes, indices, mode = 4, options, context) {\n if (!options.DracoWriter) {\n throw new Error('options.gltf.DracoWriter not provided');\n }\n // TODO - use DracoWriter using encode w/ registered DracoWriter...\n const compressedData = options.DracoWriter.encodeSync({ attributes });\n // Draco compression may change the order and number of vertices in a mesh.\n // To satisfy the requirement that accessors properties be correct for both\n // compressed and uncompressed data, generators should create uncompressed\n // attributes and indices using data that has been decompressed from the Draco buffer,\n // rather than the original source data.\n // @ts-ignore TODO this needs to be fixed\n const decodedData = context?.parseSync?.({ attributes });\n const fauxAccessors = options._addFauxAttributes(decodedData.attributes);\n const bufferViewIndex = options.addBufferView(compressedData);\n const glTFMesh = {\n primitives: [\n {\n attributes: fauxAccessors, // TODO - verify with spec\n mode, // GL.POINTS\n extensions: {\n [KHR_DRACO_MESH_COMPRESSION]: {\n bufferView: bufferViewIndex,\n attributes: fauxAccessors // TODO - verify with spec\n }\n }\n }\n ]\n };\n return glTFMesh;\n}\n// UTILS\nfunction checkPrimitive(primitive) {\n if (!primitive.attributes && Object.keys(primitive.attributes).length > 0) {\n throw new Error('glTF: Empty primitive detected: Draco decompression failure?');\n }\n}\nfunction* makeMeshPrimitiveIterator(scenegraph) {\n for (const mesh of scenegraph.json.meshes || []) {\n for (const primitive of mesh.primitives) {\n yield primitive;\n }\n }\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { VERSION } from \"./lib/utils/version.js\";\n/**\n * Worker loader for Draco3D compressed geometries\n */\nexport const DracoLoader = {\n dataType: null,\n batchType: null,\n name: 'Draco',\n id: 'draco',\n module: 'draco',\n // shapes: ['mesh'],\n version: VERSION,\n worker: true,\n extensions: ['drc'],\n mimeTypes: ['application/octet-stream'],\n binary: true,\n tests: ['DRACO'],\n options: {\n draco: {\n decoderType: typeof WebAssembly === 'object' ? 'wasm' : 'js', // 'js' for IE11\n libraryPath: 'libs/',\n extraAttributes: {},\n attributeNameEntry: undefined\n }\n }\n};\n", "import { deduceMeshField } from '@loaders.gl/schema';\n/** Extract an arrow-like schema from a Draco mesh */\nexport function getDracoSchema(attributes, loaderData, indices) {\n const metadata = makeMetadata(loaderData.metadata);\n const fields = [];\n const namedLoaderDataAttributes = transformAttributesLoaderData(loaderData.attributes);\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n const field = getArrowFieldFromAttribute(attributeName, attribute, namedLoaderDataAttributes[attributeName]);\n fields.push(field);\n }\n if (indices) {\n const indicesField = getArrowFieldFromAttribute('indices', indices);\n fields.push(indicesField);\n }\n return { fields, metadata };\n}\nfunction transformAttributesLoaderData(loaderData) {\n const result = {};\n for (const key in loaderData) {\n const dracoAttribute = loaderData[key];\n result[dracoAttribute.name || 'undefined'] = dracoAttribute;\n }\n return result;\n}\nfunction getArrowFieldFromAttribute(attributeName, attribute, loaderData) {\n const metadataMap = loaderData ? makeMetadata(loaderData.metadata) : undefined;\n const field = deduceMeshField(attributeName, attribute, metadataMap);\n return field;\n}\nfunction makeMetadata(metadata) {\n Object.entries(metadata);\n const serializedMetadata = {};\n for (const key in metadata) {\n serializedMetadata[`${key}.string`] = JSON.stringify(metadata[key]);\n }\n return serializedMetadata;\n}\n", "/* eslint-disable camelcase */\nimport { getMeshBoundingBox } from '@loaders.gl/schema';\nimport { getDracoSchema } from \"./utils/get-draco-schema.js\";\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst GEOMETRY_TYPE = {\n TRIANGULAR_MESH: 0,\n POINT_CLOUD: 1\n};\n// Native Draco attribute names to GLTF attribute names.\nconst DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP = {\n POSITION: 'POSITION',\n NORMAL: 'NORMAL',\n COLOR: 'COLOR_0',\n TEX_COORD: 'TEXCOORD_0'\n};\nconst DRACO_DATA_TYPE_TO_TYPED_ARRAY_MAP = {\n 1: Int8Array,\n 2: Uint8Array,\n 3: Int16Array,\n 4: Uint16Array,\n 5: Int32Array,\n 6: Uint32Array,\n // 7: BigInt64Array,\n // 8: BigUint64Array,\n 9: Float32Array\n // 10: Float64Array\n // 11: BOOL - What array type do we use for this?\n};\nconst INDEX_ITEM_SIZE = 4;\nexport default class DracoParser {\n draco;\n decoder;\n metadataQuerier;\n // draco - the draco decoder, either import `draco3d` or load dynamically\n constructor(draco) {\n this.draco = draco;\n this.decoder = new this.draco.Decoder();\n this.metadataQuerier = new this.draco.MetadataQuerier();\n }\n /**\n * Destroy draco resources\n */\n destroy() {\n this.draco.destroy(this.decoder);\n this.draco.destroy(this.metadataQuerier);\n }\n /**\n * NOTE: caller must call `destroyGeometry` on the return value after using it\n * @param arrayBuffer\n * @param options\n */\n parseSync(arrayBuffer, options = {}) {\n const buffer = new this.draco.DecoderBuffer();\n buffer.Init(new Int8Array(arrayBuffer), arrayBuffer.byteLength);\n this._disableAttributeTransforms(options);\n const geometry_type = this.decoder.GetEncodedGeometryType(buffer);\n const dracoGeometry = geometry_type === this.draco.TRIANGULAR_MESH\n ? new this.draco.Mesh()\n : new this.draco.PointCloud();\n try {\n let dracoStatus;\n switch (geometry_type) {\n case this.draco.TRIANGULAR_MESH:\n dracoStatus = this.decoder.DecodeBufferToMesh(buffer, dracoGeometry);\n break;\n case this.draco.POINT_CLOUD:\n dracoStatus = this.decoder.DecodeBufferToPointCloud(buffer, dracoGeometry);\n break;\n default:\n throw new Error('DRACO: Unknown geometry type.');\n }\n if (!dracoStatus.ok() || !dracoGeometry.ptr) {\n const message = `DRACO decompression failed: ${dracoStatus.error_msg()}`;\n // console.error(message);\n throw new Error(message);\n }\n const loaderData = this._getDracoLoaderData(dracoGeometry, geometry_type, options);\n const geometry = this._getMeshData(dracoGeometry, loaderData, options);\n const boundingBox = getMeshBoundingBox(geometry.attributes);\n const schema = getDracoSchema(geometry.attributes, loaderData, geometry.indices);\n const data = {\n loader: 'draco',\n loaderData,\n header: {\n vertexCount: dracoGeometry.num_points(),\n boundingBox\n },\n ...geometry,\n schema\n };\n return data;\n }\n finally {\n this.draco.destroy(buffer);\n if (dracoGeometry) {\n this.draco.destroy(dracoGeometry);\n }\n }\n }\n // Draco specific \"loader data\"\n /**\n * Extract\n * @param dracoGeometry\n * @param geometry_type\n * @param options\n * @returns\n */\n _getDracoLoaderData(dracoGeometry, geometry_type, options) {\n const metadata = this._getTopLevelMetadata(dracoGeometry);\n const attributes = this._getDracoAttributes(dracoGeometry, options);\n return {\n geometry_type,\n num_attributes: dracoGeometry.num_attributes(),\n num_points: dracoGeometry.num_points(),\n num_faces: dracoGeometry instanceof this.draco.Mesh ? dracoGeometry.num_faces() : 0,\n metadata,\n attributes\n };\n }\n /**\n * Extract all draco provided information and metadata for each attribute\n * @param dracoGeometry\n * @param options\n * @returns\n */\n _getDracoAttributes(dracoGeometry, options) {\n const dracoAttributes = {};\n for (let attributeId = 0; attributeId < dracoGeometry.num_attributes(); attributeId++) {\n // Note: Draco docs do not seem clear on `GetAttribute` ids just being a zero-based index,\n // but it does seems to work this way\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attributeId);\n const metadata = this._getAttributeMetadata(dracoGeometry, attributeId);\n dracoAttributes[dracoAttribute.unique_id()] = {\n unique_id: dracoAttribute.unique_id(),\n attribute_type: dracoAttribute.attribute_type(),\n data_type: dracoAttribute.data_type(),\n num_components: dracoAttribute.num_components(),\n byte_offset: dracoAttribute.byte_offset(),\n byte_stride: dracoAttribute.byte_stride(),\n normalized: dracoAttribute.normalized(),\n attribute_index: attributeId,\n metadata\n };\n // Add transformation parameters for any attributes app wants untransformed\n const quantization = this._getQuantizationTransform(dracoAttribute, options);\n if (quantization) {\n dracoAttributes[dracoAttribute.unique_id()].quantization_transform = quantization;\n }\n const octahedron = this._getOctahedronTransform(dracoAttribute, options);\n if (octahedron) {\n dracoAttributes[dracoAttribute.unique_id()].octahedron_transform = octahedron;\n }\n }\n return dracoAttributes;\n }\n /**\n * Get standard loaders.gl mesh category data\n * Extracts the geometry from draco\n * @param dracoGeometry\n * @param options\n */\n _getMeshData(dracoGeometry, loaderData, options) {\n const attributes = this._getMeshAttributes(loaderData, dracoGeometry, options);\n const positionAttribute = attributes.POSITION;\n if (!positionAttribute) {\n throw new Error('DRACO: No position attribute found.');\n }\n // For meshes, we need indices to define the faces.\n if (dracoGeometry instanceof this.draco.Mesh) {\n switch (options.topology) {\n case 'triangle-strip':\n return {\n topology: 'triangle-strip',\n mode: 4, // GL.TRIANGLES\n attributes,\n indices: {\n value: this._getTriangleStripIndices(dracoGeometry),\n size: 1\n }\n };\n case 'triangle-list':\n default:\n return {\n topology: 'triangle-list',\n mode: 5, // GL.TRIANGLE_STRIP\n attributes,\n indices: {\n value: this._getTriangleListIndices(dracoGeometry),\n size: 1\n }\n };\n }\n }\n // PointCloud - must come last as Mesh inherits from PointCloud\n return {\n topology: 'point-list',\n mode: 0, // GL.POINTS\n attributes\n };\n }\n _getMeshAttributes(loaderData, dracoGeometry, options) {\n const attributes = {};\n for (const loaderAttribute of Object.values(loaderData.attributes)) {\n const attributeName = this._deduceAttributeName(loaderAttribute, options);\n loaderAttribute.name = attributeName;\n const values = this._getAttributeValues(dracoGeometry, loaderAttribute);\n if (values) {\n const { value, size } = values;\n attributes[attributeName] = {\n value,\n size,\n byteOffset: loaderAttribute.byte_offset,\n byteStride: loaderAttribute.byte_stride,\n normalized: loaderAttribute.normalized\n };\n }\n }\n return attributes;\n }\n // MESH INDICES EXTRACTION\n /**\n * For meshes, we need indices to define the faces.\n * @param dracoGeometry\n */\n _getTriangleListIndices(dracoGeometry) {\n // Example on how to retrieve mesh and attributes.\n const numFaces = dracoGeometry.num_faces();\n const numIndices = numFaces * 3;\n const byteLength = numIndices * INDEX_ITEM_SIZE;\n const ptr = this.draco._malloc(byteLength);\n try {\n this.decoder.GetTrianglesUInt32Array(dracoGeometry, byteLength, ptr);\n return new Uint32Array(this.draco.HEAPF32.buffer, ptr, numIndices).slice();\n }\n finally {\n this.draco._free(ptr);\n }\n }\n /**\n * For meshes, we need indices to define the faces.\n * @param dracoGeometry\n */\n _getTriangleStripIndices(dracoGeometry) {\n const dracoArray = new this.draco.DracoInt32Array();\n try {\n /* const numStrips = */ this.decoder.GetTriangleStripsFromMesh(dracoGeometry, dracoArray);\n return getUint32Array(dracoArray);\n }\n finally {\n this.draco.destroy(dracoArray);\n }\n }\n /**\n *\n * @param dracoGeometry\n * @param dracoAttribute\n * @param attributeName\n */\n _getAttributeValues(dracoGeometry, attribute) {\n const TypedArrayCtor = DRACO_DATA_TYPE_TO_TYPED_ARRAY_MAP[attribute.data_type];\n if (!TypedArrayCtor) {\n // eslint-disable-next-line no-console\n console.warn(`DRACO: Unsupported attribute type ${attribute.data_type}`);\n return null;\n }\n const numComponents = attribute.num_components;\n const numPoints = dracoGeometry.num_points();\n const numValues = numPoints * numComponents;\n const byteLength = numValues * TypedArrayCtor.BYTES_PER_ELEMENT;\n const dataType = getDracoDataType(this.draco, TypedArrayCtor);\n let value;\n const ptr = this.draco._malloc(byteLength);\n try {\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attribute.attribute_index);\n this.decoder.GetAttributeDataArrayForAllPoints(dracoGeometry, dracoAttribute, dataType, byteLength, ptr);\n value = new TypedArrayCtor(this.draco.HEAPF32.buffer, ptr, numValues).slice();\n }\n finally {\n this.draco._free(ptr);\n }\n return { value, size: numComponents };\n }\n // Attribute names\n /**\n * DRACO does not store attribute names - We need to deduce an attribute name\n * for each attribute\n _getAttributeNames(\n dracoGeometry: Mesh | PointCloud,\n options: DracoParseOptions\n ): {[unique_id: number]: string} {\n const attributeNames: {[unique_id: number]: string} = {};\n for (let attributeId = 0; attributeId < dracoGeometry.num_attributes(); attributeId++) {\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attributeId);\n const attributeName = this._deduceAttributeName(dracoAttribute, options);\n attributeNames[attributeName] = attributeName;\n }\n return attributeNames;\n }\n */\n /**\n * Deduce an attribute name.\n * @note DRACO does not save attribute names, just general type (POSITION, COLOR)\n * to help optimize compression. We generate GLTF compatible names for the Draco-recognized\n * types\n * @param attributeData\n */\n _deduceAttributeName(attribute, options) {\n // Deduce name based on application provided map\n const uniqueId = attribute.unique_id;\n for (const [attributeName, attributeUniqueId] of Object.entries(options.extraAttributes || {})) {\n if (attributeUniqueId === uniqueId) {\n return attributeName;\n }\n }\n // Deduce name based on attribute type\n const thisAttributeType = attribute.attribute_type;\n for (const dracoAttributeConstant in DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP) {\n const attributeType = this.draco[dracoAttributeConstant];\n if (attributeType === thisAttributeType) {\n // TODO - Return unique names if there multiple attributes per type\n // (e.g. multiple TEX_COORDS or COLORS)\n return DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP[dracoAttributeConstant];\n }\n }\n // Look up in metadata\n // TODO - shouldn't this have priority?\n const entryName = options.attributeNameEntry || 'name';\n if (attribute.metadata[entryName]) {\n return attribute.metadata[entryName].string;\n }\n // Attribute of \"GENERIC\" type, we need to assign some name\n return `CUSTOM_ATTRIBUTE_${uniqueId}`;\n }\n // METADATA EXTRACTION\n /** Get top level metadata */\n _getTopLevelMetadata(dracoGeometry) {\n const dracoMetadata = this.decoder.GetMetadata(dracoGeometry);\n return this._getDracoMetadata(dracoMetadata);\n }\n /** Get per attribute metadata */\n _getAttributeMetadata(dracoGeometry, attributeId) {\n const dracoMetadata = this.decoder.GetAttributeMetadata(dracoGeometry, attributeId);\n return this._getDracoMetadata(dracoMetadata);\n }\n /**\n * Extract metadata field values\n * @param dracoMetadata\n * @returns\n */\n _getDracoMetadata(dracoMetadata) {\n // The not so wonderful world of undocumented Draco APIs :(\n if (!dracoMetadata || !dracoMetadata.ptr) {\n return {};\n }\n const result = {};\n const numEntries = this.metadataQuerier.NumEntries(dracoMetadata);\n for (let entryIndex = 0; entryIndex < numEntries; entryIndex++) {\n const entryName = this.metadataQuerier.GetEntryName(dracoMetadata, entryIndex);\n result[entryName] = this._getDracoMetadataField(dracoMetadata, entryName);\n }\n return result;\n }\n /**\n * Extracts possible values for one metadata entry by name\n * @param dracoMetadata\n * @param entryName\n */\n _getDracoMetadataField(dracoMetadata, entryName) {\n const dracoArray = new this.draco.DracoInt32Array();\n try {\n // Draco metadata fields can hold int32 arrays\n this.metadataQuerier.GetIntEntryArray(dracoMetadata, entryName, dracoArray);\n const intArray = getInt32Array(dracoArray);\n return {\n int: this.metadataQuerier.GetIntEntry(dracoMetadata, entryName),\n string: this.metadataQuerier.GetStringEntry(dracoMetadata, entryName),\n double: this.metadataQuerier.GetDoubleEntry(dracoMetadata, entryName),\n intArray\n };\n }\n finally {\n this.draco.destroy(dracoArray);\n }\n }\n // QUANTIZED ATTRIBUTE SUPPORT (NO DECOMPRESSION)\n /** Skip transforms for specific attribute types */\n _disableAttributeTransforms(options) {\n const { quantizedAttributes = [], octahedronAttributes = [] } = options;\n const skipAttributes = [...quantizedAttributes, ...octahedronAttributes];\n for (const dracoAttributeName of skipAttributes) {\n this.decoder.SkipAttributeTransform(this.draco[dracoAttributeName]);\n }\n }\n /**\n * Extract (and apply?) Position Transform\n * @todo not used\n */\n _getQuantizationTransform(dracoAttribute, options) {\n const { quantizedAttributes = [] } = options;\n const attribute_type = dracoAttribute.attribute_type();\n const skip = quantizedAttributes.map((type) => this.decoder[type]).includes(attribute_type);\n if (skip) {\n const transform = new this.draco.AttributeQuantizationTransform();\n try {\n if (transform.InitFromAttribute(dracoAttribute)) {\n return {\n quantization_bits: transform.quantization_bits(),\n range: transform.range(),\n min_values: new Float32Array([1, 2, 3]).map((i) => transform.min_value(i))\n };\n }\n }\n finally {\n this.draco.destroy(transform);\n }\n }\n return null;\n }\n _getOctahedronTransform(dracoAttribute, options) {\n const { octahedronAttributes = [] } = options;\n const attribute_type = dracoAttribute.attribute_type();\n const octahedron = octahedronAttributes\n .map((type) => this.decoder[type])\n .includes(attribute_type);\n if (octahedron) {\n const transform = new this.draco.AttributeQuantizationTransform();\n try {\n if (transform.InitFromAttribute(dracoAttribute)) {\n return {\n quantization_bits: transform.quantization_bits()\n };\n }\n }\n finally {\n this.draco.destroy(transform);\n }\n }\n return null;\n }\n}\n/**\n * Get draco specific data type by TypedArray constructor type\n * @param attributeType\n * @returns draco specific data type\n */\nfunction getDracoDataType(draco, attributeType) {\n switch (attributeType) {\n case Float32Array:\n return draco.DT_FLOAT32;\n case Int8Array:\n return draco.DT_INT8;\n case Int16Array:\n return draco.DT_INT16;\n case Int32Array:\n return draco.DT_INT32;\n case Uint8Array:\n return draco.DT_UINT8;\n case Uint16Array:\n return draco.DT_UINT16;\n case Uint32Array:\n return draco.DT_UINT32;\n default:\n return draco.DT_INVALID;\n }\n}\n/**\n * Copy a Draco int32 array into a JS typed array\n */\nfunction getInt32Array(dracoArray) {\n const numValues = dracoArray.size();\n const intArray = new Int32Array(numValues);\n for (let i = 0; i < numValues; i++) {\n intArray[i] = dracoArray.GetValue(i);\n }\n return intArray;\n}\n/**\n * Copy a Draco int32 array into a JS typed array\n */\nfunction getUint32Array(dracoArray) {\n const numValues = dracoArray.size();\n const intArray = new Int32Array(numValues);\n for (let i = 0; i < numValues; i++) {\n intArray[i] = dracoArray.GetValue(i);\n }\n return intArray;\n}\n", "// Dynamic DRACO module loading inspired by THREE.DRACOLoader\n// https://github.com/mrdoob/three.js/blob/398c4f39ebdb8b23eefd4a7a5ec49ec0c96c7462/examples/jsm/loaders/DRACOLoader.js\n// by Don McCurdy / https://www.donmccurdy.com / MIT license\nimport { loadLibrary } from '@loaders.gl/worker-utils';\nconst DRACO_DECODER_VERSION = '1.5.6';\nconst DRACO_ENCODER_VERSION = '1.4.1';\nconst STATIC_DECODER_URL = `https://www.gstatic.com/draco/versioned/decoders/${DRACO_DECODER_VERSION}`;\nexport const DRACO_EXTERNAL_LIBRARIES = {\n /** The primary Draco3D encoder, javascript wrapper part */\n DECODER: 'draco_wasm_wrapper.js',\n /** The primary draco decoder, compiled web assembly part */\n DECODER_WASM: 'draco_decoder.wasm',\n /** Fallback decoder for non-webassebly environments. Very big bundle, lower performance */\n FALLBACK_DECODER: 'draco_decoder.js',\n /** Draco encoder */\n ENCODER: 'draco_encoder.js'\n};\nexport const DRACO_EXTERNAL_LIBRARY_URLS = {\n [DRACO_EXTERNAL_LIBRARIES.DECODER]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.DECODER}`,\n [DRACO_EXTERNAL_LIBRARIES.DECODER_WASM]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.DECODER_WASM}`,\n [DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER}`,\n [DRACO_EXTERNAL_LIBRARIES.ENCODER]: `https://raw.githubusercontent.com/google/draco/${DRACO_ENCODER_VERSION}/javascript/${DRACO_EXTERNAL_LIBRARIES.ENCODER}`\n};\nlet loadDecoderPromise;\nlet loadEncoderPromise;\nexport async function loadDracoDecoderModule(options) {\n const modules = options.modules || {};\n // Check if a bundled draco3d library has been supplied by application\n if (modules.draco3d) {\n loadDecoderPromise ||= modules.draco3d.createDecoderModule({}).then((draco) => {\n return { draco };\n });\n }\n else {\n // If not, dynamically load the WASM script from our CDN\n loadDecoderPromise ||= loadDracoDecoder(options);\n }\n return await loadDecoderPromise;\n}\nexport async function loadDracoEncoderModule(options) {\n const modules = options.modules || {};\n // Check if a bundled draco3d library has been supplied by application\n if (modules.draco3d) {\n loadEncoderPromise ||= modules.draco3d.createEncoderModule({}).then((draco) => {\n return { draco };\n });\n }\n else {\n // If not, dynamically load the WASM script from our CDN\n loadEncoderPromise ||= loadDracoEncoder(options);\n }\n return await loadEncoderPromise;\n}\n// DRACO DECODER LOADING\nasync function loadDracoDecoder(options) {\n let DracoDecoderModule;\n let wasmBinary;\n switch (options.draco && options.draco.decoderType) {\n case 'js':\n DracoDecoderModule = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER);\n break;\n case 'wasm':\n default:\n [DracoDecoderModule, wasmBinary] = await Promise.all([\n await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.DECODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.DECODER),\n await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.DECODER_WASM], 'draco', options, DRACO_EXTERNAL_LIBRARIES.DECODER_WASM)\n ]);\n }\n // Depends on how import happened...\n // @ts-ignore\n DracoDecoderModule = DracoDecoderModule || globalThis.DracoDecoderModule;\n return await initializeDracoDecoder(DracoDecoderModule, wasmBinary);\n}\nfunction initializeDracoDecoder(DracoDecoderModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n DracoDecoderModule({\n ...options,\n onModuleLoaded: (draco) => resolve({ draco }) // Module is Promise-like. Wrap in object to avoid loop.\n });\n });\n}\n// ENCODER\nasync function loadDracoEncoder(options) {\n let DracoEncoderModule = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.ENCODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.ENCODER);\n // @ts-ignore\n DracoEncoderModule = DracoEncoderModule || globalThis.DracoEncoderModule;\n return new Promise((resolve) => {\n DracoEncoderModule({\n onModuleLoaded: (draco) => resolve({ draco }) // Module is Promise-like. Wrap in object to avoid loop.\n });\n });\n}\n", "import { DracoLoader as DracoWorkerLoader } from \"./draco-loader.js\";\nimport DracoParser from \"./lib/draco-parser.js\";\nimport { loadDracoDecoderModule } from \"./lib/draco-module-loader.js\";\nimport { VERSION } from \"./lib/utils/version.js\";\n// Module constants\nexport { DRACO_EXTERNAL_LIBRARIES, DRACO_EXTERNAL_LIBRARY_URLS } from \"./lib/draco-module-loader.js\";\nexport { DracoWriter } from \"./draco-writer.js\";\n/**\n * Browser worker doesn't work because of issue during \"draco_encoder.js\" loading.\n * Refused to execute script from 'https://raw.githubusercontent.com/google/draco/1.4.1/javascript/draco_encoder.js' because its MIME type ('') is not executable.\n */\nexport const DracoWriterWorker = {\n id: 'draco-writer',\n name: 'Draco compressed geometry writer',\n module: 'draco',\n version: VERSION,\n worker: true,\n options: {\n draco: {},\n source: null\n }\n};\nexport { DracoWorkerLoader };\n/**\n * Loader for Draco3D compressed geometries\n */\nexport const DracoLoader = {\n ...DracoWorkerLoader,\n parse\n};\nasync function parse(arrayBuffer, options) {\n const { draco } = await loadDracoDecoderModule(options);\n const dracoParser = new DracoParser(draco);\n try {\n return dracoParser.parseSync(arrayBuffer, options?.draco);\n }\n finally {\n dracoParser.destroy();\n }\n}\n", "// TODO - remove\nimport { getAccessorTypeFromSize, getComponentTypeFromArray } from \"./gltf-utils.js\";\n// Returns a fresh attributes object with glTF-standardized attributes names\n// Attributes that cannot be identified will not be included\n// Removes `indices` if present, as it should be stored separately from the attributes\nexport function getGLTFAccessors(attributes) {\n const accessors = {};\n for (const name in attributes) {\n const attribute = attributes[name];\n if (name !== 'indices') {\n const glTFAccessor = getGLTFAccessor(attribute);\n accessors[name] = glTFAccessor;\n }\n }\n return accessors;\n}\n// Fix up a single accessor.\n// Input: typed array or a partial accessor object\n// Return: accessor object\nexport function getGLTFAccessor(attribute) {\n const { buffer, size, count } = getAccessorData(attribute);\n const glTFAccessor = {\n // glTF Accessor values\n // TODO: Instead of a bufferView index we could have an actual buffer (typed array)\n // bufferView: null,\n // TODO: Deprecate `value` in favor of bufferView?\n // @ts-ignore\n value: buffer,\n size, // Decoded `type` (e.g. SCALAR)\n byteOffset: 0,\n count,\n type: getAccessorTypeFromSize(size),\n componentType: getComponentTypeFromArray(buffer)\n };\n return glTFAccessor;\n}\n// export function getGLTFAttribute(data, gltfAttributeName): GLTFAccessor {\n// return data.attributes[data.glTFAttributeMap[gltfAttributeName]];\n// }\nfunction getAccessorData(attribute) {\n let buffer = attribute;\n let size = 1;\n let count = 0;\n if (attribute && attribute.value) {\n buffer = attribute.value;\n size = attribute.size || 1;\n }\n if (buffer) {\n if (!ArrayBuffer.isView(buffer)) {\n buffer = toTypedArray(buffer, Float32Array);\n }\n count = buffer.length / size;\n }\n return { buffer, size, count };\n}\n// Convert non-typed arrays to arrays of specified format\nfunction toTypedArray(array, ArrayType, convertTypedArrays = false) {\n if (!array) {\n return null;\n }\n if (Array.isArray(array)) {\n return new ArrayType(array);\n }\n if (convertTypedArrays && !(array instanceof ArrayType)) {\n return new ArrayType(array);\n }\n return array;\n}\n", "/**\n * https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_texture_transform/README.md\n */\nimport { Vector3, Matrix3 } from '@math.gl/core';\nimport { getAccessorArrayTypeAndLength } from \"../gltf-utils/gltf-utils.js\";\nimport { BYTES, COMPONENTS } from \"../gltf-utils/gltf-constants.js\";\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\n/** Extension name */\nconst KHR_TEXTURE_TRANSFORM = 'KHR_texture_transform';\nexport const name = KHR_TEXTURE_TRANSFORM;\nconst scratchVector = new Vector3();\nconst scratchRotationMatrix = new Matrix3();\nconst scratchScaleMatrix = new Matrix3();\n/**\n * The extension entry to process the transformation\n * @param gltfData gltf buffers and json\n * @param options GLTFLoader options\n */\nexport async function decode(gltfData, options) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const hasExtension = gltfScenegraph.hasExtension(KHR_TEXTURE_TRANSFORM);\n if (!hasExtension || !options.gltf?.loadBuffers) {\n return;\n }\n const materials = gltfData.json.materials || [];\n for (let i = 0; i < materials.length; i++) {\n transformTexCoords(i, gltfData);\n }\n}\n/**\n * Transform TEXCOORD by material\n * @param materialIndex processing material index\n * @param gltfData gltf buffers and json\n */\nfunction transformTexCoords(materialIndex, gltfData) {\n const material = gltfData.json.materials?.[materialIndex];\n const materialTextures = [\n material?.pbrMetallicRoughness?.baseColorTexture,\n material?.emissiveTexture,\n material?.normalTexture,\n material?.occlusionTexture,\n material?.pbrMetallicRoughness?.metallicRoughnessTexture\n ];\n // Save processed texCoords in order no to process the same twice\n const processedTexCoords = [];\n for (const textureInfo of materialTextures) {\n if (textureInfo && textureInfo?.extensions?.[KHR_TEXTURE_TRANSFORM]) {\n transformPrimitives(gltfData, materialIndex, textureInfo, processedTexCoords);\n }\n }\n}\n/**\n * Transform primitives of the particular material\n * @param gltfData gltf data\n * @param materialIndex primitives with this material will be transformed\n * @param texture texture object\n * @param processedTexCoords storage to save already processed texCoords\n */\nfunction transformPrimitives(gltfData, materialIndex, texture, processedTexCoords) {\n const transformParameters = getTransformParameters(texture, processedTexCoords);\n if (!transformParameters) {\n return;\n }\n const meshes = gltfData.json.meshes || [];\n for (const mesh of meshes) {\n for (const primitive of mesh.primitives) {\n const material = primitive.material;\n if (Number.isFinite(material) && materialIndex === material) {\n transformPrimitive(gltfData, primitive, transformParameters);\n }\n }\n }\n}\n/**\n * Get parameters for TEXCOORD transformation\n * @param texture texture object\n * @param processedTexCoords storage to save already processed texCoords\n * @returns texCoord couple and transformation matrix\n */\nfunction getTransformParameters(texture, processedTexCoords) {\n const textureInfo = texture.extensions?.[KHR_TEXTURE_TRANSFORM];\n const { texCoord: originalTexCoord = 0 } = texture;\n // If texCoord is not set in the extension, original attribute data will be replaced\n const { texCoord = originalTexCoord } = textureInfo;\n // Make sure that couple [originalTexCoord, extensionTexCoord] is not processed twice\n const isProcessed = processedTexCoords.findIndex(([original, newTexCoord]) => original === originalTexCoord && newTexCoord === texCoord) !== -1;\n if (!isProcessed) {\n const matrix = makeTransformationMatrix(textureInfo);\n if (originalTexCoord !== texCoord) {\n texture.texCoord = texCoord;\n }\n processedTexCoords.push([originalTexCoord, texCoord]);\n return { originalTexCoord, texCoord, matrix };\n }\n return null;\n}\n/**\n * Transform `TEXCOORD_0` attribute in the primitive\n * @param gltfData gltf data\n * @param primitive primitive object\n * @param transformParameters texCoord couple and transformation matrix\n */\nfunction transformPrimitive(gltfData, primitive, transformParameters) {\n const { originalTexCoord, texCoord, matrix } = transformParameters;\n const texCoordAccessor = primitive.attributes[`TEXCOORD_${originalTexCoord}`];\n if (Number.isFinite(texCoordAccessor)) {\n // Get accessor of the `TEXCOORD_0` attribute\n const accessor = gltfData.json.accessors?.[texCoordAccessor];\n if (accessor && accessor.bufferView) {\n // Get `bufferView` of the `accessor`\n const bufferView = gltfData.json.bufferViews?.[accessor.bufferView];\n if (bufferView) {\n // Get `arrayBuffer` the `bufferView` look at\n const { arrayBuffer, byteOffset: bufferByteOffset } = gltfData.buffers[bufferView.buffer];\n // Resulting byteOffset is sum of the buffer, accessor and bufferView byte offsets\n const byteOffset = (bufferByteOffset || 0) + (accessor.byteOffset || 0) + (bufferView.byteOffset || 0);\n // Deduce TypedArray type and its length from `accessor` and `bufferView` data\n const { ArrayType, length } = getAccessorArrayTypeAndLength(accessor, bufferView);\n // Number of bytes each component occupies\n const bytes = BYTES[accessor.componentType];\n // Number of components. For the `TEXCOORD_0` with `VEC2` type, it must return 2\n const components = COMPONENTS[accessor.type];\n // Multiplier to calculate the address of the `TEXCOORD_0` element in the arrayBuffer\n const elementAddressScale = bufferView.byteStride || bytes * components;\n // Data transform to Float32Array\n const result = new Float32Array(length);\n for (let i = 0; i < accessor.count; i++) {\n // Take [u, v] couple from the arrayBuffer\n const uv = new ArrayType(arrayBuffer, byteOffset + i * elementAddressScale, 2);\n // Set and transform Vector3 per https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_texture_transform#overview\n scratchVector.set(uv[0], uv[1], 1);\n scratchVector.transformByMatrix3(matrix);\n // Save result in Float32Array\n result.set([scratchVector[0], scratchVector[1]], i * components);\n }\n // If texCoord the same, replace gltf structural data\n if (originalTexCoord === texCoord) {\n updateGltf(accessor, bufferView, gltfData.buffers, result);\n }\n else {\n // If texCoord change, create new attribute\n createAttribute(texCoord, accessor, primitive, gltfData, result);\n }\n }\n }\n }\n}\n/**\n * Update GLTF structural objects with new data as we create new `Float32Array` for `TEXCOORD_0`.\n * @param accessor accessor to change\n * @param bufferView bufferView to change\n * @param buffers binary buffers\n * @param newTexcoordArray typed array with data after transformation\n */\nfunction updateGltf(accessor, bufferView, buffers, newTexCoordArray) {\n accessor.componentType = 5126;\n buffers.push({\n arrayBuffer: newTexCoordArray.buffer,\n byteOffset: 0,\n byteLength: newTexCoordArray.buffer.byteLength\n });\n bufferView.buffer = buffers.length - 1;\n bufferView.byteLength = newTexCoordArray.buffer.byteLength;\n bufferView.byteOffset = 0;\n delete bufferView.byteStride;\n}\n/**\n *\n * @param newTexCoord new `texCoord` value\n * @param originalAccessor original accessor object, that store data before transformation\n * @param primitive primitive object\n * @param gltfData gltf data\n * @param newTexCoordArray typed array with data after transformation\n * @returns\n */\nfunction createAttribute(newTexCoord, originalAccessor, primitive, gltfData, newTexCoordArray) {\n gltfData.buffers.push({\n arrayBuffer: newTexCoordArray.buffer,\n byteOffset: 0,\n byteLength: newTexCoordArray.buffer.byteLength\n });\n const bufferViews = gltfData.json.bufferViews;\n if (!bufferViews) {\n return;\n }\n bufferViews.push({\n buffer: gltfData.buffers.length - 1,\n byteLength: newTexCoordArray.buffer.byteLength,\n byteOffset: 0\n });\n const accessors = gltfData.json.accessors;\n if (!accessors) {\n return;\n }\n accessors.push({\n bufferView: bufferViews?.length - 1,\n byteOffset: 0,\n componentType: 5126,\n count: originalAccessor.count,\n type: 'VEC2'\n });\n primitive.attributes[`TEXCOORD_${newTexCoord}`] = accessors.length - 1;\n}\n/**\n * Construct transformation matrix from the extension data (transition, rotation, scale)\n * @param extensionData extension data\n * @returns transformation matrix\n */\nfunction makeTransformationMatrix(extensionData) {\n const { offset = [0, 0], rotation = 0, scale = [1, 1] } = extensionData;\n const translationMatrix = new Matrix3().set(1, 0, 0, 0, 1, 0, offset[0], offset[1], 1);\n const rotationMatrix = scratchRotationMatrix.set(Math.cos(rotation), Math.sin(rotation), 0, -Math.sin(rotation), Math.cos(rotation), 0, 0, 0, 1);\n const scaleMatrix = scratchScaleMatrix.set(scale[0], 0, 0, 0, scale[1], 0, 0, 0, 1);\n return translationMatrix.multiplyRight(rotationMatrix).multiplyRight(scaleMatrix);\n}\n", "// math.gl, MIT license\nconst RADIANS_TO_DEGREES = (1 / Math.PI) * 180;\nconst DEGREES_TO_RADIANS = (1 / 180) * Math.PI;\nconst DEFAULT_CONFIG = {\n EPSILON: 1e-12,\n debug: false,\n precision: 4,\n printTypes: false,\n printDegrees: false,\n printRowMajor: true,\n _cartographicRadians: false\n};\n// Configuration is truly global as of v3.6 to ensure single config even if multiple copies of math.gl\n// Multiple copies of config can be quite tricky to debug...\nglobalThis.mathgl = globalThis.mathgl || { config: { ...DEFAULT_CONFIG } };\nexport const config = globalThis.mathgl.config;\nexport function configure(options) {\n // Only copy existing keys\n Object.assign(config, options);\n return config;\n}\n/**\n * Formats a value into a string\n * @param value\n * @param param1\n * @returns\n */\nexport function formatValue(value, { precision = config.precision } = {}) {\n value = round(value);\n // get rid of trailing zeros\n return `${parseFloat(value.toPrecision(precision))}`;\n}\n/**\n * Check if value is an \"array\"\n * Returns `true` if value is either an array or a typed array\n * Note: returns `false` for `ArrayBuffer` and `DataView` instances\n * @note isTypedArray and isNumericArray are often more useful in TypeScript\n */\nexport function isArray(value) {\n return Array.isArray(value) || (ArrayBuffer.isView(value) && !(value instanceof DataView));\n}\nexport function clone(array) {\n return 'clone' in array ? array.clone() : array.slice();\n}\nexport function toRadians(degrees) {\n return radians(degrees);\n}\nexport function toDegrees(radians) {\n return degrees(radians);\n}\nexport function radians(degrees, result) {\n return map(degrees, (degrees) => degrees * DEGREES_TO_RADIANS, result);\n}\nexport function degrees(radians, result) {\n return map(radians, (radians) => radians * RADIANS_TO_DEGREES, result);\n}\n/**\n * \"GLSL equivalent\" of `Math.sin`: Works on single values and vectors\n * @deprecated\n */\nexport function sin(radians, result) {\n return map(radians, (angle) => Math.sin(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.cos`: Works on single values and vectors\n * @deprecated\n */\nexport function cos(radians, result) {\n return map(radians, (angle) => Math.cos(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.tan`: Works on single values and vectors\n * @deprecated\n */\nexport function tan(radians, result) {\n return map(radians, (angle) => Math.tan(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.asin`: Works on single values and vectors\n * @deprecated\n */\nexport function asin(radians, result) {\n return map(radians, (angle) => Math.asin(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.acos`: Works on single values and vectors\n * @deprecated\n */\nexport function acos(radians, result) {\n return map(radians, (angle) => Math.acos(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.atan`: Works on single values and vectors\n * @deprecated\n */\nexport function atan(radians, result) {\n return map(radians, (angle) => Math.atan(angle), result);\n}\nexport function clamp(value, min, max) {\n return map(value, (value) => Math.max(min, Math.min(max, value)));\n}\nexport function lerp(a, b, t) {\n if (isArray(a)) {\n return a.map((ai, i) => lerp(ai, b[i], t));\n }\n return t * b + (1 - t) * a;\n}\n/* eslint-disable */\n/**\n * Compares any two math objects, using `equals` method if available.\n * @param a\n * @param b\n * @param epsilon\n * @returns\n */\nexport function equals(a, b, epsilon) {\n const oldEpsilon = config.EPSILON;\n if (epsilon) {\n config.EPSILON = epsilon;\n }\n try {\n if (a === b) {\n return true;\n }\n if (isArray(a) && isArray(b)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; ++i) {\n // eslint-disable-next-line max-depth\n if (!equals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n if (a && a.equals) {\n return a.equals(b);\n }\n if (b && b.equals) {\n return b.equals(a);\n }\n if (typeof a === 'number' && typeof b === 'number') {\n return Math.abs(a - b) <= config.EPSILON * Math.max(1, Math.abs(a), Math.abs(b));\n }\n return false;\n }\n finally {\n config.EPSILON = oldEpsilon;\n }\n}\nexport function exactEquals(a, b) {\n if (a === b) {\n return true;\n }\n if (a && typeof a === 'object' && b && typeof b === 'object') {\n if (a.constructor !== b.constructor) {\n return false;\n }\n if (a.exactEquals) {\n return a.exactEquals(b);\n }\n }\n if (isArray(a) && isArray(b)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; ++i) {\n if (!exactEquals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n return false;\n}\n/* eslint-enable */\nexport function withEpsilon(epsilon, func) {\n const oldPrecision = config.EPSILON;\n config.EPSILON = epsilon;\n let value;\n try {\n value = func();\n }\n finally {\n config.EPSILON = oldPrecision;\n }\n return value;\n}\n// HELPERS\nfunction round(value) {\n return Math.round(value / config.EPSILON) * config.EPSILON;\n}\n// If the array has a clone function, calls it, otherwise returns a copy\nfunction duplicateArray(array) {\n // @ts-expect-error We check for math.gl class methods\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return array.clone ? array.clone() : new Array(array.length);\n}\n// If the argument value is an array, applies the func element wise,\n// otherwise applies func to the argument value\nfunction map(value, func, result) {\n if (isArray(value)) {\n const array = value;\n result = result || duplicateArray(array);\n for (let i = 0; i < result.length && i < array.length; ++i) {\n const val = typeof value === 'number' ? value : value[i];\n result[i] = func(val, i, result);\n }\n return result;\n }\n return func(value);\n}\n", "import { config, formatValue, equals, isArray } from \"../../lib/common.js\";\n/** Base class for vectors and matrices */\nexport class MathArray extends Array {\n // Common methods\n /**\n * Clone the current object\n * @returns a new copy of this object\n */\n clone() {\n // @ts-expect-error TS2351: Cannot use 'new' with an expression whose type lacks a call or construct signature.\n return new this.constructor().copy(this); // eslint-disable-line\n }\n fromArray(array, offset = 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = array[i + offset];\n }\n return this.check();\n }\n toArray(targetArray = [], offset = 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n targetArray[offset + i] = this[i];\n }\n return targetArray;\n }\n toObject(targetObject) {\n return targetObject;\n }\n from(arrayOrObject) {\n return Array.isArray(arrayOrObject)\n ? this.copy(arrayOrObject)\n : // @ts-ignore\n this.fromObject(arrayOrObject);\n }\n to(arrayOrObject) {\n // @ts-ignore\n if (arrayOrObject === this) {\n return this;\n }\n // @ts-expect-error TS2339: Property 'toObject' does not exist on type 'MathArray'.\n return isArray(arrayOrObject) ? this.toArray(arrayOrObject) : this.toObject(arrayOrObject);\n }\n toTarget(target) {\n return target ? this.to(target) : this;\n }\n /** @deprecated */\n toFloat32Array() {\n return new Float32Array(this);\n }\n toString() {\n return this.formatString(config);\n }\n /** Formats string according to options */\n formatString(opts) {\n let string = '';\n for (let i = 0; i < this.ELEMENTS; ++i) {\n string += (i > 0 ? ', ' : '') + formatValue(this[i], opts);\n }\n return `${opts.printTypes ? this.constructor.name : ''}[${string}]`;\n }\n equals(array) {\n if (!array || this.length !== array.length) {\n return false;\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n if (!equals(this[i], array[i])) {\n return false;\n }\n }\n return true;\n }\n exactEquals(array) {\n if (!array || this.length !== array.length) {\n return false;\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n if (this[i] !== array[i]) {\n return false;\n }\n }\n return true;\n }\n // Modifiers\n /** Negates all values in this object */\n negate() {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = -this[i];\n }\n return this.check();\n }\n lerp(a, b, t) {\n if (t === undefined) {\n return this.lerp(this, a, b);\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n const ai = a[i];\n const endValue = typeof b === 'number' ? b : b[i];\n this[i] = ai + t * (endValue - ai);\n }\n return this.check();\n }\n /** Minimal */\n min(vector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(vector[i], this[i]);\n }\n return this.check();\n }\n /** Maximal */\n max(vector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.max(vector[i], this[i]);\n }\n return this.check();\n }\n clamp(minVector, maxVector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(Math.max(this[i], minVector[i]), maxVector[i]);\n }\n return this.check();\n }\n add(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] += vector[i];\n }\n }\n return this.check();\n }\n subtract(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] -= vector[i];\n }\n }\n return this.check();\n }\n scale(scale) {\n if (typeof scale === 'number') {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scale;\n }\n }\n else {\n for (let i = 0; i < this.ELEMENTS && i < scale.length; ++i) {\n this[i] *= scale[i];\n }\n }\n return this.check();\n }\n /**\n * Multiplies all elements by `scale`\n * Note: `Matrix4.multiplyByScalar` only scales its 3x3 \"minor\"\n */\n multiplyByScalar(scalar) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scalar;\n }\n return this.check();\n }\n // Debug checks\n /** Throws an error if array length is incorrect or contains illegal values */\n check() {\n if (config.debug && !this.validate()) {\n throw new Error(`math.gl: ${this.constructor.name} some fields set to invalid numbers'`);\n }\n return this;\n }\n /** Returns false if the array length is incorrect or contains illegal values */\n validate() {\n let valid = this.length === this.ELEMENTS;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n valid = valid && Number.isFinite(this[i]);\n }\n return valid;\n }\n // three.js compatibility\n /** @deprecated */\n sub(a) {\n return this.subtract(a);\n }\n /** @deprecated */\n setScalar(a) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = a;\n }\n return this.check();\n }\n /** @deprecated */\n addScalar(a) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] += a;\n }\n return this.check();\n }\n /** @deprecated */\n subScalar(a) {\n return this.addScalar(-a);\n }\n /** @deprecated */\n multiplyScalar(scalar) {\n // Multiplies all elements\n // `Matrix4.scale` only scales its 3x3 \"minor\"\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scalar;\n }\n return this.check();\n }\n /** @deprecated */\n divideScalar(a) {\n return this.multiplyByScalar(1 / a);\n }\n /** @deprecated */\n clampScalar(min, max) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(Math.max(this[i], min), max);\n }\n return this.check();\n }\n /** @deprecated */\n get elements() {\n return this;\n }\n}\n", "import { config } from \"./common.js\";\nexport function validateVector(v, length) {\n if (v.length !== length) {\n return false;\n }\n // Could be arguments \"array\" (v.every not availasble)\n for (let i = 0; i < v.length; ++i) {\n if (!Number.isFinite(v[i])) {\n return false;\n }\n }\n return true;\n}\nexport function checkNumber(value) {\n if (!Number.isFinite(value)) {\n throw new Error(`Invalid number ${JSON.stringify(value)}`);\n }\n return value;\n}\nexport function checkVector(v, length, callerName = '') {\n if (config.debug && !validateVector(v, length)) {\n throw new Error(`math.gl: ${callerName} some fields set to invalid numbers'`);\n }\n return v;\n}\nconst map = {};\nexport function deprecated(method, version) {\n if (!map[method]) {\n map[method] = true;\n // eslint-disable-next-line\n console.warn(`${method} has been removed in version ${version}, see upgrade guide for more information`);\n }\n}\n", "export function assert(condition, message) {\n if (!condition) {\n throw new Error(`math.gl assertion ${message}`);\n }\n}\n", "import { MathArray } from \"./math-array.js\";\nimport { checkNumber } from \"../../lib/validators.js\";\nimport { assert } from \"../../lib/assert.js\";\n/** Base class for vectors with at least 2 elements */\nexport class Vector extends MathArray {\n // ACCESSORS\n get x() {\n return this[0];\n }\n set x(value) {\n this[0] = checkNumber(value);\n }\n get y() {\n return this[1];\n }\n set y(value) {\n this[1] = checkNumber(value);\n }\n /**\n * Returns the length of the vector from the origin to the point described by this vector\n *\n * @note `length` is a reserved word for Arrays, so `v.length()` will return number of elements\n * Instead we provide `len` and `magnitude`\n */\n len() {\n return Math.sqrt(this.lengthSquared());\n }\n /**\n * Returns the length of the vector from the origin to the point described by this vector\n */\n magnitude() {\n return this.len();\n }\n /**\n * Returns the squared length of the vector from the origin to the point described by this vector\n */\n lengthSquared() {\n let length = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n length += this[i] * this[i];\n }\n return length;\n }\n /**\n * Returns the squared length of the vector from the origin to the point described by this vector\n */\n magnitudeSquared() {\n return this.lengthSquared();\n }\n distance(mathArray) {\n return Math.sqrt(this.distanceSquared(mathArray));\n }\n distanceSquared(mathArray) {\n let length = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n const dist = this[i] - mathArray[i];\n length += dist * dist;\n }\n return checkNumber(length);\n }\n dot(mathArray) {\n let product = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n product += this[i] * mathArray[i];\n }\n return checkNumber(product);\n }\n // MODIFIERS\n normalize() {\n const length = this.magnitude();\n if (length !== 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] /= length;\n }\n }\n return this.check();\n }\n multiply(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= vector[i];\n }\n }\n return this.check();\n }\n divide(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] /= vector[i];\n }\n }\n return this.check();\n }\n // THREE.js compatibility\n lengthSq() {\n return this.lengthSquared();\n }\n distanceTo(vector) {\n return this.distance(vector);\n }\n distanceToSquared(vector) {\n return this.distanceSquared(vector);\n }\n getComponent(i) {\n assert(i >= 0 && i < this.ELEMENTS, 'index is out of range');\n return checkNumber(this[i]);\n }\n setComponent(i, value) {\n assert(i >= 0 && i < this.ELEMENTS, 'index is out of range');\n this[i] = value;\n return this.check();\n }\n addVectors(a, b) {\n return this.copy(a).add(b);\n }\n subVectors(a, b) {\n return this.copy(a).subtract(b);\n }\n multiplyVectors(a, b) {\n return this.copy(a).multiply(b);\n }\n addScaledVector(a, b) {\n // @ts-expect-error error TS2351: Cannot use 'new' with an expression whose type lacks a call or construct signature.\n return this.add(new this.constructor(a).multiplyScalar(b));\n }\n}\n", "// @eslint-disable\n// @ts-nocheck\n/**\n * Common utilities\n * @module glMatrix\n */\n// Configuration Constants\nexport const EPSILON = 0.000001;\nexport let ARRAY_TYPE = typeof Float32Array !== 'undefined' ? Float32Array : Array;\nexport const RANDOM = Math.random;\nexport const ANGLE_ORDER = 'zyx';\n/**\n * Symmetric round\n * see https://www.npmjs.com/package/round-half-up-symmetric#user-content-detailed-background\n *\n * @param {Number} a value to round\n */\nexport function round(a) {\n if (a >= 0)\n return Math.round(a);\n return a % 0.5 === 0 ? Math.floor(a) : Math.round(a);\n}\n/**\n * Sets the type of array used when creating new vectors and matrices\n *\n * @param {Float32ArrayConstructor | ArrayConstructor} type Array type, such as Float32Array or Array\n */\nexport function setMatrixArrayType(type) {\n ARRAY_TYPE = type;\n}\nconst degree = Math.PI / 180;\n/**\n * Convert Degree To Radian\n *\n * @param {Number} a Angle in Degrees\n */\nexport function toRadian(a) {\n return a * degree;\n}\n/**\n * Tests whether or not the arguments have approximately the same value, within an absolute\n * or relative tolerance of glMatrix.EPSILON (an absolute tolerance is used for values less\n * than or equal to 1.0, and a relative tolerance is used for larger values)\n *\n * @param {Number} a The first number to test.\n * @param {Number} b The second number to test.\n * @returns {Boolean} True if the numbers are approximately equal, false otherwise.\n */\nexport function equals(a, b) {\n return Math.abs(a - b) <= EPSILON * Math.max(1.0, Math.abs(a), Math.abs(b));\n}\n", "// @eslint-disable\n// @ts-nocheck\nimport * as glMatrix from './common.js';\n/**\n * 2 Dimensional Vector\n * @module vec2\n */\n/**\n * Creates a new, empty vec2\n *\n * @returns {NumericArray} a new 2D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(2);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n }\n return out;\n}\n/**\n * Creates a new vec2 initialized with values from an existing vector\n *\n * @param {Readonly} a vector to clone\n * @returns {NumericArray} a new 2D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n/**\n * Creates a new vec2 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} a new 2D vector\n */\nexport function fromValues(x, y) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = x;\n out[1] = y;\n return out;\n}\n/**\n * Copy the values from one vec2 to another\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the source vector\n * @returns {NumericArray} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n/**\n * Set the components of a vec2 to the given values\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} out\n */\nexport function set(out, x, y) {\n out[0] = x;\n out[1] = y;\n return out;\n}\n/**\n * Adds two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n return out;\n}\n/**\n * Subtracts vector b from vector a\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n return out;\n}\n/**\n * Multiplies two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n return out;\n}\n/**\n * Divides two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n return out;\n}\n/**\n * Math.ceil the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to ceil\n * @returns {NumericArray} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n return out;\n}\n/**\n * Math.floor the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to floor\n * @returns {NumericArray} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n return out;\n}\n/**\n * Returns the minimum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n return out;\n}\n/**\n * Returns the maximum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n return out;\n}\n/**\n * symmetric round the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to round\n * @returns {NumericArray} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n return out;\n}\n/**\n * Scales a vec2 by a scalar number\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {NumericArray} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n return out;\n}\n/**\n * Adds two vec2's after scaling the second operand by a scalar value\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {NumericArray} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n return out;\n}\n/**\n * Calculates the euclidian distance between two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return Math.sqrt(x * x + y * y);\n}\n/**\n * Calculates the squared euclidian distance between two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return x * x + y * y;\n}\n/**\n * Calculates the length of a vec2\n *\n * @param {Readonly} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n return Math.sqrt(x * x + y * y);\n}\n/**\n * Calculates the squared length of a vec2\n *\n * @param {Readonly} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n return x * x + y * y;\n}\n/**\n * Negates the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to negate\n * @returns {NumericArray} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n return out;\n}\n/**\n * Returns the inverse of the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to invert\n * @returns {NumericArray} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n return out;\n}\n/**\n * Normalize a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to normalize\n * @returns {NumericArray} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n let len = x * x + y * y;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n return out;\n}\n/**\n * Calculates the dot product of two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1];\n}\n/**\n * Computes the cross product of two vec2's\n * Note that the cross product must by definition produce a 3D vector\n *\n * @param {vec3} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const z = a[0] * b[1] - a[1] * b[0];\n out[0] = out[1] = 0;\n out[2] = z;\n return out;\n}\n/**\n * Performs a linear interpolation between two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {NumericArray} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n return out;\n}\n/**\n * Generates a random vector with the given scale\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {NumericArray} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n out[0] = Math.cos(r) * scale;\n out[1] = Math.sin(r) * scale;\n return out;\n}\n/**\n * Transforms the vec2 with a mat2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat2} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n return out;\n}\n/**\n * Transforms the vec2 with a mat2d\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat2d} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2d(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y + m[4];\n out[1] = m[1] * x + m[3] * y + m[5];\n return out;\n}\n/**\n * Transforms the vec2 with a mat3\n * 3rd vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat3} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[3] * y + m[6];\n out[1] = m[1] * x + m[4] * y + m[7];\n return out;\n}\n/**\n * Transforms the vec2 with a mat4\n * 3rd vector component is implicitly '0'\n * 4th vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[4] * y + m[12];\n out[1] = m[1] * x + m[5] * y + m[13];\n return out;\n}\n/**\n * Rotate a 2D vector\n * @param {NumericArray} out The receiving vec2\n * @param {Readonly} a The vec2 point to rotate\n * @param {Readonly} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {NumericArray} out\n */\nexport function rotate(out, a, b, rad) {\n // Translate point to the origin\n const p0 = a[0] - b[0];\n const p1 = a[1] - b[1];\n const sinC = Math.sin(rad);\n const cosC = Math.cos(rad);\n // perform rotation and translate to correct position\n out[0] = p0 * cosC - p1 * sinC + b[0];\n out[1] = p0 * sinC + p1 * cosC + b[1];\n return out;\n}\n/**\n * Get the angle between two 2D vectors\n * @param {Readonly} a The first operand\n * @param {Readonly} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const x1 = a[0];\n const y1 = a[1];\n const x2 = b[0];\n const y2 = b[1];\n // mag is the product of the magnitudes of a and b\n const mag = Math.sqrt((x1 * x1 + y1 * y1) * (x2 * x2 + y2 * y2));\n // mag &&.. short circuits if mag == 0\n const cosine = mag && (x1 * x2 + y1 * y2) / mag;\n // Math.min(Math.max(cosine, -1), 1) clamps the cosine between -1 and 1\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n/**\n * Set the components of a vec2 to zero\n *\n * @param {NumericArray} out the receiving vector\n * @returns {NumericArray} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n return out;\n}\n/**\n * Returns a string representation of a vector\n *\n * @param {Readonly} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec2(${a[0]}, ${a[1]})`;\n}\n/**\n * Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)\n *\n * @param {Readonly} a The first vector.\n * @param {Readonly} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1];\n}\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {Readonly} a The first vector.\n * @param {Readonly} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const b0 = b[0];\n const b1 = b[1];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)));\n}\n/**\n * Alias for {@link vec2.length}\n * @function\n */\nexport const len = length;\n/**\n * Alias for {@link vec2.subtract}\n * @function\n */\nexport const sub = subtract;\n/**\n * Alias for {@link vec2.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link vec2.divide}\n * @function\n */\nexport const div = divide;\n/**\n * Alias for {@link vec2.distance}\n * @function\n */\nexport const dist = distance;\n/**\n * Alias for {@link vec2.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n/**\n * Alias for {@link vec2.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n/**\n * Perform some operation over an array of vec2s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec2. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec2s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 2;\n }\n if (!offset) {\n offset = 0;\n }\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n }\n else {\n l = a.length;\n }\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n }\n return a;\n };\n})();\n", "// vec2 additions\nexport function vec2_transformMat4AsVector(out, a, m) {\n const x = a[0];\n const y = a[1];\n const w = m[3] * x + m[7] * y || 1.0;\n out[0] = (m[0] * x + m[4] * y) / w;\n out[1] = (m[1] * x + m[5] * y) / w;\n return out;\n}\n// vec3 additions\n// Transform as vector, only uses 3x3 minor matrix\nexport function vec3_transformMat4AsVector(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n const w = m[3] * x + m[7] * y + m[11] * z || 1.0;\n out[0] = (m[0] * x + m[4] * y + m[8] * z) / w;\n out[1] = (m[1] * x + m[5] * y + m[9] * z) / w;\n out[2] = (m[2] * x + m[6] * y + m[10] * z) / w;\n return out;\n}\nexport function vec3_transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n out[2] = a[2];\n return out;\n}\n// vec4 additions\nexport function vec4_transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n out[2] = a[2];\n out[3] = a[3];\n return out;\n}\nexport function vec4_transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n out[0] = m[0] * x + m[3] * y + m[6] * z;\n out[1] = m[1] * x + m[4] * y + m[7] * z;\n out[2] = m[2] * x + m[5] * y + m[8] * z;\n out[3] = a[3];\n return out;\n}\n", "// @eslint-disable\n// @ts-nocheck\nimport * as glMatrix from './common.js';\n/**\n * 3 Dimensional Vector\n * @module vec3\n */\n/**\n * Creates a new, empty vec3\n *\n * @returns {vec3} a new 3D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(3);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n out[2] = 0;\n }\n return out;\n}\n/**\n * Creates a new vec3 initialized with values from an existing vector\n *\n * @param {ReadonlyVec3} a vector to clone\n * @returns {vec3} a new 3D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(3);\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n return out;\n}\n/**\n * Calculates the length of a vec3\n *\n * @param {ReadonlyVec3} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n return Math.sqrt(x * x + y * y + z * z);\n}\n/**\n * Creates a new vec3 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @param {Number} z Z component\n * @returns {vec3} a new 3D vector\n */\nexport function fromValues(x, y, z) {\n const out = new glMatrix.ARRAY_TYPE(3);\n out[0] = x;\n out[1] = y;\n out[2] = z;\n return out;\n}\n/**\n * Copy the values from one vec3 to another\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the source vector\n * @returns {vec3} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n return out;\n}\n/**\n * Set the components of a vec3 to the given values\n *\n * @param {vec3} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @param {Number} z Z component\n * @returns {vec3} out\n */\nexport function set(out, x, y, z) {\n out[0] = x;\n out[1] = y;\n out[2] = z;\n return out;\n}\n/**\n * Adds two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n out[2] = a[2] + b[2];\n return out;\n}\n/**\n * Subtracts vector b from vector a\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n out[2] = a[2] - b[2];\n return out;\n}\n/**\n * Multiplies two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n out[2] = a[2] * b[2];\n return out;\n}\n/**\n * Divides two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n out[2] = a[2] / b[2];\n return out;\n}\n/**\n * Math.ceil the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to ceil\n * @returns {vec3} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n out[2] = Math.ceil(a[2]);\n return out;\n}\n/**\n * Math.floor the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to floor\n * @returns {vec3} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n out[2] = Math.floor(a[2]);\n return out;\n}\n/**\n * Returns the minimum of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n out[2] = Math.min(a[2], b[2]);\n return out;\n}\n/**\n * Returns the maximum of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n out[2] = Math.max(a[2], b[2]);\n return out;\n}\n/**\n * symmetric round the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to round\n * @returns {vec3} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n out[2] = glMatrix.round(a[2]);\n return out;\n}\n/**\n * Scales a vec3 by a scalar number\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {vec3} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n out[2] = a[2] * b;\n return out;\n}\n/**\n * Adds two vec3's after scaling the second operand by a scalar value\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {vec3} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n out[2] = a[2] + b[2] * scale;\n return out;\n}\n/**\n * Calculates the euclidian distance between two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n const z = b[2] - a[2];\n return Math.sqrt(x * x + y * y + z * z);\n}\n/**\n * Calculates the squared euclidian distance between two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n const z = b[2] - a[2];\n return x * x + y * y + z * z;\n}\n/**\n * Calculates the squared length of a vec3\n *\n * @param {ReadonlyVec3} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n return x * x + y * y + z * z;\n}\n/**\n * Negates the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to negate\n * @returns {vec3} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n out[2] = -a[2];\n return out;\n}\n/**\n * Returns the inverse of the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to invert\n * @returns {vec3} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n out[2] = 1.0 / a[2];\n return out;\n}\n/**\n * Normalize a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to normalize\n * @returns {vec3} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n let len = x * x + y * y + z * z;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n out[2] = a[2] * len;\n return out;\n}\n/**\n * Calculates the dot product of two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1] + a[2] * b[2];\n}\n/**\n * Computes the cross product of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n const bx = b[0];\n const by = b[1];\n const bz = b[2];\n out[0] = ay * bz - az * by;\n out[1] = az * bx - ax * bz;\n out[2] = ax * by - ay * bx;\n return out;\n}\n/**\n * Performs a linear interpolation between two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n out[2] = az + t * (b[2] - az);\n return out;\n}\n/**\n * Performs a spherical linear interpolation between two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function slerp(out, a, b, t) {\n const angle = Math.acos(Math.min(Math.max(dot(a, b), -1), 1));\n const sinTotal = Math.sin(angle);\n const ratioA = Math.sin((1 - t) * angle) / sinTotal;\n const ratioB = Math.sin(t * angle) / sinTotal;\n out[0] = ratioA * a[0] + ratioB * b[0];\n out[1] = ratioA * a[1] + ratioB * b[1];\n out[2] = ratioA * a[2] + ratioB * b[2];\n return out;\n}\n/**\n * Performs a hermite interpolation with two control points\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {ReadonlyVec3} c the third operand\n * @param {ReadonlyVec3} d the fourth operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function hermite(out, a, b, c, d, t) {\n const factorTimes2 = t * t;\n const factor1 = factorTimes2 * (2 * t - 3) + 1;\n const factor2 = factorTimes2 * (t - 2) + t;\n const factor3 = factorTimes2 * (t - 1);\n const factor4 = factorTimes2 * (3 - 2 * t);\n out[0] = a[0] * factor1 + b[0] * factor2 + c[0] * factor3 + d[0] * factor4;\n out[1] = a[1] * factor1 + b[1] * factor2 + c[1] * factor3 + d[1] * factor4;\n out[2] = a[2] * factor1 + b[2] * factor2 + c[2] * factor3 + d[2] * factor4;\n return out;\n}\n/**\n * Performs a bezier interpolation with two control points\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {ReadonlyVec3} c the third operand\n * @param {ReadonlyVec3} d the fourth operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function bezier(out, a, b, c, d, t) {\n const inverseFactor = 1 - t;\n const inverseFactorTimesTwo = inverseFactor * inverseFactor;\n const factorTimes2 = t * t;\n const factor1 = inverseFactorTimesTwo * inverseFactor;\n const factor2 = 3 * t * inverseFactorTimesTwo;\n const factor3 = 3 * factorTimes2 * inverseFactor;\n const factor4 = factorTimes2 * t;\n out[0] = a[0] * factor1 + b[0] * factor2 + c[0] * factor3 + d[0] * factor4;\n out[1] = a[1] * factor1 + b[1] * factor2 + c[1] * factor3 + d[1] * factor4;\n out[2] = a[2] * factor1 + b[2] * factor2 + c[2] * factor3 + d[2] * factor4;\n return out;\n}\n/**\n * Generates a random vector with the given scale\n *\n * @param {vec3} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {vec3} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n const z = glMatrix.RANDOM() * 2.0 - 1.0;\n const zScale = Math.sqrt(1.0 - z * z) * scale;\n out[0] = Math.cos(r) * zScale;\n out[1] = Math.sin(r) * zScale;\n out[2] = z * scale;\n return out;\n}\n/**\n * Transforms the vec3 with a mat4.\n * 4th vector component is implicitly '1'\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {vec3} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n let w = m[3] * x + m[7] * y + m[11] * z + m[15];\n w = w || 1.0;\n out[0] = (m[0] * x + m[4] * y + m[8] * z + m[12]) / w;\n out[1] = (m[1] * x + m[5] * y + m[9] * z + m[13]) / w;\n out[2] = (m[2] * x + m[6] * y + m[10] * z + m[14]) / w;\n return out;\n}\n/**\n * Transforms the vec3 with a mat3.\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyMat3} m the 3x3 matrix to transform with\n * @returns {vec3} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n out[0] = x * m[0] + y * m[3] + z * m[6];\n out[1] = x * m[1] + y * m[4] + z * m[7];\n out[2] = x * m[2] + y * m[5] + z * m[8];\n return out;\n}\n/**\n * Transforms the vec3 with a quat\n * Can also be used for dual quaternions. (Multiply it with the real part)\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyQuat} q quaternion to transform with\n * @returns {vec3} out\n */\nexport function transformQuat(out, a, q) {\n // benchmarks: https://jsperf.com/quaternion-transform-vec3-implementations-fixed\n const qx = q[0];\n const qy = q[1];\n const qz = q[2];\n const qw = q[3];\n const x = a[0];\n const y = a[1];\n const z = a[2];\n // var qvec = [qx, qy, qz];\n // var uv = vec3.cross([], qvec, a);\n let uvx = qy * z - qz * y;\n let uvy = qz * x - qx * z;\n let uvz = qx * y - qy * x;\n // var uuv = vec3.cross([], qvec, uv);\n let uuvx = qy * uvz - qz * uvy;\n let uuvy = qz * uvx - qx * uvz;\n let uuvz = qx * uvy - qy * uvx;\n // vec3.scale(uv, uv, 2 * w);\n const w2 = qw * 2;\n uvx *= w2;\n uvy *= w2;\n uvz *= w2;\n // vec3.scale(uuv, uuv, 2);\n uuvx *= 2;\n uuvy *= 2;\n uuvz *= 2;\n // return vec3.add(out, a, vec3.add(out, uv, uuv));\n out[0] = x + uvx + uuvx;\n out[1] = y + uvy + uuvy;\n out[2] = z + uvz + uuvz;\n return out;\n}\n/**\n * Rotate a 3D vector around the x-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateX(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[0];\n r[1] = p[1] * Math.cos(rad) - p[2] * Math.sin(rad);\n r[2] = p[1] * Math.sin(rad) + p[2] * Math.cos(rad);\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Rotate a 3D vector around the y-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateY(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[2] * Math.sin(rad) + p[0] * Math.cos(rad);\n r[1] = p[1];\n r[2] = p[2] * Math.cos(rad) - p[0] * Math.sin(rad);\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Rotate a 3D vector around the z-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateZ(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[0] * Math.cos(rad) - p[1] * Math.sin(rad);\n r[1] = p[0] * Math.sin(rad) + p[1] * Math.cos(rad);\n r[2] = p[2];\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Get the angle between two 3D vectors\n * @param {ReadonlyVec3} a The first operand\n * @param {ReadonlyVec3} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n const bx = b[0];\n const by = b[1];\n const bz = b[2];\n const mag = Math.sqrt((ax * ax + ay * ay + az * az) * (bx * bx + by * by + bz * bz));\n const cosine = mag && dot(a, b) / mag;\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n/**\n * Set the components of a vec3 to zero\n *\n * @param {vec3} out the receiving vector\n * @returns {vec3} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n out[2] = 0.0;\n return out;\n}\n/**\n * Returns a string representation of a vector\n *\n * @param {ReadonlyVec3} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec3(${a[0]}, ${a[1]}, ${a[2]})`;\n}\n/**\n * Returns whether or not the vectors have exactly the same elements in the same position (when compared with ===)\n *\n * @param {ReadonlyVec3} a The first vector.\n * @param {ReadonlyVec3} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1] && a[2] === b[2];\n}\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {ReadonlyVec3} a The first vector.\n * @param {ReadonlyVec3} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const a2 = a[2];\n const b0 = b[0];\n const b1 = b[1];\n const b2 = b[2];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)) &&\n Math.abs(a2 - b2) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a2), Math.abs(b2)));\n}\n/**\n * Alias for {@link vec3.subtract}\n * @function\n */\nexport const sub = subtract;\n/**\n * Alias for {@link vec3.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link vec3.divide}\n * @function\n */\nexport const div = divide;\n/**\n * Alias for {@link vec3.distance}\n * @function\n */\nexport const dist = distance;\n/**\n * Alias for {@link vec3.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n/**\n * Alias for {@link vec3.length}\n * @function\n */\nexport const len = length;\n/**\n * Alias for {@link vec3.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n/**\n * Perform some operation over an array of vec3s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec3. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec3s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 3;\n }\n if (!offset) {\n offset = 0;\n }\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n }\n else {\n l = a.length;\n }\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n vec[2] = a[i + 2];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n a[i + 2] = vec[2];\n }\n return a;\n };\n})();\n", "import { Vector } from \"./base/vector.js\";\nimport { config, isArray } from \"../lib/common.js\";\nimport { checkNumber } from \"../lib/validators.js\";\n// @ts-ignore gl-matrix types\nimport { angle as vec3_angle, cross as vec3_cross, rotateX as vec3_rotateX, rotateY as vec3_rotateY, rotateZ as vec3_rotateZ, transformMat4 as vec3_transformMat4, transformMat3 as vec3_transformMat3, transformQuat as vec3_transformQuat } from \"../gl-matrix/vec3.js\";\n/* eslint-disable camelcase */\nimport { vec3_transformMat2, vec3_transformMat4AsVector } from \"../lib/gl-matrix-extras.js\";\nconst ORIGIN = [0, 0, 0];\nlet ZERO;\n/**\n * Three-element vector class.\n * Subclass of Array\n */\nexport class Vector3 extends Vector {\n static get ZERO() {\n if (!ZERO) {\n ZERO = new Vector3(0, 0, 0);\n Object.freeze(ZERO);\n }\n return ZERO;\n }\n /**\n * @class\n * @param x\n * @param y\n * @param z\n */\n constructor(x = 0, y = 0, z = 0) {\n // PERF NOTE: initialize elements as double precision numbers\n super(-0, -0, -0);\n if (arguments.length === 1 && isArray(x)) {\n this.copy(x);\n }\n else {\n // this.set(x, y, z);\n if (config.debug) {\n checkNumber(x);\n checkNumber(y);\n checkNumber(z);\n }\n // @ts-expect-error TS2412: Property '0' of type 'number | [number, number, number]' is not assignable to numeric index type 'number'\n this[0] = x;\n this[1] = y;\n this[2] = z;\n }\n }\n set(x, y, z) {\n this[0] = x;\n this[1] = y;\n this[2] = z;\n return this.check();\n }\n copy(array) {\n this[0] = array[0];\n this[1] = array[1];\n this[2] = array[2];\n return this.check();\n }\n fromObject(object) {\n if (config.debug) {\n checkNumber(object.x);\n checkNumber(object.y);\n checkNumber(object.z);\n }\n this[0] = object.x;\n this[1] = object.y;\n this[2] = object.z;\n return this.check();\n }\n toObject(object) {\n object.x = this[0];\n object.y = this[1];\n object.z = this[2];\n return object;\n }\n // Getters/setters\n get ELEMENTS() {\n return 3;\n }\n get z() {\n return this[2];\n }\n set z(value) {\n this[2] = checkNumber(value);\n }\n // ACCESSORS\n angle(vector) {\n return vec3_angle(this, vector);\n }\n // MODIFIERS\n cross(vector) {\n vec3_cross(this, this, vector);\n return this.check();\n }\n rotateX({ radians, origin = ORIGIN }) {\n vec3_rotateX(this, this, origin, radians);\n return this.check();\n }\n rotateY({ radians, origin = ORIGIN }) {\n vec3_rotateY(this, this, origin, radians);\n return this.check();\n }\n rotateZ({ radians, origin = ORIGIN }) {\n vec3_rotateZ(this, this, origin, radians);\n return this.check();\n }\n // Transforms\n // transforms as point (4th component is implicitly 1)\n transform(matrix4) {\n return this.transformAsPoint(matrix4);\n }\n // transforms as point (4th component is implicitly 1)\n transformAsPoint(matrix4) {\n vec3_transformMat4(this, this, matrix4);\n return this.check();\n }\n // transforms as vector (4th component is implicitly 0, ignores translation. slightly faster)\n transformAsVector(matrix4) {\n vec3_transformMat4AsVector(this, this, matrix4);\n return this.check();\n }\n transformByMatrix3(matrix3) {\n vec3_transformMat3(this, this, matrix3);\n return this.check();\n }\n transformByMatrix2(matrix2) {\n vec3_transformMat2(this, this, matrix2);\n return this.check();\n }\n transformByQuaternion(quaternion) {\n vec3_transformQuat(this, this, quaternion);\n return this.check();\n }\n}\n", "import { MathArray } from \"./math-array.js\";\nimport { checkNumber } from \"../../lib/validators.js\";\nimport { config } from \"../../lib/common.js\";\n/** Base class for matrices */\nexport class Matrix extends MathArray {\n // fromObject(object) {\n // const array = object.elements;\n // return this.fromRowMajor(array);\n // }\n // toObject(object) {\n // const array = object.elements;\n // this.toRowMajor(array);\n // return object;\n // }\n // TODO better override formatString?\n toString() {\n let string = '[';\n if (config.printRowMajor) {\n string += 'row-major:';\n for (let row = 0; row < this.RANK; ++row) {\n for (let col = 0; col < this.RANK; ++col) {\n string += ` ${this[col * this.RANK + row]}`;\n }\n }\n }\n else {\n string += 'column-major:';\n for (let i = 0; i < this.ELEMENTS; ++i) {\n string += ` ${this[i]}`;\n }\n }\n string += ']';\n return string;\n }\n getElementIndex(row, col) {\n return col * this.RANK + row;\n }\n // By default assumes row major indices\n getElement(row, col) {\n return this[col * this.RANK + row];\n }\n // By default assumes row major indices\n setElement(row, col, value) {\n this[col * this.RANK + row] = checkNumber(value);\n return this;\n }\n getColumn(columnIndex, result = new Array(this.RANK).fill(-0)) {\n const firstIndex = columnIndex * this.RANK;\n for (let i = 0; i < this.RANK; ++i) {\n result[i] = this[firstIndex + i];\n }\n return result;\n }\n setColumn(columnIndex, columnVector) {\n const firstIndex = columnIndex * this.RANK;\n for (let i = 0; i < this.RANK; ++i) {\n this[firstIndex + i] = columnVector[i];\n }\n return this;\n }\n}\n", "import * as glMatrix from './common.js';\n/**\n * 3x3 Matrix\n * @module mat3\n */\n/**\n * Creates a new identity mat3\n *\n * @returns {mat3} a new 3x3 matrix\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(9);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n }\n out[0] = 1;\n out[4] = 1;\n out[8] = 1;\n return out;\n}\n/**\n * Copies the upper-left 3x3 values into the given mat3.\n *\n * @param {mat3} out the receiving 3x3 matrix\n * @param {ReadonlyMat4} a the source 4x4 matrix\n * @returns {mat3} out\n */\nexport function fromMat4(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[4];\n out[4] = a[5];\n out[5] = a[6];\n out[6] = a[8];\n out[7] = a[9];\n out[8] = a[10];\n return out;\n}\n/**\n * Creates a new mat3 initialized with values from an existing matrix\n *\n * @param {ReadonlyMat3} a matrix to clone\n * @returns {mat3} a new 3x3 matrix\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(9);\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[3];\n out[4] = a[4];\n out[5] = a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Copy the values from one mat3 to another\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[3];\n out[4] = a[4];\n out[5] = a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Create a new mat3 with the given values\n *\n * @param {Number} m00 Component in column 0, row 0 position (index 0)\n * @param {Number} m01 Component in column 0, row 1 position (index 1)\n * @param {Number} m02 Component in column 0, row 2 position (index 2)\n * @param {Number} m10 Component in column 1, row 0 position (index 3)\n * @param {Number} m11 Component in column 1, row 1 position (index 4)\n * @param {Number} m12 Component in column 1, row 2 position (index 5)\n * @param {Number} m20 Component in column 2, row 0 position (index 6)\n * @param {Number} m21 Component in column 2, row 1 position (index 7)\n * @param {Number} m22 Component in column 2, row 2 position (index 8)\n * @returns {mat3} A new mat3\n */\nexport function fromValues(m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n const out = new glMatrix.ARRAY_TYPE(9);\n out[0] = m00;\n out[1] = m01;\n out[2] = m02;\n out[3] = m10;\n out[4] = m11;\n out[5] = m12;\n out[6] = m20;\n out[7] = m21;\n out[8] = m22;\n return out;\n}\n/**\n * Set the components of a mat3 to the given values\n *\n * @param {mat3} out the receiving matrix\n * @param {Number} m00 Component in column 0, row 0 position (index 0)\n * @param {Number} m01 Component in column 0, row 1 position (index 1)\n * @param {Number} m02 Component in column 0, row 2 position (index 2)\n * @param {Number} m10 Component in column 1, row 0 position (index 3)\n * @param {Number} m11 Component in column 1, row 1 position (index 4)\n * @param {Number} m12 Component in column 1, row 2 position (index 5)\n * @param {Number} m20 Component in column 2, row 0 position (index 6)\n * @param {Number} m21 Component in column 2, row 1 position (index 7)\n * @param {Number} m22 Component in column 2, row 2 position (index 8)\n * @returns {mat3} out\n */\nexport function set(out, m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n out[0] = m00;\n out[1] = m01;\n out[2] = m02;\n out[3] = m10;\n out[4] = m11;\n out[5] = m12;\n out[6] = m20;\n out[7] = m21;\n out[8] = m22;\n return out;\n}\n/**\n * Set a mat3 to the identity matrix\n *\n * @param {mat3} out the receiving matrix\n * @returns {mat3} out\n */\nexport function identity(out) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 1;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Transpose the values of a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function transpose(out, a) {\n // If we are transposing ourselves we can skip a few steps but have to cache some values\n if (out === a) {\n const a01 = a[1];\n const a02 = a[2];\n const a12 = a[5];\n out[1] = a[3];\n out[2] = a[6];\n out[3] = a01;\n out[5] = a[7];\n out[6] = a02;\n out[7] = a12;\n }\n else {\n out[0] = a[0];\n out[1] = a[3];\n out[2] = a[6];\n out[3] = a[1];\n out[4] = a[4];\n out[5] = a[7];\n out[6] = a[2];\n out[7] = a[5];\n out[8] = a[8];\n }\n return out;\n}\n/**\n * Inverts a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function invert(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const b01 = a22 * a11 - a12 * a21;\n const b11 = -a22 * a10 + a12 * a20;\n const b21 = a21 * a10 - a11 * a20;\n // Calculate the determinant\n let det = a00 * b01 + a01 * b11 + a02 * b21;\n if (!det) {\n return null;\n }\n det = 1.0 / det;\n out[0] = b01 * det;\n out[1] = (-a22 * a01 + a02 * a21) * det;\n out[2] = (a12 * a01 - a02 * a11) * det;\n out[3] = b11 * det;\n out[4] = (a22 * a00 - a02 * a20) * det;\n out[5] = (-a12 * a00 + a02 * a10) * det;\n out[6] = b21 * det;\n out[7] = (-a21 * a00 + a01 * a20) * det;\n out[8] = (a11 * a00 - a01 * a10) * det;\n return out;\n}\n/**\n * Calculates the adjugate of a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function adjoint(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n out[0] = a11 * a22 - a12 * a21;\n out[1] = a02 * a21 - a01 * a22;\n out[2] = a01 * a12 - a02 * a11;\n out[3] = a12 * a20 - a10 * a22;\n out[4] = a00 * a22 - a02 * a20;\n out[5] = a02 * a10 - a00 * a12;\n out[6] = a10 * a21 - a11 * a20;\n out[7] = a01 * a20 - a00 * a21;\n out[8] = a00 * a11 - a01 * a10;\n return out;\n}\n/**\n * Calculates the determinant of a mat3\n *\n * @param {ReadonlyMat3} a the source matrix\n * @returns {Number} determinant of a\n */\nexport function determinant(a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n return (a00 * (a22 * a11 - a12 * a21) + a01 * (-a22 * a10 + a12 * a20) + a02 * (a21 * a10 - a11 * a20));\n}\n/**\n * Multiplies two mat3's\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function multiply(out, a, b) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const b00 = b[0];\n const b01 = b[1];\n const b02 = b[2];\n const b10 = b[3];\n const b11 = b[4];\n const b12 = b[5];\n const b20 = b[6];\n const b21 = b[7];\n const b22 = b[8];\n out[0] = b00 * a00 + b01 * a10 + b02 * a20;\n out[1] = b00 * a01 + b01 * a11 + b02 * a21;\n out[2] = b00 * a02 + b01 * a12 + b02 * a22;\n out[3] = b10 * a00 + b11 * a10 + b12 * a20;\n out[4] = b10 * a01 + b11 * a11 + b12 * a21;\n out[5] = b10 * a02 + b11 * a12 + b12 * a22;\n out[6] = b20 * a00 + b21 * a10 + b22 * a20;\n out[7] = b20 * a01 + b21 * a11 + b22 * a21;\n out[8] = b20 * a02 + b21 * a12 + b22 * a22;\n return out;\n}\n/**\n * Translate a mat3 by the given vector\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to translate\n * @param {ReadonlyVec2} v vector to translate by\n * @returns {mat3} out\n */\nexport function translate(out, a, v) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const x = v[0];\n const y = v[1];\n out[0] = a00;\n out[1] = a01;\n out[2] = a02;\n out[3] = a10;\n out[4] = a11;\n out[5] = a12;\n out[6] = x * a00 + y * a10 + a20;\n out[7] = x * a01 + y * a11 + a21;\n out[8] = x * a02 + y * a12 + a22;\n return out;\n}\n/**\n * Rotates a mat3 by the given angle\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to rotate\n * @param {Number} rad the angle to rotate the matrix by\n * @returns {mat3} out\n */\nexport function rotate(out, a, rad) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const s = Math.sin(rad);\n const c = Math.cos(rad);\n out[0] = c * a00 + s * a10;\n out[1] = c * a01 + s * a11;\n out[2] = c * a02 + s * a12;\n out[3] = c * a10 - s * a00;\n out[4] = c * a11 - s * a01;\n out[5] = c * a12 - s * a02;\n out[6] = a20;\n out[7] = a21;\n out[8] = a22;\n return out;\n}\n/**\n * Scales the mat3 by the dimensions in the given vec2\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to scale\n * @param {ReadonlyVec2} v the vec2 to scale the matrix by\n * @returns {mat3} out\n **/\nexport function scale(out, a, v) {\n const x = v[0];\n const y = v[1];\n out[0] = x * a[0];\n out[1] = x * a[1];\n out[2] = x * a[2];\n out[3] = y * a[3];\n out[4] = y * a[4];\n out[5] = y * a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Creates a matrix from a vector translation\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.translate(dest, dest, vec);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyVec2} v Translation vector\n * @returns {mat3} out\n */\nexport function fromTranslation(out, v) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 1;\n out[5] = 0;\n out[6] = v[0];\n out[7] = v[1];\n out[8] = 1;\n return out;\n}\n/**\n * Creates a matrix from a given angle\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.rotate(dest, dest, rad);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {Number} rad the angle to rotate the matrix by\n * @returns {mat3} out\n */\nexport function fromRotation(out, rad) {\n const s = Math.sin(rad);\n const c = Math.cos(rad);\n out[0] = c;\n out[1] = s;\n out[2] = 0;\n out[3] = -s;\n out[4] = c;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Creates a matrix from a vector scaling\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.scale(dest, dest, vec);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyVec2} v Scaling vector\n * @returns {mat3} out\n */\nexport function fromScaling(out, v) {\n out[0] = v[0];\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = v[1];\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Copies the values from a mat2d into a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat2d} a the matrix to copy\n * @returns {mat3} out\n **/\nexport function fromMat2d(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = 0;\n out[3] = a[2];\n out[4] = a[3];\n out[5] = 0;\n out[6] = a[4];\n out[7] = a[5];\n out[8] = 1;\n return out;\n}\n/**\n * Calculates a 3x3 matrix from the given quaternion\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyQuat} q Quaternion to create matrix from\n *\n * @returns {mat3} out\n */\nexport function fromQuat(out, q) {\n const x = q[0];\n const y = q[1];\n const z = q[2];\n const w = q[3];\n const x2 = x + x;\n const y2 = y + y;\n const z2 = z + z;\n const xx = x * x2;\n const yx = y * x2;\n const yy = y * y2;\n const zx = z * x2;\n const zy = z * y2;\n const zz = z * z2;\n const wx = w * x2;\n const wy = w * y2;\n const wz = w * z2;\n out[0] = 1 - yy - zz;\n out[3] = yx - wz;\n out[6] = zx + wy;\n out[1] = yx + wz;\n out[4] = 1 - xx - zz;\n out[7] = zy - wx;\n out[2] = zx - wy;\n out[5] = zy + wx;\n out[8] = 1 - xx - yy;\n return out;\n}\n/**\n * Calculates a 3x3 normal matrix (transpose inverse) from the 4x4 matrix\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyMat4} a Mat4 to derive the normal matrix from\n *\n * @returns {mat3} out\n */\nexport function normalFromMat4(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a03 = a[3];\n const a10 = a[4];\n const a11 = a[5];\n const a12 = a[6];\n const a13 = a[7];\n const a20 = a[8];\n const a21 = a[9];\n const a22 = a[10];\n const a23 = a[11];\n const a30 = a[12];\n const a31 = a[13];\n const a32 = a[14];\n const a33 = a[15];\n const b00 = a00 * a11 - a01 * a10;\n const b01 = a00 * a12 - a02 * a10;\n const b02 = a00 * a13 - a03 * a10;\n const b03 = a01 * a12 - a02 * a11;\n const b04 = a01 * a13 - a03 * a11;\n const b05 = a02 * a13 - a03 * a12;\n const b06 = a20 * a31 - a21 * a30;\n const b07 = a20 * a32 - a22 * a30;\n const b08 = a20 * a33 - a23 * a30;\n const b09 = a21 * a32 - a22 * a31;\n const b10 = a21 * a33 - a23 * a31;\n const b11 = a22 * a33 - a23 * a32;\n // Calculate the determinant\n let det = b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;\n if (!det) {\n return null;\n }\n det = 1.0 / det;\n out[0] = (a11 * b11 - a12 * b10 + a13 * b09) * det;\n out[1] = (a12 * b08 - a10 * b11 - a13 * b07) * det;\n out[2] = (a10 * b10 - a11 * b08 + a13 * b06) * det;\n out[3] = (a02 * b10 - a01 * b11 - a03 * b09) * det;\n out[4] = (a00 * b11 - a02 * b08 + a03 * b07) * det;\n out[5] = (a01 * b08 - a00 * b10 - a03 * b06) * det;\n out[6] = (a31 * b05 - a32 * b04 + a33 * b03) * det;\n out[7] = (a32 * b02 - a30 * b05 - a33 * b01) * det;\n out[8] = (a30 * b04 - a31 * b02 + a33 * b00) * det;\n return out;\n}\n/**\n * Generates a 2D projection matrix with the given bounds\n *\n * @param {mat3} out mat3 frustum matrix will be written into\n * @param {number} width Width of your gl context\n * @param {number} height Height of gl context\n * @returns {mat3} out\n */\nexport function projection(out, width, height) {\n out[0] = 2 / width;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = -2 / height;\n out[5] = 0;\n out[6] = -1;\n out[7] = 1;\n out[8] = 1;\n return out;\n}\n/**\n * Returns a string representation of a mat3\n *\n * @param {ReadonlyMat3} a matrix to represent as a string\n * @returns {String} string representation of the matrix\n */\nexport function str(a) {\n return `mat3(${a[0]}, ${a[1]}, ${a[2]}, ${a[3]}, ${a[4]}, ${a[5]}, ${a[6]}, ${a[7]}, ${a[8]})`;\n}\n/**\n * Returns Frobenius norm of a mat3\n *\n * @param {ReadonlyMat3} a the matrix to calculate Frobenius norm of\n * @returns {Number} Frobenius norm\n */\nexport function frob(a) {\n return Math.sqrt(a[0] * a[0] +\n a[1] * a[1] +\n a[2] * a[2] +\n a[3] * a[3] +\n a[4] * a[4] +\n a[5] * a[5] +\n a[6] * a[6] +\n a[7] * a[7] +\n a[8] * a[8]);\n}\n/**\n * Adds two mat3's\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n out[2] = a[2] + b[2];\n out[3] = a[3] + b[3];\n out[4] = a[4] + b[4];\n out[5] = a[5] + b[5];\n out[6] = a[6] + b[6];\n out[7] = a[7] + b[7];\n out[8] = a[8] + b[8];\n return out;\n}\n/**\n * Subtracts matrix b from matrix a\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n out[2] = a[2] - b[2];\n out[3] = a[3] - b[3];\n out[4] = a[4] - b[4];\n out[5] = a[5] - b[5];\n out[6] = a[6] - b[6];\n out[7] = a[7] - b[7];\n out[8] = a[8] - b[8];\n return out;\n}\n/**\n * Multiply each element of the matrix by a scalar.\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to scale\n * @param {Number} b amount to scale the matrix's elements by\n * @returns {mat3} out\n */\nexport function multiplyScalar(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n out[2] = a[2] * b;\n out[3] = a[3] * b;\n out[4] = a[4] * b;\n out[5] = a[5] * b;\n out[6] = a[6] * b;\n out[7] = a[7] * b;\n out[8] = a[8] * b;\n return out;\n}\n/**\n * Adds two mat3's after multiplying each element of the second operand by a scalar value.\n *\n * @param {mat3} out the receiving vector\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @param {Number} scale the amount to scale b's elements by before adding\n * @returns {mat3} out\n */\nexport function multiplyScalarAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n out[2] = a[2] + b[2] * scale;\n out[3] = a[3] + b[3] * scale;\n out[4] = a[4] + b[4] * scale;\n out[5] = a[5] + b[5] * scale;\n out[6] = a[6] + b[6] * scale;\n out[7] = a[7] + b[7] * scale;\n out[8] = a[8] + b[8] * scale;\n return out;\n}\n/**\n * Returns whether or not the matrices have exactly the same elements in the same position (when compared with ===)\n *\n * @param {ReadonlyMat3} a The first matrix.\n * @param {ReadonlyMat3} b The second matrix.\n * @returns {Boolean} True if the matrices are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return (a[0] === b[0] &&\n a[1] === b[1] &&\n a[2] === b[2] &&\n a[3] === b[3] &&\n a[4] === b[4] &&\n a[5] === b[5] &&\n a[6] === b[6] &&\n a[7] === b[7] &&\n a[8] === b[8]);\n}\n/**\n * Returns whether or not the matrices have approximately the same elements in the same position.\n *\n * @param {ReadonlyMat3} a The first matrix.\n * @param {ReadonlyMat3} b The second matrix.\n * @returns {Boolean} True if the matrices are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const a2 = a[2];\n const a3 = a[3];\n const a4 = a[4];\n const a5 = a[5];\n const a6 = a[6];\n const a7 = a[7];\n const a8 = a[8];\n const b0 = b[0];\n const b1 = b[1];\n const b2 = b[2];\n const b3 = b[3];\n const b4 = b[4];\n const b5 = b[5];\n const b6 = b[6];\n const b7 = b[7];\n const b8 = b[8];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)) &&\n Math.abs(a2 - b2) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a2), Math.abs(b2)) &&\n Math.abs(a3 - b3) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a3), Math.abs(b3)) &&\n Math.abs(a4 - b4) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a4), Math.abs(b4)) &&\n Math.abs(a5 - b5) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a5), Math.abs(b5)) &&\n Math.abs(a6 - b6) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a6), Math.abs(b6)) &&\n Math.abs(a7 - b7) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a7), Math.abs(b7)) &&\n Math.abs(a8 - b8) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a8), Math.abs(b8)));\n}\n/**\n * Alias for {@link mat3.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link mat3.subtract}\n * @function\n */\nexport const sub = subtract;\n", "// Copyright (c) 2017 Uber Technologies, Inc.\n// MIT License\nimport { Matrix } from \"./base/matrix.js\";\nimport { checkVector } from \"../lib/validators.js\";\nimport { vec4_transformMat3 } from \"../lib/gl-matrix-extras.js\";\nimport { fromQuat as mat3_fromQuat, determinant as mat3_determinant, transpose as mat3_transpose, invert as mat3_invert, multiply as mat3_multiply, rotate as mat3_rotate, scale as mat3_scale, translate as mat3_translate } from \"../gl-matrix/mat3.js\";\nimport { transformMat3 as vec2_transformMat3 } from \"../gl-matrix/vec2.js\";\nimport { transformMat3 as vec3_transformMat3 } from \"../gl-matrix/vec3.js\";\nvar INDICES;\n(function (INDICES) {\n INDICES[INDICES[\"COL0ROW0\"] = 0] = \"COL0ROW0\";\n INDICES[INDICES[\"COL0ROW1\"] = 1] = \"COL0ROW1\";\n INDICES[INDICES[\"COL0ROW2\"] = 2] = \"COL0ROW2\";\n INDICES[INDICES[\"COL1ROW0\"] = 3] = \"COL1ROW0\";\n INDICES[INDICES[\"COL1ROW1\"] = 4] = \"COL1ROW1\";\n INDICES[INDICES[\"COL1ROW2\"] = 5] = \"COL1ROW2\";\n INDICES[INDICES[\"COL2ROW0\"] = 6] = \"COL2ROW0\";\n INDICES[INDICES[\"COL2ROW1\"] = 7] = \"COL2ROW1\";\n INDICES[INDICES[\"COL2ROW2\"] = 8] = \"COL2ROW2\";\n})(INDICES || (INDICES = {}));\nconst IDENTITY_MATRIX = Object.freeze([1, 0, 0, 0, 1, 0, 0, 0, 1]);\nexport class Matrix3 extends Matrix {\n static get IDENTITY() {\n return getIdentityMatrix();\n }\n static get ZERO() {\n return getZeroMatrix();\n }\n get ELEMENTS() {\n return 9;\n }\n get RANK() {\n return 3;\n }\n get INDICES() {\n return INDICES;\n }\n constructor(array, ...args) {\n // PERF NOTE: initialize elements as double precision numbers\n super(-0, -0, -0, -0, -0, -0, -0, -0, -0);\n if (arguments.length === 1 && Array.isArray(array)) {\n this.copy(array);\n }\n else if (args.length > 0) {\n this.copy([array, ...args]);\n }\n else {\n this.identity();\n }\n }\n copy(array) {\n // Element wise copy for performance\n this[0] = array[0];\n this[1] = array[1];\n this[2] = array[2];\n this[3] = array[3];\n this[4] = array[4];\n this[5] = array[5];\n this[6] = array[6];\n this[7] = array[7];\n this[8] = array[8];\n return this.check();\n }\n // Constructors\n identity() {\n return this.copy(IDENTITY_MATRIX);\n }\n /**\n *\n * @param object\n * @returns self\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n fromObject(object) {\n return this.check();\n }\n /** Calculates a 3x3 matrix from the given quaternion\n * q quat Quaternion to create matrix from\n */\n fromQuaternion(q) {\n mat3_fromQuat(this, q);\n return this.check();\n }\n /**\n * accepts column major order, stores in column major order\n */\n // eslint-disable-next-line max-params\n set(m00, m10, m20, m01, m11, m21, m02, m12, m22) {\n this[0] = m00;\n this[1] = m10;\n this[2] = m20;\n this[3] = m01;\n this[4] = m11;\n this[5] = m21;\n this[6] = m02;\n this[7] = m12;\n this[8] = m22;\n return this.check();\n }\n /**\n * accepts row major order, stores as column major\n */\n // eslint-disable-next-line max-params\n setRowMajor(m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n this[0] = m00;\n this[1] = m10;\n this[2] = m20;\n this[3] = m01;\n this[4] = m11;\n this[5] = m21;\n this[6] = m02;\n this[7] = m12;\n this[8] = m22;\n return this.check();\n }\n // Accessors\n determinant() {\n return mat3_determinant(this);\n }\n // Modifiers\n transpose() {\n mat3_transpose(this, this);\n return this.check();\n }\n /** Invert a matrix. Note that this can fail if the matrix is not invertible */\n invert() {\n mat3_invert(this, this);\n return this.check();\n }\n // Operations\n multiplyLeft(a) {\n mat3_multiply(this, a, this);\n return this.check();\n }\n multiplyRight(a) {\n mat3_multiply(this, this, a);\n return this.check();\n }\n rotate(radians) {\n mat3_rotate(this, this, radians);\n return this.check();\n }\n scale(factor) {\n if (Array.isArray(factor)) {\n mat3_scale(this, this, factor);\n }\n else {\n mat3_scale(this, this, [factor, factor]);\n }\n return this.check();\n }\n translate(vec) {\n mat3_translate(this, this, vec);\n return this.check();\n }\n // Transforms\n transform(vector, result) {\n let out;\n switch (vector.length) {\n case 2:\n out = vec2_transformMat3(result || [-0, -0], vector, this);\n break;\n case 3:\n out = vec3_transformMat3(result || [-0, -0, -0], vector, this);\n break;\n case 4:\n out = vec4_transformMat3(result || [-0, -0, -0, -0], vector, this);\n break;\n default:\n throw new Error('Illegal vector');\n }\n checkVector(out, vector.length);\n return out;\n }\n /** @deprecated */\n transformVector(vector, result) {\n return this.transform(vector, result);\n }\n /** @deprecated */\n transformVector2(vector, result) {\n return this.transform(vector, result);\n }\n /** @deprecated */\n transformVector3(vector, result) {\n return this.transform(vector, result);\n }\n}\nlet ZERO_MATRIX3;\nlet IDENTITY_MATRIX3 = null;\nfunction getZeroMatrix() {\n if (!ZERO_MATRIX3) {\n ZERO_MATRIX3 = new Matrix3([0, 0, 0, 0, 0, 0, 0, 0, 0]);\n Object.freeze(ZERO_MATRIX3);\n }\n return ZERO_MATRIX3;\n}\nfunction getIdentityMatrix() {\n if (!IDENTITY_MATRIX3) {\n IDENTITY_MATRIX3 = new Matrix3();\n Object.freeze(IDENTITY_MATRIX3);\n }\n return IDENTITY_MATRIX3;\n}\n", "// GLTF EXTENSION: KHR_lights_punctual\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_lights_punctual\nimport { assert } from \"../../utils/assert.js\";\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_LIGHTS_PUNCTUAL = 'KHR_lights_punctual';\nexport const name = KHR_LIGHTS_PUNCTUAL;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Move the light array out of the extension and remove the extension\n const extension = gltfScenegraph.getExtension(KHR_LIGHTS_PUNCTUAL);\n if (extension) {\n // @ts-ignore\n gltfScenegraph.json.lights = extension.lights;\n gltfScenegraph.removeExtension(KHR_LIGHTS_PUNCTUAL);\n }\n // Any nodes that have the extension, add lights field pointing to light object\n // and remove the extension\n for (const node of json.nodes || []) {\n const nodeExtension = gltfScenegraph.getObjectExtension(node, KHR_LIGHTS_PUNCTUAL);\n if (nodeExtension) {\n // @ts-ignore\n node.light = nodeExtension.light;\n }\n gltfScenegraph.removeObjectExtension(node, KHR_LIGHTS_PUNCTUAL);\n }\n}\n// Move the light ar ray out of the extension and remove the extension\nexport async function encode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // @ts-ignore\n if (json.lights) {\n const extension = gltfScenegraph.addExtension(KHR_LIGHTS_PUNCTUAL);\n // @ts-ignore\n assert(!extension.lights);\n // @ts-ignore\n extension.lights = json.lights;\n // @ts-ignore\n delete json.lights;\n }\n // Any nodes that have lights field pointing to light object\n // add the extension\n // @ts-ignore\n if (gltfScenegraph.json.lights) {\n // @ts-ignore\n for (const light of gltfScenegraph.json.lights) {\n const node = light.node;\n gltfScenegraph.addObjectExtension(node, KHR_LIGHTS_PUNCTUAL, light);\n }\n // @ts-ignore\n delete gltfScenegraph.json.lights;\n }\n}\n", "// GLTF EXTENSION: KHR_materials_unlit\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_unlit\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_MATERIALS_UNLIT = 'KHR_materials_unlit';\nexport const name = KHR_MATERIALS_UNLIT;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Any nodes that have the extension, add lights field pointing to light object\n // and remove the extension\n for (const material of json.materials || []) {\n const extension = material.extensions && material.extensions.KHR_materials_unlit;\n if (extension) {\n // @ts-ignore TODO\n material.unlit = true;\n }\n gltfScenegraph.removeObjectExtension(material, KHR_MATERIALS_UNLIT);\n }\n // Remove the top-level extension\n gltfScenegraph.removeExtension(KHR_MATERIALS_UNLIT);\n}\nexport function encode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Any nodes that have lights field pointing to light object\n // add the extension\n // @ts-ignore\n if (gltfScenegraph.materials) {\n for (const material of json.materials || []) {\n // @ts-ignore\n if (material.unlit) {\n // @ts-ignore\n delete material.unlit;\n gltfScenegraph.addObjectExtension(material, KHR_MATERIALS_UNLIT, {});\n gltfScenegraph.addExtension(KHR_MATERIALS_UNLIT);\n }\n }\n }\n}\n", "// GLTF EXTENSION: KHR_techniques_webgl\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_techniques_webgl\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_TECHNIQUES_WEBGL = 'KHR_techniques_webgl';\nexport const name = KHR_TECHNIQUES_WEBGL;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n const extension = gltfScenegraph.getExtension(KHR_TECHNIQUES_WEBGL);\n if (extension) {\n const techniques = resolveTechniques(extension, gltfScenegraph);\n for (const material of json.materials || []) {\n const materialExtension = gltfScenegraph.getObjectExtension(material, KHR_TECHNIQUES_WEBGL);\n if (materialExtension) {\n // @ts-ignore TODO\n material.technique = Object.assign({}, materialExtension, \n // @ts-ignore\n techniques[materialExtension.technique]);\n // @ts-ignore TODO\n material.technique.values = resolveValues(material.technique, gltfScenegraph);\n }\n gltfScenegraph.removeObjectExtension(material, KHR_TECHNIQUES_WEBGL);\n }\n // Remove the top-level extension\n gltfScenegraph.removeExtension(KHR_TECHNIQUES_WEBGL);\n }\n}\n// eslint-disable-next-line\nexport async function encode(gltfData, options) {\n // TODO\n}\nfunction resolveTechniques(techniquesExtension, \n// programs: {[key: string]: any}[],\n// shaders: {[key: string]: any}[],\n// techniques: {[key: string]: any}[]\ngltfScenegraph) {\n const { programs = [], shaders = [], techniques = [] } = techniquesExtension;\n const textDecoder = new TextDecoder();\n shaders.forEach((shader) => {\n if (Number.isFinite(shader.bufferView)) {\n shader.code = textDecoder.decode(gltfScenegraph.getTypedArrayForBufferView(shader.bufferView));\n }\n else {\n // TODO: handle URI shader\n throw new Error('KHR_techniques_webgl: no shader code');\n }\n });\n programs.forEach((program) => {\n program.fragmentShader = shaders[program.fragmentShader];\n program.vertexShader = shaders[program.vertexShader];\n });\n techniques.forEach((technique) => {\n technique.program = programs[technique.program];\n });\n return techniques;\n}\nfunction resolveValues(technique, gltfScenegraph) {\n const values = Object.assign({}, technique.values);\n // merge values from uniforms\n Object.keys(technique.uniforms || {}).forEach((uniform) => {\n if (technique.uniforms[uniform].value && !(uniform in values)) {\n values[uniform] = technique.uniforms[uniform].value;\n }\n });\n // resolve textures\n Object.keys(values).forEach((uniform) => {\n if (typeof values[uniform] === 'object' && values[uniform].index !== undefined) {\n // Assume this is a texture\n // TODO: find if there are any other types that can be referenced\n values[uniform].texture = gltfScenegraph.getTexture(values[uniform].index);\n }\n });\n return values;\n}\n", "// GLTF 1.0 extensions (decode only)\n// import * as KHR_binary_gltf from './KHR_draco_mesh_compression';\n// GLTF 2.0 Vendor extensions\nimport * as EXT_mesh_features from \"../extensions/EXT_mesh_features.js\";\nimport * as EXT_structural_metadata from \"../extensions/EXT_structural_metadata.js\";\n// GLTF 2.0 Khronos extensions (decode/encode)\nimport * as EXT_meshopt_compression from \"../extensions/EXT_meshopt_compression.js\";\nimport * as EXT_texture_webp from \"../extensions/EXT_texture_webp.js\";\nimport * as KHR_texture_basisu from \"../extensions/KHR_texture_basisu.js\";\nimport * as KHR_draco_mesh_compression from \"../extensions/KHR_draco_mesh_compression.js\";\nimport * as KHR_texture_transform from \"../extensions/KHR_texture_transform.js\";\n// Deprecated. These should be handled by rendering library (e.g. luma.gl), not the loader.\nimport * as KHR_lights_punctual from \"../extensions/deprecated/KHR_lights_punctual.js\";\nimport * as KHR_materials_unlit from \"../extensions/deprecated/KHR_materials_unlit.js\";\nimport * as KHR_techniques_webgl from \"../extensions/deprecated/KHR_techniques_webgl.js\";\nimport * as EXT_feature_metadata from \"../extensions/deprecated/EXT_feature_metadata.js\";\n/**\n * List of extensions processed by the GLTFLoader\n * Note that may extensions can only be handled on the rendering stage and are left out here\n * These are just extensions that can be handled fully or partially during loading.\n */\nexport const EXTENSIONS = [\n // 1.0\n // KHR_binary_gltf is handled separately - must be processed before other parsing starts\n // KHR_binary_gltf,\n // 2.0\n EXT_structural_metadata,\n EXT_mesh_features,\n EXT_meshopt_compression,\n EXT_texture_webp,\n // Basisu should come after webp, we want basisu to be preferred if both are provided\n KHR_texture_basisu,\n KHR_draco_mesh_compression,\n KHR_lights_punctual,\n KHR_materials_unlit,\n KHR_techniques_webgl,\n KHR_texture_transform,\n EXT_feature_metadata\n];\n/** Call before any resource loading starts */\nexport function preprocessExtensions(gltf, options = {}, context) {\n const extensions = EXTENSIONS.filter((extension) => useExtension(extension.name, options));\n for (const extension of extensions) {\n extension.preprocess?.(gltf, options, context);\n }\n}\n/** Call after resource loading */\nexport async function decodeExtensions(gltf, options = {}, context) {\n const extensions = EXTENSIONS.filter((extension) => useExtension(extension.name, options));\n for (const extension of extensions) {\n // Note: We decode async extensions sequentially, this might not be necessary\n // Currently we only have Draco, but when we add Basis we may revisit\n await extension.decode?.(gltf, options, context);\n }\n}\nfunction useExtension(extensionName, options) {\n const excludes = options?.gltf?.excludeExtensions || {};\n const exclude = extensionName in excludes && !excludes[extensionName];\n return !exclude;\n}\n", "// GLTF 1.0 EXTENSION: KHR_binary_glTF\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/1.0/Khronos/KHR_binary_glTF\n/* eslint-disable camelcase */\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst KHR_BINARY_GLTF = 'KHR_binary_glTF';\n/** Extension name */\nexport const name = KHR_BINARY_GLTF;\nexport function preprocess(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Note: json.buffers.binary_glTF also needs to be replaced\n // This is currently done during gltf normalization\n // Image and shader nodes can have the extension\n // https://github.com/KhronosGroup/glTF/blob/master/extensions/1.0/Khronos/KHR_binary_glTF/schema/image.KHR_binary_glTF.schema.json\n for (const image of json.images || []) {\n const extension = gltfScenegraph.getObjectExtension(image, KHR_BINARY_GLTF);\n // The data in the extension is valid as glTF 2.0 data inside the object, so just copy it in\n if (extension) {\n Object.assign(image, extension);\n }\n gltfScenegraph.removeObjectExtension(image, KHR_BINARY_GLTF);\n }\n // TODO shaders - At least traverse and throw error if used?\n // https://github.com/KhronosGroup/glTF/blob/master/extensions/1.0/Khronos/KHR_binary_glTF/schema/shader.KHR_binary_glTF.schema.json\n // glTF v1 one files have a partially formed URI field that is not expected in (and causes problems in) 2.0\n if (json.buffers && json.buffers[0]) {\n delete json.buffers[0].uri;\n }\n // Remove the top-level extension as it has now been processed\n gltfScenegraph.removeExtension(KHR_BINARY_GLTF);\n}\n// KHR_binary_gltf is a 1.0 extension that is supported natively by 2.0\n// export function encode() {\n// throw new Error(KHR_BINARY_GLTF);\n// }\n", "/* eslint-disable camelcase */\nimport * as KHR_binary_glTF from \"../extensions/KHR_binary_gltf.js\";\n// Binary format changes (mainly implemented by GLBLoader)\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/1.0/Khronos/KHR_binary_glTF\n// JSON format changes:\n// https://github.com/khronosgroup/gltf/issues/605\n// - [x] Top-level JSON objects are arrays now\n// - [ ] Removed indirection from animation: sampler now refers directly to accessors, #712\n// - [ ] material.parameter.value and technique.parameter.value must be an array, #690\n// - [ ] Node can have only one mesh #821\n// - [ ] Added reqs on JSON encoding\n// - [ ] Added reqs on binary data alignment #802 (comment)\n// Additions:\n// - [ ] Added accessor.normalized, #691, #706\n// - [ ] Added glExtensionsUsed property and 5125 (UNSIGNED_INT) accessor.componentType value, #619\n// - [ ] Added extensionsRequired property, #720, #721\n// - [ ] Added \"STEP\" as valid animation.sampler.interpolation value, #712\n// Removals:\n// - [x] Removed buffer.type, #786, #629\n// - [ ] Removed revision number from profile.version, #709\n// - [ ] Removed technique.functions.scissor and removed 3089 (SCISSOR_TEST) as a valid value for technique.states.enable, #681\n// - [ ] Techniques, programs, and shaders were moved out to KHR_technique_webgl extension.\n// Other edits:\n// - [x] asset is now required, #642\n// - [ ] buffer.byteLength and bufferView.byteLength are now required, #560.\n// - [ ] accessor.min and accessor.max are now required, #593, and clarified that the JSON value and binary data must be the same, #628.\n// - [ ] Clarified animation.sampler and animation.channel restrictions, #712\n// - [ ] skin.inverseBindMatrices is now optional, #461.\n// - [ ] Attribute parameters can't have a value defined in the technique or parameter, #563 (comment).\n// - [ ] Only TEXCOORD and COLOR attribute semantics can be written in the form [semantic]_[set_index], #563 (comment).\n// - [ ] TEXCOORD and COLOR attribute semantics must be written in the form [semantic]_[set_index], e.g., just TEXCOORD should be TEXCOORD_0, and just COLOR should be COLOR_0, #649\n// - [ ] camera.perspective.aspectRatio and camera.perspective.yfov must now be > 0, not >= 0, #563 (comment).\n// - [ ] Application-specific parameter semantics must start with an underscore, e.g., _TEMPERATURE and _SIMULATION_TIME, #563 (comment).\n// - [ ] Properties in technique.parameters must be defined in technique.uniforms or technique.attributes,\n// #563 (comment).\n// - [ ] technique.parameter.count can only be defined when the semantic is JOINTMATRIX or an application-specific semantic is used. It can never be defined for attribute parameters; only uniforms, d2f6945\n// - [ ] technique.parameter.semantic is required when the parameter is an attribute, 28e113d\n// - [ ] Mesh-only models are allowed, e.g., without materials, #642\n// - [ ] Skeleton hierarchies (nodes containing jointName) must be separated from non-skeleton hierarchies., #647\n// - [ ] technique.states.functions.blendColor and technique.states.functions.depthRange parameters now must match WebGL function min/max, #707\nconst GLTF_ARRAYS = {\n accessors: 'accessor',\n animations: 'animation',\n buffers: 'buffer',\n bufferViews: 'bufferView',\n images: 'image',\n materials: 'material',\n meshes: 'mesh',\n nodes: 'node',\n samplers: 'sampler',\n scenes: 'scene',\n skins: 'skin',\n textures: 'texture'\n};\nconst GLTF_KEYS = {\n accessor: 'accessors',\n animations: 'animation',\n buffer: 'buffers',\n bufferView: 'bufferViews',\n image: 'images',\n material: 'materials',\n mesh: 'meshes',\n node: 'nodes',\n sampler: 'samplers',\n scene: 'scenes',\n skin: 'skins',\n texture: 'textures'\n};\n/**\n * Converts (normalizes) glTF v1 to v2\n */\nclass GLTFV1Normalizer {\n idToIndexMap = {\n animations: {},\n accessors: {},\n buffers: {},\n bufferViews: {},\n images: {},\n materials: {},\n meshes: {},\n nodes: {},\n samplers: {},\n scenes: {},\n skins: {},\n textures: {}\n };\n json;\n // constructor() {}\n /**\n * Convert (normalize) glTF < 2.0 to glTF 2.0\n * @param gltf - object with json and binChunks\n * @param options\n * @param options normalize Whether to actually normalize\n */\n normalize(gltf, options) {\n this.json = gltf.json;\n const json = gltf.json;\n // Check version\n switch (json.asset && json.asset.version) {\n // We are converting to v2 format. Return if there is nothing to do\n case '2.0':\n return;\n // This class is written to convert 1.0\n case undefined:\n case '1.0':\n break;\n default:\n // eslint-disable-next-line no-undef, no-console\n console.warn(`glTF: Unknown version ${json.asset.version}`);\n return;\n }\n if (!options.normalize) {\n // We are still missing a few conversion tricks, remove once addressed\n throw new Error('glTF v1 is not supported.');\n }\n // eslint-disable-next-line no-undef, no-console\n console.warn('Converting glTF v1 to glTF v2 format. This is experimental and may fail.');\n this._addAsset(json);\n // In glTF2 top-level fields are Arrays not Object maps\n this._convertTopLevelObjectsToArrays(json);\n // Extract bufferView indices for images\n // (this extension needs to be invoked early in the normalization process)\n // TODO can this be handled by standard extension processing instead of called explicitly?\n KHR_binary_glTF.preprocess(gltf);\n // Convert object references from ids to indices\n this._convertObjectIdsToArrayIndices(json);\n this._updateObjects(json);\n this._updateMaterial(json);\n }\n // asset is now required, #642 https://github.com/KhronosGroup/glTF/issues/639\n _addAsset(json) {\n json.asset = json.asset || {};\n // We are normalizing to glTF v2, so change version to \"2.0\"\n json.asset.version = '2.0';\n json.asset.generator = json.asset.generator || 'Normalized to glTF 2.0 by loaders.gl';\n }\n _convertTopLevelObjectsToArrays(json) {\n // TODO check that all arrays are covered\n for (const arrayName in GLTF_ARRAYS) {\n this._convertTopLevelObjectToArray(json, arrayName);\n }\n }\n /** Convert one top level object to array */\n _convertTopLevelObjectToArray(json, mapName) {\n const objectMap = json[mapName];\n if (!objectMap || Array.isArray(objectMap)) {\n return;\n }\n // Rewrite the top-level field as an array\n json[mapName] = [];\n // Copy the map key into object.id\n for (const id in objectMap) {\n const object = objectMap[id];\n object.id = object.id || id; // Mutates the loaded object\n const index = json[mapName].length;\n json[mapName].push(object);\n this.idToIndexMap[mapName][id] = index;\n }\n }\n /** Go through all objects in all top-level arrays and replace ids with indices */\n _convertObjectIdsToArrayIndices(json) {\n for (const arrayName in GLTF_ARRAYS) {\n this._convertIdsToIndices(json, arrayName);\n }\n if ('scene' in json) {\n json.scene = this._convertIdToIndex(json.scene, 'scene');\n }\n // Convert any index references that are not using array names\n // texture.source (image)\n for (const texture of json.textures) {\n this._convertTextureIds(texture);\n }\n for (const mesh of json.meshes) {\n this._convertMeshIds(mesh);\n }\n for (const node of json.nodes) {\n this._convertNodeIds(node);\n }\n for (const node of json.scenes) {\n this._convertSceneIds(node);\n }\n }\n _convertTextureIds(texture) {\n if (texture.source) {\n texture.source = this._convertIdToIndex(texture.source, 'image');\n }\n }\n _convertMeshIds(mesh) {\n for (const primitive of mesh.primitives) {\n const { attributes, indices, material } = primitive;\n for (const attributeName in attributes) {\n attributes[attributeName] = this._convertIdToIndex(attributes[attributeName], 'accessor');\n }\n if (indices) {\n primitive.indices = this._convertIdToIndex(indices, 'accessor');\n }\n if (material) {\n primitive.material = this._convertIdToIndex(material, 'material');\n }\n }\n }\n _convertNodeIds(node) {\n if (node.children) {\n node.children = node.children.map((child) => this._convertIdToIndex(child, 'node'));\n }\n if (node.meshes) {\n node.meshes = node.meshes.map((mesh) => this._convertIdToIndex(mesh, 'mesh'));\n }\n }\n _convertSceneIds(scene) {\n if (scene.nodes) {\n scene.nodes = scene.nodes.map((node) => this._convertIdToIndex(node, 'node'));\n }\n }\n /** Go through all objects in a top-level array and replace ids with indices */\n _convertIdsToIndices(json, topLevelArrayName) {\n if (!json[topLevelArrayName]) {\n console.warn(`gltf v1: json doesn't contain attribute ${topLevelArrayName}`); // eslint-disable-line no-console, no-undef\n json[topLevelArrayName] = [];\n }\n for (const object of json[topLevelArrayName]) {\n for (const key in object) {\n const id = object[key];\n const index = this._convertIdToIndex(id, key);\n object[key] = index;\n }\n }\n }\n _convertIdToIndex(id, key) {\n const arrayName = GLTF_KEYS[key];\n if (arrayName in this.idToIndexMap) {\n const index = this.idToIndexMap[arrayName][id];\n if (!Number.isFinite(index)) {\n throw new Error(`gltf v1: failed to resolve ${key} with id ${id}`);\n }\n return index;\n }\n return id;\n }\n /**\n *\n * @param {*} json\n */\n _updateObjects(json) {\n for (const buffer of this.json.buffers) {\n // - [x] Removed buffer.type, #786, #629\n delete buffer.type;\n }\n }\n /**\n * Update material (set pbrMetallicRoughness)\n * @param {*} json\n */\n _updateMaterial(json) {\n for (const material of json.materials) {\n material.pbrMetallicRoughness = {\n baseColorFactor: [1, 1, 1, 1],\n metallicFactor: 1,\n roughnessFactor: 1\n };\n const textureId = material.values?.tex || material.values?.texture2d_0 || material.values?.diffuseTex;\n const textureIndex = json.textures.findIndex((texture) => texture.id === textureId);\n if (textureIndex !== -1) {\n material.pbrMetallicRoughness.baseColorTexture = { index: textureIndex };\n }\n }\n }\n}\nexport function normalizeGLTFV1(gltf, options = {}) {\n return new GLTFV1Normalizer().normalize(gltf, options);\n}\n", "import { parseJSON, sliceArrayBuffer, parseFromContext } from '@loaders.gl/loader-utils';\nimport { ImageLoader } from '@loaders.gl/images';\nimport { BasisLoader, selectSupportedBasisFormat } from '@loaders.gl/textures';\nimport { assert } from \"../utils/assert.js\";\nimport { isGLB, parseGLBSync } from \"./parse-glb.js\";\nimport { resolveUrl } from \"../gltf-utils/resolve-url.js\";\nimport { getTypedArrayForBufferView } from \"../gltf-utils/get-typed-array.js\";\nimport { preprocessExtensions, decodeExtensions } from \"../api/gltf-extensions.js\";\nimport { normalizeGLTFV1 } from \"../api/normalize-gltf-v1.js\";\n/** Check if an array buffer appears to contain GLTF data */\nexport function isGLTF(arrayBuffer, options) {\n const byteOffset = 0;\n return isGLB(arrayBuffer, byteOffset, options);\n}\nexport async function parseGLTF(gltf, arrayBufferOrString, byteOffset = 0, options, context) {\n parseGLTFContainerSync(gltf, arrayBufferOrString, byteOffset, options);\n normalizeGLTFV1(gltf, { normalize: options?.gltf?.normalize });\n preprocessExtensions(gltf, options, context);\n // Load linked buffers asynchronously and decodes base64 buffers in parallel\n if (options?.gltf?.loadBuffers && gltf.json.buffers) {\n await loadBuffers(gltf, options, context);\n }\n // loadImages and decodeExtensions should not be running in parallel, because\n // decodeExtensions uses data from images taken during the loadImages call.\n if (options?.gltf?.loadImages) {\n await loadImages(gltf, options, context);\n }\n await decodeExtensions(gltf, options, context);\n return gltf;\n}\n/**\n *\n * @param gltf\n * @param data - can be ArrayBuffer (GLB), ArrayBuffer (Binary JSON), String (JSON), or Object (parsed JSON)\n * @param byteOffset\n * @param options\n */\nfunction parseGLTFContainerSync(gltf, data, byteOffset, options) {\n // Initialize gltf container\n if (options.uri) {\n gltf.baseUri = options.uri;\n }\n // If data is binary and starting with magic bytes, assume binary JSON text, convert to string\n if (data instanceof ArrayBuffer && !isGLB(data, byteOffset, options)) {\n const textDecoder = new TextDecoder();\n data = textDecoder.decode(data);\n }\n if (typeof data === 'string') {\n // If string, try to parse as JSON\n gltf.json = parseJSON(data);\n }\n else if (data instanceof ArrayBuffer) {\n // If still ArrayBuffer, parse as GLB container\n const glb = {};\n byteOffset = parseGLBSync(glb, data, byteOffset, options.glb);\n assert(glb.type === 'glTF', `Invalid GLB magic string ${glb.type}`);\n gltf._glb = glb;\n gltf.json = glb.json;\n }\n else {\n assert(false, 'GLTF: must be ArrayBuffer or string');\n }\n // Populate buffers\n // Create an external buffers array to hold binary data\n const buffers = gltf.json.buffers || [];\n gltf.buffers = new Array(buffers.length).fill(null);\n // Populates JSON and some bin chunk info\n if (gltf._glb && gltf._glb.header.hasBinChunk) {\n const { binChunks } = gltf._glb;\n gltf.buffers[0] = {\n arrayBuffer: binChunks[0].arrayBuffer,\n byteOffset: binChunks[0].byteOffset,\n byteLength: binChunks[0].byteLength\n };\n // TODO - this modifies JSON and is a post processing thing\n // gltf.json.buffers[0].data = gltf.buffers[0].arrayBuffer;\n // gltf.json.buffers[0].byteOffset = gltf.buffers[0].byteOffset;\n }\n // Populate images\n const images = gltf.json.images || [];\n gltf.images = new Array(images.length).fill({});\n}\n/** Asynchronously fetch and parse buffers, store in buffers array outside of json\n * TODO - traverse gltf and determine which buffers are actually needed\n */\nasync function loadBuffers(gltf, options, context) {\n // TODO\n const buffers = gltf.json.buffers || [];\n for (let i = 0; i < buffers.length; ++i) {\n const buffer = buffers[i];\n if (buffer.uri) {\n const { fetch } = context;\n assert(fetch);\n const uri = resolveUrl(buffer.uri, options);\n const response = await context?.fetch?.(uri);\n const arrayBuffer = await response?.arrayBuffer?.();\n gltf.buffers[i] = {\n arrayBuffer,\n byteOffset: 0,\n byteLength: arrayBuffer.byteLength\n };\n delete buffer.uri;\n }\n else if (gltf.buffers[i] === null) {\n gltf.buffers[i] = {\n arrayBuffer: new ArrayBuffer(buffer.byteLength),\n byteOffset: 0,\n byteLength: buffer.byteLength\n };\n }\n }\n}\n/**\n * Loads all images\n * TODO - traverse gltf and determine which images are actually needed\n * @param gltf\n * @param options\n * @param context\n * @returns\n */\nasync function loadImages(gltf, options, context) {\n const imageIndices = getReferencesImageIndices(gltf);\n const images = gltf.json.images || [];\n const promises = [];\n for (const imageIndex of imageIndices) {\n promises.push(loadImage(gltf, images[imageIndex], imageIndex, options, context));\n }\n return await Promise.all(promises);\n}\n/** Make sure we only load images that are actually referenced by textures */\nfunction getReferencesImageIndices(gltf) {\n const imageIndices = new Set();\n const textures = gltf.json.textures || [];\n for (const texture of textures) {\n if (texture.source !== undefined) {\n imageIndices.add(texture.source);\n }\n }\n return Array.from(imageIndices).sort();\n}\n/** Asynchronously fetches and parses one image, store in images array outside of json */\nasync function loadImage(gltf, image, index, options, context) {\n let arrayBuffer;\n if (image.uri && !image.hasOwnProperty('bufferView')) {\n const uri = resolveUrl(image.uri, options);\n const { fetch } = context;\n const response = await fetch(uri);\n arrayBuffer = await response.arrayBuffer();\n image.bufferView = {\n data: arrayBuffer\n };\n }\n if (Number.isFinite(image.bufferView)) {\n const array = getTypedArrayForBufferView(gltf.json, gltf.buffers, image.bufferView);\n arrayBuffer = sliceArrayBuffer(array.buffer, array.byteOffset, array.byteLength);\n }\n assert(arrayBuffer, 'glTF image has no data');\n // Call `parse`\n let parsedImage = (await parseFromContext(arrayBuffer, [ImageLoader, BasisLoader], {\n ...options,\n mimeType: image.mimeType,\n basis: options.basis || { format: selectSupportedBasisFormat() }\n }, context));\n if (parsedImage && parsedImage[0]) {\n parsedImage = {\n compressed: true,\n // @ts-expect-error\n mipmaps: false,\n width: parsedImage[0].width,\n height: parsedImage[0].height,\n data: parsedImage[0]\n };\n }\n // TODO making sure ImageLoader is overridable by using array of loaders\n // const parsedImage = await parse(arrayBuffer, [ImageLoader]);\n // Store the loaded image\n gltf.images = gltf.images || [];\n // @ts-expect-error TODO - sort out image typing asap\n gltf.images[index] = parsedImage;\n}\n", "import { VERSION } from \"./lib/utils/version.js\";\nimport { parseGLTF } from \"./lib/parsers/parse-gltf.js\";\n/**\n * GLTF loader\n */\nexport const GLTFLoader = {\n dataType: null,\n batchType: null,\n name: 'glTF',\n id: 'gltf',\n module: 'gltf',\n version: VERSION,\n extensions: ['gltf', 'glb'],\n mimeTypes: ['model/gltf+json', 'model/gltf-binary'],\n text: true,\n binary: true,\n tests: ['glTF'],\n parse,\n options: {\n gltf: {\n normalize: true, // Normalize glTF v1 to glTF v2 format (not yet stable)\n loadBuffers: true, // Fetch any linked .BIN buffers, decode base64\n loadImages: true, // Create image objects\n decompressMeshes: true // Decompress Draco encoded meshes\n },\n // common?\n log: console // eslint-disable-line\n }\n};\nexport async function parse(arrayBuffer, options = {}, context) {\n // Apps can call the parse method directly, we so apply default options here\n options = { ...GLTFLoader.options, ...options };\n // @ts-ignore\n options.gltf = { ...GLTFLoader.options.gltf, ...options.gltf };\n const { byteOffset = 0 } = options;\n const gltf = {};\n return await parseGLTF(gltf, arrayBuffer, byteOffset, options, context);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorArrayTypeAndLength } from \"../gltf-utils/gltf-utils.js\";\n// This is a post processor for loaded glTF files\n// The goal is to make the loaded data easier to use in WebGL applications\n//\n// Functions:\n// * Resolve indexed arrays structure of glTF into a linked tree.\n// * Translate stringified enum keys and values into WebGL constants.\n// * Load images (optional)\n// ENUM LOOKUP\nconst COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nconst BYTES = {\n 5120: 1, // BYTE\n 5121: 1, // UNSIGNED_BYTE\n 5122: 2, // SHORT\n 5123: 2, // UNSIGNED_SHORT\n 5125: 4, // UNSIGNED_INT\n 5126: 4 // FLOAT\n};\nconst GL_SAMPLER = {\n // Sampler parameters\n TEXTURE_MAG_FILTER: 0x2800,\n TEXTURE_MIN_FILTER: 0x2801,\n TEXTURE_WRAP_S: 0x2802,\n TEXTURE_WRAP_T: 0x2803,\n // Sampler default values\n REPEAT: 0x2901,\n LINEAR: 0x2601,\n NEAREST_MIPMAP_LINEAR: 0x2702\n};\nconst SAMPLER_PARAMETER_GLTF_TO_GL = {\n magFilter: GL_SAMPLER.TEXTURE_MAG_FILTER,\n minFilter: GL_SAMPLER.TEXTURE_MIN_FILTER,\n wrapS: GL_SAMPLER.TEXTURE_WRAP_S,\n wrapT: GL_SAMPLER.TEXTURE_WRAP_T\n};\n// When undefined, a sampler with repeat wrapping and auto filtering should be used.\n// https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#texture\nconst DEFAULT_SAMPLER_PARAMETERS = {\n [GL_SAMPLER.TEXTURE_MAG_FILTER]: GL_SAMPLER.LINEAR,\n [GL_SAMPLER.TEXTURE_MIN_FILTER]: GL_SAMPLER.NEAREST_MIPMAP_LINEAR,\n [GL_SAMPLER.TEXTURE_WRAP_S]: GL_SAMPLER.REPEAT,\n [GL_SAMPLER.TEXTURE_WRAP_T]: GL_SAMPLER.REPEAT\n};\nfunction makeDefaultSampler() {\n return {\n id: 'default-sampler',\n parameters: DEFAULT_SAMPLER_PARAMETERS\n };\n}\nfunction getBytesFromComponentType(componentType) {\n return BYTES[componentType];\n}\nfunction getSizeFromAccessorType(type) {\n return COMPONENTS[type];\n}\nclass GLTFPostProcessor {\n baseUri = '';\n // @ts-expect-error\n jsonUnprocessed;\n // @ts-expect-error\n json;\n buffers = [];\n images = [];\n postProcess(gltf, options = {}) {\n const { json, buffers = [], images = [] } = gltf;\n // @ts-expect-error\n const { baseUri = '' } = gltf;\n assert(json);\n this.baseUri = baseUri;\n this.buffers = buffers;\n this.images = images;\n this.jsonUnprocessed = json;\n this.json = this._resolveTree(gltf.json, options);\n return this.json;\n }\n // Convert indexed glTF structure into tree structure\n // cross-link index resolution, enum lookup, convenience calculations\n // eslint-disable-next-line complexity, max-statements\n _resolveTree(gltf, options = {}) {\n // @ts-expect-error\n const json = { ...gltf };\n this.json = json;\n if (gltf.bufferViews) {\n json.bufferViews = gltf.bufferViews.map((bufView, i) => this._resolveBufferView(bufView, i));\n }\n if (gltf.images) {\n json.images = gltf.images.map((image, i) => this._resolveImage(image, i));\n }\n if (gltf.samplers) {\n json.samplers = gltf.samplers.map((sampler, i) => this._resolveSampler(sampler, i));\n }\n if (gltf.textures) {\n json.textures = gltf.textures.map((texture, i) => this._resolveTexture(texture, i));\n }\n if (gltf.accessors) {\n json.accessors = gltf.accessors.map((accessor, i) => this._resolveAccessor(accessor, i));\n }\n if (gltf.materials) {\n json.materials = gltf.materials.map((material, i) => this._resolveMaterial(material, i));\n }\n if (gltf.meshes) {\n json.meshes = gltf.meshes.map((mesh, i) => this._resolveMesh(mesh, i));\n }\n if (gltf.nodes) {\n json.nodes = gltf.nodes.map((node, i) => this._resolveNode(node, i));\n json.nodes = json.nodes.map((node, i) => this._resolveNodeChildren(node));\n }\n if (gltf.skins) {\n json.skins = gltf.skins.map((skin, i) => this._resolveSkin(skin, i));\n }\n if (gltf.scenes) {\n json.scenes = gltf.scenes.map((scene, i) => this._resolveScene(scene, i));\n }\n if (typeof this.json.scene === 'number' && json.scenes) {\n json.scene = json.scenes[this.json.scene];\n }\n return json;\n }\n getScene(index) {\n return this._get(this.json.scenes, index);\n }\n getNode(index) {\n return this._get(this.json.nodes, index);\n }\n getSkin(index) {\n return this._get(this.json.skins, index);\n }\n getMesh(index) {\n return this._get(this.json.meshes, index);\n }\n getMaterial(index) {\n return this._get(this.json.materials, index);\n }\n getAccessor(index) {\n return this._get(this.json.accessors, index);\n }\n getCamera(index) {\n return this._get(this.json.cameras, index);\n }\n getTexture(index) {\n return this._get(this.json.textures, index);\n }\n getSampler(index) {\n return this._get(this.json.samplers, index);\n }\n getImage(index) {\n return this._get(this.json.images, index);\n }\n getBufferView(index) {\n return this._get(this.json.bufferViews, index);\n }\n getBuffer(index) {\n return this._get(this.json.buffers, index);\n }\n _get(array, index) {\n // check if already resolved\n if (typeof index === 'object') {\n return index;\n }\n const object = array && array[index];\n if (!object) {\n console.warn(`glTF file error: Could not find ${array}[${index}]`); // eslint-disable-line\n }\n return object;\n }\n // PARSING HELPERS\n _resolveScene(scene, index) {\n return {\n ...scene,\n // @ts-ignore\n id: scene.id || `scene-${index}`,\n nodes: (scene.nodes || []).map((node) => this.getNode(node))\n };\n }\n _resolveNode(gltfNode, index) {\n // @ts-expect-error\n const node = {\n ...gltfNode,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfNode?.id || `node-${index}`\n };\n if (gltfNode.mesh !== undefined) {\n node.mesh = this.getMesh(gltfNode.mesh);\n }\n if (gltfNode.camera !== undefined) {\n node.camera = this.getCamera(gltfNode.camera);\n }\n if (gltfNode.skin !== undefined) {\n node.skin = this.getSkin(gltfNode.skin);\n }\n // TODO deprecated - Delete in v4.0?\n // @ts-expect-error node.meshes does not seem to be part of the GLTF standard\n if (gltfNode.meshes !== undefined && gltfNode.meshes.length) {\n // @ts-expect-error\n node.mesh = gltfNode.meshes.reduce((accum, meshIndex) => {\n const mesh = this.getMesh(meshIndex);\n accum.id = mesh.id;\n accum.primitives = accum.primitives.concat(mesh.primitives);\n return accum;\n }, { primitives: [] });\n }\n return node;\n }\n _resolveNodeChildren(node) {\n if (node.children) {\n // @ts-expect-error node.children are numbers at this stage\n node.children = node.children.map((child) => this.getNode(child));\n }\n return node;\n }\n _resolveSkin(gltfSkin, index) {\n const inverseBindMatrices = typeof gltfSkin.inverseBindMatrices === 'number'\n ? this.getAccessor(gltfSkin.inverseBindMatrices)\n : undefined;\n return {\n ...gltfSkin,\n id: gltfSkin.id || `skin-${index}`,\n inverseBindMatrices\n };\n }\n _resolveMesh(gltfMesh, index) {\n const mesh = {\n ...gltfMesh,\n id: gltfMesh.id || `mesh-${index}`,\n primitives: []\n };\n if (gltfMesh.primitives) {\n mesh.primitives = gltfMesh.primitives.map((gltfPrimitive) => {\n const primitive = {\n ...gltfPrimitive,\n attributes: {},\n indices: undefined,\n material: undefined\n };\n const attributes = gltfPrimitive.attributes;\n for (const attribute in attributes) {\n primitive.attributes[attribute] = this.getAccessor(attributes[attribute]);\n }\n if (gltfPrimitive.indices !== undefined) {\n primitive.indices = this.getAccessor(gltfPrimitive.indices);\n }\n if (gltfPrimitive.material !== undefined) {\n primitive.material = this.getMaterial(gltfPrimitive.material);\n }\n return primitive;\n });\n }\n return mesh;\n }\n _resolveMaterial(gltfMaterial, index) {\n // @ts-expect-error\n const material = {\n ...gltfMaterial,\n // @ts-expect-error\n id: gltfMaterial.id || `material-${index}`\n };\n if (material.normalTexture) {\n material.normalTexture = { ...material.normalTexture };\n material.normalTexture.texture = this.getTexture(material.normalTexture.index);\n }\n if (material.occlusionTexture) {\n material.occlusionTexture = { ...material.occlusionTexture };\n material.occlusionTexture.texture = this.getTexture(material.occlusionTexture.index);\n }\n if (material.emissiveTexture) {\n material.emissiveTexture = { ...material.emissiveTexture };\n material.emissiveTexture.texture = this.getTexture(material.emissiveTexture.index);\n }\n if (!material.emissiveFactor) {\n material.emissiveFactor = material.emissiveTexture ? [1, 1, 1] : [0, 0, 0];\n }\n if (material.pbrMetallicRoughness) {\n material.pbrMetallicRoughness = { ...material.pbrMetallicRoughness };\n const mr = material.pbrMetallicRoughness;\n if (mr.baseColorTexture) {\n mr.baseColorTexture = { ...mr.baseColorTexture };\n mr.baseColorTexture.texture = this.getTexture(mr.baseColorTexture.index);\n }\n if (mr.metallicRoughnessTexture) {\n mr.metallicRoughnessTexture = { ...mr.metallicRoughnessTexture };\n mr.metallicRoughnessTexture.texture = this.getTexture(mr.metallicRoughnessTexture.index);\n }\n }\n return material;\n }\n _resolveAccessor(gltfAccessor, index) {\n // Look up enums\n const bytesPerComponent = getBytesFromComponentType(gltfAccessor.componentType);\n const components = getSizeFromAccessorType(gltfAccessor.type);\n const bytesPerElement = bytesPerComponent * components;\n const accessor = {\n ...gltfAccessor,\n // @ts-expect-error\n id: gltfAccessor.id || `accessor-${index}`,\n bytesPerComponent,\n components,\n bytesPerElement,\n value: undefined,\n bufferView: undefined,\n sparse: undefined\n };\n if (gltfAccessor.bufferView !== undefined) {\n // Draco encoded meshes don't have bufferView\n accessor.bufferView = this.getBufferView(gltfAccessor.bufferView);\n }\n // Create TypedArray for the accessor\n // Note: The canonical way to instantiate is to ignore this array and create\n // WebGLBuffer's using the bufferViews.\n if (accessor.bufferView) {\n const buffer = accessor.bufferView.buffer;\n const { ArrayType, byteLength } = getAccessorArrayTypeAndLength(accessor, accessor.bufferView);\n const byteOffset = (accessor.bufferView.byteOffset || 0) + (accessor.byteOffset || 0) + buffer.byteOffset;\n let cutBuffer = buffer.arrayBuffer.slice(byteOffset, byteOffset + byteLength);\n if (accessor.bufferView.byteStride) {\n cutBuffer = this._getValueFromInterleavedBuffer(buffer, byteOffset, accessor.bufferView.byteStride, accessor.bytesPerElement, accessor.count);\n }\n accessor.value = new ArrayType(cutBuffer);\n }\n return accessor;\n }\n /**\n * Take values of particular accessor from interleaved buffer\n * various parts of the buffer\n * @param buffer\n * @param byteOffset\n * @param byteStride\n * @param bytesPerElement\n * @param count\n * @returns\n */\n _getValueFromInterleavedBuffer(buffer, byteOffset, byteStride, bytesPerElement, count) {\n const result = new Uint8Array(count * bytesPerElement);\n for (let i = 0; i < count; i++) {\n const elementOffset = byteOffset + i * byteStride;\n result.set(new Uint8Array(buffer.arrayBuffer.slice(elementOffset, elementOffset + bytesPerElement)), i * bytesPerElement);\n }\n return result.buffer;\n }\n _resolveTexture(gltfTexture, index) {\n return {\n ...gltfTexture,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfTexture.id || `texture-${index}`,\n sampler: typeof gltfTexture.sampler === 'number'\n ? this.getSampler(gltfTexture.sampler)\n : makeDefaultSampler(),\n source: typeof gltfTexture.source === 'number' ? this.getImage(gltfTexture.source) : undefined\n };\n }\n _resolveSampler(gltfSampler, index) {\n const sampler = {\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfSampler.id || `sampler-${index}`,\n ...gltfSampler,\n parameters: {}\n };\n // Map textual parameters to GL parameter values\n for (const key in sampler) {\n const glEnum = this._enumSamplerParameter(key);\n if (glEnum !== undefined) {\n sampler.parameters[glEnum] = sampler[key];\n }\n }\n return sampler;\n }\n _enumSamplerParameter(key) {\n return SAMPLER_PARAMETER_GLTF_TO_GL[key];\n }\n _resolveImage(gltfImage, index) {\n const image = {\n ...gltfImage,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfImage.id || `image-${index}`,\n image: null,\n bufferView: gltfImage.bufferView !== undefined ? this.getBufferView(gltfImage.bufferView) : undefined\n };\n // Check if image has been preloaded by the GLTFLoader\n // If so, link it into the JSON and drop the URI\n const preloadedImage = this.images[index];\n if (preloadedImage) {\n image.image = preloadedImage;\n }\n return image;\n }\n _resolveBufferView(gltfBufferView, index) {\n const bufferIndex = gltfBufferView.buffer;\n const arrayBuffer = this.buffers[bufferIndex].arrayBuffer;\n // Add offset of buffer, then offset of buffer view\n let byteOffset = this.buffers[bufferIndex].byteOffset || 0;\n if (gltfBufferView.byteOffset) {\n byteOffset += gltfBufferView.byteOffset;\n }\n const bufferView = {\n // // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: `bufferView-${index}`,\n ...gltfBufferView,\n // ...this.buffers[bufferIndex],\n buffer: this.buffers[bufferIndex],\n data: new Uint8Array(arrayBuffer, byteOffset, gltfBufferView.byteLength)\n };\n return bufferView;\n }\n _resolveCamera(gltfCamera, index) {\n const camera = {\n ...gltfCamera,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfCamera.id || `camera-${index}`\n };\n // TODO - create 4x4 matrices\n if (camera.perspective) {\n // camera.matrix = createPerspectiveMatrix(camera.perspective);\n }\n if (camera.orthographic) {\n // camera.matrix = createOrthographicMatrix(camera.orthographic);\n }\n return camera;\n }\n}\nexport function postProcessGLTF(gltf, options) {\n return new GLTFPostProcessor().postProcess(gltf, options);\n}\n", "// import '@loaders.gl/polyfills';\nimport {parse} from '@loaders.gl/core';\nimport {GLTFLoader, postProcessGLTF} from '@loaders.gl/gltf';\n\nimport {\n ClampToEdgeWrapping,\n LinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n LinesPrimitive,\n MirroredRepeatWrapping,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n PointsPrimitive,\n RepeatWrapping,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport {isString} from \"@xeokit/utils\";\nimport {createMat4, identityMat4, mulMat4, quatToMat4, scalingMat4v, translationMat4v} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneGeometryParams, SceneMeshParams, SceneModel, SceneTextureSetParams} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\n\ninterface ParsingContext {\n gltfData: any;\n nextId: number;\n log: any;\n error: (msg: any) => void;\n dataModel?: DataModel;\n sceneModel?: SceneModel;\n objectCreated: { [key: string]: boolean }\n}\n\n/**\n * Loads glTF file data from an ArrayBuffer into a {@link @xeokit/scene!SceneModel | SceneModel} and/or\n * a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/gltf\" | @xeokit/gltf} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - glTF file data\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into. For glTF, this will create a basic aggregation hierarchy (see {@link \"@xeokit/basictypes/basicTypes\"}).\n * @returns {Promise} Resolves when glTF has been loaded.\n * @returns {Promise} Resolves when glTF has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadGLTF(params: {\n fileData: ArrayBuffer,\n sceneModel: SceneModel,\n dataModel?: DataModel,\n log?: Function\n}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n parse(params.fileData, GLTFLoader, {\n loadImages: false\n }).then((gltfData) => {\n const processedGLTF = postProcessGLTF(gltfData);\n const ctx: ParsingContext = {\n gltfData: processedGLTF,\n nextId: 0,\n log: (params.log || function (msg: string) {\n }),\n error: function (msg) {\n console.error(msg);\n },\n dataModel: params.dataModel,\n sceneModel: params.sceneModel,\n objectCreated: {}\n };\n parseTextures(ctx);\n parseMaterials(ctx);\n parseDefaultScene(ctx);\n resolve();\n }, (errMsg) => {\n reject(new SDKError(`Error parsing glTF: ${errMsg}`));\n });\n });\n}\n\nfunction parseTextures(ctx: any) {\n if (!ctx.sceneModel) {\n return;\n }\n const gltfData = ctx.gltfData;\n const textures = gltfData.textures;\n if (textures) {\n for (let i = 0, len = textures.length; i < len; i++) {\n parseTexture(ctx, textures[i]);\n }\n }\n}\n\nfunction parseTexture(ctx: any, texture: any) {\n if (!texture.source || !texture.source.image) {\n return;\n }\n const textureId = `texture-${ctx.nextId++}`;\n let minFilter = NearestMipMapLinearFilter;\n switch (texture.sampler.minFilter) {\n case 9728:\n minFilter = NearestFilter;\n break;\n case 9729:\n minFilter = LinearFilter;\n break;\n case 9984:\n minFilter = NearestMipMapNearestFilter;\n break;\n case 9985:\n minFilter = LinearMipMapNearestFilter;\n break;\n case 9986:\n minFilter = NearestMipMapLinearFilter;\n break;\n case 9987:\n minFilter = LinearMipMapLinearFilter;\n break;\n }\n let magFilter = LinearFilter;\n switch (texture.sampler.magFilter) {\n case 9728:\n magFilter = NearestFilter;\n break;\n case 9729:\n magFilter = LinearFilter;\n break;\n }\n let wrapS = RepeatWrapping;\n switch (texture.sampler.wrapS) {\n case 33071:\n wrapS = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapS = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapS = RepeatWrapping;\n break;\n }\n let wrapT = RepeatWrapping;\n switch (texture.sampler.wrapT) {\n case 33071:\n wrapT = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapT = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapT = RepeatWrapping;\n break;\n }\n let wrapR = RepeatWrapping;\n switch (texture.sampler.wrapR) {\n case 33071:\n wrapR = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapR = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapR = RepeatWrapping;\n break;\n }\n ctx.sceneModel.createTexture({\n id: textureId,\n imageData: texture.source.image,\n mediaType: texture.source.mediaType,\n compressed: true,\n width: texture.source.image.width,\n height: texture.source.image.height,\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR,\n flipY: !!texture.flipY,\n // encoding: \"sRGB\"\n });\n texture._textureId = textureId;\n}\n\nfunction parseMaterials(ctx: ParsingContext): void {\n if (!ctx.sceneModel) {\n return;\n }\n const gltfData = ctx.gltfData;\n const materials = gltfData.materials;\n if (materials) {\n for (let i = 0, len = materials.length; i < len; i++) {\n const material = materials[i];\n material._textureSetId = parseTextureSet(ctx, material);\n material._attributes = parseMaterialAttributes(ctx, material);\n }\n }\n}\n\nfunction parseTextureSet(ctx: ParsingContext, material: any): null | string {\n // @ts-ignore\n\n const textureSetCfg: SceneTextureSetParams = {\n // @ts-ignore\n id: null,\n occlusionTextureId: undefined,\n emissiveTextureId: undefined,\n colorTextureId: undefined,\n metallicRoughnessTextureId: undefined\n };\n if (material.occlusionTexture) {\n textureSetCfg.occlusionTextureId = material.occlusionTexture.texture._textureId;\n }\n if (material.emissiveTexture) {\n textureSetCfg.emissiveTextureId = material.emissiveTexture.texture._textureId;\n }\n // const alphaMode = material.alphaMode;\n // switch (alphaMode) {\n // case \"NORMAL_OPAQUE\":\n // materialCfg.alphaMode = \"opaque\";\n // break;\n // case \"MASK\":\n // materialCfg.alphaMode = \"mask\";\n // break;\n // case \"BLEND\":\n // materialCfg.alphaMode = \"blend\";\n // break;\n // default:\n // }\n // const alphaCutoff = material.alphaCutoff;\n // if (alphaCutoff !== undefined) {\n // materialCfg.alphaCutoff = alphaCutoff;\n // }\n const metallicPBR = material.pbrMetallicRoughness;\n if (material.pbrMetallicRoughness) {\n const pbrMetallicRoughness = material.pbrMetallicRoughness;\n const baseColorTexture = pbrMetallicRoughness.baseColorTexture || pbrMetallicRoughness.colorTexture;\n if (baseColorTexture) {\n if (baseColorTexture.texture) {\n textureSetCfg.colorTextureId = baseColorTexture.texture._textureId;\n } else {\n textureSetCfg.colorTextureId = ctx.gltfData.textures[baseColorTexture.index]._textureId;\n }\n }\n if (metallicPBR.metallicRoughnessTexture) {\n textureSetCfg.metallicRoughnessTextureId = metallicPBR.metallicRoughnessTexture.texture._textureId;\n }\n }\n const extensions = material.extensions;\n if (extensions) {\n const specularPBR = extensions[\"KHR_materials_pbrSpecularGlossiness\"];\n if (specularPBR) {\n const specularTexture = specularPBR.specularTexture;\n if (specularTexture !== null && specularTexture !== undefined) {\n // textureSetCfg.colorTextureId = ctx.gltfData.textures[specularColorTexture.index]._textureId;\n }\n const specularColorTexture = specularPBR.specularColorTexture;\n if (specularColorTexture !== null && specularColorTexture !== undefined) {\n textureSetCfg.colorTextureId = ctx.gltfData.textures[specularColorTexture.index]._textureId;\n }\n }\n }\n if (textureSetCfg.occlusionTextureId !== undefined ||\n textureSetCfg.emissiveTextureId !== undefined ||\n textureSetCfg.colorTextureId !== undefined ||\n textureSetCfg.metallicRoughnessTextureId !== undefined) {\n textureSetCfg.id = `textureSet-${ctx.nextId++};`\n // @ts-ignore\n ctx.sceneModel.createTextureSet(textureSetCfg);\n return textureSetCfg.id;\n }\n return null;\n}\n\nfunction parseMaterialAttributes(ctx: ParsingContext, material: any): any { // Substitute RGBA for material, to use fast flat shading instead\n const extensions = material.extensions;\n const materialAttributes = {\n color: new Float32Array([1, 1, 1, 1]),\n opacity: 1,\n metallic: 0,\n roughness: 1\n };\n if (extensions) {\n const specularPBR = extensions[\"KHR_materials_pbrSpecularGlossiness\"];\n if (specularPBR) {\n const diffuseFactor = specularPBR.diffuseFactor;\n if (diffuseFactor !== null && diffuseFactor !== undefined) {\n materialAttributes.color.set(diffuseFactor);\n }\n }\n const common = extensions[\"KHR_materials_common\"];\n if (common) {\n const technique = common.technique;\n const values = common.values || {};\n const blinn = technique === \"BLINN\";\n const phong = technique === \"PHONG\";\n const lambert = technique === \"LAMBERT\";\n const diffuse = values.diffuse;\n if (diffuse && (blinn || phong || lambert)) {\n if (!isString(diffuse)) {\n materialAttributes.color.set(diffuse);\n }\n }\n const transparency = values.transparency;\n if (transparency !== null && transparency !== undefined) {\n materialAttributes.opacity = transparency;\n }\n const transparent = values.transparent;\n if (transparent !== null && transparent !== undefined) {\n materialAttributes.opacity = transparent;\n }\n }\n }\n const metallicPBR = material.pbrMetallicRoughness;\n if (metallicPBR) {\n const baseColorFactor = metallicPBR.baseColorFactor;\n if (baseColorFactor) {\n materialAttributes.color[0] = baseColorFactor[0];\n materialAttributes.color[1] = baseColorFactor[1];\n materialAttributes.color[2] = baseColorFactor[2];\n materialAttributes.opacity = baseColorFactor[3];\n }\n const metallicFactor = metallicPBR.metallicFactor;\n if (metallicFactor !== null && metallicFactor !== undefined) {\n materialAttributes.metallic = metallicFactor;\n }\n const roughnessFactor = metallicPBR.roughnessFactor;\n if (roughnessFactor !== null && roughnessFactor !== undefined) {\n materialAttributes.roughness = roughnessFactor;\n }\n }\n return materialAttributes;\n}\n\nfunction parseDefaultScene(ctx: ParsingContext) {\n const gltfData = ctx.gltfData;\n const scene = gltfData.scene || gltfData.scenes[0];\n if (!scene) {\n ctx.error(\"glTF has no default scene\");\n return;\n }\n parseScene(ctx, scene);\n}\n\nfunction parseScene(ctx: ParsingContext, scene: any) {\n const nodes = scene.nodes;\n if (!nodes) {\n return;\n }\n for (let i = 0, len = nodes.length; i < len; i++) {\n const node = nodes[i];\n parseNode(ctx, node, 0, null);\n }\n}\n\nconst deferredMeshIds: string[] = [];\n\nfunction parseNode(ctx: ParsingContext, node: any, depth: number, matrix: null | FloatArrayParam) {\n\n // Pre-order visit scene node\n\n let localMatrix;\n if (node.matrix) {\n localMatrix = node.matrix;\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.translation) {\n localMatrix = translationMat4v(node.translation);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.rotation) {\n localMatrix = quatToMat4(node.rotation);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.scale) {\n localMatrix = scalingMat4v(node.scale);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n\n if (node.mesh) {\n\n const mesh = node.mesh;\n const numPrimitives = mesh.primitives.length;\n\n if (numPrimitives > 0) {\n for (let i = 0; i < numPrimitives; i++) {\n const primitive = mesh.primitives[i];\n if (!primitive._geometryId) {\n const geometryId = \"geometry-\" + ctx.nextId++;\n\n const geometryParams: SceneGeometryParams = {\n id: geometryId,\n primitive: 0,\n // @ts-ignore\n positions: undefined\n };\n switch (primitive.mode) {\n case 0: // POINTS\n geometryParams.primitive = PointsPrimitive;\n break;\n case 1: // LINES\n geometryParams.primitive = LinesPrimitive;\n break;\n case 2: // LINE_LOOP\n geometryParams.primitive = LinesPrimitive;\n break;\n case 3: // LINE_STRIP\n geometryParams.primitive = LinesPrimitive;\n break;\n case 4: // TRIANGLES\n geometryParams.primitive = TrianglesPrimitive;\n break;\n case 5: // TRIANGLE_STRIP\n geometryParams.primitive = TrianglesPrimitive;\n break;\n case 6: // TRIANGLE_FAN\n geometryParams.primitive = TrianglesPrimitive;\n break;\n default:\n geometryParams.primitive = TrianglesPrimitive;\n }\n const POSITION = primitive.attributes.POSITION;\n if (!POSITION) {\n continue;\n }\n geometryParams.positions = primitive.attributes.POSITION.value;\n if (primitive.attributes.COLOR_0) {\n geometryParams.colors = primitive.attributes.COLOR_0.value;\n }\n if (primitive.attributes.TEXCOORD_0) {\n geometryParams.uvs = primitive.attributes.TEXCOORD_0.value;\n }\n if (primitive.indices) {\n geometryParams.indices = primitive.indices.value;\n }\n // @ts-ignore\n ctx.sceneModel.createGeometry(geometryParams);\n primitive._geometryId = geometryId;\n }\n\n const meshId = `${ctx.nextId++}`;\n const meshParams: SceneMeshParams = {\n id: meshId,\n geometryId: primitive._geometryId,\n matrix: matrix ? matrix.slice() : identityMat4(),\n textureSetId: undefined\n };\n const material = primitive.material;\n if (material) {\n // meshParams.textureSetId = material._textureSetId;\n meshParams.color = material._attributes.color;\n meshParams.opacity = material._attributes.opacity;\n // meshParams.metallic = material._attributes.metallic;\n // meshParams.roughness = material._attributes.roughness;\n } else {\n meshParams.color = [1.0, 1.0, 1.0];\n meshParams.opacity = 1.0;\n }\n // @ts-ignore\n ctx.sceneModel.createMesh(meshParams);\n deferredMeshIds.push(meshId);\n }\n }\n }\n\n // Visit child scene nodes\n\n if (node.children) {\n const children = node.children;\n for (let i = 0, len = children.length; i < len; i++) {\n const childNode = children[i];\n parseNode(ctx, childNode, depth + 1, matrix);\n }\n }\n\n // Post-order visit scene node\n\n const nodeName = node.name;\n if (((nodeName !== undefined && nodeName !== null) || depth === 0) && deferredMeshIds.length > 0) {\n if (nodeName === undefined || nodeName === null) {\n ctx.log(`Warning: 'name' properties not found on glTF scene nodes - will randomly-generate object IDs in DTX`);\n }\n let objectId = nodeName; // Fall back on generated ID when `name` not found on glTF scene node(s)\n if (!!objectId && ctx.objectCreated[objectId]) {\n ctx.log(`Warning: Two or more glTF nodes found with same 'name' attribute: '${nodeName} - will randomly-generating an object ID in DTX`);\n }\n while (!objectId || ctx.objectCreated[objectId]) {\n objectId = \"object-\" + ctx.nextId++;\n }\n // @ts-ignore\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: deferredMeshIds\n });\n ctx.objectCreated[objectId] = true;\n deferredMeshIds.length = 0;\n\n }\n}\n\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fxkt.svg)](https://badge.fury.io/js/%40xeokit%2Fxkt)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/xkt/badge)](https://www.jsdelivr.com/package/npm/@xeokit/xkt)\n *\n * \n *\n * # xeokit [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) Importer and Exporter\n *\n * ---\n *\n * ### *Import models as xeokit's native binary [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt), which is xeokit's\n * native runtime asset delivery format for model representations and semantics.\n *\n * The [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) format compresses large double-precision model geometry to\n * a compact payload that loads quickly over the Web into a xeokit viewer running in the browser.\n *\n * To import a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) model into xeokit, use the {@link loadXKT} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * Use the {@link @xeokit/metamodel!loadMetamodel | loadMetamodel} function to load legacy JSON metadata into a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNU01rwzAM_StBpw1a2K6h9DB6W8tKs8EOvqixsro4dvDHIJT-99lx0iaMlubi6El6T0_GJyg1J8ihlGjtSuCPwZopprgwVDqhVbbexbjLZ0VJijahQ2YnprLwCZ5OvT-GepuC0hA6-uigp-eE7b2QfAg4WWd0G8NzZB_4V-iwo7_H3hjdkHFtQff0ErYjidGFPYhmmtleWR4aMQ241si_3z-3GNZkhx0sFk2MyZFZLhOExmD75quKTALsZXM9_eB0Qi8T_ZW48qq7hcg7qivwlx4Z4zFVm9juqE5sM3hhMJ8vGbwyKEYKt6tWV93e4pCZ9OTZlyWbXWzYqD3xelP7dtVIuzd66R_3_NOGGdRkahQ8PI9uNQzcgWpikIdfThV66RiEFYVS9E4XrSohd8bTDHwTdk39g4K8QmkDSlw4bTb9k4vH-Q8aQzAW?type=png)](https://mermaid.live/edit#pako:eNqNU01rwzAM_StBpw1a2K6h9DB6W8tKs8EOvqixsro4dvDHIJT-99lx0iaMlubi6El6T0_GJyg1J8ihlGjtSuCPwZopprgwVDqhVbbexbjLZ0VJijahQ2YnprLwCZ5OvT-GepuC0hA6-uigp-eE7b2QfAg4WWd0G8NzZB_4V-iwo7_H3hjdkHFtQff0ErYjidGFPYhmmtleWR4aMQ241si_3z-3GNZkhx0sFk2MyZFZLhOExmD75quKTALsZXM9_eB0Qi8T_ZW48qq7hcg7qivwlx4Z4zFVm9juqE5sM3hhMJ8vGbwyKEYKt6tWV93e4pCZ9OTZlyWbXWzYqD3xelP7dtVIuzd66R_3_NOGGdRkahQ8PI9uNQzcgWpikIdfThV66RiEFYVS9E4XrSohd8bTDHwTdk39g4K8QmkDSlw4bTb9k4vH-Q8aQzAW)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/xkt\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/xkt!loadXKT | loadXKT} to load\n * a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadXKT} from \"@xeokit/xkt\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.xkt\").then(response => {\n * response.arrayBuffer().then(fileData => {\n *\n * loadXKT({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading XKT: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/xkt\n */\nexport * from \"./loadXKT\";\nexport * from \"./loadXKTManifest\";\n", "import type {XKTDataDeflated} from \"./XKTDataDeflated\";\nimport type {XKTData} from \"./XKTData\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function inflateXKT(xktDataDeflated: XKTDataDeflated): XKTData {\n\n function inflate(array: any, options?: any) : Buffer{\n // @ts-ignore\n return (array.length === 0) ? [] : pako.inflate(array, options).buffer;\n }\n\n\n return {\n metadata: JSON.parse(pako.inflate(xktDataDeflated.metadata, {to: 'string'})),\n textureData: new Uint8Array(inflate(xktDataDeflated.textureData)), // <<----------------------------- ??? ZIPPing to blame?\n eachTextureDataPortion: new Uint32Array(inflate(xktDataDeflated.eachTextureDataPortion)),\n eachTextureAttributes: new Uint16Array(inflate(xktDataDeflated.eachTextureAttributes)),\n positions: new Uint16Array(inflate(xktDataDeflated.positions)),\n normals: new Int8Array(inflate(xktDataDeflated.normals)),\n colors: new Uint8Array(inflate(xktDataDeflated.colors)),\n uvs: new Float32Array(inflate(xktDataDeflated.uvs)),\n indices: new Uint32Array(inflate(xktDataDeflated.indices)),\n edgeIndices: new Uint32Array(inflate(xktDataDeflated.edgeIndices)),\n eachTextureSetTextures: new Int32Array(inflate(xktDataDeflated.eachTextureSetTextures)),\n matrices: new Float32Array(inflate(xktDataDeflated.matrices)),\n reusedGeometriesDecodeMatrix: new Float32Array(inflate(xktDataDeflated.reusedGeometriesDecodeMatrix)),\n eachGeometryPrimitiveType: new Uint8Array(inflate(xktDataDeflated.eachGeometryPrimitiveType)),\n eachGeometryPositionsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryPositionsPortion)),\n eachGeometryNormalsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryNormalsPortion)),\n eachGeometryColorsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryColorsPortion)),\n eachGeometryUVsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryUVsPortion)),\n eachGeometryIndicesPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryIndicesPortion)),\n eachGeometryEdgeIndicesPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryEdgeIndicesPortion)),\n eachMeshGeometriesPortion: new Uint32Array(inflate(xktDataDeflated.eachMeshGeometriesPortion)),\n eachMeshMatricesPortion: new Uint32Array(inflate(xktDataDeflated.eachMeshMatricesPortion)),\n eachMeshTextureSet: new Int32Array(inflate(xktDataDeflated.eachMeshTextureSet)), // Can be -1\n eachMeshMaterialAttributes: new Uint8Array(inflate(xktDataDeflated.eachMeshMaterialAttributes)),\n eachEntityId: JSON.parse(pako.inflate(xktDataDeflated.eachEntityId, {to: 'string'})),\n eachEntityMeshesPortion: new Uint32Array(inflate(xktDataDeflated.eachEntityMeshesPortion)),\n eachTileAABB: new Float64Array(inflate(xktDataDeflated.eachTileAABB)),\n eachTileEntitiesPortion: new Uint32Array(inflate(xktDataDeflated.eachTileEntitiesPortion)),\n };\n}\n", "import type {XKTDataDeflated} from \"./XKTDataDeflated\";\n\n/**\n * @private\n */\nexport function unpackXKT(arrayBuffer: ArrayBuffer): XKTDataDeflated {\n\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const xktVersion = dataView.getUint32(0, true);\n const numElements = dataView.getUint32(4, true);\n\n console.log(`Parsing XKT v${xktVersion}`)\n const elements = [];\n let byteOffset = (numElements + 2) * 4;\n for (let i = 0; i < numElements; i++) {\n const elementSize = dataView.getUint32((i + 2) * 4, true);\n elements.push(dataArray.subarray(byteOffset, byteOffset + elementSize));\n byteOffset += elementSize;\n }\n\n let i = 0;\n\n return {\n metadata: elements[i++],\n textureData: elements[i++],\n eachTextureDataPortion: elements[i++],\n eachTextureAttributes: elements[i++],\n positions: elements[i++],\n normals: elements[i++],\n colors: elements[i++],\n uvs: elements[i++],\n indices: elements[i++],\n edgeIndices: elements[i++],\n eachTextureSetTextures: elements[i++],\n matrices: elements[i++],\n reusedGeometriesDecodeMatrix: elements[i++],\n eachGeometryPrimitiveType: elements[i++],\n eachGeometryPositionsPortion: elements[i++],\n eachGeometryNormalsPortion: elements[i++],\n eachGeometryColorsPortion: elements[i++],\n eachGeometryUVsPortion: elements[i++],\n eachGeometryIndicesPortion: elements[i++],\n eachGeometryEdgeIndicesPortion: elements[i++],\n eachMeshGeometriesPortion: elements[i++],\n eachMeshMatricesPortion: elements[i++],\n eachMeshTextureSet: elements[i++],\n eachMeshMaterialAttributes: elements[i++],\n eachEntityId: elements[i++],\n eachEntityMeshesPortion: elements[i++],\n eachTileAABB: elements[i++],\n eachTileEntitiesPortion: elements[i++],\n };\n}\n", "import {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n JPEGMediaType,\n PNGMediaType\n} from \"@xeokit/constants\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {XKTData} from \"./XKTData\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createVec3, createVec4} from \"@xeokit/matrix\";\nimport {createAABB3, getAABB3Center} from \"@xeokit/boundaries\";\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\nconst NUM_TEXTURE_ATTRIBUTES = 9;\n\nfunction lineStripToLines(positions, indices) {\n const linesIndices = [];\n if (indices.length > 1) {\n for (let i = 0, len = indices.length - 1; i < len; i++) {\n linesIndices.push(indices[i]);\n linesIndices.push(indices[i + 1]);\n }\n } else if (positions.length > 1) {\n for (let i = 0, len = (positions.length / 3) - 1; i < len; i++) {\n linesIndices.push(i);\n linesIndices.push(i + 1);\n }\n }\n return linesIndices;\n}\n\nconst decompressColor = (function () {\n const floatColor = new Float32Array(3);\n return function (intColor: FloatArrayParam) {\n floatColor[0] = intColor[0] / 255;\n floatColor[1] = intColor[1] / 255;\n floatColor[2] = intColor[2] / 255;\n return floatColor;\n };\n})();\n\n/**\n * @private\n */\nexport function xktToModel(params: {\n xktData: XKTData,\n sceneModel: SceneModel\n}): void {\n\n let nextId = 0;\n\n const getNextId = () => {\n return `${nextId++}`;\n };\n\n const xktData = params.xktData;\n const sceneModel = params.sceneModel;\n\n const modelPartId = getNextId();\n\n // const metadata = xktData.metadata;\n const textureData = xktData.textureData;\n const eachTextureDataPortion = xktData.eachTextureDataPortion;\n const eachTextureAttributes = xktData.eachTextureAttributes;\n const positions = xktData.positions;\n const normals = xktData.normals;\n const colors = xktData.colors;\n const uvs = xktData.uvs;\n const indices = xktData.indices;\n const edgeIndices = xktData.edgeIndices;\n const eachTextureSetTextures = xktData.eachTextureSetTextures;\n const matrices = xktData.matrices;\n const reusedGeometriesDecodeMatrix = xktData.reusedGeometriesDecodeMatrix;\n const eachGeometryPrimitiveType = xktData.eachGeometryPrimitiveType;\n const eachGeometryPositionsPortion = xktData.eachGeometryPositionsPortion;\n const eachGeometryNormalsPortion = xktData.eachGeometryNormalsPortion;\n const eachGeometryColorsPortion = xktData.eachGeometryColorsPortion;\n const eachGeometryUVsPortion = xktData.eachGeometryUVsPortion;\n const eachGeometryIndicesPortion = xktData.eachGeometryIndicesPortion;\n const eachGeometryEdgeIndicesPortion = xktData.eachGeometryEdgeIndicesPortion;\n const eachMeshGeometriesPortion = xktData.eachMeshGeometriesPortion;\n const eachMeshMatricesPortion = xktData.eachMeshMatricesPortion;\n const eachMeshTextureSet = xktData.eachMeshTextureSet;\n const eachMeshMaterialAttributes = xktData.eachMeshMaterialAttributes;\n const eachEntityId = xktData.eachEntityId;\n const eachEntityMeshesPortion = xktData.eachEntityMeshesPortion;\n const eachTileAABB = xktData.eachTileAABB;\n const eachTileEntitiesPortion = xktData.eachTileEntitiesPortion;\n\n const numTextures = eachTextureDataPortion.length;\n const numTextureSets = eachTextureSetTextures.length / 5;\n const numGeometries = eachGeometryPositionsPortion.length;\n const numMeshes = eachMeshGeometriesPortion.length;\n const numEntities = eachEntityMeshesPortion.length;\n const numTiles = eachTileEntitiesPortion.length;\n\n // if (metaModel) {\n // metaModel.loadData(metadata, {\n // includeTypes: options.includeTypes,\n // excludeTypes: options.excludeTypes,\n // globalizeObjectIds: options.globalizeObjectIds\n // }); // Can be empty\n // }\n\n // Create textures\n\n for (let textureIndex = 0; textureIndex < numTextures; textureIndex++) {\n const atLastTexture = (textureIndex === (numTextures - 1));\n const textureDataPortionStart = eachTextureDataPortion[textureIndex];\n const textureDataPortionEnd = atLastTexture ? textureData.length : (eachTextureDataPortion[textureIndex + 1]);\n\n const textureDataPortionSize = textureDataPortionEnd - textureDataPortionStart;\n const textureDataPortionExists = (textureDataPortionSize > 0);\n\n const textureAttrBaseIdx = (textureIndex * NUM_TEXTURE_ATTRIBUTES);\n\n const compressed = (eachTextureAttributes[textureAttrBaseIdx + 0] === 1);\n const mediaType = eachTextureAttributes[textureAttrBaseIdx + 1];\n const width = eachTextureAttributes[textureAttrBaseIdx + 2];\n const height = eachTextureAttributes[textureAttrBaseIdx + 3];\n const minFilter = eachTextureAttributes[textureAttrBaseIdx + 4];\n const magFilter = eachTextureAttributes[textureAttrBaseIdx + 5]; // LinearFilter | NearestFilter\n const wrapS = eachTextureAttributes[textureAttrBaseIdx + 6]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n const wrapT = eachTextureAttributes[textureAttrBaseIdx + 7]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n const wrapR = eachTextureAttributes[textureAttrBaseIdx + 8]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n\n if (textureDataPortionExists) {\n\n const imageDataSubarray = new Uint8Array(textureData.subarray(textureDataPortionStart, textureDataPortionEnd));\n const arrayBuffer = imageDataSubarray.buffer;\n const textureId = `${modelPartId}-texture-${textureIndex}`;\n\n if (compressed) {\n\n sceneModel.createTexture({\n id: textureId,\n buffers: [arrayBuffer],\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR\n });\n\n } else {\n\n const mimeType = mediaType === JPEGMediaType ? \"image/jpeg\" : (mediaType === PNGMediaType ? \"image/png\" : \"image/gif\");\n const blob = new Blob([arrayBuffer], {type: mimeType});\n const urlCreator = window.URL || window.webkitURL;\n const imageUrl = urlCreator.createObjectURL(blob);\n const img = document.createElement('img');\n img.src = imageUrl;\n\n sceneModel.createTexture({\n id: textureId,\n image: img,\n //mediaType,\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR\n });\n }\n }\n }\n\n // Create texture sets\n\n for (let textureSetIndex = 0; textureSetIndex < numTextureSets; textureSetIndex++) {\n const eachTextureSetTexturesIndex = textureSetIndex * 5;\n const textureSetId = `${modelPartId}-textureSet-${textureSetIndex}`;\n const colorTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 0];\n const metallicRoughnessTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 1];\n const normalsTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 2];\n const emissiveTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 3];\n const occlusionTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 4];\n sceneModel.createTextureSet({\n id: textureSetId,\n colorTextureId: colorTextureIndex >= 0 ? `${modelPartId}-texture-${colorTextureIndex}` : null,\n normalsTextureId: normalsTextureIndex >= 0 ? `${modelPartId}-texture-${normalsTextureIndex}` : null,\n metallicRoughnessTextureId: metallicRoughnessTextureIndex >= 0 ? `${modelPartId}-texture-${metallicRoughnessTextureIndex}` : null,\n emissiveTextureId: emissiveTextureIndex >= 0 ? `${modelPartId}-texture-${emissiveTextureIndex}` : null,\n occlusionTextureId: occlusionTextureIndex >= 0 ? `${modelPartId}-texture-${occlusionTextureIndex}` : null\n });\n }\n\n // Count instances of each geometry\n\n const geometryReuseCounts = new Uint32Array(numGeometries);\n\n for (let meshIndex = 0; meshIndex < numMeshes; meshIndex++) {\n const geometryIndex = eachMeshGeometriesPortion[meshIndex];\n if (geometryReuseCounts[geometryIndex] !== undefined) {\n geometryReuseCounts[geometryIndex]++;\n } else {\n geometryReuseCounts[geometryIndex] = 1;\n }\n }\n\n // Iterate over tiles\n\n const tileCenter = createVec3();\n const rtcAABB = createAABB3();\n\n const geometryArraysCache = {};\n\n for (let tileIndex = 0; tileIndex < numTiles; tileIndex++) {\n\n const lastTileIndex = (numTiles - 1);\n\n const atLastTile = (tileIndex === lastTileIndex);\n\n const firstTileEntityIndex = eachTileEntitiesPortion [tileIndex];\n const lastTileEntityIndex = atLastTile ? (numEntities - 1) : (eachTileEntitiesPortion[tileIndex + 1] - 1);\n\n const tileAABBIndex = tileIndex * 6;\n const tileAABB = eachTileAABB.subarray(tileAABBIndex, tileAABBIndex + 6);\n\n getAABB3Center(tileAABB, tileCenter);\n\n rtcAABB[0] = tileAABB[0] - tileCenter[0];\n rtcAABB[1] = tileAABB[1] - tileCenter[1];\n rtcAABB[2] = tileAABB[2] - tileCenter[2];\n rtcAABB[3] = tileAABB[3] - tileCenter[0];\n rtcAABB[4] = tileAABB[4] - tileCenter[1];\n rtcAABB[5] = tileAABB[5] - tileCenter[2];\n\n const geometryCreatedInTile = {};\n\n // Iterate over each tile's entities\n\n for (let tileEntityIndex = firstTileEntityIndex; tileEntityIndex <= lastTileEntityIndex; tileEntityIndex++) {\n\n const xktEntityId = eachEntityId[tileEntityIndex];\n\n const entityId = xktEntityId;\n\n const finalTileEntityIndex = (numEntities - 1);\n const atLastTileEntity = (tileEntityIndex === finalTileEntityIndex);\n const firstMeshIndex = eachEntityMeshesPortion [tileEntityIndex];\n const lastMeshIndex = atLastTileEntity ? (eachMeshGeometriesPortion.length - 1) : (eachEntityMeshesPortion[tileEntityIndex + 1] - 1);\n\n const meshIds = [];\n\n // Iterate each entity's meshes\n\n for (let meshIndex = firstMeshIndex; meshIndex <= lastMeshIndex; meshIndex++) {\n\n const geometryIndex = eachMeshGeometriesPortion[meshIndex];\n const geometryReuseCount = geometryReuseCounts[geometryIndex];\n const isReusedGeometry = (geometryReuseCount > 1);\n\n const atLastGeometry = (geometryIndex === (numGeometries - 1));\n\n const textureSetIndex = eachMeshTextureSet[meshIndex];\n\n const textureSetId = (textureSetIndex >= 0) ? `${modelPartId}-textureSet-${textureSetIndex}` : null;\n\n const meshColor = decompressColor(eachMeshMaterialAttributes.subarray((meshIndex * 6), (meshIndex * 6) + 3));\n const meshOpacity = eachMeshMaterialAttributes[(meshIndex * 6) + 3] / 255.0;\n const meshMetallic = eachMeshMaterialAttributes[(meshIndex * 6) + 4] / 255.0;\n const meshRoughness = eachMeshMaterialAttributes[(meshIndex * 6) + 5] / 255.0;\n\n const meshId = getNextId();\n\n if (isReusedGeometry) {\n\n // Create mesh for multi-use geometry - create (or reuse) geometry, create mesh using that geometry\n\n const meshMatrixIndex = eachMeshMatricesPortion[meshIndex];\n const meshMatrix = matrices.slice(meshMatrixIndex, meshMatrixIndex + 16);\n\n const geometryId = `${modelPartId}-geometry.${tileIndex}.${geometryIndex}`; // These IDs are local to the SceneModel\n\n let geometryArrays = geometryArraysCache[geometryId];\n\n if (!geometryArrays) {\n geometryArrays = {};\n const primitiveType = eachGeometryPrimitiveType[geometryIndex];\n let geometryValid = false;\n switch (primitiveType) {\n case 0:\n geometryArrays.primitiveName = SolidPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryArrays.geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryArrays.geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 1:\n geometryArrays.primitiveName = SurfacePrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryArrays.geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryArrays.geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 2:\n geometryArrays.primitiveName = PointsPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryColors = colors.subarray(eachGeometryColorsPortion [geometryIndex], atLastGeometry ? colors.length : eachGeometryColorsPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0);\n break;\n case 3:\n geometryArrays.primitiveName = LinesPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 4:\n geometryArrays.primitiveName = LinesPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = lineStripToLines(\n geometryArrays.geometryPositions,\n indices.subarray(eachGeometryIndicesPortion [geometryIndex],\n atLastGeometry\n ? indices.length\n : eachGeometryIndicesPortion [geometryIndex + 1]));\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n default:\n continue;\n }\n\n if (!geometryValid) {\n geometryArrays = null;\n }\n }\n\n if (geometryArrays) {\n\n if (!geometryCreatedInTile[geometryId]) {\n\n sceneModel.createGeometryCompressed({\n id: geometryId,\n primitive: geometryArrays.primitiveName,\n positionsCompressed: geometryArrays.geometryPositions,\n uvsCompressed: geometryArrays.geometryUVs,\n colorsCompressed: geometryArrays.geometryColors,\n indices: geometryArrays.geometryIndices,\n edgeIndices: geometryArrays.geometryEdgeIndices,\n\n aabb: rtcAABB\n });\n\n geometryCreatedInTile[geometryId] = true;\n }\n\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n textureSetId,\n matrix: meshMatrix,\n color: meshColor,\n opacity: meshOpacity,\n\n ///////////////////////////////////\n // Adjust matrix?\n /////////////////////////////////////\n // origin: tileCenter\n });\n\n meshIds.push(meshId);\n }\n\n } else { // Do not reuse geometry\n\n const primitiveType = eachGeometryPrimitiveType[geometryIndex];\n\n let primitiveName;\n let geometryPositions;\n let geometryNormals;\n let geometryUVs;\n let geometryColors;\n let geometryIndices;\n let geometryEdgeIndices;\n let geometryValid = false;\n\n switch (primitiveType) {\n case 0:\n primitiveName = SolidPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 1:\n primitiveName = SurfacePrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 2:\n primitiveName = PointsPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryColors = colors.subarray(eachGeometryColorsPortion [geometryIndex], atLastGeometry ? colors.length : eachGeometryColorsPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0);\n break;\n case 3:\n primitiveName = LinesPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 4:\n primitiveName = LinesPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryIndices = lineStripToLines(\n geometryPositions,\n indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry\n ? indices.length\n : eachGeometryIndicesPortion [geometryIndex + 1]));\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n default:\n continue;\n }\n\n if (geometryValid) {\n\n const geometryId = getNextId();\n\n sceneModel.createGeometryCompressed({\n id: geometryId,\n primitive: primitiveName,\n positionsCompressed: geometryPositions,\n uvsCompressed: geometryUVs && geometryUVs.length > 0 ? geometryUVs : null,\n colorsCompressed: geometryColors,\n indices: geometryIndices,\n edgeIndices: geometryEdgeIndices,\n aabb: rtcAABB\n });\n\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n textureSetId,\n // origin: tileCenter,\n color: meshColor,\n metallic: meshMetallic,\n roughness: meshRoughness,\n opacity: meshOpacity\n });\n meshIds.push(meshId);\n }\n }\n }\n\n if (meshIds.length > 0) {\n\n sceneModel.createObject({\n id: entityId,\n meshIds: meshIds\n });\n }\n }\n }\n}\n\n\n\n", "import {inflateXKT} from \"./inflateXKT\";\nimport {unpackXKT} from \"./unpackXKT\";\nimport {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {xktToModel} from \"./xktToModel\";\n\nexport function parseXKTv10(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n xktToModel({\n xktData: inflateXKT(unpackXKT(fileData)),\n sceneModel\n });\n return Promise.resolve();\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {parseXKTv10} from \"./versions/v10/parseXKT\"\n\nconst parsers = {\n 10: parseXKTv10\n};\n\n/**\n * Imports [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data from an ArrayBuffer\n * into a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and\n * {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/xkt\" | @xeokit/xkt} for usage.\n *\n * See {@link @xeokit/xkt!XKTData} for insights into the structure of a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data\n * @param params.sceneModel - SceneModel to load into.\n * @returns {Promise} Resolves when [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n */\nexport function loadXKT(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n return parseXKTv10(params);\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {IfcRelAggregates, ifcTypeCodes} from \"@xeokit/ifctypes\";\n\n\n/**\n * Imports [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) metadata\n * into a {@link @xeokit/scene!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!DataModel.built | DataModel.built} and\n * {@link @xeokit/scene!DataModel.destroyed | DataModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/xkt\" | @xeokit/xkt} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data\n * @param params.dataModel - DataModel to load into.\n * @returns {Promise} Resolves when metadata has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadMetamodel(params: {\n fileData: any;\n dataModel: DataModel;\n}): Promise {\n if (!params) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Argument expected: params\"));\n }\n const {fileData, dataModel} = params;\n if (!fileData) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Parameter expected: params.fileData\"));\n }\n if (!dataModel) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Parameter expected: params.dataModel\"));\n }\n if (dataModel.destroyed) {\n return Promise.reject(new SDKError(\"DataModel already destroyed\"));\n }\n if (dataModel.built) {\n return Promise.reject(new SDKError(\"DataModel already built\"));\n }\n //////////////////////////////////\n // TODO: Property set decompression\n //////////////////////////////////\n if (fileData.propertySets) {\n for (let i = 0, len = fileData.propertySets.length; i < len; i++) {\n const propertySetData = fileData.propertySets[i];\n if (!propertySetData.properties) { // HACK: https://github.com/Creoox/creoox-ifc2gltfcxconverter/issues/8\n propertySetData.properties = [];\n }\n let propertySet = dataModel.propertySets[propertySetData.id];\n if (!propertySet) {\n dataModel.createPropertySet({\n id: propertySetData.id,\n type: propertySetData.type,\n name: propertySetData.name,\n\n /////////////////////////////////////////\n // FIXME: Properties not translated right here\n /////////////////////////////////////////\n\n properties: propertySetData.properties\n });\n }\n }\n }\n if (fileData.metaObjects) {\n for (let i = 0, len = fileData.metaObjects.length; i < len; i++) {\n const metaObjectData = fileData.metaObjects[i];\n const id = metaObjectData.id;\n\n let dataObject = dataModel.objects[id];\n if (!dataObject) {\n const originalSystemId = metaObjectData.originalSystemId;\n const propertySetIds = metaObjectData.propertySets || metaObjectData.propertySetIds;\n const type = ifcTypeCodes[metaObjectData.type];\n dataModel.createObject({\n id,\n originalSystemId,\n type,\n name: metaObjectData.name,\n propertySetIds\n });\n if (metaObjectData.parent) {\n dataModel.createRelationship({\n relatingObjectId: metaObjectData.parent,\n relatedObjectId: id,\n type: IfcRelAggregates\n })\n }\n }\n }\n }\n return Promise.resolve();\n}\n", "import {SceneModel} from \"@xeokit/scene\";\nimport {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {loadXKT} from \"./loadXKT\";\nimport {loadMetamodel} from \"@xeokit/metamodel\";\n\n/**\n *\n */\nexport interface XKTManifest {\n xktFiles: string[],\n metaModelFiles?: string []\n}\n\n/**\n *\n * @param params\n */\nexport function loadXKTManifest(params: {\n src?: string,\n manifest?: XKTManifest,\n sceneModel: SceneModel,\n dataModel: DataModel\n}) {\n return new Promise((resolve, reject) => {\n\n if (!params) {\n return reject(new SDKError(\"[loadXKTChunks] Argument expected: params\"));\n }\n\n const sceneModel = params.sceneModel;\n if (!sceneModel) {\n return reject(new SDKError(\"[loadXKTChunks] Parameter expected: sceneModel\"));\n }\n\n const dataModel = params.dataModel;\n if (!params.manifest && !params.src) {\n return reject(new SDKError(\"[loadXKTChunks] Parameter expected: manifest or src\"));\n }\n\n if (params.src) {\n const baseDir = getBaseDirectory(params.src);\n\n fetch(params.src).then(response => {\n response.json().then(manifest => {\n\n const xktFiles = manifest.xktFiles;\n const metaModelFiles = manifest.metaModelFiles;\n\n const loadXKTFiles = (done: () => void) => {\n let i = 0;\n const loadNextXKT = () => {\n if (sceneModel.destroyed) {\n done();\n } else if (i >= xktFiles.length) {\n done();\n } else {\n fetch(`${baseDir}${xktFiles[i]}`).then(response => {\n response.arrayBuffer().then(fileData => {\n loadXKT({\n fileData,\n sceneModel\n }).then(() => {\n i++;\n loadNextXKT();\n }).catch((error) => {\n reject(`[loadXKTChunks] Error loading XKT file: ${error}`);\n })\n });\n });\n }\n }\n loadNextXKT();\n }\n\n const loadMetaModelFiles = (done: () => void) => {\n let i = 0;\n const loadNextMetaModelFile = () => {\n if (dataModel.destroyed) {\n done();\n } else if (i >= metaModelFiles.length) {\n done();\n } else {\n fetch(`${baseDir}${metaModelFiles[i]}`).then(response => {\n response.json().then(fileData => {\n loadMetamodel({\n fileData,\n dataModel\n }).then(() => {\n i++;\n loadNextMetaModelFile();\n }).catch((error) => {\n reject(`[loadXKTChunks] Error loading XKT metadata file: ${error}`);\n })\n });\n });\n }\n }\n loadNextMetaModelFile();\n }\n\n if (xktFiles && metaModelFiles) {\n loadXKTFiles(() => {\n loadMetaModelFiles(() => {\n resolve();\n });\n });\n } else if (xktFiles) {\n loadXKTFiles(() => {\n resolve();\n });\n } else if (metaModelFiles) {\n loadMetaModelFiles(() => {\n resolve();\n });\n } else {\n resolve();\n }\n });\n });\n }\n });\n}\n\n\nfunction getBaseDirectory(filePath) {\n const pathArray = filePath.split('/');\n pathArray.pop(); // Remove the file name or the last segment of the path\n return pathArray.join('/') + '/';\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fviewer.svg)](https://badge.fury.io/js/%40xeokit%2Fviewer)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/viewer/badge)](https://www.jsdelivr.com/package/npm/@xeokit/viewer)\n *\n * \n *\n * # xeokit Scene Viewer\n *\n * ---\n *\n * ### *The SDK's browser-based 3D/2D scene viewer*\n *\n * ---\n *\n * ## Features\n *\n * * Use a {@link @xeokit/viewer!Viewer | Viewer} to interactively view a {@link @xeokit/scene!Scene | Scene} in all major browsers, including mobile.\n * * A Viewer has a {@link @xeokit/viewer!Renderer}, which is a pluggable strategy that adapts the Viewer to use various browser graphics APIs. Currently we have two\n * Renderer implementations:\n * {@link @xeokit/webglrenderer!WebGLRenderer} and WebGPURenderer.\n * * A Viewer can have multiple {@link @xeokit/viewer!View | Views}, each providing an independently configurable view of the Scene in a separate HTML canvas.\n * * Each View has a {@link @xeokit/viewer!ViewObject} for each of the {@link @xeokit/scene!SceneObject | SceneObjects} in the Scene, which represnts and controls that\n * SceneObject's appearance in the View's canvas.\n * The View creates and destroys its ViewObjects automatically, in order to proxy the SceneObjects.\n * * Each View also has it's own {@link @xeokit/viewer!Camera}, {@link @xeokit/viewer!DirLight | Lights} and {@link @xeokit/viewer!SectionPlane | SectionPlanes}.\n * * Each View can optionally organize its ViewObjects into {@link @xeokit/viewer!ViewLayer | ViewLayers}. These allow us to partition our ViewObjects into\n * different *bins* depending on what they represent in the View, and then conveniently focus our updates (toggle visibility, select, highlight, slice etc.)\n * eon certain bins, exclusively. ViewLayers also allow us to restrict which SceneObjects are renderable in the Viewer's [phycially-based](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#pbr)\n * quality rendering mode. This allows us to disable wasteful quality rendering for objects that are not supposed to appear realistic, such as grids and other 3D helper objects.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNVU1v4jAQ_SuRT7srQKRAgKjiQqXdA6iI7oe0ysVJpsWtY2cdhy2l_Pd1_JEmkK7KJWbemzdj541zRAlPAYUoobgobgh-EDiLWEoEJJJw5q22EdOY95PAXxDeMWKe-QlgKQgQJlAkwMAs94pZmGUiAEuoUj99NpGInZqKTi_BbI9tEo8fVXWngDMQ2Kwpedi5eGEa3FDMwIYoPoBoFV5VEVfZhO4aeW1kValXoVaDWsJ1SdKODv-UmBJ52OrjOMu-1cTz9D0pSEzBbYQqClhop5rQ23SBZ6EasOuEUy7Ii01MKMlzXOvkJHl6-4dxHDd6WepTdH3AATx7ZJw_mVWZWxnBH80RNdKbh-ZEcl54VkXZpfleb4jQZ-mYFeyoegstF2ytjTT7-hrHhRQ4kYtFg_ML4q-rFrG5t7KQPNvUfbuyGZaCPDd3UVm0RpXvaafhtBnWFVz7gwIWLWdoKc35rzWMljGBE4tLQlP3JwW1W3641L40jsIjZoYwQn6E-v2Ffm7rMewA78xUmkcNfLGAKfIurPdnUbN-V-G8tMKrUGivgmp9AZrcsD6wt5imtLZgucosuYACmCw8wrxv39er-uborKGnN3QXQx2J0HAw-EA7rbNc2pvoopDze-jupwtGc34iZoWa2hvVX16R9t34rZA73omcuz9i9Zxcv_b7Z6MTeiTLKWTVCXYxNz8-RF3z5OkdYvO-WXKm3F2PiP4waCO34NbL8M3LQD2kGBkmqfo26fQIyZ2qEaFQLVO4xyVVPlFqiopLye8OLEHhPaYF9FCZp2ru7OesjkJKJBdr-8GrHj2UY4bCI3pGoT-dD4JgOJv644nvj-ejWQ8dUDgKZoPRfDjxx1fB_Go6np166IVzpTocTILJVGGjSTAMRrPxSMv91qAUJZz-AZsUb1U?type=png)](https://mermaid.live/edit#pako:eNqNVU1v4jAQ_SuRT7srQKRAgKjiQqXdA6iI7oe0ysVJpsWtY2cdhy2l_Pd1_JEmkK7KJWbemzdj541zRAlPAYUoobgobgh-EDiLWEoEJJJw5q22EdOY95PAXxDeMWKe-QlgKQgQJlAkwMAs94pZmGUiAEuoUj99NpGInZqKTi_BbI9tEo8fVXWngDMQ2Kwpedi5eGEa3FDMwIYoPoBoFV5VEVfZhO4aeW1kValXoVaDWsJ1SdKODv-UmBJ52OrjOMu-1cTz9D0pSEzBbYQqClhop5rQ23SBZ6EasOuEUy7Ii01MKMlzXOvkJHl6-4dxHDd6WepTdH3AATx7ZJw_mVWZWxnBH80RNdKbh-ZEcl54VkXZpfleb4jQZ-mYFeyoegstF2ytjTT7-hrHhRQ4kYtFg_ML4q-rFrG5t7KQPNvUfbuyGZaCPDd3UVm0RpXvaafhtBnWFVz7gwIWLWdoKc35rzWMljGBE4tLQlP3JwW1W3641L40jsIjZoYwQn6E-v2Ffm7rMewA78xUmkcNfLGAKfIurPdnUbN-V-G8tMKrUGivgmp9AZrcsD6wt5imtLZgucosuYACmCw8wrxv39er-uborKGnN3QXQx2J0HAw-EA7rbNc2pvoopDze-jupwtGc34iZoWa2hvVX16R9t34rZA73omcuz9i9Zxcv_b7Z6MTeiTLKWTVCXYxNz8-RF3z5OkdYvO-WXKm3F2PiP4waCO34NbL8M3LQD2kGBkmqfo26fQIyZ2qEaFQLVO4xyVVPlFqiopLye8OLEHhPaYF9FCZp2ru7OesjkJKJBdr-8GrHj2UY4bCI3pGoT-dD4JgOJv644nvj-ejWQ8dUDgKZoPRfDjxx1fB_Go6np166IVzpTocTILJVGGjSTAMRrPxSMv91qAUJZz-AZsUb1U)\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/viewer\n * ````\n *\n * ## Usage\n *\n * * [Creating a Viewer](#creating-a-viewer)\n * * [Creating a View](#creating-a-view)\n * * [Adding a CameraControl](#adding-a-cameracontrol)\n * * [Creating a SceneModel](#creating-a-scene)\n * * [Showing and Hiding Objects](#showing-and-hiding-objects)\n * * [Highlighting, Selecting and X-Raying Objects](#highlighting-selecting-and-x-raying-objects)\n * * [Creating a Second View](#creating-a-second-view)\n * * [Slicing Objects](#slicing-objects)\n * * [Adding a ViewLayer](#adding-a-viewlayer)\n *\n * ### Creating a Viewer\n *\n * Install these NPM modules:\n *\n * ````bash\n * npm install @xeokit/scene\n * npm install @xeokit/viewer\n * npm install @xeokit/ktx2\n * npm install @xeokit/webglrenderer\n * npm install @xeokit/constants\n * npm install @xeokit/cameracontrol\n * ````\n *\n * In our JavaScript, import the modules:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {TrianglesPrimitive, LinearEncoding, LinearFilter} from \"@xeokit/constants\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * ````\n *\n * Create a {@link @xeokit/scene!Scene | Scene} to hold our scene graph:\n *\n * ````javascript\n * const scene = new Scene();\n * ````\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer} to view our Scene.\n *\n * We'll configured it with\n * a {@link @xeokit/webglrenderer!WebGLRenderer}, which will adapt the Viewer to use the browser's WebGL graphics API.\n * We'll also equip our WebGLRenderer with a {@link @xeokit/ktx2!KTX2TextureTranscoder} so we that we can view compressed textures.\n *\n * ````javascript\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderers: new WebGLRenderer({\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional, this is the default\n * transcoderPath: \"./../dist/basis/\" // Optional, defaults to CDN\n * })\n * })\n * });\n * ````\n *\n * ### Creating a View\n *\n * Within our Viewer, create a {@link @xeokit/viewer!View} and arrange its {@link @xeokit/viewer!Camera}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * ### Adding a CameraControl\n *\n * > *See [@xeokit/cameracontrol](/docs/modules/_xeokit_cameracontrol.html)*\n *\n * Add a {@link @xeokit/cameracontrol!CameraControl} to the View, to control the Camera from mouse and touch input:\n *\n * ````javascript\n * const myCameraControl = new CameraControl({\n * view: view1\n * });\n * ````\n *\n * ### Creating a SceneModel\n *\n * > *See [@xeokit/scene](/docs/modules/_xeokit_scene.html)*\n *\n * Our {@link @xeokit/scene!Scene | Scene } contains geometric representations of our models and objects,\n * with materials and textures.\n *\n * Within the Scene, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} that contains a couple\n * of textured {@link @xeokit/scene!SceneModel | SceneObjects}:\n *\n * ````javascript\n * const sceneModel = scene.createModel();\n *\n * sceneModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [202, 202, 202, 200, 202, 202, ...],\n * indices: [0, 1, 2, 0, 2, 3, 4, 5, 6, 4, ...]\n * });\n *\n * sceneModel.createTexture({\n * id: \"myColorTexture\",\n * src: \"myTexture\",\n * encoding: LinearEncoding, // Demo some texture configs\n * magFilter: LinearFilter,\n * minFilter: LinearFilter\n * });\n *\n * sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\"\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh1\",\n * geometryId: \"myGeometry\",\n * textureSetId: \"myTextureSet\"\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh2\",\n * geometryId: \"myGeometry\",\n * textureSetId: \"myTextureSet\"\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject1\",\n * meshIds: [\"myMesh1\"]\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject2\",\n * meshIds: [\"myMesh2\"]\n * });\n *\n * sceneModel.build();\n * ````\n *\n * As soon as we've called {@link @xeokit/scene!SceneModel.build | SceneModel.build}, two new objects appear\n * in the View's canvas.\n *\n * ### Showing and Hiding Objects\n *\n * Hide one of the objects in the View's canvas:\n *\n * ````javascript\n * view1.setObjectsVisible([\"myObject1\"], false);\n * ````\n *\n * Another way to hide the object:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].visible = false;\n * ````\n *\n * Show the object again:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].visible = true;\n * ````\n *\n * ### Highlighting, Selecting and X-Raying Objects\n *\n * The functions for highlighting, selecting, colorizing and X-raying objects work the same as hiding and\n * showing, as just described.\n *\n * Let's highlight the first object in our View:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].highlighted = true;\n * ````\n *\n * ### Creating a Second View\n *\n * A Viewer can have many Views, each providing an independent view of the Scene in a separate\n * HTML canvas. Each View can have a completely different viewpoint, projection, and configuration of which objects\n * are visible, x-rayed, highlighted etc.\n *\n * Create a second View, with a separate canvas, that shows the other object highlighted instead:\n *\n * ```` javascript\n * const view2 = myViewer.createView({\n * id: \"myView2\",\n * elementId: \"myView2\"\n * });\n *\n * view2.camera.eye = [-3.933, 2.855, 27.018];\n * view2.camera.look = [4.400, 3.724, 8.899];\n * view2.camera.up = [-0.018, 0.999, 0.039];\n *\n * view2.objects[\"myObject1\"].highlighted = true;\n * ````\n *\n * To show an independent view of {@link @xeokit/scene!SceneModel | SceneObjects}, a View\n * proxies them with {@link @xeokit/viewer!ViewObject | ViewObjects}, which represent and control their appearance within the View's canvas.\n *\n * ### Slicing Objects\n *\n * Each View can have an unlimited number of interactive {@link SectionPlane | SectionPlanes}, with which we can use to slice open objects\n * to view interior structures.\n *\n * Create a couple of SectionPlanes within our second View, to slice through one of our\n * objects, then adjust the direction of one of the SectionPlanes:\n *\n * ````javascript\n * const mySlice1 = view2.createSlice({\n * id: \"mySlice1\",\n * pos: [0,0,0],\n * dir: [-1,-1,-1]\n * });\n *\n * const mySlice2 = view2.createSlice({\n * id: \"mySlice2\",\n * pos: [0,0,0],\n * dir: [1,1,.5]\n * });\n *\n * mySlice1.dir = [1,1,1];\n * ````\n *\n * ### Adding a ViewLayer\n *\n * Sometimes we want to create SceneModels whose objects will never be included in any BCF viewpoints that we save, and\n * will never be disturbed by any viewpoints that we load.\n *\n * An example of such a case is a skybox, which we'd never want included in any BCF viewpoints, or hidden\n * whenever we load a BCF viewpoint.\n *\n * TODO TODO TODO TODO\n *\n * ````javascript\n * const environmentViewLayer = view.createLayer({\n * id: \"myEnviromentViewLayer\"\n * });\n * ````\n *\n * Now we'll create a SceneModel for our skybox in that ViewLayer:\n *\n * ````javascript\n * const skyboxSceneModel = myVScene.createModel({\n * id: \"mySkyBox\",\n * layerId: \"myEnviromentViewLayer\"\n * });\n *\n * skyboxSceneModel.createObject({\n * id: \"skyBox\",\n * //...\n * });\n *\n * skyboxSceneModel.build();\n * ````\n *\n * Now we can save that View as a BCF viewpoint that will never include our skybox objects:\n *\n * ````javascript\n * const bcfViewpointAgain = saveBCFViewpoint({\n * view: view2,\n * excludeLayerIds: [\"myEnviromentViewLayer\"]\n * });\n * ````\n *\n * We can also load that viewpoint back into our View, in a way that won't disrupt our skybox:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint: bcfViewpointAgain\n * view: view2,\n * excludeLayerIds: [\"myEnvironmentViewLayer\"]\n * });\n * ````\n *\n * ````javascript\n * myViewer.viewModes.createViewMode({\n * id: \"qualityViewMode\"\n * });\n *\n * myViewer.viewModes.createViewMode({\n * id: \"navigationViewMode\"\n * });\n *\n * environmentViewLayer.setViewModes([\"qualityViewMode\"]};\n *\n * myViewer.viewModes.setActiveViewMode(\"quality\");\n * ````\n *\n * @module @xeokit/viewer\n */\nexport * from \"./Viewer\";\nexport * from \"./ViewParams\";\nexport * from \"./Renderer\";\nexport * from \"./Camera\";\nexport * from \"./Projection\";\nexport * from \"./FrustumProjection\";\nexport * from \"./OrthoProjection\";\nexport * from \"./PerspectiveProjection\";\nexport * from \"./CustomProjection\";\nexport * from \"./CameraFlightAnimation\";\nexport * from \"./AmbientLight\";\nexport * from \"./DirLight\";\nexport * from \"./PointLight\";\nexport * from \"./EmphasisMaterial\";\nexport * from \"./Edges\";\nexport * from \"./PointsMaterial\";\nexport * from \"./LinesMaterial\";\nexport * from \"./Metriqs\";\nexport * from \"./View\";\nexport * from \"./ViewLayer\";\nexport * from \"./ViewObject\";\nexport * from \"./SectionPlane\";\nexport * from \"./SectionPlaneParams\";\nexport * from \"./SAO\";\nexport * from \"./PickParams\";\nexport * from \"./PickResult\";\nexport * from \"./ViewLayerParams\";\nexport * from \"./ResolutionScale\";\nexport * from \"./Texturing\";\nexport * from \"./TickParams\";\nexport * from \"./SnapshotParams\";\nexport * from \"./SnapshotResult\";\n", "import {apply, createUUID, inQuotes} from \"@xeokit/utils\";\nimport {type Capabilities, Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {Scene, SceneModel} from \"@xeokit/scene\";\n\nimport {View} from \"./View\";\nimport {scheduler} from \"./scheduler\";\nimport type {Renderer} from \"./Renderer\";\n\nimport type {ViewParams} from \"./ViewParams\";\nimport type {TickParams} from \"./TickParams\";\n\n/**\n * A Browser-based 2D/3D model viewer.\n *\n * See {@link \"@xeokit/viewer\" | @xeokit/viewer} for usage.\n */\nexport class Viewer extends Component {\n\n /**\n * ID of this Viewer.\n */\n declare readonly id: string;\n\n /**\n * True once this Viewer has been destroyed.\n *\n * Don't use this Viewer if this is ````false````.\n */\n declare readonly destroyed: boolean;\n\n /**\n * Indicates the capabilities of this Viewer.\n */\n readonly capabilities: Capabilities;\n\n /**\n * Emits an event each time a message is logged.\n *\n * @event\n */\n readonly onLog: EventEmitter;\n\n /**\n * Emits an event each time a Viewer \"tick\" occurs (~10-60 times per second).\n *\n * @event\n */\n readonly onTick: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!View} is created.\n *\n * @event\n */\n readonly onViewCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!View} is destroyed.\n *\n * @event\n */\n readonly onViewDestroyed: EventEmitter;\n\n /**\n * The Viewer's scene representation.\n *\n * The {@link @xeokit/scene!SceneModel | SceneModels} is the container of {@link @xeokit/scene!SceneModel | SceneModels}\n * and {@link @xeokit/scene!SceneObject | SceneObjects}, which contain the geometry and materials for models currently\n * loaded in the Viewer.\n */\n readonly scene: Scene;\n\n /**\n * Map of all the Views in this Viewer.\n *\n * Each {@link @xeokit/viewer!View} is mapped here against {@link @xeokit/viewer!View.id | View.id}.\n *\n * Each {@link @xeokit/viewer!View} is an independently configurable view of the Viewer's models, with its own\n * canvas, camera position, section planes, lights, and object visual states.\n */\n readonly views: { [key: string]: View };\n\n /**\n * List of all the Views in this Viewer.\n *\n * Each {@link @xeokit/viewer!View} is an independently configurable view of the Viewer's models, with its own canvas, camera position, section planes, lights, and object visual states.\n *\n * @internal\n */\n readonly viewList: View[];\n\n /**\n * The number of {@link View | Views} belonging to this Viewer.\n *\n * The maxiumum number of Views that a Viewer can have is determined by the {@link Renderer} implementation it was\n * configured with, which is provided in {@link Capabilities.maxViews}.\n */\n numViews: number;\n\n /**\n * The time that this Viewer was created.\n * This is the number of milliseconds since the epoch, which is defined as the midnight at the beginning of January 1, 1970, UTC.\n */\n readonly startTime: number = (new Date()).getTime();\n\n /**\n * The Renderer that this Viewer was configured with via the Viewer's constructor.\n * Th Renderer is only used by the Viewer, and is not intended to for users to use directly. It's provided via this property\n * in order to verify which Render implementation the Viewer is configured with.\n */\n readonly renderer: Renderer;\n\n #tickifiedFunctions: {};\n\n /**\n * Creates a Viewer.\n *\n * @param params - Viewer configuration.\n * @param params.scene - Contains model representations.\n * @param params.renderer - Manages rendering of models.\n * @param params.id - ID for this Viewer, automatically generated by default.\n * @param params.units - The measurement unit type. Accepted values are ````\"meters\"````, ````\"metres\"````, , ````\"centimeters\"````, ````\"centimetres\"````, ````\"millimeters\"````, ````\"millimetres\"````, ````\"yards\"````, ````\"feet\"```` and ````\"inches\"````.\n * @param params.scale - The number of Real-space units in each World-space coordinate system unit.\n * @param params.origin - The Real-space 3D origin, in current measurement units, at which the World-space coordinate origin ````[0,0,0]```` sits.\n * @param params.localeService - Locale-based translation service.\n * @throws SDKError\n * The given Renderer is already attached to some other Viewer.\n */\n constructor(params: {\n scene?: Scene,\n renderer: Renderer,\n id?: string,\n units?: string,\n scale?: number,\n origin?: FloatArrayParam,\n }) {\n super(null, {});\n\n this.id = params.id || createUUID();\n\n if (params.renderer.viewer !== undefined) {\n throw new SDKError(`Failed to create Viewer - the given Renderer is currently attached to another Viewer`);\n }\n\n this.onLog = new EventEmitter(new EventDispatcher());\n this.onTick = new EventEmitter(new EventDispatcher());\n this.onViewCreated = new EventEmitter(new EventDispatcher());\n this.onViewDestroyed = new EventEmitter(new EventDispatcher());\n\n this.viewList = [];\n this.numViews = 0;\n this.views = {};\n this.destroyed = false;\n\n this.capabilities = {\n maxViews: 1,\n headless: false,\n astcSupported: false,\n etc1Supported: false,\n etc2Supported: false,\n dxtSupported: false,\n bptcSupported: false,\n pvrtcSupported: false\n };\n\n this.scene = params.scene || new Scene();\n\n params.renderer.attachViewer(this);\n params.renderer.getCapabilities(this.capabilities);\n\n this.renderer = params.renderer;\n\n this.#tickifiedFunctions = {};\n\n this.scene.onModelCreated.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.renderer.attachSceneModel(sceneModel);\n });\n this.scene.onModelDestroyed.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.renderer.detachSceneModel(sceneModel);\n });\n\n scheduler.registerViewer(this);\n }\n\n /**\n * This method will \"tickify\" the provided `cb` function.\n *\n * This means, the function will be wrapped so:\n *\n * - it runs time-aligned to scene ticks\n * - it runs maximum once per scene-tick\n *\n * @param {Function} cb The function to tickify\n * @returns {Function}\n */\n tickify(cb: any): any {\n let cbString = cb.toString();\n\n /**\n * Check if the function is already tickified, and if so return the cached one.\n */\n if (cbString in this.#tickifiedFunctions) {\n return this.#tickifiedFunctions[cbString].wrapperFunc;\n }\n\n let alreadyRun = 0;\n let needToRun = 0;\n\n let lastArgs;\n\n /**\n * The provided `cb` function is replaced with a \"set-dirty\" function\n *\n * @type {Function}\n */\n const wrapperFunc = function (...args) {\n lastArgs = args;\n needToRun++;\n };\n\n /**\n * An each scene tick, if the \"dirty-flag\" is set, run the `cb` function.\n *\n * This will make it run time-aligned to the scene tick.\n */\n const tickSubId = this.onTick.sub(() => {\n const tmp = needToRun;\n if (tmp > alreadyRun) {\n alreadyRun = tmp;\n cb(...lastArgs);\n }\n });\n\n /**\n * And, store the list of subscribers.\n */\n this.#tickifiedFunctions[cbString] = {tickSubId, wrapperFunc};\n\n return wrapperFunc;\n }\n\n /**\n * Creates a new {@link @xeokit/viewer!View} within this Viewer.\n *\n * * The maximum number of views you're allowed to create is provided in {@link Capabilities.maxViews}. This\n * will be determined by the {@link Renderer} implementation the Viewer is configured with.\n * * To destroy the View after use, call {@link View.destroy}.\n * * You must add a View to the Viewer before you can create or load content into the Viewer's Viewer.\n *\n * ### Usage\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * if (view1 instanceof SDKError) {\n * console.log(view1.message);\n * } else {\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * //...\n * }\n * ````\n *\n * @param params View configuration.\n * @returns *{@link View}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If View already exists with the given ID.\n * * Attempted to create too many Views - see {@link Capabilities.maxViews | Capabilities.maxViews}.\n */\n createView(params: ViewParams): View | SDKError {\n if (this.viewList.length >= this.capabilities.maxViews) {\n return new SDKError(`Attempted to create too many Views with View.createView() - maximum of ${this.capabilities.maxViews} is allowed`);\n }\n let viewId = params.id || createUUID();\n if (this.views[viewId]) {\n return new SDKError(`View with ID \"${viewId}\" already exists in this Viewer`);\n }\n // @ts-ignore\n const htmlElement = params.htmlElement || document.getElementById(params.elementId);\n if (!(htmlElement instanceof HTMLElement)) {\n return new SDKError(\"Mandatory View config expected: valid elementId or HTMLElement\");\n }\n const view = new View(apply({viewId, viewer: this}, params));\n {\n const result: void | SDKError = this.renderer.attachView(view);\n if (result instanceof SDKError) {\n this.error(`Failed to create View (id = \"${view.viewId}\"): ${result.message}`);\n return result;\n }\n }\n this.#registerView(view);\n view.onDestroyed.one(() => {\n this.#deregisterView(view);\n this.renderer.detachView(view);\n this.onViewDestroyed.dispatch(this, view);\n });\n // Renderer.attachSceneModel creates RendererObjects in Renderer.rendererObjects,\n // which are then expected by View.initViewObjects\n for (let id in this.scene.models) {\n this.renderer.attachSceneModel(this.scene.models[id]);\n }\n view.initViewObjects();\n this.onViewCreated.dispatch(this, view);\n return view;\n }\n\n /**\n * Trigger redraw of all {@link View | Views} belonging to this Viewer.\n *\n * @private\n */\n redraw(): void {\n for (let viewId in this.views) {\n this.views[viewId].redraw();\n }\n }\n\n /**\n * Logs a console debugging message for this Viewer.\n *\n * The console message will have this format: *````[LOG] [ : ````*\n *\n * @private\n * @param message - The message to log\n */\n log(message: string): void {\n window.console.log(`[LOG] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs a warning for this Viewer to the JavaScript console.\n *\n * The console message will have this format: *````[WARN] [ =: ````*\n *\n * @private\n * @param message - The warning message to log\n */\n warn(message: string): void {\n window.console.warn(`[WARN] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs an error for this Viewer to the JavaScript console.\n *\n * The console message will have this format: *````[ERROR] [ =: ````*\n *\n * @private\n * @param message The error message to log\n */\n error(message: string): void {\n window.console.error(`[ERROR] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * @private\n * @param params\n */\n render(params: any) {\n for (let viewIndex = 0; viewIndex < this.viewList.length; viewIndex++) {\n // console.log(\"this.renderer.render()\");\n // console.log(\"...\");\n this.renderer.render(viewIndex, {force: false});\n }\n }\n\n #prefixMessageWithID(message: string): string {\n return `[${this.constructor.name} \"${inQuotes(this.id)}\"]: ${message}`;\n }\n\n #registerView(view: View): void {\n if (this.views[view.id]) {\n return;\n }\n this.views[view.id] = view;\n for (let viewIndex = 0; ; viewIndex++) {\n if (!this.viewList[viewIndex]) {\n this.viewList[viewIndex] = view;\n this.numViews++;\n view.viewIndex = viewIndex;\n return;\n }\n }\n }\n\n #deregisterView(view: View): void {\n if (!this.views[view.id]) {\n return;\n }\n delete this.views[view.id];\n delete this.viewList[view.viewIndex];\n this.numViews--;\n }\n\n /**\n * Destroys this Viewer.\n */\n destroy(): void {\n if (this.destroyed) {\n return;\n }\n this.renderer.detachViewer();\n scheduler.deregisterViewer(this);\n for (let id in this.views) {\n this.views[id].destroy();\n }\n this.onLog.clear();\n this.onTick.clear();\n this.onViewCreated.clear();\n this.onViewDestroyed.clear();\n super.destroy();\n }\n}\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {createUUID} from \"@xeokit/utils\";\nimport {FastRender, QualityRender} from \"@xeokit/constants\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {createVec3} from \"@xeokit/matrix\";\nimport type {Scene, SceneModel} from \"@xeokit/scene\";\n\nimport {ViewObject} from \"./ViewObject\";\nimport {SectionPlane} from \"./SectionPlane\";\nimport type {Viewer} from \"./Viewer\";\nimport {Metrics} from \"./Metriqs\";\nimport {SAO} from \"./SAO\";\nimport {Texturing} from \"./Texturing\";\nimport {LinesMaterial} from \"./LinesMaterial\";\nimport {ViewLayer} from \"./ViewLayer\";\nimport type {ViewLayerParams} from \"./ViewLayerParams\";\nimport type {SectionPlaneParams} from \"./SectionPlaneParams\";\nimport {EmphasisMaterial} from \"./EmphasisMaterial\";\nimport {Edges} from \"./Edges\";\nimport {PointsMaterial} from \"./PointsMaterial\";\nimport {Camera} from \"./Camera\";\nimport type {PointLight} from \"./PointLight\";\nimport {CameraFlightAnimation} from \"./CameraFlightAnimation\";\nimport {AmbientLight} from \"./AmbientLight\";\nimport {DirLight} from \"./DirLight\";\nimport type {RendererObject} from \"@xeokit/scene/src/RendererObject\";\nimport type {PickParams} from \"./PickParams\";\nimport type {PickResult} from \"./PickResult\";\nimport {SnapshotResult} from \"./SnapshotResult\";\nimport type {SnapshotParams} from \"./SnapshotParams\";\nimport {ResolutionScale} from \"./ResolutionScale\";\n\n/**\n * Event that signifies the beginning of a canvas snapshot captured with\n */\nexport interface SnapshotStartedEvent {\n width: number;\n height: number;\n}\n\n/**\n *\n */\nexport interface SnapshotFinishedEvent {\n width: number;\n height: number;\n}\n\n\n/**\n * An independently-configurable view of the models in a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/viewer\" | @xeokit/viewer} for usage.\n *\n * ## Overview\n *\n * A View is an independently-configurable view of the {@link RendererObject | ViewerObjects} existing within a Viewer, with\n * its own HTML canvas. A View automatically contains a {@link @xeokit/viewer!ViewObject} for each existing ViewerObject. ViewObjects\n * function as a kind of proxy for the ViewerObjects, through which we control their appearance\n * (show/hide/highlight etc.) within that particular View's canvas.\n *\n * Using Views, we can essentially have multiple canvases viewing the same model, each canvas perhaps showing a different subset\n * of the objects, with different visual effects, camera position etc.\n *\n * ## Quickstart\n *\n * * Create a View with {@link Viewer.createView}\n * * Control the View's viewpoint and projection with {@link View.camera}\n * * Create light sources with {@link View.createLightSource}\n * * Create slicing planes with {@link View createSectionPlane}\n * * Each View automatically has a {@link @xeokit/viewer!ViewObject} for every {@link RendererObject}\n * * Uses {@link @xeokit/viewer!ViewLayer | ViewLayers} to organize ViewObjects into layers\n * * Optionally uses ViewLayers to mask which ViewObjects are automatically maintained\n * * Control the visibility of ViewObjects with {@link View.setObjectsVisible}\n * * Emphasise ViewObjects with {@link View.setObjectsHighlighted}, {@link View.setObjectsSelected}, {@link View.setObjectsXRayed} and {@link View.setObjectsColorized}\n *\n * ## Examples\n *\n * Create a view in a given canvas, with three objects visible and a couple of object X-rayed (rendered translucent):\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * view1.setObjectsVisible([\"myObject1\", \"myObject2\", \"myObject3\", ...], true);\n * view1.setObjectsXRayed([\"myObject1\", \"myObject\", ...], true);\n * ````\n *\n * Create a second view, using a different canvas, that shows two objects visible, with one of them highlighted:\n *\n * ```` javascript\n * const view2 = myViewer.createView({\n * id: \"myView2\",\n * elementId: \"myView2\"\n * });\n *\n * view2.camera.eye = [-1.4, 1.5, 15.8];\n * view2.camera.look = [4.0, 3.7, 1.8];\n * view2.camera.up = [0.0, 0.9, 0.0];\n *\n * view2.setObjectsVisible([\"myObject1\", \"myObject3\", ...], true);\n * view2.setObjectsHighlighted([\"myObject3\", ...], true);\n * ````\n */\nclass View extends Component {\n\n /**\n ID of this View, unique within the {@link @xeokit/viewer!Viewer | Viewer}.\n */\n declare viewId: string;\n\n /**\n * The Viewer to which this View belongs.\n */\n declare readonly viewer: Viewer;\n\n /**\n * The index of this View in {@link Viewer.viewList}.\n * @private\n */\n viewIndex: number;\n\n /**\n * Manages the Camera for this View.\n */\n readonly camera: Camera;\n\n /**\n * The HTML canvas.\n */\n public htmlElement: HTMLElement;\n\n /**\n * Indicates if this View is transparent.\n */\n public readonly transparent: boolean;\n\n /**\n * Boundary of the canvas in absolute browser window coordinates.\n * Format is ````[xmin, ymin, xwidth, ywidth]````.\n */\n public readonly boundary: number[];\n\n /**\n * Configures Scalable Ambient Obscurance (SAO) for this View.\n */\n readonly sao: SAO;\n\n /**\n * Configures when textures are rendered for this View.\n */\n readonly texturing: Texturing;\n\n /**\n * Flies or jumps the View's {@link @xeokit/viewer!Camera} to given positions.\n */\n readonly cameraFlight: CameraFlightAnimation;\n\n /**\n * Manages measurement units, origin and scale for this View.\n */\n readonly metrics: Metrics;\n\n /**\n * Configures the X-rayed appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly xrayMaterial: EmphasisMaterial;\n\n /**\n * Configures the highlighted appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly highlightMaterial: EmphasisMaterial;\n\n /**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly selectedMaterial: EmphasisMaterial;\n\n /**\n * Configures the appearance of edges belonging to {@link @xeokit/viewer!ViewObject} in this View.\n */\n readonly edges: Edges;\n\n /**\n * Configures resolution scaling for this View.\n */\n readonly resolutionScale: ResolutionScale;\n\n /**\n * Configures the appearance of point primitives belonging to {@link @xeokit/viewer!ViewObject | ViewObjects} in this View .\n */\n readonly pointsMaterial: PointsMaterial;\n\n /**\n * Configures the appearance of lines belonging to {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly linesMaterial: LinesMaterial;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n *\n * The View automatically ensures that there is a {@link @xeokit/viewer!ViewObject} here for\n * each {@link RendererObject} in the {@link @xeokit/viewer!Viewer | Viewer}\n */\n readonly objects: { [key: string]: ViewObject };\n\n /**\n * Map of the currently visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is visible when {@link @xeokit/viewer!ViewObject.visible} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly visibleObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently x-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is x-rayed when {@link @xeokit/viewer!ViewObject.xrayed} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly xrayedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is highlighted when {@link @xeokit/viewer!ViewObject.highlighted} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly highlightedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is selected when {@link @xeokit/viewer!ViewObject.selected} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly selectedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly colorizedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View whose opacity has been updated.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly opacityObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link SectionPlane}s in this View.\n *\n * Each {@link SectionPlane} is mapped here by {@link SectionPlane.id}.\n */\n readonly sectionPlanes: { [key: string]: SectionPlane };\n\n /**\n * List of {@link SectionPlane}s in this View.\n */\n readonly sectionPlanesList: SectionPlane[] = [];\n\n /**\n * Map of light sources in this View.\n */\n readonly lights: { [key: string]: AmbientLight | PointLight | DirLight };\n\n /**\n * List of light sources in this View.\n */\n readonly lightsList: (AmbientLight | PointLight | DirLight)[] = [];\n\n gammaOutput: boolean;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewLayer}s in this View.\n *\n * Each {@link @xeokit/viewer!ViewLayer} is mapped here by {@link @xeokit/viewer!ViewLayer.id}.\n */\n readonly layers: { [key: string]: ViewLayer };\n\n /**\n * Whether the View will automatically create {@link @xeokit/viewer!ViewLayer | ViewLayers} on-demand\n * as {@link RendererObject | ViewerObjects} are created.\n *\n * When ````true```` (default), the View will automatically create {@link @xeokit/viewer!ViewLayer | ViewLayers} as needed for each new\n * {@link RendererObject.layerId} encountered, including a \"default\" ViewLayer for ViewerObjects that have no\n * layerId. This default setting therefore ensures that a ViewObject is created in the View for every SceneObject that is created.\n *\n * If you set this ````false````, however, then the View will only create {@link @xeokit/viewer!ViewObject | ViewObjects} for {@link RendererObject | ViewerObjects} that have\n * a {@link RendererObject.layerId} that matches the ID of a {@link @xeokit/viewer!ViewLayer} that you have explicitly created previously with {@link View.createLayer}.\n *\n * Setting this parameter false enables Views to contain only the ViewObjects that they actually need to show, i.e. to represent only\n * ViewerObjects that they need to view. This enables a View to avoid wastefully creating and maintaining ViewObjects for ViewerObjects\n * that it never needs to show.\n */\n readonly autoLayers: boolean;\n\n /**\n * Emits an event each time the canvas boundary changes.\n *\n * @event\n */\n readonly onBoundary: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is created in this View.\n *\n * @event\n */\n readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is destroyed in this View.\n *\n * @event\n */\n readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Emits an event each time the visibility of a {@link @xeokit/viewer!ViewObject} changes in this View.\n *\n * ViewObjects are shown and hidden with {@link View.setObjectsVisible}, {@link @xeokit/viewer!ViewLayer.setObjectsVisible} or {@link @xeokit/viewer!ViewObject.visible}.\n *\n * @event\n */\n readonly onObjectVisibility: EventEmitter;\n\n /**\n * Emits an event each time the X-ray state of a {@link @xeokit/viewer!ViewObject} changes in this View.\n *\n * ViewObjects are X-rayed with {@link View.setObjectsXRayed}, {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} or {@link @xeokit/viewer!ViewObject.xrayed}.\n *\n * @event\n */\n readonly onObjectXRayed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewLayer} is created in this View.\n *\n * Layers are created explicitly with {@link View.createLayer}, or implicitly with {@link View.createModel} and {@link CreateModelParams.layerId}.\n *\n * @event\n */\n readonly onLayerCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewLayer} in this View is destroyed.\n *\n * ViewLayers are destroyed explicitly with {@link @xeokit/viewer!ViewLayer.destroy}, or implicitly when they become empty and {@link View.autoLayers} is false.\n *\n * @event\n */\n readonly onLayerDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link SectionPlane} is created in this View.\n *\n * @event\n */\n readonly onSectionPlaneCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link SectionPlane} in this View is destroyed.\n *\n * @event\n */\n readonly onSectionPlaneDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a snapshot is initiated with {@link View.getSnapshot}.\n *\n * @event\n */\n readonly onSnapshotStarted: EventEmitter;\n\n /**\n * Emits an event each time a snapshot is completed with {@link View.getSnapshot}.\n *\n * @event\n */\n readonly onSnapshotFinished: EventEmitter;\n\n #onTick: () => void;\n\n #renderMode: number = QualityRender;\n\n #backgroundColor: FloatArrayParam;\n #backgroundColorFromAmbientLight: boolean;\n #numObjects: number;\n #objectIds: string[] | null;\n #numVisibleObjects: number;\n #visibleObjectIds: string[] | null;\n #numXRayedObjects: number;\n #xrayedObjectIds: string[] | null;\n #numHighlightedObjects: number;\n #highlightedObjectIds: string[] | null;\n #numSelectedObjects: number;\n #selectedObjectIds: string[] | null;\n #numColorizedObjects: number;\n #colorizedObjectIds: string[] | null;\n #numOpacityObjects: number;\n #opacityObjectIds: string[] | null;\n #qualityRender: boolean;\n #lightsHash: string | null = null;\n #sectionPlanesHash: string | null = null;\n #snapshotBegun: boolean;\n\n /**\n * @private\n */\n constructor(options: {\n viewer: Viewer;\n origin?: number[];\n scale?: number;\n units?: number;\n elementId?: string;\n htmlElement: HTMLElement;\n backgroundColor?: any[];\n backgroundColorFromAmbientLight?: boolean;\n premultipliedAlpha?: boolean;\n transparent?: boolean;\n qualityRender?: boolean;\n autoLayers?: boolean;\n }) {\n super(null, options);\n\n this.viewer = options.viewer;\n\n const canvas =\n options.htmlElement ||\n document.getElementById(options.elementId);\n\n if (!(canvas instanceof HTMLElement)) {\n throw \"Mandatory View config expected: valid HTMLElement\";\n }\n\n this.htmlElement = canvas;\n this.viewIndex = 0;\n this.objects = {};\n this.visibleObjects = {};\n this.xrayedObjects = {};\n this.highlightedObjects = {};\n this.selectedObjects = {};\n this.colorizedObjects = {};\n this.opacityObjects = {};\n this.sectionPlanes = {};\n this.sectionPlanesList = [];\n this.lights = {};\n this.lightsList = [];\n this.layers = {};\n\n this.#numObjects = 0;\n this.#objectIds = null;\n this.#numVisibleObjects = 0;\n this.#visibleObjectIds = null;\n this.#numXRayedObjects = 0;\n this.#xrayedObjectIds = null;\n this.#numHighlightedObjects = 0;\n this.#highlightedObjectIds = null;\n this.#numSelectedObjects = 0;\n this.#selectedObjectIds = null;\n this.#numColorizedObjects = 0;\n this.#colorizedObjectIds = null;\n this.#numOpacityObjects = 0;\n this.#opacityObjectIds = null;\n this.#qualityRender = !!options.qualityRender;\n this.gammaOutput = true;\n this.#snapshotBegun = false;\n\n this.#sectionPlanesHash = null;\n this.#lightsHash = null;\n\n // this.canvas = new View(this, {\n // canvas: canvas,\n // transparent: !!options.transparent,\n // backgroundColor: options.backgroundColor,\n // backgroundColorFromAmbientLight: !!options.backgroundColorFromAmbientLight,\n // premultipliedAlpha: !!options.premultipliedAlpha\n // });\n //\n // this.canvas.onBoundary.subscribe(() => {\n // this.redraw();\n // });\n\n this.onBoundary = new EventEmitter(\n new EventDispatcher()\n );\n\n this.#backgroundColor = createVec3([\n options.backgroundColor ? options.backgroundColor[0] : 1,\n options.backgroundColor ? options.backgroundColor[1] : 1,\n options.backgroundColor ? options.backgroundColor[2] : 1,\n ]);\n this.#backgroundColorFromAmbientLight =\n !!options.backgroundColorFromAmbientLight;\n this.transparent = !!options.transparent;\n // this.htmlElement.width = this.htmlElement.clientWidth;\n // this.htmlElement.height = this.htmlElement.clientHeight;\n this.boundary = [\n this.htmlElement.offsetLeft,\n this.htmlElement.offsetTop,\n this.htmlElement.clientWidth,\n this.htmlElement.clientHeight,\n ];\n\n // Publish htmlElement size and position changes on each scene tick\n\n let lastWindowWidth = 0;\n let lastWindowHeight = 0;\n let lastViewWidth = 0;\n let lastViewHeight = 0;\n let lastViewOffsetLeft = 0;\n let lastViewOffsetTop = 0;\n let lastParent: null | HTMLElement = null;\n\n let lastResolutionScale: null | number = null;\n\n this.#onTick = this.viewer.onTick.subscribe(() => {\n const htmlElement = this.htmlElement;\n const newResolutionScale = this.resolutionScale.resolutionScale !== lastResolutionScale;\n const newWindowSize =\n window.innerWidth !== lastWindowWidth ||\n window.innerHeight !== lastWindowHeight;\n const newViewSize =\n htmlElement.clientWidth !== lastViewWidth ||\n htmlElement.clientHeight !== lastViewHeight;\n const newViewPos =\n htmlElement.offsetLeft !== lastViewOffsetLeft ||\n htmlElement.offsetTop !== lastViewOffsetTop;\n const parent = htmlElement.parentElement;\n const newParent = parent !== lastParent;\n\n if (\n newResolutionScale ||\n newWindowSize ||\n newViewSize ||\n newViewPos ||\n newParent\n ) {\n // this._spinner._adjustPosition();\n if (newResolutionScale || newViewSize || newViewPos) {\n const newWidth = htmlElement.clientWidth;\n const newHeight = htmlElement.clientHeight;\n if (newResolutionScale || newViewSize) {\n //////////////////////////////////////////////////////////////////////////////////////\n // TODO: apply resolutionscale properly\n //////////////////////////////////////////////////////////////////////////////////////\n // htmlElement.width = Math.round(\n // htmlElement.clientWidth * this.resolutionScale.resolutionScale\n // );\n // htmlElement.height = Math.round(\n // htmlElement.clientHeight * this.resolutionScale.resolutionScale\n // );\n }\n const boundary = this.boundary;\n boundary[0] = htmlElement.offsetLeft;\n boundary[1] = htmlElement.offsetTop;\n boundary[2] = newWidth;\n boundary[3] = newHeight;\n if (!newResolutionScale || newViewSize) {\n this.onBoundary.dispatch(this, boundary);\n }\n lastViewWidth = newWidth;\n lastViewHeight = newHeight;\n }\n\n if (newResolutionScale) {\n // lastResolutionScale = this.#resolutionScale;\n }\n if (newWindowSize) {\n lastWindowWidth = window.innerWidth;\n lastWindowHeight = window.innerHeight;\n }\n if (newViewPos) {\n lastViewOffsetLeft = htmlElement.offsetLeft;\n lastViewOffsetTop = htmlElement.offsetTop;\n }\n lastParent = parent;\n }\n });\n\n this.camera = new Camera(this);\n\n this.sao = new SAO(this, {});\n\n this.texturing = new Texturing(this, {});\n\n this.cameraFlight = new CameraFlightAnimation(this, {\n duration: 0.5,\n });\n\n this.metrics = new Metrics(this, {\n units: options.units,\n scale: options.scale,\n origin: options.origin,\n });\n\n this.xrayMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [0.9, 0.7, 0.6],\n fillAlpha: 0.4,\n edges: true,\n edgeColor: [0.5, 0.4, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.highlightMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [1.0, 1.0, 0.0],\n fillAlpha: 0.5,\n edges: true,\n edgeColor: [0.5, 0.4, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.selectedMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [0.0, 1.0, 0.0],\n fillAlpha: 0.5,\n edges: true,\n edgeColor: [0.4, 0.5, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.edges = new Edges(this, {\n edgeColor: [0.0, 0.0, 0.0],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n enabled: true,\n renderModes: [QualityRender],\n });\n\n this.resolutionScale = new ResolutionScale(this, {\n enabled: true,\n renderModes: [FastRender],\n resolutionScale: 1.0\n });\n\n this.pointsMaterial = new PointsMaterial(this, {\n pointSize: 1,\n roundPoints: true,\n perspectivePoints: true,\n minPerspectivePointSize: 1,\n maxPerspectivePointSize: 6,\n filterIntensity: false,\n minIntensity: 0,\n maxIntensity: 1,\n });\n\n this.linesMaterial = new LinesMaterial(this, {\n lineWidth: 1,\n });\n\n this.lights = {};\n\n this.#qualityRender = !!options.qualityRender;\n\n this.autoLayers = options.autoLayers !== false;\n\n this.onObjectCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectVisibility = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectXRayed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onLayerCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onLayerDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSectionPlaneCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSectionPlaneDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSnapshotStarted = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSnapshotFinished = new EventEmitter(\n new EventDispatcher()\n );\n\n new AmbientLight(this, {\n color: [1.0, 1.0, 1.0],\n intensity: 1.0\n });\n\n new DirLight(this, {\n dir: [0.8, -.5, -0.5],\n color: [0.8, 0.8, 1.0],\n intensity: 1.0,\n space: \"world\"\n });\n\n new DirLight(this, {\n dir: [-0.8, -1.0, 0.5],\n color: [1, 1, .9],\n intensity: 1.0,\n space: \"world\"\n });\n\n new DirLight(this, {\n dir: [-0.8, -1.0, -0.5],\n color: [.0, .0, 1],\n intensity: 1.0,\n space: \"world\"\n });\n\n }\n\n /**\n * @private\n */\n initViewObjects() {\n for (const id in this.viewer.scene.models) {\n this.#createViewObjectsForSceneModel(this.viewer.scene.models[id]);\n }\n this.viewer.scene.onModelCreated.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.#createViewObjectsForSceneModel(sceneModel);\n }\n );\n this.viewer.scene.onModelDestroyed.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.#destroyViewObjectsForSceneModel(sceneModel);\n }\n );\n }\n\n #createViewObjectsForSceneModel(sceneModel: SceneModel) {\n // The Renderer has a RendererObject for each object, through which a ViewObject can\n // push state changes into the Renderer for its object.\n // The RendererObject\n const sceneObjects = sceneModel.objects;\n const rendererObjects = this.viewer.renderer.rendererObjects;\n for (let id in sceneObjects) {\n const sceneObject = sceneObjects[id];\n const rendererObject = rendererObjects[id];\n const layerId = sceneObject.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n if (!viewLayer) {\n if (!this.autoLayers) {\n continue;\n }\n viewLayer = new ViewLayer({\n id: layerId,\n view: this,\n viewer: this.viewer,\n });\n this.layers[layerId] = viewLayer;\n viewLayer.onDestroyed.one(() => {\n delete this.layers[viewLayer.id];\n this.onLayerDestroyed.dispatch(this, viewLayer);\n });\n this.onLayerCreated.dispatch(this, viewLayer);\n }\n const viewObject = new ViewObject(viewLayer, sceneObject, rendererObject);\n viewLayer.registerViewObject(viewObject);\n this.registerViewObject(viewObject);\n this.onObjectCreated.dispatch(this, viewObject);\n }\n }\n\n /**\n * Sets which rendering mode this View is in.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is {@link @xeokit/constants!QualityRender | QualityRender}.\n *\n * @param renderMode The rendering mode\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * Rendering mode not supported.\n */\n setRenderMode(renderMode: number): SDKError | void {\n if (renderMode !== QualityRender && renderMode !== FastRender) {\n return new SDKError(`Failed to set render mode for View - unsupported mode - supported modes are FastRender and QualityRender`);\n }\n this.#renderMode = renderMode;\n }\n\n /**\n * Gets which rendering mode this View is in.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is {@link @xeokit/constants!QualityRender | QualityRender}.\n */\n get renderMode(): number {\n return this.#renderMode;\n }\n\n /**\n *\n */\n get aabb(): FloatArrayParam {\n return this.viewer.scene.aabb;\n }\n\n /**\n * Gets the canvas clear color.\n *\n * Default value is ````[1, 1, 1]````.\n */\n get backgroundColor(): FloatArrayParam {\n return this.#backgroundColor;\n }\n\n /**\n * Sets the canvas clear color.\n *\n * Default value is ````[1, 1, 1]````.\n */\n set backgroundColor(value: FloatArrayParam) {\n if (value) {\n this.#backgroundColor[0] = value[0];\n this.#backgroundColor[1] = value[1];\n this.#backgroundColor[2] = value[2];\n } else {\n this.#backgroundColor[0] = 1.0;\n this.#backgroundColor[1] = 1.0;\n this.#backgroundColor[2] = 1.0;\n }\n this.redraw();\n }\n\n /**\n * Gets whether the canvas clear color will be derived from {@link AmbientLight} or {@link View#backgroundColor}\n * when {@link View#transparent} is ```true```.\n *\n * When {@link View#transparent} is ```true``` and this is ````true````, then the canvas clear color will\n * be taken from the ambient light color.\n *\n * When {@link View#transparent} is ```true``` and this is ````false````, then the canvas clear color will\n * be taken from {@link View#backgroundColor}.\n *\n * Default value is ````true````.\n */\n get backgroundColorFromAmbientLight(): boolean {\n return this.#backgroundColorFromAmbientLight;\n }\n\n /**\n * Sets if the canvas background color is derived from an {@link AmbientLight}.\n *\n * This only has effect when the canvas is not transparent. When not enabled, the background color\n * will be the canvas element's HTML/CSS background color.\n *\n * Default value is ````true````.\n */\n set backgroundColorFromAmbientLight(\n backgroundColorFromAmbientLight: boolean\n ) {\n this.#backgroundColorFromAmbientLight =\n backgroundColorFromAmbientLight !== false;\n }\n\n /**\n * Gets the gamma factor.\n */\n get gammaFactor() {\n // TODO\n return 1.0;\n }\n\n /**\n * Gets whether quality rendering is enabled for this View.\n *\n * Default is ````false````.\n */\n get qualityRender(): boolean {\n return this.#qualityRender;\n }\n\n /**\n * Sets whether quality rendering is enabled for this View.\n *\n * Default is ````false````.\n */\n set qualityRender(value: boolean) {\n if (this.#qualityRender === value) {\n return;\n }\n this.#qualityRender = value;\n this.redraw();\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numObjects(): number {\n return this.#numObjects;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get objectIds(): string[] {\n if (!this.#objectIds) {\n this.#objectIds = Object.keys(this.objects);\n }\n return this.#objectIds;\n }\n\n /**\n * Gets the number of visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numVisibleObjects(): number {\n return this.#numVisibleObjects;\n }\n\n /**\n * Gets the IDs of the visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get visibleObjectIds(): string[] {\n if (!this.#visibleObjectIds) {\n this.#visibleObjectIds = Object.keys(this.visibleObjects);\n }\n return this.#visibleObjectIds;\n }\n\n /**\n * Gets the number of X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numXRayedObjects(): number {\n return this.#numXRayedObjects;\n }\n\n /**\n * Gets the IDs of the X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get xrayedObjectIds(): string[] {\n if (!this.#xrayedObjectIds) {\n this.#xrayedObjectIds = Object.keys(this.xrayedObjects);\n }\n return this.#xrayedObjectIds;\n }\n\n /**\n * Gets the number of highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numHighlightedObjects(): number {\n return this.#numHighlightedObjects;\n }\n\n /**\n * Gets the IDs of the highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get highlightedObjectIds(): string[] {\n if (!this.#highlightedObjectIds) {\n this.#highlightedObjectIds = Object.keys(this.highlightedObjects);\n }\n return this.#highlightedObjectIds;\n }\n\n /**\n * Gets the number of selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numSelectedObjects(): number {\n return this.#numSelectedObjects;\n }\n\n /**\n * Gets the IDs of the selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get selectedObjectIds(): string[] {\n if (!this.#selectedObjectIds) {\n this.#selectedObjectIds = Object.keys(this.selectedObjects);\n }\n return this.#selectedObjectIds;\n }\n\n /**\n * Gets the number of colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numColorizedObjects(): number {\n return this.#numColorizedObjects;\n }\n\n /**\n * Gets the IDs of the colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get colorizedObjectIds(): string[] {\n if (!this.#colorizedObjectIds) {\n this.#colorizedObjectIds = Object.keys(this.colorizedObjects);\n }\n return this.#colorizedObjectIds;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this View that have updated opacities.\n */\n get opacityObjectIds(): string[] {\n if (!this.#opacityObjectIds) {\n this.#opacityObjectIds = Object.keys(this.opacityObjects);\n }\n return this.#opacityObjectIds;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View that have updated opacities.\n */\n get numOpacityObjects(): number {\n return this.#numOpacityObjects;\n }\n\n /**\n * @private\n */\n registerViewObject(viewObject: ViewObject) {\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n deregisterViewObject(viewObject: ViewObject) {\n delete this.objects[viewObject.id];\n delete this.visibleObjects[viewObject.id];\n delete this.xrayedObjects[viewObject.id];\n delete this.highlightedObjects[viewObject.id];\n delete this.selectedObjects[viewObject.id];\n delete this.colorizedObjects[viewObject.id];\n delete this.opacityObjects[viewObject.id];\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectVisibilityUpdated(\n viewObject: ViewObject,\n visible: boolean,\n notify: boolean = true\n ) {\n if (visible) {\n this.visibleObjects[viewObject.id] = viewObject;\n this.#numVisibleObjects++;\n } else {\n delete this.visibleObjects[viewObject.id];\n this.#numVisibleObjects--;\n }\n this.#visibleObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n }\n\n /**\n * @private\n */\n objectXRayedUpdated(\n viewObject: ViewObject,\n xrayed: boolean,\n notify: boolean = true\n ) {\n if (xrayed) {\n this.xrayedObjects[viewObject.id] = viewObject;\n this.#numXRayedObjects++;\n } else {\n delete this.xrayedObjects[viewObject.id];\n this.#numXRayedObjects--;\n }\n this.#xrayedObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectXRayed.dispatch(this, viewObject);\n }\n }\n\n /**\n * @private\n */\n objectHighlightedUpdated(viewObject: ViewObject, highlighted: boolean) {\n if (highlighted) {\n this.highlightedObjects[viewObject.id] = viewObject;\n this.#numHighlightedObjects++;\n } else {\n delete this.highlightedObjects[viewObject.id];\n this.#numHighlightedObjects--;\n }\n this.#highlightedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectSelectedUpdated(viewObject: ViewObject, selected: boolean) {\n if (selected) {\n this.selectedObjects[viewObject.id] = viewObject;\n this.#numSelectedObjects++;\n } else {\n delete this.selectedObjects[viewObject.id];\n this.#numSelectedObjects--;\n }\n this.#selectedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectColorizeUpdated(viewObject: ViewObject, colorized: boolean) {\n if (colorized) {\n this.colorizedObjects[viewObject.id] = viewObject;\n this.#numColorizedObjects++;\n } else {\n delete this.colorizedObjects[viewObject.id];\n this.#numColorizedObjects--;\n }\n this.#colorizedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectOpacityUpdated(viewObject: ViewObject, opacityUpdated: boolean) {\n if (opacityUpdated) {\n this.opacityObjects[viewObject.id] = viewObject;\n this.#numOpacityObjects++;\n } else {\n delete this.opacityObjects[viewObject.id];\n this.#numOpacityObjects--;\n }\n this.#opacityObjectIds = null; // Lazy regenerate\n }\n\n /**\n * Creates a {@link SectionPlane} in this View.\n *\n * @param sectionPlaneParams\n */\n createSectionPlane(sectionPlaneParams: SectionPlaneParams): SectionPlane {\n let id = sectionPlaneParams.id || createUUID();\n if (this.sectionPlanes[id]) {\n this.error(\n `SectionPlane with ID \"${id}\" already exists - will randomly-generate ID`\n );\n id = createUUID();\n }\n const sectionPlane = new SectionPlane(this, sectionPlaneParams);\n this.#registerSectionPlane(sectionPlane);\n sectionPlane.onDestroyed.one(() => {\n this.#deregisterSectionPlane(sectionPlane);\n });\n return sectionPlane;\n }\n\n /**\n * Destroys the {@link SectionPlane}s in this View.\n */\n clearSectionPlanes(): void {\n const objectIds = Object.keys(this.sectionPlanes);\n for (let i = 0, len = objectIds.length; i < len; i++) {\n this.sectionPlanes[objectIds[i]].destroy();\n }\n this.sectionPlanesList.length = 0;\n this.#sectionPlanesHash = null;\n }\n\n /**\n * @private\n */\n getSectionPlanesHash() {\n if (this.#sectionPlanesHash) {\n return this.#sectionPlanesHash;\n }\n if (this.sectionPlanesList.length === 0) {\n return (this.#sectionPlanesHash = \";\");\n }\n let sectionPlane;\n const hashParts = [];\n for (let i = 0, len = this.sectionPlanesList.length; i < len; i++) {\n sectionPlane = this.sectionPlanesList[i];\n hashParts.push(\"cp\");\n }\n hashParts.push(\";\");\n this.#sectionPlanesHash = hashParts.join(\"\");\n return this.#sectionPlanesHash;\n }\n\n /**\n * @private\n */\n registerLight(light: PointLight | DirLight | AmbientLight) {\n this.lightsList.push(light);\n this.lights[light.id] = light;\n this.#lightsHash = null;\n this.rebuild();\n }\n\n /**\n * @private\n */\n deregisterLight(light: PointLight | DirLight | AmbientLight) {\n for (let i = 0, len = this.lightsList.length; i < len; i++) {\n if (this.lightsList[i].id === light.id) {\n this.lightsList.splice(i, 1);\n this.#lightsHash = null;\n delete this.lights[light.id];\n this.rebuild();\n return;\n }\n }\n }\n\n /**\n * Destroys the light sources in this View.\n */\n clearLights(): void {\n const lightIds = Object.keys(this.lights);\n for (let i = 0, len = lightIds.length; i < len; i++) {\n this.lights[lightIds[i]].destroy();\n }\n }\n\n /**\n * @private\n */\n getLightsHash() {\n if (this.#lightsHash) {\n return this.#lightsHash;\n }\n if (this.lightsList.length === 0) {\n return (this.#lightsHash = \";\");\n }\n const hashParts = [];\n const lights = this.lightsList;\n for (let i = 0, len = lights.length; i < len; i++) {\n const light: any = lights[i];\n hashParts.push(\"/\");\n hashParts.push(light instanceof DirLight ? \"d\" : \"p\");\n hashParts.push(light.space === \"world\" ? \"w\" : \"v\");\n if (light.castsShadow) {\n hashParts.push(\"sh\");\n }\n }\n // if (this.lightMaps.length > 0) {\n // hashParts.push(\"/lm\");\n // }\n // if (this.reflectionMaps.length > 0) {\n // hashParts.push(\"/rm\");\n // }\n hashParts.push(\";\");\n this.#lightsHash = hashParts.join(\"\");\n return this.#lightsHash;\n }\n\n /**\n * @private\n */\n rebuild() {\n this.viewer.renderer.setNeedsRebuild(this.viewIndex);\n }\n\n /**\n * @private\n */\n redraw() {\n this.viewer.renderer.setImageDirty(this.viewIndex);\n }\n\n /**\n * @private\n */\n getAmbientColorAndIntensity(): FloatArrayParam {\n return [0.5, 0.5, 0.5, 1];\n }\n\n /**\n * Updates the visibility of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.visible} on the Objects with the given IDs.\n * - Updates {@link View.visibleObjects} and {@link View.numVisibleObjects}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param visible Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsVisible(objectIds: string[], visible: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.visible !== visible;\n viewObject.visible = visible;\n return changed;\n });\n }\n\n /**\n * Updates the collidability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Updates {@link @xeokit/viewer!ViewObject.collidable} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param collidable Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCollidable(objectIds: string[], collidable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.collidable !== collidable;\n viewObject.collidable = collidable;\n return changed;\n });\n }\n\n /**\n * Updates the culled status of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Updates {@link @xeokit/viewer!ViewObject.culled} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param culled Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCulled(objectIds: string[], culled: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.culled !== culled;\n viewObject.culled = culled;\n return changed;\n });\n }\n\n /**\n * Selects or deselects the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.selected} on the Objects with the given IDs.\n * - Updates {@link View.selectedObjects} and {@link View.numSelectedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param selected Whether or not to select.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsSelected(objectIds: string[], selected: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.selected !== selected;\n viewObject.selected = selected;\n return changed;\n });\n }\n\n /**\n * Highlights or un-highlights the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.highlighted} on the Objects with the given IDs.\n * - Updates {@link View.highlightedObjects} and {@link View.numHighlightedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param highlighted Whether or not to highlight.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsHighlighted(objectIds: string[], highlighted: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.highlighted !== highlighted;\n viewObject.highlighted = highlighted;\n return changed;\n });\n }\n\n /**\n * Applies or removes X-ray rendering for the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.xrayed} on the Objects with the given IDs.\n * - Updates {@link View.xrayedObjects} and {@link View.numXRayedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param xrayed Whether or not to xray.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsXRayed(objectIds: string[], xrayed: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.xrayed !== xrayed;\n if (changed) {\n viewObject.xrayed = xrayed;\n }\n return changed;\n });\n }\n\n /**\n * Colorizes the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.colorize} on the Objects with the given IDs.\n * - Updates {@link View.colorizedObjects} and {@link View.numColorizedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param colorize - RGB colorize factors in range ````[0..1,0..1,0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsColorized(objectIds: string[], colorize: number[]) {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n viewObject.colorize = colorize;\n });\n }\n\n /**\n * Sets the opacity of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.opacity} on the Objects with the given IDs.\n * - Updates {@link View.opacityObjects} and {@link View.numOpacityObjects}.\n *\n * @param objectIds - One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param opacity - Opacity factor in range ````[0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsOpacity(objectIds: string[], opacity: number): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.opacity !== opacity;\n if (changed) {\n viewObject.opacity = opacity;\n }\n return changed;\n });\n }\n\n /**\n * Sets the pickability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.pickable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param pickable Whether or not to set pickable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsPickable(objectIds: string[], pickable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.pickable !== pickable;\n if (changed) {\n viewObject.pickable = pickable;\n }\n return changed;\n });\n }\n\n /**\n * Sets the clippability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.clippable} on the Objects with the given IDs.\n * - Enables or disables the ability to clip the given Objects with {@link SectionPlane}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param clippable Whether or not to set clippable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsClippable(objectIds: string[], clippable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.clippable !== clippable;\n if (changed) {\n viewObject.clippable = clippable;\n }\n return changed;\n });\n }\n\n /**\n * Iterates with a callback over the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param callback Callback to execute on each {@link @xeokit/viewer!ViewObject}.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n withObjects(objectIds: string[], callback: Function): boolean {\n let changed = false;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const id = objectIds[i];\n let viewObject = this.objects[id];\n if (viewObject) {\n changed = callback(viewObject) || changed;\n }\n }\n return changed;\n }\n\n /**\n * Creates a {@link @xeokit/viewer!ViewLayer} in this View.\n *\n * The ViewLayer is then registered in {@link View.layers}.\n *\n * Since the ViewLayer is created explicitly by this method, the ViewLayer will persist until {@link @xeokit/viewer!ViewLayer.destroy}\n * is called, or the {@link @xeokit/viewer!View} itself is destroyed. If a ViewLayer with the given ID already exists, then the method\n * returns that existing ViewLayer. The method will also ensure that the existing ViewLayer likewise persists.\n *\n * @param viewLayerParams\n * @returns The new ViewLayer\n */\n createLayer(viewLayerParams: ViewLayerParams): ViewLayer {\n let viewLayer = this.layers[viewLayerParams.id];\n if (!viewLayer) {\n viewLayer = new ViewLayer({\n // Automatically creates ViewObjects\n id: viewLayerParams.id,\n view: this,\n viewer: this.viewer,\n });\n this.layers[viewLayerParams.id] = viewLayer;\n this.onLayerCreated.dispatch(this, viewLayer);\n viewLayer.onDestroyed.one(() => {\n delete this.layers[viewLayer.id];\n this.onLayerDestroyed.dispatch(this, viewLayer);\n });\n }\n viewLayer.autoDestroy = false;\n return viewLayer;\n }\n\n /**\n * Attempts to pick a ViewObject in this View.\n *\n * @param pickParams Picking parameters.\n * @param pickResult Picking results, when caller wants to manage them externally.\n * @throws {@link @xeokit/core!SDKError | SDKError}\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n * * Illegal picking parameters given.\n * @returns {@link @xeokit/viewer!PickResult}\n * * Picking attempt completed.\n */\n pick(pickParams: PickParams, pickResult?: PickResult): PickResult | null {\n return this.viewer.renderer.pick(this.viewIndex, pickParams, pickResult);\n }\n\n /**\n * Enter snapshot mode.\n *\n * Switches rendering to a hidden snapshot canvas.\n *\n * Exit snapshot mode using {@link Viewer#endSnapshot}.\n */\n beginSnapshot() {\n if (this.#snapshotBegun) {\n return;\n }\n this.viewer.renderer.beginSnapshot(this.viewIndex);\n this.#snapshotBegun = true;\n }\n\n /**\n * Captures a snapshot image of this View.\n *\n * @param snapshotParams\n * @param snapshotResult\n */\n getSnapshot(snapshotParams: SnapshotParams, snapshotResult?: SnapshotResult): SnapshotResult {\n // const needFinishSnapshot = (!this.#snapshotBegun);\n // const resize = (snapshotParams.width !== undefined && snapshotParams.height !== undefined);\n // const canvas = this.htmlElement;\n // const saveWidth = canvas.clientWidth;\n // const saveHeight = canvas.clientHeight;\n // const width = snapshotParams.width ? Math.floor(snapshotParams.width) : canvas.width;\n // const height = snapshotParams.height ? Math.floor(snapshotParams.height) : canvas.height;\n //\n // if (resize) {\n // // canvas.width = width;\n // // canvas.height = height;\n // }\n //\n // if (!this.#snapshotBegun) {\n // this.onSnapshotStarted.dispatch(this, {\n // width,\n // height\n // });\n // }\n\n // if (!snapshotParams.includeGizmos) {\n // this.sendToPlugins(\"snapshotStarting\"); // Tells plugins to hide things that shouldn't be in snapshot\n // }\n //\n // const captured = {};\n // for (let i = 0, len = this._plugins.length; i < len; i++) {\n // const plugin = this._plugins[i];\n // if (plugin.getContainerElement) {\n // const container = plugin.getContainerElement();\n // if (container !== document.body) {\n // if (!captured[container.id]) {\n // captured[container.id] = true;\n // html2canvas(container).then(function (canvas) {\n // document.body.appendChild(canvas);\n // });\n // }\n // }\n // }\n // }\n //\n // this.scene._renderer.renderSnapshot();\n //\n // const imageDataURI = this.scene._renderer.readSnapshot(snapshotParams);\n //\n // if (resize) {\n // canvas.width = saveWidth;\n // canvas.height = saveHeight;\n //\n // this.scene.glRedraw();\n // }\n //\n // if (!snapshotParams.includeGizmos) {\n // this.sendToPlugins(\"snapshotFinished\");\n // }\n //\n // if (needFinishSnapshot) {\n // this.endSnapshot();\n // }\n\n // return imageDataURI;\n return new SnapshotResult();\n }\n\n #registerSectionPlane(sectionPlane: SectionPlane) {\n this.sectionPlanesList.push(sectionPlane);\n this.sectionPlanes[sectionPlane.id] = sectionPlane;\n this.#sectionPlanesHash = null;\n this.rebuild();\n this.onSectionPlaneCreated.dispatch(this, sectionPlane);\n }\n\n #deregisterSectionPlane(sectionPlane: SectionPlane) {\n for (let i = 0, len = this.sectionPlanesList.length; i < len; i++) {\n if (this.sectionPlanesList[i].id === sectionPlane.id) {\n this.sectionPlanesList.splice(i, 1);\n this.#sectionPlanesHash = null;\n delete this.sectionPlanes[sectionPlane.id];\n this.rebuild();\n this.onSectionPlaneDestroyed.dispatch(this, sectionPlane);\n return;\n }\n }\n }\n\n getNumAllocatedSectionPlanes(): number {\n return this.sectionPlanesList.length;\n }\n\n /**\n * Destroys this View.\n *\n * Causes {@link @xeokit/viewer!Viewer | Viewer} to fire a \"viewDestroyed\" event.\n */\n destroy() {\n this.viewer.onTick.unsubscribe(this.#onTick);\n this.#destroyViewLayers();\n this.#destroyViewObjects();\n this.onObjectCreated.clear();\n this.onObjectDestroyed.clear();\n this.onObjectVisibility.clear();\n this.onObjectXRayed.clear();\n this.onLayerCreated.clear();\n this.onLayerDestroyed.clear();\n this.onSectionPlaneCreated.clear();\n this.onSectionPlaneDestroyed.clear();\n super.destroy();\n }\n\n #destroyViewObjectsForSceneModel(sceneModel: SceneModel) {\n const objects = sceneModel.objects;\n for (let id in objects) {\n const object = objects[id];\n const layerId = object.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n const viewObject = this.objects[object.id];\n this.deregisterViewObject(viewObject);\n if (viewLayer) {\n viewLayer.deregisterViewObject(viewObject);\n if (viewLayer.autoDestroy && viewLayer.numObjects === 0) {\n viewLayer.destroy();\n }\n }\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n\n #destroyViewLayers() {\n const viewLayers = this.layers;\n for (let id in viewLayers) {\n const viewLayer = viewLayers[id];\n viewLayer.destroy();\n }\n }\n\n #destroyViewObjects() {\n const objects = this.objects;\n for (let id in objects) {\n const object = objects[id];\n const sceneObject = object.sceneObject;\n const layerId = sceneObject.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n const viewObject = this.objects[object.id];\n this.deregisterViewObject(viewObject);\n if (viewLayer) {\n viewLayer.deregisterViewObject(viewObject);\n if (viewLayer.autoDestroy && viewLayer.numObjects === 0) {\n viewLayer.destroy();\n }\n }\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n}\n\nexport {View};\n", "import type {FloatArrayParam} from \"@xeokit/math\";\n\nimport type {ViewLayer} from \"./ViewLayer\";\nimport type {SceneObject} from \"@xeokit/scene\";\nimport type {RendererObject} from \"@xeokit/scene/src/RendererObject\";\nimport {SDKError} from \"@xeokit/core\";\n\n/**\n * Represents and controls the visual state of a {@link @xeokit/scene!SceneModel | SceneObject} in\n * a {@link @xeokit/viewer!View |View's} canvas.\n *\n * ## Summary\n *\n * * Stored in {@link View.objects | View.objects} and {@link @xeokit/viewer!ViewLayer.objects | ViewLayer.objects}\n * * Viewer automatically creates one of these in each existing {@link @xeokit/viewer!View} for each {@link @xeokit/scene!SceneModel | SceneObject} created\n * * {@link @xeokit/scene!SceneObject.layerId | SceneObject.layerId} determines which of the View's {@link @xeokit/viewer!ViewLayer | ViewLayers} to put the ViewObject in\n *\n * ## Overview\n *\n * Every View automatically maintains within itself a ViewObject for each {@link @xeokit/scene!SceneModel | SceneObject} that exists in the {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * Whenever we create a SceneObject, each View will automatically create a corresponding ViewObject within itself. When\n * we destroy a SceneObject, each View will automatically destroy its corresponding ViewObject. The ViewObjects in a View\n * are therefore a manifest of the ViewerObjects in the View.\n *\n * {@link @xeokit/viewer!ViewLayer}.\n */\nexport class ViewObject {\n\n /**\n * Unique ID of this ViewObject within {@link @xeokit/viewer!ViewLayer.objects}.\n */\n public readonly id: string;\n\n /**\n * ID of this ViewObject within the originating system.\n */\n public readonly originalSystemId: string;\n\n /**\n * The ViewLayer to which this ViewObject belongs.\n */\n public readonly layer: ViewLayer;\n\n /**\n * The corresponding {@link @xeokit/scene!SceneObject}.\n */\n public readonly sceneObject: SceneObject;\n\n /**\n * The corresponding {@link RendererObject}.\n * @internal\n */\n #rendererObject: RendererObject;\n\n #state: {\n visible: boolean;\n culled: boolean;\n pickable: boolean;\n clippable: boolean;\n collidable: boolean;\n xrayed: boolean;\n selected: boolean;\n highlighted: boolean;\n colorize: Float32Array;\n colorized: boolean;\n opacityUpdated: boolean;\n };\n\n /**\n * @private\n */\n constructor(layer: ViewLayer, sceneObject: SceneObject, rendererObject: RendererObject) {\n\n this.id = sceneObject.id;\n this.originalSystemId = sceneObject.originalSystemId;\n this.layer = layer;\n this.sceneObject = sceneObject;\n this.#rendererObject = rendererObject;\n\n this.#state = {\n visible: true,\n culled: false,\n pickable: true,\n clippable: true,\n collidable: true,\n xrayed: false,\n selected: false,\n highlighted: false,\n colorize: new Float32Array(4),\n colorized: false,\n opacityUpdated: false,\n };\n\n this.#rendererObject.setVisible(this.layer.view.viewIndex, this.#state.visible);\n\n // this.#rendererObject.initFlags(this.layer.view.viewIndex, this.#state);\n\n this.layer.objectVisibilityUpdated(this, this.#state.visible, true);\n\n //this.#rendererObject.setClippable(this.layer.view.viewIndex, this.#state.clippable);\n\n this.#rendererObject.setPickable(this.layer.view.viewIndex, this.#state.pickable);\n }\n\n /**\n * Gets the World-space axis-aligned 3D boundary of this ViewObject.\n */\n get aabb(): FloatArrayParam {\n return this.sceneObject.aabb;\n }\n\n /**\n * Gets if this ViewObject is visible.\n *\n * * When {@link @xeokit/viewer!ViewObject.visible} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.visibleObjects}.\n * * Each ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsVisible} to batch-update the visibility of ViewObjects, which fires a single event for the batch.\n */\n get visible(): boolean {\n return this.#state.visible;\n }\n\n /**\n * Sets if this ViewObject is visible.\n *\n * * When {@link @xeokit/viewer!ViewObject.visible} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.visibleObjects}.\n * * Each ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Fires an \"objectVisibility\" event on associated {@link @xeokit/viewer!ViewLayer}s.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsVisible} to batch-update the visibility of ViewObjects, which fires a single event for the batch.\n */\n set visible(visible: boolean) {\n if (visible === this.#state.visible) {\n return;\n }\n this.#state.visible = visible;\n const result = this.#rendererObject.setVisible(this.layer.view.viewIndex, visible);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectVisibilityUpdated(this, visible, true);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is X-rayed.\n *\n * * When {@link @xeokit/viewer!ViewObject.xrayed} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.xrayedObjects | ViewLayer.xrayedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} to batch-update the X-rayed state of ViewObjects.\n */\n get xrayed(): boolean {\n return this.#state.xrayed;\n }\n\n /**\n * Sets if this ViewObject is X-rayed.\n *\n * * When {@link @xeokit/viewer!ViewObject.xrayed} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.xrayedObjects | ViewLayer.xrayedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} to batch-update the X-rayed state of ViewObjects.\n */\n set xrayed(xrayed: boolean) {\n if (this.#state.xrayed === xrayed) {\n return;\n }\n this.#state.xrayed = xrayed;\n const result = this.#rendererObject.setXRayed(this.layer.view.viewIndex, xrayed);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectXRayedUpdated(this, xrayed);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is highlighted.\n *\n * * When {@link @xeokit/viewer!ViewObject.highlighted} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.highlightedObjects | ViewLayer.highlightedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsHighlighted} to batch-update the highlighted state of ViewObjects.\n */\n get highlighted(): boolean {\n return this.#state.highlighted;\n }\n\n /**\n * Sets if this ViewObject is highlighted.\n *\n * * When {@link @xeokit/viewer!ViewObject.highlighted} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.highlightedObjects | ViewLayer.highlightedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsHighlighted} to batch-update the highlighted state of ViewObjects.\n */\n set highlighted(highlighted: boolean) {\n if (highlighted === this.#state.highlighted) {\n return;\n }\n this.#state.highlighted = highlighted;\n const result = this.#rendererObject.setHighlighted(this.layer.view.viewIndex, highlighted);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectHighlightedUpdated(this, highlighted);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is selected.\n *\n * * When {@link @xeokit/viewer!ViewObject.selected} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.selectedObjects | ViewLayer.selectedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsSelected} to batch-update the selected state of ViewObjects.\n */\n get selected(): boolean {\n return this.#state.selected;\n }\n\n /**\n * Sets if this ViewObject is selected.\n *\n * * When {@link @xeokit/viewer!ViewObject.selected} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.selectedObjects | ViewLayer.selectedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsSelected} to batch-update the selected state of ViewObjects.\n */\n set selected(selected: boolean) {\n if (selected === this.#state.selected) {\n return;\n }\n this.#state.selected = selected;\n const result = this.#rendererObject.setSelected(this.layer.view.viewIndex, selected);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectSelectedUpdated(this, selected);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is culled.\n *\n * * The ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCulled} to batch-update the culled state of ViewObjects.\n */\n get culled(): boolean {\n return this.#state.culled;\n }\n\n /**\n * Sets if this ViewObject is culled.\n *\n * * The ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCulled} to batch-update the culled state of ViewObjects.\n */\n set culled(culled: boolean) {\n if (culled === this.#state.culled) {\n return;\n }\n const result = this.#rendererObject.setCulled(this.layer.view.viewIndex, culled);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.culled = culled;\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is clippable.\n *\n * * Clipping is done by the {@link SectionPlane}s in {@link @xeokit/viewer!ViewLayer.sectionPlanes}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsClippable} to batch-update the clippable state of ViewObjects.\n */\n get clippable(): boolean {\n return this.#state.clippable;\n }\n\n /**\n * Sets if this ViewObject is clippable.\n *\n * * Clipping is done by the {@link SectionPlane}s in {@link @xeokit/viewer!ViewLayer.sectionPlanes}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsClippable} to batch-update the clippable state of ViewObjects.\n */\n set clippable(clippable: boolean) {\n if (clippable === this.#state.clippable) {\n return;\n }\n const result = this.#rendererObject.setCulled(this.layer.view.viewIndex, clippable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.clippable = clippable;\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is included in boundary calculations.\n *\n * * When ````true````, the 3D World boundaries returned by {@link @xeokit/viewer!ViewLayer.aabb} will include this ViewObject's boundary.\n * * The ViewObject's 3D boundary is held in {@link @xeokit/scene!SceneObject.aabb}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCollidable} to batch-update the collidable state of ViewObjects.\n */\n get collidable(): boolean {\n return this.#state.collidable;\n }\n\n /**\n * Sets if this ViewObject included in boundary calculations.\n *\n * * When ````true````, the 3D World boundaries returned by {@link @xeokit/viewer!ViewLayer.aabb} will include this ViewObject's boundary.\n * * The ViewObject's 3D boundary is held in {@link @xeokit/scene!SceneObject.aabb}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCollidable} to batch-update the collidable state of ViewObjects.\n */\n set collidable(collidable: boolean) {\n if (collidable === this.#state.collidable) {\n return;\n }\n const result = this.#rendererObject.setCollidable(this.layer.view.viewIndex, collidable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.collidable = collidable;\n // this._setAABBDirty();\n // this.layer._aabbDirty = true;\n }\n\n /**\n * Gets if this ViewObject is pickable.\n *\n * * Picking is done with {@link @xeokit/viewer!View.pick}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsPickable} to batch-update the pickable state of ViewObjects.\n */\n get pickable(): boolean {\n return this.#state.pickable;\n }\n\n /**\n * Sets if this ViewObject is pickable.\n *\n * * Picking is done with {@link @xeokit/viewer!View.pick}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsPickable} to batch-update the pickable state of ViewObjects.\n */\n set pickable(pickable: boolean) {\n if (this.#state.pickable === pickable) {\n return;\n }\n const result = this.#rendererObject.setPickable(this.layer.view.viewIndex, pickable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.pickable = pickable;\n // No need to trigger a render;\n // state is only used when picking\n }\n\n /**\n * Gets the RGB colorize color for this ViewObject.\n *\n * * Multiplies by rendered fragment colors.\n * * Each element of the color is in range ````[0..1]````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsColorized} to batch-update the colorized state of ViewObjects.\n */\n get colorize(): Float32Array {\n return this.#state.colorize;\n }\n\n /**\n * Sets the RGB colorize color for this ViewObject.\n *\n * * Multiplies by rendered fragment colors.\n * * Each element of the color is in range ````[0..1]````.\n * * Set to ````null```` or ````undefined```` to reset the colorize color to its default value of ````[1,1,1]````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsColorized} to batch-update the colorized state of ViewObjects.\n */\n set colorize(value: FloatArrayParam | undefined | null) {\n let colorize = this.#state.colorize;\n if (value) {\n colorize[0] = value[0];\n colorize[1] = value[1];\n colorize[2] = value[2];\n } else {\n colorize[0] = 1;\n colorize[1] = 1;\n colorize[2] = 1;\n }\n const result = this.#rendererObject.setColorize(this.layer.view.viewIndex, colorize);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.colorized = !!value;\n this.layer.objectColorizeUpdated(this, this.#state.colorized);\n this.layer.redraw();\n }\n\n /**\n * Gets the opacity factor for this ViewObject.\n *\n * * This is a factor in range ````[0..1]```` which multiplies by the rendered fragment alphas.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsOpacity} to batch-update the opacities of ViewObjects.\n */\n get opacity(): number {\n return this.#state.colorize[3];\n }\n\n /**\n * Sets the opacity factor for this ViewObject.\n *\n * * This is a factor in range ````[0..1]```` which multiplies by the rendered fragment alphas.\n * * Set to ````null```` or ````undefined```` to reset the opacity to its default value of ````1````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsOpacity} to batch-update the opacities of ViewObjects.\n */\n set opacity(opacity: number | undefined | null) {\n let colorize = this.#state.colorize;\n this.#state.opacityUpdated = opacity !== null && opacity !== undefined;\n // @ts-ignore\n colorize[3] = this.#state.opacityUpdated ? opacity : 1.0;\n this.layer.objectOpacityUpdated(this, this.#state.opacityUpdated);\n this.layer.redraw();\n }\n\n /**\n * @private\n */\n _destroy() {\n // Called by ViewLayer#destroyViewObjects\n if (this.#state.visible) {\n this.layer.objectVisibilityUpdated(this, false, false);\n }\n if (this.#state.xrayed) {\n this.layer.objectXRayedUpdated(this, false);\n }\n if (this.#state.selected) {\n this.layer.objectSelectedUpdated(this, false);\n }\n if (this.#state.highlighted) {\n this.layer.objectHighlightedUpdated(this, false);\n }\n if (this.#state.colorized) {\n this.layer.objectColorizeUpdated(this, false);\n }\n if (this.#state.opacityUpdated) {\n this.layer.objectOpacityUpdated(this, false);\n }\n this.layer.redraw();\n }\n}\n\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\n\nimport * as matrix from '@xeokit/matrix';\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * An arbitrarily-aligned World-space clipping plane.\n *\n * ## Summary\n *\n * * Belongs to a {@link @xeokit/viewer!View}.\n * * Slices portions off {@link @xeokit/viewer!ViewObject | ViewObjects} to create cross-section views or reveal interiors.\n * * Registered by {@link SectionPlane.id} in {@link View.sectionPlanes}.\n * * Indicates its World-space position in {@link SectionPlane.pos} and orientation vector in {@link SectionPlane.dir}.\n * * Discards elements from the half-space in the direction of {@link SectionPlane.dir}.\n * * Can be be enabled or disabled via {@link SectionPlane.active}.\n *\n * ## Usage\n *\n * In the example below, we'll create two SectionPlanes to slice a model loaded from glTF. Note that we could also create them\n * using a {@link SectionPlanesPlugin}.\n *\n * ````javascript\n * import {Viewer, GLTFLoaderPlugin, SectionPlane} from \"xeokit-viewer.es.js\";\n *\n * const viewer = new Viewer({\n * elementId: \"myCanvas\"\n * });\n *\n * const gltfLoaderPlugin = new GLTFModelsPlugin(viewer, {\n * id: \"GLTFModels\"\n * });\n *\n * const model = gltfLoaderPlugin.load({\n * id: \"myModel\",\n * src: \"./models/gltf/mygltfmodel.gltf\"\n * });\n *\n * // Create a SectionPlane on negative diagonal\n * const sectionPlane1 = new SectionPlane(viewer.scene, {\n * pos: [1.0, 1.0, 1.0],\n * dir: [-1.0, -1.0, -1.0],\n * active: true\n * }),\n *\n * // Create a SectionPlane on positive diagonal\n * const sectionPlane2 = new SectionPlane(viewer.scene, {\n * pos: [-1.0, -1.0, -1.0],\n * dir: [1.0, 1.0, 1.0],\n * active: true\n * });\n * ````\n */\nclass SectionPlane extends Component {\n\n /**\n ID of this SectionPlane, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this DirLight belongs.\n *\n * @property view\n * @type {View}\n * @final\n */\n public readonly view: View;\n\n /**\n * Emits an event each time {@link SectionPlane.pos} changes.\n *\n * @event\n */\n readonly onPos: EventEmitter;\n\n /**\n * Emits an event each time {@link SectionPlane.dir} changes.\n *\n * @event\n */\n readonly onDir: EventEmitter;\n\n /**\n * Emits an event each time {@link SectionPlane.active} changes.\n *\n * @event\n */\n readonly onActive: EventEmitter;\n\n #state: {\n pos: Float64Array;\n active: boolean;\n dist: number;\n dir: Float32Array\n };\n\n /**\n * @private\n * @constructor\n */\n constructor(view: View, cfg: {\n pos?: FloatArrayParam;\n active?: boolean;\n dir?: FloatArrayParam\n } = {}) {\n\n super(view, cfg);\n\n this.view = view;\n\n this.#state = {\n active: cfg.active !== false,\n pos: new Float64Array(cfg.pos || [0, 0, 0]),\n dir: new Float32Array(cfg.pos || [0, 0, -1]),\n dist: 0\n };\n\n this.onPos = new EventEmitter(new EventDispatcher());\n this.onDir = new EventEmitter(new EventDispatcher());\n this.onActive = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets if this SectionPlane is active or not.\n *\n * Default value is ````true````.\n *\n * @returns Returns ````true```` if active.\n */\n get active(): boolean {\n return this.#state.active;\n }\n\n /**\n * Sets if this SectionPlane is active or not.\n *\n * Default value is ````true````.\n *\n * @param value Set ````true```` to activate else ````false```` to deactivate.\n */\n set active(value: boolean) {\n if (this.#state.active === value) {\n return;\n }\n this.#state.active = value;\n this.view.redraw();\n this.onActive.dispatch(this, this.#state.active);\n }\n\n /**\n * Gets the World-space position of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, 0]````.\n *\n * @returns Current position.\n */\n get pos(): Float64Array {\n return this.#state.pos;\n }\n\n /**\n * Sets the World-space position of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, 0]````.\n *\n * @param value New position.\n */\n set pos(value: FloatArrayParam) {\n this.#state.pos.set(value);\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.onPos.dispatch(this, this.#state.pos);\n }\n\n /**\n * Gets the direction of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, -1]````.\n *\n * @returns value Current direction.\n */\n get dir(): Float32Array {\n return this.#state.dir;\n }\n\n /**\n * Sets the direction of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, -1]````.\n *\n * @param value New direction.\n */\n set dir(value: FloatArrayParam) {\n this.#state.dir.set(value);\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.view.redraw();\n this.onDir.dispatch(this, this.#state.dir);\n }\n\n /**\n * Gets this SectionPlane's distance to the origin of the World-space coordinate system.\n *\n * This is the dot product of {@link SectionPlane.pos} and {@link SectionPlane.dir} and is automatically re-calculated\n * each time either of two properties are updated.\n *\n * @returns Distance to the origin of the World-space coordinate system.\n */\n get dist(): number {\n return this.#state.dist;\n }\n\n /**\n * Inverts the direction of {@link SectionPlane.dir}.\n */\n flipDir() {\n const dir = this.#state.dir;\n dir[0] *= -1.0;\n dir[1] *= -1.0;\n dir[2] *= -1.0;\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.onDir.dispatch(this, this.#state.dir);\n this.view.redraw();\n }\n\n /**\n * Destroys this SectionPlane.\n */\n destroy() {\n this.onPos.clear();\n this.onActive.clear;\n this.onDir.clear();\n super.destroy();\n }\n}\n\nexport {SectionPlane};\n", "import type {View} from \"./View\";\nimport {CentimetersUnit, FeetUnit, InchesUnit, MetersUnit, MillimetersUnit, YardsUnit} from \"@xeokit/constants\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {createVec3} from \"@xeokit/matrix\";\n\n\nconst unitsInfo = {\n [MetersUnit]: {\n abbrev: \"m\"\n },\n [CentimetersUnit]: {\n abbrev: \"cm\"\n },\n [MillimetersUnit]: {\n abbrev: \"mm\"\n },\n [YardsUnit]: {\n abbrev: \"yd\"\n },\n [FeetUnit]: {\n abbrev: \"ft\"\n },\n [InchesUnit]: {\n abbrev: \"in\"\n }\n};\n\n/**\n * Configures its {@link @xeokit/viewer!View}'s measurement unit and mapping between the Real-space and World-space 3D Cartesian coordinate systems.\n *\n *\n * ## Summary\n *\n * * Located at {@link View.metrics}.\n * * {@link Metrics.units} configures the Real-space unit type, which is {@link @xeokit/constants!MetersUnit} by default.\n * * {@link Metrics.scale} configures the number of Real-space units represented by each unit within the World-space 3D coordinate system. This is ````1.0```` by default.\n * * {@link Metrics.origin} configures the 3D Real-space origin, in current Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin sits, This is ````[0,0,0]```` by default.\n *\n * ## Usage\n *\n * ````JavaScript\n * import {Viewer, constants} from \"xeokit-viewer.es.js\";\n *\n * const viewer = new Viewer();\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas1\"\n * });\n *\n * const metrics = view1.metrics;\n *\n * metrics.units = MetersUnit;\n * metrics.scale = 10.0;\n * metrics.origin = [100.0, 0.0, 200.0];\n * ````\n */\nclass Metrics extends Component {\n\n #units: number;\n #scale: number;\n #origin: FloatArrayParam;\n\n /**\n * Emits an event each time {@link Metrics.units} changes.\n *\n * @event\n */\n readonly onUnits: EventEmitter;\n\n /**\n * Emits an event each time {@link Metrics.scale} changes.\n *\n * @event\n */\n readonly onScale: EventEmitter;\n\n /**\n * Emits an event each time {@link Metrics.origin} changes.\n *\n * @event\n */\n readonly onOrigin: EventEmitter;\n\n\n /**\n * @private\n */\n constructor(view: View, cfg: {\n origin?: FloatArrayParam;\n scale?: number;\n units?: number\n } = {\n units: MetersUnit,\n scale: 1.0,\n origin: [1, 1, 1]\n }) {\n\n super(view, cfg);\n\n this.onUnits = new EventEmitter(new EventDispatcher());\n this.onScale = new EventEmitter(new EventDispatcher());\n this.onOrigin = new EventEmitter(new EventDispatcher());\n\n this.#units = MetersUnit;\n this.#scale = 1.0;\n this.#origin = createVec3([0, 0, 0]);\n\n this.units = cfg.units;\n this.scale = cfg.scale;\n this.origin = cfg.origin;\n }\n\n /**\n * Gets info about the supported Real-space unit types.\n *\n * With {@link constants} indicating each unit type, the info will be:\n *\n * ````javascript\n * {\n * [MetersUnit]: {\n * abbrev: \"m\"\n * },\n * [CentimetersUnit]: {\n * abbrev: \"cm\"\n * },\n * [MillimetersUnit]: {\n * abbrev: \"mm\"\n * },\n * [YardsUnit]: {\n * abbrev: \"yd\"\n * },\n * [FeetUnit]: {\n * abbrev: \"ft\"\n * },\n * [InchesUnit]: {\n * abbrev: \"in\"\n * }\n * }\n * ````\n *\n * @type {*}\n */\n get unitsInfo(): {} {\n return unitsInfo;\n }\n\n /**\n * Gets the {@link @xeokit/viewer!View}'s Real-space unit type.\n */\n get units(): number {\n return this.#units;\n }\n\n /**\n * Sets the {@link @xeokit/viewer!View}'s Real-space unit type.\n *\n * Accepted values are {@link @xeokit/constants!MetersUnit}, {@link @xeokit/constants!CentimetersUnit}, {@link @xeokit/constants!MillimetersUnit}, {@link @xeokit/constants!YardsUnit}, {@link @xeokit/constants!FeetUnit} and {@link @xeokit/constants!InchesUnit}.\n */\n set units(value: number | undefined) {\n if (!value) {\n value = MetersUnit;\n }\n // @ts-ignore\n const info = unitsInfo[value];\n if (!info) {\n this.error(\"Unsupported value for 'units': \" + value + \" defaulting to MetersUnit\");\n value = MetersUnit;\n }\n this.#units = value;\n this.onUnits.dispatch(this, this.#units);\n }\n\n /**\n * Gets the number of Real-space units represented by each unit of the {@link @xeokit/viewer!View}'s World-space coordinate system.\n */\n get scale(): number {\n return this.#scale;\n }\n\n /**\n * Sets the number of Real-space units represented by each unit of the {@link @xeokit/viewer!View}'s World-space coordinate system.\n *\n * For example, if {@link Metrics.units} is {@link @xeokit/constants!MetersUnit}, and there are ten meters per World-space coordinate system unit, then ````scale```` would have a value of ````10.0````.\n */\n set scale(value: number | undefined) {\n value = value || 1;\n if (value <= 0) {\n this.error(\"scale value should be larger than zero\");\n return;\n }\n this.#scale = value;\n this.onScale.dispatch(this, this.#scale);\n }\n\n /**\n * Gets the 3D Real-space origin, in Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin ````[0,0,0]```` sits.\n */\n get origin(): FloatArrayParam {\n return this.#origin;\n }\n\n /**\n * Sets the Real-space 3D origin, in Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin ````[0,0,0]```` sits.\n */\n set origin(value: FloatArrayParam | undefined) {\n if (!value) {\n this.#origin[0] = 0;\n this.#origin[1] = 0;\n this.#origin[2] = 0;\n return;\n }\n this.#origin[0] = value[0];\n this.#origin[1] = value[1];\n this.#origin[2] = value[2];\n this.onOrigin.dispatch(this, this.#origin);\n }\n\n /**\n * Converts a 3D position from World-space to Real-space.\n *\n * This is equivalent to ````realPos = #origin + (worldPos * #scale)````.\n *\n * @param worldPos World-space 3D position, in World coordinate system units.\n * @param [realPos] Destination for Real-space 3D position.\n * @returns Real-space 3D position, in units indicated by {@link Metrics#units}.\n */\n worldToRealPos(worldPos: FloatArrayParam, realPos: FloatArrayParam = createVec3()): FloatArrayParam {\n realPos[0] = this.#origin[0] + (this.#scale * worldPos[0]);\n realPos[1] = this.#origin[1] + (this.#scale * worldPos[1]);\n realPos[2] = this.#origin[2] + (this.#scale * worldPos[2]);\n return realPos;\n }\n\n /**\n * Converts a 3D position from Real-space to World-space.\n *\n * This is equivalent to ````worldPos = (worldPos - #origin) / #scale````.\n *\n * @param realPos Real-space 3D position.\n * @param [worldPos] Destination for World-space 3D position.\n * @returns World-space 3D position.\n */\n realToWorldPos(realPos: FloatArrayParam, worldPos: FloatArrayParam = createVec3()): FloatArrayParam {\n worldPos[0] = (realPos[0] - this.#origin[0]) / this.#scale;\n worldPos[1] = (realPos[1] - this.#origin[1]) / this.#scale;\n worldPos[2] = (realPos[2] - this.#origin[2]) / this.#scale;\n return worldPos;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n this.onUnits.clear();\n this.onScale.clear();\n this.onOrigin.clear();\n }\n}\n\nexport {Metrics};\n", "import type {View} from \"./View\";\nimport {Component, SDKError} from \"@xeokit/core\";\nimport {CustomProjectionType, FastRender, FrustumProjectionType, QualityRender} from \"@xeokit/constants\";\n\n/**\n * Configures Scalable Ambient Obscurance (SAO) for a {@link @xeokit/viewer!View}.\n */\nexport class SAO extends Component {\n\n /**\n * The View to which this SAO belongs.\n */\n public readonly view: View;\n\n #state: {\n renderModes: number[];\n intensity: number;\n minResolution: number;\n blendFactor: number;\n numSamples: number;\n bias: number;\n scale: number;\n blur: boolean;\n blendCutoff: number;\n enabled: boolean;\n kernelRadius: number;\n }\n\n /** @private */\n constructor(view: View, params: any) {\n\n super(view, params);\n\n this.view = view;\n\n this.#state = {\n renderModes: [QualityRender],\n enabled: params.enabled !== false,\n kernelRadius: params.kernelRadius || 100.0,\n intensity: (params.intensity !== undefined) ? params.intensity : 0.15,\n bias: (params.bias !== undefined) ? params.bias : 0.5,\n scale: (params.scale !== undefined) ? params.scale : 1.0,\n minResolution: (params.minResolution !== undefined) ? params.minResolution : 0.0,\n numSamples: (params.numSamples !== undefined) ? params.numSamples : 10,\n blur: !!(params.blur),\n blendCutoff: (params.blendCutff !== undefined) ? params.blendCutoff : 0.3,\n blendFactor: (params.blendFactor !== undefined) ? params.blendFactor : 1.0\n };\n }\n\n /**\n * Sets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render SAO.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is [{@link @xeokit/constants!QualityRender | QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Gets whether SAO is supported by this browser and GPU.\n *\n * Even when enabled, SAO will only work if supported.\n */\n get supported(): boolean {\n return this.view.viewer.renderer.getSAOSupported();\n }\n\n /**\n * Gets whether SAO is enabled for the {@link @xeokit/viewer!View}.\n *\n * Even when enabled, SAO will only apply if supported.\n *\n * Default value is ````false````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Sets whether SAO is enabled for the {@link @xeokit/viewer!View}.\n *\n * Even when enabled, SAO will only work if supported.\n *\n * Default value is ````false````.\n */\n set enabled(value: boolean) {\n value = !!value;\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Returns true if SAO is currently possible, where it is supported, enabled, and the current view state is compatible.\n * Called internally by renderers logic.\n * @private\n */\n get possible(): boolean {\n if (!this.supported) {\n return false;\n }\n if (!this.#state.enabled) {\n return false;\n }\n const projectionType = this.view.camera.projectionType;\n if (projectionType === CustomProjectionType) {\n return false;\n }\n if (projectionType === FrustumProjectionType) {\n return false;\n }\n return true;\n }\n\n /**\n * Gets the maximum area that SAO takes into account when checking for possible occlusion for each fragment.\n *\n * Default value is ````100.0````.\n */\n get kernelRadius(): number {\n return this.#state.kernelRadius;\n }\n\n /**\n * Sets the maximum area that SAO takes into account when checking for possible occlusion for each fragment.\n *\n * Default value is ````100.0````.\n */\n set kernelRadius(value: number) {\n if (value === undefined || value === null) {\n value = 100.0;\n }\n if (this.#state.kernelRadius === value) {\n return;\n }\n this.#state.kernelRadius = value;\n this.view.redraw();\n }\n\n /**\n * Gets the degree of darkening (ambient obscurance) produced by the SAO effect.\n *\n * Default value is ````0.15````.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the degree of darkening (ambient obscurance) produced by the SAO effect.\n *\n * Default value is ````0.15````.\n */\n set intensity(value: number) {\n if (value === undefined || value === null) {\n value = 0.15;\n }\n if (this.#state.intensity === value) {\n return;\n }\n this.#state.intensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO bias.\n *\n * Default value is ````0.5````.\n */\n get bias(): number {\n return this.#state.bias;\n }\n\n /**\n * Sets the SAO bias.\n *\n * Default value is ````0.5````.\n */\n set bias(value: number) {\n if (value === undefined || value === null) {\n value = 0.5;\n }\n if (this.#state.bias === value) {\n return;\n }\n this.#state.bias = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO occlusion scale.\n *\n * Default value is ````1.0````.\n */\n get scale(): number {\n return this.#state.scale;\n }\n\n /**\n * Sets the SAO occlusion scale.\n *\n * Default value is ````1.0````.\n */\n set scale(value: number) {\n if (value === undefined || value === null) {\n value = 1.0;\n }\n if (this.#state.scale === value) {\n return;\n }\n this.#state.scale = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO minimum resolution.\n *\n * Default value is ````0.0````.\n */\n get minResolution(): number {\n return this.#state.minResolution;\n }\n\n /**\n * Sets the SAO minimum resolution.\n *\n * Default value is ````0.0````.\n */\n set minResolution(value: number) {\n if (value === undefined || value === null) {\n value = 0.0;\n }\n if (this.#state.minResolution === value) {\n return;\n }\n this.#state.minResolution = value;\n this.view.redraw();\n }\n\n /**\n * Gets the number of SAO samples.\n *\n * Default value is ````10````.\n */\n get numSamples(): number {\n return this.#state.numSamples;\n }\n\n /**\n * Sets the number of SAO samples.\n *\n * Default value is ````10````.\n *\n * Update this sparingly, since it causes a shader recompile.\n */\n set numSamples(value: number) {\n if (value === undefined || value === null) {\n value = 10;\n }\n if (this.#state.numSamples === value) {\n return;\n }\n this.#state.numSamples = value;\n this.view.redraw();\n }\n\n /**\n * Gets whether Guassian blur is enabled.\n *\n * Default value is ````true````.\n */\n get blur(): boolean {\n return this.#state.blur;\n }\n\n /**\n * Sets whether Guassian blur is enabled.\n *\n * Default value is ````true````.\n */\n set blur(value: boolean) {\n value = (value !== false);\n if (this.#state.blur === value) {\n return;\n }\n this.#state.blur = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO blend cutoff.\n *\n * Default value is ````0.3````.\n *\n * Normally you don't need to alter this.\n */\n get blendCutoff(): number {\n return this.#state.blendCutoff;\n }\n\n /**\n * Sets the SAO blend cutoff.\n *\n * Default value is ````0.3````.\n *\n * Normally you don't need to alter this.\n */\n set blendCutoff(value: number) {\n if (value === undefined || value === null) {\n value = 0.3;\n }\n if (this.#state.blendCutoff === value) {\n return;\n }\n this.#state.blendCutoff = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO blend scale.\n *\n * Default value is ````1.0````.\n *\n * Normally you don't need to alter this.\n */\n get blendFactor(): number {\n return this.#state.blendFactor;\n }\n\n /**\n * Sets the SAO blend factor.\n *\n * Default value is ````1.0````.\n *\n * Normally you don't need to alter this.\n */\n set blendFactor(value: number) {\n if (value === undefined || value === null) {\n value = 1.0;\n }\n if (this.#state.blendFactor === value) {\n return;\n }\n this.#state.blendFactor = value;\n this.view.redraw();\n }\n\n /**\n * Gets if SAO is currently applied.\n *\n * This is `true` when {@link SAO.enabled | SAO.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link SAO.renderModes | SAO.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport {QualityRender} from \"@xeokit/constants\";\n\n\n/**\n * Configures when textures are rendered on {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * ## Summary\n *\n * * Located at {@link View.textures}.\n */\nclass Texturing extends Component {\n\n /**\n * The View to which this Texturing belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n enabled: boolean;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n enabled?: boolean;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n renderModes: options.renderModes || [QualityRender],\n enabled: options.enabled !== false\n };\n }\n\n /**\n * Sets which rendering modes in which to render textures.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render textures.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets if textures on {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if textures on {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Gets if textures are currently applied.\n *\n * This is `true` when {@link Texturing.enabled | Texturing.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link Texturing.renderModes | Texturing.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {Texturing};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\n\n\n/**\n * Configures the appearance of \"lines\" geometry primitives.\n *\n * * Located at {@link View#linesMaterial}.\n */\nclass LinesMaterial extends Component {\n\n /**\n * The View to which this LinesMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n lineWidth: number\n };\n\n /**\n * @private\n */\n constructor(view: View, options: { lineWidth: number } = {lineWidth: 1}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n lineWidth: (options.lineWidth !== undefined && options.lineWidth !== null) ? options.lineWidth : 1\n };\n }\n\n /**\n * Sets line width.\n *\n * Default value is ````1```` pixels.\n */\n set lineWidth(value: number) {\n this.#state.lineWidth = value || 1;\n this.view.redraw();\n }\n\n /**\n * Gets the line width.\n *\n * Default value is ````1```` pixels.\n */\n get lineWidth(): number {\n return this.#state.lineWidth;\n }\n}\n\nexport {LinesMaterial};", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\n\nimport {ViewObject} from \"./ViewObject\";\nimport type {Viewer} from \"./Viewer\";\nimport type {View} from \"./View\";\nimport type {Scene, SceneModel} from \"@xeokit/scene\";\n\n\n\n/**\n * A layer of {@link @xeokit/viewer!ViewObject | ViewObjects} in a {@link @xeokit/viewer!View}.\n *\n * See {@link \"@xeokit/viewer\"} for usage.\n *\n * ## Summary\n *\n * * Automatically stores a {@link @xeokit/viewer!ViewObject} for each existing {@link RendererObject} that has a matching {@link RendererObject.layerId | ViewerObject.layerId}\n * * Useful for segreggating {@link @xeokit/viewer!ViewObject | ViewObjects} into layers\n * * Created automatically or manually (see {@link View.createLayer | View.createLayer})\n * * Stored in {@link View.layers | View.layers}\n *\n * ## Overview\n *\n * ViewLayers organize a {@link View |View's} {@link @xeokit/viewer!ViewObject | ViewObjects} into layers, according to which aspects of\n * the view they represent. They make it easier for us to focus our interactions on the ViewObjects that are relevant\n * to the particular aspects we're interested in.\n *\n * ### Typical use case: segregating model objects from environment objects\n *\n * A typical use case for this feature is to group environmental {@link @xeokit/viewer!ViewObject | ViewObjects} (e.g. ground, skybox) in an \"environment\" ViewLayer,\n * and group model ViewObjects in a \"model\" ViewLayer. Then we can focus our model interactions (show, hide, highlight,\n * save/load BCF viewpoints, etc.) on the ViewObjects in the \"model\" ViewLayer, without involving the \"environment\"\n * ViewObjects at all, which are effectively in the background. We can basically ignore the environment objects as we\n * do various batch operations on our model objects, i.e. \"X-ray all\", \"X-ray everything except for walls\" and so on.\n *\n * ### Automatic ViewLayers\n *\n * By default, each {@link @xeokit/viewer!View} automatically lazy-creates ViewLayers within itself as required. As {@link RendererObject | ViewerObjects} appear in the\n * {@link @xeokit/viewer!Viewer | Viewer}, {@link @xeokit/viewer!ViewObject | ViewObjects} and Viewlayers magically appear in each existing View.\n *\n * Recall that, whenever a {@link RendererObject} is created, each existing {@link @xeokit/viewer!View} will automatically create a\n * corresponding {@link @xeokit/viewer!ViewObject} to represent and control that ViewerObject's appearance within the View's canvas.\n *\n * If the {@link RendererObject} also happens to have a value set on its {@link RendererObject.layerId} ID property, then the View\n * will also automatically ensure that it contains a matching {@link @xeokit/viewer!ViewLayer}, and will register the new ViewObject\n * in that ViewLayer. Note that each ViewObject can belong to a maximum of one ViewLayer.\n *\n * When a {@link @xeokit/viewer!View} automatically creates Viewlayers, it will also automatically destroy them again whenever\n * their {@link RendererObject | ViewerObjects} have all been destroyed.\n *\n * ### Manual ViewLayers\n *\n * We can configure a {@link @xeokit/viewer!View} to **not** automatically create ViewLayers, and instead rely on us to manually create them.\n *\n * When we do that, the View will only create the {@link @xeokit/viewer!ViewObject | ViewObjects} within itself for the ViewLayers that we created. The\n * View will ignore all ViewerObjects that don't have {@link RendererObject.layerId} values that match the IDs of our\n * manually-created ViewLayers.\n *\n * This feature is useful for ensuring that aspect-focused Views don't contain huge numbers of unused ViewObjects for\n * ViewerObjects that they never need to show.\n *\n * When we manually create ViewLayers like this, then the View will not automatically destroy them whenever\n * their {@link RendererObject | ViewerObjects} have all been destroyed. This keeps the ViewLayers around, in case\n * we create matching ViewerObjects again in future.\n *\n * ## Examples\n *\n * ### Exampe 1: Automatic ViewLayers\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}:\n *\n *````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\"\n * });\n *````\n *\n * Create a {@link @xeokit/viewer!View}, with the default setting of ````false```` for {@link ViewParams.autoLayers}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\",\n * autoLayers: true // <<----------- Default\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * Next, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} containing two model {@link RendererObject | ViewerObjects} that represent a building\n * foundation and walls, along with two environmental ViewerObjects that represent a skybox and ground plane.\n *\n * The ground and skybox ViewerObjects specify that their {@link @xeokit/viewer!ViewObject | ViewObjects} belong\n * to \"environment\" ViewLayers, while the model ViewerObjects specify that their ViewObjects belong to \"model\" ViewLayers.\n *\n * ````javascript\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * // (calls to SceneModel createGeometry and\n * // createLayerMesh omitted for brevity)\n *\n * sceneModel.createObject({\n * id: \"ground\",\n * meshIds: [\"groundMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"skyBox\",\n * meshIds: [\"skyBoxMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseFoundation\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseWalls\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.build();\n * ````\n *\n * Our {@link @xeokit/viewer!View} has now automatically created an \"environment\" {@link @xeokit/viewer!ViewLayer}, which contains {@link @xeokit/viewer!ViewObject | ViewObjects} for the skybox and\n * ground plane ViewerObjects, and a \"model\" ViewLayer, which contains ViewObjects for the house foundation and walls.\n *\n * We can now batch-update the ViewObjects in each ViewLayer independently. As mentioned, this is useful when we need to ignore things\n * like UI or environmental objects in batch-updates, BCF viewpoints etc.\n *\n * ````javascript\n * // viewer.objects contains four ViewerObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.objects contains four ViewObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.layers contains two ViewLayers with IDs \"environment\" and \"model\"\n *\n * const environmentLayer = view1.layers[\"environment\"];\n * environmentLayer.setObjectsVisible(environmentLayer.objectIds, true);\n\n * const modelLayer = view1.layers[\"model\"];\n * modelLayer.setObjectsVisible(modelLayer.objectIds, true);\n * ````\n *\n * ### Example 2: Manual ViewLayers\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}:\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\"\n * });\n * ````\n *\n * Create a {@link @xeokit/viewer!View}, this time with ````false```` for {@link ViewParams.autoLayers}, in order to **not**\n * automatically create ViewLayers on demand:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas1\",\n * autoLayers: false // <<----------- Override default\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * We'll manually create the \"model\" ViewLayer, and won't create an \"environment\" ViewLayer:\n *\n * ````javascript\n * const modelViewLayer = view1.createLayer({\n * id: \"model\",\n * visible: true\n * });\n * ````\n *\n * As we did in the previous example, we'll now create a {@link @xeokit/scene!SceneModel | SceneModel} containing two model\n * {@link RendererObject | ViewerObjects} that represent a building foundation and walls, along with two environmental\n * ViewerObjects that represent a skybox and ground plane.\n *\n * As before, the ground and skybox ViewerObjects specify that their {@link @xeokit/viewer!ViewObject | ViewObjects} belong to \"environment\" ViewLayers,\n * while the model ViewerObjects specify that their ViewObjects belong to \"model\" ViewLayers.\n *\n * ````javascript\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * // (calls to SceneModel createGeometry and\n * // createLayerMesh omitted for brevity)\n *\n * sceneModel.createObject({\n * id: \"ground\",\n * meshIds: [\"groundMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"skyBox\",\n * meshIds: [\"skyBoxMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseFoundation\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseWalls\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.build();\n * ````\n *\n * This time, however, our {@link @xeokit/viewer!View} has now created {@link @xeokit/viewer!ViewObject | ViewObjects} for the \"model\" ViewerObjects, while\n * ignoring the \"environment\" ViewerObjects.\n *\n * As far as this View is concerned, the \"environment\" ViewerObjects do not exist.\n *\n * ````javascript\n * // viewer.scene.objects contains four SceneObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.objects contains two ViewObjects with IDs \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.layers contains one ViewLayer with ID \"model\"\n *\n * const modelLayer = view1.layers[\"model\"];\n * modelLayer.setObjectsVisible(modelLayer.objectIds, true);\n * ````\n */\nclass ViewLayer extends Component {\n\n /**\n ID of this ViewLayer, unique within the {@link @xeokit/viewer!View}.\n\n This ViewLayer is mapped by this ID in {@link View.layers}.\n */\n declare readonly id: string;\n\n /**\n * The Viewer to which this ViewLayer belongs.\n */\n declare readonly viewer: Viewer;\n\n /**\n * The View to which this ViewLayer belongs.\n */\n declare readonly view: View;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * These are the ViewObjects for which {@link @xeokit/viewer!ViewObject.layerId | ViewObject.layerId} has the same value as {@link @xeokit/viewer!ViewLayer.id}.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n *\n * The ViewLayer automatically ensures that there is a {@link @xeokit/viewer!ViewObject} here for\n * each {@link RendererObject} in the {@link @xeokit/viewer!Viewer | Viewer}\n */\n readonly objects: { [key: string]: ViewObject };\n\n /**\n * Map of the currently visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is visible when {@link @xeokit/viewer!ViewObject.visible} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly visibleObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently x-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is x-rayed when {@link @xeokit/viewer!ViewObject.xrayed} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly xrayedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is highlighted when {@link @xeokit/viewer!ViewObject.highlighted} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly highlightedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is selected when {@link @xeokit/viewer!ViewObject.selected} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly selectedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly colorizedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer whose opacity has been updated.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly opacityObjects: { [key: string]: ViewObject };\n\n /**\n * When true, View destroys this ViewLayer as soon as there are no ViewObjects\n * that need it. When false, View retains it.\n * @private\n */\n autoDestroy: boolean;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is created in this ViewLayer.\n *\n * @event\n */\n readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is destroyed in this ViewLayer.\n *\n * @event\n */\n readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Emits an event each time the visibility of a {@link @xeokit/viewer!ViewObject} changes.\n *\n * ViewObjects are shown and hidden with {@link View.setObjectsVisible}, {@link @xeokit/viewer!ViewLayer.setObjectsVisible} or {@link @xeokit/viewer!ViewObject.visible}.\n *\n * @event\n */\n readonly onObjectVisibility: EventEmitter;\n\n #renderModes: number[];\n\n #numObjects: number;\n #objectIds: string[] | null;\n #numVisibleObjects: number;\n #visibleObjectIds: string[] | null;\n #numXRayedObjects: number;\n #xrayedObjectIds: string[] | null;\n #numHighlightedObjects: number;\n #highlightedObjectIds: string[] | null;\n #numSelectedObjects: number;\n #selectedObjectIds: string[] | null;\n #numColorizedObjects: number;\n #colorizedObjectIds: string[] | null;\n #numOpacityObjects: number;\n #opacityObjectIds: string[] | null;\n\n #qualityRender: boolean;\n\n gammaOutput: boolean;\n\n constructor(options: {\n id: string;\n viewer: Viewer;\n view: View;\n qualityRender?: boolean;\n autoDestroy?: boolean;\n }) {\n\n super(options.view, options);\n\n this.id = options.id;\n this.viewer = options.viewer;\n this.view = options.view;\n\n this.objects = {};\n this.visibleObjects = {};\n this.xrayedObjects = {};\n this.highlightedObjects = {};\n this.selectedObjects = {};\n this.colorizedObjects = {};\n this.opacityObjects = {};\n\n this.autoDestroy = (options.autoDestroy !== false);\n\n this.#numObjects = 0;\n this.#numVisibleObjects = 0;\n this.#numXRayedObjects = 0\n this.#numHighlightedObjects = 0;\n this.#numSelectedObjects = 0;\n this.#numColorizedObjects = 0;\n this.#numOpacityObjects = 0;\n\n this.#qualityRender = !!options.qualityRender;\n\n this.#renderModes = [];\n\n this.onObjectCreated = new EventEmitter(new EventDispatcher());\n this.onObjectDestroyed = new EventEmitter(new EventDispatcher());\n this.onObjectVisibility = new EventEmitter(new EventDispatcher());\n\n this.#initViewObjects();\n }\n\n /**\n * Gets the gamma factor.\n */\n get gammaFactor() { // TODO\n return 1.0;\n }\n\n /**\n * Sets which rendering modes in which to render the {@link ViewObject | ViewObjects} in this ViewLayer.\n *\n * Default value is [].\n */\n set renderModes(value: number[]) {\n this.#renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render the {@link ViewObject | ViewObjects} in this ViewLayer.\n *\n * Default value is [].\n */\n get renderModes(): number[] {\n return this.#renderModes;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numObjects(): number {\n return this.#numObjects;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get objectIds(): string[] {\n if (!this.#objectIds) {\n this.#objectIds = Object.keys(this.objects);\n }\n return this.#objectIds;\n }\n\n /**\n * Gets the number of visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numVisibleObjects(): number {\n return this.#numVisibleObjects;\n }\n\n /**\n * Gets the IDs of the visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get visibleObjectIds(): string[] {\n if (!this.#visibleObjectIds) {\n this.#visibleObjectIds = Object.keys(this.visibleObjects);\n }\n return this.#visibleObjectIds;\n }\n\n /**\n * Gets the number of X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numXRayedObjects(): number {\n return this.#numXRayedObjects;\n }\n\n /**\n * Gets the IDs of the X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get xrayedObjectIds(): string[] {\n if (!this.#xrayedObjectIds) {\n this.#xrayedObjectIds = Object.keys(this.xrayedObjects);\n }\n return this.#xrayedObjectIds;\n }\n\n /**\n * Gets the number of highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numHighlightedObjects(): number {\n return this.#numHighlightedObjects;\n }\n\n /**\n * Gets the IDs of the highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get highlightedObjectIds(): string[] {\n if (!this.#highlightedObjectIds) {\n this.#highlightedObjectIds = Object.keys(this.highlightedObjects);\n }\n return this.#highlightedObjectIds;\n }\n\n /**\n * Gets the number of selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numSelectedObjects(): number {\n return this.#numSelectedObjects;\n }\n\n /**\n * Gets the IDs of the selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get selectedObjectIds(): string[] {\n if (!this.#selectedObjectIds) {\n this.#selectedObjectIds = Object.keys(this.selectedObjects);\n }\n return this.#selectedObjectIds;\n }\n\n /**\n * Gets the number of colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numColorizedObjects(): number {\n return this.#numColorizedObjects;\n }\n\n /**\n * Gets the IDs of the colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get colorizedObjectIds(): string[] {\n if (!this.#colorizedObjectIds) {\n this.#colorizedObjectIds = Object.keys(this.colorizedObjects);\n }\n return this.#colorizedObjectIds;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer that have updated opacities.\n */\n get opacityObjectIds(): string[] {\n if (!this.#opacityObjectIds) {\n this.#opacityObjectIds = Object.keys(this.opacityObjects);\n }\n return this.#opacityObjectIds;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer that have updated opacities.\n */\n get numOpacityObjects(): number {\n return this.#numOpacityObjects;\n }\n\n /**\n * @private\n */\n registerViewObject(viewObject: ViewObject) {\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectCreated.dispatch(this, viewObject);\n }\n\n /**\n * @private\n */\n deregisterViewObject(viewObject: ViewObject) {\n delete this.objects[viewObject.id];\n delete this.visibleObjects[viewObject.id];\n delete this.xrayedObjects[viewObject.id];\n delete this.highlightedObjects[viewObject.id];\n delete this.selectedObjects[viewObject.id];\n delete this.colorizedObjects[viewObject.id];\n delete this.opacityObjects[viewObject.id];\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n\n /**\n * @private\n */\n redraw() {\n this.viewer.renderer.setImageDirty(this.view.viewIndex);\n }\n\n /**\n * @private\n */\n objectVisibilityUpdated(viewObject: ViewObject, visible: boolean, notify: boolean = true) {\n if (visible) {\n this.visibleObjects[viewObject.id] = viewObject;\n this.#numVisibleObjects++;\n } else {\n delete this.visibleObjects[viewObject.id];\n this.#numVisibleObjects--;\n }\n this.#visibleObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n this.view.objectVisibilityUpdated(viewObject, visible, notify);\n }\n\n /**\n * @private\n */\n objectXRayedUpdated(viewObject: ViewObject, xrayed: boolean) {\n if (xrayed) {\n this.xrayedObjects[viewObject.id] = viewObject;\n this.#numXRayedObjects++;\n } else {\n delete this.xrayedObjects[viewObject.id];\n this.#numXRayedObjects--;\n }\n this.#xrayedObjectIds = null; // Lazy regenerate\n this.view.objectXRayedUpdated(viewObject, xrayed);\n }\n\n /**\n * @private\n */\n objectHighlightedUpdated(viewObject: ViewObject, highlighted: boolean) {\n if (highlighted) {\n this.highlightedObjects[viewObject.id] = viewObject;\n this.#numHighlightedObjects++;\n } else {\n delete this.highlightedObjects[viewObject.id];\n this.#numHighlightedObjects--;\n }\n this.#highlightedObjectIds = null; // Lazy regenerate\n this.view.objectHighlightedUpdated(viewObject, highlighted);\n }\n\n /**\n * @private\n */\n objectSelectedUpdated(viewObject: ViewObject, selected: boolean) {\n if (selected) {\n this.selectedObjects[viewObject.id] = viewObject;\n this.#numSelectedObjects++;\n } else {\n delete this.selectedObjects[viewObject.id];\n this.#numSelectedObjects--;\n }\n this.#selectedObjectIds = null; // Lazy regenerate\n this.view.objectSelectedUpdated(viewObject, selected);\n }\n\n /**\n * @private\n */\n objectColorizeUpdated(viewObject: ViewObject, colorized: boolean) {\n if (colorized) {\n this.colorizedObjects[viewObject.id] = viewObject;\n this.#numColorizedObjects++;\n } else {\n delete this.colorizedObjects[viewObject.id];\n this.#numColorizedObjects--;\n }\n this.#colorizedObjectIds = null; // Lazy regenerate\n this.view.objectColorizeUpdated(viewObject, colorized);\n }\n\n /**\n * @private\n */\n objectOpacityUpdated(viewObject: ViewObject, opacityUpdated: boolean) {\n if (opacityUpdated) {\n this.opacityObjects[viewObject.id] = viewObject;\n this.#numOpacityObjects++;\n } else {\n delete this.opacityObjects[viewObject.id];\n this.#numOpacityObjects--;\n }\n this.#opacityObjectIds = null; // Lazy regenerate\n this.view.objectOpacityUpdated(viewObject, opacityUpdated);\n }\n\n /**\n * Updates the visibility of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.visible} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.visibleObjects} and {@link @xeokit/viewer!ViewLayer.numVisibleObjects}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param visible Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsVisible(objectIds: string[], visible: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.visible !== visible);\n viewObject.visible = visible;\n if (changed) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n return changed;\n });\n }\n\n /**\n * Updates the collidability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Updates {@link @xeokit/viewer!ViewObject.collidable} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param collidable Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCollidable(objectIds: string[], collidable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.collidable !== collidable);\n viewObject.collidable = collidable;\n return changed;\n });\n }\n\n /**\n * Updates the culled status of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Updates {@link @xeokit/viewer!ViewObject.culled} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param culled Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCulled(objectIds: string[], culled: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.culled !== culled);\n viewObject.culled = culled;\n return changed;\n });\n }\n\n /**\n * Selects or deselects the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.selected} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.selectedObjects} and {@link @xeokit/viewer!ViewLayer.numSelectedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param selected Whether or not to select.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsSelected(objectIds: string[], selected: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.selected !== selected);\n viewObject.selected = selected;\n return changed;\n });\n }\n\n /**\n * Highlights or un-highlights the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.highlighted} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.highlightedObjects} and {@link @xeokit/viewer!ViewLayer.numHighlightedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param highlighted Whether or not to highlight.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsHighlighted(objectIds: string[], highlighted: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.highlighted !== highlighted);\n viewObject.highlighted = highlighted;\n return changed;\n });\n }\n\n /**\n * Applies or removes X-ray rendering for the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.xrayed} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.xrayedObjects} and {@link @xeokit/viewer!ViewLayer.numXRayedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param xrayed Whether or not to xray.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsXRayed(objectIds: string[], xrayed: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.xrayed !== xrayed);\n if (changed) {\n viewObject.xrayed = xrayed;\n }\n return changed;\n });\n }\n\n /**\n * Colorizes the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.colorize} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.colorizedObjects} and {@link @xeokit/viewer!ViewLayer.numColorizedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param colorize - RGB colorize factors in range ````[0..1,0..1,0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsColorized(objectIds: string[], colorize: number[]) {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n viewObject.colorize = colorize;\n });\n }\n\n /**\n * Sets the opacity of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.opacity} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.opacityObjects} and {@link @xeokit/viewer!ViewLayer.numOpacityObjects}.\n *\n * @param objectIds - One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param opacity - Opacity factor in range ````[0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsOpacity(objectIds: string[], opacity: number): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.opacity !== opacity);\n if (changed) {\n viewObject.opacity = opacity;\n }\n return changed;\n });\n }\n\n /**\n * Sets the pickability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.pickable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link @xeokit/viewer!View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param pickable Whether or not to set pickable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsPickable(objectIds: string[], pickable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.pickable !== pickable);\n if (changed) {\n viewObject.pickable = pickable;\n }\n return changed;\n });\n }\n\n /**\n * Sets the clippability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.clippable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link @xeokit/viewer!View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param clippable Whether or not to set clippable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsClippable(objectIds: string[], clippable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.clippable !== clippable);\n if (changed) {\n viewObject.clippable = clippable;\n }\n return changed;\n });\n }\n\n /**\n * Iterates with a callback over the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param callback Callback to execute on each {@link @xeokit/viewer!ViewObject}.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n withObjects(objectIds: string[], callback: Function): boolean {\n let changed = false;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const id = objectIds[i];\n let viewObject = this.objects[id];\n if (viewObject) {\n changed = callback(viewObject) || changed;\n }\n }\n return changed;\n }\n\n #initViewObjects() {\n const models = this.viewer.scene.models;\n for (const id in models) {\n const model = models[id];\n this.#createViewObjects(model);\n }\n this.viewer.scene.onModelCreated.subscribe((scene: Scene, model: SceneModel) => {\n this.#createViewObjects(model);\n });\n // this.viewer.scene.onModelDestroyed.subscribe((scene:Scene, model: SceneModel) => {\n // this.#destroyViewObjects(model);\n // });\n }\n\n #createViewObjects(model: SceneModel) {\n const sceneObjects = model.objects;\n for (let id in sceneObjects) {\n const sceneObject = sceneObjects[id];\n const rendererViewObject = this.viewer.renderer.rendererObjects[id];\n if (sceneObject.layerId == this.id) {\n if (!this.objects[id]) {\n const viewObject = new ViewObject(this, sceneObject, rendererViewObject);\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectCreated.dispatch(this, viewObject);\n }\n }\n }\n }\n\n #destroyViewObjectsForModel(model: SceneModel) {\n const viewerObjects = model.objects;\n for (let id in viewerObjects) {\n const viewerObject = viewerObjects[id];\n const viewObject = this.objects[viewerObject.id];\n if (viewObject) {\n viewObject._destroy();\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n }\n\n /**\n * Destroys this ViewLayer.\n *\n * Causes {@link @xeokit/viewer!Viewer | Viewer} to fire a \"viewDestroyed\" event.\n */\n destroy() {\n this.#destroyViewObjects();\n this.onObjectCreated.clear();\n this.onObjectDestroyed.clear();\n this.onObjectVisibility.clear();\n super.destroy();\n }\n\n #destroyViewObjects() {\n const objects = this.objects;\n for (let id in objects) {\n const viewObject = objects[id];\n this.deregisterViewObject(viewObject);\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n}\n\nexport {ViewLayer};\n", "import {Component} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\nimport type {View} from \"./View\";\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when they are xrayed, highlighted or selected.\n *\n * ## Summary\n *\n * * Located at {@link View.xrayMaterial}, {@link View.highlightMaterial} and {@link View.selectedMaterial}.\n * * XRay a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.xrayed} ````true````.\n * * Highlight a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.highlighted} ````true````.\n * * Select a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.selected} ````true````.\n */\nclass EmphasisMaterial extends Component {\n\n /**\n * The View to which this EmphasisMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n fillColor: Float32Array;\n backfaces: boolean;\n edgeColor: Float32Array;\n edgeWidth: number;\n edgeAlpha: number;\n edges: boolean;\n fillAlpha: number;\n fill: boolean;\n glowThrough: boolean;\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n fillColor?: FloatArrayParam;\n backfaces?: boolean;\n edgeColor?: FloatArrayParam;\n edgeWidth?: number;\n edgeAlpha?: number;\n edges?: boolean;\n fillAlpha?: number;\n fill?: boolean;\n glowThrough?:boolean;\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n fill: !!options.fill,\n fillColor: new Float32Array(options.fillColor || [0.4, 0.4, 0.4]),\n fillAlpha: (options.fillAlpha !== undefined && options.fillAlpha !== null) ? options.fillAlpha : 0.2,\n edges: options.edges !== false,\n edgeColor: new Float32Array(options.edgeColor || [0.2, 0.2, 0.2]),\n edgeAlpha: (options.edgeAlpha !== undefined && options.edgeAlpha !== null) ? options.edgeAlpha : 0.5,\n edgeWidth: (options.edgeWidth !== undefined && options.edgeWidth !== null) ? options.edgeWidth : 1,\n backfaces: !!options.backfaces,\n glowThrough: !!options.glowThrough\n };\n }\n\n /**\n * Sets if the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are filled with color.\n *\n * Default is ````true````.\n */\n set fill(value: boolean) {\n if (this.#state.fill === value) {\n return;\n }\n this.#state.fill = value;\n this.view.redraw();\n }\n\n /**\n * Gets if the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are filled with color.\n *\n * Default is ````true````.\n */\n get fill(): boolean {\n return this.#state.fill;\n }\n\n /**\n * Sets the RGB surface fill color for the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ````[0.4, 0.4, 0.4]````.\n */\n set fillColor(value: FloatArrayParam) {\n const fillColor = this.#state.fillColor;\n if (fillColor[0] === value[0] && fillColor[1] === value[1] && fillColor[2] === value[2]) {\n return;\n }\n fillColor[0] = 0.4;\n fillColor[1] = 0.4;\n fillColor[2] = 0.4;\n this.view.redraw();\n }\n\n /**\n * Gets the RGB surface fill color for the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ````[0.4, 0.4, 0.4]````.\n */\n get fillColor(): Float32Array {\n return this.#state.fillColor;\n }\n\n /**\n * Sets the transparency of the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n set fillAlpha(value: number) {\n if (this.#state.fillAlpha === value) {\n return;\n }\n this.#state.fillAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets the transparency of the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n get fillAlpha(): number {\n return this.#state.fillAlpha;\n }\n\n /**\n * Sets if the edges on emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set edges(value: boolean) {\n if (this.#state.edges === value) {\n return;\n }\n this.#state.edges = value;\n this.view.redraw();\n }\n\n /**\n * Gets if the edges on emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get edges(): boolean {\n return this.#state.edges;\n }\n\n /**\n * Sets the RGB color of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ```` [0.2, 0.2, 0.2]````.\n */\n set edgeColor(value: FloatArrayParam) {\n let edgeColor = this.#state.edgeColor;\n if (edgeColor[0] === value[0] && edgeColor[1] === value[1] && edgeColor[2] === value[2]) {\n return;\n }\n edgeColor[0] = 0.2;\n edgeColor[1] = 0.2;\n edgeColor[2] = 0.2;\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ```` [0.2, 0.2, 0.2]````.\n */\n get edgeColor(): Float32Array {\n return this.#state.edgeColor;\n }\n\n /**\n * Sets the transparency of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n set edgeAlpha(value: number) {\n if (this.#state.edgeAlpha === value) {\n return;\n }\n this.#state.edgeAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets the transparency of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n get edgeAlpha(): number {\n return this.#state.edgeAlpha;\n }\n\n /**\n * Sets the width of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default value is ````1.0```` pixels.\n */\n set edgeWidth(value: number) {\n this.#state.edgeWidth = value;\n this.view.redraw();\n }\n\n /**\n * Gets the width of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * This is not supported by WebGL implementations based on DirectX [2019].\n *\n * Default value is ````1.0```` pixels.\n */\n get edgeWidth(): number {\n return this.#state.edgeWidth;\n }\n\n /**\n * Sets whether to render backfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} when {@link EmphasisMaterial.fill} is ````true````.\n *\n * Default is ````false````.\n */\n set backfaces(value: boolean) {\n if (this.#state.backfaces === value) {\n return;\n }\n this.#state.backfaces = value;\n this.view.redraw();\n }\n\n /**\n * Gets whether to render backfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} when {@link EmphasisMaterial.fill} is ````true````.\n *\n * Default is ````false````.\n */\n get backfaces(): boolean {\n return this.#state.backfaces;\n }\n\n /**\n * Sets whether to render emphasized objects over the top of other objects, as if they were \"glowing through\".\n *\n * Default is ````true````.\n *\n * Note: updating this property will not affect the appearance of objects that are already emphasized.\n *\n * @type {Boolean}\n */\n set glowThrough(value) {\n value = (value !== false);\n if (this.#state.glowThrough === value) {\n return;\n }\n this.#state.glowThrough = value;\n this.view.redraw();\n }\n\n /**\n * Sets whether to render emphasized objects over the top of other objects, as if they were \"glowing through\".\n *\n * Default is ````true````.\n *\n * @type {Boolean}\n */\n get glowThrough() {\n return this.#state.glowThrough;\n }\n\n /**\n * @private\n */\n get hash(): string {\n return \"\";\n }\n\n /**\n * @private\n */\n destroy(): void {\n super.destroy();\n }\n}\n\nexport {EmphasisMaterial};\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {QualityRender} from \"@xeokit/constants\";\n\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when their edges are emphasised.\n *\n * ## Summary\n *\n * * Located at {@link View.edges}.\n * * Emphasise edges of a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.enabled} ````true````.\n */\nclass Edges extends Component {\n\n /**\n * The View to which this Edges belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n edgeColor: Float32Array;\n edgeWidth: number;\n edgeAlpha: number;\n enabled: boolean;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n edgeColor?: FloatArrayParam;\n edgeWidth?: number;\n edgeAlpha?: number;\n enabled?: boolean;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n renderModes: options.renderModes || [QualityRender],\n enabled: options.enabled !== false,\n edgeColor: new Float32Array(options.edgeColor || [0.2, 0.2, 0.2]),\n edgeAlpha: (options.edgeAlpha !== undefined && options.edgeAlpha !== null) ? options.edgeAlpha : 0.5,\n edgeWidth: (options.edgeWidth !== undefined && options.edgeWidth !== null) ? options.edgeWidth : 1\n };\n }\n\n /**\n * Sets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets if edges of {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if edges of {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n\n /////////////////////////////////////////////////////////////////////////\n // HACK\n /////////////////////////////////////////////////////////////////////////\n return false;\n\n // return this.#state.enabled;\n }\n\n /**\n * Sets RGB edge color for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````[0.2, 0.2, 0.2]````.\n */\n set edgeColor(value: FloatArrayParam) {\n let edgeColor = this.#state.edgeColor;\n if (value && edgeColor[0] === value[0] && edgeColor[1] === value[1] && edgeColor[2] === value[2]) {\n return;\n }\n edgeColor[0] = 0.2;\n edgeColor[1] = 0.2;\n edgeColor[2] = 0.2;\n this.view.redraw();\n }\n\n /**\n * Gets RGB edge color for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````[0.2, 0.2, 0.2]````.\n */\n get edgeColor(): Float32Array {\n return this.#state.edgeColor;\n }\n\n /**\n * Sets edge transparency for {@link ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default value is ````1.0````.\n */\n set edgeAlpha(value: number) {\n if (this.#state.edgeAlpha === value) {\n return;\n }\n this.#state.edgeAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets edge transparency for {@link ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default value is ````1.0````.\n */\n get edgeAlpha(): number {\n return this.#state.edgeAlpha;\n }\n\n /**\n * Sets edge width for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````1.0```` pixels.\n */\n set edgeWidth(value: number) {\n if (this.#state.edgeWidth === value) {\n return;\n }\n this.#state.edgeWidth = value;\n this.view.redraw();\n }\n\n /**\n * Gets edge width for {@link ViewObject | ViewObjects}.\n *\n * This is not supported by WebGL implementations based on DirectX [2019].\n *\n * Default value is ````1.0```` pixels.\n */\n get edgeWidth(): number {\n return this.#state.edgeWidth;\n }\n\n /**\n * Gets if edges are currently applied.\n *\n * This is `true` when {@link Edges.enabled | Edges.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link Edges.renderModes | Edges.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {Edges};\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\n\n/**\n * Configures the size and shape of {@link @xeokit/viewer!ViewObject | ViewObjects} that represent clouds of points.\n *\n * ## Summary\n *\n * * Located at {@link View.pointsMaterial}.\n * * Supports round and square points.\n * * Optional perspective point scaling.\n */\nclass PointsMaterial extends Component {\n\n /**\n * The View to which this PointsMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n pointSize: number,\n roundPoints: boolean,\n perspectivePoints: boolean,\n minPerspectivePointSize: number,\n maxPerspectivePointSize: number,\n filterIntensity: boolean,\n minIntensity: number,\n maxIntensity: number\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n pointSize?: number,\n roundPoints?: boolean,\n perspectivePoints?: boolean,\n minPerspectivePointSize?: number,\n maxPerspectivePointSize?: number,\n filterIntensity?: boolean,\n minIntensity?: number,\n maxIntensity?: number\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n pointSize: (options.pointSize !== undefined && options.pointSize !== null) ? options.pointSize : 1,\n roundPoints: options.roundPoints !== false,\n perspectivePoints: options.perspectivePoints !== false,\n minPerspectivePointSize: (options.minPerspectivePointSize !== undefined && options.minPerspectivePointSize !== null) ? options.minPerspectivePointSize : 1,\n maxPerspectivePointSize: (options.maxPerspectivePointSize !== undefined && options.maxPerspectivePointSize !== null) ? options.maxPerspectivePointSize : 6,\n filterIntensity: !!options.filterIntensity,\n minIntensity: (options.minIntensity !== undefined && options.minIntensity !== null) ? options.minIntensity : 0,\n maxIntensity: (options.maxIntensity !== undefined && options.maxIntensity !== null) ? options.maxIntensity : 1\n };\n }\n\n /**\n * Sets point size.\n *\n * Default value is ````2.0```` pixels.\n */\n set pointSize(value: number) {\n this.#state.pointSize = value;\n this.view.redraw();\n }\n\n /**\n * Gets point size.\n *\n * Default value is ````2.0```` pixels.\n */\n get pointSize(): number {\n return this.#state.pointSize;\n }\n\n\n /**\n * Sets if points are round or square.\n *\n * Default is ````true```` to set points round.\n */\n set roundPoints(value: boolean) {\n if (this.#state.roundPoints === value) {\n return;\n }\n this.#state.roundPoints = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if points are round or square.\n *\n * Default is ````true```` to set points round.\n */\n get roundPoints(): boolean {\n return this.#state.roundPoints;\n }\n\n /**\n * Sets if rendered point size reduces with distance when {@link Camera.projection} is set to ````PerspectiveProjectionType````.\n *\n * Default is ````true````.\n */\n set perspectivePoints(value: boolean) {\n if (this.#state.perspectivePoints === value) {\n return;\n }\n this.#state.perspectivePoints = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if rendered point size reduces with distance when {@link Camera.projection} is set to PerspectiveProjectionType.\n *\n * Default is ````false````.\n */\n get perspectivePoints(): boolean {\n return this.#state.perspectivePoints;\n }\n\n /**\n * Sets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````1.0```` pixels.\n */\n set minPerspectivePointSize(value: number) {\n if (this.#state.minPerspectivePointSize === value) {\n return;\n }\n this.#state.minPerspectivePointSize = value;\n this.view.rebuild();\n }\n\n /**\n * Gets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````1.0```` pixels.\n *\n * @type {Number}\n */\n get minPerspectivePointSize(): number {\n return this.#state.minPerspectivePointSize;\n }\n\n /**\n * Sets the maximum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````6```` pixels.\n */\n set maxPerspectivePointSize(value: number) {\n if (this.#state.maxPerspectivePointSize === value) {\n return;\n }\n this.#state.maxPerspectivePointSize = value;\n this.view.rebuild();\n }\n\n /**\n * Gets the maximum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````6```` pixels.\n */\n get maxPerspectivePointSize(): number {\n return this.#state.maxPerspectivePointSize;\n }\n\n /**\n * Sets if rendered point size reduces with distance when {@link Camera.projection} is set to ````PerspectiveProjectionType````.\n *\n * Default is ````false````.\n */\n set filterIntensity(value: boolean) {\n if (this.#state.filterIntensity === value) {\n return;\n }\n this.#state.filterIntensity = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if rendered point size reduces with distance when {@link Camera.projection} is set to PerspectiveProjectionType.\n *\n * Default is ````false````.\n */\n get filterIntensity(): boolean {\n return this.#state.filterIntensity;\n }\n\n /**\n * Sets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````0````.\n */\n set minIntensity(value: number) {\n if (this.#state.minIntensity === value) {\n return;\n }\n this.#state.minIntensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the minimum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````0````.\n */\n get minIntensity(): number {\n return this.#state.minIntensity;\n }\n\n /**\n * Sets the maximum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````1````.\n */\n set maxIntensity(value: number) {\n if (this.#state.maxIntensity === value) {\n return;\n }\n this.#state.maxIntensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the maximum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````1````.\n */\n get maxIntensity(): number {\n return this.#state.maxIntensity;\n }\n\n /**\n * @private\n */\n get hash(): string {\n const state = this.#state;\n return `${state.pointSize};\n ${state.roundPoints};\n ${state.perspectivePoints};\n ${state.minPerspectivePointSize};\n ${state.maxPerspectivePointSize};\n ${state.filterIntensity}`;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {PointsMaterial};", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {\n addVec3,\n createMat4,\n createVec3,\n cross3Vec3,\n dotVec3,\n identityMat4,\n inverseMat4,\n lenVec3,\n lookAtMat4v,\n mulMat4,\n mulVec3Scalar,\n normalizeVec3,\n rotationMat4v,\n subVec3,\n transformPoint3,\n transposeMat4\n} from \"@xeokit/matrix\";\n\nimport {PerspectiveProjection} from './PerspectiveProjection';\nimport {OrthoProjection} from './OrthoProjection';\nimport {FrustumProjection} from './FrustumProjection';\nimport {CustomProjection} from './CustomProjection';\nimport type {View} from \"./View\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {DEGTORAD, type FloatArrayParam} from \"@xeokit/math\";\nimport {\n CustomProjectionType,\n FrustumProjectionType,\n OrthoProjectionType,\n PerspectiveProjectionType\n} from \"@xeokit/constants\";\nimport {Frustum3, setFrustum3} from \"@xeokit/boundaries\";\nimport {Projection} from \"./Projection\";\nimport {SceneGeometry, SceneMesh, SceneModelParams, SceneObject} from \"@xeokit/scene\";\n\n\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec3f = createVec3();\nconst tempMat = createMat4();\nconst tempMatb = createMat4();\nconst eyeLookVec = createVec3();\nconst eyeLookVecNorm = createVec3();\nconst eyeLookOffset = createVec3();\nconst offsetEye = createVec3();\n\n\n/**\n * Controls the viewpoint and projection for a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Located at {@link View.camera}\n * * Views are located at {@link Viewer.views}\n * * Controls camera viewing and projection transforms\n * * Provides methods to pan, zoom and orbit\n * * Dynamically configurable World-space axis\n * * Has {@link PerspectiveProjection}, {@link OrthoProjection} and {@link FrustumProjection} and {@link CustomProjection}, which you can dynamically switch between\n * * Switchable gimbal lock\n * * Can be flown to look at targets using the View's {@link CameraFlightAnimation}\n * * Can be animated along a path using a {@link CameraPathAnimation}\n *\n * ## Getting a View's Camera\n *\n * Let's create a {@link @xeokit/viewer!Viewer | Viewer} with a single {@link @xeokit/viewer!View}, from which we'll get a Camera:\n *\n * ````javascript\n * const viewer = new Viewer();\n *\n * const view = new View(viewer, {\n * elementId: \"myCanvas1\"\n * });\n *\n * const camera = view.camera;\n * ````\n *\n * ## Setting the Camera Position\n *\n * Get and set the Camera's absolute position:\n *\n * ````javascript\n * camera.eye = [-10,0,0];\n * camera.look = [-10,0,0];\n * camera.up = [0,1,0];\n * ````\n *\n * ## Camera View and Projection Matrices\n *\n * The Camera's *view matrix* transforms coordinates from World-space to View-space:\n *\n * ````javascript\n * var viewMatrix = camera.viewMatrix;\n * ````\n *\n * {@link Camera.onViewMatrix} fires whenever {@link Camera.viewMatrix} updates:\n *\n * ````javascript\n * camera.onViewMatrix.subscribe((camera, matrix) => { ... });\n * ````\n *\n * ## Rotating the Camera\n *\n * Orbiting the {@link @xeokit/viewer!Camera.look | Camera.look} position:\n *\n * ````javascript\n * camera.orbitYaw(20.0);\n * camera.orbitPitch(10.0);\n * ````\n *\n * Perform a *first-person* rotation, in which we rotate {@link @xeokit/viewer!Camera.look | Camera.look} and {@link @xeokit/viewer!Camera.up | Camera.up} about {@link @xeokit/viewer!Camera.eye | Camera.eye}:\n *\n * ````javascript\n * camera.yaw(5.0);\n * camera.pitch(-10.0);\n * ````\n *\n * ## Panning the Camera\n *\n * Pan along the Camera's local axis (ie. left/right, up/down, forward/backward):\n *\n * ````javascript\n * camera.pan([-20, 0, 10]);\n * ````\n *\n * ## Zooming the Camera\n *\n * Zoom to vary distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}:\n *\n * ````javascript\n * camera.zoom(-5); // Move five units closer\n * ````\n *\n * Get the current distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}:\n *\n * ````javascript\n * var distance = camera.eyeLookDist;\n * ````\n *\n * ## Projection\n *\n * The Camera has a Component to manage each projection type, which are: {@link PerspectiveProjection}, {@link OrthoProjection}\n * and {@link FrustumProjection} and {@link CustomProjection}.\n *\n * You can configure those components at any time, regardless of which is currently active:\n *\n * The Camera has a {@link PerspectiveProjection} to manage perspective\n * ````javascript\n *\n * // Set some properties on PerspectiveProjection\n * camera.perspectiveProjection.near = 0.4;\n * camera.perspectiveProjection.fov = 45;\n *\n * // Set some properties on OrthoProjection\n * camera.orthoProjection.near = 0.8;\n * camera.orthoProjection.far = 1000;\n *\n * // Set some properties on FrustumProjection\n * camera.frustumProjection.left = -1.0;\n * camera.frustumProjection.right = 1.0;\n * camera.frustumProjection.far = 1000.0;\n *\n * // Set the matrix property on CustomProjection\n * camera.customProjection.projMatrix = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\n *\n * // Switch between the projection types\n * Camera.projectionType = PerspectiveProjectionType; // Switch to perspective\n * Camera.projectionType = FrustumProjectiontype; // Switch to frustum\n * Camera.projectionType = OrthoProjectionType; // Switch to ortho\n * Camera.projectionType = CustomProjectionType; // Switch to custom\n * ````\n *\n * Camera provides the projection matrix for the currently active projection in {@link Camera.projMatrix}.\n *\n * Get the projection matrix:\n *\n * ````javascript\n * var projMatrix = camera.projMatrix;\n * ````\n *\n * Listen for projection matrix updates:\n *\n * ````javascript\n * camera.onProjMatrix((camera, matrix) => { ... });\n * ````\n *\n * ## Configuring World up direction\n *\n * We can dynamically configure the directions of the World-space coordinate system.\n *\n * Setting the +Y axis as World \"up\", +X as right and -Z as forwards (convention in some modeling software):\n *\n * ````javascript\n * camera.worldAxis = [\n * 1, 0, 0, // Right\n * 0, 1, 0, // Up\n * 0, 0,-1 // Forward\n * ];\n * ````\n *\n * Setting the +Z axis as World \"up\", +X as right and -Y as \"up\" (convention in most CAD and BIM viewers):\n *\n * ````javascript\n * camera.worldAxis = [\n * 1, 0, 0, // Right\n * 0, 0, 1, // Up\n * 0,-1, 0 // Forward\n * ];\n * ````\n *\n * The Camera has read-only convenience properties that provide each axis individually:\n *\n * ````javascript\n * var worldRight = camera.worldRight;\n * var worldForward = camera.worldForward;\n * var worldUp = camera.worldUp;\n * ````\n *\n * ## Gimbal locking\n *\n * By default, the Camera locks yaw rotation to pivot about the World-space \"up\" axis. We can dynamically lock and unlock that at any time:\n *\n * ````javascript\n * camera.gimbalLock = false; // Yaw rotation now happens about Camera's local Y-axis\n * camera.gimbalLock = true; // Yaw rotation now happens about World's \"up\" axis\n * ````\n *\n * See: https://en.wikipedia.org/wiki/Gimbal_lock\n */\nclass Camera extends Component {\n\n /**\n * The View to which this Camera belongs.\n *\n * @property view\n * @type {View}\n * @final\n */\n public readonly view: View;\n\n /**\n * The perspective projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link PerspectiveProjectionType}.\n */\n public readonly perspectiveProjection: PerspectiveProjection;\n\n /**\n * The orthographic projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!OrthoProjectionType}.\n */\n public readonly orthoProjection: OrthoProjection;\n\n /**\n * The frustum projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!FrustumProjectionType}.\n */\n public readonly frustumProjection: FrustumProjection;\n\n /**\n * The custom projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!CustomProjectionType}.\n */\n public readonly customProjection: CustomProjection;\n\n /**\n * Emits an event each time {@link Camera.projectionType} updates.\n *\n * ````javascript\n * myView.camera.onProjectionType.subscribe((camera, projType) => { ... });\n * ````\n *\n * @event\n */\n readonly onProjectionType: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.viewMatrix} updates.\n *\n * ````javascript\n * myView.camera.onViewMatrix.subscribe((camera, viewMatrix) => { ... });\n * ````\n *\n * @event\n */\n readonly onViewMatrix: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.projMatrix} updates.\n *\n * ````javascript\n * myView.camera.onProjMatrix.subscribe((camera, projMatrix) => { ... });\n * ````\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.worldAxis} updates.\n *\n * ````javascript\n * myView.camera.onWorldAxis.subscribe((camera, worldAxis) => { ... });\n * ````\n *\n * @event\n */\n readonly onWorldAxis: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.frustum} updates.\n *\n * ````javascript\n * myView.camera.onFrustum.subscribe((camera, frustum) => { ... });\n * ````\n *\n * @event\n */\n readonly onFrustum: EventEmitter;\n\n readonly #state: {\n deviceMatrix: FloatArrayParam,\n viewNormalMatrix: FloatArrayParam,\n hasDeviceMatrix: boolean,\n viewMatrix: FloatArrayParam,\n inverseViewMatrix: FloatArrayParam,\n eye: FloatArrayParam,\n look: FloatArrayParam,\n up: FloatArrayParam,\n worldAxis: FloatArrayParam,\n worldUp: FloatArrayParam,\n worldRight: FloatArrayParam,\n worldForward: FloatArrayParam,\n gimbalLock: boolean,\n constrainPitch: boolean,\n projectionType: number\n };\n\n /**\n * The viewing frustum.\n */\n #frustum: Frustum3;\n #activeProjection: PerspectiveProjection | OrthoProjection | FrustumProjection | CustomProjection;\n\n /**\n * @private\n */\n constructor(view: View, cfg: {\n eye?: FloatArrayParam;\n look?: FloatArrayParam,\n up?: FloatArrayParam;\n deviceMatrix?: FloatArrayParam;\n gimbalLock?: boolean;\n worldAxis?: FloatArrayParam;\n constrainPitch?: boolean;\n projectionType?: number\n } = {}) {\n\n super(view, cfg);\n\n this.onProjectionType = new EventEmitter(new EventDispatcher());\n this.onViewMatrix = new EventEmitter(new EventDispatcher());\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n this.onWorldAxis = new EventEmitter(new EventDispatcher());\n this.onFrustum = new EventEmitter(new EventDispatcher());\n\n this.view = view;\n\n this.#state = {\n eye: createVec3(cfg.eye || [0, 0, 10]),\n look: createVec3(cfg.look || [0, 0, 0]),\n up: createVec3(cfg.up || [0, 1, 0]),\n worldUp: createVec3([0, 1, 0]),\n worldRight: createVec3([1, 0, 0]),\n worldForward: createVec3([0, 0, -1]),\n worldAxis: new Float32Array(cfg.worldAxis || [1, 0, 0, 0, 1, 0, 0, 0, 1]),\n gimbalLock: cfg.gimbalLock !== false,\n constrainPitch: cfg.constrainPitch === true,\n projectionType: cfg.projectionType || PerspectiveProjectionType,\n deviceMatrix: cfg.deviceMatrix ? createMat4(cfg.deviceMatrix) : identityMat4(),\n hasDeviceMatrix: !!cfg.deviceMatrix,\n viewMatrix: createMat4(),\n viewNormalMatrix: createMat4(),\n inverseViewMatrix: createMat4()\n };\n\n this.#frustum = new Frustum3();\n\n this.perspectiveProjection = new PerspectiveProjection(this);\n this.orthoProjection = new OrthoProjection(this);\n this.frustumProjection = new FrustumProjection(this);\n this.customProjection = new CustomProjection(this);\n\n this.#activeProjection = this.perspectiveProjection;\n\n this.perspectiveProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === PerspectiveProjectionType) {\n this.onProjMatrix.dispatch(this, this.perspectiveProjection.projMatrix);\n }\n });\n\n this.orthoProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === OrthoProjectionType) {\n this.onProjMatrix.dispatch(this, this.orthoProjection.projMatrix);\n }\n });\n\n this.frustumProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === FrustumProjectionType) {\n this.onProjMatrix.dispatch(this, this.frustumProjection.projMatrix);\n }\n });\n\n this.customProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === CustomProjectionType) {\n this.onProjMatrix.dispatch(this, this.customProjection.projMatrix);\n }\n });\n }\n\n /**\n * Gets the currently active projection for this Camera.\n *\n * The currently active project is selected with {@link Camera.projectionType}.\n *\n * @returns {PerspectiveProjection|OrthoProjection|FrustumProjection|CustomProjection} The currently active projection is active.\n */\n get projection(): Projection {\n return this.#activeProjection;\n }\n\n /**\n * Gets the position of the Camera's eye.\n *\n * Default vale is ````[0,0,10]````.\n *\n * @type {Number[]} New eye position.\n */\n get eye(): FloatArrayParam {\n return this.#state.eye;\n }\n\n /**\n * Sets the position of the Camera's eye.\n *\n * Default value is ````[0,0,10]````.\n *\n * @emits \"eye\" event on change, with the value of this property.\n * @type {Number[]} New eye position.\n */\n set eye(eye: FloatArrayParam) {\n // @ts-ignore\n this.#state.eye.set(eye);\n this.setDirty(); // Ensure matrix built on next \"tick\"\n }\n\n /**\n * Gets the position of this Camera's point-of-interest.\n *\n * Default value is ````[0,0,0]````.\n *\n * @returns {Number[]} Camera look position.\n */\n get look(): FloatArrayParam {\n return this.#state.look;\n }\n\n /**\n * Sets the position of this Camera's point-of-interest.\n *\n * Default value is ````[0,0,0]````.\n *\n * @param look Camera look position.\n */\n set look(look: FloatArrayParam) {\n // @ts-ignore\n this.#state.look.set(look);\n this.setDirty(); // Ensure matrix built on next \"tick\"\n }\n\n /**\n * Gets the direction of this Camera's {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @returns {Number[]} Direction of \"up\".\n */\n get up(): FloatArrayParam {\n return this.#state.up;\n }\n\n /**\n * Sets the direction of this Camera's {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @param up Direction of \"up\".\n */\n set up(up: FloatArrayParam) {\n // @ts-ignore\n this.#state.up.set(up);\n this.setDirty();\n }\n\n /**\n * Gets the direction of World-space \"up\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[0,1,0]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldUp(): FloatArrayParam {\n return this.#state.worldUp;\n }\n\n /**\n * Gets the direction of World-space \"right\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[1,0,0]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldRight(): FloatArrayParam {\n return this.#state.worldRight;\n }\n\n /**\n * Gets the direction of World-space \"forwards\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[0,0,1]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldForward(): FloatArrayParam {\n return this.#state.worldForward;\n }\n\n /**\n * Gets whether to prevent camera from being pitched upside down.\n *\n * The camera is upside down when the angle between {@link @xeokit/viewer!Camera.up | Camera.up} and {@link Camera.worldUp} is less than one degree.\n *\n * Default value is ````false````.\n *\n * @returns {Boolean} ````true```` if pitch rotation is currently constrained.\n */\n get constrainPitch(): boolean {\n return this.#state.constrainPitch;\n }\n\n /**\n * Sets whether to prevent camera from being pitched upside down.\n *\n * The camera is upside down when the angle between {@link @xeokit/viewer!Camera.up | Camera.up} and {@link Camera.worldUp} is less than one degree.\n *\n * Default value is ````false````.\n *\n * @param value Set ````true```` to contrain pitch rotation.\n */\n set constrainPitch(value: boolean) {\n this.#state.constrainPitch = value;\n }\n\n /**\n * Gets whether to lock yaw rotation to pivot about the World-space \"up\" axis.\n *\n * @returns {Boolean} Returns ````true```` if gimbal is locked.\n */\n get gimbalLock(): boolean {\n return this.#state.gimbalLock;\n }\n\n /**\n * Sets whether to lock yaw rotation to pivot about the World-space \"up\" axis.\n *\n * @params {Boolean} gimbalLock Set true to lock gimbal.\n */\n set gimbalLock(value: boolean) {\n this.#state.gimbalLock = value;\n }\n\n /**\n * Gets the up, right and forward axis of the World coordinate system.\n *\n * Has format: ````[rightX, rightY, rightZ, upX, upY, upZ, forwardX, forwardY, forwardZ]````\n *\n * Default axis is ````[1, 0, 0, 0, 1, 0, 0, 0, 1]````\n *\n * @returns {Number[]} The current World coordinate axis.\n */\n get worldAxis(): FloatArrayParam {\n return this.#state.worldAxis;\n }\n\n /**\n * Sets the up, right and forward axis of the World coordinate system.\n *\n * Has format: ````[rightX, rightY, rightZ, upX, upY, upZ, forwardX, forwardY, forwardZ]````\n *\n * Default axis is ````[1, 0, 0, 0, 1, 0, 0, 0, 1]````\n *\n * @param axis The new Wworld coordinate axis.\n */\n set worldAxis(axis: FloatArrayParam) {\n const state = this.#state;\n // @ts-ignore\n state.worldAxis.set(axis);\n state.worldRight[0] = state.worldAxis[0];\n state.worldRight[1] = state.worldAxis[1];\n state.worldRight[2] = state.worldAxis[2];\n state.worldUp[0] = state.worldAxis[3];\n state.worldUp[1] = state.worldAxis[4];\n state.worldUp[2] = state.worldAxis[5];\n state.worldForward[0] = state.worldAxis[6];\n state.worldForward[1] = state.worldAxis[7];\n state.worldForward[2] = state.worldAxis[8];\n this.onWorldAxis.dispatch(this, state.worldAxis);\n }\n\n /**\n * Gets an optional matrix to premultiply into {@link Camera.projMatrix} matrix.\n *\n * @returns {Number[]} The matrix.\n */\n get deviceMatrix(): FloatArrayParam {\n // @ts-ignore\n return this.#state.deviceMatrix;\n }\n\n /**\n * Sets an optional matrix to premultiply into {@link Camera.projMatrix} matrix.\n *\n * This is intended to be used for stereo rendering with WebVR etc.\n *\n * @param matrix The matrix.\n */\n set deviceMatrix(matrix: FloatArrayParam) {\n // @ts-ignore\n this.#state.deviceMatrix.set(matrix || [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);\n this.#state.hasDeviceMatrix = !!matrix;\n this.setDirty();\n }\n\n /**\n * Gets if the World-space X-axis is \"up\".\n * @returns {boolean}\n */\n get xUp(): boolean {\n return this.#state.worldUp[0] > this.#state.worldUp[1] && this.#state.worldUp[0] > this.#state.worldUp[2];\n }\n\n /**\n * Gets if the World-space Y-axis is \"up\".\n * @returns {boolean}\n */\n get yUp(): boolean {\n return this.#state.worldUp[1] > this.#state.worldUp[0] && this.#state.worldUp[1] > this.#state.worldUp[2];\n }\n\n /**\n * Gets if the World-space Z-axis is \"up\".\n * @returns {boolean}\n */\n get zUp(): boolean {\n return this.#state.worldUp[2] > this.#state.worldUp[0] && this.#state.worldUp[2] > this.#state.worldUp[1];\n }\n\n /**\n * Gets distance from {@link @xeokit/viewer!Camera.look | Camera.look} to {@link @xeokit/viewer!Camera.eye | Camera.eye}.\n *\n * @returns {Number} The distance.\n */\n get eyeLookDist(): number {\n return lenVec3(subVec3(this.#state.look, this.#state.eye, tempVec3));\n }\n\n /**\n * Gets the Camera's viewing transformation matrix.\n *\n * @returns {Number[]} The viewing transform matrix.\n */\n get viewMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.viewMatrix;\n }\n\n /**\n * Gets the inverse of the Camera's viewing transform matrix.\n *\n * @returns {Number[]} The inverse viewing transform matrix.\n */\n get inverseViewMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.inverseViewMatrix;\n }\n\n /**\n * Gets the Camera's projection transformation projMatrix.\n *\n * @returns {Number[]} The projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n // @ts-ignore\n return this.#activeProjection.projMatrix;\n }\n\n /**\n * Gets the Camera's 3D World-space viewing frustum.\n *\n * @returns {Frustum3} The frustum.\n */\n get frustum() {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#frustum;\n }\n\n /**\n * Gets the active projection type.\n *\n * Possible values are ````PerspectiveProjectionType````, ````OrthoProjectionType````, ````\"frustum\"```` and ````\"customProjection\"````.\n *\n * Default value is ````PerspectiveProjectionType````.\n *\n * @returns {number} Identifies the active projection type.\n */\n get projectionType(): number {\n return this.#state.projectionType;\n }\n\n /**\n * Sets the active projection type.\n *\n * Accepted values are ````PerspectiveProjectionType````, ````OrthoProjectionType````, ````\"frustum\"```` and ````\"customProjection\"````.\n *\n * Default value is ````PerspectiveProjectionType````.\n *\n * @param value Identifies the active projection type.\n */\n set projectionType(value: number | undefined) {\n value = value || PerspectiveProjectionType;\n if (this.#state.projectionType === value) {\n return;\n }\n if (value === PerspectiveProjectionType) {\n this.#activeProjection = this.perspectiveProjection;\n } else if (value === OrthoProjectionType) {\n this.#activeProjection = this.orthoProjection;\n } else if (value === FrustumProjectionType) {\n this.#activeProjection = this.frustumProjection;\n } else if (value === CustomProjectionType) {\n this.#activeProjection = this.customProjection;\n } else {\n this.error(\"Unsupported value for 'projection': \" + value + \" defaulting to PerspectiveProjectionType\");\n this.#activeProjection = this.perspectiveProjection;\n value = PerspectiveProjectionType;\n }\n // @ts-ignore\n this.#activeProjection.clean();\n this.#state.projectionType = value;\n this.clean();\n this.onProjectionType.dispatch(this, this.#state.projectionType);\n this.onProjMatrix.dispatch(this, this.#activeProjection.projMatrix);\n }\n\n setDirty() {\n super.setDirty();\n this.view.redraw();\n }\n\n clean() {\n const state = this.#state;\n // In ortho mode, build the view matrix with an eye position that's translated\n // well back from look, so that the front sectionPlane plane doesn't unexpectedly cut\n // the front off the view (not a problem with perspective, since objects close enough\n // to be clipped by the front plane are usually too big to see anything of their cross-sections).\n let eye;\n if (this.projectionType === OrthoProjectionType) {\n subVec3(this.#state.eye, this.#state.look, eyeLookVec);\n normalizeVec3(eyeLookVec, eyeLookVecNorm);\n mulVec3Scalar(eyeLookVecNorm, 1000.0, eyeLookOffset);\n addVec3(this.#state.look, eyeLookOffset, offsetEye);\n eye = offsetEye;\n } else {\n eye = this.#state.eye;\n }\n if (state.hasDeviceMatrix) {\n lookAtMat4v(eye, this.#state.look, this.#state.up, tempMatb);\n mulMat4(state.deviceMatrix, tempMatb, state.viewMatrix);\n } else {\n lookAtMat4v(eye, this.#state.look, this.#state.up, state.viewMatrix);\n }\n inverseMat4(this.#state.viewMatrix, this.#state.inverseViewMatrix);\n transposeMat4(this.#state.inverseViewMatrix, this.#state.viewNormalMatrix);\n this.view.redraw();\n setFrustum3(this.#state.viewMatrix, this.#activeProjection.projMatrix, this.#frustum);\n this.onViewMatrix.dispatch(this, this.#state.viewMatrix);\n this.onFrustum.dispatch(this, this.#frustum);\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.eye | Camera.eye} about {@link @xeokit/viewer!Camera.look | Camera.look}, around the {@link @xeokit/viewer!Camera.up | Camera.up} vector\n *\n * @param angleInc Angle of rotation in degrees\n */\n orbitYaw(angleInc: number) {\n let lookEyeVec = subVec3(this.#state.eye, this.#state.look, tempVec3);\n rotationMat4v(angleInc * 0.0174532925, this.#state.gimbalLock ? this.#state.worldUp : this.#state.up, tempMat);\n lookEyeVec = transformPoint3(tempMat, lookEyeVec, tempVec3b);\n this.eye = addVec3(this.#state.look, lookEyeVec, tempVec3c); // Set eye position as 'look' plus 'eye' vector\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3d); // Rotate 'up' vector\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.eye | Camera.eye} about {@link @xeokit/viewer!Camera.look | Camera.look} around the right axis (orthogonal to {@link @xeokit/viewer!Camera.up | Camera.up} and \"look\").\n *\n * @param angleInc Angle of rotation in degrees\n */\n orbitPitch(angleInc: number) {\n if (this.#state.constrainPitch) {\n angleInc = dotVec3(this.#state.up, this.#state.worldUp) / DEGTORAD;\n if (angleInc < 1) {\n return;\n }\n }\n let eye2 = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const left = cross3Vec3(normalizeVec3(eye2, tempVec3b), normalizeVec3(this.#state.up, tempVec3c));\n rotationMat4v(angleInc * 0.0174532925, left, tempMat);\n eye2 = transformPoint3(tempMat, eye2, tempVec3d);\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3e);\n this.eye = addVec3(eye2, this.#state.look, tempVec3f);\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.look | Camera.look} about {@link @xeokit/viewer!Camera.eye | Camera.eye}, around the {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @param angleInc Angle of rotation in degrees\n */\n yaw(angleInc: number) {\n let look2 = subVec3(this.#state.look, this.#state.eye, tempVec3);\n rotationMat4v(angleInc * 0.0174532925, this.#state.gimbalLock ? this.#state.worldUp : this.#state.up, tempMat);\n look2 = transformPoint3(tempMat, look2, tempVec3b);\n this.look = addVec3(look2, this.#state.eye, tempVec3c);\n if (this.#state.gimbalLock) {\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3d);\n }\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.look | Camera.look} about {@link @xeokit/viewer!Camera.eye | Camera.eye}, around the right axis (orthogonal to {@link @xeokit/viewer!Camera.up | Camera.up} and \"look\").\n\n * @param angleInc Angle of rotation in degrees\n */\n pitch(angleInc: number) {\n if (this.#state.constrainPitch) {\n angleInc = dotVec3(this.#state.up, this.#state.worldUp) / DEGTORAD;\n if (angleInc < 1) {\n return;\n }\n }\n let look2 = subVec3(this.#state.look, this.#state.eye, tempVec3);\n const left = cross3Vec3(normalizeVec3(look2, tempVec3b), normalizeVec3(this.#state.up, tempVec3c));\n rotationMat4v(angleInc * 0.0174532925, left, tempMat);\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3f);\n look2 = transformPoint3(tempMat, look2, tempVec3d);\n this.look = addVec3(look2, this.#state.eye, tempVec3e);\n }\n\n /**\n * Pans the Camera along its local X, Y and Z axis.\n *\n * @param pan The pan vector\n */\n pan(pan: FloatArrayParam) {\n const eye2 = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const vec = [0, 0, 0];\n let v;\n if (pan[0] !== 0) {\n const left = cross3Vec3(normalizeVec3(eye2, []), normalizeVec3(this.#state.up, tempVec3b));\n v = mulVec3Scalar(left, pan[0]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n if (pan[1] !== 0) {\n v = mulVec3Scalar(normalizeVec3(this.#state.up, tempVec3c), pan[1]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n if (pan[2] !== 0) {\n v = mulVec3Scalar(normalizeVec3(eye2, tempVec3d), pan[2]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n this.eye = addVec3(this.#state.eye, vec, tempVec3e);\n this.look = addVec3(this.#state.look, vec, tempVec3f);\n }\n\n /**\n * Increments/decrements the Camera's zoom factor, which is the distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}.\n *\n * @param delta Zoom factor increment.\n */\n zoom(delta: number) {\n const vec = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const lenLook = Math.abs(lenVec3(vec));\n const newLenLook = Math.abs(lenLook + delta);\n if (newLenLook < 0.5) {\n return;\n }\n const dir = normalizeVec3(vec, tempVec3c);\n this.eye = addVec3(this.#state.look, mulVec3Scalar(dir, newLenLook), tempVec3d);\n }\n\n // /**\n // * Gets this Camera as JSON.\n // */\n // getJSON(): CameraParams {\n // const cameraParams = {\n // eye: Array.from(this.#state.eye),\n // look: Array.from(this.#state.look),\n // up: Array.from(this.#state.up),\n // worldUp: Array.from(this.#state.worldUp),\n // worldRight: Array.from(this.#state.worldRight),\n // worldForward: Array.from(this.#state.worldForward),\n // projectionType: this.projectionType\n // };\n // return cameraParams;\n // }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n this.onProjectionType.clear();\n this.onViewMatrix.clear();\n this.onProjMatrix.clear();\n this.onWorldAxis.clear();\n }\n\n\n}\n\nexport {Camera};\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {inverseMat4, createMat4, mulMat4v4, mulVec3Scalar, perspectiveMat4, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * PerspectiveProjection projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * ## Summary\n *\n * * Located at {@link @xeokit/viewer!Camera.perspectiveProjection | Camera.perspectiveProjection}.\n * * Implicitly sets the left, right, top, bottom frustum planes using {@link @xeokit/viewer!PerspectiveProjection.fov | PerspectiveProjection.fov}.\n * * {@link @xeokit/viewer!PerspectiveProjection.near | PerspectiveProjection.near} and {@link @xeokit/viewer!PerspectiveProjection.far| PerspectiveProjection.far} specify the distances to the clipping planes.\n * * {@link @xeokit/viewer!PerspectiveProjection.onProjMatrix | PerspectiveProjection.onProjMatrix} will fire an event whenever {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class PerspectiveProjection extends Component implements Projection {\n\n /**\n * The Camera this PerspectiveProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = PerspectiveProjectionType;\n\n #state: {\n far: number;\n near: number;\n fov: number;\n fovAxis: string;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n #onViewBoundary: any;\n\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n fov?: number,\n fovAxis?: string,\n near?: number,\n far?: number\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n near: cfg.near || 0.1,\n far: cfg.far || 10000.0,\n fov: cfg.fov || 60.0,\n fovAxis: cfg.fovAxis || \"min\",\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.#onViewBoundary = this.camera.view.onBoundary.subscribe( () => {\n this.setDirty();\n });\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets the PerspectiveProjection's field-of-view angle (FOV).\n *\n * Default value is ````60.0````.\n *\n * @returns {Number} Current field-of-view.\n */\n get fov(): number {\n return this.#state.fov;\n }\n\n /**\n * Sets the PerspectiveProjection's field-of-view angle (FOV).\n *\n * Default value is ````60.0````.\n *\n * @param value New field-of-view.\n */\n set fov(value: number) {\n if (value === this.#state.fov) {\n return;\n }\n this.#state.fov = value;\n this.setDirty();\n }\n\n /**\n * Gets the PerspectiveProjection's FOV axis.\n *\n * Options are ````\"x\"````, ````\"y\"```` or ````\"min\"````, to use the minimum axis.\n *\n * Default value is ````\"min\"````.\n *\n * @returns {String} The current FOV axis value.\n */\n get fovAxis(): string {\n return this.#state.fovAxis;\n }\n\n /**\n * Sets the PerspectiveProjection's FOV axis.\n *\n * Options are ````\"x\"````, ````\"y\"```` or ````\"min\"````, to use the minimum axis.\n *\n * Default value ````\"min\"````.\n *\n * @param value New FOV axis value.\n */\n set fovAxis(value: string) {\n value = value || \"min\";\n if (this.#state.fovAxis === value) {\n return;\n }\n if (value !== \"x\" && value !== \"y\" && value !== \"min\") {\n this.error(\"Unsupported value for 'fovAxis': \" + value + \" - defaulting to 'min'\");\n value = \"min\";\n }\n this.#state.fovAxis = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the PerspectiveProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @returns The PerspectiveProjection's near plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the PerspectiveProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New PerspectiveProjection near plane position.\n */\n set near(value: number) {\n if (this.#state.near === value) {\n return;\n }\n this.#state.near = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of this PerspectiveProjection's far plane on the positive View-space Z-axis.\n *\n * @return {Number} The PerspectiveProjection's far plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of this PerspectiveProjection's far plane on the positive View-space Z-axis.\n *\n * @param value New PerspectiveProjection far plane position.\n */\n set far(value: number) {\n if (this.#state.far === value) {\n return;\n }\n this.#state.far = value;\n this.setDirty();\n }\n\n /**\n * Gets the PerspectiveProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The PerspectiveProjection's projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n *\n * @returns The inverse of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n *\n * @returns The transpose of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n const WIDTH_INDEX = 2;\n const HEIGHT_INDEX = 3;\n const boundary = this.camera.view.boundary;\n const aspect = boundary[WIDTH_INDEX] / boundary[HEIGHT_INDEX];\n const fovAxis = this.#state.fovAxis;\n let fov = this.#state.fov;\n if (fovAxis === \"x\" || (fovAxis === \"min\" && aspect < 1) || (fovAxis === \"max\" && aspect > 1)) {\n fov = fov / aspect;\n }\n fov = Math.min(fov, 120);\n perspectiveMat4(fov * (Math.PI / 180.0), aspect, this.#state.near, this.#state.far, this.#state.projMatrix);\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates and Screen-space depth, using this PerspectiveProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(canvasPos: FloatArrayParam, screenZ: number, screenPos: FloatArrayParam, viewPos: FloatArrayParam, worldPos: FloatArrayParam): FloatArrayParam {\n\n const htmlElement = this.camera.view.htmlElement;\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.camera.view.onBoundary.unsubscribe(this.#onViewBoundary);\n this.onProjMatrix.clear();\n }\n}\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {createMat4, inverseMat4, mulMat4v4, mulVec3Scalar, orthoMat4c, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n\n\n/**\n * Orthographic projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link @xeokit/viewer!Camera.orthoProjection | Camera.orthoProjection}.\n * * Works like Blender's orthographic projection, where the positions of the left, right, top and bottom planes are implicitly\n * indicated with a single {@link @xeokit/viewer!OrthoProjection.scale | OrthoProjection.scale} property, which causes the frustum to be symmetrical on X and Y axis, large enough to\n * contain the number of units given by {@link @xeokit/viewer!OrthoProjection.scale | OrthoProjection.scale}.\n * * {@link @xeokit/viewer!OrthoProjection.near | OrthoProjection.near} and {@link @xeokit/viewer!OrthoProjection.far | OrthoProjection.far} indicated the distances to the clipping planes.\n * * {@link @xeokit/viewer!OrthoProjection.onProjMatrix | OrthoProjection.onProjMatrix} will fire an event whenever {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class OrthoProjection extends Component implements Projection {\n\n /**\n * The Camera this OrthoProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = OrthoProjectionType;\n\n #state: {\n far: number;\n near: number;\n scale: number;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n #onViewBoundary: any;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n far?: number;\n near?: number;\n scale?: number;\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n near: cfg.near || 0.1,\n far: cfg.far || 2000.0,\n scale: cfg.scale || 1.0,\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.#onViewBoundary = this.camera.view.onBoundary.subscribe(() => {\n this.setDirty();\n });\n }\n\n /**\n * Gets scale factor for this OrthoProjection's extents on X and Y axis.\n *\n * Clamps to minimum value of ````0.01```.\n *\n * Default value is ````1.0````\n *\n * returns New OrthoProjection scale value.\n */\n get scale(): number {\n return this.#state.scale;\n }\n\n /**\n * Sets scale factor for this OrthoProjection's extents on X and Y axis.\n *\n * Clamps to minimum value of ````0.01```.\n *\n * Default value is ````1.0````\n * @param value New scale value.\n */\n set scale(value: number) {\n if (value <= 0) {\n value = 0.01;\n }\n this.#state.scale = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the OrthoProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * returns New OrthoProjection near plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the OrthoProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New OrthoProjection near plane position.\n */\n set near(value: number) {\n if (this.#state.near === value) {\n return;\n }\n this.#state.near = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the OrthoProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * returns New far ortho plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of the OrthoProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````2000.0````.\n *\n * @param value New far ortho plane position.\n */\n set far(value: number) {\n if (this.#state.far === value) {\n return;\n }\n this.#state.far = value;\n this.setDirty();\n }\n\n /**\n * Gets the OrthoProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The OrthoProjection's projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n *\n * @returns The inverse of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n *\n * @returns The transpose of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n\n const WIDTH_INDEX = 2;\n const HEIGHT_INDEX = 3;\n\n const view = this.camera.view;\n const scale = this.#state.scale;\n const halfSize = 0.5 * scale;\n\n const boundary = view.boundary;\n const boundaryWidth = boundary[WIDTH_INDEX];\n const boundaryHeight = boundary[HEIGHT_INDEX];\n const aspect = boundaryWidth / boundaryHeight;\n\n let left;\n let right;\n let top;\n let bottom;\n\n if (boundaryWidth > boundaryHeight) {\n left = -halfSize;\n right = halfSize;\n top = halfSize / aspect;\n bottom = -halfSize / aspect;\n\n } else {\n left = -halfSize * aspect;\n right = halfSize * aspect;\n top = halfSize;\n bottom = -halfSize;\n }\n\n orthoMat4c(left, right, bottom, top, this.#state.near, this.#state.far, this.#state.projMatrix);\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.camera.view.redraw();\n\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates, using this OrthoProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam): FloatArrayParam {\n\n const canvas = this.camera.view.htmlElement;\n\n const halfViewWidth = canvas.offsetWidth / 2.0;\n const halfViewHeight = canvas.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.camera.view.onBoundary.unsubscribe(this.#onViewBoundary);\n this.onProjMatrix.clear();\n }\n}\n\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {FrustumProjectionType} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, frustumMat4, inverseMat4, mulMat4v4, mulVec3Scalar, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * FrustumProjection-based perspective projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link Camera.frustumProjection}.\n * * Allows to explicitly set the positions of the left, right, top, bottom, near and far planes, which is useful for asymmetrical view volumes, such as for stereo viewing.\n * * {@link FrustumProjection.near} and {@link FrustumProjection.far} specify the distances to the clipping planes.\n * * {@link FrustumProjection.onProjMatrix} will fire an event whenever {@link FrustumProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class FrustumProjection extends Component implements Projection {\n\n /**\n * The type of this projection.\n */\n static readonly type: number = FrustumProjectionType;\n /**\n * The Camera this FrustumProjection belongs to.\n */\n public readonly camera: Camera;\n /**\n * Emits an event each time {@link FrustumProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n #state: {\n far: number;\n near: number;\n left: number;\n right: number;\n bottom: number;\n top: number;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n far?: number;\n near?: number;\n top?: number;\n bottom?: number;\n right?: number;\n left?: number;\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4(),\n near: 0.1,\n far: 10000.0,\n left: (cfg.left !== undefined && cfg.left !== null) ? cfg.left : -1.0,\n right: (cfg.right !== undefined && cfg.right !== null) ? cfg.right : 1.0,\n bottom: (cfg.bottom !== undefined && cfg.bottom !== null) ? cfg.bottom : -1.0,\n top: (cfg.top !== undefined && cfg.top !== null) ? cfg.top : 1.0\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n }\n\n /**\n * Gets the position of the FrustumProjection's left plane on the View-space X-axis.\n *\n * @return {Number} Left frustum plane position.\n */\n get left(): number {\n return this.#state.left;\n }\n\n /**\n * Sets the position of the FrustumProjection's left plane on the View-space X-axis.\n *\n * @param value New left frustum plane position.\n */\n set left(value: number) {\n this.#state.left = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's right plane on the View-space X-axis.\n *\n * @return {Number} Right frustum plane position.\n */\n get right(): number {\n return this.#state.right;\n }\n\n /**\n * Sets the position of the FrustumProjection's right plane on the View-space X-axis.\n *\n * @param value New right frustum plane position.\n */\n set right(value: number) {\n this.#state.right = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's top plane on the View-space Y-axis.\n *\n * @return {Number} Top frustum plane position.\n */\n get top(): number {\n return this.#state.top;\n }\n\n /**\n * Sets the position of the FrustumProjection's top plane on the View-space Y-axis.\n *\n * @param value New top frustum plane position.\n */\n set top(value: number) {\n this.#state.top = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's bottom plane on the View-space Y-axis.\n *\n * @return {Number} Bottom frustum plane position.\n */\n get bottom(): number {\n return this.#state.bottom;\n }\n\n /**\n * Sets the position of the FrustumProjection's bottom plane on the View-space Y-axis.\n *\n * @param value New bottom frustum plane position.\n */\n set bottom(value: number) {\n this.#state.bottom = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @return {Number} Near frustum plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the FrustumProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New FrustumProjection near plane position.\n */\n set near(value: number) {\n this.#state.near = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * @return {Number} Far frustum plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of the FrustumProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * @param value New far frustum plane position.\n */\n set far(value: number) {\n this.#state.far = value\n this.setDirty();\n }\n\n /**\n * Gets the FrustumProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The FrustumProjection's projection matrix\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link FrustumProjection.projMatrix}.\n *\n * @returns The inverse orthographic projection projMatrix.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link FrustumProjection.projMatrix}.\n *\n * @returns The transpose of {@link FrustumProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n frustumMat4(this.#state.left, this.#state.right, this.#state.bottom, this.#state.top, this.#state.near, this.#state.far, this.#state.projMatrix);\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates, using this FrustumProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam): FloatArrayParam {\n\n const htmlElement = this.camera.view.htmlElement;\n\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.onProjMatrix.clear();\n }\n}\n", "\nimport {EventDispatcher} from \"strongly-typed-events\";\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {CustomProjectionType} from \"@xeokit/constants\";\nimport {identityMat4, inverseMat4, createMat4, mulMat4v4, mulVec3Scalar, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * Configures a custom projection for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link Camera.customProjection}.\n * * {@link CustomProjection.onProjMatrix} will fire an event whenever {@link CustomProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nclass CustomProjection extends Component implements Projection {\n\n /**\n * The Camera this CustomProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link CustomProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = CustomProjectionType;\n\n #state: {\n projMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam\n };\n\n #inverseProjMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n projMatrix?: FloatArrayParam\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n projMatrix: createMat4(cfg.projMatrix || identityMat4()),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseProjMatrixDirty = true;\n this.#transposedProjMatrixDirty = false;\n }\n\n /**\n * Gets the CustomProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @return New value for the CustomProjection's matrix.\n */\n get projMatrix(): FloatArrayParam {\n return this.#state.projMatrix;\n }\n\n /**\n * Sets the CustomProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @param projMatrix New value for the CustomProjection's matrix.\n */\n set projMatrix(projMatrix: FloatArrayParam) {\n // @ts-ignore\n this.#state.projMatrix.set(projMatrix);\n this.#inverseProjMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.setDirty();\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Gets the inverse of {@link CustomProjection.projMatrix}.\n *\n * @returns The inverse of {@link CustomProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseProjMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseProjMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link CustomProjection.projMatrix}.\n *\n * @returns The transpose of {@link CustomProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * Un-projects the given View-space coordinates, using this CustomProjection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam) {\n const htmlElement = this.camera.view.htmlElement;\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.onProjMatrix.clear();\n }\n}\n\nexport {CustomProjection};\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\n\nimport {scheduler} from './scheduler';\nimport type {View} from \"./View\";\nimport type {Camera} from \"./Camera\";\nimport {addVec3, lenVec3, lerpMat4, lerpVec3, mulVec3Scalar, normalizeVec3, subVec3, createVec3} from \"@xeokit/matrix\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {DEGTORAD, type FloatArrayParam} from \"@xeokit/math\";\nimport {getAABB3Center, getAABB3Diag, getAABB3DiagPoint} from \"@xeokit/boundaries\";\nimport {CustomProjectionType, OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\n\nconst tempVec3 = createVec3();\nconst newLook = createVec3();\nconst newEye = createVec3();\nconst newUp = createVec3();\nconst newLookEyeVec = createVec3();\n\n/**\n * Animates its {@link View |View's} {@link @xeokit/viewer!Camera} to look at specified objects, boundaries or locations.\n *\n * ## Summary\n *\n * * Belongs to a {@link @xeokit/viewer!View}, and is located at {@link View.cameraFlight}\n * * Controls the View's {@link @xeokit/viewer!Camera} , which is located at {@link View.camera}\n * * Navigates the Camera to look at a {@link ViewerObject} or boundary\n * * Navigates the Camera to an explicit position given as ````eye````, ````look```` and ````up```` vectors\n * * Jumps or flies the Camera\n * * Smoothly transitions between projections\n */\nclass CameraFlightAnimation extends Component {\n\n /**\n * The View that owns this CameraFlightAnimation.\n */\n public readonly view: View;\n\n /**\n * The Camera controlled by this CameraFlightAnimation.\n */\n public readonly camera: Camera;\n\n #duration: number;\n #look1: FloatArrayParam;\n #eye1: FloatArrayParam;\n #up1: FloatArrayParam;\n #look2: FloatArrayParam;\n #eye2: FloatArrayParam;\n #up2: FloatArrayParam;\n #orthoScale1: number;\n #orthoScale2: number;\n #fit: boolean;\n #trail: boolean;\n #flying: boolean;\n #flyEyeLookUp: boolean;\n #flyingEye: boolean;\n #flyingLook: boolean;\n #callback: any;\n #callbackScope: any;\n #time1: number | null;\n #time2: number | null;\n easing: boolean;\n #flyingEyeLookUp: boolean;\n #fitFOV: number;\n #projection2: number;\n #projMatrix1: FloatArrayParam;\n #projMatrix2: FloatArrayParam;\n\n\n /**\n * Emits an event each time the animation starts.\n *\n * @event\n */\n readonly onStarted: EventEmitter;\n\n /**\n * Emits an event each time the animation stops.\n *\n * @event\n */\n readonly onStopped: EventEmitter;\n\n /**\n * Emits an event each time the animation stops.\n *\n * @event\n */\n readonly onCancelled: EventEmitter;\n\n /**\n @private\n */\n constructor(view: View, cfg?: {\n duration: number\n }) {\n\n super(view, cfg);\n\n this.view = view;\n this.camera = view.camera;\n\n this.#look1 = createVec3();\n this.#eye1 = createVec3();\n this.#up1 = createVec3();\n this.#look2 = createVec3();\n this.#eye2 = createVec3();\n this.#up2 = createVec3();\n this.#orthoScale1 = 1;\n this.#orthoScale2 = 1;\n this.#flying = false;\n this.#flyEyeLookUp = false;\n this.#flyingEye = false;\n this.#flyingLook = false;\n this.#callback = null;\n this.#callbackScope = null;\n this.#time1 = null;\n this.#time2 = null;\n this.easing = true;\n this.#trail = false;\n this.#fit = true;\n this.#duration = 500;\n\n this.onStarted = new EventEmitter(new EventDispatcher());\n this.onStopped = new EventEmitter(new EventDispatcher());\n this.onCancelled = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Flies the {@link @xeokit/viewer!Camera} to a target.\n *\n * * When the target is a boundary, the {@link @xeokit/viewer!Camera} will fly towards the target and stop when the target fills most of the canvas.\n * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up````, then CameraFlightAnimation will interpolate the {@link @xeokit/viewer!Camera} to that target and stop there.\n *\n * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component} subtype that has\n * an AABB. Defaults to the {@link @xeokit/scene!Scene | Scene}, which causes the {@link @xeokit/viewer!Camera} to fit the Scene in view.\n * @param [params.arc=0] Factor in range ````[0..1]```` indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} position\n * will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} position as it flies to the target.\n * @param {Number|String|Component} [params.component] ID or instance of a component to fly to. Defaults to the entire {@link @xeokit/scene!Scene | Scene}.\n * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to.\n * @param [params.eye] Position to fly the eye position to.\n * @param [params.look] Position to fly the look position to.\n * @param [params.up] Position to fly the up vector to.\n * @param [params.projection] Projection type to transition into as we fly. Can be any of the values of {@link Camera.projectionType}.\n * @param [params.fit=true] Whether to fit the target to the view volume. Overrides {@link CameraFlightAnimation.fit}.\n * @param [params.fitFOV] How much of field-of-view, in degrees, that a target {@link ViewerObject} or its AABB should\n * fill the canvas on arrival. Overrides {@link CameraFlightAnimation.fitFOV}.\n * @param [params.duration] Flight duration in seconds. Overrides {@link CameraFlightAnimation.duration}.\n * @param [params.orthoScale] Animate the Camera's orthographic scale to this target value. See {@link Ortho.scale}.\n * @param {Function} [callback] Callback fired on arrival.\n * @param {Object} [scope] Optional scope for callback.\n */\n flyTo(params: {\n projection?: number;\n orthoScale?: number;\n aabb?: FloatArrayParam;\n length?: number;\n eye?: FloatArrayParam;\n look?: FloatArrayParam;\n up?: FloatArrayParam;\n poi?: FloatArrayParam;\n fitFOV?: number;\n duration?: number;\n } = {},\n callback: {\n (): void; call: (arg0: any) => void;\n }) {\n\n if (this.#flying) {\n this.stop();\n }\n\n this.#flying = false;\n this.#flyingEye = false;\n this.#flyingLook = false;\n this.#flyingEyeLookUp = false;\n\n this.#callback = callback;\n\n const camera = this.camera;\n const flyToProjection = (!!params.projection) && (params.projection !== camera.projectionType);\n\n this.#eye1[0] = camera.eye[0];\n this.#eye1[1] = camera.eye[1];\n this.#eye1[2] = camera.eye[2];\n\n this.#look1[0] = camera.look[0];\n this.#look1[1] = camera.look[1];\n this.#look1[2] = camera.look[2];\n\n this.#up1[0] = camera.up[0];\n this.#up1[1] = camera.up[1];\n this.#up1[2] = camera.up[2];\n\n this.#orthoScale1 = camera.orthoProjection.scale;\n this.#orthoScale2 = params.orthoScale || this.#orthoScale1;\n\n let aabb: FloatArrayParam;\n let eye: FloatArrayParam;\n let look: FloatArrayParam;\n let up: FloatArrayParam;\n\n if (params.aabb) {\n aabb = params.aabb;\n\n } else if ((params.eye && params.look) || params.up) {\n // @ts-ignore\n eye = params.eye;\n // @ts-ignore\n look = params.look;\n // @ts-ignore\n up = params.up;\n\n } else if (params.eye) {\n eye = params.eye;\n\n } else if (params.look) {\n look = params.look;\n\n } else {\n if (!flyToProjection) {\n aabb = this.view.aabb;\n }\n }\n\n const poi = params.poi;\n // @ts-ignore\n if (aabb) {\n\n if (aabb[3] < aabb[0] || aabb[4] < aabb[1] || aabb[5] < aabb[2]) { // Don't fly to an inverted boundary\n return;\n }\n\n if (aabb[3] === aabb[0] && aabb[4] === aabb[1] && aabb[5] === aabb[2]) { // Don't fly to an empty boundary\n return;\n }\n\n aabb = aabb.slice();\n const aabbCenter = getAABB3Center(aabb);\n\n this.#look2 = poi || aabbCenter;\n\n const eyeLookVec = subVec3(this.#eye1, this.#look1, tempVec3);\n const eyeLookVecNorm = normalizeVec3(eyeLookVec);\n const diag = poi ? getAABB3DiagPoint(aabb, poi) : getAABB3Diag(aabb);\n const fitFOV = params.fitFOV || this.#fitFOV;\n const sca = Math.abs(diag / Math.tan(fitFOV * DEGTORAD));\n\n this.#orthoScale2 = diag * 1.1;\n\n this.#eye2[0] = this.#look2[0] + (eyeLookVecNorm[0] * sca);\n this.#eye2[1] = this.#look2[1] + (eyeLookVecNorm[1] * sca);\n this.#eye2[2] = this.#look2[2] + (eyeLookVecNorm[2] * sca);\n\n this.#up2[0] = this.#up1[0];\n this.#up2[1] = this.#up1[1];\n this.#up2[2] = this.#up1[2];\n\n this.#flyingEyeLookUp = true;\n\n // @ts-ignore\n } else if (eye || look || up) {\n // @ts-ignore\n this.#flyingEyeLookUp = !!eye && !!look && !!up;\n // @ts-ignore\n this.#flyingEye = !!eye && !look;\n // @ts-ignore\n this.#flyingLook = !!look && !eye;\n // @ts-ignore\n if (eye) {\n this.#eye2[0] = eye[0];\n this.#eye2[1] = eye[1];\n this.#eye2[2] = eye[2];\n }\n // @ts-ignore\n if (look) {\n this.#look2[0] = look[0];\n this.#look2[1] = look[1];\n this.#look2[2] = look[2];\n }\n // @ts-ignore\n if (up) {\n this.#up2[0] = up[0];\n this.#up2[1] = up[1];\n this.#up2[2] = up[2];\n }\n }\n\n if (flyToProjection) {\n\n if (params.projection === OrthoProjectionType && camera.projectionType !== OrthoProjectionType) {\n this.#projection2 = OrthoProjectionType;\n this.#projMatrix1 = camera.projMatrix.slice();\n this.#projMatrix2 = camera.orthoProjection.projMatrix.slice();\n camera.projectionType = CustomProjectionType;\n }\n\n if (params.projection === PerspectiveProjectionType && camera.projectionType !== PerspectiveProjectionType) {\n this.#projection2 = PerspectiveProjectionType;\n this.#projMatrix1 = camera.projMatrix.slice();\n this.#projMatrix2 = camera.perspectiveProjection.projMatrix.slice();\n camera.projectionType = CustomProjectionType;\n }\n } else {\n // @ts-ignore\n this.#projection2 = null;\n }\n\n this.onStarted.dispatch(this, null);\n\n this.#time1 = Date.now();\n this.#time2 = this.#time1 + (params.duration ? params.duration * 1000 : this.#duration);\n\n this.#flying = true; // False as soon as we stop\n\n scheduler.scheduleTask(this.#update, this);\n }\n\n /**\n * Jumps the {@link @xeokit/viewer!View}'s {@link @xeokit/viewer!Camera} to the given target.\n *\n * * When the target is a boundary, this CameraFlightAnimation will position the {@link @xeokit/viewer!Camera} at where the target fills most of the canvas.\n * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up```` vectors, then this CameraFlightAnimation will jump the {@link @xeokit/viewer!Camera} to that target.\n *\n * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component} subtype that has a World-space AABB.\n * @param [params.arc=0] Factor in range [0..1] indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} as it flies to the target.\n * @param {Number|String|Component} [params.component] ID or instance of a component to fly to.\n * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to.\n * @param [params.eye] Position to fly the eye position to.\n * @param [params.look] Position to fly the look position to.\n * @param [params.up] Position to fly the up vector to.\n * @param [params.projection] Projection type to transition into. Can be any of the values of {@link Camera.projectionType}.\n * @param [params.fitFOV] How much of field-of-view, in degrees, that a target {@link ViewerObject} or its AABB should fill the canvas on arrival. Overrides {@link CameraFlightAnimation.fitFOV}.\n * @param [params.fit] Whether to fit the target to the view volume. Overrides {@link CameraFlightAnimation.fit}.\n */\n jumpTo(params: any) {\n this.#jumpTo(params);\n }\n\n #jumpTo(params: any) {\n\n if (this.#flying) {\n this.stop();\n }\n\n const camera = this.camera;\n\n let aabb: FloatArrayParam;\n let newEye: FloatArrayParam;\n let newLook: FloatArrayParam;\n let newUp: FloatArrayParam;\n\n if (params.aabb) { // Boundary3D\n aabb = params.aabb;\n } else if (params.eye || params.look || params.up) { // Camera pose\n newEye = params.eye;\n newLook = params.look;\n newUp = params.up;\n } else {\n aabb = this.view.aabb;\n }\n\n const poi = params.poi;\n // @ts-ignore\n if (aabb) {\n\n if (aabb[3] <= aabb[0] || aabb[4] <= aabb[1] || aabb[5] <= aabb[2]) { // Don't fly to an empty boundary\n return;\n }\n\n const diag = poi ? getAABB3DiagPoint(aabb, poi) : getAABB3Diag(aabb);\n // @ts-ignore\n newLook = poi || getAABB3Center(aabb, newLook);\n\n if (this.#trail) {\n subVec3(camera.look, newLook, newLookEyeVec);\n } else {\n subVec3(camera.eye, camera.look, newLookEyeVec);\n }\n\n normalizeVec3(newLookEyeVec);\n let dist;\n const fit = (params.fit !== undefined) ? params.fit : this.#fit;\n\n if (fit) {\n dist = Math.abs((diag) / Math.tan((params.fitFOV || this.#fitFOV) * DEGTORAD));\n\n } else {\n dist = lenVec3(subVec3(camera.eye, camera.look, tempVec3));\n }\n\n mulVec3Scalar(newLookEyeVec, dist);\n\n camera.eye = addVec3(newLook, newLookEyeVec, tempVec3);\n camera.look = newLook;\n\n this.camera.orthoProjection.scale = diag * 1.1;\n // @ts-ignore\n } else if (newEye || newLook || newUp) {\n // @ts-ignore\n if (newEye) {\n camera.eye = newEye;\n } // @ts-ignore\n if (newLook) {\n camera.look = newLook;\n } // @ts-ignore\n if (newUp) {\n camera.up = newUp;\n }\n }\n\n if (params.projection) {\n camera.projectionType = params.projection;\n }\n }\n\n #update() {\n if (!this.#flying) {\n return;\n }\n const time = Date.now();\n // @ts-ignore\n let t = (time - this.#time1) / (this.#time2 - this.#time1);\n const stopping = (t >= 1);\n\n if (t > 1) {\n t = 1;\n }\n\n const tFlight = this.easing ? CameraFlightAnimation.#ease(t, 0, 1, 1) : t;\n const camera = this.camera;\n\n if (this.#flyingEye || this.#flyingLook) {\n\n if (this.#flyingEye) {\n subVec3(camera.eye, camera.look, newLookEyeVec);\n camera.eye = lerpVec3(tFlight, 0, 1, this.#eye1, this.#eye2, newEye);\n camera.look = subVec3(newEye, newLookEyeVec, newLook);\n } else if (this.#flyingLook) {\n camera.look = lerpVec3(tFlight, 0, 1, this.#look1, this.#look2, newLook);\n camera.up = lerpVec3(tFlight, 0, 1, this.#up1, this.#up2, newUp);\n }\n\n } else if (this.#flyingEyeLookUp) {\n\n camera.eye = lerpVec3(tFlight, 0, 1, this.#eye1, this.#eye2, newEye);\n camera.look = lerpVec3(tFlight, 0, 1, this.#look1, this.#look2, newLook);\n camera.up = lerpVec3(tFlight, 0, 1, this.#up1, this.#up2, newUp);\n }\n\n if (this.#projection2) {\n const tProj = (this.#projection2 === OrthoProjectionType) ? CameraFlightAnimation.#easeOutExpo(t, 0, 1, 1) : CameraFlightAnimation.#easeInCubic(t, 0, 1, 1);\n camera.customProjection.projMatrix = lerpMat4(tProj, 0, 1, this.#projMatrix1, this.#projMatrix2);\n\n } else {\n camera.orthoProjection.scale = this.#orthoScale1 + (t * (this.#orthoScale2 - this.#orthoScale1));\n }\n\n if (stopping) {\n camera.orthoProjection.scale = this.#orthoScale2;\n this.stop();\n return;\n }\n scheduler.scheduleTask(this.#update, this); // Keep flying\n }\n\n static #ease(t: number, b: number, c: number, d: number) { // Quadratic easing out - decelerating to zero velocity http://gizma.com/easing\n t /= d;\n return -c * t * (t - 2) + b;\n }\n\n static #easeInCubic(t: number, b: number, c: number, d: number) {\n t /= d;\n return c * t * t * t + b;\n }\n\n static #easeOutExpo(t: number, b: number, c: number, d: number) {\n return c * (-Math.pow(2, -10 * t / d) + 1) + b;\n }\n\n /**\n * Stops an earlier {@link CameraFlightAnimation.flyTo}, fires arrival callback, then \"stopped\" event.\n */\n stop() {\n if (!this.#flying) {\n return;\n }\n this.#flying = false;\n this.#time1 = null;\n this.#time2 = null;\n if (this.#projection2) {\n this.camera.projectionType = this.#projection2;\n }\n const callback = this.#callback;\n if (callback) {\n this.#callback = null;\n callback();\n }\n this.onStopped.dispatch(this, null);\n }\n\n /**\n * Cancels a flight in progress, without calling the arrival callback.\n */\n cancel() {\n if (!this.#flying) {\n return;\n }\n this.#flying = false;\n this.#time1 = null;\n this.#time2 = null;\n if (this.#callback) {\n this.#callback = null;\n }\n this.onCancelled.dispatch(this, null);\n }\n\n /**\n * Sets the flight duration in seconds.\n *\n * Stops any flight currently in progress.\n *\n * Default value is ````0.5````.\n */\n set duration(value: number) {\n this.#duration = value ? (value * 1000.0) : 500;\n this.stop();\n }\n\n /**\n * Gets the flight duration in seconds.\n *\n * Default value is ````0.5````.\n */\n get duration(): number {\n return this.#duration / 1000.0;\n }\n\n /**\n * When flying to a {@link @xeokit/scene!SceneModel | SceneModel}, {@link ViewerObject} or boundary, indicates if the CameraFlightAnimation always adjusts\n * the distance of {@link @xeokit/viewer!Camera.eye | Camera.eye} from {@link @xeokit/viewer!Camera.look | Camera.look} to ensure that the target always fits in view.\n *\n * When false, the eye will remain fixed at its current distance from the look position.\n *\n * Default value is ````true````.\n */\n set fit(value: boolean) {\n this.#fit = value;\n }\n\n /**\n * When flying to a {@link @xeokit/scene!SceneModel | SceneModel}, {@link ViewerObject} or boundary, indicates if the CameraFlightAnimation always adjusts\n * the distance of {@link @xeokit/viewer!Camera.eye | Camera.eye} from {@link @xeokit/viewer!Camera.look | Camera.look} to ensure that the target always fits in view.\n *\n * When false, the eye will remain fixed at its current distance from the look position.\n *\n * Default value is ````true````.\n */\n get fit(): boolean {\n return this.#fit;\n }\n\n /**\n * Sets how much of the perspective field-of-view, in degrees, that a target {@link ViewerObject.aabb} should\n * fill the canvas when calling {@link CameraFlightAnimation.flyTo} or {@link CameraFlightAnimation.jumpTo}.\n *\n * Default value is ````45````.\n */\n set fitFOV(value: number) {\n this.#fitFOV = value;\n }\n\n /**\n * Gets how much of the perspective field-of-view, in degrees, that a target {@link ViewerObject.aabb} should\n * fill the canvas when calling {@link CameraFlightAnimation.flyTo} or {@link CameraFlightAnimation.jumpTo}.\n *\n * Default value is ````45````.\n */\n get fitFOV(): number {\n return this.#fitFOV;\n }\n\n /**\n * Indicates if this CameraFlightAnimation will orient the {@link @xeokit/viewer!Camera}\n * in the direction that it is flying.\n *\n * Default value is ````false````.\n */\n set trail(value: boolean) {\n this.#trail = value;\n }\n\n /**\n * Indicates if this CameraFlightAnimation will orient the {@link @xeokit/viewer!Camera}\n * in the direction that it is flying.\n *\n * Default value is ````false````.\n */\n get trail(): boolean {\n return this.#trail;\n }\n\n /**\n * @private\n */\n destroy() {\n this.stop();\n super.destroy();\n this.onStarted.clear();\n this.onStopped.clear();\n this.onCancelled.clear();\n }\n}\n\nexport {CameraFlightAnimation};\n", "/**\n * xeokit runtime statistics.\n * @type {{components: {models: number, objects: number, scenes: number, meshes: number}, memory: {indices: number, uvs: number, textures: number, materials: number, transforms: number, positions: number, programs: number, normals: number, meshes: number, colors: number}, build: {version: string}, client: {browser: string}, frame: {frameCount: number, useProgram: number, bindTexture: number, drawElements: number, bindArray: number, tasksRun: number, fps: number, drawArrays: number, tasksScheduled: number}}}\n */\nconst stats = {\n build: {\n version: \"0.8\"\n },\n client: {\n browser: (navigator && navigator.userAgent) ? navigator.userAgent : \"n/a\"\n },\n components: {\n viewers: 0,\n views: 0,\n scenes: 0,\n models: 0,\n meshes: 0,\n objects: 0\n },\n memory: {\n meshes: 0,\n positions: 0,\n colors: 0,\n normals: 0,\n uvs: 0,\n indices: 0,\n textures: 0,\n transforms: 0,\n materials: 0,\n programs: 0\n },\n frame: {\n frameCount: 0,\n fps: 0,\n tasksRun: 0,\n tasksScheduled: 0,\n tasksBudget: 0\n }\n};\n\nexport {stats};", "import {Queue, Map, inQuotes} from \"@xeokit/utils\";\n\nimport {stats} from './stats';\nimport type {Viewer} from \"./Viewer\";\n\n\nexport interface TickEvent {\n viewerId: string;\n time: number;\n startTime: number;\n prevTime: number;\n deltaTime: number;\n}\n\nconst tickEvent: TickEvent = {\n viewerId: \"\",\n time: 0,\n startTime: 0,\n prevTime: 0,\n deltaTime: 0\n};\n\nclass Scheduler {\n\n public readonly viewers: { [key: string]: Viewer };\n\n #viewersRenderInfo: { [key: string]: any } = {};\n\n // @ts-ignore\n #viewerIDMap: Map = new Map(); // Ensures unique viewer IDs\n #taskQueue: Queue = new Queue(); // Task queue, which is pumped on each frame; tasks are pushed to it with calls to xeokit.schedule\n #taskBudget: number = 10; // Millisecs we're allowed to spend on tasks in each frame\n #lastTime: number = 0;\n #elapsedTime: number = 0;\n\n /**\n * @private\n */\n constructor() {\n\n this.viewers = {};\n\n const frame = () => {\n const time = Date.now();\n if (this.#lastTime > 0) {\n this.#elapsedTime = time - this.#lastTime;\n }\n this.#runTasks(time);\n this.#fireTickEvents(time);\n this.#renderViewers();\n this.#lastTime = time;\n\n requestAnimationFrame(frame);\n };\n\n requestAnimationFrame(frame);\n }\n\n #runTasks(time: number) {\n const tasksRun = this.#runTasksUntil(time + this.#taskBudget);\n const tasksScheduled = this.getNumTasks();\n stats.frame.tasksRun = tasksRun;\n stats.frame.tasksScheduled = tasksScheduled;\n stats.frame.tasksBudget = this.#taskBudget;\n }\n\n #runTasksUntil(until: number = -1) {\n let time = (new Date()).getTime();\n let tasksRun = 0;\n while (this.#taskQueue.length > 0 && (until < 0 || time < until)) {\n const callback = this.#taskQueue.shift();\n const scope = this.#taskQueue.shift();\n if (scope) {\n callback.call(scope);\n } else {\n callback();\n }\n time = (new Date()).getTime();\n tasksRun++;\n }\n return tasksRun;\n }\n\n #fireTickEvents(time: number) {\n tickEvent.time = time;\n for (let id in scheduler.viewers) {\n if (this.viewers.hasOwnProperty(id)) {\n const viewer = this.viewers[id];\n tickEvent.viewerId = id;\n tickEvent.startTime = viewer.startTime;\n tickEvent.deltaTime = tickEvent.prevTime != null ? tickEvent.time - tickEvent.prevTime : 0;\n viewer.onTick.dispatch(viewer, tickEvent);\n }\n }\n tickEvent.prevTime = time;\n }\n\n #renderViewers() {\n for (let id in this.viewers) {\n if (this.viewers.hasOwnProperty(id)) {\n const viewer = this.viewers[id];\n let renderInfo = this.#viewersRenderInfo[id];\n if (!renderInfo) {\n renderInfo = this.#viewersRenderInfo[id] = {}; // FIXME\n }\n\n\n // const ticksPerOcclusionTest = viewer.ticksPerOcclusionTest;\n // if (renderInfo.ticksPerOcclusionTest !== ticksPerOcclusionTest) {\n // renderInfo.ticksPerOcclusionTest = ticksPerOcclusionTest;\n // renderInfo.renderCountdown = ticksPerOcclusionTest;\n // }\n // if (--viewer.occlusionTestCountdown <= 0) {\n // viewer.doOcclusionTest();\n // viewer.occlusionTestCountdown = ticksPerOcclusionTest;\n // }\n //\n // ticksPerRender = viewer.ticksPerRender;\n // if (renderInfo.ticksPerRender !== ticksPerRender) {\n // renderInfo.ticksPerRender = ticksPerRender;\n // renderInfo.renderCountdown = ticksPerRender;\n // }\n // if (--renderInfo.renderCountdown === 0) {\n viewer.render({});\n // renderInfo.renderCountdown = ticksPerRender;\n // }\n }\n }\n }\n\n registerViewer(viewer: Viewer) {\n if (viewer.id) {\n if (this.viewers[viewer.id]) {\n console.error(`[ERROR] Viewer ${inQuotes(viewer.id)} already exists`);\n return;\n }\n } else { // Auto-generated ID\n // @ts-ignore\n // noinspection JSConstantReassignment\n viewer.id = this.#viewerIDMap.addItem({});\n }\n this.viewers[viewer.id] = viewer;\n // const ticksPerOcclusionTest = viewer.ticksPerOcclusionTest;\n // const ticksPerRender = viewer.ticksPerRender;\n this.#viewersRenderInfo[viewer.id] = {\n // ticksPerOcclusionTest: ticksPerOcclusionTest,\n // ticksPerRender: ticksPerRender,\n // renderCountdown: ticksPerRender\n };\n stats.components.viewers++;\n }\n\n deregisterViewer(viewer:Viewer) {\n if (!this.viewers[viewer.id]) {\n return;\n }\n this.#viewerIDMap.removeItem(viewer.id);\n delete this.viewers[viewer.id];\n delete this.#viewersRenderInfo[viewer.id];\n stats.components.viewers--;\n }\n\n scheduleTask(callback: Function, scope: any) {\n this.#taskQueue.push(callback);\n this.#taskQueue.push(scope);\n }\n\n getNumTasks() {\n return this.#taskQueue.length;\n }\n}\n\nconst scheduler = new Scheduler();\n\nexport {scheduler};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * An ambient light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Has fixed color and intensity that illuminates all objects equally.\n * * {@link AmbientLight}s, {@link DirLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass AmbientLight extends Component {\n\n /**\n ID of this AmbientLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this AmbientLight belongs.\n */\n public readonly view: View;\n\n #state: {\n intensity: number;\n color: Float32Array;\n type: string\n };\n\n /**\n * @param view Owner component. When destroyed, the owner will destroy this AmbientLight as well.\n * @param cfg AmbientLight configuration\n */\n constructor(view: View, cfg: {\n /** Optional ID, generated automatically when omitted.*/\n id?: string;\n /** Intensity factor in range ````[0..1]````. Default is ````1````.*/\n intensity?: number;\n /** RGB color in range ````[0..1,0..1,0..1]````. Default is ````[0.7, 0.7, 0.7]````.*/\n color?: FloatArrayParam\n } = {}) {\n super(view, cfg);\n this.view = view;\n this.#state = {\n type: \"ambient\",\n color: new Float32Array(cfg.color || [0.7, 0.7, 0.7]),\n intensity: (cfg.intensity !== undefined && cfg.intensity !== null) ? cfg.intensity : 1.0\n };\n this.view.registerLight(this);\n }\n\n /**\n * Sets the RGB color of this AmbientLight.\n *\n * Default value is ````[0.7, 0.7, 0.7]````.\n *\n * @param color The AmbientLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this AmbientLight.\n *\n * Default value is ````[0.7, 0.7, 0.7]````.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the intensity of this AmbientLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @param intensity The AmbientLight's intensity.\n */\n set intensity(intensity: number) {\n this.#state.intensity = intensity !== undefined ? intensity : 1.0;\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this AmbientLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The AmbientLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Destroys this AmbientLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n }\n}\n\nexport {AmbientLight};\n", "import {Component} from \"@xeokit/core\";\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * A directional light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Illuminates all objects equally from a given direction.\n * * Has an emission direction vector in {@link DirLight.dir}, but no position.\n * * Defined in either *World* or *View* coordinate space. When in World-space, {@link DirLight.dir} is relative to the\n * World coordinate system, and will appear to move as the {@link @xeokit/viewer!Camera} moves. When in View-space, {@link DirLight.dir} is\n * relative to the View coordinate system, and will behave as if fixed to the viewer's head.\n * * {@link AmbientLight}s, {@link DirLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass DirLight extends Component {\n\n /**\n ID of this DirLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this DirLight belongs.\n */\n public readonly view: View;\n\n #state: {\n type: \"dir\";\n dir: Float32Array;\n color: Float32Array;\n intensity: number;\n space: \"world\" | \"view\"\n };\n\n /**\n * @param view View that owns this DirLight. When destroyed, the View will destroy this DirLight as well.\n * @param options The DirLight configuration\n * @param [options.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [options.dir=[1.0, 1.0, 1.0]] A unit vector indicating the direction that the light is shining, given in either World or View space, depending on the value of the ````space```` parameter.\n * @param [options.color=[0.7, 0.7, 0.8 ]] The color of this DirLight.\n * @param [options.intensity=1.0] The intensity of this DirLight, as a factor in range ````[0..1]````.\n * @param [options.space=\"view\"] The coordinate system the DirLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n constructor(view: View, options: {\n intensity?: number; color?: FloatArrayParam;\n dir?: FloatArrayParam; space?: \"world\" | \"view\"\n } = {}) {\n super(view, options);\n this.view = view;\n this.#state = {\n type: \"dir\",\n dir: new Float32Array(options.dir || [1.0, 1.0, 1.0]),\n color: new Float32Array(options.color || [0.7, 0.7, 0.8]),\n intensity: (options.intensity !== undefined && options.intensity !== null) ? options.intensity : 1.0,\n space: options.space || \"view\"\n };\n this.view.registerLight(this);\n }\n\n /**\n * Gets the direction in which the DirLight is shining.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @returns {Number[]} The direction vector.\n */\n get dir(): FloatArrayParam {\n return this.#state.dir;\n }\n\n /**\n * The coordinate system the DirLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n get space(): String {\n return this.#state.space;\n }\n\n /**\n * Sets the direction in which the DirLight is shining.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @param value The direction vector.\n */\n set dir(value: FloatArrayParam) {\n this.#state.dir.set(value);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this DirLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @returns {Number[]} The DirLight's RGB color.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the RGB color of this DirLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @param color The DirLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color);\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this DirLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The DirLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the intensity of this DirLight.\n *\n * Default intensity is ````1.0```` for maximum intensity.\n *\n * @param intensity The DirLight's intensity\n */\n set intensity(intensity: number) {\n this.#state.intensity = intensity;\n this.view.redraw();\n }\n\n /**\n * Destroys this DirLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n this.view.redraw();\n }\n}\n\nexport {DirLight};\n", "\n\n/**\n * Results of a snapshot attempted with {@link View.getSnapshot}.\n */\nclass SnapshotResult {\n\n\n constructor() {\n\n this.reset();\n }\n\n\n\n /**\n * @private\n */\n reset() {\n\n }\n}\n\nexport {SnapshotResult};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport {FastRender, QualityRender} from \"@xeokit/constants\";\n\n\n// /**\n// * Gets the scale of the canvas back buffer relative to the CSS-defined size of the canvas.\n// *\n// * This is a kdtree3 way to trade off rendering quality for speed. If the canvas size is defined in CSS, then\n// * setting this to a value between ````[0..1]```` (eg ````0.5````) will render into a smaller back buffer, giving\n// * a performance boost.\n// *\n// * @returns The resolution scale.\n// */\n// get resolutionScale(): number {\n// return this.#resolutionScale;\n// }\n//\n// /**\n// * Sets the scale of the canvas back buffer relative to the CSS-defined size of the canvas.\n// *\n// * This is a kdtree3 way to trade off rendering quality for speed. If the canvas size is defined in CSS, then\n// * setting this to a value between ````[0..1]```` (eg ````0.5````) will render into a smaller back buffer, giving\n// * a performance boost.\n// *\n// * @param resolutionScale The resolution scale.\n// */\n// set resolutionScale(resolutionScale: number) {\n// resolutionScale = resolutionScale || 1.0;\n// if (resolutionScale === this.#resolutionScale) {\n// return;\n// }\n// this.#resolutionScale = resolutionScale;\n// const htmlElement = this.htmlElement;\n// htmlElement.width = Math.round(\n// htmlElement.clientWidth * this.#resolutionScale\n// );\n// htmlElement.height = Math.round(\n// htmlElement.clientHeight * this.#resolutionScale\n// );\n// this.redraw();\n// }\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when canvas resolution scaling is applied.\n *\n * ## Summary\n *\n * * Located at {@link View.resolutionScale}.\n */\nexport class ResolutionScale extends Component {\n\n /**\n * The View to which this ResolutionScale belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n enabled: boolean;\n resolutionScale: number;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n enabled?: boolean;\n resolutionScale?: number;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n enabled: options.enabled !== false,\n renderModes: options.renderModes || [FastRender],\n resolutionScale: options.resolutionScale || 1\n };\n }\n\n /**\n * Sets if resolution scaling is enabled.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if resolution scaling is enabled.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Sets which rendering modes in which to apply ResolutionScale.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!FastRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to apply ResolutionScale.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!FastRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets the scale when ResolutionScale is applied.\n *\n * Default is ````1.0````.\n */\n set resolutionScale(value: number) {\n if (this.#state.resolutionScale === value) {\n return;\n }\n this.#state.resolutionScale = value;\n this.view.redraw();\n }\n\n /**\n * Gets the scale when ResolutionScale is applied.\n *\n * Default is ````1.0````.\n */\n get resolutionScale(): number {\n return this.#state.resolutionScale;\n }\n\n /**\n * Gets if resolution scaling is currently applied.\n *\n * This is `true` when {@link ResolutionScale.enabled | ResolutionScale.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link ResolutionScale.renderModes | ResolutionScale.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n", "import {Component} from \"@xeokit/core\";\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * A positional light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Originates from a single point and spreads outward in all directions, with optional attenuation over distance.\n * * Has a position in {@link PointLight.pos}, but no direction.\n * * Defined in either *World* or *View* coordinate space. When in World-space, {@link PointLight.pos} is relative to\n * the World coordinate system, and will appear to move as the {@link @xeokit/viewer!Camera} moves. When in View-space,\n * {@link PointLight.pos} is relative to the View coordinate system, and will behave as if fixed to the viewer's head.\n * * Has {@link PointLight.constantAttenuation}, {@link PointLight.linearAttenuation} and {@link PointLight.quadraticAttenuation}\n * factors, which indicate how intensity attenuates over distance.\n * * {@link AmbientLight}s, {@link PointLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass PointLight extends Component {\n\n /**\n ID of this PointLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this PointLight belongs.\n */\n public readonly view: View;\n\n #state: {\n intensity: number;\n attenuation: Float32Array;\n color: Float32Array;\n pos: Float64Array;\n type: string;\n space: string\n };\n\n /**\n * @param view View that owns this PointLight. When destroyed, the View will destroy this PointLight as well.\n * @param cfg The PointLight configuration\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.pos=[ 1.0, 1.0, 1.0 ]] Position, in either World or View space, depending on the value of the **space** parameter.\n * @param [cfg.color=[0.7, 0.7, 0.8 ]] Color of this PointLight.\n * @param [cfg.intensity=1.0] Intensity of this PointLight, as a factor in range ````[0..1]````.\n * @param [cfg.constantAttenuation=0] Constant attenuation factor.\n * @param [cfg.linearAttenuation=0] Linear attenuation factor.\n * @param [cfg.quadraticAttenuation=0] Quadratic attenuation factor.\n * @param [cfg.space=\"view\"] The coordinate system this PointLight is defined in - \"view\" or \"world\".\n * @param [cfg.castsShadow=false] Flag which indicates if this PointLight casts a castsShadow.\n */\n constructor(view: View, cfg: {\n /** Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.*/\n id?: string;\n /** Intensity of this PointLight, as a factor in range ````[0..1]````. */\n intensity?: number;\n /** RGB color */\n color?: FloatArrayParam;\n /** World-space position */\n pos?: FloatArrayParam;\n /** Quadratic attenuation factor. */\n quadraticAttenuation?: number;\n /** Constant attenuation factor */\n constantAttenuation?: number;\n /** The coordinate system this PointLight is defined in - \"view\" or \"world\". */\n space?: string;\n /** Linear attenuation factor */\n linearAttenuation?: number\n } = {}) {\n\n super(view, cfg);\n\n this.view = view;\n\n\n this.#state = {\n type: \"point\",\n pos: new Float64Array(cfg.pos || [1.0, 1.0, 1.0]),\n color: new Float32Array(cfg.color || [0.7, 0.7, 0.8]),\n intensity: 1.0,\n // @ts-ignore\n attenuation: new Float32Array([cfg.constantAttenuation, cfg.linearAttenuation, cfg.quadraticAttenuation]),\n space: cfg.space || \"view\"\n };\n\n this.view.registerLight(this);\n }\n\n /**\n * The coordinate system the PointLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n get space(): String {\n return this.#state.space;\n }\n\n /**\n * Gets the position of this PointLight.\n *\n * This will be either World- or View-space, depending on the value of {@link PointLight.space}.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @returns {Number[]} The position.\n */\n get pos(): FloatArrayParam {\n return this.#state.pos;\n }\n\n /**\n * Sets the position of this PointLight.\n *\n * This will be either World- or View-space, depending on the value of {@link PointLight.space}.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @param pos The position.\n */\n set pos(pos: FloatArrayParam) {\n this.#state.pos.set(pos || [1.0, 1.0, 1.0]);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this PointLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @returns {Number[]} The PointLight's RGB color.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the RGB color of this PointLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @param color The PointLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color || [0.7, 0.7, 0.8]);\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this PointLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The PointLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the intensity of this PointLight.\n *\n * Default intensity is ````1.0```` for maximum intensity.\n *\n * @param intensity The PointLight's intensity\n */\n set intensity(intensity: number) {\n if (intensity === this.#state.intensity) {\n return;\n }\n this.#state.intensity = intensity;\n this.view.redraw();\n }\n\n /**\n * Gets the constant attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The constant attenuation factor.\n */\n get constantAttenuation(): number {\n return this.#state.attenuation[0];\n }\n\n /**\n * Sets the constant attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The constant attenuation factor.\n */\n set constantAttenuation(value: number) {\n this.#state.attenuation[0] = value;\n this.view.redraw();\n }\n\n /**\n * Gets the linear attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The linear attenuation factor.\n */\n get linearAttenuation(): number {\n return this.#state.attenuation[1];\n }\n\n /**\n * Sets the linear attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The linear attenuation factor.\n */\n set linearAttenuation(value: number) {\n this.#state.attenuation[1] = value;\n this.view.redraw();\n }\n\n /**\n * Gets the quadratic attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The quadratic attenuation factor.\n */\n get quadraticAttenuation(): number {\n return this.#state.attenuation[2];\n }\n\n /**\n * Sets the quadratic attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The quadratic attenuation factor.\n */\n set quadraticAttenuation(value: number) {\n this.#state.attenuation[2] = value;\n this.view.redraw();\n }\n\n /**\n * Destroys this PointLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n this.view.redraw();\n }\n}\n\nexport {PointLight};\n", "import type {ViewObject} from \"./ViewObject\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * Results of a pick attempted with {@link View.pick}.\n */\nclass PickResult {\n\n #viewObject?: ViewObject | null | undefined;\n #gotCanvasPos: boolean;\n #gotSnappedCanvasPos: boolean;\n #gotOrigin: boolean;\n #gotDirection: boolean;\n #gotIndices: boolean;\n #gotLocalPos: boolean;\n #gotWorldPos: boolean;\n #gotViewPos: boolean;\n #gotWorldNormal: boolean;\n #gotUV: boolean;\n #snappedToVertex: boolean;\n #snappedToEdge: boolean;\n #canvasPos: Int16Array;\n #snappedCanvasPos: Int16Array;\n #origin: FloatArrayParam;\n #direction: FloatArrayParam;\n #indices: Int32Array;\n #localPos: FloatArrayParam;\n #worldPos: FloatArrayParam;\n #viewPos: FloatArrayParam;\n #worldNormal: FloatArrayParam;\n #uv: FloatArrayParam;\n\n constructor() {\n\n this.#viewObject = null;\n this.#canvasPos = new Int16Array([0, 0]);\n this.#origin = new Float64Array([0, 0, 0]);\n this.#direction = new Float64Array([0, 0, 0]);\n this.#indices = new Int32Array(3);\n this.#localPos = new Float64Array([0, 0, 0]);\n this.#worldPos = new Float64Array([0, 0, 0]);\n this.#viewPos = new Float64Array([0, 0, 0]);\n this.#worldNormal = new Float64Array([0, 0, 0]);\n this.#uv = new Float64Array([0, 0]);\n this.#gotOrigin = false;\n this.#gotDirection = false;\n this.#gotIndices = false;\n this.#gotCanvasPos = false;\n this.#gotSnappedCanvasPos = false;\n this.#gotLocalPos = false;\n this.#gotWorldPos = false;\n this.#gotViewPos = false;\n this.#gotWorldNormal = false;\n this.#gotUV = false;\n this.#snappedToVertex = false\n this.#snappedToEdge = false;\n\n this.reset();\n }\n\n /**\n * The picked {@link @xeokit/viewer!ViewObject}.\n */\n get viewObject(): ViewObject | null | undefined {\n return this.#viewObject;\n }\n\n /**\n * @private\n */\n set viewObject(value: ViewObject | null | undefined) {\n this.#viewObject = value;\n }\n\n /**\n * Canvas coordinates when picking with a 2D pointer.\n */\n get canvasPos(): Int16Array | undefined {\n return this.#gotCanvasPos ? this.#canvasPos : undefined;\n }\n\n /**\n * @private\n */\n set canvasPos(value: FloatArrayParam | Int16Array | undefined) {\n if (value) {\n this.#canvasPos[0] = value[0];\n this.#canvasPos[1] = value[1];\n this.#gotCanvasPos = true;\n } else {\n this.#gotCanvasPos = false;\n }\n }\n\n /**\n * World-space 3D ray origin when raypicked.\n */\n get origin(): FloatArrayParam | null {\n return this.#gotOrigin ? this.#origin : null;\n }\n\n /**\n * @private\n */\n set origin(value: any) {\n if (value) {\n this.#origin[0] = value[0];\n this.#origin[1] = value[1];\n this.#origin[2] = value[2];\n this.#gotOrigin = true;\n } else {\n this.#gotOrigin = false;\n }\n }\n\n /**\n * World-space 3D ray direction when raypicked.\n */\n get direction(): FloatArrayParam | null {\n return this.#gotDirection ? this.#direction : null;\n }\n\n /**\n * @private\n */\n set direction(value: any) {\n if (value) {\n this.#direction[0] = value[0];\n this.#direction[1] = value[1];\n this.#direction[2] = value[2];\n this.#gotDirection = true;\n } else {\n this.#gotDirection = false;\n }\n }\n\n /**\n * Picked triangle's vertex indices.\n * Only defined when an object and triangle was picked.\n */\n get indices(): Int32Array | null {\n return this.#viewObject !== null && this.#gotIndices ? this.#indices : null;\n }\n\n /**\n * @private\n */\n set indices(value: any) {\n if (value) {\n this.#indices[0] = value[0];\n this.#indices[1] = value[1];\n this.#indices[2] = value[2];\n this.#gotIndices = true;\n } else {\n this.#gotIndices = false;\n }\n }\n\n /**\n * Picked Local-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get localPos(): FloatArrayParam | null {\n return this.#viewObject!== null && this.#gotLocalPos ? this.#localPos : null;\n }\n\n /**\n * @private\n */\n set localPos(value: any) {\n if (value) {\n this.#localPos[0] = value[0];\n this.#localPos[1] = value[1];\n this.#localPos[2] = value[2];\n this.#gotLocalPos = true;\n } else {\n this.#gotLocalPos = false;\n }\n }\n\n /**\n * Picked World-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get worldPos(): FloatArrayParam | null {\n return this.#viewObject && this.#gotWorldPos ? this.#worldPos : null;\n }\n\n /**\n * @private\n */\n set worldPos(value: any) {\n if (value) {\n this.#worldPos[0] = value[0];\n this.#worldPos[1] = value[1];\n this.#worldPos[2] = value[2];\n this.#gotWorldPos = true;\n } else {\n this.#gotWorldPos = false;\n }\n }\n\n /**\n * Picked View-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get viewPos(): FloatArrayParam | null {\n return this.#viewObject && this.#gotViewPos ? this.#viewPos : null;\n }\n\n /**\n * @private\n */\n set viewPos(value: any) {\n if (value) {\n this.#viewPos[0] = value[0];\n this.#viewPos[1] = value[1];\n this.#viewPos[2] = value[2];\n this.#gotViewPos = true;\n } else {\n this.#gotViewPos = false;\n }\n }\n\n /**\n * Normal vector at picked position on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get worldNormal(): FloatArrayParam | null {\n return this.#viewObject !== null&& this.#gotWorldNormal ? this.#worldNormal : null;\n }\n\n /**\n * @private\n */\n set worldNormal(value: any) {\n if (value) {\n this.#worldNormal[0] = value[0];\n this.#worldNormal[1] = value[1];\n this.#worldNormal[2] = value[2];\n this.#gotWorldNormal = true;\n } else {\n this.#gotWorldNormal = false;\n }\n }\n\n /**\n * UV coordinates at picked position on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get uv(): FloatArrayParam | null {\n return this.#viewObject !== null&& this.#gotUV ? this.#uv : null;\n }\n\n /**\n * @private\n */\n set uv(value: any) {\n if (value) {\n this.#uv[0] = value[0];\n this.#uv[1] = value[1];\n this.#gotUV = true;\n } else {\n this.#gotUV = false;\n }\n }\n\n /**\n * Returns `true` if picking has snapped to the canvas coordinates of the nearest vertex.\n * When this is `true`, then {@link PickResult.snappedCanvasPos} will contain the canvas coordinates of the nearest position on teh nearest vertex.\n */\n get snappedToVertex(): boolean {\n return this.#viewObject !== null&& this.#snappedToVertex;\n }\n\n /**\n * @private\n */\n set snappedToVertex(value: boolean) {\n this.#snappedToVertex = value;\n }\n\n /**\n * Returns `true` if picking has snapped to the canvas coordinates of the nearest edge.\n * When this is `true`, then {@link PickResult.snappedCanvasPos} will contain the canvas coordinates of the nearest position on teh nearest edge.\n */\n get snappedToEdge(): boolean {\n return this.#viewObject !== null&& this.#snappedToEdge;\n }\n\n set snappedToEdge(value: boolean) {\n this.#snappedToEdge = value;\n }\n\n /**\n * Snapped canvas coordinates when picking with a 2D pointer.\n * This has a value when {@link PickResult.snappedToEdge} or {@link PickResult.snappedToVertex} is `true`, otherwise will be `null`.\n */\n get snappedCanvasPos(): Int16Array | undefined {\n return this.#gotSnappedCanvasPos ? this.#snappedCanvasPos : undefined;\n }\n\n /**\n * @private\n */\n set snappedCanvasPos(value: FloatArrayParam | Int16Array | undefined) {\n if (value) {\n this.#snappedCanvasPos[0] = value[0];\n this.#snappedCanvasPos[1] = value[1];\n this.#gotSnappedCanvasPos = true;\n } else {\n this.#gotSnappedCanvasPos = false;\n }\n }\n\n /**\n * @private\n */\n reset() {\n this.#viewObject = null;\n this.#gotCanvasPos = false;\n this.#gotSnappedCanvasPos = false;\n this.#gotOrigin = false;\n this.#gotDirection = false;\n this.#gotIndices = false;\n this.#gotLocalPos = false;\n this.#gotWorldPos = false;\n this.#gotViewPos = false;\n this.#gotWorldNormal = false;\n this.#gotUV = false;\n this.#snappedToVertex = false;\n this.#snappedToEdge = false;\n }\n}\n\nexport {PickResult};", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fwebgl.svg)](https://badge.fury.io/js/%40xeokit%2Fwebgl)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/webglrenderer/badge)](https://www.jsdelivr.com/package/npm/@xeokit/webglrenderer)\n *\n * \n *\n * # xeokit WebGL2 Renderer\n *\n * ---\n *\n * ### *Configures a xeokit Viewer to use WebGL2 for graphics*\n *\n * ---\n *\n * * Plug a {@link WebGLRenderer} into a {@link @xeokit/viewer!Viewer | Viewer} to use WebGL for model storage and rendering\n * * Compact texture-based model representation\n * * Fast full-precision rendering of large models\n * * Physically-based materials\n * * Multi-canvas\n * * Basis-compressed textures\n * * Compressed geometry\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/webglrenderer\n * ````\n *\n * ## Usage\n *\n * Configuring a {@link @xeokit/viewer!Viewer | Viewer} with a {@link WebGLRenderer} to use the browser's WebGL\n * graphics API for storing and rendering models:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * scene: new Scene(),\n * renderers: new WebGLRenderer({ // Mandatory\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // <------ Path to BasisU transcoder module\n * })\n * })\n * });\n *\n * //...\n * ````\n *\n * @module @xeokit/webglrenderer\n */\nexport {WebGLRenderer} from \"./WebGLRenderer\";\nexport {createSceneModelStreamParams} from \"./createSceneModelStreamParams\";\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fktx2.svg)](https://badge.fury.io/js/%40xeokit%2Fktx2)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/ktx2/badge)](https://www.jsdelivr.com/package/npm/@xeokit/ktx2)\n *\n * \n *\n * # xeokit KTX2 SceneTexture Transcoder\n *\n * ---\n *\n * ### *Enables the xeokit Viewer to load KTX2-compressed textures*\n *\n * ---\n *\n * * Provides {@link KTX2TextureTranscoder}\n * * Configure a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} that has a {@link KTX2TextureTranscoder}\n * * Then a Viewer is able to view a {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} that has KTX2-encoded compressed textures\n * * Uses the [Basis Universal GPU SceneTexture Codec](https://github.com/BinomialLLC/basis_universal) to\n * transcode [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures.\n * * Loads the Basis Codec from [CDN](https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/) by default, but can\n * also be configured to load the Codec from local files.\n * * We also bundle the Basis Codec with the xeokit-viewer npm package, and in the [repository](https://github.com/xeokit/sdk/tree/master/dist/basis).\n *\n * ### What is KTX2?\n *\n * A [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) file stores GPU texture data in the Khronos SceneTexture 2.0 (KTX2) container format. It contains image data for\n * a texture asset compressed with Basis Universal (BasisU) supercompression that can be transcoded to different formats\n * depending on the support provided by the target devices. [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) provides a lightweight format for distributing texture\n * assets to GPUs. Due to BasisU compression, [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) files can store any image format supported by GPUs.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/ktx2\n * ````\n *\n * ## Usage\n *\n * ### Loading an DTX file containing [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures into a Viewer\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}. Then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer, and use {@link loadDTX} to\n * load a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file with KTX2-compressed textures into the SceneModel. For each [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture in the file, the\n * KTX2TextureTranscoder will transparently transcode the [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myCanvas1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const sceneModel= myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModelWithTextures.dtx\") // <<-- [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file with KTX2 textures\n * .then(response => {\n * if (response.ok) {\n * loadDTX(response.arrayBuffer(), sceneModel);\n * sceneModel.build();\n * }\n * });\n * ````\n *\n * ### Loading KTX2 texture files into a Viewer\n *\n * As in the previous example, create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder}, then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer.\n *\n * This time, we'll build the SceneModel ourselves, using its builder methods. When we\n * call builder method {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with a path to a KTX2-compressed texture file, the\n * KTX2TextureTranscoder will transparently transcode that KTX2 data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const viewerModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * viewerModel.createTexture({\n * id: \"myColorTexture\",\n * src: \"sample_uastc_zstd.ktx2\" // <<----- KTX2 texture asset\n * });\n *\n * viewerModel.createTexture({\n * id: \"myMetallicRoughnessTexture\",\n * src: \"crosshatchAlphaMap.jpg\" // <<----- JPEG texture asset\n * });\n *\n * viewerModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\",\n * metallicRoughnessTextureId: \"myMetallicRoughnessTexture\"\n * });\n *\n * viewerModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [1, 1, 1, ...],\n * normals: [0, 0, 1, 0, ...],\n * uv: [1, 0, 0, ...],\n * indices: [0, 1, 2, ...],\n * });\n *\n * viewerModel.createLayerMesh({\n * id: \"myMesh\",\n * textureSetId: \"myTextureSet\",\n * geometryId: \"myGeometry\"\n * });\n *\n * viewerModel.createObject({\n * id: \"myObject\",\n * meshIds: [\"myMesh\"]\n * });\n *\n * viewerModel.build();\n * ````\n *\n * ### Loading [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture ArrayBuffers into a Viewer\n *\n * As in the previous two examples, create a {@link @xeokit/viewer!Viewer | Viewer} that has a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder}, and then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer.\n *\n * Once more, build the SceneModel using its builder methods. This time, call builder method\n * {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with an ArrayBuffer containing the contents of a KTX2-compressed texture\n * file. As before, the KTX2TextureTranscoder will transparently transcode that [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const viewerModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"sample_uastc_zstd.ktx2\") // // <<----- KTX2 texture asset\n * .then(response => {\n * if (response.ok) {\n *\n * viewerModel.createTexture({\n * id: \"myColorTexture\",\n * buffers: [arrayBuffer] // <<----- KTX2 texture asset\n * });\n *\n * viewerModel.createTexture({\n * id: \"myMetallicRoughnessTexture\",\n * src: \"../assets/textures/alpha/crosshatchAlphaMap.jpg\" // <<----- JPEG texture asset\n * });\n *\n * viewerModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\",\n * metallicRoughnessTextureId: \"myMetallicRoughnessTexture\"\n * });\n *\n * viewerModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [1, 1, 1, ...],\n * normals: [0, 0, 1, 0, ...],\n * uv: [1, 0, 0, ...],\n * indices: [0, 1, 2, ...],\n * });\n *\n * viewerModel.createLayerMesh({\n * id: \"myMesh\",\n * textureSetId: \"myTextureSet\",\n * geometryId: \"myGeometry\"\n * });\n *\n * viewerModel.createObject({\n * id: \"myObject\",\n * meshIds: [\"myMesh\"]\n * });\n *\n * viewerModel.build();\n * }\n * });\n * ````\n *\n * @module @xeokit/ktx2\n */\nexport * from \"./KTX2TextureTranscoder\";\n", "import {\n LinearEncoding,\n LinearFilter,\n LinearMipmapLinearFilter,\n RGB_ETC1_Format,\n RGB_ETC2_Format,\n RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format,\n RGBA_ASTC_4x4_Format,\n RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT5_Format,\n RGBAFormat,\n sRGBEncoding\n} from \"@xeokit/constants\";\nimport {FileLoader, WorkerPool} from \"@xeokit/utils\";\nimport type {Capabilities, TextureCompressedParams, TextureTranscoder} from \"@xeokit/core\";\n\nconst KTX2TransferSRGB = 2;\nconst KTX2_ALPHA_PREMULTIPLIED = 1;\n\nlet activeTranscoders = 0;\n\nconst BasisFormat = {\n ETC1S: 0,\n UASTC_4x4: 1\n};\n\nconst TranscoderFormat = {\n ETC1: 0,\n ETC2: 1,\n BC1: 2,\n BC3: 3,\n BC4: 4,\n BC5: 5,\n BC7_M6_OPAQUE_ONLY: 6,\n BC7_M5: 7,\n PVRTC1_4_RGB: 8,\n PVRTC1_4_RGBA: 9,\n ASTC_4x4: 10,\n ATC_RGB: 11,\n ATC_RGBA_INTERPOLATED_ALPHA: 12,\n RGBA32: 13,\n RGB565: 14,\n BGR565: 15,\n RGBA4444: 16\n};\n\nconst EngineFormat = {\n RGBAFormat: RGBAFormat,\n RGBA_ASTC_4x4_Format: RGBA_ASTC_4x4_Format,\n RGBA_BPTC_Format: RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format: RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_4BPPV1_Format: RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT5_Format: RGBA_S3TC_DXT5_Format,\n RGB_ETC1_Format: RGB_ETC1_Format,\n RGB_ETC2_Format: RGB_ETC2_Format,\n RGB_PVRTC_4BPPV1_Format: RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format: RGB_S3TC_DXT1_Format\n};\n\n/**\n * [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture decompression strategy.\n *\n * See {@link @xeokit/ktx2} for usage.\n */\nexport class KTX2TextureTranscoder implements TextureTranscoder {\n\n #transcoderPath: string;\n #transcoderBinary: any;\n #transcoderPending: null | Promise;\n #workerPool: WorkerPool;\n #workerSourceURL: string;\n #workerConfig: null | { astcSupported: any; etc1Supported: any; pvrtcSupported: any; etc2Supported: any; dxtSupported: any; bptcSupported: any };\n #supportedFileTypes: string[];\n #withCredentials: boolean;\n\n /**\n * Creates a new KTX2TextureTranscoder.\n *\n * @param {String} [params.transcoderPath=\"https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/\"] Path to the Basis\n * transcoder module that internally does the heavy lifting for our KTX2TextureTranscoder. If we omit this configuration,\n * then our KTX2TextureTranscoder will load it from ````https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/```` by\n * default. Therefore, make sure your application is connected to the internet if you wish to use the default transcoder path.\n * @param {Number} [params.workerLimit] The maximum number of Workers to use for transcoding.\n */\n constructor(params: { transcoderPath?: string, workerLimit?: number }) {\n\n this.#transcoderPath = params.transcoderPath || \"https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/\";\n this.#transcoderBinary = null;\n this.#transcoderPending = null;\n this.#workerPool = new WorkerPool();\n this.#workerSourceURL = '';\n\n if (params.workerLimit) {\n this.#workerPool.setWorkerLimit(params.workerLimit);\n }\n\n this.#workerConfig = null;\n this.#withCredentials = false;\n this.#supportedFileTypes = [\"dtx2\"];\n }\n\n /**\n * Initializes this transcoder.\n *\n * @param capabilities A set of flags indicating the capabilities of this TextureTranscoder.\n */\n init(capabilities: Capabilities) {\n this.#workerConfig = {\n astcSupported: capabilities.astcSupported,\n etc1Supported: capabilities.etc1Supported,\n etc2Supported: capabilities.etc2Supported,\n dxtSupported: capabilities.dxtSupported,\n bptcSupported: capabilities.bptcSupported,\n pvrtcSupported: capabilities.pvrtcSupported\n };\n }\n\n /**\n * Transcodes texture data from transcoded buffers.\n *\n * @param {ArrayBuffer[]} buffers Transcoded input texture data. Given as an array of buffers so that we can support multi-image textures, such as cube maps.\n * @param {*} config Transcoding options.\n * @returns {Promise} Transcoded output texture data.\n */\n transcode(buffers: ArrayBuffer[], config = {}): Promise {\n return new Promise((resolve, reject) => {\n const taskConfig = config;\n this.#initTranscoder().then(() => {\n return this.#workerPool.postMessage({\n type: 'transcode',\n buffers,\n taskConfig: taskConfig\n }, buffers);\n }).then((e) => {\n // @ts-ignore\n const transcodeResult = e.data;\n const {mipmaps, width, height, format, type, error, dfdTransferFn, dfdFlags} = transcodeResult;\n if (type === 'error') {\n return reject(error);\n }\n resolve({\n mipmaps,\n props: {\n format,\n minFilter: mipmaps.length === 1 ? LinearFilter : LinearMipmapLinearFilter,\n magFilter: mipmaps.length === 1 ? LinearFilter : LinearMipmapLinearFilter,\n encoding: dfdTransferFn === KTX2TransferSRGB ? sRGBEncoding : LinearEncoding,\n premultiplyAlpha: !!(dfdFlags & KTX2_ALPHA_PREMULTIPLIED)\n }\n });\n });\n });\n }\n\n /**\n * Destroys this KTX2TextureTranscoder\n */\n destroy() {\n URL.revokeObjectURL(this.#workerSourceURL);\n this.#workerPool.destroy();\n activeTranscoders--;\n }\n\n #initTranscoder() {\n if (!this.#transcoderPending) {\n const jsLoader = new FileLoader();\n jsLoader.setPath(this.#transcoderPath);\n jsLoader.setWithCredentials(this.#withCredentials);\n // @ts-ignore\n const jsContent = jsLoader.loadAsync('basis_transcoder.js');\n const binaryLoader = new FileLoader();\n binaryLoader.setPath(this.#transcoderPath);\n binaryLoader.setResponseType('arraybuffer');\n binaryLoader.setWithCredentials(this.#withCredentials);\n // @ts-ignore\n const binaryContent = binaryLoader.loadAsync('basis_transcoder.wasm');\n this.#transcoderPending = Promise.all([jsContent, binaryContent])\n .then(([jsContent, binaryContent]) => {\n const fn = BasisWorker.toString();\n const body = [\n '/* constants */',\n 'let _EngineFormat = ' + JSON.stringify(EngineFormat),\n 'let _TranscoderFormat = ' + JSON.stringify(TranscoderFormat),\n 'let _BasisFormat = ' + JSON.stringify(BasisFormat),\n '/* basis_transcoder.js */',\n jsContent,\n '/* worker */',\n fn.substring(fn.indexOf('{') + 1, fn.lastIndexOf('}'))\n ].join('\\n');\n this.#workerSourceURL = URL.createObjectURL(new Blob([body]));\n this.#transcoderBinary = binaryContent;\n this.#workerPool.setWorkerCreator(() => {\n const worker = new Worker(this.#workerSourceURL);\n const transcoderBinary = this.#transcoderBinary.slice(0);\n worker.postMessage({\n type: 'init',\n config: this.#workerConfig,\n transcoderBinary\n }, [transcoderBinary]);\n return worker;\n });\n });\n if (activeTranscoders > 0) {\n console.warn('KTX2TextureTranscoder: Multiple active KTX2TextureTranscoder may cause performance issues.' + ' Use a single KTX2TextureTranscoder instance, or call .dispose() on old instances.');\n }\n activeTranscoders++;\n }\n return this.#transcoderPending;\n }\n}\n\n\nconst BasisWorker = function () {\n\n let config: { [x: string]: any; };\n let transcoderPending: Promise;\n let BasisModule: any;\n\n // @ts-ignore\n const EngineFormat = _EngineFormat; // eslint-disable-line no-undef\n // @ts-ignore\n const TranscoderFormat = _TranscoderFormat; // eslint-disable-line no-undef\n // @ts-ignore\n const BasisFormat = _BasisFormat; // eslint-disable-line no-undef\n\n self.addEventListener('message', function (e) {\n const message = e.data;\n switch (message.type) {\n case 'init':\n config = message.config;\n init(message.transcoderBinary);\n break;\n case 'transcode':\n transcoderPending.then(() => {\n try {\n const {\n width,\n height,\n hasAlpha,\n mipmaps,\n format,\n dfdTransferFn,\n dfdFlags\n } = transcode(message.buffers[0]);\n const buffers = [];\n for (let i = 0; i < mipmaps.length; ++i) {\n buffers.push(mipmaps[i].data.buffer);\n }\n self.postMessage({\n type: 'transcode',\n id: message.id,\n width,\n height,\n hasAlpha,\n mipmaps,\n format,\n dfdTransferFn,\n dfdFlags\n // @ts-ignore\n }, buffers);\n } catch (error) {\n console.error(`[BasisWorker]: ${error}`);\n // @ts-ignore\n self.postMessage({type: 'error', id: message.id, error: error.message});\n }\n });\n break;\n }\n });\n\n function init(wasmBinary: any) {\n transcoderPending = new Promise(resolve => {\n BasisModule = {\n wasmBinary,\n onRuntimeInitialized: resolve\n };\n // @ts-ignore\n BASIS(BasisModule); // eslint-disable-line no-undef\n }).then(() => {\n BasisModule.initializeBasis();\n if (BasisModule.KTX2File === undefined) {\n console.warn('KTX2TextureTranscoder: Please update Basis Universal transcoder.');\n }\n });\n }\n\n function transcode(buffer: Iterable) {\n const ktx2File = new BasisModule.KTX2File(new Uint8Array(buffer));\n\n function cleanup() {\n ktx2File.close();\n ktx2File.delete();\n }\n\n if (!ktx2File.isValid()) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: Invalid or unsupported .ktx2 file');\n }\n const basisFormat = ktx2File.isUASTC() ? BasisFormat.UASTC_4x4 : BasisFormat.ETC1S;\n const width = ktx2File.getWidth();\n const height = ktx2File.getHeight();\n const levels = ktx2File.getLevels();\n const hasAlpha = ktx2File.getHasAlpha();\n const dfdTransferFn = ktx2File.getDFDTransferFunc();\n const dfdFlags = ktx2File.getDFDFlags();\n const {transcoderFormat, engineFormat} = getTranscoderFormat(basisFormat, width, height, hasAlpha);\n if (!width || !height || !levels) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: Invalid texture');\n }\n if (!ktx2File.startTranscoding()) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: .startTranscoding failed');\n }\n const mipmaps = [];\n for (let mip = 0; mip < levels; mip++) {\n const levelInfo = ktx2File.getImageLevelInfo(mip, 0, 0);\n const mipWidth = levelInfo.origWidth;\n const mipHeight = levelInfo.origHeight;\n const dst = new Uint8Array(ktx2File.getImageTranscodedSizeInBytes(mip, 0, 0, transcoderFormat));\n const status = ktx2File.transcodeImage(dst, mip, 0, 0, transcoderFormat, 0, -1, -1);\n if (!status) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: .transcodeImage failed.');\n }\n mipmaps.push({data: dst, width: mipWidth, height: mipHeight});\n }\n cleanup();\n return {width, height, hasAlpha, mipmaps, format: engineFormat, dfdTransferFn, dfdFlags};\n }\n\n // Optimal choice of a transcoder target format depends on the Basis format (ETC1S or UASTC),\n // device capabilities, and texture dimensions. The list below ranks the formats separately\n // for ETC1S and UASTC.\n //\n // In some cases, transcoding UASTC to RGBA32 might be preferred for higher quality (at\n // significant memory cost) compared to ETC1/2, BC1/3, and PVRTC. The transcoder currently\n // chooses RGBA32 only as a last resort and does not expose that option to the caller.\n\n const FORMAT_OPTIONS = [{\n if: 'astcSupported',\n basisFormat: [BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ASTC_4x4, TranscoderFormat.ASTC_4x4],\n engineFormat: [EngineFormat.RGBA_ASTC_4x4_Format, EngineFormat.RGBA_ASTC_4x4_Format],\n priorityETC1S: Infinity,\n priorityUASTC: 1,\n needsPowerOfTwo: false\n }, {\n if: 'bptcSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.BC7_M5, TranscoderFormat.BC7_M5],\n engineFormat: [EngineFormat.RGBA_BPTC_Format, EngineFormat.RGBA_BPTC_Format],\n priorityETC1S: 3,\n priorityUASTC: 2,\n needsPowerOfTwo: false\n }, {\n if: 'dxtSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.BC1, TranscoderFormat.BC3],\n engineFormat: [EngineFormat.RGB_S3TC_DXT1_Format, EngineFormat.RGBA_S3TC_DXT5_Format],\n priorityETC1S: 4,\n priorityUASTC: 5,\n needsPowerOfTwo: false\n }, {\n if: 'etc2Supported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ETC1, TranscoderFormat.ETC2],\n engineFormat: [EngineFormat.RGB_ETC2_Format, EngineFormat.RGBA_ETC2_EAC_Format],\n priorityETC1S: 1,\n priorityUASTC: 3,\n needsPowerOfTwo: false\n }, {\n if: 'etc1Supported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ETC1],\n engineFormat: [EngineFormat.RGB_ETC1_Format],\n priorityETC1S: 2,\n priorityUASTC: 4,\n needsPowerOfTwo: false\n }, {\n if: 'pvrtcSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.PVRTC1_4_RGB, TranscoderFormat.PVRTC1_4_RGBA],\n engineFormat: [EngineFormat.RGB_PVRTC_4BPPV1_Format, EngineFormat.RGBA_PVRTC_4BPPV1_Format],\n priorityETC1S: 5,\n priorityUASTC: 6,\n needsPowerOfTwo: true\n }];\n const ETC1S_OPTIONS = FORMAT_OPTIONS.sort(function (a, b) {\n return a.priorityETC1S - b.priorityETC1S;\n });\n const UASTC_OPTIONS = FORMAT_OPTIONS.sort(function (a, b) {\n return a.priorityUASTC - b.priorityUASTC;\n });\n\n function getTranscoderFormat(basisFormat: number, width: number, height: number, hasAlpha: any) {\n let transcoderFormat;\n let engineFormat;\n const options = basisFormat === BasisFormat.ETC1S ? ETC1S_OPTIONS : UASTC_OPTIONS;\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n if (!config[opt.if]) continue;\n if (!opt.basisFormat.includes(basisFormat)) continue;\n if (hasAlpha && opt.transcoderFormat.length < 2) continue;\n if (opt.needsPowerOfTwo && !(isPowerOfTwo(width) && isPowerOfTwo(height))) continue;\n transcoderFormat = opt.transcoderFormat[hasAlpha ? 1 : 0];\n engineFormat = opt.engineFormat[hasAlpha ? 1 : 0];\n return {\n transcoderFormat,\n engineFormat\n };\n }\n console.warn('KTX2TextureTranscoder: No suitable compressed texture format found. Decoding to RGBA32.');\n transcoderFormat = TranscoderFormat.RGBA32;\n engineFormat = EngineFormat.RGBAFormat;\n return {\n transcoderFormat,\n engineFormat\n };\n }\n\n function isPowerOfTwo(value: number) {\n if (value <= 2) return true;\n return (value & value - 1) === 0 && value !== 0;\n }\n};\n\n", "/**\n * Represents a WebGL ArrayBuffer.\n */\nexport class WebGLArrayBuf {\n\n /**\n * WebGL2 rendering context.\n */\n gl: WebGL2RenderingContext;\n\n /**\n * The ArrayBuffer's item type.\n */\n itemType: GLenum;\n\n /**\n * Byte size of each item.\n */\n itemByteSize: number;\n\n /**\n * The ArrayBuffer type.\n */\n type: any;\n\n /**\n * Allocated yet?\n */\n allocated: boolean;\n\n /**\n * A GLenum specifying the intended usage pattern of the data store for optimization purposes. Possible values:\n *\n * * gl.STATIC_DRAW : The contents are intended to be specified once by the application, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.DYNAMIC_DRAW : The contents are intended to be respecified repeatedly by the application, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.STREAM_DRAW : The contents are intended to be specified once by the application, and used at most a few times as the source for WebGL drawing and image specification commands.\n * * gl.STATIC_READ : The contents are intended to be specified once by reading data from WebGL, and queried many times by the application.\n * * gl.DYNAMIC_READ : The contents are intended to be respecified repeatedly by reading data from WebGL, and queried many times by the application.\n * * gl.STREAM_READ : The contents are intended to be specified once by reading data from WebGL, and queried at most a few times by the application\n * * gl.STATIC_COPY : The contents are intended to be specified once by reading data from WebGL, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.DYNAMIC_COPY : The contents are intended to be respecified repeatedly by reading data from WebGL, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.STREAM_COPY : The contents are intended to be specified once by reading data from WebGL, and used at most a few times as the source for WebGL drawing and image specification commands.\n */\n usage: GLenum;\n\n /**\n * The ArrayBuffer type.\n */\n length: GLuint;\n\n /**\n *\n */\n dataLength: number;\n\n /**\n * Number of items in the ArrayBuffer.\n */\n numItems: number;\n\n /**\n * Size of each item.\n */\n itemSize: number;\n\n /**\n * True when ArrayBuffer values are normalized.\n */\n normalized: boolean;\n\n /**\n * The ArrayBuffer stride.\n */\n stride: number;\n\n /**\n *\n */\n offset: number;\n\n /**\n * Hand to a WebGLBuffer.\n */\n handle: WebGLBuffer;\n\n /**\n * Creates a WebGL ArrayBuffer.\n */\n constructor(\n gl: WebGL2RenderingContext,\n type: any,\n data: any,\n numItems: number,\n itemSize: number,\n usage: GLenum,\n normalized?: boolean,\n stride?: number,\n offset?: number) {\n\n this.gl = gl;\n this.type = type;\n this.allocated = false;\n\n switch (data.constructor) {\n\n case Uint8Array:\n this.itemType = gl.UNSIGNED_BYTE;\n this.itemByteSize = 1;\n break;\n\n case Int8Array:\n this.itemType = gl.BYTE;\n this.itemByteSize = 1;\n break;\n\n case Uint16Array:\n this.itemType = gl.UNSIGNED_SHORT;\n this.itemByteSize = 2;\n break;\n\n case Int16Array:\n this.itemType = gl.SHORT;\n this.itemByteSize = 2;\n break;\n\n case Uint32Array:\n this.itemType = gl.UNSIGNED_INT;\n this.itemByteSize = 4;\n break;\n\n case Int32Array:\n this.itemType = gl.INT;\n this.itemByteSize = 4;\n break;\n\n default:\n this.itemType = gl.FLOAT;\n this.itemByteSize = 4;\n }\n\n this.usage = usage;\n this.length = 0;\n this.dataLength = numItems;\n this.numItems = 0;\n this.itemSize = itemSize;\n this.normalized = !!normalized;\n this.stride = stride || 0;\n this.offset = offset || 0;\n\n this._allocate(data);\n }\n\n _allocate(data: any) {\n this.allocated = false;\n // @ts-ignore\n this.handle = this.gl.createBuffer();\n if (!this.handle) {\n throw new Error(\"Failed to allocate WebGL ArrayBuffer\");\n }\n if (this.handle) {\n this.gl.bindBuffer(this.type, this.handle);\n this.gl.bufferData(this.type, data.length > this.dataLength ? data.slice(0, this.dataLength) : data, this.usage);\n this.gl.bindBuffer(this.type, null);\n this.length = data.length;\n this.numItems = this.length / this.itemSize;\n this.allocated = true;\n }\n }\n\n /**\n * Updates the contents of this ArrayBuffer.\n * @param data\n * @param offset\n */\n setData(data: any, offset: number) {\n if (!this.allocated) {\n return;\n }\n if (data.length + (offset || 0) > this.length) { // Needs reallocation\n this.destroy();\n this._allocate(data);\n } else { // No reallocation needed\n this.gl.bindBuffer(this.type, this.handle);\n if (offset || offset === 0) {\n this.gl.bufferSubData(this.type, offset * this.itemByteSize, data);\n } else {\n this.gl.bufferData(this.type, data, this.usage);\n }\n this.gl.bindBuffer(this.type, null);\n }\n }\n\n /**\n * Binds this ArrayBuffer to the WebGL rendering context.\n */\n bind() {\n if (!this.allocated) {\n return;\n }\n this.gl.bindBuffer(this.type, this.handle);\n }\n\n /**\n * Unbinds this ArrayBuffer from the WebGL rendering context.\n */\n unbind() {\n if (!this.allocated) {\n return;\n }\n this.gl.bindBuffer(this.type, null);\n }\n\n /**\n * Destroys this ArrayBuffer.\n */\n destroy() {\n if (!this.allocated) {\n return;\n }\n this.gl.deleteBuffer(this.handle);\n this.allocated = false;\n }\n}\n", "import type {WebGLArrayBuf} from \"./WebGLArrayBuf\";\n\n/**\n * Represents a WebGL vertex attribute.\n */\nexport class WebGLAttribute {\n gl: WebGL2RenderingContext;\n location: number;\n\n /**\n * Creates a new vertex attribute.\n * @param gl\n * @param location\n */\n constructor(gl: WebGL2RenderingContext, location: number) {\n this.gl = gl;\n this.location = location;\n }\n\n /**\n * Binds an array buffer to this vertex attribute.\n * @param arrayBuf\n */\n bindArrayBuffer(arrayBuf: WebGLArrayBuf) {\n if (!arrayBuf) {\n return;\n }\n arrayBuf.bind();\n this.gl.enableVertexAttribArray(this.location);\n this.gl.vertexAttribPointer(this.location, arrayBuf.itemSize, arrayBuf.itemType, arrayBuf.normalized, arrayBuf.stride, arrayBuf.offset);\n }\n}\n", "/**\n * Represents a WebGL2 shader.\n */\nexport class WebGLShader {\n\n /**\n * Compilation errors, if any.\n */\n errors: string[];\n\n /**\n * True when this shader was successfully allocated.\n */\n allocated: boolean;\n\n /**\n * True when this shader was successfully compiled.\n */\n compiled: boolean;\n\n /**\n * Handle to GPU-resident WebGL2 shader.\n */\n handle: WebGLShader;\n\n /**\n * Creates a new shader.\n * @param gl\n * @param type\n * @param source\n */\n constructor(gl: WebGL2RenderingContext, type: number, source: string) {\n this.allocated = false;\n this.compiled = false;\n // @ts-ignore\n this.handle = gl.createShader(type);\n if (!this.handle) {\n this.errors = [\n \"Failed to allocate\"\n ];\n return;\n }\n this.allocated = true;\n gl.shaderSource(this.handle, source);\n gl.compileShader(this.handle);\n this.compiled = gl.getShaderParameter(this.handle, gl.COMPILE_STATUS);\n if (!this.compiled) {\n if (!gl.isContextLost()) { // Handled explicitly elsewhere, so won't re-handle here\n const lines = source.split(\"\\n\");\n const numberedLines = [];\n for (let i = 0; i < lines.length; i++) {\n numberedLines.push((i + 1) + \": \" + lines[i] + \"\\n\");\n }\n this.errors = [];\n this.errors.push(\"\");\n this.errors.push(gl.getShaderInfoLog(this.handle) || \"\");\n this.errors = this.errors.concat(numberedLines.join(\"\"));\n }\n }\n }\n\n /**\n * Destroys this shader.\n */\n destroy() {\n\n }\n}", "import type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\n/**\n * Represents a WebGL2 sampler.\n */\nexport class WebGLSampler {\n\n private readonly location: WebGLUniformLocation;\n private readonly gl: WebGL2RenderingContext;\n\n /**\n * Creates a new sampler.\n * @param gl\n * @param location\n */\n constructor(gl: WebGL2RenderingContext, location: WebGLUniformLocation) {\n this.gl = gl;\n this.location = location;\n }\n\n /**\n * Binds a texture to this sampler.\n * @param texture\n * @param unit\n */\n bindTexture(texture: WebGLAbstractTexture, unit: number) {\n if (texture.bind(unit)) {\n this.gl.uniform1i(this.location, unit);\n return true;\n }\n return false;\n }\n}\n", "import {Map} from \"@xeokit/utils\";\n\nimport {WebGLShader} from \"./WebGLShader\";\nimport {WebGLSampler} from \"./WebGLSampler\";\nimport {WebGLAttribute} from \"./WebGLAttribute\";\nimport type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\nconst ids = new Map({}, \"\");\n\n/**\n * Represents a WebGL2 program.\n */\nexport class WebGLProgram {\n\n /**\n * Unique ID of this program.\n */\n id: number;\n\n /**\n * The vertex shader.\n */\n vertexShader: WebGLShader;\n\n /**\n * The fragment shader.\n */\n fragmentShader: WebGLShader;\n\n /**\n * Map of all attributes in this program.\n */\n attributes: { [key: string]: WebGLAttribute };\n\n /**\n * Map of all samplers in this program.\n */\n samplers: { [key: string]: WebGLSampler };\n\n /**\n * Map of all uniforms in this program.\n */\n uniforms: { [key: string]: WebGLUniformLocation };\n\n /**\n * List of compilation errors for this program, if any.\n */\n errors: string[];\n\n /**\n * Flag set true when program has been validated.\n */\n validated: boolean;\n\n /**\n * Flag set true when this program has been successfully linked.\n */\n linked: boolean;\n\n /**\n * Flag set true when this program has been successfully conpiled.\n */\n compiled: boolean;\n\n /**\n * Flag set true when this program has been successfully allocated.\n */\n allocated: boolean;\n\n /**\n * The WebGL2 rendering context.\n */\n gl: WebGL2RenderingContext;\n\n /**\n * The source code from which the shaders are built.\n */\n source: any;\n\n /**\n * Handle to the WebGL program itself, which resides on the GPU.\n */\n handle: WebGLProgram;\n\n /**\n * Creates a new program.\n * @param gl\n * @param shaderSource\n */\n constructor(gl: WebGL2RenderingContext,\n shaderSource: {\n vertex: string,\n fragment: string\n }) {\n\n // console.log(\"WebGLProgram constructor\")\n // console.log(\"-----------------------------------------------------\")\n // console.log(\"\\nshaderSource.vertex:\\n\");\n // console.log(shaderSource.vertex);\n // console.log(\"\\nshaderSource.fragment:\\n\");\n // console.log(shaderSource.fragment);\n // console.log(\"-----------------------------------------------------\")\n\n // @ts-ignore\n this.id = ids.addItem({});\n this.source = shaderSource;\n this.gl = gl;\n this.allocated = false;\n this.compiled = false;\n this.linked = false;\n this.validated = false;\n this.errors = undefined;\n this.uniforms = {};\n this.samplers = {};\n this.attributes = {};\n\n this.vertexShader = new WebGLShader(gl, gl.VERTEX_SHADER, this.source.vertex);\n this.fragmentShader = new WebGLShader(gl, gl.FRAGMENT_SHADER, this.source.fragment);\n\n if (!this.vertexShader.allocated) {\n this.errors = [\"Vertex shader failed to allocate\"].concat(this.vertexShader.errors);\n logErrors(this.errors);\n return;\n }\n\n if (!this.fragmentShader.allocated) {\n this.errors = [\"Fragment shader failed to allocate\"].concat(this.fragmentShader.errors);\n logErrors(this.errors);\n return;\n }\n\n this.allocated = true;\n\n if (!this.vertexShader.compiled) {\n this.errors = [\"Vertex shader failed to compile\"].concat(this.vertexShader.errors);\n logErrors(this.errors);\n return;\n }\n\n if (!this.fragmentShader.compiled) {\n this.errors = [\"Fragment shader failed to compile\"].concat(this.fragmentShader.errors);\n logErrors(this.errors);\n return;\n }\n\n this.compiled = true;\n // @ts-ignore\n this.handle = gl.createProgram();\n\n if (!this.handle) {\n this.errors = [\"Failed to allocate program\"];\n return;\n }\n\n gl.attachShader(this.handle, this.vertexShader.handle);\n gl.attachShader(this.handle, this.fragmentShader.handle);\n gl.linkProgram(this.handle);\n\n this.linked = gl.getProgramParameter(this.handle, gl.LINK_STATUS);\n\n // HACK: Disable validation temporarily: https://github.com/xeolabs/xeokit-sdk/issues/5\n // Perhaps we should defer validation until render-time, when the program has values set for all inputs?\n\n this.validated = true;\n\n if (!this.linked || !this.validated) {\n this.errors = [];\n this.errors.push(\"\");\n // @ts-ignore\n this.errors.push(gl.getProgramInfoLog(this.handle));\n this.errors.push(\"\\nVertex shader:\\n\");\n this.errors = this.errors.concat(this.source.vertex);\n this.errors.push(\"\\nFragment shader:\\n\");\n this.errors = this.errors.concat(this.source.fragment);\n logErrors(this.errors);\n return;\n }\n\n const numUniforms = gl.getProgramParameter(this.handle, gl.ACTIVE_UNIFORMS);\n for (let i = 0; i < numUniforms; ++i) {\n const u = gl.getActiveUniform(this.handle, i);\n if (u) {\n let uName = u.name;\n\n if (uName[uName.length - 1] === \"\\u0000\") {\n uName = uName.substr(0, uName.length - 1);\n }\n const location = gl.getUniformLocation(this.handle, uName);\n if ((u.type === gl.SAMPLER_2D) || (u.type === gl.SAMPLER_CUBE) || (u.type === 35682) || (u.type === 36306)) {\n // @ts-ignore\n this.samplers[uName] = new WebGLSampler(gl, location);\n } else {\n // @ts-ignore\n this.uniforms[uName] = location;\n }\n }\n }\n\n const numAttribs = gl.getProgramParameter(this.handle, gl.ACTIVE_ATTRIBUTES);\n for (let i = 0; i < numAttribs; i++) {\n const a = gl.getActiveAttrib(this.handle, i);\n if (a) {\n const location = gl.getAttribLocation(this.handle, a.name);\n this.attributes[a.name] = new WebGLAttribute(gl, location);\n }\n }\n\n this.allocated = true;\n }\n\n /**\n * Binds this program.\n */\n bind() {\n if (!this.allocated) {\n return;\n }\n this.gl.useProgram(this.handle);\n }\n\n /**\n * Gets the location of the given uniform within this program.\n * @param name\n */\n getLocation(name: string): WebGLUniformLocation {\n return this.uniforms[name];\n }\n\n /**\n * Gets an attribute within this program.\n * @param name\n */\n getAttribute(name: string): WebGLAttribute {\n return this.attributes[name];\n }\n\n /**\n * Gets a sampler within this program.\n * @param name\n */\n getSampler(name: string): WebGLSampler {\n return this.samplers[name];\n }\n\n /**\n * Binds a texture to this program.\n * @param name\n * @param texture\n * @param unit\n */\n bindTexture(name: string, texture: WebGLAbstractTexture, unit: number): boolean {\n if (!this.allocated) {\n return false;\n }\n const sampler = this.samplers[name];\n if (sampler) {\n return sampler.bindTexture(texture, unit);\n } else {\n return false;\n }\n }\n\n /**\n * Destroys this program.\n */\n destroy() {\n if (!this.allocated) {\n return;\n }\n ids.removeItem(this.id);\n this.gl.deleteProgram(this.handle);\n this.gl.deleteShader(this.vertexShader.handle);\n this.gl.deleteShader(this.fragmentShader.handle);\n this.attributes = {};\n this.uniforms = {};\n this.samplers = {};\n this.allocated = false;\n }\n}\n\nfunction joinSansComments(srcLines: string[]) {\n const src = [];\n let line;\n ``\n for (let i = 0, len = srcLines.length; i < len; i++) {\n line = srcLines[i];\n const n = line.indexOf(\"/\");\n if (n > 0) {\n if (line.charAt(n + 1) === \"/\") {\n line = line.substring(0, n);\n }\n }\n src.push(line);\n }\n return src.join(\"\\n\");\n}\n\nfunction logErrors(errors: string[]) {\n console.error(errors.join(\"\\n\"));\n}\n", "import {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\n/**\n * @desc Represents a WebGL render buffer.\n * @private\n */\nclass WebGLRenderBuffer {\n #gl: WebGL2RenderingContext;\n allocated: boolean;\n canvas: HTMLCanvasElement;\n #buffer: any;\n bound: boolean;\n size: any;\n #imageDataCache: any;\n #texture: WebGLAbstractTexture;\n #depthTexture: WebGLAbstractTexture;\n #hasDepthTexture: boolean;\n\n constructor(canvas: HTMLCanvasElement, gl: WebGL2RenderingContext, options: {\n depthTexture: boolean;\n size: any;\n }) {\n /** @type {WebGL2RenderingContext} */\n this.#gl = gl;\n this.allocated = false;\n this.canvas = canvas;\n this.#buffer = null;\n this.bound = false;\n this.size = options.size;\n this.#hasDepthTexture = !!options.depthTexture;\n }\n\n /**\n * Sets the size of this render buffer.\n * @param size\n */\n setSize(size: any) {\n this.size = size;\n }\n\n webglContextRestored(gl: WebGL2RenderingContext) {\n this.#gl = gl;\n this.#buffer = null;\n this.allocated = false;\n this.bound = false;\n }\n\n /**\n * Binds this render buffer.\n */\n bind(...internalformats: any) {\n this.touch(...internalformats);\n if (this.bound) {\n return;\n }\n const gl = this.#gl;\n // @ts-ignore\n gl.bindFramebuffer(gl.FRAMEBUFFER, this.#buffer.framebuf);\n this.bound = true;\n }\n\n /**\n * Create and specify a WebGL texture image.\n *\n * @param { number } width\n * @param { number } height\n * @param { GLenum } [internalformat=null]\n *\n * @returns { WebGLTexture }\n */\n createTexture(width: number, height: number, internalformat = null) {\n const gl = this.#gl;\n\n const colorTexture = gl.createTexture();\n gl.bindTexture(gl.TEXTURE_2D, colorTexture);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n\n if (internalformat) {\n gl.texStorage2D(gl.TEXTURE_2D, 1, internalformat, width, height);\n } else {\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, width, height, 0, gl.RGBA, gl.UNSIGNED_BYTE, null);\n }\n\n return colorTexture;\n }\n\n /**\n *\n * @param {number[]} [internalformats=[]]\n * @returns\n */\n touch(...internalformats: any) {\n\n let width;\n let height;\n const gl = this.#gl;\n\n if (this.size) {\n width = this.size[0];\n height = this.size[1];\n\n } else {\n width = gl.drawingBufferWidth;\n height = gl.drawingBufferHeight;\n }\n\n if (this.#buffer) {\n\n if (this.#buffer.width === width && this.#buffer.height === height) {\n return;\n\n } else {\n this.#buffer.textures.forEach(texture => gl.deleteTexture(texture));\n gl.deleteFramebuffer(this.#buffer.framebuf);\n gl.deleteRenderbuffer(this.#buffer.renderbuf);\n }\n }\n\n const colorTextures = [];\n if (internalformats.length > 0) {\n colorTextures.push(...internalformats.map(internalformat => this.createTexture(width, height, internalformat)));\n } else {\n colorTextures.push(this.createTexture(width, height));\n }\n\n let depthTexture;\n\n if (this.#hasDepthTexture) {\n depthTexture = gl.createTexture();\n gl.bindTexture(gl.TEXTURE_2D, depthTexture);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT32F, width, height, 0, gl.DEPTH_COMPONENT, gl.FLOAT, null);\n }\n\n const renderbuf = gl.createRenderbuffer();\n gl.bindRenderbuffer(gl.RENDERBUFFER, renderbuf);\n gl.renderbufferStorage(gl.RENDERBUFFER, gl.DEPTH_COMPONENT32F, width, height);\n\n const framebuf = gl.createFramebuffer();\n gl.bindFramebuffer(gl.FRAMEBUFFER, framebuf);\n for (let i = 0; i < colorTextures.length; i++) {\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + i, gl.TEXTURE_2D, colorTextures[i], 0);\n }\n if (internalformats.length > 0) {\n gl.drawBuffers(colorTextures.map((_, i) => gl.COLOR_ATTACHMENT0 + i));\n }\n\n if (this.#hasDepthTexture) {\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, depthTexture, 0);\n } else {\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, renderbuf);\n }\n\n gl.bindTexture(gl.TEXTURE_2D, null);\n gl.bindRenderbuffer(gl.RENDERBUFFER, null);\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n\n // Verify framebuffer is OK\n\n gl.bindFramebuffer(gl.FRAMEBUFFER, framebuf);\n if (!gl.isFramebuffer(framebuf)) {\n throw \"Invalid framebuffer\";\n }\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n\n const status = gl.checkFramebufferStatus(gl.FRAMEBUFFER);\n\n switch (status) {\n\n case gl.FRAMEBUFFER_COMPLETE:\n break;\n\n case gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_ATTACHMENT\";\n\n case gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\";\n\n case gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_DIMENSIONS\";\n\n case gl.FRAMEBUFFER_UNSUPPORTED:\n throw \"Incomplete framebuffer: FRAMEBUFFER_UNSUPPORTED\";\n\n default:\n throw \"Incomplete framebuffer: \" + status;\n }\n\n this.#buffer = {\n framebuf: framebuf,\n renderbuf: renderbuf,\n texture: colorTextures[0],\n textures: colorTextures,\n depthTexture: depthTexture,\n width: width,\n height: height\n };\n\n this.bound = false;\n }\n\n /**\n * Clears this render buffer.\n */\n clear() {\n if (!this.bound) {\n throw \"Render buffer not bound\";\n }\n const gl = this.#gl;\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n /**\n * Reads a pixel from this render buffer.\n * @param pickX\n * @param pickY\n */\n read(pickX: number, pickY: number, glFormat = null, glType = null, arrayType = Uint8Array, arrayMultiplier: number = 4, colorBufferIndex = 0) {\n const x = pickX;\n const y = this.#buffer.height ? (this.#buffer.height - pickY - 1) : (this.#gl.drawingBufferHeight - pickY);\n const pix = new arrayType(arrayMultiplier);\n const gl = this.#gl;\n gl.readBuffer(gl.COLOR_ATTACHMENT0 + colorBufferIndex);\n gl.readPixels(x, y, 1, 1, glFormat || gl.RGBA, glType || gl.UNSIGNED_BYTE, pix, 0);\n return pix;\n }\n\n readArray(glFormat = null, glType = null, arrayType = Uint8Array, arrayMultiplier = 4, colorBufferIndex = 0) {\n const pix = new arrayType(this.#buffer.width * this.#buffer.height * arrayMultiplier);\n const gl = this.#gl;\n gl.readBuffer(gl.COLOR_ATTACHMENT0 + colorBufferIndex);\n gl.readPixels(0, 0, this.#buffer.width, this.#buffer.height, glFormat || gl.RGBA, glType || gl.UNSIGNED_BYTE, pix, 0);\n return pix;\n }\n\n /**\n * Returns an HTMLCanvas containing the contents of the RenderBuffer as an image.\n *\n * - The HTMLCanvas has a CanvasRenderingContext2D.\n * - Expects the caller to draw more things on the HTMLCanvas (annotations etc).\n *\n * @returns {HTMLCanvasElement}\n */\n readImageAsCanvas() {\n const gl = this.#gl;\n const imageDataCache = this._getImageDataCache();\n const pixelData = imageDataCache.pixelData;\n const canvas = imageDataCache.canvas;\n const imageData = imageDataCache.imageData;\n const context = imageDataCache.context;\n gl.readPixels(0, 0, this.#buffer.width, this.#buffer.height, gl.RGBA, gl.UNSIGNED_BYTE, pixelData);\n const width = this.#buffer.width;\n const height = this.#buffer.height;\n const halfHeight = height / 2 | 0; // the | 0 keeps the result an int\n const bytesPerRow = width * 4;\n const temp = new Uint8Array(width * 4);\n for (let y = 0; y < halfHeight; ++y) {\n const topOffset = y * bytesPerRow;\n const bottomOffset = (height - y - 1) * bytesPerRow;\n temp.set(pixelData.subarray(topOffset, topOffset + bytesPerRow));\n pixelData.copyWithin(topOffset, bottomOffset, bottomOffset + bytesPerRow);\n pixelData.set(temp, bottomOffset);\n }\n imageData.data.set(pixelData);\n context.putImageData(imageData, 0, 0);\n return canvas;\n }\n\n /**\n * Redas an image from this render buffer.\n * @param params\n */\n readImage(params: {\n height?: number;\n width?: number;\n format?: string;\n }) {\n const gl = this.#gl;\n const imageDataCache = this._getImageDataCache();\n const pixelData = imageDataCache.pixelData;\n const canvas = imageDataCache.canvas;\n const imageData = imageDataCache.imageData;\n const context = imageDataCache.context;\n const {width, height} = this.#buffer;\n gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, pixelData);\n imageData.data.set(pixelData);\n context.putImageData(imageData, 0, 0);\n\n // flip Y\n context.save();\n context.globalCompositeOperation = 'copy';\n context.scale(1, -1);\n context.drawImage(canvas, 0, -height, width, height);\n context.restore();\n\n let format = params.format || \"png\";\n if (format !== \"jpeg\" && format !== \"png\" && format !== \"bmp\") {\n console.error(\"Unsupported image format: '\" + format + \"' - supported types are 'jpeg', 'bmp' and 'png' - defaulting to 'png'\");\n format = \"png\";\n }\n return canvas.toDataURL(`image/${format}`);\n }\n\n _getImageDataCache(type = Uint8Array, multiplier = 4) {\n\n const bufferWidth = this.#buffer.width;\n const bufferHeight = this.#buffer.height;\n\n let imageDataCache = this.#imageDataCache;\n\n if (imageDataCache) {\n if (imageDataCache.width !== bufferWidth || imageDataCache.height !== bufferHeight) {\n this.#imageDataCache = null;\n imageDataCache = null;\n }\n }\n\n if (!imageDataCache) {\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n canvas.width = bufferWidth;\n canvas.height = bufferHeight;\n imageDataCache = {\n pixelData: new type(bufferWidth * bufferHeight * multiplier),\n canvas: canvas,\n context: context,\n imageData: context.createImageData(bufferWidth, bufferHeight),\n width: bufferWidth,\n height: bufferHeight\n };\n\n this.#imageDataCache = imageDataCache;\n }\n imageDataCache.context.resetTransform(); // Prevents strange scale-accumulation effect with html2canvas\n return imageDataCache;\n }\n\n unbind() {\n const gl = this.#gl;\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n this.bound = false;\n }\n\n getTexture(): WebGLAbstractTexture {\n return this.#texture || (this.#texture = {\n bind: (unit: number) => {\n if (this.#buffer && this.#buffer.texture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, this.#buffer.texture);\n return true;\n }\n return false;\n },\n unbind: (unit: number) => {\n if (this.#buffer && this.#buffer.texture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, null);\n }\n }\n });\n }\n\n hasDepthTexture(): boolean {\n return this.#hasDepthTexture;\n }\n\n /**\n * Gets the depth texture component of this render buffer, if any.\n */\n getDepthTexture(): WebGLAbstractTexture | null {\n if (!this.#hasDepthTexture) {\n return null;\n }\n return this.#depthTexture || (this.#depthTexture = {\n bind: (unit: number) => {\n if (this.#buffer && this.#buffer.depthTexture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, this.#buffer.depthTexture);\n return true;\n }\n return false;\n },\n unbind: (unit: number) => {\n if (this.#buffer && this.#buffer.depthTexture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, null);\n }\n }\n });\n }\n\n destroy() {\n if (this.allocated) {\n const gl = this.#gl;\n this.#buffer.textures.forEach(texture => gl.deleteTexture(texture));\n gl.deleteTexture(this.#buffer.depthTexture);\n gl.deleteFramebuffer(this.#buffer.framebuf);\n gl.deleteRenderbuffer(this.#buffer.renderbuf);\n this.allocated = false;\n this.#buffer = null;\n this.bound = false;\n }\n this.#imageDataCache = null;\n this.#texture = null;\n this.#depthTexture = null;\n }\n}\n\nexport {WebGLRenderBuffer};\n", "/**\n * Gets a WebGL2 extension.\n * @param gl\n * @param name\n */\nexport function getWebGLExtension(gl: WebGL2RenderingContext, name: string) {\n // @ts-ignore\n if (gl._cachedExtensions === undefined) {\n // @ts-ignore\n gl._cachedExtensions = {};\n }\n // @ts-ignore\n if (gl._cachedExtensions[name] !== undefined) {\n // @ts-ignore\n return gl._cachedExtensions[name];\n }\n let extension;\n switch (name) {\n case 'WEBGL_depth_texture':\n extension = gl.getExtension('WEBGL_depth_texture') || gl.getExtension('MOZ_WEBGL_depth_texture') || gl.getExtension('WEBKIT_WEBGL_depth_texture');\n break;\n case 'EXT_texture_filter_anisotropic':\n extension = gl.getExtension('EXT_texture_filter_anisotropic') || gl.getExtension('MOZ_EXT_texture_filter_anisotropic') || gl.getExtension('WEBKIT_EXT_texture_filter_anisotropic');\n break;\n case 'WEBGL_compressed_texture_s3tc':\n extension = gl.getExtension('WEBGL_compressed_texture_s3tc') || gl.getExtension('MOZ_WEBGL_compressed_texture_s3tc') || gl.getExtension('WEBKIT_WEBGL_compressed_texture_s3tc');\n break;\n case 'WEBGL_compressed_texture_pvrtc':\n extension = gl.getExtension('WEBGL_compressed_texture_pvrtc') || gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc');\n break;\n default:\n extension = gl.getExtension(name);\n }\n // @ts-ignore\n gl._cachedExtensions[name] = extension;\n return extension;\n}", "import {\n AlphaFormat,\n ByteType,\n ClampToEdgeWrapping,\n DepthFormat,\n DepthStencilFormat,\n FloatType,\n HalfFloatType,\n IntType,\n LinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n LuminanceAlphaFormat,\n LuminanceFormat,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n RedFormat,\n RedIntegerFormat,\n RepeatWrapping,\n RGB_ETC1_Format,\n RGB_ETC2_Format,\n RGB_PVRTC_2BPPV1_Format,\n RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format,\n RGBA_ASTC_10x10_Format,\n RGBA_ASTC_10x5_Format,\n RGBA_ASTC_10x6_Format,\n RGBA_ASTC_10x8_Format,\n RGBA_ASTC_12x10_Format,\n RGBA_ASTC_12x12_Format,\n RGBA_ASTC_4x4_Format,\n RGBA_ASTC_5x4_Format,\n RGBA_ASTC_5x5_Format,\n RGBA_ASTC_6x5_Format,\n RGBA_ASTC_6x6_Format,\n RGBA_ASTC_8x5_Format,\n RGBA_ASTC_8x6_Format,\n RGBA_ASTC_8x8_Format,\n RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_2BPPV1_Format,\n RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT1_Format,\n RGBA_S3TC_DXT3_Format,\n RGBA_S3TC_DXT5_Format,\n RGBAFormat,\n RGBAIntegerFormat,\n RGBFormat,\n RGFormat,\n RGIntegerFormat,\n ShortType,\n sRGBEncoding,\n UnsignedByteType,\n UnsignedInt248Type,\n UnsignedIntType,\n UnsignedShort4444Type,\n UnsignedShort5551Type,\n UnsignedShortType\n} from \"@xeokit/constants\";\n\nimport {getWebGLExtension} from \"./getWebGLExtension\";\n\n/**\n * Converts a xeokit SDK constant to its eauivalent WebGL2 constant/enumeration value.\n *\n * @param gl\n * @param constantVal\n * @param encoding\n */\nexport function convertWebGLConstant(gl: WebGL2RenderingContext, constantVal: number, encoding?: number) {\n\n let extension;\n const p = constantVal;\n\n if (p === UnsignedByteType) return gl.UNSIGNED_BYTE;\n if (p === UnsignedShort4444Type) return gl.UNSIGNED_SHORT_4_4_4_4;\n if (p === UnsignedShort5551Type) return gl.UNSIGNED_SHORT_5_5_5_1;\n\n if (p === ByteType) return gl.BYTE;\n if (p === ShortType) return gl.SHORT;\n if (p === UnsignedShortType) return gl.UNSIGNED_SHORT;\n if (p === IntType) return gl.INT;\n if (p === UnsignedIntType) return gl.UNSIGNED_INT;\n if (p === FloatType) return gl.FLOAT;\n\n if (p === HalfFloatType) {\n return gl.HALF_FLOAT;\n }\n\n if (p === AlphaFormat) return gl.ALPHA;\n if (p === RGBAFormat) return gl.RGBA;\n if (p === LuminanceFormat) return gl.LUMINANCE;\n if (p === LuminanceAlphaFormat) return gl.LUMINANCE_ALPHA;\n if (p === DepthFormat) return gl.DEPTH_COMPONENT;\n if (p === DepthStencilFormat) return gl.DEPTH_STENCIL;\n if (p === RedFormat) return gl.RED;\n\n if (p === RGBFormat) {\n return gl.RGBA;\n }\n\n // WebGL formats.\n\n if (p === RedIntegerFormat) return gl.RED_INTEGER;\n if (p === RGFormat) return gl.RG;\n if (p === RGIntegerFormat) return gl.RG_INTEGER;\n if (p === RGBAIntegerFormat) return gl.RGBA_INTEGER;\n\n // S3TC\n\n if (p === RGB_S3TC_DXT1_Format || p === RGBA_S3TC_DXT1_Format || p === RGBA_S3TC_DXT3_Format || p === RGBA_S3TC_DXT5_Format) {\n if (encoding === sRGBEncoding) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc_srgb');\n if (extension !== null) {\n if (p === RGB_S3TC_DXT1_Format) return extension.COMPRESSED_SRGB_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT1_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT3_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;\n if (p === RGBA_S3TC_DXT5_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT;\n } else {\n return null;\n }\n } else {\n extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc');\n if (extension !== null) {\n if (p === RGB_S3TC_DXT1_Format) return extension.COMPRESSED_RGB_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT1_Format) return extension.COMPRESSED_RGBA_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT3_Format) return extension.COMPRESSED_RGBA_S3TC_DXT3_EXT;\n if (p === RGBA_S3TC_DXT5_Format) return extension.COMPRESSED_RGBA_S3TC_DXT5_EXT;\n } else {\n return null;\n }\n }\n }\n\n // PVRTC\n\n if (p === RGB_PVRTC_4BPPV1_Format || p === RGB_PVRTC_2BPPV1_Format || p === RGBA_PVRTC_4BPPV1_Format || p === RGBA_PVRTC_2BPPV1_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_pvrtc');\n if (extension !== null) {\n if (p === RGB_PVRTC_4BPPV1_Format) return extension.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;\n if (p === RGB_PVRTC_2BPPV1_Format) return extension.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;\n if (p === RGBA_PVRTC_4BPPV1_Format) return extension.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;\n if (p === RGBA_PVRTC_2BPPV1_Format) return extension.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;\n } else {\n return null;\n }\n }\n\n // ETC1\n\n if (p === RGB_ETC1_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_etc1');\n if (extension !== null) {\n return extension.COMPRESSED_RGB_ETC1_WEBGL;\n } else {\n return null;\n }\n }\n\n // ETC2\n\n if (p === RGB_ETC2_Format || p === RGBA_ETC2_EAC_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_etc');\n if (extension !== null) {\n if (p === RGB_ETC2_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ETC2 : extension.COMPRESSED_RGB8_ETC2;\n if (p === RGBA_ETC2_EAC_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC : extension.COMPRESSED_RGBA8_ETC2_EAC;\n } else {\n return null;\n }\n }\n\n // ASTC\n\n if (p === RGBA_ASTC_4x4_Format || p === RGBA_ASTC_5x4_Format || p === RGBA_ASTC_5x5_Format ||\n p === RGBA_ASTC_6x5_Format || p === RGBA_ASTC_6x6_Format || p === RGBA_ASTC_8x5_Format ||\n p === RGBA_ASTC_8x6_Format || p === RGBA_ASTC_8x8_Format || p === RGBA_ASTC_10x5_Format ||\n p === RGBA_ASTC_10x6_Format || p === RGBA_ASTC_10x8_Format || p === RGBA_ASTC_10x10_Format ||\n p === RGBA_ASTC_12x10_Format || p === RGBA_ASTC_12x12_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_astc');\n if (extension !== null) {\n if (p === RGBA_ASTC_4x4_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR : extension.COMPRESSED_RGBA_ASTC_4x4_KHR;\n if (p === RGBA_ASTC_5x4_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR : extension.COMPRESSED_RGBA_ASTC_5x4_KHR;\n if (p === RGBA_ASTC_5x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR : extension.COMPRESSED_RGBA_ASTC_5x5_KHR;\n if (p === RGBA_ASTC_6x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR : extension.COMPRESSED_RGBA_ASTC_6x5_KHR;\n if (p === RGBA_ASTC_6x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR : extension.COMPRESSED_RGBA_ASTC_6x6_KHR;\n if (p === RGBA_ASTC_8x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR : extension.COMPRESSED_RGBA_ASTC_8x5_KHR;\n if (p === RGBA_ASTC_8x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR : extension.COMPRESSED_RGBA_ASTC_8x6_KHR;\n if (p === RGBA_ASTC_8x8_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR : extension.COMPRESSED_RGBA_ASTC_8x8_KHR;\n if (p === RGBA_ASTC_10x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR : extension.COMPRESSED_RGBA_ASTC_10x5_KHR;\n if (p === RGBA_ASTC_10x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR : extension.COMPRESSED_RGBA_ASTC_10x6_KHR;\n if (p === RGBA_ASTC_10x8_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR : extension.COMPRESSED_RGBA_ASTC_10x8_KHR;\n if (p === RGBA_ASTC_10x10_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR : extension.COMPRESSED_RGBA_ASTC_10x10_KHR;\n if (p === RGBA_ASTC_12x10_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR : extension.COMPRESSED_RGBA_ASTC_12x10_KHR;\n if (p === RGBA_ASTC_12x12_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR : extension.COMPRESSED_RGBA_ASTC_12x12_KHR;\n } else {\n return null;\n }\n }\n\n // BPTC\n\n if (p === RGBA_BPTC_Format) {\n const extension = getWebGLExtension(gl, 'EXT_texture_compression_bptc');\n if (extension !== null) {\n if (p === RGBA_BPTC_Format) {\n return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT : extension.COMPRESSED_RGBA_BPTC_UNORM_EXT;\n }\n } else {\n return null;\n }\n }\n\n //\n\n if (p === UnsignedInt248Type) {\n return gl.UNSIGNED_INT_24_8;\n }\n if (p === RepeatWrapping) {\n return gl.REPEAT;\n }\n if (p === ClampToEdgeWrapping) {\n return gl.CLAMP_TO_EDGE;\n }\n if (p === NearestMipMapNearestFilter) {\n return gl.NEAREST_MIPMAP_LINEAR;\n }\n if (p === NearestMipMapLinearFilter) {\n return gl.NEAREST_MIPMAP_LINEAR;\n }\n if (p === LinearMipMapNearestFilter) {\n return gl.LINEAR_MIPMAP_NEAREST;\n }\n if (p === LinearMipMapLinearFilter) {\n return gl.LINEAR_MIPMAP_LINEAR;\n }\n if (p === NearestFilter) {\n return gl.NEAREST;\n }\n if (p === LinearFilter) {\n return gl.LINEAR;\n }\n\n return null;\n}\n\n", "import type * as math from '@xeokit/math';\nimport {\n NearestFilter,\n NearestMipmapLinearFilter, NearestMipmapNearestFilter,\n RepeatWrapping,\n RGBAFormat, sRGBEncoding,\n UnsignedByteType\n} from \"@xeokit/constants\";\n\nimport {isArray} from \"@xeokit/utils\";\n\nimport {convertWebGLConstant} from \"./convertWebGLConstant\";\nimport {getWebGLExtension} from \"./getWebGLExtension\";\nimport type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\nimport type {TextureCompressedParams} from \"@xeokit/core\";\n\nconst color = new Uint8Array([0, 0, 0, 1]);\n\n/**\n * Represents a WebGL2 texture.\n */\nexport class WebGLTexture implements WebGLAbstractTexture {\n\n private gl: WebGL2RenderingContext;\n private target: number;\n private format: number;\n private type: number;\n private internalFormat: number;\n private premultiplyAlpha: boolean;\n private flipY: boolean;\n private unpackAlignment: number;\n private wrapS: number;\n private wrapT: number;\n private wrapR: number;\n private texture: WebGLTexture;\n private allocated: boolean;\n private minFilter: number;\n private magFilter: number;\n private encoding: number;\n\n constructor(params: {\n gl: WebGL2RenderingContext,\n target?: number,\n format?: number,\n type?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number,\n preloadColor?: math.FloatArrayParam,\n premultiplyAlpha?: boolean,\n flipY?: boolean\n }) {\n\n this.gl = params.gl;\n\n this.target = params.target || params.gl.TEXTURE_2D;\n this.format = params.format || RGBAFormat;\n this.type = params.type || UnsignedByteType;\n this.internalFormat = -1;\n this.premultiplyAlpha = !!params.premultiplyAlpha;\n this.flipY = !!params.flipY;\n this.unpackAlignment = 4;\n this.wrapS = params.wrapS || RepeatWrapping;\n this.wrapT = params.wrapT || RepeatWrapping;\n this.wrapR = params.wrapR || RepeatWrapping;\n\n // @ts-ignore\n this.texture = params.gl.createTexture();\n\n if (params.preloadColor) {\n this.setPreloadColor(params.preloadColor); // Prevents \"there is no texture bound to the unit 0\" error\n }\n\n this.allocated = true;\n }\n\n setPreloadColor(value: math.FloatArrayParam) {\n if (!value) {\n color[0] = 0;\n color[1] = 0;\n color[2] = 0;\n color[3] = 255;\n } else {\n color[0] = Math.floor(value[0] * 255);\n color[1] = Math.floor(value[1] * 255);\n color[2] = Math.floor(value[2] * 255);\n color[3] = Math.floor((value[3] !== undefined ? value[3] : 1) * 255);\n }\n const gl = this.gl;\n gl.bindTexture(this.target, this.texture);\n if (this.target === gl.TEXTURE_CUBE_MAP) {\n const faces = [\n gl.TEXTURE_CUBE_MAP_POSITIVE_X,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_X,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Y,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Z,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n ];\n for (let i = 0, len = faces.length; i < len; i++) {\n gl.texImage2D(faces[i], 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, color);\n }\n } else {\n gl.texImage2D(this.target, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, color);\n }\n gl.bindTexture(this.target, null);\n }\n\n setTarget(target: number) {\n this.target = target || this.gl.TEXTURE_2D;\n }\n\n setImage(image: HTMLImageElement, props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment?: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }={}) {\n\n const gl = this.gl;\n\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.flipY !== undefined) {\n this.flipY = props.flipY;\n }\n if (props.premultiplyAlpha !== undefined) {\n this.premultiplyAlpha = props.premultiplyAlpha;\n }\n if (props.unpackAlignment !== undefined) {\n this.unpackAlignment = props.unpackAlignment;\n }\n if (props.minFilter !== undefined) {\n this.minFilter = props.minFilter;\n }\n if (props.magFilter !== undefined) {\n this.magFilter = props.magFilter;\n }\n if (props.wrapS !== undefined) {\n this.wrapS = props.wrapS;\n }\n if (props.wrapT !== undefined) {\n this.wrapT = props.wrapT;\n }\n if (props.wrapR !== undefined) {\n this.wrapR = props.wrapR;\n }\n\n let generateMipMap = false;\n\n gl.bindTexture(this.target, this.texture);\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.flipY);\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);\n gl.pixelStorei(gl.UNPACK_ALIGNMENT, this.unpackAlignment);\n gl.pixelStorei(gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, gl.NONE);\n\n const minFilter = convertWebGLConstant(gl, this.minFilter);\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, minFilter);\n\n if (minFilter === gl.NEAREST_MIPMAP_NEAREST\n || minFilter === gl.LINEAR_MIPMAP_NEAREST\n || minFilter === gl.NEAREST_MIPMAP_LINEAR\n || minFilter === gl.LINEAR_MIPMAP_LINEAR) {\n generateMipMap = true;\n }\n\n const magFilter = convertWebGLConstant(gl, this.magFilter);\n if (magFilter) {\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, magFilter);\n }\n\n const wrapS = convertWebGLConstant(gl, this.wrapS);\n if (wrapS) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n\n const wrapT = convertWebGLConstant(gl, this.wrapT);\n if (wrapT) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n\n const glFormat = convertWebGLConstant(gl, this.format, this.encoding);\n const glType = convertWebGLConstant(gl, this.type);\n const glInternalFormat = getInternalFormat(gl, this.internalFormat, glFormat, glType, this.encoding, false);\n\n if (this.target === gl.TEXTURE_CUBE_MAP) {\n if (isArray(image)) {\n const images = image;\n const faces = [\n gl.TEXTURE_CUBE_MAP_POSITIVE_X,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_X,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Y,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Z,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n ];\n for (let i = 0, len = faces.length; i < len; i++) {\n // @ts-ignore\n gl.texImage2D(faces[i], 0, glInternalFormat, glFormat, glType, images[i]);\n }\n }\n } else {\n gl.texImage2D(gl.TEXTURE_2D, 0, glInternalFormat, glFormat, glType, image);\n }\n\n // if (generateMipMap) {\n // gl.generateMipmap(this.target);\n // }\n\n gl.bindTexture(this.target, null);\n }\n\n setCompressedData(params: TextureCompressedParams) {\n\n const gl = this.gl;\n const mipmaps = params.mipmaps || [];\n const levels = mipmaps.length;\n const props = params.props;\n\n // Cache props\n\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.flipY !== undefined) {\n this.flipY = props.flipY;\n }\n if (props.premultiplyAlpha !== undefined) {\n this.premultiplyAlpha = props.premultiplyAlpha;\n }\n if (props.unpackAlignment !== undefined) {\n this.unpackAlignment = props.unpackAlignment;\n }\n if (props.minFilter !== undefined) {\n this.minFilter = props.minFilter;\n }\n if (props.magFilter !== undefined) {\n this.magFilter = props.magFilter;\n }\n if (props.wrapS !== undefined) {\n this.wrapS = props.wrapS;\n }\n if (props.wrapT !== undefined) {\n this.wrapT = props.wrapT;\n }\n if (props.wrapR !== undefined) {\n this.wrapR = props.wrapR;\n }\n\n gl.activeTexture(gl.TEXTURE0 + 0);\n gl.bindTexture(this.target, this.texture);\n\n let supportsMips = mipmaps.length > 1;\n\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.flipY);\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);\n gl.pixelStorei(gl.UNPACK_ALIGNMENT, this.unpackAlignment);\n gl.pixelStorei(gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, gl.NONE);\n\n const wrapS = convertWebGLConstant(gl, this.wrapS);\n if (wrapS) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n\n const wrapT = convertWebGLConstant(gl, this.wrapT);\n if (wrapT) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n\n // @ts-ignore\n if (this.type === gl.TEXTURE_3D || this.type === gl.TEXTURE_2D_ARRAY) {\n const wrapR = convertWebGLConstant(gl, this.wrapR);\n if (wrapR) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_R, wrapR);\n }\n gl.texParameteri(this.type, gl.TEXTURE_WRAP_R, wrapR);\n }\n\n if (supportsMips) {\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, filterFallback(gl, this.minFilter));\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, filterFallback(gl, this.magFilter));\n\n } else {\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, convertWebGLConstant(gl, this.minFilter));\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, convertWebGLConstant(gl, this.magFilter));\n }\n\n const glFormat = convertWebGLConstant(gl, this.format, this.encoding);\n const glType = convertWebGLConstant(gl, this.type);\n const glInternalFormat = getInternalFormat(gl, this.internalFormat, glFormat, glType, this.encoding, false);\n\n gl.texStorage2D(gl.TEXTURE_2D, levels, glInternalFormat, mipmaps[0].width, mipmaps[0].height);\n\n for (let i = 0, len = mipmaps.length; i < len; i++) {\n\n const mipmap = mipmaps[i];\n\n if (this.format !== RGBAFormat) {\n if (glFormat !== null) {\n gl.compressedTexSubImage2D(gl.TEXTURE_2D, i, 0, 0, mipmap.width, mipmap.height, glFormat, mipmap.data);\n } else {\n console.warn('Attempt to load unsupported compressed texture format in .setCompressedData()');\n }\n } else {\n gl.texSubImage2D(gl.TEXTURE_2D, i, 0, 0, mipmap.width, mipmap.height, glFormat, glType, mipmap.data);\n }\n }\n\n gl.bindTexture(this.target, null);\n }\n\n setProps(props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }) {\n const gl = this.gl;\n gl.bindTexture(this.target, this.texture);\n this._uploadProps(props);\n gl.bindTexture(this.target, null);\n }\n\n _uploadProps(props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }) {\n const gl = this.gl;\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.minFilter !== undefined) {\n const minFilter = convertWebGLConstant(gl, props.minFilter);\n if (minFilter) {\n this.minFilter = props.minFilter;\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, minFilter);\n if (minFilter === gl.NEAREST_MIPMAP_NEAREST || minFilter === gl.LINEAR_MIPMAP_NEAREST || minFilter === gl.NEAREST_MIPMAP_LINEAR || minFilter === gl.LINEAR_MIPMAP_LINEAR) {\n gl.generateMipmap(this.target);\n }\n }\n }\n if (props.magFilter !== undefined) {\n const magFilter = convertWebGLConstant(gl, props.magFilter);\n if (magFilter) {\n this.magFilter = props.magFilter;\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, magFilter);\n }\n }\n if (props.wrapS !== undefined) {\n const wrapS = convertWebGLConstant(gl, props.wrapS);\n if (wrapS) {\n this.wrapS = props.wrapS;\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n }\n if (props.wrapT !== undefined) {\n const wrapT = convertWebGLConstant(gl, props.wrapT);\n if (wrapT) {\n this.wrapT = props.wrapT;\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n }\n }\n\n bind(unit: number) :boolean{\n if (!this.allocated) {\n return false;\n }\n if (this.texture) {\n const gl = this.gl;\n // @ts-ignore\n gl.activeTexture(gl[`TEXTURE${unit}`]);\n gl.bindTexture(this.target, this.texture);\n return true;\n }\n return false;\n }\n\n unbind(unit: number) {\n if (!this.allocated) {\n return;\n }\n if (this.texture) {\n const gl = this.gl;\n // @ts-ignore\n gl.activeTexture(gl[`TEXTURE${unit}`]);\n gl.bindTexture(this.target, null);\n }\n }\n\n destroy() {\n if (!this.allocated) {\n return;\n }\n if (this.texture) {\n this.gl.deleteTexture(this.texture);\n // @ts-ignore\n this.texture = null;\n }\n }\n}\n\nfunction getInternalFormat(\n gl: WebGL2RenderingContext,\n internalFormatName: string | number,\n glFormat: any,\n glType: any,\n encoding: number,\n isVideoTexture = false): number {\n if (internalFormatName !== null) {\n // @ts-ignore\n if (gl[internalFormatName] !== undefined) {\n // @ts-ignore\n return gl[internalFormatName];\n }\n console.warn('Attempt to use non-existing WebGL internal format \\'' + internalFormatName + '\\'');\n }\n let internalFormat = glFormat;\n if (glFormat === gl.RED) {\n if (glType === gl.FLOAT) internalFormat = gl.R32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.R16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = gl.R8;\n }\n if (glFormat === gl.RG) {\n if (glType === gl.FLOAT) internalFormat = gl.RG32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.RG16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = gl.RG8;\n }\n if (glFormat === gl.RGBA) {\n if (glType === gl.FLOAT) internalFormat = gl.RGBA32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.RGBA16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = (encoding === sRGBEncoding && isVideoTexture === false) ? gl.SRGB8_ALPHA8 : gl.RGBA8;\n if (glType === gl.UNSIGNED_SHORT_4_4_4_4) internalFormat = gl.RGBA4;\n if (glType === gl.UNSIGNED_SHORT_5_5_5_1) internalFormat = gl.RGB5_A1;\n }\n if (internalFormat === gl.R16F || internalFormat === gl.R32F ||\n internalFormat === gl.RG16F || internalFormat === gl.RG32F ||\n internalFormat === gl.RGBA16F || internalFormat === gl.RGBA32F) {\n getWebGLExtension(gl, 'EXT_color_buffer_float');\n }\n return internalFormat;\n}\n\nfunction filterFallback(gl: WebGL2RenderingContext, f: number): number {\n if (f === NearestFilter || f === NearestMipmapNearestFilter || f === NearestMipmapLinearFilter) {\n return gl.NEAREST;\n }\n return gl.LINEAR;\n\n}", "/**\n * Canvas2Image v0.1\n * Copyright (c) 2008 Jacob Seidelin, cupboy@gmail.com\n * MIT License [http://www.opensource.org/licenses/mit-license.php]\n *\n * Modified by @xeolabs to permit vertical flipping, so that snapshot can be taken from WebGL frame buffers,\n * which vertically flip image data as part of the way that WebGL renders textures.\n */\nexport const Canvas2Image = (function () {\n // check if we have canvas support\n const oCanvas = document.createElement(\"canvas\"), sc = String.fromCharCode, strDownloadMime = \"image/octet-stream\",\n bReplaceDownloadMime = false;\n\n // no canvas, bail out.\n if (!oCanvas.getContext) {\n return {\n saveAsBMP: function () {\n },\n saveAsPNG: function () {\n },\n saveAsJPEG: function () {\n }\n }\n }\n\n // @ts-ignore\n const bHasImageData = !!(oCanvas.getContext(\"2d\").getImageData), bHasDataURL = !!(oCanvas.toDataURL),\n bHasBase64 = !!(window.btoa);\n\n // ok, we're good\n const readCanvasData = function (oCanvas: HTMLCanvasElement) {\n // @ts-ignore\n const iWidth = parseInt(oCanvas.width), iHeight = parseInt(oCanvas.height);\n // @ts-ignore\n return oCanvas.getContext(\"2d\").getImageData(0, 0, iWidth, iHeight);\n };\n\n // base64 encodes either a string or an array of charcodes\n const encodeData = function (data: any) {\n let i: any, aData: any, strData: any = \"\";\n if (typeof data == \"string\") {\n strData = data;\n } else {\n aData = data;\n for (i = 0; i < aData.length; i++) {\n strData += sc(aData[i]);\n }\n }\n return btoa(strData);\n };\n\n // creates a base64 encoded string containing BMP data takes an imagedata object as argument\n const createBMP = function (oData: ImageData) {\n let strHeader = '';\n const iWidth = oData.width;\n const iHeight = oData.height;\n\n strHeader += 'BM';\n\n let iFileSize = iWidth * iHeight * 4 + 54; // total header size = 54 bytes\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n\n strHeader += sc(0, 0, 0, 0, 54, 0, 0, 0); // data offset\n strHeader += sc(40, 0, 0, 0); // info header size\n\n let iImageWidth = iWidth;\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n\n let iImageHeight = iHeight;\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n\n strHeader += sc(1, 0, 32, 0); // num of planes & num of bits per pixel\n strHeader += sc(0, 0, 0, 0); // compression = none\n\n let iDataSize = iWidth * iHeight * 4;\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n\n strHeader += sc(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); // these bytes are not used\n\n const aImgData = oData.data;\n let strPixelData = \"\";\n let c;\n let x;\n let y = iHeight;\n let iOffsetX;\n let iOffsetY;\n let strPixelRow;\n\n do {\n iOffsetY = iWidth * (y - 1) * 4;\n strPixelRow = \"\";\n for (x = 0; x < iWidth; x++) {\n iOffsetX = 4 * x;\n strPixelRow += sc(\n aImgData[iOffsetY + iOffsetX + 2], // B\n aImgData[iOffsetY + iOffsetX + 1], // G\n aImgData[iOffsetY + iOffsetX], // R\n aImgData[iOffsetY + iOffsetX + 3] // A\n );\n }\n strPixelData += strPixelRow;\n } while (--y);\n\n return encodeData(strHeader + strPixelData);\n };\n\n // sends the generated file to the client\n const saveFile = function (strData: string) {\n if (!window.open(strData)) {\n document.location.href = strData;\n }\n };\n\n const makeDataURI = function (strData: string, strMime: string) {\n return \"data:\" + strMime + \";base64,\" + strData;\n };\n\n // generates a object containing the imagedata\n const makeImageObject = function (strSource: any) {\n const oImgElement = document.createElement(\"img\");\n oImgElement.src = strSource;\n return oImgElement;\n };\n\n const scaleCanvas = function (oCanvas: HTMLCanvasElement, iWidth: number, iHeight: number, flipy: boolean) {\n if (iWidth && iHeight) {\n const oSaveCanvas = document.createElement(\"canvas\");\n oSaveCanvas.width = iWidth;\n oSaveCanvas.height = iHeight;\n oSaveCanvas.style.width = iWidth + \"px\";\n oSaveCanvas.style.height = iHeight + \"px\";\n const oSaveCtx = oSaveCanvas.getContext(\"2d\");\n if (flipy) {\n // @ts-ignore\n oSaveCtx.save();\n // @ts-ignore\n oSaveCtx.scale(1.0, -1.0);\n // @ts-ignore\n oSaveCtx.imageSmoothingEnabled = true;\n // @ts-ignore\n oSaveCtx.drawImage(oCanvas, 0, 0, oCanvas.width, oCanvas.height, 0, 0, iWidth, -iHeight);\n // @ts-ignore\n oSaveCtx.restore();\n } else {\n // @ts-ignore\n oSaveCtx.imageSmoothingEnabled = true;\n // @ts-ignore\n oSaveCtx.drawImage(oCanvas, 0, 0, oCanvas.width, oCanvas.height, 0, 0, iWidth, iHeight);\n }\n return oSaveCanvas;\n }\n return oCanvas;\n };\n\n return {\n saveAsPNG: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!bHasDataURL) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/png\";\n const strData = oScaledCanvas.toDataURL(strMime);\n if (bReturnImg) {\n return makeImageObject(strData);\n } else {\n saveFile(bReplaceDownloadMime ? strData.replace(strMime, strDownloadMime) : strData);\n }\n return true;\n },\n\n saveAsJPEG: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!bHasDataURL) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/jpeg\";\n const strData = oScaledCanvas.toDataURL(strMime);\n // check if browser actually supports jpeg by looking for the mime type in the data uri. if not, return false\n if (strData.indexOf(strMime) != 5) return false;\n if (bReturnImg) {\n return makeImageObject(strData);\n } else {\n saveFile(bReplaceDownloadMime ? strData.replace(strMime, strDownloadMime) : strData);\n }\n return true;\n },\n\n saveAsBMP: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!(bHasDataURL && bHasImageData && bHasBase64)) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/bmp\";\n const oData = readCanvasData(oScaledCanvas), strImgData = createBMP(oData);\n if (bReturnImg) {\n return makeImageObject(makeDataURI(strImgData, strMime));\n } else {\n saveFile(makeDataURI(strImgData, strMime));\n }\n return true;\n }\n };\n})();\n", "/**\n * Information about WebGL2 support on the client machine.\n */\nconst WEBGL_INFO: {\n [key: string]: any\n} = {\n WEBGL: false,\n SUPPORTED_EXTENSIONS: {}\n};\n\nconst canvas = document.createElement(\"canvas\");\n\nif (canvas) {\n\n // @ts-ignore\n const gl: WebGL2RenderingContext = canvas.getContext(\"webgl2\", {antialias: true});\n\n WEBGL_INFO.WEBGL = !!gl;\n\n if (WEBGL_INFO.WEBGL) {\n // @ts-ignore\n WEBGL_INFO.ANTIALIAS = gl.getContextAttributes().antialias;\n if (gl.getShaderPrecisionFormat) {\n // @ts-ignore\n if (gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT).precision > 0) {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"highp\";\n } else { // @ts-ignore\n if (gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.MEDIUM_FLOAT).precision > 0) {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"mediump\";\n } else {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"lowp\";\n }\n }\n } else {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"mediump\";\n }\n WEBGL_INFO.DEPTH_BUFFER_BITS = gl.getParameter(gl.DEPTH_BITS);\n WEBGL_INFO.MAX_TEXTURE_SIZE = gl.getParameter(gl.MAX_TEXTURE_SIZE);\n WEBGL_INFO.MAX_CUBE_MAP_SIZE = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE);\n WEBGL_INFO.MAX_RENDERBUFFER_SIZE = gl.getParameter(gl.MAX_RENDERBUFFER_SIZE);\n WEBGL_INFO.MAX_TEXTURE_UNITS = gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);\n WEBGL_INFO.MAX_TEXTURE_IMAGE_UNITS = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS);\n WEBGL_INFO.MAX_VERTEX_ATTRIBS = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);\n WEBGL_INFO.MAX_VERTEX_UNIFORM_VECTORS = gl.getParameter(gl.MAX_VERTEX_UNIFORM_VECTORS);\n WEBGL_INFO.MAX_FRAGMENT_UNIFORM_VECTORS = gl.getParameter(gl.MAX_FRAGMENT_UNIFORM_VECTORS);\n WEBGL_INFO.MAX_VARYING_VECTORS = gl.getParameter(gl.MAX_VARYING_VECTORS);\n // @ts-ignore\n gl.getSupportedExtensions().forEach(function (ext: any) {\n WEBGL_INFO.SUPPORTED_EXTENSIONS[ext] = true;\n });\n WEBGL_INFO.depthTexturesSupported = WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"];\n }\n}\n\nexport {WEBGL_INFO};", "import type {View, Viewer} from \"@xeokit/viewer\";\nimport {type WebGLAbstractTexture, WebGLDataTexture, WEBGL_INFO} from \"@xeokit/webglutils\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {WebGLRenderer} from \"./WebGLRenderer\";\n\n/**\n * @private\n */\nexport class RenderContext {\n\n /**\n * The Viewer.\n */\n public viewer: Viewer;\n\n /**\n * @private\n */\n public rendererSets: {};\n\n /**\n * The View we are rendering.\n */\n public view: View;\n\n /**\n * The WebGL rendering context.\n */\n public gl: WebGL2RenderingContext;\n\n public viewMatrixDataTexture: WebGLDataTexture;\n\n /**\n * Whether to render a quality representation for triangle surfaces.\n *\n * When ````false````, we'll render them with a fast vertex-shaded Gouraud-shaded representation, which\n * is great for zillions of objects.\n *\n * When ````true````, we'll render them at a better visual quality, using smooth, per-fragment shading\n * and a more realistic lighting model.\n */\n public pbrEnabled: boolean;\n\n /**\n * Whether SAO is currently enabled during the current frame.\n */\n public withSAO: boolean;\n\n /**\n * Whether backfaces are currently enabled during the current frame.\n */\n public backfaces: boolean;\n\n /**\n * The vertex winding order for what we currently consider to be a backface during current\n * frame: true == \"cw\", false == \"ccw\".\n */\n public frontface: boolean;\n\n /**\n * The next available texture unit to bind a {@link WebGLAbstractTexture} to.\n */\n public textureUnit: number;\n\n /**\n * Statistic that counts how many times ````gl.bindTexture()```` has been called so far within the current frame.\n */\n public bindTexture: number;\n\n /**\n * Indicates which pass the renderers is currently rendering.\n */\n public renderPass: number;\n\n /**\n * The 4x4 viewing transform matrix the renderers is currently using when rendering castsShadows.\n *\n * This sets the viewpoint to look from the point of view of each {@link DirLight}\n * or {@link PointLight} that casts a shadow.\n */\n public shadowViewMatrix: any;\n\n /**\n * The 4x4 viewing projection matrix the renderers is currently using when rendering shadows.\n */\n public shadowProjMatrix: any;\n\n /**\n * The 4x4 viewing transform matrix the renderers is currently using when rendering a ray-pick.\n *\n * This sets the viewpoint to look along the ray given to {@link @xeokit/scene!Scene/pick:method\"}}Scene#pick(){{/crossLink}}\n * when picking with a ray.\n */\n public pickViewMatrix: any;\n\n /**\n * The 4x4 orthographic projection transform matrix the renderers is currently using when rendering a ray-pick.\n */\n public pickProjMatrix: any;\n\n /**\n * Distance to the near clipping plane when rendering depth fragments for GPU-accelerated 3D picking.\n */\n public pickZNear: number;\n\n /**\n * Distance to the far clipping plane when rendering depth fragments for GPU-accelerated 3D picking.\n */\n public pickZFar: number;\n\n /**\n * Whether or not the renderers is currently picking invisible objects.\n */\n public pickInvisible: boolean;\n\n /** The current line width.\n */\n public lineWidth: number;\n\n /**\n * ID of the last {@link WebGLProgram} that was bound during the current frame.\n */\n public lastProgramId: number;\n\n /**\n * The occlusion rendering texture.\n */\n public occlusionTexture: WebGLAbstractTexture | null;\n\n public pickClipPos: FloatArrayParam;\n\n public webglRenderer: WebGLRenderer;\n\n constructor(viewer: Viewer, gl: WebGL2RenderingContext, webglRenderer: WebGLRenderer) {\n this.viewer = viewer;\n this.view = null;\n this.gl = gl;\n this.webglRenderer = webglRenderer;\n this.reset();\n }\n\n /**\n * Called by the renderers before each frame.\n */\n reset() {\n this.lastProgramId = -1;\n this.pbrEnabled = false;\n this.withSAO = false;\n this.backfaces = false;\n this.frontface = true;\n this.textureUnit = 0;\n this.shadowViewMatrix = null;\n this.shadowProjMatrix = null;\n this.pickViewMatrix = null;\n this.pickProjMatrix = null;\n this.pickZNear = 0.01;\n this.pickZFar = 5000;\n this.pickInvisible = false;\n this.lineWidth = 1;\n this.occlusionTexture = null;\n }\n\n /**\n * Gets the next available texture unit for this render\n */\n get nextTextureUnit() {\n const textureUnit = this.textureUnit;\n this.textureUnit = (this.textureUnit + 1) % WEBGL_INFO.MAX_TEXTURE_UNITS;\n return textureUnit;\n }\n}\n", "import type {SceneGeometry, RendererGeometry} from \"@xeokit/scene\";\n\n/**\n * @private\n */\nexport class WebGLRendererGeometry implements RendererGeometry {\n\n constructor() {\n }\n}", "import type {RendererTexture, SceneTexture} from \"@xeokit/scene\";\nimport type {WebGLTexture} from \"@xeokit/webglutils\";\n\n/**\n * @private\n */\nexport class WebGLRendererTexture implements RendererTexture {\n\n texture: SceneTexture | null;\n texture2D: WebGLTexture;\n\n constructor(texture: SceneTexture | null, texture2D: WebGLTexture) {\n this.texture = texture\n this.texture2D = texture2D;\n }\n\n destroy() {\n if (this.texture2D) {\n this.texture2D.destroy();\n }\n }\n}\n", "\n/**\n * @private\n */\nexport const SCENE_OBJECT_FLAGS = {\n VISIBLE: 1,\n CULLED: 1 << 2,\n PICKABLE: 1 << 3,\n CLIPPABLE: 1 << 4,\n COLLIDABLE: 1 << 5,\n CAST_SHADOW: 1 << 6,\n RECEIVE_SHADOW: 1 << 7,\n XRAYED: 1 << 8,\n HIGHLIGHTED: 1 << 9,\n SELECTED: 1 << 10,\n BACKFACES: 1 << 11,\n TRANSPARENT: 1 << 12\n};\n", "import {createAABB3} from \"@xeokit/boundaries\";\nimport {createVec3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {SCENE_OBJECT_FLAGS} from './SCENE_OBJECT_FLAGS';\nimport type {WebGLRendererMesh} from \"./WebGLRendererMesh\";\nimport type {RendererModel, RendererObject} from \"@xeokit/scene\";\n\nconst tempIntRGB = new Uint16Array([0, 0, 0]);\n\n/**\n * @private\n */\nexport class WebGLRendererObject implements RendererObject {\n\n readonly id: string;\n readonly rendererModel: RendererModel;\n readonly layerId: string | null;\n\n readonly rendererMeshes: WebGLRendererMesh[];\n\n #flags: number[];\n #aabb: FloatArrayParam;\n #offsetAABB: FloatArrayParam;\n #offset: FloatArrayParam;\n #colorizeUpdated: boolean;\n #opacityUpdated: boolean;\n\n /**\n * @private\n * @param params\n */\n constructor(params: {\n id: string,\n rendererModel: RendererModel,\n rendererMeshes: WebGLRendererMesh[],\n aabb: any,\n layerId?: string\n }) {\n this.id = params.id;\n this.rendererModel = params.rendererModel;\n this.rendererMeshes = params.rendererMeshes || [];\n\n ///////////////////////////////////\n // FIXME: start off at 1,1,1,1 ?\n ///////////////////////////////////\n\n this.#flags = [0, 0, 0, 0];\n this.#aabb = params.aabb;\n this.#offsetAABB = createAABB3(params.aabb);\n this.#offset = createVec3();\n this.#colorizeUpdated = false;\n this.#opacityUpdated = false;\n\n this.layerId = params.layerId || null;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) { // TODO: tidier way? Refactor?\n this.rendererMeshes[i].setRendererObject(this);\n }\n }\n\n get aabb(): FloatArrayParam {\n return this.#offsetAABB;\n }\n\n setVisible(viewIndex: number, visible: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.VISIBLE) === visible) {\n return;\n }\n this.#flags[viewIndex] = visible ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.VISIBLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.VISIBLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setVisible(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setHighlighted(viewIndex: number, highlighted: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.HIGHLIGHTED) === highlighted) {\n return;\n }\n this.#flags[viewIndex] = highlighted ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.HIGHLIGHTED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.HIGHLIGHTED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setHighlighted(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setXRayed(viewIndex: number, xrayed: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.XRAYED) === xrayed) {\n return;\n }\n this.#flags[viewIndex] = xrayed ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.XRAYED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.XRAYED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setXRayed(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setSelected(viewIndex: number, selected: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.SELECTED) === selected) {\n return;\n }\n this.#flags[viewIndex] = selected ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.SELECTED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.SELECTED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setSelected(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setCulled(viewIndex: number, culled: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.CULLED) === culled) {\n return;\n }\n this.#flags[viewIndex] = culled ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.CULLED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.CULLED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setCulled(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setClippable(viewIndex: number, clippable: boolean): void {\n if ((!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.CLIPPABLE)) === clippable) {\n return;\n }\n this.#flags[viewIndex] = clippable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.CLIPPABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.CLIPPABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setClippable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setCollidable(viewIndex: number, collidable: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.COLLIDABLE) === collidable) {\n return;\n }\n this.#flags[viewIndex] = collidable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.COLLIDABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.COLLIDABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setCollidable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setPickable(viewIndex: number, pickable: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.PICKABLE) === pickable) {\n return;\n }\n this.#flags[viewIndex] = pickable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.PICKABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.PICKABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setPickable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setColorize(viewIndex: number, color?: FloatArrayParam): void { // [0..1, 0..1, 0..1]\n if (color) {\n tempIntRGB[0] = Math.floor(color[0] * 255.0); // Quantize\n tempIntRGB[1] = Math.floor(color[1] * 255.0);\n tempIntRGB[2] = Math.floor(color[2] * 255.0);\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setColorize(viewIndex, tempIntRGB);\n }\n } else {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setColorize(viewIndex, null);\n }\n }\n }\n\n setOpacity(viewIndex: number, opacity?: number): void {\n if (this.rendererMeshes.length === 0) {\n return;\n }\n // @ts-ignore\n const lastOpacityQuantized = this.rendererMeshes[0].colorize[3];\n let opacityQuantized = 255;\n if (opacity !== null && opacity !== undefined) {\n if (opacity < 0) {\n opacity = 0;\n } else if (opacity > 1) {\n opacity = 1;\n }\n opacityQuantized = Math.floor(opacity * 255.0); // Quantize\n // @ts-ignore\n if (lastOpacityQuantized === opacityQuantized) {\n return;\n }\n } else {\n opacityQuantized = 255.0;\n // @ts-ignore\n if (lastOpacityQuantized === opacityQuantized) {\n return;\n }\n }\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setOpacity(viewIndex, opacityQuantized, this.#flags[viewIndex]);\n }\n }\n\n setOffset(viewIndex: number, offset: FloatArrayParam): void {\n // TODO\n }\n\n initFlags(viewIndex: number): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].initFlags(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n commitRendererState(viewIndex: number): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].commitRendererState(viewIndex);\n }\n }\n\n destroy(): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].destroy();\n }\n }\n}\n", "import type {RendererGeometry, RendererMesh, RendererObject, RendererTextureSet, SceneObject} from \"@xeokit/scene\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createAABB3} from \"@xeokit/boundaries\";\n\nimport type {RenderContext} from \"./RenderContext\";\nimport type {Pickable} from \"./Pickable\";\nimport {createMat4, mulMat4, transformPoint3, translationMat4c} from \"@xeokit/matrix\";\nimport type {Tile, WebGLTileManager} from \"./WebGLTileManager\";\nimport {Layer} from \"./Layer\";\n\nconst tempMat4a = createMat4();\nconst tempMat4b = createMat4();\n\n/**\n * @private\n */\nexport class WebGLRendererMesh implements RendererMesh, Pickable {\n\n id: string;\n color: FloatArrayParam;\n rendererGeometry: RendererGeometry;\n rendererTextureSet: RendererTextureSet;\n matrix: FloatArrayParam;\n opacity: number;\n pickId: number;\n tileManager: WebGLTileManager;\n tile: Tile;\n rendererObject: RendererObject | null;\n aabb: FloatArrayParam;\n layer: Layer;\n meshIndex: number;\n colorize: FloatArrayParam[];\n colorizing: boolean[];\n transparent: boolean[];\n attribs: any;\n\n constructor(params: {\n tileManager: WebGLTileManager,\n layer: Layer,\n id: string,\n matrix: FloatArrayParam;\n color: FloatArrayParam,\n opacity: number,\n rendererTextureSet: RendererTextureSet\n rendererGeometry: RendererGeometry,\n meshIndex: number\n }) {\n this.rendererObject = null;\n this.tileManager = params.tileManager;\n this.id = params.id;\n this.pickId = 0;\n this.attribs = [];\n this.color = [params.color[0], params.color[1], params.color[2], params.opacity]; // [0..255]\n for (let i = 0; i < 4; i++) {\n this.attribs.push({\n colorize: [params.color[0], params.color[1], params.color[2], params.opacity], // [0..255]\n colorizing: false,\n transparent: (params.opacity < 255),\n });\n }\n this.layer = params.layer;\n this.matrix = params.matrix;\n this.opacity = params.opacity;\n this.aabb = createAABB3();\n this.rendererTextureSet = params.rendererTextureSet;\n this.rendererGeometry = params.rendererGeometry;\n this.meshIndex = params.meshIndex;\n }\n\n delegatePickedEntity(): SceneObject {\n throw new Error(\"Method not implemented.\");\n }\n\n setRendererObject(rendererObject: RendererObject) {\n this.rendererObject = rendererObject;\n }\n\n setVisible(viewIndex: number, flags: any) {\n this.layer.setLayerMeshVisible(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setMatrix(matrix: FloatArrayParam): void {\n const center = transformPoint3(matrix, [0, 0, 0]);\n const oldTile = this.tile;\n this.tile = oldTile ? this.tileManager.updateTileCenter(oldTile, center) : this.tileManager.getTile(center);\n const tileChanged = !oldTile || oldTile.id !== this.tile.id;\n const tileCenter = this.tile.center;\n const needRTC = (tileCenter[0] !== 0 || tileCenter[1] !== 0 || tileCenter[2] !== 0);\n this.layer.setLayerMeshMatrix(this.meshIndex, needRTC\n ? mulMat4(matrix, translationMat4c(-tileCenter[0], -tileCenter[1], -tileCenter[2], tempMat4a), tempMat4b)\n : matrix);\n if (tileChanged) {\n // this.layer.setLayerMeshViewMatrixIndex(this.meshIndex, this.tile.index);\n }\n }\n\n setMetallic(metallic: number): void {\n }\n\n setRoughness(roughness: number): void {\n }\n\n setColor(color: FloatArrayParam) {\n const setOpacity = false;\n this.color[0] = color[0];\n this.color[1] = color[1];\n this.color[2] = color[2];\n if (!this.colorizing) {\n for (let viewIndex = 0, len = this.layer.rendererModel.viewer.viewList.length; viewIndex < len; viewIndex++) {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, color, setOpacity);\n }\n }\n }\n\n setColorize(viewIndex: number, colorize: FloatArrayParam | null) {\n const setOpacity = false;\n const attribs = this.attribs[viewIndex];\n const meshColorize = attribs.colorize;\n if (colorize) {\n meshColorize[0] = colorize[0];\n meshColorize[1] = colorize[1];\n meshColorize[2] = colorize[2];\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, meshColorize, setOpacity);\n attribs.colorizing = true;\n } else {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, meshColorize, setOpacity);\n attribs.colorizing = false;\n }\n }\n\n setOpacity(viewIndex: number, opacity: number, flags: number) {\n const setOpacity = true;\n const attribs = this.attribs[viewIndex];\n const newTransparent = (opacity < 255);\n const lastTransparent = attribs.transparent;\n const changingTransparency = (lastTransparent !== newTransparent);\n attribs.color[3] = opacity;\n attribs.colorize[3] = opacity;\n attribs.transparent = newTransparent;\n if (this.colorizing) {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, attribs.colorize, setOpacity);\n } else {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, attribs.color, setOpacity);\n }\n if (changingTransparency) {\n this.layer.setLayerMeshTransparent(viewIndex, this.meshIndex, flags, newTransparent);\n }\n }\n\n setHighlighted(viewIndex: number, flags: number) {\n this.layer.setLayerMeshHighlighted(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setXRayed(viewIndex: number, flags: number) {\n this.layer.setLayerMeshXRayed(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setSelected(viewIndex: number, flags: number) {\n this.layer.setLayerMeshSelected(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setClippable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshClippable(viewIndex, this.meshIndex, flags);\n }\n\n setCollidable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshCollidable(viewIndex, this.meshIndex, flags);\n }\n\n setPickable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshPickable(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setCulled(viewIndex: number, flags: number) {\n this.layer.setLayerMeshCulled(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n canPickTriangle() {\n return false;\n }\n\n drawPickTriangles(drawFlags: any, renderContext: any) {\n // NOP\n }\n\n pickTriangleSurface(pickResult: any) {\n // NOP\n }\n\n canPickWorldPos() {\n return true;\n }\n\n drawPickNormals(renderContext: RenderContext) {\n //this.rendererObject.rendererModel.drawPickNormals(renderContext);\n }\n\n initFlags(viewIndex: number, flags: number) {\n this.layer.initFlags(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n commitRendererState(viewIndex: number) {\n this.layer.commitRendererState(viewIndex);\n }\n\n destroy() {\n if (this.tile && this.tileManager) {\n this.tileManager.putTile(this.tile);\n }\n }\n}\n", "import type { RendererTextureSet} from \"@xeokit/scene\";\nimport type {WebGLRendererTexture} from \"./WebGLRendererTexture\";\n\n/**\n * @private\n */\nexport class WebGLRendererTextureSet implements RendererTextureSet {\n\n public readonly id: string;\n public readonly colorRendererTexture: WebGLRendererTexture;\n public readonly metallicRoughnessRendererTexture: WebGLRendererTexture;\n public readonly emissiveRendererTexture: WebGLRendererTexture;\n public readonly occlusionRendererTexture: WebGLRendererTexture;\n\n constructor(params: {\n id: string;\n colorRendererTexture: WebGLRendererTexture;\n metallicRoughnessRendererTexture: WebGLRendererTexture;\n emissiveRendererTexture: WebGLRendererTexture;\n occlusionRendererTexture: WebGLRendererTexture;\n }) {\n this.id = params.id;\n this.colorRendererTexture = params.colorRendererTexture;\n this.metallicRoughnessRendererTexture = params.metallicRoughnessRendererTexture;\n this.emissiveRendererTexture = params.emissiveRendererTexture;\n this.occlusionRendererTexture = params.occlusionRendererTexture;\n }\n}\n", "\n/**\n * @private\n */\nexport class MeshCounts {\n\n numMeshes: number;\n numVisible: number;\n numTransparent: number;\n numXRayed: number;\n numSelected: number;\n numHighlighted: number;\n numClippable: number;\n numPickable: number;\n numCulled: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.numMeshes = 0;\n this.numVisible = 0;\n this.numTransparent = 0;\n this.numXRayed = 0;\n this.numSelected = 0;\n this.numHighlighted = 0;\n this.numClippable = 0;\n this.numPickable = 0;\n this.numCulled = 0;\n }\n}\n", "/**\n * Indicates what rendering needs to be done for the layers within a {@link Drawable}.\n *\n * Each Drawable has a RenderFlags in {@link Drawable#renderFlags}.\n *\n * Before rendering each frame, {@link Renderer} will call {@link Drawable#rebuildRenderFlags} on each {@link Drawable}.\n *\n * Then, when rendering a frame, Renderer will apply rendering passes to each Drawable according on what flags are set in {@link Drawable#renderFlags}.\n *\n * @private\n */\nclass RenderFlags {\n\n /**\n * Set by {@link Drawable#rebuildRenderFlags} to indicate which layers are visible within the {@link Drawable}.\n *\n * This is a list of IDs of visible layers within the {@link Drawable}. The IDs will be whatever the\n * {@link Drawable} uses to identify its layers, usually integers.\n *\n * @property visibleLayers\n * @type {Number[]}\n */\n visibleLayers: any[];\n\n /**\n * Set by {@link Drawable#rebuildRenderFlags} to indicate which {@link SectionPlane}s are active within each layer of the {@link Drawable}.\n *\n * Layout is as follows:\n *\n * ````[\n * false, false, true, // Layer 0, SectionPlanes 0, 1, 2\n * false, true, true, // Layer 1, SectionPlanes 0, 1, 2\n * true, false, true // Layer 2, SectionPlanes 0, 1, 2\n * ]````\n *\n * @property sectionPlanesActivePerLayer\n * @type {Boolean[]}\n */\n sectionPlanesActivePerLayer: any[];\n culled: boolean;\n sectioned: boolean;\n numLayers: number;\n numVisibleLayers: number;\n colorOpaque: boolean;\n colorTransparent: boolean;\n edgesOpaque: boolean;\n edgesTransparent: boolean;\n xrayedSilhouetteOpaque: boolean;\n xrayedEdgesOpaque: boolean;\n xrayedSilhouetteTransparent: boolean;\n xrayedEdgesTransparent: boolean;\n highlightedSilhouetteOpaque: boolean;\n highlightedEdgesOpaque: boolean;\n highlightedSilhouetteTransparent: boolean;\n highlightedEdgesTransparent: boolean;\n selectedSilhouetteOpaque: boolean;\n selectedEdgesOpaque: boolean;\n selectedSilhouetteTransparent: boolean;\n selectedEdgesTransparent: boolean;\n\n /**\n * @private\n */\n constructor() {\n this.visibleLayers = [];\n this.sectionPlanesActivePerLayer = [];\n this.reset();\n }\n\n /**\n * @private\n */\n reset() {\n this.culled = false;\n this.sectioned = false;\n this.numLayers = 0;\n this.numVisibleLayers = 0;\n this.colorOpaque = false;\n this.colorTransparent = false;\n this.edgesOpaque = false;\n this.edgesTransparent = false;\n this.xrayedSilhouetteOpaque = false;\n this.xrayedEdgesOpaque = false;\n this.xrayedSilhouetteTransparent = false;\n this.xrayedEdgesTransparent = false;\n this.highlightedSilhouetteOpaque = false;\n this.highlightedEdgesOpaque = false;\n this.highlightedSilhouetteTransparent = false;\n this.highlightedEdgesTransparent = false;\n this.selectedSilhouetteOpaque = false;\n this.selectedEdgesOpaque = false;\n this.selectedSilhouetteTransparent = false;\n this.selectedEdgesTransparent = false;\n }\n}\n\nexport {RenderFlags};\n", "\n/**\n * @private\n */\nexport class VBOBatchingBuffer {\n\n maxVerts: number;\n maxIndices: number;\n positions: number[];\n colors: number[];\n uv: number[];\n normals: number[];\n pickColors: number[];\n offsets: number[];\n indices: number[];\n edgeIndices: number[];\n\n constructor(maxGeometryBatchSize: number = 400000) {\n if (maxGeometryBatchSize > 400000) {\n maxGeometryBatchSize = 400000;\n }\n this.maxVerts = maxGeometryBatchSize;\n this.maxIndices = maxGeometryBatchSize\n this.positions = [];\n this.colors = [];\n this.uv = [];\n this.normals = [];\n this.pickColors = [];\n this.offsets = [];\n this.indices = [];\n this.edgeIndices = [];\n }\n}\n\n", "\n/**\n * @private\n */\nexport const RENDER_PASSES = {\n\n // Skipped - suppress rendering\n\n NOT_RENDERED: 0,\n\n // Normal rendering - mutually exclusive modes\n\n COLOR_OPAQUE: 1,\n COLOR_TRANSPARENT: 2,\n\n // Accents silhouette rendering - mutually exclusive modes\n\n SILHOUETTE_HIGHLIGHTED: 3,\n SILHOUETTE_SELECTED: 4,\n SILHOUETTE_XRAYED: 5,\n\n // Picking\n\n PICK: 6\n};\n\n", "/**\n * Provides scratch memory for methods like TrianglesBatchingLayer setFlags() and setColors(),\n * so they don't need to allocate temporary arrays that need garbage collection.\n *\n * @private\n */\nclass ScratchMemory {\n #uint8Arrays: {};\n #float32Arrays: {};\n\n constructor() {\n this.#uint8Arrays = {};\n this.#float32Arrays = {};\n }\n\n _clear(): void {\n this.#uint8Arrays = {};\n this.#float32Arrays = {};\n }\n\n getUInt8Array(len: number): Uint8Array {\n let uint8Array = this.#uint8Arrays[len];\n if (!uint8Array) {\n uint8Array = new Uint8Array(len);\n this.#uint8Arrays[len] = uint8Array;\n }\n return uint8Array;\n }\n\n getFloat32Array(len: number): Float32Array {\n let float32Array = this.#float32Arrays[len];\n if (!float32Array) {\n float32Array = new Float32Array(len);\n this.#float32Arrays[len] = float32Array;\n }\n return float32Array;\n }\n}\n\nconst batchingLayerScratchMemory = new ScratchMemory();\n\nlet countUsers = 0;\n\n/**\n * @private\n */\nfunction getScratchMemory(): ScratchMemory {\n countUsers++;\n return batchingLayerScratchMemory;\n}\n\n/**\n * @private\n */\nfunction putScratchMemory(): void {\n if (countUsers === 0) {\n return;\n }\n countUsers--;\n if (countUsers === 0) {\n batchingLayerScratchMemory._clear();\n }\n}\n\nexport {getScratchMemory, putScratchMemory};\n", "import {Layer} from \"../../Layer\";\nimport {WebGLRendererModel} from \"../../WebGLRendererModel\";\nimport {MeshCounts} from \"../../MeshCounts\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat3, createVec3, createVec4, identityMat4, transformPoint4} from \"@xeokit/matrix\";\nimport {collapseAABB3, expandAABB3, positions3ToAABB3} from \"@xeokit/boundaries\";\nimport {SDKError} from \"@xeokit/core\";\nimport {LayerMeshParams} from \"../../LayerMeshParams\";\nimport {SceneGeometry, SceneMesh} from \"@xeokit/scene\";\nimport {VBOBatchingBuffer} from \"./VBOBatchingBuffer\";\nimport {VBOBatchingRenderState} from \"./VBOBatchingRenderState\";\n\nimport {SCENE_OBJECT_FLAGS} from \"../../SCENE_OBJECT_FLAGS\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\nimport {WebGLArrayBuf} from \"@xeokit/webglutils\";\nimport {RenderContext} from \"../../RenderContext\";\nimport {getScratchMemory, putScratchMemory} from \"../ScratchMemory\";\nimport {VBOBatchingLayerParams} from \"./VBOBatchingLayerParams\";\n\nimport {compressUVs, decompressPoint3WithAABB3, getUVBounds, quantizePositions3} from \"@xeokit/compression\";\nimport {VBORendererSet} from \"../VBORendererSet\";\n\nlet numLayers = 0;\n\nconst tempVec3a = createVec3();\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\n/**\n * @private\n */\nexport class VBOBatchingLayer implements Layer {\n\n primitive: number;\n rendererModel: WebGLRendererModel;\n layerIndex: number;\n meshCounts: MeshCounts[];\n renderState: VBOBatchingRenderState;\n sortId: string;\n\n #built: boolean;\n #aabb: FloatArrayParam;\n aabbDirty: boolean;\n #meshes: any[]; // A Mesh has multiple SubMeshes\n #layerNumber: number;\n\n #deferredAttributesUpdateEnabled: boolean;\n #deferredMatricesUpdateEnabled: boolean;\n\n #deferredAttributesUpdateDirty: boolean;\n #deferredMatricesUpdateDirty: boolean;\n\n #countAttributesUpdateInFrame: number;\n #countMatricesUpdateInFrame: number;\n\n #onViewerTick: () => void;\n #scratchMemory: any;\n #buffer: VBOBatchingBuffer;\n renderContext: RenderContext;\n #portions: number[];\n #rendererSet: VBORendererSet;\n\n constructor(vBOBatchingLayerParams: VBOBatchingLayerParams, rendererSet: VBORendererSet) {\n\n this.renderContext = vBOBatchingLayerParams.renderContext;\n this.primitive = vBOBatchingLayerParams.primitive;\n this.rendererModel = vBOBatchingLayerParams.rendererModel;\n this.layerIndex = vBOBatchingLayerParams.layerIndex;\n this.sortId = `VBOBatchingLayer-${vBOBatchingLayerParams.primitive}`;\n\n this.meshCounts = [];\n for (let i =0, len = this.renderContext.viewer.viewList.length; i < len; i++) {\n this.meshCounts.push(new MeshCounts());\n }\n\n this.#layerNumber = numLayers++;\n this.#portions = [];\n this.#buffer = new VBOBatchingBuffer();\n this.#scratchMemory = getScratchMemory();\n this.#rendererSet = rendererSet;\n this.#built = false;\n this.#aabb = collapseAABB3(); // Model-space AABB\n this.aabbDirty = true;\n\n this.renderState = {\n numVertices: 0,\n positionsBuf: null,\n indicesBuf: null,\n offsetsBuf: null,\n colorsBuf: [],\n flagsBufs: [],\n positionsDecompressScale: createVec3(),\n positionsDecompressOffset: createVec3(),\n origin: createVec3(vBOBatchingLayerParams.origin),\n pbrSupported: false\n };\n }\n\n get hash() {\n return `${this.primitive}`;\n }\n\n get aabb() {\n if (this.aabbDirty) {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.#meshes.length; i < len; i++) {\n expandAABB3(this.#aabb, this.#meshes[i].aabb);\n }\n this.aabbDirty = false;\n }\n return this.#aabb;\n }\n\n canCreateLayerMesh(sceneGeometry: SceneGeometry): boolean {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const numVertices = sceneGeometry.positionsCompressed.length;\n const numIndices = sceneGeometry.indices ? sceneGeometry.indices.length : 0;\n return ((this.#buffer.positions.length + numVertices) < (this.#buffer.maxVerts)\n && (this.#buffer.indices.length + numIndices) < (this.#buffer.maxIndices));\n }\n\n createLayerMesh(layerMeshParams: LayerMeshParams, sceneMesh: SceneMesh): number {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const geometry = sceneMesh.geometry;\n const color = sceneMesh.color;\n const pickColor = layerMeshParams.pickColor;\n const buffer = this.#buffer;\n const positionsIndex = buffer.positions.length;\n const vertsIndex = positionsIndex / 3;\n const indices = geometry.indices;\n const edgeIndices = geometry.edgeIndices;\n const positionsCompressed = geometry.positionsCompressed;\n const uvCompressed = geometry.uvsCompressed;\n const geometryAABB = geometry.aabb;\n const colorsCompressed = geometry.colorsCompressed;\n const numGeometryVerts = positionsCompressed.length / 3;\n let numLayerVerts = buffer.positions.length / 3;\n let numLayerMeshVerts = 0;\n if (!positionsCompressed) {\n throw \"positionsCompressed expected\";\n }\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i++) {\n buffer.indices.push(numLayerVerts + indices[i]);\n }\n }\n if (edgeIndices) {\n for (let i = 0, len = edgeIndices.length; i < len; i++) {\n buffer.edgeIndices.push(numLayerVerts + edgeIndices[i]);\n }\n }\n for (let k = 0, lenk = positionsCompressed.length; k < lenk; k += 3) {\n tempVec3a[0] = positionsCompressed[k];\n tempVec3a[1] = positionsCompressed[k + 1];\n tempVec3a[2] = positionsCompressed[k + 2];\n decompressPoint3WithAABB3(tempVec3a, geometryAABB, tempVec4a);\n if (sceneMesh.rtcMatrix) {\n tempVec4a[3] = 1.0;\n transformPoint4(sceneMesh.rtcMatrix, tempVec4a, tempVec4b);\n buffer.positions.push(tempVec4b[0]);\n buffer.positions.push(tempVec4b[1]);\n buffer.positions.push(tempVec4b[2]);\n } else {\n buffer.positions.push(tempVec4a[0]);\n buffer.positions.push(tempVec4a[1]);\n buffer.positions.push(tempVec4a[2]);\n }\n }\n if (colorsCompressed) {\n for (let i = 0, len = colorsCompressed.length; i < len; i++) {\n buffer.colors.push(colorsCompressed[i]);\n }\n }\n if (uvCompressed && uvCompressed.length > 0) {\n for (let i = 0, len = uvCompressed.length; i < len; i++) {\n buffer.uv.push(uvCompressed[i]);\n }\n }\n numLayerVerts += numGeometryVerts;\n numLayerMeshVerts += numGeometryVerts;\n if (color) {\n const r = color[0] * 255;\n const g = color[1] * 255;\n const b = color[2] * 255;\n const a = 255;\n for (let i = 0; i < numLayerMeshVerts; i++) {\n buffer.colors.push(r);\n buffer.colors.push(g);\n buffer.colors.push(b);\n buffer.colors.push(a);\n }\n }\n for (let i = 0, len = numLayerMeshVerts; i < len; i += 4) {\n buffer.pickColors.push(...pickColor);\n }\n const layerMeshIndex = this.#portions.length / 2;\n this.#portions.push(vertsIndex);\n this.#portions.push(numLayerVerts);\n for (let viewIndex = 0, len = this.meshCounts.length; viewIndex < len; viewIndex++) {\n this.meshCounts[viewIndex].numMeshes++;\n this.rendererModel.meshCounts[viewIndex].numMeshes++;\n }\n return layerMeshIndex;\n }\n\n /**\n * Builds batch VBOs from appended geometries.\n * No more portions can then be created.\n */\n build() {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const renderState = this.renderState;\n const gl = this.renderContext.gl;\n const buffer = this.#buffer;\n const numViews = this.meshCounts.length;\n if (buffer.positions.length > 0) {\n const positions = new Float32Array(buffer.positions);\n positions3ToAABB3(positions, this.#aabb, null);\n const quantizedPositions = quantizePositions3(positions, this.#aabb);\n renderState.positionsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, quantizedPositions, buffer.positions.length, 3, gl.STATIC_DRAW);\n // @ts-ignore\n renderState.positionsDecompressOffset.set([this.#aabb[0], this.#aabb[1], this.#aabb[2]]);\n // @ts-ignore\n renderState.positionsDecompressScale.set([\n (this.#aabb[3] - this.#aabb[0]) / 65535,\n (this.#aabb[4] - this.#aabb[1]) / 65535,\n (this.#aabb[5] - this.#aabb[2]) / 65535]);\n }\n if (buffer.colors.length > 0) {\n const colors = new Uint8Array(buffer.colors);\n let normalized = false;\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.colorsBuf[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, colors, buffer.colors.length, 4, gl.STATIC_DRAW, normalized);\n }\n }\n if (buffer.positions.length > 0) { // Because we build flags arrays here, get their length from the positions array\n const flagsLength = buffer.positions.length / 3;\n const flags = new Float32Array(flagsLength);\n let notNormalized = false;\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.flagsBufs[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, flags, flags.length, 1, gl.DYNAMIC_DRAW, notNormalized);\n }\n }\n if (buffer.pickColors.length > 0) {\n const pickColors = new Uint8Array(buffer.pickColors);\n let normalized = false;\n renderState.pickColorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, pickColors, buffer.pickColors.length, 4, gl.STATIC_DRAW, normalized);\n }\n if (buffer.indices.length > 0) {\n const indices = new Uint32Array(buffer.indices);\n renderState.indicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, indices, buffer.indices.length, 1, gl.STATIC_DRAW);\n }\n if (buffer.edgeIndices.length > 0) {\n const edgeIndices = new Uint32Array(buffer.edgeIndices);\n renderState.edgeIndicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, edgeIndices, buffer.edgeIndices.length, 1, gl.STATIC_DRAW);\n }\n if (buffer.uv.length > 0) {\n if (!renderState.uvDecodeMatrix) {\n const bounds = getUVBounds(buffer.uv);\n const result = compressUVs(buffer.uv, bounds.min, bounds.max);\n const uv = result.quantized;\n let notNormalized = false;\n renderState.uvDecodeMatrix = createMat3(result.decompressMatrix);\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, uv, uv.length, 2, gl.STATIC_DRAW, notNormalized);\n } else {\n let notNormalized = false;\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, buffer.uv, buffer.uv.length, 2, gl.STATIC_DRAW, notNormalized);\n }\n }\n this.renderState.pbrSupported\n = !!renderState.metallicRoughnessBuf\n && !!renderState.uvBuf\n && !!renderState.normalsBuf\n && !!renderState.textureSet\n && !!renderState.textureSet.colorTexture\n && !!renderState.textureSet.metallicRoughnessTexture;\n this.renderState.colorTextureSupported\n = !!renderState.uvBuf\n && !!renderState.textureSet\n && !!renderState.textureSet.colorTexture;\n this.#buffer = null;\n this.#built = true;\n }\n\n initFlags(viewIndex: number, layerMeshIndex: number, flags: number, meshTransparent: boolean) {\n const layerMeshCounts = this.meshCounts[viewIndex];\n const modelMeshCounts = this.rendererModel.meshCounts[viewIndex];\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n layerMeshCounts.numVisible++;\n modelMeshCounts.numVisible++;\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n layerMeshCounts.numHighlighted++;\n modelMeshCounts.numHighlighted++;\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n layerMeshCounts.numXRayed++;\n modelMeshCounts.numXRayed++;\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n layerMeshCounts.numSelected++;\n modelMeshCounts.numSelected++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n layerMeshCounts.numClippable++;\n modelMeshCounts.numClippable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n layerMeshCounts.numPickable++;\n modelMeshCounts.numPickable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n layerMeshCounts.numCulled++;\n modelMeshCounts.numCulled++;\n }\n if (meshTransparent) {\n layerMeshCounts.numTransparent++;\n modelMeshCounts.numTransparent++;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, meshTransparent);\n }\n\n setLayerMeshVisible(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n this.meshCounts[viewIndex].numVisible++;\n this.rendererModel.meshCounts[viewIndex].numVisible++;\n } else {\n this.meshCounts[viewIndex].numVisible--;\n this.rendererModel.meshCounts[viewIndex].numVisible--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshHighlighted(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n this.meshCounts[viewIndex].numHighlighted++;\n this.rendererModel.meshCounts[viewIndex].numHighlighted++;\n } else {\n this.meshCounts[viewIndex].numHighlighted--;\n this.rendererModel.meshCounts[viewIndex].numHighlighted--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshXRayed(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n this.meshCounts[viewIndex].numXRayed++;\n this.rendererModel.meshCounts[viewIndex].numXRayed++;\n } else {\n this.meshCounts[viewIndex].numXRayed--;\n this.rendererModel.meshCounts[viewIndex].numXRayed--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshSelected(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n this.meshCounts[viewIndex].numSelected++;\n this.rendererModel.meshCounts[viewIndex].numSelected++;\n } else {\n this.meshCounts[viewIndex].numSelected--;\n this.rendererModel.meshCounts[viewIndex].numSelected--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshClippable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n this.meshCounts[viewIndex].numClippable++;\n this.rendererModel.meshCounts[viewIndex].numClippable++;\n } else {\n this.meshCounts[viewIndex].numClippable--;\n this.rendererModel.meshCounts[viewIndex].numClippable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags);\n }\n\n setLayerMeshCulled(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n this.meshCounts[viewIndex].numCulled++;\n this.rendererModel.meshCounts[viewIndex].numCulled++;\n } else {\n this.meshCounts[viewIndex].numCulled--;\n this.rendererModel.meshCounts[viewIndex].numCulled--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshCollidable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshPickable(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n this.meshCounts[viewIndex].numPickable++;\n this.rendererModel.meshCounts[viewIndex].numPickable++;\n } else {\n this.meshCounts[viewIndex].numPickable--;\n this.rendererModel.meshCounts[viewIndex].numPickable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshColor(viewIndex: number, layerMeshIndex: number, color: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n const portionsIdx = layerMeshIndex * 2;\n const vertexBase = this.#portions[portionsIdx];\n const numVerts = this.#portions[portionsIdx + 1];\n const firstColor = vertexBase * 4;\n const lenColor = numVerts * 4;\n const tempArray = this.#scratchMemory.getUInt8Array(lenColor);\n const r = color[0];\n const g = color[1];\n const b = color[2];\n for (let i = 0; i < lenColor; i += 4) {\n tempArray[i + 0] = r;\n tempArray[i + 1] = g;\n tempArray[i + 2] = b;\n }\n this.renderState.colorsBuf[viewIndex].setData(tempArray, firstColor);\n }\n\n setLayerMeshTransparent(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (transparent) {\n this.meshCounts[viewIndex].numTransparent++;\n this.rendererModel.meshCounts[viewIndex].numTransparent++;\n } else {\n this.meshCounts[viewIndex].numTransparent--;\n this.rendererModel.meshCounts[viewIndex].numTransparent--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshFlags(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean = false): void {\n\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n\n const view = this.renderContext.viewer.viewList[viewIndex];\n\n const portionsIdx = layerMeshIndex * 2;\n const vertexBase = this.#portions[portionsIdx];\n const numVerts = this.#portions[portionsIdx + 1];\n const firstFlag = vertexBase;\n const lenFlags = numVerts - vertexBase;\n const tempArray = this.#scratchMemory.getFloat32Array(lenFlags);\n\n const visible = !!(flags & SCENE_OBJECT_FLAGS.VISIBLE);\n const xrayed = !!(flags & SCENE_OBJECT_FLAGS.XRAYED);\n const highlighted = !!(flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED);\n const selected = !!(flags & SCENE_OBJECT_FLAGS.SELECTED);\n const pickable = !!(flags & SCENE_OBJECT_FLAGS.PICKABLE);\n const culled = !!(flags & SCENE_OBJECT_FLAGS.CULLED);\n\n let colorFlag;\n if (!visible || culled || xrayed\n || (highlighted && !view.highlightMaterial.glowThrough)\n || (selected && !view.selectedMaterial.glowThrough)) {\n colorFlag = RENDER_PASSES.NOT_RENDERED;\n } else {\n if (transparent) {\n colorFlag = RENDER_PASSES.COLOR_TRANSPARENT;\n } else {\n colorFlag = RENDER_PASSES.COLOR_OPAQUE;\n }\n }\n\n let silhouetteFlag;\n if (!visible || culled) {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n } else if (selected) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_SELECTED;\n } else if (highlighted) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_HIGHLIGHTED;\n } else if (xrayed) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_XRAYED;\n } else {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n }\n\n let pickFlag = (visible && !culled && pickable) ? RENDER_PASSES.PICK : RENDER_PASSES.NOT_RENDERED;\n\n const clippableFlag = !!(flags & SCENE_OBJECT_FLAGS.CLIPPABLE) ? 1 : 0;\n\n for (let i = 0; i < lenFlags; i++) {\n let vertFlag = 0;\n vertFlag |= colorFlag;\n vertFlag |= silhouetteFlag << 4;\n vertFlag |= pickFlag << 8;\n vertFlag |= clippableFlag << 12;\n tempArray[i] = vertFlag;\n }\n\n this.renderState.flagsBufs[viewIndex].setData(tempArray, firstFlag);\n }\n\n setLayerMeshMatrix(layerMeshIndex: number, matrix: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshOffset(viewIndex: number, layerMeshIndex: number, offset: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n drawColorOpaque() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawColorTranslucent() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0 ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawDepth() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.depthRenderer) {\n // this.#rendererSet.depthRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses depth (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawNormals() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.normalsRenderer) {\n // this.#rendererSet.normalsRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses normals (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawSilhouetteXRayed() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawSilhouetteHighlighted() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawSilhouetteSelected() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesColorOpaque() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawEdgesColorTranslucent() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawEdgesHighlighted() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawEdgesSelected() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesXRayed() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawOcclusion() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.occlusionRenderer) {\n this.#rendererSet.occlusionRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawShadow() {\n const viewIndex = this.renderContext.view.viewIndex;\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n // this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.shadowRenderer) {\n // this.#rendererSet.shadowRenderer.render( this, RENDER_PASSES.COLOR_OPAQUE);\n // }\n }\n\n drawPickMesh() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickMeshRenderer) {\n this.#rendererSet.pickMeshRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickDepths() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickDepthRenderer) {\n this.#rendererSet.pickDepthRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnapInit() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapInitRenderer) {\n this.#rendererSet.snapInitRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnap() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapRenderer) {\n this.#rendererSet.snapRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickNormals() {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.pickNormalsRenderer) {\n // this.#rendererSet.pickNormalsRenderer.render( this, RENDER_PASSES.PICK);\n // }\n }\n\n destroy() {\n const renderState = this.renderState;\n if (renderState.positionsBuf) {\n renderState.positionsBuf.destroy();\n renderState.positionsBuf = null;\n }\n if (renderState.offsetsBuf) {\n renderState.offsetsBuf.destroy();\n renderState.offsetsBuf = null;\n }\n for (let viewIndex = 0, len = renderState.colorsBuf.length; viewIndex < len; viewIndex++) {\n if (renderState.colorsBuf[viewIndex]) {\n renderState.colorsBuf[viewIndex].destroy();\n renderState.colorsBuf[viewIndex] = null;\n }\n }\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.flagsBufs[viewIndex]) {\n renderState.flagsBufs[viewIndex].destroy();\n renderState.flagsBufs[viewIndex] = null;\n }\n }\n if (renderState.pickColorsBuf) {\n renderState.pickColorsBuf.destroy();\n renderState.pickColorsBuf = null;\n }\n if (renderState.uvBuf) {\n renderState.uvBuf.destroy();\n renderState.uvBuf = null;\n }\n if (renderState.indicesBuf) {\n renderState.indicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n if (renderState.edgeIndicesBuf) {\n renderState.edgeIndicesBuf.destroy();\n renderState.edgeIndicesBuf = null;\n }\n //renderState.destroy();\n putScratchMemory();\n }\n\n commitRendererState(viewIndex: number): void {\n }\n\n isEmpty(): boolean {\n return false;\n }\n\n\n}\n", "import {WebGLAttribute, WebGLProgram} from \"@xeokit/webglutils\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {AmbientLight, DirLight, PointLight} from \"@xeokit/viewer\";\nimport {RenderContext} from \"../RenderContext\";\nimport {RENDER_PASSES} from \"../RENDER_PASSES\";\nimport {VBOInstancingLayer} from \"./instancing/VBOInstancingLayer\";\nimport {VBOBatchingLayer} from \"./batching/VBOBatchingLayer\";\n\nconst defaultColor = new Float32Array([1, 1, 1, 1]);\n\nfunction joinSansComments(srcLines) {\n const src = [];\n let line;\n let n;\n for (let i = 0, len = srcLines.length; i < len; i++) {\n line = srcLines[i];\n n = line.indexOf(\"/\");\n if (n > 0) {\n if (line.charAt(n + 1) === \"/\") {\n line = line.substring(0, n);\n }\n }\n src.push(line);\n }\n return src.join(\"\\n\");\n}\n\n/**\n * @private\n */\nexport abstract class VBORenderer {\n\n renderContext: RenderContext;\n hash: string;\n program: WebGLProgram | null;\n errors: string[];\n edges: boolean;\n\n #needRebuild: boolean;\n\n uniforms: {\n pointCloudIntensityRange: WebGLUniformLocation;\n nearPlaneHeight: WebGLUniformLocation;\n silhouetteColor: WebGLUniformLocation;\n gammaFactor: WebGLUniformLocation;\n pickZNear: WebGLUniformLocation;\n renderPass: WebGLUniformLocation;\n snapCameraEyeRTC: WebGLUniformLocation;\n pointSize: WebGLUniformLocation;\n intensityRange: WebGLUniformLocation;\n pickZFar: WebGLUniformLocation;\n pickClipPos: WebGLUniformLocation;\n drawingBufferSize: WebGLUniformLocation;\n worldMatrix: WebGLUniformLocation;\n positionsDecompressOffset: WebGLUniformLocation;\n positionsDecompressScale: WebGLUniformLocation;\n sectionPlanes: any[];\n sceneModelMatrix: WebGLUniformLocation;\n projMatrix: WebGLUniformLocation;\n viewMatrix: WebGLUniformLocation;\n lightPos: WebGLUniformLocation[];\n lightDir: WebGLUniformLocation[];\n lightColor: WebGLUniformLocation[];\n lightAttenuation: WebGLUniformLocation[];\n lightAmbient: WebGLUniformLocation;\n };\n\n attributes: {\n color: WebGLAttribute;\n normal: WebGLAttribute;\n intensity: WebGLAttribute;\n flags: WebGLAttribute;\n uv: WebGLAttribute;\n position: WebGLAttribute;\n pickColor: WebGLAttribute;\n modelMatrix: WebGLAttribute;\n modelMatrixCol0: WebGLAttribute;\n modelMatrixCol1: WebGLAttribute;\n modelMatrixCol2: WebGLAttribute;\n };\n\n constructor(renderContext: RenderContext, cfg: { edges: boolean } = {edges: false}) {\n this.renderContext = renderContext;\n this.#needRebuild = true;\n this.edges = cfg.edges;\n this.build();\n }\n\n abstract getHash(): string;\n\n get lambertShadingHash() {\n return this.renderContext.view.getLightsHash();\n }\n\n get slicingHash() {\n return this.renderContext.view.getSectionPlanesHash();\n }\n\n get pointsHash() {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n return `${pointsMaterial.roundPoints}-${pointsMaterial.perspectivePoints}`;\n }\n\n needRebuild() {\n this.#needRebuild = true;\n }\n\n getValid() {\n if (!this.#needRebuild) {\n return true;\n }\n this.#needRebuild = false;\n return this.hash === this.getHash();\n };\n\n build(): void {\n\n const view = this.renderContext.view;\n const gl = this.renderContext.gl;\n\n const vertexSrc = [];\n this.buildVertexShader(vertexSrc)\n\n const fragmentSrc = [];\n this.buildFragmentShader(fragmentSrc)\n\n this.program = new WebGLProgram(gl, {\n vertex: joinSansComments(vertexSrc),\n fragment: joinSansComments(fragmentSrc)\n });\n\n if (this.program.errors) {\n this.errors = this.program.errors;\n return;\n }\n\n const program = this.program;\n\n this.uniforms = {\n renderPass: program.getLocation(\"renderPass\"),\n gammaFactor: program.getLocation(\"gammaFactor\"),\n sceneModelMatrix: program.getLocation(\"sceneModelMatrix\"),\n viewMatrix: program.getLocation(\"viewMatrix\"),\n projMatrix: program.getLocation(\"projMatrix\"),\n worldMatrix: program.getLocation(\"worldMatrix\"),\n positionsDecompressOffset: program.getLocation(\"positionsDecompressOffset\"),\n positionsDecompressScale: program.getLocation(\"positionsDecompressScale\"),\n snapCameraEyeRTC: program.getLocation(\"snapCameraEyeRTC\"),\n pointSize: program.getLocation(\"pointSize\"),\n intensityRange: program.getLocation(\"intensityRange\"),\n nearPlaneHeight: program.getLocation(\"nearPlaneHeight\"),\n pointCloudIntensityRange: program.getLocation(\"pointCloudIntensityRange\"),\n pickZNear: program.getLocation(\"pickZNear\"),\n pickZFar: program.getLocation(\"pickZFar\"),\n pickClipPos: program.getLocation(\"pickClipPos\"),\n drawingBufferSize: program.getLocation(\"drawingBufferSize\"),\n silhouetteColor: program.getLocation(\"silhouetteColor\"),\n sectionPlanes: [],\n lightColor: [],\n lightDir: [],\n lightPos: [],\n lightAttenuation: [],\n lightAmbient: program.getLocation(\"lightAmbient\")\n };\n\n const lights = view.lightsList;\n for (let i = 0, len = lights.length; i < len; i++) {\n const light = lights[i];\n if (light instanceof DirLight) {\n this.uniforms.lightColor[i] = program.getLocation(\"lightColor\" + i);\n this.uniforms.lightPos[i] = null;\n this.uniforms.lightDir[i] = program.getLocation(\"lightDir\" + i);\n break;\n } else {\n this.uniforms.lightColor[i] = program.getLocation(\"lightColor\" + i);\n this.uniforms.lightPos[i] = program.getLocation(\"lightPos\" + i);\n this.uniforms.lightDir[i] = null;\n this.uniforms.lightAttenuation[i] = program.getLocation(\"lightAttenuation\" + i);\n }\n }\n\n const uniforms = this.uniforms;\n\n for (let i = 0, len = view.sectionPlanesList.length; i < len; i++) {\n uniforms.sectionPlanes.push({\n active: program.getLocation(\"sectionPlaneActive\" + i),\n pos: program.getLocation(\"sectionPlanePos\" + i),\n dir: program.getLocation(\"sectionPlaneDir\" + i)\n });\n }\n\n this.attributes = {\n position: program.getAttribute(\"position\"),\n normal: program.getAttribute(\"normal\"),\n color: program.getAttribute(\"color\"),\n uv: program.getAttribute(\"uv\"),\n intensity: program.getAttribute(\"intensity\"),\n flags: program.getAttribute(\"flags\"),\n pickColor: program.getAttribute(\"pickColor\"),\n modelMatrix: program.getAttribute(\"modelMatrix\"),\n\n // Instancing\n\n modelMatrixCol0: program.getAttribute(\"modelMatrixCol0\"),\n modelMatrixCol1: program.getAttribute(\"modelMatrixCol1\"),\n modelMatrixCol2: program.getAttribute(\"modelMatrixCol2\")\n }\n\n this.hash = this.getHash();\n\n this.#needRebuild = false;\n }\n\n abstract buildVertexShader(src: string[]);\n\n abstract buildFragmentShader(src: string[]);\n\n vertexHeader(src: string[]) {\n src.push('#version 300 es');\n src.push(\"// vertexHeader\")\n src.push(`// ${this.constructor.name} vertex shader`);\n }\n\n vertexCommonDefs(src: string[]) {\n src.push(\"// ------------------- vertexCommonDefs\")\n src.push(\"in float flags;\");\n src.push(\"uniform int renderPass;\");\n src.push(\"\");\n }\n\n vertexBatchingTransformDefs(src: string[]) {\n src.push(\"// ------------------- vertexBatchingTransformDefs\")\n src.push(\"uniform mat4 viewMatrix;\");\n src.push(\"uniform mat4 projMatrix;\");\n src.push(\"uniform mat4 worldMatrix;\");\n src.push(\"uniform vec3 positionsDecompressOffset;\");\n src.push(\"uniform vec3 positionsDecompressScale;\");\n src.push(\"in vec3 position;\");\n }\n\n vertexInstancingTransformDefs(src: string[]) {\n src.push(\"// ------------------- vertexInstancingTransformDefs\")\n src.push(\"uniform mat4 viewMatrix;\");\n src.push(\"uniform mat4 projMatrix;\");\n src.push(\"uniform mat4 worldMatrix;\");\n src.push(\"uniform vec3 positionsDecompressOffset;\");\n src.push(\"uniform vec3 positionsDecompressScale;\");\n src.push(\"in vec3 position;\");\n src.push(\"in vec4 modelMatrixCol0;\");\n src.push(\"in vec4 modelMatrixCol1;\");\n src.push(\"in vec4 modelMatrixCol2;\");\n }\n\n vertexPickMeshShadingDefs(src: string[]) {\n src.push(\"// ------------------- vertexPickMeshShadingDefs\")\n src.push(\"in vec4 pickColor;\");\n src.push(\"out vec4 vPickColor;\");\n\n src.push(\"uniform vec2 drawingBufferSize;\");\n src.push(\"uniform vec2 pickClipPos;\");\n\n src.push(\"vec4 remapClipPos(vec4 clipPos) {\");\n src.push(\" clipPos.xy /= clipPos.w;\");\n //if (viewportSize === 1) {\n src.push(\" clipPos.xy = (clipPos.xy - pickClipPos) * drawingBufferSize;\");\n // } else {\n // src.push(` clipPos.xy = (clipPos.xy - pickClipPos) * (drawingBufferSize / float(${viewportSize}));`);\n // }\n src.push(\" clipPos.xy *= clipPos.w;\")\n src.push(\" return clipPos;\")\n src.push(\"}\");\n }\n\n vertexSlicingDefs(src: string[]) {\n if (this.renderContext.view.getNumAllocatedSectionPlanes() > 0) {\n src.push(\"// ------------------- vertexSlicingDefs\")\n src.push(\"out vec4 vWorldPosition;\");\n src.push(\"out boolean vClippable;\");\n }\n }\n\n vertexColorMainOpenBlock(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` int colorFlag = int(flags) & 0xF;`);\n src.push(` if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\" } else {\");\n }\n\n openVertexSilhouetteMain(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` if ((int(flags) >> 4 & 0xF) != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\" } else {\");\n }\n\n openVertexEdgesMain(src: string[]) {\n src.push(\"void main(void) {\");\n }\n\n openVertexPickMain(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` int pickFlag = int(flags) >> 8 & 0xF;`);\n src.push(` if (pickFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n }\n\n vertexColorMainCloseBlock(src: string[]) {\n src.push(\" }\");\n src.push(\"}\");\n }\n\n vertexPickMainCloseBlock(src: string[]) {\n src.push(\" }\");\n src.push(\"}\");\n }\n\n vertexSlicingLogic(src: string[]) {\n if (this.renderContext.view.getNumAllocatedSectionPlanes() > 0) {\n src.push(\" // ------------------- vertexSlicingLogic\")\n src.push(\" vWorldPosition = worldPosition;\");\n src.push(\" vClippable = (int(flags) >> 12 & 0xF) == 1;\");\n }\n }\n\n vertexDrawBatchingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawBatchingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" gl_Position = projMatrix * viewPosition;\");\n }\n\n vertexPickBatchingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawBatchingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" gl_Position = remapClipPos(projMatrix * viewPosition);\");\n }\n\n vertexDrawInstancingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawInstancingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * vec4(dot(worldPosition, modelMatrixCol0), dot(worldPosition, modelMatrixCol1), dot(worldPosition, modelMatrixCol2), 1.0); \");\n src.push(\" gl_Position = projMatrix * viewPosition;\");\n }\n\n vertexPickInstancingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawInstancingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * vec4(dot(worldPosition, modelMatrixCol0), dot(worldPosition, modelMatrixCol1), dot(worldPosition, modelMatrixCol2), 1.0); \");\n src.push(\" gl_Position = remapClipPos(projMatrix * viewPosition);\");\n }\n\n vertexDrawLambertDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawLambertDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n src.push(\" out vec4 vViewPosition;\");\n }\n\n vertexDrawLambertLogic(src: string[]) { // Depends on vertexDrawInstancingTransformLogic / vertexDrawBatchingTransformLogic\n src.push(\" // ------------------- vertexDrawLambertLogic\")\n src.push(\" vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n src.push(\" vViewPosition = viewPosition;\");\n }\n\n vertexDrawSilhouetteDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawSilhouetteDefs\")\n src.push(\" uniform vec4 silhouetteColor;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawSilhouetteLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawSilhouetteLogic\")\n src.push(\" vColor = vec4(silhouetteColor.r, silhouetteColor.g, silhouetteColor.b, 0.5);\");\n }\n\n vertexDrawFlatColorDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawFlatColorDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawFlatColorLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawFlatColorLogic\")\n src.push(\" vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n }\n\n vertexDrawEdgesColorDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesColorDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawEdgesColorLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesColorLogic\")\n src.push(\" vColor = vec4(float(color.r-200.0) / 255.0, float(color.g-200.0) / 255.0, float(color.b-200.0) / 255.0, 1.0);\");\n }\n\n vertexDrawEdgesSilhouetteDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesSilhouetteDefs\")\n src.push(\" uniform vec4 silhouetteColor;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawEdgesSilhouetteLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesSilhouetteLogic\")\n src.push(\" vColor = vec4(silhouetteColor.r, silhouetteColor.g, silhouetteColor.b, 0.5);\");\n }\n\n vertexPickMeshShadingLogic(src: string[]) {\n src.push(\" // ------------------- vertexPickMeshShadingLogic\")\n src.push(\" vPickColor = vec4(float(pickColor.r) / 255.0, float(pickColor.g) / 255.0, float(pickColor.b) / 255.0, float(pickColor.a) / 255.0);\");\n }\n\n fragmentHeader(src: string[]) {\n src.push('#version 300 es');\n src.push(`// ${this.constructor.name} fragment shader`);\n }\n\n fragmentPrecisionDefs(src: string[]) {\n src.push(\"// ------------------- fragmentPrecisionDefs\")\n src.push(\"#ifdef GL_FRAGMENT_PRECISION_HIGH\");\n src.push(\"precision highp float;\");\n src.push(\"precision highp int;\");\n src.push(\"#else\");\n src.push(\"precision mediump float;\");\n src.push(\"precision mediump int;\");\n src.push(\"#endif\");\n }\n\n fragmentDrawLambertDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawLambertDefs\")\n const view = this.renderContext.view;\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"in vec4 vViewPosition;\");\n src.push(\"uniform vec4 lightAmbient;\");\n src.push(\"uniform mat4 viewMatrix;\");\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (light instanceof AmbientLight) {\n continue;\n }\n src.push(`uniform vec4 lightColor${i};`);\n if (light instanceof DirLight) {\n src.push(`uniform vec3 lightDir${i};`);\n }\n if (light instanceof PointLight) {\n src.push(`uniform vec3 lightPos${i};`);\n }\n }\n }\n\n fragmentDrawLambertLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawLambertLogic\")\n const view = this.renderContext.view;\n src.push(\"vec3 reflectedColor = vec3(0.0, 0.0, 0.0);\");\n src.push(\"vec3 viewLightDir = vec3(0.0, 0.0, -1.0);\");\n src.push(\"float lambertian = 1.0;\");\n src.push(\"vec3 xTangent = dFdx( vViewPosition.xyz );\");\n src.push(\"vec3 yTangent = dFdy( vViewPosition.xyz );\");\n src.push(\"vec3 viewNormal = normalize( cross( xTangent, yTangent ) );\");\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (light instanceof AmbientLight) {\n continue;\n }\n if (light instanceof DirLight) {\n if (light.space === \"view\") {\n src.push(`viewLightDir = normalize(lightDir${i});`);\n } else {\n src.push(`viewLightDir = normalize((viewMatrix * vec4(lightDir${i}, 0.0)).xyz);`);\n }\n } else if (light instanceof PointLight) {\n if (light.space === \"view\") {\n src.push(`viewLightDir = -normalize(lightPos${i} - viewPosition.xyz);`);\n } else {\n src.push(`viewLightDir = -normalize((viewMatrix * vec4(lightPos${i}, 0.0)).xyz);`);\n }\n } else {\n continue;\n }\n src.push(\"lambertian = max(dot(-viewNormal, viewLightDir), 0.0);\");\n src.push(`reflectedColor += lambertian * (lightColor${i}.rgb * lightColor${i}.a);`);\n }\n src.push(\"outColor = vec4((lightAmbient.rgb * lightAmbient.a * vColor.rgb) + (reflectedColor * vColor.rgb), vColor.a);\");\n }\n\n fragmentDrawSilhouetteDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawSilhouetteLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawFlatColorDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawFlatColorDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawFlatColorLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawFlatColorLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawEdgesColorDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesColorDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawEdgesColorLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesColorLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawEdgesSilhouetteDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesSilhouetteDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawEdgesSilhouetteLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesSilhouetteLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentPickMeshShadingDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteDefs\")\n src.push(\"in vec4 vPickColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentPickMeshShadingLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteLogic\")\n src.push(\"outColor = vPickColor;\");\n }\n\n fragmentSlicingDefs(src: string[]) {\n const numSectionPlanes = this.renderContext.view.getNumAllocatedSectionPlanes();\n if (numSectionPlanes === 0) {\n return;\n }\n src.push(\"// ------------------- fragmentSlicingDefs\")\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in boolean vClippable;\");\n for (let i = 0; i < numSectionPlanes; i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n\n fragmentSlicingLogic(src: string[]) {\n const numSectionPlanes = this.renderContext.view.getNumAllocatedSectionPlanes();\n if (numSectionPlanes === 0) {\n return;\n }\n src.push(\"// ------------------- fragmentSlicingLogic\")\n src.push(\" if (vClippable) {\");\n src.push(\" float dist = 0.0;\");\n for (let i = 0; i < numSectionPlanes; i++) {\n src.push(\" if (sectionPlaneActive\" + i + \") {\");\n src.push(\" dist += clamp(dot(-sectionPlaneDir\" + i + \".xyz, vWorldPosition.xyz - sectionPlanePos\" + i + \".xyz), 0.0, 1000.0);\");\n src.push(\" }\");\n }\n src.push(\" if (dist > 0.0) { discard; }\");\n src.push(\" }\");\n }\n\n vertexDrawPointsColorsDefs(src: string[]): void {\n src.push(\"in vec4 color;\");\n src.push(\"out vec4 vColor;\");\n }\n\n vertexDrawPointsColorsLogic(src: string[]): void {\n src.push(\"vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n }\n\n vertexPointsGeometryDefs(src: string[]): void {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n if (pointsMaterial.filterIntensity) {\n src.push(\"uniform vec2 intensityRange;\");\n }\n }\n\n vertexPointsFilterLogicOpenBlock(src: string[]) {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.filterIntensity) {\n src.push(\"float intensity = float(color.a) / 255.0;\")\n src.push(\"if (intensity < intensityRange[0] || intensity > intensityRange[1]) {\");\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\"} else {\");\n }\n }\n\n vertexPointsFilterLogicCloseBlock(src: string[]) {\n src.push(\"}\");\n }\n\n vertexPointsGeometryLogic(src: string[]) {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n }\n\n fragmentPointsGeometryLogic(src: string[]): void {\n if (this.renderContext.view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n }\n\n bind(renderPass: number): boolean {\n const view = this.renderContext.view;\n const gl = this.renderContext.gl;\n const uniforms = this.uniforms;\n this.renderContext.textureUnit = 0;\n if (this.program && !this.getValid()) {\n this.program.destroy();\n this.program = null;\n }\n if (!this.program) {\n this.build();\n if (this.errors) {\n return false;\n }\n this.renderContext.lastProgramId = -1;\n }\n if (!this.program) {\n return false;\n }\n if (this.renderContext.lastProgramId === this.program.id) {\n return true; // Already bound\n }\n this.program.bind();\n this.renderContext.lastProgramId = this.program.id;\n gl.uniform1i(uniforms.renderPass, renderPass);\n if (uniforms.projMatrix) {\n gl.uniformMatrix4fv(uniforms.projMatrix, false,\n \n (renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickProjMatrix\n : view.camera.projMatrix));\n }\n if (uniforms.pointSize) {\n gl.uniform1f(uniforms.pointSize, view.pointsMaterial.pointSize);\n }\n if (uniforms.nearPlaneHeight) {\n gl.uniform1f(uniforms.nearPlaneHeight, (view.camera.projectionType === OrthoProjectionType) ? 1.0 : (gl.drawingBufferHeight / (2 * Math.tan(0.5 * view.camera.perspectiveProjection.fov * Math.PI / 180.0))));\n }\n if (uniforms.pickZNear) {\n gl.uniform1f(uniforms.pickZNear, this.renderContext.pickZNear);\n gl.uniform1f(uniforms.pickZFar, this.renderContext.pickZFar);\n }\n if (uniforms.drawingBufferSize) {\n gl.uniform2f(uniforms.drawingBufferSize, gl.drawingBufferWidth, gl.drawingBufferHeight);\n }\n if (uniforms.pickClipPos) {\n gl.uniform2fv(uniforms.pickClipPos, this.renderContext.pickClipPos);\n }\n if (uniforms.lightAmbient) {\n gl.uniform4fv(uniforms.lightAmbient, view.getAmbientColorAndIntensity());\n }\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (this.uniforms.lightColor[i]) {\n gl.uniform4f(this.uniforms.lightColor[i], light.color[0], light.color[1], light.color[2], light.intensity);\n }\n if (this.uniforms.lightPos[i]) {\n const pointLight = light;\n gl.uniform3fv(this.uniforms.lightPos[i], pointLight.pos);\n }\n if (this.uniforms.lightDir[i]) {\n const dirLight = light;\n gl.uniform3fv(this.uniforms.lightDir[i], dirLight.dir);\n }\n }\n if (this.uniforms.silhouetteColor) {\n if (this.edges) {\n if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n const material = view.xrayMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n const material = view.highlightMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n const material = view.selectedMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else {\n gl.uniform4fv(this.uniforms.silhouetteColor, defaultColor);\n }\n } else {\n if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n const material = view.xrayMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n const material = view.highlightMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n const material = view.selectedMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else {\n gl.uniform4fv(this.uniforms.silhouetteColor, defaultColor);\n }\n }\n }\n return true;\n }\n\n renderVBOInstancingLayer(vboInstancinglayer: VBOInstancingLayer, renderPass: number) {\n // Default no-op\n }\n\n renderVBOBatchingLayer(vboInstancinglayer: VBOBatchingLayer, renderPass: number) {\n // Default no-op\n }\n\n destroy() {\n if (this.program) {\n this.program.destroy();\n }\n this.program = null;\n }\n}\n", "import {VBOBatchingLayer} from \"./VBOBatchingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBORenderer} from \"../VBORenderer\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\n\n\n/**\n * @private\n */\nexport abstract class VBOBatchingRenderer extends VBORenderer {\n\n renderVBOBatchingLayer(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n if (!this.bind(renderPass)) {\n return;\n }\n const attributes = this.attributes;\n const renderState = vboBatchingLayer.renderState;\n const view = this.renderContext.view;\n const viewIndex = view.viewIndex;\n const gl = this.renderContext.gl;\n attributes.position.bindArrayBuffer(renderState.positionsBuf);\n if (attributes.flags) {\n attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n }\n if (attributes.color) {\n attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n }\n if (attributes.pickColor) {\n attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n }\n if (attributes.intensity) {\n //attributes.intensity.bindArrayBuffer(renderState.pointIntensitiesBuf);\n }\n if (attributes.uv) {\n attributes.uv.bindArrayBuffer(renderState.uvBuf);\n }\n gl.uniform1i(this.uniforms.renderPass, renderPass);\n gl.uniform3fv(this.uniforms.positionsDecompressOffset, renderState.positionsDecompressOffset);\n gl.uniform3fv(this.uniforms.positionsDecompressScale, renderState.positionsDecompressScale);\n gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n gl.uniformMatrix4fv(this.uniforms.viewMatrix, false,\n createRTCViewMat(\n renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickViewMatrix\n : this.renderContext.view.camera.viewMatrix,\n renderState.origin));\n if (renderState.indicesBuf) {\n renderState.indicesBuf.bind();\n }\n this.drawVBOBatchingLayerPrimitives(vboBatchingLayer, renderPass);\n }\n\n abstract drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number);\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n const view = this.renderContext.view;\n const pointsMaterial = view.pointsMaterial;\n return `${pointsMaterial.perspectivePoints}-${pointsMaterial.filterIntensity}-${pointsMaterial.roundPoints}-${view.getSectionPlanesHash()}`;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPointsGeometryDefs(src);\n this.vertexDrawPointsColorsDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexPointsFilterLogicOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexSlicingLogic(src);\n this.vertexDrawPointsColorsLogic(src);\n this.vertexPointsGeometryLogic(src);\n }\n this.vertexPointsFilterLogicCloseBlock(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentPointsGeometryLogic(src);\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n gl.drawArrays(gl.POINTS, 0, vboBatchingLayer.renderState.positionsBuf.numItems);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return \"\";\n }\n\n buildVertexShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n const pointsMaterial = view.pointsMaterial;\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n src.push(\"in vec4 pickColor;\");\n src.push(\"uniform float pointSize;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"uniform float logDepthBufFC;\");\n // src.push(\"out float vFragDepth;\");\n // }\n\n src.push(\"out vec4 vPickColor;\");\n src.push(\"void main(void) {\");\n // pickFlag = NOT_RENDERED | PICK\n // renderPass = PICK\n src.push(`int pickFlag = int(flags) >> 12 & 0xF;`);\n src.push(`if (pickFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\" } else {\");\n src.push(\" vec4 worldPosition = worldMatrix * (positionsDecodeMatrix * vec4(position, 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" vPickColor = vec4(float(pickColor.r) / 255.0, float(pickColor.g) / 255.0, float(pickColor.b) / 255.0, float(pickColor.a) / 255.0);\");\n if (clipping) {\n src.push(\" vWorldPosition = worldPosition;\");\n src.push(\" vFlags = flags;\");\n }\n src.push(\"vec4 clipPos = projMatrix * viewPosition;\");\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"vFragDepth = 1.0 + clipPos.w;\");\n // }\n src.push(\"gl_Position = clipPos;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n src.push(\"gl_PointSize += 10.0;\");\n src.push(\" }\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n src.push(`#version 300 es\n // Points batching pick mesh vertex shader\n #ifdef GL_FRAGMENT_PRECISION_HIGH\n precision highp float;\n precision highp int;\n #else;\n precision mediump float;\n precision mediump int;\n #endif`);\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"uniform float logDepthBufFC;\");\n // src.push(\"in float vFragDepth;\");\n // }\n if (clipping) {\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in float vFlags;\");\n for (var i = 0; i < view.getNumAllocatedSectionPlanes(); i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n src.push(\"in vec4 vPickColor;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"void main(void) {\");\n if (view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n if (clipping) {\n src.push(\" bool clippable = (int(vFlags) >> 16 & 0xF) == 1;\");\n src.push(\" if (clippable) {\");\n src.push(\" float dist = 0.0;\");\n for (let i = 0; i < view.getNumAllocatedSectionPlanes(); i++) {\n src.push(\" if (sectionPlaneActive\" + i + \") {\");\n src.push(\" dist += clamp(dot(-sectionPlaneDir\" + i + \".xyz, vWorldPosition.xyz - sectionPlanePos\" + i + \".xyz), 0.0, 1000.0);\");\n src.push(\" }\");\n }\n src.push(\" if (dist > 0.0) { discard; }\");\n src.push(\" }\");\n }\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"gl_FragDepth = log2( vFragDepth ) * logDepthBufFC * 0.5;\");\n // }\n src.push(\" outColor = vPickColor; \");\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number) {\n // this.bind(renderPass);\n // const view = this.renderContext.view;\n // const viewIndex = view.viewIndex;\n // const gl = this.renderContext.gl;\n // const attributes = this.attributes;\n // const renderState = vboBatchingLayer.renderState;\n // attributes.position.bindArrayBuffer(renderState.positionsBuf);\n // if (attributes.pickColor) {\n // attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n // }\n // if (attributes.flags) {\n // attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n // }\n // gl.uniform1i(this.uniforms.renderPass, renderPass);\n // gl.uniformMatrix4fv(this.uniforms.positionsDecodeMatrix, false, renderState.positionsDecodeMatrix);\n //\n // gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n // gl.uniformMatrix4fv(this.uniforms.viewMatrix, false, createRTCViewMat(this.renderContext.view.camera.viewMatrix, renderState.origin));\n // gl.drawArrays(gl.POINTS, 0, renderState.positionsBuf.numItems);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {RENDER_PASSES} from \"../../../../RENDER_PASSES\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return \"\";\n }\n\n buildVertexShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n const pointsMaterial = view.pointsMaterial;\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n src.push(\"uniform vec4 color;\");\n src.push(\"uniform float pointSize;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n\n src.push(\"void main(void) {\");\n // silhouetteFlag = NOT_RENDERED | SILHOUETTE_HIGHLIGHTED | SILHOUETTE_SELECTED | SILHOUETTE_XRAYED\n // renderPass = SILHOUETTE_HIGHLIGHTED | SILHOUETTE_SELECTED | | SILHOUETTE_XRAYED\n src.push(`int silhouetteFlag = int(flags) >> 4 & 0xF;`);\n src.push(`if (silhouetteFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n src.push(\"vec4 worldPosition = worldMatrix * (positionsDecodeMatrix * vec4(position, 1.0)); \");\n src.push(\"vec4 viewPosition = viewMatrix * worldPosition; \");\n if (clipping) {\n src.push(\"vWorldPosition = worldPosition;\");\n src.push(\"vFlags = flags;\");\n }\n src.push(\"vec4 clipPos = projMatrix * viewPosition;\");\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"vFragDepth = 1.0 + clipPos.w;\");\n // }\n src.push(\"gl_Position = clipPos;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n this.fragmentHeader(src);\n src.push(\"#ifdef GL_FRAGMENT_PRECISION_HIGH\");\n src.push(\"precision highp float;\");\n src.push(\"precision highp int;\");\n src.push(\"#else\");\n src.push(\"precision mediump float;\");\n src.push(\"precision mediump int;\");\n src.push(\"#endif\");\n if (clipping) {\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in float vFlags;\");\n for (let i = 0, len = view.getNumAllocatedSectionPlanes(); i < len; i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n src.push(\"uniform vec4 color;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"void main(void) {\");\n if (view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n this.fragmentSlicingLogic(src);\n src.push(\"outColor = color;\");\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n // this.bind(renderPass);\n // const view = this.renderContext.view;\n // const viewIndex = view.viewIndex;\n // let material;\n // if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n // material = view.xrayMaterial;\n // } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n // material = view.highlightMaterial;\n // } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n // material = view.selectedMaterial;\n // } else {\n // return;\n // }\n // const gl = this.renderContext.gl;\n // const color = material.fillColor;\n // const alpha = material.fillAlpha;\n // gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], alpha);\n // const attributes = this.attributes;\n // const renderState = vboBatchingLayer.renderState;\n // attributes.position.bindArrayBuffer(renderState.positionsBuf);\n // if (attributes.color) {\n // attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n // }\n // if (attributes.flags) {\n // attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n // }\n // gl.uniform1i(this.uniforms.renderPass, renderPass);\n // gl.uniformMatrix4fv(this.uniforms.positionsDecodeMatrix, false, renderState.positionsDecodeMatrix);\n // gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n // gl.uniformMatrix4fv(this.uniforms.viewMatrix, false, createRTCViewMat(this.renderContext.view.camera.viewMatrix, renderState.origin));\n // gl.drawArrays(gl.POINTS, 0, renderState.positionsBuf.numItems);\n }\n}\n", "import {RenderContext} from \"../RenderContext\";\nimport {VBORenderer} from \"./VBORenderer\";\nimport {RenderStats} from \"../RenderStats\";\nimport {WebGLRenderer} from \"../WebGLRenderer\";\n\n/**\n * @private\n */\nexport class VBORendererSet {\n\n renderContext: RenderContext;\n renderStats: RenderStats;\n\n #colorRenderer: VBORenderer;\n #silhouetteRenderer: VBORenderer;\n #pickMeshRenderer: VBORenderer;\n #pickDepthRenderer: VBORenderer;\n #occlusionRenderer: VBORenderer;\n #snapInitRenderer: VBORenderer;\n #snapRenderer: VBORenderer;\n #edgesColorRenderer: VBORenderer;\n #edgesSilhouetteRenderer: VBORenderer;\n #depthRenderer: VBORenderer;\n #normalsRenderer: VBORenderer;\n\n constructor(webglRenderer: WebGLRenderer) {\n this.renderContext = webglRenderer.renderContext;\n this.renderStats = webglRenderer.renderStats;\n }\n\n _compile() {\n if (this.#colorRenderer && (!this.#colorRenderer.getValid())) {\n this.#colorRenderer.destroy();\n this.#colorRenderer = null;\n }\n if (this.#silhouetteRenderer && (!this.#silhouetteRenderer.getValid())) {\n this.#silhouetteRenderer.destroy();\n this.#silhouetteRenderer = null;\n }\n if (this.#edgesColorRenderer && (!this.#edgesColorRenderer.getValid())) {\n this.#edgesColorRenderer.destroy();\n this.#edgesColorRenderer = null;\n }\n if (this.#pickMeshRenderer && (!this.#pickMeshRenderer.getValid())) {\n this.#pickMeshRenderer.destroy();\n this.#pickMeshRenderer = null;\n }\n if (this.#pickDepthRenderer && (!this.#pickDepthRenderer.getValid())) {\n this.#pickDepthRenderer.destroy();\n this.#pickDepthRenderer = null;\n }\n if (this.#occlusionRenderer && this.#occlusionRenderer.getValid() === false) {\n this.#occlusionRenderer.destroy();\n this.#occlusionRenderer = null;\n }\n if (this.#snapInitRenderer && (!this.#snapInitRenderer.getValid())) {\n this.#snapInitRenderer.destroy();\n this.#snapInitRenderer = null;\n }\n if (this.#snapRenderer && (!this.#snapRenderer.getValid())) {\n this.#snapRenderer.destroy();\n this.#snapRenderer = null;\n }\n }\n\n _eagerCreate() {\n\n }\n\n get colorRenderer(): VBORenderer {\n if (!this.#colorRenderer) {\n this.#colorRenderer = this.createDrawRenderer();\n }\n return this.#colorRenderer;\n }\n\n get silhouetteRenderer(): VBORenderer {\n if (!this.#silhouetteRenderer) {\n this.#silhouetteRenderer = this.createSilhouetteRenderer();\n }\n return this.#silhouetteRenderer;\n }\n\n get edgesColorRenderer(): VBORenderer {\n if (!this.#edgesColorRenderer) {\n this.#edgesColorRenderer = this.createEdgesColorRenderer();\n }\n return this.#edgesColorRenderer;\n }\n\n get edgesSilhouetteRenderer(): VBORenderer {\n if (!this.#edgesSilhouetteRenderer) {\n this.#edgesSilhouetteRenderer = this.createEdgesSilhouetteRenderer();\n }\n return this.#edgesSilhouetteRenderer;\n }\n\n get pickMeshRenderer(): VBORenderer {\n if (!this.#pickMeshRenderer) {\n this.#pickMeshRenderer = this.createPickMeshRenderer();\n }\n return this.#pickMeshRenderer;\n }\n\n get pickDepthRenderer(): VBORenderer {\n if (!this.#pickDepthRenderer) {\n this.#pickDepthRenderer = this.createPickDepthRenderer();\n }\n return this.#pickDepthRenderer;\n }\n\n get occlusionRenderer(): VBORenderer {\n if (!this.#occlusionRenderer) {\n this.#occlusionRenderer = this.createOcclusionRenderer();\n }\n return this.#occlusionRenderer;\n }\n\n get snapInitRenderer(): VBORenderer {\n if (!this.#snapInitRenderer) {\n this.#snapInitRenderer = this.createSnapInitRenderer();\n }\n return this.#snapInitRenderer;\n }\n\n get snapRenderer(): VBORenderer {\n if (!this.#snapRenderer) {\n this.#snapInitRenderer = this.createSnapRenderer();\n }\n return this.#snapRenderer;\n }\n\n protected createDrawRenderer(): VBORenderer {\n return null;\n }\n\n protected createSilhouetteRenderer(): VBORenderer {\n return null;\n }\n\n protected createEdgesColorRenderer(): VBORenderer {\n return null;\n }\n\n protected createEdgesSilhouetteRenderer(): VBORenderer {\n return null;\n }\n\n protected createPickMeshRenderer(): VBORenderer {\n return null;\n }\n\n protected createPickDepthRenderer(): VBORenderer {\n return null;\n }\n\n protected createOcclusionRenderer(): VBORenderer {\n return null;\n }\n\n protected createSnapInitRenderer(): VBORenderer {\n return null;\n }\n\n protected createSnapRenderer(): VBORenderer {\n return null;\n }\n\n _destroy() {\n if (this.#colorRenderer) {\n this.#colorRenderer.destroy();\n }\n if (this.#silhouetteRenderer) {\n this.#silhouetteRenderer.destroy();\n }\n if (this.#edgesColorRenderer) {\n this.#edgesColorRenderer.destroy();\n }\n if (this.#edgesSilhouetteRenderer) {\n this.#edgesSilhouetteRenderer.destroy();\n }\n if (this.#pickMeshRenderer) {\n this.#pickMeshRenderer.destroy();\n }\n if (this.#pickDepthRenderer) {\n this.#pickDepthRenderer.destroy();\n }\n if (this.#occlusionRenderer) {\n this.#occlusionRenderer.destroy();\n }\n if (this.#snapInitRenderer) {\n this.#snapInitRenderer.destroy();\n }\n if (this.#snapRenderer) {\n this.#snapRenderer.destroy();\n }\n }\n}\n\n/**\n * @private\n */\nexport class RendererSetFactory {\n\n #rendererSets: {};\n\n #createRendererSet: (webglRenderer: WebGLRenderer) => VBORendererSet;\n\n constructor(createRendererSet:(webglRenderer)=> VBORendererSet) {\n this.#rendererSets = {};\n this.#createRendererSet = createRendererSet;\n }\n\n getRenderers(webglRenderer: WebGLRenderer): VBORendererSet {\n const viewerId = webglRenderer.viewer.id;\n let rendererSet = this.#rendererSets[viewerId];\n if (!rendererSet) {\n rendererSet = this.#createRendererSet(webglRenderer);\n this.#rendererSets[viewerId] = rendererSet;\n rendererSet._compile();\n rendererSet._eagerCreate();\n webglRenderer.onCompiled.sub(() => {\n rendererSet._compile();\n rendererSet._eagerCreate();\n });\n webglRenderer.onDestroyed.sub(() => {\n delete this.#rendererSets[viewerId];\n rendererSet._destroy();\n });\n }\n return rendererSet;\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {VBOPointsBatchingDrawRenderer} from \"./VBOPointsBatchingDrawRenderer\";\nimport {VBOPointsBatchingPickMeshRenderer} from \"./VBOPointsBatchingPickMeshRenderer\";\nimport {VBOPointsBatchingSilhouetteRenderer} from \"./VBOPointsBatchingSilhouetteRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBORenderer} from \"../../../VBORenderer\";\n\n\n/**\n * @private\n */\n class RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBOBatchingRenderer {\n return new VBOPointsBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOPointsBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOPointsBatchingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n const view = this.renderContext.view;\n return `${view.getLightsHash()}-${view.getSectionPlanesHash()}`;\n }\n\n buildVertexShader(src: string[]):void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawLambertDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawLambertLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]) :void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawLambertDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawLambertLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexPickBatchingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexPickMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingEdgesDrawRenderer extends VBOBatchingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawEdgesColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingEdgesSilhouetteRenderer extends VBOBatchingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawEdgesSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOTrianglesBatchingDrawRenderer} from \"./VBOTrianglesBatchingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOTrianglesBatchingPickMeshRenderer} from \"./VBOTrianglesBatchingPickMeshRenderer\";\nimport {VBOTrianglesBatchingSilhouetteRenderer} from \"./VBOTrianglesBatchingSilhouetteRenderer\";\nimport {VBOTrianglesBatchingEdgesDrawRenderer} from \"./VBOTrianglesBatchingEdgesDrawRenderer\";\nimport {VBOTrianglesBatchingEdgesSilhouetteRenderer} from \"./VBOTrianglesBatchingEdgesSilhouetteRenderer\";\n\n\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOTrianglesBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOTrianglesBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesBatchingSilhouetteRenderer(this.renderContext);\n }\n\n createEdgesColorRenderer(): VBORenderer {\n return new VBOTrianglesBatchingEdgesDrawRenderer(this.renderContext);\n }\n\n createEdgesSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesBatchingEdgesSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "\n/**\n * @private\n */\nexport class VBOInstancingBuffer {\n\n maxVerts: number;\n maxIndices: number;\n positions: number[];\n colors: number[];\n uv: number[];\n normals: number[];\n pickColors: number[];\n offsets: number[];\n indices: number[];\n edgeIndices: number[];\n modelNormalMatrixCol0: number[];\n modelNormalMatrixCol1: number[];\n modelNormalMatrixCol2: number[];\n modelMatrixCol0: number[];\n modelMatrixCol1: number[];\n modelMatrixCol2: number[];\n modelMatrix: number[];\n\n constructor() {\n this.positions = [];\n this.colors = [];\n this.uv = [];\n this.normals = [];\n this.pickColors = [];\n this.offsets = [];\n this.indices = [];\n this.edgeIndices = [];\n this.modelMatrixCol0 = [];\n this.modelMatrixCol1 = [];\n this.modelMatrixCol2 = [];\n }\n}\n\n", "import {VBOInstancingLayerParams} from \"./VBOInstancingLayerParams\";\nimport {WebGLRendererModel} from \"../../WebGLRendererModel\";\nimport {SceneGeometry, SceneMesh} from \"@xeokit/scene\";\nimport {WebGLArrayBuf} from \"@xeokit/webglutils\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {VBOInstancingRenderState} from \"./VBOInstancingRenderState\";\nimport {collapseAABB3, createOBB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {MeshCounts} from \"../../MeshCounts\";\nimport {VBOInstancingBuffer} from \"./VBOInstancingBuffer\";\nimport {RenderContext} from \"../../RenderContext\";\nimport {Layer} from \"../../Layer\";\nimport {SDKError} from \"@xeokit/core\";\nimport {createMat4, createVec3, createVec4} from \"@xeokit/matrix\";\nimport {SCENE_OBJECT_FLAGS} from \"../../SCENE_OBJECT_FLAGS\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\nimport {LayerMeshParams} from \"../../LayerMeshParams\";\nimport {VBORendererSet} from \"../VBORendererSet\";\n\nconst tempUint8Vec4 = new Uint8Array(4);\nconst tempFloat32 = new Float32Array(1);\nconst tempVec4a = createVec4([0, 0, 0, 1]);\nconst tempVec3fa = new Float32Array(3);\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec3f = createVec3();\nconst tempVec3g = createVec3();\n\nconst tempFloat32Vec4 = new Float32Array(4);\n\n/**\n * @private\n */\nexport class VBOInstancingLayer implements Layer {\n\n rendererModel: WebGLRendererModel;\n renderState: VBOInstancingRenderState;\n #rendererSet: VBORendererSet;\n\n #aabb: FloatArrayParam;\n layerIndex: number;\n sortId: string;\n primitive: number;\n aabbDirty: boolean;\n meshCounts: MeshCounts[];\n #buffer: VBOInstancingBuffer;\n #meshes: any[];\n #portions: any[];\n #built: boolean;\n renderContext: RenderContext;\n\n constructor(layerParams: VBOInstancingLayerParams, rendererSet: VBORendererSet) {\n\n console.info(\"Creating VBOInstancingLayer\");\n\n this.renderContext = layerParams.renderContext;\n this.rendererModel = layerParams.rendererModel;\n this.sortId = `VBOInstancingLayer-${layerParams.sceneGeometry.primitive}`;\n this.layerIndex = layerParams.layerIndex;\n\n this.#buffer = new VBOInstancingBuffer();\n\n this.#rendererSet = rendererSet;\n\n this.#aabb = collapseAABB3();\n\n this.meshCounts = [];\n for (let i =0, len = this.renderContext.viewer.viewList.length; i < len; i++) {\n this.meshCounts.push(new MeshCounts());\n }\n\n const geometry = layerParams.sceneGeometry;\n const aabb = geometry.aabb;\n const positionsDecompressOffset = createVec3([aabb[0], aabb[1], aabb[2]]);\n const positionsDecompressScale = createVec3([(aabb[3] - aabb[0]) / 65535, (aabb[4] - aabb[1]) / 65535, (aabb[5] - aabb[2]) / 65535]);\n\n this.renderState = {\n numVertices: 0,\n numIndices: 0,\n numEdgeIndices: 0,\n numInstances: 0,\n obb: createOBB3(),\n origin: createVec3(layerParams.origin),\n sceneGeometry: layerParams.sceneGeometry,\n textureSet: layerParams.textureSet,\n pbrSupported: false,\n positionsDecompressScale,\n positionsDecompressOffset,\n colorsBuf: [],\n flagsBufs: [],\n modelMatrixBuf: null,\n modelMatrixCol0Buf: null,\n modelMatrixCol1Buf: null,\n modelMatrixCol2Buf: null,\n modelNormalMatrixCol0Buf: null,\n modelNormalMatrixCol1Buf: null,\n modelNormalMatrixCol2Buf: null,\n pickColorsBuf: null\n };\n\n this.#portions = [];\n this.#meshes = [];\n\n this.#aabb = collapseAABB3();\n this.aabbDirty = true;\n\n this.#built = false;\n }\n\n get hash() {\n return `${this.primitive}`;\n }\n\n get aabb() {\n if (this.aabbDirty) {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.#meshes.length; i < len; i++) {\n expandAABB3(this.#aabb, this.#meshes[i].aabb);\n }\n this.aabbDirty = false;\n }\n return this.#aabb;\n }\n\n canCreateLayerMesh(sceneGeometry: SceneGeometry): boolean {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n return true; // TODO\n }\n\n createLayerMesh(layerMeshParams: LayerMeshParams, sceneMesh: SceneMesh) {\n\n const color = sceneMesh.color;\n const opacity = sceneMesh.opacity !== null && sceneMesh.opacity !== undefined ? sceneMesh.opacity : 255;\n const meshMatrix = sceneMesh.rtcMatrix;\n const pickColor = layerMeshParams.pickColor;\n\n if (this.#built) {\n throw \"Already finalized\";\n }\n\n const r = color[0] * 255;\n const g = color[1] * 255;\n const b = color[2] * 255;\n\n this.#buffer.colors.push(r);\n this.#buffer.colors.push(g);\n this.#buffer.colors.push(b);\n this.#buffer.colors.push(opacity);\n\n this.#buffer.modelMatrixCol0.push(meshMatrix[0]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[4]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[8]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[12]);\n\n this.#buffer.modelMatrixCol1.push(meshMatrix[1]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[5]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[9]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[13]);\n\n this.#buffer.modelMatrixCol2.push(meshMatrix[2]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[6]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[10]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[14]);\n\n // Per-vertex pick colors\n\n this.#buffer.pickColors.push(...pickColor);\n\n this.renderState.numInstances++;\n\n const layerMeshIndex = this.#portions.length;\n\n const portion = {};\n this.#portions.push(portion);\n\n for (let viewIndex = 0, len = this.meshCounts.length; viewIndex < len; viewIndex++) {\n this.meshCounts[viewIndex].numMeshes++;\n this.rendererModel.meshCounts[viewIndex].numMeshes++;\n }\n\n this.#meshes.push(sceneMesh);\n return layerMeshIndex;\n }\n\n build() {\n if (this.#built) {\n return;\n }\n const renderState = this.renderState;\n const sceneGeometry = renderState.sceneGeometry;\n const numViews = this.meshCounts.length;\n const textureSet = renderState.textureSet;\n const gl = this.renderContext.gl;\n const colorsLength = this.#buffer.colors.length;\n const flagsLength = colorsLength / 4;\n if (colorsLength > 0) {\n let notNormalized = false;\n const colors = new Uint8Array(this.#buffer.colors);\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.colorsBuf[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, colors, this.#buffer.colors.length, 4, gl.DYNAMIC_DRAW, notNormalized);\n }\n this.#buffer.colors = []; // Release memory\n }\n if (flagsLength > 0) {\n // Because we only build flags arrays here,\n // get their length from the colors array\n let notNormalized = false;\n const flagsArray = new Float32Array(flagsLength);\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.flagsBufs[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, flagsArray, flagsLength, 1, gl.DYNAMIC_DRAW, notNormalized);\n }\n }\n const positionsCompressed = sceneGeometry.positionsCompressed;\n const indices = sceneGeometry.indices;\n const edgeIndices = sceneGeometry.edgeIndices;\n const uvsCompressed = sceneGeometry.uvsCompressed;\n const colorsCompressed = sceneGeometry.colorsCompressed;\n if (positionsCompressed && positionsCompressed.length > 0) {\n const normalized = false;\n renderState.positionsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint16Array(positionsCompressed), positionsCompressed.length, 3, gl.STATIC_DRAW, normalized);\n }\n if (indices && indices.length > 0) {\n renderState.indicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, new Uint32Array(indices), indices.length, 1, gl.STATIC_DRAW);\n renderState.numIndices = indices.length;\n }\n if (edgeIndices && edgeIndices.length > 0) {\n renderState.edgeIndicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, new Uint32Array(edgeIndices), edgeIndices.length, 1, gl.STATIC_DRAW);\n renderState.numEdgeIndices = edgeIndices.length;\n }\n // if (colorsCompressed && colorsCompressed.length > 0) {\n // const notNormalized = false;\n // renderState.colorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(colorsCompressed), colorsCompressed.length, 4, gl.STATIC_DRAW, notNormalized);\n // }\n if (uvsCompressed && uvsCompressed.length > 0) {\n renderState.uvDecodeMatrix = sceneGeometry.uvsDecompressMatrix;\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(uvsCompressed), uvsCompressed.length, 2, gl.STATIC_DRAW, false);\n }\n if (this.#buffer.modelMatrixCol0.length > 0) {\n const normalized = false;\n renderState.modelMatrixCol0Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol0), this.#buffer.modelMatrixCol0.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelMatrixCol1Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol1), this.#buffer.modelMatrixCol1.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelMatrixCol2Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol2), this.#buffer.modelMatrixCol2.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.modelMatrixCol0 = [];\n this.#buffer.modelMatrixCol1 = [];\n this.#buffer.modelMatrixCol2 = [];\n if (renderState.normalsBuf) {\n renderState.modelNormalMatrixCol0Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol0), this.#buffer.modelNormalMatrixCol0.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelNormalMatrixCol1Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol1), this.#buffer.modelNormalMatrixCol1.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelNormalMatrixCol2Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol2), this.#buffer.modelNormalMatrixCol2.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.modelNormalMatrixCol0 = [];\n this.#buffer.modelNormalMatrixCol1 = [];\n this.#buffer.modelNormalMatrixCol2 = [];\n }\n }\n if (this.#buffer.pickColors.length > 0) {\n const normalized = false;\n renderState.pickColorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(this.#buffer.pickColors), this.#buffer.pickColors.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.pickColors = []; // Release memory\n }\n renderState.pbrSupported\n = !!renderState.metallicRoughnessBuf\n && !!renderState.uvBuf\n && !!renderState.normalsBuf\n && !!textureSet\n && !!textureSet.colorTexture\n && !!textureSet.metallicRoughnessTexture;\n renderState.colorTextureSupported\n = !!renderState.uvBuf\n && !!textureSet\n && !!textureSet.colorTexture;\n this.renderState.sceneGeometry = null;\n this.#built = true;\n }\n\n initFlags(viewIndex: number, layerMeshIndex, flags, meshTransparent) {\n const layerMeshCounts = this.meshCounts[viewIndex];\n const modelMeshCounts = this.rendererModel.meshCounts[viewIndex];\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n layerMeshCounts.numVisible++;\n modelMeshCounts.numVisible++;\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n layerMeshCounts.numHighlighted++;\n modelMeshCounts.numHighlighted++;\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n layerMeshCounts.numXRayed++;\n modelMeshCounts.numXRayed++;\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n layerMeshCounts.numSelected++;\n modelMeshCounts.numSelected++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n layerMeshCounts.numClippable++;\n modelMeshCounts.numClippable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n layerMeshCounts.numPickable++;\n modelMeshCounts.numPickable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n layerMeshCounts.numCulled++;\n modelMeshCounts.numCulled++;\n }\n if (meshTransparent) {\n layerMeshCounts.numTransparent++;\n modelMeshCounts.numTransparent++;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, meshTransparent);\n }\n\n setLayerMeshVisible(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n this.meshCounts[viewIndex].numVisible++;\n this.rendererModel.meshCounts[viewIndex].numVisible++;\n } else {\n this.meshCounts[viewIndex].numVisible--;\n this.rendererModel.meshCounts[viewIndex].numVisible--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshHighlighted(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n this.meshCounts[viewIndex].numHighlighted++;\n this.rendererModel.meshCounts[viewIndex].numHighlighted++;\n } else {\n this.meshCounts[viewIndex].numHighlighted--;\n this.rendererModel.meshCounts[viewIndex].numHighlighted--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshXRayed(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n this.meshCounts[viewIndex].numXRayed++;\n this.rendererModel.meshCounts[viewIndex].numXRayed++;\n } else {\n this.meshCounts[viewIndex].numXRayed--;\n this.rendererModel.meshCounts[viewIndex].numXRayed--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshSelected(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n this.meshCounts[viewIndex].numSelected++;\n this.rendererModel.meshCounts[viewIndex].numSelected++;\n } else {\n this.meshCounts[viewIndex].numSelected--;\n this.rendererModel.meshCounts[viewIndex].numSelected--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshClippable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n this.meshCounts[viewIndex].numClippable++;\n this.rendererModel.meshCounts[viewIndex].numClippable++;\n } else {\n this.meshCounts[viewIndex].numClippable--;\n this.rendererModel.meshCounts[viewIndex].numClippable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags);\n }\n\n setCollidable(viewIndex: number, layerMeshIndex: number, flags: number) {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n }\n\n setLayerMeshPickable(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n this.meshCounts[viewIndex].numPickable++;\n this.rendererModel.meshCounts[viewIndex].numPickable++;\n } else {\n this.meshCounts[viewIndex].numPickable--;\n this.rendererModel.meshCounts[viewIndex].numPickable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshCulled(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n this.meshCounts[viewIndex].numCulled++;\n this.rendererModel.meshCounts[viewIndex].numCulled++;\n } else {\n this.meshCounts[viewIndex].numCulled--;\n this.rendererModel.meshCounts[viewIndex].numCulled--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshColor(viewIndex: number, layerMeshIndex: number, color: FloatArrayParam): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n tempUint8Vec4[0] = color[0];\n tempUint8Vec4[1] = color[1];\n tempUint8Vec4[2] = color[2];\n tempUint8Vec4[3] = color[3];\n if (this.renderState.colorsBuf[viewIndex]) {\n this.renderState.colorsBuf[viewIndex].setData(tempUint8Vec4, layerMeshIndex * 4);\n }\n }\n\n setLayerMeshTransparent(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (transparent) {\n this.meshCounts[viewIndex].numTransparent++;\n this.rendererModel.meshCounts[viewIndex].numTransparent++;\n } else {\n this.meshCounts[viewIndex].numTransparent--;\n this.rendererModel.meshCounts[viewIndex].numTransparent--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshFlags(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean = false): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n const view = this.renderContext.viewer.viewList[viewIndex];\n const visible = !!(flags & SCENE_OBJECT_FLAGS.VISIBLE);\n const xrayed = !!(flags & SCENE_OBJECT_FLAGS.XRAYED);\n const highlighted = !!(flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED);\n const selected = !!(flags & SCENE_OBJECT_FLAGS.SELECTED);\n const pickable = !!(flags & SCENE_OBJECT_FLAGS.PICKABLE);\n const culled = !!(flags & SCENE_OBJECT_FLAGS.CULLED);\n let colorFlag;\n if (!visible || culled || xrayed\n || (highlighted && !view.highlightMaterial.glowThrough)\n || (selected && !view.selectedMaterial.glowThrough)) {\n colorFlag = RENDER_PASSES.NOT_RENDERED;\n } else {\n if (transparent) {\n colorFlag = RENDER_PASSES.COLOR_TRANSPARENT;\n } else {\n colorFlag = RENDER_PASSES.COLOR_OPAQUE;\n }\n }\n let silhouetteFlag;\n if (!visible || culled) {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n } else if (selected) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_SELECTED;\n } else if (highlighted) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_HIGHLIGHTED;\n } else if (xrayed) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_XRAYED;\n } else {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n }\n const pickFlag = (visible && !culled && pickable) ? RENDER_PASSES.PICK : RENDER_PASSES.NOT_RENDERED;\n const clippableFlag = !!(flags & SCENE_OBJECT_FLAGS.CLIPPABLE) ? 1 : 0;\n let vertFlag = 0;\n vertFlag |= colorFlag;\n vertFlag |= silhouetteFlag << 4;\n vertFlag |= pickFlag << 8;\n vertFlag |= clippableFlag << 12;\n tempFloat32[0] = vertFlag;\n if (this.renderState.flagsBufs[viewIndex]) {\n this.renderState.flagsBufs[viewIndex].setData(tempFloat32, layerMeshIndex);\n }\n }\n\n setMatrix(viewIndex: number, layerMeshIndex: number, matrix: FloatArrayParam) {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n ////////////////////////////////////////\n // TODO: Update portion matrix\n ////////////////////////////////////////\n const offset = layerMeshIndex * 4;\n tempFloat32Vec4[0] = matrix[0];\n tempFloat32Vec4[1] = matrix[4];\n tempFloat32Vec4[2] = matrix[8];\n tempFloat32Vec4[3] = matrix[12];\n this.renderState.modelMatrixCol0Buf.setData(tempFloat32Vec4, offset);\n tempFloat32Vec4[0] = matrix[1];\n tempFloat32Vec4[1] = matrix[5];\n tempFloat32Vec4[2] = matrix[9];\n tempFloat32Vec4[3] = matrix[13];\n this.renderState.modelMatrixCol1Buf.setData(tempFloat32Vec4, offset);\n tempFloat32Vec4[0] = matrix[2];\n tempFloat32Vec4[1] = matrix[6];\n tempFloat32Vec4[2] = matrix[10];\n tempFloat32Vec4[3] = matrix[14];\n this.renderState.modelMatrixCol2Buf.setData(tempFloat32Vec4, offset);\n }\n\n drawColorOpaque(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawColorTranslucent(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0 ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawDepth(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.depthRenderer) {\n // this.#rendererSet.depthRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses depth (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawNormals(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.normalsRenderer) {\n // this.#rendererSet.normalsRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses normals (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawSilhouetteXRayed(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawSilhouetteHighlighted(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawSilhouetteSelected(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesColorOpaque(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawEdgesColorTranslucent(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawEdgesHighlighted(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawEdgesSelected(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesXRayed(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawOcclusion(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.occlusionRenderer) {\n this.#rendererSet.occlusionRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawShadow(): void {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n // this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.shadowRenderer) {\n // this.#rendererSet.shadowRenderer.render( this, RENDER_PASSES.COLOR_OPAQUE);\n // }\n }\n\n drawPickMesh(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickMeshRenderer) {\n this.#rendererSet.pickMeshRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickDepths(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickDepthRenderer) {\n this.#rendererSet.pickDepthRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnapInit(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapInitRenderer) {\n this.#rendererSet.snapInitRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnap(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapRenderer) {\n this.#rendererSet.snapRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickNormals(): void {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.pickNormalsRenderer) {\n // this.#rendererSet.pickNormalsRenderer.render( this, RENDER_PASSES.PICK);\n // }\n }\n\n destroy() {\n const renderState = this.renderState;\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.colorsBuf[viewIndex]) {\n renderState.colorsBuf[viewIndex].destroy();\n renderState.colorsBuf[viewIndex] = null;\n }\n }\n if (renderState.metallicRoughnessBuf) {\n renderState.metallicRoughnessBuf.destroy();\n renderState.metallicRoughnessBuf = null;\n }\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.flagsBufs[viewIndex]) {\n renderState.flagsBufs[viewIndex].destroy();\n renderState.flagsBufs[viewIndex] = null;\n }\n }\n if (renderState.modelMatrixCol0Buf) {\n renderState.modelMatrixCol0Buf.destroy();\n renderState.modelMatrixCol0Buf = null;\n }\n if (renderState.modelMatrixCol1Buf) {\n renderState.modelMatrixCol1Buf.destroy();\n renderState.modelMatrixCol1Buf = null;\n }\n if (renderState.modelMatrixCol2Buf) {\n renderState.modelMatrixCol2Buf.destroy();\n renderState.modelMatrixCol2Buf = null;\n }\n if (renderState.modelNormalMatrixCol0Buf) {\n renderState.modelNormalMatrixCol0Buf.destroy();\n renderState.modelNormalMatrixCol0Buf = null;\n }\n if (renderState.modelNormalMatrixCol1Buf) {\n renderState.modelNormalMatrixCol1Buf.destroy();\n renderState.modelNormalMatrixCol1Buf = null;\n }\n if (renderState.modelNormalMatrixCol2Buf) {\n renderState.modelNormalMatrixCol2Buf.destroy();\n renderState.modelNormalMatrixCol2Buf = null;\n }\n if (renderState.pickColorsBuf) {\n renderState.pickColorsBuf.destroy();\n renderState.pickColorsBuf = null;\n }\n if (renderState.indicesBuf) {\n renderState.indicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n if (renderState.edgeIndicesBuf) {\n renderState.edgeIndicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n this.renderState = null;\n }\n\n commitRendererState(viewIndex: number): void {\n }\n\n isEmpty(): boolean {\n return false;\n }\n\n setLayerMeshCollidable(layerMeshIndex, flags): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshMatrix(layerMeshIndex: number, matrix: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshOffset(viewIndex: number, layerMeshIndex: number, offset: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n}\n", "import {VBOInstancingLayer} from \"./VBOInstancingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBORenderer} from \"../VBORenderer\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\n\n/**\n * @private\n */\nexport abstract class VBOInstancingRenderer extends VBORenderer {\n\n renderVBOInstancingLayer(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n if (!this.bind(renderPass)) {\n return;\n }\n const attributes = this.attributes;\n const renderState = vboInstancingLayer.renderState;\n const view = this.renderContext.view;\n const viewIndex = view.viewIndex;\n const gl = this.renderContext.gl;\n gl.uniform1i(this.uniforms.renderPass, renderPass);\n attributes.position.bindArrayBuffer(renderState.positionsBuf);\n if (attributes.uv) {\n attributes.uv.bindArrayBuffer(renderState.uvBuf);\n }\n if (attributes.flags) {\n attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n gl.vertexAttribDivisor(attributes.flags.location, 1);\n }\n if (attributes.color) {\n attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n gl.vertexAttribDivisor(attributes.color.location, 1);\n }\n if (attributes.pickColor) {\n attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n gl.vertexAttribDivisor(attributes.pickColor.location, 1);\n }\n if (attributes.intensity) {\n // attributes.intensity.bindArrayBuffer(renderState.pointIntensitiesBuf);\n }\n if (attributes.modelMatrixCol0) {\n attributes.modelMatrixCol0.bindArrayBuffer(renderState.modelMatrixCol0Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol0.location, 1);\n }\n if (attributes.modelMatrixCol1) {\n attributes.modelMatrixCol1.bindArrayBuffer(renderState.modelMatrixCol1Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol1.location, 1);\n }\n if (attributes.modelMatrixCol2) {\n attributes.modelMatrixCol2.bindArrayBuffer(renderState.modelMatrixCol2Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol2.location, 1);\n }\n gl.uniform3fv(this.uniforms.positionsDecompressOffset, renderState.positionsDecompressOffset);\n gl.uniform3fv(this.uniforms.positionsDecompressScale, renderState.positionsDecompressScale);\n gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboInstancingLayer.rendererModel.worldMatrix);\n gl.uniformMatrix4fv(this.uniforms.viewMatrix, false,\n createRTCViewMat(\n renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickViewMatrix\n : this.renderContext.view.camera.viewMatrix,\n renderState.origin));\n if (renderState.indicesBuf) {\n renderState.indicesBuf.bind();\n }\n this.drawVBOInstancingLayerPrimitives(vboInstancingLayer, renderPass);\n }\n\n abstract drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number);\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingDrawRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return `${this.lambertShadingHash}-${this.slicingHash}`;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawLambertDefs(src);\n // this.vertexColorMainOpenBlock(src);\n src.push(\"void main(void) {\");\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawLambertLogic(src);\n this.vertexSlicingLogic(src);\n }\n // this.vertexColorMainCloseBlock(src);\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawLambertDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawLambertLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingSilhouetteRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {AmbientLight, DirLight, PointLight} from \"@xeokit/viewer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingPickMeshRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexPickInstancingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexPickMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]) : void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingEdgesDrawRenderer extends VBOInstancingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawEdgesColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingEdgesSilhouetteRenderer extends VBOInstancingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawEdgesSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOTrianglesInstancingDrawRenderer} from \"./VBOTrianglesInstancingDrawRenderer\";\nimport {VBOTrianglesInstancingSilhouetteRenderer} from \"./VBOTrianglesInstancingSilhouetteRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOTrianglesInstancingPickMeshRenderer} from \"./VBOTrianglesInstancingPickMeshRenderer\";\nimport {VBOTrianglesInstancingEdgesDrawRenderer} from \"./VBOTrianglesInstancingEdgesDrawRenderer\";\nimport {VBOTrianglesInstancingEdgesSilhouetteRenderer} from \"./VBOTrianglesInstancingEdgesSilhouetteRenderer\";\n\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOTrianglesInstancingDrawRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesInstancingSilhouetteRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOTrianglesInstancingPickMeshRenderer(this.renderContext);\n }\n\n createEdgesColorRenderer(): VBORenderer {\n return new VBOTrianglesInstancingEdgesDrawRenderer(this.renderContext);\n }\n\n createEdgesSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesInstancingEdgesSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOInstancingLayer} from \"../VBOInstancingLayer\";\nimport {VBOInstancingLayerParams} from \"../VBOInstancingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingLayer extends VBOInstancingLayer {\n constructor(VBOInstancingLayerParams: VBOInstancingLayerParams) {\n super(VBOInstancingLayerParams, rendererFactory.getRenderers(VBOInstancingLayerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingDrawRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawFlatColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawFlatColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingPickMeshRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingSilhouetteRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOLinesInstancingDrawRenderer} from \"./VBOLinesInstancingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOLinesInstancingPickMeshRenderer} from \"./VBOLinesInstancingPickMeshRenderer\";\nimport {VBOLinesInstancingSilhouetteRenderer} from \"./VBOLinesInstancingSilhouetteRenderer\";\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOLinesInstancingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOLinesInstancingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOLinesInstancingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOInstancingLayer} from \"../VBOInstancingLayer\";\nimport {VBOInstancingLayerParams} from \"../VBOInstancingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingLayer extends VBOInstancingLayer {\n constructor(layerParams: VBOInstancingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]):void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`if ((int(flags) & 0xF) != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawFlatColorLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]) :void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`int colorFlag = int(flags) & 0xF;`);\n src.push(`if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`int colorFlag = int(flags) & 0xF;`);\n src.push(`if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOLinesBatchingDrawRenderer} from \"./VBOLinesBatchingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOLinesBatchingPickMeshRenderer} from \"./VBOLinesBatchingPickMeshRenderer\";\nimport {VBOLinesBatchingSilhouetteRenderer} from \"./VBOLinesBatchingSilhouetteRenderer\";\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOLinesBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOLinesBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOLinesBatchingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {Component, EventEmitter, SDKError, type TextureTranscoder} from \"@xeokit/core\";\nimport {createUUID, loadArraybuffer} from \"@xeokit/utils\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {composeMat4, createMat4, createVec3, createVec4, eulerToQuat, identityQuat, mulMat4} from \"@xeokit/matrix\";\n\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {Viewer} from \"@xeokit/viewer\";\nimport {WebGLTexture} from \"@xeokit/webglutils\";\nimport type {\n RendererGeometry,\n RendererModel,\n RendererTexture,\n RendererTextureSet,\n SceneGeometry,\n SceneMesh,\n SceneModel,\n SceneObject,\n SceneTexture,\n SceneTextureSet\n} from \"@xeokit/scene\";\nimport type {WebGLRenderer} from \"./WebGLRenderer\";\n\nimport type {RenderContext} from \"./RenderContext\";\nimport {WebGLRendererGeometry} from \"./WebGLRendererGeometry\";\n\nimport {WebGLRendererTexture} from \"./WebGLRendererTexture\";\nimport {WebGLRendererObject} from \"./WebGLRendererObject\";\nimport {WebGLRendererMesh} from \"./WebGLRendererMesh\";\nimport {WebGLRendererTextureSet} from \"./WebGLRendererTextureSet\";\nimport type {WebGLTileManager} from \"./WebGLTileManager\";\nimport {MeshCounts} from \"./MeshCounts\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {RenderFlags} from \"./RenderFlags\";\nimport {Layer} from \"./Layer\";\nimport {VBOPointsBatchingLayer} from \"./vbo/batching/points/VBOPointsBatchingLayer\";\nimport {VBOTrianglesBatchingLayer} from \"./vbo/batching/triangles/VBOTrianglesBatchingLayer\";\nimport {VBOTrianglesInstancingLayer} from \"./vbo/instancing/triangles/VBOTrianglesInstancingLayer\";\nimport {VBOLinesInstancingLayer} from \"./vbo/instancing/lines/VBOLinesInstancingLayer\";\nimport {VBOLinesBatchingLayer} from \"./vbo/batching/lines/VBOLinesBatchingLayer\";\n\n\nconst defaultScale = createVec3([1, 1, 1]);\nconst defaultPosition = createVec3([0, 0, 0]);\nconst defaultRotation = createVec3([0, 0, 0]);\nconst defaultQuaternion = identityQuat();\n\nconst defaultColorTextureId = \"defaultColorTexture\";\nconst defaultMetalRoughTextureId = \"defaultMetalRoughTexture\";\nconst defaultNormalsTextureId = \"defaultNormalsTexture\";\nconst defaultEmissiveTextureId = \"defaultEmissiveTexture\";\nconst defaultOcclusionTextureId = \"defaultOcclusionTexture\";\nconst defaultTextureSetId = \"defaultTextureSet\";\n\n/**\n * @private\n */\nexport class WebGLRendererModel extends Component implements RendererModel {\n\n declare readonly id: string;\n readonly viewer: Viewer;\n readonly qualityRender: boolean;\n declare readonly destroyed: boolean;\n\n rendererGeometries: { [key: string]: RendererGeometry };\n rendererTextures: { [key: string]: RendererTexture };\n rendererTextureSets: { [key: string]: RendererTextureSet; };\n rendererMeshes: { [key: string]: WebGLRendererMesh };\n rendererObjects: { [key: string]: WebGLRendererObject };\n rendererObjectsList: WebGLRendererObject[];\n\n layerList: Layer[];\n #layers: { [key: string]: Layer };\n #currentLayers: { [key: string]: any };\n\n meshCounts: MeshCounts[];\n\n declare readonly onDestroyed: EventEmitter;\n\n webglRenderer: WebGLRenderer;\n #renderContext: RenderContext;\n #position: FloatArrayParam;\n #rotation: FloatArrayParam;\n #quaternion: FloatArrayParam;\n #scale: FloatArrayParam;\n #worldMatrix: FloatArrayParam;\n #viewMatrix: FloatArrayParam;\n #colorTextureEnabled: boolean;\n #backfaces: boolean;\n #numGeometries: number;\n #numTextures: number;\n #numMeshes: number;\n #numTriangles: number;\n #numLines: number;\n #numPoints: number;\n #numRendererObjects: number;\n #textureTranscoder: TextureTranscoder;\n #aabbDirty: boolean;\n #edgeThreshold: number;\n #aabb: FloatArrayParam;\n #viewMatrixDirty: boolean;\n #worldMatrixNonIdentity: boolean;\n #onCameraViewMatrix: () => void;\n #layerId: string | undefined;\n\n numSubMeshes: number;\n renderFlags: RenderFlags[];\n\n constructor(params: {\n id: string;\n viewer: Viewer;\n sceneModel: SceneModel;\n matrix?: FloatArrayParam;\n scale?: FloatArrayParam;\n webglRenderer: WebGLRenderer;\n renderContext: RenderContext;\n quaternion?: FloatArrayParam;\n rotation?: FloatArrayParam;\n position?: FloatArrayParam;\n edgeThreshold?: number;\n textureTranscoder: TextureTranscoder;\n qualityRender?: boolean;\n layerId?: string;\n }) {\n\n super(params.viewer);\n\n this.id = params.id;\n this.viewer = params.viewer;\n\n this.meshCounts = [\n new MeshCounts(),\n new MeshCounts(),\n new MeshCounts(),\n new MeshCounts()\n ];\n\n this.webglRenderer = params.webglRenderer;\n this.#renderContext = params.renderContext;\n this.#textureTranscoder = params.textureTranscoder;\n\n this.#aabb = collapseAABB3();\n this.#aabbDirty = false;\n this.#layers = {};\n this.layerList = [];\n this.#currentLayers = {};\n\n this.rendererGeometries = {};\n this.rendererTextures = {};\n this.rendererTextureSets = {};\n this.rendererMeshes = {};\n this.rendererObjects = {};\n this.rendererObjectsList = [];\n\n this.rendererObjects = {};\n\n this.#numGeometries = 0;\n this.#numRendererObjects = 0;\n this.#numTextures = 0;\n this.#numMeshes = 0;\n\n this.#numTriangles = 0;\n this.#numLines = 0;\n this.#numPoints = 0;\n this.#edgeThreshold = params.edgeThreshold || 10;\n\n this.numSubMeshes = 0;\n\n // Build static matrix\n\n this.#position = createVec3(params.position || [0, 0, 0]);\n this.#rotation = createVec3(params.rotation || [0, 0, 0]);\n this.#quaternion = createVec4(params.quaternion || [0, 0, 0, 1]);\n if (params.rotation) {\n eulerToQuat(this.#rotation, \"XYZ\", this.#quaternion);\n }\n this.#scale = createVec3(params.scale || [1, 1, 1]);\n this.#worldMatrix = createMat4();\n composeMat4(this.#position, this.#quaternion, this.#scale, this.#worldMatrix);\n\n if (params.matrix || params.position || params.rotation || params.scale || params.quaternion) {\n this.#viewMatrix = createMat4();\n this.#viewMatrixDirty = true;\n this.#worldMatrixNonIdentity = true;\n }\n\n this.qualityRender = (params.qualityRender !== false);\n\n this.#layerId = params.layerId;\n\n // this.#onCameraViewMatrix = this.#view.camera.onViewMatrix.subscribe((camera: Camera, viewMatrix: FloatArrayParam) => {\n // this.#viewMatrixDirty = true;\n // });\n\n this.#createDefaultTextureSet();\n\n for (let i = 0, len = this.layerList.length; i < len; i++) {\n const layer = this.layerList[i];\n layer.layerIndex = i;\n }\n this.#currentLayers = {};\n //this.#build();\n this.#attachSceneModel(params.sceneModel);\n this.webglRenderer.setImageDirty();\n // this.#view.viewer.scene.setAABBDirty();\n\n this.renderFlags = [\n new RenderFlags(),\n new RenderFlags(),\n new RenderFlags(),\n new RenderFlags()\n ];\n }\n\n #attachSceneModel(sceneModel: SceneModel): void {\n const textures = sceneModel.textures;\n const geometries = sceneModel.geometries;\n const meshes = sceneModel.meshes;\n const objects = sceneModel.objects;\n if (textures) {\n for (let textureId in textures) {\n this.#attachTexture(textures[textureId]);\n }\n }\n if (geometries) {\n for (let geometryId in geometries) {\n this.#attachGeometry(geometries[geometryId]);\n }\n }\n if (meshes) {\n for (let meshId in meshes) {\n this.#attachMesh(meshes[meshId]);\n }\n }\n if (objects) {\n for (let objectId in objects) {\n this.#attachSceneObject(objects[objectId]);\n }\n }\n for (let layerId in this.#currentLayers) {\n this.#currentLayers[layerId].build();\n }\n // Do a two-step commit and flush of all the flags and material attributes\n // managed by the RendererObjects into their Layers. This enables efficient\n // upload of that state into the data textures managed by those Layers. First\n // step populates the data arrays for the data textures, second step loads the\n // entire arrays into the textures, collapsing zillions of gl.texSubImage2D calls.\n const numViews = this.viewer.viewList.length;\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n // this.rendererObjectsList[i].initFlags(viewIndex);\n // }\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n // this.rendererObjectsList[i].commitRendererState(viewIndex);\n // }\n // }\n }\n\n #attachTexture(texture: SceneTexture): void {\n // Attaches a WebGLRendererTexture to the given SceneTexture\n const textureId = texture.id;\n if (this.rendererTextures[textureId]) {\n throw new SDKError(`WebGLRendererTexture with ID ${textureId} already created in WebGLRendererModel`);\n }\n const glTexture = new WebGLTexture({gl: this.#renderContext.gl});\n if (texture.preloadColor) {\n glTexture.setPreloadColor(texture.preloadColor);\n }\n if (texture.image) { // Ignore transcoder for Images\n const image = texture.image;\n image.crossOrigin = \"Anonymous\";\n glTexture.setImage(image, {\n minFilter: texture.minFilter,\n magFilter: texture.magFilter,\n wrapS: texture.wrapS,\n wrapT: texture.wrapT,\n wrapR: texture.wrapR,\n flipY: texture.flipY,\n encoding: texture.encoding\n });\n } else if (texture.src) {\n const ext = texture.src.split('.').pop();\n switch (ext) { // Don't transcode recognized image file types\n case \"jpeg\":\n case \"jpg\":\n case \"png\":\n case \"gif\":\n const image = new Image();\n image.onload = () => {\n glTexture.setImage(image, {\n minFilter: texture.minFilter,\n magFilter: texture.magFilter,\n wrapS: texture.wrapS,\n wrapT: texture.wrapT,\n wrapR: texture.wrapR,\n flipY: texture.flipY,\n encoding: texture.encoding\n });\n };\n image.src = texture.src; // URL or Base64 string\n break;\n default: // Assume other file types need transcoding\n if (!this.#textureTranscoder) {\n this.error(`Can't create texture from 'src' - rendererModel needs to be configured with a TextureTranscoder for this file type ('${ext}')`);\n } else {\n loadArraybuffer(texture.src, (arrayBuffer: ArrayBuffer) => {\n if (!arrayBuffer.byteLength) {\n this.error(`Can't create texture from 'src': file data is zero length`);\n return;\n }\n this.#textureTranscoder.transcode([arrayBuffer]).then((compressedTextureData) => {\n glTexture.setCompressedData(compressedTextureData);\n this.webglRenderer.setImageDirty();\n });\n },\n (errMsg: string) => {\n this.error(`Can't create texture from 'src': ${errMsg}`);\n });\n }\n break;\n }\n } else if (texture.buffers) { // Buffers implicitly require transcoding\n if (!this.#textureTranscoder) {\n this.error(`Can't create texture from 'buffers' - rendererModel needs to be configured with a TextureTranscoder for this option`);\n } else {\n this.#textureTranscoder.transcode(texture.buffers).then((compressedTextureData) => {\n glTexture.setCompressedData(compressedTextureData);\n this.webglRenderer.setImageDirty();\n });\n }\n }\n const rendererTexture = new WebGLRendererTexture(texture, glTexture);\n texture.rendererTexture = rendererTexture;\n this.rendererTextures[textureId] = rendererTexture;\n }\n\n #attachGeometry(geometry: SceneGeometry): void {\n // Attaches a WebGLRendererGeometry to the given SceneGeometry\n const geometryId = geometry.id;\n if (this.rendererGeometries[geometryId]) {\n throw new SDKError(`RendererGeometry with ID ${geometryId} already created in WebGLRendererModel`);\n }\n const rendererGeometry = new WebGLRendererGeometry();\n this.rendererGeometries[geometryId] = rendererGeometry;\n geometry.rendererGeometry = rendererGeometry;\n this.#numGeometries++;\n }\n\n #attachMesh(mesh: SceneMesh): void {\n // Attaches a WebGLRendererMesh to the given SceneMesh\n const rendererGeometry = this.rendererGeometries[mesh.geometry.id];\n if (!rendererGeometry) {\n throw new SDKError(`RendererGeometry with ID ${mesh.geometry.id} not found in WebGLRendererModel`);\n }\n const textureSetId = mesh.textureSet ? (mesh.textureSet).id : defaultTextureSetId;\n const rendererTextureSet = this.rendererTextureSets[textureSetId];\n if (!rendererTextureSet) {\n this.error(`TextureSet with ID \"${textureSetId}\" not found in WebGLRendererModel`);\n }\n const layer = this.#getLayer(textureSetId, mesh);\n if (!layer) {\n return; // TODO\n }\n let matrix = mesh.rtcMatrix;\n const color = (mesh.color) ? new Uint8Array([Math.floor(mesh.color[0] * 255), Math.floor(mesh.color[1] * 255), Math.floor(mesh.color[2] * 255)]) : [255, 255, 255];\n const opacity = (mesh.opacity !== undefined && mesh.opacity !== null) ? Math.floor(mesh.opacity * 255) : 255;\n const rendererMesh = new WebGLRendererMesh({\n tileManager: this.webglRenderer.tileManager,\n id: mesh.id,\n layer,\n color,\n opacity,\n matrix,\n rendererTextureSet,\n rendererGeometry,\n meshIndex: 0\n });\n rendererMesh.pickId = this.webglRenderer.attachPickable(rendererMesh);\n const a = rendererMesh.pickId >> 24 & 0xFF;\n const b = rendererMesh.pickId >> 16 & 0xFF;\n const g = rendererMesh.pickId >> 8 & 0xFF;\n const r = rendererMesh.pickId & 0xFF;\n const pickColor = new Uint8Array([r, g, b, a]);\n // collapseAABB3(rendererMesh.aabb);\n const meshIndex = layer.createLayerMesh({pickColor}, mesh);\n // expandAABB3(this.#aabb, rendererMesh.aabb);\n rendererMesh.layer = layer;\n rendererMesh.meshIndex = meshIndex;\n this.rendererMeshes[mesh.id] = rendererMesh;\n this.#numMeshes++;\n }\n\n #getLayer(textureSetId: string, mesh: SceneMesh): Layer | undefined {\n const sceneGeometry = mesh.geometry;\n const primitive = sceneGeometry.primitive;\n const instancing = sceneGeometry.numMeshes > 1;\n const origin = mesh.tile.origin;\n const layerId = `VBO-${instancing ? \"Instancing\" : \"Batching\"}-${textureSetId}.${primitive}.${Math.round(origin[0])}.${Math.round(origin[1])}.${Math.round(origin[2])}`;\n let layer = this.#currentLayers[layerId];\n if (layer) {\n if (layer.canCreateLayerMesh(sceneGeometry)) {\n return layer;\n } else {\n layer.build();\n delete this.#currentLayers[layerId];\n }\n }\n let textureSet;\n if (textureSetId) {\n textureSet = this.rendererTextureSets[textureSetId];\n if (!textureSet) {\n this.error(`TextureSet with ID \"${textureSetId}\" not found in WebGLRendererModel - ensure that you create it first with createTextureSet()`);\n // Create layer without texture set\n }\n }\n if (instancing) {\n switch (sceneGeometry.primitive) {\n case TrianglesPrimitive:\n case SolidPrimitive:\n case SurfacePrimitive:\n layer = new VBOTrianglesInstancingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n sceneGeometry,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOTrianglesInstancingLayer`);\n break;\n case LinesPrimitive:\n layer = new VBOLinesInstancingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n sceneGeometry,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOLinesInstancingLayer`);\n break;\n case PointsPrimitive:\n // layer = new VBOPointsInstancingLayer({\n // renderContext: this.#renderContext,\n // rendererModel: this,\n // sceneGeometry,\n // textureSet,\n // layerIndex: 0,\n // origin\n // });\n this.log(`Creating new VBOPointsInstancingLayer`);\n break;\n default:\n this.error(`Primitive type not supported: ${sceneGeometry.primitive}`);\n return;\n }\n } else {\n switch (sceneGeometry.primitive) {\n case TrianglesPrimitive:\n case SolidPrimitive:\n case SurfacePrimitive:\n layer = new VBOTrianglesBatchingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n primitive,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOTrianglesBatchingLayer`);\n break;\n case LinesPrimitive:\n layer = new VBOLinesBatchingLayer({\n primitive,\n renderContext: this.#renderContext,\n rendererModel: this,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOLinesBatchingLayer`);\n break;\n case PointsPrimitive:\n layer = new VBOPointsBatchingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n primitive,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOPointsBatchingLayer`);\n break;\n default:\n this.error(`Primitive type not supported: ${sceneGeometry.primitive}`);\n return;\n }\n }\n this.#layers[layerId] = layer;\n this.layerList.push(layer);\n this.#currentLayers[layerId] = layer;\n return layer;\n }\n\n #attachSceneObject(sceneObject: SceneObject): void {\n // Attaches a WebGLRendererObject to the given SceneObject\n let objectId = sceneObject.id;\n if (objectId === undefined) {\n objectId = createUUID();\n } else if (this.rendererObjects[objectId]) {\n this.error(\"Already has a WebGLRenderObject with this ID: \" + objectId + \" - will assign random ID\");\n objectId = createUUID();\n }\n const meshes = sceneObject.meshes;\n if (meshes === undefined) {\n throw new SDKError(\"SceneObject property expected: meshes\");\n }\n const rendererMeshes: WebGLRendererMesh[] = [];\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n const rendererMesh = this.rendererMeshes[mesh.id];\n if (!rendererMesh) {\n console.error(\"WebGLRendererMesh not found: + \" + mesh.id);\n } else {\n rendererMeshes.push(rendererMesh);\n }\n }\n if (rendererMeshes.length === 0) {\n return;\n }\n const rendererObject = new WebGLRendererObject({\n id: objectId,\n rendererModel: this,\n rendererMeshes,\n aabb: sceneObject.aabb,\n layerId: this.#layerId\n });\n this.rendererObjectsList.push(rendererObject);\n this.rendererObjects[objectId] = rendererObject; // \n sceneObject.rendererObject = rendererObject;\n this.#numRendererObjects++;\n }\n\n get position(): FloatArrayParam {\n return this.#position;\n }\n\n get rotation(): FloatArrayParam {\n return this.#rotation;\n }\n\n get quaternion(): FloatArrayParam {\n return this.#quaternion;\n }\n\n get scale(): FloatArrayParam {\n return this.#scale;\n }\n\n get worldMatrix(): FloatArrayParam {\n return this.#worldMatrix;\n }\n\n get colorTextureEnabled() {\n return this.#colorTextureEnabled;\n }\n\n get backfaces(): boolean {\n return this.#backfaces;\n }\n\n set backfaces(backfaces: boolean) {\n backfaces = !!backfaces;\n this.#backfaces = backfaces;\n this.webglRenderer.setImageDirty();\n }\n\n get matrix(): FloatArrayParam {\n return this.#worldMatrix;\n }\n\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n this.#rebuildAABB();\n }\n return this.#aabb;\n }\n\n get numTriangles(): number {\n return this.#numTriangles;\n }\n\n get numLines(): number {\n return this.#numLines;\n }\n\n get numPoints(): number {\n return this.#numPoints;\n }\n\n #createDefaultTextureSet() {\n const defaultColorRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [1, 1, 1, 1] // [r, g, b, a]})\n }));\n\n const defaultMetalRoughRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 1, 1, 1] // [unused, roughness, metalness, unused]\n }));\n const defaultNormalsRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 0, 0, 0] // [x, y, z, unused] - these must be zeros\n }));\n\n const defaultEmissiveRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 0, 0, 1] // [x, y, z, unused]\n }));\n const defaultOcclusionRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [1, 1, 1, 1] // [x, y, z, unused]\n }));\n this.rendererTextures[defaultColorTextureId] = defaultColorRendererTexture;\n this.rendererTextures[defaultMetalRoughTextureId] = defaultMetalRoughRendererTexture;\n this.rendererTextures[defaultNormalsTextureId] = defaultNormalsRendererTexture;\n this.rendererTextures[defaultEmissiveTextureId] = defaultEmissiveRendererTexture;\n this.rendererTextures[defaultOcclusionTextureId] = defaultOcclusionRendererTexture;\n this.rendererTextureSets[defaultTextureSetId] = new WebGLRendererTextureSet({\n id: defaultTextureSetId,\n colorRendererTexture: defaultColorRendererTexture,\n metallicRoughnessRendererTexture: defaultMetalRoughRendererTexture,\n emissiveRendererTexture: defaultEmissiveRendererTexture,\n occlusionRendererTexture: defaultOcclusionRendererTexture\n });\n }\n\n #rebuildAABB() {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n const rendererObject = this.rendererObjectsList[i];\n expandAABB3(this.#aabb, rendererObject.aabb);\n }\n this.#aabbDirty = false;\n }\n\n /** @private */\n rebuildRenderFlags(viewIndex: number) {\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.reset();\n this.#updateRenderFlagsVisibleLayers(viewIndex);\n if (renderFlags.numLayers > 0 && renderFlags.numVisibleLayers === 0) {\n renderFlags.culled = true;\n return;\n }\n this.#updateRenderFlags(viewIndex);\n }\n\n /**\n * @private\n */\n #updateRenderFlagsVisibleLayers(viewIndex: number) {\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.numLayers = this.layerList.length;\n renderFlags.numVisibleLayers = 0;\n for (let layerIndex = 0, len = this.layerList.length; layerIndex < len; layerIndex++) {\n const layer = this.layerList[layerIndex];\n const layerVisible = this.#getActiveSectionPlanesForLayer(layer);\n if (layerVisible) {\n renderFlags.visibleLayers[renderFlags.numVisibleLayers++] = layerIndex;\n }\n }\n }\n\n #getActiveSectionPlanesForLayer(layer) {\n // const renderFlags = this.renderFlags;\n // const sectionPlanes = this.scene._sectionPlanesState.sectionPlanes;\n // const numSectionPlanes = sectionPlanes.length;\n // const baseIndex = layer.layerIndex * numSectionPlanes;\n // if (numSectionPlanes > 0) {\n // for (let i = 0; i < numSectionPlanes; i++) {\n // const sectionPlane = sectionPlanes[i];\n // if (!sectionPlane.active) {\n // renderFlags.sectionPlanesActivePerLayer[baseIndex + i] = false;\n // } else {\n // renderFlags.sectionPlanesActivePerLayer[baseIndex + i] = true;\n // renderFlags.sectioned = true;\n // }\n // }\n // }\n return true;\n }\n\n #updateRenderFlags(viewIndex: number) {\n const meshCounts = this.meshCounts[viewIndex];\n if (meshCounts.numVisible === 0) {\n return;\n }\n if (meshCounts.numCulled === meshCounts.numMeshes) {\n return;\n }\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.colorOpaque = (meshCounts.numTransparent < meshCounts.numMeshes);\n if (meshCounts.numTransparent > 0) {\n renderFlags.colorTransparent = true;\n }\n if (meshCounts.numXRayed > 0) {\n const xrayMaterial = this.viewer[viewIndex].xrayMaterial;\n if (xrayMaterial.fill) {\n if (xrayMaterial.fillAlpha < 1.0) {\n renderFlags.xrayedSilhouetteTransparent = true;\n } else {\n renderFlags.xrayedSilhouetteOpaque = true;\n }\n }\n if (xrayMaterial.edges) {\n if (xrayMaterial.edgeAlpha < 1.0) {\n renderFlags.xrayedEdgesTransparent = true;\n } else {\n renderFlags.xrayedEdgesOpaque = true;\n }\n }\n }\n const edgeMaterial = this.viewer[viewIndex].edges;\n if (edgeMaterial.enabled) {\n renderFlags.edgesOpaque = (meshCounts.numTransparent < meshCounts.numMeshes);\n if (meshCounts.numTransparent > 0) {\n renderFlags.edgesTransparent = true;\n }\n }\n if (meshCounts.numSelected > 0) {\n const selectedMaterial = this.viewer[viewIndex].selectedMaterial;\n if (selectedMaterial.fill) {\n if (selectedMaterial.fillAlpha < 1.0) {\n renderFlags.selectedSilhouetteTransparent = true;\n } else {\n renderFlags.selectedSilhouetteOpaque = true;\n }\n }\n if (selectedMaterial.edges) {\n if (selectedMaterial.edgeAlpha < 1.0) {\n renderFlags.selectedEdgesTransparent = true;\n } else {\n renderFlags.selectedEdgesOpaque = true;\n }\n }\n }\n if (meshCounts.numHighlighted > 0) {\n const highlightMaterial = this.viewer[viewIndex].highlightMaterial;\n if (highlightMaterial.fill) {\n if (highlightMaterial.fillAlpha < 1.0) {\n renderFlags.highlightedSilhouetteTransparent = true;\n } else {\n renderFlags.highlightedSilhouetteOpaque = true;\n }\n }\n if (highlightMaterial.edges) {\n if (highlightMaterial.edgeAlpha < 1.0) {\n renderFlags.highlightedEdgesTransparent = true;\n } else {\n renderFlags.highlightedEdgesOpaque = true;\n }\n }\n }\n }\n\n #build() {\n // for (let layerId in this.#currentLayers) {\n // let layer = this.#currentLayers[layerId];\n // layer.build();\n // delete this.#currentLayers[layerId];\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // const rendererObject = this.rendererObjectsList[i];\n // rendererObject.initFlags();\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // const rendererObject = this.rendererObjectsList[i];\n // rendererObject.commitRendererState();\n // }\n }\n\n // build() {\n // if (this.destroyed) {\n // this.log(\"rendererModel already destroyed\");\n // return;\n // }\n // if (this.built) {\n // this.log(\"rendererModel already built\");\n // return;\n // }\n // for (let layerId in this.#currentLayers) {\n // if (this.#currentLayers.hasOwnProperty(layerId)) {\n // this.#currentLayers[layerId].build();\n // }\n // }\n // for (let i = 0, len = this.objectList.length; i < len; i++) {\n // const rendererObject = this.objectList[i];\n // rendererObject.build();\n // }\n // for (let i = 0, len = this.objectList.length; i < len; i++) {\n // const rendererObject = this.objectList[i];\n // rendererObject.build2();\n // }\n // // this.layerList.sort((a, b) => {\n // // if (a.sortId < b.sortId) {\n // // return -1;\n // // }\n // // if (a.sortId > b.sortId) {\n // // return 1;\n // // }\n // // return 0;\n // // });\n // for (let i = 0, len = this.layerList.length; i < len; i++) {\n // const layer = this.layerList[i];\n // layer.layerIndex = i;\n // }\n // this.#currentLayers = {};\n // this.built = true;\n // this.webglRenderer.setImageDirty();\n // // this.#view.viewer.scene.setAABBDirty();\n // this.onBuilt.dispatch(this, null);\n // }\n //\n\n destroy() {\n if (this.destroyed) {\n return;\n }\n // this.detachSceneModel();\n // this.#view.camera.onViewMatrix.unsubscribe(this.#onCameraViewMatrix);\n for (let layerId in this.#currentLayers) {\n if (this.#currentLayers.hasOwnProperty(layerId)) {\n this.#currentLayers[layerId].destroy();\n }\n }\n for (let i = 0, len = this.layerList.length; i < len; i++) {\n this.layerList[i].destroy();\n }\n for (let objectId in this.rendererObjects) {\n this.rendererObjects[objectId].destroy();\n }\n for (let meshId in this.rendererMeshes) {\n this.rendererMeshes[meshId].destroy();\n // this.webglRenderer.deregisterPickable(this.rendererMeshes[meshId].pickId);\n }\n this.#currentLayers = {};\n this.#layers = {};\n this.layerList = [];\n this.rendererGeometries = {};\n this.rendererTextures = {};\n this.rendererTextureSets = {};\n this.rendererMeshes = {};\n this.rendererObjects = {};\n // this.#view.viewer.setAABBDirty();\n super.destroy();\n }\n\n // detachSceneModel(): void {\n // const sceneModel = this.sceneModel;\n // if (!sceneModel) {\n // return;\n // }\n // const textures = sceneModel.textures;\n // const geometries = sceneModel.geometries;\n // const meshes = sceneModel.meshes;\n // const objects = sceneModel.objects;\n // if (textures) {\n // for (let textureId in textures) {\n // const texture = textures[textureId];\n // if (texture.rendererTexture) {\n // texture.rendererTexture = null;\n // }\n // }\n // }\n // if (geometries) {\n // for (let geometryId in geometries) {\n // const geometry = geometries[geometryId];\n // if (geometry.rendererGeometry) {\n // geometry.rendererGeometry = null;\n // }\n // }\n // }\n // if (meshes) {\n // for (let meshId in meshes) {\n // const mesh = meshes[meshId];\n // if (mesh.rendererMesh) {\n // mesh.rendererMesh = null;\n // }\n // }\n // }\n // if (objects) {\n // for (let objectId in objects) {\n // const object = objects[objectId];\n // if (object.rendererObject) {\n // object.rendererObject = null;\n // }\n // }\n // }\n // this.sceneModel = null;\n // }\n}\n\n\n\n", "/**\n * Collects statistics during each rendered frame.\n */\nexport class RenderStats {\n\n /**\n * Number of WebGL programs that were bound in the rendered frame.\n */\n numProgramBinds: number;\n\n /**\n * Number of WebGL drawArrays calls performed during the rendered frame.\n */\n numDrawArrays: number;\n\n /**\n * Number of WebGL textures that were bound in the rendered frame.\n */\n numTextureBinds: number;\n\n /**\n * Creates a new RenderStats.\n */\n constructor() {\n this.reset();\n }\n\n /**\n * Called by the renderers before each frame.\n */\n reset() {\n this.numProgramBinds = 0;\n this.numDrawArrays = 0;\n this.numTextureBinds = 0;\n }\n}\n", "import {Map} from \"@xeokit/utils\";\nimport {addVec3, createMat4, createVec2, createVec3, cross3Vec3, lookAtMat4v, normalizeVec3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {Renderer, View, Viewer} from \"@xeokit/viewer\";\nimport {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\nimport {RenderContext} from \"./RenderContext\";\nimport {getWebGLExtension, WEBGL_INFO} from \"@xeokit/webglutils\";\nimport type {Pickable} from \"./Pickable\";\nimport {WebGLRendererModel} from \"./WebGLRendererModel\";\nimport type {Capabilities, TextureTranscoder} from \"@xeokit/core\";\nimport {EventEmitter, SDKError} from \"@xeokit/core\";\nimport type {RendererObject, SceneModel} from \"@xeokit/scene\";\nimport {WebGLTileManager} from \"./WebGLTileManager\";\nimport {RenderStats} from \"./RenderStats\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {Layer} from \"./Layer\";\nimport {WebGLRenderBufferManager} from \"./WebGLRenderBufferManager\";\nimport {PickParams, PickResult} from \"@xeokit/viewer\";\nimport {WebGLRendererMesh} from \"./WebGLRendererMesh\";\n\nconst ua = navigator.userAgent.match(/(opera|chrome|safari|firefox|msie|mobile)\\/?\\s*(\\.?\\d+(\\.\\d+)*)/i);\nconst isSafari = (ua && ua[1].toLowerCase() === \"safari\");\n\n/** @private */\nclass WebGLRendererView {\n\n view: View;\n transparencyEnabled: boolean;\n imageDirty: boolean;\n viewMatrixDirty: boolean;\n canvasTransparent: boolean;\n saoEnabled: boolean;\n edgesEnabled: boolean;\n backgroundColor: FloatArrayParam;\n transparentEnabled: boolean;\n pbrEnabled: boolean;\n saveCanvasBoundary: DOMRect;\n gl: WebGL2RenderingContext;\n renderBufferManager: WebGLRenderBufferManager;\n\n pickIDs: Map;\n\n constructor(gl: WebGL2RenderingContext, webglCanvasElement: HTMLCanvasElement, view: View) {\n this.gl = gl;\n this.view = view;\n this.transparencyEnabled = true;\n this.imageDirty = true;\n this.viewMatrixDirty = true;\n this.canvasTransparent = false;\n this.pbrEnabled = false;\n this.saoEnabled = false;\n this.edgesEnabled = true;\n this.transparentEnabled = true;\n this.backgroundColor = createVec3();\n this.saveCanvasBoundary = view.htmlElement.getBoundingClientRect();\n this.renderBufferManager = new WebGLRenderBufferManager(gl, webglCanvasElement);\n this.pickIDs = new Map({});\n }\n\n destroy() {\n this.renderBufferManager.destroy();\n }\n}\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempMat4b = createMat4();\n\nconst pickTemps = {\n pickCanvasPos: createVec2(),\n pickWorldRayDir: createVec3(),\n pickWorldRayOrigin: createVec3(),\n pickViewMatrix: createMat4(),\n pickProjMatrix: createMat4()\n};\n\n/**\n * A WebGL-based rendering strategy for a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/webglrenderer\" | @xeokit/webglrenderer} for usage.\n */\nexport class WebGLRenderer implements Renderer {\n\n /**\n * Interfaces through which each {@link @xeokit/viewer!ViewObject | ViewObject} shows/hides/highlights/selects/xrays/colorizes\n * its {@link @xeokit/scene!SceneObject | SceneObject} within the WebGLRenderer that's\n * configured on its {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererObjects: { [key: string]: RendererObject };\n\n /**\n * @internal\n */\n renderStats: RenderStats;\n\n /**\n * @internal\n */\n tileManager: WebGLTileManager | null;\n\n\n #pickBufferManager: WebGLRenderBufferManager;\n\n #rendererViews: { [key: string]: WebGLRendererView };\n #rendererViewsList: WebGLRendererView[];\n #activeRendererView: WebGLRendererView;\n\n #viewer: Viewer;\n renderContext: RenderContext;\n\n #shadersDirty: boolean;\n\n #rendererModels: { [key: string]: WebGLRendererModel };\n #layerList: Layer[];\n #layerListDirty: boolean;\n #stateSortDirty: boolean;\n #pickIDs = new Map({});\n #extensionHandles: any;\n #logarithmicDepthBufferEnabled: boolean;\n #alphaDepthMask: boolean;\n #occlusionTester: any;\n // #saoOcclusionRenderer: null | SAOOcclusionRenderer;\n // #saoDepthLimitedBlurRenderer: SAODepthLimitedBlurRenderer;\n #textureTranscoder: TextureTranscoder;\n #viewMatrixDirty: boolean;\n #snapshotBound: boolean;\n #destroyed: boolean;\n\n #onViewCameraMatrix: () => void | null;\n\n /**\n * @internal\n * @event\n */\n readonly onCompiled: EventEmitter;\n\n /**\n * @internal\n * @event\n */\n readonly onDestroyed: EventEmitter;\n\n #webglCanvasElement: HTMLCanvasElement;\n #gl: WebGL2RenderingContext;\n\n #pickResult: PickResult;\n\n /**\n * Creates a WebGLRenderer.\n *\n * @param params Configs\n * @param params.textureTranscoder Injects an optional transcoder that will be used internally by {@link rendererModel.createTexture}\n * to convert transcoded texture data. The transcoder is only required when we'll be providing transcoded data\n * to {@link rendererModel.createTexture}. We assume that all transcoded texture data added to a ````rendererModel````\n * will then be in a format supported by this transcoder.\n */\n constructor(params: {\n textureTranscoder?: TextureTranscoder\n }) {\n this.renderStats = new RenderStats();\n this.rendererObjects = {};\n this.tileManager = null;\n this.renderContext = null;\n this.#textureTranscoder = params.textureTranscoder || new KTX2TextureTranscoder({});\n this.#alphaDepthMask = false;\n this.#extensionHandles = {};\n this.#pickIDs = new Map({});\n this.#layerList = [];\n this.#layerListDirty = true;\n this.#stateSortDirty = true;\n this.#shadersDirty = true;\n this.#occlusionTester = null; // Lazy-created in #addMarker()\n\n // this.#saoDepthRenderBuffer = null;\n // this.#renderBufferManager = null;\n this.#logarithmicDepthBufferEnabled = false;\n this.#rendererModels = {};\n this.#viewMatrixDirty = true;\n this.#snapshotBound = false;\n this.#destroyed = false;\n\n this.#rendererViews = {};\n this.#rendererViewsList = [];\n this.#activeRendererView = null;\n\n this.#pickResult = new PickResult();\n\n this.onCompiled = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#webglCanvasElement = document.createElement('canvas');\n const webglCanvasElement = this.#webglCanvasElement;\n webglCanvasElement.width = 400;\n webglCanvasElement.height = 400;\n webglCanvasElement.style.position = 'absolute';\n webglCanvasElement.style.top = '50px';\n webglCanvasElement.style.left = '50px';\n webglCanvasElement.style.border = '1px solid black';\n webglCanvasElement.style[\"pointer-events\"] = \"none\";\n webglCanvasElement.style[\"z-index\"] = 100000; // HACK\n document.body.appendChild(webglCanvasElement);\n const contextAttr = {\n alpha: true,\n preserveDrawingBuffer: true,\n stencil: false,\n premultipliedAlpha: false,\n antialias: true\n };\n this.#gl = webglCanvasElement.getContext(\"webgl2\", contextAttr);\n if (!this.#gl) {\n throw new SDKError(`Failed to get a WebGL2 context`);\n }\n this.#gl.hint(this.#gl.FRAGMENT_SHADER_DERIVATIVE_HINT, this.#gl.NICEST);\n\n this.#pickBufferManager = new WebGLRenderBufferManager(this.#gl, webglCanvasElement);\n\n // this.tileManager = new WebGLTileManager({camera: view.camera, gl});\n }\n\n /**\n * The Viewer this WebGLRenderer is currently attached to, if any.\n */\n get viewer(): Viewer {\n return this.#viewer;\n }\n\n /**\n * Gets the TextureTranscoder this WebGLRenderer was configured with, if any.\n *\n * @internal\n */\n get textureTranscoder(): void | TextureTranscoder {\n return this.#textureTranscoder;\n }\n\n /**\n * Gets the capabilities of this WebGLRenderer.\n *\n * @param capabilities Returns the capabilities of this WebGLRenderer.\n * @internal\n */\n getCapabilities(capabilities: Capabilities): void {\n capabilities.maxViews = 4;\n const htmlElement = document.createElement('canvas');\n let gl;\n try {\n gl = htmlElement.getContext(\"webgl2\");\n } catch (e) {\n console.error('Failed to get a WebGL context');\n }\n if (gl) {\n capabilities.astcSupported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_astc');\n capabilities.etc1Supported = true; // WebGL\n capabilities.etc2Supported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_etc');\n capabilities.dxtSupported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc');\n capabilities.bptcSupported = !!getWebGLExtension(gl, 'EXT_texture_compression_bptc');\n capabilities.pvrtcSupported = !!(getWebGLExtension(gl, 'WEBGL_compressed_texture_pvrtc') || getWebGLExtension(gl, 'WEBKIT_WEBGL_compressed_texture_pvrtc'));\n }\n }\n\n /**\n * Initializes this WebGLRenderer by attaching a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n * @param viewer Viewer to attach.\n * @returns *void*\n * * Viewer successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * A Viewer is already attached to this Renderer.\n * * The given Viewer is already attached to another Renderer.\n */\n attachViewer(viewer: Viewer): void {\n if (this.#viewer) {\n throw new SDKError(\"Can't attach Viewer to WebGLRenderer - a Viewer is already attached\");\n }\n if (viewer.renderer) {\n throw new SDKError(\"Can't attach Viewer to WebGLRenderer - given Viewer is already attached to another Renderer\");\n }\n this.#viewer = viewer;\n this.#textureTranscoder.init(this.#viewer.capabilities);\n this.renderContext = new RenderContext(this.#viewer, this.#gl, this);\n }\n\n /**\n * Detaches the {@link @xeokit/viewer!Viewer | Viewer} that is currently attached, if any.\n *\n * @internal\n * @returns *void*\n * * Viewer successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is currently attached to this WebGLRenderer.\n */\n detachViewer(): SDKError | void {\n if (this.#viewer) {\n return new SDKError(\"Can't detach Viewer from WebGLRenderer - no Viewer is currently attached\");\n }\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[id];\n }\n this.#viewer = null;\n this.#rendererViews = {};\n this.renderContext = null;\n this.#layerList = [];\n this.rendererObjects = {};\n this.tileManager = null;\n }\n\n /**\n * Attaches a {@link @xeokit/viewer!View} to this WebGLRenderer.\n *\n * The WebGLRenderer will then begin rendering each {@link @xeokit/scene!SceneModel | SceneModel} previously or subsequently\n * created with {@link @xeokit/scene!Scene.createModel | Scene.createModel}, for the new View.\n *\n * You can only attach as many Views as indicated in {@link @xeokit/core!Capabilities.maxViews | Capabilities.maxViews}, as returned by\n * {@link @xeokit/webglrenderer!WebGLRenderer.getCapabilities | Renderer.getCapabilities}.\n *\n * You must attach a View before you can attach a SceneModel.\n *\n * @internal\n * @param view The View to attach.\n * @returns *void*\n * * View successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is attached to this WebGLRenderer.\n * * Caller attempted to attach too many Views.\n * * The WebGLRenderer failed to get a WebGL2 context on the View's canvas.\n */\n attachView(view: View): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't attach View to WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViews[view.id]) {\n return new SDKError(\"Can't attach additional View to WebGLRenderer - View already attached (see WebViewerCapabilities.maxViews)\");\n }\n\n view.camera.onViewMatrix.subscribe(this.#onViewCameraMatrix = () => {\n this.#viewMatrixDirty = true;\n });\n const rendererView = new WebGLRendererView(this.renderContext.gl, this.#webglCanvasElement, view);\n this.#rendererViews[view.id] = rendererView;\n view.viewIndex = this.#rendererViewsList.length;\n this.#rendererViewsList.push(rendererView);\n }\n\n // #updateViewIndices() {\n // this.#rendererViewsList = [];\n // for (let viewIndex = 0, len = this.#viewer.viewList.length; viewIndex < len; viewIndex++) {\n // const view = this.#viewer.viewList[viewIndex];\n // view.viewIndex = viewIndex;\n // this.#rendererViewsList[viewIndex] = this.#rendererViews[view.id];\n // }\n // }\n\n /**\n * Detaches the given {@link @xeokit/viewer!View} from this Renderer.\n *\n * The Renderer will then cease rendering for that View.\n *\n * @internal\n * @param view The View to detach.\n * @returns *void*\n * * View successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is attached to this WebGLRenderer.\n * * View is not currently attached to this WebGLRenderer.\n */\n detachView(view: View): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't detach View from WebGLRenderer - no Viewer is attached\");\n }\n const rendererView = this.#rendererViews[view.id];\n if (!rendererView) {\n return new SDKError(\"Can't detach View to WebGLRenderer - given View is not attached\");\n }\n rendererView.destroy();\n delete this.#rendererViews[view.id];\n view.camera.onViewMatrix.unsubscribe(this.#onViewCameraMatrix);\n view.viewIndex = 0;\n this.#onViewCameraMatrix = null;\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[id];\n }\n this.renderContext = null;\n this.#layerList = [];\n this.rendererObjects = {};\n this.tileManager = null;\n // TODO: Remove rendererView etc\n }\n\n /**\n * Attaches a {@link @xeokit/scene!SceneModel | SceneModel} to this WebGLRenderer.\n *\n * This method attaches various hooks to the elements within the SceneModel, through which they can\n * upload state updates to the Renderer.\n *\n * * Sets a {@link @xeokit/scene!RendererModel} on {@link @xeokit/scene!SceneModel.rendererModel | SceneModel.rendererModel}\n * * Sets a {@link @xeokit/scene!RendererObject} on each {@link @xeokit/scene!SceneObject.rendererObject | SceneObject.rendererObject}\n * * Sets a {@link @xeokit/scene!RendererMesh} on each {@link @xeokit/scene!SceneMesh.rendererMesh | SceneMesh.rendererMesh}\n * * Sets a {@link @xeokit/scene!RendererTextureSet} on each {@link @xeokit/scene!SceneTextureSet.rendererTextureSet | SceneTextureSet.rendererTextureSet}\n * * Sets a {@link @xeokit/scene!RendererTexture} on each {@link @xeokit/scene!SceneTexture.rendererTexture | SceneTexture.rendererTexture}\n *\n * Then, when we make any state updates to those components, they will upload the updates into the Renderer.\n *\n * You must first attach a View with {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView} before you can attach a SceneModel.\n *\n * @param sceneModel\n * @internal\n * @returns *void*\n * * SceneModel successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * SceneModel already attached to this WebGLRenderer, or to another Renderer.\n */\n attachSceneModel(sceneModel: SceneModel): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't attach SceneModel to WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViewsList.length === 0) {\n throw new SDKError(\"Can't attach SceneModel to WebGLRenderer - no View is attached\");\n }\n const rendererModel = new WebGLRendererModel({\n id: sceneModel.id,\n sceneModel,\n viewer: this.viewer,\n textureTranscoder: this.#textureTranscoder,\n webglRenderer: this,\n renderContext: this.renderContext\n });\n this.#rendererModels[rendererModel.id] = rendererModel;\n this.#attachRendererObjects(rendererModel);\n this.#layerListDirty = true;\n sceneModel.rendererModel = rendererModel;\n }\n\n #attachRendererObjects(rendererModel: WebGLRendererModel) {\n const rendererObjects = rendererModel.rendererObjects;\n for (let id in rendererObjects) {\n this.rendererObjects[id] = rendererObjects[id];\n }\n }\n\n /**\n * Detaches a {@link @xeokit/scene!SceneModel | SceneModel} from this WebGLRenderer.\n *\n * Detaches and destroys the {@link @xeokit/scene!RendererModel}, {@link @xeokit/scene!RendererObject} and\n * {@link @xeokit/scene!RendererMesh},\n * {@link @xeokit/scene!RendererTexture} instances that were attached in {@link @xeokit/webglrenderer!WebGLRenderer.attachSceneModel}.\n *\n * @internal\n * @returns *void*\n * * SceneModel successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * SceneModel is not attached to this WebGLRenderer.\n */\n detachSceneModel(sceneModel: SceneModel): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't detach SceneModel from WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViewsList.length === 0) {\n throw new SDKError(\"Can't detach SceneModel to WebGLRenderer - no View is attached\");\n }\n if (this.#rendererModels[sceneModel.id] == undefined) {\n return new SDKError(`Can't detach SceneModel from WebGLRenderer - no SceneModel with this ID (\"${sceneModel.id}\") has been attached to this WebGLRenderer`);\n }\n this.#detachSceneModel(sceneModel);\n }\n\n #detachSceneModel(sceneModel: SceneModel) {\n if (this.#rendererModels[sceneModel.id]) {\n const rendererModel = this.#rendererModels[sceneModel.id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[sceneModel.id];\n this.#layerListDirty = true;\n sceneModel.rendererModel = null;\n }\n }\n\n #detachRendererObjects(rendererModel: WebGLRendererModel) {\n const rendererObjects = rendererModel.rendererObjects;\n for (let id in rendererObjects) {\n delete this.rendererObjects[id];\n }\n }\n\n /**\n * @private\n */\n attachPickable(pickable: Pickable): number { // @ts-ignore\n return this.#pickIDs.addItem(pickable);\n }\n\n /**\n * @private\n */\n detachPickable(pickId: number) {\n this.#pickIDs.removeItem(pickId);\n }\n\n /**\n * Indicates that the WebGLRenderer needs to draw a new frame.\n * @internal\n */\n setImageDirty(viewIndex?: number): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets the WebGLRenderer's background color.\n * @internal\n */\n setBackgroundColor(viewIndex: number, color: FloatArrayParam): void { // @ts-ignore\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n // @ts-ignore\n rendererView.backgroundColor.set(color);\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets whether the WebGLRenderer draws edges.\n * Triggers a new frame render.\n * @internal\n */\n setEdgesEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.edgesEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets whether the WebGLRenderer draws with physically-based rendering.\n * Triggers a new frame render.\n * @internal\n */\n setPBREnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.pbrEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n\n getSAOSupported(): boolean {\n return isSafari && WEBGL_INFO.SUPPORTED_EXTENSIONS[\"OES_standard_derivatives\"];\n }\n\n /**\n * Sets whether the WebGLRenderer draws with SAO.\n * Triggers a new frame render.\n * @internal\n */\n setSAOEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.saoEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Enable/disable rendering of transparent objects for the given View.\n *\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @param enabled Whether to enable or disable transparent objects for the View.\n * @internal\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n */\n setTransparentEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.transparentEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Clears this WebGLRenderer for the given view.\n *\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n clear(viewIndex: number): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't clear canvas with WebGLRenderer - no Viewer and View is attached\");\n }\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n throw new SDKError(`Can't clear canvas with WebGLRenderer - no View attached at given viewIndex: ${viewIndex}`);\n }\n const gl = this.renderContext.gl;\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n if (rendererView.canvasTransparent) {\n gl.clearColor(1, 1, 1, 1);\n } else {\n gl.clearColor(rendererView.backgroundColor[0], rendererView.backgroundColor[1], rendererView.backgroundColor[2], 1.0);\n }\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n };\n\n /**\n * Triggers a rebuild of the shaders within this WebGLRenderer for the given View.\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n setNeedsRebuild(viewIndex?: number): void {\n this.#shadersDirty = true;\n }\n\n /**\n * Gets if a new frame needs to be rendered for the given View.\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *boolean*\n * * True if a new frame needs to be rendered for the View.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n getNeedsRender(viewIndex?: number): boolean {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n return false;\n }\n return (rendererView.imageDirty || this.#layerListDirty || this.#stateSortDirty);\n }\n\n /**\n * Renders a frame for a View.\n *\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@param params Rendering params.\n * @param [params.force=false] True to force a render, else only render if needed.\n * @link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n */\n render(viewIndex: number, params?: { force: boolean; opaqueOnly: boolean }): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't render with WebGLRenderer - no Viewer and View is attached\");\n }\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n throw new SDKError(`Can't render with WebGLRenderer - no View attached at given viewIndex: ${viewIndex}`);\n }\n this.renderStats.reset();\n if (this.#shadersDirty) {\n this.onCompiled.dispatch(this, true);\n this.#shadersDirty = false;\n }\n // params = params || {};\n if (params.force) {\n rendererView.imageDirty = true;\n }\n this.#updateLayerList();\n if (rendererView.imageDirty) {\n this.#activateView(viewIndex);\n this.#draw({\n viewIndex,\n clear: true\n });\n\n rendererView.imageDirty = false;\n }\n }\n\n #activateView(viewIndex: number) {\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't activate View - no such target View attached: ${viewIndex}`);\n }\n const activeRendererView = this.#activeRendererView;\n if (activeRendererView) {\n const activeCanvasBoundingRect = activeRendererView.view.htmlElement.getBoundingClientRect();\n const primarySnapshotBuffer = activeRendererView.renderBufferManager.getRenderBuffer(\"snapshot\", {\n depthTexture: false,\n size: [activeCanvasBoundingRect.width, activeCanvasBoundingRect.height]\n });\n primarySnapshotBuffer.bind();\n primarySnapshotBuffer.clear();\n this.#draw({\n viewIndex: activeRendererView.view.viewIndex,\n clear: true\n });\n const image = primarySnapshotBuffer.readImage({\n format: \"png\",\n height: activeCanvasBoundingRect.height,\n width: activeCanvasBoundingRect.width\n });\n primarySnapshotBuffer.unbind();\n (activeRendererView.view.htmlElement).src = image;\n }\n\n const webglCanvasElement = this.#webglCanvasElement;\n\n const targetView = targetRendererView.view;\n const targetCanvasElement = targetView.htmlElement;\n const targetCanvasBoundingRect = targetCanvasElement.getBoundingClientRect();\n\n webglCanvasElement.style[\"left\"] = `${targetCanvasBoundingRect.left}px`;\n webglCanvasElement.style[\"top\"] = `${targetCanvasBoundingRect.top}px`;\n webglCanvasElement.style[\"width\"] = `${targetCanvasBoundingRect.width}px`;\n webglCanvasElement.style[\"height\"] = `${targetCanvasBoundingRect.height}px`;\n webglCanvasElement.width = targetCanvasBoundingRect.width;\n webglCanvasElement.height = targetCanvasBoundingRect.height;\n webglCanvasElement.style[\"z-index\"] = 100000;\n\n this.#activeRendererView = targetRendererView;\n }\n\n #updateLayerList(): void {\n if (this.#layerListDirty) {\n this.#buildLayerList();\n this.#layerListDirty = false;\n this.#stateSortDirty = true;\n }\n if (this.#stateSortDirty) {\n this.#sortLayerList();\n this.#stateSortDirty = false;\n for (let viewIndex = 0, len = this.#rendererViewsList.length; viewIndex < len; viewIndex++) {\n const rendererView = this.#rendererViewsList[viewIndex];\n rendererView.imageDirty = true;\n }\n }\n }\n\n #buildLayerList(): void {\n let lenLayerList = 0;\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n for (let i = 0, len = rendererModel.layerList.length; i < len; i++) {\n this.#layerList[lenLayerList++] = rendererModel.layerList[i];\n }\n }\n this.#layerList.length = lenLayerList;\n }\n\n #sortLayerList(): void {\n this.#layerList.sort((layer1, layer2) => {\n if (layer1.sortId < layer2.sortId) {\n return -1;\n }\n if (layer1.sortId > layer2.sortId) {\n return 1;\n }\n return 0;\n });\n }\n\n #draw(params: {\n viewIndex: number,\n clear: boolean;\n }) {\n const rendererView = this.#rendererViewsList[params.viewIndex];\n if (!rendererView) {\n return;\n }\n this.#activateExtensions();\n if (rendererView.saoEnabled && rendererView.view.sao.possible) {\n this.#drawSAOBuffers(params);\n }\n this.#drawColor(params);\n }\n\n #activateExtensions() {\n if (WEBGL_INFO.SUPPORTED_EXTENSIONS[\"OES_element_index_uint\"]) {\n this.#extensionHandles.OES_element_index_uint = this.renderContext.gl.getExtension(\"OES_element_index_uint\");\n }\n if (this.#logarithmicDepthBufferEnabled && WEBGL_INFO.SUPPORTED_EXTENSIONS[\"EXT_frag_depth\"]) {\n this.#extensionHandles.EXT_frag_depth = this.renderContext.gl.getExtension('EXT_frag_depth');\n }\n if (WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"]) {\n this.#extensionHandles.WEBGL_depth_texture = this.renderContext.gl.getExtension('WEBGL_depth_texture');\n }\n }\n\n #drawSAOBuffers(params: {\n clear: boolean;\n }) {\n // const sao = this.#view.sao;\n // const saoDepthRenderBuffer = this.#renderBufferManager.getRenderBuffer(\"saoDepth\", {\n // depthTexture: WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"]\n // });\n // this.#saoDepthRenderBuffer.bind();\n // this.#saoDepthRenderBuffer.clear();\n // this.#drawDepth(params);\n // this.#saoDepthRenderBuffer.unbind();\n // // Render occlusion buffer\n // const occlusionRenderBuffer1 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion\");\n // occlusionRenderBuffer1.bind();\n // occlusionRenderBuffer1.clear();\n // this.#saoOcclusionRenderer.render(saoDepthRenderBuffer);\n // occlusionRenderBuffer1.unbind();\n // if (sao.blur) {\n // // Horizontally blur occlusion buffer 1 into occlusion buffer 2\n // const occlusionRenderBuffer2 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion2\");\n // occlusionRenderBuffer2.bind();\n // occlusionRenderBuffer2.clear();\n // this.#saoDepthLimitedBlurRenderer.render(saoDepthRenderBuffer, occlusionRenderBuffer1, 0);\n // occlusionRenderBuffer2.unbind();\n // // Vertically blur occlusion buffer 2 back into occlusion buffer 1\n // occlusionRenderBuffer1.bind();\n // occlusionRenderBuffer1.clear();\n // this.#saoDepthLimitedBlurRenderer.render(saoDepthRenderBuffer, occlusionRenderBuffer2, 1);\n // occlusionRenderBuffer1.unbind();\n // }\n }\n\n #drawDepth(params: {\n viewIndex: number,\n clear: boolean\n }) {\n this.renderContext.reset();\n const gl = this.renderContext.gl;\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n gl.clearColor(0, 0, 0, 0);\n gl.enable(gl.DEPTH_TEST);\n gl.frontFace(gl.CCW);\n gl.enable(gl.CULL_FACE);\n gl.depthMask(true);\n if (params.clear !== false) {\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n // for (let i = 0, len = this.#layerListPostCull.length; i < len; i++) {\n // const layer = this.#layerListPostCull[i];\n // // if (layer.culled === true || layer.visible === false || !layer.drawDepth) {\n // // continue;\n // // }\n // // if (layer.drawFlags.colorOpaque) {\n // // // layer.drawDepth(this.renderContext);\n // // }\n // }\n // const numVertexAttribs = WEBGL_INFO.MAX_VERTEX_ATTRIBS; // Fixes https://github.com/xeokit/xeokit-sdk/issues/174\n // for (let ii = 0; ii < numVertexAttribs; ii++) {\n // gl.disableVertexAttribArray(ii);\n // }\n }\n\n #drawColor(params: {\n viewIndex: number,\n clear: boolean;\n }) {\n\n const viewIndex = params.viewIndex;\n const rendererView = this.#rendererViewsList[viewIndex];\n const view = rendererView.view;\n const renderContext = this.renderContext;\n const gl = renderContext.gl;\n\n const normalDrawSAOBin: Layer[] = [];\n const edgesColorOpaqueBin: Layer[] = [];\n const normalFillTransparentBin: Layer[] = [];\n const edgesColorTransparentBin: Layer[] = [];\n const xrayedSilhouetteOpaqueBin: Layer[] = [];\n const xrayEdgesOpaqueBin: Layer[] = [];\n const xrayedSilhouetteTransparentBin: Layer[] = [];\n const xrayEdgesTransparentBin: Layer[] = [];\n const highlightedSilhouetteOpaqueBin: Layer[] = [];\n const highlightedEdgesOpaqueBin: Layer[] = [];\n const highlightedSilhouetteTransparentBin: Layer[] = [];\n const highlightedEdgesTransparentBin: Layer[] = [];\n const selectedSilhouetteOpaqueBin: Layer[] = [];\n const selectedEdgesOpaqueBin: Layer[] = [];\n const selectedSilhouetteTransparentBin: Layer[] = [];\n const selectedEdgesTransparentBin: Layer[] = [];\n\n renderContext.reset();\n renderContext.view = view;\n renderContext.withSAO = false;\n renderContext.pbrEnabled = rendererView.pbrEnabled && !!view.qualityRender;\n\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n\n if (rendererView.canvasTransparent) {\n gl.clearColor(0, 0, 0, 0);\n } else {\n gl.clearColor(rendererView.backgroundColor[0], rendererView.backgroundColor[1], rendererView.backgroundColor[2], 1.0);\n }\n\n gl.enable(gl.DEPTH_TEST);\n gl.frontFace(gl.CCW);\n gl.enable(gl.CULL_FACE);\n gl.depthMask(true);\n gl.lineWidth(1);\n\n renderContext.lineWidth = 1;\n\n const saoPossible = view.sao.possible;\n\n if (rendererView.saoEnabled && saoPossible) {\n // const occlusionRenderBuffer1 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion\", {\n // depthTexture: false,\n // size: [gl.drawingBufferWidth, gl.drawingBufferHeight]\n // });\n // renderContext.occlusionTexture = occlusionRenderBuffer1 ? occlusionRenderBuffer1.getTexture() : null;\n } else {\n renderContext.occlusionTexture = null;\n\n }\n\n if (params.clear !== false) {\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n // Render normal opaque solids, defer others to subsequent bins, to render after\n\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n\n if (meshCounts.numCulled === meshCounts.numMeshes || meshCounts.numVisible === 0) {\n continue;\n }\n\n if (meshCounts.numTransparent < meshCounts.numMeshes) {\n layer.drawColorOpaque();\n }\n\n if (rendererView.transparentEnabled) {\n if (meshCounts.numTransparent > 0) {\n normalFillTransparentBin.push(layer);\n }\n }\n\n if (meshCounts.numXRayed > 0) {\n if (view.xrayMaterial.fill) {\n if (view.xrayMaterial.fillAlpha < 1.0) {\n xrayedSilhouetteTransparentBin.push(layer);\n } else {\n xrayedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (meshCounts.numHighlighted > 0) {\n if (view.highlightMaterial.fill) {\n if (view.highlightMaterial.fillAlpha < 1.0) {\n highlightedSilhouetteTransparentBin.push(layer);\n } else {\n highlightedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (meshCounts.numSelected > 0) {\n if (view.selectedMaterial.fill) {\n if (view.selectedMaterial.fillAlpha < 1.0) {\n selectedSilhouetteTransparentBin.push(layer);\n } else {\n selectedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (rendererView.edgesEnabled && view.edges.enabled) {\n if (meshCounts.numTransparent < meshCounts.numMeshes) {\n edgesColorOpaqueBin.push(layer);\n }\n if (meshCounts.numTransparent > 0) {\n edgesColorTransparentBin.push(layer);\n }\n if (view.selectedMaterial.edgeAlpha < 1.0) {\n selectedEdgesTransparentBin.push(layer);\n } else {\n selectedEdgesOpaqueBin.push(layer);\n }\n if (meshCounts.numXRayed > 0) {\n if (view.xrayMaterial.edgeAlpha < 1.0) {\n xrayEdgesTransparentBin.push(layer);\n } else {\n xrayEdgesOpaqueBin.push(layer);\n }\n }\n if (view.highlightMaterial.edgeAlpha < 1.0) {\n highlightedEdgesTransparentBin.push(layer);\n } else {\n highlightedEdgesOpaqueBin.push(layer);\n }\n }\n }\n\n // Render deferred bins\n\n if (normalDrawSAOBin.length > 0) {\n renderContext.withSAO = true;\n for (let i = 0; i < normalDrawSAOBin.length; i++) {\n normalDrawSAOBin[i].drawColorOpaque();\n }\n }\n\n for (let i = 0; i < edgesColorOpaqueBin.length; i++) {\n edgesColorOpaqueBin[i].drawEdgesColorOpaque();\n }\n\n for (let i = 0; i < xrayedSilhouetteOpaqueBin.length; i++) {\n xrayedSilhouetteOpaqueBin[i].drawSilhouetteXRayed();\n }\n\n for (let i = 0; i < xrayEdgesOpaqueBin.length; i++) {\n xrayEdgesOpaqueBin[i].drawEdgesXRayed();\n }\n\n if (xrayedSilhouetteTransparentBin.length > 0 ||\n xrayEdgesTransparentBin.length > 0 ||\n normalFillTransparentBin.length > 0 ||\n edgesColorTransparentBin.length > 0) {\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n renderContext.backfaces = false;\n if (!this.#alphaDepthMask) {\n gl.depthMask(false);\n }\n for (let i = 0; i < xrayEdgesTransparentBin.length; i++) {\n xrayEdgesTransparentBin[i].drawEdgesXRayed();\n }\n for (let i = 0; i < xrayedSilhouetteTransparentBin.length; i++) {\n xrayedSilhouetteTransparentBin[i].drawSilhouetteXRayed();\n }\n if (normalFillTransparentBin.length > 0 || edgesColorTransparentBin.length > 0) {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < edgesColorTransparentBin.length; i++) {\n edgesColorTransparentBin[i].drawEdgesColorTranslucent();\n }\n for (let i = 0; i < normalFillTransparentBin.length; i++) {\n normalFillTransparentBin[i].drawColorTranslucent();\n }\n gl.disable(gl.BLEND);\n if (!this.#alphaDepthMask) {\n gl.depthMask(true);\n }\n }\n\n if (highlightedSilhouetteOpaqueBin.length > 0 || highlightedEdgesOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1; // HACK\n gl.clear(gl.DEPTH_BUFFER_BIT);\n for (let i = 0; i < highlightedEdgesOpaqueBin.length; i++) {\n highlightedEdgesOpaqueBin[i].drawEdgesHighlighted();\n }\n for (let i = 0; i < highlightedSilhouetteOpaqueBin.length; i++) {\n highlightedSilhouetteOpaqueBin[i].drawSilhouetteHighlighted();\n }\n }\n\n if (highlightedSilhouetteTransparentBin.length > 0 ||\n highlightedEdgesTransparentBin.length > 0 ||\n highlightedSilhouetteOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < highlightedEdgesTransparentBin.length; i++) {\n highlightedEdgesTransparentBin[i].drawEdgesHighlighted();\n }\n for (let i = 0; i < highlightedSilhouetteTransparentBin.length; i++) {\n highlightedSilhouetteTransparentBin[i].drawSilhouetteHighlighted();\n }\n gl.disable(gl.BLEND);\n }\n\n if (selectedSilhouetteOpaqueBin.length > 0 || selectedEdgesOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n for (let i = 0; i < selectedEdgesOpaqueBin.length; i++) {\n selectedEdgesOpaqueBin[i].drawEdgesSelected();\n }\n for (let i = 0; i < selectedSilhouetteOpaqueBin.length; i++) {\n selectedSilhouetteOpaqueBin[i].drawSilhouetteSelected();\n }\n }\n\n if (selectedSilhouetteTransparentBin.length > 0 || selectedEdgesTransparentBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < selectedEdgesTransparentBin.length; i++) {\n selectedEdgesTransparentBin[i].drawEdgesSelected();\n }\n for (let i = 0; i < selectedSilhouetteTransparentBin.length; i++) {\n selectedSilhouetteTransparentBin[i].drawSilhouetteSelected();\n }\n gl.disable(gl.BLEND);\n }\n\n const numTextureUnits = WEBGL_INFO.MAX_TEXTURE_UNITS;\n for (let ii = 0; ii < numTextureUnits; ii++) {\n gl.activeTexture(gl.TEXTURE0 + ii);\n }\n gl.bindTexture(gl.TEXTURE_CUBE_MAP, null);\n gl.bindTexture(gl.TEXTURE_2D, null);\n\n const numVertexAttribs = WEBGL_INFO.MAX_VERTEX_ATTRIBS; // Fixes https://github.com/xeokit/xeokit-sdk/issues/174\n for (let ii = 0; ii < numVertexAttribs; ii++) {\n gl.disableVertexAttribArray(ii);\n }\n }\n\n /**\n * TODO\n * @internal\n */\n pick(viewIndex: number,\n pickParams: PickParams,\n pickResult = this.#pickResult): PickResult | null {\n\n if (!this.#viewer) {\n throw new SDKError(\"Can't pick object with WebGLRenderer - no Viewer and View is attached\");\n }\n\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't pick object with WebGLRenderer - no View attached at given viewInded: ${viewIndex}`);\n }\n\n const view = targetRendererView.view;\n\n if (this.#shadersDirty) {\n this.onCompiled.dispatch(this, true);\n this.#shadersDirty = false;\n }\n\n this.#updateLayerList();\n\n pickResult.reset();\n\n const {\n pickCanvasPos,\n pickViewMatrix,\n pickProjMatrix,\n pickWorldRayOrigin,\n pickWorldRayDir\n } = pickTemps;\n\n if (pickParams.canvasPos) {\n\n // @ts-ignore\n pickCanvasPos.set(pickParams.canvasPos);\n // @ts-ignore\n pickViewMatrix.set(view.camera.viewMatrix);\n // @ts-ignore\n pickProjMatrix.set(view.camera.projMatrix);\n pickResult.canvasPos = pickParams.canvasPos;\n } else {\n\n // Picking with arbitrary World-space ray\n // Align camera along ray and fire ray through center of canvas\n\n if (pickParams.rayMatrix) {\n\n // Ray defined using matrix\n\n // @ts-ignore\n pickViewMatrix.set(params.rayMatrix);\n // @ts-ignore\n pickProjMatrix.set(view.camera.projMatrix);\n } else {\n\n // Ray defined as origin and direction\n\n pickWorldRayOrigin.set(pickParams.rayOrigin || [0, 0, 0]);\n pickWorldRayDir.set(pickParams.rayDirection || [0, 0, 1]);\n const look = addVec3(pickWorldRayOrigin, pickWorldRayDir, tempVec3a);\n tempVec3b[0] = Math.random();\n tempVec3b[1] = Math.random();\n tempVec3b[2] = Math.random();\n normalizeVec3(tempVec3b);\n cross3Vec3(pickWorldRayDir, tempVec3b, tempVec3c);\n // @ts-ignore\n pickViewMatrix.set(lookAtMat4v(pickWorldRayOrigin, look, tempVec3c, tempMat4b));\n // @ts-ignore\n pickProjMatrix.set(view.camera.orthoProjection.projMatrix);\n pickResult.origin = pickWorldRayOrigin;\n pickResult.direction = pickWorldRayDir;\n }\n pickCanvasPos[0] = targetRendererView.view.htmlElement.clientWidth * 0.5;\n pickCanvasPos[1] = targetRendererView.view.htmlElement.clientHeight * 0.5;\n }\n\n if (pickParams.pickViewObject) {\n const rendererMesh = this.#pickMesh(viewIndex, targetRendererView, {\n pickCanvasPos,\n pickViewMatrix,\n pickProjMatrix,\n pickInvisible: !!pickParams.pickInvisible\n });\n if (rendererMesh) {\n const rendererObject = rendererMesh.rendererObject;\n const view = targetRendererView.view;\n const viewObject = view.objects[rendererObject.id];\n pickResult.viewObject = viewObject;\n }\n }\n\n // if (params.pickSurface) {\n // const worldPos = this.#pickSurface(viewIndex, targetRendererView, {\n // pickCanvasPos,\n // pickViewMatrix,\n // pickProjMatrix,\n // pickInvisible: params.pickInvisible\n // });\n // if (worldPos) {\n // pickResult.worldPos = worldPos;\n // }\n // }\n\n return pickResult;\n };\n\n #pickMesh(viewIndex: number,\n targetRendererView: WebGLRendererView,\n params: {\n pickCanvasPos: FloatArrayParam,\n pickViewMatrix: FloatArrayParam,\n pickProjMatrix: FloatArrayParam,\n pickInvisible: boolean\n }): WebGLRendererMesh {\n\n const gl = this.#gl\n const view = targetRendererView.view;\n const targetCanvasBoundingRect = targetRendererView.view.htmlElement.getBoundingClientRect();\n const pickProjMatrix = params.pickProjMatrix;\n const pickViewMatrix = params.pickViewMatrix;\n const resolutionScale = view.resolutionScale;\n const renderContext = this.renderContext;\n const pickBuffer = this.#pickBufferManager.getRenderBuffer(\"pickMesh\", {\n depthTexture: false,\n size: [1, 1]\n });\n pickBuffer.bind();\n pickBuffer.clear();\n renderContext.reset();\n renderContext.backfaces = true;\n renderContext.frontface = true; // \"ccw\"\n renderContext.pickViewMatrix = pickViewMatrix;\n renderContext.pickProjMatrix = pickProjMatrix;\n renderContext.pickInvisible = !!params.pickInvisible;\n renderContext.pickClipPos = [\n this.#getClipPosX(params.pickCanvasPos[0] * resolutionScale.resolutionScale, gl.drawingBufferWidth),\n this.#getClipPosY(params.pickCanvasPos[1] * resolutionScale.resolutionScale, gl.drawingBufferHeight)\n ];\n gl.viewport(0, 0, 1, 1);\n gl.depthMask(true);\n gl.enable(gl.DEPTH_TEST);\n gl.disable(gl.CULL_FACE);\n gl.disable(gl.BLEND);\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n if (meshCounts.numPickable < meshCounts.numMeshes ||\n meshCounts.numCulled === meshCounts.numMeshes ||\n meshCounts.numVisible === 0) {\n continue;\n }\n layer.drawPickMesh();\n }\n const pix = pickBuffer.read(0, 0);\n const pickID = pix[0] + (pix[1] << 8) + (pix[2] << 16) + (pix[3] << 24);\n\n console.log(\"pickID = \" + pickID);\n pickBuffer.unbind();\n\n if (pickID < 0) {\n return null;\n }\n\n return this.#pickIDs.items[pickID];\n }\n\n #pickWorldPos(\n viewIndex: number,\n params: {\n canvasPos: FloatArrayParam,\n pickViewMatrix: FloatArrayParam,\n pickProjMatrix: FloatArrayParam,\n pickInvisible: boolean,\n layer?: Layer\n }): WebGLRendererMesh | null {\n\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't activate View - no such target View attached: ${viewIndex}`);\n }\n\n const gl = this.#gl\n const view = targetRendererView.view;\n const pickProjMatrix = params.pickProjMatrix;\n const pickViewMatrix = params.pickViewMatrix;\n const resolutionScale = view.resolutionScale;\n const renderContext = this.renderContext;\n\n const targetCanvasBoundingRect = targetRendererView.view.htmlElement.getBoundingClientRect();\n const pickBuffer = targetRendererView.renderBufferManager.getRenderBuffer(\"pickDepth\", {\n depthTexture: true,\n size: [targetCanvasBoundingRect.width, targetCanvasBoundingRect.height]\n });\n pickBuffer.setSize([targetCanvasBoundingRect.width, targetCanvasBoundingRect.height]);\n pickBuffer.bind();\n pickBuffer.clear();\n\n renderContext.reset();\n renderContext.backfaces = true;\n renderContext.frontface = true; // \"ccw\"\n renderContext.pickViewMatrix = pickViewMatrix;\n renderContext.pickProjMatrix = pickProjMatrix;\n renderContext.pickInvisible = !!params.pickInvisible;\n renderContext.pickClipPos[0] = this.#getClipPosX(params.canvasPos[0] * resolutionScale.resolutionScale, gl.drawingBufferWidth);\n renderContext.pickClipPos[0] = this.#getClipPosY(params.canvasPos[1] * resolutionScale.resolutionScale, gl.drawingBufferHeight);\n\n gl.viewport(0, 0, 1, 1);\n gl.depthMask(true);\n gl.enable(gl.DEPTH_TEST);\n gl.disable(gl.CULL_FACE);\n gl.disable(gl.BLEND);\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n\n if (params.layer) {\n params.layer.drawPickDepths();\n } else {\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n if (meshCounts.numPickable < meshCounts.numMeshes ||\n meshCounts.numCulled === meshCounts.numMeshes ||\n meshCounts.numVisible === 0) {\n continue;\n }\n layer.drawPickDepths();\n }\n }\n\n const pix = pickBuffer.read(0, 0);\n\n pickBuffer.unbind();\n\n const pickID = pix[0] + (pix[1] << 8) + (pix[2] << 16) + (pix[3] << 24);\n if (pickID < 0) {\n return null;\n }\n\n return this.#pickIDs.items[pickID];\n }\n\n\n #getClipPosX(pos: number, size: number) {\n return 2 * (pos / size) - 1;\n }\n\n #getClipPosY(pos: number, size: number) {\n return 1 - 2 * (pos / size);\n }\n\n beginSnapshot(viewIndex: number, params?: {\n width: number,\n height: number\n }) {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't begin snapshot with WebGLRenderer.beginSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // if (params && params.width && params.height) {\n // snapshotBuffer.setSize([params.width, params.height]);\n // }\n // snapshotBuffer.bind();\n // snapshotBuffer.clear();\n // this.#snapshotBound = true;\n }\n\n renderSnapshot() {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't render snapshot with WebGLRenderer.renderSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // snapshotBuffer.clear();\n // this.render(viewIndex, {\n // force: true,\n // opaqueOnly: false\n // });\n // rendererView.imageDirty = true;\n }\n\n readSnapshot(): string {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't read snapshot with WebGLRenderer.readSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // return snapshotBuffer.readImage(params);\n return \"\";\n }\n\n readSnapshotAsCanvas(): HTMLCanvasElement {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't read snapshot with WebGLRenderer.readSnapshotAsCanvas() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // return snapshotBuffer.readImageAsCanvas();\n return null;\n }\n\n /**\n * Exits snapshot mode.\n *\n * Switches rendering back to the main canvas.\n */\n endSnapshot() {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't end snapshot with WebGLRenderer.endSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // snapshotBuffer.unbind();\n this.#snapshotBound = false;\n }\n\n destroy() {\n if (this.#destroyed) {\n return;\n }\n if (this.#viewer) {\n this.detachViewer();\n }\n this.#pickBufferManager.destroy();\n this.#destroyed = true;\n this.onDestroyed.dispatch(this, true);\n }\n}\n", "import {View} from \"@xeokit/viewer\";\nimport {WebGLRenderBuffer} from \"@xeokit/webglutils\";\n\n/**\n * @private\n */\nexport class WebGLRenderBufferManager {\n #gl: WebGL2RenderingContext;\n #view: View;\n #renderBuffersBasic: { [key: string]: WebGLRenderBuffer };\n #renderBuffersScaled: { [key: string]: WebGLRenderBuffer };\n #webglCanvas: HTMLCanvasElement;\n\n constructor(gl: WebGL2RenderingContext, webglCanvas: HTMLCanvasElement) {\n this.#gl = gl;\n // this.#view = view;\n this.#webglCanvas= webglCanvas;\n this.#renderBuffersBasic = {};\n this.#renderBuffersScaled = {};\n }\n\n getRenderBuffer(id: string, options?: {\n depthTexture: boolean;\n size: number[];\n }) {\n // const renderBuffers = this.#view.resolutionScale.enabled ? this.#renderBuffersBasic : this.#renderBuffersScaled;\n const renderBuffers =this.#renderBuffersBasic;\n let renderBuffer = renderBuffers[id];\n if (!renderBuffer) {\n renderBuffer = new WebGLRenderBuffer(this.#webglCanvas, this.#gl, options);\n renderBuffers[id] = renderBuffer;\n } else {\n if (options && options.size) {\n renderBuffer.setSize(options.size);\n }\n }\n return renderBuffer;\n }\n\n destroy() {\n for (let id in this.#renderBuffersBasic) {\n this.#renderBuffersBasic[id].destroy();\n }\n for (let id in this.#renderBuffersScaled) {\n this.#renderBuffersScaled[id].destroy();\n }\n }\n}\n", "import {SceneModel, SceneModelStreamParams} from \"@xeokit/scene\";\nimport {LinesPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\n\n\n/**\n * Enables a {@link @xeokit/scene!SceneModel | SceneModel} to be progressively loaded\n * into {@link @xeokit/viewer!Viewer | Viewer} that's configured with a {@link @xeokit/webglrenderer!WebGLRenderer}.\n *\n * @param sceneModel\n */\nexport function createSceneModelStreamParams(sceneModel: SceneModel) {\n\n const layersBeingBuilt = {};\n const layerList = [];\n let layerIndex = 0;\n\n Object.entries(sceneModel.objects).forEach(([objectId, sceneObject]) => {\n\n for (const sceneMesh of sceneObject.meshes) {\n\n const sceneGeometry = sceneMesh.geometry;\n const textureSetId = sceneMesh.textureSet ? sceneMesh.textureSet.id : \"\";\n const tile = sceneMesh.tile;\n const layerId = `${textureSetId}.${sceneGeometry.primitive}.${tile.id}`;\n\n let layer = layersBeingBuilt[layerId];\n\n let canCreate = false;\n\n while (!canCreate) {\n if (!layer) {\n layerIndex = layerList.length;\n layer = {\n layerIndex,\n numMeshes: 0,\n numVertices: 0,\n numIndices: 0\n };\n layerList.push(layer);\n layersBeingBuilt[layerId] = layer;\n }\n\n const indicesPerPrimitive = sceneGeometry.primitive === TrianglesPrimitive ? 3 : (LinesPrimitive ? 2 : 1); // TODO\n const numExistingIndices = layer.numIndices;\n const numVerticesToCreate = sceneGeometry.positionsCompressed.length / indicesPerPrimitive;\n const numIndicesToCreate = sceneGeometry.indices.length / indicesPerPrimitive;\n\n canCreate =\n (layer.numVertices + numVerticesToCreate) <= 500000 * 4096 &&\n (numExistingIndices + numIndicesToCreate) <= 500000;\n\n if (canCreate) {\n layer.numMeshes++;\n layer.numVertices += numVerticesToCreate;\n // TODO\n }\n }\n\n if (canCreate) {\n sceneMesh.streamLayerIndex = layerIndex;\n } else { // Layer is full\n delete layersBeingBuilt[layerId];\n layer = null;\n }\n }\n });\n\n const streamParams: SceneModelStreamParams = {\n streamLayers: []\n };\n\n for (let i = 0, len = layerList.length; i < len; i++) {\n const layer = layerList[i];\n streamParams.streamLayers.push({\n numLayerMeshes: layer.numLayerMeshes,\n numVertices: layer.numVertices,\n numIndices: layer.numIndices\n });\n }\n\n sceneModel.streamParams = streamParams;\n}\n", "export * from './CameraControl';\n\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {CameraControl} from \"./CameraControl\";\nimport {createVec2} from \"@xeokit/matrix\";\n\nconst DEFAULT_SNAP_PICK_RADIUS = 45;\nconst DEFAULT_SNAP_MODE = \"vertex\";\n\n/**\n *\n * @private\n */\nclass PickController {\n #view: View;\n #cameraControl: CameraControl;\n #configs: any;\n private schedulePickEntity: boolean;\n private schedulePickSurface: boolean;\n private scheduleSnapOrPick: boolean;\n private pickCursorPos: any;\n private picked: boolean;\n private pickedSurface: boolean;\n private pickResult: PickResult;\n #lastPickedEntityId: any;\n #lastHash: any;\n #needFireEvents: number;\n private snappedOrPicked: boolean;\n private hoveredSnappedOrSurfaceOff: boolean;\n private snapPickResult: PickResult;\n\n constructor(cameraControl: CameraControl, configs: any) {\n\n this.#view = cameraControl.view;\n\n this.#cameraControl = cameraControl;\n\n this.#view.htmlElement.oncontextmenu = function (e) {\n e.preventDefault();\n };\n\n this.#configs = configs;\n\n /**\n * Set true to schedule picking of an Entity.\n * @type {boolean}\n */\n this.schedulePickEntity = false;\n\n /**\n * Set true to schedule picking of a position on teh surface of an Entity.\n * @type {boolean}\n */\n this.schedulePickSurface = false;\n\n /**\n * Set true to schedule snap-picking with surface picking as a fallback - used for measurement.\n * @type {boolean}\n */\n this.scheduleSnapOrPick = false;\n\n /**\n * The canvas position at which to do the next scheduled pick.\n * @type {Number[]}\n */\n this.pickCursorPos = createVec2();\n\n /**\n * Will be true after picking to indicate that something was picked.\n * @type {boolean}\n */\n this.picked = false;\n\n /**\n * Will be true after picking to indicate that a position on the surface of an Entity was picked.\n * @type {boolean}\n */\n this.pickedSurface = false;\n\n /**\n * Will hold the PickResult after after picking.\n * @type {PickResult}\n */\n this.pickResult = null;\n\n this.#lastPickedEntityId = null;\n\n this.#lastHash = null;\n\n this.#needFireEvents = 0;\n }\n\n /**\n * Immediately attempts a pick, if scheduled.\n */\n update() {\n\n if (!this.#configs.pointerEnabled) {\n return;\n }\n\n if (!this.schedulePickEntity && !this.schedulePickSurface) {\n return;\n }\n\n const hash = `${~~this.pickCursorPos[0]}-${~~this.pickCursorPos[1]}-${this.scheduleSnapOrPick}-${this.schedulePickSurface}-${this.schedulePickEntity}`;\n if (this.#lastHash === hash) {\n return;\n }\n\n this.picked = false;\n this.pickedSurface = false;\n this.snappedOrPicked = false;\n this.hoveredSnappedOrSurfaceOff = false;\n\n const hasHoverSurfaceSubs = this.#cameraControl.onHoverSurface.count > 0;\n\n if (this.scheduleSnapOrPick) {\n const snapPickResult = this.#view.pick({\n canvasPos: this.pickCursorPos,\n snapRadius: this.#configs.snapRadius,\n snapToVertex: this.#configs.snapToVertex,\n snapToEdge: this.#configs.snapToEdge,\n });\n if (snapPickResult && (snapPickResult.snappedToEdge || snapPickResult.snappedToVertex)) {\n this.snapPickResult = snapPickResult;\n this.snappedOrPicked = true;\n this.#needFireEvents++;\n } else {\n this.schedulePickSurface = true; // Fallback\n this.snapPickResult = null;\n }\n }\n\n if (this.schedulePickSurface) {\n if (this.pickResult && this.pickResult.worldPos) {\n const pickResultCanvasPos = this.pickResult.canvasPos;\n if (pickResultCanvasPos[0] === this.pickCursorPos[0] && pickResultCanvasPos[1] === this.pickCursorPos[1]) {\n this.picked = true;\n this.pickedSurface = true;\n this.#needFireEvents += hasHoverSurfaceSubs ? 1 : 0;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n if (this.scheduleSnapOrPick) {\n this.snappedOrPicked = true;\n } else {\n this.hoveredSnappedOrSurfaceOff = true;\n }\n this.scheduleSnapOrPick = false;\n return;\n }\n }\n }\n\n if (this.schedulePickEntity) {\n if (this.pickResult && (this.pickResult.canvasPos || this.pickResult.snappedCanvasPos)) {\n const pickResultCanvasPos = this.pickResult.canvasPos || this.pickResult.snappedCanvasPos;\n if (pickResultCanvasPos[0] === this.pickCursorPos[0] && pickResultCanvasPos[1] === this.pickCursorPos[1]) {\n this.picked = true;\n this.pickedSurface = false;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n return;\n }\n }\n }\n\n if (this.schedulePickSurface || (this.scheduleSnapOrPick && !this.snapPickResult)) {\n this.pickResult = this.#view.pick({\n pickSurface: true,\n pickSurfaceNormal: false,\n canvasPos: this.pickCursorPos\n });\n if (this.pickResult) {\n this.picked = true;\n if (this.scheduleSnapOrPick) {\n this.snappedOrPicked = true;\n } else {\n this.pickedSurface = true;\n }\n this.#needFireEvents++;\n } else if (this.scheduleSnapOrPick) {\n this.hoveredSnappedOrSurfaceOff = true;\n this.#needFireEvents++;\n }\n\n } else { // schedulePickEntity == true\n\n this.pickResult = this.#view.pick({\n canvasPos: this.pickCursorPos\n });\n\n if (this.pickResult) {\n this.picked = true;\n this.pickedSurface = false;\n this.#needFireEvents++;\n }\n }\n\n this.scheduleSnapOrPick = false;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n }\n\n fireEvents() {\n\n if (this.#needFireEvents === 0) {\n return;\n }\n\n if (this.hoveredSnappedOrSurfaceOff) {\n this.#cameraControl.onHoverSnapOrSurfaceOff.dispatch(this.#cameraControl, {\n canvasPos: this.pickCursorPos,\n pointerPos: this.pickCursorPos\n });\n }\n\n if (this.snappedOrPicked) {\n if (this.snapPickResult) {\n const pickResult = new PickResult();\n pickResult.viewObject = this.snapPickResult.viewObject;\n pickResult.snappedToVertex = this.snapPickResult.snappedToVertex;\n pickResult.snappedToEdge = this.snapPickResult.snappedToEdge;\n pickResult.worldPos = this.snapPickResult.worldPos;\n pickResult.canvasPos = this.pickCursorPos\n pickResult.snappedCanvasPos = this.snapPickResult.snappedCanvasPos;\n this.#cameraControl.onHoverSnapOrSurface.dispatch(this.#cameraControl, pickResult);\n this.snapPickResult = null;\n } else {\n this.#cameraControl.onHoverSnapOrSurface.dispatch(this.#cameraControl, this.pickResult);\n }\n } else {\n\n }\n\n if (this.picked && this.pickResult && (this.pickResult.viewObject || this.pickResult.worldPos)) {\n\n if (this.pickResult.viewObject) {\n\n const pickedEntityId = this.pickResult.viewObject.id;\n\n if (this.#lastPickedEntityId !== pickedEntityId) {\n\n if (this.#lastPickedEntityId !== undefined) {\n this.#cameraControl.onHoverOut.dispatch(this.#cameraControl, {\n viewObject: this.#view.objects[this.#lastPickedEntityId]\n });\n }\n\n this.#cameraControl.onHoverEnter.dispatch(this.#cameraControl, this.pickResult);\n this.#lastPickedEntityId = pickedEntityId;\n }\n }\n\n this.#cameraControl.onHover.dispatch(this.#cameraControl, this.pickResult);\n\n if (this.pickResult.worldPos) {\n this.pickedSurface = true;\n this.#cameraControl.onHoverSurface.dispatch(this.#cameraControl, this.pickResult);\n }\n\n } else {\n\n if (this.#lastPickedEntityId !== undefined) {\n this.#cameraControl.onHoverOut.dispatch(this.#cameraControl, {\n viewObject: this.#view.objects[this.#lastPickedEntityId]\n });\n this.#lastPickedEntityId = undefined;\n }\n\n this.#cameraControl.onHoverOff.dispatch(this.#cameraControl, {\n canvasPos: this.pickCursorPos\n });\n }\n\n this.pickResult = null;\n\n this.#needFireEvents = 0;\n }\n}\n\nexport {PickController};\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {\n addVec3,\n compareVec3,\n createMat4,\n createVec2,\n createVec3,\n createVec4,\n cross3Vec3,\n decomposeMat4, distVec3, dotVec4,\n inverseMat4, lenVec3, lookAtMat4v, mulVec3Scalar, normalizeVec3, sqLenVec3, subVec3,\n transformPoint3, transformPoint4, transformVec3\n} from \"@xeokit/matrix\";\nimport {clamp, FloatArrayParam} from \"@xeokit/math\";\nimport {worldToRTCPos} from \"@xeokit/rtc\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\nconst tempVec4c = createVec4();\n\n\n/** @private */\nclass PivotController {\n #view: View;\n #configs: any;\n #pivotWorldPos: Float64Array;\n #cameraOffset: Float64Array;\n #azimuth: number;\n #polar: number;\n #radius: number;\n #pivotPosSet: boolean;\n #pivoting: boolean;\n #shown: boolean;\n #pivotSphereEnabled: boolean;\n #pivotSphere: any;\n #pivotSphereSize: number;\n #pivotSphereGeometry: any;\n #pivotSphereMaterial: any;\n #rtcCenter: Float64Array;\n #rtcPos: Float64Array;\n #pivotViewPos: any;\n #pivotProjPos: any;\n #pivotCanvasPos: any;\n #cameraDirty: boolean;\n #onViewMatrix: any;\n #onProjMatrix: () => void;\n #onTick: () => void;\n #pivotElement: any;\n\n /**\n * @private\n */\n constructor(view: View, configs) {\n\n // Pivot math by: http://www.derschmale.com/\n\n this.#view = view;\n this.#configs = configs;\n this.#pivotWorldPos = createVec3();\n this.#cameraOffset = createVec3();\n this.#azimuth = 0;\n this.#polar = 0;\n this.#radius = 0;\n this.#pivotPosSet = false; // Initially false, true as soon as #pivotWorldPos has been set to some value\n this.#pivoting = false; // True while pivoting\n this.#shown = false;\n\n this.#pivotSphereEnabled = false;\n this.#pivotSphere = null;\n this.#pivotSphereSize = 1;\n this.#pivotSphereGeometry = null;\n this.#pivotSphereMaterial = null;\n this.#rtcCenter = createVec3();\n this.#rtcPos = createVec3();\n\n this.#pivotViewPos = createVec4();\n this.#pivotProjPos = createVec4();\n this.#pivotCanvasPos = createVec2();\n this.#cameraDirty = true;\n\n this.#onViewMatrix = this.#view.camera.onViewMatrix.sub(() => {\n this.#cameraDirty = true;\n });\n\n this.#onProjMatrix = this.#view.camera.onProjMatrix.sub(() => {\n this.#cameraDirty = true;\n });\n\n this.#onTick = this.#view.viewer.onTick.sub(() => {\n this.updatePivotElement();\n this.updatePivotSphere();\n });\n }\n\n createPivotSphere() {\n // const currentPos = this.getPivotPos();\n // const cameraPos = createVec3();\n // decomposeMat4(inverseMat4(this.#view.camera.viewMatrix, createMat4()), cameraPos, createVec4(), createVec3());\n // const length = distVec3(cameraPos, currentPos);\n // let radius = (Math.tan(Math.PI / 500) * length) * this.#pivotSphereSize;\n //\n // if (this.#view.camera.projectionType == OrthoProjectionType) {\n // radius /= (this.#view.camera.orthoProjection.scale / 2);\n // }\n //\n // worldToRTCPos(currentPos, this.#rtcCenter, this.#rtcPos);\n // this.#pivotSphereGeometry = new VBOGeometry(\n // this.#view,\n // buildSphereGeometry({ radius })\n // );\n // this.#pivotSphere = new Mesh(this.#view, {\n // geometry: this.#pivotSphereGeometry,\n // material: this.#pivotSphereMaterial,\n // pickable: false,\n // position: this.#rtcPos,\n // rtcCenter: this.#rtcCenter\n // });\n };\n\n destroyPivotSphere() {\n if (this.#pivotSphere) {\n this.#pivotSphere.destroy();\n this.#pivotSphere = null;\n }\n if (this.#pivotSphereGeometry) {\n this.#pivotSphereGeometry.destroy();\n this.#pivotSphereGeometry = null;\n }\n }\n\n updatePivotElement() {\n\n // const camera = this.#view.camera;\n // const htmlElement = this.#view.htmlElement;\n //\n // if (this.#pivoting && this.#cameraDirty) {\n //\n // transformPoint3(camera.viewMatrix, this.getPivotPos(), this.#pivotViewPos);\n // this.#pivotViewPos[3] = 1;\n // transformPoint4(camera.projMatrix, this.#pivotViewPos, this.#pivotProjPos);\n //\n // const canvasAABB = this.#view.boundary;\n // const canvasWidth = canvasAABB[2];\n // const canvasHeight = canvasAABB[3];\n //\n // this.#pivotCanvasPos[0] = Math.floor((1 + this.#pivotProjPos[0] / this.#pivotProjPos[3]) * canvasWidth / 2);\n // this.#pivotCanvasPos[1] = Math.floor((1 - this.#pivotProjPos[1] / this.#pivotProjPos[3]) * canvasHeight / 2);\n //\n // // data-textures: avoid to do continuous DOM layout calculations\n // let canvasBoundingRect = htmlElement.#lastBoundingClientRect;\n // if (!canvasBoundingRect || htmlElement.#canvasSizeChanged) {\n // canvasBoundingRect = htmlElement.#lastBoundingClientRect = htmlElement.getBoundingClientRect ();\n // }\n //\n // if (this.#pivotElement) {\n // this.#pivotElement.style.left = (Math.floor(canvasBoundingRect.left + this.#pivotCanvasPos[0]) - (this.#pivotElement.clientWidth / 2) + window.scrollX) + \"px\";\n // this.#pivotElement.style.top = (Math.floor(canvasBoundingRect.top + this.#pivotCanvasPos[1]) - (this.#pivotElement.clientHeight / 2) + window.scrollY) + \"px\";\n // }\n // this.#cameraDirty = false;\n // }\n }\n\n updatePivotSphere() {\n if (this.#pivoting && this.#pivotSphere) {\n worldToRTCPos(this.getPivotPos(), this.#rtcCenter, this.#rtcPos);\n if(!compareVec3(this.#rtcPos, this.#pivotSphere.position)) {\n this.destroyPivotSphere();\n this.createPivotSphere();\n }\n }\n }\n /**\n * Sets the HTML DOM element that will represent the pivot position.\n *\n * @param pivotElement\n */\n setPivotElement(pivotElement) {\n this.#pivotElement = pivotElement;\n }\n\n /**\n * Sets a sphere as the representation of the pivot position.\n *\n * @param {Object} [cfg] Sphere configuration.\n * @param {String} [cfg.size=1] Optional size factor of the sphere. Defaults to 1.\n * @param {String} [cfg.color=Array] Optional maretial color. Defaults to a red.\n */\n enablePivotSphere(cfg = {\n size: 0,\n color: [1,1,1]\n }) {\n // this.destroyPivotSphere();\n // this.#pivotSphereEnabled = true;\n // if (cfg.size) {\n // this.#pivotSphereSize = cfg.size;\n // }\n // const color = cfg.color || [1, 0, 0];\n // this.#pivotSphereMaterial = new PhongMaterial(this.#view, {\n // emissive: color,\n // ambient: color,\n // specular: [0,0,0],\n // diffuse: [0,0,0],\n // });\n }\n\n /**\n * Remove the sphere as the representation of the pivot position.\n *\n */\n disablePivotSphere() {\n this.destroyPivotSphere();\n this.#pivotSphereEnabled = false;\n }\n\n /**\n * Begins pivoting.\n */\n startPivot() {\n\n if (this.#cameraLookingDownwards()) {\n this.#pivoting = false;\n return false;\n }\n\n const camera = this.#view.camera;\n\n let lookat = lookAtMat4v(camera.eye, camera.look, camera.worldUp);\n transformPoint3(lookat, this.getPivotPos(), this.#cameraOffset);\n\n const pivotPos = this.getPivotPos();\n this.#cameraOffset[2] += distVec3(camera.eye, pivotPos);\n\n lookat = inverseMat4(lookat);\n\n const offset = transformVec3(lookat, this.#cameraOffset);\n const diff = createVec3();\n\n subVec3(camera.eye, pivotPos, diff);\n addVec3(diff, offset);\n\n if (camera.zUp) {\n const t = diff[1];\n diff[1] = diff[2];\n diff[2] = t;\n }\n\n this.#radius = lenVec3(diff);\n this.#polar = Math.acos(diff[1] / this.#radius);\n this.#azimuth = Math.atan2(diff[0], diff[2]);\n this.#pivoting = true;\n }\n\n #cameraLookingDownwards() { // Returns true if angle between camera viewing direction and World-space \"up\" axis is too small\n const camera = this.#view.camera;\n const forwardAxis = normalizeVec3(subVec3(camera.look, camera.eye, tempVec3a));\n const rightAxis = cross3Vec3(forwardAxis, camera.worldUp, tempVec3b);\n let rightAxisLen = sqLenVec3(rightAxis);\n return (rightAxisLen <= 0.0001);\n }\n\n /**\n * Returns true if we are currently pivoting.\n *\n * @returns {Boolean}\n */\n getPivoting() {\n return this.#pivoting;\n }\n\n /**\n * Sets a 3D World-space position to pivot about.\n *\n * @param {Number[]} worldPos The new World-space pivot position.\n */\n setPivotPos(worldPos) {\n this.#pivotWorldPos.set(worldPos);\n this.#pivotPosSet = true;\n }\n\n /**\n * Sets the pivot position to the 3D projection of the given 2D canvas coordinates on a sphere centered\n * at the viewpoint. The radius of the sphere is configured via {@link CameraControl#smartPivot}.\n *\n *\n * @param canvasPos\n */\n setCanvasPivotPos(canvasPos) {\n const camera = this.#view.camera;\n const pivotShereRadius = Math.abs(distVec3(this.#view.viewer.scene.center, camera.eye));\n const transposedProjectMat = camera.projection.transposedProjMatrix;\n // @ts-ignore\n const Pt3 = transposedProjectMat.subarray(8, 12);\n // @ts-ignore\n const Pt4 = transposedProjectMat.subarray(12);\n const D = [0, 0, -1.0, 1];\n const screenZ = dotVec4(D, Pt3) / dotVec4(D, Pt4);\n const worldPos = tempVec4a;\n camera.projection.unproject(canvasPos, screenZ, tempVec4b, tempVec4c, worldPos);\n const eyeWorldPosVec = normalizeVec3(subVec3(worldPos, camera.eye, tempVec3a));\n const posOnSphere = addVec3(camera.eye, mulVec3Scalar(eyeWorldPosVec, pivotShereRadius, tempVec3b), tempVec3c);\n this.setPivotPos(posOnSphere);\n }\n\n /**\n * Gets the current position we're pivoting about.\n * @returns {Number[]} The current World-space pivot position.\n */\n getPivotPos():FloatArrayParam {\n return (this.#pivotPosSet) ? this.#pivotWorldPos : this.#view.camera.look; // Avoid pivoting about [0,0,0] by default\n }\n\n /**\n * Continues to pivot.\n *\n * @param {Number} yawInc Yaw rotation increment.\n * @param {Number} pitchInc Pitch rotation increment.\n */\n continuePivot(yawInc, pitchInc) {\n if (!this.#pivoting) {\n return;\n }\n if (yawInc === 0 && pitchInc === 0) {\n return;\n }\n const camera = this.#view.camera;\n var dx = -yawInc;\n const dy = -pitchInc;\n if (camera.worldUp[2] === 1) {\n dx = -dx;\n }\n this.#azimuth += -dx * .01;\n this.#polar += dy * .01;\n this.#polar = clamp(this.#polar, .001, Math.PI - .001);\n const pos = [\n this.#radius * Math.sin(this.#polar) * Math.sin(this.#azimuth),\n this.#radius * Math.cos(this.#polar),\n this.#radius * Math.sin(this.#polar) * Math.cos(this.#azimuth)\n ];\n if (camera.worldUp[2] === 1) {\n const t = pos[1];\n pos[1] = pos[2];\n pos[2] = t;\n }\n // Preserve the eye->look distance, since in xeokit \"look\" is the point-of-interest, not the direction vector.\n const eyeLookLen = lenVec3(subVec3(camera.look, camera.eye, createVec3()));\n const pivotPos = this.getPivotPos();\n addVec3(pos, pivotPos);\n let lookat = lookAtMat4v(pos, pivotPos, camera.worldUp);\n lookat = inverseMat4(lookat);\n const offset = transformVec3(lookat, this.#cameraOffset);\n lookat[12] -= offset[0];\n lookat[13] -= offset[1];\n lookat[14] -= offset[2];\n const zAxis = [lookat[8], lookat[9], lookat[10]];\n camera.eye = [lookat[12], lookat[13], lookat[14]];\n subVec3(camera.eye, mulVec3Scalar(zAxis, eyeLookLen), camera.look);\n camera.up = [lookat[4], lookat[5], lookat[6]];\n this.showPivot();\n }\n\n /**\n * Shows the pivot position.\n *\n * Only works if we set an HTML DOM element to represent the pivot position.\n */\n showPivot() {\n if (this.#shown) {\n return;\n }\n if (this.#pivotElement) {\n this.updatePivotElement();\n this.#pivotElement.style.visibility = \"visible\";\n }\n if (this.#pivotSphereEnabled) {\n this.destroyPivotSphere();\n this.createPivotSphere();\n }\n this.#shown = true;\n }\n\n /**\n * Hides the pivot position.\n *\n * Only works if we set an HTML DOM element to represent the pivot position.\n */\n hidePivot() {\n if (!this.#shown) {\n return;\n }\n if (this.#pivotElement) {\n this.#pivotElement.style.visibility = \"hidden\";\n }\n if (this.#pivotSphereEnabled) {\n this.destroyPivotSphere();\n }\n this.#shown = false;\n }\n\n /**\n * Finishes pivoting.\n */\n endPivot() {\n this.#pivoting = false;\n }\n\n destroy() {\n this.destroyPivotSphere();\n this.#view.camera.onViewMatrix.unsub(this.#onViewMatrix);\n this.#view.camera.onProjMatrix.unsub(this.#onProjMatrix);\n this.#view.viewer.onTick.unsub(this.#onTick);\n }\n}\n\n\nexport {PivotController};\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\nimport {addVec3, createVec3, createVec4, dotVec4, lenVec3, mulVec3Scalar, normalizeVec3, subVec3} from \"@xeokit/matrix\";\n\nconst screenPos = createVec4();\nconst viewPos = createVec4();\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\nconst tempVec4c = createVec4();\n\n/**\n * @private\n */\nclass PanController {\n\n #view: View;\n\n constructor(view) {\n this.#view = view;\n }\n\n /**\n * Dollys the Camera towards the given target 2D canvas position.\n *\n * When the target's corresponding World-space position is also provided, then this function will also test if we've\n * dollied past the target, and will return ````true```` if that's the case.\n *\n * @param [optionalTargetWorldPos] Optional world position of the target\n * @param targetCanvasPos Canvas position of the target\n * @param dollyDelta Amount to dolly\n * @return True if optionalTargetWorldPos was given, and we've dollied past that position.\n */\n dollyToCanvasPos(optionalTargetWorldPos, targetCanvasPos, dollyDelta) {\n\n let dolliedThroughSurface = false;\n\n const camera = this.#view.camera;\n\n if (optionalTargetWorldPos) {\n const eyeToWorldPosVec = subVec3(optionalTargetWorldPos, camera.eye, tempVec3a);\n const eyeWorldPosDist = lenVec3(eyeToWorldPosVec);\n dolliedThroughSurface = (eyeWorldPosDist < dollyDelta);\n }\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDelta;\n\n const unprojectedWorldPos = this._unproject(targetCanvasPos, tempVec4a);\n const offset = subVec3(unprojectedWorldPos, camera.eye, tempVec4c);\n const moveVec = mulVec3Scalar(normalizeVec3(offset), -dollyDelta, []);\n\n camera.eye = [camera.eye[0] - moveVec[0], camera.eye[1] - moveVec[1], camera.eye[2] - moveVec[2]];\n camera.look = [camera.look[0] - moveVec[0], camera.look[1] - moveVec[1], camera.look[2] - moveVec[2]];\n\n if (optionalTargetWorldPos) {\n\n // Subtle UX tweak - if we have a target World position, then set camera eye->look distance to\n // the same distance as from eye->target. This just gives us a better position for look,\n // if we subsequently orbit eye about look, so that we don't orbit a position that's\n // suddenly a lot closer than the point we pivoted about on the surface of the last object\n // that we click-drag-pivoted on.\n\n const eyeTargetVec = subVec3(optionalTargetWorldPos, camera.eye, tempVec3a);\n const lenEyeTargetVec = lenVec3(eyeTargetVec);\n const eyeLookVec = mulVec3Scalar(normalizeVec3(subVec3(camera.look, camera.eye, tempVec3b)), lenEyeTargetVec);\n camera.look = [camera.eye[0] + eyeLookVec[0], camera.eye[1] + eyeLookVec[1], camera.eye[2] + eyeLookVec[2]];\n }\n\n } else if (camera.projectionType === OrthoProjectionType) {\n\n // - set ortho scale, getting the unprojected targetCanvasPos before and after, get that difference in a vector;\n // - get the vector in which we're dollying;\n // - add both vectors to camera eye and look.\n\n const worldPos1 = this._unproject(targetCanvasPos, tempVec4a);\n\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDelta;\n\n ////////////////////////////// TODO\n // camera.orthoProjection._update(); // HACK\n\n const worldPos2 = this._unproject(targetCanvasPos, tempVec4b);\n const offset = subVec3(worldPos2, worldPos1, tempVec4c);\n const eyeLookMoveVec = mulVec3Scalar(normalizeVec3(subVec3(camera.look, camera.eye, tempVec3a)), -dollyDelta, tempVec3b);\n const moveVec = addVec3(offset, eyeLookMoveVec, tempVec3c);\n\n camera.eye = [camera.eye[0] - moveVec[0], camera.eye[1] - moveVec[1], camera.eye[2] - moveVec[2]];\n camera.look = [camera.look[0] - moveVec[0], camera.look[1] - moveVec[1], camera.look[2] - moveVec[2]];\n }\n\n return dolliedThroughSurface;\n }\n\n _unproject(canvasPos, worldPos) {\n\n const camera = this.#view.camera;\n const transposedProjectMat = camera.projection.transposedProjMatrix;\n\n // @ts-ignore\n const Pt3 = transposedProjectMat.subarray(8, 12);\n // @ts-ignore\n const Pt4 = transposedProjectMat.subarray(12);\n const D = [0, 0, -1.0, 1];\n const screenZ = dotVec4(D, Pt3) / dotVec4(D, Pt4);\n\n camera.projection.unproject(canvasPos, screenZ, screenPos, viewPos, worldPos);\n\n return worldPos;\n }\n\n destroy() {\n }\n}\n\nexport {PanController};\n", "/**\n * @private\n */\nimport {View} from \"@xeokit/viewer\";\n\nclass MouseMiscHandler {\n\n #view: View;\n #mouseEnterHandler: () => void;\n #mouseLeaveHandler: () => void;\n #mouseMoveHandler: (e) => void;\n #mouseDownHandler: (e) => void;\n #mouseUpHandler: (e) => void;\n\n constructor(view:View, controllers, configs, states, updates) {\n\n this.#view = view;\n\n const htmlElement = this.#view.htmlElement;\n\n htmlElement.addEventListener(\"mouseenter\", this.#mouseEnterHandler = () => {\n states.mouseover = true;\n });\n\n htmlElement.addEventListener(\"mouseleave\", this.#mouseLeaveHandler = () => {\n states.mouseover = false;\n htmlElement.style.cursor = null;\n });\n\n document.addEventListener(\"mousemove\", this.#mouseMoveHandler = (e) => {\n getCanvasPosFromEvent(e, htmlElement, states.pointerCanvasPos);\n });\n\n htmlElement.addEventListener(\"mousedown\", this.#mouseDownHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n getCanvasPosFromEvent(e, htmlElement, states.pointerCanvasPos);\n states.mouseover = true;\n });\n\n htmlElement.addEventListener(\"mouseup\", this.#mouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n });\n }\n\n reset() {\n }\n\n destroy() {\n\n const htmlElement = this.#view.htmlElement;\n\n document.removeEventListener(\"mousemove\", this.#mouseMoveHandler);\n htmlElement.removeEventListener(\"mouseenter\", this.#mouseEnterHandler);\n htmlElement.removeEventListener(\"mouseleave\", this.#mouseLeaveHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#mouseDownHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#mouseUpHandler);\n }\n}\n\nfunction getCanvasPosFromEvent(event, htmlElement, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n const { left, top } = htmlElement.getBoundingClientRect();\n canvasPos[0] = event.clientX - left;\n canvasPos[1] = event.clientY - top;\n }\n return canvasPos;\n}\n\nexport {MouseMiscHandler};\n", "\nimport {createVec2, distVec2, geometricMeanVec2, lenVec3, subVec2, subVec3} from \"@xeokit/matrix\";\nimport {View} from \"@xeokit/viewer\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\n\nconst getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX - totalOffsetLeft;\n canvasPos[1] = event.pageY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nclass TouchPanRotateAndDollyHandler {\n #canvasTouchMoveHandler: any;\n #canvasTouchStartHandler: any;\n #view: View;\n #canvasTouchEndHandler: any;\n #tickSub: () => void;\n\n constructor(view:View, controllers:any, configs:any, states:any, updates:any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n\n const tapStartCanvasPos = createVec2();\n const tapCanvasPos0 = createVec2();\n const tapCanvasPos1 = createVec2();\n const touch0Vec = createVec2();\n\n const lastCanvasTouchPosList = [];\n const canvas = this.#view.htmlElement;\n\n let numTouches = 0;\n let tapStartTime = -1;\n let waitForTick = false;\n\n this.#tickSub = view.viewer.onTick.sub(() => {\n waitForTick = false;\n });\n\n let firstDragDeltaX = 0;\n let firstDragDeltaY = 1;\n let absorbTinyFirstDrag = false;\n\n canvas.addEventListener(\"touchstart\", this.#canvasTouchStartHandler = (event) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n event.preventDefault();\n\n const touches = event.touches;\n const changedTouches = event.changedTouches;\n\n states.touchStartTime = Date.now();\n\n if (touches.length === 1 && changedTouches.length === 1) {\n\n tapStartTime = states.touchStartTime;\n\n getCanvasPosFromEvent(touches[0], tapStartCanvasPos);\n\n if (configs.followPointer) {\n\n pickController.pickCursorPos = tapStartCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (!configs.planView) {\n\n if (pickController.picked && pickController.pickedSurface && pickController.pickResult && pickController.pickResult.worldPos) {\n\n pivotController.setPivotPos(pickController.pickResult.worldPos);\n\n if (!configs.firstPerson && pivotController.startPivot()) {\n pivotController.showPivot();\n }\n\n } else {\n\n if (configs.smartPivot) {\n pivotController.setCanvasPivotPos(states.pointerCanvasPos);\n } else {\n pivotController.setPivotPos(view.camera.look);\n }\n\n if (!configs.firstPerson && pivotController.startPivot()) {\n pivotController.showPivot();\n }\n }\n }\n }\n\n } else {\n tapStartTime = -1;\n }\n\n while (lastCanvasTouchPosList.length < touches.length) {\n lastCanvasTouchPosList.push(createVec2());\n }\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n getCanvasPosFromEvent(touches[i], lastCanvasTouchPosList[i]);\n }\n\n numTouches = touches.length;\n });\n\n canvas.addEventListener(\"touchend\", this.#canvasTouchEndHandler = () => {\n if (pivotController.getPivoting()) {\n pivotController.endPivot()\n }\n firstDragDeltaX = 0;\n firstDragDeltaY = 0;\n absorbTinyFirstDrag = true;\n })\n\n canvas.addEventListener(\"touchmove\", this.#canvasTouchMoveHandler = (event) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n event.stopPropagation();\n event.preventDefault();\n\n if (waitForTick) {\n // Limit changes detection to one per frame\n return;\n }\n\n waitForTick = true;\n\n // Scaling drag-rotate to canvas boundary\n\n const canvasBoundary = view.boundary;\n const canvasWidth = canvasBoundary[2];\n const canvasHeight = canvasBoundary[3];\n\n const touches = event.touches;\n\n if (event.touches.length !== numTouches) {\n // Two fingers were pressed, then one of them is removed\n // We don't want to rotate in this case (weird behavior)\n return;\n }\n\n if (numTouches === 1) {\n\n getCanvasPosFromEvent(touches[0], tapCanvasPos0);\n\n //-----------------------------------------------------------------------------------------------\n // Drag rotation\n //-----------------------------------------------------------------------------------------------\n\n subVec2(tapCanvasPos0, lastCanvasTouchPosList[0], touch0Vec);\n\n const xPanDelta = touch0Vec[0];\n const yPanDelta = touch0Vec[1];\n\n if (states.longTouchTimeout !== null && (Math.abs(xPanDelta) > configs.longTapRadius || Math.abs(yPanDelta) > configs.longTapRadius)) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n if (configs.planView) { // No rotating in plan-view mode\n\n const camera = view.camera;\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n const touchPicked = false;\n const pickedWorldPos = [0, 0, 0];\n\n const depth = Math.abs(touchPicked ? lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])) : view.camera.eyeLookDist);\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX += (xPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY += (yPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n\n } else {\n\n updates.panDeltaX += 0.5 * camera.orthoProjection.scale * (xPanDelta / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY += 0.5 * camera.orthoProjection.scale * (yPanDelta / canvasHeight) * configs.touchPanRate;\n }\n\n } else {\n // if (!absorbTinyFirstDrag) {\n updates.rotateDeltaY -= (xPanDelta / canvasWidth) * (configs.dragRotationRate * 1.0); // Full horizontal rotation\n updates.rotateDeltaX += (yPanDelta / canvasHeight) * (configs.dragRotationRate * 1.5); // Half vertical rotation\n // } else {\n // firstDragDeltaY -= (xPanDelta / canvasWidth) * (configs.dragRotationRate * 1.0); // Full horizontal rotation\n // firstDragDeltaX += (yPanDelta / canvasHeight) * (configs.dragRotationRate * 1.5); // Half vertical rotation\n // if (Math.abs(firstDragDeltaX) > 5 || Math.abs(firstDragDeltaY) > 5) {\n // updates.rotateDeltaX += firstDragDeltaX;\n // updates.rotateDeltaY += firstDragDeltaY;\n // firstDragDeltaX = 0;\n // firstDragDeltaY = 0;\n // absorbTinyFirstDrag = false;\n // }\n // }\n }\n\n } else if (numTouches === 2) {\n\n const touch0 = touches[0];\n const touch1 = touches[1];\n\n getCanvasPosFromEvent(touch0, tapCanvasPos0);\n getCanvasPosFromEvent(touch1, tapCanvasPos1);\n\n const lastMiddleTouch = geometricMeanVec2(lastCanvasTouchPosList[0], lastCanvasTouchPosList[1]);\n const currentMiddleTouch = geometricMeanVec2(tapCanvasPos0, tapCanvasPos1);\n\n const touchDelta = createVec2();\n\n subVec2(lastMiddleTouch, currentMiddleTouch, touchDelta);\n\n const xPanDelta = touchDelta[0];\n const yPanDelta = touchDelta[1];\n\n const camera = view.camera;\n\n // Dollying\n\n const d1 = distVec2([touch0.pageX, touch0.pageY], [touch1.pageX, touch1.pageY]);\n const d2 = distVec2(lastCanvasTouchPosList[0], lastCanvasTouchPosList[1]);\n\n const dollyDelta = (d2 - d1) * configs.touchDollyRate;\n\n updates.dollyDelta = dollyDelta;\n\n if (Math.abs(dollyDelta) < 1.0) {\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n const pickedWorldPos = pickController.pickResult ? pickController.pickResult.worldPos : view.viewer.scene.center;\n\n const depth = Math.abs(lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])));\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX -= (xPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY -= (yPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n\n } else {\n\n updates.panDeltaX -= 0.5 * camera.orthoProjection.scale * (xPanDelta / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY -= 0.5 * camera.orthoProjection.scale * (yPanDelta / canvasHeight) * configs.touchPanRate;\n }\n }\n\n\n states.pointerCanvasPos = currentMiddleTouch;\n }\n\n for (let i = 0; i < numTouches; ++i) {\n getCanvasPosFromEvent(touches[i], lastCanvasTouchPosList[i]);\n }\n });\n }\n\n reset() {\n }\n\n destroy() {\n const canvas = this.#view.htmlElement;\n canvas.removeEventListener(\"touchstart\", this.#canvasTouchStartHandler);\n canvas.removeEventListener(\"touchend\", this.#canvasTouchEndHandler);\n canvas.removeEventListener(\"touchmove\", this.#canvasTouchMoveHandler);\n this.#view.viewer.onTick.unsub(this.#tickSub);\n }\n}\n\nexport {TouchPanRotateAndDollyHandler};\n", "/**\n * Code for the BACKSPACE key.\n */\nexport const KEY_BACKSPACE: number = 8;\n\n/**\n * Code for the TAB key.\n */\nexport const KEY_TAB: number = 9;\n\n/**\n * Code for the ENTER key.\n */\nexport const KEY_ENTER: number = 13;\n\n/**\n * Code for the SHIFT key.\n */\nexport const KEY_SHIFT: number = 16;\n\n/**\n * Code for the CTRL key.\n */\nexport const KEY_CTRL: number = 17;\n\n/**\n * Code for the ALT key.\n */\nexport const KEY_ALT: number = 18;\n\n/**\n * Code for the PAUSE_BREAK key.\n */\nexport const KEY_PAUSE_BREAK: number = 19;\n\n/**\n * Code for the CAPS_LOCK key.\n */\nexport const KEY_CAPS_LOCK: number = 20;\n\n/**\n * Code for the ESCAPE key.\n */\nexport const KEY_ESCAPE: number = 27;\n\n/**\n * Code for the PAGE_UP key.\n */\nexport const KEY_PAGE_UP: number = 33;\n\n/**\n * Code for the PAGE_DOWN key.\n */\nexport const KEY_PAGE_DOWN: number = 34;\n\n/**\n * Code for the END key.\n */\nexport const KEY_END: number = 35;\n\n/**\n * Code for the HOME key.\n */\nexport const KEY_HOME: number = 36;\n\n/**\n * Code for the LEFT_ARROW key.\n */\nexport const KEY_LEFT_ARROW: number = 37;\n\n/**\n * Code for the UP_ARROW key.\n\n */\nexport const KEY_UP_ARROW: number = 38;\n\n/**\n * Code for the RIGHT_ARROW key.\n */\nexport const KEY_RIGHT_ARROW: number = 39;\n\n/**\n * Code for the DOWN_ARROW key.\n */\nexport const KEY_DOWN_ARROW: number = 40;\n\n/**\n * Code for the INSERT key.\n */\nexport const KEY_INSERT: number = 45;\n\n/**\n * Code for the DELETE key.\n */\nexport const KEY_DELETE: number = 46;\n\n/**\n * Code for the 0 key.\n */\nexport const KEY_NUM_0: number = 48;\n\n/**\n * Code for the 1 key.\n */\nexport const KEY_NUM_1: number = 49;\n\n/**\n * Code for the 2 key.\n */\nexport const KEY_NUM_2: number = 50;\n\n/**\n * Code for the 3 key.\n */\nexport const KEY_NUM_3: number = 51;\n\n/**\n * Code for the 4 key.\n */\nexport const KEY_NUM_4: number = 52;\n\n/**\n * Code for the 5 key.\n */\nexport const KEY_NUM_5: number = 53;\n\n/**\n * Code for the 6 key.\n */\nexport const KEY_NUM_6: number = 54;\n\n/**\n * Code for the 7 key.\n */\nexport const KEY_NUM_7: number = 55;\n\n/**\n * Code for the 8 key.\n */\nexport const KEY_NUM_8: number = 56;\n\n/**\n * Code for the 9 key.\n */\nexport const KEY_NUM_9: number = 57;\n\n/**\n * Code for the A key.\n */\nexport const KEY_A: number = 65;\n\n/**\n * Code for the B key.\n */\nexport const KEY_B: number = 66;\n\n/**\n * Code for the C key.\n */\nexport const KEY_C: number = 67;\n\n/**\n * Code for the D key.\n */\nexport const KEY_D: number = 68;\n\n/**\n * Code for the E key.\n */\nexport const KEY_E: number = 69;\n\n/**\n * Code for the F key.\n */\nexport const KEY_F: number = 70;\n\n/**\n * Code for the G key.\n */\nexport const KEY_G: number = 71;\n\n/**\n * Code for the H key.\n */\nexport const KEY_H: number = 72;\n\n/**\n * Code for the I key.\n */\nexport const KEY_I: number = 73;\n\n/**\n * Code for the J key.\n */\nexport const KEY_J: number = 74;\n\n/**\n * Code for the K key.\n */\nexport const KEY_K: number = 75;\n\n/**\n * Code for the L key.\n */\nexport const KEY_L: number = 76;\n\n/**\n * Code for the M key.\n */\nexport const KEY_M: number = 77;\n\n/**\n * Code for the N key.\n */\nexport const KEY_N: number = 78;\n\n/**\n * Code for the O key.\n */\nexport const KEY_O: number = 79;\n\n/**\n * Code for the P key.\n */\nexport const KEY_P: number = 80;\n\n/**\n * Code for the Q key.\n */\nexport const KEY_Q: number = 81;\n\n/**\n * Code for the R key.\n */\nexport const KEY_R: number = 82;\n\n/**\n * Code for the S key.\n */\nexport const KEY_S: number = 83;\n\n/**\n * Code for the T key.\n */\nexport const KEY_T: number = 84;\n\n/**\n * Code for the U key.\n */\nexport const KEY_U: number = 85;\n\n/**\n * Code for the V key.\n */\nexport const KEY_V: number = 86;\n\n/**\n * Code for the W key.\n */\nexport const KEY_W: number = 87;\n\n/**\n * Code for the X key.\n */\nexport const KEY_X: number = 88;\n\n/**\n * Code for the Y key.\n */\nexport const KEY_Y: number = 89;\n\n/**\n * Code for the Z key.\n */\nexport const KEY_Z: number = 90;\n\n/**\n * Code for the LEFT_WINDOW key.\n */\nexport const KEY_LEFT_WINDOW: number = 91;\n\n/**\n * Code for the RIGHT_WINDOW key.\n */\nexport const KEY_RIGHT_WINDOW: number = 92;\n\n/**\n * Code for the SELECT key.\n */\nexport const KEY_SELECT_KEY: number = 93;\n\n/**\n * Code for the number pad 0 key.\n */\nexport const KEY_NUMPAD_0: number = 96;\n\n/**\n * Code for the number pad 1 key.\n */\nexport const KEY_NUMPAD_1: number = 97;\n\n/**\n * Code for the number pad 2 key.\n */\nexport const KEY_NUMPAD_2: number = 98;\n\n/**\n * Code for the number pad 3 key.\n */\nexport const KEY_NUMPAD_3: number = 99;\n\n/**\n * Code for the number pad 4 key.\n */\nexport const KEY_NUMPAD_4: number = 100;\n\n/**\n * Code for the number pad 5 key.\n */\nexport const KEY_NUMPAD_5: number = 101;\n\n/**\n * Code for the number pad 6 key.\n */\nexport const KEY_NUMPAD_6: number = 102;\n\n/**\n * Code for the number pad 7 key.\n */\nexport const KEY_NUMPAD_7: number = 103;\n\n/**\n * Code for the number pad 8 key.\n */\nexport const KEY_NUMPAD_8: number = 104;\n\n/**\n * Code for the number pad 9 key.\n */\nexport const KEY_NUMPAD_9: number = 105;\n\n/**\n * Code for the MULTIPLY key.\n */\nexport const KEY_MULTIPLY: number = 106;\n\n/**\n * Code for the ADD key.\n */\nexport const KEY_ADD: number = 107;\n\n/**\n * Code for the SUBTRACT key.\n */\nexport const KEY_SUBTRACT: number = 109;\n\n/**\n * Code for the DECIMAL POINT key.\n */\nexport const KEY_DECIMAL_POINT: number = 110;\n\n/**\n * Code for the DIVIDE key.\n */\nexport const KEY_DIVIDE: number = 111;\n\n/**\n * Code for the F1 key.\n */\nexport const KEY_F1: number = 112;\n\n/**\n * Code for the F2 key.\n */\nexport const KEY_F2: number = 113;\n\n/**\n * Code for the F3 key.\n */\nexport const KEY_F3: number = 114;\n\n/**\n * Code for the F4 key.\n */\nexport const KEY_F4: number = 115;\n\n/**\n * Code for the F5 key.\n */\nexport const KEY_F5: number = 116;\n\n/**\n * Code for the F6 key.\n */\nexport const KEY_F6: number = 117;\n\n/**\n * Code for the F7 key.\n */\nexport const KEY_F7: number = 118;\n\n/**\n * Code for the F8 key.\n */\nexport const KEY_F8: number = 119;\n\n/**\n * Code for the F9 key.\n */\nexport const KEY_F9: number = 120;\n\n/**\n * Code for the F10 key.\n */\nexport const KEY_F10: number = 121;\n\n/**\n * Code for the F11 key.\n */\nexport const KEY_F11: number = 122;\n\n/**\n * Code for the F12 key.\n */\nexport const KEY_F12: number = 123;\n\n/**\n * Code for the NUM_LOCK key.\n */\nexport const KEY_NUM_LOCK: number = 144;\n\n/**\n * Code for the SCROLL_LOCK key.\n */\nexport const KEY_SCROLL_LOCK: number = 145;\n\n/**\n * Code for the SEMI_COLON key.\n */\nexport const KEY_SEMI_COLON: number = 186;\n\n/**\n * Code for the EQUAL_SIGN key.\n */\nexport const KEY_EQUAL_SIGN: number = 187;\n\n/**\n * Code for the COMMA key.\n */\nexport const KEY_COMMA: number = 188;\n\n/**\n * Code for the DASH key.\n */\nexport const KEY_DASH: number = 189;\n\n/**\n * Code for the PERIOD key.\n */\nexport const KEY_PERIOD: number = 190;\n\n/**\n * Code for the FORWARD_SLASH key.\n */\nexport const KEY_FORWARD_SLASH: number = 191;\n\n/**\n * Code for the GRAVE_ACCENT key.\n */\nexport const KEY_GRAVE_ACCENT: number = 192;\n\n/**\n * Code for the OPEN_BRACKET key.\n */\nexport const KEY_OPEN_BRACKET: number = 219;\n\n/**\n * Code for the BACK_SLASH key.\n */\nexport const KEY_BACK_SLASH: number = 220;\n\n/**\n * Code for the CLOSE_BRACKET key.\n */\nexport const KEY_CLOSE_BRACKET: number = 221;\n\n/**\n * Code for the SINGLE_QUOTE key.\n */\nexport const KEY_SINGLE_QUOTE: number = 222;\n\n/**\n * Code for the SPACE key.\n */\nexport const KEY_SPACE: number = 32;", "/**\n * @private\n */\nimport {createVec2, createVec3, lenVec3, subVec3} from \"@xeokit/matrix\";\nimport {KEY_SHIFT} from \"./keycodes\";\nimport {View} from \"@xeokit/viewer\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\n\n\nconst canvasPos = createVec2();\n\nexport const getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n let totalScrollX = 0;\n let totalScrollY = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n totalScrollX += element.scrollLeft;\n totalScrollY += element.scrollTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX + totalScrollX - totalOffsetLeft;\n canvasPos[1] = event.pageY + totalScrollY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nexport class MousePanRotateDollyHandler {\n #canvasMouseMoveHandler: (e) => void;\n #documentKeyDownHandler: (e) => void;\n #documentKeyUpHandler: (e) => void;\n #view: View;\n #documentMouseUpHandler: (e) => void;\n #mouseEnterHandler: () => void;\n #mouseDownHandler: (e) => void;\n #documentMouseMoveHandler: (e) => void;\n #mouseUpHandler: (e) => void;\n #mouseWheelHandler: (e) => void;\n\n constructor(view:View, controllers:any, configs:any, states:any, updates:any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n\n let lastX = 0;\n let lastY = 0;\n let lastXDown = 0;\n let lastYDown = 0;\n let xRotateDelta = 0;\n let yRotateDelta = 0;\n\n let mouseDownLeft;\n let mouseDownMiddle;\n let mouseDownRight;\n\n let mouseDownPicked = false;\n const pickedWorldPos = createVec3();\n\n let mouseMovedOnCanvasSinceLastWheel = true;\n\n const htmlElement = this.#view.htmlElement;\n\n const keyDown = [];\n\n document.addEventListener(\"keydown\", this.#documentKeyDownHandler = (e) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n const keyCode = e.keyCode;\n keyDown[keyCode] = true;\n });\n\n document.addEventListener(\"keyup\", this.#documentKeyUpHandler = (e) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n if (!(configs.active && configs.pointerEnabled) ) {\n return;\n }\n const keyCode = e.keyCode;\n keyDown[keyCode] = false;\n });\n\n function setMousedownState(pick = true) {\n htmlElement.style.cursor = \"move\";\n setMousedownPositions();\n if (pick) {\n setMousedownPick();\n }\n }\n\n function setMousedownPositions() {\n xRotateDelta = 0;\n yRotateDelta = 0;\n\n lastX = states.pointerCanvasPos[0];\n lastY = states.pointerCanvasPos[1];\n lastXDown = states.pointerCanvasPos[0];\n lastYDown = states.pointerCanvasPos[1];\n }\n\n function setMousedownPick() {\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (pickController.picked && pickController.pickedSurface && pickController.pickResult && pickController.pickResult.worldPos) {\n mouseDownPicked = true;\n pickedWorldPos.set(pickController.pickResult.worldPos);\n } else {\n mouseDownPicked = false;\n }\n }\n\n htmlElement.addEventListener(\"mousedown\", this.#mouseDownHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n switch (e.which) {\n\n case 1: // Left button\n\n if (keyDown[KEY_SHIFT] || configs.planView) {\n\n mouseDownLeft = true;\n\n setMousedownState();\n\n } else {\n\n mouseDownLeft = true;\n\n setMousedownState(false);\n }\n\n break;\n\n case 2: // Middle/both buttons\n\n mouseDownMiddle = true;\n\n setMousedownState();\n\n break;\n\n case 3: // Right button\n\n mouseDownRight = true;\n\n if (configs.panRightClick) {\n\n setMousedownState();\n }\n\n break;\n\n default:\n break;\n }\n });\n\n document.addEventListener(\"mousemove\", this.#documentMouseMoveHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (!mouseDownLeft && !mouseDownMiddle && !mouseDownRight) {\n return;\n }\n\n // Scaling drag-rotate to canvas boundary\n\n const canvasBoundary = view.boundary;\n\n const canvasWidth = canvasBoundary[2];\n const canvasHeight = canvasBoundary[3];\n const x = states.pointerCanvasPos[0];\n const y = states.pointerCanvasPos[1];\n\n const panning = keyDown[KEY_SHIFT] || configs.planView || (!configs.panRightClick && mouseDownMiddle) || (configs.panRightClick && mouseDownRight);\n\n const xDelta = document.pointerLockElement ? e.movementX : (x - lastX);\n const yDelta = document.pointerLockElement ? e.movementY : (y - lastY);\n\n if (panning) {\n\n const camera = view.camera;\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n const depth = Math.abs(mouseDownPicked ? lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])) : view.camera.eyeLookDist);\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX += (1.5 * xDelta * targetDistance / canvasHeight);\n updates.panDeltaY += (1.5 * yDelta * targetDistance / canvasHeight);\n\n } else {\n\n updates.panDeltaX += 0.5 * camera.orthoProjection.scale * (xDelta / canvasHeight);\n updates.panDeltaY += 0.5 * camera.orthoProjection.scale * (yDelta / canvasHeight);\n }\n\n } else if (mouseDownLeft && !mouseDownMiddle && !mouseDownRight) {\n\n if (!configs.planView) { // No rotating in plan-view mode\n\n if (configs.firstPerson) {\n updates.rotateDeltaY -= (xDelta / canvasWidth) * configs.dragRotationRate / 2;\n updates.rotateDeltaX += (yDelta / canvasHeight) * (configs.dragRotationRate / 4);\n\n } else {\n updates.rotateDeltaY -= (xDelta / canvasWidth) * (configs.dragRotationRate * 1.5);\n updates.rotateDeltaX += (yDelta / canvasHeight) * (configs.dragRotationRate * 1.5);\n }\n }\n }\n\n lastX = x;\n lastY = y;\n });\n\n htmlElement.addEventListener(\"mousemove\", this.#canvasMouseMoveHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (!states.mouseover) {\n return;\n }\n\n mouseMovedOnCanvasSinceLastWheel = true;\n });\n\n document.addEventListener(\"mouseup\", this.#documentMouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n switch (e.which) {\n case 1: // Left button\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n case 2: // Middle/both buttons\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n case 3: // Right button\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n default:\n break;\n }\n xRotateDelta = 0;\n yRotateDelta = 0;\n });\n\n htmlElement.addEventListener(\"mouseup\", this.#mouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n switch (e.which) {\n case 3: // Right button\n getCanvasPosFromEvent(e, canvasPos);\n const x = canvasPos[0];\n const y = canvasPos[1];\n if (Math.abs(x - lastXDown) < 3 && Math.abs(y - lastYDown) < 3) {\n controllers.cameraControl.fire(\"rightClick\", { // For context menus\n pagePos: [Math.round(e.pageX), Math.round(e.pageY)],\n canvasPos: canvasPos,\n event: e\n }, true);\n }\n break;\n default:\n break;\n }\n htmlElement.style.removeProperty(\"cursor\");\n });\n\n htmlElement.addEventListener(\"mouseenter\", this.#mouseEnterHandler = () => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n xRotateDelta = 0;\n yRotateDelta = 0;\n });\n\n const maxElapsed = 1 / 20;\n const minElapsed = 1 / 60;\n\n let secsNowLast = null;\n\n htmlElement.addEventListener(\"wheel\", this.#mouseWheelHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n const secsNow = performance.now() / 1000.0;\n var secsElapsed = (secsNowLast !== null) ? (secsNow - secsNowLast) : 0;\n secsNowLast = secsNow;\n if (secsElapsed > maxElapsed) {\n secsElapsed = maxElapsed;\n }\n if (secsElapsed < minElapsed) {\n secsElapsed = minElapsed;\n }\n const delta = Math.max(-1, Math.min(1, -e.deltaY * 40));\n if (delta === 0) {\n return;\n }\n const normalizedDelta = delta / Math.abs(delta);\n updates.dollyDelta += -normalizedDelta * secsElapsed * configs.mouseWheelDollyRate;\n\n if (mouseMovedOnCanvasSinceLastWheel) {\n states.followPointerDirty = true;\n mouseMovedOnCanvasSinceLastWheel = false;\n }\n\n }, {passive: true});\n }\n\n reset() {\n }\n\n destroy() {\n\n const htmlElement = this.#view.htmlElement;\n\n document.removeEventListener(\"keydown\", this.#documentKeyDownHandler);\n document.removeEventListener(\"keyup\", this.#documentKeyUpHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#mouseDownHandler);\n document.removeEventListener(\"mousemove\", this.#documentMouseMoveHandler);\n htmlElement.removeEventListener(\"mousemove\", this.#canvasMouseMoveHandler);\n document.removeEventListener(\"mouseup\", this.#documentMouseUpHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#mouseUpHandler);\n htmlElement.removeEventListener(\"mouseenter\", this.#mouseEnterHandler);\n htmlElement.removeEventListener(\"wheel\", this.#mouseWheelHandler);\n }\n}\n\n\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {createVec3} from \"@xeokit/matrix\";\n\nconst center = createVec3();\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\n\nconst tempCameraTarget = {\n eye: createVec3(),\n look: createVec3(),\n up: createVec3()\n};\n\n/**\n * @private\n */\nexport class KeyboardAxisViewHandler {\n #view: View;\n\n constructor(view: View, controllers:any, configs:any, states:any, updates: any) {\n\n this.#view = view;\n // const cameraControl = controllers.cameraControl;\n // const camera = view.camera;\n //\n // this._onSceneKeyDown = view.input.on(\"keydown\", () => {\n //\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n //\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n //\n // const axisViewRight = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_RIGHT);\n // const axisViewBack = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_BACK);\n // const axisViewLeft = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_LEFT);\n // const axisViewFront = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_FRONT);\n // const axisViewTop = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_TOP);\n // const axisViewBottom = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_BOTTOM);\n //\n // if ((!axisViewRight) && (!axisViewBack) && (!axisViewLeft) && (!axisViewFront) && (!axisViewTop) && (!axisViewBottom)) {\n // return;\n // }\n //\n // const aabb = view.aabb;\n // const diag = math.getAABB3Diag(aabb);\n //\n // math.getAABB3Center(aabb, center);\n //\n // const perspectiveDist = Math.abs(diag / Math.tan(controllers.cameraFlight.fitFOV * math.DEGTORAD));\n // const orthoScale = diag * 1.1;\n //\n // tempCameraTarget.orthoScale = orthoScale;\n //\n // if (axisViewRight) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldRight, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewBack) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldForward, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewLeft) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldRight, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewFront) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldForward, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewTop) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldUp, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(math.normalizeVec3(math.mulVec3Scalar(camera.worldForward, 1, tempVec3b), tempVec3c));\n //\n // } else if (axisViewBottom) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldUp, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(math.normalizeVec3(math.mulVec3Scalar(camera.worldForward, -1, tempVec3b)));\n // }\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.setPivotPos(center);\n // }\n //\n // if (controllers.cameraFlight.duration > 0) {\n // controllers.cameraFlight.flyTo(tempCameraTarget, () => {\n // if (controllers.pivotController.getPivoting() && configs.followPointer) {\n // controllers.pivotController.showPivot();\n // }\n // });\n //\n // } else {\n // controllers.cameraFlight.jumpTo(tempCameraTarget);\n // if (controllers.pivotController.getPivoting() && configs.followPointer) {\n // controllers.pivotController.showPivot();\n // }\n // }\n // });\n }\n\n reset() {\n }\n\n destroy() {\n // this.#view.input.off(this._onSceneKeyDown);\n }\n}\n\n\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {createVec3, subVec3, canvasPosToWorldRay} from \"@xeokit/matrix\";\nimport {getAABB3Center} from \"@xeokit/boundaries\";\n\n/**\n * @private\n */\nclass MousePickHandler {\n\n #view: View;\n #clicks: number;\n #timeout: any;\n #lastPickedEntityId: any;\n #canvasMouseDownHandler: (e) => void;\n #canvasMouseMoveHandler: (e) => void;\n #canvasMouseUpHandler: (e) => void;\n #documentMouseUpHandler: (e) => void;\n\n constructor(view: View, controllers: any, configs: any, states: any, updates: any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n const cameraControl = controllers.cameraControl;\n\n this.#clicks = 0;\n this.#timeout = null;\n this.#lastPickedEntityId = null;\n\n let leftDown = false;\n let rightDown = false;\n\n const htmlElement = this.#view.htmlElement;\n\n const flyCameraTo = (pickResult?: PickResult) => {\n let pos;\n if (pickResult && pickResult.worldPos) {\n pos = pickResult.worldPos\n }\n const aabb = pickResult && pickResult.viewObject ? pickResult.viewObject.aabb : view.aabb;\n if (pos) { // Fly to look at point, don't change eye->look dist\n const camera = view.camera;\n const diff = subVec3(camera.eye, camera.look, []);\n controllers.cameraFlight.flyTo({\n // look: pos,\n // eye: xeokit.addVec3(pos, diff, []),\n // up: camera.up,\n aabb: aabb\n });\n // TODO: Option to back off to fit AABB in view\n } else {// Fly to fit target boundary in view\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n }\n };\n\n const tickifiedMouseMoveFn = view.viewer.tickify(\n this.#canvasMouseMoveHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (leftDown || rightDown) {\n return;\n }\n\n if (cameraControl.onRayMove.count > 0) {\n const origin = createVec3();\n const direction = createVec3();\n canvasPosToWorldRay(view.htmlElement, view.camera.viewMatrix, view.camera.projMatrix, view.camera.projection, states.pointerCanvasPos, origin, direction);\n cameraControl.onRayMove.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos,\n ray: {\n origin: origin,\n direction: direction,\n canvasPos: states.pointerCanvasPos\n }\n });\n }\n\n const hoverSubs = cameraControl.onHover.count > 0;\n const hoverEnterSubs = cameraControl.onHoverEnter.count > 0;\n const hoverOutSubs = cameraControl.onHoverOut.count > 0;\n const hoverOffSubs = cameraControl.onHoverOff.count > 0;\n const hoverSurfaceSubs = cameraControl.onHoverSurface.count > 0;\n const hoverSnapOrSurfaceSubs = cameraControl.onHoverSnapOrSurface.count > 0;\n\n if (hoverSubs || hoverEnterSubs || hoverOutSubs || hoverOffSubs || hoverSurfaceSubs || hoverSnapOrSurfaceSubs) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = hoverSurfaceSubs;\n pickController.scheduleSnapOrPick = hoverSnapOrSurfaceSubs\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n if (pickController.pickResult.viewObject) {\n const pickedEntityId = pickController.pickResult.viewObject.id;\n\n if (this.#lastPickedEntityId !== pickedEntityId) {\n\n if (this.#lastPickedEntityId !== undefined) {\n\n cameraControl.onHoverOut.dispatch(cameraControl, { // Hovered off an entity\n viewObject: view.objects[this.#lastPickedEntityId]\n });\n }\n\n cameraControl.onHoverEnter.dispatch(cameraControl, pickController.pickResult); // Hovering over a new entity\n\n this.#lastPickedEntityId = pickedEntityId;\n }\n }\n\n cameraControl.onHover.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickResult.worldPos || pickController.pickResult.snappedWorldPos) { // Hovering the surface of an entity\n cameraControl.onHoverSurface.dispatch(cameraControl, pickController.pickResult);\n }\n\n } else {\n\n if (this.#lastPickedEntityId !== undefined) {\n\n cameraControl.onHoverOut.dispatch(cameraControl, { // Hovered off an entity\n viewObject: view.objects[this.#lastPickedEntityId]\n });\n\n this.#lastPickedEntityId = undefined;\n }\n\n cameraControl.onHoverOff.dispatch(cameraControl, { // Not hovering on any entity\n canvasPos: pickController.pickCursorPos\n });\n }\n }\n }\n );\n\n htmlElement.addEventListener(\"mousemove\", tickifiedMouseMoveFn);\n\n htmlElement.addEventListener('mousedown', this.#canvasMouseDownHandler = (e) => {\n\n if (e.which === 1) {\n leftDown = true;\n }\n\n if (e.which === 3) {\n rightDown = true;\n }\n\n const leftButtonDown = (e.which === 1);\n\n if (!leftButtonDown) {\n return;\n }\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n // Left mouse button down to start pivoting\n\n states.mouseDownClientX = e.clientX;\n states.mouseDownClientY = e.clientY;\n states.mouseDownCursorX = states.pointerCanvasPos[0];\n states.mouseDownCursorY = states.pointerCanvasPos[1];\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n\n pickController.update();\n\n if (e.which === 1) {// Left button\n const pickResult = pickController.pickResult;\n if (pickResult && pickResult.worldPos) {\n pivotController.setPivotPos(pickResult.worldPos);\n pivotController.startPivot();\n } else {\n if (configs.smartPivot) {\n pivotController.setCanvasPivotPos(states.pointerCanvasPos);\n } else {\n pivotController.setPivotPos(view.camera.look);\n }\n pivotController.startPivot();\n }\n }\n }\n });\n\n document.addEventListener('mouseup', this.#documentMouseUpHandler = (e) => {\n\n if (e.which === 1) {\n leftDown = false;\n }\n\n if (e.which === 3) {\n rightDown = false;\n }\n\n if (pivotController.getPivoting()) {\n pivotController.endPivot();\n }\n });\n\n htmlElement.addEventListener('mouseup', this.#canvasMouseUpHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n const leftButtonUp = (e.which === 1);\n\n if (!leftButtonUp) {\n return;\n }\n\n // Left mouse button up to possibly pick or double-pick\n\n pivotController.hidePivot();\n\n if (Math.abs(e.clientX - states.mouseDownClientX) > 3 || Math.abs(e.clientY - states.mouseDownClientY) > 3) {\n return;\n }\n\n const pickedSubs = cameraControl.onPicked.count > 0;\n const pickedNothingSubs = cameraControl.onPickedNothing.count > 0;\n const pickedSurfaceSubs = cameraControl.onPickedSurface.count > 0;\n const doublePickedSubs = cameraControl.onDoublePicked.count > 0;\n const doublePickedSurfaceSubs = cameraControl.onDoublePickedSurface.count > 0;\n const doublePickedNothingSubs = cameraControl.onDoublePickedNothing.count > 0;\n\n if ((!configs.doublePickFlyTo) &&\n (!doublePickedSubs) &&\n (!doublePickedSurfaceSubs) &&\n (!doublePickedNothingSubs)) {\n\n // Avoid the single/double click differentiation timeout\n\n if (pickedSubs || pickedNothingSubs || pickedSurfaceSubs) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n pickController.update();\n\n if (pickController.pickResult) {\n\n cameraControl.onPicked.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.onPickedSurface.dispatch(cameraControl, pickController.pickResult);\n }\n } else {\n cameraControl.onPickedNothing(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n }\n }\n\n this.#clicks = 0;\n\n return;\n }\n\n this.#clicks++;\n\n if (this.#clicks === 1) { // First click\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = configs.doublePickFlyTo;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n pickController.update();\n\n const firstClickPickResult = pickController.pickResult;\n const firstClickPickSurface = pickController.pickedSurface;\n\n this.#timeout = setTimeout(() => {\n\n if (firstClickPickResult && firstClickPickResult.worldPos) {\n\n cameraControl.onPicked.dispatch(cameraControl, firstClickPickResult);\n\n if (firstClickPickSurface) {\n\n cameraControl.onPickedSurface.dispatch(cameraControl, firstClickPickResult);\n\n if ((!configs.firstPerson) && configs.followPointer) {\n controllers.pivotController.setPivotPos(firstClickPickResult.worldPos);\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n } else {\n cameraControl.onPickedNothing.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n }\n\n this.#clicks = 0;\n\n }, configs.doubleClickTimeFrame);\n\n } else { // Second click\n\n if (this.#timeout !== null) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = configs.doublePickFlyTo || doublePickedSubs || doublePickedSurfaceSubs;\n pickController.schedulePickSurface = pickController.schedulePickEntity && doublePickedSurfaceSubs;\n pickController.update();\n\n if (pickController.pickResult) {\n\n cameraControl.onDoublePicked.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.onDoublePickedSurface.dispatch(cameraControl, pickController.pickResult);\n }\n\n if (configs.doublePickFlyTo) {\n\n flyCameraTo(pickController.pickResult);\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n const pickedEntityAABB = pickController.pickResult.viewObject.aabb;\n const pickedEntityCenterPos = getAABB3Center(pickedEntityAABB);\n\n controllers.pivotController.setPivotPos(pickedEntityCenterPos);\n\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n\n } else {\n\n cameraControl.onDoublePickedNothing.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n\n if (configs.doublePickFlyTo) {\n\n flyCameraTo();\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n const sceneAABB = view.aabb;\n const sceneCenterPos = getAABB3Center(sceneAABB);\n\n controllers.pivotController.setPivotPos(sceneCenterPos);\n\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n }\n\n this.#clicks = 0;\n }\n }, false);\n }\n\n reset() {\n this.#clicks = 0;\n this.#lastPickedEntityId = null;\n if (this.#timeout) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n }\n\n destroy() {\n const htmlElement = this.#view.htmlElement;\n htmlElement.removeEventListener(\"mousemove\", this.#canvasMouseMoveHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#canvasMouseDownHandler);\n document.removeEventListener(\"mouseup\", this.#documentMouseUpHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#canvasMouseUpHandler);\n if (this.#timeout) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n }\n}\n\n\nexport {MousePickHandler};\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {distVec2, subVec3} from \"@xeokit/matrix\";\n\n\nconst TAP_INTERVAL = 150;\nconst DBL_TAP_INTERVAL = 325;\nconst TAP_DISTANCE_THRESHOLD = 4;\n\nconst getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX - totalOffsetLeft;\n canvasPos[1] = event.pageY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nexport class TouchPickHandler {\n\n #view: View;\n #canvasTouchStartHandler: (e) => void;\n #canvasTouchEndHandler: (e) => void;\n\n constructor(view: View, controllers: any, configs: any, states: any, updates: any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const cameraControl = controllers.cameraControl;\n\n let touchStartTime;\n const activeTouches = [];\n const tapStartPos = new Float32Array(2);\n let tapStartTime = -1;\n let lastTapTime = -1;\n\n const htmlElement = this.#view.htmlElement;\n\n const flyCameraTo = (pickResult?: PickResult) => {\n let pos;\n if (pickResult && pickResult.worldPos) {\n pos = pickResult.worldPos\n }\n const aabb = pickResult ? pickResult.viewObject.aabb : view.aabb;\n if (pos) { // Fly to look at point, don't change eye->look dist\n const camera = view.camera;\n const diff = subVec3(camera.eye, camera.look, []);\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n // TODO: Option to back off to fit AABB in view\n } else {// Fly to fit target boundary in view\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n }\n };\n\n htmlElement.addEventListener(\"touchstart\", this.#canvasTouchStartHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (states.longTouchTimeout !== null) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n const touches = e.touches;\n const changedTouches = e.changedTouches;\n\n touchStartTime = Date.now();\n\n if (touches.length === 1 && changedTouches.length === 1) {\n tapStartTime = touchStartTime;\n\n getCanvasPosFromEvent(touches[0], tapStartPos);\n\n const rightClickClientX = tapStartPos[0];\n const rightClickClientY = tapStartPos[1];\n\n const rightClickPageX = touches[0].pageX;\n const rightClickPageY = touches[0].pageY;\n\n states.longTouchTimeout = setTimeout(() => {\n controllers.cameraControl.fire(\"rightClick\", { // For context menus\n pagePos: [Math.round(rightClickPageX), Math.round(rightClickPageY)],\n canvasPos: [Math.round(rightClickClientX), Math.round(rightClickClientY)],\n event: e\n }, true);\n\n states.longTouchTimeout = null;\n }, configs.longTapTimeout);\n\n } else {\n tapStartTime = -1;\n }\n\n while (activeTouches.length < touches.length) {\n activeTouches.push(new Float32Array(2))\n }\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n getCanvasPosFromEvent(touches[i], activeTouches[i]);\n }\n\n activeTouches.length = touches.length;\n\n }, {passive: true});\n\n\n htmlElement.addEventListener(\"touchend\", this.#canvasTouchEndHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n const currentTime = Date.now();\n const touches = e.touches;\n const changedTouches = e.changedTouches;\n\n const pickedSurfaceSubs = cameraControl.hasSubs(\"pickedSurface\");\n\n if (states.longTouchTimeout !== null) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n // process tap\n\n if (touches.length === 0 && changedTouches.length === 1) {\n\n if (tapStartTime > -1 && currentTime - tapStartTime < TAP_INTERVAL) {\n\n if (lastTapTime > -1 && tapStartTime - lastTapTime < DBL_TAP_INTERVAL) {\n\n // Double-tap\n\n getCanvasPosFromEvent(changedTouches[0], pickController.pickCursorPos);\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n pickController.pickResult.touchInput = true;\n\n cameraControl.fire(\"doublePicked\", pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.fire(\"doublePickedSurface\", pickController.pickResult);\n }\n\n if (configs.doublePickFlyTo) {\n flyCameraTo(pickController.pickResult);\n }\n } else {\n cameraControl.fire(\"doublePickedNothing\");\n if (configs.doublePickFlyTo) {\n flyCameraTo();\n }\n }\n\n lastTapTime = -1;\n\n } else if (distVec2(activeTouches[0], tapStartPos) < TAP_DISTANCE_THRESHOLD) {\n\n // Single-tap\n\n getCanvasPosFromEvent(changedTouches[0], pickController.pickCursorPos);\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n pickController.pickResult.touchInput = true;\n\n cameraControl.fire(\"picked\", pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.fire(\"pickedSurface\", pickController.pickResult);\n }\n\n } else {\n cameraControl.fire(\"pickedNothing\");\n }\n\n lastTapTime = currentTime;\n }\n\n tapStartTime = -1\n }\n }\n\n activeTouches.length = touches.length;\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n activeTouches[i][0] = touches[i].pageX;\n activeTouches[i][1] = touches[i].pageY;\n }\n\n // e.stopPropagation();\n\n }, {passive: true});\n\n }\n\n reset(): void {\n // TODO\n // tapStartTime = -1;\n // lastTapTime = -1;\n\n }\n\n destroy(): void {\n const htmlElement = this.#view.htmlElement;\n htmlElement.removeEventListener(\"touchstart\", this.#canvasTouchStartHandler);\n htmlElement.removeEventListener(\"touchend\", this.#canvasTouchEndHandler);\n }\n}\n", "/**\n * @private\n */\nimport {View} from \"@xeokit/viewer\";\n\nexport class KeyboardPanRotateDollyHandler {\n #view: View;\n\n constructor(view:View, controllers, configs, states, updates) {\n\n this.#view = view;\n // const input = view.input;\n\n const keyDownMap = [];\n\n // const canvas = view.canvas.canvas;\n //\n // let mouseMovedSinceLastKeyboardDolly = true;\n //\n // this._onSceneMouseMove = input.on(\"mousemove\", () => {\n // mouseMovedSinceLastKeyboardDolly = true;\n // });\n //\n // this._onSceneKeyDown = input.on(\"keydown\", (keyCode) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n // keyDownMap[keyCode] = true;\n //\n // if (keyCode === input.KEY_SHIFT) {\n // canvas.style.cursor = \"move\";\n // }\n // });\n //\n // this._onSceneKeyUp = input.on(\"keyup\", (keyCode) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n // keyDownMap[keyCode] = false;\n //\n // if (keyCode === input.KEY_SHIFT) {\n // canvas.style.cursor = null;\n // }\n //\n // if (controllers.pivotController.getPivoting()) {\n // controllers.pivotController.endPivot()\n // }\n // });\n //\n // this._onTick = view.on(\"tick\", (e) => {\n //\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n //\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n //\n // const cameraControl = controllers.cameraControl;\n // const elapsedSecs = (e.deltaTime / 1000.0);\n //\n // //-------------------------------------------------------------------------------------------------\n // // Keyboard rotation\n // //-------------------------------------------------------------------------------------------------\n //\n // if (!configs.planView) {\n //\n // const rotateYPos = cameraControl._isKeyDownForAction(cameraControl.ROTATE_Y_POS, keyDownMap);\n // const rotateYNeg = cameraControl._isKeyDownForAction(cameraControl.ROTATE_Y_NEG, keyDownMap);\n // const rotateXPos = cameraControl._isKeyDownForAction(cameraControl.ROTATE_X_POS, keyDownMap);\n // const rotateXNeg = cameraControl._isKeyDownForAction(cameraControl.ROTATE_X_NEG, keyDownMap);\n //\n // const orbitDelta = elapsedSecs * configs.keyboardRotationRate;\n //\n // if (rotateYPos || rotateYNeg || rotateXPos || rotateXNeg) {\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n //\n // if (rotateYPos) {\n // updates.rotateDeltaY += orbitDelta;\n //\n // } else if (rotateYNeg) {\n // updates.rotateDeltaY -= orbitDelta;\n // }\n //\n // if (rotateXPos) {\n // updates.rotateDeltaX += orbitDelta;\n //\n // } else if (rotateXNeg) {\n // updates.rotateDeltaX -= orbitDelta;\n // }\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n // }\n // }\n //\n // //-------------------------------------------------------------------------------------------------\n // // Keyboard panning\n // //-------------------------------------------------------------------------------------------------\n //\n // if (!keyDownMap[input.KEY_CTRL] && !keyDownMap[input.KEY_ALT]) {\n //\n // const dollyBackwards = cameraControl._isKeyDownForAction(cameraControl.DOLLY_BACKWARDS, keyDownMap);\n // const dollyForwards = cameraControl._isKeyDownForAction(cameraControl.DOLLY_FORWARDS, keyDownMap);\n //\n // if (dollyBackwards || dollyForwards) {\n //\n // const dollyDelta = elapsedSecs * configs.keyboardDollyRate;\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n // if (dollyForwards) {\n // updates.dollyDelta -= dollyDelta;\n // } else if (dollyBackwards) {\n // updates.dollyDelta += dollyDelta;\n // }\n //\n // if (mouseMovedSinceLastKeyboardDolly) {\n // states.followPointerDirty = true;\n // mouseMovedSinceLastKeyboardDolly = false;\n // }\n // }\n // }\n //\n // const panForwards = cameraControl._isKeyDownForAction(cameraControl.PAN_FORWARDS, keyDownMap);\n // const panBackwards = cameraControl._isKeyDownForAction(cameraControl.PAN_BACKWARDS, keyDownMap);\n // const panLeft = cameraControl._isKeyDownForAction(cameraControl.PAN_LEFT, keyDownMap);\n // const panRight = cameraControl._isKeyDownForAction(cameraControl.PAN_RIGHT, keyDownMap);\n // const panUp = cameraControl._isKeyDownForAction(cameraControl.PAN_UP, keyDownMap);\n // const panDown = cameraControl._isKeyDownForAction(cameraControl.PAN_DOWN, keyDownMap);\n //\n // const panDelta = (keyDownMap[input.KEY_ALT] ? 0.3 : 1.0) * elapsedSecs * configs.keyboardPanRate; // ALT for slower pan rate\n //\n // if (panForwards || panBackwards || panLeft || panRight || panUp || panDown) {\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n //\n // if (panDown) {\n // updates.panDeltaY += panDelta;\n //\n // } else if (panUp) {\n // updates.panDeltaY += -panDelta;\n // }\n //\n // if (panRight) {\n // updates.panDeltaX += -panDelta;\n //\n // } else if (panLeft) {\n // updates.panDeltaX += panDelta;\n // }\n //\n // if (panBackwards) {\n // updates.panDeltaZ += panDelta;\n //\n // } else if (panForwards) {\n // updates.panDeltaZ += -panDelta;\n // }\n // }\n // });\n }\n\n reset() {\n }\n\n destroy() {\n\n // this.#view.off(this._onTick);\n //\n // this.#view.input.off(this._onSceneMouseMove);\n // this.#view.input.off(this._onSceneKeyDown);\n // this.#view.input.off(this._onSceneKeyUp);\n }\n}\n\n", "import {View} from \"@xeokit/viewer\";\nimport {createVec3, lenVec3, subVec3} from \"@xeokit/matrix\";\n\nconst SCALE_DOLLY_EACH_FRAME = 1; // Recalculate dolly speed for eye->target distance on each Nth frame\nconst EPSILON = 0.001;\nconst tempVec3 = createVec3();\n\n/**\n * Handles camera updates on each \"tick\" that were scheduled by the various controllers.\n *\n * @private\n */\nexport class CameraUpdater {\n #view: View;\n #onTick: () => void;\n\n constructor(view: View, controllers, configs, states, updates) {\n\n this.#view = view;\n const camera = view.camera;\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n const panController = controllers.panController;\n\n let countDown = SCALE_DOLLY_EACH_FRAME; // Decrements on each tick\n let dollyDistFactor = 1.0; // Calculated when countDown is zero\n let followPointerWorldPos = null; // Holds the pointer's World position when configs.followPointer is true\n\n this.#onTick = view.viewer.onTick.subscribe(() => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n let cursorType = \"default\";\n\n //----------------------------------------------------------------------------------------------------------\n // Dolly decay\n //------------------------------------------------------------------------------------ ----------------------\n\n if (Math.abs(updates.dollyDelta) < EPSILON) {\n updates.dollyDelta = 0;\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Rotation decay\n //----------------------------------------------------------------------------------------------------------\n\n if (Math.abs(updates.rotateDeltaX) < EPSILON) {\n updates.rotateDeltaX = 0;\n }\n\n if (Math.abs(updates.rotateDeltaY) < EPSILON) {\n updates.rotateDeltaY = 0;\n }\n\n if (updates.rotateDeltaX !== 0 || updates.rotateDeltaY !== 0) {\n updates.dollyDelta = 0;\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Dolly speed eye->look scaling\n //\n // If pointer is over an object, then dolly speed is proportional to the distance to that object.\n //\n // If pointer is not over an object, then dolly speed is proportional to the distance to the last\n // object the pointer was over. This is so that we can dolly to structures that may have gaps through\n // which empty background shows, that the pointer may inadvertently be over. In these cases, we don't\n // want dolly speed wildly varying depending on how accurately the user avoids the gaps with the pointer.\n //----------------------------------------------------------------------------------------------------------\n\n if (configs.followPointer) {\n\n if (--countDown <= 0) {\n\n countDown = SCALE_DOLLY_EACH_FRAME;\n\n if (updates.dollyDelta !== 0) {\n if (updates.rotateDeltaY === 0 && updates.rotateDeltaX === 0) {\n\n if (configs.followPointer && states.followPointerDirty) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (pickController.pickResult && pickController.pickResult.worldPos) {\n followPointerWorldPos = pickController.pickResult.worldPos;\n\n } else {\n dollyDistFactor = 1.0;\n followPointerWorldPos = null;\n }\n\n states.followPointerDirty = false;\n }\n }\n\n if (followPointerWorldPos) {\n const dist = Math.abs(lenVec3(subVec3(followPointerWorldPos, view.camera.eye, tempVec3)));\n dollyDistFactor = dist / configs.dollyProximityThreshold;\n }\n\n if (dollyDistFactor < configs.dollyMinSpeed) {\n dollyDistFactor = configs.dollyMinSpeed;\n }\n }\n }\n } else {\n dollyDistFactor = 1;\n followPointerWorldPos = null;\n }\n\n const dollyDeltaForDist = (updates.dollyDelta * dollyDistFactor);\n\n //----------------------------------------------------------------------------------------------------------\n // Rotation\n //----------------------------------------------------------------------------------------------------------\n\n if (updates.rotateDeltaY !== 0 || updates.rotateDeltaX !== 0) {\n\n if ((!configs.firstPerson) && configs.followPointer && pivotController.getPivoting()) {\n pivotController.continuePivot(updates.rotateDeltaY, updates.rotateDeltaX);\n pivotController.showPivot();\n\n } else {\n\n if (updates.rotateDeltaX !== 0) {\n if (configs.firstPerson) {\n camera.pitch(-updates.rotateDeltaX);\n } else {\n camera.orbitPitch(updates.rotateDeltaX);\n }\n }\n\n if (updates.rotateDeltaY !== 0) {\n if (configs.firstPerson) {\n camera.yaw(updates.rotateDeltaY);\n } else {\n camera.orbitYaw(updates.rotateDeltaY);\n }\n }\n }\n\n updates.rotateDeltaX *= configs.rotationInertia;\n updates.rotateDeltaY *= configs.rotationInertia;\n\n cursorType = \"grabbing\";\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Panning\n //----------------------------------------------------------------------------------------------------------\n\n if (Math.abs(updates.panDeltaX) < EPSILON) {\n updates.panDeltaX = 0;\n }\n\n if (Math.abs(updates.panDeltaY) < EPSILON) {\n updates.panDeltaY = 0;\n }\n\n if (Math.abs(updates.panDeltaZ) < EPSILON) {\n updates.panDeltaZ = 0;\n }\n\n if (updates.panDeltaX !== 0 || updates.panDeltaY !== 0 || updates.panDeltaZ !== 0) {\n\n const vec = createVec3();\n\n vec[0] = updates.panDeltaX;\n vec[1] = updates.panDeltaY;\n vec[2] = updates.panDeltaZ;\n\n let verticalEye;\n let verticalLook;\n\n if (configs.constrainVertical) {\n\n if (camera.xUp) {\n verticalEye = camera.eye[0];\n verticalLook = camera.look[0];\n } else if (camera.yUp) {\n verticalEye = camera.eye[1];\n verticalLook = camera.look[1];\n } else if (camera.zUp) {\n verticalEye = camera.eye[2];\n verticalLook = camera.look[2];\n }\n\n camera.pan(vec);\n\n const eye = camera.eye;\n const look = camera.look;\n\n if (camera.xUp) {\n eye[0] = verticalEye;\n look[0] = verticalLook;\n } else if (camera.yUp) {\n eye[1] = verticalEye;\n look[1] = verticalLook;\n } else if (camera.zUp) {\n eye[2] = verticalEye;\n look[2] = verticalLook;\n }\n\n camera.eye = eye;\n camera.look = look;\n\n } else {\n camera.pan(vec);\n }\n\n cursorType = \"grabbing\";\n }\n\n updates.panDeltaX *= configs.panInertia;\n updates.panDeltaY *= configs.panInertia;\n updates.panDeltaZ *= configs.panInertia;\n\n //----------------------------------------------------------------------------------------------------------\n // Dollying\n //----------------------------------------------------------------------------------------------------------\n\n if (dollyDeltaForDist !== 0) {\n\n if (dollyDeltaForDist < 0) {\n cursorType = \"zoom-in\";\n } else {\n cursorType = \"zoom-out\";\n }\n\n if (configs.firstPerson) {\n\n let verticalEye;\n let verticalLook;\n\n if (configs.constrainVertical) {\n if (camera.xUp) {\n verticalEye = camera.eye[0];\n verticalLook = camera.look[0];\n } else if (camera.yUp) {\n verticalEye = camera.eye[1];\n verticalLook = camera.look[1];\n } else if (camera.zUp) {\n verticalEye = camera.eye[2];\n verticalLook = camera.look[2];\n }\n }\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.pan([0, 0, dollyDeltaForDist]);\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDeltaForDist;\n }\n\n if (configs.constrainVertical) {\n const eye = camera.eye;\n const look = camera.look;\n if (camera.xUp) {\n eye[0] = verticalEye;\n look[0] = verticalLook;\n } else if (camera.yUp) {\n eye[1] = verticalEye;\n look[1] = verticalLook;\n } else if (camera.zUp) {\n eye[2] = verticalEye;\n look[2] = verticalLook;\n }\n camera.eye = eye;\n camera.look = look;\n }\n\n } else if (configs.planView) {\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.orthoProjection.scale = camera.orthoProjection.scale + dollyDeltaForDist;\n camera.zoom(dollyDeltaForDist);\n }\n\n } else { // Orbiting\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.orthoProjection.scale = camera.orthoProjection.scale + dollyDeltaForDist;\n camera.zoom(dollyDeltaForDist);\n }\n }\n\n updates.dollyDelta *= configs.dollyInertia;\n }\n\n pickController.fireEvents();\n\n document.body.style.cursor = cursorType;\n });\n }\n\n\n destroy() {\n this.#view.viewer.onTick.unsub(this.#onTick);\n }\n}\n\n", "\nimport {CameraFlightAnimation, PickResult, View} from \"@xeokit/viewer\";\nimport {createVec2} from \"@xeokit/matrix\";\nimport {PickController} from \"./PickController\";\nimport {PivotController} from \"./PivotController\";\nimport {PanController} from \"./PanController\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {MouseMiscHandler} from \"./MouseMiscHandler\";\nimport {TouchPanRotateAndDollyHandler} from \"./TouchPanRotateAndDollyHandler\";\nimport {MousePanRotateDollyHandler} from \"./MousePanRotateDollyHandler\";\nimport {KeyboardAxisViewHandler} from \"./KeyboardAxisViewHandler\";\nimport {MousePickHandler} from \"./MousePickHandler\";\nimport {TouchPickHandler} from \"./TouchPickHandler\";\nimport {KeyboardPanRotateDollyHandler} from \"./KeyboardPanRotateDollyHandler\";\nimport {CameraUpdater} from \"./CameraUpdater\";\nimport {isString} from \"@xeokit/utils\";\nimport {FirstPersonNavigationMode, OrbitNavigationMode, PlanViewNavigationMode} from \"@xeokit/constants\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {\n KEY_A,\n KEY_ADD,\n KEY_D,\n KEY_DOWN_ARROW,\n KEY_E,\n KEY_LEFT_ARROW,\n KEY_NUM_1,\n KEY_NUM_2,\n KEY_NUM_3,\n KEY_NUM_4,\n KEY_NUM_5,\n KEY_NUM_6,\n KEY_Q,\n KEY_RIGHT_ARROW,\n KEY_S,\n KEY_SUBTRACT,\n KEY_UP_ARROW,\n KEY_W,\n KEY_X,\n KEY_Z\n} from \"./keycodes\";\n\n\n\nconst DEFAULT_SNAP_PICK_RADIUS = 30;\nconst DEFAULT_SNAP_VERTEX = true;\nconst DEFAULT_SNAP_EDGE = true;\n\n/**\n *\n */\nclass HoverEvent {\n}\n\n/**\n *\n */\nexport interface CameraControlParams {\n mouseWheelDollyRate?: number;\n keyboardDollyRate?: number;\n panInertia?: number;\n dollyMinSpeed?: number;\n dollyProximityThreshold?: number;\n dollyInertia?: number;\n touchDollyRate?: number;\n dragRotationRate?: number;\n keyboardRotationRate?: number;\n touchPanRate?: number;\n keyboardPanRate?: number;\n rotationInertia?: number;\n followPointer?: boolean;\n active?: boolean;\n panRightClick?: boolean;\n keyMap?: any;\n keyboardLayout?: any;\n constrainVertical?: boolean;\n planView?: boolean;\n navMode?: number;\n doublePickFlyTo?: boolean;\n keyboardEnabled?: boolean;\n}\n\n/**\n * @desc Controls the {@link Camera} with user input, and fires events when the user interacts with pickable {@link Entity}s.\n *\n * # Contents\n *\n * * [Overview](#overview)\n * * [Examples](#examples)\n * * [Orbit Mode](#orbit-mode)\n * + [Following the Pointer in Orbit Mode](#--following-the-pointer-in-orbit-mode--)\n * + [Showing the Pivot Position](#--showing-the-pivot-position--)\n * + [Axis-Aligned Views in Orbit Mode](#--axis-aligned-views-in-orbit-mode--)\n * + [View-Fitting Entitys in Orbit Mode](#--view-fitting-entitys-in-orbit-mode--)\n * * [First-Person Mode](#first-person-mode)\n * + [Following the Pointer in First-Person Mode](#--following-the-pointer-in-first-person-mode--)\n * + [Constraining Vertical Position in First-Person Mode](#--constraining-vertical-position-in-first-person-mode--)\n * + [Axis-Aligned Views in First-Person Mode](#--axis-aligned-views-in-first-person-mode--)\n * + [View-Fitting Entitys in First-Person Mode](#--view-fitting-entitys-in-first-person-mode--)\n * * [Plan-View Mode](#plan-view-mode)\n * + [Following the Pointer in Plan-View Mode](#--following-the-pointer-in-plan-view-mode--)\n * + [Axis-Aligned Views in Plan-View Mode](#--axis-aligned-views-in-plan-view-mode--)\n * * [CameraControl Events](#cameracontrol-events)\n * + [\"hover\"](#---hover---)\n * + [\"hoverOff\"](#---hoveroff---)\n * + [\"hoverEnter\"](#---hoverenter---)\n * + [\"hoverOut\"](#---hoverout---)\n * + [\"picked\"](#---picked---)\n * + [\"pickedSurface\"](#---pickedsurface---)\n * + [\"pickedNothing\"](#---pickednothing---)\n * + [\"doublePicked\"](#---doublepicked---)\n * + [\"doublePickedSurface\"](#---doublepickedsurface---)\n * + [\"doublePickedNothing\"](#---doublepickednothing---)\n * + [\"rightClick\"](#---rightclick---)\n * * [Custom Keyboard Mappings](#custom-keyboard-mappings)\n *\n *

\n *\n * # Overview\n *\n * * Each {@link Viewer} has a ````CameraControl````, located at {@link Viewer#cameraControl}.\n * * {@link CameraControl#navMode} selects the navigation mode:\n * * ````OrbitNavigationMode```` rotates the {@link Camera} position about the target.\n * * ````\"firstPerson\"```` rotates the World about the Camera position.\n * * ````\"planView\"```` never rotates, but still allows to pan and dolly, typically for an axis-aligned view.\n * * {@link CameraControl#followPointer} makes the Camera follow the mouse or touch pointer.\n * * {@link CameraControl#constrainVertical} locks the Camera to its current height when in first-person mode.\n * * ````CameraControl```` fires pick events when we hover, click or tap on an {@link Entity}.\n *

\n *\n * # Examples\n *\n * * [Orbit Navigation - Duplex Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_orbit_Duplex)\n * * [Orbit Navigation - Holter Tower Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_orbit_HolterTower)\n * * [First-Person Navigation - Duplex Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_firstPerson_Duplex)\n * * [First-Person Navigation - Holter Tower Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_firstPerson_HolterTower)\n * * [Plan-view Navigation - Schependomlaan Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_planView_Schependomlaan)\n * * [Custom Keyboard Mapping](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_keyMap)\n *

\n *\n * # Orbit Mode\n *\n * In orbit mode, ````CameraControl```` orbits the {@link Camera} about the target.\n *\n * To enable orbit mode:\n *\n * ````javascript\n * const cameraControl = myViewer.cameraControl;\n * cameraControl.navMode = OrbitNavigationMode;\n * ````\n *\n * Then orbit by:\n *\n * * left-dragging the mouse,\n * * tap-dragging the touch pad, and\n * * pressing arrow keys, or ````Q```` and ````E```` on a QWERTY keyboard, or ````A```` and ````E```` on an AZERTY keyboard.\n *

\n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys, or ````W```` and ````S```` on a QWERTY keyboard, or ````Z```` and ````S```` for AZERTY.\n *

\n *\n * Pan horizontally and vertically by:\n *\n * * right-dragging the mouse,\n * * left-dragging the mouse with the SHIFT key down,\n * * tap-dragging the touch pad with SHIFT down,\n * * pressing the ````A````, ````D````, ````Z```` and ````X```` keys on a QWERTY keyboard, and\n * * pressing the ````Q````, ````D````, ````W```` and ````X```` keys on an AZERTY keyboard,\n *

\n *\n * ## Following the Pointer in Orbit Mode\n *\n * When {@link CameraControl#followPointer} is ````true````in orbiting mode, the mouse or touch pointer will dynamically\n * indicate the target that the {@link Camera} will orbit, as well as dolly to and from.\n *\n * Lets ensure that we're in orbit mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = OrbitNavigationMode;\n * cameraControl.followPointer = true;\n * ````\n *\n * ## Smart Pivoting\n *\n * TODO\n *\n * ## Showing the Pivot Position\n *\n * We can configure {@link CameraControl#pivotElement} with an HTML element to indicate the current\n * pivot position. The indicator will appear momentarily each time we move the {@link Camera} while in orbit mode with\n * {@link CameraControl#followPointer} set ````true````.\n *\n * First we'll define some CSS to style our pivot indicator as a black dot with a white border:\n *\n * ````css\n * .camera-pivot-marker {\n * color: #ffffff;\n * position: absolute;\n * width: 25px;\n * height: 25px;\n * border-radius: 15px;\n * border: 2px solid #ebebeb;\n * background: black;\n * visibility: hidden;\n * box-shadow: 5px 5px 15px 1px #000000;\n * z-index: 10000;\n * pointer-events: none;\n * }\n * ````\n *\n * Then we'll attach our pivot indicator's HTML element to the ````CameraControl````:\n *\n * ````javascript\n * const pivotElement = document.createRange().createContextualFragment(\"
\").firstChild;\n *\n * document.body.appendChild(pivotElement);\n *\n * cameraControl.pivotElement = pivotElement;\n * ````\n *\n * ## Axis-Aligned Views in Orbit Mode\n *\n * In orbit mode, we can use keys 1-6 to position the {@link Camera} to look at the center of the {@link Scene} from along each of the\n * six World-space axis. Pressing one of these keys will fly the {@link Camera} to the corresponding axis-aligned view.\n *\n * ## View-Fitting Entitys in Orbit Mode\n *\n * When {@link CameraControl#doublePickFlyTo} is ````true````, we can left-double-click or\n * double-tap (ie. \"double-pick\") an {@link Entity} to fit it to view. This will cause the {@link Camera}\n * to fly to that Entity. Our target then becomes the center of that Entity. If we are currently pivoting,\n * then our pivot position is then also set to the Entity center.\n *\n * Disable that behaviour by setting {@link CameraControl#doublePickFlyTo} ````false````.\n *\n * # First-Person Mode\n *\n * In first-person mode, ````CameraControl```` rotates the World about the {@link Camera} position.\n *\n * To enable first-person mode:\n *\n * ````javascript\n * cameraControl.navMode = \"firstPerson\";\n * ````\n *\n * Then rotate by:\n *\n * * left-dragging the mouse,\n * * tap-dragging the touch pad,\n * * pressing arrow keys, or ````Q```` and ````E```` on a QWERTY keyboard, or ````A```` and ````E```` on an AZERTY keyboard.\n *

\n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys, or ````W```` and ````S```` on a QWERTY keyboard, or ````Z```` and ````S```` for AZERTY.\n *

\n *\n * Pan left, right, up and down by:\n *\n * * left-dragging or right-dragging the mouse, and\n * * tap-dragging the touch pad with SHIFT down.\n *\n * Pan forwards, backwards, left, right, up and down by pressing the ````WSADZX```` keys on a QWERTY keyboard,\n * or ````WSQDWX```` keys on an AZERTY keyboard.\n *

\n *\n * ## Following the Pointer in First-Person Mode\n *\n * When {@link CameraControl#followPointer} is ````true```` in first-person mode, the mouse or touch pointer will dynamically\n * indicate the target to which the {@link Camera} will dolly to and from. In first-person mode, however, the World will always rotate\n * about the {@link Camera} position.\n *\n * Lets ensure that we're in first-person mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = \"firstPerson\";\n * cameraControl.followPointer = true;\n * ````\n *\n * When the pointer is over empty space, the target will remain the last object that the pointer was over.\n *\n * ## Constraining Vertical Position in First-Person Mode\n *\n * In first-person mode, we can lock the {@link Camera} to its current position on the vertical World axis, which is useful for walk-through navigation:\n *\n * ````javascript\n * cameraControl.constrainVertical = true;\n * ````\n *\n * ## Axis-Aligned Views in First-Person Mode\n *\n * In first-person mode we can use keys 1-6 to position the {@link Camera} to look at the center of\n * the {@link Scene} from along each of the six World-space axis. Pressing one of these keys will fly the {@link Camera} to the\n * corresponding axis-aligned view.\n *\n * ## View-Fitting Entitys in First-Person Mode\n *\n * As in orbit mode, when in first-person mode and {@link CameraControl#doublePickFlyTo} is ````true````, we can double-click\n * or double-tap an {@link Entity} (ie. \"double-picking\") to fit it in view. This will cause the {@link Camera} to fly to\n * that Entity. Our target then becomes the center of that Entity.\n *\n * Disable that behaviour by setting {@link CameraControl#doublePickFlyTo} ````false````.\n *\n * # Plan-View Mode\n *\n * In plan-view mode, ````CameraControl```` pans and rotates the {@link Camera}, without rotating it.\n *\n * To enable plan-view mode:\n *\n * ````javascript\n * cameraControl.navMode = \"planView\";\n * ````\n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys.\n *\n *
\n * Pan left, right, up and down by:\n *\n * * left-dragging or right-dragging the mouse, and\n * * tap-dragging the touch pad with SHIFT down.\n *\n * Pan forwards, backwards, left, right, up and down by pressing the ````WSADZX```` keys on a QWERTY keyboard,\n * or ````WSQDWX```` keys on an AZERTY keyboard.\n *

\n *\n * ## Following the Pointer in Plan-View Mode\n *\n * When {@link CameraControl#followPointer} is ````true```` in plan-view mode, the mouse or touch pointer will dynamically\n * indicate the target to which the {@link Camera} will dolly to and from. In plan-view mode, however, the {@link Camera} cannot rotate.\n *\n * Lets ensure that we're in plan-view mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = \"planView\";\n * cameraControl.followPointer = true; // Default\n * ````\n *\n * When the pointer is over empty space, the target will remain the last object that the pointer was over.\n *\n * ## Axis-Aligned Views in Plan-View Mode\n *\n * As in orbit and first-person modes, in plan-view mode we can use keys 1-6 to position the {@link Camera} to look at the center of\n * the {@link Scene} from along each of the six World-space axis. Pressing one of these keys will fly the {@link Camera} to the\n * corresponding axis-aligned view.\n *\n * # CameraControl Events\n *\n * ````CameraControl```` fires events as we interact with {@link Entity}s using mouse or touch input.\n *\n * The following examples demonstrate how to subscribe to those events.\n *\n * The first example shows how to save a handle to a subscription, which we can later use to unsubscribe.\n *\n * ## \"hover\"\n *\n * Event fired when the pointer moves while hovering over an Entity.\n *\n * ````javascript\n * const onHover = cameraControl.on(\"hover\", (e) => {\n * const entity = e.entity; // Entity\n * const canvasPos = e.canvasPos; // 2D canvas position\n * });\n * ````\n *\n * To unsubscribe from the event:\n *\n * ````javascript\n * cameraControl.off(onHover);\n * ````\n *\n * ## \"hoverOff\"\n *\n * Event fired when the pointer moves while hovering over empty space.\n *\n * ````javascript\n * cameraControl.on(\"hoverOff\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"hoverEnter\"\n *\n * Event fired when the pointer moves onto an Entity.\n *\n * ````javascript\n * cameraControl.on(\"hoverEnter\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"hoverOut\"\n *\n * Event fired when the pointer moves off an Entity.\n *\n * ````javascript\n * cameraControl.on(\"hoverOut\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"picked\"\n *\n * Event fired when we left-click or tap on an Entity.\n *\n * ````javascript\n * cameraControl.on(\"picked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"pickedSurface\"\n *\n * Event fired when we left-click or tap on the surface of an Entity.\n *\n * ````javascript\n * cameraControl.on(\"picked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * const worldPos = e.worldPos; // 3D World-space position\n * const viewPos = e.viewPos; // 3D View-space position\n * const worldNormal = e.worldNormal; // 3D World-space normal vector\n * });\n * ````\n *\n * ## \"pickedNothing\"\n *\n * Event fired when we left-click or tap on empty space.\n *\n * ````javascript\n * cameraControl.on(\"pickedNothing\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"doublePicked\"\n *\n * Event fired wwhen we left-double-click or double-tap on an Entity.\n *\n * ````javascript\n * cameraControl.on(\"doublePicked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"doublePickedSurface\"\n *\n * Event fired when we left-double-click or double-tap on the surface of an Entity.\n *\n * ````javascript\n * cameraControl.on(\"doublePickedSurface\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * const worldPos = e.worldPos;\n * const viewPos = e.viewPos;\n * const worldNormal = e.worldNormal;\n * });\n * ````\n *\n * ## \"doublePickedNothing\"\n *\n * Event fired when we left-double-click or double-tap on empty space.\n *\n * ````javascript\n * cameraControl.on(\"doublePickedNothing\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"rightClick\"\n *\n * Event fired when we right-click on the canvas.\n *\n * ````javascript\n * cameraControl.on(\"rightClick\", (e) => {\n * const event = e.event; // Mouse event\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## Custom Keyboard Mappings\n *\n * We can customize````CameraControl```` key bindings as shown below.\n *\n * In this example, we'll just set the default bindings for a QWERTY keyboard.\n *\n * ````javascript\n * const input = myViewer.view.input;\n *\n * cameraControl.navMode = OrbitNavigationMode;\n * cameraControl.followPointer = true;\n *\n * const keyMap = {};\n *\n * keyMap[cameraControl.PAN_LEFT] = [KEY_A];\n * keyMap[cameraControl.PAN_RIGHT] = [KEY_D];\n * keyMap[cameraControl.PAN_UP] = [KEY_Z];\n * keyMap[cameraControl.PAN_DOWN] = [KEY_X];\n * keyMap[cameraControl.DOLLY_FORWARDS] = [KEY_W, KEY_ADD];\n * keyMap[cameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n * keyMap[cameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n * keyMap[cameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n * keyMap[cameraControl.ROTATE_Y_POS] = [KEY_LEFT_ARROW];\n * keyMap[cameraControl.ROTATE_Y_NEG] = [KEY_RIGHT_ARROW];\n * keyMap[cameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n * keyMap[cameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n * keyMap[cameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n * keyMap[cameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n * keyMap[cameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n * keyMap[cameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n *\n * cameraControl.keyMap = keyMap;\n * ````\n *\n * We can also just configure default bindings for a specified keyboard layout, like this:\n *\n * ````javascript\n * cameraControl.keyMap = \"qwerty\";\n * ````\n *\n * Then, ````CameraControl```` will internally set {@link CameraControl#keyMap} to the default key map for the QWERTY\n * layout (which is the same set of mappings we set in the previous example). In other words, if we subsequently\n * read {@link CameraControl#keyMap}, it will now be a key map, instead of the \"qwerty\" string value we set it to.\n *\n * Supported layouts are, so far:\n *\n * * ````\"qwerty\"````\n * * ````\"azerty\"````\n */\nexport class CameraControl extends Component {\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_LEFT = 0;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_RIGHT = 1;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_UP = 2;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_DOWN = 3;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_FORWARDS = 4;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_BACKWARDS = 5;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_X_POS = 6;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_X_NEG = 7;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_Y_POS = 8;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_Y_NEG = 9;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static DOLLY_FORWARDS = 10;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static DOLLY_BACKWARDS = 11;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_RIGHT = 12;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_BACK = 13;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_LEFT = 14;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_FRONT = 15;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_TOP = 16;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_BOTTOM = 17;\n\n view: View;\n\n\n /**\n * Event fired when we right-click.\n *\n * @event\n */\n readonly onRightClick: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHover: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverSurface: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over empty space.\n *\n * @event\n */\n readonly onHoverOff: EventEmitter;\n\n /**\n * Event fired when the pointer moves onto a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverEnter: EventEmitter;\n\n /**\n * Event fired when the pointer moves off a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverOut: EventEmitter;\n\n /**\n * Event fired when a {@link @xeokit/viewer!ViewObject} is picked.\n *\n * @event\n */\n readonly onPicked: EventEmitter;\n\n /**\n * Event fired when empty space is picked.\n *\n * @event\n */\n readonly onPickedSurface: EventEmitter;\n\n /**\n * Event fired when empty space is picked.\n *\n * @event\n */\n readonly onPickedNothing: EventEmitter;\n\n /**\n * Event fired when a ViewObject is double-picked.\n *\n * @event\n */\n readonly onDoublePicked: EventEmitter;\n\n /**\n * Event fired when a surface is double-picked.\n *\n * @event\n */\n readonly onDoublePickedSurface: EventEmitter;\n\n /**\n * Event fired when empty space is double-picked.\n *\n * @event\n */\n readonly onDoublePickedNothing: EventEmitter;\n\n /**\n * Event fired when snapping off a surface, vertex, or edge.\n *\n * @event\n */\n readonly onHoverSnapOrSurfaceOff: EventEmitter;\n\n /**\n * Event fired when snapping onto a surface, vertex, or edge.\n *\n * @event\n */\n readonly onHoverSnapOrSurface: EventEmitter;\n\n /**\n * Event fired when ray moves.\n *\n * @event\n */\n readonly onRayMove: EventEmitter;\n\n #configs: {\n rotationInertia: number;\n mouseWheelDollyRate: number;\n snapToEdge: boolean;\n keyboardPanRate: number;\n touchPanRate: number;\n pointerEnabled: boolean;\n dollyProximityThreshold: number;\n keyboardRotationRate: number;\n planView: boolean;\n doubleClickTimeFrame: number;\n keyboardLayout: string;\n constrainVertical: boolean;\n snapRadius: number;\n touchDollyRate: number;\n dragRotationRate: number;\n firstPerson: boolean;\n active: boolean;\n longTapRadius: number;\n dollyMinSpeed: number;\n panInertia: number;\n followPointer: boolean;\n showPivot: boolean;\n keyboardEnabledOnlyIfMouseover: boolean;\n navMode: number;\n longTapTimeout: number;\n snapToVertex: boolean;\n keyboardDollyRate: number;\n dollyInertia: number;\n panRightClick: boolean;\n smartPivot: boolean;\n doublePickFlyTo: boolean;\n };\n\n #states: {\n mouseDownCursorX: number;\n tapStartTime: number;\n lastTapTime: number;\n mouseover: boolean;\n mouseDownCursorY: number;\n pointerCanvasPos: any;\n activeTouches: any[];\n tapStartPos: any;\n longTouchTimeout: null;\n followPointerDirty: boolean;\n mouseDownClientX: number;\n mouseDownClientY: number;\n touchStartTime: null;\n };\n\n #updates: {\n panDeltaZ: number;\n panDeltaY: number;\n panDeltaX: number;\n rotateDeltaX: number;\n dollyDelta: number;\n rotateDeltaY: number;\n };\n\n #controllers: {\n pickController: any;\n cameraControl: any;\n pivotController: any;\n cameraFlight: any;\n panController: any;\n };\n\n #handlers: any[];\n #cameraUpdater: any;\n\n #keyMap: any;\n\n\n\n /**\n * @private\n * @constructor\n */\n constructor(view: View, cfg:CameraControlParams = {}) {\n\n super(view, cfg);\n\n this.#keyMap = {}; // Maps key codes to the above actions\n\n this.view = view;\n\n this.view.htmlElement.oncontextmenu = (e) => {\n e.preventDefault();\n };\n\n // User-settable CameraControl configurations\n\n this.#configs = {\n\n // Private\n\n longTapTimeout: 600, // Millisecs\n longTapRadius: 5, // Pixels\n\n // General\n\n active: true,\n keyboardLayout: \"qwerty\",\n navMode: OrbitNavigationMode,\n planView: false,\n firstPerson: false,\n followPointer: true,\n doublePickFlyTo: true,\n panRightClick: true,\n showPivot: false,\n pointerEnabled: true,\n constrainVertical: false,\n smartPivot: false,\n doubleClickTimeFrame: 250,\n\n snapToVertex: DEFAULT_SNAP_VERTEX,\n snapToEdge: DEFAULT_SNAP_EDGE,\n snapRadius: DEFAULT_SNAP_PICK_RADIUS,\n\n keyboardEnabledOnlyIfMouseover: true,\n\n // Rotation\n\n dragRotationRate: 360.0,\n keyboardRotationRate: 90.0,\n rotationInertia: 0.0,\n\n // Panning\n\n keyboardPanRate: 1.0,\n touchPanRate: 1.0,\n panInertia: 0.5,\n\n // Dollying\n\n keyboardDollyRate: 10,\n mouseWheelDollyRate: 100,\n touchDollyRate: 0.2,\n dollyInertia: 0,\n dollyProximityThreshold: 30.0,\n dollyMinSpeed: 0.04\n };\n\n // Current runtime state of the CameraControl\n\n this.#states = {\n pointerCanvasPos: createVec2(),\n mouseover: false,\n followPointerDirty: true,\n mouseDownClientX: 0,\n mouseDownClientY: 0,\n mouseDownCursorX: 0,\n mouseDownCursorY: 0,\n touchStartTime: null,\n activeTouches: [],\n tapStartPos: createVec2(),\n tapStartTime: -1,\n lastTapTime: -1,\n longTouchTimeout: null\n };\n\n // Updates for CameraUpdater to process on next Scene \"tick\" event\n\n this.#updates = {\n rotateDeltaX: 0,\n rotateDeltaY: 0,\n panDeltaX: 0,\n panDeltaY: 0,\n panDeltaZ: 0,\n dollyDelta: 0\n };\n\n // Controllers to assist input event handlers with controlling the Camera\n\n this.#controllers = {\n cameraControl: this,\n pickController: new PickController(this, this.#configs),\n pivotController: new PivotController(view, this.#configs),\n panController: new PanController(view),\n cameraFlight: new CameraFlightAnimation(this.view, {\n duration: 0.5\n })\n };\n\n // Input event handlers\n\n this.#handlers = [\n new MouseMiscHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new TouchPanRotateAndDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new MousePanRotateDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new KeyboardAxisViewHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new MousePickHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new TouchPickHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new KeyboardPanRotateDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates)\n ];\n\n // Applies scheduled updates to the Camera on each Scene \"tick\" event\n\n this.#cameraUpdater = new CameraUpdater(this.view, this.#controllers, this.#configs, this.#states, this.#updates);\n\n this.onHover = new EventEmitter(new EventDispatcher());\n this.onHoverOff = new EventEmitter(new EventDispatcher());\n this.onHoverEnter = new EventEmitter(new EventDispatcher());\n this.onHoverOut = new EventEmitter(new EventDispatcher());\n\n this.onRightClick = new EventEmitter(new EventDispatcher());\n this.onHoverSurface = new EventEmitter(new EventDispatcher());\n this.onPicked = new EventEmitter(new EventDispatcher());\n this.onPickedSurface = new EventEmitter(new EventDispatcher());\n this.onPickedNothing = new EventEmitter(new EventDispatcher());\n this.onDoublePicked = new EventEmitter(new EventDispatcher());\n this.onDoublePickedSurface = new EventEmitter(new EventDispatcher());\n this.onDoublePickedNothing = new EventEmitter(new EventDispatcher());\n this.onHoverSnapOrSurfaceOff = new EventEmitter(new EventDispatcher());\n this.onHoverSnapOrSurface = new EventEmitter(new EventDispatcher());\n this.onRayMove = new EventEmitter(new EventDispatcher());\n\n // Set initial user configurations\n\n this.navMode = cfg.navMode;\n if (cfg.planView) {\n this.planView = cfg.planView;\n }\n this.constrainVertical = cfg.constrainVertical;\n if (cfg.keyboardLayout) {\n this.keyboardLayout = cfg.keyboardLayout; // Deprecated\n } else {\n this.keyMap = cfg.keyMap;\n }\n this.doublePickFlyTo = cfg.doublePickFlyTo;\n this.panRightClick = cfg.panRightClick;\n this.active = cfg.active;\n this.followPointer = cfg.followPointer;\n this.rotationInertia = cfg.rotationInertia;\n this.keyboardPanRate = cfg.keyboardPanRate;\n this.touchPanRate = cfg.touchPanRate;\n this.keyboardRotationRate = cfg.keyboardRotationRate;\n this.dragRotationRate = cfg.dragRotationRate;\n this.touchDollyRate = cfg.touchDollyRate;\n this.dollyInertia = cfg.dollyInertia;\n this.dollyProximityThreshold = cfg.dollyProximityThreshold;\n this.dollyMinSpeed = cfg.dollyMinSpeed;\n this.panInertia = cfg.panInertia;\n this.pointerEnabled = true;\n this.keyboardDollyRate = cfg.keyboardDollyRate;\n this.mouseWheelDollyRate = cfg.mouseWheelDollyRate;\n }\n\n /**\n * Sets custom mappings of keys to ````CameraControl```` actions.\n *\n * See class docs for usage.\n *\n * @param {{Number:Number}|String} value Either a set of new key mappings, or a string to select a keyboard layout,\n * which causes ````CameraControl```` to use the default key mappings for that layout.\n */\n set keyMap(value: string) {\n value = value || \"qwerty\";\n if (isString(value)) {\n const keyMap = {};\n\n switch (value) {\n\n default:\n this.error(\"Unsupported value for 'keyMap': \" + value + \" defaulting to 'qwerty'\");\n // Intentional fall-through to \"qwerty\"\n case \"qwerty\":\n keyMap[CameraControl.PAN_LEFT] = [KEY_A];\n keyMap[CameraControl.PAN_RIGHT] = [KEY_D];\n keyMap[CameraControl.PAN_UP] = [KEY_Z];\n keyMap[CameraControl.PAN_DOWN] = [KEY_X];\n keyMap[CameraControl.PAN_BACKWARDS] = [];\n keyMap[CameraControl.PAN_FORWARDS] = [];\n keyMap[CameraControl.DOLLY_FORWARDS] = [KEY_W, KEY_ADD];\n keyMap[CameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n keyMap[CameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n keyMap[CameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n keyMap[CameraControl.ROTATE_Y_POS] = [KEY_Q, KEY_LEFT_ARROW];\n keyMap[CameraControl.ROTATE_Y_NEG] = [KEY_E, KEY_RIGHT_ARROW];\n keyMap[CameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n keyMap[CameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n keyMap[CameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n keyMap[CameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n keyMap[CameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n keyMap[CameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n break;\n\n case \"azerty\":\n keyMap[CameraControl.PAN_LEFT] = [KEY_Q];\n keyMap[CameraControl.PAN_RIGHT] = [KEY_D];\n keyMap[CameraControl.PAN_UP] = [KEY_W];\n keyMap[CameraControl.PAN_DOWN] = [KEY_X];\n keyMap[CameraControl.PAN_BACKWARDS] = [];\n keyMap[CameraControl.PAN_FORWARDS] = [];\n keyMap[CameraControl.DOLLY_FORWARDS] = [KEY_Z, KEY_ADD];\n keyMap[CameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n keyMap[CameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n keyMap[CameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n keyMap[CameraControl.ROTATE_Y_POS] = [KEY_A, KEY_LEFT_ARROW];\n keyMap[CameraControl.ROTATE_Y_NEG] = [KEY_E, KEY_RIGHT_ARROW];\n keyMap[CameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n keyMap[CameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n keyMap[CameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n keyMap[CameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n keyMap[CameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n keyMap[CameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n break;\n }\n\n this.#keyMap = keyMap;\n } else {\n const keyMap = value;\n this.#keyMap = keyMap;\n }\n }\n\n /**\n * Gets custom mappings of keys to {@link CameraControl} actions.\n *\n * @returns {{Number:Number}} Current key mappings.\n */\n get keyMap() {\n return this.#keyMap ;\n }\n\n /**\n * Returns true if any keys configured for the given action are down.\n * @param action\n * @param keyDownMap\n * @private\n */\n _isKeyDownForAction(action: number, keyDownMap: any) {\n // const keys = this.#keyMap [action];\n // if (!keys) {\n // return false;\n // }\n // if (!keyDownMap) {\n // keyDownMap = this.view.KEYDown;\n // }\n // for (let i = 0, len = keys.length; i < len; i++) {\n // const key = keys[i];\n // if (keyDownMap[key]) {\n // return true;\n // }\n // }\n return false;\n }\n\n /**\n * Sets the HTMl element to represent the pivot point when {@link CameraControl#followPointer} is true.\n *\n * See class comments for an example.\n *\n * @param {HTMLElement} element HTML element representing the pivot point.\n */\n set pivotElement(element: HTMLElement) {\n this.#controllers.pivotController.setPivotElement(element);\n }\n\n /**\n * Sets if this ````CameraControl```` is active or not.\n *\n * When inactive, the ````CameraControl```` will not react to input.\n *\n * Default is ````true````.\n *\n * @param {Boolean} value Set ````true```` to activate this ````CameraControl````.\n */\n set active(value: boolean) {\n value = value !== false;\n this.#configs.active = value;\n this.#handlers[1]._active = value;\n this.#handlers[5]._active = value;\n }\n\n /**\n * Gets if this ````CameraControl```` is active or not.\n *\n * When inactive, the ````CameraControl```` will not react to input.\n *\n * Default is ````true````.\n *\n * @returns {Boolean} Returns ````true```` if this ````CameraControl```` is active.\n */\n get active() : boolean{\n return this.#configs.active;\n }\n\n /**\n * Sets whether the pointer snap to vertex.\n *\n * @param {boolean} snapToVertex\n */\n set snapToVertex(snapToVertex: boolean) {\n this.#configs.snapToVertex = !!snapToVertex;\n }\n\n /**\n * Gets whether the pointer snap to vertex.\n *\n * @returns {boolean}\n */\n get snapToVertex() : boolean{\n return this.#configs.snapToVertex;\n }\n\n /**\n * Sets whether the pointer snap to edge.\n *\n * @param {boolean} snapToEdge\n */\n set snapToEdge(snapToEdge: boolean) {\n this.#configs.snapToEdge = !!snapToEdge;\n }\n\n /**\n * Gets whether the pointer snap to edge.\n *\n * @returns {boolean}\n */\n get snapToEdge(): boolean {\n return this.#configs.snapToEdge;\n }\n\n /**\n * Sets the current snap radius for \"hoverSnapOrSurface\" events, to specify whether the radius\n * within which the pointer snaps to the nearest vertex or the nearest edge.\n *\n * Default value is 30 pixels.\n *\n * @param {Number} snapRadius The snap radius.\n */\n set snapRadius(snapRadius: number) {\n snapRadius = snapRadius || DEFAULT_SNAP_PICK_RADIUS;\n this.#configs.snapRadius = snapRadius;\n }\n\n /**\n * Gets the current snap radius.\n *\n * @returns {Number} The snap radius.\n */\n get snapRadius() : number{\n return this.#configs.snapRadius;\n }\n\n /**\n * If `true`, the keyboard shortcuts are enabled ONLY if the mouse is over the canvas.\n *\n * @param {boolean} value\n */\n set keyboardEnabledOnlyIfMouseover(value: boolean) {\n this.#configs.keyboardEnabledOnlyIfMouseover = !!value;\n }\n\n /**\n * Gets whether the keyboard shortcuts are enabled ONLY if the mouse is over the canvas or ALWAYS.\n *\n * @returns {boolean}\n */\n get keyboardEnabledOnlyIfMouseover() : boolean{\n return this.#configs.keyboardEnabledOnlyIfMouseover;\n }\n\n /**\n * Gets the current navigation mode.\n *\n * Returned values are:\n *\n * * {@link @xeokit/constants!OrbitNavigationMode} - rotation orbits about the current target or pivot point,\n * * {@link @xeokit/constants!FirstPersonNavigationMode} - rotation is about the current eye position,\n * * {@link @xeokit/constants!PlanViewNavigationMode} - rotation is disabled.\n *\n * @returns {number} The navigation mode: OrbitNavigationMode, FirstPersonNavigationMode or PlanViewNavigationMode.\n */\n get navMode(): number {\n return this.#configs.navMode;\n }\n\n /**\n * Sets the current navigation mode.\n *\n * Accepted values are:\n *\n * * {@link @xeokit/constants!OrbitNavigationMode} - rotation orbits about the current target or pivot point,\n * * {@link @xeokit/constants!FirstPersonNavigationMode} - rotation is about the current eye position,\n * * {@link @xeokit/constants!PlanViewNavigationMode} - rotation is disabled.\n *\n * See class comments for more info.\n *\n * @param navMode The navigation mode: OrbitNavigationMode, FirstPersonNavigationMode or PlanViewNavigationMode.\n */\n set navMode(navMode: number | undefined) {\n navMode = navMode || OrbitNavigationMode;\n if (navMode !== FirstPersonNavigationMode && navMode !== OrbitNavigationMode && navMode !== PlanViewNavigationMode) {\n this.error(\"Unsupported value for navMode: \" + navMode + \" - supported values are 'orbit', 'firstPerson' and 'planView' - defaulting to 'orbit'\");\n navMode = OrbitNavigationMode;\n }\n this.#configs.firstPerson = (navMode === FirstPersonNavigationMode);\n this.#configs.planView = (navMode === PlanViewNavigationMode);\n if (this.#configs.firstPerson || this.#configs.planView) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n this.#configs.navMode = navMode;\n }\n\n /**\n * Sets whether mouse and touch input is enabled.\n *\n * Default is ````true````.\n *\n * Disabling mouse and touch input on ````CameraControl```` is useful when we want to temporarily use mouse or\n * touch input to interact with some other 3D control, without disturbing the {@link Camera}.\n *\n * @param {Boolean} value Set ````true```` to enable mouse and touch input.\n */\n set pointerEnabled(value) {\n this._reset();\n this.#configs.pointerEnabled = !!value;\n }\n\n _reset() {\n for (let i = 0, len = this.#handlers.length; i < len; i++) {\n const handler = this.#handlers[i];\n if (handler.reset) {\n handler.reset();\n }\n }\n\n this.#updates.panDeltaX = 0;\n this.#updates.panDeltaY = 0;\n this.#updates.rotateDeltaX = 0;\n this.#updates.rotateDeltaY = 0;\n this.#updates.dollyDelta = 0;\n }\n\n /**\n * Gets whether mouse and touch input is enabled.\n *\n * Default is ````true````.\n *\n * Disabling mouse and touch input on ````CameraControl```` is desirable when we want to temporarily use mouse or\n * touch input to interact with some other 3D control, without interfering with the {@link Camera}.\n *\n * @returns {Boolean} Returns ````true```` if mouse and touch input is enabled.\n */\n get pointerEnabled() {\n return this.#configs.pointerEnabled;\n }\n\n /**\n * Sets whether the {@link Camera} follows the mouse/touch pointer.\n *\n * In orbiting mode, the Camera will orbit about the pointer, and will dolly to and from the pointer.\n *\n * In fly-to mode, the Camera will dolly to and from the pointer, however the World will always rotate about the Camera position.\n *\n * In plan-view mode, the Camera will dolly to and from the pointer, however the Camera will not rotate.\n *\n * Default is ````true````.\n *\n * See class comments for more info.\n *\n * @param {Boolean} value Set ````true```` to enable the Camera to follow the pointer.\n */\n set followPointer(value) {\n this.#configs.followPointer = (value !== false);\n }\n\n /**\n * Sets whether the {@link Camera} follows the mouse/touch pointer.\n *\n * In orbiting mode, the Camera will orbit about the pointer, and will dolly to and from the pointer.\n *\n * In fly-to mode, the Camera will dolly to and from the pointer, however the World will always rotate about the Camera position.\n *\n * In plan-view mode, the Camera will dolly to and from the pointer, however the Camera will not rotate.\n *\n * Default is ````true````.\n *\n * See class comments for more info.\n *\n * @returns {Boolean} Returns ````true```` if the Camera follows the pointer.\n */\n get followPointer() {\n return this.#configs.followPointer;\n }\n\n /**\n * Sets the current World-space 3D target position.\n *\n * Only applies when {@link CameraControl#followPointer} is ````true````.\n *\n * @param {Number[]} worldPos The new World-space 3D target position.\n */\n set pivotPos(worldPos) {\n this.#controllers.pivotController.setPivotPos(worldPos);\n }\n\n /**\n * Gets the current World-space 3D pivot position.\n *\n * Only applies when {@link CameraControl#followPointer} is ````true````.\n *\n * @return {Number[]} worldPos The current World-space 3D pivot position.\n */\n get pivotPos() {\n return this.#controllers.pivotController.getPivotPos();\n }\n\n /**\n * @deprecated\n * @param {Boolean} value Set ````true```` to enable dolly-to-pointer behaviour.\n */\n set dollyToPointer(value) {\n this.warn(\"dollyToPointer property is deprecated - replaced with followPointer\");\n this.followPointer = value;\n }\n\n /**\n * @deprecated\n * @returns {Boolean} Returns ````true```` if dolly-to-pointer behaviour is enabled.\n */\n get dollyToPointer() {\n this.warn(\"dollyToPointer property is deprecated - replaced with followPointer\");\n return this.followPointer;\n }\n\n /**\n * @deprecated\n * @param {Boolean} value Set ````true```` to enable dolly-to-pointer behaviour.\n */\n set panToPointer(value) {\n this.warn(\"panToPointer property is deprecated - replaced with followPointer\");\n }\n\n /**\n * @deprecated\n * @returns {Boolean} Returns ````true```` if dolly-to-pointer behaviour is enabled.\n */\n get panToPointer() {\n this.warn(\"panToPointer property is deprecated - replaced with followPointer\");\n return false;\n }\n\n /**\n * Sets whether this ````CameraControl```` is in plan-view mode.\n *\n * When in plan-view mode, rotation is disabled.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @param {Boolean} value Set ````true```` to enable plan-view mode.\n * @deprecated\n */\n set planView(value) {\n this.#configs.planView = !!value;\n this.#configs.firstPerson = false;\n if (this.#configs.planView) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n this.warn(\"planView property is deprecated - replaced with navMode\");\n }\n\n /**\n * Gets whether this ````CameraControl```` is in plan-view mode.\n *\n * When in plan-view mode, rotation is disabled.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @returns {Boolean} Returns ````true```` if plan-view mode is enabled.\n * @deprecated\n */\n get planView() {\n this.warn(\"planView property is deprecated - replaced with navMode\");\n return this.#configs.planView;\n }\n\n /**\n * Sets whether this ````CameraControl```` is in first-person mode.\n *\n * In \"first person\" mode (disabled by default) the look position rotates about the eye position. Otherwise, {@link Camera#eye} rotates about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @param {Boolean} value Set ````true```` to enable first-person mode.\n * @deprecated\n */\n set firstPerson(value) {\n this.warn(\"firstPerson property is deprecated - replaced with navMode\");\n this.#configs.firstPerson = !!value;\n this.#configs.planView = false;\n if (this.#configs.firstPerson) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n }\n\n /**\n * Gets whether this ````CameraControl```` is in first-person mode.\n *\n * In \"first person\" mode (disabled by default) the look position rotates about the eye position. Otherwise, {@link Camera#eye} rotates about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @returns {Boolean} Returns ````true```` if first-person mode is enabled.\n * @deprecated\n */\n get firstPerson() {\n this.warn(\"firstPerson property is deprecated - replaced with navMode\");\n return this.#configs.firstPerson;\n }\n\n /**\n * Sets whether to vertically constrain the {@link Camera} position for first-person navigation.\n *\n * When set ````true````, this constrains {@link Camera#eye} to its current vertical position.\n *\n * Only applies when {@link CameraControl#navMode} is ````\"firstPerson\"````.\n *\n * Default is ````false````.\n *\n * @param {Boolean} value Set ````true```` to vertically constrain the Camera.\n */\n set constrainVertical(value) {\n this.#configs.constrainVertical = !!value;\n }\n\n /**\n * Gets whether to vertically constrain the {@link Camera} position for first-person navigation.\n *\n * When set ````true````, this constrains {@link Camera#eye} to its current vertical position.\n *\n * Only applies when {@link CameraControl#navMode} is ````\"firstPerson\"````.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} ````true```` when Camera is vertically constrained.\n */\n get constrainVertical() {\n return this.#configs.constrainVertical;\n }\n\n /**\n * Sets whether double-picking an {@link Entity} causes the {@link Camera} to fly to its boundary.\n *\n * Default is ````false````.\n *\n * @param {Boolean} value Set ````true```` to enable double-pick-fly-to mode.\n */\n set doublePickFlyTo(value) {\n this.#configs.doublePickFlyTo = value !== false;\n }\n\n /**\n * Gets whether double-picking an {@link Entity} causes the {@link Camera} to fly to its boundary.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} Returns ````true```` when double-pick-fly-to mode is enabled.\n */\n get doublePickFlyTo() {\n return this.#configs.doublePickFlyTo;\n }\n\n /**\n * Sets whether either right-clicking (true) or middle-clicking (false) pans the {@link Camera}.\n *\n * Default is ````true````.\n *\n * @param {Boolean} value Set ````false```` to disable pan on right-click.\n */\n set panRightClick(value) {\n this.#configs.panRightClick = value !== false;\n }\n\n /**\n * Gets whether right-clicking pans the {@link Camera}.\n *\n * Default is ````true````.\n *\n * @returns {Boolean} Returns ````false```` when pan on right-click is disabled.\n */\n get panRightClick() {\n return this.#configs.panRightClick;\n }\n\n /**\n * Sets a factor in range ````[0..1]```` indicating how much the {@link Camera} keeps moving after you finish rotating it.\n *\n * A value of ````0.0```` causes it to immediately stop, ````0.5```` causes its movement to decay 50% on each tick,\n * while ````1.0```` causes no decay, allowing it continue moving, by the current rate of rotation.\n *\n * You may choose an inertia of zero when you want be able to precisely rotate the Camera,\n * without interference from inertia. Zero inertia can also mean that less frames are rendered while\n * you are rotating the Camera.\n *\n * Default is ````0.0````.\n *\n * Does not apply when {@link CameraControl#navMode} is ````\"planView\"````, which disallows rotation.\n *\n * @param {Number} rotationInertia New inertial factor.\n */\n set rotationInertia(rotationInertia) {\n this.#configs.rotationInertia = (rotationInertia !== undefined && rotationInertia !== null) ? rotationInertia : 0.0;\n }\n\n /**\n * Gets the rotation inertia factor.\n *\n * Default is ````0.0````.\n *\n * Does not apply when {@link CameraControl#navMode} is ````\"planView\"````, which disallows rotation.\n *\n * @returns {Number} The inertia factor.\n */\n get rotationInertia() {\n return this.#configs.rotationInertia;\n }\n\n /**\n * Sets how much the {@link Camera} pans each second with keyboard input.\n *\n * Default is ````5.0````, to pan the Camera ````5.0```` World-space units every second that\n * a panning key is depressed. See the ````CameraControl```` class documentation for which keys control\n * panning.\n *\n * Panning direction is aligned to our Camera's orientation. When we pan horizontally, we pan\n * to our left and right, when we pan vertically, we pan upwards and downwards, and when we pan forwards\n * and backwards, we pan along the direction the Camera is pointing.\n *\n * Unlike dollying when {@link followPointer} is ````true````, panning does not follow the pointer.\n *\n * @param {Number} keyboardPanRate The new keyboard pan rate.\n */\n set keyboardPanRate(keyboardPanRate) {\n this.#configs.keyboardPanRate = (keyboardPanRate !== null && keyboardPanRate !== undefined) ? keyboardPanRate : 5.0;\n }\n\n\n /**\n * Sets how fast the camera pans on touch panning\n *\n * @param {Number} touchPanRate The new touch pan rate.\n */\n set touchPanRate(touchPanRate) {\n this.#configs.touchPanRate = (touchPanRate !== null && touchPanRate !== undefined) ? touchPanRate : 1.0;\n }\n\n /**\n * Gets how fast the {@link Camera} pans on touch panning\n *\n * Default is ````1.0````.\n *\n * @returns {Number} The current touch pan rate.\n */\n get touchPanRate() {\n return this.#configs.touchPanRate;\n }\n\n /**\n * Gets how much the {@link Camera} pans each second with keyboard input.\n *\n * Default is ````5.0````.\n *\n * @returns {Number} The current keyboard pan rate.\n */\n get keyboardPanRate() {\n return this.#configs.keyboardPanRate;\n }\n\n /**\n * Sets how many degrees per second the {@link Camera} rotates/orbits with keyboard input.\n *\n * Default is ````90.0````, to rotate/orbit the Camera ````90.0```` degrees every second that\n * a rotation key is depressed. See the ````CameraControl```` class documentation for which keys control\n * rotation/orbit.\n *\n * @param {Number} keyboardRotationRate The new keyboard rotation rate.\n */\n set keyboardRotationRate(keyboardRotationRate) {\n this.#configs.keyboardRotationRate = (keyboardRotationRate !== null && keyboardRotationRate !== undefined) ? keyboardRotationRate : 90.0;\n }\n\n /**\n * Sets how many degrees per second the {@link Camera} rotates/orbits with keyboard input.\n *\n * Default is ````90.0````.\n *\n * @returns {Number} The current keyboard rotation rate.\n */\n get keyboardRotationRate() {\n return this.#configs.keyboardRotationRate;\n }\n\n /**\n * Sets the current drag rotation rate.\n *\n * This configures how many degrees the {@link Camera} rotates/orbits for a full sweep of the canvas by mouse or touch dragging.\n *\n * For example, a value of ````360.0```` indicates that the ````Camera```` rotates/orbits ````360.0```` degrees horizontally\n * when we sweep the entire width of the canvas.\n *\n * ````CameraControl```` makes vertical rotation half as sensitive as horizontal rotation, so that we don't tend to\n * flip upside-down. Therefore, a value of ````360.0```` rotates/orbits the ````Camera```` through ````180.0```` degrees\n * vertically when we sweep the entire height of the canvas.\n *\n * Default is ````360.0````.\n *\n * @param {Number} dragRotationRate The new drag rotation rate.\n */\n set dragRotationRate(dragRotationRate) {\n this.#configs.dragRotationRate = (dragRotationRate !== null && dragRotationRate !== undefined) ? dragRotationRate : 360.0;\n }\n\n /**\n * Gets the current drag rotation rate.\n *\n * Default is ````360.0````.\n *\n * @returns {Number} The current drag rotation rate.\n */\n get dragRotationRate() {\n return this.#configs.dragRotationRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys each second with keyboard input.\n *\n * Default is ````15.0````, to dolly the {@link Camera} ````15.0```` World-space units per second while we hold down\n * the ````+```` and ````-```` keys.\n *\n * @param {Number} keyboardDollyRate The new keyboard dolly rate.\n */\n set keyboardDollyRate(keyboardDollyRate) {\n this.#configs.keyboardDollyRate = (keyboardDollyRate !== null && keyboardDollyRate !== undefined) ? keyboardDollyRate : 15.0;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second with keyboard input.\n *\n * Default is ````15.0````.\n *\n * @returns {Number} The current keyboard dolly rate.\n */\n get keyboardDollyRate() {\n return this.#configs.keyboardDollyRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys with touch input.\n *\n * Default is ````0.2````\n *\n * @param {Number} touchDollyRate The new touch dolly rate.\n */\n set touchDollyRate(touchDollyRate) {\n this.#configs.touchDollyRate = (touchDollyRate !== null && touchDollyRate !== undefined) ? touchDollyRate : 0.2;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second with touch input.\n *\n * Default is ````0.2````.\n *\n * @returns {Number} The current touch dolly rate.\n */\n get touchDollyRate() {\n return this.#configs.touchDollyRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys each second while the mouse wheel is spinning.\n *\n * Default is ````100.0````, to dolly the {@link Camera} ````10.0```` World-space units per second as we spin\n * the mouse wheel.\n *\n * @param {Number} mouseWheelDollyRate The new mouse wheel dolly rate.\n */\n set mouseWheelDollyRate(mouseWheelDollyRate) {\n this.#configs.mouseWheelDollyRate = (mouseWheelDollyRate !== null && mouseWheelDollyRate !== undefined) ? mouseWheelDollyRate : 100.0;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second while the mouse wheel is spinning.\n *\n * Default is ````100.0````.\n *\n * @returns {Number} The current mouseWheel dolly rate.\n */\n get mouseWheelDollyRate() {\n return this.#configs.mouseWheelDollyRate;\n }\n\n /**\n * Sets the dolly inertia factor.\n *\n * This factor configures how much the {@link Camera} keeps moving after you finish dollying it.\n *\n * This factor is a value in range ````[0..1]````. A value of ````0.0```` causes dollying to immediately stop,\n * ````0.5```` causes dollying to decay 50% on each animation frame, while ````1.0```` causes no decay, which allows dollying\n * to continue until further input stops it.\n *\n * You might set ````dollyInertia```` to zero when you want be able to precisely position or rotate the Camera,\n * without interference from inertia. This also means that xeokit renders less frames while dollying the Camera,\n * which can improve rendering performance.\n *\n * Default is ````0````.\n *\n * @param {Number} dollyInertia New dolly inertia factor.\n */\n set dollyInertia(dollyInertia) {\n this.#configs.dollyInertia = (dollyInertia !== undefined && dollyInertia !== null) ? dollyInertia : 0;\n }\n\n /**\n * Gets the dolly inertia factor.\n *\n * Default is ````0````.\n *\n * @returns {Number} The current dolly inertia factor.\n */\n get dollyInertia() {\n return this.#configs.dollyInertia;\n }\n\n /**\n * Sets the proximity to the closest object below which dolly speed decreases, and above which dolly speed increases.\n *\n * Default is ````35.0````.\n *\n * @param {Number} dollyProximityThreshold New dolly proximity threshold.\n */\n set dollyProximityThreshold(dollyProximityThreshold) {\n this.#configs.dollyProximityThreshold = (dollyProximityThreshold !== undefined && dollyProximityThreshold !== null) ? dollyProximityThreshold : 35.0;\n }\n\n /**\n * Gets the proximity to the closest object below which dolly speed decreases, and above which dolly speed increases.\n *\n * Default is ````35.0````.\n *\n * @returns {Number} The current dolly proximity threshold.\n */\n get dollyProximityThreshold() {\n return this.#configs.dollyProximityThreshold;\n }\n\n /**\n * Sets the minimum dolly speed.\n *\n * Default is ````0.04````.\n *\n * @param {Number} dollyMinSpeed New dolly minimum speed.\n */\n set dollyMinSpeed(dollyMinSpeed) {\n this.#configs.dollyMinSpeed = (dollyMinSpeed !== undefined && dollyMinSpeed !== null) ? dollyMinSpeed : 0.04;\n }\n\n /**\n * Gets the minimum dolly speed.\n *\n * Default is ````0.04````.\n *\n * @returns {Number} The current minimum dolly speed.\n */\n get dollyMinSpeed() {\n return this.#configs.dollyMinSpeed;\n }\n\n /**\n * Sets the pan inertia factor.\n *\n * This factor configures how much the {@link Camera} keeps moving after you finish panning it.\n *\n * This factor is a value in range ````[0..1]````. A value of ````0.0```` causes panning to immediately stop,\n * ````0.5```` causes panning to decay 50% on each animation frame, while ````1.0```` causes no decay, which allows panning\n * to continue until further input stops it.\n *\n * You might set ````panInertia```` to zero when you want be able to precisely position or rotate the Camera,\n * without interference from inertia. This also means that xeokit renders less frames while panning the Camera,\n * wich can improve rendering performance.\n *\n * Default is ````0.5````.\n *\n * @param {Number} panInertia New pan inertia factor.\n */\n set panInertia(panInertia) {\n this.#configs.panInertia = (panInertia !== undefined && panInertia !== null) ? panInertia : 0.5;\n }\n\n /**\n * Gets the pan inertia factor.\n *\n * Default is ````0.5````.\n *\n * @returns {Number} The current pan inertia factor.\n */\n get panInertia() {\n return this.#configs.panInertia;\n }\n\n /**\n * Sets the keyboard layout.\n *\n * Supported layouts are:\n *\n * * ````\"qwerty\"```` (default)\n * * ````\"azerty\"````\n *\n * @deprecated\n * @param {String} value Selects the keyboard layout.\n */\n set keyboardLayout(value) {\n // this.warn(\"keyboardLayout property is deprecated - use keyMap property instead\");\n value = value || \"qwerty\";\n if (value !== \"qwerty\" && value !== \"azerty\") {\n this.error(\"Unsupported value for keyboardLayout - defaulting to 'qwerty'\");\n value = \"qwerty\";\n }\n this.#configs.keyboardLayout = value;\n this.keyMap = this.#configs.keyboardLayout;\n }\n\n /**\n * Gets the keyboard layout.\n *\n * Supported layouts are:\n *\n * * ````\"qwerty\"```` (default)\n * * ````\"azerty\"````\n *\n * @deprecated\n * @returns {String} The current keyboard layout.\n */\n get keyboardLayout() {\n return this.#configs.keyboardLayout;\n }\n\n /**\n * Sets a sphere as the representation of the pivot position.\n *\n * @param {Object} [cfg] Sphere configuration.\n * @param {String} [cfg.size=1] Optional size factor of the sphere. Defaults to 1.\n * @param {String} [cfg.material=PhongMaterial] Optional size factor of the sphere. Defaults to a red opaque material.\n */\n enablePivotSphere(cfg = {}) {\n this.#controllers.pivotController.enablePivotSphere(cfg);\n }\n\n /**\n * Remove the sphere as the representation of the pivot position.\n *\n */\n disablePivotSphere() {\n this.#controllers.pivotController.disablePivotSphere();\n }\n\n /**\n * Sets whether smart default pivoting is enabled.\n *\n * When ````true````, we'll pivot by default about the 3D position of the mouse/touch pointer on an\n * imaginary sphere that's centered at {@link Camera#eye} and sized to the {@link Scene} boundary.\n *\n * When ````false````, we'll pivot by default about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * @param {Boolean} enabled Set ````true```` to pivot by default about the selected point on the virtual sphere, or ````false```` to pivot by default about {@link Camera#look}.\n */\n set smartPivot(enabled) {\n this.#configs.smartPivot = (enabled !== false);\n }\n\n /**\n * Gets whether smart default pivoting is enabled.\n *\n * When ````true````, we'll pivot by default about the 3D position of the mouse/touch pointer on an\n * imaginary sphere that's centered at {@link Camera#eye} and sized to the {@link Scene} boundary.\n *\n * When ````false````, we'll pivot by default about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} Returns ````true```` when pivoting by default about the selected point on the virtual sphere, or ````false```` when pivoting by default about {@link Camera#look}.\n */\n get smartPivot() {\n return this.#configs.smartPivot;\n }\n\n /**\n * Sets the double click time frame length in milliseconds.\n *\n * If two mouse click events occur within this time frame, it is considered a double click.\n *\n * Default is ````250````\n *\n * @param {Number} value New double click time frame.\n */\n set doubleClickTimeFrame(value) {\n this.#configs.doubleClickTimeFrame = (value !== undefined && value !== null) ? value : 250;\n }\n\n /**\n * Gets the double click time frame length in milliseconds.\n *\n * Default is ````250````\n *\n * @param {Number} value Current double click time frame.\n */\n get doubleClickTimeFrame() {\n return this.#configs.doubleClickTimeFrame;\n }\n\n /**\n * Destroys this ````CameraControl````.\n * @private\n */\n destroy() {\n this._destroyHandlers();\n this._destroyControllers();\n this.#cameraUpdater.destroy();\n super.destroy();\n }\n\n _destroyHandlers() {\n for (let i = 0, len = this.#handlers.length; i < len; i++) {\n const handler = this.#handlers[i];\n if (handler.destroy) {\n handler.destroy();\n }\n }\n }\n\n _destroyControllers() {\n for (let key in this.#controllers) {\n const controller = this.#controllers[key];\n if (controller.destroy) {\n controller.destroy();\n }\n }\n }\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fbcf.svg)](https://badge.fury.io/js/%40xeokit%2Fbcf)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/bcf/badge)](https://www.jsdelivr.com/package/npm/@xeokit/bcf)\n *\n * \n *\n * # xeokit BCF Viewpoint Importer and Exporter\n *\n * ---\n *\n * ### *Interoperate with other BIM software through the exchange of BCF viewpoints*\n *\n * ---\n *\n * The xeokit SDK uses the [BCF](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#bcf) format to exchange bookmarks of Viewer state with other\n * BIM software. BCF (Building Collaboration Format) is an open file format that enables data exchange and collaboration on 3D models and building\n * information. A *BCF viewpoint* is a snapshot of a specific issue related to a building project, containing information such as the\n * problem description, location, and proposed solutions. It is used to facilitate communication and collaboration among\n * project stakeholders in BIM workflows.\n *\n * To import a JSON-encoded BCF viewpoint into a {@link @xeokit/viewer!View | View} belonging to a {@link @xeokit/viewer!Viewer | Viewer}, use the\n * {@link @xeokit/bcf!loadBCFViewpoint} function. Similarly, to export the state of a View as a JSON-encoded BCF viewpoint, use\n * the {@link @xeokit/bcf!saveBCFViewpoint} function.\n *\n * Refer to {@link @xeokit/bcf!BCFViewpoint} for information on the BCF viewpoint format.\n *\n *
\n *\n * [![](https://mermaid.ink/img/pako:eNqlVFFP2zAQ_ivRPUJADe2oZKE-UMRTJlWrxsNmhNz4CkaJbcVOR1f1v2O7SUiyaGJaH1rfd9999-Uu9QEyxREIZDkz5k6w55IVVFLJRYmZFUpG6Tcfh3z0IPAXltGBysh9zqOdiw2Vxz6jTQvenHK2x_JPZurhaISvNq-ufb8gVYzfLu99nVZC2hVzXk1TfXOjfYwWy8Wikdlk25be9dw2dNIVx7R2dwLxrQd2HOQDBx-9t5UM0_KtOwVrtsN_tPwf9syg21_snRZJIaFwcbGgcEbhITQO30M49KJyfAEUJjU7aUQ-QeymqRwOtmGNC5Hou0ETtcMz_onGRz1i7hPEvrnhWBvWuNCouWZDXXq9nNNStSNq_4fb4VPmCktGPHn1AS8D2q3JhUQTaKk7_Xzs5jbCFkyfsrfh3M9nudBayOcnnbNGZVljKw_16UY6sRdlA29dBz09VWglUdpaqg3D-wYxOPMFE9zdNOG5KdgXLJACcUeOW1blloIjOyqrrFrvZQbElhXGUGnOLNZ3E5Aty41DNZNADvAGZBLDHsg0uZwm1_PJbH41mU3nX2ZXxxh-K-UqkhiQC6vKr_Vd53-Cwo-Q922O73wUsH8?type=png)](https://mermaid.live/edit#pako:eNqlVFFP2zAQ_ivRPUJADe2oZKE-UMRTJlWrxsNmhNz4CkaJbcVOR1f1v2O7SUiyaGJaH1rfd9999-Uu9QEyxREIZDkz5k6w55IVVFLJRYmZFUpG6Tcfh3z0IPAXltGBysh9zqOdiw2Vxz6jTQvenHK2x_JPZurhaISvNq-ufb8gVYzfLu99nVZC2hVzXk1TfXOjfYwWy8Wikdlk25be9dw2dNIVx7R2dwLxrQd2HOQDBx-9t5UM0_KtOwVrtsN_tPwf9syg21_snRZJIaFwcbGgcEbhITQO30M49KJyfAEUJjU7aUQ-QeymqRwOtmGNC5Hou0ETtcMz_onGRz1i7hPEvrnhWBvWuNCouWZDXXq9nNNStSNq_4fb4VPmCktGPHn1AS8D2q3JhUQTaKk7_Xzs5jbCFkyfsrfh3M9nudBayOcnnbNGZVljKw_16UY6sRdlA29dBz09VWglUdpaqg3D-wYxOPMFE9zdNOG5KdgXLJACcUeOW1blloIjOyqrrFrvZQbElhXGUGnOLNZ3E5Aty41DNZNADvAGZBLDHsg0uZwm1_PJbH41mU3nX2ZXxxh-K-UqkhiQC6vKr_Vd53-Cwo-Q922O73wUsH8)\n *\n *
\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/bcf\n * ````\n *\n * ## Usage\n *\n * ### Saving and Loading a View as BCF\n *\n * In this example we'll set up a xeokit Viewer in a web browser, load a BIM model into it, and then demonstrate how we\n * can save and load bookmarks of our Viewer state as BCF viewpoints, using the model.\n *\n * We'll start with these steps:\n *\n * * create a {@link @xeokit/scene!Scene | Scene} and a {@link @xeokit/data!Data | Data},\n * * initialize a Viewer with the Scene and a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer},\n * * create a new {@link @xeokit/viewer!View | View}, {@link @xeokit/scene!SceneModel | SceneModel} and {@link @xeokit/data!DataModel | DataModel},\n * * load a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file using the {@link @xeokit/xkt!loadXKT | loadXKT} function, and\n * * build the Scene and Data models, rendering the 3D model in the web browser.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Data} from \"@xeoki/data\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {loadXKT} from \"@xeokit/xkt\";\n * import {saveBCFViewpoint, loadBCFViewpoint} from \"@xeokit/bcf\";\n * import * as ifcTypes from \"@xeokit/ifctypes\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const viewer = new Viewer({\n * scene,\n * renderers: new WebGLRenderer()\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * canvasId: \"myCanvas\"\n * });\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModel.xkt\").then(response => {\n * response.arrayBuffer().then(data => {\n *\n * loadXKT({ data, sceneModel, dataModel });\n *\n * sceneModel.build();\n * dataModel.build();\n * });\n * });\n * ````\n *\n * When our [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) has loaded, that call to {@link @xeokit/scene!SceneModel.build | SceneModel.build} will finalize our SceneModel\n * and cause it to immediately appear in the View's canvas.\n *\n * That call will also trigger {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt} and\n * {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt} events.\n *\n * On the SceneModel.onBuilt event, we'll customize the View by arranging the {@link @xeokit/viewer!Camera} and applying\n * an X-ray effect tp a couple of objects, then we'll use {@link @xeokit/bcf!saveBCFViewpoint} to save the state of the View to\n * a BCF viewpoint.\n *\n * Once the SceneModel and DataModel have been built, we can no longer add anything to them.\n *\n * ````javascript\n * sceneModel.onBuilt.one(()=>{\n *\n * view.camera.eye = [0,0,-33];\n * view.camera.look = [0,0,0];\n * view.camera.up = [0,0,0];\n *\n * view.setObjectsVisible(view.objectIds, false);\n * view.setObjectsVisible([\"myObject1\", \"myObject2\", \"myObject3\", ...], true);\n *\n * view.setObjectsXRayed([\"myObject1\", \"myObject\", ...], true);\n *\n * const bcfViewpoint = saveBCFViewpoint({\n * view: view\n * });\n *\n * });\n * ````\n *\n * Now that we've saved the {@link @xeokit/bcf!BCFViewpoint}, we could now use {@link @xeokit/bcf!loadBCFViewpoint} to load\n * the {@link @xeokit/bcf!BCFViewpoint} back into the {@link @xeokit/viewer!View | View}:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint,\n * view\n * });\n * ````\n *\n * ### Saving and Loading a ViewLayer as BCF\n *\n * As before, let's create a Viewer with a View and a SceneModel.\n *\n * This time, we'll add two {@link @xeokit/viewer!ViewLayer | ViewLayers} to our View, and we'll associate our SceneModel with one of those\n * ViewLayers. ViewLayers allow us to partition our ViewObjects into bins, so that we can conveniently focus certain operations (eg. import/export\n * BCF) only on the relevant ViewObjects.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Data} from \"@xeoki/data\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {loadBCFViewpoint} from \"@xeokit/bcf\";\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderers: new WebGLRenderer({\n * //...\n * })\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * const foregroundViewLayer = view.createLayer({\n * id: \"foreground\"\n * });\n *\n * const backgroundViewLayer = view.createLayer({\n * id: \"background\"\n * });\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\",\n * layerId: \"foreground\"\n * });\n *\n * //...create some objects, load XKT etc\n *\n * sceneModel.build();\n *\n * const myOtherSceneModel = scene.createModel({\n * id: \"myOtherModel\",\n * layerId: \"background\"\n * });\n *\n * //...create some objects, load XKT etc\n *\n * myOtherSceneModel.build();\n * ````\n *\n * Now we can use {@link @xeokit/bcf!saveBCFViewpoint} to save the states of only the {@link @xeokit/viewer!ViewObject | ViewObjects} in the\n * {@link @xeokit/viewer!ViewLayer | ViewLayer} that contains our SceneModel to a {@link @xeokit/bcf!BCFViewpoint}, while ignoring the\n * other ViewLayer:\n *\n * ````javascript\n * const bcfViewpoint = saveBCFViewpoint({\n * view,\n * includeViewLayerIds: [\"foreground\"],\n * excludeViewLayerIds: [\"background\"] // Unnecessary, but we'll show it anyway\n * });\n * ````\n *\n * Use {@link @xeokit/bcf!loadBCFViewpoint} to load the {@link @xeokit/bcf!BCFViewpoint} back into the {@link @xeokit/viewer!ViewLayer | ViewLayer}:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint,\n * view,\n * includeViewLayerIds: [\"foreground\"],\n * excludeViewLayerIds: [\"background\"]\n * });\n * ````\n *\n * @module @xeokit/bcf\n */\nexport {BCFOrthogonalCamera} from \"./BCFOrthogonalCamera\";\nexport {BCFPerspectiveCamera} from \"./BCFPerspectiveCamera\";\nexport {BCFVector} from \"./BCFVector\";\nexport {BCFLine} from \"./BCFLine\";\nexport {BCFBitmap} from \"./BCFBitmap\";\nexport {BCFClippingPlane} from \"./BCFClippingPlane\";\nexport {BCFSnapshot} from \"./BCFSnapshot\";\nexport {BCFComponents} from \"./BCFComponents\";\nexport {BCFViewSetupHints} from \"./BCFViewSetupHints\";\nexport {BCFColoringComponent} from \"./BCFColoringComponent\";\nexport {BCFVisibilityComponent} from \"./BCFVisibilityComponent\";\nexport {BCFTranslucencyComponent} from \"./BCFTranslucencyComponent\";\nexport {BCFComponent} from \"./BCFComponent\";\nexport {BCFSelectionComponent} from \"./BCFSelectionComponent\";\nexport {BCFViewpoint} from \"./BCFViewpoint\";\nexport {loadBCFViewpoint} from \"./loadBCFViewpoint\";\nexport {saveBCFViewpoint} from \"./saveBCFViewpoint\";\nexport {SaveBCFViewpointParams} from \"./SaveBCFViewpointParams\";\nexport {LoadBCFViewpointParams} from \"./LoadBCFViewpointParams\";\n\n", "import type {LoadBCFViewpointParams} from \"./LoadBCFViewpointParams\";\nimport {addVec3, createVec3, negateVec3, subVec3} from \"@xeokit/matrix\";\nimport {View} from \"@xeokit/viewer\";\nimport {Data, DataObject} from \"@xeokit/data\";\nimport {OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {IfcOpeningElement, IfcSpace} from \"@xeokit/ifctypes\";\nimport {BasicAggregation} from \"@xeokit/basictypes\";\nimport {BCFVector} from \"./BCFVector\";\nimport {BCFComponent} from \"./BCFComponent\";\n\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\n/**\n * Loads a {@link @xeokit/bcf!BCFViewpoint} into a {@link @xeokit/viewer!View | View}.\n *\n * See {@link \"@xeokit/bcf\" | @xeokit/bcf} for usage.\n *\n * @param params BCF viewpoint loading paremeters.\n */\nexport function loadBCFViewpoint(params: LoadBCFViewpointParams): void {\n\n const includeViewLayers = params.includeLayerIds ? new Set(params.includeLayerIds) : null;\n const excludeViewLayers = params.excludeLayerIds ? new Set(params.excludeLayerIds) : null;\n\n const view = params.view;\n const data = params.data;\n const camera = view.camera;\n const rayCast = (!!params.rayCast);\n const immediate = (params.immediate !== false);\n const reset = (params.reset !== false);\n //const realWorldOffset = scene.realWorldOffset;\n const realWorldOffset = createVec3();\n const reverseClippingPlanes = (params.reverseClippingPlanes === true);\n const bcfViewpoint = params.bcfViewpoint;\n\n view.clearSectionPlanes();\n\n if (bcfViewpoint.clipping_planes && bcfViewpoint.clipping_planes.length > 0) {\n bcfViewpoint.clipping_planes.forEach(function (e) {\n let pos = xyzObjectToArray(e.location, tempVec3);\n let dir = xyzObjectToArray(e.direction, tempVec3);\n if (reverseClippingPlanes) {\n negateVec3(dir);\n }\n subVec3(pos, realWorldOffset);\n if (camera.yUp) {\n pos = ZToY(pos);\n dir = ZToY(dir);\n }\n view.createSectionPlane({pos, dir});\n });\n }\n /*\n scene.clearLines();\n\n if (bcfViewpoint.lines && bcfViewpoint.lines.length > 0) {\n const positions = [];\n const indices = [];\n let i = 0;\n bcfViewpoint.lines.forEach((e) => {\n if (!e.start_point) {\n return;\n }\n if (!e.end_point) {\n return;\n }\n positions.push(e.start_point.x);\n positions.push(e.start_point.y);\n positions.push(e.start_point.z);\n positions.push(e.end_point.x);\n positions.push(e.end_point.y);\n positions.push(e.end_point.z);\n indices.push(i++);\n indices.push(i++);\n });\n new LineSet(scene, {\n positions,\n indices,\n clippable: false,\n collidable: true\n });\n }\n\n scene.clearBitmaps();\n\n if (bcfViewpoint.bitmaps && bcfViewpoint.bitmaps.length > 0) {\n bcfViewpoint.bitmaps.forEach(function (e) {\n const bitmap_type = e.bitmap_type || \"jpg\"; // \"jpg\" | \"png\"\n const bitmap_data = e.bitmap_data; // base64\n let location = xyzObjectToArray(e.location, tempVec3a);\n let normal = xyzObjectToArray(e.normal, tempVec3b);\n let up = xyzObjectToArray(e.up, tempVec3c);\n let height = e.height || 1;\n if (!bitmap_type) {\n return;\n }\n if (!bitmap_data) {\n return;\n }\n if (!location) {\n return;\n }\n if (!normal) {\n return;\n }\n if (!up) {\n return;\n }\n if (camera.yUp) {\n location = ZToY(location);\n normal = ZToY(normal);\n up = ZToY(up);\n }\n new Bitmap(scene, {\n src: bitmap_data,\n type: bitmap_type,\n pos: location,\n normal: normal,\n up: up,\n clippable: false,\n collidable: true,\n height\n });\n });\n }\n */\n\n ///////////////////////////////////////////\n // TODO\n // Filter on layers\n ///////////////////////////////////////////\n\n if (reset) {\n view.setObjectsXRayed(view.xrayedObjectIds, false);\n view.setObjectsHighlighted(view.highlightedObjectIds, false);\n view.setObjectsSelected(view.selectedObjectIds, false);\n }\n\n function filterViewObject(viewObject) {\n return !viewObject.layer ||\n ((!includeViewLayers || includeViewLayers.has(viewObject.layer.id)) &&\n (!excludeViewLayers || !excludeViewLayers.has(viewObject.layer.id)));\n }\n\n if (bcfViewpoint.components) {\n if (bcfViewpoint.components.visibility) {\n if (!bcfViewpoint.components.visibility.default_visibility) {\n view.setObjectsVisible(view.objectIds, false);\n if (bcfViewpoint.components.visibility.exceptions) {\n bcfViewpoint.components.visibility.exceptions.forEach(\n component =>\n withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.visible = true;\n }\n }));\n }\n } else {\n view.setObjectsVisible(view.objectIds, true);\n if (bcfViewpoint.components.visibility.exceptions) {\n bcfViewpoint.components.visibility.exceptions.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n }));\n }\n }\n const view_setup_hints = bcfViewpoint.components.visibility.view_setup_hints;\n if (view_setup_hints) {\n if (view_setup_hints.spaces_visible === false) { // Hide IfcSpaces\n data.searchObjects({\n includeObjects: [IfcSpace],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.spaces_translucent !== undefined) { // X-ray IfcSpaces\n data.searchObjects({\n includeObjects: [IfcSpace],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.space_boundaries_visible !== undefined) {\n // TODO\n }\n if (view_setup_hints.openings_visible === false) { // Hide IfcOpeningElements\n data.searchObjects({\n includeObjects: [IfcOpeningElement],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.space_boundaries_translucent !== undefined) {\n // TODO\n }\n if (view_setup_hints.openings_translucent !== undefined) { // // X-ray IfcOpeningElements\n data.searchObjects({\n includeObjects: [IfcOpeningElement],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n return false;\n }\n });\n }\n }\n }\n\n if (bcfViewpoint.components.selection) {\n view.setObjectsSelected(view.selectedObjectIds, false);\n bcfViewpoint.components.selection.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.selected = true;\n }\n }));\n\n }\n if (bcfViewpoint.components.translucency) {\n view.setObjectsXRayed(view.xrayedObjectIds, false);\n bcfViewpoint.components.translucency.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n }));\n }\n if (bcfViewpoint.components.coloring) {\n bcfViewpoint.components.coloring.forEach(coloring => {\n let color = coloring.color;\n let alpha = 0;\n let alphaDefined = false;\n if (color.length === 8) {\n alpha = parseInt(color.substring(0, 2), 16) / 256;\n if (alpha <= 1.0 && alpha >= 0.95) {\n alpha = 1.0;\n }\n color = color.substring(2);\n alphaDefined = true;\n }\n const colorize = [\n parseInt(color.substring(0, 2), 16) / 256,\n parseInt(color.substring(2, 4), 16) / 256,\n parseInt(color.substring(4, 6), 16) / 256\n ];\n coloring.components.map(component =>\n withBCFComponent(data, view, params, component,\n (viewObject) => {\n viewObject.colorize = colorize;\n if (alphaDefined) {\n viewObject.opacity = alpha;\n }\n }));\n });\n }\n }\n\n if (bcfViewpoint.perspective_camera || bcfViewpoint.orthogonal_camera) {\n let eye;\n let look;\n let up;\n let projection;\n\n if (bcfViewpoint.perspective_camera) {\n eye = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_view_point, tempVec3);\n look = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_direction, tempVec3);\n up = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_up_vector, tempVec3);\n\n camera.perspectiveProjection.fov = bcfViewpoint.perspective_camera.field_of_view;\n\n projection = PerspectiveProjectionType;\n } else {\n eye = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_view_point, tempVec3);\n look = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_direction, tempVec3);\n up = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_up_vector, tempVec3);\n\n camera.orthoProjection.scale = bcfViewpoint.orthogonal_camera.view_to_world_scale;\n\n projection = OrthoProjectionType;\n }\n\n subVec3(eye, realWorldOffset);\n\n if (camera.yUp) {\n eye = ZToY(eye);\n look = ZToY(look);\n up = ZToY(up);\n }\n\n if (rayCast) {\n const hit = view.pick({\n pickSurface: true, // <<------ This causes picking to find the intersection point on the viewObject\n rayOrigin: eye,\n rayDirection: look\n });\n look = (hit ? hit.worldPos : addVec3(eye, look, tempVec3));\n } else {\n look = addVec3(eye, look, tempVec3);\n }\n\n if (immediate) {\n camera.eye = eye;\n camera.look = look;\n camera.up = up;\n camera.projectionType = projection;\n } else {\n view.cameraFlight.flyTo({eye, look, up, duration: params.duration, projection}, () => {\n // TODO\n });\n }\n }\n}\n\n\nfunction withBCFComponent(data: Data, view: View, params: LoadBCFViewpointParams, component: BCFComponent, callback) {\n\n\n if (component.authoring_tool_id && component.originating_system === params.originatingSystem) {\n\n const id = component.authoring_tool_id;\n const viewObject = view.objects[id];\n\n if (viewObject) {\n callback(viewObject);\n return\n }\n\n if (params.updateCompositeObjects) {\n const dataObject = data.objects[id];\n if (dataObject) {\n data.searchObjects({ // Updated aggregated IFC elements\n startObjectId: dataObject.id,\n includeStart: true,\n includeRelated: [BasicAggregation],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject) {\n callback(viewObject);\n }\n return false;\n }\n });\n return;\n }\n }\n }\n\n if (component.ifc_guid) {\n\n const originalSystemId = component.ifc_guid;\n const viewObject = view.objects[originalSystemId];\n\n if (viewObject) {\n callback(viewObject);\n return;\n }\n\n if (params.updateCompositeObjects) {\n const dataObject = data.objects[originalSystemId];\n if (dataObject) {\n data.searchObjects({\n startObjectId: dataObject.id,\n includeStart: true,\n includeRelated: [BasicAggregation],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject) {\n callback(viewObject);\n }\n return false;\n }\n });\n return;\n }\n }\n\n // Object.keys(scene.models).forEach((modelId) => {\n //\n // const id = globalizeObjectId(modelId, originalSystemId);\n // const viewObject = scene.objects[id];\n //\n // if (viewObject) {\n // callback(viewObject);\n // return;\n // }\n //\n // if (params.updateCompositeObjects) {\n // const dataObject = data.objects[id];\n // if (dataObject) {\n // scene.withObjects(viewer.metaScene.getObjectIDsInSubtree(id), callback);\n //\n // }\n // }\n // });\n }\n}\n\nfunction globalizeObjectId(modelId: string, objectId: string): string {\n return (modelId + \"#\" + objectId)\n}\n\nfunction xyzObjectToArray(xyz: BCFVector, arry: FloatArrayParam): FloatArrayParam {\n arry = new Float64Array(3);\n arry[0] = xyz.x;\n arry[1] = xyz.y;\n arry[2] = xyz.z;\n return arry;\n}\n\nfunction YToZ(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], -vec[2], vec[1]]);\n}\n\nfunction ZToY(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], vec[2], -vec[1]]);\n}\n\nfunction colorizeToRGB(color: FloatArrayParam): string {\n let rgb = \"\";\n rgb += Math.round(color[0] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[1] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[2] * 255).toString(16).padStart(2, \"0\");\n return rgb;\n}\n", "import type {BCFViewpoint} from \"./BCFViewpoint\";\nimport type {SaveBCFViewpointParams} from \"./SaveBCFViewpointParams\";\nimport {addVec3, createVec3, normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {ViewObject} from \"@xeokit/viewer\";\n\n/**\n * Saves a {@link @xeokit/viewer!View | View} to a {@link @xeokit/bcf!BCFViewpoint}.\n *\n * See {@link \"@xeokit/bcf\" | @xeokit/bcf} for usage.\n *\n * @param params BCF saving parameers.\n * @returns The BCF viewpoint.\n */\nexport function saveBCFViewpoint(params: SaveBCFViewpointParams): BCFViewpoint {\n\n const includeViewLayers = params.includeLayerIds ? new Set(params.includeLayerIds) : null;\n const excludeViewLayers = params.excludeLayerIds ? new Set(params.excludeLayerIds) : null;\n\n const view = params.view;\n const camera = view.camera;\n // const realWorldOffset = view.realWorldOffset;\n const realWorldOffset = createVec3();\n const reverseClippingPlanes = (params.reverseClippingPlanes === true);\n let bcfViewpoint: any = {};\n\n let lookDirection = normalizeVec3(subVec3(camera.look, camera.eye, createVec3()));\n let eye = camera.eye;\n let up = camera.up;\n\n if (camera.yUp) {\n // BCF is Z up\n lookDirection = YToZ(lookDirection);\n eye = YToZ(eye);\n up = YToZ(up);\n }\n\n const camera_view_point = xyzArrayToObject(addVec3(eye, realWorldOffset));\n\n if (camera.projectionType === OrthoProjectionType) {\n bcfViewpoint.orthogonal_camera = {\n camera_view_point: camera_view_point,\n camera_direction: xyzArrayToObject(lookDirection),\n camera_up_vector: xyzArrayToObject(up),\n view_to_world_scale: camera.orthoProjection.scale,\n };\n } else {\n bcfViewpoint.perspective_camera = {\n camera_view_point: camera_view_point,\n camera_direction: xyzArrayToObject(lookDirection),\n camera_up_vector: xyzArrayToObject(up),\n field_of_view: camera.perspectiveProjection.fov,\n };\n }\n\n // Section planes\n\n // const sectionPlanes = view.sectionPlanes;\n // for (let id in sectionPlanes) {\n // if (sectionPlanes.hasOwnProperty(id)) {\n // let sectionPlane = sectionPlanes[id];\n // if (!sectionPlane.active) {\n // continue;\n // }\n // let location = sectionPlane.pos;\n //\n // let direction;\n // if (reverseClippingPlanes) {\n // direction = negateVec3(sectionPlane.dir, createVec3());\n // } else {\n // direction = sectionPlane.dir;\n // }\n //\n // if (camera.yUp) {\n // // BCF is Z up\n // location = YToZ(location);\n // direction = YToZ(direction);\n // }\n // addVec3(location, realWorldOffset);\n //\n // location = xyzArrayToObject(location);\n // direction = xyzArrayToObject(direction);\n // if (!bcfViewpoint.clipping_planes) {\n // bcfViewpoint.clipping_planes = [];\n // }\n // bcfViewpoint.clipping_planes.push({location, direction});\n // }\n // }\n\n // Lines\n\n // const lineSets = view.lineSets;\n // for (let id in lineSets) {\n // if (lineSets.hasOwnProperty(id)) {\n // const lineSet = lineSets[id];\n // if (!bcfViewpoint.lines) {\n // bcfViewpoint.lines = [];\n // }\n // const positions = lineSet.positions;\n // const indices = lineSet.indices;\n // for (let i = 0, len = indices.length / 2; i < len; i++) {\n // const a = indices[i * 2];\n // const b = indices[(i * 2) + 1];\n // bcfViewpoint.lines.push({\n // start_point: {\n // x: positions[a * 3 + 0],\n // y: positions[a * 3 + 1],\n // z: positions[a * 3 + 2]\n // },\n // end_point: {\n // x: positions[b * 3 + 0],\n // y: positions[b * 3 + 1],\n // z: positions[b * 3 + 2]\n // }\n // });\n // }\n //\n // }\n // }\n\n // Bitmaps\n\n // const bitmaps = view.bitmaps;\n // for (let id in bitmaps) {\n // if (bitmaps.hasOwnProperty(id)) {\n // let bitmap = bitmaps[id];\n // let location = bitmap.pos;\n // let normal = bitmap.normal;\n // let up = bitmap.up;\n // if (camera.yUp) {\n // // BCF is Z up\n // location = YToZ(location);\n // normal = YToZ(normal);\n // up = YToZ(up);\n // }\n // addVec3(location, realWorldOffset);\n // if (!bcfViewpoint.bitmaps) {\n // bcfViewpoint.bitmaps = [];\n // }\n // bcfViewpoint.bitmaps.push({\n // bitmap_type: bitmap.type,\n // bitmap_data: bitmap.imageData,\n // location: xyzArrayToObject(location),\n // normal: xyzArrayToObject(normal),\n // up: xyzArrayToObject(up),\n // height: bitmap.height\n // });\n // }\n // }\n\n // Entity states\n\n bcfViewpoint.components = {\n visibility: {\n view_setup_hints: {\n spaces_visible: !!params.spacesVisible,\n space_boundaries_visible: !!params.spaceBoundariesVisible,\n openings_visible: !!params.openingsVisible,\n spaces_translucent: !!params.spaces_translucent,\n space_boundaries_translucent: !!params.space_boundaries_translucent,\n openings_translucent: !!params.openings_translucent\n }\n }\n };\n\n const opacityObjectIds = new Set(view.opacityObjectIds);\n const xrayedObjectIds = new Set(view.xrayedObjectIds);\n const colorizedObjectIds = new Set(view.colorizedObjectIds);\n\n const coloringMap = Object.values(view.objects)\n .filter(viewObject =>\n\n /////////////////////////////////\n // TODO filter visible, highlioghted, selected x-rayed etc\n ///////////////////////////////////////////////////////\n\n !viewObject.layer ||\n ((!includeViewLayers || includeViewLayers.has(viewObject.layer.id)) &&\n (!excludeViewLayers || !excludeViewLayers.has(viewObject.layer.id)))\n\n && opacityObjectIds.has(viewObject.id)\n || colorizedObjectIds.has(viewObject.id)\n || xrayedObjectIds.has(viewObject.id))\n .reduce((coloringMap, viewObject: ViewObject) => {\n\n let color = colorizeToRGB(viewObject.colorize);\n let alpha;\n\n if (viewObject.xrayed) {\n if (view.xrayMaterial.fillAlpha === 0.0 && view.xrayMaterial.edgeAlpha !== 0.0) {\n // BCF can't deal with edges. If xRay is implemented only with edges, set an arbitrary opacity\n alpha = 0.1;\n } else {\n alpha = view.xrayMaterial.fillAlpha;\n }\n alpha = Math.round(alpha * 255).toString(16).padStart(2, \"0\");\n color = alpha + color;\n } else if (opacityObjectIds.has(viewObject.id)) {\n alpha = Math.round(viewObject.opacity * 255).toString(16).padStart(2, \"0\");\n color = alpha + color;\n }\n\n if (!coloringMap[color]) {\n coloringMap[color] = [];\n }\n\n const objectId = viewObject.id;\n const originalSystemId = viewObject.originalSystemId;\n const component: any = {\n ifc_guid: originalSystemId,\n originating_system: params.originatingSystem\n };\n if (originalSystemId !== objectId) {\n component.authoring_tool_id = objectId;\n }\n\n coloringMap[color].push(component);\n\n return coloringMap;\n\n }, {});\n\n const coloringArray = Object.entries(coloringMap).map(([color, components]) => {\n return {color, components};\n });\n\n bcfViewpoint.components.coloring = coloringArray;\n\n const objectIds = view.objectIds;\n const visibleObjects = view.visibleObjects;\n const visibleObjectIds = view.visibleObjectIds;\n const invisibleObjectIds = objectIds.filter(id => !visibleObjects[id]);\n const selectedObjectIds = view.selectedObjectIds;\n\n if (params.defaultInvisible || visibleObjectIds.length < invisibleObjectIds.length) {\n bcfViewpoint.components.visibility.exceptions = createBCFComponents(params, visibleObjectIds);\n bcfViewpoint.components.visibility.default_visibility = false;\n } else {\n bcfViewpoint.components.visibility.exceptions = createBCFComponents(params, invisibleObjectIds);\n bcfViewpoint.components.visibility.default_visibility = true;\n }\n\n bcfViewpoint.components.selection = createBCFComponents(params, selectedObjectIds);\n\n bcfViewpoint.components.translucency = createBCFComponents(params, view.xrayedObjectIds);\n\n if (params.snapshot !== false) {\n bcfViewpoint.snapshot = {\n snapshot_type: \"png\",\n snapshot_data: view.getSnapshot({format: \"png\"})\n };\n }\n\n return bcfViewpoint;\n}\n\nfunction createBCFComponents(params: SaveBCFViewpointParams, objectIds) {\n const view = params.view;\n const components = [];\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const objectId = objectIds[i];\n const viewObject = view.objects[objectId];\n if (viewObject) {\n const component: any = {\n ifc_guid: viewObject.originalSystemId,\n originating_system: params.originatingSystem\n };\n if (viewObject.originalSystemId !== objectId) {\n component.authoring_tool_id = objectId;\n }\n components.push(component);\n }\n }\n return components;\n}\n\n\nfunction globalizeObjectId(modelId: string, objectId: string): string {\n return (modelId + \"#\" + objectId)\n}\n\nfunction xyzArrayToObject(arr: FloatArrayParam): any {\n return {\"x\": arr[0], \"y\": arr[1], \"z\": arr[2]};\n}\n\nfunction YToZ(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], -vec[2], vec[1]]);\n}\n\nfunction ZToY(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], vec[2], -vec[1]]);\n}\n\nfunction colorizeToRGB(color) {\n let rgb = \"\";\n rgb += Math.round(color[0] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[1] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[2] * 255).toString(16).padStart(2, \"0\");\n return rgb;\n}\n\nfunction convertListToMap(strings) {\n const resultMap = new Map();\n strings.forEach((str) => {\n resultMap.set(str, true);\n });\n return resultMap;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Ftreeview.svg)](https://badge.fury.io/js/%40xeokit%2Ftreeview)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/treeview/badge)](https://www.jsdelivr.com/package/npm/@xeokit/treeview)\n *\n * \n *\n *
\n *\n * ## xeokit Tree View UI\n *\n * * {@link @xeokit/treeview!TreeView}\n * * Fast HTML tree view to navigate federated models in a {@link @xeokit/viewer!Viewer | Viewer}\n * * Use with a {@link @xeokit/viewer!View | View} and a semantic {@link @xeokit/data!Data | Data} model\n * * Supports Industry Foundation Classes ([IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc))\n * * Supports any schema expressable as ER graph with aggregation relationships\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/treeview\n * ````\n *\n * ## Usage\n *\n * TODO\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Data} from \"@xeokit/data\";\n * import * as ifcTypes from \"@xeokit/ifctypes\";\n * import {TreeView} from \"@xeokit/treeview!TreeView\";\n * import {loadDTX} from \"@xeokit/dtx\";\n * ````\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}, configured with a {@link @xeokit/webglrenderer!WebGLRenderer}:\n *\n * ````javascript\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ })\n * });\n * ````\n *\n * Create a {@link @xeokit/viewer!View} and position the {@link @xeokit/viewer!Camera}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const data = new Data();\n * ````\n *\n * Create a {@link @xeokit/treeview!TreeView}, configured to show TODO:\n *\n * ````javascript\n * const treeView = new TreeView({\n *\n * view: myView,\n * data: myData,\n *\n * containerElement: document.getElementById(\"myTreeViewContainer\"),\n *\n * hierarchy: TreeView.GroupsHierarchy,\n * linkType: ifcTypes.IfcRelAggregates,\n * groupTypes: [ifcTypes.IfcBuilding, ifcTypes.IfcBuildingStorey]\n * });\n *\n * const sceneModel = new SceneModel(); // SceneModel implements SceneModel\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModel.dtx\").then(response => {\n *\n * response.arrayBuffer().then(data => {\n *\n * loadDTX({ data, sceneModel, dataModel });\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * myViewer.scene.addModel({ id: \"myModel\", sceneModel });\n * });\n * });\n * ````\n *\n * @module @xeokit/treeview\n */\nexport * from \"./TreeView\";\nexport {TreeViewParams} from \"./TreeViewparams\";\nexport {TreeViewNode} from \"./TreeViewNode\";\nexport {TreeViewNodeContextMenuEvent} from \"./TreeViewNodeContextMenuEvent\";\nexport {TreeViewNodeTitleClickedEvent} from \"./TreeViewNodeTitleClickedEvent\";\n", "import type {View, Viewer, ViewObject} from \"@xeokit/viewer\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {Data, DataModel, DataObject} from \"@xeokit/data\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {TreeViewParams} from \"./TreeViewparams\";\nimport {TreeViewNode} from \"./TreeViewNode\";\nimport {TreeViewNodeContextMenuEvent} from \"./TreeViewNodeContextMenuEvent\";\nimport {TreeViewNodeTitleClickedEvent} from \"./TreeViewNodeTitleClickedEvent\";\n\n\n/**\n * An HTMl tree view that navigates the {@link @xeokit/data!DataObject | DataObjects} in the given\n * {@link @xeokit/data!Data | Data}, while controlling the visibility of their corresponding\n * {@link @xeokit/viewer!ViewObject | ViewObjects} in the given {@link @xeokit/viewer!View | View}.\n *\n * See {@link \"@xeokit/treeview\" | @xeokit/treeview} for usage.\n */\nexport class TreeView extends Component {\n\n /**\n * Hierarchy mode that arranges the {@link TreeViewNode | TreeViewNodes} as an aggregation hierarchy.\n *\n * The mode creates a TreeViewNode hierarchy that mirrors that of the\n * {@link @xeokit/data!DataObject | DataObjects} and\n * aggregation {@link @xeokit/data!Relationship | Relationships} in the {@link @xeokit/data!Data | Data}.\n *\n * In this hierarchy, each TreeViewNode corresponds to a DataObject in the Data. The TreeViewNodes are connected\n * into a hierarchy that reflects a depth-first traversal from the root DataObjects that follows each DataObject's\n * outgoing Relationships of the type given in {@link TreeView.linkType | TreeView.linkType}.\n */\n static AggregationHierarchy = 0;\n\n /**\n * Hierarchy mode that groups the {@link TreeViewNode | TreeViewNodes} by type.\n *\n * This mode creates a two-level hierarchy. At the root level, we get TreeViewNodes that represent each of the\n * distinct types in our {@link @xeokit/data!Data | Data}. Each of those gets one or more child TreeViewNodes\n * that represent {@link @xeokit/data!DataObject | DataObjects} of that type. When those DataObjects have\n * {@link @xeokit/viewer!ViewObject | ViewObjects} of the same ID, then the TreeViewNodes will have checkboxes\n * that we can use to show, hide, and X-ray their ViewObjects.\n */\n static TypesHierarchy = 1;\n\n /**\n * Hierarchy mode that arranges the {@link TreeViewNode | TreeViewNodes} into an n-level grouped hierarchy.\n *\n * This mode creates a multi-level grouped hierarchy, following the order given\n * in {@link TreeViewParams.groupTypes | TreeViewParams.groupTypes}. The TreeViewNodes at level 0 are all the same\n * type as ````TreeViewParams.groupTypes[0]````, TreeViewNodes at level 1 are all the same type\n * as ````TreeViewParams.groupTypes[2]````, and so on. Once descended beyond the length of ````TreeViewParams.groupTypes````,\n * the TreeViewNodes are just grouped by type.\n */\n static GroupsHierarchy = 2;\n\n /**\n * The semantic {@link @xeokit/data!Data | Data} model that determines the structure of this TreeView.\n */\n data: Data;\n\n /**\n * The {@link @xeokit/viewer!View | View} that contains the {@link @xeokit/viewer!ViewObject | ViewObjects}\n * navigated by this TreeView.\n */\n view: View;\n\n /**\n * Emits an event each time the title of a node is clicked in the tree view.\n *\n * @event\n */\n readonly onNodeTitleClicked: EventEmitter;\n\n /**\n * Emits an event each time we right-click on a tree node.\n *\n * @event\n */\n readonly onContextMenu: EventEmitter;\n\n /**\n * Emits an event when this TreeView has been destroyed.\n *\n * Triggered by {@link TreeView.destroy}.\n *\n * @event\n */\n declare readonly onDestroyed: EventEmitter;\n\n #linkType: number;\n #groupTypes: number[];\n #containerElement: HTMLElement;\n #hierarchy: number;\n #dataModels: {\n [key: string]: DataModel\n };\n #autoAddModels: boolean;\n #autoExpandDepth: any;\n #sortNodes: boolean | undefined;\n #pruneEmptyNodes: boolean;\n #viewer: Viewer;\n #rootElement: HTMLUListElement | null;\n #muteSceneEvents: boolean;\n #muteTreeEvents: boolean;\n #rootNodes: any[];\n #objectNodes: {\n [key: string]: TreeViewNode\n };\n #rootName: any;\n #showListItemElementId: string | null;\n #spatialSortFunc: (node1: TreeViewNode, node2: TreeViewNode) => (number);\n #switchExpandHandler: (event: MouseEvent) => void;\n #switchCollapseHandler: (event: MouseEvent) => void;\n #checkboxChangeHandler: (event: MouseEvent) => void;\n #destroyed: boolean;\n #onViewObjectVisibility: () => void;\n #onViewObjectXRayed: () => void;\n\n #dataObjectSceneObjectCounts: { [key: string]: number };\n\n /**\n *\n * TODO\n *\n * @param params\n */\n constructor(params: TreeViewParams) {\n\n super(null);\n\n if (!params.containerElement) {\n throw new Error(\"Config expected: containerElement\");\n }\n\n if (!params.data) {\n throw new Error(\"Config expected: data\");\n }\n\n if (!params.view) {\n throw new Error(\"Config expected: view\");\n }\n\n this.data = params.data;\n this.view = params.view;\n\n this.#viewer = params.view.viewer;\n this.#linkType = params.linkType;\n this.#groupTypes = params.groupTypes;\n this.#hierarchy = TreeView.AggregationHierarchy;\n this.#containerElement = params.containerElement;\n this.#dataModels = {};\n this.#autoExpandDepth = (params.autoExpandDepth || 0);\n this.#sortNodes = (params.sortNodes !== false);\n this.#pruneEmptyNodes = (params.pruneEmptyNodes !== false);\n this.#rootElement = null;\n this.#muteSceneEvents = false;\n this.#muteTreeEvents = false;\n this.#rootNodes = [];\n this.#objectNodes = {}; // Object ID -> TreeViewNode\n this.#rootName = params.rootName;\n this.#sortNodes = params.sortNodes;\n // @ts-ignore\n this.#pruneEmptyNodes = params.pruneEmptyNodes;\n // @ts-ignore\n this.#showListItemElementId = null;\n this.#destroyed = false;\n\n this.onNodeTitleClicked = new EventEmitter(new EventDispatcher());\n this.onContextMenu = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#containerElement.oncontextmenu = (e) => {\n e.preventDefault();\n };\n\n this.#onViewObjectVisibility = this.view.onObjectVisibility.subscribe((view: View, viewObject: ViewObject) => {\n if (this.#muteSceneEvents) {\n return;\n }\n const objectId = viewObject.id;\n // @ts-ignore\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // Not in this tree\n }\n const visible = viewObject.visible;\n const updated = (visible !== node.checked);\n if (!updated) {\n return;\n }\n this.#muteTreeEvents = true;\n node.checked = visible;\n if (visible) {\n node.numVisibleViewObjects++;\n } else {\n node.numVisibleViewObjects--;\n }\n const checkbox = document.getElementById(node.nodeId);\n if (checkbox) {\n checkbox.checked = visible;\n }\n let parentNode = node.parentNode;\n while (parentNode) {\n parentNode.checked = visible;\n if (visible) {\n parentNode.numVisibleViewObjects++;\n } else {\n parentNode.numVisibleViewObjects--;\n }\n const parentCheckbox = document.getElementById(parentNode.nodeId);\n if (parentCheckbox) {\n const newChecked = (parentNode.numVisibleViewObjects > 0);\n if (newChecked !== parentCheckbox.checked) {\n parentCheckbox.checked = newChecked;\n }\n }\n parentNode = parentNode.parentNode;\n }\n this.#muteTreeEvents = false;\n });\n\n this.#onViewObjectXRayed = this.view.onObjectXRayed.subscribe((view: View, viewObject: ViewObject) => {\n if (this.#muteSceneEvents) {\n return;\n }\n const objectId = viewObject.id;\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // Not in this tree\n }\n this.#muteTreeEvents = true;\n const xrayed = viewObject.xrayed;\n const updated = (xrayed !== node.xrayed);\n if (!updated) {\n return;\n }\n node.xrayed = xrayed;\n const listItemElementId = 'node-' + node.nodeId;\n const listItemElement = document.getElementById(listItemElementId);\n if (listItemElement !== null) {\n if (xrayed) {\n listItemElement.classList.add('xrayed-node');\n } else {\n listItemElement.classList.remove('xrayed-node');\n }\n }\n this.#muteTreeEvents = false;\n });\n\n this.#switchExpandHandler = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n const switchElement = (event.target);\n this.#expandSwitchElement(switchElement);\n };\n\n this.#switchCollapseHandler = (event) => {\n event.preventDefault();\n event.stopPropagation();\n const switchElement = (event.target);\n this.#collapseSwitchElement(switchElement);\n };\n\n this.#checkboxChangeHandler = (event: any) => {\n if (this.#muteTreeEvents) {\n return;\n }\n this.#muteSceneEvents = true;\n const checkbox = event.target;\n const visible = checkbox.checked;\n const nodeId = checkbox.id;\n const checkedObjectId = nodeId;\n const checkedNode = this.#objectNodes[checkedObjectId];\n const objects = this.view.objects;\n let numUpdated = 0;\n this.#withNodeTree(checkedNode, (node: TreeViewNode) => {\n const objectId = node.objectId;\n const checkBoxId = node.nodeId;\n const viewObject = objects[objectId];\n const isLeaf = (node.childNodes.length === 0);\n node.numVisibleViewObjects = visible ? node.numViewObjects : 0;\n if (isLeaf && (visible !== node.checked)) {\n numUpdated++;\n }\n node.checked = visible;\n const checkbox2 = document.getElementById(checkBoxId);\n if (checkbox2) {\n checkbox2.checked = visible;\n }\n if (viewObject) {\n viewObject.visible = visible;\n }\n });\n let parentNode = checkedNode.parentNode;\n while (parentNode) {\n parentNode.checked = visible;\n const checkbox2 = document.getElementById(parentNode.nodeId); // Parent checkboxes are always in DOM\n if (visible) {\n parentNode.numVisibleViewObjects += numUpdated;\n } else {\n parentNode.numVisibleViewObjects -= numUpdated;\n }\n const newChecked = (parentNode.numVisibleViewObjects > 0);\n if (newChecked !== checkbox2.checked) {\n checkbox2.checked = newChecked;\n }\n parentNode = parentNode.parentNode;\n }\n this.#muteSceneEvents = false;\n };\n\n this.hierarchy = params.hierarchy;\n\n const modelIds = Object.keys(this.data.models);\n for (let i = 0, len = modelIds.length; i < len; i++) {\n const modelId = modelIds[i];\n this.#addModel(modelId);\n }\n\n this.#viewer.scene.onModelCreated.subscribe((scene, sceneModel) => {\n if (this.data.models[sceneModel.id]) {\n this.#addModel(sceneModel.id);\n }\n });\n }\n\n /**\n * Gets how the nodes are organized within this tree view.\n *\n * Accepted values are:\n *\n * * {@link TreeView.AggregationHierarchy} (default)\n * * {@link TreeView.TypesHierarchy}\n * * {@link TreeView.GroupsHierarchy}\n */\n get hierarchy(): number {\n return this.#hierarchy;\n }\n\n /**\n * Sets how the nodes are organized within this tree view.\n *\n * Accepted values are:\n *\n * * {@link TreeView.AggregationHierarchy} (default)\n * * {@link TreeView.TypesHierarchy}\n * * {@link TreeView.GroupsHierarchy}\n */\n set hierarchy(hierarchy: number) {\n hierarchy = (hierarchy !== null && hierarchy !== undefined) ? hierarchy : TreeView.AggregationHierarchy;\n if (hierarchy !== TreeView.AggregationHierarchy && hierarchy !== TreeView.GroupsHierarchy && hierarchy !== TreeView.TypesHierarchy) {\n this.error(\"Unsupported value for `hierarchy' - defaulting to TreeView.AggregationHierarchy \");\n hierarchy = TreeView.AggregationHierarchy;\n }\n if (this.#hierarchy === hierarchy) {\n return;\n }\n this.#hierarchy = hierarchy;\n this.#rebuildNodes();\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes, at each\n * {@link @xeokit/data!DataObject | DataObjects}, the TreeView will traverse only the outgoing\n * {@link @xeokit/data!Relationship | Relationships} of this type in\n * {@link @xeokit/data!DataObject.relating | DataObject.relating}.\n */\n get linkType(): number {\n return this.#linkType;\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes, at each\n * {@link @xeokit/data!DataObject | DataObjects}, the TreeView will traverse only the outgoing\n * {@link @xeokit/data!Relationship | Relationships} of this type in\n * {@link @xeokit/data!DataObject.relating | DataObject.relating}.\n */\n set linkType(linkType: number) {\n if (this.#linkType === linkType) {\n return;\n }\n this.#linkType = linkType;\n this.#rebuildNodes();\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes for\n * a {@link TreeView.GroupsHierarchy}, these are the values\n * of {@link @xeokit/data!DataObject.type | DataObject.type} that the\n * TreeView groups and subgroups the {@link @xeokit/data!DataObject | DataObjects} on.\n *\n * The grouping for {@link TreeView.GroupsHierarchy} has two levels. The major grouping type is given\n * in ````groupTypes[0]```` and the minor grouping type is given in ````storeyGroups[1]````.\n *\n * Example: ````[IfcBuilding, IfcBuildingStorey]````.\n */\n get groupTypes(): number [] {\n return this.#groupTypes;\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes for\n * a {@link TreeView.GroupsHierarchy}, these are the values\n * of {@link @xeokit/data!DataObject.type | DataObject.type} that the\n * TreeView groups and subgroups the {@link @xeokit/data!DataObject | DataObjects} on.\n *\n * The grouping for the {@link @xeokit/treeview!TreeView.GroupsHierarchy | GroupsHierarchy} hierarchy has two levels. The major grouping type is given\n * in ````groupTypes[0]```` and the minor grouping type is given in ````storeyGroups[1]````.\n *\n * Example: ````[IfcBuilding, IfcBuildingStorey]````.\n */\n set groupTypes(groupTypes: number[]) {\n if (this.#groupTypes === groupTypes) {\n return;\n }\n this.#groupTypes = groupTypes;\n if (this.#hierarchy === TreeView.GroupsHierarchy) {\n this.#rebuildNodes();\n }\n }\n\n /**\n * Highlights the tree view node that represents the given object {@link viewObject}.\n *\n * This causes the tree view to collapse, then expand to reveal the node, then highlight the node.\n *\n * If a node is previously highlighted, de-highlights that node and collapses the tree first.\n *\n * Note that if the TreeView was configured with ````pruneEmptyNodes: true```` (default configuration), then the\n * node won't exist in the tree if it has no viewObjects in the {@link @xeokit/scene!Scene | Scene}. in that case, nothing will happen.\n *\n * Within the DOM, the node is represented by an ````
  • ```` element. This method will add a ````.highlighted-node```` class to\n * the element to make it appear highlighted, removing that class when de-highlighting it again. See the CSS rules\n * in the TreeView ifcviewer for an example of that class.\n *\n * @param {String} objectId ID of the {@link viewObject}.\n */\n showNode(objectId: string): void {\n if (this.#showListItemElementId) {\n this.unShowNode();\n }\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // TreeViewNode may not exist for the given object if (this.#pruneEmptyNodes == true)\n }\n const nodeId = node.nodeId;\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n switchElement.scrollIntoView();\n return;\n }\n const path = [];\n path.unshift(node);\n let parentNode = node.parentNode;\n while (parentNode) {\n path.unshift(parentNode);\n parentNode = parentNode.parentNode;\n }\n for (let i = 0, len = path.length; i < len; i++) {\n const node = path[i];\n const nodeId = node.nodeId;\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n }\n }\n const listItemElementId = 'node-' + nodeId;\n const listItemElement = document.getElementById(listItemElementId);\n // @ts-ignore\n listItemElement.scrollIntoView({block: \"center\"});\n // @ts-ignore\n listItemElement.classList.add(\"highlighted-node\");\n this.#showListItemElementId = listItemElementId;\n }\n\n /**\n * De-highlights the node previously shown with {@link TreeView#showNode}.\n *\n * Does nothing if no node is currently shown.\n *\n * If the node is currently scrolled into view, keeps the node in view.\n */\n unShowNode(): void {\n if (!this.#showListItemElementId) {\n return;\n }\n const listItemElement = document.getElementById(this.#showListItemElementId);\n if (!listItemElement) {\n this.#showListItemElementId = null;\n return;\n }\n listItemElement.classList.remove(\"highlighted-node\");\n this.#showListItemElementId = null;\n }\n\n /**\n * Expands the tree to the given depth.\n *\n * Collapses the tree first.\n *\n * @param depth Depth to expand to.\n */\n expandToDepth(depth: number): void {\n this.collapse();\n const expand = (node: TreeViewNode, countDepth: number) => {\n if (countDepth === depth) {\n return;\n }\n const nodeId = node.nodeId;\n const switchElementId = `switch-${nodeId}`;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n const childNodes = node.childNodes;\n for (let i = 0, len = childNodes.length; i < len; i++) {\n const childNode = childNodes[i];\n expand(childNode, countDepth + 1);\n }\n }\n };\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n expand(rootNode, 0);\n }\n }\n\n /**\n * Closes all the nodes in the tree.\n */\n collapse(): void {\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n const objectId = rootNode.objectId;\n this.#collapseNode(objectId);\n }\n }\n\n /**\n * Destroys this TreeView.\n */\n destroy(): void {\n if (!this.#containerElement) {\n return;\n }\n this.#dataModels = {};\n if (this.#rootElement && !this.#destroyed) {\n // @ts-ignore\n this.#rootElement.parentNode.removeChild(this.#rootElement);\n this.view.onObjectVisibility.unsubscribe(this.#onViewObjectVisibility);\n this.view.onObjectXRayed.unsubscribe(this.#onViewObjectXRayed);\n this.#destroyed = true;\n }\n super.destroy();\n }\n\n /**\n * Adds a model to this tree view.\n *\n * @private\n * @param {String} modelId ID of a model {@link viewObject} in {@link @xeokit/scene!Scene#models}.\n * @param {Object} [options] Options for model in the tree view.\n * @param {String} [options.rootName] Optional display name for the root node. Ordinary, for \"containment\"\n * and {@link @xeokit/treeview!TreeView.GroupsHierarchy | GroupsHierarchy} hierarchy types, the tree would derive the root node name from the model's \"IfcProject\" element\n * name. This option allows to override that name when it is not suitable as a display name.\n */\n #addModel(modelId: string, options = {}): void {\n if (!this.#containerElement) {\n return;\n }\n const model = this.#viewer.scene.models[modelId];\n if (!model) {\n this.error(`SceneModel not found: ${modelId}`);\n return;\n }\n const dataModel = this.data.models[modelId];\n if (!dataModel) {\n this.error(`DataModel not found: ${modelId}`);\n return;\n }\n if (this.#dataModels[modelId]) {\n this.error(`Model already added: ${modelId}`);\n return;\n }\n this.#dataModels[modelId] = dataModel;\n model.onDestroyed.one(() => {\n this.#removeModel(model.id);\n });\n this.#rebuildNodes();\n }\n\n /**\n * Removes a model from this tree view.\n *\n * @private\n * @param {String} modelId ID of a model {@link viewObject} in {@link @xeokit/scene!Scene#models}.\n */\n #removeModel(modelId: string): void {\n if (!this.#containerElement) {\n return;\n }\n const dataModel = this.#dataModels[modelId];\n if (!dataModel) {\n return;\n }\n delete this.#dataModels[modelId];\n this.#rebuildNodes();\n }\n\n #rebuildNodes(): void {\n if (this.#rootElement) {\n // @ts-ignore\n this.#rootElement.parentNode.removeChild(this.#rootElement);\n this.#rootElement = null;\n }\n\n this.#rootNodes = [];\n this.#objectNodes = {};\n // if (this.#validate()) {\n this.#createEnabledNodes();\n // } else {\n // this.#createDisabledNodes();\n // }\n }\n\n #validate(): boolean {\n let valid = true;\n switch (this.#hierarchy) {\n case TreeView.GroupsHierarchy:\n valid = (this.#rootNodes.length > 0);\n // valid = this.#validateMetaModelForStoreysHierarchy();\n break;\n case TreeView.TypesHierarchy:\n valid = (this.#rootNodes.length > 0);\n break;\n case TreeView.AggregationHierarchy:\n default:\n valid = (this.#rootNodes.length > 0);\n break;\n }\n return valid;\n }\n\n #validateMetaModelForStoreysHierarchy(level = 0, ctx: any, buildingNode: any) {\n // ctx = ctx || {\n // foundIFCBuildingStoreys: false\n // };\n // const dataObjectType = dataObject.type;\n // const children = dataObject.children;\n // if (dataObjectType === \"IfcBuilding\") {\n // buildingNode = true;\n // } else if (dataObjectType === \"IfcBuildingStorey\") {\n // if (!buildingNode) {\n // errors.push(\"Can't build storeys hierarchy: IfcBuildingStorey found without parent IfcBuilding\");\n // return false;\n // }\n // ctx.foundIFCBuildingStoreys = true;\n // }\n // if (children) {\n // for (let i = 0, len = children.length; i < len; i++) {\n // const aggregatedDataObject = children[i];\n // if (!this.#validateMetaModelForStoreysHierarchy(aggregatedDataObject, errors, level + 1, ctx, buildingNode)) {\n // return false;\n // }\n // }\n // }\n // if (level === 0) {\n // if (!ctx.foundIFCBuildingStoreys) {\n // // errors.push(\"Can't build storeys hierarchy: no IfcBuildingStoreys found\");\n // }\n // }\n return true;\n }\n\n #createEnabledNodes(): void {\n if (this.#pruneEmptyNodes) {\n this.#findEmptyNodes();\n }\n switch (this.#hierarchy) {\n case TreeView.GroupsHierarchy:\n this.#buildGroupsNodes();\n if (this.#rootNodes.length === 0) {\n this.error(\"Failed to build hierarchy TreeView.GroupsHierarchy\");\n }\n break;\n case TreeView.TypesHierarchy:\n this.#buildTypesNodes();\n break;\n case TreeView.AggregationHierarchy:\n default:\n this.#buildAggregationNodes();\n }\n if (this.#sortNodes) {\n this.#doSortNodes();\n }\n this.#synchNodesToEntities();\n this.#createNodeElements();\n this.expandToDepth(this.#autoExpandDepth);\n }\n\n #createDisabledNodes(): void { // Creates empty HTML nodes for data graph roots\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n const dataObjectType = dataObject.type;\n const name = dataObject.name;\n const rootName = (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : `${dataObjectType}`; // TODO: type is a number - needs to be human-readable\n const ul = document.createElement('ul');\n const li = document.createElement('li');\n ul.appendChild(li);\n this.#containerElement.appendChild(ul);\n this.#rootElement = ul;\n const switchElement = document.createElement('a');\n switchElement.href = '#';\n switchElement.textContent = '!';\n switchElement.classList.add('warn');\n switchElement.classList.add('warning');\n li.appendChild(switchElement);\n const span = document.createElement('span');\n span.textContent = rootName;\n li.appendChild(span);\n }\n }\n }\n\n #findEmptyNodes(): void {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#findEmptyNodes2(dataObject);\n }\n }\n }\n\n #findEmptyNodes2(dataObject: DataObject): number {\n const viewer = this.#viewer;\n const scene = viewer.scene;\n const aggregations = dataObject.related[this.#linkType];\n const objectId = dataObject.id;\n const viewObject = scene.objects[objectId];\n let sceneObjectCounts = 0;\n if (viewObject) {\n sceneObjectCounts++;\n }\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n const aggregatedCount = this.#findEmptyNodes2(aggregatedDataObject);\n this.#dataObjectSceneObjectCounts[aggregatedDataObject.id] = aggregatedCount;\n sceneObjectCounts += aggregatedCount;\n }\n }\n this.#dataObjectSceneObjectCounts[dataObject.id] = sceneObjectCounts;\n return sceneObjectCounts;\n }\n\n #buildGroupsNodes(): void {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildGroupsNodes2(dataObject, [], null, null, null);\n }\n }\n }\n\n #buildGroupsNodes2(\n dataObject: DataObject,\n pathNodes: TreeViewNode[],\n buildingNode: TreeViewNode | null,\n storeyNode: TreeViewNode | null,\n typeNodes: { [key: number]: TreeViewNode } | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name;\n const aggregations = dataObject.related[this.#linkType];\n\n if (pathNodes.length < this.#groupTypes.length) {\n const groupType = this.#groupTypes[pathNodes.length];\n if (pathNodes.length === 0) {\n if (type === groupType) {\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: this.#rootName || ((name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : type),\n type,\n parentNode: null,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n pathNodes.push(node);\n this.#rootNodes.push(node);\n this.#objectNodes[node.objectId] = node;\n }\n } else {\n if (type === groupType) {\n const parentNode = pathNodes[pathNodes.length - 1];\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : `${type}`,\n type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n parentNode.childNodes.push(node);\n pathNodes.push(node);\n this.#objectNodes[node.objectId] = node;\n }\n }\n } else {\n\n const parentNode = pathNodes[pathNodes.length - 1];\n const viewObjects = this.view.objects;\n const viewObject = viewObjects[objectId];\n\n // TODO: makes assumptions about leaves having ViewObjects; can be more flexible\n // TODO: Only makes nodes for objects that have geometric representations, ie. ViewObjects\n\n if (viewObject) { // Grouped leaf nodes, only for nodes that have ViewObjects\n typeNodes = typeNodes || {};\n let typeNode: TreeViewNode = typeNodes[type];\n if (!typeNode) {\n const typeNodeObjectId = parentNode.objectId + \".\" + type;\n const typeNodeNodeId = typeNodeObjectId;\n typeNode = {\n nodeId: typeNodeNodeId,\n objectId: typeNodeObjectId,\n title: `${type}`,\n type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n parentNode.childNodes.push(typeNode);\n this.#objectNodes[typeNodeObjectId] = typeNode;\n typeNodes[type] = typeNode;\n }\n const leafNode: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : \"\" + type,\n type,\n parentNode: typeNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n typeNode.childNodes.push(leafNode);\n this.#objectNodes[leafNode.objectId] = leafNode;\n }\n }\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildGroupsNodes2(aggregatedDataObject, pathNodes, buildingNode, storeyNode, typeNodes);\n }\n }\n }\n\n #buildTypesNodes() {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildTypesNodes2(dataObject, null, null);\n }\n }\n }\n\n #buildTypesNodes2(dataObject: DataObject, rootNode: TreeViewNode | null, typeNodes: { [key: string | number]: TreeViewNode } | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name;\n const aggregations = dataObject.related[this.#linkType];\n\n // if (dataObject.id === this.#rootdataObject.id) {\n // rootNode = {\n // nodeId: objectId,\n // objectId: objectId,\n // title: this.#rootName || ((name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\")\n // ? name\n // : type),\n // type: type,\n // parentNode: null,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // this.#rootNodes.push(rootNode);\n // this.#objectNodes[rootNode.objectId] = rootNode;\n // typeNodes = {};\n // } else {\n // if (rootNode) {\n // const objects = this.#viewer.scene.objects;\n // const object = objects[objectId];\n // if (object) {\n // let typeNode = typeNodes[type];\n // if (!typeNode) {\n // typeNode = {\n // nodeId: rootNode.objectId + \".\" + type,\n // objectId: rootNode.objectId + \".\" + type,\n // title: `${type}`,\n // type: type,\n // parentNode: rootNode,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // rootNode.childNodes.push(typeNode);\n // this.#objectNodes[typeNode.objectId] = typeNode;\n // typeNodes[type] = typeNode;\n // }\n // const node: TreeViewNode = {\n // nodeId: objectId,\n // objectId: objectId,\n // title: (name && name !== \"\" && name !== \"Default\")\n // ? name\n // : `${type}`,\n // type: type,\n // parentNode: typeNode,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // typeNode.childNodes.push(node);\n // this.#objectNodes[node.objectId] = node;\n // }\n // }\n // }\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildTypesNodes2(aggregatedDataObject, rootNode, typeNodes);\n }\n }\n }\n\n #buildAggregationNodes() {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildAggregationNodes2(dataObject, null);\n }\n }\n }\n\n #buildAggregationNodes2(dataObject: DataObject, parentNode: TreeViewNode | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name || type;\n const aggregations = dataObject.related[this.#linkType];\n\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId: objectId,\n title: (!parentNode)\n ? (this.#rootName || name)\n : (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\")\n ? name\n : type,\n type: type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n if (parentNode) {\n parentNode.childNodes.push(node);\n } else {\n this.#rootNodes.push(node);\n }\n this.#objectNodes[node.objectId] = node;\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildAggregationNodes2(aggregatedDataObject, node);\n }\n }\n }\n\n #doSortNodes() {\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n this.#sortChildNodes(rootNode);\n }\n }\n\n #sortChildNodes(node: TreeViewNode) {\n // const childNodes = node.childNodes;\n // if (!childNodes || childNodes.length === 0) {\n // return;\n // }\n // if (this.#hierarchy === \"storeys\" && node.type === \"IfcBuilding\") {\n // // Assumes that childNodes of an IfcBuilding will always be IfcBuildingStoreys\n // childNodes.sort(this.#getSpatialSortFunc());\n // } else {\n // childNodes.sort(this.#alphaSortFunc);\n // }\n // for (let i = 0, len = childNodes.length; i < len; i++) {\n // const node = childNodes[i];\n // this.#sortChildNodes(node);\n // }\n }\n\n #getSpatialSortFunc() { // Creates cached sort func with Viewer in scope\n // const viewer = this.#viewer;\n // const scene = viewer.scene;\n // const camera = scene.camera;\n // const metaScene = viewer.metaScene;\n // return this.#spatialSortFunc || (this.#spatialSortFunc = (node1, node2) => {\n // if (!node1.aabb || !node2.aabb) {\n // // Sorting on lowest point of the AABB is likely more more robust when objects could overlap storeys\n // if (!node1.aabb) {\n // node1.aabb = scene.getAABB(metaScene.getObjectIDsInSubtree(node1.objectId));\n // }\n // if (!node2.aabb) {\n // node2.aabb = scene.getAABB(metaScene.getObjectIDsInSubtree(node2.objectId));\n // }\n // }\n // let idx = 0;\n // if (camera.xUp) {\n // idx = 0;\n // } else if (camera.yUp) {\n // idx = 1;\n // } else {\n // idx = 2;\n // }\n // if (node1.aabb[idx] > node2.aabb[idx]) {\n // return -1;\n // }\n // if (node1.aabb[idx] < node2.aabb[idx]) {\n // return 1;\n // }\n // return 0;\n // });\n }\n\n #alphaSortFunc(node1: TreeViewNode, node2: TreeViewNode): number {\n const title1 = node1.title.toUpperCase(); // FIXME: Should be case sensitive?\n const title2 = node2.title.toUpperCase();\n if (title1 < title2) {\n return -1;\n }\n if (title1 > title2) {\n return 1;\n }\n return 0;\n }\n\n #synchNodesToEntities(): void {\n const objectIds = Object.keys(this.data.objects);\n const dataObjects = this.data.objects;\n const viewObjects = this.view.objects;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const objectId = objectIds[i];\n const dataObject = dataObjects[objectId];\n if (dataObject) {\n const node = this.#objectNodes[objectId];\n if (node) {\n const viewObject = viewObjects[objectId];\n if (viewObject) {\n const visible = viewObject.visible;\n node.numViewObjects = 1;\n node.xrayed = viewObject.xrayed;\n if (visible) {\n node.numVisibleViewObjects = 1;\n node.checked = true;\n } else {\n node.numVisibleViewObjects = 0;\n node.checked = false;\n }\n let parentNode = node.parentNode; // Synch parents\n while (parentNode) {\n parentNode.numViewObjects++;\n if (visible) {\n parentNode.numVisibleViewObjects++;\n parentNode.checked = true;\n }\n parentNode = parentNode.parentNode;\n }\n }\n }\n }\n }\n }\n\n #withNodeTree(node: TreeViewNode, callback: (arg0: TreeViewNode) => void) {\n callback(node);\n const childNodes = node.childNodes;\n if (!childNodes) {\n return;\n }\n for (let i = 0, len = childNodes.length; i < len; i++) {\n this.#withNodeTree(childNodes[i], callback);\n }\n }\n\n #createNodeElements(): void {\n if (this.#rootNodes.length === 0) {\n return;\n }\n const rootNodeElements = this.#rootNodes.map((rootNode) => {\n return this.#createNodeElement(rootNode);\n });\n const ul = document.createElement('ul');\n rootNodeElements.forEach((nodeElement) => {\n ul.appendChild(nodeElement);\n });\n this.#containerElement.appendChild(ul);\n this.#rootElement = ul;\n }\n\n #createNodeElement(node: TreeViewNode): HTMLElement {\n const nodeElement = document.createElement('li');\n //const nodeId = this.#objectToNodeID(node.objectId);\n const nodeId = node.nodeId;\n if (node.xrayed) {\n nodeElement.classList.add('xrayed-node');\n }\n nodeElement.id = 'node-' + nodeId;\n if (node.childNodes.length > 0) {\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.createElement('a');\n switchElement.href = '#';\n switchElement.id = switchElementId;\n switchElement.textContent = '+';\n switchElement.classList.add('plus');\n switchElement.addEventListener('click', this.#switchExpandHandler);\n nodeElement.appendChild(switchElement);\n }\n const checkbox = document.createElement('input');\n checkbox.id = nodeId;\n checkbox.type = \"checkbox\";\n checkbox.checked = node.checked;\n // @ts-ignore\n checkbox.style[\"pointer-events\"] = \"all\";\n // @ts-ignore\n checkbox.addEventListener(\"change\", this.#checkboxChangeHandler);\n nodeElement.appendChild(checkbox);\n const span = document.createElement('span');\n span.textContent = node.title;\n nodeElement.appendChild(span);\n span.oncontextmenu = (e: MouseEvent) => {\n this.onContextMenu.dispatch(this, {\n event: e,\n treeView: this,\n treeViewNode: node\n });\n e.preventDefault();\n };\n span.onclick = (e: MouseEvent) => {\n this.onNodeTitleClicked.dispatch(this, {\n event: e,\n treeView: this,\n treeViewNode: node\n });\n e.preventDefault();\n };\n return nodeElement;\n }\n\n #expandSwitchElement(switchElement: HTMLElement): void {\n const parentElement = switchElement.parentElement;\n if (!parentElement) {\n return;\n }\n const expanded = parentElement.getElementsByTagName('li')[0];\n if (expanded) {\n return;\n }\n const nodeId = parentElement.id.replace('node-', '');\n const objectId = nodeId;\n const switchNode = this.#objectNodes[objectId];\n const childNodes = switchNode.childNodes;\n const nodeElements = childNodes.map((node) => {\n return this.#createNodeElement(node);\n });\n const ul = document.createElement('ul');\n nodeElements.forEach((nodeElement) => {\n ul.appendChild(nodeElement);\n });\n parentElement.appendChild(ul);\n switchElement.classList.remove('plus');\n switchElement.classList.add('minus');\n switchElement.textContent = '-';\n switchElement.removeEventListener('click', this.#switchExpandHandler);\n switchElement.addEventListener('click', this.#switchCollapseHandler);\n }\n\n #collapseNode(objectId: string): void {\n const nodeId = objectId;\n const switchElementId = `switch-${nodeId}`;\n const switchElement = document.getElementById(switchElementId);\n if (!switchElement) {\n return;\n }\n this.#collapseSwitchElement(switchElement);\n }\n\n #collapseSwitchElement(switchElement: HTMLElement): void {\n if (!switchElement) {\n return;\n }\n const parent = switchElement.parentElement;\n if (!parent) {\n return;\n }\n const ul = parent.querySelector('ul');\n if (!ul) {\n return;\n }\n parent.removeChild(ul);\n switchElement.classList.remove('minus');\n switchElement.classList.add('plus');\n switchElement.textContent = '+';\n switchElement.removeEventListener('click', this.#switchCollapseHandler);\n switchElement.addEventListener('click', this.#switchExpandHandler);\n }\n}\n\n"], - "mappings": "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AAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,M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OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACpE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACxE,oBAAkB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACxE,oBAAkB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAClE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACpE,oBAAkB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAChF,oBAAkB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACxE,oBAAkB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACxE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC1D,oBAAkB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC5D,oBAAkB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC5D,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,mBAAmB;AAAA,EACzB;AACA,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACvF,qBAAmB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACnF,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACnF,qBAAmB,iCAAiC,EAAE,MAAM,GAAG,OAAO,iCAAiC;AACvG,qBAAmB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACvF,qBAAmB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC/E,qBAAmB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACzE,qBAAmB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC3E,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AAC3F,qBAAmB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AACrF,qBAAmB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACvF,qBAAmB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AACrF,qBAAmB,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AAC3F,qBAAmB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AACrF,qBAAmB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACvF,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/D,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC3E,qBAAmB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACzE,qBAAmB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACzE,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC3E,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,gCAAgC,EAAE,MAAM,GAAG,OAAO,gCAAgC;AACrG,qBAAmB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC3E,qBAAmB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACrE,qBAAmB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC3E,qBAAmB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACnF,qBAAmB,oCAAoC,EAAE,MAAM,GAAG,OAAO,oCAAoC;AAC7G,qBAAmB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC7E,qBAAmB,sCAAsC,EAAE,MAAM,GAAG,OAAO,sCAAsC;AACjH,qBAAmB,0CAA0C,EAAE,MAAM,GAAG,OAAO,0CAA0C;AACzH,qBAAmB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACvD,qBAAmB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC/E,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC/E,qBAAmB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACvE,qBAAmB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC7E,qBAAmB,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AACzF,qBAAmB,kCAAkC,EAAE,MAAM,GAAG,OAAO,kCAAkC;AACzG,qBAAmB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACjF,qBAAmB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC7E,qBAAmB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjE,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,wBAAwB;AAAA,EAC9B;AACA,0BAAwB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC5D,0BAAwB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC5D,UAAQ,0BAA0B;AAAA,EAClC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,UAAQ,wBAAwB;AAAA,EAChC,MAAM,sCAAsC;AAAA,EAC5C;AACA,wCAAsC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClF,wCAAsC,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAChG,wCAAsC,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACxF,wCAAsC,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC5E,wCAAsC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACtF,wCAAsC,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACtE,wCAAsC,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC1E,wCAAsC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACtF,wCAAsC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpF,wCAAsC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClF,UAAQ,wCAAwC;AAAA,EAChD,MAAM,+BAA+B;AAAA,EACrC;AACA,iCAA+B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACnE,iCAA+B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC3E,iCAA+B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC/E,iCAA+B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACvE,iCAA+B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC7E,iCAA+B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC3E,UAAQ,iCAAiC;AAAA,EACzC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACxD,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,wBAAsB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACxD,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC5E,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,4BAA0B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACpE,4BAA0B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACpE,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACzD,2BAAyB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC7D,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvE,+BAA6B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACrF,+BAA6B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC/D,+BAA6B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC7D,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACvF,+BAA6B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACnE,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACpF,4BAA0B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACtF,4BAA0B,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AAClG,4BAA0B,yCAAyC,EAAE,MAAM,GAAG,OAAO,yCAAyC;AAC9H,4BAA0B,0CAA0C,EAAE,MAAM,GAAG,OAAO,0CAA0C;AAChI,4BAA0B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACpF,4BAA0B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACtF,4BAA0B,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AAClG,4BAA0B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAChF,4BAA0B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAClF,4BAA0B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACxF,4BAA0B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAChF,4BAA0B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAClF,4BAA0B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACxF,4BAA0B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACpE,4BAA0B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACpE,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACvD,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,yBAAuB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACzD,yBAAuB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACvD,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACvE,yBAAuB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC7E,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,wBAAwB;AAAA,EAC9B;AACA,0BAAwB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAChE,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC1D,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACpE,UAAQ,0BAA0B;AAAA,EAClC,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACrE,+BAA6B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACvF,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvE,+BAA6B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACnF,+BAA6B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACnE,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvE,+BAA6B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC3F,+BAA6B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvE,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACnE,+BAA6B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC7E,+BAA6B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC/E,+BAA6B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACnE,+BAA6B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvE,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK;AACzD,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjF,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,yCAAyC;AAAA,EAC/C;AACA,2CAAyC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrF,2CAAyC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACzF,2CAAyC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACzF,2CAAyC,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACnG,2CAAyC,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACjG,2CAAyC,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC7F,2CAAyC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrF,2CAAyC,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACrG,2CAAyC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvF,2CAAyC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvF,2CAAyC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrF,UAAQ,2CAA2C;AAAA,EACnD,MAAM,qCAAqC;AAAA,EAC3C;AACA,uCAAqC,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC3E,uCAAqC,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACvF,uCAAqC,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACzF,uCAAqC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACrF,uCAAqC,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AACnE,uCAAqC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnF,uCAAqC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjF,UAAQ,uCAAuC;AAAA,EAC/C,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACxF,4BAA0B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACxF,4BAA0B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACpF,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK;AACrD,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC3F,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,+BAA+B;AAAA,EACrC;AACA,iCAA+B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACzE,iCAA+B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACzE,iCAA+B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACjE,iCAA+B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC7E,iCAA+B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC3E,UAAQ,iCAAiC;AAAA,EACzC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC3D,6BAA2B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACrE,6BAA2B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC3E,6BAA2B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC/D,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,6BAA2B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC7D,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC5D,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,mCAAmC;AAAA,EACzC;AACA,qCAAmC,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACrF,qCAAmC,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC3E,qCAAmC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/E,qCAAmC,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACnF,qCAAmC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjF,qCAAmC,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACvF,qCAAmC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjF,qCAAmC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/E,UAAQ,qCAAqC;AAAA,EAC7C,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,wCAAwC,EAAE,MAAM,GAAG,OAAO,wCAAwC;AAC/H,+BAA6B,uCAAuC,EAAE,MAAM,GAAG,OAAO,uCAAuC;AAC7H,+BAA6B,6CAA6C,EAAE,MAAM,GAAG,OAAO,6CAA6C;AACzI,+BAA6B,2CAA2C,EAAE,MAAM,GAAG,OAAO,2CAA2C;AACrI,+BAA6B,6BAA6B,EAAE,MAAM,GAAG,OAAO,6BAA6B;AACzG,+BAA6B,sCAAsC,EAAE,MAAM,GAAG,OAAO,sCAAsC;AAC3H,+BAA6B,6BAA6B,EAAE,MAAM,GAAG,OAAO,6BAA6B;AACzG,+BAA6B,8CAA8C,EAAE,MAAM,GAAG,OAAO,8CAA8C;AAC3I,+BAA6B,4BAA4B,EAAE,MAAM,GAAG,OAAO,4BAA4B;AACvG,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,8BAA8B,EAAE,MAAM,GAAG,OAAO,8BAA8B;AACpG,wBAAsB,4BAA4B,EAAE,MAAM,GAAG,OAAO,4BAA4B;AAChG,wBAAsB,6BAA6B,EAAE,MAAM,GAAG,OAAO,6BAA6B;AAClG,wBAAsB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACpF,wBAAsB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACtE,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,eAAe;AAAA,EACrB;AACA,iBAAe,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AACvF,iBAAe,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACzE,iBAAe,oCAAoC,EAAE,MAAM,GAAG,OAAO,oCAAoC;AACzG,iBAAe,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC3E,iBAAe,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACzD,iBAAe,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACzD,iBAAe,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACnE,iBAAe,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC7D,iBAAe,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC3D,UAAQ,iBAAiB;AAAA,EACzB,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC5E,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC5D,oBAAkB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC1D,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,mCAAmC;AAAA,EACzC;AACA,qCAAmC,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACvF,qCAAmC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjF,qCAAmC,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC3E,qCAAmC,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC7E,qCAAmC,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC/F,qCAAmC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjF,qCAAmC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/E,UAAQ,qCAAqC;AAAA,EAC7C,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACzD,uBAAqB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACrD,uBAAqB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACvE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC5E,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAChE,4BAA0B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC9E,4BAA0B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAClF,4BAA0B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAChF,4BAA0B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC9E,4BAA0B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC5E,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACvE,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC/D,uBAAqB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC7D,uBAAqB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC7D,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,mBAAmB;AAAA,EACzB;AACA,qBAAmB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACnE,qBAAmB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjE,qBAAmB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC3D,qBAAmB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACrE,qBAAmB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjE,qBAAmB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/D,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACvE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,6BAA2B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACrE,6BAA2B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACzF,6BAA2B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC3E,6BAA2B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC/E,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACvE,uBAAqB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACrE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACzE,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC1E,wBAAsB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAClF,wBAAsB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACtE,wBAAsB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AAC1F,wBAAsB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAClF,wBAAsB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACpF,wBAAsB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACpF,wBAAsB,+BAA+B,EAAE,MAAM,GAAG,OAAO,+BAA+B;AACtG,wBAAsB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC9E,wBAAsB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAClF,wBAAsB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC5E,wBAAsB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC1E,wBAAsB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACxE,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACzE,uBAAqB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACzE,uBAAqB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACjF,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC5E,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC9E,kBAAgB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC5E,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACxE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,UAAQ,2BAA2B;AAAA,EACnC,MAAM,8BAA8B;AAAA,EACpC;AACA,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC1E,UAAQ,gCAAgC;AAAA,EACxC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACzF,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACrF,6BAA2B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACrF,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACnF,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,wBAAwB;AAAA,EAC9B;AACA,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC9E,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACpE,UAAQ,0BAA0B;AAAA,EAClC,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,uBAAqB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC/D,uBAAqB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACzF,uBAAqB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC7E,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACxD,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAClD,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC1D,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAClD,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACrE,6BAA2B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACnE,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,aAAa;AAAA,EACnB;AACA,eAAa,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC7C,UAAQ,eAAe;AAAA,EACvB,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACxD,oBAAkB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACxD,oBAAkB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACxD,oBAAkB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC1D,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpD,oBAAkB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACxD,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,iBAAiB;AAAA,EACvB;AACA,mBAAiB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACrE,mBAAiB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACjE,mBAAiB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACvE,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACnE,mBAAiB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACzE,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,oBAAoB;AAAA,EAC1B;AACA,sBAAoB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC5D,sBAAoB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC5D,sBAAoB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACxD,sBAAoB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACxD,sBAAoB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACpE,sBAAoB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACtD,sBAAoB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACxD,sBAAoB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAClE,sBAAoB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAChE,UAAQ,sBAAsB;AAAA,EAC9B,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC5E,oBAAkB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AAClF,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,kCAAkC;AAAA,EACxC;AACA,oCAAkC,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACpE,oCAAkC,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtE,oCAAkC,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtE,oCAAkC,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChF,oCAAkC,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9E,UAAQ,oCAAoC;AAAA,EAC5C,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACjE,2BAAyB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC/D,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,wBAAwB;AAAA,EAC9B;AACA,0BAAwB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC1E,0BAAwB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAClE,0BAAwB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAChF,0BAAwB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACxE,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACpE,UAAQ,0BAA0B;AAAA,EAClC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACtD,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACvD,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,yBAAuB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACzD,yBAAuB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACvD,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC7E,yBAAuB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACvE,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACzD,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,iBAAiB;AAAA,EACvB;AACA,mBAAiB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACnE,mBAAiB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACnD,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,qBAAqB;AAAA,EAC3B;AACA,uBAAqB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACzE,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACzE,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,uBAAqB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC7D,uBAAqB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC3D,uBAAqB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACnE,uBAAqB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACjE,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,mBAAmB;AAAA,EACzB;AACA,qBAAmB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACrD,qBAAmB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACnD,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,8BAA8B;AAAA,EACpC;AACA,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC5E,gCAA8B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9D,gCAA8B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACtE,gCAA8B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9D,gCAA8B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC5E,gCAA8B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC1E,UAAQ,gCAAgC;AAAA,EACxC,MAAM,wBAAwB;AAAA,EAC9B;AACA,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACxF,0BAAwB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAClE,0BAAwB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC1E,0BAAwB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAClE,0BAAwB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACtE,0BAAwB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACpE,UAAQ,0BAA0B;AAAA,EAClC,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACrF,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,UAAQ,+BAA+B;AAAA,EACvC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC1D,wBAAsB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACxE,wBAAsB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACxE,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC5D,wBAAsB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACxE,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,UAAQ,wBAAwB;AAAA,EAChC,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpF,8BAA4B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChF,8BAA4B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxF,8BAA4B,gCAAgC,EAAE,MAAM,GAAG,OAAO,gCAAgC;AAC9G,8BAA4B,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC9F,8BAA4B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpE,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACpE,kBAAgB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACtE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,mBAAmB;AAAA,EACzB;AACA,qBAAmB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC3D,qBAAmB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC7D,qBAAmB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/D,qBAAmB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACjE,qBAAmB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC/D,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC1D,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC1E,kBAAgB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAClF,kBAAgB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC1E,kBAAgB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAClF,kBAAgB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACpE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACzD,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACzD,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC7D,2BAAyB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC3D,2BAAyB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC/D,2BAAyB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC/D,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC1D,4BAA0B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC5D,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC1D,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC1D,4BAA0B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC1D,4BAA0B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACxE,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC/D,+BAA6B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACrE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACnE,6BAA2B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACrF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACnE,6BAA2B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACrF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,YAAY;AAAA,EAClB;AACA,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC5D,cAAY,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxD,cAAY,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9D,cAAY,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACtD,cAAY,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxE,cAAY,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC5D,cAAY,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAChD,cAAY,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9D,cAAY,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpE,cAAY,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxE,cAAY,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxE,cAAY,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChE,cAAY,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtE,cAAY,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9D,cAAY,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AAC5E,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxD,cAAY,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1E,cAAY,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AACpF,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1D,UAAQ,cAAc;AAAA,EACtB,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC1E,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACpE,kBAAgB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAClE,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,YAAY;AAAA,EAClB;AACA,cAAY,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC1C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,UAAQ,cAAc;AAAA,EACtB,MAAM,cAAc;AAAA,EACpB;AACA,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACxD,gBAAc,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACpD,gBAAc,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACpD,gBAAc,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC5D,gBAAc,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAClE,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9C,gBAAc,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9C,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC5C,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9C,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC5C,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClD,gBAAc,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACpD,gBAAc,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACpD,gBAAc,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC9D,gBAAc,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACxD,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,gBAAc,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9C,gBAAc,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC9C,gBAAc,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChD,UAAQ,gBAAgB;AAAA,EACxB,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5D,8BAA4B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9D,8BAA4B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAClE,8BAA4B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAChE,8BAA4B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5D,8BAA4B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpF,8BAA4B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACtE,8BAA4B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAChE,8BAA4B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9E,8BAA4B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAChE,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,mBAAmB;AAAA,EACzB;AACA,qBAAmB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACzD,qBAAmB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACzD,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC5D,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC5D,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACtE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACtE,oBAAkB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACtE,oBAAkB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACtE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AAC5E,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAClE,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC/F,+BAA6B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC/E,+BAA6B,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AAC7F,+BAA6B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC3F,+BAA6B,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AAC7F,+BAA6B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACvF,+BAA6B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACzF,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACjF,yBAAuB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACrF,yBAAuB,iCAAiC,EAAE,MAAM,GAAG,OAAO,iCAAiC;AAC3G,yBAAuB,kCAAkC,EAAE,MAAM,GAAG,OAAO,kCAAkC;AAC7G,yBAAuB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACvF,UAAQ,yBAAyB;AAAA,EACjC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAClD,kBAAgB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAChD,kBAAgB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACtD,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAChD,oBAAkB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAChD,oBAAkB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAChD,oBAAkB,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK;AAC9C,oBAAkB,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK;AAC9C,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACjF,yBAAuB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACzE,yBAAuB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC7E,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,yBAAuB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC7E,yBAAuB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC3E,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,iBAAiB;AAAA,EACvB;AACA,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACjE,2BAAyB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACzD,2BAAyB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC/E,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,iBAAiB;AAAA,EACvB;AACA,mBAAiB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC7E,mBAAiB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACrF,mBAAiB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AACnF,mBAAiB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC7E,mBAAiB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC7E,mBAAiB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACvE,mBAAiB,4BAA4B,EAAE,MAAM,GAAG,OAAO,4BAA4B;AAC3F,mBAAiB,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AACrF,mBAAiB,8BAA8B,EAAE,MAAM,GAAG,OAAO,8BAA8B;AAC/F,mBAAiB,2BAA2B,EAAE,MAAM,GAAG,OAAO,2BAA2B;AACzF,mBAAiB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACjE,mBAAiB,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC/E,mBAAiB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACzE,mBAAiB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACjF,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,aAAa;AAAA,EACnB;AACA,eAAa,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACvD,eAAa,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACrD,eAAa,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACjD,eAAa,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACnE,eAAa,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACjE,UAAQ,eAAe;AAAA,EACvB,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACzF,6BAA2B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACrF,6BAA2B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC7D,6BAA2B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC/E,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AACnF,+BAA6B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACrF,+BAA6B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC/D,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,eAAe;AAAA,EACrB;AACA,iBAAe,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACvD,iBAAe,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACvD,iBAAe,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC/C,UAAQ,iBAAiB;AAAA,EACzB,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AACtD,wBAAsB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC5D,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,wBAAsB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC9E,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC9D,wBAAsB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC5D,wBAAsB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC5E,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACrE,6BAA2B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC7E,6BAA2B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACjE,6BAA2B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACvF,6BAA2B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC3E,6BAA2B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACzE,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACpE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAClD,oBAAkB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAChD,oBAAkB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACtD,oBAAkB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAChE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,YAAY;AAAA,EAClB;AACA,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,cAAY,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC9C,cAAY,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK;AACxC,cAAY,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC5C,UAAQ,cAAc;AAAA,EACtB,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC7D,2BAAyB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACjE,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AACzF,2BAAyB,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC3F,2BAAyB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC/E,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,2BAAyB,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAC/E,2BAAyB,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACrF,2BAAyB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACjF,2BAAyB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACzE,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC7D,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,0BAA0B;AAAA,EAChC;AACA,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,4BAA0B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAClE,4BAA0B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC9E,4BAA0B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAChF,4BAA0B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACpF,4BAA0B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AACxF,4BAA0B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACtE,UAAQ,4BAA4B;AAAA,EACpC,MAAM,8BAA8B;AAAA,EACpC;AACA,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACpE,gCAA8B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAClE,gCAA8B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAChE,gCAA8B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC5E,gCAA8B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC1E,UAAQ,gCAAgC;AAAA,EACxC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC7D,yBAAuB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACjE,yBAAuB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC7D,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAM,kBAAkB;AAAA,EACxB;AACA,oBAAkB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACpE,oBAAkB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC9D,oBAAkB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AAC1E,oBAAkB,gCAAgC,EAAE,MAAM,GAAG,OAAO,gCAAgC;AACpG,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpE,8BAA4B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACtE,8BAA4B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9E,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAChE,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,sBAAsB;AAAA,EAC5B;AACA,wBAAsB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC1D,wBAAsB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACpE,wBAAsB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAClE,UAAQ,wBAAwB;AAAA,EAChC,MAAM,YAAY;AAAA,EAClB;AACA,cAAY,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpE,cAAY,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC9E,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxE,cAAY,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AAClF,cAAY,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxE,cAAY,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AAClF,cAAY,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1E,cAAY,yBAAyB,EAAE,MAAM,GAAG,OAAO,yBAAyB;AAChF,cAAY,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1E,cAAY,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxD,cAAY,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACtD,cAAY,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9D,cAAY,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAClE,cAAY,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChE,cAAY,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxD,cAAY,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpE,cAAY,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC9E,cAAY,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AAClF,cAAY,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpE,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChE,cAAY,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACtD,cAAY,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC5D,cAAY,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtE,cAAY,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChE,cAAY,+BAA+B,EAAE,MAAM,GAAG,OAAO,+BAA+B;AAC5F,cAAY,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACpD,cAAY,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxD,cAAY,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1D,UAAQ,cAAc;AAAA,EACtB,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,8BAA4B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1F,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,iBAAiB;AAAA,EACvB;AACA,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,mBAAiB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACnD,mBAAiB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AACnE,mBAAiB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC3D,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACzE,mBAAiB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACrD,mBAAiB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACzD,mBAAiB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACvD,mBAAiB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACrD,mBAAiB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC3D,mBAAiB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACrD,mBAAiB,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACzE,mBAAiB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACrE,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,mBAAiB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AACjE,mBAAiB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC3D,mBAAiB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACzD,mBAAiB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC/D,mBAAiB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC7D,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,6BAA6B;AAAA,EACnC;AACA,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AACjE,+BAA6B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC3E,+BAA6B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACzE,UAAQ,+BAA+B;AAAA,EACvC,MAAM,gBAAgB;AAAA,EACtB;AACA,kBAAgB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AACxD,kBAAgB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AAC1D,kBAAgB,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAClD,kBAAgB,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAClE,kBAAgB,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAChE,kBAAgB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC9D,kBAAgB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC5D,UAAQ,kBAAkB;AAAA,EAC1B,MAAM,yBAAyB;AAAA,EAC/B;AACA,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACnF,2BAAyB,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAC7E,2BAAyB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACnF,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACnF,2BAAyB,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACnE,2BAAyB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACvE,2BAAyB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACrE,UAAQ,2BAA2B;AAAA,EACnC,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtF,8BAA4B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpF,8BAA4B,uBAAuB,EAAE,MAAM,GAAG,OAAO,uBAAuB;AAC5F,8BAA4B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1F,8BAA4B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAClE,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,8BAA4B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAClF,8BAA4B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9E,8BAA4B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtF,8BAA4B,kBAAkB,EAAE,MAAM,GAAG,OAAO,kBAAkB;AAClF,8BAA4B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtF,8BAA4B,gBAAgB,EAAE,MAAM,GAAG,OAAO,gBAAgB;AAC9E,8BAA4B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AAChF,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,2BAA2B;AAAA,EACjC;AACA,6BAA2B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC3D,6BAA2B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC/D,6BAA2B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AAC7D,6BAA2B,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC/D,6BAA2B,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AACzD,6BAA2B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACvE,UAAQ,6BAA6B;AAAA,EACrC,MAAM,+BAA+B;AAAA,EACrC;AACA,iCAA+B,YAAY,EAAE,MAAM,GAAG,OAAO,YAAY;AACzE,iCAA+B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACvF,iCAA+B,QAAQ,EAAE,MAAM,GAAG,OAAO,QAAQ;AACjE,iCAA+B,OAAO,EAAE,MAAM,GAAG,OAAO,OAAO;AAC/D,iCAA+B,iBAAiB,EAAE,MAAM,GAAG,OAAO,iBAAiB;AACnF,iCAA+B,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AACrE,iCAA+B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AAC3F,iCAA+B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AAC3E,UAAQ,iCAAiC;AAAA,EACzC,MAAM,4BAA4B;AAAA,EAClC;AACA,8BAA4B,eAAe,EAAE,MAAM,GAAG,OAAO,eAAe;AAC5E,8BAA4B,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC9F,8BAA4B,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AAClG,8BAA4B,wBAAwB,EAAE,MAAM,GAAG,OAAO,wBAAwB;AAC9F,8BAA4B,sBAAsB,EAAE,MAAM,GAAG,OAAO,sBAAsB;AAC1F,8BAA4B,mBAAmB,EAAE,MAAM,GAAG,OAAO,mBAAmB;AACpF,8BAA4B,oBAAoB,EAAE,MAAM,GAAG,OAAO,oBAAoB;AACtF,8BAA4B,qBAAqB,EAAE,MAAM,GAAG,OAAO,qBAAqB;AACxF,8BAA4B,0BAA0B,EAAE,MAAM,GAAG,OAAO,0BAA0B;AAClG,8BAA4B,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AAC1E,8BAA4B,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACxE,UAAQ,8BAA8B;AAAA,EACtC,MAAM,uBAAuB;AAAA,EAC7B;AACA,yBAAuB,SAAS,EAAE,MAAM,GAAG,OAAO,SAAS;AAC3D,yBAAuB,WAAW,EAAE,MAAM,GAAG,OAAO,WAAW;AAC/D,yBAAuB,UAAU,EAAE,MAAM,GAAG,OAAO,UAAU;AAC7D,yBAAuB,cAAc,EAAE,MAAM,GAAG,OAAO,cAAc;AACrE,yBAAuB,aAAa,EAAE,MAAM,GAAG,OAAO,aAAa;AACnE,UAAQ,yBAAyB;AAAA,EACjC,MAAMC,sBAAqB,cAAc;AAAA,IACvC,YAAY,MAAM,iBAAiB,aAAa;AAC9C,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeA;AAAA,EACvB,MAAMC,oBAAmB,cAAc;AAAA,IACrC,YAAY,SAAS,aAAa,oBAAoB;AACpD,YAAM;AACN,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaA;AAAA,EACrB,MAAMC,wBAAuB,cAAc;AAAA,IACzC,YAAY,sBAAsB,SAAS,qBAAqB,uBAAuB;AACrF,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,UAAU;AACf,WAAK,sBAAsB;AAC3B,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,yBAAwB,cAAc;AAAA,IAC1C,YAAY,MAAM,aAAa,cAAc,WAAW,gBAAgB,gBAAgB;AACtF,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAM,oCAAoC,cAAc;AAAA,IACtD,YAAY,kBAAkB,YAAY,oBAAoB,MAAM,aAAa;AAC/E,YAAM;AACN,WAAK,mBAAmB;AACxB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMC,qBAAoB,cAAc;AAAA,IACtC,YAAY,aAAa,kBAAkB,gBAAgB,eAAe,mBAAmB,MAAM,YAAY;AAC7G,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AACZ,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAM,qCAAqC,cAAc;AAAA,IACvD,YAAY,OAAO,UAAU,MAAM;AACjC,YAAM;AACN,WAAK,QAAQ;AACb,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAM,wCAAwC,cAAc;AAAA,IAC1D,YAAY,oBAAoB,UAAU;AACxC,YAAM;AACN,WAAK,qBAAqB;AAC1B,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAMC,iCAAgC,cAAc;AAAA,IAClD,YAAY,iBAAiB,kBAAkB,aAAa,MAAM;AAChE,YAAM;AACN,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BA;AAAA,EAClC,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,kCAAiCD,sBAAqB;AAAA,IAC1D,YAAY,MAAM,0BAA0B,0BAA0B,0BAA0B,8BAA8B,8BAA8B,8BAA8B;AACxL,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,+BAA+B;AACpC,WAAK,+BAA+B;AACpC,WAAK,+BAA+B;AACpC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BC;AAAA,EACnC,MAAMC,kCAAiCF,sBAAqB;AAAA,IAC1D,YAAY,MAAM,wBAAwB,wBAAwB,wBAAwB;AACxF,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BE;AAAA,EACnC,MAAMC,kCAAiCH,sBAAqB;AAAA,IAC1D,YAAY,MAAM,kBAAkB,kBAAkB,kBAAkB,sBAAsB,sBAAsB,sBAAsB;AACxI,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BG;AAAA,EACnC,MAAMC,yCAAwCD,0BAAyB;AAAA,IACrE,YAAY,MAAM,kBAAkB,kBAAkB,kBAAkB,sBAAsB,sBAAsB,sBAAsB,kBAAkB;AAC1J,YAAM,MAAM,kBAAkB,kBAAkB,kBAAkB,sBAAsB,sBAAsB,oBAAoB;AAClI,WAAK,OAAO;AACZ,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkCC;AAAA,EAC1C,MAAM,wBAAwB,cAAc;AAAA,IAC1C,YAAY,cAAc,gBAAgB,eAAe;AACvD,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkB;AAAA,EAC1B,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,QAAQ,SAAS,aAAa,MAAM;AAC9C,YAAM;AACN,WAAK,SAAS;AACd,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAM,8BAA8B,cAAc;AAAA,IAChD,YAAY,UAAU,QAAQ,OAAO;AACnC,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAM,0CAA0C,cAAc;AAAA,IAC5D,YAAY,cAAc,cAAc;AACtC,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC;AAAA,EAC5C,MAAM,kCAAkC,cAAc;AAAA,IACpD,YAAY,gBAAgB;AAC1B,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B;AAAA,EACpC,MAAM,uCAAuC,cAAc;AAAA,IACzD,YAAY,eAAe;AACzB,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC;AAAA,EACzC,MAAMC,gCAA+B,cAAc;AAAA,IACjD,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBA;AAAA,EACjC,MAAMC,+BAA8B,cAAc;AAAA,IAChD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,oCAAmCD,uBAAsB;AAAA,IAC7D,YAAY,wBAAwB,uBAAuB;AACzD,YAAM;AACN,WAAK,yBAAyB;AAC9B,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BC;AAAA,EACrC,MAAM,kCAAkCD,uBAAsB;AAAA,IAC5D,YAAY,2BAA2B,0BAA0B,eAAe;AAC9E,YAAM;AACN,WAAK,4BAA4B;AACjC,WAAK,2BAA2B;AAChC,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B;AAAA,EACpC,MAAME,sCAAqCF,uBAAsB;AAAA,IAC/D,YAAY,0BAA0B,yBAAyB;AAC7D,YAAM;AACN,WAAK,2BAA2B;AAChC,WAAK,0BAA0B;AAC/B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BE;AAAA,EACvC,MAAMC,uBAAsB,cAAc;AAAA,IACxC,YAAY,MAAM,aAAa,iBAAiB,kBAAkB,eAAe,cAAc,kBAAkB;AAC/G,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAM,6CAA6C,cAAc;AAAA,IAC/D,YAAY,MAAM,aAAa,oBAAoB,oBAAoB,mBAAmB;AACxF,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuC;AAAA,EAC/C,MAAM,gDAAgD,cAAc;AAAA,IAClE,YAAY,sBAAsB,wBAAwB;AACxD,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0CAA0C;AAAA,EAClD,MAAM,kCAAkC,cAAc;AAAA,IACpD,YAAY,MAAM,aAAa,oBAAoB,oBAAoB;AACrE,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B;AAAA,EACpC,MAAM,0CAA0C,cAAc;AAAA,IAC5D,YAAY,YAAY,cAAc,OAAO;AAC3C,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC;AAAA,EAC5C,MAAMC,sBAAqBd,iBAAgB;AAAA,IACzC,YAAY,MAAM,aAAa,cAAc,WAAW,gBAAgB,gBAAgB,UAAU,WAAW;AAC3G,YAAM,MAAM,aAAa,cAAc,WAAW,gBAAgB,cAAc;AAChF,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAec;AAAA,EACvB,MAAMC,iCAAgC,cAAc;AAAA,IAClD,YAAY,sBAAsB,qBAAqB,cAAc,cAAc,YAAY;AAC7F,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BA;AAAA,EAClC,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,MAAM,aAAa;AAC7B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAMC,qCAAoC,cAAc;AAAA,IACtD,YAAY,MAAM,WAAW,kBAAkB;AAC7C,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BA;AAAA,EACtC,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,sBAAsB,wBAAwB;AACxD,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAM,uBAAuB,cAAc;AAAA,IACzC,YAAY,eAAe,eAAe;AACxC,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAMC,wBAAuB,cAAc;AAAA,IACzC,YAAY,UAAU,UAAU,iBAAiB;AAC/C,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,+BAA8B,cAAc;AAAA,IAChD,YAAY,MAAM,UAAU;AAC1B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,iCAAgC,cAAc;AAAA,IAClD,YAAY,gBAAgB,cAAc,cAAc,yBAAyB,kCAAkC,2BAA2B,2BAA2B;AACvK,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,0BAA0B;AAC/B,WAAK,mCAAmC;AACxC,WAAK,4BAA4B;AACjC,WAAK,4BAA4B;AACjC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BA;AAAA,EAClC,MAAM,oCAAoC,cAAc;AAAA,IACtD,YAAY,eAAe,iBAAiB,aAAa;AACvD,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMC,gCAA+B,cAAc;AAAA,IACjD,YAAY,YAAY,MAAM,aAAa,oBAAoB,SAAS,aAAa,OAAO,UAAU,eAAe,SAAS,cAAc,kBAAkB,kBAAkB,WAAW,YAAY,iBAAiB,QAAQ;AAC9N,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,UAAU;AACf,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBA;AAAA,EACjC,MAAMC,4CAA2C,cAAc;AAAA,IAC7D,YAAY,kBAAkB,kBAAkB,kBAAkB;AAChE,YAAM;AACN,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qCAAqCA;AAAA,EAC7C,MAAM,yCAAyC,cAAc;AAAA,IAC3D,YAAY,MAAM,aAAa,2BAA2B,0BAA0B;AAClF,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,4BAA4B;AACjC,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC;AAAA,EAC3C,MAAM,oCAAoCvB,iBAAgB;AAAA,IACxD,YAAY,MAAM,aAAa,cAAc,WAAW,gBAAgB,gBAAgB,YAAY,UAAU,qBAAqB;AACjI,YAAM,MAAM,aAAa,cAAc,WAAW,gBAAgB,cAAc;AAChF,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMwB,8BAA6B,cAAc;AAAA,IAC/C,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,wCAAuCD,sBAAqB;AAAA,IAChE,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCC;AAAA,EACzC,MAAMC,0CAAyCF,sBAAqB;AAAA,IAClE,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCE;AAAA,EAC3C,MAAM,mCAAmCF,sBAAqB;AAAA,IAC5D,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6B;AAAA,EACrC,MAAMG,sCAAqCH,sBAAqB;AAAA,IAC9D,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BG;AAAA,EACvC,MAAMC,qBAAoB,cAAc;AAAA,IACtC,YAAY,SAAS,WAAW,WAAW;AACzC,YAAM;AACN,WAAK,UAAU;AACf,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,qCAAoC,cAAc;AAAA,IACtD,YAAY,WAAW,YAAY;AACjC,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BA;AAAA,EACtC,MAAMC,+BAA8B,cAAc;AAAA,IAChD,YAAY,MAAM,SAAS,WAAW,aAAa,kBAAkB;AACnE,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,UAAU;AACf,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,6BAA4BP,sBAAqB;AAAA,IACrD,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBO;AAAA,EAC9B,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,gBAAgB,qBAAqB,mBAAmB;AAClE,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,sBAAsB;AAC3B,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAMC,uCAAsC,cAAc;AAAA,IACxD,YAAY,wBAAwB,kBAAkB;AACpD,YAAM;AACN,WAAK,yBAAyB;AAC9B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCA;AAAA,EACxC,MAAM,qBAAqB,cAAc;AAAA,IACvC,YAAY,eAAe,iBAAiB,iBAAiB,MAAM,sBAAsB;AACvF,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AACZ,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe;AAAA,EACvB,MAAMC,qBAAoB,cAAc;AAAA,IACtC,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,+CAA8C,cAAc;AAAA,IAChE,YAAY,yBAAyB,oBAAoB;AACvD,YAAM;AACN,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wCAAwCA;AAAA,EAChD,MAAMC,0BAAyB,cAAc;AAAA,IAC3C,YAAY,UAAU,gBAAgB,cAAc;AAClD,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,iBAAiB;AACtB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBA;AAAA,EAC3B,MAAMC,6BAA4B,cAAc;AAAA,IAC9C,YAAY,gBAAgB,cAAc;AACxC,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBA;AAAA,EAC9B,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,aAAa,mBAAmB,gBAAgB,yBAAyB;AACnF,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,0BAA0B;AAC/B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAMC,yBAAwB,cAAc;AAAA,IAC1C,YAAY,WAAW;AACrB,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAMC,+BAA8B,cAAc;AAAA,IAChD,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,4BAA2B,cAAc;AAAA,IAC7C,YAAY,gBAAgB,eAAe;AACzC,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBA;AAAA,EAC7B,MAAM,wCAAwCD,uBAAsB;AAAA,IAClE,YAAY,UAAU,kBAAkB,cAAc,cAAc,cAAc,6BAA6B;AAC7G,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,8BAA8B;AACnC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAM,6CAA6C,gCAAgC;AAAA,IACjF,YAAY,UAAU,kBAAkB,cAAc,cAAc,cAAc,6BAA6B,aAAa,gBAAgB,gBAAgB,iBAAiB,oBAAoB,eAAe,aAAa;AAC3N,YAAM,UAAU,kBAAkB,cAAc,cAAc,cAAc,2BAA2B;AACvG,WAAK,WAAW;AAChB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,8BAA8B;AACnC,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuC;AAAA,EAC/C,MAAME,mBAAkB7B,eAAc;AAAA,IACpC,YAAY,MAAM,aAAa,iBAAiB,kBAAkB,eAAe,cAAc,kBAAkB,WAAW,aAAa,WAAW;AAClJ,YAAM,MAAM,aAAa,iBAAiB,kBAAkB,eAAe,cAAc,gBAAgB;AACzG,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAY6B;AAAA,EACpB,MAAMC,yBAAwB,cAAc;AAAA,IAC1C,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAMC,sBAAqB,cAAc;AAAA,IACvC,YAAY,YAAY,UAAU;AAChC,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeA;AAAA,EACvB,MAAMC,4BAA2B,cAAc;AAAA,IAC7C,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBA;AAAA,EAC7B,MAAMC,sBAAqBjC,eAAc;AAAA,IACvC,YAAY,MAAM,aAAa,iBAAiB,kBAAkB,eAAe,cAAc,kBAAkB,iBAAiB,cAAc,oBAAoB,sBAAsB;AACxL,YAAM,MAAM,aAAa,iBAAiB,kBAAkB,eAAe,cAAc,gBAAgB;AACzG,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,qBAAqB;AAC1B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeiC;AAAA,EACvB,MAAM,qCAAqCN,uBAAsB;AAAA,IAC/D,YAAY,UAAU,sBAAsB,oBAAoB,wBAAwB,yBAAyB,0BAA0B,wBAAwB,yBAAyB,uBAAuB,sBAAsB;AACvO,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,uBAAuB;AAC5B,WAAK,qBAAqB;AAC1B,WAAK,yBAAyB;AAC9B,WAAK,0BAA0B;AAC/B,WAAK,2BAA2B;AAChC,WAAK,yBAAyB;AAC9B,WAAK,0BAA0B;AAC/B,WAAK,wBAAwB;AAC7B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMO,yBAAwB,cAAc;AAAA,IAC1C,YAAY,IAAI,MAAM,aAAa,OAAO,WAAW;AACnD,YAAM;AACN,WAAK,KAAK;AACV,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAMC,qCAAoC,cAAc;AAAA,IACtD,YAAY,MAAM,aAAa,sBAAsB,sBAAsB;AACzE,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BA;AAAA,EACtC,MAAMC,yBAAwB,cAAc;AAAA,IAC1C,YAAY,YAAY,mBAAmB,OAAO,cAAc,kBAAkB,mBAAmB,0BAA0B,cAAc;AAC3I,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,oBAAoB;AACzB,WAAK,QAAQ;AACb,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,oBAAoB;AACzB,WAAK,2BAA2B;AAChC,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAMC,mBAAkB,cAAc;AAAA,IACpC,YAAY,IAAI,YAAY,WAAW,aAAa,cAAc,cAAc,OAAO,WAAW;AAChG,YAAM;AACN,WAAK,KAAK;AACV,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,QAAQ;AACb,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYA;AAAA,EACpB,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,WAAW,iBAAiB,OAAO;AAC7C,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,kBAAkB;AACvB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAMC,6BAA4B,cAAc;AAAA,IAC9C,YAAY,MAAM,aAAa;AAC7B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBA;AAAA,EAC9B,MAAMC,mCAAkCD,qBAAoB;AAAA,IAC1D,YAAY,MAAM,aAAa,MAAM;AACnC,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BC;AAAA,EACpC,MAAMC,0BAAyBxD,YAAW;AAAA,IACxC,YAAY,SAAS,aAAa,oBAAoB,kBAAkB,cAAc,WAAW,MAAM,QAAQ,YAAY,SAAS;AAClI,YAAM,SAAS,aAAa,kBAAkB;AAC9C,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,aAAa;AAClB,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBwD;AAAA,EAC3B,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAM,4BAA4BA,mBAAkB;AAAA,IAClD,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAM,sCAAsC,oBAAoB;AAAA,IAC9D,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAMC,+BAA8BD,mBAAkB;AAAA,IACpD,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBC;AAAA,EAChC,MAAMC,wCAAuC,cAAc;AAAA,IACzD,YAAY,MAAM,aAAa,eAAe,YAAY;AACxD,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCA;AAAA,EACzC,MAAMC,uCAAsCD,gCAA+B;AAAA,IACzE,YAAY,MAAM,aAAa,eAAe,YAAY,SAAS,aAAa,cAAc,aAAa;AACzG,YAAM,MAAM,aAAa,eAAe,UAAU;AAClD,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCC;AAAA,EACxC,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,wCAAuC,cAAc;AAAA,IACzD,YAAY,QAAQ;AAClB,YAAM;AACN,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCA;AAAA,EACzC,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,MAAM,aAAa,iBAAiB;AAC9C,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAM,0CAA0CrB,uBAAsB;AAAA,IACpE,YAAY,UAAU,sBAAsB,YAAY,WAAW,YAAY;AAC7E,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,uBAAuB;AAC5B,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC;AAAA,EAC5C,MAAMsB,uBAAsB,cAAc;AAAA,IACxC,YAAY,aAAa,aAAa;AACpC,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,YAAY,aAAa,mBAAmB;AAC1C,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,qBAAoB,cAAc;AAAA,IACtC,YAAY,MAAM,aAAa;AAC7B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAM,0CAA0C,cAAc;AAAA,IAC5D,YAAY,oBAAoB,mBAAmB,MAAM,aAAa;AACpE,YAAM;AACN,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC;AAAA,EAC5C,MAAMC,2CAA0C,cAAc;AAAA,IAC5D,YAAY,mBAAmB,mBAAmB,MAAM,aAAa,YAAY;AAC/E,YAAM;AACN,WAAK,oBAAoB;AACzB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoCA;AAAA,EAC5C,MAAMC,gCAA+B,cAAc;AAAA,IACjD,YAAY,MAAM,mBAAmB,MAAM;AACzC,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,oBAAoB;AACzB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBA;AAAA,EACjC,MAAMC,yBAAwBd,2BAA0B;AAAA,IACtD,YAAY,MAAM,aAAa,MAAM,WAAW;AAC9C,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBc;AAAA,EAC1B,MAAMC,0BAAyBf,2BAA0B;AAAA,IACvD,YAAY,MAAM,aAAa,MAAM,YAAY;AAC/C,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBe;AAAA,EAC3B,MAAMC,2BAA0BhB,2BAA0B;AAAA,IACxD,YAAY,MAAM,aAAa,MAAM,aAAa;AAChD,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBgB;AAAA,EAC5B,MAAMC,yBAAwBjB,2BAA0B;AAAA,IACtD,YAAY,MAAM,aAAa,MAAM,WAAW;AAC9C,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBiB;AAAA,EAC1B,MAAMC,2BAA0BlB,2BAA0B;AAAA,IACxD,YAAY,MAAM,aAAa,MAAM,aAAa;AAChD,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBkB;AAAA,EAC5B,MAAMC,2BAA0BnB,2BAA0B;AAAA,IACxD,YAAY,MAAM,aAAa,MAAM,aAAa;AAChD,YAAM,MAAM,aAAa,IAAI;AAC7B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBmB;AAAA,EAC5B,MAAM,mCAAmC,cAAc;AAAA,IACrD,YAAY,oBAAoB,mBAAmB,MAAM,aAAa;AACpE,YAAM;AACN,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6B;AAAA,EACrC,MAAMC,uCAAsC,cAAc;AAAA,IACxD,YAAY,uBAAuB,YAAY,YAAY,gBAAgB,oBAAoB,UAAU;AACvG,YAAM;AACN,WAAK,wBAAwB;AAC7B,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCA;AAAA,EACxC,MAAM,sBAAsB,cAAc;AAAA,IACxC,YAAY,iBAAiB,eAAe;AAC1C,YAAM;AACN,WAAK,kBAAkB;AACvB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgB;AAAA,EACxB,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAMC,kCAAiC,cAAc;AAAA,IACnD,YAAY,mBAAmB,aAAa;AAC1C,YAAM;AACN,WAAK,oBAAoB;AACzB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BA;AAAA,EACnC,MAAMC,+BAA8B,cAAc;AAAA,IAChD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,YAAY,eAAe,sBAAsB;AAC/C,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAM,qCAAqCd,sBAAqB;AAAA,IAC9D,YAAY,aAAa,mBAAmB,WAAW,WAAW,UAAU,YAAY,WAAW;AACjG,YAAM,aAAa,iBAAiB;AACpC,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMe,iBAAgB,cAAc;AAAA,IAClC,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,mBAAkBnC,cAAa;AAAA,IACnC,YAAY,UAAU,QAAQ,MAAM;AAClC,YAAM,IAAI,OAAO,CAAC,GAAG,QAAQ;AAC7B,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYmC;AAAA,EACpB,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,YAAY,aAAa,cAAc,YAAY;AACjD,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,2CAA0C,cAAc;AAAA,IAC5D,YAAY,2BAA2B,yBAAyB,oBAAoB,mBAAmB,mBAAmB,sCAAsC;AAC9J,YAAM;AACN,WAAK,4BAA4B;AACjC,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,oBAAoB;AACzB,WAAK,uCAAuC;AAC5C,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoCA;AAAA,EAC5C,MAAMC,wBAAuB,cAAc;AAAA,IACzC,YAAY,sBAAsB,MAAM,aAAa,qBAAqB,8BAA8B;AACtG,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,sBAAsB;AAC3B,WAAK,+BAA+B;AACpC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,uBAAsBT,mBAAkB;AAAA,IAC5C,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM,gBAAgB,0BAA0B,oBAAoB,KAAK;AACzE,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBS;AAAA,EACxB,MAAMC,gCAA+BD,eAAc;AAAA,IACjD,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM,gBAAgB,0BAA0B,oBAAoB,KAAK;AACzE,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBC;AAAA,EACjC,MAAMC,2BAA0BrB,aAAY;AAAA,IAC1C,YAAY,MAAM,aAAa;AAC7B,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBqB;AAAA,EAC5B,MAAMC,0CAAyC,cAAc;AAAA,IAC3D,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCA;AAAA,EAC3C,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,MAAM;AAChB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAMC,iCAAgCD,mBAAkB;AAAA,IACtD,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BC;AAAA,EAClC,MAAMC,sCAAqCD,yBAAwB;AAAA,IACjE,YAAY,MAAM,iBAAiB,UAAU,UAAU;AACrD,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,kBAAkB;AACvB,WAAK,WAAW;AAChB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BC;AAAA,EACvC,MAAMC,uBAAsBhB,mBAAkB;AAAA,IAC5C,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM,gBAAgB,0BAA0B,oBAAoB,KAAK;AACzE,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBgB;AAAA,EACxB,MAAMC,uBAAsBf,uBAAsB;AAAA,IAChD,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBe;AAAA,EACxB,MAAMC,iCAAgCF,eAAc;AAAA,IAClD,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM,gBAAgB,0BAA0B,oBAAoB,KAAK;AACzE,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BE;AAAA,EAClC,MAAMC,yBAAwBlC,sBAAqB;AAAA,IACjD,YAAY,MAAM,MAAM,QAAQ;AAC9B,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBkC;AAAA,EAC1B,MAAMC,iCAAgC,cAAc;AAAA,IAClD,YAAY,2BAA2B,yBAAyB,oBAAoB,mBAAmB;AACrG,YAAM;AACN,WAAK,4BAA4B;AACjC,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BA;AAAA,EAClC,MAAMC,mCAAkC,cAAc;AAAA,IACpD,YAAY,iBAAiB,kBAAkB;AAC7C,YAAM;AACN,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BA;AAAA,EACpC,MAAMC,gCAA+B,cAAc;AAAA,IACjD,YAAY,eAAe;AACzB,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBA;AAAA,EACjC,MAAMC,qCAAoC,cAAc;AAAA,IACtD,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BA;AAAA,EACtC,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,SAAS,SAAS,aAAa,kBAAkB;AAC3D,YAAM;AACN,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAM,uBAAuBvC,sBAAqB;AAAA,IAChD,YAAY,MAAM,eAAe;AAC/B,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAMwC,kBAAiB,cAAc;AAAA,IACnC,YAAY,MAAM,MAAM;AACtB,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWA;AAAA,EACnB,MAAMC,qBAAoB,cAAc;AAAA,IACtC,YAAY,UAAU,WAAW;AAC/B,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,2BAA0BvG,YAAW;AAAA,IACzC,YAAY,SAAS,aAAa,oBAAoB,kBAAkB,kBAAkB,aAAa,yBAAyB,gBAAgB;AAC9I,YAAM,SAAS,aAAa,kBAAkB;AAC9C,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,cAAc;AACnB,WAAK,0BAA0B;AAC/B,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBuG;AAAA,EAC5B,MAAMC,sBAAqB3C,sBAAqB;AAAA,IAC9C,YAAY,MAAM,yBAAyB,WAAW,eAAe;AACnE,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,0BAA0B;AAC/B,WAAK,YAAY;AACjB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe2C;AAAA,EACvB,MAAMC,+BAA8B/C,uBAAsB;AAAA,IACxD,YAAY,MAAM,YAAY,WAAW,aAAa,YAAY,UAAU;AAC1E,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB+C;AAAA,EAChC,MAAMC,oCAAmC,cAAc;AAAA,IACrD,YAAY,QAAQ,kBAAkB;AACpC,YAAM;AACN,WAAK,SAAS;AACd,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BA;AAAA,EACrC,MAAMC,+BAA8B,cAAc;AAAA,IAChD,YAAY,YAAY,WAAW,gBAAgB,eAAe,aAAa,eAAe,YAAY;AACxG,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAM,2CAA2C,cAAc;AAAA,IAC7D,YAAY,WAAW,UAAU,eAAe,gBAAgB,kBAAkB;AAChF,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qCAAqC;AAAA,EAC7C,MAAMC,8BAA6B,cAAc;AAAA,IAC/C,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBA;AAAA,EAC/B,MAAMC,uCAAsCD,sBAAqB;AAAA,IAC/D,YAAY,MAAM,WAAW;AAC3B,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCC;AAAA,EACxC,MAAMC,uBAAsBF,sBAAqB;AAAA,IAC/C,YAAY,aAAa;AACvB,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBE;AAAA,EACxB,MAAMC,0BAAyB,cAAc;AAAA,IAC3C,YAAY,aAAa;AACvB,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBA;AAAA,EAC3B,MAAM,qCAAqCrE,uBAAsB;AAAA,IAC/D,YAAY,UAAU,sBAAsB,cAAc,eAAe,qBAAqB;AAC5F,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,uBAAuB;AAC5B,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMsE,uBAAsB,cAAc;AAAA,IACxC,YAAY,MAAM,aAAa,WAAW,SAAS,oBAAoB,YAAY,uBAAuB,MAAM;AAC9G,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,qBAAqB;AAC1B,WAAK,aAAa;AAClB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAM,2CAA2C,cAAc;AAAA,IAC7D,YAAY,sBAAsB,sBAAsB;AACtD,YAAM;AACN,WAAK,uBAAuB;AAC5B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qCAAqC;AAAA,EAC7C,MAAMC,4BAA2B,cAAc;AAAA,IAC7C,YAAY,YAAY;AACtB,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBA;AAAA,EAC7B,MAAMC,0CAAyCpC,uBAAsB;AAAA,IACnE,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCoC;AAAA,EAC3C,MAAMC,mCAAkC9B,eAAc;AAAA,IACpD,YAAY,gBAAgB,0BAA0B,oBAAoB,OAAO;AAC/E,YAAM,gBAAgB,0BAA0B,oBAAoB,KAAK;AACzE,WAAK,iBAAiB;AACtB,WAAK,2BAA2B;AAChC,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B8B;AAAA,EACpC,MAAMC,2BAA0B,cAAc;AAAA,IAC5C,YAAY,OAAO;AACjB,YAAM;AACN,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAMC,mBAAkBH,kCAAiC;AAAA,IACvD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYG;AAAA,EACpB,MAAM,iCAAiC,cAAc;AAAA,IACnD,YAAY,iBAAiB,eAAe;AAC1C,YAAM;AACN,WAAK,kBAAkB;AACvB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B;AAAA,EACnC,MAAMC,wBAAuBD,WAAU;AAAA,IACrC,YAAY,gBAAgB;AAC1B,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBC;AAAA,EACzB,MAAMC,oCAAmC,cAAc;AAAA,IACrD,YAAY,kBAAkB,iBAAiB;AAC7C,YAAM;AACN,WAAK,mBAAmB;AACxB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BA;AAAA,EACrC,MAAM,2BAA2B7E,uBAAsB;AAAA,IACrD,YAAY,UAAU,WAAW,UAAU,yBAAyB,sBAAsB,mBAAmB,SAAS,wBAAwB;AAC5I,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,0BAA0B;AAC/B,WAAK,uBAAuB;AAC5B,WAAK,oBAAoB;AACzB,WAAK,UAAU;AACf,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,gCAAgCmD,eAAc;AAAA,IAClD,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B;AAAA,EAClC,MAAM,uCAAuC,wBAAwB;AAAA,IACnE,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC;AAAA,EACzC,MAAM,sCAAsC,wBAAwB;AAAA,IAClE,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAM,oCAAoC,wBAAwB;AAAA,IAChE,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAM2B,sCAAqCxD,eAAc;AAAA,IACvD,YAAY,aAAa,aAAa,YAAY;AAChD,YAAM,aAAa,WAAW;AAC9B,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BwD;AAAA,EACvC,MAAMC,oCAAmCzD,eAAc;AAAA,IACrD,YAAY,aAAa,aAAa,OAAO;AAC3C,YAAM,aAAa,WAAW;AAC9B,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6ByD;AAAA,EACrC,MAAMC,yCAAwCF,8BAA6B;AAAA,IACzE,YAAY,aAAa,aAAa,YAAY,aAAa;AAC7D,YAAM,aAAa,aAAa,UAAU;AAC1C,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkCE;AAAA,EAC1C,MAAMC,wBAAuBvB,mBAAkB;AAAA,IAC7C,YAAY,SAAS,SAAS,aAAa,kBAAkB,cAAc,YAAY;AACrF,YAAM,SAAS,SAAS,aAAa,gBAAgB;AACrD,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBuB;AAAA,EACzB,MAAMC,iCAAgCH,4BAA2B;AAAA,IAC/D,YAAY,aAAa,aAAa,OAAO,WAAW;AACtD,YAAM,aAAa,aAAa,KAAK;AACrC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BG;AAAA,EAClC,MAAMC,oCAAmCnG,sBAAqB;AAAA,IAC5D,YAAY,UAAU,eAAe,MAAM,kBAAkB;AAC3D,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BmG;AAAA,EACrC,MAAMC,sBAAqBnH,wBAAuB;AAAA,IAChD,YAAY,MAAM,KAAK,OAAO,MAAM;AAClC,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,MAAM;AACX,WAAK,QAAQ;AACb,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAemH;AAAA,EACvB,MAAMC,4BAA2B7D,aAAY;AAAA,IAC3C,YAAY,MAAM,aAAa,WAAW,eAAe;AACvD,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB6D;AAAA,EAC7B,MAAMC,gCAA+BhE,eAAc;AAAA,IACjD,YAAY,aAAa,aAAa,UAAU,OAAO;AACrD,YAAM,aAAa,WAAW;AAC9B,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBgE;AAAA,EACjC,MAAMC,6BAA4Bf,kCAAiC;AAAA,IACjE,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBe;AAAA,EAC9B,MAAMC,oCAAmCtH,uBAAsB;AAAA,IAC7D,YAAY,wBAAwB,uBAAuB;AACzD,YAAM;AACN,WAAK,yBAAyB;AAC9B,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BsH;AAAA,EACrC,MAAMC,wCAAuCtH,4BAA2B;AAAA,IACtE,YAAY,wBAAwB,uBAAuB,iBAAiB,iBAAiB,iBAAiB;AAC5G,YAAM,wBAAwB,qBAAqB;AACnD,WAAK,yBAAyB;AAC9B,WAAK,wBAAwB;AAC7B,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCsH;AAAA,EACzC,MAAMC,iCAAgCtF,cAAa;AAAA,IACjD,YAAY,YAAY,UAAU,MAAM;AACtC,YAAM,YAAY,QAAQ;AAC1B,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BsF;AAAA,EAClC,MAAMC,gCAA+BvF,cAAa;AAAA,IAChD,YAAY,YAAY,UAAU,MAAM,kBAAkB;AACxD,YAAM,YAAY,QAAQ;AAC1B,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBuF;AAAA,EACjC,MAAMC,uBAAsBzE,sBAAqB;AAAA,IAC/C,YAAY,MAAM,WAAW,YAAY,aAAa;AACpD,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgByE;AAAA,EACxB,MAAMC,8BAA6BvE,eAAc;AAAA,IAC/C,YAAY,aAAa,aAAa,eAAe,UAAU,OAAO;AACpE,YAAM,aAAa,WAAW;AAC9B,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBuE;AAAA,EAC/B,MAAM,wCAAwC,iCAAiC;AAAA,IAC7E,YAAY,MAAM,aAAa,2BAA2B,0BAA0B;AAClF,YAAM,MAAM,aAAa,2BAA2B,wBAAwB;AAC5E,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,4BAA4B;AACjC,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAM,yBAAyB,iCAAiC;AAAA,IAC9D,YAAY,MAAM,aAAa,2BAA2B,0BAA0B;AAClF,YAAM,MAAM,aAAa,2BAA2B,wBAAwB;AAC5E,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,4BAA4B;AACjC,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmB;AAAA,EAC3B,MAAMC,8BAA6B9G,sBAAqB;AAAA,IACtD,YAAY,UAAU,eAAe,MAAM;AACzC,YAAM,UAAU,eAAe,IAAI;AACnC,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB8G;AAAA,EAC/B,MAAM,wCAAwC9E,uBAAsB;AAAA,IAClE,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAM+E,iBAAgBvB,kCAAiC;AAAA,IACrD,YAAY,WAAW,SAAS;AAC9B,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUuB;AAAA,EAClB,MAAMC,sBAAqBD,SAAQ;AAAA,IACjC,YAAY,WAAW,SAAS,cAAc,WAAW;AACvD,YAAM,WAAW,OAAO;AACxB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeC;AAAA,EACvB,MAAM,sCAAsChG,uBAAsB;AAAA,IAChE,YAAY,UAAU,oBAAoB,aAAa,MAAM;AAC3D,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,qBAAqB;AAC1B,WAAK,cAAc;AACnB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAMiG,iBAAgBzB,kCAAiC;AAAA,IACrD,YAAY,QAAQ;AAClB,YAAM;AACN,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUyB;AAAA,EAClB,MAAMC,sBAAqB1B,kCAAiC;AAAA,IAC1D,YAAY,OAAO,aAAa;AAC9B,YAAM;AACN,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe0B;AAAA,EACvB,MAAMC,2BAA0BD,cAAa;AAAA,IAC3C,YAAY,OAAO,aAAa;AAC9B,YAAM,OAAO,WAAW;AACxB,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBC;AAAA,EAC5B,MAAMC,wBAAuBH,SAAQ;AAAA,IACnC,YAAY,QAAQ,aAAa,WAAW;AAC1C,YAAM,MAAM;AACZ,WAAK,SAAS;AACd,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBG;AAAA,EACzB,MAAMC,uCAAsCvD,kCAAiC;AAAA,IAC3E,YAAY,MAAM,iBAAiB,iBAAiB,iBAAiB,qBAAqB,qBAAqB,qBAAqB;AAClI,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCuD;AAAA,EACxC,MAAMC,0BAAyBnF,sBAAqB;AAAA,IAClD,YAAY,MAAM,YAAY;AAC5B,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBmF;AAAA,EAC3B,MAAM,0BAA0BtG,uBAAsB;AAAA,IACpD,YAAY,UAAU,uBAAuB,eAAe,mBAAmB,oBAAoB;AACjG,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,wBAAwB;AAC7B,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,qCAAqCA,uBAAsB;AAAA,IAC/D,YAAY,UAAU,iBAAiB,UAAU,aAAa;AAC5D,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,WAAW;AAChB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAM,oCAAoCuB,sBAAqB;AAAA,IAC7D,YAAY,aAAa,mBAAmB,gBAAgB,WAAW,uBAAuB,uBAAuB,kBAAkB;AACrI,YAAM,aAAa,iBAAiB;AACpC,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,wBAAwB;AAC7B,WAAK,wBAAwB;AAC7B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMgF,2CAA0CpE,0BAAyB;AAAA,IACvE,YAAY,mBAAmB,aAAa,0BAA0B,WAAW,uBAAuB,WAAW;AACjH,YAAM,mBAAmB,WAAW;AACpC,WAAK,oBAAoB;AACzB,WAAK,cAAc;AACnB,WAAK,2BAA2B;AAChC,WAAK,YAAY;AACjB,WAAK,wBAAwB;AAC7B,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoCoE;AAAA,EAC5C,MAAMC,wCAAuCpE,uBAAsB;AAAA,IACjE,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCoE;AAAA,EACzC,MAAMC,8CAA6CF,mCAAkC;AAAA,IACnF,YAAY,mBAAmB,aAAa,eAAe,aAAa,YAAY,uBAAuB;AACzG,YAAM,mBAAmB,aAAa,IAAI,kBAAkB,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI;AACzF,WAAK,oBAAoB;AACzB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuCE;AAAA,EAC/C,MAAMC,yBAAwBF,gCAA+B;AAAA,IAC3D,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBE;AAAA,EAC1B,MAAMC,0BAAyBtG,oBAAmB;AAAA,IAChD,YAAY,mBAAmB,uBAAuB;AACpD,YAAM;AACN,WAAK,oBAAoB;AACzB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBsG;AAAA,EAC3B,MAAMC,2BAA0BJ,gCAA+B;AAAA,IAC7D,YAAY,aAAa,eAAe;AACtC,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBI;AAAA,EAC5B,MAAM,yCAAyC5G,uBAAsB;AAAA,IACnE,YAAY,UAAU,4BAA4B,4BAA4B,4BAA4B,mBAAmB,qBAAqB;AAChJ,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,6BAA6B;AAClC,WAAK,6BAA6B;AAClC,WAAK,6BAA6B;AAClC,WAAK,oBAAoB;AACzB,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC;AAAA,EAC3C,MAAM6G,yBAAwBnD,mBAAkB;AAAA,IAC9C,YAAY,SAAS,SAAS,aAAa,kBAAkB,cAAc;AACzE,YAAM,SAAS,SAAS,aAAa,gBAAgB;AACrD,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBmD;AAAA,EAC1B,MAAMC,gCAA+BxC,eAAc;AAAA,IACjD,YAAY,MAAM,aAAa,WAAW,SAAS,oBAAoB,YAAY,uBAAuB,MAAM,QAAQ;AACtH,YAAM,MAAM,aAAa,WAAW,SAAS,oBAAoB,YAAY,uBAAuB,IAAI;AACxG,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,qBAAqB;AAC1B,WAAK,aAAa;AAClB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBwC;AAAA,EACjC,MAAMC,wBAAuBP,gCAA+B;AAAA,IAC1D,YAAY,MAAM,aAAa,kBAAkB,WAAW;AAC1D,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBO;AAAA,EACzB,MAAMC,+BAA8BD,gBAAe;AAAA,IACjD,YAAY,MAAM,aAAa,kBAAkB,WAAW;AAC1D,YAAM,MAAM,aAAa,kBAAkB,SAAS;AACpD,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBC;AAAA,EAChC,MAAMC,mCAAkCF,gBAAe;AAAA,IACrD,YAAY,MAAM,aAAa,kBAAkB,WAAW,aAAa;AACvE,YAAM,MAAM,aAAa,kBAAkB,SAAS;AACpD,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BE;AAAA,EACpC,MAAMC,mCAAkCH,gBAAe;AAAA,IACrD,YAAY,MAAM,aAAa,kBAAkB,WAAW,UAAU,kBAAkB,mBAAmB,cAAc,qBAAqB,6BAA6B;AACzK,YAAM,MAAM,aAAa,kBAAkB,SAAS;AACpD,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,mBAAmB;AACxB,WAAK,oBAAoB;AACzB,WAAK,eAAe;AACpB,WAAK,sBAAsB;AAC3B,WAAK,8BAA8B;AACnC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BG;AAAA,EACpC,MAAMC,kCAAiCJ,gBAAe;AAAA,IACpD,YAAY,MAAM,aAAa,kBAAkB,WAAW,UAAU,QAAQ,qBAAqB,qBAAqB,oBAAoB;AAC1I,YAAM,MAAM,aAAa,kBAAkB,SAAS;AACpD,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BI;AAAA,EACnC,MAAMC,4BAA2BD,0BAAyB;AAAA,IACxD,YAAY,MAAM,aAAa,kBAAkB,WAAW,UAAU,QAAQ,qBAAqB,qBAAqB,oBAAoB,aAAa,uBAAuB,aAAa,gBAAgB;AAC3M,YAAM,MAAM,aAAa,kBAAkB,WAAW,UAAU,QAAQ,qBAAqB,qBAAqB,kBAAkB;AACpI,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,qBAAqB;AAC1B,WAAK,cAAc;AACnB,WAAK,wBAAwB;AAC7B,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBC;AAAA,EAC7B,MAAMC,2BAA0BhH,oBAAmB;AAAA,IACjD,YAAY,gBAAgB,mBAAmB;AAC7C,YAAM;AACN,WAAK,iBAAiB;AACtB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBgH;AAAA,EAC5B,MAAMC,iBAAgB9C,kCAAiC;AAAA,IACrD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAU8C;AAAA,EAClB,MAAMC,uBAAsBnF,uBAAsB;AAAA,IAChD,YAAY,eAAe,eAAe;AACxC,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBmF;AAAA,EACxB,MAAMC,6CAA4CnG,0BAAyB;AAAA,IACzE,YAAY,MAAM,aAAa,iBAAiB,qBAAqB;AACnE,YAAM,MAAM,aAAa,eAAe;AACxC,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsCmG;AAAA,EAC9C,MAAM,gDAAgD,gCAAgC;AAAA,IACpF,YAAY,UAAU,kBAAkB,cAAc,cAAc,cAAc,6BAA6B,qBAAqB,kBAAkB,uBAAuB,aAAa,qBAAqB,qBAAqB;AAClO,YAAM,UAAU,kBAAkB,cAAc,cAAc,cAAc,2BAA2B;AACvG,WAAK,WAAW;AAChB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,8BAA8B;AACnC,WAAK,sBAAsB;AAC3B,WAAK,mBAAmB;AACxB,WAAK,wBAAwB;AAC7B,WAAK,cAAc;AACnB,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0CAA0C;AAAA,EAClD,MAAMC,6BAA4BnF,SAAQ;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBmF;AAAA,EAC9B,MAAM,oCAAoCjB,gCAA+B;AAAA,IACvE,YAAY,cAAc;AACxB,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMkB,sBAAqBnC,qBAAoB;AAAA,IAC7C,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAemC;AAAA,EACvB,MAAMC,yBAAwB5B,SAAQ;AAAA,IACpC,YAAY,aAAa,aAAa;AACpC,YAAM,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC;AAClC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkB4B;AAAA,EAC1B,MAAMC,oCAAmCtG,eAAc;AAAA,IACrD,YAAY,aAAa,aAAa,UAAU;AAC9C,YAAM,aAAa,WAAW;AAC9B,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BsG;AAAA,EACrC,MAAMC,iBAAgBrD,kCAAiC;AAAA,IACrD,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUqD;AAAA,EAClB,MAAMC,oCAAmClH,qBAAoB;AAAA,IAC3D,YAAY,MAAM,aAAa,eAAe,gBAAgB,SAAS,OAAO;AAC5E,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,iBAAiB;AACtB,WAAK,UAAU;AACf,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BkH;AAAA,EACrC,MAAMC,yBAAwBrE,mBAAkB;AAAA,IAC9C,YAAY,SAAS,SAAS,aAAa,kBAAkB,OAAO,QAAQ,kBAAkB,OAAO;AACnG,YAAM,SAAS,SAAS,aAAa,gBAAgB;AACrD,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,QAAQ;AACb,WAAK,SAAS;AACd,WAAK,mBAAmB;AACxB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBqE;AAAA,EAC1B,MAAMC,sBAAqBxB,gCAA+B;AAAA,IACxD,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAewB;AAAA,EACvB,MAAMC,yBAAwBzB,gCAA+B;AAAA,IAC3D,YAAY,SAAS,SAAS;AAC5B,YAAM;AACN,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkByB;AAAA,EAC1B,MAAMC,kBAAiB1B,gCAA+B;AAAA,IACpD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAW0B;AAAA,EACnB,MAAMC,yBAAwBD,UAAS;AAAA,IACrC,YAAY,YAAY,gBAAgB;AACtC,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBC;AAAA,EAC1B,MAAMC,2BAA0BF,UAAS;AAAA,IACvC,YAAY,cAAc,iBAAiB,iBAAiB;AAC1D,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBE;AAAA,EAC5B,MAAMC,qBAAoBf,SAAQ;AAAA,IAChC,YAAY,SAAS;AACnB,YAAM;AACN,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAce;AAAA,EACtB,MAAMC,sCAAqC1B,mBAAkB;AAAA,IAC3D,YAAY,aAAa,eAAe,UAAU,mBAAmB;AACnE,YAAM,aAAa,aAAa;AAChC,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,WAAW;AAChB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B0B;AAAA,EACvC,MAAMC,6BAA4BxH,mBAAkB;AAAA,IAClD,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBwH;AAAA,EAC9B,MAAMC,gCAA+BzH,mBAAkB;AAAA,IACrD,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyByH;AAAA,EACjC,MAAM,qCAAqC,oBAAoB;AAAA,IAC7D,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAM,uCAAuC,oBAAoB;AAAA,IAC/D,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC;AAAA,EACzC,MAAMC,mCAAkCpH,0BAAyB;AAAA,IAC/D,YAAY,MAAM,aAAa,iBAAiB;AAC9C,YAAM,MAAM,aAAa,eAAe;AACxC,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BoH;AAAA,EACpC,MAAMC,iCAAgC7F,mBAAkB;AAAA,IACtD,YAAY,MAAM,aAAa,iBAAiB,iBAAiB,MAAM;AACrE,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B6F;AAAA,EAClC,MAAMC,+BAA8BrG,SAAQ;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBqG;AAAA,EAChC,MAAMC,oCAAmC/F,mBAAkB;AAAA,IACzD,YAAY,MAAM,aAAa,mBAAmB,sBAAsB;AACtE,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6B+F;AAAA,EACrC,MAAMC,8BAA6BhG,mBAAkB;AAAA,IACnD,YAAY,MAAM,aAAa,YAAY,MAAM;AAC/C,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBgG;AAAA,EAC/B,MAAMC,mCAAkCjG,mBAAkB;AAAA,IACxD,YAAY,MAAM,aAAa,WAAW,mBAAmB;AAC3D,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BiG;AAAA,EACpC,MAAMC,kCAAiCJ,uBAAsB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BI;AAAA,EACnC,MAAMC,gCAA+BnG,mBAAkB;AAAA,IACrD,YAAY,MAAM,aAAa,cAAc,MAAM;AACjD,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBmG;AAAA,EACjC,MAAMC,+BAA8BpG,mBAAkB;AAAA,IACpD,YAAY,MAAM,aAAa,gBAAgB,eAAe,YAAY,cAAc,aAAa;AACnG,YAAM,MAAM,WAAW;AACvB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBoG;AAAA,EAChC,MAAMC,gCAA+BtB,4BAA2B;AAAA,IAC9D,YAAY,aAAa,aAAa,UAAU,MAAM,MAAM;AAC1D,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBsB;AAAA,EACjC,MAAMC,8BAA6B7E,eAAc;AAAA,IAC/C,YAAY,MAAM,aAAa,WAAW,SAAS,oBAAoB,YAAY,uBAAuB,MAAM,UAAU,QAAQ;AAChI,YAAM,MAAM,aAAa,WAAW,SAAS,oBAAoB,YAAY,uBAAuB,IAAI;AACxG,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,qBAAqB;AAC1B,WAAK,aAAa;AAClB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AACZ,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB6E;AAAA,EAC/B,MAAMC,8CAA6CL,0BAAyB;AAAA,IAC1E,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,iCAAiC;AACtG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,kCAAkC;AACvC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuCK;AAAA,EAC/C,MAAMC,yBAAwB/G,SAAQ;AAAA,IACpC,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkB+G;AAAA,EAC1B,MAAMC,uCAAsCJ,wBAAuB;AAAA,IACjE,YAAY,aAAa,aAAa,UAAU,MAAM,MAAM,gBAAgB;AAC1E,YAAM,aAAa,aAAa,UAAU,MAAM,IAAI;AACpD,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCI;AAAA,EACxC,MAAMC,2BAA0B/C,gCAA+B;AAAA,IAC7D,YAAY,YAAY,eAAe,uBAAuB;AAC5D,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,gBAAgB;AACrB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB+C;AAAA,EAC5B,MAAM,6BAA6BR,0BAAyB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,YAAY,eAAe,YAAY;AAC5G,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,aAAa;AAClB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAMS,mCAAkChD,gCAA+B;AAAA,IACrE,YAAY,cAAc;AACxB,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BgD;AAAA,EACpC,MAAMC,wCAAuC3G,kCAAiC;AAAA,IAC5E,YAAY,MAAM,WAAW,WAAW,WAAW;AACjD,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC2G;AAAA,EACzC,MAAMC,uBAAsBlD,gCAA+B;AAAA,IACzD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBkD;AAAA,EACxB,MAAM,2BAA2BX,0BAAyB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,eAAe,YAAY,aAAa;AAC7F,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,sBAAsBA,0BAAyB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,WAAW,uBAAuB;AAC7G,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,YAAY;AACjB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgB;AAAA,EACxB,MAAM,sCAAsCA,0BAAyB;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,mBAAmB,gBAAgB,mBAAmB,cAAc,cAAc,6BAA6B,8BAA8B,2BAA2B,iBAAiB;AACpQ,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,oBAAoB;AACzB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,8BAA8B;AACnC,WAAK,+BAA+B;AACpC,WAAK,4BAA4B;AACjC,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAMY,sCAAqC3G,yBAAwB;AAAA,IACjE,YAAY,MAAM,cAAc,cAAc,cAAc,eAAe,eAAe,eAAe;AACvG,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B2G;AAAA,EACvC,MAAMC,sCAAqC5G,yBAAwB;AAAA,IACjE,YAAY,MAAM,cAAc,cAAc,cAAc;AAC1D,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B4G;AAAA,EACvC,MAAMC,6CAA4C7G,yBAAwB;AAAA,IACxE,YAAY,MAAM,eAAe,eAAe,eAAe,0BAA0B,0BAA0B,0BAA0B;AAC3I,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsC6G;AAAA,EAC9C,MAAMC,uDAAsDD,qCAAoC;AAAA,IAC9F,YAAY,MAAM,eAAe,eAAe,eAAe,0BAA0B,0BAA0B,0BAA0B,YAAY;AACvJ,YAAM,MAAM,eAAe,eAAe,eAAe,0BAA0B,0BAA0B,wBAAwB;AACrI,WAAK,OAAO;AACZ,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,2BAA2B;AAChC,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gDAAgDC;AAAA,EACxD,MAAMC,sCAAqC/G,yBAAwB;AAAA,IACjE,YAAY,MAAM,QAAQ,QAAQ,QAAQ,SAAS,SAAS,SAAS;AACnE,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B+G;AAAA,EACvC,MAAMC,6CAA4CD,8BAA6B;AAAA,IAC7E,YAAY,MAAM,QAAQ,QAAQ,QAAQ,SAAS,SAAS,SAAS,eAAe;AAClF,YAAM,MAAM,QAAQ,QAAQ,QAAQ,SAAS,SAAS,OAAO;AAC7D,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsCC;AAAA,EAC9C,MAAM,uCAAuC,4BAA4B;AAAA,IACvE,YAAY,aAAa,mBAAmB,gBAAgB,WAAW,uBAAuB,uBAAuB,kBAAkB,oBAAoB,mBAAmB,kBAAkB,kBAAkB,iBAAiB,cAAc,cAAc,uBAAuB,uBAAuB,wBAAwB,wBAAwB,wBAAwB,wBAAwB,yBAAyB,oBAAoB,oBAAoB;AAC5c,YAAM,aAAa,mBAAmB,gBAAgB,WAAW,uBAAuB,uBAAuB,gBAAgB;AAC/H,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,wBAAwB;AAC7B,WAAK,wBAAwB;AAC7B,WAAK,mBAAmB;AACxB,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,wBAAwB;AAC7B,WAAK,wBAAwB;AAC7B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC;AAAA,EACzC,MAAM,4CAA4C,+BAA+B;AAAA,IAC/E,YAAY,aAAa,mBAAmB,gBAAgB,WAAW,uBAAuB,uBAAuB,kBAAkB,oBAAoB,mBAAmB,kBAAkB,kBAAkB,iBAAiB,cAAc,cAAc,uBAAuB,uBAAuB,wBAAwB,wBAAwB,wBAAwB,wBAAwB,yBAAyB,oBAAoB,oBAAoB,YAAY,YAAY,qBAAqB,qBAAqB;AAC9gB,YAAM,aAAa,mBAAmB,gBAAgB,WAAW,uBAAuB,uBAAuB,kBAAkB,oBAAoB,mBAAmB,kBAAkB,kBAAkB,iBAAiB,cAAc,cAAc,uBAAuB,uBAAuB,wBAAwB,wBAAwB,wBAAwB,wBAAwB,yBAAyB,oBAAoB,kBAAkB;AACtc,WAAK,cAAc;AACnB,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,wBAAwB;AAC7B,WAAK,wBAAwB;AAC7B,WAAK,mBAAmB;AACxB,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,wBAAwB;AAC7B,WAAK,wBAAwB;AAC7B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsC;AAAA,EAC9C,MAAMC,oBAAmBlE,SAAQ;AAAA,IAC/B,YAAY,WAAW,SAAS,YAAY;AAC1C,YAAM,WAAW,OAAO;AACxB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAakE;AAAA,EACrB,MAAMC,oBAAmB1D,gCAA+B;AAAA,IACtD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAa0D;AAAA,EACrB,MAAMC,kCAAiC3G,wBAAuB;AAAA,IAC5D,YAAY,eAAe,cAAc,eAAe,oBAAoB,2BAA2B,kBAAkB,gBAAgB,mBAAmB,mBAAmB;AAC7K,YAAM,aAAa;AACnB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,qBAAqB;AAC1B,WAAK,4BAA4B;AACjC,WAAK,mBAAmB;AACxB,WAAK,iBAAiB;AACtB,WAAK,oBAAoB;AACzB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B2G;AAAA,EACnC,MAAMC,2BAA0BV,eAAc;AAAA,IAC5C,YAAY,WAAW,UAAU;AAC/B,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBU;AAAA,EAC5B,MAAMC,2BAA0BX,eAAc;AAAA,IAC5C,YAAY,WAAW,QAAQ,aAAa,YAAY,UAAU;AAChE,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,SAAS;AACd,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBW;AAAA,EAC5B,MAAMC,yBAAwBJ,YAAW;AAAA,IACvC,YAAY,YAAY,UAAU;AAChC,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBI;AAAA,EAC1B,MAAMC,6BAA4B3C,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,OAAO,aAAa,cAAc,iBAAiB,cAAc,kBAAkB,eAAe,UAAU,aAAa,oBAAoB;AAC3L,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,WAAW;AAChB,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB2C;AAAA,EAC9B,MAAM,4BAA4B,8BAA8B;AAAA,IAC9D,YAAY,MAAM,QAAQ,MAAM,gBAAgB;AAC9C,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAMC,wBAAuBhE,gCAA+B;AAAA,IAC1D,YAAY,SAAS,WAAW,MAAM;AACpC,YAAM;AACN,WAAK,UAAU;AACf,WAAK,YAAY;AACjB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBgE;AAAA,EACzB,MAAMC,kCAAiCD,gBAAe;AAAA,IACpD,YAAY,SAAS,WAAW,MAAM,QAAQ,cAAc;AAC1D,YAAM,SAAS,WAAW,IAAI;AAC9B,WAAK,UAAU;AACf,WAAK,YAAY;AACjB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BC;AAAA,EACnC,MAAMC,gCAA+B9C,4BAA2B;AAAA,IAC9D,YAAY,aAAa,aAAa,UAAU,YAAY,SAAS,MAAM,YAAY;AACrF,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,UAAU;AACf,WAAK,OAAO;AACZ,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB8C;AAAA,EACjC,MAAM,oCAAoC,4BAA4B;AAAA,IACpE,YAAY,cAAc,oBAAoB;AAC5C,YAAM,YAAY;AAClB,WAAK,eAAe;AACpB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMC,uBAAsBlD,qBAAoB;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB;AAC5F,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBkD;AAAA,EACxB,MAAMC,wBAAuBD,eAAc;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK;AACrH,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,eAAe;AACtF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBC;AAAA,EACzB,MAAMC,6BAA4BjD,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,OAAO,aAAa,cAAc,iBAAiB,cAAc,YAAY,aAAa,oBAAoB;AAC5J,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBiD;AAAA,EAC9B,MAAMC,mBAAkBtE,gCAA+B;AAAA,IACrD,YAAY,aAAa,WAAW;AAClC,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYsE;AAAA,EACpB,MAAMC,uBAAsBzD,SAAQ;AAAA,IAClC,YAAY,YAAY;AACtB,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgByD;AAAA,EACxB,MAAMC,mCAAkCjC,0BAAyB;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,aAAa,iBAAiB,kBAAkB,kBAAkB,oBAAoB,qBAAqB,oBAAoB,qBAAqB,kBAAkB;AAC3N,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,qBAAqB;AAC1B,WAAK,sBAAsB;AAC3B,WAAK,qBAAqB;AAC1B,WAAK,sBAAsB;AAC3B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BiC;AAAA,EACpC,MAAMC,kCAAiClC,0BAAyB;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,eAAe,eAAe,YAAY,gBAAgB,kBAAkB;AACjI,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BkC;AAAA,EACnC,MAAMC,wBAAuBN,gBAAe;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,kBAAkB,eAAe,0BAA0B,UAAU;AAC1L,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,GAAG;AAC/G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,2BAA2B;AAChC,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBM;AAAA,EACzB,MAAMC,6BAA4BvD,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,OAAO,aAAa,cAAc,iBAAiB,cAAc,YAAY;AAC3H,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBuD;AAAA,EAC9B,MAAM,qCAAqC,wBAAwB;AAAA,IACjE,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMC,+BAA8B5E,gCAA+B;AAAA,IACjE,YAAY,eAAe,iBAAiB;AAC1C,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB4E;AAAA,EAChC,MAAM,wCAAwC,wBAAwB;AAAA,IACpE,YAAY,MAAM,QAAQ,MAAM,iBAAiB,eAAe;AAC9D,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,kBAAkB;AACvB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAM,6BAA6B5E,gCAA+B;AAAA,IAChE,YAAY,MAAM,oBAAoB;AACpC,YAAM;AACN,WAAK,OAAO;AACZ,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAM6E,2BAA0BrD,cAAa;AAAA,IAC3C,YAAY,UAAU,MAAM;AAC1B,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBqD;AAAA,EAC5B,MAAMC,6BAA4BtD,cAAa;AAAA,IAC7C,YAAY,UAAU,cAAc;AAClC,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBsD;AAAA,EAC9B,MAAMC,6BAA4BvD,cAAa;AAAA,IAC7C,YAAY,UAAU,MAAM,cAAc;AACxC,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBuD;AAAA,EAC9B,MAAMC,0BAAyBhF,gCAA+B;AAAA,IAC5D,YAAY,UAAU,cAAc,eAAe;AACjD,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBgF;AAAA,EAC3B,MAAMC,2BAA0BvB,YAAW;AAAA,IACzC,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBuB;AAAA,EAC5B,MAAMC,wBAAuBlF,gCAA+B;AAAA,IAC1D,YAAY,QAAQ,MAAM,MAAM,MAAM;AACpC,YAAM;AACN,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBkF;AAAA,EACzB,MAAMC,2BAA0B/E,mBAAkB;AAAA,IAChD,YAAY,aAAa,eAAe,WAAW;AACjD,YAAM,aAAa,aAAa;AAChC,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB+E;AAAA,EAC5B,MAAMC,6BAA4BhE,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,OAAO,OAAO,eAAe,OAAO,sBAAsB,oBAAoB;AAC5H,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,gBAAgB;AACrB,WAAK,QAAQ;AACb,WAAK,uBAAuB;AAC5B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBgE;AAAA,EAC9B,MAAMC,2BAA0B3D,UAAS;AAAA,IACvC,YAAY,aAAa;AACvB,YAAM;AACN,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB2D;AAAA,EAC5B,MAAMC,4CAA2CtF,gCAA+B;AAAA,IAC9E,YAAY,OAAO,OAAO,aAAa,OAAO;AAC5C,YAAM;AACN,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qCAAqCsF;AAAA,EAC7C,MAAMC,8CAA6CD,oCAAmC;AAAA,IACpF,YAAY,OAAO,OAAO,aAAa,OAAO;AAC5C,YAAM,OAAO,OAAO,aAAa,KAAK;AACtC,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuCC;AAAA,EAC/C,MAAMC,wDAAuDD,sCAAqC;AAAA,IAChG,YAAY,OAAO,OAAO,aAAa,OAAO,QAAQ;AACpD,YAAM,OAAO,OAAO,aAAa,KAAK;AACtC,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iDAAiDC;AAAA,EACzD,MAAMC,8CAA6CH,oCAAmC;AAAA,IACpF,YAAY,OAAO,OAAO,aAAa,OAAO,OAAO;AACnD,YAAM,OAAO,OAAO,aAAa,KAAK;AACtC,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uCAAuCG;AAAA,EAC/C,MAAMC,wDAAuDD,sCAAqC;AAAA,IAChG,YAAY,OAAO,OAAO,aAAa,OAAO,OAAO,QAAQ,QAAQ;AACnE,YAAM,OAAO,OAAO,aAAa,OAAO,KAAK;AAC7C,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iDAAiDC;AAAA,EACzD,MAAMC,6BAA4BvE,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,QAAQ;AACtD,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBuE;AAAA,EAC9B,MAAMC,wBAAuB7G,qBAAoB;AAAA,IAC/C,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB6G;AAAA,EACzB,MAAMC,kCAAiC7F,gCAA+B;AAAA,IACpE,YAAY,YAAY,WAAW,aAAa;AAC9C,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B6F;AAAA,EACnC,MAAM,qCAAqCzE,4BAA2B;AAAA,IACpE,YAAY,aAAa,aAAa,UAAU,eAAe,YAAY,QAAQ,WAAW,YAAY,YAAY,cAAc,YAAY,YAAY,YAAY,YAAY,oBAAoB;AACtM,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,SAAS;AACd,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAM,qCAAqCA,4BAA2B;AAAA,IACpE,YAAY,aAAa,aAAa,UAAU,eAAe,WAAW,QAAQ,YAAY,YAAY,cAAc,YAAY,YAAY,oBAAoB;AAClK,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,YAAY;AACjB,WAAK,SAAS;AACd,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAM0E,2BAA0B9F,gCAA+B;AAAA,IAC7D,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB8F;AAAA,EAC5B,MAAMC,qBAAoB7C,eAAc;AAAA,IACtC,YAAY,oBAAoB;AAC9B,YAAM;AACN,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAc6C;AAAA,EACtB,MAAMC,kBAAiBhG,gCAA+B;AAAA,IACpD,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWgG;AAAA,EACnB,MAAMC,8BAA6BhB,mBAAkB;AAAA,IACnD,YAAY,cAAc,eAAe,iBAAiB;AACxD,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBgB;AAAA,EAC/B,MAAM,yBAAyBjG,gCAA+B;AAAA,IAC5D,YAAY,YAAY,QAAQ;AAC9B,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmB;AAAA,EAC3B,MAAM,0BAA0B,6BAA6B;AAAA,IAC3D,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB;AAAA,EAC5B,MAAM,oCAAoC,oBAAoB;AAAA,IAC5D,YAAY,MAAM,QAAQ,MAAM,gBAAgB,MAAM;AACpD,YAAM,MAAM,QAAQ,MAAM,cAAc;AACxC,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,iBAAiB;AACtB,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMkG,sBAAqBlG,gCAA+B;AAAA,IACxD,YAAY,iBAAiB;AAC3B,YAAM;AACN,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAekG;AAAA,EACvB,MAAMC,iCAAgC5D,0BAAyB;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,aAAa,iBAAiB,gBAAgB,oBAAoB,kBAAkB,eAAe,cAAc,iBAAiB,iBAAiB,aAAa,kBAAkB;AACvO,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,mBAAmB;AACxB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B4D;AAAA,EAClC,MAAMC,gCAA+B7D,0BAAyB;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,gBAAgB,YAAY,eAAe,kBAAkB;AAC9H,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,aAAa;AAClB,WAAK,gBAAgB;AACrB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB6D;AAAA,EACjC,MAAMC,sBAAqBjC,gBAAe;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,eAAe,kBAAkB,0BAA0B,UAAU;AAC1L,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,GAAG;AAC/G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,mBAAmB;AACxB,WAAK,2BAA2B;AAChC,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeiC;AAAA,EACvB,MAAM,6BAA6BrG,gCAA+B;AAAA,IAChE,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAMsG,uCAAsCvE,qBAAoB;AAAA,IAC9D,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCuE;AAAA,EACxC,MAAMC,0CAAyCvE,wBAAuB;AAAA,IACpE,YAAY,MAAM;AAChB,YAAM,IAAI;AACV,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCuE;AAAA,EAC3C,MAAMC,qBAAoB1F,SAAQ;AAAA,IAChC,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAc0F;AAAA,EACtB,MAAMC,4BAA2BlE,0BAAyB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,qBAAqB,YAAY;AACtF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,sBAAsB;AAC3B,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBkE;AAAA,EAC7B,MAAMC,wBAAuBtC,gBAAe;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,GAAG;AAC/G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBsC;AAAA,EACzB,MAAMC,8BAA6BjD,YAAW;AAAA,IAC5C,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBiD;AAAA,EAC/B,MAAMC,8BAA6BxF,4BAA2B;AAAA,IAC5D,YAAY,aAAa,aAAa,UAAU,WAAW,WAAW;AACpE,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBwF;AAAA,EAC/B,MAAM,4BAA4BrE,0BAAyB;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,2BAA2B;AAChG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,4BAA4B;AACjC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAMsE,8BAA6BjD,mBAAkB;AAAA,IACnD,YAAY,WAAW,UAAU,mBAAmB,OAAO;AACzD,YAAM,WAAW,QAAQ;AACzB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,oBAAoB;AACzB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBiD;AAAA,EAC/B,MAAMC,kCAAiC9G,gCAA+B;AAAA,IACpE,YAAY,WAAW;AACrB,YAAM;AACN,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B8G;AAAA,EACnC,MAAMC,kCAAiC/G,gCAA+B;AAAA,IACpE,YAAY,qBAAqB,sBAAsB,2BAA2B,cAAc,gBAAgB;AAC9G,YAAM;AACN,WAAK,sBAAsB;AAC3B,WAAK,uBAAuB;AAC5B,WAAK,4BAA4B;AACjC,WAAK,eAAe;AACpB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B+G;AAAA,EACnC,MAAM,4CAA4C/G,gCAA+B;AAAA,IAC/E,YAAY,SAAS;AACnB,YAAM;AACN,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsC;AAAA,EAC9C,MAAMgH,+BAA8BhH,gCAA+B;AAAA,IACjE,YAAY,eAAe,OAAO,aAAa;AAC7C,YAAM;AACN,WAAK,gBAAgB;AACrB,WAAK,QAAQ;AACb,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBgH;AAAA,EAChC,MAAM,+BAA+BzE,0BAAyB;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,yBAAyB,oBAAoB,oBAAoB,OAAO,oBAAoB,2BAA2B,wBAAwB,+BAA+B,8BAA8B,uBAAuB,qBAAqB,0BAA0B,qBAAqB,qBAAqB;AACjY,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,0BAA0B;AAC/B,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,QAAQ;AACb,WAAK,qBAAqB;AAC1B,WAAK,4BAA4B;AACjC,WAAK,yBAAyB;AAC9B,WAAK,gCAAgC;AACrC,WAAK,+BAA+B;AACpC,WAAK,wBAAwB;AAC7B,WAAK,sBAAsB;AAC3B,WAAK,2BAA2B;AAChC,WAAK,sBAAsB;AAC3B,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB;AAAA,EACjC,MAAM0E,kCAAiCP,gBAAe;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BO;AAAA,EACnC,MAAMC,0BAAyBD,0BAAyB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,eAAe;AACjJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBC;AAAA,EAC3B,MAAMC,8BAA6BjH,iBAAgB;AAAA,IACjD,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBiH;AAAA,EAC/B,MAAMC,6BAA4BhG,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,cAAc,cAAc,cAAc,iBAAiB,cAAc;AACvH,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBgG;AAAA,EAC9B,MAAMC,6BAA4BjG,4BAA2B;AAAA,IAC3D,YAAY,aAAa,aAAa,UAAU,OAAO,OAAO,WAAW,cAAc,YAAY,UAAU,oBAAoB,oBAAoB;AACnJ,YAAM,aAAa,aAAa,QAAQ;AACxC,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,YAAY;AACjB,WAAK,eAAe;AACpB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,qBAAqB;AAC1B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBiG;AAAA,EAC9B,MAAMC,iBAAgBtB,UAAS;AAAA,IAC7B,YAAY,KAAK,KAAK;AACpB,YAAM;AACN,WAAK,MAAM;AACX,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUsB;AAAA,EAClB,MAAMC,8BAA6BrE,eAAc;AAAA,IAC/C,YAAY,OAAO;AACjB,YAAM;AACN,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBqE;AAAA,EAC/B,MAAMC,mBAAkBvG,qBAAoB;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYuG;AAAA,EACpB,MAAMC,0BAAyBzB,UAAS;AAAA,IACtC,YAAY,YAAY,UAAU,eAAe;AAC/C,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmByB;AAAA,EAC3B,MAAMC,0BAAyB1B,UAAS;AAAA,IACtC,YAAY,YAAY,UAAU,eAAe,cAAc;AAC7D,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmB0B;AAAA,EAC3B,MAAMC,wCAAuCpF,0BAAyB;AAAA,IACpE,YAAY,UAAU,cAAc,MAAM,aAAa,eAAe,eAAe,YAAY,gBAAgB,kBAAkB;AACjI,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCoF;AAAA,EACzC,MAAMC,sBAAqBnG,iBAAgB;AAAA,IACzC,YAAY,SAAS,SAAS,WAAW;AACvC,YAAM,SAAS,OAAO;AACtB,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAemG;AAAA,EACvB,MAAMC,kBAAiBlB,sBAAqB;AAAA,IAC1C,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWkB;AAAA,EACnB,MAAMC,oBAAmBN,WAAU;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaM;AAAA,EACrB,MAAMC,oBAAmBP,WAAU;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB;AAClG,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaO;AAAA,EACrB,MAAMC,oBAAmBR,WAAU;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,UAAU,OAAO,wBAAwB,gBAAgB;AAC1H,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,QAAQ;AACb,WAAK,yBAAyB;AAC9B,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaQ;AAAA,EACrB,MAAM,2BAA2B,6BAA6B;AAAA,IAC5D,YAAY,MAAM,QAAQ,MAAM;AAC9B,YAAM,MAAM,QAAQ,IAAI;AACxB,WAAK,OAAO;AACZ,WAAK,SAAS;AACd,WAAK,OAAO;AACZ,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAMC,wBAAuB1F,0BAAyB;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,eAAe;AACpE,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB0F;AAAA,EACzB,MAAMC,kBAAiBH,YAAW;AAAA,IAChC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,WAAW,KAAK;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWG;AAAA,EACnB,MAAMC,sCAAqCzF,wBAAuB;AAAA,IAChE,YAAY,aAAa,aAAa,UAAU,MAAM,MAAM,eAAe,mBAAmB,mBAAmB;AAC/G,YAAM,aAAa,aAAa,UAAU,MAAM,IAAI;AACpD,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+ByF;AAAA,EACvC,MAAMC,+BAA8BtC,mBAAkB;AAAA,IACpD,YAAY,UAAU,SAAS,SAAS,QAAQ;AAC9C,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBsC;AAAA,EAChC,MAAMC,sCAAqCpD,mBAAkB;AAAA,IAC3D,YAAY,cAAc,IAAI,IAAI,IAAI,IAAI,QAAQ,QAAQ;AACxD,YAAM;AACN,WAAK,eAAe;AACpB,WAAK,KAAK;AACV,WAAK,KAAK;AACV,WAAK,KAAK;AACV,WAAK,KAAK;AACV,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BoD;AAAA,EACvC,MAAMC,uBAAsBzF,iBAAgB;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB;AACzF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgByF;AAAA,EACxB,MAAMC,8BAA6BD,eAAc;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe,YAAY;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBC;AAAA,EAC/B,MAAMC,gCAA+BF,eAAc;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB;AAC1G,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBE;AAAA,EACjC,MAAMC,8BAA6BH,eAAc;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe;AACxG,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBG;AAAA,EAC/B,MAAMC,gCAA+BJ,eAAc;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB,mBAAmB;AAC7H,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBI;AAAA,EACjC,MAAMC,gCAA+BL,eAAc;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB;AAC1G,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBK;AAAA,EACjC,MAAM,oCAAoCH,wBAAuB;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB;AAC1G,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe;AACpG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMI,iCAAgCN,eAAc;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,kBAAkB;AAC3G,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACnF,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BM;AAAA,EAClC,MAAMC,0BAAyBhG,iBAAgB;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB;AACrE,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBgG;AAAA,EAC3B,MAAM,qCAAqCA,kBAAiB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,sBAAsB;AAC3F,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMC,kCAAiCD,kBAAiB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACvF,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BC;AAAA,EACnC,MAAMC,wCAAuCF,kBAAiB;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,wBAAwB;AAC7F,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCE;AAAA,EACzC,MAAMC,oCAAmCH,kBAAiB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,QAAQ,oBAAoB;AACjG,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,SAAS;AACd,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BG;AAAA,EACrC,MAAMC,kCAAiCJ,kBAAiB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACvF,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BI;AAAA,EACnC,MAAMC,iCAAgCL,kBAAiB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,iBAAiB;AACtF,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BK;AAAA,EAClC,MAAMC,kCAAiCN,kBAAiB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACvF,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BM;AAAA,EACnC,MAAM,0CAA0CN,kBAAiB;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,2BAA2B,wBAAwB,oBAAoB;AAC5I,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,4BAA4B;AACjC,WAAK,yBAAyB;AAC9B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC;AAAA,EAC5C,MAAMO,wBAAuBvG,iBAAgB;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa;AACrD,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBuG;AAAA,EACzB,MAAMC,gCAA+BD,gBAAe;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,oBAAoB,iBAAiB,gBAAgB;AAC1G,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBC;AAAA,EACjC,MAAMC,oCAAmCD,wBAAuB;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,oBAAoB,iBAAiB,gBAAgB,oBAAoB,mBAAmB,uBAAuB,wBAAwB;AAChM,YAAM,UAAU,cAAc,MAAM,aAAa,oBAAoB,iBAAiB,cAAc;AACpG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,oBAAoB;AACzB,WAAK,wBAAwB;AAC7B,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BC;AAAA,EACrC,MAAMC,qCAAoCH,gBAAe;AAAA,IACvD,YAAY,UAAU,cAAc,MAAM,aAAa,cAAc,gBAAgB;AACnF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BG;AAAA,EACtC,MAAMC,6BAA4BJ,gBAAe;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,cAAc,aAAa,kBAAkB;AAClG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBI;AAAA,EAC9B,MAAMC,0CAAyCL,gBAAe;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,2BAA2B;AACjG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,4BAA4B;AACjC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCK;AAAA,EAC3C,MAAM,wCAAwCL,gBAAe;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,yBAAyB;AAC/F,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,0BAA0B;AAC/B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC;AAAA,EAC1C,MAAMM,wCAAuCN,gBAAe;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,0BAA0B,6BAA6B,kBAAkB,sBAAsB,iBAAiB,2BAA2B;AAChM,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,2BAA2B;AAChC,WAAK,8BAA8B;AACnC,WAAK,mBAAmB;AACxB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,4BAA4B;AACjC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCM;AAAA,EACzC,MAAMC,wCAAuCD,gCAA+B;AAAA,IAC1E,YAAY,UAAU,cAAc,MAAM,aAAa,0BAA0B,6BAA6B,kBAAkB,sBAAsB,iBAAiB,2BAA2B,sBAAsB;AACtN,YAAM,UAAU,cAAc,MAAM,aAAa,0BAA0B,6BAA6B,kBAAkB,sBAAsB,iBAAiB,yBAAyB;AAC1L,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,2BAA2B;AAChC,WAAK,8BAA8B;AACnC,WAAK,mBAAmB;AACxB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,4BAA4B;AACjC,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCC;AAAA,EACzC,MAAMC,6CAA4CP,wBAAuB;AAAA,IACvE,YAAY,UAAU,cAAc,MAAM,aAAa,oBAAoB,iBAAiB,gBAAgB,mBAAmB,gBAAgB;AAC7I,YAAM,UAAU,cAAc,MAAM,aAAa,oBAAoB,iBAAiB,cAAc;AACpG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,oBAAoB;AACzB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sCAAsCO;AAAA,EAC9C,MAAMC,2CAA0CT,gBAAe;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,mBAAmB;AACzF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoCS;AAAA,EAC5C,MAAMC,kCAAiCV,gBAAe;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,yBAAyB,kBAAkB;AAChG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,0BAA0B;AAC/B,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BU;AAAA,EACnC,MAAMC,4BAA2BX,gBAAe;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,cAAc,kBAAkB;AACrF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBW;AAAA,EAC7B,MAAMC,0BAAyBnH,iBAAgB;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,gBAAgB;AACrF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBmH;AAAA,EAC3B,MAAMC,uBAAsBpH,iBAAgB;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB;AACrE,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBoH;AAAA,EACxB,MAAMC,mCAAkCD,eAAc;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,4BAA4B;AACjG,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,6BAA6B;AAClC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BC;AAAA,EACpC,MAAMC,6BAA4BF,eAAc;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,cAAc;AACnF,YAAM,UAAU,cAAc,MAAM,aAAa,cAAc;AAC/D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBE;AAAA,EAC9B,MAAMC,4BAA2BhB,gBAAe;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,wBAAwB,wBAAwB;AACrG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,yBAAyB;AAC9B,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBgB;AAAA,EAC7B,MAAMC,mCAAkCjB,gBAAe;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,wBAAwB,qBAAqB;AAClG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,yBAAyB;AAC9B,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BiB;AAAA,EACpC,MAAM,sCAAsCjB,gBAAe;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,kBAAkB,kBAAkB,uBAAuB,qBAAqB,sBAAsB;AAC3J,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,wBAAwB;AAC7B,WAAK,sBAAsB;AAC3B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAMkB,qBAAoBN,kBAAiB;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,gBAAgB;AACrF,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,cAAc;AAC/E,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcM;AAAA,EACtB,MAAM,6BAA6B/B,sBAAqB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe,YAAY;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe,UAAU;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,kCAAkC2B,2BAA0B;AAAA,IAChE,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,4BAA4B,sBAAsB;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,0BAA0B;AAC3F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,6BAA6B;AAClC,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B;AAAA,EACpC,MAAMK,+BAA8BnB,gBAAe;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,uBAAuB;AAC7F,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBmB;AAAA,EAChC,MAAMC,4CAA2CpB,gBAAe;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,mBAAmB;AACzF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qCAAqCoB;AAAA,EAC7C,MAAM,iCAAiChC,wBAAuB;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB;AAC1G,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe;AACpG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B;AAAA,EACnC,MAAMiC,wBAAuBrB,gBAAe;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,iBAAiB,gBAAgB,SAAS,cAAc;AAC7G,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,UAAU;AACf,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBqB;AAAA,EACzB,MAAMC,iCAAgCtB,gBAAe;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,kBAAkB;AACvF,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BsB;AAAA,EAClC,MAAMC,6BAA4BvB,gBAAe;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,eAAe,wBAAwB,oBAAoB,2BAA2B,4BAA4B;AACvK,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,yBAAyB;AAC9B,WAAK,qBAAqB;AAC1B,WAAK,4BAA4B;AACjC,WAAK,6BAA6B;AAClC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBuB;AAAA,EAC9B,MAAMC,4BAA2BxB,gBAAe;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,yBAAyB,uBAAuB;AACrG,YAAM,UAAU,cAAc,MAAM,WAAW;AAC/C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,0BAA0B;AAC/B,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBwB;AAAA,EAC7B,MAAMC,qBAAoBrD,WAAU;AAAA,IAClC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcqD;AAAA,EACtB,MAAMC,8BAA6BlH,mBAAkB;AAAA,IACnD,YAAY,WAAW,UAAU,MAAM,OAAO;AAC5C,YAAM,WAAW,QAAQ;AACzB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,OAAO;AACZ,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBkH;AAAA,EAC/B,MAAMC,8BAA6BjF,mBAAkB;AAAA,IACnD,YAAY,UAAU,QAAQ,cAAc;AAC1C,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBiF;AAAA,EAC/B,MAAMC,kCAAiClF,mBAAkB;AAAA,IACvD,YAAY,UAAU,QAAQ,QAAQ;AACpC,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BkF;AAAA,EACnC,MAAMC,oCAAmClD,YAAW;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,iBAAiB;AAC7H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BkD;AAAA,EACrC,MAAMC,wCAAuCxE,gBAAe;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCwE;AAAA,EACzC,MAAMC,mBAAkBrF,mBAAkB;AAAA,IACxC,YAAY,UAAU,QAAQ;AAC5B,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYqF;AAAA,EACpB,MAAMC,+BAA8BrD,YAAW;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe;AAC9H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBqD;AAAA,EAChC,MAAMC,2BAA0BtD,YAAW;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB;AAClG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBsD;AAAA,EAC5B,MAAMC,6BAA4BD,mBAAkB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB;AAClG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBC;AAAA,EAC9B,MAAMC,+BAA8BH,uBAAsB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe;AAC9H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,aAAa;AACxH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBG;AAAA,EAChC,MAAMC,oCAAmCF,qBAAoB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB,WAAW;AAC7H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BE;AAAA,EACrC,MAAMC,2CAA0CD,4BAA2B;AAAA,IACzE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB,WAAW,qBAAqB,0BAA0B;AAC5K,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB,SAAS;AACvH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,YAAY;AACjB,WAAK,sBAAsB;AAC3B,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoCC;AAAA,EAC5C,MAAM,sCAAsC,qBAAqB;AAAA,IAC/D,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC;AAAA,EACxC,MAAMC,uCAAsC9H,mBAAkB;AAAA,IAC5D,YAAY,WAAW,UAAU,WAAW,YAAY,UAAU,kBAAkB;AAClF,YAAM,WAAW,QAAQ;AACzB,WAAK,YAAY;AACjB,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC8H;AAAA,EACxC,MAAMC,qCAAoC7H,iBAAgB;AAAA,IACxD,YAAY,YAAY,UAAU,mBAAmB,OAAO;AAC1D,YAAM,YAAY,QAAQ;AAC1B,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,oBAAoB;AACzB,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B6H;AAAA,EACtC,MAAMC,gCAA+B9H,iBAAgB;AAAA,IACnD,YAAY,YAAY,UAAU,cAAc;AAC9C,YAAM,YAAY,QAAQ;AAC1B,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB8H;AAAA,EACjC,MAAMC,uCAAsC5E,0BAAyB;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC4E;AAAA,EACxC,MAAMC,iBAAgBhE,YAAW;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ,QAAQ,YAAY,aAAa,UAAU;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUgE;AAAA,EAClB,MAAMC,iCAAgCrF,gBAAe;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BqF;AAAA,EAClC,MAAMC,kBAAiBxE,WAAU;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,UAAU;AAC3E,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWwE;AAAA,EACnB,MAAMC,uBAAsBlE,YAAW;AAAA,IACrC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB;AAClG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBkE;AAAA,EACxB,MAAMC,uCAAsC9E,qBAAoB;AAAA,IAC9D,YAAY,aAAa,aAAa,UAAU,cAAc,cAAc,cAAc,iBAAiB,cAAc,gBAAgB,oBAAoB,uBAAuB,oBAAoB;AACtM,YAAM,aAAa,aAAa,UAAU,cAAc,cAAc,cAAc,iBAAiB,YAAY;AACjH,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,eAAe;AACpB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,wBAAwB;AAC7B,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgC8E;AAAA,EACxC,MAAMC,kBAAiBrG,mBAAkB;AAAA,IACvC,YAAY,UAAU,SAAS,SAAS,SAAS;AAC/C,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWqG;AAAA,EACnB,MAAMC,kCAAiCpH,kBAAiB;AAAA,IACtD,YAAY,UAAU,cAAc,eAAe;AACjD,YAAM,UAAU,cAAc,aAAa;AAC3C,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BoH;AAAA,EACnC,MAAMC,yBAAwBrG,UAAS;AAAA,IACrC,cAAc;AACZ,YAAM;AACN,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBqG;AAAA,EAC1B,MAAMC,qBAAoBrB,4BAA2B;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,iBAAiB,sBAAsB,oBAAoB,iBAAiB;AACxL,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,eAAe;AACvH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,uBAAuB;AAC5B,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcqB;AAAA,EACtB,MAAM,+BAA+B5F,gBAAe;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB;AAAA,EACjC,MAAM6F,2BAA0BtB,4BAA2B;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,iBAAiB,WAAW;AACxI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,eAAe;AACvH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBsB;AAAA,EAC5B,MAAMC,mCAAkC7G,qBAAoB;AAAA,IAC1D,YAAY,aAAa,aAAa,UAAU,QAAQ,eAAe;AACrE,YAAM,aAAa,aAAa,UAAU,MAAM;AAChD,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4B6G;AAAA,EACpC,MAAMC,uBAAsB,uBAAuB;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAMC,2BAA0BL,iBAAgB;AAAA,IAC9C,YAAY,UAAU,eAAe;AACnC,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBK;AAAA,EAC5B,MAAMC,kBAAiB3G,UAAS;AAAA,IAC9B,YAAY,UAAU;AACpB,YAAM;AACN,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAW2G;AAAA,EACnB,MAAMC,iCAAgC/B,aAAY;AAAA,IAChD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc;AACvI,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B+B;AAAA,EAClC,MAAMC,oBAAmBrF,WAAU;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaqF;AAAA,EACrB,MAAMC,qBAAoBD,YAAW;AAAA,IACnC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcC;AAAA,EACtB,MAAMC,yBAAwBF,YAAW;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,aAAa,YAAY,aAAa,QAAQ,aAAa,YAAY,IAAI,gBAAgB;AAC5J,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,SAAS;AACd,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,KAAK;AACV,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBE;AAAA,EAC1B,MAAMC,yBAAwB,uBAAuB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBA;AAAA,EAC1B,MAAMC,yBAAwBL,yBAAwB;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc;AACvI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBK;AAAA,EAC1B,MAAMC,4BAA2B,uBAAuB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBA;AAAA,EAC7B,MAAM,yCAAyC,qBAAqB;AAAA,IAClE,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC;AAAA,EAC3C,MAAMC,oCAAmCzG,gBAAe;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6ByG;AAAA,EACrC,MAAMC,wCAAuCD,4BAA2B;AAAA,IACtE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCC;AAAA,EACzC,MAAM,oCAAoC,oBAAoB;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,2BAA2B,qBAAqB,cAAc,gBAAgB,iBAAiB,uBAAuB,mBAAmB,iBAAiB,YAAY;AAC3O,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,yBAAyB;AAC1F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,4BAA4B;AACjC,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,iBAAiB;AACtB,WAAK,kBAAkB;AACvB,WAAK,wBAAwB;AAC7B,WAAK,oBAAoB;AACzB,WAAK,kBAAkB;AACvB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMC,oBAAmBtF,YAAW;AAAA,IAClC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAasF;AAAA,EACrB,MAAMC,4BAA2BD,YAAW;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,gBAAgB;AACtI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBC;AAAA,EAC7B,MAAMC,6BAA4BF,YAAW;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBE;AAAA,EAC9B,MAAMC,iCAAgC9G,gBAAe;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B8G;AAAA,EAClC,MAAMC,oBAAmBd,UAAS;AAAA,IAChC,YAAY,UAAU,WAAW,WAAW;AAC1C,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,YAAY;AACjB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAac;AAAA,EACrB,MAAMC,uCAAsCN,gCAA+B;AAAA,IACzE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCM;AAAA,EACxC,MAAM,4BAA4BL,YAAW;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAM,6BAA6BR,YAAW;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAMc,kCAAiCD,+BAA8B;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BC;AAAA,EACnC,MAAMC,2BAA0BF,+BAA8B;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBE;AAAA,EAC5B,MAAMC,wBAAuBtG,sBAAqB;AAAA,IAChD,YAAY,OAAO;AACjB,YAAM,KAAK;AACX,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBsG;AAAA,EACzB,MAAMC,iCAAgCvG,sBAAqB;AAAA,IACzD,YAAY,OAAO,OAAO;AACxB,YAAM,KAAK;AACX,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BuG;AAAA,EAClC,MAAMC,qBAAoBR,qBAAoB;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcQ;AAAA,EACtB,MAAMC,yBAAwBR,yBAAwB;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBQ;AAAA,EAC1B,MAAMC,2BAA0BZ,YAAW;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBY;AAAA,EAC5B,MAAMC,mCAAkCD,mBAAkB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BC;AAAA,EACpC,MAAMC,sCAAqCF,mBAAkB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BE;AAAA,EACvC,MAAMC,+BAA8BhB,gCAA+B;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBgB;AAAA,EAChC,MAAMC,4BAA2BjB,gCAA+B;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBiB;AAAA,EAC7B,MAAMC,0BAAyBF,uBAAsB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBE;AAAA,EAC3B,MAAMC,iCAAgCnB,gCAA+B;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BmB;AAAA,EAClC,MAAMC,4BAA2BpB,gCAA+B;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBoB;AAAA,EAC7B,MAAMC,kCAAiCrB,gCAA+B;AAAA,IACpE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BqB;AAAA,EACnC,MAAMC,6BAA4BtB,gCAA+B;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBsB;AAAA,EAC9B,MAAMC,oCAAmCvB,gCAA+B;AAAA,IACtE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BuB;AAAA,EACrC,MAAMC,8BAA6BvB,YAAW;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBuB;AAAA,EAC/B,MAAM,6BAA6B/B,YAAW;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,2BAA2B6B,qBAAoB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAMG,iBAAgB9G,YAAW;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,OAAO,OAAO,OAAO;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAU8G;AAAA,EAClB,MAAMC,kBAAiBtH,WAAU;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWsH;AAAA,EACnB,MAAMC,8BAA6BrB,+BAA8B;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBqB;AAAA,EAC/B,MAAMC,2BAA0BtB,+BAA8B;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBsB;AAAA,EAC5B,MAAMC,sBAAqBH,UAAS;AAAA,IAClC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,eAAe,cAAc,oBAAoB,gBAAgB,cAAc,eAAe;AAC/J,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,qBAAqB;AAC1B,WAAK,iBAAiB;AACtB,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeG;AAAA,EACvB,MAAMC,4BAA2Bb,oBAAmB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBa;AAAA,EAC7B,MAAMC,0BAAyBvC,yBAAwB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc,UAAU;AACjJ,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBuC;AAAA,EAC3B,MAAMC,qBAAoBV,qBAAoB;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcU;AAAA,EACtB,MAAMC,6BAA4BX,qBAAoB;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBW;AAAA,EAC9B,MAAM,2BAA2B,iCAAiC;AAAA,IAChE,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAMC,+BAA8BvB,aAAY;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,iBAAiB,eAAe;AACvI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,kBAAkB;AACvB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBuB;AAAA,EAChC,MAAMC,mCAAkCvB,iBAAgB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BuB;AAAA,EACpC,MAAMC,uBAAsB,uBAAuB;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAMC,gCAA+B/B,+BAA8B;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB+B;AAAA,EACjC,MAAM,gBAAgB3D,SAAQ;AAAA,IAC5B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ,QAAQ,YAAY,aAAa,UAAU,UAAU,QAAQ,WAAW;AACjJ,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ,QAAQ,YAAY,aAAa,QAAQ;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAU;AAAA,EAClB,MAAM4D,qBAAoB1D,UAAS;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,UAAU,gBAAgB;AAC3F,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ;AACrE,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAc0D;AAAA,EACtB,MAAMC,2BAA0BxB,8BAA6B;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBwB;AAAA,EAC5B,MAAM,uBAAuB7D,SAAQ;AAAA,IACnC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ,QAAQ,YAAY,aAAa,UAAU,UAAU;AAC9H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,QAAQ,QAAQ,YAAY,aAAa,QAAQ;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,SAAS;AACd,WAAK,SAAS;AACd,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,WAAW;AAChB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAM8D,uBAAsBlB,qBAAoB;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBkB;AAAA,EACxB,MAAMC,+BAA8BhD,YAAW;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,gBAAgB;AACjF,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBgD;AAAA,EAChC,MAAMC,mBAAkBjD,YAAW;AAAA,IACjC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,UAAU;AAC3E,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYiD;AAAA,EACpB,MAAMC,4BAA2B1B,oBAAmB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB0B;AAAA,EAC7B,MAAMC,4BAA2BxB,oBAAmB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBwB;AAAA,EAC7B,MAAMC,sBAAqB,uBAAuB;AAAA,IAChD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAeA;AAAA,EACvB,MAAMC,qBAAoB7D,iBAAgB;AAAA,IACxC,YAAY,QAAQ;AAClB,YAAM;AACN,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAc6D;AAAA,EACtB,MAAMC,iBAAgBpI,YAAW;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB;AAClG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUoI;AAAA,EAClB,MAAMC,sBAAqBtI,YAAW;AAAA,IACpC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,aAAa,eAAe,0BAA0B;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,2BAA2B;AAChC,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAesI;AAAA,EACvB,MAAMC,yBAAwBxD,YAAW;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,IAAI,gBAAgB,QAAQ;AAC7F,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,KAAK;AACV,WAAK,iBAAiB;AACtB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBwD;AAAA,EAC1B,MAAM,8BAA8BxD,YAAW;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,SAAS,gBAAgB;AAC1F,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,UAAU;AACf,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMyD,8BAA6BpC,2BAA0B;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBoC;AAAA,EAC/B,MAAMC,iCAAgCnC,uBAAsB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BmC;AAAA,EAClC,MAAMC,qBAAoBjC,yBAAwB;AAAA,IAChD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAciC;AAAA,EACtB,MAAM,2BAA2B,iCAAiC;AAAA,IAChE,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAMC,wBAAuB,uBAAuB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,2BAA0B,uBAAuB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBA;AAAA,EAC5B,MAAMC,0BAAyB3G,kBAAiB;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,gBAAgB;AACrF,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,cAAc;AAC/E,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmB2G;AAAA,EAC3B,MAAM,2BAA2BnI,wBAAuB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,iBAAiB,aAAa;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,gBAAgB,oBAAoB,eAAe;AACpG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,qBAAqB;AAC1B,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAMoI,iCAAgClC,qBAAoB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BkC;AAAA,EAClC,MAAM,+BAA+B/D,YAAW;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,aAAa,YAAY,WAAW,eAAe,cAAc,aAAa,YAAY,gBAAgB,kBAAkB,gBAAgB,eAAe,WAAW,YAAY,YAAY,YAAY,YAAY,aAAa,YAAY;AAChT,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB;AAAA,EACjC,MAAM,uBAAuBA,YAAW;AAAA,IACtC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,qBAAqB;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAMgE,iBAAgB5F,4BAA2B;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,iBAAiB,aAAa,cAAc,cAAc,iBAAiB,aAAa;AACpM,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,eAAe;AACvH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,eAAe;AACpB,WAAK,eAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAU4F;AAAA,EAClB,MAAMC,qBAAoB,uBAAuB;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,kBAAiB9F,4BAA2B;AAAA,IAChD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,iBAAiB,yBAAyB,uBAAuB;AAC7K,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,UAAU,eAAe;AACvH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,0BAA0B;AAC/B,WAAK,wBAAwB;AAC7B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAW8F;AAAA,EACnB,MAAMC,4BAA2BtD,+BAA8B;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBsD;AAAA,EAC7B,MAAM,wBAAwBnE,YAAW;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,wBAAwB,iBAAiB,iBAAiB,mBAAmB,sBAAsB;AACpK,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,yBAAyB;AAC9B,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;AACvB,WAAK,oBAAoB;AACzB,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkB;AAAA,EAC1B,MAAMoE,sBAAqB/F,gCAA+B;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe+F;AAAA,EACvB,MAAMC,8BAA6BxC,qBAAoB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBwC;AAAA,EAC/B,MAAMC,4BAA2B,uBAAuB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBA;AAAA,EAC7B,MAAMC,6BAA4BhG,uBAAsB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU;AAC3J,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,aAAa;AACxH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBgG;AAAA,EAC9B,MAAMC,iCAAgChG,mBAAkB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,kBAAkB;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BgG;AAAA,EAClC,MAAMC,sCAAqCD,yBAAwB;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,kBAAkB;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BC;AAAA,EACvC,MAAMC,kCAAiCjG,qBAAoB;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BiG;AAAA,EACnC,MAAMC,yCAAwCD,0BAAyB;AAAA,IACrE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,cAAc;AAC5G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkCC;AAAA,EAC1C,MAAMC,mCAAkCL,qBAAoB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,iBAAiB;AAC5K,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,QAAQ;AACrJ,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BK;AAAA,EACpC,MAAM,yCAAyCA,2BAA0B;AAAA,IACvE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,iBAAiB,4BAA4B,wBAAwB;AAChO,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,eAAe;AACtK,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,6BAA6B;AAClC,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC;AAAA,EAC3C,MAAMC,gCAA+B5C,UAAS;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,gBAAgB,YAAY,cAAc,aAAa,SAAS;AACjI,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,cAAc;AACnB,WAAK,UAAU;AACf,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB4C;AAAA,EACjC,MAAMC,mCAAkCP,qBAAoB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,iBAAiB;AAC5K,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,QAAQ;AACrJ,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BO;AAAA,EACpC,MAAM,yCAAyCA,2BAA0B;AAAA,IACvE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,iBAAiB,4BAA4B,wBAAwB;AAChO,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU,eAAe;AACtK,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,kBAAkB;AACvB,WAAK,6BAA6B;AAClC,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC;AAAA,EAC3C,MAAMC,kCAAiCR,qBAAoB;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,UAAU;AAC3J,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe,mBAAmB,QAAQ;AACrJ,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,oBAAoB;AACzB,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BQ;AAAA,EACnC,MAAMC,sCAAqCR,yBAAwB;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,kBAAkB;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+BQ;AAAA,EACvC,MAAMC,oCAAmCvG,uBAAsB;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,eAAe;AAC9H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,aAAa,aAAa;AACxH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BuG;AAAA,EACrC,MAAMC,kCAAiCjD,UAAS;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,oBAAoB,UAAU;AAC3G,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BiD;AAAA,EACnC,MAAMC,wCAAuCX,yBAAwB;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,kBAAkB;AACpH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,gBAAgB;AAC9G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCW;AAAA,EACzC,MAAMC,gCAA+BrF,yBAAwB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc,eAAe,gBAAgB;AACtK,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,gBAAgB;AACrB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBqF;AAAA,EACjC,MAAMC,gCAA+B9D,uBAAsB;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB8D;AAAA,EACjC,MAAMC,mBAAkBrD,UAAS;AAAA,IAC/B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYqD;AAAA,EACpB,MAAMC,qBAAoB3D,0BAAyB;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAc2D;AAAA,EACtB,MAAM,8BAA8BvF,YAAW;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,wBAAwB,YAAY;AACtH,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,yBAAyB;AAC9B,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMwF,4BAA2B3E,+BAA8B;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB2E;AAAA,EAC7B,MAAMC,6BAA4BjF,YAAW;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,kBAAkB,kBAAkB;AAC1J,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,mBAAmB;AACxB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBiF;AAAA,EAC9B,MAAMC,yBAAwBlG,iBAAgB;AAAA,IAC5C,YAAY,YAAY,OAAO,OAAO,gBAAgB,sBAAsB;AAC1E,YAAM;AACN,WAAK,aAAa;AAClB,WAAK,QAAQ;AACb,WAAK,QAAQ;AACb,WAAK,iBAAiB;AACtB,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBkG;AAAA,EAC1B,MAAMC,2BAA0B9E,+BAA8B;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB8E;AAAA,EAC5B,MAAMC,iCAAgC/E,+BAA8B;AAAA,IAClE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0B+E;AAAA,EAClC,MAAMC,sBAAqBtE,uBAAsB;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAesE;AAAA,EACvB,MAAMC,2BAA0BtF,YAAW;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBsF;AAAA,EAC5B,MAAMC,qBAAoB,uBAAuB;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,8BAA6BnE,qBAAoB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBmE;AAAA,EAC/B,MAAMC,wBAAuBjG,YAAW;AAAA,IACtC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,cAAc,UAAU,SAAS,UAAU,YAAY,WAAW,YAAY,iBAAiB,wBAAwB;AACpM,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,WAAW;AAChB,WAAK,UAAU;AACf,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBiG;AAAA,EACzB,MAAMC,qBAAoBD,gBAAe;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,cAAc,UAAU,SAAS,UAAU,YAAY,WAAW,YAAY,iBAAiB,wBAAwB;AACpM,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,cAAc,UAAU,SAAS,UAAU,YAAY,WAAW,YAAY,iBAAiB,sBAAsB;AAC9L,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,WAAW;AAChB,WAAK,UAAU;AACf,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcC;AAAA,EACtB,MAAMC,yBAAwBF,gBAAe;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,cAAc,UAAU,SAAS,UAAU,YAAY,WAAW,YAAY,iBAAiB,wBAAwB;AACpM,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,YAAY,cAAc,UAAU,SAAS,UAAU,YAAY,WAAW,YAAY,iBAAiB,sBAAsB;AAC9L,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,eAAe;AACpB,WAAK,WAAW;AAChB,WAAK,UAAU;AACf,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,yBAAyB;AAC9B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBE;AAAA,EAC1B,MAAMC,iBAAgBnE,UAAS;AAAA,IAC7B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUmE;AAAA,EAClB,MAAM,4BAA4BvG,mBAAkB;AAAA,IAClD,YAAY,UAAU,eAAe;AACnC,YAAM,UAAU,aAAa;AAC7B,WAAK,WAAW;AAChB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAMwG,0BAAyBrG,YAAW;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,WAAW;AAC5E,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmBqG;AAAA,EAC3B,MAAMC,+BAA8B/E,uBAAsB;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB+E;AAAA,EAChC,MAAMC,4BAA2B1E,qBAAoB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB0E;AAAA,EAC7B,MAAMC,qCAAoC3F,+BAA8B;AAAA,IACtE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B2F;AAAA,EACtC,MAAM,4BAA4B,iCAAiC;AAAA,IACjE,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB;AAAA,EAC9B,MAAMC,kBAAiBxE,UAAS;AAAA,IAC9B,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,SAAS,eAAe,cAAc,sBAAsB,OAAO,MAAM,mBAAmB,mBAAmB,kBAAkB;AAClM,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,UAAU;AACf,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,uBAAuB;AAC5B,WAAK,QAAQ;AACb,WAAK,OAAO;AACZ,WAAK,oBAAoB;AACzB,WAAK,oBAAoB;AACzB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWwE;AAAA,EACnB,MAAMC,yBAAwBlH,iBAAgB;AAAA,IAC5C,YAAY,QAAQ,mBAAmB,WAAW,aAAa,eAAe;AAC5E,YAAM;AACN,WAAK,SAAS;AACd,WAAK,oBAAoB;AACzB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBkH;AAAA,EAC1B,MAAMC,qBAAoB,uBAAuB;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAM,uBAAuBD,iBAAgB;AAAA,IAC3C,YAAY,QAAQ,mBAAmB,WAAW,aAAa,eAAe;AAC5E,YAAM,QAAQ,mBAAmB,WAAW,aAAa,aAAa;AACtE,WAAK,SAAS;AACd,WAAK,oBAAoB;AACzB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAME,uBAAsB/F,+BAA8B;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgB+F;AAAA,EACxB,MAAM,2BAA2BpG,YAAW;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB;AAAA,EAC7B,MAAM,oCAAoC,mBAAmB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8B;AAAA,EACtC,MAAMqG,gCAA+B,4BAA4B;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBA;AAAA,EACjC,MAAMC,iCAAgC,mBAAmB;AAAA,IACvD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,iBAAiB;AACxH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,kBAAkB;AACvB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,0BAA0BA;AAAA,EAClC,MAAMC,qCAAoC,uBAAuB;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,8BAA8BA;AAAA,EACtC,MAAMC,oCAAmCxF,oBAAmB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BwF;AAAA,EACrC,MAAMC,oCAAmCtF,oBAAmB;AAAA,IAC1D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BsF;AAAA,EACrC,MAAMC,6BAA4BvF,oBAAmB;AAAA,IACnD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBuF;AAAA,EAC9B,MAAMC,wBAAuBtG,+BAA8B;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBsG;AAAA,EACzB,MAAMC,mBAAkBtH,UAAS;AAAA,IAC/B,YAAY,UAAU,QAAQ;AAC5B,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYsH;AAAA,EACpB,MAAMC,qBAAoBxG,+BAA8B;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcwG;AAAA,EACtB,MAAMC,mBAAkB,mBAAmB;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYA;AAAA,EACpB,MAAMC,2BAA0B7F,yBAAwB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB6F;AAAA,EAC5B,MAAMC,0BAAyB3G,+BAA8B;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mBAAmB2G;AAAA,EAC3B,MAAM,qBAAqBvF,UAAS;AAAA,IAClC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe;AAAA,EACvB,MAAM,8BAA8BjC,YAAW;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,WAAW,mBAAmB;AAC/F,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,oBAAoB;AACzB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMyH,0CAAyC1H,yBAAwB;AAAA,IACrE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc;AACvI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmC0H;AAAA,EAC3C,MAAMC,yCAAwC3H,yBAAwB;AAAA,IACpE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc,WAAW,YAAY;AAC9J,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kCAAkC2H;AAAA,EAC1C,MAAMC,wCAAuC5H,yBAAwB;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,cAAc;AACvI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,oBAAoB,eAAe,qBAAqB,YAAY;AACjI,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,qBAAqB;AAC1B,WAAK,gBAAgB;AACrB,WAAK,sBAAsB;AAC3B,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiC4H;AAAA,EACzC,MAAMC,2BAA0B/G,+BAA8B;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoB+G;AAAA,EAC5B,MAAMC,6BAA4BhH,+BAA8B;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBgH;AAAA,EAC9B,MAAMC,qBAAoB,mBAAmB;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,gBAAgB;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,cAAcA;AAAA,EACtB,MAAMC,wBAAuB,mBAAmB;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,uBAAsBzG,uBAAsB;AAAA,IAChD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgByG;AAAA,EACxB,MAAM,6BAA6B,iCAAiC;AAAA,IAClE,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,WAAW;AAChB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAMC,8BAA6BvH,qBAAoB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBuH;AAAA,EAC/B,MAAMC,kCAAiCvH,yBAAwB;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BuH;AAAA,EACnC,MAAMC,2CAA0C5H,gCAA+B;AAAA,IAC7E,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC4H;AAAA,EAC5C,MAAMC,2CAA0C9H,4BAA2B;AAAA,IACzE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa;AAClI,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oCAAoC8H;AAAA,EAC5C,MAAMC,gCAA+B7H,YAAW;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB6H;AAAA,EACjC,MAAMC,oCAAmCD,wBAAuB;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BC;AAAA,EACrC,MAAMC,6BAA4BjF,SAAQ;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,eAAe;AACjH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,cAAc;AAC5F,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBiF;AAAA,EAC9B,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,cAAc;AACpI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,4BAA2BjH,oBAAmB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBiH;AAAA,EAC7B,MAAMC,4BAA2B/G,oBAAmB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqB+G;AAAA,EAC7B,MAAMC,6BAA4B7G,4BAA2B;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsB6G;AAAA,EAC9B,MAAM,uBAAuBrH,8BAA6B;AAAA,IACxD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe;AACtH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiB;AAAA,EACzB,MAAMsH,kCAAiC/G,qBAAoB;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B+G;AAAA,EACnC,MAAMC,0CAAyCjH,0BAAyB;AAAA,IACtE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,mCAAmCiH;AAAA,EAC3C,MAAMC,kCAAiCjI,+BAA8B;AAAA,IACnE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2BiI;AAAA,EACnC,MAAM,8BAA8BjH,qBAAoB;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMkH,8BAA6BlI,+BAA8B;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBkI;AAAA,EAC/B,MAAMC,oCAAmCzH,uBAAsB;AAAA,IAC7D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6ByH;AAAA,EACrC,MAAM,6BAA6B1D,WAAU;AAAA,IAC3C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY;AACjE,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAM,6BAA6B9E,YAAW;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuB;AAAA,EAC/B,MAAMyI,mCAAkCX,4BAA2B;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,4BAA4BW;AAAA,EACpC,MAAMC,oBAAmBxH,yBAAwB;AAAA,IAC/C,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAawH;AAAA,EACrB,MAAMC,uBAAsBrH,4BAA2B;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBqH;AAAA,EACxB,MAAMC,wCAAuCvH,qBAAoB;AAAA,IAC/D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iCAAiCuH;AAAA,EACzC,MAAMC,2BAA0Bf,4BAA2B;AAAA,IACzD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBe;AAAA,EAC5B,MAAMC,wBAAuBhB,4BAA2B;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBgB;AAAA,EACzB,MAAMC,+BAA8BnB,mCAAkC;AAAA,IACpE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBmB;AAAA,EAChC,MAAMC,6BAA4BlB,4BAA2B;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBkB;AAAA,EAC9B,MAAMC,wBAAuBnB,4BAA2B;AAAA,IACtD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBmB;AAAA,EACzB,MAAMC,8BAA6BpB,4BAA2B;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,uBAAuBoB;AAAA,EAC/B,MAAMC,yBAAwBrB,4BAA2B;AAAA,IACvD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBqB;AAAA,EAC1B,MAAMC,gCAA+BtB,4BAA2B;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyBsB;AAAA,EACjC,MAAMC,oBAAmB,mBAAmB;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,gBAAgB;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaA;AAAA,EACrB,MAAMC,mBAAkB,mBAAmB;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYA;AAAA,EACpB,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,gBAAgB,kBAAkB;AACzI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,iBAAiB;AACtB,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,kBAAiB,mBAAmB;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWA;AAAA,EACnB,MAAMC,oBAAmB,mBAAmB;AAAA,IAC1C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,gBAAgB;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,aAAaA;AAAA,EACrB,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,WAAW;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,uBAAsB,mBAAmB;AAAA,IAC7C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBA;AAAA,EACxB,MAAM,+BAA+B,eAAe;AAAA,IAClD,YAAY,QAAQ,mBAAmB,WAAW,aAAa,eAAe,aAAa;AACzF,YAAM,QAAQ,mBAAmB,WAAW,aAAa,aAAa;AACtE,WAAK,SAAS;AACd,WAAK,oBAAoB;AACzB,WAAK,YAAY;AACjB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AACrB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,yBAAyB;AAAA,EACjC,MAAMC,+BAA8B,4BAA4B;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,YAAY;AACnH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwBA;AAAA,EAChC,MAAMC,4BAA2BD,uBAAsB;AAAA,IACrD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,YAAY,YAAY,WAAW,gCAAgC,8BAA8B,iCAAiC,+BAA+B,wBAAwB,sBAAsB;AACtT,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,UAAU;AAC7G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,aAAa;AAClB,WAAK,aAAa;AAClB,WAAK,YAAY;AACjB,WAAK,iCAAiC;AACtC,WAAK,+BAA+B;AACpC,WAAK,kCAAkC;AACvC,WAAK,gCAAgC;AACrC,WAAK,yBAAyB;AAC9B,WAAK,uBAAuB;AAC5B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,qBAAqBC;AAAA,EAC7B,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,WAAW;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAM,8BAA8B,eAAe;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,QAAQ;AAC9H,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,aAAa;AAChH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMC,uBAAsBnC,mCAAkC;AAAA,IAC5D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gBAAgBmC;AAAA,EACxB,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,gBAAgB;AACvH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,kBAAiB,mBAAmB;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,WAAW;AAClH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,YAAY;AACjB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,WAAWA;AAAA,EACnB,MAAMC,wBAAuB,mBAAmB;AAAA,IAC9C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,gBAAgB,aAAa,aAAa;AAChK,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,iBAAiB;AACtB,WAAK,cAAc;AACnB,WAAK,cAAc;AACnB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,iBAAiBA;AAAA,EACzB,MAAMC,oCAAmCrF,WAAU;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,gBAAgB,sBAAsB,UAAU,YAAY;AAC7H,YAAM,UAAU,cAAc,MAAM,aAAa,UAAU;AAC3D,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,uBAAuB;AAC5B,WAAK,WAAW;AAChB,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,6BAA6BqF;AAAA,EACrC,MAAMC,mBAAkBR,uBAAsB;AAAA,IAC5C,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,YAAY,gBAAgB,iBAAiB,kBAAkB,cAAc,WAAW,qBAAqB,eAAe,oBAAoB;AACvP,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,UAAU;AAC7G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,aAAa;AAClB,WAAK,iBAAiB;AACtB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,eAAe;AACpB,WAAK,YAAY;AACjB,WAAK,sBAAsB;AAC3B,WAAK,gBAAgB;AACrB,WAAK,qBAAqB;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYQ;AAAA,EACpB,MAAMC,yBAAwBT,uBAAsB;AAAA,IAClD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,YAAY;AACnH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,UAAU;AAC7G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkBS;AAAA,EAC1B,MAAMC,kCAAiC5C,0BAAyB;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,2BAA2B4C;AAAA,EACnC,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAMC,6BAA4BD,SAAQ;AAAA,IACxC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,sBAAsBC;AAAA,EAC9B,MAAMC,mBAAkB,mBAAmB;AAAA,IACzC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,cAAc;AACpI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,eAAe;AACpB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,YAAYA;AAAA,EACpB,MAAMC,yBAAwB9C,mCAAkC;AAAA,IAC9D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,kBAAkB8C;AAAA,EAC1B,MAAMC,sBAAqB/C,mCAAkC;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,eAAe+C;AAAA,EACvB,MAAMC,iBAAgB,mBAAmB;AAAA,IACvC,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,UAAUA;AAAA,EAClB,MAAM,8BAA8B,eAAe;AAAA,IACjD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,eAAe,OAAO,QAAQ;AACrI,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,aAAa;AAChH,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,gBAAgB;AACrB,WAAK,QAAQ;AACb,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,wBAAwB;AAAA,EAChC,MAAMC,2BAA0BjD,mCAAkC;AAAA,IAChE,YAAY,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,aAAa,gBAAgB;AAClJ,YAAM,UAAU,cAAc,MAAM,aAAa,sBAAsB,iBAAiB,oBAAoB,KAAK,WAAW;AAC5H,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,uBAAuB;AAC5B,WAAK,kBAAkB;AACvB,WAAK,qBAAqB;AAC1B,WAAK,MAAM;AACX,WAAK,cAAc;AACnB,WAAK,iBAAiB;AACtB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBiD;AAAA,EAC5B,MAAMC,uCAAsChD,4BAA2B;AAAA,IACrE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK;AACvG,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCgD;AAAA,EACxC,MAAMC,uCAAsClD,wBAAuB;AAAA,IACjE,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,kBAAkB;AACzH,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,mBAAmB;AACxB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,gCAAgCkD;AAAA,EACxC,MAAM,qCAAqClC,mBAAkB;AAAA,IAC3D,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,2BAA2B,qBAAqB;AACvJ,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,GAAG;AACjG,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,4BAA4B;AACjC,WAAK,sBAAsB;AAC3B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,+BAA+B;AAAA,EACvC,MAAMmC,2BAA0BpB,uBAAsB;AAAA,IACpD,YAAY,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,YAAY,iBAAiB,kBAAkB,WAAW,SAAS,YAAY;AACtL,YAAM,UAAU,cAAc,MAAM,aAAa,YAAY,iBAAiB,gBAAgB,KAAK,UAAU;AAC7G,WAAK,WAAW;AAChB,WAAK,eAAe;AACpB,WAAK,OAAO;AACZ,WAAK,cAAc;AACnB,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,iBAAiB;AACtB,WAAK,MAAM;AACX,WAAK,aAAa;AAClB,WAAK,kBAAkB;AACvB,WAAK,mBAAmB;AACxB,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,aAAa;AAClB,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AACA,UAAQ,oBAAoBoB;AAC9B,GAAG,WAAW,SAAS,CAAC,EAAE;AAC1B,YAAY,CAAC,IAAI,CAAC,QAAQ,UAAU,QAAQ;AAC5C,gBAAgB,CAAC,IAAI;AAAA,EACnB,YAAY,CAAC,MAAM,IAAI,KAAK,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtK,WAAW,CAAC,MAAM,IAAI,KAAK,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnK,WAAW,CAAC,MAAM,IAAI,KAAK,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9N,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAAC3hB,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/nB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClkB,YAAY,CAAC,MAAM,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5G,YAAY,CAAC,MAAM,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACtW,YAAY,CAAC,MAAM,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EAC3O,YAAY,CAAC,MAAM,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACtW,YAAY,CAAC,MAAM,IAAI,KAAK,gCAAgC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACtZ,YAAY,CAAC,MAAM,IAAI,KAAK,sBAAsB;AAAA,EAClD,YAAY,CAAC,MAAM,IAAI,KAAK,2BAA2B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClJ,YAAY,CAAC,MAAM,IAAI,KAAK,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpJ,WAAW,CAAC,MAAM,IAAI,KAAK,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClJ,YAAY,CAAC,MAAM,IAAI,KAAK,cAAc,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxY,YAAY,CAAC,MAAM,IAAI,KAAK,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/H,YAAY,CAAC,MAAM,IAAI,KAAK,6BAA6B,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrS,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5nB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAClH,YAAY,CAAC,MAAM,IAAI,KAAK,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC/O,YAAY,CAAC,MAAM,IAAI,KAAK,uBAAuB;AAAA,EACnD,YAAY,CAAC,MAAM,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClP,YAAY,CAAC,MAAM,IAAI,KAAK,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5P,YAAY,CAAC,MAAM,IAAI,KAAK,iCAAiC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9P,YAAY,CAAC,MAAM,IAAI,KAAK,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1P,WAAW,CAAC,MAAM,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzL,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,4BAA4B,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,sBAAsB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjZ,YAAY,CAAC,MAAM,IAAI,KAAK,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACra,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,yBAAyB,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,qBAAqBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,wCAAwCA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClY;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,8BAA8B,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACvK;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,iBAAiB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/c,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,wCAAwC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChN;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,KAAK,sBAAsB;AAAA,EACjD,WAAW,CAAC,MAAM,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrd,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,sBAAsB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChR;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7hB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,kBAAkB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACnJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/X,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxU;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,KAAK,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/b,YAAY,CAAC,MAAM,IAAI,KAAK,2BAA2B;AAAA,EACvD,YAAY,CAAC,MAAM,IAAI,KAAK,mBAAmB,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9G,YAAY,CAAC,MAAM,IAAI,KAAK,UAAU,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACtjB,YAAY,CAAC,MAAM,IAAI,KAAK,gBAAgB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxF,YAAY,CAAC,MAAM,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACpF,YAAY,CAAC,MAAM,IAAI,KAAK,mBAAmB;AAAA,EAC/C,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,aAAa,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC3kB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAChd;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,gBAAgB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnW,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI,IAAI,IAAI,IAAI;AACpB,WAAO,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACr3B;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzP;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,oBAAoB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxJ,YAAY,CAAC,MAAM,IAAI,KAAK,0BAA0B,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpN,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,iBAAiB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvpB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,KAAK,oBAAoB;AAAA,EAC/C,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,+BAA+B,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9U;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,8BAA8B,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/lB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5G,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,iCAAiC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClK;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrR;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,cAAc,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3G,YAAY,CAAC,MAAM,IAAI,KAAK,gBAAgB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACld,WAAW,CAAC,MAAM,IAAI,KAAK,uBAAuB;AAAA,EAClD,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,uBAAuB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChQ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,gBAAgB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3T,YAAY,CAAC,MAAM,IAAI,KAAK,iBAAiB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7T,WAAW,CAAC,MAAM,IAAI,KAAK,kBAAkB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9T,YAAY,CAAC,MAAM,IAAI,KAAK,gBAAgB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3T,YAAY,CAAC,MAAM,IAAI,KAAK,kBAAkB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/T,WAAW,CAAC,MAAM,IAAI,KAAK,kBAAkB,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5T,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI,IAAI,IAAI;AAChB,WAAO,IAAI,KAAK,qBAAqB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,oBAAoBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,mBAAmBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,qBAAqBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtyB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,WAAWA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/Z;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtT;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7K,YAAY,CAAC,MAAM,IAAI,KAAK,sBAAsB;AAAA,EAClD,YAAY,CAAC,MAAM,IAAI,KAAK,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7H,YAAY,CAAC,MAAM,IAAI,KAAK,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChL,YAAY,CAAC,MAAM,IAAI,KAAK,QAAQ,IAAI,KAAK,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1Q,WAAW,CAAC,MAAM,IAAI,KAAK,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACrD,YAAY,CAAC,MAAM,IAAI,KAAK,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5K,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjX;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClT;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC3T;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,iCAAiC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxH,YAAY,CAAC,MAAM,IAAI,KAAK,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzG,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,IAAI,CAAC4hB,SAAQA,OAAM,OAAO,SAASA,IAAG,SAAS,IAAI,KAAK,iBAAiBA,IAAG,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC;AAAA,EACvZ;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,KAAK,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChH,YAAY,CAAC,MAAM,IAAI,KAAK,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/G,YAAY,CAAC,MAAM,IAAI,KAAK,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzX,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAAC5hB,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClT;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpQ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5T;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,iBAAiBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,iBAAiBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/c;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9M,YAAY,CAAC,MAAM,IAAI,KAAK,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5K,WAAW,CAAC,MAAM,IAAI,KAAK,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrK,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,KAAK,8BAA8B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/J;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,kBAAkB,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,KAAK,cAAcA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxY;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1V;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChV,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/N;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACrtC,YAAY,CAAC,MAAM,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAA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AI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IA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BAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,I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A;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AACA,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxC,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;AACxB,UAAI,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;A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", + "sourcesContent": ["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DispatcherWrapper = void 0;\n/**\n * Hides the implementation of the event dispatcher. Will expose methods that\n * are relevent to the event.\n *\n * @export\n * @class DispatcherWrapper\n * @implements {ISubscribable}\n * @template TEventHandler The type of event handler.\n */\nclass DispatcherWrapper {\n /**\n * Creates an instance of DispatcherWrapper.\n * @param {ISubscribable} dispatcher\n *\n * @memberOf DispatcherWrapper\n */\n constructor(dispatcher) {\n this._subscribe = (fn) => dispatcher.subscribe(fn);\n this._unsubscribe = (fn) => dispatcher.unsubscribe(fn);\n this._one = (fn) => dispatcher.one(fn);\n this._has = (fn) => dispatcher.has(fn);\n this._clear = () => dispatcher.clear();\n this._count = () => dispatcher.count;\n this._onSubscriptionChange = () => dispatcher.onSubscriptionChange;\n }\n /**\n * Triggered when subscriptions are changed (added or removed).\n *\n * @readonly\n * @type {ISubscribable}\n * @memberOf DispatcherWrapper\n */\n get onSubscriptionChange() {\n return this._onSubscriptionChange();\n }\n /**\n * Returns the number of subscriptions.\n *\n * @readonly\n * @type {number}\n * @memberOf DispatcherWrapper\n */\n get count() {\n return this._count();\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n subscribe(fn) {\n return this._subscribe(fn);\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n sub(fn) {\n return this.subscribe(fn);\n }\n /**\n * Unsubscribe from the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n unsubscribe(fn) {\n this._unsubscribe(fn);\n }\n /**\n * Unsubscribe from the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n unsub(fn) {\n this.unsubscribe(fn);\n }\n /**\n * Subscribe once to the event with the specified name.\n *\n * @returns {() => void} A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherWrapper\n */\n one(fn) {\n return this._one(fn);\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n *\n * @memberOf DispatcherWrapper\n */\n has(fn) {\n return this._has(fn);\n }\n /**\n * Clears all the subscriptions.\n *\n * @memberOf DispatcherWrapper\n */\n clear() {\n this._clear();\n }\n}\nexports.DispatcherWrapper = DispatcherWrapper;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Subscription = void 0;\n/**\n * Stores a handler. Manages execution meta data.\n * @class Subscription\n * @template TEventHandler\n */\nclass Subscription {\n /**\n * Creates an instance of Subscription.\n *\n * @param {TEventHandler} handler The handler for the subscription.\n * @param {boolean} isOnce Indicates if the handler should only be executed once.\n */\n constructor(handler, isOnce) {\n this.handler = handler;\n this.isOnce = isOnce;\n /**\n * Indicates if the subscription has been executed before.\n */\n this.isExecuted = false;\n }\n /**\n * Executes the handler.\n *\n * @param {boolean} executeAsync True if the even should be executed async.\n * @param {*} scope The scope the scope of the event.\n * @param {IArguments} args The arguments for the event.\n */\n execute(executeAsync, scope, args) {\n if (!this.isOnce || !this.isExecuted) {\n this.isExecuted = true;\n var fn = this.handler;\n if (executeAsync) {\n setTimeout(() => {\n fn.apply(scope, args);\n }, 1);\n }\n else {\n fn.apply(scope, args);\n }\n }\n }\n}\nexports.Subscription = Subscription;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventManagement = void 0;\n/**\n * Allows the user to interact with the event.\n *\n * @export\n * @class EventManagement\n * @implements {IEventManagement}\n */\nclass EventManagement {\n /**\n * Creates an instance of EventManagement.\n * @param {() => void} unsub An unsubscribe handler.\n *\n * @memberOf EventManagement\n */\n constructor(unsub) {\n this.unsub = unsub;\n this.propagationStopped = false;\n }\n /**\n * Stops the propagation of the event.\n * Cannot be used when async dispatch is done.\n *\n * @memberOf EventManagement\n */\n stopPropagation() {\n this.propagationStopped = true;\n }\n}\nexports.EventManagement = EventManagement;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SubscriptionChangeEventDispatcher = exports.DispatcherBase = void 0;\nconst DispatcherWrapper_1 = require(\"./DispatcherWrapper\");\nconst Subscription_1 = require(\"../events/Subscription\");\nconst EventManagement_1 = require(\"../management/EventManagement\");\n/**\n * Base class for implementation of the dispatcher. It facilitates the subscribe\n * and unsubscribe methods based on generic handlers. The TEventType specifies\n * the type of event that should be exposed. Use the asEvent to expose the\n * dispatcher as event.\n *\n * @export\n * @abstract\n * @class DispatcherBase\n * @implements {ISubscribable}\n * @template TEventHandler The type of event handler.\n */\nclass DispatcherBase {\n constructor() {\n /**\n * The subscriptions.\n *\n * @protected\n *\n * @memberOf DispatcherBase\n */\n this._subscriptions = new Array();\n }\n /**\n * Returns the number of subscriptions.\n *\n * @readonly\n * @type {number}\n * @memberOf DispatcherBase\n */\n get count() {\n return this._subscriptions.length;\n }\n /**\n * Triggered when subscriptions are changed (added or removed).\n *\n * @readonly\n * @type {ISubscribable}\n * @memberOf DispatcherBase\n */\n get onSubscriptionChange() {\n if (this._onSubscriptionChange == null) {\n this._onSubscriptionChange = new SubscriptionChangeEventDispatcher();\n }\n return this._onSubscriptionChange.asEvent();\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n subscribe(fn) {\n if (fn) {\n this._subscriptions.push(this.createSubscription(fn, false));\n this.triggerSubscriptionChange();\n }\n return () => {\n this.unsubscribe(fn);\n };\n }\n /**\n * Subscribe to the event dispatcher.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n sub(fn) {\n return this.subscribe(fn);\n }\n /**\n * Subscribe once to the event with the specified name.\n *\n * @param {TEventHandler} fn The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n *\n * @memberOf DispatcherBase\n */\n one(fn) {\n if (fn) {\n this._subscriptions.push(this.createSubscription(fn, true));\n this.triggerSubscriptionChange();\n }\n return () => {\n this.unsubscribe(fn);\n };\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n has(fn) {\n if (!fn)\n return false;\n return this._subscriptions.some((sub) => sub.handler == fn);\n }\n /**\n * Unsubscribes the handler from the dispatcher.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n unsubscribe(fn) {\n if (!fn)\n return;\n let changes = false;\n for (let i = 0; i < this._subscriptions.length; i++) {\n if (this._subscriptions[i].handler == fn) {\n this._subscriptions.splice(i, 1);\n changes = true;\n break;\n }\n }\n if (changes) {\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Unsubscribes the handler from the dispatcher.\n *\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf DispatcherBase\n */\n unsub(fn) {\n this.unsubscribe(fn);\n }\n /**\n * Generic dispatch will dispatch the handlers with the given arguments.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n _dispatch(executeAsync, scope, args) {\n //execute on a copy because of bug #9\n for (let sub of [...this._subscriptions]) {\n let ev = new EventManagement_1.EventManagement(() => this.unsub(sub.handler));\n let nargs = Array.prototype.slice.call(args);\n nargs.push(ev);\n let s = sub;\n s.execute(executeAsync, scope, nargs);\n //cleanup subs that are no longer needed\n this.cleanup(sub);\n if (!executeAsync && ev.propagationStopped) {\n return { propagationStopped: true };\n }\n }\n if (executeAsync) {\n return null;\n }\n return { propagationStopped: false };\n }\n /**\n * Creates a subscription.\n *\n * @protected\n * @param {TEventHandler} handler The handler.\n * @param {boolean} isOnce True if the handler should run only one.\n * @returns {ISubscription} The subscription.\n *\n * @memberOf DispatcherBase\n */\n createSubscription(handler, isOnce) {\n return new Subscription_1.Subscription(handler, isOnce);\n }\n /**\n * Cleans up subs that ran and should run only once.\n *\n * @protected\n * @param {ISubscription} sub The subscription.\n *\n * @memberOf DispatcherBase\n */\n cleanup(sub) {\n let changes = false;\n if (sub.isOnce && sub.isExecuted) {\n let i = this._subscriptions.indexOf(sub);\n if (i > -1) {\n this._subscriptions.splice(i, 1);\n changes = true;\n }\n }\n if (changes) {\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISubscribable}\n *\n * @memberOf DispatcherBase\n */\n asEvent() {\n if (this._wrap == null) {\n this._wrap = new DispatcherWrapper_1.DispatcherWrapper(this);\n }\n return this._wrap;\n }\n /**\n * Clears the subscriptions.\n *\n * @memberOf DispatcherBase\n */\n clear() {\n if (this._subscriptions.length != 0) {\n this._subscriptions.splice(0, this._subscriptions.length);\n this.triggerSubscriptionChange();\n }\n }\n /**\n * Triggers the subscription change event.\n *\n * @private\n *\n * @memberOf DispatcherBase\n */\n triggerSubscriptionChange() {\n if (this._onSubscriptionChange != null) {\n this._onSubscriptionChange.dispatch(this.count);\n }\n }\n}\nexports.DispatcherBase = DispatcherBase;\n/**\n * Dispatcher for subscription changes.\n *\n * @export\n * @class SubscriptionChangeEventDispatcher\n * @extends {DispatcherBase}\n */\nclass SubscriptionChangeEventDispatcher extends DispatcherBase {\n /**\n * Dispatches the event.\n *\n * @param {number} count The currrent number of subscriptions.\n *\n * @memberOf SubscriptionChangeEventDispatcher\n */\n dispatch(count) {\n this._dispatch(false, this, arguments);\n }\n}\nexports.SubscriptionChangeEventDispatcher = SubscriptionChangeEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DispatchError = void 0;\n/**\n * Indicates an error with dispatching.\n *\n * @export\n * @class DispatchError\n * @extends {Error}\n */\nclass DispatchError extends Error {\n /**\n * Creates an instance of DispatchError.\n * @param {string} message The message.\n *\n * @memberOf DispatchError\n */\n constructor(message) {\n super(message);\n }\n}\nexports.DispatchError = DispatchError;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventListBase = void 0;\n/**\n * Base class for event lists classes. Implements the get and remove.\n *\n * @export\n * @abstract\n * @class EventListBaset\n * @template TEventDispatcher The type of event dispatcher.\n */\nclass EventListBase {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n *\n * @param {string} name The name of the event.\n * @returns {TEventDispatcher} The disptacher.\n *\n * @memberOf EventListBase\n */\n get(name) {\n let event = this._events[name];\n if (event) {\n return event;\n }\n event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n *\n * @param {string} name\n *\n * @memberOf EventListBase\n */\n remove(name) {\n delete this._events[name];\n }\n}\nexports.EventListBase = EventListBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HandlingBase = void 0;\n/**\n * Base class that implements event handling. With a an\n * event list this base class will expose events that can be\n * subscribed to. This will give your class generic events.\n *\n * @export\n * @abstract\n * @class HandlingBase\n * @template TEventHandler The type of event handler.\n * @template TDispatcher The type of dispatcher.\n * @template TList The type of event list.\n */\nclass HandlingBase {\n /**\n * Creates an instance of HandlingBase.\n * @param {TList} events The event list. Used for event management.\n *\n * @memberOf HandlingBase\n */\n constructor(events) {\n this.events = events;\n }\n /**\n * Subscribes once to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n one(name, fn) {\n this.events.get(name).one(fn);\n }\n /**\n * Checks it the event has a subscription for the specified handler.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n has(name, fn) {\n return this.events.get(name).has(fn);\n }\n /**\n * Subscribes to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n subscribe(name, fn) {\n this.events.get(name).subscribe(fn);\n }\n /**\n * Subscribes to the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n sub(name, fn) {\n this.subscribe(name, fn);\n }\n /**\n * Unsubscribes from the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n unsubscribe(name, fn) {\n this.events.get(name).unsubscribe(fn);\n }\n /**\n * Unsubscribes from the event with the specified name.\n * @param {string} name The name of the event.\n * @param {TEventHandler} fn The event handler.\n *\n * @memberOf HandlingBase\n */\n unsub(name, fn) {\n this.unsubscribe(name, fn);\n }\n}\nexports.HandlingBase = HandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSubscription = void 0;\n/**\n * Subscription implementation for events with promises.\n *\n * @export\n * @class PromiseSubscription\n * @implements {ISubscription}\n * @template TEventHandler The type of event handler.\n */\nclass PromiseSubscription {\n /**\n * Creates an instance of PromiseSubscription.\n * @param {TEventHandler} handler The handler for the subscription.\n * @param {boolean} isOnce Indicates if the handler should only be executed once.\n *\n * @memberOf PromiseSubscription\n */\n constructor(handler, isOnce) {\n this.handler = handler;\n this.isOnce = isOnce;\n /**\n * Indicates if the subscription has been executed before.\n *\n * @memberOf PromiseSubscription\n */\n this.isExecuted = false;\n }\n /**\n * Executes the handler.\n *\n * @param {boolean} executeAsync True if the even should be executed async.\n * @param {*} scope The scope the scope of the event.\n * @param {IArguments} args The arguments for the event.\n *\n * @memberOf PromiseSubscription\n */\n async execute(executeAsync, scope, args) {\n if (!this.isOnce || !this.isExecuted) {\n this.isExecuted = true;\n //TODO: do we need to cast to any -- seems yuck\n var fn = this.handler;\n if (executeAsync) {\n setTimeout(() => {\n fn.apply(scope, args);\n }, 1);\n return;\n }\n let result = fn.apply(scope, args);\n await result;\n }\n }\n}\nexports.PromiseSubscription = PromiseSubscription;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseDispatcherBase = void 0;\nconst PromiseSubscription_1 = require(\"../events/PromiseSubscription\");\nconst EventManagement_1 = require(\"../management/EventManagement\");\nconst DispatcherBase_1 = require(\"./DispatcherBase\");\nconst DispatchError_1 = require(\"./DispatchError\");\n/**\n * Dispatcher base for dispatchers that use promises. Each promise\n * is awaited before the next is dispatched, unless the event is\n * dispatched with the executeAsync flag.\n *\n * @export\n * @abstract\n * @class PromiseDispatcherBase\n * @extends {DispatcherBase}\n * @template TEventHandler The type of event handler.\n */\nclass PromiseDispatcherBase extends DispatcherBase_1.DispatcherBase {\n /**\n * The normal dispatch cannot be used in this class.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n _dispatch(executeAsync, scope, args) {\n throw new DispatchError_1.DispatchError(\"_dispatch not supported. Use _dispatchAsPromise.\");\n }\n /**\n * Crates a new subscription.\n *\n * @protected\n * @param {TEventHandler} handler The handler.\n * @param {boolean} isOnce Indicates if the handler should only run once.\n * @returns {ISubscription} The subscription.\n *\n * @memberOf PromiseDispatcherBase\n */\n createSubscription(handler, isOnce) {\n return new PromiseSubscription_1.PromiseSubscription(handler, isOnce);\n }\n /**\n * Generic dispatch will dispatch the handlers with the given arguments.\n *\n * @protected\n * @param {boolean} executeAsync `True` if the even should be executed async.\n * @param {*} scope The scope of the event. The scope becomes the `this` for handler.\n * @param {IArguments} args The arguments for the event.\n * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.\n *\n * @memberOf DispatcherBase\n */\n async _dispatchAsPromise(executeAsync, scope, args) {\n //execute on a copy because of bug #9\n for (let sub of [...this._subscriptions]) {\n let ev = new EventManagement_1.EventManagement(() => this.unsub(sub.handler));\n let nargs = Array.prototype.slice.call(args);\n nargs.push(ev);\n let ps = sub;\n await ps.execute(executeAsync, scope, nargs);\n //cleanup subs that are no longer needed\n this.cleanup(sub);\n if (!executeAsync && ev.propagationStopped) {\n return { propagationStopped: true };\n }\n }\n if (executeAsync) {\n return null;\n }\n return { propagationStopped: false };\n }\n}\nexports.PromiseDispatcherBase = PromiseDispatcherBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SubscriptionChangeEventDispatcher = exports.HandlingBase = exports.PromiseDispatcherBase = exports.PromiseSubscription = exports.DispatchError = exports.EventManagement = exports.EventListBase = exports.DispatcherWrapper = exports.DispatcherBase = exports.Subscription = void 0;\nconst DispatcherBase_1 = require(\"./dispatching/DispatcherBase\");\nObject.defineProperty(exports, \"DispatcherBase\", { enumerable: true, get: function () { return DispatcherBase_1.DispatcherBase; } });\nObject.defineProperty(exports, \"SubscriptionChangeEventDispatcher\", { enumerable: true, get: function () { return DispatcherBase_1.SubscriptionChangeEventDispatcher; } });\nconst DispatchError_1 = require(\"./dispatching/DispatchError\");\nObject.defineProperty(exports, \"DispatchError\", { enumerable: true, get: function () { return DispatchError_1.DispatchError; } });\nconst DispatcherWrapper_1 = require(\"./dispatching/DispatcherWrapper\");\nObject.defineProperty(exports, \"DispatcherWrapper\", { enumerable: true, get: function () { return DispatcherWrapper_1.DispatcherWrapper; } });\nconst EventListBase_1 = require(\"./dispatching/EventListBase\");\nObject.defineProperty(exports, \"EventListBase\", { enumerable: true, get: function () { return EventListBase_1.EventListBase; } });\nconst EventManagement_1 = require(\"./management/EventManagement\");\nObject.defineProperty(exports, \"EventManagement\", { enumerable: true, get: function () { return EventManagement_1.EventManagement; } });\nconst HandlingBase_1 = require(\"./handling/HandlingBase\");\nObject.defineProperty(exports, \"HandlingBase\", { enumerable: true, get: function () { return HandlingBase_1.HandlingBase; } });\nconst PromiseDispatcherBase_1 = require(\"./dispatching/PromiseDispatcherBase\");\nObject.defineProperty(exports, \"PromiseDispatcherBase\", { enumerable: true, get: function () { return PromiseDispatcherBase_1.PromiseDispatcherBase; } });\nconst PromiseSubscription_1 = require(\"./events/PromiseSubscription\");\nObject.defineProperty(exports, \"PromiseSubscription\", { enumerable: true, get: function () { return PromiseSubscription_1.PromiseSubscription; } });\nconst Subscription_1 = require(\"./events/Subscription\");\nObject.defineProperty(exports, \"Subscription\", { enumerable: true, get: function () { return Subscription_1.Subscription; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * Dispatcher implementation for events. Can be used to subscribe, unsubscribe\n * or dispatch events. Use the ToEvent() method to expose the event.\n *\n * @export\n * @class EventDispatcher\n * @extends {DispatcherBase>}\n * @implements {IEvent}\n * @template TSender The sender type.\n * @template TArgs The event arguments type.\n */\nclass EventDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Creates an instance of EventDispatcher.\n *\n * @memberOf EventDispatcher\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TSender} sender The sender.\n * @param {TArgs} args The arguments.\n * @returns {IPropagationStatus} The propagation status to interact with the event\n *\n * @memberOf EventDispatcher\n */\n dispatch(sender, args) {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event in an async way. Does not support event interaction.\n *\n * @param {TSender} sender The sender.\n * @param {TArgs} args The arguments.\n *\n * @memberOf EventDispatcher\n */\n dispatchAsync(sender, args) {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {IEvent} The event.\n *\n * @memberOf EventDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.EventDispatcher = EventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\n/**\n * Storage class for multiple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass EventList extends ste_core_1.EventListBase {\n /**\n * Creates a new EventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new EventDispatcher_1.EventDispatcher();\n }\n}\nexports.EventList = EventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst EventList_1 = require(\"./EventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass EventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new EventList_1.EventList());\n }\n}\nexports.EventHandlingBase = EventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformEventList = void 0;\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new EventDispatcher_1.EventDispatcher();\n }\n}\nexports.NonUniformEventList = NonUniformEventList;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformEventList = exports.EventList = exports.EventHandlingBase = exports.EventDispatcher = void 0;\nconst EventDispatcher_1 = require(\"./EventDispatcher\");\nObject.defineProperty(exports, \"EventDispatcher\", { enumerable: true, get: function () { return EventDispatcher_1.EventDispatcher; } });\nconst EventHandlingBase_1 = require(\"./EventHandlingBase\");\nObject.defineProperty(exports, \"EventHandlingBase\", { enumerable: true, get: function () { return EventHandlingBase_1.EventHandlingBase; } });\nconst EventList_1 = require(\"./EventList\");\nObject.defineProperty(exports, \"EventList\", { enumerable: true, get: function () { return EventList_1.EventList; } });\nconst NonUniformEventList_1 = require(\"./NonUniformEventList\");\nObject.defineProperty(exports, \"NonUniformEventList\", { enumerable: true, get: function () { return NonUniformEventList_1.NonUniformEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a simple event\n *\n * @export\n * @class SimpleEventDispatcher\n * @extends {DispatcherBase>}\n * @implements {ISimpleEvent}\n * @template TArgs\n */\nclass SimpleEventDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Creates an instance of SimpleEventDispatcher.\n *\n * @memberOf SimpleEventDispatcher\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TArgs} args The arguments object.\n * @returns {IPropagationStatus} The status of the event.\n *\n * @memberOf SimpleEventDispatcher\n */\n dispatch(args) {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for the result.\n *\n * @param {TArgs} args The arguments object.\n *\n * @memberOf SimpleEventDispatcher\n */\n dispatchAsync(args) {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISimpleEvent} The event.\n *\n * @memberOf SimpleEventDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.SimpleEventDispatcher = SimpleEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\n/**\n * Storage class for multiple simple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass SimpleEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new SimpleEventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new SimpleEventDispatcher_1.SimpleEventDispatcher();\n }\n}\nexports.SimpleEventList = SimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SimpleEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SimpleEventList_1 = require(\"./SimpleEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass SimpleEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new SimpleEventList_1.SimpleEventList());\n }\n}\nexports.SimpleEventHandlingBase = SimpleEventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformSimpleEventList = void 0;\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformSimpleEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new SimpleEventDispatcher_1.SimpleEventDispatcher();\n }\n}\nexports.NonUniformSimpleEventList = NonUniformSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformSimpleEventList = exports.SimpleEventList = exports.SimpleEventHandlingBase = exports.SimpleEventDispatcher = void 0;\nconst SimpleEventDispatcher_1 = require(\"./SimpleEventDispatcher\");\nObject.defineProperty(exports, \"SimpleEventDispatcher\", { enumerable: true, get: function () { return SimpleEventDispatcher_1.SimpleEventDispatcher; } });\nconst SimpleEventHandlingBase_1 = require(\"./SimpleEventHandlingBase\");\nObject.defineProperty(exports, \"SimpleEventHandlingBase\", { enumerable: true, get: function () { return SimpleEventHandlingBase_1.SimpleEventHandlingBase; } });\nconst NonUniformSimpleEventList_1 = require(\"./NonUniformSimpleEventList\");\nObject.defineProperty(exports, \"NonUniformSimpleEventList\", { enumerable: true, get: function () { return NonUniformSimpleEventList_1.NonUniformSimpleEventList; } });\nconst SimpleEventList_1 = require(\"./SimpleEventList\");\nObject.defineProperty(exports, \"SimpleEventList\", { enumerable: true, get: function () { return SimpleEventList_1.SimpleEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a signal event.\n *\n * @export\n * @class SignalDispatcher\n * @extends {DispatcherBase}\n * @implements {ISignal}\n */\nclass SignalDispatcher extends ste_core_1.DispatcherBase {\n /**\n * Dispatches the signal.\n *\n * @returns {IPropagationStatus} The status of the signal.\n *\n * @memberOf SignalDispatcher\n */\n dispatch() {\n const result = this._dispatch(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the signal without waiting for the result.\n *\n * @memberOf SignalDispatcher\n */\n dispatchAsync() {\n this._dispatch(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n *\n * @returns {ISignal} The signal.\n *\n * @memberOf SignalDispatcher\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.SignalDispatcher = SignalDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SignalDispatcher_1 = require(\"./SignalDispatcher\");\n/**\n * Storage class for multiple signal events that are accessible by name.\n * Events dispatchers are automatically created.\n *\n * @export\n * @class SignalList\n * @extends {EventListBase}\n */\nclass SignalList extends ste_core_1.EventListBase {\n /**\n * Creates an instance of SignalList.\n *\n * @memberOf SignalList\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n *\n * @protected\n * @returns {SignalDispatcher}\n *\n * @memberOf SignalList\n */\n createDispatcher() {\n return new SignalDispatcher_1.SignalDispatcher();\n }\n}\nexports.SignalList = SignalList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst SignalList_1 = require(\"./SignalList\");\n/**\n * Extends objects with signal event handling capabilities.\n *\n * @export\n * @abstract\n * @class SignalHandlingBase\n * @extends {HandlingBase}\n * @implements {ISignalHandling}\n */\nclass SignalHandlingBase extends ste_core_1.HandlingBase {\n /**\n * Creates an instance of SignalHandlingBase.\n *\n * @memberOf SignalHandlingBase\n */\n constructor() {\n super(new SignalList_1.SignalList());\n }\n}\nexports.SignalHandlingBase = SignalHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Promise Signals\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignalList = exports.SignalHandlingBase = exports.SignalDispatcher = void 0;\nconst SignalDispatcher_1 = require(\"./SignalDispatcher\");\nObject.defineProperty(exports, \"SignalDispatcher\", { enumerable: true, get: function () { return SignalDispatcher_1.SignalDispatcher; } });\nconst SignalHandlingBase_1 = require(\"./SignalHandlingBase\");\nObject.defineProperty(exports, \"SignalHandlingBase\", { enumerable: true, get: function () { return SignalHandlingBase_1.SignalHandlingBase; } });\nconst SignalList_1 = require(\"./SignalList\");\nObject.defineProperty(exports, \"SignalList\", { enumerable: true, get: function () { return SignalList_1.SignalList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * Dispatcher implementation for events. Can be used to subscribe, unsubscribe\n * or dispatch events. Use the ToEvent() method to expose the event.\n *\n * @export\n * @class PromiseEventDispatcher\n * @extends {PromiseDispatcherBase>}\n * @implements {IPromiseEvent}\n * @template TSender\n * @template TArgs\n */\nclass PromiseEventDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new EventDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n *\n * @param {TSender} sender The sender object.\n * @param {TArgs} args The argument object.\n * @returns {Promise} The status.\n *\n * @memberOf PromiseEventDispatcher\n */\n async dispatch(sender, args) {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for the result.\n *\n * @param {TSender} sender The sender object.\n * @param {TArgs} args The argument object.\n *\n * @memberOf PromiseEventDispatcher\n */\n dispatchAsync(sender, args) {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseEventDispatcher = PromiseEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\n/**\n * Storage class for multiple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new EventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseEventDispatcher_1.PromiseEventDispatcher();\n }\n}\nexports.PromiseEventList = PromiseEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseEventList_1 = require(\"./PromiseEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseEventList_1.PromiseEventList());\n }\n}\nexports.PromiseEventHandlingBase = PromiseEventHandlingBase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseEventList = void 0;\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformPromiseEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseEventDispatcher_1.PromiseEventDispatcher();\n }\n}\nexports.NonUniformPromiseEventList = NonUniformPromiseEventList;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseEventList = exports.PromiseEventList = exports.PromiseEventHandlingBase = exports.PromiseEventDispatcher = void 0;\nconst PromiseEventDispatcher_1 = require(\"./PromiseEventDispatcher\");\nObject.defineProperty(exports, \"PromiseEventDispatcher\", { enumerable: true, get: function () { return PromiseEventDispatcher_1.PromiseEventDispatcher; } });\nconst PromiseEventHandlingBase_1 = require(\"./PromiseEventHandlingBase\");\nObject.defineProperty(exports, \"PromiseEventHandlingBase\", { enumerable: true, get: function () { return PromiseEventHandlingBase_1.PromiseEventHandlingBase; } });\nconst PromiseEventList_1 = require(\"./PromiseEventList\");\nObject.defineProperty(exports, \"PromiseEventList\", { enumerable: true, get: function () { return PromiseEventList_1.PromiseEventList; } });\nconst NonUniformPromiseEventList_1 = require(\"./NonUniformPromiseEventList\");\nObject.defineProperty(exports, \"NonUniformPromiseEventList\", { enumerable: true, get: function () { return NonUniformPromiseEventList_1.NonUniformPromiseEventList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a signal event.\n */\nclass PromiseSignalDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new SignalDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the signal.\n *\n * @returns {IPropagationStatus} The status of the dispatch.\n *\n * @memberOf SignalDispatcher\n */\n async dispatch() {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the signal threaded.\n */\n dispatchAsync() {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseSignalDispatcher = PromiseSignalDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSignalDispatcher_1 = require(\"./PromiseSignalDispatcher\");\n/**\n * Storage class for multiple signal events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseSignalList extends ste_core_1.EventListBase {\n /**\n * Creates a new SignalList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSignalDispatcher_1.PromiseSignalDispatcher();\n }\n}\nexports.PromiseSignalList = PromiseSignalList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSignalList_1 = require(\"./PromiseSignalList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseSignalHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseSignalList_1.PromiseSignalList());\n }\n}\nexports.PromiseSignalHandlingBase = PromiseSignalHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Promise Signals\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSignalList = exports.PromiseSignalHandlingBase = exports.PromiseSignalDispatcher = void 0;\nconst PromiseSignalDispatcher_1 = require(\"./PromiseSignalDispatcher\");\nObject.defineProperty(exports, \"PromiseSignalDispatcher\", { enumerable: true, get: function () { return PromiseSignalDispatcher_1.PromiseSignalDispatcher; } });\nconst PromiseSignalHandlingBase_1 = require(\"./PromiseSignalHandlingBase\");\nObject.defineProperty(exports, \"PromiseSignalHandlingBase\", { enumerable: true, get: function () { return PromiseSignalHandlingBase_1.PromiseSignalHandlingBase; } });\nconst PromiseSignalList_1 = require(\"./PromiseSignalList\");\nObject.defineProperty(exports, \"PromiseSignalList\", { enumerable: true, get: function () { return PromiseSignalList_1.PromiseSignalList; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventDispatcher = void 0;\nconst ste_core_1 = require(\"ste-core\");\n/**\n * The dispatcher handles the storage of subsciptions and facilitates\n * subscription, unsubscription and dispatching of a simple event\n *\n * @export\n * @class PromiseSimpleEventDispatcher\n * @extends {PromiseDispatcherBase>}\n * @implements {IPromiseSimpleEvent}\n * @template TArgs\n */\nclass PromiseSimpleEventDispatcher extends ste_core_1.PromiseDispatcherBase {\n /**\n * Creates a new SimpleEventDispatcher instance.\n */\n constructor() {\n super();\n }\n /**\n * Dispatches the event.\n * @param args The arguments object.\n * @returns {IPropagationStatus} The status of the dispatch.\n * @memberOf PromiseSimpleEventDispatcher\n */\n async dispatch(args) {\n const result = await this._dispatchAsPromise(false, this, arguments);\n if (result == null) {\n throw new ste_core_1.DispatchError(\"Got `null` back from dispatch.\");\n }\n return result;\n }\n /**\n * Dispatches the event without waiting for it to complete.\n * @param args The argument object.\n * @memberOf PromiseSimpleEventDispatcher\n */\n dispatchAsync(args) {\n this._dispatchAsPromise(true, this, arguments);\n }\n /**\n * Creates an event from the dispatcher. Will return the dispatcher\n * in a wrapper. This will prevent exposure of any dispatcher methods.\n */\n asEvent() {\n return super.asEvent();\n }\n}\nexports.PromiseSimpleEventDispatcher = PromiseSimpleEventDispatcher;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseSimpleEventList = void 0;\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\n/**\n * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.\n */\nclass NonUniformPromiseSimpleEventList {\n constructor() {\n this._events = {};\n }\n /**\n * Gets the dispatcher associated with the name.\n * @param name The name of the event.\n */\n get(name) {\n if (this._events[name]) {\n // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.\n return this._events[name];\n }\n const event = this.createDispatcher();\n this._events[name] = event;\n return event;\n }\n /**\n * Removes the dispatcher associated with the name.\n * @param name The name of the event.\n */\n remove(name) {\n delete this._events[name];\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher();\n }\n}\nexports.NonUniformPromiseSimpleEventList = NonUniformPromiseSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventList = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\n/**\n * Storage class for multiple simple events that are accessible by name.\n * Events dispatchers are automatically created.\n */\nclass PromiseSimpleEventList extends ste_core_1.EventListBase {\n /**\n * Creates a new SimpleEventList instance.\n */\n constructor() {\n super();\n }\n /**\n * Creates a new dispatcher instance.\n */\n createDispatcher() {\n return new PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher();\n }\n}\nexports.PromiseSimpleEventList = PromiseSimpleEventList;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromiseSimpleEventHandlingBase = void 0;\nconst ste_core_1 = require(\"ste-core\");\nconst PromiseSimpleEventList_1 = require(\"./PromiseSimpleEventList\");\n/**\n * Extends objects with signal event handling capabilities.\n */\nclass PromiseSimpleEventHandlingBase extends ste_core_1.HandlingBase {\n constructor() {\n super(new PromiseSimpleEventList_1.PromiseSimpleEventList());\n }\n}\nexports.PromiseSimpleEventHandlingBase = PromiseSimpleEventHandlingBase;\n", "\"use strict\";\n/*!\n * Strongly Typed Events for TypeScript - Core\n * https://github.com/KeesCBakker/StronlyTypedEvents/\n * http://keestalkstech.com\n *\n * Copyright Kees C. Bakker / KeesTalksTech\n * Released under the MIT license\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NonUniformPromiseSimpleEventList = exports.PromiseSimpleEventList = exports.PromiseSimpleEventHandlingBase = exports.PromiseSimpleEventDispatcher = void 0;\nconst NonUniformPromiseSimpleEventList_1 = require(\"./NonUniformPromiseSimpleEventList\");\nObject.defineProperty(exports, \"NonUniformPromiseSimpleEventList\", { enumerable: true, get: function () { return NonUniformPromiseSimpleEventList_1.NonUniformPromiseSimpleEventList; } });\nconst PromiseSimpleEventDispatcher_1 = require(\"./PromiseSimpleEventDispatcher\");\nObject.defineProperty(exports, \"PromiseSimpleEventDispatcher\", { enumerable: true, get: function () { return PromiseSimpleEventDispatcher_1.PromiseSimpleEventDispatcher; } });\nconst PromiseSimpleEventHandlingBase_1 = require(\"./PromiseSimpleEventHandlingBase\");\nObject.defineProperty(exports, \"PromiseSimpleEventHandlingBase\", { enumerable: true, get: function () { return PromiseSimpleEventHandlingBase_1.PromiseSimpleEventHandlingBase; } });\nconst PromiseSimpleEventList_1 = require(\"./PromiseSimpleEventList\");\nObject.defineProperty(exports, \"PromiseSimpleEventList\", { enumerable: true, get: function () { return PromiseSimpleEventList_1.PromiseSimpleEventList; } });\n", "\"use strict\";\r\n/*!\r\n * Strongly Typed Events for TypeScript\r\n * https://github.com/KeesCBakker/StronlyTypedEvents/\r\n * http://keestalkstech.com\r\n *\r\n * Copyright Kees C. Bakker / KeesTalksTech\r\n * Released under the MIT license\r\n */\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.NonUniformPromiseSimpleEventList = exports.PromiseSimpleEventList = exports.PromiseSimpleEventHandlingBase = exports.PromiseSimpleEventDispatcher = exports.PromiseSignalList = exports.PromiseSignalHandlingBase = exports.PromiseSignalDispatcher = exports.NonUniformPromiseEventList = exports.PromiseEventList = exports.PromiseEventHandlingBase = exports.PromiseEventDispatcher = exports.SignalList = exports.SignalHandlingBase = exports.SignalDispatcher = exports.NonUniformSimpleEventList = exports.SimpleEventList = exports.SimpleEventHandlingBase = exports.SimpleEventDispatcher = exports.NonUniformEventList = exports.EventList = exports.EventHandlingBase = exports.EventDispatcher = exports.HandlingBase = exports.PromiseDispatcherBase = exports.PromiseSubscription = exports.DispatchError = exports.EventManagement = exports.EventListBase = exports.DispatcherWrapper = exports.DispatcherBase = exports.Subscription = void 0;\r\nvar ste_core_1 = require(\"ste-core\");\r\nObject.defineProperty(exports, \"Subscription\", { enumerable: true, get: function () { return ste_core_1.Subscription; } });\r\nObject.defineProperty(exports, \"DispatcherBase\", { enumerable: true, get: function () { return ste_core_1.DispatcherBase; } });\r\nObject.defineProperty(exports, \"DispatcherWrapper\", { enumerable: true, get: function () { return ste_core_1.DispatcherWrapper; } });\r\nObject.defineProperty(exports, \"EventListBase\", { enumerable: true, get: function () { return ste_core_1.EventListBase; } });\r\nObject.defineProperty(exports, \"EventManagement\", { enumerable: true, get: function () { return ste_core_1.EventManagement; } });\r\nObject.defineProperty(exports, \"DispatchError\", { enumerable: true, get: function () { return ste_core_1.DispatchError; } });\r\nObject.defineProperty(exports, \"PromiseSubscription\", { enumerable: true, get: function () { return ste_core_1.PromiseSubscription; } });\r\nObject.defineProperty(exports, \"PromiseDispatcherBase\", { enumerable: true, get: function () { return ste_core_1.PromiseDispatcherBase; } });\r\nObject.defineProperty(exports, \"HandlingBase\", { enumerable: true, get: function () { return ste_core_1.HandlingBase; } });\r\nvar ste_events_1 = require(\"ste-events\");\r\nObject.defineProperty(exports, \"EventDispatcher\", { enumerable: true, get: function () { return ste_events_1.EventDispatcher; } });\r\nObject.defineProperty(exports, \"EventHandlingBase\", { enumerable: true, get: function () { return ste_events_1.EventHandlingBase; } });\r\nObject.defineProperty(exports, \"EventList\", { enumerable: true, get: function () { return ste_events_1.EventList; } });\r\nObject.defineProperty(exports, \"NonUniformEventList\", { enumerable: true, get: function () { return ste_events_1.NonUniformEventList; } });\r\nvar ste_simple_events_1 = require(\"ste-simple-events\");\r\nObject.defineProperty(exports, \"SimpleEventDispatcher\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventDispatcher; } });\r\nObject.defineProperty(exports, \"SimpleEventHandlingBase\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventHandlingBase; } });\r\nObject.defineProperty(exports, \"SimpleEventList\", { enumerable: true, get: function () { return ste_simple_events_1.SimpleEventList; } });\r\nObject.defineProperty(exports, \"NonUniformSimpleEventList\", { enumerable: true, get: function () { return ste_simple_events_1.NonUniformSimpleEventList; } });\r\nvar ste_signals_1 = require(\"ste-signals\");\r\nObject.defineProperty(exports, \"SignalDispatcher\", { enumerable: true, get: function () { return ste_signals_1.SignalDispatcher; } });\r\nObject.defineProperty(exports, \"SignalHandlingBase\", { enumerable: true, get: function () { return ste_signals_1.SignalHandlingBase; } });\r\nObject.defineProperty(exports, \"SignalList\", { enumerable: true, get: function () { return ste_signals_1.SignalList; } });\r\nvar ste_promise_events_1 = require(\"ste-promise-events\");\r\nObject.defineProperty(exports, \"PromiseEventDispatcher\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseEventHandlingBase\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseEventList\", { enumerable: true, get: function () { return ste_promise_events_1.PromiseEventList; } });\r\nObject.defineProperty(exports, \"NonUniformPromiseEventList\", { enumerable: true, get: function () { return ste_promise_events_1.NonUniformPromiseEventList; } });\r\nvar ste_promise_signals_1 = require(\"ste-promise-signals\");\r\nObject.defineProperty(exports, \"PromiseSignalDispatcher\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseSignalHandlingBase\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseSignalList\", { enumerable: true, get: function () { return ste_promise_signals_1.PromiseSignalList; } });\r\nvar ste_promise_simple_events_1 = require(\"ste-promise-simple-events\");\r\nObject.defineProperty(exports, \"PromiseSimpleEventDispatcher\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventDispatcher; } });\r\nObject.defineProperty(exports, \"PromiseSimpleEventHandlingBase\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventHandlingBase; } });\r\nObject.defineProperty(exports, \"PromiseSimpleEventList\", { enumerable: true, get: function () { return ste_promise_simple_events_1.PromiseSimpleEventList; } });\r\nObject.defineProperty(exports, \"NonUniformPromiseSimpleEventList\", { enumerable: true, get: function () { return ste_promise_simple_events_1.NonUniformPromiseSimpleEventList; } });\r\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcore.svg)](https://badge.fury.io/js/%40xeokit%2Fcore)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/core/badge)](https://www.jsdelivr.com/package/npm/@xeokit/core)\n *\n * \n *\n * ## xeokit SDK Core Components\n *\n * * {@link @xeokit/core!Component | Component} base class\n * * Various interfaces that are implemented throughout the SDK.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/core\n * ````\n *\n * @module @xeokit/core\n */\n\nexport * from \"./Component\";\nexport * from \"./SDKError\";\nexport * from \"./EventEmitter\";\nexport * from \"./Capabilities\";\nexport * from \"./TextureTranscoder\";\nexport * from \"./TextureCompressedParams\";\n", "import type {IEvent} from \"strongly-typed-events\";\n\n/**\n * Event emitter.\n *\n * @typeParam TSender - Type of the event sender\n * @typeParam TArgs - Type of the event argument\n */\nexport class EventEmitter {\n\n #ievent: any;\n\n constructor(ievent: IEvent) {\n this.#ievent = ievent;\n }\n\n /**\n * Returns the number of subscriptions.\n */\n get count() : number {\n return this.#ievent.count;\n }\n /**\n * Subscribe to the event.\n *\n * @param func The event handler that is called when the event is dispatched.\n * @returns Function that unsubscribes the event handler from the event.\n */\n subscribe(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().subscribe(func);\n }\n\n /**\n * @private\n * @param sender\n * @param args\n */\n dispatch(sender: TSender, args: TArgs): void {\n this.#ievent.dispatch(sender, args);\n }\n\n /**\n * Subscribe to the event.\n * @param func The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n */\n sub(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().sub(func);\n }\n /**\n * Unsubscribe from the event.\n * @param func The event handler that will be unsubsribed from the event.\n */\n unsubscribe(func: (a: TSender, b: TArgs) => void): void {\n this.#ievent.asEvent().unsubscribe(func);\n }\n\n /**\n * Unsubscribe from the event.\n * @param func The event handler that will be unsubsribed from the event.\n */\n unsub(func: (a: TSender, b: TArgs) => void): void {\n this.#ievent.asEvent().unsub(func);\n }\n\n /**\n * Subscribes to the event only once.\n * @param func The event handler that is called when the event is dispatched.\n * @returns A function that unsubscribes the event handler from the event.\n */\n one(func: (a: TSender, b: TArgs) => void): () => void {\n return this.#ievent.asEvent().one(func);\n }\n\n /**\n * Checks if the event has a subscription for the specified handler.\n * @param func The event handler.\n */\n has(func: (a: TSender, b: TArgs) => void): boolean {\n return this.#ievent.asEvent().has(func);\n }\n\n /**\n * Clears all the subscriptions.\n */\n clear(): void {\n this.#ievent.asEvent().clear();\n }\n}", "import {EventEmitter} from \"./EventEmitter\";\nimport {EventDispatcher} from \"strongly-typed-events\";\n\nconst createUUID = ((() => {\n const lut: any[] = [];\n for (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n }\n return () => {\n const d0 = Math.random() * 0xffffffff | 0;\n const d1 = Math.random() * 0xffffffff | 0;\n const d2 = Math.random() * 0xffffffff | 0;\n const d3 = Math.random() * 0xffffffff | 0;\n return `${lut[d0 & 0xff] + lut[d0 >> 8 & 0xff] + lut[d0 >> 16 & 0xff] + lut[d0 >> 24 & 0xff]}-${lut[d1 & 0xff]}${lut[d1 >> 8 & 0xff]}-${lut[d1 >> 16 & 0x0f | 0x40]}${lut[d1 >> 24 & 0xff]}-${lut[d2 & 0x3f | 0x80]}${lut[d2 >> 8 & 0xff]}-${lut[d2 >> 16 & 0xff]}${lut[d2 >> 24 & 0xff]}${lut[d3 & 0xff]}${lut[d3 >> 8 & 0xff]}${lut[d3 >> 16 & 0xff]}${lut[d3 >> 24 & 0xff]}`;\n };\n}))();\n\n/**\n * Common base class for xeokit SDK components.\n *\n * ## Summary\n *\n * * Unique ID\n * * Logging methods\n * * Manages lifecycle of child Components\n */\nexport class Component {\n\n /**\n * Unique ID of this Component.\n */\n public id: string;\n\n /**\n * True once this Component has been destroyed.\n *\n * Don't use this Component if this is ````true````.\n */\n public destroyed: boolean;\n\n protected dirty: boolean;\n\n readonly #owner?: Component | null;\n\n #ownedComponents: null | { [key: string]: Component };\n\n /**\n * Emits an event when the {@link @xeokit/core!Component | Component} has been destroyed.\n *\n * @event\n */\n onDestroyed: EventEmitter;\n\n /**\n * Creates a new component.\n */\n constructor(owner: null | Component, cfg: { id?: string, [key: string]: any } = {}) {\n this.#owner = owner;\n this.id = cfg.id || createUUID();\n this.destroyed = false;\n this.#ownedComponents = null;\n this.dirty = false;\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n if (owner) {\n owner.#own(this);\n }\n }\n\n /**\n * Logs a message for this component.\n *\n * The message will have this format: *````[LOG] [ : ````*\n *\n * @param message - The message to log\n * @protected\n */\n log(message: string): void {\n console.log(`[LOG] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs a warning for this component to the JavaScript console.\n *\n * The console message will have this format: *````[WARN] [ =: ````*\n *\n * @param message - The warning message to log\n * @protected\n */\n warn(message: string): void {\n console.warn(`[WARN] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs an error for this component to the JavaScript console.\n *\n * The console message will have this format: *````[ERROR] [ =: ````*\n\n @param message The error message to log\n @protected\n */\n error(message: string): void {\n console.error(`[ERROR] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Flags this component as having a defered state updates it needs to perform.\n */\n protected setDirty(): void {\n this.dirty = true;\n }\n\n /**\n * Gives this component an opportunity to action any defered state updates.\n */\n protected cleanIfDirty(): void {\n if (this.dirty) {\n this.dirty = false;\n this.clean();\n }\n }\n\n /**\n * Forces this component to action any deferred state updates.\n */\n protected clean(): void {\n }\n\n /**\n * Destroys this component.\n *\n * Also destroys any components owned by this one.\n *\n * Sets {@link Component.destroyed} ````true````.\n *\n * Cancels any deferred state updates.\n */\n destroy(): void {\n if (this.destroyed) {\n return;\n }\n this.destroyed = true;\n if (this.#ownedComponents) {\n for (let id in this.#ownedComponents) {\n if (this.#ownedComponents.hasOwnProperty(id)) {\n const component = this.#ownedComponents[id];\n component.destroy();\n delete this.#ownedComponents[id];\n }\n }\n }\n this.#ownedComponents = null;\n this.dirty = false;\n this.onDestroyed.dispatch(this, null);\n this.onDestroyed.clear();\n }\n\n #prefixMessageWithID(message: string): string {\n return ` [${this.constructor.name} \"${this.id}\"]: ${message}`;\n }\n\n #own(component: Component) {\n if (!this.#ownedComponents) {\n this.#ownedComponents = {};\n }\n if (!this.#ownedComponents[component.id]) {\n this.#ownedComponents[component.id] = component;\n }\n component.onDestroyed.one(() => {\n // @ts-ignore\n delete this.#ownedComponents[component.id];\n });\n }\n}\n\n", "/**\n * Basic xeokit SDK error type.\n */\nexport class SDKError extends Error {\n\n}", "/**\n * ## xeokit SDK Constant Definitions\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/constants\n * ````\n *\n * @module @xeokit/constants\n */\n\n/**\n * SceneTexture wrapping mode in which the texture repeats to infinity.\n */\nexport const RepeatWrapping = 1000;\n\n/**\n * SceneTexture wrapping mode in which the last pixel of the texture stretches to the edge of the mesh.\n */\nexport const ClampToEdgeWrapping = 1001;\n\n/**\n * SceneTexture wrapping mode in which the texture repeats to infinity, mirroring on each repeat.\n */\nexport const MirroredRepeatWrapping = 1002;\n\n/**\n * SceneTexture magnification and minification filter that returns the nearest texel to the given sample coordinates.\n */\nexport const NearestFilter = 1003;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and returns the nearest texel to the given sample coordinates.\n */\nexport const NearestMipMapNearestFilter = 1004;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured\n * and returns the nearest texel to the given sample coordinates.\n */\nexport const NearestMipmapNearestFilter = 1004;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured\n * and returns the nearest texel to the center of the pixel at the given sample coordinates.\n */\nexport const NearestMipmapLinearFilter = 1005;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured\n * and returns the nearest texel to the center of the pixel at the given sample coordinates.\n */\nexport const NearestMipMapLinearFilter = 1005;\n\n/**\n * SceneTexture magnification and minification filter that returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearFilter = 1006;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and\n * returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearMipmapNearestFilter = 1007;\n\n/**\n * SceneTexture minification filter that chooses the mipmap that most closely matches the size of the pixel being textured and\n * returns the weighted average of the four nearest texels to the given sample coordinates.\n */\nexport const LinearMipMapNearestFilter = 1007;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured,\n * finds within each mipmap the weighted average of the nearest texel to the center of the pixel, then returns the\n * weighted average of those two values.\n */\nexport const LinearMipmapLinearFilter = 1008;\n\n/**\n * SceneTexture minification filter that chooses two mipmaps that most closely match the size of the pixel being textured,\n * finds within each mipmap the weighted average of the nearest texel to the center of the pixel, then returns the\n * weighted average of those two values.\n */\nexport const LinearMipMapLinearFilter = 1008;\n\n/**\n * Unsigned 8-bit integer type.\n */\nexport const UnsignedByteType = 1009;\n\n/**\n * Signed 8-bit integer type.\n */\nexport const ByteType = 1010;\n\n/**\n * Signed 16-bit integer type.\n */\nexport const ShortType = 1011;\n\n/**\n * Unsigned 16-bit integer type.\n */\nexport const UnsignedShortType = 1012;\n\n/**\n * Signed 32-bit integer type.\n */\nexport const IntType = 1013;\n\n/**\n * Unsigned 32-bit integer type.\n */\nexport const UnsignedIntType = 1014;\n\n/**\n * Signed 32-bit floating-point type.\n */\nexport const FloatType = 1015;\n\n/**\n * Signed 16-bit half-precision floating-point type.\n */\nexport const HalfFloatType = 1016;\n\n/**\n * SceneTexture packing mode in which each ````RGBA```` channel is packed into 4 bits, for a combined total of 16 bits.\n */\nexport const UnsignedShort4444Type = 1017;\n\n/**\n * SceneTexture packing mode in which the ````RGB```` channels are each packed into 5 bits, and the ````A```` channel is packed into 1 bit, for a combined total of 16 bits.\n */\nexport const UnsignedShort5551Type = 1018;\n\n/**\n * Unsigned integer type for 24-bit depth texture data.\n */\nexport const UnsignedInt248Type = 1020;\n\n/**\n * SceneTexture sampling mode that discards the ````RGBA```` components and just reads the ````A```` component.\n */\nexport const AlphaFormat = 1021;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` component and reads the ````RGB```` components.\n */\nexport const RGBFormat = 1022;\n\n/**\n * SceneTexture sampling mode that reads the ````RGBA```` components.\n */\nexport const RGBAFormat = 1023;\n\n/**\n * SceneTexture sampling mode that reads each ````RGB```` texture component as a luminance value, converted to a float and clamped\n * to ````[0,1]````, while always reading the ````A```` channel as ````1.0````.\n */\nexport const LuminanceFormat = 1024;\n\n/**\n * SceneTexture sampling mode that reads each of the ````RGBA```` texture components as a luminance/alpha value, converted to a float and clamped to ````[0,1]````.\n */\nexport const LuminanceAlphaFormat = 1025;\n\n/**\n * SceneTexture sampling mode that reads each element as a single depth value, converts it to a float and clamps to ````[0,1]````.\n */\nexport const DepthFormat = 1026;\n\n/**\n * SceneTexture sampling mode that\n */\nexport const DepthStencilFormat = 1027;\n\n/**\n * SceneTexture sampling mode that discards the ````GBA```` components and just reads the ````R```` component.\n */\nexport const RedFormat = 1028;\n\n/**\n * SceneTexture sampling mode that discards the ````GBA```` components and just reads the ````R```` component, as an integer instead of as a float.\n */\nexport const RedIntegerFormat = 1029;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` and ````B```` components and just reads the ````R```` and ````G```` components.\n */\nexport const RGFormat = 1030;\n\n/**\n * SceneTexture sampling mode that discards the ````A```` and ````B```` components and just reads the ````R```` and ````G```` components, as integers instead of floats.\n */\nexport const RGIntegerFormat = 1031;\n\n/**\n * SceneTexture sampling mode that reads the ````RGBA```` components as integers instead of floats.\n */\nexport const RGBAIntegerFormat = 1033;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT1 compressed ````RGB```` image.\n */\nexport const RGB_S3TC_DXT1_Format = 33776;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT1 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT1_Format = 33777;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT3 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT3_Format = 33778;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a DXT5 compressed ````RGBA```` image.\n */\nexport const RGBA_S3TC_DXT5_Format = 33779;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGB```` compression in 4-bit mode and one block for each 4\u00D74 pixels.\n */\nexport const RGB_PVRTC_4BPPV1_Format = 35840;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGB```` compression in 2-bit mode and one block for each 8\u00D74 pixels.\n */\nexport const RGB_PVRTC_2BPPV1_Format = 35841;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGBA```` compression in 4-bit mode and one block for each 4\u00D74 pixels.\n */\nexport const RGBA_PVRTC_4BPPV1_Format = 35842;\n\n/**\n * SceneTexture format mode in which the texture is formatted as a PVRTC compressed\n * image, with ````RGBA```` compression in 2-bit mode and one block for each 8\u00D74 pixels.\n */\nexport const RGBA_PVRTC_2BPPV1_Format = 35843;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC1 compressed\n * ````RGB```` image.\n */\nexport const RGB_ETC1_Format = 36196;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC2 compressed\n * ````RGB```` image.\n */\nexport const RGB_ETC2_Format = 37492;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ETC2 compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ETC2_EAC_Format = 37496;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_4x4_Format = 37808;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_5x4_Format = 37809;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_5x5_Format = 37810;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_6x5_Format = 37811;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_6x6_Format = 37812;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x5_Format = 37813;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x6_Format = 37814;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_8x8_Format = 37815;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x5_Format = 37816;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x6_Format = 37817;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x8_Format = 37818;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_10x10_Format = 37819;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_12x10_Format = 37820;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an ATSC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_ASTC_12x12_Format = 37821;\n\n/**\n * SceneTexture format mode in which the texture is formatted as an BPTC compressed\n * ````RGBA```` image.\n */\nexport const RGBA_BPTC_Format = 36492;\n\n/**\n * SceneTexture encoding mode in which the texture image is in linear color space.\n */\nexport const LinearEncoding = 3000;\n\n/**\n * SceneTexture encoding mode in which the texture image is in sRGB color space.\n */\nexport const sRGBEncoding = 3001;\n\n/**\n * Media type for GIF images.\n */\nexport const GIFMediaType = 10000;\n\n/**\n * Media type for JPEG images.\n */\nexport const JPEGMediaType = 10001;\n\n/**\n * Media type for PNG images.\n */\nexport const PNGMediaType = 10002;\n\n/**\n * Points primitive type.\n */\nexport const PointsPrimitive = 20000;\n\n/**\n * Line segments primitive type.\n */\nexport const LinesPrimitive = 20001;\n\n/**\n * Non-closed triangle mesh primitive type.\n *\n * > Since we are able to look inside non-closed surfaces and see their backfaces, these primitive types are always\n * rendered with backfaces enabled.\n */\nexport const TrianglesPrimitive = 20002;\n\n/**\n * Closed triangle mesh primitive type.\n *\n * Since we normally can't see the backfaces inside closed surfaces, these primitive types are normally rendered\n * with backfaces disabled, for extra performance.\n */\nexport const SolidPrimitive = 20003;\n\n/**\n * Non-closed triangle mesh primitive type.\n *\n * Since we are able to look inside non-closed surfaces and see their backfaces, these primitive types are always\n * rendered with backfaces enabled.\n */\nexport const SurfacePrimitive = 20004;\n\n/**\n * Fast rendering mode.\n */\nexport const FastRender = 300001;\n\n/**\n * Quality rendering mode.\n */\nexport const QualityRender = 30000;\n\n/**\n * Meters unit of measurement.\n */\nexport const MetersUnit = 400000;\n\n/**\n * Centimeters unit of measurement.\n */\nexport const CentimetersUnit = 400001;\n\n/**\n * Millimeters unit of measurement.\n */\nexport const MillimetersUnit = 400002;\n\n/**\n * Yards unit of measurement.\n */\nexport const YardsUnit = 400003;\n\n/**\n * Feet unit of measurement.\n */\nexport const FeetUnit = 400004;\n\n/**\n * Inches unit of measurement.\n */\nexport const InchesUnit = 400005;\n\n/**\n * Perspective projection type.\n */\nexport const PerspectiveProjectionType = 500000;\n\n/**\n * Orthographic projection type.\n */\nexport const OrthoProjectionType = 500001;\n\n/**\n * Frustum3 projection type.\n */\nexport const FrustumProjectionType = 500002;\n\n/**\n * Custom projection type.\n */\nexport const CustomProjectionType = 500003;\n\n/**\n * Orbit navigation mode.\n */\nexport const OrbitNavigationMode = 600001;\n\n/**\n * First-person navigation mode.\n */\nexport const FirstPersonNavigationMode = 600002;\n\n/**\n * Plan view navigation mode.\n */\nexport const PlanViewNavigationMode = 600003;\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Core Math Utilities\n *\n * ---\n *\n * ### *Basic math types and constants*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/math\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as math from \"@xeokit/math\";\n *\n * //..\n * ````\n *\n * @module @xeokit/math\n */\n\n/**\n * An array of floating-point numbers.\n */\nexport type FloatArrayParam = (Uint8Array | Int8Array | Uint16Array | Uint32Array | Int16Array | Float32Array | Float64Array | number[]);\n\n/**\n * An array of integer numbers.\n */\nexport type IntArrayParam = (Uint32Array | Uint8Array | Int8Array | Uint16Array | Int16Array | number[]);\n\n/**\n * Minimum safe double-precision value.\n */\nexport const MIN_DOUBLE: number = -Number.MAX_SAFE_INTEGER;\n\n/**\n * Maximum safe double-precision value.\n */\nexport const MAX_DOUBLE: number = Number.MAX_SAFE_INTEGER;\n\n/**\n * The number of radiians in a degree (0.0174532925).\n */\nexport const DEGTORAD: number = 0.0174532925;\n\n/**\n * The number of degrees in a radian.\n */\nexport const RADTODEG: number = 57.295779513;\n\n/**\n * Clamps a value to the given range.\n * @param value Value to clamp.\n * @param min Lower bound.\n * @param max Upper bound.\n * @returns Clamped result.\n */\nexport function clamp(value: number, min: number, max: number): number {\n return Math.max(min, Math.min(max, value));\n}\n\n/**\n * Creates a new {@link FloatArrayParam}.\n */\nexport function newFloatArray(values?: number | FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values);\n}\n\n\nexport const MAX_INT= 10000000;\n\n/**\n * Maximum safe inverse.\n *\n * Returns:\n * - x != 0 => 1/x,\n * - x == 1 => 1\n *\n * @param {number} x\n */\nexport function safeInv(x:number) {\n const retVal = 1 / x;\n if (isNaN(retVal) || !isFinite(retVal)) {\n return 1;\n }\n return retVal;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Matrix and Vector Math Library\n *\n * ---\n *\n * ### *Math functions for 3D/2D matrices, quaternions and vectors*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/matrix\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as matrix from \"@xeokit/matrix\";\n *\n * //..\n * ````\n *\n * @module @xeokit/matrix\n */\nimport {clamp, DEGTORAD, type FloatArrayParam, newFloatArray} from \"@xeokit/math\";\n\n\nconst tempVec4a: FloatArrayParam = createVec4();\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec4b = createVec4();\n\n/**\n * Returns the dot product of two three-element vectors.\n */\nexport function dotVec3(u: FloatArrayParam, v: FloatArrayParam): number {\n return (u[0] * v[0] + u[1] * v[1] + u[2] * v[2]);\n}\n\n/**\n * Returns a new, uninitialized two-element vector.\n */\nexport function createVec2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 2);\n}\n\n/**\n * Returns a new, uninitialized three-element vector.\n */\nexport function createVec3(values?: FloatArrayParam): Float64Array {\n // @ts-ignore\n return new Float64Array(values || 3);\n}\n\n/**\n * Returns a new, uninitialized four-element vector.\n */\nexport function createVec4(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 4);\n}\n\n/**\n * Negates a three-element vector.\n */\nexport function negateVec3(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = -v[0];\n dest[1] = -v[1];\n dest[2] = -v[2];\n return dest;\n}\n\n/**\n * Negates a four-element vector.\n */\nexport function negateVec4(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = -v[0];\n dest[1] = -v[1];\n dest[2] = -v[2];\n dest[3] = -v[3];\n return dest;\n}\n\n/**\n * Adds one four-element vector to another.\n */\nexport function addVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] + v[0];\n dest[1] = u[1] + v[1];\n dest[2] = u[2] + v[2];\n dest[3] = u[3] + v[3];\n return dest;\n}\n\n/**\n * Adds a scalar value to each element of a four-element vector.\n */\nexport function addVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] + s;\n dest[1] = v[1] + s;\n dest[2] = v[2] + s;\n dest[3] = v[3] + s;\n return dest;\n}\n\n/**\n * Multiplies each element of a four-element vector by a scalar.\n */\nexport function mulVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n dest[2] = v[2] * s;\n dest[3] = v[3] * s;\n return dest;\n}\n\n/**\n * Multiplies each element of a three-element vector by a scalar.\n */\nexport function mulVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n dest[2] = v[2] * s;\n return dest;\n}\n\n/**\n * Multiplies each element of a two-element vector by a scalar.\n */\nexport function mulVec2Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] * s;\n dest[1] = v[1] * s;\n return dest;\n}\n\n/**\n * Adds one three-element vector to another.\n */\nexport function addVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] + v[0];\n dest[1] = u[1] + v[1];\n dest[2] = u[2] + v[2];\n return dest;\n}\n\n/**\n */\nexport function addVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] + s;\n dest[1] = v[1] + s;\n dest[2] = v[2] + s;\n return dest;\n}\n\n/**\n * Subtracts one four-element vector from another.\n */\nexport function subVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n dest[2] = u[2] - v[2];\n dest[3] = u[3] - v[3];\n return dest;\n}\n\n/**\n * Returns true if the two 3-element vectors are the same.\n */\nexport function compareVec3(v1: FloatArrayParam, v2: FloatArrayParam): boolean {\n return (v1[0] === v2[0] && v1[1] === v2[1] && v1[2] === v2[2]);\n}\n\n/**\n * Subtracts one three-element vector from another.\n */\nexport function subVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n dest[2] = u[2] - v[2];\n return dest;\n}\n\n/**\n * Subtracts one two-element vector from another.\n */\nexport function subVec2(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] - v[0];\n dest[1] = u[1] - v[1];\n return dest;\n}\n\n/**\n * Get the geometric mean of the vectors.\n */\nexport function geometricMeanVec2(...vectors: any) {\n const geometricMean = new Float32Array(vectors[0]);\n for (let i = 1; i < vectors.length; i++) {\n geometricMean[0] += vectors[i][0];\n geometricMean[1] += vectors[i][1];\n }\n geometricMean[0] /= vectors.length;\n geometricMean[1] /= vectors.length;\n return geometricMean;\n}\n\n/**\n * Subtracts a scalar value from each element of a four-element vector.\n */\nexport function subVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] - s;\n dest[1] = v[1] - s;\n dest[2] = v[2] - s;\n dest[3] = v[3] - s;\n return dest;\n}\n\n/**\n * Sets each element of a 4-element vector to a scalar value minus the value of that element.\n * @method subScalarVec4\n * @static\n * @param {Array(Number)} v The vector\n * @param s The scalar\n * @param {Array(Number)} [dest] Destination vector\n * @return {Array(Number)} dest if specified, v otherwise\n */\nexport function subScalarVec4(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s - v[0];\n dest[1] = s - v[1];\n dest[2] = s - v[2];\n dest[3] = s - v[3];\n return dest;\n}\n\n/**\n * Multiplies one three-element vector by another.\n */\nexport function mulVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] * v[0];\n dest[1] = u[1] * v[1];\n dest[2] = u[2] * v[2];\n dest[3] = u[3] * v[3];\n return dest;\n}\n\n\n/**\n * Divides one three-element vector by another.\n */\nexport function divVec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] / v[0];\n dest[1] = u[1] / v[1];\n dest[2] = u[2] / v[2];\n return dest;\n}\n\n/**\n * Divides one four-element vector by another.\n */\nexport function divVec4(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n dest[0] = u[0] / v[0];\n dest[1] = u[1] / v[1];\n dest[2] = u[2] / v[2];\n dest[3] = u[3] / v[3];\n return dest;\n}\n\n/**\n * Divides a scalar by a three-element vector, returning a new vector.\n */\nexport function divScalarVec3(s: number, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s / v[0];\n dest[1] = s / v[1];\n dest[2] = s / v[2];\n return dest;\n}\n\n/**\n * Divides a three-element vector by a scalar.\n */\nexport function divVec3Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] / s;\n dest[1] = v[1] / s;\n dest[2] = v[2] / s;\n return dest;\n}\n\n/**\n * Divides a four-element vector by a scalar.\n */\nexport function divVec4Scalar(v: FloatArrayParam, s: number, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = v[0] / s;\n dest[1] = v[1] / s;\n dest[2] = v[2] / s;\n dest[3] = v[3] / s;\n return dest;\n}\n\n/**\n * Divides a scalar by a four-element vector, returning a new vector.\n */\nexport function divScalarVec4(s: number, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = v;\n }\n dest[0] = s / v[0];\n dest[1] = s / v[1];\n dest[2] = s / v[2];\n dest[3] = s / v[3];\n return dest;\n}\n\n/**\n * Returns the dot product of two four-element vectors.\n */\nexport function dotVec4(u: FloatArrayParam, v: FloatArrayParam) {\n return (u[0] * v[0] + u[1] * v[1] + u[2] * v[2] + u[3] * v[3]);\n}\n\n/**\n * Returns the cross product of two four-element vectors.\n */\nexport function cross3Vec4(u: FloatArrayParam, v: FloatArrayParam) {\n const u0 = u[0];\n const u1 = u[1];\n const u2 = u[2];\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n return [\n u1 * v2 - u2 * v1,\n u2 * v0 - u0 * v2,\n u0 * v1 - u1 * v0,\n 0.0];\n}\n\n/**\n * Returns the cross product of two three-element vectors.\n */\nexport function cross3Vec3(u: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = u;\n }\n const x = u[0];\n const y = u[1];\n const z = u[2];\n const x2 = v[0];\n const y2 = v[1];\n const z2 = v[2];\n dest[0] = y * z2 - z * y2;\n dest[1] = z * x2 - x * z2;\n dest[2] = x * y2 - y * x2;\n return dest;\n}\n\nexport function sqLenVec4(v: FloatArrayParam) { // TODO\n return dotVec4(v, v);\n}\n\n/**\n * Returns the length of a four-element vector.\n * @method lenVec4\n * @static\n * @param {Array(Number)} v The vector\n * @return The length\n */\nexport function lenVec4(v: FloatArrayParam) {\n return Math.sqrt(sqLenVec4(v));\n}\n\n\n/**\n * Returns the dot product of two two-element vectors.\n */\nexport function dotVec2(u: FloatArrayParam, v: FloatArrayParam) {\n return (u[0] * v[0] + u[1] * v[1]);\n}\n\n\nexport function sqLenVec3(v: FloatArrayParam) {\n return dotVec3(v, v);\n}\n\n\nexport function sqLenVec2(v: FloatArrayParam) {\n return dotVec2(v, v);\n}\n\n/**\n * Returns the length of a three-element vector.\n */\nexport function lenVec3(v: FloatArrayParam): number {\n return Math.sqrt(sqLenVec3(v));\n}\n\nexport const distVec3 = ((() => {\n const vec = createVec3();\n return (v: FloatArrayParam, w: FloatArrayParam) => lenVec3(subVec3(v, w, vec));\n}))()\n\n/**\n * Returns the length of a two-element vector.\n */\nexport function lenVec2(v: FloatArrayParam): number {\n return Math.sqrt(sqLenVec2(v));\n}\n\n/**\n * Linearly interpolates between two 3D vectors.\n */\nexport function lerpVec3(t: number, t1: number, t2: number, p1: FloatArrayParam, p2: FloatArrayParam, dest: any) {\n const result = dest || createVec3();\n const f = (t - t1) / (t2 - t1);\n result[0] = p1[0] + (f * (p2[0] - p1[0]));\n result[1] = p1[1] + (f * (p2[1] - p1[1]));\n result[2] = p1[2] + (f * (p2[2] - p1[2]));\n return result;\n}\n\nexport const distVec2 = ((() => {\n const vec = createVec2();\n return (v: FloatArrayParam, w: FloatArrayParam) => lenVec2(subVec2(v, w, vec));\n}))();\n\n/**\n * @method rcpVec3\n * @static\n * @param v createVec3\n * @param dest createVec3 - optional destination\n * @return [] dest if specified, v otherwise\n *\n */\nexport function rcpVec3(v: FloatArrayParam, dest: FloatArrayParam) {\n return divScalarVec3(1.0, v, dest);\n}\n\n/**\n * Normalizes a four-element vector\n *\n */\nexport function normalizeVec4(v: FloatArrayParam, dest: FloatArrayParam) {\n const f = 1.0 / lenVec4(v);\n return mulVec4Scalar(v, f, dest);\n}\n\n/**\n * Normalizes a three-element vector\n * @method normalizeVec4\n * @static\n */\nexport function normalizeVec3(v: FloatArrayParam, dest?: FloatArrayParam) {\n const f = 1.0 / lenVec3(v);\n return mulVec3Scalar(v, f, dest);\n}\n\n/**\n * Normalizes a two-element vector\n */\nexport function normalizeVec2(v: FloatArrayParam, dest: FloatArrayParam) {\n const f = 1.0 / lenVec2(v);\n return mulVec2Scalar(v, f, dest);\n}\n\n/**\n * Gets the angle between two vectors\n */\nexport function angleVec3(v: FloatArrayParam, w: FloatArrayParam) {\n let theta = dotVec3(v, w) / (Math.sqrt(sqLenVec3(v) * sqLenVec3(w)));\n theta = theta < -1 ? -1 : (theta > 1 ? 1 : theta); // Clamp to handle numerical problems\n return Math.acos(theta);\n}\n\n/**\n * Creates a three-element vector from the rotation part of a sixteen-element matrix.\n */\nexport const vec3FromMat4Scale: Function = ((() => {\n\n const tempVec3 = createVec3();\n\n return function (m: FloatArrayParam, dest: FloatArrayParam) {\n\n tempVec3[0] = m[0];\n tempVec3[1] = m[1];\n tempVec3[2] = m[2];\n\n dest[0] = lenVec3(tempVec3);\n\n tempVec3[0] = m[4];\n tempVec3[1] = m[5];\n tempVec3[2] = m[6];\n\n dest[1] = lenVec3(tempVec3);\n\n tempVec3[0] = m[8];\n tempVec3[1] = m[9];\n tempVec3[2] = m[10];\n\n dest[2] = lenVec3(tempVec3);\n\n return dest;\n };\n}))();\n\n/**\n * Converts an n-element vector to a JSON-serializable\n * array with values rounded to two decimal places.\n */\nexport function vecToArray(v: FloatArrayParam): FloatArrayParam {\n v = Array.prototype.slice.call(v);\n for (let i = 0, len = v.length; i < len; i++) {\n v[i] = trunc(v[i]);\n }\n return v;\n}\n\nfunction trunc(v: number) {\n return Math.round(v * 100000) / 100000\n}\n\n\n/**\n * Calculates the normal vector of a triangle.\n */\nexport function triangleNormal(a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam, normal: FloatArrayParam = createVec3()): FloatArrayParam {\n const p1x = b[0] - a[0];\n const p1y = b[1] - a[1];\n const p1z = b[2] - a[2];\n\n const p2x = c[0] - a[0];\n const p2y = c[1] - a[1];\n const p2z = c[2] - a[2];\n\n const p3x = p1y * p2z - p1z * p2y;\n const p3y = p1z * p2x - p1x * p2z;\n const p3z = p1x * p2y - p1y * p2x;\n\n const mag = Math.sqrt(p3x * p3x + p3y * p3y + p3z * p3z);\n if (mag === 0) {\n normal[0] = 0;\n normal[1] = 0;\n normal[2] = 0;\n } else {\n normal[0] = p3x / mag;\n normal[1] = p3y / mag;\n normal[2] = p3z / mag;\n }\n\n return normal\n}\n\n\n/**\n * Returns a new, uninitialized 3x3 matrix.\n */\nexport function createMat3(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new newFloatArray(values || 9);\n}\n\n/**\n * Converts a 3x3 matrix to 4x4.\n */\nexport function mat3ToMat4(mat3: FloatArrayParam, mat4?: FloatArrayParam): FloatArrayParam {\n if (!mat4) {\n mat4 = createMat4();\n }\n mat4[0] = mat3[0];\n mat4[1] = mat3[1];\n mat4[2] = mat3[2];\n mat4[3] = 0;\n mat4[4] = mat3[3];\n mat4[5] = mat3[4];\n mat4[6] = mat3[5];\n mat4[7] = 0;\n mat4[8] = mat3[6];\n mat4[9] = mat3[7];\n mat4[10] = mat3[8];\n mat4[11] = 0;\n mat4[12] = 0;\n mat4[13] = 0;\n mat4[14] = 0;\n mat4[15] = 1;\n return mat4;\n}\n\n/**\n * Returns a new, uninitialized 4x4 matrix.\n */\nexport function createMat4(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return new Float64Array(values || 16);\n}\n\nconst tempMat4a = createMat4();\nconst tempMat4b = createMat4();\n\n/**\n * Returns true if the two 4x4 matrices are the same.\n * @param m1\n * @param m2\n * @returns {boolean}\n */\nexport function compareMat4(m1: FloatArrayParam, m2: FloatArrayParam): boolean {\n return m1[0] === m2[0] &&\n m1[1] === m2[1] &&\n m1[2] === m2[2] &&\n m1[3] === m2[3] &&\n m1[4] === m2[4] &&\n m1[5] === m2[5] &&\n m1[6] === m2[6] &&\n m1[7] === m2[7] &&\n m1[8] === m2[8] &&\n m1[9] === m2[9] &&\n m1[10] === m2[10] &&\n m1[11] === m2[11] &&\n m1[12] === m2[12] &&\n m1[13] === m2[13] &&\n m1[14] === m2[14] &&\n m1[15] === m2[15];\n}\n\n/**\n * Returns a 4x4 perspective projection matrix.\n */\nexport function perspectiveMat4(fovyrad: number, aspectratio: number, znear: number, zfar: number, m?: FloatArrayParam): FloatArrayParam {\n const pmin = [];\n const pmax = [];\n pmin[2] = znear;\n pmax[2] = zfar;\n pmax[1] = pmin[2] * Math.tan(fovyrad / 2.0);\n pmin[1] = -pmax[1];\n pmax[0] = pmax[1] * aspectratio;\n pmin[0] = -pmax[0];\n return frustumMat4v(pmin, pmax, m);\n}\n\n/**\n * Returns a 4x4 perspective frustum projection matrix.\n */\nexport function frustumMat4v(fmin: FloatArrayParam, fmax: FloatArrayParam, m?: FloatArrayParam): FloatArrayParam {\n if (!m) {\n m = createMat4();\n }\n const fmin4 = [fmin[0], fmin[1], fmin[2], 0.0];\n const fmax4 = [fmax[0], fmax[1], fmax[2], 0.0];\n addVec4(fmax4, fmin4, tempMat4a);\n subVec4(fmax4, fmin4, tempMat4b);\n const t = 2.0 * fmin4[2];\n const tempMat4b0 = tempMat4b[0];\n const tempMat4b1 = tempMat4b[1];\n const tempMat4b2 = tempMat4b[2];\n m[0] = t / tempMat4b0;\n m[1] = 0.0;\n m[2] = 0.0;\n m[3] = 0.0;\n m[4] = 0.0;\n m[5] = t / tempMat4b1;\n m[6] = 0.0;\n m[7] = 0.0;\n m[8] = tempMat4a[0] / tempMat4b0;\n m[9] = tempMat4a[1] / tempMat4b1;\n m[10] = -tempMat4a[2] / tempMat4b2;\n m[11] = -1.0;\n m[12] = 0.0;\n m[13] = 0.0;\n m[14] = -t * fmax4[2] / tempMat4b2;\n m[15] = 0.0;\n return m;\n}\n\n/**\n * Returns a 4x4 orthographic projection matrix.\n */\nexport function orthoMat4c(\n left: number,\n right: number,\n bottom: number,\n top: number,\n near: number,\n far: number,\n dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const rl = (right - left);\n const tb = (top - bottom);\n const fn = (far - near);\n dest[0] = 2.0 / rl;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 0.0;\n dest[5] = 2.0 / tb;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 0.0;\n dest[9] = 0.0;\n dest[10] = -2.0 / fn;\n dest[11] = 0.0;\n dest[12] = -(left + right) / rl;\n dest[13] = -(top + bottom) / tb;\n dest[14] = -(far + near) / fn;\n dest[15] = 1.0;\n return dest;\n}\n\n/**\n * Returns a 4x4 perspective projection matrix.\n */\nexport function frustumMat4(\n left: number,\n right: number,\n bottom: number,\n top: number,\n near: number,\n far: number,\n dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const rl = (right - left);\n const tb = (top - bottom);\n const fn = (far - near);\n dest[0] = (near * 2) / rl;\n dest[1] = 0;\n dest[2] = 0;\n dest[3] = 0;\n dest[4] = 0;\n dest[5] = (near * 2) / tb;\n dest[6] = 0;\n dest[7] = 0;\n dest[8] = (right + left) / rl;\n dest[9] = (top + bottom) / tb;\n dest[10] = -(far + near) / fn;\n dest[11] = -1;\n dest[12] = 0;\n dest[13] = 0;\n dest[14] = -(far * near * 2) / fn;\n dest[15] = 0;\n return dest;\n}\n\n\n/**\n * Returns a 4x4 identity matrix.\n */\nexport function identityMat4(dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n dest[0] = 1.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 0.0;\n dest[5] = 1.0;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 0.0;\n dest[9] = 0.0;\n dest[10] = 1.0;\n dest[11] = 0.0;\n dest[12] = 0.0;\n dest[13] = 0.0;\n dest[14] = 0.0;\n dest[15] = 1.0;\n return dest;\n}\n\n/**\n * Returns a 3x3 identity matrix.\n */\nexport function identityMat3(dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n dest[0] = 1.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 0.0;\n dest[4] = 1.0;\n dest[5] = 0.0;\n dest[6] = 0.0;\n dest[7] = 0.0;\n dest[8] = 1.0;\n return dest;\n}\n\n/**\n * Tests if the given 4x4 matrix is the identity matrix.\n */\nexport function isIdentityMat4(m: FloatArrayParam): boolean {\n if (m[0] !== 1.0 || m[1] !== 0.0 || m[2] !== 0.0 || m[3] !== 0.0 ||\n m[4] !== 0.0 || m[5] !== 1.0 || m[6] !== 0.0 || m[7] !== 0.0 ||\n m[8] !== 0.0 || m[9] !== 0.0 || m[10] !== 1.0 || m[11] !== 0.0 ||\n m[12] !== 0.0 || m[13] !== 0.0 || m[14] !== 0.0 || m[15] !== 1.0) {\n return false;\n }\n return true;\n}\n\n/**\n * Creates a 4x4 rotation matrix.\n */\nexport function rotationMat4v(anglerad: number, axis: FloatArrayParam, m?: FloatArrayParam): FloatArrayParam {\n if (!m) {\n m = createMat4();\n }\n const ax = normalizeVec4([axis[0], axis[1], axis[2], 0.0], []);\n const s = Math.sin(anglerad);\n const c = Math.cos(anglerad);\n const q = 1.0 - c;\n const x = ax[0];\n const y = ax[1];\n const z = ax[2];\n let xy;\n let yz;\n let zx;\n let xs;\n let ys;\n let zs;\n xy = x * y;\n yz = y * z;\n zx = z * x;\n xs = x * s;\n ys = y * s;\n zs = z * s;\n m[0] = (q * x * x) + c;\n m[1] = (q * xy) + zs;\n m[2] = (q * zx) - ys;\n m[3] = 0.0;\n m[4] = (q * xy) - zs;\n m[5] = (q * y * y) + c;\n m[6] = (q * yz) + xs;\n m[7] = 0.0;\n m[8] = (q * zx) + ys;\n m[9] = (q * yz) - xs;\n m[10] = (q * z * z) + c;\n m[11] = 0.0;\n m[12] = 0.0;\n m[13] = 0.0;\n m[14] = 0.0;\n m[15] = 1.0;\n return m;\n}\n\n/**\n * Creates a 4x4 'lookat' viewing transform matrix.\n */\nexport function lookAtMat4v(pos: FloatArrayParam, target: FloatArrayParam, up: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = createMat4();\n }\n const posx = pos[0];\n const posy = pos[1];\n const posz = pos[2];\n const upx = up[0];\n const upy = up[1];\n const upz = up[2];\n const targetx = target[0];\n const targety = target[1];\n const targetz = target[2];\n if (posx === targetx && posy === targety && posz === targetz) {\n return identityMat4();\n }\n let z0;\n let z1;\n let z2;\n let x0;\n let x1;\n let x2;\n let y0;\n let y1;\n let y2;\n let len;\n //createVec3.direction(eye, center, z);\n z0 = posx - targetx;\n z1 = posy - targety;\n z2 = posz - targetz;\n // normalize (no check needed for 0 because of early return)\n len = 1 / Math.sqrt(z0 * z0 + z1 * z1 + z2 * z2);\n z0 *= len;\n z1 *= len;\n z2 *= len;\n //createVec3.normalize(createVec3.cross(up, z, x));\n x0 = upy * z2 - upz * z1;\n x1 = upz * z0 - upx * z2;\n x2 = upx * z1 - upy * z0;\n len = Math.sqrt(x0 * x0 + x1 * x1 + x2 * x2);\n if (!len) {\n x0 = 0;\n x1 = 0;\n x2 = 0;\n } else {\n len = 1 / len;\n x0 *= len;\n x1 *= len;\n x2 *= len;\n }\n //createVec3.normalize(createVec3.cross(z, x, y));\n y0 = z1 * x2 - z2 * x1;\n y1 = z2 * x0 - z0 * x2;\n y2 = z0 * x1 - z1 * x0;\n len = Math.sqrt(y0 * y0 + y1 * y1 + y2 * y2);\n if (!len) {\n y0 = 0;\n y1 = 0;\n y2 = 0;\n } else {\n len = 1 / len;\n y0 *= len;\n y1 *= len;\n y2 *= len;\n }\n dest[0] = x0;\n dest[1] = y0;\n dest[2] = z0;\n dest[3] = 0;\n dest[4] = x1;\n dest[5] = y1;\n dest[6] = z1;\n dest[7] = 0;\n dest[8] = x2;\n dest[9] = y2;\n dest[10] = z2;\n dest[11] = 0;\n dest[12] = -(x0 * posx + x1 * posy + x2 * posz);\n dest[13] = -(y0 * posx + y1 * posy + y2 * posz);\n dest[14] = -(z0 * posx + z1 * posy + z2 * posz);\n dest[15] = 1;\n return dest;\n}\n\n/**\n * Returns the inverse of the given 4x4 matrix.\n */\nexport function inverseMat4(mat: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = mat;\n }\n const a00 = mat[0];\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a10 = mat[4];\n const a11 = mat[5];\n const a12 = mat[6];\n const a13 = mat[7];\n const a20 = mat[8];\n const a21 = mat[9];\n const a22 = mat[10];\n const a23 = mat[11];\n const a30 = mat[12];\n const a31 = mat[13];\n const a32 = mat[14];\n const a33 = mat[15];\n const b00 = a00 * a11 - a01 * a10;\n const b01 = a00 * a12 - a02 * a10;\n const b02 = a00 * a13 - a03 * a10;\n const b03 = a01 * a12 - a02 * a11;\n const b04 = a01 * a13 - a03 * a11;\n const b05 = a02 * a13 - a03 * a12;\n const b06 = a20 * a31 - a21 * a30;\n const b07 = a20 * a32 - a22 * a30;\n const b08 = a20 * a33 - a23 * a30;\n const b09 = a21 * a32 - a22 * a31;\n const b10 = a21 * a33 - a23 * a31;\n const b11 = a22 * a33 - a23 * a32;\n const invDet = 1 / (b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06);\n dest[0] = (a11 * b11 - a12 * b10 + a13 * b09) * invDet;\n dest[1] = (-a01 * b11 + a02 * b10 - a03 * b09) * invDet;\n dest[2] = (a31 * b05 - a32 * b04 + a33 * b03) * invDet;\n dest[3] = (-a21 * b05 + a22 * b04 - a23 * b03) * invDet;\n dest[4] = (-a10 * b11 + a12 * b08 - a13 * b07) * invDet;\n dest[5] = (a00 * b11 - a02 * b08 + a03 * b07) * invDet;\n dest[6] = (-a30 * b05 + a32 * b02 - a33 * b01) * invDet;\n dest[7] = (a20 * b05 - a22 * b02 + a23 * b01) * invDet;\n dest[8] = (a10 * b10 - a11 * b08 + a13 * b06) * invDet;\n dest[9] = (-a00 * b10 + a01 * b08 - a03 * b06) * invDet;\n dest[10] = (a30 * b04 - a31 * b02 + a33 * b00) * invDet;\n dest[11] = (-a20 * b04 + a21 * b02 - a23 * b00) * invDet;\n dest[12] = (-a10 * b09 + a11 * b07 - a12 * b06) * invDet;\n dest[13] = (a00 * b09 - a01 * b07 + a02 * b06) * invDet;\n dest[14] = (-a30 * b03 + a31 * b01 - a32 * b00) * invDet;\n dest[15] = (a20 * b03 - a21 * b01 + a22 * b00) * invDet;\n return dest;\n}\n\n/**\n * Transposes the given 4x4 matrix.\n */\nexport function transposeMat4(mat: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m4 = mat[4];\n const m14 = mat[14];\n const m8 = mat[8];\n const m13 = mat[13];\n const m12 = mat[12];\n const m9 = mat[9];\n if (!dest || mat === dest) {\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a12 = mat[6];\n const a13 = mat[7];\n const a23 = mat[11];\n mat[1] = m4;\n mat[2] = m8;\n mat[3] = m12;\n mat[4] = a01;\n mat[6] = m9;\n mat[7] = m13;\n mat[8] = a02;\n mat[9] = a12;\n mat[11] = m14;\n mat[12] = a03;\n mat[13] = a13;\n mat[14] = a23;\n return mat;\n }\n dest[0] = mat[0];\n dest[1] = m4;\n dest[2] = m8;\n dest[3] = m12;\n dest[4] = mat[1];\n dest[5] = mat[5];\n dest[6] = m9;\n dest[7] = m13;\n dest[8] = mat[2];\n dest[9] = mat[6];\n dest[10] = mat[10];\n dest[11] = m14;\n dest[12] = mat[3];\n dest[13] = mat[7];\n dest[14] = mat[11];\n dest[15] = mat[15];\n return dest;\n}\n\n/**\n * Multiplies the given 4x4 matrix by the given four-element vector.\n */\nexport function mulMat4v4(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = m;\n }\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n const v3 = v[3];\n dest[0] = m[0] * v0 + m[4] * v1 + m[8] * v2 + m[12] * v3;\n dest[1] = m[1] * v0 + m[5] * v1 + m[9] * v2 + m[13] * v3;\n dest[2] = m[2] * v0 + m[6] * v1 + m[10] * v2 + m[14] * v3;\n dest[3] = m[3] * v0 + m[7] * v1 + m[11] * v2 + m[15] * v3;\n return dest;\n}\n\n/**\n * Multiplies the two given 4x4 matrix by each other.\n * @method mulMat4\n * @static\n */\nexport function mulMat4(a: FloatArrayParam, b: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n if (!dest) {\n dest = a;\n }\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a03 = a[3];\n const a10 = a[4];\n const a11 = a[5];\n const a12 = a[6];\n const a13 = a[7];\n const a20 = a[8];\n const a21 = a[9];\n const a22 = a[10];\n const a23 = a[11];\n const a30 = a[12];\n const a31 = a[13];\n const a32 = a[14];\n const a33 = a[15];\n const b00 = b[0];\n const b01 = b[1];\n const b02 = b[2];\n const b03 = b[3];\n const b10 = b[4];\n const b11 = b[5];\n const b12 = b[6];\n const b13 = b[7];\n const b20 = b[8];\n const b21 = b[9];\n const b22 = b[10];\n const b23 = b[11];\n const b30 = b[12];\n const b31 = b[13];\n const b32 = b[14];\n const b33 = b[15];\n dest[0] = b00 * a00 + b01 * a10 + b02 * a20 + b03 * a30;\n dest[1] = b00 * a01 + b01 * a11 + b02 * a21 + b03 * a31;\n dest[2] = b00 * a02 + b01 * a12 + b02 * a22 + b03 * a32;\n dest[3] = b00 * a03 + b01 * a13 + b02 * a23 + b03 * a33;\n dest[4] = b10 * a00 + b11 * a10 + b12 * a20 + b13 * a30;\n dest[5] = b10 * a01 + b11 * a11 + b12 * a21 + b13 * a31;\n dest[6] = b10 * a02 + b11 * a12 + b12 * a22 + b13 * a32;\n dest[7] = b10 * a03 + b11 * a13 + b12 * a23 + b13 * a33;\n dest[8] = b20 * a00 + b21 * a10 + b22 * a20 + b23 * a30;\n dest[9] = b20 * a01 + b21 * a11 + b22 * a21 + b23 * a31;\n dest[10] = b20 * a02 + b21 * a12 + b22 * a22 + b23 * a32;\n dest[11] = b20 * a03 + b21 * a13 + b22 * a23 + b23 * a33;\n dest[12] = b30 * a00 + b31 * a10 + b32 * a20 + b33 * a30;\n dest[13] = b30 * a01 + b31 * a11 + b32 * a21 + b33 * a31;\n dest[14] = b30 * a02 + b31 * a12 + b32 * a22 + b33 * a32;\n dest[15] = b30 * a03 + b31 * a13 + b32 * a23 + b33 * a33;\n return dest;\n}\n\n/**\n * Multiplies the two given 3x3 matrices by each other.\n */\nexport function mulMat3(a: FloatArrayParam, b: FloatArrayParam, dest: FloatArrayParam = newFloatArray(9)) {\n\n const a11 = a[0];\n const a12 = a[3];\n const a13 = a[6];\n const a21 = a[1];\n const a22 = a[4];\n const a23 = a[7];\n const a31 = a[2];\n const a32 = a[5];\n const a33 = a[8];\n const b11 = b[0];\n const b12 = b[3];\n const b13 = b[6];\n const b21 = b[1];\n const b22 = b[4];\n const b23 = b[7];\n const b31 = b[2];\n const b32 = b[5];\n const b33 = b[8];\n\n dest[0] = a11 * b11 + a12 * b21 + a13 * b31;\n dest[3] = a11 * b12 + a12 * b22 + a13 * b32;\n dest[6] = a11 * b13 + a12 * b23 + a13 * b33;\n\n dest[1] = a21 * b11 + a22 * b21 + a23 * b31;\n dest[4] = a21 * b12 + a22 * b22 + a23 * b32;\n dest[7] = a21 * b13 + a22 * b23 + a23 * b33;\n\n dest[2] = a31 * b11 + a32 * b21 + a33 * b31;\n dest[5] = a31 * b12 + a32 * b22 + a33 * b32;\n dest[8] = a31 * b13 + a32 * b23 + a33 * b33;\n\n return dest;\n}\n\n/**\n * Transforms a three-element position by a 4x4 matrix.\n * @method transformPoint3\n * @static\n */\nexport function transformPoint3(m: FloatArrayParam, p: FloatArrayParam, dest?: FloatArrayParam) {\n if (!dest) {\n dest = p;\n }\n const x = p[0];\n const y = p[1];\n const z = p[2];\n dest[0] = (m[0] * x) + (m[4] * y) + (m[8] * z) + m[12];\n dest[1] = (m[1] * x) + (m[5] * y) + (m[9] * z) + m[13];\n dest[2] = (m[2] * x) + (m[6] * y) + (m[10] * z) + m[14];\n return dest;\n}\n\n/**\n * Transforms a homogeneous coordinate by a 4x4 matrix.\n * @method transformPoint3\n * @static\n */\nexport function transformPoint4(m: FloatArrayParam, v: FloatArrayParam, dest: FloatArrayParam) {\n dest[0] = m[0] * v[0] + m[4] * v[1] + m[8] * v[2] + m[12] * v[3];\n dest[1] = m[1] * v[0] + m[5] * v[1] + m[9] * v[2] + m[13] * v[3];\n dest[2] = m[2] * v[0] + m[6] * v[1] + m[10] * v[2] + m[14] * v[3];\n dest[3] = m[3] * v[0] + m[7] * v[1] + m[11] * v[2] + m[15] * v[3];\n return dest;\n}\n\n\n/**\n * Transforms an array of three-element positions by a 4x4 matrix.\n * @method transformPoints3\n * @static\n */\nexport function transformPoints3(m: FloatArrayParam, points: number[][], points2: number[][]) {\n const result = points2 || [];\n const len = points.length;\n let p0;\n let p1;\n let p2;\n let pi;\n\n // cache values\n const m0 = m[0];\n\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n let r;\n\n for (let i = 0; i < len; ++i) {\n\n // cache values\n pi = points[i];\n\n p0 = pi[0];\n p1 = pi[1];\n p2 = pi[2];\n\n r = result[i] || (result[i] = [0, 0, 0]);\n\n r[0] = (m0 * p0) + (m4 * p1) + (m8 * p2) + m12;\n r[1] = (m1 * p0) + (m5 * p1) + (m9 * p2) + m13;\n r[2] = (m2 * p0) + (m6 * p1) + (m10 * p2) + m14;\n r[3] = (m3 * p0) + (m7 * p1) + (m11 * p2) + m15;\n }\n\n result.length = len;\n\n return result;\n}\n\n/**\n * Transforms an array of positions by a 4x4 matrix.\n */\nexport function transformPositions3(m: FloatArrayParam, p: FloatArrayParam, p2?: FloatArrayParam) {\n if (!p2) {\n p2 = p;\n }\n let i;\n const len = p.length;\n\n let x;\n let y;\n let z;\n\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n for (i = 0; i < len; i += 3) {\n\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n\n p2[i + 0] = (m0 * x) + (m4 * y) + (m8 * z) + m12;\n p2[i + 1] = (m1 * x) + (m5 * y) + (m9 * z) + m13;\n p2[i + 2] = (m2 * x) + (m6 * y) + (m10 * z) + m14;\n p2[i + 3] = (m3 * x) + (m7 * y) + (m11 * z) + m15;\n }\n\n return p2;\n}\n\n/**\n * Transforms an array of positions by a 4x4 matrix.\n */\nexport function transformPositions4(m: FloatArrayParam, p: FloatArrayParam, p2?: FloatArrayParam) {\n if (!p2) {\n p2 = p;\n }\n let i;\n const len = p.length;\n let x;\n let y;\n let z;\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n for (i = 0; i < len; i += 4) {\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n p2[i + 0] = (m0 * x) + (m4 * y) + (m8 * z) + m12;\n p2[i + 1] = (m1 * x) + (m5 * y) + (m9 * z) + m13;\n p2[i + 2] = (m2 * x) + (m6 * y) + (m10 * z) + m14;\n p2[i + 3] = (m3 * x) + (m7 * y) + (m11 * z) + m15;\n }\n return p2;\n}\n\n/**\n * Transforms a three-element vector by a 4x4 matrix.\n */\nexport function transformVec3(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n dest = dest || createVec3();\n dest[0] = (m[0] * v0) + (m[4] * v1) + (m[8] * v2);\n dest[1] = (m[1] * v0) + (m[5] * v1) + (m[9] * v2);\n dest[2] = (m[2] * v0) + (m[6] * v1) + (m[10] * v2);\n return dest;\n}\n\n/**\n * Transforms a four-element vector by a 4x4 matrix.\n * @method transformVec4\n * @static\n */\nexport function transformVec4(m: FloatArrayParam, v: FloatArrayParam, dest?: FloatArrayParam) {\n const v0 = v[0];\n const v1 = v[1];\n const v2 = v[2];\n const v3 = v[3];\n dest = dest || createVec4();\n dest[0] = m[0] * v0 + m[4] * v1 + m[8] * v2 + m[12] * v3;\n dest[1] = m[1] * v0 + m[5] * v1 + m[9] * v2 + m[13] * v3;\n dest[2] = m[2] * v0 + m[6] * v1 + m[10] * v2 + m[14] * v3;\n dest[3] = m[3] * v0 + m[7] * v1 + m[11] * v2 + m[15] * v3;\n return dest;\n}\n\n\n/**\n * Efficiently post-concatenates a scaling to the given matrix.\n */\nexport function scaleMat4v(xyz: FloatArrayParam, m: FloatArrayParam = identityMat4()) {\n const x = xyz[0];\n const y = xyz[1];\n const z = xyz[2];\n m[0] *= x;\n m[4] *= y;\n m[8] *= z;\n m[1] *= x;\n m[5] *= y;\n m[9] *= z;\n m[2] *= x;\n m[6] *= y;\n m[10] *= z;\n m[3] *= x;\n m[7] *= y;\n m[11] *= z;\n return m;\n}\n\n/**\n */\nexport function scalingMat4v(v: FloatArrayParam, m: FloatArrayParam = identityMat4()): FloatArrayParam {\n m[0] = v[0];\n m[5] = v[1];\n m[10] = v[2];\n return m;\n}\n\n/**\n * Returns a 3x3 scale matrix.\n */\nexport function scalingMat3v(v: FloatArrayParam, m: FloatArrayParam = identityMat3()): FloatArrayParam {\n m[0] = v[0];\n m[4] = v[1];\n return m;\n}\n\n/**\n * Returns a 4x4 scale matrix.\n */\nexport const scalingMat4c = ((() => {\n const xyz: FloatArrayParam = newFloatArray(3);\n return (x: number, y: number, z: number, dest?: FloatArrayParam) => {\n xyz[0] = x;\n xyz[1] = y;\n xyz[2] = z;\n return scalingMat4v(xyz, dest);\n };\n}))()\n\n/**\n * Efficiently post-concatenates a scaling to the given matrix.\n * @method scaleMat4c\n * @param x\n * @param y\n * @param z\n * @param m\n */\nexport function scaleMat4c(x: number, y: number, z: number, m: FloatArrayParam): FloatArrayParam {\n\n m[0] *= x;\n m[4] *= y;\n m[8] *= z;\n\n m[1] *= x;\n m[5] *= y;\n m[9] *= z;\n\n m[2] *= x;\n m[6] *= y;\n m[10] *= z;\n\n m[3] *= x;\n m[7] *= y;\n m[11] *= z;\n return m;\n}\n\n/**\n * Returns 4x4 scale matrix.\n */\nexport function scalingMat4s(s: number): FloatArrayParam {\n return scalingMat4c(s, s, s);\n}\n\n/**\n * Composes a 4x4 matrix from the given position, quaternion and scale.\n * @param position\n * @param quaternion\n * @param scale\n * @param mat\n */\nexport function composeMat4(\n position: FloatArrayParam,\n quaternion: FloatArrayParam,\n scale: FloatArrayParam,\n mat: FloatArrayParam = createMat4()): FloatArrayParam {\n quatToRotationMat4(quaternion, mat);\n scaleMat4v(scale, mat);\n translateMat4v(position, mat);\n return mat;\n}\n\n/**\n * Composes a 4x4 matrix from the given position, euler rotation angles and scale.\n * @param position\n * @param rotation\n * @param scale\n * @param mat\n */\nexport function composeMat4Euler(\n position: FloatArrayParam,\n rotation: FloatArrayParam,\n scale: FloatArrayParam,\n mat: FloatArrayParam = createMat4()): FloatArrayParam {\n quatToRotationMat4(eulerToQuat(rotation, \"XYZ\", identityQuat()), mat);\n scaleMat4v(scale, mat);\n translateMat4v(position, mat);\n return mat;\n}\n\n/**\n * Decomposes a 4x4 matrix into position, quaternion and scale.\n */\nexport const decomposeMat4 = (() => {\n const vec = createVec3();\n const matrix = createMat4();\n return function decompose(mat: FloatArrayParam, position: FloatArrayParam, quaternion: FloatArrayParam, scale: FloatArrayParam) {\n vec[0] = mat[0];\n vec[1] = mat[1];\n vec[2] = mat[2];\n let sx = lenVec3(vec);\n vec[0] = mat[4];\n vec[1] = mat[5];\n vec[2] = mat[6];\n const sy = lenVec3(vec);\n vec[8] = mat[8];\n vec[9] = mat[9];\n vec[10] = mat[10];\n const sz = lenVec3(vec);\n const det = determinantMat4(mat);\n if (det < 0) {\n sx = -sx;\n }\n position[0] = mat[12];\n position[1] = mat[13];\n position[2] = mat[14];\n // scale the rotation part\n // @ts-ignore\n matrix.set(mat);\n const invSX = 1 / sx;\n const invSY = 1 / sy;\n const invSZ = 1 / sz;\n matrix[0] *= invSX;\n matrix[1] *= invSX;\n matrix[2] *= invSX;\n matrix[4] *= invSY;\n matrix[5] *= invSY;\n matrix[6] *= invSY;\n matrix[8] *= invSZ;\n matrix[9] *= invSZ;\n matrix[10] *= invSZ;\n mat4ToQuat(matrix, quaternion);\n scale[0] = sx;\n scale[1] = sy;\n scale[2] = sz;\n\n };\n})();\n\n/**\n * Efficiently post-concatenates a translation to the given matrix.\n */\nexport function translateMat4v(xyz: FloatArrayParam, m: FloatArrayParam = identityMat4()) {\n return translateMat4c(xyz[0], xyz[1], xyz[2], m);\n}\n\n/**\n * Efficiently post-concatenates a translation, given as separate components, to the given matrix.\n */\nexport function translateMat4c(x: number, y: number, z: number, m: FloatArrayParam = identityMat4()) {\n const m3 = m[3];\n m[0] += m3 * x;\n m[1] += m3 * y;\n m[2] += m3 * z;\n const m7 = m[7];\n m[4] += m7 * x;\n m[5] += m7 * y;\n m[6] += m7 * z;\n const m11 = m[11];\n m[8] += m11 * x;\n m[9] += m11 * y;\n m[10] += m11 * z;\n const m15 = m[15];\n m[12] += m15 * x;\n m[13] += m15 * y;\n m[14] += m15 * z;\n return m;\n}\n\n/**\n * Creates a new matrix that replaces the translation in the rightmost column of the given\n * affine matrix with the given translation.\n */\nexport function setMat4Translation(m: FloatArrayParam, translation: FloatArrayParam, dest: FloatArrayParam): FloatArrayParam {\n\n dest[0] = m[0];\n dest[1] = m[1];\n dest[2] = m[2];\n dest[3] = m[3];\n\n dest[4] = m[4];\n dest[5] = m[5];\n dest[6] = m[6];\n dest[7] = m[7];\n\n dest[8] = m[8];\n dest[9] = m[9];\n dest[10] = m[10];\n dest[11] = m[11];\n\n dest[12] = translation[0];\n dest[13] = translation[1];\n dest[14] = translation[2];\n dest[15] = m[15];\n\n return dest;\n}\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport function translationMat4v(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m = dest || identityMat4();\n m[12] = v[0];\n m[13] = v[1];\n m[14] = v[2];\n return m;\n}\n\n/**\n * Returns 3x3 translation matrix.\n */\nexport function translationMat3v(v: FloatArrayParam, dest?: FloatArrayParam): FloatArrayParam {\n const m = dest || identityMat3();\n m[6] = v[0];\n m[7] = v[1];\n return m;\n}\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport const translationMat4c = ((() => {\n const xyz = newFloatArray(3);\n return (x: number, y: number, z: number, dest: FloatArrayParam): FloatArrayParam => {\n xyz[0] = x;\n xyz[1] = y;\n xyz[2] = z;\n return translationMat4v(xyz, dest);\n };\n}))();\n\n/**\n * Returns 4x4 translation matrix.\n */\nexport function translationMat4s(s: number, dest: FloatArrayParam) {\n return translationMat4c(s, s, s, dest);\n}\n\n\n/**\n * Returns the determinant of the given 4x4 matrix.\n */\nexport function determinantMat4(mat: FloatArrayParam): number {\n const a00 = mat[0];\n const a01 = mat[1];\n const a02 = mat[2];\n const a03 = mat[3];\n const a10 = mat[4];\n const a11 = mat[5];\n const a12 = mat[6];\n const a13 = mat[7];\n const a20 = mat[8];\n const a21 = mat[9];\n const a22 = mat[10];\n const a23 = mat[11];\n const a30 = mat[12];\n const a31 = mat[13];\n const a32 = mat[14];\n const a33 = mat[15];\n return a30 * a21 * a12 * a03 - a20 * a31 * a12 * a03 - a30 * a11 * a22 * a03 + a10 * a31 * a22 * a03 +\n a20 * a11 * a32 * a03 - a10 * a21 * a32 * a03 - a30 * a21 * a02 * a13 + a20 * a31 * a02 * a13 +\n a30 * a01 * a22 * a13 - a00 * a31 * a22 * a13 - a20 * a01 * a32 * a13 + a00 * a21 * a32 * a13 +\n a30 * a11 * a02 * a23 - a10 * a31 * a02 * a23 - a30 * a01 * a12 * a23 + a00 * a31 * a12 * a23 +\n a10 * a01 * a32 * a23 - a00 * a11 * a32 * a23 - a20 * a11 * a02 * a33 + a10 * a21 * a02 * a33 +\n a20 * a01 * a12 * a33 - a00 * a21 * a12 * a33 - a10 * a01 * a22 * a33 + a00 * a11 * a22 * a33;\n}\n\n/**\n * Gets Euler angles from a 4x4 matrix.\n *\n * @param {mat The 4x4 matrix.\n * @param order Desired Euler angle order: \"XYZ\", \"YXZ\", \"ZXY\" etc.\n * @param [dest] Destination Euler angles, created by default.\n * @returns The Euler angles.\n */\nexport function mat4ToEuler(mat: FloatArrayParam, order: string, dest: FloatArrayParam = createVec3()) {\n // Assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)\n const m11 = mat[0];\n const m12 = mat[4];\n const m13 = mat[8];\n const m21 = mat[1];\n const m22 = mat[5];\n const m23 = mat[9];\n const m31 = mat[2];\n const m32 = mat[6];\n const m33 = mat[10];\n if (order === 'XYZ') {\n dest[1] = Math.asin(clamp(m13, -1, 1));\n if (Math.abs(m13) < 0.99999) {\n dest[0] = Math.atan2(-m23, m33);\n dest[2] = Math.atan2(-m12, m11);\n } else {\n dest[0] = Math.atan2(m32, m22);\n dest[2] = 0;\n }\n } else if (order === 'YXZ') {\n dest[0] = Math.asin(-clamp(m23, -1, 1));\n if (Math.abs(m23) < 0.99999) {\n dest[1] = Math.atan2(m13, m33);\n dest[2] = Math.atan2(m21, m22);\n } else {\n dest[1] = Math.atan2(-m31, m11);\n dest[2] = 0;\n }\n } else if (order === 'ZXY') {\n dest[0] = Math.asin(clamp(m32, -1, 1));\n if (Math.abs(m32) < 0.99999) {\n dest[1] = Math.atan2(-m31, m33);\n dest[2] = Math.atan2(-m12, m22);\n } else {\n dest[1] = 0;\n dest[2] = Math.atan2(m21, m11);\n }\n } else if (order === 'ZYX') {\n dest[1] = Math.asin(-clamp(m31, -1, 1));\n if (Math.abs(m31) < 0.99999) {\n dest[0] = Math.atan2(m32, m33);\n dest[2] = Math.atan2(m21, m11);\n } else {\n dest[0] = 0;\n dest[2] = Math.atan2(-m12, m22);\n }\n } else if (order === 'YZX') {\n dest[2] = Math.asin(clamp(m21, -1, 1));\n if (Math.abs(m21) < 0.99999) {\n dest[0] = Math.atan2(-m23, m22);\n dest[1] = Math.atan2(-m31, m11);\n } else {\n dest[0] = 0;\n dest[1] = Math.atan2(m13, m33);\n }\n } else if (order === 'XZY') {\n dest[2] = Math.asin(-clamp(m12, -1, 1));\n if (Math.abs(m12) < 0.99999) {\n dest[0] = Math.atan2(m32, m22);\n dest[1] = Math.atan2(m13, m11);\n } else {\n dest[0] = Math.atan2(-m23, m33);\n dest[1] = 0;\n }\n }\n return dest;\n}\n\n/**\n * Linearly interpolates between two 4x4 matrices.\n */\nexport function lerpMat4(t: number, t1: number, t2: number, m1: FloatArrayParam, m2: FloatArrayParam, dest?: FloatArrayParam) {\n const result = dest || createMat4();\n const f = (t - t1) / (t2 - t1);\n result[0] = m1[0] + (f * (m2[0] - m1[0]));\n result[1] = m1[1] + (f * (m2[1] - m1[1]));\n result[2] = m1[2] + (f * (m2[2] - m1[2]));\n result[3] = m1[3] + (f * (m2[3] - m1[3]));\n result[4] = m1[4] + (f * (m2[4] - m1[4]));\n result[5] = m1[5] + (f * (m2[5] - m1[5]));\n result[6] = m1[6] + (f * (m2[6] - m1[6]));\n result[7] = m1[7] + (f * (m2[7] - m1[7]));\n result[8] = m1[8] + (f * (m2[8] - m1[8]));\n result[9] = m1[9] + (f * (m2[9] - m1[9]));\n result[10] = m1[10] + (f * (m2[10] - m1[10]));\n result[11] = m1[11] + (f * (m2[11] - m1[11]));\n result[12] = m1[12] + (f * (m2[12] - m1[12]));\n result[13] = m1[13] + (f * (m2[13] - m1[13]));\n result[14] = m1[14] + (f * (m2[14] - m1[14]));\n result[15] = m1[15] + (f * (m2[15] - m1[15]));\n return result;\n}\n\n\n/**\n * Craetes an identity quaternion.\n * @param dest Optional quaternion to initialize\n * @returns New quaternion\n */\nexport function identityQuat(\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n dest[0] = 0.0;\n dest[1] = 0.0;\n dest[2] = 0.0;\n dest[3] = 1.0;\n return dest;\n}\n\n/**\n * Initializes a quaternion from Euler angles.\n *\n * @param euler The Euler angles.\n * @param order Euler angle order: \"XYZ\", \"YXZ\", \"ZXY\" etc.\n * @param [dest] Destination quaternion, created by default.\n * @returns The quaternion.\n */\nexport function eulerToQuat(\n euler: FloatArrayParam,\n order: string,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n // http://www.mathworks.com/matlabcentral/fileexchange/20696-function-to-convert-between-dcm-euler-angles-quaternions-and-euler-vectors/content/SpinCalc.m\n\n const a = (euler[0] * DEGTORAD) / 2;\n const b = (euler[1] * DEGTORAD) / 2;\n const c = (euler[2] * DEGTORAD) / 2;\n\n const c1 = Math.cos(a);\n const c2 = Math.cos(b);\n const c3 = Math.cos(c);\n const s1 = Math.sin(a);\n const s2 = Math.sin(b);\n const s3 = Math.sin(c);\n\n if (order === \"XYZ\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"YXZ\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n } else if (order === \"ZXY\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"ZYX\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n } else if (order === \"YZX\") {\n dest[0] = s1 * c2 * c3 + c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 + s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 - s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 - s1 * s2 * s3;\n } else if (order === \"XZY\") {\n dest[0] = s1 * c2 * c3 - c1 * s2 * s3;\n dest[1] = c1 * s2 * c3 - s1 * c2 * s3;\n dest[2] = c1 * c2 * s3 + s1 * s2 * c3;\n dest[3] = c1 * c2 * c3 + s1 * s2 * s3;\n }\n\n return dest;\n}\n\n/**\n * Encodes rotation from a matrix into a quaternion.\n * @param m The matrix\n * @param dest The quaternion\n */\nexport function mat4ToQuat(\n m: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n // http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm\n\n // Assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)\n\n const m11 = m[0];\n const m12 = m[4];\n const m13 = m[8];\n const m21 = m[1];\n const m22 = m[5];\n const m23 = m[9];\n const m31 = m[2];\n const m32 = m[6];\n const m33 = m[10];\n let s;\n\n const trace = m11 + m22 + m33;\n\n if (trace > 0) {\n s = 0.5 / Math.sqrt(trace + 1.0);\n\n dest[3] = 0.25 / s;\n dest[0] = (m32 - m23) * s;\n dest[1] = (m13 - m31) * s;\n dest[2] = (m21 - m12) * s;\n } else if (m11 > m22 && m11 > m33) {\n s = 2.0 * Math.sqrt(1.0 + m11 - m22 - m33);\n\n dest[3] = (m32 - m23) / s;\n dest[0] = 0.25 * s;\n dest[1] = (m12 + m21) / s;\n dest[2] = (m13 + m31) / s;\n } else if (m22 > m33) {\n s = 2.0 * Math.sqrt(1.0 + m22 - m11 - m33);\n\n dest[3] = (m13 - m31) / s;\n dest[0] = (m12 + m21) / s;\n dest[1] = 0.25 * s;\n dest[2] = (m23 + m32) / s;\n } else {\n s = 2.0 * Math.sqrt(1.0 + m33 - m11 - m22);\n\n dest[3] = (m21 - m12) / s;\n dest[0] = (m13 + m31) / s;\n dest[1] = (m23 + m32) / s;\n dest[2] = 0.25 * s;\n }\n\n return dest;\n}\n\n/**\n *\n * @param u\n * @param v\n * @param dest\n */\nexport function vec3PairToQuat(\n u: FloatArrayParam,\n v: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const norm_u_norm_v = Math.sqrt(dotVec3(u, u) * dotVec3(v, v));\n let real_part = norm_u_norm_v + dotVec3(u, v);\n\n if (real_part < 0.00000001 * norm_u_norm_v) {\n // If u and v are exactly opposite, rotate 180 degrees\n // around an arbitrary orthogonal axis. Axis normalisation\n // can happen later, when we normalise the quaternion.\n\n real_part = 0.0;\n\n if (Math.abs(u[0]) > Math.abs(u[2])) {\n dest[0] = -u[1];\n dest[1] = u[0];\n dest[2] = 0;\n } else {\n dest[0] = 0;\n dest[1] = -u[2];\n dest[2] = u[1];\n }\n } else {\n // Otherwise, build quaternion the standard way.\n cross3Vec3(u, v, dest);\n }\n\n dest[3] = real_part;\n\n return normalizeQuat(dest);\n}\n\n/**\n * Converts an angle-axis rotation representation into a quaternion\n * @param angleAxis\n * @param dest\n */\nexport function angleAxisToQuaternion(\n angleAxis: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const halfAngle = angleAxis[3] / 2.0;\n const fsin = Math.sin(halfAngle);\n dest[0] = fsin * angleAxis[0];\n dest[1] = fsin * angleAxis[1];\n dest[2] = fsin * angleAxis[2];\n dest[3] = Math.cos(halfAngle);\n return dest;\n}\n\n/**\n * Converts a quaternion to Euler angles\n * @param q\n * @param order\n * @param dest\n */\nexport function quatToEuler(\n q: FloatArrayParam,\n order: string,\n dest: FloatArrayParam = createVec3()\n) {\n quatToRotationMat4(q, tempMat4a);\n mat4ToEuler(tempMat4a, order, dest);\n return dest;\n}\n\n/**\n * Multiples a pair of quaternions\n * @param p\n * @param q\n * @param dest\n */\nexport function mulQuats(\n p: FloatArrayParam,\n q: FloatArrayParam,\n dest: FloatArrayParam = createVec4()\n): FloatArrayParam {\n const p0 = p[0];\n const p1 = p[1];\n const p2 = p[2];\n const p3 = p[3];\n const q0 = q[0];\n const q1 = q[1];\n const q2 = q[2];\n const q3 = q[3];\n dest[0] = p3 * q0 + p0 * q3 + p1 * q2 - p2 * q1;\n dest[1] = p3 * q1 + p1 * q3 + p2 * q0 - p0 * q2;\n dest[2] = p3 * q2 + p2 * q3 + p0 * q1 - p1 * q0;\n dest[3] = p3 * q3 - p0 * q0 - p1 * q1 - p2 * q2;\n return dest;\n}\n\n/**\n *\n * @param q\n * @param vec\n * @param dest\n */\nexport function vec3ApplyQuat(\n q: FloatArrayParam,\n vec: FloatArrayParam,\n dest: FloatArrayParam = createVec3()\n): FloatArrayParam {\n const x = vec[0];\n const y = vec[1];\n const z = vec[2];\n\n const qx = q[0];\n const qy = q[1];\n const qz = q[2];\n const qw = q[3];\n\n // calculate quat * vector\n\n const ix = qw * x + qy * z - qz * y;\n const iy = qw * y + qz * x - qx * z;\n const iz = qw * z + qx * y - qy * x;\n const iw = -qx * x - qy * y - qz * z;\n\n // calculate result * inverse quat\n\n dest[0] = ix * qw + iw * -qx + iy * -qz - iz * -qy;\n dest[1] = iy * qw + iw * -qy + iz * -qx - ix * -qz;\n dest[2] = iz * qw + iw * -qz + ix * -qy - iy * -qx;\n\n return dest;\n}\n\n/**\n * Converts a quaternion into a matrix.\n * @param q\n * @param dest\n */\nexport function quatToMat4(\n q: FloatArrayParam,\n dest?: FloatArrayParam\n): FloatArrayParam {\n dest = identityMat4(dest);\n\n const q0 = q[0]; //x\n const q1 = q[1]; //y\n const q2 = q[2]; //z\n const q3 = q[3]; //w\n\n const tx = 2.0 * q0;\n const ty = 2.0 * q1;\n const tz = 2.0 * q2;\n\n const twx = tx * q3;\n const twy = ty * q3;\n const twz = tz * q3;\n\n const txx = tx * q0;\n const txy = ty * q0;\n const txz = tz * q0;\n\n const tyy = ty * q1;\n const tyz = tz * q1;\n const tzz = tz * q2;\n\n dest[0] = 1.0 - (tyy + tzz);\n dest[1] = txy + twz;\n dest[2] = txz - twy;\n\n dest[4] = txy - twz;\n dest[5] = 1.0 - (txx + tzz);\n dest[6] = tyz + twx;\n\n dest[8] = txz + twy;\n dest[9] = tyz - twx;\n\n dest[10] = 1.0 - (txx + tyy);\n\n return dest;\n}\n\n/**\n * Converts a quaternion into a rotation matrix.\n * @param q\n * @param m\n */\nexport function quatToRotationMat4(\n q: FloatArrayParam,\n m: FloatArrayParam\n): FloatArrayParam {\n const x = q[0];\n const y = q[1];\n const z = q[2];\n const w = q[3];\n\n const x2 = x + x;\n const y2 = y + y;\n const z2 = z + z;\n const xx = x * x2;\n const xy = x * y2;\n const xz = x * z2;\n const yy = y * y2;\n const yz = y * z2;\n const zz = z * z2;\n const wx = w * x2;\n const wy = w * y2;\n const wz = w * z2;\n\n m[0] = 1 - (yy + zz);\n m[4] = xy - wz;\n m[8] = xz + wy;\n\n m[1] = xy + wz;\n m[5] = 1 - (xx + zz);\n m[9] = yz - wx;\n\n m[2] = xz - wy;\n m[6] = yz + wx;\n m[10] = 1 - (xx + yy);\n\n // last column\n m[3] = 0;\n m[7] = 0;\n m[11] = 0;\n\n // bottom row\n m[12] = 0;\n m[13] = 0;\n m[14] = 0;\n m[15] = 1;\n\n return m;\n}\n\n/**\n * Normalizes a quaternion\n * @param q\n * @param dest\n * @returns The normalized quaternion\n */\nexport function normalizeQuat(\n q: FloatArrayParam,\n dest: FloatArrayParam = q\n): FloatArrayParam {\n const len = lenVec4([q[0], q[1], q[2], q[3]]);\n dest[0] = q[0] / len;\n dest[1] = q[1] / len;\n dest[2] = q[2] / len;\n dest[3] = q[3] / len;\n return dest;\n}\n\n/**\n * Gets the conjugate of a quaternion.\n * @param q\n * @param dest\n * @returns The conjugate of the quaternion\n */\nexport function conjugateQuat(\n q: FloatArrayParam,\n dest: FloatArrayParam = q\n) {\n dest[0] = -q[0];\n dest[1] = -q[1];\n dest[2] = -q[2];\n dest[3] = q[3];\n return dest;\n}\n\n/**\n * Gets the inverse of a quaternion.\n * @param q\n * @param dest\n * @returns The inverse quaternion\n */\nexport function inverseQuat(q: FloatArrayParam, dest: FloatArrayParam) {\n return normalizeQuat(conjugateQuat(q, dest));\n}\n\n/**\n * Converts a quaternion to angle-axis representation.\n * @param q\n * @param angleAxis\n * @returns The angle-axis rotation\n */\nexport function quatToAngleAxis(\n q: FloatArrayParam,\n angleAxis: FloatArrayParam = createVec4()\n) {\n q = normalizeQuat(q, tempVec4a);\n const q3 = q[3];\n const angle = 2 * Math.acos(q3);\n const s = Math.sqrt(1 - q3 * q3);\n if (s < 0.001) {\n // test to avoid divide by zero, s is always positive due to sqrt\n angleAxis[0] = q[0];\n angleAxis[1] = q[1];\n angleAxis[2] = q[2];\n } else {\n angleAxis[0] = q[0] / s;\n angleAxis[1] = q[1] / s;\n angleAxis[2] = q[2] / s;\n }\n angleAxis[3] = angle; // * 57.295779579;\n return angleAxis;\n}\n\n\n/**\n * Finds the intersection of a 3D ray with a 3D triangle.\n */\nexport function rayTriangleIntersect(origin: FloatArrayParam, dir: FloatArrayParam, a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam, isect: FloatArrayParam): FloatArrayParam | null {\n isect = isect || createVec3();\n const EPSILON = 0.000001;\n const edge1 = subVec3(b, a, tempVec3);\n const edge2 = subVec3(c, a, tempVec3b);\n const pvec = cross3Vec3(dir, edge2, tempVec3c);\n const det = dotVec3(edge1, pvec);\n if (det < EPSILON) {\n return null;\n }\n const tvec = subVec3(origin, a, tempVec3d);\n const u = dotVec3(tvec, pvec);\n if (u < 0 || u > det) {\n return null;\n }\n const qvec = cross3Vec3(tvec, edge1, tempVec3e);\n const v = dotVec3(dir, qvec);\n if (v < 0 || u + v > det) {\n return null;\n }\n const t = dotVec3(edge2, qvec) / det;\n isect[0] = origin[0] + t * dir[0];\n isect[1] = origin[1] + t * dir[1];\n isect[2] = origin[2] + t * dir[2];\n return isect;\n}\n\n/**\n Transforms a ray by a matrix.\n @param matrix 4x4 matrix\n @param rayOrigin The ray origin\n @param rayDir The ray direction\n @param rayOriginDest The transformed ray origin\n @param rayDirDest The transformed ray direction\n */\nexport function transformRay(matrix: FloatArrayParam, rayOrigin: FloatArrayParam, rayDir: FloatArrayParam, rayOriginDest: FloatArrayParam, rayDirDest: FloatArrayParam) {\n tempVec4a[0] = rayOrigin[0];\n tempVec4a[1] = rayOrigin[1];\n tempVec4a[2] = rayOrigin[2];\n tempVec4a[3] = 1;\n transformVec4(matrix, tempVec4a, tempVec4b);\n rayOriginDest[0] = tempVec4b[0];\n rayOriginDest[1] = tempVec4b[1];\n rayOriginDest[2] = tempVec4b[2];\n tempVec4a[0] = rayDir[0];\n tempVec4a[1] = rayDir[1];\n tempVec4a[2] = rayDir[2];\n transformVec3(matrix, tempVec4a, tempVec4b);\n normalizeVec3(tempVec4b);\n rayDirDest[0] = tempVec4b[0];\n rayDirDest[1] = tempVec4b[1];\n rayDirDest[2] = tempVec4b[2];\n}\n\n/**\n Transforms a Canvas-space position into a World-space ray, in the context of a Camera.\n @method canvasPosToWorldRay\n @static\n @param {Number[]} viewMatrix View matrix\n @param {Number[]} projMatrix Projection matrix\n @param {String} projection Projection type (e.g. \"ortho\")\n @param {Number[]} canvasPos The Canvas-space position.\n @param {Number[]} worldRayOrigin The World-space ray origin.\n @param {Number[]} worldRayDir The World-space ray direction.\n */\nexport const canvasPosToWorldRay = ((() => {\n\n const pvMatInv = new Float64Array(16);\n const vec4Near = new Float64Array(4);\n const vec4Far = new Float64Array(4);\n\n const clipToWorld = (clipX, clipY, clipZ, isOrtho, outVec4) => {\n outVec4[0] = clipX;\n outVec4[1] = clipY;\n outVec4[2] = clipZ;\n outVec4[3] = 1;\n\n transformVec4(pvMatInv, outVec4, outVec4);\n if (!isOrtho)\n mulVec4Scalar(outVec4, 1 / outVec4[3]);\n };\n\n return (canvas, viewMatrix, projMatrix, projection, canvasPos, worldRayOrigin, worldRayDir) => {\n const isOrtho = projection === \"ortho\";\n\n mulMat4(projMatrix, viewMatrix, pvMatInv);\n inverseMat4(pvMatInv, pvMatInv);\n\n // Calculate clip space coordinates, which will be in range\n // of x=[-1..1] and y=[-1..1], with y=(+1) at top\n\n const clipX = 2 * canvasPos[0] / canvas.width - 1; // Calculate clip space coordinates\n const clipY = 1 - 2 * canvasPos[1] / canvas.height;\n\n clipToWorld(clipX, clipY, -1, isOrtho, vec4Near);\n\n clipToWorld(clipX, clipY, 1, isOrtho, vec4Far);\n\n worldRayOrigin[0] = vec4Near[0];\n worldRayOrigin[1] = vec4Near[1];\n worldRayOrigin[2] = vec4Near[2];\n\n subVec3(vec4Far, vec4Near, worldRayDir);\n\n normalizeVec3(worldRayDir);\n };\n}))();\n", "/**\n * ## xeokit SDK Core Utilities Library\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/utils\n * ````\n *\n * @module @xeokit/utils\n */\n\nexport * from \"./Map\";\nexport * from \"./Queue\";\nexport * from \"./Loader\";\nexport * from \"./LoadingManager\";\nexport * from \"./WorkerPool\";\nexport * from \"./Cache\";\nexport * from \"./FileLoader\";\n\n/**\n *\n * @param ob\n */\nexport function clone(ob: any) {\n return JSON.parse(JSON.stringify(ob));\n}\n\nconst guidChars = [[\"0\", 10], [\"A\", 26], [\"a\", 26], [\"_\", 1], [\"$\", 1]].map(function (a) {\n const li :any[]= [];\n // @ts-ignore\n const st = a[0].charCodeAt(0);\n const en = st + a[1];\n for (let i = st; i < en; ++i) {\n li.push(i);\n }\n return String.fromCharCode.apply(null, li);\n}).join(\"\");\n\n/**\n *\n * @param v\n * @param len\n */\nexport function b64(v: number, len: number) {\n const r = (!len || len === 4) ? [0, 6, 12, 18] : [0, 6];\n return r.map(function (i) {\n return guidChars.substr(parseInt(String(v / (1 << i))) % 64, 1)\n }\n ).reverse().join(\"\");\n}\n\n/**\n *\n * @param g\n */\nexport function compressGuid(g: string) {\n const bs = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30].map(function (i) {\n return parseInt(g.substr(i, 2), 16);\n });\n return b64(bs[0], 2) + [1, 4, 7, 10, 13].map(function (i) {\n return b64((bs[i] << 16) + (bs[i + 1] << 8) + bs[i + 2], 4);\n }).join(\"\");\n}\n\n/**\n *\n * @param m\n * @param t\n */\nexport function findNodeOfType(m: any, t: any) {\n const li: any[] = [];\n const _ = function (n: { type: any; children: any; }) {\n if (n.type === t) li.push(n);\n (n.children || []).forEach(function (c: { type: any; children: any; }) {\n _(c);\n });\n };\n _(m);\n return li;\n}\n\n/**\n */\nexport function timeout(dt: number) {\n return new Promise(function (resolve, reject) {\n setTimeout(resolve, dt);\n });\n}\n\nexport function httpRequest(args: { method: string; url: string; }) {\n return new Promise(function (resolve, reject) {\n const xhr = new XMLHttpRequest();\n xhr.open(args.method || \"GET\", args.url, true);\n xhr.onload = function (e) {\n console.log(args.url, xhr.readyState, xhr.status);\n if (xhr.readyState === 4) {\n if (xhr.status === 200) {\n resolve(xhr.responseXML);\n } else {\n reject(xhr.statusText);\n }\n }\n };\n xhr.send(null);\n });\n}\n//\n// export const queryString = function () {\n// // This function is anonymous, is executed immediately and\n// // the return value is assigned to QueryString!\n// const query_string = {};\n// const query = window.location.search.substring(1);\n// const vars = query.split(\"&\");\n// for (let i = 0; i < vars.length; i++) {\n// const pair = vars[i].split(\"=\");\n// // If first entry with this name\n// // @ts-ignore\n// if (typeof query_string[pair[0]] === \"undefined\") {\n// // @ts-ignore\n// query_string[pair[0]] = decodeURIComponent(pair[1]);\n// // If second entry with this name\n// } else { // @ts-ignore\n// if (typeof query_string[pair[0]] === \"string\") {\n// // @ts-ignore\n// query_string[pair[0]] = [query_string[pair[0]], decodeURIComponent(pair[1])];\n// // If third or later entry with this name\n// } else {\n// // @ts-ignore\n// query_string[pair[0]].push(decodeURIComponent(pair[1]));\n// }\n// }\n// }\n// return query_string;\n// }();\n\nexport function loadJSON(url: string,\n ok: {\n (arg0: any): void;\n (_value: any): any;\n },\n err: {\n (arg0: string | ProgressEvent): void;\n (_value: any): any;\n }) {\n // Avoid checking ok and err on each use.\n // @ts-ignore\n const defaultCallback = (_value) => undefined;\n ok = ok || defaultCallback;\n err = err || defaultCallback;\n\n const request = new XMLHttpRequest();\n request.overrideMimeType(\"application/json\");\n request.open('GET', url, true);\n request.addEventListener('load', function (event) {\n // @ts-ignore\n const response = event.target.response;\n if (this.status === 200) {\n let json;\n try {\n json = JSON.parse(response);\n } catch (e) {\n err(`utils.loadJSON(): Failed to parse JSON response - ${e}`);\n }\n ok(json);\n } else if (this.status === 0) {\n // Some browsers return HTTP Status 0 when using non-http protocol\n // e.g. 'file://' or 'data://'. Handle as success.\n console.warn('loadFile: HTTP Status 0 received.');\n try {\n ok(JSON.parse(response));\n } catch (e) {\n err(`utils.loadJSON(): Failed to parse JSON response - ${e}`);\n }\n } else {\n err(event);\n }\n }, false);\n\n request.addEventListener('error', function (event) {\n err(event);\n }, false);\n request.send(null);\n}\n\nexport function loadArraybuffer(url: string, ok: { (arg0: ArrayBuffer): void; (_value: any): any; }, err: { (arg0: string): void; (_value: any): any; }) {\n // Check for data: URI\n // @ts-ignore\n const defaultCallback = (_value) => undefined;\n ok = ok || defaultCallback;\n err = err || defaultCallback;\n const dataUriRegex = /^data:(.*?)(;base64)?,(.*)$/;\n const dataUriRegexResult = url.match(dataUriRegex);\n if (dataUriRegexResult) { // Safari can't handle data URIs through XMLHttpRequest\n const isBase64 = !!dataUriRegexResult[2];\n let data = dataUriRegexResult[3];\n data = window.decodeURIComponent(data);\n if (isBase64) {\n data = window.atob(data);\n }\n try {\n const buffer = new ArrayBuffer(data.length);\n const view = new Uint8Array(buffer);\n for (let i = 0; i < data.length; i++) {\n view[i] = data.charCodeAt(i);\n }\n window.setTimeout(function () {\n ok(buffer);\n }, 0);\n } catch (error) {\n window.setTimeout(function () {\n err(error);\n }, 0);\n }\n } else {\n const request = new XMLHttpRequest();\n request.open('GET', url, true);\n request.responseType = 'arraybuffer';\n request.onreadystatechange = function () {\n if (request.readyState === 4) {\n if (request.status === 200) {\n ok(request.response);\n } else {\n err('loadArrayBuffer error : ' + request.response);\n }\n }\n };\n request.send(null);\n }\n}\n\n/** Downloads an ArrayBuffer to a file.\n *\n * @param arrayBuffer\n * @param filename\n */\nexport function saveArrayBuffer(arrayBuffer: ArrayBuffer, filename: string) {\n const blob = new Blob([arrayBuffer], {type: \"application/octet-stream\"});\n const link = document.createElement('a');\n link.download = filename;\n link.href = window.URL.createObjectURL(blob);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n}\n\n/** Downloads JSON to a file.\n *\n * @param arrayBuffer\n * @param filename\n */\nexport function saveJSON(data:any, filename: string) {\n const blob = new Blob([JSON.stringify(data, null, 2)], { type: 'application/json' });\n const link = document.createElement('a');\n link.download = filename;\n link.href = window.URL.createObjectURL(blob);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n}\n\n/**\n Tests if the given object is an array\n */\nexport function isArray(value: any) {\n return value && !(value.propertyIsEnumerable('length')) && typeof value === 'object' && typeof value.length === 'number';\n}\n\n/**\n Tests if the given value is a string\n */\nexport function isString(value: any) {\n return (typeof value === 'string' || value instanceof String);\n}\n\n/**\n Tests if the given value is a number\n */\nexport function isNumeric(value: any) {\n return !isNaN(parseFloat(value)) && isFinite(value);\n}\n\n/**\n Tests if the given value is an ID\n */\nexport function isID(value: any) {\n return isString(value) || isNumeric(value);\n}\n\n/**\n Tests if the given value is a function\n */\nexport function isFunction(value: any) {\n return (typeof value === \"function\");\n}\n\n/**\n Tests if the given value is a JavaScript JSON object, eg, ````{ foo: \"bar\" }````.\n */\nexport function isObject(value: { constructor: Function; }) {\n const objectConstructor = {}.constructor;\n return (!!value && value.constructor === objectConstructor);\n}\n\n/** Returns a shallow copy\n */\nexport function copy(o: any) {\n return apply(o, {});\n}\n\n/** Add properties of o to o2, overwriting them on o2 if already there\n */\nexport function apply(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n o2[name] = o[name];\n }\n }\n return o2;\n}\n\n/**\n Add non-null/defined properties of o to o2\n */\nexport function apply2(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n if (o[name] !== undefined && o[name] !== null) {\n o2[name] = o[name];\n }\n }\n }\n return o2;\n}\n\n/**\n Add properties of o to o2 where undefined or null on o2\n */\nexport function applyIf(o: any, o2: any) {\n for (const name in o) {\n if (o.hasOwnProperty(name)) {\n if (o2[name] === undefined || o2[name] === null) {\n o2[name] = o[name];\n }\n }\n }\n return o2;\n}\n\n/**\n Returns true if the given map is empty.\n */\nexport function isEmptyObject(obj: any) {\n for (const name in obj) {\n if (obj.hasOwnProperty(name)) {\n return false;\n }\n }\n return true;\n}\n\n/**\n Returns the given ID as a string, in quotes if the ID was a string to begin with.\n This is useful for logging IDs.\n */\nexport function inQuotes(id: any) {\n return isNumeric(id) ? (`${id}`) : (`'${id}'`);\n}\n\n/**\n Returns the concatenation of two typed arrays.\n */\nexport function concat(a: any, b: any) {\n const c = new a.constructor(a.length + b.length);\n c.set(a);\n c.set(b, a.length);\n return c;\n}\n\n/**\n * Returns a new UUID.\n */\nexport const createUUID = ((() => {\n const lut: any[] = [];\n for (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n }\n return () => {\n const d0 = Math.random() * 0xffffffff | 0;\n const d1 = Math.random() * 0xffffffff | 0;\n const d2 = Math.random() * 0xffffffff | 0;\n const d3 = Math.random() * 0xffffffff | 0;\n return `${lut[d0 & 0xff] + lut[d0 >> 8 & 0xff] + lut[d0 >> 16 & 0xff] + lut[d0 >> 24 & 0xff]}-${lut[d1 & 0xff]}${lut[d1 >> 8 & 0xff]}-${lut[d1 >> 16 & 0x0f | 0x40]}${lut[d1 >> 24 & 0xff]}-${lut[d2 & 0x3f | 0x80]}${lut[d2 >> 8 & 0xff]}-${lut[d2 >> 16 & 0xff]}${lut[d2 >> 24 & 0xff]}${lut[d3 & 0xff]}${lut[d3 >> 8 & 0xff]}${lut[d3 >> 16 & 0xff]}${lut[d3 >> 24 & 0xff]}`;\n };\n}))();\n", "/** @private */\nexport class Map {\n readonly items: any[];\n #lastUniqueId: number;\n\n constructor(items: any, baseId?: any) {\n this.items = items || [];\n this.#lastUniqueId = (baseId || 0) + 1;\n }\n\n /**\n * Usage:\n *\n * id = myMap.addItem(\"foo\") // ID internally generated\n * id = myMap.addItem(\"foo\", \"bar\") // ID is \"foo\"\n */\n addItem() {\n let item;\n if (arguments.length === 2) {\n const id = arguments[0];\n item = arguments[1];\n if (this.items[id]) { // Won't happen if given ID is string\n throw \"ID clash: '\" + id + \"'\";\n }\n this.items[id] = item;\n return id;\n\n } else {\n item = arguments[0] || {};\n while (true) {\n const findId = this.#lastUniqueId++;\n if (!this.items[findId]) {\n this.items[findId] = item;\n return findId;\n }\n }\n }\n }\n\n removeItem(id: any) {\n const item = this.items[id];\n delete this.items[id];\n return item;\n }\n}\n", "export class Queue {\n private _head: any[];\n private _headLength: number;\n private _tail: any[];\n private _index: number;\n private _length: number;\n\n constructor() {\n\n this._head = [];\n this._headLength = 0;\n this._tail = [];\n this._index = 0;\n this._length = 0;\n }\n\n get length() {\n return this._length;\n }\n\n shift() {\n if (this._index >= this._headLength) {\n const t = this._head;\n t.length = 0;\n this._head = this._tail;\n this._tail = t;\n this._index = 0;\n this._headLength = this._head.length;\n if (!this._headLength) {\n return;\n }\n }\n const value = this._head[this._index];\n if (this._index < 0) {\n delete this._head[this._index++];\n }\n else {\n this._head[this._index++] = undefined;\n }\n this._length--;\n return value;\n }\n\n push(item: any) {\n this._length++;\n this._tail.push(item);\n return this;\n };\n\n unshift(item: any) {\n this._head[--this._index] = item;\n this._length++;\n return this;\n }\n\n clear() {\n this._head = [];\n this._headLength = 0;\n this._tail = [];\n this._index = 0;\n this._length = 0;\n }\n}\n", "class LoadingManager {\n private isLoading: boolean;\n private itemsLoaded: number;\n private itemsTotal: number;\n private urlModifier: undefined;\n private handlers: any[];\n private onStart: Function|undefined;\n private onLoad: Function;\n private onProgress: Function;\n private onError: Function;\n\n constructor(onLoad: Function, onProgress: Function, onError: Function) {\n\n this.isLoading = false;\n this.itemsLoaded = 0;\n this.itemsTotal = 0;\n this.urlModifier = undefined;\n this.handlers = [];\n\n this.onStart = undefined;\n this.onLoad = onLoad;\n this.onProgress = onProgress;\n this.onError = onError;\n }\n\n itemStart(url: any) {\n this.itemsTotal++;\n if (!this.isLoading) {\n if (this.onStart !== undefined) {\n this.onStart(url, this.itemsLoaded, this.itemsTotal);\n }\n }\n this.isLoading = true;\n }\n\n itemEnd(url: any) {\n this.itemsLoaded++;\n if (this.onProgress !== undefined) {\n this.onProgress(url, this.itemsLoaded, this.itemsTotal);\n }\n if (this.itemsLoaded === this.itemsTotal) {\n this.isLoading = false;\n if (this.onLoad !== undefined) {\n this.onLoad();\n }\n }\n }\n\n itemError(url: any) {\n if (this.onError !== undefined) {\n this.onError(url);\n }\n }\n\n resolveURL(url: any) {\n if (this.urlModifier) {\n // @ts-ignore\n return this.urlModifier(url);\n }\n return url;\n }\n\n setURLModifier(transform: any) {\n this.urlModifier = transform;\n return this;\n }\n\n addHandler(regex: any, loader: any) {\n this.handlers.push(regex, loader);\n return this;\n }\n\n removeHandler(regex: any) {\n const index = this.handlers.indexOf(regex);\n if (index !== -1) {\n this.handlers.splice(index, 2);\n }\n return this;\n }\n\n getHandler(file: any) {\n for (let i = 0, l = this.handlers.length; i < l; i += 2) {\n const regex = this.handlers[i];\n const loader = this.handlers[i + 1];\n if (regex.global) regex.lastIndex = 0; // see #17920\n if (regex.test(file)) {\n return loader;\n }\n }\n return null;\n }\n}\n\n// @ts-ignore\nconst DefaultLoadingManager = new LoadingManager();\n\nexport {DefaultLoadingManager, LoadingManager};\n", "import {DefaultLoadingManager, LoadingManager} from './LoadingManager';\n\nclass Loader {\n manager: LoadingManager;\n crossOrigin: string;\n withCredentials: boolean;\n path: string;\n resourcePath: string;\n requestHeader: {};\n\n constructor(manager: LoadingManager | undefined) {\n\n this.manager = (manager !== undefined) ? manager : DefaultLoadingManager;\n\n this.crossOrigin = 'anonymous';\n this.withCredentials = false;\n this.path = '';\n this.resourcePath = '';\n this.requestHeader = {};\n }\n\n load(url: string, onLoad: Function, onProgress: Function, onError: Function) {\n }\n\n loadAsync(url: string, onProgress: Function) {\n const scope = this;\n return new Promise(function (resolve, reject) {\n // @ts-ignore\n scope.load(url, resolve, onProgress, reject);\n });\n }\n\n parse( /* data */) {\n }\n\n setCrossOrigin(crossOrigin: string) {\n this.crossOrigin = crossOrigin;\n return this;\n }\n\n setWithCredentials(value: boolean) {\n this.withCredentials = value;\n return this;\n }\n\n setPath(path: string) {\n this.path = path;\n return this;\n }\n\n setResourcePath(resourcePath: string) {\n this.resourcePath = resourcePath;\n return this;\n }\n\n setRequestHeader(requestHeader: {}) {\n this.requestHeader = requestHeader;\n return this;\n }\n}\n\nexport {Loader};\n", "/**\n * @author Deepkolos / https://github.com/deepkolos\n */\nexport class WorkerPool {\n private pool: number;\n private queue: any[];\n private workers: any[];\n private workersResolve: any[];\n private workerStatus: number;\n private workerCreator: any;\n\n constructor(pool = 4) {\n this.pool = pool;\n this.queue = [];\n this.workers = [];\n this.workersResolve = [];\n this.workerStatus = 0;\n }\n\n _initWorker(workerId: number) {\n if (!this.workers[workerId]) {\n const worker = this.workerCreator();\n worker.addEventListener('message', this._onMessage.bind(this, workerId));\n this.workers[workerId] = worker;\n }\n }\n\n _getIdleWorker() {\n for (let i = 0; i < this.pool; i++)\n if (!(this.workerStatus & (1 << i))) return i;\n return -1;\n }\n\n _onMessage(workerId: number, msg: string) {\n const resolve = this.workersResolve[workerId];\n resolve && resolve(msg);\n if (this.queue.length) {\n const {resolve, msg, transfer} = this.queue.shift();\n this.workersResolve[workerId] = resolve;\n this.workers[workerId].postMessage(msg, transfer);\n } else {\n this.workerStatus ^= 1 << workerId;\n }\n }\n\n setWorkerCreator(workerCreator: any) {\n this.workerCreator = workerCreator;\n }\n\n setWorkerLimit(pool: number) {\n this.pool = pool;\n }\n\n postMessage(msg: any, transfer: any) {\n return new Promise((resolve) => {\n const workerId = this._getIdleWorker();\n if (workerId !== -1) {\n this._initWorker(workerId);\n this.workerStatus |= 1 << workerId;\n this.workersResolve[workerId] = resolve;\n this.workers[workerId].postMessage(msg, transfer);\n } else {\n this.queue.push({resolve, msg, transfer});\n }\n });\n }\n\n destroy() {\n\n this.workers.forEach((worker) => worker.terminate());\n this.workersResolve.length = 0;\n this.workers.length = 0;\n this.queue.length = 0;\n this.workerStatus = 0;\n\n }\n\n}\n", "const files: any = {};\nlet enabled = false;\n\nconst Cache = {\n\n enabled: false,\n files: {},\n\n add: function (key: string | number, file: any) {\n if (!enabled) {\n return;\n }\n files[key] = file;\n },\n\n get: function (key: string | number) {\n if (!enabled) {\n return;\n }\n return files[key];\n },\n\n remove: function (key: string | number) {\n delete files[key];\n },\n\n clear: function () {\n this.files = {};\n }\n};\n\nexport {Cache};\n", "import {Cache} from './Cache';\nimport {Loader} from './Loader';\nimport type {LoadingManager} from \"./LoadingManager\";\n\nconst loading : {[key:string]:any} = {};\n\nclass FileLoader extends Loader {\n\n mimeType: string;\n responseType: string;\n\n constructor(manager?: LoadingManager) {\n super(manager);\n }\n\n load(url:string, onLoad:Function, onProgress:Function, onError:Function) {\n if (url === undefined) {\n url = '';\n }\n if (this.path !== undefined) {\n url = this.path + url;\n }\n url = this.manager.resolveURL(url);\n const cached = Cache.get(url);\n if (cached !== undefined) {\n this.manager.itemStart(url);\n setTimeout(() => {\n if (onLoad) {\n onLoad(cached);\n }\n this.manager.itemEnd(url);\n }, 0);\n return cached;\n }\n if (loading[url] !== undefined) {\n loading[url].push({onLoad, onProgress, onError});\n return;\n }\n loading[url] = [];\n loading[url].push({onLoad, onProgress, onError});\n const req = new Request(url, {\n headers: new Headers(this.requestHeader),\n credentials: this.withCredentials ? 'include' : 'same-origin'\n });\n const mimeType = this.mimeType;\n const responseType = this.responseType;\n fetch(req).then(response => {\n if (response.status === 200 || response.status === 0) {\n // Some browsers return HTTP Status 0 when using non-http protocol\n // e.g. 'file://' or 'data://'. Handle as success.\n if (response.status === 0) {\n console.warn('FileLoader: HTTP Status 0 received.');\n }\n // @ts-ignore\n if (typeof ReadableStream === 'undefined' || response.body.getReader === undefined) {\n return response;\n }\n const callbacks = loading[url];\n // @ts-ignore\n const reader = response.body.getReader();\n const contentLength = response.headers.get('Content-Length');\n const total = contentLength ? parseInt(contentLength) : 0;\n const lengthComputable = total !== 0;\n let loaded = 0;\n const stream = new ReadableStream({\n start(controller) {\n readData();\n\n function readData() {\n reader.read().then(({done, value}) => {\n if (done) {\n controller.close();\n } else {\n // @ts-ignore\n loaded += value.byteLength;\n const event = new ProgressEvent('progress', {lengthComputable, loaded, total});\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onProgress) {\n callback.onProgress(event);\n }\n }\n controller.enqueue(value);\n readData();\n }\n });\n }\n }\n });\n return new Response(stream);\n } else {\n throw new Error(`fetch for \"${response.url}\" responded with ${response.status}: ${response.statusText}`);\n }\n }).then(response => {\n switch (responseType) {\n case 'arraybuffer':\n return response.arrayBuffer();\n case 'blob':\n return response.blob();\n case 'document':\n return response.text()\n .then(text => {\n const parser = new DOMParser();\n // @ts-ignore\n return parser.parseFromString(text, mimeType);\n });\n case 'json':\n return response.json();\n default:\n if (mimeType === undefined) {\n return response.text();\n } else {\n // sniff encoding\n const re = /charset=\"?([^;\"\\s]*)\"?/i;\n const exec = re.exec(mimeType);\n const label = exec && exec[1] ? exec[1].toLowerCase() : undefined;\n const decoder = new TextDecoder(label);\n return response.arrayBuffer().then(ab => decoder.decode(ab));\n }\n }\n }).then(data => {\n // Add to cache only on HTTP success, so that we do not cache\n // error response bodies as proper responses to requests.\n Cache.add(url, data);\n const callbacks = loading[url];\n delete loading[url];\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onLoad) {\n callback.onLoad(data);\n }\n }\n }).catch(err => {\n // Abort errors and other errors are handled the same\n const callbacks = loading[url];\n if (callbacks === undefined) {\n // When onLoad was called and url was deleted in `loading`\n this.manager.itemError(url);\n throw err;\n\n }\n delete loading[url];\n for (let i = 0, il = callbacks.length; i < il; i++) {\n const callback = callbacks[i];\n if (callback.onError) {\n callback.onError(err);\n }\n }\n this.manager.itemError(url);\n }).finally(() => {\n this.manager.itemEnd(url);\n });\n this.manager.itemStart(url);\n }\n\n setResponseType(value: string) {\n this.responseType = value;\n return this;\n }\n\n setMimeType(value: string) {\n this.mimeType = value;\n return this;\n }\n}\n\n\nexport {FileLoader};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fsvg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit RTC Coordinate Utilities\n *\n * ---\n *\n * ### *Math functions for working with RTC cartesian coordinates*\n *\n * ---\n *\n * * Math functions for working with relative-to-center (RTC) coordinate systems\n * * Used internally within {@link @xeokit/viewer!Viewer | Viewer}\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/rtc\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as rtc from \"@xeokit/rtc\";\n *\n * const worldPos = [100000000000.0, 1000000000.0, 1000000000000.0];\n * const rtcCenter = [0,0,0];\n * const rtcPos = [0,0,0];\n *\n * rtc.worldToRTCPos(worldPos, rtcCenter, rtcPos);\n *\n * //..\n * ````\n *\n * @module @xeokit/rtc\n */\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {\n createVec3, createVec4,\n dotVec3,\n mulVec3Scalar,\n normalizeVec3,\n setMat4Translation,\n transformVec4,\n translateMat4v\n} from \"@xeokit/matrix\";\nimport {getPositions3Center} from \"@xeokit/boundaries\";\n\n\nconst tempVec3a = createVec3();\nconst tempMat = new Float32Array(16);\nconst rtcCenterWorld = new Float64Array(4);\nconst rtcCenterView = new Float64Array(4);\n\n/**\n * The size of tiles within xeokit's relative-to-center (RTC) World coordinate system.\n */\nexport const RTC_CELL_SIZE = 200;\n\n/**\n * Given a view matrix and a relative-to-center (RTC) coordinate origin, returns a view matrix\n * to transform RTC coordinates to View-space.\n */\nexport function createRTCViewMat(viewMat: FloatArrayParam, rtcCenter: FloatArrayParam, rtcViewMat: FloatArrayParam = tempMat): FloatArrayParam {\n rtcCenterWorld[0] = rtcCenter[0];\n rtcCenterWorld[1] = rtcCenter[1];\n rtcCenterWorld[2] = rtcCenter[2];\n rtcCenterWorld[3] = 1;\n transformVec4(viewMat, rtcCenterWorld, rtcCenterView);\n setMat4Translation(viewMat, rtcCenterView, rtcViewMat);\n return rtcViewMat;\n}\n\n/**\n * Given a modeling matrix and a relative-to-center (RTC) coordinate origin, returns an RTC modeling matrix.\n *\n * @param matrix Full-precision absolute modeling matrix, possibly with huge translations.\n * @param rtcCenter Returns the RTC origin.\n * @returns A new RTC modeling matrix, with transforms relative to the RTC origin.\n */\nexport const createRTCModelMat = (() => {\n\n const zeroVec4 = createVec4([0,0,0,1]);\n const tempVec4a = createVec4();\n\n return (matrix: FloatArrayParam, rtcCenter: FloatArrayParam): FloatArrayParam => {\n const tempVec4 = transformVec4(matrix, zeroVec4, tempVec4a);\n rtcCenter[0] = Math.round(tempVec4[0] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n rtcCenter[1] = Math.round(tempVec4[1] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n rtcCenter[2] = Math.round(tempVec4[2] / RTC_CELL_SIZE) * RTC_CELL_SIZE;\n const rtcModelMatrix = matrix.slice();\n translateMat4v(mulVec3Scalar(rtcCenter, -1, tempVec3a), rtcModelMatrix);\n return rtcModelMatrix;\n };\n})();\n\n/**\n * Converts a World-space 3D position to RTC.\n *\n * Given a double-precision World-space position, returns a double-precision relative-to-center (RTC) center pos\n * and a single-precision offset fom that center.\n *\n * @param worldPos The World-space position.\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param rtcPos Single-precision offset fom that center.\n */\nexport function worldToRTCPos(worldPos: FloatArrayParam, rtcCenter: FloatArrayParam, rtcPos: FloatArrayParam) {\n\n const xHigh = Float32Array.from([worldPos[0]])[0];\n const xLow = worldPos[0] - xHigh;\n\n const yHigh = Float32Array.from([worldPos[1]])[0];\n const yLow = worldPos[1] - yHigh;\n\n const zHigh = Float32Array.from([worldPos[2]])[0];\n const zLow = worldPos[2] - zHigh;\n\n rtcCenter[0] = xHigh;\n rtcCenter[1] = yHigh;\n rtcCenter[2] = zHigh;\n\n rtcPos[0] = xLow;\n rtcPos[1] = yLow;\n rtcPos[2] = zLow;\n}\n\n/**\n * Converts a World-space 3D position to RTC.\n *\n * Given a double-precision World-space position, returns a double-precision relative-to-center (RTC) center.\n *\n * @param worldCenter The World-space position.\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param [cellSize=200] The size of each coordinate cell within the RTC coordinate system.\n */\nexport function worldToRTCCenter(worldCenter: FloatArrayParam, rtcCenter: FloatArrayParam, cellSize = RTC_CELL_SIZE) {\n rtcCenter[0] = Math.round(worldCenter[0] / cellSize) * cellSize;\n rtcCenter[1] = Math.round(worldCenter[1] / cellSize) * cellSize;\n rtcCenter[2] = Math.round(worldCenter[2] / cellSize) * cellSize;\n return rtcCenter;\n}\n\n/**\n * Converts a flat array of double-precision positions to RTC positions.\n *\n * Returns the RTC positions, along with a computed RTC center for those positions.\n *\n * When computing the RTC position, this function uses a modulus operation to ensure that, whenever possible,\n * identical RTC positions are reused for different positions arrays.\n *\n * @param worldPositions Flat array of World-space 3D positions.\n * @param rtcPositions Outputs the computed flat array of 3D RTC positions.\n * @param rtcCenter Outputs the computed double-precision relative-to-center (RTC) center pos.\n * @param [cellSize=200] The size of each coordinate cell within the RTC coordinate system.\n * @returns ````True```` if the positions actually needed conversion to RTC, else ````false````. When\n * ````false````, we can safely ignore the data returned in ````rtcPositions```` and ````rtcCenter````,\n * since ````rtcCenter```` will equal ````[0,0,0]````, and ````rtcPositions```` will contain identical values to ````positions````.\n */\nexport function worldToRTCPositions(worldPositions: FloatArrayParam, rtcPositions: FloatArrayParam, rtcCenter: FloatArrayParam, cellSize = RTC_CELL_SIZE): boolean {\n\n const center = getPositions3Center(worldPositions, tempVec3a);\n\n const rtcCenterX = Math.round(center[0] / cellSize) * cellSize;\n const rtcCenterY = Math.round(center[1] / cellSize) * cellSize;\n const rtcCenterZ = Math.round(center[2] / cellSize) * cellSize;\n\n for (let i = 0, len = worldPositions.length; i < len; i += 3) {\n rtcPositions[i + 0] = worldPositions[i + 0] - rtcCenterX;\n rtcPositions[i + 1] = worldPositions[i + 1] - rtcCenterY;\n rtcPositions[i + 2] = worldPositions[i + 2] - rtcCenterZ;\n }\n\n rtcCenter[0] = rtcCenterX;\n rtcCenter[1] = rtcCenterY;\n rtcCenter[2] = rtcCenterZ;\n\n const rtcNeeded = (rtcCenter[0] !== 0 || rtcCenter[1] !== 0 || rtcCenter[2] !== 0);\n\n return rtcNeeded;\n}\n\n/**\n * Converts an RTC 3D position to World-space.\n *\n * @param rtcCenter Double-precision relative-to-center (RTC) center pos.\n * @param rtcPos Single-precision offset fom that center.\n * @param worldPos The World-space position.\n */\nexport function rtcToWorldPos(rtcCenter: FloatArrayParam, rtcPos: FloatArrayParam, worldPos: FloatArrayParam): FloatArrayParam {\n worldPos[0] = rtcCenter[0] + rtcPos[0];\n worldPos[1] = rtcCenter[1] + rtcPos[1];\n worldPos[2] = rtcCenter[2] + rtcPos[2];\n return worldPos;\n}\n\n/**\n * Given a 3D plane defined by distance from origin and direction, and an RTC center position,\n * return a plane position that is relative to the RTC center.\n *\n * @param dist\n * @param dir\n * @param rtcCenter\n * @param rtcPlanePos\n * @returns {*}\n */\nexport function getPlaneRTCPos(dist: number, dir: FloatArrayParam, rtcCenter: FloatArrayParam, rtcPlanePos: FloatArrayParam) : FloatArrayParam{\n const rtcCenterToPlaneDist = dotVec3(dir, rtcCenter) + dist;\n const dirNormalized = normalizeVec3(dir, tempVec3a);\n mulVec3Scalar(dirNormalized, -rtcCenterToPlaneDist, rtcPlanePos);\n return rtcPlanePos;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fsvg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * \n *\n * # xeokit Boundaries Math Library\n *\n * ---\n *\n * ### *Tools for 2D and 3D boundary analysis, boundary transformation, and collision detection*\n *\n * ---\n *\n * * Axis-aligned boundaries (AABB2 and AABB3)\n * * Object-aligned boundaries (OBB)\n * * Transformable OOBs\n * * Create boundaries from positions\n * * Find center of positions\n * * FrustumProjection-boundary intersection tests\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/boundaries\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import * as boundaries from \"@xeokit/boundaries\";\n *\n * //..TODO\n * ````\n *\n * @module @xeokit/boundaries\n */\nimport {FloatArrayParam, IntArrayParam, MAX_DOUBLE, MIN_DOUBLE, newFloatArray} from \"@xeokit/math\";\nimport {createMat4, createVec2, createVec3, lenVec3, mulMat4, subVec3} from \"@xeokit/matrix\";\nimport {decompressPoint3WithMat4} from \"@xeokit/compression\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempMat4a = createMat4();\n\n\n/**\n * Returns a new, uninitialized 3D axis-aligned bounding box.\n */\nexport function createAABB3(values?: FloatArrayParam): Float64Array {\n // @ts-ignore\n return new Float64Array(values || 6);\n}\n\n/**\n * Returns a new, uninitialized 3D axis-aligned bounding box.\n */\nexport function createAABB3Int16(values?: IntArrayParam): Int16Array {\n // @ts-ignore\n return new Int16Array(values || 6);\n}\n\n/**\n * Returns a new, uninitialized 2D axis-aligned bounding box.\n */\nexport function createAABB2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 4);\n}\n\n/**\n * Returns a new, uninitialized 3D oriented bounding box (OBB).\n */\nexport function createOBB3(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 32);\n}\n\n/**\n * Returns a new, uninitialized 2D oriented bounding box (OBB).\n */\nexport function createOBB2(values?: FloatArrayParam): FloatArrayParam {\n // @ts-ignore\n return newFloatArray(values || 16);\n}\n\n/** Returns a new 3D bounding sphere */\nexport function createSphere3(\n x: number,\n y: number,\n z: number,\n r: number\n): FloatArrayParam {\n return newFloatArray([x, y, z, r]);\n}\n\n/**\n * Transforms an createOBB3 by a 4x4\n */\nexport function transformOBB3(\n m: FloatArrayParam,\n p: FloatArrayParam,\n p2: FloatArrayParam = p\n): FloatArrayParam {\n let i;\n const len = p.length;\n\n let x;\n let y;\n let z;\n\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n\n for (i = 0; i < len; i += 4) {\n x = p[i + 0];\n y = p[i + 1];\n z = p[i + 2];\n\n p2[i + 0] = m0 * x + m4 * y + m8 * z + m12;\n p2[i + 1] = m1 * x + m5 * y + m9 * z + m13;\n p2[i + 2] = m2 * x + m6 * y + m10 * z + m14;\n p2[i + 3] = m3 * x + m7 * y + m11 * z + m15;\n }\n\n return p2;\n}\n\n\n/** Returns true if the first AABB2 contains the second AABB2.\n */\nexport function containsAABB2(\n aabb1: FloatArrayParam,\n aabb2: FloatArrayParam\n): boolean {\n return aabb1[0] <= aabb2[0] &&\n aabb2[3] <= aabb1[3] &&\n aabb1[1] <= aabb2[1] &&\n aabb1[2] <= aabb2[2];\n}\n\n/** Returns true if the first AABB3 contains the second AABB3.\n */\nexport function containsAABB3(\n aabb1: FloatArrayParam,\n aabb2: FloatArrayParam\n): boolean {\n const result =\n aabb1[0] <= aabb2[0] &&\n aabb2[3] <= aabb1[3] &&\n aabb1[1] <= aabb2[1] &&\n aabb2[4] <= aabb1[4] &&\n aabb1[2] <= aabb2[2] &&\n aabb2[5] <= aabb1[5];\n return result;\n}\n\n/**\n * Gets the diagonal size of an createAABB3 given as minima and maxima.\n */\nexport const getAABB3Diag: Function = (() => {\n const min = newFloatArray(3);\n const max = newFloatArray(3);\n const tempVec3 = newFloatArray(3);\n return (aabb: FloatArrayParam): number => {\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n subVec3(max, min, tempVec3);\n return Math.abs(lenVec3(tempVec3));\n };\n})();\n\n/**\n * Get a diagonal boundary size that is symmetrical about the given point.\n */\nexport const getAABB3DiagPoint = (() => {\n const min = newFloatArray(3);\n const max = newFloatArray(3);\n const tempVec3 = newFloatArray(3);\n\n return (aabb: FloatArrayParam, p: FloatArrayParam): number => {\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n\n const diagVec = subVec3(max, min, tempVec3);\n\n const xneg = p[0] - aabb[0];\n const xpos = aabb[3] - p[0];\n const yneg = p[1] - aabb[1];\n const ypos = aabb[4] - p[1];\n const zneg = p[2] - aabb[2];\n const zpos = aabb[5] - p[2];\n\n diagVec[0] += xneg > xpos ? xneg : xpos;\n diagVec[1] += yneg > ypos ? yneg : ypos;\n diagVec[2] += zneg > zpos ? zneg : zpos;\n\n return Math.abs(lenVec3(diagVec));\n };\n})();\n\n/**\n * Gets the area of an AABB.\n */\nexport function getAABB3Area(aabb: FloatArrayParam): number {\n const width = aabb[3] - aabb[0];\n const height = aabb[4] - aabb[1];\n const depth = aabb[5] - aabb[2];\n return width * height * depth;\n}\n\n/**\n * Gets the center of an AABB.\n */\nexport function getAABB3Center(\n aabb: FloatArrayParam,\n dest: FloatArrayParam = createVec3()\n): FloatArrayParam {\n dest[0] = (aabb[0] + aabb[3]) / 2;\n dest[1] = (aabb[1] + aabb[4]) / 2;\n dest[2] = (aabb[2] + aabb[5]) / 2;\n return dest;\n}\n\n/**\n * Gets the center of a 2D AABB.\n */\nexport function getAABB2Center(\n aabb: FloatArrayParam,\n dest: FloatArrayParam = createVec2()\n): FloatArrayParam {\n dest[0] = (aabb[2] + aabb[0]) / 2;\n dest[1] = (aabb[3] + aabb[1]) / 2;\n return dest;\n}\n\n/**\n * Collapses a 3D axis-aligned boundary, ready to expand to fit 3D points.\n * Creates new AABB if none supplied.\n */\nexport function collapseAABB3(aabb: FloatArrayParam = createAABB3()): FloatArrayParam {\n aabb[0] = MAX_DOUBLE;\n aabb[1] = MAX_DOUBLE;\n aabb[2] = MAX_DOUBLE;\n aabb[3] = MIN_DOUBLE;\n aabb[4] = MIN_DOUBLE;\n aabb[5] = MIN_DOUBLE;\n return aabb;\n}\n\n/**\n * Collapses a 3D axis-aligned boundary, ready to expand to fit 3D points.\n * Creates new AABB if none supplied.\n */\nexport function collapseAABB3Int16(aabb: IntArrayParam = createAABB3Int16()): IntArrayParam {\n aabb[0] = 65535;\n aabb[1] = 65535;\n aabb[2] = 65535;\n aabb[3] = -65535;\n aabb[4] = -65535;\n aabb[5] = -65535;\n return aabb;\n}\n\n/**\n * Converts an axis-aligned 3D boundary into an oriented boundary consisting of\n * an array of eight 3D positions, one for each corner of the boundary.\n *\n * @private\n */\nexport function AABB3ToOBB3(aabb: FloatArrayParam = createAABB3(), obb = createOBB3()): FloatArrayParam {\n obb[0] = aabb[0];\n obb[1] = aabb[1];\n obb[2] = aabb[2];\n obb[3] = 1;\n\n obb[4] = aabb[3];\n obb[5] = aabb[1];\n obb[6] = aabb[2];\n obb[7] = 1;\n\n obb[8] = aabb[3];\n obb[9] = aabb[4];\n obb[10] = aabb[2];\n obb[11] = 1;\n\n obb[12] = aabb[0];\n obb[13] = aabb[4];\n obb[14] = aabb[2];\n obb[15] = 1;\n\n obb[16] = aabb[0];\n obb[17] = aabb[1];\n obb[18] = aabb[5];\n obb[19] = 1;\n\n obb[20] = aabb[3];\n obb[21] = aabb[1];\n obb[22] = aabb[5];\n obb[23] = 1;\n\n obb[24] = aabb[3];\n obb[25] = aabb[4];\n obb[26] = aabb[5];\n obb[27] = 1;\n\n obb[28] = aabb[0];\n obb[29] = aabb[4];\n obb[30] = aabb[5];\n obb[31] = 1;\n\n return obb;\n}\n\n/**\n * Expands the first axis-aligned 3D boundary to enclose the second, if required.\n */\nexport function expandAABB3(aabb1: FloatArrayParam, aabb2: FloatArrayParam) {\n if (aabb1[0] > aabb2[0]) {\n aabb1[0] = aabb2[0];\n }\n if (aabb1[1] > aabb2[1]) {\n aabb1[1] = aabb2[1];\n }\n if (aabb1[2] > aabb2[2]) {\n aabb1[2] = aabb2[2];\n }\n if (aabb1[3] < aabb2[3]) {\n aabb1[3] = aabb2[3];\n }\n if (aabb1[4] < aabb2[4]) {\n aabb1[4] = aabb2[4];\n }\n if (aabb1[5] < aabb2[5]) {\n aabb1[5] = aabb2[5];\n }\n return aabb1;\n}\n\n/**\n * Expands the first axis-aligned 2D boundary to enclose the second, if required.\n */\nexport function expandAABB2(aabb1: FloatArrayParam, aabb2: FloatArrayParam) {\n if (aabb1[0] > aabb2[0]) {\n aabb1[0] = aabb2[0];\n }\n if (aabb1[1] > aabb2[1]) {\n aabb1[1] = aabb2[1];\n }\n if (aabb1[3] < aabb2[3]) {\n aabb1[3] = aabb2[3];\n }\n if (aabb1[4] < aabb2[4]) {\n aabb1[4] = aabb2[4];\n }\n return aabb1;\n}\n\n/**\n * Expands an axis-aligned 3D boundary to enclose the given point, if needed.\n */\nexport function expandAABB3Point3(aabb: FloatArrayParam, p: FloatArrayParam) {\n\n if (aabb[0] > p[0]) {\n aabb[0] = p[0];\n }\n\n if (aabb[1] > p[1]) {\n aabb[1] = p[1];\n }\n\n if (aabb[2] > p[2]) {\n aabb[2] = p[2];\n }\n\n if (aabb[3] < p[0]) {\n aabb[3] = p[0];\n }\n\n if (aabb[4] < p[1]) {\n aabb[4] = p[1];\n }\n\n if (aabb[5] < p[2]) {\n aabb[5] = p[2];\n }\n\n return aabb;\n}\n\n/**\n * Expands an axis-aligned 2D boundary to enclose the given point, if needed.\n */\nexport function expandAABB2Point2(aabb: FloatArrayParam, p: FloatArrayParam) {\n\n if (aabb[0] > p[0]) {\n aabb[0] = p[0];\n }\n\n if (aabb[1] > p[1]) {\n aabb[1] = p[1];\n }\n\n if (aabb[3] < p[0]) {\n aabb[3] = p[0];\n }\n\n if (aabb[4] < p[1]) {\n aabb[4] = p[1];\n }\n\n return aabb;\n}\n\n/**\n * Expands an axis-aligned 3D boundary to enclose the given points, if needed.\n */\nexport function expandAABB3Points3(aabb: FloatArrayParam, positions: FloatArrayParam): FloatArrayParam {\n var x;\n var y;\n var z;\n for (var i = 0, len = positions.length; i < len; i += 3) {\n x = positions[i];\n y = positions[i + 1];\n z = positions[i + 2];\n if (aabb[0] > x) {\n aabb[0] = x;\n }\n if (aabb[1] > y) {\n aabb[1] = y;\n }\n if (aabb[2] > z) {\n aabb[2] = z;\n }\n if (aabb[3] < x) {\n aabb[3] = x;\n }\n if (aabb[4] < y) {\n aabb[4] = y;\n }\n if (aabb[5] < z) {\n aabb[5] = z;\n }\n }\n return aabb;\n}\n\n/**\n * Converts an axis-aligned 3D boundary into an oriented boundary consisting of\n * an array of eight 3D positions, one for each corner of the boundary.\n */\nexport function ABB3ToOBB3(\n aabb: FloatArrayParam,\n obb: FloatArrayParam = createOBB3()\n): FloatArrayParam {\n obb[0] = aabb[0];\n obb[1] = aabb[1];\n obb[2] = aabb[2];\n obb[3] = 1;\n\n obb[4] = aabb[3];\n obb[5] = aabb[1];\n obb[6] = aabb[2];\n obb[7] = 1;\n\n obb[8] = aabb[3];\n obb[9] = aabb[4];\n obb[10] = aabb[2];\n obb[11] = 1;\n\n obb[12] = aabb[0];\n obb[13] = aabb[4];\n obb[14] = aabb[2];\n obb[15] = 1;\n\n obb[16] = aabb[0];\n obb[17] = aabb[1];\n obb[18] = aabb[5];\n obb[19] = 1;\n\n obb[20] = aabb[3];\n obb[21] = aabb[1];\n obb[22] = aabb[5];\n obb[23] = 1;\n\n obb[24] = aabb[3];\n obb[25] = aabb[4];\n obb[26] = aabb[5];\n obb[27] = 1;\n\n obb[28] = aabb[0];\n obb[29] = aabb[4];\n obb[30] = aabb[5];\n obb[31] = 1;\n\n return obb;\n}\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the homogeneous 3D points (x,y,z,w) given in a flattened array.\n */\nexport const positions3ToAABB3 = (() => {\n const p = newFloatArray(3);\n\n return (\n positions: FloatArrayParam,\n aabb: FloatArrayParam,\n positionsDecompressMatrix: FloatArrayParam\n ): FloatArrayParam => {\n aabb = aabb || createAABB3();\n\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = positions.length; i < len; i += 3) {\n if (positionsDecompressMatrix) {\n p[0] = positions[i + 0];\n p[1] = positions[i + 1];\n p[2] = positions[i + 2];\n\n decompressPoint3WithMat4(p, positionsDecompressMatrix, p);\n\n x = p[0];\n y = p[1];\n z = p[2];\n } else {\n x = positions[i + 0];\n y = positions[i + 1];\n z = positions[i + 2];\n }\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n };\n})();\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the homogeneous 3D points (x,y,z,w) given in a flattened array.\n */\nexport function OBB3ToAABB3(\n obb: FloatArrayParam,\n aabb: FloatArrayParam = createAABB3()\n): FloatArrayParam {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = obb.length; i < len; i += 4) {\n x = obb[i + 0];\n y = obb[i + 1];\n z = obb[i + 2];\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n}\n\n/**\n * Finds the minimum axis-aligned 3D boundary enclosing the given 3D points.\n */\nexport function points3ToAABB3(\n points: number[][],\n aabb: FloatArrayParam = createAABB3()\n): FloatArrayParam {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n\n let x;\n let y;\n let z;\n\n for (let i = 0, len = points.length; i < len; i++) {\n x = points[i][0];\n y = points[i][1];\n z = points[i][2];\n\n if (x < xmin) {\n xmin = x;\n }\n\n if (y < ymin) {\n ymin = y;\n }\n\n if (z < zmin) {\n zmin = z;\n }\n\n if (x > xmax) {\n xmax = x;\n }\n\n if (y > ymax) {\n ymax = y;\n }\n\n if (z > zmax) {\n zmax = z;\n }\n }\n\n aabb[0] = xmin;\n aabb[1] = ymin;\n aabb[2] = zmin;\n aabb[3] = xmax;\n aabb[4] = ymax;\n aabb[5] = zmax;\n\n return aabb;\n}\n\n/**\n * Gets the 3D center of the given flat array of 3D positions.\n */\nexport function getPositions3Center(\n positions: FloatArrayParam,\n center: FloatArrayParam = createVec3()\n): FloatArrayParam {\n let xCenter = 0;\n let yCenter = 0;\n let zCenter = 0;\n for (let i = 0, len = positions.length; i < len; i += 3) {\n xCenter += positions[i + 0];\n yCenter += positions[i + 1];\n zCenter += positions[i + 2];\n }\n const numPositions = positions.length / 3;\n center[0] = xCenter / numPositions;\n center[1] = yCenter / numPositions;\n center[2] = zCenter / numPositions;\n return center;\n}\n\n\n/**\n * A plane within a {@link Frustum3}.\n */\nexport class FrustumPlane3 {\n\n public testVertex: FloatArrayParam;\n public offset: number;\n public normal: FloatArrayParam;\n\n /**\n * Creates a new frustum plane.\n */\n constructor() {\n this.normal = createVec3();\n this.offset = 0;\n this.testVertex = createVec3();\n }\n\n /**\n * Sets the position and direction of the frustum plane.\n * @param nx\n * @param ny\n * @param nz\n * @param offset\n */\n set(nx: number, ny: number, nz: number, offset: number) {\n const s = 1.0 / Math.sqrt(nx * nx + ny * ny + nz * nz);\n this.normal[0] = nx * s;\n this.normal[1] = ny * s;\n this.normal[2] = nz * s;\n this.offset = offset * s;\n this.testVertex[0] = (this.normal[0] >= 0.0) ? 1 : 0;\n this.testVertex[1] = (this.normal[1] >= 0.0) ? 1 : 0;\n this.testVertex[2] = (this.normal[2] >= 0.0) ? 1 : 0;\n }\n}\n\n/**\n * Intersection state in which first boundary is completely inside the second.\n */\nexport const INSIDE: number = 1;\n\n/**\n * Intersection state in which two boundaries partially intersect.\n */\nexport const INTERSECT: number = 2;\n\n/**\n * Intersection state in which two boundaries do not intersect.\n */\nexport const OUTSIDE: number = 3;\n\n/**\n * A 3D frustum defined as six planes.\n */\nexport class Frustum3 {\n\n /**\n * The six planes that comprise the frustum boundary.\n */\n public planes: FrustumPlane3[];\n\n /**\n * Creates a new FrustumProjection\n */\n constructor() {\n this.planes = [\n new FrustumPlane3(), new FrustumPlane3(), new FrustumPlane3(),\n new FrustumPlane3(), new FrustumPlane3(), new FrustumPlane3()\n ];\n }\n}\n\n/**\n * Sets the extents of a frustum to the World-space volume defined by view and projection matrices.\n * Creates the frustum first if not given.\n */\nexport function setFrustum3(viewMat: FloatArrayParam, projMat: FloatArrayParam, frustum?: Frustum3) {\n const m = mulMat4(projMat, viewMat, tempMat4a);\n const m0 = m[0];\n const m1 = m[1];\n const m2 = m[2];\n const m3 = m[3];\n const m4 = m[4];\n const m5 = m[5];\n const m6 = m[6];\n const m7 = m[7];\n const m8 = m[8];\n const m9 = m[9];\n const m10 = m[10];\n const m11 = m[11];\n const m12 = m[12];\n const m13 = m[13];\n const m14 = m[14];\n const m15 = m[15];\n frustum = frustum || new Frustum3();\n frustum.planes[0].set(m3 - m0, m7 - m4, m11 - m8, m15 - m12);\n frustum.planes[1].set(m3 + m0, m7 + m4, m11 + m8, m15 + m12);\n frustum.planes[2].set(m3 - m1, m7 - m5, m11 - m9, m15 - m13);\n frustum.planes[3].set(m3 + m1, m7 + m5, m11 + m9, m15 + m13);\n frustum.planes[4].set(m3 - m2, m7 - m6, m11 - m10, m15 - m14);\n frustum.planes[5].set(m3 + m2, m7 + m6, m11 + m10, m15 + m14);\n return frustum;\n}\n\n/**\n * Tests for intersection between a frustum and an axis-aligned 3D boundary.\n * @param frustum\n * @param aabb\n */\nexport function intersectFrustum3AABB3(frustum: Frustum3, aabb: FloatArrayParam): number {\n let ret = INSIDE;\n const min = tempVec3a;\n const max = tempVec3b;\n min[0] = aabb[0];\n min[1] = aabb[1];\n min[2] = aabb[2];\n max[0] = aabb[3];\n max[1] = aabb[4];\n max[2] = aabb[5];\n const bminmax = [min, max];\n for (let i = 0; i < 6; ++i) {\n const plane = frustum.planes[i];\n if (((plane.normal[0] * bminmax[plane.testVertex[0]][0]) +\n (plane.normal[1] * bminmax[plane.testVertex[1]][1]) +\n (plane.normal[2] * bminmax[plane.testVertex[2]][2]) +\n (plane.offset)) < 0.0) {\n return OUTSIDE;\n }\n if (((plane.normal[0] * bminmax[1 - plane.testVertex[0]][0]) +\n (plane.normal[1] * bminmax[1 - plane.testVertex[1]][1]) +\n (plane.normal[2] * bminmax[1 - plane.testVertex[2]][2]) +\n (plane.offset)) < 0.0) {\n ret = INTERSECT;\n }\n }\n return ret;\n}\n\n/**\n * Tests for intersection between two axis-aligned 3D boundaries.\n * @param aabb1\n * @param aabb2\n */\nexport function intersectAABB3s(aabb1: FloatArrayParam, aabb2: FloatArrayParam): number {\n\n return INTERSECT;\n // let ret = INSIDE;\n // const min = tempVec3a;\n // const max = tempVec3b;\n // min[0] = aabb[0];\n // min[1] = aabb[1];\n // min[2] = aabb[2];\n // max[0] = aabb[3];\n // max[1] = aabb[4];\n // max[2] = aabb[5];\n // const bminmax = [min, max];\n // for (let i = 0; i < 6; ++i) {\n // const plane = frustum.planes[i];\n // if (((plane.normal[0] * bminmax[plane.testVertex[0]][0]) +\n // (plane.normal[1] * bminmax[plane.testVertex[1]][1]) +\n // (plane.normal[2] * bminmax[plane.testVertex[2]][2]) +\n // (plane.offset)) < 0.0) {\n // return OUTSIDE;\n // }\n // if (((plane.normal[0] * bminmax[1 - plane.testVertex[0]][0]) +\n // (plane.normal[1] * bminmax[1 - plane.testVertex[1]][1]) +\n // (plane.normal[2] * bminmax[1 - plane.testVertex[2]][2]) +\n // (plane.offset)) < 0.0) {\n // ret = INTERSECT;\n // }\n // }\n // return ret;\n}\n\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given {@link @xeokit/constants!TrianglesPrimitive | TrianglesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n * @param indices\n */\nexport function intersectFrustum3Triangles3(frustum: Frustum3, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given triangle primitive.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param a\n * @param b\n * @param c\n */\nexport function intersectFrustum3Triangle3(frustum: Frustum3, a: FloatArrayParam, b: FloatArrayParam, c: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given\n * {@link @xeokit/constants!LinesPrimitive | LinesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n * @param indices\n */\nexport function intersectFrustum3Lines3(frustum: Frustum3, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the\n * given {@link @xeokit/constants!PointsPrimitive | PointsPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param positions\n */\nexport function intersectFrustum3Positions3(frustum: Frustum3, positions: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given {@link @xeokit/boundaries!Frustum3 | Frustum3} intersects the given position.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param frustum\n * @param position\n */\nexport function intersectFrustum3Point3(frustum: Frustum3, position: FloatArrayParam): boolean {\n return true;\n}\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!TrianglesPrimitive | TrianglesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n * @param indices\n */\nexport function intersectAABB3Triangles3(aabb: FloatArrayParam, positions: FloatArrayParam, indices: IntArrayParam): boolean {\n for (let i = 0, len = indices.length; i < len; i += 3) {\n // if (aabbIntersectsTriangle(positions, indices[i], indices[i + 1], indices[i + 2], aabb)) {\n // return true;\n // }\n }\n return false;\n}\n\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!LinesPrimitive | LinesPrimitive} geometry.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n * @param indices\n */\nexport function intersectAABB3Lines3(aabb: FloatArrayParam, positions: FloatArrayParam, indices: IntArrayParam) {\n return false;\n}\n\n/**\n * Tests if the given AABB intersects the given {@link @xeokit/constants!PointsPrimitive | PointsPrimitive} vertex positions.\n *\n * Returns ```` true```` if intersection else ````false````.\n *\n * @param aabb\n * @param positions\n */\nexport function intersectAABB3Positions3(aabb: FloatArrayParam, positions: FloatArrayParam) {\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xmax = aabb[3];\n const ymax = aabb[4];\n const zmax = aabb[5];\n for (let i = 0, len = positions.length; i < len; i += 3) {\n const x = positions[i];\n if (xmin <= x && x <= xmax) {\n const y = positions[i + 1];\n if (ymin <= y && y <= ymax) {\n const z = positions[i + 2];\n if (zmin <= z && z <= zmax) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\n/**\n * Tets if the given 3D AABB contains the given 3D position.\n * @param aabb\n * @param p\n */\nexport function containsAABB3Point3(aabb: FloatArrayParam, p: FloatArrayParam) {\n return (\n aabb[0] <= p[0] && p[0] <= aabb[3] &&\n aabb[1] <= p[1] && p[1] <= aabb[4] &&\n aabb[2] <= p[2] && p[2] <= aabb[5]);\n}\n\n/**\n * Tets if the given 2D AABB contains the given 2D position.\n * @param aabb\n * @param p\n */\nexport function containsAABB2Point2(aabb: FloatArrayParam, p: FloatArrayParam) {\n return (\n aabb[0] <= p[0] && p[0] <= aabb[3] &&\n aabb[1] <= p[1] && p[1] <= aabb[4]);\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/compression/badge)](https://www.jsdelivr.com/package/npm/@xeokit/compression)\n *\n * \n *\n * # xeokit SceneGeometry Compression / Decompression Utilities\n *\n * ---\n *\n * ### *Tools for geometry compression and decompression*\n *\n * ---\n *\n * The xeokit SceneGeometry Compression/Decompression Utilities library provides functions used internally within\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry} implementations to compress geometry. These functions are also\n * provided for users who want to pre-compress their geometry \"offline\" and then\n * use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create compressed geometry directly.\n *\n * The compression techniques used include simplifying geometry by combining duplicate positions and adjusting indices, generating edge\n * indices for triangle meshes, ignoring normals (as shaders auto-generate them), converting positions to relative-to-center (RTC)\n * coordinates, and quantizing positions and UVs as 16-bit unsigned integers.\n *\n * An example usage includes compressing a SceneGeometryParams into a {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} using the\n * {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function.\n *\n * The resulting SceneGeometryCompressedParams object shows vertex positions relative to the origin\n * and quantized to 16-bit integers, duplicate positions removed, and adjusted indices. Additionally, edge indices are\n * generated for the {@link @xeokit/constants!TrianglesPrimitive}, and a positionsDecompressMatrix is included to de-quantize\n * the positions within the Viewer.\n *\n * This library provides a set of functions that are used internally within\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry} implementations to\n * compress geometry. The functions are provided here in case users instead want to pre-compress their geometry \"offline\",\n * and then use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create the compressed geometry directly.\n *\n * ### Compression Techniques Used\n *\n * * Simplifies geometry by combining duplicate positions and adjusting indices\n * * Generates edge indices for triangle meshes\n * * Ignores normals (our shaders auto-generate them)\n * * Converts positions to relative-to-center (RTC) coordinates\n * * Quantizes positions and UVs as 16-bit unsigned integers\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/compression\n * ````\n *\n * ## Usage\n *\n * In the example below, we'll use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ````javascript\n * import {compressGeometryParams} from \"@xeokit/compression\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [\n * 202, 202, 202, 200, 202, 202,\n * 200, 200, 202, 202, 200, 202,\n * 202, 202, 202, 202, 200, 202,\n * 202, 200, 200, 202, 202, 200,\n * 202, 202, 202, 202, 202, 200,\n * 200, 202, 200, 200, 202, 202,\n * 200, 202, 202, 200, 202, 200,\n * 200, 200, 200, 200, 200, 202,\n * 200, 200, 200, 202, 200, 200,\n * 202, 200, 202, 200, 200, 202,\n * 202, 200, 200, 200, 200, 200,\n * 200, 202, 200, 202, 202, 200\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n * ````\n *\n * The value of our new {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} is shown below.\n *\n * We can see that:\n *\n * * Vertex positions are now relative to ````origin```` and quantized to 16-bit integers\n * * Duplicate positions are removed and indices adjusted\n * * Edge indices generated for our TrianglesPrimitive\n * * A positions 3D boundary ````aabb````, to de-quantize the positions within the Viewer\n *\n * ````javascript\n * {\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * aabb: [200, 200, 200, 202, 202, 202],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 0, 65525, 0, 0,\n * 0, 0\n * ],\n * origin: [0,0,0],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ],\n * edgeIndices: [\n * 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7,\n * 3, 2, 4, 7, 6, 4, 6\n * ]\n * }\n * ````\n *\n * In the next example, we'll again use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}, which we'll then use to\n * create a compressed geometry within a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n * import {compressGeometryParams} from \"@xeokit/compression\";\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"myBoxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [202, 202, 202, 200, 202, 202, ...],\n * indices: [0, 1, 2, 0, 2, 3, 4, 5, 6, 4, ...]\n * });\n *\n * sceneModel.createGeometryCompressed(geometryCompressedParams);\n *\n * sceneModel.createLayerMesh({ id: \"myMesh\", geometryId: \"myGeometry\" });\n *\n * sceneModel.createObject({ id: \"myObject1\", meshIds: [\"myMesh\"] });\n * sceneModel.createObject({ id: \"myObject2\", meshIds: [\"myMesh\"] });\n *\n * sceneModel.build();\n * ````\n *\n * @module @xeokit/compression\n */\n\nimport {\n createMat3,\n createMat4,\n createVec3,\n identityMat3,\n identityMat4,\n mulMat3,\n mulMat4,\n normalizeVec3,\n scalingMat3v,\n scalingMat4v,\n transformVec3,\n translationMat3v,\n translationMat4v\n} from \"@xeokit/matrix\";\n\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\nconst translate = createMat4();\nconst scale = createMat4();\n\n/**\n * Gets the boundary of a flat positions array.\n *\n * @param array\n * @param min\n * @param max\n */\nexport function getPositions3MinMax(array: FloatArrayParam, min?: FloatArrayParam, max?: FloatArrayParam) {\n let i, j;\n min = min || new Float64Array(3);\n max = max || new Float64Array(3);\n for (i = 0; i < 3; i++) {\n min[i] = Number.MAX_VALUE;\n max[i] = -Number.MAX_VALUE;\n }\n for (i = 0; i < array.length; i += 3) {\n for (j = 0; j < 3; j++) {\n min[j] = Math.min(min[j], array[i + j]);\n max[j] = Math.max(max[j], array[i + j]);\n }\n }\n return {\n min,\n max\n };\n}\n\n/**\n * Creates a de-quantization matrix from a boundary.\n */\nexport function createPositions3DecompressMat4(aabb: FloatArrayParam, positionsDecompressMatrix?: FloatArrayParam): FloatArrayParam {\n positionsDecompressMatrix = positionsDecompressMatrix || createMat4();\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65535;\n identityMat4(translate);\n translationMat4v(aabb, translate);\n identityMat4(scale);\n scalingMat4v([xwid / maxInt, ywid / maxInt, zwid / maxInt], scale);\n mulMat4(translate, scale, positionsDecompressMatrix);\n return positionsDecompressMatrix;\n}\n\n/**\n * Compresses a flat positions array\n */\nexport function compressPositions3(array: FloatArrayParam, min: FloatArrayParam, max: FloatArrayParam) {\n const quantized = new Uint16Array(array.length);\n var multiplier = new Float32Array([\n max[0] !== min[0] ? 65535 / (max[0] - min[0]) : 0,\n max[1] !== min[1] ? 65535 / (max[1] - min[1]) : 0,\n max[2] !== min[2] ? 65535 / (max[2] - min[2]) : 0\n ]);\n let i;\n for (i = 0; i < array.length; i += 3) {\n quantized[i + 0] = Math.floor((array[i + 0] - min[0]) * multiplier[0]);\n quantized[i + 1] = Math.floor((array[i + 1] - min[1]) * multiplier[1]);\n quantized[i + 2] = Math.floor((array[i + 2] - min[2]) * multiplier[2]);\n }\n identityMat4(translate);\n translationMat4v(min, translate);\n identityMat4(scale);\n scalingMat4v([\n (max[0] - min[0]) / 65535,\n (max[1] - min[1]) / 65535,\n (max[2] - min[2]) / 65535\n ], scale);\n const decompressMatrix = mulMat4(translate, scale, identityMat4());\n return {\n quantized: quantized,\n decompressMatrix: decompressMatrix\n };\n}\n\n/**\n * Compresses a 3D position\n * @param p\n * @param aabb\n * @param dest\n */\nexport function compressPoint3WithAABB3(p: FloatArrayParam, aabb: FloatArrayParam, dest: FloatArrayParam = p) {\n const multiplier = new Float32Array([\n aabb[3] !== aabb[0] ? 65535 / (aabb[3] - aabb[0]) : 0,\n aabb[4] !== aabb[1] ? 65535 / (aabb[4] - aabb[1]) : 0,\n aabb[5] !== aabb[2] ? 65535 / (aabb[5] - aabb[2]) : 0\n ]);\n dest[0] = Math.max(0, Math.min(65535, Math.floor((p[0] - aabb[0]) * multiplier[0])));\n dest[1] = Math.max(0, Math.min(65535, Math.floor((p[1] - aabb[1]) * multiplier[1])));\n dest[2] = Math.max(0, Math.min(65535, Math.floor((p[2] - aabb[2]) * multiplier[2])));\n return dest;\n}\n\n/**\n * Decompresses a 3D position\n * @param position\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPoint3WithMat4(position: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: FloatArrayParam = position): FloatArrayParam {\n dest[0] = position[0] * decompressMatrix[0] + decompressMatrix[12];\n dest[1] = position[1] * decompressMatrix[5] + decompressMatrix[13];\n dest[2] = position[2] * decompressMatrix[10] + decompressMatrix[14];\n return dest;\n}\n\n/**\n * Decompresses a 3D position\n * @param position\n * @param aabb\n * @param dest\n */\nexport function decompressPoint3WithAABB3(position: FloatArrayParam, aabb: FloatArrayParam, dest: FloatArrayParam = position): FloatArrayParam {\n const xScale = (aabb[3] - aabb[0]) / 65535;\n const xOffset = aabb[0];\n const yScale = (aabb[4] - aabb[1]) / 65535;\n const yOffset = aabb[1];\n const zScale = (aabb[5] - aabb[2]) / 65535;\n const zOffset = aabb[2];\n\n dest[0] = position[0] * xScale + xOffset;\n dest[1] = position[1] * yScale + yOffset;\n dest[2] = position[2] * zScale + zOffset;\n return dest;\n}\n\n/**\n * Decompresses an axis-aligned 3D boundary\n * @param aabb\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressAABB3WithMat4(aabb: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: FloatArrayParam = aabb): FloatArrayParam {\n dest[0] = aabb[0] * decompressMatrix[0] + decompressMatrix[12];\n dest[1] = aabb[1] * decompressMatrix[5] + decompressMatrix[13];\n dest[2] = aabb[2] * decompressMatrix[10] + decompressMatrix[14];\n dest[3] = aabb[3] * decompressMatrix[0] + decompressMatrix[12];\n dest[4] = aabb[4] * decompressMatrix[5] + decompressMatrix[13];\n dest[5] = aabb[5] * decompressMatrix[10] + decompressMatrix[14];\n return dest;\n}\n\n/**\n * Decompresses an axis-aligned 3D boundary\n * @param aabb\n * @param aabb2\n * @param dest\n */\nexport function decompressAABB3WithAABB3(aabb: FloatArrayParam, aabb2: FloatArrayParam, dest: FloatArrayParam = aabb): FloatArrayParam {\n const xScale = (aabb2[3] - aabb2[0]) / 65535;\n const xOffset = aabb2[0];\n const yScale = (aabb2[4] - aabb2[1]) / 65535;\n const yOffset = aabb2[1];\n const zScale = (aabb2[5] - aabb2[2]) / 65535;\n const zOffset = aabb2[2];\n dest[0] = aabb[0] * xScale + xOffset;\n dest[1] = aabb[1] * yScale + yOffset;\n dest[2] = aabb[2] * zScale + zOffset;\n dest[3] = aabb[3] * xScale + xOffset;\n dest[4] = aabb[4] * yScale + yOffset;\n dest[5] = aabb[5] * zScale + zOffset;\n return dest;\n}\n\n/**\n * Decompresses a flat array of positions\n * @param positions\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPositions3WithMat4(positions: FloatArrayParam, decompressMatrix: FloatArrayParam, dest: Float32Array = new Float32Array(positions.length)): Float32Array {\n for (let i = 0, len = positions.length; i < len; i += 3) {\n dest[i + 0] = positions[i + 0] * decompressMatrix[0] + decompressMatrix[12];\n dest[i + 1] = positions[i + 1] * decompressMatrix[5] + decompressMatrix[13];\n dest[i + 2] = positions[i + 2] * decompressMatrix[10] + decompressMatrix[14];\n }\n return dest;\n}\n\n/**\n * Decompresses a flat array of positions\n * @param positions\n * @param decompressMatrix\n * @param dest\n */\nexport function decompressPositions3WithAABB3(positions: FloatArrayParam, aabb: FloatArrayParam, dest: Float32Array = new Float32Array(positions.length)): Float32Array {\n const xScale = (aabb[3] - aabb[0]);\n const xOffset = aabb[0];\n const yScale = (aabb[4] - aabb[1]);\n const yOffset = aabb[1];\n const zScale = (aabb[5] - aabb[2]);\n const zOffset = aabb[2];\n for (let i = 0, len = positions.length; i < len; i += 3) {\n dest[i + 0] = positions[i + 0] * xScale + xOffset;\n dest[i + 1] = positions[i + 1] * yScale + yOffset;\n dest[i + 2] = positions[i + 2] * zScale + zOffset;\n }\n return dest;\n}\n\n/**\n * Gets the 2D min/max boundary of a flat array of UV coordinate\n * @param array\n */\nexport function getUVBounds(array: FloatArrayParam): { min: FloatArrayParam, max: FloatArrayParam } {\n const min = new Float32Array(2);\n const max = new Float32Array(2);\n let i, j;\n for (i = 0; i < 2; i++) {\n min[i] = Number.MAX_VALUE;\n max[i] = -Number.MAX_VALUE;\n }\n for (i = 0; i < array.length; i += 2) {\n for (j = 0; j < 2; j++) {\n min[j] = Math.min(min[j], array[i + j]);\n max[j] = Math.max(max[j], array[i + j]);\n }\n }\n return {\n min: min,\n max: max\n };\n}\n\n/**\n * Compresses a flat array of UV coordinates\n */\nexport var compressUVs = (function () {\n const translate = createMat3();\n const scale = createMat3();\n return function (array: FloatArrayParam, min: FloatArrayParam, max: FloatArrayParam): {\n quantized: Uint16Array,\n decompressMatrix: FloatArrayParam | Float64Array\n } {\n const quantized = new Uint16Array(array.length);\n const multiplier = new Float32Array([\n 65535 / (max[0] - min[0]),\n 65535 / (max[1] - min[1])\n ]);\n let i;\n for (i = 0; i < array.length; i += 2) {\n quantized[i + 0] = Math.floor((array[i + 0] - min[0]) * multiplier[0]);\n quantized[i + 1] = Math.floor((array[i + 1] - min[1]) * multiplier[1]);\n }\n identityMat3(translate);\n translationMat3v(min, translate);\n identityMat3(scale);\n scalingMat3v([\n (max[0] - min[0]) / 65535,\n (max[1] - min[1]) / 65535\n ], scale);\n const decompressMatrix = mulMat3(translate, scale, identityMat3());\n return {\n quantized: quantized,\n decompressMatrix: decompressMatrix\n };\n };\n})();\n\n/**\n * Oct-encodes a flat array of normal vectors\n * @param array\n */\nexport function compressNormals(array: FloatArrayParam): Int8Array { // http://jcgt.org/published/0003/02/01/\n\n // Note: three elements for each encoded normal, in which the last element in each triplet is redundant.\n // This is to work around a mysterious WebGL issue where 2-element normals just wouldn't work in the shader :/\n\n const encoded = new Int8Array(array.length);\n let oct, dec, best, currentCos, bestCos;\n for (let i = 0; i < array.length; i += 3) {\n // Test various combinations of ceil and floor\n // to minimize rounding errors\n best = oct = octEncodeNormalFromArray(array, i, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(array, i, dec);\n oct = octEncodeNormalFromArray(array, i, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormalFromArray(array, i, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormalFromArray(array, i, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(array, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n encoded[i] = best[0];\n encoded[i + 1] = best[1];\n }\n return encoded;\n}\n\n/**\n */\nfunction octEncodeNormalFromArray(array: FloatArrayParam, i: number, xfunc: any, yfunc: any): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = array[i] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n let y = array[i + 1] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n if (array[i + 2] < 0) {\n let tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n let tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n\n/**\n * Dot product of a normal in an array against a candidate decoding\n */\nfunction dot(array: FloatArrayParam, i: number, createVec3: FloatArrayParam): number {\n return array[i] * createVec3[0] + array[i + 1] * createVec3[1] + array[i + 2] * createVec3[2];\n}\n\n/**\n */\nexport function decompressUV(uv: FloatArrayParam, decompressMatrix: FloatArrayParam, dest = new Float32Array(2)) {\n dest[0] = uv[0] * decompressMatrix[0] + decompressMatrix[6];\n dest[1] = uv[1] * decompressMatrix[4] + decompressMatrix[7];\n}\n\n/**\n *\n */\nexport function decompressUVs(uvs: FloatArrayParam, decompressMatrix: FloatArrayParam, dest = new Float32Array(uvs.length)) {\n for (let i = 0, len = uvs.length; i < len; i += 3) {\n dest[i + 0] = uvs[i + 0] * decompressMatrix[0] + decompressMatrix[6];\n dest[i + 1] = uvs[i + 1] * decompressMatrix[4] + decompressMatrix[7];\n }\n return dest;\n}\n\n/**\n *\n */\nexport function decompressNormal(oct: FloatArrayParam, result: FloatArrayParam): FloatArrayParam {\n let x = oct[0];\n let y = oct[1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[0] = x / length;\n result[1] = y / length;\n result[2] = z / length;\n return result;\n}\n\n/**\n *\n */\nexport function decompressNormals(octs: string | any[], result: FloatArrayParam): FloatArrayParam {\n for (let i = 0, j = 0, len = octs.length; i < len; i += 2) {\n let x = octs[i + 0];\n let y = octs[i + 1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[j + 0] = x / length;\n result[j + 1] = y / length;\n result[j + 2] = z / length;\n j += 3;\n }\n return result;\n}\n\n/**\n *\n * @param oct\n * @param result\n */\nfunction octDecodeVec2(oct: Int8Array, result: FloatArrayParam = createVec3()): FloatArrayParam {\n let x = oct[0];\n let y = oct[1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[0] = x / length;\n result[1] = y / length;\n result[2] = z / length;\n return result;\n}\n\n/**\n *\n */\nfunction octDecodeVec2s(octs: Int8Array, result: FloatArrayParam): FloatArrayParam {\n for (let i = 0, j = 0, len = octs.length; i < len; i += 2) {\n let x = octs[i + 0];\n let y = octs[i + 1];\n x = (2 * x + 1) / 255;\n y = (2 * y + 1) / 255;\n const z = 1 - Math.abs(x) - Math.abs(y);\n if (z < 0) {\n x = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n y = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n }\n const length = Math.sqrt(x * x + y * y + z * z);\n result[j + 0] = x / length;\n result[j + 1] = y / length;\n result[j + 2] = z / length;\n j += 3;\n }\n return result;\n}\n\n/**\n * @private\n */\nexport function quantizePositions3AndCreateMat4(positions: FloatArrayParam, aabb: FloatArrayParam, positionsDecompressMatrix: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenPositions = positions.length;\n const positionsCompressed = new Uint16Array(lenPositions);\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65525;\n const xMultiplier = maxInt / xwid;\n const yMultiplier = maxInt / ywid;\n const zMultiplier = maxInt / zwid;\n const verify = (num: number) => num >= 0 ? num : 0;\n for (let i = 0; i < lenPositions; i += 3) {\n positionsCompressed[i + 0] = Math.floor(verify(positions[i + 0] - xmin) * xMultiplier);\n positionsCompressed[i + 1] = Math.floor(verify(positions[i + 1] - ymin) * yMultiplier);\n positionsCompressed[i + 2] = Math.floor(verify(positions[i + 2] - zmin) * zMultiplier);\n }\n identityMat4(translate);\n translationMat4v(aabb, translate);\n identityMat4(scale);\n scalingMat4v([xwid / maxInt, ywid / maxInt, zwid / maxInt], scale);\n mulMat4(translate, scale, positionsDecompressMatrix);\n return positionsCompressed;\n}\n\n/**\n * @private\n */\nexport function quantizePositions3(positions: FloatArrayParam, aabb: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenPositions = positions.length;\n const positionsCompressed = new Uint16Array(lenPositions);\n const xmin = aabb[0];\n const ymin = aabb[1];\n const zmin = aabb[2];\n const xwid = aabb[3] - xmin;\n const ywid = aabb[4] - ymin;\n const zwid = aabb[5] - zmin;\n const maxInt = 65525;\n const xMultiplier = maxInt / xwid;\n const yMultiplier = maxInt / ywid;\n const zMultiplier = maxInt / zwid;\n const verify = (num: number) => num >= 0 ? num : 0;\n for (let i = 0; i < lenPositions; i += 3) {\n positionsCompressed[i + 0] = Math.floor(verify(positions[i + 0] - xmin) * xMultiplier);\n positionsCompressed[i + 1] = Math.floor(verify(positions[i + 1] - ymin) * yMultiplier);\n positionsCompressed[i + 2] = Math.floor(verify(positions[i + 2] - zmin) * zMultiplier);\n }\n return positionsCompressed;\n}\n\n/**\n * @private\n */\nexport function transformAndOctEncodeNormals(worldNormalMatrix: FloatArrayParam, normals: FloatArrayParam, lenNormals: number, compressedNormals: FloatArrayParam, lenCompressedNormals: number) {\n\n function dot(p: FloatArrayParam, createVec3: FloatArrayParam) { // Dot product of a normal in an array against a candidate decoding\n return p[0] * createVec3[0] + p[1] * createVec3[1] + p[2] * createVec3[2];\n }\n\n // http://jcgt.org/published/0003/02/01/\n let oct, dec, best, currentCos, bestCos;\n let i, ei;\n let localNormal = new Float32Array([0, 0, 0, 0]);\n let worldNormal = new Float32Array([0, 0, 0, 0]);\n for (i = 0; i < lenNormals; i += 3) {\n localNormal[0] = normals[i];\n localNormal[1] = normals[i + 1];\n localNormal[2] = normals[i + 2];\n\n transformVec3(worldNormalMatrix, localNormal, worldNormal);\n normalizeVec3(worldNormal, worldNormal);\n\n // Test various combinations of ceil and floor to minimize rounding errors\n best = oct = octEncodeVec3(worldNormal, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(worldNormal, dec);\n oct = octEncodeVec3(worldNormal, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeVec3(worldNormal, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeVec3(worldNormal, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(worldNormal, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n compressedNormals[lenCompressedNormals + i + 0] = best[0];\n compressedNormals[lenCompressedNormals + i + 1] = best[1];\n compressedNormals[lenCompressedNormals + i + 2] = 0.0; // Unused\n }\n lenCompressedNormals += lenNormals;\n return lenCompressedNormals;\n}\n\n/**\n * @private\n */\nexport function octEncodeNormals(normals: FloatArrayParam) { // http://jcgt.org/published/0003/02/01/\n const lenNormals = normals.length;\n const compressedNormals = new Int8Array(lenNormals)\n let oct, dec, best, currentCos, bestCos;\n for (let i = 0; i < lenNormals; i += 3) {\n // Test various combinations of ceil and floor to minimize rounding errors\n best = oct = octEncodeNormal(normals, i, \"floor\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = bestCos = dot(normals, i, dec);\n oct = octEncodeNormal(normals, i, \"ceil\", \"floor\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormal(normals, i, \"floor\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n oct = octEncodeNormal(normals, i, \"ceil\", \"ceil\");\n dec = octDecodeVec2(oct);\n currentCos = dot(normals, i, dec);\n if (currentCos > bestCos) {\n best = oct;\n bestCos = currentCos;\n }\n compressedNormals[i + 0] = best[0];\n compressedNormals[i + 1] = best[1];\n compressedNormals[i + 2] = 0.0; // Unused\n }\n return compressedNormals;\n}\n\n/**\n * @private\n */\nexport function octEncodeVec3(p: FloatArrayParam, xfunc: string, yfunc: string): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = p[0] / (Math.abs(p[0]) + Math.abs(p[1]) + Math.abs(p[2]));\n let y = p[1] / (Math.abs(p[0]) + Math.abs(p[1]) + Math.abs(p[2]));\n if (p[2] < 0) {\n let tempx = x;\n let tempy = y;\n tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n/**\n * @private\n */\nexport function octEncodeNormal(array: FloatArrayParam, i: number, xfunc: string, yfunc: string): Int8Array { // Oct-encode single normal vector in 2 bytes\n let x = array[i] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n let y = array[i + 1] / (Math.abs(array[i]) + Math.abs(array[i + 1]) + Math.abs(array[i + 2]));\n if (array[i + 2] < 0) {\n let tempx = (1 - Math.abs(y)) * (x >= 0 ? 1 : -1);\n let tempy = (1 - Math.abs(x)) * (y >= 0 ? 1 : -1);\n x = tempx;\n y = tempy;\n }\n // @ts-ignore\n return new Int8Array([Math[xfunc](x * 127.5 + (x < 0 ? -1 : 0)), Math[yfunc](y * 127.5 + (y < 0 ? -1 : 0))]);\n}\n\n/**\n * Compresses a flat array of floatinging point RGB/RGBA colors.\n */\nexport function compressRGBColors(colors: FloatArrayParam) { // http://cg.postech.ac.kr/research/mesh_comp_mobile/mesh_comp_mobile_conference.pdf\n const lenColors = colors.length;\n const colorsCompressed = new Uint16Array(lenColors);\n for (let i = 0; i < lenColors; i++) {\n colorsCompressed[i + 0] = Math.floor(colors[i] * 255);\n }\n return colorsCompressed;\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fmath.svg)](https://badge.fury.io/js/%40xeokit%2Fmath)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/badge)](https://www.jsdelivr.com/package/npm/@xeokit/math)\n *\n * # xeokit Curves Math Library\n *\n * ---\n *\n * ### *Spline curve math functions*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/curves\n * ````\n *\n * ````javascript\n * import * as curves from \"@xeokit/curves\";\n *\n * //..\n * ````\n *\n * @module @xeokit/curves\n */\n\n/**\n * Finds a tangent to a quadratic B\u00E9zier curve.\n *\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function tangentQuadraticB\u00E9zier(t: number, p0: number, p1: number, p2: number): number {\n return 2 * (1 - t) * (p1 - p0) + 2 * t * (p2 - p1);\n}\n\n/**\n * Finds a tangent to a quadratic B\u00E9zier curve.\n *\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function tangentQuadraticB\u00E9zier3(t: number, p0: number, p1: number, p2: number, p3: number): number {\n return -3 * p0 * (1 - t) * (1 - t) +\n 3 * p1 * (1 - t) * (1 - t) - 6 * t * p1 * (1 - t) +\n 6 * t * p2 * (1 - t) - 3 * t * t * p2 +\n 3 * t * t * p3;\n}\n\n/**\n * Finds a tangent to a spline.\n * @param t\n */\nexport function tangentSpline(t: number) {\n const h00 = 6 * t * t - 6 * t;\n const h10 = 3 * t * t - 4 * t + 1;\n const h01 = -6 * t * t + 6 * t;\n const h11 = 3 * t * t - 2 * t;\n return h00 + h10 + h01 + h11;\n}\n\n/**\n * Catmull-Rom interpolation on a curve.\n * @param p0\n * @param p1\n * @param p2\n * @param p3\n * @param t\n */\nexport function catmullRomInterpolate(p0: number, p1: number, p2: number, p3: number, t: number): number {\n const v0 = (p2 - p0) * 0.5;\n const v1 = (p3 - p1) * 0.5;\n const t2 = t * t;\n const t3 = t * t2;\n return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (-3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\n}\n\n// B\u00E9zier Curve formulii from http://en.wikipedia.org/wiki/B%C3%A9zier_curve\n\n// Quad B\u00E9zier Functions\n\n/**\n * Quad B\u00E9zier curve function b2p0\n *\n * @param t\n * @param p\n */\nexport function b2p0(t: number, p: number): number {\n const k = 1 - t;\n return k * k * p;\n\n}\n\n/**\n * Quad B\u00E9zier curve function b2p1\n * @param t\n * @param p\n */\nexport function b2p1(t: number, p: number): number {\n return 2 * (1 - t) * t * p;\n}\n\n/**\n * Quad B\u00E9zier curve function b2p2\n * @param t\n * @param p\n */\nexport function b2p2(t: number, p: number): number {\n return t * t * p;\n}\n\n/**\n * Quad B\u00E9zier curve function b2\n * @param t\n * @param p0\n * @param p1\n * @param p2\n */\nexport function b2(this: any, t: number, p0: number, p1: number, p2: number): number {\n return this.b2p0(t, p0) + this.b2p1(t, p1) + this.b2p2(t, p2);\n}\n\n// Cubic B\u00E9zier Functions\n\n/**\n * Cubic B\u00E9zier curve function b3p0\n * @param t\n * @param p\n */\nexport function b3p0(t: number, p: number): number {\n const k = 1 - t;\n return k * k * k * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p1\n * @param t\n * @param p\n */\nexport function b3p1(t: number, p: number): number {\n const k = 1 - t;\n return 3 * k * k * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p2\n * @param t\n * @param p\n */\nexport function b3p2(t: number, p: number): number {\n const k = 1 - t;\n return 3 * k * t * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3p3\n * @param t\n * @param p\n */\nexport function b3p3(t: number, p: number) {\n return t * t * t * p;\n}\n\n/**\n * Cubic B\u00E9zier curve function b3\n * @param t\n * @param p0\n * @param p1\n * @param p2\n * @param p3\n */\nexport function b3(this: any, t: number, p0: number, p1: number, p2: number, p3: number) {\n return this.b3p0(t, p0) + this.b3p1(t, p1) + this.b3p2(t, p2) + this.b3p3(t, p3);\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fprocgen.svg)](https://badge.fury.io/js/%40xeokit%2Fprocgen)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/procgen/badge)](https://www.jsdelivr.com/package/npm/@xeokit/procgen)\n *\n * \n *\n * # xeokit SceneGeometry Builder Functions\n *\n * ---\n *\n * ### *Functions to generate various 3D geometric primitives*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/procgen\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import {buildBoxGeometry} from \"@xeokit/procgen\";\n *\n * const geometryArrays = buildBoxGeometry({\n * center: [0,0,0],\n * xSize: 1, // Half-size on each axis\n * ySize: 1,\n * zSize: 1\n * });\n * ````\n *\n * @module @xeokit/procgen\n */\nexport * from \"./buildBoxGeometry\";\nexport * from \"./buildGridGeometry\"\nexport * from \"./buildBoxLinesGeometry\";\nexport * from \"./buildCylinderGeometry\";\nexport * from \"./buildSphereGeometry\";\nexport * from \"./buildTorusGeometry\";\nexport * from \"./buildVectorTextGeometry\";\nexport * from \"./buildPlaneGeometry\";\nexport * from \"./GeometryArrays\";\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {SDKError} from \"@xeokit/core\";\n\n/**\n * Creates box-shaped geometry arrays.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a box-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n * TODO\n * ````\n *\n * @function buildBoxGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.xSize=1.0] Half-size on the X-axis.\n * @param [cfg.ySize=1.0] Half-size on the Y-axis.\n * @param [cfg.zSize=1.0] Half-size on the Z-axis.\n * @returns {Object} GeometryArrays arrays.\n */\nexport function buildBoxGeometry(cfg: {\n center?: number[],\n ySize?: number,\n xSize?: number,\n zSize?: number\n} = {\n center: [0, 0, 0],\n xSize: 1,\n ySize: 1,\n zSize: 1\n}): GeometryArrays | SDKError {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n return new SDKError(\"Negative xSize not allowed\");\n }\n\n let ySize = cfg.ySize || 1;\n if (ySize < 0) {\n return new SDKError(\"Negative ySize not allowed\");\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n return new SDKError(\"Negative zSize not allowed\");\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const xmin = -xSize + centerX;\n const ymin = -ySize + centerY;\n const zmin = -zSize + centerZ;\n const xmax = xSize + centerX;\n const ymax = ySize + centerY;\n const zmax = zSize + centerZ;\n\n return utils.apply(cfg, {\n\n primitive: TrianglesPrimitive,\n\n // The vertices - eight for our cube, each\n // one spanning three array elements for X,Y and Z\n positions: [\n\n // v0-v1-v2-v3 front\n xmax, ymax, zmax,\n xmin, ymax, zmax,\n xmin, ymin, zmax,\n xmax, ymin, zmax,\n\n // v0-v3-v4-v1 right\n xmax, ymax, zmax,\n xmax, ymin, zmax,\n xmax, ymin, zmin,\n xmax, ymax, zmin,\n\n // v0-v1-v6-v1 top\n xmax, ymax, zmax,\n xmax, ymax, zmin,\n xmin, ymax, zmin,\n xmin, ymax, zmax,\n\n // v1-v6-v7-v2 left\n xmin, ymax, zmax,\n xmin, ymax, zmin,\n xmin, ymin, zmin,\n xmin, ymin, zmax,\n\n // v7-v4-v3-v2 bottom\n xmin, ymin, zmin,\n xmax, ymin, zmin,\n xmax, ymin, zmax,\n xmin, ymin, zmax,\n\n // v4-v7-v6-v1 back\n xmax, ymin, zmin,\n xmin, ymin, zmin,\n xmin, ymax, zmin,\n xmax, ymax, zmin\n ],\n\n // UV coords\n uv: [\n\n // v0-v1-v2-v3 front\n 1, 0,\n 0, 0,\n 0, 1,\n 1, 1,\n\n // v0-v3-v4-v1 right\n 0, 0,\n 0, 1,\n 1, 1,\n 1, 0,\n\n // v0-v1-v6-v1 top\n 1, 1,\n 1, 0,\n 0, 0,\n 0, 1,\n\n // v1-v6-v7-v2 left\n 1, 0,\n 0, 0,\n 0, 1,\n 1, 1,\n\n // v7-v4-v3-v2 bottom\n 0, 1,\n 1, 1,\n 1, 0,\n 0, 0,\n\n // v4-v7-v6-v1 back\n 0, 1,\n 1, 1,\n 1, 0,\n 0, 0\n ],\n\n // Indices - these organise the\n // positions and uv texture coordinates\n // into geometric primitives in accordance\n // with the \"primitive\" parameter,\n // in this case a set of three indices\n // for each triangle.\n //\n // Note that each triangle is specified\n // in counter-clockwise winding order.\n //\n // You can specify them in clockwise\n // order if you configure the Modes\n // node's frontFace flag as \"cw\", instead of\n // the default \"ccw\".\n indices: [\n 0, 1, 2,\n 0, 2, 3,\n // front\n 4, 5, 6,\n 4, 6, 7,\n // right\n 8, 9, 10,\n 8, 10, 11,\n // top\n 12, 13, 14,\n 12, 14, 15,\n // left\n 16, 17, 18,\n 16, 18, 19,\n // bottom\n 20, 21, 22,\n 20, 22, 23\n ]\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n/**\n * Creates a grid-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a grid-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n\n * ````\n *\n * @function buildGridGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.size=1] Dimension on the X and Z-axis.\n * @param [cfg.divisions=1] Number of divisions on X and Z axis..\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildGridGeometry(cfg = {\n size: 1,\n divisions: 1\n}): GeometryArrays {\n\n let size = cfg.size || 1;\n if (size < 0) {\n console.error(\"negative size not allowed - will invert\");\n size *= -1;\n }\n\n let divisions = cfg.divisions || 1;\n if (divisions < 0) {\n console.error(\"negative divisions not allowed - will invert\");\n divisions *= -1;\n }\n if (divisions < 1) {\n divisions = 1;\n }\n\n size = size || 10;\n divisions = divisions || 10;\n\n const step = size / divisions;\n const halfSize = size / 2;\n\n const positions = [];\n const indices = [];\n let l = 0;\n\n for (let i = 0, j = 0, k = -halfSize; i <= divisions; i++, k += step) {\n\n positions.push(-halfSize);\n positions.push(0);\n positions.push(k);\n\n positions.push(halfSize);\n positions.push(0);\n positions.push(k);\n\n positions.push(k);\n positions.push(0);\n positions.push(-halfSize);\n\n positions.push(k);\n positions.push(0);\n positions.push(halfSize);\n\n indices.push(l++);\n indices.push(l++);\n indices.push(l++);\n indices.push(l++);\n }\n\n return utils.apply(cfg, {\n primitive: \"lines\",\n positions: positions,\n indices: indices\n });\n}\n\n", "import * as utils from \"@xeokit/utils\";\nimport * as constants from \"@xeokit/constants\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n\n\n/**\n * Creates a box-shaped wireframe geometry.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a box-shaped wireframe {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n * TODO\n * ````\n *\n * @function buildBoxLinesGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.xSize=1.0] Half-size on the X-axis.\n * @param [cfg.ySize=1.0] Half-size on the Y-axis.\n * @param [cfg.zSize=1.0] Half-size on the Z-axis.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildBoxLinesGeometry(cfg: {\n center?: (number[] | Float32Array | Float64Array),\n ySize?: number,\n xSize?: number,\n zSize?: number\n} = {\n center: [0, 0, 0],\n xSize: 1,\n ySize: 1,\n zSize: 1\n}): GeometryArrays {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n console.error(\"negative xSize not allowed - will invert\");\n xSize *= -1;\n }\n\n let ySize = cfg.ySize || 1;\n if (ySize < 0) {\n console.error(\"negative ySize not allowed - will invert\");\n ySize *= -1;\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n console.error(\"negative zSize not allowed - will invert\");\n zSize *= -1;\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const xmin = -xSize + centerX;\n const ymin = -ySize + centerY;\n const zmin = -zSize + centerZ;\n const xmax = xSize + centerX;\n const ymax = ySize + centerY;\n const zmax = zSize + centerZ;\n\n return utils.apply(cfg, {\n primitive: constants.LinesPrimitive,\n positions: [\n xmin, ymin, zmin,\n xmin, ymin, zmax,\n xmin, ymax, zmin,\n xmin, ymax, zmax,\n xmax, ymin, zmin,\n xmax, ymin, zmax,\n xmax, ymax, zmin,\n xmax, ymax, zmax\n ],\n indices: [\n 0, 1,\n 1, 3,\n 3, 2,\n 2, 0,\n 4, 5,\n 5, 7,\n 7, 6,\n 6, 4,\n 0, 4,\n 1, 5,\n 2, 6,\n 3, 7\n ]\n });\n}\n\n\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * Creates a cylinder-shaped geometry.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a cylinder-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n *\n * ````\n *\n * @function buildCylinderGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radiusTop=1] Radius of top.\n * @param [cfg.radiusBottom=1] Radius of bottom.\n * @param [cfg.height=1] Height.\n * @param [cfg.radialSegments=60] Number of horizontal segments.\n * @param [cfg.heightSegments=1] Number of vertical segments.\n * @param [cfg.openEnded=false] Whether or not the cylinder has solid caps on the ends.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildCylinderGeometry(cfg: {\n radiusBottom: number;\n center: (number[] | Float32Array | Float64Array);\n radialSegments: number;\n heightSegments: number;\n openEnded: boolean;\n radiusTop: number;\n height: number\n} = {\n radiusTop: 1,\n radiusBottom: 1,\n height: 1,\n radialSegments: 60,\n heightSegments: 1,\n openEnded: false,\n center: [0, 0, 0]\n}): GeometryArrays {\n\n let radiusTop = cfg.radiusTop || 1;\n if (radiusTop < 0) {\n console.error(\"negative radiusTop not allowed - will invert\");\n radiusTop *= -1;\n }\n\n let radiusBottom = cfg.radiusBottom || 1;\n if (radiusBottom < 0) {\n console.error(\"negative radiusBottom not allowed - will invert\");\n radiusBottom *= -1;\n }\n\n let height = cfg.height || 1;\n if (height < 0) {\n console.error(\"negative height not allowed - will invert\");\n height *= -1;\n }\n\n let radialSegments = cfg.radialSegments || 32;\n if (radialSegments < 0) {\n console.error(\"negative radialSegments not allowed - will invert\");\n radialSegments *= -1;\n }\n if (radialSegments < 3) {\n radialSegments = 3;\n }\n\n let heightSegments = cfg.heightSegments || 1;\n if (heightSegments < 0) {\n console.error(\"negative heightSegments not allowed - will invert\");\n heightSegments *= -1;\n }\n if (heightSegments < 1) {\n heightSegments = 1;\n }\n\n const openEnded = cfg.openEnded;\n\n let center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const heightHalf = height / 2;\n const heightLength = height / heightSegments;\n const radialAngle = (2.0 * Math.PI / radialSegments);\n const radialLength = 1.0 / radialSegments;\n //var nextRadius = this._radiusBottom;\n const radiusChange = (radiusTop - radiusBottom) / heightSegments;\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let h;\n let i;\n\n let x;\n let z;\n\n let currentRadius;\n let currentHeight;\n\n let first;\n let second;\n\n let startIndex;\n let tu;\n let tv;\n\n // create vertices\n const normalY = (90.0 - (Math.atan(height / (radiusBottom - radiusTop))) * 180 / Math.PI) / 90.0;\n\n for (h = 0; h <= heightSegments; h++) {\n currentRadius = radiusTop - h * radiusChange;\n currentHeight = heightHalf - h * heightLength;\n\n for (i = 0; i <= radialSegments; i++) {\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n\n normals.push(currentRadius * x);\n normals.push(normalY); //todo\n normals.push(currentRadius * z);\n\n uvs.push((i * radialLength));\n uvs.push(h * 1 / heightSegments);\n\n positions.push((currentRadius * x) + centerX);\n positions.push((currentHeight) + centerY);\n positions.push((currentRadius * z) + centerZ);\n }\n }\n\n // create faces\n for (h = 0; h < heightSegments; h++) {\n for (i = 0; i <= radialSegments; i++) {\n\n first = h * (radialSegments + 1) + i;\n second = first + radialSegments;\n\n indices.push(first);\n indices.push(second);\n indices.push(second + 1);\n\n indices.push(first);\n indices.push(second + 1);\n indices.push(first + 1);\n }\n }\n\n // create top cap\n if (!openEnded && radiusTop > 0) {\n startIndex = (positions.length / 3);\n\n // top center\n normals.push(0.0);\n normals.push(1.0);\n normals.push(0.0);\n\n uvs.push(0.5);\n uvs.push(0.5);\n\n positions.push(0 + centerX);\n positions.push(heightHalf + centerY);\n positions.push(0 + centerZ);\n\n // top triangle fan\n for (i = 0; i <= radialSegments; i++) {\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n tu = (0.5 * Math.sin(i * radialAngle)) + 0.5;\n tv = (0.5 * Math.cos(i * radialAngle)) + 0.5;\n\n normals.push(radiusTop * x);\n normals.push(1.0);\n normals.push(radiusTop * z);\n\n uvs.push(tu);\n uvs.push(tv);\n\n positions.push((radiusTop * x) + centerX);\n positions.push((heightHalf) + centerY);\n positions.push((radiusTop * z) + centerZ);\n }\n\n for (i = 0; i < radialSegments; i++) {\n first = startIndex + 1 + i;\n\n indices.push(first);\n indices.push(first + 1);\n indices.push(startIndex);\n }\n }\n\n // create bottom cap\n if (!openEnded && radiusBottom > 0) {\n\n startIndex = (positions.length / 3);\n\n // top center\n normals.push(0.0);\n normals.push(-1.0);\n normals.push(0.0);\n\n uvs.push(0.5);\n uvs.push(0.5);\n\n positions.push(0 + centerX);\n positions.push(0 - heightHalf + centerY);\n positions.push(0 + centerZ);\n\n // top triangle fan\n for (i = 0; i <= radialSegments; i++) {\n\n x = Math.sin(i * radialAngle);\n z = Math.cos(i * radialAngle);\n\n tu = (0.5 * Math.sin(i * radialAngle)) + 0.5;\n tv = (0.5 * Math.cos(i * radialAngle)) + 0.5;\n\n normals.push(radiusBottom * x);\n normals.push(-1.0);\n normals.push(radiusBottom * z);\n\n uvs.push(tu);\n uvs.push(tv);\n\n positions.push((radiusBottom * x) + centerX);\n positions.push((0 - heightHalf) + centerY);\n positions.push((radiusBottom * z) + centerZ);\n }\n\n for (i = 0; i < radialSegments; i++) {\n first = startIndex + 1 + i;\n indices.push(startIndex);\n indices.push(first + 1);\n indices.push(first);\n }\n }\n\n return utils.apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * Creates a sphere-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * ````javascript\n\n * ````\n *\n * @function buildSphereGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radius=1] Radius.\n * @param [cfg.heightSegments=24] Number of latitudinal bands.\n * @param {Number} [cfg.widthSegments=18] Number of longitudinal bands.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildSphereGeometry(cfg: {\n center: number[];\n heightSegments: number;\n radius: number;\n widthSegments: number\n} = {\n heightSegments: 18,\n widthSegments: 18,\n radius: 1,\n center: [0, 0, 0]\n}) : GeometryArrays {\n\n const centerX = cfg.center ? cfg.center[0] : 0;\n const centerY = cfg.center ? cfg.center[1] : 0;\n const centerZ = cfg.center ? cfg.center[2] : 0;\n\n let radius = cfg.radius || 1;\n if (radius < 0) {\n console.error(\"negative radius not allowed - will invert\");\n radius *= -1;\n }\n\n let heightSegments = cfg.heightSegments || 18;\n if (heightSegments < 0) {\n console.error(\"negative heightSegments not allowed - will invert\");\n heightSegments *= -1;\n }\n heightSegments = Math.floor(heightSegments);\n if (heightSegments < 18) {\n heightSegments = 18;\n }\n\n let widthSegments = cfg.widthSegments || 18;\n if (widthSegments < 0) {\n console.error(\"negative widthSegments not allowed - will invert\");\n widthSegments *= -1;\n }\n widthSegments = Math.floor(widthSegments);\n if (widthSegments < 18) {\n widthSegments = 18;\n }\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let i;\n let j;\n\n let theta;\n let sinTheta;\n let cosTheta;\n\n let phi;\n let sinPhi;\n let cosPhi;\n\n let x;\n let y;\n let z;\n\n let u;\n let v;\n\n let first;\n let second;\n\n for (i = 0; i <= heightSegments; i++) {\n\n theta = i * Math.PI / heightSegments;\n sinTheta = Math.sin(theta);\n cosTheta = Math.cos(theta);\n\n for (j = 0; j <= widthSegments; j++) {\n\n phi = j * 2 * Math.PI / widthSegments;\n sinPhi = Math.sin(phi);\n cosPhi = Math.cos(phi);\n\n x = cosPhi * sinTheta;\n y = cosTheta;\n z = sinPhi * sinTheta;\n u = 1.0 - j / widthSegments;\n v = i / heightSegments;\n\n normals.push(x);\n normals.push(y);\n normals.push(z);\n\n uvs.push(u);\n uvs.push(v);\n\n positions.push(centerX + radius * x);\n positions.push(centerY + radius * y);\n positions.push(centerZ + radius * z);\n }\n }\n\n for (i = 0; i < heightSegments; i++) {\n for (j = 0; j < widthSegments; j++) {\n\n first = (i * (widthSegments + 1)) + j;\n second = first + widthSegments + 1;\n\n indices.push(first + 1);\n indices.push(second + 1);\n indices.push(second);\n indices.push(first + 1);\n indices.push(second);\n indices.push(first);\n }\n }\n\n return utils.apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "import type {GeometryArrays} from \"./GeometryArrays\";\nimport {apply} from \"@xeokit/utils\";\nimport {normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\n\n\n/**\n * Creates a torus-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * ````javascript\n\n * ````\n *\n * @function buildTorusGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.radius=1] The overall radius.\n * @param [cfg.tube=0.3] The tube radius.\n * @param [cfg.radialSegments=32] The number of radial segments.\n * @param [cfg.tubeSegments=24] The number of tubular segments.\n * @param [cfg.arc=Math.PI*0.5] The length of the arc in radians, where Math.PI*2 is a closed torus.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildTorusGeometry(cfg: {\n tube?: number;\n arc?: number;\n center?: number[];\n radialSegments?: number;\n radius?: number;\n tubeSegments?: number\n} = {\n radius: 0,\n tube: 0,\n radialSegments: 0,\n tubeSegments: 0,\n arc: 0,\n center: [0, 0, 0]\n}): GeometryArrays {\n\n let radius = cfg.radius || 1;\n if (radius < 0) {\n console.error(\"negative radius not allowed - will invert\");\n radius *= -1;\n }\n radius *= 0.5;\n\n let tube = cfg.tube || 0.3;\n if (tube < 0) {\n console.error(\"negative tube not allowed - will invert\");\n tube *= -1;\n }\n\n let radialSegments = cfg.radialSegments || 32;\n if (radialSegments < 0) {\n console.error(\"negative radialSegments not allowed - will invert\");\n radialSegments *= -1;\n }\n if (radialSegments < 4) {\n radialSegments = 4;\n }\n\n let tubeSegments = cfg.tubeSegments || 24;\n if (tubeSegments < 0) {\n console.error(\"negative tubeSegments not allowed - will invert\");\n tubeSegments *= -1;\n }\n if (tubeSegments < 4) {\n tubeSegments = 4;\n }\n\n let arc = cfg.arc || Math.PI * 2;\n if (arc < 0) {\n console.warn(\"negative arc not allowed - will invert\");\n arc *= -1;\n }\n if (arc > 360) {\n arc = 360;\n }\n\n const center = cfg.center;\n let centerX = center ? center[0] : 0;\n let centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const positions = [];\n const normals = [];\n const uvs = [];\n const indices = [];\n\n let u;\n let v;\n let x;\n let y;\n let z;\n let vec;\n\n let i;\n let j;\n\n for (j = 0; j <= tubeSegments; j++) {\n for (i = 0; i <= radialSegments; i++) {\n\n u = i / radialSegments * arc;\n v = 0.785398 + (j / tubeSegments * Math.PI * 2);\n\n centerX = radius * Math.cos(u);\n centerY = radius * Math.sin(u);\n\n x = (radius + tube * Math.cos(v)) * Math.cos(u);\n y = (radius + tube * Math.cos(v)) * Math.sin(u);\n z = tube * Math.sin(v);\n\n positions.push(x + centerX);\n positions.push(y + centerY);\n positions.push(z + centerZ);\n\n uvs.push(1 - (i / radialSegments));\n uvs.push((j / tubeSegments));\n\n vec = normalizeVec3(subVec3([x, y, z], [centerX, centerY, centerZ], []), []);\n\n normals.push(vec[0]);\n normals.push(vec[1]);\n normals.push(vec[2]);\n }\n }\n\n let a;\n let b;\n let c;\n let d;\n\n for (j = 1; j <= tubeSegments; j++) {\n for (i = 1; i <= radialSegments; i++) {\n\n a = (radialSegments + 1) * j + i - 1;\n b = (radialSegments + 1) * (j - 1) + i - 1;\n c = (radialSegments + 1) * (j - 1) + i;\n d = (radialSegments + 1) * j + i;\n\n indices.push(a);\n indices.push(b);\n indices.push(c);\n\n indices.push(c);\n indices.push(d);\n indices.push(a);\n }\n }\n\n return apply(cfg, {\n primitive: TrianglesPrimitive,\n positions: positions,\n // normals: normals,\n // uv: uvs,\n indices: indices\n });\n}\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\nimport {LinesPrimitive} from \"@xeokit/constants\";\n\n\nconst letters = {\n // @ts-ignore\n ' ': {width: 16, points: []},\n '!': {\n width: 10, points: [\n [5, 21],\n [5, 7],\n [-1, -1],\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n '\"': {\n width: 16, points: [\n [4, 21],\n [4, 14],\n [-1, -1],\n [12, 21],\n [12, 14]\n ]\n },\n '#': {\n width: 21, points: [\n [11, 25],\n [4, -7],\n [-1, -1],\n [17, 25],\n [10, -7],\n [-1, -1],\n [4, 12],\n [18, 12],\n [-1, -1],\n [3, 6],\n [17, 6]\n ]\n },\n '$': {\n width: 20, points: [\n [8, 25],\n [8, -4],\n [-1, -1],\n [12, 25],\n [12, -4],\n [-1, -1],\n [17, 18],\n [15, 20],\n [12, 21],\n [8, 21],\n [5, 20],\n [3, 18],\n [3, 16],\n [4, 14],\n [5, 13],\n [7, 12],\n [13, 10],\n [15, 9],\n [16, 8],\n [17, 6],\n [17, 3],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [3, 3]\n ]\n },\n '%': {\n width: 24, points: [\n [21, 21],\n [3, 0],\n [-1, -1],\n [8, 21],\n [10, 19],\n [10, 17],\n [9, 15],\n [7, 14],\n [5, 14],\n [3, 16],\n [3, 18],\n [4, 20],\n [6, 21],\n [8, 21],\n [10, 20],\n [13, 19],\n [16, 19],\n [19, 20],\n [21, 21],\n [-1, -1],\n [17, 7],\n [15, 6],\n [14, 4],\n [14, 2],\n [16, 0],\n [18, 0],\n [20, 1],\n [21, 3],\n [21, 5],\n [19, 7],\n [17, 7]\n ]\n },\n '&': {\n width: 26, points: [\n [23, 12],\n [23, 13],\n [22, 14],\n [21, 14],\n [20, 13],\n [19, 11],\n [17, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [7, 0],\n [5, 1],\n [4, 2],\n [3, 4],\n [3, 6],\n [4, 8],\n [5, 9],\n [12, 13],\n [13, 14],\n [14, 16],\n [14, 18],\n [13, 20],\n [11, 21],\n [9, 20],\n [8, 18],\n [8, 16],\n [9, 13],\n [11, 10],\n [16, 3],\n [18, 1],\n [20, 0],\n [22, 0],\n [23, 1],\n [23, 2]\n ]\n },\n '\\'': {\n width: 10, points: [\n [5, 19],\n [4, 20],\n [5, 21],\n [6, 20],\n [6, 18],\n [5, 16],\n [4, 15]\n ]\n },\n '(': {\n width: 14, points: [\n [11, 25],\n [9, 23],\n [7, 20],\n [5, 16],\n [4, 11],\n [4, 7],\n [5, 2],\n [7, -2],\n [9, -5],\n [11, -7]\n ]\n },\n ')': {\n width: 14, points: [\n [3, 25],\n [5, 23],\n [7, 20],\n [9, 16],\n [10, 11],\n [10, 7],\n [9, 2],\n [7, -2],\n [5, -5],\n [3, -7]\n ]\n },\n '*': {\n width: 16, points: [\n [8, 21],\n [8, 9],\n [-1, -1],\n [3, 18],\n [13, 12],\n [-1, -1],\n [13, 18],\n [3, 12]\n ]\n },\n '+': {\n width: 26, points: [\n [13, 18],\n [13, 0],\n [-1, -1],\n [4, 9],\n [22, 9]\n ]\n },\n ',': {\n width: 10, points: [\n [6, 1],\n [5, 0],\n [4, 1],\n [5, 2],\n [6, 1],\n [6, -1],\n [5, -3],\n [4, -4]\n ]\n },\n '-': {\n width: 26, points: [\n [4, 9],\n [22, 9]\n ]\n },\n '.': {\n width: 10, points: [\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n '/': {\n width: 22, points: [\n [20, 25],\n [2, -7]\n ]\n },\n '0': {\n width: 20, points: [\n [9, 21],\n [6, 20],\n [4, 17],\n [3, 12],\n [3, 9],\n [4, 4],\n [6, 1],\n [9, 0],\n [11, 0],\n [14, 1],\n [16, 4],\n [17, 9],\n [17, 12],\n [16, 17],\n [14, 20],\n [11, 21],\n [9, 21]\n ]\n },\n '1': {\n width: 20, points: [\n [6, 17],\n [8, 18],\n [11, 21],\n [11, 0]\n ]\n },\n '2': {\n width: 20, points: [\n [4, 16],\n [4, 17],\n [5, 19],\n [6, 20],\n [8, 21],\n [12, 21],\n [14, 20],\n [15, 19],\n [16, 17],\n [16, 15],\n [15, 13],\n [13, 10],\n [3, 0],\n [17, 0]\n ]\n },\n '3': {\n width: 20, points: [\n [5, 21],\n [16, 21],\n [10, 13],\n [13, 13],\n [15, 12],\n [16, 11],\n [17, 8],\n [17, 6],\n [16, 3],\n [14, 1],\n [11, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4]\n ]\n },\n '4': {\n width: 20, points: [\n [13, 21],\n [3, 7],\n [18, 7],\n [-1, -1],\n [13, 21],\n [13, 0]\n ]\n },\n '5': {\n width: 20, points: [\n [15, 21],\n [5, 21],\n [4, 12],\n [5, 13],\n [8, 14],\n [11, 14],\n [14, 13],\n [16, 11],\n [17, 8],\n [17, 6],\n [16, 3],\n [14, 1],\n [11, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4]\n ]\n },\n '6': {\n width: 20, points: [\n [16, 18],\n [15, 20],\n [12, 21],\n [10, 21],\n [7, 20],\n [5, 17],\n [4, 12],\n [4, 7],\n [5, 3],\n [7, 1],\n [10, 0],\n [11, 0],\n [14, 1],\n [16, 3],\n [17, 6],\n [17, 7],\n [16, 10],\n [14, 12],\n [11, 13],\n [10, 13],\n [7, 12],\n [5, 10],\n [4, 7]\n ]\n },\n '7': {\n width: 20, points: [\n [17, 21],\n [7, 0],\n [-1, -1],\n [3, 21],\n [17, 21]\n ]\n },\n '8': {\n width: 20, points: [\n [8, 21],\n [5, 20],\n [4, 18],\n [4, 16],\n [5, 14],\n [7, 13],\n [11, 12],\n [14, 11],\n [16, 9],\n [17, 7],\n [17, 4],\n [16, 2],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [4, 2],\n [3, 4],\n [3, 7],\n [4, 9],\n [6, 11],\n [9, 12],\n [13, 13],\n [15, 14],\n [16, 16],\n [16, 18],\n [15, 20],\n [12, 21],\n [8, 21]\n ]\n },\n '9': {\n width: 20, points: [\n [16, 14],\n [15, 11],\n [13, 9],\n [10, 8],\n [9, 8],\n [6, 9],\n [4, 11],\n [3, 14],\n [3, 15],\n [4, 18],\n [6, 20],\n [9, 21],\n [10, 21],\n [13, 20],\n [15, 18],\n [16, 14],\n [16, 9],\n [15, 4],\n [13, 1],\n [10, 0],\n [8, 0],\n [5, 1],\n [4, 3]\n ]\n },\n ':': {\n width: 10, points: [\n [5, 14],\n [4, 13],\n [5, 12],\n [6, 13],\n [5, 14],\n [-1, -1],\n [5, 2],\n [4, 1],\n [5, 0],\n [6, 1],\n [5, 2]\n ]\n },\n ';': {\n width: 10, points: [\n [5, 14],\n [4, 13],\n [5, 12],\n [6, 13],\n [5, 14],\n [-1, -1],\n [6, 1],\n [5, 0],\n [4, 1],\n [5, 2],\n [6, 1],\n [6, -1],\n [5, -3],\n [4, -4]\n ]\n },\n '<': {\n width: 24, points: [\n [20, 18],\n [4, 9],\n [20, 0]\n ]\n },\n '=': {\n width: 26, points: [\n [4, 12],\n [22, 12],\n [-1, -1],\n [4, 6],\n [22, 6]\n ]\n },\n '>': {\n width: 24, points: [\n [4, 18],\n [20, 9],\n [4, 0]\n ]\n },\n '?': {\n width: 18, points: [\n [3, 16],\n [3, 17],\n [4, 19],\n [5, 20],\n [7, 21],\n [11, 21],\n [13, 20],\n [14, 19],\n [15, 17],\n [15, 15],\n [14, 13],\n [13, 12],\n [9, 10],\n [9, 7],\n [-1, -1],\n [9, 2],\n [8, 1],\n [9, 0],\n [10, 1],\n [9, 2]\n ]\n },\n '@': {\n width: 27, points: [\n [18, 13],\n [17, 15],\n [15, 16],\n [12, 16],\n [10, 15],\n [9, 14],\n [8, 11],\n [8, 8],\n [9, 6],\n [11, 5],\n [14, 5],\n [16, 6],\n [17, 8],\n [-1, -1],\n [12, 16],\n [10, 14],\n [9, 11],\n [9, 8],\n [10, 6],\n [11, 5],\n [-1, -1],\n [18, 16],\n [17, 8],\n [17, 6],\n [19, 5],\n [21, 5],\n [23, 7],\n [24, 10],\n [24, 12],\n [23, 15],\n [22, 17],\n [20, 19],\n [18, 20],\n [15, 21],\n [12, 21],\n [9, 20],\n [7, 19],\n [5, 17],\n [4, 15],\n [3, 12],\n [3, 9],\n [4, 6],\n [5, 4],\n [7, 2],\n [9, 1],\n [12, 0],\n [15, 0],\n [18, 1],\n [20, 2],\n [21, 3],\n [-1, -1],\n [19, 16],\n [18, 8],\n [18, 6],\n [19, 5]\n ]\n },\n 'A': {\n width: 18, points: [\n [9, 21],\n [1, 0],\n [-1, -1],\n [9, 21],\n [17, 0],\n [-1, -1],\n [4, 7],\n [14, 7]\n ]\n },\n 'B': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 15],\n [17, 13],\n [16, 12],\n [13, 11],\n [-1, -1],\n [4, 11],\n [13, 11],\n [16, 10],\n [17, 9],\n [18, 7],\n [18, 4],\n [17, 2],\n [16, 1],\n [13, 0],\n [4, 0]\n ]\n },\n 'C': {\n width: 21, points: [\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5]\n ]\n },\n 'D': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [11, 21],\n [14, 20],\n [16, 18],\n [17, 16],\n [18, 13],\n [18, 8],\n [17, 5],\n [16, 3],\n [14, 1],\n [11, 0],\n [4, 0]\n ]\n },\n 'E': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [17, 21],\n [-1, -1],\n [4, 11],\n [12, 11],\n [-1, -1],\n [4, 0],\n [17, 0]\n ]\n },\n 'F': {\n width: 18, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [17, 21],\n [-1, -1],\n [4, 11],\n [12, 11]\n ]\n },\n 'G': {\n width: 21, points: [\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [18, 8],\n [-1, -1],\n [13, 8],\n [18, 8]\n ]\n },\n 'H': {\n width: 22, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [18, 21],\n [18, 0],\n [-1, -1],\n [4, 11],\n [18, 11]\n ]\n },\n 'I': {\n width: 8, points: [\n [4, 21],\n [4, 0]\n ]\n },\n 'J': {\n width: 16, points: [\n [12, 21],\n [12, 5],\n [11, 2],\n [10, 1],\n [8, 0],\n [6, 0],\n [4, 1],\n [3, 2],\n [2, 5],\n [2, 7]\n ]\n },\n 'K': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [18, 21],\n [4, 7],\n [-1, -1],\n [9, 12],\n [18, 0]\n ]\n },\n 'L': {\n width: 17, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 0],\n [16, 0]\n ]\n },\n 'M': {\n width: 24, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [12, 0],\n [-1, -1],\n [20, 21],\n [12, 0],\n [-1, -1],\n [20, 21],\n [20, 0]\n ]\n },\n 'N': {\n width: 22, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [18, 0],\n [-1, -1],\n [18, 21],\n [18, 0]\n ]\n },\n 'O': {\n width: 22, points: [\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [19, 8],\n [19, 13],\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21]\n ]\n },\n 'P': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 14],\n [17, 12],\n [16, 11],\n [13, 10],\n [4, 10]\n ]\n },\n 'Q': {\n width: 22, points: [\n [9, 21],\n [7, 20],\n [5, 18],\n [4, 16],\n [3, 13],\n [3, 8],\n [4, 5],\n [5, 3],\n [7, 1],\n [9, 0],\n [13, 0],\n [15, 1],\n [17, 3],\n [18, 5],\n [19, 8],\n [19, 13],\n [18, 16],\n [17, 18],\n [15, 20],\n [13, 21],\n [9, 21],\n [-1, -1],\n [12, 4],\n [18, -2]\n ]\n },\n 'R': {\n width: 21, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 21],\n [13, 21],\n [16, 20],\n [17, 19],\n [18, 17],\n [18, 15],\n [17, 13],\n [16, 12],\n [13, 11],\n [4, 11],\n [-1, -1],\n [11, 11],\n [18, 0]\n ]\n },\n 'S': {\n width: 20, points: [\n [17, 18],\n [15, 20],\n [12, 21],\n [8, 21],\n [5, 20],\n [3, 18],\n [3, 16],\n [4, 14],\n [5, 13],\n [7, 12],\n [13, 10],\n [15, 9],\n [16, 8],\n [17, 6],\n [17, 3],\n [15, 1],\n [12, 0],\n [8, 0],\n [5, 1],\n [3, 3]\n ]\n },\n 'T': {\n width: 16, points: [\n [8, 21],\n [8, 0],\n [-1, -1],\n [1, 21],\n [15, 21]\n ]\n },\n 'U': {\n width: 22, points: [\n [4, 21],\n [4, 6],\n [5, 3],\n [7, 1],\n [10, 0],\n [12, 0],\n [15, 1],\n [17, 3],\n [18, 6],\n [18, 21]\n ]\n },\n 'V': {\n width: 18, points: [\n [1, 21],\n [9, 0],\n [-1, -1],\n [17, 21],\n [9, 0]\n ]\n },\n 'W': {\n width: 24, points: [\n [2, 21],\n [7, 0],\n [-1, -1],\n [12, 21],\n [7, 0],\n [-1, -1],\n [12, 21],\n [17, 0],\n [-1, -1],\n [22, 21],\n [17, 0]\n ]\n },\n 'X': {\n width: 20, points: [\n [3, 21],\n [17, 0],\n [-1, -1],\n [17, 21],\n [3, 0]\n ]\n },\n 'Y': {\n width: 18, points: [\n [1, 21],\n [9, 11],\n [9, 0],\n [-1, -1],\n [17, 21],\n [9, 11]\n ]\n },\n 'Z': {\n width: 20, points: [\n [17, 21],\n [3, 0],\n [-1, -1],\n [3, 21],\n [17, 21],\n [-1, -1],\n [3, 0],\n [17, 0]\n ]\n },\n '[': {\n width: 14, points: [\n [4, 25],\n [4, -7],\n [-1, -1],\n [5, 25],\n [5, -7],\n [-1, -1],\n [4, 25],\n [11, 25],\n [-1, -1],\n [4, -7],\n [11, -7]\n ]\n },\n '\\\\': {\n width: 14, points: [\n [0, 21],\n [14, -3]\n ]\n },\n ']': {\n width: 14, points: [\n [9, 25],\n [9, -7],\n [-1, -1],\n [10, 25],\n [10, -7],\n [-1, -1],\n [3, 25],\n [10, 25],\n [-1, -1],\n [3, -7],\n [10, -7]\n ]\n },\n '^': {\n width: 16, points: [\n [6, 15],\n [8, 18],\n [10, 15],\n [-1, -1],\n [3, 12],\n [8, 17],\n [13, 12],\n [-1, -1],\n [8, 17],\n [8, 0]\n ]\n },\n '_': {\n width: 16, points: [\n [0, -2],\n [16, -2]\n ]\n },\n '`': {\n width: 10, points: [\n [6, 21],\n [5, 20],\n [4, 18],\n [4, 16],\n [5, 15],\n [6, 16],\n [5, 17]\n ]\n },\n 'a': {\n width: 19, points: [\n [15, 14],\n [15, 0],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'b': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 11],\n [6, 13],\n [8, 14],\n [11, 14],\n [13, 13],\n [15, 11],\n [16, 8],\n [16, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [8, 0],\n [6, 1],\n [4, 3]\n ]\n },\n 'c': {\n width: 18, points: [\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'd': {\n width: 19, points: [\n [15, 21],\n [15, 0],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'e': {\n width: 18, points: [\n [3, 8],\n [15, 8],\n [15, 10],\n [14, 12],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'f': {\n width: 12, points: [\n [10, 21],\n [8, 21],\n [6, 20],\n [5, 17],\n [5, 0],\n [-1, -1],\n [2, 14],\n [9, 14]\n ]\n },\n 'g': {\n width: 19, points: [\n [15, 14],\n [15, -2],\n [14, -5],\n [13, -6],\n [11, -7],\n [8, -7],\n [6, -6],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'h': {\n width: 19, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0]\n ]\n },\n 'i': {\n width: 8, points: [\n [3, 21],\n [4, 20],\n [5, 21],\n [4, 22],\n [3, 21],\n [-1, -1],\n [4, 14],\n [4, 0]\n ]\n },\n 'j': {\n width: 10, points: [\n [5, 21],\n [6, 20],\n [7, 21],\n [6, 22],\n [5, 21],\n [-1, -1],\n [6, 14],\n [6, -3],\n [5, -6],\n [3, -7],\n [1, -7]\n ]\n },\n 'k': {\n width: 17, points: [\n [4, 21],\n [4, 0],\n [-1, -1],\n [14, 14],\n [4, 4],\n [-1, -1],\n [8, 8],\n [15, 0]\n ]\n },\n 'l': {\n width: 8, points: [\n [4, 21],\n [4, 0]\n ]\n },\n 'm': {\n width: 30, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0],\n [-1, -1],\n [15, 10],\n [18, 13],\n [20, 14],\n [23, 14],\n [25, 13],\n [26, 10],\n [26, 0]\n ]\n },\n 'n': {\n width: 19, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 10],\n [7, 13],\n [9, 14],\n [12, 14],\n [14, 13],\n [15, 10],\n [15, 0]\n ]\n },\n 'o': {\n width: 19, points: [\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3],\n [16, 6],\n [16, 8],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14]\n ]\n },\n 'p': {\n width: 19, points: [\n [4, 14],\n [4, -7],\n [-1, -1],\n [4, 11],\n [6, 13],\n [8, 14],\n [11, 14],\n [13, 13],\n [15, 11],\n [16, 8],\n [16, 6],\n [15, 3],\n [13, 1],\n [11, 0],\n [8, 0],\n [6, 1],\n [4, 3]\n ]\n },\n 'q': {\n width: 19, points: [\n [15, 14],\n [15, -7],\n [-1, -1],\n [15, 11],\n [13, 13],\n [11, 14],\n [8, 14],\n [6, 13],\n [4, 11],\n [3, 8],\n [3, 6],\n [4, 3],\n [6, 1],\n [8, 0],\n [11, 0],\n [13, 1],\n [15, 3]\n ]\n },\n 'r': {\n width: 13, points: [\n [4, 14],\n [4, 0],\n [-1, -1],\n [4, 8],\n [5, 11],\n [7, 13],\n [9, 14],\n [12, 14]\n ]\n },\n 's': {\n width: 17, points: [\n [14, 11],\n [13, 13],\n [10, 14],\n [7, 14],\n [4, 13],\n [3, 11],\n [4, 9],\n [6, 8],\n [11, 7],\n [13, 6],\n [14, 4],\n [14, 3],\n [13, 1],\n [10, 0],\n [7, 0],\n [4, 1],\n [3, 3]\n ]\n },\n 't': {\n width: 12, points: [\n [5, 21],\n [5, 4],\n [6, 1],\n [8, 0],\n [10, 0],\n [-1, -1],\n [2, 14],\n [9, 14]\n ]\n },\n 'u': {\n width: 19, points: [\n [4, 14],\n [4, 4],\n [5, 1],\n [7, 0],\n [10, 0],\n [12, 1],\n [15, 4],\n [-1, -1],\n [15, 14],\n [15, 0]\n ]\n },\n 'v': {\n width: 16, points: [\n [2, 14],\n [8, 0],\n [-1, -1],\n [14, 14],\n [8, 0]\n ]\n },\n 'w': {\n width: 22, points: [\n [3, 14],\n [7, 0],\n [-1, -1],\n [11, 14],\n [7, 0],\n [-1, -1],\n [11, 14],\n [15, 0],\n [-1, -1],\n [19, 14],\n [15, 0]\n ]\n },\n 'x': {\n width: 17, points: [\n [3, 14],\n [14, 0],\n [-1, -1],\n [14, 14],\n [3, 0]\n ]\n },\n 'y': {\n width: 16, points: [\n [2, 14],\n [8, 0],\n [-1, -1],\n [14, 14],\n [8, 0],\n [6, -4],\n [4, -6],\n [2, -7],\n [1, -7]\n ]\n },\n 'z': {\n width: 17, points: [\n [14, 14],\n [3, 0],\n [-1, -1],\n [3, 14],\n [14, 14],\n [-1, -1],\n [3, 0],\n [14, 0]\n ]\n },\n '{': {\n width: 14, points: [\n [9, 25],\n [7, 24],\n [6, 23],\n [5, 21],\n [5, 19],\n [6, 17],\n [7, 16],\n [8, 14],\n [8, 12],\n [6, 10],\n [-1, -1],\n [7, 24],\n [6, 22],\n [6, 20],\n [7, 18],\n [8, 17],\n [9, 15],\n [9, 13],\n [8, 11],\n [4, 9],\n [8, 7],\n [9, 5],\n [9, 3],\n [8, 1],\n [7, 0],\n [6, -2],\n [6, -4],\n [7, -6],\n [-1, -1],\n [6, 8],\n [8, 6],\n [8, 4],\n [7, 2],\n [6, 1],\n [5, -1],\n [5, -3],\n [6, -5],\n [7, -6],\n [9, -7]\n ]\n },\n '|': {\n width: 8, points: [\n [4, 25],\n [4, -7]\n ]\n },\n '}': {\n width: 14, points: [\n [5, 25],\n [7, 24],\n [8, 23],\n [9, 21],\n [9, 19],\n [8, 17],\n [7, 16],\n [6, 14],\n [6, 12],\n [8, 10],\n [-1, -1],\n [7, 24],\n [8, 22],\n [8, 20],\n [7, 18],\n [6, 17],\n [5, 15],\n [5, 13],\n [6, 11],\n [10, 9],\n [6, 7],\n [5, 5],\n [5, 3],\n [6, 1],\n [7, 0],\n [8, -2],\n [8, -4],\n [7, -6],\n [-1, -1],\n [8, 8],\n [6, 6],\n [6, 4],\n [7, 2],\n [8, 1],\n [9, -1],\n [9, -3],\n [8, -5],\n [7, -6],\n [5, -7]\n ]\n },\n '~': {\n width: 24, points: [\n [3, 6],\n [3, 8],\n [4, 11],\n [6, 12],\n [8, 12],\n [10, 11],\n [14, 8],\n [16, 7],\n [18, 7],\n [20, 8],\n [21, 10],\n [-1, -1],\n [3, 8],\n [4, 10],\n [6, 11],\n [8, 11],\n [10, 10],\n [14, 7],\n [16, 6],\n [18, 6],\n [20, 7],\n [21, 10],\n [21, 12]\n ]\n }\n};\n\n/**\n * Creates wireframe vector text {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n\n * ````javascript\n *\n * ````\n *\n * @function buildVectorTextGeometry\n * @param cfg Configs\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.origin] 3D point indicating the top left corner.\n * @param [cfg.size=1] Size of each character.\n * @param [cfg.text=\"\"] The text.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildVectorTextGeometry(cfg: {\n size: number;\n origin: number[];\n text: string\n} = {\n origin: [0, 0, 0],\n size: 1,\n text: \"\"\n}): GeometryArrays {\n\n var origin = cfg.origin || [0, 0, 0];\n var xOrigin = origin[0];\n var yOrigin = origin[1];\n var zOrigin = origin[2];\n var size = cfg.size || 1;\n\n var positions = [];\n var indices = [];\n var text = cfg.text;\n if (utils.isNumeric(text)) {\n text = \"\" + text;\n }\n var lines = (text || \"\").split(\"\\n\");\n var countVerts = 0;\n var y = 0;\n var x;\n var str;\n var len;\n var c;\n var mag = 1.0 / 25.0;\n var penUp;\n var p1;\n var p2;\n var needLine;\n var pointsLen;\n var a;\n\n for (var iLine = 0; iLine < lines.length; iLine++) {\n\n x = 0;\n str = lines[iLine];\n len = str.length;\n\n for (var i = 0; i < len; i++) {\n\n // @ts-ignore\n c = letters[str.charAt(i)];\n\n if (c === '\\n') {\n //alert(\"newline\");\n }\n\n if (!c) {\n continue;\n }\n\n penUp = 1;\n p1 = -1;\n p2 = -1;\n needLine = false;\n\n pointsLen = c.points.length;\n\n for (var j = 0; j < pointsLen; j++) {\n a = c.points[j];\n\n if (a[0] === -1 && a[1] === -1) {\n penUp = 1;\n needLine = false;\n continue;\n }\n\n positions.push((x + (a[0] * size) * mag) + xOrigin);\n positions.push((y + (a[1] * size) * mag) + yOrigin);\n positions.push(0 + zOrigin);\n\n if (p1 === -1) {\n p1 = countVerts;\n } else if (p2 === -1) {\n p2 = countVerts;\n } else {\n p1 = p2;\n p2 = countVerts;\n }\n countVerts++;\n\n if (penUp) {\n penUp = false;\n\n } else {\n indices.push(p1);\n indices.push(p2);\n }\n\n needLine = true;\n }\n x += c.width * mag * size;\n\n }\n y -= 35 * mag * size;\n }\n\n return utils.apply(cfg, {\n primitive: LinesPrimitive,\n positions: positions,\n indices: indices\n });\n}\n\n\n", "import * as utils from \"@xeokit/utils\";\nimport type {GeometryArrays} from \"./GeometryArrays\";\n\n/**\n * Creates a plane-shaped {@link @xeokit/scene!SceneGeometry}.\n *\n * ## Usage\n *\n * Creating a {@link @xeokit/scene!SceneMesh} with a plane-shaped {@link @xeokit/scene!SceneGeometry}:\n *\n * ````javascript\n* TODO\n * ````\n *\n * @function buildPlaneGeometry\n * @param cfg Configs\n * @param [cfg.center] 3D point indicating the center position.\n * @param [cfg.id] Optional ID for the {@link @xeokit/scene!SceneGeometry}, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.xSize=1] Dimension on the X-axis.\n * @param [cfg.zSize=1] Dimension on the Z-axis.\n * @param [cfg.xSegments=1] Number of segments on the X-axis.\n * @param [cfg.zSegments=1] Number of segments on the Z-axis.\n * @returns {Object} Configuration for a {@link @xeokit/scene!SceneGeometry} subtype.\n */\nexport function buildPlaneGeometry(cfg = {\n xSize: 0,\n zSize: 0,\n xSegments: 1,\n center: [0, 0, 0]\n\n}): GeometryArrays {\n\n let xSize = cfg.xSize || 1;\n if (xSize < 0) {\n console.error(\"negative xSize not allowed - will invert\");\n xSize *= -1;\n }\n\n let zSize = cfg.zSize || 1;\n if (zSize < 0) {\n console.error(\"negative zSize not allowed - will invert\");\n zSize *= -1;\n }\n\n let xSegments = cfg.xSegments || 1;\n if (xSegments < 0) {\n console.error(\"negative xSegments not allowed - will invert\");\n xSegments *= -1;\n }\n if (xSegments < 1) {\n xSegments = 1;\n }\n\n let zSegments = cfg.xSegments || 1;\n if (zSegments < 0) {\n console.error(\"negative zSegments not allowed - will invert\");\n zSegments *= -1;\n }\n if (zSegments < 1) {\n zSegments = 1;\n }\n\n const center = cfg.center;\n const centerX = center ? center[0] : 0;\n const centerY = center ? center[1] : 0;\n const centerZ = center ? center[2] : 0;\n\n const halfWidth = xSize / 2;\n const halfHeight = zSize / 2;\n\n const planeX = Math.floor(xSegments) || 1;\n const planeZ = Math.floor(zSegments) || 1;\n\n const planeX1 = planeX + 1;\n const planeZ1 = planeZ + 1;\n\n const segmentWidth = xSize / planeX;\n const segmentHeight = zSize / planeZ;\n\n const positions = new Float32Array(planeX1 * planeZ1 * 3);\n const normals = new Float32Array(planeX1 * planeZ1 * 3);\n const uvs = new Float32Array(planeX1 * planeZ1 * 2);\n\n let offset = 0;\n let offset2 = 0;\n\n let iz;\n let ix;\n let x;\n let a;\n let b;\n let c;\n let d;\n\n for (iz = 0; iz < planeZ1; iz++) {\n\n const z = iz * segmentHeight - halfHeight;\n\n for (ix = 0; ix < planeX1; ix++) {\n\n x = ix * segmentWidth - halfWidth;\n\n positions[offset] = x + centerX;\n positions[offset + 1] = centerY;\n positions[offset + 2] = -z + centerZ;\n\n normals[offset + 2] = -1;\n\n uvs[offset2] = (ix) / planeX;\n uvs[offset2 + 1] = ((planeZ - iz) / planeZ);\n\n offset += 3;\n offset2 += 2;\n }\n }\n\n offset = 0;\n\n const indices = new ((positions.length / 3) > 65535 ? Uint32Array : Uint16Array)(planeX * planeZ * 6);\n\n for (iz = 0; iz < planeZ; iz++) {\n\n for (ix = 0; ix < planeX; ix++) {\n\n a = ix + planeX1 * iz;\n b = ix + planeX1 * (iz + 1);\n c = (ix + 1) + planeX1 * (iz + 1);\n d = (ix + 1) + planeX1 * iz;\n\n indices[offset] = d;\n indices[offset + 1] = b;\n indices[offset + 2] = a;\n\n indices[offset + 3] = d;\n indices[offset + 4] = c;\n indices[offset + 5] = b;\n\n offset += 6;\n }\n }\n\n return utils.apply(cfg, {\n positions: positions,\n normals: normals,\n uv: uvs,\n indices: indices\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Flocale.svg)](https://badge.fury.io/js/%40xeokit%2Flocale)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/locale/badge)](https://www.jsdelivr.com/package/npm/@xeokit/locale)\n * \n * \n *\n * # xeokit Localization Service\n *\n * ---\n *\n * ### Repository of locale-specific translations for words and phrases\n *\n * ---\n *\n * A container of string translations (\"messages\") for various locales.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/locale\n * ````\n * ## Usage\n *\n * In the example below, we'll create a {@link @xeokit/locale!LocaleService | LocaleService} instance, configured with some English, M\u0101ori and French\n * translations for a NavCube widget.\n *\n * Our LocaleServe will provide translations for the following terms:\n *\n * * \"NavCube.front\"\n * * \"NavCube.back\"\n * * \"NavCube.top\"\n * * \"NavCube.bottom\"\n * * \"NavCube.left\"\n * * \"NavCube.right\"\n *\n * These terms are effectively paths that map to translations for the currently active locale.\n *\n * For example, if the {@link @xeokit/locale!LocaleService | LocaleService}'s locale is set to \"fr\", then the path \"NavCube.back\" will drill down\n * into ````messages->fr->NavCube->front```` and fetch \"Arri\u00E8re\".\n *\n * ````javascript\n * import {LocaleService} from \"@xeokit/locale\";\n *\n * const localeService= new LocaleService({\n * messages: {\n * \"en\": { // English\n * \"NavCube\": {\n * \"front\": \"Front\",\n * \"back\": \"Back\",\n * \"top\": \"Top\",\n * \"bottom\": \"Bottom\",\n * \"left\": \"Left\",\n * \"right\": \"Right\"\n * }\n * },\n * \"mi\": { // M\u0101ori\n * \"NavCube\": {\n * \"front\": \"Mua\",\n * \"back\": \"Tuar\u0101\",\n * \"top\": \"Runga\",\n * \"bottom\": \"Raro\",\n * \"left\": \"Mau\u012B\",\n * \"right\": \"Tika\"\n * }\n * },\n * \"fr\": { // Francais\n * \"NavCube\": {\n * \"front\": \"Avant\",\n * \"back\": \"Arri\u00E8re\",\n * \"top\": \"Sup\u00E9rieur\",\n * \"bottom\": \"Inf\u00E9rieur\",\n * \"left\": \"Gauche\",\n * \"right\": \"Droit\"\n * }\n * }\n * },\n * locale: \"en\"\n * })\n * });\n * ````\n *\n * We can dynamically switch to a different locale at any time:\n *\n * ````javascript\n * localeService.locale = \"mi\"; // Switch to M\u0101ori\n * ````\n *\n * We can load new translations at any time:\n *\n * ````javascript\n * localeService.loadMessages({\n * \"jp\": { // Japanese\n * \"NavCube\": {\n * \"front\": \"\u524D\u90E8\",\n * \"back\": \"\u88CF\",\n * \"top\": \"\u4E0A\",\n * \"bottom\": \"\u5E95\",\n * \"left\": \"\u5DE6\",\n * \"right\": \"\u53F3\"\n * }\n * }\n * });\n * ````\n *\n * And we can clear the translations if needed:\n *\n * ````javascript\n * localeService.clearMessages();\n * ````\n *\n * We can also get an event from the {@link @xeokit/locale!LocaleService | LocaleService} whenever we switch locales or load messages, which is useful\n * for triggering UI elements to refresh themselves with updated translations:\n *\n * ````javascript\n * localeService.onUpdated.subscribe(() => {\n * console.log( viewer.localeService.translate(\"NavCube.left\") );\n * });\n * ````\n *\n * @module @xeokit/locale\n */\nexport * from \"./LocaleService\";", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {EventEmitter} from \"@xeokit/core\";\n\n/**\n * The localization service for a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/locale\"} for usage.\n */\nclass LocaleService {\n\n /**\n * Emits an event each time the locale translations have updated.\n *\n * @event\n */\n readonly onUpdated: EventEmitter;\n #messages: { [key: string]: any };\n #locales: string[];\n #locale: string = \"en\";\n\n /**\n * Constructs a LocaleService.\n *\n * @param cfg LocaleService configuration\n * @param cfg.messages Set of locale translations\n * @param cfg.locale Initial locale\n */\n constructor(cfg: {\n messages?: any,\n locale?: string\n } = {\n messages: {},\n locale: \"\"\n }) {\n this.onUpdated = new EventEmitter(new EventDispatcher());\n this.messages = cfg.messages;\n this.locale = cfg.locale;\n }\n\n /**\n * Replaces the current set of locale translations.\n *\n * * Fires an \"updated\" event when done.\n * * Automatically refreshes any plugins that depend on the translations.\n * * Does not change the current locale.\n *\n * ## Usage\n *\n * ````javascript\n * viewer.localeService.setMessages({\n * messages: {\n * \"en\": { // English\n * \"NavCube\": {\n * \"front\": \"Front\",\n * \"back\": \"Back\",\n * \"top\": \"Top\",\n * \"bottom\": \"Bottom\",\n * \"left\": \"Left\",\n * \"right\": \"Right\"\n * }\n * },\n * \"mi\": { // M\u0101ori\n * \"NavCube\": {\n * \"front\": \"Mua\",\n * \"back\": \"Tuar\u0101\",\n * \"top\": \"Runga\",\n * \"bottom\": \"Raro\",\n * \"left\": \"Mau\u012B\",\n * \"right\": \"Tika\"\n * }\n * }\n * }\n * });\n * ````\n *\n * @param messages The new translations.\n */\n set messages(messages: { [key: string]: any }) {\n this.#messages = messages || {};\n this.#locales = Object.keys(this.#messages);\n this.onUpdated.dispatch(this, this.#locale);\n }\n\n /**\n * Gets the list of available locales.\n *\n * These are derived from the currently configured set of translations.\n *\n * @returns The list of available locales.\n */\n get locales(): string[] {\n return this.#locales;\n }\n\n /**\n * Gets the current locale.\n *\n * @returns {String} The current locale.\n */\n get locale(): string {\n return this.#locale;\n }\n\n /**\n * Sets the current locale.\n *\n * * Fires an \"updated\" event when done.\n * * The given locale does not need to be in the list of available locales returned by {@link LocaleService.locales}, since\n * this method assumes that you may want to load the locales at a later point.\n * * Automatically refreshes any plugins that depend on the translations.\n * * We can then get translations for the locale, if translations have been loaded for it, via {@link LocaleService.translate} and {@link LocaleService.translatePlurals}.\n *\n * @param locale The new current locale.\n */\n set locale(locale: string|undefined) {\n locale = locale || \"de\";\n if (this.#locale === locale) {\n return;\n }\n this.#locale = locale;\n this.onUpdated.dispatch(this, this.#locale);\n }\n\n /**\n * Loads a new set of locale translations, adding them to the existing translations.\n *\n * * Fires an \"updated\" event when done.\n * * Automatically refreshes any plugins that depend on the translations.\n * * Does not change the current locale.\n *\n * ## Usage\n *\n * ````javascript\n * viewer.localeService.loadMessages({\n * \"jp\": { // Japanese\n * \"NavCube\": {\n * \"front\": \"\u524D\u90E8\",\n * \"back\": \"\u88CF\",\n * \"top\": \"\u4E0A\",\n * \"bottom\": \"\u5E95\",\n * \"left\": \"\u5DE6\",\n * \"right\": \"\u53F3\"\n * }\n * }\n * });\n * ````\n *\n * @param messages The new translations.\n */\n loadMessages(messages: { [key: string]: any } = {}) {\n for (let locale in messages) {\n this.#messages[locale] = messages[locale];\n }\n this.messages = this.#messages;\n }\n\n /**\n * Clears all locale translations.\n *\n * * Fires an \"updated\" event when done.\n * * Does not change the current locale.\n * * Automatically refreshes any plugins that depend on the translations, which will cause those\n * plugins to fall back on their internal hard-coded text values, since this method removes all\n * our translations.\n */\n clearMessages() {\n this.messages = {};\n }\n\n /**\n * Translates the given string according to the current locale.\n *\n * Returns null if no translation can be found.\n *\n * @param msg String to translate.\n * @param args Extra parameters.\n * @returns Translated string if found, else null.\n */\n translate(msg: string, args?: any): string | null {\n const localeMessages = this.#messages[this.#locale];\n if (!localeMessages) {\n return null;\n }\n const localeMessage = resolvePath(msg, localeMessages);\n if (localeMessage) {\n if (args) {\n return vsprintf(localeMessage, args);\n }\n return localeMessage;\n }\n return null;\n }\n\n /**\n * Translates the given phrase according to the current locale.\n *\n * Returns null if no translation can be found.\n *\n * @param msg Phrase to translate.\n * @param count The plural number.\n * @param [args] Extra parameters.\n * @returns String|null Translated string if found, else null.\n */\n translatePlurals(msg: string, count: number, args: any): string | null {\n const localeMessages = this.#messages[this.#locale];\n if (!localeMessages) {\n return null;\n }\n let localeMessage = resolvePath(msg, localeMessages);\n count = parseInt(\"\" + count, 10);\n if (count === 0) {\n localeMessage = localeMessage.zero;\n } else {\n localeMessage = (count > 1) ? localeMessage.other : localeMessage.one;\n }\n if (!localeMessage) {\n return null;\n }\n localeMessage = vsprintf(localeMessage, [count]);\n if (args) {\n localeMessage = vsprintf(localeMessage, args);\n }\n return localeMessage;\n }\n}\n\nfunction resolvePath(key: string, json: any) {\n if (json[key]) {\n return json[key];\n }\n const parts = key.split(\".\");\n let obj = json;\n for (let i = 0, len = parts.length; obj && (i < len); i++) {\n const part = parts[i];\n obj = obj[part];\n }\n return obj;\n}\n\nfunction vsprintf(msg: string, args: any = []) {\n return msg.replace(/\\{\\{|\\}\\}|\\{(\\d+)\\}/g, function (m, n) {\n if (m === \"{{\") {\n return \"{\";\n }\n if (m === \"}}\") {\n return \"}\";\n }\n return args[n];\n });\n}\n\nexport {LocaleService};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdata.svg)](https://badge.fury.io/js/%40xeokit%2Fdata)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/data/badge)](https://www.jsdelivr.com/package/npm/@xeokit/data)\n *\n * \n *\n * # xeokit Semantic Data Model\n *\n * ---\n *\n * ### *The SDK's buildable, queryable, importable and exportable semantic data model*\n *\n * ---\n *\n * The xeokit SDK uses a generic entity-relationship data graph to manage model semantics. This graph includes entities,\n * properties, and relationships and is compatible with both the browser and NodeJS. It serves as a versatile tool for generating\n * models, converting between model formats, and navigating content within the model viewer.\n *\n * In more detail, the xeokit SDK provides a {@link @xeokit/data!Data | Data} container class that holds\n * {@link @xeokit/data!DataModel | DataModels} consisting of {@link @xeokit/data!DataObject | DataObjects},\n * {@link @xeokit/data!PropertySet | PropertySets}, and\n * {@link @xeokit/data!Relationship | Relationships}, as shown in the diagram below.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNVMFunDAU_BX0Tu1qgxaW9QLnHBOlSm4VFwc7WVeAkTFV6Wr_vcZmu89A0nIBzxvPmzdGPkMpGYccyop23b2g74rWRcOE4qUWsgkenosmsI9lBPdU0_MVcrjiVPNHI1N9-epVOk5VeXp6_WG0ulmtrExxhtWjRudB0m32sFbJlis9vHC_cP2-LB1bd9i2YGixbLLewk3q5sHWHf7MKzpG1p1Eu6x-uyni4msvKoYBxjut5HCDVqZxDrxT8OYJ9NByvF4bZ6aL_CFhLDuJCP4viQAJNLRGTn7SqkdLbHOmhcPEev5kyrKadxfIDOfMh_92GCMMCogK2NzdmXcYbgq4_SaYZoF1ri_-seaS5xDD3kzsnWOjI_hA9hPWwuk61cvVCl7JN2f5eqz_v3WePPKxzOhanMiwhZqrmgpmLiV78AXoEzd_EeTmk_E32le6gKK5GCrttXwZmhJyrXq-hb5lpv10jUH-RqvOoC1tID_DL8hjEoVRdDxEJE73GSHZYQuDgeMwyY7kkGTRMSbp_nDZwm8pjcIuTGOSJGS_yxKSpjvD50xoqR6na3N82Q7fLX-0cfkD0IeHkg?type=png)](https://mermaid.live/edit#pako:eNqNVMFunDAU_BX0Tu1qgxaW9QLnHBOlSm4VFwc7WVeAkTFV6Wr_vcZmu89A0nIBzxvPmzdGPkMpGYccyop23b2g74rWRcOE4qUWsgkenosmsI9lBPdU0_MVcrjiVPNHI1N9-epVOk5VeXp6_WG0ulmtrExxhtWjRudB0m32sFbJlis9vHC_cP2-LB1bd9i2YGixbLLewk3q5sHWHf7MKzpG1p1Eu6x-uyni4msvKoYBxjut5HCDVqZxDrxT8OYJ9NByvF4bZ6aL_CFhLDuJCP4viQAJNLRGTn7SqkdLbHOmhcPEev5kyrKadxfIDOfMh_92GCMMCogK2NzdmXcYbgq4_SaYZoF1ri_-seaS5xDD3kzsnWOjI_hA9hPWwuk61cvVCl7JN2f5eqz_v3WePPKxzOhanMiwhZqrmgpmLiV78AXoEzd_EeTmk_E32le6gKK5GCrttXwZmhJyrXq-hb5lpv10jUH-RqvOoC1tID_DL8hjEoVRdDxEJE73GSHZYQuDgeMwyY7kkGTRMSbp_nDZwm8pjcIuTGOSJGS_yxKSpjvD50xoqR6na3N82Q7fLX-0cfkD0IeHkg)\n *\n * Various model file formats can be imported into DataModels using methods such as {@link @xeokit/gltf!loadGLTF | loadGLTF}, {@link @xeokit/las!loadLAS | loadLAS},\n * {@link @xeokit/cityjson!loadCityJSON | loadCityJSON}, and {@link @xeokit/dtx!loadDTX | loadDTX},\n * while DataModels can be exported to the native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format using {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * To programmatically build DataModels, builder methods\n * such as {@link @xeokit/data!Data.createModel | Data.createModel}, {@link @xeokit/data!DataModel.createObject | DataModel.createObject},\n * {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet}, and\n * {@link @xeokit/data!DataModel.createRelationship | DataModel.createRelationship} can be employed.\n * DataObjects can be queried using the {@link @xeokit/data!Data.searchObjects | Data.searchObjects} method, and\n * semantic data can be attached to model representations by\n * using it alongside SceneModel.\n *\n * It's important to note that DataObjects and PropertySets are global, created on their DataModels but stored globally\n * on the Data. Additionally, DataModels automatically reuse DataObjects and PropertySets wherever they're already\n * created by other DataModels. Finally, DataObjects can have Relationships with other DataObjects in different DataModels.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/data\n * ````\n *\n * ## Usage\n *\n * * [Creating a DataModel from JSON](#creating-a-scenemodel)\n * * [Creating a DataModel using Builder Methods](#creating-a-scenemodel)\n * * [Reading DataObjects](#reading-dataobjects)\n * * [Searching DataObjects](#searching-dataobjects)\n *\n * ### Creating a DataModel from JSON\n *\n * We will start with an example where we create a {@link @xeokit/data!DataModel | DataModel} using a single parameter\n * object of type {@link @xeokit/data!DataModelParams | DataModelParams}.\n * The DataModel we create will define a simple piece of furniture - a table consisting of a tabletop and four legs.\n * We will then query the data model to retrieve all the {@link @xeokit/data!DataObject | DataObjects} within it.\n *\n * To achieve this, we will create a DataModel that contains six DataObjects: one for the\n * table, one for the tabletop, and one for each of the four legs. We will also define Relationships\n * to connect the DataObjects into an aggregation hierarchy, and we will assign {@link Property | Properties} to the\n * DataObjects to give them attributes such as height and weight.\n *\n * To give the DataObjects and {@link @xeokit/data!Relationship | Relationships} semantic meaning, we will assign\n * them types from one of the SDK's bundled data type sets, basicTypes. This set of types classifies each DataObject\n * as a {@link @xeokit/basictypes!BasicEntity | BasicEntity} and each Relationship as\n * a {@link @xeokit/basictypes!BasicAggregation | BasicAggregation}.\n *\n * It's worth noting that in a real-world scenario, we would likely use a more complex set of data types, such as\n * {@link @xeokit/ifctypes}. However, we cannot mix different sets of data types within our {@link @xeokit/data!Data | Data},\n * as traversals of the DataObjects with {@link @xeokit/data!Data.searchObjects | Data.searchObjects } must be\n * guided uniformly by the same set of types across all the DataObjects and Relationships in the graph.\n *\n * To create our DataModel, we will use the following code, which creates a new Data object and then\n * creates a DataModel from a set of objects, relationships, and property sets. The {@link @xeokit/core!SDKError | SDKError} class\n * is used to handle errors that may occur during the process:\n *\n * ````javascript\n * import { SDKError } from \"@xeokit/core\";\n * import { Data } from \"@xeokit/data\";\n * import * as basicTypes from \"@xeokit/basictypes/basicTypes\";\n *\n * const myData = new Data({});\n *\n * const myDataModel = myData.createModel({\n * id: \"myTableModel\",\n * objects: [\n * {\n * id: \"table\",\n * type: basicTypes.BasicEntity,\n * name: \"Table\",\n * propertySetIds: [\"tablePropertySet\"],\n * },\n * {\n * id: \"redLeg\",\n * name: \"Red table Leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"greenLeg\",\n * name: \"Green table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"blueLeg\",\n * name: \"Blue table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"yellowLeg\",\n * name: \"Yellow table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"legPropertySet\"],\n * },\n * {\n * id: \"tableTop\",\n * name: \"Purple table top\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableTopPropertySet\"],\n * },\n * ],\n * relationships: [\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"table\",\n * relatedObjectId: \"tableTop\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"redLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"greenLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"blueLeg\",\n * },\n * {\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"yellowLeg\",\n * },\n * ],\n * propertySets: [\n * {\n * id: \"tablePropertySet\",\n * originalSystemId: \"tablePropertySet\",\n * name: \"Table properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\",\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\",\n * },\n * ],\n * },\n * {\n * id: \"legPropertySet\",\n * originalSystemId: \"legPropertySet\",\n * name: \"Table leg properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\",\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\",\n * },\n * ],\n * },\n * ],\n * });\n *\n * if (myDataModel instanceof SDKError) {\n * console.log(myDataModel.message);\n * } else {\n * myDataModel.build();\n * }\n * ````\n *\n * ### Creating a DataModel using Builder Methods\n *\n * In our second example, we'll create our {@link @xeokit/data!DataModel | DataModel} again, this time instantiating\n * each {@link @xeokit/data!PropertySet | PropertySet}, {@link Property}, {@link @xeokit/data!DataObject | DataObject}\n * and {@link @xeokit/data!Relationship | Relationship} individually, using the\n * {@link @xeokit/data!DataModel | DataModel's} builder methods.\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Data} from \"@xeokit/data\";\n * import * as basicTypes from \"@xeokit/basictypes/basicTypes\";\n *\n * const data = new Data();\n *\n * const dataModel = data.createModel({ // DataModel | SDKError\n * id: \"myTableModel\"\n * });\n *\n * if (dataModel instanceof SDKError) {\n * console.log(dataModel.message);\n *\n * } else {\n *\n * const tablePropertySet = dataModel.createPropertySet({ // PropertySet | SDKError\n * id: \"tablePropertySet\",\n * name: \"Table properties\",\n * type: \"\",\n * properties: [ // Property[]\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\"\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\"\n * }\n * ]\n * });\n *\n * if (tablePropertySet instanceof SDKError) {\n * console.log(tablePropertySet.message);\n * }\n *\n * const legPropertySet = dataModel.createPropertySet({\n * id: \"legPropertySet\",\n * name: \"Table leg properties\",\n * type: \"\",\n * properties: [\n * {\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of the thing\"\n * },\n * {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of the thing\"\n * }\n * ]\n * });\n *\n * const myTableObject = dataModel.createObject({ // DataObject | SDKError\n * id: \"table\",\n * type: basicTypes.BasicEntity,\n * name: \"Table\",\n * propertySetIds: [\"tablePropertySet\"]\n * });\n *\n * if (myTableObject instanceof SDKError) {\n * console.log(myTableObject.message);\n * }\n *\n * dataModel.createObject({\n * id: \"redLeg\",\n * name: \"Red table Leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"greenLeg\",\n * name: \"Green table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"blueLeg\",\n * name: \"Blue table leg\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"yellowLeg\",\n * name: \"Yellow table leg\",\n * type: \"leg\",\n * propertySetIds: [\"tableLegPropertySet\"]\n * });\n *\n * dataModel.createObject({\n * id: \"tableTop\",\n * name: \"Purple table top\",\n * type: basicTypes.BasicEntity,\n * propertySetIds: [\"tableTopPropertySet\"]\n * });\n *\n * const myRelationship = dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"table\",\n * relatedObjectId: \"tableTop\"\n * });\n *\n * if (myRelationship instanceof SDKError) {\n * console.log(myRelationship.message);\n * }\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"redLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"greenLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"blueLeg\"\n * });\n *\n * dataModel.createRelationship({\n * type: basicTypes.BasicAggregation,\n * relatingObjectId: \"tableTop\",\n * relatedObjectId: \"yellowLeg\"\n * });\n *\n * dataModel.build()\n * .then(()=>{\n * // Ready for action\n * })\n * .catch((sdkError) => {\n * console.error(sdkError.message);\n * });\n * }\n * ````\n *\n * ### Reading DataObjects\n *\n * With our {@link @xeokit/scene!SceneModel | SceneModel} built, we'll now use the {@link @xeokit/data!Data.searchObjects | Data.searchObjects} method to\n * traverse it to fetch the IDs of the {@link @xeokit/data!DataObject | DataObjects} we find on that path.\n *\n * One example of where we use this method is to query the aggregation hierarchy of the DataObjects for building\n * a tree view of an IFC element hierarchy.\n *\n * ````javascript\n * const resultObjectIds = [];\n *\n * data.searchObjects({\n * startObjectId: \"table\",\n * includeObjects: [basicTypes.BasicEntity],\n * includeRelated: [basicTypes.BasicAggregation],\n * resultObjectIds\n * });\n *\n * // resultObjectIds == [\"table\", \"tableTop\", \"redLeg\", \"greenLeg\", \"blueLeg\", \"yellowLeg\"];\n * ````\n *\n * ### Searching DataObjects\n *\n * In our fourth example, we'll demonstrate how to traverse the {@link @xeokit/data!DataObject | DataObjects} along their\n * {@link @xeokit/data!Relationship | Relationships}. We'll start at the root DataObject and visit all the DataObjects\n * we encounter along the outgoing Relationships.\n *\n * ````javascript\n * const table = data.objects[\"table\"];\n *\n * const relations = table.related[basicTypes.BasicAggregation];\n *\n * for (let i = 0, len = relations.length; i < len; i++) {\n *\n * const relation = relations[i];\n * const dataObject = relation.related;\n *\n * //..\n * }\n * ````\n *\n * @module @xeokit/data\n */\nexport * from \"./Data\";\nexport * from \"./DataModel\";\nexport * from \"./DataObject\";\nexport * from \"./Relationship\";\nexport * from \"./RelationshipParams\";\nexport * from \"./Property\";\nexport * from \"./PropertySet\";\nexport * from \"./DataModelParams\";\nexport * from \"./DataModelContentParams\";\nexport * from \"./DataObjectParams\";\nexport * from \"./PropertyParams\";\nexport * from \"./PropertySetParams\";\nexport * from \"./SearchParams\";\n", "import type {PropertySet} from \"./PropertySet\";\nimport type {PropertyParams} from \"./PropertyParams\";\n\n/**\n * A property in a {@link @xeokit/data!PropertySet | PropertySet}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Property {\n\n /**\n * The PropertySet to which this Property belongs.\n */\n public readonly propertySet: PropertySet;\n\n /**\n * The name of this property.\n */\n public readonly name: string;\n\n /**\n * The value of this property.\n */\n public readonly value: any;\n\n /**\n * The type of this property.\n */\n public readonly type?: string | number;\n\n /**\n * The type of this property's value.\n */\n public readonly valueType?: string | number;\n\n /**\n * Informative text to explain the property.\n */\n public readonly description?: string;\n\n /**\n * @private\n * @ignore\n */\n constructor(\n propertySet: PropertySet,\n propertyCfg: PropertyParams) {\n this.propertySet = propertySet;\n this.name = propertyCfg.name;\n this.type = propertyCfg.type\n this.value = propertyCfg.value\n this.valueType = propertyCfg.valueType;\n this.description = propertyCfg.description;\n }\n}\n", "import {Property} from \"./Property\";\nimport type {DataModel} from \"./DataModel\";\nimport type {PropertySetParams} from \"./PropertySetParams\";\n\n/**\n * A set of {@link Property | Properties} in a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Created with {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet}\n * * Stored in {@link @xeokit/data!Data.propertySets | Data.propertySets} and {@link @xeokit/data!DataModel.propertySets | Data.propertySets}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class PropertySet {\n\n /**\n * The DataModels to which this PropertySet belongs.\n */\n public readonly models: DataModel[];\n\n /**\n * Unique ID.\n *\n * PropertySet instances are registered by this ID in {@link @xeokit/data!Data.propertySets | Data.propertySets}\n * and {@link @xeokit/data!DataModel.propertySets | DataModel.propertySets}.\n */\n public readonly id: string;\n\n /**\n * ID of the corresponding object within the originating system, if any.\n */\n public readonly originalSystemId?: string;\n\n /**\n * Human-readable name of this PropertySet.\n */\n public readonly name: string;\n\n /**\n * Type of this PropertySet.\n */\n public readonly type: string;\n\n /**\n * Properties within this PropertySet.\n */\n public readonly properties: Property[];\n\n /**\n * @private\n */\n constructor(\n dataModel: DataModel,\n propertySetCfg: PropertySetParams) {\n this.models = [dataModel];\n this.id = propertySetCfg.id;\n this.name = propertySetCfg.name;\n this.type = propertySetCfg.type;\n this.properties = [];\n if (propertySetCfg.properties) {\n for (let i = 0, len = propertySetCfg.properties.length; i < len; i++) {\n const property = new Property(this, propertySetCfg.properties[i]);\n this.properties.push(property);\n }\n }\n }\n}\n", "import type {PropertySet} from \"./PropertySet\";\nimport type {DataModel} from \"./DataModel\";\nimport type {Relationship} from \"./Relationship\";\nimport type {Data} from \"./Data\";\n\n/**\n * An object in a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Created with {@link @xeokit/data!DataModel.createObject | DataModel.createObject}\n * * Stored in {@link @xeokit/data!Data.objects | Data.objects}, {@link @xeokit/data!Data.rootObjects | Data.rootObjects}, {@link @xeokit/data!Data.objectsByType | Data.objectsByType}, {@link @xeokit/data!DataModel.objects | Data.objects}, {@link @xeokit/data!DataModel.rootObjects | Data.rootObjects}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class DataObject {\n\n /**\n * {@link @xeokit/data!Data | Data} that contains this DataObject.\n */\n public data: Data;\n\n /**\n * {@link @xeokit/data!DataModel | DataModels} that share this DataObject.\n */\n public models: DataModel[];\n\n /**\n * Globally-unique ID.\n *\n * DataObjects are stored by ID in {@link @xeokit/data!Data.objects | Data.objects}, {@link @xeokit/data!Data.rootObjects | Data.rootObjects}, {@link @xeokit/data!Data.objectsByType | Data.objectsByType} and {@link @xeokit/data!DataModel.rootObjects | Data.rootObjects}.\n */\n public readonly id: string;\n\n /**\n * ID of this DataObject within the originating system, is any. Defaults to the value of\n * {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n originalSystemId?: string;\n\n /**\n * Human-readable name.\n */\n public readonly name?: string;\n\n /**\n * Human-readable description.\n */\n public readonly description?: string;\n\n /**\n * DataObject's type.\n */\n public readonly type: number;\n\n /**\n *{@link @xeokit/data!PropertySet | PropertySets} referenced by this DataObject.\n */\n public readonly propertySets?: PropertySet[];\n\n /**\n * The {@link @xeokit/data!Relationship | Relations} in which this DataObject is the {@link @xeokit/data!Relationship.relatingObject | Relationship.relatingObject} participant.\n *\n * Each DataObject is mapped here by {@link @xeokit/data!Relationship.type | Relationship.type} and sub-mapped by {@link @xeokit/data!Relationship.relatingObject | Relationship.relatingObject}.\n */\n public readonly relating: {\n [key: number]: Relationship[]\n };\n\n /**\n * The {@link @xeokit/data!Relationship | Relationships} in which this DataObject is the {@link @xeokit/data!Relationship.relatedObject | Relationship.relatedObject} participant.\n *\n * Each DataObject is mapped here by {@link @xeokit/data!Relationship.type | Relationship.type} and sub-mapped by {@link @xeokit/data!Relationship.relatedObject | Relationship.relatedObject}.\n */\n public readonly related: {\n [key: number]: Relationship[]\n };\n\n /**\n * @private\n */\n constructor(\n data: Data,\n model: DataModel,\n id: string,\n originalSystemId: string,\n name: string,\n description: string | undefined,\n type: number,\n propertySets?: PropertySet[]) {\n\n this.data = data;\n this.models = [model];\n this.id = id;\n this.originalSystemId = originalSystemId;\n this.name = name;\n this.description = description;\n this.type = type;\n this.propertySets = propertySets || [];\n this.related = {};\n this.relating = {};\n }\n}\n", "import type {DataObject} from \"./DataObject\";\n\n/**\n * A one-to-one relationship between two {@link @xeokit/data!DataObject | DataObjects}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Relationship {\n\n /**\n * The type of this Relationship.\n *\n * This can be any value that identifies the Relationship type within your DataModel.\n */\n readonly type: number;\n\n /**\n * The relating {@link @xeokit/data!DataObject | DataObject} in this Relationship.\n *\n * This Relationship will be stored by {@link @xeokit/data!DataObject.type | DataObject.type}\n * in the DataObject's {@link @xeokit/data!DataObject.related | DataObject.related} attribute.\n */\n readonly relatingObject: DataObject;\n\n /**\n * The related {@link @xeokit/data!DataObject | DataObject} in this Relationship.\n *\n * This Relationship will be stored by {@link @xeokit/data!DataObject.type | DataObject.type} in\n * the DataObject's {@link @xeokit/data!DataObject.relating | DataObject.relating} attribute.\n */\n readonly relatedObject: DataObject;\n\n /**\n * @private\n * @ignore\n */\n constructor(type: number, relatingObject: DataObject, relatedObject: DataObject) {\n this.type = type;\n this.relatingObject = relatingObject;\n this.relatedObject = relatedObject;\n }\n}\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport type {Data} from \"./Data\";\nimport {PropertySet} from \"./PropertySet\";\nimport {DataObject} from \"./DataObject\";\nimport type {DataModelParams} from \"./DataModelParams\";\nimport type {DataObjectParams} from \"./DataObjectParams\";\nimport type {PropertySetParams} from \"./PropertySetParams\";\nimport {Relationship} from \"./Relationship\";\nimport type {RelationshipParams} from \"./RelationshipParams\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {PropertyParams} from \"./PropertyParams\";\nimport {DataModelContentParams} from \"./DataModelContentParams\";\n\n/**\n * xeokit Semantic Data Model.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class DataModel extends Component {\n\n /**\n * The Data that contains this DataModel.\n */\n public readonly data: Data;\n\n /**\n * Unique ID of this DataModel.\n *\n * DataModels are stored against this ID in {@link @xeokit/data!Data.models | Data.models}.\n */\n declare public readonly id: string;\n\n /**\n * The model name, if available.\n */\n public name?: string;\n\n /**\n * The project ID, if available.\n */\n public projectId?: string | number;\n\n /**\n * The revision ID, if available.\n */\n public revisionId?: string | number;\n\n /**\n * The model author, if available.\n */\n public author?: string;\n\n /**\n * The date the model was created, if available.\n */\n public createdAt?: string;\n\n /**\n * The application that created the model, if available.\n */\n public creatingApplication?: string;\n\n /**\n * The model schema version, if available.\n */\n public schema?: string;\n\n /**\n * The{@link @xeokit/data!PropertySet | PropertySets} in this DataModel, mapped to{@link @xeokit/data!PropertySet.id | PropertySet.id}.\n *\n * PropertySets have globally-unique IDs and will also be stored in {@link @xeokit/data!Data.propertySets | Data.propertySets}.\n */\n public readonly propertySets: { [key: string]: PropertySet };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * DataObjects have globally-unique IDs and will also be stored in {@link @xeokit/data!Data.objects | Data.objects}.\n */\n public objects: { [key: string]: DataObject };\n\n /**\n * The root {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped\n * to {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * * This is the set of DataObjects in this DataModel that are not the *related* participant in\n * any {@link @xeokit/data!Relationship | Relationships}, where they have no incoming Relationships and\n * their {@link @xeokit/data!DataObject.relating} property is empty.\n */\n public rootObjects: { [key: string]: DataObject };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this DataModel, mapped to {@link @xeokit/data!DataObject.type | DataObject.type},\n * sub-mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public objectsByType: { [key: string]: { [key: string]: DataObject } };\n\n /**\n * The {@link @xeokit/data!Relationship | Relationships} in this DataModel.\n *\n * * The Relationships can be between DataObjects in different DataModels, but always within the same Data.\n */\n public relationships: Relationship[];\n\n /**\n * The count of each type of {@link @xeokit/data!DataObject | DataObject} in this DataModel, mapped to {@link @xeokit/data!DataObject.type | DataObject.type}.\n */\n public readonly typeCounts: { [key: string]: number };\n\n /**\n * Emits an event when the {@link @xeokit/data!DataModel | DataModel} has been built.\n *\n * * The DataModel is built using {@link @xeokit/data!DataModel.build | DataModel.build}.\n * * {@link @xeokit/data!DataModel.built | DataModel.built} indicates if the DataModel is currently built.\n * * Don't create anything more in this DataModel once it's built.\n *\n * @event\n */\n public readonly onBuilt: EventEmitter;\n\n /**\n * Indicates if this DataModel has been built.\n *\n * * Set true by {@link @xeokit/data!DataModel.build | DataModel.build}.\n * * Subscribe to updates using {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt} and {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated}.\n */\n built: boolean;\n\n #destroyed: boolean;\n\n /**\n * @private\n */\n constructor(\n data: Data,\n id: string,\n dataModelParams: DataModelParams,\n options?: {\n includeTypes?: string[],\n excludeTypes?: string[],\n globalizeObjectIds?: boolean\n }) {\n\n super(data);\n\n this.onBuilt = new EventEmitter(new EventDispatcher());\n\n this.data = data;\n\n this.id = id;\n this.projectId = dataModelParams.projectId || \"\";\n this.revisionId = dataModelParams.revisionId || \"\";\n this.author = dataModelParams.author || \"\";\n this.createdAt = dataModelParams.createdAt || \"\";\n this.creatingApplication = dataModelParams.creatingApplication || \"\";\n this.schema = dataModelParams.schema || \"\";\n this.propertySets = {};\n this.objects = {};\n this.objectsByType = {};\n this.relationships = [];\n this.typeCounts = {};\n this.rootObjects = {};\n this.built = false;\n this.#destroyed = false;\n\n this.fromJSON(dataModelParams);\n }\n\n /**\n * Adds the given components to this DataModel.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param dataModelParams\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A duplicate PropertySet was already created for this DataModel.\n * * A duplicate DataObject was already created in this DataModel.\n * * DataObjects were not found for a Relationship.\n */\n fromJSON(dataModelParams: DataModelContentParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add components to DataModel - DataModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to add components to DataModel - DataModel already built\");\n }\n if (dataModelParams.propertySets) {\n for (let i = 0, len = dataModelParams.propertySets.length; i < len; i++) {\n this.createPropertySet(dataModelParams.propertySets[i]);\n }\n }\n if (dataModelParams.objects) {\n for (let i = 0, len = dataModelParams.objects.length; i < len; i++) {\n this.createObject(dataModelParams.objects[i]);\n }\n }\n if (dataModelParams.relationships) {\n for (let i = 0, len = dataModelParams.relationships.length; i < len; i++) {\n this.createRelationship(dataModelParams.relationships[i]);\n }\n }\n }\n\n /**\n * Creates a new {@link @xeokit/data!PropertySet | PropertySet}.\n *\n * * Stores the new PropertySet in {@link @xeokit/data!DataModel.propertySets | DataModel.propertySets}\n * and {@link @xeokit/data!Data.propertySets | Data.propertySets}.\n * * Note that PropertySet IDs are globally unique. PropertySet instances are automatically reused and shared among DataModels\n * when IDs given to {@link @xeokit/data!DataModel.createPropertySet | DataModel.createPropertySet} match existing PropertySet\n * instances in the same Data.\n *\n * ### Usage\n *\n * ````javascript\n * const propertySet = dataModel.createPropertySet({\n * id: \"myPropertySet\",\n * name: \"My properties\",\n * properties: [{\n * name: \"Weight\",\n * value: 5,\n * type: \"\",\n * valueType: \"\",\n * description: \"Weight of a thing\"\n * }, {\n * name: \"Height\",\n * value: 12,\n * type: \"\",\n * valueType: \"\",\n * description: \"Height of a thing\"\n * }]\n * });\n *\n * if (propertySet instanceof SDKError) {\n * console.error(propertySet.message);\n * } else {\n * // Success\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param propertySetCfg - PropertySet creation parameters.\n * @returns *{@link PropertySet}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A PropertySet of the given ID was already created for this DataModel. While it's OK\n * for multiple DataModels to *share* PropertySets with duplicate IDs between them, it's not permitted to\n * create duplicate PropertySets within the same DataModel.\n */\n createPropertySet(propertySetCfg: PropertySetParams): PropertySet | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create PropertySet - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"DataModel already built\");\n }\n if (this.propertySets[propertySetCfg.id]) {\n return new SDKError(\"Failed to create PropertySet - PropertySet with same ID already created in this DataModel. It's OK to have duplicates shared between DataModels, but they must be unique within each DataModel.\")\n }\n let propertySet = this.data.propertySets[propertySetCfg.id];\n if (propertySet) {\n this.propertySets[propertySetCfg.id] = propertySet;\n propertySet.models.push(this);\n return propertySet;\n }\n propertySet = new PropertySet(this, propertySetCfg);\n this.propertySets[propertySetCfg.id] = propertySet;\n this.data.propertySets[propertySetCfg.id] = propertySet;\n return propertySet;\n }\n\n /**\n * Creates a new {@link @xeokit/data!DataObject | DataObject}.\n *\n * * Stores the new {@link @xeokit/data!DataObject | DataObject} in {@link DataModel.objects | DataModel.objects} and {@link Data.objects | Data.objects}.\n * * Fires an event via {@link Data.onObjectCreated | Data.onObjectCreated}.\n * * Note that DataObject IDs are globally unique. DataObject instances are automatically reused and shared among DataModels when\n * IDs given to {@link DataModel.createObject | DataModel.createObject} match existing DataObject instances in the same\n * Data. This feature is part of how xeokit supports [*federated data models*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#federated-models).\n *\n * ### Usage\n *\n * ````javascript\n * const myDataObject = dataModel.createObject({\n * id: \"myDataObject\",\n * type: BasicEntity, // @xeokit/basictypes!basicTypes\n * name: \"My Object\",\n * propertySetIds: [\"myPropertySet\"]\n * });\n *\n * const myDataObject2 = dataModel.createObject({\n * id: \"myDataObject2\",\n * name: \"My Other Object\",\n * type: BasicEntity,\n * propertySetIds: [\"myPropertySet\"]\n * });\n *\n * if (myDataObject instanceof SDKError) {\n * console.error(myDataObject.message);\n *\n * } else if (myDataObject2 instanceof SDKError) {\n * console.error(myDataObject2.message);\n *\n * } else { // Success\n * const gotMyDataObject = dataModel.objects[\"myDataObject\"];\n * const gotMyDataObjectAgain = data.objects[\"myDataObject\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param dataObjectParams - DataObject creation parameters.\n * @returns *{@link DataObject}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built.\n * * If this DataModel has already been destroyed.\n * * A DataObject of the given ID was already created in this DataModel. While it's OK\n * for multiple DataModels to *share* DataObjects with duplicate IDs between them, we're not permitted to\n * create duplicate DataObjects within the same DataModel.\n * * A specified PropertySet could not be found.\n */\n createObject(dataObjectParams: DataObjectParams): DataObject | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create DataObject - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create DataObject - DataModel already built\");\n }\n const id = dataObjectParams.id;\n if (this.objects[id]) {\n return new SDKError(\"Failed to create DataObject - DataObject with same ID already created in this DataModel. It's OK to have duplicates shared between DataModels, but they must be unique within each DataModel.\")\n }\n const type = dataObjectParams.type;\n let dataObject = this.data.objects[id];\n if (!dataObject) {\n const propertySets = [];\n if (dataObjectParams.propertySetIds) {\n for (let i = 0, len = dataObjectParams.propertySetIds.length; i < len; i++) {\n const propertySetId = dataObjectParams.propertySetIds[i];\n const propertySet = this.propertySets[propertySetId];\n if (!propertySet) {\n return new SDKError(`Failed to create DataObject - PropertySet not found: \"${propertySetId}\"`);\n } else {\n propertySets.push(propertySet);\n }\n }\n }\n dataObject = new DataObject(this.data, this, id, dataObjectParams.originalSystemId, dataObjectParams.name, dataObjectParams.description, dataObjectParams.type, propertySets);\n this.objects[id] = dataObject;\n this.data.objects[id] = dataObject;\n if (!this.data.objectsByType[type]) {\n this.data.objectsByType[type] = {};\n }\n this.data.objectsByType[type][id] = dataObject;\n this.data.typeCounts[type] = (this.data.typeCounts[type] === undefined) ? 1 : this.data.typeCounts[type] + 1;\n dataObject.models.push(this);\n // if (dataObjectParams.relations) {\n // for (let relationType in dataObjectParams.relations) {\n // if (!dataObject.relating[relationType]) {\n // dataObject.relating[relationType] = [];\n // }\n // const relatedObjectIds = dataObjectParams.relations[relationType];\n // for (let j = 0, lenj = relatedObjectIds.length; j < lenj; j++) {\n // const relatedObjectId = relatedObjectIds[j];\n // const relatedObject = this.data.objects[relatedObjectId];\n // if (!relatedObject) {\n // this.error(`[createObject] Can't create Relationship - DataObject not found: ${relatedObjectId}`);\n // } else {\n // // @ts-ignore\n // const relation = new Relationship(relationType, this, relatedObject);\n // relatedObject.relating[relationType].push(relation);\n // dataObject.related[relationType].push(relation);\n // }\n // }\n // }\n // }\n this.data.onObjectCreated.dispatch(this.data, dataObject);\n } else {\n this.objects[id] = dataObject;\n this.data.objects[id] = dataObject;\n if (!this.objectsByType[type]) {\n this.objectsByType[type] = {};\n }\n this.objectsByType[type][id] = dataObject;\n this.typeCounts[type] = (this.typeCounts[type] === undefined) ? 1 : this.typeCounts[type] + 1;\n dataObject.models.push(this);\n }\n return dataObject;\n }\n\n /**\n * Creates a new {@link @xeokit/data!Relationship | Relationship} between two existing {@link DataObject | DataObjects}.\n *\n * * A Relationship involves a *relating* DataObject and a *related* DataObject.\n * * The *relating* and *related* DataObjects can exist within different DataModels,\n * as long as the DataModels both exist in the same {@link Data}. This feature is part of\n * how xeokit supports the viewing of [*federated models*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#federated-models).\n * * The new Relationship will be stored in\n * - {@link DataModel.relationships | DataModel.relationships},\n * - {@link DataObject.related | DataObject.related} on the *relating* DataObject, and\n * - {@link DataObject.relating | DataObject.relating} on the *related* DataObject.\n *\n * ### Usage\n *\n * ````javascript\n * const myRelationship = dataModel.createRelationship({\n * type: BasicAggregation, // @xeokit/basictypes!basicTypes\n * relatingObjectId: \"myDataObject\",\n * relatedObjectId: \"myDataObject2\"\n * });\n *\n * if (myRelationship instanceof SDKError) {\n * console.error(myRelationship.message);\n *\n * } else { // Success\n * const myDataObject = dataModel.objects[\"myDataObject\"];\n * const myDataObject2 = dataModel.objects[\"myDataObject2\"];\n *\n * const gotMyRelationship = myDataObject.related[BasicAggregation][0];\n * const gotMyRelationshipAgain = myDataObject2.relating[BasicAggregation][0];\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more usage info.\n *\n * @param relationshipParams - Relationship creation parameters.\n * @returns *{@link @xeokit/data!Relationship | Relationship}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been built or destroyed.\n * * The *relating* DataObject was not found in the {@link Data} that contains this DataModel.\n * * The *related* DataObject was not found in the Data that contains this DataModel.\n */\n createRelationship(relationshipParams: RelationshipParams): Relationship | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create Relationship - DataModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create Relationship - DataModel already built\");\n }\n const relatingObject = this.data.objects[relationshipParams.relatingObjectId];\n if (!relatingObject) {\n return new SDKError(`Failed to create Relationship - relating DataObject not found: ${relationshipParams.relatingObjectId}`);\n }\n const relatedObject = this.data.objects[relationshipParams.relatedObjectId];\n if (!relatedObject) {\n return new SDKError(`Failed to create Relationship - related DataObject not found: ${relationshipParams.relatedObjectId}`);\n }\n const relation = new Relationship(relationshipParams.type, relatingObject, relatedObject);\n if (!relatedObject.relating[relationshipParams.type]) {\n relatedObject.relating[relationshipParams.type] = [];\n }\n relatedObject.relating[relationshipParams.type].push(relation);\n if (!relatingObject.related[relationshipParams.type]) {\n relatingObject.related[relationshipParams.type] = [];\n }\n relatingObject.related[relationshipParams.type].push(relation);\n this.relationships.push(relation);\n return relation;\n }\n\n /**\n * Finalizes this DataModel, readying it for use.\n *\n * * Fires an event via {@link DataModel.onBuilt | DataModel.onBuilt} and {@link Data.onModelCreated | DataModel.onCreated}, to indicate to subscribers that\n * the DataModel is complete and ready to use.\n * * Sets {@link DataModel.built | DataModel.built} ````true````.\n * * You can only call this method once on a DataModel.\n * * Once built, no more components can be created in a DataModel.\n *\n * ````javascript\n * dataModel.onBuilt.subscribe(()=>{\n * // Our DataModel is built and ready to use\n * });\n *\n * data.onModelCreated.subscribe((dataModel)=>{\n * // Another way to subscribe to DataModel readiness\n * });\n *\n * const result = dataModel.build();\n *\n * if (result instanceof SDKError) {\n * console.error(result.message);\n * } else {\n * // Success\n * }\n * ````\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If DataModel has already been built or destroyed.\n */\n build(): Promise {\n return new Promise((resolve) => {\n if (this.destroyed) {\n throw new SDKError(\"Failed to build DataModel - DataModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to build DataModel - DataModel already built\");\n }\n this.built = true;\n this.onBuilt.dispatch(this, null);\n resolve(this);\n });\n }\n\n /**\n * Gets this DataModel as JSON.\n */\n getJSON(): DataModelParams | SDKError {\n if (this.destroyed) {\n return new SDKError(\"DataModel already destroyed\");\n }\n const dataModelParams = {\n id: this.id,\n propertySets: [],\n objects: [],\n relationships: []\n };\n for (let id in this.propertySets) {\n const propertySet = this.propertySets[id];\n const propertySetParams = {\n id,\n name: propertySet.name,\n properties: [],\n type: propertySet.type,\n originalSystemId: propertySet.originalSystemId\n };\n for (let i = 0, len = propertySet.properties.length; i < len; i++) {\n const property = propertySet.properties[i];\n const propertyParams = {\n name: property.name,\n value: property.value,\n type: property.type,\n valueType: property.valueType,\n description: property.description\n };\n propertySetParams.properties.push(propertyParams);\n }\n dataModelParams.propertySets?.push(propertySetParams);\n }\n for (let id in this.objects) {\n const dataObject = this.objects[id];\n const dataObjectParams = {\n id,\n originalSystemId: dataObject.originalSystemId,\n type: dataObject.type,\n name: dataObject.name,\n propertySetIds: []\n };\n if (dataObject.description !== undefined) {\n dataObjectParams.description = dataObject.description;\n }\n if (dataObject.propertySets) {\n for (let i = 0, len = dataObject.propertySets.length; i < len; i++) {\n const propertySet = dataObject.propertySets[i];\n dataObjectParams.propertySetIds?.push(propertySet.id);\n }\n }\n dataModelParams.objects?.push(dataObjectParams);\n }\n for (let i = 0, len = this.relationships.length; i < len; i++) {\n const relationship = this.relationships[i];\n const relationParams = {\n type: relationship.type,\n relatingObjectId: relationship.relatingObject.id,\n relatedObjectId: relationship.relatedObject.id\n };\n dataModelParams.relationships?.push(relationParams);\n }\n return dataModelParams;\n }\n\n /**\n * Destroys this DataModel.\n *\n * * Fires an event via {@link DataModel.onDestroyed | DataModel.onDestroyed} and {@link Data.onModelDestroyed | Data.onModelDestroyed}.\n * * You can only call this method once on a DataModel.\n * * Once destroyed, no more components can be created in a DataModel.\n * * Does not matter if the DataModel has not yet been built.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this DataModel has already been destroyed.\n */\n destroy(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to destroy DataModel - DataModel already destroyed\");\n }\n for (let id in this.objects) {\n const dataObject = this.objects[id];\n if (dataObject.models.length > 1) {\n this.#removeObjectFromModels(dataObject);\n } else {\n delete this.data.objects[id];\n const type = dataObject.type;\n if ((--this.data.typeCounts[type]) === 0) {\n delete this.data.typeCounts[type];\n delete this.data.objectsByType[type];\n this.data.onObjectDestroyed.dispatch(this.data, dataObject);\n for (let type in dataObject.relating) {\n const relations = dataObject.relating[type];\n for (let i = 0, len = relations.length; i < len; i++) {\n const relation = relations[i];\n const related = relation.relatedObject;\n const list = related.relating[type];\n for (let j = 0, k = 0, lenj = list.length; j < lenj; j++) {\n if (list[k].relatingObject === dataObject) {\n // Splice j from related.relating[type]\n list[j] = list[j]\n }\n }\n }\n }\n }\n }\n\n // if (dataObject.parent) {\n // const objects = dataObject.parent.objects;\n // objects.length--;\n // let f = false;\n // for (let i = 0, len = objects.length; i < len; i++) {\n // if (f || (f = objects[i] === dataObject)) {\n // objects[i] = objects[i + 1];\n // }\n // }\n // }\n }\n this.#destroyed = true;\n this.onBuilt.clear();\n super.destroy();\n }\n\n // #removePropertySetFromModels(dataObject: DataObject) {\n // for (let i = 0, len = dataObject.models.length; i < len; i++) {\n // if (dataObject.models[i] === this) {\n // dataObject.models = dataObject.models.splice(i, 1);\n // break;\n // }\n // }\n // }\n\n #removeObjectFromModels(dataObject: DataObject) {\n for (let i = 0, len = dataObject.models.length; i < len; i++) {\n if (dataObject.models[i] === this) {\n dataObject.models = dataObject.models.splice(i, 1);\n break;\n }\n }\n }\n}\n\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\n\nimport {DataModel} from \"./DataModel\";\nimport {DataObject} from \"./DataObject\";\nimport type {PropertySet} from \"./PropertySet\";\nimport type {DataModelParams} from \"./DataModelParams\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {SearchParams} from \"./SearchParams\";\n\n/**\n * An entity-relationship semantic data model.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\nexport class Data extends Component {\n\n /**\n * The {@link @xeokit/data!DataModel | DataModels} belonging to this Data, each keyed to\n * its {@link @xeokit/data!DataModel.id | DataModel.id}.\n */\n public readonly models: { [key: string]: DataModel };\n\n /**\n * The{@link @xeokit/data!PropertySet | PropertySets} belonging to this Data, mapped to{@link @xeokit/data!PropertySet.id | PropertySet.id}.\n */\n public readonly propertySets: { [key: string]: PropertySet };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} in this Data, mapped to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public readonly objects: { [key: string]: DataObject };\n\n /**\n * The root {@link @xeokit/data!DataObject | DataObjects} belonging to this Data, each keyed to its {@link @xeokit/data!DataObject.id | DataObject.id}.\n *\n * * This is the set of DataObjects in the DataModels within this Data that are not the *related* participant in\n * any {@link @xeokit/data!Relationship | Relationships}, where they have no incoming Relationships and\n * their {@link @xeokit/data!DataObject.relating} property is empty.\n */\n public readonly rootObjects: { [key: string]: DataObject };\n\n /**\n * The {@link @xeokit/data!DataObject | DataObjects} belonging to this Data, each map keyed to {@link @xeokit/data!DataObject.type | DataObject.type},\n * containing {@link @xeokit/data!DataObject | DataObjects} keyed to {@link @xeokit/data!DataObject.id | DataObject.id}.\n */\n public readonly objectsByType: { [key: string]: { [key: string]: DataObject } };\n\n /**\n * Tracks number of {@link @xeokit/data!DataObject | DataObjects} of each type in this Data.\n */\n public readonly typeCounts: { [key: string]: number };\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataModel | DataModel} has been created in this Data.\n *\n * @event\n */\n public readonly onModelCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataModel | DataModel} has been destroyed within this Data.\n *\n * @event\n */\n public readonly onModelDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataObject | DataObject} is created within this Data.\n *\n * @event\n */\n public readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/data!DataObject | DataObject} is destroyed within this Data.\n *\n * @event\n */\n public readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Creates a new Data.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n */\n constructor() {\n\n super(null, {});\n\n this.models = {};\n this.propertySets = {};\n this.objects = {};\n this.rootObjects = {};\n this.objectsByType = {};\n this.typeCounts = {};\n\n this.onModelCreated = new EventEmitter(new EventDispatcher());\n this.onModelDestroyed = new EventEmitter(new EventDispatcher());\n this.onObjectCreated = new EventEmitter(new EventDispatcher());\n this.onObjectDestroyed = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Creates a new {@link @xeokit/data!DataModel | DataModel} in this Data.\n *\n * Remember to call {@link @xeokit/data!DataModel.build | DataModel.build} when you've finished building or loading the DataModel. That will\n * fire events via {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated} and {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt}, to\n * indicate to any subscribers that the DataModel is built and ready for use.\n *\n * Note that while we're building/loading the SceneModel, each call that we make to {@link @xeokit/data!DataModel.createObject | DataModel.createObject}\n * will create a new {@link @xeokit/data!DataObject | DataObject}\n * in {@link @xeokit/data!Data.objects | Data.objects} and {@link @xeokit/data!DataModel.objects | DataModel.objects}, and will also fire an event\n * via {@link @xeokit/data!Data.onObjectCreated | Data.onObjectCreated}. However,\n * only when we've received the {@link @xeokit/data!Data.onModelCreated | Data.onModelCreated} and {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt}\n * events can we actually consider the DataModel to be fully constructed.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for more details on usage.\n *\n * @param dataModelParams Creation parameters for the new {@link @xeokit/data!DataModel | DataModel}.\n * @param [options] Options for creating the {@link @xeokit/data!DataModel | DataModel}.\n * @param [options.includeTypes] When provided, only create {@link @xeokit/data!DataObject | DataObjects} with types in this list.\n * @param [options.excludeRelating] When provided, never create {@link @xeokit/data!DataObject | DataObjects} with types in this list.\n * @returns {@link @xeokit/data!DataModel | DataModel}\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n * * A DataModel with the given ID already exists in this Data.\n */\n createModel(\n dataModelParams: DataModelParams,\n options?: {\n includeRelating?: string[],\n excludeRelating?: string[],\n }\n ): DataModel | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n let id = dataModelParams.id;\n if (this.models[id]) {\n return new SDKError(`DataModel already created in this Data: ${id}`);\n }\n // @ts-ignore\n const dataModel = new DataModel(this, id, dataModelParams, options);\n this.models[dataModel.id] = dataModel;\n dataModel.onDestroyed.one(() => { // DataModel#destroy() called\n delete this.models[dataModel.id];\n this.onModelDestroyed.dispatch(this, dataModel);\n });\n dataModel.onBuilt.one(() => { // DataModel#build() called\n this.onModelCreated.dispatch(this, dataModel);\n });\n return dataModel;\n }\n\n /**\n * Gets the {@link @xeokit/data!DataObject.id}s of the {@link DataObject | DataObjects} that have the given {@link DataObject.type}.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param type The type.\n * @returns {string[]}\n * * Array of {@link DataObject.id}s on success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n getObjectIdsByType(type: string): string[] | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n const objects = this.objectsByType[type];\n return objects ? Object.keys(objects) : [];\n }\n\n /**\n * Finds {@link DataObject | DataObjects} using a customized depth-first traversal.\n *\n * Usually we use this method to recursively find DataObjects of specific {@link DataObject.type | types} within\n * a hierarchy.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @param searchParams Search parameters.\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n * * The specified starting DataObject was not found in this Data.\n * * The specified starting DataObject is contained in a different Data than this one.\n */\n searchObjects(searchParams: SearchParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n const includeObjects = (searchParams.includeObjects && searchParams.includeObjects.length > 0) ? arrayToMap(searchParams.includeObjects) : null;\n const excludeObjects = (searchParams.excludeObjects && searchParams.excludeObjects.length > 0) ? arrayToMap(searchParams.excludeObjects) : null;\n const includeRelating = (searchParams.includeRelating && searchParams.includeRelating.length > 0) ? arrayToMap(searchParams.includeRelating) : null;\n const excludeRelating = (searchParams.excludeRelating && searchParams.excludeRelating.length > 0) ? arrayToMap(searchParams.excludeRelating) : null;\n\n function visit(dataObject: DataObject, depth: number) {\n if (!dataObject) {\n return;\n }\n let includeObject = true;\n if (excludeObjects && excludeObjects[dataObject.type]) {\n includeObject = false;\n } else { // @ts-ignore\n if (includeObjects && (!includeObjects[dataObject.type])) {\n includeObject = false;\n }\n }\n if (depth === 0 && searchParams.includeStart === false) {\n includeObject = false;\n }\n if (includeObject) {\n if (searchParams.resultObjectIds) {\n searchParams.resultObjectIds.push(dataObject.id);\n } else if (searchParams.resultObjects) {\n searchParams.resultObjects.push(dataObject);\n } else if (searchParams.resultCallback) {\n if (searchParams.resultCallback(dataObject)) {\n return; // Stop searching\n }\n }\n }\n const related = dataObject.related;\n for (let type in related) {\n const relations = related[type];\n if (relations) {\n for (let i = 0, len = relations.length; i < len; i++) {\n let includeRelation = true;\n if (excludeRelating && excludeRelating[dataObject.type]) {\n includeRelation = false;\n } else {\n if (includeRelating && (!includeRelating[dataObject.type])) {\n includeRelation = false;\n }\n }\n if (includeRelation) {\n visit(relations[i].relatedObject, depth + 1);\n }\n }\n }\n }\n }\n\n const depth = 0;\n if (searchParams.startObjectId) {\n const startObject = this.objects[searchParams.startObjectId];\n if (!startObject) {\n return new SDKError(`Failed to search DataObjects - starting DataObject not found in Data: \"${searchParams.startObjectId}\"`);\n }\n visit(startObject, depth);\n } else if (searchParams.startObject) {\n if (searchParams.startObject.data != this) {\n return new SDKError(`Failed to search DataObjects - starting DataObject not in same Data: \"${searchParams.startObjectId}\"`);\n }\n visit(searchParams.startObject, depth + 1);\n } else {\n for (let id in this.rootObjects) {\n visit(this.rootObjects[id], depth + 1);\n }\n }\n }\n\n /**\n * Destroys all contained {@link DataModel | DataModels}.\n *\n * * Fires {@link Data.onModelDestroyed | Data.onModelDestroyed} and {@link DataModel.onDestroyed | DataModel.onDestroyed}\n * for each existing DataModel in this Data.\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n clear(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n for (let id in this.models) {\n this.models[id].destroy();\n }\n }\n\n /**\n * Destroys this Data and all contained {@link DataModel | DataModels}.\n *\n * * Fires {@link Data.onModelDestroyed | Data.onModelDestroyed} and {@link DataModel.onDestroyed | DataModel.onDestroyed}\n * for each existing DataModels in this Data.\n * * Unsubscribes all subscribers to {@link Data.onModelCreated | Data.onModelCreated}, {@link Data.onModelDestroyed | Data.onModelDestroyed}, {@link DataModel.onDestroyed | DataModel.onDestroyed}\n *\n * See {@link \"@xeokit/data\" | @xeokit/data} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Data has already been destroyed.\n */\n destroy(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Data already destroyed\");\n }\n this.clear();\n this.onModelCreated.clear();\n this.onModelDestroyed.clear();\n super.destroy();\n }\n}\n\nfunction arrayToMap(array: any[]): { [key: string]: any } {\n const map: { [key: string]: any } = {};\n for (let i = 0, len = array.length; i < len; i++) {\n map[array[i]] = true;\n }\n return map;\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2FscratchModel.svg)](https://badge.fury.io/js/%40xeokit%2FscratchModel)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/scratchModel/badge)](https://www.jsdelivr.com/package/npm/@xeokit/scratchModel)\n *\n * \n *\n * # xeokit Scene Representation\n *\n * ---\n *\n * ### *The SDK's buildable, viewable, importable and exportable 3D scene representation*\n *\n * ---\n *\n * The xeokit SDK facilitates the management of model representations through a scene graph that incorporates the\n * model's objects, geometries, and materials. This scene graph functions seamlessly in both the browser and NodeJS\n * environments, enabling the generation of models, format conversion, and the provision of content for the SDK's\n * model viewer.\n *\n * To elaborate further:\n *\n * * The {@link @xeokit/scene!Scene | Scene} acts as a container for {@link @xeokit/scene!SceneModel | SceneModels}, which, in turn,\n * comprise {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | SceneMeshes}, {@link @xeokit/scene!SceneGeometry | SceneGeometries}, and {@link @xeokit/scene!SceneTexture | SceneTextures}.\n * * SceneTextures undergo compression to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) via the Basis Universal codec.\n * * SceneGeometry undergoes compression through quantization.\n * * Use a {@link \"@xeokit/viewer\" | Viewer} to view SceneModels in the browser. A Viewer equipped with a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} can view a Scene that has KTX2-compressed textures.\n * * Import SceneModels from a variety of model file formats using importer functions like {@link \"@xeokit/gltf\" | loadGLTF}, {@link \"@xeokit/las\" | loadLAS}, {@link \"@xeokit/cityjson\" | loadCityJSON}, and {@link \"@xeokit/dtx\" | loadDTX}.\n * * Export SceneModels to the native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format through {@link \"@xeokit/dtx\" | saveDTX}.\n * * Create SceneModels programmatically using builder methods like {@link @xeokit/scene!Scene.createModel | Scene.createModel},\n * {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}, {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh},\n * {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}, and {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}. Add geometry\n * primitives using mesh generator functions like {@link @xeokit/procgen!buildBoxGeometry | buildBoxGeometry}, {@link @xeokit/procgen!buildSphereGeometry | buildSphereGeometry}, {@link @xeokit/procgen!buildTorusGeometry | buildTorusGeometry}, {@link @xeokit/procgen!buildCylinderGeometry | buildCylinderGeometry}, {@link @xeokit/procgen!buildPlaneGeometry | buildPlaneGeometry} and {@link @xeokit/procgen!buildVectorTextGeometry | buildVectorTextGeometry}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNVEuPmzAQ_ivIp3bFog1xeF270qpSo0qbPVVcHHuauAKMbLNKGuW_17wSQwAVDoZvvnmP54KoYIASRDOi1CsnB0nytGBcAtVcFM6P97RwmqdhODsKBVx6rMElEA1bYyb78nUgyIDIIZTXLGUjYv_HeLpB1wlvjWnLJWf375F67QLUEWzgACIHLfkA1HDSlYQd6AnUgtrkfjZe7FS6pI2vR_StdXh-lHy09mcFJhxbtq94xmyAgdJSWIanytUGO2iRXbGJCjmE7PeLHTAazkwHqMiEtBpSEsr1-Q7kxNT-dP_v2mEx7r1YiqEr0XQYCwrG7GLoHc0KGDTJMk7fRXU4FqDUA0NQmlXK3I4HCeRcKf4JI8FUeP2UzAVXSp5zbWxZkFC8vpTqFajISzOoajuqbvW5ILzpf-sIwAaaUzA3u4Da0wLsAN-H4C29_mwSdFK0StHT87M5Pe8pRdZtHhAbZIbdDvP_2J1gttBcHGamh2HUQ25xe-LbaGDHwzUwj3ut0QQseviwLkD9tirIRTnInHBm1nMzJCnSR8ghRYn5ZPCbVJlOUVpcDZVUWuzOBUWJlhW4qCqZ2SvdQu9BYFwLue02fn24qCQFSi7ohBI_ePFWqxBHgb-J1zhcYxedDbz2cBwGEY7xKorCOPKvLvorhLH64kV-gHHgxziM8AZv4sber0ZYu7z-A6rh2zE?type=png)](https://mermaid.live/edit#pako:eNqNVEuPmzAQ_ivIp3bFog1xeF270qpSo0qbPVVcHHuauAKMbLNKGuW_17wSQwAVDoZvvnmP54KoYIASRDOi1CsnB0nytGBcAtVcFM6P97RwmqdhODsKBVx6rMElEA1bYyb78nUgyIDIIZTXLGUjYv_HeLpB1wlvjWnLJWf375F67QLUEWzgACIHLfkA1HDSlYQd6AnUgtrkfjZe7FS6pI2vR_StdXh-lHy09mcFJhxbtq94xmyAgdJSWIanytUGO2iRXbGJCjmE7PeLHTAazkwHqMiEtBpSEsr1-Q7kxNT-dP_v2mEx7r1YiqEr0XQYCwrG7GLoHc0KGDTJMk7fRXU4FqDUA0NQmlXK3I4HCeRcKf4JI8FUeP2UzAVXSp5zbWxZkFC8vpTqFajISzOoajuqbvW5ILzpf-sIwAaaUzA3u4Da0wLsAN-H4C29_mwSdFK0StHT87M5Pe8pRdZtHhAbZIbdDvP_2J1gttBcHGamh2HUQ25xe-LbaGDHwzUwj3ut0QQseviwLkD9tirIRTnInHBm1nMzJCnSR8ghRYn5ZPCbVJlOUVpcDZVUWuzOBUWJlhW4qCqZ2SvdQu9BYFwLue02fn24qCQFSi7ohBI_ePFWqxBHgb-J1zhcYxedDbz2cBwGEY7xKorCOPKvLvorhLH64kV-gHHgxziM8AZv4sber0ZYu7z-A6rh2zE)\n *\n *
    \n *\n * ### Notes\n *\n * * SceneTextureSets are collections of textures that are shared among SceneMeshes and are organized into texture atlasses to optimize rendering efficiency on GPUs.\n * * Each SceneMesh can be assigned to only one SceneObject, whereas each SceneGeometry and SceneTextureSet can be allocated to an unlimited number of SceneMeshes.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/scene\n * ````\n *\n * ## Usage\n *\n * * [Creating a SceneModel](#creating-a-scenemodel)\n * * [Reading the SceneModel](#reading-the-scenemodel)\n * * [SceneGeometry Compression](#geometry-compression)\n * * [SceneTexture Compression](#texture-compression)\n *\n * ### Creating a SceneModel\n *\n * In the example below, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} that will model the simple table furniture model\n * shown in the image above. Our SceneModel will get five\n * {@link @xeokit/scene!SceneObject | SceneObjects}, five {@link @xeokit/scene!SceneMesh | SceneMeshes},\n * a {@link @xeokit/scene!SceneGeometry | SceneGeometry} and a {@link @xeokit/scene!SceneTexture | SceneTexture}.\n *\n * When we've finished constructing our SceneModel, we'll call {@link @xeokit/scene!SceneModel.build | SceneModel.build}, which\n * (asynchronously) compresses our SceneTexture.\n *\n * At that point, we can use the SceneModel. For example, we could export it to xeokit's native [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx)\n * file format using {@link \"@xeokit/dtx\" | saveDTX}, or view it in the Browser using a {@link \"@xeokit/viewer\" | Viewer}.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {TrianglesPrimitive, LinearEncoding, LinearFilter, ClampToEdgeWrapping} from \"@xeokit/constants\";\n *\n * // Scene is the container of SceneModels\n *\n * const theScene = new Scene();\n *\n * const sceneModel = theScene.createModel({\n * id: \"theModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n *\n * // Most SDK methods return an SDKError when\n * // something goes wrong.\n *\n * // We'll use some SDKErrors in this example\n * // to demonstrate where we can use them.\n *\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * const geometry = sceneModel.createGeometry({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [ // Floats\n * 1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, -1, 1, -1, -1,\n * -1, -1\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n *\n * if (geometry instanceof SDKError) {\n * console.log(geometry.message);\n * }\n *\n * const texture = sceneModel.createTexture({\n * id: \"colorTexture\",\n * src: \"./assets/sample_etc1s.ktx2\",\n * preloadColor: [1, 0, 0, 1],\n * flipY: false,\n * encoding: LinearEncoding,\n * magFilter: LinearFilter,\n * minFilter: LinearFilter,\n * wrapR: ClampToEdgeWrapping,\n * wrapS: ClampToEdgeWrapping,\n * wrapT: ClampToEdgeWrapping,\n * });\n *\n * if (texture instanceof SDKError) {\n * console.log(texture.message);\n * }\n *\n * const theTextureSet = sceneModel.createTextureSet({\n * id: \"theTextureSet\",\n * colorTextureId: \"colorTexture\"\n * });\n *\n * if (theTextureSet instanceof SDKError) {\n * console.log(theTextureSet.message);\n * }\n *\n * const redLegMesh = sceneModel.createLayerMesh({\n * id: \"redLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [-4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1, 0.3, 0.3],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * if (redLegMesh instanceof SDKError) {\n * console.log(redLegMesh.message);\n * }\n *\n * const greenLegMesh = sceneModel.createLayerMesh({\n * id: \"greenLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [0.3, 1.0, 0.3],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const blueLegMesh = sceneModel.createLayerMesh({\n * id: \"blueLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [4, -6, 4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [0.3, 0.3, 1.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const yellowLegMesh = sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\",\n * geometryId: \"boxGeometry\",\n * position: [-4, -6, 4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1.0, 1.0, 0.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * const tableTopMesh = sceneModel.createLayerMesh({\n * id: \"tableTopMesh\",\n * geometryId: \"boxGeometry\",\n * position: [0, -3, 0],\n * scale: [6, 0.5, 6],\n * rotation: [0, 0, 0],\n * color: [1.0, 0.3, 1.0],\n * textureSetId: \"theTextureSet\"\n * });\n *\n * // Create five SceneObjects, each using a SceneMesh.\n * // A SceneMesh belongs to exactly one SceneObject.\n *\n * const redLegSceneObject = sceneModel.createObject({\n * id: \"redLegObject\",\n * meshIds: [\"redLegMesh\"]\n * });\n *\n * if (redLegSceneObject instanceof SDKError) {\n * console.log(redLegSceneObject.message);\n * }\n *\n * const greenLegSceneObject = sceneModel.createObject({\n * id: \"greenLegObject\",\n * meshIds: [\"greenLegMesh\"]\n * });\n *\n * const blueLegSceneObject = sceneModel.createObject({\n * id: \"blueLegObject\",\n * meshIds: [\"blueLegMesh\"]\n * });\n *\n * const yellowLegSceneObject = sceneModel.createObject({\n * id: \"yellowLegObject\",\n * meshIds: [\"yellowLegMesh\"]\n * });\n *\n * const tableTopSceneObject = sceneModel.createObject({\n * id: \"tableTopObject\",\n * meshIds: [\"tableTopMesh\"]\n * });\n *\n * // Expect an event when we build the SceneModel\n *\n * sceneModel.onBuilt.subscribe((theSceneModel)=>{ });\n *\n * // Expect an event when we destroy the SceneModel\n *\n * sceneModel.onDestroyed.subscribe((theSceneModel)=>{ });\n *\n * // Now build the SceneModel\n *\n * sceneModel.build().then(()=> {\n * // SceneModel is ready for use\n *\n * }).catch((sdkError) => {\n * console.log(sdkError.message);\n * });\n * }\n * ````\n *\n * ### Reading the SceneModel\n *\n * Now that we've built our SceneModel, we can read all of its components. Note that the {@link @xeokit/scene!SceneTexture} and {@link @xeokit/scene!SceneGeometry}\n * we just created will now be compressed.\n *\n * ````javascript\n * const theSceneModel = theScene.models[\"theModel\"];\n * const theTexture = theSceneModel.textures[\"theColorTexture\"];\n * const theTextureSet = theSceneModel.textureSets[\"theTextureSet\"];\n * const boxGeometry = theSceneModel.geometries[\"boxGeometry\"];\n * const theTableTopMesh = theSceneModel.meshes[\"tableTopMesh\"];\n * const theTableTopObject = theSceneModel.objects[\"tableTopObject\"];\n * const theTableTopObjectAgain = theScene.objects[\"tableTopObject\"];\n * ````\n *\n * ### SceneGeometry Compression\n *\n * The geometry from our query example requires a closer look. Internally, the {@link @xeokit/scene!SceneModel.createGeometry}\n * method uses the {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function to compress the geometry and generate edge indices for\n * rendering it as a wireframe.\n *\n * We provide that function as part of the API in case users want to pre-compress the geometry themselves\n * and then use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * to create the compressed geometry directly.\n *\n * The {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function performs these steps to compress the geometry:\n *\n * * Simplifies geometry by combining duplicate positions and adjusting indices\n * * Generates edge indices for triangle meshes\n * * Ignores normals (our shaders auto-generate them)\n * * Quantizes positions and UVs as 16-bit unsigned integers\n *\n * Our compressed geometry then looks like this:\n *\n * ````javascript\n * const positions = boxGeometry.positions;\n * const indices = boxGeometry.indices;\n * const edgeIndices = boxGeometry.edgeIndices;\n * // ...\n * ````\n *\n * In the example below, we'll now use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress\n * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a\n * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ````javascript\n * import {compressGeometryParams} from \"@xeokit/compression\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n *\n * const geometryCompressedParams = compressGeometryParams({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [ // Floats\n * 1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, 1, 1,\n * -1, -1, 1, 1, -1, -1, 1, -1, -1,\n * -1, -1\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4,\n * 6, 7, 8, 9, 10, 8, 10, 11, 12,\n * 13, 14, 12, 14, 15, 16, 17, 18,\n * 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n * ````\n *\n * The value of our new {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} is shown below.\n *\n * We can see that:\n *\n * * Vertex positions are now quantized to 16-bit integers\n * * Edge indices generated for our TrianglesPrimitive\n * * Quantization range given in axis-sligned bounding box ````aabb````, to de-quantize the positions within the Viewer\n *\n * ````javascript\n * {\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive,\n * aabb: [\n * -1, -,1 -,1, 1, 1, 1\n * ],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 65525, 65525,\n * 0, 0, 65525, 65525, 0, 0, 65525, 0, 0,\n * 0, 0\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ],\n * edgeIndices: [\n * 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7,\n * 3, 2, 4, 7, 6, 4, 6\n * ]\n * }\n * ````\n *\n * ### SceneTexture Compression\n *\n * The {@link @xeokit/scene!SceneTexture} from our query example also requires a closer look. Internally, the {@link @xeokit/scene!SceneModel.build}\n * method uses [Basis](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#basis) to compress the SceneTexture to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2). We can now read that transcoded data\n * back from {@link @xeokit/scene!SceneTexture.buffers | SceneTexture.buffers}:\n *\n * ````javascript\n * const theTexture = theSceneModel.textures[\"theColorTexture\"];\n *\n * const buffers = thetexture.buffers; // ArrayBuffer[]\n * ````\n *\n * ### Preparing a SceneModel for Progressive Loading\n *\n * TODO: Create in separate tutorial - too complex for here\n *\n * @module @xeokit/scene\n */\n\nexport * from \"./Scene\";\nexport * from \"./SceneModel\";\nexport * from \"./SceneModelStats\";\nexport * from \"./SceneObject\";\nexport * from \"./SceneTexture\";\nexport * from \"./SceneTextureSet\";\nexport * from \"./SceneGeometry\";\nexport * from \"./SceneMesh\";\n\nexport * from \"./RendererGeometry\";\nexport * from \"./RendererMesh\";\nexport * from \"./RendererObject\";\nexport * from \"./RendererModel\";\nexport * from \"./RendererTexture\";\nexport * from \"./RendererTextureSet\";\n\nexport * from \"./SceneMeshParams\";\nexport * from \"./SceneObjectParams\";\nexport * from \"./SceneTextureParams\";\nexport * from \"./SceneTextureSetParams\";\nexport * from \"./SceneGeometryCompressedParams\";\nexport * from \"./SceneGeometryParams\";\nexport * from \"./SceneModelParams\";\nexport * from \"./compressGeometryParams\";\n\nexport * from \"./getSceneObjectGeometry\";\n\nexport * from \"./SceneModelStreamParams\";\nexport * from \"./SceneModelStreamLayerParams\";\n\nexport * from \"./buildMat4\"\n", "import {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {type FloatArrayParam, MAX_DOUBLE, MIN_DOUBLE} from \"@xeokit/math\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {SceneModel} from \"./SceneModel\";\nimport type {SceneObject} from \"./SceneObject\";\nimport type {SceneModelParams} from \"./SceneModelParams\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneTile} from \"./SceneTile\";\n\n/**\n * A scene representation.\n *\n * A Scene is a container of {@link @xeokit/scene!SceneModel | SceneModels} and {@link @xeokit/scene!SceneObject | SceneObjects}.\n */\nexport class Scene extends Component {\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModels} belonging to this Scene, each keyed to\n * its {@link @xeokit/scene!SceneModel.id | SceneModel.id}.\n */\n public readonly models: { [key: string]: SceneModel };\n\n /**\n * The {@link @xeokit/scene!SceneObject | SceneObjects} in this Scene, mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n */\n public readonly objects: { [key: string]: SceneObject };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} in this Scene\n */\n public readonly tiles: { [key: string]: SceneTile };\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneModel | SceneModel} is created in this Scene.\n *\n * @event\n */\n public readonly onModelCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneModel | SceneModel} is destroyed in this Scene.\n *\n * @event\n */\n public readonly onModelDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneTile} is created in this Scene.\n *\n * @event\n */\n public readonly onTileCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/scene!SceneTile} is destroyed in this Scene.\n *\n * @event\n */\n public readonly onTileDestroyed: EventEmitter;\n\n #onModelBuilts: { [key: string]: any };\n #onModelDestroys: { [key: string]: any };\n #center: Float64Array;\n #aabbDirty: boolean;\n #aabb: Float64Array;\n\n /**\n * Creates a new Scene.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\n constructor() {\n\n super(null, {});\n\n this.#aabb = createAABB3();\n this.#aabbDirty = true;\n\n this.models = {};\n this.objects = {};\n this.tiles = {};\n\n this.#onModelBuilts = {};\n this.#onModelDestroys = {};\n this.onModelCreated = new EventEmitter(new EventDispatcher());\n this.onModelDestroyed = new EventEmitter(new EventDispatcher());\n this.onTileCreated = new EventEmitter(new EventDispatcher());\n this.onTileDestroyed = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets the collective World-space 3D center of all the {@link @xeokit/scene!SceneModel | SceneModels} in this Scene.\n */\n get center(): Float64Array {\n if (this.#aabbDirty) {\n const aabb = this.aabb; // Lazy-build\n this.#center[0] = (aabb[0] + aabb[3]) / 2;\n this.#center[1] = (aabb[1] + aabb[4]) / 2;\n this.#center[2] = (aabb[2] + aabb[5]) / 2;\n }\n return this.#center;\n }\n\n /**\n * Gets the collective World-space 3D [axis-aligned boundary](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#aabb) of all the {@link @xeokit/scene!SceneModel | SceneModels} in this Scene.\n *\n * The boundary will be of the form ````[xMin, yMin, zMin, xMax, yMax, zMax]````.\n */\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n let xmin = MAX_DOUBLE;\n let ymin = MAX_DOUBLE;\n let zmin = MAX_DOUBLE;\n let xmax = MIN_DOUBLE;\n let ymax = MIN_DOUBLE;\n let zmax = MIN_DOUBLE;\n let aabb;\n const objects = this.objects;\n let valid = false;\n for (const objectId in objects) {\n if (objects.hasOwnProperty(objectId)) {\n const object = objects[objectId];\n // if (object.collidable === false) {\n // continue;\n // }\n aabb = object.aabb;\n if (aabb[0] < xmin) {\n xmin = aabb[0];\n }\n if (aabb[1] < ymin) {\n ymin = aabb[1];\n }\n if (aabb[2] < zmin) {\n zmin = aabb[2];\n }\n if (aabb[3] > xmax) {\n xmax = aabb[3];\n }\n if (aabb[4] > ymax) {\n ymax = aabb[4];\n }\n if (aabb[5] > zmax) {\n zmax = aabb[5];\n }\n valid = true;\n }\n }\n if (!valid) {\n xmin = -100;\n ymin = -100;\n zmin = -100;\n xmax = 100;\n ymax = 100;\n zmax = 100;\n }\n this.#aabb[0] = xmin;\n this.#aabb[1] = ymin;\n this.#aabb[2] = zmin;\n this.#aabb[3] = xmax;\n this.#aabb[4] = ymax;\n this.#aabb[5] = zmax;\n this.#aabbDirty = false;\n }\n return this.#aabb;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneModel | SceneModel} in this Scene.\n *\n * Remember to call {@link @xeokit/scene!SceneModel.build | SceneModel.build} when you've finished building or\n * loading the SceneModel. That will\n * fire events via {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated} and {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt}, to\n * indicate to any subscribers that the SceneModel is built and ready for use.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more details on usage.\n *\n * @param sceneModelParams Creation parameters for the new {@link @xeokit/scene!SceneModel | SceneModel}.\n * @returns *{@link @xeokit/scene!SceneModel | SceneModel}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n * * A SceneModel with the given ID already exists in this Scene.\n */\n createModel(sceneModelParams: SceneModelParams): SceneModel | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Scene already destroyed\");\n }\n const id = sceneModelParams.id;\n if (this.models[id]) {\n return new SDKError(`SceneModel already created in this Scene: ${id}`);\n }\n const sceneModel = new SceneModel(this, sceneModelParams);\n this.models[id] = sceneModel;\n sceneModel.onDestroyed.one(() => { // SceneModel#destroy() called\n delete this.models[sceneModel.id];\n this.#deregisterObjects(sceneModel);\n this.onModelDestroyed.dispatch(this, sceneModel);\n });\n sceneModel.onBuilt.one(() => { // SceneModel#build() called\n this.#registerObjects(sceneModel);\n this.onModelCreated.dispatch(this, sceneModel);\n });\n return sceneModel;\n }\n\n /**\n * @private\n */\n setAABBDirty() {\n if (!this.#aabbDirty) {\n this.#aabbDirty = true;\n //this.events.fire(\"aabb\", true);\n }\n }\n\n /**\n * Destroys all contained {@link @xeokit/scene!SceneModel | SceneModels}.\n *\n * * Fires {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed} and\n * {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed} for each existing SceneModel in this Scene.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n */\n clear(): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Scene already destroyed\");\n }\n for (let id in this.models) {\n this.models[id].destroy();\n }\n }\n\n /**\n * Destroys this Scene and all contained {@link @xeokit/scene!SceneModel | SceneModels}.\n *\n * * Fires {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed} and {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed}\n * for each existing SceneModels in this Data.\n * * Unsubscribes all subscribers to {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated}, {@link @xeokit/scene!Scene.onModelDestroyed | Scene.onModelDestroyed}, {@link @xeokit/scene!SceneModel.onDestroyed | SceneModel.onDestroyed}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n *\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * This Scene has already been destroyed.\n */\n destroy(): void | SDKError {\n this.clear();\n this.onModelCreated.clear();\n this.onModelDestroyed.clear();\n this.onTileCreated.clear();\n this.onTileDestroyed.clear();\n super.destroy();\n }\n\n #registerObjects(model: SceneModel) {\n const objects = model.objects;\n for (let id in objects) {\n const object = objects[id];\n this.objects[object.id] = object;\n }\n this.#aabbDirty = true;\n }\n\n #deregisterObjects(model: SceneModel) {\n const objects = model.objects;\n for (let id in objects) {\n const object = objects[id];\n delete this.objects[object.id];\n }\n this.#aabbDirty = true;\n }\n\n getTile(origin: FloatArrayParam):SceneTile {\n const tileId = `${origin[0]}-${origin[1]}-${origin[2]}`;\n let tile = this.tiles[tileId];\n if (tile) {\n tile.numObjects++;\n } else {\n tile = new SceneTile(this, tileId, origin);\n tile.numObjects = 1;\n this.tiles[tileId] = tile;\n this.onTileCreated.dispatch(this, tile);\n }\n return tile;\n }\n\n putTile(tile: SceneTile): void {\n if (this.tiles[tile.id] === undefined) {\n return;\n }\n if (--tile.numObjects <= 0) {\n delete this.tiles[tile.id];\n this.onTileDestroyed.dispatch(this, tile);\n }\n }\n\n\n}\n", "// import {KTX2BasisWriter} from \"@loaders.gl/textures\";\n// import {ImageLoader} from '@loaders.gl/images';\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneGeometry} from \"./SceneGeometry\";\nimport {SceneObject} from \"./SceneObject\";\nimport {SceneTextureSet} from \"./SceneTextureSet\";\nimport {SceneTexture} from \"./SceneTexture\";\nimport {SceneMesh} from \"./SceneMesh\";\nimport type {RendererModel} from \"./RendererModel\";\nimport type {SceneTextureSetParams} from \"./SceneTextureSetParams\";\nimport type {SceneGeometryParams} from \"./SceneGeometryParams\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport type {SceneMeshParams} from \"./SceneMeshParams\";\nimport type {SceneObjectParams} from \"./SceneObjectParams\";\nimport type {SceneTextureParams} from \"./SceneTextureParams\";\nimport {compressGeometryParams} from \"./compressGeometryParams\";\nimport type {SceneModelParams} from \"./SceneModelParams\";\nimport type {Scene} from \"./Scene\";\nimport type {SceneModelStats} from \"./SceneModelStats\";\nimport {\n composeMat4, createMat4,\n createVec3,\n eulerToQuat,\n identityMat4,\n identityQuat,\n mulVec3Scalar,\n translateMat4v\n} from \"@xeokit/matrix\";\nimport {SceneModelStreamParams} from \"./SceneModelStreamParams\";\nimport {SceneQuantizationRange} from \"./SceneQuantizationRange\";\nimport {SceneQuantizationRangeParams} from \"./SceneQuantizationRangeParams\";\nimport {SceneTile} from \"./SceneTile\";\nimport {createRTCModelMat} from \"@xeokit/rtc\";\n\n\n// DTX texture types\n\nconst COLOR_TEXTURE = 0;\nconst METALLIC_ROUGHNESS_TEXTURE = 1;\nconst NORMALS_TEXTURE = 2;\nconst EMISSIVE_TEXTURE = 3;\nconst OCCLUSION_TEXTURE = 4;\n\n// KTX2 encoding options for each texture type\n\nconst TEXTURE_ENCODING_OPTIONS: {\n [key: string]: any\n} = {}\n\nTEXTURE_ENCODING_OPTIONS[COLOR_TEXTURE] = {\n useSRGB: true,\n qualityLevel: 50,\n encodeUASTC: true,\n mipmaps: true\n};\n\nTEXTURE_ENCODING_OPTIONS[EMISSIVE_TEXTURE] = {\n useSRGB: true,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\nTEXTURE_ENCODING_OPTIONS[METALLIC_ROUGHNESS_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 50,\n mipmaps: true // Needed for GGX roughness shading\n};\n\nTEXTURE_ENCODING_OPTIONS[NORMALS_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\nTEXTURE_ENCODING_OPTIONS[OCCLUSION_TEXTURE] = {\n useSRGB: false,\n encodeUASTC: true,\n qualityLevel: 10,\n mipmaps: false\n};\n\n/**\n * xeokit SceneGeometry and Materials Model.\n *\n * * A representation of a model's geometry and materials within a {@link @xeokit/scene!Scene | Scene}.\n * * Contains {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | SceneMeshes}, {@link @xeokit/scene!SceneGeometry | Geometries} and {@link @xeokit/scene!SceneTexture | Textures}.\n * * Compresses textures using [Basis](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#basis)\n * * Viewable in the Browser with {@link @xeokit/viewer!Viewer | Viewer}\n * * Importable from various model file formats, using {@link @xeokit/gltf!loadGLTF | loadGLTF}, {@link @xeokit/dotbim!loadDotBIM | loadDotBIM}, {@link @xeokit/las!loadLAS | loadLAS}, {@link @xeokit/cityjson!loadCityJSON | loadCityJSON}, {@link @xeokit/dtx!loadDTX | loadDTX}, {@link @xeokit/xkt!loadXKT | loadXKT} (etc)\n * * Exportable to [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format using {@link @xeokit/dtx!saveDTX | saveDTX}\n * * Programmatically buildable using builder methods\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneModel extends Component {\n\n /**\n * Indicates what renderer resources will need to be allocated in a {@link @xeokit/viewer!Viewer | Viewer's}\n * {@link @xeokit/viewer!Renderer | Renderer} to support progressive loading for the {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\n public streamParams?: SceneModelStreamParams;\n\n /**\n * The {@link @xeokit/scene!Scene | Scene} that contains this SceneModel.\n */\n public readonly scene: Scene;\n\n /**\n * Whether IDs of {@link @xeokit/scene!SceneObject | SceneObjects} are globalized.\n *\n * When globalized, the IDs are prefixed with the value of {@link @xeokit/scene!SceneModel.id | SceneModel.id}\n *\n * This is ````false```` by default.\n */\n declare public readonly globalizedIds: boolean;\n\n /**\n * Unique ID of this SceneModel.\n *\n * SceneModel are stored against this ID in {@link @xeokit/scene!Scene.models | Scene.models}.\n */\n declare public readonly id: string;\n\n /**\n * If we want to view this SceneModel with a {@link @xeokit/viewer!Viewer | Viewer}, an\n * optional ID of a {@link @xeokit/viewer!ViewLayer | ViewLayer} to view it in.\n */\n public readonly layerId?: string;\n\n /**\n * Indicates if this SceneModel has already been built.\n *\n * * Set ````true```` by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n * * Subscribe to updates using {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt}\n * and {@link @xeokit/scene!Scene.onModelCreated | Scene.onModelCreated}.\n * * Don't create anything more in this SceneModel once it's built.\n */\n public built: boolean;\n\n /**\n * Indicates if this SceneModel has been destroyed.\n *\n * * Set ````true```` by {@link @xeokit/scene!SceneModel.destroy | SceneModel.destroy}.\n * * Don't create anything more in this SceneModel once it's destroyed.\n */\n declare readonly destroyed: boolean;\n\n /**\n * The edge threshold for automatic [edge primitive generation](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#geometry-edge-generation).\n */\n public readonly edgeThreshold: number;\n\n /**\n * {@link @xeokit/scene!SceneGeometry | Geometries} within this SceneModel, each mapped to {@link @xeokit/scene!SceneGeometry.id | SceneGeometry.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}.\n */\n public readonly geometries: { [key: string]: SceneGeometry };\n\n /**\n * {@link @xeokit/scene!SceneQuantizationRange | SceneQuantizationRanges} within this SceneModel, each mapped to {@link @xeokit/scene!SceneQuantizationRange.id | SceneQuantizationRange.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}.\n */\n public readonly quantizationRanges: { [key: string]: SceneQuantizationRange };\n\n /**\n * {@link @xeokit/scene!SceneTexture | Textures} within this SceneModel, each mapped to {@link @xeokit/scene!SceneTexture.id | SceneTexture.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}.\n * * Compressed asynchronously in {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n */\n public readonly textures: { [key: string]: SceneTexture };\n\n /**\n * {@link @xeokit/scene!SceneTextureSet | TextureSets} within this SceneModel, each mapped to {@link @xeokit/scene!SceneTextureSet.id | SceneTextureSet.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createTextureSet | SceneModel.createTextureSet}.\n */\n public readonly textureSets: { [key: string]: SceneTextureSet };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} used by this SceneModel, each mapped to {@link @xeokit/scene!SceneTile.id | SceneTile.id}.\n */\n public readonly tiles: { [key: string]: SceneTile };\n\n /**\n * The {@link @xeokit/scene!SceneTile | Tiles} used by this SceneModel.\n */\n public readonly tilesList: SceneTile [];\n\n /**\n * {@link @xeokit/scene!SceneMesh | SceneMeshes} within this SceneModel, each mapped to {@link @xeokit/scene!SceneMesh.id | SceneMesh.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh}.\n */\n public readonly meshes: { [key: string]: SceneMesh };\n\n /**\n * {@link @xeokit/scene!SceneObject | SceneObjects} within this SceneModel, each mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n *\n * * Created by {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}.\n */\n readonly objects: { [key: string]: SceneObject };\n\n /**\n * The axis-aligned 3D World-space boundary of this SceneModel.\n *\n * * Created by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n */\n public readonly aabb: Float64Array;\n\n /**\n * Emits an event when this {@link @xeokit/scene!SceneModel | SceneModel} has been built.\n *\n * * Triggered by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n *\n * @event onBuilt\n */\n public readonly onBuilt: EventEmitter;\n\n /**\n * Emits an event when this {@link @xeokit/scene!SceneModel | SceneModel} has been destroyed.\n *\n * * Triggered by {@link @xeokit/scene!SceneModel.destroy | SceneModel.destroy}.\n *\n * @event onDestroyed\n */\n declare public readonly onDestroyed: EventEmitter;\n\n /**\n * Internal interface through which a SceneModel can load updated content into a renderers.\n *\n * @internal\n */\n public rendererModel: RendererModel | null;\n\n /**\n * Statistics on this SceneModel.\n */\n public readonly stats: SceneModelStats;\n\n /**\n * TODO\n *\n * @see {@link @xeokit/scene!SceneModelParams | SceneModelParams}.\n */\n public readonly retained: boolean;\n\n #texturesList: SceneTexture[];\n #numObjects: number;\n #meshUsedByObject: { [key: string]: boolean };\n\n\n /**\n * @private\n */\n constructor(scene: Scene, sceneModelParams: SceneModelParams) {\n super(scene, {\n id: sceneModelParams.id\n });\n\n this.scene = scene;\n\n this.tiles = {};\n this.tilesList = [];\n\n this.onBuilt = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#numObjects = 0;\n this.#meshUsedByObject = {};\n\n this.streamParams = sceneModelParams.streamParams;\n this.globalizedIds = (!!sceneModelParams.globalizedIds);\n this.id = sceneModelParams.id || \"default\";\n this.layerId = sceneModelParams.layerId;\n this.edgeThreshold = 10;\n this.geometries = {};\n this.quantizationRanges = {};\n this.textures = {};\n this.#texturesList = [];\n this.textureSets = {};\n this.meshes = {};\n this.objects = {};\n this.aabb = createAABB3();\n this.built = false;\n this.rendererModel = null;\n\n this.stats = {\n numGeometries: 0,\n numLines: 0,\n numMeshes: 0,\n numObjects: 0,\n numPoints: 0,\n numTextureSets: 0,\n numTextures: 0,\n numTriangles: 0,\n numVertices: 0,\n textureBytes: 0\n };\n\n this.fromJSON(sceneModelParams);\n\n this.retained = (sceneModelParams.retained !== false);\n }\n\n /**\n * Adds components to this SceneModel.\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n *\n * @param sceneModelParams\n * @returns *void*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been built.\n * * If this SceneModel has already been destroyed.\n * * A duplicate component ({@link @xeokit/scene!SceneObject}, {@link @xeokit/scene!SceneMesh},\n * {@link @xeokit/scene!SceneGeometry}, {@link @xeokit/scene!SceneTexture} etc.) was already created within this SceneModel.\n */\n fromJSON(sceneModelParams: SceneModelParams): void | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add components to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add components to SceneModel - SceneModel already built\");\n }\n if (sceneModelParams.geometries) {\n for (let i = 0, len = sceneModelParams.geometries.length; i < len; i++) {\n this.createGeometry(sceneModelParams.geometries[i]);\n }\n }\n if (sceneModelParams.geometriesCompressed) {\n for (let i = 0, len = sceneModelParams.geometriesCompressed.length; i < len; i++) {\n this.createGeometryCompressed(sceneModelParams.geometriesCompressed[i]);\n }\n }\n if (sceneModelParams.textures) {\n for (let i = 0, len = sceneModelParams.textures.length; i < len; i++) {\n this.createTexture(sceneModelParams.textures[i]);\n }\n }\n if (sceneModelParams.textureSets) {\n for (let i = 0, len = sceneModelParams.textureSets.length; i < len; i++) {\n this.createTextureSet(sceneModelParams.textureSets[i]);\n }\n }\n if (sceneModelParams.meshes) {\n for (let i = 0, len = sceneModelParams.meshes.length; i < len; i++) {\n this.createMesh(sceneModelParams.meshes[i]);\n }\n }\n if (sceneModelParams.objects) {\n for (let i = 0, len = sceneModelParams.objects.length; i < len; i++) {\n this.createObject(sceneModelParams.objects[i]);\n }\n }\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneTexture} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneTexture} in {@link @xeokit/scene!SceneModel.textures | SceneModel.textures}.\n * * Textures are compressed asynchronously by {@link @xeokit/scene!SceneModel.build | SceneModel.build}.\n *\n * ### Usage\n *\n * ````javascript\n * const texture = sceneModel.createTexture({\n * id: \"myColorTexture\",\n * src: // Path to JPEG, PNG, KTX2,\n * image: // HTMLImageElement,\n * buffers: // ArrayBuffer[] containing KTX2 MIP levels\n * preloadColor: [1,0,0,1],\n * flipY: false,\n * encoding: LinearEncoding, // @xeokit/constants\n * magFilter: LinearFilter,\n * minFilter: LinearFilter,\n * wrapR: ClampToEdgeWrapping,\n * wrapS: ClampToEdgeWrapping,\n * wrapT: ClampToEdgeWrapping,\n * });\n *\n * const textureAgain = sceneModel.textures[\"myColorTexture\"];\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param textureParams - SceneTexture creation parameters.\n * @returns *{@link @xeokit/scene!SceneTexture}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * Invalid SceneTextureParams were given.\n * * SceneTexture with given ID already exists in this Scene.\n */\n createTexture(textureParams: SceneTextureParams): SceneTexture | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - SceneModel already built\");\n }\n if (!textureParams.imageData && !textureParams.src && !textureParams.buffers) {\n return new SDKError(\"Failed to create SceneTexture in SceneModel - Parameter expected: textureParams.imageData, textureParams.src or textureParams.buffers\");\n }\n if (this.textures[textureParams.id]) {\n return new SDKError(`Failed to create Texture in SceneModel - Texture already exists with this ID: ${textureParams.id}`);\n }\n if (textureParams.src) {\n const fileExt = textureParams.src.split('.').pop();\n // if (fileExt !== \"jpg\" && fileExt !== \"jpeg\" && fileExt !== \"png\") {\n // console.error(`Model does not support image files with extension '${fileExt}' - won't create texture '${textureParams.id}`);\n // return;\n // }\n }\n if (textureParams.imageData) {\n this.stats.textureBytes += (textureParams.imageData.width * textureParams.imageData.height * 4); // Guessing\n }\n const texture = new SceneTexture(textureParams);\n this.textures[textureParams.id] = texture;\n this.#texturesList.push(texture);\n this.stats.numTextures++;\n return texture;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneTextureSet} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneTextureSet} in {@link @xeokit/scene!SceneModel.textureSets | SceneModel.textureSets}.\n *\n * ### Usage\n *\n * ````javascript\n * const textureSet = sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\"\n * });\n *\n * const textureSetAgain = sceneModel.textureSets[\"myTextureSet\"];\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param textureSetParams SceneTextureSet creation parameters.\n *\n * @returns *{@link @xeokit/scene!SceneTextureSet}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * Invalid SceneTextureSetParams were given.\n * * SceneTextureSet with given ID already exists in this SceneModel.\n * * One or more of the given Textures could not be found in this SceneModel.\n */\n createTextureSet(textureSetParams: SceneTextureSetParams): SceneTextureSet | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneTextureSet in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneTextureSet in SceneModel - SceneModel already built\");\n }\n if (this.textureSets[textureSetParams.id]) {\n return new SDKError(`Failed to create TextureSet in SceneModel - TextureSet already exists with this ID: ${textureSetParams.id}`);\n }\n let colorTexture;\n if (textureSetParams.colorTextureId !== undefined && textureSetParams.colorTextureId !== null) {\n colorTexture = this.textures[textureSetParams.colorTextureId];\n if (!colorTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.colorTextureId} - ensure that you create it first with createTexture()`);\n }\n colorTexture.channel = COLOR_TEXTURE;\n }\n let metallicRoughnessTexture;\n if (textureSetParams.metallicRoughnessTextureId !== undefined && textureSetParams.metallicRoughnessTextureId !== null) {\n metallicRoughnessTexture = this.textures[textureSetParams.metallicRoughnessTextureId];\n if (!metallicRoughnessTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.metallicRoughnessTextureId} - ensure that you create it first with createTexture()`);\n }\n metallicRoughnessTexture.channel = METALLIC_ROUGHNESS_TEXTURE;\n }\n let normalsTexture;\n if (textureSetParams.normalsTextureId !== undefined && textureSetParams.normalsTextureId !== null) {\n normalsTexture = this.textures[textureSetParams.normalsTextureId];\n if (!normalsTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.normalsTextureId} - ensure that you create it first with createTexture()`);\n }\n normalsTexture.channel = NORMALS_TEXTURE;\n }\n let emissiveTexture;\n if (textureSetParams.emissiveTextureId !== undefined && textureSetParams.emissiveTextureId !== null) {\n emissiveTexture = this.textures[textureSetParams.emissiveTextureId];\n if (!emissiveTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.emissiveTextureId} - ensure that you create it first with createTexture()`);\n }\n emissiveTexture.channel = EMISSIVE_TEXTURE;\n }\n let occlusionTexture;\n if (textureSetParams.occlusionTextureId !== undefined && textureSetParams.occlusionTextureId !== null) {\n occlusionTexture = this.textures[textureSetParams.occlusionTextureId];\n if (!occlusionTexture) {\n return new SDKError(`Failed to create TextureSet in SceneModel - Texture not found: ${textureSetParams.occlusionTextureId} - ensure that you create it first with createTexture()`);\n }\n occlusionTexture.channel = OCCLUSION_TEXTURE;\n }\n const textureSet = new SceneTextureSet(textureSetParams, {\n emissiveTexture,\n occlusionTexture,\n metallicRoughnessTexture,\n colorTexture\n });\n this.textureSets[textureSetParams.id] = textureSet;\n this.stats.numTextureSets++;\n return textureSet;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from non-compressed geometry parameters.\n *\n * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}.\n *\n * ### Usage\n *\n * ````javascript\n * const boxGeometry = sceneModel.createGeometry({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive, // @xeokit/constants\n * positions: [\n * 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, // v0-v1-v2-v3 front\n * 1, 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, // v0-v3-v4-v1 right\n * 1, 1, 1, 1, 1, -1, -1, 1, -1, -1, 1, 1, // v0-v1-v6-v1 top\n * -1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, // v1-v6-v7-v2 left\n * -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, 1,// v7-v4-v3-v2 bottom\n * 1, -1, -1, -1, -1, -1, -1, 1, -1, 1, 1, -1 // v4-v7-v6-v1 back\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 4, 5, 6, 4, 6, 7, 8, 9, 10, 8, 10, 11, 12, 13, 14, 12, 14, 15,\n * 16, 17, 18, 16, 18, 19, 20, 21, 22, 20, 22, 23\n * ]\n * });\n *\n * if (boxGeometry instanceof SDKError) {\n * console.log(boxGeometry.message);\n * } else {\n * const boxGeometryAgain = sceneModel.geometries[\"boxGeometry\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param geometryParams Non-compressed geometry parameters.\n * @returns *{@link @xeokit/scene!SceneGeometry}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneGeometryParams were given.\n * * SceneGeometry of given ID already exists in this SceneModel.\n * * Unsupported primitive type given.\n * * Mandatory vertex positions were not given. Vertex positions are mandatory for all primitive types.\n * * Mandatory indices were not given for primitive type that is not {@link @xeokit/constants!PointsPrimitive}. Indices are mandatory for all primitive types except PointsPrimitive.\n * * Indices out of range of vertex positions.\n * * Indices out of range of vertex UVs.\n * * Mismatch between given quantities of vertex positions and UVs.\n */\n createGeometry(geometryParams: SceneGeometryParams): SceneGeometry | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - SceneModel already built\");\n }\n if (!geometryParams) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Parameters expected: geometryParams\");\n }\n if (geometryParams.id === null || geometryParams.id === undefined) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Parameter expected: geometryParams.id\");\n }\n const geometryId = geometryParams.id;\n if (this.geometries[geometryId]) {\n return new SDKError(`Failed to create Geometry in SceneModel - Geometry with this ID already created: ${geometryId}`);\n }\n const primitive = geometryParams.primitive;\n if (primitive !== PointsPrimitive && primitive !== LinesPrimitive && primitive !== TrianglesPrimitive && primitive !== SolidPrimitive && primitive !== SurfacePrimitive) {\n return new SDKError(`Failed to create Geometry in SceneModel - Unsupported value for geometryParams.primitive: '${primitive}' - supported values are PointsPrimitive, LinesPrimitive, TrianglesPrimitive, SolidPrimitive and SurfacePrimitive`);\n }\n if (!geometryParams.positions) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - Param expected: geometryParams.positions\");\n }\n if (!geometryParams.indices && primitive !== PointsPrimitive) {\n return new SDKError(`Failed to create Geometry in SceneModel - Param expected: geometryParams.indices (required for primitive type)`);\n }\n if (geometryParams.uvs) {\n if (geometryParams.uvs.length / 2 !== geometryParams.positions.length / 3) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - mismatch between given quantities of vertex positions and UVs\");\n }\n }\n if (geometryParams.indices) {\n const lastPositionsIdx = geometryParams.positions.length / 3;\n for (let i = 0, len = geometryParams.indices.length; i < len; i++) {\n const idx = geometryParams.indices[i];\n if (idx < 0 || idx >= lastPositionsIdx) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - indices out of range of vertex positions\");\n }\n if (geometryParams.uvs) {\n const lastUVsIdx = geometryParams.uvs.length / 2;\n if (idx < 0 || idx >= lastUVsIdx) {\n return new SDKError(\"Failed to create SceneGeometry in SceneModel - indices out of range of vertex UVs\");\n }\n }\n }\n }\n const geometry = new SceneGeometry(compressGeometryParams(geometryParams));\n this.geometries[geometryId] = geometry;\n this.stats.numGeometries++;\n if (geometryParams.indices) {\n if (geometry.primitive === TrianglesPrimitive) {\n this.stats.numTriangles += geometryParams.indices.length / 3;\n } else if (geometry.primitive === LinesPrimitive) {\n this.stats.numLines += geometryParams.indices.length / 2;\n }\n } else if (geometry.primitive === PointsPrimitive) {\n this.stats.numPoints += geometryParams.positions.length / 3;\n }\n this.stats.numVertices += geometryParams.positions.length / 3;\n return geometry;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from pre-compressed geometry parameters.\n *\n * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}.\n * * Use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams}\n * into {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * ### Usage\n *\n * ````javascript\n * const boxGeometry = sceneModel.createGeometryCompressed({\n * id: \"boxGeometry\",\n * primitive: TrianglesPrimitive, // @xeokit/constants\n * aabb: [-1,-1,-1, 1,1,1],\n * positionsCompressed: [\n * 65525, 65525, 65525, 0, 65525, 65525, 0, 0,\n * 65525, 65525, 0, 65525, 65525, 0, 0, 65525,\n * 65525, 0, 0, 65525, 0, 0, 0, 0\n * ],\n * indices: [\n * 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6,\n * 0, 6, 1, 1, 6, 7, 1, 7, 2, 7, 4, 3, 7, 3, 2,\n * 4, 7, 6, 4, 6, 5\n * ]\n * });\n *\n * if (boxGeometry instanceof SDKError) {\n * console.log(boxGeometry.message);\n * } else {\n * const boxGeometryAgain = sceneModel.geometries[\"boxGeometry\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param geometryCompressedParams Pre-compressed geometry parameters.\n * @returns *{@link @xeokit/scene!SceneGeometry}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneGeometryParams were given.\n * * SceneGeometry of given ID already exists in this SceneModel.\n * * Unsupported primitive type given.\n * * Mandatory vertex positions were not given. Vertex positions are mandatory for all primitive types.\n * * Mandatory indices were not given for primitive type that is not {@link @xeokit/constants!PointsPrimitive}. Indices are mandatory for all primitive types except PointsPrimitive.\n * * Indices out of range of vertex positions.\n * * Indices out of range of vertex UVs.\n * * Mismatch between given quantities of vertex positions and UVs.\n */\n createGeometryCompressed(geometryCompressedParams: SceneGeometryCompressedParams): SceneGeometry | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - SceneModel already built\");\n }\n if (!geometryCompressedParams) {\n return new SDKError(\"Failed to add compressed SceneGeometry to SceneModel - Parameters expected: geometryCompressedParams\");\n }\n const geometryId = geometryCompressedParams.id;\n if (this.geometries[geometryId]) {\n return new SDKError(`Failed to add compressed Geometry to SceneModel - Geometry with this ID already created: ${geometryId}`);\n }\n const primitive = geometryCompressedParams.primitive;\n if (primitive !== PointsPrimitive && primitive !== LinesPrimitive && primitive !== TrianglesPrimitive && primitive !== SolidPrimitive && primitive !== SurfacePrimitive) {\n return new SDKError(`Failed to add compressed Geometry to SceneModel - Unsupported value for geometryCompressedParams.primitive: '${primitive}' - supported values are PointsPrimitive, LinesPrimitive, TrianglesPrimitive, SolidPrimitive and SurfacePrimitive`);\n }\n const geometry = new SceneGeometry(geometryCompressedParams);\n this.geometries[geometryId] = geometry;\n this.stats.numGeometries++;\n return geometry;\n }\n\n /**\n *\n * @param quantizationRangeParams\n */\n createQuantizationRange(quantizationRangeParams: SceneQuantizationRangeParams): SceneQuantizationRange | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - SceneModel already built\");\n }\n if (!quantizationRangeParams) {\n return new SDKError(\"Failed to add SceneQuantizationRange to SceneModel - Parameters expected: geometryCompressedParams\");\n }\n const quantizationRangeId = quantizationRangeParams.id;\n if (this.quantizationRanges[quantizationRangeId]) {\n return new SDKError(`Failed to add SceneQuantizationRange to SceneModel - SceneQuantizationRange with this ID already created: ${quantizationRangeId}`);\n }\n const quantizationRange = new SceneQuantizationRange(quantizationRangeParams);\n this.quantizationRanges[quantizationRangeId] = quantizationRange;\n return quantizationRange;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneMesh} within this SceneModel.\n *\n * * Stores the new {@link @xeokit/scene!SceneMesh} in {@link @xeokit/scene!SceneModel.meshes | SceneModel.meshes}.\n * * A {@link @xeokit/scene!SceneMesh} can be owned by one {@link @xeokit/scene!SceneObject}, which can own multiple {@link @xeokit/scene!SceneMesh}es.\n *\n * ### Usage\n *\n * ````javascript\n * const redBoxMesh = sceneModel.createLayerMesh({\n * id: \"redBoxMesh\",\n * geometryId: \"boxGeometry\",\n * textureSetId: \"myTextureSet\",\n * position: [-4, -6, -4],\n * scale: [1, 3, 1],\n * rotation: [0, 0, 0],\n * color: [1, 0.3, 0.3]\n * });\n *\n * if (redBoxMesh instanceof SDKError) {\n * console.log(redBoxMesh.message);\n * } else {\n * const redBoxMeshAgain = sceneModel.meshes[\"redBoxMesh\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param meshParams Pre-compressed mesh parameters.\n * @returns *{@link @xeokit/scene!SceneMesh}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid SceneMeshParams were given.\n * * SceneMesh of given ID already exists in this SceneModel.\n * * Specified SceneGeometry could not be found in this SceneModel.\n * * Specified SceneTextureSet could not be found in this SceneModel.\n */\n createMesh(meshParams: SceneMeshParams): SceneMesh | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneMesh in SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneMesh in SceneModel - SceneModel already built\");\n }\n if (this.meshes[meshParams.id]) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - SceneMesh already exists with this ID: ${meshParams.id}`);\n }\n const geometry = this.geometries[meshParams.geometryId];\n if (!geometry) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - Geometry not found: ${meshParams.geometryId}`);\n }\n const textureSet = meshParams.textureSetId ? this.textureSets[meshParams.textureSetId] : undefined;\n if (meshParams.textureSetId && !textureSet) {\n return new SDKError(`Failed to create SceneMesh in SceneModel - TextureSet not found: ${meshParams.textureSetId}`);\n }\n let matrix = meshParams.matrix;\n if (!matrix) {\n const position = meshParams.position;\n const scale = meshParams.scale;\n const rotation = meshParams.rotation;\n const quaternion = meshParams.quaternion;\n if (position || scale || rotation || quaternion) {\n matrix = identityMat4();\n composeMat4(position || [0, 0, 0], quaternion || eulerToQuat(rotation || [0, 0, 0], \"XYZ\", identityQuat()), scale || [1, 1, 1], matrix)\n } else {\n matrix = identityMat4();\n }\n } else {\n matrix = matrix.slice();\n }\n let origin;\n let rtcMatrix = matrix;\n if (meshParams.origin) {\n origin = meshParams.origin;\n rtcMatrix = matrix;\n } else {\n origin = createVec3();\n rtcMatrix = createRTCModelMat(matrix, origin);\n }\n const tile = this.scene.getTile(origin);\n if (!this.tiles[tile.id]) {\n this.tiles[tile.id] = tile;\n this.tilesList.push(tile);\n }\n const mesh = new SceneMesh({\n id: meshParams.id,\n geometry,\n textureSet,\n matrix,\n rtcMatrix,\n color: meshParams.color,\n opacity: meshParams.opacity,\n tile\n });\n geometry.numMeshes++;\n this.meshes[meshParams.id] = mesh;\n this.stats.numMeshes++;\n return mesh;\n }\n\n /**\n * Creates a new {@link @xeokit/scene!SceneObject}.\n *\n * * Stores the new {@link @xeokit/scene!SceneObject} in {@link @xeokit/scene!SceneModel.objects | SceneModel.objects} and {@link @xeokit/scene!Scene.objects | Scene.objects}.\n * * Fires an event via {@link @xeokit/scene!Scene.onObjectCreated | Scene.onObjectCreated}.\n * * Each {@link @xeokit/scene!SceneMesh} is allowed to belong to one SceneObject.\n * * SceneObject IDs must be unique within the SceneModel's {@link @xeokit/scene!Scene | Scene}.\n *\n * ### Usage\n *\n * ````javascript\n * const redBoxObject = sceneModel.createObject({\n * id: \"redBoxObject\",\n * meshIds: [\"redBoxMesh\"]\n * });\n *\n * if (redBoxObject instanceof SDKError) {\n * console.log(redBoxObject.message);\n * } else {\n * const redBoxObjectAgain = sceneModel.objects[\"redBoxObject\"];\n * const redBoxObjectOnceMore = scene.objects[\"redBoxObject\"];\n * }\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @param objectParams SceneObject parameters.\n * @returns *{@link @xeokit/scene!SceneObject}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If this SceneModel has already been destroyed.\n * * If this SceneModel has already been built.\n * * Invalid ObjectParams were given.\n * * SceneObject of given ID already exists in this SceneModel's Scene. Note that SceneObject IDs must be unique within the Scene.\n * * No Meshes were specified.\n * * One or more of the specified Meshes already belong to another SceneObject in this SceneModel.\n * * Specified Meshes could not be found in this SceneModel.\n */\n createObject(objectParams: SceneObjectParams): SceneObject | SDKError {\n if (this.destroyed) {\n return new SDKError(\"Failed to create SceneObject - SceneModel already destroyed\");\n }\n if (this.built) {\n return new SDKError(\"Failed to create SceneObject SceneModel already built\");\n }\n if (objectParams.meshIds.length === 0) {\n return new SDKError(\"Failed to create SceneObject - no meshes specified\");\n }\n const objectId = this.globalizedIds ? `${this.id}.${objectParams.id}` : objectParams.id;\n if (this.scene.objects[objectId]) {\n return new SDKError(`Failed to create SceneObject - SceneObject already exists in Scene: ${objectId}`);\n }\n const meshIds = objectParams.meshIds;\n const meshes = [];\n for (let meshIdIdx = 0, meshIdLen = meshIds.length; meshIdIdx < meshIdLen; meshIdIdx++) {\n const meshId = meshIds[meshIdIdx];\n const mesh = this.meshes[meshId];\n if (!mesh) {\n return new SDKError(`Failed to create SceneObject - SceneMesh not found: ${meshId}`);\n }\n if (this.#meshUsedByObject[meshId]) {\n return new SDKError(`Failed to create SceneObject - SceneMesh ${meshId} already belongs to another SceneObject`);\n }\n meshes.push(mesh);\n this.#meshUsedByObject[mesh.id] = true;\n }\n const sceneObject = new SceneObject({\n id: objectId,\n originallSystemId: objectParams.originalSystemId,\n layerId: this.layerId || objectParams.layerId,\n model: this,\n meshes\n });\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n mesh.object = sceneObject;\n }\n this.#numObjects++;\n this.objects[objectId] = sceneObject;\n this.stats.numObjects++;\n return sceneObject;\n }\n\n /**\n * Finalizes this SceneModel, readying it for use.\n *\n * * Fires an event via {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt} and {@link @xeokit/scene!Scene.onModelCreated | SceneModel.onCreated}, to indicate to subscribers that\n * the SceneModel is complete and ready to use.\n * * Sets {@link @xeokit/scene!SceneModel.built | SceneModel.built} ````true````.\n * * You can only call this method once on a SceneModel.\n * * The SceneModel must have at least one {@link @xeokit/scene!SceneObject}.\n * * Once built, no more components can be created in a SceneModel.\n *\n * ### Usage\n *\n * ````javascript\n * sceneMode.onBuilt.subscribe(()=>{\n * // Our SceneModel is built and ready to use\n * });\n *\n * myScene.onModelCreated.subscribe((sceneModel)=>{\n * // Another way to subscribe to SceneModel readiness\n * });\n *\n * mySceneModel.build().then((result) => { // Asynchronous (texture compression etc).\n * if (result instanceof SDKError) {\n * console.log(result.message);\n * } else {\n * // Now we can do things with our SceneModel\n * }\n * }).catch(sdkError) {// SDKError\n * console.log(sdkError.message);\n * };\n * ````\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for more usage info.\n *\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If SceneModel has already been built or destroyed.\n * * If no SceneObjects were created in this SceneModel.\n */\n build(): Promise {\n return new Promise((resolve) => {\n if (this.destroyed) {\n throw new SDKError(\"Failed to build SceneModel - SceneModel already destroyed\");\n }\n if (this.built) {\n throw new SDKError(\"Failed to build SceneModel - SceneModel already built\");\n }\n this.#removeUnusedComponents()\n // this.#compressTextures().then(() => {\n this.built = true;\n this.onBuilt.dispatch(this, null);\n resolve(this);\n // }).catch((e) => {\n // throw e;\n // });\n });\n }\n\n #removeUnusedComponents() {\n for (let id in this.meshes) {\n const mesh = this.meshes[id];\n if (!mesh.object) {\n mesh.geometry.numMeshes--;\n delete this.meshes[id];\n }\n }\n for (let id in this.geometries) {\n if (this.geometries[id].numMeshes === 0) {\n delete this.geometries[id];\n }\n }\n // let texturesList = [];\n // const textures = {};\n // for (let i = 0, leni = this.texturesList.length; i < leni; i++) {\n // const texture = this.texturesList[i];\n // if (texture.channel !== null) {\n // texture.textureIndex = texturesList.length;\n // texturesList.push(texture);\n // textures[texture.id] = texture;\n // }\n // }\n // this.texturesList = texturesList;\n // this.textures = textures;\n }\n\n /**\n * Gets this SceneModel as JSON.\n */\n getJSON(): SceneModelParams {\n const sceneModelParams = {\n id: this.id,\n geometriesCompressed: [],\n textures: [],\n textureSets: [],\n transforms: [],\n meshes: [],\n objects: []\n };\n if (this.streamParams) {\n sceneModelParams.streamParams = this.streamParams;\n }\n Object.entries(this.geometries).forEach(([key, sceneGeometry]) => {\n sceneModelParams.geometriesCompressed.push((sceneGeometry).getJSON());\n });\n // Object.entries(this.textures).forEach(([key, value]) => {\n // sceneModelParams.textures[key] = (value).getJSON();\n // });\n // Object.entries(this.textureSets).forEach(([key, value]) => {\n // sceneModelParams.textureSets[key] = (value).getJSON();\n // });\n Object.entries(this.meshes).forEach(([key, sceneMesh]) => {\n sceneModelParams.meshes.push((sceneMesh).getJSON());\n });\n Object.entries(this.objects).forEach(([key, sceneObject]) => {\n sceneModelParams.objects.push((sceneObject).getJSON());\n });\n return sceneModelParams;\n }\n\n /**\n * Destroys this SceneModel.\n *\n * Sets {@link Component.destroyed} ````true````.\n */\n destroy() {\n for (let i = 0, len = this.tilesList.length; i < len; i++) {\n this.scene.putTile(this.tilesList[i]);\n }\n super.destroy();\n }\n\n // #compressTextures(): Promise {\n // let countTextures = this.#texturesList.length;\n // return new Promise((resolve) => {\n // if (countTextures === 0) {\n // resolve();\n // return;\n // }\n // for (let i = 0, leni = this.#texturesList.length; i < leni; i++) {\n // const texture = this.#texturesList[i];\n // const encodingOptions = TEXTURE_ENCODING_OPTIONS[texture.channel] || {};\n // if (texture.src) { // SceneTexture created with SceneModel#createTexture({ src: ... })\n // const src = texture.src;\n // const fileExt = src.split('.').pop();\n // switch (fileExt) {\n // case \"jpeg\":\n // case \"jpg\":\n // case \"png\":\n //\n // load(src, ImageLoader, {\n // image: {\n // type: \"data\"\n // }\n // }).then((imageData) => {\n // if (texture.compressed) {\n // encode(imageData, KTX2BasisWriter, encodingOptions).then((encodedData) => {\n // const encodedImageData = new Uint8Array(encodedData);\n // this.stats.textureBytes += encodedImageData.byteLength;\n // texture.imageData = encodedImageData;\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to compress texture: ${err}`);\n // });\n // } else {\n // texture.imageData = new Uint8Array(1);\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to load texture image: ${err}`);\n // });\n // break;\n // default:\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // break;\n // }\n // }\n // if (texture.imageData) {// SceneTexture created with SceneModel#createTexture({ imageData: ... })\n // if (texture.compressed) {\n // encode(texture.imageData, KTX2BasisWriter, encodingOptions)\n // .then((encodedImageData) => {\n // texture.imageData = new Uint8Array(encodedImageData);\n // this.stats.textureBytes += texture.imageData.byteLength;\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }).catch((err) => {\n // return new SDKError(`Failed to compress texture: ${err}`);\n // });\n // } else {\n // texture.imageData = new Uint8Array(1);\n // if (--countTextures <= 0) {\n // resolve();\n // }\n // }\n // }\n // }\n // });\n // }\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {Scene} from \"./Scene\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport type {RendererGeometry} from \"./RendererGeometry\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {IntArrayParam} from \"@xeokit/math\";\n\n/**\n * A geometry in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}\n * * Created with {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry}\n * and {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed}\n * * Referenced by {@link @xeokit/scene!SceneMesh.geometry | SceneMesh.geometry}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneGeometry {\n\n /**\n * ID for the geometry.\n */\n id: string;\n\n /**\n * Primitive type.\n *\n * Possible values are {@link @xeokit/constants!SolidPrimitive}, {@link @xeokit/constants!SurfacePrimitive},\n * {@link @xeokit/constants!LinesPrimitive}, {@link @xeokit/constants!PointsPrimitive}\n * and {@link @xeokit/constants!TrianglesPrimitive}.\n */\n primitive: number;\n\n /**\n * Axis-aligned, non-quantized 3D boundary of the geometry's vertex positions.\n */\n aabb?: FloatArrayParam;\n\n /**\n * 4x4 matrix to de-quantize the geometry's UV coordinates, when UVs are provided.\n */\n uvsDecompressMatrix?: FloatArrayParam;\n\n /**\n * 3D vertex positions, quantized as 16-bit integers.\n *\n * Internally, the Viewer dequantizes these with {@link @xeokit/scene!SceneGeometry.positionsDecompressMatrix | SceneGeometry.positionsDecompressMatrix}.\n *\n * Vertex positions are required for all primitive types.\n */\n positionsCompressed: IntArrayParam;\n\n /**\n * UV coordinates, quantized as 16-bit integers.\n *\n * Internally, the Viewer de-quantizes these with {@link @xeokit/scene!SceneGeometry.uvsDecompressMatrix | SceneGeometry.uvsDecompressMatrix}.\n */\n uvsCompressed?: IntArrayParam;\n\n /**\n * Vertex RGB colors, quantized as 8-bit integers.\n */\n colorsCompressed?: IntArrayParam;\n\n /**\n * primitive indices.\n *\n * This is either an array of 8-bit, 16-bit or 32-bit values.\n */\n indices?: IntArrayParam;\n\n /**\n * Edge indices.\n *\n * This is either an array of 8-bit, 16-bit or 32-bit values.\n */\n edgeIndices?: IntArrayParam;\n\n /**\n * Interface through which this SceneGeometry can load any user-updated geometry arrays into the renderers.\n *\n * @internal\n */\n rendererGeometry: RendererGeometry | null;\n\n /**\n * TODO\n */\n origin?:FloatArrayParam;\n\n /**\n * The count of {@link @xeokit/scene!SceneMesh | SceneMeshes} that reference this SceneGeometry.\n */\n numMeshes: number;\n\n constructor(params: SceneGeometryCompressedParams) {\n this.id = params.id;\n this.primitive = params.primitive;\n this.positionsCompressed = params.positionsCompressed;\n this.uvsCompressed = params.uvsCompressed;\n this.colorsCompressed = params.colorsCompressed;\n this.indices = params.indices;\n this.edgeIndices = params.edgeIndices;\n this.origin = params.origin;\n this.aabb = params.aabb ? params.aabb.slice() : createAABB3();\n this.numMeshes = 0;\n }\n\n /**\n * Gets this SceneGeometry as JSON.\n */\n getJSON(): SceneGeometryCompressedParams {\n const params = {\n id: this.id,\n primitive: this.primitive,\n aabb: Array.from(this.aabb),\n positionsCompressed: Array.from(this.positionsCompressed)\n };\n if (this.positionsCompressed) {\n params.positionsCompressed = Array.from(this.positionsCompressed);\n }\n if (this.uvsCompressed) {\n params.uvsCompressed = Array.from(this.uvsCompressed);\n }\n if (this.colorsCompressed) {\n params.colorsCompressed = Array.from(this.colorsCompressed);\n }\n if (this.indices) {\n params.indices = Array.from(this.indices);\n }\n if (this.edgeIndices) {\n params.edgeIndices = Array.from(this.edgeIndices);\n }\n return params;\n }\n}\n", "import type {SceneMesh} from \"./SceneMesh\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RendererObject} from \"./RendererObject\";\nimport type {SceneModel} from \"./SceneModel\";\nimport {collapseAABB3, createAABB3, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport {SceneObjectParams} from \"./SceneObjectParams\";\n\n/**\n * An object in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.objects | SceneModel.objects} and {@link @xeokit/scene!Scene.objects | Scene.objects}\n * * Created with {@link @xeokit/scene!SceneModel.createObject | SceneModel.createObject}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneObject {\n\n /**\n * Unique ID of this SceneObject.\n *\n * SceneObjects are stored by ID in {@link @xeokit/scene!Scene.objects | Scene.objects}\n * and {@link @xeokit/scene!SceneModel.objects | SceneModel.objects}.\n */\n public readonly id: string;\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModel} that contains this SceneObject.\n */\n public readonly model: SceneModel;\n\n /**\n * ID of this SceneObject within the originating system.\n */\n public readonly originalSystemId: string;\n\n /**\n * The {@link @xeokit/scene!SceneMesh | Meshes} belonging to this SceneObject.\n */\n public readonly meshes: SceneMesh[];\n\n /**\n * Optional layer ID for this SceneObject.\n */\n public readonly layerId?: string;\n\n /**\n * Internal interface through which a {@link @xeokit/viewer!ViewObject | ViewObject} can load property updates\n * into a {@link @xeokit/viewer!Renderer | Renderer} for this SceneObject.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererObject: RendererObject | null;\n\n #aabb: FloatArrayParam;\n #aabbDirty: boolean;\n\n /**\n * @private\n */\n constructor(cfg: {\n model: SceneModel;\n meshes: SceneMesh[];\n id: string;\n originallSystemId?:string;\n layerId?: string;\n }) {\n this.id = cfg.id;\n this.originalSystemId = cfg.originallSystemId || this.id;\n this.layerId = cfg.layerId;\n this.meshes = cfg.meshes;\n this.#aabb = createAABB3();\n this.#aabbDirty = true;\n this.rendererObject = null;\n }\n\n /**\n * Gets the axis-aligned 3D World-space boundary of this SceneObject.\n */\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n collapseAABB3(this.#aabb);\n // getSceneObjectGeometry(this, (geometryView) => {\n // expandAABB3Points3(this.#aabb, geometryView.positionsWorld);\n // return false;\n // });\n this.#aabbDirty = false;\n }\n return this.#aabb;\n }\n\n /**\n * @private\n */\n setAABBDirty() {\n this.#aabbDirty = true;\n }\n\n /**\n * Gets this SceneObject as JSON.\n */\n getJSON(): SceneObjectParams {\n const sceneObjectParams = {\n id: this.id,\n meshIds: []\n };\n if (this.layerId != undefined) {\n sceneObjectParams.layerId = this.layerId;\n }\n if (this.meshes != undefined) {\n for (let i = 0, len = this.meshes.length; i < len; i++) {\n sceneObjectParams.meshIds.push(this.meshes[i].id);\n }\n }\n return sceneObjectParams;\n }\n}\n", "import type {SceneTexture} from \"./SceneTexture\";\nimport type {SceneTextureSetParams} from \"./SceneTextureSetParams\";\nimport type {RendererTextureSet} from \"./RendererTextureSet\";\n\n/**\n * A set of {@link @xeokit/scene!SceneTexture | Textures} in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.textureSets | SceneModel.textureSets}\n * * Created with {@link @xeokit/scene!SceneModel.createTextureSet | SceneModel.createTextureSet}\n * * Referenced by {@link @xeokit/scene!SceneMesh.textureSet | SceneMesh.textureSet}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTextureSet {\n\n /**\n * The ID of this SceneTextureSet.\n */\n id: string;\n\n /**\n * The color {@link @xeokit/scene!SceneTexture} in this set.\n */\n colorTexture?: SceneTexture;\n\n /**\n * The metallic-roughness {@link @xeokit/scene!SceneTexture} in this set.\n */\n metallicRoughnessTexture?: SceneTexture;\n\n /**\n * The occlusion {@link @xeokit/scene!SceneTexture} in this set.\n */\n occlusionTexture?: SceneTexture;\n\n /**\n * The emissive {@link @xeokit/scene!SceneTexture} in this set.\n */\n emissiveTexture?: SceneTexture;\n\n /**\n * Internal interface through which a SceneTextureSet can load property updates into a renderers.\n *\n * This is defined while the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererTextureSet: RendererTextureSet | null;\n\n /**\n * @private\n */\n constructor(textureSetParams: SceneTextureSetParams,\n textures: {\n emissiveTexture?: SceneTexture;\n occlusionTexture?: SceneTexture;\n metallicRoughnessTexture?: SceneTexture;\n colorTexture?: SceneTexture;\n }) {\n\n this.id = textureSetParams.id;\n this.colorTexture = textures.colorTexture;\n this.metallicRoughnessTexture = textures.metallicRoughnessTexture;\n this.occlusionTexture = textures.occlusionTexture;\n this.emissiveTexture = textures.emissiveTexture;\n this.rendererTextureSet = null;\n }\n}\n", "import {\n ClampToEdgeWrapping,\n GIFMediaType,\n JPEGMediaType,\n LinearEncoding,\n LinearFilter,\n LinearMipmapLinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n MirroredRepeatWrapping,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n PNGMediaType,\n RepeatWrapping,\n sRGBEncoding\n} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RendererTexture} from \"./RendererTexture\";\nimport type {SceneTextureParams} from \"./SceneTextureParams\";\nimport {createVec4} from \"@xeokit/matrix\";\n\n/**\n * A texture in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.textures | SceneModel.textures}\n * * Created with {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture}\n * * Referenced by {@link @xeokit/scene!SceneTextureSet.colorTexture | SceneTextureSet.colorTexture},\n * {@link @xeokit/scene!SceneTextureSet.metallicRoughnessTexture | SceneTextureSet.metallicRoughnessTexture},\n * {@link @xeokit/scene!SceneTextureSet.occlusionTexture | SceneTextureSet.occlusionTexture} and {@link @xeokit/scene!SceneTextureSet.emissiveTexture | SceneTextureSet.emissiveTexture}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTexture {\n\n /**\n * Internal interface through which this {@link @xeokit/scene!SceneTexture} can load property updates into a renderers.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererTexture: RendererTexture | null;\n\n /**\n * ID for the texture.\n */\n id: string;\n\n /**\n * Path to an image file.\n */\n src?: string;\n\n /**\n * Image file data.\n */\n imageData?: any;\n\n /**\n * Transcoded texture data.\n */\n buffers?: ArrayBuffer[];\n\n /**\n * HTMLImage containing the texture image.\n */\n image?: HTMLImageElement;\n\n /**\n * Pixel height of the texture.\n */\n height: number;\n\n /**\n * Pixel width of the texture.\n */\n width: number;\n\n /**\n * True if the texture is compressed.\n */\n compressed: boolean;\n\n /**\n * Media type of this SceneTexture.\n *\n * Supported values are {@link @xeokit/constants!GIFMediaType}, {@link @xeokit/constants!PNGMediaType} and {@link @xeokit/constants!JPEGMediaType}.\n *\n * Ignored for compressed textures.\n */\n mediaType?: number;\n\n /**\n * How the texture is sampled when a texel covers more than one pixel.\n *\n * Supported values are {@link @xeokit/constants!LinearFilter} and {@link @xeokit/constants!NearestFilter}.\n */\n magFilter: number;\n\n /**\n * How the texture is sampled when a texel covers less than one pixel. Supported values\n * are {@link @xeokit/constants!LinearMipmapLinearFilter}, {@link @xeokit/constants!LinearMipMapNearestFilter},\n * {@link @xeokit/constants!NearestMipMapNearestFilter}, {@link @xeokit/constants!NearestMipMapLinearFilter}\n * and {@link @xeokit/constants!LinearMipMapLinearFilter}.\n *\n * Ignored for compressed textures.\n */\n minFilter: number;\n\n /**\n * S wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapS: number;\n\n /**\n * T wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapT: number;\n\n /**\n * R wrapping mode.\n *\n * Supported values are {@link @xeokit/constants!ClampToEdgeWrapping}, {@link @xeokit/constants!MirroredRepeatWrapping} and {@link @xeokit/constants!RepeatWrapping}.\n *\n * Ignored for compressed textures.\n */\n wrapR: number;\n\n /**\n * Flips this SceneTexture's source data along its vertical axis when ````true````.\n */\n flipY: boolean;\n\n /**\n * SceneTexture encoding format.\n *\n * Supported values are {@link @xeokit/constants!LinearEncoding} and {@link @xeokit/constants!sRGBEncoding}.\n */\n encoding: number;\n\n /**\n * RGBA color to preload the texture with.\n */\n preloadColor: FloatArrayParam;\n\n /**\n * @private\n */\n channel: number;\n\n /**\n * @private\n */\n constructor(params: SceneTextureParams) {\n this.id = params.id;\n this.imageData = params.imageData;\n this.src = params.src;\n this.mediaType = params.mediaType;\n this.minFilter = params.minFilter || LinearMipMapNearestFilter;\n this.magFilter = params.magFilter || LinearMipMapNearestFilter;\n this.wrapS = params.wrapS || RepeatWrapping;\n this.wrapT = params.wrapT || RepeatWrapping;\n this.wrapR = params.wrapR || RepeatWrapping\n this.encoding = params.encoding || LinearEncoding;\n this.preloadColor = createVec4(params.preloadColor || [1, 1, 1, 1]);\n this.channel = 0;\n this.rendererTexture = null;\n }\n}\n\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, identityMat4, isIdentityMat4} from \"@xeokit/matrix\";\nimport type {RendererMesh} from \"./RendererMesh\";\nimport type {SceneGeometry} from \"./SceneGeometry\";\nimport type {SceneTextureSet} from \"./SceneTextureSet\";\nimport type {SceneObject} from \"./SceneObject\";\nimport type {SceneMeshParams} from \"./SceneMeshParams\";\nimport {SceneTile} from \"./SceneTile\";\n\n/**\n * A mesh in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.meshes | SceneModel.meshes}\n * * Created with {@link @xeokit/scene!SceneModel.createMesh | SceneModel.createMesh}\n * * Referenced by {@link @xeokit/scene!SceneObject.meshes | SceneObject.meshes}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneMesh {\n\n /**\n * Unique ID of this SceneMesh.\n *\n * SceneMesh is stored by this ID in {@link @xeokit/scene!SceneModel.meshes}.\n */\n readonly id: string;\n\n /**\n * {@link @xeokit/scene!SceneTile} this SceneMesh belongs to.\n */\n readonly tile: SceneTile;\n\n /**\n * {@link @xeokit/scene!SceneGeometry} used by this SceneMesh.\n */\n readonly geometry: SceneGeometry;\n\n /**\n * {@link @xeokit/scene!SceneTextureSet} used by this SceneMesh.\n */\n readonly textureSet?: SceneTextureSet;\n\n /**\n * Internal interface through which a {@link @xeokit/scene!SceneMesh} can load property updates into a renderers.\n *\n * This is defined when the owner {@link @xeokit/scene!SceneModel | SceneModel} has been added to\n * a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererMesh: RendererMesh | null;\n\n /**\n * The {@link @xeokit/scene!SceneObject} that uses this SceneMesh.\n */\n object: SceneObject | null;\n\n /**\n * TODO\n */\n streamLayerIndex: number;\n\n #color: FloatArrayParam;\n #matrix: FloatArrayParam;\n #rtcMatrix: FloatArrayParam;\n #opacity: number;\n\n readonly origin: FloatArrayParam;\n\n /**\n * @private\n */\n constructor(meshParams: {\n id: string;\n geometry: SceneGeometry;\n textureSet?: SceneTextureSet;\n matrix?: FloatArrayParam;\n rtcMatrix?: FloatArrayParam;\n color?: FloatArrayParam;\n opacity?: number;\n tile: SceneTile;\n streamLayerIndex?: number;\n }) {\n this.id = meshParams.id;\n this.#matrix = meshParams.matrix ? createMat4(meshParams.matrix) : identityMat4();\n this.#rtcMatrix = meshParams.rtcMatrix ? createMat4(meshParams.rtcMatrix) : identityMat4();\n this.geometry = meshParams.geometry;\n this.textureSet = meshParams.textureSet;\n this.rendererMesh = null;\n this.color = meshParams.color || new Float32Array([1, 1, 1]);\n this.opacity = (meshParams.opacity !== undefined && meshParams.opacity !== null) ? meshParams.opacity : 1.0;\n this.tile = meshParams.tile;\n this.streamLayerIndex = meshParams.streamLayerIndex !== undefined ? meshParams.streamLayerIndex : 0;\n }\n\n /**\n * Gets the RGB color for this SceneMesh.\n *\n * Each element of the color is in range ````[0..1]````.\n */\n get color(): FloatArrayParam {\n return this.#color;\n }\n\n /**\n * Sets the RGB color for this SceneMesh.\n *\n * Each element of the color is in range ````[0..1]````.\n */\n set color(value: FloatArrayParam) {\n let color = this.#color;\n if (!color) {\n color = this.#color = new Float32Array(4);\n color[3] = 1;\n }\n if (value) {\n color[0] = value[0];\n color[1] = value[1];\n color[2] = value[2];\n } else {\n color[0] = 1;\n color[1] = 1;\n color[2] = 1;\n }\n if (this.rendererMesh) {\n this.rendererMesh.setColor(this.#color);\n }\n }\n\n /**\n * Gets this SceneMesh's local modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @type {FloatArrayParam}\n */\n get matrix(): FloatArrayParam {\n return this.#matrix;\n }\n\n /**\n * Gets this SceneMesh's RTC modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @internal\n * @type {FloatArrayParam}\n */\n get rtcMatrix(): FloatArrayParam {\n return this.#rtcMatrix;\n }\n\n /**\n * Updates this SceneMesh's local modeling transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @type {FloatArrayParam}\n */\n set matrix(matrix: FloatArrayParam) {\n if (matrix) {\n // @ts-ignore\n this.#matrix.set(matrix);\n } else {\n identityMat4(this.#matrix);\n }\n if (this.rendererMesh) {\n this.rendererMesh.setMatrix(this.#matrix);\n }\n if (this.object) {\n this.object.setAABBDirty();\n }\n }\n\n /**\n * Gets the opacity factor for this SceneMesh.\n *\n * This is a factor in range ````[0..1]````.\n */\n get opacity(): number {\n return this.#opacity;\n }\n\n /**\n * Sets the opacity factor for this SceneMesh.\n *\n * This is a factor in range ````[0..1]````.\n */\n set opacity(opacity: number) {\n opacity = (opacity !== undefined && opacity !== null) ? opacity : 1.0;\n if (this.#opacity === opacity) {\n return;\n }\n this.#opacity = opacity;\n if (this.rendererMesh) {\n // this.rendererMesh.setOpacity(this.#opacity);\n }\n }\n\n /**\n * Gets this SceneMesh as JSON.\n */\n getJSON(): SceneMeshParams {\n const meshParams = {\n streamLayerIndex: this.streamLayerIndex || 0,\n id: this.id,\n geometryId: this.geometry.id,\n color: Array.from(this.#color),\n opacity: this.#opacity\n };\n if (!isIdentityMat4(this.#matrix)) {\n meshParams.matrix = Array.from(this.#matrix);\n }\n if (this.textureSet !== undefined) {\n meshParams.textureSetId = this.textureSet.id;\n }\n return meshParams;\n }\n}\n", "import {DEGTORAD, type FloatArrayParam, type IntArrayParam} from \"@xeokit/math\";\nimport {createVec3, cross3Vec3, dotVec3, normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {decompressPoint3WithAABB3, decompressPoint3WithMat4} from \"@xeokit/compression\";\n\nconst uniquePositions: number[] = [];\nconst indicesLookup: number[] = [];\nconst indicesReverseLookup: number[] = [];\nconst weldedIndices: number[] = [];\n\n// TODO: Optimize with caching, but need to cater to both compressed and uncompressed positions\n\nconst faces: { normal: number[]; }[] = [];\nlet numFaces = 0;\nconst compa = new Uint16Array(3);\nconst compb = new Uint16Array(3);\nconst compc = new Uint16Array(3);\nconst a = createVec3();\nconst b = createVec3();\nconst c = createVec3();\nconst cb = createVec3();\nconst ab = createVec3();\nconst cross = createVec3();\nconst normal = createVec3();\n\nfunction weldVertices(positions: FloatArrayParam, indices: IntArrayParam) {\n const positionsMap = {}; // Hashmap for looking up vertices by position coordinates (and making sure they are unique)\n let vx;\n let vy;\n let vz;\n let key;\n const precisionPoints = 4; // number of decimal points, e.g. 4 for epsilon of 0.0001\n const precision = Math.pow(10, precisionPoints);\n let i;\n let len;\n let lenUniquePositions = 0;\n for (i = 0, len = positions.length; i < len; i += 3) {\n vx = positions[i];\n vy = positions[i + 1];\n vz = positions[i + 2];\n key = Math.round(vx * precision) + '_' + Math.round(vy * precision) + '_' + Math.round(vz * precision);\n // @ts-ignore\n if (positionsMap[key] === undefined) {\n // @ts-ignore\n positionsMap[key] = lenUniquePositions / 3;\n uniquePositions[lenUniquePositions++] = vx;\n uniquePositions[lenUniquePositions++] = vy;\n uniquePositions[lenUniquePositions++] = vz;\n }\n // @ts-ignore\n indicesLookup[i / 3] = positionsMap[key];\n }\n for (i = 0, len = indices.length; i < len; i++) {\n weldedIndices[i] = indicesLookup[indices[i]];\n indicesReverseLookup[weldedIndices[i]] = indices[i];\n }\n}\n\nfunction buildFaces(numIndices: number, aabb: FloatArrayParam) {\n numFaces = 0;\n for (let i = 0, len = numIndices; i < len; i += 3) {\n const ia = ((weldedIndices[i]) * 3);\n const ib = ((weldedIndices[i + 1]) * 3);\n const ic = ((weldedIndices[i + 2]) * 3);\n if (aabb) {\n compa[0] = uniquePositions[ia];\n compa[1] = uniquePositions[ia + 1];\n compa[2] = uniquePositions[ia + 2];\n compb[0] = uniquePositions[ib];\n compb[1] = uniquePositions[ib + 1];\n compb[2] = uniquePositions[ib + 2];\n compc[0] = uniquePositions[ic];\n compc[1] = uniquePositions[ic + 1];\n compc[2] = uniquePositions[ic + 2];\n // Decode\n decompressPoint3WithAABB3(compa, aabb, a);\n decompressPoint3WithAABB3(compb, aabb, b);\n decompressPoint3WithAABB3(compc, aabb, c);\n } else {\n a[0] = uniquePositions[ia];\n a[1] = uniquePositions[ia + 1];\n a[2] = uniquePositions[ia + 2];\n b[0] = uniquePositions[ib];\n b[1] = uniquePositions[ib + 1];\n b[2] = uniquePositions[ib + 2];\n c[0] = uniquePositions[ic];\n c[1] = uniquePositions[ic + 1];\n c[2] = uniquePositions[ic + 2];\n }\n subVec3(c, b, cb);\n subVec3(a, b, ab);\n cross3Vec3(cb, ab, cross);\n normalizeVec3(cross, normal);\n // @ts-ignore\n const face = faces[numFaces] || (faces[numFaces] = {normal: createVec3()});\n face.normal[0] = normal[0];\n face.normal[1] = normal[1];\n face.normal[2] = normal[2];\n numFaces++;\n }\n}\n\n\n/**\n * Builds edge connectivity indices from a 3D triangle mesh given as vertex positions and triangle indices\n * @private\n */\nexport function buildEdgeIndices(\n positions: FloatArrayParam,\n indices: IntArrayParam,\n aabb: FloatArrayParam,\n edgeThreshold: number): IntArrayParam {\n\n weldVertices(positions, indices);\n buildFaces(indices.length, aabb);\n\n const edgeIndices = [];\n const thresholdDot = Math.cos(DEGTORAD * edgeThreshold);\n const edges = {};\n\n let edge1;\n let edge2;\n let index1;\n let index2;\n let key;\n let largeIndex = false;\n let edge;\n let normal1;\n let normal2;\n let dot;\n let ia;\n let ib;\n\n for (let i = 0, len = indices.length; i < len; i += 3) {\n const faceIndex = i / 3;\n for (let j = 0; j < 3; j++) {\n edge1 = weldedIndices[i + j];\n edge2 = weldedIndices[i + ((j + 1) % 3)];\n index1 = Math.min(edge1, edge2);\n index2 = Math.max(edge1, edge2);\n key = index1 + \",\" + index2;\n // @ts-ignore\n if (edges[key] === undefined) {\n // @ts-ignore\n edges[key] = {\n index1: index1,\n index2: index2,\n face1: faceIndex,\n face2: undefined\n };\n } else {\n // @ts-ignore\n edges[key].face2 = faceIndex;\n }\n }\n }\n\n for (key in edges) {\n // @ts-ignore\n edge = edges[key];\n // an edge is only rendered if the angle (in degrees) between the face normals of the adjoining faces exceeds this value. default = 1 degree.\n if (edge.face2 !== undefined) {\n normal1 = faces[edge.face1].normal;\n normal2 = faces[edge.face2].normal;\n dot = dotVec3(normal1, normal2);\n if (dot > thresholdDot) {\n continue;\n }\n }\n ia = indicesReverseLookup[edge.index1];\n ib = indicesReverseLookup[edge.index2];\n if (!largeIndex && ia > 65535 || ib > 65535) {\n largeIndex = true;\n }\n edgeIndices.push(ia);\n edgeIndices.push(ib);\n }\n\n return (largeIndex) ? new Uint32Array(edgeIndices) : new Uint16Array(edgeIndices);\n}\n", "import {createMat4, createVec3} from \"@xeokit/matrix\";\nimport {collapseAABB3, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {compressRGBColors, quantizePositions3} from \"@xeokit/compression\";\nimport {buildEdgeIndices} from \"./buildEdgeIndices\";\nimport type {SceneGeometryParams} from \"./SceneGeometryParams\";\nimport type {SceneGeometryCompressedParams} from \"./SceneGeometryCompressedParams\";\nimport {worldToRTCPositions} from \"@xeokit/rtc\";\n\nconst rtcCenter = createVec3();\n\n/**\n * Compresses a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}.\n *\n * See {@link @xeokit/scene} for usage examples.\n *\n * @param geometryParams Uncompressed geometry params.\n * @returns Compressed geometry params.\n */\nexport function compressGeometryParams(geometryParams: SceneGeometryParams): SceneGeometryCompressedParams {\n const rtcNeeded = worldToRTCPositions(geometryParams.positions, geometryParams.positions, rtcCenter);\n const aabb = collapseAABB3();\n expandAABB3Points3(aabb, geometryParams.positions);\n const positionsCompressed = quantizePositions3(geometryParams.positions, aabb);\n if (geometryParams.primitive === PointsPrimitive) {\n return {\n id: geometryParams.id,\n primitive: PointsPrimitive,\n aabb,\n uvsDecompressMatrix: undefined,\n positionsCompressed,\n colorsCompressed: geometryParams.colors ? compressRGBColors(geometryParams.colors) : null,\n origin: rtcNeeded ? rtcCenter : null\n };\n }\n if (geometryParams.primitive === LinesPrimitive) {\n return {\n id: geometryParams.id,\n primitive: LinesPrimitive,\n aabb,\n positionsCompressed,\n indices: geometryParams.indices,\n origin: rtcNeeded ? rtcCenter : null\n };\n } else {\n const edgeIndices = (geometryParams.primitive === SolidPrimitive\n || geometryParams.primitive === SurfacePrimitive\n || geometryParams.primitive === TrianglesPrimitive) && geometryParams.indices\n ? buildEdgeIndices(positionsCompressed, geometryParams.indices, aabb, 10)\n : null;\n return { // Assume that closed triangle mesh is decomposed into open surfaces\n id: geometryParams.id,\n primitive: geometryParams.primitive,\n aabb,\n positionsCompressed,\n indices: geometryParams.indices,\n edgeIndices,\n origin: rtcNeeded ? rtcCenter : null\n };\n }\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {createAABB3} from \"@xeokit/boundaries\";\nimport {SceneQuantizationRangeParams} from \"./SceneQuantizationRangeParams\";\n\n\n/**\n * A geometry in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Stored in {@link @xeokit/scene!SceneModel.quantizationRanges | SceneModel.quantizationRanges}\n * * Created with {@link @xeokit/scene!SceneModel.createQuantizationRange | SceneModel.createQuantizationRange}\n * * Referenced by {@link @xeokit/scene!SceneGeometry.geometry | SceneGeometry.geometry}\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneQuantizationRange {\n\n /**\n * ID for the geometry.\n */\n id: string;\n\n /**\n * Axis-aligned 3D boundary to dequantize the positions.\n */\n aabb: FloatArrayParam;\n\n constructor(params: SceneQuantizationRangeParams) {\n this.aabb = params.aabb ? params.aabb.slice() : createAABB3();\n }\n\n /**\n * Gets this SceneQuantizationRange as JSON.\n */\n getJSON(): SceneQuantizationRangeParams {\n const quantizationRangeParams = {\n id: this.id,\n aabb: [\n this.aabb[0],\n this.aabb[1],\n this.aabb[2],\n this.aabb[3],\n this.aabb[4],\n this.aabb[5]\n ]\n };\n\n return quantizationRangeParams;\n }\n}\n", "import {Scene} from \"./Scene\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {SceneModel} from \"./SceneModel\";\nimport {SceneObject} from \"./SceneObject\";\n\n/**\n * A tile in a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n *\n * * {@link @xeokit/scene!SceneMeshParams.origin | SceneMeshParams.origin}\n * * Stored in {@link @xeokit/scene!SceneModel.tiles | SceneModel.tiles}\n * * Created automatically for each distinct value of {@link @xeokit/scene!SceneMeshParams.origin | SceneMeshParams.origin} given to {@link @xeokit/scene!SceneMeshParams.createMesh | SceneMeshParams.createMesh}\n * * Each SceneTile is destroyed as soon all {@link @xeokit/scene!SceneTile | SceneTiles} with that origin heve been destroyed\n *\n * See {@link \"@xeokit/scene\" | @xeokit/scene} for usage.\n */\nexport class SceneTile {\n\n /**\n * Unique ID of this SceneTile.\n */\n public readonly id: string;\n\n /**\n * The Scene that owns this SceneTile.\n */\n public readonly scene: Scene;\n\n /**\n * The 3D World-space origin of this SceneTile.\n */\n public readonly origin: FloatArrayParam;\n\n /**\n * The number of {@link @xeokit/scene!SceneMesh | SceneMeshes} associated with this SceneTile.\n */\n public numObjects: number;\n\n /**\n * The {@link @xeokit/scene!SceneModel | SceneModels} belonging to this SceneTile, each keyed to\n * its {@link @xeokit/scene!SceneModel.id | SceneModel.id}.\n *\n * A SceneModel can belong to more than one SceneTile.\n */\n public readonly models: { [key: string]: SceneModel };\n\n /**\n * The {@link @xeokit/scene!SceneObject | SceneObjects} in this SceneTile,\n * mapped to {@link @xeokit/scene!SceneObject.id | SceneObject.id}.\n *\n * A SceneObject can belong to more than one SceneTile.\n */\n public readonly objects: { [key: string]: SceneObject };\n\n /**\n * @private\n * @param scene\n * @param id\n * @param origin\n */\n constructor(scene: Scene, id: string, origin: FloatArrayParam) {\n this.scene = scene;\n this.id = id;\n this.origin = origin;\n this.numObjects = 0;\n this.models = {};\n this.objects = {};\n }\n}\n", "import type {SceneObject} from \"./SceneObject\";\nimport type {SceneMesh} from \"./SceneMesh\";\nimport {decompressPositions3WithAABB3} from \"@xeokit/compression\";\nimport {transformPositions3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneGeometry} from \"./SceneGeometry\";\nimport {LinesPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\n\n/**\n * The {@link getSceneObjectGeometry} passes an instance of GeometryView to its callback\n * for each {@link @xeokit/scene!SceneGeometry} it visits.\n *\n * The GeometryView provides the SceneObject, SceneMesh and SceneGeometry at the current state\n * of iteration, along with accessors through which the caller can\n * get various resources that the GeometryView lazy-computes on-demand, such as decompressed vertex positions, World-space\n * vertex positons, and decompressed vertex UV coordinates.\n */\nexport interface GeometryView {\n\n /**\n * The current {@link @xeokit/scene!SceneObject}.\n */\n object: SceneObject;\n\n /**\n * The current {@link @xeokit/scene!SceneMesh}.\n */\n mesh: SceneMesh;\n\n /**\n * The current {@link @xeokit/scene!SceneMesh | SceneMesh's} position in {@link @xeokit/scene!SceneModel.meshes | SceneObject.meshes}.\n */\n meshIndex: number;\n\n /**\n * The current {@link @xeokit/scene!SceneGeometry}.\n */\n geometry: SceneGeometry;\n\n /**\n * The number of primitives in the current {@link @xeokit/scene!SceneGeometry}.\n */\n readonly numPrimitives: number;\n\n /**\n * The current 3D vertex positions, dequantized, as 32-bit floats.\n */\n readonly positionsDecompressed: FloatArrayParam;\n\n /**\n * The current 3D World-space vertex positions, dequantized and world-transformed, as 64-bit floats.\n */\n readonly positionsWorld: FloatArrayParam;\n\n /**\n * The current vertex UV coordinates, if any, dequantized to 32-bit floats.\n */\n readonly uvsDecompressed: FloatArrayParam;\n}\n\nclass GeometryViewImpl {\n\n object: SceneObject | null;\n mesh: SceneMesh | null;\n meshIndex: number;\n geometry: SceneGeometry | null;\n\n #positionsDecompressed: Float32Array | null;\n #positionsWorld: Float64Array | null;\n\n constructor() {\n this.object = null;\n this.mesh = null;\n this.meshIndex = 0;\n this.geometry = null;\n this.#positionsDecompressed = null;\n this.#positionsWorld = null;\n }\n\n get numPrimitives() {\n const primitiveType = (this.geometry).primitive;\n const elementsPerPrimitiveType = (primitiveType === TrianglesPrimitive ? 3 : (primitiveType === LinesPrimitive ? 2 : 1));\n return this.geometry.indices.length / elementsPerPrimitiveType;\n }\n\n get positionsDecompressed(): FloatArrayParam {\n if (!this.#positionsDecompressed) {\n this.#positionsDecompressed = new Float32Array((this.geometry).positionsCompressed.length);\n decompressPositions3WithAABB3((this.geometry).positionsCompressed, (this.geometry).aabb, this.#positionsDecompressed);\n }\n return this.#positionsDecompressed;\n }\n\n get positionsWorld(): FloatArrayParam {\n if (!this.#positionsWorld) {\n const positionsDecompressed = this.positionsDecompressed;\n this.#positionsWorld = new Float64Array(positionsDecompressed.length);\n transformPositions3(positionsDecompressed, (this.mesh).matrix, this.#positionsWorld);\n }\n return this.#positionsWorld;\n }\n\n get uvsDecompressed(): FloatArrayParam | null{\n return null;\n }\n\n reset() {\n this.#positionsDecompressed = null;\n this.#positionsWorld = null;\n }\n}\n\nconst geometryView = new GeometryViewImpl();\n\n/**\n * Gets the uncompressed, World-space geometry of each {@link @xeokit/scene!SceneGeometryBucket} in each\n * {@link @xeokit/scene!SceneGeometry} in each {@link @xeokit/scene!SceneMesh} in a {@link @xeokit/scene!SceneObject}.\n *\n * If the callback returns ````true````, then this method immediately stops iterating and also returns ````true````.\n *\n * @param sceneObject\n * @param withEachGeometry\n */\nexport function getSceneObjectGeometry(sceneObject: SceneObject, withEachGeometry: (geometryView: GeometryView) => boolean): boolean {\n // geometryView.reset();\n // geometryView.object = sceneObject;\n // for (let i = 0, len = sceneObject.meshes.length; i < len; i++) {\n // const mesh = sceneObject.meshes[i];\n // geometryView.mesh = mesh;\n // geometryView.meshIndex = i;\n // const geometry = mesh.geometry;\n // geometryView.geometry = geometry;\n // for (let j = 0, lenj = geometry.geometryBuckets.length; j < lenj; j++) {\n // geometryView.geometryBucket = geometry.geometryBuckets[j];\n // geometryView.geometryBucketIndex = j;\n // if (withEachGeometry(geometryView)) {\n // return true;\n // }\n // }\n // }\n return false;\n}\n", "import {composeMat4, eulerToQuat, identityMat4, identityQuat} from \"@xeokit/matrix\";\nimport {FloatArrayParam} from \"@xeokit/math\";\n\nconst identityQuaternion = identityQuat();\n\n/**\n * Helper function to build 4x4 transform matrices.\n *\n * @param params\n */\nexport function buildMat4(params: {\n quaternion?: FloatArrayParam;\n rotation?: FloatArrayParam;\n scale?: FloatArrayParam;\n position?: FloatArrayParam;\n\n}) {\n const matrix = identityMat4();\n const position = params.position;\n const scale = params.scale;\n const rotation = params.rotation;\n const quaternion = params.quaternion;\n if (position || scale || rotation || quaternion) {\n composeMat4(\n position || [0, 0, 0],\n quaternion || (rotation\n ? eulerToQuat(rotation, \"XYZ\", identityQuat())\n : identityQuaternion),\n scale || [1, 1, 1],\n matrix);\n }\n return matrix;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * \n *\n * # xeokit 2D Collision Utilities\n *\n * ---\n *\n * ### *Tools for spatial searches and collision tests with 2D k-d trees and boundaries*\n *\n * ---\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/kdtree2\n * ````\n *\n * ## Dependencies\n *\n * * {@link \"@xeokit/scene\" | @xeokit/scene}\n * * {@link \"@xeokit/core\" | @xeokit/core}\n * * {@link \"@xeokit/math\" | @xeokit/math}\n * * {@link \"@xeokit/boundaries\" | @xeokit/boundaries}\n *\n * ## Usage\n *\n * ````javascript\n *\n * ````\n *\n * @module @xeokit/kdtree2\n */\nexport * from \"./KdTree2\";\nexport * from \"./createKdTree2FromSceneObjectVerts\";\nexport * from \"./searchKdTree2ForNearestNeighbor\";\nexport {KdVertex2} from \"./KdVertex2\";\n", "import type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {containsAABB2} from \"@xeokit/boundaries\";\n\nconst MAX_KD_TREE_DEPTH = 10; // Increase if greater precision needed\nconst kdTreeDimLength = new Float32Array(2);\n\n/**\n * An item stored in a 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdItem2D {\n\n /**\n * The item stored in this KdItem2D.\n */\n item: any;\n}\n\n/**\n * A 2D k-d tree node.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdNode2D {\n\n /**\n * The axis-aligned 2D boundary of this kd-tree node.\n */\n aabb: FloatArrayParam;\n\n /**\n * The left KD2Node.\n */\n left?: KdNode2D;\n\n /**\n * The right KD2Node.\n */\n right?: KdNode2D;\n\n /**\n * The {@link KdItem2D | KdItem2Ds} stored in this KD2Node.\n */\n items?: KdItem2D[];\n}\n\n/**\n * Parameters for creating a 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport interface KdTree2DParams {\n\n /**\n * The 2D boundary of all the nodes we'll add to this k-d tree.\n */\n aabb: FloatArrayParam;\n\n /**\n * Maximum depth of the 2D kd-tree.\n */\n maxDepth?: number;\n}\n\n/**\n * A static 2D k-d tree.\n *\n * See {@link \"@xeokit/kdtree2\"} for usage.\n */\nexport class KdTree2 {\n\n /**\n * The root node in this k-d tree.\n */\n readonly root: KdNode2D;\n\n /**\n * The maximum allowed depth of this 2D k-d tree.\n */\n readonly maxDepth: number;\n\n /**\n * Creates a new 2D k-d tree.\n *\n * @param params\n */\n constructor(params?: KdTree2DParams) {\n this.maxDepth = params?.maxDepth || MAX_KD_TREE_DEPTH;\n\n this.root = {\n // @ts-ignore\n aabb: params.aabb.slice()\n };\n }\n\n /**\n * Inserts a bounded item into this 2D k-d tree.\n *\n * @param item\n * @param aabb\n */\n insertItem(item: any, aabb: IntArrayParam) {\n this.#insertItem(this.root, {item}, aabb, 1)\n }\n\n #insertItem(node: KdNode2D, item: KdItem2D, aabb: IntArrayParam, depth: number) {\n if (depth >= this.maxDepth) {\n node.items = node.items || [];\n node.items.push(item);\n return;\n }\n if (node.left) {\n if (containsAABB2(node.left.aabb, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (node.right) {\n if (containsAABB2(node.right.aabb, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n const nodeAABB = node.aabb;\n kdTreeDimLength[0] = nodeAABB[2] - nodeAABB[0];\n kdTreeDimLength[1] = nodeAABB[3] - nodeAABB[1];\n let dim = 0;\n if (kdTreeDimLength[1] > kdTreeDimLength[dim]) {\n dim = 1;\n }\n if (!node.left) {\n const aabbLeft = nodeAABB.slice();\n aabbLeft[dim + 2] = ((nodeAABB[dim] + nodeAABB[dim + 2]) / 2.0);\n node.left = {\n aabb: aabbLeft\n };\n if (containsAABB2(aabbLeft, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (!node.right) {\n const aabbRight = nodeAABB.slice();\n aabbRight[dim] = ((nodeAABB[dim] + nodeAABB[dim + 2]) / 2.0);\n node.right = {\n aabb: aabbRight\n };\n if (containsAABB2(aabbRight, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n node.items = node.items || [];\n node.items.push(item);\n }\n}\n", "import {type GeometryView, getSceneObjectGeometry, SceneObject} from \"@xeokit/scene\";\nimport {\n INSIDE,\n INTERSECT,\n OUTSIDE,\n setFrustum3,\n intersectFrustum3AABB3,\n intersectFrustum3Point3\n} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, createVec4, transformPoint4} from \"@xeokit/matrix\";\nimport {KdTree2} from \"./KdTree2\";\nimport type {KdVertex2} from \"./KdVertex2\";\n\n/**\n * A k-d tree to accelerate intersection and nearest-neighbour tests on the projected\n * 2D canvas positions of {@link @xeokit/scene!SceneObject} geometry vertices.\n *\n * See {@link \"@xeokit/kd-canvas-verts\"} for usage.\n */\nexport function createKdTree2FromSceneObjectVerts(params: {\n viewMatrix: FloatArrayParam,\n projMatrix: FloatArrayParam,\n canvasBoundary: FloatArrayParam,\n sceneObjects: SceneObject[]\n}): KdTree2 {\n\n const kdTree2D = new KdTree2({\n aabb: params.canvasBoundary\n });\n\n const viewMatrix = createMat4(params.viewMatrix);\n const projMatrix = createMat4(params.projMatrix);\n const frustum = setFrustum3(viewMatrix, projMatrix);\n const canvasBoundary = params.canvasBoundary;\n const sceneObjects = params.sceneObjects;\n\n if (sceneObjects) {\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n insertSceneObject(sceneObjects[i]);\n }\n }\n\n function insertSceneObject(sceneObject: SceneObject, intersects: number = INTERSECT) {\n if (intersects !== INSIDE) {\n intersects = intersectFrustum3AABB3(frustum, sceneObject.aabb);\n }\n if (intersects === OUTSIDE) {\n return;\n }\n // @ts-ignore\n getSceneObjectGeometry(sceneObject, (geometryView: GeometryView): boolean | undefined => {\n const positionsWorld = geometryView.positionsWorld;\n for (let i = 0, len = positionsWorld.length; i < len; i += 3) {\n const worldPos = createVec4();\n worldPos[0] = positionsWorld[i];\n worldPos[1] = positionsWorld[i + 1];\n worldPos[2] = positionsWorld[i + 2];\n worldPos[3] = 1.0;\n if (intersects === INSIDE || intersectFrustum3Point3(frustum, worldPos)) {\n insertVertex(sceneObject, worldPos);\n }\n }\n return false;\n });\n }\n\n function insertVertex(sceneObject: SceneObject, worldPos: FloatArrayParam) {\n const viewPos = createVec4();\n const projPos = createVec4();\n const canvasPos = new Uint16Array(2);\n transformPoint4(viewMatrix, worldPos, viewPos);\n transformPoint4(projMatrix, viewPos, projPos);\n canvasPos[0] = Math.floor((1 + projPos[0] / projPos[3]) * canvasBoundary[2] / 2);\n canvasPos[1] = Math.floor((1 - projPos[1] / projPos[3]) * canvasBoundary[3] / 2);\n kdTree2D.insertItem({sceneObject, worldPos, canvasPos}, [canvasPos[0], canvasPos[1], canvasPos[0], canvasPos[1]]);\n }\n\n return kdTree2D;\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneObject} from \"@xeokit/scene\";\nimport type {KdTree2} from \"./KdTree2\";\n\n/**\n *\n */\nexport function searchKdTree2ForNearestNeighbor(params: {\n kdTree: KdTree2,\n canvasPos: FloatArrayParam\n}): SceneObject[] {\n const kdTree = params.kdTree;\n const canvasPos = params.canvasPos;\n // @ts-ignore\n const sceneObjects = [];\n\n//...\n\n // @ts-ignore\n return sceneObjects;\n}\n", "import type {SceneObject} from \"@xeokit/scene\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\n\n/**\n * TODO\n */\nexport class KdVertex2 {\n sceneObject: SceneObject;\n worldPos: FloatArrayParam;\n canvasPos: IntArrayParam;\n}", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * \n *\n * # xeokit 3D Collision Utilities\n *\n * ---\n *\n * ### *Spatial searches and collision testing with 3D k-d trees, rays and boundaries*\n *\n * ---\n *\n * A {@link KdTree3} organizes items with 3D axis-aligned boundaries into a fast spatial search index that\n * allows us efficiently search it for items whose boundaries intersect given boundaries and volumes.\n *\n * This module provides the following functions to build KdTree3s:\n *\n * * {@link createPrimsKdTree3}: Creates a KdTree3 containing primitives from the given set of geometry arrays, organized by their coordinate 3D boundaries.\n * * {@link createSceneObjectPrimsKdTree3}: Creates a KdTree3 containing primitives belonging to the given SceneObjects, organized by their World-space 3D boundaries.\n * * {@link createSceneObjectsKdTree3}: Create a KdTree3 containing the given SceneObjects, organized by their World-space 3D boundaries.\n *\n * This module provides the following functions to search KdTree3s:\n *\n * * {@link searchKdTree3WithAABB}: Finds the items that collide with a given 3D axis-aligned boundary (AABB).\n * * {@link searchKdTree3WithFrustum}: Finds the items that collide with a given 3D frustum volume.\n * * {@link searchKdTree3WithRay}: Finds the items that collide with a given 3D ray.\n *\n * With these components, applications can implement (at least):\n *\n * * Frustum3 culling for {@link @xeokit/scene!SceneObject | SceneObjects}\n * * Ray-picking SceneObjects\n * * Marquee selection of SceneObjects\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/kdtree3\n * ````\n *\n * ## Dependencies\n *\n * * {@link \"@xeokit/scene\" | @xeokit/scene}\n * * {@link \"@xeokit/core\" | @xeokit/core}\n * * {@link \"@xeokit/math\" | @xeokit/math}\n * * {@link \"@xeokit/boundaries\" | @xeokit/boundaries}\n *\n * ## Usage\n *\n * Querying for {@link @xeokit/scene!SceneObject | SceneObjects} that intersect a 3D World-space boundary:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {SDKError} from \"@xeokit/core\";\n * import {TrianglesPrimitive} from \"@xeokit/constants\";\n * import {KdTree3, searchKdTree3WithAABB} from \"@xeokit/kdtree3\";\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * sceneModel.createGeometry({\n * id: \"theGeometry\", primitive: TrianglesPrimitive,\n * positions: [10.07, 0, 11.07, 9.58, 3.11, 11.07, 8.15, ..],\n * indices: [21, 0, 1, 1, 22, 21, 22, 1, 2, 2, 23, 22, 23, ..]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"redLegMesh\", geometryId: \"theGeometry\",\n * position: [-4, -6, -4], scale: [1, 3, 1], rotation: [0, 0, 0], color: [1, 0.3, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"greenLegMesh\", geometryId: \"theGeometry\", position: [4, -6, -4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 1.0, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"blueLegMesh\", geometryId: \"theGeometry\", position: [4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 0.3, 1.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\", geometryId: \"theGeometry\", position: [-4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [1.0, 1.0, 0.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"tableTopMesh\", geometryId: \"theGeometry\", position: [0, -3, 0], scale: [6, 0.5, 6],\n * rotation: [0, 0, 0], color: [1.0, 0.3, 1.0]\n * });\n *\n * sceneModel.createObject({ id: \"redLegSceneObject\", meshIds: [\"redLegMesh\"] });\n * sceneModel.createObject({ id: \"greenLegSceneObject\", meshIds: [\"greenLegMesh\"] });\n * sceneModel.createObject({ id: \"blueLegSceneObject\", meshIds: [\"blueLegMesh\"] });\n * sceneModel.createObject({ id: \"yellowLegSceneObject\", meshIds: [\"yellowLegMesh\"] });\n * sceneModel.createObject({ id: \"tableTopSceneObject\", meshIds: [\"tableTopMesh\"] });\n *\n * sceneModel.build()\n *\n * .then(() => {\n *\n * const kdTree = createSceneObjectsKdTree3(Object.values(scene.objects));\n *\n * const sceneObjects = searchKdTree3WithAABB({\n * kdTree,\n * aabb : [0, 0, 0, 10, 10, 10]\n * });\n *\n * const sceneObjects2 = searchKdTree3WithFrustum({\n * kdTree,\n * frustum: new Frustum3( .. )\n * });\n *\n * const objectMap = {};\n *\n * for (let i = 0, len = sceneObjects.length; i < len; i++) {\n * const sceneObject = sceneObjects[i];\n * }\n *\n * const redLegSceneObject = objectMap[\"redLegSceneObject\"];\n * const greenLegSceneObject = objectMap[\"greenLegSceneObject\"];\n * const tableTopSceneObject = objectMap[\"tableTopSceneObject\"];\n * });\n * }\n * ````\n *\n * @module @xeokit/kdtree3\n */\nexport * from \"./KdTree3\";\nexport * from \"./createSceneObjectsKdTree3\";\nexport * from \"./createSceneObjectPrimsKdTree3\";\nexport * from \"./createPrimsKdTree3\";\nexport * from \"./searchKdTree3WithAABB\";\nexport * from \"./searchKdTree3WithFrustum\";\nexport * from \"./searchKdTree3WithRay\";\nexport * from \"./KdSceneObjectPrim\";\nexport * from \"./KdTrianglePrim\";\nexport * from \"./KdLinePrim\";\nexport * from \"./KdPointPrim\";\nexport * from \"./PrimsKdTree3\";\nexport * from \"./sceneObjectsKdTree3\";\nexport * from \"./KdNode3\";\nexport * from \"./KdItem3\";\nexport * from \"./KdTree3Params\";\n\n\n", "import {containsAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\nimport type {KdTree3Params} from \"./KdTree3Params\";\n\n\nconst MAX_KD_TREE_DEPTH = 10; // Increase if greater precision needed\nconst kdTreeDimLength = new Float32Array(3);\n\n/**\n * A static k-d tree that organizes anything that has a boundary for\n * efficient 3D World-space boundary and frustm searches.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class KdTree3 {\n\n #root: KdNode3;\n #maxDepth: any;\n #numNodes: number;\n #numObjects: number;\n\n /**\n * Creates a new KdTree3.\n *\n * @param params\n */\n constructor(params: KdTree3Params) {\n this.#maxDepth = params?.maxDepth || MAX_KD_TREE_DEPTH;\n this.#root = {\n index: 0,\n aabb: params.aabb.slice()\n };\n this.#numNodes = 0;\n }\n\n get root(): KdNode3 {\n return this.#root;\n }\n\n insertItem(item: any, aabb: FloatArrayParam) {\n this.#insertItem(this.#root, {index: this.#numObjects++, item}, aabb, 1)\n }\n\n #insertItem(node: KdNode3, item: KdItem3D, aabb: FloatArrayParam, depth: number) {\n if (depth >= this.#maxDepth) {\n node.items = node.items || [];\n node.items.push(item);\n expandAABB3(node.aabb, aabb);\n return;\n }\n if (node.left) {\n if (containsAABB3(node.left.aabb, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (node.right) {\n if (containsAABB3(node.right.aabb, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n const nodeAABB = node.aabb;\n kdTreeDimLength[0] = nodeAABB[3] - nodeAABB[0];\n kdTreeDimLength[1] = nodeAABB[4] - nodeAABB[1];\n kdTreeDimLength[2] = nodeAABB[5] - nodeAABB[2];\n let dim = 0;\n if (kdTreeDimLength[1] > kdTreeDimLength[dim]) {\n dim = 1;\n }\n if (kdTreeDimLength[2] > kdTreeDimLength[dim]) {\n dim = 2;\n }\n if (!node.left) {\n const aabbLeft = nodeAABB.slice();\n aabbLeft[dim + 3] = ((nodeAABB[dim] + nodeAABB[dim + 3]) / 2.0);\n node.left = {\n index: this.#numNodes++,\n aabb: aabbLeft\n };\n if (containsAABB3(aabbLeft, aabb)) {\n this.#insertItem(node.left, item, aabb, depth + 1);\n return;\n }\n }\n if (!node.right) {\n const aabbRight = nodeAABB.slice();\n aabbRight[dim] = ((nodeAABB[dim] + nodeAABB[dim + 3]) / 2.0);\n node.right = {\n index: this.#numNodes++,\n aabb: aabbRight\n };\n if (containsAABB3(aabbRight, aabb)) {\n this.#insertItem(node.right, item, aabb, depth + 1);\n return;\n }\n }\n node.items = node.items || [];\n node.items.push(item);\n expandAABB3(node.aabb, aabb);\n }\n}\n", "import {KdTree3} from \"./KdTree3\";\n\n/**\n * k-d tree built by {@link createSceneObjectsKdTree3} that contains {@link @xeokit/scene!SceneObject | SceneObject} item types.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class SceneObjectsKdTree3 extends KdTree3 {\n}", "import type {SceneObject} from \"@xeokit/scene\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {SceneObjectsKdTree3} from \"./sceneObjectsKdTree3\";\n\n/**\n * Indexes the given SceneObjects in a k-d tree for efficient collision detection.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function createSceneObjectsKdTree3(sceneObjects: SceneObject[]): SceneObjectsKdTree3 {\n const aabb = collapseAABB3();\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n expandAABB3(aabb, sceneObjects[i].aabb);\n }\n const kdTree = new SceneObjectsKdTree3({aabb});\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n kdTree.insertItem(sceneObject, sceneObject.aabb);\n }\n return kdTree;\n}\n\n\n", "import {type GeometryView, getSceneObjectGeometry, SceneGeometry, SceneObject} from \"@xeokit/scene\";\nimport {KdTree3} from \"./KdTree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {KdSceneObjectPrim} from \"./KdSceneObjectPrim\";\n\n/**\n * k-d tree built by {@link createSceneObjectPrimsKdTree3}.\n */\nexport class SceneObjectsPrimsKdTree3 extends KdTree3 {}\n\n/**\n * Creates a KdTree3 that indexes the primitives belonging to the given SceneObjects in 3D World-space.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n *\n * @param sceneObjects\n */\nexport function createSceneObjectPrimsKdTree3(sceneObjects: SceneObject[]): SceneObjectsPrimsKdTree3 {\n\n const tempAABBInt16 = new Int16Array(6);\n\n function insertPoint(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = aabb[3] = ax;\n aabb[1] = aabb[4] = ay;\n aabb[2] = aabb[5] = az;\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a}}, aabb);\n }\n\n function insertLine(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, b: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx);\n aabb[1] = Math.min(ay, by);\n aabb[2] = Math.min(az, bz);\n aabb[3] = Math.max(ax, bx);\n aabb[4] = Math.max(ay, by);\n aabb[5] = Math.max(az, bz);\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a, b}}, aabb);\n }\n\n function insertTriangle(sceneObject: SceneObject, sceneGeometry: SceneGeometry, positions: FloatArrayParam, a: number, b: number, c: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const cx = positions[(c * 3)];\n const cy = positions[(c * 3) + 1];\n const cz = positions[(c * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx, cx);\n aabb[1] = Math.min(ay, by, cy);\n aabb[2] = Math.min(az, bz, cz);\n aabb[3] = Math.max(ax, bx, cx);\n aabb[4] = Math.max(ay, by, cy);\n aabb[5] = Math.max(az, bz, cz);\n kdTree.insertItem({sceneObject, sceneGeometry, prim: {a, b, c}}, aabb);\n }\n\n const aabb = collapseAABB3();\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const viewObject = sceneObjects[i];\n expandAABB3(aabb, viewObject.aabb);\n }\n const kdTree = new SceneObjectsPrimsKdTree3({\n aabb\n });\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n getSceneObjectGeometry(sceneObject, (geometryView: GeometryView) => {\n const sceneGeometry = geometryView.geometry;\n const positionsWorld = geometryView.positionsWorld; // <-- Can be expensive\n const indices = sceneGeometry.indices;\n switch (sceneGeometry.primitive) {\n case PointsPrimitive:\n for (let j = 0, lenj = positionsWorld.length / 3; j < lenj; j++) {\n insertPoint(sceneObject, sceneGeometry, positionsWorld, j, kdTree);\n }\n break;\n case TrianglesPrimitive:\n if (indices) {\n for (let j = 0, lenj = indices.length; j < lenj; j += 3) {\n insertTriangle(sceneObject, sceneGeometry, positionsWorld, indices[j], indices[j + 1], indices[j + 2], kdTree);\n }\n }\n break;\n case LinesPrimitive:\n if (indices) {\n for (let j = 0, lenj = indices.length; j < lenj; j += 2) {\n insertLine(sceneObject, sceneGeometry, positionsWorld, indices[j], indices[j + 1], kdTree);\n }\n }\n break;\n }\n return true;\n\n });\n }\n return kdTree;\n}\n", "import {KdTree3} from \"./KdTree3\";\n\n/**\n * k-d tree built by {@link createPrimsKdTree3} that contains {@link KdTriangle3}, {@link KdLine3} and {@link KdPoint3} item types.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport class PrimsKdTree3 extends KdTree3 {\n\n}", "import {createAABB3Int16, expandAABB3Points3} from \"@xeokit/boundaries\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdTrianglePrim} from \"./KdTrianglePrim\";\nimport type {KdLinePrim} from \"./KdLinePrim\";\nimport type {KdPointPrim} from \"./KdPointPrim\";\nimport {PrimsKdTree3} from \"./PrimsKdTree3\";\n\nconst tempAABBInt16 = new Int16Array(6);\n\n/**\n * Creates a KdTree3 that indexes the 3D primitives in the given arrays.\n *\n * This function does not care which coordinate space the primitives are in (ie. Local, World, View etc).\n *\n * This function also works for coordinates of any precision (ie. Float32Array, Float64Array, Int16Array, Int32Array etc).\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function createPrimsKdTree3(primitiveType: number, positions: FloatArrayParam, indices?: IntArrayParam): PrimsKdTree3 {\n const kdTree = new PrimsKdTree3({\n aabb: expandAABB3Points3(createAABB3Int16(), positions)\n });\n\n switch (primitiveType) {\n case PointsPrimitive:\n for (let i = 0, len = positions.length / 3; i < len; i++) {\n insertPoint(positions, i, kdTree);\n }\n break;\n case TrianglesPrimitive:\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i += 3) {\n insertTriangle(positions, indices[i], indices[i + 1], indices[i + 2], kdTree);\n }\n }\n break;\n case LinesPrimitive:\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i += 2) {\n insertLine(positions, indices[i], indices[i + 1], kdTree);\n }\n }\n break;\n }\n return kdTree;\n}\n\nfunction insertPoint(positions: FloatArrayParam, a: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = aabb[3] = ax;\n aabb[1] = aabb[4] = ay;\n aabb[2] = aabb[5] = az;\n kdTree.insertItem({a}, aabb);\n}\n\nfunction insertLine(positions: FloatArrayParam, a: number, b: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx);\n aabb[1] = Math.min(ay, by);\n aabb[2] = Math.min(az, bz);\n aabb[3] = Math.max(ax, bx);\n aabb[4] = Math.max(ay, by);\n aabb[5] = Math.max(az, bz);\n kdTree.insertItem({a, b}, aabb);\n}\n\nfunction insertTriangle(positions: FloatArrayParam, a: number, b: number, c: number, kdTree: KdTree3) {\n const ax = positions[(a * 3)];\n const ay = positions[(a * 3) + 1];\n const az = positions[(a * 3) + 2];\n const bx = positions[(b * 3)];\n const by = positions[(b * 3) + 1];\n const bz = positions[(b * 3) + 2];\n const cx = positions[(c * 3)];\n const cy = positions[(c * 3) + 1];\n const cz = positions[(c * 3) + 2];\n const aabb = tempAABBInt16;\n aabb[0] = Math.min(ax, bx, cx);\n aabb[1] = Math.min(ay, by, cy);\n aabb[2] = Math.min(az, bz, cz);\n aabb[3] = Math.max(ax, bx, cx);\n aabb[4] = Math.max(ay, by, cy);\n aabb[5] = Math.max(az, bz, cz);\n kdTree.insertItem({a, b, c}, aabb);\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {INTERSECT, intersectAABB3s, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D axis-aligned bounding box (AABB).\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithAABB(params: {\n kdTree: KdTree3,\n aabb: FloatArrayParam\n}): KdItem3D[] {\n\n const kdTree = params.kdTree;\n const aabb = params.aabb;\n const foundItems: KdItem3D[] = [];\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = intersectAABB3s(aabb, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "import {Frustum3, INTERSECT, intersectFrustum3AABB3, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D {@link @xeokit/boundaries!Frustum3}.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithFrustum(params: {\n kdTree: KdTree3,\n frustum: Frustum3\n}): KdItem3D[] {\n const kdTree = params.kdTree;\n const frustum = params.frustum;\n const foundItems: KdItem3D[] = [];\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = intersectFrustum3AABB3(frustum, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "import type {FloatArrayParam} from \"@xeokit/math\";\nimport {INTERSECT, OUTSIDE} from \"@xeokit/boundaries\";\nimport type {KdTree3} from \"./KdTree3\";\nimport type {KdNode3} from \"./KdNode3\";\nimport type {KdItem3D} from \"./KdItem3\";\n\n\n/**\n * Queries a {@link KdTree3} for {@link KdItem3D | KDItems} that intersect\n * a 3D ray.\n *\n * See {@link \"@xeokit/kdtree3\"} for usage.\n */\nexport function searchKdTree3WithRay(params: {\n kdTree: KdTree3,\n origin: FloatArrayParam,\n dir: FloatArrayParam\n}): KdItem3D[] {\n\n const kdTree = params.kdTree;\n const origin = params.origin;\n const dir = params.dir;\n const foundItems: KdItem3D[] = [];\n\n function testRayIntersectsAABB3(origin: FloatArrayParam, dir: FloatArrayParam, aabb: FloatArrayParam) : number{\n return 0;\n }\n\n function visit(node: KdNode3, isect: number) {\n if (isect === OUTSIDE) {\n return;\n }\n isect = testRayIntersectsAABB3(origin, dir, node.aabb);\n if (isect === OUTSIDE) {\n return;\n }\n const items = node.items;\n if (items && items.length > 0) {\n for (let i = 0, len = items.length; i < len; i++) {\n foundItems.push(items[i].item);\n }\n }\n if (node.left) {\n visit(node.left, isect);\n }\n if (node.right) {\n visit(node.right, isect);\n }\n }\n\n visit(kdTree.root, INTERSECT);\n return foundItems;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fcompression.svg)](https://badge.fury.io/js/%40xeokit%2Fcompression)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/kdtree/badge)](https://www.jsdelivr.com/package/npm/@xeokit/kdtree)\n *\n * # xeokit Picking System\n *\n * ---\n *\n * ### *Select objects and primitives using rays and boundaries*\n *\n * ---\n *\n * The following class diagrams depict xeokit's picking system architecture.\n *\n * The {@link @xeokit/collision!SceneObjectsKdTree3 | SceneObjectsKdTree3} class, a k-d tree that arranges\n * {@link @xeokit/scene!SceneObject | SceneObjects} for\n * efficient collision testing with boundaries, rays, and frustums, is positioned in the center of the\n * first diagram. To construct a SceneObjectsKdTree3, use\n * the {@link @xeokit/collision!createSceneObjectsKdTree3 | createSceneObjectsKdTree3} function.\n *\n * To find SceneObjects in the SceneObjectsKdTree3 that intersect a 3D world-space ray,\n * use {@link Picker.rayPick | Picker.rayPick()}, which will generate a {@link RayPickResult}. To find SceneObjects\n * that intersect a 2D marquee boundary, use {@link Picker.marqueePick | Picker.marqueePick()},\n * which will generate a {@link MarqueePickResult}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNp9k99PgzAQx_-V5p6cQTLkdx98MlGji2bzyfSlwqnVUbRAskn4322BuYFMEtLLfe_z5Xq0NSR5ikAhWfOiuBT8VfGMyVQoTEqRS3K3ZJJJQsxrnraOrBKUeP_8rovqndL0gV66yIBd1EEPIvlARX4BQhTfmuTJbfqoEF2L5Eq8Ckn052d02YlLLKp1WeyhjKuvCnEI9skZXezVAdmMuznYQtHbaK3eFTXD6r-2prQ48Bhhe3S4jxF2Lf6Q_ZgYOAxOz84udGDbpwwmeqDkSjspXmLR_SMmj9KjNgboIZS3kCGmJkTJCrlK3gw1pbfkpAUlNzLFjQEnhvkft8J1N-DRFo4z5BcCCzJUGRepPuPtyWNQvmGGDKgOU3zh2osBk40u5VWZr7YyAVqqCi2oPlM9oP5WAH3h60JnMRVlrhb9vTGLBZ9cAq1hA9QJYzsI5lHoeL7jeLEbWbAF6gaR7cZz3_HOg_g89KLGgu88165z2w_8UGuuH8wDN_Lc1u6pFU0fzQ91PCxm?type=png)](https://mermaid.live/edit#pako:eNp9k99PgzAQx_-V5p6cQTLkdx98MlGji2bzyfSlwqnVUbRAskn4322BuYFMEtLLfe_z5Xq0NSR5ikAhWfOiuBT8VfGMyVQoTEqRS3K3ZJJJQsxrnraOrBKUeP_8rovqndL0gV66yIBd1EEPIvlARX4BQhTfmuTJbfqoEF2L5Eq8Ckn052d02YlLLKp1WeyhjKuvCnEI9skZXezVAdmMuznYQtHbaK3eFTXD6r-2prQ48Bhhe3S4jxF2Lf6Q_ZgYOAxOz84udGDbpwwmeqDkSjspXmLR_SMmj9KjNgboIZS3kCGmJkTJCrlK3gw1pbfkpAUlNzLFjQEnhvkft8J1N-DRFo4z5BcCCzJUGRepPuPtyWNQvmGGDKgOU3zh2osBk40u5VWZr7YyAVqqCi2oPlM9oP5WAH3h60JnMRVlrhb9vTGLBZ9cAq1hA9QJYzsI5lHoeL7jeLEbWbAF6gaR7cZz3_HOg_g89KLGgu88165z2w_8UGuuH8wDN_Lc1u6pFU0fzQ91PCxm)\n *\n *
    \n *\n * ### Unpacking the Pick Results\n *\n * A {@link MarqueePickResult} provides a list of SceneObjects that intersect the marquee, so unpacking that is trivial.\n *\n * On the other hand, a {@link RayPickResult} includes comprehensive details regarding\n * each ray-SceneObject intersection. This information includes everything necessary to inspect the geometry of the intersecting\n * primitives within each SceneObject, and the coordinates at which each of them intersect the ray.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqlVVtvmzAY_SvIj1USBXKh8LCHtlI3bdGiptKkiRcHvqZewY5ssyWr8t9nDA42kLbSePHtnOPvil9RyjJAMUpzLMQdwTuOi4RmhEMqCaPe401CE-rpT2O8TQoUvm9_KcCrOam-AsQzCHsH4-3WrE-uyEqBPYu-A1aA5Md2p8CSk0OH7orcNyRbaM9JQST5DdYWE6TyRdxByoo9ByFWjnh7_U2ZvoAUF4y-d1DOreaK2-YCyNpDosKZQk-0GYakPxM5FJz60PVVQY3yqc2UlSMvQX6CrsZjNU4mVwnSsY-9W0YlJvRs1jmYPbxrW5-pc2mxLIoNbq0zTj_g45qkLw8gylw7LFqzW7-0WzXha_aNUJiZ2OCYlsUWeL3anlenFv_ICaa7_H2OtmpIYc0IlQN0y6yNY7aBWs7UG1WD1G5Z3FW9aUgVpp65HbHr1oersq4rwahUhVHP_jCeKxcM2o24SliC2Hj8SU86biS049ZldOxtIFejTvLbrMbdhBq_B84tuWFUr1kuyrV1eJbsd9oFjin3jzObLNSlblLSwVglGf_geC_eQOpifxdVF2jsNTj7B9z9TP9o6nA04y80g4P7H-_LNE3x3zpte35ACo1QAbzAJFPvla70BMlnKCBBsZpm8IRVVSdI1bqC4lKyzZGmKH7CuYARKvcZltA8ceddyIhkfNU8gtUwQntMUfyKDij2l9OJH_lBGAbBchrM_MUIHVG8nE2i63AWTueLKArCaL44jdBfxpTsdHIdLOfzZTBb-GEUTf1A6_3Uh5KXcPoHqcxSqw?type=png)](https://mermaid.live/edit#pako:eNqlVVtvmzAY_SvIj1USBXKh8LCHtlI3bdGiptKkiRcHvqZewY5ssyWr8t9nDA42kLbSePHtnOPvil9RyjJAMUpzLMQdwTuOi4RmhEMqCaPe401CE-rpT2O8TQoUvm9_KcCrOam-AsQzCHsH4-3WrE-uyEqBPYu-A1aA5Md2p8CSk0OH7orcNyRbaM9JQST5DdYWE6TyRdxByoo9ByFWjnh7_U2ZvoAUF4y-d1DOreaK2-YCyNpDosKZQk-0GYakPxM5FJz60PVVQY3yqc2UlSMvQX6CrsZjNU4mVwnSsY-9W0YlJvRs1jmYPbxrW5-pc2mxLIoNbq0zTj_g45qkLw8gylw7LFqzW7-0WzXha_aNUJiZ2OCYlsUWeL3anlenFv_ICaa7_H2OtmpIYc0IlQN0y6yNY7aBWs7UG1WD1G5Z3FW9aUgVpp65HbHr1oersq4rwahUhVHP_jCeKxcM2o24SliC2Hj8SU86biS049ZldOxtIFejTvLbrMbdhBq_B84tuWFUr1kuyrV1eJbsd9oFjin3jzObLNSlblLSwVglGf_geC_eQOpifxdVF2jsNTj7B9z9TP9o6nA04y80g4P7H-_LNE3x3zpte35ACo1QAbzAJFPvla70BMlnKCBBsZpm8IRVVSdI1bqC4lKyzZGmKH7CuYARKvcZltA8ceddyIhkfNU8gtUwQntMUfyKDij2l9OJH_lBGAbBchrM_MUIHVG8nE2i63AWTueLKArCaL44jdBfxpTsdHIdLOfzZTBb-GEUTf1A6_3Uh5KXcPoHqcxSqw)\n *\n *
    \n *\n * RayPickResult represents the hierarchical arrangement of Scene components selected by Picker.rayPick(). This\n * structure enables the iteration of the chosen SceneObjects, and the iteration of the selected Meshes, Geometries, and\n * GeometryBuckets within each SceneObject. The structure goes all the way down to the chosen primitives, which can be\n * KdLine3D, KdPoint3D, or KdTriangle3D.\n *\n * A primitive has one or more vertex indices, and the number of indices is determined by the primitive type. These\n * indices are used to access the compressed vertex coordinates of the primitive within\n * SceneGeometryBucket.positionsCompressed. These coordinates can be decompressed using SceneGeometry.positionsDecompressMatrix and\n * then transformed into the World-space coordinate system using SceneMesh.matrix to obtain the final coordinates of the primitive.\n *\n * To keep a low memory footprint, while being flexible and extensible, both the RayPickResult and xeokit's\n * scene graph have been designed in such a way that requires some boilerplate code to traverse and unpack them. This\n * includes coordinate decompression and transformation, which we'll demonstrate in the example code below.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/collision\n * ````\n *\n * ## Usage\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {SDKError} from \"@xeokit/core\";\n * import {TrianglesPrimitive, LinesPrimitive, PointsPrimitive} from \"@xeokit/constants\";\n * import {KdTree3, searchKdTree3WithAABB} from \"@xeokit/kdtree3\";\n *\n * // Create a scene graph - notice there's not a Viewer in sight\n *\n * const scene = new Scene();\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.log(sceneModel.message);\n *\n * } else {\n *\n * // Build our standard Table model, with a table top and four legs\n *\n * sceneModel.createGeometry({\n * id: \"theGeometry\", primitive: TrianglesPrimitive,\n * positions: [10.07, 0, 11.07, 9.58, 3.11, 11.07, 8.15, ..],\n * indices: [21, 0, 1, 1, 22, 21, 22, 1, 2, 2, 23, 22, 23, ..]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"redLegMesh\", geometryId: \"theGeometry\",\n * position: [-4, -6, -4], scale: [1, 3, 1], rotation: [0, 0, 0], color: [1, 0.3, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"greenLegMesh\", geometryId: \"theGeometry\", position: [4, -6, -4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 1.0, 0.3]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"blueLegMesh\", geometryId: \"theGeometry\", position: [4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [0.3, 0.3, 1.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"yellowLegMesh\", geometryId: \"theGeometry\", position: [-4, -6, 4], scale: [1, 3, 1],\n * rotation: [0, 0, 0], color: [1.0, 1.0, 0.0]\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"tableTopMesh\", geometryId: \"theGeometry\", position: [0, -3, 0], scale: [6, 0.5, 6],\n * rotation: [0, 0, 0], color: [1.0, 0.3, 1.0]\n * });\n *\n * sceneModel.createObject({ id: \"redLegSceneObject\", meshIds: [\"redLegMesh\"] });\n * sceneModel.createObject({ id: \"greenLegSceneObject\", meshIds: [\"greenLegMesh\"] });\n * sceneModel.createObject({ id: \"blueLegSceneObject\", meshIds: [\"blueLegMesh\"] });\n * sceneModel.createObject({ id: \"yellowLegSceneObject\", meshIds: [\"yellowLegMesh\"] });\n * sceneModel.createObject({ id: \"tableTopSceneObject\", meshIds: [\"tableTopMesh\"] });\n *\n * sceneModel.build()\n *\n * .then(() => {\n *\n * // When our model is finalized, insert all\n * // its SceneObjects into a SceneObjectsKdTree3\n *\n * const sceneObjectsKdTree3 = createSceneObjectsKdTree3(Object.values(scene.objects));\n *\n * // Then we'll try to ray-pick the SceneObjects\n *\n * const picker = new Picker();\n *\n * const rayPickResult = picker.rayPick({\n * sceneObjectsKdTree3,\n * origin: [0,0,100],\n * dir: [0,0,-1];\n * });\n *\n * // We get a RayPickResults, which contains a\n * // SceneObjectHit that wraps each SceneObject we picked\n *\n * for (let i =0, len = rayPickResult.sceneObjectHits.length; i < len; i++) {\n *\n * const sceneObjectHit = rayPickResult.sceneObjectHits[i];\n * const sceneObject = sceneObjectHit.sceneObject;\n *\n * // Within each SceneObjectHit we get a MeshHit that wraps each SceneMesh that\n * // was picked in this SceneObject\n *\n * const meshHit = sceneObjectHit.meshHit;\n * const mesh = meshHit.mesh;\n *\n * // Within the MeshHit, a single GeometryHit that wraps\n * // the SceneGeometry that was picked\n *\n * const geometryHit = meshHit.geometryHit;\n * const geometry = geometryHit.geometry;\n *\n * // Within the GeometryHit, we get a GeometryBucketHit for each hit\n *\n * const geometryBucketHit = geometryHit.geometryBucketHit;\n * const geometryBucket = geometryBucketHit.geometryBucket;\n *\n * // And finally within the GeometryBucketHit, a PrimHit\n * // for each primitive that was hit within the SceneGeometryBucket.\n *\n * // Each PrimtHit wraps a single a single KdPointPrim, KdLinePrim or KdTrianglePrim,\n * // which represents a point, line or triangle primitive, respectively.\n *\n * for (let j = 0, lenj = geometryBucketHit.primHits.length; j < lenj; j++) {\n *\n * const primHit = geometryBucketHit.primHits[j];\n * const primitive = primHit.primitive;\n *\n * // We know the primitive type from the SceneGeometry\n *\n * switch (geometry.primitive) {\n *\n * case TrianglesPrimitive:\n *\n * // Using the vertex indices of each primitive,\n * // we can then access the compressed coordinates\n * // for that vertex, then we can decompress them\n * // and transform them into World-space.\n *\n * const kdTriangle3D = primHit.prim;\n *\n * break;\n *\n * case LinesPrimitive:\n * const kdTriangle3D = primHit.prim;\n *\n * break;\n *\n * case PointsPrimitive:\n * const kdPoint3D = primHit.prim;\n *\n * break;\n * }\n * }\n * }\n * });\n * }\n *\n * ````\n *\n * @module @xeokit/pick\n */\nexport * from \"./Picker\";\nexport * from \"./MarqueePickResult\";\nexport * from \"./RayPickResult\";\nexport {SceneObjectHit} from \"./SceneObjectHit\";\nexport {MeshHit} from \"./MeshHit\";\nexport {GeometryHit} from \"./GeometryHit\";\nexport {PrimHit} from \"./PrimHit\";\n\n\n", "import type {KdTree3, PrimsKdTree3} from \"@xeokit/kdtree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * Caches reusable resources for {@link rayPick} and {@link marqueePick}.\n *\n * These resources are lazy-generated by these methods. When provided\n * again to the methods, we can avoid the method needing to re-generate them.\n *\n * > Internally, the resources consist of lazy-generated {@link PrimsKdTree3 | PrimsKdTree3s}, cached for\n * {@link @xeokit/scene!SceneGeometryBucket | GeometryBuckets} of\n * candidate {@link @xeokit/scene!SceneObject | SceneObjects} while picking.\n */\nexport class PickPrimsCache {\n\n /**\n * TODO\n */\n primitivesKdTrees: {\n [key: string]: {\n primitivesKdTree: PrimsKdTree3,\n positions: FloatArrayParam\n }\n };\n\n /**\n * TODO\n */\n constructor() {\n this.primitivesKdTrees = {};\n }\n\n /**\n * TODO\n */\n clear() {\n this.primitivesKdTrees = {};\n }\n}", "import {\n createPrimsKdTree3,\n KdLinePrim,\n KdPointPrim,\n KdTrianglePrim,\n SceneObjectsKdTree3,\n searchKdTree3WithFrustum,\n searchKdTree3WithRay\n} from \"@xeokit/kdtree3\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {RayPickResult} from \"./RayPickResult\";\nimport type {MarqueePickResult} from \"./MarqueePickResult\";\nimport {PickPrimsCache} from \"./PickPrimsCache\";\nimport {decompressPositions3WithAABB3} from \"@xeokit/compression\";\nimport {LinesPrimitive, PointsPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport type {SceneGeometry, SceneObject} from \"@xeokit/scene\";\n\nimport type {Frustum3} from \"@xeokit/boundaries\";\n\n/**\n * See {@link \"@xeokit/collision!pick\"} for usage.\n */\nexport class Picker {\n\n #pickPrimsCache: PickPrimsCache;\n\n constructor() {\n this.#pickPrimsCache = new PickPrimsCache();\n }\n\n /**\n * TODO\n * @param params\n */\n rayPick(params: {\n sceneObjectsKdTree3: SceneObjectsKdTree3,\n origin: FloatArrayParam,\n dir: FloatArrayParam\n }): RayPickResult {\n\n //\n // Cache for different Scene's?\n //\n\n const sceneObjectsKdTree3 = params.sceneObjectsKdTree3;\n const origin = params.origin;\n const dir = params.dir;\n const rayPickResult = {\n sceneObjectHits: []\n };\n // const kdItems = searchKdTree3WithRay({kdTree: sceneObjectsKdTree3, origin, dir});\n // for (let i = 0, len = kdItems.length; i < len; i++) {\n // const item = kdItems[i];\n // const sceneObject: SceneObject = item.sceneObject;\n // const meshHits: MeshHit[] = [];\n // for (let j = 0, lenj = sceneObject.meshes.length; j < lenj; j++) {\n // const mesh = sceneObject.meshes[j];\n // const geometryBucketHits: GeometryBucketHit[] = [];\n // //////////////////////\n // // Transform ray into mesh local space, by inverse of mesh matrix\n // ///////////////////////\n // const geometry = mesh.geometry;\n // for (let k = 0, lenk = geometry.geometryBuckets.length; k < lenk; k++) {\n // const primHits: any[] = [];\n // const geometryBucket = geometry.geometryBuckets[k];\n // let primsKdTree3 = this.#getPrimsKdTree3(geometry, k, geometryBucket);\n // const primitives = searchKdTree3WithRay({kdTree: primsKdTree3.primsKdTree3, origin, dir});\n // if (primitives.length) {\n // switch (geometry.primitive) {\n // case TrianglesPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const triangle = primitives[l];\n // // const a = triangle.a;\n // // const b = triangle.b;\n // // const c = triangle.c;\n // // const cx = primsKdTree3.positions[a * 3];\n // // const cy = primsKdTree3.positions[a * 3 + 1];\n // // const cz = primsKdTree3.positions[a * 3 + 2];\n //\n // //////////////////////////\n // // Get ray-triangle intersection in worldPos\n // /////////////////////////////\n //\n // // primHits.push({primitive: triangle, worldPos});\n // }\n // break;\n // case LinesPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const line = primitives[l];\n // // primHits.push({primitive: line, worldPos});\n // }\n // break;\n // case PointsPrimitive:\n // for (let l = 0, lenl = primitives.length; l < lenl; l++) {\n // // const point = primitives[l];\n // // primHits.push({primitive: point, worldPos});\n // }\n // break;\n // }\n // }\n // if (primHits.length > 0) {\n // geometryBucketHits.push({geometryBucket, primHits});\n // }\n // }\n // if (geometryBucketHits.length > 0) {\n // meshHits.push({mesh, geometry, geometryBucketHits})\n // }\n // }\n // if (meshHits.length) {\n // rayPickResult.sceneObjectHits.push({sceneObject, meshHits});\n // }\n // }\n return rayPickResult;\n }\n\n /**\n * Picks a {@link @xeokit/scene!SceneObjectsKdTree3} using a 2D marquee to obtain a {@link MarqueePickResult}\n * containing picked {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh}, {@link @xeokit/scene!SceneGeometry},\n * {@link @xeokit/scene!SceneGeometryBucket | GeometryBuckets}, {@link KdTrianglePrim}, {@link KdLinePrim} and {@link KdPointPrim}.\n * @param params\n */\n marqueePick(params: {\n sceneObjectsKdTree3: SceneObjectsKdTree3,\n marquee: FloatArrayParam\n }): MarqueePickResult {\n const sceneObjectsKdTree3 = params.sceneObjectsKdTree3;\n const pickPrimsCache = this.#pickPrimsCache;\n const marqueePickResult = {\n sceneObjects: []\n };\n // @ts-ignore\n const frustum: Frustum3 = null; // Create from marquee\n const kdItems = searchKdTree3WithFrustum({\n kdTree: sceneObjectsKdTree3,\n frustum\n });\n for (let i = 0, len = kdItems.length; i < len; i++) {\n const kdItem = kdItems[i];\n const sceneObject = kdItem.item;\n const meshes = [];\n for (let j = 0, lenj = sceneObject.meshes.length; j < lenj; j++) {\n const mesh = sceneObject.meshes[j];\n const pickedGeometryMeshes = [];\n //////////////////////\n // Transform frustum into mesh local space, by inverse of mesh matrix\n ///////////////////////\n const geometry = mesh.geometry;\n for (let k = 0, lenk = geometry.geometryBuckets.length; k < lenk; k++) {\n const prims = [];\n const geometryBucket = geometry.geometryBuckets[k];\n let primsKdTree3 = this.#getPrimsKdTree3(geometry, k);\n const items = searchKdTree3WithFrustum({\n kdTree: primsKdTree3.primitivesKdTree,\n frustum\n });\n if (items.length) {\n switch (geometry.primitive) {\n case TrianglesPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const triangle = item.item.prim;\n const a = triangle.a;\n const b = triangle.b;\n const c = triangle.c;\n const cx = primsKdTree3.positions[a * 3];\n const cy = primsKdTree3.positions[a * 3 + 1];\n const cz = primsKdTree3.positions[a * 3 + 2];\n //////////////////////////\n // Get FRUSTUM-TRIANGLE-CENTER intersection in worldPos\n /////////////////////////////\n // prims.push({primitive: triangle, worldPos});\n }\n break;\n case LinesPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const line = item.item.prim;\n // prims.push({primitive: line, worldPos});\n }\n break;\n case PointsPrimitive:\n for (let l = 0, lenl = items.length; l < lenl; l++) {\n const item = items[l];\n const point = item.item.prim;\n\n // prims.push({primitive: point, worldPos});\n }\n break;\n }\n }\n }\n }\n /////////////////////////////////////////////////////////////////////////\n const selected = false;\n\n if (selected) {\n marqueePickResult.sceneObjects.push(sceneObject);\n }\n }\n return marqueePickResult;\n }\n\n #getPrimsKdTree3(geometry: SceneGeometry, k: number): any {\n const kdTreeId = `${geometry.id}-${k}`;\n // @ts-ignore\n let primsKdTree3 = this.#pickPrimsCache[kdTreeId];\n if (!primsKdTree3) {\n const positions = decompressPositions3WithAABB3(\n geometry.positionsCompressed,\n geometry.aabb,\n new Float32Array(geometry.positionsCompressed.length));\n primsKdTree3 = {\n primsKdTree3: createPrimsKdTree3(geometry.primitive, positions, geometry.indices),\n positions\n }\n // @ts-ignore\n this.#pickPrimsCache[kdTreeId] = primsKdTree3;\n }\n return primsKdTree3;\n }\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit Basic Semantic Data Types\n *\n * * Defines numeric constants for a basic set of entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign basic types to {@link @xeokit/data!DataObject | DataObjects}\n * and {@link @xeokit/data!Relationship | Relationships} and treat them as elements of a basic entity-relationship graph.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} , to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating basic element hierachies.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/basictypes\n * ````\n *\n * @module @xeokit/basictypes\n */\n\n/**\n * A generic entity.\n */\nexport const BasicEntity = 1000;\n\n/**\n * A generic aggregation relationship between two generic entities.\n */\nexport const BasicAggregation = 1001;\n\n\n/**\n * Map of names for all basic entity types.\n */\nexport const typeNames: { [key: number]: string } = {\n [BasicEntity]: \"BasicEntity\",\n [BasicAggregation]: \"BasicAggregation\"\n};\n\n/**\n * Map of type codes for all basic entity type names.\n */\nexport const typeCodes: { [key: string]: number } = {\n \"BasicEntity\": BasicEntity,\n \"BasicAggregation\": BasicAggregation\n};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit CityJSON 1.1.3 Data Types\n *\n * * Defines numeric constants for the set of [CityJSON](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#cityjson) 1.1.3 entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign CityJSON types to {@link @xeokit/data!DataObject | DataObjects}\n * and {@link @xeokit/data!Relationship | Relationships} and treat them as elements of a basic entity-relationship graph.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} , to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating CityJSON objects.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/cityjsontypes1x1x3\n * ````\n *\n * @module @xeokit/cityjsontypes_1_1_3\n */\n\n/**\n * A generic aggregation relationship between two generic entities.\n */\nexport const BasicAggregation = 2001;\n\n/**\n * This CityObject type represents a bridge, which can have attributes such as the length, height, and type of bridge.\n */\nexport const Bridge = 2000;\n\n/**\n * This CityJSON object represents a physical or functional subdivision of a Bridge.\n */\nexport const BridgePart = 2001;\n\n/**\n * This CityJSON type represents a permanent part of a Bridge (inside and/or outside) which does not have the significance of a\n * BridgePart. In contrast to BridgeConstructiveElements, a BridgeInstallation is not essential from a structural point of view.\n * Examples are stairs, antennas or railways.\n */\nexport const BridgeInstallation = 2002;\n\n/**\n * This CityJSON type represents an element of a bridge which is essential from a structural point of view. Examples are pylons,\n * anchorages, slabs, beams.\n */\nexport const BridgeConstructiveElement = 2003;\n\n/**\n * This CityJSON type represents a space within a Bridge or BridgePart intended for human occupancy (e.g. a place of work or\n * recreation) and/or containment (storage) of animals or things. A BridgeRoom is bounded physically and/or virtually (e.g. by\n * ClosureSurfaces or GenericSurfaces).\n */\nexport const BridgeRoom = 2004;\n\n/**\n * This CityJSON type represents equipment for occupant use, usually not fixed to the bridge. [cf. ISO 6707-1]\n */\nexport const BridgeFurniture = 2005;\n\n/**\n * This CityObject type represents a building, which can contain one or more \"BuildingPart\" objects. The Building object can\n * have attributes such as the building height, number of floors, and the year of construction.\n */\nexport const Building = 2006;\n\n/**\n * This CityObject type represents a part of a building, such as a wing or a tower. Building parts can have attributes such\n * as the building part height and the material used in its construction.\n */\nexport const BuildingPart = 2007;\n\n/**\n * This CityJSON type represents a permanent part of a Building (inside and/or outside) which has not the significance of a\n * BuildingPart. Examples are stairs, antennas, balconies or small roofs.\n */\nexport const BuildingInstallation = 2008;\n\n/**\n * This CityJSON type represents an element of a Building which is essential from a structural point of view. Examples are walls,\n * slabs, staircases, beams.\n */\nexport const BuildingConstructiveElement = 2009;\n\n/**\n * This CityJSON type represents equipment for occupant use, usually not fixed to the building. [cf. ISO 6707-1]\n */\nexport const BuildingFurniture = 2010;\n\n/**\n * This CityJSON type represents a horizontal section of a Building. BuildingStorey are not always defined according to the\n * building structure, but can also be defined according to logical considerations.\n */\nexport const BuildingStorey = 2011;\n\n/**\n * This CityJSON type represents a space within a Building or BuildingPart intended for human occupancy (e.g. a place of work or recreation)\n * and/or containment of animals or things. A BuildingRoom is bounded physically and/or virtually (e.g. by ClosureSurfaces or GenericSurfaces).\n */\nexport const BuildingRoom = 2012;\n\n/**\n * This CityJSON type represents a logical subdivision of a Building. BuildingUnits are formed according to some homogeneous\n * property like function, ownership, management, or accessibility. They may be separately sold, rented out, inherited, managed, etc.\n */\nexport const BuildingUnit = 2013;\n\n/**\n * This CityObject type represents outdoor furniture, such as benches, trash cans, and street lamps. CityFurniture objects can\n * have attributes such as the type of furniture and its location.\n */\nexport const CityFurniture = 2014;\n\n/**\n * This CityObject type represents a group of other CityObjects. CityObjectGroup objects can have attributes such as the name\n * of the group and the CityObjects it contains.\n */\nexport const CityObjectGroup = 2015;\n\n/**\n * This CityObject type represents the land use of a particular area, such as residential, commercial, or industrial. LandUse\n * objects can have attributes such as the name of the land use and the area it covers.\n */\nexport const LandUse = 2016;\n\n/**\n * this CityObject type represents an unclassified, generic element of construction.\n */\nexport const OtherConstruction = 2017;\n\n/**\n * This CityObject type represents vegetation, such as trees, bushes, and grass. PlantCover objects can have attributes such\n * as the type of vegetation and its location.\n */\nexport const PlantCover = 2018;\n\n/**\n * This CityObject type represents individual vegetation objects, e.g. trees or bushes.\n */\nexport const SolitaryVegetationObject = 2019;\n\n/**\n * This CityJSON type represents a terrain component as a triangulated irregular network.\n */\nexport const TINRelief = 2020;\n\n\nexport const TransportationSquare = 2021;\n\n/**\n * This CityObject type represents a railway, which can have attributes such as the type of railway and the tracks' location.\n */\nexport const Railway = 2022;\n\n/**\n * This CityObject type represents a road, which can have attributes such as the road type and the road's location.\n */\nexport const Road = 2023;\n\n/**\n * This CityObject type is used to represent any type of underground or underwater structure designed for passage or transportation,\n * such as a subway or water tunnel. It is defined by its geometry and other attributes.\n */\nexport const Tunnel = 2024;\n\n/**\n * This CityObject type represents a physical or functional subdivision of a Tunnel. It would be considered a Tunnel, if it were\n * not part of a collection of other TunnelParts.\n */\nexport const TunnelPart = 2025;\n\n/**\n * This CityObject type represents a permanent part of a Tunnel (inside and/or outside) which does not have the significance of a\n * TunnelPart. In contrast to TunnelConstructiveElement, a TunnelInstallation is not essential from a structural point of view. Examples\n * are stairs, antennas or railings.\n */\nexport const TunnelInstallation = 2026;\n\n/**\n * This CityObject type represents an element of a Tunnel which is essential from a structural point of view. Examples are walls, slabs, beams.\n */\nexport const TunnelConstructiveElement = 2027;\n\n/**\n * This CityObject type represents a hollow space within a Tunnel.\n */\nexport const TunnelHollowSpace = 2028;\n\n/**\n * This CityObject type represents equipment for occupant use, usually not fixed to the tunnel. [cf. ISO 6707-1]\n */\nexport const TunnelFurniture = 2029;\n\n/**\n * This CityObject type represents a body of water, such as a river, lake, or ocean. It is defined by its geometry and other attributes,\n * and can be used to model and analyze hydrological features.\n */\nexport const WaterBody = 2030;\n\n/**\n * This CityObject type is used to represent a natural or man-made channel that carries water, such as a river, canal, or stormwater drain.\n * It is defined by its geometry and other attributes, and can be used to model and analyze hydrological features.\n */\nexport const Waterway = 2031;\n\n/**\n * Map of names for all supported CityObject types.\n */\nexport const typeNames: { [key: number]: string } = {\n [Bridge]: \"Bridge\",\n [BridgePart]: \"BridgePart\",\n [BridgeInstallation]: \"BridgeInstallation\",\n [BridgeConstructiveElement]: \"BridgeConstructiveElement\",\n [BridgeRoom]: \"BridgeRoom\",\n [BridgeFurniture]: \"BridgeFurniture\",\n [Building]: \"Building\",\n [BuildingPart]: \"BuildingPart\",\n [BuildingInstallation]: \"BuildingInstallation\",\n [BuildingConstructiveElement]: \"BuildingConstructiveElement\",\n [BuildingFurniture]: \"BuildingFurniture\",\n [BuildingStorey]: \"BuildingStorey\",\n [BuildingRoom]: \"BuildingRoom\",\n [BuildingUnit]: \"BuildingUnit\",\n [CityFurniture]: \"CityFurniture\",\n [CityObjectGroup]: \"CityObjectGroup\",\n [LandUse]: \"LandUse\",\n [OtherConstruction]: \"OtherConstruction\",\n [PlantCover]: \"PlantCover\",\n [SolitaryVegetationObject]: \"SolitaryVegetationObject\",\n [TINRelief]: \"TINRelief\",\n [TransportationSquare]: \"TransportationSquare\",\n [Railway]: \"Railway\",\n [Road]: \"Road\",\n [Tunnel]: \"Tunnel\",\n [TunnelPart]: \"TunnelPart\",\n [TunnelInstallation]: \"TunnelInstallation\",\n [TunnelConstructiveElement]: \"TunnelInstallation\",\n [TunnelHollowSpace]: \"TunnelHollowSpace\",\n [TunnelFurniture]: \"TunnelFurniture\",\n [WaterBody]: \"WaterBody\",\n [Waterway]: \"Waterway\",\n};\n\n/**\n * Map of type codes for all CityObject type names.\n */\nexport const typeCodes: { [key: string]: number } = {\n \"Bridge\": Bridge,\n \"BridgePart\": BridgePart,\n \"BridgeInstallation\": BridgeInstallation,\n \"BridgeConstructiveElement\": BridgeConstructiveElement,\n \"BridgeRoom\": BridgeRoom,\n \"BridgeFurniture\": BridgeFurniture,\n \"Building\": Building,\n \"BuildingPart\": BuildingPart,\n \"BuildingInstallation\": BuildingInstallation,\n \"BuildingConstructiveElement\": BuildingConstructiveElement,\n \"BuildingFurniture\": BuildingFurniture,\n \"BuildingStorey\": BuildingStorey,\n \"BuildingRoom\": BuildingRoom,\n \"BuildingUnit\": BuildingUnit,\n \"CityFurniture\": CityFurniture,\n \"CityObjectGroup\": CityObjectGroup,\n \"LandUse\": LandUse,\n \"OtherConstruction\": OtherConstruction,\n \"PlantCover\": PlantCover,\n \"SolitaryVegetationObject\": SolitaryVegetationObject,\n \"TINRelief\": TINRelief,\n \"TransportationSquare\": TransportationSquare,\n \"Railway\": Railway,\n \"Road\": Road,\n \"Tunnel\": Tunnel,\n \"TunnelPart\": TunnelPart,\n \"TunnelInstallation\": TunnelInstallation,\n \"TunnelConstructiveElement\": TunnelInstallation,\n \"TunnelHollowSpace\": TunnelHollowSpace,\n \"TunnelFurniture\": TunnelFurniture,\n \"WaterBody\": WaterBody,\n \"Waterway\": Waterway\n};\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdatatypes.svg)](https://badge.fury.io/js/%40xeokit%2Fdatatypes)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/basictypes/badge)](https://www.jsdelivr.com/package/npm/@xeokit/basictypes)\n *\n * \n *\n * # xeokit IFC Data Types\n *\n * * Defines numeric constants for [IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc) entity and relationship types.\n * * Use with {@link \"@xeokit/data\" | @xeokit/data} to assign IFC types to {@link @xeokit/data!DataObject | DataObjects} and\n * {@link @xeokit/data!Relationship | Relationships} and treat them as IFC elements.\n * * Use with {@link \"@xeokit/treeview\" | @xeokit/treeview} to configure the appearance and behaviour of\n * {@link @xeokit/treeview!TreeView | TreeViews} for navigating IFC element hierachies.\n * * Supports IFC versions 2x3 and 4.\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/basictypes\n * ````\n *\n * @module @xeokit/ifctypes\n */\n\n/**\n * A request is the act or instance of asking for something, such as a request for information, bid submission, or performance of work.\n */\nexport const IfcActionRequest = 1000;\n\n/**\n * The IfcActor defines all actors or human agents involved in a project during its full life cycle. It facilitates the use of person and organization definitions in the resource part of the IFC object model. This includes name, address, telecommunication addresses, and roles.\n */\nexport const IfcActor = 1001;\n\n/**\n * This entity indicates a role which is performed by an actor, either a person, an organization or a person related to an organization.\n */\nexport const IfcActorRole: number = 1002;\n\n/**\n * An actuator is a mechanical device for moving or controlling a mechanism or system. An actuator takes energy, usually created by air, electricity, or liquid, and converts that into some kind of motion.\n */\nexport const IfcActuator = 1003;\n\n/**\n * The distribution control element type IfcActuatorType defines commonly shared information for occurrences of actuators. The set of shared information may include:\n */\nexport const IfcActuatorType = 1004;\n\n/**\n * This abstract entity represents various kinds of postal and telecom addresses.\n */\nexport const IfcAddress = 1005;\n\n/**\n * An advanced B-rep is a boundary representation model in which all faces, edges and vertices are explicitly represented. It is a solid with explicit topology and elementary or free-form geometry. The faces of the B-rep are of type IfcAdvancedFace. An advanced B-rep has to meet the same topological constraints as the manifold solid B-rep.\n */\nexport const IfcAdvancedBrep = 1006;\n\n/**\n * The IfcAdvancedBrepWithVoids is a specialization of an advanced B-rep which contains one or more voids in its interior. The voids are represented as closed shells which are defined so that the shell normal point into the void.\n */\nexport const IfcAdvancedBrepWithVoids = 1007;\n\n/**\n * An advanced face is a specialization of a face surface that has to meet requirements on using particular topological and geometric representation items for the definition of the faces, edges and vertices.\n */\nexport const IfcAdvancedFace = 1008;\n\n/**\n * An air terminal is a terminating or origination point for the transfer of air between distribution system(s) and one or more spaces. It can also be used for the transfer of air between adjacent spaces.\n */\nexport const IfcAirTerminal = 1009;\n\n/**\n * An air terminal box typically participates in an HVAC duct distribution system and is used to control or modulate the amount of air delivered to its downstream ductwork. An air terminal box type is often referred to as an \"air flow regulator\".\n */\nexport const IfcAirTerminalBox = 1010;\n\n/**\n * The flow controller type IfcAirTerminalBoxType defines commonly shared information for occurrences of air terminal boxes. The set of shared information may include:\n */\nexport const IfcAirTerminalBoxType = 1011;\n\n/**\n * The flow terminal type IfcAirTerminalType defines commonly shared information for occurrences of air terminals. The set of shared information may include:\n */\nexport const IfcAirTerminalType = 1012;\n\n/**\n * An air-to-air heat recovery device employs a counter-flow heat exchanger between inbound and outbound air flow. It is typically used to transfer heat from warmer air in one chamber to cooler air in the second chamber (i.e., typically used to recover heat from the conditioned air being exhausted and the outside air being supplied to a building), resulting in energy savings from reduced heating (or cooling) requirements.\n */\nexport const IfcAirToAirHeatRecovery = 1013;\n\n/**\n * The energy conversion device type IfcAirToAirHeatRecoveryType defines commonly shared information for occurrences of air to air heat recoverys. The set of shared information may include:\n */\nexport const IfcAirToAirHeatRecoveryType = 1014;\n\n/**\n * An alarm is a device that signals the existence of a condition or situation that is outside the boundaries of normal expectation or that activates such a device.\n */\nexport const IfcAlarm = 1015;\n\n/**\n * The distribution control element type IfcAlarmType defines commonly shared information for occurrences of alarms. The set of shared information may include:\n */\nexport const IfcAlarmType = 1016;\n\n/**\n * An annotation is an information element within the geometric (and spatial) context of a project, that adds a note or meaning to the objects which constitutes the project model. Annotations include additional points, curves, text, dimensioning, hatching and other forms of graphical notes. It also includes virtual or symbolic representations of additional model components, not representing products or spatial structures, such as event elements, survey points, contour lines or similar.\n */\nexport const IfcAnnotation = 1017;\n\n/**\n * The IfcAnnotationFillArea defines an area by a definite OuterBoundary, that might include InnerBoundaries. The areas defined by the InnerBoundaries are excluded from applying the fill area style. The InnerBoundaries shall not intersect with the OuterBoundary nor being outside of the OuterBoundary.\n */\nexport const IfcAnnotationFillArea = 1018;\n\n/**\n * IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer.\n */\nexport const IfcApplication = 1019;\n\n/**\n * This entity captures a value driven by a formula, with additional qualifications including unit basis, valid date range, and categorization.\n */\nexport const IfcAppliedValue = 1020;\n\n/**\n * An IfcApproval represents information about approval processes such as for a plan, a design, a proposal, or a change order in a construction or facilities management project. IfcApproval is referenced by IfcRelAssociatesApproval in IfcControlExtension schema, and thereby can be related to all subtypes of IfcRoot. An approval may also be given to resource objects using IfcResourceApprovalRelationship\n */\nexport const IfcApproval = 1021;\n\n/**\n * An IfcApprovalRelationship associates approvals (one relating approval and one or more related approvals), each having different status or level as the approval process or the approved objects evolve.\n */\nexport const IfcApprovalRelationship = 1022;\n\n/**\n * The closed profile IfcArbitraryClosedProfileDef defines an arbitrary two-dimensional profile for the use within the swept surface geometry, the swept area solid or a sectioned spine. It is given by an outer boundary from which the surface or solid can be constructed.\n */\nexport const IfcArbitraryClosedProfileDef = 1023;\n\n/**\n * The open profile IfcArbitraryOpenProfileDef defines an arbitrary two-dimensional open profile for the use within the swept surface geometry. It is given by an open boundary from which the surface can be constructed.\n */\nexport const IfcArbitraryOpenProfileDef = 1024;\n\n/**\n * The IfcArbitraryProfileDefWithVoids defines an arbitrary closed two-dimensional profile with holes. It is given by an outer boundary and inner boundaries. A kdtree3 usage of IfcArbitraryProfileDefWithVoids is as the cross section for the creation of swept surfaces or swept solids.\n */\nexport const IfcArbitraryProfileDefWithVoids = 1025;\n\n/**\n * An asset is a uniquely identifiable grouping of elements acting as a single entity that has a financial value or that can be operated on as a single unit.\n */\nexport const IfcAsset = 1026;\n\n/**\n * IfcAsymmetricIShapeProfileDef defines a section profile that provides the defining parameters of a singly symmetric I-shaped section. Its parameters and orientation relative to the position coordinate system are according to the following illustration. The centre of the position coordinate system is in the profile's centre of the bounding box.\n */\nexport const IfcAsymmetricIShapeProfileDef = 1027;\n\n/**\n * An audio-visual appliance is a device that displays, captures, transmits, or receives audio or video.\n */\nexport const IfcAudioVisualAppliance = 1028;\n\n/**\n * The flow terminal type IfcAudioVisualApplianceType defines commonly shared information for occurrences of audio visual appliances. The set of shared information may include:\n */\nexport const IfcAudioVisualApplianceType = 1029;\n\n/**\n * The IfcAxis1Placement provides location and direction of a single axis.\n */\nexport const IfcAxis1Placement = 1030;\n\n/**\n * The IfcAxis2Placement2D provides location and orientation to place items in a two-dimensional space. The attribute RefDirection defines the x axis, the y axis is derived. If the attribute RefDirection is not given, the placement defaults to P[1] (x-axis) as [1.,0.] and P[2] (y-axis) as [0.,1.].\n */\nexport const IfcAxis2Placement2D = 1031;\n\n/**\n * The IfcAxis2Placement3D provides location and orientations to place items in a three-dimensional space. The attribute Axis defines the Z direction, RefDirection the X direction. The Y direction is derived.\n */\nexport const IfcAxis2Placement3D = 1032;\n\n/**\n * An IfcBeam is a horizontal, or nearly horizontal, structural member that is capable of withstanding load primarily by resisting bending. It represents such a member from an architectural point of view. It is not required to be load bearing.\n */\nexport const IfcBeam = 1033;\n\n/**\n * The standard beam, IfcBeamStandardCase, defines a beam with certain constraints for the provision of material usage, parameters and with certain constraints for the geometric representation. The IfcBeamStandardCase handles all cases of beams, that:\n */\nexport const IfcBeamStandardCase = 1034;\n\n/**\n * The element type IfcBeamType defines commonly shared information for occurrences of beams. The set of shared information may include:\n */\nexport const IfcBeamType = 1035;\n\n/**\n * An IfcBlobTexture provides a 2-dimensional distribution of the lighting parameters of a surface onto which it is mapped. The texture itself is given as a single binary blob, representing the content of a pixel format file. The file format of the pixel file is given by the RasterFormat attribute and allowable formats are guided by where rule SupportedRasterFormat.\n */\nexport const IfcBlobTexture = 1036;\n\n/**\n * The IfcBlock is a Construction Solid SceneGeometry (CSG) 3D primitive. It is defined by a position and a positve distance along the three orthogonal axes. The inherited Position attribute has the IfcAxisPlacement3D type and provides:\n */\nexport const IfcBlock = 1037;\n\n/**\n * A boiler is a closed, pressure-rated vessel in which water or other fluid is heated using an energy source such as natural gas, heating oil, or electricity. The fluid in the vessel is then circulated out of the boiler for use in various processes or heating applications.\n */\nexport const IfcBoiler = 1038;\n\n/**\n * The energy conversion device type IfcBoilerType defines commonly shared information for occurrences of boilers. The set of shared information may include:\n */\nexport const IfcBoilerType = 1039;\n\n/**\n * A clipping result is defined as a special subtype of the general IfcBooleanResult. It constrains the operands and the operator of the Boolean result.\n */\nexport const IfcBooleanClippingResult = 1040;\n\n/**\n * The IfcBooleanResult is the result of applying a Boolean operation to two operands being solids.\n */\nexport const IfcBooleanResult = 1041;\n\n/**\n * The abstract entity IfcBoundaryCondition is the supertype of all boundary conditions that can be applied to structural connection definitions, either directly for the connection (e.g. the joint) or for the relation between a structural member and the connection.\n */\nexport const IfcBoundaryCondition = 1042;\n\n/**\n * An IfcBoundaryCurve defines a curve acting as the boundary of a surface.\n */\nexport const IfcBoundaryCurve = 1043;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryEdgeCondition = 1044;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryFaceCondition = 1045;\n\n/**\n * Describes linearly elastic support conditions or connection conditions.\n */\nexport const IfcBoundaryNodeCondition = 1046;\n\n/**\n * Describes linearly elastic support conditions or connection conditions, including linearly elastic warping restraints.\n */\nexport const IfcBoundaryNodeConditionWarping = 1047;\n\n/**\n * An IfcBoundedCurve is a curve of finite length.\n */\nexport const IfcBoundedCurve = 1048;\n\n/**\n * An IfcBoundedSurface is a surface of finite area.\n */\nexport const IfcBoundedSurface = 1049;\n\n/**\n * The IfcBoundingBox defines an orthogonal box oriented parallel to the axes of the object coordinate system in which it is defined. It is defined by a Corner being a three-dimensional Cartesian point and three length measures defining the X, Y and Z parameters of the box in the direction of the positive axes.\n */\nexport const IfcBoundingBox = 1050;\n\n/**\n * The IfcBoxedHalfSpace is used (as its supertype IfcHalfSpaceSolid) only within Boolean operations. It divides the domain into exactly two subsets, where the domain in question is that of the attribute Enclosure.\n */\nexport const IfcBoxedHalfSpace = 1051;\n\n/**\n * The IfcBSplineCurve is a spline curve parameterized by spline functions.\n */\nexport const IfcBSplineCurve = 1052;\n\n/**\n * The IfcBSplineCurveWithKnots is a spline curve parameterized by spline functions for which the knot values are explicitly given.\n */\nexport const IfcBSplineCurveWithKnots = 1053;\n\n/**\n * The IfcBSplineSurface is a general form of rational or polynomial parametric surface.\n */\nexport const IfcBSplineSurface = 1054;\n\n/**\n * The IfcBSplineSurfaceWithKnots is a general form of rational or polynomial parametric surface in which the knot values are explicitly given.\n */\nexport const IfcBSplineSurfaceWithKnots = 1055;\n\n/**\n * A building represents a structure that provides shelter for its occupants or contents and stands in one place. The building is also used to provide a basic element within the spatial structure hierarchy for the components of a building project (together with site, storey, and space).\n */\nexport const IfcBuilding = 1056;\n\n/**\n * IfcBuildingElementPart represents major components as subordinate parts of a building element. Typical usage examples include precast concrete sandwich walls, where the layers may have different geometry representations. In this case the layered material representation does not sufficiently describe the element. Each layer is represented by an own instance of the IfcBuildingElementPart with its own geometry description.\n */\nexport const IfcBuildingElementPart = 1057;\n\n/**\n * The building element part type defines lists of commonly shared property set definitions and representation maps of parts of a building element.\n */\nexport const IfcBuildingElementPartType = 1058;\n\n/**\n * The IfcBuildingElementProxy is a proxy definition that provides the same functionality as subtypes of IfcBuildingElement, but without having a predefined meaning of the special type of building element, it represents.\n */\nexport const IfcBuildingElementProxy = 1059;\n\n/**\n * IfcBuildingElementProxyType defines a list of commonly shared property set definitions of a building element proxy and an optional set of product representations. It is used to define an element specification (i.e. the specific product information, that is kdtree3 to all occurrences of that product type).\n */\nexport const IfcBuildingElementProxyType = 1060;\n\n/**\n * The building storey has an elevation and typically represents a (nearly) horizontal aggregation of spaces that are vertically bound.\n */\nexport const IfcBuildingStorey = 1061;\n\n/**\n * A building system is a group by which building elements are grouped according to a kdtree3 function within the facility.\n */\nexport const IfcBuildingSystem = 1062;\n\n/**\n * A burner is a device that converts fuel into heat through combustion. It includes gas, oil, and wood burners.\n */\nexport const IfcBurner = 1063;\n\n/**\n * The energy conversion device type IfcBurnerType defines commonly shared information for occurrences of burners. The set of shared information may include:\n */\nexport const IfcBurnerType = 1064;\n\n/**\n * A cable carrier fitting is a fitting that is placed at junction or transition in a cable carrier system.\n */\nexport const IfcCableCarrierFitting = 1065;\n\n/**\n * The flow fitting type IfcCableCarrierFittingType defines commonly shared information for occurrences of cable carrier fittings. The set of shared information may include:\n */\nexport const IfcCableCarrierFittingType = 1066;\n\n/**\n * A cable carrier segment is a flow segment that is specifically used to carry and support cabling.\n */\nexport const IfcCableCarrierSegment = 1067;\n\n/**\n * The flow segment type IfcCableCarrierSegmentType defines commonly shared information for occurrences of cable carrier segments. The set of shared information may include:\n */\nexport const IfcCableCarrierSegmentType = 1068;\n\n/**\n * A cable fitting is a fitting that is placed at a junction, transition or termination in a cable system.\n */\nexport const IfcCableFitting = 1069;\n\n/**\n * The flow fitting type IfcCableFittingType defines commonly shared information for occurrences of cable fittings. The set of shared information may include:\n */\nexport const IfcCableFittingType = 1070;\n\n/**\n * A cable segment is a flow segment used to carry electrical power, data, or telecommunications signals.\n */\nexport const IfcCableSegment = 1071;\n\n/**\n * The flow segment type IfcCableSegmentType defines commonly shared information for occurrences of cable segments. The set of shared information may include:\n */\nexport const IfcCableSegmentType = 1072;\n\n/**\n * An IfcCartesianPoint defines a point by coordinates in an orthogonal, right-handed Cartesian coordinate system. For the purpose of this specification only two and three dimensional Cartesian points are used.\n */\nexport const IfcCartesianPoint = 1073;\n\n/**\n * The IfcCartesianPointList is the abstract supertype of list of points.\n */\nexport const IfcCartesianPointList = 1074;\n\n/**\n * The IfcCartesianPointList2D defines an ordered collection of two-dimentional Cartesian points. Each Cartesian point is provided as an two-dimensional point by a fixed list of two coordinates. The attribute CoordList is a two-dimensional list, where\n */\nexport const IfcCartesianPointList2D = 1075;\n\n/**\n * The IfcCartesianPointList3D defines an ordered collection of three-dimentional Cartesian points. Each Cartesian point is provided as an three-dimensional point by a fixed list of three coordinates. The attribute CoordList is a two-dimensional list, where\n */\nexport const IfcCartesianPointList3D = 1076;\n\n/**\n * An IfcCartesianTransformationOperator defines an abstract supertype of different kinds of geometric transformations.\n */\nexport const IfcCartesianTransformationOperator = 1077;\n\n/**\n * An IfcCartesianTransformationOperator2D defines a geometric transformation in two-dimensional space.\n */\nexport const IfcCartesianTransformationOperator2D = 1078;\n\n/**\n * A Cartesian transformation operator 2d non uniform defines a geometric transformation in two-dimensional space composed of translation, rotation, mirroring and non uniform scaling. Non uniform scaling is given by two different scaling factors:\n */\nexport const IfcCartesianTransformationOperator2DnonUniform = 1079;\n\n/**\n * An IfcCartesianTransformationOperator defines a geometric transformation in three-dimensional space.\n */\nexport const IfcCartesianTransformationOperator3D = 1080;\n\n/**\n * A Cartesian transformation operator 3d non uniform defines a geometric transformation in three-dimensional space composed of translation, rotation, mirroring and non uniform scaling. Non uniform scaling is given by three different scaling factors:\n */\nexport const IfcCartesianTransformationOperator3DnonUniform = 1081;\n\n/**\n * The profile IfcCenterLineProfileDef defines an arbitrary two-dimensional open, not self intersecting profile for the use within the swept solid geometry. It is given by an area defined by applying a constant thickness to a centerline, generating an area from which the solid can be constructed.\n */\nexport const IfcCenterLineProfileDef = 1082;\n\n/**\n * A chiller is a device used to remove heat from a liquid via a vapor-compression or absorption refrigeration cycle to cool a fluid, typically water or a mixture of water and glycol. The chilled fluid is then used to cool and dehumidify air in a building.\n */\nexport const IfcChiller = 1083;\n\n/**\n * The energy conversion device type IfcChillerType defines commonly shared information for occurrences of chillers. The set of shared information may include:\n */\nexport const IfcChillerType = 1084;\n\n/**\n * Chimneys are typically vertical, or as near as vertical, parts of the construction of a building and part of the building fabric. Often constructed by pre-cast or insitu concrete, today seldom by bricks.\n */\nexport const IfcChimney = 1085;\n\n/**\n * The building element type IfcChimneyType defines commonly shared information for occurrences of chimneys. The set of shared information may include:\n */\nexport const IfcChimneyType = 1086;\n\n/**\n * An IfcCircle is a curve consisting of a set of points having equal distance from the center.\n */\nexport const IfcCircle = 1087;\n\n/**\n * IfcCircleHollowProfileDef defines a section profile that provides the defining parameters of a circular hollow section (tube) to be used by the swept area solid. Its parameters and orientation relative to the position coordinate system are according to the following illustration.The centre of the position coordinate system is in the profile's centre of the bounding box (for symmetric profiles identical with the centre of gravity).\n */\nexport const IfcCircleHollowProfileDef = 1088;\n\n/**\n * IfcCircleProfileDef defines a circle as the profile definition used by the swept surface geometry or by the swept area solid. It is given by its Radius attribute and placed within the 2D position coordinate system, established by the Position attribute.\n */\nexport const IfcCircleProfileDef = 1089;\n\n/**\n * An IfcCivilElement is a generalization of all elements within a civil engineering works that cannot be represented as BuildingElements, DistributionElements or GeographicElements. Depending on the context of the construction project, included building work, such as buildings or factories, are represented as a collection of IfcBuildingElement's, distribution systems, such as piping or drainage, are represented as a collection of IfcDistributionElement's, and other geographic elements, such as trees, light posts, traffic signs etc. are represented as IfcGeographicElement's.\n */\nexport const IfcCivilElement = 1090;\n\n/**\n * An IfcCivilElementType is used to define an element specification of an element used within civil engineering works. Civil element types include for different types of element that may be used to represent information for construction works external to a building. IfcCivilElementType's may include:\n */\nexport const IfcCivilElementType = 1091;\n\n/**\n * An IfcClassification is used for the arrangement of objects into a class or category according to a kdtree3 purpose or their possession of kdtree3 characteristics. A classification in the sense of IfcClassification is taxonomy, or taxonomic scheme, arranged in a hierarchical structure. A category of objects relates to other categories in a generalization-specialization relationship. Therefore the classification items in an classification are organized in a tree structure.\n */\nexport const IfcClassification = 1092;\n\n/**\n * An IfcClassificationReference is a reference into a classification system or source (see IfcClassification) for a specific classification key (or notation).\n */\nexport const IfcClassificationReference = 1093;\n\n/**\n *\n */\nexport const IfcClosedShell = 1094;\n\n/**\n * A coil is a device used to provide heat transfer between non-mixing media. A kdtree3 example is a cooling coil, which utilizes a finned coil in which circulates chilled water, antifreeze, or refrigerant that is used to remove heat from air moving across the surface of the coil. A coil may be used either for heating or cooling purposes by placing a series of tubes (the coil) carrying a heating or cooling fluid into an airstream. The coil may be constructed from tubes bundled in a serpentine form or from finned tubes that give a extended heat transfer surface.\n */\nexport const IfcCoil = 1095;\n\n/**\n * The energy conversion device type IfcCoilType defines commonly shared information for occurrences of coils. The set of shared information may include:\n */\nexport const IfcCoilType = 1096;\n\n/**\n *\n */\nexport const IfcColourRgb = 1097;\n\n/**\n * The IfcColourRgbList defines an ordered collection of RGB colour values. Each colour value is a fixed list of three colour components (red, green, blue). The attribute ColourList is a two-dimensional list, where:\n */\nexport const IfcColourRgbList = 1098;\n\n/**\n *\n */\nexport const IfcColourSpecification = 1099;\n\n/**\n * \n *\n * # xeokit CityJSON Importer\n *\n * ---\n *\n * ### *Import 3D urban models from CityJSON format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D urban models from [CityJSON](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#cityjson), a JSON-based\n * file format specifically designed for lightweight, user-friendly, and human-readable\n * storage and sharing of 3D models. CityJSON can represent both basic geometric shapes and intricate objects such as\n * buildings and trees, offering a simple alternative to other formats like CityGML.\n *\n * To import a CityJSON model into xeokit, simply use the {@link @xeokit/cityjson!loadCityJSON | loadCityJSON} function, which will load\n * the file into both a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/cityjson\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/cityjson!loadCityJSON | loadCityJSON} to load a CityJSON file into our SceneModel and DataModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadCityJSON} from \"@xeokit/cityjson\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.bim\").then(response => {\n *\n * response.json().then(fileData => {\n *\n * loadCityJSON({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading CityJSON: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/cityjson\n */\nexport * from \"./loadCityJSON\";\n", "// Original algorithm by https://github.com/mapbox/earcut\n//\n// Ported to TypeScript by Ikaros Kappler\n// @date 2020-12-08\n\ninterface IVertex {\n x: number;\n y: number;\n};\n\n\nexport const earcut = (() => {\n\n /**\n * Nodes of a linked list, each node representing a vertex of a ring (a polygon).\n */\n class Node implements IVertex {\n i:number;\n x:number;\n y:number;\n prev:Node|undefined;\n next:Node|undefined;\n z:any;\n prevZ:any;\n nextZ:any;\n steiner:boolean;\n\n constructor( i:number, x:number, y:number ) {\n // vertex index in coordinates array\n this.i = i;\n\n // vertex coordinates\n this.x = x;\n this.y = y;\n\n // previous and next vertex nodes in a polygon ring\n this.prev = null;\n this.next = null;\n\n // z-order curve value\n this.z = null;\n\n // previous and next nodes in z-order\n this.prevZ = null;\n this.nextZ = null;\n\n // indicates whether this is a steiner point\n this.steiner = false;\n }\n };\n\n const earcut = (data:Array, holeIndices?:Array, dim:number=2) : Array => {\n\n dim = dim || 2;\n\n const hasHoles : boolean = holeIndices && holeIndices.length > 0;\n const outerLen : number = hasHoles ? holeIndices[0] * dim : data.length;\n let outerNode : Node = linkedList(data, 0, outerLen, dim, true);\n const triangles : Array = []; // [t0a, t0b, t0c, t1a, t2a, t3a, ... ]\n\n if (!outerNode || outerNode.next === outerNode.prev) return triangles;\n\n let minX : number;\n let minY : number;\n let maxX : number;\n let maxY : number;\n let x : number;\n let y : number;\n let invSize : number;\n\n if (hasHoles) {\n outerNode = eliminateHoles(data, holeIndices, outerNode, dim);\n }\n\n // if the shape is not too simple, we'll use z-order curve hash later; calculate polygon bbox\n // TODO: use Bounds class for calculation?\n if (data.length > 80 * dim) {\n minX = maxX = data[0];\n minY = maxY = data[1];\n\n for (var i = dim; i < outerLen; i += dim) {\n x = data[i];\n y = data[i + 1];\n if (x < minX) minX = x;\n if (y < minY) minY = y;\n if (x > maxX) maxX = x;\n if (y > maxY) maxY = y;\n }\n\n // minX, minY and invSize are later used to transform coords into integers for z-order calculation\n invSize = Math.max(maxX - minX, maxY - minY);\n invSize = invSize !== 0 ? 1 / invSize : 0;\n }\n\n earcutLinked(outerNode, triangles, dim, minX, minY, invSize);\n\n return triangles;\n }\n\n // create a circular doubly linked list from polygon points in the specified winding order\n const linkedList = (\n data : Array,\n start:number,\n end:number,\n dim:number,\n clockwise:boolean\n ) : Node|undefined => {\n var i : number;\n var last : Node|undefined;\n\n if (clockwise === (signedArea(data, start, end, dim) > 0)) {\n for (i = start; i < end; i += dim) {\n last = insertNode(i, data[i], data[i + 1], last);\n }\n } else {\n for (i = end - dim; i >= start; i -= dim) {\n last = insertNode(i, data[i], data[i + 1], last);\n }\n }\n\n if (last && equals(last, last.next)) {\n removeNode(last);\n last = last.next;\n }\n\n return last;\n }\n\n // eliminate colinear or duplicate points\n const filterPoints = (start : Node|undefined, end? : Node) : Node => {\n if (!start) return start;\n if (!end) end = start;\n\n // Remember starting node\n let p : Node = start;\n let again : boolean = false;\n do {\n // TODO: move into 'else' branch?\n again = false;\n\n if (!p.steiner && (equals(p, p.next) || area(p.prev, p, p.next) === 0)) {\n removeNode(p);\n p = end = p.prev;\n if (p === p.next) break;\n again = true;\n\n } else {\n p = p.next;\n }\n } while (again || p !== end);\n\n return end;\n }\n\n // main ear slicing loop which triangulates a polygon (given as a linked list)\n const earcutLinked = ( ear:Node,\n triangles:Array,\n dim:number,\n minX:number,\n minY:number,\n invSize:number,\n pass?:number ) : void => {\n if (!ear) return;\n\n // interlink polygon nodes in z-order\n if (!pass && invSize) {\n indexCurve( ear, minX, minY, invSize );\n }\n\n let stop : Node = ear;\n let prev : Node;\n let next : Node;\n\n // iterate through ears, slicing them one by one\n while (ear.prev !== ear.next) {\n prev = ear.prev;\n next = ear.next;\n\n if (invSize ? isEarHashed(ear, minX, minY, invSize) : isEar(ear)) {\n // cut off the triangle\n triangles.push(prev.i / dim);\n triangles.push(ear.i / dim);\n triangles.push(next.i / dim);\n\n removeNode(ear);\n\n // skipping the next vertex leads to less sliver triangles\n ear = next.next;\n stop = next.next;\n\n continue;\n }\n\n ear = next;\n\n // if we looped through the whole remaining polygon and can't find any more ears\n if (ear === stop) {\n // try filtering points and slicing again\n if (!pass) {\n earcutLinked(filterPoints(ear), triangles, dim, minX, minY, invSize, 1);\n\n // if this didn't work, try curing all small self-intersections locally\n } else if (pass === 1) {\n ear = cureLocalIntersections(filterPoints(ear), triangles, dim);\n earcutLinked(ear, triangles, dim, minX, minY, invSize, 2);\n\n // as a last resort, try splitting the remaining polygon into two\n } else if (pass === 2) {\n splitEarcut(ear, triangles, dim, minX, minY, invSize);\n }\n\n break;\n }\n }\n }; // END earcutLinked\n\n // check whether a polygon node forms a valid ear with adjacent nodes\n const isEar = (ear : Node) : boolean => {\n const a : Node = ear.prev;\n const b : Node = ear;\n const c : Node = ear.next;\n\n if (area(a, b, c) >= 0) return false; // reflex, can't be an ear\n\n // now make sure we don't have other points inside the potential ear\n var p = ear.next.next;\n\n while (p !== ear.prev) {\n if (pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.next;\n }\n\n return true;\n }\n\n const isEarHashed = (ear:Node, minX:number, minY:number, invSize:number) : boolean => {\n var a : Node = ear.prev;\n var b : Node = ear;\n var c : Node = ear.next;\n\n if (area(a, b, c) >= 0) return false; // reflex, can't be an ear\n\n // triangle bbox; min & max are calculated like this for speed\n // TODO: use Triangle.bounds\n var minTX = a.x < b.x ? (a.x < c.x ? a.x : c.x) : (b.x < c.x ? b.x : c.x),\n minTY = a.y < b.y ? (a.y < c.y ? a.y : c.y) : (b.y < c.y ? b.y : c.y),\n maxTX = a.x > b.x ? (a.x > c.x ? a.x : c.x) : (b.x > c.x ? b.x : c.x),\n maxTY = a.y > b.y ? (a.y > c.y ? a.y : c.y) : (b.y > c.y ? b.y : c.y);\n\n // z-order range for the current triangle bbox;\n var minZ = zOrder(minTX, minTY, minX, minY, invSize),\n maxZ = zOrder(maxTX, maxTY, minX, minY, invSize);\n\n var p = ear.prevZ,\n n = ear.nextZ;\n\n // look for points inside the triangle in both directions\n while (p && p.z >= minZ && n && n.z <= maxZ) {\n if (p !== ear.prev && p !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.prevZ;\n\n if (n !== ear.prev && n !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y) &&\n area(n.prev, n, n.next) >= 0) return false;\n n = n.nextZ;\n }\n\n // look for remaining points in decreasing z-order\n while (p && p.z >= minZ) {\n if (p !== ear.prev && p !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y) &&\n area(p.prev, p, p.next) >= 0) return false;\n p = p.prevZ;\n }\n\n // look for remaining points in increasing z-order\n while (n && n.z <= maxZ) {\n if (n !== ear.prev && n !== ear.next &&\n // TODO: use Triangle.utils.pointIsInTriangle\n pointInTriangle(a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y) &&\n area(n.prev, n, n.next) >= 0) return false;\n n = n.nextZ;\n }\n\n return true;\n }\n\n // go through all polygon nodes and cure small local self-intersections\n const cureLocalIntersections = ( start : Node, triangles : Array, dim : number ) : Node => {\n let p : Node = start;\n do {\n let a : Node = p.prev;\n let b : Node = p.next.next;\n\n if (!equals(a, b) && intersects(a, p, p.next, b) && locallyInside(a, b) && locallyInside(b, a)) {\n\n triangles.push(a.i / dim);\n triangles.push(p.i / dim);\n triangles.push(b.i / dim);\n\n // remove two nodes involved\n removeNode(p);\n removeNode(p.next);\n\n p = start = b;\n }\n p = p.next;\n } while (p !== start);\n\n return filterPoints(p);\n }\n\n // try splitting polygon into two and triangulate them independently\n const splitEarcut = ( start: Node, triangles, dim, minX, minY, invSize) : void => {\n // look for a valid diagonal that divides the polygon into two\n let a : Node = start;\n do {\n let b : Node = a.next.next;\n while (b !== a.prev) {\n if (a.i !== b.i && isValidDiagonal(a, b)) {\n // split the polygon in two by the diagonal\n var c = splitPolygon(a, b);\n\n // filter colinear points around the cuts\n a = filterPoints(a, a.next);\n c = filterPoints(c, c.next);\n\n // run earcut on each half\n earcutLinked(a, triangles, dim, minX, minY, invSize);\n earcutLinked(c, triangles, dim, minX, minY, invSize);\n return;\n }\n b = b.next;\n }\n a = a.next;\n } while (a !== start);\n }\n\n // link every hole into the outer loop, producing a single-ring polygon without holes\n const eliminateHoles = ( data:Array,\n holeIndices:Array,\n outerNode:Node,\n dim:number ) : Node => {\n const queue : Array = [];\n let i : number;\n const len = holeIndices.length;\n let start : number;\n let end : number;\n let list : Node;\n\n for (i = 0; i < len; i++) {\n start = holeIndices[i] * dim;\n end = i < len - 1 ? holeIndices[i + 1] * dim : data.length;\n list = linkedList(data, start, end, dim, false);\n if (list === list.next) list.steiner = true;\n queue.push(getLeftmost(list));\n }\n\n queue.sort(compareX);\n\n // process holes from left to right\n for (i = 0; i < queue.length; i++) {\n eliminateHole(queue[i], outerNode);\n outerNode = filterPoints(outerNode, outerNode.next);\n }\n\n return outerNode;\n }\n\n const compareX = ( a : IVertex, b : IVertex ) : number => {\n return a.x - b.x;\n };\n\n // find a bridge between vertices that connects hole with an outer ring and and link it\n const eliminateHole = ( hole : Node, outerNode : Node ) : Node => {\n var bridge = findHoleBridge(hole, outerNode);\n if (!bridge) {\n return outerNode;\n }\n\n var bridgeReverse = splitPolygon(bridge, hole);\n\n // filter collinear points around the cuts\n var filteredBridge = filterPoints(bridge, bridge.next);\n filterPoints(bridgeReverse, bridgeReverse.next);\n\n // Check if input node was removed by the filtering\n return outerNode === bridge ? filteredBridge : outerNode;\n // }\n\n }\n\n // David Eberly's algorithm for finding a bridge between hole and outer polygon\n const findHoleBridge = ( hole : Node, outerNode : Node ) : Node => {\n let p : Node = outerNode;\n let hx : number = hole.x;\n let hy : number = hole.y;\n let qx : number = -Infinity;\n let m : Node;\n\n // find a segment intersected by a ray from the hole's leftmost point to the left;\n // segment's endpoint with lesser x will be potential connection point\n do {\n if (hy <= p.y && hy >= p.next.y && p.next.y !== p.y) {\n var x = p.x + (hy - p.y) * (p.next.x - p.x) / (p.next.y - p.y);\n if (x <= hx && x > qx) {\n qx = x;\n if (x === hx) {\n if (hy === p.y) return p;\n if (hy === p.next.y) return p.next;\n }\n m = p.x < p.next.x ? p : p.next;\n }\n }\n p = p.next;\n } while (p !== outerNode);\n\n if (!m) {\n return null;\n }\n\n if (hx === qx) {\n return m; // hole touches outer segment; pick leftmost endpoint\n }\n\n // look for points inside the triangle of hole point, segment intersection and endpoint;\n // if there are no points found, we have a valid connection;\n // otherwise choose the point of the minimum angle with the ray as connection point\n\n let stop : Node = m;\n let mx : number = m.x;\n let my : number = m.y;\n let tanMin : number = Infinity;\n let tan : number;\n\n p = m;\n\n do {\n if (hx >= p.x && p.x >= mx && hx !== p.x &&\n pointInTriangle(hy < my ? hx : qx, hy, mx, my, hy < my ? qx : hx, hy, p.x, p.y)) {\n\n tan = Math.abs(hy - p.y) / (hx - p.x); // tangential\n\n if (locallyInside(p, hole) &&\n (tan < tanMin || (tan === tanMin && (p.x > m.x || (p.x === m.x && sectorContainsSector(m, p)))))) {\n m = p;\n tanMin = tan;\n }\n }\n\n p = p.next;\n } while (p !== stop);\n\n return m;\n };\n\n // whether sector in vertex m contains sector in vertex p in the same coordinates\n const sectorContainsSector = ( m : Node, p : Node) : boolean => {\n return area(m.prev, m, p.prev) < 0 && area(p.next, m, m.next) < 0;\n };\n\n // interlink polygon nodes in z-order\n const indexCurve = ( start : Node, minX : number, minY : number, invSize : number ) : void => {\n var p = start;\n do {\n if (p.z === null) p.z = zOrder(p.x, p.y, minX, minY, invSize);\n p.prevZ = p.prev;\n p.nextZ = p.next;\n p = p.next;\n } while (p !== start);\n\n p.prevZ.nextZ = null;\n p.prevZ = null;\n\n sortLinked(p);\n }\n\n // Simon Tatham's linked list merge sort algorithm\n // http://www.chiark.greenend.org.uk/~sgtatham/algorithms/listsort.html\n const sortLinked = ( list : Node ) : Node => {\n let i : number;\n let p : Node;\n let q : Node;\n let e : Node;\n let tail : Node;\n let numMerges : number;\n let pSize : number;\n let qSize : number;\n let inSize : number = 1;\n\n do {\n p = list;\n list = null;\n tail = null;\n numMerges = 0;\n\n while (p) {\n numMerges++;\n q = p;\n pSize = 0;\n for (i = 0; i < inSize; i++) {\n pSize++;\n q = q.nextZ;\n if (!q) break;\n }\n qSize = inSize;\n\n while (pSize > 0 || (qSize > 0 && q)) {\n if (pSize !== 0 && (qSize === 0 || !q || p.z <= q.z)) {\n e = p;\n p = p.nextZ;\n pSize--;\n } else {\n e = q;\n q = q.nextZ;\n qSize--;\n }\n\n if (tail) tail.nextZ = e;\n else list = e;\n\n e.prevZ = tail;\n tail = e;\n }\n\n p = q;\n }\n\n tail.nextZ = null;\n inSize *= 2;\n\n } while (numMerges > 1);\n\n return list;\n }\n\n // z-order of a point given coords and inverse of the longer side of data bbox\n const zOrder = ( x:number, y:number, minX:number, minY:number, invSize:number) : number => {\n // coords are transformed into non-negative 15-bit integer range\n x = 32767 * (x - minX) * invSize;\n y = 32767 * (y - minY) * invSize;\n\n x = (x | (x << 8)) & 0x00FF00FF;\n x = (x | (x << 4)) & 0x0F0F0F0F;\n x = (x | (x << 2)) & 0x33333333;\n x = (x | (x << 1)) & 0x55555555;\n\n y = (y | (y << 8)) & 0x00FF00FF;\n y = (y | (y << 4)) & 0x0F0F0F0F;\n y = (y | (y << 2)) & 0x33333333;\n y = (y | (y << 1)) & 0x55555555;\n\n return x | (y << 1);\n }\n\n // find the leftmost node of a polygon ring\n const getLeftmost = ( start: Node ) : Node => {\n let p : Node = start;\n let leftmost : Node = start;\n do {\n if (p.x < leftmost.x || (p.x === leftmost.x && p.y < leftmost.y)) {\n leftmost = p;\n }\n p = p.next;\n } while (p !== start);\n return leftmost;\n }\n\n // check if a point lies within a convex triangle\n // TODO: use Triangle.containsPoint\n const pointInTriangle = ( ax : number, ay : number,\n bx : number, by : number,\n cx : number, cy : number,\n px : number, py : number) : boolean => {\n return (cx - px) * (ay - py) - (ax - px) * (cy - py) >= 0 &&\n (ax - px) * (by - py) - (bx - px) * (ay - py) >= 0 &&\n (bx - px) * (cy - py) - (cx - px) * (by - py) >= 0;\n }\n\n // check if a diagonal between two polygon nodes is valid (lies in polygon interior)\n const isValidDiagonal = ( a : Node, b : Node ) : boolean => {\n return a.next.i !== b.i && a.prev.i !== b.i && !intersectsPolygon(a, b) && // dones't intersect other edges\n (locallyInside(a, b) && locallyInside(b, a) && middleInside(a, b) && // locally visible\n (area(a.prev, a, b.prev) != 0 || area(a, b.prev, b)) != 0 || // does not create opposite-facing sectors\n equals(a, b) && area(a.prev, a, a.next) > 0 && area(b.prev, b, b.next) > 0); // special zero-length case\n }\n\n // signed area of a triangle\n const area = (p:IVertex, q:IVertex, r:IVertex) : number => {\n return (q.y - p.y) * (r.x - q.x) - (q.x - p.x) * (r.y - q.y);\n };\n\n // check if two points are equal\n // TODO: as member function of vertex\n const equals = (p1:IVertex, p2:IVertex) : boolean => {\n return p1.x === p2.x && p1.y === p2.y;\n };\n\n // check if two segments intersect\n // TODO: use Line.intersects\n const intersects = ( p1:IVertex, q1:IVertex, p2:IVertex, q2:IVertex ) : boolean => {\n var o1 = sign(area(p1, q1, p2));\n var o2 = sign(area(p1, q1, q2));\n var o3 = sign(area(p2, q2, p1));\n var o4 = sign(area(p2, q2, q1));\n\n if (o1 !== o2 && o3 !== o4) return true; // general case\n\n if (o1 === 0 && onSegment(p1, p2, q1)) return true; // p1, q1 and p2 are collinear and p2 lies on p1q1\n if (o2 === 0 && onSegment(p1, q2, q1)) return true; // p1, q1 and q2 are collinear and q2 lies on p1q1\n if (o3 === 0 && onSegment(p2, p1, q2)) return true; // p2, q2 and p1 are collinear and p1 lies on p2q2\n if (o4 === 0 && onSegment(p2, q1, q2)) return true; // p2, q2 and q1 are collinear and q1 lies on p2q2\n\n return false;\n };\n\n // for collinear points p, q, r, check if point q lies on segment pr\n const onSegment = ( p:IVertex, q:IVertex, r:IVertex ) : boolean => {\n return q.x <= Math.max(p.x, r.x) && q.x >= Math.min(p.x, r.x) && q.y <= Math.max(p.y, r.y) && q.y >= Math.min(p.y, r.y);\n };\n\n const sign = (num:number) : number => {\n return num > 0 ? 1 : num < 0 ? -1 : 0;\n };\n\n // check if a polygon diagonal intersects any polygon segments\n const intersectsPolygon = ( a:Node, b:Node ) : boolean => {\n let p : Node = a;\n do {\n if (p.i !== a.i && p.next.i !== a.i && p.i !== b.i && p.next.i !== b.i && intersects(p, p.next, a, b)) {\n return true;\n }\n p = p.next;\n } while (p !== a);\n\n return false;\n };\n\n // check if a polygon diagonal is locally inside the polygon\n const locallyInside = ( a : Node, b : Node ) : boolean => {\n return area(a.prev, a, a.next) < 0 ?\n area(a, b, a.next) >= 0 && area(a, a.prev, b) >= 0 :\n area(a, b, a.prev) < 0 || area(a, a.next, b) < 0;\n };\n\n // check if the middle point of a polygon diagonal is inside the polygon\n const middleInside = ( a : Node, b : Node ) : boolean => {\n let p : Node = a;\n let inside : boolean = false;\n const px : number = (a.x + b.x) / 2;\n const py : number = (a.y + b.y) / 2;\n // TODO: call Polygon.contains here?\n do {\n if (((p.y > py) !== (p.next.y > py)) && p.next.y !== p.y &&\n (px < (p.next.x - p.x) * (py - p.y) / (p.next.y - p.y) + p.x))\n inside = !inside;\n p = p.next;\n } while (p !== a);\n\n return inside;\n }\n\n // link two polygon vertices with a bridge; if the vertices belong to the same ring, it splits polygon into two;\n // if one belongs to the outer ring and another to a hole, it merges it into a single ring\n const splitPolygon = ( a : Node, b : Node ) : Node => {\n const a2 : Node = new Node(a.i, a.x, a.y);\n const b2 : Node = new Node(b.i, b.x, b.y);\n const an : Node = a.next;\n const bp : Node = b.prev;\n\n a.next = b;\n b.prev = a;\n\n a2.next = an;\n an.prev = a2;\n\n b2.next = a2;\n a2.prev = b2;\n\n bp.next = b2;\n b2.prev = bp;\n\n return b2;\n };\n\n // create a node and optionally link it with previous one (in a circular doubly linked list)\n const insertNode = (i, x, y, last) : Node => {\n var p : Node = new Node(i, x, y);\n\n if (!last) {\n p.prev = p;\n p.next = p;\n\n } else {\n p.next = last.next;\n p.prev = last;\n last.next.prev = p;\n last.next = p;\n }\n return p;\n };\n\n const removeNode = ( p : Node ) : void => {\n p.next.prev = p.prev;\n p.prev.next = p.next;\n\n if (p.prevZ) p.prevZ.nextZ = p.nextZ;\n if (p.nextZ) p.nextZ.prevZ = p.prevZ;\n };\n\n const signedArea = ( data : Array, start:number, end:number, dim:number) : number => {\n var sum = 0;\n for (var i = start, j = end - dim; i < end; i += dim) {\n sum += (data[j] - data[i]) * (data[i + 1] + data[j + 1]);\n j = i;\n }\n return sum;\n };\n\n return earcut;\n})();\n", "import {\n createVec2,\n createVec3,\n cross3Vec3,\n dotVec3,\n lenVec3,\n mulVec3Scalar,\n normalizeVec3,\n subVec3\n} from \"@xeokit/matrix\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\n// @ts-ignore\nimport {earcut} from './earcut';\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {BasicAggregation} from \"@xeokit/basictypes\";\nimport {typeCodes} from \"@xeokit/cityjsontypes_1_1_3\";\nimport {SDKError} from \"@xeokit/core\";\n\nconst tempVec2a = createVec2();\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\n/**\n * Loads CityJSON into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/cityjson\" | @xeokit/cityjson} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - CityJSON file data.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param options - CityJSON loading options\n * @param options.rotateX - True to rotate the model about the X-axis. Default is false.\n * @returns {Promise} Resolves when CityJSON has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadCityJSON(params: {\n fileData: any,\n sceneModel: SceneModel,\n dataModel?: DataModel\n },\n options: {\n rotateX?: boolean;\n } = {\n rotateX: false\n }): Promise {\n if (params.sceneModel) {\n if (params.sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (params.sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n return Promise.reject(new SDKError(\"DataModel already destroyed\"));\n }\n if (params.dataModel.built) {\n return Promise.reject(new SDKError(\"DataModel already built\"));\n }\n }\n const fileData = params.fileData;\n const ctx = {\n fileData,\n vertices: (fileData.transform && params.sceneModel)\n ? transformVertices(fileData.vertices, fileData.transform, options.rotateX)\n : fileData.vertices,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0\n };\n parseCityJSON(ctx);\n return Promise.resolve();\n}\n\nfunction transformVertices(vertices: any, transform: any, rotateX?: boolean) {\n const transformedVertices = [];\n const scale = transform.scale || createVec3([1, 1, 1]);\n const translate = transform.translate || createVec3([0, 0, 0]);\n for (let i = 0, j = 0; i < vertices.length; i++, j += 3) {\n const x = (vertices[i][0] * scale[0]) + translate[0];\n const y = (vertices[i][1] * scale[1]) + translate[1];\n const z = (vertices[i][2] * scale[2]) + translate[2];\n if (rotateX) {\n transformedVertices.push([x, z, y]);\n } else {\n transformedVertices.push([x, y, z]);\n }\n }\n return transformedVertices;\n}\n\nfunction parseCityJSON(ctx: any) {\n const fileData = ctx.fileData;\n const cityObjects = fileData.CityObjects;\n for (const objectId in cityObjects) {\n parseCityObject(ctx, cityObjects[objectId], objectId);\n }\n if (ctx.dataModel) {\n for (const objectId in cityObjects) {\n parseRelationship(ctx, cityObjects[objectId], objectId);\n }\n }\n}\n\nfunction parseCityObject(ctx: any, cityObject: any, objectId: any) {\n if (ctx.dataModel) {\n ctx.dataModel.createObject({\n id: objectId,\n name: cityObject.type + \" : \" + objectId,\n type: typeCodes[cityObject.type] | 0,\n parent: cityObject.parents ? cityObject.parents[0] : null\n });\n }\n if (ctx.sceneModel) {\n if (!(cityObject.geometry && cityObject.geometry.length > 0)) {\n return;\n }\n const meshIds: string | any[] = [];\n for (let i = 0, len = cityObject.geometry.length; i < len; i++) {\n const geometry = cityObject.geometry[i];\n let objectMaterial;\n let surfaceMaterials;\n const appearance = ctx.fileData.appearance;\n if (appearance) {\n const materials = appearance.materials;\n if (materials) {\n const geometryMaterial = geometry.material;\n if (geometryMaterial) {\n const themeIds = Object.keys(geometryMaterial);\n if (themeIds.length > 0) {\n const themeId = themeIds[0];\n const theme = geometryMaterial[themeId];\n if (theme.value !== undefined) {\n objectMaterial = materials[theme.value];\n } else {\n const values = theme.values;\n if (values) {\n surfaceMaterials = [];\n for (let j = 0, lenj = values.length; j < lenj; j++) {\n const value = values[i];\n const surfaceMaterial = materials[value];\n surfaceMaterials.push(surfaceMaterial);\n }\n }\n }\n }\n }\n }\n }\n if (surfaceMaterials) {\n parseGeometrySurfacesWithOwnMaterials(ctx, geometry, surfaceMaterials, meshIds);\n } else {\n parseGeometrySurfacesWithSharedMaterial(ctx, geometry, objectMaterial, meshIds);\n }\n }\n if (meshIds.length > 0) {\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: meshIds\n });\n }\n }\n}\n\nfunction parseRelationship(ctx: any, cityObject: any, objectId: any) {\n if (cityObject.parents) {\n ctx.dataModel.createRelationship({\n relatingObjectId: cityObject.parents[0],\n relatedObjectId: objectId,\n type: BasicAggregation\n });\n }\n}\n\nfunction parseGeometrySurfacesWithOwnMaterials(ctx: any, geometry: any, surfaceMaterials: any, meshIds: any) {\n const geomType = geometry.type;\n switch (geomType) {\n case \"MultiPoint\":\n break;\n case \"MultiLineString\":\n break;\n case \"MultiSurface\":\n case \"CompositeSurface\":\n const surfaces = geometry.boundaries;\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n break;\n case \"Solid\":\n const shells = geometry.boundaries;\n for (let j = 0; j < shells.length; j++) {\n const surfaces = shells[j];\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n }\n break;\n case \"MultiSolid\":\n case \"CompositeSolid\":\n const solids = geometry.boundaries;\n for (let j = 0; j < solids.length; j++) {\n for (let k = 0; k < solids[j].length; k++) {\n const surfaces = solids[j][k];\n parseSurfacesWithOwnMaterials(ctx, surfaceMaterials, surfaces, meshIds);\n }\n }\n break;\n case \"GeometryInstance\":\n break;\n }\n}\n\nfunction parseSurfacesWithOwnMaterials(ctx: any, surfaceMaterials: any, surfaces: any, meshIds: any) {\n const vertices = ctx.vertices;\n const sceneModel = ctx.sceneModel;\n for (let i = 0; i < surfaces.length; i++) {\n const surface = surfaces[i];\n const surfaceMaterial = surfaceMaterials[i] || {diffuseColor: [0.8, 0.8, 0.8], transparency: 1.0};\n const face = [];\n const holes = [];\n const sharedIndices: any[] = [];\n const geometryCfg: any = {\n positions: [],\n indices: []\n };\n for (let j = 0; j < surface.length; j++) {\n if (face.length > 0) {\n holes.push(face.length);\n }\n const newFace = extractLocalIndices(ctx, surface[j], sharedIndices, geometryCfg);\n face.push(...newFace);\n }\n if (face.length === 3) { // Triangle\n geometryCfg.indices.push(face[0]);\n geometryCfg.indices.push(face[1]);\n geometryCfg.indices.push(face[2]);\n } else if (face.length > 3) { // Polygon\n // Prepare to triangulate\n const pList = [];\n for (let k = 0; k < face.length; k++) {\n pList.push({\n x: vertices[sharedIndices[face[k]]][0],\n y: vertices[sharedIndices[face[k]]][1],\n z: vertices[sharedIndices[face[k]]][2]\n });\n }\n const normal = getNormalOfPositions(pList, createVec3());\n // Convert to 2D\n let pv = [];\n for (let k = 0; k < pList.length; k++) {\n to2D(pList[k], normal, tempVec2a);\n pv.unshift(tempVec2a[0]);\n pv.unshift(tempVec2a[1]);\n }\n // Triangulate\n const tr = earcut(pv, holes, 2);\n // Create triangles\n for (let k = 0; k < tr.length; k += 3) {\n geometryCfg.indices.unshift(face[tr[k]]);\n geometryCfg.indices.unshift(face[tr[k + 1]]);\n geometryCfg.indices.unshift(face[tr[k + 2]]);\n }\n }\n const geometryId = \"\" + ctx.nextId++;\n sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions: geometryCfg.positions,\n indices: geometryCfg.indices\n });\n const meshId = \"\" + ctx.nextId++;\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: (surfaceMaterial && surfaceMaterial.diffuseColor) ? surfaceMaterial.diffuseColor : [0.8, 0.8, 0.8],\n opacity: (surfaceMaterial && surfaceMaterial.transparency !== undefined) ? (1.0 - surfaceMaterial.transparency) : 1.0\n });\n meshIds.push(meshId);\n }\n}\n\nfunction parseGeometrySurfacesWithSharedMaterial(ctx: any, geometry: any, objectMaterial: any, meshIds: any) {\n const sceneModel = ctx.sceneModel;\n const sharedIndices: any = [];\n const geometryCfg: any = {\n positions: [],\n indices: []\n };\n const geomType = geometry.type;\n switch (geomType) {\n case \"MultiPoint\":\n break;\n case \"MultiLineString\":\n break;\n case \"MultiSurface\":\n case \"CompositeSurface\":\n const surfaces = geometry.boundaries;\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n break;\n case \"Solid\":\n const shells = geometry.boundaries;\n for (let j = 0; j < shells.length; j++) {\n const surfaces = shells[j];\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n }\n break;\n case \"MultiSolid\":\n case \"CompositeSolid\":\n const solids = geometry.boundaries;\n for (let j = 0; j < solids.length; j++) {\n for (let k = 0; k < solids[j].length; k++) {\n const surfaces = solids[j][k];\n parseSurfacesWithSharedMaterial(ctx, surfaces, sharedIndices, geometryCfg);\n }\n }\n break;\n case \"GeometryInstance\":\n break;\n }\n if (geometryCfg.positions.length > 0 && geometryCfg.indices.length > 0) {\n const geometryId = \"\" + ctx.nextId++;\n sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions: geometryCfg.positions,\n indices: geometryCfg.indices\n });\n const meshId = \"\" + ctx.nextId++;\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: (objectMaterial && objectMaterial.diffuseColor) ? objectMaterial.diffuseColor : [0.8, 0.8, 0.8],\n opacity: 1.0\n });\n meshIds.push(meshId);\n }\n}\n\nfunction parseSurfacesWithSharedMaterial(ctx: any, surfaces: any, sharedIndices: any, primitiveCfg: any) {\n const vertices = ctx.vertices;\n for (let i = 0; i < surfaces.length; i++) {\n let boundary = [];\n let holes = [];\n for (let j = 0; j < surfaces[i].length; j++) {\n if (boundary.length > 0) {\n holes.push(boundary.length);\n }\n const newBoundary = extractLocalIndices(ctx, surfaces[i][j], sharedIndices, primitiveCfg);\n boundary.push(...newBoundary);\n }\n if (boundary.length === 3) { // Triangle\n primitiveCfg.indices.push(boundary[0]);\n primitiveCfg.indices.push(boundary[1]);\n primitiveCfg.indices.push(boundary[2]);\n } else if (boundary.length > 3) { // Polygon\n let pList = [];\n for (let k = 0; k < boundary.length; k++) {\n pList.push({\n x: vertices[sharedIndices[boundary[k]]][0],\n y: vertices[sharedIndices[boundary[k]]][1],\n z: vertices[sharedIndices[boundary[k]]][2]\n });\n }\n const normal = getNormalOfPositions(pList, createVec3());\n let pv = [];\n for (let k = 0; k < pList.length; k++) {\n to2D(pList[k], normal, tempVec2a);\n pv.unshift(tempVec2a[0]);\n pv.unshift(tempVec2a[1]);\n }\n const tr = earcut(pv, holes, 2);\n for (let k = 0; k < tr.length; k += 3) {\n primitiveCfg.indices.unshift(boundary[tr[k]]);\n primitiveCfg.indices.unshift(boundary[tr[k + 1]]);\n primitiveCfg.indices.unshift(boundary[tr[k + 2]]);\n }\n }\n }\n}\n\nfunction extractLocalIndices(ctx: any, boundary: any, sharedIndices: any, geometryCfg: any) {\n const vertices = ctx.vertices;\n const newBoundary = []\n for (let i = 0, len = boundary.length; i < len; i++) {\n const index = boundary[i];\n if (sharedIndices.includes(index)) {\n const vertexIndex = sharedIndices.indexOf(index);\n newBoundary.push(vertexIndex);\n } else {\n geometryCfg.positions.push(vertices[index][0]);\n geometryCfg.positions.push(vertices[index][1]);\n geometryCfg.positions.push(vertices[index][2]);\n newBoundary.push(sharedIndices.length);\n sharedIndices.push(index);\n }\n }\n return newBoundary\n}\n\nfunction getNormalOfPositions(positions: any, normal: any) {\n for (let i = 0; i < positions.length; i++) {\n let nexti = i + 1;\n if (nexti === positions.length) {\n nexti = 0;\n }\n normal[0] += ((positions[i].y - positions[nexti].y) * (positions[i].z + positions[nexti].z));\n normal[1] += ((positions[i].z - positions[nexti].z) * (positions[i].x + positions[nexti].x));\n normal[2] += ((positions[i].x - positions[nexti].x) * (positions[i].y + positions[nexti].y));\n }\n return normalizeVec3(normal);\n}\n\nfunction to2D(_p: any, _n: any, re: any) {\n const p = tempVec3a;\n const n = tempVec3b;\n const x3 = tempVec3c;\n p[0] = _p.x;\n p[1] = _p.y;\n p[2] = _p.z;\n n[0] = _n.x;\n n[1] = _n.y;\n n[2] = _n.z;\n x3[0] = 1.1;\n x3[1] = 1.1;\n x3[2] = 1.1;\n const dist = lenVec3(subVec3(x3, n));\n if (dist < 0.01) {\n x3[0] += 1.0;\n x3[1] += 2.0;\n x3[2] += 3.0;\n }\n const dot = dotVec3(x3, n);\n const tmp2 = mulVec3Scalar(n, dot, createVec3());\n x3[0] -= tmp2[0];\n x3[1] -= tmp2[1];\n x3[2] -= tmp2[2];\n normalizeVec3(x3);\n const y3 = cross3Vec3(n, x3, createVec3());\n const x = dotVec3(p, x3);\n const y = dotVec3(p, y3);\n re[0] = x;\n re[1] = y;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdotbim.svg)](https://badge.fury.io/js/%40xeokit%2Fdotbim)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/dotbim/badge)](https://www.jsdelivr.com/package/npm/@xeokit/dotbim)\n *\n * \n *\n * # xeokit .BIM Importer\n *\n * ---\n *\n * ### *Import building models from the open, free and simple .BIM file format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [.BIM](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dotbim), a JSON-based\n * file format specifically designed for lightweight, user-friendly, and human-readable storage and sharing of 3D BIM models.\n *\n * .BIM is an open-source and minimalist file format for BIM that's built to be easy to read and write. Essentially, .BIM\n * is a transfer format that contains triangulated meshes with a dictionary of information attached to them.\n *\n * To import a .BIM model into xeokit, simply use the {@link loadDotBIM} function, which will load the file into both\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNUk1vgkAQ_StkTm2CRpDvGA-GSxNNjdyavazsUGmAJbtLUmr8711ApHow5bLMm9n33szOGVLOECJICyplnNNPQUtSkYrlAlOV88rYHrq4zxtJihXu9I3COJPK0F_OhpMfv3S9HIJUIFX43kMvrwN2bPKCjQFDqQRvu_DSsY_8MVW0p3_GXgteo1Btgs_0BuyABe26kKe8vs_sJ5Z_WRwMbjllMVebt92e6knJcQyrVd3FqFCs1wNEhaDtpskyFAMgb8O7KozN3ikUN4WJO2uq_i066r700QaBBYHZbE3AIpD80XlaGE8GJtUx-XgTTChRlDRnelt6ZwTUCUskEOlfhhltCkVAO9SltFE8aasUIiUaNKGpdbd43S-IMlpIjSLLFRe76wZ2hwk1rSA6wzdEtmfNLct3Lc8OlqHnha4JrYbtuRP6nuuElm97wdK9mPDDuWZdzAPbcxzPDh0_cFzHDXu6jz7Z-bj8Aq5V9Qs?type=png)](https://mermaid.live/edit#pako:eNqNUk1vgkAQ_StkTm2CRpDvGA-GSxNNjdyavazsUGmAJbtLUmr8711ApHow5bLMm9n33szOGVLOECJICyplnNNPQUtSkYrlAlOV88rYHrq4zxtJihXu9I3COJPK0F_OhpMfv3S9HIJUIFX43kMvrwN2bPKCjQFDqQRvu_DSsY_8MVW0p3_GXgteo1Btgs_0BuyABe26kKe8vs_sJ5Z_WRwMbjllMVebt92e6knJcQyrVd3FqFCs1wNEhaDtpskyFAMgb8O7KozN3ikUN4WJO2uq_i066r700QaBBYHZbE3AIpD80XlaGE8GJtUx-XgTTChRlDRnelt6ZwTUCUskEOlfhhltCkVAO9SltFE8aasUIiUaNKGpdbd43S-IMlpIjSLLFRe76wZ2hwk1rSA6wzdEtmfNLct3Lc8OlqHnha4JrYbtuRP6nuuElm97wdK9mPDDuWZdzAPbcxzPDh0_cFzHDXu6jz7Z-bj8Aq5V9Qs)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/dotbim\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/dotbim!loadDotBIM | loadDotBIM} to load a .BIM file into our SceneModel and DataModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadDotBIM} from \"@xeokit/dotbim\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.bim\").then(response => {\n *\n * response.json().then(fileData => {\n *\n * loadDotBIM({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading .BIM: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * Using {@link @xeokit/dotbim!saveDotBIM | saveDotBIM} to export the {@link @xeokit/scene!SceneModel | SceneModel} and\n * {@link @xeokit/data!DataModel | DataModel} back to a .BIM file:\n *\n * ````javascript\n * const dotBIMJSON = saveDTX({\n * sceneModel,\n * dataModel\n * });\n * ````\n *\n * @module @xeokit/dotbim\n */\nexport * from \"./loadDotBIM\";\nexport * from \"./saveDotBIM\";\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {ifcTypeCodes} from \"@xeokit/ifctypes\";\nimport {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * Loads .BIM into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/dotbim\" | @xeokit/dotbim} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - .BIM file data.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param options - .BIM loading options\n * @param options.error - Callback to log any non-fatal errors that occur while loading.\n * @returns {Promise} Resolves when .BIM has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadDotBIM(params: {\n fileData: any,\n sceneModel: SceneModel,\n dataModel?: DataModel\n },\n options: {\n translate?: FloatArrayParam,\n error?: (errMsg: string) => void;\n } = {}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n const fileData = params.fileData;\n const ctx = {\n fileData,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0,\n error: options.error || function (errMsg: string) {\n },\n translate: options.translate\n };\n parseDotBIM(ctx);\n resolve();\n });\n}\n\nfunction parseDotBIM(ctx: any) {\n const fileData = ctx.fileData;\n const meshes = fileData.meshes;\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n const geometry = ctx.sceneModel.createGeometry({\n id: mesh.mesh_id,\n primitive: TrianglesPrimitive,\n positions: mesh.coordinates,\n indices: mesh.indices\n });\n if (geometry instanceof SDKError) {\n ctx.error(`[SceneModel.createGeometry]: ${geometry.message}`);\n }\n }\n const elements = fileData.elements;\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i];\n const info = element.info;\n const objectId =\n element.guid !== undefined\n ? `${element.guid}`\n : (info !== undefined && info.id !== undefined\n ? info.id\n : i);\n if (ctx.sceneModel) {\n const geometryId = element.mesh_id;\n const meshId = `${objectId}-mesh`;\n const vector = element.vector;\n const rotation = element.rotation;\n const color = element.color;\n const mesh = ctx.sceneModel.createMesh({\n id: meshId,\n geometryId,\n color: color ? [color.r, color.g, color.b] : undefined,\n opacity: color ? color.a : 1.0,\n quaternion: rotation ? [rotation.qx, rotation.qy, rotation.qz, rotation.qw] : undefined,\n position: vector\n ? (ctx.translate\n ? [vector.x + ctx.translate[0], vector.y + ctx.translate[1], vector.z + ctx.translate[2]]\n : [vector.x, vector.y, vector.z])\n : (ctx.translate ? ctx.translate : undefined)\n });\n if (mesh instanceof SDKError) {\n ctx.error(`[SceneModel.createMesh]: ${mesh.message}`);\n continue;\n }\n const sceneObject = ctx.sceneModel.createObject({\n id: objectId,\n meshIds: [meshId]\n });\n if (sceneObject instanceof SDKError) {\n ctx.error(`[SceneModel.createObject]: ${sceneObject.message}`);\n continue;\n }\n }\n if (ctx.dataModel) {\n if (!ctx.dataModel.objects[element.guid]) {\n const dataObject = ctx.dataModel.createObject({\n id: objectId,\n type: ifcTypeCodes[element.type],\n name: info.Name,\n description: info.Description\n });\n if (dataObject instanceof SDKError) {\n ctx.error(`[SceneModel.createObject]: ${dataObject.message}`);\n }\n }\n }\n }\n}\n", "import type {DataModel} from \"@xeokit/data\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {decompressPoint3WithAABB3, decompressPoint3WithMat4} from \"@xeokit/compression\";\nimport {createVec3, createVec4, decomposeMat4} from \"@xeokit/matrix\";\nimport {ifcTypeNames} from \"@xeokit/ifctypes\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\n\n/**\n * Exports a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel} to a JSON object\n * containing .BIM file data.\n *\n * See {@link \"@xeokit/dotbim\" | @xeokit/dotbim} for usage.\n *\n * @param params\n * @param params.model - The SceneModel to export to .BIM.\n * @param params.dataModel - The DataModel to export to .BIM.\n * @returns The .BIM file data in an JSON object.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has not yet been built.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the DataModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the DataModel has not yet been built.\n */\nexport function saveDotBIM(params: {\n sceneModel: SceneModel,\n dataModel?: DataModel\n}): Object {\n const sceneModel = params.sceneModel\n const dataModel = params.dataModel;\n if (sceneModel?.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!sceneModel?.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n if (dataModel) {\n if (dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (!dataModel.built) {\n throw new SDKError(\"DataModel not yet built\");\n }\n }\n return modelToDotBIM({sceneModel, dataModel});\n}\n\n\nfunction modelToDotBIM(params: { dataModel: DataModel; sceneModel: SceneModel }): Object {\n\n const dotBim = {\n meshes: [],\n elements: []\n };\n\n const geometries = Object.values(params.sceneModel.geometries);\n\n const meshLookup = {};\n\n for (let i = 0, len = geometries.length; i < len; i++) {\n const geometry = geometries[i];\n const aabb = geometry.aabb;\n const coordinates = [];\n const positionsCompressed = geometry.positionsCompressed;\n for (let k = 0, lenk = positionsCompressed.length; k < lenk; k += 3) {\n tempVec3a[0] = positionsCompressed[k];\n tempVec3a[1] = positionsCompressed[k + 1];\n tempVec3a[2] = positionsCompressed[k + 2];\n decompressPoint3WithAABB3(tempVec3a, aabb, tempVec3b);\n coordinates.push(tempVec3b[0]);\n coordinates.push(tempVec3b[1]);\n coordinates.push(tempVec3b[2]);\n }\n meshLookup[geometry.id] = {\n mesh_id: geometry.id,\n coordinates,\n indices: geometry.indices || []\n };\n }\n\n const sceneObjects = Object.values(params.sceneModel.objects);\n\n for (let i = 0, len = sceneObjects.length; i < len; i++) {\n const sceneObject = sceneObjects[i];\n const meshes = sceneObject.meshes;\n let meshId;\n let dbMesh;\n if (meshes.length === 1) {\n const mesh = meshes[0];\n const geometry = mesh.geometry;\n dbMesh = meshLookup[geometry.id];\n dotBim.meshes.push(dbMesh);\n meshId = geometry.id;\n } else {\n dbMesh = {\n mesh_id: sceneObject.id,\n coordinates: [],\n indices: []\n };\n let indicesOffset = 0;\n for (let j = 0, lenj = meshes.length; j < lenj; j++) {\n const sceneMesh = meshes[j];\n const geometry = sceneMesh.geometry;\n const lookupGeometry = meshLookup[geometry.id];\n const coordinates = lookupGeometry.coordinates;\n for (let k = 0, lenk = coordinates.length; k < lenk; k++) {\n dbMesh.coordinates.push(coordinates[k]);\n }\n const indices = lookupGeometry.indices;\n for (let k = 0, lenk = indices.length; k < lenk; k++) {\n dbMesh.indices.push(indices[k] + indicesOffset);\n }\n indicesOffset += coordinates.length / 3;\n }\n dotBim.meshes.push(dbMesh);\n meshId = sceneObject.id;\n }\n const firstMesh = meshes[0];\n const color = firstMesh.color;\n const position = createVec3();\n const quaternion = createVec4();\n const scale = createVec3();\n decomposeMat4(firstMesh.matrix, position, quaternion, scale);\n const info: any = {\n id: sceneObject.id,\n Tag: \"None\"\n };\n let dataObject;\n if (params.dataModel) {\n dataObject = params.dataModel.objects[sceneObject.id];\n if (dataObject) {\n info.type = ifcTypeNames[dataObject.type];\n info.Name = dataObject.name;\n info.Description = dataObject.description;\n }\n }\n if (!dataObject) {\n info.type = \"None\";\n info.Name = \"None\";\n info.Description = \"None\";\n }\n dotBim.elements.push({\n info,\n mesh_id: dbMesh.mesh_id,\n type: info.type,\n color: {\n r: color[0],\n g: color[1],\n b: color[2],\n a: firstMesh.opacity\n },\n vector: {\n x: position[0],\n y: position[1],\n z: position[2]\n },\n rotation: {\n qx: quaternion[0],\n qy: quaternion[0],\n qz: quaternion[0],\n qw: quaternion[0]\n },\n qy: quaternion[1],\n qz: quaternion[2],\n qw: quaternion[3]\n });\n }\n\n return dotBim;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%webifc.svg)](https://badge.fury.io/js/%40xeokit%webifc)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/webifc/badge)](https://www.jsdelivr.com/package/npm/@xeokit/webifc)\n *\n * \n *\n * # xeokit IFC Importer\n *\n * ---\n *\n * ### *Import BIM models from IFC STEP files using the web-ifc API*\n *\n * ---\n *\n * The xeokit SDK can import 3D building models from Industry Foundation Classes ([IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc)) files,\n * a standard file format used in the field of Building Information Modeling (BIM) to exchange information between\n * different software applications used in the construction and building industries.\n *\n * To import a medium-sized IFC model into xeokit, use the {@link @xeokit/webifc!loadWebIFC | loadWebIFC} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}. Internally, loadWebIFC\n * uses the [web-ifc](https://github.com/IFCjs/web-ifc) API to parse geometry and data from the IFC file.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFqwzAM_ZWg0zY62K6hFLaVQaFlpTns4otiK6uHYwfbYYTSf58dJ03bQVkuznt6lp5kHYAbQZADV-jcUuKXxZpppoW0xL00OlvvIu7jWcFJ0ybcUNmB6Sx8UqTTlN9B7xLgltDTR0_d3SeubKUSIxDkvDVdhMeYfcy_RI99-lvZG2sasr4r6Fa9xO1IYezC7WVzGdlOWf5lMRlcGxSfVK7e37YYJuXGMcznTcTkyS4WiUJrsXttq4psItxpeEOFsdkEf6iUFb-opk7VpjpVq_t3iWXOpEn2sl31yiF07ZbBE4PHxwWDZwbFmZ2bwuXk86_uYdKdLDA9GR-D1zdhBjXZGqUIy9c3x8DvqSYGefgVVGGrPIPQSZBi603RaQ65ty3NoG3C8GhYV8grVC6wJKQ3djMsdDyOv8sQ9og?type=png)](https://mermaid.live/edit#pako:eNqNUsFqwzAM_ZWg0zY62K6hFLaVQaFlpTns4otiK6uHYwfbYYTSf58dJ03bQVkuznt6lp5kHYAbQZADV-jcUuKXxZpppoW0xL00OlvvIu7jWcFJ0ybcUNmB6Sx8UqTTlN9B7xLgltDTR0_d3SeubKUSIxDkvDVdhMeYfcy_RI99-lvZG2sasr4r6Fa9xO1IYezC7WVzGdlOWf5lMRlcGxSfVK7e37YYJuXGMcznTcTkyS4WiUJrsXttq4psItxpeEOFsdkEf6iUFb-opk7VpjpVq_t3iWXOpEn2sl31yiF07ZbBE4PHxwWDZwbFmZ2bwuXk86_uYdKdLDA9GR-D1zdhBjXZGqUIy9c3x8DvqSYGefgVVGGrPIPQSZBi603RaQ65ty3NoG3C8GhYV8grVC6wJKQ3djMsdDyOv8sQ9og)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/webifc\n * ````\n *\n * ## Usage\n *\n * The example below shows how to use {@link @xeokit/webifc!loadWebIFC | loadWebIFC} in context.\n *\n * In this example, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry\n * and materials. We'll also create a {@link @xeokit/data!Data | Data}, which will hold semantic data for our model.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials. Within Data, we will\n * create a {@link @xeokit/data!DataModel | DataModel} to hold semantic IFC data, which includes IFC elements and property sets.\n *\n * We will then use\n * {@link @xeokit/webifc!loadWebIFC | loadWebIFC} to load an IFC file into our SceneModel and DataModel. Before we do that, however,\n * we need to successfully instantiate and initialize the WebIFC API, which we pass into loadWebIFC.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadWebIFC} from \"@xeokit/webifc\";\n * import * as WebIFC from \"https://cdn.jsdelivr.net/npm/web-ifc@0.0.51/web-ifc-api.js\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const ifcAPI = new WebIFC.IfcAPI();\n *\n * ifcAPI.SetWasmPath(\"https://cdn.jsdelivr.net/npm/web-ifc@0.0.51/\");\n *\n * ifcAPI.Init().then(() => {\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else if (dataModel instanceof SDKError) {\n * console.error(`Error creating DataModel: ${dataModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.ifc\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadWebIFC({\n * fileData,\n * sceneModel,\n * dataModel\n * }).then(() => {\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * dataModel.destroy();\n * console.error(`Error loading IFC file: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }).catch(message => {\n * console.error(`Error initializing WebIFC.IfcAPI: ${message}`);\n * });\n * }\n * ````\n *\n * @module @xeokit/webifc\n */\nexport * from \"./loadWebIFC\";\n", "var __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __async = (__this, __arguments, generator) => {\n return new Promise((resolve, reject) => {\n var fulfilled = (value) => {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n };\n var rejected = (value) => {\n try {\n step(generator.throw(value));\n } catch (e) {\n reject(e);\n }\n };\n var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);\n step((generator = generator.apply(__this, __arguments)).next());\n });\n};\n\n// dist/web-ifc-mt.js\nvar require_web_ifc_mt = __commonJS({\n \"dist/web-ifc-mt.js\"(exports, module) {\n var WebIFCWasm2 = (() => {\n var _scriptDir = typeof document !== \"undefined\" && document.currentScript ? document.currentScript.src : void 0;\n return function(moduleArg = {}) {\n function GROWABLE_HEAP_I8() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP8;\n }\n function GROWABLE_HEAP_U8() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU8;\n }\n function GROWABLE_HEAP_I16() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP16;\n }\n function GROWABLE_HEAP_U16() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU16;\n }\n function GROWABLE_HEAP_I32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAP32;\n }\n function GROWABLE_HEAP_U32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPU32;\n }\n function GROWABLE_HEAP_F32() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPF32;\n }\n function GROWABLE_HEAP_F64() {\n if (wasmMemory.buffer != HEAP8.buffer) {\n updateMemoryViews();\n }\n return HEAPF64;\n }\n var Module = moduleArg;\n var readyPromiseResolve, readyPromiseReject;\n Module[\"ready\"] = new Promise((resolve, reject) => {\n readyPromiseResolve = resolve;\n readyPromiseReject = reject;\n });\n var moduleOverrides = Object.assign({}, Module);\n var arguments_ = [];\n var thisProgram = \"./this.program\";\n var quit_ = (status, toThrow) => {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = typeof window == \"object\";\n var ENVIRONMENT_IS_WORKER = typeof importScripts == \"function\";\n var ENVIRONMENT_IS_NODE = typeof process == \"object\" && typeof process.versions == \"object\" && typeof process.versions.node == \"string\";\n var ENVIRONMENT_IS_PTHREAD = Module[\"ENVIRONMENT_IS_PTHREAD\"] || false;\n var scriptDirectory = \"\";\n function locateFile(path) {\n if (Module[\"locateFile\"]) {\n return Module[\"locateFile\"](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n } else if (typeof document != \"undefined\" && document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (_scriptDir) {\n scriptDirectory = _scriptDir;\n }\n if (scriptDirectory.indexOf(\"blob:\") !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, \"\").lastIndexOf(\"/\") + 1);\n } else {\n scriptDirectory = \"\";\n }\n {\n read_ = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.send(null);\n return xhr.responseText;\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.responseType = \"arraybuffer\";\n xhr.send(null);\n return new Uint8Array(xhr.response);\n };\n }\n readAsync = (url, onload, onerror) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, true);\n xhr.responseType = \"arraybuffer\";\n xhr.onload = () => {\n if (xhr.status == 200 || xhr.status == 0 && xhr.response) {\n onload(xhr.response);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = (title) => document.title = title;\n } else {\n }\n var out = Module[\"print\"] || console.log.bind(console);\n var err = Module[\"printErr\"] || console.error.bind(console);\n Object.assign(Module, moduleOverrides);\n moduleOverrides = null;\n if (Module[\"arguments\"])\n arguments_ = Module[\"arguments\"];\n if (Module[\"thisProgram\"])\n thisProgram = Module[\"thisProgram\"];\n if (Module[\"quit\"])\n quit_ = Module[\"quit\"];\n var wasmBinary;\n if (Module[\"wasmBinary\"])\n wasmBinary = Module[\"wasmBinary\"];\n var noExitRuntime = Module[\"noExitRuntime\"] || true;\n if (typeof WebAssembly != \"object\") {\n abort(\"no native wasm support detected\");\n }\n var wasmMemory;\n var wasmExports;\n var wasmModule;\n var ABORT = false;\n var EXITSTATUS;\n function assert(condition, text) {\n if (!condition) {\n abort(text);\n }\n }\n var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateMemoryViews() {\n var b = wasmMemory.buffer;\n Module[\"HEAP8\"] = HEAP8 = new Int8Array(b);\n Module[\"HEAP16\"] = HEAP16 = new Int16Array(b);\n Module[\"HEAP32\"] = HEAP32 = new Int32Array(b);\n Module[\"HEAPU8\"] = HEAPU8 = new Uint8Array(b);\n Module[\"HEAPU16\"] = HEAPU16 = new Uint16Array(b);\n Module[\"HEAPU32\"] = HEAPU32 = new Uint32Array(b);\n Module[\"HEAPF32\"] = HEAPF32 = new Float32Array(b);\n Module[\"HEAPF64\"] = HEAPF64 = new Float64Array(b);\n }\n var INITIAL_MEMORY = Module[\"INITIAL_MEMORY\"] || 16777216;\n assert(INITIAL_MEMORY >= 5242880, \"INITIAL_MEMORY should be larger than STACK_SIZE, was \" + INITIAL_MEMORY + \"! (STACK_SIZE=\" + 5242880 + \")\");\n if (ENVIRONMENT_IS_PTHREAD) {\n wasmMemory = Module[\"wasmMemory\"];\n } else {\n if (Module[\"wasmMemory\"]) {\n wasmMemory = Module[\"wasmMemory\"];\n } else {\n wasmMemory = new WebAssembly.Memory({ \"initial\": INITIAL_MEMORY / 65536, \"maximum\": 4294967296 / 65536, \"shared\": true });\n if (!(wasmMemory.buffer instanceof SharedArrayBuffer)) {\n err(\"requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag\");\n if (ENVIRONMENT_IS_NODE) {\n err(\"(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)\");\n }\n throw Error(\"bad memory\");\n }\n }\n }\n updateMemoryViews();\n INITIAL_MEMORY = wasmMemory.buffer.byteLength;\n var wasmTable;\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n var runtimeKeepaliveCounter = 0;\n function keepRuntimeAlive() {\n return noExitRuntime || runtimeKeepaliveCounter > 0;\n }\n function preRun() {\n if (Module[\"preRun\"]) {\n if (typeof Module[\"preRun\"] == \"function\")\n Module[\"preRun\"] = [Module[\"preRun\"]];\n while (Module[\"preRun\"].length) {\n addOnPreRun(Module[\"preRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n if (ENVIRONMENT_IS_PTHREAD)\n return;\n if (!Module[\"noFSInit\"] && !FS.init.initialized)\n FS.init();\n FS.ignorePermissions = false;\n TTY.init();\n callRuntimeCallbacks(__ATINIT__);\n }\n function postRun() {\n if (ENVIRONMENT_IS_PTHREAD)\n return;\n if (Module[\"postRun\"]) {\n if (typeof Module[\"postRun\"] == \"function\")\n Module[\"postRun\"] = [Module[\"postRun\"]];\n while (Module[\"postRun\"].length) {\n addOnPostRun(Module[\"postRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnInit(cb) {\n __ATINIT__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function getUniqueRunDependency(id) {\n return id;\n }\n function addRunDependency(id) {\n runDependencies++;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n function abort(what) {\n if (Module[\"onAbort\"]) {\n Module[\"onAbort\"](what);\n }\n what = \"Aborted(\" + what + \")\";\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what += \". Build with -sASSERTIONS for more info.\";\n var e = new WebAssembly.RuntimeError(what);\n readyPromiseReject(e);\n throw e;\n }\n var dataURIPrefix = \"data:application/octet-stream;base64,\";\n function isDataURI(filename) {\n return filename.startsWith(dataURIPrefix);\n }\n var wasmBinaryFile;\n wasmBinaryFile = \"web-ifc-mt.wasm\";\n if (!isDataURI(wasmBinaryFile)) {\n wasmBinaryFile = locateFile(wasmBinaryFile);\n }\n function getBinarySync(file) {\n if (file == wasmBinaryFile && wasmBinary) {\n return new Uint8Array(wasmBinary);\n }\n if (readBinary) {\n return readBinary(file);\n }\n throw \"both async and sync fetching of the wasm failed\";\n }\n function getBinaryPromise(binaryFile) {\n if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {\n if (typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n if (!response[\"ok\"]) {\n throw \"failed to load wasm binary file at '\" + binaryFile + \"'\";\n }\n return response[\"arrayBuffer\"]();\n }).catch(() => getBinarySync(binaryFile));\n }\n }\n return Promise.resolve().then(() => getBinarySync(binaryFile));\n }\n function instantiateArrayBuffer(binaryFile, imports, receiver) {\n return getBinaryPromise(binaryFile).then((binary) => WebAssembly.instantiate(binary, imports)).then((instance) => instance).then(receiver, (reason) => {\n err(\"failed to asynchronously prepare wasm: \" + reason);\n abort(reason);\n });\n }\n function instantiateAsync(binary, binaryFile, imports, callback) {\n if (!binary && typeof WebAssembly.instantiateStreaming == \"function\" && !isDataURI(binaryFile) && typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n var result = WebAssembly.instantiateStreaming(response, imports);\n return result.then(callback, function(reason) {\n err(\"wasm streaming compile failed: \" + reason);\n err(\"falling back to ArrayBuffer instantiation\");\n return instantiateArrayBuffer(binaryFile, imports, callback);\n });\n });\n }\n return instantiateArrayBuffer(binaryFile, imports, callback);\n }\n function createWasm() {\n var info = { \"a\": wasmImports };\n function receiveInstance(instance, module2) {\n var exports2 = instance.exports;\n exports2 = applySignatureConversions(exports2);\n wasmExports = exports2;\n registerTLSInit(wasmExports[\"ma\"]);\n wasmTable = wasmExports[\"ja\"];\n addOnInit(wasmExports[\"ia\"]);\n wasmModule = module2;\n removeRunDependency(\"wasm-instantiate\");\n return exports2;\n }\n addRunDependency(\"wasm-instantiate\");\n function receiveInstantiationResult(result) {\n receiveInstance(result[\"instance\"], result[\"module\"]);\n }\n if (Module[\"instantiateWasm\"]) {\n try {\n return Module[\"instantiateWasm\"](info, receiveInstance);\n } catch (e) {\n err(\"Module.instantiateWasm callback failed with error: \" + e);\n readyPromiseReject(e);\n }\n }\n instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);\n return {};\n }\n var tempDouble;\n var tempI64;\n function ExitStatus(status) {\n this.name = \"ExitStatus\";\n this.message = `Program terminated with exit(${status})`;\n this.status = status;\n }\n var terminateWorker = function(worker) {\n worker.terminate();\n worker.onmessage = (e) => {\n };\n };\n function killThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n delete PThread.pthreads[pthread_ptr];\n terminateWorker(worker);\n __emscripten_thread_free_data(pthread_ptr);\n PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1);\n worker.pthread_ptr = 0;\n }\n function cancelThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n worker.postMessage({ \"cmd\": \"cancel\" });\n }\n function cleanupThread(pthread_ptr) {\n var worker = PThread.pthreads[pthread_ptr];\n assert(worker);\n PThread.returnWorkerToPool(worker);\n }\n function spawnThread(threadParams) {\n var worker = PThread.getNewWorker();\n if (!worker) {\n return 6;\n }\n PThread.runningWorkers.push(worker);\n PThread.pthreads[threadParams.pthread_ptr] = worker;\n worker.pthread_ptr = threadParams.pthread_ptr;\n var msg = { \"cmd\": \"run\", \"start_routine\": threadParams.startRoutine, \"arg\": threadParams.arg, \"pthread_ptr\": threadParams.pthread_ptr };\n worker.postMessage(msg, threadParams.transferList);\n return 0;\n }\n var PATH = { isAbs: (path) => path.charAt(0) === \"/\", splitPath: (filename) => {\n var splitPathRe = /^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/;\n return splitPathRe.exec(filename).slice(1);\n }, normalizeArray: (parts, allowAboveRoot) => {\n var up = 0;\n for (var i = parts.length - 1; i >= 0; i--) {\n var last = parts[i];\n if (last === \".\") {\n parts.splice(i, 1);\n } else if (last === \"..\") {\n parts.splice(i, 1);\n up++;\n } else if (up) {\n parts.splice(i, 1);\n up--;\n }\n }\n if (allowAboveRoot) {\n for (; up; up--) {\n parts.unshift(\"..\");\n }\n }\n return parts;\n }, normalize: (path) => {\n var isAbsolute = PATH.isAbs(path), trailingSlash = path.substr(-1) === \"/\";\n path = PATH.normalizeArray(path.split(\"/\").filter((p) => !!p), !isAbsolute).join(\"/\");\n if (!path && !isAbsolute) {\n path = \".\";\n }\n if (path && trailingSlash) {\n path += \"/\";\n }\n return (isAbsolute ? \"/\" : \"\") + path;\n }, dirname: (path) => {\n var result = PATH.splitPath(path), root = result[0], dir = result[1];\n if (!root && !dir) {\n return \".\";\n }\n if (dir) {\n dir = dir.substr(0, dir.length - 1);\n }\n return root + dir;\n }, basename: (path) => {\n if (path === \"/\")\n return \"/\";\n path = PATH.normalize(path);\n path = path.replace(/\\/$/, \"\");\n var lastSlash = path.lastIndexOf(\"/\");\n if (lastSlash === -1)\n return path;\n return path.substr(lastSlash + 1);\n }, join: function() {\n var paths = Array.prototype.slice.call(arguments);\n return PATH.normalize(paths.join(\"/\"));\n }, join2: (l, r) => PATH.normalize(l + \"/\" + r) };\n var initRandomFill = () => {\n if (typeof crypto == \"object\" && typeof crypto[\"getRandomValues\"] == \"function\") {\n return (view) => (view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))), view);\n } else\n abort(\"initRandomDevice\");\n };\n var randomFill = (view) => (randomFill = initRandomFill())(view);\n var PATH_FS = { resolve: function() {\n var resolvedPath = \"\", resolvedAbsolute = false;\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path = i >= 0 ? arguments[i] : FS.cwd();\n if (typeof path != \"string\") {\n throw new TypeError(\"Arguments to path.resolve must be strings\");\n } else if (!path) {\n return \"\";\n }\n resolvedPath = path + \"/\" + resolvedPath;\n resolvedAbsolute = PATH.isAbs(path);\n }\n resolvedPath = PATH.normalizeArray(resolvedPath.split(\"/\").filter((p) => !!p), !resolvedAbsolute).join(\"/\");\n return (resolvedAbsolute ? \"/\" : \"\") + resolvedPath || \".\";\n }, relative: (from, to) => {\n from = PATH_FS.resolve(from).substr(1);\n to = PATH_FS.resolve(to).substr(1);\n function trim(arr) {\n var start = 0;\n for (; start < arr.length; start++) {\n if (arr[start] !== \"\")\n break;\n }\n var end = arr.length - 1;\n for (; end >= 0; end--) {\n if (arr[end] !== \"\")\n break;\n }\n if (start > end)\n return [];\n return arr.slice(start, end - start + 1);\n }\n var fromParts = trim(from.split(\"/\"));\n var toParts = trim(to.split(\"/\"));\n var length = Math.min(fromParts.length, toParts.length);\n var samePartsLength = length;\n for (var i = 0; i < length; i++) {\n if (fromParts[i] !== toParts[i]) {\n samePartsLength = i;\n break;\n }\n }\n var outputParts = [];\n for (var i = samePartsLength; i < fromParts.length; i++) {\n outputParts.push(\"..\");\n }\n outputParts = outputParts.concat(toParts.slice(samePartsLength));\n return outputParts.join(\"/\");\n } };\n var UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => {\n idx >>>= 0;\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.buffer instanceof SharedArrayBuffer ? heapOrArray.slice(idx, endPtr) : heapOrArray.subarray(idx, endPtr));\n }\n var str = \"\";\n while (idx < endPtr) {\n var u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n var u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n };\n var FS_stdin_getChar_buffer = [];\n var lengthBytesUTF8 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var c = str.charCodeAt(i);\n if (c <= 127) {\n len++;\n } else if (c <= 2047) {\n len += 2;\n } else if (c >= 55296 && c <= 57343) {\n len += 4;\n ++i;\n } else {\n len += 3;\n }\n }\n return len;\n };\n var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {\n outIdx >>>= 0;\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = 65536 + ((u & 1023) << 10) | u1 & 1023;\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++ >>> 0] = u;\n } else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 192 | u >> 6;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 224 | u >> 12;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 240 | u >> 18;\n heap[outIdx++ >>> 0] = 128 | u >> 12 & 63;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n }\n }\n heap[outIdx >>> 0] = 0;\n return outIdx - startIdx;\n };\n function intArrayFromString(stringy, dontAddNull, length) {\n var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;\n var u8array = new Array(len);\n var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);\n if (dontAddNull)\n u8array.length = numBytesWritten;\n return u8array;\n }\n var FS_stdin_getChar = () => {\n if (!FS_stdin_getChar_buffer.length) {\n var result = null;\n if (typeof window != \"undefined\" && typeof window.prompt == \"function\") {\n result = window.prompt(\"Input: \");\n if (result !== null) {\n result += \"\\n\";\n }\n } else if (typeof readline == \"function\") {\n result = readline();\n if (result !== null) {\n result += \"\\n\";\n }\n }\n if (!result) {\n return null;\n }\n FS_stdin_getChar_buffer = intArrayFromString(result, true);\n }\n return FS_stdin_getChar_buffer.shift();\n };\n var TTY = { ttys: [], init: function() {\n }, shutdown: function() {\n }, register: function(dev, ops) {\n TTY.ttys[dev] = { input: [], output: [], ops };\n FS.registerDevice(dev, TTY.stream_ops);\n }, stream_ops: { open: function(stream) {\n var tty = TTY.ttys[stream.node.rdev];\n if (!tty) {\n throw new FS.ErrnoError(43);\n }\n stream.tty = tty;\n stream.seekable = false;\n }, close: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, fsync: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, read: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.get_char) {\n throw new FS.ErrnoError(60);\n }\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = stream.tty.ops.get_char(stream.tty);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.put_char) {\n throw new FS.ErrnoError(60);\n }\n try {\n for (var i = 0; i < length; i++) {\n stream.tty.ops.put_char(stream.tty, buffer[offset + i]);\n }\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } }, default_tty_ops: { get_char: function(tty) {\n return FS_stdin_getChar();\n }, put_char: function(tty, val) {\n if (val === null || val === 10) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n }, ioctl_tcgets: function(tty) {\n return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };\n }, ioctl_tcsets: function(tty, optional_actions, data) {\n return 0;\n }, ioctl_tiocgwinsz: function(tty) {\n return [24, 80];\n } }, default_tty1_ops: { put_char: function(tty, val) {\n if (val === null || val === 10) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n } } };\n var mmapAlloc = (size) => {\n abort();\n };\n var MEMFS = { ops_table: null, mount(mount) {\n return MEMFS.createNode(null, \"/\", 16384 | 511, 0);\n }, createNode(parent, name, mode, dev) {\n if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {\n throw new FS.ErrnoError(63);\n }\n if (!MEMFS.ops_table) {\n MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } };\n }\n var node = FS.createNode(parent, name, mode, dev);\n if (FS.isDir(node.mode)) {\n node.node_ops = MEMFS.ops_table.dir.node;\n node.stream_ops = MEMFS.ops_table.dir.stream;\n node.contents = {};\n } else if (FS.isFile(node.mode)) {\n node.node_ops = MEMFS.ops_table.file.node;\n node.stream_ops = MEMFS.ops_table.file.stream;\n node.usedBytes = 0;\n node.contents = null;\n } else if (FS.isLink(node.mode)) {\n node.node_ops = MEMFS.ops_table.link.node;\n node.stream_ops = MEMFS.ops_table.link.stream;\n } else if (FS.isChrdev(node.mode)) {\n node.node_ops = MEMFS.ops_table.chrdev.node;\n node.stream_ops = MEMFS.ops_table.chrdev.stream;\n }\n node.timestamp = Date.now();\n if (parent) {\n parent.contents[name] = node;\n parent.timestamp = node.timestamp;\n }\n return node;\n }, getFileDataAsTypedArray(node) {\n if (!node.contents)\n return new Uint8Array(0);\n if (node.contents.subarray)\n return node.contents.subarray(0, node.usedBytes);\n return new Uint8Array(node.contents);\n }, expandFileStorage(node, newCapacity) {\n var prevCapacity = node.contents ? node.contents.length : 0;\n if (prevCapacity >= newCapacity)\n return;\n var CAPACITY_DOUBLING_MAX = 1024 * 1024;\n newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0);\n if (prevCapacity != 0)\n newCapacity = Math.max(newCapacity, 256);\n var oldContents = node.contents;\n node.contents = new Uint8Array(newCapacity);\n if (node.usedBytes > 0)\n node.contents.set(oldContents.subarray(0, node.usedBytes), 0);\n }, resizeFileStorage(node, newSize) {\n if (node.usedBytes == newSize)\n return;\n if (newSize == 0) {\n node.contents = null;\n node.usedBytes = 0;\n } else {\n var oldContents = node.contents;\n node.contents = new Uint8Array(newSize);\n if (oldContents) {\n node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));\n }\n node.usedBytes = newSize;\n }\n }, node_ops: { getattr(node) {\n var attr = {};\n attr.dev = FS.isChrdev(node.mode) ? node.id : 1;\n attr.ino = node.id;\n attr.mode = node.mode;\n attr.nlink = 1;\n attr.uid = 0;\n attr.gid = 0;\n attr.rdev = node.rdev;\n if (FS.isDir(node.mode)) {\n attr.size = 4096;\n } else if (FS.isFile(node.mode)) {\n attr.size = node.usedBytes;\n } else if (FS.isLink(node.mode)) {\n attr.size = node.link.length;\n } else {\n attr.size = 0;\n }\n attr.atime = new Date(node.timestamp);\n attr.mtime = new Date(node.timestamp);\n attr.ctime = new Date(node.timestamp);\n attr.blksize = 4096;\n attr.blocks = Math.ceil(attr.size / attr.blksize);\n return attr;\n }, setattr(node, attr) {\n if (attr.mode !== void 0) {\n node.mode = attr.mode;\n }\n if (attr.timestamp !== void 0) {\n node.timestamp = attr.timestamp;\n }\n if (attr.size !== void 0) {\n MEMFS.resizeFileStorage(node, attr.size);\n }\n }, lookup(parent, name) {\n throw FS.genericErrors[44];\n }, mknod(parent, name, mode, dev) {\n return MEMFS.createNode(parent, name, mode, dev);\n }, rename(old_node, new_dir, new_name) {\n if (FS.isDir(old_node.mode)) {\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (new_node) {\n for (var i in new_node.contents) {\n throw new FS.ErrnoError(55);\n }\n }\n }\n delete old_node.parent.contents[old_node.name];\n old_node.parent.timestamp = Date.now();\n old_node.name = new_name;\n new_dir.contents[new_name] = old_node;\n new_dir.timestamp = old_node.parent.timestamp;\n old_node.parent = new_dir;\n }, unlink(parent, name) {\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, rmdir(parent, name) {\n var node = FS.lookupNode(parent, name);\n for (var i in node.contents) {\n throw new FS.ErrnoError(55);\n }\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, readdir(node) {\n var entries = [\".\", \"..\"];\n for (var key in node.contents) {\n if (!node.contents.hasOwnProperty(key)) {\n continue;\n }\n entries.push(key);\n }\n return entries;\n }, symlink(parent, newname, oldpath) {\n var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);\n node.link = oldpath;\n return node;\n }, readlink(node) {\n if (!FS.isLink(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n return node.link;\n } }, stream_ops: { read(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= stream.node.usedBytes)\n return 0;\n var size = Math.min(stream.node.usedBytes - position, length);\n if (size > 8 && contents.subarray) {\n buffer.set(contents.subarray(position, position + size), offset);\n } else {\n for (var i = 0; i < size; i++)\n buffer[offset + i] = contents[position + i];\n }\n return size;\n }, write(stream, buffer, offset, length, position, canOwn) {\n if (buffer.buffer === GROWABLE_HEAP_I8().buffer) {\n canOwn = false;\n }\n if (!length)\n return 0;\n var node = stream.node;\n node.timestamp = Date.now();\n if (buffer.subarray && (!node.contents || node.contents.subarray)) {\n if (canOwn) {\n node.contents = buffer.subarray(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (node.usedBytes === 0 && position === 0) {\n node.contents = buffer.slice(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (position + length <= node.usedBytes) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n return length;\n }\n }\n MEMFS.expandFileStorage(node, position + length);\n if (node.contents.subarray && buffer.subarray) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n } else {\n for (var i = 0; i < length; i++) {\n node.contents[position + i] = buffer[offset + i];\n }\n }\n node.usedBytes = Math.max(node.usedBytes, position + length);\n return length;\n }, llseek(stream, offset, whence) {\n var position = offset;\n if (whence === 1) {\n position += stream.position;\n } else if (whence === 2) {\n if (FS.isFile(stream.node.mode)) {\n position += stream.node.usedBytes;\n }\n }\n if (position < 0) {\n throw new FS.ErrnoError(28);\n }\n return position;\n }, allocate(stream, offset, length) {\n MEMFS.expandFileStorage(stream.node, offset + length);\n stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);\n }, mmap(stream, length, position, prot, flags) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n var ptr;\n var allocated;\n var contents = stream.node.contents;\n if (!(flags & 2) && contents.buffer === GROWABLE_HEAP_I8().buffer) {\n allocated = false;\n ptr = contents.byteOffset;\n } else {\n if (position > 0 || position + length < contents.length) {\n if (contents.subarray) {\n contents = contents.subarray(position, position + length);\n } else {\n contents = Array.prototype.slice.call(contents, position, position + length);\n }\n }\n allocated = true;\n ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n GROWABLE_HEAP_I8().set(contents, ptr >>> 0);\n }\n return { ptr, allocated };\n }, msync(stream, buffer, offset, length, mmapFlags) {\n MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);\n return 0;\n } } };\n var asyncLoad = (url, onload, onerror, noRunDep) => {\n var dep = !noRunDep ? getUniqueRunDependency(`al ${url}`) : \"\";\n readAsync(url, (arrayBuffer) => {\n assert(arrayBuffer, `Loading data file \"${url}\" failed (no arrayBuffer).`);\n onload(new Uint8Array(arrayBuffer));\n if (dep)\n removeRunDependency(dep);\n }, (event) => {\n if (onerror) {\n onerror();\n } else {\n throw `Loading data file \"${url}\" failed.`;\n }\n });\n if (dep)\n addRunDependency(dep);\n };\n var preloadPlugins = Module[\"preloadPlugins\"] || [];\n function FS_handledByPreloadPlugin(byteArray, fullname, finish, onerror) {\n if (typeof Browser != \"undefined\")\n Browser.init();\n var handled = false;\n preloadPlugins.forEach(function(plugin) {\n if (handled)\n return;\n if (plugin[\"canHandle\"](fullname)) {\n plugin[\"handle\"](byteArray, fullname, finish, onerror);\n handled = true;\n }\n });\n return handled;\n }\n function FS_createPreloadedFile(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {\n var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent;\n var dep = getUniqueRunDependency(`cp ${fullname}`);\n function processData(byteArray) {\n function finish(byteArray2) {\n if (preFinish)\n preFinish();\n if (!dontCreateFile) {\n FS.createDataFile(parent, name, byteArray2, canRead, canWrite, canOwn);\n }\n if (onload)\n onload();\n removeRunDependency(dep);\n }\n if (FS_handledByPreloadPlugin(byteArray, fullname, finish, () => {\n if (onerror)\n onerror();\n removeRunDependency(dep);\n })) {\n return;\n }\n finish(byteArray);\n }\n addRunDependency(dep);\n if (typeof url == \"string\") {\n asyncLoad(url, (byteArray) => processData(byteArray), onerror);\n } else {\n processData(url);\n }\n }\n function FS_modeStringToFlags(str) {\n var flagModes = { \"r\": 0, \"r+\": 2, \"w\": 512 | 64 | 1, \"w+\": 512 | 64 | 2, \"a\": 1024 | 64 | 1, \"a+\": 1024 | 64 | 2 };\n var flags = flagModes[str];\n if (typeof flags == \"undefined\") {\n throw new Error(`Unknown file open mode: ${str}`);\n }\n return flags;\n }\n function FS_getMode(canRead, canWrite) {\n var mode = 0;\n if (canRead)\n mode |= 292 | 73;\n if (canWrite)\n mode |= 146;\n return mode;\n }\n var FS = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: \"/\", initialized: false, ignorePermissions: true, ErrnoError: null, genericErrors: {}, filesystems: null, syncFSRequests: 0, lookupPath: (path, opts = {}) => {\n path = PATH_FS.resolve(path);\n if (!path)\n return { path: \"\", node: null };\n var defaults = { follow_mount: true, recurse_count: 0 };\n opts = Object.assign(defaults, opts);\n if (opts.recurse_count > 8) {\n throw new FS.ErrnoError(32);\n }\n var parts = path.split(\"/\").filter((p) => !!p);\n var current = FS.root;\n var current_path = \"/\";\n for (var i = 0; i < parts.length; i++) {\n var islast = i === parts.length - 1;\n if (islast && opts.parent) {\n break;\n }\n current = FS.lookupNode(current, parts[i]);\n current_path = PATH.join2(current_path, parts[i]);\n if (FS.isMountpoint(current)) {\n if (!islast || islast && opts.follow_mount) {\n current = current.mounted.root;\n }\n }\n if (!islast || opts.follow) {\n var count = 0;\n while (FS.isLink(current.mode)) {\n var link = FS.readlink(current_path);\n current_path = PATH_FS.resolve(PATH.dirname(current_path), link);\n var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count + 1 });\n current = lookup.node;\n if (count++ > 40) {\n throw new FS.ErrnoError(32);\n }\n }\n }\n }\n return { path: current_path, node: current };\n }, getPath: (node) => {\n var path;\n while (true) {\n if (FS.isRoot(node)) {\n var mount = node.mount.mountpoint;\n if (!path)\n return mount;\n return mount[mount.length - 1] !== \"/\" ? `${mount}/${path}` : mount + path;\n }\n path = path ? `${node.name}/${path}` : node.name;\n node = node.parent;\n }\n }, hashName: (parentid, name) => {\n var hash = 0;\n for (var i = 0; i < name.length; i++) {\n hash = (hash << 5) - hash + name.charCodeAt(i) | 0;\n }\n return (parentid + hash >>> 0) % FS.nameTable.length;\n }, hashAddNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n node.name_next = FS.nameTable[hash];\n FS.nameTable[hash] = node;\n }, hashRemoveNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n if (FS.nameTable[hash] === node) {\n FS.nameTable[hash] = node.name_next;\n } else {\n var current = FS.nameTable[hash];\n while (current) {\n if (current.name_next === node) {\n current.name_next = node.name_next;\n break;\n }\n current = current.name_next;\n }\n }\n }, lookupNode: (parent, name) => {\n var errCode = FS.mayLookup(parent);\n if (errCode) {\n throw new FS.ErrnoError(errCode, parent);\n }\n var hash = FS.hashName(parent.id, name);\n for (var node = FS.nameTable[hash]; node; node = node.name_next) {\n var nodeName = node.name;\n if (node.parent.id === parent.id && nodeName === name) {\n return node;\n }\n }\n return FS.lookup(parent, name);\n }, createNode: (parent, name, mode, rdev) => {\n var node = new FS.FSNode(parent, name, mode, rdev);\n FS.hashAddNode(node);\n return node;\n }, destroyNode: (node) => {\n FS.hashRemoveNode(node);\n }, isRoot: (node) => node === node.parent, isMountpoint: (node) => !!node.mounted, isFile: (mode) => (mode & 61440) === 32768, isDir: (mode) => (mode & 61440) === 16384, isLink: (mode) => (mode & 61440) === 40960, isChrdev: (mode) => (mode & 61440) === 8192, isBlkdev: (mode) => (mode & 61440) === 24576, isFIFO: (mode) => (mode & 61440) === 4096, isSocket: (mode) => (mode & 49152) === 49152, flagsToPermissionString: (flag) => {\n var perms = [\"r\", \"w\", \"rw\"][flag & 3];\n if (flag & 512) {\n perms += \"w\";\n }\n return perms;\n }, nodePermissions: (node, perms) => {\n if (FS.ignorePermissions) {\n return 0;\n }\n if (perms.includes(\"r\") && !(node.mode & 292)) {\n return 2;\n } else if (perms.includes(\"w\") && !(node.mode & 146)) {\n return 2;\n } else if (perms.includes(\"x\") && !(node.mode & 73)) {\n return 2;\n }\n return 0;\n }, mayLookup: (dir) => {\n var errCode = FS.nodePermissions(dir, \"x\");\n if (errCode)\n return errCode;\n if (!dir.node_ops.lookup)\n return 2;\n return 0;\n }, mayCreate: (dir, name) => {\n try {\n var node = FS.lookupNode(dir, name);\n return 20;\n } catch (e) {\n }\n return FS.nodePermissions(dir, \"wx\");\n }, mayDelete: (dir, name, isdir) => {\n var node;\n try {\n node = FS.lookupNode(dir, name);\n } catch (e) {\n return e.errno;\n }\n var errCode = FS.nodePermissions(dir, \"wx\");\n if (errCode) {\n return errCode;\n }\n if (isdir) {\n if (!FS.isDir(node.mode)) {\n return 54;\n }\n if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {\n return 10;\n }\n } else {\n if (FS.isDir(node.mode)) {\n return 31;\n }\n }\n return 0;\n }, mayOpen: (node, flags) => {\n if (!node) {\n return 44;\n }\n if (FS.isLink(node.mode)) {\n return 32;\n } else if (FS.isDir(node.mode)) {\n if (FS.flagsToPermissionString(flags) !== \"r\" || flags & 512) {\n return 31;\n }\n }\n return FS.nodePermissions(node, FS.flagsToPermissionString(flags));\n }, MAX_OPEN_FDS: 4096, nextfd: () => {\n for (var fd = 0; fd <= FS.MAX_OPEN_FDS; fd++) {\n if (!FS.streams[fd]) {\n return fd;\n }\n }\n throw new FS.ErrnoError(33);\n }, getStreamChecked: (fd) => {\n var stream = FS.getStream(fd);\n if (!stream) {\n throw new FS.ErrnoError(8);\n }\n return stream;\n }, getStream: (fd) => FS.streams[fd], createStream: (stream, fd = -1) => {\n if (!FS.FSStream) {\n FS.FSStream = function() {\n this.shared = {};\n };\n FS.FSStream.prototype = {};\n Object.defineProperties(FS.FSStream.prototype, { object: { get() {\n return this.node;\n }, set(val) {\n this.node = val;\n } }, isRead: { get() {\n return (this.flags & 2097155) !== 1;\n } }, isWrite: { get() {\n return (this.flags & 2097155) !== 0;\n } }, isAppend: { get() {\n return this.flags & 1024;\n } }, flags: { get() {\n return this.shared.flags;\n }, set(val) {\n this.shared.flags = val;\n } }, position: { get() {\n return this.shared.position;\n }, set(val) {\n this.shared.position = val;\n } } });\n }\n stream = Object.assign(new FS.FSStream(), stream);\n if (fd == -1) {\n fd = FS.nextfd();\n }\n stream.fd = fd;\n FS.streams[fd] = stream;\n return stream;\n }, closeStream: (fd) => {\n FS.streams[fd] = null;\n }, chrdev_stream_ops: { open: (stream) => {\n var device = FS.getDevice(stream.node.rdev);\n stream.stream_ops = device.stream_ops;\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n }, llseek: () => {\n throw new FS.ErrnoError(70);\n } }, major: (dev) => dev >> 8, minor: (dev) => dev & 255, makedev: (ma, mi) => ma << 8 | mi, registerDevice: (dev, ops) => {\n FS.devices[dev] = { stream_ops: ops };\n }, getDevice: (dev) => FS.devices[dev], getMounts: (mount) => {\n var mounts = [];\n var check = [mount];\n while (check.length) {\n var m = check.pop();\n mounts.push(m);\n check.push.apply(check, m.mounts);\n }\n return mounts;\n }, syncfs: (populate, callback) => {\n if (typeof populate == \"function\") {\n callback = populate;\n populate = false;\n }\n FS.syncFSRequests++;\n if (FS.syncFSRequests > 1) {\n err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);\n }\n var mounts = FS.getMounts(FS.root.mount);\n var completed = 0;\n function doCallback(errCode) {\n FS.syncFSRequests--;\n return callback(errCode);\n }\n function done(errCode) {\n if (errCode) {\n if (!done.errored) {\n done.errored = true;\n return doCallback(errCode);\n }\n return;\n }\n if (++completed >= mounts.length) {\n doCallback(null);\n }\n }\n mounts.forEach((mount) => {\n if (!mount.type.syncfs) {\n return done(null);\n }\n mount.type.syncfs(mount, populate, done);\n });\n }, mount: (type, opts, mountpoint) => {\n var root = mountpoint === \"/\";\n var pseudo = !mountpoint;\n var node;\n if (root && FS.root) {\n throw new FS.ErrnoError(10);\n } else if (!root && !pseudo) {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n mountpoint = lookup.path;\n node = lookup.node;\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n if (!FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n }\n var mount = { type, opts, mountpoint, mounts: [] };\n var mountRoot = type.mount(mount);\n mountRoot.mount = mount;\n mount.root = mountRoot;\n if (root) {\n FS.root = mountRoot;\n } else if (node) {\n node.mounted = mount;\n if (node.mount) {\n node.mount.mounts.push(mount);\n }\n }\n return mountRoot;\n }, unmount: (mountpoint) => {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n if (!FS.isMountpoint(lookup.node)) {\n throw new FS.ErrnoError(28);\n }\n var node = lookup.node;\n var mount = node.mounted;\n var mounts = FS.getMounts(mount);\n Object.keys(FS.nameTable).forEach((hash) => {\n var current = FS.nameTable[hash];\n while (current) {\n var next = current.name_next;\n if (mounts.includes(current.mount)) {\n FS.destroyNode(current);\n }\n current = next;\n }\n });\n node.mounted = null;\n var idx = node.mount.mounts.indexOf(mount);\n node.mount.mounts.splice(idx, 1);\n }, lookup: (parent, name) => parent.node_ops.lookup(parent, name), mknod: (path, mode, dev) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n if (!name || name === \".\" || name === \"..\") {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.mayCreate(parent, name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.mknod) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.mknod(parent, name, mode, dev);\n }, create: (path, mode) => {\n mode = mode !== void 0 ? mode : 438;\n mode &= 4095;\n mode |= 32768;\n return FS.mknod(path, mode, 0);\n }, mkdir: (path, mode) => {\n mode = mode !== void 0 ? mode : 511;\n mode &= 511 | 512;\n mode |= 16384;\n return FS.mknod(path, mode, 0);\n }, mkdirTree: (path, mode) => {\n var dirs = path.split(\"/\");\n var d = \"\";\n for (var i = 0; i < dirs.length; ++i) {\n if (!dirs[i])\n continue;\n d += \"/\" + dirs[i];\n try {\n FS.mkdir(d, mode);\n } catch (e) {\n if (e.errno != 20)\n throw e;\n }\n }\n }, mkdev: (path, mode, dev) => {\n if (typeof dev == \"undefined\") {\n dev = mode;\n mode = 438;\n }\n mode |= 8192;\n return FS.mknod(path, mode, dev);\n }, symlink: (oldpath, newpath) => {\n if (!PATH_FS.resolve(oldpath)) {\n throw new FS.ErrnoError(44);\n }\n var lookup = FS.lookupPath(newpath, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var newname = PATH.basename(newpath);\n var errCode = FS.mayCreate(parent, newname);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.symlink) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.symlink(parent, newname, oldpath);\n }, rename: (old_path, new_path) => {\n var old_dirname = PATH.dirname(old_path);\n var new_dirname = PATH.dirname(new_path);\n var old_name = PATH.basename(old_path);\n var new_name = PATH.basename(new_path);\n var lookup, old_dir, new_dir;\n lookup = FS.lookupPath(old_path, { parent: true });\n old_dir = lookup.node;\n lookup = FS.lookupPath(new_path, { parent: true });\n new_dir = lookup.node;\n if (!old_dir || !new_dir)\n throw new FS.ErrnoError(44);\n if (old_dir.mount !== new_dir.mount) {\n throw new FS.ErrnoError(75);\n }\n var old_node = FS.lookupNode(old_dir, old_name);\n var relative = PATH_FS.relative(old_path, new_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(28);\n }\n relative = PATH_FS.relative(new_path, old_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(55);\n }\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (old_node === new_node) {\n return;\n }\n var isdir = FS.isDir(old_node.mode);\n var errCode = FS.mayDelete(old_dir, old_name, isdir);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!old_dir.node_ops.rename) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {\n throw new FS.ErrnoError(10);\n }\n if (new_dir !== old_dir) {\n errCode = FS.nodePermissions(old_dir, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n FS.hashRemoveNode(old_node);\n try {\n old_dir.node_ops.rename(old_node, new_dir, new_name);\n } catch (e) {\n throw e;\n } finally {\n FS.hashAddNode(old_node);\n }\n }, rmdir: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, true);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.rmdir) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.rmdir(parent, name);\n FS.destroyNode(node);\n }, readdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n if (!node.node_ops.readdir) {\n throw new FS.ErrnoError(54);\n }\n return node.node_ops.readdir(node);\n }, unlink: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, false);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.unlink) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.unlink(parent, name);\n FS.destroyNode(node);\n }, readlink: (path) => {\n var lookup = FS.lookupPath(path);\n var link = lookup.node;\n if (!link) {\n throw new FS.ErrnoError(44);\n }\n if (!link.node_ops.readlink) {\n throw new FS.ErrnoError(28);\n }\n return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));\n }, stat: (path, dontFollow) => {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n var node = lookup.node;\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (!node.node_ops.getattr) {\n throw new FS.ErrnoError(63);\n }\n return node.node_ops.getattr(node);\n }, lstat: (path) => FS.stat(path, true), chmod: (path, mode, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { mode: mode & 4095 | node.mode & ~4095, timestamp: Date.now() });\n }, lchmod: (path, mode) => {\n FS.chmod(path, mode, true);\n }, fchmod: (fd, mode) => {\n var stream = FS.getStreamChecked(fd);\n FS.chmod(stream.node, mode);\n }, chown: (path, uid, gid, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { timestamp: Date.now() });\n }, lchown: (path, uid, gid) => {\n FS.chown(path, uid, gid, true);\n }, fchown: (fd, uid, gid) => {\n var stream = FS.getStreamChecked(fd);\n FS.chown(stream.node, uid, gid);\n }, truncate: (path, len) => {\n if (len < 0) {\n throw new FS.ErrnoError(28);\n }\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: true });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isDir(node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!FS.isFile(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.nodePermissions(node, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n node.node_ops.setattr(node, { size: len, timestamp: Date.now() });\n }, ftruncate: (fd, len) => {\n var stream = FS.getStreamChecked(fd);\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(28);\n }\n FS.truncate(stream.node, len);\n }, utime: (path, atime, mtime) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) });\n }, open: (path, flags, mode) => {\n if (path === \"\") {\n throw new FS.ErrnoError(44);\n }\n flags = typeof flags == \"string\" ? FS_modeStringToFlags(flags) : flags;\n mode = typeof mode == \"undefined\" ? 438 : mode;\n if (flags & 64) {\n mode = mode & 4095 | 32768;\n } else {\n mode = 0;\n }\n var node;\n if (typeof path == \"object\") {\n node = path;\n } else {\n path = PATH.normalize(path);\n try {\n var lookup = FS.lookupPath(path, { follow: !(flags & 131072) });\n node = lookup.node;\n } catch (e) {\n }\n }\n var created = false;\n if (flags & 64) {\n if (node) {\n if (flags & 128) {\n throw new FS.ErrnoError(20);\n }\n } else {\n node = FS.mknod(path, mode, 0);\n created = true;\n }\n }\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (FS.isChrdev(node.mode)) {\n flags &= ~512;\n }\n if (flags & 65536 && !FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n if (!created) {\n var errCode = FS.mayOpen(node, flags);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n if (flags & 512 && !created) {\n FS.truncate(node, 0);\n }\n flags &= ~(128 | 512 | 131072);\n var stream = FS.createStream({ node, path: FS.getPath(node), flags, seekable: true, position: 0, stream_ops: node.stream_ops, ungotten: [], error: false });\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n if (Module[\"logReadFiles\"] && !(flags & 1)) {\n if (!FS.readFiles)\n FS.readFiles = {};\n if (!(path in FS.readFiles)) {\n FS.readFiles[path] = 1;\n }\n }\n return stream;\n }, close: (stream) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (stream.getdents)\n stream.getdents = null;\n try {\n if (stream.stream_ops.close) {\n stream.stream_ops.close(stream);\n }\n } catch (e) {\n throw e;\n } finally {\n FS.closeStream(stream.fd);\n }\n stream.fd = null;\n }, isClosed: (stream) => stream.fd === null, llseek: (stream, offset, whence) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (!stream.seekable || !stream.stream_ops.llseek) {\n throw new FS.ErrnoError(70);\n }\n if (whence != 0 && whence != 1 && whence != 2) {\n throw new FS.ErrnoError(28);\n }\n stream.position = stream.stream_ops.llseek(stream, offset, whence);\n stream.ungotten = [];\n return stream.position;\n }, read: (stream, buffer, offset, length, position) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.read) {\n throw new FS.ErrnoError(28);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);\n if (!seeking)\n stream.position += bytesRead;\n return bytesRead;\n }, write: (stream, buffer, offset, length, position, canOwn) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.write) {\n throw new FS.ErrnoError(28);\n }\n if (stream.seekable && stream.flags & 1024) {\n FS.llseek(stream, 0, 2);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);\n if (!seeking)\n stream.position += bytesWritten;\n return bytesWritten;\n }, allocate: (stream, offset, length) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (offset < 0 || length <= 0) {\n throw new FS.ErrnoError(28);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (!stream.stream_ops.allocate) {\n throw new FS.ErrnoError(138);\n }\n stream.stream_ops.allocate(stream, offset, length);\n }, mmap: (stream, length, position, prot, flags) => {\n if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {\n throw new FS.ErrnoError(2);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(2);\n }\n if (!stream.stream_ops.mmap) {\n throw new FS.ErrnoError(43);\n }\n return stream.stream_ops.mmap(stream, length, position, prot, flags);\n }, msync: (stream, buffer, offset, length, mmapFlags) => {\n if (!stream.stream_ops.msync) {\n return 0;\n }\n return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);\n }, munmap: (stream) => 0, ioctl: (stream, cmd, arg) => {\n if (!stream.stream_ops.ioctl) {\n throw new FS.ErrnoError(59);\n }\n return stream.stream_ops.ioctl(stream, cmd, arg);\n }, readFile: (path, opts = {}) => {\n opts.flags = opts.flags || 0;\n opts.encoding = opts.encoding || \"binary\";\n if (opts.encoding !== \"utf8\" && opts.encoding !== \"binary\") {\n throw new Error(`Invalid encoding type \"${opts.encoding}\"`);\n }\n var ret;\n var stream = FS.open(path, opts.flags);\n var stat = FS.stat(path);\n var length = stat.size;\n var buf = new Uint8Array(length);\n FS.read(stream, buf, 0, length, 0);\n if (opts.encoding === \"utf8\") {\n ret = UTF8ArrayToString(buf, 0);\n } else if (opts.encoding === \"binary\") {\n ret = buf;\n }\n FS.close(stream);\n return ret;\n }, writeFile: (path, data, opts = {}) => {\n opts.flags = opts.flags || 577;\n var stream = FS.open(path, opts.flags, opts.mode);\n if (typeof data == \"string\") {\n var buf = new Uint8Array(lengthBytesUTF8(data) + 1);\n var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);\n FS.write(stream, buf, 0, actualNumBytes, void 0, opts.canOwn);\n } else if (ArrayBuffer.isView(data)) {\n FS.write(stream, data, 0, data.byteLength, void 0, opts.canOwn);\n } else {\n throw new Error(\"Unsupported data type\");\n }\n FS.close(stream);\n }, cwd: () => FS.currentPath, chdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n if (lookup.node === null) {\n throw new FS.ErrnoError(44);\n }\n if (!FS.isDir(lookup.node.mode)) {\n throw new FS.ErrnoError(54);\n }\n var errCode = FS.nodePermissions(lookup.node, \"x\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n FS.currentPath = lookup.path;\n }, createDefaultDirectories: () => {\n FS.mkdir(\"/tmp\");\n FS.mkdir(\"/home\");\n FS.mkdir(\"/home/web_user\");\n }, createDefaultDevices: () => {\n FS.mkdir(\"/dev\");\n FS.registerDevice(FS.makedev(1, 3), { read: () => 0, write: (stream, buffer, offset, length, pos) => length });\n FS.mkdev(\"/dev/null\", FS.makedev(1, 3));\n TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);\n TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);\n FS.mkdev(\"/dev/tty\", FS.makedev(5, 0));\n FS.mkdev(\"/dev/tty1\", FS.makedev(6, 0));\n var randomBuffer = new Uint8Array(1024), randomLeft = 0;\n var randomByte = () => {\n if (randomLeft === 0) {\n randomLeft = randomFill(randomBuffer).byteLength;\n }\n return randomBuffer[--randomLeft];\n };\n FS.createDevice(\"/dev\", \"random\", randomByte);\n FS.createDevice(\"/dev\", \"urandom\", randomByte);\n FS.mkdir(\"/dev/shm\");\n FS.mkdir(\"/dev/shm/tmp\");\n }, createSpecialDirectories: () => {\n FS.mkdir(\"/proc\");\n var proc_self = FS.mkdir(\"/proc/self\");\n FS.mkdir(\"/proc/self/fd\");\n FS.mount({ mount: () => {\n var node = FS.createNode(proc_self, \"fd\", 16384 | 511, 73);\n node.node_ops = { lookup: (parent, name) => {\n var fd = +name;\n var stream = FS.getStreamChecked(fd);\n var ret = { parent: null, mount: { mountpoint: \"fake\" }, node_ops: { readlink: () => stream.path } };\n ret.parent = ret;\n return ret;\n } };\n return node;\n } }, {}, \"/proc/self/fd\");\n }, createStandardStreams: () => {\n if (Module[\"stdin\"]) {\n FS.createDevice(\"/dev\", \"stdin\", Module[\"stdin\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdin\");\n }\n if (Module[\"stdout\"]) {\n FS.createDevice(\"/dev\", \"stdout\", null, Module[\"stdout\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdout\");\n }\n if (Module[\"stderr\"]) {\n FS.createDevice(\"/dev\", \"stderr\", null, Module[\"stderr\"]);\n } else {\n FS.symlink(\"/dev/tty1\", \"/dev/stderr\");\n }\n var stdin = FS.open(\"/dev/stdin\", 0);\n var stdout = FS.open(\"/dev/stdout\", 1);\n var stderr = FS.open(\"/dev/stderr\", 1);\n }, ensureErrnoError: () => {\n if (FS.ErrnoError)\n return;\n FS.ErrnoError = function ErrnoError(errno, node) {\n this.name = \"ErrnoError\";\n this.node = node;\n this.setErrno = function(errno2) {\n this.errno = errno2;\n };\n this.setErrno(errno);\n this.message = \"FS error\";\n };\n FS.ErrnoError.prototype = new Error();\n FS.ErrnoError.prototype.constructor = FS.ErrnoError;\n [44].forEach((code) => {\n FS.genericErrors[code] = new FS.ErrnoError(code);\n FS.genericErrors[code].stack = \"\";\n });\n }, staticInit: () => {\n FS.ensureErrnoError();\n FS.nameTable = new Array(4096);\n FS.mount(MEMFS, {}, \"/\");\n FS.createDefaultDirectories();\n FS.createDefaultDevices();\n FS.createSpecialDirectories();\n FS.filesystems = { \"MEMFS\": MEMFS };\n }, init: (input, output, error) => {\n FS.init.initialized = true;\n FS.ensureErrnoError();\n Module[\"stdin\"] = input || Module[\"stdin\"];\n Module[\"stdout\"] = output || Module[\"stdout\"];\n Module[\"stderr\"] = error || Module[\"stderr\"];\n FS.createStandardStreams();\n }, quit: () => {\n FS.init.initialized = false;\n for (var i = 0; i < FS.streams.length; i++) {\n var stream = FS.streams[i];\n if (!stream) {\n continue;\n }\n FS.close(stream);\n }\n }, findObject: (path, dontResolveLastLink) => {\n var ret = FS.analyzePath(path, dontResolveLastLink);\n if (!ret.exists) {\n return null;\n }\n return ret.object;\n }, analyzePath: (path, dontResolveLastLink) => {\n try {\n var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n path = lookup.path;\n } catch (e) {\n }\n var ret = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null };\n try {\n var lookup = FS.lookupPath(path, { parent: true });\n ret.parentExists = true;\n ret.parentPath = lookup.path;\n ret.parentObject = lookup.node;\n ret.name = PATH.basename(path);\n lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n ret.exists = true;\n ret.path = lookup.path;\n ret.object = lookup.node;\n ret.name = lookup.node.name;\n ret.isRoot = lookup.path === \"/\";\n } catch (e) {\n ret.error = e.errno;\n }\n return ret;\n }, createPath: (parent, path, canRead, canWrite) => {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n var parts = path.split(\"/\").reverse();\n while (parts.length) {\n var part = parts.pop();\n if (!part)\n continue;\n var current = PATH.join2(parent, part);\n try {\n FS.mkdir(current);\n } catch (e) {\n }\n parent = current;\n }\n return current;\n }, createFile: (parent, name, properties, canRead, canWrite) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(canRead, canWrite);\n return FS.create(path, mode);\n }, createDataFile: (parent, name, data, canRead, canWrite, canOwn) => {\n var path = name;\n if (parent) {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n path = name ? PATH.join2(parent, name) : parent;\n }\n var mode = FS_getMode(canRead, canWrite);\n var node = FS.create(path, mode);\n if (data) {\n if (typeof data == \"string\") {\n var arr = new Array(data.length);\n for (var i = 0, len = data.length; i < len; ++i)\n arr[i] = data.charCodeAt(i);\n data = arr;\n }\n FS.chmod(node, mode | 146);\n var stream = FS.open(node, 577);\n FS.write(stream, data, 0, data.length, 0, canOwn);\n FS.close(stream);\n FS.chmod(node, mode);\n }\n return node;\n }, createDevice: (parent, name, input, output) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(!!input, !!output);\n if (!FS.createDevice.major)\n FS.createDevice.major = 64;\n var dev = FS.makedev(FS.createDevice.major++, 0);\n FS.registerDevice(dev, { open: (stream) => {\n stream.seekable = false;\n }, close: (stream) => {\n if (output && output.buffer && output.buffer.length) {\n output(10);\n }\n }, read: (stream, buffer, offset, length, pos) => {\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = input();\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: (stream, buffer, offset, length, pos) => {\n for (var i = 0; i < length; i++) {\n try {\n output(buffer[offset + i]);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } });\n return FS.mkdev(path, mode, dev);\n }, forceLoadFile: (obj) => {\n if (obj.isDevice || obj.isFolder || obj.link || obj.contents)\n return true;\n if (typeof XMLHttpRequest != \"undefined\") {\n throw new Error(\"Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.\");\n } else if (read_) {\n try {\n obj.contents = intArrayFromString(read_(obj.url), true);\n obj.usedBytes = obj.contents.length;\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n } else {\n throw new Error(\"Cannot load without read() or XMLHttpRequest.\");\n }\n }, createLazyFile: (parent, name, url, canRead, canWrite) => {\n function LazyUint8Array() {\n this.lengthKnown = false;\n this.chunks = [];\n }\n LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {\n if (idx > this.length - 1 || idx < 0) {\n return void 0;\n }\n var chunkOffset = idx % this.chunkSize;\n var chunkNum = idx / this.chunkSize | 0;\n return this.getter(chunkNum)[chunkOffset];\n };\n LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {\n this.getter = getter;\n };\n LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {\n var xhr = new XMLHttpRequest();\n xhr.open(\"HEAD\", url, false);\n xhr.send(null);\n if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr.status);\n var datalength = Number(xhr.getResponseHeader(\"Content-length\"));\n var header;\n var hasByteServing = (header = xhr.getResponseHeader(\"Accept-Ranges\")) && header === \"bytes\";\n var usesGzip = (header = xhr.getResponseHeader(\"Content-Encoding\")) && header === \"gzip\";\n var chunkSize = 1024 * 1024;\n if (!hasByteServing)\n chunkSize = datalength;\n var doXHR = (from, to) => {\n if (from > to)\n throw new Error(\"invalid range (\" + from + \", \" + to + \") or no bytes requested!\");\n if (to > datalength - 1)\n throw new Error(\"only \" + datalength + \" bytes available! programmer error!\");\n var xhr2 = new XMLHttpRequest();\n xhr2.open(\"GET\", url, false);\n if (datalength !== chunkSize)\n xhr2.setRequestHeader(\"Range\", \"bytes=\" + from + \"-\" + to);\n xhr2.responseType = \"arraybuffer\";\n if (xhr2.overrideMimeType) {\n xhr2.overrideMimeType(\"text/plain; charset=x-user-defined\");\n }\n xhr2.send(null);\n if (!(xhr2.status >= 200 && xhr2.status < 300 || xhr2.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr2.status);\n if (xhr2.response !== void 0) {\n return new Uint8Array(xhr2.response || []);\n }\n return intArrayFromString(xhr2.responseText || \"\", true);\n };\n var lazyArray2 = this;\n lazyArray2.setDataGetter((chunkNum) => {\n var start = chunkNum * chunkSize;\n var end = (chunkNum + 1) * chunkSize - 1;\n end = Math.min(end, datalength - 1);\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\") {\n lazyArray2.chunks[chunkNum] = doXHR(start, end);\n }\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\")\n throw new Error(\"doXHR failed!\");\n return lazyArray2.chunks[chunkNum];\n });\n if (usesGzip || !datalength) {\n chunkSize = datalength = 1;\n datalength = this.getter(0).length;\n chunkSize = datalength;\n out(\"LazyFiles on gzip forces download of the whole file when length is accessed\");\n }\n this._length = datalength;\n this._chunkSize = chunkSize;\n this.lengthKnown = true;\n };\n if (typeof XMLHttpRequest != \"undefined\") {\n if (!ENVIRONMENT_IS_WORKER)\n throw \"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";\n var lazyArray = new LazyUint8Array();\n Object.defineProperties(lazyArray, { length: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._length;\n } }, chunkSize: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._chunkSize;\n } } });\n var properties = { isDevice: false, contents: lazyArray };\n } else {\n var properties = { isDevice: false, url };\n }\n var node = FS.createFile(parent, name, properties, canRead, canWrite);\n if (properties.contents) {\n node.contents = properties.contents;\n } else if (properties.url) {\n node.contents = null;\n node.url = properties.url;\n }\n Object.defineProperties(node, { usedBytes: { get: function() {\n return this.contents.length;\n } } });\n var stream_ops = {};\n var keys = Object.keys(node.stream_ops);\n keys.forEach((key) => {\n var fn = node.stream_ops[key];\n stream_ops[key] = function forceLoadLazyFile() {\n FS.forceLoadFile(node);\n return fn.apply(null, arguments);\n };\n });\n function writeChunks(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= contents.length)\n return 0;\n var size = Math.min(contents.length - position, length);\n if (contents.slice) {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents[position + i];\n }\n } else {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents.get(position + i);\n }\n }\n return size;\n }\n stream_ops.read = (stream, buffer, offset, length, position) => {\n FS.forceLoadFile(node);\n return writeChunks(stream, buffer, offset, length, position);\n };\n stream_ops.mmap = (stream, length, position, prot, flags) => {\n FS.forceLoadFile(node);\n var ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n writeChunks(stream, GROWABLE_HEAP_I8(), ptr, length, position);\n return { ptr, allocated: true };\n };\n node.stream_ops = stream_ops;\n return node;\n } };\n var UTF8ToString = (ptr, maxBytesToRead) => {\n ptr >>>= 0;\n return ptr ? UTF8ArrayToString(GROWABLE_HEAP_U8(), ptr, maxBytesToRead) : \"\";\n };\n var SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt: function(dirfd, path, allowEmpty) {\n if (PATH.isAbs(path)) {\n return path;\n }\n var dir;\n if (dirfd === -100) {\n dir = FS.cwd();\n } else {\n var dirstream = SYSCALLS.getStreamFromFD(dirfd);\n dir = dirstream.path;\n }\n if (path.length == 0) {\n if (!allowEmpty) {\n throw new FS.ErrnoError(44);\n }\n return dir;\n }\n return PATH.join2(dir, path);\n }, doStat: function(func, path, buf) {\n try {\n var stat = func(path);\n } catch (e) {\n if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {\n return -54;\n }\n throw e;\n }\n GROWABLE_HEAP_I32()[buf >>> 2] = stat.dev;\n GROWABLE_HEAP_I32()[buf + 4 >>> 2] = stat.mode;\n GROWABLE_HEAP_U32()[buf + 8 >>> 2] = stat.nlink;\n GROWABLE_HEAP_I32()[buf + 12 >>> 2] = stat.uid;\n GROWABLE_HEAP_I32()[buf + 16 >>> 2] = stat.gid;\n GROWABLE_HEAP_I32()[buf + 20 >>> 2] = stat.rdev;\n tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 24 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 28 >>> 2] = tempI64[1];\n GROWABLE_HEAP_I32()[buf + 32 >>> 2] = 4096;\n GROWABLE_HEAP_I32()[buf + 36 >>> 2] = stat.blocks;\n var atime = stat.atime.getTime();\n var mtime = stat.mtime.getTime();\n var ctime = stat.ctime.getTime();\n tempI64 = [Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 40 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 44 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 48 >>> 2] = atime % 1e3 * 1e3;\n tempI64 = [Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 56 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 60 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 64 >>> 2] = mtime % 1e3 * 1e3;\n tempI64 = [Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 72 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 76 >>> 2] = tempI64[1];\n GROWABLE_HEAP_U32()[buf + 80 >>> 2] = ctime % 1e3 * 1e3;\n tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[buf + 88 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[buf + 92 >>> 2] = tempI64[1];\n return 0;\n }, doMsync: function(addr, stream, len, flags, offset) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (flags & 2) {\n return 0;\n }\n var buffer = GROWABLE_HEAP_U8().slice(addr, addr + len);\n FS.msync(stream, buffer, offset, len, flags);\n }, varargs: void 0, get() {\n SYSCALLS.varargs += 4;\n var ret = GROWABLE_HEAP_I32()[SYSCALLS.varargs - 4 >>> 2];\n return ret;\n }, getStr(ptr) {\n var ret = UTF8ToString(ptr);\n return ret;\n }, getStreamFromFD: function(fd) {\n var stream = FS.getStreamChecked(fd);\n return stream;\n } };\n function _proc_exit(code) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(1, 1, code);\n EXITSTATUS = code;\n if (!keepRuntimeAlive()) {\n PThread.terminateAllThreads();\n if (Module[\"onExit\"])\n Module[\"onExit\"](code);\n ABORT = true;\n }\n quit_(code, new ExitStatus(code));\n }\n var exitJS = (status, implicit) => {\n EXITSTATUS = status;\n if (ENVIRONMENT_IS_PTHREAD) {\n exitOnMainThread(status);\n throw \"unwind\";\n }\n _proc_exit(status);\n };\n var _exit = exitJS;\n var handleException = (e) => {\n if (e instanceof ExitStatus || e == \"unwind\") {\n return EXITSTATUS;\n }\n quit_(1, e);\n };\n var PThread = { unusedWorkers: [], runningWorkers: [], tlsInitFunctions: [], pthreads: {}, init: function() {\n if (ENVIRONMENT_IS_PTHREAD) {\n PThread.initWorker();\n } else {\n PThread.initMainThread();\n }\n }, initMainThread: function() {\n var pthreadPoolSize = navigator.hardwareConcurrency;\n while (pthreadPoolSize--) {\n PThread.allocateUnusedWorker();\n }\n addOnPreRun(() => {\n addRunDependency(\"loading-workers\");\n PThread.loadWasmModuleToAllWorkers(() => removeRunDependency(\"loading-workers\"));\n });\n }, initWorker: function() {\n noExitRuntime = false;\n }, setExitStatus: function(status) {\n EXITSTATUS = status;\n }, terminateAllThreads__deps: [\"$terminateWorker\"], terminateAllThreads: function() {\n for (var worker of PThread.runningWorkers) {\n terminateWorker(worker);\n }\n for (var worker of PThread.unusedWorkers) {\n terminateWorker(worker);\n }\n PThread.unusedWorkers = [];\n PThread.runningWorkers = [];\n PThread.pthreads = [];\n }, returnWorkerToPool: function(worker) {\n var pthread_ptr = worker.pthread_ptr;\n delete PThread.pthreads[pthread_ptr];\n PThread.unusedWorkers.push(worker);\n PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1);\n worker.pthread_ptr = 0;\n __emscripten_thread_free_data(pthread_ptr);\n }, receiveObjectTransfer: function(data) {\n }, threadInitTLS: function() {\n PThread.tlsInitFunctions.forEach((f) => f());\n }, loadWasmModuleToWorker: (worker) => new Promise((onFinishedLoading) => {\n worker.onmessage = (e) => {\n var d = e[\"data\"];\n var cmd = d[\"cmd\"];\n if (d[\"targetThread\"] && d[\"targetThread\"] != _pthread_self()) {\n var targetWorker = PThread.pthreads[d.targetThread];\n if (targetWorker) {\n targetWorker.postMessage(d, d[\"transferList\"]);\n } else {\n err('Internal error! Worker sent a message \"' + cmd + '\" to target pthread ' + d[\"targetThread\"] + \", but that thread no longer exists!\");\n }\n return;\n }\n if (cmd === \"checkMailbox\") {\n checkMailbox();\n } else if (cmd === \"spawnThread\") {\n spawnThread(d);\n } else if (cmd === \"cleanupThread\") {\n cleanupThread(d[\"thread\"]);\n } else if (cmd === \"killThread\") {\n killThread(d[\"thread\"]);\n } else if (cmd === \"cancelThread\") {\n cancelThread(d[\"thread\"]);\n } else if (cmd === \"loaded\") {\n worker.loaded = true;\n onFinishedLoading(worker);\n } else if (cmd === \"alert\") {\n alert(\"Thread \" + d[\"threadId\"] + \": \" + d[\"text\"]);\n } else if (d.target === \"setimmediate\") {\n worker.postMessage(d);\n } else if (cmd === \"callHandler\") {\n Module[d[\"handler\"]](...d[\"args\"]);\n } else if (cmd) {\n err(\"worker sent an unknown command \" + cmd);\n }\n };\n worker.onerror = (e) => {\n var message = \"worker sent an error!\";\n err(message + \" \" + e.filename + \":\" + e.lineno + \": \" + e.message);\n throw e;\n };\n var handlers = [];\n var knownHandlers = [\"onExit\", \"onAbort\", \"print\", \"printErr\"];\n for (var handler of knownHandlers) {\n if (Module.hasOwnProperty(handler)) {\n handlers.push(handler);\n }\n }\n worker.postMessage({ \"cmd\": \"load\", \"handlers\": handlers, \"urlOrBlob\": Module[\"mainScriptUrlOrBlob\"] || _scriptDir, \"wasmMemory\": wasmMemory, \"wasmModule\": wasmModule });\n }), loadWasmModuleToAllWorkers: function(onMaybeReady) {\n if (ENVIRONMENT_IS_PTHREAD) {\n return onMaybeReady();\n }\n let pthreadPoolReady = Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));\n pthreadPoolReady.then(onMaybeReady);\n }, allocateUnusedWorker: function() {\n var worker;\n var pthreadMainJs = locateFile(\"web-ifc-mt.worker.js\");\n worker = new Worker(pthreadMainJs);\n PThread.unusedWorkers.push(worker);\n }, getNewWorker: function() {\n if (PThread.unusedWorkers.length == 0) {\n PThread.allocateUnusedWorker();\n PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0]);\n }\n return PThread.unusedWorkers.pop();\n } };\n Module[\"PThread\"] = PThread;\n var callRuntimeCallbacks = (callbacks) => {\n while (callbacks.length > 0) {\n callbacks.shift()(Module);\n }\n };\n function establishStackSpace() {\n var pthread_ptr = _pthread_self();\n var stackHigh = GROWABLE_HEAP_I32()[pthread_ptr + 52 >>> 2];\n var stackSize = GROWABLE_HEAP_I32()[pthread_ptr + 56 >>> 2];\n var stackLow = stackHigh - stackSize;\n _emscripten_stack_set_limits(stackHigh, stackLow);\n stackRestore(stackHigh);\n }\n Module[\"establishStackSpace\"] = establishStackSpace;\n function exitOnMainThread(returnCode) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(2, 0, returnCode);\n _exit(returnCode);\n }\n var wasmTableMirror = [];\n var getWasmTableEntry = (funcPtr) => {\n var func = wasmTableMirror[funcPtr];\n if (!func) {\n if (funcPtr >= wasmTableMirror.length)\n wasmTableMirror.length = funcPtr + 1;\n wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);\n }\n return func;\n };\n function invokeEntryPoint(ptr, arg) {\n var result = getWasmTableEntry(ptr)(arg);\n function finish(result2) {\n if (keepRuntimeAlive()) {\n PThread.setExitStatus(result2);\n } else {\n __emscripten_thread_exit(result2);\n }\n }\n finish(result);\n }\n Module[\"invokeEntryPoint\"] = invokeEntryPoint;\n function registerTLSInit(tlsInitFunc) {\n PThread.tlsInitFunctions.push(tlsInitFunc);\n }\n function ExceptionInfo(excPtr) {\n this.excPtr = excPtr;\n this.ptr = excPtr - 24;\n this.set_type = function(type) {\n GROWABLE_HEAP_U32()[this.ptr + 4 >>> 2] = type;\n };\n this.get_type = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 4 >>> 2];\n };\n this.set_destructor = function(destructor) {\n GROWABLE_HEAP_U32()[this.ptr + 8 >>> 2] = destructor;\n };\n this.get_destructor = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 8 >>> 2];\n };\n this.set_caught = function(caught) {\n caught = caught ? 1 : 0;\n GROWABLE_HEAP_I8()[this.ptr + 12 >>> 0] = caught;\n };\n this.get_caught = function() {\n return GROWABLE_HEAP_I8()[this.ptr + 12 >>> 0] != 0;\n };\n this.set_rethrown = function(rethrown) {\n rethrown = rethrown ? 1 : 0;\n GROWABLE_HEAP_I8()[this.ptr + 13 >>> 0] = rethrown;\n };\n this.get_rethrown = function() {\n return GROWABLE_HEAP_I8()[this.ptr + 13 >>> 0] != 0;\n };\n this.init = function(type, destructor) {\n this.set_adjusted_ptr(0);\n this.set_type(type);\n this.set_destructor(destructor);\n };\n this.set_adjusted_ptr = function(adjustedPtr) {\n GROWABLE_HEAP_U32()[this.ptr + 16 >>> 2] = adjustedPtr;\n };\n this.get_adjusted_ptr = function() {\n return GROWABLE_HEAP_U32()[this.ptr + 16 >>> 2];\n };\n this.get_exception_ptr = function() {\n var isPointer = ___cxa_is_pointer_type(this.get_type());\n if (isPointer) {\n return GROWABLE_HEAP_U32()[this.excPtr >>> 2];\n }\n var adjusted = this.get_adjusted_ptr();\n if (adjusted !== 0)\n return adjusted;\n return this.excPtr;\n };\n }\n var exceptionLast = 0;\n var uncaughtExceptionCount = 0;\n function convertI32PairToI53Checked(lo, hi) {\n return hi + 2097152 >>> 0 < 4194305 - !!lo ? (lo >>> 0) + hi * 4294967296 : NaN;\n }\n function ___cxa_throw(ptr, type, destructor) {\n ptr >>>= 0;\n type >>>= 0;\n destructor >>>= 0;\n var info = new ExceptionInfo(ptr);\n info.init(type, destructor);\n exceptionLast = ptr;\n uncaughtExceptionCount++;\n throw exceptionLast;\n }\n function ___emscripten_init_main_thread_js(tb) {\n tb >>>= 0;\n __emscripten_thread_init(tb, !ENVIRONMENT_IS_WORKER, 1, !ENVIRONMENT_IS_WEB, 5242880, false);\n PThread.threadInitTLS();\n }\n function ___emscripten_thread_cleanup(thread) {\n thread >>>= 0;\n if (!ENVIRONMENT_IS_PTHREAD)\n cleanupThread(thread);\n else\n postMessage({ \"cmd\": \"cleanupThread\", \"thread\": thread });\n }\n var tupleRegistrations = {};\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function simpleReadValueFromPointer(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_I32()[pointer >>> 2]);\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var InternalError = void 0;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function(type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters2) {\n var myTypeConverters = getTypeConverters(typeConverters2);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError(\"Mismatched type converter count\");\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach((dt, i) => {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n } else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(() => {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (unregisteredTypes.length === 0) {\n onComplete(typeConverters);\n }\n }\n function __embind_finalize_value_array(rawTupleType) {\n rawTupleType >>>= 0;\n var reg = tupleRegistrations[rawTupleType];\n delete tupleRegistrations[rawTupleType];\n var elements = reg.elements;\n var elementsLength = elements.length;\n var elementTypes = elements.map(function(elt) {\n return elt.getterReturnType;\n }).concat(elements.map(function(elt) {\n return elt.setterArgumentType;\n }));\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n whenDependentTypesAreResolved([rawTupleType], elementTypes, function(elementTypes2) {\n elements.forEach((elt, i) => {\n var getterReturnType = elementTypes2[i];\n var getter = elt.getter;\n var getterContext = elt.getterContext;\n var setterArgumentType = elementTypes2[i + elementsLength];\n var setter = elt.setter;\n var setterContext = elt.setterContext;\n elt.read = (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr));\n elt.write = (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = new Array(elementsLength);\n for (var i = 0; i < elementsLength; ++i) {\n rv[i] = elements[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n if (elementsLength !== o.length) {\n throw new TypeError(`Incorrect number of tuple elements for ${reg.name}: expected=${elementsLength}, actual=${o.length}`);\n }\n var ptr = rawConstructor();\n for (var i = 0; i < elementsLength; ++i) {\n elements[i].write(ptr, o[i]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n }\n var structRegistrations = {};\n var __embind_finalize_value_object = function(structType) {\n structType >>>= 0;\n var reg = structRegistrations[structType];\n delete structRegistrations[structType];\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n var fieldRecords = reg.fields;\n var fieldTypes = fieldRecords.map((field) => field.getterReturnType).concat(fieldRecords.map((field) => field.setterArgumentType));\n whenDependentTypesAreResolved([structType], fieldTypes, (fieldTypes2) => {\n var fields = {};\n fieldRecords.forEach((field, i) => {\n var fieldName = field.fieldName;\n var getterReturnType = fieldTypes2[i];\n var getter = field.getter;\n var getterContext = field.getterContext;\n var setterArgumentType = fieldTypes2[i + fieldRecords.length];\n var setter = field.setter;\n var setterContext = field.setterContext;\n fields[fieldName] = { read: (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr)), write: (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n } };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = {};\n for (var i in fields) {\n rv[i] = fields[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n for (var fieldName in fields) {\n if (!(fieldName in o)) {\n throw new TypeError(`Missing field: \"${fieldName}\"`);\n }\n }\n var ptr = rawConstructor();\n for (fieldName in fields) {\n fields[fieldName].write(ptr, o[fieldName]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n };\n function __embind_register_bigint(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError(`Unknown type size: ${size}`);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = void 0;\n function readLatin1String(ptr) {\n var ret = \"\";\n var c = ptr;\n while (GROWABLE_HEAP_U8()[c >>> 0]) {\n ret += embind_charCodes[GROWABLE_HEAP_U8()[c++ >>> 0]];\n }\n return ret;\n }\n var BindingError = void 0;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n function sharedRegisterType(rawType, registeredInstance, options = {}) {\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError(`type \"${name}\" must have a positive integer typeid pointer`);\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n } else {\n throwBindingError(`Cannot register type '${name}' twice`);\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach((cb) => cb());\n }\n }\n function registerType(rawType, registeredInstance, options = {}) {\n if (!(\"argPackAdvance\" in registeredInstance)) {\n throw new TypeError(\"registerType registeredInstance requires argPackAdvance\");\n }\n return sharedRegisterType(rawType, registeredInstance, options);\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(wt) {\n return !!wt;\n }, \"toWireType\": function(destructors, o) {\n return o ? trueValue : falseValue;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": function(pointer) {\n var heap;\n if (size === 1) {\n heap = GROWABLE_HEAP_I8();\n } else if (size === 2) {\n heap = GROWABLE_HEAP_I16();\n } else if (size === 4) {\n heap = GROWABLE_HEAP_I32();\n } else {\n throw new TypeError(\"Unknown boolean type size: \" + name);\n }\n return this[\"fromWireType\"](heap[pointer >>> shift]);\n }, destructorFunction: null });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return { count: o.count, deleteScheduled: o.deleteScheduled, preservePointerOnDelete: o.preservePointerOnDelete, ptr: o.ptr, ptrType: o.ptrType, smartPtr: o.smartPtr, smartPtrType: o.smartPtrType };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + \" instance already deleted\");\n }\n var finalizationRegistry = false;\n function detachFinalizer(handle) {\n }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n } else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = $$.count.value === 0;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (desiredClass.baseClass === void 0) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n var registeredPointers = {};\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj[\"delete\"]();\n }\n }\n var delayFunction = void 0;\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module[\"getInheritedInstanceCount\"] = getInheritedInstanceCount;\n Module[\"getLiveInheritedInstances\"] = getLiveInheritedInstances;\n Module[\"flushPendingDeletes\"] = flushPendingDeletes;\n Module[\"setDelayFunction\"] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === void 0) {\n throwBindingError(\"ptr should not be undefined\");\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError(\"makeClassHandle requires ptr and ptrType\");\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError(\"Both smartPtrType and smartPtr must be specified\");\n }\n record.count = { value: 1 };\n return attachFinalizer(Object.create(prototype, { $$: { value: record } }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (registeredInstance !== void 0) {\n if (registeredInstance.$$.count.value === 0) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance[\"clone\"]();\n } else {\n var rv = registeredInstance[\"clone\"]();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: rawPointer, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this, ptr });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n } else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp });\n }\n }\n var attachFinalizer = function(handle) {\n if (typeof FinalizationRegistry === \"undefined\") {\n attachFinalizer = (handle2) => handle2;\n return handle;\n }\n finalizationRegistry = new FinalizationRegistry((info) => {\n releaseClassHandle(info.$$);\n });\n attachFinalizer = (handle2) => {\n var $$ = handle2.$$;\n var hasSmartPtr = !!$$.smartPtr;\n if (hasSmartPtr) {\n var info = { $$ };\n finalizationRegistry.register(handle2, info, handle2);\n }\n return handle2;\n };\n detachFinalizer = (handle2) => finalizationRegistry.unregister(handle2);\n return attachFinalizer(handle);\n };\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n } else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), { $$: { value: shallowCopyInternalPointer(this.$$) } }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = void 0;\n this.$$.ptr = void 0;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype[\"isAliasOf\"] = ClassHandle_isAliasOf;\n ClassHandle.prototype[\"clone\"] = ClassHandle_clone;\n ClassHandle.prototype[\"delete\"] = ClassHandle_delete;\n ClassHandle.prototype[\"isDeleted\"] = ClassHandle_isDeleted;\n ClassHandle.prototype[\"deleteLater\"] = ClassHandle_deleteLater;\n }\n function ClassHandle() {\n }\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (name === void 0) {\n return \"_unknown\";\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, \"$\");\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return `_${name}`;\n }\n return name;\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return { [name]: function() {\n return body.apply(this, arguments);\n } }[name];\n }\n function ensureOverloadTable(proto, methodName, humanName) {\n if (proto[methodName].overloadTable === void 0) {\n var prevFunc = proto[methodName];\n proto[methodName] = function() {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (numArguments === void 0 || Module[name].overloadTable !== void 0 && Module[name].overloadTable[numArguments] !== void 0) {\n throwBindingError(`Cannot register public name '${name}' twice`);\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);\n }\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n if (numArguments !== void 0) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n } else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (handle.$$.smartPtr === void 0) {\n throwBindingError(\"Passing raw pointer to smart pointer is illegal\");\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n var clonedHandle = handle[\"clone\"]();\n ptr = this.rawShare(ptr, Emval.toHandle(function() {\n clonedHandle[\"delete\"]();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError(\"Unsupporting sharing policy\");\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle[\"delete\"]();\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype[\"argPackAdvance\"] = 8;\n RegisteredPointer.prototype[\"readValueFromPointer\"] = simpleReadValueFromPointer;\n RegisteredPointer.prototype[\"deleteObject\"] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype[\"fromWireType\"] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === void 0) {\n if (isConst) {\n this[\"toWireType\"] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n } else {\n this[\"toWireType\"] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n } else {\n this[\"toWireType\"] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError(\"Replacing nonexistant public symbol\");\n }\n if (Module[name].overloadTable !== void 0 && numArguments !== void 0) {\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n var dynCallLegacy = (sig, ptr, args) => {\n var f = Module[\"dynCall_\" + sig];\n return args && args.length ? f.apply(null, [ptr].concat(args)) : f.call(null, ptr);\n };\n var dynCall = (sig, ptr, args) => {\n if (sig.includes(\"j\")) {\n return dynCallLegacy(sig, ptr, args);\n }\n var rtn = getWasmTableEntry(ptr).apply(null, args);\n return rtn;\n };\n var getDynCaller = (sig, ptr) => {\n var argCache = [];\n return function() {\n argCache.length = 0;\n Object.assign(argCache, arguments);\n return dynCall(sig, ptr, argCache);\n };\n };\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller() {\n if (signature.includes(\"j\")) {\n return getDynCaller(signature, rawFunction);\n }\n return getWasmTableEntry(rawFunction);\n }\n var fp = makeDynCaller();\n if (typeof fp != \"function\") {\n throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);\n }\n return fp;\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function(message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== void 0) {\n this.stack = this.toString() + \"\\n\" + stack.replace(/^Error(:[^\\n]*)?\\n/, \"\");\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function() {\n if (this.message === void 0) {\n return this.name;\n } else {\n return `${this.name}: ${this.message}`;\n }\n };\n return errorClass;\n }\n var UnboundTypeError = void 0;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([\", \"]));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n rawPointerType >>>= 0;\n rawConstPointerType >>>= 0;\n baseClassRawType >>>= 0;\n getActualTypeSignature >>>= 0;\n getActualType >>>= 0;\n upcastSignature >>>= 0;\n upcast >>>= 0;\n downcastSignature >>>= 0;\n downcast >>>= 0;\n name >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function() {\n throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function(base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n } else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function() {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (registeredClass.constructor_body === void 0) {\n throw new BindingError(name + \" has no accessible constructor\");\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (body === void 0) {\n throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, { constructor: { value: constructor } });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n if (registeredClass.baseClass) {\n if (registeredClass.baseClass.__derivedClasses === void 0) {\n registeredClass.baseClass.__derivedClasses = [];\n }\n registeredClass.baseClass.__derivedClasses.push(registeredClass);\n }\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + \"*\", registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + \" const*\", registeredClass, false, true, false);\n registeredPointers[rawType] = { pointerType: pointerConverter, constPointerType: constPointerConverter };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(GROWABLE_HEAP_U32()[firstElement + i * 4 >>> 2]);\n }\n return array;\n }\n function newFunc(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`);\n }\n var dummy = createNamedFunction(constructor.name || \"unknownFunctionName\", function() {\n });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === void 0) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== \"void\";\n var argsList = \"\";\n var argsListWired = \"\";\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? \", \" : \"\") + \"arg\" + i;\n argsListWired += (i !== 0 ? \", \" : \"\") + \"arg\" + i + \"Wired\";\n }\n var invokerFnBody = `\n return function ${makeLegalFunctionName(humanName)}(${argsList}) {\n if (arguments.length !== ${argCount - 2}) {\n throwBindingError('function ${humanName} called with ${arguments.length} arguments, expected ${argCount - 2} args!');\n }`;\n if (needsDestructorStack) {\n invokerFnBody += \"var destructors = [];\\n\";\n }\n var dtorStack = needsDestructorStack ? \"destructors\" : \"null\";\n var args1 = [\"throwBindingError\", \"invoker\", \"fn\", \"runDestructors\", \"retType\", \"classParam\"];\n var args2 = [throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, argTypes[0], argTypes[1]];\n if (isClassMethodFunc) {\n invokerFnBody += \"var thisWired = classParam.toWireType(\" + dtorStack + \", this);\\n\";\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody += \"var arg\" + i + \"Wired = argType\" + i + \".toWireType(\" + dtorStack + \", arg\" + i + \"); // \" + argTypes[i + 2].name + \"\\n\";\n args1.push(\"argType\" + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = \"thisWired\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired;\n }\n invokerFnBody += (returns || isAsync ? \"var rv = \" : \"\") + \"invoker(fn\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired + \");\\n\";\n if (needsDestructorStack) {\n invokerFnBody += \"runDestructors(destructors);\\n\";\n } else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? \"thisWired\" : \"arg\" + (i - 2) + \"Wired\";\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + \"_dtor(\" + paramName + \"); // \" + argTypes[i].name + \"\\n\";\n args1.push(paramName + \"_dtor\");\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += \"var ret = retType.fromWireType(rv);\\nreturn ret;\\n\";\n } else {\n }\n invokerFnBody += \"}\\n\";\n args1.push(invokerFnBody);\n return newFunc(Function, args1).apply(null, args2);\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n rawClassType >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n invoker >>>= 0;\n rawConstructor >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `constructor ${classType.name}`;\n if (classType.registeredClass.constructor_body === void 0) {\n classType.registeredClass.constructor_body = [];\n }\n if (classType.registeredClass.constructor_body[argCount - 1] !== void 0) {\n throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount - 1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);\n }\n classType.registeredClass.constructor_body[argCount - 1] = () => {\n throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`, rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n argTypes.splice(1, 0, null);\n classType.registeredClass.constructor_body[argCount - 1] = craftInvokerFunction(humanName, argTypes, null, invoker, rawConstructor);\n return [];\n });\n return [];\n });\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual, isAsync) {\n rawClassType >>>= 0;\n methodName >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n rawInvoker >>>= 0;\n context >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `${classType.name}.${methodName}`;\n if (methodName.startsWith(\"@@\")) {\n methodName = Symbol[methodName.substring(2)];\n }\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (method === void 0 || method.overloadTable === void 0 && method.className !== classType.name && method.argCount === argCount - 2) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n } else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync);\n if (proto[methodName].overloadTable === void 0) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n } else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n function handleAllocatorInit() {\n Object.assign(HandleAllocator.prototype, { get(id) {\n return this.allocated[id];\n }, has(id) {\n return this.allocated[id] !== void 0;\n }, allocate(handle) {\n var id = this.freelist.pop() || this.allocated.length;\n this.allocated[id] = handle;\n return id;\n }, free(id) {\n this.allocated[id] = void 0;\n this.freelist.push(id);\n } });\n }\n function HandleAllocator() {\n this.allocated = [void 0];\n this.freelist = [];\n }\n var emval_handles = new HandleAllocator();\n function __emval_decref(handle) {\n handle >>>= 0;\n if (handle >= emval_handles.reserved && --emval_handles.get(handle).refcount === 0) {\n emval_handles.free(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {\n if (emval_handles.allocated[i] !== void 0) {\n ++count;\n }\n }\n return count;\n }\n function init_emval() {\n emval_handles.allocated.push({ value: void 0 }, { value: null }, { value: true }, { value: false });\n emval_handles.reserved = emval_handles.allocated.length;\n Module[\"count_emval_handles\"] = count_emval_handles;\n }\n var Emval = { toValue: (handle) => {\n if (!handle) {\n throwBindingError(\"Cannot use deleted val. handle = \" + handle);\n }\n return emval_handles.get(handle).value;\n }, toHandle: (value) => {\n switch (value) {\n case void 0:\n return 1;\n case null:\n return 2;\n case true:\n return 3;\n case false:\n return 4;\n default: {\n return emval_handles.allocate({ refcount: 1, value });\n }\n }\n } };\n function __embind_register_emval(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(handle) {\n var rv = Emval.toValue(handle);\n __emval_decref(handle);\n return rv;\n }, \"toWireType\": function(destructors, value) {\n return Emval.toHandle(value);\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: null });\n }\n function embindRepr(v) {\n if (v === null) {\n return \"null\";\n }\n var t = typeof v;\n if (t === \"object\" || t === \"array\" || t === \"function\") {\n return v.toString();\n } else {\n return \"\" + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_F32()[pointer >>> 2]);\n };\n case 3:\n return function(pointer) {\n return this[\"fromWireType\"](GROWABLE_HEAP_F64()[pointer >>> 3]);\n };\n default:\n throw new TypeError(\"Unknown float type: \" + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(value) {\n return value;\n }, \"toWireType\": function(destructors, value) {\n return value;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": floatReadValueFromPointer(name, shift), destructorFunction: null });\n }\n function __embind_register_function(name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) {\n name >>>= 0;\n rawArgTypesAddr >>>= 0;\n signature >>>= 0;\n rawInvoker >>>= 0;\n fn >>>= 0;\n var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n name = readLatin1String(name);\n rawInvoker = embind__requireFunction(signature, rawInvoker);\n exposePublicSymbol(name, function() {\n throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes);\n }, argCount - 1);\n whenDependentTypesAreResolved([], argTypes, function(argTypes2) {\n var invokerArgsArray = [argTypes2[0], null].concat(argTypes2.slice(1));\n replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null, rawInvoker, fn, isAsync), argCount - 1);\n return [];\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed ? function readS8FromPointer(pointer) {\n return GROWABLE_HEAP_I8()[pointer >>> 0];\n } : function readU8FromPointer(pointer) {\n return GROWABLE_HEAP_U8()[pointer >>> 0];\n };\n case 1:\n return signed ? function readS16FromPointer(pointer) {\n return GROWABLE_HEAP_I16()[pointer >>> 1];\n } : function readU16FromPointer(pointer) {\n return GROWABLE_HEAP_U16()[pointer >>> 1];\n };\n case 2:\n return signed ? function readS32FromPointer(pointer) {\n return GROWABLE_HEAP_I32()[pointer >>> 2];\n } : function readU32FromPointer(pointer) {\n return GROWABLE_HEAP_U32()[pointer >>> 2];\n };\n default:\n throw new TypeError(\"Unknown integer type: \" + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = (value) => value;\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = (value) => value << bitshift >>> bitshift;\n }\n var isUnsignedType = name.includes(\"unsigned\");\n var checkAssertions = (value, toTypeName) => {\n };\n var toWireType;\n if (isUnsignedType) {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value >>> 0;\n };\n } else {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value;\n };\n }\n registerType(primitiveType, { name, \"fromWireType\": fromWireType, \"toWireType\": toWireType, \"argPackAdvance\": 8, \"readValueFromPointer\": integerReadValueFromPointer(name, shift, minRange !== 0), destructorFunction: null });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n rawType >>>= 0;\n name >>>= 0;\n var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = GROWABLE_HEAP_U32();\n var size = heap[handle >>> 0];\n var data = heap[handle + 1 >>> 0];\n return new TA(heap.buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": decodeMemoryView, \"argPackAdvance\": 8, \"readValueFromPointer\": decodeMemoryView }, { ignoreDuplicateRegistrations: true });\n }\n var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, GROWABLE_HEAP_U8(), outPtr, maxBytesToWrite);\n function __embind_register_std_string(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === \"std::string\";\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = GROWABLE_HEAP_U32()[value >>> 2];\n var payload = value + 4;\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = payload;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = payload + i;\n if (i == length || GROWABLE_HEAP_U8()[currentBytePtr >>> 0] == 0) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n } else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(GROWABLE_HEAP_U8()[payload + i >>> 0]);\n }\n str = a.join(\"\");\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var length;\n var valueIsOfTypeString = typeof value == \"string\";\n if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {\n throwBindingError(\"Cannot pass non-string to std::string\");\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n length = lengthBytesUTF8(value);\n } else {\n length = value.length;\n }\n var base = _malloc(4 + length + 1);\n var ptr = base + 4;\n GROWABLE_HEAP_U32()[base >>> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr, length + 1);\n } else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError(\"String has UTF-16 code units that do not fit in 8 bits\");\n }\n GROWABLE_HEAP_U8()[ptr + i >>> 0] = charCode;\n }\n } else {\n for (var i = 0; i < length; ++i) {\n GROWABLE_HEAP_U8()[ptr + i >>> 0] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, base);\n }\n return base;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n }\n var UTF16Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf-16le\") : void 0;\n var UTF16ToString = (ptr, maxBytesToRead) => {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && GROWABLE_HEAP_U16()[idx >>> 0])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder)\n return UTF16Decoder.decode(GROWABLE_HEAP_U8().slice(ptr, endPtr));\n var str = \"\";\n for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {\n var codeUnit = GROWABLE_HEAP_I16()[ptr + i * 2 >>> 1];\n if (codeUnit == 0)\n break;\n str += String.fromCharCode(codeUnit);\n }\n return str;\n };\n var stringToUTF16 = (str, outPtr, maxBytesToWrite) => {\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n GROWABLE_HEAP_I16()[outPtr >>> 1] = codeUnit;\n outPtr += 2;\n }\n GROWABLE_HEAP_I16()[outPtr >>> 1] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF16 = (str) => str.length * 2;\n var UTF32ToString = (ptr, maxBytesToRead) => {\n var i = 0;\n var str = \"\";\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = GROWABLE_HEAP_I32()[ptr + i * 4 >>> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n } else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n };\n var stringToUTF32 = (str, outPtr, maxBytesToWrite) => {\n outPtr >>>= 0;\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023;\n }\n GROWABLE_HEAP_I32()[outPtr >>> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n GROWABLE_HEAP_I32()[outPtr >>> 2] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF32 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n };\n var __embind_register_std_wstring = function(rawType, charSize, name) {\n rawType >>>= 0;\n charSize >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = () => GROWABLE_HEAP_U16();\n shift = 1;\n } else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = () => GROWABLE_HEAP_U32();\n shift = 2;\n }\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = GROWABLE_HEAP_U32()[value >>> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (i == length || HEAP[currentBytePtr >>> shift] == 0) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (!(typeof value == \"string\")) {\n throwBindingError(`Cannot pass non-string to C++ string type ${name}`);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n GROWABLE_HEAP_U32()[ptr >>> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n };\n function __embind_register_value_array(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n tupleRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), elements: [] };\n }\n function __embind_register_value_array_element(rawTupleType, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n rawTupleType >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n tupleRegistrations[rawTupleType].elements.push({ getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_value_object(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n structRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), fields: [] };\n }\n function __embind_register_value_object_field(structType, fieldName, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n structType >>>= 0;\n fieldName >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n structRegistrations[structType].fields.push({ fieldName: readLatin1String(fieldName), getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_void(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { isVoid: true, name, \"argPackAdvance\": 0, \"fromWireType\": function() {\n return void 0;\n }, \"toWireType\": function(destructors, o) {\n return void 0;\n } });\n }\n var nowIsMonotonic = true;\n var __emscripten_get_now_is_monotonic = () => nowIsMonotonic;\n var maybeExit = () => {\n if (!keepRuntimeAlive()) {\n try {\n if (ENVIRONMENT_IS_PTHREAD)\n __emscripten_thread_exit(EXITSTATUS);\n else\n _exit(EXITSTATUS);\n } catch (e) {\n handleException(e);\n }\n }\n };\n var callUserCallback = (func) => {\n if (ABORT) {\n return;\n }\n try {\n func();\n maybeExit();\n } catch (e) {\n handleException(e);\n }\n };\n function __emscripten_thread_mailbox_await(pthread_ptr) {\n pthread_ptr >>>= 0;\n if (typeof Atomics.waitAsync === \"function\") {\n var wait = Atomics.waitAsync(GROWABLE_HEAP_I32(), pthread_ptr >> 2, pthread_ptr);\n wait.value.then(checkMailbox);\n var waitingAsync = pthread_ptr + 128;\n Atomics.store(GROWABLE_HEAP_I32(), waitingAsync >> 2, 1);\n }\n }\n Module[\"__emscripten_thread_mailbox_await\"] = __emscripten_thread_mailbox_await;\n var checkMailbox = function() {\n var pthread_ptr = _pthread_self();\n if (pthread_ptr) {\n __emscripten_thread_mailbox_await(pthread_ptr);\n callUserCallback(() => __emscripten_check_mailbox());\n }\n };\n Module[\"checkMailbox\"] = checkMailbox;\n var __emscripten_notify_mailbox_postmessage = function(targetThreadId, currThreadId, mainThreadId) {\n targetThreadId >>>= 0;\n currThreadId >>>= 0;\n mainThreadId >>>= 0;\n if (targetThreadId == currThreadId) {\n setTimeout(() => checkMailbox());\n } else if (ENVIRONMENT_IS_PTHREAD) {\n postMessage({ \"targetThread\": targetThreadId, \"cmd\": \"checkMailbox\" });\n } else {\n var worker = PThread.pthreads[targetThreadId];\n if (!worker) {\n return;\n }\n worker.postMessage({ \"cmd\": \"checkMailbox\" });\n }\n };\n function __emscripten_set_offscreencanvas_size(target, width, height) {\n target >>>= 0;\n return -1;\n }\n function __emscripten_thread_set_strongref(thread) {\n thread >>>= 0;\n }\n function requireRegisteredType(rawType, humanName) {\n var impl = registeredTypes[rawType];\n if (impl === void 0) {\n throwBindingError(humanName + \" has unknown type \" + getTypeName(rawType));\n }\n return impl;\n }\n function __emval_as(handle, returnType, destructorsRef) {\n handle >>>= 0;\n returnType >>>= 0;\n destructorsRef >>>= 0;\n handle = Emval.toValue(handle);\n returnType = requireRegisteredType(returnType, \"emval::as\");\n var destructors = [];\n var rd = Emval.toHandle(destructors);\n GROWABLE_HEAP_U32()[destructorsRef >>> 2] = rd;\n return returnType[\"toWireType\"](destructors, handle);\n }\n function emval_lookupTypes(argCount, argTypes) {\n var a = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n a[i] = requireRegisteredType(GROWABLE_HEAP_U32()[argTypes + i * 4 >>> 2], \"parameter \" + i);\n }\n return a;\n }\n function __emval_call(handle, argCount, argTypes, argv) {\n handle >>>= 0;\n argTypes >>>= 0;\n argv >>>= 0;\n handle = Emval.toValue(handle);\n var types = emval_lookupTypes(argCount, argTypes);\n var args = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n var type = types[i];\n args[i] = type[\"readValueFromPointer\"](argv);\n argv += type[\"argPackAdvance\"];\n }\n var rv = handle.apply(void 0, args);\n return Emval.toHandle(rv);\n }\n var emval_symbols = {};\n function getStringOrSymbol(address) {\n var symbol = emval_symbols[address];\n if (symbol === void 0) {\n return readLatin1String(address);\n }\n return symbol;\n }\n function emval_get_global() {\n if (typeof globalThis == \"object\") {\n return globalThis;\n }\n return function() {\n return Function;\n }()(\"return this\")();\n }\n function __emval_get_global(name) {\n name >>>= 0;\n if (name === 0) {\n return Emval.toHandle(emval_get_global());\n } else {\n name = getStringOrSymbol(name);\n return Emval.toHandle(emval_get_global()[name]);\n }\n }\n function __emval_get_property(handle, key) {\n handle >>>= 0;\n key >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n return Emval.toHandle(handle[key]);\n }\n function __emval_incref(handle) {\n handle >>>= 0;\n if (handle > 4) {\n emval_handles.get(handle).refcount += 1;\n }\n }\n function __emval_instanceof(object, constructor) {\n object >>>= 0;\n constructor >>>= 0;\n object = Emval.toValue(object);\n constructor = Emval.toValue(constructor);\n return object instanceof constructor;\n }\n function __emval_is_number(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"number\";\n }\n function __emval_is_string(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"string\";\n }\n function __emval_new_array() {\n return Emval.toHandle([]);\n }\n function __emval_new_cstring(v) {\n v >>>= 0;\n return Emval.toHandle(getStringOrSymbol(v));\n }\n function __emval_new_object() {\n return Emval.toHandle({});\n }\n function __emval_run_destructors(handle) {\n handle >>>= 0;\n var destructors = Emval.toValue(handle);\n runDestructors(destructors);\n __emval_decref(handle);\n }\n function __emval_set_property(handle, key, value) {\n handle >>>= 0;\n key >>>= 0;\n value >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n value = Emval.toValue(value);\n handle[key] = value;\n }\n function __emval_take_value(type, arg) {\n type >>>= 0;\n arg >>>= 0;\n type = requireRegisteredType(type, \"_emval_take_value\");\n var v = type[\"readValueFromPointer\"](arg);\n return Emval.toHandle(v);\n }\n function __gmtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n GROWABLE_HEAP_I32()[tmPtr >>> 2] = date.getUTCSeconds();\n GROWABLE_HEAP_I32()[tmPtr + 4 >>> 2] = date.getUTCMinutes();\n GROWABLE_HEAP_I32()[tmPtr + 8 >>> 2] = date.getUTCHours();\n GROWABLE_HEAP_I32()[tmPtr + 12 >>> 2] = date.getUTCDate();\n GROWABLE_HEAP_I32()[tmPtr + 16 >>> 2] = date.getUTCMonth();\n GROWABLE_HEAP_I32()[tmPtr + 20 >>> 2] = date.getUTCFullYear() - 1900;\n GROWABLE_HEAP_I32()[tmPtr + 24 >>> 2] = date.getUTCDay();\n var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);\n var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 28 >>> 2] = yday;\n }\n var isLeapYear = (year) => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n var MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n var MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];\n var ydayFromDate = (date) => {\n var leap = isLeapYear(date.getFullYear());\n var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE;\n var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1;\n return yday;\n };\n function __localtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n GROWABLE_HEAP_I32()[tmPtr >>> 2] = date.getSeconds();\n GROWABLE_HEAP_I32()[tmPtr + 4 >>> 2] = date.getMinutes();\n GROWABLE_HEAP_I32()[tmPtr + 8 >>> 2] = date.getHours();\n GROWABLE_HEAP_I32()[tmPtr + 12 >>> 2] = date.getDate();\n GROWABLE_HEAP_I32()[tmPtr + 16 >>> 2] = date.getMonth();\n GROWABLE_HEAP_I32()[tmPtr + 20 >>> 2] = date.getFullYear() - 1900;\n GROWABLE_HEAP_I32()[tmPtr + 24 >>> 2] = date.getDay();\n var yday = ydayFromDate(date) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 28 >>> 2] = yday;\n GROWABLE_HEAP_I32()[tmPtr + 36 >>> 2] = -(date.getTimezoneOffset() * 60);\n var start = new Date(date.getFullYear(), 0, 1);\n var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset();\n var winterOffset = start.getTimezoneOffset();\n var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;\n GROWABLE_HEAP_I32()[tmPtr + 32 >>> 2] = dst;\n }\n var stringToNewUTF8 = (str) => {\n var size = lengthBytesUTF8(str) + 1;\n var ret = _malloc(size);\n if (ret)\n stringToUTF8(str, ret, size);\n return ret;\n };\n function __tzset_js(timezone, daylight, tzname) {\n timezone >>>= 0;\n daylight >>>= 0;\n tzname >>>= 0;\n var currentYear = new Date().getFullYear();\n var winter = new Date(currentYear, 0, 1);\n var summer = new Date(currentYear, 6, 1);\n var winterOffset = winter.getTimezoneOffset();\n var summerOffset = summer.getTimezoneOffset();\n var stdTimezoneOffset = Math.max(winterOffset, summerOffset);\n GROWABLE_HEAP_U32()[timezone >>> 2] = stdTimezoneOffset * 60;\n GROWABLE_HEAP_I32()[daylight >>> 2] = Number(winterOffset != summerOffset);\n function extractZone(date) {\n var match = date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);\n return match ? match[1] : \"GMT\";\n }\n var winterName = extractZone(winter);\n var summerName = extractZone(summer);\n var winterNamePtr = stringToNewUTF8(winterName);\n var summerNamePtr = stringToNewUTF8(summerName);\n if (summerOffset < winterOffset) {\n GROWABLE_HEAP_U32()[tzname >>> 2] = winterNamePtr;\n GROWABLE_HEAP_U32()[tzname + 4 >>> 2] = summerNamePtr;\n } else {\n GROWABLE_HEAP_U32()[tzname >>> 2] = summerNamePtr;\n GROWABLE_HEAP_U32()[tzname + 4 >>> 2] = winterNamePtr;\n }\n }\n var _abort = () => {\n abort(\"\");\n };\n var warnOnce = (text) => {\n if (!warnOnce.shown)\n warnOnce.shown = {};\n if (!warnOnce.shown[text]) {\n warnOnce.shown[text] = 1;\n err(text);\n }\n };\n function _emscripten_check_blocking_allowed() {\n }\n function _emscripten_date_now() {\n return Date.now();\n }\n var runtimeKeepalivePush = () => {\n runtimeKeepaliveCounter += 1;\n };\n var _emscripten_exit_with_live_runtime = () => {\n runtimeKeepalivePush();\n throw \"unwind\";\n };\n var _emscripten_get_now;\n _emscripten_get_now = () => performance.timeOrigin + performance.now();\n var withStackSave = (f) => {\n var stack = stackSave();\n var ret = f();\n stackRestore(stack);\n return ret;\n };\n var proxyToMainThread = function(index, sync) {\n var numCallArgs = arguments.length - 2;\n var outerArgs = arguments;\n return withStackSave(() => {\n var serializedNumCallArgs = numCallArgs;\n var args = stackAlloc(serializedNumCallArgs * 8);\n var b = args >> 3;\n for (var i = 0; i < numCallArgs; i++) {\n var arg = outerArgs[2 + i];\n GROWABLE_HEAP_F64()[b + i >>> 0] = arg;\n }\n return __emscripten_run_in_main_runtime_thread_js(index, serializedNumCallArgs, args, sync);\n });\n };\n var emscripten_receive_on_main_thread_js_callArgs = [];\n function _emscripten_receive_on_main_thread_js(index, callingThread, numCallArgs, args) {\n callingThread >>>= 0;\n args >>>= 0;\n PThread.currentProxiedOperationCallerThread = callingThread;\n emscripten_receive_on_main_thread_js_callArgs.length = numCallArgs;\n var b = args >> 3;\n for (var i = 0; i < numCallArgs; i++) {\n emscripten_receive_on_main_thread_js_callArgs[i] = GROWABLE_HEAP_F64()[b + i >>> 0];\n }\n var func = proxiedFunctionTable[index];\n return func.apply(null, emscripten_receive_on_main_thread_js_callArgs);\n }\n var getHeapMax = () => 4294901760;\n var growMemory = (size) => {\n var b = wasmMemory.buffer;\n var pages = size - b.byteLength + 65535 >>> 16;\n try {\n wasmMemory.grow(pages);\n updateMemoryViews();\n return 1;\n } catch (e) {\n }\n };\n function _emscripten_resize_heap(requestedSize) {\n requestedSize >>>= 0;\n var oldSize = GROWABLE_HEAP_U8().length;\n if (requestedSize <= oldSize) {\n return false;\n }\n var maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize) {\n return false;\n }\n var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\n for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {\n var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n var replacement = growMemory(newSize);\n if (replacement) {\n return true;\n }\n }\n return false;\n }\n var ENV = {};\n var getExecutableName = () => thisProgram || \"./this.program\";\n var getEnvStrings = () => {\n if (!getEnvStrings.strings) {\n var lang = (typeof navigator == \"object\" && navigator.languages && navigator.languages[0] || \"C\").replace(\"-\", \"_\") + \".UTF-8\";\n var env = { \"USER\": \"web_user\", \"LOGNAME\": \"web_user\", \"PATH\": \"/\", \"PWD\": \"/\", \"HOME\": \"/home/web_user\", \"LANG\": lang, \"_\": getExecutableName() };\n for (var x in ENV) {\n if (ENV[x] === void 0)\n delete env[x];\n else\n env[x] = ENV[x];\n }\n var strings = [];\n for (var x in env) {\n strings.push(`${x}=${env[x]}`);\n }\n getEnvStrings.strings = strings;\n }\n return getEnvStrings.strings;\n };\n var stringToAscii = (str, buffer) => {\n for (var i = 0; i < str.length; ++i) {\n GROWABLE_HEAP_I8()[buffer++ >>> 0] = str.charCodeAt(i);\n }\n GROWABLE_HEAP_I8()[buffer >>> 0] = 0;\n };\n function _environ_get(__environ, environ_buf) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(3, 1, __environ, environ_buf);\n __environ >>>= 0;\n environ_buf >>>= 0;\n var bufSize = 0;\n getEnvStrings().forEach(function(string, i) {\n var ptr = environ_buf + bufSize;\n GROWABLE_HEAP_U32()[__environ + i * 4 >>> 2] = ptr;\n stringToAscii(string, ptr);\n bufSize += string.length + 1;\n });\n return 0;\n }\n function _environ_sizes_get(penviron_count, penviron_buf_size) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(4, 1, penviron_count, penviron_buf_size);\n penviron_count >>>= 0;\n penviron_buf_size >>>= 0;\n var strings = getEnvStrings();\n GROWABLE_HEAP_U32()[penviron_count >>> 2] = strings.length;\n var bufSize = 0;\n strings.forEach(function(string) {\n bufSize += string.length + 1;\n });\n GROWABLE_HEAP_U32()[penviron_buf_size >>> 2] = bufSize;\n return 0;\n }\n function _fd_close(fd) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(5, 1, fd);\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.close(stream);\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_fdstat_get(fd, pbuf) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(6, 1, fd, pbuf);\n pbuf >>>= 0;\n try {\n var rightsBase = 0;\n var rightsInheriting = 0;\n var flags = 0;\n {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4;\n }\n GROWABLE_HEAP_I8()[pbuf >>> 0] = type;\n GROWABLE_HEAP_I16()[pbuf + 2 >>> 1] = flags;\n tempI64 = [rightsBase >>> 0, (tempDouble = rightsBase, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[pbuf + 8 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[pbuf + 12 >>> 2] = tempI64[1];\n tempI64 = [rightsInheriting >>> 0, (tempDouble = rightsInheriting, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[pbuf + 16 >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[pbuf + 20 >>> 2] = tempI64[1];\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doReadv = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = GROWABLE_HEAP_U32()[iov >>> 2];\n var len = GROWABLE_HEAP_U32()[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.read(stream, GROWABLE_HEAP_I8(), ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (curr < len)\n break;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_read(fd, iov, iovcnt, pnum) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(7, 1, fd, iov, iovcnt, pnum);\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doReadv(stream, iov, iovcnt);\n GROWABLE_HEAP_U32()[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(8, 1, fd, offset_low, offset_high, whence, newOffset);\n var offset = convertI32PairToI53Checked(offset_low, offset_high);\n newOffset >>>= 0;\n try {\n if (isNaN(offset))\n return 61;\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.llseek(stream, offset, whence);\n tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], GROWABLE_HEAP_I32()[newOffset >>> 2] = tempI64[0], GROWABLE_HEAP_I32()[newOffset + 4 >>> 2] = tempI64[1];\n if (stream.getdents && offset === 0 && whence === 0)\n stream.getdents = null;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doWritev = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = GROWABLE_HEAP_U32()[iov >>> 2];\n var len = GROWABLE_HEAP_U32()[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.write(stream, GROWABLE_HEAP_I8(), ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_write(fd, iov, iovcnt, pnum) {\n if (ENVIRONMENT_IS_PTHREAD)\n return proxyToMainThread(9, 1, fd, iov, iovcnt, pnum);\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doWritev(stream, iov, iovcnt);\n GROWABLE_HEAP_U32()[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var arraySum = (array, index) => {\n var sum = 0;\n for (var i = 0; i <= index; sum += array[i++]) {\n }\n return sum;\n };\n var MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var addDays = (date, days) => {\n var newDate = new Date(date.getTime());\n while (days > 0) {\n var leap = isLeapYear(newDate.getFullYear());\n var currentMonth = newDate.getMonth();\n var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth];\n if (days > daysInCurrentMonth - newDate.getDate()) {\n days -= daysInCurrentMonth - newDate.getDate() + 1;\n newDate.setDate(1);\n if (currentMonth < 11) {\n newDate.setMonth(currentMonth + 1);\n } else {\n newDate.setMonth(0);\n newDate.setFullYear(newDate.getFullYear() + 1);\n }\n } else {\n newDate.setDate(newDate.getDate() + days);\n return newDate;\n }\n }\n return newDate;\n };\n var writeArrayToMemory = (array, buffer) => {\n GROWABLE_HEAP_I8().set(array, buffer >>> 0);\n };\n function _strftime(s, maxsize, format, tm) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n var tm_zone = GROWABLE_HEAP_I32()[tm + 40 >>> 2];\n var date = { tm_sec: GROWABLE_HEAP_I32()[tm >>> 2], tm_min: GROWABLE_HEAP_I32()[tm + 4 >>> 2], tm_hour: GROWABLE_HEAP_I32()[tm + 8 >>> 2], tm_mday: GROWABLE_HEAP_I32()[tm + 12 >>> 2], tm_mon: GROWABLE_HEAP_I32()[tm + 16 >>> 2], tm_year: GROWABLE_HEAP_I32()[tm + 20 >>> 2], tm_wday: GROWABLE_HEAP_I32()[tm + 24 >>> 2], tm_yday: GROWABLE_HEAP_I32()[tm + 28 >>> 2], tm_isdst: GROWABLE_HEAP_I32()[tm + 32 >>> 2], tm_gmtoff: GROWABLE_HEAP_I32()[tm + 36 >>> 2], tm_zone: tm_zone ? UTF8ToString(tm_zone) : \"\" };\n var pattern = UTF8ToString(format);\n var EXPANSION_RULES_1 = { \"%c\": \"%a %b %d %H:%M:%S %Y\", \"%D\": \"%m/%d/%y\", \"%F\": \"%Y-%m-%d\", \"%h\": \"%b\", \"%r\": \"%I:%M:%S %p\", \"%R\": \"%H:%M\", \"%T\": \"%H:%M:%S\", \"%x\": \"%m/%d/%y\", \"%X\": \"%H:%M:%S\", \"%Ec\": \"%c\", \"%EC\": \"%C\", \"%Ex\": \"%m/%d/%y\", \"%EX\": \"%H:%M:%S\", \"%Ey\": \"%y\", \"%EY\": \"%Y\", \"%Od\": \"%d\", \"%Oe\": \"%e\", \"%OH\": \"%H\", \"%OI\": \"%I\", \"%Om\": \"%m\", \"%OM\": \"%M\", \"%OS\": \"%S\", \"%Ou\": \"%u\", \"%OU\": \"%U\", \"%OV\": \"%V\", \"%Ow\": \"%w\", \"%OW\": \"%W\", \"%Oy\": \"%y\" };\n for (var rule in EXPANSION_RULES_1) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_1[rule]);\n }\n var WEEKDAYS = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n var MONTHS = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n function leadingSomething(value, digits, character) {\n var str = typeof value == \"number\" ? value.toString() : value || \"\";\n while (str.length < digits) {\n str = character[0] + str;\n }\n return str;\n }\n function leadingNulls(value, digits) {\n return leadingSomething(value, digits, \"0\");\n }\n function compareByDay(date1, date2) {\n function sgn(value) {\n return value < 0 ? -1 : value > 0 ? 1 : 0;\n }\n var compare;\n if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {\n if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {\n compare = sgn(date1.getDate() - date2.getDate());\n }\n }\n return compare;\n }\n function getFirstWeekStartDate(janFourth) {\n switch (janFourth.getDay()) {\n case 0:\n return new Date(janFourth.getFullYear() - 1, 11, 29);\n case 1:\n return janFourth;\n case 2:\n return new Date(janFourth.getFullYear(), 0, 3);\n case 3:\n return new Date(janFourth.getFullYear(), 0, 2);\n case 4:\n return new Date(janFourth.getFullYear(), 0, 1);\n case 5:\n return new Date(janFourth.getFullYear() - 1, 11, 31);\n case 6:\n return new Date(janFourth.getFullYear() - 1, 11, 30);\n }\n }\n function getWeekBasedYear(date2) {\n var thisDate = addDays(new Date(date2.tm_year + 1900, 0, 1), date2.tm_yday);\n var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);\n var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);\n var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);\n var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);\n if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {\n if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {\n return thisDate.getFullYear() + 1;\n }\n return thisDate.getFullYear();\n }\n return thisDate.getFullYear() - 1;\n }\n var EXPANSION_RULES_2 = { \"%a\": (date2) => WEEKDAYS[date2.tm_wday].substring(0, 3), \"%A\": (date2) => WEEKDAYS[date2.tm_wday], \"%b\": (date2) => MONTHS[date2.tm_mon].substring(0, 3), \"%B\": (date2) => MONTHS[date2.tm_mon], \"%C\": (date2) => {\n var year = date2.tm_year + 1900;\n return leadingNulls(year / 100 | 0, 2);\n }, \"%d\": (date2) => leadingNulls(date2.tm_mday, 2), \"%e\": (date2) => leadingSomething(date2.tm_mday, 2, \" \"), \"%g\": (date2) => getWeekBasedYear(date2).toString().substring(2), \"%G\": (date2) => getWeekBasedYear(date2), \"%H\": (date2) => leadingNulls(date2.tm_hour, 2), \"%I\": (date2) => {\n var twelveHour = date2.tm_hour;\n if (twelveHour == 0)\n twelveHour = 12;\n else if (twelveHour > 12)\n twelveHour -= 12;\n return leadingNulls(twelveHour, 2);\n }, \"%j\": (date2) => leadingNulls(date2.tm_mday + arraySum(isLeapYear(date2.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date2.tm_mon - 1), 3), \"%m\": (date2) => leadingNulls(date2.tm_mon + 1, 2), \"%M\": (date2) => leadingNulls(date2.tm_min, 2), \"%n\": () => \"\\n\", \"%p\": (date2) => {\n if (date2.tm_hour >= 0 && date2.tm_hour < 12) {\n return \"AM\";\n }\n return \"PM\";\n }, \"%S\": (date2) => leadingNulls(date2.tm_sec, 2), \"%t\": () => \"\t\", \"%u\": (date2) => date2.tm_wday || 7, \"%U\": (date2) => {\n var days = date2.tm_yday + 7 - date2.tm_wday;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%V\": (date2) => {\n var val = Math.floor((date2.tm_yday + 7 - (date2.tm_wday + 6) % 7) / 7);\n if ((date2.tm_wday + 371 - date2.tm_yday - 2) % 7 <= 2) {\n val++;\n }\n if (!val) {\n val = 52;\n var dec31 = (date2.tm_wday + 7 - date2.tm_yday - 1) % 7;\n if (dec31 == 4 || dec31 == 5 && isLeapYear(date2.tm_year % 400 - 1)) {\n val++;\n }\n } else if (val == 53) {\n var jan1 = (date2.tm_wday + 371 - date2.tm_yday) % 7;\n if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date2.tm_year)))\n val = 1;\n }\n return leadingNulls(val, 2);\n }, \"%w\": (date2) => date2.tm_wday, \"%W\": (date2) => {\n var days = date2.tm_yday + 7 - (date2.tm_wday + 6) % 7;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%y\": (date2) => (date2.tm_year + 1900).toString().substring(2), \"%Y\": (date2) => date2.tm_year + 1900, \"%z\": (date2) => {\n var off = date2.tm_gmtoff;\n var ahead = off >= 0;\n off = Math.abs(off) / 60;\n off = off / 60 * 100 + off % 60;\n return (ahead ? \"+\" : \"-\") + String(\"0000\" + off).slice(-4);\n }, \"%Z\": (date2) => date2.tm_zone, \"%%\": () => \"%\" };\n pattern = pattern.replace(/%%/g, \"\\0\\0\");\n for (var rule in EXPANSION_RULES_2) {\n if (pattern.includes(rule)) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_2[rule](date));\n }\n }\n pattern = pattern.replace(/\\0\\0/g, \"%\");\n var bytes = intArrayFromString(pattern, false);\n if (bytes.length > maxsize) {\n return 0;\n }\n writeArrayToMemory(bytes, s);\n return bytes.length - 1;\n }\n function _strftime_l(s, maxsize, format, tm, loc) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n loc >>>= 0;\n return _strftime(s, maxsize, format, tm);\n }\n PThread.init();\n var FSNode = function(parent, name, mode, rdev) {\n if (!parent) {\n parent = this;\n }\n this.parent = parent;\n this.mount = parent.mount;\n this.mounted = null;\n this.id = FS.nextInode++;\n this.name = name;\n this.mode = mode;\n this.node_ops = {};\n this.stream_ops = {};\n this.rdev = rdev;\n };\n var readMode = 292 | 73;\n var writeMode = 146;\n Object.defineProperties(FSNode.prototype, { read: { get: function() {\n return (this.mode & readMode) === readMode;\n }, set: function(val) {\n val ? this.mode |= readMode : this.mode &= ~readMode;\n } }, write: { get: function() {\n return (this.mode & writeMode) === writeMode;\n }, set: function(val) {\n val ? this.mode |= writeMode : this.mode &= ~writeMode;\n } }, isFolder: { get: function() {\n return FS.isDir(this.mode);\n } }, isDevice: { get: function() {\n return FS.isChrdev(this.mode);\n } } });\n FS.FSNode = FSNode;\n FS.createPreloadedFile = FS_createPreloadedFile;\n FS.staticInit();\n InternalError = Module[\"InternalError\"] = class InternalError extends Error {\n constructor(message) {\n super(message);\n this.name = \"InternalError\";\n }\n };\n embind_init_charCodes();\n BindingError = Module[\"BindingError\"] = class BindingError extends Error {\n constructor(message) {\n super(message);\n this.name = \"BindingError\";\n }\n };\n init_ClassHandle();\n init_embind();\n init_RegisteredPointer();\n UnboundTypeError = Module[\"UnboundTypeError\"] = extendError(Error, \"UnboundTypeError\");\n handleAllocatorInit();\n init_emval();\n var proxiedFunctionTable = [null, _proc_exit, exitOnMainThread, _environ_get, _environ_sizes_get, _fd_close, _fd_fdstat_get, _fd_read, _fd_seek, _fd_write];\n var wasmImports = { g: ___cxa_throw, Y: ___emscripten_init_main_thread_js, B: ___emscripten_thread_cleanup, fa: __embind_finalize_value_array, r: __embind_finalize_value_object, K: __embind_register_bigint, da: __embind_register_bool, q: __embind_register_class, p: __embind_register_class_constructor, c: __embind_register_class_function, ca: __embind_register_emval, D: __embind_register_float, d: __embind_register_function, t: __embind_register_integer, l: __embind_register_memory_view, E: __embind_register_std_string, y: __embind_register_std_wstring, ga: __embind_register_value_array, m: __embind_register_value_array_element, s: __embind_register_value_object, f: __embind_register_value_object_field, ea: __embind_register_void, T: __emscripten_get_now_is_monotonic, R: __emscripten_notify_mailbox_postmessage, W: __emscripten_set_offscreencanvas_size, X: __emscripten_thread_mailbox_await, ba: __emscripten_thread_set_strongref, k: __emval_as, x: __emval_call, b: __emval_decref, A: __emval_get_global, i: __emval_get_property, o: __emval_incref, G: __emval_instanceof, z: __emval_is_number, F: __emval_is_string, ha: __emval_new_array, h: __emval_new_cstring, v: __emval_new_object, j: __emval_run_destructors, n: __emval_set_property, e: __emval_take_value, I: __gmtime_js, J: __localtime_js, Q: __tzset_js, w: _abort, C: _emscripten_check_blocking_allowed, U: _emscripten_date_now, aa: _emscripten_exit_with_live_runtime, u: _emscripten_get_now, V: _emscripten_receive_on_main_thread_js, P: _emscripten_resize_heap, _: _environ_get, $: _environ_sizes_get, L: _exit, N: _fd_close, Z: _fd_fdstat_get, O: _fd_read, H: _fd_seek, S: _fd_write, a: wasmMemory || Module[\"wasmMemory\"], M: _strftime_l };\n var asm = createWasm();\n var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports[\"ia\"])();\n var _pthread_self = Module[\"_pthread_self\"] = () => (_pthread_self = Module[\"_pthread_self\"] = wasmExports[\"ka\"])();\n var _malloc = (a0) => (_malloc = wasmExports[\"la\"])(a0);\n var __emscripten_tls_init = Module[\"__emscripten_tls_init\"] = () => (__emscripten_tls_init = Module[\"__emscripten_tls_init\"] = wasmExports[\"ma\"])();\n var ___getTypeName = (a0) => (___getTypeName = wasmExports[\"na\"])(a0);\n var __embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = () => (__embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = wasmExports[\"oa\"])();\n var ___errno_location = () => (___errno_location = wasmExports[\"__errno_location\"])();\n var __emscripten_thread_init = Module[\"__emscripten_thread_init\"] = (a0, a1, a2, a3, a4, a5) => (__emscripten_thread_init = Module[\"__emscripten_thread_init\"] = wasmExports[\"pa\"])(a0, a1, a2, a3, a4, a5);\n var __emscripten_thread_crashed = Module[\"__emscripten_thread_crashed\"] = () => (__emscripten_thread_crashed = Module[\"__emscripten_thread_crashed\"] = wasmExports[\"qa\"])();\n var _emscripten_main_thread_process_queued_calls = () => (_emscripten_main_thread_process_queued_calls = wasmExports[\"emscripten_main_thread_process_queued_calls\"])();\n var _emscripten_main_runtime_thread_id = () => (_emscripten_main_runtime_thread_id = wasmExports[\"emscripten_main_runtime_thread_id\"])();\n var __emscripten_run_in_main_runtime_thread_js = (a0, a1, a2, a3) => (__emscripten_run_in_main_runtime_thread_js = wasmExports[\"ra\"])(a0, a1, a2, a3);\n var _emscripten_dispatch_to_thread_ = (a0, a1, a2, a3, a4) => (_emscripten_dispatch_to_thread_ = wasmExports[\"emscripten_dispatch_to_thread_\"])(a0, a1, a2, a3, a4);\n var _free = (a0) => (_free = wasmExports[\"sa\"])(a0);\n var __emscripten_thread_free_data = (a0) => (__emscripten_thread_free_data = wasmExports[\"ta\"])(a0);\n var __emscripten_thread_exit = Module[\"__emscripten_thread_exit\"] = (a0) => (__emscripten_thread_exit = Module[\"__emscripten_thread_exit\"] = wasmExports[\"ua\"])(a0);\n var __emscripten_check_mailbox = Module[\"__emscripten_check_mailbox\"] = () => (__emscripten_check_mailbox = Module[\"__emscripten_check_mailbox\"] = wasmExports[\"va\"])();\n var _emscripten_stack_set_limits = (a0, a1) => (_emscripten_stack_set_limits = wasmExports[\"wa\"])(a0, a1);\n var stackSave = () => (stackSave = wasmExports[\"xa\"])();\n var stackRestore = (a0) => (stackRestore = wasmExports[\"ya\"])(a0);\n var stackAlloc = (a0) => (stackAlloc = wasmExports[\"za\"])(a0);\n var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports[\"__cxa_increment_exception_refcount\"])(a0);\n var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports[\"Aa\"])(a0);\n var dynCall_jiji = Module[\"dynCall_jiji\"] = (a0, a1, a2, a3, a4) => (dynCall_jiji = Module[\"dynCall_jiji\"] = wasmExports[\"Ba\"])(a0, a1, a2, a3, a4);\n var dynCall_viijii = Module[\"dynCall_viijii\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_viijii = Module[\"dynCall_viijii\"] = wasmExports[\"Ca\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = wasmExports[\"Da\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8) => (dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = wasmExports[\"Ea\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8);\n var dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) => (dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = wasmExports[\"Fa\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);\n function applySignatureConversions(exports2) {\n exports2 = Object.assign({}, exports2);\n var makeWrapper_p = (f) => () => f() >>> 0;\n var makeWrapper_pp = (f) => (a0) => f(a0) >>> 0;\n exports2[\"pthread_self\"] = makeWrapper_p(exports2[\"pthread_self\"]);\n exports2[\"malloc\"] = makeWrapper_pp(exports2[\"malloc\"]);\n exports2[\"__getTypeName\"] = makeWrapper_pp(exports2[\"__getTypeName\"]);\n exports2[\"__errno_location\"] = makeWrapper_p(exports2[\"__errno_location\"]);\n exports2[\"stackSave\"] = makeWrapper_p(exports2[\"stackSave\"]);\n exports2[\"stackAlloc\"] = makeWrapper_pp(exports2[\"stackAlloc\"]);\n return exports2;\n }\n Module[\"keepRuntimeAlive\"] = keepRuntimeAlive;\n Module[\"wasmMemory\"] = wasmMemory;\n Module[\"ExitStatus\"] = ExitStatus;\n Module[\"PThread\"] = PThread;\n var calledRun;\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run() {\n if (runDependencies > 0) {\n return;\n }\n if (ENVIRONMENT_IS_PTHREAD) {\n readyPromiseResolve(Module);\n initRuntime();\n startWorker(Module);\n return;\n }\n preRun();\n if (runDependencies > 0) {\n return;\n }\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module[\"calledRun\"] = true;\n if (ABORT)\n return;\n initRuntime();\n readyPromiseResolve(Module);\n if (Module[\"onRuntimeInitialized\"])\n Module[\"onRuntimeInitialized\"]();\n postRun();\n }\n if (Module[\"setStatus\"]) {\n Module[\"setStatus\"](\"Running...\");\n setTimeout(function() {\n setTimeout(function() {\n Module[\"setStatus\"](\"\");\n }, 1);\n doRun();\n }, 1);\n } else {\n doRun();\n }\n }\n if (Module[\"preInit\"]) {\n if (typeof Module[\"preInit\"] == \"function\")\n Module[\"preInit\"] = [Module[\"preInit\"]];\n while (Module[\"preInit\"].length > 0) {\n Module[\"preInit\"].pop()();\n }\n }\n run();\n return moduleArg.ready;\n };\n })();\n if (typeof exports === \"object\" && typeof module === \"object\")\n module.exports = WebIFCWasm2;\n else if (typeof define === \"function\" && define[\"amd\"])\n define([], () => WebIFCWasm2);\n }\n});\n\n// dist/web-ifc.js\nvar require_web_ifc = __commonJS({\n \"dist/web-ifc.js\"(exports, module) {\n var WebIFCWasm2 = (() => {\n var _scriptDir = typeof document !== \"undefined\" && document.currentScript ? document.currentScript.src : void 0;\n return function(moduleArg = {}) {\n var Module = moduleArg;\n var readyPromiseResolve, readyPromiseReject;\n Module[\"ready\"] = new Promise((resolve, reject) => {\n readyPromiseResolve = resolve;\n readyPromiseReject = reject;\n });\n var moduleOverrides = Object.assign({}, Module);\n var arguments_ = [];\n var thisProgram = \"./this.program\";\n var quit_ = (status, toThrow) => {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = true;\n var ENVIRONMENT_IS_WORKER = false;\n var scriptDirectory = \"\";\n function locateFile(path) {\n if (Module[\"locateFile\"]) {\n return Module[\"locateFile\"](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n } else if (typeof document != \"undefined\" && document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (_scriptDir) {\n scriptDirectory = _scriptDir;\n }\n if (scriptDirectory.indexOf(\"blob:\") !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, \"\").lastIndexOf(\"/\") + 1);\n } else {\n scriptDirectory = \"\";\n }\n {\n read_ = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.send(null);\n return xhr.responseText;\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = (url) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, false);\n xhr.responseType = \"arraybuffer\";\n xhr.send(null);\n return new Uint8Array(xhr.response);\n };\n }\n readAsync = (url, onload, onerror) => {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", url, true);\n xhr.responseType = \"arraybuffer\";\n xhr.onload = () => {\n if (xhr.status == 200 || xhr.status == 0 && xhr.response) {\n onload(xhr.response);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = (title) => document.title = title;\n } else {\n }\n var out = Module[\"print\"] || console.log.bind(console);\n var err = Module[\"printErr\"] || console.error.bind(console);\n Object.assign(Module, moduleOverrides);\n moduleOverrides = null;\n if (Module[\"arguments\"])\n arguments_ = Module[\"arguments\"];\n if (Module[\"thisProgram\"])\n thisProgram = Module[\"thisProgram\"];\n if (Module[\"quit\"])\n quit_ = Module[\"quit\"];\n var wasmBinary;\n if (Module[\"wasmBinary\"])\n wasmBinary = Module[\"wasmBinary\"];\n var noExitRuntime = Module[\"noExitRuntime\"] || true;\n if (typeof WebAssembly != \"object\") {\n abort(\"no native wasm support detected\");\n }\n var wasmMemory;\n var wasmExports;\n var ABORT = false;\n var EXITSTATUS;\n function assert(condition, text) {\n if (!condition) {\n abort(text);\n }\n }\n var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateMemoryViews() {\n var b = wasmMemory.buffer;\n Module[\"HEAP8\"] = HEAP8 = new Int8Array(b);\n Module[\"HEAP16\"] = HEAP16 = new Int16Array(b);\n Module[\"HEAP32\"] = HEAP32 = new Int32Array(b);\n Module[\"HEAPU8\"] = HEAPU8 = new Uint8Array(b);\n Module[\"HEAPU16\"] = HEAPU16 = new Uint16Array(b);\n Module[\"HEAPU32\"] = HEAPU32 = new Uint32Array(b);\n Module[\"HEAPF32\"] = HEAPF32 = new Float32Array(b);\n Module[\"HEAPF64\"] = HEAPF64 = new Float64Array(b);\n }\n var wasmTable;\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n function preRun() {\n if (Module[\"preRun\"]) {\n if (typeof Module[\"preRun\"] == \"function\")\n Module[\"preRun\"] = [Module[\"preRun\"]];\n while (Module[\"preRun\"].length) {\n addOnPreRun(Module[\"preRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n if (!Module[\"noFSInit\"] && !FS.init.initialized)\n FS.init();\n FS.ignorePermissions = false;\n TTY.init();\n callRuntimeCallbacks(__ATINIT__);\n }\n function postRun() {\n if (Module[\"postRun\"]) {\n if (typeof Module[\"postRun\"] == \"function\")\n Module[\"postRun\"] = [Module[\"postRun\"]];\n while (Module[\"postRun\"].length) {\n addOnPostRun(Module[\"postRun\"].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnInit(cb) {\n __ATINIT__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function getUniqueRunDependency(id) {\n return id;\n }\n function addRunDependency(id) {\n runDependencies++;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module[\"monitorRunDependencies\"]) {\n Module[\"monitorRunDependencies\"](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n function abort(what) {\n if (Module[\"onAbort\"]) {\n Module[\"onAbort\"](what);\n }\n what = \"Aborted(\" + what + \")\";\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what += \". Build with -sASSERTIONS for more info.\";\n var e = new WebAssembly.RuntimeError(what);\n readyPromiseReject(e);\n throw e;\n }\n var dataURIPrefix = \"data:application/octet-stream;base64,\";\n function isDataURI(filename) {\n return filename.startsWith(dataURIPrefix);\n }\n var wasmBinaryFile;\n wasmBinaryFile = \"web-ifc.wasm\";\n if (!isDataURI(wasmBinaryFile)) {\n wasmBinaryFile = locateFile(wasmBinaryFile);\n }\n function getBinarySync(file) {\n if (file == wasmBinaryFile && wasmBinary) {\n return new Uint8Array(wasmBinary);\n }\n if (readBinary) {\n return readBinary(file);\n }\n throw \"both async and sync fetching of the wasm failed\";\n }\n function getBinaryPromise(binaryFile) {\n if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {\n if (typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n if (!response[\"ok\"]) {\n throw \"failed to load wasm binary file at '\" + binaryFile + \"'\";\n }\n return response[\"arrayBuffer\"]();\n }).catch(() => getBinarySync(binaryFile));\n }\n }\n return Promise.resolve().then(() => getBinarySync(binaryFile));\n }\n function instantiateArrayBuffer(binaryFile, imports, receiver) {\n return getBinaryPromise(binaryFile).then((binary) => WebAssembly.instantiate(binary, imports)).then((instance) => instance).then(receiver, (reason) => {\n err(\"failed to asynchronously prepare wasm: \" + reason);\n abort(reason);\n });\n }\n function instantiateAsync(binary, binaryFile, imports, callback) {\n if (!binary && typeof WebAssembly.instantiateStreaming == \"function\" && !isDataURI(binaryFile) && typeof fetch == \"function\") {\n return fetch(binaryFile, { credentials: \"same-origin\" }).then((response) => {\n var result = WebAssembly.instantiateStreaming(response, imports);\n return result.then(callback, function(reason) {\n err(\"wasm streaming compile failed: \" + reason);\n err(\"falling back to ArrayBuffer instantiation\");\n return instantiateArrayBuffer(binaryFile, imports, callback);\n });\n });\n }\n return instantiateArrayBuffer(binaryFile, imports, callback);\n }\n function createWasm() {\n var info = { \"a\": wasmImports };\n function receiveInstance(instance, module2) {\n var exports2 = instance.exports;\n exports2 = applySignatureConversions(exports2);\n wasmExports = exports2;\n wasmMemory = wasmExports[\"Z\"];\n updateMemoryViews();\n wasmTable = wasmExports[\"$\"];\n addOnInit(wasmExports[\"_\"]);\n removeRunDependency(\"wasm-instantiate\");\n return exports2;\n }\n addRunDependency(\"wasm-instantiate\");\n function receiveInstantiationResult(result) {\n receiveInstance(result[\"instance\"]);\n }\n if (Module[\"instantiateWasm\"]) {\n try {\n return Module[\"instantiateWasm\"](info, receiveInstance);\n } catch (e) {\n err(\"Module.instantiateWasm callback failed with error: \" + e);\n readyPromiseReject(e);\n }\n }\n instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);\n return {};\n }\n var tempDouble;\n var tempI64;\n var callRuntimeCallbacks = (callbacks) => {\n while (callbacks.length > 0) {\n callbacks.shift()(Module);\n }\n };\n function ExceptionInfo(excPtr) {\n this.excPtr = excPtr;\n this.ptr = excPtr - 24;\n this.set_type = function(type) {\n HEAPU32[this.ptr + 4 >>> 2] = type;\n };\n this.get_type = function() {\n return HEAPU32[this.ptr + 4 >>> 2];\n };\n this.set_destructor = function(destructor) {\n HEAPU32[this.ptr + 8 >>> 2] = destructor;\n };\n this.get_destructor = function() {\n return HEAPU32[this.ptr + 8 >>> 2];\n };\n this.set_caught = function(caught) {\n caught = caught ? 1 : 0;\n HEAP8[this.ptr + 12 >>> 0] = caught;\n };\n this.get_caught = function() {\n return HEAP8[this.ptr + 12 >>> 0] != 0;\n };\n this.set_rethrown = function(rethrown) {\n rethrown = rethrown ? 1 : 0;\n HEAP8[this.ptr + 13 >>> 0] = rethrown;\n };\n this.get_rethrown = function() {\n return HEAP8[this.ptr + 13 >>> 0] != 0;\n };\n this.init = function(type, destructor) {\n this.set_adjusted_ptr(0);\n this.set_type(type);\n this.set_destructor(destructor);\n };\n this.set_adjusted_ptr = function(adjustedPtr) {\n HEAPU32[this.ptr + 16 >>> 2] = adjustedPtr;\n };\n this.get_adjusted_ptr = function() {\n return HEAPU32[this.ptr + 16 >>> 2];\n };\n this.get_exception_ptr = function() {\n var isPointer = ___cxa_is_pointer_type(this.get_type());\n if (isPointer) {\n return HEAPU32[this.excPtr >>> 2];\n }\n var adjusted = this.get_adjusted_ptr();\n if (adjusted !== 0)\n return adjusted;\n return this.excPtr;\n };\n }\n var exceptionLast = 0;\n var uncaughtExceptionCount = 0;\n function convertI32PairToI53Checked(lo, hi) {\n return hi + 2097152 >>> 0 < 4194305 - !!lo ? (lo >>> 0) + hi * 4294967296 : NaN;\n }\n function ___cxa_throw(ptr, type, destructor) {\n ptr >>>= 0;\n type >>>= 0;\n destructor >>>= 0;\n var info = new ExceptionInfo(ptr);\n info.init(type, destructor);\n exceptionLast = ptr;\n uncaughtExceptionCount++;\n throw exceptionLast;\n }\n var tupleRegistrations = {};\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function simpleReadValueFromPointer(pointer) {\n return this[\"fromWireType\"](HEAP32[pointer >>> 2]);\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var InternalError = void 0;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function(type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters2) {\n var myTypeConverters = getTypeConverters(typeConverters2);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError(\"Mismatched type converter count\");\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach((dt, i) => {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n } else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(() => {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (unregisteredTypes.length === 0) {\n onComplete(typeConverters);\n }\n }\n function __embind_finalize_value_array(rawTupleType) {\n rawTupleType >>>= 0;\n var reg = tupleRegistrations[rawTupleType];\n delete tupleRegistrations[rawTupleType];\n var elements = reg.elements;\n var elementsLength = elements.length;\n var elementTypes = elements.map(function(elt) {\n return elt.getterReturnType;\n }).concat(elements.map(function(elt) {\n return elt.setterArgumentType;\n }));\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n whenDependentTypesAreResolved([rawTupleType], elementTypes, function(elementTypes2) {\n elements.forEach((elt, i) => {\n var getterReturnType = elementTypes2[i];\n var getter = elt.getter;\n var getterContext = elt.getterContext;\n var setterArgumentType = elementTypes2[i + elementsLength];\n var setter = elt.setter;\n var setterContext = elt.setterContext;\n elt.read = (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr));\n elt.write = (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = new Array(elementsLength);\n for (var i = 0; i < elementsLength; ++i) {\n rv[i] = elements[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n if (elementsLength !== o.length) {\n throw new TypeError(`Incorrect number of tuple elements for ${reg.name}: expected=${elementsLength}, actual=${o.length}`);\n }\n var ptr = rawConstructor();\n for (var i = 0; i < elementsLength; ++i) {\n elements[i].write(ptr, o[i]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n }\n var structRegistrations = {};\n var __embind_finalize_value_object = function(structType) {\n structType >>>= 0;\n var reg = structRegistrations[structType];\n delete structRegistrations[structType];\n var rawConstructor = reg.rawConstructor;\n var rawDestructor = reg.rawDestructor;\n var fieldRecords = reg.fields;\n var fieldTypes = fieldRecords.map((field) => field.getterReturnType).concat(fieldRecords.map((field) => field.setterArgumentType));\n whenDependentTypesAreResolved([structType], fieldTypes, (fieldTypes2) => {\n var fields = {};\n fieldRecords.forEach((field, i) => {\n var fieldName = field.fieldName;\n var getterReturnType = fieldTypes2[i];\n var getter = field.getter;\n var getterContext = field.getterContext;\n var setterArgumentType = fieldTypes2[i + fieldRecords.length];\n var setter = field.setter;\n var setterContext = field.setterContext;\n fields[fieldName] = { read: (ptr) => getterReturnType[\"fromWireType\"](getter(getterContext, ptr)), write: (ptr, o) => {\n var destructors = [];\n setter(setterContext, ptr, setterArgumentType[\"toWireType\"](destructors, o));\n runDestructors(destructors);\n } };\n });\n return [{ name: reg.name, \"fromWireType\": function(ptr) {\n var rv = {};\n for (var i in fields) {\n rv[i] = fields[i].read(ptr);\n }\n rawDestructor(ptr);\n return rv;\n }, \"toWireType\": function(destructors, o) {\n for (var fieldName in fields) {\n if (!(fieldName in o)) {\n throw new TypeError(`Missing field: \"${fieldName}\"`);\n }\n }\n var ptr = rawConstructor();\n for (fieldName in fields) {\n fields[fieldName].write(ptr, o[fieldName]);\n }\n if (destructors !== null) {\n destructors.push(rawDestructor, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: rawDestructor }];\n });\n };\n function __embind_register_bigint(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError(`Unknown type size: ${size}`);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = void 0;\n function readLatin1String(ptr) {\n var ret = \"\";\n var c = ptr;\n while (HEAPU8[c >>> 0]) {\n ret += embind_charCodes[HEAPU8[c++ >>> 0]];\n }\n return ret;\n }\n var BindingError = void 0;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n function sharedRegisterType(rawType, registeredInstance, options = {}) {\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError(`type \"${name}\" must have a positive integer typeid pointer`);\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n } else {\n throwBindingError(`Cannot register type '${name}' twice`);\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach((cb) => cb());\n }\n }\n function registerType(rawType, registeredInstance, options = {}) {\n if (!(\"argPackAdvance\" in registeredInstance)) {\n throw new TypeError(\"registerType registeredInstance requires argPackAdvance\");\n }\n return sharedRegisterType(rawType, registeredInstance, options);\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(wt) {\n return !!wt;\n }, \"toWireType\": function(destructors, o) {\n return o ? trueValue : falseValue;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": function(pointer) {\n var heap;\n if (size === 1) {\n heap = HEAP8;\n } else if (size === 2) {\n heap = HEAP16;\n } else if (size === 4) {\n heap = HEAP32;\n } else {\n throw new TypeError(\"Unknown boolean type size: \" + name);\n }\n return this[\"fromWireType\"](heap[pointer >>> shift]);\n }, destructorFunction: null });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return { count: o.count, deleteScheduled: o.deleteScheduled, preservePointerOnDelete: o.preservePointerOnDelete, ptr: o.ptr, ptrType: o.ptrType, smartPtr: o.smartPtr, smartPtrType: o.smartPtrType };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + \" instance already deleted\");\n }\n var finalizationRegistry = false;\n function detachFinalizer(handle) {\n }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n } else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = $$.count.value === 0;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (desiredClass.baseClass === void 0) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n var registeredPointers = {};\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj[\"delete\"]();\n }\n }\n var delayFunction = void 0;\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module[\"getInheritedInstanceCount\"] = getInheritedInstanceCount;\n Module[\"getLiveInheritedInstances\"] = getLiveInheritedInstances;\n Module[\"flushPendingDeletes\"] = flushPendingDeletes;\n Module[\"setDelayFunction\"] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === void 0) {\n throwBindingError(\"ptr should not be undefined\");\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError(\"makeClassHandle requires ptr and ptrType\");\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError(\"Both smartPtrType and smartPtr must be specified\");\n }\n record.count = { value: 1 };\n return attachFinalizer(Object.create(prototype, { $$: { value: record } }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (registeredInstance !== void 0) {\n if (registeredInstance.$$.count.value === 0) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance[\"clone\"]();\n } else {\n var rv = registeredInstance[\"clone\"]();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this.pointeeType, ptr: rawPointer, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(this.registeredClass.instancePrototype, { ptrType: this, ptr });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n } else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp, smartPtrType: this, smartPtr: ptr });\n } else {\n return makeClassHandle(toType.registeredClass.instancePrototype, { ptrType: toType, ptr: dp });\n }\n }\n var attachFinalizer = function(handle) {\n if (typeof FinalizationRegistry === \"undefined\") {\n attachFinalizer = (handle2) => handle2;\n return handle;\n }\n finalizationRegistry = new FinalizationRegistry((info) => {\n releaseClassHandle(info.$$);\n });\n attachFinalizer = (handle2) => {\n var $$ = handle2.$$;\n var hasSmartPtr = !!$$.smartPtr;\n if (hasSmartPtr) {\n var info = { $$ };\n finalizationRegistry.register(handle2, info, handle2);\n }\n return handle2;\n };\n detachFinalizer = (handle2) => finalizationRegistry.unregister(handle2);\n return attachFinalizer(handle);\n };\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n } else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), { $$: { value: shallowCopyInternalPointer(this.$$) } }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = void 0;\n this.$$.ptr = void 0;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError(\"Object already scheduled for deletion\");\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype[\"isAliasOf\"] = ClassHandle_isAliasOf;\n ClassHandle.prototype[\"clone\"] = ClassHandle_clone;\n ClassHandle.prototype[\"delete\"] = ClassHandle_delete;\n ClassHandle.prototype[\"isDeleted\"] = ClassHandle_isDeleted;\n ClassHandle.prototype[\"deleteLater\"] = ClassHandle_deleteLater;\n }\n function ClassHandle() {\n }\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (name === void 0) {\n return \"_unknown\";\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, \"$\");\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return `_${name}`;\n }\n return name;\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return { [name]: function() {\n return body.apply(this, arguments);\n } }[name];\n }\n function ensureOverloadTable(proto, methodName, humanName) {\n if (proto[methodName].overloadTable === void 0) {\n var prevFunc = proto[methodName];\n proto[methodName] = function() {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (numArguments === void 0 || Module[name].overloadTable !== void 0 && Module[name].overloadTable[numArguments] !== void 0) {\n throwBindingError(`Cannot register public name '${name}' twice`);\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);\n }\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n if (numArguments !== void 0) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n } else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (handle.$$.smartPtr === void 0) {\n throwBindingError(\"Passing raw pointer to smart pointer is illegal\");\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n } else {\n var clonedHandle = handle[\"clone\"]();\n ptr = this.rawShare(ptr, Emval.toHandle(function() {\n clonedHandle[\"delete\"]();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError(\"Unsupporting sharing policy\");\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError(`null is not a valid ${this.name}`);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError(`Cannot pass \"${embindRepr(handle)}\" as a ${this.name}`);\n }\n if (!handle.$$.ptr) {\n throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle[\"delete\"]();\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype[\"argPackAdvance\"] = 8;\n RegisteredPointer.prototype[\"readValueFromPointer\"] = simpleReadValueFromPointer;\n RegisteredPointer.prototype[\"deleteObject\"] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype[\"fromWireType\"] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === void 0) {\n if (isConst) {\n this[\"toWireType\"] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n } else {\n this[\"toWireType\"] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n } else {\n this[\"toWireType\"] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError(\"Replacing nonexistant public symbol\");\n }\n if (Module[name].overloadTable !== void 0 && numArguments !== void 0) {\n Module[name].overloadTable[numArguments] = value;\n } else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n var dynCallLegacy = (sig, ptr, args) => {\n var f = Module[\"dynCall_\" + sig];\n return args && args.length ? f.apply(null, [ptr].concat(args)) : f.call(null, ptr);\n };\n var wasmTableMirror = [];\n var getWasmTableEntry = (funcPtr) => {\n var func = wasmTableMirror[funcPtr];\n if (!func) {\n if (funcPtr >= wasmTableMirror.length)\n wasmTableMirror.length = funcPtr + 1;\n wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);\n }\n return func;\n };\n var dynCall = (sig, ptr, args) => {\n if (sig.includes(\"j\")) {\n return dynCallLegacy(sig, ptr, args);\n }\n var rtn = getWasmTableEntry(ptr).apply(null, args);\n return rtn;\n };\n var getDynCaller = (sig, ptr) => {\n var argCache = [];\n return function() {\n argCache.length = 0;\n Object.assign(argCache, arguments);\n return dynCall(sig, ptr, argCache);\n };\n };\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller() {\n if (signature.includes(\"j\")) {\n return getDynCaller(signature, rawFunction);\n }\n return getWasmTableEntry(rawFunction);\n }\n var fp = makeDynCaller();\n if (typeof fp != \"function\") {\n throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);\n }\n return fp;\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function(message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== void 0) {\n this.stack = this.toString() + \"\\n\" + stack.replace(/^Error(:[^\\n]*)?\\n/, \"\");\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function() {\n if (this.message === void 0) {\n return this.name;\n } else {\n return `${this.name}: ${this.message}`;\n }\n };\n return errorClass;\n }\n var UnboundTypeError = void 0;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([\", \"]));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n rawPointerType >>>= 0;\n rawConstPointerType >>>= 0;\n baseClassRawType >>>= 0;\n getActualTypeSignature >>>= 0;\n getActualType >>>= 0;\n upcastSignature >>>= 0;\n upcast >>>= 0;\n downcastSignature >>>= 0;\n downcast >>>= 0;\n name >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function() {\n throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function(base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n } else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function() {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (registeredClass.constructor_body === void 0) {\n throw new BindingError(name + \" has no accessible constructor\");\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (body === void 0) {\n throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, { constructor: { value: constructor } });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n if (registeredClass.baseClass) {\n if (registeredClass.baseClass.__derivedClasses === void 0) {\n registeredClass.baseClass.__derivedClasses = [];\n }\n registeredClass.baseClass.__derivedClasses.push(registeredClass);\n }\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + \"*\", registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + \" const*\", registeredClass, false, true, false);\n registeredPointers[rawType] = { pointerType: pointerConverter, constPointerType: constPointerConverter };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(HEAPU32[firstElement + i * 4 >>> 2]);\n }\n return array;\n }\n function newFunc(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`);\n }\n var dummy = createNamedFunction(constructor.name || \"unknownFunctionName\", function() {\n });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === void 0) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== \"void\";\n var argsList = \"\";\n var argsListWired = \"\";\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? \", \" : \"\") + \"arg\" + i;\n argsListWired += (i !== 0 ? \", \" : \"\") + \"arg\" + i + \"Wired\";\n }\n var invokerFnBody = `\n return function ${makeLegalFunctionName(humanName)}(${argsList}) {\n if (arguments.length !== ${argCount - 2}) {\n throwBindingError('function ${humanName} called with ${arguments.length} arguments, expected ${argCount - 2} args!');\n }`;\n if (needsDestructorStack) {\n invokerFnBody += \"var destructors = [];\\n\";\n }\n var dtorStack = needsDestructorStack ? \"destructors\" : \"null\";\n var args1 = [\"throwBindingError\", \"invoker\", \"fn\", \"runDestructors\", \"retType\", \"classParam\"];\n var args2 = [throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, argTypes[0], argTypes[1]];\n if (isClassMethodFunc) {\n invokerFnBody += \"var thisWired = classParam.toWireType(\" + dtorStack + \", this);\\n\";\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody += \"var arg\" + i + \"Wired = argType\" + i + \".toWireType(\" + dtorStack + \", arg\" + i + \"); // \" + argTypes[i + 2].name + \"\\n\";\n args1.push(\"argType\" + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = \"thisWired\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired;\n }\n invokerFnBody += (returns || isAsync ? \"var rv = \" : \"\") + \"invoker(fn\" + (argsListWired.length > 0 ? \", \" : \"\") + argsListWired + \");\\n\";\n if (needsDestructorStack) {\n invokerFnBody += \"runDestructors(destructors);\\n\";\n } else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? \"thisWired\" : \"arg\" + (i - 2) + \"Wired\";\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + \"_dtor(\" + paramName + \"); // \" + argTypes[i].name + \"\\n\";\n args1.push(paramName + \"_dtor\");\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += \"var ret = retType.fromWireType(rv);\\nreturn ret;\\n\";\n } else {\n }\n invokerFnBody += \"}\\n\";\n args1.push(invokerFnBody);\n return newFunc(Function, args1).apply(null, args2);\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n rawClassType >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n invoker >>>= 0;\n rawConstructor >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `constructor ${classType.name}`;\n if (classType.registeredClass.constructor_body === void 0) {\n classType.registeredClass.constructor_body = [];\n }\n if (classType.registeredClass.constructor_body[argCount - 1] !== void 0) {\n throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount - 1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);\n }\n classType.registeredClass.constructor_body[argCount - 1] = () => {\n throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`, rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n argTypes.splice(1, 0, null);\n classType.registeredClass.constructor_body[argCount - 1] = craftInvokerFunction(humanName, argTypes, null, invoker, rawConstructor);\n return [];\n });\n return [];\n });\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual, isAsync) {\n rawClassType >>>= 0;\n methodName >>>= 0;\n rawArgTypesAddr >>>= 0;\n invokerSignature >>>= 0;\n rawInvoker >>>= 0;\n context >>>= 0;\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function(classType) {\n classType = classType[0];\n var humanName = `${classType.name}.${methodName}`;\n if (methodName.startsWith(\"@@\")) {\n methodName = Symbol[methodName.substring(2)];\n }\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (method === void 0 || method.overloadTable === void 0 && method.className !== classType.name && method.argCount === argCount - 2) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n } else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync);\n if (proto[methodName].overloadTable === void 0) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n } else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n function handleAllocatorInit() {\n Object.assign(HandleAllocator.prototype, { get(id) {\n return this.allocated[id];\n }, has(id) {\n return this.allocated[id] !== void 0;\n }, allocate(handle) {\n var id = this.freelist.pop() || this.allocated.length;\n this.allocated[id] = handle;\n return id;\n }, free(id) {\n this.allocated[id] = void 0;\n this.freelist.push(id);\n } });\n }\n function HandleAllocator() {\n this.allocated = [void 0];\n this.freelist = [];\n }\n var emval_handles = new HandleAllocator();\n function __emval_decref(handle) {\n handle >>>= 0;\n if (handle >= emval_handles.reserved && --emval_handles.get(handle).refcount === 0) {\n emval_handles.free(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {\n if (emval_handles.allocated[i] !== void 0) {\n ++count;\n }\n }\n return count;\n }\n function init_emval() {\n emval_handles.allocated.push({ value: void 0 }, { value: null }, { value: true }, { value: false });\n emval_handles.reserved = emval_handles.allocated.length;\n Module[\"count_emval_handles\"] = count_emval_handles;\n }\n var Emval = { toValue: (handle) => {\n if (!handle) {\n throwBindingError(\"Cannot use deleted val. handle = \" + handle);\n }\n return emval_handles.get(handle).value;\n }, toHandle: (value) => {\n switch (value) {\n case void 0:\n return 1;\n case null:\n return 2;\n case true:\n return 3;\n case false:\n return 4;\n default: {\n return emval_handles.allocate({ refcount: 1, value });\n }\n }\n } };\n function __embind_register_emval(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(handle) {\n var rv = Emval.toValue(handle);\n __emval_decref(handle);\n return rv;\n }, \"toWireType\": function(destructors, value) {\n return Emval.toHandle(value);\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: null });\n }\n function embindRepr(v) {\n if (v === null) {\n return \"null\";\n }\n var t = typeof v;\n if (t === \"object\" || t === \"array\" || t === \"function\") {\n return v.toString();\n } else {\n return \"\" + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function(pointer) {\n return this[\"fromWireType\"](HEAPF32[pointer >>> 2]);\n };\n case 3:\n return function(pointer) {\n return this[\"fromWireType\"](HEAPF64[pointer >>> 3]);\n };\n default:\n throw new TypeError(\"Unknown float type: \" + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n rawType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": function(value) {\n return value;\n }, \"toWireType\": function(destructors, value) {\n return value;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": floatReadValueFromPointer(name, shift), destructorFunction: null });\n }\n function __embind_register_function(name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) {\n name >>>= 0;\n rawArgTypesAddr >>>= 0;\n signature >>>= 0;\n rawInvoker >>>= 0;\n fn >>>= 0;\n var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n name = readLatin1String(name);\n rawInvoker = embind__requireFunction(signature, rawInvoker);\n exposePublicSymbol(name, function() {\n throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes);\n }, argCount - 1);\n whenDependentTypesAreResolved([], argTypes, function(argTypes2) {\n var invokerArgsArray = [argTypes2[0], null].concat(argTypes2.slice(1));\n replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null, rawInvoker, fn, isAsync), argCount - 1);\n return [];\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed ? function readS8FromPointer(pointer) {\n return HEAP8[pointer >>> 0];\n } : function readU8FromPointer(pointer) {\n return HEAPU8[pointer >>> 0];\n };\n case 1:\n return signed ? function readS16FromPointer(pointer) {\n return HEAP16[pointer >>> 1];\n } : function readU16FromPointer(pointer) {\n return HEAPU16[pointer >>> 1];\n };\n case 2:\n return signed ? function readS32FromPointer(pointer) {\n return HEAP32[pointer >>> 2];\n } : function readU32FromPointer(pointer) {\n return HEAPU32[pointer >>> 2];\n };\n default:\n throw new TypeError(\"Unknown integer type: \" + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n primitiveType >>>= 0;\n name >>>= 0;\n size >>>= 0;\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = (value) => value;\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = (value) => value << bitshift >>> bitshift;\n }\n var isUnsignedType = name.includes(\"unsigned\");\n var checkAssertions = (value, toTypeName) => {\n };\n var toWireType;\n if (isUnsignedType) {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value >>> 0;\n };\n } else {\n toWireType = function(destructors, value) {\n checkAssertions(value, this.name);\n return value;\n };\n }\n registerType(primitiveType, { name, \"fromWireType\": fromWireType, \"toWireType\": toWireType, \"argPackAdvance\": 8, \"readValueFromPointer\": integerReadValueFromPointer(name, shift, minRange !== 0), destructorFunction: null });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n rawType >>>= 0;\n name >>>= 0;\n var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = HEAPU32;\n var size = heap[handle >>> 0];\n var data = heap[handle + 1 >>> 0];\n return new TA(heap.buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, { name, \"fromWireType\": decodeMemoryView, \"argPackAdvance\": 8, \"readValueFromPointer\": decodeMemoryView }, { ignoreDuplicateRegistrations: true });\n }\n var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {\n outIdx >>>= 0;\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = 65536 + ((u & 1023) << 10) | u1 & 1023;\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++ >>> 0] = u;\n } else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 192 | u >> 6;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 224 | u >> 12;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n } else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++ >>> 0] = 240 | u >> 18;\n heap[outIdx++ >>> 0] = 128 | u >> 12 & 63;\n heap[outIdx++ >>> 0] = 128 | u >> 6 & 63;\n heap[outIdx++ >>> 0] = 128 | u & 63;\n }\n }\n heap[outIdx >>> 0] = 0;\n return outIdx - startIdx;\n };\n var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);\n var lengthBytesUTF8 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var c = str.charCodeAt(i);\n if (c <= 127) {\n len++;\n } else if (c <= 2047) {\n len += 2;\n } else if (c >= 55296 && c <= 57343) {\n len += 4;\n ++i;\n } else {\n len += 3;\n }\n }\n return len;\n };\n var UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => {\n idx >>>= 0;\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n var str = \"\";\n while (idx < endPtr) {\n var u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n var u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n };\n var UTF8ToString = (ptr, maxBytesToRead) => {\n ptr >>>= 0;\n return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : \"\";\n };\n function __embind_register_std_string(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === \"std::string\";\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = HEAPU32[value >>> 2];\n var payload = value + 4;\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = payload;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = payload + i;\n if (i == length || HEAPU8[currentBytePtr >>> 0] == 0) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n } else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(HEAPU8[payload + i >>> 0]);\n }\n str = a.join(\"\");\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var length;\n var valueIsOfTypeString = typeof value == \"string\";\n if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {\n throwBindingError(\"Cannot pass non-string to std::string\");\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n length = lengthBytesUTF8(value);\n } else {\n length = value.length;\n }\n var base = _malloc(4 + length + 1);\n var ptr = base + 4;\n HEAPU32[base >>> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr, length + 1);\n } else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError(\"String has UTF-16 code units that do not fit in 8 bits\");\n }\n HEAPU8[ptr + i >>> 0] = charCode;\n }\n } else {\n for (var i = 0; i < length; ++i) {\n HEAPU8[ptr + i >>> 0] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, base);\n }\n return base;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n }\n var UTF16Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf-16le\") : void 0;\n var UTF16ToString = (ptr, maxBytesToRead) => {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && HEAPU16[idx >>> 0])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder)\n return UTF16Decoder.decode(HEAPU8.subarray(ptr >>> 0, endPtr >>> 0));\n var str = \"\";\n for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {\n var codeUnit = HEAP16[ptr + i * 2 >>> 1];\n if (codeUnit == 0)\n break;\n str += String.fromCharCode(codeUnit);\n }\n return str;\n };\n var stringToUTF16 = (str, outPtr, maxBytesToWrite) => {\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n HEAP16[outPtr >>> 1] = codeUnit;\n outPtr += 2;\n }\n HEAP16[outPtr >>> 1] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF16 = (str) => str.length * 2;\n var UTF32ToString = (ptr, maxBytesToRead) => {\n var i = 0;\n var str = \"\";\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = HEAP32[ptr + i * 4 >>> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n } else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n };\n var stringToUTF32 = (str, outPtr, maxBytesToWrite) => {\n outPtr >>>= 0;\n if (maxBytesToWrite === void 0) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = 65536 + ((codeUnit & 1023) << 10) | trailSurrogate & 1023;\n }\n HEAP32[outPtr >>> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n HEAP32[outPtr >>> 2] = 0;\n return outPtr - startPtr;\n };\n var lengthBytesUTF32 = (str) => {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n };\n var __embind_register_std_wstring = function(rawType, charSize, name) {\n rawType >>>= 0;\n charSize >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = () => HEAPU16;\n shift = 1;\n } else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = () => HEAPU32;\n shift = 2;\n }\n registerType(rawType, { name, \"fromWireType\": function(value) {\n var length = HEAPU32[value >>> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (i == length || HEAP[currentBytePtr >>> shift] == 0) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === void 0) {\n str = stringSegment;\n } else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n }, \"toWireType\": function(destructors, value) {\n if (!(typeof value == \"string\")) {\n throwBindingError(`Cannot pass non-string to C++ string type ${name}`);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n HEAPU32[ptr >>> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n }, \"argPackAdvance\": 8, \"readValueFromPointer\": simpleReadValueFromPointer, destructorFunction: function(ptr) {\n _free(ptr);\n } });\n };\n function __embind_register_value_array(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n tupleRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), elements: [] };\n }\n function __embind_register_value_array_element(rawTupleType, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n rawTupleType >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n tupleRegistrations[rawTupleType].elements.push({ getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_value_object(rawType, name, constructorSignature, rawConstructor, destructorSignature, rawDestructor) {\n rawType >>>= 0;\n name >>>= 0;\n constructorSignature >>>= 0;\n rawConstructor >>>= 0;\n destructorSignature >>>= 0;\n rawDestructor >>>= 0;\n structRegistrations[rawType] = { name: readLatin1String(name), rawConstructor: embind__requireFunction(constructorSignature, rawConstructor), rawDestructor: embind__requireFunction(destructorSignature, rawDestructor), fields: [] };\n }\n function __embind_register_value_object_field(structType, fieldName, getterReturnType, getterSignature, getter, getterContext, setterArgumentType, setterSignature, setter, setterContext) {\n structType >>>= 0;\n fieldName >>>= 0;\n getterReturnType >>>= 0;\n getterSignature >>>= 0;\n getter >>>= 0;\n getterContext >>>= 0;\n setterArgumentType >>>= 0;\n setterSignature >>>= 0;\n setter >>>= 0;\n setterContext >>>= 0;\n structRegistrations[structType].fields.push({ fieldName: readLatin1String(fieldName), getterReturnType, getter: embind__requireFunction(getterSignature, getter), getterContext, setterArgumentType, setter: embind__requireFunction(setterSignature, setter), setterContext });\n }\n function __embind_register_void(rawType, name) {\n rawType >>>= 0;\n name >>>= 0;\n name = readLatin1String(name);\n registerType(rawType, { isVoid: true, name, \"argPackAdvance\": 0, \"fromWireType\": function() {\n return void 0;\n }, \"toWireType\": function(destructors, o) {\n return void 0;\n } });\n }\n var nowIsMonotonic = true;\n var __emscripten_get_now_is_monotonic = () => nowIsMonotonic;\n function requireRegisteredType(rawType, humanName) {\n var impl = registeredTypes[rawType];\n if (impl === void 0) {\n throwBindingError(humanName + \" has unknown type \" + getTypeName(rawType));\n }\n return impl;\n }\n function __emval_as(handle, returnType, destructorsRef) {\n handle >>>= 0;\n returnType >>>= 0;\n destructorsRef >>>= 0;\n handle = Emval.toValue(handle);\n returnType = requireRegisteredType(returnType, \"emval::as\");\n var destructors = [];\n var rd = Emval.toHandle(destructors);\n HEAPU32[destructorsRef >>> 2] = rd;\n return returnType[\"toWireType\"](destructors, handle);\n }\n function emval_lookupTypes(argCount, argTypes) {\n var a = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n a[i] = requireRegisteredType(HEAPU32[argTypes + i * 4 >>> 2], \"parameter \" + i);\n }\n return a;\n }\n function __emval_call(handle, argCount, argTypes, argv) {\n handle >>>= 0;\n argTypes >>>= 0;\n argv >>>= 0;\n handle = Emval.toValue(handle);\n var types = emval_lookupTypes(argCount, argTypes);\n var args = new Array(argCount);\n for (var i = 0; i < argCount; ++i) {\n var type = types[i];\n args[i] = type[\"readValueFromPointer\"](argv);\n argv += type[\"argPackAdvance\"];\n }\n var rv = handle.apply(void 0, args);\n return Emval.toHandle(rv);\n }\n var emval_symbols = {};\n function getStringOrSymbol(address) {\n var symbol = emval_symbols[address];\n if (symbol === void 0) {\n return readLatin1String(address);\n }\n return symbol;\n }\n function emval_get_global() {\n if (typeof globalThis == \"object\") {\n return globalThis;\n }\n return function() {\n return Function;\n }()(\"return this\")();\n }\n function __emval_get_global(name) {\n name >>>= 0;\n if (name === 0) {\n return Emval.toHandle(emval_get_global());\n } else {\n name = getStringOrSymbol(name);\n return Emval.toHandle(emval_get_global()[name]);\n }\n }\n function __emval_get_property(handle, key) {\n handle >>>= 0;\n key >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n return Emval.toHandle(handle[key]);\n }\n function __emval_incref(handle) {\n handle >>>= 0;\n if (handle > 4) {\n emval_handles.get(handle).refcount += 1;\n }\n }\n function __emval_instanceof(object, constructor) {\n object >>>= 0;\n constructor >>>= 0;\n object = Emval.toValue(object);\n constructor = Emval.toValue(constructor);\n return object instanceof constructor;\n }\n function __emval_is_number(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"number\";\n }\n function __emval_is_string(handle) {\n handle >>>= 0;\n handle = Emval.toValue(handle);\n return typeof handle == \"string\";\n }\n function __emval_new_array() {\n return Emval.toHandle([]);\n }\n function __emval_new_cstring(v) {\n v >>>= 0;\n return Emval.toHandle(getStringOrSymbol(v));\n }\n function __emval_new_object() {\n return Emval.toHandle({});\n }\n function __emval_run_destructors(handle) {\n handle >>>= 0;\n var destructors = Emval.toValue(handle);\n runDestructors(destructors);\n __emval_decref(handle);\n }\n function __emval_set_property(handle, key, value) {\n handle >>>= 0;\n key >>>= 0;\n value >>>= 0;\n handle = Emval.toValue(handle);\n key = Emval.toValue(key);\n value = Emval.toValue(value);\n handle[key] = value;\n }\n function __emval_take_value(type, arg) {\n type >>>= 0;\n arg >>>= 0;\n type = requireRegisteredType(type, \"_emval_take_value\");\n var v = type[\"readValueFromPointer\"](arg);\n return Emval.toHandle(v);\n }\n function __gmtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n HEAP32[tmPtr >>> 2] = date.getUTCSeconds();\n HEAP32[tmPtr + 4 >>> 2] = date.getUTCMinutes();\n HEAP32[tmPtr + 8 >>> 2] = date.getUTCHours();\n HEAP32[tmPtr + 12 >>> 2] = date.getUTCDate();\n HEAP32[tmPtr + 16 >>> 2] = date.getUTCMonth();\n HEAP32[tmPtr + 20 >>> 2] = date.getUTCFullYear() - 1900;\n HEAP32[tmPtr + 24 >>> 2] = date.getUTCDay();\n var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);\n var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;\n HEAP32[tmPtr + 28 >>> 2] = yday;\n }\n var isLeapYear = (year) => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n var MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n var MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];\n var ydayFromDate = (date) => {\n var leap = isLeapYear(date.getFullYear());\n var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE;\n var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1;\n return yday;\n };\n function __localtime_js(time_low, time_high, tmPtr) {\n var time = convertI32PairToI53Checked(time_low, time_high);\n tmPtr >>>= 0;\n var date = new Date(time * 1e3);\n HEAP32[tmPtr >>> 2] = date.getSeconds();\n HEAP32[tmPtr + 4 >>> 2] = date.getMinutes();\n HEAP32[tmPtr + 8 >>> 2] = date.getHours();\n HEAP32[tmPtr + 12 >>> 2] = date.getDate();\n HEAP32[tmPtr + 16 >>> 2] = date.getMonth();\n HEAP32[tmPtr + 20 >>> 2] = date.getFullYear() - 1900;\n HEAP32[tmPtr + 24 >>> 2] = date.getDay();\n var yday = ydayFromDate(date) | 0;\n HEAP32[tmPtr + 28 >>> 2] = yday;\n HEAP32[tmPtr + 36 >>> 2] = -(date.getTimezoneOffset() * 60);\n var start = new Date(date.getFullYear(), 0, 1);\n var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset();\n var winterOffset = start.getTimezoneOffset();\n var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;\n HEAP32[tmPtr + 32 >>> 2] = dst;\n }\n var stringToNewUTF8 = (str) => {\n var size = lengthBytesUTF8(str) + 1;\n var ret = _malloc(size);\n if (ret)\n stringToUTF8(str, ret, size);\n return ret;\n };\n function __tzset_js(timezone, daylight, tzname) {\n timezone >>>= 0;\n daylight >>>= 0;\n tzname >>>= 0;\n var currentYear = new Date().getFullYear();\n var winter = new Date(currentYear, 0, 1);\n var summer = new Date(currentYear, 6, 1);\n var winterOffset = winter.getTimezoneOffset();\n var summerOffset = summer.getTimezoneOffset();\n var stdTimezoneOffset = Math.max(winterOffset, summerOffset);\n HEAPU32[timezone >>> 2] = stdTimezoneOffset * 60;\n HEAP32[daylight >>> 2] = Number(winterOffset != summerOffset);\n function extractZone(date) {\n var match = date.toTimeString().match(/\\(([A-Za-z ]+)\\)$/);\n return match ? match[1] : \"GMT\";\n }\n var winterName = extractZone(winter);\n var summerName = extractZone(summer);\n var winterNamePtr = stringToNewUTF8(winterName);\n var summerNamePtr = stringToNewUTF8(summerName);\n if (summerOffset < winterOffset) {\n HEAPU32[tzname >>> 2] = winterNamePtr;\n HEAPU32[tzname + 4 >>> 2] = summerNamePtr;\n } else {\n HEAPU32[tzname >>> 2] = summerNamePtr;\n HEAPU32[tzname + 4 >>> 2] = winterNamePtr;\n }\n }\n var _abort = () => {\n abort(\"\");\n };\n function _emscripten_date_now() {\n return Date.now();\n }\n var _emscripten_get_now;\n _emscripten_get_now = () => performance.now();\n function _emscripten_memcpy_big(dest, src, num) {\n dest >>>= 0;\n src >>>= 0;\n num >>>= 0;\n return HEAPU8.copyWithin(dest >>> 0, src >>> 0, src + num >>> 0);\n }\n var getHeapMax = () => 4294901760;\n var growMemory = (size) => {\n var b = wasmMemory.buffer;\n var pages = size - b.byteLength + 65535 >>> 16;\n try {\n wasmMemory.grow(pages);\n updateMemoryViews();\n return 1;\n } catch (e) {\n }\n };\n function _emscripten_resize_heap(requestedSize) {\n requestedSize >>>= 0;\n var oldSize = HEAPU8.length;\n var maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize) {\n return false;\n }\n var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\n for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {\n var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n var replacement = growMemory(newSize);\n if (replacement) {\n return true;\n }\n }\n return false;\n }\n var ENV = {};\n var getExecutableName = () => thisProgram || \"./this.program\";\n var getEnvStrings = () => {\n if (!getEnvStrings.strings) {\n var lang = (typeof navigator == \"object\" && navigator.languages && navigator.languages[0] || \"C\").replace(\"-\", \"_\") + \".UTF-8\";\n var env = { \"USER\": \"web_user\", \"LOGNAME\": \"web_user\", \"PATH\": \"/\", \"PWD\": \"/\", \"HOME\": \"/home/web_user\", \"LANG\": lang, \"_\": getExecutableName() };\n for (var x in ENV) {\n if (ENV[x] === void 0)\n delete env[x];\n else\n env[x] = ENV[x];\n }\n var strings = [];\n for (var x in env) {\n strings.push(`${x}=${env[x]}`);\n }\n getEnvStrings.strings = strings;\n }\n return getEnvStrings.strings;\n };\n var stringToAscii = (str, buffer) => {\n for (var i = 0; i < str.length; ++i) {\n HEAP8[buffer++ >>> 0] = str.charCodeAt(i);\n }\n HEAP8[buffer >>> 0] = 0;\n };\n var PATH = { isAbs: (path) => path.charAt(0) === \"/\", splitPath: (filename) => {\n var splitPathRe = /^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/;\n return splitPathRe.exec(filename).slice(1);\n }, normalizeArray: (parts, allowAboveRoot) => {\n var up = 0;\n for (var i = parts.length - 1; i >= 0; i--) {\n var last = parts[i];\n if (last === \".\") {\n parts.splice(i, 1);\n } else if (last === \"..\") {\n parts.splice(i, 1);\n up++;\n } else if (up) {\n parts.splice(i, 1);\n up--;\n }\n }\n if (allowAboveRoot) {\n for (; up; up--) {\n parts.unshift(\"..\");\n }\n }\n return parts;\n }, normalize: (path) => {\n var isAbsolute = PATH.isAbs(path), trailingSlash = path.substr(-1) === \"/\";\n path = PATH.normalizeArray(path.split(\"/\").filter((p) => !!p), !isAbsolute).join(\"/\");\n if (!path && !isAbsolute) {\n path = \".\";\n }\n if (path && trailingSlash) {\n path += \"/\";\n }\n return (isAbsolute ? \"/\" : \"\") + path;\n }, dirname: (path) => {\n var result = PATH.splitPath(path), root = result[0], dir = result[1];\n if (!root && !dir) {\n return \".\";\n }\n if (dir) {\n dir = dir.substr(0, dir.length - 1);\n }\n return root + dir;\n }, basename: (path) => {\n if (path === \"/\")\n return \"/\";\n path = PATH.normalize(path);\n path = path.replace(/\\/$/, \"\");\n var lastSlash = path.lastIndexOf(\"/\");\n if (lastSlash === -1)\n return path;\n return path.substr(lastSlash + 1);\n }, join: function() {\n var paths = Array.prototype.slice.call(arguments);\n return PATH.normalize(paths.join(\"/\"));\n }, join2: (l, r) => PATH.normalize(l + \"/\" + r) };\n var initRandomFill = () => {\n if (typeof crypto == \"object\" && typeof crypto[\"getRandomValues\"] == \"function\") {\n return (view) => crypto.getRandomValues(view);\n } else\n abort(\"initRandomDevice\");\n };\n var randomFill = (view) => (randomFill = initRandomFill())(view);\n var PATH_FS = { resolve: function() {\n var resolvedPath = \"\", resolvedAbsolute = false;\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path = i >= 0 ? arguments[i] : FS.cwd();\n if (typeof path != \"string\") {\n throw new TypeError(\"Arguments to path.resolve must be strings\");\n } else if (!path) {\n return \"\";\n }\n resolvedPath = path + \"/\" + resolvedPath;\n resolvedAbsolute = PATH.isAbs(path);\n }\n resolvedPath = PATH.normalizeArray(resolvedPath.split(\"/\").filter((p) => !!p), !resolvedAbsolute).join(\"/\");\n return (resolvedAbsolute ? \"/\" : \"\") + resolvedPath || \".\";\n }, relative: (from, to) => {\n from = PATH_FS.resolve(from).substr(1);\n to = PATH_FS.resolve(to).substr(1);\n function trim(arr) {\n var start = 0;\n for (; start < arr.length; start++) {\n if (arr[start] !== \"\")\n break;\n }\n var end = arr.length - 1;\n for (; end >= 0; end--) {\n if (arr[end] !== \"\")\n break;\n }\n if (start > end)\n return [];\n return arr.slice(start, end - start + 1);\n }\n var fromParts = trim(from.split(\"/\"));\n var toParts = trim(to.split(\"/\"));\n var length = Math.min(fromParts.length, toParts.length);\n var samePartsLength = length;\n for (var i = 0; i < length; i++) {\n if (fromParts[i] !== toParts[i]) {\n samePartsLength = i;\n break;\n }\n }\n var outputParts = [];\n for (var i = samePartsLength; i < fromParts.length; i++) {\n outputParts.push(\"..\");\n }\n outputParts = outputParts.concat(toParts.slice(samePartsLength));\n return outputParts.join(\"/\");\n } };\n var FS_stdin_getChar_buffer = [];\n function intArrayFromString(stringy, dontAddNull, length) {\n var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;\n var u8array = new Array(len);\n var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);\n if (dontAddNull)\n u8array.length = numBytesWritten;\n return u8array;\n }\n var FS_stdin_getChar = () => {\n if (!FS_stdin_getChar_buffer.length) {\n var result = null;\n if (typeof window != \"undefined\" && typeof window.prompt == \"function\") {\n result = window.prompt(\"Input: \");\n if (result !== null) {\n result += \"\\n\";\n }\n } else if (typeof readline == \"function\") {\n result = readline();\n if (result !== null) {\n result += \"\\n\";\n }\n }\n if (!result) {\n return null;\n }\n FS_stdin_getChar_buffer = intArrayFromString(result, true);\n }\n return FS_stdin_getChar_buffer.shift();\n };\n var TTY = { ttys: [], init: function() {\n }, shutdown: function() {\n }, register: function(dev, ops) {\n TTY.ttys[dev] = { input: [], output: [], ops };\n FS.registerDevice(dev, TTY.stream_ops);\n }, stream_ops: { open: function(stream) {\n var tty = TTY.ttys[stream.node.rdev];\n if (!tty) {\n throw new FS.ErrnoError(43);\n }\n stream.tty = tty;\n stream.seekable = false;\n }, close: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, fsync: function(stream) {\n stream.tty.ops.fsync(stream.tty);\n }, read: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.get_char) {\n throw new FS.ErrnoError(60);\n }\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = stream.tty.ops.get_char(stream.tty);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: function(stream, buffer, offset, length, pos) {\n if (!stream.tty || !stream.tty.ops.put_char) {\n throw new FS.ErrnoError(60);\n }\n try {\n for (var i = 0; i < length; i++) {\n stream.tty.ops.put_char(stream.tty, buffer[offset + i]);\n }\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } }, default_tty_ops: { get_char: function(tty) {\n return FS_stdin_getChar();\n }, put_char: function(tty, val) {\n if (val === null || val === 10) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n out(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n }, ioctl_tcgets: function(tty) {\n return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };\n }, ioctl_tcsets: function(tty, optional_actions, data) {\n return 0;\n }, ioctl_tiocgwinsz: function(tty) {\n return [24, 80];\n } }, default_tty1_ops: { put_char: function(tty, val) {\n if (val === null || val === 10) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n } else {\n if (val != 0)\n tty.output.push(val);\n }\n }, fsync: function(tty) {\n if (tty.output && tty.output.length > 0) {\n err(UTF8ArrayToString(tty.output, 0));\n tty.output = [];\n }\n } } };\n var mmapAlloc = (size) => {\n abort();\n };\n var MEMFS = { ops_table: null, mount(mount) {\n return MEMFS.createNode(null, \"/\", 16384 | 511, 0);\n }, createNode(parent, name, mode, dev) {\n if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {\n throw new FS.ErrnoError(63);\n }\n if (!MEMFS.ops_table) {\n MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } };\n }\n var node = FS.createNode(parent, name, mode, dev);\n if (FS.isDir(node.mode)) {\n node.node_ops = MEMFS.ops_table.dir.node;\n node.stream_ops = MEMFS.ops_table.dir.stream;\n node.contents = {};\n } else if (FS.isFile(node.mode)) {\n node.node_ops = MEMFS.ops_table.file.node;\n node.stream_ops = MEMFS.ops_table.file.stream;\n node.usedBytes = 0;\n node.contents = null;\n } else if (FS.isLink(node.mode)) {\n node.node_ops = MEMFS.ops_table.link.node;\n node.stream_ops = MEMFS.ops_table.link.stream;\n } else if (FS.isChrdev(node.mode)) {\n node.node_ops = MEMFS.ops_table.chrdev.node;\n node.stream_ops = MEMFS.ops_table.chrdev.stream;\n }\n node.timestamp = Date.now();\n if (parent) {\n parent.contents[name] = node;\n parent.timestamp = node.timestamp;\n }\n return node;\n }, getFileDataAsTypedArray(node) {\n if (!node.contents)\n return new Uint8Array(0);\n if (node.contents.subarray)\n return node.contents.subarray(0, node.usedBytes);\n return new Uint8Array(node.contents);\n }, expandFileStorage(node, newCapacity) {\n var prevCapacity = node.contents ? node.contents.length : 0;\n if (prevCapacity >= newCapacity)\n return;\n var CAPACITY_DOUBLING_MAX = 1024 * 1024;\n newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0);\n if (prevCapacity != 0)\n newCapacity = Math.max(newCapacity, 256);\n var oldContents = node.contents;\n node.contents = new Uint8Array(newCapacity);\n if (node.usedBytes > 0)\n node.contents.set(oldContents.subarray(0, node.usedBytes), 0);\n }, resizeFileStorage(node, newSize) {\n if (node.usedBytes == newSize)\n return;\n if (newSize == 0) {\n node.contents = null;\n node.usedBytes = 0;\n } else {\n var oldContents = node.contents;\n node.contents = new Uint8Array(newSize);\n if (oldContents) {\n node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));\n }\n node.usedBytes = newSize;\n }\n }, node_ops: { getattr(node) {\n var attr = {};\n attr.dev = FS.isChrdev(node.mode) ? node.id : 1;\n attr.ino = node.id;\n attr.mode = node.mode;\n attr.nlink = 1;\n attr.uid = 0;\n attr.gid = 0;\n attr.rdev = node.rdev;\n if (FS.isDir(node.mode)) {\n attr.size = 4096;\n } else if (FS.isFile(node.mode)) {\n attr.size = node.usedBytes;\n } else if (FS.isLink(node.mode)) {\n attr.size = node.link.length;\n } else {\n attr.size = 0;\n }\n attr.atime = new Date(node.timestamp);\n attr.mtime = new Date(node.timestamp);\n attr.ctime = new Date(node.timestamp);\n attr.blksize = 4096;\n attr.blocks = Math.ceil(attr.size / attr.blksize);\n return attr;\n }, setattr(node, attr) {\n if (attr.mode !== void 0) {\n node.mode = attr.mode;\n }\n if (attr.timestamp !== void 0) {\n node.timestamp = attr.timestamp;\n }\n if (attr.size !== void 0) {\n MEMFS.resizeFileStorage(node, attr.size);\n }\n }, lookup(parent, name) {\n throw FS.genericErrors[44];\n }, mknod(parent, name, mode, dev) {\n return MEMFS.createNode(parent, name, mode, dev);\n }, rename(old_node, new_dir, new_name) {\n if (FS.isDir(old_node.mode)) {\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (new_node) {\n for (var i in new_node.contents) {\n throw new FS.ErrnoError(55);\n }\n }\n }\n delete old_node.parent.contents[old_node.name];\n old_node.parent.timestamp = Date.now();\n old_node.name = new_name;\n new_dir.contents[new_name] = old_node;\n new_dir.timestamp = old_node.parent.timestamp;\n old_node.parent = new_dir;\n }, unlink(parent, name) {\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, rmdir(parent, name) {\n var node = FS.lookupNode(parent, name);\n for (var i in node.contents) {\n throw new FS.ErrnoError(55);\n }\n delete parent.contents[name];\n parent.timestamp = Date.now();\n }, readdir(node) {\n var entries = [\".\", \"..\"];\n for (var key in node.contents) {\n if (!node.contents.hasOwnProperty(key)) {\n continue;\n }\n entries.push(key);\n }\n return entries;\n }, symlink(parent, newname, oldpath) {\n var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);\n node.link = oldpath;\n return node;\n }, readlink(node) {\n if (!FS.isLink(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n return node.link;\n } }, stream_ops: { read(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= stream.node.usedBytes)\n return 0;\n var size = Math.min(stream.node.usedBytes - position, length);\n if (size > 8 && contents.subarray) {\n buffer.set(contents.subarray(position, position + size), offset);\n } else {\n for (var i = 0; i < size; i++)\n buffer[offset + i] = contents[position + i];\n }\n return size;\n }, write(stream, buffer, offset, length, position, canOwn) {\n if (buffer.buffer === HEAP8.buffer) {\n canOwn = false;\n }\n if (!length)\n return 0;\n var node = stream.node;\n node.timestamp = Date.now();\n if (buffer.subarray && (!node.contents || node.contents.subarray)) {\n if (canOwn) {\n node.contents = buffer.subarray(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (node.usedBytes === 0 && position === 0) {\n node.contents = buffer.slice(offset, offset + length);\n node.usedBytes = length;\n return length;\n } else if (position + length <= node.usedBytes) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n return length;\n }\n }\n MEMFS.expandFileStorage(node, position + length);\n if (node.contents.subarray && buffer.subarray) {\n node.contents.set(buffer.subarray(offset, offset + length), position);\n } else {\n for (var i = 0; i < length; i++) {\n node.contents[position + i] = buffer[offset + i];\n }\n }\n node.usedBytes = Math.max(node.usedBytes, position + length);\n return length;\n }, llseek(stream, offset, whence) {\n var position = offset;\n if (whence === 1) {\n position += stream.position;\n } else if (whence === 2) {\n if (FS.isFile(stream.node.mode)) {\n position += stream.node.usedBytes;\n }\n }\n if (position < 0) {\n throw new FS.ErrnoError(28);\n }\n return position;\n }, allocate(stream, offset, length) {\n MEMFS.expandFileStorage(stream.node, offset + length);\n stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);\n }, mmap(stream, length, position, prot, flags) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n var ptr;\n var allocated;\n var contents = stream.node.contents;\n if (!(flags & 2) && contents.buffer === HEAP8.buffer) {\n allocated = false;\n ptr = contents.byteOffset;\n } else {\n if (position > 0 || position + length < contents.length) {\n if (contents.subarray) {\n contents = contents.subarray(position, position + length);\n } else {\n contents = Array.prototype.slice.call(contents, position, position + length);\n }\n }\n allocated = true;\n ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n HEAP8.set(contents, ptr >>> 0);\n }\n return { ptr, allocated };\n }, msync(stream, buffer, offset, length, mmapFlags) {\n MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);\n return 0;\n } } };\n var asyncLoad = (url, onload, onerror, noRunDep) => {\n var dep = !noRunDep ? getUniqueRunDependency(`al ${url}`) : \"\";\n readAsync(url, (arrayBuffer) => {\n assert(arrayBuffer, `Loading data file \"${url}\" failed (no arrayBuffer).`);\n onload(new Uint8Array(arrayBuffer));\n if (dep)\n removeRunDependency(dep);\n }, (event) => {\n if (onerror) {\n onerror();\n } else {\n throw `Loading data file \"${url}\" failed.`;\n }\n });\n if (dep)\n addRunDependency(dep);\n };\n var preloadPlugins = Module[\"preloadPlugins\"] || [];\n function FS_handledByPreloadPlugin(byteArray, fullname, finish, onerror) {\n if (typeof Browser != \"undefined\")\n Browser.init();\n var handled = false;\n preloadPlugins.forEach(function(plugin) {\n if (handled)\n return;\n if (plugin[\"canHandle\"](fullname)) {\n plugin[\"handle\"](byteArray, fullname, finish, onerror);\n handled = true;\n }\n });\n return handled;\n }\n function FS_createPreloadedFile(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {\n var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent;\n var dep = getUniqueRunDependency(`cp ${fullname}`);\n function processData(byteArray) {\n function finish(byteArray2) {\n if (preFinish)\n preFinish();\n if (!dontCreateFile) {\n FS.createDataFile(parent, name, byteArray2, canRead, canWrite, canOwn);\n }\n if (onload)\n onload();\n removeRunDependency(dep);\n }\n if (FS_handledByPreloadPlugin(byteArray, fullname, finish, () => {\n if (onerror)\n onerror();\n removeRunDependency(dep);\n })) {\n return;\n }\n finish(byteArray);\n }\n addRunDependency(dep);\n if (typeof url == \"string\") {\n asyncLoad(url, (byteArray) => processData(byteArray), onerror);\n } else {\n processData(url);\n }\n }\n function FS_modeStringToFlags(str) {\n var flagModes = { \"r\": 0, \"r+\": 2, \"w\": 512 | 64 | 1, \"w+\": 512 | 64 | 2, \"a\": 1024 | 64 | 1, \"a+\": 1024 | 64 | 2 };\n var flags = flagModes[str];\n if (typeof flags == \"undefined\") {\n throw new Error(`Unknown file open mode: ${str}`);\n }\n return flags;\n }\n function FS_getMode(canRead, canWrite) {\n var mode = 0;\n if (canRead)\n mode |= 292 | 73;\n if (canWrite)\n mode |= 146;\n return mode;\n }\n var FS = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: \"/\", initialized: false, ignorePermissions: true, ErrnoError: null, genericErrors: {}, filesystems: null, syncFSRequests: 0, lookupPath: (path, opts = {}) => {\n path = PATH_FS.resolve(path);\n if (!path)\n return { path: \"\", node: null };\n var defaults = { follow_mount: true, recurse_count: 0 };\n opts = Object.assign(defaults, opts);\n if (opts.recurse_count > 8) {\n throw new FS.ErrnoError(32);\n }\n var parts = path.split(\"/\").filter((p) => !!p);\n var current = FS.root;\n var current_path = \"/\";\n for (var i = 0; i < parts.length; i++) {\n var islast = i === parts.length - 1;\n if (islast && opts.parent) {\n break;\n }\n current = FS.lookupNode(current, parts[i]);\n current_path = PATH.join2(current_path, parts[i]);\n if (FS.isMountpoint(current)) {\n if (!islast || islast && opts.follow_mount) {\n current = current.mounted.root;\n }\n }\n if (!islast || opts.follow) {\n var count = 0;\n while (FS.isLink(current.mode)) {\n var link = FS.readlink(current_path);\n current_path = PATH_FS.resolve(PATH.dirname(current_path), link);\n var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count + 1 });\n current = lookup.node;\n if (count++ > 40) {\n throw new FS.ErrnoError(32);\n }\n }\n }\n }\n return { path: current_path, node: current };\n }, getPath: (node) => {\n var path;\n while (true) {\n if (FS.isRoot(node)) {\n var mount = node.mount.mountpoint;\n if (!path)\n return mount;\n return mount[mount.length - 1] !== \"/\" ? `${mount}/${path}` : mount + path;\n }\n path = path ? `${node.name}/${path}` : node.name;\n node = node.parent;\n }\n }, hashName: (parentid, name) => {\n var hash = 0;\n for (var i = 0; i < name.length; i++) {\n hash = (hash << 5) - hash + name.charCodeAt(i) | 0;\n }\n return (parentid + hash >>> 0) % FS.nameTable.length;\n }, hashAddNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n node.name_next = FS.nameTable[hash];\n FS.nameTable[hash] = node;\n }, hashRemoveNode: (node) => {\n var hash = FS.hashName(node.parent.id, node.name);\n if (FS.nameTable[hash] === node) {\n FS.nameTable[hash] = node.name_next;\n } else {\n var current = FS.nameTable[hash];\n while (current) {\n if (current.name_next === node) {\n current.name_next = node.name_next;\n break;\n }\n current = current.name_next;\n }\n }\n }, lookupNode: (parent, name) => {\n var errCode = FS.mayLookup(parent);\n if (errCode) {\n throw new FS.ErrnoError(errCode, parent);\n }\n var hash = FS.hashName(parent.id, name);\n for (var node = FS.nameTable[hash]; node; node = node.name_next) {\n var nodeName = node.name;\n if (node.parent.id === parent.id && nodeName === name) {\n return node;\n }\n }\n return FS.lookup(parent, name);\n }, createNode: (parent, name, mode, rdev) => {\n var node = new FS.FSNode(parent, name, mode, rdev);\n FS.hashAddNode(node);\n return node;\n }, destroyNode: (node) => {\n FS.hashRemoveNode(node);\n }, isRoot: (node) => node === node.parent, isMountpoint: (node) => !!node.mounted, isFile: (mode) => (mode & 61440) === 32768, isDir: (mode) => (mode & 61440) === 16384, isLink: (mode) => (mode & 61440) === 40960, isChrdev: (mode) => (mode & 61440) === 8192, isBlkdev: (mode) => (mode & 61440) === 24576, isFIFO: (mode) => (mode & 61440) === 4096, isSocket: (mode) => (mode & 49152) === 49152, flagsToPermissionString: (flag) => {\n var perms = [\"r\", \"w\", \"rw\"][flag & 3];\n if (flag & 512) {\n perms += \"w\";\n }\n return perms;\n }, nodePermissions: (node, perms) => {\n if (FS.ignorePermissions) {\n return 0;\n }\n if (perms.includes(\"r\") && !(node.mode & 292)) {\n return 2;\n } else if (perms.includes(\"w\") && !(node.mode & 146)) {\n return 2;\n } else if (perms.includes(\"x\") && !(node.mode & 73)) {\n return 2;\n }\n return 0;\n }, mayLookup: (dir) => {\n var errCode = FS.nodePermissions(dir, \"x\");\n if (errCode)\n return errCode;\n if (!dir.node_ops.lookup)\n return 2;\n return 0;\n }, mayCreate: (dir, name) => {\n try {\n var node = FS.lookupNode(dir, name);\n return 20;\n } catch (e) {\n }\n return FS.nodePermissions(dir, \"wx\");\n }, mayDelete: (dir, name, isdir) => {\n var node;\n try {\n node = FS.lookupNode(dir, name);\n } catch (e) {\n return e.errno;\n }\n var errCode = FS.nodePermissions(dir, \"wx\");\n if (errCode) {\n return errCode;\n }\n if (isdir) {\n if (!FS.isDir(node.mode)) {\n return 54;\n }\n if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {\n return 10;\n }\n } else {\n if (FS.isDir(node.mode)) {\n return 31;\n }\n }\n return 0;\n }, mayOpen: (node, flags) => {\n if (!node) {\n return 44;\n }\n if (FS.isLink(node.mode)) {\n return 32;\n } else if (FS.isDir(node.mode)) {\n if (FS.flagsToPermissionString(flags) !== \"r\" || flags & 512) {\n return 31;\n }\n }\n return FS.nodePermissions(node, FS.flagsToPermissionString(flags));\n }, MAX_OPEN_FDS: 4096, nextfd: () => {\n for (var fd = 0; fd <= FS.MAX_OPEN_FDS; fd++) {\n if (!FS.streams[fd]) {\n return fd;\n }\n }\n throw new FS.ErrnoError(33);\n }, getStreamChecked: (fd) => {\n var stream = FS.getStream(fd);\n if (!stream) {\n throw new FS.ErrnoError(8);\n }\n return stream;\n }, getStream: (fd) => FS.streams[fd], createStream: (stream, fd = -1) => {\n if (!FS.FSStream) {\n FS.FSStream = function() {\n this.shared = {};\n };\n FS.FSStream.prototype = {};\n Object.defineProperties(FS.FSStream.prototype, { object: { get() {\n return this.node;\n }, set(val) {\n this.node = val;\n } }, isRead: { get() {\n return (this.flags & 2097155) !== 1;\n } }, isWrite: { get() {\n return (this.flags & 2097155) !== 0;\n } }, isAppend: { get() {\n return this.flags & 1024;\n } }, flags: { get() {\n return this.shared.flags;\n }, set(val) {\n this.shared.flags = val;\n } }, position: { get() {\n return this.shared.position;\n }, set(val) {\n this.shared.position = val;\n } } });\n }\n stream = Object.assign(new FS.FSStream(), stream);\n if (fd == -1) {\n fd = FS.nextfd();\n }\n stream.fd = fd;\n FS.streams[fd] = stream;\n return stream;\n }, closeStream: (fd) => {\n FS.streams[fd] = null;\n }, chrdev_stream_ops: { open: (stream) => {\n var device = FS.getDevice(stream.node.rdev);\n stream.stream_ops = device.stream_ops;\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n }, llseek: () => {\n throw new FS.ErrnoError(70);\n } }, major: (dev) => dev >> 8, minor: (dev) => dev & 255, makedev: (ma, mi) => ma << 8 | mi, registerDevice: (dev, ops) => {\n FS.devices[dev] = { stream_ops: ops };\n }, getDevice: (dev) => FS.devices[dev], getMounts: (mount) => {\n var mounts = [];\n var check = [mount];\n while (check.length) {\n var m = check.pop();\n mounts.push(m);\n check.push.apply(check, m.mounts);\n }\n return mounts;\n }, syncfs: (populate, callback) => {\n if (typeof populate == \"function\") {\n callback = populate;\n populate = false;\n }\n FS.syncFSRequests++;\n if (FS.syncFSRequests > 1) {\n err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);\n }\n var mounts = FS.getMounts(FS.root.mount);\n var completed = 0;\n function doCallback(errCode) {\n FS.syncFSRequests--;\n return callback(errCode);\n }\n function done(errCode) {\n if (errCode) {\n if (!done.errored) {\n done.errored = true;\n return doCallback(errCode);\n }\n return;\n }\n if (++completed >= mounts.length) {\n doCallback(null);\n }\n }\n mounts.forEach((mount) => {\n if (!mount.type.syncfs) {\n return done(null);\n }\n mount.type.syncfs(mount, populate, done);\n });\n }, mount: (type, opts, mountpoint) => {\n var root = mountpoint === \"/\";\n var pseudo = !mountpoint;\n var node;\n if (root && FS.root) {\n throw new FS.ErrnoError(10);\n } else if (!root && !pseudo) {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n mountpoint = lookup.path;\n node = lookup.node;\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n if (!FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n }\n var mount = { type, opts, mountpoint, mounts: [] };\n var mountRoot = type.mount(mount);\n mountRoot.mount = mount;\n mount.root = mountRoot;\n if (root) {\n FS.root = mountRoot;\n } else if (node) {\n node.mounted = mount;\n if (node.mount) {\n node.mount.mounts.push(mount);\n }\n }\n return mountRoot;\n }, unmount: (mountpoint) => {\n var lookup = FS.lookupPath(mountpoint, { follow_mount: false });\n if (!FS.isMountpoint(lookup.node)) {\n throw new FS.ErrnoError(28);\n }\n var node = lookup.node;\n var mount = node.mounted;\n var mounts = FS.getMounts(mount);\n Object.keys(FS.nameTable).forEach((hash) => {\n var current = FS.nameTable[hash];\n while (current) {\n var next = current.name_next;\n if (mounts.includes(current.mount)) {\n FS.destroyNode(current);\n }\n current = next;\n }\n });\n node.mounted = null;\n var idx = node.mount.mounts.indexOf(mount);\n node.mount.mounts.splice(idx, 1);\n }, lookup: (parent, name) => parent.node_ops.lookup(parent, name), mknod: (path, mode, dev) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n if (!name || name === \".\" || name === \"..\") {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.mayCreate(parent, name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.mknod) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.mknod(parent, name, mode, dev);\n }, create: (path, mode) => {\n mode = mode !== void 0 ? mode : 438;\n mode &= 4095;\n mode |= 32768;\n return FS.mknod(path, mode, 0);\n }, mkdir: (path, mode) => {\n mode = mode !== void 0 ? mode : 511;\n mode &= 511 | 512;\n mode |= 16384;\n return FS.mknod(path, mode, 0);\n }, mkdirTree: (path, mode) => {\n var dirs = path.split(\"/\");\n var d = \"\";\n for (var i = 0; i < dirs.length; ++i) {\n if (!dirs[i])\n continue;\n d += \"/\" + dirs[i];\n try {\n FS.mkdir(d, mode);\n } catch (e) {\n if (e.errno != 20)\n throw e;\n }\n }\n }, mkdev: (path, mode, dev) => {\n if (typeof dev == \"undefined\") {\n dev = mode;\n mode = 438;\n }\n mode |= 8192;\n return FS.mknod(path, mode, dev);\n }, symlink: (oldpath, newpath) => {\n if (!PATH_FS.resolve(oldpath)) {\n throw new FS.ErrnoError(44);\n }\n var lookup = FS.lookupPath(newpath, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var newname = PATH.basename(newpath);\n var errCode = FS.mayCreate(parent, newname);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.symlink) {\n throw new FS.ErrnoError(63);\n }\n return parent.node_ops.symlink(parent, newname, oldpath);\n }, rename: (old_path, new_path) => {\n var old_dirname = PATH.dirname(old_path);\n var new_dirname = PATH.dirname(new_path);\n var old_name = PATH.basename(old_path);\n var new_name = PATH.basename(new_path);\n var lookup, old_dir, new_dir;\n lookup = FS.lookupPath(old_path, { parent: true });\n old_dir = lookup.node;\n lookup = FS.lookupPath(new_path, { parent: true });\n new_dir = lookup.node;\n if (!old_dir || !new_dir)\n throw new FS.ErrnoError(44);\n if (old_dir.mount !== new_dir.mount) {\n throw new FS.ErrnoError(75);\n }\n var old_node = FS.lookupNode(old_dir, old_name);\n var relative = PATH_FS.relative(old_path, new_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(28);\n }\n relative = PATH_FS.relative(new_path, old_dirname);\n if (relative.charAt(0) !== \".\") {\n throw new FS.ErrnoError(55);\n }\n var new_node;\n try {\n new_node = FS.lookupNode(new_dir, new_name);\n } catch (e) {\n }\n if (old_node === new_node) {\n return;\n }\n var isdir = FS.isDir(old_node.mode);\n var errCode = FS.mayDelete(old_dir, old_name, isdir);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!old_dir.node_ops.rename) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {\n throw new FS.ErrnoError(10);\n }\n if (new_dir !== old_dir) {\n errCode = FS.nodePermissions(old_dir, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n FS.hashRemoveNode(old_node);\n try {\n old_dir.node_ops.rename(old_node, new_dir, new_name);\n } catch (e) {\n throw e;\n } finally {\n FS.hashAddNode(old_node);\n }\n }, rmdir: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, true);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.rmdir) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.rmdir(parent, name);\n FS.destroyNode(node);\n }, readdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n if (!node.node_ops.readdir) {\n throw new FS.ErrnoError(54);\n }\n return node.node_ops.readdir(node);\n }, unlink: (path) => {\n var lookup = FS.lookupPath(path, { parent: true });\n var parent = lookup.node;\n if (!parent) {\n throw new FS.ErrnoError(44);\n }\n var name = PATH.basename(path);\n var node = FS.lookupNode(parent, name);\n var errCode = FS.mayDelete(parent, name, false);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n if (!parent.node_ops.unlink) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isMountpoint(node)) {\n throw new FS.ErrnoError(10);\n }\n parent.node_ops.unlink(parent, name);\n FS.destroyNode(node);\n }, readlink: (path) => {\n var lookup = FS.lookupPath(path);\n var link = lookup.node;\n if (!link) {\n throw new FS.ErrnoError(44);\n }\n if (!link.node_ops.readlink) {\n throw new FS.ErrnoError(28);\n }\n return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));\n }, stat: (path, dontFollow) => {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n var node = lookup.node;\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (!node.node_ops.getattr) {\n throw new FS.ErrnoError(63);\n }\n return node.node_ops.getattr(node);\n }, lstat: (path) => FS.stat(path, true), chmod: (path, mode, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { mode: mode & 4095 | node.mode & ~4095, timestamp: Date.now() });\n }, lchmod: (path, mode) => {\n FS.chmod(path, mode, true);\n }, fchmod: (fd, mode) => {\n var stream = FS.getStreamChecked(fd);\n FS.chmod(stream.node, mode);\n }, chown: (path, uid, gid, dontFollow) => {\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: !dontFollow });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n node.node_ops.setattr(node, { timestamp: Date.now() });\n }, lchown: (path, uid, gid) => {\n FS.chown(path, uid, gid, true);\n }, fchown: (fd, uid, gid) => {\n var stream = FS.getStreamChecked(fd);\n FS.chown(stream.node, uid, gid);\n }, truncate: (path, len) => {\n if (len < 0) {\n throw new FS.ErrnoError(28);\n }\n var node;\n if (typeof path == \"string\") {\n var lookup = FS.lookupPath(path, { follow: true });\n node = lookup.node;\n } else {\n node = path;\n }\n if (!node.node_ops.setattr) {\n throw new FS.ErrnoError(63);\n }\n if (FS.isDir(node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!FS.isFile(node.mode)) {\n throw new FS.ErrnoError(28);\n }\n var errCode = FS.nodePermissions(node, \"w\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n node.node_ops.setattr(node, { size: len, timestamp: Date.now() });\n }, ftruncate: (fd, len) => {\n var stream = FS.getStreamChecked(fd);\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(28);\n }\n FS.truncate(stream.node, len);\n }, utime: (path, atime, mtime) => {\n var lookup = FS.lookupPath(path, { follow: true });\n var node = lookup.node;\n node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) });\n }, open: (path, flags, mode) => {\n if (path === \"\") {\n throw new FS.ErrnoError(44);\n }\n flags = typeof flags == \"string\" ? FS_modeStringToFlags(flags) : flags;\n mode = typeof mode == \"undefined\" ? 438 : mode;\n if (flags & 64) {\n mode = mode & 4095 | 32768;\n } else {\n mode = 0;\n }\n var node;\n if (typeof path == \"object\") {\n node = path;\n } else {\n path = PATH.normalize(path);\n try {\n var lookup = FS.lookupPath(path, { follow: !(flags & 131072) });\n node = lookup.node;\n } catch (e) {\n }\n }\n var created = false;\n if (flags & 64) {\n if (node) {\n if (flags & 128) {\n throw new FS.ErrnoError(20);\n }\n } else {\n node = FS.mknod(path, mode, 0);\n created = true;\n }\n }\n if (!node) {\n throw new FS.ErrnoError(44);\n }\n if (FS.isChrdev(node.mode)) {\n flags &= ~512;\n }\n if (flags & 65536 && !FS.isDir(node.mode)) {\n throw new FS.ErrnoError(54);\n }\n if (!created) {\n var errCode = FS.mayOpen(node, flags);\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n }\n if (flags & 512 && !created) {\n FS.truncate(node, 0);\n }\n flags &= ~(128 | 512 | 131072);\n var stream = FS.createStream({ node, path: FS.getPath(node), flags, seekable: true, position: 0, stream_ops: node.stream_ops, ungotten: [], error: false });\n if (stream.stream_ops.open) {\n stream.stream_ops.open(stream);\n }\n if (Module[\"logReadFiles\"] && !(flags & 1)) {\n if (!FS.readFiles)\n FS.readFiles = {};\n if (!(path in FS.readFiles)) {\n FS.readFiles[path] = 1;\n }\n }\n return stream;\n }, close: (stream) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (stream.getdents)\n stream.getdents = null;\n try {\n if (stream.stream_ops.close) {\n stream.stream_ops.close(stream);\n }\n } catch (e) {\n throw e;\n } finally {\n FS.closeStream(stream.fd);\n }\n stream.fd = null;\n }, isClosed: (stream) => stream.fd === null, llseek: (stream, offset, whence) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (!stream.seekable || !stream.stream_ops.llseek) {\n throw new FS.ErrnoError(70);\n }\n if (whence != 0 && whence != 1 && whence != 2) {\n throw new FS.ErrnoError(28);\n }\n stream.position = stream.stream_ops.llseek(stream, offset, whence);\n stream.ungotten = [];\n return stream.position;\n }, read: (stream, buffer, offset, length, position) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.read) {\n throw new FS.ErrnoError(28);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);\n if (!seeking)\n stream.position += bytesRead;\n return bytesRead;\n }, write: (stream, buffer, offset, length, position, canOwn) => {\n if (length < 0 || position < 0) {\n throw new FS.ErrnoError(28);\n }\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(31);\n }\n if (!stream.stream_ops.write) {\n throw new FS.ErrnoError(28);\n }\n if (stream.seekable && stream.flags & 1024) {\n FS.llseek(stream, 0, 2);\n }\n var seeking = typeof position != \"undefined\";\n if (!seeking) {\n position = stream.position;\n } else if (!stream.seekable) {\n throw new FS.ErrnoError(70);\n }\n var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);\n if (!seeking)\n stream.position += bytesWritten;\n return bytesWritten;\n }, allocate: (stream, offset, length) => {\n if (FS.isClosed(stream)) {\n throw new FS.ErrnoError(8);\n }\n if (offset < 0 || length <= 0) {\n throw new FS.ErrnoError(28);\n }\n if ((stream.flags & 2097155) === 0) {\n throw new FS.ErrnoError(8);\n }\n if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (!stream.stream_ops.allocate) {\n throw new FS.ErrnoError(138);\n }\n stream.stream_ops.allocate(stream, offset, length);\n }, mmap: (stream, length, position, prot, flags) => {\n if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {\n throw new FS.ErrnoError(2);\n }\n if ((stream.flags & 2097155) === 1) {\n throw new FS.ErrnoError(2);\n }\n if (!stream.stream_ops.mmap) {\n throw new FS.ErrnoError(43);\n }\n return stream.stream_ops.mmap(stream, length, position, prot, flags);\n }, msync: (stream, buffer, offset, length, mmapFlags) => {\n if (!stream.stream_ops.msync) {\n return 0;\n }\n return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);\n }, munmap: (stream) => 0, ioctl: (stream, cmd, arg) => {\n if (!stream.stream_ops.ioctl) {\n throw new FS.ErrnoError(59);\n }\n return stream.stream_ops.ioctl(stream, cmd, arg);\n }, readFile: (path, opts = {}) => {\n opts.flags = opts.flags || 0;\n opts.encoding = opts.encoding || \"binary\";\n if (opts.encoding !== \"utf8\" && opts.encoding !== \"binary\") {\n throw new Error(`Invalid encoding type \"${opts.encoding}\"`);\n }\n var ret;\n var stream = FS.open(path, opts.flags);\n var stat = FS.stat(path);\n var length = stat.size;\n var buf = new Uint8Array(length);\n FS.read(stream, buf, 0, length, 0);\n if (opts.encoding === \"utf8\") {\n ret = UTF8ArrayToString(buf, 0);\n } else if (opts.encoding === \"binary\") {\n ret = buf;\n }\n FS.close(stream);\n return ret;\n }, writeFile: (path, data, opts = {}) => {\n opts.flags = opts.flags || 577;\n var stream = FS.open(path, opts.flags, opts.mode);\n if (typeof data == \"string\") {\n var buf = new Uint8Array(lengthBytesUTF8(data) + 1);\n var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);\n FS.write(stream, buf, 0, actualNumBytes, void 0, opts.canOwn);\n } else if (ArrayBuffer.isView(data)) {\n FS.write(stream, data, 0, data.byteLength, void 0, opts.canOwn);\n } else {\n throw new Error(\"Unsupported data type\");\n }\n FS.close(stream);\n }, cwd: () => FS.currentPath, chdir: (path) => {\n var lookup = FS.lookupPath(path, { follow: true });\n if (lookup.node === null) {\n throw new FS.ErrnoError(44);\n }\n if (!FS.isDir(lookup.node.mode)) {\n throw new FS.ErrnoError(54);\n }\n var errCode = FS.nodePermissions(lookup.node, \"x\");\n if (errCode) {\n throw new FS.ErrnoError(errCode);\n }\n FS.currentPath = lookup.path;\n }, createDefaultDirectories: () => {\n FS.mkdir(\"/tmp\");\n FS.mkdir(\"/home\");\n FS.mkdir(\"/home/web_user\");\n }, createDefaultDevices: () => {\n FS.mkdir(\"/dev\");\n FS.registerDevice(FS.makedev(1, 3), { read: () => 0, write: (stream, buffer, offset, length, pos) => length });\n FS.mkdev(\"/dev/null\", FS.makedev(1, 3));\n TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);\n TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);\n FS.mkdev(\"/dev/tty\", FS.makedev(5, 0));\n FS.mkdev(\"/dev/tty1\", FS.makedev(6, 0));\n var randomBuffer = new Uint8Array(1024), randomLeft = 0;\n var randomByte = () => {\n if (randomLeft === 0) {\n randomLeft = randomFill(randomBuffer).byteLength;\n }\n return randomBuffer[--randomLeft];\n };\n FS.createDevice(\"/dev\", \"random\", randomByte);\n FS.createDevice(\"/dev\", \"urandom\", randomByte);\n FS.mkdir(\"/dev/shm\");\n FS.mkdir(\"/dev/shm/tmp\");\n }, createSpecialDirectories: () => {\n FS.mkdir(\"/proc\");\n var proc_self = FS.mkdir(\"/proc/self\");\n FS.mkdir(\"/proc/self/fd\");\n FS.mount({ mount: () => {\n var node = FS.createNode(proc_self, \"fd\", 16384 | 511, 73);\n node.node_ops = { lookup: (parent, name) => {\n var fd = +name;\n var stream = FS.getStreamChecked(fd);\n var ret = { parent: null, mount: { mountpoint: \"fake\" }, node_ops: { readlink: () => stream.path } };\n ret.parent = ret;\n return ret;\n } };\n return node;\n } }, {}, \"/proc/self/fd\");\n }, createStandardStreams: () => {\n if (Module[\"stdin\"]) {\n FS.createDevice(\"/dev\", \"stdin\", Module[\"stdin\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdin\");\n }\n if (Module[\"stdout\"]) {\n FS.createDevice(\"/dev\", \"stdout\", null, Module[\"stdout\"]);\n } else {\n FS.symlink(\"/dev/tty\", \"/dev/stdout\");\n }\n if (Module[\"stderr\"]) {\n FS.createDevice(\"/dev\", \"stderr\", null, Module[\"stderr\"]);\n } else {\n FS.symlink(\"/dev/tty1\", \"/dev/stderr\");\n }\n var stdin = FS.open(\"/dev/stdin\", 0);\n var stdout = FS.open(\"/dev/stdout\", 1);\n var stderr = FS.open(\"/dev/stderr\", 1);\n }, ensureErrnoError: () => {\n if (FS.ErrnoError)\n return;\n FS.ErrnoError = function ErrnoError(errno, node) {\n this.name = \"ErrnoError\";\n this.node = node;\n this.setErrno = function(errno2) {\n this.errno = errno2;\n };\n this.setErrno(errno);\n this.message = \"FS error\";\n };\n FS.ErrnoError.prototype = new Error();\n FS.ErrnoError.prototype.constructor = FS.ErrnoError;\n [44].forEach((code) => {\n FS.genericErrors[code] = new FS.ErrnoError(code);\n FS.genericErrors[code].stack = \"\";\n });\n }, staticInit: () => {\n FS.ensureErrnoError();\n FS.nameTable = new Array(4096);\n FS.mount(MEMFS, {}, \"/\");\n FS.createDefaultDirectories();\n FS.createDefaultDevices();\n FS.createSpecialDirectories();\n FS.filesystems = { \"MEMFS\": MEMFS };\n }, init: (input, output, error) => {\n FS.init.initialized = true;\n FS.ensureErrnoError();\n Module[\"stdin\"] = input || Module[\"stdin\"];\n Module[\"stdout\"] = output || Module[\"stdout\"];\n Module[\"stderr\"] = error || Module[\"stderr\"];\n FS.createStandardStreams();\n }, quit: () => {\n FS.init.initialized = false;\n for (var i = 0; i < FS.streams.length; i++) {\n var stream = FS.streams[i];\n if (!stream) {\n continue;\n }\n FS.close(stream);\n }\n }, findObject: (path, dontResolveLastLink) => {\n var ret = FS.analyzePath(path, dontResolveLastLink);\n if (!ret.exists) {\n return null;\n }\n return ret.object;\n }, analyzePath: (path, dontResolveLastLink) => {\n try {\n var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n path = lookup.path;\n } catch (e) {\n }\n var ret = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null };\n try {\n var lookup = FS.lookupPath(path, { parent: true });\n ret.parentExists = true;\n ret.parentPath = lookup.path;\n ret.parentObject = lookup.node;\n ret.name = PATH.basename(path);\n lookup = FS.lookupPath(path, { follow: !dontResolveLastLink });\n ret.exists = true;\n ret.path = lookup.path;\n ret.object = lookup.node;\n ret.name = lookup.node.name;\n ret.isRoot = lookup.path === \"/\";\n } catch (e) {\n ret.error = e.errno;\n }\n return ret;\n }, createPath: (parent, path, canRead, canWrite) => {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n var parts = path.split(\"/\").reverse();\n while (parts.length) {\n var part = parts.pop();\n if (!part)\n continue;\n var current = PATH.join2(parent, part);\n try {\n FS.mkdir(current);\n } catch (e) {\n }\n parent = current;\n }\n return current;\n }, createFile: (parent, name, properties, canRead, canWrite) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(canRead, canWrite);\n return FS.create(path, mode);\n }, createDataFile: (parent, name, data, canRead, canWrite, canOwn) => {\n var path = name;\n if (parent) {\n parent = typeof parent == \"string\" ? parent : FS.getPath(parent);\n path = name ? PATH.join2(parent, name) : parent;\n }\n var mode = FS_getMode(canRead, canWrite);\n var node = FS.create(path, mode);\n if (data) {\n if (typeof data == \"string\") {\n var arr = new Array(data.length);\n for (var i = 0, len = data.length; i < len; ++i)\n arr[i] = data.charCodeAt(i);\n data = arr;\n }\n FS.chmod(node, mode | 146);\n var stream = FS.open(node, 577);\n FS.write(stream, data, 0, data.length, 0, canOwn);\n FS.close(stream);\n FS.chmod(node, mode);\n }\n return node;\n }, createDevice: (parent, name, input, output) => {\n var path = PATH.join2(typeof parent == \"string\" ? parent : FS.getPath(parent), name);\n var mode = FS_getMode(!!input, !!output);\n if (!FS.createDevice.major)\n FS.createDevice.major = 64;\n var dev = FS.makedev(FS.createDevice.major++, 0);\n FS.registerDevice(dev, { open: (stream) => {\n stream.seekable = false;\n }, close: (stream) => {\n if (output && output.buffer && output.buffer.length) {\n output(10);\n }\n }, read: (stream, buffer, offset, length, pos) => {\n var bytesRead = 0;\n for (var i = 0; i < length; i++) {\n var result;\n try {\n result = input();\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n if (result === void 0 && bytesRead === 0) {\n throw new FS.ErrnoError(6);\n }\n if (result === null || result === void 0)\n break;\n bytesRead++;\n buffer[offset + i] = result;\n }\n if (bytesRead) {\n stream.node.timestamp = Date.now();\n }\n return bytesRead;\n }, write: (stream, buffer, offset, length, pos) => {\n for (var i = 0; i < length; i++) {\n try {\n output(buffer[offset + i]);\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n }\n if (length) {\n stream.node.timestamp = Date.now();\n }\n return i;\n } });\n return FS.mkdev(path, mode, dev);\n }, forceLoadFile: (obj) => {\n if (obj.isDevice || obj.isFolder || obj.link || obj.contents)\n return true;\n if (typeof XMLHttpRequest != \"undefined\") {\n throw new Error(\"Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.\");\n } else if (read_) {\n try {\n obj.contents = intArrayFromString(read_(obj.url), true);\n obj.usedBytes = obj.contents.length;\n } catch (e) {\n throw new FS.ErrnoError(29);\n }\n } else {\n throw new Error(\"Cannot load without read() or XMLHttpRequest.\");\n }\n }, createLazyFile: (parent, name, url, canRead, canWrite) => {\n function LazyUint8Array() {\n this.lengthKnown = false;\n this.chunks = [];\n }\n LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {\n if (idx > this.length - 1 || idx < 0) {\n return void 0;\n }\n var chunkOffset = idx % this.chunkSize;\n var chunkNum = idx / this.chunkSize | 0;\n return this.getter(chunkNum)[chunkOffset];\n };\n LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {\n this.getter = getter;\n };\n LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {\n var xhr = new XMLHttpRequest();\n xhr.open(\"HEAD\", url, false);\n xhr.send(null);\n if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr.status);\n var datalength = Number(xhr.getResponseHeader(\"Content-length\"));\n var header;\n var hasByteServing = (header = xhr.getResponseHeader(\"Accept-Ranges\")) && header === \"bytes\";\n var usesGzip = (header = xhr.getResponseHeader(\"Content-Encoding\")) && header === \"gzip\";\n var chunkSize = 1024 * 1024;\n if (!hasByteServing)\n chunkSize = datalength;\n var doXHR = (from, to) => {\n if (from > to)\n throw new Error(\"invalid range (\" + from + \", \" + to + \") or no bytes requested!\");\n if (to > datalength - 1)\n throw new Error(\"only \" + datalength + \" bytes available! programmer error!\");\n var xhr2 = new XMLHttpRequest();\n xhr2.open(\"GET\", url, false);\n if (datalength !== chunkSize)\n xhr2.setRequestHeader(\"Range\", \"bytes=\" + from + \"-\" + to);\n xhr2.responseType = \"arraybuffer\";\n if (xhr2.overrideMimeType) {\n xhr2.overrideMimeType(\"text/plain; charset=x-user-defined\");\n }\n xhr2.send(null);\n if (!(xhr2.status >= 200 && xhr2.status < 300 || xhr2.status === 304))\n throw new Error(\"Couldn't load \" + url + \". Status: \" + xhr2.status);\n if (xhr2.response !== void 0) {\n return new Uint8Array(xhr2.response || []);\n }\n return intArrayFromString(xhr2.responseText || \"\", true);\n };\n var lazyArray2 = this;\n lazyArray2.setDataGetter((chunkNum) => {\n var start = chunkNum * chunkSize;\n var end = (chunkNum + 1) * chunkSize - 1;\n end = Math.min(end, datalength - 1);\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\") {\n lazyArray2.chunks[chunkNum] = doXHR(start, end);\n }\n if (typeof lazyArray2.chunks[chunkNum] == \"undefined\")\n throw new Error(\"doXHR failed!\");\n return lazyArray2.chunks[chunkNum];\n });\n if (usesGzip || !datalength) {\n chunkSize = datalength = 1;\n datalength = this.getter(0).length;\n chunkSize = datalength;\n out(\"LazyFiles on gzip forces download of the whole file when length is accessed\");\n }\n this._length = datalength;\n this._chunkSize = chunkSize;\n this.lengthKnown = true;\n };\n if (typeof XMLHttpRequest != \"undefined\") {\n if (!ENVIRONMENT_IS_WORKER)\n throw \"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";\n var lazyArray = new LazyUint8Array();\n Object.defineProperties(lazyArray, { length: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._length;\n } }, chunkSize: { get: function() {\n if (!this.lengthKnown) {\n this.cacheLength();\n }\n return this._chunkSize;\n } } });\n var properties = { isDevice: false, contents: lazyArray };\n } else {\n var properties = { isDevice: false, url };\n }\n var node = FS.createFile(parent, name, properties, canRead, canWrite);\n if (properties.contents) {\n node.contents = properties.contents;\n } else if (properties.url) {\n node.contents = null;\n node.url = properties.url;\n }\n Object.defineProperties(node, { usedBytes: { get: function() {\n return this.contents.length;\n } } });\n var stream_ops = {};\n var keys = Object.keys(node.stream_ops);\n keys.forEach((key) => {\n var fn = node.stream_ops[key];\n stream_ops[key] = function forceLoadLazyFile() {\n FS.forceLoadFile(node);\n return fn.apply(null, arguments);\n };\n });\n function writeChunks(stream, buffer, offset, length, position) {\n var contents = stream.node.contents;\n if (position >= contents.length)\n return 0;\n var size = Math.min(contents.length - position, length);\n if (contents.slice) {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents[position + i];\n }\n } else {\n for (var i = 0; i < size; i++) {\n buffer[offset + i] = contents.get(position + i);\n }\n }\n return size;\n }\n stream_ops.read = (stream, buffer, offset, length, position) => {\n FS.forceLoadFile(node);\n return writeChunks(stream, buffer, offset, length, position);\n };\n stream_ops.mmap = (stream, length, position, prot, flags) => {\n FS.forceLoadFile(node);\n var ptr = mmapAlloc(length);\n if (!ptr) {\n throw new FS.ErrnoError(48);\n }\n writeChunks(stream, HEAP8, ptr, length, position);\n return { ptr, allocated: true };\n };\n node.stream_ops = stream_ops;\n return node;\n } };\n var SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt: function(dirfd, path, allowEmpty) {\n if (PATH.isAbs(path)) {\n return path;\n }\n var dir;\n if (dirfd === -100) {\n dir = FS.cwd();\n } else {\n var dirstream = SYSCALLS.getStreamFromFD(dirfd);\n dir = dirstream.path;\n }\n if (path.length == 0) {\n if (!allowEmpty) {\n throw new FS.ErrnoError(44);\n }\n return dir;\n }\n return PATH.join2(dir, path);\n }, doStat: function(func, path, buf) {\n try {\n var stat = func(path);\n } catch (e) {\n if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {\n return -54;\n }\n throw e;\n }\n HEAP32[buf >>> 2] = stat.dev;\n HEAP32[buf + 4 >>> 2] = stat.mode;\n HEAPU32[buf + 8 >>> 2] = stat.nlink;\n HEAP32[buf + 12 >>> 2] = stat.uid;\n HEAP32[buf + 16 >>> 2] = stat.gid;\n HEAP32[buf + 20 >>> 2] = stat.rdev;\n tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 24 >>> 2] = tempI64[0], HEAP32[buf + 28 >>> 2] = tempI64[1];\n HEAP32[buf + 32 >>> 2] = 4096;\n HEAP32[buf + 36 >>> 2] = stat.blocks;\n var atime = stat.atime.getTime();\n var mtime = stat.mtime.getTime();\n var ctime = stat.ctime.getTime();\n tempI64 = [Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >>> 2] = tempI64[0], HEAP32[buf + 44 >>> 2] = tempI64[1];\n HEAPU32[buf + 48 >>> 2] = atime % 1e3 * 1e3;\n tempI64 = [Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 56 >>> 2] = tempI64[0], HEAP32[buf + 60 >>> 2] = tempI64[1];\n HEAPU32[buf + 64 >>> 2] = mtime % 1e3 * 1e3;\n tempI64 = [Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 72 >>> 2] = tempI64[0], HEAP32[buf + 76 >>> 2] = tempI64[1];\n HEAPU32[buf + 80 >>> 2] = ctime % 1e3 * 1e3;\n tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 88 >>> 2] = tempI64[0], HEAP32[buf + 92 >>> 2] = tempI64[1];\n return 0;\n }, doMsync: function(addr, stream, len, flags, offset) {\n if (!FS.isFile(stream.node.mode)) {\n throw new FS.ErrnoError(43);\n }\n if (flags & 2) {\n return 0;\n }\n var buffer = HEAPU8.slice(addr, addr + len);\n FS.msync(stream, buffer, offset, len, flags);\n }, varargs: void 0, get() {\n SYSCALLS.varargs += 4;\n var ret = HEAP32[SYSCALLS.varargs - 4 >>> 2];\n return ret;\n }, getStr(ptr) {\n var ret = UTF8ToString(ptr);\n return ret;\n }, getStreamFromFD: function(fd) {\n var stream = FS.getStreamChecked(fd);\n return stream;\n } };\n function _environ_get(__environ, environ_buf) {\n __environ >>>= 0;\n environ_buf >>>= 0;\n var bufSize = 0;\n getEnvStrings().forEach(function(string, i) {\n var ptr = environ_buf + bufSize;\n HEAPU32[__environ + i * 4 >>> 2] = ptr;\n stringToAscii(string, ptr);\n bufSize += string.length + 1;\n });\n return 0;\n }\n function _environ_sizes_get(penviron_count, penviron_buf_size) {\n penviron_count >>>= 0;\n penviron_buf_size >>>= 0;\n var strings = getEnvStrings();\n HEAPU32[penviron_count >>> 2] = strings.length;\n var bufSize = 0;\n strings.forEach(function(string) {\n bufSize += string.length + 1;\n });\n HEAPU32[penviron_buf_size >>> 2] = bufSize;\n return 0;\n }\n function _fd_close(fd) {\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.close(stream);\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_fdstat_get(fd, pbuf) {\n pbuf >>>= 0;\n try {\n var rightsBase = 0;\n var rightsInheriting = 0;\n var flags = 0;\n {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4;\n }\n HEAP8[pbuf >>> 0] = type;\n HEAP16[pbuf + 2 >>> 1] = flags;\n tempI64 = [rightsBase >>> 0, (tempDouble = rightsBase, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[pbuf + 8 >>> 2] = tempI64[0], HEAP32[pbuf + 12 >>> 2] = tempI64[1];\n tempI64 = [rightsInheriting >>> 0, (tempDouble = rightsInheriting, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[pbuf + 16 >>> 2] = tempI64[0], HEAP32[pbuf + 20 >>> 2] = tempI64[1];\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doReadv = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = HEAPU32[iov >>> 2];\n var len = HEAPU32[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.read(stream, HEAP8, ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (curr < len)\n break;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_read(fd, iov, iovcnt, pnum) {\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doReadv(stream, iov, iovcnt);\n HEAPU32[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {\n var offset = convertI32PairToI53Checked(offset_low, offset_high);\n newOffset >>>= 0;\n try {\n if (isNaN(offset))\n return 61;\n var stream = SYSCALLS.getStreamFromFD(fd);\n FS.llseek(stream, offset, whence);\n tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >>> 2] = tempI64[0], HEAP32[newOffset + 4 >>> 2] = tempI64[1];\n if (stream.getdents && offset === 0 && whence === 0)\n stream.getdents = null;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var doWritev = (stream, iov, iovcnt, offset) => {\n var ret = 0;\n for (var i = 0; i < iovcnt; i++) {\n var ptr = HEAPU32[iov >>> 2];\n var len = HEAPU32[iov + 4 >>> 2];\n iov += 8;\n var curr = FS.write(stream, HEAP8, ptr, len, offset);\n if (curr < 0)\n return -1;\n ret += curr;\n if (typeof offset !== \"undefined\") {\n offset += curr;\n }\n }\n return ret;\n };\n function _fd_write(fd, iov, iovcnt, pnum) {\n iov >>>= 0;\n iovcnt >>>= 0;\n pnum >>>= 0;\n try {\n var stream = SYSCALLS.getStreamFromFD(fd);\n var num = doWritev(stream, iov, iovcnt);\n HEAPU32[pnum >>> 2] = num;\n return 0;\n } catch (e) {\n if (typeof FS == \"undefined\" || !(e.name === \"ErrnoError\"))\n throw e;\n return e.errno;\n }\n }\n var arraySum = (array, index) => {\n var sum = 0;\n for (var i = 0; i <= index; sum += array[i++]) {\n }\n return sum;\n };\n var MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n var addDays = (date, days) => {\n var newDate = new Date(date.getTime());\n while (days > 0) {\n var leap = isLeapYear(newDate.getFullYear());\n var currentMonth = newDate.getMonth();\n var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth];\n if (days > daysInCurrentMonth - newDate.getDate()) {\n days -= daysInCurrentMonth - newDate.getDate() + 1;\n newDate.setDate(1);\n if (currentMonth < 11) {\n newDate.setMonth(currentMonth + 1);\n } else {\n newDate.setMonth(0);\n newDate.setFullYear(newDate.getFullYear() + 1);\n }\n } else {\n newDate.setDate(newDate.getDate() + days);\n return newDate;\n }\n }\n return newDate;\n };\n var writeArrayToMemory = (array, buffer) => {\n HEAP8.set(array, buffer >>> 0);\n };\n function _strftime(s, maxsize, format, tm) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n var tm_zone = HEAP32[tm + 40 >>> 2];\n var date = { tm_sec: HEAP32[tm >>> 2], tm_min: HEAP32[tm + 4 >>> 2], tm_hour: HEAP32[tm + 8 >>> 2], tm_mday: HEAP32[tm + 12 >>> 2], tm_mon: HEAP32[tm + 16 >>> 2], tm_year: HEAP32[tm + 20 >>> 2], tm_wday: HEAP32[tm + 24 >>> 2], tm_yday: HEAP32[tm + 28 >>> 2], tm_isdst: HEAP32[tm + 32 >>> 2], tm_gmtoff: HEAP32[tm + 36 >>> 2], tm_zone: tm_zone ? UTF8ToString(tm_zone) : \"\" };\n var pattern = UTF8ToString(format);\n var EXPANSION_RULES_1 = { \"%c\": \"%a %b %d %H:%M:%S %Y\", \"%D\": \"%m/%d/%y\", \"%F\": \"%Y-%m-%d\", \"%h\": \"%b\", \"%r\": \"%I:%M:%S %p\", \"%R\": \"%H:%M\", \"%T\": \"%H:%M:%S\", \"%x\": \"%m/%d/%y\", \"%X\": \"%H:%M:%S\", \"%Ec\": \"%c\", \"%EC\": \"%C\", \"%Ex\": \"%m/%d/%y\", \"%EX\": \"%H:%M:%S\", \"%Ey\": \"%y\", \"%EY\": \"%Y\", \"%Od\": \"%d\", \"%Oe\": \"%e\", \"%OH\": \"%H\", \"%OI\": \"%I\", \"%Om\": \"%m\", \"%OM\": \"%M\", \"%OS\": \"%S\", \"%Ou\": \"%u\", \"%OU\": \"%U\", \"%OV\": \"%V\", \"%Ow\": \"%w\", \"%OW\": \"%W\", \"%Oy\": \"%y\" };\n for (var rule in EXPANSION_RULES_1) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_1[rule]);\n }\n var WEEKDAYS = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n var MONTHS = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n function leadingSomething(value, digits, character) {\n var str = typeof value == \"number\" ? value.toString() : value || \"\";\n while (str.length < digits) {\n str = character[0] + str;\n }\n return str;\n }\n function leadingNulls(value, digits) {\n return leadingSomething(value, digits, \"0\");\n }\n function compareByDay(date1, date2) {\n function sgn(value) {\n return value < 0 ? -1 : value > 0 ? 1 : 0;\n }\n var compare;\n if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {\n if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {\n compare = sgn(date1.getDate() - date2.getDate());\n }\n }\n return compare;\n }\n function getFirstWeekStartDate(janFourth) {\n switch (janFourth.getDay()) {\n case 0:\n return new Date(janFourth.getFullYear() - 1, 11, 29);\n case 1:\n return janFourth;\n case 2:\n return new Date(janFourth.getFullYear(), 0, 3);\n case 3:\n return new Date(janFourth.getFullYear(), 0, 2);\n case 4:\n return new Date(janFourth.getFullYear(), 0, 1);\n case 5:\n return new Date(janFourth.getFullYear() - 1, 11, 31);\n case 6:\n return new Date(janFourth.getFullYear() - 1, 11, 30);\n }\n }\n function getWeekBasedYear(date2) {\n var thisDate = addDays(new Date(date2.tm_year + 1900, 0, 1), date2.tm_yday);\n var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);\n var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);\n var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);\n var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);\n if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {\n if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {\n return thisDate.getFullYear() + 1;\n }\n return thisDate.getFullYear();\n }\n return thisDate.getFullYear() - 1;\n }\n var EXPANSION_RULES_2 = { \"%a\": (date2) => WEEKDAYS[date2.tm_wday].substring(0, 3), \"%A\": (date2) => WEEKDAYS[date2.tm_wday], \"%b\": (date2) => MONTHS[date2.tm_mon].substring(0, 3), \"%B\": (date2) => MONTHS[date2.tm_mon], \"%C\": (date2) => {\n var year = date2.tm_year + 1900;\n return leadingNulls(year / 100 | 0, 2);\n }, \"%d\": (date2) => leadingNulls(date2.tm_mday, 2), \"%e\": (date2) => leadingSomething(date2.tm_mday, 2, \" \"), \"%g\": (date2) => getWeekBasedYear(date2).toString().substring(2), \"%G\": (date2) => getWeekBasedYear(date2), \"%H\": (date2) => leadingNulls(date2.tm_hour, 2), \"%I\": (date2) => {\n var twelveHour = date2.tm_hour;\n if (twelveHour == 0)\n twelveHour = 12;\n else if (twelveHour > 12)\n twelveHour -= 12;\n return leadingNulls(twelveHour, 2);\n }, \"%j\": (date2) => leadingNulls(date2.tm_mday + arraySum(isLeapYear(date2.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date2.tm_mon - 1), 3), \"%m\": (date2) => leadingNulls(date2.tm_mon + 1, 2), \"%M\": (date2) => leadingNulls(date2.tm_min, 2), \"%n\": () => \"\\n\", \"%p\": (date2) => {\n if (date2.tm_hour >= 0 && date2.tm_hour < 12) {\n return \"AM\";\n }\n return \"PM\";\n }, \"%S\": (date2) => leadingNulls(date2.tm_sec, 2), \"%t\": () => \"\t\", \"%u\": (date2) => date2.tm_wday || 7, \"%U\": (date2) => {\n var days = date2.tm_yday + 7 - date2.tm_wday;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%V\": (date2) => {\n var val = Math.floor((date2.tm_yday + 7 - (date2.tm_wday + 6) % 7) / 7);\n if ((date2.tm_wday + 371 - date2.tm_yday - 2) % 7 <= 2) {\n val++;\n }\n if (!val) {\n val = 52;\n var dec31 = (date2.tm_wday + 7 - date2.tm_yday - 1) % 7;\n if (dec31 == 4 || dec31 == 5 && isLeapYear(date2.tm_year % 400 - 1)) {\n val++;\n }\n } else if (val == 53) {\n var jan1 = (date2.tm_wday + 371 - date2.tm_yday) % 7;\n if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date2.tm_year)))\n val = 1;\n }\n return leadingNulls(val, 2);\n }, \"%w\": (date2) => date2.tm_wday, \"%W\": (date2) => {\n var days = date2.tm_yday + 7 - (date2.tm_wday + 6) % 7;\n return leadingNulls(Math.floor(days / 7), 2);\n }, \"%y\": (date2) => (date2.tm_year + 1900).toString().substring(2), \"%Y\": (date2) => date2.tm_year + 1900, \"%z\": (date2) => {\n var off = date2.tm_gmtoff;\n var ahead = off >= 0;\n off = Math.abs(off) / 60;\n off = off / 60 * 100 + off % 60;\n return (ahead ? \"+\" : \"-\") + String(\"0000\" + off).slice(-4);\n }, \"%Z\": (date2) => date2.tm_zone, \"%%\": () => \"%\" };\n pattern = pattern.replace(/%%/g, \"\\0\\0\");\n for (var rule in EXPANSION_RULES_2) {\n if (pattern.includes(rule)) {\n pattern = pattern.replace(new RegExp(rule, \"g\"), EXPANSION_RULES_2[rule](date));\n }\n }\n pattern = pattern.replace(/\\0\\0/g, \"%\");\n var bytes = intArrayFromString(pattern, false);\n if (bytes.length > maxsize) {\n return 0;\n }\n writeArrayToMemory(bytes, s);\n return bytes.length - 1;\n }\n function _strftime_l(s, maxsize, format, tm, loc) {\n s >>>= 0;\n maxsize >>>= 0;\n format >>>= 0;\n tm >>>= 0;\n loc >>>= 0;\n return _strftime(s, maxsize, format, tm);\n }\n InternalError = Module[\"InternalError\"] = class InternalError extends Error {\n constructor(message) {\n super(message);\n this.name = \"InternalError\";\n }\n };\n embind_init_charCodes();\n BindingError = Module[\"BindingError\"] = class BindingError extends Error {\n constructor(message) {\n super(message);\n this.name = \"BindingError\";\n }\n };\n init_ClassHandle();\n init_embind();\n init_RegisteredPointer();\n UnboundTypeError = Module[\"UnboundTypeError\"] = extendError(Error, \"UnboundTypeError\");\n handleAllocatorInit();\n init_emval();\n var FSNode = function(parent, name, mode, rdev) {\n if (!parent) {\n parent = this;\n }\n this.parent = parent;\n this.mount = parent.mount;\n this.mounted = null;\n this.id = FS.nextInode++;\n this.name = name;\n this.mode = mode;\n this.node_ops = {};\n this.stream_ops = {};\n this.rdev = rdev;\n };\n var readMode = 292 | 73;\n var writeMode = 146;\n Object.defineProperties(FSNode.prototype, { read: { get: function() {\n return (this.mode & readMode) === readMode;\n }, set: function(val) {\n val ? this.mode |= readMode : this.mode &= ~readMode;\n } }, write: { get: function() {\n return (this.mode & writeMode) === writeMode;\n }, set: function(val) {\n val ? this.mode |= writeMode : this.mode &= ~writeMode;\n } }, isFolder: { get: function() {\n return FS.isDir(this.mode);\n } }, isDevice: { get: function() {\n return FS.isChrdev(this.mode);\n } } });\n FS.FSNode = FSNode;\n FS.createPreloadedFile = FS_createPreloadedFile;\n FS.staticInit();\n var wasmImports = { f: ___cxa_throw, W: __embind_finalize_value_array, q: __embind_finalize_value_object, G: __embind_register_bigint, U: __embind_register_bool, p: __embind_register_class, o: __embind_register_class_constructor, b: __embind_register_class_function, T: __embind_register_emval, z: __embind_register_float, c: __embind_register_function, s: __embind_register_integer, k: __embind_register_memory_view, A: __embind_register_std_string, w: __embind_register_std_wstring, X: __embind_register_value_array, l: __embind_register_value_array_element, r: __embind_register_value_object, e: __embind_register_value_object_field, V: __embind_register_void, N: __emscripten_get_now_is_monotonic, j: __emval_as, v: __emval_call, a: __emval_decref, y: __emval_get_global, h: __emval_get_property, n: __emval_incref, C: __emval_instanceof, x: __emval_is_number, B: __emval_is_string, Y: __emval_new_array, g: __emval_new_cstring, t: __emval_new_object, i: __emval_run_destructors, m: __emval_set_property, d: __emval_take_value, E: __gmtime_js, F: __localtime_js, L: __tzset_js, u: _abort, O: _emscripten_date_now, S: _emscripten_memcpy_big, K: _emscripten_resize_heap, Q: _environ_get, R: _environ_sizes_get, I: _fd_close, P: _fd_fdstat_get, J: _fd_read, D: _fd_seek, M: _fd_write, H: _strftime_l };\n var asm = createWasm();\n var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports[\"_\"])();\n var _malloc = (a0) => (_malloc = wasmExports[\"aa\"])(a0);\n var ___getTypeName = (a0) => (___getTypeName = wasmExports[\"ba\"])(a0);\n var __embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = () => (__embind_initialize_bindings = Module[\"__embind_initialize_bindings\"] = wasmExports[\"ca\"])();\n var ___errno_location = () => (___errno_location = wasmExports[\"__errno_location\"])();\n var _free = (a0) => (_free = wasmExports[\"da\"])(a0);\n var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports[\"__cxa_increment_exception_refcount\"])(a0);\n var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports[\"ea\"])(a0);\n var dynCall_jiji = Module[\"dynCall_jiji\"] = (a0, a1, a2, a3, a4) => (dynCall_jiji = Module[\"dynCall_jiji\"] = wasmExports[\"fa\"])(a0, a1, a2, a3, a4);\n var dynCall_viijii = Module[\"dynCall_viijii\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_viijii = Module[\"dynCall_viijii\"] = wasmExports[\"ga\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = (a0, a1, a2, a3, a4, a5, a6) => (dynCall_iiiiij = Module[\"dynCall_iiiiij\"] = wasmExports[\"ha\"])(a0, a1, a2, a3, a4, a5, a6);\n var dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8) => (dynCall_iiiiijj = Module[\"dynCall_iiiiijj\"] = wasmExports[\"ia\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8);\n var dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) => (dynCall_iiiiiijj = Module[\"dynCall_iiiiiijj\"] = wasmExports[\"ja\"])(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);\n function applySignatureConversions(exports2) {\n exports2 = Object.assign({}, exports2);\n var makeWrapper_pp = (f) => (a0) => f(a0) >>> 0;\n var makeWrapper_p = (f) => () => f() >>> 0;\n exports2[\"malloc\"] = makeWrapper_pp(exports2[\"malloc\"]);\n exports2[\"__getTypeName\"] = makeWrapper_pp(exports2[\"__getTypeName\"]);\n exports2[\"__errno_location\"] = makeWrapper_p(exports2[\"__errno_location\"]);\n exports2[\"stackSave\"] = makeWrapper_p(exports2[\"stackSave\"]);\n exports2[\"stackAlloc\"] = makeWrapper_pp(exports2[\"stackAlloc\"]);\n return exports2;\n }\n var calledRun;\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run() {\n if (runDependencies > 0) {\n return;\n }\n preRun();\n if (runDependencies > 0) {\n return;\n }\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module[\"calledRun\"] = true;\n if (ABORT)\n return;\n initRuntime();\n readyPromiseResolve(Module);\n if (Module[\"onRuntimeInitialized\"])\n Module[\"onRuntimeInitialized\"]();\n postRun();\n }\n if (Module[\"setStatus\"]) {\n Module[\"setStatus\"](\"Running...\");\n setTimeout(function() {\n setTimeout(function() {\n Module[\"setStatus\"](\"\");\n }, 1);\n doRun();\n }, 1);\n } else {\n doRun();\n }\n }\n if (Module[\"preInit\"]) {\n if (typeof Module[\"preInit\"] == \"function\")\n Module[\"preInit\"] = [Module[\"preInit\"]];\n while (Module[\"preInit\"].length > 0) {\n Module[\"preInit\"].pop()();\n }\n }\n run();\n return moduleArg.ready;\n };\n })();\n if (typeof exports === \"object\" && typeof module === \"object\")\n module.exports = WebIFCWasm2;\n else if (typeof define === \"function\" && define[\"amd\"])\n define([], () => WebIFCWasm2);\n }\n});\n\n// dist/ifc-schema.ts\nvar IFCURIREFERENCE = 950732822;\nvar IFCTIME = 4075327185;\nvar IFCTEMPERATURERATEOFCHANGEMEASURE = 1209108979;\nvar IFCSOUNDPRESSURELEVELMEASURE = 3457685358;\nvar IFCSOUNDPOWERLEVELMEASURE = 4157543285;\nvar IFCPROPERTYSETDEFINITIONSET = 2798247006;\nvar IFCPOSITIVEINTEGER = 1790229001;\nvar IFCNONNEGATIVELENGTHMEASURE = 525895558;\nvar IFCLINEINDEX = 1774176899;\nvar IFCLANGUAGEID = 1275358634;\nvar IFCDURATION = 2541165894;\nvar IFCDAYINWEEKNUMBER = 3701338814;\nvar IFCDATETIME = 2195413836;\nvar IFCDATE = 937566702;\nvar IFCCARDINALPOINTREFERENCE = 1683019596;\nvar IFCBINARY = 2314439260;\nvar IFCAREADENSITYMEASURE = 1500781891;\nvar IFCARCINDEX = 3683503648;\nvar IFCYEARNUMBER = 4065007721;\nvar IFCWARPINGMOMENTMEASURE = 1718600412;\nvar IFCWARPINGCONSTANTMEASURE = 51269191;\nvar IFCVOLUMETRICFLOWRATEMEASURE = 2593997549;\nvar IFCVOLUMEMEASURE = 3458127941;\nvar IFCVAPORPERMEABILITYMEASURE = 3345633955;\nvar IFCTORQUEMEASURE = 1278329552;\nvar IFCTIMESTAMP = 2591213694;\nvar IFCTIMEMEASURE = 2726807636;\nvar IFCTHERMODYNAMICTEMPERATUREMEASURE = 743184107;\nvar IFCTHERMALTRANSMITTANCEMEASURE = 2016195849;\nvar IFCTHERMALRESISTANCEMEASURE = 857959152;\nvar IFCTHERMALEXPANSIONCOEFFICIENTMEASURE = 2281867870;\nvar IFCTHERMALCONDUCTIVITYMEASURE = 2645777649;\nvar IFCTHERMALADMITTANCEMEASURE = 232962298;\nvar IFCTEXTTRANSFORMATION = 296282323;\nvar IFCTEXTFONTNAME = 603696268;\nvar IFCTEXTDECORATION = 3490877962;\nvar IFCTEXTALIGNMENT = 1460886941;\nvar IFCTEXT = 2801250643;\nvar IFCTEMPERATUREGRADIENTMEASURE = 58845555;\nvar IFCSPECULARROUGHNESS = 361837227;\nvar IFCSPECULAREXPONENT = 2757832317;\nvar IFCSPECIFICHEATCAPACITYMEASURE = 3477203348;\nvar IFCSOUNDPRESSUREMEASURE = 993287707;\nvar IFCSOUNDPOWERMEASURE = 846465480;\nvar IFCSOLIDANGLEMEASURE = 3471399674;\nvar IFCSHEARMODULUSMEASURE = 408310005;\nvar IFCSECTIONALAREAINTEGRALMEASURE = 2190458107;\nvar IFCSECTIONMODULUSMEASURE = 3467162246;\nvar IFCSECONDINMINUTE = 2766185779;\nvar IFCROTATIONALSTIFFNESSMEASURE = 3211557302;\nvar IFCROTATIONALMASSMEASURE = 1755127002;\nvar IFCROTATIONALFREQUENCYMEASURE = 2133746277;\nvar IFCREAL = 200335297;\nvar IFCRATIOMEASURE = 96294661;\nvar IFCRADIOACTIVITYMEASURE = 3972513137;\nvar IFCPRESSUREMEASURE = 3665567075;\nvar IFCPRESENTABLETEXT = 2169031380;\nvar IFCPOWERMEASURE = 1364037233;\nvar IFCPOSITIVERATIOMEASURE = 1245737093;\nvar IFCPOSITIVEPLANEANGLEMEASURE = 3054510233;\nvar IFCPOSITIVELENGTHMEASURE = 2815919920;\nvar IFCPLANEANGLEMEASURE = 4042175685;\nvar IFCPLANARFORCEMEASURE = 2642773653;\nvar IFCPARAMETERVALUE = 2260317790;\nvar IFCPHMEASURE = 929793134;\nvar IFCNUMERICMEASURE = 2395907400;\nvar IFCNORMALISEDRATIOMEASURE = 2095195183;\nvar IFCMONTHINYEARNUMBER = 765770214;\nvar IFCMONETARYMEASURE = 2615040989;\nvar IFCMOMENTOFINERTIAMEASURE = 3114022597;\nvar IFCMOLECULARWEIGHTMEASURE = 1648970520;\nvar IFCMOISTUREDIFFUSIVITYMEASURE = 3177669450;\nvar IFCMODULUSOFSUBGRADEREACTIONMEASURE = 1753493141;\nvar IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE = 1052454078;\nvar IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE = 2173214787;\nvar IFCMODULUSOFELASTICITYMEASURE = 3341486342;\nvar IFCMINUTEINHOUR = 102610177;\nvar IFCMASSPERLENGTHMEASURE = 3531705166;\nvar IFCMASSMEASURE = 3124614049;\nvar IFCMASSFLOWRATEMEASURE = 4017473158;\nvar IFCMASSDENSITYMEASURE = 1477762836;\nvar IFCMAGNETICFLUXMEASURE = 2486716878;\nvar IFCMAGNETICFLUXDENSITYMEASURE = 286949696;\nvar IFCLUMINOUSINTENSITYMEASURE = 151039812;\nvar IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE = 2755797622;\nvar IFCLUMINOUSFLUXMEASURE = 2095003142;\nvar IFCLOGICAL = 503418787;\nvar IFCLINEARVELOCITYMEASURE = 3086160713;\nvar IFCLINEARSTIFFNESSMEASURE = 1307019551;\nvar IFCLINEARMOMENTMEASURE = 2128979029;\nvar IFCLINEARFORCEMEASURE = 191860431;\nvar IFCLENGTHMEASURE = 1243674935;\nvar IFCLABEL = 3258342251;\nvar IFCKINEMATICVISCOSITYMEASURE = 2054016361;\nvar IFCISOTHERMALMOISTURECAPACITYMEASURE = 3192672207;\nvar IFCIONCONCENTRATIONMEASURE = 3686016028;\nvar IFCINTEGERCOUNTRATEMEASURE = 3809634241;\nvar IFCINTEGER = 1939436016;\nvar IFCINDUCTANCEMEASURE = 2679005408;\nvar IFCILLUMINANCEMEASURE = 3358199106;\nvar IFCIDENTIFIER = 983778844;\nvar IFCHOURINDAY = 2589826445;\nvar IFCHEATINGVALUEMEASURE = 1158859006;\nvar IFCHEATFLUXDENSITYMEASURE = 3113092358;\nvar IFCGLOBALLYUNIQUEID = 3064340077;\nvar IFCFREQUENCYMEASURE = 3044325142;\nvar IFCFORCEMEASURE = 1361398929;\nvar IFCFONTWEIGHT = 2590844177;\nvar IFCFONTVARIANT = 2715512545;\nvar IFCFONTSTYLE = 1102727119;\nvar IFCENERGYMEASURE = 2078135608;\nvar IFCELECTRICVOLTAGEMEASURE = 2506197118;\nvar IFCELECTRICRESISTANCEMEASURE = 2951915441;\nvar IFCELECTRICCURRENTMEASURE = 3790457270;\nvar IFCELECTRICCONDUCTANCEMEASURE = 2093906313;\nvar IFCELECTRICCHARGEMEASURE = 3818826038;\nvar IFCELECTRICCAPACITANCEMEASURE = 1827137117;\nvar IFCDYNAMICVISCOSITYMEASURE = 69416015;\nvar IFCDOSEEQUIVALENTMEASURE = 524656162;\nvar IFCDIMENSIONCOUNT = 4134073009;\nvar IFCDESCRIPTIVEMEASURE = 1514641115;\nvar IFCDAYLIGHTSAVINGHOUR = 300323983;\nvar IFCDAYINMONTHNUMBER = 86635668;\nvar IFCCURVATUREMEASURE = 94842927;\nvar IFCCOUNTMEASURE = 1778710042;\nvar IFCCONTEXTDEPENDENTMEASURE = 3238673880;\nvar IFCCOMPOUNDPLANEANGLEMEASURE = 3812528620;\nvar IFCCOMPLEXNUMBER = 2991860651;\nvar IFCBOXALIGNMENT = 1867003952;\nvar IFCBOOLEAN = 2735952531;\nvar IFCAREAMEASURE = 2650437152;\nvar IFCANGULARVELOCITYMEASURE = 632304761;\nvar IFCAMOUNTOFSUBSTANCEMEASURE = 360377573;\nvar IFCACCELERATIONMEASURE = 4182062534;\nvar IFCABSORBEDDOSEMEASURE = 3699917729;\nvar IFCGEOSLICE = 1971632696;\nvar IFCGEOMODEL = 2680139844;\nvar IFCELECTRICFLOWTREATMENTDEVICE = 24726584;\nvar IFCDISTRIBUTIONBOARD = 3693000487;\nvar IFCCONVEYORSEGMENT = 3460952963;\nvar IFCCAISSONFOUNDATION = 3999819293;\nvar IFCBOREHOLE = 3314249567;\nvar IFCBEARING = 4196446775;\nvar IFCALIGNMENT = 325726236;\nvar IFCTRACKELEMENT = 3425753595;\nvar IFCSIGNAL = 991950508;\nvar IFCREINFORCEDSOIL = 3798194928;\nvar IFCRAIL = 3290496277;\nvar IFCPAVEMENT = 1383356374;\nvar IFCNAVIGATIONELEMENT = 2182337498;\nvar IFCMOORINGDEVICE = 234836483;\nvar IFCMOBILETELECOMMUNICATIONSAPPLIANCE = 2078563270;\nvar IFCLIQUIDTERMINAL = 1638804497;\nvar IFCLINEARPOSITIONINGELEMENT = 1154579445;\nvar IFCKERB = 2696325953;\nvar IFCGEOTECHNICALASSEMBLY = 2713699986;\nvar IFCELECTRICFLOWTREATMENTDEVICETYPE = 2142170206;\nvar IFCEARTHWORKSFILL = 3376911765;\nvar IFCEARTHWORKSELEMENT = 1077100507;\nvar IFCEARTHWORKSCUT = 3071239417;\nvar IFCDISTRIBUTIONBOARDTYPE = 479945903;\nvar IFCDEEPFOUNDATION = 3426335179;\nvar IFCCOURSE = 1502416096;\nvar IFCCONVEYORSEGMENTTYPE = 2940368186;\nvar IFCCAISSONFOUNDATIONTYPE = 3203706013;\nvar IFCBUILTSYSTEM = 3862327254;\nvar IFCBUILTELEMENT = 1876633798;\nvar IFCBRIDGEPART = 963979645;\nvar IFCBRIDGE = 644574406;\nvar IFCBEARINGTYPE = 3649138523;\nvar IFCALIGNMENTVERTICAL = 1662888072;\nvar IFCALIGNMENTSEGMENT = 317615605;\nvar IFCALIGNMENTHORIZONTAL = 1545765605;\nvar IFCALIGNMENTCANT = 4266260250;\nvar IFCVIBRATIONDAMPERTYPE = 3956297820;\nvar IFCVIBRATIONDAMPER = 1530820697;\nvar IFCVEHICLE = 840318589;\nvar IFCTRANSPORTATIONDEVICE = 1953115116;\nvar IFCTRACKELEMENTTYPE = 618700268;\nvar IFCTENDONCONDUITTYPE = 2281632017;\nvar IFCTENDONCONDUIT = 3663046924;\nvar IFCSINESPIRAL = 42703149;\nvar IFCSIGNALTYPE = 1894708472;\nvar IFCSIGNTYPE = 3599934289;\nvar IFCSIGN = 33720170;\nvar IFCSEVENTHORDERPOLYNOMIALSPIRAL = 1027922057;\nvar IFCSEGMENTEDREFERENCECURVE = 544395925;\nvar IFCSECONDORDERPOLYNOMIALSPIRAL = 3649235739;\nvar IFCROADPART = 550521510;\nvar IFCROAD = 146592293;\nvar IFCRELADHERESTOELEMENT = 3818125796;\nvar IFCREFERENT = 4021432810;\nvar IFCRAILWAYPART = 1891881377;\nvar IFCRAILWAY = 3992365140;\nvar IFCRAILTYPE = 1763565496;\nvar IFCPOSITIONINGELEMENT = 1946335990;\nvar IFCPAVEMENTTYPE = 514975943;\nvar IFCNAVIGATIONELEMENTTYPE = 506776471;\nvar IFCMOORINGDEVICETYPE = 710110818;\nvar IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE = 1950438474;\nvar IFCMARINEPART = 976884017;\nvar IFCMARINEFACILITY = 525669439;\nvar IFCLIQUIDTERMINALTYPE = 1770583370;\nvar IFCLINEARELEMENT = 2176059722;\nvar IFCKERBTYPE = 679976338;\nvar IFCIMPACTPROTECTIONDEVICETYPE = 3948183225;\nvar IFCIMPACTPROTECTIONDEVICE = 2568555532;\nvar IFCGRADIENTCURVE = 2898700619;\nvar IFCGEOTECHNICALSTRATUM = 1594536857;\nvar IFCGEOTECHNICALELEMENT = 4230923436;\nvar IFCFACILITYPARTCOMMON = 4228831410;\nvar IFCFACILITYPART = 1310830890;\nvar IFCFACILITY = 24185140;\nvar IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID = 4234616927;\nvar IFCDEEPFOUNDATIONTYPE = 1306400036;\nvar IFCCOURSETYPE = 4189326743;\nvar IFCCOSINESPIRAL = 2000195564;\nvar IFCCLOTHOID = 3497074424;\nvar IFCBUILTELEMENTTYPE = 1626504194;\nvar IFCVEHICLETYPE = 3651464721;\nvar IFCTRIANGULATEDIRREGULARNETWORK = 1229763772;\nvar IFCTRANSPORTATIONDEVICETYPE = 3665877780;\nvar IFCTHIRDORDERPOLYNOMIALSPIRAL = 782932809;\nvar IFCSPIRAL = 2735484536;\nvar IFCSECTIONEDSURFACE = 1356537516;\nvar IFCSECTIONEDSOLIDHORIZONTAL = 1290935644;\nvar IFCSECTIONEDSOLID = 1862484736;\nvar IFCRELPOSITIONS = 1441486842;\nvar IFCRELASSOCIATESPROFILEDEF = 1033248425;\nvar IFCPOLYNOMIALCURVE = 3381221214;\nvar IFCOFFSETCURVEBYDISTANCES = 2485787929;\nvar IFCOFFSETCURVE = 590820931;\nvar IFCINDEXEDPOLYGONALTEXTUREMAP = 3465909080;\nvar IFCDIRECTRIXCURVESWEPTAREASOLID = 593015953;\nvar IFCCURVESEGMENT = 4212018352;\nvar IFCAXIS2PLACEMENTLINEAR = 3425423356;\nvar IFCSEGMENT = 823603102;\nvar IFCPOINTBYDISTANCEEXPRESSION = 2165702409;\nvar IFCOPENCROSSPROFILEDEF = 182550632;\nvar IFCLINEARPLACEMENT = 388784114;\nvar IFCALIGNMENTHORIZONTALSEGMENT = 536804194;\nvar IFCALIGNMENTCANTSEGMENT = 3752311538;\nvar IFCTEXTURECOORDINATEINDICESWITHVOIDS = 1010789467;\nvar IFCTEXTURECOORDINATEINDICES = 222769930;\nvar IFCQUANTITYNUMBER = 2691318326;\nvar IFCALIGNMENTVERTICALSEGMENT = 3633395639;\nvar IFCALIGNMENTPARAMETERSEGMENT = 2879124712;\nvar IFCCONTROLLER = 25142252;\nvar IFCALARM = 3087945054;\nvar IFCACTUATOR = 4288193352;\nvar IFCUNITARYCONTROLELEMENT = 630975310;\nvar IFCSENSOR = 4086658281;\nvar IFCPROTECTIVEDEVICETRIPPINGUNIT = 2295281155;\nvar IFCFLOWINSTRUMENT = 182646315;\nvar IFCFIRESUPPRESSIONTERMINAL = 1426591983;\nvar IFCFILTER = 819412036;\nvar IFCFAN = 3415622556;\nvar IFCELECTRICTIMECONTROL = 1003880860;\nvar IFCELECTRICMOTOR = 402227799;\nvar IFCELECTRICGENERATOR = 264262732;\nvar IFCELECTRICFLOWSTORAGEDEVICE = 3310460725;\nvar IFCELECTRICDISTRIBUTIONBOARD = 862014818;\nvar IFCELECTRICAPPLIANCE = 1904799276;\nvar IFCDUCTSILENCER = 1360408905;\nvar IFCDUCTSEGMENT = 3518393246;\nvar IFCDUCTFITTING = 342316401;\nvar IFCDISTRIBUTIONCIRCUIT = 562808652;\nvar IFCDAMPER = 4074379575;\nvar IFCCOOLINGTOWER = 3640358203;\nvar IFCCOOLEDBEAM = 4136498852;\nvar IFCCONDENSER = 2272882330;\nvar IFCCOMPRESSOR = 3571504051;\nvar IFCCOMMUNICATIONSAPPLIANCE = 3221913625;\nvar IFCCOIL = 639361253;\nvar IFCCHILLER = 3902619387;\nvar IFCCABLESEGMENT = 4217484030;\nvar IFCCABLEFITTING = 1051757585;\nvar IFCCABLECARRIERSEGMENT = 3758799889;\nvar IFCCABLECARRIERFITTING = 635142910;\nvar IFCBURNER = 2938176219;\nvar IFCBOILER = 32344328;\nvar IFCBEAMSTANDARDCASE = 2906023776;\nvar IFCAUDIOVISUALAPPLIANCE = 277319702;\nvar IFCAIRTOAIRHEATRECOVERY = 2056796094;\nvar IFCAIRTERMINALBOX = 177149247;\nvar IFCAIRTERMINAL = 1634111441;\nvar IFCWINDOWSTANDARDCASE = 486154966;\nvar IFCWASTETERMINAL = 4237592921;\nvar IFCWALLELEMENTEDCASE = 4156078855;\nvar IFCVALVE = 4207607924;\nvar IFCUNITARYEQUIPMENT = 4292641817;\nvar IFCUNITARYCONTROLELEMENTTYPE = 3179687236;\nvar IFCTUBEBUNDLE = 3026737570;\nvar IFCTRANSFORMER = 3825984169;\nvar IFCTANK = 812556717;\nvar IFCSWITCHINGDEVICE = 1162798199;\nvar IFCSTRUCTURALLOADCASE = 385403989;\nvar IFCSTACKTERMINAL = 1404847402;\nvar IFCSPACEHEATER = 1999602285;\nvar IFCSOLARDEVICE = 3420628829;\nvar IFCSLABSTANDARDCASE = 3027962421;\nvar IFCSLABELEMENTEDCASE = 3127900445;\nvar IFCSHADINGDEVICE = 1329646415;\nvar IFCSANITARYTERMINAL = 3053780830;\nvar IFCREINFORCINGBARTYPE = 2572171363;\nvar IFCRATIONALBSPLINECURVEWITHKNOTS = 1232101972;\nvar IFCPUMP = 90941305;\nvar IFCPROTECTIVEDEVICETRIPPINGUNITTYPE = 655969474;\nvar IFCPROTECTIVEDEVICE = 738039164;\nvar IFCPLATESTANDARDCASE = 1156407060;\nvar IFCPIPESEGMENT = 3612865200;\nvar IFCPIPEFITTING = 310824031;\nvar IFCOUTLET = 3694346114;\nvar IFCOUTERBOUNDARYCURVE = 144952367;\nvar IFCMOTORCONNECTION = 2474470126;\nvar IFCMEMBERSTANDARDCASE = 1911478936;\nvar IFCMEDICALDEVICE = 1437502449;\nvar IFCLIGHTFIXTURE = 629592764;\nvar IFCLAMP = 76236018;\nvar IFCJUNCTIONBOX = 2176052936;\nvar IFCINTERCEPTOR = 4175244083;\nvar IFCHUMIDIFIER = 2068733104;\nvar IFCHEATEXCHANGER = 3319311131;\nvar IFCFLOWMETER = 2188021234;\nvar IFCEXTERNALSPATIALELEMENT = 1209101575;\nvar IFCEVAPORATOR = 484807127;\nvar IFCEVAPORATIVECOOLER = 3747195512;\nvar IFCENGINE = 2814081492;\nvar IFCELECTRICDISTRIBUTIONBOARDTYPE = 2417008758;\nvar IFCDOORSTANDARDCASE = 3242481149;\nvar IFCDISTRIBUTIONSYSTEM = 3205830791;\nvar IFCCOMMUNICATIONSAPPLIANCETYPE = 400855858;\nvar IFCCOLUMNSTANDARDCASE = 905975707;\nvar IFCCIVILELEMENT = 1677625105;\nvar IFCCHIMNEY = 3296154744;\nvar IFCCABLEFITTINGTYPE = 2674252688;\nvar IFCBURNERTYPE = 2188180465;\nvar IFCBUILDINGSYSTEM = 1177604601;\nvar IFCBUILDINGELEMENTPARTTYPE = 39481116;\nvar IFCBOUNDARYCURVE = 1136057603;\nvar IFCBSPLINECURVEWITHKNOTS = 2461110595;\nvar IFCAUDIOVISUALAPPLIANCETYPE = 1532957894;\nvar IFCWORKCALENDAR = 4088093105;\nvar IFCWINDOWTYPE = 4009809668;\nvar IFCVOIDINGFEATURE = 926996030;\nvar IFCVIBRATIONISOLATOR = 2391383451;\nvar IFCTENDONTYPE = 2415094496;\nvar IFCTENDONANCHORTYPE = 3081323446;\nvar IFCSYSTEMFURNITUREELEMENT = 413509423;\nvar IFCSURFACEFEATURE = 3101698114;\nvar IFCSTRUCTURALSURFACEACTION = 3657597509;\nvar IFCSTRUCTURALCURVEREACTION = 2757150158;\nvar IFCSTRUCTURALCURVEACTION = 1004757350;\nvar IFCSTAIRTYPE = 338393293;\nvar IFCSOLARDEVICETYPE = 1072016465;\nvar IFCSHADINGDEVICETYPE = 4074543187;\nvar IFCSEAMCURVE = 2157484638;\nvar IFCROOFTYPE = 2781568857;\nvar IFCREINFORCINGMESHTYPE = 2310774935;\nvar IFCREINFORCINGELEMENTTYPE = 964333572;\nvar IFCRATIONALBSPLINESURFACEWITHKNOTS = 683857671;\nvar IFCRAMPTYPE = 1469900589;\nvar IFCPOLYGONALFACESET = 2839578677;\nvar IFCPILETYPE = 1158309216;\nvar IFCOPENINGSTANDARDCASE = 3079942009;\nvar IFCMEDICALDEVICETYPE = 1114901282;\nvar IFCINTERSECTIONCURVE = 3113134337;\nvar IFCINTERCEPTORTYPE = 3946677679;\nvar IFCINDEXEDPOLYCURVE = 2571569899;\nvar IFCGEOGRAPHICELEMENT = 3493046030;\nvar IFCFURNITURE = 1509553395;\nvar IFCFOOTINGTYPE = 1893162501;\nvar IFCEXTERNALSPATIALSTRUCTUREELEMENT = 2853485674;\nvar IFCEVENT = 4148101412;\nvar IFCENGINETYPE = 132023988;\nvar IFCELEMENTASSEMBLYTYPE = 2397081782;\nvar IFCDOORTYPE = 2323601079;\nvar IFCCYLINDRICALSURFACE = 1213902940;\nvar IFCCONSTRUCTIONPRODUCTRESOURCETYPE = 1525564444;\nvar IFCCONSTRUCTIONMATERIALRESOURCETYPE = 4105962743;\nvar IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE = 2185764099;\nvar IFCCOMPOSITECURVEONSURFACE = 15328376;\nvar IFCCOMPLEXPROPERTYTEMPLATE = 3875453745;\nvar IFCCIVILELEMENTTYPE = 3893394355;\nvar IFCCHIMNEYTYPE = 2197970202;\nvar IFCBSPLINESURFACEWITHKNOTS = 167062518;\nvar IFCBSPLINESURFACE = 2887950389;\nvar IFCADVANCEDBREPWITHVOIDS = 2603310189;\nvar IFCADVANCEDBREP = 1635779807;\nvar IFCTRIANGULATEDFACESET = 2916149573;\nvar IFCTOROIDALSURFACE = 1935646853;\nvar IFCTESSELLATEDFACESET = 2387106220;\nvar IFCTASKTYPE = 3206491090;\nvar IFCSURFACECURVE = 699246055;\nvar IFCSUBCONTRACTRESOURCETYPE = 4095615324;\nvar IFCSTRUCTURALSURFACEREACTION = 603775116;\nvar IFCSPHERICALSURFACE = 4015995234;\nvar IFCSPATIALZONETYPE = 2481509218;\nvar IFCSPATIALZONE = 463610769;\nvar IFCSPATIALELEMENTTYPE = 710998568;\nvar IFCSPATIALELEMENT = 1412071761;\nvar IFCSIMPLEPROPERTYTEMPLATE = 3663146110;\nvar IFCREVOLVEDAREASOLIDTAPERED = 3243963512;\nvar IFCREPARAMETRISEDCOMPOSITECURVESEGMENT = 816062949;\nvar IFCRELSPACEBOUNDARY2NDLEVEL = 1521410863;\nvar IFCRELSPACEBOUNDARY1STLEVEL = 3523091289;\nvar IFCRELINTERFERESELEMENTS = 427948657;\nvar IFCRELDEFINESBYTEMPLATE = 307848117;\nvar IFCRELDEFINESBYOBJECT = 1462361463;\nvar IFCRELDECLARES = 2565941209;\nvar IFCRELASSIGNSTOGROUPBYFACTOR = 1027710054;\nvar IFCPROPERTYTEMPLATE = 3521284610;\nvar IFCPROPERTYSETTEMPLATE = 492091185;\nvar IFCPROJECTLIBRARY = 653396225;\nvar IFCPROCEDURETYPE = 569719735;\nvar IFCPREDEFINEDPROPERTYSET = 3967405729;\nvar IFCPCURVE = 1682466193;\nvar IFCLABORRESOURCETYPE = 428585644;\nvar IFCINDEXEDPOLYGONALFACEWITHVOIDS = 2294589976;\nvar IFCINDEXEDPOLYGONALFACE = 178912537;\nvar IFCGEOGRAPHICELEMENTTYPE = 4095422895;\nvar IFCFIXEDREFERENCESWEPTAREASOLID = 2652556860;\nvar IFCEXTRUDEDAREASOLIDTAPERED = 2804161546;\nvar IFCEVENTTYPE = 4024345920;\nvar IFCCURVEBOUNDEDSURFACE = 2629017746;\nvar IFCCREWRESOURCETYPE = 1815067380;\nvar IFCCONTEXT = 3419103109;\nvar IFCCONSTRUCTIONRESOURCETYPE = 2574617495;\nvar IFCCARTESIANPOINTLIST3D = 2059837836;\nvar IFCCARTESIANPOINTLIST2D = 1675464909;\nvar IFCCARTESIANPOINTLIST = 574549367;\nvar IFCADVANCEDFACE = 3406155212;\nvar IFCTYPERESOURCE = 3698973494;\nvar IFCTYPEPROCESS = 3736923433;\nvar IFCTESSELLATEDITEM = 901063453;\nvar IFCSWEPTDISKSOLIDPOLYGONAL = 1096409881;\nvar IFCRESOURCETIME = 1042787934;\nvar IFCRESOURCECONSTRAINTRELATIONSHIP = 1608871552;\nvar IFCRESOURCEAPPROVALRELATIONSHIP = 2943643501;\nvar IFCQUANTITYSET = 2090586900;\nvar IFCPROPERTYTEMPLATEDEFINITION = 1482703590;\nvar IFCPREDEFINEDPROPERTIES = 3778827333;\nvar IFCMIRROREDPROFILEDEF = 2998442950;\nvar IFCMATERIALRELATIONSHIP = 853536259;\nvar IFCMATERIALPROFILESETUSAGETAPERING = 3404854881;\nvar IFCMATERIALPROFILESETUSAGE = 3079605661;\nvar IFCMATERIALCONSTITUENTSET = 2852063980;\nvar IFCMATERIALCONSTITUENT = 3708119e3;\nvar IFCLAGTIME = 1585845231;\nvar IFCINDEXEDTRIANGLETEXTUREMAP = 2133299955;\nvar IFCINDEXEDTEXTUREMAP = 1437953363;\nvar IFCINDEXEDCOLOURMAP = 3570813810;\nvar IFCEXTERNALREFERENCERELATIONSHIP = 1437805879;\nvar IFCEXTENDEDPROPERTIES = 297599258;\nvar IFCEVENTTIME = 211053100;\nvar IFCCONVERSIONBASEDUNITWITHOFFSET = 2713554722;\nvar IFCCOLOURRGBLIST = 3285139300;\nvar IFCWORKTIME = 1236880293;\nvar IFCTIMEPERIOD = 1199560280;\nvar IFCTEXTUREVERTEXLIST = 3611470254;\nvar IFCTASKTIMERECURRING = 2771591690;\nvar IFCTASKTIME = 1549132990;\nvar IFCTABLECOLUMN = 2043862942;\nvar IFCSURFACEREINFORCEMENTAREA = 2934153892;\nvar IFCSTRUCTURALLOADORRESULT = 609421318;\nvar IFCSTRUCTURALLOADCONFIGURATION = 3478079324;\nvar IFCSCHEDULINGTIME = 1054537805;\nvar IFCRESOURCELEVELRELATIONSHIP = 2439245199;\nvar IFCREFERENCE = 2433181523;\nvar IFCRECURRENCEPATTERN = 3915482550;\nvar IFCPROPERTYABSTRACTION = 986844984;\nvar IFCPROJECTEDCRS = 3843373140;\nvar IFCPRESENTATIONITEM = 677532197;\nvar IFCMATERIALUSAGEDEFINITION = 1507914824;\nvar IFCMATERIALPROFILEWITHOFFSETS = 552965576;\nvar IFCMATERIALPROFILESET = 164193824;\nvar IFCMATERIALPROFILE = 2235152071;\nvar IFCMATERIALLAYERWITHOFFSETS = 1847252529;\nvar IFCMATERIALDEFINITION = 760658860;\nvar IFCMAPCONVERSION = 3057273783;\nvar IFCEXTERNALINFORMATION = 4294318154;\nvar IFCCOORDINATEREFERENCESYSTEM = 1466758467;\nvar IFCCOORDINATEOPERATION = 1785450214;\nvar IFCCONNECTIONVOLUMEGEOMETRY = 775493141;\nvar IFCREINFORCINGBAR = 979691226;\nvar IFCELECTRICDISTRIBUTIONPOINT = 3700593921;\nvar IFCDISTRIBUTIONCONTROLELEMENT = 1062813311;\nvar IFCDISTRIBUTIONCHAMBERELEMENT = 1052013943;\nvar IFCCONTROLLERTYPE = 578613899;\nvar IFCCHAMFEREDGEFEATURE = 2454782716;\nvar IFCBEAM = 753842376;\nvar IFCALARMTYPE = 3001207471;\nvar IFCACTUATORTYPE = 2874132201;\nvar IFCWINDOW = 3304561284;\nvar IFCWALLSTANDARDCASE = 3512223829;\nvar IFCWALL = 2391406946;\nvar IFCVIBRATIONISOLATORTYPE = 3313531582;\nvar IFCTENDONANCHOR = 2347447852;\nvar IFCTENDON = 3824725483;\nvar IFCSTRUCTURALANALYSISMODEL = 2515109513;\nvar IFCSTAIRFLIGHT = 4252922144;\nvar IFCSTAIR = 331165859;\nvar IFCSLAB = 1529196076;\nvar IFCSENSORTYPE = 1783015770;\nvar IFCROUNDEDEDGEFEATURE = 1376911519;\nvar IFCROOF = 2016517767;\nvar IFCREINFORCINGMESH = 2320036040;\nvar IFCREINFORCINGELEMENT = 3027567501;\nvar IFCRATIONALBEZIERCURVE = 3055160366;\nvar IFCRAMPFLIGHT = 3283111854;\nvar IFCRAMP = 3024970846;\nvar IFCRAILING = 2262370178;\nvar IFCPLATE = 3171933400;\nvar IFCPILE = 1687234759;\nvar IFCMEMBER = 1073191201;\nvar IFCFOOTING = 900683007;\nvar IFCFLOWTREATMENTDEVICE = 3508470533;\nvar IFCFLOWTERMINAL = 2223149337;\nvar IFCFLOWSTORAGEDEVICE = 707683696;\nvar IFCFLOWSEGMENT = 987401354;\nvar IFCFLOWMOVINGDEVICE = 3132237377;\nvar IFCFLOWINSTRUMENTTYPE = 4037862832;\nvar IFCFLOWFITTING = 4278956645;\nvar IFCFLOWCONTROLLER = 2058353004;\nvar IFCFIRESUPPRESSIONTERMINALTYPE = 4222183408;\nvar IFCFILTERTYPE = 1810631287;\nvar IFCFANTYPE = 346874300;\nvar IFCENERGYCONVERSIONDEVICE = 1658829314;\nvar IFCELECTRICALELEMENT = 857184966;\nvar IFCELECTRICALCIRCUIT = 1634875225;\nvar IFCELECTRICTIMECONTROLTYPE = 712377611;\nvar IFCELECTRICMOTORTYPE = 1217240411;\nvar IFCELECTRICHEATERTYPE = 1365060375;\nvar IFCELECTRICGENERATORTYPE = 1534661035;\nvar IFCELECTRICFLOWSTORAGEDEVICETYPE = 3277789161;\nvar IFCELECTRICAPPLIANCETYPE = 663422040;\nvar IFCEDGEFEATURE = 855621170;\nvar IFCDUCTSILENCERTYPE = 2030761528;\nvar IFCDUCTSEGMENTTYPE = 3760055223;\nvar IFCDUCTFITTINGTYPE = 869906466;\nvar IFCDOOR = 395920057;\nvar IFCDISTRIBUTIONPORT = 3041715199;\nvar IFCDISTRIBUTIONFLOWELEMENT = 3040386961;\nvar IFCDISTRIBUTIONELEMENT = 1945004755;\nvar IFCDISTRIBUTIONCONTROLELEMENTTYPE = 2063403501;\nvar IFCDISTRIBUTIONCHAMBERELEMENTTYPE = 1599208980;\nvar IFCDISCRETEACCESSORYTYPE = 2635815018;\nvar IFCDISCRETEACCESSORY = 1335981549;\nvar IFCDIAMETERDIMENSION = 4147604152;\nvar IFCDAMPERTYPE = 3961806047;\nvar IFCCURTAINWALL = 3495092785;\nvar IFCCOVERING = 1973544240;\nvar IFCCOOLINGTOWERTYPE = 2954562838;\nvar IFCCOOLEDBEAMTYPE = 335055490;\nvar IFCCONSTRUCTIONPRODUCTRESOURCE = 488727124;\nvar IFCCONSTRUCTIONMATERIALRESOURCE = 1060000209;\nvar IFCCONSTRUCTIONEQUIPMENTRESOURCE = 3898045240;\nvar IFCCONDITIONCRITERION = 1163958913;\nvar IFCCONDITION = 2188551683;\nvar IFCCONDENSERTYPE = 2816379211;\nvar IFCCOMPRESSORTYPE = 3850581409;\nvar IFCCOLUMN = 843113511;\nvar IFCCOILTYPE = 2301859152;\nvar IFCCIRCLE = 2611217952;\nvar IFCCHILLERTYPE = 2951183804;\nvar IFCCABLESEGMENTTYPE = 1285652485;\nvar IFCCABLECARRIERSEGMENTTYPE = 3293546465;\nvar IFCCABLECARRIERFITTINGTYPE = 395041908;\nvar IFCBUILDINGELEMENTPROXYTYPE = 1909888760;\nvar IFCBUILDINGELEMENTPROXY = 1095909175;\nvar IFCBUILDINGELEMENTPART = 2979338954;\nvar IFCBUILDINGELEMENTCOMPONENT = 52481810;\nvar IFCBUILDINGELEMENT = 3299480353;\nvar IFCBOILERTYPE = 231477066;\nvar IFCBEZIERCURVE = 1916977116;\nvar IFCBEAMTYPE = 819618141;\nvar IFCBSPLINECURVE = 1967976161;\nvar IFCASSET = 3460190687;\nvar IFCANGULARDIMENSION = 2470393545;\nvar IFCAIRTOAIRHEATRECOVERYTYPE = 1871374353;\nvar IFCAIRTERMINALTYPE = 3352864051;\nvar IFCAIRTERMINALBOXTYPE = 1411407467;\nvar IFCACTIONREQUEST = 3821786052;\nvar IFC2DCOMPOSITECURVE = 1213861670;\nvar IFCZONE = 1033361043;\nvar IFCWORKSCHEDULE = 3342526732;\nvar IFCWORKPLAN = 4218914973;\nvar IFCWORKCONTROL = 1028945134;\nvar IFCWASTETERMINALTYPE = 1133259667;\nvar IFCWALLTYPE = 1898987631;\nvar IFCVIRTUALELEMENT = 2769231204;\nvar IFCVALVETYPE = 728799441;\nvar IFCUNITARYEQUIPMENTTYPE = 1911125066;\nvar IFCTUBEBUNDLETYPE = 1600972822;\nvar IFCTRIMMEDCURVE = 3593883385;\nvar IFCTRANSPORTELEMENT = 1620046519;\nvar IFCTRANSFORMERTYPE = 1692211062;\nvar IFCTIMESERIESSCHEDULE = 1637806684;\nvar IFCTANKTYPE = 5716631;\nvar IFCSYSTEM = 2254336722;\nvar IFCSWITCHINGDEVICETYPE = 2315554128;\nvar IFCSUBCONTRACTRESOURCE = 148013059;\nvar IFCSTRUCTURALSURFACECONNECTION = 1975003073;\nvar IFCSTRUCTURALRESULTGROUP = 2986769608;\nvar IFCSTRUCTURALPOINTREACTION = 1235345126;\nvar IFCSTRUCTURALPOINTCONNECTION = 734778138;\nvar IFCSTRUCTURALPOINTACTION = 2082059205;\nvar IFCSTRUCTURALPLANARACTIONVARYING = 3987759626;\nvar IFCSTRUCTURALPLANARACTION = 1621171031;\nvar IFCSTRUCTURALLOADGROUP = 1252848954;\nvar IFCSTRUCTURALLINEARACTIONVARYING = 1721250024;\nvar IFCSTRUCTURALLINEARACTION = 1807405624;\nvar IFCSTRUCTURALCURVEMEMBERVARYING = 2445595289;\nvar IFCSTRUCTURALCURVEMEMBER = 214636428;\nvar IFCSTRUCTURALCURVECONNECTION = 4243806635;\nvar IFCSTRUCTURALCONNECTION = 1179482911;\nvar IFCSTRUCTURALACTION = 682877961;\nvar IFCSTAIRFLIGHTTYPE = 1039846685;\nvar IFCSTACKTERMINALTYPE = 3112655638;\nvar IFCSPACETYPE = 3812236995;\nvar IFCSPACEPROGRAM = 652456506;\nvar IFCSPACEHEATERTYPE = 1305183839;\nvar IFCSPACE = 3856911033;\nvar IFCSLABTYPE = 2533589738;\nvar IFCSITE = 4097777520;\nvar IFCSERVICELIFE = 4105383287;\nvar IFCSCHEDULETIMECONTROL = 3517283431;\nvar IFCSANITARYTERMINALTYPE = 1768891740;\nvar IFCRELASSIGNSTASKS = 2863920197;\nvar IFCRELAGGREGATES = 160246688;\nvar IFCRAMPFLIGHTTYPE = 2324767716;\nvar IFCRAILINGTYPE = 2893384427;\nvar IFCRADIUSDIMENSION = 3248260540;\nvar IFCPUMPTYPE = 2250791053;\nvar IFCPROTECTIVEDEVICETYPE = 1842657554;\nvar IFCPROJECTIONELEMENT = 3651124850;\nvar IFCPROJECTORDERRECORD = 3642467123;\nvar IFCPROJECTORDER = 2904328755;\nvar IFCPROCEDURE = 2744685151;\nvar IFCPORT = 3740093272;\nvar IFCPOLYLINE = 3724593414;\nvar IFCPLATETYPE = 4017108033;\nvar IFCPIPESEGMENTTYPE = 4231323485;\nvar IFCPIPEFITTINGTYPE = 804291784;\nvar IFCPERMIT = 3327091369;\nvar IFCPERFORMANCEHISTORY = 2382730787;\nvar IFCOUTLETTYPE = 2837617999;\nvar IFCORDERACTION = 3425660407;\nvar IFCOPENINGELEMENT = 3588315303;\nvar IFCOCCUPANT = 4143007308;\nvar IFCMOVE = 1916936684;\nvar IFCMOTORCONNECTIONTYPE = 977012517;\nvar IFCMEMBERTYPE = 3181161470;\nvar IFCMECHANICALFASTENERTYPE = 2108223431;\nvar IFCMECHANICALFASTENER = 377706215;\nvar IFCLINEARDIMENSION = 2506943328;\nvar IFCLIGHTFIXTURETYPE = 1161773419;\nvar IFCLAMPTYPE = 1051575348;\nvar IFCLABORRESOURCE = 3827777499;\nvar IFCJUNCTIONBOXTYPE = 4288270099;\nvar IFCINVENTORY = 2391368822;\nvar IFCHUMIDIFIERTYPE = 1806887404;\nvar IFCHEATEXCHANGERTYPE = 1251058090;\nvar IFCGROUP = 2706460486;\nvar IFCGRID = 3009204131;\nvar IFCGASTERMINALTYPE = 200128114;\nvar IFCFURNITURESTANDARD = 814719939;\nvar IFCFURNISHINGELEMENT = 263784265;\nvar IFCFLOWTREATMENTDEVICETYPE = 3009222698;\nvar IFCFLOWTERMINALTYPE = 2297155007;\nvar IFCFLOWSTORAGEDEVICETYPE = 1339347760;\nvar IFCFLOWSEGMENTTYPE = 1834744321;\nvar IFCFLOWMOVINGDEVICETYPE = 1482959167;\nvar IFCFLOWMETERTYPE = 3815607619;\nvar IFCFLOWFITTINGTYPE = 3198132628;\nvar IFCFLOWCONTROLLERTYPE = 3907093117;\nvar IFCFEATUREELEMENTSUBTRACTION = 1287392070;\nvar IFCFEATUREELEMENTADDITION = 2143335405;\nvar IFCFEATUREELEMENT = 2827207264;\nvar IFCFASTENERTYPE = 2489546625;\nvar IFCFASTENER = 647756555;\nvar IFCFACETEDBREPWITHVOIDS = 3737207727;\nvar IFCFACETEDBREP = 807026263;\nvar IFCEVAPORATORTYPE = 3390157468;\nvar IFCEVAPORATIVECOOLERTYPE = 3174744832;\nvar IFCEQUIPMENTSTANDARD = 3272907226;\nvar IFCEQUIPMENTELEMENT = 1962604670;\nvar IFCENERGYCONVERSIONDEVICETYPE = 2107101300;\nvar IFCELLIPSE = 1704287377;\nvar IFCELEMENTCOMPONENTTYPE = 2590856083;\nvar IFCELEMENTCOMPONENT = 1623761950;\nvar IFCELEMENTASSEMBLY = 4123344466;\nvar IFCELEMENT = 1758889154;\nvar IFCELECTRICALBASEPROPERTIES = 360485395;\nvar IFCDISTRIBUTIONFLOWELEMENTTYPE = 3849074793;\nvar IFCDISTRIBUTIONELEMENTTYPE = 3256556792;\nvar IFCDIMENSIONCURVEDIRECTEDCALLOUT = 681481545;\nvar IFCCURTAINWALLTYPE = 1457835157;\nvar IFCCREWRESOURCE = 3295246426;\nvar IFCCOVERINGTYPE = 1916426348;\nvar IFCCOSTSCHEDULE = 1419761937;\nvar IFCCOSTITEM = 3895139033;\nvar IFCCONTROL = 3293443760;\nvar IFCCONSTRUCTIONRESOURCE = 2559216714;\nvar IFCCONIC = 2510884976;\nvar IFCCOMPOSITECURVE = 3732776249;\nvar IFCCOLUMNTYPE = 300633059;\nvar IFCCIRCLEHOLLOWPROFILEDEF = 2937912522;\nvar IFCBUILDINGSTOREY = 3124254112;\nvar IFCBUILDINGELEMENTTYPE = 1950629157;\nvar IFCBUILDING = 4031249490;\nvar IFCBOUNDEDCURVE = 1260505505;\nvar IFCBOOLEANCLIPPINGRESULT = 3649129432;\nvar IFCBLOCK = 1334484129;\nvar IFCASYMMETRICISHAPEPROFILEDEF = 3207858831;\nvar IFCANNOTATION = 1674181508;\nvar IFCACTOR = 2296667514;\nvar IFCTRANSPORTELEMENTTYPE = 2097647324;\nvar IFCTASK = 3473067441;\nvar IFCSYSTEMFURNITUREELEMENTTYPE = 1580310250;\nvar IFCSURFACEOFREVOLUTION = 4124788165;\nvar IFCSURFACEOFLINEAREXTRUSION = 2809605785;\nvar IFCSURFACECURVESWEPTAREASOLID = 2028607225;\nvar IFCSTRUCTUREDDIMENSIONCALLOUT = 4070609034;\nvar IFCSTRUCTURALSURFACEMEMBERVARYING = 2218152070;\nvar IFCSTRUCTURALSURFACEMEMBER = 3979015343;\nvar IFCSTRUCTURALREACTION = 3689010777;\nvar IFCSTRUCTURALMEMBER = 530289379;\nvar IFCSTRUCTURALITEM = 3136571912;\nvar IFCSTRUCTURALACTIVITY = 3544373492;\nvar IFCSPHERE = 451544542;\nvar IFCSPATIALSTRUCTUREELEMENTTYPE = 3893378262;\nvar IFCSPATIALSTRUCTUREELEMENT = 2706606064;\nvar IFCRIGHTCIRCULARCYLINDER = 3626867408;\nvar IFCRIGHTCIRCULARCONE = 4158566097;\nvar IFCREVOLVEDAREASOLID = 1856042241;\nvar IFCRESOURCE = 2914609552;\nvar IFCRELVOIDSELEMENT = 1401173127;\nvar IFCRELSPACEBOUNDARY = 3451746338;\nvar IFCRELSERVICESBUILDINGS = 366585022;\nvar IFCRELSEQUENCE = 4122056220;\nvar IFCRELSCHEDULESCOSTITEMS = 1058617721;\nvar IFCRELREFERENCEDINSPATIALSTRUCTURE = 1245217292;\nvar IFCRELPROJECTSELEMENT = 750771296;\nvar IFCRELOVERRIDESPROPERTIES = 202636808;\nvar IFCRELOCCUPIESSPACES = 2051452291;\nvar IFCRELNESTS = 3268803585;\nvar IFCRELINTERACTIONREQUIREMENTS = 4189434867;\nvar IFCRELFLOWCONTROLELEMENTS = 279856033;\nvar IFCRELFILLSELEMENT = 3940055652;\nvar IFCRELDEFINESBYTYPE = 781010003;\nvar IFCRELDEFINESBYPROPERTIES = 4186316022;\nvar IFCRELDEFINES = 693640335;\nvar IFCRELDECOMPOSES = 2551354335;\nvar IFCRELCOVERSSPACES = 2802773753;\nvar IFCRELCOVERSBLDGELEMENTS = 886880790;\nvar IFCRELCONTAINEDINSPATIALSTRUCTURE = 3242617779;\nvar IFCRELCONNECTSWITHREALIZINGELEMENTS = 3678494232;\nvar IFCRELCONNECTSWITHECCENTRICITY = 504942748;\nvar IFCRELCONNECTSSTRUCTURALMEMBER = 1638771189;\nvar IFCRELCONNECTSSTRUCTURALELEMENT = 3912681535;\nvar IFCRELCONNECTSSTRUCTURALACTIVITY = 2127690289;\nvar IFCRELCONNECTSPORTS = 3190031847;\nvar IFCRELCONNECTSPORTTOELEMENT = 4201705270;\nvar IFCRELCONNECTSPATHELEMENTS = 3945020480;\nvar IFCRELCONNECTSELEMENTS = 1204542856;\nvar IFCRELCONNECTS = 826625072;\nvar IFCRELASSOCIATESPROFILEPROPERTIES = 2851387026;\nvar IFCRELASSOCIATESMATERIAL = 2655215786;\nvar IFCRELASSOCIATESLIBRARY = 3840914261;\nvar IFCRELASSOCIATESDOCUMENT = 982818633;\nvar IFCRELASSOCIATESCONSTRAINT = 2728634034;\nvar IFCRELASSOCIATESCLASSIFICATION = 919958153;\nvar IFCRELASSOCIATESAPPROVAL = 4095574036;\nvar IFCRELASSOCIATESAPPLIEDVALUE = 1327628568;\nvar IFCRELASSOCIATES = 1865459582;\nvar IFCRELASSIGNSTORESOURCE = 205026976;\nvar IFCRELASSIGNSTOPROJECTORDER = 3372526763;\nvar IFCRELASSIGNSTOPRODUCT = 2857406711;\nvar IFCRELASSIGNSTOPROCESS = 4278684876;\nvar IFCRELASSIGNSTOGROUP = 1307041759;\nvar IFCRELASSIGNSTOCONTROL = 2495723537;\nvar IFCRELASSIGNSTOACTOR = 1683148259;\nvar IFCRELASSIGNS = 3939117080;\nvar IFCRECTANGULARTRIMMEDSURFACE = 3454111270;\nvar IFCRECTANGULARPYRAMID = 2798486643;\nvar IFCRECTANGLEHOLLOWPROFILEDEF = 2770003689;\nvar IFCPROXY = 3219374653;\nvar IFCPROPERTYSET = 1451395588;\nvar IFCPROJECTIONCURVE = 4194566429;\nvar IFCPROJECT = 103090709;\nvar IFCPRODUCT = 4208778838;\nvar IFCPROCESS = 2945172077;\nvar IFCPLANE = 220341763;\nvar IFCPLANARBOX = 603570806;\nvar IFCPERMEABLECOVERINGPROPERTIES = 3566463478;\nvar IFCOFFSETCURVE3D = 3505215534;\nvar IFCOFFSETCURVE2D = 3388369263;\nvar IFCOBJECT = 3888040117;\nvar IFCMANIFOLDSOLIDBREP = 1425443689;\nvar IFCLINE = 1281925730;\nvar IFCLSHAPEPROFILEDEF = 572779678;\nvar IFCISHAPEPROFILEDEF = 1484403080;\nvar IFCGEOMETRICCURVESET = 987898635;\nvar IFCFURNITURETYPE = 1268542332;\nvar IFCFURNISHINGELEMENTTYPE = 4238390223;\nvar IFCFLUIDFLOWPROPERTIES = 3455213021;\nvar IFCFILLAREASTYLETILES = 315944413;\nvar IFCFILLAREASTYLETILESYMBOLWITHSTYLE = 4203026998;\nvar IFCFILLAREASTYLEHATCHING = 374418227;\nvar IFCFACEBASEDSURFACEMODEL = 2047409740;\nvar IFCEXTRUDEDAREASOLID = 477187591;\nvar IFCENERGYPROPERTIES = 80994333;\nvar IFCELLIPSEPROFILEDEF = 2835456948;\nvar IFCELEMENTARYSURFACE = 2777663545;\nvar IFCELEMENTTYPE = 339256511;\nvar IFCELEMENTQUANTITY = 1883228015;\nvar IFCEDGELOOP = 1472233963;\nvar IFCDRAUGHTINGPREDEFINEDCURVEFONT = 4006246654;\nvar IFCDRAUGHTINGPREDEFINEDCOLOUR = 445594917;\nvar IFCDRAUGHTINGCALLOUT = 3073041342;\nvar IFCDOORSTYLE = 526551008;\nvar IFCDOORPANELPROPERTIES = 1714330368;\nvar IFCDOORLININGPROPERTIES = 2963535650;\nvar IFCDIRECTION = 32440307;\nvar IFCDIMENSIONCURVETERMINATOR = 4054601972;\nvar IFCDIMENSIONCURVE = 606661476;\nvar IFCDEFINEDSYMBOL = 693772133;\nvar IFCCURVEBOUNDEDPLANE = 2827736869;\nvar IFCCURVE = 2601014836;\nvar IFCCSGSOLID = 2147822146;\nvar IFCCSGPRIMITIVE3D = 2506170314;\nvar IFCCRANERAILFSHAPEPROFILEDEF = 194851669;\nvar IFCCRANERAILASHAPEPROFILEDEF = 4133800736;\nvar IFCCOMPOSITECURVESEGMENT = 2485617015;\nvar IFCCLOSEDSHELL = 2205249479;\nvar IFCCIRCLEPROFILEDEF = 1383045692;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM = 1416205885;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR3D = 3331915920;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM = 3486308946;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR2D = 3749851601;\nvar IFCCARTESIANTRANSFORMATIONOPERATOR = 59481748;\nvar IFCCARTESIANPOINT = 1123145078;\nvar IFCCSHAPEPROFILEDEF = 2898889636;\nvar IFCBOXEDHALFSPACE = 2713105998;\nvar IFCBOUNDINGBOX = 2581212453;\nvar IFCBOUNDEDSURFACE = 4182860854;\nvar IFCBOOLEANRESULT = 2736907675;\nvar IFCAXIS2PLACEMENT3D = 2740243338;\nvar IFCAXIS2PLACEMENT2D = 3125803723;\nvar IFCAXIS1PLACEMENT = 4261334040;\nvar IFCANNOTATIONSURFACE = 1302238472;\nvar IFCANNOTATIONFILLAREAOCCURRENCE = 2265737646;\nvar IFCANNOTATIONFILLAREA = 669184980;\nvar IFCANNOTATIONCURVEOCCURRENCE = 3288037868;\nvar IFCZSHAPEPROFILEDEF = 2543172580;\nvar IFCWINDOWSTYLE = 1299126871;\nvar IFCWINDOWPANELPROPERTIES = 512836454;\nvar IFCWINDOWLININGPROPERTIES = 336235671;\nvar IFCVERTEXLOOP = 2759199220;\nvar IFCVECTOR = 1417489154;\nvar IFCUSHAPEPROFILEDEF = 427810014;\nvar IFCTYPEPRODUCT = 2347495698;\nvar IFCTYPEOBJECT = 1628702193;\nvar IFCTWODIRECTIONREPEATFACTOR = 1345879162;\nvar IFCTRAPEZIUMPROFILEDEF = 2715220739;\nvar IFCTEXTLITERALWITHEXTENT = 3124975700;\nvar IFCTEXTLITERAL = 4282788508;\nvar IFCTERMINATORSYMBOL = 3028897424;\nvar IFCTSHAPEPROFILEDEF = 3071757647;\nvar IFCSWEPTSURFACE = 230924584;\nvar IFCSWEPTDISKSOLID = 1260650574;\nvar IFCSWEPTAREASOLID = 2247615214;\nvar IFCSURFACESTYLERENDERING = 1878645084;\nvar IFCSURFACE = 2513912981;\nvar IFCSUBEDGE = 2233826070;\nvar IFCSTRUCTURALSTEELPROFILEPROPERTIES = 3653947884;\nvar IFCSTRUCTURALPROFILEPROPERTIES = 3843319758;\nvar IFCSTRUCTURALLOADSINGLEFORCEWARPING = 1190533807;\nvar IFCSTRUCTURALLOADSINGLEFORCE = 1597423693;\nvar IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION = 1973038258;\nvar IFCSTRUCTURALLOADSINGLEDISPLACEMENT = 2473145415;\nvar IFCSTRUCTURALLOADPLANARFORCE = 2668620305;\nvar IFCSTRUCTURALLOADLINEARFORCE = 1595516126;\nvar IFCSPACETHERMALLOADPROPERTIES = 390701378;\nvar IFCSOUNDVALUE = 1202362311;\nvar IFCSOUNDPROPERTIES = 2485662743;\nvar IFCSOLIDMODEL = 723233188;\nvar IFCSLIPPAGECONNECTIONCONDITION = 2609359061;\nvar IFCSHELLBASEDSURFACEMODEL = 4124623270;\nvar IFCSERVICELIFEFACTOR = 2411513650;\nvar IFCSECTIONEDSPINE = 1509187699;\nvar IFCROUNDEDRECTANGLEPROFILEDEF = 2778083089;\nvar IFCRELATIONSHIP = 478536968;\nvar IFCREINFORCEMENTDEFINITIONPROPERTIES = 3765753017;\nvar IFCREGULARTIMESERIES = 3413951693;\nvar IFCRECTANGLEPROFILEDEF = 3615266464;\nvar IFCPROPERTYTABLEVALUE = 110355661;\nvar IFCPROPERTYSINGLEVALUE = 3650150729;\nvar IFCPROPERTYSETDEFINITION = 3357820518;\nvar IFCPROPERTYREFERENCEVALUE = 941946838;\nvar IFCPROPERTYLISTVALUE = 2752243245;\nvar IFCPROPERTYENUMERATEDVALUE = 4166981789;\nvar IFCPROPERTYDEFINITION = 1680319473;\nvar IFCPROPERTYBOUNDEDVALUE = 871118103;\nvar IFCPRODUCTDEFINITIONSHAPE = 673634403;\nvar IFCPREDEFINEDPOINTMARKERSYMBOL = 179317114;\nvar IFCPREDEFINEDDIMENSIONSYMBOL = 433424934;\nvar IFCPREDEFINEDCURVEFONT = 2559016684;\nvar IFCPREDEFINEDCOLOUR = 759155922;\nvar IFCPOLYGONALBOUNDEDHALFSPACE = 2775532180;\nvar IFCPOLYLOOP = 2924175390;\nvar IFCPOINTONSURFACE = 1423911732;\nvar IFCPOINTONCURVE = 4022376103;\nvar IFCPOINT = 2067069095;\nvar IFCPLANAREXTENT = 1663979128;\nvar IFCPLACEMENT = 2004835150;\nvar IFCPIXELTEXTURE = 597895409;\nvar IFCPHYSICALCOMPLEXQUANTITY = 3021840470;\nvar IFCPATH = 2519244187;\nvar IFCPARAMETERIZEDPROFILEDEF = 2529465313;\nvar IFCORIENTEDEDGE = 1029017970;\nvar IFCOPENSHELL = 2665983363;\nvar IFCONEDIRECTIONREPEATFACTOR = 2833995503;\nvar IFCOBJECTDEFINITION = 219451334;\nvar IFCMECHANICALCONCRETEMATERIALPROPERTIES = 1430189142;\nvar IFCMATERIALDEFINITIONREPRESENTATION = 2022407955;\nvar IFCMAPPEDITEM = 2347385850;\nvar IFCLOOP = 1008929658;\nvar IFCLOCALPLACEMENT = 2624227202;\nvar IFCLIGHTSOURCESPOT = 3422422726;\nvar IFCLIGHTSOURCEPOSITIONAL = 1520743889;\nvar IFCLIGHTSOURCEGONIOMETRIC = 4266656042;\nvar IFCLIGHTSOURCEDIRECTIONAL = 2604431987;\nvar IFCLIGHTSOURCEAMBIENT = 125510826;\nvar IFCLIGHTSOURCE = 1402838566;\nvar IFCIRREGULARTIMESERIES = 3741457305;\nvar IFCIMAGETEXTURE = 3905492369;\nvar IFCHYGROSCOPICMATERIALPROPERTIES = 2445078500;\nvar IFCHALFSPACESOLID = 812098782;\nvar IFCGRIDPLACEMENT = 178086475;\nvar IFCGEOMETRICSET = 3590301190;\nvar IFCGEOMETRICREPRESENTATIONSUBCONTEXT = 4142052618;\nvar IFCGEOMETRICREPRESENTATIONITEM = 2453401579;\nvar IFCGEOMETRICREPRESENTATIONCONTEXT = 3448662350;\nvar IFCGENERALPROFILEPROPERTIES = 1446786286;\nvar IFCGENERALMATERIALPROPERTIES = 803998398;\nvar IFCFUELPROPERTIES = 3857492461;\nvar IFCFILLAREASTYLE = 738692330;\nvar IFCFAILURECONNECTIONCONDITION = 4219587988;\nvar IFCFACESURFACE = 3008276851;\nvar IFCFACEOUTERBOUND = 803316827;\nvar IFCFACEBOUND = 1809719519;\nvar IFCFACE = 2556980723;\nvar IFCEXTENDEDMATERIALPROPERTIES = 1860660968;\nvar IFCEDGECURVE = 476780140;\nvar IFCEDGE = 3900360178;\nvar IFCDRAUGHTINGPREDEFINEDTEXTFONT = 4170525392;\nvar IFCDOCUMENTREFERENCE = 3732053477;\nvar IFCDIMENSIONPAIR = 1694125774;\nvar IFCDIMENSIONCALLOUTRELATIONSHIP = 2273265877;\nvar IFCDERIVEDPROFILEDEF = 3632507154;\nvar IFCCURVESTYLE = 3800577675;\nvar IFCCONVERSIONBASEDUNIT = 2889183280;\nvar IFCCONTEXTDEPENDENTUNIT = 3050246964;\nvar IFCCONNECTIONPOINTECCENTRICITY = 45288368;\nvar IFCCONNECTIONCURVEGEOMETRY = 1981873012;\nvar IFCCONNECTEDFACESET = 370225590;\nvar IFCCOMPOSITEPROFILEDEF = 1485152156;\nvar IFCCOMPLEXPROPERTY = 2542286263;\nvar IFCCOLOURRGB = 776857604;\nvar IFCCLASSIFICATIONREFERENCE = 647927063;\nvar IFCCENTERLINEPROFILEDEF = 3150382593;\nvar IFCBLOBTEXTURE = 616511568;\nvar IFCARBITRARYPROFILEDEFWITHVOIDS = 2705031697;\nvar IFCARBITRARYOPENPROFILEDEF = 1310608509;\nvar IFCARBITRARYCLOSEDPROFILEDEF = 3798115385;\nvar IFCANNOTATIONTEXTOCCURRENCE = 2297822566;\nvar IFCANNOTATIONSYMBOLOCCURRENCE = 3612888222;\nvar IFCANNOTATIONSURFACEOCCURRENCE = 962685235;\nvar IFCANNOTATIONOCCURRENCE = 2442683028;\nvar IFCWATERPROPERTIES = 1065908215;\nvar IFCVIRTUALGRIDINTERSECTION = 891718957;\nvar IFCVERTEXPOINT = 1907098498;\nvar IFCVERTEXBASEDTEXTUREMAP = 3304826586;\nvar IFCVERTEX = 2799835756;\nvar IFCUNITASSIGNMENT = 180925521;\nvar IFCTOPOLOGYREPRESENTATION = 1735638870;\nvar IFCTOPOLOGICALREPRESENTATIONITEM = 1377556343;\nvar IFCTIMESERIESVALUE = 581633288;\nvar IFCTIMESERIESREFERENCERELATIONSHIP = 1718945513;\nvar IFCTIMESERIES = 3101149627;\nvar IFCTHERMALMATERIALPROPERTIES = 3317419933;\nvar IFCTEXTUREVERTEX = 1210645708;\nvar IFCTEXTUREMAP = 2552916305;\nvar IFCTEXTURECOORDINATEGENERATOR = 1742049831;\nvar IFCTEXTURECOORDINATE = 280115917;\nvar IFCTEXTSTYLEWITHBOXCHARACTERISTICS = 1484833681;\nvar IFCTEXTSTYLETEXTMODEL = 1640371178;\nvar IFCTEXTSTYLEFORDEFINEDFONT = 2636378356;\nvar IFCTEXTSTYLEFONTMODEL = 1983826977;\nvar IFCTEXTSTYLE = 1447204868;\nvar IFCTELECOMADDRESS = 912023232;\nvar IFCTABLEROW = 531007025;\nvar IFCTABLE = 985171141;\nvar IFCSYMBOLSTYLE = 1290481447;\nvar IFCSURFACETEXTURE = 626085974;\nvar IFCSURFACESTYLEWITHTEXTURES = 1351298697;\nvar IFCSURFACESTYLESHADING = 846575682;\nvar IFCSURFACESTYLEREFRACTION = 1607154358;\nvar IFCSURFACESTYLELIGHTING = 3303107099;\nvar IFCSURFACESTYLE = 1300840506;\nvar IFCSTYLEDREPRESENTATION = 3049322572;\nvar IFCSTYLEDITEM = 3958052878;\nvar IFCSTYLEMODEL = 2830218821;\nvar IFCSTRUCTURALLOADTEMPERATURE = 3408363356;\nvar IFCSTRUCTURALLOADSTATIC = 2525727697;\nvar IFCSTRUCTURALLOAD = 2162789131;\nvar IFCSTRUCTURALCONNECTIONCONDITION = 2273995522;\nvar IFCSIMPLEPROPERTY = 3692461612;\nvar IFCSHAPEREPRESENTATION = 4240577450;\nvar IFCSHAPEMODEL = 3982875396;\nvar IFCSHAPEASPECT = 867548509;\nvar IFCSECTIONREINFORCEMENTPROPERTIES = 4165799628;\nvar IFCSECTIONPROPERTIES = 2042790032;\nvar IFCSIUNIT = 448429030;\nvar IFCROOT = 2341007311;\nvar IFCRIBPLATEPROFILEPROPERTIES = 3679540991;\nvar IFCREPRESENTATIONMAP = 1660063152;\nvar IFCREPRESENTATIONITEM = 3008791417;\nvar IFCREPRESENTATIONCONTEXT = 3377609919;\nvar IFCREPRESENTATION = 1076942058;\nvar IFCRELAXATION = 1222501353;\nvar IFCREINFORCEMENTBARPROPERTIES = 1580146022;\nvar IFCREFERENCESVALUEDOCUMENT = 2692823254;\nvar IFCQUANTITYWEIGHT = 825690147;\nvar IFCQUANTITYVOLUME = 2405470396;\nvar IFCQUANTITYTIME = 3252649465;\nvar IFCQUANTITYLENGTH = 931644368;\nvar IFCQUANTITYCOUNT = 2093928680;\nvar IFCQUANTITYAREA = 2044713172;\nvar IFCPROPERTYENUMERATION = 3710013099;\nvar IFCPROPERTYDEPENDENCYRELATIONSHIP = 148025276;\nvar IFCPROPERTYCONSTRAINTRELATIONSHIP = 3896028662;\nvar IFCPROPERTY = 2598011224;\nvar IFCPROFILEPROPERTIES = 2802850158;\nvar IFCPROFILEDEF = 3958567839;\nvar IFCPRODUCTSOFCOMBUSTIONPROPERTIES = 2267347899;\nvar IFCPRODUCTREPRESENTATION = 2095639259;\nvar IFCPRESENTATIONSTYLEASSIGNMENT = 2417041796;\nvar IFCPRESENTATIONSTYLE = 3119450353;\nvar IFCPRESENTATIONLAYERWITHSTYLE = 1304840413;\nvar IFCPRESENTATIONLAYERASSIGNMENT = 2022622350;\nvar IFCPREDEFINEDTEXTFONT = 1775413392;\nvar IFCPREDEFINEDTERMINATORSYMBOL = 3213052703;\nvar IFCPREDEFINEDSYMBOL = 990879717;\nvar IFCPREDEFINEDITEM = 3727388367;\nvar IFCPOSTALADDRESS = 3355820592;\nvar IFCPHYSICALSIMPLEQUANTITY = 2226359599;\nvar IFCPHYSICALQUANTITY = 2483315170;\nvar IFCPERSONANDORGANIZATION = 101040310;\nvar IFCPERSON = 2077209135;\nvar IFCOWNERHISTORY = 1207048766;\nvar IFCORGANIZATIONRELATIONSHIP = 1411181986;\nvar IFCORGANIZATION = 4251960020;\nvar IFCOPTICALMATERIALPROPERTIES = 1227763645;\nvar IFCOBJECTIVE = 2251480897;\nvar IFCOBJECTPLACEMENT = 3701648758;\nvar IFCNAMEDUNIT = 1918398963;\nvar IFCMONETARYUNIT = 2706619895;\nvar IFCMETRIC = 3368373690;\nvar IFCMECHANICALSTEELMATERIALPROPERTIES = 677618848;\nvar IFCMECHANICALMATERIALPROPERTIES = 4256014907;\nvar IFCMEASUREWITHUNIT = 2597039031;\nvar IFCMATERIALPROPERTIES = 3265635763;\nvar IFCMATERIALLIST = 2199411900;\nvar IFCMATERIALLAYERSETUSAGE = 1303795690;\nvar IFCMATERIALLAYERSET = 3303938423;\nvar IFCMATERIALLAYER = 248100487;\nvar IFCMATERIALCLASSIFICATIONRELATIONSHIP = 1847130766;\nvar IFCMATERIAL = 1838606355;\nvar IFCLOCALTIME = 30780891;\nvar IFCLIGHTINTENSITYDISTRIBUTION = 1566485204;\nvar IFCLIGHTDISTRIBUTIONDATA = 4162380809;\nvar IFCLIBRARYREFERENCE = 3452421091;\nvar IFCLIBRARYINFORMATION = 2655187982;\nvar IFCIRREGULARTIMESERIESVALUE = 3020489413;\nvar IFCGRIDAXIS = 852622518;\nvar IFCEXTERNALLYDEFINEDTEXTFONT = 3548104201;\nvar IFCEXTERNALLYDEFINEDSYMBOL = 3207319532;\nvar IFCEXTERNALLYDEFINEDSURFACESTYLE = 1040185647;\nvar IFCEXTERNALLYDEFINEDHATCHSTYLE = 2242383968;\nvar IFCEXTERNALREFERENCE = 3200245327;\nvar IFCENVIRONMENTALIMPACTVALUE = 1648886627;\nvar IFCDRAUGHTINGCALLOUTRELATIONSHIP = 3796139169;\nvar IFCDOCUMENTINFORMATIONRELATIONSHIP = 770865208;\nvar IFCDOCUMENTINFORMATION = 1154170062;\nvar IFCDOCUMENTELECTRONICFORMAT = 1376555844;\nvar IFCDIMENSIONALEXPONENTS = 2949456006;\nvar IFCDERIVEDUNITELEMENT = 1045800335;\nvar IFCDERIVEDUNIT = 1765591967;\nvar IFCDATEANDTIME = 1072939445;\nvar IFCCURVESTYLEFONTPATTERN = 3510044353;\nvar IFCCURVESTYLEFONTANDSCALING = 2367409068;\nvar IFCCURVESTYLEFONT = 1105321065;\nvar IFCCURRENCYRELATIONSHIP = 539742890;\nvar IFCCOSTVALUE = 602808272;\nvar IFCCOORDINATEDUNIVERSALTIMEOFFSET = 1065062679;\nvar IFCCONSTRAINTRELATIONSHIP = 347226245;\nvar IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP = 613356794;\nvar IFCCONSTRAINTAGGREGATIONRELATIONSHIP = 1658513725;\nvar IFCCONSTRAINT = 1959218052;\nvar IFCCONNECTIONSURFACEGEOMETRY = 2732653382;\nvar IFCCONNECTIONPORTGEOMETRY = 4257277454;\nvar IFCCONNECTIONPOINTGEOMETRY = 2614616156;\nvar IFCCONNECTIONGEOMETRY = 2859738748;\nvar IFCCOLOURSPECIFICATION = 3264961684;\nvar IFCCLASSIFICATIONNOTATIONFACET = 3639012971;\nvar IFCCLASSIFICATIONNOTATION = 938368621;\nvar IFCCLASSIFICATIONITEMRELATIONSHIP = 1098599126;\nvar IFCCLASSIFICATIONITEM = 1767535486;\nvar IFCCLASSIFICATION = 747523909;\nvar IFCCALENDARDATE = 622194075;\nvar IFCBOUNDARYNODECONDITIONWARPING = 2069777674;\nvar IFCBOUNDARYNODECONDITION = 1387855156;\nvar IFCBOUNDARYFACECONDITION = 3367102660;\nvar IFCBOUNDARYEDGECONDITION = 1560379544;\nvar IFCBOUNDARYCONDITION = 4037036970;\nvar IFCAPPROVALRELATIONSHIP = 3869604511;\nvar IFCAPPROVALPROPERTYRELATIONSHIP = 390851274;\nvar IFCAPPROVALACTORRELATIONSHIP = 2080292479;\nvar IFCAPPROVAL = 130549933;\nvar IFCAPPLIEDVALUERELATIONSHIP = 1110488051;\nvar IFCAPPLIEDVALUE = 411424972;\nvar IFCAPPLICATION = 639542469;\nvar IFCADDRESS = 618182010;\nvar IFCACTORROLE = 3630933823;\nvar FILE_DESCRIPTION = 599546466;\nvar FILE_NAME = 1390159747;\nvar FILE_SCHEMA = 1109904537;\nvar Handle = class {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n};\nvar logical;\n(function(logical2) {\n logical2[logical2[\"FALSE\"] = 0] = \"FALSE\";\n logical2[logical2[\"TRUE\"] = 1] = \"TRUE\";\n logical2[logical2[\"UNKNOWN\"] = 2] = \"UNKNOWN\";\n})(logical || (logical = {}));\nvar IfcLineObject = class {\n constructor(expressID = -1) {\n this.expressID = expressID;\n this.type = 0;\n }\n};\nvar FromRawLineData = [];\nvar InversePropertyDef = {};\nvar InheritanceDef = {};\nvar Constructors = {};\nvar ToRawLineData = {};\nvar TypeInitialisers = {};\nvar SchemaNames = [];\nfunction TypeInitialiser(schema, tapeItem) {\n if (Array.isArray(tapeItem))\n tapeItem.map((p) => TypeInitialiser(schema, p));\n if (tapeItem.typecode)\n return TypeInitialisers[schema][tapeItem.typecode](tapeItem.value);\n else\n return tapeItem.value;\n}\nfunction Labelise(tapeItem) {\n if (tapeItem.label)\n return tapeItem;\n else\n return { value: tapeItem.value.toString(), valueType: tapeItem.type, type: 2, label: tapeItem.name };\n}\nfunction BooleanConvert(item) {\n switch (item.toString()) {\n case \"true\":\n return \"T\";\n case \"false\":\n return \"F\";\n case \"0\":\n return \"F\";\n case \"1\":\n return \"T\";\n case \"2\":\n return \"U\";\n }\n}\nvar Schemas;\n(function(Schemas2) {\n Schemas2[\"IFC2X3\"] = \"IFC2X3\";\n Schemas2[\"IFC4\"] = \"IFC4\";\n Schemas2[\"IFC4X3\"] = \"IFC4X3\";\n})(Schemas || (Schemas = {}));\nSchemaNames[1] = [\"IFC2X3\", \"IFC2X_FINAL\"];\nFromRawLineData[1] = {\n 3630933823: (v) => new IFC2X3.IfcActorRole(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC2X3.IfcAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 639542469: (v) => new IFC2X3.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => new IFC2X3.IfcAppliedValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 1110488051: (v) => {\n var _a;\n return new IFC2X3.IfcAppliedValueRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value));\n },\n 130549933: (v) => new IFC2X3.IfcApproval(!v[0] ? null : new IFC2X3.IfcText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), new IFC2X3.IfcIdentifier(!v[6] ? null : v[6].value)),\n 2080292479: (v) => new IFC2X3.IfcApprovalActorRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 390851274: (v) => {\n var _a;\n return new IFC2X3.IfcApprovalPropertyRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 3869604511: (v) => new IFC2X3.IfcApprovalRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value)),\n 4037036970: (v) => new IFC2X3.IfcBoundaryCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC2X3.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(!v[6] ? null : v[6].value)),\n 3367102660: (v) => new IFC2X3.IfcBoundaryFaceCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfSubgradeReactionMeasure(!v[3] ? null : v[3].value)),\n 1387855156: (v) => new IFC2X3.IfcBoundaryNodeCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[6] ? null : v[6].value)),\n 2069777674: (v) => new IFC2X3.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearStiffnessMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcRotationalStiffnessMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 622194075: (v) => new IFC2X3.IfcCalendarDate(new IFC2X3.IfcDayInMonthNumber(!v[0] ? null : v[0].value), new IFC2X3.IfcMonthInYearNumber(!v[1] ? null : v[1].value), new IFC2X3.IfcYearNumber(!v[2] ? null : v[2].value)),\n 747523909: (v) => new IFC2X3.IfcClassification(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value)),\n 1767535486: (v) => new IFC2X3.IfcClassificationItem(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1098599126: (v) => {\n var _a;\n return new IFC2X3.IfcClassificationItemRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 938368621: (v) => {\n var _a;\n return new IFC2X3.IfcClassificationNotation(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3639012971: (v) => new IFC2X3.IfcClassificationNotationFacet(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3264961684: (v) => new IFC2X3.IfcColourSpecification(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2859738748: (_) => new IFC2X3.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC2X3.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 4257277454: (v) => new IFC2X3.IfcConnectionPortGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2732653382: (v) => new IFC2X3.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC2X3.IfcConstraint(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1658513725: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintAggregationRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[4]);\n },\n 613356794: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintClassificationRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 347226245: (v) => {\n var _a;\n return new IFC2X3.IfcConstraintRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1065062679: (v) => new IFC2X3.IfcCoordinatedUniversalTimeOffset(new IFC2X3.IfcHourInDay(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMinuteInHour(!v[1] ? null : v[1].value), v[2]),\n 602808272: (v) => new IFC2X3.IfcCostValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcText(!v[7] ? null : v[7].value)),\n 539742890: (v) => new IFC2X3.IfcCurrencyRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC2X3.IfcCurveStyleFont(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC2X3.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC2X3.IfcCurveStyleFontPattern(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1072939445: (v) => new IFC2X3.IfcDateAndTime(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1765591967: (v) => {\n var _a;\n return new IFC2X3.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1045800335: (v) => new IFC2X3.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC2X3.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 1376555844: (v) => new IFC2X3.IfcDocumentElectronicFormat(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1154170062: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDocumentInformation(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC2X3.IfcDocumentInformationRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3796139169: (v) => new IFC2X3.IfcDraughtingCalloutRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1648886627: (v) => new IFC2X3.IfcEnvironmentalImpactValue(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 3200245327: (v) => new IFC2X3.IfcExternalReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC2X3.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC2X3.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3207319532: (v) => new IFC2X3.IfcExternallyDefinedSymbol(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC2X3.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC2X3.IfcGridAxis(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC2X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC2X3.IfcIrregularTimeSeriesValue(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 2655187982: (v) => {\n var _a;\n return new IFC2X3.IfcLibraryInformation(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3452421091: (v) => new IFC2X3.IfcLibraryReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLightDistributionData(new IFC2X3.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC2X3.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 30780891: (v) => new IFC2X3.IfcLocalTime(new IFC2X3.IfcHourInDay(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMinuteInHour(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcSecondInMinute(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcDaylightSavingHour(!v[4] ? null : v[4].value)),\n 1838606355: (v) => new IFC2X3.IfcMaterial(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 248100487: (v) => new IFC2X3.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLogical(!v[2] ? null : v[2].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value));\n },\n 1303795690: (v) => new IFC2X3.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3265635763: (v) => new IFC2X3.IfcMaterialProperties(new Handle(!v[0] ? null : v[0].value)),\n 2597039031: (v) => new IFC2X3.IfcMeasureWithUnit(TypeInitialiser(1, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 4256014907: (v) => new IFC2X3.IfcMechanicalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value)),\n 677618848: (v) => {\n var _a;\n return new IFC2X3.IfcMechanicalSteelMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPressureMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPressureMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPressureMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : ((_a = v[12]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3368373690: (v) => new IFC2X3.IfcMetric(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value)),\n 2706619895: (v) => new IFC2X3.IfcMonetaryUnit(v[0]),\n 1918398963: (v) => new IFC2X3.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (_) => new IFC2X3.IfcObjectPlacement(),\n 2251480897: (v) => new IFC2X3.IfcObjective(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC2X3.IfcLabel(!v[10] ? null : v[10].value)),\n 1227763645: (v) => new IFC2X3.IfcOpticalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[9] ? null : v[9].value)),\n 4251960020: (v) => {\n var _a, _b;\n return new IFC2X3.IfcOrganization(!v[0] ? null : new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC2X3.IfcOrganizationRelationship(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC2X3.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC2X3.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC2X3.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC2X3.IfcPerson(!v[0] ? null : new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC2X3.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC2X3.IfcPhysicalQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC2X3.IfcPhysicalSimpleQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC2X3.IfcPostalAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value));\n },\n 3727388367: (v) => new IFC2X3.IfcPreDefinedItem(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 990879717: (v) => new IFC2X3.IfcPreDefinedSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3213052703: (v) => new IFC2X3.IfcPreDefinedTerminatorSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1775413392: (v) => new IFC2X3.IfcPreDefinedTextFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2022622350: (v) => {\n var _a;\n return new IFC2X3.IfcPresentationLayerAssignment(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPresentationLayerWithStyle(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value, !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC2X3.IfcPresentationStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2417041796: (v) => {\n var _a;\n return new IFC2X3.IfcPresentationStyleAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2095639259: (v) => {\n var _a;\n return new IFC2X3.IfcProductRepresentation(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2267347899: (v) => new IFC2X3.IfcProductsOfCombustionProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcSpecificHeatCapacityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value)),\n 3958567839: (v) => new IFC2X3.IfcProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value)),\n 2802850158: (v) => new IFC2X3.IfcProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2598011224: (v) => new IFC2X3.IfcProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 3896028662: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyConstraintRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value));\n },\n 148025276: (v) => new IFC2X3.IfcPropertyDependencyRelationship(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value)),\n 3710013099: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyEnumeration(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC2X3.IfcQuantityArea(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcAreaMeasure(!v[3] ? null : v[3].value)),\n 2093928680: (v) => new IFC2X3.IfcQuantityCount(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcCountMeasure(!v[3] ? null : v[3].value)),\n 931644368: (v) => new IFC2X3.IfcQuantityLength(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 3252649465: (v) => new IFC2X3.IfcQuantityTime(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcTimeMeasure(!v[3] ? null : v[3].value)),\n 2405470396: (v) => new IFC2X3.IfcQuantityVolume(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcVolumeMeasure(!v[3] ? null : v[3].value)),\n 825690147: (v) => new IFC2X3.IfcQuantityWeight(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcMassMeasure(!v[3] ? null : v[3].value)),\n 2692823254: (v) => {\n var _a;\n return new IFC2X3.IfcReferencesValueDocument(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value));\n },\n 1580146022: (v) => new IFC2X3.IfcReinforcementBarProperties(new IFC2X3.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 1222501353: (v) => new IFC2X3.IfcRelaxation(new IFC2X3.IfcNormalisedRatioMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1076942058: (v) => {\n var _a;\n return new IFC2X3.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC2X3.IfcRepresentationContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC2X3.IfcRepresentationItem(),\n 1660063152: (v) => new IFC2X3.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 3679540991: (v) => new IFC2X3.IfcRibPlateProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), v[6]),\n 2341007311: (v) => new IFC2X3.IfcRoot(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC2X3.IfcSIUnit(v[0], v[1], v[2]),\n 2042790032: (v) => new IFC2X3.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC2X3.IfcSectionReinforcementProperties(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 867548509: (v) => {\n var _a;\n return new IFC2X3.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : v[3].value, new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC2X3.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC2X3.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC2X3.IfcSimpleProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value)),\n 2273995522: (v) => new IFC2X3.IfcStructuralConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC2X3.IfcStructuralLoad(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC2X3.IfcStructuralLoadStatic(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC2X3.IfcStructuralLoadTemperature(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC2X3.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC2X3.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC2X3.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1300840506: (v) => {\n var _a;\n return new IFC2X3.IfcSurfaceStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC2X3.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC2X3.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC2X3.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC2X3.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC2X3.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => new IFC2X3.IfcSurfaceTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1290481447: (v) => new IFC2X3.IfcSymbolStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), TypeInitialiser(1, v[1])),\n 985171141: (v) => {\n var _a;\n return new IFC2X3.IfcTable(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 531007025: (v) => {\n var _a;\n return new IFC2X3.IfcTableRow(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[1] ? null : v[1].value);\n },\n 912023232: (v) => {\n var _a, _b, _c;\n return new IFC2X3.IfcTelecomAddress(v[0], !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 1447204868: (v) => new IFC2X3.IfcTextStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC2X3.IfcTextStyleFontModel(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(1, v[5]));\n },\n 2636378356: (v) => new IFC2X3.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC2X3.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(1, v[0]), !v[1] ? null : new IFC2X3.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(1, v[3]), !v[4] ? null : TypeInitialiser(1, v[4]), !v[5] ? null : new IFC2X3.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(1, v[6])),\n 1484833681: (v) => new IFC2X3.IfcTextStyleWithBoxCharacteristics(!v[0] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), !v[4] ? null : TypeInitialiser(1, v[4])),\n 280115917: (_) => new IFC2X3.IfcTextureCoordinate(),\n 1742049831: (v) => {\n var _a;\n return new IFC2X3.IfcTextureCoordinateGenerator(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 2552916305: (v) => {\n var _a;\n return new IFC2X3.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1210645708: (v) => {\n var _a;\n return new IFC2X3.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcParameterValue(p.value) : null)) || []);\n },\n 3317419933: (v) => new IFC2X3.IfcThermalMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcSpecificHeatCapacityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcThermalConductivityMeasure(!v[4] ? null : v[4].value)),\n 3101149627: (v) => new IFC2X3.IfcTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1718945513: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesReferenceRelationship(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 581633288: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || []);\n },\n 1377556343: (_) => new IFC2X3.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC2X3.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC2X3.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC2X3.IfcVertex(),\n 3304826586: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVertexBasedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1907098498: (v) => new IFC2X3.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1065908215: (v) => new IFC2X3.IfcWaterProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : !v[1] ? null : v[1].value, !v[2] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcIonConcentrationMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPHMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[7] ? null : v[7].value)),\n 2442683028: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 962685235: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationSurfaceOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3612888222: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationSymbolOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 2297822566: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationTextOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3798115385: (v) => new IFC2X3.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC2X3.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC2X3.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => new IFC2X3.IfcBlobTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : v[5].value),\n 3150382593: (v) => new IFC2X3.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 647927063: (v) => new IFC2X3.IfcClassificationReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 776857604: (v) => new IFC2X3.IfcColourRgb(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC2X3.IfcComplexProperty(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new IFC2X3.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1485152156: (v) => {\n var _a;\n return new IFC2X3.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC2X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC2X3.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC2X3.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC2X3.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC2X3.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC2X3.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3800577675: (v) => new IFC2X3.IfcCurveStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 3632507154: (v) => new IFC2X3.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2273265877: (v) => new IFC2X3.IfcDimensionCalloutRelationship(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1694125774: (v) => new IFC2X3.IfcDimensionPair(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3732053477: (v) => new IFC2X3.IfcDocumentReference(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value)),\n 4170525392: (v) => new IFC2X3.IfcDraughtingPreDefinedTextFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3900360178: (v) => new IFC2X3.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC2X3.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : v[3].value),\n 1860660968: (v) => {\n var _a;\n return new IFC2X3.IfcExtendedMaterialProperties(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcText(!v[2] ? null : v[2].value), new IFC2X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 2556980723: (v) => {\n var _a;\n return new IFC2X3.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC2X3.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 803316827: (v) => new IFC2X3.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 3008276851: (v) => {\n var _a;\n return new IFC2X3.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value);\n },\n 4219587988: (v) => new IFC2X3.IfcFailureConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC2X3.IfcFillAreaStyle(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3857492461: (v) => new IFC2X3.IfcFuelProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcHeatingValueMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcHeatingValueMeasure(!v[4] ? null : v[4].value)),\n 803998398: (v) => new IFC2X3.IfcGeneralMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcMolecularWeightMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcMassDensityMeasure(!v[3] ? null : v[3].value)),\n 1446786286: (v) => new IFC2X3.IfcGeneralProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value)),\n 3448662350: (v) => new IFC2X3.IfcGeometricRepresentationContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new IFC2X3.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC2X3.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC2X3.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC2X3.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC2X3.IfcGridPlacement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 812098782: (v) => new IFC2X3.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2445078500: (v) => new IFC2X3.IfcHygroscopicMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcIsothermalMoistureCapacityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcVaporPermeabilityMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcMoistureDiffusivityMeasure(!v[5] ? null : v[5].value)),\n 3905492369: (v) => new IFC2X3.IfcImageTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcIdentifier(!v[4] ? null : v[4].value)),\n 3741457305: (v) => {\n var _a;\n return new IFC2X3.IfcIrregularTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1402838566: (v) => new IFC2X3.IfcLightSource(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC2X3.IfcLightSourceAmbient(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC2X3.IfcLightSourceDirectional(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC2X3.IfcLightSourceGoniometric(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC2X3.IfcLightSourcePositional(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcReal(!v[6] ? null : v[6].value), new IFC2X3.IfcReal(!v[7] ? null : v[7].value), new IFC2X3.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC2X3.IfcLightSourceSpot(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcReal(!v[6] ? null : v[6].value), new IFC2X3.IfcReal(!v[7] ? null : v[7].value), new IFC2X3.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcReal(!v[10] ? null : v[10].value), new IFC2X3.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 2624227202: (v) => new IFC2X3.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC2X3.IfcLoop(),\n 2347385850: (v) => new IFC2X3.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2022407955: (v) => {\n var _a;\n return new IFC2X3.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1430189142: (v) => new IFC2X3.IfcMechanicalConcreteMaterialProperties(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcDynamicViscosityMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcModulusOfElasticityMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcThermalExpansionCoefficientMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPressureMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcText(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcText(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcText(!v[11] ? null : v[11].value)),\n 219451334: (v) => new IFC2X3.IfcObjectDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 2833995503: (v) => new IFC2X3.IfcOneDirectionRepeatFactor(new Handle(!v[0] ? null : v[0].value)),\n 2665983363: (v) => {\n var _a;\n return new IFC2X3.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC2X3.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2529465313: (v) => new IFC2X3.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC2X3.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC2X3.IfcPhysicalComplexQuantity(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a;\n return new IFC2X3.IfcPixelTexture(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, v[2], !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcInteger(!v[4] ? null : v[4].value), new IFC2X3.IfcInteger(!v[5] ? null : v[5].value), new IFC2X3.IfcInteger(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC2X3.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC2X3.IfcPlanarExtent(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC2X3.IfcPoint(),\n 4022376103: (v) => new IFC2X3.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC2X3.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC2X3.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC2X3.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC2X3.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 759155922: (v) => new IFC2X3.IfcPreDefinedColour(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC2X3.IfcPreDefinedCurveFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 433424934: (v) => new IFC2X3.IfcPreDefinedDimensionSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 179317114: (v) => new IFC2X3.IfcPreDefinedPointMarkerSymbol(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC2X3.IfcProductDefinitionShape(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 871118103: (v) => new IFC2X3.IfcPropertyBoundedValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : TypeInitialiser(1, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1680319473: (v) => new IFC2X3.IfcPropertyDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 4166981789: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyEnumeratedValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC2X3.IfcPropertyListValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC2X3.IfcPropertyReferenceValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3357820518: (v) => new IFC2X3.IfcPropertySetDefinition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 3650150729: (v) => new IFC2X3.IfcPropertySingleValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(1, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPropertyTableValue(new IFC2X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(1, p) : null)) || [], !v[4] ? null : new IFC2X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value));\n },\n 3615266464: (v) => new IFC2X3.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC2X3.IfcRegularTimeSeries(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC2X3.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3765753017: (v) => {\n var _a;\n return new IFC2X3.IfcReinforcementDefinitionProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 478536968: (v) => new IFC2X3.IfcRelationship(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 2778083089: (v) => new IFC2X3.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 1509187699: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2411513650: (v) => new IFC2X3.IfcServiceLifeFactor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : TypeInitialiser(1, v[5]), TypeInitialiser(1, v[6]), !v[7] ? null : TypeInitialiser(1, v[7])),\n 4124623270: (v) => {\n var _a;\n return new IFC2X3.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2609359061: (v) => new IFC2X3.IfcSlippageConnectionCondition(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC2X3.IfcSolidModel(),\n 2485662743: (v) => {\n var _a;\n return new IFC2X3.IfcSoundProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new IFC2X3.IfcBoolean(!v[4] ? null : v[4].value), v[5], ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1202362311: (v) => new IFC2X3.IfcSoundValue(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new IFC2X3.IfcFrequencyMeasure(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(1, v[6])),\n 390701378: (v) => new IFC2X3.IfcSpaceThermalLoadProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), v[5], v[6], !v[7] ? null : new IFC2X3.IfcText(!v[7] ? null : v[7].value), new IFC2X3.IfcPowerMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPowerMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcLabel(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLabel(!v[12] ? null : v[12].value), v[13]),\n 1595516126: (v) => new IFC2X3.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC2X3.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC2X3.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC2X3.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC2X3.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC2X3.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 3843319758: (v) => new IFC2X3.IfcStructuralProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcWarpingConstantMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[18] ? null : v[18].value), !v[19] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcLengthMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcLengthMeasure(!v[22] ? null : v[22].value)),\n 3653947884: (v) => new IFC2X3.IfcStructuralSteelProfileProperties(!v[0] ? null : new IFC2X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcMassPerLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcMomentOfInertiaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcWarpingConstantMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[18] ? null : v[18].value), !v[19] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcSectionModulusMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcLengthMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcLengthMeasure(!v[22] ? null : v[22].value), !v[23] ? null : new IFC2X3.IfcAreaMeasure(!v[23] ? null : v[23].value), !v[24] ? null : new IFC2X3.IfcAreaMeasure(!v[24] ? null : v[24].value), !v[25] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[25] ? null : v[25].value), !v[26] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[26] ? null : v[26].value)),\n 2233826070: (v) => new IFC2X3.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC2X3.IfcSurface(),\n 1878645084: (v) => new IFC2X3.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(1, v[7]), v[8]),\n 2247615214: (v) => new IFC2X3.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC2X3.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value)),\n 230924584: (v) => new IFC2X3.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC2X3.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value)),\n 3028897424: (v) => {\n var _a;\n return new IFC2X3.IfcTerminatorSymbol(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value));\n },\n 4282788508: (v) => new IFC2X3.IfcTextLiteral(new IFC2X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC2X3.IfcTextLiteralWithExtent(new IFC2X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 2715220739: (v) => new IFC2X3.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1345879162: (v) => new IFC2X3.IfcTwoDirectionRepeatFactor(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC2X3.IfcTypeObject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTypeProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 427810014: (v) => new IFC2X3.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 1417489154: (v) => new IFC2X3.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC2X3.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 336235671: (v) => new IFC2X3.IfcWindowLiningProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value)),\n 512836454: (v) => new IFC2X3.IfcWindowPanelProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1299126871: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWindowStyle(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : v[10].value, !v[11] ? null : v[11].value);\n },\n 2543172580: (v) => new IFC2X3.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 3288037868: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationCurveOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2265737646: (v) => {\n var _a;\n return new IFC2X3.IfcAnnotationFillAreaOccurrence(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), v[4]);\n },\n 1302238472: (v) => new IFC2X3.IfcAnnotationSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 4261334040: (v) => new IFC2X3.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC2X3.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC2X3.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC2X3.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC2X3.IfcBoundedSurface(),\n 2581212453: (v) => new IFC2X3.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC2X3.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC2X3.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC2X3.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 59481748: (v) => new IFC2X3.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value),\n 3749851601: (v) => new IFC2X3.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value),\n 3486308946: (v) => new IFC2X3.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : !v[4] ? null : v[4].value),\n 3331915920: (v) => new IFC2X3.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC2X3.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : !v[3] ? null : v[3].value, !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : !v[5] ? null : v[5].value, !v[6] ? null : !v[6] ? null : v[6].value),\n 1383045692: (v) => new IFC2X3.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC2X3.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC2X3.IfcCompositeCurveSegment(v[0], !v[1] ? null : v[1].value, new Handle(!v[2] ? null : v[2].value)),\n 4133800736: (v) => new IFC2X3.IfcCraneRailAShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), new IFC2X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[14] ? null : v[14].value)),\n 194851669: (v) => new IFC2X3.IfcCraneRailFShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 2506170314: (v) => new IFC2X3.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC2X3.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC2X3.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC2X3.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 693772133: (v) => new IFC2X3.IfcDefinedSymbol(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 606661476: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurve(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 4054601972: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurveTerminator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), v[4]);\n },\n 32440307: (v) => {\n var _a;\n return new IFC2X3.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 2963535650: (v) => new IFC2X3.IfcDoorLiningProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value)),\n 1714330368: (v) => new IFC2X3.IfcDoorPanelProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 526551008: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDoorStyle(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : v[10].value, !v[11] ? null : v[11].value);\n },\n 3073041342: (v) => {\n var _a;\n return new IFC2X3.IfcDraughtingCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 445594917: (v) => new IFC2X3.IfcDraughtingPreDefinedColour(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC2X3.IfcDraughtingPreDefinedCurveFont(new IFC2X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1472233963: (v) => {\n var _a;\n return new IFC2X3.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC2X3.IfcElementQuantity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC2X3.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC2X3.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 80994333: (v) => new IFC2X3.IfcEnergyProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 477187591: (v) => new IFC2X3.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC2X3.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC2X3.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC2X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 4203026998: (v) => new IFC2X3.IfcFillAreaStyleTileSymbolWithStyle(new Handle(!v[0] ? null : v[0].value)),\n 315944413: (v) => {\n var _a;\n return new IFC2X3.IfcFillAreaStyleTiles(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 3455213021: (v) => new IFC2X3.IfcFluidFlowProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLabel(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcThermodynamicTemperatureMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : TypeInitialiser(1, v[15]), !v[16] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcLinearVelocityMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC2X3.IfcPressureMeasure(!v[18] ? null : v[18].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFurnishingElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFurnitureType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC2X3.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC2X3.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 572779678: (v) => new IFC2X3.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 1281925730: (v) => new IFC2X3.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC2X3.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC2X3.IfcObject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3388369263: (v) => new IFC2X3.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value),\n 3505215534: (v) => new IFC2X3.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : v[2].value, new Handle(!v[3] ? null : v[3].value)),\n 3566463478: (v) => new IFC2X3.IfcPermeableCoveringProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 603570806: (v) => new IFC2X3.IfcPlanarBox(new IFC2X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC2X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC2X3.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 2945172077: (v) => new IFC2X3.IfcProcess(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 4208778838: (v) => new IFC2X3.IfcProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC2X3.IfcProject(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[8] ? null : v[8].value));\n },\n 4194566429: (v) => {\n var _a;\n return new IFC2X3.IfcProjectionCurve(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1451395588: (v) => {\n var _a;\n return new IFC2X3.IfcPropertySet(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3219374653: (v) => new IFC2X3.IfcProxy(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 2770003689: (v) => new IFC2X3.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC2X3.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC2X3.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC2X3.IfcParameterValue(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 3939117080: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssigns(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToActor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProcess(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProduct(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 3372526763: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToProjectOrder(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsToResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociates(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1327628568: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesAppliedValue(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4095574036: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesApproval(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesClassification(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesConstraint(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesDocument(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesLibrary(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesMaterial(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2851387026: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssociatesProfileProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 826625072: (v) => new IFC2X3.IfcRelConnects(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC2X3.IfcRelConnectsElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRelConnectsPathElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC2X3.IfcRelConnectsPortToElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC2X3.IfcRelConnectsPorts(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC2X3.IfcRelConnectsStructuralActivity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3912681535: (v) => new IFC2X3.IfcRelConnectsStructuralElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC2X3.IfcRelConnectsStructuralMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC2X3.IfcRelConnectsWithEccentricity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC2X3.IfcRelConnectsWithRealizingElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC2X3.IfcRelContainedInSpatialStructure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC2X3.IfcRelCoversBldgElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC2X3.IfcRelCoversSpaces(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => {\n var _a;\n return new IFC2X3.IfcRelDecomposes(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 693640335: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefines(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4186316022: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefinesByProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC2X3.IfcRelDefinesByType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC2X3.IfcRelFillsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC2X3.IfcRelFlowControlElements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4189434867: (v) => new IFC2X3.IfcRelInteractionRequirements(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcCountMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 3268803585: (v) => {\n var _a;\n return new IFC2X3.IfcRelNests(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2051452291: (v) => {\n var _a;\n return new IFC2X3.IfcRelOccupiesSpaces(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 202636808: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRelOverridesProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value), ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC2X3.IfcRelProjectsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC2X3.IfcRelReferencedInSpatialStructure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 1058617721: (v) => {\n var _a;\n return new IFC2X3.IfcRelSchedulesCostItems(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 4122056220: (v) => new IFC2X3.IfcRelSequence(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new IFC2X3.IfcTimeMeasure(!v[6] ? null : v[6].value), v[7]),\n 366585022: (v) => {\n var _a;\n return new IFC2X3.IfcRelServicesBuildings(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC2X3.IfcRelSpaceBoundary(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 1401173127: (v) => new IFC2X3.IfcRelVoidsElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2914609552: (v) => new IFC2X3.IfcResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1856042241: (v) => new IFC2X3.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 4158566097: (v) => new IFC2X3.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC2X3.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2706606064: (v) => new IFC2X3.IfcSpatialStructureElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpatialStructureElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 451544542: (v) => new IFC2X3.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3544373492: (v) => new IFC2X3.IfcStructuralActivity(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC2X3.IfcStructuralItem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC2X3.IfcStructuralMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC2X3.IfcStructuralReaction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC2X3.IfcStructuralSurfaceMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralSurfaceMemberVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcPositiveLengthMeasure(p.value) : null)) || [], new Handle(!v[10] ? null : v[10].value));\n },\n 4070609034: (v) => {\n var _a;\n return new IFC2X3.IfcStructuredDimensionCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2028607225: (v) => new IFC2X3.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC2X3.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC2X3.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC2X3.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSystemFurnitureElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3473067441: (v) => new IFC2X3.IfcTask(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value),\n 2097647324: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTransportElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2296667514: (v) => new IFC2X3.IfcActor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1674181508: (v) => new IFC2X3.IfcAnnotation(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3207858831: (v) => new IFC2X3.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC2X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC2X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 1334484129: (v) => new IFC2X3.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC2X3.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC2X3.IfcBoundedCurve(),\n 4031249490: (v) => new IFC2X3.IfcBuilding(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 1950629157: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBuildingElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3124254112: (v) => new IFC2X3.IfcBuildingStorey(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 2937912522: (v) => new IFC2X3.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC2X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC2X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC2X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 300633059: (v) => {\n var _a, _b;\n return new IFC2X3.IfcColumnType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC2X3.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : v[1].value);\n },\n 2510884976: (v) => new IFC2X3.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2559216714: (v) => new IFC2X3.IfcConstructionResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3293443760: (v) => new IFC2X3.IfcControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3895139033: (v) => new IFC2X3.IfcCostItem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1419761937: (v) => {\n var _a;\n return new IFC2X3.IfcCostSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), new IFC2X3.IfcIdentifier(!v[11] ? null : v[11].value), v[12]);\n },\n 1916426348: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoveringType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => new IFC2X3.IfcCrewResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1457835157: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCurtainWallType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 681481545: (v) => {\n var _a;\n return new IFC2X3.IfcDimensionCurveDirectedCallout(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3256556792: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionFlowElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 360485395: (v) => new IFC2X3.IfcElectricalBaseProperties(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC2X3.IfcLabel(!v[5] ? null : v[5].value), v[6], new IFC2X3.IfcElectricVoltageMeasure(!v[7] ? null : v[7].value), new IFC2X3.IfcFrequencyMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcElectricCurrentMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcElectricCurrentMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPowerMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcPowerMeasure(!v[12] ? null : v[12].value), !v[13] ? null : v[13].value),\n 1758889154: (v) => new IFC2X3.IfcElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC2X3.IfcElementAssembly(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 1623761950: (v) => new IFC2X3.IfcElementComponent(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElementComponentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC2X3.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC2X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEnergyConversionDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1962604670: (v) => new IFC2X3.IfcEquipmentElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3272907226: (v) => new IFC2X3.IfcEquipmentStandard(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3174744832: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEvaporativeCoolerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC2X3.IfcEvaporatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 807026263: (v) => new IFC2X3.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC2X3.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 647756555: (v) => new IFC2X3.IfcFastener(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFastenerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2827207264: (v) => new IFC2X3.IfcFeatureElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC2X3.IfcFeatureElementAddition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC2X3.IfcFeatureElementSubtraction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowControllerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowMeterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowMovingDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowStorageDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowTreatmentDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 263784265: (v) => new IFC2X3.IfcFurnishingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 814719939: (v) => new IFC2X3.IfcFurnitureStandard(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 200128114: (v) => {\n var _a, _b;\n return new IFC2X3.IfcGasTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC2X3.IfcGrid(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2706460486: (v) => new IFC2X3.IfcGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC2X3.IfcHeatExchangerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC2X3.IfcHumidifierType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC2X3.IfcInventory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC2X3.IfcJunctionBoxType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3827777499: (v) => new IFC2X3.IfcLaborResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcText(!v[9] ? null : v[9].value)),\n 1051575348: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLampType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC2X3.IfcLightFixtureType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2506943328: (v) => {\n var _a;\n return new IFC2X3.IfcLinearDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 377706215: (v) => new IFC2X3.IfcMechanicalFastener(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMechanicalFastenerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMemberType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC2X3.IfcMotorConnectionType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916936684: (v) => {\n var _a;\n return new IFC2X3.IfcMove(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, new Handle(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : ((_a = v[12]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC2X3.IfcText(p.value) : null)) || []);\n },\n 4143007308: (v) => new IFC2X3.IfcOccupant(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC2X3.IfcOpeningElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3425660407: (v) => new IFC2X3.IfcOrderAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, new IFC2X3.IfcIdentifier(!v[10] ? null : v[10].value)),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC2X3.IfcOutletType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC2X3.IfcPerformanceHistory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3327091369: (v) => new IFC2X3.IfcPermit(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 804291784: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPipeFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPipeSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPlateType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC2X3.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC2X3.IfcPort(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC2X3.IfcProcedure(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value)),\n 2904328755: (v) => new IFC2X3.IfcProjectOrder(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value)),\n 3642467123: (v) => {\n var _a;\n return new IFC2X3.IfcProjectOrderRecord(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[6]);\n },\n 3651124850: (v) => new IFC2X3.IfcProjectionElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC2X3.IfcProtectiveDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC2X3.IfcPumpType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3248260540: (v) => {\n var _a;\n return new IFC2X3.IfcRadiusDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRailingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2324767716: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRampFlightType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 160246688: (v) => {\n var _a;\n return new IFC2X3.IfcRelAggregates(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2863920197: (v) => {\n var _a;\n return new IFC2X3.IfcRelAssignsTasks(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSanitaryTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3517283431: (v) => new IFC2X3.IfcScheduleTimeControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcTimeMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcTimeMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcTimeMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcTimeMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC2X3.IfcTimeMeasure(!v[17] ? null : v[17].value), !v[18] ? null : !v[18] ? null : v[18].value, !v[19] ? null : new Handle(!v[19] ? null : v[19].value), !v[20] ? null : new IFC2X3.IfcTimeMeasure(!v[20] ? null : v[20].value), !v[21] ? null : new IFC2X3.IfcTimeMeasure(!v[21] ? null : v[21].value), !v[22] ? null : new IFC2X3.IfcPositiveRatioMeasure(!v[22] ? null : v[22].value)),\n 4105383287: (v) => new IFC2X3.IfcServiceLife(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], new IFC2X3.IfcTimeMeasure(!v[6] ? null : v[6].value)),\n 4097777520: (v) => new IFC2X3.IfcSite(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC2X3.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC2X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSlabType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC2X3.IfcSpace(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC2X3.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpaceHeaterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 652456506: (v) => new IFC2X3.IfcSpaceProgram(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcAreaMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcAreaMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), new IFC2X3.IfcAreaMeasure(!v[9] ? null : v[9].value)),\n 3812236995: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSpaceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStackTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStairFlightType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC2X3.IfcStructuralAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1179482911: (v) => new IFC2X3.IfcStructuralConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 4243806635: (v) => new IFC2X3.IfcStructuralCurveConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 214636428: (v) => new IFC2X3.IfcStructuralCurveMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 2445595289: (v) => new IFC2X3.IfcStructuralCurveMemberVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 1807405624: (v) => new IFC2X3.IfcStructuralLinearAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]),\n 1721250024: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralLinearActionVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11], new Handle(!v[12] ? null : v[12].value), ((_a = v[13]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1252848954: (v) => new IFC2X3.IfcStructuralLoadGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC2X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value)),\n 1621171031: (v) => new IFC2X3.IfcStructuralPlanarAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]),\n 3987759626: (v) => {\n var _a;\n return new IFC2X3.IfcStructuralPlanarActionVarying(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11], new Handle(!v[12] ? null : v[12].value), ((_a = v[13]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2082059205: (v) => new IFC2X3.IfcStructuralPointAction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : v[9].value, !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 734778138: (v) => new IFC2X3.IfcStructuralPointConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1235345126: (v) => new IFC2X3.IfcStructuralPointReaction(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC2X3.IfcStructuralResultGroup(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : v[7].value),\n 1975003073: (v) => new IFC2X3.IfcStructuralSurfaceConnection(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => new IFC2X3.IfcSubContractResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcText(!v[10] ? null : v[10].value)),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSwitchingDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC2X3.IfcSystem(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 5716631: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTankType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1637806684: (v) => {\n var _a;\n return new IFC2X3.IfcTimeSeriesSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[6], new Handle(!v[7] ? null : v[7].value));\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTransformerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1620046519: (v) => new IFC2X3.IfcTransportElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcMassMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcCountMeasure(!v[10] ? null : v[10].value)),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : v[3].value, v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC2X3.IfcTubeBundleType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC2X3.IfcUnitaryEquipmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC2X3.IfcValveType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC2X3.IfcVirtualElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWallType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC2X3.IfcWasteTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC2X3.IfcWorkControl(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC2X3.IfcWorkPlan(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 3342526732: (v) => {\n var _a;\n return new IFC2X3.IfcWorkSchedule(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcTimeMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcTimeMeasure(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC2X3.IfcLabel(!v[14] ? null : v[14].value));\n },\n 1033361043: (v) => new IFC2X3.IfcZone(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1213861670: (v) => {\n var _a;\n return new IFC2X3.Ifc2DCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : v[1].value);\n },\n 3821786052: (v) => new IFC2X3.IfcActionRequest(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirTerminalBoxType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAirToAirHeatRecoveryType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2470393545: (v) => {\n var _a;\n return new IFC2X3.IfcAngularDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3460190687: (v) => new IFC2X3.IfcAsset(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value), new Handle(!v[11] ? null : v[11].value), new Handle(!v[12] ? null : v[12].value), new Handle(!v[13] ? null : v[13].value)),\n 1967976161: (v) => {\n var _a;\n return new IFC2X3.IfcBSplineCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBeamType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916977116: (v) => {\n var _a;\n return new IFC2X3.IfcBezierCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBoilerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3299480353: (v) => new IFC2X3.IfcBuildingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 52481810: (v) => new IFC2X3.IfcBuildingElementComponent(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2979338954: (v) => new IFC2X3.IfcBuildingElementPart(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1095909175: (v) => new IFC2X3.IfcBuildingElementProxy(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1909888760: (v) => {\n var _a, _b;\n return new IFC2X3.IfcBuildingElementProxyType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableCarrierFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableCarrierSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCableSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC2X3.IfcChillerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2611217952: (v) => new IFC2X3.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC2X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoilType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC2X3.IfcColumn(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3850581409: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCompressorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCondenserType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188551683: (v) => new IFC2X3.IfcCondition(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1163958913: (v) => new IFC2X3.IfcConditionCriterion(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3898045240: (v) => new IFC2X3.IfcConstructionEquipmentResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1060000209: (v) => {\n var _a;\n return new IFC2X3.IfcConstructionMaterialResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC2X3.IfcRatioMeasure(!v[10] ? null : v[10].value));\n },\n 488727124: (v) => new IFC2X3.IfcConstructionProductResource(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC2X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC2X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 335055490: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCooledBeamType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC2X3.IfcCoolingTowerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1973544240: (v) => new IFC2X3.IfcCovering(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC2X3.IfcCurtainWall(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDamperType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4147604152: (v) => {\n var _a;\n return new IFC2X3.IfcDiameterDimension(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1335981549: (v) => new IFC2X3.IfcDiscreteAccessory(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDiscreteAccessoryType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionChamberElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDistributionControlElementType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC2X3.IfcDistributionElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC2X3.IfcDistributionFlowElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC2X3.IfcDistributionPort(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 395920057: (v) => new IFC2X3.IfcDoor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctFittingType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctSegmentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC2X3.IfcDuctSilencerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 855621170: (v) => new IFC2X3.IfcEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 663422040: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricApplianceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricFlowStorageDeviceType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricGeneratorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1365060375: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricHeaterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricMotorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC2X3.IfcElectricTimeControlType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634875225: (v) => new IFC2X3.IfcElectricalCircuit(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value)),\n 857184966: (v) => new IFC2X3.IfcElectricalElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1658829314: (v) => new IFC2X3.IfcEnergyConversionDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 346874300: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFanType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFilterType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFireSuppressionTerminalType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC2X3.IfcFlowController(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC2X3.IfcFlowFitting(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC2X3.IfcFlowInstrumentType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3132237377: (v) => new IFC2X3.IfcFlowMovingDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC2X3.IfcFlowSegment(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC2X3.IfcFlowStorageDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC2X3.IfcFlowTerminal(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC2X3.IfcFlowTreatmentDevice(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC2X3.IfcFooting(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC2X3.IfcMember(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1687234759: (v) => new IFC2X3.IfcPile(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 3171933400: (v) => new IFC2X3.IfcPlate(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2262370178: (v) => new IFC2X3.IfcRailing(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC2X3.IfcRamp(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC2X3.IfcRampFlight(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3055160366: (v) => {\n var _a, _b;\n return new IFC2X3.IfcRationalBezierCurve(!v[0] ? null : v[0].value, ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? Number(p.value) : null)) || []);\n },\n 3027567501: (v) => new IFC2X3.IfcReinforcingElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 2320036040: (v) => new IFC2X3.IfcReinforcingMesh(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), new IFC2X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), new IFC2X3.IfcAreaMeasure(!v[13] ? null : v[13].value), new IFC2X3.IfcAreaMeasure(!v[14] ? null : v[14].value), new IFC2X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), new IFC2X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2016517767: (v) => new IFC2X3.IfcRoof(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1376911519: (v) => new IFC2X3.IfcRoundedEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC2X3.IfcSensorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1529196076: (v) => new IFC2X3.IfcSlab(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC2X3.IfcStair(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC2X3.IfcStairFlight(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : !v[8] ? null : v[8].value, !v[9] ? null : !v[9] ? null : v[9].value, !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value)),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC2X3.IfcStructuralAnalysisModel(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3824725483: (v) => new IFC2X3.IfcTendon(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9], new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), new IFC2X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC2X3.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC2X3.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC2X3.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC2X3.IfcTendonAnchor(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value)),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC2X3.IfcVibrationIsolatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391406946: (v) => new IFC2X3.IfcWall(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3512223829: (v) => new IFC2X3.IfcWallStandardCase(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3304561284: (v) => new IFC2X3.IfcWindow(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC2X3.IfcActuatorType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3001207471: (v) => {\n var _a, _b;\n return new IFC2X3.IfcAlarmType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 753842376: (v) => new IFC2X3.IfcBeam(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2454782716: (v) => new IFC2X3.IfcChamferEdgeFeature(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value)),\n 578613899: (v) => {\n var _a, _b;\n return new IFC2X3.IfcControllerType(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC2X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1052013943: (v) => new IFC2X3.IfcDistributionChamberElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1062813311: (v) => new IFC2X3.IfcDistributionControlElement(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcIdentifier(!v[8] ? null : v[8].value)),\n 3700593921: (v) => new IFC2X3.IfcElectricDistributionPoint(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC2X3.IfcLabel(!v[9] ? null : v[9].value)),\n 979691226: (v) => new IFC2X3.IfcReinforcingBar(new IFC2X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC2X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC2X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC2X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC2X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC2X3.IfcLabel(!v[8] ? null : v[8].value), new IFC2X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), new IFC2X3.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC2X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13])\n};\nInheritanceDef[1] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 411424972: [IFCENVIRONMENTALIMPACTVALUE, IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 3264961684: [IFCCOLOURRGB],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPORTGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 3796139169: [IFCDIMENSIONPAIR, IFCDIMENSIONCALLOUTRELATIONSHIP],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSYMBOL, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 3265635763: [IFCHYGROSCOPICMATERIALPROPERTIES, IFCGENERALMATERIALPROPERTIES, IFCFUELPROPERTIES, IFCEXTENDEDMATERIALPROPERTIES, IFCWATERPROPERTIES, IFCTHERMALMATERIALPROPERTIES, IFCPRODUCTSOFCOMBUSTIONPROPERTIES, IFCOPTICALMATERIALPROPERTIES, IFCMECHANICALCONCRETEMATERIALPROPERTIES, IFCMECHANICALSTEELMATERIALPROPERTIES, IFCMECHANICALMATERIALPROPERTIES],\n 4256014907: [IFCMECHANICALCONCRETEMATERIALPROPERTIES, IFCMECHANICALSTEELMATERIALPROPERTIES],\n 1918398963: [IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCDRAUGHTINGPREDEFINEDTEXTFONT, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDPOINTMARKERSYMBOL, IFCPREDEFINEDDIMENSIONSYMBOL, IFCPREDEFINEDTERMINATORSYMBOL, IFCPREDEFINEDSYMBOL],\n 990879717: [IFCPREDEFINEDPOINTMARKERSYMBOL, IFCPREDEFINEDDIMENSIONSYMBOL, IFCPREDEFINEDTERMINATORSYMBOL],\n 1775413392: [IFCDRAUGHTINGPREDEFINEDTEXTFONT, IFCTEXTSTYLEFONTMODEL],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSYMBOLSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCRANERAILFSHAPEPROFILEDEF, IFCCRANERAILASHAPEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 2802850158: [IFCSTRUCTURALSTEELPROFILEPROPERTIES, IFCSTRUCTURALPROFILEPROPERTIES, IFCGENERALPROFILEPROPERTIES, IFCRIBPLATEPROFILEPROPERTIES],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLETILESYMBOLWITHSTYLE, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT, IFCDRAUGHTINGCALLOUT, IFCDIRECTION, IFCDEFINEDSYMBOL, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONSURFACE, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCTWODIRECTIONREPEATFACTOR, IFCONEDIRECTIONREPEATFACTOR, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE, IFCANNOTATIONOCCURRENCE, IFCSTYLEDITEM],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS, IFCOBJECT, IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 3958052878: [IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE, IFCANNOTATIONOCCURRENCE],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 280115917: [IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 2442683028: [IFCANNOTATIONFILLAREAOCCURRENCE, IFCPROJECTIONCURVE, IFCDIMENSIONCURVE, IFCANNOTATIONCURVEOCCURRENCE, IFCANNOTATIONTEXTOCCURRENCE, IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL, IFCANNOTATIONSYMBOLOCCURRENCE, IFCANNOTATIONSURFACEOCCURRENCE],\n 3612888222: [IFCDIMENSIONCURVETERMINATOR, IFCTERMINATORSYMBOL],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 2556980723: [IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 1446786286: [IFCSTRUCTURALSTEELPROFILEPROPERTIES, IFCSTRUCTURALPROFILEPROPERTIES],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLETILESYMBOLWITHSTYLE, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT, IFCDRAUGHTINGCALLOUT, IFCDIRECTION, IFCDEFINEDSYMBOL, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONSURFACE, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCTWODIRECTIONREPEATFACTOR, IFCONEDIRECTIONREPEATFACTOR, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 219451334: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS, IFCOBJECT, IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTYPEOBJECT],\n 2833995503: [IFCTWODIRECTIONREPEATFACTOR],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCRANERAILFSHAPEPROFILEDEF, IFCCRANERAILASHAPEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 1680319473: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCFLUIDFLOWPROPERTIES, IFCELECTRICALBASEPROPERTIES, IFCENERGYPROPERTIES, IFCELEMENTQUANTITY, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCSPACETHERMALLOADPROPERTIES, IFCSOUNDVALUE, IFCSOUNDPROPERTIES, IFCSERVICELIFEFACTOR, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 723233188: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 3843319758: [IFCSTRUCTURALSTEELPROFILEPROPERTIES],\n 2513912981: [IFCPLANE, IFCELEMENTARYSURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLID],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 3028897424: [IFCDIMENSIONCURVETERMINATOR],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT],\n 2347495698: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE],\n 3288037868: [IFCPROJECTIONCURVE, IFCDIMENSIONCURVE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE],\n 3073041342: [IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION, IFCDIMENSIONCURVEDIRECTEDCALLOUT, IFCSTRUCTUREDDIMENSIONCALLOUT],\n 339256511: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCPLANE],\n 80994333: [IFCELECTRICALBASEPROPERTIES],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 1484403080: [IFCASYMMETRICISHAPEPROFILEDEF],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP],\n 3888040117: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCPROJECT, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK, IFCPROCESS],\n 2945172077: [IFCPROCEDURE, IFCORDERACTION, IFCMOVE, IFCTASK],\n 4208778838: [IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCPROXY],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER, IFCRELASSIGNSTOCONTROL, IFCRELOCCUPIESSPACES, IFCRELASSIGNSTOACTOR],\n 1683148259: [IFCRELOCCUPIESSPACES],\n 2495723537: [IFCRELASSIGNSTASKS, IFCRELSCHEDULESCOSTITEMS, IFCRELASSIGNSTOPROJECTORDER],\n 1865459582: [IFCRELASSOCIATESPROFILEPROPERTIES, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATESAPPLIEDVALUE],\n 826625072: [IFCRELVOIDSELEMENT, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPROJECTSELEMENT, IFCRELINTERACTIONREQUIREMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALELEMENT, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELOVERRIDESPROPERTIES, IFCRELDEFINESBYPROPERTIES],\n 4186316022: [IFCRELOVERRIDESPROPERTIES],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING],\n 3893378262: [IFCSPACETYPE],\n 3544373492: [IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 3473067441: [IFCORDERACTION, IFCMOVE],\n 2296667514: [IFCOCCUPANT],\n 1260505505: [IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFC2DCOMPOSITECURVE, IFCCOMPOSITECURVE],\n 1950629157: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWALLTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCMEMBERTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE],\n 3732776249: [IFC2DCOMPOSITECURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCCONDITIONCRITERION, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCTIMESERIESSCHEDULE, IFCSPACEPROGRAM, IFCSERVICELIFE, IFCSCHEDULETIMECONTROL, IFCPROJECTORDERRECORD, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCFURNITURESTANDARD, IFCEQUIPMENTSTANDARD, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 681481545: [IFCDIAMETERDIMENSION, IFCANGULARDIMENSION, IFCRADIUSDIMENSION, IFCLINEARDIMENSION],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCELECTRICALELEMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCFURNISHINGELEMENT, IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCEQUIPMENTELEMENT, IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCMECHANICALFASTENER, IFCFASTENER],\n 2590856083: [IFCVIBRATIONISOLATORTYPE, IFCDISCRETEACCESSORYTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSPACEHEATERTYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE],\n 647756555: [IFCMECHANICALFASTENER],\n 2489546625: [IFCMECHANICALFASTENERTYPE],\n 2827207264: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE, IFCEDGEFEATURE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICHEATERTYPE, IFCELECTRICAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCGASTERMINALTYPE],\n 3009222698: [IFCFILTERTYPE, IFCDUCTSILENCERTYPE],\n 2706460486: [IFCCONDITION, IFCASSET, IFCZONE, IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 682877961: [IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALPLANARACTIONVARYING, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALLINEARACTIONVARYING, IFCSTRUCTURALLINEARACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1807405624: [IFCSTRUCTURALLINEARACTIONVARYING],\n 1621171031: [IFCSTRUCTURALPLANARACTIONVARYING],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCELECTRICALCIRCUIT],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBEZIERCURVE, IFCBEZIERCURVE],\n 1916977116: [IFCRATIONALBEZIERCURVE],\n 3299480353: [IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATE, IFCPILE, IFCMEMBER, IFCFOOTING, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMN, IFCBUILDINGELEMENTPROXY, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART, IFCBUILDINGELEMENTCOMPONENT],\n 52481810: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCBUILDINGELEMENTPART],\n 2635815018: [IFCVIBRATIONISOLATORTYPE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCSENSORTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFLOWTREATMENTDEVICE, IFCFLOWTERMINAL, IFCFLOWSTORAGEDEVICE, IFCFLOWSEGMENT, IFCFLOWMOVINGDEVICE, IFCFLOWFITTING, IFCELECTRICDISTRIBUTIONPOINT, IFCFLOWCONTROLLER, IFCENERGYCONVERSIONDEVICE],\n 855621170: [IFCCHAMFEREDGEFEATURE, IFCROUNDEDEDGEFEATURE],\n 2058353004: [IFCELECTRICDISTRIBUTIONPOINT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 2391406946: [IFCWALLSTANDARDCASE]\n};\nInversePropertyDef[1] = {\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 130549933: [[\"Actors\", IFCAPPROVALACTORRELATIONSHIP, 1, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 0, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 1, true]],\n 747523909: [[\"Contains\", IFCCLASSIFICATIONITEM, 1, true]],\n 1767535486: [[\"IsClassifiedItemIn\", IFCCLASSIFICATIONITEMRELATIONSHIP, 1, true], [\"IsClassifyingItemIn\", IFCCLASSIFICATIONITEMRELATIONSHIP, 0, true]],\n 1959218052: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 602808272: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 1154170062: [[\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 1, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 0, true]],\n 1648886627: [[\"ValuesReferenced\", IFCREFERENCESVALUEDOCUMENT, 1, true], [\"ValueOfComponents\", IFCAPPLIEDVALUERELATIONSHIP, 0, true], [\"IsComponentIn\", IFCAPPLIEDVALUERELATIONSHIP, 1, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 3452421091: [[\"ReferenceIntoLibrary\", IFCLIBRARYINFORMATION, 4, true]],\n 1838606355: [[\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"ClassifiedAs\", IFCMATERIALCLASSIFICATIONRELATIONSHIP, 1, true]],\n 248100487: [[\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3368373690: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 2251480897: [[\"ClassifiedAs\", IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP, 0, true], [\"RelatesConstraints\", IFCCONSTRAINTRELATIONSHIP, 2, true], [\"IsRelatedWith\", IFCCONSTRAINTRELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCPROPERTYCONSTRAINTRELATIONSHIP, 0, true], [\"Aggregates\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 2, true], [\"IsAggregatedIn\", IFCCONSTRAINTAGGREGATIONRELATIONSHIP, 3, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 2598011224: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2044713172: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 3692461612: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 531007025: [[\"OfTable\", IFCTABLE, 1, false]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 280115917: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 1742049831: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 2552916305: [[\"AnnotatedSurface\", IFCANNOTATIONSURFACE, 1, true]],\n 3101149627: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 1377556343: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2442683028: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 962685235: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3612888222: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2297822566: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 370225590: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3732053477: [[\"ReferenceToDocument\", IFCDOCUMENTINFORMATION, 3, true]],\n 3900360178: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2556980723: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1809719519: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true]],\n 2453401579: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true]],\n 3590301190: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3741457305: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 1402838566: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2833995503: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2665983363: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2519244187: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2004835150: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 871118103: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 1680319473: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 4166981789: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 2752243245: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 941946838: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 3357820518: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 3650150729: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 110355661: [[\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 0, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 1, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true]],\n 3413951693: [[\"DocumentedBy\", IFCTIMESERIESREFERENCERELATIONSHIP, 0, true]],\n 3765753017: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1509187699: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2411513650: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 4124623270: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 723233188: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485662743: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1202362311: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 390701378: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 2233826070: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3028897424: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1345879162: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1417489154: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 336235671: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 512836454: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1299126871: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3288037868: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 669184980: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2265737646: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1302238472: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4261334040: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1123145078: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2205249479: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485617015: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2506170314: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 693772133: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 606661476: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"AnnotatedBySymbols\", IFCTERMINATORSYMBOL, 3, true]],\n 4054601972: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 32440307: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2963535650: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1714330368: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 526551008: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3073041342: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 1472233963: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2777663545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 80994333: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 477187591: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4203026998: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3455213021: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 987898635: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1281925730: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true]],\n 3388369263: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3566463478: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 603570806: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true]],\n 4194566429: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1451395588: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 3219374653: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2798486643: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 451544542: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false], [\"Causes\", IFCSTRUCTURALACTION, 10, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 4070609034: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 2028607225: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1334484129: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 1950629157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3732776249: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 681481545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 360485395: [[\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PropertyDefinitionOf\", IFCRELDEFINESBYPROPERTIES, 5, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1704287377: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1962604670: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3272907226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 807026263: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 814719939: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 200128114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2506943328: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1916936684: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 3425660407: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3724593414: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, false], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3642467123: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3248260540: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3517283431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true], [\"ScheduleTimeControlAssigned\", IFCRELASSIGNSTASKS, 7, false]],\n 4105383287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 652456506: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true], [\"HasInteractionReqsFrom\", IFCRELINTERACTIONREQUIREMENTS, 7, true], [\"HasInteractionReqsTo\", IFCRELINTERACTIONREQUIREMENTS, 8, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ReferencesElement\", IFCRELCONNECTSSTRUCTURALELEMENT, 5, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1721250024: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 3987759626: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, false], [\"Causes\", IFCSTRUCTURALACTION, 10, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1637806684: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3593883385: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1213861670: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2470393545: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1967976161: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1916977116: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3299480353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 52481810: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2611217952: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2188551683: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false]],\n 1163958913: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"Covers\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4147604152: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"IsRelatedFromCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 3, true], [\"IsRelatedToCallout\", IFCDRAUGHTINGCALLOUTRELATIONSHIP, 2, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, false], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 855621170: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1365060375: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1634875225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 857184966: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3055160366: [[\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 1376911519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, false], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2454782716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"ObjectTypeOf\", IFCRELDEFINESBYTYPE, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3700593921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"IsDecomposedBy\", IFCRELDECOMPOSES, 4, true], [\"Decomposes\", IFCRELDECOMPOSES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"HasStructuralMember\", IFCRELCONNECTSSTRUCTURALELEMENT, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]]\n};\nConstructors[1] = {\n 3630933823: (a) => new IFC2X3.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC2X3.IfcAddress(a[0], a[1], a[2]),\n 639542469: (a) => new IFC2X3.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC2X3.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1110488051: (a) => new IFC2X3.IfcAppliedValueRelationship(a[0], a[1], a[2], a[3], a[4]),\n 130549933: (a) => new IFC2X3.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2080292479: (a) => new IFC2X3.IfcApprovalActorRelationship(a[0], a[1], a[2]),\n 390851274: (a) => new IFC2X3.IfcApprovalPropertyRelationship(a[0], a[1]),\n 3869604511: (a) => new IFC2X3.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 4037036970: (a) => new IFC2X3.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC2X3.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC2X3.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC2X3.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC2X3.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 622194075: (a) => new IFC2X3.IfcCalendarDate(a[0], a[1], a[2]),\n 747523909: (a) => new IFC2X3.IfcClassification(a[0], a[1], a[2], a[3]),\n 1767535486: (a) => new IFC2X3.IfcClassificationItem(a[0], a[1], a[2]),\n 1098599126: (a) => new IFC2X3.IfcClassificationItemRelationship(a[0], a[1]),\n 938368621: (a) => new IFC2X3.IfcClassificationNotation(a[0]),\n 3639012971: (a) => new IFC2X3.IfcClassificationNotationFacet(a[0]),\n 3264961684: (a) => new IFC2X3.IfcColourSpecification(a[0]),\n 2859738748: (_) => new IFC2X3.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC2X3.IfcConnectionPointGeometry(a[0], a[1]),\n 4257277454: (a) => new IFC2X3.IfcConnectionPortGeometry(a[0], a[1], a[2]),\n 2732653382: (a) => new IFC2X3.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC2X3.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1658513725: (a) => new IFC2X3.IfcConstraintAggregationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 613356794: (a) => new IFC2X3.IfcConstraintClassificationRelationship(a[0], a[1]),\n 347226245: (a) => new IFC2X3.IfcConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1065062679: (a) => new IFC2X3.IfcCoordinatedUniversalTimeOffset(a[0], a[1], a[2]),\n 602808272: (a) => new IFC2X3.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 539742890: (a) => new IFC2X3.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC2X3.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC2X3.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC2X3.IfcCurveStyleFontPattern(a[0], a[1]),\n 1072939445: (a) => new IFC2X3.IfcDateAndTime(a[0], a[1]),\n 1765591967: (a) => new IFC2X3.IfcDerivedUnit(a[0], a[1], a[2]),\n 1045800335: (a) => new IFC2X3.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC2X3.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1376555844: (a) => new IFC2X3.IfcDocumentElectronicFormat(a[0], a[1], a[2]),\n 1154170062: (a) => new IFC2X3.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC2X3.IfcDocumentInformationRelationship(a[0], a[1], a[2]),\n 3796139169: (a) => new IFC2X3.IfcDraughtingCalloutRelationship(a[0], a[1], a[2], a[3]),\n 1648886627: (a) => new IFC2X3.IfcEnvironmentalImpactValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3200245327: (a) => new IFC2X3.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC2X3.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC2X3.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3207319532: (a) => new IFC2X3.IfcExternallyDefinedSymbol(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC2X3.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC2X3.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC2X3.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC2X3.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4]),\n 3452421091: (a) => new IFC2X3.IfcLibraryReference(a[0], a[1], a[2]),\n 4162380809: (a) => new IFC2X3.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC2X3.IfcLightIntensityDistribution(a[0], a[1]),\n 30780891: (a) => new IFC2X3.IfcLocalTime(a[0], a[1], a[2], a[3], a[4]),\n 1838606355: (a) => new IFC2X3.IfcMaterial(a[0]),\n 1847130766: (a) => new IFC2X3.IfcMaterialClassificationRelationship(a[0], a[1]),\n 248100487: (a) => new IFC2X3.IfcMaterialLayer(a[0], a[1], a[2]),\n 3303938423: (a) => new IFC2X3.IfcMaterialLayerSet(a[0], a[1]),\n 1303795690: (a) => new IFC2X3.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3]),\n 2199411900: (a) => new IFC2X3.IfcMaterialList(a[0]),\n 3265635763: (a) => new IFC2X3.IfcMaterialProperties(a[0]),\n 2597039031: (a) => new IFC2X3.IfcMeasureWithUnit(a[0], a[1]),\n 4256014907: (a) => new IFC2X3.IfcMechanicalMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 677618848: (a) => new IFC2X3.IfcMechanicalSteelMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3368373690: (a) => new IFC2X3.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2706619895: (a) => new IFC2X3.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC2X3.IfcNamedUnit(a[0], a[1]),\n 3701648758: (_) => new IFC2X3.IfcObjectPlacement(),\n 2251480897: (a) => new IFC2X3.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1227763645: (a) => new IFC2X3.IfcOpticalMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4251960020: (a) => new IFC2X3.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1411181986: (a) => new IFC2X3.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1207048766: (a) => new IFC2X3.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC2X3.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC2X3.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC2X3.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC2X3.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC2X3.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3727388367: (a) => new IFC2X3.IfcPreDefinedItem(a[0]),\n 990879717: (a) => new IFC2X3.IfcPreDefinedSymbol(a[0]),\n 3213052703: (a) => new IFC2X3.IfcPreDefinedTerminatorSymbol(a[0]),\n 1775413392: (a) => new IFC2X3.IfcPreDefinedTextFont(a[0]),\n 2022622350: (a) => new IFC2X3.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC2X3.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC2X3.IfcPresentationStyle(a[0]),\n 2417041796: (a) => new IFC2X3.IfcPresentationStyleAssignment(a[0]),\n 2095639259: (a) => new IFC2X3.IfcProductRepresentation(a[0], a[1], a[2]),\n 2267347899: (a) => new IFC2X3.IfcProductsOfCombustionProperties(a[0], a[1], a[2], a[3], a[4]),\n 3958567839: (a) => new IFC2X3.IfcProfileDef(a[0], a[1]),\n 2802850158: (a) => new IFC2X3.IfcProfileProperties(a[0], a[1]),\n 2598011224: (a) => new IFC2X3.IfcProperty(a[0], a[1]),\n 3896028662: (a) => new IFC2X3.IfcPropertyConstraintRelationship(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC2X3.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3710013099: (a) => new IFC2X3.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC2X3.IfcQuantityArea(a[0], a[1], a[2], a[3]),\n 2093928680: (a) => new IFC2X3.IfcQuantityCount(a[0], a[1], a[2], a[3]),\n 931644368: (a) => new IFC2X3.IfcQuantityLength(a[0], a[1], a[2], a[3]),\n 3252649465: (a) => new IFC2X3.IfcQuantityTime(a[0], a[1], a[2], a[3]),\n 2405470396: (a) => new IFC2X3.IfcQuantityVolume(a[0], a[1], a[2], a[3]),\n 825690147: (a) => new IFC2X3.IfcQuantityWeight(a[0], a[1], a[2], a[3]),\n 2692823254: (a) => new IFC2X3.IfcReferencesValueDocument(a[0], a[1], a[2], a[3]),\n 1580146022: (a) => new IFC2X3.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1222501353: (a) => new IFC2X3.IfcRelaxation(a[0], a[1]),\n 1076942058: (a) => new IFC2X3.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC2X3.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC2X3.IfcRepresentationItem(),\n 1660063152: (a) => new IFC2X3.IfcRepresentationMap(a[0], a[1]),\n 3679540991: (a) => new IFC2X3.IfcRibPlateProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2341007311: (a) => new IFC2X3.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC2X3.IfcSIUnit(a[0], a[1], a[2]),\n 2042790032: (a) => new IFC2X3.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC2X3.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 867548509: (a) => new IFC2X3.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC2X3.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC2X3.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 3692461612: (a) => new IFC2X3.IfcSimpleProperty(a[0], a[1]),\n 2273995522: (a) => new IFC2X3.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC2X3.IfcStructuralLoad(a[0]),\n 2525727697: (a) => new IFC2X3.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC2X3.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC2X3.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC2X3.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC2X3.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC2X3.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC2X3.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC2X3.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC2X3.IfcSurfaceStyleShading(a[0]),\n 1351298697: (a) => new IFC2X3.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC2X3.IfcSurfaceTexture(a[0], a[1], a[2], a[3]),\n 1290481447: (a) => new IFC2X3.IfcSymbolStyle(a[0], a[1]),\n 985171141: (a) => new IFC2X3.IfcTable(a[0], a[1]),\n 531007025: (a) => new IFC2X3.IfcTableRow(a[0], a[1]),\n 912023232: (a) => new IFC2X3.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1447204868: (a) => new IFC2X3.IfcTextStyle(a[0], a[1], a[2], a[3]),\n 1983826977: (a) => new IFC2X3.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2636378356: (a) => new IFC2X3.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC2X3.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1484833681: (a) => new IFC2X3.IfcTextStyleWithBoxCharacteristics(a[0], a[1], a[2], a[3], a[4]),\n 280115917: (_) => new IFC2X3.IfcTextureCoordinate(),\n 1742049831: (a) => new IFC2X3.IfcTextureCoordinateGenerator(a[0], a[1]),\n 2552916305: (a) => new IFC2X3.IfcTextureMap(a[0]),\n 1210645708: (a) => new IFC2X3.IfcTextureVertex(a[0]),\n 3317419933: (a) => new IFC2X3.IfcThermalMaterialProperties(a[0], a[1], a[2], a[3], a[4]),\n 3101149627: (a) => new IFC2X3.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1718945513: (a) => new IFC2X3.IfcTimeSeriesReferenceRelationship(a[0], a[1]),\n 581633288: (a) => new IFC2X3.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC2X3.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC2X3.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC2X3.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC2X3.IfcVertex(),\n 3304826586: (a) => new IFC2X3.IfcVertexBasedTextureMap(a[0], a[1]),\n 1907098498: (a) => new IFC2X3.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC2X3.IfcVirtualGridIntersection(a[0], a[1]),\n 1065908215: (a) => new IFC2X3.IfcWaterProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2442683028: (a) => new IFC2X3.IfcAnnotationOccurrence(a[0], a[1], a[2]),\n 962685235: (a) => new IFC2X3.IfcAnnotationSurfaceOccurrence(a[0], a[1], a[2]),\n 3612888222: (a) => new IFC2X3.IfcAnnotationSymbolOccurrence(a[0], a[1], a[2]),\n 2297822566: (a) => new IFC2X3.IfcAnnotationTextOccurrence(a[0], a[1], a[2]),\n 3798115385: (a) => new IFC2X3.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC2X3.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC2X3.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC2X3.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3150382593: (a) => new IFC2X3.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 647927063: (a) => new IFC2X3.IfcClassificationReference(a[0], a[1], a[2], a[3]),\n 776857604: (a) => new IFC2X3.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC2X3.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 1485152156: (a) => new IFC2X3.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC2X3.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC2X3.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC2X3.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC2X3.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC2X3.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 3800577675: (a) => new IFC2X3.IfcCurveStyle(a[0], a[1], a[2], a[3]),\n 3632507154: (a) => new IFC2X3.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 2273265877: (a) => new IFC2X3.IfcDimensionCalloutRelationship(a[0], a[1], a[2], a[3]),\n 1694125774: (a) => new IFC2X3.IfcDimensionPair(a[0], a[1], a[2], a[3]),\n 3732053477: (a) => new IFC2X3.IfcDocumentReference(a[0], a[1], a[2]),\n 4170525392: (a) => new IFC2X3.IfcDraughtingPreDefinedTextFont(a[0]),\n 3900360178: (a) => new IFC2X3.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC2X3.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 1860660968: (a) => new IFC2X3.IfcExtendedMaterialProperties(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC2X3.IfcFace(a[0]),\n 1809719519: (a) => new IFC2X3.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC2X3.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC2X3.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC2X3.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC2X3.IfcFillAreaStyle(a[0], a[1]),\n 3857492461: (a) => new IFC2X3.IfcFuelProperties(a[0], a[1], a[2], a[3], a[4]),\n 803998398: (a) => new IFC2X3.IfcGeneralMaterialProperties(a[0], a[1], a[2], a[3]),\n 1446786286: (a) => new IFC2X3.IfcGeneralProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3448662350: (a) => new IFC2X3.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC2X3.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC2X3.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3590301190: (a) => new IFC2X3.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC2X3.IfcGridPlacement(a[0], a[1]),\n 812098782: (a) => new IFC2X3.IfcHalfSpaceSolid(a[0], a[1]),\n 2445078500: (a) => new IFC2X3.IfcHygroscopicMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3905492369: (a) => new IFC2X3.IfcImageTexture(a[0], a[1], a[2], a[3], a[4]),\n 3741457305: (a) => new IFC2X3.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1402838566: (a) => new IFC2X3.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC2X3.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC2X3.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC2X3.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC2X3.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC2X3.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2624227202: (a) => new IFC2X3.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC2X3.IfcLoop(),\n 2347385850: (a) => new IFC2X3.IfcMappedItem(a[0], a[1]),\n 2022407955: (a) => new IFC2X3.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1430189142: (a) => new IFC2X3.IfcMechanicalConcreteMaterialProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 219451334: (a) => new IFC2X3.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 2833995503: (a) => new IFC2X3.IfcOneDirectionRepeatFactor(a[0]),\n 2665983363: (a) => new IFC2X3.IfcOpenShell(a[0]),\n 1029017970: (a) => new IFC2X3.IfcOrientedEdge(a[0], a[1]),\n 2529465313: (a) => new IFC2X3.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC2X3.IfcPath(a[0]),\n 3021840470: (a) => new IFC2X3.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC2X3.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2004835150: (a) => new IFC2X3.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC2X3.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC2X3.IfcPoint(),\n 4022376103: (a) => new IFC2X3.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC2X3.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC2X3.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC2X3.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 759155922: (a) => new IFC2X3.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC2X3.IfcPreDefinedCurveFont(a[0]),\n 433424934: (a) => new IFC2X3.IfcPreDefinedDimensionSymbol(a[0]),\n 179317114: (a) => new IFC2X3.IfcPreDefinedPointMarkerSymbol(a[0]),\n 673634403: (a) => new IFC2X3.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 871118103: (a) => new IFC2X3.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4]),\n 1680319473: (a) => new IFC2X3.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 4166981789: (a) => new IFC2X3.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC2X3.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC2X3.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 3357820518: (a) => new IFC2X3.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 3650150729: (a) => new IFC2X3.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC2X3.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3615266464: (a) => new IFC2X3.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC2X3.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3765753017: (a) => new IFC2X3.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC2X3.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2778083089: (a) => new IFC2X3.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC2X3.IfcSectionedSpine(a[0], a[1], a[2]),\n 2411513650: (a) => new IFC2X3.IfcServiceLifeFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4124623270: (a) => new IFC2X3.IfcShellBasedSurfaceModel(a[0]),\n 2609359061: (a) => new IFC2X3.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC2X3.IfcSolidModel(),\n 2485662743: (a) => new IFC2X3.IfcSoundProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1202362311: (a) => new IFC2X3.IfcSoundValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 390701378: (a) => new IFC2X3.IfcSpaceThermalLoadProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1595516126: (a) => new IFC2X3.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC2X3.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC2X3.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC2X3.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC2X3.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC2X3.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3843319758: (a) => new IFC2X3.IfcStructuralProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22]),\n 3653947884: (a) => new IFC2X3.IfcStructuralSteelProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22], a[23], a[24], a[25], a[26]),\n 2233826070: (a) => new IFC2X3.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC2X3.IfcSurface(),\n 1878645084: (a) => new IFC2X3.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC2X3.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC2X3.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 230924584: (a) => new IFC2X3.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC2X3.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3028897424: (a) => new IFC2X3.IfcTerminatorSymbol(a[0], a[1], a[2], a[3]),\n 4282788508: (a) => new IFC2X3.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC2X3.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 2715220739: (a) => new IFC2X3.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1345879162: (a) => new IFC2X3.IfcTwoDirectionRepeatFactor(a[0], a[1]),\n 1628702193: (a) => new IFC2X3.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2347495698: (a) => new IFC2X3.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 427810014: (a) => new IFC2X3.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1417489154: (a) => new IFC2X3.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC2X3.IfcVertexLoop(a[0]),\n 336235671: (a) => new IFC2X3.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 512836454: (a) => new IFC2X3.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1299126871: (a) => new IFC2X3.IfcWindowStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2543172580: (a) => new IFC2X3.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3288037868: (a) => new IFC2X3.IfcAnnotationCurveOccurrence(a[0], a[1], a[2]),\n 669184980: (a) => new IFC2X3.IfcAnnotationFillArea(a[0], a[1]),\n 2265737646: (a) => new IFC2X3.IfcAnnotationFillAreaOccurrence(a[0], a[1], a[2], a[3], a[4]),\n 1302238472: (a) => new IFC2X3.IfcAnnotationSurface(a[0], a[1]),\n 4261334040: (a) => new IFC2X3.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC2X3.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC2X3.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC2X3.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC2X3.IfcBoundedSurface(),\n 2581212453: (a) => new IFC2X3.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC2X3.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC2X3.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1123145078: (a) => new IFC2X3.IfcCartesianPoint(a[0]),\n 59481748: (a) => new IFC2X3.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC2X3.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC2X3.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC2X3.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC2X3.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC2X3.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC2X3.IfcClosedShell(a[0]),\n 2485617015: (a) => new IFC2X3.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 4133800736: (a) => new IFC2X3.IfcCraneRailAShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 194851669: (a) => new IFC2X3.IfcCraneRailFShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC2X3.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC2X3.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC2X3.IfcCurve(),\n 2827736869: (a) => new IFC2X3.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 693772133: (a) => new IFC2X3.IfcDefinedSymbol(a[0], a[1]),\n 606661476: (a) => new IFC2X3.IfcDimensionCurve(a[0], a[1], a[2]),\n 4054601972: (a) => new IFC2X3.IfcDimensionCurveTerminator(a[0], a[1], a[2], a[3], a[4]),\n 32440307: (a) => new IFC2X3.IfcDirection(a[0]),\n 2963535650: (a) => new IFC2X3.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 1714330368: (a) => new IFC2X3.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 526551008: (a) => new IFC2X3.IfcDoorStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 3073041342: (a) => new IFC2X3.IfcDraughtingCallout(a[0]),\n 445594917: (a) => new IFC2X3.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC2X3.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1472233963: (a) => new IFC2X3.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC2X3.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC2X3.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC2X3.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC2X3.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 80994333: (a) => new IFC2X3.IfcEnergyProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 477187591: (a) => new IFC2X3.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2047409740: (a) => new IFC2X3.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC2X3.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 4203026998: (a) => new IFC2X3.IfcFillAreaStyleTileSymbolWithStyle(a[0]),\n 315944413: (a) => new IFC2X3.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 3455213021: (a) => new IFC2X3.IfcFluidFlowProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18]),\n 4238390223: (a) => new IFC2X3.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC2X3.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC2X3.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC2X3.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 572779678: (a) => new IFC2X3.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1281925730: (a) => new IFC2X3.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC2X3.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC2X3.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 3388369263: (a) => new IFC2X3.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC2X3.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 3566463478: (a) => new IFC2X3.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603570806: (a) => new IFC2X3.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC2X3.IfcPlane(a[0]),\n 2945172077: (a) => new IFC2X3.IfcProcess(a[0], a[1], a[2], a[3], a[4]),\n 4208778838: (a) => new IFC2X3.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC2X3.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4194566429: (a) => new IFC2X3.IfcProjectionCurve(a[0], a[1], a[2]),\n 1451395588: (a) => new IFC2X3.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 3219374653: (a) => new IFC2X3.IfcProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2770003689: (a) => new IFC2X3.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC2X3.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC2X3.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3939117080: (a) => new IFC2X3.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC2X3.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC2X3.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC2X3.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4278684876: (a) => new IFC2X3.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC2X3.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3372526763: (a) => new IFC2X3.IfcRelAssignsToProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC2X3.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC2X3.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 1327628568: (a) => new IFC2X3.IfcRelAssociatesAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4095574036: (a) => new IFC2X3.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC2X3.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC2X3.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC2X3.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC2X3.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC2X3.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2851387026: (a) => new IFC2X3.IfcRelAssociatesProfileProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 826625072: (a) => new IFC2X3.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC2X3.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC2X3.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC2X3.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC2X3.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC2X3.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3912681535: (a) => new IFC2X3.IfcRelConnectsStructuralElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC2X3.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC2X3.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC2X3.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC2X3.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC2X3.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC2X3.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC2X3.IfcRelDecomposes(a[0], a[1], a[2], a[3], a[4], a[5]),\n 693640335: (a) => new IFC2X3.IfcRelDefines(a[0], a[1], a[2], a[3], a[4]),\n 4186316022: (a) => new IFC2X3.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC2X3.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC2X3.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC2X3.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4189434867: (a) => new IFC2X3.IfcRelInteractionRequirements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3268803585: (a) => new IFC2X3.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2051452291: (a) => new IFC2X3.IfcRelOccupiesSpaces(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 202636808: (a) => new IFC2X3.IfcRelOverridesProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 750771296: (a) => new IFC2X3.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC2X3.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1058617721: (a) => new IFC2X3.IfcRelSchedulesCostItems(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4122056220: (a) => new IFC2X3.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 366585022: (a) => new IFC2X3.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC2X3.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1401173127: (a) => new IFC2X3.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2914609552: (a) => new IFC2X3.IfcResource(a[0], a[1], a[2], a[3], a[4]),\n 1856042241: (a) => new IFC2X3.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 4158566097: (a) => new IFC2X3.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC2X3.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 2706606064: (a) => new IFC2X3.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC2X3.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 451544542: (a) => new IFC2X3.IfcSphere(a[0], a[1]),\n 3544373492: (a) => new IFC2X3.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC2X3.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC2X3.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC2X3.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC2X3.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC2X3.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4070609034: (a) => new IFC2X3.IfcStructuredDimensionCallout(a[0]),\n 2028607225: (a) => new IFC2X3.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC2X3.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC2X3.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC2X3.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3473067441: (a) => new IFC2X3.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2097647324: (a) => new IFC2X3.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2296667514: (a) => new IFC2X3.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1674181508: (a) => new IFC2X3.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3207858831: (a) => new IFC2X3.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC2X3.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC2X3.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC2X3.IfcBoundedCurve(),\n 4031249490: (a) => new IFC2X3.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1950629157: (a) => new IFC2X3.IfcBuildingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3124254112: (a) => new IFC2X3.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC2X3.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 300633059: (a) => new IFC2X3.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3732776249: (a) => new IFC2X3.IfcCompositeCurve(a[0], a[1]),\n 2510884976: (a) => new IFC2X3.IfcConic(a[0]),\n 2559216714: (a) => new IFC2X3.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3293443760: (a) => new IFC2X3.IfcControl(a[0], a[1], a[2], a[3], a[4]),\n 3895139033: (a) => new IFC2X3.IfcCostItem(a[0], a[1], a[2], a[3], a[4]),\n 1419761937: (a) => new IFC2X3.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 1916426348: (a) => new IFC2X3.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC2X3.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1457835157: (a) => new IFC2X3.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 681481545: (a) => new IFC2X3.IfcDimensionCurveDirectedCallout(a[0]),\n 3256556792: (a) => new IFC2X3.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC2X3.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 360485395: (a) => new IFC2X3.IfcElectricalBaseProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1758889154: (a) => new IFC2X3.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC2X3.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC2X3.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC2X3.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC2X3.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC2X3.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1962604670: (a) => new IFC2X3.IfcEquipmentElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3272907226: (a) => new IFC2X3.IfcEquipmentStandard(a[0], a[1], a[2], a[3], a[4]),\n 3174744832: (a) => new IFC2X3.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC2X3.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 807026263: (a) => new IFC2X3.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC2X3.IfcFacetedBrepWithVoids(a[0], a[1]),\n 647756555: (a) => new IFC2X3.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2489546625: (a) => new IFC2X3.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2827207264: (a) => new IFC2X3.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC2X3.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC2X3.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC2X3.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC2X3.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC2X3.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC2X3.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC2X3.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC2X3.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC2X3.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC2X3.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 263784265: (a) => new IFC2X3.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 814719939: (a) => new IFC2X3.IfcFurnitureStandard(a[0], a[1], a[2], a[3], a[4]),\n 200128114: (a) => new IFC2X3.IfcGasTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3009204131: (a) => new IFC2X3.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2706460486: (a) => new IFC2X3.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC2X3.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC2X3.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391368822: (a) => new IFC2X3.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC2X3.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC2X3.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1051575348: (a) => new IFC2X3.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC2X3.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2506943328: (a) => new IFC2X3.IfcLinearDimension(a[0]),\n 377706215: (a) => new IFC2X3.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2108223431: (a) => new IFC2X3.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3181161470: (a) => new IFC2X3.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC2X3.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916936684: (a) => new IFC2X3.IfcMove(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4143007308: (a) => new IFC2X3.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC2X3.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3425660407: (a) => new IFC2X3.IfcOrderAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2837617999: (a) => new IFC2X3.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC2X3.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3327091369: (a) => new IFC2X3.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5]),\n 804291784: (a) => new IFC2X3.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC2X3.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC2X3.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3724593414: (a) => new IFC2X3.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC2X3.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC2X3.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC2X3.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3642467123: (a) => new IFC2X3.IfcProjectOrderRecord(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3651124850: (a) => new IFC2X3.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1842657554: (a) => new IFC2X3.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC2X3.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3248260540: (a) => new IFC2X3.IfcRadiusDimension(a[0]),\n 2893384427: (a) => new IFC2X3.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2324767716: (a) => new IFC2X3.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 160246688: (a) => new IFC2X3.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2863920197: (a) => new IFC2X3.IfcRelAssignsTasks(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1768891740: (a) => new IFC2X3.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3517283431: (a) => new IFC2X3.IfcScheduleTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20], a[21], a[22]),\n 4105383287: (a) => new IFC2X3.IfcServiceLife(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4097777520: (a) => new IFC2X3.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC2X3.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC2X3.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC2X3.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 652456506: (a) => new IFC2X3.IfcSpaceProgram(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC2X3.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3112655638: (a) => new IFC2X3.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC2X3.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC2X3.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1179482911: (a) => new IFC2X3.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4243806635: (a) => new IFC2X3.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 214636428: (a) => new IFC2X3.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2445595289: (a) => new IFC2X3.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1807405624: (a) => new IFC2X3.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1721250024: (a) => new IFC2X3.IfcStructuralLinearActionVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1252848954: (a) => new IFC2X3.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1621171031: (a) => new IFC2X3.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 3987759626: (a) => new IFC2X3.IfcStructuralPlanarActionVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2082059205: (a) => new IFC2X3.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 734778138: (a) => new IFC2X3.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1235345126: (a) => new IFC2X3.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC2X3.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1975003073: (a) => new IFC2X3.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC2X3.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2315554128: (a) => new IFC2X3.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC2X3.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 5716631: (a) => new IFC2X3.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1637806684: (a) => new IFC2X3.IfcTimeSeriesSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1692211062: (a) => new IFC2X3.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1620046519: (a) => new IFC2X3.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3593883385: (a) => new IFC2X3.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC2X3.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC2X3.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC2X3.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC2X3.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1898987631: (a) => new IFC2X3.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC2X3.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1028945134: (a) => new IFC2X3.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4218914973: (a) => new IFC2X3.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 3342526732: (a) => new IFC2X3.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 1033361043: (a) => new IFC2X3.IfcZone(a[0], a[1], a[2], a[3], a[4]),\n 1213861670: (a) => new IFC2X3.Ifc2DCompositeCurve(a[0], a[1]),\n 3821786052: (a) => new IFC2X3.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1411407467: (a) => new IFC2X3.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC2X3.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC2X3.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2470393545: (a) => new IFC2X3.IfcAngularDimension(a[0]),\n 3460190687: (a) => new IFC2X3.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1967976161: (a) => new IFC2X3.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 819618141: (a) => new IFC2X3.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916977116: (a) => new IFC2X3.IfcBezierCurve(a[0], a[1], a[2], a[3], a[4]),\n 231477066: (a) => new IFC2X3.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3299480353: (a) => new IFC2X3.IfcBuildingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 52481810: (a) => new IFC2X3.IfcBuildingElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2979338954: (a) => new IFC2X3.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1095909175: (a) => new IFC2X3.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1909888760: (a) => new IFC2X3.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC2X3.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC2X3.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC2X3.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC2X3.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2611217952: (a) => new IFC2X3.IfcCircle(a[0], a[1]),\n 2301859152: (a) => new IFC2X3.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC2X3.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3850581409: (a) => new IFC2X3.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC2X3.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188551683: (a) => new IFC2X3.IfcCondition(a[0], a[1], a[2], a[3], a[4]),\n 1163958913: (a) => new IFC2X3.IfcConditionCriterion(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3898045240: (a) => new IFC2X3.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1060000209: (a) => new IFC2X3.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC2X3.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 335055490: (a) => new IFC2X3.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC2X3.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1973544240: (a) => new IFC2X3.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC2X3.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3961806047: (a) => new IFC2X3.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4147604152: (a) => new IFC2X3.IfcDiameterDimension(a[0]),\n 1335981549: (a) => new IFC2X3.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2635815018: (a) => new IFC2X3.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1599208980: (a) => new IFC2X3.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC2X3.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC2X3.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC2X3.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC2X3.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 395920057: (a) => new IFC2X3.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 869906466: (a) => new IFC2X3.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC2X3.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC2X3.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 855621170: (a) => new IFC2X3.IfcEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 663422040: (a) => new IFC2X3.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC2X3.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC2X3.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1365060375: (a) => new IFC2X3.IfcElectricHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC2X3.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC2X3.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634875225: (a) => new IFC2X3.IfcElectricalCircuit(a[0], a[1], a[2], a[3], a[4]),\n 857184966: (a) => new IFC2X3.IfcElectricalElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1658829314: (a) => new IFC2X3.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 346874300: (a) => new IFC2X3.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC2X3.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC2X3.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC2X3.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC2X3.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC2X3.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3132237377: (a) => new IFC2X3.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC2X3.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC2X3.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC2X3.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC2X3.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC2X3.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC2X3.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1687234759: (a) => new IFC2X3.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3171933400: (a) => new IFC2X3.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2262370178: (a) => new IFC2X3.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC2X3.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC2X3.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3055160366: (a) => new IFC2X3.IfcRationalBezierCurve(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3027567501: (a) => new IFC2X3.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC2X3.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2016517767: (a) => new IFC2X3.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1376911519: (a) => new IFC2X3.IfcRoundedEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1783015770: (a) => new IFC2X3.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1529196076: (a) => new IFC2X3.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC2X3.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC2X3.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2515109513: (a) => new IFC2X3.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3824725483: (a) => new IFC2X3.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC2X3.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC2X3.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391406946: (a) => new IFC2X3.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3512223829: (a) => new IFC2X3.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3304561284: (a) => new IFC2X3.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2874132201: (a) => new IFC2X3.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3001207471: (a) => new IFC2X3.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 753842376: (a) => new IFC2X3.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2454782716: (a) => new IFC2X3.IfcChamferEdgeFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 578613899: (a) => new IFC2X3.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1052013943: (a) => new IFC2X3.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1062813311: (a) => new IFC2X3.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3700593921: (a) => new IFC2X3.IfcElectricDistributionPoint(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 979691226: (a) => new IFC2X3.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13])\n};\nToRawLineData[1] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate],\n 1110488051: (i) => [i.ComponentOfTotal, i.Components, i.ArithmeticOperator, i.Name, i.Description],\n 130549933: (i) => [i.Description, i.ApprovalDateTime, i.ApprovalStatus, i.ApprovalLevel, i.ApprovalQualifier, i.Name, i.Identifier],\n 2080292479: (i) => [i.Actor, i.Approval, i.Role],\n 390851274: (i) => [i.ApprovedProperties, i.Approval],\n 3869604511: (i) => [i.RelatedApproval, i.RelatingApproval, i.Description, i.Name],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, i.LinearStiffnessByLengthX, i.LinearStiffnessByLengthY, i.LinearStiffnessByLengthZ, i.RotationalStiffnessByLengthX, i.RotationalStiffnessByLengthY, i.RotationalStiffnessByLengthZ],\n 3367102660: (i) => [i.Name, i.LinearStiffnessByAreaX, i.LinearStiffnessByAreaY, i.LinearStiffnessByAreaZ],\n 1387855156: (i) => [i.Name, i.LinearStiffnessX, i.LinearStiffnessY, i.LinearStiffnessZ, i.RotationalStiffnessX, i.RotationalStiffnessY, i.RotationalStiffnessZ],\n 2069777674: (i) => [i.Name, i.LinearStiffnessX, i.LinearStiffnessY, i.LinearStiffnessZ, i.RotationalStiffnessX, i.RotationalStiffnessY, i.RotationalStiffnessZ, i.WarpingStiffness],\n 622194075: (i) => [i.DayComponent, i.MonthComponent, i.YearComponent],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name],\n 1767535486: (i) => [i.Notation, i.ItemOf, i.Title],\n 1098599126: (i) => [i.RelatingItem, i.RelatedItems],\n 938368621: (i) => [i.NotationFacets],\n 3639012971: (i) => [i.NotationValue],\n 3264961684: (i) => [i.Name],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 4257277454: (i) => [i.LocationAtRelatingElement, i.LocationAtRelatedElement, i.ProfileOfPort],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1658513725: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedConstraints, i.LogicalAggregator],\n 613356794: (i) => [i.ClassifiedConstraint, i.RelatedClassifications],\n 347226245: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedConstraints],\n 1065062679: (i) => [i.HourOffset, i.MinuteOffset, i.Sense],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.CostType, i.Condition],\n 539742890: (i) => [i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 1072939445: (i) => [i.DateComponent, i.TimeComponent],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 1376555844: (i) => [i.FileExtension, i.MimeContentType, i.MimeSubtype],\n 1154170062: (i) => [i.DocumentId, i.Name, i.Description, i.DocumentReferences, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3796139169: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 1648886627: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.ImpactType, i.Category, i.UserDefinedCategory],\n 3200245327: (i) => [i.Location, i.ItemReference, i.Name],\n 2242383968: (i) => [i.Location, i.ItemReference, i.Name],\n 1040185647: (i) => [i.Location, i.ItemReference, i.Name],\n 3207319532: (i) => [i.Location, i.ItemReference, i.Name],\n 3548104201: (i) => [i.Location, i.ItemReference, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.LibraryReference],\n 3452421091: (i) => [i.Location, i.ItemReference, i.Name],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 30780891: (i) => [i.HourComponent, i.MinuteComponent, i.SecondComponent, i.Zone, i.DaylightSavingOffset],\n 1838606355: (i) => [i.Name],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine],\n 2199411900: (i) => [i.Materials],\n 3265635763: (i) => [i.Material],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 4256014907: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient],\n 677618848: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient, i.YieldStress, i.UltimateStress, i.UltimateStrain, i.HardeningModule, i.ProportionalStress, i.PlasticStrain, i.Relaxations],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (_) => [],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.ResultValues, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 1227763645: (i) => [i.Material, i.VisibleTransmittance, i.SolarTransmittance, i.ThermalIrTransmittance, i.ThermalIrEmissivityBack, i.ThermalIrEmissivityFront, i.VisibleReflectanceBack, i.VisibleReflectanceFront, i.SolarReflectanceFront, i.SolarReflectanceBack],\n 4251960020: (i) => [i.Id, i.Name, i.Description, i.Roles, i.Addresses],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Id, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 3727388367: (i) => [i.Name],\n 990879717: (i) => [i.Name],\n 3213052703: (i) => [i.Name],\n 1775413392: (i) => [i.Name],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, i.LayerOn, i.LayerFrozen, i.LayerBlocked, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2417041796: (i) => [i.Styles],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 2267347899: (i) => [i.Material, i.SpecificHeatCapacity, i.N20Content, i.COContent, i.CO2Content],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 2802850158: (i) => [i.ProfileName, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Description],\n 3896028662: (i) => [i.RelatingConstraint, i.RelatedProperties, i.Name, i.Description],\n 148025276: (i) => [i.DependingProperty, i.DependantProperty, i.Name, i.Description, i.Expression],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue],\n 2692823254: (i) => [i.ReferencedDocument, i.ReferencingValues, i.Name, i.Description],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 1222501353: (i) => [i.RelaxationValue, i.InitialStress],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 3679540991: (i) => [i.ProfileName, i.ProfileDefinition, i.Thickness, i.RibHeight, i.RibWidth, i.RibSpacing, i.Direction],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, i.ProductDefinitional, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3692461612: (i) => [i.Name, i.Description],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaT_Constant, i.DeltaT_Y, i.DeltaT_Z],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform],\n 1290481447: (i) => [i.Name, Labelise(i.StyleOfSymbol)],\n 985171141: (i) => [i.Name, i.Rows],\n 531007025: (i) => [i.RowCells.map((p) => Labelise(p)), i.IsHeading],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 1484833681: (i) => [i.BoxHeight, i.BoxWidth, i.BoxSlantAngle, i.BoxRotateAngle, !i.CharacterSpacing ? null : Labelise(i.CharacterSpacing)],\n 280115917: (_) => [],\n 1742049831: (i) => [i.Mode, i.Parameter.map((p) => Labelise(p))],\n 2552916305: (i) => [i.TextureMaps],\n 1210645708: (i) => [i.Coordinates],\n 3317419933: (i) => [i.Material, i.SpecificHeatCapacity, i.BoilingPoint, i.FreezingPoint, i.ThermalConductivity],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 1718945513: (i) => [i.ReferencedTimeSeries, i.TimeSeriesReferences],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 3304826586: (i) => [i.TextureVertices, i.TexturePoints],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1065908215: (i) => [i.Material, i.IsPotable, i.Hardness, i.AlkalinityConcentration, i.AcidityConcentration, i.ImpuritiesContent, i.PHLevel, i.DissolvedSolidsContent],\n 2442683028: (i) => [i.Item, i.Styles, i.Name],\n 962685235: (i) => [i.Item, i.Styles, i.Name],\n 3612888222: (i) => [i.Item, i.Styles, i.Name],\n 2297822566: (i) => [i.Item, i.Styles, i.Name],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 647927063: (i) => [i.Location, i.ItemReference, i.Name, i.ReferencedSource],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Description, i.UsageName, i.HasProperties],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 2273265877: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 1694125774: (i) => [i.Name, i.Description, i.RelatingDraughtingCallout, i.RelatedDraughtingCallout],\n 3732053477: (i) => [i.Location, i.ItemReference, i.Name],\n 4170525392: (i) => [i.Name],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, i.SameSense],\n 1860660968: (i) => [i.Material, i.ExtendedProperties, i.Description, i.Name],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, i.Orientation],\n 803316827: (i) => [i.Bound, i.Orientation],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, i.SameSense],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles],\n 3857492461: (i) => [i.Material, i.CombustionTemperature, i.CarbonContent, i.LowerHeatingValue, i.HigherHeatingValue],\n 803998398: (i) => [i.Material, i.MolecularWeight, i.Porosity, i.MassDensity],\n 1446786286: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, i.AgreementFlag],\n 2445078500: (i) => [i.Material, i.UpperVaporResistanceFactor, i.LowerVaporResistanceFactor, i.IsothermalMoistureCapacity, i.VaporPermeability, i.MoistureDiffusivity],\n 3905492369: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.UrlReference],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1430189142: (i) => [i.Material, i.DynamicViscosity, i.YoungModulus, i.ShearModulus, i.PoissonRatio, i.ThermalExpansionCoefficient, i.CompressiveStrength, i.MaxAggregateSize, i.AdmixturesDescription, i.Workability, i.ProtectivePoreRatio, i.WaterImpermeability],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2833995503: (i) => [i.RepeatFactor],\n 2665983363: (i) => [i.CfsFaces],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, i.Orientation],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [i.RepeatS, i.RepeatT, i.TextureType, i.TextureTransform, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, i.AgreementFlag, i.Position, i.PolygonalBoundary],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 433424934: (i) => [i.Name],\n 179317114: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 871118103: (i) => [i.Name, i.Description, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 4166981789: (i) => [i.Name, i.Description, i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Description, i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Description, i.UsageName, i.PropertyReference],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3650150729: (i) => [i.Name, i.Description, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Description, i.DefiningValues.map((p) => Labelise(p)), i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 2411513650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PredefinedType, !i.UpperValue ? null : Labelise(i.UpperValue), Labelise(i.MostUsedValue), !i.LowerValue ? null : Labelise(i.LowerValue)],\n 4124623270: (i) => [i.SbsmBoundary],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 2485662743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, { type: 3, value: BooleanConvert(i.IsAttenuating.value) }, i.SoundScale, i.SoundValues],\n 1202362311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.SoundLevelTimeSeries, i.Frequency, !i.SoundLevelSingleValue ? null : Labelise(i.SoundLevelSingleValue)],\n 390701378: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableValueRatio, i.ThermalLoadSource, i.PropertySource, i.SourceDescription, i.MaximumValue, i.MinimumValue, i.ThermalLoadTimeSeriesValues, i.UserDefinedThermalLoadSource, i.UserDefinedPropertySource, i.ThermalLoadType],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 3843319758: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea, i.TorsionalConstantX, i.MomentOfInertiaYZ, i.MomentOfInertiaY, i.MomentOfInertiaZ, i.WarpingConstant, i.ShearCentreZ, i.ShearCentreY, i.ShearDeformationAreaZ, i.ShearDeformationAreaY, i.MaximumSectionModulusY, i.MinimumSectionModulusY, i.MaximumSectionModulusZ, i.MinimumSectionModulusZ, i.TorsionalSectionModulus, i.CentreOfGravityInX, i.CentreOfGravityInY],\n 3653947884: (i) => [i.ProfileName, i.ProfileDefinition, i.PhysicalWeight, i.Perimeter, i.MinimumPlateThickness, i.MaximumPlateThickness, i.CrossSectionArea, i.TorsionalConstantX, i.MomentOfInertiaYZ, i.MomentOfInertiaY, i.MomentOfInertiaZ, i.WarpingConstant, i.ShearCentreZ, i.ShearCentreY, i.ShearDeformationAreaZ, i.ShearDeformationAreaY, i.MaximumSectionModulusY, i.MinimumSectionModulusY, i.MaximumSectionModulusZ, i.MinimumSectionModulusZ, i.TorsionalSectionModulus, i.CentreOfGravityInX, i.CentreOfGravityInY, i.ShearAreaZ, i.ShearAreaY, i.PlasticShapeFactorY, i.PlasticShapeFactorZ],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope, i.CentreOfGravityInY],\n 3028897424: (i) => [i.Item, i.Styles, i.Name, i.AnnotatedCurve],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1345879162: (i) => [i.RepeatFactor, i.SecondRepeatFactor],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope, i.CentreOfGravityInX],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 1299126871: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ConstructionType, i.OperationType, i.ParameterTakesPrecedence, i.Sizeable],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3288037868: (i) => [i.Item, i.Styles, i.Name],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 2265737646: (i) => [i.Item, i.Styles, i.Name, i.FillStyleTarget, i.GlobalOrLocal],\n 1302238472: (i) => [i.Item, i.TextureCoordinates],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, i.AgreementFlag, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius, i.CentreOfGravityInX],\n 1123145078: (i) => [i.Coordinates],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 2485617015: (i) => [i.Transition, i.SameSense, i.ParentCurve],\n 4133800736: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallHeight, i.BaseWidth2, i.Radius, i.HeadWidth, i.HeadDepth2, i.HeadDepth3, i.WebThickness, i.BaseWidth4, i.BaseDepth1, i.BaseDepth2, i.BaseDepth3, i.CentreOfGravityInY],\n 194851669: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallHeight, i.HeadWidth, i.Radius, i.HeadDepth2, i.HeadDepth3, i.WebThickness, i.BaseDepth1, i.BaseDepth2, i.CentreOfGravityInY],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 693772133: (i) => [i.Definition, i.Target],\n 606661476: (i) => [i.Item, i.Styles, i.Name],\n 4054601972: (i) => [i.Item, i.Styles, i.Name, i.AnnotatedCurve, i.Role],\n 32440307: (i) => [i.DirectionRatios],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 526551008: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.OperationType, i.ConstructionType, i.ParameterTakesPrecedence, i.Sizeable],\n 3073041342: (i) => [i.Contents],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 80994333: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.EnergySequence, i.UserDefinedEnergySequence],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 4203026998: (i) => [i.Symbol],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 3455213021: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PropertySource, i.FlowConditionTimeSeries, i.VelocityTimeSeries, i.FlowrateTimeSeries, i.Fluid, i.PressureTimeSeries, i.UserDefinedPropertySource, i.TemperatureSingleValue, i.WetBulbTemperatureSingleValue, i.WetBulbTemperatureTimeSeries, i.TemperatureTimeSeries, !i.FlowrateSingleValue ? null : Labelise(i.FlowrateSingleValue), i.FlowConditionSingleValue, i.VelocitySingleValue, i.PressureSingleValue],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope, i.CentreOfGravityInX, i.CentreOfGravityInY],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3388369263: (i) => [i.BasisCurve, i.Distance, i.SelfIntersect],\n 3505215534: (i) => [i.BasisCurve, i.Distance, i.SelfIntersect, i.RefDirection],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 4194566429: (i) => [i.Item, i.Styles, i.Name],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 3219374653: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.ProxyType, i.Tag],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, i.Usense, i.Vsense],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 3372526763: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 1327628568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingAppliedValue],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 2851387026: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingProfileProperties, i.ProfileSectionLocation, i.ProfileOrientation],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 3912681535: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralMember],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedSpace, i.RelatedCoverings],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 4189434867: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DailyInteraction, i.ImportanceRating, i.LocationOfInteraction, i.RelatedSpaceProgram, i.RelatingSpaceProgram],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2051452291: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 202636808: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition, i.OverridingProperties],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 1058617721: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 451544542: (i) => [i.Position, i.Radius],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness, i.SubsequentThickness, i.VaryingThicknessLocation],\n 4070609034: (i) => [i.Contents],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.CentreOfGravityInY],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 1950629157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3732776249: (i) => [i.Segments, i.SelfIntersect],\n 2510884976: (i) => [i.Position],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.SubmittedBy, i.PreparedBy, i.SubmittedOn, i.Status, i.TargetUsers, i.UpdateDate, i.ID, i.PredefinedType],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 681481545: (i) => [i.Contents],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 360485395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.EnergySequence, i.UserDefinedEnergySequence, i.ElectricCurrentType, i.InputVoltage, i.InputFrequency, i.FullLoadCurrent, i.MinimumCircuitCurrent, i.MaximumPowerInput, i.RatedPowerInput, i.InputPhase],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1962604670: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3272907226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 814719939: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 200128114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.InventoryType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.SkillSet],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2506943328: (i) => [i.Contents],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916936684: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority, i.MoveFrom, i.MoveTo, i.PunchList],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3425660407: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TaskId, i.Status, i.WorkMethod, i.IsMilestone, i.Priority, i.ActionID],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LifeCyclePhase],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PermitID],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ProcedureID, i.ProcedureType, i.UserDefinedProcedureType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ID, i.PredefinedType, i.Status],\n 3642467123: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Records, i.PredefinedType],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3248260540: (i) => [i.Contents],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2863920197: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl, i.TimeForTask],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3517283431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ActualStart, i.EarlyStart, i.LateStart, i.ScheduleStart, i.ActualFinish, i.EarlyFinish, i.LateFinish, i.ScheduleFinish, i.ScheduleDuration, i.ActualDuration, i.RemainingTime, i.FreeFloat, i.TotalFloat, i.IsCritical, i.StatusTime, i.StartFloat, i.FinishFloat, i.Completion],\n 4105383287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ServiceLifeType, i.ServiceLifeDuration],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.InteriorOrExteriorSpace, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 652456506: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.SpaceProgramIdentifier, i.MaxRequiredArea, i.MinRequiredArea, i.RequestedLocation, i.StandardRequiredArea],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue],\n 1721250024: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue, i.VaryingAppliedLoadLocation, i.SubsequentAppliedLoads],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue],\n 3987759626: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy, i.ProjectedOrTrue, i.VaryingAppliedLoadLocation, i.SubsequentAppliedLoads],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad, i.CausedBy],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, i.IsLinear],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.SubContractor, i.JobDescription],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1637806684: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ApplicableDates, i.TimeSeriesScheduleType, i.TimeSeries],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OperationType, i.CapacityByWeight, i.CapacityByNumber],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, i.SenseAgreement, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identifier, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.WorkControlType, i.UserDefinedControlType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1213861670: (i) => [i.Segments, i.SelfIntersect],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.RequestID],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2470393545: (i) => [i.Contents],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.AssetID, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916977116: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3299480353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 52481810: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.CompositionType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188551683: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1163958913: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Criterion, i.CriterionDateTime],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity, i.Suppliers, i.UsageRatio],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ResourceIdentifier, i.ResourceGroup, i.ResourceConsumption, i.BaseQuantity],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4147604152: (i) => [i.Contents],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 855621170: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1365060375: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634875225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 857184966: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3055160366: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, i.ClosedCurve, i.SelfIntersect, i.WeightsData],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 1376911519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength, i.Radius],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ShapeType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRiser, i.NumberOfTreads, i.RiserHeight, i.TreadLength],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2454782716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.FeatureLength, i.Width, i.Height],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.ControlElementId],\n 3700593921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.DistributionPointFunction, i.UserDefinedFunction],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarRole, i.BarSurface]\n};\nTypeInitialisers[1] = {\n 3699917729: (v) => new IFC2X3.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC2X3.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC2X3.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC2X3.IfcAngularVelocityMeasure(v),\n 2650437152: (v) => new IFC2X3.IfcAreaMeasure(v),\n 2735952531: (v) => new IFC2X3.IfcBoolean(v),\n 1867003952: (v) => new IFC2X3.IfcBoxAlignment(v),\n 2991860651: (v) => new IFC2X3.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC2X3.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC2X3.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC2X3.IfcCountMeasure(v),\n 94842927: (v) => new IFC2X3.IfcCurvatureMeasure(v),\n 86635668: (v) => new IFC2X3.IfcDayInMonthNumber(v),\n 300323983: (v) => new IFC2X3.IfcDaylightSavingHour(v),\n 1514641115: (v) => new IFC2X3.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC2X3.IfcDimensionCount(v),\n 524656162: (v) => new IFC2X3.IfcDoseEquivalentMeasure(v),\n 69416015: (v) => new IFC2X3.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC2X3.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC2X3.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC2X3.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC2X3.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC2X3.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC2X3.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC2X3.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC2X3.IfcFontStyle(v),\n 2715512545: (v) => new IFC2X3.IfcFontVariant(v),\n 2590844177: (v) => new IFC2X3.IfcFontWeight(v),\n 1361398929: (v) => new IFC2X3.IfcForceMeasure(v),\n 3044325142: (v) => new IFC2X3.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC2X3.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC2X3.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC2X3.IfcHeatingValueMeasure(v),\n 2589826445: (v) => new IFC2X3.IfcHourInDay(v),\n 983778844: (v) => new IFC2X3.IfcIdentifier(v),\n 3358199106: (v) => new IFC2X3.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC2X3.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC2X3.IfcInteger(v),\n 3809634241: (v) => new IFC2X3.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC2X3.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC2X3.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC2X3.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC2X3.IfcLabel(v),\n 1243674935: (v) => new IFC2X3.IfcLengthMeasure(v),\n 191860431: (v) => new IFC2X3.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC2X3.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC2X3.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC2X3.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC2X3.IfcLogical(v),\n 2095003142: (v) => new IFC2X3.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC2X3.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC2X3.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC2X3.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC2X3.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC2X3.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC2X3.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC2X3.IfcMassMeasure(v),\n 3531705166: (v) => new IFC2X3.IfcMassPerLengthMeasure(v),\n 102610177: (v) => new IFC2X3.IfcMinuteInHour(v),\n 3341486342: (v) => new IFC2X3.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC2X3.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC2X3.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC2X3.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC2X3.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC2X3.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC2X3.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC2X3.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC2X3.IfcMonthInYearNumber(v),\n 2095195183: (v) => new IFC2X3.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC2X3.IfcNumericMeasure(v),\n 929793134: (v) => new IFC2X3.IfcPHMeasure(v),\n 2260317790: (v) => new IFC2X3.IfcParameterValue(v),\n 2642773653: (v) => new IFC2X3.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC2X3.IfcPlaneAngleMeasure(v),\n 2815919920: (v) => new IFC2X3.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC2X3.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC2X3.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC2X3.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC2X3.IfcPresentableText(v),\n 3665567075: (v) => new IFC2X3.IfcPressureMeasure(v),\n 3972513137: (v) => new IFC2X3.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC2X3.IfcRatioMeasure(v),\n 200335297: (v) => new IFC2X3.IfcReal(v),\n 2133746277: (v) => new IFC2X3.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC2X3.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC2X3.IfcRotationalStiffnessMeasure(v),\n 2766185779: (v) => new IFC2X3.IfcSecondInMinute(v),\n 3467162246: (v) => new IFC2X3.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC2X3.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC2X3.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC2X3.IfcSolidAngleMeasure(v),\n 846465480: (v) => new IFC2X3.IfcSoundPowerMeasure(v),\n 993287707: (v) => new IFC2X3.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC2X3.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC2X3.IfcSpecularExponent(v),\n 361837227: (v) => new IFC2X3.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC2X3.IfcTemperatureGradientMeasure(v),\n 2801250643: (v) => new IFC2X3.IfcText(v),\n 1460886941: (v) => new IFC2X3.IfcTextAlignment(v),\n 3490877962: (v) => new IFC2X3.IfcTextDecoration(v),\n 603696268: (v) => new IFC2X3.IfcTextFontName(v),\n 296282323: (v) => new IFC2X3.IfcTextTransformation(v),\n 232962298: (v) => new IFC2X3.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC2X3.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC2X3.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC2X3.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC2X3.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC2X3.IfcThermodynamicTemperatureMeasure(v),\n 2726807636: (v) => new IFC2X3.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC2X3.IfcTimeStamp(v),\n 1278329552: (v) => new IFC2X3.IfcTorqueMeasure(v),\n 3345633955: (v) => new IFC2X3.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC2X3.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC2X3.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC2X3.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC2X3.IfcWarpingMomentMeasure(v),\n 4065007721: (v) => new IFC2X3.IfcYearNumber(v)\n};\nvar IFC2X3;\n(function(IFC2X32) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC2X32.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC2X32.IfcBoxAlignment = IfcBoxAlignment;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC2X32.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC2X32.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDaylightSavingHour {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYLIGHTSAVINGHOUR\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDaylightSavingHour = IfcDaylightSavingHour;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC2X32.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC2X32.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC2X32.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC2X32.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC2X32.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcHourInDay {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCHOURINDAY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcHourInDay = IfcHourInDay;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC2X32.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC2X32.IfcLabel = IfcLabel;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC2X32.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcMinuteInHour {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMINUTEINHOUR\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMinuteInHour = IfcMinuteInHour;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC2X32.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcPressureMeasure = IfcPressureMeasure;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSecondInMinute {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECONDINMINUTE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSecondInMinute = IfcSecondInMinute;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC2X32.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC2X32.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC2X32.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC2X32.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC2X32.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC2X32.IfcYearNumber = IfcYearNumber;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAheadOrBehind {\n }\n IfcAheadOrBehind.AHEAD = { type: 3, value: \"AHEAD\" };\n IfcAheadOrBehind.BEHIND = { type: 3, value: \"BEHIND\" };\n IFC2X32.IfcAheadOrBehind = IfcAheadOrBehind;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.EYEBALL = { type: 3, value: \"EYEBALL\" };\n IfcAirTerminalTypeEnum.IRIS = { type: 3, value: \"IRIS\" };\n IfcAirTerminalTypeEnum.LINEARGRILLE = { type: 3, value: \"LINEARGRILLE\" };\n IfcAirTerminalTypeEnum.LINEARDIFFUSER = { type: 3, value: \"LINEARDIFFUSER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC2X32.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC2X32.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IFC2X32.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IFC2X32.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.REDUCER = { type: 3, value: \"REDUCER\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.MODIFIEDADDED = { type: 3, value: \"MODIFIEDADDED\" };\n IfcChangeActionEnum.MODIFIEDDELETED = { type: 3, value: \"MODIFIEDDELETED\" };\n IFC2X32.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcConstraintEnum = IfcConstraintEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.PROPORTIONALINTEGRAL = { type: 3, value: \"PROPORTIONALINTEGRAL\" };\n IfcControllerTypeEnum.PROPORTIONALINTEGRALDERIVATIVE = { type: 3, value: \"PROPORTIONALINTEGRALDERIVATIVE\" };\n IfcControllerTypeEnum.TIMEDTWOPOSITION = { type: 3, value: \"TIMEDTWOPOSITION\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCurrencyEnum {\n }\n IfcCurrencyEnum.AED = { type: 3, value: \"AED\" };\n IfcCurrencyEnum.AES = { type: 3, value: \"AES\" };\n IfcCurrencyEnum.ATS = { type: 3, value: \"ATS\" };\n IfcCurrencyEnum.AUD = { type: 3, value: \"AUD\" };\n IfcCurrencyEnum.BBD = { type: 3, value: \"BBD\" };\n IfcCurrencyEnum.BEG = { type: 3, value: \"BEG\" };\n IfcCurrencyEnum.BGL = { type: 3, value: \"BGL\" };\n IfcCurrencyEnum.BHD = { type: 3, value: \"BHD\" };\n IfcCurrencyEnum.BMD = { type: 3, value: \"BMD\" };\n IfcCurrencyEnum.BND = { type: 3, value: \"BND\" };\n IfcCurrencyEnum.BRL = { type: 3, value: \"BRL\" };\n IfcCurrencyEnum.BSD = { type: 3, value: \"BSD\" };\n IfcCurrencyEnum.BWP = { type: 3, value: \"BWP\" };\n IfcCurrencyEnum.BZD = { type: 3, value: \"BZD\" };\n IfcCurrencyEnum.CAD = { type: 3, value: \"CAD\" };\n IfcCurrencyEnum.CBD = { type: 3, value: \"CBD\" };\n IfcCurrencyEnum.CHF = { type: 3, value: \"CHF\" };\n IfcCurrencyEnum.CLP = { type: 3, value: \"CLP\" };\n IfcCurrencyEnum.CNY = { type: 3, value: \"CNY\" };\n IfcCurrencyEnum.CYS = { type: 3, value: \"CYS\" };\n IfcCurrencyEnum.CZK = { type: 3, value: \"CZK\" };\n IfcCurrencyEnum.DDP = { type: 3, value: \"DDP\" };\n IfcCurrencyEnum.DEM = { type: 3, value: \"DEM\" };\n IfcCurrencyEnum.DKK = { type: 3, value: \"DKK\" };\n IfcCurrencyEnum.EGL = { type: 3, value: \"EGL\" };\n IfcCurrencyEnum.EST = { type: 3, value: \"EST\" };\n IfcCurrencyEnum.EUR = { type: 3, value: \"EUR\" };\n IfcCurrencyEnum.FAK = { type: 3, value: \"FAK\" };\n IfcCurrencyEnum.FIM = { type: 3, value: \"FIM\" };\n IfcCurrencyEnum.FJD = { type: 3, value: \"FJD\" };\n IfcCurrencyEnum.FKP = { type: 3, value: \"FKP\" };\n IfcCurrencyEnum.FRF = { type: 3, value: \"FRF\" };\n IfcCurrencyEnum.GBP = { type: 3, value: \"GBP\" };\n IfcCurrencyEnum.GIP = { type: 3, value: \"GIP\" };\n IfcCurrencyEnum.GMD = { type: 3, value: \"GMD\" };\n IfcCurrencyEnum.GRX = { type: 3, value: \"GRX\" };\n IfcCurrencyEnum.HKD = { type: 3, value: \"HKD\" };\n IfcCurrencyEnum.HUF = { type: 3, value: \"HUF\" };\n IfcCurrencyEnum.ICK = { type: 3, value: \"ICK\" };\n IfcCurrencyEnum.IDR = { type: 3, value: \"IDR\" };\n IfcCurrencyEnum.ILS = { type: 3, value: \"ILS\" };\n IfcCurrencyEnum.INR = { type: 3, value: \"INR\" };\n IfcCurrencyEnum.IRP = { type: 3, value: \"IRP\" };\n IfcCurrencyEnum.ITL = { type: 3, value: \"ITL\" };\n IfcCurrencyEnum.JMD = { type: 3, value: \"JMD\" };\n IfcCurrencyEnum.JOD = { type: 3, value: \"JOD\" };\n IfcCurrencyEnum.JPY = { type: 3, value: \"JPY\" };\n IfcCurrencyEnum.KES = { type: 3, value: \"KES\" };\n IfcCurrencyEnum.KRW = { type: 3, value: \"KRW\" };\n IfcCurrencyEnum.KWD = { type: 3, value: \"KWD\" };\n IfcCurrencyEnum.KYD = { type: 3, value: \"KYD\" };\n IfcCurrencyEnum.LKR = { type: 3, value: \"LKR\" };\n IfcCurrencyEnum.LUF = { type: 3, value: \"LUF\" };\n IfcCurrencyEnum.MTL = { type: 3, value: \"MTL\" };\n IfcCurrencyEnum.MUR = { type: 3, value: \"MUR\" };\n IfcCurrencyEnum.MXN = { type: 3, value: \"MXN\" };\n IfcCurrencyEnum.MYR = { type: 3, value: \"MYR\" };\n IfcCurrencyEnum.NLG = { type: 3, value: \"NLG\" };\n IfcCurrencyEnum.NZD = { type: 3, value: \"NZD\" };\n IfcCurrencyEnum.OMR = { type: 3, value: \"OMR\" };\n IfcCurrencyEnum.PGK = { type: 3, value: \"PGK\" };\n IfcCurrencyEnum.PHP = { type: 3, value: \"PHP\" };\n IfcCurrencyEnum.PKR = { type: 3, value: \"PKR\" };\n IfcCurrencyEnum.PLN = { type: 3, value: \"PLN\" };\n IfcCurrencyEnum.PTN = { type: 3, value: \"PTN\" };\n IfcCurrencyEnum.QAR = { type: 3, value: \"QAR\" };\n IfcCurrencyEnum.RUR = { type: 3, value: \"RUR\" };\n IfcCurrencyEnum.SAR = { type: 3, value: \"SAR\" };\n IfcCurrencyEnum.SCR = { type: 3, value: \"SCR\" };\n IfcCurrencyEnum.SEK = { type: 3, value: \"SEK\" };\n IfcCurrencyEnum.SGD = { type: 3, value: \"SGD\" };\n IfcCurrencyEnum.SKP = { type: 3, value: \"SKP\" };\n IfcCurrencyEnum.THB = { type: 3, value: \"THB\" };\n IfcCurrencyEnum.TRL = { type: 3, value: \"TRL\" };\n IfcCurrencyEnum.TTD = { type: 3, value: \"TTD\" };\n IfcCurrencyEnum.TWD = { type: 3, value: \"TWD\" };\n IfcCurrencyEnum.USD = { type: 3, value: \"USD\" };\n IfcCurrencyEnum.VEB = { type: 3, value: \"VEB\" };\n IfcCurrencyEnum.VND = { type: 3, value: \"VND\" };\n IfcCurrencyEnum.XEU = { type: 3, value: \"XEU\" };\n IfcCurrencyEnum.ZAR = { type: 3, value: \"ZAR\" };\n IfcCurrencyEnum.ZWD = { type: 3, value: \"ZWD\" };\n IfcCurrencyEnum.NOK = { type: 3, value: \"NOK\" };\n IFC2X32.IfcCurrencyEnum = IfcCurrencyEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDimensionExtentUsage {\n }\n IfcDimensionExtentUsage.ORIGIN = { type: 3, value: \"ORIGIN\" };\n IfcDimensionExtentUsage.TARGET = { type: 3, value: \"TARGET\" };\n IFC2X32.IfcDimensionExtentUsage = IfcDimensionExtentUsage;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IFC2X32.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcElectricApplianceTypeEnum.DIRECTWATERHEATER = { type: 3, value: \"DIRECTWATERHEATER\" };\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.ELECTRICHEATER = { type: 3, value: \"ELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FACSIMILE = { type: 3, value: \"FACSIMILE\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.INDIRECTWATERHEATER = { type: 3, value: \"INDIRECTWATERHEATER\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.RADIANTHEATER = { type: 3, value: \"RADIANTHEATER\" };\n IfcElectricApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcElectricApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.TV = { type: 3, value: \"TV\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WATERHEATER = { type: 3, value: \"WATERHEATER\" };\n IfcElectricApplianceTypeEnum.WATERCOOLER = { type: 3, value: \"WATERCOOLER\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricCurrentEnum {\n }\n IfcElectricCurrentEnum.ALTERNATING = { type: 3, value: \"ALTERNATING\" };\n IfcElectricCurrentEnum.DIRECT = { type: 3, value: \"DIRECT\" };\n IfcElectricCurrentEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricCurrentEnum = IfcElectricCurrentEnum;\n class IfcElectricDistributionPointFunctionEnum {\n }\n IfcElectricDistributionPointFunctionEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcElectricDistributionPointFunctionEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionPointFunctionEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcElectricDistributionPointFunctionEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionPointFunctionEnum.GASDETECTORPANEL = { type: 3, value: \"GASDETECTORPANEL\" };\n IfcElectricDistributionPointFunctionEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcElectricDistributionPointFunctionEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcElectricDistributionPointFunctionEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionPointFunctionEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionPointFunctionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionPointFunctionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricDistributionPointFunctionEnum = IfcElectricDistributionPointFunctionEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricHeaterTypeEnum {\n }\n IfcElectricHeaterTypeEnum.ELECTRICPOINTHEATER = { type: 3, value: \"ELECTRICPOINTHEATER\" };\n IfcElectricHeaterTypeEnum.ELECTRICCABLEHEATER = { type: 3, value: \"ELECTRICCABLEHEATER\" };\n IfcElectricHeaterTypeEnum.ELECTRICMATHEATER = { type: 3, value: \"ELECTRICMATHEATER\" };\n IfcElectricHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricHeaterTypeEnum = IfcElectricHeaterTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC2X32.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEnergySequenceEnum {\n }\n IfcEnergySequenceEnum.PRIMARY = { type: 3, value: \"PRIMARY\" };\n IfcEnergySequenceEnum.SECONDARY = { type: 3, value: \"SECONDARY\" };\n IfcEnergySequenceEnum.TERTIARY = { type: 3, value: \"TERTIARY\" };\n IfcEnergySequenceEnum.AUXILIARY = { type: 3, value: \"AUXILIARY\" };\n IfcEnergySequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEnergySequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEnergySequenceEnum = IfcEnergySequenceEnum;\n class IfcEnvironmentalImpactCategoryEnum {\n }\n IfcEnvironmentalImpactCategoryEnum.COMBINEDVALUE = { type: 3, value: \"COMBINEDVALUE\" };\n IfcEnvironmentalImpactCategoryEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcEnvironmentalImpactCategoryEnum.EXTRACTION = { type: 3, value: \"EXTRACTION\" };\n IfcEnvironmentalImpactCategoryEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcEnvironmentalImpactCategoryEnum.MANUFACTURE = { type: 3, value: \"MANUFACTURE\" };\n IfcEnvironmentalImpactCategoryEnum.TRANSPORTATION = { type: 3, value: \"TRANSPORTATION\" };\n IfcEnvironmentalImpactCategoryEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEnvironmentalImpactCategoryEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEnvironmentalImpactCategoryEnum = IfcEnvironmentalImpactCategoryEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ELECTRICMETER = { type: 3, value: \"ELECTRICMETER\" };\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.FLOWMETER = { type: 3, value: \"FLOWMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcGasTerminalTypeEnum {\n }\n IfcGasTerminalTypeEnum.GASAPPLIANCE = { type: 3, value: \"GASAPPLIANCE\" };\n IfcGasTerminalTypeEnum.GASBOOSTER = { type: 3, value: \"GASBOOSTER\" };\n IfcGasTerminalTypeEnum.GASBURNER = { type: 3, value: \"GASBURNER\" };\n IfcGasTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGasTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcGasTerminalTypeEnum = IfcGasTerminalTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC2X32.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC2X32.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION_GROUP = { type: 3, value: \"LOAD_COMBINATION_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IFC2X32.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNullStyle {\n }\n IfcNullStyle.NULL = { type: 3, value: \"NULL\" };\n IFC2X32.IfcNullStyle = IfcNullStyle;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IFC2X32.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderRecordTypeEnum {\n }\n IfcProjectOrderRecordTypeEnum.CHANGE = { type: 3, value: \"CHANGE\" };\n IfcProjectOrderRecordTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcProjectOrderRecordTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcProjectOrderRecordTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcProjectOrderRecordTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcProjectOrderRecordTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderRecordTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProjectOrderRecordTypeEnum = IfcProjectOrderRecordTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC2X32.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcPropertySourceEnum {\n }\n IfcPropertySourceEnum.DESIGN = { type: 3, value: \"DESIGN\" };\n IfcPropertySourceEnum.DESIGNMAXIMUM = { type: 3, value: \"DESIGNMAXIMUM\" };\n IfcPropertySourceEnum.DESIGNMINIMUM = { type: 3, value: \"DESIGNMINIMUM\" };\n IfcPropertySourceEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcPropertySourceEnum.ASBUILT = { type: 3, value: \"ASBUILT\" };\n IfcPropertySourceEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcPropertySourceEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcPropertySourceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPropertySourceEnum.NOTKNOWN = { type: 3, value: \"NOTKNOWN\" };\n IFC2X32.IfcPropertySourceEnum = IfcPropertySourceEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHFAILUREDEVICE = { type: 3, value: \"EARTHFAILUREDEVICE\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC2X32.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcResourceConsumptionEnum {\n }\n IfcResourceConsumptionEnum.CONSUMED = { type: 3, value: \"CONSUMED\" };\n IfcResourceConsumptionEnum.PARTIALLYCONSUMED = { type: 3, value: \"PARTIALLYCONSUMED\" };\n IfcResourceConsumptionEnum.NOTCONSUMED = { type: 3, value: \"NOTCONSUMED\" };\n IfcResourceConsumptionEnum.OCCUPIED = { type: 3, value: \"OCCUPIED\" };\n IfcResourceConsumptionEnum.PARTIALLYOCCUPIED = { type: 3, value: \"PARTIALLYOCCUPIED\" };\n IfcResourceConsumptionEnum.NOTOCCUPIED = { type: 3, value: \"NOTOCCUPIED\" };\n IfcResourceConsumptionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcResourceConsumptionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcResourceConsumptionEnum = IfcResourceConsumptionEnum;\n class IfcRibPlateDirectionEnum {\n }\n IfcRibPlateDirectionEnum.DIRECTION_X = { type: 3, value: \"DIRECTION_X\" };\n IfcRibPlateDirectionEnum.DIRECTION_Y = { type: 3, value: \"DIRECTION_Y\" };\n IFC2X32.IfcRibPlateDirectionEnum = IfcRibPlateDirectionEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.COMISSIONINGENGINEER = { type: 3, value: \"COMISSIONINGENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IFC2X32.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC2X32.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IFC2X32.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSequenceEnum = IfcSequenceEnum;\n class IfcServiceLifeFactorTypeEnum {\n }\n IfcServiceLifeFactorTypeEnum.A_QUALITYOFCOMPONENTS = { type: 3, value: \"A_QUALITYOFCOMPONENTS\" };\n IfcServiceLifeFactorTypeEnum.B_DESIGNLEVEL = { type: 3, value: \"B_DESIGNLEVEL\" };\n IfcServiceLifeFactorTypeEnum.C_WORKEXECUTIONLEVEL = { type: 3, value: \"C_WORKEXECUTIONLEVEL\" };\n IfcServiceLifeFactorTypeEnum.D_INDOORENVIRONMENT = { type: 3, value: \"D_INDOORENVIRONMENT\" };\n IfcServiceLifeFactorTypeEnum.E_OUTDOORENVIRONMENT = { type: 3, value: \"E_OUTDOORENVIRONMENT\" };\n IfcServiceLifeFactorTypeEnum.F_INUSECONDITIONS = { type: 3, value: \"F_INUSECONDITIONS\" };\n IfcServiceLifeFactorTypeEnum.G_MAINTENANCELEVEL = { type: 3, value: \"G_MAINTENANCELEVEL\" };\n IfcServiceLifeFactorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcServiceLifeFactorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcServiceLifeFactorTypeEnum = IfcServiceLifeFactorTypeEnum;\n class IfcServiceLifeTypeEnum {\n }\n IfcServiceLifeTypeEnum.ACTUALSERVICELIFE = { type: 3, value: \"ACTUALSERVICELIFE\" };\n IfcServiceLifeTypeEnum.EXPECTEDSERVICELIFE = { type: 3, value: \"EXPECTEDSERVICELIFE\" };\n IfcServiceLifeTypeEnum.OPTIMISTICREFERENCESERVICELIFE = { type: 3, value: \"OPTIMISTICREFERENCESERVICELIFE\" };\n IfcServiceLifeTypeEnum.PESSIMISTICREFERENCESERVICELIFE = { type: 3, value: \"PESSIMISTICREFERENCESERVICELIFE\" };\n IfcServiceLifeTypeEnum.REFERENCESERVICELIFE = { type: 3, value: \"REFERENCESERVICELIFE\" };\n IFC2X32.IfcServiceLifeTypeEnum = IfcServiceLifeTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSoundScaleEnum {\n }\n IfcSoundScaleEnum.DBA = { type: 3, value: \"DBA\" };\n IfcSoundScaleEnum.DBB = { type: 3, value: \"DBB\" };\n IfcSoundScaleEnum.DBC = { type: 3, value: \"DBC\" };\n IfcSoundScaleEnum.NC = { type: 3, value: \"NC\" };\n IfcSoundScaleEnum.NR = { type: 3, value: \"NR\" };\n IfcSoundScaleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSoundScaleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSoundScaleEnum = IfcSoundScaleEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.SECTIONALRADIATOR = { type: 3, value: \"SECTIONALRADIATOR\" };\n IfcSpaceHeaterTypeEnum.PANELRADIATOR = { type: 3, value: \"PANELRADIATOR\" };\n IfcSpaceHeaterTypeEnum.TUBULARRADIATOR = { type: 3, value: \"TUBULARRADIATOR\" };\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.BASEBOARDHEATER = { type: 3, value: \"BASEBOARDHEATER\" };\n IfcSpaceHeaterTypeEnum.FINNEDTUBEUNIT = { type: 3, value: \"FINNEDTUBEUNIT\" };\n IfcSpaceHeaterTypeEnum.UNITHEATER = { type: 3, value: \"UNITHEATER\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IFC2X32.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveTypeEnum {\n }\n IfcStructuralCurveTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStructuralCurveTypeEnum = IfcStructuralCurveTypeEnum;\n class IfcStructuralSurfaceTypeEnum {\n }\n IfcStructuralSurfaceTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcStructuralSurfaceTypeEnum = IfcStructuralSurfaceTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IFC2X32.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSurfaceTextureEnum {\n }\n IfcSurfaceTextureEnum.BUMP = { type: 3, value: \"BUMP\" };\n IfcSurfaceTextureEnum.OPACITY = { type: 3, value: \"OPACITY\" };\n IfcSurfaceTextureEnum.REFLECTION = { type: 3, value: \"REFLECTION\" };\n IfcSurfaceTextureEnum.SELFILLUMINATION = { type: 3, value: \"SELFILLUMINATION\" };\n IfcSurfaceTextureEnum.SHININESS = { type: 3, value: \"SHININESS\" };\n IfcSurfaceTextureEnum.SPECULAR = { type: 3, value: \"SPECULAR\" };\n IfcSurfaceTextureEnum.TEXTURE = { type: 3, value: \"TEXTURE\" };\n IfcSurfaceTextureEnum.TRANSPARENCYMAP = { type: 3, value: \"TRANSPARENCYMAP\" };\n IfcSurfaceTextureEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSurfaceTextureEnum = IfcSurfaceTextureEnum;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.PREFORMED = { type: 3, value: \"PREFORMED\" };\n IfcTankTypeEnum.SECTIONAL = { type: 3, value: \"SECTIONAL\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IFC2X32.IfcTextPath = IfcTextPath;\n class IfcThermalLoadSourceEnum {\n }\n IfcThermalLoadSourceEnum.PEOPLE = { type: 3, value: \"PEOPLE\" };\n IfcThermalLoadSourceEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcThermalLoadSourceEnum.EQUIPMENT = { type: 3, value: \"EQUIPMENT\" };\n IfcThermalLoadSourceEnum.VENTILATIONINDOORAIR = { type: 3, value: \"VENTILATIONINDOORAIR\" };\n IfcThermalLoadSourceEnum.VENTILATIONOUTSIDEAIR = { type: 3, value: \"VENTILATIONOUTSIDEAIR\" };\n IfcThermalLoadSourceEnum.RECIRCULATEDAIR = { type: 3, value: \"RECIRCULATEDAIR\" };\n IfcThermalLoadSourceEnum.EXHAUSTAIR = { type: 3, value: \"EXHAUSTAIR\" };\n IfcThermalLoadSourceEnum.AIREXCHANGERATE = { type: 3, value: \"AIREXCHANGERATE\" };\n IfcThermalLoadSourceEnum.DRYBULBTEMPERATURE = { type: 3, value: \"DRYBULBTEMPERATURE\" };\n IfcThermalLoadSourceEnum.RELATIVEHUMIDITY = { type: 3, value: \"RELATIVEHUMIDITY\" };\n IfcThermalLoadSourceEnum.INFILTRATION = { type: 3, value: \"INFILTRATION\" };\n IfcThermalLoadSourceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcThermalLoadSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcThermalLoadSourceEnum = IfcThermalLoadSourceEnum;\n class IfcThermalLoadTypeEnum {\n }\n IfcThermalLoadTypeEnum.SENSIBLE = { type: 3, value: \"SENSIBLE\" };\n IfcThermalLoadTypeEnum.LATENT = { type: 3, value: \"LATENT\" };\n IfcThermalLoadTypeEnum.RADIANT = { type: 3, value: \"RADIANT\" };\n IfcThermalLoadTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcThermalLoadTypeEnum = IfcThermalLoadTypeEnum;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTimeSeriesScheduleTypeEnum {\n }\n IfcTimeSeriesScheduleTypeEnum.ANNUAL = { type: 3, value: \"ANNUAL\" };\n IfcTimeSeriesScheduleTypeEnum.MONTHLY = { type: 3, value: \"MONTHLY\" };\n IfcTimeSeriesScheduleTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcTimeSeriesScheduleTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcTimeSeriesScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTimeSeriesScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTimeSeriesScheduleTypeEnum = IfcTimeSeriesScheduleTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IFC2X32.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC2X32.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC2X32.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.GREASEINTERCEPTOR = { type: 3, value: \"GREASEINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.OILINTERCEPTOR = { type: 3, value: \"OILINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.PETROLINTERCEPTOR = { type: 3, value: \"PETROLINTERCEPTOR\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWorkControlTypeEnum {\n }\n IfcWorkControlTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkControlTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkControlTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC2X32.IfcWorkControlTypeEnum = IfcWorkControlTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC2X32.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC2X32.IfcAddress = IfcAddress;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC2X32.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.type = 411424972;\n }\n }\n IFC2X32.IfcAppliedValue = IfcAppliedValue;\n class IfcAppliedValueRelationship extends IfcLineObject {\n constructor(ComponentOfTotal, Components, ArithmeticOperator, Name, Description) {\n super();\n this.ComponentOfTotal = ComponentOfTotal;\n this.Components = Components;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Name = Name;\n this.Description = Description;\n this.type = 1110488051;\n }\n }\n IFC2X32.IfcAppliedValueRelationship = IfcAppliedValueRelationship;\n class IfcApproval extends IfcLineObject {\n constructor(Description, ApprovalDateTime, ApprovalStatus, ApprovalLevel, ApprovalQualifier, Name, Identifier) {\n super();\n this.Description = Description;\n this.ApprovalDateTime = ApprovalDateTime;\n this.ApprovalStatus = ApprovalStatus;\n this.ApprovalLevel = ApprovalLevel;\n this.ApprovalQualifier = ApprovalQualifier;\n this.Name = Name;\n this.Identifier = Identifier;\n this.type = 130549933;\n }\n }\n IFC2X32.IfcApproval = IfcApproval;\n class IfcApprovalActorRelationship extends IfcLineObject {\n constructor(Actor, Approval, Role) {\n super();\n this.Actor = Actor;\n this.Approval = Approval;\n this.Role = Role;\n this.type = 2080292479;\n }\n }\n IFC2X32.IfcApprovalActorRelationship = IfcApprovalActorRelationship;\n class IfcApprovalPropertyRelationship extends IfcLineObject {\n constructor(ApprovedProperties, Approval) {\n super();\n this.ApprovedProperties = ApprovedProperties;\n this.Approval = Approval;\n this.type = 390851274;\n }\n }\n IFC2X32.IfcApprovalPropertyRelationship = IfcApprovalPropertyRelationship;\n class IfcApprovalRelationship extends IfcLineObject {\n constructor(RelatedApproval, RelatingApproval, Description, Name) {\n super();\n this.RelatedApproval = RelatedApproval;\n this.RelatingApproval = RelatingApproval;\n this.Description = Description;\n this.Name = Name;\n this.type = 3869604511;\n }\n }\n IFC2X32.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC2X32.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessByLengthX, LinearStiffnessByLengthY, LinearStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessByLengthX = LinearStiffnessByLengthX;\n this.LinearStiffnessByLengthY = LinearStiffnessByLengthY;\n this.LinearStiffnessByLengthZ = LinearStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC2X32.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessByAreaX, LinearStiffnessByAreaY, LinearStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessByAreaX = LinearStiffnessByAreaX;\n this.LinearStiffnessByAreaY = LinearStiffnessByAreaY;\n this.LinearStiffnessByAreaZ = LinearStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC2X32.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.LinearStiffnessX = LinearStiffnessX;\n this.LinearStiffnessY = LinearStiffnessY;\n this.LinearStiffnessZ = LinearStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC2X32.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, LinearStiffnessX, LinearStiffnessY, LinearStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.LinearStiffnessX = LinearStiffnessX;\n this.LinearStiffnessY = LinearStiffnessY;\n this.LinearStiffnessZ = LinearStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC2X32.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcCalendarDate extends IfcLineObject {\n constructor(DayComponent, MonthComponent, YearComponent) {\n super();\n this.DayComponent = DayComponent;\n this.MonthComponent = MonthComponent;\n this.YearComponent = YearComponent;\n this.type = 622194075;\n }\n }\n IFC2X32.IfcCalendarDate = IfcCalendarDate;\n class IfcClassification extends IfcLineObject {\n constructor(Source, Edition, EditionDate, Name) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.type = 747523909;\n }\n }\n IFC2X32.IfcClassification = IfcClassification;\n class IfcClassificationItem extends IfcLineObject {\n constructor(Notation, ItemOf, Title) {\n super();\n this.Notation = Notation;\n this.ItemOf = ItemOf;\n this.Title = Title;\n this.type = 1767535486;\n }\n }\n IFC2X32.IfcClassificationItem = IfcClassificationItem;\n class IfcClassificationItemRelationship extends IfcLineObject {\n constructor(RelatingItem, RelatedItems) {\n super();\n this.RelatingItem = RelatingItem;\n this.RelatedItems = RelatedItems;\n this.type = 1098599126;\n }\n }\n IFC2X32.IfcClassificationItemRelationship = IfcClassificationItemRelationship;\n class IfcClassificationNotation extends IfcLineObject {\n constructor(NotationFacets) {\n super();\n this.NotationFacets = NotationFacets;\n this.type = 938368621;\n }\n }\n IFC2X32.IfcClassificationNotation = IfcClassificationNotation;\n class IfcClassificationNotationFacet extends IfcLineObject {\n constructor(NotationValue) {\n super();\n this.NotationValue = NotationValue;\n this.type = 3639012971;\n }\n }\n IFC2X32.IfcClassificationNotationFacet = IfcClassificationNotationFacet;\n class IfcColourSpecification extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC2X32.IfcColourSpecification = IfcColourSpecification;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC2X32.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC2X32.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionPortGeometry extends IfcConnectionGeometry {\n constructor(LocationAtRelatingElement, LocationAtRelatedElement, ProfileOfPort) {\n super();\n this.LocationAtRelatingElement = LocationAtRelatingElement;\n this.LocationAtRelatedElement = LocationAtRelatedElement;\n this.ProfileOfPort = ProfileOfPort;\n this.type = 4257277454;\n }\n }\n IFC2X32.IfcConnectionPortGeometry = IfcConnectionPortGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC2X32.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC2X32.IfcConstraint = IfcConstraint;\n class IfcConstraintAggregationRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingConstraint, RelatedConstraints, LogicalAggregator) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedConstraints = RelatedConstraints;\n this.LogicalAggregator = LogicalAggregator;\n this.type = 1658513725;\n }\n }\n IFC2X32.IfcConstraintAggregationRelationship = IfcConstraintAggregationRelationship;\n class IfcConstraintClassificationRelationship extends IfcLineObject {\n constructor(ClassifiedConstraint, RelatedClassifications) {\n super();\n this.ClassifiedConstraint = ClassifiedConstraint;\n this.RelatedClassifications = RelatedClassifications;\n this.type = 613356794;\n }\n }\n IFC2X32.IfcConstraintClassificationRelationship = IfcConstraintClassificationRelationship;\n class IfcConstraintRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingConstraint, RelatedConstraints) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedConstraints = RelatedConstraints;\n this.type = 347226245;\n }\n }\n IFC2X32.IfcConstraintRelationship = IfcConstraintRelationship;\n class IfcCoordinatedUniversalTimeOffset extends IfcLineObject {\n constructor(HourOffset, MinuteOffset, Sense) {\n super();\n this.HourOffset = HourOffset;\n this.MinuteOffset = MinuteOffset;\n this.Sense = Sense;\n this.type = 1065062679;\n }\n }\n IFC2X32.IfcCoordinatedUniversalTimeOffset = IfcCoordinatedUniversalTimeOffset;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, CostType, Condition) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.CostType = CostType;\n this.Condition = Condition;\n this.type = 602808272;\n }\n }\n IFC2X32.IfcCostValue = IfcCostValue;\n class IfcCurrencyRelationship extends IfcLineObject {\n constructor(RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super();\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC2X32.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyleFont extends IfcLineObject {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC2X32.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcLineObject {\n constructor(Name, CurveFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC2X32.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcLineObject {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC2X32.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDateAndTime extends IfcLineObject {\n constructor(DateComponent, TimeComponent) {\n super();\n this.DateComponent = DateComponent;\n this.TimeComponent = TimeComponent;\n this.type = 1072939445;\n }\n }\n IFC2X32.IfcDateAndTime = IfcDateAndTime;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.type = 1765591967;\n }\n }\n IFC2X32.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC2X32.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC2X32.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcDocumentElectronicFormat extends IfcLineObject {\n constructor(FileExtension, MimeContentType, MimeSubtype) {\n super();\n this.FileExtension = FileExtension;\n this.MimeContentType = MimeContentType;\n this.MimeSubtype = MimeSubtype;\n this.type = 1376555844;\n }\n }\n IFC2X32.IfcDocumentElectronicFormat = IfcDocumentElectronicFormat;\n class IfcDocumentInformation extends IfcLineObject {\n constructor(DocumentId, Name, Description, DocumentReferences, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.DocumentId = DocumentId;\n this.Name = Name;\n this.Description = Description;\n this.DocumentReferences = DocumentReferences;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC2X32.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcLineObject {\n constructor(RelatingDocument, RelatedDocuments, RelationshipType) {\n super();\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC2X32.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDraughtingCalloutRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 3796139169;\n }\n }\n IFC2X32.IfcDraughtingCalloutRelationship = IfcDraughtingCalloutRelationship;\n class IfcEnvironmentalImpactValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, ImpactType, Category, UserDefinedCategory) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.ImpactType = ImpactType;\n this.Category = Category;\n this.UserDefinedCategory = UserDefinedCategory;\n this.type = 1648886627;\n }\n }\n IFC2X32.IfcEnvironmentalImpactValue = IfcEnvironmentalImpactValue;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, ItemReference, Name) {\n super();\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC2X32.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC2X32.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC2X32.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedSymbol extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3207319532;\n }\n }\n IFC2X32.IfcExternallyDefinedSymbol = IfcExternallyDefinedSymbol;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC2X32.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC2X32.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC2X32.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcLineObject {\n constructor(Name, Version, Publisher, VersionDate, LibraryReference) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.LibraryReference = LibraryReference;\n this.type = 2655187982;\n }\n }\n IFC2X32.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3452421091;\n }\n }\n IFC2X32.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC2X32.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC2X32.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcLocalTime extends IfcLineObject {\n constructor(HourComponent, MinuteComponent, SecondComponent, Zone, DaylightSavingOffset) {\n super();\n this.HourComponent = HourComponent;\n this.MinuteComponent = MinuteComponent;\n this.SecondComponent = SecondComponent;\n this.Zone = Zone;\n this.DaylightSavingOffset = DaylightSavingOffset;\n this.type = 30780891;\n }\n }\n IFC2X32.IfcLocalTime = IfcLocalTime;\n class IfcMaterial extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 1838606355;\n }\n }\n IFC2X32.IfcMaterial = IfcMaterial;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC2X32.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialLayer extends IfcLineObject {\n constructor(Material, LayerThickness, IsVentilated) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.type = 248100487;\n }\n }\n IFC2X32.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcLineObject {\n constructor(MaterialLayers, LayerSetName) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.type = 3303938423;\n }\n }\n IFC2X32.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerSetUsage extends IfcLineObject {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.type = 1303795690;\n }\n }\n IFC2X32.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC2X32.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProperties extends IfcLineObject {\n constructor(Material) {\n super();\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC2X32.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC2X32.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMechanicalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient) {\n super(Material);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.type = 4256014907;\n }\n }\n IFC2X32.IfcMechanicalMaterialProperties = IfcMechanicalMaterialProperties;\n class IfcMechanicalSteelMaterialProperties extends IfcMechanicalMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient, YieldStress, UltimateStress, UltimateStrain, HardeningModule, ProportionalStress, PlasticStrain, Relaxations) {\n super(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.YieldStress = YieldStress;\n this.UltimateStress = UltimateStress;\n this.UltimateStrain = UltimateStrain;\n this.HardeningModule = HardeningModule;\n this.ProportionalStress = ProportionalStress;\n this.PlasticStrain = PlasticStrain;\n this.Relaxations = Relaxations;\n this.type = 677618848;\n }\n }\n IFC2X32.IfcMechanicalSteelMaterialProperties = IfcMechanicalSteelMaterialProperties;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.type = 3368373690;\n }\n }\n IFC2X32.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC2X32.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC2X32.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor() {\n super();\n this.type = 3701648758;\n }\n }\n IFC2X32.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, ResultValues, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.ResultValues = ResultValues;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC2X32.IfcObjective = IfcObjective;\n class IfcOpticalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, VisibleTransmittance, SolarTransmittance, ThermalIrTransmittance, ThermalIrEmissivityBack, ThermalIrEmissivityFront, VisibleReflectanceBack, VisibleReflectanceFront, SolarReflectanceFront, SolarReflectanceBack) {\n super(Material);\n this.Material = Material;\n this.VisibleTransmittance = VisibleTransmittance;\n this.SolarTransmittance = SolarTransmittance;\n this.ThermalIrTransmittance = ThermalIrTransmittance;\n this.ThermalIrEmissivityBack = ThermalIrEmissivityBack;\n this.ThermalIrEmissivityFront = ThermalIrEmissivityFront;\n this.VisibleReflectanceBack = VisibleReflectanceBack;\n this.VisibleReflectanceFront = VisibleReflectanceFront;\n this.SolarReflectanceFront = SolarReflectanceFront;\n this.SolarReflectanceBack = SolarReflectanceBack;\n this.type = 1227763645;\n }\n }\n IFC2X32.IfcOpticalMaterialProperties = IfcOpticalMaterialProperties;\n class IfcOrganization extends IfcLineObject {\n constructor(Id, Name, Description, Roles, Addresses) {\n super();\n this.Id = Id;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC2X32.IfcOrganization = IfcOrganization;\n class IfcOrganizationRelationship extends IfcLineObject {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC2X32.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC2X32.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Id, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Id = Id;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC2X32.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC2X32.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC2X32.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC2X32.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC2X32.IfcPostalAddress = IfcPostalAddress;\n class IfcPreDefinedItem extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC2X32.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedSymbol extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 990879717;\n }\n }\n IFC2X32.IfcPreDefinedSymbol = IfcPreDefinedSymbol;\n class IfcPreDefinedTerminatorSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 3213052703;\n }\n }\n IFC2X32.IfcPreDefinedTerminatorSymbol = IfcPreDefinedTerminatorSymbol;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC2X32.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC2X32.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC2X32.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC2X32.IfcPresentationStyle = IfcPresentationStyle;\n class IfcPresentationStyleAssignment extends IfcLineObject {\n constructor(Styles) {\n super();\n this.Styles = Styles;\n this.type = 2417041796;\n }\n }\n IFC2X32.IfcPresentationStyleAssignment = IfcPresentationStyleAssignment;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC2X32.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProductsOfCombustionProperties extends IfcMaterialProperties {\n constructor(Material, SpecificHeatCapacity, N20Content, COContent, CO2Content) {\n super(Material);\n this.Material = Material;\n this.SpecificHeatCapacity = SpecificHeatCapacity;\n this.N20Content = N20Content;\n this.COContent = COContent;\n this.CO2Content = CO2Content;\n this.type = 2267347899;\n }\n }\n IFC2X32.IfcProductsOfCombustionProperties = IfcProductsOfCombustionProperties;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC2X32.IfcProfileDef = IfcProfileDef;\n class IfcProfileProperties extends IfcLineObject {\n constructor(ProfileName, ProfileDefinition) {\n super();\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC2X32.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2598011224;\n }\n }\n IFC2X32.IfcProperty = IfcProperty;\n class IfcPropertyConstraintRelationship extends IfcLineObject {\n constructor(RelatingConstraint, RelatedProperties, Name, Description) {\n super();\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedProperties = RelatedProperties;\n this.Name = Name;\n this.Description = Description;\n this.type = 3896028662;\n }\n }\n IFC2X32.IfcPropertyConstraintRelationship = IfcPropertyConstraintRelationship;\n class IfcPropertyDependencyRelationship extends IfcLineObject {\n constructor(DependingProperty, DependantProperty, Name, Description, Expression) {\n super();\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Name = Name;\n this.Description = Description;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC2X32.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertyEnumeration extends IfcLineObject {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC2X32.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.type = 2044713172;\n }\n }\n IFC2X32.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.type = 2093928680;\n }\n }\n IFC2X32.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.type = 931644368;\n }\n }\n IFC2X32.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.type = 3252649465;\n }\n }\n IFC2X32.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.type = 2405470396;\n }\n }\n IFC2X32.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.type = 825690147;\n }\n }\n IFC2X32.IfcQuantityWeight = IfcQuantityWeight;\n class IfcReferencesValueDocument extends IfcLineObject {\n constructor(ReferencedDocument, ReferencingValues, Name, Description) {\n super();\n this.ReferencedDocument = ReferencedDocument;\n this.ReferencingValues = ReferencingValues;\n this.Name = Name;\n this.Description = Description;\n this.type = 2692823254;\n }\n }\n IFC2X32.IfcReferencesValueDocument = IfcReferencesValueDocument;\n class IfcReinforcementBarProperties extends IfcLineObject {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC2X32.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelaxation extends IfcLineObject {\n constructor(RelaxationValue, InitialStress) {\n super();\n this.RelaxationValue = RelaxationValue;\n this.InitialStress = InitialStress;\n this.type = 1222501353;\n }\n }\n IFC2X32.IfcRelaxation = IfcRelaxation;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC2X32.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC2X32.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC2X32.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC2X32.IfcRepresentationMap = IfcRepresentationMap;\n class IfcRibPlateProfileProperties extends IfcProfileProperties {\n constructor(ProfileName, ProfileDefinition, Thickness, RibHeight, RibWidth, RibSpacing, Direction) {\n super(ProfileName, ProfileDefinition);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.Thickness = Thickness;\n this.RibHeight = RibHeight;\n this.RibWidth = RibWidth;\n this.RibSpacing = RibSpacing;\n this.Direction = Direction;\n this.type = 3679540991;\n }\n }\n IFC2X32.IfcRibPlateProfileProperties = IfcRibPlateProfileProperties;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC2X32.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(UnitType, Prefix, Name) {\n super(new Handle(0), UnitType);\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC2X32.IfcSIUnit = IfcSIUnit;\n class IfcSectionProperties extends IfcLineObject {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC2X32.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcLineObject {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC2X32.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC2X32.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC2X32.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC2X32.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Description) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.type = 3692461612;\n }\n }\n IFC2X32.IfcSimpleProperty = IfcSimpleProperty;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC2X32.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC2X32.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadStatic extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC2X32.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaT_Constant, DeltaT_Y, DeltaT_Z) {\n super(Name);\n this.Name = Name;\n this.DeltaT_Constant = DeltaT_Constant;\n this.DeltaT_Y = DeltaT_Y;\n this.DeltaT_Z = DeltaT_Z;\n this.type = 3408363356;\n }\n }\n IFC2X32.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC2X32.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC2X32.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC2X32.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC2X32.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcLineObject {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC2X32.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcLineObject {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC2X32.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcLineObject {\n constructor(SurfaceColour) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.type = 846575682;\n }\n }\n IFC2X32.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcLineObject {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC2X32.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcLineObject {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.type = 626085974;\n }\n }\n IFC2X32.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcSymbolStyle extends IfcPresentationStyle {\n constructor(Name, StyleOfSymbol) {\n super(Name);\n this.Name = Name;\n this.StyleOfSymbol = StyleOfSymbol;\n this.type = 1290481447;\n }\n }\n IFC2X32.IfcSymbolStyle = IfcSymbolStyle;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.type = 985171141;\n }\n }\n IFC2X32.IfcTable = IfcTable;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC2X32.IfcTableRow = IfcTableRow;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.type = 912023232;\n }\n }\n IFC2X32.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.type = 1447204868;\n }\n }\n IFC2X32.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC2X32.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTextStyleForDefinedFont extends IfcLineObject {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC2X32.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcLineObject {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC2X32.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextStyleWithBoxCharacteristics extends IfcLineObject {\n constructor(BoxHeight, BoxWidth, BoxSlantAngle, BoxRotateAngle, CharacterSpacing) {\n super();\n this.BoxHeight = BoxHeight;\n this.BoxWidth = BoxWidth;\n this.BoxSlantAngle = BoxSlantAngle;\n this.BoxRotateAngle = BoxRotateAngle;\n this.CharacterSpacing = CharacterSpacing;\n this.type = 1484833681;\n }\n }\n IFC2X32.IfcTextStyleWithBoxCharacteristics = IfcTextStyleWithBoxCharacteristics;\n class IfcTextureCoordinate extends IfcLineObject {\n constructor() {\n super();\n this.type = 280115917;\n }\n }\n IFC2X32.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Mode, Parameter) {\n super();\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC2X32.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(TextureMaps) {\n super();\n this.TextureMaps = TextureMaps;\n this.type = 2552916305;\n }\n }\n IFC2X32.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcLineObject {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC2X32.IfcTextureVertex = IfcTextureVertex;\n class IfcThermalMaterialProperties extends IfcMaterialProperties {\n constructor(Material, SpecificHeatCapacity, BoilingPoint, FreezingPoint, ThermalConductivity) {\n super(Material);\n this.Material = Material;\n this.SpecificHeatCapacity = SpecificHeatCapacity;\n this.BoilingPoint = BoilingPoint;\n this.FreezingPoint = FreezingPoint;\n this.ThermalConductivity = ThermalConductivity;\n this.type = 3317419933;\n }\n }\n IFC2X32.IfcThermalMaterialProperties = IfcThermalMaterialProperties;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC2X32.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesReferenceRelationship extends IfcLineObject {\n constructor(ReferencedTimeSeries, TimeSeriesReferences) {\n super();\n this.ReferencedTimeSeries = ReferencedTimeSeries;\n this.TimeSeriesReferences = TimeSeriesReferences;\n this.type = 1718945513;\n }\n }\n IFC2X32.IfcTimeSeriesReferenceRelationship = IfcTimeSeriesReferenceRelationship;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC2X32.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC2X32.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC2X32.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC2X32.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC2X32.IfcVertex = IfcVertex;\n class IfcVertexBasedTextureMap extends IfcLineObject {\n constructor(TextureVertices, TexturePoints) {\n super();\n this.TextureVertices = TextureVertices;\n this.TexturePoints = TexturePoints;\n this.type = 3304826586;\n }\n }\n IFC2X32.IfcVertexBasedTextureMap = IfcVertexBasedTextureMap;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC2X32.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC2X32.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWaterProperties extends IfcMaterialProperties {\n constructor(Material, IsPotable, Hardness, AlkalinityConcentration, AcidityConcentration, ImpuritiesContent, PHLevel, DissolvedSolidsContent) {\n super(Material);\n this.Material = Material;\n this.IsPotable = IsPotable;\n this.Hardness = Hardness;\n this.AlkalinityConcentration = AlkalinityConcentration;\n this.AcidityConcentration = AcidityConcentration;\n this.ImpuritiesContent = ImpuritiesContent;\n this.PHLevel = PHLevel;\n this.DissolvedSolidsContent = DissolvedSolidsContent;\n this.type = 1065908215;\n }\n }\n IFC2X32.IfcWaterProperties = IfcWaterProperties;\n class IfcAnnotationOccurrence extends IfcStyledItem {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 2442683028;\n }\n }\n IFC2X32.IfcAnnotationOccurrence = IfcAnnotationOccurrence;\n class IfcAnnotationSurfaceOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 962685235;\n }\n }\n IFC2X32.IfcAnnotationSurfaceOccurrence = IfcAnnotationSurfaceOccurrence;\n class IfcAnnotationSymbolOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3612888222;\n }\n }\n IFC2X32.IfcAnnotationSymbolOccurrence = IfcAnnotationSymbolOccurrence;\n class IfcAnnotationTextOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 2297822566;\n }\n }\n IFC2X32.IfcAnnotationTextOccurrence = IfcAnnotationTextOccurrence;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC2X32.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC2X32.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC2X32.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC2X32.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC2X32.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name, ReferencedSource) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.type = 647927063;\n }\n }\n IFC2X32.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC2X32.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Description, UsageName, HasProperties) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC2X32.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC2X32.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC2X32.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC2X32.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC2X32.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC2X32.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC2X32.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.type = 3800577675;\n }\n }\n IFC2X32.IfcCurveStyle = IfcCurveStyle;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC2X32.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDimensionCalloutRelationship extends IfcDraughtingCalloutRelationship {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 2273265877;\n }\n }\n IFC2X32.IfcDimensionCalloutRelationship = IfcDimensionCalloutRelationship;\n class IfcDimensionPair extends IfcDraughtingCalloutRelationship {\n constructor(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout) {\n super(Name, Description, RelatingDraughtingCallout, RelatedDraughtingCallout);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDraughtingCallout = RelatingDraughtingCallout;\n this.RelatedDraughtingCallout = RelatedDraughtingCallout;\n this.type = 1694125774;\n }\n }\n IFC2X32.IfcDimensionPair = IfcDimensionPair;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, ItemReference, Name) {\n super(Location, ItemReference, Name);\n this.Location = Location;\n this.ItemReference = ItemReference;\n this.Name = Name;\n this.type = 3732053477;\n }\n }\n IFC2X32.IfcDocumentReference = IfcDocumentReference;\n class IfcDraughtingPreDefinedTextFont extends IfcPreDefinedTextFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4170525392;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedTextFont = IfcDraughtingPreDefinedTextFont;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC2X32.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC2X32.IfcEdgeCurve = IfcEdgeCurve;\n class IfcExtendedMaterialProperties extends IfcMaterialProperties {\n constructor(Material, ExtendedProperties, Description, Name) {\n super(Material);\n this.Material = Material;\n this.ExtendedProperties = ExtendedProperties;\n this.Description = Description;\n this.Name = Name;\n this.type = 1860660968;\n }\n }\n IFC2X32.IfcExtendedMaterialProperties = IfcExtendedMaterialProperties;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC2X32.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC2X32.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC2X32.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC2X32.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC2X32.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.type = 738692330;\n }\n }\n IFC2X32.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcFuelProperties extends IfcMaterialProperties {\n constructor(Material, CombustionTemperature, CarbonContent, LowerHeatingValue, HigherHeatingValue) {\n super(Material);\n this.Material = Material;\n this.CombustionTemperature = CombustionTemperature;\n this.CarbonContent = CarbonContent;\n this.LowerHeatingValue = LowerHeatingValue;\n this.HigherHeatingValue = HigherHeatingValue;\n this.type = 3857492461;\n }\n }\n IFC2X32.IfcFuelProperties = IfcFuelProperties;\n class IfcGeneralMaterialProperties extends IfcMaterialProperties {\n constructor(Material, MolecularWeight, Porosity, MassDensity) {\n super(Material);\n this.Material = Material;\n this.MolecularWeight = MolecularWeight;\n this.Porosity = Porosity;\n this.MassDensity = MassDensity;\n this.type = 803998398;\n }\n }\n IFC2X32.IfcGeneralMaterialProperties = IfcGeneralMaterialProperties;\n class IfcGeneralProfileProperties extends IfcProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea) {\n super(ProfileName, ProfileDefinition);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.type = 1446786286;\n }\n }\n IFC2X32.IfcGeneralProfileProperties = IfcGeneralProfileProperties;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC2X32.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC2X32.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, new Handle(0), null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC2X32.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC2X32.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementLocation, PlacementRefDirection) {\n super();\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC2X32.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC2X32.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcHygroscopicMaterialProperties extends IfcMaterialProperties {\n constructor(Material, UpperVaporResistanceFactor, LowerVaporResistanceFactor, IsothermalMoistureCapacity, VaporPermeability, MoistureDiffusivity) {\n super(Material);\n this.Material = Material;\n this.UpperVaporResistanceFactor = UpperVaporResistanceFactor;\n this.LowerVaporResistanceFactor = LowerVaporResistanceFactor;\n this.IsothermalMoistureCapacity = IsothermalMoistureCapacity;\n this.VaporPermeability = VaporPermeability;\n this.MoistureDiffusivity = MoistureDiffusivity;\n this.type = 2445078500;\n }\n }\n IFC2X32.IfcHygroscopicMaterialProperties = IfcHygroscopicMaterialProperties;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, UrlReference) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.UrlReference = UrlReference;\n this.type = 3905492369;\n }\n }\n IFC2X32.IfcImageTexture = IfcImageTexture;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC2X32.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC2X32.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC2X32.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC2X32.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC2X32.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC2X32.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC2X32.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC2X32.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC2X32.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC2X32.IfcMappedItem = IfcMappedItem;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC2X32.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMechanicalConcreteMaterialProperties extends IfcMechanicalMaterialProperties {\n constructor(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient, CompressiveStrength, MaxAggregateSize, AdmixturesDescription, Workability, ProtectivePoreRatio, WaterImpermeability) {\n super(Material, DynamicViscosity, YoungModulus, ShearModulus, PoissonRatio, ThermalExpansionCoefficient);\n this.Material = Material;\n this.DynamicViscosity = DynamicViscosity;\n this.YoungModulus = YoungModulus;\n this.ShearModulus = ShearModulus;\n this.PoissonRatio = PoissonRatio;\n this.ThermalExpansionCoefficient = ThermalExpansionCoefficient;\n this.CompressiveStrength = CompressiveStrength;\n this.MaxAggregateSize = MaxAggregateSize;\n this.AdmixturesDescription = AdmixturesDescription;\n this.Workability = Workability;\n this.ProtectivePoreRatio = ProtectivePoreRatio;\n this.WaterImpermeability = WaterImpermeability;\n this.type = 1430189142;\n }\n }\n IFC2X32.IfcMechanicalConcreteMaterialProperties = IfcMechanicalConcreteMaterialProperties;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC2X32.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOneDirectionRepeatFactor extends IfcGeometricRepresentationItem {\n constructor(RepeatFactor) {\n super();\n this.RepeatFactor = RepeatFactor;\n this.type = 2833995503;\n }\n }\n IFC2X32.IfcOneDirectionRepeatFactor = IfcOneDirectionRepeatFactor;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC2X32.IfcOpenShell = IfcOpenShell;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeElement, Orientation) {\n super(new Handle(0), new Handle(0));\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC2X32.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC2X32.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC2X32.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC2X32.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, TextureType, TextureTransform, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, TextureType, TextureTransform);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.TextureType = TextureType;\n this.TextureTransform = TextureTransform;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC2X32.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC2X32.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC2X32.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC2X32.IfcPoint = IfcPoint;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC2X32.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC2X32.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC2X32.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC2X32.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC2X32.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC2X32.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedDimensionSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 433424934;\n }\n }\n IFC2X32.IfcPreDefinedDimensionSymbol = IfcPreDefinedDimensionSymbol;\n class IfcPreDefinedPointMarkerSymbol extends IfcPreDefinedSymbol {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 179317114;\n }\n }\n IFC2X32.IfcPreDefinedPointMarkerSymbol = IfcPreDefinedPointMarkerSymbol;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC2X32.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Description, UpperBoundValue, LowerBoundValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.type = 871118103;\n }\n }\n IFC2X32.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC2X32.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Description, EnumerationValues, EnumerationReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC2X32.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Description, ListValues, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC2X32.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Description, UsageName, PropertyReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC2X32.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC2X32.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Description, NominalValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC2X32.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Description, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.type = 110355661;\n }\n }\n IFC2X32.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC2X32.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC2X32.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementDefinitionProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC2X32.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC2X32.IfcRelationship = IfcRelationship;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC2X32.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC2X32.IfcSectionedSpine = IfcSectionedSpine;\n class IfcServiceLifeFactor extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PredefinedType, UpperValue, MostUsedValue, LowerValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PredefinedType = PredefinedType;\n this.UpperValue = UpperValue;\n this.MostUsedValue = MostUsedValue;\n this.LowerValue = LowerValue;\n this.type = 2411513650;\n }\n }\n IFC2X32.IfcServiceLifeFactor = IfcServiceLifeFactor;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC2X32.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC2X32.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC2X32.IfcSolidModel = IfcSolidModel;\n class IfcSoundProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, IsAttenuating, SoundScale, SoundValues) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.IsAttenuating = IsAttenuating;\n this.SoundScale = SoundScale;\n this.SoundValues = SoundValues;\n this.type = 2485662743;\n }\n }\n IFC2X32.IfcSoundProperties = IfcSoundProperties;\n class IfcSoundValue extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, SoundLevelTimeSeries, Frequency, SoundLevelSingleValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.SoundLevelTimeSeries = SoundLevelTimeSeries;\n this.Frequency = Frequency;\n this.SoundLevelSingleValue = SoundLevelSingleValue;\n this.type = 1202362311;\n }\n }\n IFC2X32.IfcSoundValue = IfcSoundValue;\n class IfcSpaceThermalLoadProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableValueRatio, ThermalLoadSource, PropertySource, SourceDescription, MaximumValue, MinimumValue, ThermalLoadTimeSeriesValues, UserDefinedThermalLoadSource, UserDefinedPropertySource, ThermalLoadType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableValueRatio = ApplicableValueRatio;\n this.ThermalLoadSource = ThermalLoadSource;\n this.PropertySource = PropertySource;\n this.SourceDescription = SourceDescription;\n this.MaximumValue = MaximumValue;\n this.MinimumValue = MinimumValue;\n this.ThermalLoadTimeSeriesValues = ThermalLoadTimeSeriesValues;\n this.UserDefinedThermalLoadSource = UserDefinedThermalLoadSource;\n this.UserDefinedPropertySource = UserDefinedPropertySource;\n this.ThermalLoadType = ThermalLoadType;\n this.type = 390701378;\n }\n }\n IFC2X32.IfcSpaceThermalLoadProperties = IfcSpaceThermalLoadProperties;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC2X32.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC2X32.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC2X32.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC2X32.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC2X32.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC2X32.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcStructuralProfileProperties extends IfcGeneralProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY) {\n super(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.TorsionalConstantX = TorsionalConstantX;\n this.MomentOfInertiaYZ = MomentOfInertiaYZ;\n this.MomentOfInertiaY = MomentOfInertiaY;\n this.MomentOfInertiaZ = MomentOfInertiaZ;\n this.WarpingConstant = WarpingConstant;\n this.ShearCentreZ = ShearCentreZ;\n this.ShearCentreY = ShearCentreY;\n this.ShearDeformationAreaZ = ShearDeformationAreaZ;\n this.ShearDeformationAreaY = ShearDeformationAreaY;\n this.MaximumSectionModulusY = MaximumSectionModulusY;\n this.MinimumSectionModulusY = MinimumSectionModulusY;\n this.MaximumSectionModulusZ = MaximumSectionModulusZ;\n this.MinimumSectionModulusZ = MinimumSectionModulusZ;\n this.TorsionalSectionModulus = TorsionalSectionModulus;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3843319758;\n }\n }\n IFC2X32.IfcStructuralProfileProperties = IfcStructuralProfileProperties;\n class IfcStructuralSteelProfileProperties extends IfcStructuralProfileProperties {\n constructor(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY, ShearAreaZ, ShearAreaY, PlasticShapeFactorY, PlasticShapeFactorZ) {\n super(ProfileName, ProfileDefinition, PhysicalWeight, Perimeter, MinimumPlateThickness, MaximumPlateThickness, CrossSectionArea, TorsionalConstantX, MomentOfInertiaYZ, MomentOfInertiaY, MomentOfInertiaZ, WarpingConstant, ShearCentreZ, ShearCentreY, ShearDeformationAreaZ, ShearDeformationAreaY, MaximumSectionModulusY, MinimumSectionModulusY, MaximumSectionModulusZ, MinimumSectionModulusZ, TorsionalSectionModulus, CentreOfGravityInX, CentreOfGravityInY);\n this.ProfileName = ProfileName;\n this.ProfileDefinition = ProfileDefinition;\n this.PhysicalWeight = PhysicalWeight;\n this.Perimeter = Perimeter;\n this.MinimumPlateThickness = MinimumPlateThickness;\n this.MaximumPlateThickness = MaximumPlateThickness;\n this.CrossSectionArea = CrossSectionArea;\n this.TorsionalConstantX = TorsionalConstantX;\n this.MomentOfInertiaYZ = MomentOfInertiaYZ;\n this.MomentOfInertiaY = MomentOfInertiaY;\n this.MomentOfInertiaZ = MomentOfInertiaZ;\n this.WarpingConstant = WarpingConstant;\n this.ShearCentreZ = ShearCentreZ;\n this.ShearCentreY = ShearCentreY;\n this.ShearDeformationAreaZ = ShearDeformationAreaZ;\n this.ShearDeformationAreaY = ShearDeformationAreaY;\n this.MaximumSectionModulusY = MaximumSectionModulusY;\n this.MinimumSectionModulusY = MinimumSectionModulusY;\n this.MaximumSectionModulusZ = MaximumSectionModulusZ;\n this.MinimumSectionModulusZ = MinimumSectionModulusZ;\n this.TorsionalSectionModulus = TorsionalSectionModulus;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.ShearAreaZ = ShearAreaZ;\n this.ShearAreaY = ShearAreaY;\n this.PlasticShapeFactorY = PlasticShapeFactorY;\n this.PlasticShapeFactorZ = PlasticShapeFactorZ;\n this.type = 3653947884;\n }\n }\n IFC2X32.IfcStructuralSteelProfileProperties = IfcStructuralSteelProfileProperties;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC2X32.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC2X32.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC2X32.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC2X32.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC2X32.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC2X32.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3071757647;\n }\n }\n IFC2X32.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTerminatorSymbol extends IfcAnnotationSymbolOccurrence {\n constructor(Item, Styles, Name, AnnotatedCurve) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.AnnotatedCurve = AnnotatedCurve;\n this.type = 3028897424;\n }\n }\n IFC2X32.IfcTerminatorSymbol = IfcTerminatorSymbol;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC2X32.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC2X32.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC2X32.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTwoDirectionRepeatFactor extends IfcOneDirectionRepeatFactor {\n constructor(RepeatFactor, SecondRepeatFactor) {\n super(RepeatFactor);\n this.RepeatFactor = RepeatFactor;\n this.SecondRepeatFactor = SecondRepeatFactor;\n this.type = 1345879162;\n }\n }\n IFC2X32.IfcTwoDirectionRepeatFactor = IfcTwoDirectionRepeatFactor;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC2X32.IfcTypeObject = IfcTypeObject;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC2X32.IfcTypeProduct = IfcTypeProduct;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope, CentreOfGravityInX) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.type = 427810014;\n }\n }\n IFC2X32.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC2X32.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC2X32.IfcVertexLoop = IfcVertexLoop;\n class IfcWindowLiningProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 336235671;\n }\n }\n IFC2X32.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC2X32.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcWindowStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ConstructionType, OperationType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ConstructionType = ConstructionType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 1299126871;\n }\n }\n IFC2X32.IfcWindowStyle = IfcWindowStyle;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC2X32.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAnnotationCurveOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3288037868;\n }\n }\n IFC2X32.IfcAnnotationCurveOccurrence = IfcAnnotationCurveOccurrence;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC2X32.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAnnotationFillAreaOccurrence extends IfcAnnotationOccurrence {\n constructor(Item, Styles, Name, FillStyleTarget, GlobalOrLocal) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.FillStyleTarget = FillStyleTarget;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 2265737646;\n }\n }\n IFC2X32.IfcAnnotationFillAreaOccurrence = IfcAnnotationFillAreaOccurrence;\n class IfcAnnotationSurface extends IfcGeometricRepresentationItem {\n constructor(Item, TextureCoordinates) {\n super();\n this.Item = Item;\n this.TextureCoordinates = TextureCoordinates;\n this.type = 1302238472;\n }\n }\n IFC2X32.IfcAnnotationSurface = IfcAnnotationSurface;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC2X32.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC2X32.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC2X32.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC2X32.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC2X32.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC2X32.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC2X32.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius, CentreOfGravityInX) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.type = 2898889636;\n }\n }\n IFC2X32.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC2X32.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC2X32.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC2X32.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC2X32.IfcClosedShell = IfcClosedShell;\n class IfcCompositeCurveSegment extends IfcGeometricRepresentationItem {\n constructor(Transition, SameSense, ParentCurve) {\n super();\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC2X32.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcCraneRailAShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallHeight, BaseWidth2, Radius, HeadWidth, HeadDepth2, HeadDepth3, WebThickness, BaseWidth4, BaseDepth1, BaseDepth2, BaseDepth3, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallHeight = OverallHeight;\n this.BaseWidth2 = BaseWidth2;\n this.Radius = Radius;\n this.HeadWidth = HeadWidth;\n this.HeadDepth2 = HeadDepth2;\n this.HeadDepth3 = HeadDepth3;\n this.WebThickness = WebThickness;\n this.BaseWidth4 = BaseWidth4;\n this.BaseDepth1 = BaseDepth1;\n this.BaseDepth2 = BaseDepth2;\n this.BaseDepth3 = BaseDepth3;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 4133800736;\n }\n }\n IFC2X32.IfcCraneRailAShapeProfileDef = IfcCraneRailAShapeProfileDef;\n class IfcCraneRailFShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallHeight, HeadWidth, Radius, HeadDepth2, HeadDepth3, WebThickness, BaseDepth1, BaseDepth2, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallHeight = OverallHeight;\n this.HeadWidth = HeadWidth;\n this.Radius = Radius;\n this.HeadDepth2 = HeadDepth2;\n this.HeadDepth3 = HeadDepth3;\n this.WebThickness = WebThickness;\n this.BaseDepth1 = BaseDepth1;\n this.BaseDepth2 = BaseDepth2;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 194851669;\n }\n }\n IFC2X32.IfcCraneRailFShapeProfileDef = IfcCraneRailFShapeProfileDef;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC2X32.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC2X32.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC2X32.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC2X32.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcDefinedSymbol extends IfcGeometricRepresentationItem {\n constructor(Definition, Target) {\n super();\n this.Definition = Definition;\n this.Target = Target;\n this.type = 693772133;\n }\n }\n IFC2X32.IfcDefinedSymbol = IfcDefinedSymbol;\n class IfcDimensionCurve extends IfcAnnotationCurveOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 606661476;\n }\n }\n IFC2X32.IfcDimensionCurve = IfcDimensionCurve;\n class IfcDimensionCurveTerminator extends IfcTerminatorSymbol {\n constructor(Item, Styles, Name, AnnotatedCurve, Role) {\n super(Item, Styles, Name, AnnotatedCurve);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.AnnotatedCurve = AnnotatedCurve;\n this.Role = Role;\n this.type = 4054601972;\n }\n }\n IFC2X32.IfcDimensionCurveTerminator = IfcDimensionCurveTerminator;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC2X32.IfcDirection = IfcDirection;\n class IfcDoorLiningProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 2963535650;\n }\n }\n IFC2X32.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC2X32.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, OperationType, ConstructionType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.ConstructionType = ConstructionType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 526551008;\n }\n }\n IFC2X32.IfcDoorStyle = IfcDoorStyle;\n class IfcDraughtingCallout extends IfcGeometricRepresentationItem {\n constructor(Contents) {\n super();\n this.Contents = Contents;\n this.type = 3073041342;\n }\n }\n IFC2X32.IfcDraughtingCallout = IfcDraughtingCallout;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC2X32.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC2X32.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC2X32.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC2X32.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC2X32.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC2X32.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEnergyProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.EnergySequence = EnergySequence;\n this.UserDefinedEnergySequence = UserDefinedEnergySequence;\n this.type = 80994333;\n }\n }\n IFC2X32.IfcEnergyProperties = IfcEnergyProperties;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC2X32.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC2X32.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC2X32.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTileSymbolWithStyle extends IfcGeometricRepresentationItem {\n constructor(Symbol2) {\n super();\n this.Symbol = Symbol2;\n this.type = 4203026998;\n }\n }\n IFC2X32.IfcFillAreaStyleTileSymbolWithStyle = IfcFillAreaStyleTileSymbolWithStyle;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC2X32.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFluidFlowProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, PropertySource, FlowConditionTimeSeries, VelocityTimeSeries, FlowrateTimeSeries, Fluid, PressureTimeSeries, UserDefinedPropertySource, TemperatureSingleValue, WetBulbTemperatureSingleValue, WetBulbTemperatureTimeSeries, TemperatureTimeSeries, FlowrateSingleValue, FlowConditionSingleValue, VelocitySingleValue, PressureSingleValue) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PropertySource = PropertySource;\n this.FlowConditionTimeSeries = FlowConditionTimeSeries;\n this.VelocityTimeSeries = VelocityTimeSeries;\n this.FlowrateTimeSeries = FlowrateTimeSeries;\n this.Fluid = Fluid;\n this.PressureTimeSeries = PressureTimeSeries;\n this.UserDefinedPropertySource = UserDefinedPropertySource;\n this.TemperatureSingleValue = TemperatureSingleValue;\n this.WetBulbTemperatureSingleValue = WetBulbTemperatureSingleValue;\n this.WetBulbTemperatureTimeSeries = WetBulbTemperatureTimeSeries;\n this.TemperatureTimeSeries = TemperatureTimeSeries;\n this.FlowrateSingleValue = FlowrateSingleValue;\n this.FlowConditionSingleValue = FlowConditionSingleValue;\n this.VelocitySingleValue = VelocitySingleValue;\n this.PressureSingleValue = PressureSingleValue;\n this.type = 3455213021;\n }\n }\n IFC2X32.IfcFluidFlowProperties = IfcFluidFlowProperties;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC2X32.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.type = 1268542332;\n }\n }\n IFC2X32.IfcFurnitureType = IfcFurnitureType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC2X32.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.type = 1484403080;\n }\n }\n IFC2X32.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope, CentreOfGravityInX, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.CentreOfGravityInX = CentreOfGravityInX;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 572779678;\n }\n }\n IFC2X32.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC2X32.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC2X32.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC2X32.IfcObject = IfcObject;\n class IfcOffsetCurve2D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC2X32.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC2X32.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcPermeableCoveringProperties extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC2X32.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC2X32.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC2X32.IfcPlane = IfcPlane;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2945172077;\n }\n }\n IFC2X32.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC2X32.IfcProduct = IfcProduct;\n class IfcProject extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC2X32.IfcProject = IfcProject;\n class IfcProjectionCurve extends IfcAnnotationCurveOccurrence {\n constructor(Item, Styles, Name) {\n super(Item, Styles, Name);\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 4194566429;\n }\n }\n IFC2X32.IfcProjectionCurve = IfcProjectionCurve;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC2X32.IfcPropertySet = IfcPropertySet;\n class IfcProxy extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, ProxyType, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.ProxyType = ProxyType;\n this.Tag = Tag;\n this.type = 3219374653;\n }\n }\n IFC2X32.IfcProxy = IfcProxy;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC2X32.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC2X32.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC2X32.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC2X32.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC2X32.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC2X32.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC2X32.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC2X32.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC2X32.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToProjectOrder extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 3372526763;\n }\n }\n IFC2X32.IfcRelAssignsToProjectOrder = IfcRelAssignsToProjectOrder;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC2X32.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC2X32.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesAppliedValue extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingAppliedValue) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingAppliedValue = RelatingAppliedValue;\n this.type = 1327628568;\n }\n }\n IFC2X32.IfcRelAssociatesAppliedValue = IfcRelAssociatesAppliedValue;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC2X32.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC2X32.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC2X32.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC2X32.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC2X32.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC2X32.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelAssociatesProfileProperties extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingProfileProperties, ProfileSectionLocation, ProfileOrientation) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingProfileProperties = RelatingProfileProperties;\n this.ProfileSectionLocation = ProfileSectionLocation;\n this.ProfileOrientation = ProfileOrientation;\n this.type = 2851387026;\n }\n }\n IFC2X32.IfcRelAssociatesProfileProperties = IfcRelAssociatesProfileProperties;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC2X32.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC2X32.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC2X32.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC2X32.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC2X32.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC2X32.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralMember) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralMember = RelatedStructuralMember;\n this.type = 3912681535;\n }\n }\n IFC2X32.IfcRelConnectsStructuralElement = IfcRelConnectsStructuralElement;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC2X32.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC2X32.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC2X32.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC2X32.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC2X32.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedSpace = RelatedSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC2X32.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 2551354335;\n }\n }\n IFC2X32.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 693640335;\n }\n }\n IFC2X32.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC2X32.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC2X32.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC2X32.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC2X32.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInteractionRequirements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, DailyInteraction, ImportanceRating, LocationOfInteraction, RelatedSpaceProgram, RelatingSpaceProgram) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DailyInteraction = DailyInteraction;\n this.ImportanceRating = ImportanceRating;\n this.LocationOfInteraction = LocationOfInteraction;\n this.RelatedSpaceProgram = RelatedSpaceProgram;\n this.RelatingSpaceProgram = RelatingSpaceProgram;\n this.type = 4189434867;\n }\n }\n IFC2X32.IfcRelInteractionRequirements = IfcRelInteractionRequirements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC2X32.IfcRelNests = IfcRelNests;\n class IfcRelOccupiesSpaces extends IfcRelAssignsToActor {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 2051452291;\n }\n }\n IFC2X32.IfcRelOccupiesSpaces = IfcRelOccupiesSpaces;\n class IfcRelOverridesProperties extends IfcRelDefinesByProperties {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition, OverridingProperties) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.OverridingProperties = OverridingProperties;\n this.type = 202636808;\n }\n }\n IFC2X32.IfcRelOverridesProperties = IfcRelOverridesProperties;\n class IfcRelProjectsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC2X32.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC2X32.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSchedulesCostItems extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 1058617721;\n }\n }\n IFC2X32.IfcRelSchedulesCostItems = IfcRelSchedulesCostItems;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.type = 4122056220;\n }\n }\n IFC2X32.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC2X32.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC2X32.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelVoidsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC2X32.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2914609552;\n }\n }\n IFC2X32.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC2X32.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC2X32.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC2X32.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSpatialStructureElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC2X32.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC2X32.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC2X32.IfcSphere = IfcSphere;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC2X32.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC2X32.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC2X32.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC2X32.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC2X32.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness, SubsequentThickness, VaryingThicknessLocation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.SubsequentThickness = SubsequentThickness;\n this.VaryingThicknessLocation = VaryingThicknessLocation;\n this.type = 2218152070;\n }\n }\n IFC2X32.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuredDimensionCallout extends IfcDraughtingCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 4070609034;\n }\n }\n IFC2X32.IfcStructuredDimensionCallout = IfcStructuredDimensionCallout;\n class IfcSurfaceCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC2X32.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC2X32.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC2X32.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1580310250;\n }\n }\n IFC2X32.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.type = 3473067441;\n }\n }\n IFC2X32.IfcTask = IfcTask;\n class IfcTransportElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC2X32.IfcTransportElementType = IfcTransportElementType;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC2X32.IfcActor = IfcActor;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1674181508;\n }\n }\n IFC2X32.IfcAnnotation = IfcAnnotation;\n class IfcAsymmetricIShapeProfileDef extends IfcIShapeProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, CentreOfGravityInY) {\n super(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.CentreOfGravityInY = CentreOfGravityInY;\n this.type = 3207858831;\n }\n }\n IFC2X32.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC2X32.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC2X32.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC2X32.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuilding extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC2X32.IfcBuilding = IfcBuilding;\n class IfcBuildingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1950629157;\n }\n }\n IFC2X32.IfcBuildingElementType = IfcBuildingElementType;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC2X32.IfcBuildingStorey = IfcBuildingStorey;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC2X32.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcColumnType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC2X32.IfcColumnType = IfcColumnType;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC2X32.IfcCompositeCurve = IfcCompositeCurve;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC2X32.IfcConic = IfcConic;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC2X32.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3293443760;\n }\n }\n IFC2X32.IfcControl = IfcControl;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3895139033;\n }\n }\n IFC2X32.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, SubmittedBy, PreparedBy, SubmittedOn, Status, TargetUsers, UpdateDate, ID, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.SubmittedBy = SubmittedBy;\n this.PreparedBy = PreparedBy;\n this.SubmittedOn = SubmittedOn;\n this.Status = Status;\n this.TargetUsers = TargetUsers;\n this.UpdateDate = UpdateDate;\n this.ID = ID;\n this.PredefinedType = PredefinedType;\n this.type = 1419761937;\n }\n }\n IFC2X32.IfcCostSchedule = IfcCostSchedule;\n class IfcCoveringType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC2X32.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 3295246426;\n }\n }\n IFC2X32.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC2X32.IfcCurtainWallType = IfcCurtainWallType;\n class IfcDimensionCurveDirectedCallout extends IfcDraughtingCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 681481545;\n }\n }\n IFC2X32.IfcDimensionCurveDirectedCallout = IfcDimensionCurveDirectedCallout;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC2X32.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC2X32.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcElectricalBaseProperties extends IfcEnergyProperties {\n constructor(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence, ElectricCurrentType, InputVoltage, InputFrequency, FullLoadCurrent, MinimumCircuitCurrent, MaximumPowerInput, RatedPowerInput, InputPhase) {\n super(GlobalId, OwnerHistory, Name, Description, EnergySequence, UserDefinedEnergySequence);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.EnergySequence = EnergySequence;\n this.UserDefinedEnergySequence = UserDefinedEnergySequence;\n this.ElectricCurrentType = ElectricCurrentType;\n this.InputVoltage = InputVoltage;\n this.InputFrequency = InputFrequency;\n this.FullLoadCurrent = FullLoadCurrent;\n this.MinimumCircuitCurrent = MinimumCircuitCurrent;\n this.MaximumPowerInput = MaximumPowerInput;\n this.RatedPowerInput = RatedPowerInput;\n this.InputPhase = InputPhase;\n this.type = 360485395;\n }\n }\n IFC2X32.IfcElectricalBaseProperties = IfcElectricalBaseProperties;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC2X32.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC2X32.IfcElementAssembly = IfcElementAssembly;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC2X32.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC2X32.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC2X32.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC2X32.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEquipmentElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1962604670;\n }\n }\n IFC2X32.IfcEquipmentElement = IfcEquipmentElement;\n class IfcEquipmentStandard extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3272907226;\n }\n }\n IFC2X32.IfcEquipmentStandard = IfcEquipmentStandard;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC2X32.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC2X32.IfcEvaporatorType = IfcEvaporatorType;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC2X32.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcManifoldSolidBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC2X32.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 647756555;\n }\n }\n IFC2X32.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2489546625;\n }\n }\n IFC2X32.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC2X32.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC2X32.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC2X32.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC2X32.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC2X32.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC2X32.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC2X32.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC2X32.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC2X32.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC2X32.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC2X32.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC2X32.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurnitureStandard extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 814719939;\n }\n }\n IFC2X32.IfcFurnitureStandard = IfcFurnitureStandard;\n class IfcGasTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 200128114;\n }\n }\n IFC2X32.IfcGasTerminalType = IfcGasTerminalType;\n class IfcGrid extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.type = 3009204131;\n }\n }\n IFC2X32.IfcGrid = IfcGrid;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC2X32.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC2X32.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC2X32.IfcHumidifierType = IfcHumidifierType;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, InventoryType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.InventoryType = InventoryType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC2X32.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC2X32.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, SkillSet) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.SkillSet = SkillSet;\n this.type = 3827777499;\n }\n }\n IFC2X32.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC2X32.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC2X32.IfcLightFixtureType = IfcLightFixtureType;\n class IfcLinearDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 2506943328;\n }\n }\n IFC2X32.IfcLinearDimension = IfcLinearDimension;\n class IfcMechanicalFastener extends IfcFastener {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 377706215;\n }\n }\n IFC2X32.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcFastenerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2108223431;\n }\n }\n IFC2X32.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMemberType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC2X32.IfcMemberType = IfcMemberType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC2X32.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcMove extends IfcTask {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority, MoveFrom, MoveTo, PunchList) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.MoveFrom = MoveFrom;\n this.MoveTo = MoveTo;\n this.PunchList = PunchList;\n this.type = 1916936684;\n }\n }\n IFC2X32.IfcMove = IfcMove;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC2X32.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3588315303;\n }\n }\n IFC2X32.IfcOpeningElement = IfcOpeningElement;\n class IfcOrderAction extends IfcTask {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority, ActionID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TaskId, Status, WorkMethod, IsMilestone, Priority);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TaskId = TaskId;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.ActionID = ActionID;\n this.type = 3425660407;\n }\n }\n IFC2X32.IfcOrderAction = IfcOrderAction;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC2X32.IfcOutletType = IfcOutletType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LifeCyclePhase) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LifeCyclePhase = LifeCyclePhase;\n this.type = 2382730787;\n }\n }\n IFC2X32.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PermitID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PermitID = PermitID;\n this.type = 3327091369;\n }\n }\n IFC2X32.IfcPermit = IfcPermit;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC2X32.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC2X32.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC2X32.IfcPlateType = IfcPlateType;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC2X32.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC2X32.IfcPort = IfcPort;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ProcedureID, ProcedureType, UserDefinedProcedureType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ProcedureID = ProcedureID;\n this.ProcedureType = ProcedureType;\n this.UserDefinedProcedureType = UserDefinedProcedureType;\n this.type = 2744685151;\n }\n }\n IFC2X32.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ID, PredefinedType, Status) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ID = ID;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.type = 2904328755;\n }\n }\n IFC2X32.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectOrderRecord extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Records, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Records = Records;\n this.PredefinedType = PredefinedType;\n this.type = 3642467123;\n }\n }\n IFC2X32.IfcProjectOrderRecord = IfcProjectOrderRecord;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3651124850;\n }\n }\n IFC2X32.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC2X32.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC2X32.IfcPumpType = IfcPumpType;\n class IfcRadiusDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 3248260540;\n }\n }\n IFC2X32.IfcRadiusDimension = IfcRadiusDimension;\n class IfcRailingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC2X32.IfcRailingType = IfcRailingType;\n class IfcRampFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC2X32.IfcRampFlightType = IfcRampFlightType;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC2X32.IfcRelAggregates = IfcRelAggregates;\n class IfcRelAssignsTasks extends IfcRelAssignsToControl {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl, TimeForTask) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.TimeForTask = TimeForTask;\n this.type = 2863920197;\n }\n }\n IFC2X32.IfcRelAssignsTasks = IfcRelAssignsTasks;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC2X32.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcScheduleTimeControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ActualStart, EarlyStart, LateStart, ScheduleStart, ActualFinish, EarlyFinish, LateFinish, ScheduleFinish, ScheduleDuration, ActualDuration, RemainingTime, FreeFloat, TotalFloat, IsCritical, StatusTime, StartFloat, FinishFloat, Completion) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ActualStart = ActualStart;\n this.EarlyStart = EarlyStart;\n this.LateStart = LateStart;\n this.ScheduleStart = ScheduleStart;\n this.ActualFinish = ActualFinish;\n this.EarlyFinish = EarlyFinish;\n this.LateFinish = LateFinish;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleDuration = ScheduleDuration;\n this.ActualDuration = ActualDuration;\n this.RemainingTime = RemainingTime;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.StartFloat = StartFloat;\n this.FinishFloat = FinishFloat;\n this.Completion = Completion;\n this.type = 3517283431;\n }\n }\n IFC2X32.IfcScheduleTimeControl = IfcScheduleTimeControl;\n class IfcServiceLife extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ServiceLifeType, ServiceLifeDuration) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ServiceLifeType = ServiceLifeType;\n this.ServiceLifeDuration = ServiceLifeDuration;\n this.type = 4105383287;\n }\n }\n IFC2X32.IfcServiceLife = IfcServiceLife;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC2X32.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC2X32.IfcSlabType = IfcSlabType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, InteriorOrExteriorSpace, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.InteriorOrExteriorSpace = InteriorOrExteriorSpace;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC2X32.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC2X32.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceProgram extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, SpaceProgramIdentifier, MaxRequiredArea, MinRequiredArea, RequestedLocation, StandardRequiredArea) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.SpaceProgramIdentifier = SpaceProgramIdentifier;\n this.MaxRequiredArea = MaxRequiredArea;\n this.MinRequiredArea = MinRequiredArea;\n this.RequestedLocation = RequestedLocation;\n this.StandardRequiredArea = StandardRequiredArea;\n this.type = 652456506;\n }\n }\n IFC2X32.IfcSpaceProgram = IfcSpaceProgram;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3812236995;\n }\n }\n IFC2X32.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC2X32.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC2X32.IfcStairFlightType = IfcStairFlightType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.type = 682877961;\n }\n }\n IFC2X32.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC2X32.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 4243806635;\n }\n }\n IFC2X32.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 214636428;\n }\n }\n IFC2X32.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 2445595289;\n }\n }\n IFC2X32.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralLinearAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.type = 1807405624;\n }\n }\n IFC2X32.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLinearActionVarying extends IfcStructuralLinearAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue, VaryingAppliedLoadLocation, SubsequentAppliedLoads) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.VaryingAppliedLoadLocation = VaryingAppliedLoadLocation;\n this.SubsequentAppliedLoads = SubsequentAppliedLoads;\n this.type = 1721250024;\n }\n }\n IFC2X32.IfcStructuralLinearActionVarying = IfcStructuralLinearActionVarying;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC2X32.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPlanarAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.type = 1621171031;\n }\n }\n IFC2X32.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcStructuralPlanarActionVarying extends IfcStructuralPlanarAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue, VaryingAppliedLoadLocation, SubsequentAppliedLoads) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy, ProjectedOrTrue);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.VaryingAppliedLoadLocation = VaryingAppliedLoadLocation;\n this.SubsequentAppliedLoads = SubsequentAppliedLoads;\n this.type = 3987759626;\n }\n }\n IFC2X32.IfcStructuralPlanarActionVarying = IfcStructuralPlanarActionVarying;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, CausedBy);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.CausedBy = CausedBy;\n this.type = 2082059205;\n }\n }\n IFC2X32.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 734778138;\n }\n }\n IFC2X32.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC2X32.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC2X32.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC2X32.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, SubContractor, JobDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.SubContractor = SubContractor;\n this.JobDescription = JobDescription;\n this.type = 148013059;\n }\n }\n IFC2X32.IfcSubContractResource = IfcSubContractResource;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC2X32.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC2X32.IfcSystem = IfcSystem;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC2X32.IfcTankType = IfcTankType;\n class IfcTimeSeriesSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ApplicableDates, TimeSeriesScheduleType, TimeSeries) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ApplicableDates = ApplicableDates;\n this.TimeSeriesScheduleType = TimeSeriesScheduleType;\n this.TimeSeries = TimeSeries;\n this.type = 1637806684;\n }\n }\n IFC2X32.IfcTimeSeriesSchedule = IfcTimeSeriesSchedule;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC2X32.IfcTransformerType = IfcTransformerType;\n class IfcTransportElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OperationType, CapacityByWeight, CapacityByNumber) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.CapacityByWeight = CapacityByWeight;\n this.CapacityByNumber = CapacityByNumber;\n this.type = 1620046519;\n }\n }\n IFC2X32.IfcTransportElement = IfcTransportElement;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC2X32.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC2X32.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC2X32.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC2X32.IfcValveType = IfcValveType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2769231204;\n }\n }\n IFC2X32.IfcVirtualElement = IfcVirtualElement;\n class IfcWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC2X32.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC2X32.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 1028945134;\n }\n }\n IFC2X32.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 4218914973;\n }\n }\n IFC2X32.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identifier, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, WorkControlType, UserDefinedControlType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identifier = Identifier;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.WorkControlType = WorkControlType;\n this.UserDefinedControlType = UserDefinedControlType;\n this.type = 3342526732;\n }\n }\n IFC2X32.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 1033361043;\n }\n }\n IFC2X32.IfcZone = IfcZone;\n class Ifc2DCompositeCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1213861670;\n }\n }\n IFC2X32.Ifc2DCompositeCurve = Ifc2DCompositeCurve;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, RequestID) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.RequestID = RequestID;\n this.type = 3821786052;\n }\n }\n IFC2X32.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC2X32.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC2X32.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC2X32.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAngularDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 2470393545;\n }\n }\n IFC2X32.IfcAngularDimension = IfcAngularDimension;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, AssetID, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.AssetID = AssetID;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC2X32.IfcAsset = IfcAsset;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC2X32.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBeamType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC2X32.IfcBeamType = IfcBeamType;\n class IfcBezierCurve extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1916977116;\n }\n }\n IFC2X32.IfcBezierCurve = IfcBezierCurve;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC2X32.IfcBoilerType = IfcBoilerType;\n class IfcBuildingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3299480353;\n }\n }\n IFC2X32.IfcBuildingElement = IfcBuildingElement;\n class IfcBuildingElementComponent extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 52481810;\n }\n }\n IFC2X32.IfcBuildingElementComponent = IfcBuildingElementComponent;\n class IfcBuildingElementPart extends IfcBuildingElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2979338954;\n }\n }\n IFC2X32.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementProxy extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.CompositionType = CompositionType;\n this.type = 1095909175;\n }\n }\n IFC2X32.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBuildingElementProxyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC2X32.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC2X32.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC2X32.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC2X32.IfcCableSegmentType = IfcCableSegmentType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC2X32.IfcChillerType = IfcChillerType;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC2X32.IfcCircle = IfcCircle;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC2X32.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 843113511;\n }\n }\n IFC2X32.IfcColumn = IfcColumn;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC2X32.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC2X32.IfcCondenserType = IfcCondenserType;\n class IfcCondition extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2188551683;\n }\n }\n IFC2X32.IfcCondition = IfcCondition;\n class IfcConditionCriterion extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Criterion, CriterionDateTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Criterion = Criterion;\n this.CriterionDateTime = CriterionDateTime;\n this.type = 1163958913;\n }\n }\n IFC2X32.IfcConditionCriterion = IfcConditionCriterion;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 3898045240;\n }\n }\n IFC2X32.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity, Suppliers, UsageRatio) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.Suppliers = Suppliers;\n this.UsageRatio = UsageRatio;\n this.type = 1060000209;\n }\n }\n IFC2X32.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ResourceIdentifier, ResourceGroup, ResourceConsumption, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ResourceIdentifier = ResourceIdentifier;\n this.ResourceGroup = ResourceGroup;\n this.ResourceConsumption = ResourceConsumption;\n this.BaseQuantity = BaseQuantity;\n this.type = 488727124;\n }\n }\n IFC2X32.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC2X32.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC2X32.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCovering extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC2X32.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3495092785;\n }\n }\n IFC2X32.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC2X32.IfcDamperType = IfcDamperType;\n class IfcDiameterDimension extends IfcDimensionCurveDirectedCallout {\n constructor(Contents) {\n super(Contents);\n this.Contents = Contents;\n this.type = 4147604152;\n }\n }\n IFC2X32.IfcDiameterDimension = IfcDiameterDimension;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1335981549;\n }\n }\n IFC2X32.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2635815018;\n }\n }\n IFC2X32.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC2X32.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC2X32.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC2X32.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC2X32.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.type = 3041715199;\n }\n }\n IFC2X32.IfcDistributionPort = IfcDistributionPort;\n class IfcDoor extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.type = 395920057;\n }\n }\n IFC2X32.IfcDoor = IfcDoor;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC2X32.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC2X32.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC2X32.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcEdgeFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.type = 855621170;\n }\n }\n IFC2X32.IfcEdgeFeature = IfcEdgeFeature;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC2X32.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC2X32.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC2X32.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1365060375;\n }\n }\n IFC2X32.IfcElectricHeaterType = IfcElectricHeaterType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC2X32.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC2X32.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcElectricalCircuit extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 1634875225;\n }\n }\n IFC2X32.IfcElectricalCircuit = IfcElectricalCircuit;\n class IfcElectricalElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 857184966;\n }\n }\n IFC2X32.IfcElectricalElement = IfcElectricalElement;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC2X32.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC2X32.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC2X32.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC2X32.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC2X32.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC2X32.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC2X32.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC2X32.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC2X32.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC2X32.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC2X32.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC2X32.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC2X32.IfcFooting = IfcFooting;\n class IfcMember extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1073191201;\n }\n }\n IFC2X32.IfcMember = IfcMember;\n class IfcPile extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC2X32.IfcPile = IfcPile;\n class IfcPlate extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3171933400;\n }\n }\n IFC2X32.IfcPlate = IfcPlate;\n class IfcRailing extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC2X32.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 3024970846;\n }\n }\n IFC2X32.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3283111854;\n }\n }\n IFC2X32.IfcRampFlight = IfcRampFlight;\n class IfcRationalBezierCurve extends IfcBezierCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.WeightsData = WeightsData;\n this.type = 3055160366;\n }\n }\n IFC2X32.IfcRationalBezierCurve = IfcRationalBezierCurve;\n class IfcReinforcingElement extends IfcBuildingElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC2X32.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.type = 2320036040;\n }\n }\n IFC2X32.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcRoof extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 2016517767;\n }\n }\n IFC2X32.IfcRoof = IfcRoof;\n class IfcRoundedEdgeFeature extends IfcEdgeFeature {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength, Radius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.Radius = Radius;\n this.type = 1376911519;\n }\n }\n IFC2X32.IfcRoundedEdgeFeature = IfcRoundedEdgeFeature;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC2X32.IfcSensorType = IfcSensorType;\n class IfcSlab extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC2X32.IfcSlab = IfcSlab;\n class IfcStair extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ShapeType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ShapeType = ShapeType;\n this.type = 331165859;\n }\n }\n IFC2X32.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRiser, NumberOfTreads, RiserHeight, TreadLength) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRiser = NumberOfRiser;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.type = 4252922144;\n }\n }\n IFC2X32.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.type = 2515109513;\n }\n }\n IFC2X32.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC2X32.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 2347447852;\n }\n }\n IFC2X32.IfcTendonAnchor = IfcTendonAnchor;\n class IfcVibrationIsolatorType extends IfcDiscreteAccessoryType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC2X32.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2391406946;\n }\n }\n IFC2X32.IfcWall = IfcWall;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3512223829;\n }\n }\n IFC2X32.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWindow extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.type = 3304561284;\n }\n }\n IFC2X32.IfcWindow = IfcWindow;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC2X32.IfcActuatorType = IfcActuatorType;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC2X32.IfcAlarmType = IfcAlarmType;\n class IfcBeam extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 753842376;\n }\n }\n IFC2X32.IfcBeam = IfcBeam;\n class IfcChamferEdgeFeature extends IfcEdgeFeature {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength, Width, Height) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, FeatureLength);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.FeatureLength = FeatureLength;\n this.Width = Width;\n this.Height = Height;\n this.type = 2454782716;\n }\n }\n IFC2X32.IfcChamferEdgeFeature = IfcChamferEdgeFeature;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC2X32.IfcControllerType = IfcControllerType;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1052013943;\n }\n }\n IFC2X32.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, ControlElementId) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.ControlElementId = ControlElementId;\n this.type = 1062813311;\n }\n }\n IFC2X32.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcElectricDistributionPoint extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, DistributionPointFunction, UserDefinedFunction) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.DistributionPointFunction = DistributionPointFunction;\n this.UserDefinedFunction = UserDefinedFunction;\n this.type = 3700593921;\n }\n }\n IFC2X32.IfcElectricDistributionPoint = IfcElectricDistributionPoint;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, BarRole, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarRole = BarRole;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC2X32.IfcReinforcingBar = IfcReinforcingBar;\n})(IFC2X3 || (IFC2X3 = {}));\nSchemaNames[2] = [\"IFC4\", \"IFC4X1\", \"IFC4X2\"];\nFromRawLineData[2] = {\n 3630933823: (v) => new IFC4.IfcActorRole(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC4.IfcAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 639542469: (v) => new IFC4.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), new IFC4.IfcLabel(!v[2] ? null : v[2].value), new IFC4.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => {\n var _a;\n return new IFC4.IfcAppliedValue(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 130549933: (v) => new IFC4.IfcApproval(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 4037036970: (v) => new IFC4.IfcBoundaryCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC4.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6])),\n 3367102660: (v) => new IFC4.IfcBoundaryFaceCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3])),\n 1387855156: (v) => new IFC4.IfcBoundaryNodeCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6])),\n 2069777674: (v) => new IFC4.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(2, v[1]), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : TypeInitialiser(2, v[5]), !v[6] ? null : TypeInitialiser(2, v[6]), !v[7] ? null : TypeInitialiser(2, v[7])),\n 2859738748: (_) => new IFC4.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC4.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2732653382: (v) => new IFC4.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 775493141: (v) => new IFC4.IfcConnectionVolumeGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC4.IfcConstraint(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value)),\n 1785450214: (v) => new IFC4.IfcCoordinateOperation(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1466758467: (v) => new IFC4.IfcCoordinateReferenceSystem(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value)),\n 602808272: (v) => {\n var _a;\n return new IFC4.IfcCostValue(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1765591967: (v) => {\n var _a;\n return new IFC4.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1045800335: (v) => new IFC4.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC4.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 4294318154: (_) => new IFC4.IfcExternalInformation(),\n 3200245327: (v) => new IFC4.IfcExternalReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC4.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC4.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC4.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC4.IfcGridAxis(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC4.IfcIrregularTimeSeriesValue(new IFC4.IfcDateTime(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 2655187982: (v) => new IFC4.IfcLibraryInformation(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcURIReference(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcText(!v[5] ? null : v[5].value)),\n 3452421091: (v) => new IFC4.IfcLibraryReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLanguageId(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC4.IfcLightDistributionData(new IFC4.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC4.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3057273783: (v) => new IFC4.IfcMapConversion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcReal(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcReal(!v[7] ? null : v[7].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC4.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 760658860: (_) => new IFC4.IfcMaterialDefinition(),\n 248100487: (v) => new IFC4.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC4.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value));\n },\n 1847252529: (v) => new IFC4.IfcMaterialLayerWithOffsets(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value), v[7], new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC4.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2235152071: (v) => new IFC4.IfcMaterialProfile(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 164193824: (v) => {\n var _a;\n return new IFC4.IfcMaterialProfileSet(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 552965576: (v) => new IFC4.IfcMaterialProfileWithOffsets(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), new IFC4.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1507914824: (_) => new IFC4.IfcMaterialUsageDefinition(),\n 2597039031: (v) => new IFC4.IfcMeasureWithUnit(TypeInitialiser(2, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 3368373690: (v) => new IFC4.IfcMetric(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2706619895: (v) => new IFC4.IfcMonetaryUnit(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1918398963: (v) => new IFC4.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (_) => new IFC4.IfcObjectPlacement(),\n 2251480897: (v) => {\n var _a;\n return new IFC4.IfcObjective(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8], v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 4251960020: (v) => {\n var _a, _b;\n return new IFC4.IfcOrganization(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC4.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC4.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4.IfcPerson(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC4.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC4.IfcPhysicalQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC4.IfcPhysicalSimpleQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC4.IfcPostalAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value));\n },\n 677532197: (_) => new IFC4.IfcPresentationItem(),\n 2022622350: (v) => {\n var _a;\n return new IFC4.IfcPresentationLayerAssignment(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC4.IfcPresentationLayerWithStyle(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC4.IfcPresentationStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2417041796: (v) => {\n var _a;\n return new IFC4.IfcPresentationStyleAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2095639259: (v) => {\n var _a;\n return new IFC4.IfcProductRepresentation(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958567839: (v) => new IFC4.IfcProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value)),\n 3843373140: (v) => new IFC4.IfcProjectedCRS(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 986844984: (_) => new IFC4.IfcPropertyAbstraction(),\n 3710013099: (v) => {\n var _a;\n return new IFC4.IfcPropertyEnumeration(new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC4.IfcQuantityArea(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcAreaMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2093928680: (v) => new IFC4.IfcQuantityCount(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcCountMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 931644368: (v) => new IFC4.IfcQuantityLength(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3252649465: (v) => new IFC4.IfcQuantityTime(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcTimeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2405470396: (v) => new IFC4.IfcQuantityVolume(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcVolumeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 825690147: (v) => new IFC4.IfcQuantityWeight(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcMassMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3915482550: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcRecurrencePattern(v[0], !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcDayInMonthNumber(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcDayInWeekNumber(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcMonthInYearNumber(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcInteger(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcInteger(!v[6] ? null : v[6].value), !v[7] ? null : ((_d = v[7]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2433181523: (v) => {\n var _a;\n return new IFC4.IfcReference(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 1076942058: (v) => {\n var _a;\n return new IFC4.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC4.IfcRepresentationContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC4.IfcRepresentationItem(),\n 1660063152: (v) => new IFC4.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2439245199: (v) => new IFC4.IfcResourceLevelRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2341007311: (v) => new IFC4.IfcRoot(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC4.IfcSIUnit(v[0], v[1], v[2]),\n 1054537805: (v) => new IFC4.IfcSchedulingTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 867548509: (v) => {\n var _a;\n return new IFC4.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), new IFC4.IfcLogical(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC4.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC4.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2273995522: (v) => new IFC4.IfcStructuralConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC4.IfcStructuralLoad(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3478079324: (v) => {\n var _a, _b;\n return new IFC4.IfcStructuralLoadConfiguration(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 609421318: (v) => new IFC4.IfcStructuralLoadOrResult(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC4.IfcStructuralLoadStatic(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC4.IfcStructuralLoadTemperature(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC4.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC4.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC4.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2934153892: (v) => {\n var _a, _b;\n return new IFC4.IfcSurfaceReinforcementArea(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcRatioMeasure(!v[3] ? null : v[3].value));\n },\n 1300840506: (v) => {\n var _a;\n return new IFC4.IfcSurfaceStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC4.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC4.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC4.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC4.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC4.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => {\n var _a;\n return new IFC4.IfcSurfaceTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || []);\n },\n 985171141: (v) => {\n var _a, _b;\n return new IFC4.IfcTable(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2043862942: (v) => new IFC4.IfcTableColumn(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 531007025: (v) => {\n var _a;\n return new IFC4.IfcTableRow(!v[0] ? null : ((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[1] ? null : new IFC4.IfcBoolean(!v[1] ? null : v[1].value));\n },\n 1549132990: (v) => new IFC4.IfcTaskTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value)),\n 2771591690: (v) => new IFC4.IfcTaskTimeRecurring(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value), new Handle(!v[20] ? null : v[20].value)),\n 912023232: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcTelecomAddress(v[0], !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcURIReference(!v[7] ? null : v[7].value), !v[8] ? null : ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcURIReference(p.value) : null)) || []);\n },\n 1447204868: (v) => new IFC4.IfcTextStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcBoolean(!v[4] ? null : v[4].value)),\n 2636378356: (v) => new IFC4.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC4.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(2, v[0]), !v[1] ? null : new IFC4.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : TypeInitialiser(2, v[4]), !v[5] ? null : new IFC4.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(2, v[6])),\n 280115917: (v) => {\n var _a;\n return new IFC4.IfcTextureCoordinate(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1742049831: (v) => {\n var _a, _b;\n return new IFC4.IfcTextureCoordinateGenerator(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 2552916305: (v) => {\n var _a, _b;\n return new IFC4.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[2] ? null : v[2].value));\n },\n 1210645708: (v) => {\n var _a;\n return new IFC4.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || []);\n },\n 3611470254: (v) => {\n var _a;\n return new IFC4.IfcTextureVertexList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcParameterValue(p2.value) : null)) || []));\n },\n 1199560280: (v) => new IFC4.IfcTimePeriod(new IFC4.IfcTime(!v[0] ? null : v[0].value), new IFC4.IfcTime(!v[1] ? null : v[1].value)),\n 3101149627: (v) => new IFC4.IfcTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 581633288: (v) => {\n var _a;\n return new IFC4.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 1377556343: (_) => new IFC4.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC4.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC4.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC4.IfcVertex(),\n 1907098498: (v) => new IFC4.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC4.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1236880293: (v) => new IFC4.IfcWorkTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDate(!v[5] ? null : v[5].value)),\n 3869604511: (v) => {\n var _a;\n return new IFC4.IfcApprovalRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3798115385: (v) => new IFC4.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC4.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC4.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => {\n var _a;\n return new IFC4.IfcBlobTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcBinary(!v[6] ? null : v[6].value));\n },\n 3150382593: (v) => new IFC4.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 747523909: (v) => {\n var _a;\n return new IFC4.IfcClassification(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcDate(!v[2] ? null : v[2].value), new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcURIReference(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || []);\n },\n 647927063: (v) => new IFC4.IfcClassificationReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3285139300: (v) => {\n var _a;\n return new IFC4.IfcColourRgbList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcNormalisedRatioMeasure(p2.value) : null)) || []));\n },\n 3264961684: (v) => new IFC4.IfcColourSpecification(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1485152156: (v) => {\n var _a;\n return new IFC4.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC4.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC4.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC4.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC4.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC4.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2713554722: (v) => new IFC4.IfcConversionBasedUnitWithOffset(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4.IfcReal(!v[4] ? null : v[4].value)),\n 539742890: (v) => new IFC4.IfcCurrencyRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3800577675: (v) => new IFC4.IfcCurveStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcBoolean(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC4.IfcCurveStyleFont(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC4.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC4.IfcCurveStyleFontPattern(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3632507154: (v) => new IFC4.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 1154170062: (v) => {\n var _a;\n return new IFC4.IfcDocumentInformation(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcURIReference(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcIdentifier(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcDate(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDate(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC4.IfcDocumentInformationRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value));\n },\n 3732053477: (v) => new IFC4.IfcDocumentReference(!v[0] ? null : new IFC4.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 3900360178: (v) => new IFC4.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC4.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcBoolean(!v[3] ? null : v[3].value)),\n 211053100: (v) => new IFC4.IfcEventTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcDateTime(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value)),\n 297599258: (v) => {\n var _a;\n return new IFC4.IfcExtendedProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1437805879: (v) => {\n var _a;\n return new IFC4.IfcExternalReferenceRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2556980723: (v) => {\n var _a;\n return new IFC4.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC4.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 803316827: (v) => new IFC4.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 3008276851: (v) => {\n var _a;\n return new IFC4.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4219587988: (v) => new IFC4.IfcFailureConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC4.IfcFillAreaStyle(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3448662350: (v) => new IFC4.IfcGeometricRepresentationContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new IFC4.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC4.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC4.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcPositiveRatioMeasure(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC4.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC4.IfcGridPlacement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 812098782: (v) => new IFC4.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 3905492369: (v) => {\n var _a;\n return new IFC4.IfcImageTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcURIReference(!v[5] ? null : v[5].value));\n },\n 3570813810: (v) => {\n var _a;\n return new IFC4.IfcIndexedColourMap(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1437953363: (v) => {\n var _a;\n return new IFC4.IfcIndexedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value));\n },\n 2133299955: (v) => {\n var _a, _b;\n return new IFC4.IfcIndexedTriangleTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3741457305: (v) => {\n var _a;\n return new IFC4.IfcIrregularTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1585845231: (v) => new IFC4.IfcLagTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), TypeInitialiser(2, v[3]), v[4]),\n 1402838566: (v) => new IFC4.IfcLightSource(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC4.IfcLightSourceAmbient(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC4.IfcLightSourceDirectional(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC4.IfcLightSourceGoniometric(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC4.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC4.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC4.IfcLightSourcePositional(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcReal(!v[6] ? null : v[6].value), new IFC4.IfcReal(!v[7] ? null : v[7].value), new IFC4.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC4.IfcLightSourceSpot(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcReal(!v[6] ? null : v[6].value), new IFC4.IfcReal(!v[7] ? null : v[7].value), new IFC4.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcReal(!v[10] ? null : v[10].value), new IFC4.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC4.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 2624227202: (v) => new IFC4.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC4.IfcLoop(),\n 2347385850: (v) => new IFC4.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1838606355: (v) => new IFC4.IfcMaterial(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value)),\n 3708119e3: (v) => new IFC4.IfcMaterialConstituent(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 2852063980: (v) => {\n var _a;\n return new IFC4.IfcMaterialConstituentSet(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2022407955: (v) => {\n var _a;\n return new IFC4.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1303795690: (v) => new IFC4.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3079605661: (v) => new IFC4.IfcMaterialProfileSetUsage(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3404854881: (v) => new IFC4.IfcMaterialProfileSetUsageTapering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcCardinalPointReference(!v[4] ? null : v[4].value)),\n 3265635763: (v) => {\n var _a;\n return new IFC4.IfcMaterialProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 853536259: (v) => {\n var _a;\n return new IFC4.IfcMaterialRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value));\n },\n 2998442950: (v) => new IFC4.IfcMirroredProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLabel(!v[3] ? null : v[3].value)),\n 219451334: (v) => new IFC4.IfcObjectDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2665983363: (v) => {\n var _a;\n return new IFC4.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC4.IfcOrganizationRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC4.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value)),\n 2529465313: (v) => new IFC4.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC4.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC4.IfcPhysicalComplexQuantity(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a, _b;\n return new IFC4.IfcPixelTexture(new IFC4.IfcBoolean(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcIdentifier(p.value) : null)) || [], new IFC4.IfcInteger(!v[5] ? null : v[5].value), new IFC4.IfcInteger(!v[6] ? null : v[6].value), new IFC4.IfcInteger(!v[7] ? null : v[7].value), ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcBinary(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC4.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC4.IfcPlanarExtent(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC4.IfcPoint(),\n 4022376103: (v) => new IFC4.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC4.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC4.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC4.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3727388367: (v) => new IFC4.IfcPreDefinedItem(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3778827333: (_) => new IFC4.IfcPreDefinedProperties(),\n 1775413392: (v) => new IFC4.IfcPreDefinedTextFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC4.IfcProductDefinitionShape(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802850158: (v) => {\n var _a;\n return new IFC4.IfcProfileProperties(!v[0] ? null : new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 2598011224: (v) => new IFC4.IfcProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 1680319473: (v) => new IFC4.IfcPropertyDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 148025276: (v) => new IFC4.IfcPropertyDependencyRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value)),\n 3357820518: (v) => new IFC4.IfcPropertySetDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1482703590: (v) => new IFC4.IfcPropertyTemplateDefinition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2090586900: (v) => new IFC4.IfcQuantitySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 3615266464: (v) => new IFC4.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC4.IfcRegularTimeSeries(new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcDateTime(!v[2] ? null : v[2].value), new IFC4.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC4.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1580146022: (v) => new IFC4.IfcReinforcementBarProperties(new IFC4.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 478536968: (v) => new IFC4.IfcRelationship(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 2943643501: (v) => {\n var _a;\n return new IFC4.IfcResourceApprovalRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1608871552: (v) => {\n var _a;\n return new IFC4.IfcResourceConstraintRelationship(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1042787934: (v) => new IFC4.IfcResourceTime(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcDuration(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDuration(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveRatioMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcDateTime(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcPositiveRatioMeasure(!v[17] ? null : v[17].value)),\n 2778083089: (v) => new IFC4.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 2042790032: (v) => new IFC4.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC4.IfcSectionReinforcementProperties(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1509187699: (v) => {\n var _a, _b;\n return new IFC4.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4124623270: (v) => {\n var _a;\n return new IFC4.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC4.IfcSimpleProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value)),\n 2609359061: (v) => new IFC4.IfcSlippageConnectionCondition(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC4.IfcSolidModel(),\n 1595516126: (v) => new IFC4.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC4.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC4.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC4.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC4.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC4.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 2233826070: (v) => new IFC4.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC4.IfcSurface(),\n 1878645084: (v) => new IFC4.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(2, v[7]), v[8]),\n 2247615214: (v) => new IFC4.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC4.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value)),\n 1096409881: (v) => new IFC4.IfcSweptDiskSolidPolygonal(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 230924584: (v) => new IFC4.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC4.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value)),\n 901063453: (_) => new IFC4.IfcTessellatedItem(),\n 4282788508: (v) => new IFC4.IfcTextLiteral(new IFC4.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC4.IfcTextLiteralWithExtent(new IFC4.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC4.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC4.IfcTextStyleFontModel(new IFC4.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC4.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(2, v[5]));\n },\n 2715220739: (v) => new IFC4.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC4.IfcTypeObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3736923433: (v) => {\n var _a;\n return new IFC4.IfcTypeProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC4.IfcTypeProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value));\n },\n 3698973494: (v) => {\n var _a;\n return new IFC4.IfcTypeResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 427810014: (v) => new IFC4.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 1417489154: (v) => new IFC4.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC4.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 1299126871: (v) => {\n var _a, _b;\n return new IFC4.IfcWindowStyle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], new IFC4.IfcBoolean(!v[10] ? null : v[10].value), new IFC4.IfcBoolean(!v[11] ? null : v[11].value));\n },\n 2543172580: (v) => new IFC4.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value)),\n 3406155212: (v) => {\n var _a;\n return new IFC4.IfcAdvancedFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC4.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3207858831: (v) => new IFC4.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPlaneAngleMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcPlaneAngleMeasure(!v[14] ? null : v[14].value)),\n 4261334040: (v) => new IFC4.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC4.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC4.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC4.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC4.IfcBoundedSurface(),\n 2581212453: (v) => new IFC4.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC4.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC4.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC4.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcLengthMeasure(p.value) : null)) || []);\n },\n 574549367: (_) => new IFC4.IfcCartesianPointList(),\n 1675464909: (v) => {\n var _a;\n return new IFC4.IfcCartesianPointList2D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 2059837836: (v) => {\n var _a;\n return new IFC4.IfcCartesianPointList3D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 59481748: (v) => new IFC4.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value)),\n 3749851601: (v) => new IFC4.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value)),\n 3486308946: (v) => new IFC4.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcReal(!v[4] ? null : v[4].value)),\n 3331915920: (v) => new IFC4.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC4.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcReal(!v[6] ? null : v[6].value)),\n 1383045692: (v) => new IFC4.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC4.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 776857604: (v) => new IFC4.IfcColourRgb(!v[0] ? null : new IFC4.IfcLabel(!v[0] ? null : v[0].value), new IFC4.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC4.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC4.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC4.IfcComplexProperty(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), new IFC4.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC4.IfcCompositeCurveSegment(v[0], new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2574617495: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 3419103109: (v) => {\n var _a;\n return new IFC4.IfcContext(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 1815067380: (v) => {\n var _a, _b;\n return new IFC4.IfcCrewResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2506170314: (v) => new IFC4.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC4.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC4.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC4.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2629017746: (v) => {\n var _a;\n return new IFC4.IfcCurveBoundedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 32440307: (v) => {\n var _a;\n return new IFC4.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 526551008: (v) => {\n var _a, _b;\n return new IFC4.IfcDoorStyle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], new IFC4.IfcBoolean(!v[10] ? null : v[10].value), new IFC4.IfcBoolean(!v[11] ? null : v[11].value));\n },\n 1472233963: (v) => {\n var _a;\n return new IFC4.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC4.IfcElementQuantity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC4.IfcElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC4.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC4.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 4024345920: (v) => {\n var _a;\n return new IFC4.IfcEventType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcLabel(!v[11] ? null : v[11].value));\n },\n 477187591: (v) => new IFC4.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2804161546: (v) => new IFC4.IfcExtrudedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC4.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC4.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC4.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 315944413: (v) => {\n var _a, _b;\n return new IFC4.IfcFillAreaStyleTiles(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 2652556860: (v) => new IFC4.IfcFixedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC4.IfcFurnishingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC4.IfcFurnitureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10]);\n },\n 4095422895: (v) => {\n var _a, _b;\n return new IFC4.IfcGeographicElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC4.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC4.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 178912537: (v) => {\n var _a;\n return new IFC4.IfcIndexedPolygonalFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 2294589976: (v) => {\n var _a, _b;\n return new IFC4.IfcIndexedPolygonalFaceWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || [], (_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 572779678: (v) => new IFC4.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value)),\n 428585644: (v) => {\n var _a, _b;\n return new IFC4.IfcLaborResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1281925730: (v) => new IFC4.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC4.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC4.IfcObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 3388369263: (v) => new IFC4.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcLogical(!v[2] ? null : v[2].value)),\n 3505215534: (v) => new IFC4.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcLogical(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1682466193: (v) => new IFC4.IfcPcurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 603570806: (v) => new IFC4.IfcPlanarBox(new IFC4.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC4.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 759155922: (v) => new IFC4.IfcPreDefinedColour(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC4.IfcPreDefinedCurveFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 3967405729: (v) => new IFC4.IfcPreDefinedPropertySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 569719735: (v) => {\n var _a;\n return new IFC4.IfcProcedureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2945172077: (v) => new IFC4.IfcProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value)),\n 4208778838: (v) => new IFC4.IfcProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC4.IfcProject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 653396225: (v) => {\n var _a;\n return new IFC4.IfcProjectLibrary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 871118103: (v) => new IFC4.IfcPropertyBoundedValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : TypeInitialiser(2, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : TypeInitialiser(2, v[5])),\n 4166981789: (v) => {\n var _a;\n return new IFC4.IfcPropertyEnumeratedValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC4.IfcPropertyListValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC4.IfcPropertyReferenceValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1451395588: (v) => {\n var _a;\n return new IFC4.IfcPropertySet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 492091185: (v) => {\n var _a;\n return new IFC4.IfcPropertySetTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3650150729: (v) => new IFC4.IfcPropertySingleValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(2, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC4.IfcPropertyTableValue(new IFC4.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[4] ? null : new IFC4.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]);\n },\n 3521284610: (v) => new IFC4.IfcPropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 3219374653: (v) => new IFC4.IfcProxy(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 2770003689: (v) => new IFC4.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC4.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC4.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4.IfcParameterValue(!v[2] ? null : v[2].value), new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new IFC4.IfcBoolean(!v[5] ? null : v[5].value), new IFC4.IfcBoolean(!v[6] ? null : v[6].value)),\n 3765753017: (v) => {\n var _a;\n return new IFC4.IfcReinforcementDefinitionProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3939117080: (v) => {\n var _a;\n return new IFC4.IfcRelAssigns(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToActor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1027710054: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToGroupByFactor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), new IFC4.IfcRatioMeasure(!v[7] ? null : v[7].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToProcess(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToProduct(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC4.IfcRelAssignsToResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC4.IfcRelAssociates(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4095574036: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesApproval(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesClassification(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesConstraint(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesDocument(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesLibrary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC4.IfcRelAssociatesMaterial(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 826625072: (v) => new IFC4.IfcRelConnects(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC4.IfcRelConnectsElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC4.IfcRelConnectsPathElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC4.IfcRelConnectsPortToElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC4.IfcRelConnectsPorts(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC4.IfcRelConnectsStructuralActivity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC4.IfcRelConnectsStructuralMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC4.IfcRelConnectsWithEccentricity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC4.IfcRelConnectsWithRealizingElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC4.IfcRelContainedInSpatialStructure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC4.IfcRelCoversBldgElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC4.IfcRelCoversSpaces(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2565941209: (v) => {\n var _a;\n return new IFC4.IfcRelDeclares(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => new IFC4.IfcRelDecomposes(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 693640335: (v) => new IFC4.IfcRelDefines(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value)),\n 1462361463: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByObject(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4186316022: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 307848117: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC4.IfcRelDefinesByType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC4.IfcRelFillsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC4.IfcRelFlowControlElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 427948657: (v) => new IFC4.IfcRelInterferesElements(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : v[8].value),\n 3268803585: (v) => {\n var _a;\n return new IFC4.IfcRelNests(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC4.IfcRelProjectsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC4.IfcRelReferencedInSpatialStructure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4122056220: (v) => new IFC4.IfcRelSequence(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 366585022: (v) => {\n var _a;\n return new IFC4.IfcRelServicesBuildings(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC4.IfcRelSpaceBoundary(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 3523091289: (v) => new IFC4.IfcRelSpaceBoundary1stLevel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 1521410863: (v) => new IFC4.IfcRelSpaceBoundary2ndLevel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1401173127: (v) => new IFC4.IfcRelVoidsElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 816062949: (v) => new IFC4.IfcReparametrisedCompositeCurveSegment(v[0], new IFC4.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcParameterValue(!v[3] ? null : v[3].value)),\n 2914609552: (v) => new IFC4.IfcResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value)),\n 1856042241: (v) => new IFC4.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 3243963512: (v) => new IFC4.IfcRevolvedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4158566097: (v) => new IFC4.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC4.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3663146110: (v) => new IFC4.IfcSimplePropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value), v[11]),\n 1412071761: (v) => new IFC4.IfcSpatialElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value)),\n 710998568: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2706606064: (v) => new IFC4.IfcSpatialStructureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialStructureElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 463610769: (v) => new IFC4.IfcSpatialZone(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 2481509218: (v) => {\n var _a, _b;\n return new IFC4.IfcSpatialZoneType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 451544542: (v) => new IFC4.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 4015995234: (v) => new IFC4.IfcSphericalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3544373492: (v) => new IFC4.IfcStructuralActivity(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC4.IfcStructuralItem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC4.IfcStructuralMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC4.IfcStructuralReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC4.IfcStructuralSurfaceMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => new IFC4.IfcStructuralSurfaceMemberVarying(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 603775116: (v) => new IFC4.IfcStructuralSurfaceReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 4095615324: (v) => {\n var _a, _b;\n return new IFC4.IfcSubContractResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 699246055: (v) => {\n var _a;\n return new IFC4.IfcSurfaceCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2028607225: (v) => new IFC4.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcParameterValue(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC4.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC4.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC4.IfcSystemFurnitureElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3473067441: (v) => new IFC4.IfcTask(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), new IFC4.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcInteger(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), v[12]),\n 3206491090: (v) => {\n var _a;\n return new IFC4.IfcTaskType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 2387106220: (v) => new IFC4.IfcTessellatedFaceSet(new Handle(!v[0] ? null : v[0].value)),\n 1935646853: (v) => new IFC4.IfcToroidalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2097647324: (v) => {\n var _a, _b;\n return new IFC4.IfcTransportElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2916149573: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcTriangulatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : (_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcParameterValue(p2.value) : null)) || []), !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 336235671: (v) => new IFC4.IfcWindowLiningProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcLengthMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcLengthMeasure(!v[15] ? null : v[15].value)),\n 512836454: (v) => new IFC4.IfcWindowPanelProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2296667514: (v) => new IFC4.IfcActor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1635779807: (v) => new IFC4.IfcAdvancedBrep(new Handle(!v[0] ? null : v[0].value)),\n 2603310189: (v) => {\n var _a;\n return new IFC4.IfcAdvancedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1674181508: (v) => new IFC4.IfcAnnotation(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2887950389: (v) => {\n var _a;\n return new IFC4.IfcBSplineSurface(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value));\n },\n 167062518: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4.IfcBSplineSurfaceWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[11]);\n },\n 1334484129: (v) => new IFC4.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC4.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC4.IfcBoundedCurve(),\n 4031249490: (v) => new IFC4.IfcBuilding(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 1950629157: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3124254112: (v) => new IFC4.IfcBuildingStorey(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 2197970202: (v) => {\n var _a, _b;\n return new IFC4.IfcChimneyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2937912522: (v) => new IFC4.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC4.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3893394355: (v) => {\n var _a, _b;\n return new IFC4.IfcCivilElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 300633059: (v) => {\n var _a, _b;\n return new IFC4.IfcColumnType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3875453745: (v) => {\n var _a;\n return new IFC4.IfcComplexPropertyTemplate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC4.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 15328376: (v) => {\n var _a;\n return new IFC4.IfcCompositeCurveOnSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 2510884976: (v) => new IFC4.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2185764099: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionEquipmentResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 4105962743: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionMaterialResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1525564444: (v) => {\n var _a, _b;\n return new IFC4.IfcConstructionProductResourceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2559216714: (v) => {\n var _a;\n return new IFC4.IfcConstructionResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 3293443760: (v) => new IFC4.IfcControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3895139033: (v) => {\n var _a, _b;\n return new IFC4.IfcCostItem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1419761937: (v) => new IFC4.IfcCostSchedule(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDateTime(!v[9] ? null : v[9].value)),\n 1916426348: (v) => {\n var _a, _b;\n return new IFC4.IfcCoveringType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => {\n var _a;\n return new IFC4.IfcCrewResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1457835157: (v) => {\n var _a, _b;\n return new IFC4.IfcCurtainWallType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1213902940: (v) => new IFC4.IfcCylindricalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3256556792: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionFlowElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2963535650: (v) => new IFC4.IfcDoorLiningProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcLengthMeasure(!v[16] ? null : v[16].value)),\n 1714330368: (v) => new IFC4.IfcDoorPanelProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2323601079: (v) => {\n var _a, _b;\n return new IFC4.IfcDoorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value));\n },\n 445594917: (v) => new IFC4.IfcDraughtingPreDefinedColour(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC4.IfcDraughtingPreDefinedCurveFont(new IFC4.IfcLabel(!v[0] ? null : v[0].value)),\n 1758889154: (v) => new IFC4.IfcElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC4.IfcElementAssembly(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 2397081782: (v) => {\n var _a, _b;\n return new IFC4.IfcElementAssemblyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1623761950: (v) => new IFC4.IfcElementComponent(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC4.IfcElementComponentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC4.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC4.IfcEnergyConversionDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 132023988: (v) => {\n var _a, _b;\n return new IFC4.IfcEngineType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3174744832: (v) => {\n var _a, _b;\n return new IFC4.IfcEvaporativeCoolerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC4.IfcEvaporatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4148101412: (v) => new IFC4.IfcEvent(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2853485674: (v) => new IFC4.IfcExternalSpatialStructureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value)),\n 807026263: (v) => new IFC4.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC4.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 647756555: (v) => new IFC4.IfcFastener(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC4.IfcFastenerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2827207264: (v) => new IFC4.IfcFeatureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC4.IfcFeatureElementAddition(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC4.IfcFeatureElementSubtraction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowControllerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowMeterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowMovingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowStorageDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowTreatmentDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1893162501: (v) => {\n var _a, _b;\n return new IFC4.IfcFootingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 263784265: (v) => new IFC4.IfcFurnishingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1509553395: (v) => new IFC4.IfcFurniture(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3493046030: (v) => new IFC4.IfcGeographicElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcGrid(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[10]);\n },\n 2706460486: (v) => new IFC4.IfcGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC4.IfcHeatExchangerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC4.IfcHumidifierType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2571569899: (v) => {\n var _a;\n return new IFC4.IfcIndexedPolyCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || [], !v[2] ? null : new IFC4.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3946677679: (v) => {\n var _a, _b;\n return new IFC4.IfcInterceptorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3113134337: (v) => {\n var _a;\n return new IFC4.IfcIntersectionCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC4.IfcInventory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcDate(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC4.IfcJunctionBoxType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3827777499: (v) => {\n var _a;\n return new IFC4.IfcLaborResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1051575348: (v) => {\n var _a, _b;\n return new IFC4.IfcLampType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC4.IfcLightFixtureType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 377706215: (v) => new IFC4.IfcMechanicalFastener(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10]),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC4.IfcMechanicalFastenerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value));\n },\n 1114901282: (v) => {\n var _a, _b;\n return new IFC4.IfcMedicalDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC4.IfcMemberType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC4.IfcMotorConnectionType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4143007308: (v) => new IFC4.IfcOccupant(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC4.IfcOpeningElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3079942009: (v) => new IFC4.IfcOpeningStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC4.IfcOutletType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC4.IfcPerformanceHistory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcLabel(!v[6] ? null : v[6].value), v[7]),\n 3566463478: (v) => new IFC4.IfcPermeableCoveringProperties(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3327091369: (v) => new IFC4.IfcPermit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 1158309216: (v) => {\n var _a, _b;\n return new IFC4.IfcPileType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 804291784: (v) => {\n var _a, _b;\n return new IFC4.IfcPipeFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC4.IfcPipeSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC4.IfcPlateType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2839578677: (v) => {\n var _a, _b;\n return new IFC4.IfcPolygonalFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4.IfcBoolean(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcPositiveInteger(p.value) : null)) || []);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC4.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC4.IfcPort(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC4.IfcProcedure(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), v[7]),\n 2904328755: (v) => new IFC4.IfcProjectOrder(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 3651124850: (v) => new IFC4.IfcProjectionElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC4.IfcProtectiveDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC4.IfcPumpType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC4.IfcRailingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2324767716: (v) => {\n var _a, _b;\n return new IFC4.IfcRampFlightType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1469900589: (v) => {\n var _a, _b;\n return new IFC4.IfcRampType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 683857671: (v) => {\n var _a, _b, _c, _d, _e, _f;\n return new IFC4.IfcRationalBSplineSurfaceWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), new IFC4.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4.IfcLogical(!v[4] ? null : v[4].value), new IFC4.IfcLogical(!v[5] ? null : v[5].value), new IFC4.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[11], (_f = v[12]) == null ? void 0 : _f.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4.IfcReal(p2.value) : null)) || []));\n },\n 3027567501: (v) => new IFC4.IfcReinforcingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value)),\n 964333572: (v) => {\n var _a, _b;\n return new IFC4.IfcReinforcingElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2320036040: (v) => new IFC4.IfcReinforcingMesh(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcAreaMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), v[17]),\n 2310774935: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcReinforcingMeshType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4.IfcPositiveLengthMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4.IfcLabel(!v[18] ? null : v[18].value), !v[19] ? null : ((_c = v[19]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 160246688: (v) => {\n var _a;\n return new IFC4.IfcRelAggregates(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2781568857: (v) => {\n var _a, _b;\n return new IFC4.IfcRoofType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC4.IfcSanitaryTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2157484638: (v) => {\n var _a;\n return new IFC4.IfcSeamCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 4074543187: (v) => {\n var _a, _b;\n return new IFC4.IfcShadingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4097777520: (v) => new IFC4.IfcSite(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC4.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC4.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC4.IfcSlabType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1072016465: (v) => {\n var _a, _b;\n return new IFC4.IfcSolarDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC4.IfcSpace(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC4.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC4.IfcSpaceHeaterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3812236995: (v) => {\n var _a, _b;\n return new IFC4.IfcSpaceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcLabel(!v[10] ? null : v[10].value));\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC4.IfcStackTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC4.IfcStairFlightType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 338393293: (v) => {\n var _a, _b;\n return new IFC4.IfcStairType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC4.IfcStructuralAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value)),\n 1179482911: (v) => new IFC4.IfcStructuralConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1004757350: (v) => new IFC4.IfcStructuralCurveAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 4243806635: (v) => new IFC4.IfcStructuralCurveConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 214636428: (v) => new IFC4.IfcStructuralCurveMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2445595289: (v) => new IFC4.IfcStructuralCurveMemberVarying(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2757150158: (v) => new IFC4.IfcStructuralCurveReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 1807405624: (v) => new IFC4.IfcStructuralLinearAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1252848954: (v) => new IFC4.IfcStructuralLoadGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value)),\n 2082059205: (v) => new IFC4.IfcStructuralPointAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value)),\n 734778138: (v) => new IFC4.IfcStructuralPointConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1235345126: (v) => new IFC4.IfcStructuralPointReaction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC4.IfcStructuralResultGroup(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4.IfcBoolean(!v[7] ? null : v[7].value)),\n 3657597509: (v) => new IFC4.IfcStructuralSurfaceAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1975003073: (v) => new IFC4.IfcStructuralSurfaceConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => {\n var _a;\n return new IFC4.IfcSubContractResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 3101698114: (v) => new IFC4.IfcSurfaceFeature(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC4.IfcSwitchingDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC4.IfcSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value)),\n 413509423: (v) => new IFC4.IfcSystemFurnitureElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 5716631: (v) => {\n var _a, _b;\n return new IFC4.IfcTankType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3824725483: (v) => new IFC4.IfcTendon(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC4.IfcTendonAnchor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 3081323446: (v) => {\n var _a, _b;\n return new IFC4.IfcTendonAnchorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2415094496: (v) => {\n var _a, _b;\n return new IFC4.IfcTendonType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value));\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC4.IfcTransformerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1620046519: (v) => new IFC4.IfcTransportElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC4.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcBoolean(!v[3] ? null : v[3].value), v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC4.IfcTubeBundleType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC4.IfcUnitaryEquipmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC4.IfcValveType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391383451: (v) => new IFC4.IfcVibrationIsolator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC4.IfcVibrationIsolatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC4.IfcVirtualElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 926996030: (v) => new IFC4.IfcVoidingFeature(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC4.IfcWallType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC4.IfcWasteTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4009809668: (v) => {\n var _a, _b;\n return new IFC4.IfcWindowType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value));\n },\n 4088093105: (v) => {\n var _a, _b;\n return new IFC4.IfcWorkCalendar(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC4.IfcWorkControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC4.IfcWorkPlan(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 3342526732: (v) => {\n var _a;\n return new IFC4.IfcWorkSchedule(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcDuration(!v[10] ? null : v[10].value), new IFC4.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 1033361043: (v) => new IFC4.IfcZone(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value)),\n 3821786052: (v) => new IFC4.IfcActionRequest(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcText(!v[8] ? null : v[8].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC4.IfcAirTerminalBoxType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC4.IfcAirTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC4.IfcAirToAirHeatRecoveryType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3460190687: (v) => new IFC4.IfcAsset(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcDate(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 1532957894: (v) => {\n var _a, _b;\n return new IFC4.IfcAudioVisualApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1967976161: (v) => {\n var _a;\n return new IFC4.IfcBSplineCurve(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value));\n },\n 2461110595: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcBSplineCurveWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[7]);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC4.IfcBeamType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC4.IfcBoilerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1136057603: (v) => {\n var _a;\n return new IFC4.IfcBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3299480353: (v) => new IFC4.IfcBuildingElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2979338954: (v) => new IFC4.IfcBuildingElementPart(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 39481116: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementPartType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1095909175: (v) => new IFC4.IfcBuildingElementProxy(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1909888760: (v) => {\n var _a, _b;\n return new IFC4.IfcBuildingElementProxyType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1177604601: (v) => new IFC4.IfcBuildingSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4.IfcLabel(!v[6] ? null : v[6].value)),\n 2188180465: (v) => {\n var _a, _b;\n return new IFC4.IfcBurnerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC4.IfcCableCarrierFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC4.IfcCableCarrierSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2674252688: (v) => {\n var _a, _b;\n return new IFC4.IfcCableFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC4.IfcCableSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC4.IfcChillerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3296154744: (v) => new IFC4.IfcChimney(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2611217952: (v) => new IFC4.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC4.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1677625105: (v) => new IFC4.IfcCivilElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC4.IfcCoilType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC4.IfcColumn(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 905975707: (v) => new IFC4.IfcColumnStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 400855858: (v) => {\n var _a, _b;\n return new IFC4.IfcCommunicationsApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3850581409: (v) => {\n var _a, _b;\n return new IFC4.IfcCompressorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC4.IfcCondenserType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3898045240: (v) => {\n var _a;\n return new IFC4.IfcConstructionEquipmentResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1060000209: (v) => {\n var _a;\n return new IFC4.IfcConstructionMaterialResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 488727124: (v) => {\n var _a;\n return new IFC4.IfcConstructionProductResource(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 335055490: (v) => {\n var _a, _b;\n return new IFC4.IfcCooledBeamType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC4.IfcCoolingTowerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1973544240: (v) => new IFC4.IfcCovering(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC4.IfcCurtainWall(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC4.IfcDamperType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1335981549: (v) => new IFC4.IfcDiscreteAccessory(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC4.IfcDiscreteAccessoryType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionChamberElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC4.IfcDistributionControlElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC4.IfcDistributionElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC4.IfcDistributionFlowElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC4.IfcDistributionPort(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], v[9]),\n 3205830791: (v) => new IFC4.IfcDistributionSystem(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 395920057: (v) => new IFC4.IfcDoor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 3242481149: (v) => new IFC4.IfcDoorStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctFittingType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctSegmentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC4.IfcDuctSilencerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 663422040: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricApplianceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2417008758: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricDistributionBoardType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricFlowStorageDeviceType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricGeneratorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricMotorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC4.IfcElectricTimeControlType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1658829314: (v) => new IFC4.IfcEnergyConversionDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2814081492: (v) => new IFC4.IfcEngine(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3747195512: (v) => new IFC4.IfcEvaporativeCooler(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 484807127: (v) => new IFC4.IfcEvaporator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1209101575: (v) => new IFC4.IfcExternalSpatialElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 346874300: (v) => {\n var _a, _b;\n return new IFC4.IfcFanType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC4.IfcFilterType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC4.IfcFireSuppressionTerminalType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC4.IfcFlowController(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC4.IfcFlowFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC4.IfcFlowInstrumentType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188021234: (v) => new IFC4.IfcFlowMeter(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3132237377: (v) => new IFC4.IfcFlowMovingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC4.IfcFlowSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC4.IfcFlowStorageDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC4.IfcFlowTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC4.IfcFlowTreatmentDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC4.IfcFooting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3319311131: (v) => new IFC4.IfcHeatExchanger(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2068733104: (v) => new IFC4.IfcHumidifier(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4175244083: (v) => new IFC4.IfcInterceptor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2176052936: (v) => new IFC4.IfcJunctionBox(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 76236018: (v) => new IFC4.IfcLamp(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 629592764: (v) => new IFC4.IfcLightFixture(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1437502449: (v) => new IFC4.IfcMedicalDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC4.IfcMember(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1911478936: (v) => new IFC4.IfcMemberStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2474470126: (v) => new IFC4.IfcMotorConnection(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 144952367: (v) => {\n var _a;\n return new IFC4.IfcOuterBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3694346114: (v) => new IFC4.IfcOutlet(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1687234759: (v) => new IFC4.IfcPile(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 310824031: (v) => new IFC4.IfcPipeFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3612865200: (v) => new IFC4.IfcPipeSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3171933400: (v) => new IFC4.IfcPlate(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1156407060: (v) => new IFC4.IfcPlateStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 738039164: (v) => new IFC4.IfcProtectiveDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 655969474: (v) => {\n var _a, _b;\n return new IFC4.IfcProtectiveDeviceTrippingUnitType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 90941305: (v) => new IFC4.IfcPump(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2262370178: (v) => new IFC4.IfcRailing(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC4.IfcRamp(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC4.IfcRampFlight(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1232101972: (v) => {\n var _a, _b, _c, _d;\n return new IFC4.IfcRationalBSplineCurveWithKnots(new IFC4.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4.IfcLogical(!v[3] ? null : v[3].value), new IFC4.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcParameterValue(p.value) : null)) || [], v[7], ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcReal(p.value) : null)) || []);\n },\n 979691226: (v) => new IFC4.IfcReinforcingBar(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13]),\n 2572171363: (v) => {\n var _a, _b, _c;\n return new IFC4.IfcReinforcingBarType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC4.IfcLabel(!v[14] ? null : v[14].value), !v[15] ? null : ((_c = v[15]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(2, p) : null)) || []);\n },\n 2016517767: (v) => new IFC4.IfcRoof(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3053780830: (v) => new IFC4.IfcSanitaryTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC4.IfcSensorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1329646415: (v) => new IFC4.IfcShadingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1529196076: (v) => new IFC4.IfcSlab(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3127900445: (v) => new IFC4.IfcSlabElementedCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3027962421: (v) => new IFC4.IfcSlabStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3420628829: (v) => new IFC4.IfcSolarDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1999602285: (v) => new IFC4.IfcSpaceHeater(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1404847402: (v) => new IFC4.IfcStackTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC4.IfcStair(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC4.IfcStairFlight(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcInteger(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcInteger(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12]),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC4.IfcStructuralAnalysisModel(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 385403989: (v) => {\n var _a;\n return new IFC4.IfcStructuralLoadCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : ((_a = v[10]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4.IfcRatioMeasure(p.value) : null)) || []);\n },\n 1621171031: (v) => new IFC4.IfcStructuralPlanarAction(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1162798199: (v) => new IFC4.IfcSwitchingDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 812556717: (v) => new IFC4.IfcTank(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3825984169: (v) => new IFC4.IfcTransformer(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3026737570: (v) => new IFC4.IfcTubeBundle(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3179687236: (v) => {\n var _a, _b;\n return new IFC4.IfcUnitaryControlElementType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4292641817: (v) => new IFC4.IfcUnitaryEquipment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4207607924: (v) => new IFC4.IfcValve(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2391406946: (v) => new IFC4.IfcWall(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4156078855: (v) => new IFC4.IfcWallElementedCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3512223829: (v) => new IFC4.IfcWallStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4237592921: (v) => new IFC4.IfcWasteTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3304561284: (v) => new IFC4.IfcWindow(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 486154966: (v) => new IFC4.IfcWindowStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4.IfcLabel(!v[12] ? null : v[12].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC4.IfcActuatorType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634111441: (v) => new IFC4.IfcAirTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 177149247: (v) => new IFC4.IfcAirTerminalBox(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2056796094: (v) => new IFC4.IfcAirToAirHeatRecovery(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3001207471: (v) => {\n var _a, _b;\n return new IFC4.IfcAlarmType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 277319702: (v) => new IFC4.IfcAudioVisualAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 753842376: (v) => new IFC4.IfcBeam(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2906023776: (v) => new IFC4.IfcBeamStandardCase(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 32344328: (v) => new IFC4.IfcBoiler(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2938176219: (v) => new IFC4.IfcBurner(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 635142910: (v) => new IFC4.IfcCableCarrierFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3758799889: (v) => new IFC4.IfcCableCarrierSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1051757585: (v) => new IFC4.IfcCableFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4217484030: (v) => new IFC4.IfcCableSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3902619387: (v) => new IFC4.IfcChiller(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 639361253: (v) => new IFC4.IfcCoil(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3221913625: (v) => new IFC4.IfcCommunicationsAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3571504051: (v) => new IFC4.IfcCompressor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2272882330: (v) => new IFC4.IfcCondenser(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 578613899: (v) => {\n var _a, _b;\n return new IFC4.IfcControllerType(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4136498852: (v) => new IFC4.IfcCooledBeam(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3640358203: (v) => new IFC4.IfcCoolingTower(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4074379575: (v) => new IFC4.IfcDamper(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1052013943: (v) => new IFC4.IfcDistributionChamberElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 562808652: (v) => new IFC4.IfcDistributionCircuit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 1062813311: (v) => new IFC4.IfcDistributionControlElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value)),\n 342316401: (v) => new IFC4.IfcDuctFitting(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3518393246: (v) => new IFC4.IfcDuctSegment(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1360408905: (v) => new IFC4.IfcDuctSilencer(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1904799276: (v) => new IFC4.IfcElectricAppliance(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 862014818: (v) => new IFC4.IfcElectricDistributionBoard(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3310460725: (v) => new IFC4.IfcElectricFlowStorageDevice(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 264262732: (v) => new IFC4.IfcElectricGenerator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 402227799: (v) => new IFC4.IfcElectricMotor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1003880860: (v) => new IFC4.IfcElectricTimeControl(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3415622556: (v) => new IFC4.IfcFan(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 819412036: (v) => new IFC4.IfcFilter(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1426591983: (v) => new IFC4.IfcFireSuppressionTerminal(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 182646315: (v) => new IFC4.IfcFlowInstrument(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2295281155: (v) => new IFC4.IfcProtectiveDeviceTrippingUnit(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4086658281: (v) => new IFC4.IfcSensor(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 630975310: (v) => new IFC4.IfcUnitaryControlElement(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4288193352: (v) => new IFC4.IfcActuator(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3087945054: (v) => new IFC4.IfcAlarm(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 25142252: (v) => new IFC4.IfcController(new IFC4.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4.IfcIdentifier(!v[7] ? null : v[7].value), v[8])\n};\nInheritanceDef[2] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 411424972: [IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONVOLUMEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 1785450214: [IFCMAPCONVERSION],\n 1466758467: [IFCPROJECTEDCRS],\n 4294318154: [IFCDOCUMENTINFORMATION, IFCCLASSIFICATION, IFCLIBRARYINFORMATION],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 760658860: [IFCMATERIALCONSTITUENTSET, IFCMATERIALCONSTITUENT, IFCMATERIAL, IFCMATERIALPROFILESET, IFCMATERIALPROFILEWITHOFFSETS, IFCMATERIALPROFILE, IFCMATERIALLAYERSET, IFCMATERIALLAYERWITHOFFSETS, IFCMATERIALLAYER],\n 248100487: [IFCMATERIALLAYERWITHOFFSETS],\n 2235152071: [IFCMATERIALPROFILEWITHOFFSETS],\n 1507914824: [IFCMATERIALPROFILESETUSAGETAPERING, IFCMATERIALPROFILESETUSAGE, IFCMATERIALLAYERSETUSAGE],\n 1918398963: [IFCCONVERSIONBASEDUNITWITHOFFSET, IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 677532197: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDITEM, IFCINDEXEDCOLOURMAP, IFCCURVESTYLEFONTPATTERN, IFCCURVESTYLEFONTANDSCALING, IFCCURVESTYLEFONT, IFCCOLOURRGB, IFCCOLOURSPECIFICATION, IFCCOLOURRGBLIST, IFCTEXTUREVERTEXLIST, IFCTEXTUREVERTEX, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR, IFCTEXTURECOORDINATE, IFCTEXTSTYLETEXTMODEL, IFCTEXTSTYLEFORDEFINEDFONT, IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE, IFCSURFACETEXTURE, IFCSURFACESTYLEWITHTEXTURES, IFCSURFACESTYLERENDERING, IFCSURFACESTYLESHADING, IFCSURFACESTYLEREFRACTION, IFCSURFACESTYLELIGHTING],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCMIRROREDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 986844984: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY, IFCPROPERTY, IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES, IFCPREDEFINEDPROPERTIES, IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES, IFCEXTENDEDPROPERTIES, IFCPROPERTYENUMERATION],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCSTYLEDITEM],\n 2439245199: [IFCRESOURCECONSTRAINTRELATIONSHIP, IFCRESOURCEAPPROVALRELATIONSHIP, IFCPROPERTYDEPENDENCYRELATIONSHIP, IFCORGANIZATIONRELATIONSHIP, IFCMATERIALRELATIONSHIP, IFCEXTERNALREFERENCERELATIONSHIP, IFCDOCUMENTINFORMATIONRELATIONSHIP, IFCCURRENCYRELATIONSHIP, IFCAPPROVALRELATIONSHIP],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 1054537805: [IFCRESOURCETIME, IFCLAGTIME, IFCEVENTTIME, IFCWORKTIME, IFCTASKTIMERECURRING, IFCTASKTIME],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC, IFCSTRUCTURALLOADORRESULT, IFCSTRUCTURALLOADCONFIGURATION],\n 609421318: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 1549132990: [IFCTASKTIMERECURRING],\n 280115917: [IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 3264961684: [IFCCOLOURRGB],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 2889183280: [IFCCONVERSIONBASEDUNITWITHOFFSET],\n 3632507154: [IFCMIRROREDPROFILEDEF],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 297599258: [IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES],\n 2556980723: [IFCADVANCEDFACE, IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 3008276851: [IFCADVANCEDFACE],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1437953363: [IFCINDEXEDTRIANGLETEXTUREMAP],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 3079605661: [IFCMATERIALPROFILESETUSAGETAPERING],\n 219451334: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT],\n 3778827333: [IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES],\n 1775413392: [IFCTEXTSTYLEFONTMODEL],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1680319473: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET],\n 1482703590: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE],\n 2090586900: [IFCELEMENTQUANTITY],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 723233188: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 2513912981: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCSURFACECURVESWEPTAREASOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID],\n 1260650574: [IFCSWEPTDISKSOLIDPOLYGONAL],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 901063453: [IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS],\n 3736923433: [IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE],\n 2347495698: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCDOORSTYLE, IFCWINDOWSTYLE],\n 3698973494: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 574549367: [IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2485617015: [IFCREPARAMETRISEDCOMPOSITECURVESEGMENT],\n 2574617495: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE],\n 3419103109: [IFCPROJECTLIBRARY, IFCPROJECT],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCPCURVE, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCLINE],\n 339256511: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILDINGELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE],\n 477187591: [IFCEXTRUDEDAREASOLIDTAPERED],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 178912537: [IFCINDEXEDPOLYGONALFACEWITHVOIDS],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP],\n 3888040117: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 3967405729: [IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 2945172077: [IFCPROCEDURE, IFCEVENT, IFCTASK],\n 4208778838: [IFCDISTRIBUTIONPORT, IFCPORT, IFCGRID, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPROXY],\n 3521284610: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR],\n 1307041759: [IFCRELASSIGNSTOGROUPBYFACTOR],\n 1865459582: [IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL],\n 826625072: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT],\n 3451746338: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL],\n 3523091289: [IFCRELSPACEBOUNDARY2NDLEVEL],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 1856042241: [IFCREVOLVEDAREASOLIDTAPERED],\n 1412071761: [IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING, IFCSPATIALSTRUCTUREELEMENT],\n 710998568: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBUILDINGSTOREY, IFCBUILDING],\n 3893378262: [IFCSPACETYPE],\n 3544373492: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 699246055: [IFCSEAMCURVE, IFCINTERSECTIONCURVE],\n 2387106220: [IFCPOLYGONALFACESET, IFCTRIANGULATEDFACESET],\n 2296667514: [IFCOCCUPANT],\n 1635779807: [IFCADVANCEDBREPWITHVOIDS],\n 2887950389: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS],\n 167062518: [IFCRATIONALBSPLINESURFACEWITHKNOTS],\n 1260505505: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE],\n 1950629157: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCPLATETYPE, IFCPILETYPE, IFCMEMBERTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE],\n 3732776249: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE],\n 15328376: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY, IFCBUILDINGELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCFASTENER],\n 2590856083: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE],\n 2853485674: [IFCEXTERNALSPATIALELEMENT],\n 807026263: [IFCFACETEDBREPWITHVOIDS],\n 2827207264: [IFCSURFACEFEATURE, IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCVOIDINGFEATURE, IFCOPENINGSTANDARDCASE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMEDICALDEVICETYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE],\n 3009222698: [IFCFILTERTYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE],\n 263784265: [IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE],\n 2706460486: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 3588315303: [IFCOPENINGSTANDARDCASE],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 964333572: [IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE],\n 682877961: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 1004757350: [IFCSTRUCTURALLINEARACTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1252848954: [IFCSTRUCTURALLOADCASE],\n 3657597509: [IFCSTRUCTURALPLANARACTION],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILDINGSYSTEM, IFCZONE],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS],\n 2461110595: [IFCRATIONALBSPLINECURVEWITHKNOTS],\n 1136057603: [IFCOUTERBOUNDARYCURVE],\n 3299480353: [IFCBEAMSTANDARDCASE, IFCBEAM, IFCWINDOWSTANDARDCASE, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE, IFCWALL, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCPLATESTANDARDCASE, IFCPLATE, IFCPILE, IFCMEMBERSTANDARDCASE, IFCMEMBER, IFCFOOTING, IFCDOORSTANDARDCASE, IFCDOOR, IFCCURTAINWALL, IFCCOVERING, IFCCOLUMNSTANDARDCASE, IFCCOLUMN, IFCCHIMNEY, IFCBUILDINGELEMENTPROXY],\n 843113511: [IFCCOLUMNSTANDARDCASE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE],\n 3205830791: [IFCDISTRIBUTIONCIRCUIT],\n 395920057: [IFCDOORSTANDARDCASE],\n 1658829314: [IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE],\n 2058353004: [IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER],\n 4278956645: [IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX],\n 3132237377: [IFCFAN, IFCCOMPRESSOR, IFCPUMP],\n 987401354: [IFCDUCTSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT],\n 707683696: [IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK],\n 2223149337: [IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSANITARYTERMINAL, IFCOUTLET, IFCMEDICALDEVICE, IFCLIGHTFIXTURE, IFCLAMP],\n 3508470533: [IFCFILTER, IFCDUCTSILENCER, IFCINTERCEPTOR],\n 1073191201: [IFCMEMBERSTANDARDCASE],\n 3171933400: [IFCPLATESTANDARDCASE],\n 1529196076: [IFCSLABSTANDARDCASE, IFCSLABELEMENTEDCASE],\n 2391406946: [IFCWALLSTANDARDCASE, IFCWALLELEMENTEDCASE],\n 3304561284: [IFCWINDOWSTANDARDCASE],\n 753842376: [IFCBEAMSTANDARDCASE],\n 1062813311: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT]\n};\nInversePropertyDef[2] = {\n 3630933823: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 130549933: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"ApprovedObjects\", IFCRELASSOCIATESAPPROVAL, 5, true], [\"ApprovedResources\", IFCRESOURCEAPPROVALRELATIONSHIP, 3, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 3, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 2, true]],\n 1959218052: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 1466758467: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 602808272: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3200245327: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 2242383968: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 1040185647: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 3548104201: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 2655187982: [[\"LibraryInfoForObjects\", IFCRELASSOCIATESLIBRARY, 5, true], [\"HasLibraryReferences\", IFCLIBRARYREFERENCE, 5, true]],\n 3452421091: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"LibraryRefForObjects\", IFCRELASSOCIATESLIBRARY, 5, true]],\n 760658860: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 248100487: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3303938423: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1847252529: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 2235152071: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 164193824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 552965576: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 1507914824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3368373690: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 2251480897: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3958567839: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3843373140: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 986844984: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3710013099: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2044713172: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"HasShapeAspects\", IFCSHAPEASPECT, 4, true], [\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 626085974: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3101149627: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1377556343: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798115385: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1310608509: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2705031697: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 616511568: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3150382593: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 747523909: [[\"ClassificationForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 647927063: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"ClassificationRefForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 1485152156: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 370225590: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3050246964: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2889183280: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2713554722: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3632507154: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1154170062: [[\"DocumentInfoForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true], [\"HasDocumentReferences\", IFCDOCUMENTREFERENCE, 4, true], [\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 3, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 2, true]],\n 3732053477: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"DocumentRefForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true]],\n 3900360178: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 297599258: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2556980723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 1809719519: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 2453401579: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 3590301190: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3905492369: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3741457305: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1402838566: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCLOCALPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1838606355: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"IsRelatedWith\", IFCMATERIALRELATIONSHIP, 3, true], [\"RelatesTo\", IFCMATERIALRELATIONSHIP, 2, true]],\n 3708119e3: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialConstituentSet\", IFCMATERIALCONSTITUENTSET, 2, false]],\n 2852063980: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1303795690: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3079605661: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3404854881: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3265635763: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2998442950: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2665983363: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2529465313: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2519244187: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 597895409: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 2004835150: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3778827333: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 2802850158: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2598011224: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1680319473: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 3357820518: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1482703590: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2090586900: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3615266464: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3413951693: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1580146022: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2778083089: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2042790032: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 4165799628: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1509187699: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124623270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3692461612: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 723233188: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2233826070: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1096409881: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3071757647: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 901063453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2715220739: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true]],\n 3736923433: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3698973494: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 427810014: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1417489154: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1299126871: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2543172580: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3406155212: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 669184980: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3207858831: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4261334040: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2898889636: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1123145078: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 574549367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1675464909: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2059837836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1383045692: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2205249479: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2485617015: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2574617495: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3419103109: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 1815067380: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2506170314: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2629017746: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 32440307: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 526551008: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1472233963: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2777663545: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2835456948: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4024345920: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 477187591: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2804161546: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2652556860: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4095422895: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 987898635: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1484403080: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 178912537: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true]],\n 2294589976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true]],\n 572779678: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 428585644: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1281925730: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true]],\n 3388369263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1682466193: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 603570806: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3967405729: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 569719735: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 653396225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 871118103: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 4166981789: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2752243245: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 941946838: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1451395588: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 492091185: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Defines\", IFCRELDEFINESBYTEMPLATE, 5, true]],\n 3650150729: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 110355661: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 3521284610: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3219374653: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2770003689: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2798486643: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3765753017: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3523091289: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true]],\n 1521410863: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true], [\"Corresponds\", IFCRELSPACEBOUNDARY2NDLEVEL, 10, true]],\n 816062949: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3243963512: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3663146110: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 1412071761: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 710998568: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 463610769: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2481509218: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 451544542: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4015995234: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 603775116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4095615324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 699246055: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2028607225: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 3206491090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2387106220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 1935646853: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2916149573: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 336235671: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 512836454: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1635779807: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2603310189: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2887950389: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 167062518: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1334484129: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 1950629157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2197970202: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2937912522: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3893394355: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3875453745: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3732776249: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 15328376: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2185764099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 4105962743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1525564444: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1213902940: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2963535650: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1714330368: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2323601079: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2397081782: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1704287377: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 132023988: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4148101412: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2853485674: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 807026263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1893162501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1509553395: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3493046030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2571569899: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3946677679: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3113134337: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1114901282: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 3079942009: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3566463478: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1158309216: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2839578677: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3724593414: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1469900589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 683857671: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 964333572: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2310774935: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2781568857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2157484638: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4074543187: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1072016465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 338393293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1004757350: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2757150158: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 3657597509: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3101698114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 413509423: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3081323446: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2415094496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3593883385: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2391383451: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 926996030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4009809668: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4088093105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true]],\n 1532957894: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1967976161: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2461110595: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1136057603: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3299480353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 39481116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1177604601: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 2188180465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2674252688: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3296154744: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2611217952: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1677625105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 905975707: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 400855858: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"CoversElements\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 3205830791: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3242481149: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2417008758: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2814081492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3747195512: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 484807127: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1209101575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2188021234: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3319311131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2068733104: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4175244083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2176052936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 76236018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 629592764: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1437502449: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1911478936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2474470126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 144952367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3694346114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 310824031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3612865200: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1156407060: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 738039164: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 655969474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 90941305: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1232101972: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2572171363: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3053780830: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1329646415: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3127900445: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3027962421: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3420628829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1999602285: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1404847402: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 385403989: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1162798199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 812556717: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3825984169: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3026737570: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3179687236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4292641817: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4207607924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4156078855: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 4237592921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 486154966: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1634111441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 177149247: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2056796094: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 277319702: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 2906023776: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true]],\n 32344328: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2938176219: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 635142910: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3758799889: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1051757585: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4217484030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3902619387: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 639361253: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3221913625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3571504051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2272882330: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4136498852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3640358203: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4074379575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 562808652: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 342316401: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3518393246: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1360408905: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1904799276: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 862014818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3310460725: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 264262732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 402227799: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1003880860: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3415622556: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 819412036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1426591983: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 182646315: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 2295281155: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4086658281: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 630975310: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4288193352: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3087945054: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 25142252: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]]\n};\nConstructors[2] = {\n 3630933823: (a) => new IFC4.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC4.IfcAddress(a[0], a[1], a[2]),\n 639542469: (a) => new IFC4.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC4.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 130549933: (a) => new IFC4.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4037036970: (a) => new IFC4.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC4.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC4.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC4.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC4.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2859738748: (_) => new IFC4.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC4.IfcConnectionPointGeometry(a[0], a[1]),\n 2732653382: (a) => new IFC4.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 775493141: (a) => new IFC4.IfcConnectionVolumeGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC4.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1785450214: (a) => new IFC4.IfcCoordinateOperation(a[0], a[1]),\n 1466758467: (a) => new IFC4.IfcCoordinateReferenceSystem(a[0], a[1], a[2], a[3]),\n 602808272: (a) => new IFC4.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1765591967: (a) => new IFC4.IfcDerivedUnit(a[0], a[1], a[2]),\n 1045800335: (a) => new IFC4.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC4.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4294318154: (_) => new IFC4.IfcExternalInformation(),\n 3200245327: (a) => new IFC4.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC4.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC4.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC4.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC4.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC4.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC4.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3452421091: (a) => new IFC4.IfcLibraryReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4162380809: (a) => new IFC4.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC4.IfcLightIntensityDistribution(a[0], a[1]),\n 3057273783: (a) => new IFC4.IfcMapConversion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1847130766: (a) => new IFC4.IfcMaterialClassificationRelationship(a[0], a[1]),\n 760658860: (_) => new IFC4.IfcMaterialDefinition(),\n 248100487: (a) => new IFC4.IfcMaterialLayer(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3303938423: (a) => new IFC4.IfcMaterialLayerSet(a[0], a[1], a[2]),\n 1847252529: (a) => new IFC4.IfcMaterialLayerWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2199411900: (a) => new IFC4.IfcMaterialList(a[0]),\n 2235152071: (a) => new IFC4.IfcMaterialProfile(a[0], a[1], a[2], a[3], a[4], a[5]),\n 164193824: (a) => new IFC4.IfcMaterialProfileSet(a[0], a[1], a[2], a[3]),\n 552965576: (a) => new IFC4.IfcMaterialProfileWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1507914824: (_) => new IFC4.IfcMaterialUsageDefinition(),\n 2597039031: (a) => new IFC4.IfcMeasureWithUnit(a[0], a[1]),\n 3368373690: (a) => new IFC4.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706619895: (a) => new IFC4.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC4.IfcNamedUnit(a[0], a[1]),\n 3701648758: (_) => new IFC4.IfcObjectPlacement(),\n 2251480897: (a) => new IFC4.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4251960020: (a) => new IFC4.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1207048766: (a) => new IFC4.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC4.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC4.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC4.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC4.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC4.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 677532197: (_) => new IFC4.IfcPresentationItem(),\n 2022622350: (a) => new IFC4.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC4.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC4.IfcPresentationStyle(a[0]),\n 2417041796: (a) => new IFC4.IfcPresentationStyleAssignment(a[0]),\n 2095639259: (a) => new IFC4.IfcProductRepresentation(a[0], a[1], a[2]),\n 3958567839: (a) => new IFC4.IfcProfileDef(a[0], a[1]),\n 3843373140: (a) => new IFC4.IfcProjectedCRS(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 986844984: (_) => new IFC4.IfcPropertyAbstraction(),\n 3710013099: (a) => new IFC4.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC4.IfcQuantityArea(a[0], a[1], a[2], a[3], a[4]),\n 2093928680: (a) => new IFC4.IfcQuantityCount(a[0], a[1], a[2], a[3], a[4]),\n 931644368: (a) => new IFC4.IfcQuantityLength(a[0], a[1], a[2], a[3], a[4]),\n 3252649465: (a) => new IFC4.IfcQuantityTime(a[0], a[1], a[2], a[3], a[4]),\n 2405470396: (a) => new IFC4.IfcQuantityVolume(a[0], a[1], a[2], a[3], a[4]),\n 825690147: (a) => new IFC4.IfcQuantityWeight(a[0], a[1], a[2], a[3], a[4]),\n 3915482550: (a) => new IFC4.IfcRecurrencePattern(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2433181523: (a) => new IFC4.IfcReference(a[0], a[1], a[2], a[3], a[4]),\n 1076942058: (a) => new IFC4.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC4.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC4.IfcRepresentationItem(),\n 1660063152: (a) => new IFC4.IfcRepresentationMap(a[0], a[1]),\n 2439245199: (a) => new IFC4.IfcResourceLevelRelationship(a[0], a[1]),\n 2341007311: (a) => new IFC4.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC4.IfcSIUnit(a[0], a[1], a[2]),\n 1054537805: (a) => new IFC4.IfcSchedulingTime(a[0], a[1], a[2]),\n 867548509: (a) => new IFC4.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC4.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC4.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 2273995522: (a) => new IFC4.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC4.IfcStructuralLoad(a[0]),\n 3478079324: (a) => new IFC4.IfcStructuralLoadConfiguration(a[0], a[1], a[2]),\n 609421318: (a) => new IFC4.IfcStructuralLoadOrResult(a[0]),\n 2525727697: (a) => new IFC4.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC4.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC4.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC4.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC4.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 2934153892: (a) => new IFC4.IfcSurfaceReinforcementArea(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC4.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC4.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC4.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC4.IfcSurfaceStyleShading(a[0], a[1]),\n 1351298697: (a) => new IFC4.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC4.IfcSurfaceTexture(a[0], a[1], a[2], a[3], a[4]),\n 985171141: (a) => new IFC4.IfcTable(a[0], a[1], a[2]),\n 2043862942: (a) => new IFC4.IfcTableColumn(a[0], a[1], a[2], a[3], a[4]),\n 531007025: (a) => new IFC4.IfcTableRow(a[0], a[1]),\n 1549132990: (a) => new IFC4.IfcTaskTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 2771591690: (a) => new IFC4.IfcTaskTimeRecurring(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20]),\n 912023232: (a) => new IFC4.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1447204868: (a) => new IFC4.IfcTextStyle(a[0], a[1], a[2], a[3], a[4]),\n 2636378356: (a) => new IFC4.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC4.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 280115917: (a) => new IFC4.IfcTextureCoordinate(a[0]),\n 1742049831: (a) => new IFC4.IfcTextureCoordinateGenerator(a[0], a[1], a[2]),\n 2552916305: (a) => new IFC4.IfcTextureMap(a[0], a[1], a[2]),\n 1210645708: (a) => new IFC4.IfcTextureVertex(a[0]),\n 3611470254: (a) => new IFC4.IfcTextureVertexList(a[0]),\n 1199560280: (a) => new IFC4.IfcTimePeriod(a[0], a[1]),\n 3101149627: (a) => new IFC4.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 581633288: (a) => new IFC4.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC4.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC4.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC4.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC4.IfcVertex(),\n 1907098498: (a) => new IFC4.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC4.IfcVirtualGridIntersection(a[0], a[1]),\n 1236880293: (a) => new IFC4.IfcWorkTime(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3869604511: (a) => new IFC4.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 3798115385: (a) => new IFC4.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC4.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC4.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC4.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3150382593: (a) => new IFC4.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 747523909: (a) => new IFC4.IfcClassification(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 647927063: (a) => new IFC4.IfcClassificationReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3285139300: (a) => new IFC4.IfcColourRgbList(a[0]),\n 3264961684: (a) => new IFC4.IfcColourSpecification(a[0]),\n 1485152156: (a) => new IFC4.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC4.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC4.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC4.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC4.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC4.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 2713554722: (a) => new IFC4.IfcConversionBasedUnitWithOffset(a[0], a[1], a[2], a[3], a[4]),\n 539742890: (a) => new IFC4.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3800577675: (a) => new IFC4.IfcCurveStyle(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC4.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC4.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC4.IfcCurveStyleFontPattern(a[0], a[1]),\n 3632507154: (a) => new IFC4.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 1154170062: (a) => new IFC4.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC4.IfcDocumentInformationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3732053477: (a) => new IFC4.IfcDocumentReference(a[0], a[1], a[2], a[3], a[4]),\n 3900360178: (a) => new IFC4.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC4.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 211053100: (a) => new IFC4.IfcEventTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 297599258: (a) => new IFC4.IfcExtendedProperties(a[0], a[1], a[2]),\n 1437805879: (a) => new IFC4.IfcExternalReferenceRelationship(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC4.IfcFace(a[0]),\n 1809719519: (a) => new IFC4.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC4.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC4.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC4.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC4.IfcFillAreaStyle(a[0], a[1], a[2]),\n 3448662350: (a) => new IFC4.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC4.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC4.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3590301190: (a) => new IFC4.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC4.IfcGridPlacement(a[0], a[1]),\n 812098782: (a) => new IFC4.IfcHalfSpaceSolid(a[0], a[1]),\n 3905492369: (a) => new IFC4.IfcImageTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3570813810: (a) => new IFC4.IfcIndexedColourMap(a[0], a[1], a[2], a[3]),\n 1437953363: (a) => new IFC4.IfcIndexedTextureMap(a[0], a[1], a[2]),\n 2133299955: (a) => new IFC4.IfcIndexedTriangleTextureMap(a[0], a[1], a[2], a[3]),\n 3741457305: (a) => new IFC4.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1585845231: (a) => new IFC4.IfcLagTime(a[0], a[1], a[2], a[3], a[4]),\n 1402838566: (a) => new IFC4.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC4.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC4.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC4.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC4.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC4.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2624227202: (a) => new IFC4.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC4.IfcLoop(),\n 2347385850: (a) => new IFC4.IfcMappedItem(a[0], a[1]),\n 1838606355: (a) => new IFC4.IfcMaterial(a[0], a[1], a[2]),\n 3708119e3: (a) => new IFC4.IfcMaterialConstituent(a[0], a[1], a[2], a[3], a[4]),\n 2852063980: (a) => new IFC4.IfcMaterialConstituentSet(a[0], a[1], a[2]),\n 2022407955: (a) => new IFC4.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1303795690: (a) => new IFC4.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3], a[4]),\n 3079605661: (a) => new IFC4.IfcMaterialProfileSetUsage(a[0], a[1], a[2]),\n 3404854881: (a) => new IFC4.IfcMaterialProfileSetUsageTapering(a[0], a[1], a[2], a[3], a[4]),\n 3265635763: (a) => new IFC4.IfcMaterialProperties(a[0], a[1], a[2], a[3]),\n 853536259: (a) => new IFC4.IfcMaterialRelationship(a[0], a[1], a[2], a[3], a[4]),\n 2998442950: (a) => new IFC4.IfcMirroredProfileDef(a[0], a[1], a[2], a[3]),\n 219451334: (a) => new IFC4.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 2665983363: (a) => new IFC4.IfcOpenShell(a[0]),\n 1411181986: (a) => new IFC4.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1029017970: (a) => new IFC4.IfcOrientedEdge(a[0], a[1]),\n 2529465313: (a) => new IFC4.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC4.IfcPath(a[0]),\n 3021840470: (a) => new IFC4.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC4.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2004835150: (a) => new IFC4.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC4.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC4.IfcPoint(),\n 4022376103: (a) => new IFC4.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC4.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC4.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC4.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 3727388367: (a) => new IFC4.IfcPreDefinedItem(a[0]),\n 3778827333: (_) => new IFC4.IfcPreDefinedProperties(),\n 1775413392: (a) => new IFC4.IfcPreDefinedTextFont(a[0]),\n 673634403: (a) => new IFC4.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 2802850158: (a) => new IFC4.IfcProfileProperties(a[0], a[1], a[2], a[3]),\n 2598011224: (a) => new IFC4.IfcProperty(a[0], a[1]),\n 1680319473: (a) => new IFC4.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC4.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3357820518: (a) => new IFC4.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 1482703590: (a) => new IFC4.IfcPropertyTemplateDefinition(a[0], a[1], a[2], a[3]),\n 2090586900: (a) => new IFC4.IfcQuantitySet(a[0], a[1], a[2], a[3]),\n 3615266464: (a) => new IFC4.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC4.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1580146022: (a) => new IFC4.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC4.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2943643501: (a) => new IFC4.IfcResourceApprovalRelationship(a[0], a[1], a[2], a[3]),\n 1608871552: (a) => new IFC4.IfcResourceConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1042787934: (a) => new IFC4.IfcResourceTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2778083089: (a) => new IFC4.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2042790032: (a) => new IFC4.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC4.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC4.IfcSectionedSpine(a[0], a[1], a[2]),\n 4124623270: (a) => new IFC4.IfcShellBasedSurfaceModel(a[0]),\n 3692461612: (a) => new IFC4.IfcSimpleProperty(a[0], a[1]),\n 2609359061: (a) => new IFC4.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC4.IfcSolidModel(),\n 1595516126: (a) => new IFC4.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC4.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC4.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC4.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC4.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC4.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2233826070: (a) => new IFC4.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC4.IfcSurface(),\n 1878645084: (a) => new IFC4.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC4.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC4.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 1096409881: (a) => new IFC4.IfcSweptDiskSolidPolygonal(a[0], a[1], a[2], a[3], a[4], a[5]),\n 230924584: (a) => new IFC4.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC4.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 901063453: (_) => new IFC4.IfcTessellatedItem(),\n 4282788508: (a) => new IFC4.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC4.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 1983826977: (a) => new IFC4.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2715220739: (a) => new IFC4.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1628702193: (a) => new IFC4.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3736923433: (a) => new IFC4.IfcTypeProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2347495698: (a) => new IFC4.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3698973494: (a) => new IFC4.IfcTypeResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 427810014: (a) => new IFC4.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1417489154: (a) => new IFC4.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC4.IfcVertexLoop(a[0]),\n 1299126871: (a) => new IFC4.IfcWindowStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2543172580: (a) => new IFC4.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3406155212: (a) => new IFC4.IfcAdvancedFace(a[0], a[1], a[2]),\n 669184980: (a) => new IFC4.IfcAnnotationFillArea(a[0], a[1]),\n 3207858831: (a) => new IFC4.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4261334040: (a) => new IFC4.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC4.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC4.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC4.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC4.IfcBoundedSurface(),\n 2581212453: (a) => new IFC4.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC4.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC4.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1123145078: (a) => new IFC4.IfcCartesianPoint(a[0]),\n 574549367: (_) => new IFC4.IfcCartesianPointList(),\n 1675464909: (a) => new IFC4.IfcCartesianPointList2D(a[0]),\n 2059837836: (a) => new IFC4.IfcCartesianPointList3D(a[0]),\n 59481748: (a) => new IFC4.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC4.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC4.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC4.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC4.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC4.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC4.IfcClosedShell(a[0]),\n 776857604: (a) => new IFC4.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC4.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 2485617015: (a) => new IFC4.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 2574617495: (a) => new IFC4.IfcConstructionResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3419103109: (a) => new IFC4.IfcContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1815067380: (a) => new IFC4.IfcCrewResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC4.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC4.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC4.IfcCurve(),\n 2827736869: (a) => new IFC4.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 2629017746: (a) => new IFC4.IfcCurveBoundedSurface(a[0], a[1], a[2]),\n 32440307: (a) => new IFC4.IfcDirection(a[0]),\n 526551008: (a) => new IFC4.IfcDoorStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1472233963: (a) => new IFC4.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC4.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC4.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC4.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC4.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 4024345920: (a) => new IFC4.IfcEventType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 477187591: (a) => new IFC4.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2804161546: (a) => new IFC4.IfcExtrudedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 2047409740: (a) => new IFC4.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC4.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 315944413: (a) => new IFC4.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 2652556860: (a) => new IFC4.IfcFixedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4238390223: (a) => new IFC4.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC4.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4095422895: (a) => new IFC4.IfcGeographicElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC4.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC4.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 178912537: (a) => new IFC4.IfcIndexedPolygonalFace(a[0]),\n 2294589976: (a) => new IFC4.IfcIndexedPolygonalFaceWithVoids(a[0], a[1]),\n 572779678: (a) => new IFC4.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 428585644: (a) => new IFC4.IfcLaborResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1281925730: (a) => new IFC4.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC4.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC4.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 3388369263: (a) => new IFC4.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC4.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 1682466193: (a) => new IFC4.IfcPcurve(a[0], a[1]),\n 603570806: (a) => new IFC4.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC4.IfcPlane(a[0]),\n 759155922: (a) => new IFC4.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC4.IfcPreDefinedCurveFont(a[0]),\n 3967405729: (a) => new IFC4.IfcPreDefinedPropertySet(a[0], a[1], a[2], a[3]),\n 569719735: (a) => new IFC4.IfcProcedureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2945172077: (a) => new IFC4.IfcProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4208778838: (a) => new IFC4.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC4.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 653396225: (a) => new IFC4.IfcProjectLibrary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 871118103: (a) => new IFC4.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4166981789: (a) => new IFC4.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC4.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC4.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 1451395588: (a) => new IFC4.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 492091185: (a) => new IFC4.IfcPropertySetTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3650150729: (a) => new IFC4.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC4.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3521284610: (a) => new IFC4.IfcPropertyTemplate(a[0], a[1], a[2], a[3]),\n 3219374653: (a) => new IFC4.IfcProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2770003689: (a) => new IFC4.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC4.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC4.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3765753017: (a) => new IFC4.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3939117080: (a) => new IFC4.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC4.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC4.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC4.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1027710054: (a) => new IFC4.IfcRelAssignsToGroupByFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278684876: (a) => new IFC4.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC4.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC4.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC4.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 4095574036: (a) => new IFC4.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC4.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC4.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC4.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC4.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC4.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 826625072: (a) => new IFC4.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC4.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC4.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC4.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC4.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC4.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC4.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC4.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC4.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC4.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC4.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC4.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2565941209: (a) => new IFC4.IfcRelDeclares(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC4.IfcRelDecomposes(a[0], a[1], a[2], a[3]),\n 693640335: (a) => new IFC4.IfcRelDefines(a[0], a[1], a[2], a[3]),\n 1462361463: (a) => new IFC4.IfcRelDefinesByObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4186316022: (a) => new IFC4.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 307848117: (a) => new IFC4.IfcRelDefinesByTemplate(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC4.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC4.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC4.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 427948657: (a) => new IFC4.IfcRelInterferesElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3268803585: (a) => new IFC4.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 750771296: (a) => new IFC4.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC4.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4122056220: (a) => new IFC4.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 366585022: (a) => new IFC4.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC4.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3523091289: (a) => new IFC4.IfcRelSpaceBoundary1stLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1521410863: (a) => new IFC4.IfcRelSpaceBoundary2ndLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1401173127: (a) => new IFC4.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 816062949: (a) => new IFC4.IfcReparametrisedCompositeCurveSegment(a[0], a[1], a[2], a[3]),\n 2914609552: (a) => new IFC4.IfcResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1856042241: (a) => new IFC4.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 3243963512: (a) => new IFC4.IfcRevolvedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 4158566097: (a) => new IFC4.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC4.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 3663146110: (a) => new IFC4.IfcSimplePropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1412071761: (a) => new IFC4.IfcSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 710998568: (a) => new IFC4.IfcSpatialElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2706606064: (a) => new IFC4.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC4.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 463610769: (a) => new IFC4.IfcSpatialZone(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2481509218: (a) => new IFC4.IfcSpatialZoneType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 451544542: (a) => new IFC4.IfcSphere(a[0], a[1]),\n 4015995234: (a) => new IFC4.IfcSphericalSurface(a[0], a[1]),\n 3544373492: (a) => new IFC4.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC4.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC4.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC4.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC4.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC4.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603775116: (a) => new IFC4.IfcStructuralSurfaceReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4095615324: (a) => new IFC4.IfcSubContractResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 699246055: (a) => new IFC4.IfcSurfaceCurve(a[0], a[1], a[2]),\n 2028607225: (a) => new IFC4.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC4.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC4.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC4.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3473067441: (a) => new IFC4.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3206491090: (a) => new IFC4.IfcTaskType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2387106220: (a) => new IFC4.IfcTessellatedFaceSet(a[0]),\n 1935646853: (a) => new IFC4.IfcToroidalSurface(a[0], a[1], a[2]),\n 2097647324: (a) => new IFC4.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2916149573: (a) => new IFC4.IfcTriangulatedFaceSet(a[0], a[1], a[2], a[3], a[4]),\n 336235671: (a) => new IFC4.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 512836454: (a) => new IFC4.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2296667514: (a) => new IFC4.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1635779807: (a) => new IFC4.IfcAdvancedBrep(a[0]),\n 2603310189: (a) => new IFC4.IfcAdvancedBrepWithVoids(a[0], a[1]),\n 1674181508: (a) => new IFC4.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2887950389: (a) => new IFC4.IfcBSplineSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 167062518: (a) => new IFC4.IfcBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC4.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC4.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC4.IfcBoundedCurve(),\n 4031249490: (a) => new IFC4.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1950629157: (a) => new IFC4.IfcBuildingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3124254112: (a) => new IFC4.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2197970202: (a) => new IFC4.IfcChimneyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC4.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3893394355: (a) => new IFC4.IfcCivilElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 300633059: (a) => new IFC4.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3875453745: (a) => new IFC4.IfcComplexPropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3732776249: (a) => new IFC4.IfcCompositeCurve(a[0], a[1]),\n 15328376: (a) => new IFC4.IfcCompositeCurveOnSurface(a[0], a[1]),\n 2510884976: (a) => new IFC4.IfcConic(a[0]),\n 2185764099: (a) => new IFC4.IfcConstructionEquipmentResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4105962743: (a) => new IFC4.IfcConstructionMaterialResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1525564444: (a) => new IFC4.IfcConstructionProductResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2559216714: (a) => new IFC4.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293443760: (a) => new IFC4.IfcControl(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3895139033: (a) => new IFC4.IfcCostItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1419761937: (a) => new IFC4.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916426348: (a) => new IFC4.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC4.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1457835157: (a) => new IFC4.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1213902940: (a) => new IFC4.IfcCylindricalSurface(a[0], a[1]),\n 3256556792: (a) => new IFC4.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC4.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2963535650: (a) => new IFC4.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 1714330368: (a) => new IFC4.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2323601079: (a) => new IFC4.IfcDoorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 445594917: (a) => new IFC4.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC4.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1758889154: (a) => new IFC4.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC4.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2397081782: (a) => new IFC4.IfcElementAssemblyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC4.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC4.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC4.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC4.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 132023988: (a) => new IFC4.IfcEngineType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3174744832: (a) => new IFC4.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC4.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4148101412: (a) => new IFC4.IfcEvent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2853485674: (a) => new IFC4.IfcExternalSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 807026263: (a) => new IFC4.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC4.IfcFacetedBrepWithVoids(a[0], a[1]),\n 647756555: (a) => new IFC4.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2489546625: (a) => new IFC4.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2827207264: (a) => new IFC4.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC4.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC4.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC4.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC4.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC4.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC4.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC4.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC4.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC4.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC4.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1893162501: (a) => new IFC4.IfcFootingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 263784265: (a) => new IFC4.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1509553395: (a) => new IFC4.IfcFurniture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3493046030: (a) => new IFC4.IfcGeographicElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009204131: (a) => new IFC4.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706460486: (a) => new IFC4.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC4.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC4.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2571569899: (a) => new IFC4.IfcIndexedPolyCurve(a[0], a[1], a[2]),\n 3946677679: (a) => new IFC4.IfcInterceptorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3113134337: (a) => new IFC4.IfcIntersectionCurve(a[0], a[1], a[2]),\n 2391368822: (a) => new IFC4.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC4.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC4.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1051575348: (a) => new IFC4.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC4.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 377706215: (a) => new IFC4.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2108223431: (a) => new IFC4.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1114901282: (a) => new IFC4.IfcMedicalDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3181161470: (a) => new IFC4.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC4.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4143007308: (a) => new IFC4.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC4.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3079942009: (a) => new IFC4.IfcOpeningStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2837617999: (a) => new IFC4.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC4.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3566463478: (a) => new IFC4.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3327091369: (a) => new IFC4.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1158309216: (a) => new IFC4.IfcPileType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 804291784: (a) => new IFC4.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC4.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC4.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2839578677: (a) => new IFC4.IfcPolygonalFaceSet(a[0], a[1], a[2], a[3]),\n 3724593414: (a) => new IFC4.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC4.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC4.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC4.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3651124850: (a) => new IFC4.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1842657554: (a) => new IFC4.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC4.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2893384427: (a) => new IFC4.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2324767716: (a) => new IFC4.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1469900589: (a) => new IFC4.IfcRampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 683857671: (a) => new IFC4.IfcRationalBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3027567501: (a) => new IFC4.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 964333572: (a) => new IFC4.IfcReinforcingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC4.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2310774935: (a) => new IFC4.IfcReinforcingMeshType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 160246688: (a) => new IFC4.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2781568857: (a) => new IFC4.IfcRoofType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1768891740: (a) => new IFC4.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2157484638: (a) => new IFC4.IfcSeamCurve(a[0], a[1], a[2]),\n 4074543187: (a) => new IFC4.IfcShadingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4097777520: (a) => new IFC4.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC4.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1072016465: (a) => new IFC4.IfcSolarDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC4.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC4.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC4.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3112655638: (a) => new IFC4.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC4.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 338393293: (a) => new IFC4.IfcStairType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC4.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1179482911: (a) => new IFC4.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1004757350: (a) => new IFC4.IfcStructuralCurveAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4243806635: (a) => new IFC4.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 214636428: (a) => new IFC4.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2445595289: (a) => new IFC4.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2757150158: (a) => new IFC4.IfcStructuralCurveReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1807405624: (a) => new IFC4.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1252848954: (a) => new IFC4.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2082059205: (a) => new IFC4.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 734778138: (a) => new IFC4.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1235345126: (a) => new IFC4.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC4.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3657597509: (a) => new IFC4.IfcStructuralSurfaceAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1975003073: (a) => new IFC4.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC4.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3101698114: (a) => new IFC4.IfcSurfaceFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2315554128: (a) => new IFC4.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC4.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 413509423: (a) => new IFC4.IfcSystemFurnitureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 5716631: (a) => new IFC4.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3824725483: (a) => new IFC4.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC4.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3081323446: (a) => new IFC4.IfcTendonAnchorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2415094496: (a) => new IFC4.IfcTendonType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 1692211062: (a) => new IFC4.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1620046519: (a) => new IFC4.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3593883385: (a) => new IFC4.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC4.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC4.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC4.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391383451: (a) => new IFC4.IfcVibrationIsolator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC4.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC4.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 926996030: (a) => new IFC4.IfcVoidingFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1898987631: (a) => new IFC4.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC4.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4009809668: (a) => new IFC4.IfcWindowType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4088093105: (a) => new IFC4.IfcWorkCalendar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1028945134: (a) => new IFC4.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4218914973: (a) => new IFC4.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 3342526732: (a) => new IFC4.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1033361043: (a) => new IFC4.IfcZone(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3821786052: (a) => new IFC4.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1411407467: (a) => new IFC4.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC4.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC4.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3460190687: (a) => new IFC4.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1532957894: (a) => new IFC4.IfcAudioVisualApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1967976161: (a) => new IFC4.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 2461110595: (a) => new IFC4.IfcBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 819618141: (a) => new IFC4.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 231477066: (a) => new IFC4.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1136057603: (a) => new IFC4.IfcBoundaryCurve(a[0], a[1]),\n 3299480353: (a) => new IFC4.IfcBuildingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2979338954: (a) => new IFC4.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 39481116: (a) => new IFC4.IfcBuildingElementPartType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1095909175: (a) => new IFC4.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1909888760: (a) => new IFC4.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1177604601: (a) => new IFC4.IfcBuildingSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2188180465: (a) => new IFC4.IfcBurnerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC4.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC4.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2674252688: (a) => new IFC4.IfcCableFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC4.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC4.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3296154744: (a) => new IFC4.IfcChimney(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2611217952: (a) => new IFC4.IfcCircle(a[0], a[1]),\n 1677625105: (a) => new IFC4.IfcCivilElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2301859152: (a) => new IFC4.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC4.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 905975707: (a) => new IFC4.IfcColumnStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 400855858: (a) => new IFC4.IfcCommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3850581409: (a) => new IFC4.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC4.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3898045240: (a) => new IFC4.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1060000209: (a) => new IFC4.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC4.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 335055490: (a) => new IFC4.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC4.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1973544240: (a) => new IFC4.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC4.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3961806047: (a) => new IFC4.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1335981549: (a) => new IFC4.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2635815018: (a) => new IFC4.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1599208980: (a) => new IFC4.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC4.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC4.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC4.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC4.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3205830791: (a) => new IFC4.IfcDistributionSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 395920057: (a) => new IFC4.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3242481149: (a) => new IFC4.IfcDoorStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 869906466: (a) => new IFC4.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC4.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC4.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 663422040: (a) => new IFC4.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2417008758: (a) => new IFC4.IfcElectricDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC4.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC4.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC4.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC4.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1658829314: (a) => new IFC4.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2814081492: (a) => new IFC4.IfcEngine(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3747195512: (a) => new IFC4.IfcEvaporativeCooler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 484807127: (a) => new IFC4.IfcEvaporator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1209101575: (a) => new IFC4.IfcExternalSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 346874300: (a) => new IFC4.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC4.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC4.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC4.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC4.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC4.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188021234: (a) => new IFC4.IfcFlowMeter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3132237377: (a) => new IFC4.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC4.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC4.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC4.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC4.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC4.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3319311131: (a) => new IFC4.IfcHeatExchanger(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2068733104: (a) => new IFC4.IfcHumidifier(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4175244083: (a) => new IFC4.IfcInterceptor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2176052936: (a) => new IFC4.IfcJunctionBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 76236018: (a) => new IFC4.IfcLamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 629592764: (a) => new IFC4.IfcLightFixture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1437502449: (a) => new IFC4.IfcMedicalDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC4.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1911478936: (a) => new IFC4.IfcMemberStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2474470126: (a) => new IFC4.IfcMotorConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 144952367: (a) => new IFC4.IfcOuterBoundaryCurve(a[0], a[1]),\n 3694346114: (a) => new IFC4.IfcOutlet(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1687234759: (a) => new IFC4.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 310824031: (a) => new IFC4.IfcPipeFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3612865200: (a) => new IFC4.IfcPipeSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3171933400: (a) => new IFC4.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1156407060: (a) => new IFC4.IfcPlateStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 738039164: (a) => new IFC4.IfcProtectiveDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 655969474: (a) => new IFC4.IfcProtectiveDeviceTrippingUnitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 90941305: (a) => new IFC4.IfcPump(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2262370178: (a) => new IFC4.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC4.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC4.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1232101972: (a) => new IFC4.IfcRationalBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 979691226: (a) => new IFC4.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2572171363: (a) => new IFC4.IfcReinforcingBarType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 2016517767: (a) => new IFC4.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3053780830: (a) => new IFC4.IfcSanitaryTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1783015770: (a) => new IFC4.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1329646415: (a) => new IFC4.IfcShadingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1529196076: (a) => new IFC4.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3127900445: (a) => new IFC4.IfcSlabElementedCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3027962421: (a) => new IFC4.IfcSlabStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3420628829: (a) => new IFC4.IfcSolarDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1999602285: (a) => new IFC4.IfcSpaceHeater(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1404847402: (a) => new IFC4.IfcStackTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC4.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC4.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2515109513: (a) => new IFC4.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 385403989: (a) => new IFC4.IfcStructuralLoadCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1621171031: (a) => new IFC4.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1162798199: (a) => new IFC4.IfcSwitchingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 812556717: (a) => new IFC4.IfcTank(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3825984169: (a) => new IFC4.IfcTransformer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3026737570: (a) => new IFC4.IfcTubeBundle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3179687236: (a) => new IFC4.IfcUnitaryControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4292641817: (a) => new IFC4.IfcUnitaryEquipment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4207607924: (a) => new IFC4.IfcValve(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2391406946: (a) => new IFC4.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4156078855: (a) => new IFC4.IfcWallElementedCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3512223829: (a) => new IFC4.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4237592921: (a) => new IFC4.IfcWasteTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3304561284: (a) => new IFC4.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 486154966: (a) => new IFC4.IfcWindowStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2874132201: (a) => new IFC4.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634111441: (a) => new IFC4.IfcAirTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 177149247: (a) => new IFC4.IfcAirTerminalBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2056796094: (a) => new IFC4.IfcAirToAirHeatRecovery(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3001207471: (a) => new IFC4.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 277319702: (a) => new IFC4.IfcAudioVisualAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 753842376: (a) => new IFC4.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2906023776: (a) => new IFC4.IfcBeamStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 32344328: (a) => new IFC4.IfcBoiler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2938176219: (a) => new IFC4.IfcBurner(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 635142910: (a) => new IFC4.IfcCableCarrierFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3758799889: (a) => new IFC4.IfcCableCarrierSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1051757585: (a) => new IFC4.IfcCableFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4217484030: (a) => new IFC4.IfcCableSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3902619387: (a) => new IFC4.IfcChiller(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639361253: (a) => new IFC4.IfcCoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3221913625: (a) => new IFC4.IfcCommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3571504051: (a) => new IFC4.IfcCompressor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2272882330: (a) => new IFC4.IfcCondenser(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 578613899: (a) => new IFC4.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4136498852: (a) => new IFC4.IfcCooledBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3640358203: (a) => new IFC4.IfcCoolingTower(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074379575: (a) => new IFC4.IfcDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1052013943: (a) => new IFC4.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 562808652: (a) => new IFC4.IfcDistributionCircuit(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1062813311: (a) => new IFC4.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 342316401: (a) => new IFC4.IfcDuctFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3518393246: (a) => new IFC4.IfcDuctSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1360408905: (a) => new IFC4.IfcDuctSilencer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1904799276: (a) => new IFC4.IfcElectricAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 862014818: (a) => new IFC4.IfcElectricDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3310460725: (a) => new IFC4.IfcElectricFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 264262732: (a) => new IFC4.IfcElectricGenerator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 402227799: (a) => new IFC4.IfcElectricMotor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1003880860: (a) => new IFC4.IfcElectricTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3415622556: (a) => new IFC4.IfcFan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 819412036: (a) => new IFC4.IfcFilter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1426591983: (a) => new IFC4.IfcFireSuppressionTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 182646315: (a) => new IFC4.IfcFlowInstrument(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2295281155: (a) => new IFC4.IfcProtectiveDeviceTrippingUnit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4086658281: (a) => new IFC4.IfcSensor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 630975310: (a) => new IFC4.IfcUnitaryControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4288193352: (a) => new IFC4.IfcActuator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3087945054: (a) => new IFC4.IfcAlarm(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 25142252: (a) => new IFC4.IfcController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8])\n};\nToRawLineData[2] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 130549933: (i) => [i.Identifier, i.Name, i.Description, i.TimeOfApproval, i.Status, i.Level, i.Qualifier, i.RequestingApproval, i.GivingApproval],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, !i.TranslationalStiffnessByLengthX ? null : Labelise(i.TranslationalStiffnessByLengthX), !i.TranslationalStiffnessByLengthY ? null : Labelise(i.TranslationalStiffnessByLengthY), !i.TranslationalStiffnessByLengthZ ? null : Labelise(i.TranslationalStiffnessByLengthZ), !i.RotationalStiffnessByLengthX ? null : Labelise(i.RotationalStiffnessByLengthX), !i.RotationalStiffnessByLengthY ? null : Labelise(i.RotationalStiffnessByLengthY), !i.RotationalStiffnessByLengthZ ? null : Labelise(i.RotationalStiffnessByLengthZ)],\n 3367102660: (i) => [i.Name, !i.TranslationalStiffnessByAreaX ? null : Labelise(i.TranslationalStiffnessByAreaX), !i.TranslationalStiffnessByAreaY ? null : Labelise(i.TranslationalStiffnessByAreaY), !i.TranslationalStiffnessByAreaZ ? null : Labelise(i.TranslationalStiffnessByAreaZ)],\n 1387855156: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ)],\n 2069777674: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ), !i.WarpingStiffness ? null : Labelise(i.WarpingStiffness)],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 775493141: (i) => [i.VolumeOnRelatingElement, i.VolumeOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1785450214: (i) => [i.SourceCRS, i.TargetCRS],\n 1466758467: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 4294318154: (_) => [],\n 3200245327: (i) => [i.Location, i.Identification, i.Name],\n 2242383968: (i) => [i.Location, i.Identification, i.Name],\n 1040185647: (i) => [i.Location, i.Identification, i.Name],\n 3548104201: (i) => [i.Location, i.Identification, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.Location, i.Description],\n 3452421091: (i) => [i.Location, i.Identification, i.Name, i.Description, i.Language, i.ReferencedLibrary],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 3057273783: (i) => [i.SourceCRS, i.TargetCRS, i.Eastings, i.Northings, i.OrthogonalHeight, i.XAxisAbscissa, i.XAxisOrdinate, i.Scale],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 760658860: (_) => [],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName, i.Description],\n 1847252529: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority, i.OffsetDirection, i.OffsetValues],\n 2199411900: (i) => [i.Materials],\n 2235152071: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category],\n 164193824: (i) => [i.Name, i.Description, i.MaterialProfiles, i.CompositeProfile],\n 552965576: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category, i.OffsetValues],\n 1507914824: (_) => [],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue, i.ReferencePath],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (_) => [],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.LogicalAggregator, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 4251960020: (i) => [i.Identification, i.Name, i.Description, i.Roles, i.Addresses],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Identification, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 677532197: (_) => [],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, { type: 3, value: BooleanConvert(i.LayerOn.value) }, { type: 3, value: BooleanConvert(i.LayerFrozen.value) }, { type: 3, value: BooleanConvert(i.LayerBlocked.value) }, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2417041796: (i) => [i.Styles],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 3843373140: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum, i.MapProjection, i.MapZone, i.MapUnit],\n 986844984: (_) => [],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue, i.Formula],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue, i.Formula],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue, i.Formula],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue, i.Formula],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue, i.Formula],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue, i.Formula],\n 3915482550: (i) => [i.RecurrenceType, i.DayComponent, i.WeekdayComponent, i.MonthComponent, i.Position, i.Interval, i.Occurrences, i.TimePeriods],\n 2433181523: (i) => [i.TypeIdentifier, i.AttributeIdentifier, i.InstanceName, i.ListPositions, i.InnerReference],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 2439245199: (i) => [i.Name, i.Description],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 1054537805: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, { type: 3, value: BooleanConvert(i.ProductDefinitional.value) }, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 3478079324: (i) => [i.Name, i.Values, i.Locations],\n 609421318: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaTConstant, i.DeltaTY, i.DeltaTZ],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2934153892: (i) => [i.Name, i.SurfaceReinforcement1, i.SurfaceReinforcement2, i.ShearReinforcement],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour, i.Transparency],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter],\n 985171141: (i) => [i.Name, i.Rows, i.Columns],\n 2043862942: (i) => [i.Identifier, i.Name, i.Description, i.Unit, i.ReferencePath],\n 531007025: (i) => [!i.RowCells ? null : i.RowCells.map((p) => Labelise(p)), i.IsHeading == null ? null : { type: 3, value: BooleanConvert(i.IsHeading.value) }],\n 1549132990: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion],\n 2771591690: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion, i.Recurrence],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL, i.MessagingIDs],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 280115917: (i) => [i.Maps],\n 1742049831: (i) => [i.Maps, i.Mode, i.Parameter],\n 2552916305: (i) => [i.Maps, i.Vertices, i.MappedTo],\n 1210645708: (i) => [i.Coordinates],\n 3611470254: (i) => [i.TexCoordsList],\n 1199560280: (i) => [i.StartTime, i.EndTime],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1236880293: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.RecurrencePattern, i.Start, i.Finish],\n 3869604511: (i) => [i.Name, i.Description, i.RelatingApproval, i.RelatedApprovals],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name, i.Description, i.Location, i.ReferenceTokens],\n 647927063: (i) => [i.Location, i.Identification, i.Name, i.ReferencedSource, i.Description, i.Sort],\n 3285139300: (i) => [i.ColourList],\n 3264961684: (i) => [i.Name],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 2713554722: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor, i.ConversionOffset],\n 539742890: (i) => [i.Name, i.Description, i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 1154170062: (i) => [i.Identification, i.Name, i.Description, i.Location, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.Name, i.Description, i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3732053477: (i) => [i.Location, i.Identification, i.Name, i.Description, i.ReferencedDocument],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 211053100: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ActualDate, i.EarlyDate, i.LateDate, i.ScheduleDate],\n 297599258: (i) => [i.Name, i.Description, i.Properties],\n 1437805879: (i) => [i.Name, i.Description, i.RelatingReference, i.RelatedResourceObjects],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 803316827: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles, i.ModelorDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelorDraughting.value) }],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }],\n 3905492369: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.URLReference],\n 3570813810: (i) => [i.MappedTo, i.Opacity, i.Colours, i.ColourIndex],\n 1437953363: (i) => [i.Maps, i.MappedTo, i.TexCoords],\n 2133299955: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndex],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1585845231: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, Labelise(i.LagValue), i.DurationType],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 1838606355: (i) => [i.Name, i.Description, i.Category],\n 3708119e3: (i) => [i.Name, i.Description, i.Material, i.Fraction, i.Category],\n 2852063980: (i) => [i.Name, i.Description, i.MaterialConstituents],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine, i.ReferenceExtent],\n 3079605661: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent],\n 3404854881: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent, i.ForProfileEndSet, i.CardinalEndPoint],\n 3265635763: (i) => [i.Name, i.Description, i.Properties, i.Material],\n 853536259: (i) => [i.Name, i.Description, i.RelatingMaterial, i.RelatedMaterials, i.Expression],\n 2998442950: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2665983363: (i) => [i.CfsFaces],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Position, i.PolygonalBoundary],\n 3727388367: (i) => [i.Name],\n 3778827333: (_) => [],\n 1775413392: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 2802850158: (i) => [i.Name, i.Description, i.Properties, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Description],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 148025276: (i) => [i.Name, i.Description, i.DependingProperty, i.DependantProperty, i.Expression],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1482703590: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2090586900: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2943643501: (i) => [i.Name, i.Description, i.RelatedResourceObjects, i.RelatingApproval],\n 1608871552: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedResourceObjects],\n 1042787934: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ScheduleWork, i.ScheduleUsage, i.ScheduleStart, i.ScheduleFinish, i.ScheduleContour, i.LevelingDelay, i.IsOverAllocated == null ? null : { type: 3, value: BooleanConvert(i.IsOverAllocated.value) }, i.StatusTime, i.ActualWork, i.ActualUsage, i.ActualStart, i.ActualFinish, i.RemainingWork, i.RemainingUsage, i.Completion],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 4124623270: (i) => [i.SbsmBoundary],\n 3692461612: (i) => [i.Name, i.Description],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 1096409881: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam, i.FilletRadius],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope],\n 901063453: (_) => [],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 3736923433: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 3698973494: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 1299126871: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ConstructionType, i.OperationType, { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, { type: 3, value: BooleanConvert(i.Sizeable.value) }],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3406155212: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomFlangeWidth, i.OverallDepth, i.WebThickness, i.BottomFlangeThickness, i.BottomFlangeFilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.BottomFlangeEdgeRadius, i.BottomFlangeSlope, i.TopFlangeEdgeRadius, i.TopFlangeSlope],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius],\n 1123145078: (i) => [i.Coordinates],\n 574549367: (_) => [],\n 1675464909: (i) => [i.CoordList],\n 2059837836: (i) => [i.CoordList],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Description, i.UsageName, i.HasProperties],\n 2485617015: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve],\n 2574617495: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity],\n 3419103109: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 1815067380: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 2629017746: (i) => [i.BasisSurface, i.Boundaries, { type: 3, value: BooleanConvert(i.ImplicitOuter.value) }],\n 32440307: (i) => [i.DirectionRatios],\n 526551008: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.OperationType, i.ConstructionType, { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, { type: 3, value: BooleanConvert(i.Sizeable.value) }],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 4024345920: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2804161546: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth, i.EndSweptArea],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 2652556860: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.FixedReference],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace, i.PredefinedType],\n 4095422895: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.FlangeSlope],\n 178912537: (i) => [i.CoordIndex],\n 2294589976: (i) => [i.CoordIndex, i.InnerCoordIndices],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope],\n 428585644: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 3388369263: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3505215534: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.RefDirection],\n 1682466193: (i) => [i.BasisSurface, i.ReferenceCurve],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 3967405729: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 569719735: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 653396225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 871118103: (i) => [i.Name, i.Description, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit, !i.SetPointValue ? null : Labelise(i.SetPointValue)],\n 4166981789: (i) => [i.Name, i.Description, !i.EnumerationValues ? null : i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Description, !i.ListValues ? null : i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Description, i.UsageName, i.PropertyReference],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 492091185: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.ApplicableEntity, i.HasPropertyTemplates],\n 3650150729: (i) => [i.Name, i.Description, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Description, !i.DefiningValues ? null : i.DefiningValues.map((p) => Labelise(p)), !i.DefinedValues ? null : i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit, i.CurveInterpolation],\n 3521284610: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3219374653: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.ProxyType, i.Tag],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, { type: 3, value: BooleanConvert(i.Usense.value) }, { type: 3, value: BooleanConvert(i.Vsense.value) }],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 1027710054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup, i.Factor],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedCoverings],\n 2565941209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingContext, i.RelatedDefinitions],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1462361463: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingObject],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 307848117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedPropertySets, i.RelatingTemplate],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 427948657: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedElement, i.InterferenceGeometry, i.InterferenceType, i.ImpliedOrder],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType, i.UserDefinedSequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 3523091289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary],\n 1521410863: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary, i.CorrespondingBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 816062949: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve, i.ParamLength],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 3243963512: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle, i.EndSweptArea],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 3663146110: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.PrimaryMeasureType, i.SecondaryMeasureType, i.Enumerators, i.PrimaryUnit, i.SecondaryUnit, i.Expression, i.AccessState],\n 1412071761: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 710998568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 463610769: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 2481509218: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 451544542: (i) => [i.Position, i.Radius],\n 4015995234: (i) => [i.Position, i.Radius],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 603775116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 4095615324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 699246055: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, i.StartParam, i.EndParam, i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Status, i.WorkMethod, { type: 3, value: BooleanConvert(i.IsMilestone.value) }, i.Priority, i.TaskTime, i.PredefinedType],\n 3206491090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.WorkMethod],\n 2387106220: (i) => [i.Coordinates],\n 1935646853: (i) => [i.Position, i.MajorRadius, i.MinorRadius],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2916149573: (i) => [i.Coordinates, i.Normals, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.CoordIndex, i.PnIndex],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle, i.LiningOffset, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1635779807: (i) => [i.Outer],\n 2603310189: (i) => [i.Outer, i.Voids],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2887950389: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 167062518: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 1950629157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 2197970202: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 3893394355: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3875453745: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.UsageName, i.TemplateType, i.HasPropertyTemplates],\n 3732776249: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 15328376: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2510884976: (i) => [i.Position],\n 2185764099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 4105962743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1525564444: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.CostValues, i.CostQuantities],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.SubmittedOn, i.UpdateDate],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1213902940: (i) => [i.Position, i.Radius],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 2323601079: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.OperationType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedOperationType],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 2397081782: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 132023988: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4148101412: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType, i.EventOccurenceTime],\n 2853485674: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1893162501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1509553395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3493046030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes, i.PredefinedType],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2571569899: (i) => [i.Points, !i.Segments ? null : i.Segments.map((p) => Labelise(p)), i.SelfIntersect == null ? null : { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3946677679: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3113134337: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength, i.PredefinedType],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.NominalLength],\n 1114901282: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3079942009: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LifeCyclePhase, i.PredefinedType],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1158309216: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2839578677: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Faces, i.PnIndex],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1469900589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 683857671: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec, i.WeightsData],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 964333572: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.PredefinedType],\n 2310774935: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 2781568857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2157484638: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 4074543187: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1072016465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 338393293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1004757350: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.Axis],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2757150158: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.ConditionCoordinateSystem],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, { type: 3, value: BooleanConvert(i.IsLinear.value) }],\n 3657597509: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 3101698114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 413509423: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 3081323446: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2415094496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.SheathDiameter],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, { type: 3, value: BooleanConvert(i.SenseAgreement.value) }, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391383451: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 926996030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4009809668: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.PartitioningType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedPartitioningType],\n 4088093105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.WorkingTimes, i.ExceptionTimes, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1532957894: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2461110595: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1136057603: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3299480353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 39481116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1177604601: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 2188180465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2674252688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3296154744: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 1677625105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 905975707: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 400855858: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection, i.PredefinedType, i.SystemType],\n 3205830791: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 3242481149: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2417008758: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2814081492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3747195512: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 484807127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1209101575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188021234: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3319311131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2068733104: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4175244083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2176052936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 76236018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 629592764: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1437502449: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1911478936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2474470126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 144952367: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3694346114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 310824031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3612865200: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1156407060: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 738039164: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 655969474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 90941305: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1232101972: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec, i.WeightsData],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.PredefinedType, i.BarSurface],\n 2572171363: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarSurface, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3053780830: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1329646415: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3127900445: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3027962421: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3420628829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1999602285: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1404847402: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRisers, i.NumberOfTreads, i.RiserHeight, i.TreadLength, i.PredefinedType],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults, i.SharedPlacement],\n 385403989: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose, i.SelfWeightCoefficients],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1162798199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 812556717: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3825984169: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3026737570: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3179687236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4292641817: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4207607924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4156078855: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4237592921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 486154966: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634111441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 177149247: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2056796094: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 277319702: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2906023776: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 32344328: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2938176219: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 635142910: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3758799889: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1051757585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4217484030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3902619387: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 639361253: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3221913625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3571504051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2272882330: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4136498852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3640358203: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4074379575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 562808652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 342316401: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3518393246: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1360408905: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1904799276: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 862014818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3310460725: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 264262732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 402227799: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1003880860: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3415622556: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 819412036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1426591983: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 182646315: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2295281155: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4086658281: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 630975310: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4288193352: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3087945054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 25142252: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType]\n};\nTypeInitialisers[2] = {\n 3699917729: (v) => new IFC4.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC4.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC4.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC4.IfcAngularVelocityMeasure(v),\n 3683503648: (v) => new IFC4.IfcArcIndex(v.map((x) => x.value)),\n 1500781891: (v) => new IFC4.IfcAreaDensityMeasure(v),\n 2650437152: (v) => new IFC4.IfcAreaMeasure(v),\n 2314439260: (v) => new IFC4.IfcBinary(v),\n 2735952531: (v) => new IFC4.IfcBoolean(v),\n 1867003952: (v) => new IFC4.IfcBoxAlignment(v),\n 1683019596: (v) => new IFC4.IfcCardinalPointReference(v),\n 2991860651: (v) => new IFC4.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC4.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC4.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC4.IfcCountMeasure(v),\n 94842927: (v) => new IFC4.IfcCurvatureMeasure(v),\n 937566702: (v) => new IFC4.IfcDate(v),\n 2195413836: (v) => new IFC4.IfcDateTime(v),\n 86635668: (v) => new IFC4.IfcDayInMonthNumber(v),\n 3701338814: (v) => new IFC4.IfcDayInWeekNumber(v),\n 1514641115: (v) => new IFC4.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC4.IfcDimensionCount(v),\n 524656162: (v) => new IFC4.IfcDoseEquivalentMeasure(v),\n 2541165894: (v) => new IFC4.IfcDuration(v),\n 69416015: (v) => new IFC4.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC4.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC4.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC4.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC4.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC4.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC4.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC4.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC4.IfcFontStyle(v),\n 2715512545: (v) => new IFC4.IfcFontVariant(v),\n 2590844177: (v) => new IFC4.IfcFontWeight(v),\n 1361398929: (v) => new IFC4.IfcForceMeasure(v),\n 3044325142: (v) => new IFC4.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC4.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC4.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC4.IfcHeatingValueMeasure(v),\n 983778844: (v) => new IFC4.IfcIdentifier(v),\n 3358199106: (v) => new IFC4.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC4.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC4.IfcInteger(v),\n 3809634241: (v) => new IFC4.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC4.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC4.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC4.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC4.IfcLabel(v),\n 1275358634: (v) => new IFC4.IfcLanguageId(v),\n 1243674935: (v) => new IFC4.IfcLengthMeasure(v),\n 1774176899: (v) => new IFC4.IfcLineIndex(v.map((x) => x.value)),\n 191860431: (v) => new IFC4.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC4.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC4.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC4.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC4.IfcLogical(v),\n 2095003142: (v) => new IFC4.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC4.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC4.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC4.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC4.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC4.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC4.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC4.IfcMassMeasure(v),\n 3531705166: (v) => new IFC4.IfcMassPerLengthMeasure(v),\n 3341486342: (v) => new IFC4.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC4.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC4.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC4.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC4.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC4.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC4.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC4.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC4.IfcMonthInYearNumber(v),\n 525895558: (v) => new IFC4.IfcNonNegativeLengthMeasure(v),\n 2095195183: (v) => new IFC4.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC4.IfcNumericMeasure(v),\n 929793134: (v) => new IFC4.IfcPHMeasure(v),\n 2260317790: (v) => new IFC4.IfcParameterValue(v),\n 2642773653: (v) => new IFC4.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC4.IfcPlaneAngleMeasure(v),\n 1790229001: (v) => new IFC4.IfcPositiveInteger(v),\n 2815919920: (v) => new IFC4.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC4.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC4.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC4.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC4.IfcPresentableText(v),\n 3665567075: (v) => new IFC4.IfcPressureMeasure(v),\n 2798247006: (v) => new IFC4.IfcPropertySetDefinitionSet(v.map((x) => x.value)),\n 3972513137: (v) => new IFC4.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC4.IfcRatioMeasure(v),\n 200335297: (v) => new IFC4.IfcReal(v),\n 2133746277: (v) => new IFC4.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC4.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC4.IfcRotationalStiffnessMeasure(v),\n 3467162246: (v) => new IFC4.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC4.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC4.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC4.IfcSolidAngleMeasure(v),\n 4157543285: (v) => new IFC4.IfcSoundPowerLevelMeasure(v),\n 846465480: (v) => new IFC4.IfcSoundPowerMeasure(v),\n 3457685358: (v) => new IFC4.IfcSoundPressureLevelMeasure(v),\n 993287707: (v) => new IFC4.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC4.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC4.IfcSpecularExponent(v),\n 361837227: (v) => new IFC4.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC4.IfcTemperatureGradientMeasure(v),\n 1209108979: (v) => new IFC4.IfcTemperatureRateOfChangeMeasure(v),\n 2801250643: (v) => new IFC4.IfcText(v),\n 1460886941: (v) => new IFC4.IfcTextAlignment(v),\n 3490877962: (v) => new IFC4.IfcTextDecoration(v),\n 603696268: (v) => new IFC4.IfcTextFontName(v),\n 296282323: (v) => new IFC4.IfcTextTransformation(v),\n 232962298: (v) => new IFC4.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC4.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC4.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC4.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC4.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC4.IfcThermodynamicTemperatureMeasure(v),\n 4075327185: (v) => new IFC4.IfcTime(v),\n 2726807636: (v) => new IFC4.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC4.IfcTimeStamp(v),\n 1278329552: (v) => new IFC4.IfcTorqueMeasure(v),\n 950732822: (v) => new IFC4.IfcURIReference(v),\n 3345633955: (v) => new IFC4.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC4.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC4.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC4.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC4.IfcWarpingMomentMeasure(v)\n};\nvar IFC4;\n(function(IFC42) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcArcIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcArcIndex = IfcArcIndex;\n ;\n class IfcAreaDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREADENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAreaDensityMeasure = IfcAreaDensityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBinary {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCBINARY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcBinary = IfcBinary;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC42.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC42.IfcBoxAlignment = IfcBoxAlignment;\n class IfcCardinalPointReference {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCARDINALPOINTREFERENCE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCardinalPointReference = IfcCardinalPointReference;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC42.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC42.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDate {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATE\";\n }\n }\n IFC42.IfcDate = IfcDate;\n class IfcDateTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATETIME\";\n }\n }\n IFC42.IfcDateTime = IfcDateTime;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDayInWeekNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINWEEKNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDayInWeekNumber = IfcDayInWeekNumber;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC42.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDuration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDURATION\";\n }\n }\n IFC42.IfcDuration = IfcDuration;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC42.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC42.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC42.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC42.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC42.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC42.IfcLabel = IfcLabel;\n class IfcLanguageId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLANGUAGEID\";\n }\n }\n IFC42.IfcLanguageId = IfcLanguageId;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLineIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcLineIndex = IfcLineIndex;\n ;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC42.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNonNegativeLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNONNEGATIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNonNegativeLengthMeasure = IfcNonNegativeLengthMeasure;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCPOSITIVEINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveInteger = IfcPositiveInteger;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC42.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcPressureMeasure = IfcPressureMeasure;\n class IfcPropertySetDefinitionSet {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC42.IfcPropertySetDefinitionSet = IfcPropertySetDefinitionSet;\n ;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERLEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPowerLevelMeasure = IfcSoundPowerLevelMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSURELEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPressureLevelMeasure = IfcSoundPressureLevelMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcTemperatureRateOfChangeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATURERATEOFCHANGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTemperatureRateOfChangeMeasure = IfcTemperatureRateOfChangeMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC42.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC42.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC42.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC42.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC42.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTIME\";\n }\n }\n IFC42.IfcTime = IfcTime;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcURIReference {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCURIREFERENCE\";\n }\n }\n IFC42.IfcURIReference = IfcURIReference;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC42.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcActionRequestTypeEnum {\n }\n IfcActionRequestTypeEnum.EMAIL = { type: 3, value: \"EMAIL\" };\n IfcActionRequestTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcActionRequestTypeEnum.PHONE = { type: 3, value: \"PHONE\" };\n IfcActionRequestTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcActionRequestTypeEnum.VERBAL = { type: 3, value: \"VERBAL\" };\n IfcActionRequestTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionRequestTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionRequestTypeEnum = IfcActionRequestTypeEnum;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.LOUVRE = { type: 3, value: \"LOUVRE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC42.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcAudioVisualApplianceTypeEnum {\n }\n IfcAudioVisualApplianceTypeEnum.AMPLIFIER = { type: 3, value: \"AMPLIFIER\" };\n IfcAudioVisualApplianceTypeEnum.CAMERA = { type: 3, value: \"CAMERA\" };\n IfcAudioVisualApplianceTypeEnum.DISPLAY = { type: 3, value: \"DISPLAY\" };\n IfcAudioVisualApplianceTypeEnum.MICROPHONE = { type: 3, value: \"MICROPHONE\" };\n IfcAudioVisualApplianceTypeEnum.PLAYER = { type: 3, value: \"PLAYER\" };\n IfcAudioVisualApplianceTypeEnum.PROJECTOR = { type: 3, value: \"PROJECTOR\" };\n IfcAudioVisualApplianceTypeEnum.RECEIVER = { type: 3, value: \"RECEIVER\" };\n IfcAudioVisualApplianceTypeEnum.SPEAKER = { type: 3, value: \"SPEAKER\" };\n IfcAudioVisualApplianceTypeEnum.SWITCHER = { type: 3, value: \"SWITCHER\" };\n IfcAudioVisualApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcAudioVisualApplianceTypeEnum.TUNER = { type: 3, value: \"TUNER\" };\n IfcAudioVisualApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAudioVisualApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcAudioVisualApplianceTypeEnum = IfcAudioVisualApplianceTypeEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBSplineSurfaceForm {\n }\n IfcBSplineSurfaceForm.PLANE_SURF = { type: 3, value: \"PLANE_SURF\" };\n IfcBSplineSurfaceForm.CYLINDRICAL_SURF = { type: 3, value: \"CYLINDRICAL_SURF\" };\n IfcBSplineSurfaceForm.CONICAL_SURF = { type: 3, value: \"CONICAL_SURF\" };\n IfcBSplineSurfaceForm.SPHERICAL_SURF = { type: 3, value: \"SPHERICAL_SURF\" };\n IfcBSplineSurfaceForm.TOROIDAL_SURF = { type: 3, value: \"TOROIDAL_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_REVOLUTION = { type: 3, value: \"SURF_OF_REVOLUTION\" };\n IfcBSplineSurfaceForm.RULED_SURF = { type: 3, value: \"RULED_SURF\" };\n IfcBSplineSurfaceForm.GENERALISED_CONE = { type: 3, value: \"GENERALISED_CONE\" };\n IfcBSplineSurfaceForm.QUADRIC_SURF = { type: 3, value: \"QUADRIC_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_LINEAR_EXTRUSION = { type: 3, value: \"SURF_OF_LINEAR_EXTRUSION\" };\n IfcBSplineSurfaceForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcBSplineSurfaceForm = IfcBSplineSurfaceForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.HOLLOWCORE = { type: 3, value: \"HOLLOWCORE\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.SPANDREL = { type: 3, value: \"SPANDREL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IfcBenchmarkEnum.INCLUDES = { type: 3, value: \"INCLUDES\" };\n IfcBenchmarkEnum.NOTINCLUDES = { type: 3, value: \"NOTINCLUDES\" };\n IfcBenchmarkEnum.INCLUDEDIN = { type: 3, value: \"INCLUDEDIN\" };\n IfcBenchmarkEnum.NOTINCLUDEDIN = { type: 3, value: \"NOTINCLUDEDIN\" };\n IFC42.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IFC42.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBuildingElementPartTypeEnum {\n }\n IfcBuildingElementPartTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcBuildingElementPartTypeEnum.PRECASTPANEL = { type: 3, value: \"PRECASTPANEL\" };\n IfcBuildingElementPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingElementPartTypeEnum = IfcBuildingElementPartTypeEnum;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcBuildingElementProxyTypeEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcBuildingElementProxyTypeEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IfcBuildingElementProxyTypeEnum.PROVISIONFORVOID = { type: 3, value: \"PROVISIONFORVOID\" };\n IfcBuildingElementProxyTypeEnum.PROVISIONFORSPACE = { type: 3, value: \"PROVISIONFORSPACE\" };\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcBuildingSystemTypeEnum {\n }\n IfcBuildingSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuildingSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuildingSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuildingSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuildingSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuildingSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuildingSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBuildingSystemTypeEnum = IfcBuildingSystemTypeEnum;\n class IfcBurnerTypeEnum {\n }\n IfcBurnerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBurnerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcBurnerTypeEnum = IfcBurnerTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.REDUCER = { type: 3, value: \"REDUCER\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableFittingTypeEnum {\n }\n IfcCableFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcCableFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcCableFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableFittingTypeEnum = IfcCableFittingTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.BUSBARSEGMENT = { type: 3, value: \"BUSBARSEGMENT\" };\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.CORESEGMENT = { type: 3, value: \"CORESEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcChimneyTypeEnum {\n }\n IfcChimneyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChimneyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcChimneyTypeEnum = IfcChimneyTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.HYDRONICCOIL = { type: 3, value: \"HYDRONICCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.PILASTER = { type: 3, value: \"PILASTER\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCommunicationsApplianceTypeEnum {\n }\n IfcCommunicationsApplianceTypeEnum.ANTENNA = { type: 3, value: \"ANTENNA\" };\n IfcCommunicationsApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcCommunicationsApplianceTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcCommunicationsApplianceTypeEnum.GATEWAY = { type: 3, value: \"GATEWAY\" };\n IfcCommunicationsApplianceTypeEnum.MODEM = { type: 3, value: \"MODEM\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKAPPLIANCE = { type: 3, value: \"NETWORKAPPLIANCE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKBRIDGE = { type: 3, value: \"NETWORKBRIDGE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKHUB = { type: 3, value: \"NETWORKHUB\" };\n IfcCommunicationsApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcCommunicationsApplianceTypeEnum.REPEATER = { type: 3, value: \"REPEATER\" };\n IfcCommunicationsApplianceTypeEnum.ROUTER = { type: 3, value: \"ROUTER\" };\n IfcCommunicationsApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcCommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCommunicationsApplianceTypeEnum = IfcCommunicationsApplianceTypeEnum;\n class IfcComplexPropertyTemplateTypeEnum {\n }\n IfcComplexPropertyTemplateTypeEnum.P_COMPLEX = { type: 3, value: \"P_COMPLEX\" };\n IfcComplexPropertyTemplateTypeEnum.Q_COMPLEX = { type: 3, value: \"Q_COMPLEX\" };\n IFC42.IfcComplexPropertyTemplateTypeEnum = IfcComplexPropertyTemplateTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstraintEnum = IfcConstraintEnum;\n class IfcConstructionEquipmentResourceTypeEnum {\n }\n IfcConstructionEquipmentResourceTypeEnum.DEMOLISHING = { type: 3, value: \"DEMOLISHING\" };\n IfcConstructionEquipmentResourceTypeEnum.EARTHMOVING = { type: 3, value: \"EARTHMOVING\" };\n IfcConstructionEquipmentResourceTypeEnum.ERECTING = { type: 3, value: \"ERECTING\" };\n IfcConstructionEquipmentResourceTypeEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcConstructionEquipmentResourceTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcConstructionEquipmentResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcConstructionEquipmentResourceTypeEnum.PUMPING = { type: 3, value: \"PUMPING\" };\n IfcConstructionEquipmentResourceTypeEnum.TRANSPORTING = { type: 3, value: \"TRANSPORTING\" };\n IfcConstructionEquipmentResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionEquipmentResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstructionEquipmentResourceTypeEnum = IfcConstructionEquipmentResourceTypeEnum;\n class IfcConstructionMaterialResourceTypeEnum {\n }\n IfcConstructionMaterialResourceTypeEnum.AGGREGATES = { type: 3, value: \"AGGREGATES\" };\n IfcConstructionMaterialResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcConstructionMaterialResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcConstructionMaterialResourceTypeEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcConstructionMaterialResourceTypeEnum.GYPSUM = { type: 3, value: \"GYPSUM\" };\n IfcConstructionMaterialResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcConstructionMaterialResourceTypeEnum.METAL = { type: 3, value: \"METAL\" };\n IfcConstructionMaterialResourceTypeEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcConstructionMaterialResourceTypeEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcConstructionMaterialResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IfcConstructionMaterialResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcConstructionMaterialResourceTypeEnum = IfcConstructionMaterialResourceTypeEnum;\n class IfcConstructionProductResourceTypeEnum {\n }\n IfcConstructionProductResourceTypeEnum.ASSEMBLY = { type: 3, value: \"ASSEMBLY\" };\n IfcConstructionProductResourceTypeEnum.FORMWORK = { type: 3, value: \"FORMWORK\" };\n IfcConstructionProductResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionProductResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcConstructionProductResourceTypeEnum = IfcConstructionProductResourceTypeEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.PROGRAMMABLE = { type: 3, value: \"PROGRAMMABLE\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.MULTIPOSITION = { type: 3, value: \"MULTIPOSITION\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostItemTypeEnum {\n }\n IfcCostItemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostItemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCostItemTypeEnum = IfcCostItemTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.MOLDING = { type: 3, value: \"MOLDING\" };\n IfcCoveringTypeEnum.SKIRTINGBOARD = { type: 3, value: \"SKIRTINGBOARD\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCrewResourceTypeEnum {\n }\n IfcCrewResourceTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcCrewResourceTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcCrewResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCrewResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCrewResourceTypeEnum = IfcCrewResourceTypeEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcCurveInterpolationEnum {\n }\n IfcCurveInterpolationEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LINEAR = { type: 3, value: \"LOG_LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LOG = { type: 3, value: \"LOG_LOG\" };\n IfcCurveInterpolationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcCurveInterpolationEnum = IfcCurveInterpolationEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.AREADENSITYUNIT = { type: 3, value: \"AREADENSITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERLEVELUNIT = { type: 3, value: \"SOUNDPOWERLEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSURELEVELUNIT = { type: 3, value: \"SOUNDPRESSURELEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.TEMPERATURERATEOFCHANGEUNIT = { type: 3, value: \"TEMPERATURERATEOFCHANGEUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IFC42.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDiscreteAccessoryTypeEnum {\n }\n IfcDiscreteAccessoryTypeEnum.ANCHORPLATE = { type: 3, value: \"ANCHORPLATE\" };\n IfcDiscreteAccessoryTypeEnum.BRACKET = { type: 3, value: \"BRACKET\" };\n IfcDiscreteAccessoryTypeEnum.SHOE = { type: 3, value: \"SHOE\" };\n IfcDiscreteAccessoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDiscreteAccessoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDiscreteAccessoryTypeEnum = IfcDiscreteAccessoryTypeEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDistributionPortTypeEnum {\n }\n IfcDistributionPortTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcDistributionPortTypeEnum.CABLECARRIER = { type: 3, value: \"CABLECARRIER\" };\n IfcDistributionPortTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcDistributionPortTypeEnum.PIPE = { type: 3, value: \"PIPE\" };\n IfcDistributionPortTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionPortTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionPortTypeEnum = IfcDistributionPortTypeEnum;\n class IfcDistributionSystemEnum {\n }\n IfcDistributionSystemEnum.AIRCONDITIONING = { type: 3, value: \"AIRCONDITIONING\" };\n IfcDistributionSystemEnum.AUDIOVISUAL = { type: 3, value: \"AUDIOVISUAL\" };\n IfcDistributionSystemEnum.CHEMICAL = { type: 3, value: \"CHEMICAL\" };\n IfcDistributionSystemEnum.CHILLEDWATER = { type: 3, value: \"CHILLEDWATER\" };\n IfcDistributionSystemEnum.COMMUNICATION = { type: 3, value: \"COMMUNICATION\" };\n IfcDistributionSystemEnum.COMPRESSEDAIR = { type: 3, value: \"COMPRESSEDAIR\" };\n IfcDistributionSystemEnum.CONDENSERWATER = { type: 3, value: \"CONDENSERWATER\" };\n IfcDistributionSystemEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcDistributionSystemEnum.CONVEYING = { type: 3, value: \"CONVEYING\" };\n IfcDistributionSystemEnum.DATA = { type: 3, value: \"DATA\" };\n IfcDistributionSystemEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcDistributionSystemEnum.DOMESTICCOLDWATER = { type: 3, value: \"DOMESTICCOLDWATER\" };\n IfcDistributionSystemEnum.DOMESTICHOTWATER = { type: 3, value: \"DOMESTICHOTWATER\" };\n IfcDistributionSystemEnum.DRAINAGE = { type: 3, value: \"DRAINAGE\" };\n IfcDistributionSystemEnum.EARTHING = { type: 3, value: \"EARTHING\" };\n IfcDistributionSystemEnum.ELECTRICAL = { type: 3, value: \"ELECTRICAL\" };\n IfcDistributionSystemEnum.ELECTROACOUSTIC = { type: 3, value: \"ELECTROACOUSTIC\" };\n IfcDistributionSystemEnum.EXHAUST = { type: 3, value: \"EXHAUST\" };\n IfcDistributionSystemEnum.FIREPROTECTION = { type: 3, value: \"FIREPROTECTION\" };\n IfcDistributionSystemEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcDistributionSystemEnum.GAS = { type: 3, value: \"GAS\" };\n IfcDistributionSystemEnum.HAZARDOUS = { type: 3, value: \"HAZARDOUS\" };\n IfcDistributionSystemEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcDistributionSystemEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcDistributionSystemEnum.LIGHTNINGPROTECTION = { type: 3, value: \"LIGHTNINGPROTECTION\" };\n IfcDistributionSystemEnum.MUNICIPALSOLIDWASTE = { type: 3, value: \"MUNICIPALSOLIDWASTE\" };\n IfcDistributionSystemEnum.OIL = { type: 3, value: \"OIL\" };\n IfcDistributionSystemEnum.OPERATIONAL = { type: 3, value: \"OPERATIONAL\" };\n IfcDistributionSystemEnum.POWERGENERATION = { type: 3, value: \"POWERGENERATION\" };\n IfcDistributionSystemEnum.RAINWATER = { type: 3, value: \"RAINWATER\" };\n IfcDistributionSystemEnum.REFRIGERATION = { type: 3, value: \"REFRIGERATION\" };\n IfcDistributionSystemEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcDistributionSystemEnum.SEWAGE = { type: 3, value: \"SEWAGE\" };\n IfcDistributionSystemEnum.SIGNAL = { type: 3, value: \"SIGNAL\" };\n IfcDistributionSystemEnum.STORMWATER = { type: 3, value: \"STORMWATER\" };\n IfcDistributionSystemEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcDistributionSystemEnum.TV = { type: 3, value: \"TV\" };\n IfcDistributionSystemEnum.VACUUM = { type: 3, value: \"VACUUM\" };\n IfcDistributionSystemEnum.VENT = { type: 3, value: \"VENT\" };\n IfcDistributionSystemEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcDistributionSystemEnum.WASTEWATER = { type: 3, value: \"WASTEWATER\" };\n IfcDistributionSystemEnum.WATERSUPPLY = { type: 3, value: \"WATERSUPPLY\" };\n IfcDistributionSystemEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionSystemEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDistributionSystemEnum = IfcDistributionSystemEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.FIXEDPANEL = { type: 3, value: \"FIXEDPANEL\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDoorTypeEnum {\n }\n IfcDoorTypeEnum.DOOR = { type: 3, value: \"DOOR\" };\n IfcDoorTypeEnum.GATE = { type: 3, value: \"GATE\" };\n IfcDoorTypeEnum.TRAPDOOR = { type: 3, value: \"TRAPDOOR\" };\n IfcDoorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorTypeEnum = IfcDoorTypeEnum;\n class IfcDoorTypeOperationEnum {\n }\n IfcDoorTypeOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorTypeOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorTypeOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_LEFT = { type: 3, value: \"SWING_FIXED_LEFT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_RIGHT = { type: 3, value: \"SWING_FIXED_RIGHT\" };\n IfcDoorTypeOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDoorTypeOperationEnum = IfcDoorTypeOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGELECTRICHEATER = { type: 3, value: \"FREESTANDINGELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERHEATER = { type: 3, value: \"FREESTANDINGWATERHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERCOOLER = { type: 3, value: \"FREESTANDINGWATERCOOLER\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.KITCHENMACHINE = { type: 3, value: \"KITCHENMACHINE\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricDistributionBoardTypeEnum {\n }\n IfcElectricDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricDistributionBoardTypeEnum = IfcElectricDistributionBoardTypeEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.CHP = { type: 3, value: \"CHP\" };\n IfcElectricGeneratorTypeEnum.ENGINEGENERATOR = { type: 3, value: \"ENGINEGENERATOR\" };\n IfcElectricGeneratorTypeEnum.STANDALONE = { type: 3, value: \"STANDALONE\" };\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC42.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEngineTypeEnum {\n }\n IfcEngineTypeEnum.EXTERNALCOMBUSTION = { type: 3, value: \"EXTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.INTERNALCOMBUSTION = { type: 3, value: \"INTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEngineTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEngineTypeEnum = IfcEngineTypeEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSION = { type: 3, value: \"DIRECTEXPANSION\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcEventTriggerTypeEnum {\n }\n IfcEventTriggerTypeEnum.EVENTRULE = { type: 3, value: \"EVENTRULE\" };\n IfcEventTriggerTypeEnum.EVENTMESSAGE = { type: 3, value: \"EVENTMESSAGE\" };\n IfcEventTriggerTypeEnum.EVENTTIME = { type: 3, value: \"EVENTTIME\" };\n IfcEventTriggerTypeEnum.EVENTCOMPLEX = { type: 3, value: \"EVENTCOMPLEX\" };\n IfcEventTriggerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTriggerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEventTriggerTypeEnum = IfcEventTriggerTypeEnum;\n class IfcEventTypeEnum {\n }\n IfcEventTypeEnum.STARTEVENT = { type: 3, value: \"STARTEVENT\" };\n IfcEventTypeEnum.ENDEVENT = { type: 3, value: \"ENDEVENT\" };\n IfcEventTypeEnum.INTERMEDIATEEVENT = { type: 3, value: \"INTERMEDIATEEVENT\" };\n IfcEventTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcEventTypeEnum = IfcEventTypeEnum;\n class IfcExternalSpatialElementTypeEnum {\n }\n IfcExternalSpatialElementTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcExternalSpatialElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcExternalSpatialElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcExternalSpatialElementTypeEnum = IfcExternalSpatialElementTypeEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFastenerTypeEnum {\n }\n IfcFastenerTypeEnum.GLUE = { type: 3, value: \"GLUE\" };\n IfcFastenerTypeEnum.MORTAR = { type: 3, value: \"MORTAR\" };\n IfcFastenerTypeEnum.WELD = { type: 3, value: \"WELD\" };\n IfcFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFastenerTypeEnum = IfcFastenerTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.COMPRESSEDAIRFILTER = { type: 3, value: \"COMPRESSEDAIRFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.CAISSON_FOUNDATION = { type: 3, value: \"CAISSON_FOUNDATION\" };\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcFurnitureTypeEnum {\n }\n IfcFurnitureTypeEnum.CHAIR = { type: 3, value: \"CHAIR\" };\n IfcFurnitureTypeEnum.TABLE = { type: 3, value: \"TABLE\" };\n IfcFurnitureTypeEnum.DESK = { type: 3, value: \"DESK\" };\n IfcFurnitureTypeEnum.BED = { type: 3, value: \"BED\" };\n IfcFurnitureTypeEnum.FILECABINET = { type: 3, value: \"FILECABINET\" };\n IfcFurnitureTypeEnum.SHELF = { type: 3, value: \"SHELF\" };\n IfcFurnitureTypeEnum.SOFA = { type: 3, value: \"SOFA\" };\n IfcFurnitureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFurnitureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcFurnitureTypeEnum = IfcFurnitureTypeEnum;\n class IfcGeographicElementTypeEnum {\n }\n IfcGeographicElementTypeEnum.TERRAIN = { type: 3, value: \"TERRAIN\" };\n IfcGeographicElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeographicElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGeographicElementTypeEnum = IfcGeographicElementTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC42.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcGridTypeEnum {\n }\n IfcGridTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcGridTypeEnum.RADIAL = { type: 3, value: \"RADIAL\" };\n IfcGridTypeEnum.TRIANGULAR = { type: 3, value: \"TRIANGULAR\" };\n IfcGridTypeEnum.IRREGULAR = { type: 3, value: \"IRREGULAR\" };\n IfcGridTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGridTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcGridTypeEnum = IfcGridTypeEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcInterceptorTypeEnum {\n }\n IfcInterceptorTypeEnum.CYCLONIC = { type: 3, value: \"CYCLONIC\" };\n IfcInterceptorTypeEnum.GREASE = { type: 3, value: \"GREASE\" };\n IfcInterceptorTypeEnum.OIL = { type: 3, value: \"OIL\" };\n IfcInterceptorTypeEnum.PETROL = { type: 3, value: \"PETROL\" };\n IfcInterceptorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInterceptorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInterceptorTypeEnum = IfcInterceptorTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcInternalOrExternalEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcInternalOrExternalEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.DATA = { type: 3, value: \"DATA\" };\n IfcJunctionBoxTypeEnum.POWER = { type: 3, value: \"POWER\" };\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcKnotType {\n }\n IfcKnotType.UNIFORM_KNOTS = { type: 3, value: \"UNIFORM_KNOTS\" };\n IfcKnotType.QUASI_UNIFORM_KNOTS = { type: 3, value: \"QUASI_UNIFORM_KNOTS\" };\n IfcKnotType.PIECEWISE_BEZIER_KNOTS = { type: 3, value: \"PIECEWISE_BEZIER_KNOTS\" };\n IfcKnotType.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcKnotType = IfcKnotType;\n class IfcLaborResourceTypeEnum {\n }\n IfcLaborResourceTypeEnum.ADMINISTRATION = { type: 3, value: \"ADMINISTRATION\" };\n IfcLaborResourceTypeEnum.CARPENTRY = { type: 3, value: \"CARPENTRY\" };\n IfcLaborResourceTypeEnum.CLEANING = { type: 3, value: \"CLEANING\" };\n IfcLaborResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcLaborResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcLaborResourceTypeEnum.ELECTRIC = { type: 3, value: \"ELECTRIC\" };\n IfcLaborResourceTypeEnum.FINISHING = { type: 3, value: \"FINISHING\" };\n IfcLaborResourceTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcLaborResourceTypeEnum.GENERAL = { type: 3, value: \"GENERAL\" };\n IfcLaborResourceTypeEnum.HVAC = { type: 3, value: \"HVAC\" };\n IfcLaborResourceTypeEnum.LANDSCAPING = { type: 3, value: \"LANDSCAPING\" };\n IfcLaborResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcLaborResourceTypeEnum.PAINTING = { type: 3, value: \"PAINTING\" };\n IfcLaborResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcLaborResourceTypeEnum.PLUMBING = { type: 3, value: \"PLUMBING\" };\n IfcLaborResourceTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcLaborResourceTypeEnum.SITEGRADING = { type: 3, value: \"SITEGRADING\" };\n IfcLaborResourceTypeEnum.STEELWORK = { type: 3, value: \"STEELWORK\" };\n IfcLaborResourceTypeEnum.SURVEYING = { type: 3, value: \"SURVEYING\" };\n IfcLaborResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLaborResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLaborResourceTypeEnum = IfcLaborResourceTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HALOGEN = { type: 3, value: \"HALOGEN\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.LED = { type: 3, value: \"LED\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.OLED = { type: 3, value: \"OLED\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC42.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.SECURITYLIGHTING = { type: 3, value: \"SECURITYLIGHTING\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IfcLogicalOperatorEnum.LOGICALXOR = { type: 3, value: \"LOGICALXOR\" };\n IfcLogicalOperatorEnum.LOGICALNOTAND = { type: 3, value: \"LOGICALNOTAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTOR = { type: 3, value: \"LOGICALNOTOR\" };\n IFC42.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMechanicalFastenerTypeEnum {\n }\n IfcMechanicalFastenerTypeEnum.ANCHORBOLT = { type: 3, value: \"ANCHORBOLT\" };\n IfcMechanicalFastenerTypeEnum.BOLT = { type: 3, value: \"BOLT\" };\n IfcMechanicalFastenerTypeEnum.DOWEL = { type: 3, value: \"DOWEL\" };\n IfcMechanicalFastenerTypeEnum.NAIL = { type: 3, value: \"NAIL\" };\n IfcMechanicalFastenerTypeEnum.NAILPLATE = { type: 3, value: \"NAILPLATE\" };\n IfcMechanicalFastenerTypeEnum.RIVET = { type: 3, value: \"RIVET\" };\n IfcMechanicalFastenerTypeEnum.SCREW = { type: 3, value: \"SCREW\" };\n IfcMechanicalFastenerTypeEnum.SHEARCONNECTOR = { type: 3, value: \"SHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.STAPLE = { type: 3, value: \"STAPLE\" };\n IfcMechanicalFastenerTypeEnum.STUDSHEARCONNECTOR = { type: 3, value: \"STUDSHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMechanicalFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMechanicalFastenerTypeEnum = IfcMechanicalFastenerTypeEnum;\n class IfcMedicalDeviceTypeEnum {\n }\n IfcMedicalDeviceTypeEnum.AIRSTATION = { type: 3, value: \"AIRSTATION\" };\n IfcMedicalDeviceTypeEnum.FEEDAIRUNIT = { type: 3, value: \"FEEDAIRUNIT\" };\n IfcMedicalDeviceTypeEnum.OXYGENGENERATOR = { type: 3, value: \"OXYGENGENERATOR\" };\n IfcMedicalDeviceTypeEnum.OXYGENPLANT = { type: 3, value: \"OXYGENPLANT\" };\n IfcMedicalDeviceTypeEnum.VACUUMSTATION = { type: 3, value: \"VACUUMSTATION\" };\n IfcMedicalDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMedicalDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMedicalDeviceTypeEnum = IfcMedicalDeviceTypeEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNullStyle {\n }\n IfcNullStyle.NULL = { type: 3, value: \"NULL\" };\n IFC42.IfcNullStyle = IfcNullStyle;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.CODEWAIVER = { type: 3, value: \"CODEWAIVER\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.MERGECONFLICT = { type: 3, value: \"MERGECONFLICT\" };\n IfcObjectiveEnum.MODELVIEW = { type: 3, value: \"MODELVIEW\" };\n IfcObjectiveEnum.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOpeningElementTypeEnum {\n }\n IfcOpeningElementTypeEnum.OPENING = { type: 3, value: \"OPENING\" };\n IfcOpeningElementTypeEnum.RECESS = { type: 3, value: \"RECESS\" };\n IfcOpeningElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOpeningElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOpeningElementTypeEnum = IfcOpeningElementTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.DATAOUTLET = { type: 3, value: \"DATAOUTLET\" };\n IfcOutletTypeEnum.TELEPHONEOUTLET = { type: 3, value: \"TELEPHONEOUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPerformanceHistoryTypeEnum {\n }\n IfcPerformanceHistoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPerformanceHistoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPerformanceHistoryTypeEnum = IfcPerformanceHistoryTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPermitTypeEnum {\n }\n IfcPermitTypeEnum.ACCESS = { type: 3, value: \"ACCESS\" };\n IfcPermitTypeEnum.BUILDING = { type: 3, value: \"BUILDING\" };\n IfcPermitTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcPermitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPermitTypeEnum = IfcPermitTypeEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.BORED = { type: 3, value: \"BORED\" };\n IfcPileTypeEnum.DRIVEN = { type: 3, value: \"DRIVEN\" };\n IfcPileTypeEnum.JETGROUTING = { type: 3, value: \"JETGROUTING\" };\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcPreferredSurfaceCurveRepresentation {\n }\n IfcPreferredSurfaceCurveRepresentation.CURVE3D = { type: 3, value: \"CURVE3D\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S1 = { type: 3, value: \"PCURVE_S1\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S2 = { type: 3, value: \"PCURVE_S2\" };\n IFC42.IfcPreferredSurfaceCurveRepresentation = IfcPreferredSurfaceCurveRepresentation;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IFC42.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC42.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcProjectionElementTypeEnum {\n }\n IfcProjectionElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectionElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProjectionElementTypeEnum = IfcProjectionElementTypeEnum;\n class IfcPropertySetTemplateTypeEnum {\n }\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENONLY = { type: 3, value: \"PSET_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENOVERRIDE = { type: 3, value: \"PSET_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.PSET_OCCURRENCEDRIVEN = { type: 3, value: \"PSET_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PERFORMANCEDRIVEN = { type: 3, value: \"PSET_PERFORMANCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENONLY = { type: 3, value: \"QTO_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENOVERRIDE = { type: 3, value: \"QTO_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.QTO_OCCURRENCEDRIVEN = { type: 3, value: \"QTO_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPropertySetTemplateTypeEnum = IfcPropertySetTemplateTypeEnum;\n class IfcProtectiveDeviceTrippingUnitTypeEnum {\n }\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTRONIC = { type: 3, value: \"ELECTRONIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTROMAGNETIC = { type: 3, value: \"ELECTROMAGNETIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.RESIDUALCURRENT = { type: 3, value: \"RESIDUALCURRENT\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProtectiveDeviceTrippingUnitTypeEnum = IfcProtectiveDeviceTrippingUnitTypeEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHLEAKAGECIRCUITBREAKER = { type: 3, value: \"EARTHLEAKAGECIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHINGSWITCH = { type: 3, value: \"EARTHINGSWITCH\" };\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.SUBMERSIBLEPUMP = { type: 3, value: \"SUBMERSIBLEPUMP\" };\n IfcPumpTypeEnum.SUMPPUMP = { type: 3, value: \"SUMPPUMP\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcRecurrenceTypeEnum {\n }\n IfcRecurrenceTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcRecurrenceTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_DAY_OF_MONTH = { type: 3, value: \"MONTHLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_POSITION = { type: 3, value: \"MONTHLY_BY_POSITION\" };\n IfcRecurrenceTypeEnum.BY_DAY_COUNT = { type: 3, value: \"BY_DAY_COUNT\" };\n IfcRecurrenceTypeEnum.BY_WEEKDAY_COUNT = { type: 3, value: \"BY_WEEKDAY_COUNT\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_DAY_OF_MONTH = { type: 3, value: \"YEARLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_POSITION = { type: 3, value: \"YEARLY_BY_POSITION\" };\n IFC42.IfcRecurrenceTypeEnum = IfcRecurrenceTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC42.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcReinforcingBarTypeEnum {\n }\n IfcReinforcingBarTypeEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarTypeEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarTypeEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarTypeEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarTypeEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingBarTypeEnum = IfcReinforcingBarTypeEnum;\n class IfcReinforcingMeshTypeEnum {\n }\n IfcReinforcingMeshTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingMeshTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcReinforcingMeshTypeEnum = IfcReinforcingMeshTypeEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.COMMISSIONINGENGINEER = { type: 3, value: \"COMMISSIONINGENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IFC42.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC42.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IFC42.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.COSENSOR = { type: 3, value: \"COSENSOR\" };\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.CONDUCTANCESENSOR = { type: 3, value: \"CONDUCTANCESENSOR\" };\n IfcSensorTypeEnum.CONTACTSENSOR = { type: 3, value: \"CONTACTSENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.FROSTSENSOR = { type: 3, value: \"FROSTSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.IDENTIFIERSENSOR = { type: 3, value: \"IDENTIFIERSENSOR\" };\n IfcSensorTypeEnum.IONCONCENTRATIONSENSOR = { type: 3, value: \"IONCONCENTRATIONSENSOR\" };\n IfcSensorTypeEnum.LEVELSENSOR = { type: 3, value: \"LEVELSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.PHSENSOR = { type: 3, value: \"PHSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.RADIATIONSENSOR = { type: 3, value: \"RADIATIONSENSOR\" };\n IfcSensorTypeEnum.RADIOACTIVITYSENSOR = { type: 3, value: \"RADIOACTIVITYSENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.WINDSENSOR = { type: 3, value: \"WINDSENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSequenceEnum = IfcSequenceEnum;\n class IfcShadingDeviceTypeEnum {\n }\n IfcShadingDeviceTypeEnum.JALOUSIE = { type: 3, value: \"JALOUSIE\" };\n IfcShadingDeviceTypeEnum.SHUTTER = { type: 3, value: \"SHUTTER\" };\n IfcShadingDeviceTypeEnum.AWNING = { type: 3, value: \"AWNING\" };\n IfcShadingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcShadingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcShadingDeviceTypeEnum = IfcShadingDeviceTypeEnum;\n class IfcSimplePropertyTemplateTypeEnum {\n }\n IfcSimplePropertyTemplateTypeEnum.P_SINGLEVALUE = { type: 3, value: \"P_SINGLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_ENUMERATEDVALUE = { type: 3, value: \"P_ENUMERATEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_BOUNDEDVALUE = { type: 3, value: \"P_BOUNDEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_LISTVALUE = { type: 3, value: \"P_LISTVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_TABLEVALUE = { type: 3, value: \"P_TABLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_REFERENCEVALUE = { type: 3, value: \"P_REFERENCEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.Q_LENGTH = { type: 3, value: \"Q_LENGTH\" };\n IfcSimplePropertyTemplateTypeEnum.Q_AREA = { type: 3, value: \"Q_AREA\" };\n IfcSimplePropertyTemplateTypeEnum.Q_VOLUME = { type: 3, value: \"Q_VOLUME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_COUNT = { type: 3, value: \"Q_COUNT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_WEIGHT = { type: 3, value: \"Q_WEIGHT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_TIME = { type: 3, value: \"Q_TIME\" };\n IFC42.IfcSimplePropertyTemplateTypeEnum = IfcSimplePropertyTemplateTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSolarDeviceTypeEnum {\n }\n IfcSolarDeviceTypeEnum.SOLARCOLLECTOR = { type: 3, value: \"SOLARCOLLECTOR\" };\n IfcSolarDeviceTypeEnum.SOLARPANEL = { type: 3, value: \"SOLARPANEL\" };\n IfcSolarDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSolarDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSolarDeviceTypeEnum = IfcSolarDeviceTypeEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.RADIATOR = { type: 3, value: \"RADIATOR\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.SPACE = { type: 3, value: \"SPACE\" };\n IfcSpaceTypeEnum.PARKING = { type: 3, value: \"PARKING\" };\n IfcSpaceTypeEnum.GFA = { type: 3, value: \"GFA\" };\n IfcSpaceTypeEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcSpaceTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcSpatialZoneTypeEnum {\n }\n IfcSpatialZoneTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcSpatialZoneTypeEnum.FIRESAFETY = { type: 3, value: \"FIRESAFETY\" };\n IfcSpatialZoneTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcSpatialZoneTypeEnum.OCCUPANCY = { type: 3, value: \"OCCUPANCY\" };\n IfcSpatialZoneTypeEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcSpatialZoneTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcSpatialZoneTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcSpatialZoneTypeEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcSpatialZoneTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpatialZoneTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSpatialZoneTypeEnum = IfcSpatialZoneTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IFC42.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveActivityTypeEnum {\n }\n IfcStructuralCurveActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralCurveActivityTypeEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcStructuralCurveActivityTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcStructuralCurveActivityTypeEnum.EQUIDISTANT = { type: 3, value: \"EQUIDISTANT\" };\n IfcStructuralCurveActivityTypeEnum.SINUS = { type: 3, value: \"SINUS\" };\n IfcStructuralCurveActivityTypeEnum.PARABOLA = { type: 3, value: \"PARABOLA\" };\n IfcStructuralCurveActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralCurveActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralCurveActivityTypeEnum = IfcStructuralCurveActivityTypeEnum;\n class IfcStructuralCurveMemberTypeEnum {\n }\n IfcStructuralCurveMemberTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveMemberTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralCurveMemberTypeEnum = IfcStructuralCurveMemberTypeEnum;\n class IfcStructuralSurfaceActivityTypeEnum {\n }\n IfcStructuralSurfaceActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralSurfaceActivityTypeEnum.BILINEAR = { type: 3, value: \"BILINEAR\" };\n IfcStructuralSurfaceActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralSurfaceActivityTypeEnum.ISOCONTOUR = { type: 3, value: \"ISOCONTOUR\" };\n IfcStructuralSurfaceActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralSurfaceActivityTypeEnum = IfcStructuralSurfaceActivityTypeEnum;\n class IfcStructuralSurfaceMemberTypeEnum {\n }\n IfcStructuralSurfaceMemberTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcStructuralSurfaceMemberTypeEnum = IfcStructuralSurfaceMemberTypeEnum;\n class IfcSubContractResourceTypeEnum {\n }\n IfcSubContractResourceTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcSubContractResourceTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcSubContractResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSubContractResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSubContractResourceTypeEnum = IfcSubContractResourceTypeEnum;\n class IfcSurfaceFeatureTypeEnum {\n }\n IfcSurfaceFeatureTypeEnum.MARK = { type: 3, value: \"MARK\" };\n IfcSurfaceFeatureTypeEnum.TAG = { type: 3, value: \"TAG\" };\n IfcSurfaceFeatureTypeEnum.TREATMENT = { type: 3, value: \"TREATMENT\" };\n IfcSurfaceFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSurfaceFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSurfaceFeatureTypeEnum = IfcSurfaceFeatureTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IFC42.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.DIMMERSWITCH = { type: 3, value: \"DIMMERSWITCH\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.KEYPAD = { type: 3, value: \"KEYPAD\" };\n IfcSwitchingDeviceTypeEnum.MOMENTARYSWITCH = { type: 3, value: \"MOMENTARYSWITCH\" };\n IfcSwitchingDeviceTypeEnum.SELECTORSWITCH = { type: 3, value: \"SELECTORSWITCH\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcSystemFurnitureElementTypeEnum {\n }\n IfcSystemFurnitureElementTypeEnum.PANEL = { type: 3, value: \"PANEL\" };\n IfcSystemFurnitureElementTypeEnum.WORKSURFACE = { type: 3, value: \"WORKSURFACE\" };\n IfcSystemFurnitureElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSystemFurnitureElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcSystemFurnitureElementTypeEnum = IfcSystemFurnitureElementTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.BASIN = { type: 3, value: \"BASIN\" };\n IfcTankTypeEnum.BREAKPRESSURE = { type: 3, value: \"BREAKPRESSURE\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.FEEDANDEXPANSION = { type: 3, value: \"FEEDANDEXPANSION\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.STORAGE = { type: 3, value: \"STORAGE\" };\n IfcTankTypeEnum.VESSEL = { type: 3, value: \"VESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTaskDurationEnum {\n }\n IfcTaskDurationEnum.ELAPSEDTIME = { type: 3, value: \"ELAPSEDTIME\" };\n IfcTaskDurationEnum.WORKTIME = { type: 3, value: \"WORKTIME\" };\n IfcTaskDurationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTaskDurationEnum = IfcTaskDurationEnum;\n class IfcTaskTypeEnum {\n }\n IfcTaskTypeEnum.ATTENDANCE = { type: 3, value: \"ATTENDANCE\" };\n IfcTaskTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcTaskTypeEnum.DEMOLITION = { type: 3, value: \"DEMOLITION\" };\n IfcTaskTypeEnum.DISMANTLE = { type: 3, value: \"DISMANTLE\" };\n IfcTaskTypeEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcTaskTypeEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcTaskTypeEnum.LOGISTIC = { type: 3, value: \"LOGISTIC\" };\n IfcTaskTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcTaskTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcTaskTypeEnum.OPERATION = { type: 3, value: \"OPERATION\" };\n IfcTaskTypeEnum.REMOVAL = { type: 3, value: \"REMOVAL\" };\n IfcTaskTypeEnum.RENOVATION = { type: 3, value: \"RENOVATION\" };\n IfcTaskTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTaskTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTaskTypeEnum = IfcTaskTypeEnum;\n class IfcTendonAnchorTypeEnum {\n }\n IfcTendonAnchorTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonAnchorTypeEnum.FIXED_END = { type: 3, value: \"FIXED_END\" };\n IfcTendonAnchorTypeEnum.TENSIONING_END = { type: 3, value: \"TENSIONING_END\" };\n IfcTendonAnchorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonAnchorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTendonAnchorTypeEnum = IfcTendonAnchorTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IFC42.IfcTextPath = IfcTextPath;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.INVERTER = { type: 3, value: \"INVERTER\" };\n IfcTransformerTypeEnum.RECTIFIER = { type: 3, value: \"RECTIFIER\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IFC42.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.CRANEWAY = { type: 3, value: \"CRANEWAY\" };\n IfcTransportElementTypeEnum.LIFTINGGEAR = { type: 3, value: \"LIFTINGGEAR\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC42.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC42.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryControlElementTypeEnum {\n }\n IfcUnitaryControlElementTypeEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcUnitaryControlElementTypeEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcUnitaryControlElementTypeEnum.GASDETECTIONPANEL = { type: 3, value: \"GASDETECTIONPANEL\" };\n IfcUnitaryControlElementTypeEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcUnitaryControlElementTypeEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcUnitaryControlElementTypeEnum.HUMIDISTAT = { type: 3, value: \"HUMIDISTAT\" };\n IfcUnitaryControlElementTypeEnum.THERMOSTAT = { type: 3, value: \"THERMOSTAT\" };\n IfcUnitaryControlElementTypeEnum.WEATHERSTATION = { type: 3, value: \"WEATHERSTATION\" };\n IfcUnitaryControlElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryControlElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcUnitaryControlElementTypeEnum = IfcUnitaryControlElementTypeEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.DEHUMIDIFIER = { type: 3, value: \"DEHUMIDIFIER\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcVoidingFeatureTypeEnum {\n }\n IfcVoidingFeatureTypeEnum.CUTOUT = { type: 3, value: \"CUTOUT\" };\n IfcVoidingFeatureTypeEnum.NOTCH = { type: 3, value: \"NOTCH\" };\n IfcVoidingFeatureTypeEnum.HOLE = { type: 3, value: \"HOLE\" };\n IfcVoidingFeatureTypeEnum.MITER = { type: 3, value: \"MITER\" };\n IfcVoidingFeatureTypeEnum.CHAMFER = { type: 3, value: \"CHAMFER\" };\n IfcVoidingFeatureTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcVoidingFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVoidingFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcVoidingFeatureTypeEnum = IfcVoidingFeatureTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.MOVABLE = { type: 3, value: \"MOVABLE\" };\n IfcWallTypeEnum.PARAPET = { type: 3, value: \"PARAPET\" };\n IfcWallTypeEnum.PARTITIONING = { type: 3, value: \"PARTITIONING\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.SOLIDWALL = { type: 3, value: \"SOLIDWALL\" };\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWindowTypeEnum {\n }\n IfcWindowTypeEnum.WINDOW = { type: 3, value: \"WINDOW\" };\n IfcWindowTypeEnum.SKYLIGHT = { type: 3, value: \"SKYLIGHT\" };\n IfcWindowTypeEnum.LIGHTDOME = { type: 3, value: \"LIGHTDOME\" };\n IfcWindowTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowTypeEnum = IfcWindowTypeEnum;\n class IfcWindowTypePartitioningEnum {\n }\n IfcWindowTypePartitioningEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypePartitioningEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWindowTypePartitioningEnum = IfcWindowTypePartitioningEnum;\n class IfcWorkCalendarTypeEnum {\n }\n IfcWorkCalendarTypeEnum.FIRSTSHIFT = { type: 3, value: \"FIRSTSHIFT\" };\n IfcWorkCalendarTypeEnum.SECONDSHIFT = { type: 3, value: \"SECONDSHIFT\" };\n IfcWorkCalendarTypeEnum.THIRDSHIFT = { type: 3, value: \"THIRDSHIFT\" };\n IfcWorkCalendarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkCalendarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkCalendarTypeEnum = IfcWorkCalendarTypeEnum;\n class IfcWorkPlanTypeEnum {\n }\n IfcWorkPlanTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkPlanTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkPlanTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkPlanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkPlanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkPlanTypeEnum = IfcWorkPlanTypeEnum;\n class IfcWorkScheduleTypeEnum {\n }\n IfcWorkScheduleTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkScheduleTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkScheduleTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC42.IfcWorkScheduleTypeEnum = IfcWorkScheduleTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC42.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC42.IfcAddress = IfcAddress;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC42.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 411424972;\n }\n }\n IFC42.IfcAppliedValue = IfcAppliedValue;\n class IfcApproval extends IfcLineObject {\n constructor(Identifier, Name, Description, TimeOfApproval, Status, Level, Qualifier, RequestingApproval, GivingApproval) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.TimeOfApproval = TimeOfApproval;\n this.Status = Status;\n this.Level = Level;\n this.Qualifier = Qualifier;\n this.RequestingApproval = RequestingApproval;\n this.GivingApproval = GivingApproval;\n this.type = 130549933;\n }\n }\n IFC42.IfcApproval = IfcApproval;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC42.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByLengthX, TranslationalStiffnessByLengthY, TranslationalStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByLengthX = TranslationalStiffnessByLengthX;\n this.TranslationalStiffnessByLengthY = TranslationalStiffnessByLengthY;\n this.TranslationalStiffnessByLengthZ = TranslationalStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC42.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByAreaX, TranslationalStiffnessByAreaY, TranslationalStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByAreaX = TranslationalStiffnessByAreaX;\n this.TranslationalStiffnessByAreaY = TranslationalStiffnessByAreaY;\n this.TranslationalStiffnessByAreaZ = TranslationalStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC42.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC42.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC42.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC42.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC42.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC42.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConnectionVolumeGeometry extends IfcConnectionGeometry {\n constructor(VolumeOnRelatingElement, VolumeOnRelatedElement) {\n super();\n this.VolumeOnRelatingElement = VolumeOnRelatingElement;\n this.VolumeOnRelatedElement = VolumeOnRelatedElement;\n this.type = 775493141;\n }\n }\n IFC42.IfcConnectionVolumeGeometry = IfcConnectionVolumeGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC42.IfcConstraint = IfcConstraint;\n class IfcCoordinateOperation extends IfcLineObject {\n constructor(SourceCRS, TargetCRS) {\n super();\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.type = 1785450214;\n }\n }\n IFC42.IfcCoordinateOperation = IfcCoordinateOperation;\n class IfcCoordinateReferenceSystem extends IfcLineObject {\n constructor(Name, Description, GeodeticDatum, VerticalDatum) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.type = 1466758467;\n }\n }\n IFC42.IfcCoordinateReferenceSystem = IfcCoordinateReferenceSystem;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 602808272;\n }\n }\n IFC42.IfcCostValue = IfcCostValue;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.type = 1765591967;\n }\n }\n IFC42.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC42.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC42.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcExternalInformation extends IfcLineObject {\n constructor() {\n super();\n this.type = 4294318154;\n }\n }\n IFC42.IfcExternalInformation = IfcExternalInformation;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, Identification, Name) {\n super();\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC42.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC42.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC42.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC42.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC42.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC42.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcExternalInformation {\n constructor(Name, Version, Publisher, VersionDate, Location, Description) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.Location = Location;\n this.Description = Description;\n this.type = 2655187982;\n }\n }\n IFC42.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, Language, ReferencedLibrary) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Language = Language;\n this.ReferencedLibrary = ReferencedLibrary;\n this.type = 3452421091;\n }\n }\n IFC42.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC42.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC42.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcMapConversion extends IfcCoordinateOperation {\n constructor(SourceCRS, TargetCRS, Eastings, Northings, OrthogonalHeight, XAxisAbscissa, XAxisOrdinate, Scale) {\n super(SourceCRS, TargetCRS);\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.Eastings = Eastings;\n this.Northings = Northings;\n this.OrthogonalHeight = OrthogonalHeight;\n this.XAxisAbscissa = XAxisAbscissa;\n this.XAxisOrdinate = XAxisOrdinate;\n this.Scale = Scale;\n this.type = 3057273783;\n }\n }\n IFC42.IfcMapConversion = IfcMapConversion;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC42.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 760658860;\n }\n }\n IFC42.IfcMaterialDefinition = IfcMaterialDefinition;\n class IfcMaterialLayer extends IfcMaterialDefinition {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.type = 248100487;\n }\n }\n IFC42.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcMaterialDefinition {\n constructor(MaterialLayers, LayerSetName, Description) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.Description = Description;\n this.type = 3303938423;\n }\n }\n IFC42.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerWithOffsets extends IfcMaterialLayer {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority, OffsetDirection, OffsetValues) {\n super(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority);\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.OffsetDirection = OffsetDirection;\n this.OffsetValues = OffsetValues;\n this.type = 1847252529;\n }\n }\n IFC42.IfcMaterialLayerWithOffsets = IfcMaterialLayerWithOffsets;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC42.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProfile extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Profile, Priority, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.type = 2235152071;\n }\n }\n IFC42.IfcMaterialProfile = IfcMaterialProfile;\n class IfcMaterialProfileSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialProfiles, CompositeProfile) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialProfiles = MaterialProfiles;\n this.CompositeProfile = CompositeProfile;\n this.type = 164193824;\n }\n }\n IFC42.IfcMaterialProfileSet = IfcMaterialProfileSet;\n class IfcMaterialProfileWithOffsets extends IfcMaterialProfile {\n constructor(Name, Description, Material, Profile, Priority, Category, OffsetValues) {\n super(Name, Description, Material, Profile, Priority, Category);\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.OffsetValues = OffsetValues;\n this.type = 552965576;\n }\n }\n IFC42.IfcMaterialProfileWithOffsets = IfcMaterialProfileWithOffsets;\n class IfcMaterialUsageDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 1507914824;\n }\n }\n IFC42.IfcMaterialUsageDefinition = IfcMaterialUsageDefinition;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC42.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue, ReferencePath) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.ReferencePath = ReferencePath;\n this.type = 3368373690;\n }\n }\n IFC42.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC42.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC42.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor() {\n super();\n this.type = 3701648758;\n }\n }\n IFC42.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, LogicalAggregator, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.LogicalAggregator = LogicalAggregator;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC42.IfcObjective = IfcObjective;\n class IfcOrganization extends IfcLineObject {\n constructor(Identification, Name, Description, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC42.IfcOrganization = IfcOrganization;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC42.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Identification, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC42.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC42.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC42.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC42.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC42.IfcPostalAddress = IfcPostalAddress;\n class IfcPresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 677532197;\n }\n }\n IFC42.IfcPresentationItem = IfcPresentationItem;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC42.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC42.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC42.IfcPresentationStyle = IfcPresentationStyle;\n class IfcPresentationStyleAssignment extends IfcLineObject {\n constructor(Styles) {\n super();\n this.Styles = Styles;\n this.type = 2417041796;\n }\n }\n IFC42.IfcPresentationStyleAssignment = IfcPresentationStyleAssignment;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC42.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC42.IfcProfileDef = IfcProfileDef;\n class IfcProjectedCRS extends IfcCoordinateReferenceSystem {\n constructor(Name, Description, GeodeticDatum, VerticalDatum, MapProjection, MapZone, MapUnit) {\n super(Name, Description, GeodeticDatum, VerticalDatum);\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.MapProjection = MapProjection;\n this.MapZone = MapZone;\n this.MapUnit = MapUnit;\n this.type = 3843373140;\n }\n }\n IFC42.IfcProjectedCRS = IfcProjectedCRS;\n class IfcPropertyAbstraction extends IfcLineObject {\n constructor() {\n super();\n this.type = 986844984;\n }\n }\n IFC42.IfcPropertyAbstraction = IfcPropertyAbstraction;\n class IfcPropertyEnumeration extends IfcPropertyAbstraction {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC42.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.Formula = Formula;\n this.type = 2044713172;\n }\n }\n IFC42.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.Formula = Formula;\n this.type = 2093928680;\n }\n }\n IFC42.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.Formula = Formula;\n this.type = 931644368;\n }\n }\n IFC42.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.Formula = Formula;\n this.type = 3252649465;\n }\n }\n IFC42.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.Formula = Formula;\n this.type = 2405470396;\n }\n }\n IFC42.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.Formula = Formula;\n this.type = 825690147;\n }\n }\n IFC42.IfcQuantityWeight = IfcQuantityWeight;\n class IfcRecurrencePattern extends IfcLineObject {\n constructor(RecurrenceType, DayComponent, WeekdayComponent, MonthComponent, Position, Interval, Occurrences, TimePeriods) {\n super();\n this.RecurrenceType = RecurrenceType;\n this.DayComponent = DayComponent;\n this.WeekdayComponent = WeekdayComponent;\n this.MonthComponent = MonthComponent;\n this.Position = Position;\n this.Interval = Interval;\n this.Occurrences = Occurrences;\n this.TimePeriods = TimePeriods;\n this.type = 3915482550;\n }\n }\n IFC42.IfcRecurrencePattern = IfcRecurrencePattern;\n class IfcReference extends IfcLineObject {\n constructor(TypeIdentifier, AttributeIdentifier, InstanceName, ListPositions, InnerReference) {\n super();\n this.TypeIdentifier = TypeIdentifier;\n this.AttributeIdentifier = AttributeIdentifier;\n this.InstanceName = InstanceName;\n this.ListPositions = ListPositions;\n this.InnerReference = InnerReference;\n this.type = 2433181523;\n }\n }\n IFC42.IfcReference = IfcReference;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC42.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC42.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC42.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC42.IfcRepresentationMap = IfcRepresentationMap;\n class IfcResourceLevelRelationship extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2439245199;\n }\n }\n IFC42.IfcResourceLevelRelationship = IfcResourceLevelRelationship;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC42.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(UnitType, Prefix, Name) {\n super(new Handle(0), UnitType);\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC42.IfcSIUnit = IfcSIUnit;\n class IfcSchedulingTime extends IfcLineObject {\n constructor(Name, DataOrigin, UserDefinedDataOrigin) {\n super();\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.type = 1054537805;\n }\n }\n IFC42.IfcSchedulingTime = IfcSchedulingTime;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC42.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC42.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC42.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC42.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC42.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadConfiguration extends IfcStructuralLoad {\n constructor(Name, Values, Locations) {\n super(Name);\n this.Name = Name;\n this.Values = Values;\n this.Locations = Locations;\n this.type = 3478079324;\n }\n }\n IFC42.IfcStructuralLoadConfiguration = IfcStructuralLoadConfiguration;\n class IfcStructuralLoadOrResult extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 609421318;\n }\n }\n IFC42.IfcStructuralLoadOrResult = IfcStructuralLoadOrResult;\n class IfcStructuralLoadStatic extends IfcStructuralLoadOrResult {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC42.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaTConstant, DeltaTY, DeltaTZ) {\n super(Name);\n this.Name = Name;\n this.DeltaTConstant = DeltaTConstant;\n this.DeltaTY = DeltaTY;\n this.DeltaTZ = DeltaTZ;\n this.type = 3408363356;\n }\n }\n IFC42.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC42.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC42.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC42.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceReinforcementArea extends IfcStructuralLoadOrResult {\n constructor(Name, SurfaceReinforcement1, SurfaceReinforcement2, ShearReinforcement) {\n super(Name);\n this.Name = Name;\n this.SurfaceReinforcement1 = SurfaceReinforcement1;\n this.SurfaceReinforcement2 = SurfaceReinforcement2;\n this.ShearReinforcement = ShearReinforcement;\n this.type = 2934153892;\n }\n }\n IFC42.IfcSurfaceReinforcementArea = IfcSurfaceReinforcementArea;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC42.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcPresentationItem {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC42.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcPresentationItem {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC42.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcPresentationItem {\n constructor(SurfaceColour, Transparency) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.type = 846575682;\n }\n }\n IFC42.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcPresentationItem {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC42.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcPresentationItem {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.type = 626085974;\n }\n }\n IFC42.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows, Columns) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.Columns = Columns;\n this.type = 985171141;\n }\n }\n IFC42.IfcTable = IfcTable;\n class IfcTableColumn extends IfcLineObject {\n constructor(Identifier, Name, Description, Unit, ReferencePath) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.ReferencePath = ReferencePath;\n this.type = 2043862942;\n }\n }\n IFC42.IfcTableColumn = IfcTableColumn;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC42.IfcTableRow = IfcTableRow;\n class IfcTaskTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.type = 1549132990;\n }\n }\n IFC42.IfcTaskTime = IfcTaskTime;\n class IfcTaskTimeRecurring extends IfcTaskTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion, Recurrence) {\n super(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.Recurrence = Recurrence;\n this.type = 2771591690;\n }\n }\n IFC42.IfcTaskTimeRecurring = IfcTaskTimeRecurring;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL, MessagingIDs) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.MessagingIDs = MessagingIDs;\n this.type = 912023232;\n }\n }\n IFC42.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 1447204868;\n }\n }\n IFC42.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleForDefinedFont extends IfcPresentationItem {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC42.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcPresentationItem {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC42.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextureCoordinate extends IfcPresentationItem {\n constructor(Maps) {\n super();\n this.Maps = Maps;\n this.type = 280115917;\n }\n }\n IFC42.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Maps, Mode, Parameter) {\n super(Maps);\n this.Maps = Maps;\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC42.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(Maps, Vertices, MappedTo) {\n super(Maps);\n this.Maps = Maps;\n this.Vertices = Vertices;\n this.MappedTo = MappedTo;\n this.type = 2552916305;\n }\n }\n IFC42.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcPresentationItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC42.IfcTextureVertex = IfcTextureVertex;\n class IfcTextureVertexList extends IfcPresentationItem {\n constructor(TexCoordsList) {\n super();\n this.TexCoordsList = TexCoordsList;\n this.type = 3611470254;\n }\n }\n IFC42.IfcTextureVertexList = IfcTextureVertexList;\n class IfcTimePeriod extends IfcLineObject {\n constructor(StartTime, EndTime) {\n super();\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.type = 1199560280;\n }\n }\n IFC42.IfcTimePeriod = IfcTimePeriod;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC42.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC42.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC42.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC42.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC42.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC42.IfcVertex = IfcVertex;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC42.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC42.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWorkTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, RecurrencePattern, Start, Finish) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.RecurrencePattern = RecurrencePattern;\n this.Start = Start;\n this.Finish = Finish;\n this.type = 1236880293;\n }\n }\n IFC42.IfcWorkTime = IfcWorkTime;\n class IfcApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingApproval, RelatedApprovals) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingApproval = RelatingApproval;\n this.RelatedApprovals = RelatedApprovals;\n this.type = 3869604511;\n }\n }\n IFC42.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC42.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC42.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC42.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC42.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC42.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassification extends IfcExternalInformation {\n constructor(Source, Edition, EditionDate, Name, Description, Location, ReferenceTokens) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.ReferenceTokens = ReferenceTokens;\n this.type = 747523909;\n }\n }\n IFC42.IfcClassification = IfcClassification;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, Identification, Name, ReferencedSource, Description, Sort) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.Description = Description;\n this.Sort = Sort;\n this.type = 647927063;\n }\n }\n IFC42.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgbList extends IfcPresentationItem {\n constructor(ColourList) {\n super();\n this.ColourList = ColourList;\n this.type = 3285139300;\n }\n }\n IFC42.IfcColourRgbList = IfcColourRgbList;\n class IfcColourSpecification extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC42.IfcColourSpecification = IfcColourSpecification;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC42.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC42.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC42.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC42.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC42.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC42.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcConversionBasedUnitWithOffset extends IfcConversionBasedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor, ConversionOffset) {\n super(Dimensions, UnitType, Name, ConversionFactor);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.ConversionOffset = ConversionOffset;\n this.type = 2713554722;\n }\n }\n IFC42.IfcConversionBasedUnitWithOffset = IfcConversionBasedUnitWithOffset;\n class IfcCurrencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC42.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 3800577675;\n }\n }\n IFC42.IfcCurveStyle = IfcCurveStyle;\n class IfcCurveStyleFont extends IfcPresentationItem {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC42.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcPresentationItem {\n constructor(Name, CurveFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC42.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcPresentationItem {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC42.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC42.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDocumentInformation extends IfcExternalInformation {\n constructor(Identification, Name, Description, Location, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC42.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingDocument, RelatedDocuments, RelationshipType) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC42.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, ReferencedDocument) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.ReferencedDocument = ReferencedDocument;\n this.type = 3732053477;\n }\n }\n IFC42.IfcDocumentReference = IfcDocumentReference;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC42.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC42.IfcEdgeCurve = IfcEdgeCurve;\n class IfcEventTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ActualDate, EarlyDate, LateDate, ScheduleDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ActualDate = ActualDate;\n this.EarlyDate = EarlyDate;\n this.LateDate = LateDate;\n this.ScheduleDate = ScheduleDate;\n this.type = 211053100;\n }\n }\n IFC42.IfcEventTime = IfcEventTime;\n class IfcExtendedProperties extends IfcPropertyAbstraction {\n constructor(Name, Description, Properties2) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.type = 297599258;\n }\n }\n IFC42.IfcExtendedProperties = IfcExtendedProperties;\n class IfcExternalReferenceRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingReference, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingReference = RelatingReference;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1437805879;\n }\n }\n IFC42.IfcExternalReferenceRelationship = IfcExternalReferenceRelationship;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC42.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC42.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC42.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC42.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC42.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles, ModelorDraughting) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.ModelorDraughting = ModelorDraughting;\n this.type = 738692330;\n }\n }\n IFC42.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC42.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC42.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, new Handle(0), null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC42.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC42.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementLocation, PlacementRefDirection) {\n super();\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC42.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC42.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, URLReference) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.URLReference = URLReference;\n this.type = 3905492369;\n }\n }\n IFC42.IfcImageTexture = IfcImageTexture;\n class IfcIndexedColourMap extends IfcPresentationItem {\n constructor(MappedTo, Opacity, Colours, ColourIndex) {\n super();\n this.MappedTo = MappedTo;\n this.Opacity = Opacity;\n this.Colours = Colours;\n this.ColourIndex = ColourIndex;\n this.type = 3570813810;\n }\n }\n IFC42.IfcIndexedColourMap = IfcIndexedColourMap;\n class IfcIndexedTextureMap extends IfcTextureCoordinate {\n constructor(Maps, MappedTo, TexCoords) {\n super(Maps);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.type = 1437953363;\n }\n }\n IFC42.IfcIndexedTextureMap = IfcIndexedTextureMap;\n class IfcIndexedTriangleTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndex) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndex = TexCoordIndex;\n this.type = 2133299955;\n }\n }\n IFC42.IfcIndexedTriangleTextureMap = IfcIndexedTriangleTextureMap;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC42.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLagTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, LagValue, DurationType) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.LagValue = LagValue;\n this.DurationType = DurationType;\n this.type = 1585845231;\n }\n }\n IFC42.IfcLagTime = IfcLagTime;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC42.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC42.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC42.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC42.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC42.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC42.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC42.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC42.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC42.IfcMappedItem = IfcMappedItem;\n class IfcMaterial extends IfcMaterialDefinition {\n constructor(Name, Description, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.type = 1838606355;\n }\n }\n IFC42.IfcMaterial = IfcMaterial;\n class IfcMaterialConstituent extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Fraction, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Fraction = Fraction;\n this.Category = Category;\n this.type = 3708119e3;\n }\n }\n IFC42.IfcMaterialConstituent = IfcMaterialConstituent;\n class IfcMaterialConstituentSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialConstituents) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialConstituents = MaterialConstituents;\n this.type = 2852063980;\n }\n }\n IFC42.IfcMaterialConstituentSet = IfcMaterialConstituentSet;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC42.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMaterialLayerSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine, ReferenceExtent) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 1303795690;\n }\n }\n IFC42.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialProfileSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent) {\n super();\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 3079605661;\n }\n }\n IFC42.IfcMaterialProfileSetUsage = IfcMaterialProfileSetUsage;\n class IfcMaterialProfileSetUsageTapering extends IfcMaterialProfileSetUsage {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent, ForProfileEndSet, CardinalEndPoint) {\n super(ForProfileSet, CardinalPoint, ReferenceExtent);\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.ForProfileEndSet = ForProfileEndSet;\n this.CardinalEndPoint = CardinalEndPoint;\n this.type = 3404854881;\n }\n }\n IFC42.IfcMaterialProfileSetUsageTapering = IfcMaterialProfileSetUsageTapering;\n class IfcMaterialProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, Material) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC42.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMaterialRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMaterial, RelatedMaterials, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMaterial = RelatingMaterial;\n this.RelatedMaterials = RelatedMaterials;\n this.Expression = Expression;\n this.type = 853536259;\n }\n }\n IFC42.IfcMaterialRelationship = IfcMaterialRelationship;\n class IfcMirroredProfileDef extends IfcDerivedProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Label) {\n super(ProfileType, ProfileName, ParentProfile, new Handle(0), Label);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Label = Label;\n this.type = 2998442950;\n }\n }\n IFC42.IfcMirroredProfileDef = IfcMirroredProfileDef;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC42.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC42.IfcOpenShell = IfcOpenShell;\n class IfcOrganizationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC42.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeElement, Orientation) {\n super(new Handle(0), new Handle(0));\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC42.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC42.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC42.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC42.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC42.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC42.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC42.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC42.IfcPoint = IfcPoint;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC42.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC42.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC42.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC42.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedItem extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC42.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedProperties extends IfcPropertyAbstraction {\n constructor() {\n super();\n this.type = 3778827333;\n }\n }\n IFC42.IfcPreDefinedProperties = IfcPreDefinedProperties;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC42.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC42.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcProfileProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, ProfileDefinition) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC42.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcPropertyAbstraction {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2598011224;\n }\n }\n IFC42.IfcProperty = IfcProperty;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC42.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyDependencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, DependingProperty, DependantProperty, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC42.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC42.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertyTemplateDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1482703590;\n }\n }\n IFC42.IfcPropertyTemplateDefinition = IfcPropertyTemplateDefinition;\n class IfcQuantitySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2090586900;\n }\n }\n IFC42.IfcQuantitySet = IfcQuantitySet;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC42.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC42.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementBarProperties extends IfcPreDefinedProperties {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC42.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC42.IfcRelationship = IfcRelationship;\n class IfcResourceApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatedResourceObjects, RelatingApproval) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 2943643501;\n }\n }\n IFC42.IfcResourceApprovalRelationship = IfcResourceApprovalRelationship;\n class IfcResourceConstraintRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingConstraint, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1608871552;\n }\n }\n IFC42.IfcResourceConstraintRelationship = IfcResourceConstraintRelationship;\n class IfcResourceTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ScheduleWork, ScheduleUsage, ScheduleStart, ScheduleFinish, ScheduleContour, LevelingDelay, IsOverAllocated, StatusTime, ActualWork, ActualUsage, ActualStart, ActualFinish, RemainingWork, RemainingUsage, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ScheduleWork = ScheduleWork;\n this.ScheduleUsage = ScheduleUsage;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleContour = ScheduleContour;\n this.LevelingDelay = LevelingDelay;\n this.IsOverAllocated = IsOverAllocated;\n this.StatusTime = StatusTime;\n this.ActualWork = ActualWork;\n this.ActualUsage = ActualUsage;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingWork = RemainingWork;\n this.RemainingUsage = RemainingUsage;\n this.Completion = Completion;\n this.type = 1042787934;\n }\n }\n IFC42.IfcResourceTime = IfcResourceTime;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC42.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionProperties extends IfcPreDefinedProperties {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC42.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcPreDefinedProperties {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC42.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC42.IfcSectionedSpine = IfcSectionedSpine;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC42.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Description) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.type = 3692461612;\n }\n }\n IFC42.IfcSimpleProperty = IfcSimpleProperty;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC42.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC42.IfcSolidModel = IfcSolidModel;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC42.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC42.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC42.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC42.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC42.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC42.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC42.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC42.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour, Transparency);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC42.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC42.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC42.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptDiskSolidPolygonal extends IfcSweptDiskSolid {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam, FilletRadius) {\n super(Directrix, Radius, InnerRadius, StartParam, EndParam);\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FilletRadius = FilletRadius;\n this.type = 1096409881;\n }\n }\n IFC42.IfcSweptDiskSolidPolygonal = IfcSweptDiskSolidPolygonal;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC42.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.type = 3071757647;\n }\n }\n IFC42.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTessellatedItem extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 901063453;\n }\n }\n IFC42.IfcTessellatedItem = IfcTessellatedItem;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC42.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC42.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC42.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC42.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC42.IfcTypeObject = IfcTypeObject;\n class IfcTypeProcess extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.type = 3736923433;\n }\n }\n IFC42.IfcTypeProcess = IfcTypeProcess;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC42.IfcTypeProduct = IfcTypeProduct;\n class IfcTypeResource extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.type = 3698973494;\n }\n }\n IFC42.IfcTypeResource = IfcTypeResource;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 427810014;\n }\n }\n IFC42.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC42.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC42.IfcVertexLoop = IfcVertexLoop;\n class IfcWindowStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ConstructionType, OperationType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ConstructionType = ConstructionType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 1299126871;\n }\n }\n IFC42.IfcWindowStyle = IfcWindowStyle;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC42.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAdvancedFace extends IfcFaceSurface {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds, FaceSurface, SameSense);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3406155212;\n }\n }\n IFC42.IfcAdvancedFace = IfcAdvancedFace;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC42.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAsymmetricIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomFlangeWidth, OverallDepth, WebThickness, BottomFlangeThickness, BottomFlangeFilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, BottomFlangeEdgeRadius, BottomFlangeSlope, TopFlangeEdgeRadius, TopFlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomFlangeWidth = BottomFlangeWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.BottomFlangeThickness = BottomFlangeThickness;\n this.BottomFlangeFilletRadius = BottomFlangeFilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.BottomFlangeEdgeRadius = BottomFlangeEdgeRadius;\n this.BottomFlangeSlope = BottomFlangeSlope;\n this.TopFlangeEdgeRadius = TopFlangeEdgeRadius;\n this.TopFlangeSlope = TopFlangeSlope;\n this.type = 3207858831;\n }\n }\n IFC42.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC42.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC42.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC42.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC42.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC42.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC42.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC42.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.type = 2898889636;\n }\n }\n IFC42.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC42.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianPointList extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 574549367;\n }\n }\n IFC42.IfcCartesianPointList = IfcCartesianPointList;\n class IfcCartesianPointList2D extends IfcCartesianPointList {\n constructor(CoordList) {\n super();\n this.CoordList = CoordList;\n this.type = 1675464909;\n }\n }\n IFC42.IfcCartesianPointList2D = IfcCartesianPointList2D;\n class IfcCartesianPointList3D extends IfcCartesianPointList {\n constructor(CoordList) {\n super();\n this.CoordList = CoordList;\n this.type = 2059837836;\n }\n }\n IFC42.IfcCartesianPointList3D = IfcCartesianPointList3D;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC42.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC42.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC42.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC42.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC42.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC42.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC42.IfcClosedShell = IfcClosedShell;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC42.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Description, UsageName, HasProperties) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC42.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeCurveSegment extends IfcGeometricRepresentationItem {\n constructor(Transition, SameSense, ParentCurve) {\n super();\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC42.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcConstructionResourceType extends IfcTypeResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2574617495;\n }\n }\n IFC42.IfcConstructionResourceType = IfcConstructionResourceType;\n class IfcContext extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 3419103109;\n }\n }\n IFC42.IfcContext = IfcContext;\n class IfcCrewResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1815067380;\n }\n }\n IFC42.IfcCrewResourceType = IfcCrewResourceType;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC42.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC42.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC42.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC42.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcCurveBoundedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, Boundaries, ImplicitOuter) {\n super();\n this.BasisSurface = BasisSurface;\n this.Boundaries = Boundaries;\n this.ImplicitOuter = ImplicitOuter;\n this.type = 2629017746;\n }\n }\n IFC42.IfcCurveBoundedSurface = IfcCurveBoundedSurface;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC42.IfcDirection = IfcDirection;\n class IfcDoorStyle extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, OperationType, ConstructionType, ParameterTakesPrecedence, Sizeable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.OperationType = OperationType;\n this.ConstructionType = ConstructionType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.Sizeable = Sizeable;\n this.type = 526551008;\n }\n }\n IFC42.IfcDoorStyle = IfcDoorStyle;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC42.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcQuantitySet {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC42.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC42.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC42.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC42.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEventType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, EventTriggerType, UserDefinedEventTriggerType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.type = 4024345920;\n }\n }\n IFC42.IfcEventType = IfcEventType;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC42.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcExtrudedAreaSolidTapered extends IfcExtrudedAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth, EndSweptArea) {\n super(SweptArea, Position, ExtrudedDirection, Depth);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.EndSweptArea = EndSweptArea;\n this.type = 2804161546;\n }\n }\n IFC42.IfcExtrudedAreaSolidTapered = IfcExtrudedAreaSolidTapered;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC42.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC42.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC42.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFixedReferenceSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 2652556860;\n }\n }\n IFC42.IfcFixedReferenceSweptAreaSolid = IfcFixedReferenceSweptAreaSolid;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC42.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 1268542332;\n }\n }\n IFC42.IfcFurnitureType = IfcFurnitureType;\n class IfcGeographicElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4095422895;\n }\n }\n IFC42.IfcGeographicElementType = IfcGeographicElementType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC42.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 1484403080;\n }\n }\n IFC42.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcIndexedPolygonalFace extends IfcTessellatedItem {\n constructor(CoordIndex) {\n super();\n this.CoordIndex = CoordIndex;\n this.type = 178912537;\n }\n }\n IFC42.IfcIndexedPolygonalFace = IfcIndexedPolygonalFace;\n class IfcIndexedPolygonalFaceWithVoids extends IfcIndexedPolygonalFace {\n constructor(CoordIndex, InnerCoordIndices) {\n super(CoordIndex);\n this.CoordIndex = CoordIndex;\n this.InnerCoordIndices = InnerCoordIndices;\n this.type = 2294589976;\n }\n }\n IFC42.IfcIndexedPolygonalFaceWithVoids = IfcIndexedPolygonalFaceWithVoids;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.type = 572779678;\n }\n }\n IFC42.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLaborResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 428585644;\n }\n }\n IFC42.IfcLaborResourceType = IfcLaborResourceType;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC42.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC42.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC42.IfcObject = IfcObject;\n class IfcOffsetCurve2D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC42.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super();\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC42.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcPcurve extends IfcCurve {\n constructor(BasisSurface, ReferenceCurve) {\n super();\n this.BasisSurface = BasisSurface;\n this.ReferenceCurve = ReferenceCurve;\n this.type = 1682466193;\n }\n }\n IFC42.IfcPcurve = IfcPcurve;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC42.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC42.IfcPlane = IfcPlane;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC42.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC42.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3967405729;\n }\n }\n IFC42.IfcPreDefinedPropertySet = IfcPreDefinedPropertySet;\n class IfcProcedureType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.type = 569719735;\n }\n }\n IFC42.IfcProcedureType = IfcProcedureType;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2945172077;\n }\n }\n IFC42.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC42.IfcProduct = IfcProduct;\n class IfcProject extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC42.IfcProject = IfcProject;\n class IfcProjectLibrary extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 653396225;\n }\n }\n IFC42.IfcProjectLibrary = IfcProjectLibrary;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Description, UpperBoundValue, LowerBoundValue, Unit, SetPointValue) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.SetPointValue = SetPointValue;\n this.type = 871118103;\n }\n }\n IFC42.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Description, EnumerationValues, EnumerationReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC42.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Description, ListValues, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC42.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Description, UsageName, PropertyReference) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC42.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC42.IfcPropertySet = IfcPropertySet;\n class IfcPropertySetTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, ApplicableEntity, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.ApplicableEntity = ApplicableEntity;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 492091185;\n }\n }\n IFC42.IfcPropertySetTemplate = IfcPropertySetTemplate;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Description, NominalValue, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC42.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Description, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit, CurveInterpolation) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.CurveInterpolation = CurveInterpolation;\n this.type = 110355661;\n }\n }\n IFC42.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcPropertyTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3521284610;\n }\n }\n IFC42.IfcPropertyTemplate = IfcPropertyTemplate;\n class IfcProxy extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, ProxyType, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.ProxyType = ProxyType;\n this.Tag = Tag;\n this.type = 3219374653;\n }\n }\n IFC42.IfcProxy = IfcProxy;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC42.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC42.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC42.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcReinforcementDefinitionProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC42.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC42.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC42.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC42.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC42.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToGroupByFactor extends IfcRelAssignsToGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup, Factor) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.Factor = Factor;\n this.type = 1027710054;\n }\n }\n IFC42.IfcRelAssignsToGroupByFactor = IfcRelAssignsToGroupByFactor;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC42.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC42.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC42.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC42.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC42.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC42.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC42.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC42.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC42.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC42.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC42.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC42.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC42.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC42.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC42.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC42.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC42.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC42.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC42.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC42.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC42.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC42.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDeclares extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingContext, RelatedDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingContext = RelatingContext;\n this.RelatedDefinitions = RelatedDefinitions;\n this.type = 2565941209;\n }\n }\n IFC42.IfcRelDeclares = IfcRelDeclares;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2551354335;\n }\n }\n IFC42.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 693640335;\n }\n }\n IFC42.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByObject extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingObject) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingObject = RelatingObject;\n this.type = 1462361463;\n }\n }\n IFC42.IfcRelDefinesByObject = IfcRelDefinesByObject;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC42.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByTemplate extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedPropertySets, RelatingTemplate) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedPropertySets = RelatedPropertySets;\n this.RelatingTemplate = RelatingTemplate;\n this.type = 307848117;\n }\n }\n IFC42.IfcRelDefinesByTemplate = IfcRelDefinesByTemplate;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC42.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC42.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC42.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInterferesElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedElement, InterferenceGeometry, InterferenceType, ImpliedOrder) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.InterferenceGeometry = InterferenceGeometry;\n this.InterferenceType = InterferenceType;\n this.ImpliedOrder = ImpliedOrder;\n this.type = 427948657;\n }\n }\n IFC42.IfcRelInterferesElements = IfcRelInterferesElements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC42.IfcRelNests = IfcRelNests;\n class IfcRelProjectsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC42.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC42.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType, UserDefinedSequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.UserDefinedSequenceType = UserDefinedSequenceType;\n this.type = 4122056220;\n }\n }\n IFC42.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC42.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC42.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelSpaceBoundary1stLevel extends IfcRelSpaceBoundary {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.type = 3523091289;\n }\n }\n IFC42.IfcRelSpaceBoundary1stLevel = IfcRelSpaceBoundary1stLevel;\n class IfcRelSpaceBoundary2ndLevel extends IfcRelSpaceBoundary1stLevel {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary, CorrespondingBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.CorrespondingBoundary = CorrespondingBoundary;\n this.type = 1521410863;\n }\n }\n IFC42.IfcRelSpaceBoundary2ndLevel = IfcRelSpaceBoundary2ndLevel;\n class IfcRelVoidsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC42.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcReparametrisedCompositeCurveSegment extends IfcCompositeCurveSegment {\n constructor(Transition, SameSense, ParentCurve, ParamLength) {\n super(Transition, SameSense, ParentCurve);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.ParamLength = ParamLength;\n this.type = 816062949;\n }\n }\n IFC42.IfcReparametrisedCompositeCurveSegment = IfcReparametrisedCompositeCurveSegment;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2914609552;\n }\n }\n IFC42.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC42.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRevolvedAreaSolidTapered extends IfcRevolvedAreaSolid {\n constructor(SweptArea, Position, Axis, Angle, EndSweptArea) {\n super(SweptArea, Position, Axis, Angle);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.EndSweptArea = EndSweptArea;\n this.type = 3243963512;\n }\n }\n IFC42.IfcRevolvedAreaSolidTapered = IfcRevolvedAreaSolidTapered;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC42.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC42.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSimplePropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, PrimaryMeasureType, SecondaryMeasureType, Enumerators, PrimaryUnit, SecondaryUnit, Expression, AccessState) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.PrimaryMeasureType = PrimaryMeasureType;\n this.SecondaryMeasureType = SecondaryMeasureType;\n this.Enumerators = Enumerators;\n this.PrimaryUnit = PrimaryUnit;\n this.SecondaryUnit = SecondaryUnit;\n this.Expression = Expression;\n this.AccessState = AccessState;\n this.type = 3663146110;\n }\n }\n IFC42.IfcSimplePropertyTemplate = IfcSimplePropertyTemplate;\n class IfcSpatialElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 1412071761;\n }\n }\n IFC42.IfcSpatialElement = IfcSpatialElement;\n class IfcSpatialElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 710998568;\n }\n }\n IFC42.IfcSpatialElementType = IfcSpatialElementType;\n class IfcSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC42.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC42.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSpatialZone extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 463610769;\n }\n }\n IFC42.IfcSpatialZone = IfcSpatialZone;\n class IfcSpatialZoneType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 2481509218;\n }\n }\n IFC42.IfcSpatialZoneType = IfcSpatialZoneType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC42.IfcSphere = IfcSphere;\n class IfcSphericalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 4015995234;\n }\n }\n IFC42.IfcSphericalSurface = IfcSphericalSurface;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC42.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC42.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC42.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC42.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC42.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 2218152070;\n }\n }\n IFC42.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuralSurfaceReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 603775116;\n }\n }\n IFC42.IfcStructuralSurfaceReaction = IfcStructuralSurfaceReaction;\n class IfcSubContractResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4095615324;\n }\n }\n IFC42.IfcSubContractResourceType = IfcSubContractResourceType;\n class IfcSurfaceCurve extends IfcCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super();\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 699246055;\n }\n }\n IFC42.IfcSurfaceCurve = IfcSurfaceCurve;\n class IfcSurfaceCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC42.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC42.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC42.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1580310250;\n }\n }\n IFC42.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Status, WorkMethod, IsMilestone, Priority, TaskTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.TaskTime = TaskTime;\n this.PredefinedType = PredefinedType;\n this.type = 3473067441;\n }\n }\n IFC42.IfcTask = IfcTask;\n class IfcTaskType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, WorkMethod) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.WorkMethod = WorkMethod;\n this.type = 3206491090;\n }\n }\n IFC42.IfcTaskType = IfcTaskType;\n class IfcTessellatedFaceSet extends IfcTessellatedItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 2387106220;\n }\n }\n IFC42.IfcTessellatedFaceSet = IfcTessellatedFaceSet;\n class IfcToroidalSurface extends IfcElementarySurface {\n constructor(Position, MajorRadius, MinorRadius) {\n super(Position);\n this.Position = Position;\n this.MajorRadius = MajorRadius;\n this.MinorRadius = MinorRadius;\n this.type = 1935646853;\n }\n }\n IFC42.IfcToroidalSurface = IfcToroidalSurface;\n class IfcTransportElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC42.IfcTransportElementType = IfcTransportElementType;\n class IfcTriangulatedFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Normals, Closed, CoordIndex, PnIndex) {\n super(Coordinates);\n this.Coordinates = Coordinates;\n this.Normals = Normals;\n this.Closed = Closed;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.type = 2916149573;\n }\n }\n IFC42.IfcTriangulatedFaceSet = IfcTriangulatedFaceSet;\n class IfcWindowLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle, LiningOffset, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningOffset = LiningOffset;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 336235671;\n }\n }\n IFC42.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC42.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC42.IfcActor = IfcActor;\n class IfcAdvancedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 1635779807;\n }\n }\n IFC42.IfcAdvancedBrep = IfcAdvancedBrep;\n class IfcAdvancedBrepWithVoids extends IfcAdvancedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 2603310189;\n }\n }\n IFC42.IfcAdvancedBrepWithVoids = IfcAdvancedBrepWithVoids;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1674181508;\n }\n }\n IFC42.IfcAnnotation = IfcAnnotation;\n class IfcBSplineSurface extends IfcBoundedSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect) {\n super();\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.type = 2887950389;\n }\n }\n IFC42.IfcBSplineSurface = IfcBSplineSurface;\n class IfcBSplineSurfaceWithKnots extends IfcBSplineSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.type = 167062518;\n }\n }\n IFC42.IfcBSplineSurfaceWithKnots = IfcBSplineSurfaceWithKnots;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC42.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC42.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC42.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuilding extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC42.IfcBuilding = IfcBuilding;\n class IfcBuildingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1950629157;\n }\n }\n IFC42.IfcBuildingElementType = IfcBuildingElementType;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC42.IfcBuildingStorey = IfcBuildingStorey;\n class IfcChimneyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2197970202;\n }\n }\n IFC42.IfcChimneyType = IfcChimneyType;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC42.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcCivilElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893394355;\n }\n }\n IFC42.IfcCivilElementType = IfcCivilElementType;\n class IfcColumnType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC42.IfcColumnType = IfcColumnType;\n class IfcComplexPropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, UsageName, TemplateType, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.TemplateType = TemplateType;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 3875453745;\n }\n }\n IFC42.IfcComplexPropertyTemplate = IfcComplexPropertyTemplate;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC42.IfcCompositeCurve = IfcCompositeCurve;\n class IfcCompositeCurveOnSurface extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 15328376;\n }\n }\n IFC42.IfcCompositeCurveOnSurface = IfcCompositeCurveOnSurface;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC42.IfcConic = IfcConic;\n class IfcConstructionEquipmentResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 2185764099;\n }\n }\n IFC42.IfcConstructionEquipmentResourceType = IfcConstructionEquipmentResourceType;\n class IfcConstructionMaterialResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4105962743;\n }\n }\n IFC42.IfcConstructionMaterialResourceType = IfcConstructionMaterialResourceType;\n class IfcConstructionProductResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1525564444;\n }\n }\n IFC42.IfcConstructionProductResourceType = IfcConstructionProductResourceType;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC42.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.type = 3293443760;\n }\n }\n IFC42.IfcControl = IfcControl;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, CostValues, CostQuantities) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.CostValues = CostValues;\n this.CostQuantities = CostQuantities;\n this.type = 3895139033;\n }\n }\n IFC42.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, SubmittedOn, UpdateDate) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.SubmittedOn = SubmittedOn;\n this.UpdateDate = UpdateDate;\n this.type = 1419761937;\n }\n }\n IFC42.IfcCostSchedule = IfcCostSchedule;\n class IfcCoveringType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC42.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3295246426;\n }\n }\n IFC42.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC42.IfcCurtainWallType = IfcCurtainWallType;\n class IfcCylindricalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1213902940;\n }\n }\n IFC42.IfcCylindricalSurface = IfcCylindricalSurface;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC42.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC42.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcDoorLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 2963535650;\n }\n }\n IFC42.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC42.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, OperationType, ParameterTakesPrecedence, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 2323601079;\n }\n }\n IFC42.IfcDoorType = IfcDoorType;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC42.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC42.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC42.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC42.IfcElementAssembly = IfcElementAssembly;\n class IfcElementAssemblyType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2397081782;\n }\n }\n IFC42.IfcElementAssemblyType = IfcElementAssemblyType;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC42.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC42.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC42.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC42.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEngineType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 132023988;\n }\n }\n IFC42.IfcEngineType = IfcEngineType;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC42.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC42.IfcEvaporatorType = IfcEvaporatorType;\n class IfcEvent extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType, EventTriggerType, UserDefinedEventTriggerType, EventOccurenceTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.EventOccurenceTime = EventOccurenceTime;\n this.type = 4148101412;\n }\n }\n IFC42.IfcEvent = IfcEvent;\n class IfcExternalSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 2853485674;\n }\n }\n IFC42.IfcExternalSpatialStructureElement = IfcExternalSpatialStructureElement;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC42.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcFacetedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC42.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 647756555;\n }\n }\n IFC42.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2489546625;\n }\n }\n IFC42.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC42.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC42.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC42.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC42.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC42.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC42.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC42.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC42.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC42.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC42.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC42.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFootingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1893162501;\n }\n }\n IFC42.IfcFootingType = IfcFootingType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC42.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurniture extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1509553395;\n }\n }\n IFC42.IfcFurniture = IfcFurniture;\n class IfcGeographicElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3493046030;\n }\n }\n IFC42.IfcGeographicElement = IfcGeographicElement;\n class IfcGrid extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.PredefinedType = PredefinedType;\n this.type = 3009204131;\n }\n }\n IFC42.IfcGrid = IfcGrid;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC42.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC42.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC42.IfcHumidifierType = IfcHumidifierType;\n class IfcIndexedPolyCurve extends IfcBoundedCurve {\n constructor(Points, Segments, SelfIntersect) {\n super();\n this.Points = Points;\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 2571569899;\n }\n }\n IFC42.IfcIndexedPolyCurve = IfcIndexedPolyCurve;\n class IfcInterceptorType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3946677679;\n }\n }\n IFC42.IfcInterceptorType = IfcInterceptorType;\n class IfcIntersectionCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3113134337;\n }\n }\n IFC42.IfcIntersectionCurve = IfcIntersectionCurve;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC42.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC42.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3827777499;\n }\n }\n IFC42.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC42.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC42.IfcLightFixtureType = IfcLightFixtureType;\n class IfcMechanicalFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.PredefinedType = PredefinedType;\n this.type = 377706215;\n }\n }\n IFC42.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 2108223431;\n }\n }\n IFC42.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMedicalDeviceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1114901282;\n }\n }\n IFC42.IfcMedicalDeviceType = IfcMedicalDeviceType;\n class IfcMemberType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC42.IfcMemberType = IfcMemberType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC42.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC42.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3588315303;\n }\n }\n IFC42.IfcOpeningElement = IfcOpeningElement;\n class IfcOpeningStandardCase extends IfcOpeningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3079942009;\n }\n }\n IFC42.IfcOpeningStandardCase = IfcOpeningStandardCase;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC42.IfcOutletType = IfcOutletType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LifeCyclePhase, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LifeCyclePhase = LifeCyclePhase;\n this.PredefinedType = PredefinedType;\n this.type = 2382730787;\n }\n }\n IFC42.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermeableCoveringProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC42.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3327091369;\n }\n }\n IFC42.IfcPermit = IfcPermit;\n class IfcPileType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1158309216;\n }\n }\n IFC42.IfcPileType = IfcPileType;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC42.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC42.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC42.IfcPlateType = IfcPlateType;\n class IfcPolygonalFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Faces, PnIndex) {\n super(Coordinates);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Faces = Faces;\n this.PnIndex = PnIndex;\n this.type = 2839578677;\n }\n }\n IFC42.IfcPolygonalFaceSet = IfcPolygonalFaceSet;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC42.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC42.IfcPort = IfcPort;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.type = 2744685151;\n }\n }\n IFC42.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 2904328755;\n }\n }\n IFC42.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3651124850;\n }\n }\n IFC42.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC42.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC42.IfcPumpType = IfcPumpType;\n class IfcRailingType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC42.IfcRailingType = IfcRailingType;\n class IfcRampFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC42.IfcRampFlightType = IfcRampFlightType;\n class IfcRampType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1469900589;\n }\n }\n IFC42.IfcRampType = IfcRampType;\n class IfcRationalBSplineSurfaceWithKnots extends IfcBSplineSurfaceWithKnots {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec, WeightsData) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 683857671;\n }\n }\n IFC42.IfcRationalBSplineSurfaceWithKnots = IfcRationalBSplineSurfaceWithKnots;\n class IfcReinforcingElement extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC42.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingElementType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 964333572;\n }\n }\n IFC42.IfcReinforcingElementType = IfcReinforcingElementType;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.PredefinedType = PredefinedType;\n this.type = 2320036040;\n }\n }\n IFC42.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcReinforcingMeshType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2310774935;\n }\n }\n IFC42.IfcReinforcingMeshType = IfcReinforcingMeshType;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC42.IfcRelAggregates = IfcRelAggregates;\n class IfcRoofType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2781568857;\n }\n }\n IFC42.IfcRoofType = IfcRoofType;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC42.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcSeamCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 2157484638;\n }\n }\n IFC42.IfcSeamCurve = IfcSeamCurve;\n class IfcShadingDeviceType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4074543187;\n }\n }\n IFC42.IfcShadingDeviceType = IfcShadingDeviceType;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC42.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC42.IfcSlabType = IfcSlabType;\n class IfcSolarDeviceType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1072016465;\n }\n }\n IFC42.IfcSolarDeviceType = IfcSolarDeviceType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC42.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC42.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3812236995;\n }\n }\n IFC42.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC42.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC42.IfcStairFlightType = IfcStairFlightType;\n class IfcStairType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 338393293;\n }\n }\n IFC42.IfcStairType = IfcStairType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 682877961;\n }\n }\n IFC42.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC42.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1004757350;\n }\n }\n IFC42.IfcStructuralCurveAction = IfcStructuralCurveAction;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.Axis = Axis;\n this.type = 4243806635;\n }\n }\n IFC42.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 214636428;\n }\n }\n IFC42.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 2445595289;\n }\n }\n IFC42.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralCurveReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 2757150158;\n }\n }\n IFC42.IfcStructuralCurveReaction = IfcStructuralCurveReaction;\n class IfcStructuralLinearAction extends IfcStructuralCurveAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1807405624;\n }\n }\n IFC42.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC42.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 2082059205;\n }\n }\n IFC42.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 734778138;\n }\n }\n IFC42.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC42.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC42.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 3657597509;\n }\n }\n IFC42.IfcStructuralSurfaceAction = IfcStructuralSurfaceAction;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC42.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 148013059;\n }\n }\n IFC42.IfcSubContractResource = IfcSubContractResource;\n class IfcSurfaceFeature extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3101698114;\n }\n }\n IFC42.IfcSurfaceFeature = IfcSurfaceFeature;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC42.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC42.IfcSystem = IfcSystem;\n class IfcSystemFurnitureElement extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 413509423;\n }\n }\n IFC42.IfcSystemFurnitureElement = IfcSystemFurnitureElement;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC42.IfcTankType = IfcTankType;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC42.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 2347447852;\n }\n }\n IFC42.IfcTendonAnchor = IfcTendonAnchor;\n class IfcTendonAnchorType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3081323446;\n }\n }\n IFC42.IfcTendonAnchorType = IfcTendonAnchorType;\n class IfcTendonType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, SheathDiameter) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.SheathDiameter = SheathDiameter;\n this.type = 2415094496;\n }\n }\n IFC42.IfcTendonType = IfcTendonType;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC42.IfcTransformerType = IfcTransformerType;\n class IfcTransportElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1620046519;\n }\n }\n IFC42.IfcTransportElement = IfcTransportElement;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC42.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC42.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC42.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC42.IfcValveType = IfcValveType;\n class IfcVibrationIsolator extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391383451;\n }\n }\n IFC42.IfcVibrationIsolator = IfcVibrationIsolator;\n class IfcVibrationIsolatorType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC42.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2769231204;\n }\n }\n IFC42.IfcVirtualElement = IfcVirtualElement;\n class IfcVoidingFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 926996030;\n }\n }\n IFC42.IfcVoidingFeature = IfcVoidingFeature;\n class IfcWallType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC42.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC42.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWindowType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, PartitioningType, ParameterTakesPrecedence, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 4009809668;\n }\n }\n IFC42.IfcWindowType = IfcWindowType;\n class IfcWorkCalendar extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, WorkingTimes, ExceptionTimes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.WorkingTimes = WorkingTimes;\n this.ExceptionTimes = ExceptionTimes;\n this.PredefinedType = PredefinedType;\n this.type = 4088093105;\n }\n }\n IFC42.IfcWorkCalendar = IfcWorkCalendar;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.type = 1028945134;\n }\n }\n IFC42.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 4218914973;\n }\n }\n IFC42.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 3342526732;\n }\n }\n IFC42.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.type = 1033361043;\n }\n }\n IFC42.IfcZone = IfcZone;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3821786052;\n }\n }\n IFC42.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC42.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC42.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC42.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC42.IfcAsset = IfcAsset;\n class IfcAudioVisualApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1532957894;\n }\n }\n IFC42.IfcAudioVisualApplianceType = IfcAudioVisualApplianceType;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC42.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBSplineCurveWithKnots extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.type = 2461110595;\n }\n }\n IFC42.IfcBSplineCurveWithKnots = IfcBSplineCurveWithKnots;\n class IfcBeamType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC42.IfcBeamType = IfcBeamType;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC42.IfcBoilerType = IfcBoilerType;\n class IfcBoundaryCurve extends IfcCompositeCurveOnSurface {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1136057603;\n }\n }\n IFC42.IfcBoundaryCurve = IfcBoundaryCurve;\n class IfcBuildingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3299480353;\n }\n }\n IFC42.IfcBuildingElement = IfcBuildingElement;\n class IfcBuildingElementPart extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2979338954;\n }\n }\n IFC42.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementPartType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 39481116;\n }\n }\n IFC42.IfcBuildingElementPartType = IfcBuildingElementPartType;\n class IfcBuildingElementProxy extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1095909175;\n }\n }\n IFC42.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBuildingElementProxyType extends IfcBuildingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC42.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcBuildingSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 1177604601;\n }\n }\n IFC42.IfcBuildingSystem = IfcBuildingSystem;\n class IfcBurnerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2188180465;\n }\n }\n IFC42.IfcBurnerType = IfcBurnerType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC42.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC42.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2674252688;\n }\n }\n IFC42.IfcCableFittingType = IfcCableFittingType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC42.IfcCableSegmentType = IfcCableSegmentType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC42.IfcChillerType = IfcChillerType;\n class IfcChimney extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3296154744;\n }\n }\n IFC42.IfcChimney = IfcChimney;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC42.IfcCircle = IfcCircle;\n class IfcCivilElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1677625105;\n }\n }\n IFC42.IfcCivilElement = IfcCivilElement;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC42.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 843113511;\n }\n }\n IFC42.IfcColumn = IfcColumn;\n class IfcColumnStandardCase extends IfcColumn {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 905975707;\n }\n }\n IFC42.IfcColumnStandardCase = IfcColumnStandardCase;\n class IfcCommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 400855858;\n }\n }\n IFC42.IfcCommunicationsApplianceType = IfcCommunicationsApplianceType;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC42.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC42.IfcCondenserType = IfcCondenserType;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3898045240;\n }\n }\n IFC42.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1060000209;\n }\n }\n IFC42.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 488727124;\n }\n }\n IFC42.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC42.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC42.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCovering extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC42.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3495092785;\n }\n }\n IFC42.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC42.IfcDamperType = IfcDamperType;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1335981549;\n }\n }\n IFC42.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2635815018;\n }\n }\n IFC42.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC42.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC42.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC42.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC42.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection, PredefinedType, SystemType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.PredefinedType = PredefinedType;\n this.SystemType = SystemType;\n this.type = 3041715199;\n }\n }\n IFC42.IfcDistributionPort = IfcDistributionPort;\n class IfcDistributionSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 3205830791;\n }\n }\n IFC42.IfcDistributionSystem = IfcDistributionSystem;\n class IfcDoor extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 395920057;\n }\n }\n IFC42.IfcDoor = IfcDoor;\n class IfcDoorStandardCase extends IfcDoor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 3242481149;\n }\n }\n IFC42.IfcDoorStandardCase = IfcDoorStandardCase;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC42.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC42.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC42.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC42.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2417008758;\n }\n }\n IFC42.IfcElectricDistributionBoardType = IfcElectricDistributionBoardType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC42.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC42.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC42.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC42.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC42.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcEngine extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2814081492;\n }\n }\n IFC42.IfcEngine = IfcEngine;\n class IfcEvaporativeCooler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3747195512;\n }\n }\n IFC42.IfcEvaporativeCooler = IfcEvaporativeCooler;\n class IfcEvaporator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 484807127;\n }\n }\n IFC42.IfcEvaporator = IfcEvaporator;\n class IfcExternalSpatialElement extends IfcExternalSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 1209101575;\n }\n }\n IFC42.IfcExternalSpatialElement = IfcExternalSpatialElement;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC42.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC42.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC42.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC42.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC42.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC42.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMeter extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2188021234;\n }\n }\n IFC42.IfcFlowMeter = IfcFlowMeter;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC42.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC42.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC42.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC42.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC42.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC42.IfcFooting = IfcFooting;\n class IfcHeatExchanger extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3319311131;\n }\n }\n IFC42.IfcHeatExchanger = IfcHeatExchanger;\n class IfcHumidifier extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2068733104;\n }\n }\n IFC42.IfcHumidifier = IfcHumidifier;\n class IfcInterceptor extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4175244083;\n }\n }\n IFC42.IfcInterceptor = IfcInterceptor;\n class IfcJunctionBox extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2176052936;\n }\n }\n IFC42.IfcJunctionBox = IfcJunctionBox;\n class IfcLamp extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 76236018;\n }\n }\n IFC42.IfcLamp = IfcLamp;\n class IfcLightFixture extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 629592764;\n }\n }\n IFC42.IfcLightFixture = IfcLightFixture;\n class IfcMedicalDevice extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1437502449;\n }\n }\n IFC42.IfcMedicalDevice = IfcMedicalDevice;\n class IfcMember extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1073191201;\n }\n }\n IFC42.IfcMember = IfcMember;\n class IfcMemberStandardCase extends IfcMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1911478936;\n }\n }\n IFC42.IfcMemberStandardCase = IfcMemberStandardCase;\n class IfcMotorConnection extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2474470126;\n }\n }\n IFC42.IfcMotorConnection = IfcMotorConnection;\n class IfcOuterBoundaryCurve extends IfcBoundaryCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 144952367;\n }\n }\n IFC42.IfcOuterBoundaryCurve = IfcOuterBoundaryCurve;\n class IfcOutlet extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3694346114;\n }\n }\n IFC42.IfcOutlet = IfcOutlet;\n class IfcPile extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC42.IfcPile = IfcPile;\n class IfcPipeFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 310824031;\n }\n }\n IFC42.IfcPipeFitting = IfcPipeFitting;\n class IfcPipeSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3612865200;\n }\n }\n IFC42.IfcPipeSegment = IfcPipeSegment;\n class IfcPlate extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3171933400;\n }\n }\n IFC42.IfcPlate = IfcPlate;\n class IfcPlateStandardCase extends IfcPlate {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1156407060;\n }\n }\n IFC42.IfcPlateStandardCase = IfcPlateStandardCase;\n class IfcProtectiveDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 738039164;\n }\n }\n IFC42.IfcProtectiveDevice = IfcProtectiveDevice;\n class IfcProtectiveDeviceTrippingUnitType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 655969474;\n }\n }\n IFC42.IfcProtectiveDeviceTrippingUnitType = IfcProtectiveDeviceTrippingUnitType;\n class IfcPump extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 90941305;\n }\n }\n IFC42.IfcPump = IfcPump;\n class IfcRailing extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC42.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3024970846;\n }\n }\n IFC42.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3283111854;\n }\n }\n IFC42.IfcRampFlight = IfcRampFlight;\n class IfcRationalBSplineCurveWithKnots extends IfcBSplineCurveWithKnots {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 1232101972;\n }\n }\n IFC42.IfcRationalBSplineCurveWithKnots = IfcRationalBSplineCurveWithKnots;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, PredefinedType, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.PredefinedType = PredefinedType;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC42.IfcReinforcingBar = IfcReinforcingBar;\n class IfcReinforcingBarType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, BarLength, BarSurface, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarSurface = BarSurface;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2572171363;\n }\n }\n IFC42.IfcReinforcingBarType = IfcReinforcingBarType;\n class IfcRoof extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2016517767;\n }\n }\n IFC42.IfcRoof = IfcRoof;\n class IfcSanitaryTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3053780830;\n }\n }\n IFC42.IfcSanitaryTerminal = IfcSanitaryTerminal;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC42.IfcSensorType = IfcSensorType;\n class IfcShadingDevice extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1329646415;\n }\n }\n IFC42.IfcShadingDevice = IfcShadingDevice;\n class IfcSlab extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC42.IfcSlab = IfcSlab;\n class IfcSlabElementedCase extends IfcSlab {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3127900445;\n }\n }\n IFC42.IfcSlabElementedCase = IfcSlabElementedCase;\n class IfcSlabStandardCase extends IfcSlab {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3027962421;\n }\n }\n IFC42.IfcSlabStandardCase = IfcSlabStandardCase;\n class IfcSolarDevice extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3420628829;\n }\n }\n IFC42.IfcSolarDevice = IfcSolarDevice;\n class IfcSpaceHeater extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1999602285;\n }\n }\n IFC42.IfcSpaceHeater = IfcSpaceHeater;\n class IfcStackTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1404847402;\n }\n }\n IFC42.IfcStackTerminal = IfcStackTerminal;\n class IfcStair extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 331165859;\n }\n }\n IFC42.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRisers, NumberOfTreads, RiserHeight, TreadLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRisers = NumberOfRisers;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.PredefinedType = PredefinedType;\n this.type = 4252922144;\n }\n }\n IFC42.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults, SharedPlacement) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.SharedPlacement = SharedPlacement;\n this.type = 2515109513;\n }\n }\n IFC42.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcStructuralLoadCase extends IfcStructuralLoadGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose, SelfWeightCoefficients) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.SelfWeightCoefficients = SelfWeightCoefficients;\n this.type = 385403989;\n }\n }\n IFC42.IfcStructuralLoadCase = IfcStructuralLoadCase;\n class IfcStructuralPlanarAction extends IfcStructuralSurfaceAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1621171031;\n }\n }\n IFC42.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcSwitchingDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1162798199;\n }\n }\n IFC42.IfcSwitchingDevice = IfcSwitchingDevice;\n class IfcTank extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 812556717;\n }\n }\n IFC42.IfcTank = IfcTank;\n class IfcTransformer extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3825984169;\n }\n }\n IFC42.IfcTransformer = IfcTransformer;\n class IfcTubeBundle extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3026737570;\n }\n }\n IFC42.IfcTubeBundle = IfcTubeBundle;\n class IfcUnitaryControlElementType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3179687236;\n }\n }\n IFC42.IfcUnitaryControlElementType = IfcUnitaryControlElementType;\n class IfcUnitaryEquipment extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4292641817;\n }\n }\n IFC42.IfcUnitaryEquipment = IfcUnitaryEquipment;\n class IfcValve extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4207607924;\n }\n }\n IFC42.IfcValve = IfcValve;\n class IfcWall extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391406946;\n }\n }\n IFC42.IfcWall = IfcWall;\n class IfcWallElementedCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4156078855;\n }\n }\n IFC42.IfcWallElementedCase = IfcWallElementedCase;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3512223829;\n }\n }\n IFC42.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWasteTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4237592921;\n }\n }\n IFC42.IfcWasteTerminal = IfcWasteTerminal;\n class IfcWindow extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 3304561284;\n }\n }\n IFC42.IfcWindow = IfcWindow;\n class IfcWindowStandardCase extends IfcWindow {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 486154966;\n }\n }\n IFC42.IfcWindowStandardCase = IfcWindowStandardCase;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC42.IfcActuatorType = IfcActuatorType;\n class IfcAirTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1634111441;\n }\n }\n IFC42.IfcAirTerminal = IfcAirTerminal;\n class IfcAirTerminalBox extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 177149247;\n }\n }\n IFC42.IfcAirTerminalBox = IfcAirTerminalBox;\n class IfcAirToAirHeatRecovery extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2056796094;\n }\n }\n IFC42.IfcAirToAirHeatRecovery = IfcAirToAirHeatRecovery;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC42.IfcAlarmType = IfcAlarmType;\n class IfcAudioVisualAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 277319702;\n }\n }\n IFC42.IfcAudioVisualAppliance = IfcAudioVisualAppliance;\n class IfcBeam extends IfcBuildingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 753842376;\n }\n }\n IFC42.IfcBeam = IfcBeam;\n class IfcBeamStandardCase extends IfcBeam {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2906023776;\n }\n }\n IFC42.IfcBeamStandardCase = IfcBeamStandardCase;\n class IfcBoiler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 32344328;\n }\n }\n IFC42.IfcBoiler = IfcBoiler;\n class IfcBurner extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2938176219;\n }\n }\n IFC42.IfcBurner = IfcBurner;\n class IfcCableCarrierFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 635142910;\n }\n }\n IFC42.IfcCableCarrierFitting = IfcCableCarrierFitting;\n class IfcCableCarrierSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3758799889;\n }\n }\n IFC42.IfcCableCarrierSegment = IfcCableCarrierSegment;\n class IfcCableFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1051757585;\n }\n }\n IFC42.IfcCableFitting = IfcCableFitting;\n class IfcCableSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4217484030;\n }\n }\n IFC42.IfcCableSegment = IfcCableSegment;\n class IfcChiller extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3902619387;\n }\n }\n IFC42.IfcChiller = IfcChiller;\n class IfcCoil extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 639361253;\n }\n }\n IFC42.IfcCoil = IfcCoil;\n class IfcCommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3221913625;\n }\n }\n IFC42.IfcCommunicationsAppliance = IfcCommunicationsAppliance;\n class IfcCompressor extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3571504051;\n }\n }\n IFC42.IfcCompressor = IfcCompressor;\n class IfcCondenser extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2272882330;\n }\n }\n IFC42.IfcCondenser = IfcCondenser;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC42.IfcControllerType = IfcControllerType;\n class IfcCooledBeam extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4136498852;\n }\n }\n IFC42.IfcCooledBeam = IfcCooledBeam;\n class IfcCoolingTower extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3640358203;\n }\n }\n IFC42.IfcCoolingTower = IfcCoolingTower;\n class IfcDamper extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4074379575;\n }\n }\n IFC42.IfcDamper = IfcDamper;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1052013943;\n }\n }\n IFC42.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionCircuit extends IfcDistributionSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 562808652;\n }\n }\n IFC42.IfcDistributionCircuit = IfcDistributionCircuit;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1062813311;\n }\n }\n IFC42.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcDuctFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 342316401;\n }\n }\n IFC42.IfcDuctFitting = IfcDuctFitting;\n class IfcDuctSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3518393246;\n }\n }\n IFC42.IfcDuctSegment = IfcDuctSegment;\n class IfcDuctSilencer extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1360408905;\n }\n }\n IFC42.IfcDuctSilencer = IfcDuctSilencer;\n class IfcElectricAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1904799276;\n }\n }\n IFC42.IfcElectricAppliance = IfcElectricAppliance;\n class IfcElectricDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 862014818;\n }\n }\n IFC42.IfcElectricDistributionBoard = IfcElectricDistributionBoard;\n class IfcElectricFlowStorageDevice extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3310460725;\n }\n }\n IFC42.IfcElectricFlowStorageDevice = IfcElectricFlowStorageDevice;\n class IfcElectricGenerator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 264262732;\n }\n }\n IFC42.IfcElectricGenerator = IfcElectricGenerator;\n class IfcElectricMotor extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 402227799;\n }\n }\n IFC42.IfcElectricMotor = IfcElectricMotor;\n class IfcElectricTimeControl extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1003880860;\n }\n }\n IFC42.IfcElectricTimeControl = IfcElectricTimeControl;\n class IfcFan extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3415622556;\n }\n }\n IFC42.IfcFan = IfcFan;\n class IfcFilter extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 819412036;\n }\n }\n IFC42.IfcFilter = IfcFilter;\n class IfcFireSuppressionTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1426591983;\n }\n }\n IFC42.IfcFireSuppressionTerminal = IfcFireSuppressionTerminal;\n class IfcFlowInstrument extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 182646315;\n }\n }\n IFC42.IfcFlowInstrument = IfcFlowInstrument;\n class IfcProtectiveDeviceTrippingUnit extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2295281155;\n }\n }\n IFC42.IfcProtectiveDeviceTrippingUnit = IfcProtectiveDeviceTrippingUnit;\n class IfcSensor extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4086658281;\n }\n }\n IFC42.IfcSensor = IfcSensor;\n class IfcUnitaryControlElement extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 630975310;\n }\n }\n IFC42.IfcUnitaryControlElement = IfcUnitaryControlElement;\n class IfcActuator extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4288193352;\n }\n }\n IFC42.IfcActuator = IfcActuator;\n class IfcAlarm extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3087945054;\n }\n }\n IFC42.IfcAlarm = IfcAlarm;\n class IfcController extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 25142252;\n }\n }\n IFC42.IfcController = IfcController;\n})(IFC4 || (IFC4 = {}));\nSchemaNames[3] = [\"IFC4X3\", \"IFC4X3_RC3\", \"IFC4X3_RC$\", \"IFC4X3_RC1\", \"IFC4X3_RC2\"];\nFromRawLineData[3] = {\n 3630933823: (v) => new IFC4X3.IfcActorRole(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value)),\n 618182010: (v) => new IFC4X3.IfcAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2879124712: (v) => new IFC4X3.IfcAlignmentParameterSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3633395639: (v) => new IFC4X3.IfcAlignmentVerticalSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcRatioMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcRatioMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 639542469: (v) => new IFC4X3.IfcApplication(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 411424972: (v) => {\n var _a;\n return new IFC4X3.IfcAppliedValue(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 130549933: (v) => new IFC4X3.IfcApproval(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 4037036970: (v) => new IFC4X3.IfcBoundaryCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1560379544: (v) => new IFC4X3.IfcBoundaryEdgeCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6])),\n 3367102660: (v) => new IFC4X3.IfcBoundaryFaceCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3])),\n 1387855156: (v) => new IFC4X3.IfcBoundaryNodeCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6])),\n 2069777674: (v) => new IFC4X3.IfcBoundaryNodeConditionWarping(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : TypeInitialiser(3, v[1]), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : TypeInitialiser(3, v[5]), !v[6] ? null : TypeInitialiser(3, v[6]), !v[7] ? null : TypeInitialiser(3, v[7])),\n 2859738748: (_) => new IFC4X3.IfcConnectionGeometry(),\n 2614616156: (v) => new IFC4X3.IfcConnectionPointGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2732653382: (v) => new IFC4X3.IfcConnectionSurfaceGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 775493141: (v) => new IFC4X3.IfcConnectionVolumeGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1959218052: (v) => new IFC4X3.IfcConstraint(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1785450214: (v) => new IFC4X3.IfcCoordinateOperation(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1466758467: (v) => new IFC4X3.IfcCoordinateReferenceSystem(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value)),\n 602808272: (v) => {\n var _a;\n return new IFC4X3.IfcCostValue(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1765591967: (v) => {\n var _a;\n return new IFC4X3.IfcDerivedUnit(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 1045800335: (v) => new IFC4X3.IfcDerivedUnitElement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : v[1].value),\n 2949456006: (v) => new IFC4X3.IfcDimensionalExponents(!v[0] ? null : v[0].value, !v[1] ? null : v[1].value, !v[2] ? null : v[2].value, !v[3] ? null : v[3].value, !v[4] ? null : v[4].value, !v[5] ? null : v[5].value, !v[6] ? null : v[6].value),\n 4294318154: (_) => new IFC4X3.IfcExternalInformation(),\n 3200245327: (v) => new IFC4X3.IfcExternalReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2242383968: (v) => new IFC4X3.IfcExternallyDefinedHatchStyle(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 1040185647: (v) => new IFC4X3.IfcExternallyDefinedSurfaceStyle(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3548104201: (v) => new IFC4X3.IfcExternallyDefinedTextFont(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 852622518: (v) => new IFC4X3.IfcGridAxis(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 3020489413: (v) => {\n var _a;\n return new IFC4X3.IfcIrregularTimeSeriesValue(new IFC4X3.IfcDateTime(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 2655187982: (v) => new IFC4X3.IfcLibraryInformation(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcURIReference(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcText(!v[5] ? null : v[5].value)),\n 3452421091: (v) => new IFC4X3.IfcLibraryReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLanguageId(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 4162380809: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLightDistributionData(new IFC4X3.IfcPlaneAngleMeasure(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPlaneAngleMeasure(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLuminousIntensityDistributionMeasure(p.value) : null)) || []);\n },\n 1566485204: (v) => {\n var _a;\n return new IFC4X3.IfcLightIntensityDistribution(v[0], ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3057273783: (v) => new IFC4X3.IfcMapConversion(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcReal(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcReal(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcReal(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcReal(!v[9] ? null : v[9].value)),\n 1847130766: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialClassificationRelationship(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 760658860: (_) => new IFC4X3.IfcMaterialDefinition(),\n 248100487: (v) => new IFC4X3.IfcMaterialLayer(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value)),\n 3303938423: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialLayerSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value));\n },\n 1847252529: (v) => new IFC4X3.IfcMaterialLayerWithOffsets(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), v[7], new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 2199411900: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialList(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2235152071: (v) => new IFC4X3.IfcMaterialProfile(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value)),\n 164193824: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialProfileSet(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 552965576: (v) => new IFC4X3.IfcMaterialProfileWithOffsets(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1507914824: (_) => new IFC4X3.IfcMaterialUsageDefinition(),\n 2597039031: (v) => new IFC4X3.IfcMeasureWithUnit(TypeInitialiser(3, v[0]), new Handle(!v[1] ? null : v[1].value)),\n 3368373690: (v) => new IFC4X3.IfcMetric(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2706619895: (v) => new IFC4X3.IfcMonetaryUnit(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1918398963: (v) => new IFC4X3.IfcNamedUnit(new Handle(!v[0] ? null : v[0].value), v[1]),\n 3701648758: (v) => new IFC4X3.IfcObjectPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value)),\n 2251480897: (v) => {\n var _a;\n return new IFC4X3.IfcObjective(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8], v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 4251960020: (v) => {\n var _a, _b;\n return new IFC4X3.IfcOrganization(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1207048766: (v) => new IFC4X3.IfcOwnerHistory(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], v[3], !v[4] ? null : new IFC4X3.IfcTimeStamp(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcTimeStamp(!v[7] ? null : v[7].value)),\n 2077209135: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4X3.IfcPerson(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : ((_d = v[6]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_e = v[7]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 101040310: (v) => {\n var _a;\n return new IFC4X3.IfcPersonAndOrganization(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2483315170: (v) => new IFC4X3.IfcPhysicalQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2226359599: (v) => new IFC4X3.IfcPhysicalSimpleQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3355820592: (v) => {\n var _a;\n return new IFC4X3.IfcPostalAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value));\n },\n 677532197: (_) => new IFC4X3.IfcPresentationItem(),\n 2022622350: (v) => {\n var _a;\n return new IFC4X3.IfcPresentationLayerAssignment(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value));\n },\n 1304840413: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPresentationLayerWithStyle(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3119450353: (v) => new IFC4X3.IfcPresentationStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2095639259: (v) => {\n var _a;\n return new IFC4X3.IfcProductRepresentation(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958567839: (v) => new IFC4X3.IfcProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3843373140: (v) => new IFC4X3.IfcProjectedCRS(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcIdentifier(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 986844984: (_) => new IFC4X3.IfcPropertyAbstraction(),\n 3710013099: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyEnumeration(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[2] ? null : new Handle(!v[2] ? null : v[2].value));\n },\n 2044713172: (v) => new IFC4X3.IfcQuantityArea(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcAreaMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2093928680: (v) => new IFC4X3.IfcQuantityCount(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcCountMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 931644368: (v) => new IFC4X3.IfcQuantityLength(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2691318326: (v) => new IFC4X3.IfcQuantityNumber(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcNumericMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3252649465: (v) => new IFC4X3.IfcQuantityTime(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcTimeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2405470396: (v) => new IFC4X3.IfcQuantityVolume(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcVolumeMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 825690147: (v) => new IFC4X3.IfcQuantityWeight(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcMassMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 3915482550: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcRecurrencePattern(v[0], !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcDayInMonthNumber(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcDayInWeekNumber(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcMonthInYearNumber(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcInteger(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcInteger(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), !v[7] ? null : ((_d = v[7]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2433181523: (v) => {\n var _a;\n return new IFC4X3.IfcReference(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 1076942058: (v) => {\n var _a;\n return new IFC4X3.IfcRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3377609919: (v) => new IFC4X3.IfcRepresentationContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value)),\n 3008791417: (_) => new IFC4X3.IfcRepresentationItem(),\n 1660063152: (v) => new IFC4X3.IfcRepresentationMap(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 2439245199: (v) => new IFC4X3.IfcResourceLevelRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2341007311: (v) => new IFC4X3.IfcRoot(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 448429030: (v) => new IFC4X3.IfcSIUnit(new Handle(!v[0] ? null : v[0].value), v[1], v[2], v[3]),\n 1054537805: (v) => new IFC4X3.IfcSchedulingTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 867548509: (v) => {\n var _a;\n return new IFC4X3.IfcShapeAspect(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value));\n },\n 3982875396: (v) => {\n var _a;\n return new IFC4X3.IfcShapeModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4240577450: (v) => {\n var _a;\n return new IFC4X3.IfcShapeRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2273995522: (v) => new IFC4X3.IfcStructuralConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2162789131: (v) => new IFC4X3.IfcStructuralLoad(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3478079324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStructuralLoadConfiguration(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []));\n },\n 609421318: (v) => new IFC4X3.IfcStructuralLoadOrResult(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2525727697: (v) => new IFC4X3.IfcStructuralLoadStatic(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3408363356: (v) => new IFC4X3.IfcStructuralLoadTemperature(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[3] ? null : v[3].value)),\n 2830218821: (v) => {\n var _a;\n return new IFC4X3.IfcStyleModel(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3958052878: (v) => {\n var _a;\n return new IFC4X3.IfcStyledItem(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 3049322572: (v) => {\n var _a;\n return new IFC4X3.IfcStyledRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2934153892: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSurfaceReinforcementArea(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcRatioMeasure(!v[3] ? null : v[3].value));\n },\n 1300840506: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3303107099: (v) => new IFC4X3.IfcSurfaceStyleLighting(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 1607154358: (v) => new IFC4X3.IfcSurfaceStyleRefraction(!v[0] ? null : new IFC4X3.IfcReal(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcReal(!v[1] ? null : v[1].value)),\n 846575682: (v) => new IFC4X3.IfcSurfaceStyleShading(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value)),\n 1351298697: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceStyleWithTextures(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 626085974: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || []);\n },\n 985171141: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTable(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2043862942: (v) => new IFC4X3.IfcTableColumn(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 531007025: (v) => {\n var _a;\n return new IFC4X3.IfcTableRow(!v[0] ? null : ((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value));\n },\n 1549132990: (v) => new IFC4X3.IfcTaskTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4X3.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value)),\n 2771591690: (v) => new IFC4X3.IfcTaskTimeRecurring(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), v[3], !v[4] ? null : new IFC4X3.IfcDuration(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcDateTime(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDuration(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcBoolean(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcDateTime(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcDateTime(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcDuration(!v[18] ? null : v[18].value), !v[19] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[19] ? null : v[19].value), new Handle(!v[20] ? null : v[20].value)),\n 912023232: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcTelecomAddress(v[0], !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[4] ? null : ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcURIReference(!v[7] ? null : v[7].value), !v[8] ? null : ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcURIReference(p.value) : null)) || []);\n },\n 1447204868: (v) => new IFC4X3.IfcTextStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcBoolean(!v[4] ? null : v[4].value)),\n 2636378356: (v) => new IFC4X3.IfcTextStyleForDefinedFont(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1640371178: (v) => new IFC4X3.IfcTextStyleTextModel(!v[0] ? null : TypeInitialiser(3, v[0]), !v[1] ? null : new IFC4X3.IfcTextAlignment(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcTextDecoration(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), !v[5] ? null : new IFC4X3.IfcTextTransformation(!v[5] ? null : v[5].value), !v[6] ? null : TypeInitialiser(3, v[6])),\n 280115917: (v) => {\n var _a;\n return new IFC4X3.IfcTextureCoordinate(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1742049831: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureCoordinateGenerator(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 222769930: (v) => {\n var _a;\n return new IFC4X3.IfcTextureCoordinateIndices(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value));\n },\n 1010789467: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureCoordinateIndicesWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), (_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 2552916305: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[2] ? null : v[2].value));\n },\n 1210645708: (v) => {\n var _a;\n return new IFC4X3.IfcTextureVertex(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || []);\n },\n 3611470254: (v) => {\n var _a;\n return new IFC4X3.IfcTextureVertexList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []));\n },\n 1199560280: (v) => new IFC4X3.IfcTimePeriod(new IFC4X3.IfcTime(!v[0] ? null : v[0].value), new IFC4X3.IfcTime(!v[1] ? null : v[1].value)),\n 3101149627: (v) => new IFC4X3.IfcTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 581633288: (v) => {\n var _a;\n return new IFC4X3.IfcTimeSeriesValue(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 1377556343: (_) => new IFC4X3.IfcTopologicalRepresentationItem(),\n 1735638870: (v) => {\n var _a;\n return new IFC4X3.IfcTopologyRepresentation(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 180925521: (v) => {\n var _a;\n return new IFC4X3.IfcUnitAssignment(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2799835756: (_) => new IFC4X3.IfcVertex(),\n 1907098498: (v) => new IFC4X3.IfcVertexPoint(new Handle(!v[0] ? null : v[0].value)),\n 891718957: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVirtualGridIntersection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 1236880293: (v) => new IFC4X3.IfcWorkTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDate(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDate(!v[5] ? null : v[5].value)),\n 3752311538: (v) => new IFC4X3.IfcAlignmentCantSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 536804194: (v) => new IFC4X3.IfcAlignmentHorizontalSegment(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), v[8]),\n 3869604511: (v) => {\n var _a;\n return new IFC4X3.IfcApprovalRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3798115385: (v) => new IFC4X3.IfcArbitraryClosedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1310608509: (v) => new IFC4X3.IfcArbitraryOpenProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2705031697: (v) => {\n var _a;\n return new IFC4X3.IfcArbitraryProfileDefWithVoids(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 616511568: (v) => {\n var _a;\n return new IFC4X3.IfcBlobTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcBinary(!v[6] ? null : v[6].value));\n },\n 3150382593: (v) => new IFC4X3.IfcCenterLineProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 747523909: (v) => {\n var _a;\n return new IFC4X3.IfcClassification(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcDate(!v[2] ? null : v[2].value), new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcURIReference(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || []);\n },\n 647927063: (v) => new IFC4X3.IfcClassificationReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 3285139300: (v) => {\n var _a;\n return new IFC4X3.IfcColourRgbList((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcNormalisedRatioMeasure(p2.value) : null)) || []));\n },\n 3264961684: (v) => new IFC4X3.IfcColourSpecification(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1485152156: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : new IFC4X3.IfcLabel(!v[3] ? null : v[3].value));\n },\n 370225590: (v) => {\n var _a;\n return new IFC4X3.IfcConnectedFaceSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1981873012: (v) => new IFC4X3.IfcConnectionCurveGeometry(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 45288368: (v) => new IFC4X3.IfcConnectionPointEccentricity(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 3050246964: (v) => new IFC4X3.IfcContextDependentUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 2889183280: (v) => new IFC4X3.IfcConversionBasedUnit(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2713554722: (v) => new IFC4X3.IfcConversionBasedUnitWithOffset(new Handle(!v[0] ? null : v[0].value), v[1], new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcReal(!v[4] ? null : v[4].value)),\n 539742890: (v) => new IFC4X3.IfcCurrencyRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3800577675: (v) => new IFC4X3.IfcCurveStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcBoolean(!v[4] ? null : v[4].value)),\n 1105321065: (v) => {\n var _a;\n return new IFC4X3.IfcCurveStyleFont(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2367409068: (v) => new IFC4X3.IfcCurveStyleFontAndScaling(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value)),\n 3510044353: (v) => new IFC4X3.IfcCurveStyleFontPattern(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 3632507154: (v) => new IFC4X3.IfcDerivedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1154170062: (v) => {\n var _a;\n return new IFC4X3.IfcDocumentInformation(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcURIReference(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcText(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcIdentifier(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcDate(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDate(!v[14] ? null : v[14].value), v[15], v[16]);\n },\n 770865208: (v) => {\n var _a;\n return new IFC4X3.IfcDocumentInformationRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value));\n },\n 3732053477: (v) => new IFC4X3.IfcDocumentReference(!v[0] ? null : new IFC4X3.IfcURIReference(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcIdentifier(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 3900360178: (v) => new IFC4X3.IfcEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 476780140: (v) => new IFC4X3.IfcEdgeCurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcBoolean(!v[3] ? null : v[3].value)),\n 211053100: (v) => new IFC4X3.IfcEventTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcDateTime(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value)),\n 297599258: (v) => {\n var _a;\n return new IFC4X3.IfcExtendedProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1437805879: (v) => {\n var _a;\n return new IFC4X3.IfcExternalReferenceRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2556980723: (v) => {\n var _a;\n return new IFC4X3.IfcFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1809719519: (v) => new IFC4X3.IfcFaceBound(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 803316827: (v) => new IFC4X3.IfcFaceOuterBound(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 3008276851: (v) => {\n var _a;\n return new IFC4X3.IfcFaceSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4219587988: (v) => new IFC4X3.IfcFailureConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcForceMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcForceMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcForceMeasure(!v[6] ? null : v[6].value)),\n 738692330: (v) => {\n var _a;\n return new IFC4X3.IfcFillAreaStyle(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 3448662350: (v) => new IFC4X3.IfcGeometricRepresentationContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcDimensionCount(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value)),\n 2453401579: (_) => new IFC4X3.IfcGeometricRepresentationItem(),\n 4142052618: (v) => new IFC4X3.IfcGeometricRepresentationSubContext(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 3590301190: (v) => {\n var _a;\n return new IFC4X3.IfcGeometricSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 178086475: (v) => new IFC4X3.IfcGridPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 812098782: (v) => new IFC4X3.IfcHalfSpaceSolid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 3905492369: (v) => {\n var _a;\n return new IFC4X3.IfcImageTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcURIReference(!v[5] ? null : v[5].value));\n },\n 3570813810: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedColourMap(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1437953363: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value));\n },\n 2133299955: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedTriangleTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3741457305: (v) => {\n var _a;\n return new IFC4X3.IfcIrregularTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1585845231: (v) => new IFC4X3.IfcLagTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), TypeInitialiser(3, v[3]), v[4]),\n 1402838566: (v) => new IFC4X3.IfcLightSource(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 125510826: (v) => new IFC4X3.IfcLightSourceAmbient(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2604431987: (v) => new IFC4X3.IfcLightSourceDirectional(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4266656042: (v) => new IFC4X3.IfcLightSourceGoniometric(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), new IFC4X3.IfcThermodynamicTemperatureMeasure(!v[6] ? null : v[6].value), new IFC4X3.IfcLuminousFluxMeasure(!v[7] ? null : v[7].value), v[8], new Handle(!v[9] ? null : v[9].value)),\n 1520743889: (v) => new IFC4X3.IfcLightSourcePositional(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcReal(!v[6] ? null : v[6].value), new IFC4X3.IfcReal(!v[7] ? null : v[7].value), new IFC4X3.IfcReal(!v[8] ? null : v[8].value)),\n 3422422726: (v) => new IFC4X3.IfcLightSourceSpot(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcReal(!v[6] ? null : v[6].value), new IFC4X3.IfcReal(!v[7] ? null : v[7].value), new IFC4X3.IfcReal(!v[8] ? null : v[8].value), new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcReal(!v[10] ? null : v[10].value), new IFC4X3.IfcPositivePlaneAngleMeasure(!v[11] ? null : v[11].value), new IFC4X3.IfcPositivePlaneAngleMeasure(!v[12] ? null : v[12].value)),\n 388784114: (v) => new IFC4X3.IfcLinearPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2624227202: (v) => new IFC4X3.IfcLocalPlacement(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1008929658: (_) => new IFC4X3.IfcLoop(),\n 2347385850: (v) => new IFC4X3.IfcMappedItem(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1838606355: (v) => new IFC4X3.IfcMaterial(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value)),\n 3708119e3: (v) => new IFC4X3.IfcMaterialConstituent(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 2852063980: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialConstituentSet(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2022407955: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialDefinitionRepresentation(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1303795690: (v) => new IFC4X3.IfcMaterialLayerSetUsage(new Handle(!v[0] ? null : v[0].value), v[1], v[2], new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3079605661: (v) => new IFC4X3.IfcMaterialProfileSetUsage(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3404854881: (v) => new IFC4X3.IfcMaterialProfileSetUsageTapering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcCardinalPointReference(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcCardinalPointReference(!v[4] ? null : v[4].value)),\n 3265635763: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 853536259: (v) => {\n var _a;\n return new IFC4X3.IfcMaterialRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value));\n },\n 2998442950: (v) => new IFC4X3.IfcMirroredProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 219451334: (v) => new IFC4X3.IfcObjectDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 182550632: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcOpenCrossProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcNonNegativeLengthMeasure(p.value) : null)) || [], ((_b = v[4]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPlaneAngleMeasure(p.value) : null)) || [], !v[5] ? null : ((_c = v[5]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || [], !v[6] ? null : new Handle(!v[6] ? null : v[6].value));\n },\n 2665983363: (v) => {\n var _a;\n return new IFC4X3.IfcOpenShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1411181986: (v) => {\n var _a;\n return new IFC4X3.IfcOrganizationRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1029017970: (v) => new IFC4X3.IfcOrientedEdge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value)),\n 2529465313: (v) => new IFC4X3.IfcParameterizedProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2519244187: (v) => {\n var _a;\n return new IFC4X3.IfcPath(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3021840470: (v) => {\n var _a;\n return new IFC4X3.IfcPhysicalComplexQuantity(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLabel(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value));\n },\n 597895409: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPixelTexture(new IFC4X3.IfcBoolean(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcIdentifier(p.value) : null)) || [], new IFC4X3.IfcInteger(!v[5] ? null : v[5].value), new IFC4X3.IfcInteger(!v[6] ? null : v[6].value), new IFC4X3.IfcInteger(!v[7] ? null : v[7].value), ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcBinary(p.value) : null)) || []);\n },\n 2004835150: (v) => new IFC4X3.IfcPlacement(new Handle(!v[0] ? null : v[0].value)),\n 1663979128: (v) => new IFC4X3.IfcPlanarExtent(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2067069095: (_) => new IFC4X3.IfcPoint(),\n 2165702409: (v) => new IFC4X3.IfcPointByDistanceExpression(TypeInitialiser(3, v[0]), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4022376103: (v) => new IFC4X3.IfcPointOnCurve(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value)),\n 1423911732: (v) => new IFC4X3.IfcPointOnSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4X3.IfcParameterValue(!v[2] ? null : v[2].value)),\n 2924175390: (v) => {\n var _a;\n return new IFC4X3.IfcPolyLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2775532180: (v) => new IFC4X3.IfcPolygonalBoundedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 3727388367: (v) => new IFC4X3.IfcPreDefinedItem(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3778827333: (_) => new IFC4X3.IfcPreDefinedProperties(),\n 1775413392: (v) => new IFC4X3.IfcPreDefinedTextFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 673634403: (v) => {\n var _a;\n return new IFC4X3.IfcProductDefinitionShape(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802850158: (v) => {\n var _a;\n return new IFC4X3.IfcProfileProperties(!v[0] ? null : new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 2598011224: (v) => new IFC4X3.IfcProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 1680319473: (v) => new IFC4X3.IfcPropertyDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 148025276: (v) => new IFC4X3.IfcPropertyDependencyRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value)),\n 3357820518: (v) => new IFC4X3.IfcPropertySetDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1482703590: (v) => new IFC4X3.IfcPropertyTemplateDefinition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2090586900: (v) => new IFC4X3.IfcQuantitySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 3615266464: (v) => new IFC4X3.IfcRectangleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3413951693: (v) => {\n var _a;\n return new IFC4X3.IfcRegularTimeSeries(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcDateTime(!v[2] ? null : v[2].value), new IFC4X3.IfcDateTime(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new IFC4X3.IfcTimeMeasure(!v[8] ? null : v[8].value), ((_a = v[9]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1580146022: (v) => new IFC4X3.IfcReinforcementBarProperties(new IFC4X3.IfcAreaMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), v[2], !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcCountMeasure(!v[5] ? null : v[5].value)),\n 478536968: (v) => new IFC4X3.IfcRelationship(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2943643501: (v) => {\n var _a;\n return new IFC4X3.IfcResourceApprovalRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[3] ? null : v[3].value));\n },\n 1608871552: (v) => {\n var _a;\n return new IFC4X3.IfcResourceConstraintRelationship(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1042787934: (v) => new IFC4X3.IfcResourceTime(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), v[1], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcDuration(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcDateTime(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDuration(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDateTime(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcDuration(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcDateTime(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcDateTime(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcDuration(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcPositiveRatioMeasure(!v[17] ? null : v[17].value)),\n 2778083089: (v) => new IFC4X3.IfcRoundedRectangleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value)),\n 2042790032: (v) => new IFC4X3.IfcSectionProperties(v[0], new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 4165799628: (v) => {\n var _a;\n return new IFC4X3.IfcSectionReinforcementProperties(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), v[3], new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1509187699: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSpine(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 823603102: (v) => new IFC4X3.IfcSegment(v[0]),\n 4124623270: (v) => {\n var _a;\n return new IFC4X3.IfcShellBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3692461612: (v) => new IFC4X3.IfcSimpleProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value)),\n 2609359061: (v) => new IFC4X3.IfcSlippageConnectionCondition(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 723233188: (_) => new IFC4X3.IfcSolidModel(),\n 1595516126: (v) => new IFC4X3.IfcStructuralLoadLinearForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLinearForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLinearForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLinearForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLinearMomentMeasure(!v[6] ? null : v[6].value)),\n 2668620305: (v) => new IFC4X3.IfcStructuralLoadPlanarForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcPlanarForceMeasure(!v[3] ? null : v[3].value)),\n 2473145415: (v) => new IFC4X3.IfcStructuralLoadSingleDisplacement(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value)),\n 1973038258: (v) => new IFC4X3.IfcStructuralLoadSingleDisplacementDistortion(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcCurvatureMeasure(!v[7] ? null : v[7].value)),\n 1597423693: (v) => new IFC4X3.IfcStructuralLoadSingleForce(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcTorqueMeasure(!v[6] ? null : v[6].value)),\n 1190533807: (v) => new IFC4X3.IfcStructuralLoadSingleForceWarping(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcForceMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcForceMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcForceMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcTorqueMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcTorqueMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcTorqueMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcWarpingMomentMeasure(!v[7] ? null : v[7].value)),\n 2233826070: (v) => new IFC4X3.IfcSubedge(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2513912981: (_) => new IFC4X3.IfcSurface(),\n 1878645084: (v) => new IFC4X3.IfcSurfaceStyleRendering(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : TypeInitialiser(3, v[7]), v[8]),\n 2247615214: (v) => new IFC4X3.IfcSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 1260650574: (v) => new IFC4X3.IfcSweptDiskSolid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value)),\n 1096409881: (v) => new IFC4X3.IfcSweptDiskSolidPolygonal(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value)),\n 230924584: (v) => new IFC4X3.IfcSweptSurface(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3071757647: (v) => new IFC4X3.IfcTShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[11] ? null : v[11].value)),\n 901063453: (_) => new IFC4X3.IfcTessellatedItem(),\n 4282788508: (v) => new IFC4X3.IfcTextLiteral(new IFC4X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2]),\n 3124975700: (v) => new IFC4X3.IfcTextLiteralWithExtent(new IFC4X3.IfcPresentableText(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), v[2], new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcBoxAlignment(!v[4] ? null : v[4].value)),\n 1983826977: (v) => {\n var _a;\n return new IFC4X3.IfcTextStyleFontModel(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcTextFontName(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcFontStyle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcFontVariant(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcFontWeight(!v[4] ? null : v[4].value), TypeInitialiser(3, v[5]));\n },\n 2715220739: (v) => new IFC4X3.IfcTrapeziumProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value)),\n 1628702193: (v) => {\n var _a;\n return new IFC4X3.IfcTypeObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3736923433: (v) => {\n var _a;\n return new IFC4X3.IfcTypeProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2347495698: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTypeProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value));\n },\n 3698973494: (v) => {\n var _a;\n return new IFC4X3.IfcTypeResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 427810014: (v) => new IFC4X3.IfcUShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 1417489154: (v) => new IFC4X3.IfcVector(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 2759199220: (v) => new IFC4X3.IfcVertexLoop(new Handle(!v[0] ? null : v[0].value)),\n 2543172580: (v) => new IFC4X3.IfcZShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value)),\n 3406155212: (v) => {\n var _a;\n return new IFC4X3.IfcAdvancedFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 669184980: (v) => {\n var _a;\n return new IFC4X3.IfcAnnotationFillArea(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3207858831: (v) => new IFC4X3.IfcAsymmetricIShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[14] ? null : v[14].value)),\n 4261334040: (v) => new IFC4X3.IfcAxis1Placement(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 3125803723: (v) => new IFC4X3.IfcAxis2Placement2D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value)),\n 2740243338: (v) => new IFC4X3.IfcAxis2Placement3D(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 3425423356: (v) => new IFC4X3.IfcAxis2PlacementLinear(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value)),\n 2736907675: (v) => new IFC4X3.IfcBooleanResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 4182860854: (_) => new IFC4X3.IfcBoundedSurface(),\n 2581212453: (v) => new IFC4X3.IfcBoundingBox(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2713105998: (v) => new IFC4X3.IfcBoxedHalfSpace(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2898889636: (v) => new IFC4X3.IfcCShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 1123145078: (v) => {\n var _a;\n return new IFC4X3.IfcCartesianPoint(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLengthMeasure(p.value) : null)) || []);\n },\n 574549367: (_) => new IFC4X3.IfcCartesianPointList(),\n 1675464909: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCartesianPointList2D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []), !v[1] ? null : ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || []);\n },\n 2059837836: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCartesianPointList3D((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcLengthMeasure(p2.value) : null)) || []), !v[1] ? null : ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcLabel(p.value) : null)) || []);\n },\n 59481748: (v) => new IFC4X3.IfcCartesianTransformationOperator(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value)),\n 3749851601: (v) => new IFC4X3.IfcCartesianTransformationOperator2D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value)),\n 3486308946: (v) => new IFC4X3.IfcCartesianTransformationOperator2DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcReal(!v[4] ? null : v[4].value)),\n 3331915920: (v) => new IFC4X3.IfcCartesianTransformationOperator3D(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value)),\n 1416205885: (v) => new IFC4X3.IfcCartesianTransformationOperator3DnonUniform(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcReal(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcReal(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcReal(!v[6] ? null : v[6].value)),\n 1383045692: (v) => new IFC4X3.IfcCircleProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2205249479: (v) => {\n var _a;\n return new IFC4X3.IfcClosedShell(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 776857604: (v) => new IFC4X3.IfcColourRgb(!v[0] ? null : new IFC4X3.IfcLabel(!v[0] ? null : v[0].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcNormalisedRatioMeasure(!v[3] ? null : v[3].value)),\n 2542286263: (v) => {\n var _a;\n return new IFC4X3.IfcComplexProperty(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), new IFC4X3.IfcIdentifier(!v[2] ? null : v[2].value), ((_a = v[3]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2485617015: (v) => new IFC4X3.IfcCompositeCurveSegment(v[0], new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 2574617495: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 3419103109: (v) => {\n var _a;\n return new IFC4X3.IfcContext(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 1815067380: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCrewResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2506170314: (v) => new IFC4X3.IfcCsgPrimitive3D(new Handle(!v[0] ? null : v[0].value)),\n 2147822146: (v) => new IFC4X3.IfcCsgSolid(new Handle(!v[0] ? null : v[0].value)),\n 2601014836: (_) => new IFC4X3.IfcCurve(),\n 2827736869: (v) => {\n var _a;\n return new IFC4X3.IfcCurveBoundedPlane(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2629017746: (v) => {\n var _a;\n return new IFC4X3.IfcCurveBoundedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcBoolean(!v[2] ? null : v[2].value));\n },\n 4212018352: (v) => new IFC4X3.IfcCurveSegment(v[0], new Handle(!v[1] ? null : v[1].value), TypeInitialiser(3, v[2]), TypeInitialiser(3, v[3]), new Handle(!v[4] ? null : v[4].value)),\n 32440307: (v) => {\n var _a;\n return new IFC4X3.IfcDirection(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 593015953: (v) => new IFC4X3.IfcDirectrixCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4])),\n 1472233963: (v) => {\n var _a;\n return new IFC4X3.IfcEdgeLoop(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1883228015: (v) => {\n var _a;\n return new IFC4X3.IfcElementQuantity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 339256511: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2777663545: (v) => new IFC4X3.IfcElementarySurface(new Handle(!v[0] ? null : v[0].value)),\n 2835456948: (v) => new IFC4X3.IfcEllipseProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 4024345920: (v) => {\n var _a;\n return new IFC4X3.IfcEventType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcLabel(!v[11] ? null : v[11].value));\n },\n 477187591: (v) => new IFC4X3.IfcExtrudedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 2804161546: (v) => new IFC4X3.IfcExtrudedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 2047409740: (v) => {\n var _a;\n return new IFC4X3.IfcFaceBasedSurfaceModel(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 374418227: (v) => new IFC4X3.IfcFillAreaStyleHatching(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value), new IFC4X3.IfcPlaneAngleMeasure(!v[4] ? null : v[4].value)),\n 315944413: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFillAreaStyleTiles(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcPositiveRatioMeasure(!v[2] ? null : v[2].value));\n },\n 2652556860: (v) => new IFC4X3.IfcFixedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 4238390223: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFurnishingElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1268542332: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFurnitureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10]);\n },\n 4095422895: (v) => {\n var _a, _b;\n return new IFC4X3.IfcGeographicElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 987898635: (v) => {\n var _a;\n return new IFC4X3.IfcGeometricCurveSet(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1484403080: (v) => new IFC4X3.IfcIShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[9] ? null : v[9].value)),\n 178912537: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedPolygonalFace(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 2294589976: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedPolygonalFaceWithVoids(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], (_b = v[1]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []));\n },\n 3465909080: (v) => {\n var _a, _b;\n return new IFC4X3.IfcIndexedPolygonalTextureMap(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 572779678: (v) => new IFC4X3.IfcLShapeProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPlaneAngleMeasure(!v[8] ? null : v[8].value)),\n 428585644: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLaborResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1281925730: (v) => new IFC4X3.IfcLine(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 1425443689: (v) => new IFC4X3.IfcManifoldSolidBrep(new Handle(!v[0] ? null : v[0].value)),\n 3888040117: (v) => new IFC4X3.IfcObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 590820931: (v) => new IFC4X3.IfcOffsetCurve(new Handle(!v[0] ? null : v[0].value)),\n 3388369263: (v) => new IFC4X3.IfcOffsetCurve2D(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcLogical(!v[2] ? null : v[2].value)),\n 3505215534: (v) => new IFC4X3.IfcOffsetCurve3D(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcLogical(!v[2] ? null : v[2].value), new Handle(!v[3] ? null : v[3].value)),\n 2485787929: (v) => {\n var _a;\n return new IFC4X3.IfcOffsetCurveByDistances(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value));\n },\n 1682466193: (v) => new IFC4X3.IfcPcurve(new Handle(!v[0] ? null : v[0].value), new Handle(!v[1] ? null : v[1].value)),\n 603570806: (v) => new IFC4X3.IfcPlanarBox(new IFC4X3.IfcLengthMeasure(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 220341763: (v) => new IFC4X3.IfcPlane(new Handle(!v[0] ? null : v[0].value)),\n 3381221214: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcPolynomialCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || [], !v[2] ? null : ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || [], !v[3] ? null : ((_c = v[3]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 759155922: (v) => new IFC4X3.IfcPreDefinedColour(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 2559016684: (v) => new IFC4X3.IfcPreDefinedCurveFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 3967405729: (v) => new IFC4X3.IfcPreDefinedPropertySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 569719735: (v) => {\n var _a;\n return new IFC4X3.IfcProcedureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2945172077: (v) => new IFC4X3.IfcProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value)),\n 4208778838: (v) => new IFC4X3.IfcProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 103090709: (v) => {\n var _a;\n return new IFC4X3.IfcProject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 653396225: (v) => {\n var _a;\n return new IFC4X3.IfcProjectLibrary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new Handle(!v[8] ? null : v[8].value));\n },\n 871118103: (v) => new IFC4X3.IfcPropertyBoundedValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), !v[5] ? null : TypeInitialiser(3, v[5])),\n 4166981789: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyEnumeratedValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2752243245: (v) => {\n var _a;\n return new IFC4X3.IfcPropertyListValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 941946838: (v) => new IFC4X3.IfcPropertyReferenceValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcText(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 1451395588: (v) => {\n var _a;\n return new IFC4X3.IfcPropertySet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 492091185: (v) => {\n var _a;\n return new IFC4X3.IfcPropertySetTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3650150729: (v) => new IFC4X3.IfcPropertySingleValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : TypeInitialiser(3, v[2]), !v[3] ? null : new Handle(!v[3] ? null : v[3].value)),\n 110355661: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPropertyTableValue(new IFC4X3.IfcIdentifier(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcText(!v[1] ? null : v[1].value), !v[2] ? null : ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], !v[4] ? null : new IFC4X3.IfcText(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]);\n },\n 3521284610: (v) => new IFC4X3.IfcPropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 2770003689: (v) => new IFC4X3.IfcRectangleHollowProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), new IFC4X3.IfcPositiveLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value)),\n 2798486643: (v) => new IFC4X3.IfcRectangularPyramid(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3454111270: (v) => new IFC4X3.IfcRectangularTrimmedSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcParameterValue(!v[1] ? null : v[1].value), new IFC4X3.IfcParameterValue(!v[2] ? null : v[2].value), new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value), new IFC4X3.IfcParameterValue(!v[4] ? null : v[4].value), new IFC4X3.IfcBoolean(!v[5] ? null : v[5].value), new IFC4X3.IfcBoolean(!v[6] ? null : v[6].value)),\n 3765753017: (v) => {\n var _a;\n return new IFC4X3.IfcReinforcementDefinitionProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3939117080: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssigns(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5]);\n },\n 1683148259: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToActor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2495723537: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1307041759: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1027710054: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToGroupByFactor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcRatioMeasure(!v[7] ? null : v[7].value));\n },\n 4278684876: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToProcess(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value));\n },\n 2857406711: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToProduct(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 205026976: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssignsToResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[5], new Handle(!v[6] ? null : v[6].value));\n },\n 1865459582: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociates(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 4095574036: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesApproval(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 919958153: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesClassification(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2728634034: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesConstraint(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value));\n },\n 982818633: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesDocument(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3840914261: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesLibrary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 2655215786: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesMaterial(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 1033248425: (v) => {\n var _a;\n return new IFC4X3.IfcRelAssociatesProfileDef(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 826625072: (v) => new IFC4X3.IfcRelConnects(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1204542856: (v) => new IFC4X3.IfcRelConnectsElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value)),\n 3945020480: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRelConnectsPathElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], v[9], v[10]);\n },\n 4201705270: (v) => new IFC4X3.IfcRelConnectsPortToElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 3190031847: (v) => new IFC4X3.IfcRelConnectsPorts(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2127690289: (v) => new IFC4X3.IfcRelConnectsStructuralActivity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1638771189: (v) => new IFC4X3.IfcRelConnectsStructuralMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 504942748: (v) => new IFC4X3.IfcRelConnectsWithEccentricity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), new Handle(!v[10] ? null : v[10].value)),\n 3678494232: (v) => {\n var _a;\n return new IFC4X3.IfcRelConnectsWithRealizingElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3242617779: (v) => {\n var _a;\n return new IFC4X3.IfcRelContainedInSpatialStructure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 886880790: (v) => {\n var _a;\n return new IFC4X3.IfcRelCoversBldgElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2802773753: (v) => {\n var _a;\n return new IFC4X3.IfcRelCoversSpaces(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2565941209: (v) => {\n var _a;\n return new IFC4X3.IfcRelDeclares(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 2551354335: (v) => new IFC4X3.IfcRelDecomposes(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 693640335: (v) => new IFC4X3.IfcRelDefines(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value)),\n 1462361463: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByObject(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4186316022: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 307848117: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 781010003: (v) => {\n var _a;\n return new IFC4X3.IfcRelDefinesByType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 3940055652: (v) => new IFC4X3.IfcRelFillsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 279856033: (v) => {\n var _a;\n return new IFC4X3.IfcRelFlowControlElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 427948657: (v) => new IFC4X3.IfcRelInterferesElements(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcIdentifier(!v[8] ? null : v[8].value), new IFC4X3.IfcLogical(!v[9] ? null : v[9].value)),\n 3268803585: (v) => {\n var _a;\n return new IFC4X3.IfcRelNests(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1441486842: (v) => {\n var _a;\n return new IFC4X3.IfcRelPositions(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 750771296: (v) => new IFC4X3.IfcRelProjectsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1245217292: (v) => {\n var _a;\n return new IFC4X3.IfcRelReferencedInSpatialStructure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), ((_a = v[4]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new Handle(!v[5] ? null : v[5].value));\n },\n 4122056220: (v) => new IFC4X3.IfcRelSequence(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value)),\n 366585022: (v) => {\n var _a;\n return new IFC4X3.IfcRelServicesBuildings(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3451746338: (v) => new IFC4X3.IfcRelSpaceBoundary(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8]),\n 3523091289: (v) => new IFC4X3.IfcRelSpaceBoundary1stLevel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value)),\n 1521410863: (v) => new IFC4X3.IfcRelSpaceBoundary2ndLevel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 1401173127: (v) => new IFC4X3.IfcRelVoidsElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 816062949: (v) => new IFC4X3.IfcReparametrisedCompositeCurveSegment(v[0], new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcParameterValue(!v[3] ? null : v[3].value)),\n 2914609552: (v) => new IFC4X3.IfcResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value)),\n 1856042241: (v) => new IFC4X3.IfcRevolvedAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value)),\n 3243963512: (v) => new IFC4X3.IfcRevolvedAreaSolidTapered(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPlaneAngleMeasure(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value)),\n 4158566097: (v) => new IFC4X3.IfcRightCircularCone(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3626867408: (v) => new IFC4X3.IfcRightCircularCylinder(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 1862484736: (v) => {\n var _a;\n return new IFC4X3.IfcSectionedSolid(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1290935644: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSolidHorizontal(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1356537516: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSectionedSurface(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3663146110: (v) => new IFC4X3.IfcSimplePropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value), v[11]),\n 1412071761: (v) => new IFC4X3.IfcSpatialElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value)),\n 710998568: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2706606064: (v) => new IFC4X3.IfcSpatialStructureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 3893378262: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialStructureElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 463610769: (v) => new IFC4X3.IfcSpatialZone(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 2481509218: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpatialZoneType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 451544542: (v) => new IFC4X3.IfcSphere(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 4015995234: (v) => new IFC4X3.IfcSphericalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 2735484536: (v) => new IFC4X3.IfcSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value)),\n 3544373492: (v) => new IFC4X3.IfcStructuralActivity(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3136571912: (v) => new IFC4X3.IfcStructuralItem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 530289379: (v) => new IFC4X3.IfcStructuralMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3689010777: (v) => new IFC4X3.IfcStructuralReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 3979015343: (v) => new IFC4X3.IfcStructuralSurfaceMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 2218152070: (v) => new IFC4X3.IfcStructuralSurfaceMemberVarying(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value)),\n 603775116: (v) => new IFC4X3.IfcStructuralSurfaceReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 4095615324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSubContractResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 699246055: (v) => {\n var _a;\n return new IFC4X3.IfcSurfaceCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2028607225: (v) => new IFC4X3.IfcSurfaceCurveSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 2809605785: (v) => new IFC4X3.IfcSurfaceOfLinearExtrusion(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4124788165: (v) => new IFC4X3.IfcSurfaceOfRevolution(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1580310250: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSystemFurnitureElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3473067441: (v) => new IFC4X3.IfcTask(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcInteger(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), v[12]),\n 3206491090: (v) => {\n var _a;\n return new IFC4X3.IfcTaskType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 2387106220: (v) => new IFC4X3.IfcTessellatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value)),\n 782932809: (v) => new IFC4X3.IfcThirdOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value)),\n 1935646853: (v) => new IFC4X3.IfcToroidalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 3665877780: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransportationDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2916149573: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcTriangulatedFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 1229763772: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcTriangulatedIrregularNetwork(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), !v[2] ? null : (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcParameterValue(p2.value) : null)) || []), (_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcPositiveInteger(p2.value) : null)) || []), !v[4] ? null : ((_c = v[4]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || [], ((_d = v[5]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || []);\n },\n 3651464721: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVehicleType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 336235671: (v) => new IFC4X3.IfcWindowLiningProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new Handle(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcLengthMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcLengthMeasure(!v[15] ? null : v[15].value)),\n 512836454: (v) => new IFC4X3.IfcWindowPanelProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2296667514: (v) => new IFC4X3.IfcActor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value)),\n 1635779807: (v) => new IFC4X3.IfcAdvancedBrep(new Handle(!v[0] ? null : v[0].value)),\n 2603310189: (v) => {\n var _a;\n return new IFC4X3.IfcAdvancedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1674181508: (v) => new IFC4X3.IfcAnnotation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 2887950389: (v) => {\n var _a;\n return new IFC4X3.IfcBSplineSurface(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value));\n },\n 167062518: (v) => {\n var _a, _b, _c, _d, _e;\n return new IFC4X3.IfcBSplineSurfaceWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[11]);\n },\n 1334484129: (v) => new IFC4X3.IfcBlock(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value)),\n 3649129432: (v) => new IFC4X3.IfcBooleanClippingResult(v[0], new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value)),\n 1260505505: (_) => new IFC4X3.IfcBoundedCurve(),\n 3124254112: (v) => new IFC4X3.IfcBuildingStorey(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value)),\n 1626504194: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuiltElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2197970202: (v) => {\n var _a, _b;\n return new IFC4X3.IfcChimneyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2937912522: (v) => new IFC4X3.IfcCircleHollowProfileDef(v[0], !v[1] ? null : new IFC4X3.IfcLabel(!v[1] ? null : v[1].value), !v[2] ? null : new Handle(!v[2] ? null : v[2].value), new IFC4X3.IfcPositiveLengthMeasure(!v[3] ? null : v[3].value), new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value)),\n 3893394355: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCivilElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3497074424: (v) => new IFC4X3.IfcClothoid(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value)),\n 300633059: (v) => {\n var _a, _b;\n return new IFC4X3.IfcColumnType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3875453745: (v) => {\n var _a;\n return new IFC4X3.IfcComplexPropertyTemplate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3732776249: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 15328376: (v) => {\n var _a;\n return new IFC4X3.IfcCompositeCurveOnSurface(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 2510884976: (v) => new IFC4X3.IfcConic(new Handle(!v[0] ? null : v[0].value)),\n 2185764099: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionEquipmentResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 4105962743: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionMaterialResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 1525564444: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConstructionProductResourceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : new IFC4X3.IfcIdentifier(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcText(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : ((_b = v[9]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[10] ? null : new Handle(!v[10] ? null : v[10].value), v[11]);\n },\n 2559216714: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 3293443760: (v) => new IFC4X3.IfcControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value)),\n 2000195564: (v) => new IFC4X3.IfcCosineSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value)),\n 3895139033: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCostItem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 1419761937: (v) => new IFC4X3.IfcCostSchedule(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcDateTime(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDateTime(!v[9] ? null : v[9].value)),\n 4189326743: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCourseType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1916426348: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoveringType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3295246426: (v) => {\n var _a;\n return new IFC4X3.IfcCrewResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1457835157: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCurtainWallType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1213902940: (v) => new IFC4X3.IfcCylindricalSurface(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1306400036: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDeepFoundationType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 4234616927: (v) => new IFC4X3.IfcDirectrixDerivedReferenceSweptAreaSolid(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : TypeInitialiser(3, v[3]), !v[4] ? null : TypeInitialiser(3, v[4]), new Handle(!v[5] ? null : v[5].value)),\n 3256556792: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3849074793: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionFlowElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2963535650: (v) => new IFC4X3.IfcDoorLiningProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcNonNegativeLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new Handle(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcLengthMeasure(!v[16] ? null : v[16].value)),\n 1714330368: (v) => new IFC4X3.IfcDoorPanelProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[6] ? null : v[6].value), v[7], !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 2323601079: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDoorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value));\n },\n 445594917: (v) => new IFC4X3.IfcDraughtingPreDefinedColour(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 4006246654: (v) => new IFC4X3.IfcDraughtingPreDefinedCurveFont(new IFC4X3.IfcLabel(!v[0] ? null : v[0].value)),\n 1758889154: (v) => new IFC4X3.IfcElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4123344466: (v) => new IFC4X3.IfcElementAssembly(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 2397081782: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementAssemblyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1623761950: (v) => new IFC4X3.IfcElementComponent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2590856083: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElementComponentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1704287377: (v) => new IFC4X3.IfcEllipse(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value), new IFC4X3.IfcPositiveLengthMeasure(!v[2] ? null : v[2].value)),\n 2107101300: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEnergyConversionDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 132023988: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEngineType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3174744832: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEvaporativeCoolerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3390157468: (v) => {\n var _a, _b;\n return new IFC4X3.IfcEvaporatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4148101412: (v) => new IFC4X3.IfcEvent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), v[7], v[8], !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value)),\n 2853485674: (v) => new IFC4X3.IfcExternalSpatialStructureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value)),\n 807026263: (v) => new IFC4X3.IfcFacetedBrep(new Handle(!v[0] ? null : v[0].value)),\n 3737207727: (v) => {\n var _a;\n return new IFC4X3.IfcFacetedBrepWithVoids(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 24185140: (v) => new IFC4X3.IfcFacility(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 1310830890: (v) => new IFC4X3.IfcFacilityPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 4228831410: (v) => new IFC4X3.IfcFacilityPartCommon(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 647756555: (v) => new IFC4X3.IfcFastener(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2489546625: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFastenerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2827207264: (v) => new IFC4X3.IfcFeatureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2143335405: (v) => new IFC4X3.IfcFeatureElementAddition(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1287392070: (v) => new IFC4X3.IfcFeatureElementSubtraction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3907093117: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowControllerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3198132628: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3815607619: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowMeterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1482959167: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowMovingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1834744321: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1339347760: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowStorageDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2297155007: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 3009222698: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowTreatmentDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1893162501: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFootingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 263784265: (v) => new IFC4X3.IfcFurnishingElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1509553395: (v) => new IFC4X3.IfcFurniture(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3493046030: (v) => new IFC4X3.IfcGeographicElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4230923436: (v) => new IFC4X3.IfcGeotechnicalElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1594536857: (v) => new IFC4X3.IfcGeotechnicalStratum(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2898700619: (v) => {\n var _a;\n return new IFC4X3.IfcGradientCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 2706460486: (v) => new IFC4X3.IfcGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 1251058090: (v) => {\n var _a, _b;\n return new IFC4X3.IfcHeatExchangerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1806887404: (v) => {\n var _a, _b;\n return new IFC4X3.IfcHumidifierType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2568555532: (v) => new IFC4X3.IfcImpactProtectionDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3948183225: (v) => {\n var _a, _b;\n return new IFC4X3.IfcImpactProtectionDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2571569899: (v) => {\n var _a;\n return new IFC4X3.IfcIndexedPolyCurve(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || [], new IFC4X3.IfcLogical(!v[2] ? null : v[2].value));\n },\n 3946677679: (v) => {\n var _a, _b;\n return new IFC4X3.IfcInterceptorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3113134337: (v) => {\n var _a;\n return new IFC4X3.IfcIntersectionCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 2391368822: (v) => {\n var _a;\n return new IFC4X3.IfcInventory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcDate(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value));\n },\n 4288270099: (v) => {\n var _a, _b;\n return new IFC4X3.IfcJunctionBoxType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 679976338: (v) => {\n var _a, _b;\n return new IFC4X3.IfcKerbType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value));\n },\n 3827777499: (v) => {\n var _a;\n return new IFC4X3.IfcLaborResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1051575348: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLampType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1161773419: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLightFixtureType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2176059722: (v) => new IFC4X3.IfcLinearElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1770583370: (v) => {\n var _a, _b;\n return new IFC4X3.IfcLiquidTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 525669439: (v) => new IFC4X3.IfcMarineFacility(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 976884017: (v) => new IFC4X3.IfcMarinePart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 377706215: (v) => new IFC4X3.IfcMechanicalFastener(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10]),\n 2108223431: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMechanicalFastenerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value));\n },\n 1114901282: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMedicalDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3181161470: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMemberType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1950438474: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMobileTelecommunicationsApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 710110818: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMooringDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 977012517: (v) => {\n var _a, _b;\n return new IFC4X3.IfcMotorConnectionType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 506776471: (v) => {\n var _a, _b;\n return new IFC4X3.IfcNavigationElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4143007308: (v) => new IFC4X3.IfcOccupant(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), new Handle(!v[5] ? null : v[5].value), v[6]),\n 3588315303: (v) => new IFC4X3.IfcOpeningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2837617999: (v) => {\n var _a, _b;\n return new IFC4X3.IfcOutletType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 514975943: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPavementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2382730787: (v) => new IFC4X3.IfcPerformanceHistory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcLabel(!v[6] ? null : v[6].value), v[7]),\n 3566463478: (v) => new IFC4X3.IfcPermeableCoveringProperties(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), v[4], v[5], !v[6] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 3327091369: (v) => new IFC4X3.IfcPermit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 1158309216: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPileType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 804291784: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPipeFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4231323485: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPipeSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4017108033: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPlateType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2839578677: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPolygonalFaceSet(new Handle(!v[0] ? null : v[0].value), !v[1] ? null : new IFC4X3.IfcBoolean(!v[1] ? null : v[1].value), ((_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[3] ? null : ((_b = v[3]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcPositiveInteger(p.value) : null)) || []);\n },\n 3724593414: (v) => {\n var _a;\n return new IFC4X3.IfcPolyline(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 3740093272: (v) => new IFC4X3.IfcPort(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1946335990: (v) => new IFC4X3.IfcPositioningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 2744685151: (v) => new IFC4X3.IfcProcedure(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), v[7]),\n 2904328755: (v) => new IFC4X3.IfcProjectOrder(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 3651124850: (v) => new IFC4X3.IfcProjectionElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1842657554: (v) => {\n var _a, _b;\n return new IFC4X3.IfcProtectiveDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2250791053: (v) => {\n var _a, _b;\n return new IFC4X3.IfcPumpType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1763565496: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRailType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2893384427: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRailingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3992365140: (v) => new IFC4X3.IfcRailway(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 1891881377: (v) => new IFC4X3.IfcRailwayPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 2324767716: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRampFlightType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1469900589: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRampType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 683857671: (v) => {\n var _a, _b, _c, _d, _e, _f;\n return new IFC4X3.IfcRationalBSplineSurfaceWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), new IFC4X3.IfcInteger(!v[1] ? null : v[1].value), (_a = v[2]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new Handle(p2.value) : null)) || []), v[3], new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), new IFC4X3.IfcLogical(!v[5] ? null : v[5].value), new IFC4X3.IfcLogical(!v[6] ? null : v[6].value), ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[8]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_d = v[9]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], ((_e = v[10]) == null ? void 0 : _e.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[11], (_f = v[12]) == null ? void 0 : _f.map((p) => (p == null ? void 0 : p.map((p2) => (p2 == null ? void 0 : p2.value) ? new IFC4X3.IfcReal(p2.value) : null)) || []));\n },\n 4021432810: (v) => new IFC4X3.IfcReferent(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 3027567501: (v) => new IFC4X3.IfcReinforcingElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value)),\n 964333572: (v) => {\n var _a, _b;\n return new IFC4X3.IfcReinforcingElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 2320036040: (v) => new IFC4X3.IfcReinforcingMesh(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcAreaMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), v[17]),\n 2310774935: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcReinforcingMeshType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcAreaMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcAreaMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value), !v[17] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[17] ? null : v[17].value), !v[18] ? null : new IFC4X3.IfcLabel(!v[18] ? null : v[18].value), !v[19] ? null : ((_c = v[19]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 3818125796: (v) => {\n var _a;\n return new IFC4X3.IfcRelAdheresToElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 160246688: (v) => {\n var _a;\n return new IFC4X3.IfcRelAggregates(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), new Handle(!v[4] ? null : v[4].value), ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || []);\n },\n 146592293: (v) => new IFC4X3.IfcRoad(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 550521510: (v) => new IFC4X3.IfcRoadPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 2781568857: (v) => {\n var _a, _b;\n return new IFC4X3.IfcRoofType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1768891740: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSanitaryTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2157484638: (v) => {\n var _a;\n return new IFC4X3.IfcSeamCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2]);\n },\n 3649235739: (v) => new IFC4X3.IfcSecondOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 544395925: (v) => {\n var _a;\n return new IFC4X3.IfcSegmentedReferenceCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value), new Handle(!v[2] ? null : v[2].value), !v[3] ? null : new Handle(!v[3] ? null : v[3].value));\n },\n 1027922057: (v) => new IFC4X3.IfcSeventhOrderPolynomialSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLengthMeasure(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLengthMeasure(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcLengthMeasure(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLengthMeasure(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLengthMeasure(!v[8] ? null : v[8].value)),\n 4074543187: (v) => {\n var _a, _b;\n return new IFC4X3.IfcShadingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 33720170: (v) => new IFC4X3.IfcSign(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3599934289: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSignType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1894708472: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSignalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 42703149: (v) => new IFC4X3.IfcSineSpiral(!v[0] ? null : new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcLengthMeasure(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLengthMeasure(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcLengthMeasure(!v[3] ? null : v[3].value)),\n 4097777520: (v) => new IFC4X3.IfcSite(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcCompoundPlaneAngleMeasure(v[9].map((x) => x.value)), !v[10] ? null : new IFC4X3.IfcCompoundPlaneAngleMeasure(v[10].map((x) => x.value)), !v[11] ? null : new IFC4X3.IfcLengthMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 2533589738: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSlabType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1072016465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSolarDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3856911033: (v) => new IFC4X3.IfcSpace(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value)),\n 1305183839: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpaceHeaterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3812236995: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSpaceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcLabel(!v[10] ? null : v[10].value));\n },\n 3112655638: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStackTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1039846685: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStairFlightType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 338393293: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStairType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 682877961: (v) => new IFC4X3.IfcStructuralAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value)),\n 1179482911: (v) => new IFC4X3.IfcStructuralConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 1004757350: (v) => new IFC4X3.IfcStructuralCurveAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 4243806635: (v) => new IFC4X3.IfcStructuralCurveConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), new Handle(!v[8] ? null : v[8].value)),\n 214636428: (v) => new IFC4X3.IfcStructuralCurveMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2445595289: (v) => new IFC4X3.IfcStructuralCurveMemberVarying(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], new Handle(!v[8] ? null : v[8].value)),\n 2757150158: (v) => new IFC4X3.IfcStructuralCurveReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], v[9]),\n 1807405624: (v) => new IFC4X3.IfcStructuralLinearAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1252848954: (v) => new IFC4X3.IfcStructuralLoadGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value)),\n 2082059205: (v) => new IFC4X3.IfcStructuralPointAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value)),\n 734778138: (v) => new IFC4X3.IfcStructuralPointConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value)),\n 1235345126: (v) => new IFC4X3.IfcStructuralPointReaction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8]),\n 2986769608: (v) => new IFC4X3.IfcStructuralResultGroup(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcBoolean(!v[7] ? null : v[7].value)),\n 3657597509: (v) => new IFC4X3.IfcStructuralSurfaceAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1975003073: (v) => new IFC4X3.IfcStructuralSurfaceConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value)),\n 148013059: (v) => {\n var _a;\n return new IFC4X3.IfcSubContractResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 3101698114: (v) => new IFC4X3.IfcSurfaceFeature(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2315554128: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSwitchingDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2254336722: (v) => new IFC4X3.IfcSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value)),\n 413509423: (v) => new IFC4X3.IfcSystemFurnitureElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 5716631: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTankType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3824725483: (v) => new IFC4X3.IfcTendon(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcForceMeasure(!v[12] ? null : v[12].value), !v[13] ? null : new IFC4X3.IfcPressureMeasure(!v[13] ? null : v[13].value), !v[14] ? null : new IFC4X3.IfcNormalisedRatioMeasure(!v[14] ? null : v[14].value), !v[15] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[15] ? null : v[15].value), !v[16] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[16] ? null : v[16].value)),\n 2347447852: (v) => new IFC4X3.IfcTendonAnchor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 3081323446: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonAnchorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3663046924: (v) => new IFC4X3.IfcTendonConduit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]),\n 2281632017: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonConduitType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2415094496: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTendonType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value));\n },\n 618700268: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTrackElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1692211062: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransformerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2097647324: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTransportElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1953115116: (v) => new IFC4X3.IfcTransportationDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3593883385: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTrimmedCurve(new Handle(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[2]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcBoolean(!v[3] ? null : v[3].value), v[4]);\n },\n 1600972822: (v) => {\n var _a, _b;\n return new IFC4X3.IfcTubeBundleType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1911125066: (v) => {\n var _a, _b;\n return new IFC4X3.IfcUnitaryEquipmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 728799441: (v) => {\n var _a, _b;\n return new IFC4X3.IfcValveType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 840318589: (v) => new IFC4X3.IfcVehicle(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1530820697: (v) => new IFC4X3.IfcVibrationDamper(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3956297820: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVibrationDamperType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2391383451: (v) => new IFC4X3.IfcVibrationIsolator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3313531582: (v) => {\n var _a, _b;\n return new IFC4X3.IfcVibrationIsolatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2769231204: (v) => new IFC4X3.IfcVirtualElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 926996030: (v) => new IFC4X3.IfcVoidingFeature(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1898987631: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWallType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1133259667: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWasteTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4009809668: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWindowType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], v[10], !v[11] ? null : new IFC4X3.IfcBoolean(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value));\n },\n 4088093105: (v) => {\n var _a, _b;\n return new IFC4X3.IfcWorkCalendar(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : ((_a = v[6]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : ((_b = v[7]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[8]);\n },\n 1028945134: (v) => {\n var _a;\n return new IFC4X3.IfcWorkControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value));\n },\n 4218914973: (v) => {\n var _a;\n return new IFC4X3.IfcWorkPlan(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 3342526732: (v) => {\n var _a;\n return new IFC4X3.IfcWorkSchedule(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), new IFC4X3.IfcDateTime(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcDuration(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcDuration(!v[10] ? null : v[10].value), new IFC4X3.IfcDateTime(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDateTime(!v[12] ? null : v[12].value), v[13]);\n },\n 1033361043: (v) => new IFC4X3.IfcZone(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value)),\n 3821786052: (v) => new IFC4X3.IfcActionRequest(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), v[6], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcText(!v[8] ? null : v[8].value)),\n 1411407467: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirTerminalBoxType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3352864051: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1871374353: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAirToAirHeatRecoveryType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4266260250: (v) => new IFC4X3.IfcAlignmentCant(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new IFC4X3.IfcPositiveLengthMeasure(!v[7] ? null : v[7].value)),\n 1545765605: (v) => new IFC4X3.IfcAlignmentHorizontal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 317615605: (v) => new IFC4X3.IfcAlignmentSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value)),\n 1662888072: (v) => new IFC4X3.IfcAlignmentVertical(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 3460190687: (v) => new IFC4X3.IfcAsset(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : new Handle(!v[8] ? null : v[8].value), !v[9] ? null : new Handle(!v[9] ? null : v[9].value), !v[10] ? null : new Handle(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcDate(!v[12] ? null : v[12].value), !v[13] ? null : new Handle(!v[13] ? null : v[13].value)),\n 1532957894: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAudioVisualApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1967976161: (v) => {\n var _a;\n return new IFC4X3.IfcBSplineCurve(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value));\n },\n 2461110595: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcBSplineCurveWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[7]);\n },\n 819618141: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBeamType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3649138523: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBearingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 231477066: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBoilerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1136057603: (v) => {\n var _a;\n return new IFC4X3.IfcBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 644574406: (v) => new IFC4X3.IfcBridge(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9]),\n 963979645: (v) => new IFC4X3.IfcBridgePart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], v[9], v[10]),\n 4031249490: (v) => new IFC4X3.IfcBuilding(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new Handle(!v[11] ? null : v[11].value)),\n 2979338954: (v) => new IFC4X3.IfcBuildingElementPart(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 39481116: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuildingElementPartType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1909888760: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBuildingElementProxyType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1177604601: (v) => new IFC4X3.IfcBuildingSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 1876633798: (v) => new IFC4X3.IfcBuiltElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3862327254: (v) => new IFC4X3.IfcBuiltSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new IFC4X3.IfcLabel(!v[6] ? null : v[6].value)),\n 2188180465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcBurnerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 395041908: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableCarrierFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3293546465: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableCarrierSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2674252688: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1285652485: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCableSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3203706013: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCaissonFoundationType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2951183804: (v) => {\n var _a, _b;\n return new IFC4X3.IfcChillerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3296154744: (v) => new IFC4X3.IfcChimney(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2611217952: (v) => new IFC4X3.IfcCircle(new Handle(!v[0] ? null : v[0].value), new IFC4X3.IfcPositiveLengthMeasure(!v[1] ? null : v[1].value)),\n 1677625105: (v) => new IFC4X3.IfcCivilElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2301859152: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoilType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 843113511: (v) => new IFC4X3.IfcColumn(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 400855858: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCommunicationsApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3850581409: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCompressorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2816379211: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCondenserType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3898045240: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionEquipmentResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 1060000209: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionMaterialResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 488727124: (v) => {\n var _a;\n return new IFC4X3.IfcConstructionProductResource(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcIdentifier(!v[5] ? null : v[5].value), !v[6] ? null : new IFC4X3.IfcText(!v[6] ? null : v[6].value), !v[7] ? null : new Handle(!v[7] ? null : v[7].value), !v[8] ? null : ((_a = v[8]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value), v[10]);\n },\n 2940368186: (v) => {\n var _a, _b;\n return new IFC4X3.IfcConveyorSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 335055490: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCooledBeamType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2954562838: (v) => {\n var _a, _b;\n return new IFC4X3.IfcCoolingTowerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1502416096: (v) => new IFC4X3.IfcCourse(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1973544240: (v) => new IFC4X3.IfcCovering(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3495092785: (v) => new IFC4X3.IfcCurtainWall(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3961806047: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDamperType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3426335179: (v) => new IFC4X3.IfcDeepFoundation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1335981549: (v) => new IFC4X3.IfcDiscreteAccessory(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2635815018: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDiscreteAccessoryType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 479945903: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionBoardType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1599208980: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionChamberElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2063403501: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDistributionControlElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value));\n },\n 1945004755: (v) => new IFC4X3.IfcDistributionElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3040386961: (v) => new IFC4X3.IfcDistributionFlowElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3041715199: (v) => new IFC4X3.IfcDistributionPort(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7], v[8], v[9]),\n 3205830791: (v) => new IFC4X3.IfcDistributionSystem(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 395920057: (v) => new IFC4X3.IfcDoor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value)),\n 869906466: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctFittingType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3760055223: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctSegmentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2030761528: (v) => {\n var _a, _b;\n return new IFC4X3.IfcDuctSilencerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3071239417: (v) => new IFC4X3.IfcEarthworksCut(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1077100507: (v) => new IFC4X3.IfcEarthworksElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3376911765: (v) => new IFC4X3.IfcEarthworksFill(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 663422040: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricApplianceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2417008758: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricDistributionBoardType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3277789161: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricFlowStorageDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2142170206: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricFlowTreatmentDeviceType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1534661035: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricGeneratorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1217240411: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricMotorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 712377611: (v) => {\n var _a, _b;\n return new IFC4X3.IfcElectricTimeControlType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1658829314: (v) => new IFC4X3.IfcEnergyConversionDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2814081492: (v) => new IFC4X3.IfcEngine(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3747195512: (v) => new IFC4X3.IfcEvaporativeCooler(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 484807127: (v) => new IFC4X3.IfcEvaporator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1209101575: (v) => new IFC4X3.IfcExternalSpatialElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), v[8]),\n 346874300: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFanType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1810631287: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFilterType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4222183408: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFireSuppressionTerminalType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2058353004: (v) => new IFC4X3.IfcFlowController(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4278956645: (v) => new IFC4X3.IfcFlowFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 4037862832: (v) => {\n var _a, _b;\n return new IFC4X3.IfcFlowInstrumentType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 2188021234: (v) => new IFC4X3.IfcFlowMeter(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3132237377: (v) => new IFC4X3.IfcFlowMovingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 987401354: (v) => new IFC4X3.IfcFlowSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 707683696: (v) => new IFC4X3.IfcFlowStorageDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2223149337: (v) => new IFC4X3.IfcFlowTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3508470533: (v) => new IFC4X3.IfcFlowTreatmentDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 900683007: (v) => new IFC4X3.IfcFooting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2713699986: (v) => new IFC4X3.IfcGeotechnicalAssembly(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 3009204131: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcGrid(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : ((_c = v[9]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[10]);\n },\n 3319311131: (v) => new IFC4X3.IfcHeatExchanger(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2068733104: (v) => new IFC4X3.IfcHumidifier(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4175244083: (v) => new IFC4X3.IfcInterceptor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2176052936: (v) => new IFC4X3.IfcJunctionBox(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2696325953: (v) => new IFC4X3.IfcKerb(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), new IFC4X3.IfcBoolean(!v[8] ? null : v[8].value)),\n 76236018: (v) => new IFC4X3.IfcLamp(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 629592764: (v) => new IFC4X3.IfcLightFixture(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1154579445: (v) => new IFC4X3.IfcLinearPositioningElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value)),\n 1638804497: (v) => new IFC4X3.IfcLiquidTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1437502449: (v) => new IFC4X3.IfcMedicalDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1073191201: (v) => new IFC4X3.IfcMember(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2078563270: (v) => new IFC4X3.IfcMobileTelecommunicationsAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 234836483: (v) => new IFC4X3.IfcMooringDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2474470126: (v) => new IFC4X3.IfcMotorConnection(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2182337498: (v) => new IFC4X3.IfcNavigationElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 144952367: (v) => {\n var _a;\n return new IFC4X3.IfcOuterBoundaryCurve(((_a = v[0]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], new IFC4X3.IfcLogical(!v[1] ? null : v[1].value));\n },\n 3694346114: (v) => new IFC4X3.IfcOutlet(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1383356374: (v) => new IFC4X3.IfcPavement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1687234759: (v) => new IFC4X3.IfcPile(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8], v[9]),\n 310824031: (v) => new IFC4X3.IfcPipeFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3612865200: (v) => new IFC4X3.IfcPipeSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3171933400: (v) => new IFC4X3.IfcPlate(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 738039164: (v) => new IFC4X3.IfcProtectiveDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 655969474: (v) => {\n var _a, _b;\n return new IFC4X3.IfcProtectiveDeviceTrippingUnitType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 90941305: (v) => new IFC4X3.IfcPump(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3290496277: (v) => new IFC4X3.IfcRail(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2262370178: (v) => new IFC4X3.IfcRailing(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3024970846: (v) => new IFC4X3.IfcRamp(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3283111854: (v) => new IFC4X3.IfcRampFlight(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1232101972: (v) => {\n var _a, _b, _c, _d;\n return new IFC4X3.IfcRationalBSplineCurveWithKnots(new IFC4X3.IfcInteger(!v[0] ? null : v[0].value), ((_a = v[1]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], v[2], new IFC4X3.IfcLogical(!v[3] ? null : v[3].value), new IFC4X3.IfcLogical(!v[4] ? null : v[4].value), ((_b = v[5]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcInteger(p.value) : null)) || [], ((_c = v[6]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcParameterValue(p.value) : null)) || [], v[7], ((_d = v[8]) == null ? void 0 : _d.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcReal(p.value) : null)) || []);\n },\n 3798194928: (v) => new IFC4X3.IfcReinforcedSoil(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 979691226: (v) => new IFC4X3.IfcReinforcingBar(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcAreaMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12], v[13]),\n 2572171363: (v) => {\n var _a, _b, _c;\n return new IFC4X3.IfcReinforcingBarType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9], !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcAreaMeasure(!v[11] ? null : v[11].value), !v[12] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[12] ? null : v[12].value), v[13], !v[14] ? null : new IFC4X3.IfcLabel(!v[14] ? null : v[14].value), !v[15] ? null : ((_c = v[15]) == null ? void 0 : _c.map((p) => (p == null ? void 0 : p.value) ? TypeInitialiser(3, p) : null)) || []);\n },\n 2016517767: (v) => new IFC4X3.IfcRoof(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3053780830: (v) => new IFC4X3.IfcSanitaryTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1783015770: (v) => {\n var _a, _b;\n return new IFC4X3.IfcSensorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1329646415: (v) => new IFC4X3.IfcShadingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 991950508: (v) => new IFC4X3.IfcSignal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1529196076: (v) => new IFC4X3.IfcSlab(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3420628829: (v) => new IFC4X3.IfcSolarDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1999602285: (v) => new IFC4X3.IfcSpaceHeater(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1404847402: (v) => new IFC4X3.IfcStackTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 331165859: (v) => new IFC4X3.IfcStair(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4252922144: (v) => new IFC4X3.IfcStairFlight(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcInteger(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcInteger(!v[9] ? null : v[9].value), !v[10] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[10] ? null : v[10].value), !v[11] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[11] ? null : v[11].value), v[12]),\n 2515109513: (v) => {\n var _a, _b;\n return new IFC4X3.IfcStructuralAnalysisModel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : ((_a = v[7]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[8] ? null : ((_b = v[8]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[9] ? null : new Handle(!v[9] ? null : v[9].value));\n },\n 385403989: (v) => {\n var _a;\n return new IFC4X3.IfcStructuralLoadCase(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), v[5], v[6], v[7], !v[8] ? null : new IFC4X3.IfcRatioMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcLabel(!v[9] ? null : v[9].value), !v[10] ? null : ((_a = v[10]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new IFC4X3.IfcRatioMeasure(p.value) : null)) || []);\n },\n 1621171031: (v) => new IFC4X3.IfcStructuralPlanarAction(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), new Handle(!v[7] ? null : v[7].value), v[8], !v[9] ? null : new IFC4X3.IfcBoolean(!v[9] ? null : v[9].value), v[10], v[11]),\n 1162798199: (v) => new IFC4X3.IfcSwitchingDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 812556717: (v) => new IFC4X3.IfcTank(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3425753595: (v) => new IFC4X3.IfcTrackElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3825984169: (v) => new IFC4X3.IfcTransformer(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1620046519: (v) => new IFC4X3.IfcTransportElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3026737570: (v) => new IFC4X3.IfcTubeBundle(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3179687236: (v) => {\n var _a, _b;\n return new IFC4X3.IfcUnitaryControlElementType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 4292641817: (v) => new IFC4X3.IfcUnitaryEquipment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4207607924: (v) => new IFC4X3.IfcValve(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2391406946: (v) => new IFC4X3.IfcWall(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3512223829: (v) => new IFC4X3.IfcWallStandardCase(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4237592921: (v) => new IFC4X3.IfcWasteTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3304561284: (v) => new IFC4X3.IfcWindow(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[8] ? null : v[8].value), !v[9] ? null : new IFC4X3.IfcPositiveLengthMeasure(!v[9] ? null : v[9].value), v[10], v[11], !v[12] ? null : new IFC4X3.IfcLabel(!v[12] ? null : v[12].value)),\n 2874132201: (v) => {\n var _a, _b;\n return new IFC4X3.IfcActuatorType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 1634111441: (v) => new IFC4X3.IfcAirTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 177149247: (v) => new IFC4X3.IfcAirTerminalBox(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2056796094: (v) => new IFC4X3.IfcAirToAirHeatRecovery(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3001207471: (v) => {\n var _a, _b;\n return new IFC4X3.IfcAlarmType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 325726236: (v) => new IFC4X3.IfcAlignment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), v[7]),\n 277319702: (v) => new IFC4X3.IfcAudioVisualAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 753842376: (v) => new IFC4X3.IfcBeam(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4196446775: (v) => new IFC4X3.IfcBearing(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 32344328: (v) => new IFC4X3.IfcBoiler(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3314249567: (v) => new IFC4X3.IfcBorehole(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1095909175: (v) => new IFC4X3.IfcBuildingElementProxy(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2938176219: (v) => new IFC4X3.IfcBurner(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 635142910: (v) => new IFC4X3.IfcCableCarrierFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3758799889: (v) => new IFC4X3.IfcCableCarrierSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1051757585: (v) => new IFC4X3.IfcCableFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4217484030: (v) => new IFC4X3.IfcCableSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3999819293: (v) => new IFC4X3.IfcCaissonFoundation(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3902619387: (v) => new IFC4X3.IfcChiller(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 639361253: (v) => new IFC4X3.IfcCoil(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3221913625: (v) => new IFC4X3.IfcCommunicationsAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3571504051: (v) => new IFC4X3.IfcCompressor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2272882330: (v) => new IFC4X3.IfcCondenser(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 578613899: (v) => {\n var _a, _b;\n return new IFC4X3.IfcControllerType(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcIdentifier(!v[4] ? null : v[4].value), !v[5] ? null : ((_a = v[5]) == null ? void 0 : _a.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[6] ? null : ((_b = v[6]) == null ? void 0 : _b.map((p) => (p == null ? void 0 : p.value) ? new Handle(p.value) : null)) || [], !v[7] ? null : new IFC4X3.IfcLabel(!v[7] ? null : v[7].value), !v[8] ? null : new IFC4X3.IfcLabel(!v[8] ? null : v[8].value), v[9]);\n },\n 3460952963: (v) => new IFC4X3.IfcConveyorSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4136498852: (v) => new IFC4X3.IfcCooledBeam(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3640358203: (v) => new IFC4X3.IfcCoolingTower(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4074379575: (v) => new IFC4X3.IfcDamper(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3693000487: (v) => new IFC4X3.IfcDistributionBoard(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1052013943: (v) => new IFC4X3.IfcDistributionChamberElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 562808652: (v) => new IFC4X3.IfcDistributionCircuit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new IFC4X3.IfcLabel(!v[5] ? null : v[5].value), v[6]),\n 1062813311: (v) => new IFC4X3.IfcDistributionControlElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 342316401: (v) => new IFC4X3.IfcDuctFitting(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3518393246: (v) => new IFC4X3.IfcDuctSegment(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1360408905: (v) => new IFC4X3.IfcDuctSilencer(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1904799276: (v) => new IFC4X3.IfcElectricAppliance(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 862014818: (v) => new IFC4X3.IfcElectricDistributionBoard(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3310460725: (v) => new IFC4X3.IfcElectricFlowStorageDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 24726584: (v) => new IFC4X3.IfcElectricFlowTreatmentDevice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 264262732: (v) => new IFC4X3.IfcElectricGenerator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 402227799: (v) => new IFC4X3.IfcElectricMotor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1003880860: (v) => new IFC4X3.IfcElectricTimeControl(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3415622556: (v) => new IFC4X3.IfcFan(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 819412036: (v) => new IFC4X3.IfcFilter(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 1426591983: (v) => new IFC4X3.IfcFireSuppressionTerminal(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 182646315: (v) => new IFC4X3.IfcFlowInstrument(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 2680139844: (v) => new IFC4X3.IfcGeomodel(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 1971632696: (v) => new IFC4X3.IfcGeoslice(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value)),\n 2295281155: (v) => new IFC4X3.IfcProtectiveDeviceTrippingUnit(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4086658281: (v) => new IFC4X3.IfcSensor(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 630975310: (v) => new IFC4X3.IfcUnitaryControlElement(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 4288193352: (v) => new IFC4X3.IfcActuator(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 3087945054: (v) => new IFC4X3.IfcAlarm(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8]),\n 25142252: (v) => new IFC4X3.IfcController(new IFC4X3.IfcGloballyUniqueId(!v[0] ? null : v[0].value), !v[1] ? null : new Handle(!v[1] ? null : v[1].value), !v[2] ? null : new IFC4X3.IfcLabel(!v[2] ? null : v[2].value), !v[3] ? null : new IFC4X3.IfcText(!v[3] ? null : v[3].value), !v[4] ? null : new IFC4X3.IfcLabel(!v[4] ? null : v[4].value), !v[5] ? null : new Handle(!v[5] ? null : v[5].value), !v[6] ? null : new Handle(!v[6] ? null : v[6].value), !v[7] ? null : new IFC4X3.IfcIdentifier(!v[7] ? null : v[7].value), v[8])\n};\nInheritanceDef[3] = {\n 618182010: [IFCTELECOMADDRESS, IFCPOSTALADDRESS],\n 2879124712: [IFCALIGNMENTHORIZONTALSEGMENT, IFCALIGNMENTCANTSEGMENT, IFCALIGNMENTVERTICALSEGMENT],\n 411424972: [IFCCOSTVALUE],\n 4037036970: [IFCBOUNDARYNODECONDITIONWARPING, IFCBOUNDARYNODECONDITION, IFCBOUNDARYFACECONDITION, IFCBOUNDARYEDGECONDITION],\n 1387855156: [IFCBOUNDARYNODECONDITIONWARPING],\n 2859738748: [IFCCONNECTIONCURVEGEOMETRY, IFCCONNECTIONVOLUMEGEOMETRY, IFCCONNECTIONSURFACEGEOMETRY, IFCCONNECTIONPOINTECCENTRICITY, IFCCONNECTIONPOINTGEOMETRY],\n 2614616156: [IFCCONNECTIONPOINTECCENTRICITY],\n 1959218052: [IFCOBJECTIVE, IFCMETRIC],\n 1785450214: [IFCMAPCONVERSION],\n 1466758467: [IFCPROJECTEDCRS],\n 4294318154: [IFCDOCUMENTINFORMATION, IFCCLASSIFICATION, IFCLIBRARYINFORMATION],\n 3200245327: [IFCDOCUMENTREFERENCE, IFCCLASSIFICATIONREFERENCE, IFCLIBRARYREFERENCE, IFCEXTERNALLYDEFINEDTEXTFONT, IFCEXTERNALLYDEFINEDSURFACESTYLE, IFCEXTERNALLYDEFINEDHATCHSTYLE],\n 760658860: [IFCMATERIALCONSTITUENTSET, IFCMATERIALCONSTITUENT, IFCMATERIAL, IFCMATERIALPROFILESET, IFCMATERIALPROFILEWITHOFFSETS, IFCMATERIALPROFILE, IFCMATERIALLAYERSET, IFCMATERIALLAYERWITHOFFSETS, IFCMATERIALLAYER],\n 248100487: [IFCMATERIALLAYERWITHOFFSETS],\n 2235152071: [IFCMATERIALPROFILEWITHOFFSETS],\n 1507914824: [IFCMATERIALPROFILESETUSAGETAPERING, IFCMATERIALPROFILESETUSAGE, IFCMATERIALLAYERSETUSAGE],\n 1918398963: [IFCCONVERSIONBASEDUNITWITHOFFSET, IFCCONVERSIONBASEDUNIT, IFCCONTEXTDEPENDENTUNIT, IFCSIUNIT],\n 3701648758: [IFCLOCALPLACEMENT, IFCLINEARPLACEMENT, IFCGRIDPLACEMENT],\n 2483315170: [IFCPHYSICALCOMPLEXQUANTITY, IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYNUMBER, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA, IFCPHYSICALSIMPLEQUANTITY],\n 2226359599: [IFCQUANTITYWEIGHT, IFCQUANTITYVOLUME, IFCQUANTITYTIME, IFCQUANTITYNUMBER, IFCQUANTITYLENGTH, IFCQUANTITYCOUNT, IFCQUANTITYAREA],\n 677532197: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT, IFCPREDEFINEDITEM, IFCINDEXEDCOLOURMAP, IFCCURVESTYLEFONTPATTERN, IFCCURVESTYLEFONTANDSCALING, IFCCURVESTYLEFONT, IFCCOLOURRGB, IFCCOLOURSPECIFICATION, IFCCOLOURRGBLIST, IFCTEXTUREVERTEXLIST, IFCTEXTUREVERTEX, IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR, IFCTEXTURECOORDINATE, IFCTEXTSTYLETEXTMODEL, IFCTEXTSTYLEFORDEFINEDFONT, IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE, IFCSURFACETEXTURE, IFCSURFACESTYLEWITHTEXTURES, IFCSURFACESTYLERENDERING, IFCSURFACESTYLESHADING, IFCSURFACESTYLEREFRACTION, IFCSURFACESTYLELIGHTING],\n 2022622350: [IFCPRESENTATIONLAYERWITHSTYLE],\n 3119450353: [IFCFILLAREASTYLE, IFCCURVESTYLE, IFCTEXTSTYLE, IFCSURFACESTYLE],\n 2095639259: [IFCPRODUCTDEFINITIONSHAPE, IFCMATERIALDEFINITIONREPRESENTATION],\n 3958567839: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF, IFCPARAMETERIZEDPROFILEDEF, IFCOPENCROSSPROFILEDEF, IFCMIRROREDPROFILEDEF, IFCDERIVEDPROFILEDEF, IFCCOMPOSITEPROFILEDEF, IFCCENTERLINEPROFILEDEF, IFCARBITRARYOPENPROFILEDEF, IFCARBITRARYPROFILEDEFWITHVOIDS, IFCARBITRARYCLOSEDPROFILEDEF],\n 986844984: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY, IFCPROPERTY, IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES, IFCPREDEFINEDPROPERTIES, IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES, IFCEXTENDEDPROPERTIES, IFCPROPERTYENUMERATION],\n 1076942058: [IFCSTYLEDREPRESENTATION, IFCSTYLEMODEL, IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION, IFCSHAPEMODEL],\n 3377609919: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT, IFCGEOMETRICREPRESENTATIONCONTEXT],\n 3008791417: [IFCMAPPEDITEM, IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCSEGMENT, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET, IFCGEOMETRICREPRESENTATIONITEM, IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX, IFCTOPOLOGICALREPRESENTATIONITEM, IFCSTYLEDITEM],\n 2439245199: [IFCRESOURCECONSTRAINTRELATIONSHIP, IFCRESOURCEAPPROVALRELATIONSHIP, IFCPROPERTYDEPENDENCYRELATIONSHIP, IFCORGANIZATIONRELATIONSHIP, IFCMATERIALRELATIONSHIP, IFCEXTERNALREFERENCERELATIONSHIP, IFCDOCUMENTINFORMATIONRELATIONSHIP, IFCCURRENCYRELATIONSHIP, IFCAPPROVALRELATIONSHIP],\n 2341007311: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS, IFCRELATIONSHIP, IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION, IFCPROPERTYDEFINITION, IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT, IFCOBJECTDEFINITION],\n 1054537805: [IFCRESOURCETIME, IFCLAGTIME, IFCEVENTTIME, IFCWORKTIME, IFCTASKTIMERECURRING, IFCTASKTIME],\n 3982875396: [IFCTOPOLOGYREPRESENTATION, IFCSHAPEREPRESENTATION],\n 2273995522: [IFCSLIPPAGECONNECTIONCONDITION, IFCFAILURECONNECTIONCONDITION],\n 2162789131: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC, IFCSTRUCTURALLOADORRESULT, IFCSTRUCTURALLOADCONFIGURATION],\n 609421318: [IFCSURFACEREINFORCEMENTAREA, IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE, IFCSTRUCTURALLOADSTATIC],\n 2525727697: [IFCSTRUCTURALLOADSINGLEFORCEWARPING, IFCSTRUCTURALLOADSINGLEFORCE, IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION, IFCSTRUCTURALLOADSINGLEDISPLACEMENT, IFCSTRUCTURALLOADPLANARFORCE, IFCSTRUCTURALLOADLINEARFORCE, IFCSTRUCTURALLOADTEMPERATURE],\n 2830218821: [IFCSTYLEDREPRESENTATION],\n 846575682: [IFCSURFACESTYLERENDERING],\n 626085974: [IFCPIXELTEXTURE, IFCIMAGETEXTURE, IFCBLOBTEXTURE],\n 1549132990: [IFCTASKTIMERECURRING],\n 280115917: [IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP, IFCINDEXEDTEXTUREMAP, IFCTEXTUREMAP, IFCTEXTURECOORDINATEGENERATOR],\n 222769930: [IFCTEXTURECOORDINATEINDICESWITHVOIDS],\n 3101149627: [IFCREGULARTIMESERIES, IFCIRREGULARTIMESERIES],\n 1377556343: [IFCPATH, IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP, IFCLOOP, IFCFACEOUTERBOUND, IFCFACEBOUND, IFCADVANCEDFACE, IFCFACESURFACE, IFCFACE, IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE, IFCEDGE, IFCCLOSEDSHELL, IFCOPENSHELL, IFCCONNECTEDFACESET, IFCVERTEXPOINT, IFCVERTEX],\n 2799835756: [IFCVERTEXPOINT],\n 3798115385: [IFCARBITRARYPROFILEDEFWITHVOIDS],\n 1310608509: [IFCCENTERLINEPROFILEDEF],\n 3264961684: [IFCCOLOURRGB],\n 370225590: [IFCCLOSEDSHELL, IFCOPENSHELL],\n 2889183280: [IFCCONVERSIONBASEDUNITWITHOFFSET],\n 3632507154: [IFCMIRROREDPROFILEDEF],\n 3900360178: [IFCSUBEDGE, IFCORIENTEDEDGE, IFCEDGECURVE],\n 297599258: [IFCPROFILEPROPERTIES, IFCMATERIALPROPERTIES],\n 2556980723: [IFCADVANCEDFACE, IFCFACESURFACE],\n 1809719519: [IFCFACEOUTERBOUND],\n 3008276851: [IFCADVANCEDFACE],\n 3448662350: [IFCGEOMETRICREPRESENTATIONSUBCONTEXT],\n 2453401579: [IFCFILLAREASTYLETILES, IFCFILLAREASTYLEHATCHING, IFCFACEBASEDSURFACEMODEL, IFCDIRECTION, IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE, IFCCURVE, IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID, IFCCSGPRIMITIVE3D, IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D, IFCCARTESIANTRANSFORMATIONOPERATOR, IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D, IFCCARTESIANPOINTLIST, IFCBOUNDINGBOX, IFCBOOLEANCLIPPINGRESULT, IFCBOOLEANRESULT, IFCANNOTATIONFILLAREA, IFCVECTOR, IFCTEXTLITERALWITHEXTENT, IFCTEXTLITERAL, IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE, IFCTESSELLATEDITEM, IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE, IFCSURFACE, IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID, IFCSOLIDMODEL, IFCSHELLBASEDSURFACEMODEL, IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT, IFCSEGMENT, IFCSECTIONEDSPINE, IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION, IFCPOINT, IFCPLANARBOX, IFCPLANAREXTENT, IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT, IFCPLACEMENT, IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT, IFCLIGHTSOURCE, IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE, IFCHALFSPACESOLID, IFCGEOMETRICCURVESET, IFCGEOMETRICSET],\n 3590301190: [IFCGEOMETRICCURVESET],\n 812098782: [IFCBOXEDHALFSPACE, IFCPOLYGONALBOUNDEDHALFSPACE],\n 1437953363: [IFCINDEXEDPOLYGONALTEXTUREMAP, IFCINDEXEDTRIANGLETEXTUREMAP],\n 1402838566: [IFCLIGHTSOURCESPOT, IFCLIGHTSOURCEPOSITIONAL, IFCLIGHTSOURCEGONIOMETRIC, IFCLIGHTSOURCEDIRECTIONAL, IFCLIGHTSOURCEAMBIENT],\n 1520743889: [IFCLIGHTSOURCESPOT],\n 1008929658: [IFCEDGELOOP, IFCVERTEXLOOP, IFCPOLYLOOP],\n 3079605661: [IFCMATERIALPROFILESETUSAGETAPERING],\n 219451334: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS, IFCOBJECT, IFCPROJECTLIBRARY, IFCPROJECT, IFCCONTEXT, IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS, IFCTYPEOBJECT],\n 2529465313: [IFCLSHAPEPROFILEDEF, IFCISHAPEPROFILEDEF, IFCELLIPSEPROFILEDEF, IFCCIRCLEHOLLOWPROFILEDEF, IFCCIRCLEPROFILEDEF, IFCCSHAPEPROFILEDEF, IFCASYMMETRICISHAPEPROFILEDEF, IFCZSHAPEPROFILEDEF, IFCUSHAPEPROFILEDEF, IFCTRAPEZIUMPROFILEDEF, IFCTSHAPEPROFILEDEF, IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF, IFCRECTANGLEPROFILEDEF],\n 2004835150: [IFCAXIS2PLACEMENTLINEAR, IFCAXIS2PLACEMENT3D, IFCAXIS2PLACEMENT2D, IFCAXIS1PLACEMENT],\n 1663979128: [IFCPLANARBOX],\n 2067069095: [IFCCARTESIANPOINT, IFCPOINTONSURFACE, IFCPOINTONCURVE, IFCPOINTBYDISTANCEEXPRESSION],\n 3727388367: [IFCDRAUGHTINGPREDEFINEDCURVEFONT, IFCPREDEFINEDCURVEFONT, IFCDRAUGHTINGPREDEFINEDCOLOUR, IFCPREDEFINEDCOLOUR, IFCTEXTSTYLEFONTMODEL, IFCPREDEFINEDTEXTFONT],\n 3778827333: [IFCSECTIONREINFORCEMENTPROPERTIES, IFCSECTIONPROPERTIES, IFCREINFORCEMENTBARPROPERTIES],\n 1775413392: [IFCTEXTSTYLEFONTMODEL],\n 2598011224: [IFCCOMPLEXPROPERTY, IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE, IFCSIMPLEPROPERTY],\n 1680319473: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE, IFCPROPERTYTEMPLATEDEFINITION, IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET, IFCPROPERTYSETDEFINITION],\n 3357820518: [IFCPROPERTYSET, IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES, IFCPREDEFINEDPROPERTYSET, IFCELEMENTQUANTITY, IFCQUANTITYSET],\n 1482703590: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE, IFCPROPERTYTEMPLATE, IFCPROPERTYSETTEMPLATE],\n 2090586900: [IFCELEMENTQUANTITY],\n 3615266464: [IFCRECTANGLEHOLLOWPROFILEDEF, IFCROUNDEDRECTANGLEPROFILEDEF],\n 478536968: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT, IFCRELDEFINES, IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS, IFCRELDECOMPOSES, IFCRELDECLARES, IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS, IFCRELCONNECTS, IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL, IFCRELASSOCIATES, IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR, IFCRELASSIGNS],\n 823603102: [IFCCURVESEGMENT, IFCREPARAMETRISEDCOMPOSITECURVESEGMENT, IFCCOMPOSITECURVESEGMENT],\n 3692461612: [IFCPROPERTYTABLEVALUE, IFCPROPERTYSINGLEVALUE, IFCPROPERTYREFERENCEVALUE, IFCPROPERTYLISTVALUE, IFCPROPERTYENUMERATEDVALUE, IFCPROPERTYBOUNDEDVALUE],\n 723233188: [IFCSECTIONEDSOLIDHORIZONTAL, IFCSECTIONEDSOLID, IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP, IFCMANIFOLDSOLIDBREP, IFCCSGSOLID, IFCSWEPTDISKSOLIDPOLYGONAL, IFCSWEPTDISKSOLID, IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID, IFCSWEPTAREASOLID],\n 2473145415: [IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION],\n 1597423693: [IFCSTRUCTURALLOADSINGLEFORCEWARPING],\n 2513912981: [IFCSECTIONEDSURFACE, IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE, IFCELEMENTARYSURFACE, IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE, IFCBOUNDEDSURFACE, IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION, IFCSWEPTSURFACE],\n 2247615214: [IFCREVOLVEDAREASOLIDTAPERED, IFCREVOLVEDAREASOLID, IFCEXTRUDEDAREASOLIDTAPERED, IFCEXTRUDEDAREASOLID, IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID, IFCDIRECTRIXCURVESWEPTAREASOLID],\n 1260650574: [IFCSWEPTDISKSOLIDPOLYGONAL],\n 230924584: [IFCSURFACEOFREVOLUTION, IFCSURFACEOFLINEAREXTRUSION],\n 901063453: [IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET, IFCTESSELLATEDFACESET, IFCINDEXEDPOLYGONALFACEWITHVOIDS, IFCINDEXEDPOLYGONALFACE],\n 4282788508: [IFCTEXTLITERALWITHEXTENT],\n 1628702193: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE, IFCTYPERESOURCE, IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE, IFCTYPEPRODUCT, IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE, IFCTYPEPROCESS],\n 3736923433: [IFCTASKTYPE, IFCPROCEDURETYPE, IFCEVENTTYPE],\n 2347495698: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE, IFCSPATIALELEMENTTYPE, IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE, IFCELEMENTTYPE],\n 3698973494: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE, IFCCONSTRUCTIONRESOURCETYPE],\n 2736907675: [IFCBOOLEANCLIPPINGRESULT],\n 4182860854: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACE, IFCRECTANGULARTRIMMEDSURFACE, IFCCURVEBOUNDEDSURFACE, IFCCURVEBOUNDEDPLANE],\n 574549367: [IFCCARTESIANPOINTLIST3D, IFCCARTESIANPOINTLIST2D],\n 59481748: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR3D, IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM, IFCCARTESIANTRANSFORMATIONOPERATOR2D],\n 3749851601: [IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM],\n 3331915920: [IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM],\n 1383045692: [IFCCIRCLEHOLLOWPROFILEDEF],\n 2485617015: [IFCREPARAMETRISEDCOMPOSITECURVESEGMENT],\n 2574617495: [IFCCONSTRUCTIONPRODUCTRESOURCETYPE, IFCCONSTRUCTIONMATERIALRESOURCETYPE, IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE, IFCSUBCONTRACTRESOURCETYPE, IFCLABORRESOURCETYPE, IFCCREWRESOURCETYPE],\n 3419103109: [IFCPROJECTLIBRARY, IFCPROJECT],\n 2506170314: [IFCBLOCK, IFCSPHERE, IFCRIGHTCIRCULARCYLINDER, IFCRIGHTCIRCULARCONE, IFCRECTANGULARPYRAMID],\n 2601014836: [IFCCIRCLE, IFCELLIPSE, IFCCONIC, IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE, IFCBOUNDEDCURVE, IFCSEAMCURVE, IFCINTERSECTIONCURVE, IFCSURFACECURVE, IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL, IFCSPIRAL, IFCPOLYNOMIALCURVE, IFCPCURVE, IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D, IFCOFFSETCURVE, IFCLINE],\n 593015953: [IFCSURFACECURVESWEPTAREASOLID, IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID, IFCFIXEDREFERENCESWEPTAREASOLID],\n 339256511: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE, IFCELEMENTCOMPONENTTYPE, IFCELEMENTASSEMBLYTYPE, IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE, IFCDISTRIBUTIONELEMENTTYPE, IFCCIVILELEMENTTYPE, IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE, IFCBUILTELEMENTTYPE, IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE, IFCTRANSPORTATIONDEVICETYPE, IFCGEOGRAPHICELEMENTTYPE, IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE, IFCFURNISHINGELEMENTTYPE],\n 2777663545: [IFCCYLINDRICALSURFACE, IFCTOROIDALSURFACE, IFCSPHERICALSURFACE, IFCPLANE],\n 477187591: [IFCEXTRUDEDAREASOLIDTAPERED],\n 2652556860: [IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID],\n 4238390223: [IFCSYSTEMFURNITUREELEMENTTYPE, IFCFURNITURETYPE],\n 178912537: [IFCINDEXEDPOLYGONALFACEWITHVOIDS],\n 1425443689: [IFCFACETEDBREPWITHVOIDS, IFCFACETEDBREP, IFCADVANCEDBREPWITHVOIDS, IFCADVANCEDBREP],\n 3888040117: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY, IFCGROUP, IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM, IFCCONTROL, IFCOCCUPANT, IFCACTOR, IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE, IFCRESOURCE, IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT, IFCPRODUCT, IFCPROCEDURE, IFCEVENT, IFCTASK, IFCPROCESS],\n 590820931: [IFCOFFSETCURVEBYDISTANCES, IFCOFFSETCURVE3D, IFCOFFSETCURVE2D],\n 759155922: [IFCDRAUGHTINGPREDEFINEDCOLOUR],\n 2559016684: [IFCDRAUGHTINGPREDEFINEDCURVEFONT],\n 3967405729: [IFCPERMEABLECOVERINGPROPERTIES, IFCDOORPANELPROPERTIES, IFCDOORLININGPROPERTIES, IFCWINDOWPANELPROPERTIES, IFCWINDOWLININGPROPERTIES, IFCREINFORCEMENTDEFINITIONPROPERTIES],\n 2945172077: [IFCPROCEDURE, IFCEVENT, IFCTASK],\n 4208778838: [IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT, IFCPOSITIONINGELEMENT, IFCDISTRIBUTIONPORT, IFCPORT, IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT, IFCLINEARELEMENT, IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY, IFCELEMENT, IFCANNOTATION, IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER, IFCSTRUCTURALITEM, IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION, IFCSTRUCTURALACTIVITY, IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT, IFCSPATIALELEMENT],\n 3521284610: [IFCCOMPLEXPROPERTYTEMPLATE, IFCSIMPLEPROPERTYTEMPLATE],\n 3939117080: [IFCRELASSIGNSTORESOURCE, IFCRELASSIGNSTOPRODUCT, IFCRELASSIGNSTOPROCESS, IFCRELASSIGNSTOGROUPBYFACTOR, IFCRELASSIGNSTOGROUP, IFCRELASSIGNSTOCONTROL, IFCRELASSIGNSTOACTOR],\n 1307041759: [IFCRELASSIGNSTOGROUPBYFACTOR],\n 1865459582: [IFCRELASSOCIATESPROFILEDEF, IFCRELASSOCIATESMATERIAL, IFCRELASSOCIATESLIBRARY, IFCRELASSOCIATESDOCUMENT, IFCRELASSOCIATESCONSTRAINT, IFCRELASSOCIATESCLASSIFICATION, IFCRELASSOCIATESAPPROVAL],\n 826625072: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL, IFCRELSPACEBOUNDARY, IFCRELSERVICESBUILDINGS, IFCRELSEQUENCE, IFCRELREFERENCEDINSPATIALSTRUCTURE, IFCRELPOSITIONS, IFCRELINTERFERESELEMENTS, IFCRELFLOWCONTROLELEMENTS, IFCRELFILLSELEMENT, IFCRELCOVERSSPACES, IFCRELCOVERSBLDGELEMENTS, IFCRELCONTAINEDINSPATIALSTRUCTURE, IFCRELCONNECTSWITHECCENTRICITY, IFCRELCONNECTSSTRUCTURALMEMBER, IFCRELCONNECTSSTRUCTURALACTIVITY, IFCRELCONNECTSPORTS, IFCRELCONNECTSPORTTOELEMENT, IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS, IFCRELCONNECTSELEMENTS],\n 1204542856: [IFCRELCONNECTSWITHREALIZINGELEMENTS, IFCRELCONNECTSPATHELEMENTS],\n 1638771189: [IFCRELCONNECTSWITHECCENTRICITY],\n 2551354335: [IFCRELAGGREGATES, IFCRELADHERESTOELEMENT, IFCRELVOIDSELEMENT, IFCRELPROJECTSELEMENT, IFCRELNESTS],\n 693640335: [IFCRELDEFINESBYTYPE, IFCRELDEFINESBYTEMPLATE, IFCRELDEFINESBYPROPERTIES, IFCRELDEFINESBYOBJECT],\n 3451746338: [IFCRELSPACEBOUNDARY2NDLEVEL, IFCRELSPACEBOUNDARY1STLEVEL],\n 3523091289: [IFCRELSPACEBOUNDARY2NDLEVEL],\n 2914609552: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE, IFCCONSTRUCTIONRESOURCE],\n 1856042241: [IFCREVOLVEDAREASOLIDTAPERED],\n 1862484736: [IFCSECTIONEDSOLIDHORIZONTAL],\n 1412071761: [IFCEXTERNALSPATIALELEMENT, IFCEXTERNALSPATIALSTRUCTUREELEMENT, IFCSPATIALZONE, IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY, IFCSPATIALSTRUCTUREELEMENT],\n 710998568: [IFCSPATIALZONETYPE, IFCSPACETYPE, IFCSPATIALSTRUCTUREELEMENTTYPE],\n 2706606064: [IFCSPACE, IFCSITE, IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON, IFCFACILITYPART, IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY, IFCFACILITY, IFCBUILDINGSTOREY],\n 3893378262: [IFCSPACETYPE],\n 2735484536: [IFCSINESPIRAL, IFCSEVENTHORDERPOLYNOMIALSPIRAL, IFCSECONDORDERPOLYNOMIALSPIRAL, IFCCOSINESPIRAL, IFCCLOTHOID, IFCTHIRDORDERPOLYNOMIALSPIRAL],\n 3544373492: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION, IFCSTRUCTURALACTION, IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION, IFCSTRUCTURALREACTION],\n 3136571912: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION, IFCSTRUCTURALCONNECTION, IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER, IFCSTRUCTURALMEMBER],\n 530289379: [IFCSTRUCTURALCURVEMEMBERVARYING, IFCSTRUCTURALCURVEMEMBER, IFCSTRUCTURALSURFACEMEMBERVARYING, IFCSTRUCTURALSURFACEMEMBER],\n 3689010777: [IFCSTRUCTURALPOINTREACTION, IFCSTRUCTURALCURVEREACTION, IFCSTRUCTURALSURFACEREACTION],\n 3979015343: [IFCSTRUCTURALSURFACEMEMBERVARYING],\n 699246055: [IFCSEAMCURVE, IFCINTERSECTIONCURVE],\n 2387106220: [IFCPOLYGONALFACESET, IFCTRIANGULATEDIRREGULARNETWORK, IFCTRIANGULATEDFACESET],\n 3665877780: [IFCTRANSPORTELEMENTTYPE, IFCVEHICLETYPE],\n 2916149573: [IFCTRIANGULATEDIRREGULARNETWORK],\n 2296667514: [IFCOCCUPANT],\n 1635779807: [IFCADVANCEDBREPWITHVOIDS],\n 2887950389: [IFCRATIONALBSPLINESURFACEWITHKNOTS, IFCBSPLINESURFACEWITHKNOTS],\n 167062518: [IFCRATIONALBSPLINESURFACEWITHKNOTS],\n 1260505505: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS, IFCBSPLINECURVE, IFCTRIMMEDCURVE, IFCPOLYLINE, IFCINDEXEDPOLYCURVE, IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE, IFCCOMPOSITECURVE],\n 1626504194: [IFCBUILDINGELEMENTPROXYTYPE, IFCBEARINGTYPE, IFCBEAMTYPE, IFCWINDOWTYPE, IFCWALLTYPE, IFCTRACKELEMENTTYPE, IFCSTAIRTYPE, IFCSTAIRFLIGHTTYPE, IFCSLABTYPE, IFCSHADINGDEVICETYPE, IFCROOFTYPE, IFCRAMPTYPE, IFCRAMPFLIGHTTYPE, IFCRAILINGTYPE, IFCRAILTYPE, IFCPLATETYPE, IFCPAVEMENTTYPE, IFCNAVIGATIONELEMENTTYPE, IFCMOORINGDEVICETYPE, IFCMEMBERTYPE, IFCKERBTYPE, IFCFOOTINGTYPE, IFCDOORTYPE, IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE, IFCDEEPFOUNDATIONTYPE, IFCCURTAINWALLTYPE, IFCCOVERINGTYPE, IFCCOURSETYPE, IFCCOLUMNTYPE, IFCCHIMNEYTYPE],\n 3732776249: [IFCSEGMENTEDREFERENCECURVE, IFCGRADIENTCURVE, IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE, IFCCOMPOSITECURVEONSURFACE],\n 15328376: [IFCOUTERBOUNDARYCURVE, IFCBOUNDARYCURVE],\n 2510884976: [IFCCIRCLE, IFCELLIPSE],\n 2559216714: [IFCCONSTRUCTIONPRODUCTRESOURCE, IFCCONSTRUCTIONMATERIALRESOURCE, IFCCONSTRUCTIONEQUIPMENTRESOURCE, IFCSUBCONTRACTRESOURCE, IFCLABORRESOURCE, IFCCREWRESOURCE],\n 3293443760: [IFCACTIONREQUEST, IFCWORKSCHEDULE, IFCWORKPLAN, IFCWORKCONTROL, IFCWORKCALENDAR, IFCPROJECTORDER, IFCPERMIT, IFCPERFORMANCEHISTORY, IFCCOSTSCHEDULE, IFCCOSTITEM],\n 1306400036: [IFCCAISSONFOUNDATIONTYPE, IFCPILETYPE],\n 3256556792: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE, IFCDISTRIBUTIONCONTROLELEMENTTYPE, IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE, IFCDISTRIBUTIONFLOWELEMENTTYPE],\n 3849074793: [IFCDISTRIBUTIONCHAMBERELEMENTTYPE, IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE, IFCFLOWTREATMENTDEVICETYPE, IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE, IFCFLOWTERMINALTYPE, IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE, IFCFLOWSTORAGEDEVICETYPE, IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE, IFCFLOWSEGMENTTYPE, IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE, IFCFLOWMOVINGDEVICETYPE, IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE, IFCFLOWFITTINGTYPE, IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE, IFCFLOWCONTROLLERTYPE, IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE, IFCENERGYCONVERSIONDEVICETYPE],\n 1758889154: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT, IFCDISTRIBUTIONELEMENT, IFCCIVILELEMENT, IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY, IFCBUILTELEMENT, IFCVIRTUALELEMENT, IFCTRANSPORTELEMENT, IFCVEHICLE, IFCTRANSPORTATIONDEVICE, IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM, IFCGEOTECHNICALELEMENT, IFCGEOGRAPHICELEMENT, IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE, IFCFURNISHINGELEMENT, IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION, IFCFEATUREELEMENT, IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER, IFCELEMENTCOMPONENT, IFCELEMENTASSEMBLY],\n 1623761950: [IFCDISCRETEACCESSORY, IFCBUILDINGELEMENTPART, IFCVIBRATIONISOLATOR, IFCVIBRATIONDAMPER, IFCSIGN, IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH, IFCREINFORCINGELEMENT, IFCMECHANICALFASTENER, IFCIMPACTPROTECTIONDEVICE, IFCFASTENER],\n 2590856083: [IFCDISCRETEACCESSORYTYPE, IFCBUILDINGELEMENTPARTTYPE, IFCVIBRATIONISOLATORTYPE, IFCVIBRATIONDAMPERTYPE, IFCSIGNTYPE, IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE, IFCREINFORCINGELEMENTTYPE, IFCMECHANICALFASTENERTYPE, IFCIMPACTPROTECTIONDEVICETYPE, IFCFASTENERTYPE],\n 2107101300: [IFCELECTRICMOTORTYPE, IFCELECTRICGENERATORTYPE, IFCCOOLINGTOWERTYPE, IFCCOOLEDBEAMTYPE, IFCCONDENSERTYPE, IFCCOILTYPE, IFCCHILLERTYPE, IFCBURNERTYPE, IFCBOILERTYPE, IFCAIRTOAIRHEATRECOVERYTYPE, IFCUNITARYEQUIPMENTTYPE, IFCTUBEBUNDLETYPE, IFCTRANSFORMERTYPE, IFCSOLARDEVICETYPE, IFCMOTORCONNECTIONTYPE, IFCHUMIDIFIERTYPE, IFCHEATEXCHANGERTYPE, IFCEVAPORATORTYPE, IFCEVAPORATIVECOOLERTYPE, IFCENGINETYPE],\n 2853485674: [IFCEXTERNALSPATIALELEMENT],\n 807026263: [IFCFACETEDBREPWITHVOIDS],\n 24185140: [IFCBUILDING, IFCBRIDGE, IFCROAD, IFCRAILWAY, IFCMARINEFACILITY],\n 1310830890: [IFCBRIDGEPART, IFCROADPART, IFCRAILWAYPART, IFCMARINEPART, IFCFACILITYPARTCOMMON],\n 2827207264: [IFCSURFACEFEATURE, IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT, IFCFEATUREELEMENTSUBTRACTION, IFCPROJECTIONELEMENT, IFCFEATUREELEMENTADDITION],\n 2143335405: [IFCPROJECTIONELEMENT],\n 1287392070: [IFCEARTHWORKSCUT, IFCVOIDINGFEATURE, IFCOPENINGELEMENT],\n 3907093117: [IFCELECTRICTIMECONTROLTYPE, IFCELECTRICDISTRIBUTIONBOARDTYPE, IFCDISTRIBUTIONBOARDTYPE, IFCDAMPERTYPE, IFCAIRTERMINALBOXTYPE, IFCVALVETYPE, IFCSWITCHINGDEVICETYPE, IFCPROTECTIVEDEVICETYPE, IFCFLOWMETERTYPE],\n 3198132628: [IFCDUCTFITTINGTYPE, IFCCABLEFITTINGTYPE, IFCCABLECARRIERFITTINGTYPE, IFCPIPEFITTINGTYPE, IFCJUNCTIONBOXTYPE],\n 1482959167: [IFCFANTYPE, IFCCOMPRESSORTYPE, IFCPUMPTYPE],\n 1834744321: [IFCDUCTSEGMENTTYPE, IFCCONVEYORSEGMENTTYPE, IFCCABLESEGMENTTYPE, IFCCABLECARRIERSEGMENTTYPE, IFCPIPESEGMENTTYPE],\n 1339347760: [IFCELECTRICFLOWSTORAGEDEVICETYPE, IFCTANKTYPE],\n 2297155007: [IFCFIRESUPPRESSIONTERMINALTYPE, IFCELECTRICAPPLIANCETYPE, IFCCOMMUNICATIONSAPPLIANCETYPE, IFCAUDIOVISUALAPPLIANCETYPE, IFCAIRTERMINALTYPE, IFCWASTETERMINALTYPE, IFCSTACKTERMINALTYPE, IFCSPACEHEATERTYPE, IFCSIGNALTYPE, IFCSANITARYTERMINALTYPE, IFCOUTLETTYPE, IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE, IFCMEDICALDEVICETYPE, IFCLIQUIDTERMINALTYPE, IFCLIGHTFIXTURETYPE, IFCLAMPTYPE],\n 3009222698: [IFCFILTERTYPE, IFCELECTRICFLOWTREATMENTDEVICETYPE, IFCDUCTSILENCERTYPE, IFCINTERCEPTORTYPE],\n 263784265: [IFCSYSTEMFURNITUREELEMENT, IFCFURNITURE],\n 4230923436: [IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE, IFCGEOTECHNICALASSEMBLY, IFCGEOTECHNICALSTRATUM],\n 2706460486: [IFCASSET, IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE, IFCSYSTEM, IFCSTRUCTURALRESULTGROUP, IFCSTRUCTURALLOADCASE, IFCSTRUCTURALLOADGROUP, IFCINVENTORY],\n 2176059722: [IFCALIGNMENTVERTICAL, IFCALIGNMENTSEGMENT, IFCALIGNMENTHORIZONTAL, IFCALIGNMENTCANT],\n 3740093272: [IFCDISTRIBUTIONPORT],\n 1946335990: [IFCALIGNMENT, IFCLINEARPOSITIONINGELEMENT, IFCGRID, IFCREFERENT],\n 3027567501: [IFCREINFORCINGBAR, IFCTENDONCONDUIT, IFCTENDONANCHOR, IFCTENDON, IFCREINFORCINGMESH],\n 964333572: [IFCREINFORCINGBARTYPE, IFCTENDONTYPE, IFCTENDONCONDUITTYPE, IFCTENDONANCHORTYPE, IFCREINFORCINGMESHTYPE],\n 682877961: [IFCSTRUCTURALPLANARACTION, IFCSTRUCTURALSURFACEACTION, IFCSTRUCTURALPOINTACTION, IFCSTRUCTURALLINEARACTION, IFCSTRUCTURALCURVEACTION],\n 1179482911: [IFCSTRUCTURALSURFACECONNECTION, IFCSTRUCTURALPOINTCONNECTION, IFCSTRUCTURALCURVECONNECTION],\n 1004757350: [IFCSTRUCTURALLINEARACTION],\n 214636428: [IFCSTRUCTURALCURVEMEMBERVARYING],\n 1252848954: [IFCSTRUCTURALLOADCASE],\n 3657597509: [IFCSTRUCTURALPLANARACTION],\n 2254336722: [IFCSTRUCTURALANALYSISMODEL, IFCDISTRIBUTIONCIRCUIT, IFCDISTRIBUTIONSYSTEM, IFCBUILTSYSTEM, IFCBUILDINGSYSTEM, IFCZONE],\n 1953115116: [IFCTRANSPORTELEMENT, IFCVEHICLE],\n 1028945134: [IFCWORKSCHEDULE, IFCWORKPLAN],\n 1967976161: [IFCRATIONALBSPLINECURVEWITHKNOTS, IFCBSPLINECURVEWITHKNOTS],\n 2461110595: [IFCRATIONALBSPLINECURVEWITHKNOTS],\n 1136057603: [IFCOUTERBOUNDARYCURVE],\n 1876633798: [IFCBUILDINGELEMENTPROXY, IFCBEARING, IFCBEAM, IFCWINDOW, IFCWALLSTANDARDCASE, IFCWALL, IFCTRACKELEMENT, IFCSTAIRFLIGHT, IFCSTAIR, IFCSLAB, IFCSHADINGDEVICE, IFCROOF, IFCRAMPFLIGHT, IFCRAMP, IFCRAILING, IFCRAIL, IFCPLATE, IFCPAVEMENT, IFCNAVIGATIONELEMENT, IFCMOORINGDEVICE, IFCMEMBER, IFCKERB, IFCFOOTING, IFCREINFORCEDSOIL, IFCEARTHWORKSFILL, IFCEARTHWORKSELEMENT, IFCDOOR, IFCCAISSONFOUNDATION, IFCPILE, IFCDEEPFOUNDATION, IFCCURTAINWALL, IFCCOVERING, IFCCOURSE, IFCCOLUMN, IFCCHIMNEY],\n 3426335179: [IFCCAISSONFOUNDATION, IFCPILE],\n 2063403501: [IFCCONTROLLERTYPE, IFCALARMTYPE, IFCACTUATORTYPE, IFCUNITARYCONTROLELEMENTTYPE, IFCSENSORTYPE, IFCPROTECTIVEDEVICETRIPPINGUNITTYPE, IFCFLOWINSTRUMENTTYPE],\n 1945004755: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT, IFCDISTRIBUTIONCONTROLELEMENT, IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE, IFCDISTRIBUTIONFLOWELEMENT],\n 3040386961: [IFCDISTRIBUTIONCHAMBERELEMENT, IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR, IFCFLOWTREATMENTDEVICE, IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP, IFCFLOWTERMINAL, IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK, IFCFLOWSTORAGEDEVICE, IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT, IFCFLOWSEGMENT, IFCFAN, IFCCOMPRESSOR, IFCPUMP, IFCFLOWMOVINGDEVICE, IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX, IFCFLOWFITTING, IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER, IFCFLOWCONTROLLER, IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE, IFCENERGYCONVERSIONDEVICE],\n 3205830791: [IFCDISTRIBUTIONCIRCUIT],\n 1077100507: [IFCREINFORCEDSOIL, IFCEARTHWORKSFILL],\n 1658829314: [IFCELECTRICMOTOR, IFCELECTRICGENERATOR, IFCCOOLINGTOWER, IFCCOOLEDBEAM, IFCCONDENSER, IFCCOIL, IFCCHILLER, IFCBURNER, IFCBOILER, IFCAIRTOAIRHEATRECOVERY, IFCUNITARYEQUIPMENT, IFCTUBEBUNDLE, IFCTRANSFORMER, IFCSOLARDEVICE, IFCMOTORCONNECTION, IFCHUMIDIFIER, IFCHEATEXCHANGER, IFCEVAPORATOR, IFCEVAPORATIVECOOLER, IFCENGINE],\n 2058353004: [IFCELECTRICTIMECONTROL, IFCELECTRICDISTRIBUTIONBOARD, IFCDISTRIBUTIONBOARD, IFCDAMPER, IFCAIRTERMINALBOX, IFCVALVE, IFCSWITCHINGDEVICE, IFCPROTECTIVEDEVICE, IFCFLOWMETER],\n 4278956645: [IFCDUCTFITTING, IFCCABLEFITTING, IFCCABLECARRIERFITTING, IFCPIPEFITTING, IFCJUNCTIONBOX],\n 3132237377: [IFCFAN, IFCCOMPRESSOR, IFCPUMP],\n 987401354: [IFCDUCTSEGMENT, IFCCONVEYORSEGMENT, IFCCABLESEGMENT, IFCCABLECARRIERSEGMENT, IFCPIPESEGMENT],\n 707683696: [IFCELECTRICFLOWSTORAGEDEVICE, IFCTANK],\n 2223149337: [IFCFIRESUPPRESSIONTERMINAL, IFCELECTRICAPPLIANCE, IFCCOMMUNICATIONSAPPLIANCE, IFCAUDIOVISUALAPPLIANCE, IFCAIRTERMINAL, IFCWASTETERMINAL, IFCSTACKTERMINAL, IFCSPACEHEATER, IFCSIGNAL, IFCSANITARYTERMINAL, IFCOUTLET, IFCMOBILETELECOMMUNICATIONSAPPLIANCE, IFCMEDICALDEVICE, IFCLIQUIDTERMINAL, IFCLIGHTFIXTURE, IFCLAMP],\n 3508470533: [IFCFILTER, IFCELECTRICFLOWTREATMENTDEVICE, IFCDUCTSILENCER, IFCINTERCEPTOR],\n 2713699986: [IFCGEOSLICE, IFCGEOMODEL, IFCBOREHOLE],\n 1154579445: [IFCALIGNMENT],\n 2391406946: [IFCWALLSTANDARDCASE],\n 1062813311: [IFCCONTROLLER, IFCALARM, IFCACTUATOR, IFCUNITARYCONTROLELEMENT, IFCSENSOR, IFCPROTECTIVEDEVICETRIPPINGUNIT, IFCFLOWINSTRUMENT]\n};\nInversePropertyDef[3] = {\n 3630933823: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 618182010: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 411424972: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 130549933: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"ApprovedObjects\", IFCRELASSOCIATESAPPROVAL, 5, true], [\"ApprovedResources\", IFCRESOURCEAPPROVALRELATIONSHIP, 3, true], [\"IsRelatedWith\", IFCAPPROVALRELATIONSHIP, 3, true], [\"Relates\", IFCAPPROVALRELATIONSHIP, 2, true]],\n 1959218052: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 1466758467: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 602808272: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3200245327: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 2242383968: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 1040185647: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 3548104201: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true]],\n 852622518: [[\"PartOfW\", IFCGRID, 9, true], [\"PartOfV\", IFCGRID, 8, true], [\"PartOfU\", IFCGRID, 7, true], [\"HasIntersections\", IFCVIRTUALGRIDINTERSECTION, 0, true]],\n 2655187982: [[\"LibraryInfoForObjects\", IFCRELASSOCIATESLIBRARY, 5, true], [\"HasLibraryReferences\", IFCLIBRARYREFERENCE, 5, true]],\n 3452421091: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"LibraryRefForObjects\", IFCRELASSOCIATESLIBRARY, 5, true]],\n 760658860: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 248100487: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 3303938423: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1847252529: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialLayerSet\", IFCMATERIALLAYERSET, 0, false]],\n 2235152071: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 164193824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 552965576: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialProfileSet\", IFCMATERIALPROFILESET, 2, false]],\n 1507914824: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3368373690: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 3701648758: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 2251480897: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PropertiesForConstraint\", IFCRESOURCECONSTRAINTRELATIONSHIP, 2, true]],\n 4251960020: [[\"IsRelatedBy\", IFCORGANIZATIONRELATIONSHIP, 3, true], [\"Relates\", IFCORGANIZATIONRELATIONSHIP, 2, true], [\"Engages\", IFCPERSONANDORGANIZATION, 1, true]],\n 2077209135: [[\"EngagedIn\", IFCPERSONANDORGANIZATION, 0, true]],\n 2483315170: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2226359599: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3355820592: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 3958567839: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3843373140: [[\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 986844984: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3710013099: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2044713172: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2093928680: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 931644368: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2691318326: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 3252649465: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 2405470396: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 825690147: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 1076942058: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3377609919: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true]],\n 3008791417: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1660063152: [[\"HasShapeAspects\", IFCSHAPEASPECT, 4, true], [\"MapUsage\", IFCMAPPEDITEM, 0, true]],\n 867548509: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3982875396: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 4240577450: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2830218821: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 3958052878: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3049322572: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true]],\n 626085974: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 912023232: [[\"OfPerson\", IFCPERSON, 7, true], [\"OfOrganization\", IFCORGANIZATION, 4, true]],\n 222769930: [[\"ToTexMap\", IFCINDEXEDPOLYGONALTEXTUREMAP, 3, false]],\n 1010789467: [[\"ToTexMap\", IFCINDEXEDPOLYGONALTEXTUREMAP, 3, false]],\n 3101149627: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1377556343: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1735638870: [[\"RepresentationMap\", IFCREPRESENTATIONMAP, 1, true], [\"LayerAssignments\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"OfProductRepresentation\", IFCPRODUCTREPRESENTATION, 2, true], [\"OfShapeAspect\", IFCSHAPEASPECT, 0, true]],\n 2799835756: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1907098498: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798115385: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1310608509: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2705031697: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 616511568: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3150382593: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 747523909: [[\"ClassificationForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 647927063: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"ClassificationRefForObjects\", IFCRELASSOCIATESCLASSIFICATION, 5, true], [\"HasReferences\", IFCCLASSIFICATIONREFERENCE, 3, true]],\n 1485152156: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 370225590: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3050246964: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2889183280: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2713554722: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 3632507154: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1154170062: [[\"DocumentInfoForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true], [\"HasDocumentReferences\", IFCDOCUMENTREFERENCE, 4, true], [\"IsPointedTo\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 3, true], [\"IsPointer\", IFCDOCUMENTINFORMATIONRELATIONSHIP, 2, true]],\n 3732053477: [[\"ExternalReferenceForResources\", IFCEXTERNALREFERENCERELATIONSHIP, 2, true], [\"DocumentRefForObjects\", IFCRELASSOCIATESDOCUMENT, 5, true]],\n 3900360178: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 476780140: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 297599258: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2556980723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 1809719519: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 803316827: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3008276851: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 3448662350: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 2453401579: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4142052618: [[\"RepresentationsInContext\", IFCREPRESENTATION, 0, true], [\"HasSubContexts\", IFCGEOMETRICREPRESENTATIONSUBCONTEXT, 6, true], [\"HasCoordinateOperation\", IFCCOORDINATEOPERATION, 0, true]],\n 3590301190: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 178086475: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 812098782: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3905492369: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 3741457305: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1402838566: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 125510826: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2604431987: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4266656042: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1520743889: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3422422726: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 388784114: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 2624227202: [[\"PlacesObject\", IFCPRODUCT, 5, true], [\"ReferencedByPlacements\", IFCOBJECTPLACEMENT, 0, true]],\n 1008929658: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2347385850: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1838606355: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"HasRepresentation\", IFCMATERIALDEFINITIONREPRESENTATION, 3, true], [\"IsRelatedWith\", IFCMATERIALRELATIONSHIP, 3, true], [\"RelatesTo\", IFCMATERIALRELATIONSHIP, 2, true]],\n 3708119e3: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true], [\"ToMaterialConstituentSet\", IFCMATERIALCONSTITUENTSET, 2, false]],\n 2852063980: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true], [\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCMATERIALPROPERTIES, 3, true]],\n 1303795690: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3079605661: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3404854881: [[\"AssociatedTo\", IFCRELASSOCIATESMATERIAL, 5, true]],\n 3265635763: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2998442950: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 219451334: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 182550632: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2665983363: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1029017970: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2529465313: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2519244187: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3021840470: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfComplex\", IFCPHYSICALCOMPLEXQUANTITY, 2, true]],\n 597895409: [[\"IsMappedBy\", IFCTEXTURECOORDINATE, 0, true], [\"UsedInStyles\", IFCSURFACESTYLEWITHTEXTURES, 0, true]],\n 2004835150: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1663979128: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2067069095: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2165702409: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4022376103: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1423911732: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2924175390: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2775532180: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3778827333: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 673634403: [[\"ShapeOfProduct\", IFCPRODUCT, 6, true], [\"HasShapeAspects\", IFCSHAPEASPECT, 4, true]],\n 2802850158: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2598011224: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1680319473: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 3357820518: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1482703590: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true]],\n 2090586900: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3615266464: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3413951693: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1580146022: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 2778083089: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2042790032: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 4165799628: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true]],\n 1509187699: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 823603102: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 4124623270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3692461612: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 723233188: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2233826070: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2513912981: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2247615214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260650574: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1096409881: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 230924584: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3071757647: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 901063453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4282788508: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124975700: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2715220739: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1628702193: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true]],\n 3736923433: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2347495698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3698973494: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 427810014: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1417489154: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2759199220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2543172580: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3406155212: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasTextureMaps\", IFCTEXTUREMAP, 2, true]],\n 669184980: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3207858831: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4261334040: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3125803723: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2740243338: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3425423356: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2736907675: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4182860854: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2581212453: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2713105998: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2898889636: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 1123145078: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 574549367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1675464909: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2059837836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 59481748: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3749851601: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3486308946: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3331915920: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1416205885: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1383045692: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2205249479: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2542286263: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2485617015: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2574617495: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3419103109: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 1815067380: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2506170314: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2147822146: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2601014836: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2827736869: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2629017746: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4212018352: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 32440307: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 593015953: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1472233963: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1883228015: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 339256511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2777663545: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2835456948: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 4024345920: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 477187591: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2804161546: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2047409740: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 374418227: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 315944413: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2652556860: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4238390223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1268542332: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4095422895: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 987898635: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1484403080: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 178912537: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true], [\"HasTexCoords\", IFCTEXTURECOORDINATEINDICES, 1, true]],\n 2294589976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"ToFaceSet\", IFCPOLYGONALFACESET, 2, true], [\"HasTexCoords\", IFCTEXTURECOORDINATEINDICES, 1, true]],\n 572779678: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 428585644: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1281925730: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1425443689: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3888040117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true]],\n 590820931: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3388369263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3505215534: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2485787929: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1682466193: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 603570806: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 220341763: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3381221214: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3967405729: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 569719735: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2945172077: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 4208778838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 103090709: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 653396225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Declares\", IFCRELDECLARES, 4, true]],\n 871118103: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 4166981789: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 2752243245: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 941946838: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 1451395588: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 492091185: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Defines\", IFCRELDEFINESBYTEMPLATE, 5, true]],\n 3650150729: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 110355661: [[\"HasExternalReferences\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"PartOfPset\", IFCPROPERTYSET, 4, true], [\"PropertyForDependance\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 2, true], [\"PropertyDependsOn\", IFCPROPERTYDEPENDENCYRELATIONSHIP, 3, true], [\"PartOfComplex\", IFCCOMPLEXPROPERTY, 3, true], [\"HasConstraints\", IFCRESOURCECONSTRAINTRELATIONSHIP, 3, true], [\"HasApprovals\", IFCRESOURCEAPPROVALRELATIONSHIP, 2, true]],\n 3521284610: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 2770003689: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 2798486643: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3454111270: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3765753017: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3523091289: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true]],\n 1521410863: [[\"InnerBoundaries\", IFCRELSPACEBOUNDARY1STLEVEL, 9, true], [\"Corresponds\", IFCRELSPACEBOUNDARY2NDLEVEL, 10, true]],\n 816062949: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"UsingCurves\", IFCCOMPOSITECURVE, 0, true]],\n 2914609552: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1856042241: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3243963512: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4158566097: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3626867408: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1862484736: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1290935644: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1356537516: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3663146110: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 1412071761: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 710998568: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2706606064: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 3893378262: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 463610769: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2481509218: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 451544542: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4015995234: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2735484536: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3544373492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3136571912: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true]],\n 530289379: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 3689010777: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 3979015343: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2218152070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 603775116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4095615324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 699246055: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2028607225: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2809605785: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4124788165: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1580310250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3473067441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 3206491090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2387106220: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 782932809: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1935646853: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3665877780: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2916149573: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 1229763772: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3651464721: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 336235671: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 512836454: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2296667514: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 1635779807: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2603310189: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1674181508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true]],\n 2887950389: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 167062518: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1334484129: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649129432: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1260505505: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3124254112: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1626504194: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2197970202: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2937912522: [[\"HasExternalReference\", IFCEXTERNALREFERENCERELATIONSHIP, 3, true], [\"HasProperties\", IFCPROFILEPROPERTIES, 3, true]],\n 3893394355: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3497074424: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 300633059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3875453745: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"PartOfComplexTemplate\", IFCCOMPLEXPROPERTYTEMPLATE, 6, true], [\"PartOfPsetTemplate\", IFCPROPERTYSETTEMPLATE, 6, true]],\n 3732776249: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 15328376: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2510884976: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2185764099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 4105962743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1525564444: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2559216714: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3293443760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 2000195564: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3895139033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1419761937: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4189326743: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1916426348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3295246426: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1457835157: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1213902940: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1306400036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4234616927: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3256556792: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3849074793: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2963535650: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 1714330368: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 2323601079: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1758889154: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4123344466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2397081782: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1623761950: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2590856083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1704287377: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2107101300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 132023988: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3174744832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3390157468: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4148101412: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2853485674: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 807026263: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3737207727: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 24185140: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1310830890: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 4228831410: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 647756555: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2489546625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2827207264: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2143335405: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1287392070: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 3907093117: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3198132628: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3815607619: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1482959167: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1834744321: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1339347760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2297155007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3009222698: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1893162501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 263784265: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1509553395: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3493046030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4230923436: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1594536857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2898700619: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2706460486: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1251058090: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1806887404: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2568555532: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3948183225: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2571569899: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3946677679: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3113134337: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2391368822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 4288270099: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 679976338: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3827777499: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1051575348: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1161773419: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2176059722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1770583370: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 525669439: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 976884017: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 377706215: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2108223431: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1114901282: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3181161470: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1950438474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 710110818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 977012517: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 506776471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4143007308: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsActingUpon\", IFCRELASSIGNSTOACTOR, 6, true]],\n 3588315303: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false], [\"HasFillings\", IFCRELFILLSELEMENT, 4, true]],\n 2837617999: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 514975943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2382730787: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3566463478: [[\"HasContext\", IFCRELDECLARES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"DefinesType\", IFCTYPEOBJECT, 5, true], [\"IsDefinedBy\", IFCRELDEFINESBYTEMPLATE, 4, true], [\"DefinesOccurrence\", IFCRELDEFINESBYPROPERTIES, 5, true]],\n 3327091369: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1158309216: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 804291784: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4231323485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4017108033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2839578677: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true], [\"HasColours\", IFCINDEXEDCOLOURMAP, 0, true], [\"HasTextures\", IFCINDEXEDTEXTUREMAP, 1, true]],\n 3724593414: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3740093272: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 1946335990: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 2744685151: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsPredecessorTo\", IFCRELSEQUENCE, 4, true], [\"IsSuccessorFrom\", IFCRELSEQUENCE, 5, true], [\"OperatesOn\", IFCRELASSIGNSTOPROCESS, 6, true]],\n 2904328755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3651124850: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"ProjectsElements\", IFCRELPROJECTSELEMENT, 5, false]],\n 1842657554: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2250791053: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1763565496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2893384427: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3992365140: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 1891881377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2324767716: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1469900589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 683857671: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4021432810: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 3027567501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 964333572: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2320036040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2310774935: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 146592293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 550521510: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2781568857: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1768891740: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2157484638: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3649235739: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 544395925: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1027922057: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4074543187: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 33720170: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3599934289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1894708472: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 42703149: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 4097777520: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2533589738: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1072016465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3856911033: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasCoverings\", IFCRELCOVERSSPACES, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 1305183839: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3812236995: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3112655638: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1039846685: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 338393293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 682877961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1179482911: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1004757350: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 4243806635: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 214636428: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2445595289: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectedBy\", IFCRELCONNECTSSTRUCTURALMEMBER, 4, true]],\n 2757150158: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1807405624: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1252848954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 2082059205: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 734778138: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 1235345126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 2986769608: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ResultGroupFor\", IFCSTRUCTURALANALYSISMODEL, 8, true]],\n 3657597509: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1975003073: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedStructuralActivity\", IFCRELCONNECTSSTRUCTURALACTIVITY, 4, true], [\"ConnectsStructuralMembers\", IFCRELCONNECTSSTRUCTURALMEMBER, 5, true]],\n 148013059: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 3101698114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"AdheresToElement\", IFCRELADHERESTOELEMENT, 5, false]],\n 2315554128: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2254336722: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 413509423: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 5716631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3824725483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2347447852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3081323446: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3663046924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2281632017: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2415094496: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 618700268: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1692211062: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2097647324: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1953115116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3593883385: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1600972822: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1911125066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 728799441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 840318589: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1530820697: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3956297820: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2391383451: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3313531582: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2769231204: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 926996030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1898987631: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1133259667: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4009809668: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4088093105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1028945134: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 4218914973: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 3342526732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1033361043: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 3821786052: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"Controls\", IFCRELASSIGNSTOCONTROL, 6, true]],\n 1411407467: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3352864051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1871374353: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4266260250: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1545765605: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 317615605: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1662888072: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 3460190687: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1532957894: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1967976161: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 2461110595: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 819618141: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3649138523: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 231477066: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1136057603: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 644574406: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 963979645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 4031249490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true]],\n 2979338954: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 39481116: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1909888760: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1177604601: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1876633798: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3862327254: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 2188180465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 395041908: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3293546465: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2674252688: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1285652485: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3203706013: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2951183804: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3296154744: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2611217952: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 1677625105: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2301859152: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 843113511: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 400855858: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3850581409: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2816379211: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3898045240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 1060000209: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 488727124: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ResourceOf\", IFCRELASSIGNSTORESOURCE, 6, true]],\n 2940368186: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 335055490: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2954562838: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1502416096: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1973544240: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"CoversSpaces\", IFCRELCOVERSSPACES, 5, true], [\"CoversElements\", IFCRELCOVERSBLDGELEMENTS, 5, true]],\n 3495092785: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3961806047: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3426335179: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1335981549: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2635815018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 479945903: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1599208980: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2063403501: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1945004755: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true]],\n 3040386961: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3041715199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedIn\", IFCRELCONNECTSPORTTOELEMENT, 4, true], [\"ConnectedFrom\", IFCRELCONNECTSPORTS, 5, true], [\"ConnectedTo\", IFCRELCONNECTSPORTS, 4, true]],\n 3205830791: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 395920057: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 869906466: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3760055223: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2030761528: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3071239417: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"VoidsElements\", IFCRELVOIDSELEMENT, 5, false]],\n 1077100507: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3376911765: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 663422040: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2417008758: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3277789161: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2142170206: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1534661035: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1217240411: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 712377611: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1658829314: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2814081492: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3747195512: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 484807127: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1209101575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainsElements\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 5, true], [\"ServicedBySystems\", IFCRELSERVICESBUILDINGS, 5, true], [\"ReferencesElements\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"BoundedBy\", IFCRELSPACEBOUNDARY, 4, true]],\n 346874300: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1810631287: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4222183408: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2058353004: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4278956645: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4037862832: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2188021234: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3132237377: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 987401354: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 707683696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2223149337: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3508470533: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 900683007: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2713699986: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3009204131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 3319311131: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2068733104: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4175244083: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2176052936: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2696325953: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 76236018: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 629592764: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1154579445: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 1638804497: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1437502449: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1073191201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2078563270: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 234836483: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2474470126: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2182337498: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 144952367: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3694346114: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1383356374: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1687234759: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 310824031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3612865200: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3171933400: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 738039164: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 655969474: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 90941305: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3290496277: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2262370178: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3024970846: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3283111854: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1232101972: [[\"LayerAssignment\", IFCPRESENTATIONLAYERASSIGNMENT, 2, true], [\"StyledByItem\", IFCSTYLEDITEM, 0, true]],\n 3798194928: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 979691226: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2572171363: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 2016517767: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3053780830: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1783015770: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1329646415: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 991950508: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1529196076: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3420628829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1999602285: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1404847402: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 331165859: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4252922144: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2515109513: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 385403989: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"SourceOfResultGroup\", IFCSTRUCTURALRESULTGROUP, 6, true], [\"LoadGroupFor\", IFCSTRUCTURALANALYSISMODEL, 7, true]],\n 1621171031: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"AssignedToStructuralItem\", IFCRELCONNECTSSTRUCTURALACTIVITY, 5, true]],\n 1162798199: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 812556717: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3425753595: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3825984169: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1620046519: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3026737570: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3179687236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 4292641817: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4207607924: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2391406946: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3512223829: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4237592921: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3304561284: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2874132201: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 1634111441: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 177149247: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2056796094: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3001207471: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 325726236: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"Positions\", IFCRELPOSITIONS, 4, true]],\n 277319702: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 753842376: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 4196446775: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 32344328: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3314249567: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1095909175: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2938176219: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 635142910: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3758799889: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1051757585: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4217484030: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3999819293: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 3902619387: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 639361253: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3221913625: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3571504051: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 2272882330: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 578613899: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"Types\", IFCRELDEFINESBYTYPE, 5, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true]],\n 3460952963: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4136498852: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3640358203: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 4074379575: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3693000487: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1052013943: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 562808652: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"IsGroupedBy\", IFCRELASSIGNSTOGROUP, 6, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"ServicesBuildings\", IFCRELSERVICESBUILDINGS, 4, true], [\"ServicesFacilities\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true]],\n 1062813311: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 342316401: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3518393246: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1360408905: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1904799276: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 862014818: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3310460725: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 24726584: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 264262732: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 402227799: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1003880860: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 3415622556: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 819412036: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 1426591983: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"HasControlElements\", IFCRELFLOWCONTROLELEMENTS, 5, true]],\n 182646315: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 2680139844: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 1971632696: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true]],\n 2295281155: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4086658281: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 630975310: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 4288193352: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 3087945054: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]],\n 25142252: [[\"HasAssignments\", IFCRELASSIGNS, 4, true], [\"Nests\", IFCRELNESTS, 5, true], [\"IsNestedBy\", IFCRELNESTS, 4, true], [\"HasContext\", IFCRELDECLARES, 5, true], [\"IsDecomposedBy\", IFCRELAGGREGATES, 4, true], [\"Decomposes\", IFCRELAGGREGATES, 5, true], [\"HasAssociations\", IFCRELASSOCIATES, 4, true], [\"IsDeclaredBy\", IFCRELDEFINESBYOBJECT, 4, true], [\"Declares\", IFCRELDEFINESBYOBJECT, 5, true], [\"IsTypedBy\", IFCRELDEFINESBYTYPE, 4, true], [\"IsDefinedBy\", IFCRELDEFINESBYPROPERTIES, 4, true], [\"ReferencedBy\", IFCRELASSIGNSTOPRODUCT, 6, true], [\"PositionedRelativeTo\", IFCRELPOSITIONS, 5, true], [\"ReferencedInStructures\", IFCRELREFERENCEDINSPATIALSTRUCTURE, 4, true], [\"FillsVoids\", IFCRELFILLSELEMENT, 5, true], [\"ConnectedTo\", IFCRELCONNECTSELEMENTS, 5, true], [\"IsInterferedByElements\", IFCRELINTERFERESELEMENTS, 5, true], [\"InterferesElements\", IFCRELINTERFERESELEMENTS, 4, true], [\"HasProjections\", IFCRELPROJECTSELEMENT, 4, true], [\"HasOpenings\", IFCRELVOIDSELEMENT, 4, true], [\"IsConnectionRealization\", IFCRELCONNECTSWITHREALIZINGELEMENTS, 7, true], [\"ProvidesBoundaries\", IFCRELSPACEBOUNDARY, 5, true], [\"ConnectedFrom\", IFCRELCONNECTSELEMENTS, 6, true], [\"ContainedInStructure\", IFCRELCONTAINEDINSPATIALSTRUCTURE, 4, true], [\"HasCoverings\", IFCRELCOVERSBLDGELEMENTS, 4, true], [\"HasSurfaceFeatures\", IFCRELADHERESTOELEMENT, 4, true], [\"HasPorts\", IFCRELCONNECTSPORTTOELEMENT, 5, true], [\"AssignedToFlowElement\", IFCRELFLOWCONTROLELEMENTS, 4, true]]\n};\nConstructors[3] = {\n 3630933823: (a) => new IFC4X3.IfcActorRole(a[0], a[1], a[2]),\n 618182010: (a) => new IFC4X3.IfcAddress(a[0], a[1], a[2]),\n 2879124712: (a) => new IFC4X3.IfcAlignmentParameterSegment(a[0], a[1]),\n 3633395639: (a) => new IFC4X3.IfcAlignmentVerticalSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639542469: (a) => new IFC4X3.IfcApplication(a[0], a[1], a[2], a[3]),\n 411424972: (a) => new IFC4X3.IfcAppliedValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 130549933: (a) => new IFC4X3.IfcApproval(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4037036970: (a) => new IFC4X3.IfcBoundaryCondition(a[0]),\n 1560379544: (a) => new IFC4X3.IfcBoundaryEdgeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3367102660: (a) => new IFC4X3.IfcBoundaryFaceCondition(a[0], a[1], a[2], a[3]),\n 1387855156: (a) => new IFC4X3.IfcBoundaryNodeCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2069777674: (a) => new IFC4X3.IfcBoundaryNodeConditionWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2859738748: (_) => new IFC4X3.IfcConnectionGeometry(),\n 2614616156: (a) => new IFC4X3.IfcConnectionPointGeometry(a[0], a[1]),\n 2732653382: (a) => new IFC4X3.IfcConnectionSurfaceGeometry(a[0], a[1]),\n 775493141: (a) => new IFC4X3.IfcConnectionVolumeGeometry(a[0], a[1]),\n 1959218052: (a) => new IFC4X3.IfcConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1785450214: (a) => new IFC4X3.IfcCoordinateOperation(a[0], a[1]),\n 1466758467: (a) => new IFC4X3.IfcCoordinateReferenceSystem(a[0], a[1], a[2], a[3]),\n 602808272: (a) => new IFC4X3.IfcCostValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1765591967: (a) => new IFC4X3.IfcDerivedUnit(a[0], a[1], a[2], a[3]),\n 1045800335: (a) => new IFC4X3.IfcDerivedUnitElement(a[0], a[1]),\n 2949456006: (a) => new IFC4X3.IfcDimensionalExponents(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4294318154: (_) => new IFC4X3.IfcExternalInformation(),\n 3200245327: (a) => new IFC4X3.IfcExternalReference(a[0], a[1], a[2]),\n 2242383968: (a) => new IFC4X3.IfcExternallyDefinedHatchStyle(a[0], a[1], a[2]),\n 1040185647: (a) => new IFC4X3.IfcExternallyDefinedSurfaceStyle(a[0], a[1], a[2]),\n 3548104201: (a) => new IFC4X3.IfcExternallyDefinedTextFont(a[0], a[1], a[2]),\n 852622518: (a) => new IFC4X3.IfcGridAxis(a[0], a[1], a[2]),\n 3020489413: (a) => new IFC4X3.IfcIrregularTimeSeriesValue(a[0], a[1]),\n 2655187982: (a) => new IFC4X3.IfcLibraryInformation(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3452421091: (a) => new IFC4X3.IfcLibraryReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4162380809: (a) => new IFC4X3.IfcLightDistributionData(a[0], a[1], a[2]),\n 1566485204: (a) => new IFC4X3.IfcLightIntensityDistribution(a[0], a[1]),\n 3057273783: (a) => new IFC4X3.IfcMapConversion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1847130766: (a) => new IFC4X3.IfcMaterialClassificationRelationship(a[0], a[1]),\n 760658860: (_) => new IFC4X3.IfcMaterialDefinition(),\n 248100487: (a) => new IFC4X3.IfcMaterialLayer(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3303938423: (a) => new IFC4X3.IfcMaterialLayerSet(a[0], a[1], a[2]),\n 1847252529: (a) => new IFC4X3.IfcMaterialLayerWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2199411900: (a) => new IFC4X3.IfcMaterialList(a[0]),\n 2235152071: (a) => new IFC4X3.IfcMaterialProfile(a[0], a[1], a[2], a[3], a[4], a[5]),\n 164193824: (a) => new IFC4X3.IfcMaterialProfileSet(a[0], a[1], a[2], a[3]),\n 552965576: (a) => new IFC4X3.IfcMaterialProfileWithOffsets(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1507914824: (_) => new IFC4X3.IfcMaterialUsageDefinition(),\n 2597039031: (a) => new IFC4X3.IfcMeasureWithUnit(a[0], a[1]),\n 3368373690: (a) => new IFC4X3.IfcMetric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2706619895: (a) => new IFC4X3.IfcMonetaryUnit(a[0]),\n 1918398963: (a) => new IFC4X3.IfcNamedUnit(a[0], a[1]),\n 3701648758: (a) => new IFC4X3.IfcObjectPlacement(a[0]),\n 2251480897: (a) => new IFC4X3.IfcObjective(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4251960020: (a) => new IFC4X3.IfcOrganization(a[0], a[1], a[2], a[3], a[4]),\n 1207048766: (a) => new IFC4X3.IfcOwnerHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2077209135: (a) => new IFC4X3.IfcPerson(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 101040310: (a) => new IFC4X3.IfcPersonAndOrganization(a[0], a[1], a[2]),\n 2483315170: (a) => new IFC4X3.IfcPhysicalQuantity(a[0], a[1]),\n 2226359599: (a) => new IFC4X3.IfcPhysicalSimpleQuantity(a[0], a[1], a[2]),\n 3355820592: (a) => new IFC4X3.IfcPostalAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 677532197: (_) => new IFC4X3.IfcPresentationItem(),\n 2022622350: (a) => new IFC4X3.IfcPresentationLayerAssignment(a[0], a[1], a[2], a[3]),\n 1304840413: (a) => new IFC4X3.IfcPresentationLayerWithStyle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3119450353: (a) => new IFC4X3.IfcPresentationStyle(a[0]),\n 2095639259: (a) => new IFC4X3.IfcProductRepresentation(a[0], a[1], a[2]),\n 3958567839: (a) => new IFC4X3.IfcProfileDef(a[0], a[1]),\n 3843373140: (a) => new IFC4X3.IfcProjectedCRS(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 986844984: (_) => new IFC4X3.IfcPropertyAbstraction(),\n 3710013099: (a) => new IFC4X3.IfcPropertyEnumeration(a[0], a[1], a[2]),\n 2044713172: (a) => new IFC4X3.IfcQuantityArea(a[0], a[1], a[2], a[3], a[4]),\n 2093928680: (a) => new IFC4X3.IfcQuantityCount(a[0], a[1], a[2], a[3], a[4]),\n 931644368: (a) => new IFC4X3.IfcQuantityLength(a[0], a[1], a[2], a[3], a[4]),\n 2691318326: (a) => new IFC4X3.IfcQuantityNumber(a[0], a[1], a[2], a[3], a[4]),\n 3252649465: (a) => new IFC4X3.IfcQuantityTime(a[0], a[1], a[2], a[3], a[4]),\n 2405470396: (a) => new IFC4X3.IfcQuantityVolume(a[0], a[1], a[2], a[3], a[4]),\n 825690147: (a) => new IFC4X3.IfcQuantityWeight(a[0], a[1], a[2], a[3], a[4]),\n 3915482550: (a) => new IFC4X3.IfcRecurrencePattern(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2433181523: (a) => new IFC4X3.IfcReference(a[0], a[1], a[2], a[3], a[4]),\n 1076942058: (a) => new IFC4X3.IfcRepresentation(a[0], a[1], a[2], a[3]),\n 3377609919: (a) => new IFC4X3.IfcRepresentationContext(a[0], a[1]),\n 3008791417: (_) => new IFC4X3.IfcRepresentationItem(),\n 1660063152: (a) => new IFC4X3.IfcRepresentationMap(a[0], a[1]),\n 2439245199: (a) => new IFC4X3.IfcResourceLevelRelationship(a[0], a[1]),\n 2341007311: (a) => new IFC4X3.IfcRoot(a[0], a[1], a[2], a[3]),\n 448429030: (a) => new IFC4X3.IfcSIUnit(a[0], a[1], a[2], a[3]),\n 1054537805: (a) => new IFC4X3.IfcSchedulingTime(a[0], a[1], a[2]),\n 867548509: (a) => new IFC4X3.IfcShapeAspect(a[0], a[1], a[2], a[3], a[4]),\n 3982875396: (a) => new IFC4X3.IfcShapeModel(a[0], a[1], a[2], a[3]),\n 4240577450: (a) => new IFC4X3.IfcShapeRepresentation(a[0], a[1], a[2], a[3]),\n 2273995522: (a) => new IFC4X3.IfcStructuralConnectionCondition(a[0]),\n 2162789131: (a) => new IFC4X3.IfcStructuralLoad(a[0]),\n 3478079324: (a) => new IFC4X3.IfcStructuralLoadConfiguration(a[0], a[1], a[2]),\n 609421318: (a) => new IFC4X3.IfcStructuralLoadOrResult(a[0]),\n 2525727697: (a) => new IFC4X3.IfcStructuralLoadStatic(a[0]),\n 3408363356: (a) => new IFC4X3.IfcStructuralLoadTemperature(a[0], a[1], a[2], a[3]),\n 2830218821: (a) => new IFC4X3.IfcStyleModel(a[0], a[1], a[2], a[3]),\n 3958052878: (a) => new IFC4X3.IfcStyledItem(a[0], a[1], a[2]),\n 3049322572: (a) => new IFC4X3.IfcStyledRepresentation(a[0], a[1], a[2], a[3]),\n 2934153892: (a) => new IFC4X3.IfcSurfaceReinforcementArea(a[0], a[1], a[2], a[3]),\n 1300840506: (a) => new IFC4X3.IfcSurfaceStyle(a[0], a[1], a[2]),\n 3303107099: (a) => new IFC4X3.IfcSurfaceStyleLighting(a[0], a[1], a[2], a[3]),\n 1607154358: (a) => new IFC4X3.IfcSurfaceStyleRefraction(a[0], a[1]),\n 846575682: (a) => new IFC4X3.IfcSurfaceStyleShading(a[0], a[1]),\n 1351298697: (a) => new IFC4X3.IfcSurfaceStyleWithTextures(a[0]),\n 626085974: (a) => new IFC4X3.IfcSurfaceTexture(a[0], a[1], a[2], a[3], a[4]),\n 985171141: (a) => new IFC4X3.IfcTable(a[0], a[1], a[2]),\n 2043862942: (a) => new IFC4X3.IfcTableColumn(a[0], a[1], a[2], a[3], a[4]),\n 531007025: (a) => new IFC4X3.IfcTableRow(a[0], a[1]),\n 1549132990: (a) => new IFC4X3.IfcTaskTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 2771591690: (a) => new IFC4X3.IfcTaskTimeRecurring(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19], a[20]),\n 912023232: (a) => new IFC4X3.IfcTelecomAddress(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1447204868: (a) => new IFC4X3.IfcTextStyle(a[0], a[1], a[2], a[3], a[4]),\n 2636378356: (a) => new IFC4X3.IfcTextStyleForDefinedFont(a[0], a[1]),\n 1640371178: (a) => new IFC4X3.IfcTextStyleTextModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 280115917: (a) => new IFC4X3.IfcTextureCoordinate(a[0]),\n 1742049831: (a) => new IFC4X3.IfcTextureCoordinateGenerator(a[0], a[1], a[2]),\n 222769930: (a) => new IFC4X3.IfcTextureCoordinateIndices(a[0], a[1]),\n 1010789467: (a) => new IFC4X3.IfcTextureCoordinateIndicesWithVoids(a[0], a[1], a[2]),\n 2552916305: (a) => new IFC4X3.IfcTextureMap(a[0], a[1], a[2]),\n 1210645708: (a) => new IFC4X3.IfcTextureVertex(a[0]),\n 3611470254: (a) => new IFC4X3.IfcTextureVertexList(a[0]),\n 1199560280: (a) => new IFC4X3.IfcTimePeriod(a[0], a[1]),\n 3101149627: (a) => new IFC4X3.IfcTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 581633288: (a) => new IFC4X3.IfcTimeSeriesValue(a[0]),\n 1377556343: (_) => new IFC4X3.IfcTopologicalRepresentationItem(),\n 1735638870: (a) => new IFC4X3.IfcTopologyRepresentation(a[0], a[1], a[2], a[3]),\n 180925521: (a) => new IFC4X3.IfcUnitAssignment(a[0]),\n 2799835756: (_) => new IFC4X3.IfcVertex(),\n 1907098498: (a) => new IFC4X3.IfcVertexPoint(a[0]),\n 891718957: (a) => new IFC4X3.IfcVirtualGridIntersection(a[0], a[1]),\n 1236880293: (a) => new IFC4X3.IfcWorkTime(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3752311538: (a) => new IFC4X3.IfcAlignmentCantSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 536804194: (a) => new IFC4X3.IfcAlignmentHorizontalSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3869604511: (a) => new IFC4X3.IfcApprovalRelationship(a[0], a[1], a[2], a[3]),\n 3798115385: (a) => new IFC4X3.IfcArbitraryClosedProfileDef(a[0], a[1], a[2]),\n 1310608509: (a) => new IFC4X3.IfcArbitraryOpenProfileDef(a[0], a[1], a[2]),\n 2705031697: (a) => new IFC4X3.IfcArbitraryProfileDefWithVoids(a[0], a[1], a[2], a[3]),\n 616511568: (a) => new IFC4X3.IfcBlobTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3150382593: (a) => new IFC4X3.IfcCenterLineProfileDef(a[0], a[1], a[2], a[3]),\n 747523909: (a) => new IFC4X3.IfcClassification(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 647927063: (a) => new IFC4X3.IfcClassificationReference(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3285139300: (a) => new IFC4X3.IfcColourRgbList(a[0]),\n 3264961684: (a) => new IFC4X3.IfcColourSpecification(a[0]),\n 1485152156: (a) => new IFC4X3.IfcCompositeProfileDef(a[0], a[1], a[2], a[3]),\n 370225590: (a) => new IFC4X3.IfcConnectedFaceSet(a[0]),\n 1981873012: (a) => new IFC4X3.IfcConnectionCurveGeometry(a[0], a[1]),\n 45288368: (a) => new IFC4X3.IfcConnectionPointEccentricity(a[0], a[1], a[2], a[3], a[4]),\n 3050246964: (a) => new IFC4X3.IfcContextDependentUnit(a[0], a[1], a[2]),\n 2889183280: (a) => new IFC4X3.IfcConversionBasedUnit(a[0], a[1], a[2], a[3]),\n 2713554722: (a) => new IFC4X3.IfcConversionBasedUnitWithOffset(a[0], a[1], a[2], a[3], a[4]),\n 539742890: (a) => new IFC4X3.IfcCurrencyRelationship(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3800577675: (a) => new IFC4X3.IfcCurveStyle(a[0], a[1], a[2], a[3], a[4]),\n 1105321065: (a) => new IFC4X3.IfcCurveStyleFont(a[0], a[1]),\n 2367409068: (a) => new IFC4X3.IfcCurveStyleFontAndScaling(a[0], a[1], a[2]),\n 3510044353: (a) => new IFC4X3.IfcCurveStyleFontPattern(a[0], a[1]),\n 3632507154: (a) => new IFC4X3.IfcDerivedProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 1154170062: (a) => new IFC4X3.IfcDocumentInformation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 770865208: (a) => new IFC4X3.IfcDocumentInformationRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3732053477: (a) => new IFC4X3.IfcDocumentReference(a[0], a[1], a[2], a[3], a[4]),\n 3900360178: (a) => new IFC4X3.IfcEdge(a[0], a[1]),\n 476780140: (a) => new IFC4X3.IfcEdgeCurve(a[0], a[1], a[2], a[3]),\n 211053100: (a) => new IFC4X3.IfcEventTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 297599258: (a) => new IFC4X3.IfcExtendedProperties(a[0], a[1], a[2]),\n 1437805879: (a) => new IFC4X3.IfcExternalReferenceRelationship(a[0], a[1], a[2], a[3]),\n 2556980723: (a) => new IFC4X3.IfcFace(a[0]),\n 1809719519: (a) => new IFC4X3.IfcFaceBound(a[0], a[1]),\n 803316827: (a) => new IFC4X3.IfcFaceOuterBound(a[0], a[1]),\n 3008276851: (a) => new IFC4X3.IfcFaceSurface(a[0], a[1], a[2]),\n 4219587988: (a) => new IFC4X3.IfcFailureConnectionCondition(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 738692330: (a) => new IFC4X3.IfcFillAreaStyle(a[0], a[1], a[2]),\n 3448662350: (a) => new IFC4X3.IfcGeometricRepresentationContext(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2453401579: (_) => new IFC4X3.IfcGeometricRepresentationItem(),\n 4142052618: (a) => new IFC4X3.IfcGeometricRepresentationSubContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3590301190: (a) => new IFC4X3.IfcGeometricSet(a[0]),\n 178086475: (a) => new IFC4X3.IfcGridPlacement(a[0], a[1], a[2]),\n 812098782: (a) => new IFC4X3.IfcHalfSpaceSolid(a[0], a[1]),\n 3905492369: (a) => new IFC4X3.IfcImageTexture(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3570813810: (a) => new IFC4X3.IfcIndexedColourMap(a[0], a[1], a[2], a[3]),\n 1437953363: (a) => new IFC4X3.IfcIndexedTextureMap(a[0], a[1], a[2]),\n 2133299955: (a) => new IFC4X3.IfcIndexedTriangleTextureMap(a[0], a[1], a[2], a[3]),\n 3741457305: (a) => new IFC4X3.IfcIrregularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1585845231: (a) => new IFC4X3.IfcLagTime(a[0], a[1], a[2], a[3], a[4]),\n 1402838566: (a) => new IFC4X3.IfcLightSource(a[0], a[1], a[2], a[3]),\n 125510826: (a) => new IFC4X3.IfcLightSourceAmbient(a[0], a[1], a[2], a[3]),\n 2604431987: (a) => new IFC4X3.IfcLightSourceDirectional(a[0], a[1], a[2], a[3], a[4]),\n 4266656042: (a) => new IFC4X3.IfcLightSourceGoniometric(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1520743889: (a) => new IFC4X3.IfcLightSourcePositional(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3422422726: (a) => new IFC4X3.IfcLightSourceSpot(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 388784114: (a) => new IFC4X3.IfcLinearPlacement(a[0], a[1], a[2]),\n 2624227202: (a) => new IFC4X3.IfcLocalPlacement(a[0], a[1]),\n 1008929658: (_) => new IFC4X3.IfcLoop(),\n 2347385850: (a) => new IFC4X3.IfcMappedItem(a[0], a[1]),\n 1838606355: (a) => new IFC4X3.IfcMaterial(a[0], a[1], a[2]),\n 3708119e3: (a) => new IFC4X3.IfcMaterialConstituent(a[0], a[1], a[2], a[3], a[4]),\n 2852063980: (a) => new IFC4X3.IfcMaterialConstituentSet(a[0], a[1], a[2]),\n 2022407955: (a) => new IFC4X3.IfcMaterialDefinitionRepresentation(a[0], a[1], a[2], a[3]),\n 1303795690: (a) => new IFC4X3.IfcMaterialLayerSetUsage(a[0], a[1], a[2], a[3], a[4]),\n 3079605661: (a) => new IFC4X3.IfcMaterialProfileSetUsage(a[0], a[1], a[2]),\n 3404854881: (a) => new IFC4X3.IfcMaterialProfileSetUsageTapering(a[0], a[1], a[2], a[3], a[4]),\n 3265635763: (a) => new IFC4X3.IfcMaterialProperties(a[0], a[1], a[2], a[3]),\n 853536259: (a) => new IFC4X3.IfcMaterialRelationship(a[0], a[1], a[2], a[3], a[4]),\n 2998442950: (a) => new IFC4X3.IfcMirroredProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 219451334: (a) => new IFC4X3.IfcObjectDefinition(a[0], a[1], a[2], a[3]),\n 182550632: (a) => new IFC4X3.IfcOpenCrossProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2665983363: (a) => new IFC4X3.IfcOpenShell(a[0]),\n 1411181986: (a) => new IFC4X3.IfcOrganizationRelationship(a[0], a[1], a[2], a[3]),\n 1029017970: (a) => new IFC4X3.IfcOrientedEdge(a[0], a[1], a[2]),\n 2529465313: (a) => new IFC4X3.IfcParameterizedProfileDef(a[0], a[1], a[2]),\n 2519244187: (a) => new IFC4X3.IfcPath(a[0]),\n 3021840470: (a) => new IFC4X3.IfcPhysicalComplexQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 597895409: (a) => new IFC4X3.IfcPixelTexture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2004835150: (a) => new IFC4X3.IfcPlacement(a[0]),\n 1663979128: (a) => new IFC4X3.IfcPlanarExtent(a[0], a[1]),\n 2067069095: (_) => new IFC4X3.IfcPoint(),\n 2165702409: (a) => new IFC4X3.IfcPointByDistanceExpression(a[0], a[1], a[2], a[3], a[4]),\n 4022376103: (a) => new IFC4X3.IfcPointOnCurve(a[0], a[1]),\n 1423911732: (a) => new IFC4X3.IfcPointOnSurface(a[0], a[1], a[2]),\n 2924175390: (a) => new IFC4X3.IfcPolyLoop(a[0]),\n 2775532180: (a) => new IFC4X3.IfcPolygonalBoundedHalfSpace(a[0], a[1], a[2], a[3]),\n 3727388367: (a) => new IFC4X3.IfcPreDefinedItem(a[0]),\n 3778827333: (_) => new IFC4X3.IfcPreDefinedProperties(),\n 1775413392: (a) => new IFC4X3.IfcPreDefinedTextFont(a[0]),\n 673634403: (a) => new IFC4X3.IfcProductDefinitionShape(a[0], a[1], a[2]),\n 2802850158: (a) => new IFC4X3.IfcProfileProperties(a[0], a[1], a[2], a[3]),\n 2598011224: (a) => new IFC4X3.IfcProperty(a[0], a[1]),\n 1680319473: (a) => new IFC4X3.IfcPropertyDefinition(a[0], a[1], a[2], a[3]),\n 148025276: (a) => new IFC4X3.IfcPropertyDependencyRelationship(a[0], a[1], a[2], a[3], a[4]),\n 3357820518: (a) => new IFC4X3.IfcPropertySetDefinition(a[0], a[1], a[2], a[3]),\n 1482703590: (a) => new IFC4X3.IfcPropertyTemplateDefinition(a[0], a[1], a[2], a[3]),\n 2090586900: (a) => new IFC4X3.IfcQuantitySet(a[0], a[1], a[2], a[3]),\n 3615266464: (a) => new IFC4X3.IfcRectangleProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3413951693: (a) => new IFC4X3.IfcRegularTimeSeries(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1580146022: (a) => new IFC4X3.IfcReinforcementBarProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 478536968: (a) => new IFC4X3.IfcRelationship(a[0], a[1], a[2], a[3]),\n 2943643501: (a) => new IFC4X3.IfcResourceApprovalRelationship(a[0], a[1], a[2], a[3]),\n 1608871552: (a) => new IFC4X3.IfcResourceConstraintRelationship(a[0], a[1], a[2], a[3]),\n 1042787934: (a) => new IFC4X3.IfcResourceTime(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2778083089: (a) => new IFC4X3.IfcRoundedRectangleProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2042790032: (a) => new IFC4X3.IfcSectionProperties(a[0], a[1], a[2]),\n 4165799628: (a) => new IFC4X3.IfcSectionReinforcementProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1509187699: (a) => new IFC4X3.IfcSectionedSpine(a[0], a[1], a[2]),\n 823603102: (a) => new IFC4X3.IfcSegment(a[0]),\n 4124623270: (a) => new IFC4X3.IfcShellBasedSurfaceModel(a[0]),\n 3692461612: (a) => new IFC4X3.IfcSimpleProperty(a[0], a[1]),\n 2609359061: (a) => new IFC4X3.IfcSlippageConnectionCondition(a[0], a[1], a[2], a[3]),\n 723233188: (_) => new IFC4X3.IfcSolidModel(),\n 1595516126: (a) => new IFC4X3.IfcStructuralLoadLinearForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2668620305: (a) => new IFC4X3.IfcStructuralLoadPlanarForce(a[0], a[1], a[2], a[3]),\n 2473145415: (a) => new IFC4X3.IfcStructuralLoadSingleDisplacement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1973038258: (a) => new IFC4X3.IfcStructuralLoadSingleDisplacementDistortion(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1597423693: (a) => new IFC4X3.IfcStructuralLoadSingleForce(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1190533807: (a) => new IFC4X3.IfcStructuralLoadSingleForceWarping(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2233826070: (a) => new IFC4X3.IfcSubedge(a[0], a[1], a[2]),\n 2513912981: (_) => new IFC4X3.IfcSurface(),\n 1878645084: (a) => new IFC4X3.IfcSurfaceStyleRendering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2247615214: (a) => new IFC4X3.IfcSweptAreaSolid(a[0], a[1]),\n 1260650574: (a) => new IFC4X3.IfcSweptDiskSolid(a[0], a[1], a[2], a[3], a[4]),\n 1096409881: (a) => new IFC4X3.IfcSweptDiskSolidPolygonal(a[0], a[1], a[2], a[3], a[4], a[5]),\n 230924584: (a) => new IFC4X3.IfcSweptSurface(a[0], a[1]),\n 3071757647: (a) => new IFC4X3.IfcTShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 901063453: (_) => new IFC4X3.IfcTessellatedItem(),\n 4282788508: (a) => new IFC4X3.IfcTextLiteral(a[0], a[1], a[2]),\n 3124975700: (a) => new IFC4X3.IfcTextLiteralWithExtent(a[0], a[1], a[2], a[3], a[4]),\n 1983826977: (a) => new IFC4X3.IfcTextStyleFontModel(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2715220739: (a) => new IFC4X3.IfcTrapeziumProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1628702193: (a) => new IFC4X3.IfcTypeObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3736923433: (a) => new IFC4X3.IfcTypeProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2347495698: (a) => new IFC4X3.IfcTypeProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3698973494: (a) => new IFC4X3.IfcTypeResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 427810014: (a) => new IFC4X3.IfcUShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1417489154: (a) => new IFC4X3.IfcVector(a[0], a[1]),\n 2759199220: (a) => new IFC4X3.IfcVertexLoop(a[0]),\n 2543172580: (a) => new IFC4X3.IfcZShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3406155212: (a) => new IFC4X3.IfcAdvancedFace(a[0], a[1], a[2]),\n 669184980: (a) => new IFC4X3.IfcAnnotationFillArea(a[0], a[1]),\n 3207858831: (a) => new IFC4X3.IfcAsymmetricIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14]),\n 4261334040: (a) => new IFC4X3.IfcAxis1Placement(a[0], a[1]),\n 3125803723: (a) => new IFC4X3.IfcAxis2Placement2D(a[0], a[1]),\n 2740243338: (a) => new IFC4X3.IfcAxis2Placement3D(a[0], a[1], a[2]),\n 3425423356: (a) => new IFC4X3.IfcAxis2PlacementLinear(a[0], a[1], a[2]),\n 2736907675: (a) => new IFC4X3.IfcBooleanResult(a[0], a[1], a[2]),\n 4182860854: (_) => new IFC4X3.IfcBoundedSurface(),\n 2581212453: (a) => new IFC4X3.IfcBoundingBox(a[0], a[1], a[2], a[3]),\n 2713105998: (a) => new IFC4X3.IfcBoxedHalfSpace(a[0], a[1], a[2]),\n 2898889636: (a) => new IFC4X3.IfcCShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1123145078: (a) => new IFC4X3.IfcCartesianPoint(a[0]),\n 574549367: (_) => new IFC4X3.IfcCartesianPointList(),\n 1675464909: (a) => new IFC4X3.IfcCartesianPointList2D(a[0], a[1]),\n 2059837836: (a) => new IFC4X3.IfcCartesianPointList3D(a[0], a[1]),\n 59481748: (a) => new IFC4X3.IfcCartesianTransformationOperator(a[0], a[1], a[2], a[3]),\n 3749851601: (a) => new IFC4X3.IfcCartesianTransformationOperator2D(a[0], a[1], a[2], a[3]),\n 3486308946: (a) => new IFC4X3.IfcCartesianTransformationOperator2DnonUniform(a[0], a[1], a[2], a[3], a[4]),\n 3331915920: (a) => new IFC4X3.IfcCartesianTransformationOperator3D(a[0], a[1], a[2], a[3], a[4]),\n 1416205885: (a) => new IFC4X3.IfcCartesianTransformationOperator3DnonUniform(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1383045692: (a) => new IFC4X3.IfcCircleProfileDef(a[0], a[1], a[2], a[3]),\n 2205249479: (a) => new IFC4X3.IfcClosedShell(a[0]),\n 776857604: (a) => new IFC4X3.IfcColourRgb(a[0], a[1], a[2], a[3]),\n 2542286263: (a) => new IFC4X3.IfcComplexProperty(a[0], a[1], a[2], a[3]),\n 2485617015: (a) => new IFC4X3.IfcCompositeCurveSegment(a[0], a[1], a[2]),\n 2574617495: (a) => new IFC4X3.IfcConstructionResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3419103109: (a) => new IFC4X3.IfcContext(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1815067380: (a) => new IFC4X3.IfcCrewResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2506170314: (a) => new IFC4X3.IfcCsgPrimitive3D(a[0]),\n 2147822146: (a) => new IFC4X3.IfcCsgSolid(a[0]),\n 2601014836: (_) => new IFC4X3.IfcCurve(),\n 2827736869: (a) => new IFC4X3.IfcCurveBoundedPlane(a[0], a[1], a[2]),\n 2629017746: (a) => new IFC4X3.IfcCurveBoundedSurface(a[0], a[1], a[2]),\n 4212018352: (a) => new IFC4X3.IfcCurveSegment(a[0], a[1], a[2], a[3], a[4]),\n 32440307: (a) => new IFC4X3.IfcDirection(a[0]),\n 593015953: (a) => new IFC4X3.IfcDirectrixCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4]),\n 1472233963: (a) => new IFC4X3.IfcEdgeLoop(a[0]),\n 1883228015: (a) => new IFC4X3.IfcElementQuantity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 339256511: (a) => new IFC4X3.IfcElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2777663545: (a) => new IFC4X3.IfcElementarySurface(a[0]),\n 2835456948: (a) => new IFC4X3.IfcEllipseProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 4024345920: (a) => new IFC4X3.IfcEventType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 477187591: (a) => new IFC4X3.IfcExtrudedAreaSolid(a[0], a[1], a[2], a[3]),\n 2804161546: (a) => new IFC4X3.IfcExtrudedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 2047409740: (a) => new IFC4X3.IfcFaceBasedSurfaceModel(a[0]),\n 374418227: (a) => new IFC4X3.IfcFillAreaStyleHatching(a[0], a[1], a[2], a[3], a[4]),\n 315944413: (a) => new IFC4X3.IfcFillAreaStyleTiles(a[0], a[1], a[2]),\n 2652556860: (a) => new IFC4X3.IfcFixedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4238390223: (a) => new IFC4X3.IfcFurnishingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1268542332: (a) => new IFC4X3.IfcFurnitureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4095422895: (a) => new IFC4X3.IfcGeographicElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 987898635: (a) => new IFC4X3.IfcGeometricCurveSet(a[0]),\n 1484403080: (a) => new IFC4X3.IfcIShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 178912537: (a) => new IFC4X3.IfcIndexedPolygonalFace(a[0]),\n 2294589976: (a) => new IFC4X3.IfcIndexedPolygonalFaceWithVoids(a[0], a[1]),\n 3465909080: (a) => new IFC4X3.IfcIndexedPolygonalTextureMap(a[0], a[1], a[2], a[3]),\n 572779678: (a) => new IFC4X3.IfcLShapeProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 428585644: (a) => new IFC4X3.IfcLaborResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1281925730: (a) => new IFC4X3.IfcLine(a[0], a[1]),\n 1425443689: (a) => new IFC4X3.IfcManifoldSolidBrep(a[0]),\n 3888040117: (a) => new IFC4X3.IfcObject(a[0], a[1], a[2], a[3], a[4]),\n 590820931: (a) => new IFC4X3.IfcOffsetCurve(a[0]),\n 3388369263: (a) => new IFC4X3.IfcOffsetCurve2D(a[0], a[1], a[2]),\n 3505215534: (a) => new IFC4X3.IfcOffsetCurve3D(a[0], a[1], a[2], a[3]),\n 2485787929: (a) => new IFC4X3.IfcOffsetCurveByDistances(a[0], a[1], a[2]),\n 1682466193: (a) => new IFC4X3.IfcPcurve(a[0], a[1]),\n 603570806: (a) => new IFC4X3.IfcPlanarBox(a[0], a[1], a[2]),\n 220341763: (a) => new IFC4X3.IfcPlane(a[0]),\n 3381221214: (a) => new IFC4X3.IfcPolynomialCurve(a[0], a[1], a[2], a[3]),\n 759155922: (a) => new IFC4X3.IfcPreDefinedColour(a[0]),\n 2559016684: (a) => new IFC4X3.IfcPreDefinedCurveFont(a[0]),\n 3967405729: (a) => new IFC4X3.IfcPreDefinedPropertySet(a[0], a[1], a[2], a[3]),\n 569719735: (a) => new IFC4X3.IfcProcedureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2945172077: (a) => new IFC4X3.IfcProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 4208778838: (a) => new IFC4X3.IfcProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 103090709: (a) => new IFC4X3.IfcProject(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 653396225: (a) => new IFC4X3.IfcProjectLibrary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 871118103: (a) => new IFC4X3.IfcPropertyBoundedValue(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4166981789: (a) => new IFC4X3.IfcPropertyEnumeratedValue(a[0], a[1], a[2], a[3]),\n 2752243245: (a) => new IFC4X3.IfcPropertyListValue(a[0], a[1], a[2], a[3]),\n 941946838: (a) => new IFC4X3.IfcPropertyReferenceValue(a[0], a[1], a[2], a[3]),\n 1451395588: (a) => new IFC4X3.IfcPropertySet(a[0], a[1], a[2], a[3], a[4]),\n 492091185: (a) => new IFC4X3.IfcPropertySetTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3650150729: (a) => new IFC4X3.IfcPropertySingleValue(a[0], a[1], a[2], a[3]),\n 110355661: (a) => new IFC4X3.IfcPropertyTableValue(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3521284610: (a) => new IFC4X3.IfcPropertyTemplate(a[0], a[1], a[2], a[3]),\n 2770003689: (a) => new IFC4X3.IfcRectangleHollowProfileDef(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2798486643: (a) => new IFC4X3.IfcRectangularPyramid(a[0], a[1], a[2], a[3]),\n 3454111270: (a) => new IFC4X3.IfcRectangularTrimmedSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3765753017: (a) => new IFC4X3.IfcReinforcementDefinitionProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3939117080: (a) => new IFC4X3.IfcRelAssigns(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1683148259: (a) => new IFC4X3.IfcRelAssignsToActor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2495723537: (a) => new IFC4X3.IfcRelAssignsToControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1307041759: (a) => new IFC4X3.IfcRelAssignsToGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1027710054: (a) => new IFC4X3.IfcRelAssignsToGroupByFactor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278684876: (a) => new IFC4X3.IfcRelAssignsToProcess(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2857406711: (a) => new IFC4X3.IfcRelAssignsToProduct(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 205026976: (a) => new IFC4X3.IfcRelAssignsToResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1865459582: (a) => new IFC4X3.IfcRelAssociates(a[0], a[1], a[2], a[3], a[4]),\n 4095574036: (a) => new IFC4X3.IfcRelAssociatesApproval(a[0], a[1], a[2], a[3], a[4], a[5]),\n 919958153: (a) => new IFC4X3.IfcRelAssociatesClassification(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2728634034: (a) => new IFC4X3.IfcRelAssociatesConstraint(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 982818633: (a) => new IFC4X3.IfcRelAssociatesDocument(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3840914261: (a) => new IFC4X3.IfcRelAssociatesLibrary(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2655215786: (a) => new IFC4X3.IfcRelAssociatesMaterial(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1033248425: (a) => new IFC4X3.IfcRelAssociatesProfileDef(a[0], a[1], a[2], a[3], a[4], a[5]),\n 826625072: (a) => new IFC4X3.IfcRelConnects(a[0], a[1], a[2], a[3]),\n 1204542856: (a) => new IFC4X3.IfcRelConnectsElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3945020480: (a) => new IFC4X3.IfcRelConnectsPathElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4201705270: (a) => new IFC4X3.IfcRelConnectsPortToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3190031847: (a) => new IFC4X3.IfcRelConnectsPorts(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2127690289: (a) => new IFC4X3.IfcRelConnectsStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1638771189: (a) => new IFC4X3.IfcRelConnectsStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 504942748: (a) => new IFC4X3.IfcRelConnectsWithEccentricity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3678494232: (a) => new IFC4X3.IfcRelConnectsWithRealizingElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3242617779: (a) => new IFC4X3.IfcRelContainedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 886880790: (a) => new IFC4X3.IfcRelCoversBldgElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2802773753: (a) => new IFC4X3.IfcRelCoversSpaces(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2565941209: (a) => new IFC4X3.IfcRelDeclares(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2551354335: (a) => new IFC4X3.IfcRelDecomposes(a[0], a[1], a[2], a[3]),\n 693640335: (a) => new IFC4X3.IfcRelDefines(a[0], a[1], a[2], a[3]),\n 1462361463: (a) => new IFC4X3.IfcRelDefinesByObject(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4186316022: (a) => new IFC4X3.IfcRelDefinesByProperties(a[0], a[1], a[2], a[3], a[4], a[5]),\n 307848117: (a) => new IFC4X3.IfcRelDefinesByTemplate(a[0], a[1], a[2], a[3], a[4], a[5]),\n 781010003: (a) => new IFC4X3.IfcRelDefinesByType(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3940055652: (a) => new IFC4X3.IfcRelFillsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 279856033: (a) => new IFC4X3.IfcRelFlowControlElements(a[0], a[1], a[2], a[3], a[4], a[5]),\n 427948657: (a) => new IFC4X3.IfcRelInterferesElements(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3268803585: (a) => new IFC4X3.IfcRelNests(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1441486842: (a) => new IFC4X3.IfcRelPositions(a[0], a[1], a[2], a[3], a[4], a[5]),\n 750771296: (a) => new IFC4X3.IfcRelProjectsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1245217292: (a) => new IFC4X3.IfcRelReferencedInSpatialStructure(a[0], a[1], a[2], a[3], a[4], a[5]),\n 4122056220: (a) => new IFC4X3.IfcRelSequence(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 366585022: (a) => new IFC4X3.IfcRelServicesBuildings(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3451746338: (a) => new IFC4X3.IfcRelSpaceBoundary(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3523091289: (a) => new IFC4X3.IfcRelSpaceBoundary1stLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1521410863: (a) => new IFC4X3.IfcRelSpaceBoundary2ndLevel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1401173127: (a) => new IFC4X3.IfcRelVoidsElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 816062949: (a) => new IFC4X3.IfcReparametrisedCompositeCurveSegment(a[0], a[1], a[2], a[3]),\n 2914609552: (a) => new IFC4X3.IfcResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1856042241: (a) => new IFC4X3.IfcRevolvedAreaSolid(a[0], a[1], a[2], a[3]),\n 3243963512: (a) => new IFC4X3.IfcRevolvedAreaSolidTapered(a[0], a[1], a[2], a[3], a[4]),\n 4158566097: (a) => new IFC4X3.IfcRightCircularCone(a[0], a[1], a[2]),\n 3626867408: (a) => new IFC4X3.IfcRightCircularCylinder(a[0], a[1], a[2]),\n 1862484736: (a) => new IFC4X3.IfcSectionedSolid(a[0], a[1]),\n 1290935644: (a) => new IFC4X3.IfcSectionedSolidHorizontal(a[0], a[1], a[2]),\n 1356537516: (a) => new IFC4X3.IfcSectionedSurface(a[0], a[1], a[2]),\n 3663146110: (a) => new IFC4X3.IfcSimplePropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1412071761: (a) => new IFC4X3.IfcSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 710998568: (a) => new IFC4X3.IfcSpatialElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2706606064: (a) => new IFC4X3.IfcSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3893378262: (a) => new IFC4X3.IfcSpatialStructureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 463610769: (a) => new IFC4X3.IfcSpatialZone(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2481509218: (a) => new IFC4X3.IfcSpatialZoneType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 451544542: (a) => new IFC4X3.IfcSphere(a[0], a[1]),\n 4015995234: (a) => new IFC4X3.IfcSphericalSurface(a[0], a[1]),\n 2735484536: (a) => new IFC4X3.IfcSpiral(a[0]),\n 3544373492: (a) => new IFC4X3.IfcStructuralActivity(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3136571912: (a) => new IFC4X3.IfcStructuralItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 530289379: (a) => new IFC4X3.IfcStructuralMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3689010777: (a) => new IFC4X3.IfcStructuralReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3979015343: (a) => new IFC4X3.IfcStructuralSurfaceMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2218152070: (a) => new IFC4X3.IfcStructuralSurfaceMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 603775116: (a) => new IFC4X3.IfcStructuralSurfaceReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4095615324: (a) => new IFC4X3.IfcSubContractResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 699246055: (a) => new IFC4X3.IfcSurfaceCurve(a[0], a[1], a[2]),\n 2028607225: (a) => new IFC4X3.IfcSurfaceCurveSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2809605785: (a) => new IFC4X3.IfcSurfaceOfLinearExtrusion(a[0], a[1], a[2], a[3]),\n 4124788165: (a) => new IFC4X3.IfcSurfaceOfRevolution(a[0], a[1], a[2]),\n 1580310250: (a) => new IFC4X3.IfcSystemFurnitureElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3473067441: (a) => new IFC4X3.IfcTask(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 3206491090: (a) => new IFC4X3.IfcTaskType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2387106220: (a) => new IFC4X3.IfcTessellatedFaceSet(a[0], a[1]),\n 782932809: (a) => new IFC4X3.IfcThirdOrderPolynomialSpiral(a[0], a[1], a[2], a[3], a[4]),\n 1935646853: (a) => new IFC4X3.IfcToroidalSurface(a[0], a[1], a[2]),\n 3665877780: (a) => new IFC4X3.IfcTransportationDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2916149573: (a) => new IFC4X3.IfcTriangulatedFaceSet(a[0], a[1], a[2], a[3], a[4]),\n 1229763772: (a) => new IFC4X3.IfcTriangulatedIrregularNetwork(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3651464721: (a) => new IFC4X3.IfcVehicleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 336235671: (a) => new IFC4X3.IfcWindowLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 512836454: (a) => new IFC4X3.IfcWindowPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2296667514: (a) => new IFC4X3.IfcActor(a[0], a[1], a[2], a[3], a[4], a[5]),\n 1635779807: (a) => new IFC4X3.IfcAdvancedBrep(a[0]),\n 2603310189: (a) => new IFC4X3.IfcAdvancedBrepWithVoids(a[0], a[1]),\n 1674181508: (a) => new IFC4X3.IfcAnnotation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2887950389: (a) => new IFC4X3.IfcBSplineSurface(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 167062518: (a) => new IFC4X3.IfcBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1334484129: (a) => new IFC4X3.IfcBlock(a[0], a[1], a[2], a[3]),\n 3649129432: (a) => new IFC4X3.IfcBooleanClippingResult(a[0], a[1], a[2]),\n 1260505505: (_) => new IFC4X3.IfcBoundedCurve(),\n 3124254112: (a) => new IFC4X3.IfcBuildingStorey(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1626504194: (a) => new IFC4X3.IfcBuiltElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2197970202: (a) => new IFC4X3.IfcChimneyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2937912522: (a) => new IFC4X3.IfcCircleHollowProfileDef(a[0], a[1], a[2], a[3], a[4]),\n 3893394355: (a) => new IFC4X3.IfcCivilElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3497074424: (a) => new IFC4X3.IfcClothoid(a[0], a[1]),\n 300633059: (a) => new IFC4X3.IfcColumnType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3875453745: (a) => new IFC4X3.IfcComplexPropertyTemplate(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3732776249: (a) => new IFC4X3.IfcCompositeCurve(a[0], a[1]),\n 15328376: (a) => new IFC4X3.IfcCompositeCurveOnSurface(a[0], a[1]),\n 2510884976: (a) => new IFC4X3.IfcConic(a[0]),\n 2185764099: (a) => new IFC4X3.IfcConstructionEquipmentResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4105962743: (a) => new IFC4X3.IfcConstructionMaterialResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1525564444: (a) => new IFC4X3.IfcConstructionProductResourceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2559216714: (a) => new IFC4X3.IfcConstructionResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293443760: (a) => new IFC4X3.IfcControl(a[0], a[1], a[2], a[3], a[4], a[5]),\n 2000195564: (a) => new IFC4X3.IfcCosineSpiral(a[0], a[1], a[2]),\n 3895139033: (a) => new IFC4X3.IfcCostItem(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1419761937: (a) => new IFC4X3.IfcCostSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4189326743: (a) => new IFC4X3.IfcCourseType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1916426348: (a) => new IFC4X3.IfcCoveringType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3295246426: (a) => new IFC4X3.IfcCrewResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1457835157: (a) => new IFC4X3.IfcCurtainWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1213902940: (a) => new IFC4X3.IfcCylindricalSurface(a[0], a[1]),\n 1306400036: (a) => new IFC4X3.IfcDeepFoundationType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4234616927: (a) => new IFC4X3.IfcDirectrixDerivedReferenceSweptAreaSolid(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3256556792: (a) => new IFC4X3.IfcDistributionElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3849074793: (a) => new IFC4X3.IfcDistributionFlowElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2963535650: (a) => new IFC4X3.IfcDoorLiningProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 1714330368: (a) => new IFC4X3.IfcDoorPanelProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2323601079: (a) => new IFC4X3.IfcDoorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 445594917: (a) => new IFC4X3.IfcDraughtingPreDefinedColour(a[0]),\n 4006246654: (a) => new IFC4X3.IfcDraughtingPreDefinedCurveFont(a[0]),\n 1758889154: (a) => new IFC4X3.IfcElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4123344466: (a) => new IFC4X3.IfcElementAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2397081782: (a) => new IFC4X3.IfcElementAssemblyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1623761950: (a) => new IFC4X3.IfcElementComponent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2590856083: (a) => new IFC4X3.IfcElementComponentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1704287377: (a) => new IFC4X3.IfcEllipse(a[0], a[1], a[2]),\n 2107101300: (a) => new IFC4X3.IfcEnergyConversionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 132023988: (a) => new IFC4X3.IfcEngineType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3174744832: (a) => new IFC4X3.IfcEvaporativeCoolerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3390157468: (a) => new IFC4X3.IfcEvaporatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4148101412: (a) => new IFC4X3.IfcEvent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2853485674: (a) => new IFC4X3.IfcExternalSpatialStructureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 807026263: (a) => new IFC4X3.IfcFacetedBrep(a[0]),\n 3737207727: (a) => new IFC4X3.IfcFacetedBrepWithVoids(a[0], a[1]),\n 24185140: (a) => new IFC4X3.IfcFacility(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1310830890: (a) => new IFC4X3.IfcFacilityPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4228831410: (a) => new IFC4X3.IfcFacilityPartCommon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 647756555: (a) => new IFC4X3.IfcFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2489546625: (a) => new IFC4X3.IfcFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2827207264: (a) => new IFC4X3.IfcFeatureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2143335405: (a) => new IFC4X3.IfcFeatureElementAddition(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1287392070: (a) => new IFC4X3.IfcFeatureElementSubtraction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3907093117: (a) => new IFC4X3.IfcFlowControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3198132628: (a) => new IFC4X3.IfcFlowFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3815607619: (a) => new IFC4X3.IfcFlowMeterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1482959167: (a) => new IFC4X3.IfcFlowMovingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1834744321: (a) => new IFC4X3.IfcFlowSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1339347760: (a) => new IFC4X3.IfcFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2297155007: (a) => new IFC4X3.IfcFlowTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3009222698: (a) => new IFC4X3.IfcFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1893162501: (a) => new IFC4X3.IfcFootingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 263784265: (a) => new IFC4X3.IfcFurnishingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1509553395: (a) => new IFC4X3.IfcFurniture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3493046030: (a) => new IFC4X3.IfcGeographicElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4230923436: (a) => new IFC4X3.IfcGeotechnicalElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1594536857: (a) => new IFC4X3.IfcGeotechnicalStratum(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2898700619: (a) => new IFC4X3.IfcGradientCurve(a[0], a[1], a[2], a[3]),\n 2706460486: (a) => new IFC4X3.IfcGroup(a[0], a[1], a[2], a[3], a[4]),\n 1251058090: (a) => new IFC4X3.IfcHeatExchangerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1806887404: (a) => new IFC4X3.IfcHumidifierType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2568555532: (a) => new IFC4X3.IfcImpactProtectionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3948183225: (a) => new IFC4X3.IfcImpactProtectionDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2571569899: (a) => new IFC4X3.IfcIndexedPolyCurve(a[0], a[1], a[2]),\n 3946677679: (a) => new IFC4X3.IfcInterceptorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3113134337: (a) => new IFC4X3.IfcIntersectionCurve(a[0], a[1], a[2]),\n 2391368822: (a) => new IFC4X3.IfcInventory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4288270099: (a) => new IFC4X3.IfcJunctionBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 679976338: (a) => new IFC4X3.IfcKerbType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3827777499: (a) => new IFC4X3.IfcLaborResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1051575348: (a) => new IFC4X3.IfcLampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1161773419: (a) => new IFC4X3.IfcLightFixtureType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2176059722: (a) => new IFC4X3.IfcLinearElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1770583370: (a) => new IFC4X3.IfcLiquidTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 525669439: (a) => new IFC4X3.IfcMarineFacility(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 976884017: (a) => new IFC4X3.IfcMarinePart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 377706215: (a) => new IFC4X3.IfcMechanicalFastener(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2108223431: (a) => new IFC4X3.IfcMechanicalFastenerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1114901282: (a) => new IFC4X3.IfcMedicalDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3181161470: (a) => new IFC4X3.IfcMemberType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1950438474: (a) => new IFC4X3.IfcMobileTelecommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 710110818: (a) => new IFC4X3.IfcMooringDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 977012517: (a) => new IFC4X3.IfcMotorConnectionType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 506776471: (a) => new IFC4X3.IfcNavigationElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4143007308: (a) => new IFC4X3.IfcOccupant(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3588315303: (a) => new IFC4X3.IfcOpeningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2837617999: (a) => new IFC4X3.IfcOutletType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 514975943: (a) => new IFC4X3.IfcPavementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2382730787: (a) => new IFC4X3.IfcPerformanceHistory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3566463478: (a) => new IFC4X3.IfcPermeableCoveringProperties(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3327091369: (a) => new IFC4X3.IfcPermit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1158309216: (a) => new IFC4X3.IfcPileType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 804291784: (a) => new IFC4X3.IfcPipeFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4231323485: (a) => new IFC4X3.IfcPipeSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4017108033: (a) => new IFC4X3.IfcPlateType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2839578677: (a) => new IFC4X3.IfcPolygonalFaceSet(a[0], a[1], a[2], a[3]),\n 3724593414: (a) => new IFC4X3.IfcPolyline(a[0]),\n 3740093272: (a) => new IFC4X3.IfcPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1946335990: (a) => new IFC4X3.IfcPositioningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2744685151: (a) => new IFC4X3.IfcProcedure(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2904328755: (a) => new IFC4X3.IfcProjectOrder(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3651124850: (a) => new IFC4X3.IfcProjectionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1842657554: (a) => new IFC4X3.IfcProtectiveDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2250791053: (a) => new IFC4X3.IfcPumpType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1763565496: (a) => new IFC4X3.IfcRailType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2893384427: (a) => new IFC4X3.IfcRailingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3992365140: (a) => new IFC4X3.IfcRailway(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1891881377: (a) => new IFC4X3.IfcRailwayPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2324767716: (a) => new IFC4X3.IfcRampFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1469900589: (a) => new IFC4X3.IfcRampType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 683857671: (a) => new IFC4X3.IfcRationalBSplineSurfaceWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4021432810: (a) => new IFC4X3.IfcReferent(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3027567501: (a) => new IFC4X3.IfcReinforcingElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 964333572: (a) => new IFC4X3.IfcReinforcingElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2320036040: (a) => new IFC4X3.IfcReinforcingMesh(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17]),\n 2310774935: (a) => new IFC4X3.IfcReinforcingMeshType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16], a[17], a[18], a[19]),\n 3818125796: (a) => new IFC4X3.IfcRelAdheresToElement(a[0], a[1], a[2], a[3], a[4], a[5]),\n 160246688: (a) => new IFC4X3.IfcRelAggregates(a[0], a[1], a[2], a[3], a[4], a[5]),\n 146592293: (a) => new IFC4X3.IfcRoad(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 550521510: (a) => new IFC4X3.IfcRoadPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2781568857: (a) => new IFC4X3.IfcRoofType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1768891740: (a) => new IFC4X3.IfcSanitaryTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2157484638: (a) => new IFC4X3.IfcSeamCurve(a[0], a[1], a[2]),\n 3649235739: (a) => new IFC4X3.IfcSecondOrderPolynomialSpiral(a[0], a[1], a[2], a[3]),\n 544395925: (a) => new IFC4X3.IfcSegmentedReferenceCurve(a[0], a[1], a[2], a[3]),\n 1027922057: (a) => new IFC4X3.IfcSeventhOrderPolynomialSpiral(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074543187: (a) => new IFC4X3.IfcShadingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 33720170: (a) => new IFC4X3.IfcSign(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3599934289: (a) => new IFC4X3.IfcSignType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1894708472: (a) => new IFC4X3.IfcSignalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 42703149: (a) => new IFC4X3.IfcSineSpiral(a[0], a[1], a[2], a[3]),\n 4097777520: (a) => new IFC4X3.IfcSite(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2533589738: (a) => new IFC4X3.IfcSlabType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1072016465: (a) => new IFC4X3.IfcSolarDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3856911033: (a) => new IFC4X3.IfcSpace(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1305183839: (a) => new IFC4X3.IfcSpaceHeaterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3812236995: (a) => new IFC4X3.IfcSpaceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3112655638: (a) => new IFC4X3.IfcStackTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1039846685: (a) => new IFC4X3.IfcStairFlightType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 338393293: (a) => new IFC4X3.IfcStairType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 682877961: (a) => new IFC4X3.IfcStructuralAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1179482911: (a) => new IFC4X3.IfcStructuralConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1004757350: (a) => new IFC4X3.IfcStructuralCurveAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 4243806635: (a) => new IFC4X3.IfcStructuralCurveConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 214636428: (a) => new IFC4X3.IfcStructuralCurveMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2445595289: (a) => new IFC4X3.IfcStructuralCurveMemberVarying(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2757150158: (a) => new IFC4X3.IfcStructuralCurveReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1807405624: (a) => new IFC4X3.IfcStructuralLinearAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1252848954: (a) => new IFC4X3.IfcStructuralLoadGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2082059205: (a) => new IFC4X3.IfcStructuralPointAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 734778138: (a) => new IFC4X3.IfcStructuralPointConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1235345126: (a) => new IFC4X3.IfcStructuralPointReaction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2986769608: (a) => new IFC4X3.IfcStructuralResultGroup(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3657597509: (a) => new IFC4X3.IfcStructuralSurfaceAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1975003073: (a) => new IFC4X3.IfcStructuralSurfaceConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 148013059: (a) => new IFC4X3.IfcSubContractResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3101698114: (a) => new IFC4X3.IfcSurfaceFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2315554128: (a) => new IFC4X3.IfcSwitchingDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2254336722: (a) => new IFC4X3.IfcSystem(a[0], a[1], a[2], a[3], a[4]),\n 413509423: (a) => new IFC4X3.IfcSystemFurnitureElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 5716631: (a) => new IFC4X3.IfcTankType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3824725483: (a) => new IFC4X3.IfcTendon(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15], a[16]),\n 2347447852: (a) => new IFC4X3.IfcTendonAnchor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3081323446: (a) => new IFC4X3.IfcTendonAnchorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3663046924: (a) => new IFC4X3.IfcTendonConduit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2281632017: (a) => new IFC4X3.IfcTendonConduitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2415094496: (a) => new IFC4X3.IfcTendonType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 618700268: (a) => new IFC4X3.IfcTrackElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1692211062: (a) => new IFC4X3.IfcTransformerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2097647324: (a) => new IFC4X3.IfcTransportElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1953115116: (a) => new IFC4X3.IfcTransportationDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3593883385: (a) => new IFC4X3.IfcTrimmedCurve(a[0], a[1], a[2], a[3], a[4]),\n 1600972822: (a) => new IFC4X3.IfcTubeBundleType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1911125066: (a) => new IFC4X3.IfcUnitaryEquipmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 728799441: (a) => new IFC4X3.IfcValveType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 840318589: (a) => new IFC4X3.IfcVehicle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1530820697: (a) => new IFC4X3.IfcVibrationDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3956297820: (a) => new IFC4X3.IfcVibrationDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2391383451: (a) => new IFC4X3.IfcVibrationIsolator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3313531582: (a) => new IFC4X3.IfcVibrationIsolatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2769231204: (a) => new IFC4X3.IfcVirtualElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 926996030: (a) => new IFC4X3.IfcVoidingFeature(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1898987631: (a) => new IFC4X3.IfcWallType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1133259667: (a) => new IFC4X3.IfcWasteTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4009809668: (a) => new IFC4X3.IfcWindowType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4088093105: (a) => new IFC4X3.IfcWorkCalendar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1028945134: (a) => new IFC4X3.IfcWorkControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 4218914973: (a) => new IFC4X3.IfcWorkPlan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 3342526732: (a) => new IFC4X3.IfcWorkSchedule(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1033361043: (a) => new IFC4X3.IfcZone(a[0], a[1], a[2], a[3], a[4], a[5]),\n 3821786052: (a) => new IFC4X3.IfcActionRequest(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1411407467: (a) => new IFC4X3.IfcAirTerminalBoxType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3352864051: (a) => new IFC4X3.IfcAirTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1871374353: (a) => new IFC4X3.IfcAirToAirHeatRecoveryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4266260250: (a) => new IFC4X3.IfcAlignmentCant(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1545765605: (a) => new IFC4X3.IfcAlignmentHorizontal(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 317615605: (a) => new IFC4X3.IfcAlignmentSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1662888072: (a) => new IFC4X3.IfcAlignmentVertical(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 3460190687: (a) => new IFC4X3.IfcAsset(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 1532957894: (a) => new IFC4X3.IfcAudioVisualApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1967976161: (a) => new IFC4X3.IfcBSplineCurve(a[0], a[1], a[2], a[3], a[4]),\n 2461110595: (a) => new IFC4X3.IfcBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 819618141: (a) => new IFC4X3.IfcBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3649138523: (a) => new IFC4X3.IfcBearingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 231477066: (a) => new IFC4X3.IfcBoilerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1136057603: (a) => new IFC4X3.IfcBoundaryCurve(a[0], a[1]),\n 644574406: (a) => new IFC4X3.IfcBridge(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 963979645: (a) => new IFC4X3.IfcBridgePart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 4031249490: (a) => new IFC4X3.IfcBuilding(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 2979338954: (a) => new IFC4X3.IfcBuildingElementPart(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 39481116: (a) => new IFC4X3.IfcBuildingElementPartType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1909888760: (a) => new IFC4X3.IfcBuildingElementProxyType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1177604601: (a) => new IFC4X3.IfcBuildingSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1876633798: (a) => new IFC4X3.IfcBuiltElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3862327254: (a) => new IFC4X3.IfcBuiltSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 2188180465: (a) => new IFC4X3.IfcBurnerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 395041908: (a) => new IFC4X3.IfcCableCarrierFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3293546465: (a) => new IFC4X3.IfcCableCarrierSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2674252688: (a) => new IFC4X3.IfcCableFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1285652485: (a) => new IFC4X3.IfcCableSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3203706013: (a) => new IFC4X3.IfcCaissonFoundationType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2951183804: (a) => new IFC4X3.IfcChillerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3296154744: (a) => new IFC4X3.IfcChimney(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2611217952: (a) => new IFC4X3.IfcCircle(a[0], a[1]),\n 1677625105: (a) => new IFC4X3.IfcCivilElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2301859152: (a) => new IFC4X3.IfcCoilType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 843113511: (a) => new IFC4X3.IfcColumn(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 400855858: (a) => new IFC4X3.IfcCommunicationsApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3850581409: (a) => new IFC4X3.IfcCompressorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2816379211: (a) => new IFC4X3.IfcCondenserType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3898045240: (a) => new IFC4X3.IfcConstructionEquipmentResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1060000209: (a) => new IFC4X3.IfcConstructionMaterialResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 488727124: (a) => new IFC4X3.IfcConstructionProductResource(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 2940368186: (a) => new IFC4X3.IfcConveyorSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 335055490: (a) => new IFC4X3.IfcCooledBeamType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2954562838: (a) => new IFC4X3.IfcCoolingTowerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1502416096: (a) => new IFC4X3.IfcCourse(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1973544240: (a) => new IFC4X3.IfcCovering(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3495092785: (a) => new IFC4X3.IfcCurtainWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3961806047: (a) => new IFC4X3.IfcDamperType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3426335179: (a) => new IFC4X3.IfcDeepFoundation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1335981549: (a) => new IFC4X3.IfcDiscreteAccessory(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2635815018: (a) => new IFC4X3.IfcDiscreteAccessoryType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 479945903: (a) => new IFC4X3.IfcDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1599208980: (a) => new IFC4X3.IfcDistributionChamberElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2063403501: (a) => new IFC4X3.IfcDistributionControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1945004755: (a) => new IFC4X3.IfcDistributionElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3040386961: (a) => new IFC4X3.IfcDistributionFlowElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3041715199: (a) => new IFC4X3.IfcDistributionPort(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3205830791: (a) => new IFC4X3.IfcDistributionSystem(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 395920057: (a) => new IFC4X3.IfcDoor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 869906466: (a) => new IFC4X3.IfcDuctFittingType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3760055223: (a) => new IFC4X3.IfcDuctSegmentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2030761528: (a) => new IFC4X3.IfcDuctSilencerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3071239417: (a) => new IFC4X3.IfcEarthworksCut(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1077100507: (a) => new IFC4X3.IfcEarthworksElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3376911765: (a) => new IFC4X3.IfcEarthworksFill(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 663422040: (a) => new IFC4X3.IfcElectricApplianceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2417008758: (a) => new IFC4X3.IfcElectricDistributionBoardType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3277789161: (a) => new IFC4X3.IfcElectricFlowStorageDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2142170206: (a) => new IFC4X3.IfcElectricFlowTreatmentDeviceType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1534661035: (a) => new IFC4X3.IfcElectricGeneratorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1217240411: (a) => new IFC4X3.IfcElectricMotorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 712377611: (a) => new IFC4X3.IfcElectricTimeControlType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1658829314: (a) => new IFC4X3.IfcEnergyConversionDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2814081492: (a) => new IFC4X3.IfcEngine(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3747195512: (a) => new IFC4X3.IfcEvaporativeCooler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 484807127: (a) => new IFC4X3.IfcEvaporator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1209101575: (a) => new IFC4X3.IfcExternalSpatialElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 346874300: (a) => new IFC4X3.IfcFanType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1810631287: (a) => new IFC4X3.IfcFilterType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4222183408: (a) => new IFC4X3.IfcFireSuppressionTerminalType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2058353004: (a) => new IFC4X3.IfcFlowController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4278956645: (a) => new IFC4X3.IfcFlowFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 4037862832: (a) => new IFC4X3.IfcFlowInstrumentType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 2188021234: (a) => new IFC4X3.IfcFlowMeter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3132237377: (a) => new IFC4X3.IfcFlowMovingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 987401354: (a) => new IFC4X3.IfcFlowSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 707683696: (a) => new IFC4X3.IfcFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2223149337: (a) => new IFC4X3.IfcFlowTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3508470533: (a) => new IFC4X3.IfcFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 900683007: (a) => new IFC4X3.IfcFooting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2713699986: (a) => new IFC4X3.IfcGeotechnicalAssembly(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 3009204131: (a) => new IFC4X3.IfcGrid(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 3319311131: (a) => new IFC4X3.IfcHeatExchanger(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2068733104: (a) => new IFC4X3.IfcHumidifier(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4175244083: (a) => new IFC4X3.IfcInterceptor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2176052936: (a) => new IFC4X3.IfcJunctionBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2696325953: (a) => new IFC4X3.IfcKerb(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 76236018: (a) => new IFC4X3.IfcLamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 629592764: (a) => new IFC4X3.IfcLightFixture(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1154579445: (a) => new IFC4X3.IfcLinearPositioningElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1638804497: (a) => new IFC4X3.IfcLiquidTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1437502449: (a) => new IFC4X3.IfcMedicalDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1073191201: (a) => new IFC4X3.IfcMember(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2078563270: (a) => new IFC4X3.IfcMobileTelecommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 234836483: (a) => new IFC4X3.IfcMooringDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2474470126: (a) => new IFC4X3.IfcMotorConnection(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2182337498: (a) => new IFC4X3.IfcNavigationElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 144952367: (a) => new IFC4X3.IfcOuterBoundaryCurve(a[0], a[1]),\n 3694346114: (a) => new IFC4X3.IfcOutlet(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1383356374: (a) => new IFC4X3.IfcPavement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1687234759: (a) => new IFC4X3.IfcPile(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 310824031: (a) => new IFC4X3.IfcPipeFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3612865200: (a) => new IFC4X3.IfcPipeSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3171933400: (a) => new IFC4X3.IfcPlate(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 738039164: (a) => new IFC4X3.IfcProtectiveDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 655969474: (a) => new IFC4X3.IfcProtectiveDeviceTrippingUnitType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 90941305: (a) => new IFC4X3.IfcPump(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3290496277: (a) => new IFC4X3.IfcRail(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2262370178: (a) => new IFC4X3.IfcRailing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3024970846: (a) => new IFC4X3.IfcRamp(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3283111854: (a) => new IFC4X3.IfcRampFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1232101972: (a) => new IFC4X3.IfcRationalBSplineCurveWithKnots(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3798194928: (a) => new IFC4X3.IfcReinforcedSoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 979691226: (a) => new IFC4X3.IfcReinforcingBar(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13]),\n 2572171363: (a) => new IFC4X3.IfcReinforcingBarType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12], a[13], a[14], a[15]),\n 2016517767: (a) => new IFC4X3.IfcRoof(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3053780830: (a) => new IFC4X3.IfcSanitaryTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1783015770: (a) => new IFC4X3.IfcSensorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1329646415: (a) => new IFC4X3.IfcShadingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 991950508: (a) => new IFC4X3.IfcSignal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1529196076: (a) => new IFC4X3.IfcSlab(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3420628829: (a) => new IFC4X3.IfcSolarDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1999602285: (a) => new IFC4X3.IfcSpaceHeater(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1404847402: (a) => new IFC4X3.IfcStackTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 331165859: (a) => new IFC4X3.IfcStair(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4252922144: (a) => new IFC4X3.IfcStairFlight(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2515109513: (a) => new IFC4X3.IfcStructuralAnalysisModel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 385403989: (a) => new IFC4X3.IfcStructuralLoadCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10]),\n 1621171031: (a) => new IFC4X3.IfcStructuralPlanarAction(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11]),\n 1162798199: (a) => new IFC4X3.IfcSwitchingDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 812556717: (a) => new IFC4X3.IfcTank(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3425753595: (a) => new IFC4X3.IfcTrackElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3825984169: (a) => new IFC4X3.IfcTransformer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1620046519: (a) => new IFC4X3.IfcTransportElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3026737570: (a) => new IFC4X3.IfcTubeBundle(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3179687236: (a) => new IFC4X3.IfcUnitaryControlElementType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 4292641817: (a) => new IFC4X3.IfcUnitaryEquipment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4207607924: (a) => new IFC4X3.IfcValve(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2391406946: (a) => new IFC4X3.IfcWall(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3512223829: (a) => new IFC4X3.IfcWallStandardCase(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4237592921: (a) => new IFC4X3.IfcWasteTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3304561284: (a) => new IFC4X3.IfcWindow(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9], a[10], a[11], a[12]),\n 2874132201: (a) => new IFC4X3.IfcActuatorType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 1634111441: (a) => new IFC4X3.IfcAirTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 177149247: (a) => new IFC4X3.IfcAirTerminalBox(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2056796094: (a) => new IFC4X3.IfcAirToAirHeatRecovery(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3001207471: (a) => new IFC4X3.IfcAlarmType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 325726236: (a) => new IFC4X3.IfcAlignment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 277319702: (a) => new IFC4X3.IfcAudioVisualAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 753842376: (a) => new IFC4X3.IfcBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4196446775: (a) => new IFC4X3.IfcBearing(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 32344328: (a) => new IFC4X3.IfcBoiler(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3314249567: (a) => new IFC4X3.IfcBorehole(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1095909175: (a) => new IFC4X3.IfcBuildingElementProxy(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2938176219: (a) => new IFC4X3.IfcBurner(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 635142910: (a) => new IFC4X3.IfcCableCarrierFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3758799889: (a) => new IFC4X3.IfcCableCarrierSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1051757585: (a) => new IFC4X3.IfcCableFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4217484030: (a) => new IFC4X3.IfcCableSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3999819293: (a) => new IFC4X3.IfcCaissonFoundation(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3902619387: (a) => new IFC4X3.IfcChiller(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 639361253: (a) => new IFC4X3.IfcCoil(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3221913625: (a) => new IFC4X3.IfcCommunicationsAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3571504051: (a) => new IFC4X3.IfcCompressor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2272882330: (a) => new IFC4X3.IfcCondenser(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 578613899: (a) => new IFC4X3.IfcControllerType(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]),\n 3460952963: (a) => new IFC4X3.IfcConveyorSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4136498852: (a) => new IFC4X3.IfcCooledBeam(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3640358203: (a) => new IFC4X3.IfcCoolingTower(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4074379575: (a) => new IFC4X3.IfcDamper(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3693000487: (a) => new IFC4X3.IfcDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1052013943: (a) => new IFC4X3.IfcDistributionChamberElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 562808652: (a) => new IFC4X3.IfcDistributionCircuit(a[0], a[1], a[2], a[3], a[4], a[5], a[6]),\n 1062813311: (a) => new IFC4X3.IfcDistributionControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 342316401: (a) => new IFC4X3.IfcDuctFitting(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3518393246: (a) => new IFC4X3.IfcDuctSegment(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1360408905: (a) => new IFC4X3.IfcDuctSilencer(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1904799276: (a) => new IFC4X3.IfcElectricAppliance(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 862014818: (a) => new IFC4X3.IfcElectricDistributionBoard(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3310460725: (a) => new IFC4X3.IfcElectricFlowStorageDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 24726584: (a) => new IFC4X3.IfcElectricFlowTreatmentDevice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 264262732: (a) => new IFC4X3.IfcElectricGenerator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 402227799: (a) => new IFC4X3.IfcElectricMotor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1003880860: (a) => new IFC4X3.IfcElectricTimeControl(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3415622556: (a) => new IFC4X3.IfcFan(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 819412036: (a) => new IFC4X3.IfcFilter(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 1426591983: (a) => new IFC4X3.IfcFireSuppressionTerminal(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 182646315: (a) => new IFC4X3.IfcFlowInstrument(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 2680139844: (a) => new IFC4X3.IfcGeomodel(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 1971632696: (a) => new IFC4X3.IfcGeoslice(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]),\n 2295281155: (a) => new IFC4X3.IfcProtectiveDeviceTrippingUnit(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4086658281: (a) => new IFC4X3.IfcSensor(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 630975310: (a) => new IFC4X3.IfcUnitaryControlElement(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 4288193352: (a) => new IFC4X3.IfcActuator(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 3087945054: (a) => new IFC4X3.IfcAlarm(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]),\n 25142252: (a) => new IFC4X3.IfcController(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8])\n};\nToRawLineData[3] = {\n 3630933823: (i) => [i.Role, i.UserDefinedRole, i.Description],\n 618182010: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose],\n 2879124712: (i) => [i.StartTag, i.EndTag],\n 3633395639: (i) => [i.StartTag, i.EndTag, i.StartDistAlong, i.HorizontalLength, i.StartHeight, i.StartGradient, i.EndGradient, i.RadiusOfCurvature, i.PredefinedType],\n 639542469: (i) => [i.ApplicationDeveloper, i.Version, i.ApplicationFullName, i.ApplicationIdentifier],\n 411424972: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 130549933: (i) => [i.Identifier, i.Name, i.Description, i.TimeOfApproval, i.Status, i.Level, i.Qualifier, i.RequestingApproval, i.GivingApproval],\n 4037036970: (i) => [i.Name],\n 1560379544: (i) => [i.Name, !i.TranslationalStiffnessByLengthX ? null : Labelise(i.TranslationalStiffnessByLengthX), !i.TranslationalStiffnessByLengthY ? null : Labelise(i.TranslationalStiffnessByLengthY), !i.TranslationalStiffnessByLengthZ ? null : Labelise(i.TranslationalStiffnessByLengthZ), !i.RotationalStiffnessByLengthX ? null : Labelise(i.RotationalStiffnessByLengthX), !i.RotationalStiffnessByLengthY ? null : Labelise(i.RotationalStiffnessByLengthY), !i.RotationalStiffnessByLengthZ ? null : Labelise(i.RotationalStiffnessByLengthZ)],\n 3367102660: (i) => [i.Name, !i.TranslationalStiffnessByAreaX ? null : Labelise(i.TranslationalStiffnessByAreaX), !i.TranslationalStiffnessByAreaY ? null : Labelise(i.TranslationalStiffnessByAreaY), !i.TranslationalStiffnessByAreaZ ? null : Labelise(i.TranslationalStiffnessByAreaZ)],\n 1387855156: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ)],\n 2069777674: (i) => [i.Name, !i.TranslationalStiffnessX ? null : Labelise(i.TranslationalStiffnessX), !i.TranslationalStiffnessY ? null : Labelise(i.TranslationalStiffnessY), !i.TranslationalStiffnessZ ? null : Labelise(i.TranslationalStiffnessZ), !i.RotationalStiffnessX ? null : Labelise(i.RotationalStiffnessX), !i.RotationalStiffnessY ? null : Labelise(i.RotationalStiffnessY), !i.RotationalStiffnessZ ? null : Labelise(i.RotationalStiffnessZ), !i.WarpingStiffness ? null : Labelise(i.WarpingStiffness)],\n 2859738748: (_) => [],\n 2614616156: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement],\n 2732653382: (i) => [i.SurfaceOnRelatingElement, i.SurfaceOnRelatedElement],\n 775493141: (i) => [i.VolumeOnRelatingElement, i.VolumeOnRelatedElement],\n 1959218052: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade],\n 1785450214: (i) => [i.SourceCRS, i.TargetCRS],\n 1466758467: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum],\n 602808272: (i) => [i.Name, i.Description, i.AppliedValue, i.UnitBasis, i.ApplicableDate, i.FixedUntilDate, i.Category, i.Condition, i.ArithmeticOperator, i.Components],\n 1765591967: (i) => [i.Elements, i.UnitType, i.UserDefinedType, i.Name],\n 1045800335: (i) => [i.Unit, i.Exponent],\n 2949456006: (i) => [i.LengthExponent, i.MassExponent, i.TimeExponent, i.ElectricCurrentExponent, i.ThermodynamicTemperatureExponent, i.AmountOfSubstanceExponent, i.LuminousIntensityExponent],\n 4294318154: (_) => [],\n 3200245327: (i) => [i.Location, i.Identification, i.Name],\n 2242383968: (i) => [i.Location, i.Identification, i.Name],\n 1040185647: (i) => [i.Location, i.Identification, i.Name],\n 3548104201: (i) => [i.Location, i.Identification, i.Name],\n 852622518: (i) => [i.AxisTag, i.AxisCurve, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 3020489413: (i) => [i.TimeStamp, i.ListValues.map((p) => Labelise(p))],\n 2655187982: (i) => [i.Name, i.Version, i.Publisher, i.VersionDate, i.Location, i.Description],\n 3452421091: (i) => [i.Location, i.Identification, i.Name, i.Description, i.Language, i.ReferencedLibrary],\n 4162380809: (i) => [i.MainPlaneAngle, i.SecondaryPlaneAngle, i.LuminousIntensity],\n 1566485204: (i) => [i.LightDistributionCurve, i.DistributionData],\n 3057273783: (i) => [i.SourceCRS, i.TargetCRS, i.Eastings, i.Northings, i.OrthogonalHeight, i.XAxisAbscissa, i.XAxisOrdinate, i.Scale, i.ScaleY, i.ScaleZ],\n 1847130766: (i) => [i.MaterialClassifications, i.ClassifiedMaterial],\n 760658860: (_) => [],\n 248100487: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority],\n 3303938423: (i) => [i.MaterialLayers, i.LayerSetName, i.Description],\n 1847252529: (i) => [i.Material, i.LayerThickness, i.IsVentilated == null ? null : { type: 3, value: BooleanConvert(i.IsVentilated.value) }, i.Name, i.Description, i.Category, i.Priority, i.OffsetDirection, i.OffsetValues],\n 2199411900: (i) => [i.Materials],\n 2235152071: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category],\n 164193824: (i) => [i.Name, i.Description, i.MaterialProfiles, i.CompositeProfile],\n 552965576: (i) => [i.Name, i.Description, i.Material, i.Profile, i.Priority, i.Category, i.OffsetValues],\n 1507914824: (_) => [],\n 2597039031: (i) => [Labelise(i.ValueComponent), i.UnitComponent],\n 3368373690: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.Benchmark, i.ValueSource, i.DataValue, i.ReferencePath],\n 2706619895: (i) => [i.Currency],\n 1918398963: (i) => [i.Dimensions, i.UnitType],\n 3701648758: (i) => [i.PlacementRelTo],\n 2251480897: (i) => [i.Name, i.Description, i.ConstraintGrade, i.ConstraintSource, i.CreatingActor, i.CreationTime, i.UserDefinedGrade, i.BenchmarkValues, i.LogicalAggregator, i.ObjectiveQualifier, i.UserDefinedQualifier],\n 4251960020: (i) => [i.Identification, i.Name, i.Description, i.Roles, i.Addresses],\n 1207048766: (i) => [i.OwningUser, i.OwningApplication, i.State, i.ChangeAction, i.LastModifiedDate, i.LastModifyingUser, i.LastModifyingApplication, i.CreationDate],\n 2077209135: (i) => [i.Identification, i.FamilyName, i.GivenName, i.MiddleNames, i.PrefixTitles, i.SuffixTitles, i.Roles, i.Addresses],\n 101040310: (i) => [i.ThePerson, i.TheOrganization, i.Roles],\n 2483315170: (i) => [i.Name, i.Description],\n 2226359599: (i) => [i.Name, i.Description, i.Unit],\n 3355820592: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.InternalLocation, i.AddressLines, i.PostalBox, i.Town, i.Region, i.PostalCode, i.Country],\n 677532197: (_) => [],\n 2022622350: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier],\n 1304840413: (i) => [i.Name, i.Description, i.AssignedItems, i.Identifier, { type: 3, value: BooleanConvert(i.LayerOn.value) }, { type: 3, value: BooleanConvert(i.LayerFrozen.value) }, { type: 3, value: BooleanConvert(i.LayerBlocked.value) }, i.LayerStyles],\n 3119450353: (i) => [i.Name],\n 2095639259: (i) => [i.Name, i.Description, i.Representations],\n 3958567839: (i) => [i.ProfileType, i.ProfileName],\n 3843373140: (i) => [i.Name, i.Description, i.GeodeticDatum, i.VerticalDatum, i.MapProjection, i.MapZone, i.MapUnit],\n 986844984: (_) => [],\n 3710013099: (i) => [i.Name, i.EnumerationValues.map((p) => Labelise(p)), i.Unit],\n 2044713172: (i) => [i.Name, i.Description, i.Unit, i.AreaValue, i.Formula],\n 2093928680: (i) => [i.Name, i.Description, i.Unit, i.CountValue, i.Formula],\n 931644368: (i) => [i.Name, i.Description, i.Unit, i.LengthValue, i.Formula],\n 2691318326: (i) => [i.Name, i.Description, i.Unit, i.NumberValue, i.Formula],\n 3252649465: (i) => [i.Name, i.Description, i.Unit, i.TimeValue, i.Formula],\n 2405470396: (i) => [i.Name, i.Description, i.Unit, i.VolumeValue, i.Formula],\n 825690147: (i) => [i.Name, i.Description, i.Unit, i.WeightValue, i.Formula],\n 3915482550: (i) => [i.RecurrenceType, i.DayComponent, i.WeekdayComponent, i.MonthComponent, i.Position, i.Interval, i.Occurrences, i.TimePeriods],\n 2433181523: (i) => [i.TypeIdentifier, i.AttributeIdentifier, i.InstanceName, i.ListPositions, i.InnerReference],\n 1076942058: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3377609919: (i) => [i.ContextIdentifier, i.ContextType],\n 3008791417: (_) => [],\n 1660063152: (i) => [i.MappingOrigin, i.MappedRepresentation],\n 2439245199: (i) => [i.Name, i.Description],\n 2341007311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 448429030: (i) => [i.Dimensions, i.UnitType, i.Prefix, i.Name],\n 1054537805: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin],\n 867548509: (i) => [i.ShapeRepresentations, i.Name, i.Description, { type: 3, value: BooleanConvert(i.ProductDefinitional.value) }, i.PartOfProductDefinitionShape],\n 3982875396: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 4240577450: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2273995522: (i) => [i.Name],\n 2162789131: (i) => [i.Name],\n 3478079324: (i) => [i.Name, i.Values, i.Locations],\n 609421318: (i) => [i.Name],\n 2525727697: (i) => [i.Name],\n 3408363356: (i) => [i.Name, i.DeltaTConstant, i.DeltaTY, i.DeltaTZ],\n 2830218821: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 3958052878: (i) => [i.Item, i.Styles, i.Name],\n 3049322572: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 2934153892: (i) => [i.Name, i.SurfaceReinforcement1, i.SurfaceReinforcement2, i.ShearReinforcement],\n 1300840506: (i) => [i.Name, i.Side, i.Styles],\n 3303107099: (i) => [i.DiffuseTransmissionColour, i.DiffuseReflectionColour, i.TransmissionColour, i.ReflectanceColour],\n 1607154358: (i) => [i.RefractionIndex, i.DispersionFactor],\n 846575682: (i) => [i.SurfaceColour, i.Transparency],\n 1351298697: (i) => [i.Textures],\n 626085974: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter],\n 985171141: (i) => [i.Name, i.Rows, i.Columns],\n 2043862942: (i) => [i.Identifier, i.Name, i.Description, i.Unit, i.ReferencePath],\n 531007025: (i) => [!i.RowCells ? null : i.RowCells.map((p) => Labelise(p)), i.IsHeading == null ? null : { type: 3, value: BooleanConvert(i.IsHeading.value) }],\n 1549132990: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion],\n 2771591690: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.DurationType, i.ScheduleDuration, i.ScheduleStart, i.ScheduleFinish, i.EarlyStart, i.EarlyFinish, i.LateStart, i.LateFinish, i.FreeFloat, i.TotalFloat, i.IsCritical == null ? null : { type: 3, value: BooleanConvert(i.IsCritical.value) }, i.StatusTime, i.ActualDuration, i.ActualStart, i.ActualFinish, i.RemainingTime, i.Completion, i.Recurrence],\n 912023232: (i) => [i.Purpose, i.Description, i.UserDefinedPurpose, i.TelephoneNumbers, i.FacsimileNumbers, i.PagerNumber, i.ElectronicMailAddresses, i.WWWHomePageURL, i.MessagingIDs],\n 1447204868: (i) => [i.Name, i.TextCharacterAppearance, i.TextStyle, i.TextFontStyle, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 2636378356: (i) => [i.Colour, i.BackgroundColour],\n 1640371178: (i) => [!i.TextIndent ? null : Labelise(i.TextIndent), i.TextAlign, i.TextDecoration, !i.LetterSpacing ? null : Labelise(i.LetterSpacing), !i.WordSpacing ? null : Labelise(i.WordSpacing), i.TextTransform, !i.LineHeight ? null : Labelise(i.LineHeight)],\n 280115917: (i) => [i.Maps],\n 1742049831: (i) => [i.Maps, i.Mode, i.Parameter],\n 222769930: (i) => [i.TexCoordIndex, i.TexCoordsOf],\n 1010789467: (i) => [i.TexCoordIndex, i.TexCoordsOf, i.InnerTexCoordIndices],\n 2552916305: (i) => [i.Maps, i.Vertices, i.MappedTo],\n 1210645708: (i) => [i.Coordinates],\n 3611470254: (i) => [i.TexCoordsList],\n 1199560280: (i) => [i.StartTime, i.EndTime],\n 3101149627: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit],\n 581633288: (i) => [i.ListValues.map((p) => Labelise(p))],\n 1377556343: (_) => [],\n 1735638870: (i) => [i.ContextOfItems, i.RepresentationIdentifier, i.RepresentationType, i.Items],\n 180925521: (i) => [i.Units],\n 2799835756: (_) => [],\n 1907098498: (i) => [i.VertexGeometry],\n 891718957: (i) => [i.IntersectingAxes, i.OffsetDistances],\n 1236880293: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.RecurrencePattern, i.StartDate, i.FinishDate],\n 3752311538: (i) => [i.StartTag, i.EndTag, i.StartDistAlong, i.HorizontalLength, i.StartCantLeft, i.EndCantLeft, i.StartCantRight, i.EndCantRight, i.PredefinedType],\n 536804194: (i) => [i.StartTag, i.EndTag, i.StartPoint, i.StartDirection, i.StartRadiusOfCurvature, i.EndRadiusOfCurvature, i.SegmentLength, i.GravityCenterLineHeight, i.PredefinedType],\n 3869604511: (i) => [i.Name, i.Description, i.RelatingApproval, i.RelatedApprovals],\n 3798115385: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve],\n 1310608509: (i) => [i.ProfileType, i.ProfileName, i.Curve],\n 2705031697: (i) => [i.ProfileType, i.ProfileName, i.OuterCurve, i.InnerCurves],\n 616511568: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.RasterFormat, i.RasterCode],\n 3150382593: (i) => [i.ProfileType, i.ProfileName, i.Curve, i.Thickness],\n 747523909: (i) => [i.Source, i.Edition, i.EditionDate, i.Name, i.Description, i.Specification, i.ReferenceTokens],\n 647927063: (i) => [i.Location, i.Identification, i.Name, i.ReferencedSource, i.Description, i.Sort],\n 3285139300: (i) => [i.ColourList],\n 3264961684: (i) => [i.Name],\n 1485152156: (i) => [i.ProfileType, i.ProfileName, i.Profiles, i.Label],\n 370225590: (i) => [i.CfsFaces],\n 1981873012: (i) => [i.CurveOnRelatingElement, i.CurveOnRelatedElement],\n 45288368: (i) => [i.PointOnRelatingElement, i.PointOnRelatedElement, i.EccentricityInX, i.EccentricityInY, i.EccentricityInZ],\n 3050246964: (i) => [i.Dimensions, i.UnitType, i.Name],\n 2889183280: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor],\n 2713554722: (i) => [i.Dimensions, i.UnitType, i.Name, i.ConversionFactor, i.ConversionOffset],\n 539742890: (i) => [i.Name, i.Description, i.RelatingMonetaryUnit, i.RelatedMonetaryUnit, i.ExchangeRate, i.RateDateTime, i.RateSource],\n 3800577675: (i) => [i.Name, i.CurveFont, !i.CurveWidth ? null : Labelise(i.CurveWidth), i.CurveColour, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 1105321065: (i) => [i.Name, i.PatternList],\n 2367409068: (i) => [i.Name, i.CurveStyleFont, i.CurveFontScaling],\n 3510044353: (i) => [i.VisibleSegmentLength, i.InvisibleSegmentLength],\n 3632507154: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 1154170062: (i) => [i.Identification, i.Name, i.Description, i.Location, i.Purpose, i.IntendedUse, i.Scope, i.Revision, i.DocumentOwner, i.Editors, i.CreationTime, i.LastRevisionTime, i.ElectronicFormat, i.ValidFrom, i.ValidUntil, i.Confidentiality, i.Status],\n 770865208: (i) => [i.Name, i.Description, i.RelatingDocument, i.RelatedDocuments, i.RelationshipType],\n 3732053477: (i) => [i.Location, i.Identification, i.Name, i.Description, i.ReferencedDocument],\n 3900360178: (i) => [i.EdgeStart, i.EdgeEnd],\n 476780140: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeGeometry, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 211053100: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ActualDate, i.EarlyDate, i.LateDate, i.ScheduleDate],\n 297599258: (i) => [i.Name, i.Description, i.Properties],\n 1437805879: (i) => [i.Name, i.Description, i.RelatingReference, i.RelatedResourceObjects],\n 2556980723: (i) => [i.Bounds],\n 1809719519: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 803316827: (i) => [i.Bound, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 3008276851: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 4219587988: (i) => [i.Name, i.TensionFailureX, i.TensionFailureY, i.TensionFailureZ, i.CompressionFailureX, i.CompressionFailureY, i.CompressionFailureZ],\n 738692330: (i) => [i.Name, i.FillStyles, i.ModelOrDraughting == null ? null : { type: 3, value: BooleanConvert(i.ModelOrDraughting.value) }],\n 3448662350: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth],\n 2453401579: (_) => [],\n 4142052618: (i) => [i.ContextIdentifier, i.ContextType, i.CoordinateSpaceDimension, i.Precision, i.WorldCoordinateSystem, i.TrueNorth, i.ParentContext, i.TargetScale, i.TargetView, i.UserDefinedTargetView],\n 3590301190: (i) => [i.Elements],\n 178086475: (i) => [i.PlacementRelTo, i.PlacementLocation, i.PlacementRefDirection],\n 812098782: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }],\n 3905492369: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.URLReference],\n 3570813810: (i) => [i.MappedTo, i.Opacity, i.Colours, i.ColourIndex],\n 1437953363: (i) => [i.Maps, i.MappedTo, i.TexCoords],\n 2133299955: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndex],\n 3741457305: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.Values],\n 1585845231: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, Labelise(i.LagValue), i.DurationType],\n 1402838566: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 125510826: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity],\n 2604431987: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Orientation],\n 4266656042: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.ColourAppearance, i.ColourTemperature, i.LuminousFlux, i.LightEmissionSource, i.LightDistributionDataSource],\n 1520743889: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation],\n 3422422726: (i) => [i.Name, i.LightColour, i.AmbientIntensity, i.Intensity, i.Position, i.Radius, i.ConstantAttenuation, i.DistanceAttenuation, i.QuadricAttenuation, i.Orientation, i.ConcentrationExponent, i.SpreadAngle, i.BeamWidthAngle],\n 388784114: (i) => [i.PlacementRelTo, i.RelativePlacement, i.CartesianPosition],\n 2624227202: (i) => [i.PlacementRelTo, i.RelativePlacement],\n 1008929658: (_) => [],\n 2347385850: (i) => [i.MappingSource, i.MappingTarget],\n 1838606355: (i) => [i.Name, i.Description, i.Category],\n 3708119e3: (i) => [i.Name, i.Description, i.Material, i.Fraction, i.Category],\n 2852063980: (i) => [i.Name, i.Description, i.MaterialConstituents],\n 2022407955: (i) => [i.Name, i.Description, i.Representations, i.RepresentedMaterial],\n 1303795690: (i) => [i.ForLayerSet, i.LayerSetDirection, i.DirectionSense, i.OffsetFromReferenceLine, i.ReferenceExtent],\n 3079605661: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent],\n 3404854881: (i) => [i.ForProfileSet, i.CardinalPoint, i.ReferenceExtent, i.ForProfileEndSet, i.CardinalEndPoint],\n 3265635763: (i) => [i.Name, i.Description, i.Properties, i.Material],\n 853536259: (i) => [i.Name, i.Description, i.RelatingMaterial, i.RelatedMaterials, i.MaterialExpression],\n 2998442950: (i) => [i.ProfileType, i.ProfileName, i.ParentProfile, i.Operator, i.Label],\n 219451334: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 182550632: (i) => [i.ProfileType, i.ProfileName, { type: 3, value: BooleanConvert(i.HorizontalWidths.value) }, i.Widths, i.Slopes, i.Tags, i.OffsetPoint],\n 2665983363: (i) => [i.CfsFaces],\n 1411181986: (i) => [i.Name, i.Description, i.RelatingOrganization, i.RelatedOrganizations],\n 1029017970: (i) => [i.EdgeStart, i.EdgeEnd, i.EdgeElement, { type: 3, value: BooleanConvert(i.Orientation.value) }],\n 2529465313: (i) => [i.ProfileType, i.ProfileName, i.Position],\n 2519244187: (i) => [i.EdgeList],\n 3021840470: (i) => [i.Name, i.Description, i.HasQuantities, i.Discrimination, i.Quality, i.Usage],\n 597895409: (i) => [{ type: 3, value: BooleanConvert(i.RepeatS.value) }, { type: 3, value: BooleanConvert(i.RepeatT.value) }, i.Mode, i.TextureTransform, i.Parameter, i.Width, i.Height, i.ColourComponents, i.Pixel],\n 2004835150: (i) => [i.Location],\n 1663979128: (i) => [i.SizeInX, i.SizeInY],\n 2067069095: (_) => [],\n 2165702409: (i) => [Labelise(i.DistanceAlong), i.OffsetLateral, i.OffsetVertical, i.OffsetLongitudinal, i.BasisCurve],\n 4022376103: (i) => [i.BasisCurve, i.PointParameter],\n 1423911732: (i) => [i.BasisSurface, i.PointParameterU, i.PointParameterV],\n 2924175390: (i) => [i.Polygon],\n 2775532180: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Position, i.PolygonalBoundary],\n 3727388367: (i) => [i.Name],\n 3778827333: (_) => [],\n 1775413392: (i) => [i.Name],\n 673634403: (i) => [i.Name, i.Description, i.Representations],\n 2802850158: (i) => [i.Name, i.Description, i.Properties, i.ProfileDefinition],\n 2598011224: (i) => [i.Name, i.Specification],\n 1680319473: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 148025276: (i) => [i.Name, i.Description, i.DependingProperty, i.DependantProperty, i.Expression],\n 3357820518: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1482703590: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2090586900: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 3615266464: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim],\n 3413951693: (i) => [i.Name, i.Description, i.StartTime, i.EndTime, i.TimeSeriesDataType, i.DataOrigin, i.UserDefinedDataOrigin, i.Unit, i.TimeStep, i.Values],\n 1580146022: (i) => [i.TotalCrossSectionArea, i.SteelGrade, i.BarSurface, i.EffectiveDepth, i.NominalBarDiameter, i.BarCount],\n 478536968: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2943643501: (i) => [i.Name, i.Description, i.RelatedResourceObjects, i.RelatingApproval],\n 1608871552: (i) => [i.Name, i.Description, i.RelatingConstraint, i.RelatedResourceObjects],\n 1042787934: (i) => [i.Name, i.DataOrigin, i.UserDefinedDataOrigin, i.ScheduleWork, i.ScheduleUsage, i.ScheduleStart, i.ScheduleFinish, i.ScheduleContour, i.LevelingDelay, i.IsOverAllocated == null ? null : { type: 3, value: BooleanConvert(i.IsOverAllocated.value) }, i.StatusTime, i.ActualWork, i.ActualUsage, i.ActualStart, i.ActualFinish, i.RemainingWork, i.RemainingUsage, i.Completion],\n 2778083089: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.RoundingRadius],\n 2042790032: (i) => [i.SectionType, i.StartProfile, i.EndProfile],\n 4165799628: (i) => [i.LongitudinalStartPosition, i.LongitudinalEndPosition, i.TransversePosition, i.ReinforcementRole, i.SectionDefinition, i.CrossSectionReinforcementDefinitions],\n 1509187699: (i) => [i.SpineCurve, i.CrossSections, i.CrossSectionPositions],\n 823603102: (i) => [i.Transition],\n 4124623270: (i) => [i.SbsmBoundary],\n 3692461612: (i) => [i.Name, i.Specification],\n 2609359061: (i) => [i.Name, i.SlippageX, i.SlippageY, i.SlippageZ],\n 723233188: (_) => [],\n 1595516126: (i) => [i.Name, i.LinearForceX, i.LinearForceY, i.LinearForceZ, i.LinearMomentX, i.LinearMomentY, i.LinearMomentZ],\n 2668620305: (i) => [i.Name, i.PlanarForceX, i.PlanarForceY, i.PlanarForceZ],\n 2473145415: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ],\n 1973038258: (i) => [i.Name, i.DisplacementX, i.DisplacementY, i.DisplacementZ, i.RotationalDisplacementRX, i.RotationalDisplacementRY, i.RotationalDisplacementRZ, i.Distortion],\n 1597423693: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ],\n 1190533807: (i) => [i.Name, i.ForceX, i.ForceY, i.ForceZ, i.MomentX, i.MomentY, i.MomentZ, i.WarpingMoment],\n 2233826070: (i) => [i.EdgeStart, i.EdgeEnd, i.ParentEdge],\n 2513912981: (_) => [],\n 1878645084: (i) => [i.SurfaceColour, i.Transparency, i.DiffuseColour, i.TransmissionColour, i.DiffuseTransmissionColour, i.ReflectionColour, i.SpecularColour, !i.SpecularHighlight ? null : Labelise(i.SpecularHighlight), i.ReflectanceMethod],\n 2247615214: (i) => [i.SweptArea, i.Position],\n 1260650574: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam],\n 1096409881: (i) => [i.Directrix, i.Radius, i.InnerRadius, i.StartParam, i.EndParam, i.FilletRadius],\n 230924584: (i) => [i.SweptCurve, i.Position],\n 3071757647: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.WebEdgeRadius, i.WebSlope, i.FlangeSlope],\n 901063453: (_) => [],\n 4282788508: (i) => [i.Literal, i.Placement, i.Path],\n 3124975700: (i) => [i.Literal, i.Placement, i.Path, i.Extent, i.BoxAlignment],\n 1983826977: (i) => [i.Name, i.FontFamily, i.FontStyle, i.FontVariant, i.FontWeight, Labelise(i.FontSize)],\n 2715220739: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomXDim, i.TopXDim, i.YDim, i.TopXOffset],\n 1628702193: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets],\n 3736923433: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType],\n 2347495698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag],\n 3698973494: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType],\n 427810014: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius, i.FlangeSlope],\n 1417489154: (i) => [i.Orientation, i.Magnitude],\n 2759199220: (i) => [i.LoopVertex],\n 2543172580: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.FlangeWidth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.EdgeRadius],\n 3406155212: (i) => [i.Bounds, i.FaceSurface, { type: 3, value: BooleanConvert(i.SameSense.value) }],\n 669184980: (i) => [i.OuterBoundary, i.InnerBoundaries],\n 3207858831: (i) => [i.ProfileType, i.ProfileName, i.Position, i.BottomFlangeWidth, i.OverallDepth, i.WebThickness, i.BottomFlangeThickness, i.BottomFlangeFilletRadius, i.TopFlangeWidth, i.TopFlangeThickness, i.TopFlangeFilletRadius, i.BottomFlangeEdgeRadius, i.BottomFlangeSlope, i.TopFlangeEdgeRadius, i.TopFlangeSlope],\n 4261334040: (i) => [i.Location, i.Axis],\n 3125803723: (i) => [i.Location, i.RefDirection],\n 2740243338: (i) => [i.Location, i.Axis, i.RefDirection],\n 3425423356: (i) => [i.Location, i.Axis, i.RefDirection],\n 2736907675: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 4182860854: (_) => [],\n 2581212453: (i) => [i.Corner, i.XDim, i.YDim, i.ZDim],\n 2713105998: (i) => [i.BaseSurface, { type: 3, value: BooleanConvert(i.AgreementFlag.value) }, i.Enclosure],\n 2898889636: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.WallThickness, i.Girth, i.InternalFilletRadius],\n 1123145078: (i) => [i.Coordinates],\n 574549367: (_) => [],\n 1675464909: (i) => [i.CoordList, i.TagList],\n 2059837836: (i) => [i.CoordList, i.TagList],\n 59481748: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3749851601: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale],\n 3486308946: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Scale2],\n 3331915920: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3],\n 1416205885: (i) => [i.Axis1, i.Axis2, i.LocalOrigin, i.Scale, i.Axis3, i.Scale2, i.Scale3],\n 1383045692: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius],\n 2205249479: (i) => [i.CfsFaces],\n 776857604: (i) => [i.Name, i.Red, i.Green, i.Blue],\n 2542286263: (i) => [i.Name, i.Specification, i.UsageName, i.HasProperties],\n 2485617015: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve],\n 2574617495: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity],\n 3419103109: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 1815067380: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2506170314: (i) => [i.Position],\n 2147822146: (i) => [i.TreeRootExpression],\n 2601014836: (_) => [],\n 2827736869: (i) => [i.BasisSurface, i.OuterBoundary, i.InnerBoundaries],\n 2629017746: (i) => [i.BasisSurface, i.Boundaries, { type: 3, value: BooleanConvert(i.ImplicitOuter.value) }],\n 4212018352: (i) => [i.Transition, i.Placement, Labelise(i.SegmentStart), Labelise(i.SegmentLength), i.ParentCurve],\n 32440307: (i) => [i.DirectionRatios],\n 593015953: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam)],\n 1472233963: (i) => [i.EdgeList],\n 1883228015: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.MethodOfMeasurement, i.Quantities],\n 339256511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2777663545: (i) => [i.Position],\n 2835456948: (i) => [i.ProfileType, i.ProfileName, i.Position, i.SemiAxis1, i.SemiAxis2],\n 4024345920: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType],\n 477187591: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth],\n 2804161546: (i) => [i.SweptArea, i.Position, i.ExtrudedDirection, i.Depth, i.EndSweptArea],\n 2047409740: (i) => [i.FbsmFaces],\n 374418227: (i) => [i.HatchLineAppearance, i.StartOfNextHatchLine, i.PointOfReferenceHatchLine, i.PatternStart, i.HatchLineAngle],\n 315944413: (i) => [i.TilingPattern, i.Tiles, i.TilingScale],\n 2652556860: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.FixedReference],\n 4238390223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1268542332: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.AssemblyPlace, i.PredefinedType],\n 4095422895: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 987898635: (i) => [i.Elements],\n 1484403080: (i) => [i.ProfileType, i.ProfileName, i.Position, i.OverallWidth, i.OverallDepth, i.WebThickness, i.FlangeThickness, i.FilletRadius, i.FlangeEdgeRadius, i.FlangeSlope],\n 178912537: (i) => [i.CoordIndex],\n 2294589976: (i) => [i.CoordIndex, i.InnerCoordIndices],\n 3465909080: (i) => [i.Maps, i.MappedTo, i.TexCoords, i.TexCoordIndices],\n 572779678: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Depth, i.Width, i.Thickness, i.FilletRadius, i.EdgeRadius, i.LegSlope],\n 428585644: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1281925730: (i) => [i.Pnt, i.Dir],\n 1425443689: (i) => [i.Outer],\n 3888040117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 590820931: (i) => [i.BasisCurve],\n 3388369263: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3505215534: (i) => [i.BasisCurve, i.Distance, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.RefDirection],\n 2485787929: (i) => [i.BasisCurve, i.OffsetValues, i.Tag],\n 1682466193: (i) => [i.BasisSurface, i.ReferenceCurve],\n 603570806: (i) => [i.SizeInX, i.SizeInY, i.Placement],\n 220341763: (i) => [i.Position],\n 3381221214: (i) => [i.Position, i.CoefficientsX, i.CoefficientsY, i.CoefficientsZ],\n 759155922: (i) => [i.Name],\n 2559016684: (i) => [i.Name],\n 3967405729: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 569719735: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType],\n 2945172077: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 4208778838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 103090709: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 653396225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.Phase, i.RepresentationContexts, i.UnitsInContext],\n 871118103: (i) => [i.Name, i.Specification, !i.UpperBoundValue ? null : Labelise(i.UpperBoundValue), !i.LowerBoundValue ? null : Labelise(i.LowerBoundValue), i.Unit, !i.SetPointValue ? null : Labelise(i.SetPointValue)],\n 4166981789: (i) => [i.Name, i.Specification, !i.EnumerationValues ? null : i.EnumerationValues.map((p) => Labelise(p)), i.EnumerationReference],\n 2752243245: (i) => [i.Name, i.Specification, !i.ListValues ? null : i.ListValues.map((p) => Labelise(p)), i.Unit],\n 941946838: (i) => [i.Name, i.Specification, i.UsageName, i.PropertyReference],\n 1451395588: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.HasProperties],\n 492091185: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.ApplicableEntity, i.HasPropertyTemplates],\n 3650150729: (i) => [i.Name, i.Specification, !i.NominalValue ? null : Labelise(i.NominalValue), i.Unit],\n 110355661: (i) => [i.Name, i.Specification, !i.DefiningValues ? null : i.DefiningValues.map((p) => Labelise(p)), !i.DefinedValues ? null : i.DefinedValues.map((p) => Labelise(p)), i.Expression, i.DefiningUnit, i.DefinedUnit, i.CurveInterpolation],\n 3521284610: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 2770003689: (i) => [i.ProfileType, i.ProfileName, i.Position, i.XDim, i.YDim, i.WallThickness, i.InnerFilletRadius, i.OuterFilletRadius],\n 2798486643: (i) => [i.Position, i.XLength, i.YLength, i.Height],\n 3454111270: (i) => [i.BasisSurface, i.U1, i.V1, i.U2, i.V2, { type: 3, value: BooleanConvert(i.Usense.value) }, { type: 3, value: BooleanConvert(i.Vsense.value) }],\n 3765753017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.DefinitionType, i.ReinforcementSectionDefinitions],\n 3939117080: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType],\n 1683148259: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingActor, i.ActingRole],\n 2495723537: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingControl],\n 1307041759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup],\n 1027710054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingGroup, i.Factor],\n 4278684876: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProcess, i.QuantityInProcess],\n 2857406711: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingProduct],\n 205026976: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatedObjectsType, i.RelatingResource],\n 1865459582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects],\n 4095574036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingApproval],\n 919958153: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingClassification],\n 2728634034: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.Intent, i.RelatingConstraint],\n 982818633: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingDocument],\n 3840914261: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingLibrary],\n 2655215786: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingMaterial],\n 1033248425: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingProfileDef],\n 826625072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1204542856: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement],\n 3945020480: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RelatingPriorities, i.RelatedPriorities, i.RelatedConnectionType, i.RelatingConnectionType],\n 4201705270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedElement],\n 3190031847: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPort, i.RelatedPort, i.RealizingElement],\n 2127690289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedStructuralActivity],\n 1638771189: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem],\n 504942748: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingStructuralMember, i.RelatedStructuralConnection, i.AppliedCondition, i.AdditionalConditions, i.SupportedLength, i.ConditionCoordinateSystem, i.ConnectionConstraint],\n 3678494232: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ConnectionGeometry, i.RelatingElement, i.RelatedElement, i.RealizingElements, i.ConnectionType],\n 3242617779: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 886880790: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedCoverings],\n 2802773753: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedCoverings],\n 2565941209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingContext, i.RelatedDefinitions],\n 2551354335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 693640335: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description],\n 1462361463: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingObject],\n 4186316022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingPropertyDefinition],\n 307848117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedPropertySets, i.RelatingTemplate],\n 781010003: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedObjects, i.RelatingType],\n 3940055652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingOpeningElement, i.RelatedBuildingElement],\n 279856033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedControlElements, i.RelatingFlowElement],\n 427948657: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedElement, i.InterferenceGeometry, i.InterferenceSpace, i.InterferenceType, { type: 3, value: BooleanConvert(i.ImpliedOrder.value) }],\n 3268803585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 1441486842: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingPositioningElement, i.RelatedProducts],\n 750771296: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedFeatureElement],\n 1245217292: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatedElements, i.RelatingStructure],\n 4122056220: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingProcess, i.RelatedProcess, i.TimeLag, i.SequenceType, i.UserDefinedSequenceType],\n 366585022: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSystem, i.RelatedBuildings],\n 3451746338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary],\n 3523091289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary],\n 1521410863: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingSpace, i.RelatedBuildingElement, i.ConnectionGeometry, i.PhysicalOrVirtualBoundary, i.InternalOrExternalBoundary, i.ParentBoundary, i.CorrespondingBoundary],\n 1401173127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingBuildingElement, i.RelatedOpeningElement],\n 816062949: (i) => [i.Transition, { type: 3, value: BooleanConvert(i.SameSense.value) }, i.ParentCurve, i.ParamLength],\n 2914609552: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription],\n 1856042241: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle],\n 3243963512: (i) => [i.SweptArea, i.Position, i.Axis, i.Angle, i.EndSweptArea],\n 4158566097: (i) => [i.Position, i.Height, i.BottomRadius],\n 3626867408: (i) => [i.Position, i.Height, i.Radius],\n 1862484736: (i) => [i.Directrix, i.CrossSections],\n 1290935644: (i) => [i.Directrix, i.CrossSections, i.CrossSectionPositions],\n 1356537516: (i) => [i.Directrix, i.CrossSectionPositions, i.CrossSections],\n 3663146110: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.TemplateType, i.PrimaryMeasureType, i.SecondaryMeasureType, i.Enumerators, i.PrimaryUnit, i.SecondaryUnit, i.Expression, i.AccessState],\n 1412071761: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 710998568: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2706606064: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 3893378262: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 463610769: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 2481509218: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 451544542: (i) => [i.Position, i.Radius],\n 4015995234: (i) => [i.Position, i.Radius],\n 2735484536: (i) => [i.Position],\n 3544373492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3136571912: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 530289379: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3689010777: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 3979015343: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 2218152070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Thickness],\n 603775116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 4095615324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 699246055: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2028607225: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.ReferenceSurface],\n 2809605785: (i) => [i.SweptCurve, i.Position, i.ExtrudedDirection, i.Depth],\n 4124788165: (i) => [i.SweptCurve, i.Position, i.AxisPosition],\n 1580310250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3473067441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Status, i.WorkMethod, { type: 3, value: BooleanConvert(i.IsMilestone.value) }, i.Priority, i.TaskTime, i.PredefinedType],\n 3206491090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ProcessType, i.PredefinedType, i.WorkMethod],\n 2387106220: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }],\n 782932809: (i) => [i.Position, i.CubicTerm, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 1935646853: (i) => [i.Position, i.MajorRadius, i.MinorRadius],\n 3665877780: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2916149573: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Normals, i.CoordIndex, i.PnIndex],\n 1229763772: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Normals, i.CoordIndex, i.PnIndex, i.Flags],\n 3651464721: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 336235671: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.TransomThickness, i.MullionThickness, i.FirstTransomOffset, i.SecondTransomOffset, i.FirstMullionOffset, i.SecondMullionOffset, i.ShapeAspectStyle, i.LiningOffset, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 512836454: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 2296667514: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor],\n 1635779807: (i) => [i.Outer],\n 2603310189: (i) => [i.Outer, i.Voids],\n 1674181508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 2887950389: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 167062518: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec],\n 1334484129: (i) => [i.Position, i.XLength, i.YLength, i.ZLength],\n 3649129432: (i) => [i.Operator, i.FirstOperand, i.SecondOperand],\n 1260505505: (_) => [],\n 3124254112: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.Elevation],\n 1626504194: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2197970202: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2937912522: (i) => [i.ProfileType, i.ProfileName, i.Position, i.Radius, i.WallThickness],\n 3893394355: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3497074424: (i) => [i.Position, i.ClothoidConstant],\n 300633059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3875453745: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.UsageName, i.TemplateType, i.HasPropertyTemplates],\n 3732776249: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 15328376: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2510884976: (i) => [i.Position],\n 2185764099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 4105962743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1525564444: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.Identification, i.LongDescription, i.ResourceType, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2559216714: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity],\n 3293443760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification],\n 2000195564: (i) => [i.Position, i.CosineTerm, i.ConstantTerm],\n 3895139033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.CostValues, i.CostQuantities],\n 1419761937: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.SubmittedOn, i.UpdateDate],\n 4189326743: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1916426348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3295246426: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1457835157: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1213902940: (i) => [i.Position, i.Radius],\n 1306400036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 4234616927: (i) => [i.SweptArea, i.Position, i.Directrix, !i.StartParam ? null : Labelise(i.StartParam), !i.EndParam ? null : Labelise(i.EndParam), i.FixedReference],\n 3256556792: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3849074793: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2963535650: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.LiningDepth, i.LiningThickness, i.ThresholdDepth, i.ThresholdThickness, i.TransomThickness, i.TransomOffset, i.LiningOffset, i.ThresholdOffset, i.CasingThickness, i.CasingDepth, i.ShapeAspectStyle, i.LiningToPanelOffsetX, i.LiningToPanelOffsetY],\n 1714330368: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.PanelDepth, i.PanelOperation, i.PanelWidth, i.PanelPosition, i.ShapeAspectStyle],\n 2323601079: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.OperationType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedOperationType],\n 445594917: (i) => [i.Name],\n 4006246654: (i) => [i.Name],\n 1758889154: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4123344466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.AssemblyPlace, i.PredefinedType],\n 2397081782: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1623761950: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2590856083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1704287377: (i) => [i.Position, i.SemiAxis1, i.SemiAxis2],\n 2107101300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 132023988: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3174744832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3390157468: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4148101412: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType, i.EventTriggerType, i.UserDefinedEventTriggerType, i.EventOccurenceTime],\n 2853485674: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName],\n 807026263: (i) => [i.Outer],\n 3737207727: (i) => [i.Outer, i.Voids],\n 24185140: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType],\n 1310830890: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType],\n 4228831410: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 647756555: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2489546625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2827207264: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2143335405: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1287392070: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3907093117: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3198132628: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3815607619: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1482959167: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1834744321: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1339347760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2297155007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 3009222698: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1893162501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 263784265: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1509553395: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3493046030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4230923436: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1594536857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2898700619: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.BaseCurve, i.EndPoint],\n 2706460486: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 1251058090: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1806887404: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2568555532: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3948183225: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2571569899: (i) => [i.Points, !i.Segments ? null : i.Segments.map((p) => Labelise(p)), { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3946677679: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3113134337: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 2391368822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.Jurisdiction, i.ResponsiblePersons, i.LastUpdateDate, i.CurrentValue, i.OriginalValue],\n 4288270099: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 679976338: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, { type: 3, value: BooleanConvert(i.Mountable.value) }],\n 3827777499: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1051575348: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1161773419: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2176059722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1770583370: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 525669439: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 976884017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 377706215: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NominalDiameter, i.NominalLength, i.PredefinedType],\n 2108223431: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.NominalLength],\n 1114901282: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3181161470: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1950438474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 710110818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 977012517: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 506776471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4143007308: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheActor, i.PredefinedType],\n 3588315303: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2837617999: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 514975943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2382730787: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LifeCyclePhase, i.PredefinedType],\n 3566463478: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.OperationType, i.PanelPosition, i.FrameDepth, i.FrameThickness, i.ShapeAspectStyle],\n 3327091369: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1158309216: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 804291784: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4231323485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4017108033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2839578677: (i) => [i.Coordinates, i.Closed == null ? null : { type: 3, value: BooleanConvert(i.Closed.value) }, i.Faces, i.PnIndex],\n 3724593414: (i) => [i.Points],\n 3740093272: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1946335990: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 2744685151: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.PredefinedType],\n 2904328755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 3651124850: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1842657554: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2250791053: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1763565496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2893384427: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3992365140: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 1891881377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 2324767716: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1469900589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 683857671: (i) => [i.UDegree, i.VDegree, i.ControlPointsList, i.SurfaceForm, { type: 3, value: BooleanConvert(i.UClosed.value) }, { type: 3, value: BooleanConvert(i.VClosed.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.UMultiplicities, i.VMultiplicities, i.UKnots, i.VKnots, i.KnotSpec, i.WeightsData],\n 4021432810: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 3027567501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade],\n 964333572: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 2320036040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.PredefinedType],\n 2310774935: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.MeshLength, i.MeshWidth, i.LongitudinalBarNominalDiameter, i.TransverseBarNominalDiameter, i.LongitudinalBarCrossSectionArea, i.TransverseBarCrossSectionArea, i.LongitudinalBarSpacing, i.TransverseBarSpacing, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 3818125796: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingElement, i.RelatedSurfaceFeatures],\n 160246688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.RelatingObject, i.RelatedObjects],\n 146592293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 550521510: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 2781568857: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1768891740: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2157484638: (i) => [i.Curve3D, i.AssociatedGeometry, i.MasterRepresentation],\n 3649235739: (i) => [i.Position, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 544395925: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.BaseCurve, i.EndPoint],\n 1027922057: (i) => [i.Position, i.SepticTerm, i.SexticTerm, i.QuinticTerm, i.QuarticTerm, i.CubicTerm, i.QuadraticTerm, i.LinearTerm, i.ConstantTerm],\n 4074543187: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 33720170: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3599934289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1894708472: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 42703149: (i) => [i.Position, i.SineTerm, i.LinearTerm, i.ConstantTerm],\n 4097777520: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.RefLatitude, i.RefLongitude, i.RefElevation, i.LandTitleNumber, i.SiteAddress],\n 2533589738: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1072016465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3856911033: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType, i.ElevationWithFlooring],\n 1305183839: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3812236995: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.LongName],\n 3112655638: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1039846685: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 338393293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 682877961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 1179482911: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 1004757350: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 4243806635: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.AxisDirection],\n 214636428: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2445595289: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType, i.Axis],\n 2757150158: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.PredefinedType],\n 1807405624: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1252848954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose],\n 2082059205: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }],\n 734778138: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition, i.ConditionCoordinateSystem],\n 1235345126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal],\n 2986769608: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.TheoryType, i.ResultForLoadGroup, { type: 3, value: BooleanConvert(i.IsLinear.value) }],\n 3657597509: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1975003073: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedCondition],\n 148013059: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 3101698114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2315554128: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2254336722: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType],\n 413509423: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 5716631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3824725483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.TensionForce, i.PreStress, i.FrictionCoefficient, i.AnchorageSlip, i.MinCurvatureRadius],\n 2347447852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 3081323446: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3663046924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.PredefinedType],\n 2281632017: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2415094496: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.SheathDiameter],\n 618700268: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1692211062: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2097647324: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1953115116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3593883385: (i) => [i.BasisCurve, i.Trim1, i.Trim2, { type: 3, value: BooleanConvert(i.SenseAgreement.value) }, i.MasterRepresentation],\n 1600972822: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1911125066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 728799441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 840318589: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1530820697: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3956297820: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2391383451: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3313531582: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2769231204: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 926996030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1898987631: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1133259667: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4009809668: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.PartitioningType, i.ParameterTakesPrecedence == null ? null : { type: 3, value: BooleanConvert(i.ParameterTakesPrecedence.value) }, i.UserDefinedPartitioningType],\n 4088093105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.WorkingTimes, i.ExceptionTimes, i.PredefinedType],\n 1028945134: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime],\n 4218914973: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 3342526732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.CreationDate, i.Creators, i.Purpose, i.Duration, i.TotalFloat, i.StartTime, i.FinishTime, i.PredefinedType],\n 1033361043: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName],\n 3821786052: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.PredefinedType, i.Status, i.LongDescription],\n 1411407467: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3352864051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1871374353: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4266260250: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.RailHeadDistance],\n 1545765605: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 317615605: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.DesignParameters],\n 1662888072: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 3460190687: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.OriginalValue, i.CurrentValue, i.TotalReplacementCost, i.Owner, i.User, i.ResponsiblePerson, i.IncorporationDate, i.DepreciatedValue],\n 1532957894: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1967976161: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 2461110595: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec],\n 819618141: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3649138523: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 231477066: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1136057603: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 644574406: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.PredefinedType],\n 963979645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.UsageType, i.PredefinedType],\n 4031249490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.CompositionType, i.ElevationOfRefHeight, i.ElevationOfTerrain, i.BuildingAddress],\n 2979338954: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 39481116: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1909888760: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1177604601: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 1876633798: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3862327254: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.LongName],\n 2188180465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 395041908: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3293546465: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2674252688: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1285652485: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3203706013: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2951183804: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3296154744: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2611217952: (i) => [i.Position, i.Radius],\n 1677625105: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2301859152: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 843113511: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 400855858: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3850581409: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2816379211: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3898045240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 1060000209: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 488727124: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.Identification, i.LongDescription, i.Usage, i.BaseCosts, i.BaseQuantity, i.PredefinedType],\n 2940368186: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 335055490: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2954562838: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1502416096: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1973544240: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3495092785: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3961806047: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3426335179: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1335981549: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2635815018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 479945903: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1599208980: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2063403501: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType],\n 1945004755: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3040386961: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3041715199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.FlowDirection, i.PredefinedType, i.SystemType],\n 3205830791: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 395920057: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.OperationType, i.UserDefinedOperationType],\n 869906466: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3760055223: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2030761528: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3071239417: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1077100507: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3376911765: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 663422040: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2417008758: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3277789161: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2142170206: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1534661035: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1217240411: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 712377611: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1658829314: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2814081492: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3747195512: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 484807127: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1209101575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.LongName, i.PredefinedType],\n 346874300: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1810631287: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4222183408: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2058353004: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4278956645: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 4037862832: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 2188021234: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3132237377: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 987401354: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 707683696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2223149337: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3508470533: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 900683007: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2713699986: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 3009204131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.UAxes, i.VAxes, i.WAxes, i.PredefinedType],\n 3319311131: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2068733104: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4175244083: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2176052936: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2696325953: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, { type: 3, value: BooleanConvert(i.Mountable.value) }],\n 76236018: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 629592764: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1154579445: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation],\n 1638804497: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1437502449: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1073191201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2078563270: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 234836483: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2474470126: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2182337498: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 144952367: (i) => [i.Segments, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }],\n 3694346114: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1383356374: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1687234759: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType, i.ConstructionType],\n 310824031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3612865200: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3171933400: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 738039164: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 655969474: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 90941305: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3290496277: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2262370178: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3024970846: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3283111854: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1232101972: (i) => [i.Degree, i.ControlPointsList, i.CurveForm, { type: 3, value: BooleanConvert(i.ClosedCurve.value) }, { type: 3, value: BooleanConvert(i.SelfIntersect.value) }, i.KnotMultiplicities, i.Knots, i.KnotSpec, i.WeightsData],\n 3798194928: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 979691226: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.SteelGrade, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.PredefinedType, i.BarSurface],\n 2572171363: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType, i.NominalDiameter, i.CrossSectionArea, i.BarLength, i.BarSurface, i.BendingShapeCode, !i.BendingParameters ? null : i.BendingParameters.map((p) => Labelise(p))],\n 2016517767: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3053780830: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1783015770: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1329646415: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 991950508: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1529196076: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3420628829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1999602285: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1404847402: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 331165859: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4252922144: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.NumberOfRisers, i.NumberOfTreads, i.RiserHeight, i.TreadLength, i.PredefinedType],\n 2515109513: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.OrientationOf2DPlane, i.LoadedBy, i.HasResults, i.SharedPlacement],\n 385403989: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.PredefinedType, i.ActionType, i.ActionSource, i.Coefficient, i.Purpose, i.SelfWeightCoefficients],\n 1621171031: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.AppliedLoad, i.GlobalOrLocal, i.DestabilizingLoad == null ? null : { type: 3, value: BooleanConvert(i.DestabilizingLoad.value) }, i.ProjectedOrTrue, i.PredefinedType],\n 1162798199: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 812556717: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3425753595: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3825984169: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1620046519: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3026737570: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3179687236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 4292641817: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4207607924: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2391406946: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3512223829: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4237592921: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3304561284: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.OverallHeight, i.OverallWidth, i.PredefinedType, i.PartitioningType, i.UserDefinedPartitioningType],\n 2874132201: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 1634111441: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 177149247: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2056796094: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3001207471: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 325726236: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.PredefinedType],\n 277319702: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 753842376: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4196446775: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 32344328: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3314249567: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1095909175: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2938176219: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 635142910: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3758799889: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1051757585: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4217484030: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3999819293: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3902619387: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 639361253: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3221913625: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3571504051: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2272882330: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 578613899: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ApplicableOccurrence, i.HasPropertySets, i.RepresentationMaps, i.Tag, i.ElementType, i.PredefinedType],\n 3460952963: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4136498852: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3640358203: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4074379575: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3693000487: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1052013943: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 562808652: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.LongName, i.PredefinedType],\n 1062813311: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 342316401: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3518393246: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1360408905: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1904799276: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 862014818: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3310460725: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 24726584: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 264262732: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 402227799: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1003880860: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3415622556: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 819412036: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 1426591983: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 182646315: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 2680139844: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 1971632696: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag],\n 2295281155: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4086658281: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 630975310: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 4288193352: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 3087945054: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType],\n 25142252: (i) => [i.GlobalId, i.OwnerHistory, i.Name, i.Description, i.ObjectType, i.ObjectPlacement, i.Representation, i.Tag, i.PredefinedType]\n};\nTypeInitialisers[3] = {\n 3699917729: (v) => new IFC4X3.IfcAbsorbedDoseMeasure(v),\n 4182062534: (v) => new IFC4X3.IfcAccelerationMeasure(v),\n 360377573: (v) => new IFC4X3.IfcAmountOfSubstanceMeasure(v),\n 632304761: (v) => new IFC4X3.IfcAngularVelocityMeasure(v),\n 3683503648: (v) => new IFC4X3.IfcArcIndex(v.map((x) => x.value)),\n 1500781891: (v) => new IFC4X3.IfcAreaDensityMeasure(v),\n 2650437152: (v) => new IFC4X3.IfcAreaMeasure(v),\n 2314439260: (v) => new IFC4X3.IfcBinary(v),\n 2735952531: (v) => new IFC4X3.IfcBoolean(v),\n 1867003952: (v) => new IFC4X3.IfcBoxAlignment(v),\n 1683019596: (v) => new IFC4X3.IfcCardinalPointReference(v),\n 2991860651: (v) => new IFC4X3.IfcComplexNumber(v.map((x) => x.value)),\n 3812528620: (v) => new IFC4X3.IfcCompoundPlaneAngleMeasure(v.map((x) => x.value)),\n 3238673880: (v) => new IFC4X3.IfcContextDependentMeasure(v),\n 1778710042: (v) => new IFC4X3.IfcCountMeasure(v),\n 94842927: (v) => new IFC4X3.IfcCurvatureMeasure(v),\n 937566702: (v) => new IFC4X3.IfcDate(v),\n 2195413836: (v) => new IFC4X3.IfcDateTime(v),\n 86635668: (v) => new IFC4X3.IfcDayInMonthNumber(v),\n 3701338814: (v) => new IFC4X3.IfcDayInWeekNumber(v),\n 1514641115: (v) => new IFC4X3.IfcDescriptiveMeasure(v),\n 4134073009: (v) => new IFC4X3.IfcDimensionCount(v),\n 524656162: (v) => new IFC4X3.IfcDoseEquivalentMeasure(v),\n 2541165894: (v) => new IFC4X3.IfcDuration(v),\n 69416015: (v) => new IFC4X3.IfcDynamicViscosityMeasure(v),\n 1827137117: (v) => new IFC4X3.IfcElectricCapacitanceMeasure(v),\n 3818826038: (v) => new IFC4X3.IfcElectricChargeMeasure(v),\n 2093906313: (v) => new IFC4X3.IfcElectricConductanceMeasure(v),\n 3790457270: (v) => new IFC4X3.IfcElectricCurrentMeasure(v),\n 2951915441: (v) => new IFC4X3.IfcElectricResistanceMeasure(v),\n 2506197118: (v) => new IFC4X3.IfcElectricVoltageMeasure(v),\n 2078135608: (v) => new IFC4X3.IfcEnergyMeasure(v),\n 1102727119: (v) => new IFC4X3.IfcFontStyle(v),\n 2715512545: (v) => new IFC4X3.IfcFontVariant(v),\n 2590844177: (v) => new IFC4X3.IfcFontWeight(v),\n 1361398929: (v) => new IFC4X3.IfcForceMeasure(v),\n 3044325142: (v) => new IFC4X3.IfcFrequencyMeasure(v),\n 3064340077: (v) => new IFC4X3.IfcGloballyUniqueId(v),\n 3113092358: (v) => new IFC4X3.IfcHeatFluxDensityMeasure(v),\n 1158859006: (v) => new IFC4X3.IfcHeatingValueMeasure(v),\n 983778844: (v) => new IFC4X3.IfcIdentifier(v),\n 3358199106: (v) => new IFC4X3.IfcIlluminanceMeasure(v),\n 2679005408: (v) => new IFC4X3.IfcInductanceMeasure(v),\n 1939436016: (v) => new IFC4X3.IfcInteger(v),\n 3809634241: (v) => new IFC4X3.IfcIntegerCountRateMeasure(v),\n 3686016028: (v) => new IFC4X3.IfcIonConcentrationMeasure(v),\n 3192672207: (v) => new IFC4X3.IfcIsothermalMoistureCapacityMeasure(v),\n 2054016361: (v) => new IFC4X3.IfcKinematicViscosityMeasure(v),\n 3258342251: (v) => new IFC4X3.IfcLabel(v),\n 1275358634: (v) => new IFC4X3.IfcLanguageId(v),\n 1243674935: (v) => new IFC4X3.IfcLengthMeasure(v),\n 1774176899: (v) => new IFC4X3.IfcLineIndex(v.map((x) => x.value)),\n 191860431: (v) => new IFC4X3.IfcLinearForceMeasure(v),\n 2128979029: (v) => new IFC4X3.IfcLinearMomentMeasure(v),\n 1307019551: (v) => new IFC4X3.IfcLinearStiffnessMeasure(v),\n 3086160713: (v) => new IFC4X3.IfcLinearVelocityMeasure(v),\n 503418787: (v) => new IFC4X3.IfcLogical(v),\n 2095003142: (v) => new IFC4X3.IfcLuminousFluxMeasure(v),\n 2755797622: (v) => new IFC4X3.IfcLuminousIntensityDistributionMeasure(v),\n 151039812: (v) => new IFC4X3.IfcLuminousIntensityMeasure(v),\n 286949696: (v) => new IFC4X3.IfcMagneticFluxDensityMeasure(v),\n 2486716878: (v) => new IFC4X3.IfcMagneticFluxMeasure(v),\n 1477762836: (v) => new IFC4X3.IfcMassDensityMeasure(v),\n 4017473158: (v) => new IFC4X3.IfcMassFlowRateMeasure(v),\n 3124614049: (v) => new IFC4X3.IfcMassMeasure(v),\n 3531705166: (v) => new IFC4X3.IfcMassPerLengthMeasure(v),\n 3341486342: (v) => new IFC4X3.IfcModulusOfElasticityMeasure(v),\n 2173214787: (v) => new IFC4X3.IfcModulusOfLinearSubgradeReactionMeasure(v),\n 1052454078: (v) => new IFC4X3.IfcModulusOfRotationalSubgradeReactionMeasure(v),\n 1753493141: (v) => new IFC4X3.IfcModulusOfSubgradeReactionMeasure(v),\n 3177669450: (v) => new IFC4X3.IfcMoistureDiffusivityMeasure(v),\n 1648970520: (v) => new IFC4X3.IfcMolecularWeightMeasure(v),\n 3114022597: (v) => new IFC4X3.IfcMomentOfInertiaMeasure(v),\n 2615040989: (v) => new IFC4X3.IfcMonetaryMeasure(v),\n 765770214: (v) => new IFC4X3.IfcMonthInYearNumber(v),\n 525895558: (v) => new IFC4X3.IfcNonNegativeLengthMeasure(v),\n 2095195183: (v) => new IFC4X3.IfcNormalisedRatioMeasure(v),\n 2395907400: (v) => new IFC4X3.IfcNumericMeasure(v),\n 929793134: (v) => new IFC4X3.IfcPHMeasure(v),\n 2260317790: (v) => new IFC4X3.IfcParameterValue(v),\n 2642773653: (v) => new IFC4X3.IfcPlanarForceMeasure(v),\n 4042175685: (v) => new IFC4X3.IfcPlaneAngleMeasure(v),\n 1790229001: (v) => new IFC4X3.IfcPositiveInteger(v),\n 2815919920: (v) => new IFC4X3.IfcPositiveLengthMeasure(v),\n 3054510233: (v) => new IFC4X3.IfcPositivePlaneAngleMeasure(v),\n 1245737093: (v) => new IFC4X3.IfcPositiveRatioMeasure(v),\n 1364037233: (v) => new IFC4X3.IfcPowerMeasure(v),\n 2169031380: (v) => new IFC4X3.IfcPresentableText(v),\n 3665567075: (v) => new IFC4X3.IfcPressureMeasure(v),\n 2798247006: (v) => new IFC4X3.IfcPropertySetDefinitionSet(v.map((x) => x.value)),\n 3972513137: (v) => new IFC4X3.IfcRadioActivityMeasure(v),\n 96294661: (v) => new IFC4X3.IfcRatioMeasure(v),\n 200335297: (v) => new IFC4X3.IfcReal(v),\n 2133746277: (v) => new IFC4X3.IfcRotationalFrequencyMeasure(v),\n 1755127002: (v) => new IFC4X3.IfcRotationalMassMeasure(v),\n 3211557302: (v) => new IFC4X3.IfcRotationalStiffnessMeasure(v),\n 3467162246: (v) => new IFC4X3.IfcSectionModulusMeasure(v),\n 2190458107: (v) => new IFC4X3.IfcSectionalAreaIntegralMeasure(v),\n 408310005: (v) => new IFC4X3.IfcShearModulusMeasure(v),\n 3471399674: (v) => new IFC4X3.IfcSolidAngleMeasure(v),\n 4157543285: (v) => new IFC4X3.IfcSoundPowerLevelMeasure(v),\n 846465480: (v) => new IFC4X3.IfcSoundPowerMeasure(v),\n 3457685358: (v) => new IFC4X3.IfcSoundPressureLevelMeasure(v),\n 993287707: (v) => new IFC4X3.IfcSoundPressureMeasure(v),\n 3477203348: (v) => new IFC4X3.IfcSpecificHeatCapacityMeasure(v),\n 2757832317: (v) => new IFC4X3.IfcSpecularExponent(v),\n 361837227: (v) => new IFC4X3.IfcSpecularRoughness(v),\n 58845555: (v) => new IFC4X3.IfcTemperatureGradientMeasure(v),\n 1209108979: (v) => new IFC4X3.IfcTemperatureRateOfChangeMeasure(v),\n 2801250643: (v) => new IFC4X3.IfcText(v),\n 1460886941: (v) => new IFC4X3.IfcTextAlignment(v),\n 3490877962: (v) => new IFC4X3.IfcTextDecoration(v),\n 603696268: (v) => new IFC4X3.IfcTextFontName(v),\n 296282323: (v) => new IFC4X3.IfcTextTransformation(v),\n 232962298: (v) => new IFC4X3.IfcThermalAdmittanceMeasure(v),\n 2645777649: (v) => new IFC4X3.IfcThermalConductivityMeasure(v),\n 2281867870: (v) => new IFC4X3.IfcThermalExpansionCoefficientMeasure(v),\n 857959152: (v) => new IFC4X3.IfcThermalResistanceMeasure(v),\n 2016195849: (v) => new IFC4X3.IfcThermalTransmittanceMeasure(v),\n 743184107: (v) => new IFC4X3.IfcThermodynamicTemperatureMeasure(v),\n 4075327185: (v) => new IFC4X3.IfcTime(v),\n 2726807636: (v) => new IFC4X3.IfcTimeMeasure(v),\n 2591213694: (v) => new IFC4X3.IfcTimeStamp(v),\n 1278329552: (v) => new IFC4X3.IfcTorqueMeasure(v),\n 950732822: (v) => new IFC4X3.IfcURIReference(v),\n 3345633955: (v) => new IFC4X3.IfcVaporPermeabilityMeasure(v),\n 3458127941: (v) => new IFC4X3.IfcVolumeMeasure(v),\n 2593997549: (v) => new IFC4X3.IfcVolumetricFlowRateMeasure(v),\n 51269191: (v) => new IFC4X3.IfcWarpingConstantMeasure(v),\n 1718600412: (v) => new IFC4X3.IfcWarpingMomentMeasure(v)\n};\nvar IFC4X3;\n(function(IFC4X32) {\n class IfcAbsorbedDoseMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCABSORBEDDOSEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAbsorbedDoseMeasure = IfcAbsorbedDoseMeasure;\n class IfcAccelerationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCACCELERATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAccelerationMeasure = IfcAccelerationMeasure;\n class IfcAmountOfSubstanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAMOUNTOFSUBSTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAmountOfSubstanceMeasure = IfcAmountOfSubstanceMeasure;\n class IfcAngularVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCANGULARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAngularVelocityMeasure = IfcAngularVelocityMeasure;\n class IfcArcIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcArcIndex = IfcArcIndex;\n ;\n class IfcAreaDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREADENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAreaDensityMeasure = IfcAreaDensityMeasure;\n class IfcAreaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCAREAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcAreaMeasure = IfcAreaMeasure;\n class IfcBinary {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCBINARY\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcBinary = IfcBinary;\n class IfcBoolean {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCBOOLEAN\";\n this.value = v === null ? v : v == \"T\" ? true : false;\n }\n }\n IFC4X32.IfcBoolean = IfcBoolean;\n class IfcBoxAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCBOXALIGNMENT\";\n }\n }\n IFC4X32.IfcBoxAlignment = IfcBoxAlignment;\n class IfcCardinalPointReference {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCARDINALPOINTREFERENCE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCardinalPointReference = IfcCardinalPointReference;\n class IfcComplexNumber {\n constructor(value) {\n this.value = value;\n this.type = 4;\n }\n }\n IFC4X32.IfcComplexNumber = IfcComplexNumber;\n ;\n class IfcCompoundPlaneAngleMeasure {\n constructor(value) {\n this.value = value;\n this.type = 10;\n }\n }\n IFC4X32.IfcCompoundPlaneAngleMeasure = IfcCompoundPlaneAngleMeasure;\n ;\n class IfcContextDependentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCONTEXTDEPENDENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcContextDependentMeasure = IfcContextDependentMeasure;\n class IfcCountMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCCOUNTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCountMeasure = IfcCountMeasure;\n class IfcCurvatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCCURVATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcCurvatureMeasure = IfcCurvatureMeasure;\n class IfcDate {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATE\";\n }\n }\n IFC4X32.IfcDate = IfcDate;\n class IfcDateTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDATETIME\";\n }\n }\n IFC4X32.IfcDateTime = IfcDateTime;\n class IfcDayInMonthNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINMONTHNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDayInMonthNumber = IfcDayInMonthNumber;\n class IfcDayInWeekNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDAYINWEEKNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDayInWeekNumber = IfcDayInWeekNumber;\n class IfcDescriptiveMeasure {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDESCRIPTIVEMEASURE\";\n }\n }\n IFC4X32.IfcDescriptiveMeasure = IfcDescriptiveMeasure;\n class IfcDimensionCount {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCDIMENSIONCOUNT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDimensionCount = IfcDimensionCount;\n class IfcDoseEquivalentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDOSEEQUIVALENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDoseEquivalentMeasure = IfcDoseEquivalentMeasure;\n class IfcDuration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCDURATION\";\n }\n }\n IFC4X32.IfcDuration = IfcDuration;\n class IfcDynamicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCDYNAMICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcDynamicViscosityMeasure = IfcDynamicViscosityMeasure;\n class IfcElectricCapacitanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCAPACITANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricCapacitanceMeasure = IfcElectricCapacitanceMeasure;\n class IfcElectricChargeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCHARGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricChargeMeasure = IfcElectricChargeMeasure;\n class IfcElectricConductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCONDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricConductanceMeasure = IfcElectricConductanceMeasure;\n class IfcElectricCurrentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICCURRENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricCurrentMeasure = IfcElectricCurrentMeasure;\n class IfcElectricResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricResistanceMeasure = IfcElectricResistanceMeasure;\n class IfcElectricVoltageMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCELECTRICVOLTAGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcElectricVoltageMeasure = IfcElectricVoltageMeasure;\n class IfcEnergyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCENERGYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcEnergyMeasure = IfcEnergyMeasure;\n class IfcFontStyle {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTSTYLE\";\n }\n }\n IFC4X32.IfcFontStyle = IfcFontStyle;\n class IfcFontVariant {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTVARIANT\";\n }\n }\n IFC4X32.IfcFontVariant = IfcFontVariant;\n class IfcFontWeight {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCFONTWEIGHT\";\n }\n }\n IFC4X32.IfcFontWeight = IfcFontWeight;\n class IfcForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcForceMeasure = IfcForceMeasure;\n class IfcFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcFrequencyMeasure = IfcFrequencyMeasure;\n class IfcGloballyUniqueId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCGLOBALLYUNIQUEID\";\n }\n }\n IFC4X32.IfcGloballyUniqueId = IfcGloballyUniqueId;\n class IfcHeatFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcHeatFluxDensityMeasure = IfcHeatFluxDensityMeasure;\n class IfcHeatingValueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCHEATINGVALUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcHeatingValueMeasure = IfcHeatingValueMeasure;\n class IfcIdentifier {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCIDENTIFIER\";\n }\n }\n IFC4X32.IfcIdentifier = IfcIdentifier;\n class IfcIlluminanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCILLUMINANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIlluminanceMeasure = IfcIlluminanceMeasure;\n class IfcInductanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCINDUCTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcInductanceMeasure = IfcInductanceMeasure;\n class IfcInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcInteger = IfcInteger;\n class IfcIntegerCountRateMeasure {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCINTEGERCOUNTRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIntegerCountRateMeasure = IfcIntegerCountRateMeasure;\n class IfcIonConcentrationMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCIONCONCENTRATIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIonConcentrationMeasure = IfcIonConcentrationMeasure;\n class IfcIsothermalMoistureCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCISOTHERMALMOISTURECAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcIsothermalMoistureCapacityMeasure = IfcIsothermalMoistureCapacityMeasure;\n class IfcKinematicViscosityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCKINEMATICVISCOSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcKinematicViscosityMeasure = IfcKinematicViscosityMeasure;\n class IfcLabel {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLABEL\";\n }\n }\n IFC4X32.IfcLabel = IfcLabel;\n class IfcLanguageId {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCLANGUAGEID\";\n }\n }\n IFC4X32.IfcLanguageId = IfcLanguageId;\n class IfcLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLengthMeasure = IfcLengthMeasure;\n class IfcLineIndex {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcLineIndex = IfcLineIndex;\n ;\n class IfcLinearForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearForceMeasure = IfcLinearForceMeasure;\n class IfcLinearMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearMomentMeasure = IfcLinearMomentMeasure;\n class IfcLinearStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearStiffnessMeasure = IfcLinearStiffnessMeasure;\n class IfcLinearVelocityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLINEARVELOCITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLinearVelocityMeasure = IfcLinearVelocityMeasure;\n class IfcLogical {\n constructor(v) {\n this.type = 3;\n this.name = \"IFCLOGICAL\";\n this.value = v === null ? v : v == \"T\" ? 1 : v == \"F\" ? 0 : 2;\n }\n }\n IFC4X32.IfcLogical = IfcLogical;\n class IfcLuminousFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousFluxMeasure = IfcLuminousFluxMeasure;\n class IfcLuminousIntensityDistributionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousIntensityDistributionMeasure = IfcLuminousIntensityDistributionMeasure;\n class IfcLuminousIntensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCLUMINOUSINTENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcLuminousIntensityMeasure = IfcLuminousIntensityMeasure;\n class IfcMagneticFluxDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMagneticFluxDensityMeasure = IfcMagneticFluxDensityMeasure;\n class IfcMagneticFluxMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMAGNETICFLUXMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMagneticFluxMeasure = IfcMagneticFluxMeasure;\n class IfcMassDensityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSDENSITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassDensityMeasure = IfcMassDensityMeasure;\n class IfcMassFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassFlowRateMeasure = IfcMassFlowRateMeasure;\n class IfcMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassMeasure = IfcMassMeasure;\n class IfcMassPerLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMASSPERLENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMassPerLengthMeasure = IfcMassPerLengthMeasure;\n class IfcModulusOfElasticityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFELASTICITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfElasticityMeasure = IfcModulusOfElasticityMeasure;\n class IfcModulusOfLinearSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfLinearSubgradeReactionMeasure = IfcModulusOfLinearSubgradeReactionMeasure;\n class IfcModulusOfRotationalSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfRotationalSubgradeReactionMeasure = IfcModulusOfRotationalSubgradeReactionMeasure;\n class IfcModulusOfSubgradeReactionMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMODULUSOFSUBGRADEREACTIONMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcModulusOfSubgradeReactionMeasure = IfcModulusOfSubgradeReactionMeasure;\n class IfcMoistureDiffusivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOISTUREDIFFUSIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMoistureDiffusivityMeasure = IfcMoistureDiffusivityMeasure;\n class IfcMolecularWeightMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOLECULARWEIGHTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMolecularWeightMeasure = IfcMolecularWeightMeasure;\n class IfcMomentOfInertiaMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMOMENTOFINERTIAMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMomentOfInertiaMeasure = IfcMomentOfInertiaMeasure;\n class IfcMonetaryMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCMONETARYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMonetaryMeasure = IfcMonetaryMeasure;\n class IfcMonthInYearNumber {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCMONTHINYEARNUMBER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcMonthInYearNumber = IfcMonthInYearNumber;\n class IfcNonNegativeLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNONNEGATIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNonNegativeLengthMeasure = IfcNonNegativeLengthMeasure;\n class IfcNormalisedRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNORMALISEDRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNormalisedRatioMeasure = IfcNormalisedRatioMeasure;\n class IfcNumericMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCNUMERICMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcNumericMeasure = IfcNumericMeasure;\n class IfcPHMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPHMeasure = IfcPHMeasure;\n class IfcParameterValue {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPARAMETERVALUE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcParameterValue = IfcParameterValue;\n class IfcPlanarForceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANARFORCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPlanarForceMeasure = IfcPlanarForceMeasure;\n class IfcPlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPlaneAngleMeasure = IfcPlaneAngleMeasure;\n class IfcPositiveInteger {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCPOSITIVEINTEGER\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveInteger = IfcPositiveInteger;\n class IfcPositiveLengthMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVELENGTHMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveLengthMeasure = IfcPositiveLengthMeasure;\n class IfcPositivePlaneAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVEPLANEANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositivePlaneAngleMeasure = IfcPositivePlaneAngleMeasure;\n class IfcPositiveRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOSITIVERATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPositiveRatioMeasure = IfcPositiveRatioMeasure;\n class IfcPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPowerMeasure = IfcPowerMeasure;\n class IfcPresentableText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCPRESENTABLETEXT\";\n }\n }\n IFC4X32.IfcPresentableText = IfcPresentableText;\n class IfcPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcPressureMeasure = IfcPressureMeasure;\n class IfcPropertySetDefinitionSet {\n constructor(value) {\n this.value = value;\n this.type = 5;\n }\n }\n IFC4X32.IfcPropertySetDefinitionSet = IfcPropertySetDefinitionSet;\n ;\n class IfcRadioActivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRADIOACTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRadioActivityMeasure = IfcRadioActivityMeasure;\n class IfcRatioMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCRATIOMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRatioMeasure = IfcRatioMeasure;\n class IfcReal {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCREAL\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcReal = IfcReal;\n class IfcRotationalFrequencyMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALFREQUENCYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalFrequencyMeasure = IfcRotationalFrequencyMeasure;\n class IfcRotationalMassMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALMASSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalMassMeasure = IfcRotationalMassMeasure;\n class IfcRotationalStiffnessMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCROTATIONALSTIFFNESSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcRotationalStiffnessMeasure = IfcRotationalStiffnessMeasure;\n class IfcSectionModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSectionModulusMeasure = IfcSectionModulusMeasure;\n class IfcSectionalAreaIntegralMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSECTIONALAREAINTEGRALMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSectionalAreaIntegralMeasure = IfcSectionalAreaIntegralMeasure;\n class IfcShearModulusMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSHEARMODULUSMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcShearModulusMeasure = IfcShearModulusMeasure;\n class IfcSolidAngleMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOLIDANGLEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSolidAngleMeasure = IfcSolidAngleMeasure;\n class IfcSoundPowerLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERLEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPowerLevelMeasure = IfcSoundPowerLevelMeasure;\n class IfcSoundPowerMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPOWERMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPowerMeasure = IfcSoundPowerMeasure;\n class IfcSoundPressureLevelMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSURELEVELMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPressureLevelMeasure = IfcSoundPressureLevelMeasure;\n class IfcSoundPressureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSOUNDPRESSUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSoundPressureMeasure = IfcSoundPressureMeasure;\n class IfcSpecificHeatCapacityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECIFICHEATCAPACITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecificHeatCapacityMeasure = IfcSpecificHeatCapacityMeasure;\n class IfcSpecularExponent {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULAREXPONENT\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecularExponent = IfcSpecularExponent;\n class IfcSpecularRoughness {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCSPECULARROUGHNESS\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcSpecularRoughness = IfcSpecularRoughness;\n class IfcTemperatureGradientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATUREGRADIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTemperatureGradientMeasure = IfcTemperatureGradientMeasure;\n class IfcTemperatureRateOfChangeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTEMPERATURERATEOFCHANGEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTemperatureRateOfChangeMeasure = IfcTemperatureRateOfChangeMeasure;\n class IfcText {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXT\";\n }\n }\n IFC4X32.IfcText = IfcText;\n class IfcTextAlignment {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTALIGNMENT\";\n }\n }\n IFC4X32.IfcTextAlignment = IfcTextAlignment;\n class IfcTextDecoration {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTDECORATION\";\n }\n }\n IFC4X32.IfcTextDecoration = IfcTextDecoration;\n class IfcTextFontName {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTFONTNAME\";\n }\n }\n IFC4X32.IfcTextFontName = IfcTextFontName;\n class IfcTextTransformation {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTEXTTRANSFORMATION\";\n }\n }\n IFC4X32.IfcTextTransformation = IfcTextTransformation;\n class IfcThermalAdmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALADMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalAdmittanceMeasure = IfcThermalAdmittanceMeasure;\n class IfcThermalConductivityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALCONDUCTIVITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalConductivityMeasure = IfcThermalConductivityMeasure;\n class IfcThermalExpansionCoefficientMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALEXPANSIONCOEFFICIENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalExpansionCoefficientMeasure = IfcThermalExpansionCoefficientMeasure;\n class IfcThermalResistanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALRESISTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalResistanceMeasure = IfcThermalResistanceMeasure;\n class IfcThermalTransmittanceMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMALTRANSMITTANCEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermalTransmittanceMeasure = IfcThermalTransmittanceMeasure;\n class IfcThermodynamicTemperatureMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTHERMODYNAMICTEMPERATUREMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcThermodynamicTemperatureMeasure = IfcThermodynamicTemperatureMeasure;\n class IfcTime {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCTIME\";\n }\n }\n IFC4X32.IfcTime = IfcTime;\n class IfcTimeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTIMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTimeMeasure = IfcTimeMeasure;\n class IfcTimeStamp {\n constructor(v) {\n this.type = 10;\n this.name = \"IFCTIMESTAMP\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTimeStamp = IfcTimeStamp;\n class IfcTorqueMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCTORQUEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcTorqueMeasure = IfcTorqueMeasure;\n class IfcURIReference {\n constructor(value) {\n this.value = value;\n this.type = 1;\n this.name = \"IFCURIREFERENCE\";\n }\n }\n IFC4X32.IfcURIReference = IfcURIReference;\n class IfcVaporPermeabilityMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVAPORPERMEABILITYMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVaporPermeabilityMeasure = IfcVaporPermeabilityMeasure;\n class IfcVolumeMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVolumeMeasure = IfcVolumeMeasure;\n class IfcVolumetricFlowRateMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCVOLUMETRICFLOWRATEMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcVolumetricFlowRateMeasure = IfcVolumetricFlowRateMeasure;\n class IfcWarpingConstantMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGCONSTANTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcWarpingConstantMeasure = IfcWarpingConstantMeasure;\n class IfcWarpingMomentMeasure {\n constructor(v) {\n this.type = 4;\n this.name = \"IFCWARPINGMOMENTMEASURE\";\n this.value = v === null ? v : parseFloat(v);\n }\n }\n IFC4X32.IfcWarpingMomentMeasure = IfcWarpingMomentMeasure;\n class IfcActionRequestTypeEnum {\n }\n IfcActionRequestTypeEnum.EMAIL = { type: 3, value: \"EMAIL\" };\n IfcActionRequestTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcActionRequestTypeEnum.PHONE = { type: 3, value: \"PHONE\" };\n IfcActionRequestTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcActionRequestTypeEnum.VERBAL = { type: 3, value: \"VERBAL\" };\n IfcActionRequestTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionRequestTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionRequestTypeEnum = IfcActionRequestTypeEnum;\n class IfcActionSourceTypeEnum {\n }\n IfcActionSourceTypeEnum.BRAKES = { type: 3, value: \"BRAKES\" };\n IfcActionSourceTypeEnum.BUOYANCY = { type: 3, value: \"BUOYANCY\" };\n IfcActionSourceTypeEnum.COMPLETION_G1 = { type: 3, value: \"COMPLETION_G1\" };\n IfcActionSourceTypeEnum.CREEP = { type: 3, value: \"CREEP\" };\n IfcActionSourceTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcActionSourceTypeEnum.DEAD_LOAD_G = { type: 3, value: \"DEAD_LOAD_G\" };\n IfcActionSourceTypeEnum.EARTHQUAKE_E = { type: 3, value: \"EARTHQUAKE_E\" };\n IfcActionSourceTypeEnum.ERECTION = { type: 3, value: \"ERECTION\" };\n IfcActionSourceTypeEnum.FIRE = { type: 3, value: \"FIRE\" };\n IfcActionSourceTypeEnum.ICE = { type: 3, value: \"ICE\" };\n IfcActionSourceTypeEnum.IMPACT = { type: 3, value: \"IMPACT\" };\n IfcActionSourceTypeEnum.IMPULSE = { type: 3, value: \"IMPULSE\" };\n IfcActionSourceTypeEnum.LACK_OF_FIT = { type: 3, value: \"LACK_OF_FIT\" };\n IfcActionSourceTypeEnum.LIVE_LOAD_Q = { type: 3, value: \"LIVE_LOAD_Q\" };\n IfcActionSourceTypeEnum.PRESTRESSING_P = { type: 3, value: \"PRESTRESSING_P\" };\n IfcActionSourceTypeEnum.PROPPING = { type: 3, value: \"PROPPING\" };\n IfcActionSourceTypeEnum.RAIN = { type: 3, value: \"RAIN\" };\n IfcActionSourceTypeEnum.SETTLEMENT_U = { type: 3, value: \"SETTLEMENT_U\" };\n IfcActionSourceTypeEnum.SHRINKAGE = { type: 3, value: \"SHRINKAGE\" };\n IfcActionSourceTypeEnum.SNOW_S = { type: 3, value: \"SNOW_S\" };\n IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION = { type: 3, value: \"SYSTEM_IMPERFECTION\" };\n IfcActionSourceTypeEnum.TEMPERATURE_T = { type: 3, value: \"TEMPERATURE_T\" };\n IfcActionSourceTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcActionSourceTypeEnum.WAVE = { type: 3, value: \"WAVE\" };\n IfcActionSourceTypeEnum.WIND_W = { type: 3, value: \"WIND_W\" };\n IfcActionSourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionSourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionSourceTypeEnum = IfcActionSourceTypeEnum;\n class IfcActionTypeEnum {\n }\n IfcActionTypeEnum.EXTRAORDINARY_A = { type: 3, value: \"EXTRAORDINARY_A\" };\n IfcActionTypeEnum.PERMANENT_G = { type: 3, value: \"PERMANENT_G\" };\n IfcActionTypeEnum.VARIABLE_Q = { type: 3, value: \"VARIABLE_Q\" };\n IfcActionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActionTypeEnum = IfcActionTypeEnum;\n class IfcActuatorTypeEnum {\n }\n IfcActuatorTypeEnum.ELECTRICACTUATOR = { type: 3, value: \"ELECTRICACTUATOR\" };\n IfcActuatorTypeEnum.HANDOPERATEDACTUATOR = { type: 3, value: \"HANDOPERATEDACTUATOR\" };\n IfcActuatorTypeEnum.HYDRAULICACTUATOR = { type: 3, value: \"HYDRAULICACTUATOR\" };\n IfcActuatorTypeEnum.PNEUMATICACTUATOR = { type: 3, value: \"PNEUMATICACTUATOR\" };\n IfcActuatorTypeEnum.THERMOSTATICACTUATOR = { type: 3, value: \"THERMOSTATICACTUATOR\" };\n IfcActuatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcActuatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcActuatorTypeEnum = IfcActuatorTypeEnum;\n class IfcAddressTypeEnum {\n }\n IfcAddressTypeEnum.DISTRIBUTIONPOINT = { type: 3, value: \"DISTRIBUTIONPOINT\" };\n IfcAddressTypeEnum.HOME = { type: 3, value: \"HOME\" };\n IfcAddressTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcAddressTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAddressTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcAddressTypeEnum = IfcAddressTypeEnum;\n class IfcAirTerminalBoxTypeEnum {\n }\n IfcAirTerminalBoxTypeEnum.CONSTANTFLOW = { type: 3, value: \"CONSTANTFLOW\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT = { type: 3, value: \"VARIABLEFLOWPRESSUREINDEPENDANT\" };\n IfcAirTerminalBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirTerminalBoxTypeEnum = IfcAirTerminalBoxTypeEnum;\n class IfcAirTerminalTypeEnum {\n }\n IfcAirTerminalTypeEnum.DIFFUSER = { type: 3, value: \"DIFFUSER\" };\n IfcAirTerminalTypeEnum.GRILLE = { type: 3, value: \"GRILLE\" };\n IfcAirTerminalTypeEnum.LOUVRE = { type: 3, value: \"LOUVRE\" };\n IfcAirTerminalTypeEnum.REGISTER = { type: 3, value: \"REGISTER\" };\n IfcAirTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirTerminalTypeEnum = IfcAirTerminalTypeEnum;\n class IfcAirToAirHeatRecoveryTypeEnum {\n }\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECOUNTERFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATECROSSFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER = { type: 3, value: \"FIXEDPLATEPARALLELFLOWEXCHANGER\" };\n IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE = { type: 3, value: \"HEATPIPE\" };\n IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL = { type: 3, value: \"ROTARYWHEEL\" };\n IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP = { type: 3, value: \"RUNAROUNDCOILLOOP\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONCOILTYPEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS = { type: 3, value: \"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS\" };\n IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS = { type: 3, value: \"TWINTOWERENTHALPYRECOVERYLOOPS\" };\n IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAirToAirHeatRecoveryTypeEnum = IfcAirToAirHeatRecoveryTypeEnum;\n class IfcAlarmTypeEnum {\n }\n IfcAlarmTypeEnum.BELL = { type: 3, value: \"BELL\" };\n IfcAlarmTypeEnum.BREAKGLASSBUTTON = { type: 3, value: \"BREAKGLASSBUTTON\" };\n IfcAlarmTypeEnum.LIGHT = { type: 3, value: \"LIGHT\" };\n IfcAlarmTypeEnum.MANUALPULLBOX = { type: 3, value: \"MANUALPULLBOX\" };\n IfcAlarmTypeEnum.RAILWAYCROCODILE = { type: 3, value: \"RAILWAYCROCODILE\" };\n IfcAlarmTypeEnum.RAILWAYDETONATOR = { type: 3, value: \"RAILWAYDETONATOR\" };\n IfcAlarmTypeEnum.SIREN = { type: 3, value: \"SIREN\" };\n IfcAlarmTypeEnum.WHISTLE = { type: 3, value: \"WHISTLE\" };\n IfcAlarmTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlarmTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAlarmTypeEnum = IfcAlarmTypeEnum;\n class IfcAlignmentCantSegmentTypeEnum {\n }\n IfcAlignmentCantSegmentTypeEnum.BLOSSCURVE = { type: 3, value: \"BLOSSCURVE\" };\n IfcAlignmentCantSegmentTypeEnum.CONSTANTCANT = { type: 3, value: \"CONSTANTCANT\" };\n IfcAlignmentCantSegmentTypeEnum.COSINECURVE = { type: 3, value: \"COSINECURVE\" };\n IfcAlignmentCantSegmentTypeEnum.HELMERTCURVE = { type: 3, value: \"HELMERTCURVE\" };\n IfcAlignmentCantSegmentTypeEnum.LINEARTRANSITION = { type: 3, value: \"LINEARTRANSITION\" };\n IfcAlignmentCantSegmentTypeEnum.SINECURVE = { type: 3, value: \"SINECURVE\" };\n IfcAlignmentCantSegmentTypeEnum.VIENNESEBEND = { type: 3, value: \"VIENNESEBEND\" };\n IFC4X32.IfcAlignmentCantSegmentTypeEnum = IfcAlignmentCantSegmentTypeEnum;\n class IfcAlignmentHorizontalSegmentTypeEnum {\n }\n IfcAlignmentHorizontalSegmentTypeEnum.BLOSSCURVE = { type: 3, value: \"BLOSSCURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CIRCULARARC = { type: 3, value: \"CIRCULARARC\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CLOTHOID = { type: 3, value: \"CLOTHOID\" };\n IfcAlignmentHorizontalSegmentTypeEnum.COSINECURVE = { type: 3, value: \"COSINECURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.CUBIC = { type: 3, value: \"CUBIC\" };\n IfcAlignmentHorizontalSegmentTypeEnum.HELMERTCURVE = { type: 3, value: \"HELMERTCURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.LINE = { type: 3, value: \"LINE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.SINECURVE = { type: 3, value: \"SINECURVE\" };\n IfcAlignmentHorizontalSegmentTypeEnum.VIENNESEBEND = { type: 3, value: \"VIENNESEBEND\" };\n IFC4X32.IfcAlignmentHorizontalSegmentTypeEnum = IfcAlignmentHorizontalSegmentTypeEnum;\n class IfcAlignmentTypeEnum {\n }\n IfcAlignmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAlignmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAlignmentTypeEnum = IfcAlignmentTypeEnum;\n class IfcAlignmentVerticalSegmentTypeEnum {\n }\n IfcAlignmentVerticalSegmentTypeEnum.CIRCULARARC = { type: 3, value: \"CIRCULARARC\" };\n IfcAlignmentVerticalSegmentTypeEnum.CLOTHOID = { type: 3, value: \"CLOTHOID\" };\n IfcAlignmentVerticalSegmentTypeEnum.CONSTANTGRADIENT = { type: 3, value: \"CONSTANTGRADIENT\" };\n IfcAlignmentVerticalSegmentTypeEnum.PARABOLICARC = { type: 3, value: \"PARABOLICARC\" };\n IFC4X32.IfcAlignmentVerticalSegmentTypeEnum = IfcAlignmentVerticalSegmentTypeEnum;\n class IfcAnalysisModelTypeEnum {\n }\n IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D = { type: 3, value: \"IN_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.LOADING_3D = { type: 3, value: \"LOADING_3D\" };\n IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D = { type: 3, value: \"OUT_PLANE_LOADING_2D\" };\n IfcAnalysisModelTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisModelTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnalysisModelTypeEnum = IfcAnalysisModelTypeEnum;\n class IfcAnalysisTheoryTypeEnum {\n }\n IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY = { type: 3, value: \"FIRST_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY = { type: 3, value: \"FULL_NONLINEAR_THEORY\" };\n IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY = { type: 3, value: \"SECOND_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY = { type: 3, value: \"THIRD_ORDER_THEORY\" };\n IfcAnalysisTheoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnalysisTheoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnalysisTheoryTypeEnum = IfcAnalysisTheoryTypeEnum;\n class IfcAnnotationTypeEnum {\n }\n IfcAnnotationTypeEnum.ASBUILTAREA = { type: 3, value: \"ASBUILTAREA\" };\n IfcAnnotationTypeEnum.ASBUILTLINE = { type: 3, value: \"ASBUILTLINE\" };\n IfcAnnotationTypeEnum.ASBUILTPOINT = { type: 3, value: \"ASBUILTPOINT\" };\n IfcAnnotationTypeEnum.ASSUMEDAREA = { type: 3, value: \"ASSUMEDAREA\" };\n IfcAnnotationTypeEnum.ASSUMEDLINE = { type: 3, value: \"ASSUMEDLINE\" };\n IfcAnnotationTypeEnum.ASSUMEDPOINT = { type: 3, value: \"ASSUMEDPOINT\" };\n IfcAnnotationTypeEnum.NON_PHYSICAL_SIGNAL = { type: 3, value: \"NON_PHYSICAL_SIGNAL\" };\n IfcAnnotationTypeEnum.SUPERELEVATIONEVENT = { type: 3, value: \"SUPERELEVATIONEVENT\" };\n IfcAnnotationTypeEnum.WIDTHEVENT = { type: 3, value: \"WIDTHEVENT\" };\n IfcAnnotationTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAnnotationTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAnnotationTypeEnum = IfcAnnotationTypeEnum;\n class IfcArithmeticOperatorEnum {\n }\n IfcArithmeticOperatorEnum.ADD = { type: 3, value: \"ADD\" };\n IfcArithmeticOperatorEnum.DIVIDE = { type: 3, value: \"DIVIDE\" };\n IfcArithmeticOperatorEnum.MULTIPLY = { type: 3, value: \"MULTIPLY\" };\n IfcArithmeticOperatorEnum.SUBTRACT = { type: 3, value: \"SUBTRACT\" };\n IFC4X32.IfcArithmeticOperatorEnum = IfcArithmeticOperatorEnum;\n class IfcAssemblyPlaceEnum {\n }\n IfcAssemblyPlaceEnum.FACTORY = { type: 3, value: \"FACTORY\" };\n IfcAssemblyPlaceEnum.SITE = { type: 3, value: \"SITE\" };\n IfcAssemblyPlaceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAssemblyPlaceEnum = IfcAssemblyPlaceEnum;\n class IfcAudioVisualApplianceTypeEnum {\n }\n IfcAudioVisualApplianceTypeEnum.AMPLIFIER = { type: 3, value: \"AMPLIFIER\" };\n IfcAudioVisualApplianceTypeEnum.CAMERA = { type: 3, value: \"CAMERA\" };\n IfcAudioVisualApplianceTypeEnum.COMMUNICATIONTERMINAL = { type: 3, value: \"COMMUNICATIONTERMINAL\" };\n IfcAudioVisualApplianceTypeEnum.DISPLAY = { type: 3, value: \"DISPLAY\" };\n IfcAudioVisualApplianceTypeEnum.MICROPHONE = { type: 3, value: \"MICROPHONE\" };\n IfcAudioVisualApplianceTypeEnum.PLAYER = { type: 3, value: \"PLAYER\" };\n IfcAudioVisualApplianceTypeEnum.PROJECTOR = { type: 3, value: \"PROJECTOR\" };\n IfcAudioVisualApplianceTypeEnum.RECEIVER = { type: 3, value: \"RECEIVER\" };\n IfcAudioVisualApplianceTypeEnum.RECORDINGEQUIPMENT = { type: 3, value: \"RECORDINGEQUIPMENT\" };\n IfcAudioVisualApplianceTypeEnum.SPEAKER = { type: 3, value: \"SPEAKER\" };\n IfcAudioVisualApplianceTypeEnum.SWITCHER = { type: 3, value: \"SWITCHER\" };\n IfcAudioVisualApplianceTypeEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcAudioVisualApplianceTypeEnum.TUNER = { type: 3, value: \"TUNER\" };\n IfcAudioVisualApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcAudioVisualApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcAudioVisualApplianceTypeEnum = IfcAudioVisualApplianceTypeEnum;\n class IfcBSplineCurveForm {\n }\n IfcBSplineCurveForm.CIRCULAR_ARC = { type: 3, value: \"CIRCULAR_ARC\" };\n IfcBSplineCurveForm.ELLIPTIC_ARC = { type: 3, value: \"ELLIPTIC_ARC\" };\n IfcBSplineCurveForm.HYPERBOLIC_ARC = { type: 3, value: \"HYPERBOLIC_ARC\" };\n IfcBSplineCurveForm.PARABOLIC_ARC = { type: 3, value: \"PARABOLIC_ARC\" };\n IfcBSplineCurveForm.POLYLINE_FORM = { type: 3, value: \"POLYLINE_FORM\" };\n IfcBSplineCurveForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcBSplineCurveForm = IfcBSplineCurveForm;\n class IfcBSplineSurfaceForm {\n }\n IfcBSplineSurfaceForm.CONICAL_SURF = { type: 3, value: \"CONICAL_SURF\" };\n IfcBSplineSurfaceForm.CYLINDRICAL_SURF = { type: 3, value: \"CYLINDRICAL_SURF\" };\n IfcBSplineSurfaceForm.GENERALISED_CONE = { type: 3, value: \"GENERALISED_CONE\" };\n IfcBSplineSurfaceForm.PLANE_SURF = { type: 3, value: \"PLANE_SURF\" };\n IfcBSplineSurfaceForm.QUADRIC_SURF = { type: 3, value: \"QUADRIC_SURF\" };\n IfcBSplineSurfaceForm.RULED_SURF = { type: 3, value: \"RULED_SURF\" };\n IfcBSplineSurfaceForm.SPHERICAL_SURF = { type: 3, value: \"SPHERICAL_SURF\" };\n IfcBSplineSurfaceForm.SURF_OF_LINEAR_EXTRUSION = { type: 3, value: \"SURF_OF_LINEAR_EXTRUSION\" };\n IfcBSplineSurfaceForm.SURF_OF_REVOLUTION = { type: 3, value: \"SURF_OF_REVOLUTION\" };\n IfcBSplineSurfaceForm.TOROIDAL_SURF = { type: 3, value: \"TOROIDAL_SURF\" };\n IfcBSplineSurfaceForm.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcBSplineSurfaceForm = IfcBSplineSurfaceForm;\n class IfcBeamTypeEnum {\n }\n IfcBeamTypeEnum.BEAM = { type: 3, value: \"BEAM\" };\n IfcBeamTypeEnum.CORNICE = { type: 3, value: \"CORNICE\" };\n IfcBeamTypeEnum.DIAPHRAGM = { type: 3, value: \"DIAPHRAGM\" };\n IfcBeamTypeEnum.EDGEBEAM = { type: 3, value: \"EDGEBEAM\" };\n IfcBeamTypeEnum.GIRDER_SEGMENT = { type: 3, value: \"GIRDER_SEGMENT\" };\n IfcBeamTypeEnum.HATSTONE = { type: 3, value: \"HATSTONE\" };\n IfcBeamTypeEnum.HOLLOWCORE = { type: 3, value: \"HOLLOWCORE\" };\n IfcBeamTypeEnum.JOIST = { type: 3, value: \"JOIST\" };\n IfcBeamTypeEnum.LINTEL = { type: 3, value: \"LINTEL\" };\n IfcBeamTypeEnum.PIERCAP = { type: 3, value: \"PIERCAP\" };\n IfcBeamTypeEnum.SPANDREL = { type: 3, value: \"SPANDREL\" };\n IfcBeamTypeEnum.T_BEAM = { type: 3, value: \"T_BEAM\" };\n IfcBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBeamTypeEnum = IfcBeamTypeEnum;\n class IfcBearingTypeDisplacementEnum {\n }\n IfcBearingTypeDisplacementEnum.FIXED_MOVEMENT = { type: 3, value: \"FIXED_MOVEMENT\" };\n IfcBearingTypeDisplacementEnum.FREE_MOVEMENT = { type: 3, value: \"FREE_MOVEMENT\" };\n IfcBearingTypeDisplacementEnum.GUIDED_LONGITUDINAL = { type: 3, value: \"GUIDED_LONGITUDINAL\" };\n IfcBearingTypeDisplacementEnum.GUIDED_TRANSVERSAL = { type: 3, value: \"GUIDED_TRANSVERSAL\" };\n IfcBearingTypeDisplacementEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBearingTypeDisplacementEnum = IfcBearingTypeDisplacementEnum;\n class IfcBearingTypeEnum {\n }\n IfcBearingTypeEnum.CYLINDRICAL = { type: 3, value: \"CYLINDRICAL\" };\n IfcBearingTypeEnum.DISK = { type: 3, value: \"DISK\" };\n IfcBearingTypeEnum.ELASTOMERIC = { type: 3, value: \"ELASTOMERIC\" };\n IfcBearingTypeEnum.GUIDE = { type: 3, value: \"GUIDE\" };\n IfcBearingTypeEnum.POT = { type: 3, value: \"POT\" };\n IfcBearingTypeEnum.ROCKER = { type: 3, value: \"ROCKER\" };\n IfcBearingTypeEnum.ROLLER = { type: 3, value: \"ROLLER\" };\n IfcBearingTypeEnum.SPHERICAL = { type: 3, value: \"SPHERICAL\" };\n IfcBearingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBearingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBearingTypeEnum = IfcBearingTypeEnum;\n class IfcBenchmarkEnum {\n }\n IfcBenchmarkEnum.EQUALTO = { type: 3, value: \"EQUALTO\" };\n IfcBenchmarkEnum.GREATERTHAN = { type: 3, value: \"GREATERTHAN\" };\n IfcBenchmarkEnum.GREATERTHANOREQUALTO = { type: 3, value: \"GREATERTHANOREQUALTO\" };\n IfcBenchmarkEnum.INCLUDEDIN = { type: 3, value: \"INCLUDEDIN\" };\n IfcBenchmarkEnum.INCLUDES = { type: 3, value: \"INCLUDES\" };\n IfcBenchmarkEnum.LESSTHAN = { type: 3, value: \"LESSTHAN\" };\n IfcBenchmarkEnum.LESSTHANOREQUALTO = { type: 3, value: \"LESSTHANOREQUALTO\" };\n IfcBenchmarkEnum.NOTEQUALTO = { type: 3, value: \"NOTEQUALTO\" };\n IfcBenchmarkEnum.NOTINCLUDEDIN = { type: 3, value: \"NOTINCLUDEDIN\" };\n IfcBenchmarkEnum.NOTINCLUDES = { type: 3, value: \"NOTINCLUDES\" };\n IFC4X32.IfcBenchmarkEnum = IfcBenchmarkEnum;\n class IfcBoilerTypeEnum {\n }\n IfcBoilerTypeEnum.STEAM = { type: 3, value: \"STEAM\" };\n IfcBoilerTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcBoilerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBoilerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBoilerTypeEnum = IfcBoilerTypeEnum;\n class IfcBooleanOperator {\n }\n IfcBooleanOperator.DIFFERENCE = { type: 3, value: \"DIFFERENCE\" };\n IfcBooleanOperator.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcBooleanOperator.UNION = { type: 3, value: \"UNION\" };\n IFC4X32.IfcBooleanOperator = IfcBooleanOperator;\n class IfcBridgePartTypeEnum {\n }\n IfcBridgePartTypeEnum.ABUTMENT = { type: 3, value: \"ABUTMENT\" };\n IfcBridgePartTypeEnum.DECK = { type: 3, value: \"DECK\" };\n IfcBridgePartTypeEnum.DECK_SEGMENT = { type: 3, value: \"DECK_SEGMENT\" };\n IfcBridgePartTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBridgePartTypeEnum.PIER = { type: 3, value: \"PIER\" };\n IfcBridgePartTypeEnum.PIER_SEGMENT = { type: 3, value: \"PIER_SEGMENT\" };\n IfcBridgePartTypeEnum.PYLON = { type: 3, value: \"PYLON\" };\n IfcBridgePartTypeEnum.SUBSTRUCTURE = { type: 3, value: \"SUBSTRUCTURE\" };\n IfcBridgePartTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcBridgePartTypeEnum.SURFACESTRUCTURE = { type: 3, value: \"SURFACESTRUCTURE\" };\n IfcBridgePartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBridgePartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBridgePartTypeEnum = IfcBridgePartTypeEnum;\n class IfcBridgeTypeEnum {\n }\n IfcBridgeTypeEnum.ARCHED = { type: 3, value: \"ARCHED\" };\n IfcBridgeTypeEnum.CABLE_STAYED = { type: 3, value: \"CABLE_STAYED\" };\n IfcBridgeTypeEnum.CANTILEVER = { type: 3, value: \"CANTILEVER\" };\n IfcBridgeTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcBridgeTypeEnum.FRAMEWORK = { type: 3, value: \"FRAMEWORK\" };\n IfcBridgeTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcBridgeTypeEnum.SUSPENSION = { type: 3, value: \"SUSPENSION\" };\n IfcBridgeTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcBridgeTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBridgeTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBridgeTypeEnum = IfcBridgeTypeEnum;\n class IfcBuildingElementPartTypeEnum {\n }\n IfcBuildingElementPartTypeEnum.APRON = { type: 3, value: \"APRON\" };\n IfcBuildingElementPartTypeEnum.ARMOURUNIT = { type: 3, value: \"ARMOURUNIT\" };\n IfcBuildingElementPartTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcBuildingElementPartTypeEnum.PRECASTPANEL = { type: 3, value: \"PRECASTPANEL\" };\n IfcBuildingElementPartTypeEnum.SAFETYCAGE = { type: 3, value: \"SAFETYCAGE\" };\n IfcBuildingElementPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingElementPartTypeEnum = IfcBuildingElementPartTypeEnum;\n class IfcBuildingElementProxyTypeEnum {\n }\n IfcBuildingElementProxyTypeEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcBuildingElementProxyTypeEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcBuildingElementProxyTypeEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IfcBuildingElementProxyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingElementProxyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingElementProxyTypeEnum = IfcBuildingElementProxyTypeEnum;\n class IfcBuildingSystemTypeEnum {\n }\n IfcBuildingSystemTypeEnum.EROSIONPREVENTION = { type: 3, value: \"EROSIONPREVENTION\" };\n IfcBuildingSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuildingSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuildingSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuildingSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuildingSystemTypeEnum.PRESTRESSING = { type: 3, value: \"PRESTRESSING\" };\n IfcBuildingSystemTypeEnum.REINFORCING = { type: 3, value: \"REINFORCING\" };\n IfcBuildingSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuildingSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuildingSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuildingSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuildingSystemTypeEnum = IfcBuildingSystemTypeEnum;\n class IfcBuiltSystemTypeEnum {\n }\n IfcBuiltSystemTypeEnum.EROSIONPREVENTION = { type: 3, value: \"EROSIONPREVENTION\" };\n IfcBuiltSystemTypeEnum.FENESTRATION = { type: 3, value: \"FENESTRATION\" };\n IfcBuiltSystemTypeEnum.FOUNDATION = { type: 3, value: \"FOUNDATION\" };\n IfcBuiltSystemTypeEnum.LOADBEARING = { type: 3, value: \"LOADBEARING\" };\n IfcBuiltSystemTypeEnum.MOORING = { type: 3, value: \"MOORING\" };\n IfcBuiltSystemTypeEnum.OUTERSHELL = { type: 3, value: \"OUTERSHELL\" };\n IfcBuiltSystemTypeEnum.PRESTRESSING = { type: 3, value: \"PRESTRESSING\" };\n IfcBuiltSystemTypeEnum.RAILWAYLINE = { type: 3, value: \"RAILWAYLINE\" };\n IfcBuiltSystemTypeEnum.RAILWAYTRACK = { type: 3, value: \"RAILWAYTRACK\" };\n IfcBuiltSystemTypeEnum.REINFORCING = { type: 3, value: \"REINFORCING\" };\n IfcBuiltSystemTypeEnum.SHADING = { type: 3, value: \"SHADING\" };\n IfcBuiltSystemTypeEnum.TRACKCIRCUIT = { type: 3, value: \"TRACKCIRCUIT\" };\n IfcBuiltSystemTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcBuiltSystemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBuiltSystemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBuiltSystemTypeEnum = IfcBuiltSystemTypeEnum;\n class IfcBurnerTypeEnum {\n }\n IfcBurnerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcBurnerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcBurnerTypeEnum = IfcBurnerTypeEnum;\n class IfcCableCarrierFittingTypeEnum {\n }\n IfcCableCarrierFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcCableCarrierFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableCarrierFittingTypeEnum.CROSS = { type: 3, value: \"CROSS\" };\n IfcCableCarrierFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableCarrierFittingTypeEnum.TEE = { type: 3, value: \"TEE\" };\n IfcCableCarrierFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableCarrierFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableCarrierFittingTypeEnum = IfcCableCarrierFittingTypeEnum;\n class IfcCableCarrierSegmentTypeEnum {\n }\n IfcCableCarrierSegmentTypeEnum.CABLEBRACKET = { type: 3, value: \"CABLEBRACKET\" };\n IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT = { type: 3, value: \"CABLELADDERSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT = { type: 3, value: \"CABLETRAYSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT = { type: 3, value: \"CABLETRUNKINGSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.CATENARYWIRE = { type: 3, value: \"CATENARYWIRE\" };\n IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT = { type: 3, value: \"CONDUITSEGMENT\" };\n IfcCableCarrierSegmentTypeEnum.DROPPER = { type: 3, value: \"DROPPER\" };\n IfcCableCarrierSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableCarrierSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableCarrierSegmentTypeEnum = IfcCableCarrierSegmentTypeEnum;\n class IfcCableFittingTypeEnum {\n }\n IfcCableFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcCableFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcCableFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcCableFittingTypeEnum.FANOUT = { type: 3, value: \"FANOUT\" };\n IfcCableFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcCableFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcCableFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableFittingTypeEnum = IfcCableFittingTypeEnum;\n class IfcCableSegmentTypeEnum {\n }\n IfcCableSegmentTypeEnum.BUSBARSEGMENT = { type: 3, value: \"BUSBARSEGMENT\" };\n IfcCableSegmentTypeEnum.CABLESEGMENT = { type: 3, value: \"CABLESEGMENT\" };\n IfcCableSegmentTypeEnum.CONDUCTORSEGMENT = { type: 3, value: \"CONDUCTORSEGMENT\" };\n IfcCableSegmentTypeEnum.CONTACTWIRESEGMENT = { type: 3, value: \"CONTACTWIRESEGMENT\" };\n IfcCableSegmentTypeEnum.CORESEGMENT = { type: 3, value: \"CORESEGMENT\" };\n IfcCableSegmentTypeEnum.FIBERSEGMENT = { type: 3, value: \"FIBERSEGMENT\" };\n IfcCableSegmentTypeEnum.FIBERTUBE = { type: 3, value: \"FIBERTUBE\" };\n IfcCableSegmentTypeEnum.OPTICALCABLESEGMENT = { type: 3, value: \"OPTICALCABLESEGMENT\" };\n IfcCableSegmentTypeEnum.STITCHWIRE = { type: 3, value: \"STITCHWIRE\" };\n IfcCableSegmentTypeEnum.WIREPAIRSEGMENT = { type: 3, value: \"WIREPAIRSEGMENT\" };\n IfcCableSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCableSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCableSegmentTypeEnum = IfcCableSegmentTypeEnum;\n class IfcCaissonFoundationTypeEnum {\n }\n IfcCaissonFoundationTypeEnum.CAISSON = { type: 3, value: \"CAISSON\" };\n IfcCaissonFoundationTypeEnum.WELL = { type: 3, value: \"WELL\" };\n IfcCaissonFoundationTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCaissonFoundationTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCaissonFoundationTypeEnum = IfcCaissonFoundationTypeEnum;\n class IfcChangeActionEnum {\n }\n IfcChangeActionEnum.ADDED = { type: 3, value: \"ADDED\" };\n IfcChangeActionEnum.DELETED = { type: 3, value: \"DELETED\" };\n IfcChangeActionEnum.MODIFIED = { type: 3, value: \"MODIFIED\" };\n IfcChangeActionEnum.NOCHANGE = { type: 3, value: \"NOCHANGE\" };\n IfcChangeActionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChangeActionEnum = IfcChangeActionEnum;\n class IfcChillerTypeEnum {\n }\n IfcChillerTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcChillerTypeEnum.HEATRECOVERY = { type: 3, value: \"HEATRECOVERY\" };\n IfcChillerTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcChillerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChillerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChillerTypeEnum = IfcChillerTypeEnum;\n class IfcChimneyTypeEnum {\n }\n IfcChimneyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcChimneyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcChimneyTypeEnum = IfcChimneyTypeEnum;\n class IfcCoilTypeEnum {\n }\n IfcCoilTypeEnum.DXCOOLINGCOIL = { type: 3, value: \"DXCOOLINGCOIL\" };\n IfcCoilTypeEnum.ELECTRICHEATINGCOIL = { type: 3, value: \"ELECTRICHEATINGCOIL\" };\n IfcCoilTypeEnum.GASHEATINGCOIL = { type: 3, value: \"GASHEATINGCOIL\" };\n IfcCoilTypeEnum.HYDRONICCOIL = { type: 3, value: \"HYDRONICCOIL\" };\n IfcCoilTypeEnum.STEAMHEATINGCOIL = { type: 3, value: \"STEAMHEATINGCOIL\" };\n IfcCoilTypeEnum.WATERCOOLINGCOIL = { type: 3, value: \"WATERCOOLINGCOIL\" };\n IfcCoilTypeEnum.WATERHEATINGCOIL = { type: 3, value: \"WATERHEATINGCOIL\" };\n IfcCoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoilTypeEnum = IfcCoilTypeEnum;\n class IfcColumnTypeEnum {\n }\n IfcColumnTypeEnum.COLUMN = { type: 3, value: \"COLUMN\" };\n IfcColumnTypeEnum.PIERSTEM = { type: 3, value: \"PIERSTEM\" };\n IfcColumnTypeEnum.PIERSTEM_SEGMENT = { type: 3, value: \"PIERSTEM_SEGMENT\" };\n IfcColumnTypeEnum.PILASTER = { type: 3, value: \"PILASTER\" };\n IfcColumnTypeEnum.STANDCOLUMN = { type: 3, value: \"STANDCOLUMN\" };\n IfcColumnTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcColumnTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcColumnTypeEnum = IfcColumnTypeEnum;\n class IfcCommunicationsApplianceTypeEnum {\n }\n IfcCommunicationsApplianceTypeEnum.ANTENNA = { type: 3, value: \"ANTENNA\" };\n IfcCommunicationsApplianceTypeEnum.AUTOMATON = { type: 3, value: \"AUTOMATON\" };\n IfcCommunicationsApplianceTypeEnum.COMPUTER = { type: 3, value: \"COMPUTER\" };\n IfcCommunicationsApplianceTypeEnum.FAX = { type: 3, value: \"FAX\" };\n IfcCommunicationsApplianceTypeEnum.GATEWAY = { type: 3, value: \"GATEWAY\" };\n IfcCommunicationsApplianceTypeEnum.INTELLIGENTPERIPHERAL = { type: 3, value: \"INTELLIGENTPERIPHERAL\" };\n IfcCommunicationsApplianceTypeEnum.IPNETWORKEQUIPMENT = { type: 3, value: \"IPNETWORKEQUIPMENT\" };\n IfcCommunicationsApplianceTypeEnum.LINESIDEELECTRONICUNIT = { type: 3, value: \"LINESIDEELECTRONICUNIT\" };\n IfcCommunicationsApplianceTypeEnum.MODEM = { type: 3, value: \"MODEM\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKAPPLIANCE = { type: 3, value: \"NETWORKAPPLIANCE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKBRIDGE = { type: 3, value: \"NETWORKBRIDGE\" };\n IfcCommunicationsApplianceTypeEnum.NETWORKHUB = { type: 3, value: \"NETWORKHUB\" };\n IfcCommunicationsApplianceTypeEnum.OPTICALLINETERMINAL = { type: 3, value: \"OPTICALLINETERMINAL\" };\n IfcCommunicationsApplianceTypeEnum.OPTICALNETWORKUNIT = { type: 3, value: \"OPTICALNETWORKUNIT\" };\n IfcCommunicationsApplianceTypeEnum.PRINTER = { type: 3, value: \"PRINTER\" };\n IfcCommunicationsApplianceTypeEnum.RADIOBLOCKCENTER = { type: 3, value: \"RADIOBLOCKCENTER\" };\n IfcCommunicationsApplianceTypeEnum.REPEATER = { type: 3, value: \"REPEATER\" };\n IfcCommunicationsApplianceTypeEnum.ROUTER = { type: 3, value: \"ROUTER\" };\n IfcCommunicationsApplianceTypeEnum.SCANNER = { type: 3, value: \"SCANNER\" };\n IfcCommunicationsApplianceTypeEnum.TELECOMMAND = { type: 3, value: \"TELECOMMAND\" };\n IfcCommunicationsApplianceTypeEnum.TELEPHONYEXCHANGE = { type: 3, value: \"TELEPHONYEXCHANGE\" };\n IfcCommunicationsApplianceTypeEnum.TRANSITIONCOMPONENT = { type: 3, value: \"TRANSITIONCOMPONENT\" };\n IfcCommunicationsApplianceTypeEnum.TRANSPONDER = { type: 3, value: \"TRANSPONDER\" };\n IfcCommunicationsApplianceTypeEnum.TRANSPORTEQUIPMENT = { type: 3, value: \"TRANSPORTEQUIPMENT\" };\n IfcCommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCommunicationsApplianceTypeEnum = IfcCommunicationsApplianceTypeEnum;\n class IfcComplexPropertyTemplateTypeEnum {\n }\n IfcComplexPropertyTemplateTypeEnum.P_COMPLEX = { type: 3, value: \"P_COMPLEX\" };\n IfcComplexPropertyTemplateTypeEnum.Q_COMPLEX = { type: 3, value: \"Q_COMPLEX\" };\n IFC4X32.IfcComplexPropertyTemplateTypeEnum = IfcComplexPropertyTemplateTypeEnum;\n class IfcCompressorTypeEnum {\n }\n IfcCompressorTypeEnum.BOOSTER = { type: 3, value: \"BOOSTER\" };\n IfcCompressorTypeEnum.DYNAMIC = { type: 3, value: \"DYNAMIC\" };\n IfcCompressorTypeEnum.HERMETIC = { type: 3, value: \"HERMETIC\" };\n IfcCompressorTypeEnum.OPENTYPE = { type: 3, value: \"OPENTYPE\" };\n IfcCompressorTypeEnum.RECIPROCATING = { type: 3, value: \"RECIPROCATING\" };\n IfcCompressorTypeEnum.ROLLINGPISTON = { type: 3, value: \"ROLLINGPISTON\" };\n IfcCompressorTypeEnum.ROTARY = { type: 3, value: \"ROTARY\" };\n IfcCompressorTypeEnum.ROTARYVANE = { type: 3, value: \"ROTARYVANE\" };\n IfcCompressorTypeEnum.SCROLL = { type: 3, value: \"SCROLL\" };\n IfcCompressorTypeEnum.SEMIHERMETIC = { type: 3, value: \"SEMIHERMETIC\" };\n IfcCompressorTypeEnum.SINGLESCREW = { type: 3, value: \"SINGLESCREW\" };\n IfcCompressorTypeEnum.SINGLESTAGE = { type: 3, value: \"SINGLESTAGE\" };\n IfcCompressorTypeEnum.TROCHOIDAL = { type: 3, value: \"TROCHOIDAL\" };\n IfcCompressorTypeEnum.TWINSCREW = { type: 3, value: \"TWINSCREW\" };\n IfcCompressorTypeEnum.WELDEDSHELLHERMETIC = { type: 3, value: \"WELDEDSHELLHERMETIC\" };\n IfcCompressorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCompressorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCompressorTypeEnum = IfcCompressorTypeEnum;\n class IfcCondenserTypeEnum {\n }\n IfcCondenserTypeEnum.AIRCOOLED = { type: 3, value: \"AIRCOOLED\" };\n IfcCondenserTypeEnum.EVAPORATIVECOOLED = { type: 3, value: \"EVAPORATIVECOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLED = { type: 3, value: \"WATERCOOLED\" };\n IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE = { type: 3, value: \"WATERCOOLEDBRAZEDPLATE\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL = { type: 3, value: \"WATERCOOLEDSHELLCOIL\" };\n IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE = { type: 3, value: \"WATERCOOLEDSHELLTUBE\" };\n IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE = { type: 3, value: \"WATERCOOLEDTUBEINTUBE\" };\n IfcCondenserTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCondenserTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCondenserTypeEnum = IfcCondenserTypeEnum;\n class IfcConnectionTypeEnum {\n }\n IfcConnectionTypeEnum.ATEND = { type: 3, value: \"ATEND\" };\n IfcConnectionTypeEnum.ATPATH = { type: 3, value: \"ATPATH\" };\n IfcConnectionTypeEnum.ATSTART = { type: 3, value: \"ATSTART\" };\n IfcConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConnectionTypeEnum = IfcConnectionTypeEnum;\n class IfcConstraintEnum {\n }\n IfcConstraintEnum.ADVISORY = { type: 3, value: \"ADVISORY\" };\n IfcConstraintEnum.HARD = { type: 3, value: \"HARD\" };\n IfcConstraintEnum.SOFT = { type: 3, value: \"SOFT\" };\n IfcConstraintEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstraintEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstraintEnum = IfcConstraintEnum;\n class IfcConstructionEquipmentResourceTypeEnum {\n }\n IfcConstructionEquipmentResourceTypeEnum.DEMOLISHING = { type: 3, value: \"DEMOLISHING\" };\n IfcConstructionEquipmentResourceTypeEnum.EARTHMOVING = { type: 3, value: \"EARTHMOVING\" };\n IfcConstructionEquipmentResourceTypeEnum.ERECTING = { type: 3, value: \"ERECTING\" };\n IfcConstructionEquipmentResourceTypeEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcConstructionEquipmentResourceTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcConstructionEquipmentResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcConstructionEquipmentResourceTypeEnum.PUMPING = { type: 3, value: \"PUMPING\" };\n IfcConstructionEquipmentResourceTypeEnum.TRANSPORTING = { type: 3, value: \"TRANSPORTING\" };\n IfcConstructionEquipmentResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionEquipmentResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionEquipmentResourceTypeEnum = IfcConstructionEquipmentResourceTypeEnum;\n class IfcConstructionMaterialResourceTypeEnum {\n }\n IfcConstructionMaterialResourceTypeEnum.AGGREGATES = { type: 3, value: \"AGGREGATES\" };\n IfcConstructionMaterialResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcConstructionMaterialResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcConstructionMaterialResourceTypeEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcConstructionMaterialResourceTypeEnum.GYPSUM = { type: 3, value: \"GYPSUM\" };\n IfcConstructionMaterialResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcConstructionMaterialResourceTypeEnum.METAL = { type: 3, value: \"METAL\" };\n IfcConstructionMaterialResourceTypeEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcConstructionMaterialResourceTypeEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcConstructionMaterialResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionMaterialResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionMaterialResourceTypeEnum = IfcConstructionMaterialResourceTypeEnum;\n class IfcConstructionProductResourceTypeEnum {\n }\n IfcConstructionProductResourceTypeEnum.ASSEMBLY = { type: 3, value: \"ASSEMBLY\" };\n IfcConstructionProductResourceTypeEnum.FORMWORK = { type: 3, value: \"FORMWORK\" };\n IfcConstructionProductResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConstructionProductResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConstructionProductResourceTypeEnum = IfcConstructionProductResourceTypeEnum;\n class IfcControllerTypeEnum {\n }\n IfcControllerTypeEnum.FLOATING = { type: 3, value: \"FLOATING\" };\n IfcControllerTypeEnum.MULTIPOSITION = { type: 3, value: \"MULTIPOSITION\" };\n IfcControllerTypeEnum.PROGRAMMABLE = { type: 3, value: \"PROGRAMMABLE\" };\n IfcControllerTypeEnum.PROPORTIONAL = { type: 3, value: \"PROPORTIONAL\" };\n IfcControllerTypeEnum.TWOPOSITION = { type: 3, value: \"TWOPOSITION\" };\n IfcControllerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcControllerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcControllerTypeEnum = IfcControllerTypeEnum;\n class IfcConveyorSegmentTypeEnum {\n }\n IfcConveyorSegmentTypeEnum.BELTCONVEYOR = { type: 3, value: \"BELTCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.BUCKETCONVEYOR = { type: 3, value: \"BUCKETCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.CHUTECONVEYOR = { type: 3, value: \"CHUTECONVEYOR\" };\n IfcConveyorSegmentTypeEnum.SCREWCONVEYOR = { type: 3, value: \"SCREWCONVEYOR\" };\n IfcConveyorSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcConveyorSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcConveyorSegmentTypeEnum = IfcConveyorSegmentTypeEnum;\n class IfcCooledBeamTypeEnum {\n }\n IfcCooledBeamTypeEnum.ACTIVE = { type: 3, value: \"ACTIVE\" };\n IfcCooledBeamTypeEnum.PASSIVE = { type: 3, value: \"PASSIVE\" };\n IfcCooledBeamTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCooledBeamTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCooledBeamTypeEnum = IfcCooledBeamTypeEnum;\n class IfcCoolingTowerTypeEnum {\n }\n IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT = { type: 3, value: \"MECHANICALFORCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT = { type: 3, value: \"MECHANICALINDUCEDDRAFT\" };\n IfcCoolingTowerTypeEnum.NATURALDRAFT = { type: 3, value: \"NATURALDRAFT\" };\n IfcCoolingTowerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoolingTowerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoolingTowerTypeEnum = IfcCoolingTowerTypeEnum;\n class IfcCostItemTypeEnum {\n }\n IfcCostItemTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostItemTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCostItemTypeEnum = IfcCostItemTypeEnum;\n class IfcCostScheduleTypeEnum {\n }\n IfcCostScheduleTypeEnum.BUDGET = { type: 3, value: \"BUDGET\" };\n IfcCostScheduleTypeEnum.COSTPLAN = { type: 3, value: \"COSTPLAN\" };\n IfcCostScheduleTypeEnum.ESTIMATE = { type: 3, value: \"ESTIMATE\" };\n IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES = { type: 3, value: \"PRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.SCHEDULEOFRATES = { type: 3, value: \"SCHEDULEOFRATES\" };\n IfcCostScheduleTypeEnum.TENDER = { type: 3, value: \"TENDER\" };\n IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES = { type: 3, value: \"UNPRICEDBILLOFQUANTITIES\" };\n IfcCostScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCostScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCostScheduleTypeEnum = IfcCostScheduleTypeEnum;\n class IfcCourseTypeEnum {\n }\n IfcCourseTypeEnum.ARMOUR = { type: 3, value: \"ARMOUR\" };\n IfcCourseTypeEnum.BALLASTBED = { type: 3, value: \"BALLASTBED\" };\n IfcCourseTypeEnum.CORE = { type: 3, value: \"CORE\" };\n IfcCourseTypeEnum.FILTER = { type: 3, value: \"FILTER\" };\n IfcCourseTypeEnum.PAVEMENT = { type: 3, value: \"PAVEMENT\" };\n IfcCourseTypeEnum.PROTECTION = { type: 3, value: \"PROTECTION\" };\n IfcCourseTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCourseTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCourseTypeEnum = IfcCourseTypeEnum;\n class IfcCoveringTypeEnum {\n }\n IfcCoveringTypeEnum.CEILING = { type: 3, value: \"CEILING\" };\n IfcCoveringTypeEnum.CLADDING = { type: 3, value: \"CLADDING\" };\n IfcCoveringTypeEnum.COPING = { type: 3, value: \"COPING\" };\n IfcCoveringTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcCoveringTypeEnum.INSULATION = { type: 3, value: \"INSULATION\" };\n IfcCoveringTypeEnum.MEMBRANE = { type: 3, value: \"MEMBRANE\" };\n IfcCoveringTypeEnum.MOLDING = { type: 3, value: \"MOLDING\" };\n IfcCoveringTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcCoveringTypeEnum.SKIRTINGBOARD = { type: 3, value: \"SKIRTINGBOARD\" };\n IfcCoveringTypeEnum.SLEEVING = { type: 3, value: \"SLEEVING\" };\n IfcCoveringTypeEnum.TOPPING = { type: 3, value: \"TOPPING\" };\n IfcCoveringTypeEnum.WRAPPING = { type: 3, value: \"WRAPPING\" };\n IfcCoveringTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCoveringTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCoveringTypeEnum = IfcCoveringTypeEnum;\n class IfcCrewResourceTypeEnum {\n }\n IfcCrewResourceTypeEnum.OFFICE = { type: 3, value: \"OFFICE\" };\n IfcCrewResourceTypeEnum.SITE = { type: 3, value: \"SITE\" };\n IfcCrewResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCrewResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCrewResourceTypeEnum = IfcCrewResourceTypeEnum;\n class IfcCurtainWallTypeEnum {\n }\n IfcCurtainWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcCurtainWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCurtainWallTypeEnum = IfcCurtainWallTypeEnum;\n class IfcCurveInterpolationEnum {\n }\n IfcCurveInterpolationEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LINEAR = { type: 3, value: \"LOG_LINEAR\" };\n IfcCurveInterpolationEnum.LOG_LOG = { type: 3, value: \"LOG_LOG\" };\n IfcCurveInterpolationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcCurveInterpolationEnum = IfcCurveInterpolationEnum;\n class IfcDamperTypeEnum {\n }\n IfcDamperTypeEnum.BACKDRAFTDAMPER = { type: 3, value: \"BACKDRAFTDAMPER\" };\n IfcDamperTypeEnum.BALANCINGDAMPER = { type: 3, value: \"BALANCINGDAMPER\" };\n IfcDamperTypeEnum.BLASTDAMPER = { type: 3, value: \"BLASTDAMPER\" };\n IfcDamperTypeEnum.CONTROLDAMPER = { type: 3, value: \"CONTROLDAMPER\" };\n IfcDamperTypeEnum.FIREDAMPER = { type: 3, value: \"FIREDAMPER\" };\n IfcDamperTypeEnum.FIRESMOKEDAMPER = { type: 3, value: \"FIRESMOKEDAMPER\" };\n IfcDamperTypeEnum.FUMEHOODEXHAUST = { type: 3, value: \"FUMEHOODEXHAUST\" };\n IfcDamperTypeEnum.GRAVITYDAMPER = { type: 3, value: \"GRAVITYDAMPER\" };\n IfcDamperTypeEnum.GRAVITYRELIEFDAMPER = { type: 3, value: \"GRAVITYRELIEFDAMPER\" };\n IfcDamperTypeEnum.RELIEFDAMPER = { type: 3, value: \"RELIEFDAMPER\" };\n IfcDamperTypeEnum.SMOKEDAMPER = { type: 3, value: \"SMOKEDAMPER\" };\n IfcDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDamperTypeEnum = IfcDamperTypeEnum;\n class IfcDataOriginEnum {\n }\n IfcDataOriginEnum.MEASURED = { type: 3, value: \"MEASURED\" };\n IfcDataOriginEnum.PREDICTED = { type: 3, value: \"PREDICTED\" };\n IfcDataOriginEnum.SIMULATED = { type: 3, value: \"SIMULATED\" };\n IfcDataOriginEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDataOriginEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDataOriginEnum = IfcDataOriginEnum;\n class IfcDerivedUnitEnum {\n }\n IfcDerivedUnitEnum.ACCELERATIONUNIT = { type: 3, value: \"ACCELERATIONUNIT\" };\n IfcDerivedUnitEnum.ANGULARVELOCITYUNIT = { type: 3, value: \"ANGULARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.AREADENSITYUNIT = { type: 3, value: \"AREADENSITYUNIT\" };\n IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT = { type: 3, value: \"COMPOUNDPLANEANGLEUNIT\" };\n IfcDerivedUnitEnum.CURVATUREUNIT = { type: 3, value: \"CURVATUREUNIT\" };\n IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT = { type: 3, value: \"DYNAMICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT = { type: 3, value: \"HEATFLUXDENSITYUNIT\" };\n IfcDerivedUnitEnum.HEATINGVALUEUNIT = { type: 3, value: \"HEATINGVALUEUNIT\" };\n IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT = { type: 3, value: \"INTEGERCOUNTRATEUNIT\" };\n IfcDerivedUnitEnum.IONCONCENTRATIONUNIT = { type: 3, value: \"IONCONCENTRATIONUNIT\" };\n IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT = { type: 3, value: \"ISOTHERMALMOISTURECAPACITYUNIT\" };\n IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT = { type: 3, value: \"KINEMATICVISCOSITYUNIT\" };\n IfcDerivedUnitEnum.LINEARFORCEUNIT = { type: 3, value: \"LINEARFORCEUNIT\" };\n IfcDerivedUnitEnum.LINEARMOMENTUNIT = { type: 3, value: \"LINEARMOMENTUNIT\" };\n IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT = { type: 3, value: \"LINEARSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.LINEARVELOCITYUNIT = { type: 3, value: \"LINEARVELOCITYUNIT\" };\n IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT = { type: 3, value: \"LUMINOUSINTENSITYDISTRIBUTIONUNIT\" };\n IfcDerivedUnitEnum.MASSDENSITYUNIT = { type: 3, value: \"MASSDENSITYUNIT\" };\n IfcDerivedUnitEnum.MASSFLOWRATEUNIT = { type: 3, value: \"MASSFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.MASSPERLENGTHUNIT = { type: 3, value: \"MASSPERLENGTHUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT = { type: 3, value: \"MODULUSOFELASTICITYUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFLINEARSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT = { type: 3, value: \"MODULUSOFSUBGRADEREACTIONUNIT\" };\n IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT = { type: 3, value: \"MOISTUREDIFFUSIVITYUNIT\" };\n IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT = { type: 3, value: \"MOLECULARWEIGHTUNIT\" };\n IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT = { type: 3, value: \"MOMENTOFINERTIAUNIT\" };\n IfcDerivedUnitEnum.PHUNIT = { type: 3, value: \"PHUNIT\" };\n IfcDerivedUnitEnum.PLANARFORCEUNIT = { type: 3, value: \"PLANARFORCEUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT = { type: 3, value: \"ROTATIONALFREQUENCYUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALMASSUNIT = { type: 3, value: \"ROTATIONALMASSUNIT\" };\n IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT = { type: 3, value: \"ROTATIONALSTIFFNESSUNIT\" };\n IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT = { type: 3, value: \"SECTIONAREAINTEGRALUNIT\" };\n IfcDerivedUnitEnum.SECTIONMODULUSUNIT = { type: 3, value: \"SECTIONMODULUSUNIT\" };\n IfcDerivedUnitEnum.SHEARMODULUSUNIT = { type: 3, value: \"SHEARMODULUSUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERLEVELUNIT = { type: 3, value: \"SOUNDPOWERLEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPOWERUNIT = { type: 3, value: \"SOUNDPOWERUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSURELEVELUNIT = { type: 3, value: \"SOUNDPRESSURELEVELUNIT\" };\n IfcDerivedUnitEnum.SOUNDPRESSUREUNIT = { type: 3, value: \"SOUNDPRESSUREUNIT\" };\n IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT = { type: 3, value: \"SPECIFICHEATCAPACITYUNIT\" };\n IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT = { type: 3, value: \"TEMPERATUREGRADIENTUNIT\" };\n IfcDerivedUnitEnum.TEMPERATURERATEOFCHANGEUNIT = { type: 3, value: \"TEMPERATURERATEOFCHANGEUNIT\" };\n IfcDerivedUnitEnum.THERMALADMITTANCEUNIT = { type: 3, value: \"THERMALADMITTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT = { type: 3, value: \"THERMALCONDUCTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT = { type: 3, value: \"THERMALEXPANSIONCOEFFICIENTUNIT\" };\n IfcDerivedUnitEnum.THERMALRESISTANCEUNIT = { type: 3, value: \"THERMALRESISTANCEUNIT\" };\n IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT = { type: 3, value: \"THERMALTRANSMITTANCEUNIT\" };\n IfcDerivedUnitEnum.TORQUEUNIT = { type: 3, value: \"TORQUEUNIT\" };\n IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT = { type: 3, value: \"VAPORPERMEABILITYUNIT\" };\n IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT = { type: 3, value: \"VOLUMETRICFLOWRATEUNIT\" };\n IfcDerivedUnitEnum.WARPINGCONSTANTUNIT = { type: 3, value: \"WARPINGCONSTANTUNIT\" };\n IfcDerivedUnitEnum.WARPINGMOMENTUNIT = { type: 3, value: \"WARPINGMOMENTUNIT\" };\n IfcDerivedUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcDerivedUnitEnum = IfcDerivedUnitEnum;\n class IfcDirectionSenseEnum {\n }\n IfcDirectionSenseEnum.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcDirectionSenseEnum.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IFC4X32.IfcDirectionSenseEnum = IfcDirectionSenseEnum;\n class IfcDiscreteAccessoryTypeEnum {\n }\n IfcDiscreteAccessoryTypeEnum.ANCHORPLATE = { type: 3, value: \"ANCHORPLATE\" };\n IfcDiscreteAccessoryTypeEnum.BIRDPROTECTION = { type: 3, value: \"BIRDPROTECTION\" };\n IfcDiscreteAccessoryTypeEnum.BRACKET = { type: 3, value: \"BRACKET\" };\n IfcDiscreteAccessoryTypeEnum.CABLEARRANGER = { type: 3, value: \"CABLEARRANGER\" };\n IfcDiscreteAccessoryTypeEnum.ELASTIC_CUSHION = { type: 3, value: \"ELASTIC_CUSHION\" };\n IfcDiscreteAccessoryTypeEnum.EXPANSION_JOINT_DEVICE = { type: 3, value: \"EXPANSION_JOINT_DEVICE\" };\n IfcDiscreteAccessoryTypeEnum.FILLER = { type: 3, value: \"FILLER\" };\n IfcDiscreteAccessoryTypeEnum.FLASHING = { type: 3, value: \"FLASHING\" };\n IfcDiscreteAccessoryTypeEnum.INSULATOR = { type: 3, value: \"INSULATOR\" };\n IfcDiscreteAccessoryTypeEnum.LOCK = { type: 3, value: \"LOCK\" };\n IfcDiscreteAccessoryTypeEnum.PANEL_STRENGTHENING = { type: 3, value: \"PANEL_STRENGTHENING\" };\n IfcDiscreteAccessoryTypeEnum.POINTMACHINEMOUNTINGDEVICE = { type: 3, value: \"POINTMACHINEMOUNTINGDEVICE\" };\n IfcDiscreteAccessoryTypeEnum.POINT_MACHINE_LOCKING_DEVICE = { type: 3, value: \"POINT_MACHINE_LOCKING_DEVICE\" };\n IfcDiscreteAccessoryTypeEnum.RAILBRACE = { type: 3, value: \"RAILBRACE\" };\n IfcDiscreteAccessoryTypeEnum.RAILPAD = { type: 3, value: \"RAILPAD\" };\n IfcDiscreteAccessoryTypeEnum.RAIL_LUBRICATION = { type: 3, value: \"RAIL_LUBRICATION\" };\n IfcDiscreteAccessoryTypeEnum.RAIL_MECHANICAL_EQUIPMENT = { type: 3, value: \"RAIL_MECHANICAL_EQUIPMENT\" };\n IfcDiscreteAccessoryTypeEnum.SHOE = { type: 3, value: \"SHOE\" };\n IfcDiscreteAccessoryTypeEnum.SLIDINGCHAIR = { type: 3, value: \"SLIDINGCHAIR\" };\n IfcDiscreteAccessoryTypeEnum.SOUNDABSORPTION = { type: 3, value: \"SOUNDABSORPTION\" };\n IfcDiscreteAccessoryTypeEnum.TENSIONINGEQUIPMENT = { type: 3, value: \"TENSIONINGEQUIPMENT\" };\n IfcDiscreteAccessoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDiscreteAccessoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDiscreteAccessoryTypeEnum = IfcDiscreteAccessoryTypeEnum;\n class IfcDistributionBoardTypeEnum {\n }\n IfcDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcDistributionBoardTypeEnum.DISPATCHINGBOARD = { type: 3, value: \"DISPATCHINGBOARD\" };\n IfcDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcDistributionBoardTypeEnum.DISTRIBUTIONFRAME = { type: 3, value: \"DISTRIBUTIONFRAME\" };\n IfcDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionBoardTypeEnum = IfcDistributionBoardTypeEnum;\n class IfcDistributionChamberElementTypeEnum {\n }\n IfcDistributionChamberElementTypeEnum.FORMEDDUCT = { type: 3, value: \"FORMEDDUCT\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER = { type: 3, value: \"INSPECTIONCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.INSPECTIONPIT = { type: 3, value: \"INSPECTIONPIT\" };\n IfcDistributionChamberElementTypeEnum.MANHOLE = { type: 3, value: \"MANHOLE\" };\n IfcDistributionChamberElementTypeEnum.METERCHAMBER = { type: 3, value: \"METERCHAMBER\" };\n IfcDistributionChamberElementTypeEnum.SUMP = { type: 3, value: \"SUMP\" };\n IfcDistributionChamberElementTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcDistributionChamberElementTypeEnum.VALVECHAMBER = { type: 3, value: \"VALVECHAMBER\" };\n IfcDistributionChamberElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionChamberElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionChamberElementTypeEnum = IfcDistributionChamberElementTypeEnum;\n class IfcDistributionPortTypeEnum {\n }\n IfcDistributionPortTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcDistributionPortTypeEnum.CABLECARRIER = { type: 3, value: \"CABLECARRIER\" };\n IfcDistributionPortTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcDistributionPortTypeEnum.PIPE = { type: 3, value: \"PIPE\" };\n IfcDistributionPortTypeEnum.WIRELESS = { type: 3, value: \"WIRELESS\" };\n IfcDistributionPortTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionPortTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionPortTypeEnum = IfcDistributionPortTypeEnum;\n class IfcDistributionSystemEnum {\n }\n IfcDistributionSystemEnum.AIRCONDITIONING = { type: 3, value: \"AIRCONDITIONING\" };\n IfcDistributionSystemEnum.AUDIOVISUAL = { type: 3, value: \"AUDIOVISUAL\" };\n IfcDistributionSystemEnum.CATENARY_SYSTEM = { type: 3, value: \"CATENARY_SYSTEM\" };\n IfcDistributionSystemEnum.CHEMICAL = { type: 3, value: \"CHEMICAL\" };\n IfcDistributionSystemEnum.CHILLEDWATER = { type: 3, value: \"CHILLEDWATER\" };\n IfcDistributionSystemEnum.COMMUNICATION = { type: 3, value: \"COMMUNICATION\" };\n IfcDistributionSystemEnum.COMPRESSEDAIR = { type: 3, value: \"COMPRESSEDAIR\" };\n IfcDistributionSystemEnum.CONDENSERWATER = { type: 3, value: \"CONDENSERWATER\" };\n IfcDistributionSystemEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcDistributionSystemEnum.CONVEYING = { type: 3, value: \"CONVEYING\" };\n IfcDistributionSystemEnum.DATA = { type: 3, value: \"DATA\" };\n IfcDistributionSystemEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcDistributionSystemEnum.DOMESTICCOLDWATER = { type: 3, value: \"DOMESTICCOLDWATER\" };\n IfcDistributionSystemEnum.DOMESTICHOTWATER = { type: 3, value: \"DOMESTICHOTWATER\" };\n IfcDistributionSystemEnum.DRAINAGE = { type: 3, value: \"DRAINAGE\" };\n IfcDistributionSystemEnum.EARTHING = { type: 3, value: \"EARTHING\" };\n IfcDistributionSystemEnum.ELECTRICAL = { type: 3, value: \"ELECTRICAL\" };\n IfcDistributionSystemEnum.ELECTROACOUSTIC = { type: 3, value: \"ELECTROACOUSTIC\" };\n IfcDistributionSystemEnum.EXHAUST = { type: 3, value: \"EXHAUST\" };\n IfcDistributionSystemEnum.FIREPROTECTION = { type: 3, value: \"FIREPROTECTION\" };\n IfcDistributionSystemEnum.FIXEDTRANSMISSIONNETWORK = { type: 3, value: \"FIXEDTRANSMISSIONNETWORK\" };\n IfcDistributionSystemEnum.FUEL = { type: 3, value: \"FUEL\" };\n IfcDistributionSystemEnum.GAS = { type: 3, value: \"GAS\" };\n IfcDistributionSystemEnum.HAZARDOUS = { type: 3, value: \"HAZARDOUS\" };\n IfcDistributionSystemEnum.HEATING = { type: 3, value: \"HEATING\" };\n IfcDistributionSystemEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcDistributionSystemEnum.LIGHTNINGPROTECTION = { type: 3, value: \"LIGHTNINGPROTECTION\" };\n IfcDistributionSystemEnum.MOBILENETWORK = { type: 3, value: \"MOBILENETWORK\" };\n IfcDistributionSystemEnum.MONITORINGSYSTEM = { type: 3, value: \"MONITORINGSYSTEM\" };\n IfcDistributionSystemEnum.MUNICIPALSOLIDWASTE = { type: 3, value: \"MUNICIPALSOLIDWASTE\" };\n IfcDistributionSystemEnum.OIL = { type: 3, value: \"OIL\" };\n IfcDistributionSystemEnum.OPERATIONAL = { type: 3, value: \"OPERATIONAL\" };\n IfcDistributionSystemEnum.OPERATIONALTELEPHONYSYSTEM = { type: 3, value: \"OPERATIONALTELEPHONYSYSTEM\" };\n IfcDistributionSystemEnum.OVERHEAD_CONTACTLINE_SYSTEM = { type: 3, value: \"OVERHEAD_CONTACTLINE_SYSTEM\" };\n IfcDistributionSystemEnum.POWERGENERATION = { type: 3, value: \"POWERGENERATION\" };\n IfcDistributionSystemEnum.RAINWATER = { type: 3, value: \"RAINWATER\" };\n IfcDistributionSystemEnum.REFRIGERATION = { type: 3, value: \"REFRIGERATION\" };\n IfcDistributionSystemEnum.RETURN_CIRCUIT = { type: 3, value: \"RETURN_CIRCUIT\" };\n IfcDistributionSystemEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcDistributionSystemEnum.SEWAGE = { type: 3, value: \"SEWAGE\" };\n IfcDistributionSystemEnum.SIGNAL = { type: 3, value: \"SIGNAL\" };\n IfcDistributionSystemEnum.STORMWATER = { type: 3, value: \"STORMWATER\" };\n IfcDistributionSystemEnum.TELEPHONE = { type: 3, value: \"TELEPHONE\" };\n IfcDistributionSystemEnum.TV = { type: 3, value: \"TV\" };\n IfcDistributionSystemEnum.VACUUM = { type: 3, value: \"VACUUM\" };\n IfcDistributionSystemEnum.VENT = { type: 3, value: \"VENT\" };\n IfcDistributionSystemEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcDistributionSystemEnum.WASTEWATER = { type: 3, value: \"WASTEWATER\" };\n IfcDistributionSystemEnum.WATERSUPPLY = { type: 3, value: \"WATERSUPPLY\" };\n IfcDistributionSystemEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDistributionSystemEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDistributionSystemEnum = IfcDistributionSystemEnum;\n class IfcDocumentConfidentialityEnum {\n }\n IfcDocumentConfidentialityEnum.CONFIDENTIAL = { type: 3, value: \"CONFIDENTIAL\" };\n IfcDocumentConfidentialityEnum.PERSONAL = { type: 3, value: \"PERSONAL\" };\n IfcDocumentConfidentialityEnum.PUBLIC = { type: 3, value: \"PUBLIC\" };\n IfcDocumentConfidentialityEnum.RESTRICTED = { type: 3, value: \"RESTRICTED\" };\n IfcDocumentConfidentialityEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDocumentConfidentialityEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDocumentConfidentialityEnum = IfcDocumentConfidentialityEnum;\n class IfcDocumentStatusEnum {\n }\n IfcDocumentStatusEnum.DRAFT = { type: 3, value: \"DRAFT\" };\n IfcDocumentStatusEnum.FINAL = { type: 3, value: \"FINAL\" };\n IfcDocumentStatusEnum.FINALDRAFT = { type: 3, value: \"FINALDRAFT\" };\n IfcDocumentStatusEnum.REVISION = { type: 3, value: \"REVISION\" };\n IfcDocumentStatusEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDocumentStatusEnum = IfcDocumentStatusEnum;\n class IfcDoorPanelOperationEnum {\n }\n IfcDoorPanelOperationEnum.DOUBLE_ACTING = { type: 3, value: \"DOUBLE_ACTING\" };\n IfcDoorPanelOperationEnum.FIXEDPANEL = { type: 3, value: \"FIXEDPANEL\" };\n IfcDoorPanelOperationEnum.FOLDING = { type: 3, value: \"FOLDING\" };\n IfcDoorPanelOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorPanelOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorPanelOperationEnum.SLIDING = { type: 3, value: \"SLIDING\" };\n IfcDoorPanelOperationEnum.SWINGING = { type: 3, value: \"SWINGING\" };\n IfcDoorPanelOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorPanelOperationEnum = IfcDoorPanelOperationEnum;\n class IfcDoorPanelPositionEnum {\n }\n IfcDoorPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcDoorPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcDoorPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcDoorPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorPanelPositionEnum = IfcDoorPanelPositionEnum;\n class IfcDoorStyleConstructionEnum {\n }\n IfcDoorStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC = { type: 3, value: \"ALUMINIUM_PLASTIC\" };\n IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcDoorStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcDoorStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcDoorStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcDoorStyleConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorStyleConstructionEnum = IfcDoorStyleConstructionEnum;\n class IfcDoorStyleOperationEnum {\n }\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING = { type: 3, value: \"DOUBLE_DOOR_DOUBLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING = { type: 3, value: \"DOUBLE_DOOR_FOLDING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING = { type: 3, value: \"DOUBLE_DOOR_SLIDING\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.REVOLVING = { type: 3, value: \"REVOLVING\" };\n IfcDoorStyleOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorStyleOperationEnum = IfcDoorStyleOperationEnum;\n class IfcDoorTypeEnum {\n }\n IfcDoorTypeEnum.BOOM_BARRIER = { type: 3, value: \"BOOM_BARRIER\" };\n IfcDoorTypeEnum.DOOR = { type: 3, value: \"DOOR\" };\n IfcDoorTypeEnum.GATE = { type: 3, value: \"GATE\" };\n IfcDoorTypeEnum.TRAPDOOR = { type: 3, value: \"TRAPDOOR\" };\n IfcDoorTypeEnum.TURNSTILE = { type: 3, value: \"TURNSTILE\" };\n IfcDoorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorTypeEnum = IfcDoorTypeEnum;\n class IfcDoorTypeOperationEnum {\n }\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_DOUBLE_SWING = { type: 3, value: \"DOUBLE_PANEL_DOUBLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_FOLDING = { type: 3, value: \"DOUBLE_PANEL_FOLDING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_LIFTING_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_LIFTING_VERTICAL\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT = { type: 3, value: \"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT\" };\n IfcDoorTypeOperationEnum.DOUBLE_PANEL_SLIDING = { type: 3, value: \"DOUBLE_PANEL_SLIDING\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_LEFT = { type: 3, value: \"DOUBLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.DOUBLE_SWING_RIGHT = { type: 3, value: \"DOUBLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_LEFT = { type: 3, value: \"FOLDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.FOLDING_TO_RIGHT = { type: 3, value: \"FOLDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.LIFTING_HORIZONTAL = { type: 3, value: \"LIFTING_HORIZONTAL\" };\n IfcDoorTypeOperationEnum.LIFTING_VERTICAL_LEFT = { type: 3, value: \"LIFTING_VERTICAL_LEFT\" };\n IfcDoorTypeOperationEnum.LIFTING_VERTICAL_RIGHT = { type: 3, value: \"LIFTING_VERTICAL_RIGHT\" };\n IfcDoorTypeOperationEnum.REVOLVING_HORIZONTAL = { type: 3, value: \"REVOLVING_HORIZONTAL\" };\n IfcDoorTypeOperationEnum.REVOLVING_VERTICAL = { type: 3, value: \"REVOLVING_VERTICAL\" };\n IfcDoorTypeOperationEnum.ROLLINGUP = { type: 3, value: \"ROLLINGUP\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_LEFT = { type: 3, value: \"SINGLE_SWING_LEFT\" };\n IfcDoorTypeOperationEnum.SINGLE_SWING_RIGHT = { type: 3, value: \"SINGLE_SWING_RIGHT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_LEFT = { type: 3, value: \"SLIDING_TO_LEFT\" };\n IfcDoorTypeOperationEnum.SLIDING_TO_RIGHT = { type: 3, value: \"SLIDING_TO_RIGHT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_LEFT = { type: 3, value: \"SWING_FIXED_LEFT\" };\n IfcDoorTypeOperationEnum.SWING_FIXED_RIGHT = { type: 3, value: \"SWING_FIXED_RIGHT\" };\n IfcDoorTypeOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDoorTypeOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDoorTypeOperationEnum = IfcDoorTypeOperationEnum;\n class IfcDuctFittingTypeEnum {\n }\n IfcDuctFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcDuctFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcDuctFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcDuctFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcDuctFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcDuctFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcDuctFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcDuctFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctFittingTypeEnum = IfcDuctFittingTypeEnum;\n class IfcDuctSegmentTypeEnum {\n }\n IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcDuctSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcDuctSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctSegmentTypeEnum = IfcDuctSegmentTypeEnum;\n class IfcDuctSilencerTypeEnum {\n }\n IfcDuctSilencerTypeEnum.FLATOVAL = { type: 3, value: \"FLATOVAL\" };\n IfcDuctSilencerTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcDuctSilencerTypeEnum.ROUND = { type: 3, value: \"ROUND\" };\n IfcDuctSilencerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcDuctSilencerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcDuctSilencerTypeEnum = IfcDuctSilencerTypeEnum;\n class IfcEarthworksCutTypeEnum {\n }\n IfcEarthworksCutTypeEnum.BASE_EXCAVATION = { type: 3, value: \"BASE_EXCAVATION\" };\n IfcEarthworksCutTypeEnum.CUT = { type: 3, value: \"CUT\" };\n IfcEarthworksCutTypeEnum.DREDGING = { type: 3, value: \"DREDGING\" };\n IfcEarthworksCutTypeEnum.EXCAVATION = { type: 3, value: \"EXCAVATION\" };\n IfcEarthworksCutTypeEnum.OVEREXCAVATION = { type: 3, value: \"OVEREXCAVATION\" };\n IfcEarthworksCutTypeEnum.PAVEMENTMILLING = { type: 3, value: \"PAVEMENTMILLING\" };\n IfcEarthworksCutTypeEnum.STEPEXCAVATION = { type: 3, value: \"STEPEXCAVATION\" };\n IfcEarthworksCutTypeEnum.TOPSOILREMOVAL = { type: 3, value: \"TOPSOILREMOVAL\" };\n IfcEarthworksCutTypeEnum.TRENCH = { type: 3, value: \"TRENCH\" };\n IfcEarthworksCutTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEarthworksCutTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEarthworksCutTypeEnum = IfcEarthworksCutTypeEnum;\n class IfcEarthworksFillTypeEnum {\n }\n IfcEarthworksFillTypeEnum.BACKFILL = { type: 3, value: \"BACKFILL\" };\n IfcEarthworksFillTypeEnum.COUNTERWEIGHT = { type: 3, value: \"COUNTERWEIGHT\" };\n IfcEarthworksFillTypeEnum.EMBANKMENT = { type: 3, value: \"EMBANKMENT\" };\n IfcEarthworksFillTypeEnum.SLOPEFILL = { type: 3, value: \"SLOPEFILL\" };\n IfcEarthworksFillTypeEnum.SUBGRADE = { type: 3, value: \"SUBGRADE\" };\n IfcEarthworksFillTypeEnum.SUBGRADEBED = { type: 3, value: \"SUBGRADEBED\" };\n IfcEarthworksFillTypeEnum.TRANSITIONSECTION = { type: 3, value: \"TRANSITIONSECTION\" };\n IfcEarthworksFillTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEarthworksFillTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEarthworksFillTypeEnum = IfcEarthworksFillTypeEnum;\n class IfcElectricApplianceTypeEnum {\n }\n IfcElectricApplianceTypeEnum.DISHWASHER = { type: 3, value: \"DISHWASHER\" };\n IfcElectricApplianceTypeEnum.ELECTRICCOOKER = { type: 3, value: \"ELECTRICCOOKER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGELECTRICHEATER = { type: 3, value: \"FREESTANDINGELECTRICHEATER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGFAN = { type: 3, value: \"FREESTANDINGFAN\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERCOOLER = { type: 3, value: \"FREESTANDINGWATERCOOLER\" };\n IfcElectricApplianceTypeEnum.FREESTANDINGWATERHEATER = { type: 3, value: \"FREESTANDINGWATERHEATER\" };\n IfcElectricApplianceTypeEnum.FREEZER = { type: 3, value: \"FREEZER\" };\n IfcElectricApplianceTypeEnum.FRIDGE_FREEZER = { type: 3, value: \"FRIDGE_FREEZER\" };\n IfcElectricApplianceTypeEnum.HANDDRYER = { type: 3, value: \"HANDDRYER\" };\n IfcElectricApplianceTypeEnum.KITCHENMACHINE = { type: 3, value: \"KITCHENMACHINE\" };\n IfcElectricApplianceTypeEnum.MICROWAVE = { type: 3, value: \"MICROWAVE\" };\n IfcElectricApplianceTypeEnum.PHOTOCOPIER = { type: 3, value: \"PHOTOCOPIER\" };\n IfcElectricApplianceTypeEnum.REFRIGERATOR = { type: 3, value: \"REFRIGERATOR\" };\n IfcElectricApplianceTypeEnum.TUMBLEDRYER = { type: 3, value: \"TUMBLEDRYER\" };\n IfcElectricApplianceTypeEnum.VENDINGMACHINE = { type: 3, value: \"VENDINGMACHINE\" };\n IfcElectricApplianceTypeEnum.WASHINGMACHINE = { type: 3, value: \"WASHINGMACHINE\" };\n IfcElectricApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricApplianceTypeEnum = IfcElectricApplianceTypeEnum;\n class IfcElectricDistributionBoardTypeEnum {\n }\n IfcElectricDistributionBoardTypeEnum.CONSUMERUNIT = { type: 3, value: \"CONSUMERUNIT\" };\n IfcElectricDistributionBoardTypeEnum.DISTRIBUTIONBOARD = { type: 3, value: \"DISTRIBUTIONBOARD\" };\n IfcElectricDistributionBoardTypeEnum.MOTORCONTROLCENTRE = { type: 3, value: \"MOTORCONTROLCENTRE\" };\n IfcElectricDistributionBoardTypeEnum.SWITCHBOARD = { type: 3, value: \"SWITCHBOARD\" };\n IfcElectricDistributionBoardTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricDistributionBoardTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricDistributionBoardTypeEnum = IfcElectricDistributionBoardTypeEnum;\n class IfcElectricFlowStorageDeviceTypeEnum {\n }\n IfcElectricFlowStorageDeviceTypeEnum.BATTERY = { type: 3, value: \"BATTERY\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITOR = { type: 3, value: \"CAPACITOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK = { type: 3, value: \"CAPACITORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.COMPENSATOR = { type: 3, value: \"COMPENSATOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER = { type: 3, value: \"HARMONICFILTER\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTOR = { type: 3, value: \"INDUCTOR\" };\n IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK = { type: 3, value: \"INDUCTORBANK\" };\n IfcElectricFlowStorageDeviceTypeEnum.RECHARGER = { type: 3, value: \"RECHARGER\" };\n IfcElectricFlowStorageDeviceTypeEnum.UPS = { type: 3, value: \"UPS\" };\n IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricFlowStorageDeviceTypeEnum = IfcElectricFlowStorageDeviceTypeEnum;\n class IfcElectricFlowTreatmentDeviceTypeEnum {\n }\n IfcElectricFlowTreatmentDeviceTypeEnum.ELECTRONICFILTER = { type: 3, value: \"ELECTRONICFILTER\" };\n IfcElectricFlowTreatmentDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricFlowTreatmentDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricFlowTreatmentDeviceTypeEnum = IfcElectricFlowTreatmentDeviceTypeEnum;\n class IfcElectricGeneratorTypeEnum {\n }\n IfcElectricGeneratorTypeEnum.CHP = { type: 3, value: \"CHP\" };\n IfcElectricGeneratorTypeEnum.ENGINEGENERATOR = { type: 3, value: \"ENGINEGENERATOR\" };\n IfcElectricGeneratorTypeEnum.STANDALONE = { type: 3, value: \"STANDALONE\" };\n IfcElectricGeneratorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricGeneratorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricGeneratorTypeEnum = IfcElectricGeneratorTypeEnum;\n class IfcElectricMotorTypeEnum {\n }\n IfcElectricMotorTypeEnum.DC = { type: 3, value: \"DC\" };\n IfcElectricMotorTypeEnum.INDUCTION = { type: 3, value: \"INDUCTION\" };\n IfcElectricMotorTypeEnum.POLYPHASE = { type: 3, value: \"POLYPHASE\" };\n IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS = { type: 3, value: \"RELUCTANCESYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.SYNCHRONOUS = { type: 3, value: \"SYNCHRONOUS\" };\n IfcElectricMotorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricMotorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricMotorTypeEnum = IfcElectricMotorTypeEnum;\n class IfcElectricTimeControlTypeEnum {\n }\n IfcElectricTimeControlTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcElectricTimeControlTypeEnum.TIMECLOCK = { type: 3, value: \"TIMECLOCK\" };\n IfcElectricTimeControlTypeEnum.TIMEDELAY = { type: 3, value: \"TIMEDELAY\" };\n IfcElectricTimeControlTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElectricTimeControlTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElectricTimeControlTypeEnum = IfcElectricTimeControlTypeEnum;\n class IfcElementAssemblyTypeEnum {\n }\n IfcElementAssemblyTypeEnum.ABUTMENT = { type: 3, value: \"ABUTMENT\" };\n IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY = { type: 3, value: \"ACCESSORY_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.ARCH = { type: 3, value: \"ARCH\" };\n IfcElementAssemblyTypeEnum.BEAM_GRID = { type: 3, value: \"BEAM_GRID\" };\n IfcElementAssemblyTypeEnum.BRACED_FRAME = { type: 3, value: \"BRACED_FRAME\" };\n IfcElementAssemblyTypeEnum.CROSS_BRACING = { type: 3, value: \"CROSS_BRACING\" };\n IfcElementAssemblyTypeEnum.DECK = { type: 3, value: \"DECK\" };\n IfcElementAssemblyTypeEnum.DILATATIONPANEL = { type: 3, value: \"DILATATIONPANEL\" };\n IfcElementAssemblyTypeEnum.ENTRANCEWORKS = { type: 3, value: \"ENTRANCEWORKS\" };\n IfcElementAssemblyTypeEnum.GIRDER = { type: 3, value: \"GIRDER\" };\n IfcElementAssemblyTypeEnum.GRID = { type: 3, value: \"GRID\" };\n IfcElementAssemblyTypeEnum.MAST = { type: 3, value: \"MAST\" };\n IfcElementAssemblyTypeEnum.PIER = { type: 3, value: \"PIER\" };\n IfcElementAssemblyTypeEnum.PYLON = { type: 3, value: \"PYLON\" };\n IfcElementAssemblyTypeEnum.RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY = { type: 3, value: \"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT = { type: 3, value: \"REINFORCEMENT_UNIT\" };\n IfcElementAssemblyTypeEnum.RIGID_FRAME = { type: 3, value: \"RIGID_FRAME\" };\n IfcElementAssemblyTypeEnum.SHELTER = { type: 3, value: \"SHELTER\" };\n IfcElementAssemblyTypeEnum.SIGNALASSEMBLY = { type: 3, value: \"SIGNALASSEMBLY\" };\n IfcElementAssemblyTypeEnum.SLAB_FIELD = { type: 3, value: \"SLAB_FIELD\" };\n IfcElementAssemblyTypeEnum.SUMPBUSTER = { type: 3, value: \"SUMPBUSTER\" };\n IfcElementAssemblyTypeEnum.SUPPORTINGASSEMBLY = { type: 3, value: \"SUPPORTINGASSEMBLY\" };\n IfcElementAssemblyTypeEnum.SUSPENSIONASSEMBLY = { type: 3, value: \"SUSPENSIONASSEMBLY\" };\n IfcElementAssemblyTypeEnum.TRACKPANEL = { type: 3, value: \"TRACKPANEL\" };\n IfcElementAssemblyTypeEnum.TRACTION_SWITCHING_ASSEMBLY = { type: 3, value: \"TRACTION_SWITCHING_ASSEMBLY\" };\n IfcElementAssemblyTypeEnum.TRAFFIC_CALMING_DEVICE = { type: 3, value: \"TRAFFIC_CALMING_DEVICE\" };\n IfcElementAssemblyTypeEnum.TRUSS = { type: 3, value: \"TRUSS\" };\n IfcElementAssemblyTypeEnum.TURNOUTPANEL = { type: 3, value: \"TURNOUTPANEL\" };\n IfcElementAssemblyTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcElementAssemblyTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcElementAssemblyTypeEnum = IfcElementAssemblyTypeEnum;\n class IfcElementCompositionEnum {\n }\n IfcElementCompositionEnum.COMPLEX = { type: 3, value: \"COMPLEX\" };\n IfcElementCompositionEnum.ELEMENT = { type: 3, value: \"ELEMENT\" };\n IfcElementCompositionEnum.PARTIAL = { type: 3, value: \"PARTIAL\" };\n IFC4X32.IfcElementCompositionEnum = IfcElementCompositionEnum;\n class IfcEngineTypeEnum {\n }\n IfcEngineTypeEnum.EXTERNALCOMBUSTION = { type: 3, value: \"EXTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.INTERNALCOMBUSTION = { type: 3, value: \"INTERNALCOMBUSTION\" };\n IfcEngineTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEngineTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEngineTypeEnum = IfcEngineTypeEnum;\n class IfcEvaporativeCoolerTypeEnum {\n }\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER = { type: 3, value: \"DIRECTEVAPORATIVEAIRWASHER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER = { type: 3, value: \"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION = { type: 3, value: \"INDIRECTDIRECTCOMBINATION\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER = { type: 3, value: \"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER\" };\n IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL = { type: 3, value: \"INDIRECTEVAPORATIVEWETCOIL\" };\n IfcEvaporativeCoolerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporativeCoolerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEvaporativeCoolerTypeEnum = IfcEvaporativeCoolerTypeEnum;\n class IfcEvaporatorTypeEnum {\n }\n IfcEvaporatorTypeEnum.DIRECTEXPANSION = { type: 3, value: \"DIRECTEXPANSION\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE = { type: 3, value: \"DIRECTEXPANSIONBRAZEDPLATE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE = { type: 3, value: \"DIRECTEXPANSIONSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE = { type: 3, value: \"DIRECTEXPANSIONTUBEINTUBE\" };\n IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE = { type: 3, value: \"FLOODEDSHELLANDTUBE\" };\n IfcEvaporatorTypeEnum.SHELLANDCOIL = { type: 3, value: \"SHELLANDCOIL\" };\n IfcEvaporatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEvaporatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEvaporatorTypeEnum = IfcEvaporatorTypeEnum;\n class IfcEventTriggerTypeEnum {\n }\n IfcEventTriggerTypeEnum.EVENTCOMPLEX = { type: 3, value: \"EVENTCOMPLEX\" };\n IfcEventTriggerTypeEnum.EVENTMESSAGE = { type: 3, value: \"EVENTMESSAGE\" };\n IfcEventTriggerTypeEnum.EVENTRULE = { type: 3, value: \"EVENTRULE\" };\n IfcEventTriggerTypeEnum.EVENTTIME = { type: 3, value: \"EVENTTIME\" };\n IfcEventTriggerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTriggerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEventTriggerTypeEnum = IfcEventTriggerTypeEnum;\n class IfcEventTypeEnum {\n }\n IfcEventTypeEnum.ENDEVENT = { type: 3, value: \"ENDEVENT\" };\n IfcEventTypeEnum.INTERMEDIATEEVENT = { type: 3, value: \"INTERMEDIATEEVENT\" };\n IfcEventTypeEnum.STARTEVENT = { type: 3, value: \"STARTEVENT\" };\n IfcEventTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcEventTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcEventTypeEnum = IfcEventTypeEnum;\n class IfcExternalSpatialElementTypeEnum {\n }\n IfcExternalSpatialElementTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcExternalSpatialElementTypeEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcExternalSpatialElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcExternalSpatialElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcExternalSpatialElementTypeEnum = IfcExternalSpatialElementTypeEnum;\n class IfcFacilityPartCommonTypeEnum {\n }\n IfcFacilityPartCommonTypeEnum.ABOVEGROUND = { type: 3, value: \"ABOVEGROUND\" };\n IfcFacilityPartCommonTypeEnum.BELOWGROUND = { type: 3, value: \"BELOWGROUND\" };\n IfcFacilityPartCommonTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcFacilityPartCommonTypeEnum.LEVELCROSSING = { type: 3, value: \"LEVELCROSSING\" };\n IfcFacilityPartCommonTypeEnum.SEGMENT = { type: 3, value: \"SEGMENT\" };\n IfcFacilityPartCommonTypeEnum.SUBSTRUCTURE = { type: 3, value: \"SUBSTRUCTURE\" };\n IfcFacilityPartCommonTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcFacilityPartCommonTypeEnum.TERMINAL = { type: 3, value: \"TERMINAL\" };\n IfcFacilityPartCommonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFacilityPartCommonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFacilityPartCommonTypeEnum = IfcFacilityPartCommonTypeEnum;\n class IfcFacilityUsageEnum {\n }\n IfcFacilityUsageEnum.LATERAL = { type: 3, value: \"LATERAL\" };\n IfcFacilityUsageEnum.LONGITUDINAL = { type: 3, value: \"LONGITUDINAL\" };\n IfcFacilityUsageEnum.REGION = { type: 3, value: \"REGION\" };\n IfcFacilityUsageEnum.VERTICAL = { type: 3, value: \"VERTICAL\" };\n IfcFacilityUsageEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFacilityUsageEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFacilityUsageEnum = IfcFacilityUsageEnum;\n class IfcFanTypeEnum {\n }\n IfcFanTypeEnum.CENTRIFUGALAIRFOIL = { type: 3, value: \"CENTRIFUGALAIRFOIL\" };\n IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED = { type: 3, value: \"CENTRIFUGALBACKWARDINCLINEDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED = { type: 3, value: \"CENTRIFUGALFORWARDCURVED\" };\n IfcFanTypeEnum.CENTRIFUGALRADIAL = { type: 3, value: \"CENTRIFUGALRADIAL\" };\n IfcFanTypeEnum.PROPELLORAXIAL = { type: 3, value: \"PROPELLORAXIAL\" };\n IfcFanTypeEnum.TUBEAXIAL = { type: 3, value: \"TUBEAXIAL\" };\n IfcFanTypeEnum.VANEAXIAL = { type: 3, value: \"VANEAXIAL\" };\n IfcFanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFanTypeEnum = IfcFanTypeEnum;\n class IfcFastenerTypeEnum {\n }\n IfcFastenerTypeEnum.GLUE = { type: 3, value: \"GLUE\" };\n IfcFastenerTypeEnum.MORTAR = { type: 3, value: \"MORTAR\" };\n IfcFastenerTypeEnum.WELD = { type: 3, value: \"WELD\" };\n IfcFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFastenerTypeEnum = IfcFastenerTypeEnum;\n class IfcFilterTypeEnum {\n }\n IfcFilterTypeEnum.AIRPARTICLEFILTER = { type: 3, value: \"AIRPARTICLEFILTER\" };\n IfcFilterTypeEnum.COMPRESSEDAIRFILTER = { type: 3, value: \"COMPRESSEDAIRFILTER\" };\n IfcFilterTypeEnum.ODORFILTER = { type: 3, value: \"ODORFILTER\" };\n IfcFilterTypeEnum.OILFILTER = { type: 3, value: \"OILFILTER\" };\n IfcFilterTypeEnum.STRAINER = { type: 3, value: \"STRAINER\" };\n IfcFilterTypeEnum.WATERFILTER = { type: 3, value: \"WATERFILTER\" };\n IfcFilterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFilterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFilterTypeEnum = IfcFilterTypeEnum;\n class IfcFireSuppressionTerminalTypeEnum {\n }\n IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET = { type: 3, value: \"BREECHINGINLET\" };\n IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT = { type: 3, value: \"FIREHYDRANT\" };\n IfcFireSuppressionTerminalTypeEnum.FIREMONITOR = { type: 3, value: \"FIREMONITOR\" };\n IfcFireSuppressionTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLER = { type: 3, value: \"SPRINKLER\" };\n IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR = { type: 3, value: \"SPRINKLERDEFLECTOR\" };\n IfcFireSuppressionTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFireSuppressionTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFireSuppressionTerminalTypeEnum = IfcFireSuppressionTerminalTypeEnum;\n class IfcFlowDirectionEnum {\n }\n IfcFlowDirectionEnum.SINK = { type: 3, value: \"SINK\" };\n IfcFlowDirectionEnum.SOURCE = { type: 3, value: \"SOURCE\" };\n IfcFlowDirectionEnum.SOURCEANDSINK = { type: 3, value: \"SOURCEANDSINK\" };\n IfcFlowDirectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowDirectionEnum = IfcFlowDirectionEnum;\n class IfcFlowInstrumentTypeEnum {\n }\n IfcFlowInstrumentTypeEnum.AMMETER = { type: 3, value: \"AMMETER\" };\n IfcFlowInstrumentTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcFlowInstrumentTypeEnum.FREQUENCYMETER = { type: 3, value: \"FREQUENCYMETER\" };\n IfcFlowInstrumentTypeEnum.PHASEANGLEMETER = { type: 3, value: \"PHASEANGLEMETER\" };\n IfcFlowInstrumentTypeEnum.POWERFACTORMETER = { type: 3, value: \"POWERFACTORMETER\" };\n IfcFlowInstrumentTypeEnum.PRESSUREGAUGE = { type: 3, value: \"PRESSUREGAUGE\" };\n IfcFlowInstrumentTypeEnum.THERMOMETER = { type: 3, value: \"THERMOMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER = { type: 3, value: \"VOLTMETER\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK = { type: 3, value: \"VOLTMETER_PEAK\" };\n IfcFlowInstrumentTypeEnum.VOLTMETER_RMS = { type: 3, value: \"VOLTMETER_RMS\" };\n IfcFlowInstrumentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowInstrumentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowInstrumentTypeEnum = IfcFlowInstrumentTypeEnum;\n class IfcFlowMeterTypeEnum {\n }\n IfcFlowMeterTypeEnum.ENERGYMETER = { type: 3, value: \"ENERGYMETER\" };\n IfcFlowMeterTypeEnum.GASMETER = { type: 3, value: \"GASMETER\" };\n IfcFlowMeterTypeEnum.OILMETER = { type: 3, value: \"OILMETER\" };\n IfcFlowMeterTypeEnum.WATERMETER = { type: 3, value: \"WATERMETER\" };\n IfcFlowMeterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFlowMeterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFlowMeterTypeEnum = IfcFlowMeterTypeEnum;\n class IfcFootingTypeEnum {\n }\n IfcFootingTypeEnum.CAISSON_FOUNDATION = { type: 3, value: \"CAISSON_FOUNDATION\" };\n IfcFootingTypeEnum.FOOTING_BEAM = { type: 3, value: \"FOOTING_BEAM\" };\n IfcFootingTypeEnum.PAD_FOOTING = { type: 3, value: \"PAD_FOOTING\" };\n IfcFootingTypeEnum.PILE_CAP = { type: 3, value: \"PILE_CAP\" };\n IfcFootingTypeEnum.STRIP_FOOTING = { type: 3, value: \"STRIP_FOOTING\" };\n IfcFootingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFootingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFootingTypeEnum = IfcFootingTypeEnum;\n class IfcFurnitureTypeEnum {\n }\n IfcFurnitureTypeEnum.BED = { type: 3, value: \"BED\" };\n IfcFurnitureTypeEnum.CHAIR = { type: 3, value: \"CHAIR\" };\n IfcFurnitureTypeEnum.DESK = { type: 3, value: \"DESK\" };\n IfcFurnitureTypeEnum.FILECABINET = { type: 3, value: \"FILECABINET\" };\n IfcFurnitureTypeEnum.SHELF = { type: 3, value: \"SHELF\" };\n IfcFurnitureTypeEnum.SOFA = { type: 3, value: \"SOFA\" };\n IfcFurnitureTypeEnum.TABLE = { type: 3, value: \"TABLE\" };\n IfcFurnitureTypeEnum.TECHNICALCABINET = { type: 3, value: \"TECHNICALCABINET\" };\n IfcFurnitureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcFurnitureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcFurnitureTypeEnum = IfcFurnitureTypeEnum;\n class IfcGeographicElementTypeEnum {\n }\n IfcGeographicElementTypeEnum.SOIL_BORING_POINT = { type: 3, value: \"SOIL_BORING_POINT\" };\n IfcGeographicElementTypeEnum.TERRAIN = { type: 3, value: \"TERRAIN\" };\n IfcGeographicElementTypeEnum.VEGETATION = { type: 3, value: \"VEGETATION\" };\n IfcGeographicElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeographicElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeographicElementTypeEnum = IfcGeographicElementTypeEnum;\n class IfcGeometricProjectionEnum {\n }\n IfcGeometricProjectionEnum.ELEVATION_VIEW = { type: 3, value: \"ELEVATION_VIEW\" };\n IfcGeometricProjectionEnum.GRAPH_VIEW = { type: 3, value: \"GRAPH_VIEW\" };\n IfcGeometricProjectionEnum.MODEL_VIEW = { type: 3, value: \"MODEL_VIEW\" };\n IfcGeometricProjectionEnum.PLAN_VIEW = { type: 3, value: \"PLAN_VIEW\" };\n IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW = { type: 3, value: \"REFLECTED_PLAN_VIEW\" };\n IfcGeometricProjectionEnum.SECTION_VIEW = { type: 3, value: \"SECTION_VIEW\" };\n IfcGeometricProjectionEnum.SKETCH_VIEW = { type: 3, value: \"SKETCH_VIEW\" };\n IfcGeometricProjectionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeometricProjectionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeometricProjectionEnum = IfcGeometricProjectionEnum;\n class IfcGeotechnicalStratumTypeEnum {\n }\n IfcGeotechnicalStratumTypeEnum.SOLID = { type: 3, value: \"SOLID\" };\n IfcGeotechnicalStratumTypeEnum.VOID = { type: 3, value: \"VOID\" };\n IfcGeotechnicalStratumTypeEnum.WATER = { type: 3, value: \"WATER\" };\n IfcGeotechnicalStratumTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGeotechnicalStratumTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGeotechnicalStratumTypeEnum = IfcGeotechnicalStratumTypeEnum;\n class IfcGlobalOrLocalEnum {\n }\n IfcGlobalOrLocalEnum.GLOBAL_COORDS = { type: 3, value: \"GLOBAL_COORDS\" };\n IfcGlobalOrLocalEnum.LOCAL_COORDS = { type: 3, value: \"LOCAL_COORDS\" };\n IFC4X32.IfcGlobalOrLocalEnum = IfcGlobalOrLocalEnum;\n class IfcGridTypeEnum {\n }\n IfcGridTypeEnum.IRREGULAR = { type: 3, value: \"IRREGULAR\" };\n IfcGridTypeEnum.RADIAL = { type: 3, value: \"RADIAL\" };\n IfcGridTypeEnum.RECTANGULAR = { type: 3, value: \"RECTANGULAR\" };\n IfcGridTypeEnum.TRIANGULAR = { type: 3, value: \"TRIANGULAR\" };\n IfcGridTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcGridTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcGridTypeEnum = IfcGridTypeEnum;\n class IfcHeatExchangerTypeEnum {\n }\n IfcHeatExchangerTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcHeatExchangerTypeEnum.SHELLANDTUBE = { type: 3, value: \"SHELLANDTUBE\" };\n IfcHeatExchangerTypeEnum.TURNOUTHEATING = { type: 3, value: \"TURNOUTHEATING\" };\n IfcHeatExchangerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHeatExchangerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcHeatExchangerTypeEnum = IfcHeatExchangerTypeEnum;\n class IfcHumidifierTypeEnum {\n }\n IfcHumidifierTypeEnum.ADIABATICAIRWASHER = { type: 3, value: \"ADIABATICAIRWASHER\" };\n IfcHumidifierTypeEnum.ADIABATICATOMIZING = { type: 3, value: \"ADIABATICATOMIZING\" };\n IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE = { type: 3, value: \"ADIABATICCOMPRESSEDAIRNOZZLE\" };\n IfcHumidifierTypeEnum.ADIABATICPAN = { type: 3, value: \"ADIABATICPAN\" };\n IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA = { type: 3, value: \"ADIABATICRIGIDMEDIA\" };\n IfcHumidifierTypeEnum.ADIABATICULTRASONIC = { type: 3, value: \"ADIABATICULTRASONIC\" };\n IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT = { type: 3, value: \"ADIABATICWETTEDELEMENT\" };\n IfcHumidifierTypeEnum.ASSISTEDBUTANE = { type: 3, value: \"ASSISTEDBUTANE\" };\n IfcHumidifierTypeEnum.ASSISTEDELECTRIC = { type: 3, value: \"ASSISTEDELECTRIC\" };\n IfcHumidifierTypeEnum.ASSISTEDNATURALGAS = { type: 3, value: \"ASSISTEDNATURALGAS\" };\n IfcHumidifierTypeEnum.ASSISTEDPROPANE = { type: 3, value: \"ASSISTEDPROPANE\" };\n IfcHumidifierTypeEnum.ASSISTEDSTEAM = { type: 3, value: \"ASSISTEDSTEAM\" };\n IfcHumidifierTypeEnum.STEAMINJECTION = { type: 3, value: \"STEAMINJECTION\" };\n IfcHumidifierTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcHumidifierTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcHumidifierTypeEnum = IfcHumidifierTypeEnum;\n class IfcImpactProtectionDeviceTypeEnum {\n }\n IfcImpactProtectionDeviceTypeEnum.BUMPER = { type: 3, value: \"BUMPER\" };\n IfcImpactProtectionDeviceTypeEnum.CRASHCUSHION = { type: 3, value: \"CRASHCUSHION\" };\n IfcImpactProtectionDeviceTypeEnum.DAMPINGSYSTEM = { type: 3, value: \"DAMPINGSYSTEM\" };\n IfcImpactProtectionDeviceTypeEnum.FENDER = { type: 3, value: \"FENDER\" };\n IfcImpactProtectionDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcImpactProtectionDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcImpactProtectionDeviceTypeEnum = IfcImpactProtectionDeviceTypeEnum;\n class IfcInterceptorTypeEnum {\n }\n IfcInterceptorTypeEnum.CYCLONIC = { type: 3, value: \"CYCLONIC\" };\n IfcInterceptorTypeEnum.GREASE = { type: 3, value: \"GREASE\" };\n IfcInterceptorTypeEnum.OIL = { type: 3, value: \"OIL\" };\n IfcInterceptorTypeEnum.PETROL = { type: 3, value: \"PETROL\" };\n IfcInterceptorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInterceptorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInterceptorTypeEnum = IfcInterceptorTypeEnum;\n class IfcInternalOrExternalEnum {\n }\n IfcInternalOrExternalEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcInternalOrExternalEnum.EXTERNAL_EARTH = { type: 3, value: \"EXTERNAL_EARTH\" };\n IfcInternalOrExternalEnum.EXTERNAL_FIRE = { type: 3, value: \"EXTERNAL_FIRE\" };\n IfcInternalOrExternalEnum.EXTERNAL_WATER = { type: 3, value: \"EXTERNAL_WATER\" };\n IfcInternalOrExternalEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcInternalOrExternalEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInternalOrExternalEnum = IfcInternalOrExternalEnum;\n class IfcInventoryTypeEnum {\n }\n IfcInventoryTypeEnum.ASSETINVENTORY = { type: 3, value: \"ASSETINVENTORY\" };\n IfcInventoryTypeEnum.FURNITUREINVENTORY = { type: 3, value: \"FURNITUREINVENTORY\" };\n IfcInventoryTypeEnum.SPACEINVENTORY = { type: 3, value: \"SPACEINVENTORY\" };\n IfcInventoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcInventoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcInventoryTypeEnum = IfcInventoryTypeEnum;\n class IfcJunctionBoxTypeEnum {\n }\n IfcJunctionBoxTypeEnum.DATA = { type: 3, value: \"DATA\" };\n IfcJunctionBoxTypeEnum.POWER = { type: 3, value: \"POWER\" };\n IfcJunctionBoxTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcJunctionBoxTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcJunctionBoxTypeEnum = IfcJunctionBoxTypeEnum;\n class IfcKnotType {\n }\n IfcKnotType.PIECEWISE_BEZIER_KNOTS = { type: 3, value: \"PIECEWISE_BEZIER_KNOTS\" };\n IfcKnotType.QUASI_UNIFORM_KNOTS = { type: 3, value: \"QUASI_UNIFORM_KNOTS\" };\n IfcKnotType.UNIFORM_KNOTS = { type: 3, value: \"UNIFORM_KNOTS\" };\n IfcKnotType.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcKnotType = IfcKnotType;\n class IfcLaborResourceTypeEnum {\n }\n IfcLaborResourceTypeEnum.ADMINISTRATION = { type: 3, value: \"ADMINISTRATION\" };\n IfcLaborResourceTypeEnum.CARPENTRY = { type: 3, value: \"CARPENTRY\" };\n IfcLaborResourceTypeEnum.CLEANING = { type: 3, value: \"CLEANING\" };\n IfcLaborResourceTypeEnum.CONCRETE = { type: 3, value: \"CONCRETE\" };\n IfcLaborResourceTypeEnum.DRYWALL = { type: 3, value: \"DRYWALL\" };\n IfcLaborResourceTypeEnum.ELECTRIC = { type: 3, value: \"ELECTRIC\" };\n IfcLaborResourceTypeEnum.FINISHING = { type: 3, value: \"FINISHING\" };\n IfcLaborResourceTypeEnum.FLOORING = { type: 3, value: \"FLOORING\" };\n IfcLaborResourceTypeEnum.GENERAL = { type: 3, value: \"GENERAL\" };\n IfcLaborResourceTypeEnum.HVAC = { type: 3, value: \"HVAC\" };\n IfcLaborResourceTypeEnum.LANDSCAPING = { type: 3, value: \"LANDSCAPING\" };\n IfcLaborResourceTypeEnum.MASONRY = { type: 3, value: \"MASONRY\" };\n IfcLaborResourceTypeEnum.PAINTING = { type: 3, value: \"PAINTING\" };\n IfcLaborResourceTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcLaborResourceTypeEnum.PLUMBING = { type: 3, value: \"PLUMBING\" };\n IfcLaborResourceTypeEnum.ROOFING = { type: 3, value: \"ROOFING\" };\n IfcLaborResourceTypeEnum.SITEGRADING = { type: 3, value: \"SITEGRADING\" };\n IfcLaborResourceTypeEnum.STEELWORK = { type: 3, value: \"STEELWORK\" };\n IfcLaborResourceTypeEnum.SURVEYING = { type: 3, value: \"SURVEYING\" };\n IfcLaborResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLaborResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLaborResourceTypeEnum = IfcLaborResourceTypeEnum;\n class IfcLampTypeEnum {\n }\n IfcLampTypeEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLampTypeEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLampTypeEnum.HALOGEN = { type: 3, value: \"HALOGEN\" };\n IfcLampTypeEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLampTypeEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLampTypeEnum.LED = { type: 3, value: \"LED\" };\n IfcLampTypeEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLampTypeEnum.OLED = { type: 3, value: \"OLED\" };\n IfcLampTypeEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLampTypeEnum = IfcLampTypeEnum;\n class IfcLayerSetDirectionEnum {\n }\n IfcLayerSetDirectionEnum.AXIS1 = { type: 3, value: \"AXIS1\" };\n IfcLayerSetDirectionEnum.AXIS2 = { type: 3, value: \"AXIS2\" };\n IfcLayerSetDirectionEnum.AXIS3 = { type: 3, value: \"AXIS3\" };\n IFC4X32.IfcLayerSetDirectionEnum = IfcLayerSetDirectionEnum;\n class IfcLightDistributionCurveEnum {\n }\n IfcLightDistributionCurveEnum.TYPE_A = { type: 3, value: \"TYPE_A\" };\n IfcLightDistributionCurveEnum.TYPE_B = { type: 3, value: \"TYPE_B\" };\n IfcLightDistributionCurveEnum.TYPE_C = { type: 3, value: \"TYPE_C\" };\n IfcLightDistributionCurveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightDistributionCurveEnum = IfcLightDistributionCurveEnum;\n class IfcLightEmissionSourceEnum {\n }\n IfcLightEmissionSourceEnum.COMPACTFLUORESCENT = { type: 3, value: \"COMPACTFLUORESCENT\" };\n IfcLightEmissionSourceEnum.FLUORESCENT = { type: 3, value: \"FLUORESCENT\" };\n IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY = { type: 3, value: \"HIGHPRESSUREMERCURY\" };\n IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM = { type: 3, value: \"HIGHPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE = { type: 3, value: \"LIGHTEMITTINGDIODE\" };\n IfcLightEmissionSourceEnum.LOWPRESSURESODIUM = { type: 3, value: \"LOWPRESSURESODIUM\" };\n IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN = { type: 3, value: \"LOWVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN = { type: 3, value: \"MAINVOLTAGEHALOGEN\" };\n IfcLightEmissionSourceEnum.METALHALIDE = { type: 3, value: \"METALHALIDE\" };\n IfcLightEmissionSourceEnum.TUNGSTENFILAMENT = { type: 3, value: \"TUNGSTENFILAMENT\" };\n IfcLightEmissionSourceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightEmissionSourceEnum = IfcLightEmissionSourceEnum;\n class IfcLightFixtureTypeEnum {\n }\n IfcLightFixtureTypeEnum.DIRECTIONSOURCE = { type: 3, value: \"DIRECTIONSOURCE\" };\n IfcLightFixtureTypeEnum.POINTSOURCE = { type: 3, value: \"POINTSOURCE\" };\n IfcLightFixtureTypeEnum.SECURITYLIGHTING = { type: 3, value: \"SECURITYLIGHTING\" };\n IfcLightFixtureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLightFixtureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLightFixtureTypeEnum = IfcLightFixtureTypeEnum;\n class IfcLiquidTerminalTypeEnum {\n }\n IfcLiquidTerminalTypeEnum.HOSEREEL = { type: 3, value: \"HOSEREEL\" };\n IfcLiquidTerminalTypeEnum.LOADINGARM = { type: 3, value: \"LOADINGARM\" };\n IfcLiquidTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLiquidTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLiquidTerminalTypeEnum = IfcLiquidTerminalTypeEnum;\n class IfcLoadGroupTypeEnum {\n }\n IfcLoadGroupTypeEnum.LOAD_CASE = { type: 3, value: \"LOAD_CASE\" };\n IfcLoadGroupTypeEnum.LOAD_COMBINATION = { type: 3, value: \"LOAD_COMBINATION\" };\n IfcLoadGroupTypeEnum.LOAD_GROUP = { type: 3, value: \"LOAD_GROUP\" };\n IfcLoadGroupTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcLoadGroupTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcLoadGroupTypeEnum = IfcLoadGroupTypeEnum;\n class IfcLogicalOperatorEnum {\n }\n IfcLogicalOperatorEnum.LOGICALAND = { type: 3, value: \"LOGICALAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTAND = { type: 3, value: \"LOGICALNOTAND\" };\n IfcLogicalOperatorEnum.LOGICALNOTOR = { type: 3, value: \"LOGICALNOTOR\" };\n IfcLogicalOperatorEnum.LOGICALOR = { type: 3, value: \"LOGICALOR\" };\n IfcLogicalOperatorEnum.LOGICALXOR = { type: 3, value: \"LOGICALXOR\" };\n IFC4X32.IfcLogicalOperatorEnum = IfcLogicalOperatorEnum;\n class IfcMarineFacilityTypeEnum {\n }\n IfcMarineFacilityTypeEnum.BARRIERBEACH = { type: 3, value: \"BARRIERBEACH\" };\n IfcMarineFacilityTypeEnum.BREAKWATER = { type: 3, value: \"BREAKWATER\" };\n IfcMarineFacilityTypeEnum.CANAL = { type: 3, value: \"CANAL\" };\n IfcMarineFacilityTypeEnum.DRYDOCK = { type: 3, value: \"DRYDOCK\" };\n IfcMarineFacilityTypeEnum.FLOATINGDOCK = { type: 3, value: \"FLOATINGDOCK\" };\n IfcMarineFacilityTypeEnum.HYDROLIFT = { type: 3, value: \"HYDROLIFT\" };\n IfcMarineFacilityTypeEnum.JETTY = { type: 3, value: \"JETTY\" };\n IfcMarineFacilityTypeEnum.LAUNCHRECOVERY = { type: 3, value: \"LAUNCHRECOVERY\" };\n IfcMarineFacilityTypeEnum.MARINEDEFENCE = { type: 3, value: \"MARINEDEFENCE\" };\n IfcMarineFacilityTypeEnum.NAVIGATIONALCHANNEL = { type: 3, value: \"NAVIGATIONALCHANNEL\" };\n IfcMarineFacilityTypeEnum.PORT = { type: 3, value: \"PORT\" };\n IfcMarineFacilityTypeEnum.QUAY = { type: 3, value: \"QUAY\" };\n IfcMarineFacilityTypeEnum.REVETMENT = { type: 3, value: \"REVETMENT\" };\n IfcMarineFacilityTypeEnum.SHIPLIFT = { type: 3, value: \"SHIPLIFT\" };\n IfcMarineFacilityTypeEnum.SHIPLOCK = { type: 3, value: \"SHIPLOCK\" };\n IfcMarineFacilityTypeEnum.SHIPYARD = { type: 3, value: \"SHIPYARD\" };\n IfcMarineFacilityTypeEnum.SLIPWAY = { type: 3, value: \"SLIPWAY\" };\n IfcMarineFacilityTypeEnum.WATERWAY = { type: 3, value: \"WATERWAY\" };\n IfcMarineFacilityTypeEnum.WATERWAYSHIPLIFT = { type: 3, value: \"WATERWAYSHIPLIFT\" };\n IfcMarineFacilityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMarineFacilityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMarineFacilityTypeEnum = IfcMarineFacilityTypeEnum;\n class IfcMarinePartTypeEnum {\n }\n IfcMarinePartTypeEnum.ABOVEWATERLINE = { type: 3, value: \"ABOVEWATERLINE\" };\n IfcMarinePartTypeEnum.ANCHORAGE = { type: 3, value: \"ANCHORAGE\" };\n IfcMarinePartTypeEnum.APPROACHCHANNEL = { type: 3, value: \"APPROACHCHANNEL\" };\n IfcMarinePartTypeEnum.BELOWWATERLINE = { type: 3, value: \"BELOWWATERLINE\" };\n IfcMarinePartTypeEnum.BERTHINGSTRUCTURE = { type: 3, value: \"BERTHINGSTRUCTURE\" };\n IfcMarinePartTypeEnum.CHAMBER = { type: 3, value: \"CHAMBER\" };\n IfcMarinePartTypeEnum.CILL_LEVEL = { type: 3, value: \"CILL_LEVEL\" };\n IfcMarinePartTypeEnum.COPELEVEL = { type: 3, value: \"COPELEVEL\" };\n IfcMarinePartTypeEnum.CORE = { type: 3, value: \"CORE\" };\n IfcMarinePartTypeEnum.CREST = { type: 3, value: \"CREST\" };\n IfcMarinePartTypeEnum.GATEHEAD = { type: 3, value: \"GATEHEAD\" };\n IfcMarinePartTypeEnum.GUDINGSTRUCTURE = { type: 3, value: \"GUDINGSTRUCTURE\" };\n IfcMarinePartTypeEnum.HIGHWATERLINE = { type: 3, value: \"HIGHWATERLINE\" };\n IfcMarinePartTypeEnum.LANDFIELD = { type: 3, value: \"LANDFIELD\" };\n IfcMarinePartTypeEnum.LEEWARDSIDE = { type: 3, value: \"LEEWARDSIDE\" };\n IfcMarinePartTypeEnum.LOWWATERLINE = { type: 3, value: \"LOWWATERLINE\" };\n IfcMarinePartTypeEnum.MANUFACTURING = { type: 3, value: \"MANUFACTURING\" };\n IfcMarinePartTypeEnum.NAVIGATIONALAREA = { type: 3, value: \"NAVIGATIONALAREA\" };\n IfcMarinePartTypeEnum.PROTECTION = { type: 3, value: \"PROTECTION\" };\n IfcMarinePartTypeEnum.SHIPTRANSFER = { type: 3, value: \"SHIPTRANSFER\" };\n IfcMarinePartTypeEnum.STORAGEAREA = { type: 3, value: \"STORAGEAREA\" };\n IfcMarinePartTypeEnum.VEHICLESERVICING = { type: 3, value: \"VEHICLESERVICING\" };\n IfcMarinePartTypeEnum.WATERFIELD = { type: 3, value: \"WATERFIELD\" };\n IfcMarinePartTypeEnum.WEATHERSIDE = { type: 3, value: \"WEATHERSIDE\" };\n IfcMarinePartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMarinePartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMarinePartTypeEnum = IfcMarinePartTypeEnum;\n class IfcMechanicalFastenerTypeEnum {\n }\n IfcMechanicalFastenerTypeEnum.ANCHORBOLT = { type: 3, value: \"ANCHORBOLT\" };\n IfcMechanicalFastenerTypeEnum.BOLT = { type: 3, value: \"BOLT\" };\n IfcMechanicalFastenerTypeEnum.CHAIN = { type: 3, value: \"CHAIN\" };\n IfcMechanicalFastenerTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcMechanicalFastenerTypeEnum.DOWEL = { type: 3, value: \"DOWEL\" };\n IfcMechanicalFastenerTypeEnum.NAIL = { type: 3, value: \"NAIL\" };\n IfcMechanicalFastenerTypeEnum.NAILPLATE = { type: 3, value: \"NAILPLATE\" };\n IfcMechanicalFastenerTypeEnum.RAILFASTENING = { type: 3, value: \"RAILFASTENING\" };\n IfcMechanicalFastenerTypeEnum.RAILJOINT = { type: 3, value: \"RAILJOINT\" };\n IfcMechanicalFastenerTypeEnum.RIVET = { type: 3, value: \"RIVET\" };\n IfcMechanicalFastenerTypeEnum.ROPE = { type: 3, value: \"ROPE\" };\n IfcMechanicalFastenerTypeEnum.SCREW = { type: 3, value: \"SCREW\" };\n IfcMechanicalFastenerTypeEnum.SHEARCONNECTOR = { type: 3, value: \"SHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.STAPLE = { type: 3, value: \"STAPLE\" };\n IfcMechanicalFastenerTypeEnum.STUDSHEARCONNECTOR = { type: 3, value: \"STUDSHEARCONNECTOR\" };\n IfcMechanicalFastenerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMechanicalFastenerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMechanicalFastenerTypeEnum = IfcMechanicalFastenerTypeEnum;\n class IfcMedicalDeviceTypeEnum {\n }\n IfcMedicalDeviceTypeEnum.AIRSTATION = { type: 3, value: \"AIRSTATION\" };\n IfcMedicalDeviceTypeEnum.FEEDAIRUNIT = { type: 3, value: \"FEEDAIRUNIT\" };\n IfcMedicalDeviceTypeEnum.OXYGENGENERATOR = { type: 3, value: \"OXYGENGENERATOR\" };\n IfcMedicalDeviceTypeEnum.OXYGENPLANT = { type: 3, value: \"OXYGENPLANT\" };\n IfcMedicalDeviceTypeEnum.VACUUMSTATION = { type: 3, value: \"VACUUMSTATION\" };\n IfcMedicalDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMedicalDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMedicalDeviceTypeEnum = IfcMedicalDeviceTypeEnum;\n class IfcMemberTypeEnum {\n }\n IfcMemberTypeEnum.ARCH_SEGMENT = { type: 3, value: \"ARCH_SEGMENT\" };\n IfcMemberTypeEnum.BRACE = { type: 3, value: \"BRACE\" };\n IfcMemberTypeEnum.CHORD = { type: 3, value: \"CHORD\" };\n IfcMemberTypeEnum.COLLAR = { type: 3, value: \"COLLAR\" };\n IfcMemberTypeEnum.MEMBER = { type: 3, value: \"MEMBER\" };\n IfcMemberTypeEnum.MULLION = { type: 3, value: \"MULLION\" };\n IfcMemberTypeEnum.PLATE = { type: 3, value: \"PLATE\" };\n IfcMemberTypeEnum.POST = { type: 3, value: \"POST\" };\n IfcMemberTypeEnum.PURLIN = { type: 3, value: \"PURLIN\" };\n IfcMemberTypeEnum.RAFTER = { type: 3, value: \"RAFTER\" };\n IfcMemberTypeEnum.STAY_CABLE = { type: 3, value: \"STAY_CABLE\" };\n IfcMemberTypeEnum.STIFFENING_RIB = { type: 3, value: \"STIFFENING_RIB\" };\n IfcMemberTypeEnum.STRINGER = { type: 3, value: \"STRINGER\" };\n IfcMemberTypeEnum.STRUCTURALCABLE = { type: 3, value: \"STRUCTURALCABLE\" };\n IfcMemberTypeEnum.STRUT = { type: 3, value: \"STRUT\" };\n IfcMemberTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcMemberTypeEnum.SUSPENDER = { type: 3, value: \"SUSPENDER\" };\n IfcMemberTypeEnum.SUSPENSION_CABLE = { type: 3, value: \"SUSPENSION_CABLE\" };\n IfcMemberTypeEnum.TIEBAR = { type: 3, value: \"TIEBAR\" };\n IfcMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMemberTypeEnum = IfcMemberTypeEnum;\n class IfcMobileTelecommunicationsApplianceTypeEnum {\n }\n IfcMobileTelecommunicationsApplianceTypeEnum.ACCESSPOINT = { type: 3, value: \"ACCESSPOINT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.BASEBANDUNIT = { type: 3, value: \"BASEBANDUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.BASETRANSCEIVERSTATION = { type: 3, value: \"BASETRANSCEIVERSTATION\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.E_UTRAN_NODE_B = { type: 3, value: \"E_UTRAN_NODE_B\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.GATEWAY_GPRS_SUPPORT_NODE = { type: 3, value: \"GATEWAY_GPRS_SUPPORT_NODE\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MASTERUNIT = { type: 3, value: \"MASTERUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MOBILESWITCHINGCENTER = { type: 3, value: \"MOBILESWITCHINGCENTER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.MSCSERVER = { type: 3, value: \"MSCSERVER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.PACKETCONTROLUNIT = { type: 3, value: \"PACKETCONTROLUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.REMOTERADIOUNIT = { type: 3, value: \"REMOTERADIOUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.REMOTEUNIT = { type: 3, value: \"REMOTEUNIT\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.SERVICE_GPRS_SUPPORT_NODE = { type: 3, value: \"SERVICE_GPRS_SUPPORT_NODE\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.SUBSCRIBERSERVER = { type: 3, value: \"SUBSCRIBERSERVER\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMobileTelecommunicationsApplianceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMobileTelecommunicationsApplianceTypeEnum = IfcMobileTelecommunicationsApplianceTypeEnum;\n class IfcMooringDeviceTypeEnum {\n }\n IfcMooringDeviceTypeEnum.BOLLARD = { type: 3, value: \"BOLLARD\" };\n IfcMooringDeviceTypeEnum.LINETENSIONER = { type: 3, value: \"LINETENSIONER\" };\n IfcMooringDeviceTypeEnum.MAGNETICDEVICE = { type: 3, value: \"MAGNETICDEVICE\" };\n IfcMooringDeviceTypeEnum.MOORINGHOOKS = { type: 3, value: \"MOORINGHOOKS\" };\n IfcMooringDeviceTypeEnum.VACUUMDEVICE = { type: 3, value: \"VACUUMDEVICE\" };\n IfcMooringDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMooringDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMooringDeviceTypeEnum = IfcMooringDeviceTypeEnum;\n class IfcMotorConnectionTypeEnum {\n }\n IfcMotorConnectionTypeEnum.BELTDRIVE = { type: 3, value: \"BELTDRIVE\" };\n IfcMotorConnectionTypeEnum.COUPLING = { type: 3, value: \"COUPLING\" };\n IfcMotorConnectionTypeEnum.DIRECTDRIVE = { type: 3, value: \"DIRECTDRIVE\" };\n IfcMotorConnectionTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcMotorConnectionTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcMotorConnectionTypeEnum = IfcMotorConnectionTypeEnum;\n class IfcNavigationElementTypeEnum {\n }\n IfcNavigationElementTypeEnum.BEACON = { type: 3, value: \"BEACON\" };\n IfcNavigationElementTypeEnum.BUOY = { type: 3, value: \"BUOY\" };\n IfcNavigationElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcNavigationElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcNavigationElementTypeEnum = IfcNavigationElementTypeEnum;\n class IfcObjectTypeEnum {\n }\n IfcObjectTypeEnum.ACTOR = { type: 3, value: \"ACTOR\" };\n IfcObjectTypeEnum.CONTROL = { type: 3, value: \"CONTROL\" };\n IfcObjectTypeEnum.GROUP = { type: 3, value: \"GROUP\" };\n IfcObjectTypeEnum.PROCESS = { type: 3, value: \"PROCESS\" };\n IfcObjectTypeEnum.PRODUCT = { type: 3, value: \"PRODUCT\" };\n IfcObjectTypeEnum.PROJECT = { type: 3, value: \"PROJECT\" };\n IfcObjectTypeEnum.RESOURCE = { type: 3, value: \"RESOURCE\" };\n IfcObjectTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcObjectTypeEnum = IfcObjectTypeEnum;\n class IfcObjectiveEnum {\n }\n IfcObjectiveEnum.CODECOMPLIANCE = { type: 3, value: \"CODECOMPLIANCE\" };\n IfcObjectiveEnum.CODEWAIVER = { type: 3, value: \"CODEWAIVER\" };\n IfcObjectiveEnum.DESIGNINTENT = { type: 3, value: \"DESIGNINTENT\" };\n IfcObjectiveEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcObjectiveEnum.HEALTHANDSAFETY = { type: 3, value: \"HEALTHANDSAFETY\" };\n IfcObjectiveEnum.MERGECONFLICT = { type: 3, value: \"MERGECONFLICT\" };\n IfcObjectiveEnum.MODELVIEW = { type: 3, value: \"MODELVIEW\" };\n IfcObjectiveEnum.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcObjectiveEnum.REQUIREMENT = { type: 3, value: \"REQUIREMENT\" };\n IfcObjectiveEnum.SPECIFICATION = { type: 3, value: \"SPECIFICATION\" };\n IfcObjectiveEnum.TRIGGERCONDITION = { type: 3, value: \"TRIGGERCONDITION\" };\n IfcObjectiveEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcObjectiveEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcObjectiveEnum = IfcObjectiveEnum;\n class IfcOccupantTypeEnum {\n }\n IfcOccupantTypeEnum.ASSIGNEE = { type: 3, value: \"ASSIGNEE\" };\n IfcOccupantTypeEnum.ASSIGNOR = { type: 3, value: \"ASSIGNOR\" };\n IfcOccupantTypeEnum.LESSEE = { type: 3, value: \"LESSEE\" };\n IfcOccupantTypeEnum.LESSOR = { type: 3, value: \"LESSOR\" };\n IfcOccupantTypeEnum.LETTINGAGENT = { type: 3, value: \"LETTINGAGENT\" };\n IfcOccupantTypeEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcOccupantTypeEnum.TENANT = { type: 3, value: \"TENANT\" };\n IfcOccupantTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOccupantTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOccupantTypeEnum = IfcOccupantTypeEnum;\n class IfcOpeningElementTypeEnum {\n }\n IfcOpeningElementTypeEnum.OPENING = { type: 3, value: \"OPENING\" };\n IfcOpeningElementTypeEnum.RECESS = { type: 3, value: \"RECESS\" };\n IfcOpeningElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOpeningElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOpeningElementTypeEnum = IfcOpeningElementTypeEnum;\n class IfcOutletTypeEnum {\n }\n IfcOutletTypeEnum.AUDIOVISUALOUTLET = { type: 3, value: \"AUDIOVISUALOUTLET\" };\n IfcOutletTypeEnum.COMMUNICATIONSOUTLET = { type: 3, value: \"COMMUNICATIONSOUTLET\" };\n IfcOutletTypeEnum.DATAOUTLET = { type: 3, value: \"DATAOUTLET\" };\n IfcOutletTypeEnum.POWEROUTLET = { type: 3, value: \"POWEROUTLET\" };\n IfcOutletTypeEnum.TELEPHONEOUTLET = { type: 3, value: \"TELEPHONEOUTLET\" };\n IfcOutletTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcOutletTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcOutletTypeEnum = IfcOutletTypeEnum;\n class IfcPavementTypeEnum {\n }\n IfcPavementTypeEnum.FLEXIBLE = { type: 3, value: \"FLEXIBLE\" };\n IfcPavementTypeEnum.RIGID = { type: 3, value: \"RIGID\" };\n IfcPavementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPavementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPavementTypeEnum = IfcPavementTypeEnum;\n class IfcPerformanceHistoryTypeEnum {\n }\n IfcPerformanceHistoryTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPerformanceHistoryTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPerformanceHistoryTypeEnum = IfcPerformanceHistoryTypeEnum;\n class IfcPermeableCoveringOperationEnum {\n }\n IfcPermeableCoveringOperationEnum.GRILL = { type: 3, value: \"GRILL\" };\n IfcPermeableCoveringOperationEnum.LOUVER = { type: 3, value: \"LOUVER\" };\n IfcPermeableCoveringOperationEnum.SCREEN = { type: 3, value: \"SCREEN\" };\n IfcPermeableCoveringOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermeableCoveringOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPermeableCoveringOperationEnum = IfcPermeableCoveringOperationEnum;\n class IfcPermitTypeEnum {\n }\n IfcPermitTypeEnum.ACCESS = { type: 3, value: \"ACCESS\" };\n IfcPermitTypeEnum.BUILDING = { type: 3, value: \"BUILDING\" };\n IfcPermitTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcPermitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPermitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPermitTypeEnum = IfcPermitTypeEnum;\n class IfcPhysicalOrVirtualEnum {\n }\n IfcPhysicalOrVirtualEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcPhysicalOrVirtualEnum.VIRTUAL = { type: 3, value: \"VIRTUAL\" };\n IfcPhysicalOrVirtualEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPhysicalOrVirtualEnum = IfcPhysicalOrVirtualEnum;\n class IfcPileConstructionEnum {\n }\n IfcPileConstructionEnum.CAST_IN_PLACE = { type: 3, value: \"CAST_IN_PLACE\" };\n IfcPileConstructionEnum.COMPOSITE = { type: 3, value: \"COMPOSITE\" };\n IfcPileConstructionEnum.PRECAST_CONCRETE = { type: 3, value: \"PRECAST_CONCRETE\" };\n IfcPileConstructionEnum.PREFAB_STEEL = { type: 3, value: \"PREFAB_STEEL\" };\n IfcPileConstructionEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPileConstructionEnum = IfcPileConstructionEnum;\n class IfcPileTypeEnum {\n }\n IfcPileTypeEnum.BORED = { type: 3, value: \"BORED\" };\n IfcPileTypeEnum.COHESION = { type: 3, value: \"COHESION\" };\n IfcPileTypeEnum.DRIVEN = { type: 3, value: \"DRIVEN\" };\n IfcPileTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcPileTypeEnum.JETGROUTING = { type: 3, value: \"JETGROUTING\" };\n IfcPileTypeEnum.SUPPORT = { type: 3, value: \"SUPPORT\" };\n IfcPileTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPileTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPileTypeEnum = IfcPileTypeEnum;\n class IfcPipeFittingTypeEnum {\n }\n IfcPipeFittingTypeEnum.BEND = { type: 3, value: \"BEND\" };\n IfcPipeFittingTypeEnum.CONNECTOR = { type: 3, value: \"CONNECTOR\" };\n IfcPipeFittingTypeEnum.ENTRY = { type: 3, value: \"ENTRY\" };\n IfcPipeFittingTypeEnum.EXIT = { type: 3, value: \"EXIT\" };\n IfcPipeFittingTypeEnum.JUNCTION = { type: 3, value: \"JUNCTION\" };\n IfcPipeFittingTypeEnum.OBSTRUCTION = { type: 3, value: \"OBSTRUCTION\" };\n IfcPipeFittingTypeEnum.TRANSITION = { type: 3, value: \"TRANSITION\" };\n IfcPipeFittingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeFittingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPipeFittingTypeEnum = IfcPipeFittingTypeEnum;\n class IfcPipeSegmentTypeEnum {\n }\n IfcPipeSegmentTypeEnum.CULVERT = { type: 3, value: \"CULVERT\" };\n IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT = { type: 3, value: \"FLEXIBLESEGMENT\" };\n IfcPipeSegmentTypeEnum.GUTTER = { type: 3, value: \"GUTTER\" };\n IfcPipeSegmentTypeEnum.RIGIDSEGMENT = { type: 3, value: \"RIGIDSEGMENT\" };\n IfcPipeSegmentTypeEnum.SPOOL = { type: 3, value: \"SPOOL\" };\n IfcPipeSegmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPipeSegmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPipeSegmentTypeEnum = IfcPipeSegmentTypeEnum;\n class IfcPlateTypeEnum {\n }\n IfcPlateTypeEnum.BASE_PLATE = { type: 3, value: \"BASE_PLATE\" };\n IfcPlateTypeEnum.COVER_PLATE = { type: 3, value: \"COVER_PLATE\" };\n IfcPlateTypeEnum.CURTAIN_PANEL = { type: 3, value: \"CURTAIN_PANEL\" };\n IfcPlateTypeEnum.FLANGE_PLATE = { type: 3, value: \"FLANGE_PLATE\" };\n IfcPlateTypeEnum.GUSSET_PLATE = { type: 3, value: \"GUSSET_PLATE\" };\n IfcPlateTypeEnum.SHEET = { type: 3, value: \"SHEET\" };\n IfcPlateTypeEnum.SPLICE_PLATE = { type: 3, value: \"SPLICE_PLATE\" };\n IfcPlateTypeEnum.STIFFENER_PLATE = { type: 3, value: \"STIFFENER_PLATE\" };\n IfcPlateTypeEnum.WEB_PLATE = { type: 3, value: \"WEB_PLATE\" };\n IfcPlateTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPlateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPlateTypeEnum = IfcPlateTypeEnum;\n class IfcPreferredSurfaceCurveRepresentation {\n }\n IfcPreferredSurfaceCurveRepresentation.CURVE3D = { type: 3, value: \"CURVE3D\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S1 = { type: 3, value: \"PCURVE_S1\" };\n IfcPreferredSurfaceCurveRepresentation.PCURVE_S2 = { type: 3, value: \"PCURVE_S2\" };\n IFC4X32.IfcPreferredSurfaceCurveRepresentation = IfcPreferredSurfaceCurveRepresentation;\n class IfcProcedureTypeEnum {\n }\n IfcProcedureTypeEnum.ADVICE_CAUTION = { type: 3, value: \"ADVICE_CAUTION\" };\n IfcProcedureTypeEnum.ADVICE_NOTE = { type: 3, value: \"ADVICE_NOTE\" };\n IfcProcedureTypeEnum.ADVICE_WARNING = { type: 3, value: \"ADVICE_WARNING\" };\n IfcProcedureTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcProcedureTypeEnum.DIAGNOSTIC = { type: 3, value: \"DIAGNOSTIC\" };\n IfcProcedureTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcProcedureTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcProcedureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProcedureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProcedureTypeEnum = IfcProcedureTypeEnum;\n class IfcProfileTypeEnum {\n }\n IfcProfileTypeEnum.AREA = { type: 3, value: \"AREA\" };\n IfcProfileTypeEnum.CURVE = { type: 3, value: \"CURVE\" };\n IFC4X32.IfcProfileTypeEnum = IfcProfileTypeEnum;\n class IfcProjectOrderTypeEnum {\n }\n IfcProjectOrderTypeEnum.CHANGEORDER = { type: 3, value: \"CHANGEORDER\" };\n IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER = { type: 3, value: \"MAINTENANCEWORKORDER\" };\n IfcProjectOrderTypeEnum.MOVEORDER = { type: 3, value: \"MOVEORDER\" };\n IfcProjectOrderTypeEnum.PURCHASEORDER = { type: 3, value: \"PURCHASEORDER\" };\n IfcProjectOrderTypeEnum.WORKORDER = { type: 3, value: \"WORKORDER\" };\n IfcProjectOrderTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectOrderTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProjectOrderTypeEnum = IfcProjectOrderTypeEnum;\n class IfcProjectedOrTrueLengthEnum {\n }\n IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH = { type: 3, value: \"PROJECTED_LENGTH\" };\n IfcProjectedOrTrueLengthEnum.TRUE_LENGTH = { type: 3, value: \"TRUE_LENGTH\" };\n IFC4X32.IfcProjectedOrTrueLengthEnum = IfcProjectedOrTrueLengthEnum;\n class IfcProjectionElementTypeEnum {\n }\n IfcProjectionElementTypeEnum.BLISTER = { type: 3, value: \"BLISTER\" };\n IfcProjectionElementTypeEnum.DEVIATOR = { type: 3, value: \"DEVIATOR\" };\n IfcProjectionElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProjectionElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProjectionElementTypeEnum = IfcProjectionElementTypeEnum;\n class IfcPropertySetTemplateTypeEnum {\n }\n IfcPropertySetTemplateTypeEnum.PSET_MATERIALDRIVEN = { type: 3, value: \"PSET_MATERIALDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_OCCURRENCEDRIVEN = { type: 3, value: \"PSET_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PERFORMANCEDRIVEN = { type: 3, value: \"PSET_PERFORMANCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_PROFILEDRIVEN = { type: 3, value: \"PSET_PROFILEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENONLY = { type: 3, value: \"PSET_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.PSET_TYPEDRIVENOVERRIDE = { type: 3, value: \"PSET_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.QTO_OCCURRENCEDRIVEN = { type: 3, value: \"QTO_OCCURRENCEDRIVEN\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENONLY = { type: 3, value: \"QTO_TYPEDRIVENONLY\" };\n IfcPropertySetTemplateTypeEnum.QTO_TYPEDRIVENOVERRIDE = { type: 3, value: \"QTO_TYPEDRIVENOVERRIDE\" };\n IfcPropertySetTemplateTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPropertySetTemplateTypeEnum = IfcPropertySetTemplateTypeEnum;\n class IfcProtectiveDeviceTrippingUnitTypeEnum {\n }\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTROMAGNETIC = { type: 3, value: \"ELECTROMAGNETIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.ELECTRONIC = { type: 3, value: \"ELECTRONIC\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.RESIDUALCURRENT = { type: 3, value: \"RESIDUALCURRENT\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProtectiveDeviceTrippingUnitTypeEnum = IfcProtectiveDeviceTrippingUnitTypeEnum;\n class IfcProtectiveDeviceTypeEnum {\n }\n IfcProtectiveDeviceTypeEnum.ANTI_ARCING_DEVICE = { type: 3, value: \"ANTI_ARCING_DEVICE\" };\n IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER = { type: 3, value: \"CIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.EARTHINGSWITCH = { type: 3, value: \"EARTHINGSWITCH\" };\n IfcProtectiveDeviceTypeEnum.EARTHLEAKAGECIRCUITBREAKER = { type: 3, value: \"EARTHLEAKAGECIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR = { type: 3, value: \"FUSEDISCONNECTOR\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER = { type: 3, value: \"RESIDUALCURRENTCIRCUITBREAKER\" };\n IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH = { type: 3, value: \"RESIDUALCURRENTSWITCH\" };\n IfcProtectiveDeviceTypeEnum.SPARKGAP = { type: 3, value: \"SPARKGAP\" };\n IfcProtectiveDeviceTypeEnum.VARISTOR = { type: 3, value: \"VARISTOR\" };\n IfcProtectiveDeviceTypeEnum.VOLTAGELIMITER = { type: 3, value: \"VOLTAGELIMITER\" };\n IfcProtectiveDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcProtectiveDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcProtectiveDeviceTypeEnum = IfcProtectiveDeviceTypeEnum;\n class IfcPumpTypeEnum {\n }\n IfcPumpTypeEnum.CIRCULATOR = { type: 3, value: \"CIRCULATOR\" };\n IfcPumpTypeEnum.ENDSUCTION = { type: 3, value: \"ENDSUCTION\" };\n IfcPumpTypeEnum.SPLITCASE = { type: 3, value: \"SPLITCASE\" };\n IfcPumpTypeEnum.SUBMERSIBLEPUMP = { type: 3, value: \"SUBMERSIBLEPUMP\" };\n IfcPumpTypeEnum.SUMPPUMP = { type: 3, value: \"SUMPPUMP\" };\n IfcPumpTypeEnum.VERTICALINLINE = { type: 3, value: \"VERTICALINLINE\" };\n IfcPumpTypeEnum.VERTICALTURBINE = { type: 3, value: \"VERTICALTURBINE\" };\n IfcPumpTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcPumpTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcPumpTypeEnum = IfcPumpTypeEnum;\n class IfcRailTypeEnum {\n }\n IfcRailTypeEnum.BLADE = { type: 3, value: \"BLADE\" };\n IfcRailTypeEnum.CHECKRAIL = { type: 3, value: \"CHECKRAIL\" };\n IfcRailTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailTypeEnum.RACKRAIL = { type: 3, value: \"RACKRAIL\" };\n IfcRailTypeEnum.RAIL = { type: 3, value: \"RAIL\" };\n IfcRailTypeEnum.STOCKRAIL = { type: 3, value: \"STOCKRAIL\" };\n IfcRailTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailTypeEnum = IfcRailTypeEnum;\n class IfcRailingTypeEnum {\n }\n IfcRailingTypeEnum.BALUSTRADE = { type: 3, value: \"BALUSTRADE\" };\n IfcRailingTypeEnum.FENCE = { type: 3, value: \"FENCE\" };\n IfcRailingTypeEnum.GUARDRAIL = { type: 3, value: \"GUARDRAIL\" };\n IfcRailingTypeEnum.HANDRAIL = { type: 3, value: \"HANDRAIL\" };\n IfcRailingTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailingTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailingTypeEnum = IfcRailingTypeEnum;\n class IfcRailwayPartTypeEnum {\n }\n IfcRailwayPartTypeEnum.DILATATIONSUPERSTRUCTURE = { type: 3, value: \"DILATATIONSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.LINESIDESTRUCTURE = { type: 3, value: \"LINESIDESTRUCTURE\" };\n IfcRailwayPartTypeEnum.LINESIDESTRUCTUREPART = { type: 3, value: \"LINESIDESTRUCTUREPART\" };\n IfcRailwayPartTypeEnum.PLAINTRACKSUPERSTRUCTURE = { type: 3, value: \"PLAINTRACKSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.SUPERSTRUCTURE = { type: 3, value: \"SUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.TRACKSTRUCTURE = { type: 3, value: \"TRACKSTRUCTURE\" };\n IfcRailwayPartTypeEnum.TRACKSTRUCTUREPART = { type: 3, value: \"TRACKSTRUCTUREPART\" };\n IfcRailwayPartTypeEnum.TURNOUTSUPERSTRUCTURE = { type: 3, value: \"TURNOUTSUPERSTRUCTURE\" };\n IfcRailwayPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailwayPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailwayPartTypeEnum = IfcRailwayPartTypeEnum;\n class IfcRailwayTypeEnum {\n }\n IfcRailwayTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRailwayTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRailwayTypeEnum = IfcRailwayTypeEnum;\n class IfcRampFlightTypeEnum {\n }\n IfcRampFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcRampFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcRampFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRampFlightTypeEnum = IfcRampFlightTypeEnum;\n class IfcRampTypeEnum {\n }\n IfcRampTypeEnum.HALF_TURN_RAMP = { type: 3, value: \"HALF_TURN_RAMP\" };\n IfcRampTypeEnum.QUARTER_TURN_RAMP = { type: 3, value: \"QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.SPIRAL_RAMP = { type: 3, value: \"SPIRAL_RAMP\" };\n IfcRampTypeEnum.STRAIGHT_RUN_RAMP = { type: 3, value: \"STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP = { type: 3, value: \"TWO_QUARTER_TURN_RAMP\" };\n IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP = { type: 3, value: \"TWO_STRAIGHT_RUN_RAMP\" };\n IfcRampTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRampTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRampTypeEnum = IfcRampTypeEnum;\n class IfcRecurrenceTypeEnum {\n }\n IfcRecurrenceTypeEnum.BY_DAY_COUNT = { type: 3, value: \"BY_DAY_COUNT\" };\n IfcRecurrenceTypeEnum.BY_WEEKDAY_COUNT = { type: 3, value: \"BY_WEEKDAY_COUNT\" };\n IfcRecurrenceTypeEnum.DAILY = { type: 3, value: \"DAILY\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_DAY_OF_MONTH = { type: 3, value: \"MONTHLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.MONTHLY_BY_POSITION = { type: 3, value: \"MONTHLY_BY_POSITION\" };\n IfcRecurrenceTypeEnum.WEEKLY = { type: 3, value: \"WEEKLY\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_DAY_OF_MONTH = { type: 3, value: \"YEARLY_BY_DAY_OF_MONTH\" };\n IfcRecurrenceTypeEnum.YEARLY_BY_POSITION = { type: 3, value: \"YEARLY_BY_POSITION\" };\n IFC4X32.IfcRecurrenceTypeEnum = IfcRecurrenceTypeEnum;\n class IfcReferentTypeEnum {\n }\n IfcReferentTypeEnum.BOUNDARY = { type: 3, value: \"BOUNDARY\" };\n IfcReferentTypeEnum.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcReferentTypeEnum.KILOPOINT = { type: 3, value: \"KILOPOINT\" };\n IfcReferentTypeEnum.LANDMARK = { type: 3, value: \"LANDMARK\" };\n IfcReferentTypeEnum.MILEPOINT = { type: 3, value: \"MILEPOINT\" };\n IfcReferentTypeEnum.POSITION = { type: 3, value: \"POSITION\" };\n IfcReferentTypeEnum.REFERENCEMARKER = { type: 3, value: \"REFERENCEMARKER\" };\n IfcReferentTypeEnum.STATION = { type: 3, value: \"STATION\" };\n IfcReferentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReferentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReferentTypeEnum = IfcReferentTypeEnum;\n class IfcReflectanceMethodEnum {\n }\n IfcReflectanceMethodEnum.BLINN = { type: 3, value: \"BLINN\" };\n IfcReflectanceMethodEnum.FLAT = { type: 3, value: \"FLAT\" };\n IfcReflectanceMethodEnum.GLASS = { type: 3, value: \"GLASS\" };\n IfcReflectanceMethodEnum.MATT = { type: 3, value: \"MATT\" };\n IfcReflectanceMethodEnum.METAL = { type: 3, value: \"METAL\" };\n IfcReflectanceMethodEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcReflectanceMethodEnum.PHONG = { type: 3, value: \"PHONG\" };\n IfcReflectanceMethodEnum.PHYSICAL = { type: 3, value: \"PHYSICAL\" };\n IfcReflectanceMethodEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcReflectanceMethodEnum.STRAUSS = { type: 3, value: \"STRAUSS\" };\n IfcReflectanceMethodEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReflectanceMethodEnum = IfcReflectanceMethodEnum;\n class IfcReinforcedSoilTypeEnum {\n }\n IfcReinforcedSoilTypeEnum.DYNAMICALLYCOMPACTED = { type: 3, value: \"DYNAMICALLYCOMPACTED\" };\n IfcReinforcedSoilTypeEnum.GROUTED = { type: 3, value: \"GROUTED\" };\n IfcReinforcedSoilTypeEnum.REPLACED = { type: 3, value: \"REPLACED\" };\n IfcReinforcedSoilTypeEnum.ROLLERCOMPACTED = { type: 3, value: \"ROLLERCOMPACTED\" };\n IfcReinforcedSoilTypeEnum.SURCHARGEPRELOADED = { type: 3, value: \"SURCHARGEPRELOADED\" };\n IfcReinforcedSoilTypeEnum.VERTICALLYDRAINED = { type: 3, value: \"VERTICALLYDRAINED\" };\n IfcReinforcedSoilTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcedSoilTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcedSoilTypeEnum = IfcReinforcedSoilTypeEnum;\n class IfcReinforcingBarRoleEnum {\n }\n IfcReinforcingBarRoleEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarRoleEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarRoleEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarRoleEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarRoleEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarRoleEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarRoleEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarRoleEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarRoleEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingBarRoleEnum = IfcReinforcingBarRoleEnum;\n class IfcReinforcingBarSurfaceEnum {\n }\n IfcReinforcingBarSurfaceEnum.PLAIN = { type: 3, value: \"PLAIN\" };\n IfcReinforcingBarSurfaceEnum.TEXTURED = { type: 3, value: \"TEXTURED\" };\n IFC4X32.IfcReinforcingBarSurfaceEnum = IfcReinforcingBarSurfaceEnum;\n class IfcReinforcingBarTypeEnum {\n }\n IfcReinforcingBarTypeEnum.ANCHORING = { type: 3, value: \"ANCHORING\" };\n IfcReinforcingBarTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcReinforcingBarTypeEnum.LIGATURE = { type: 3, value: \"LIGATURE\" };\n IfcReinforcingBarTypeEnum.MAIN = { type: 3, value: \"MAIN\" };\n IfcReinforcingBarTypeEnum.PUNCHING = { type: 3, value: \"PUNCHING\" };\n IfcReinforcingBarTypeEnum.RING = { type: 3, value: \"RING\" };\n IfcReinforcingBarTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcReinforcingBarTypeEnum.SPACEBAR = { type: 3, value: \"SPACEBAR\" };\n IfcReinforcingBarTypeEnum.STUD = { type: 3, value: \"STUD\" };\n IfcReinforcingBarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingBarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingBarTypeEnum = IfcReinforcingBarTypeEnum;\n class IfcReinforcingMeshTypeEnum {\n }\n IfcReinforcingMeshTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcReinforcingMeshTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcReinforcingMeshTypeEnum = IfcReinforcingMeshTypeEnum;\n class IfcRoadPartTypeEnum {\n }\n IfcRoadPartTypeEnum.BICYCLECROSSING = { type: 3, value: \"BICYCLECROSSING\" };\n IfcRoadPartTypeEnum.BUS_STOP = { type: 3, value: \"BUS_STOP\" };\n IfcRoadPartTypeEnum.CARRIAGEWAY = { type: 3, value: \"CARRIAGEWAY\" };\n IfcRoadPartTypeEnum.CENTRALISLAND = { type: 3, value: \"CENTRALISLAND\" };\n IfcRoadPartTypeEnum.CENTRALRESERVE = { type: 3, value: \"CENTRALRESERVE\" };\n IfcRoadPartTypeEnum.HARDSHOULDER = { type: 3, value: \"HARDSHOULDER\" };\n IfcRoadPartTypeEnum.INTERSECTION = { type: 3, value: \"INTERSECTION\" };\n IfcRoadPartTypeEnum.LAYBY = { type: 3, value: \"LAYBY\" };\n IfcRoadPartTypeEnum.PARKINGBAY = { type: 3, value: \"PARKINGBAY\" };\n IfcRoadPartTypeEnum.PASSINGBAY = { type: 3, value: \"PASSINGBAY\" };\n IfcRoadPartTypeEnum.PEDESTRIAN_CROSSING = { type: 3, value: \"PEDESTRIAN_CROSSING\" };\n IfcRoadPartTypeEnum.RAILWAYCROSSING = { type: 3, value: \"RAILWAYCROSSING\" };\n IfcRoadPartTypeEnum.REFUGEISLAND = { type: 3, value: \"REFUGEISLAND\" };\n IfcRoadPartTypeEnum.ROADSEGMENT = { type: 3, value: \"ROADSEGMENT\" };\n IfcRoadPartTypeEnum.ROADSIDE = { type: 3, value: \"ROADSIDE\" };\n IfcRoadPartTypeEnum.ROADSIDEPART = { type: 3, value: \"ROADSIDEPART\" };\n IfcRoadPartTypeEnum.ROADWAYPLATEAU = { type: 3, value: \"ROADWAYPLATEAU\" };\n IfcRoadPartTypeEnum.ROUNDABOUT = { type: 3, value: \"ROUNDABOUT\" };\n IfcRoadPartTypeEnum.SHOULDER = { type: 3, value: \"SHOULDER\" };\n IfcRoadPartTypeEnum.SIDEWALK = { type: 3, value: \"SIDEWALK\" };\n IfcRoadPartTypeEnum.SOFTSHOULDER = { type: 3, value: \"SOFTSHOULDER\" };\n IfcRoadPartTypeEnum.TOLLPLAZA = { type: 3, value: \"TOLLPLAZA\" };\n IfcRoadPartTypeEnum.TRAFFICISLAND = { type: 3, value: \"TRAFFICISLAND\" };\n IfcRoadPartTypeEnum.TRAFFICLANE = { type: 3, value: \"TRAFFICLANE\" };\n IfcRoadPartTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoadPartTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoadPartTypeEnum = IfcRoadPartTypeEnum;\n class IfcRoadTypeEnum {\n }\n IfcRoadTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoadTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoadTypeEnum = IfcRoadTypeEnum;\n class IfcRoleEnum {\n }\n IfcRoleEnum.ARCHITECT = { type: 3, value: \"ARCHITECT\" };\n IfcRoleEnum.BUILDINGOPERATOR = { type: 3, value: \"BUILDINGOPERATOR\" };\n IfcRoleEnum.BUILDINGOWNER = { type: 3, value: \"BUILDINGOWNER\" };\n IfcRoleEnum.CIVILENGINEER = { type: 3, value: \"CIVILENGINEER\" };\n IfcRoleEnum.CLIENT = { type: 3, value: \"CLIENT\" };\n IfcRoleEnum.COMMISSIONINGENGINEER = { type: 3, value: \"COMMISSIONINGENGINEER\" };\n IfcRoleEnum.CONSTRUCTIONMANAGER = { type: 3, value: \"CONSTRUCTIONMANAGER\" };\n IfcRoleEnum.CONSULTANT = { type: 3, value: \"CONSULTANT\" };\n IfcRoleEnum.CONTRACTOR = { type: 3, value: \"CONTRACTOR\" };\n IfcRoleEnum.COSTENGINEER = { type: 3, value: \"COSTENGINEER\" };\n IfcRoleEnum.ELECTRICALENGINEER = { type: 3, value: \"ELECTRICALENGINEER\" };\n IfcRoleEnum.ENGINEER = { type: 3, value: \"ENGINEER\" };\n IfcRoleEnum.FACILITIESMANAGER = { type: 3, value: \"FACILITIESMANAGER\" };\n IfcRoleEnum.FIELDCONSTRUCTIONMANAGER = { type: 3, value: \"FIELDCONSTRUCTIONMANAGER\" };\n IfcRoleEnum.MANUFACTURER = { type: 3, value: \"MANUFACTURER\" };\n IfcRoleEnum.MECHANICALENGINEER = { type: 3, value: \"MECHANICALENGINEER\" };\n IfcRoleEnum.OWNER = { type: 3, value: \"OWNER\" };\n IfcRoleEnum.PROJECTMANAGER = { type: 3, value: \"PROJECTMANAGER\" };\n IfcRoleEnum.RESELLER = { type: 3, value: \"RESELLER\" };\n IfcRoleEnum.STRUCTURALENGINEER = { type: 3, value: \"STRUCTURALENGINEER\" };\n IfcRoleEnum.SUBCONTRACTOR = { type: 3, value: \"SUBCONTRACTOR\" };\n IfcRoleEnum.SUPPLIER = { type: 3, value: \"SUPPLIER\" };\n IfcRoleEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcRoleEnum = IfcRoleEnum;\n class IfcRoofTypeEnum {\n }\n IfcRoofTypeEnum.BARREL_ROOF = { type: 3, value: \"BARREL_ROOF\" };\n IfcRoofTypeEnum.BUTTERFLY_ROOF = { type: 3, value: \"BUTTERFLY_ROOF\" };\n IfcRoofTypeEnum.DOME_ROOF = { type: 3, value: \"DOME_ROOF\" };\n IfcRoofTypeEnum.FLAT_ROOF = { type: 3, value: \"FLAT_ROOF\" };\n IfcRoofTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcRoofTypeEnum.GABLE_ROOF = { type: 3, value: \"GABLE_ROOF\" };\n IfcRoofTypeEnum.GAMBREL_ROOF = { type: 3, value: \"GAMBREL_ROOF\" };\n IfcRoofTypeEnum.HIPPED_GABLE_ROOF = { type: 3, value: \"HIPPED_GABLE_ROOF\" };\n IfcRoofTypeEnum.HIP_ROOF = { type: 3, value: \"HIP_ROOF\" };\n IfcRoofTypeEnum.MANSARD_ROOF = { type: 3, value: \"MANSARD_ROOF\" };\n IfcRoofTypeEnum.PAVILION_ROOF = { type: 3, value: \"PAVILION_ROOF\" };\n IfcRoofTypeEnum.RAINBOW_ROOF = { type: 3, value: \"RAINBOW_ROOF\" };\n IfcRoofTypeEnum.SHED_ROOF = { type: 3, value: \"SHED_ROOF\" };\n IfcRoofTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcRoofTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcRoofTypeEnum = IfcRoofTypeEnum;\n class IfcSIPrefix {\n }\n IfcSIPrefix.ATTO = { type: 3, value: \"ATTO\" };\n IfcSIPrefix.CENTI = { type: 3, value: \"CENTI\" };\n IfcSIPrefix.DECA = { type: 3, value: \"DECA\" };\n IfcSIPrefix.DECI = { type: 3, value: \"DECI\" };\n IfcSIPrefix.EXA = { type: 3, value: \"EXA\" };\n IfcSIPrefix.FEMTO = { type: 3, value: \"FEMTO\" };\n IfcSIPrefix.GIGA = { type: 3, value: \"GIGA\" };\n IfcSIPrefix.HECTO = { type: 3, value: \"HECTO\" };\n IfcSIPrefix.KILO = { type: 3, value: \"KILO\" };\n IfcSIPrefix.MEGA = { type: 3, value: \"MEGA\" };\n IfcSIPrefix.MICRO = { type: 3, value: \"MICRO\" };\n IfcSIPrefix.MILLI = { type: 3, value: \"MILLI\" };\n IfcSIPrefix.NANO = { type: 3, value: \"NANO\" };\n IfcSIPrefix.PETA = { type: 3, value: \"PETA\" };\n IfcSIPrefix.PICO = { type: 3, value: \"PICO\" };\n IfcSIPrefix.TERA = { type: 3, value: \"TERA\" };\n IFC4X32.IfcSIPrefix = IfcSIPrefix;\n class IfcSIUnitName {\n }\n IfcSIUnitName.AMPERE = { type: 3, value: \"AMPERE\" };\n IfcSIUnitName.BECQUEREL = { type: 3, value: \"BECQUEREL\" };\n IfcSIUnitName.CANDELA = { type: 3, value: \"CANDELA\" };\n IfcSIUnitName.COULOMB = { type: 3, value: \"COULOMB\" };\n IfcSIUnitName.CUBIC_METRE = { type: 3, value: \"CUBIC_METRE\" };\n IfcSIUnitName.DEGREE_CELSIUS = { type: 3, value: \"DEGREE_CELSIUS\" };\n IfcSIUnitName.FARAD = { type: 3, value: \"FARAD\" };\n IfcSIUnitName.GRAM = { type: 3, value: \"GRAM\" };\n IfcSIUnitName.GRAY = { type: 3, value: \"GRAY\" };\n IfcSIUnitName.HENRY = { type: 3, value: \"HENRY\" };\n IfcSIUnitName.HERTZ = { type: 3, value: \"HERTZ\" };\n IfcSIUnitName.JOULE = { type: 3, value: \"JOULE\" };\n IfcSIUnitName.KELVIN = { type: 3, value: \"KELVIN\" };\n IfcSIUnitName.LUMEN = { type: 3, value: \"LUMEN\" };\n IfcSIUnitName.LUX = { type: 3, value: \"LUX\" };\n IfcSIUnitName.METRE = { type: 3, value: \"METRE\" };\n IfcSIUnitName.MOLE = { type: 3, value: \"MOLE\" };\n IfcSIUnitName.NEWTON = { type: 3, value: \"NEWTON\" };\n IfcSIUnitName.OHM = { type: 3, value: \"OHM\" };\n IfcSIUnitName.PASCAL = { type: 3, value: \"PASCAL\" };\n IfcSIUnitName.RADIAN = { type: 3, value: \"RADIAN\" };\n IfcSIUnitName.SECOND = { type: 3, value: \"SECOND\" };\n IfcSIUnitName.SIEMENS = { type: 3, value: \"SIEMENS\" };\n IfcSIUnitName.SIEVERT = { type: 3, value: \"SIEVERT\" };\n IfcSIUnitName.SQUARE_METRE = { type: 3, value: \"SQUARE_METRE\" };\n IfcSIUnitName.STERADIAN = { type: 3, value: \"STERADIAN\" };\n IfcSIUnitName.TESLA = { type: 3, value: \"TESLA\" };\n IfcSIUnitName.VOLT = { type: 3, value: \"VOLT\" };\n IfcSIUnitName.WATT = { type: 3, value: \"WATT\" };\n IfcSIUnitName.WEBER = { type: 3, value: \"WEBER\" };\n IFC4X32.IfcSIUnitName = IfcSIUnitName;\n class IfcSanitaryTerminalTypeEnum {\n }\n IfcSanitaryTerminalTypeEnum.BATH = { type: 3, value: \"BATH\" };\n IfcSanitaryTerminalTypeEnum.BIDET = { type: 3, value: \"BIDET\" };\n IfcSanitaryTerminalTypeEnum.CISTERN = { type: 3, value: \"CISTERN\" };\n IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN = { type: 3, value: \"SANITARYFOUNTAIN\" };\n IfcSanitaryTerminalTypeEnum.SHOWER = { type: 3, value: \"SHOWER\" };\n IfcSanitaryTerminalTypeEnum.SINK = { type: 3, value: \"SINK\" };\n IfcSanitaryTerminalTypeEnum.TOILETPAN = { type: 3, value: \"TOILETPAN\" };\n IfcSanitaryTerminalTypeEnum.URINAL = { type: 3, value: \"URINAL\" };\n IfcSanitaryTerminalTypeEnum.WASHHANDBASIN = { type: 3, value: \"WASHHANDBASIN\" };\n IfcSanitaryTerminalTypeEnum.WCSEAT = { type: 3, value: \"WCSEAT\" };\n IfcSanitaryTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSanitaryTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSanitaryTerminalTypeEnum = IfcSanitaryTerminalTypeEnum;\n class IfcSectionTypeEnum {\n }\n IfcSectionTypeEnum.TAPERED = { type: 3, value: \"TAPERED\" };\n IfcSectionTypeEnum.UNIFORM = { type: 3, value: \"UNIFORM\" };\n IFC4X32.IfcSectionTypeEnum = IfcSectionTypeEnum;\n class IfcSensorTypeEnum {\n }\n IfcSensorTypeEnum.CO2SENSOR = { type: 3, value: \"CO2SENSOR\" };\n IfcSensorTypeEnum.CONDUCTANCESENSOR = { type: 3, value: \"CONDUCTANCESENSOR\" };\n IfcSensorTypeEnum.CONTACTSENSOR = { type: 3, value: \"CONTACTSENSOR\" };\n IfcSensorTypeEnum.COSENSOR = { type: 3, value: \"COSENSOR\" };\n IfcSensorTypeEnum.EARTHQUAKESENSOR = { type: 3, value: \"EARTHQUAKESENSOR\" };\n IfcSensorTypeEnum.FIRESENSOR = { type: 3, value: \"FIRESENSOR\" };\n IfcSensorTypeEnum.FLOWSENSOR = { type: 3, value: \"FLOWSENSOR\" };\n IfcSensorTypeEnum.FOREIGNOBJECTDETECTIONSENSOR = { type: 3, value: \"FOREIGNOBJECTDETECTIONSENSOR\" };\n IfcSensorTypeEnum.FROSTSENSOR = { type: 3, value: \"FROSTSENSOR\" };\n IfcSensorTypeEnum.GASSENSOR = { type: 3, value: \"GASSENSOR\" };\n IfcSensorTypeEnum.HEATSENSOR = { type: 3, value: \"HEATSENSOR\" };\n IfcSensorTypeEnum.HUMIDITYSENSOR = { type: 3, value: \"HUMIDITYSENSOR\" };\n IfcSensorTypeEnum.IDENTIFIERSENSOR = { type: 3, value: \"IDENTIFIERSENSOR\" };\n IfcSensorTypeEnum.IONCONCENTRATIONSENSOR = { type: 3, value: \"IONCONCENTRATIONSENSOR\" };\n IfcSensorTypeEnum.LEVELSENSOR = { type: 3, value: \"LEVELSENSOR\" };\n IfcSensorTypeEnum.LIGHTSENSOR = { type: 3, value: \"LIGHTSENSOR\" };\n IfcSensorTypeEnum.MOISTURESENSOR = { type: 3, value: \"MOISTURESENSOR\" };\n IfcSensorTypeEnum.MOVEMENTSENSOR = { type: 3, value: \"MOVEMENTSENSOR\" };\n IfcSensorTypeEnum.OBSTACLESENSOR = { type: 3, value: \"OBSTACLESENSOR\" };\n IfcSensorTypeEnum.PHSENSOR = { type: 3, value: \"PHSENSOR\" };\n IfcSensorTypeEnum.PRESSURESENSOR = { type: 3, value: \"PRESSURESENSOR\" };\n IfcSensorTypeEnum.RADIATIONSENSOR = { type: 3, value: \"RADIATIONSENSOR\" };\n IfcSensorTypeEnum.RADIOACTIVITYSENSOR = { type: 3, value: \"RADIOACTIVITYSENSOR\" };\n IfcSensorTypeEnum.RAINSENSOR = { type: 3, value: \"RAINSENSOR\" };\n IfcSensorTypeEnum.SMOKESENSOR = { type: 3, value: \"SMOKESENSOR\" };\n IfcSensorTypeEnum.SNOWDEPTHSENSOR = { type: 3, value: \"SNOWDEPTHSENSOR\" };\n IfcSensorTypeEnum.SOUNDSENSOR = { type: 3, value: \"SOUNDSENSOR\" };\n IfcSensorTypeEnum.TEMPERATURESENSOR = { type: 3, value: \"TEMPERATURESENSOR\" };\n IfcSensorTypeEnum.TRAINSENSOR = { type: 3, value: \"TRAINSENSOR\" };\n IfcSensorTypeEnum.TURNOUTCLOSURESENSOR = { type: 3, value: \"TURNOUTCLOSURESENSOR\" };\n IfcSensorTypeEnum.WHEELSENSOR = { type: 3, value: \"WHEELSENSOR\" };\n IfcSensorTypeEnum.WINDSENSOR = { type: 3, value: \"WINDSENSOR\" };\n IfcSensorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSensorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSensorTypeEnum = IfcSensorTypeEnum;\n class IfcSequenceEnum {\n }\n IfcSequenceEnum.FINISH_FINISH = { type: 3, value: \"FINISH_FINISH\" };\n IfcSequenceEnum.FINISH_START = { type: 3, value: \"FINISH_START\" };\n IfcSequenceEnum.START_FINISH = { type: 3, value: \"START_FINISH\" };\n IfcSequenceEnum.START_START = { type: 3, value: \"START_START\" };\n IfcSequenceEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSequenceEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSequenceEnum = IfcSequenceEnum;\n class IfcShadingDeviceTypeEnum {\n }\n IfcShadingDeviceTypeEnum.AWNING = { type: 3, value: \"AWNING\" };\n IfcShadingDeviceTypeEnum.JALOUSIE = { type: 3, value: \"JALOUSIE\" };\n IfcShadingDeviceTypeEnum.SHUTTER = { type: 3, value: \"SHUTTER\" };\n IfcShadingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcShadingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcShadingDeviceTypeEnum = IfcShadingDeviceTypeEnum;\n class IfcSignTypeEnum {\n }\n IfcSignTypeEnum.MARKER = { type: 3, value: \"MARKER\" };\n IfcSignTypeEnum.MIRROR = { type: 3, value: \"MIRROR\" };\n IfcSignTypeEnum.PICTORAL = { type: 3, value: \"PICTORAL\" };\n IfcSignTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSignTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSignTypeEnum = IfcSignTypeEnum;\n class IfcSignalTypeEnum {\n }\n IfcSignalTypeEnum.AUDIO = { type: 3, value: \"AUDIO\" };\n IfcSignalTypeEnum.MIXED = { type: 3, value: \"MIXED\" };\n IfcSignalTypeEnum.VISUAL = { type: 3, value: \"VISUAL\" };\n IfcSignalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSignalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSignalTypeEnum = IfcSignalTypeEnum;\n class IfcSimplePropertyTemplateTypeEnum {\n }\n IfcSimplePropertyTemplateTypeEnum.P_BOUNDEDVALUE = { type: 3, value: \"P_BOUNDEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_ENUMERATEDVALUE = { type: 3, value: \"P_ENUMERATEDVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_LISTVALUE = { type: 3, value: \"P_LISTVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_REFERENCEVALUE = { type: 3, value: \"P_REFERENCEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_SINGLEVALUE = { type: 3, value: \"P_SINGLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.P_TABLEVALUE = { type: 3, value: \"P_TABLEVALUE\" };\n IfcSimplePropertyTemplateTypeEnum.Q_AREA = { type: 3, value: \"Q_AREA\" };\n IfcSimplePropertyTemplateTypeEnum.Q_COUNT = { type: 3, value: \"Q_COUNT\" };\n IfcSimplePropertyTemplateTypeEnum.Q_LENGTH = { type: 3, value: \"Q_LENGTH\" };\n IfcSimplePropertyTemplateTypeEnum.Q_NUMBER = { type: 3, value: \"Q_NUMBER\" };\n IfcSimplePropertyTemplateTypeEnum.Q_TIME = { type: 3, value: \"Q_TIME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_VOLUME = { type: 3, value: \"Q_VOLUME\" };\n IfcSimplePropertyTemplateTypeEnum.Q_WEIGHT = { type: 3, value: \"Q_WEIGHT\" };\n IFC4X32.IfcSimplePropertyTemplateTypeEnum = IfcSimplePropertyTemplateTypeEnum;\n class IfcSlabTypeEnum {\n }\n IfcSlabTypeEnum.APPROACH_SLAB = { type: 3, value: \"APPROACH_SLAB\" };\n IfcSlabTypeEnum.BASESLAB = { type: 3, value: \"BASESLAB\" };\n IfcSlabTypeEnum.FLOOR = { type: 3, value: \"FLOOR\" };\n IfcSlabTypeEnum.LANDING = { type: 3, value: \"LANDING\" };\n IfcSlabTypeEnum.PAVING = { type: 3, value: \"PAVING\" };\n IfcSlabTypeEnum.ROOF = { type: 3, value: \"ROOF\" };\n IfcSlabTypeEnum.SIDEWALK = { type: 3, value: \"SIDEWALK\" };\n IfcSlabTypeEnum.TRACKSLAB = { type: 3, value: \"TRACKSLAB\" };\n IfcSlabTypeEnum.WEARING = { type: 3, value: \"WEARING\" };\n IfcSlabTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSlabTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSlabTypeEnum = IfcSlabTypeEnum;\n class IfcSolarDeviceTypeEnum {\n }\n IfcSolarDeviceTypeEnum.SOLARCOLLECTOR = { type: 3, value: \"SOLARCOLLECTOR\" };\n IfcSolarDeviceTypeEnum.SOLARPANEL = { type: 3, value: \"SOLARPANEL\" };\n IfcSolarDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSolarDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSolarDeviceTypeEnum = IfcSolarDeviceTypeEnum;\n class IfcSpaceHeaterTypeEnum {\n }\n IfcSpaceHeaterTypeEnum.CONVECTOR = { type: 3, value: \"CONVECTOR\" };\n IfcSpaceHeaterTypeEnum.RADIATOR = { type: 3, value: \"RADIATOR\" };\n IfcSpaceHeaterTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceHeaterTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpaceHeaterTypeEnum = IfcSpaceHeaterTypeEnum;\n class IfcSpaceTypeEnum {\n }\n IfcSpaceTypeEnum.BERTH = { type: 3, value: \"BERTH\" };\n IfcSpaceTypeEnum.EXTERNAL = { type: 3, value: \"EXTERNAL\" };\n IfcSpaceTypeEnum.GFA = { type: 3, value: \"GFA\" };\n IfcSpaceTypeEnum.INTERNAL = { type: 3, value: \"INTERNAL\" };\n IfcSpaceTypeEnum.PARKING = { type: 3, value: \"PARKING\" };\n IfcSpaceTypeEnum.SPACE = { type: 3, value: \"SPACE\" };\n IfcSpaceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpaceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpaceTypeEnum = IfcSpaceTypeEnum;\n class IfcSpatialZoneTypeEnum {\n }\n IfcSpatialZoneTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcSpatialZoneTypeEnum.FIRESAFETY = { type: 3, value: \"FIRESAFETY\" };\n IfcSpatialZoneTypeEnum.INTERFERENCE = { type: 3, value: \"INTERFERENCE\" };\n IfcSpatialZoneTypeEnum.LIGHTING = { type: 3, value: \"LIGHTING\" };\n IfcSpatialZoneTypeEnum.OCCUPANCY = { type: 3, value: \"OCCUPANCY\" };\n IfcSpatialZoneTypeEnum.RESERVATION = { type: 3, value: \"RESERVATION\" };\n IfcSpatialZoneTypeEnum.SECURITY = { type: 3, value: \"SECURITY\" };\n IfcSpatialZoneTypeEnum.THERMAL = { type: 3, value: \"THERMAL\" };\n IfcSpatialZoneTypeEnum.TRANSPORT = { type: 3, value: \"TRANSPORT\" };\n IfcSpatialZoneTypeEnum.VENTILATION = { type: 3, value: \"VENTILATION\" };\n IfcSpatialZoneTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSpatialZoneTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSpatialZoneTypeEnum = IfcSpatialZoneTypeEnum;\n class IfcStackTerminalTypeEnum {\n }\n IfcStackTerminalTypeEnum.BIRDCAGE = { type: 3, value: \"BIRDCAGE\" };\n IfcStackTerminalTypeEnum.COWL = { type: 3, value: \"COWL\" };\n IfcStackTerminalTypeEnum.RAINWATERHOPPER = { type: 3, value: \"RAINWATERHOPPER\" };\n IfcStackTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStackTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStackTerminalTypeEnum = IfcStackTerminalTypeEnum;\n class IfcStairFlightTypeEnum {\n }\n IfcStairFlightTypeEnum.CURVED = { type: 3, value: \"CURVED\" };\n IfcStairFlightTypeEnum.FREEFORM = { type: 3, value: \"FREEFORM\" };\n IfcStairFlightTypeEnum.SPIRAL = { type: 3, value: \"SPIRAL\" };\n IfcStairFlightTypeEnum.STRAIGHT = { type: 3, value: \"STRAIGHT\" };\n IfcStairFlightTypeEnum.WINDER = { type: 3, value: \"WINDER\" };\n IfcStairFlightTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairFlightTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStairFlightTypeEnum = IfcStairFlightTypeEnum;\n class IfcStairTypeEnum {\n }\n IfcStairTypeEnum.CURVED_RUN_STAIR = { type: 3, value: \"CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.DOUBLE_RETURN_STAIR = { type: 3, value: \"DOUBLE_RETURN_STAIR\" };\n IfcStairTypeEnum.HALF_TURN_STAIR = { type: 3, value: \"HALF_TURN_STAIR\" };\n IfcStairTypeEnum.HALF_WINDING_STAIR = { type: 3, value: \"HALF_WINDING_STAIR\" };\n IfcStairTypeEnum.LADDER = { type: 3, value: \"LADDER\" };\n IfcStairTypeEnum.QUARTER_TURN_STAIR = { type: 3, value: \"QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.QUARTER_WINDING_STAIR = { type: 3, value: \"QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.SPIRAL_STAIR = { type: 3, value: \"SPIRAL_STAIR\" };\n IfcStairTypeEnum.STRAIGHT_RUN_STAIR = { type: 3, value: \"STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR = { type: 3, value: \"THREE_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR = { type: 3, value: \"THREE_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_CURVED_RUN_STAIR = { type: 3, value: \"TWO_CURVED_RUN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR = { type: 3, value: \"TWO_QUARTER_TURN_STAIR\" };\n IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR = { type: 3, value: \"TWO_QUARTER_WINDING_STAIR\" };\n IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR = { type: 3, value: \"TWO_STRAIGHT_RUN_STAIR\" };\n IfcStairTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStairTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStairTypeEnum = IfcStairTypeEnum;\n class IfcStateEnum {\n }\n IfcStateEnum.LOCKED = { type: 3, value: \"LOCKED\" };\n IfcStateEnum.READONLY = { type: 3, value: \"READONLY\" };\n IfcStateEnum.READONLYLOCKED = { type: 3, value: \"READONLYLOCKED\" };\n IfcStateEnum.READWRITE = { type: 3, value: \"READWRITE\" };\n IfcStateEnum.READWRITELOCKED = { type: 3, value: \"READWRITELOCKED\" };\n IFC4X32.IfcStateEnum = IfcStateEnum;\n class IfcStructuralCurveActivityTypeEnum {\n }\n IfcStructuralCurveActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralCurveActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralCurveActivityTypeEnum.EQUIDISTANT = { type: 3, value: \"EQUIDISTANT\" };\n IfcStructuralCurveActivityTypeEnum.LINEAR = { type: 3, value: \"LINEAR\" };\n IfcStructuralCurveActivityTypeEnum.PARABOLA = { type: 3, value: \"PARABOLA\" };\n IfcStructuralCurveActivityTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcStructuralCurveActivityTypeEnum.SINUS = { type: 3, value: \"SINUS\" };\n IfcStructuralCurveActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralCurveActivityTypeEnum = IfcStructuralCurveActivityTypeEnum;\n class IfcStructuralCurveMemberTypeEnum {\n }\n IfcStructuralCurveMemberTypeEnum.CABLE = { type: 3, value: \"CABLE\" };\n IfcStructuralCurveMemberTypeEnum.COMPRESSION_MEMBER = { type: 3, value: \"COMPRESSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.PIN_JOINED_MEMBER = { type: 3, value: \"PIN_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.RIGID_JOINED_MEMBER = { type: 3, value: \"RIGID_JOINED_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.TENSION_MEMBER = { type: 3, value: \"TENSION_MEMBER\" };\n IfcStructuralCurveMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralCurveMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralCurveMemberTypeEnum = IfcStructuralCurveMemberTypeEnum;\n class IfcStructuralSurfaceActivityTypeEnum {\n }\n IfcStructuralSurfaceActivityTypeEnum.BILINEAR = { type: 3, value: \"BILINEAR\" };\n IfcStructuralSurfaceActivityTypeEnum.CONST = { type: 3, value: \"CONST\" };\n IfcStructuralSurfaceActivityTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcStructuralSurfaceActivityTypeEnum.ISOCONTOUR = { type: 3, value: \"ISOCONTOUR\" };\n IfcStructuralSurfaceActivityTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceActivityTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralSurfaceActivityTypeEnum = IfcStructuralSurfaceActivityTypeEnum;\n class IfcStructuralSurfaceMemberTypeEnum {\n }\n IfcStructuralSurfaceMemberTypeEnum.BENDING_ELEMENT = { type: 3, value: \"BENDING_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.MEMBRANE_ELEMENT = { type: 3, value: \"MEMBRANE_ELEMENT\" };\n IfcStructuralSurfaceMemberTypeEnum.SHELL = { type: 3, value: \"SHELL\" };\n IfcStructuralSurfaceMemberTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcStructuralSurfaceMemberTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcStructuralSurfaceMemberTypeEnum = IfcStructuralSurfaceMemberTypeEnum;\n class IfcSubContractResourceTypeEnum {\n }\n IfcSubContractResourceTypeEnum.PURCHASE = { type: 3, value: \"PURCHASE\" };\n IfcSubContractResourceTypeEnum.WORK = { type: 3, value: \"WORK\" };\n IfcSubContractResourceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSubContractResourceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSubContractResourceTypeEnum = IfcSubContractResourceTypeEnum;\n class IfcSurfaceFeatureTypeEnum {\n }\n IfcSurfaceFeatureTypeEnum.DEFECT = { type: 3, value: \"DEFECT\" };\n IfcSurfaceFeatureTypeEnum.HATCHMARKING = { type: 3, value: \"HATCHMARKING\" };\n IfcSurfaceFeatureTypeEnum.LINEMARKING = { type: 3, value: \"LINEMARKING\" };\n IfcSurfaceFeatureTypeEnum.MARK = { type: 3, value: \"MARK\" };\n IfcSurfaceFeatureTypeEnum.NONSKIDSURFACING = { type: 3, value: \"NONSKIDSURFACING\" };\n IfcSurfaceFeatureTypeEnum.PAVEMENTSURFACEMARKING = { type: 3, value: \"PAVEMENTSURFACEMARKING\" };\n IfcSurfaceFeatureTypeEnum.RUMBLESTRIP = { type: 3, value: \"RUMBLESTRIP\" };\n IfcSurfaceFeatureTypeEnum.SYMBOLMARKING = { type: 3, value: \"SYMBOLMARKING\" };\n IfcSurfaceFeatureTypeEnum.TAG = { type: 3, value: \"TAG\" };\n IfcSurfaceFeatureTypeEnum.TRANSVERSERUMBLESTRIP = { type: 3, value: \"TRANSVERSERUMBLESTRIP\" };\n IfcSurfaceFeatureTypeEnum.TREATMENT = { type: 3, value: \"TREATMENT\" };\n IfcSurfaceFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSurfaceFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSurfaceFeatureTypeEnum = IfcSurfaceFeatureTypeEnum;\n class IfcSurfaceSide {\n }\n IfcSurfaceSide.BOTH = { type: 3, value: \"BOTH\" };\n IfcSurfaceSide.NEGATIVE = { type: 3, value: \"NEGATIVE\" };\n IfcSurfaceSide.POSITIVE = { type: 3, value: \"POSITIVE\" };\n IFC4X32.IfcSurfaceSide = IfcSurfaceSide;\n class IfcSwitchingDeviceTypeEnum {\n }\n IfcSwitchingDeviceTypeEnum.CONTACTOR = { type: 3, value: \"CONTACTOR\" };\n IfcSwitchingDeviceTypeEnum.DIMMERSWITCH = { type: 3, value: \"DIMMERSWITCH\" };\n IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP = { type: 3, value: \"EMERGENCYSTOP\" };\n IfcSwitchingDeviceTypeEnum.KEYPAD = { type: 3, value: \"KEYPAD\" };\n IfcSwitchingDeviceTypeEnum.MOMENTARYSWITCH = { type: 3, value: \"MOMENTARYSWITCH\" };\n IfcSwitchingDeviceTypeEnum.RELAY = { type: 3, value: \"RELAY\" };\n IfcSwitchingDeviceTypeEnum.SELECTORSWITCH = { type: 3, value: \"SELECTORSWITCH\" };\n IfcSwitchingDeviceTypeEnum.STARTER = { type: 3, value: \"STARTER\" };\n IfcSwitchingDeviceTypeEnum.START_AND_STOP_EQUIPMENT = { type: 3, value: \"START_AND_STOP_EQUIPMENT\" };\n IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR = { type: 3, value: \"SWITCHDISCONNECTOR\" };\n IfcSwitchingDeviceTypeEnum.TOGGLESWITCH = { type: 3, value: \"TOGGLESWITCH\" };\n IfcSwitchingDeviceTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSwitchingDeviceTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSwitchingDeviceTypeEnum = IfcSwitchingDeviceTypeEnum;\n class IfcSystemFurnitureElementTypeEnum {\n }\n IfcSystemFurnitureElementTypeEnum.PANEL = { type: 3, value: \"PANEL\" };\n IfcSystemFurnitureElementTypeEnum.SUBRACK = { type: 3, value: \"SUBRACK\" };\n IfcSystemFurnitureElementTypeEnum.WORKSURFACE = { type: 3, value: \"WORKSURFACE\" };\n IfcSystemFurnitureElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcSystemFurnitureElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcSystemFurnitureElementTypeEnum = IfcSystemFurnitureElementTypeEnum;\n class IfcTankTypeEnum {\n }\n IfcTankTypeEnum.BASIN = { type: 3, value: \"BASIN\" };\n IfcTankTypeEnum.BREAKPRESSURE = { type: 3, value: \"BREAKPRESSURE\" };\n IfcTankTypeEnum.EXPANSION = { type: 3, value: \"EXPANSION\" };\n IfcTankTypeEnum.FEEDANDEXPANSION = { type: 3, value: \"FEEDANDEXPANSION\" };\n IfcTankTypeEnum.OILRETENTIONTRAY = { type: 3, value: \"OILRETENTIONTRAY\" };\n IfcTankTypeEnum.PRESSUREVESSEL = { type: 3, value: \"PRESSUREVESSEL\" };\n IfcTankTypeEnum.STORAGE = { type: 3, value: \"STORAGE\" };\n IfcTankTypeEnum.VESSEL = { type: 3, value: \"VESSEL\" };\n IfcTankTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTankTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTankTypeEnum = IfcTankTypeEnum;\n class IfcTaskDurationEnum {\n }\n IfcTaskDurationEnum.ELAPSEDTIME = { type: 3, value: \"ELAPSEDTIME\" };\n IfcTaskDurationEnum.WORKTIME = { type: 3, value: \"WORKTIME\" };\n IfcTaskDurationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTaskDurationEnum = IfcTaskDurationEnum;\n class IfcTaskTypeEnum {\n }\n IfcTaskTypeEnum.ADJUSTMENT = { type: 3, value: \"ADJUSTMENT\" };\n IfcTaskTypeEnum.ATTENDANCE = { type: 3, value: \"ATTENDANCE\" };\n IfcTaskTypeEnum.CALIBRATION = { type: 3, value: \"CALIBRATION\" };\n IfcTaskTypeEnum.CONSTRUCTION = { type: 3, value: \"CONSTRUCTION\" };\n IfcTaskTypeEnum.DEMOLITION = { type: 3, value: \"DEMOLITION\" };\n IfcTaskTypeEnum.DISMANTLE = { type: 3, value: \"DISMANTLE\" };\n IfcTaskTypeEnum.DISPOSAL = { type: 3, value: \"DISPOSAL\" };\n IfcTaskTypeEnum.EMERGENCY = { type: 3, value: \"EMERGENCY\" };\n IfcTaskTypeEnum.INSPECTION = { type: 3, value: \"INSPECTION\" };\n IfcTaskTypeEnum.INSTALLATION = { type: 3, value: \"INSTALLATION\" };\n IfcTaskTypeEnum.LOGISTIC = { type: 3, value: \"LOGISTIC\" };\n IfcTaskTypeEnum.MAINTENANCE = { type: 3, value: \"MAINTENANCE\" };\n IfcTaskTypeEnum.MOVE = { type: 3, value: \"MOVE\" };\n IfcTaskTypeEnum.OPERATION = { type: 3, value: \"OPERATION\" };\n IfcTaskTypeEnum.REMOVAL = { type: 3, value: \"REMOVAL\" };\n IfcTaskTypeEnum.RENOVATION = { type: 3, value: \"RENOVATION\" };\n IfcTaskTypeEnum.SAFETY = { type: 3, value: \"SAFETY\" };\n IfcTaskTypeEnum.SHUTDOWN = { type: 3, value: \"SHUTDOWN\" };\n IfcTaskTypeEnum.STARTUP = { type: 3, value: \"STARTUP\" };\n IfcTaskTypeEnum.TESTING = { type: 3, value: \"TESTING\" };\n IfcTaskTypeEnum.TROUBLESHOOTING = { type: 3, value: \"TROUBLESHOOTING\" };\n IfcTaskTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTaskTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTaskTypeEnum = IfcTaskTypeEnum;\n class IfcTendonAnchorTypeEnum {\n }\n IfcTendonAnchorTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonAnchorTypeEnum.FIXED_END = { type: 3, value: \"FIXED_END\" };\n IfcTendonAnchorTypeEnum.TENSIONING_END = { type: 3, value: \"TENSIONING_END\" };\n IfcTendonAnchorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonAnchorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonAnchorTypeEnum = IfcTendonAnchorTypeEnum;\n class IfcTendonConduitTypeEnum {\n }\n IfcTendonConduitTypeEnum.COUPLER = { type: 3, value: \"COUPLER\" };\n IfcTendonConduitTypeEnum.DIABOLO = { type: 3, value: \"DIABOLO\" };\n IfcTendonConduitTypeEnum.DUCT = { type: 3, value: \"DUCT\" };\n IfcTendonConduitTypeEnum.GROUTING_DUCT = { type: 3, value: \"GROUTING_DUCT\" };\n IfcTendonConduitTypeEnum.TRUMPET = { type: 3, value: \"TRUMPET\" };\n IfcTendonConduitTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonConduitTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonConduitTypeEnum = IfcTendonConduitTypeEnum;\n class IfcTendonTypeEnum {\n }\n IfcTendonTypeEnum.BAR = { type: 3, value: \"BAR\" };\n IfcTendonTypeEnum.COATED = { type: 3, value: \"COATED\" };\n IfcTendonTypeEnum.STRAND = { type: 3, value: \"STRAND\" };\n IfcTendonTypeEnum.WIRE = { type: 3, value: \"WIRE\" };\n IfcTendonTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTendonTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTendonTypeEnum = IfcTendonTypeEnum;\n class IfcTextPath {\n }\n IfcTextPath.DOWN = { type: 3, value: \"DOWN\" };\n IfcTextPath.LEFT = { type: 3, value: \"LEFT\" };\n IfcTextPath.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcTextPath.UP = { type: 3, value: \"UP\" };\n IFC4X32.IfcTextPath = IfcTextPath;\n class IfcTimeSeriesDataTypeEnum {\n }\n IfcTimeSeriesDataTypeEnum.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.DISCRETE = { type: 3, value: \"DISCRETE\" };\n IfcTimeSeriesDataTypeEnum.DISCRETEBINARY = { type: 3, value: \"DISCRETEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY = { type: 3, value: \"PIECEWISEBINARY\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT = { type: 3, value: \"PIECEWISECONSTANT\" };\n IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS = { type: 3, value: \"PIECEWISECONTINUOUS\" };\n IfcTimeSeriesDataTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTimeSeriesDataTypeEnum = IfcTimeSeriesDataTypeEnum;\n class IfcTrackElementTypeEnum {\n }\n IfcTrackElementTypeEnum.BLOCKINGDEVICE = { type: 3, value: \"BLOCKINGDEVICE\" };\n IfcTrackElementTypeEnum.DERAILER = { type: 3, value: \"DERAILER\" };\n IfcTrackElementTypeEnum.FROG = { type: 3, value: \"FROG\" };\n IfcTrackElementTypeEnum.HALF_SET_OF_BLADES = { type: 3, value: \"HALF_SET_OF_BLADES\" };\n IfcTrackElementTypeEnum.SLEEPER = { type: 3, value: \"SLEEPER\" };\n IfcTrackElementTypeEnum.SPEEDREGULATOR = { type: 3, value: \"SPEEDREGULATOR\" };\n IfcTrackElementTypeEnum.TRACKENDOFALIGNMENT = { type: 3, value: \"TRACKENDOFALIGNMENT\" };\n IfcTrackElementTypeEnum.VEHICLESTOP = { type: 3, value: \"VEHICLESTOP\" };\n IfcTrackElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTrackElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTrackElementTypeEnum = IfcTrackElementTypeEnum;\n class IfcTransformerTypeEnum {\n }\n IfcTransformerTypeEnum.CHOPPER = { type: 3, value: \"CHOPPER\" };\n IfcTransformerTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcTransformerTypeEnum.CURRENT = { type: 3, value: \"CURRENT\" };\n IfcTransformerTypeEnum.FREQUENCY = { type: 3, value: \"FREQUENCY\" };\n IfcTransformerTypeEnum.INVERTER = { type: 3, value: \"INVERTER\" };\n IfcTransformerTypeEnum.RECTIFIER = { type: 3, value: \"RECTIFIER\" };\n IfcTransformerTypeEnum.VOLTAGE = { type: 3, value: \"VOLTAGE\" };\n IfcTransformerTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransformerTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTransformerTypeEnum = IfcTransformerTypeEnum;\n class IfcTransitionCode {\n }\n IfcTransitionCode.CONTINUOUS = { type: 3, value: \"CONTINUOUS\" };\n IfcTransitionCode.CONTSAMEGRADIENT = { type: 3, value: \"CONTSAMEGRADIENT\" };\n IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE = { type: 3, value: \"CONTSAMEGRADIENTSAMECURVATURE\" };\n IfcTransitionCode.DISCONTINUOUS = { type: 3, value: \"DISCONTINUOUS\" };\n IFC4X32.IfcTransitionCode = IfcTransitionCode;\n class IfcTransportElementTypeEnum {\n }\n IfcTransportElementTypeEnum.CRANEWAY = { type: 3, value: \"CRANEWAY\" };\n IfcTransportElementTypeEnum.ELEVATOR = { type: 3, value: \"ELEVATOR\" };\n IfcTransportElementTypeEnum.ESCALATOR = { type: 3, value: \"ESCALATOR\" };\n IfcTransportElementTypeEnum.HAULINGGEAR = { type: 3, value: \"HAULINGGEAR\" };\n IfcTransportElementTypeEnum.LIFTINGGEAR = { type: 3, value: \"LIFTINGGEAR\" };\n IfcTransportElementTypeEnum.MOVINGWALKWAY = { type: 3, value: \"MOVINGWALKWAY\" };\n IfcTransportElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTransportElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTransportElementTypeEnum = IfcTransportElementTypeEnum;\n class IfcTrimmingPreference {\n }\n IfcTrimmingPreference.CARTESIAN = { type: 3, value: \"CARTESIAN\" };\n IfcTrimmingPreference.PARAMETER = { type: 3, value: \"PARAMETER\" };\n IfcTrimmingPreference.UNSPECIFIED = { type: 3, value: \"UNSPECIFIED\" };\n IFC4X32.IfcTrimmingPreference = IfcTrimmingPreference;\n class IfcTubeBundleTypeEnum {\n }\n IfcTubeBundleTypeEnum.FINNED = { type: 3, value: \"FINNED\" };\n IfcTubeBundleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcTubeBundleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcTubeBundleTypeEnum = IfcTubeBundleTypeEnum;\n class IfcUnitEnum {\n }\n IfcUnitEnum.ABSORBEDDOSEUNIT = { type: 3, value: \"ABSORBEDDOSEUNIT\" };\n IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT = { type: 3, value: \"AMOUNTOFSUBSTANCEUNIT\" };\n IfcUnitEnum.AREAUNIT = { type: 3, value: \"AREAUNIT\" };\n IfcUnitEnum.DOSEEQUIVALENTUNIT = { type: 3, value: \"DOSEEQUIVALENTUNIT\" };\n IfcUnitEnum.ELECTRICCAPACITANCEUNIT = { type: 3, value: \"ELECTRICCAPACITANCEUNIT\" };\n IfcUnitEnum.ELECTRICCHARGEUNIT = { type: 3, value: \"ELECTRICCHARGEUNIT\" };\n IfcUnitEnum.ELECTRICCONDUCTANCEUNIT = { type: 3, value: \"ELECTRICCONDUCTANCEUNIT\" };\n IfcUnitEnum.ELECTRICCURRENTUNIT = { type: 3, value: \"ELECTRICCURRENTUNIT\" };\n IfcUnitEnum.ELECTRICRESISTANCEUNIT = { type: 3, value: \"ELECTRICRESISTANCEUNIT\" };\n IfcUnitEnum.ELECTRICVOLTAGEUNIT = { type: 3, value: \"ELECTRICVOLTAGEUNIT\" };\n IfcUnitEnum.ENERGYUNIT = { type: 3, value: \"ENERGYUNIT\" };\n IfcUnitEnum.FORCEUNIT = { type: 3, value: \"FORCEUNIT\" };\n IfcUnitEnum.FREQUENCYUNIT = { type: 3, value: \"FREQUENCYUNIT\" };\n IfcUnitEnum.ILLUMINANCEUNIT = { type: 3, value: \"ILLUMINANCEUNIT\" };\n IfcUnitEnum.INDUCTANCEUNIT = { type: 3, value: \"INDUCTANCEUNIT\" };\n IfcUnitEnum.LENGTHUNIT = { type: 3, value: \"LENGTHUNIT\" };\n IfcUnitEnum.LUMINOUSFLUXUNIT = { type: 3, value: \"LUMINOUSFLUXUNIT\" };\n IfcUnitEnum.LUMINOUSINTENSITYUNIT = { type: 3, value: \"LUMINOUSINTENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXDENSITYUNIT = { type: 3, value: \"MAGNETICFLUXDENSITYUNIT\" };\n IfcUnitEnum.MAGNETICFLUXUNIT = { type: 3, value: \"MAGNETICFLUXUNIT\" };\n IfcUnitEnum.MASSUNIT = { type: 3, value: \"MASSUNIT\" };\n IfcUnitEnum.PLANEANGLEUNIT = { type: 3, value: \"PLANEANGLEUNIT\" };\n IfcUnitEnum.POWERUNIT = { type: 3, value: \"POWERUNIT\" };\n IfcUnitEnum.PRESSUREUNIT = { type: 3, value: \"PRESSUREUNIT\" };\n IfcUnitEnum.RADIOACTIVITYUNIT = { type: 3, value: \"RADIOACTIVITYUNIT\" };\n IfcUnitEnum.SOLIDANGLEUNIT = { type: 3, value: \"SOLIDANGLEUNIT\" };\n IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT = { type: 3, value: \"THERMODYNAMICTEMPERATUREUNIT\" };\n IfcUnitEnum.TIMEUNIT = { type: 3, value: \"TIMEUNIT\" };\n IfcUnitEnum.VOLUMEUNIT = { type: 3, value: \"VOLUMEUNIT\" };\n IfcUnitEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IFC4X32.IfcUnitEnum = IfcUnitEnum;\n class IfcUnitaryControlElementTypeEnum {\n }\n IfcUnitaryControlElementTypeEnum.ALARMPANEL = { type: 3, value: \"ALARMPANEL\" };\n IfcUnitaryControlElementTypeEnum.BASESTATIONCONTROLLER = { type: 3, value: \"BASESTATIONCONTROLLER\" };\n IfcUnitaryControlElementTypeEnum.COMBINED = { type: 3, value: \"COMBINED\" };\n IfcUnitaryControlElementTypeEnum.CONTROLPANEL = { type: 3, value: \"CONTROLPANEL\" };\n IfcUnitaryControlElementTypeEnum.GASDETECTIONPANEL = { type: 3, value: \"GASDETECTIONPANEL\" };\n IfcUnitaryControlElementTypeEnum.HUMIDISTAT = { type: 3, value: \"HUMIDISTAT\" };\n IfcUnitaryControlElementTypeEnum.INDICATORPANEL = { type: 3, value: \"INDICATORPANEL\" };\n IfcUnitaryControlElementTypeEnum.MIMICPANEL = { type: 3, value: \"MIMICPANEL\" };\n IfcUnitaryControlElementTypeEnum.THERMOSTAT = { type: 3, value: \"THERMOSTAT\" };\n IfcUnitaryControlElementTypeEnum.WEATHERSTATION = { type: 3, value: \"WEATHERSTATION\" };\n IfcUnitaryControlElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryControlElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcUnitaryControlElementTypeEnum = IfcUnitaryControlElementTypeEnum;\n class IfcUnitaryEquipmentTypeEnum {\n }\n IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT = { type: 3, value: \"AIRCONDITIONINGUNIT\" };\n IfcUnitaryEquipmentTypeEnum.AIRHANDLER = { type: 3, value: \"AIRHANDLER\" };\n IfcUnitaryEquipmentTypeEnum.DEHUMIDIFIER = { type: 3, value: \"DEHUMIDIFIER\" };\n IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT = { type: 3, value: \"ROOFTOPUNIT\" };\n IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM = { type: 3, value: \"SPLITSYSTEM\" };\n IfcUnitaryEquipmentTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcUnitaryEquipmentTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcUnitaryEquipmentTypeEnum = IfcUnitaryEquipmentTypeEnum;\n class IfcValveTypeEnum {\n }\n IfcValveTypeEnum.AIRRELEASE = { type: 3, value: \"AIRRELEASE\" };\n IfcValveTypeEnum.ANTIVACUUM = { type: 3, value: \"ANTIVACUUM\" };\n IfcValveTypeEnum.CHANGEOVER = { type: 3, value: \"CHANGEOVER\" };\n IfcValveTypeEnum.CHECK = { type: 3, value: \"CHECK\" };\n IfcValveTypeEnum.COMMISSIONING = { type: 3, value: \"COMMISSIONING\" };\n IfcValveTypeEnum.DIVERTING = { type: 3, value: \"DIVERTING\" };\n IfcValveTypeEnum.DOUBLECHECK = { type: 3, value: \"DOUBLECHECK\" };\n IfcValveTypeEnum.DOUBLEREGULATING = { type: 3, value: \"DOUBLEREGULATING\" };\n IfcValveTypeEnum.DRAWOFFCOCK = { type: 3, value: \"DRAWOFFCOCK\" };\n IfcValveTypeEnum.FAUCET = { type: 3, value: \"FAUCET\" };\n IfcValveTypeEnum.FLUSHING = { type: 3, value: \"FLUSHING\" };\n IfcValveTypeEnum.GASCOCK = { type: 3, value: \"GASCOCK\" };\n IfcValveTypeEnum.GASTAP = { type: 3, value: \"GASTAP\" };\n IfcValveTypeEnum.ISOLATING = { type: 3, value: \"ISOLATING\" };\n IfcValveTypeEnum.MIXING = { type: 3, value: \"MIXING\" };\n IfcValveTypeEnum.PRESSUREREDUCING = { type: 3, value: \"PRESSUREREDUCING\" };\n IfcValveTypeEnum.PRESSURERELIEF = { type: 3, value: \"PRESSURERELIEF\" };\n IfcValveTypeEnum.REGULATING = { type: 3, value: \"REGULATING\" };\n IfcValveTypeEnum.SAFETYCUTOFF = { type: 3, value: \"SAFETYCUTOFF\" };\n IfcValveTypeEnum.STEAMTRAP = { type: 3, value: \"STEAMTRAP\" };\n IfcValveTypeEnum.STOPCOCK = { type: 3, value: \"STOPCOCK\" };\n IfcValveTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcValveTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcValveTypeEnum = IfcValveTypeEnum;\n class IfcVehicleTypeEnum {\n }\n IfcVehicleTypeEnum.CARGO = { type: 3, value: \"CARGO\" };\n IfcVehicleTypeEnum.ROLLINGSTOCK = { type: 3, value: \"ROLLINGSTOCK\" };\n IfcVehicleTypeEnum.VEHICLE = { type: 3, value: \"VEHICLE\" };\n IfcVehicleTypeEnum.VEHICLEAIR = { type: 3, value: \"VEHICLEAIR\" };\n IfcVehicleTypeEnum.VEHICLEMARINE = { type: 3, value: \"VEHICLEMARINE\" };\n IfcVehicleTypeEnum.VEHICLETRACKED = { type: 3, value: \"VEHICLETRACKED\" };\n IfcVehicleTypeEnum.VEHICLEWHEELED = { type: 3, value: \"VEHICLEWHEELED\" };\n IfcVehicleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVehicleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVehicleTypeEnum = IfcVehicleTypeEnum;\n class IfcVibrationDamperTypeEnum {\n }\n IfcVibrationDamperTypeEnum.AXIAL_YIELD = { type: 3, value: \"AXIAL_YIELD\" };\n IfcVibrationDamperTypeEnum.BENDING_YIELD = { type: 3, value: \"BENDING_YIELD\" };\n IfcVibrationDamperTypeEnum.FRICTION = { type: 3, value: \"FRICTION\" };\n IfcVibrationDamperTypeEnum.RUBBER = { type: 3, value: \"RUBBER\" };\n IfcVibrationDamperTypeEnum.SHEAR_YIELD = { type: 3, value: \"SHEAR_YIELD\" };\n IfcVibrationDamperTypeEnum.VISCOUS = { type: 3, value: \"VISCOUS\" };\n IfcVibrationDamperTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationDamperTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVibrationDamperTypeEnum = IfcVibrationDamperTypeEnum;\n class IfcVibrationIsolatorTypeEnum {\n }\n IfcVibrationIsolatorTypeEnum.BASE = { type: 3, value: \"BASE\" };\n IfcVibrationIsolatorTypeEnum.COMPRESSION = { type: 3, value: \"COMPRESSION\" };\n IfcVibrationIsolatorTypeEnum.SPRING = { type: 3, value: \"SPRING\" };\n IfcVibrationIsolatorTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVibrationIsolatorTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVibrationIsolatorTypeEnum = IfcVibrationIsolatorTypeEnum;\n class IfcVirtualElementTypeEnum {\n }\n IfcVirtualElementTypeEnum.BOUNDARY = { type: 3, value: \"BOUNDARY\" };\n IfcVirtualElementTypeEnum.CLEARANCE = { type: 3, value: \"CLEARANCE\" };\n IfcVirtualElementTypeEnum.PROVISIONFORVOID = { type: 3, value: \"PROVISIONFORVOID\" };\n IfcVirtualElementTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVirtualElementTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVirtualElementTypeEnum = IfcVirtualElementTypeEnum;\n class IfcVoidingFeatureTypeEnum {\n }\n IfcVoidingFeatureTypeEnum.CHAMFER = { type: 3, value: \"CHAMFER\" };\n IfcVoidingFeatureTypeEnum.CUTOUT = { type: 3, value: \"CUTOUT\" };\n IfcVoidingFeatureTypeEnum.EDGE = { type: 3, value: \"EDGE\" };\n IfcVoidingFeatureTypeEnum.HOLE = { type: 3, value: \"HOLE\" };\n IfcVoidingFeatureTypeEnum.MITER = { type: 3, value: \"MITER\" };\n IfcVoidingFeatureTypeEnum.NOTCH = { type: 3, value: \"NOTCH\" };\n IfcVoidingFeatureTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcVoidingFeatureTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcVoidingFeatureTypeEnum = IfcVoidingFeatureTypeEnum;\n class IfcWallTypeEnum {\n }\n IfcWallTypeEnum.ELEMENTEDWALL = { type: 3, value: \"ELEMENTEDWALL\" };\n IfcWallTypeEnum.MOVABLE = { type: 3, value: \"MOVABLE\" };\n IfcWallTypeEnum.PARAPET = { type: 3, value: \"PARAPET\" };\n IfcWallTypeEnum.PARTITIONING = { type: 3, value: \"PARTITIONING\" };\n IfcWallTypeEnum.PLUMBINGWALL = { type: 3, value: \"PLUMBINGWALL\" };\n IfcWallTypeEnum.POLYGONAL = { type: 3, value: \"POLYGONAL\" };\n IfcWallTypeEnum.RETAININGWALL = { type: 3, value: \"RETAININGWALL\" };\n IfcWallTypeEnum.SHEAR = { type: 3, value: \"SHEAR\" };\n IfcWallTypeEnum.SOLIDWALL = { type: 3, value: \"SOLIDWALL\" };\n IfcWallTypeEnum.STANDARD = { type: 3, value: \"STANDARD\" };\n IfcWallTypeEnum.WAVEWALL = { type: 3, value: \"WAVEWALL\" };\n IfcWallTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWallTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWallTypeEnum = IfcWallTypeEnum;\n class IfcWasteTerminalTypeEnum {\n }\n IfcWasteTerminalTypeEnum.FLOORTRAP = { type: 3, value: \"FLOORTRAP\" };\n IfcWasteTerminalTypeEnum.FLOORWASTE = { type: 3, value: \"FLOORWASTE\" };\n IfcWasteTerminalTypeEnum.GULLYSUMP = { type: 3, value: \"GULLYSUMP\" };\n IfcWasteTerminalTypeEnum.GULLYTRAP = { type: 3, value: \"GULLYTRAP\" };\n IfcWasteTerminalTypeEnum.ROOFDRAIN = { type: 3, value: \"ROOFDRAIN\" };\n IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT = { type: 3, value: \"WASTEDISPOSALUNIT\" };\n IfcWasteTerminalTypeEnum.WASTETRAP = { type: 3, value: \"WASTETRAP\" };\n IfcWasteTerminalTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWasteTerminalTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWasteTerminalTypeEnum = IfcWasteTerminalTypeEnum;\n class IfcWindowPanelOperationEnum {\n }\n IfcWindowPanelOperationEnum.BOTTOMHUNG = { type: 3, value: \"BOTTOMHUNG\" };\n IfcWindowPanelOperationEnum.FIXEDCASEMENT = { type: 3, value: \"FIXEDCASEMENT\" };\n IfcWindowPanelOperationEnum.OTHEROPERATION = { type: 3, value: \"OTHEROPERATION\" };\n IfcWindowPanelOperationEnum.PIVOTHORIZONTAL = { type: 3, value: \"PIVOTHORIZONTAL\" };\n IfcWindowPanelOperationEnum.PIVOTVERTICAL = { type: 3, value: \"PIVOTVERTICAL\" };\n IfcWindowPanelOperationEnum.REMOVABLECASEMENT = { type: 3, value: \"REMOVABLECASEMENT\" };\n IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND = { type: 3, value: \"SIDEHUNGLEFTHAND\" };\n IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND = { type: 3, value: \"SIDEHUNGRIGHTHAND\" };\n IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL = { type: 3, value: \"SLIDINGHORIZONTAL\" };\n IfcWindowPanelOperationEnum.SLIDINGVERTICAL = { type: 3, value: \"SLIDINGVERTICAL\" };\n IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND = { type: 3, value: \"TILTANDTURNLEFTHAND\" };\n IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND = { type: 3, value: \"TILTANDTURNRIGHTHAND\" };\n IfcWindowPanelOperationEnum.TOPHUNG = { type: 3, value: \"TOPHUNG\" };\n IfcWindowPanelOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowPanelOperationEnum = IfcWindowPanelOperationEnum;\n class IfcWindowPanelPositionEnum {\n }\n IfcWindowPanelPositionEnum.BOTTOM = { type: 3, value: \"BOTTOM\" };\n IfcWindowPanelPositionEnum.LEFT = { type: 3, value: \"LEFT\" };\n IfcWindowPanelPositionEnum.MIDDLE = { type: 3, value: \"MIDDLE\" };\n IfcWindowPanelPositionEnum.RIGHT = { type: 3, value: \"RIGHT\" };\n IfcWindowPanelPositionEnum.TOP = { type: 3, value: \"TOP\" };\n IfcWindowPanelPositionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowPanelPositionEnum = IfcWindowPanelPositionEnum;\n class IfcWindowStyleConstructionEnum {\n }\n IfcWindowStyleConstructionEnum.ALUMINIUM = { type: 3, value: \"ALUMINIUM\" };\n IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD = { type: 3, value: \"ALUMINIUM_WOOD\" };\n IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL = { type: 3, value: \"HIGH_GRADE_STEEL\" };\n IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION = { type: 3, value: \"OTHER_CONSTRUCTION\" };\n IfcWindowStyleConstructionEnum.PLASTIC = { type: 3, value: \"PLASTIC\" };\n IfcWindowStyleConstructionEnum.STEEL = { type: 3, value: \"STEEL\" };\n IfcWindowStyleConstructionEnum.WOOD = { type: 3, value: \"WOOD\" };\n IfcWindowStyleConstructionEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowStyleConstructionEnum = IfcWindowStyleConstructionEnum;\n class IfcWindowStyleOperationEnum {\n }\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowStyleOperationEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowStyleOperationEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowStyleOperationEnum = IfcWindowStyleOperationEnum;\n class IfcWindowTypeEnum {\n }\n IfcWindowTypeEnum.LIGHTDOME = { type: 3, value: \"LIGHTDOME\" };\n IfcWindowTypeEnum.SKYLIGHT = { type: 3, value: \"SKYLIGHT\" };\n IfcWindowTypeEnum.WINDOW = { type: 3, value: \"WINDOW\" };\n IfcWindowTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowTypeEnum = IfcWindowTypeEnum;\n class IfcWindowTypePartitioningEnum {\n }\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_HORIZONTAL = { type: 3, value: \"DOUBLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.DOUBLE_PANEL_VERTICAL = { type: 3, value: \"DOUBLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.SINGLE_PANEL = { type: 3, value: \"SINGLE_PANEL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_BOTTOM = { type: 3, value: \"TRIPLE_PANEL_BOTTOM\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_HORIZONTAL = { type: 3, value: \"TRIPLE_PANEL_HORIZONTAL\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_LEFT = { type: 3, value: \"TRIPLE_PANEL_LEFT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_RIGHT = { type: 3, value: \"TRIPLE_PANEL_RIGHT\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_TOP = { type: 3, value: \"TRIPLE_PANEL_TOP\" };\n IfcWindowTypePartitioningEnum.TRIPLE_PANEL_VERTICAL = { type: 3, value: \"TRIPLE_PANEL_VERTICAL\" };\n IfcWindowTypePartitioningEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWindowTypePartitioningEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWindowTypePartitioningEnum = IfcWindowTypePartitioningEnum;\n class IfcWorkCalendarTypeEnum {\n }\n IfcWorkCalendarTypeEnum.FIRSTSHIFT = { type: 3, value: \"FIRSTSHIFT\" };\n IfcWorkCalendarTypeEnum.SECONDSHIFT = { type: 3, value: \"SECONDSHIFT\" };\n IfcWorkCalendarTypeEnum.THIRDSHIFT = { type: 3, value: \"THIRDSHIFT\" };\n IfcWorkCalendarTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkCalendarTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkCalendarTypeEnum = IfcWorkCalendarTypeEnum;\n class IfcWorkPlanTypeEnum {\n }\n IfcWorkPlanTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkPlanTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkPlanTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkPlanTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkPlanTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkPlanTypeEnum = IfcWorkPlanTypeEnum;\n class IfcWorkScheduleTypeEnum {\n }\n IfcWorkScheduleTypeEnum.ACTUAL = { type: 3, value: \"ACTUAL\" };\n IfcWorkScheduleTypeEnum.BASELINE = { type: 3, value: \"BASELINE\" };\n IfcWorkScheduleTypeEnum.PLANNED = { type: 3, value: \"PLANNED\" };\n IfcWorkScheduleTypeEnum.USERDEFINED = { type: 3, value: \"USERDEFINED\" };\n IfcWorkScheduleTypeEnum.NOTDEFINED = { type: 3, value: \"NOTDEFINED\" };\n IFC4X32.IfcWorkScheduleTypeEnum = IfcWorkScheduleTypeEnum;\n class IfcActorRole extends IfcLineObject {\n constructor(Role, UserDefinedRole, Description) {\n super();\n this.Role = Role;\n this.UserDefinedRole = UserDefinedRole;\n this.Description = Description;\n this.type = 3630933823;\n }\n }\n IFC4X32.IfcActorRole = IfcActorRole;\n class IfcAddress extends IfcLineObject {\n constructor(Purpose, Description, UserDefinedPurpose) {\n super();\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.type = 618182010;\n }\n }\n IFC4X32.IfcAddress = IfcAddress;\n class IfcAlignmentParameterSegment extends IfcLineObject {\n constructor(StartTag, EndTag) {\n super();\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.type = 2879124712;\n }\n }\n IFC4X32.IfcAlignmentParameterSegment = IfcAlignmentParameterSegment;\n class IfcAlignmentVerticalSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartDistAlong, HorizontalLength, StartHeight, StartGradient, EndGradient, RadiusOfCurvature, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartDistAlong = StartDistAlong;\n this.HorizontalLength = HorizontalLength;\n this.StartHeight = StartHeight;\n this.StartGradient = StartGradient;\n this.EndGradient = EndGradient;\n this.RadiusOfCurvature = RadiusOfCurvature;\n this.PredefinedType = PredefinedType;\n this.type = 3633395639;\n }\n }\n IFC4X32.IfcAlignmentVerticalSegment = IfcAlignmentVerticalSegment;\n class IfcApplication extends IfcLineObject {\n constructor(ApplicationDeveloper, Version, ApplicationFullName, ApplicationIdentifier) {\n super();\n this.ApplicationDeveloper = ApplicationDeveloper;\n this.Version = Version;\n this.ApplicationFullName = ApplicationFullName;\n this.ApplicationIdentifier = ApplicationIdentifier;\n this.type = 639542469;\n }\n }\n IFC4X32.IfcApplication = IfcApplication;\n class IfcAppliedValue extends IfcLineObject {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 411424972;\n }\n }\n IFC4X32.IfcAppliedValue = IfcAppliedValue;\n class IfcApproval extends IfcLineObject {\n constructor(Identifier, Name, Description, TimeOfApproval, Status, Level, Qualifier, RequestingApproval, GivingApproval) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.TimeOfApproval = TimeOfApproval;\n this.Status = Status;\n this.Level = Level;\n this.Qualifier = Qualifier;\n this.RequestingApproval = RequestingApproval;\n this.GivingApproval = GivingApproval;\n this.type = 130549933;\n }\n }\n IFC4X32.IfcApproval = IfcApproval;\n class IfcBoundaryCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 4037036970;\n }\n }\n IFC4X32.IfcBoundaryCondition = IfcBoundaryCondition;\n class IfcBoundaryEdgeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByLengthX, TranslationalStiffnessByLengthY, TranslationalStiffnessByLengthZ, RotationalStiffnessByLengthX, RotationalStiffnessByLengthY, RotationalStiffnessByLengthZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByLengthX = TranslationalStiffnessByLengthX;\n this.TranslationalStiffnessByLengthY = TranslationalStiffnessByLengthY;\n this.TranslationalStiffnessByLengthZ = TranslationalStiffnessByLengthZ;\n this.RotationalStiffnessByLengthX = RotationalStiffnessByLengthX;\n this.RotationalStiffnessByLengthY = RotationalStiffnessByLengthY;\n this.RotationalStiffnessByLengthZ = RotationalStiffnessByLengthZ;\n this.type = 1560379544;\n }\n }\n IFC4X32.IfcBoundaryEdgeCondition = IfcBoundaryEdgeCondition;\n class IfcBoundaryFaceCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessByAreaX, TranslationalStiffnessByAreaY, TranslationalStiffnessByAreaZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessByAreaX = TranslationalStiffnessByAreaX;\n this.TranslationalStiffnessByAreaY = TranslationalStiffnessByAreaY;\n this.TranslationalStiffnessByAreaZ = TranslationalStiffnessByAreaZ;\n this.type = 3367102660;\n }\n }\n IFC4X32.IfcBoundaryFaceCondition = IfcBoundaryFaceCondition;\n class IfcBoundaryNodeCondition extends IfcBoundaryCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ) {\n super(Name);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.type = 1387855156;\n }\n }\n IFC4X32.IfcBoundaryNodeCondition = IfcBoundaryNodeCondition;\n class IfcBoundaryNodeConditionWarping extends IfcBoundaryNodeCondition {\n constructor(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ, WarpingStiffness) {\n super(Name, TranslationalStiffnessX, TranslationalStiffnessY, TranslationalStiffnessZ, RotationalStiffnessX, RotationalStiffnessY, RotationalStiffnessZ);\n this.Name = Name;\n this.TranslationalStiffnessX = TranslationalStiffnessX;\n this.TranslationalStiffnessY = TranslationalStiffnessY;\n this.TranslationalStiffnessZ = TranslationalStiffnessZ;\n this.RotationalStiffnessX = RotationalStiffnessX;\n this.RotationalStiffnessY = RotationalStiffnessY;\n this.RotationalStiffnessZ = RotationalStiffnessZ;\n this.WarpingStiffness = WarpingStiffness;\n this.type = 2069777674;\n }\n }\n IFC4X32.IfcBoundaryNodeConditionWarping = IfcBoundaryNodeConditionWarping;\n class IfcConnectionGeometry extends IfcLineObject {\n constructor() {\n super();\n this.type = 2859738748;\n }\n }\n IFC4X32.IfcConnectionGeometry = IfcConnectionGeometry;\n class IfcConnectionPointGeometry extends IfcConnectionGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement) {\n super();\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.type = 2614616156;\n }\n }\n IFC4X32.IfcConnectionPointGeometry = IfcConnectionPointGeometry;\n class IfcConnectionSurfaceGeometry extends IfcConnectionGeometry {\n constructor(SurfaceOnRelatingElement, SurfaceOnRelatedElement) {\n super();\n this.SurfaceOnRelatingElement = SurfaceOnRelatingElement;\n this.SurfaceOnRelatedElement = SurfaceOnRelatedElement;\n this.type = 2732653382;\n }\n }\n IFC4X32.IfcConnectionSurfaceGeometry = IfcConnectionSurfaceGeometry;\n class IfcConnectionVolumeGeometry extends IfcConnectionGeometry {\n constructor(VolumeOnRelatingElement, VolumeOnRelatedElement) {\n super();\n this.VolumeOnRelatingElement = VolumeOnRelatingElement;\n this.VolumeOnRelatedElement = VolumeOnRelatedElement;\n this.type = 775493141;\n }\n }\n IFC4X32.IfcConnectionVolumeGeometry = IfcConnectionVolumeGeometry;\n class IfcConstraint extends IfcLineObject {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.type = 1959218052;\n }\n }\n IFC4X32.IfcConstraint = IfcConstraint;\n class IfcCoordinateOperation extends IfcLineObject {\n constructor(SourceCRS, TargetCRS) {\n super();\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.type = 1785450214;\n }\n }\n IFC4X32.IfcCoordinateOperation = IfcCoordinateOperation;\n class IfcCoordinateReferenceSystem extends IfcLineObject {\n constructor(Name, Description, GeodeticDatum, VerticalDatum) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.type = 1466758467;\n }\n }\n IFC4X32.IfcCoordinateReferenceSystem = IfcCoordinateReferenceSystem;\n class IfcCostValue extends IfcAppliedValue {\n constructor(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components) {\n super(Name, Description, AppliedValue, UnitBasis, ApplicableDate, FixedUntilDate, Category, Condition, ArithmeticOperator, Components);\n this.Name = Name;\n this.Description = Description;\n this.AppliedValue = AppliedValue;\n this.UnitBasis = UnitBasis;\n this.ApplicableDate = ApplicableDate;\n this.FixedUntilDate = FixedUntilDate;\n this.Category = Category;\n this.Condition = Condition;\n this.ArithmeticOperator = ArithmeticOperator;\n this.Components = Components;\n this.type = 602808272;\n }\n }\n IFC4X32.IfcCostValue = IfcCostValue;\n class IfcDerivedUnit extends IfcLineObject {\n constructor(Elements, UnitType, UserDefinedType, Name) {\n super();\n this.Elements = Elements;\n this.UnitType = UnitType;\n this.UserDefinedType = UserDefinedType;\n this.Name = Name;\n this.type = 1765591967;\n }\n }\n IFC4X32.IfcDerivedUnit = IfcDerivedUnit;\n class IfcDerivedUnitElement extends IfcLineObject {\n constructor(Unit, Exponent) {\n super();\n this.Unit = Unit;\n this.Exponent = Exponent;\n this.type = 1045800335;\n }\n }\n IFC4X32.IfcDerivedUnitElement = IfcDerivedUnitElement;\n class IfcDimensionalExponents extends IfcLineObject {\n constructor(LengthExponent, MassExponent, TimeExponent, ElectricCurrentExponent, ThermodynamicTemperatureExponent, AmountOfSubstanceExponent, LuminousIntensityExponent) {\n super();\n this.LengthExponent = LengthExponent;\n this.MassExponent = MassExponent;\n this.TimeExponent = TimeExponent;\n this.ElectricCurrentExponent = ElectricCurrentExponent;\n this.ThermodynamicTemperatureExponent = ThermodynamicTemperatureExponent;\n this.AmountOfSubstanceExponent = AmountOfSubstanceExponent;\n this.LuminousIntensityExponent = LuminousIntensityExponent;\n this.type = 2949456006;\n }\n }\n IFC4X32.IfcDimensionalExponents = IfcDimensionalExponents;\n class IfcExternalInformation extends IfcLineObject {\n constructor() {\n super();\n this.type = 4294318154;\n }\n }\n IFC4X32.IfcExternalInformation = IfcExternalInformation;\n class IfcExternalReference extends IfcLineObject {\n constructor(Location, Identification, Name) {\n super();\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3200245327;\n }\n }\n IFC4X32.IfcExternalReference = IfcExternalReference;\n class IfcExternallyDefinedHatchStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 2242383968;\n }\n }\n IFC4X32.IfcExternallyDefinedHatchStyle = IfcExternallyDefinedHatchStyle;\n class IfcExternallyDefinedSurfaceStyle extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 1040185647;\n }\n }\n IFC4X32.IfcExternallyDefinedSurfaceStyle = IfcExternallyDefinedSurfaceStyle;\n class IfcExternallyDefinedTextFont extends IfcExternalReference {\n constructor(Location, Identification, Name) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.type = 3548104201;\n }\n }\n IFC4X32.IfcExternallyDefinedTextFont = IfcExternallyDefinedTextFont;\n class IfcGridAxis extends IfcLineObject {\n constructor(AxisTag, AxisCurve, SameSense) {\n super();\n this.AxisTag = AxisTag;\n this.AxisCurve = AxisCurve;\n this.SameSense = SameSense;\n this.type = 852622518;\n }\n }\n IFC4X32.IfcGridAxis = IfcGridAxis;\n class IfcIrregularTimeSeriesValue extends IfcLineObject {\n constructor(TimeStamp, ListValues) {\n super();\n this.TimeStamp = TimeStamp;\n this.ListValues = ListValues;\n this.type = 3020489413;\n }\n }\n IFC4X32.IfcIrregularTimeSeriesValue = IfcIrregularTimeSeriesValue;\n class IfcLibraryInformation extends IfcExternalInformation {\n constructor(Name, Version, Publisher, VersionDate, Location, Description) {\n super();\n this.Name = Name;\n this.Version = Version;\n this.Publisher = Publisher;\n this.VersionDate = VersionDate;\n this.Location = Location;\n this.Description = Description;\n this.type = 2655187982;\n }\n }\n IFC4X32.IfcLibraryInformation = IfcLibraryInformation;\n class IfcLibraryReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, Language, ReferencedLibrary) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Language = Language;\n this.ReferencedLibrary = ReferencedLibrary;\n this.type = 3452421091;\n }\n }\n IFC4X32.IfcLibraryReference = IfcLibraryReference;\n class IfcLightDistributionData extends IfcLineObject {\n constructor(MainPlaneAngle, SecondaryPlaneAngle, LuminousIntensity) {\n super();\n this.MainPlaneAngle = MainPlaneAngle;\n this.SecondaryPlaneAngle = SecondaryPlaneAngle;\n this.LuminousIntensity = LuminousIntensity;\n this.type = 4162380809;\n }\n }\n IFC4X32.IfcLightDistributionData = IfcLightDistributionData;\n class IfcLightIntensityDistribution extends IfcLineObject {\n constructor(LightDistributionCurve, DistributionData) {\n super();\n this.LightDistributionCurve = LightDistributionCurve;\n this.DistributionData = DistributionData;\n this.type = 1566485204;\n }\n }\n IFC4X32.IfcLightIntensityDistribution = IfcLightIntensityDistribution;\n class IfcMapConversion extends IfcCoordinateOperation {\n constructor(SourceCRS, TargetCRS, Eastings, Northings, OrthogonalHeight, XAxisAbscissa, XAxisOrdinate, Scale, ScaleY, ScaleZ) {\n super(SourceCRS, TargetCRS);\n this.SourceCRS = SourceCRS;\n this.TargetCRS = TargetCRS;\n this.Eastings = Eastings;\n this.Northings = Northings;\n this.OrthogonalHeight = OrthogonalHeight;\n this.XAxisAbscissa = XAxisAbscissa;\n this.XAxisOrdinate = XAxisOrdinate;\n this.Scale = Scale;\n this.ScaleY = ScaleY;\n this.ScaleZ = ScaleZ;\n this.type = 3057273783;\n }\n }\n IFC4X32.IfcMapConversion = IfcMapConversion;\n class IfcMaterialClassificationRelationship extends IfcLineObject {\n constructor(MaterialClassifications, ClassifiedMaterial) {\n super();\n this.MaterialClassifications = MaterialClassifications;\n this.ClassifiedMaterial = ClassifiedMaterial;\n this.type = 1847130766;\n }\n }\n IFC4X32.IfcMaterialClassificationRelationship = IfcMaterialClassificationRelationship;\n class IfcMaterialDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 760658860;\n }\n }\n IFC4X32.IfcMaterialDefinition = IfcMaterialDefinition;\n class IfcMaterialLayer extends IfcMaterialDefinition {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority) {\n super();\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.type = 248100487;\n }\n }\n IFC4X32.IfcMaterialLayer = IfcMaterialLayer;\n class IfcMaterialLayerSet extends IfcMaterialDefinition {\n constructor(MaterialLayers, LayerSetName, Description) {\n super();\n this.MaterialLayers = MaterialLayers;\n this.LayerSetName = LayerSetName;\n this.Description = Description;\n this.type = 3303938423;\n }\n }\n IFC4X32.IfcMaterialLayerSet = IfcMaterialLayerSet;\n class IfcMaterialLayerWithOffsets extends IfcMaterialLayer {\n constructor(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority, OffsetDirection, OffsetValues) {\n super(Material, LayerThickness, IsVentilated, Name, Description, Category, Priority);\n this.Material = Material;\n this.LayerThickness = LayerThickness;\n this.IsVentilated = IsVentilated;\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.Priority = Priority;\n this.OffsetDirection = OffsetDirection;\n this.OffsetValues = OffsetValues;\n this.type = 1847252529;\n }\n }\n IFC4X32.IfcMaterialLayerWithOffsets = IfcMaterialLayerWithOffsets;\n class IfcMaterialList extends IfcLineObject {\n constructor(Materials) {\n super();\n this.Materials = Materials;\n this.type = 2199411900;\n }\n }\n IFC4X32.IfcMaterialList = IfcMaterialList;\n class IfcMaterialProfile extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Profile, Priority, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.type = 2235152071;\n }\n }\n IFC4X32.IfcMaterialProfile = IfcMaterialProfile;\n class IfcMaterialProfileSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialProfiles, CompositeProfile) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialProfiles = MaterialProfiles;\n this.CompositeProfile = CompositeProfile;\n this.type = 164193824;\n }\n }\n IFC4X32.IfcMaterialProfileSet = IfcMaterialProfileSet;\n class IfcMaterialProfileWithOffsets extends IfcMaterialProfile {\n constructor(Name, Description, Material, Profile, Priority, Category, OffsetValues) {\n super(Name, Description, Material, Profile, Priority, Category);\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Profile = Profile;\n this.Priority = Priority;\n this.Category = Category;\n this.OffsetValues = OffsetValues;\n this.type = 552965576;\n }\n }\n IFC4X32.IfcMaterialProfileWithOffsets = IfcMaterialProfileWithOffsets;\n class IfcMaterialUsageDefinition extends IfcLineObject {\n constructor() {\n super();\n this.type = 1507914824;\n }\n }\n IFC4X32.IfcMaterialUsageDefinition = IfcMaterialUsageDefinition;\n class IfcMeasureWithUnit extends IfcLineObject {\n constructor(ValueComponent, UnitComponent) {\n super();\n this.ValueComponent = ValueComponent;\n this.UnitComponent = UnitComponent;\n this.type = 2597039031;\n }\n }\n IFC4X32.IfcMeasureWithUnit = IfcMeasureWithUnit;\n class IfcMetric extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, Benchmark, ValueSource, DataValue, ReferencePath) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.Benchmark = Benchmark;\n this.ValueSource = ValueSource;\n this.DataValue = DataValue;\n this.ReferencePath = ReferencePath;\n this.type = 3368373690;\n }\n }\n IFC4X32.IfcMetric = IfcMetric;\n class IfcMonetaryUnit extends IfcLineObject {\n constructor(Currency) {\n super();\n this.Currency = Currency;\n this.type = 2706619895;\n }\n }\n IFC4X32.IfcMonetaryUnit = IfcMonetaryUnit;\n class IfcNamedUnit extends IfcLineObject {\n constructor(Dimensions, UnitType) {\n super();\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.type = 1918398963;\n }\n }\n IFC4X32.IfcNamedUnit = IfcNamedUnit;\n class IfcObjectPlacement extends IfcLineObject {\n constructor(PlacementRelTo) {\n super();\n this.PlacementRelTo = PlacementRelTo;\n this.type = 3701648758;\n }\n }\n IFC4X32.IfcObjectPlacement = IfcObjectPlacement;\n class IfcObjective extends IfcConstraint {\n constructor(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade, BenchmarkValues, LogicalAggregator, ObjectiveQualifier, UserDefinedQualifier) {\n super(Name, Description, ConstraintGrade, ConstraintSource, CreatingActor, CreationTime, UserDefinedGrade);\n this.Name = Name;\n this.Description = Description;\n this.ConstraintGrade = ConstraintGrade;\n this.ConstraintSource = ConstraintSource;\n this.CreatingActor = CreatingActor;\n this.CreationTime = CreationTime;\n this.UserDefinedGrade = UserDefinedGrade;\n this.BenchmarkValues = BenchmarkValues;\n this.LogicalAggregator = LogicalAggregator;\n this.ObjectiveQualifier = ObjectiveQualifier;\n this.UserDefinedQualifier = UserDefinedQualifier;\n this.type = 2251480897;\n }\n }\n IFC4X32.IfcObjective = IfcObjective;\n class IfcOrganization extends IfcLineObject {\n constructor(Identification, Name, Description, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 4251960020;\n }\n }\n IFC4X32.IfcOrganization = IfcOrganization;\n class IfcOwnerHistory extends IfcLineObject {\n constructor(OwningUser, OwningApplication, State, ChangeAction, LastModifiedDate, LastModifyingUser, LastModifyingApplication, CreationDate) {\n super();\n this.OwningUser = OwningUser;\n this.OwningApplication = OwningApplication;\n this.State = State;\n this.ChangeAction = ChangeAction;\n this.LastModifiedDate = LastModifiedDate;\n this.LastModifyingUser = LastModifyingUser;\n this.LastModifyingApplication = LastModifyingApplication;\n this.CreationDate = CreationDate;\n this.type = 1207048766;\n }\n }\n IFC4X32.IfcOwnerHistory = IfcOwnerHistory;\n class IfcPerson extends IfcLineObject {\n constructor(Identification, FamilyName, GivenName, MiddleNames, PrefixTitles, SuffixTitles, Roles, Addresses) {\n super();\n this.Identification = Identification;\n this.FamilyName = FamilyName;\n this.GivenName = GivenName;\n this.MiddleNames = MiddleNames;\n this.PrefixTitles = PrefixTitles;\n this.SuffixTitles = SuffixTitles;\n this.Roles = Roles;\n this.Addresses = Addresses;\n this.type = 2077209135;\n }\n }\n IFC4X32.IfcPerson = IfcPerson;\n class IfcPersonAndOrganization extends IfcLineObject {\n constructor(ThePerson, TheOrganization, Roles) {\n super();\n this.ThePerson = ThePerson;\n this.TheOrganization = TheOrganization;\n this.Roles = Roles;\n this.type = 101040310;\n }\n }\n IFC4X32.IfcPersonAndOrganization = IfcPersonAndOrganization;\n class IfcPhysicalQuantity extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2483315170;\n }\n }\n IFC4X32.IfcPhysicalQuantity = IfcPhysicalQuantity;\n class IfcPhysicalSimpleQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, Unit) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.type = 2226359599;\n }\n }\n IFC4X32.IfcPhysicalSimpleQuantity = IfcPhysicalSimpleQuantity;\n class IfcPostalAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, InternalLocation, AddressLines, PostalBox, Town, Region, PostalCode, Country) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.InternalLocation = InternalLocation;\n this.AddressLines = AddressLines;\n this.PostalBox = PostalBox;\n this.Town = Town;\n this.Region = Region;\n this.PostalCode = PostalCode;\n this.Country = Country;\n this.type = 3355820592;\n }\n }\n IFC4X32.IfcPostalAddress = IfcPostalAddress;\n class IfcPresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 677532197;\n }\n }\n IFC4X32.IfcPresentationItem = IfcPresentationItem;\n class IfcPresentationLayerAssignment extends IfcLineObject {\n constructor(Name, Description, AssignedItems, Identifier) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.type = 2022622350;\n }\n }\n IFC4X32.IfcPresentationLayerAssignment = IfcPresentationLayerAssignment;\n class IfcPresentationLayerWithStyle extends IfcPresentationLayerAssignment {\n constructor(Name, Description, AssignedItems, Identifier, LayerOn, LayerFrozen, LayerBlocked, LayerStyles) {\n super(Name, Description, AssignedItems, Identifier);\n this.Name = Name;\n this.Description = Description;\n this.AssignedItems = AssignedItems;\n this.Identifier = Identifier;\n this.LayerOn = LayerOn;\n this.LayerFrozen = LayerFrozen;\n this.LayerBlocked = LayerBlocked;\n this.LayerStyles = LayerStyles;\n this.type = 1304840413;\n }\n }\n IFC4X32.IfcPresentationLayerWithStyle = IfcPresentationLayerWithStyle;\n class IfcPresentationStyle extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3119450353;\n }\n }\n IFC4X32.IfcPresentationStyle = IfcPresentationStyle;\n class IfcProductRepresentation extends IfcLineObject {\n constructor(Name, Description, Representations) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 2095639259;\n }\n }\n IFC4X32.IfcProductRepresentation = IfcProductRepresentation;\n class IfcProfileDef extends IfcLineObject {\n constructor(ProfileType, ProfileName) {\n super();\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.type = 3958567839;\n }\n }\n IFC4X32.IfcProfileDef = IfcProfileDef;\n class IfcProjectedCRS extends IfcCoordinateReferenceSystem {\n constructor(Name, Description, GeodeticDatum, VerticalDatum, MapProjection, MapZone, MapUnit) {\n super(Name, Description, GeodeticDatum, VerticalDatum);\n this.Name = Name;\n this.Description = Description;\n this.GeodeticDatum = GeodeticDatum;\n this.VerticalDatum = VerticalDatum;\n this.MapProjection = MapProjection;\n this.MapZone = MapZone;\n this.MapUnit = MapUnit;\n this.type = 3843373140;\n }\n }\n IFC4X32.IfcProjectedCRS = IfcProjectedCRS;\n class IfcPropertyAbstraction extends IfcLineObject {\n constructor() {\n super();\n this.type = 986844984;\n }\n }\n IFC4X32.IfcPropertyAbstraction = IfcPropertyAbstraction;\n class IfcPropertyEnumeration extends IfcPropertyAbstraction {\n constructor(Name, EnumerationValues, Unit) {\n super();\n this.Name = Name;\n this.EnumerationValues = EnumerationValues;\n this.Unit = Unit;\n this.type = 3710013099;\n }\n }\n IFC4X32.IfcPropertyEnumeration = IfcPropertyEnumeration;\n class IfcQuantityArea extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, AreaValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.AreaValue = AreaValue;\n this.Formula = Formula;\n this.type = 2044713172;\n }\n }\n IFC4X32.IfcQuantityArea = IfcQuantityArea;\n class IfcQuantityCount extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, CountValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.CountValue = CountValue;\n this.Formula = Formula;\n this.type = 2093928680;\n }\n }\n IFC4X32.IfcQuantityCount = IfcQuantityCount;\n class IfcQuantityLength extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, LengthValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.LengthValue = LengthValue;\n this.Formula = Formula;\n this.type = 931644368;\n }\n }\n IFC4X32.IfcQuantityLength = IfcQuantityLength;\n class IfcQuantityNumber extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, NumberValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.NumberValue = NumberValue;\n this.Formula = Formula;\n this.type = 2691318326;\n }\n }\n IFC4X32.IfcQuantityNumber = IfcQuantityNumber;\n class IfcQuantityTime extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, TimeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.TimeValue = TimeValue;\n this.Formula = Formula;\n this.type = 3252649465;\n }\n }\n IFC4X32.IfcQuantityTime = IfcQuantityTime;\n class IfcQuantityVolume extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, VolumeValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.VolumeValue = VolumeValue;\n this.Formula = Formula;\n this.type = 2405470396;\n }\n }\n IFC4X32.IfcQuantityVolume = IfcQuantityVolume;\n class IfcQuantityWeight extends IfcPhysicalSimpleQuantity {\n constructor(Name, Description, Unit, WeightValue, Formula) {\n super(Name, Description, Unit);\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.WeightValue = WeightValue;\n this.Formula = Formula;\n this.type = 825690147;\n }\n }\n IFC4X32.IfcQuantityWeight = IfcQuantityWeight;\n class IfcRecurrencePattern extends IfcLineObject {\n constructor(RecurrenceType, DayComponent, WeekdayComponent, MonthComponent, Position, Interval, Occurrences, TimePeriods) {\n super();\n this.RecurrenceType = RecurrenceType;\n this.DayComponent = DayComponent;\n this.WeekdayComponent = WeekdayComponent;\n this.MonthComponent = MonthComponent;\n this.Position = Position;\n this.Interval = Interval;\n this.Occurrences = Occurrences;\n this.TimePeriods = TimePeriods;\n this.type = 3915482550;\n }\n }\n IFC4X32.IfcRecurrencePattern = IfcRecurrencePattern;\n class IfcReference extends IfcLineObject {\n constructor(TypeIdentifier, AttributeIdentifier, InstanceName, ListPositions, InnerReference) {\n super();\n this.TypeIdentifier = TypeIdentifier;\n this.AttributeIdentifier = AttributeIdentifier;\n this.InstanceName = InstanceName;\n this.ListPositions = ListPositions;\n this.InnerReference = InnerReference;\n this.type = 2433181523;\n }\n }\n IFC4X32.IfcReference = IfcReference;\n class IfcRepresentation extends IfcLineObject {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super();\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1076942058;\n }\n }\n IFC4X32.IfcRepresentation = IfcRepresentation;\n class IfcRepresentationContext extends IfcLineObject {\n constructor(ContextIdentifier, ContextType) {\n super();\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.type = 3377609919;\n }\n }\n IFC4X32.IfcRepresentationContext = IfcRepresentationContext;\n class IfcRepresentationItem extends IfcLineObject {\n constructor() {\n super();\n this.type = 3008791417;\n }\n }\n IFC4X32.IfcRepresentationItem = IfcRepresentationItem;\n class IfcRepresentationMap extends IfcLineObject {\n constructor(MappingOrigin, MappedRepresentation) {\n super();\n this.MappingOrigin = MappingOrigin;\n this.MappedRepresentation = MappedRepresentation;\n this.type = 1660063152;\n }\n }\n IFC4X32.IfcRepresentationMap = IfcRepresentationMap;\n class IfcResourceLevelRelationship extends IfcLineObject {\n constructor(Name, Description) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.type = 2439245199;\n }\n }\n IFC4X32.IfcResourceLevelRelationship = IfcResourceLevelRelationship;\n class IfcRoot extends IfcLineObject {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super();\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2341007311;\n }\n }\n IFC4X32.IfcRoot = IfcRoot;\n class IfcSIUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Prefix, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Prefix = Prefix;\n this.Name = Name;\n this.type = 448429030;\n }\n }\n IFC4X32.IfcSIUnit = IfcSIUnit;\n class IfcSchedulingTime extends IfcLineObject {\n constructor(Name, DataOrigin, UserDefinedDataOrigin) {\n super();\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.type = 1054537805;\n }\n }\n IFC4X32.IfcSchedulingTime = IfcSchedulingTime;\n class IfcShapeAspect extends IfcLineObject {\n constructor(ShapeRepresentations, Name, Description, ProductDefinitional, PartOfProductDefinitionShape) {\n super();\n this.ShapeRepresentations = ShapeRepresentations;\n this.Name = Name;\n this.Description = Description;\n this.ProductDefinitional = ProductDefinitional;\n this.PartOfProductDefinitionShape = PartOfProductDefinitionShape;\n this.type = 867548509;\n }\n }\n IFC4X32.IfcShapeAspect = IfcShapeAspect;\n class IfcShapeModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3982875396;\n }\n }\n IFC4X32.IfcShapeModel = IfcShapeModel;\n class IfcShapeRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 4240577450;\n }\n }\n IFC4X32.IfcShapeRepresentation = IfcShapeRepresentation;\n class IfcStructuralConnectionCondition extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2273995522;\n }\n }\n IFC4X32.IfcStructuralConnectionCondition = IfcStructuralConnectionCondition;\n class IfcStructuralLoad extends IfcLineObject {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 2162789131;\n }\n }\n IFC4X32.IfcStructuralLoad = IfcStructuralLoad;\n class IfcStructuralLoadConfiguration extends IfcStructuralLoad {\n constructor(Name, Values, Locations) {\n super(Name);\n this.Name = Name;\n this.Values = Values;\n this.Locations = Locations;\n this.type = 3478079324;\n }\n }\n IFC4X32.IfcStructuralLoadConfiguration = IfcStructuralLoadConfiguration;\n class IfcStructuralLoadOrResult extends IfcStructuralLoad {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 609421318;\n }\n }\n IFC4X32.IfcStructuralLoadOrResult = IfcStructuralLoadOrResult;\n class IfcStructuralLoadStatic extends IfcStructuralLoadOrResult {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2525727697;\n }\n }\n IFC4X32.IfcStructuralLoadStatic = IfcStructuralLoadStatic;\n class IfcStructuralLoadTemperature extends IfcStructuralLoadStatic {\n constructor(Name, DeltaTConstant, DeltaTY, DeltaTZ) {\n super(Name);\n this.Name = Name;\n this.DeltaTConstant = DeltaTConstant;\n this.DeltaTY = DeltaTY;\n this.DeltaTZ = DeltaTZ;\n this.type = 3408363356;\n }\n }\n IFC4X32.IfcStructuralLoadTemperature = IfcStructuralLoadTemperature;\n class IfcStyleModel extends IfcRepresentation {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 2830218821;\n }\n }\n IFC4X32.IfcStyleModel = IfcStyleModel;\n class IfcStyledItem extends IfcRepresentationItem {\n constructor(Item, Styles, Name) {\n super();\n this.Item = Item;\n this.Styles = Styles;\n this.Name = Name;\n this.type = 3958052878;\n }\n }\n IFC4X32.IfcStyledItem = IfcStyledItem;\n class IfcStyledRepresentation extends IfcStyleModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 3049322572;\n }\n }\n IFC4X32.IfcStyledRepresentation = IfcStyledRepresentation;\n class IfcSurfaceReinforcementArea extends IfcStructuralLoadOrResult {\n constructor(Name, SurfaceReinforcement1, SurfaceReinforcement2, ShearReinforcement) {\n super(Name);\n this.Name = Name;\n this.SurfaceReinforcement1 = SurfaceReinforcement1;\n this.SurfaceReinforcement2 = SurfaceReinforcement2;\n this.ShearReinforcement = ShearReinforcement;\n this.type = 2934153892;\n }\n }\n IFC4X32.IfcSurfaceReinforcementArea = IfcSurfaceReinforcementArea;\n class IfcSurfaceStyle extends IfcPresentationStyle {\n constructor(Name, Side, Styles) {\n super(Name);\n this.Name = Name;\n this.Side = Side;\n this.Styles = Styles;\n this.type = 1300840506;\n }\n }\n IFC4X32.IfcSurfaceStyle = IfcSurfaceStyle;\n class IfcSurfaceStyleLighting extends IfcPresentationItem {\n constructor(DiffuseTransmissionColour, DiffuseReflectionColour, TransmissionColour, ReflectanceColour) {\n super();\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.DiffuseReflectionColour = DiffuseReflectionColour;\n this.TransmissionColour = TransmissionColour;\n this.ReflectanceColour = ReflectanceColour;\n this.type = 3303107099;\n }\n }\n IFC4X32.IfcSurfaceStyleLighting = IfcSurfaceStyleLighting;\n class IfcSurfaceStyleRefraction extends IfcPresentationItem {\n constructor(RefractionIndex, DispersionFactor) {\n super();\n this.RefractionIndex = RefractionIndex;\n this.DispersionFactor = DispersionFactor;\n this.type = 1607154358;\n }\n }\n IFC4X32.IfcSurfaceStyleRefraction = IfcSurfaceStyleRefraction;\n class IfcSurfaceStyleShading extends IfcPresentationItem {\n constructor(SurfaceColour, Transparency) {\n super();\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.type = 846575682;\n }\n }\n IFC4X32.IfcSurfaceStyleShading = IfcSurfaceStyleShading;\n class IfcSurfaceStyleWithTextures extends IfcPresentationItem {\n constructor(Textures) {\n super();\n this.Textures = Textures;\n this.type = 1351298697;\n }\n }\n IFC4X32.IfcSurfaceStyleWithTextures = IfcSurfaceStyleWithTextures;\n class IfcSurfaceTexture extends IfcPresentationItem {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter) {\n super();\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.type = 626085974;\n }\n }\n IFC4X32.IfcSurfaceTexture = IfcSurfaceTexture;\n class IfcTable extends IfcLineObject {\n constructor(Name, Rows, Columns) {\n super();\n this.Name = Name;\n this.Rows = Rows;\n this.Columns = Columns;\n this.type = 985171141;\n }\n }\n IFC4X32.IfcTable = IfcTable;\n class IfcTableColumn extends IfcLineObject {\n constructor(Identifier, Name, Description, Unit, ReferencePath) {\n super();\n this.Identifier = Identifier;\n this.Name = Name;\n this.Description = Description;\n this.Unit = Unit;\n this.ReferencePath = ReferencePath;\n this.type = 2043862942;\n }\n }\n IFC4X32.IfcTableColumn = IfcTableColumn;\n class IfcTableRow extends IfcLineObject {\n constructor(RowCells, IsHeading) {\n super();\n this.RowCells = RowCells;\n this.IsHeading = IsHeading;\n this.type = 531007025;\n }\n }\n IFC4X32.IfcTableRow = IfcTableRow;\n class IfcTaskTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.type = 1549132990;\n }\n }\n IFC4X32.IfcTaskTime = IfcTaskTime;\n class IfcTaskTimeRecurring extends IfcTaskTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion, Recurrence) {\n super(Name, DataOrigin, UserDefinedDataOrigin, DurationType, ScheduleDuration, ScheduleStart, ScheduleFinish, EarlyStart, EarlyFinish, LateStart, LateFinish, FreeFloat, TotalFloat, IsCritical, StatusTime, ActualDuration, ActualStart, ActualFinish, RemainingTime, Completion);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.DurationType = DurationType;\n this.ScheduleDuration = ScheduleDuration;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.EarlyStart = EarlyStart;\n this.EarlyFinish = EarlyFinish;\n this.LateStart = LateStart;\n this.LateFinish = LateFinish;\n this.FreeFloat = FreeFloat;\n this.TotalFloat = TotalFloat;\n this.IsCritical = IsCritical;\n this.StatusTime = StatusTime;\n this.ActualDuration = ActualDuration;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingTime = RemainingTime;\n this.Completion = Completion;\n this.Recurrence = Recurrence;\n this.type = 2771591690;\n }\n }\n IFC4X32.IfcTaskTimeRecurring = IfcTaskTimeRecurring;\n class IfcTelecomAddress extends IfcAddress {\n constructor(Purpose, Description, UserDefinedPurpose, TelephoneNumbers, FacsimileNumbers, PagerNumber, ElectronicMailAddresses, WWWHomePageURL, MessagingIDs) {\n super(Purpose, Description, UserDefinedPurpose);\n this.Purpose = Purpose;\n this.Description = Description;\n this.UserDefinedPurpose = UserDefinedPurpose;\n this.TelephoneNumbers = TelephoneNumbers;\n this.FacsimileNumbers = FacsimileNumbers;\n this.PagerNumber = PagerNumber;\n this.ElectronicMailAddresses = ElectronicMailAddresses;\n this.WWWHomePageURL = WWWHomePageURL;\n this.MessagingIDs = MessagingIDs;\n this.type = 912023232;\n }\n }\n IFC4X32.IfcTelecomAddress = IfcTelecomAddress;\n class IfcTextStyle extends IfcPresentationStyle {\n constructor(Name, TextCharacterAppearance, TextStyle, TextFontStyle, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.TextCharacterAppearance = TextCharacterAppearance;\n this.TextStyle = TextStyle;\n this.TextFontStyle = TextFontStyle;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 1447204868;\n }\n }\n IFC4X32.IfcTextStyle = IfcTextStyle;\n class IfcTextStyleForDefinedFont extends IfcPresentationItem {\n constructor(Colour, BackgroundColour) {\n super();\n this.Colour = Colour;\n this.BackgroundColour = BackgroundColour;\n this.type = 2636378356;\n }\n }\n IFC4X32.IfcTextStyleForDefinedFont = IfcTextStyleForDefinedFont;\n class IfcTextStyleTextModel extends IfcPresentationItem {\n constructor(TextIndent, TextAlign, TextDecoration, LetterSpacing, WordSpacing, TextTransform, LineHeight) {\n super();\n this.TextIndent = TextIndent;\n this.TextAlign = TextAlign;\n this.TextDecoration = TextDecoration;\n this.LetterSpacing = LetterSpacing;\n this.WordSpacing = WordSpacing;\n this.TextTransform = TextTransform;\n this.LineHeight = LineHeight;\n this.type = 1640371178;\n }\n }\n IFC4X32.IfcTextStyleTextModel = IfcTextStyleTextModel;\n class IfcTextureCoordinate extends IfcPresentationItem {\n constructor(Maps) {\n super();\n this.Maps = Maps;\n this.type = 280115917;\n }\n }\n IFC4X32.IfcTextureCoordinate = IfcTextureCoordinate;\n class IfcTextureCoordinateGenerator extends IfcTextureCoordinate {\n constructor(Maps, Mode, Parameter) {\n super(Maps);\n this.Maps = Maps;\n this.Mode = Mode;\n this.Parameter = Parameter;\n this.type = 1742049831;\n }\n }\n IFC4X32.IfcTextureCoordinateGenerator = IfcTextureCoordinateGenerator;\n class IfcTextureCoordinateIndices extends IfcLineObject {\n constructor(TexCoordIndex, TexCoordsOf) {\n super();\n this.TexCoordIndex = TexCoordIndex;\n this.TexCoordsOf = TexCoordsOf;\n this.type = 222769930;\n }\n }\n IFC4X32.IfcTextureCoordinateIndices = IfcTextureCoordinateIndices;\n class IfcTextureCoordinateIndicesWithVoids extends IfcTextureCoordinateIndices {\n constructor(TexCoordIndex, TexCoordsOf, InnerTexCoordIndices) {\n super(TexCoordIndex, TexCoordsOf);\n this.TexCoordIndex = TexCoordIndex;\n this.TexCoordsOf = TexCoordsOf;\n this.InnerTexCoordIndices = InnerTexCoordIndices;\n this.type = 1010789467;\n }\n }\n IFC4X32.IfcTextureCoordinateIndicesWithVoids = IfcTextureCoordinateIndicesWithVoids;\n class IfcTextureMap extends IfcTextureCoordinate {\n constructor(Maps, Vertices, MappedTo) {\n super(Maps);\n this.Maps = Maps;\n this.Vertices = Vertices;\n this.MappedTo = MappedTo;\n this.type = 2552916305;\n }\n }\n IFC4X32.IfcTextureMap = IfcTextureMap;\n class IfcTextureVertex extends IfcPresentationItem {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1210645708;\n }\n }\n IFC4X32.IfcTextureVertex = IfcTextureVertex;\n class IfcTextureVertexList extends IfcPresentationItem {\n constructor(TexCoordsList) {\n super();\n this.TexCoordsList = TexCoordsList;\n this.type = 3611470254;\n }\n }\n IFC4X32.IfcTextureVertexList = IfcTextureVertexList;\n class IfcTimePeriod extends IfcLineObject {\n constructor(StartTime, EndTime) {\n super();\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.type = 1199560280;\n }\n }\n IFC4X32.IfcTimePeriod = IfcTimePeriod;\n class IfcTimeSeries extends IfcLineObject {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.type = 3101149627;\n }\n }\n IFC4X32.IfcTimeSeries = IfcTimeSeries;\n class IfcTimeSeriesValue extends IfcLineObject {\n constructor(ListValues) {\n super();\n this.ListValues = ListValues;\n this.type = 581633288;\n }\n }\n IFC4X32.IfcTimeSeriesValue = IfcTimeSeriesValue;\n class IfcTopologicalRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 1377556343;\n }\n }\n IFC4X32.IfcTopologicalRepresentationItem = IfcTopologicalRepresentationItem;\n class IfcTopologyRepresentation extends IfcShapeModel {\n constructor(ContextOfItems, RepresentationIdentifier, RepresentationType, Items) {\n super(ContextOfItems, RepresentationIdentifier, RepresentationType, Items);\n this.ContextOfItems = ContextOfItems;\n this.RepresentationIdentifier = RepresentationIdentifier;\n this.RepresentationType = RepresentationType;\n this.Items = Items;\n this.type = 1735638870;\n }\n }\n IFC4X32.IfcTopologyRepresentation = IfcTopologyRepresentation;\n class IfcUnitAssignment extends IfcLineObject {\n constructor(Units) {\n super();\n this.Units = Units;\n this.type = 180925521;\n }\n }\n IFC4X32.IfcUnitAssignment = IfcUnitAssignment;\n class IfcVertex extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 2799835756;\n }\n }\n IFC4X32.IfcVertex = IfcVertex;\n class IfcVertexPoint extends IfcVertex {\n constructor(VertexGeometry) {\n super();\n this.VertexGeometry = VertexGeometry;\n this.type = 1907098498;\n }\n }\n IFC4X32.IfcVertexPoint = IfcVertexPoint;\n class IfcVirtualGridIntersection extends IfcLineObject {\n constructor(IntersectingAxes, OffsetDistances) {\n super();\n this.IntersectingAxes = IntersectingAxes;\n this.OffsetDistances = OffsetDistances;\n this.type = 891718957;\n }\n }\n IFC4X32.IfcVirtualGridIntersection = IfcVirtualGridIntersection;\n class IfcWorkTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, RecurrencePattern, StartDate, FinishDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.RecurrencePattern = RecurrencePattern;\n this.StartDate = StartDate;\n this.FinishDate = FinishDate;\n this.type = 1236880293;\n }\n }\n IFC4X32.IfcWorkTime = IfcWorkTime;\n class IfcAlignmentCantSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartDistAlong, HorizontalLength, StartCantLeft, EndCantLeft, StartCantRight, EndCantRight, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartDistAlong = StartDistAlong;\n this.HorizontalLength = HorizontalLength;\n this.StartCantLeft = StartCantLeft;\n this.EndCantLeft = EndCantLeft;\n this.StartCantRight = StartCantRight;\n this.EndCantRight = EndCantRight;\n this.PredefinedType = PredefinedType;\n this.type = 3752311538;\n }\n }\n IFC4X32.IfcAlignmentCantSegment = IfcAlignmentCantSegment;\n class IfcAlignmentHorizontalSegment extends IfcAlignmentParameterSegment {\n constructor(StartTag, EndTag, StartPoint, StartDirection, StartRadiusOfCurvature, EndRadiusOfCurvature, SegmentLength, GravityCenterLineHeight, PredefinedType) {\n super(StartTag, EndTag);\n this.StartTag = StartTag;\n this.EndTag = EndTag;\n this.StartPoint = StartPoint;\n this.StartDirection = StartDirection;\n this.StartRadiusOfCurvature = StartRadiusOfCurvature;\n this.EndRadiusOfCurvature = EndRadiusOfCurvature;\n this.SegmentLength = SegmentLength;\n this.GravityCenterLineHeight = GravityCenterLineHeight;\n this.PredefinedType = PredefinedType;\n this.type = 536804194;\n }\n }\n IFC4X32.IfcAlignmentHorizontalSegment = IfcAlignmentHorizontalSegment;\n class IfcApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingApproval, RelatedApprovals) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingApproval = RelatingApproval;\n this.RelatedApprovals = RelatedApprovals;\n this.type = 3869604511;\n }\n }\n IFC4X32.IfcApprovalRelationship = IfcApprovalRelationship;\n class IfcArbitraryClosedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.type = 3798115385;\n }\n }\n IFC4X32.IfcArbitraryClosedProfileDef = IfcArbitraryClosedProfileDef;\n class IfcArbitraryOpenProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Curve) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.type = 1310608509;\n }\n }\n IFC4X32.IfcArbitraryOpenProfileDef = IfcArbitraryOpenProfileDef;\n class IfcArbitraryProfileDefWithVoids extends IfcArbitraryClosedProfileDef {\n constructor(ProfileType, ProfileName, OuterCurve, InnerCurves) {\n super(ProfileType, ProfileName, OuterCurve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.OuterCurve = OuterCurve;\n this.InnerCurves = InnerCurves;\n this.type = 2705031697;\n }\n }\n IFC4X32.IfcArbitraryProfileDefWithVoids = IfcArbitraryProfileDefWithVoids;\n class IfcBlobTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, RasterFormat, RasterCode) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.RasterFormat = RasterFormat;\n this.RasterCode = RasterCode;\n this.type = 616511568;\n }\n }\n IFC4X32.IfcBlobTexture = IfcBlobTexture;\n class IfcCenterLineProfileDef extends IfcArbitraryOpenProfileDef {\n constructor(ProfileType, ProfileName, Curve, Thickness) {\n super(ProfileType, ProfileName, Curve);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Curve = Curve;\n this.Thickness = Thickness;\n this.type = 3150382593;\n }\n }\n IFC4X32.IfcCenterLineProfileDef = IfcCenterLineProfileDef;\n class IfcClassification extends IfcExternalInformation {\n constructor(Source, Edition, EditionDate, Name, Description, Specification, ReferenceTokens) {\n super();\n this.Source = Source;\n this.Edition = Edition;\n this.EditionDate = EditionDate;\n this.Name = Name;\n this.Description = Description;\n this.Specification = Specification;\n this.ReferenceTokens = ReferenceTokens;\n this.type = 747523909;\n }\n }\n IFC4X32.IfcClassification = IfcClassification;\n class IfcClassificationReference extends IfcExternalReference {\n constructor(Location, Identification, Name, ReferencedSource, Description, Sort) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.ReferencedSource = ReferencedSource;\n this.Description = Description;\n this.Sort = Sort;\n this.type = 647927063;\n }\n }\n IFC4X32.IfcClassificationReference = IfcClassificationReference;\n class IfcColourRgbList extends IfcPresentationItem {\n constructor(ColourList) {\n super();\n this.ColourList = ColourList;\n this.type = 3285139300;\n }\n }\n IFC4X32.IfcColourRgbList = IfcColourRgbList;\n class IfcColourSpecification extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3264961684;\n }\n }\n IFC4X32.IfcColourSpecification = IfcColourSpecification;\n class IfcCompositeProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Profiles, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Profiles = Profiles;\n this.Label = Label;\n this.type = 1485152156;\n }\n }\n IFC4X32.IfcCompositeProfileDef = IfcCompositeProfileDef;\n class IfcConnectedFaceSet extends IfcTopologicalRepresentationItem {\n constructor(CfsFaces) {\n super();\n this.CfsFaces = CfsFaces;\n this.type = 370225590;\n }\n }\n IFC4X32.IfcConnectedFaceSet = IfcConnectedFaceSet;\n class IfcConnectionCurveGeometry extends IfcConnectionGeometry {\n constructor(CurveOnRelatingElement, CurveOnRelatedElement) {\n super();\n this.CurveOnRelatingElement = CurveOnRelatingElement;\n this.CurveOnRelatedElement = CurveOnRelatedElement;\n this.type = 1981873012;\n }\n }\n IFC4X32.IfcConnectionCurveGeometry = IfcConnectionCurveGeometry;\n class IfcConnectionPointEccentricity extends IfcConnectionPointGeometry {\n constructor(PointOnRelatingElement, PointOnRelatedElement, EccentricityInX, EccentricityInY, EccentricityInZ) {\n super(PointOnRelatingElement, PointOnRelatedElement);\n this.PointOnRelatingElement = PointOnRelatingElement;\n this.PointOnRelatedElement = PointOnRelatedElement;\n this.EccentricityInX = EccentricityInX;\n this.EccentricityInY = EccentricityInY;\n this.EccentricityInZ = EccentricityInZ;\n this.type = 45288368;\n }\n }\n IFC4X32.IfcConnectionPointEccentricity = IfcConnectionPointEccentricity;\n class IfcContextDependentUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.type = 3050246964;\n }\n }\n IFC4X32.IfcContextDependentUnit = IfcContextDependentUnit;\n class IfcConversionBasedUnit extends IfcNamedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor) {\n super(Dimensions, UnitType);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.type = 2889183280;\n }\n }\n IFC4X32.IfcConversionBasedUnit = IfcConversionBasedUnit;\n class IfcConversionBasedUnitWithOffset extends IfcConversionBasedUnit {\n constructor(Dimensions, UnitType, Name, ConversionFactor, ConversionOffset) {\n super(Dimensions, UnitType, Name, ConversionFactor);\n this.Dimensions = Dimensions;\n this.UnitType = UnitType;\n this.Name = Name;\n this.ConversionFactor = ConversionFactor;\n this.ConversionOffset = ConversionOffset;\n this.type = 2713554722;\n }\n }\n IFC4X32.IfcConversionBasedUnitWithOffset = IfcConversionBasedUnitWithOffset;\n class IfcCurrencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMonetaryUnit, RelatedMonetaryUnit, ExchangeRate, RateDateTime, RateSource) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMonetaryUnit = RelatingMonetaryUnit;\n this.RelatedMonetaryUnit = RelatedMonetaryUnit;\n this.ExchangeRate = ExchangeRate;\n this.RateDateTime = RateDateTime;\n this.RateSource = RateSource;\n this.type = 539742890;\n }\n }\n IFC4X32.IfcCurrencyRelationship = IfcCurrencyRelationship;\n class IfcCurveStyle extends IfcPresentationStyle {\n constructor(Name, CurveFont, CurveWidth, CurveColour, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.CurveFont = CurveFont;\n this.CurveWidth = CurveWidth;\n this.CurveColour = CurveColour;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 3800577675;\n }\n }\n IFC4X32.IfcCurveStyle = IfcCurveStyle;\n class IfcCurveStyleFont extends IfcPresentationItem {\n constructor(Name, PatternList) {\n super();\n this.Name = Name;\n this.PatternList = PatternList;\n this.type = 1105321065;\n }\n }\n IFC4X32.IfcCurveStyleFont = IfcCurveStyleFont;\n class IfcCurveStyleFontAndScaling extends IfcPresentationItem {\n constructor(Name, CurveStyleFont, CurveFontScaling) {\n super();\n this.Name = Name;\n this.CurveStyleFont = CurveStyleFont;\n this.CurveFontScaling = CurveFontScaling;\n this.type = 2367409068;\n }\n }\n IFC4X32.IfcCurveStyleFontAndScaling = IfcCurveStyleFontAndScaling;\n class IfcCurveStyleFontPattern extends IfcPresentationItem {\n constructor(VisibleSegmentLength, InvisibleSegmentLength) {\n super();\n this.VisibleSegmentLength = VisibleSegmentLength;\n this.InvisibleSegmentLength = InvisibleSegmentLength;\n this.type = 3510044353;\n }\n }\n IFC4X32.IfcCurveStyleFontPattern = IfcCurveStyleFontPattern;\n class IfcDerivedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 3632507154;\n }\n }\n IFC4X32.IfcDerivedProfileDef = IfcDerivedProfileDef;\n class IfcDocumentInformation extends IfcExternalInformation {\n constructor(Identification, Name, Description, Location, Purpose, IntendedUse, Scope, Revision, DocumentOwner, Editors, CreationTime, LastRevisionTime, ElectronicFormat, ValidFrom, ValidUntil, Confidentiality, Status) {\n super();\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.Location = Location;\n this.Purpose = Purpose;\n this.IntendedUse = IntendedUse;\n this.Scope = Scope;\n this.Revision = Revision;\n this.DocumentOwner = DocumentOwner;\n this.Editors = Editors;\n this.CreationTime = CreationTime;\n this.LastRevisionTime = LastRevisionTime;\n this.ElectronicFormat = ElectronicFormat;\n this.ValidFrom = ValidFrom;\n this.ValidUntil = ValidUntil;\n this.Confidentiality = Confidentiality;\n this.Status = Status;\n this.type = 1154170062;\n }\n }\n IFC4X32.IfcDocumentInformation = IfcDocumentInformation;\n class IfcDocumentInformationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingDocument, RelatedDocuments, RelationshipType) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingDocument = RelatingDocument;\n this.RelatedDocuments = RelatedDocuments;\n this.RelationshipType = RelationshipType;\n this.type = 770865208;\n }\n }\n IFC4X32.IfcDocumentInformationRelationship = IfcDocumentInformationRelationship;\n class IfcDocumentReference extends IfcExternalReference {\n constructor(Location, Identification, Name, Description, ReferencedDocument) {\n super(Location, Identification, Name);\n this.Location = Location;\n this.Identification = Identification;\n this.Name = Name;\n this.Description = Description;\n this.ReferencedDocument = ReferencedDocument;\n this.type = 3732053477;\n }\n }\n IFC4X32.IfcDocumentReference = IfcDocumentReference;\n class IfcEdge extends IfcTopologicalRepresentationItem {\n constructor(EdgeStart, EdgeEnd) {\n super();\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.type = 3900360178;\n }\n }\n IFC4X32.IfcEdge = IfcEdge;\n class IfcEdgeCurve extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, EdgeGeometry, SameSense) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.EdgeGeometry = EdgeGeometry;\n this.SameSense = SameSense;\n this.type = 476780140;\n }\n }\n IFC4X32.IfcEdgeCurve = IfcEdgeCurve;\n class IfcEventTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ActualDate, EarlyDate, LateDate, ScheduleDate) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ActualDate = ActualDate;\n this.EarlyDate = EarlyDate;\n this.LateDate = LateDate;\n this.ScheduleDate = ScheduleDate;\n this.type = 211053100;\n }\n }\n IFC4X32.IfcEventTime = IfcEventTime;\n class IfcExtendedProperties extends IfcPropertyAbstraction {\n constructor(Name, Description, Properties2) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.type = 297599258;\n }\n }\n IFC4X32.IfcExtendedProperties = IfcExtendedProperties;\n class IfcExternalReferenceRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingReference, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingReference = RelatingReference;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1437805879;\n }\n }\n IFC4X32.IfcExternalReferenceRelationship = IfcExternalReferenceRelationship;\n class IfcFace extends IfcTopologicalRepresentationItem {\n constructor(Bounds) {\n super();\n this.Bounds = Bounds;\n this.type = 2556980723;\n }\n }\n IFC4X32.IfcFace = IfcFace;\n class IfcFaceBound extends IfcTopologicalRepresentationItem {\n constructor(Bound, Orientation) {\n super();\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 1809719519;\n }\n }\n IFC4X32.IfcFaceBound = IfcFaceBound;\n class IfcFaceOuterBound extends IfcFaceBound {\n constructor(Bound, Orientation) {\n super(Bound, Orientation);\n this.Bound = Bound;\n this.Orientation = Orientation;\n this.type = 803316827;\n }\n }\n IFC4X32.IfcFaceOuterBound = IfcFaceOuterBound;\n class IfcFaceSurface extends IfcFace {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3008276851;\n }\n }\n IFC4X32.IfcFaceSurface = IfcFaceSurface;\n class IfcFailureConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, TensionFailureX, TensionFailureY, TensionFailureZ, CompressionFailureX, CompressionFailureY, CompressionFailureZ) {\n super(Name);\n this.Name = Name;\n this.TensionFailureX = TensionFailureX;\n this.TensionFailureY = TensionFailureY;\n this.TensionFailureZ = TensionFailureZ;\n this.CompressionFailureX = CompressionFailureX;\n this.CompressionFailureY = CompressionFailureY;\n this.CompressionFailureZ = CompressionFailureZ;\n this.type = 4219587988;\n }\n }\n IFC4X32.IfcFailureConnectionCondition = IfcFailureConnectionCondition;\n class IfcFillAreaStyle extends IfcPresentationStyle {\n constructor(Name, FillStyles, ModelOrDraughting) {\n super(Name);\n this.Name = Name;\n this.FillStyles = FillStyles;\n this.ModelOrDraughting = ModelOrDraughting;\n this.type = 738692330;\n }\n }\n IFC4X32.IfcFillAreaStyle = IfcFillAreaStyle;\n class IfcGeometricRepresentationContext extends IfcRepresentationContext {\n constructor(ContextIdentifier, ContextType, CoordinateSpaceDimension, Precision, WorldCoordinateSystem, TrueNorth) {\n super(ContextIdentifier, ContextType);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.CoordinateSpaceDimension = CoordinateSpaceDimension;\n this.Precision = Precision;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.TrueNorth = TrueNorth;\n this.type = 3448662350;\n }\n }\n IFC4X32.IfcGeometricRepresentationContext = IfcGeometricRepresentationContext;\n class IfcGeometricRepresentationItem extends IfcRepresentationItem {\n constructor() {\n super();\n this.type = 2453401579;\n }\n }\n IFC4X32.IfcGeometricRepresentationItem = IfcGeometricRepresentationItem;\n class IfcGeometricRepresentationSubContext extends IfcGeometricRepresentationContext {\n constructor(ContextIdentifier, ContextType, WorldCoordinateSystem, ParentContext, TargetScale, TargetView, UserDefinedTargetView) {\n super(ContextIdentifier, ContextType, new IfcDimensionCount(0), null, WorldCoordinateSystem, null);\n this.ContextIdentifier = ContextIdentifier;\n this.ContextType = ContextType;\n this.WorldCoordinateSystem = WorldCoordinateSystem;\n this.ParentContext = ParentContext;\n this.TargetScale = TargetScale;\n this.TargetView = TargetView;\n this.UserDefinedTargetView = UserDefinedTargetView;\n this.type = 4142052618;\n }\n }\n IFC4X32.IfcGeometricRepresentationSubContext = IfcGeometricRepresentationSubContext;\n class IfcGeometricSet extends IfcGeometricRepresentationItem {\n constructor(Elements) {\n super();\n this.Elements = Elements;\n this.type = 3590301190;\n }\n }\n IFC4X32.IfcGeometricSet = IfcGeometricSet;\n class IfcGridPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, PlacementLocation, PlacementRefDirection) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.PlacementLocation = PlacementLocation;\n this.PlacementRefDirection = PlacementRefDirection;\n this.type = 178086475;\n }\n }\n IFC4X32.IfcGridPlacement = IfcGridPlacement;\n class IfcHalfSpaceSolid extends IfcGeometricRepresentationItem {\n constructor(BaseSurface, AgreementFlag) {\n super();\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.type = 812098782;\n }\n }\n IFC4X32.IfcHalfSpaceSolid = IfcHalfSpaceSolid;\n class IfcImageTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, URLReference) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.URLReference = URLReference;\n this.type = 3905492369;\n }\n }\n IFC4X32.IfcImageTexture = IfcImageTexture;\n class IfcIndexedColourMap extends IfcPresentationItem {\n constructor(MappedTo, Opacity, Colours, ColourIndex) {\n super();\n this.MappedTo = MappedTo;\n this.Opacity = Opacity;\n this.Colours = Colours;\n this.ColourIndex = ColourIndex;\n this.type = 3570813810;\n }\n }\n IFC4X32.IfcIndexedColourMap = IfcIndexedColourMap;\n class IfcIndexedTextureMap extends IfcTextureCoordinate {\n constructor(Maps, MappedTo, TexCoords) {\n super(Maps);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.type = 1437953363;\n }\n }\n IFC4X32.IfcIndexedTextureMap = IfcIndexedTextureMap;\n class IfcIndexedTriangleTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndex) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndex = TexCoordIndex;\n this.type = 2133299955;\n }\n }\n IFC4X32.IfcIndexedTriangleTextureMap = IfcIndexedTriangleTextureMap;\n class IfcIrregularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.Values = Values;\n this.type = 3741457305;\n }\n }\n IFC4X32.IfcIrregularTimeSeries = IfcIrregularTimeSeries;\n class IfcLagTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, LagValue, DurationType) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.LagValue = LagValue;\n this.DurationType = DurationType;\n this.type = 1585845231;\n }\n }\n IFC4X32.IfcLagTime = IfcLagTime;\n class IfcLightSource extends IfcGeometricRepresentationItem {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super();\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 1402838566;\n }\n }\n IFC4X32.IfcLightSource = IfcLightSource;\n class IfcLightSourceAmbient extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.type = 125510826;\n }\n }\n IFC4X32.IfcLightSourceAmbient = IfcLightSourceAmbient;\n class IfcLightSourceDirectional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Orientation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Orientation = Orientation;\n this.type = 2604431987;\n }\n }\n IFC4X32.IfcLightSourceDirectional = IfcLightSourceDirectional;\n class IfcLightSourceGoniometric extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, ColourAppearance, ColourTemperature, LuminousFlux, LightEmissionSource, LightDistributionDataSource) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.ColourAppearance = ColourAppearance;\n this.ColourTemperature = ColourTemperature;\n this.LuminousFlux = LuminousFlux;\n this.LightEmissionSource = LightEmissionSource;\n this.LightDistributionDataSource = LightDistributionDataSource;\n this.type = 4266656042;\n }\n }\n IFC4X32.IfcLightSourceGoniometric = IfcLightSourceGoniometric;\n class IfcLightSourcePositional extends IfcLightSource {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation) {\n super(Name, LightColour, AmbientIntensity, Intensity);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.type = 1520743889;\n }\n }\n IFC4X32.IfcLightSourcePositional = IfcLightSourcePositional;\n class IfcLightSourceSpot extends IfcLightSourcePositional {\n constructor(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation, Orientation, ConcentrationExponent, SpreadAngle, BeamWidthAngle) {\n super(Name, LightColour, AmbientIntensity, Intensity, Position, Radius, ConstantAttenuation, DistanceAttenuation, QuadricAttenuation);\n this.Name = Name;\n this.LightColour = LightColour;\n this.AmbientIntensity = AmbientIntensity;\n this.Intensity = Intensity;\n this.Position = Position;\n this.Radius = Radius;\n this.ConstantAttenuation = ConstantAttenuation;\n this.DistanceAttenuation = DistanceAttenuation;\n this.QuadricAttenuation = QuadricAttenuation;\n this.Orientation = Orientation;\n this.ConcentrationExponent = ConcentrationExponent;\n this.SpreadAngle = SpreadAngle;\n this.BeamWidthAngle = BeamWidthAngle;\n this.type = 3422422726;\n }\n }\n IFC4X32.IfcLightSourceSpot = IfcLightSourceSpot;\n class IfcLinearPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement, CartesianPosition) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.CartesianPosition = CartesianPosition;\n this.type = 388784114;\n }\n }\n IFC4X32.IfcLinearPlacement = IfcLinearPlacement;\n class IfcLocalPlacement extends IfcObjectPlacement {\n constructor(PlacementRelTo, RelativePlacement) {\n super(PlacementRelTo);\n this.PlacementRelTo = PlacementRelTo;\n this.RelativePlacement = RelativePlacement;\n this.type = 2624227202;\n }\n }\n IFC4X32.IfcLocalPlacement = IfcLocalPlacement;\n class IfcLoop extends IfcTopologicalRepresentationItem {\n constructor() {\n super();\n this.type = 1008929658;\n }\n }\n IFC4X32.IfcLoop = IfcLoop;\n class IfcMappedItem extends IfcRepresentationItem {\n constructor(MappingSource, MappingTarget) {\n super();\n this.MappingSource = MappingSource;\n this.MappingTarget = MappingTarget;\n this.type = 2347385850;\n }\n }\n IFC4X32.IfcMappedItem = IfcMappedItem;\n class IfcMaterial extends IfcMaterialDefinition {\n constructor(Name, Description, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Category = Category;\n this.type = 1838606355;\n }\n }\n IFC4X32.IfcMaterial = IfcMaterial;\n class IfcMaterialConstituent extends IfcMaterialDefinition {\n constructor(Name, Description, Material, Fraction, Category) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.Material = Material;\n this.Fraction = Fraction;\n this.Category = Category;\n this.type = 3708119e3;\n }\n }\n IFC4X32.IfcMaterialConstituent = IfcMaterialConstituent;\n class IfcMaterialConstituentSet extends IfcMaterialDefinition {\n constructor(Name, Description, MaterialConstituents) {\n super();\n this.Name = Name;\n this.Description = Description;\n this.MaterialConstituents = MaterialConstituents;\n this.type = 2852063980;\n }\n }\n IFC4X32.IfcMaterialConstituentSet = IfcMaterialConstituentSet;\n class IfcMaterialDefinitionRepresentation extends IfcProductRepresentation {\n constructor(Name, Description, Representations, RepresentedMaterial) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.RepresentedMaterial = RepresentedMaterial;\n this.type = 2022407955;\n }\n }\n IFC4X32.IfcMaterialDefinitionRepresentation = IfcMaterialDefinitionRepresentation;\n class IfcMaterialLayerSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForLayerSet, LayerSetDirection, DirectionSense, OffsetFromReferenceLine, ReferenceExtent) {\n super();\n this.ForLayerSet = ForLayerSet;\n this.LayerSetDirection = LayerSetDirection;\n this.DirectionSense = DirectionSense;\n this.OffsetFromReferenceLine = OffsetFromReferenceLine;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 1303795690;\n }\n }\n IFC4X32.IfcMaterialLayerSetUsage = IfcMaterialLayerSetUsage;\n class IfcMaterialProfileSetUsage extends IfcMaterialUsageDefinition {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent) {\n super();\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.type = 3079605661;\n }\n }\n IFC4X32.IfcMaterialProfileSetUsage = IfcMaterialProfileSetUsage;\n class IfcMaterialProfileSetUsageTapering extends IfcMaterialProfileSetUsage {\n constructor(ForProfileSet, CardinalPoint, ReferenceExtent, ForProfileEndSet, CardinalEndPoint) {\n super(ForProfileSet, CardinalPoint, ReferenceExtent);\n this.ForProfileSet = ForProfileSet;\n this.CardinalPoint = CardinalPoint;\n this.ReferenceExtent = ReferenceExtent;\n this.ForProfileEndSet = ForProfileEndSet;\n this.CardinalEndPoint = CardinalEndPoint;\n this.type = 3404854881;\n }\n }\n IFC4X32.IfcMaterialProfileSetUsageTapering = IfcMaterialProfileSetUsageTapering;\n class IfcMaterialProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, Material) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.Material = Material;\n this.type = 3265635763;\n }\n }\n IFC4X32.IfcMaterialProperties = IfcMaterialProperties;\n class IfcMaterialRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingMaterial, RelatedMaterials, MaterialExpression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingMaterial = RelatingMaterial;\n this.RelatedMaterials = RelatedMaterials;\n this.MaterialExpression = MaterialExpression;\n this.type = 853536259;\n }\n }\n IFC4X32.IfcMaterialRelationship = IfcMaterialRelationship;\n class IfcMirroredProfileDef extends IfcDerivedProfileDef {\n constructor(ProfileType, ProfileName, ParentProfile, Operator, Label) {\n super(ProfileType, ProfileName, ParentProfile, Operator, Label);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.ParentProfile = ParentProfile;\n this.Operator = Operator;\n this.Label = Label;\n this.type = 2998442950;\n }\n }\n IFC4X32.IfcMirroredProfileDef = IfcMirroredProfileDef;\n class IfcObjectDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 219451334;\n }\n }\n IFC4X32.IfcObjectDefinition = IfcObjectDefinition;\n class IfcOpenCrossProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, HorizontalWidths, Widths, Slopes, Tags, OffsetPoint) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.HorizontalWidths = HorizontalWidths;\n this.Widths = Widths;\n this.Slopes = Slopes;\n this.Tags = Tags;\n this.OffsetPoint = OffsetPoint;\n this.type = 182550632;\n }\n }\n IFC4X32.IfcOpenCrossProfileDef = IfcOpenCrossProfileDef;\n class IfcOpenShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2665983363;\n }\n }\n IFC4X32.IfcOpenShell = IfcOpenShell;\n class IfcOrganizationRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingOrganization, RelatedOrganizations) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingOrganization = RelatingOrganization;\n this.RelatedOrganizations = RelatedOrganizations;\n this.type = 1411181986;\n }\n }\n IFC4X32.IfcOrganizationRelationship = IfcOrganizationRelationship;\n class IfcOrientedEdge extends IfcEdge {\n constructor(EdgeStart, EdgeElement, Orientation) {\n super(EdgeStart, new Handle(0));\n this.EdgeStart = EdgeStart;\n this.EdgeElement = EdgeElement;\n this.Orientation = Orientation;\n this.type = 1029017970;\n }\n }\n IFC4X32.IfcOrientedEdge = IfcOrientedEdge;\n class IfcParameterizedProfileDef extends IfcProfileDef {\n constructor(ProfileType, ProfileName, Position) {\n super(ProfileType, ProfileName);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.type = 2529465313;\n }\n }\n IFC4X32.IfcParameterizedProfileDef = IfcParameterizedProfileDef;\n class IfcPath extends IfcTopologicalRepresentationItem {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 2519244187;\n }\n }\n IFC4X32.IfcPath = IfcPath;\n class IfcPhysicalComplexQuantity extends IfcPhysicalQuantity {\n constructor(Name, Description, HasQuantities, Discrimination, Quality, Usage) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.HasQuantities = HasQuantities;\n this.Discrimination = Discrimination;\n this.Quality = Quality;\n this.Usage = Usage;\n this.type = 3021840470;\n }\n }\n IFC4X32.IfcPhysicalComplexQuantity = IfcPhysicalComplexQuantity;\n class IfcPixelTexture extends IfcSurfaceTexture {\n constructor(RepeatS, RepeatT, Mode, TextureTransform, Parameter, Width, Height, ColourComponents, Pixel) {\n super(RepeatS, RepeatT, Mode, TextureTransform, Parameter);\n this.RepeatS = RepeatS;\n this.RepeatT = RepeatT;\n this.Mode = Mode;\n this.TextureTransform = TextureTransform;\n this.Parameter = Parameter;\n this.Width = Width;\n this.Height = Height;\n this.ColourComponents = ColourComponents;\n this.Pixel = Pixel;\n this.type = 597895409;\n }\n }\n IFC4X32.IfcPixelTexture = IfcPixelTexture;\n class IfcPlacement extends IfcGeometricRepresentationItem {\n constructor(Location) {\n super();\n this.Location = Location;\n this.type = 2004835150;\n }\n }\n IFC4X32.IfcPlacement = IfcPlacement;\n class IfcPlanarExtent extends IfcGeometricRepresentationItem {\n constructor(SizeInX, SizeInY) {\n super();\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.type = 1663979128;\n }\n }\n IFC4X32.IfcPlanarExtent = IfcPlanarExtent;\n class IfcPoint extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2067069095;\n }\n }\n IFC4X32.IfcPoint = IfcPoint;\n class IfcPointByDistanceExpression extends IfcPoint {\n constructor(DistanceAlong, OffsetLateral, OffsetVertical, OffsetLongitudinal, BasisCurve) {\n super();\n this.DistanceAlong = DistanceAlong;\n this.OffsetLateral = OffsetLateral;\n this.OffsetVertical = OffsetVertical;\n this.OffsetLongitudinal = OffsetLongitudinal;\n this.BasisCurve = BasisCurve;\n this.type = 2165702409;\n }\n }\n IFC4X32.IfcPointByDistanceExpression = IfcPointByDistanceExpression;\n class IfcPointOnCurve extends IfcPoint {\n constructor(BasisCurve, PointParameter) {\n super();\n this.BasisCurve = BasisCurve;\n this.PointParameter = PointParameter;\n this.type = 4022376103;\n }\n }\n IFC4X32.IfcPointOnCurve = IfcPointOnCurve;\n class IfcPointOnSurface extends IfcPoint {\n constructor(BasisSurface, PointParameterU, PointParameterV) {\n super();\n this.BasisSurface = BasisSurface;\n this.PointParameterU = PointParameterU;\n this.PointParameterV = PointParameterV;\n this.type = 1423911732;\n }\n }\n IFC4X32.IfcPointOnSurface = IfcPointOnSurface;\n class IfcPolyLoop extends IfcLoop {\n constructor(Polygon) {\n super();\n this.Polygon = Polygon;\n this.type = 2924175390;\n }\n }\n IFC4X32.IfcPolyLoop = IfcPolyLoop;\n class IfcPolygonalBoundedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Position, PolygonalBoundary) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Position = Position;\n this.PolygonalBoundary = PolygonalBoundary;\n this.type = 2775532180;\n }\n }\n IFC4X32.IfcPolygonalBoundedHalfSpace = IfcPolygonalBoundedHalfSpace;\n class IfcPreDefinedItem extends IfcPresentationItem {\n constructor(Name) {\n super();\n this.Name = Name;\n this.type = 3727388367;\n }\n }\n IFC4X32.IfcPreDefinedItem = IfcPreDefinedItem;\n class IfcPreDefinedProperties extends IfcPropertyAbstraction {\n constructor() {\n super();\n this.type = 3778827333;\n }\n }\n IFC4X32.IfcPreDefinedProperties = IfcPreDefinedProperties;\n class IfcPreDefinedTextFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 1775413392;\n }\n }\n IFC4X32.IfcPreDefinedTextFont = IfcPreDefinedTextFont;\n class IfcProductDefinitionShape extends IfcProductRepresentation {\n constructor(Name, Description, Representations) {\n super(Name, Description, Representations);\n this.Name = Name;\n this.Description = Description;\n this.Representations = Representations;\n this.type = 673634403;\n }\n }\n IFC4X32.IfcProductDefinitionShape = IfcProductDefinitionShape;\n class IfcProfileProperties extends IfcExtendedProperties {\n constructor(Name, Description, Properties2, ProfileDefinition) {\n super(Name, Description, Properties2);\n this.Name = Name;\n this.Description = Description;\n this.Properties = Properties2;\n this.ProfileDefinition = ProfileDefinition;\n this.type = 2802850158;\n }\n }\n IFC4X32.IfcProfileProperties = IfcProfileProperties;\n class IfcProperty extends IfcPropertyAbstraction {\n constructor(Name, Specification) {\n super();\n this.Name = Name;\n this.Specification = Specification;\n this.type = 2598011224;\n }\n }\n IFC4X32.IfcProperty = IfcProperty;\n class IfcPropertyDefinition extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1680319473;\n }\n }\n IFC4X32.IfcPropertyDefinition = IfcPropertyDefinition;\n class IfcPropertyDependencyRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, DependingProperty, DependantProperty, Expression) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.DependingProperty = DependingProperty;\n this.DependantProperty = DependantProperty;\n this.Expression = Expression;\n this.type = 148025276;\n }\n }\n IFC4X32.IfcPropertyDependencyRelationship = IfcPropertyDependencyRelationship;\n class IfcPropertySetDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3357820518;\n }\n }\n IFC4X32.IfcPropertySetDefinition = IfcPropertySetDefinition;\n class IfcPropertyTemplateDefinition extends IfcPropertyDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 1482703590;\n }\n }\n IFC4X32.IfcPropertyTemplateDefinition = IfcPropertyTemplateDefinition;\n class IfcQuantitySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2090586900;\n }\n }\n IFC4X32.IfcQuantitySet = IfcQuantitySet;\n class IfcRectangleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.type = 3615266464;\n }\n }\n IFC4X32.IfcRectangleProfileDef = IfcRectangleProfileDef;\n class IfcRegularTimeSeries extends IfcTimeSeries {\n constructor(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit, TimeStep, Values) {\n super(Name, Description, StartTime, EndTime, TimeSeriesDataType, DataOrigin, UserDefinedDataOrigin, Unit);\n this.Name = Name;\n this.Description = Description;\n this.StartTime = StartTime;\n this.EndTime = EndTime;\n this.TimeSeriesDataType = TimeSeriesDataType;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.Unit = Unit;\n this.TimeStep = TimeStep;\n this.Values = Values;\n this.type = 3413951693;\n }\n }\n IFC4X32.IfcRegularTimeSeries = IfcRegularTimeSeries;\n class IfcReinforcementBarProperties extends IfcPreDefinedProperties {\n constructor(TotalCrossSectionArea, SteelGrade, BarSurface, EffectiveDepth, NominalBarDiameter, BarCount) {\n super();\n this.TotalCrossSectionArea = TotalCrossSectionArea;\n this.SteelGrade = SteelGrade;\n this.BarSurface = BarSurface;\n this.EffectiveDepth = EffectiveDepth;\n this.NominalBarDiameter = NominalBarDiameter;\n this.BarCount = BarCount;\n this.type = 1580146022;\n }\n }\n IFC4X32.IfcReinforcementBarProperties = IfcReinforcementBarProperties;\n class IfcRelationship extends IfcRoot {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 478536968;\n }\n }\n IFC4X32.IfcRelationship = IfcRelationship;\n class IfcResourceApprovalRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatedResourceObjects, RelatingApproval) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 2943643501;\n }\n }\n IFC4X32.IfcResourceApprovalRelationship = IfcResourceApprovalRelationship;\n class IfcResourceConstraintRelationship extends IfcResourceLevelRelationship {\n constructor(Name, Description, RelatingConstraint, RelatedResourceObjects) {\n super(Name, Description);\n this.Name = Name;\n this.Description = Description;\n this.RelatingConstraint = RelatingConstraint;\n this.RelatedResourceObjects = RelatedResourceObjects;\n this.type = 1608871552;\n }\n }\n IFC4X32.IfcResourceConstraintRelationship = IfcResourceConstraintRelationship;\n class IfcResourceTime extends IfcSchedulingTime {\n constructor(Name, DataOrigin, UserDefinedDataOrigin, ScheduleWork, ScheduleUsage, ScheduleStart, ScheduleFinish, ScheduleContour, LevelingDelay, IsOverAllocated, StatusTime, ActualWork, ActualUsage, ActualStart, ActualFinish, RemainingWork, RemainingUsage, Completion) {\n super(Name, DataOrigin, UserDefinedDataOrigin);\n this.Name = Name;\n this.DataOrigin = DataOrigin;\n this.UserDefinedDataOrigin = UserDefinedDataOrigin;\n this.ScheduleWork = ScheduleWork;\n this.ScheduleUsage = ScheduleUsage;\n this.ScheduleStart = ScheduleStart;\n this.ScheduleFinish = ScheduleFinish;\n this.ScheduleContour = ScheduleContour;\n this.LevelingDelay = LevelingDelay;\n this.IsOverAllocated = IsOverAllocated;\n this.StatusTime = StatusTime;\n this.ActualWork = ActualWork;\n this.ActualUsage = ActualUsage;\n this.ActualStart = ActualStart;\n this.ActualFinish = ActualFinish;\n this.RemainingWork = RemainingWork;\n this.RemainingUsage = RemainingUsage;\n this.Completion = Completion;\n this.type = 1042787934;\n }\n }\n IFC4X32.IfcResourceTime = IfcResourceTime;\n class IfcRoundedRectangleProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, RoundingRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.RoundingRadius = RoundingRadius;\n this.type = 2778083089;\n }\n }\n IFC4X32.IfcRoundedRectangleProfileDef = IfcRoundedRectangleProfileDef;\n class IfcSectionProperties extends IfcPreDefinedProperties {\n constructor(SectionType, StartProfile, EndProfile) {\n super();\n this.SectionType = SectionType;\n this.StartProfile = StartProfile;\n this.EndProfile = EndProfile;\n this.type = 2042790032;\n }\n }\n IFC4X32.IfcSectionProperties = IfcSectionProperties;\n class IfcSectionReinforcementProperties extends IfcPreDefinedProperties {\n constructor(LongitudinalStartPosition, LongitudinalEndPosition, TransversePosition, ReinforcementRole, SectionDefinition, CrossSectionReinforcementDefinitions) {\n super();\n this.LongitudinalStartPosition = LongitudinalStartPosition;\n this.LongitudinalEndPosition = LongitudinalEndPosition;\n this.TransversePosition = TransversePosition;\n this.ReinforcementRole = ReinforcementRole;\n this.SectionDefinition = SectionDefinition;\n this.CrossSectionReinforcementDefinitions = CrossSectionReinforcementDefinitions;\n this.type = 4165799628;\n }\n }\n IFC4X32.IfcSectionReinforcementProperties = IfcSectionReinforcementProperties;\n class IfcSectionedSpine extends IfcGeometricRepresentationItem {\n constructor(SpineCurve, CrossSections, CrossSectionPositions) {\n super();\n this.SpineCurve = SpineCurve;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1509187699;\n }\n }\n IFC4X32.IfcSectionedSpine = IfcSectionedSpine;\n class IfcSegment extends IfcGeometricRepresentationItem {\n constructor(Transition) {\n super();\n this.Transition = Transition;\n this.type = 823603102;\n }\n }\n IFC4X32.IfcSegment = IfcSegment;\n class IfcShellBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(SbsmBoundary) {\n super();\n this.SbsmBoundary = SbsmBoundary;\n this.type = 4124623270;\n }\n }\n IFC4X32.IfcShellBasedSurfaceModel = IfcShellBasedSurfaceModel;\n class IfcSimpleProperty extends IfcProperty {\n constructor(Name, Specification) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.type = 3692461612;\n }\n }\n IFC4X32.IfcSimpleProperty = IfcSimpleProperty;\n class IfcSlippageConnectionCondition extends IfcStructuralConnectionCondition {\n constructor(Name, SlippageX, SlippageY, SlippageZ) {\n super(Name);\n this.Name = Name;\n this.SlippageX = SlippageX;\n this.SlippageY = SlippageY;\n this.SlippageZ = SlippageZ;\n this.type = 2609359061;\n }\n }\n IFC4X32.IfcSlippageConnectionCondition = IfcSlippageConnectionCondition;\n class IfcSolidModel extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 723233188;\n }\n }\n IFC4X32.IfcSolidModel = IfcSolidModel;\n class IfcStructuralLoadLinearForce extends IfcStructuralLoadStatic {\n constructor(Name, LinearForceX, LinearForceY, LinearForceZ, LinearMomentX, LinearMomentY, LinearMomentZ) {\n super(Name);\n this.Name = Name;\n this.LinearForceX = LinearForceX;\n this.LinearForceY = LinearForceY;\n this.LinearForceZ = LinearForceZ;\n this.LinearMomentX = LinearMomentX;\n this.LinearMomentY = LinearMomentY;\n this.LinearMomentZ = LinearMomentZ;\n this.type = 1595516126;\n }\n }\n IFC4X32.IfcStructuralLoadLinearForce = IfcStructuralLoadLinearForce;\n class IfcStructuralLoadPlanarForce extends IfcStructuralLoadStatic {\n constructor(Name, PlanarForceX, PlanarForceY, PlanarForceZ) {\n super(Name);\n this.Name = Name;\n this.PlanarForceX = PlanarForceX;\n this.PlanarForceY = PlanarForceY;\n this.PlanarForceZ = PlanarForceZ;\n this.type = 2668620305;\n }\n }\n IFC4X32.IfcStructuralLoadPlanarForce = IfcStructuralLoadPlanarForce;\n class IfcStructuralLoadSingleDisplacement extends IfcStructuralLoadStatic {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ) {\n super(Name);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.type = 2473145415;\n }\n }\n IFC4X32.IfcStructuralLoadSingleDisplacement = IfcStructuralLoadSingleDisplacement;\n class IfcStructuralLoadSingleDisplacementDistortion extends IfcStructuralLoadSingleDisplacement {\n constructor(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ, Distortion) {\n super(Name, DisplacementX, DisplacementY, DisplacementZ, RotationalDisplacementRX, RotationalDisplacementRY, RotationalDisplacementRZ);\n this.Name = Name;\n this.DisplacementX = DisplacementX;\n this.DisplacementY = DisplacementY;\n this.DisplacementZ = DisplacementZ;\n this.RotationalDisplacementRX = RotationalDisplacementRX;\n this.RotationalDisplacementRY = RotationalDisplacementRY;\n this.RotationalDisplacementRZ = RotationalDisplacementRZ;\n this.Distortion = Distortion;\n this.type = 1973038258;\n }\n }\n IFC4X32.IfcStructuralLoadSingleDisplacementDistortion = IfcStructuralLoadSingleDisplacementDistortion;\n class IfcStructuralLoadSingleForce extends IfcStructuralLoadStatic {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ) {\n super(Name);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.type = 1597423693;\n }\n }\n IFC4X32.IfcStructuralLoadSingleForce = IfcStructuralLoadSingleForce;\n class IfcStructuralLoadSingleForceWarping extends IfcStructuralLoadSingleForce {\n constructor(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ, WarpingMoment) {\n super(Name, ForceX, ForceY, ForceZ, MomentX, MomentY, MomentZ);\n this.Name = Name;\n this.ForceX = ForceX;\n this.ForceY = ForceY;\n this.ForceZ = ForceZ;\n this.MomentX = MomentX;\n this.MomentY = MomentY;\n this.MomentZ = MomentZ;\n this.WarpingMoment = WarpingMoment;\n this.type = 1190533807;\n }\n }\n IFC4X32.IfcStructuralLoadSingleForceWarping = IfcStructuralLoadSingleForceWarping;\n class IfcSubedge extends IfcEdge {\n constructor(EdgeStart, EdgeEnd, ParentEdge) {\n super(EdgeStart, EdgeEnd);\n this.EdgeStart = EdgeStart;\n this.EdgeEnd = EdgeEnd;\n this.ParentEdge = ParentEdge;\n this.type = 2233826070;\n }\n }\n IFC4X32.IfcSubedge = IfcSubedge;\n class IfcSurface extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2513912981;\n }\n }\n IFC4X32.IfcSurface = IfcSurface;\n class IfcSurfaceStyleRendering extends IfcSurfaceStyleShading {\n constructor(SurfaceColour, Transparency, DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour, SpecularColour, SpecularHighlight, ReflectanceMethod) {\n super(SurfaceColour, Transparency);\n this.SurfaceColour = SurfaceColour;\n this.Transparency = Transparency;\n this.DiffuseColour = DiffuseColour;\n this.TransmissionColour = TransmissionColour;\n this.DiffuseTransmissionColour = DiffuseTransmissionColour;\n this.ReflectionColour = ReflectionColour;\n this.SpecularColour = SpecularColour;\n this.SpecularHighlight = SpecularHighlight;\n this.ReflectanceMethod = ReflectanceMethod;\n this.type = 1878645084;\n }\n }\n IFC4X32.IfcSurfaceStyleRendering = IfcSurfaceStyleRendering;\n class IfcSweptAreaSolid extends IfcSolidModel {\n constructor(SweptArea, Position) {\n super();\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.type = 2247615214;\n }\n }\n IFC4X32.IfcSweptAreaSolid = IfcSweptAreaSolid;\n class IfcSweptDiskSolid extends IfcSolidModel {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam) {\n super();\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 1260650574;\n }\n }\n IFC4X32.IfcSweptDiskSolid = IfcSweptDiskSolid;\n class IfcSweptDiskSolidPolygonal extends IfcSweptDiskSolid {\n constructor(Directrix, Radius, InnerRadius, StartParam, EndParam, FilletRadius) {\n super(Directrix, Radius, InnerRadius, StartParam, EndParam);\n this.Directrix = Directrix;\n this.Radius = Radius;\n this.InnerRadius = InnerRadius;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FilletRadius = FilletRadius;\n this.type = 1096409881;\n }\n }\n IFC4X32.IfcSweptDiskSolidPolygonal = IfcSweptDiskSolidPolygonal;\n class IfcSweptSurface extends IfcSurface {\n constructor(SweptCurve, Position) {\n super();\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.type = 230924584;\n }\n }\n IFC4X32.IfcSweptSurface = IfcSweptSurface;\n class IfcTShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, WebEdgeRadius, WebSlope, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.WebEdgeRadius = WebEdgeRadius;\n this.WebSlope = WebSlope;\n this.FlangeSlope = FlangeSlope;\n this.type = 3071757647;\n }\n }\n IFC4X32.IfcTShapeProfileDef = IfcTShapeProfileDef;\n class IfcTessellatedItem extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 901063453;\n }\n }\n IFC4X32.IfcTessellatedItem = IfcTessellatedItem;\n class IfcTextLiteral extends IfcGeometricRepresentationItem {\n constructor(Literal, Placement, Path) {\n super();\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.type = 4282788508;\n }\n }\n IFC4X32.IfcTextLiteral = IfcTextLiteral;\n class IfcTextLiteralWithExtent extends IfcTextLiteral {\n constructor(Literal, Placement, Path, Extent, BoxAlignment) {\n super(Literal, Placement, Path);\n this.Literal = Literal;\n this.Placement = Placement;\n this.Path = Path;\n this.Extent = Extent;\n this.BoxAlignment = BoxAlignment;\n this.type = 3124975700;\n }\n }\n IFC4X32.IfcTextLiteralWithExtent = IfcTextLiteralWithExtent;\n class IfcTextStyleFontModel extends IfcPreDefinedTextFont {\n constructor(Name, FontFamily, FontStyle, FontVariant, FontWeight, FontSize) {\n super(Name);\n this.Name = Name;\n this.FontFamily = FontFamily;\n this.FontStyle = FontStyle;\n this.FontVariant = FontVariant;\n this.FontWeight = FontWeight;\n this.FontSize = FontSize;\n this.type = 1983826977;\n }\n }\n IFC4X32.IfcTextStyleFontModel = IfcTextStyleFontModel;\n class IfcTrapeziumProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomXDim, TopXDim, YDim, TopXOffset) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomXDim = BottomXDim;\n this.TopXDim = TopXDim;\n this.YDim = YDim;\n this.TopXOffset = TopXOffset;\n this.type = 2715220739;\n }\n }\n IFC4X32.IfcTrapeziumProfileDef = IfcTrapeziumProfileDef;\n class IfcTypeObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.type = 1628702193;\n }\n }\n IFC4X32.IfcTypeObject = IfcTypeObject;\n class IfcTypeProcess extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.type = 3736923433;\n }\n }\n IFC4X32.IfcTypeProcess = IfcTypeProcess;\n class IfcTypeProduct extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.type = 2347495698;\n }\n }\n IFC4X32.IfcTypeProduct = IfcTypeProduct;\n class IfcTypeResource extends IfcTypeObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.type = 3698973494;\n }\n }\n IFC4X32.IfcTypeResource = IfcTypeResource;\n class IfcUShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 427810014;\n }\n }\n IFC4X32.IfcUShapeProfileDef = IfcUShapeProfileDef;\n class IfcVector extends IfcGeometricRepresentationItem {\n constructor(Orientation, Magnitude) {\n super();\n this.Orientation = Orientation;\n this.Magnitude = Magnitude;\n this.type = 1417489154;\n }\n }\n IFC4X32.IfcVector = IfcVector;\n class IfcVertexLoop extends IfcLoop {\n constructor(LoopVertex) {\n super();\n this.LoopVertex = LoopVertex;\n this.type = 2759199220;\n }\n }\n IFC4X32.IfcVertexLoop = IfcVertexLoop;\n class IfcZShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, FlangeWidth, WebThickness, FlangeThickness, FilletRadius, EdgeRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.FlangeWidth = FlangeWidth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.type = 2543172580;\n }\n }\n IFC4X32.IfcZShapeProfileDef = IfcZShapeProfileDef;\n class IfcAdvancedFace extends IfcFaceSurface {\n constructor(Bounds, FaceSurface, SameSense) {\n super(Bounds, FaceSurface, SameSense);\n this.Bounds = Bounds;\n this.FaceSurface = FaceSurface;\n this.SameSense = SameSense;\n this.type = 3406155212;\n }\n }\n IFC4X32.IfcAdvancedFace = IfcAdvancedFace;\n class IfcAnnotationFillArea extends IfcGeometricRepresentationItem {\n constructor(OuterBoundary, InnerBoundaries) {\n super();\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 669184980;\n }\n }\n IFC4X32.IfcAnnotationFillArea = IfcAnnotationFillArea;\n class IfcAsymmetricIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, BottomFlangeWidth, OverallDepth, WebThickness, BottomFlangeThickness, BottomFlangeFilletRadius, TopFlangeWidth, TopFlangeThickness, TopFlangeFilletRadius, BottomFlangeEdgeRadius, BottomFlangeSlope, TopFlangeEdgeRadius, TopFlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.BottomFlangeWidth = BottomFlangeWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.BottomFlangeThickness = BottomFlangeThickness;\n this.BottomFlangeFilletRadius = BottomFlangeFilletRadius;\n this.TopFlangeWidth = TopFlangeWidth;\n this.TopFlangeThickness = TopFlangeThickness;\n this.TopFlangeFilletRadius = TopFlangeFilletRadius;\n this.BottomFlangeEdgeRadius = BottomFlangeEdgeRadius;\n this.BottomFlangeSlope = BottomFlangeSlope;\n this.TopFlangeEdgeRadius = TopFlangeEdgeRadius;\n this.TopFlangeSlope = TopFlangeSlope;\n this.type = 3207858831;\n }\n }\n IFC4X32.IfcAsymmetricIShapeProfileDef = IfcAsymmetricIShapeProfileDef;\n class IfcAxis1Placement extends IfcPlacement {\n constructor(Location, Axis) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.type = 4261334040;\n }\n }\n IFC4X32.IfcAxis1Placement = IfcAxis1Placement;\n class IfcAxis2Placement2D extends IfcPlacement {\n constructor(Location, RefDirection) {\n super(Location);\n this.Location = Location;\n this.RefDirection = RefDirection;\n this.type = 3125803723;\n }\n }\n IFC4X32.IfcAxis2Placement2D = IfcAxis2Placement2D;\n class IfcAxis2Placement3D extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 2740243338;\n }\n }\n IFC4X32.IfcAxis2Placement3D = IfcAxis2Placement3D;\n class IfcAxis2PlacementLinear extends IfcPlacement {\n constructor(Location, Axis, RefDirection) {\n super(Location);\n this.Location = Location;\n this.Axis = Axis;\n this.RefDirection = RefDirection;\n this.type = 3425423356;\n }\n }\n IFC4X32.IfcAxis2PlacementLinear = IfcAxis2PlacementLinear;\n class IfcBooleanResult extends IfcGeometricRepresentationItem {\n constructor(Operator, FirstOperand, SecondOperand) {\n super();\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 2736907675;\n }\n }\n IFC4X32.IfcBooleanResult = IfcBooleanResult;\n class IfcBoundedSurface extends IfcSurface {\n constructor() {\n super();\n this.type = 4182860854;\n }\n }\n IFC4X32.IfcBoundedSurface = IfcBoundedSurface;\n class IfcBoundingBox extends IfcGeometricRepresentationItem {\n constructor(Corner, XDim, YDim, ZDim) {\n super();\n this.Corner = Corner;\n this.XDim = XDim;\n this.YDim = YDim;\n this.ZDim = ZDim;\n this.type = 2581212453;\n }\n }\n IFC4X32.IfcBoundingBox = IfcBoundingBox;\n class IfcBoxedHalfSpace extends IfcHalfSpaceSolid {\n constructor(BaseSurface, AgreementFlag, Enclosure) {\n super(BaseSurface, AgreementFlag);\n this.BaseSurface = BaseSurface;\n this.AgreementFlag = AgreementFlag;\n this.Enclosure = Enclosure;\n this.type = 2713105998;\n }\n }\n IFC4X32.IfcBoxedHalfSpace = IfcBoxedHalfSpace;\n class IfcCShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, WallThickness, Girth, InternalFilletRadius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.WallThickness = WallThickness;\n this.Girth = Girth;\n this.InternalFilletRadius = InternalFilletRadius;\n this.type = 2898889636;\n }\n }\n IFC4X32.IfcCShapeProfileDef = IfcCShapeProfileDef;\n class IfcCartesianPoint extends IfcPoint {\n constructor(Coordinates) {\n super();\n this.Coordinates = Coordinates;\n this.type = 1123145078;\n }\n }\n IFC4X32.IfcCartesianPoint = IfcCartesianPoint;\n class IfcCartesianPointList extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 574549367;\n }\n }\n IFC4X32.IfcCartesianPointList = IfcCartesianPointList;\n class IfcCartesianPointList2D extends IfcCartesianPointList {\n constructor(CoordList, TagList) {\n super();\n this.CoordList = CoordList;\n this.TagList = TagList;\n this.type = 1675464909;\n }\n }\n IFC4X32.IfcCartesianPointList2D = IfcCartesianPointList2D;\n class IfcCartesianPointList3D extends IfcCartesianPointList {\n constructor(CoordList, TagList) {\n super();\n this.CoordList = CoordList;\n this.TagList = TagList;\n this.type = 2059837836;\n }\n }\n IFC4X32.IfcCartesianPointList3D = IfcCartesianPointList3D;\n class IfcCartesianTransformationOperator extends IfcGeometricRepresentationItem {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super();\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 59481748;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator = IfcCartesianTransformationOperator;\n class IfcCartesianTransformationOperator2D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.type = 3749851601;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator2D = IfcCartesianTransformationOperator2D;\n class IfcCartesianTransformationOperator2DnonUniform extends IfcCartesianTransformationOperator2D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Scale2) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Scale2 = Scale2;\n this.type = 3486308946;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator2DnonUniform = IfcCartesianTransformationOperator2DnonUniform;\n class IfcCartesianTransformationOperator3D extends IfcCartesianTransformationOperator {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3) {\n super(Axis1, Axis2, LocalOrigin, Scale);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.type = 3331915920;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator3D = IfcCartesianTransformationOperator3D;\n class IfcCartesianTransformationOperator3DnonUniform extends IfcCartesianTransformationOperator3D {\n constructor(Axis1, Axis2, LocalOrigin, Scale, Axis3, Scale2, Scale3) {\n super(Axis1, Axis2, LocalOrigin, Scale, Axis3);\n this.Axis1 = Axis1;\n this.Axis2 = Axis2;\n this.LocalOrigin = LocalOrigin;\n this.Scale = Scale;\n this.Axis3 = Axis3;\n this.Scale2 = Scale2;\n this.Scale3 = Scale3;\n this.type = 1416205885;\n }\n }\n IFC4X32.IfcCartesianTransformationOperator3DnonUniform = IfcCartesianTransformationOperator3DnonUniform;\n class IfcCircleProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1383045692;\n }\n }\n IFC4X32.IfcCircleProfileDef = IfcCircleProfileDef;\n class IfcClosedShell extends IfcConnectedFaceSet {\n constructor(CfsFaces) {\n super(CfsFaces);\n this.CfsFaces = CfsFaces;\n this.type = 2205249479;\n }\n }\n IFC4X32.IfcClosedShell = IfcClosedShell;\n class IfcColourRgb extends IfcColourSpecification {\n constructor(Name, Red, Green, Blue) {\n super(Name);\n this.Name = Name;\n this.Red = Red;\n this.Green = Green;\n this.Blue = Blue;\n this.type = 776857604;\n }\n }\n IFC4X32.IfcColourRgb = IfcColourRgb;\n class IfcComplexProperty extends IfcProperty {\n constructor(Name, Specification, UsageName, HasProperties) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UsageName = UsageName;\n this.HasProperties = HasProperties;\n this.type = 2542286263;\n }\n }\n IFC4X32.IfcComplexProperty = IfcComplexProperty;\n class IfcCompositeCurveSegment extends IfcSegment {\n constructor(Transition, SameSense, ParentCurve) {\n super(Transition);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.type = 2485617015;\n }\n }\n IFC4X32.IfcCompositeCurveSegment = IfcCompositeCurveSegment;\n class IfcConstructionResourceType extends IfcTypeResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2574617495;\n }\n }\n IFC4X32.IfcConstructionResourceType = IfcConstructionResourceType;\n class IfcContext extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 3419103109;\n }\n }\n IFC4X32.IfcContext = IfcContext;\n class IfcCrewResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1815067380;\n }\n }\n IFC4X32.IfcCrewResourceType = IfcCrewResourceType;\n class IfcCsgPrimitive3D extends IfcGeometricRepresentationItem {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2506170314;\n }\n }\n IFC4X32.IfcCsgPrimitive3D = IfcCsgPrimitive3D;\n class IfcCsgSolid extends IfcSolidModel {\n constructor(TreeRootExpression) {\n super();\n this.TreeRootExpression = TreeRootExpression;\n this.type = 2147822146;\n }\n }\n IFC4X32.IfcCsgSolid = IfcCsgSolid;\n class IfcCurve extends IfcGeometricRepresentationItem {\n constructor() {\n super();\n this.type = 2601014836;\n }\n }\n IFC4X32.IfcCurve = IfcCurve;\n class IfcCurveBoundedPlane extends IfcBoundedSurface {\n constructor(BasisSurface, OuterBoundary, InnerBoundaries) {\n super();\n this.BasisSurface = BasisSurface;\n this.OuterBoundary = OuterBoundary;\n this.InnerBoundaries = InnerBoundaries;\n this.type = 2827736869;\n }\n }\n IFC4X32.IfcCurveBoundedPlane = IfcCurveBoundedPlane;\n class IfcCurveBoundedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, Boundaries, ImplicitOuter) {\n super();\n this.BasisSurface = BasisSurface;\n this.Boundaries = Boundaries;\n this.ImplicitOuter = ImplicitOuter;\n this.type = 2629017746;\n }\n }\n IFC4X32.IfcCurveBoundedSurface = IfcCurveBoundedSurface;\n class IfcCurveSegment extends IfcSegment {\n constructor(Transition, Placement, SegmentStart, SegmentLength, ParentCurve) {\n super(Transition);\n this.Transition = Transition;\n this.Placement = Placement;\n this.SegmentStart = SegmentStart;\n this.SegmentLength = SegmentLength;\n this.ParentCurve = ParentCurve;\n this.type = 4212018352;\n }\n }\n IFC4X32.IfcCurveSegment = IfcCurveSegment;\n class IfcDirection extends IfcGeometricRepresentationItem {\n constructor(DirectionRatios) {\n super();\n this.DirectionRatios = DirectionRatios;\n this.type = 32440307;\n }\n }\n IFC4X32.IfcDirection = IfcDirection;\n class IfcDirectrixCurveSweptAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.type = 593015953;\n }\n }\n IFC4X32.IfcDirectrixCurveSweptAreaSolid = IfcDirectrixCurveSweptAreaSolid;\n class IfcEdgeLoop extends IfcLoop {\n constructor(EdgeList) {\n super();\n this.EdgeList = EdgeList;\n this.type = 1472233963;\n }\n }\n IFC4X32.IfcEdgeLoop = IfcEdgeLoop;\n class IfcElementQuantity extends IfcQuantitySet {\n constructor(GlobalId, OwnerHistory, Name, Description, MethodOfMeasurement, Quantities) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.MethodOfMeasurement = MethodOfMeasurement;\n this.Quantities = Quantities;\n this.type = 1883228015;\n }\n }\n IFC4X32.IfcElementQuantity = IfcElementQuantity;\n class IfcElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 339256511;\n }\n }\n IFC4X32.IfcElementType = IfcElementType;\n class IfcElementarySurface extends IfcSurface {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2777663545;\n }\n }\n IFC4X32.IfcElementarySurface = IfcElementarySurface;\n class IfcEllipseProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, SemiAxis1, SemiAxis2) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 2835456948;\n }\n }\n IFC4X32.IfcEllipseProfileDef = IfcEllipseProfileDef;\n class IfcEventType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, EventTriggerType, UserDefinedEventTriggerType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.type = 4024345920;\n }\n }\n IFC4X32.IfcEventType = IfcEventType;\n class IfcExtrudedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 477187591;\n }\n }\n IFC4X32.IfcExtrudedAreaSolid = IfcExtrudedAreaSolid;\n class IfcExtrudedAreaSolidTapered extends IfcExtrudedAreaSolid {\n constructor(SweptArea, Position, ExtrudedDirection, Depth, EndSweptArea) {\n super(SweptArea, Position, ExtrudedDirection, Depth);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.EndSweptArea = EndSweptArea;\n this.type = 2804161546;\n }\n }\n IFC4X32.IfcExtrudedAreaSolidTapered = IfcExtrudedAreaSolidTapered;\n class IfcFaceBasedSurfaceModel extends IfcGeometricRepresentationItem {\n constructor(FbsmFaces) {\n super();\n this.FbsmFaces = FbsmFaces;\n this.type = 2047409740;\n }\n }\n IFC4X32.IfcFaceBasedSurfaceModel = IfcFaceBasedSurfaceModel;\n class IfcFillAreaStyleHatching extends IfcGeometricRepresentationItem {\n constructor(HatchLineAppearance, StartOfNextHatchLine, PointOfReferenceHatchLine, PatternStart, HatchLineAngle) {\n super();\n this.HatchLineAppearance = HatchLineAppearance;\n this.StartOfNextHatchLine = StartOfNextHatchLine;\n this.PointOfReferenceHatchLine = PointOfReferenceHatchLine;\n this.PatternStart = PatternStart;\n this.HatchLineAngle = HatchLineAngle;\n this.type = 374418227;\n }\n }\n IFC4X32.IfcFillAreaStyleHatching = IfcFillAreaStyleHatching;\n class IfcFillAreaStyleTiles extends IfcGeometricRepresentationItem {\n constructor(TilingPattern, Tiles, TilingScale) {\n super();\n this.TilingPattern = TilingPattern;\n this.Tiles = Tiles;\n this.TilingScale = TilingScale;\n this.type = 315944413;\n }\n }\n IFC4X32.IfcFillAreaStyleTiles = IfcFillAreaStyleTiles;\n class IfcFixedReferenceSweptAreaSolid extends IfcDirectrixCurveSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position, Directrix, StartParam, EndParam);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 2652556860;\n }\n }\n IFC4X32.IfcFixedReferenceSweptAreaSolid = IfcFixedReferenceSweptAreaSolid;\n class IfcFurnishingElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 4238390223;\n }\n }\n IFC4X32.IfcFurnishingElementType = IfcFurnishingElementType;\n class IfcFurnitureType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 1268542332;\n }\n }\n IFC4X32.IfcFurnitureType = IfcFurnitureType;\n class IfcGeographicElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4095422895;\n }\n }\n IFC4X32.IfcGeographicElementType = IfcGeographicElementType;\n class IfcGeometricCurveSet extends IfcGeometricSet {\n constructor(Elements) {\n super(Elements);\n this.Elements = Elements;\n this.type = 987898635;\n }\n }\n IFC4X32.IfcGeometricCurveSet = IfcGeometricCurveSet;\n class IfcIShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, OverallWidth, OverallDepth, WebThickness, FlangeThickness, FilletRadius, FlangeEdgeRadius, FlangeSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.OverallWidth = OverallWidth;\n this.OverallDepth = OverallDepth;\n this.WebThickness = WebThickness;\n this.FlangeThickness = FlangeThickness;\n this.FilletRadius = FilletRadius;\n this.FlangeEdgeRadius = FlangeEdgeRadius;\n this.FlangeSlope = FlangeSlope;\n this.type = 1484403080;\n }\n }\n IFC4X32.IfcIShapeProfileDef = IfcIShapeProfileDef;\n class IfcIndexedPolygonalFace extends IfcTessellatedItem {\n constructor(CoordIndex) {\n super();\n this.CoordIndex = CoordIndex;\n this.type = 178912537;\n }\n }\n IFC4X32.IfcIndexedPolygonalFace = IfcIndexedPolygonalFace;\n class IfcIndexedPolygonalFaceWithVoids extends IfcIndexedPolygonalFace {\n constructor(CoordIndex, InnerCoordIndices) {\n super(CoordIndex);\n this.CoordIndex = CoordIndex;\n this.InnerCoordIndices = InnerCoordIndices;\n this.type = 2294589976;\n }\n }\n IFC4X32.IfcIndexedPolygonalFaceWithVoids = IfcIndexedPolygonalFaceWithVoids;\n class IfcIndexedPolygonalTextureMap extends IfcIndexedTextureMap {\n constructor(Maps, MappedTo, TexCoords, TexCoordIndices) {\n super(Maps, MappedTo, TexCoords);\n this.Maps = Maps;\n this.MappedTo = MappedTo;\n this.TexCoords = TexCoords;\n this.TexCoordIndices = TexCoordIndices;\n this.type = 3465909080;\n }\n }\n IFC4X32.IfcIndexedPolygonalTextureMap = IfcIndexedPolygonalTextureMap;\n class IfcLShapeProfileDef extends IfcParameterizedProfileDef {\n constructor(ProfileType, ProfileName, Position, Depth, Width, Thickness, FilletRadius, EdgeRadius, LegSlope) {\n super(ProfileType, ProfileName, Position);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Depth = Depth;\n this.Width = Width;\n this.Thickness = Thickness;\n this.FilletRadius = FilletRadius;\n this.EdgeRadius = EdgeRadius;\n this.LegSlope = LegSlope;\n this.type = 572779678;\n }\n }\n IFC4X32.IfcLShapeProfileDef = IfcLShapeProfileDef;\n class IfcLaborResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 428585644;\n }\n }\n IFC4X32.IfcLaborResourceType = IfcLaborResourceType;\n class IfcLine extends IfcCurve {\n constructor(Pnt, Dir) {\n super();\n this.Pnt = Pnt;\n this.Dir = Dir;\n this.type = 1281925730;\n }\n }\n IFC4X32.IfcLine = IfcLine;\n class IfcManifoldSolidBrep extends IfcSolidModel {\n constructor(Outer) {\n super();\n this.Outer = Outer;\n this.type = 1425443689;\n }\n }\n IFC4X32.IfcManifoldSolidBrep = IfcManifoldSolidBrep;\n class IfcObject extends IfcObjectDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 3888040117;\n }\n }\n IFC4X32.IfcObject = IfcObject;\n class IfcOffsetCurve extends IfcCurve {\n constructor(BasisCurve) {\n super();\n this.BasisCurve = BasisCurve;\n this.type = 590820931;\n }\n }\n IFC4X32.IfcOffsetCurve = IfcOffsetCurve;\n class IfcOffsetCurve2D extends IfcOffsetCurve {\n constructor(BasisCurve, Distance, SelfIntersect) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.type = 3388369263;\n }\n }\n IFC4X32.IfcOffsetCurve2D = IfcOffsetCurve2D;\n class IfcOffsetCurve3D extends IfcOffsetCurve {\n constructor(BasisCurve, Distance, SelfIntersect, RefDirection) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.Distance = Distance;\n this.SelfIntersect = SelfIntersect;\n this.RefDirection = RefDirection;\n this.type = 3505215534;\n }\n }\n IFC4X32.IfcOffsetCurve3D = IfcOffsetCurve3D;\n class IfcOffsetCurveByDistances extends IfcOffsetCurve {\n constructor(BasisCurve, OffsetValues, Tag) {\n super(BasisCurve);\n this.BasisCurve = BasisCurve;\n this.OffsetValues = OffsetValues;\n this.Tag = Tag;\n this.type = 2485787929;\n }\n }\n IFC4X32.IfcOffsetCurveByDistances = IfcOffsetCurveByDistances;\n class IfcPcurve extends IfcCurve {\n constructor(BasisSurface, ReferenceCurve) {\n super();\n this.BasisSurface = BasisSurface;\n this.ReferenceCurve = ReferenceCurve;\n this.type = 1682466193;\n }\n }\n IFC4X32.IfcPcurve = IfcPcurve;\n class IfcPlanarBox extends IfcPlanarExtent {\n constructor(SizeInX, SizeInY, Placement) {\n super(SizeInX, SizeInY);\n this.SizeInX = SizeInX;\n this.SizeInY = SizeInY;\n this.Placement = Placement;\n this.type = 603570806;\n }\n }\n IFC4X32.IfcPlanarBox = IfcPlanarBox;\n class IfcPlane extends IfcElementarySurface {\n constructor(Position) {\n super(Position);\n this.Position = Position;\n this.type = 220341763;\n }\n }\n IFC4X32.IfcPlane = IfcPlane;\n class IfcPolynomialCurve extends IfcCurve {\n constructor(Position, CoefficientsX, CoefficientsY, CoefficientsZ) {\n super();\n this.Position = Position;\n this.CoefficientsX = CoefficientsX;\n this.CoefficientsY = CoefficientsY;\n this.CoefficientsZ = CoefficientsZ;\n this.type = 3381221214;\n }\n }\n IFC4X32.IfcPolynomialCurve = IfcPolynomialCurve;\n class IfcPreDefinedColour extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 759155922;\n }\n }\n IFC4X32.IfcPreDefinedColour = IfcPreDefinedColour;\n class IfcPreDefinedCurveFont extends IfcPreDefinedItem {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 2559016684;\n }\n }\n IFC4X32.IfcPreDefinedCurveFont = IfcPreDefinedCurveFont;\n class IfcPreDefinedPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3967405729;\n }\n }\n IFC4X32.IfcPreDefinedPropertySet = IfcPreDefinedPropertySet;\n class IfcProcedureType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.type = 569719735;\n }\n }\n IFC4X32.IfcProcedureType = IfcProcedureType;\n class IfcProcess extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2945172077;\n }\n }\n IFC4X32.IfcProcess = IfcProcess;\n class IfcProduct extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 4208778838;\n }\n }\n IFC4X32.IfcProduct = IfcProduct;\n class IfcProject extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 103090709;\n }\n }\n IFC4X32.IfcProject = IfcProject;\n class IfcProjectLibrary extends IfcContext {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, Phase, RepresentationContexts, UnitsInContext);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.Phase = Phase;\n this.RepresentationContexts = RepresentationContexts;\n this.UnitsInContext = UnitsInContext;\n this.type = 653396225;\n }\n }\n IFC4X32.IfcProjectLibrary = IfcProjectLibrary;\n class IfcPropertyBoundedValue extends IfcSimpleProperty {\n constructor(Name, Specification, UpperBoundValue, LowerBoundValue, Unit, SetPointValue) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UpperBoundValue = UpperBoundValue;\n this.LowerBoundValue = LowerBoundValue;\n this.Unit = Unit;\n this.SetPointValue = SetPointValue;\n this.type = 871118103;\n }\n }\n IFC4X32.IfcPropertyBoundedValue = IfcPropertyBoundedValue;\n class IfcPropertyEnumeratedValue extends IfcSimpleProperty {\n constructor(Name, Specification, EnumerationValues, EnumerationReference) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.EnumerationValues = EnumerationValues;\n this.EnumerationReference = EnumerationReference;\n this.type = 4166981789;\n }\n }\n IFC4X32.IfcPropertyEnumeratedValue = IfcPropertyEnumeratedValue;\n class IfcPropertyListValue extends IfcSimpleProperty {\n constructor(Name, Specification, ListValues, Unit) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.ListValues = ListValues;\n this.Unit = Unit;\n this.type = 2752243245;\n }\n }\n IFC4X32.IfcPropertyListValue = IfcPropertyListValue;\n class IfcPropertyReferenceValue extends IfcSimpleProperty {\n constructor(Name, Specification, UsageName, PropertyReference) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.UsageName = UsageName;\n this.PropertyReference = PropertyReference;\n this.type = 941946838;\n }\n }\n IFC4X32.IfcPropertyReferenceValue = IfcPropertyReferenceValue;\n class IfcPropertySet extends IfcPropertySetDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, HasProperties) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.HasProperties = HasProperties;\n this.type = 1451395588;\n }\n }\n IFC4X32.IfcPropertySet = IfcPropertySet;\n class IfcPropertySetTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, ApplicableEntity, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.ApplicableEntity = ApplicableEntity;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 492091185;\n }\n }\n IFC4X32.IfcPropertySetTemplate = IfcPropertySetTemplate;\n class IfcPropertySingleValue extends IfcSimpleProperty {\n constructor(Name, Specification, NominalValue, Unit) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.NominalValue = NominalValue;\n this.Unit = Unit;\n this.type = 3650150729;\n }\n }\n IFC4X32.IfcPropertySingleValue = IfcPropertySingleValue;\n class IfcPropertyTableValue extends IfcSimpleProperty {\n constructor(Name, Specification, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit, CurveInterpolation) {\n super(Name, Specification);\n this.Name = Name;\n this.Specification = Specification;\n this.DefiningValues = DefiningValues;\n this.DefinedValues = DefinedValues;\n this.Expression = Expression;\n this.DefiningUnit = DefiningUnit;\n this.DefinedUnit = DefinedUnit;\n this.CurveInterpolation = CurveInterpolation;\n this.type = 110355661;\n }\n }\n IFC4X32.IfcPropertyTableValue = IfcPropertyTableValue;\n class IfcPropertyTemplate extends IfcPropertyTemplateDefinition {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 3521284610;\n }\n }\n IFC4X32.IfcPropertyTemplate = IfcPropertyTemplate;\n class IfcRectangleHollowProfileDef extends IfcRectangleProfileDef {\n constructor(ProfileType, ProfileName, Position, XDim, YDim, WallThickness, InnerFilletRadius, OuterFilletRadius) {\n super(ProfileType, ProfileName, Position, XDim, YDim);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.XDim = XDim;\n this.YDim = YDim;\n this.WallThickness = WallThickness;\n this.InnerFilletRadius = InnerFilletRadius;\n this.OuterFilletRadius = OuterFilletRadius;\n this.type = 2770003689;\n }\n }\n IFC4X32.IfcRectangleHollowProfileDef = IfcRectangleHollowProfileDef;\n class IfcRectangularPyramid extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, Height) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.Height = Height;\n this.type = 2798486643;\n }\n }\n IFC4X32.IfcRectangularPyramid = IfcRectangularPyramid;\n class IfcRectangularTrimmedSurface extends IfcBoundedSurface {\n constructor(BasisSurface, U1, V1, U2, V2, Usense, Vsense) {\n super();\n this.BasisSurface = BasisSurface;\n this.U1 = U1;\n this.V1 = V1;\n this.U2 = U2;\n this.V2 = V2;\n this.Usense = Usense;\n this.Vsense = Vsense;\n this.type = 3454111270;\n }\n }\n IFC4X32.IfcRectangularTrimmedSurface = IfcRectangularTrimmedSurface;\n class IfcReinforcementDefinitionProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, DefinitionType, ReinforcementSectionDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.DefinitionType = DefinitionType;\n this.ReinforcementSectionDefinitions = ReinforcementSectionDefinitions;\n this.type = 3765753017;\n }\n }\n IFC4X32.IfcReinforcementDefinitionProperties = IfcReinforcementDefinitionProperties;\n class IfcRelAssigns extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.type = 3939117080;\n }\n }\n IFC4X32.IfcRelAssigns = IfcRelAssigns;\n class IfcRelAssignsToActor extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingActor, ActingRole) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingActor = RelatingActor;\n this.ActingRole = ActingRole;\n this.type = 1683148259;\n }\n }\n IFC4X32.IfcRelAssignsToActor = IfcRelAssignsToActor;\n class IfcRelAssignsToControl extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingControl) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingControl = RelatingControl;\n this.type = 2495723537;\n }\n }\n IFC4X32.IfcRelAssignsToControl = IfcRelAssignsToControl;\n class IfcRelAssignsToGroup extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.type = 1307041759;\n }\n }\n IFC4X32.IfcRelAssignsToGroup = IfcRelAssignsToGroup;\n class IfcRelAssignsToGroupByFactor extends IfcRelAssignsToGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup, Factor) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingGroup);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingGroup = RelatingGroup;\n this.Factor = Factor;\n this.type = 1027710054;\n }\n }\n IFC4X32.IfcRelAssignsToGroupByFactor = IfcRelAssignsToGroupByFactor;\n class IfcRelAssignsToProcess extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProcess, QuantityInProcess) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProcess = RelatingProcess;\n this.QuantityInProcess = QuantityInProcess;\n this.type = 4278684876;\n }\n }\n IFC4X32.IfcRelAssignsToProcess = IfcRelAssignsToProcess;\n class IfcRelAssignsToProduct extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingProduct) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingProduct = RelatingProduct;\n this.type = 2857406711;\n }\n }\n IFC4X32.IfcRelAssignsToProduct = IfcRelAssignsToProduct;\n class IfcRelAssignsToResource extends IfcRelAssigns {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType, RelatingResource) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatedObjectsType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatedObjectsType = RelatedObjectsType;\n this.RelatingResource = RelatingResource;\n this.type = 205026976;\n }\n }\n IFC4X32.IfcRelAssignsToResource = IfcRelAssignsToResource;\n class IfcRelAssociates extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.type = 1865459582;\n }\n }\n IFC4X32.IfcRelAssociates = IfcRelAssociates;\n class IfcRelAssociatesApproval extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingApproval) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingApproval = RelatingApproval;\n this.type = 4095574036;\n }\n }\n IFC4X32.IfcRelAssociatesApproval = IfcRelAssociatesApproval;\n class IfcRelAssociatesClassification extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingClassification) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingClassification = RelatingClassification;\n this.type = 919958153;\n }\n }\n IFC4X32.IfcRelAssociatesClassification = IfcRelAssociatesClassification;\n class IfcRelAssociatesConstraint extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, Intent, RelatingConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.Intent = Intent;\n this.RelatingConstraint = RelatingConstraint;\n this.type = 2728634034;\n }\n }\n IFC4X32.IfcRelAssociatesConstraint = IfcRelAssociatesConstraint;\n class IfcRelAssociatesDocument extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingDocument) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingDocument = RelatingDocument;\n this.type = 982818633;\n }\n }\n IFC4X32.IfcRelAssociatesDocument = IfcRelAssociatesDocument;\n class IfcRelAssociatesLibrary extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingLibrary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingLibrary = RelatingLibrary;\n this.type = 3840914261;\n }\n }\n IFC4X32.IfcRelAssociatesLibrary = IfcRelAssociatesLibrary;\n class IfcRelAssociatesMaterial extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingMaterial) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingMaterial = RelatingMaterial;\n this.type = 2655215786;\n }\n }\n IFC4X32.IfcRelAssociatesMaterial = IfcRelAssociatesMaterial;\n class IfcRelAssociatesProfileDef extends IfcRelAssociates {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingProfileDef) {\n super(GlobalId, OwnerHistory, Name, Description, RelatedObjects);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingProfileDef = RelatingProfileDef;\n this.type = 1033248425;\n }\n }\n IFC4X32.IfcRelAssociatesProfileDef = IfcRelAssociatesProfileDef;\n class IfcRelConnects extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 826625072;\n }\n }\n IFC4X32.IfcRelConnects = IfcRelConnects;\n class IfcRelConnectsElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.type = 1204542856;\n }\n }\n IFC4X32.IfcRelConnectsElements = IfcRelConnectsElements;\n class IfcRelConnectsPathElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RelatingPriorities, RelatedPriorities, RelatedConnectionType, RelatingConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RelatingPriorities = RelatingPriorities;\n this.RelatedPriorities = RelatedPriorities;\n this.RelatedConnectionType = RelatedConnectionType;\n this.RelatingConnectionType = RelatingConnectionType;\n this.type = 3945020480;\n }\n }\n IFC4X32.IfcRelConnectsPathElements = IfcRelConnectsPathElements;\n class IfcRelConnectsPortToElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedElement = RelatedElement;\n this.type = 4201705270;\n }\n }\n IFC4X32.IfcRelConnectsPortToElement = IfcRelConnectsPortToElement;\n class IfcRelConnectsPorts extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPort, RelatedPort, RealizingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPort = RelatingPort;\n this.RelatedPort = RelatedPort;\n this.RealizingElement = RealizingElement;\n this.type = 3190031847;\n }\n }\n IFC4X32.IfcRelConnectsPorts = IfcRelConnectsPorts;\n class IfcRelConnectsStructuralActivity extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedStructuralActivity) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedStructuralActivity = RelatedStructuralActivity;\n this.type = 2127690289;\n }\n }\n IFC4X32.IfcRelConnectsStructuralActivity = IfcRelConnectsStructuralActivity;\n class IfcRelConnectsStructuralMember extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 1638771189;\n }\n }\n IFC4X32.IfcRelConnectsStructuralMember = IfcRelConnectsStructuralMember;\n class IfcRelConnectsWithEccentricity extends IfcRelConnectsStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem, ConnectionConstraint) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingStructuralMember, RelatedStructuralConnection, AppliedCondition, AdditionalConditions, SupportedLength, ConditionCoordinateSystem);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingStructuralMember = RelatingStructuralMember;\n this.RelatedStructuralConnection = RelatedStructuralConnection;\n this.AppliedCondition = AppliedCondition;\n this.AdditionalConditions = AdditionalConditions;\n this.SupportedLength = SupportedLength;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.ConnectionConstraint = ConnectionConstraint;\n this.type = 504942748;\n }\n }\n IFC4X32.IfcRelConnectsWithEccentricity = IfcRelConnectsWithEccentricity;\n class IfcRelConnectsWithRealizingElements extends IfcRelConnectsElements {\n constructor(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement, RealizingElements, ConnectionType) {\n super(GlobalId, OwnerHistory, Name, Description, ConnectionGeometry, RelatingElement, RelatedElement);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ConnectionGeometry = ConnectionGeometry;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.RealizingElements = RealizingElements;\n this.ConnectionType = ConnectionType;\n this.type = 3678494232;\n }\n }\n IFC4X32.IfcRelConnectsWithRealizingElements = IfcRelConnectsWithRealizingElements;\n class IfcRelContainedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 3242617779;\n }\n }\n IFC4X32.IfcRelContainedInSpatialStructure = IfcRelContainedInSpatialStructure;\n class IfcRelCoversBldgElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 886880790;\n }\n }\n IFC4X32.IfcRelCoversBldgElements = IfcRelCoversBldgElements;\n class IfcRelCoversSpaces extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedCoverings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedCoverings = RelatedCoverings;\n this.type = 2802773753;\n }\n }\n IFC4X32.IfcRelCoversSpaces = IfcRelCoversSpaces;\n class IfcRelDeclares extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingContext, RelatedDefinitions) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingContext = RelatingContext;\n this.RelatedDefinitions = RelatedDefinitions;\n this.type = 2565941209;\n }\n }\n IFC4X32.IfcRelDeclares = IfcRelDeclares;\n class IfcRelDecomposes extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 2551354335;\n }\n }\n IFC4X32.IfcRelDecomposes = IfcRelDecomposes;\n class IfcRelDefines extends IfcRelationship {\n constructor(GlobalId, OwnerHistory, Name, Description) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.type = 693640335;\n }\n }\n IFC4X32.IfcRelDefines = IfcRelDefines;\n class IfcRelDefinesByObject extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingObject) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingObject = RelatingObject;\n this.type = 1462361463;\n }\n }\n IFC4X32.IfcRelDefinesByObject = IfcRelDefinesByObject;\n class IfcRelDefinesByProperties extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingPropertyDefinition = RelatingPropertyDefinition;\n this.type = 4186316022;\n }\n }\n IFC4X32.IfcRelDefinesByProperties = IfcRelDefinesByProperties;\n class IfcRelDefinesByTemplate extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedPropertySets, RelatingTemplate) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedPropertySets = RelatedPropertySets;\n this.RelatingTemplate = RelatingTemplate;\n this.type = 307848117;\n }\n }\n IFC4X32.IfcRelDefinesByTemplate = IfcRelDefinesByTemplate;\n class IfcRelDefinesByType extends IfcRelDefines {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedObjects = RelatedObjects;\n this.RelatingType = RelatingType;\n this.type = 781010003;\n }\n }\n IFC4X32.IfcRelDefinesByType = IfcRelDefinesByType;\n class IfcRelFillsElement extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingOpeningElement, RelatedBuildingElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingOpeningElement = RelatingOpeningElement;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.type = 3940055652;\n }\n }\n IFC4X32.IfcRelFillsElement = IfcRelFillsElement;\n class IfcRelFlowControlElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedControlElements, RelatingFlowElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedControlElements = RelatedControlElements;\n this.RelatingFlowElement = RelatingFlowElement;\n this.type = 279856033;\n }\n }\n IFC4X32.IfcRelFlowControlElements = IfcRelFlowControlElements;\n class IfcRelInterferesElements extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedElement, InterferenceGeometry, InterferenceSpace, InterferenceType, ImpliedOrder) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedElement = RelatedElement;\n this.InterferenceGeometry = InterferenceGeometry;\n this.InterferenceSpace = InterferenceSpace;\n this.InterferenceType = InterferenceType;\n this.ImpliedOrder = ImpliedOrder;\n this.type = 427948657;\n }\n }\n IFC4X32.IfcRelInterferesElements = IfcRelInterferesElements;\n class IfcRelNests extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 3268803585;\n }\n }\n IFC4X32.IfcRelNests = IfcRelNests;\n class IfcRelPositions extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingPositioningElement, RelatedProducts) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingPositioningElement = RelatingPositioningElement;\n this.RelatedProducts = RelatedProducts;\n this.type = 1441486842;\n }\n }\n IFC4X32.IfcRelPositions = IfcRelPositions;\n class IfcRelProjectsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedFeatureElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedFeatureElement = RelatedFeatureElement;\n this.type = 750771296;\n }\n }\n IFC4X32.IfcRelProjectsElement = IfcRelProjectsElement;\n class IfcRelReferencedInSpatialStructure extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatedElements, RelatingStructure) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatedElements = RelatedElements;\n this.RelatingStructure = RelatingStructure;\n this.type = 1245217292;\n }\n }\n IFC4X32.IfcRelReferencedInSpatialStructure = IfcRelReferencedInSpatialStructure;\n class IfcRelSequence extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingProcess, RelatedProcess, TimeLag, SequenceType, UserDefinedSequenceType) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingProcess = RelatingProcess;\n this.RelatedProcess = RelatedProcess;\n this.TimeLag = TimeLag;\n this.SequenceType = SequenceType;\n this.UserDefinedSequenceType = UserDefinedSequenceType;\n this.type = 4122056220;\n }\n }\n IFC4X32.IfcRelSequence = IfcRelSequence;\n class IfcRelServicesBuildings extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSystem, RelatedBuildings) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSystem = RelatingSystem;\n this.RelatedBuildings = RelatedBuildings;\n this.type = 366585022;\n }\n }\n IFC4X32.IfcRelServicesBuildings = IfcRelServicesBuildings;\n class IfcRelSpaceBoundary extends IfcRelConnects {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.type = 3451746338;\n }\n }\n IFC4X32.IfcRelSpaceBoundary = IfcRelSpaceBoundary;\n class IfcRelSpaceBoundary1stLevel extends IfcRelSpaceBoundary {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.type = 3523091289;\n }\n }\n IFC4X32.IfcRelSpaceBoundary1stLevel = IfcRelSpaceBoundary1stLevel;\n class IfcRelSpaceBoundary2ndLevel extends IfcRelSpaceBoundary1stLevel {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary, CorrespondingBoundary) {\n super(GlobalId, OwnerHistory, Name, Description, RelatingSpace, RelatedBuildingElement, ConnectionGeometry, PhysicalOrVirtualBoundary, InternalOrExternalBoundary, ParentBoundary);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingSpace = RelatingSpace;\n this.RelatedBuildingElement = RelatedBuildingElement;\n this.ConnectionGeometry = ConnectionGeometry;\n this.PhysicalOrVirtualBoundary = PhysicalOrVirtualBoundary;\n this.InternalOrExternalBoundary = InternalOrExternalBoundary;\n this.ParentBoundary = ParentBoundary;\n this.CorrespondingBoundary = CorrespondingBoundary;\n this.type = 1521410863;\n }\n }\n IFC4X32.IfcRelSpaceBoundary2ndLevel = IfcRelSpaceBoundary2ndLevel;\n class IfcRelVoidsElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingBuildingElement, RelatedOpeningElement) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingBuildingElement = RelatingBuildingElement;\n this.RelatedOpeningElement = RelatedOpeningElement;\n this.type = 1401173127;\n }\n }\n IFC4X32.IfcRelVoidsElement = IfcRelVoidsElement;\n class IfcReparametrisedCompositeCurveSegment extends IfcCompositeCurveSegment {\n constructor(Transition, SameSense, ParentCurve, ParamLength) {\n super(Transition, SameSense, ParentCurve);\n this.Transition = Transition;\n this.SameSense = SameSense;\n this.ParentCurve = ParentCurve;\n this.ParamLength = ParamLength;\n this.type = 816062949;\n }\n }\n IFC4X32.IfcReparametrisedCompositeCurveSegment = IfcReparametrisedCompositeCurveSegment;\n class IfcResource extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.type = 2914609552;\n }\n }\n IFC4X32.IfcResource = IfcResource;\n class IfcRevolvedAreaSolid extends IfcSweptAreaSolid {\n constructor(SweptArea, Position, Axis, Angle) {\n super(SweptArea, Position);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.type = 1856042241;\n }\n }\n IFC4X32.IfcRevolvedAreaSolid = IfcRevolvedAreaSolid;\n class IfcRevolvedAreaSolidTapered extends IfcRevolvedAreaSolid {\n constructor(SweptArea, Position, Axis, Angle, EndSweptArea) {\n super(SweptArea, Position, Axis, Angle);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Axis = Axis;\n this.Angle = Angle;\n this.EndSweptArea = EndSweptArea;\n this.type = 3243963512;\n }\n }\n IFC4X32.IfcRevolvedAreaSolidTapered = IfcRevolvedAreaSolidTapered;\n class IfcRightCircularCone extends IfcCsgPrimitive3D {\n constructor(Position, Height, BottomRadius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.BottomRadius = BottomRadius;\n this.type = 4158566097;\n }\n }\n IFC4X32.IfcRightCircularCone = IfcRightCircularCone;\n class IfcRightCircularCylinder extends IfcCsgPrimitive3D {\n constructor(Position, Height, Radius) {\n super(Position);\n this.Position = Position;\n this.Height = Height;\n this.Radius = Radius;\n this.type = 3626867408;\n }\n }\n IFC4X32.IfcRightCircularCylinder = IfcRightCircularCylinder;\n class IfcSectionedSolid extends IfcSolidModel {\n constructor(Directrix, CrossSections) {\n super();\n this.Directrix = Directrix;\n this.CrossSections = CrossSections;\n this.type = 1862484736;\n }\n }\n IFC4X32.IfcSectionedSolid = IfcSectionedSolid;\n class IfcSectionedSolidHorizontal extends IfcSectionedSolid {\n constructor(Directrix, CrossSections, CrossSectionPositions) {\n super(Directrix, CrossSections);\n this.Directrix = Directrix;\n this.CrossSections = CrossSections;\n this.CrossSectionPositions = CrossSectionPositions;\n this.type = 1290935644;\n }\n }\n IFC4X32.IfcSectionedSolidHorizontal = IfcSectionedSolidHorizontal;\n class IfcSectionedSurface extends IfcSurface {\n constructor(Directrix, CrossSectionPositions, CrossSections) {\n super();\n this.Directrix = Directrix;\n this.CrossSectionPositions = CrossSectionPositions;\n this.CrossSections = CrossSections;\n this.type = 1356537516;\n }\n }\n IFC4X32.IfcSectionedSurface = IfcSectionedSurface;\n class IfcSimplePropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, TemplateType, PrimaryMeasureType, SecondaryMeasureType, Enumerators, PrimaryUnit, SecondaryUnit, Expression, AccessState) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.TemplateType = TemplateType;\n this.PrimaryMeasureType = PrimaryMeasureType;\n this.SecondaryMeasureType = SecondaryMeasureType;\n this.Enumerators = Enumerators;\n this.PrimaryUnit = PrimaryUnit;\n this.SecondaryUnit = SecondaryUnit;\n this.Expression = Expression;\n this.AccessState = AccessState;\n this.type = 3663146110;\n }\n }\n IFC4X32.IfcSimplePropertyTemplate = IfcSimplePropertyTemplate;\n class IfcSpatialElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 1412071761;\n }\n }\n IFC4X32.IfcSpatialElement = IfcSpatialElement;\n class IfcSpatialElementType extends IfcTypeProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 710998568;\n }\n }\n IFC4X32.IfcSpatialElementType = IfcSpatialElementType;\n class IfcSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 2706606064;\n }\n }\n IFC4X32.IfcSpatialStructureElement = IfcSpatialStructureElement;\n class IfcSpatialStructureElementType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893378262;\n }\n }\n IFC4X32.IfcSpatialStructureElementType = IfcSpatialStructureElementType;\n class IfcSpatialZone extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 463610769;\n }\n }\n IFC4X32.IfcSpatialZone = IfcSpatialZone;\n class IfcSpatialZoneType extends IfcSpatialElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 2481509218;\n }\n }\n IFC4X32.IfcSpatialZoneType = IfcSpatialZoneType;\n class IfcSphere extends IfcCsgPrimitive3D {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 451544542;\n }\n }\n IFC4X32.IfcSphere = IfcSphere;\n class IfcSphericalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 4015995234;\n }\n }\n IFC4X32.IfcSphericalSurface = IfcSphericalSurface;\n class IfcSpiral extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2735484536;\n }\n }\n IFC4X32.IfcSpiral = IfcSpiral;\n class IfcStructuralActivity extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3544373492;\n }\n }\n IFC4X32.IfcStructuralActivity = IfcStructuralActivity;\n class IfcStructuralItem extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3136571912;\n }\n }\n IFC4X32.IfcStructuralItem = IfcStructuralItem;\n class IfcStructuralMember extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 530289379;\n }\n }\n IFC4X32.IfcStructuralMember = IfcStructuralMember;\n class IfcStructuralReaction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 3689010777;\n }\n }\n IFC4X32.IfcStructuralReaction = IfcStructuralReaction;\n class IfcStructuralSurfaceMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 3979015343;\n }\n }\n IFC4X32.IfcStructuralSurfaceMember = IfcStructuralSurfaceMember;\n class IfcStructuralSurfaceMemberVarying extends IfcStructuralSurfaceMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Thickness);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Thickness = Thickness;\n this.type = 2218152070;\n }\n }\n IFC4X32.IfcStructuralSurfaceMemberVarying = IfcStructuralSurfaceMemberVarying;\n class IfcStructuralSurfaceReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 603775116;\n }\n }\n IFC4X32.IfcStructuralSurfaceReaction = IfcStructuralSurfaceReaction;\n class IfcSubContractResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4095615324;\n }\n }\n IFC4X32.IfcSubContractResourceType = IfcSubContractResourceType;\n class IfcSurfaceCurve extends IfcCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super();\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 699246055;\n }\n }\n IFC4X32.IfcSurfaceCurve = IfcSurfaceCurve;\n class IfcSurfaceCurveSweptAreaSolid extends IfcDirectrixCurveSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, ReferenceSurface) {\n super(SweptArea, Position, Directrix, StartParam, EndParam);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.ReferenceSurface = ReferenceSurface;\n this.type = 2028607225;\n }\n }\n IFC4X32.IfcSurfaceCurveSweptAreaSolid = IfcSurfaceCurveSweptAreaSolid;\n class IfcSurfaceOfLinearExtrusion extends IfcSweptSurface {\n constructor(SweptCurve, Position, ExtrudedDirection, Depth) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.ExtrudedDirection = ExtrudedDirection;\n this.Depth = Depth;\n this.type = 2809605785;\n }\n }\n IFC4X32.IfcSurfaceOfLinearExtrusion = IfcSurfaceOfLinearExtrusion;\n class IfcSurfaceOfRevolution extends IfcSweptSurface {\n constructor(SweptCurve, Position, AxisPosition) {\n super(SweptCurve, Position);\n this.SweptCurve = SweptCurve;\n this.Position = Position;\n this.AxisPosition = AxisPosition;\n this.type = 4124788165;\n }\n }\n IFC4X32.IfcSurfaceOfRevolution = IfcSurfaceOfRevolution;\n class IfcSystemFurnitureElementType extends IfcFurnishingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1580310250;\n }\n }\n IFC4X32.IfcSystemFurnitureElementType = IfcSystemFurnitureElementType;\n class IfcTask extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Status, WorkMethod, IsMilestone, Priority, TaskTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Status = Status;\n this.WorkMethod = WorkMethod;\n this.IsMilestone = IsMilestone;\n this.Priority = Priority;\n this.TaskTime = TaskTime;\n this.PredefinedType = PredefinedType;\n this.type = 3473067441;\n }\n }\n IFC4X32.IfcTask = IfcTask;\n class IfcTaskType extends IfcTypeProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType, PredefinedType, WorkMethod) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ProcessType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ProcessType = ProcessType;\n this.PredefinedType = PredefinedType;\n this.WorkMethod = WorkMethod;\n this.type = 3206491090;\n }\n }\n IFC4X32.IfcTaskType = IfcTaskType;\n class IfcTessellatedFaceSet extends IfcTessellatedItem {\n constructor(Coordinates, Closed) {\n super();\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.type = 2387106220;\n }\n }\n IFC4X32.IfcTessellatedFaceSet = IfcTessellatedFaceSet;\n class IfcThirdOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, CubicTerm, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.CubicTerm = CubicTerm;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 782932809;\n }\n }\n IFC4X32.IfcThirdOrderPolynomialSpiral = IfcThirdOrderPolynomialSpiral;\n class IfcToroidalSurface extends IfcElementarySurface {\n constructor(Position, MajorRadius, MinorRadius) {\n super(Position);\n this.Position = Position;\n this.MajorRadius = MajorRadius;\n this.MinorRadius = MinorRadius;\n this.type = 1935646853;\n }\n }\n IFC4X32.IfcToroidalSurface = IfcToroidalSurface;\n class IfcTransportationDeviceType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3665877780;\n }\n }\n IFC4X32.IfcTransportationDeviceType = IfcTransportationDeviceType;\n class IfcTriangulatedFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Normals, CoordIndex, PnIndex) {\n super(Coordinates, Closed);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Normals = Normals;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.type = 2916149573;\n }\n }\n IFC4X32.IfcTriangulatedFaceSet = IfcTriangulatedFaceSet;\n class IfcTriangulatedIrregularNetwork extends IfcTriangulatedFaceSet {\n constructor(Coordinates, Closed, Normals, CoordIndex, PnIndex, Flags) {\n super(Coordinates, Closed, Normals, CoordIndex, PnIndex);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Normals = Normals;\n this.CoordIndex = CoordIndex;\n this.PnIndex = PnIndex;\n this.Flags = Flags;\n this.type = 1229763772;\n }\n }\n IFC4X32.IfcTriangulatedIrregularNetwork = IfcTriangulatedIrregularNetwork;\n class IfcVehicleType extends IfcTransportationDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3651464721;\n }\n }\n IFC4X32.IfcVehicleType = IfcVehicleType;\n class IfcWindowLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, TransomThickness, MullionThickness, FirstTransomOffset, SecondTransomOffset, FirstMullionOffset, SecondMullionOffset, ShapeAspectStyle, LiningOffset, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.TransomThickness = TransomThickness;\n this.MullionThickness = MullionThickness;\n this.FirstTransomOffset = FirstTransomOffset;\n this.SecondTransomOffset = SecondTransomOffset;\n this.FirstMullionOffset = FirstMullionOffset;\n this.SecondMullionOffset = SecondMullionOffset;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningOffset = LiningOffset;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 336235671;\n }\n }\n IFC4X32.IfcWindowLiningProperties = IfcWindowLiningProperties;\n class IfcWindowPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 512836454;\n }\n }\n IFC4X32.IfcWindowPanelProperties = IfcWindowPanelProperties;\n class IfcActor extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.type = 2296667514;\n }\n }\n IFC4X32.IfcActor = IfcActor;\n class IfcAdvancedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 1635779807;\n }\n }\n IFC4X32.IfcAdvancedBrep = IfcAdvancedBrep;\n class IfcAdvancedBrepWithVoids extends IfcAdvancedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 2603310189;\n }\n }\n IFC4X32.IfcAdvancedBrepWithVoids = IfcAdvancedBrepWithVoids;\n class IfcAnnotation extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 1674181508;\n }\n }\n IFC4X32.IfcAnnotation = IfcAnnotation;\n class IfcBSplineSurface extends IfcBoundedSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect) {\n super();\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.type = 2887950389;\n }\n }\n IFC4X32.IfcBSplineSurface = IfcBSplineSurface;\n class IfcBSplineSurfaceWithKnots extends IfcBSplineSurface {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.type = 167062518;\n }\n }\n IFC4X32.IfcBSplineSurfaceWithKnots = IfcBSplineSurfaceWithKnots;\n class IfcBlock extends IfcCsgPrimitive3D {\n constructor(Position, XLength, YLength, ZLength) {\n super(Position);\n this.Position = Position;\n this.XLength = XLength;\n this.YLength = YLength;\n this.ZLength = ZLength;\n this.type = 1334484129;\n }\n }\n IFC4X32.IfcBlock = IfcBlock;\n class IfcBooleanClippingResult extends IfcBooleanResult {\n constructor(Operator, FirstOperand, SecondOperand) {\n super(Operator, FirstOperand, SecondOperand);\n this.Operator = Operator;\n this.FirstOperand = FirstOperand;\n this.SecondOperand = SecondOperand;\n this.type = 3649129432;\n }\n }\n IFC4X32.IfcBooleanClippingResult = IfcBooleanClippingResult;\n class IfcBoundedCurve extends IfcCurve {\n constructor() {\n super();\n this.type = 1260505505;\n }\n }\n IFC4X32.IfcBoundedCurve = IfcBoundedCurve;\n class IfcBuildingStorey extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, Elevation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.Elevation = Elevation;\n this.type = 3124254112;\n }\n }\n IFC4X32.IfcBuildingStorey = IfcBuildingStorey;\n class IfcBuiltElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1626504194;\n }\n }\n IFC4X32.IfcBuiltElementType = IfcBuiltElementType;\n class IfcChimneyType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2197970202;\n }\n }\n IFC4X32.IfcChimneyType = IfcChimneyType;\n class IfcCircleHollowProfileDef extends IfcCircleProfileDef {\n constructor(ProfileType, ProfileName, Position, Radius, WallThickness) {\n super(ProfileType, ProfileName, Position, Radius);\n this.ProfileType = ProfileType;\n this.ProfileName = ProfileName;\n this.Position = Position;\n this.Radius = Radius;\n this.WallThickness = WallThickness;\n this.type = 2937912522;\n }\n }\n IFC4X32.IfcCircleHollowProfileDef = IfcCircleHollowProfileDef;\n class IfcCivilElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3893394355;\n }\n }\n IFC4X32.IfcCivilElementType = IfcCivilElementType;\n class IfcClothoid extends IfcSpiral {\n constructor(Position, ClothoidConstant) {\n super(Position);\n this.Position = Position;\n this.ClothoidConstant = ClothoidConstant;\n this.type = 3497074424;\n }\n }\n IFC4X32.IfcClothoid = IfcClothoid;\n class IfcColumnType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 300633059;\n }\n }\n IFC4X32.IfcColumnType = IfcColumnType;\n class IfcComplexPropertyTemplate extends IfcPropertyTemplate {\n constructor(GlobalId, OwnerHistory, Name, Description, UsageName, TemplateType, HasPropertyTemplates) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.UsageName = UsageName;\n this.TemplateType = TemplateType;\n this.HasPropertyTemplates = HasPropertyTemplates;\n this.type = 3875453745;\n }\n }\n IFC4X32.IfcComplexPropertyTemplate = IfcComplexPropertyTemplate;\n class IfcCompositeCurve extends IfcBoundedCurve {\n constructor(Segments, SelfIntersect) {\n super();\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 3732776249;\n }\n }\n IFC4X32.IfcCompositeCurve = IfcCompositeCurve;\n class IfcCompositeCurveOnSurface extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 15328376;\n }\n }\n IFC4X32.IfcCompositeCurveOnSurface = IfcCompositeCurveOnSurface;\n class IfcConic extends IfcCurve {\n constructor(Position) {\n super();\n this.Position = Position;\n this.type = 2510884976;\n }\n }\n IFC4X32.IfcConic = IfcConic;\n class IfcConstructionEquipmentResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 2185764099;\n }\n }\n IFC4X32.IfcConstructionEquipmentResourceType = IfcConstructionEquipmentResourceType;\n class IfcConstructionMaterialResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 4105962743;\n }\n }\n IFC4X32.IfcConstructionMaterialResourceType = IfcConstructionMaterialResourceType;\n class IfcConstructionProductResourceType extends IfcConstructionResourceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, Identification, LongDescription, ResourceType, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.ResourceType = ResourceType;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1525564444;\n }\n }\n IFC4X32.IfcConstructionProductResourceType = IfcConstructionProductResourceType;\n class IfcConstructionResource extends IfcResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.type = 2559216714;\n }\n }\n IFC4X32.IfcConstructionResource = IfcConstructionResource;\n class IfcControl extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.type = 3293443760;\n }\n }\n IFC4X32.IfcControl = IfcControl;\n class IfcCosineSpiral extends IfcSpiral {\n constructor(Position, CosineTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.CosineTerm = CosineTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 2000195564;\n }\n }\n IFC4X32.IfcCosineSpiral = IfcCosineSpiral;\n class IfcCostItem extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, CostValues, CostQuantities) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.CostValues = CostValues;\n this.CostQuantities = CostQuantities;\n this.type = 3895139033;\n }\n }\n IFC4X32.IfcCostItem = IfcCostItem;\n class IfcCostSchedule extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, SubmittedOn, UpdateDate) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.SubmittedOn = SubmittedOn;\n this.UpdateDate = UpdateDate;\n this.type = 1419761937;\n }\n }\n IFC4X32.IfcCostSchedule = IfcCostSchedule;\n class IfcCourseType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4189326743;\n }\n }\n IFC4X32.IfcCourseType = IfcCourseType;\n class IfcCoveringType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1916426348;\n }\n }\n IFC4X32.IfcCoveringType = IfcCoveringType;\n class IfcCrewResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3295246426;\n }\n }\n IFC4X32.IfcCrewResource = IfcCrewResource;\n class IfcCurtainWallType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1457835157;\n }\n }\n IFC4X32.IfcCurtainWallType = IfcCurtainWallType;\n class IfcCylindricalSurface extends IfcElementarySurface {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 1213902940;\n }\n }\n IFC4X32.IfcCylindricalSurface = IfcCylindricalSurface;\n class IfcDeepFoundationType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1306400036;\n }\n }\n IFC4X32.IfcDeepFoundationType = IfcDeepFoundationType;\n class IfcDirectrixDerivedReferenceSweptAreaSolid extends IfcFixedReferenceSweptAreaSolid {\n constructor(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference) {\n super(SweptArea, Position, Directrix, StartParam, EndParam, FixedReference);\n this.SweptArea = SweptArea;\n this.Position = Position;\n this.Directrix = Directrix;\n this.StartParam = StartParam;\n this.EndParam = EndParam;\n this.FixedReference = FixedReference;\n this.type = 4234616927;\n }\n }\n IFC4X32.IfcDirectrixDerivedReferenceSweptAreaSolid = IfcDirectrixDerivedReferenceSweptAreaSolid;\n class IfcDistributionElementType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3256556792;\n }\n }\n IFC4X32.IfcDistributionElementType = IfcDistributionElementType;\n class IfcDistributionFlowElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3849074793;\n }\n }\n IFC4X32.IfcDistributionFlowElementType = IfcDistributionFlowElementType;\n class IfcDoorLiningProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, LiningDepth, LiningThickness, ThresholdDepth, ThresholdThickness, TransomThickness, TransomOffset, LiningOffset, ThresholdOffset, CasingThickness, CasingDepth, ShapeAspectStyle, LiningToPanelOffsetX, LiningToPanelOffsetY) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.LiningDepth = LiningDepth;\n this.LiningThickness = LiningThickness;\n this.ThresholdDepth = ThresholdDepth;\n this.ThresholdThickness = ThresholdThickness;\n this.TransomThickness = TransomThickness;\n this.TransomOffset = TransomOffset;\n this.LiningOffset = LiningOffset;\n this.ThresholdOffset = ThresholdOffset;\n this.CasingThickness = CasingThickness;\n this.CasingDepth = CasingDepth;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.LiningToPanelOffsetX = LiningToPanelOffsetX;\n this.LiningToPanelOffsetY = LiningToPanelOffsetY;\n this.type = 2963535650;\n }\n }\n IFC4X32.IfcDoorLiningProperties = IfcDoorLiningProperties;\n class IfcDoorPanelProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, PanelDepth, PanelOperation, PanelWidth, PanelPosition, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.PanelDepth = PanelDepth;\n this.PanelOperation = PanelOperation;\n this.PanelWidth = PanelWidth;\n this.PanelPosition = PanelPosition;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 1714330368;\n }\n }\n IFC4X32.IfcDoorPanelProperties = IfcDoorPanelProperties;\n class IfcDoorType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, OperationType, ParameterTakesPrecedence, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 2323601079;\n }\n }\n IFC4X32.IfcDoorType = IfcDoorType;\n class IfcDraughtingPreDefinedColour extends IfcPreDefinedColour {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 445594917;\n }\n }\n IFC4X32.IfcDraughtingPreDefinedColour = IfcDraughtingPreDefinedColour;\n class IfcDraughtingPreDefinedCurveFont extends IfcPreDefinedCurveFont {\n constructor(Name) {\n super(Name);\n this.Name = Name;\n this.type = 4006246654;\n }\n }\n IFC4X32.IfcDraughtingPreDefinedCurveFont = IfcDraughtingPreDefinedCurveFont;\n class IfcElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1758889154;\n }\n }\n IFC4X32.IfcElement = IfcElement;\n class IfcElementAssembly extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, AssemblyPlace, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.AssemblyPlace = AssemblyPlace;\n this.PredefinedType = PredefinedType;\n this.type = 4123344466;\n }\n }\n IFC4X32.IfcElementAssembly = IfcElementAssembly;\n class IfcElementAssemblyType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2397081782;\n }\n }\n IFC4X32.IfcElementAssemblyType = IfcElementAssemblyType;\n class IfcElementComponent extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1623761950;\n }\n }\n IFC4X32.IfcElementComponent = IfcElementComponent;\n class IfcElementComponentType extends IfcElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2590856083;\n }\n }\n IFC4X32.IfcElementComponentType = IfcElementComponentType;\n class IfcEllipse extends IfcConic {\n constructor(Position, SemiAxis1, SemiAxis2) {\n super(Position);\n this.Position = Position;\n this.SemiAxis1 = SemiAxis1;\n this.SemiAxis2 = SemiAxis2;\n this.type = 1704287377;\n }\n }\n IFC4X32.IfcEllipse = IfcEllipse;\n class IfcEnergyConversionDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2107101300;\n }\n }\n IFC4X32.IfcEnergyConversionDeviceType = IfcEnergyConversionDeviceType;\n class IfcEngineType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 132023988;\n }\n }\n IFC4X32.IfcEngineType = IfcEngineType;\n class IfcEvaporativeCoolerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3174744832;\n }\n }\n IFC4X32.IfcEvaporativeCoolerType = IfcEvaporativeCoolerType;\n class IfcEvaporatorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3390157468;\n }\n }\n IFC4X32.IfcEvaporatorType = IfcEvaporatorType;\n class IfcEvent extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType, EventTriggerType, UserDefinedEventTriggerType, EventOccurenceTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.EventTriggerType = EventTriggerType;\n this.UserDefinedEventTriggerType = UserDefinedEventTriggerType;\n this.EventOccurenceTime = EventOccurenceTime;\n this.type = 4148101412;\n }\n }\n IFC4X32.IfcEvent = IfcEvent;\n class IfcExternalSpatialStructureElement extends IfcSpatialElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.type = 2853485674;\n }\n }\n IFC4X32.IfcExternalSpatialStructureElement = IfcExternalSpatialStructureElement;\n class IfcFacetedBrep extends IfcManifoldSolidBrep {\n constructor(Outer) {\n super(Outer);\n this.Outer = Outer;\n this.type = 807026263;\n }\n }\n IFC4X32.IfcFacetedBrep = IfcFacetedBrep;\n class IfcFacetedBrepWithVoids extends IfcFacetedBrep {\n constructor(Outer, Voids) {\n super(Outer);\n this.Outer = Outer;\n this.Voids = Voids;\n this.type = 3737207727;\n }\n }\n IFC4X32.IfcFacetedBrepWithVoids = IfcFacetedBrepWithVoids;\n class IfcFacility extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.type = 24185140;\n }\n }\n IFC4X32.IfcFacility = IfcFacility;\n class IfcFacilityPart extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.type = 1310830890;\n }\n }\n IFC4X32.IfcFacilityPart = IfcFacilityPart;\n class IfcFacilityPartCommon extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 4228831410;\n }\n }\n IFC4X32.IfcFacilityPartCommon = IfcFacilityPartCommon;\n class IfcFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 647756555;\n }\n }\n IFC4X32.IfcFastener = IfcFastener;\n class IfcFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2489546625;\n }\n }\n IFC4X32.IfcFastenerType = IfcFastenerType;\n class IfcFeatureElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2827207264;\n }\n }\n IFC4X32.IfcFeatureElement = IfcFeatureElement;\n class IfcFeatureElementAddition extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2143335405;\n }\n }\n IFC4X32.IfcFeatureElementAddition = IfcFeatureElementAddition;\n class IfcFeatureElementSubtraction extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1287392070;\n }\n }\n IFC4X32.IfcFeatureElementSubtraction = IfcFeatureElementSubtraction;\n class IfcFlowControllerType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3907093117;\n }\n }\n IFC4X32.IfcFlowControllerType = IfcFlowControllerType;\n class IfcFlowFittingType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3198132628;\n }\n }\n IFC4X32.IfcFlowFittingType = IfcFlowFittingType;\n class IfcFlowMeterType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3815607619;\n }\n }\n IFC4X32.IfcFlowMeterType = IfcFlowMeterType;\n class IfcFlowMovingDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1482959167;\n }\n }\n IFC4X32.IfcFlowMovingDeviceType = IfcFlowMovingDeviceType;\n class IfcFlowSegmentType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1834744321;\n }\n }\n IFC4X32.IfcFlowSegmentType = IfcFlowSegmentType;\n class IfcFlowStorageDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 1339347760;\n }\n }\n IFC4X32.IfcFlowStorageDeviceType = IfcFlowStorageDeviceType;\n class IfcFlowTerminalType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2297155007;\n }\n }\n IFC4X32.IfcFlowTerminalType = IfcFlowTerminalType;\n class IfcFlowTreatmentDeviceType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 3009222698;\n }\n }\n IFC4X32.IfcFlowTreatmentDeviceType = IfcFlowTreatmentDeviceType;\n class IfcFootingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1893162501;\n }\n }\n IFC4X32.IfcFootingType = IfcFootingType;\n class IfcFurnishingElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 263784265;\n }\n }\n IFC4X32.IfcFurnishingElement = IfcFurnishingElement;\n class IfcFurniture extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1509553395;\n }\n }\n IFC4X32.IfcFurniture = IfcFurniture;\n class IfcGeographicElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3493046030;\n }\n }\n IFC4X32.IfcGeographicElement = IfcGeographicElement;\n class IfcGeotechnicalElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4230923436;\n }\n }\n IFC4X32.IfcGeotechnicalElement = IfcGeotechnicalElement;\n class IfcGeotechnicalStratum extends IfcGeotechnicalElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1594536857;\n }\n }\n IFC4X32.IfcGeotechnicalStratum = IfcGeotechnicalStratum;\n class IfcGradientCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect, BaseCurve, EndPoint) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.BaseCurve = BaseCurve;\n this.EndPoint = EndPoint;\n this.type = 2898700619;\n }\n }\n IFC4X32.IfcGradientCurve = IfcGradientCurve;\n class IfcGroup extends IfcObject {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2706460486;\n }\n }\n IFC4X32.IfcGroup = IfcGroup;\n class IfcHeatExchangerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1251058090;\n }\n }\n IFC4X32.IfcHeatExchangerType = IfcHeatExchangerType;\n class IfcHumidifierType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1806887404;\n }\n }\n IFC4X32.IfcHumidifierType = IfcHumidifierType;\n class IfcImpactProtectionDevice extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2568555532;\n }\n }\n IFC4X32.IfcImpactProtectionDevice = IfcImpactProtectionDevice;\n class IfcImpactProtectionDeviceType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3948183225;\n }\n }\n IFC4X32.IfcImpactProtectionDeviceType = IfcImpactProtectionDeviceType;\n class IfcIndexedPolyCurve extends IfcBoundedCurve {\n constructor(Points, Segments, SelfIntersect) {\n super();\n this.Points = Points;\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 2571569899;\n }\n }\n IFC4X32.IfcIndexedPolyCurve = IfcIndexedPolyCurve;\n class IfcInterceptorType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3946677679;\n }\n }\n IFC4X32.IfcInterceptorType = IfcInterceptorType;\n class IfcIntersectionCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3113134337;\n }\n }\n IFC4X32.IfcIntersectionCurve = IfcIntersectionCurve;\n class IfcInventory extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, Jurisdiction, ResponsiblePersons, LastUpdateDate, CurrentValue, OriginalValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.Jurisdiction = Jurisdiction;\n this.ResponsiblePersons = ResponsiblePersons;\n this.LastUpdateDate = LastUpdateDate;\n this.CurrentValue = CurrentValue;\n this.OriginalValue = OriginalValue;\n this.type = 2391368822;\n }\n }\n IFC4X32.IfcInventory = IfcInventory;\n class IfcJunctionBoxType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4288270099;\n }\n }\n IFC4X32.IfcJunctionBoxType = IfcJunctionBoxType;\n class IfcKerbType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, Mountable) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.Mountable = Mountable;\n this.type = 679976338;\n }\n }\n IFC4X32.IfcKerbType = IfcKerbType;\n class IfcLaborResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3827777499;\n }\n }\n IFC4X32.IfcLaborResource = IfcLaborResource;\n class IfcLampType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1051575348;\n }\n }\n IFC4X32.IfcLampType = IfcLampType;\n class IfcLightFixtureType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1161773419;\n }\n }\n IFC4X32.IfcLightFixtureType = IfcLightFixtureType;\n class IfcLinearElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 2176059722;\n }\n }\n IFC4X32.IfcLinearElement = IfcLinearElement;\n class IfcLiquidTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1770583370;\n }\n }\n IFC4X32.IfcLiquidTerminalType = IfcLiquidTerminalType;\n class IfcMarineFacility extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 525669439;\n }\n }\n IFC4X32.IfcMarineFacility = IfcMarineFacility;\n class IfcMarinePart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 976884017;\n }\n }\n IFC4X32.IfcMarinePart = IfcMarinePart;\n class IfcMechanicalFastener extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NominalDiameter, NominalLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.PredefinedType = PredefinedType;\n this.type = 377706215;\n }\n }\n IFC4X32.IfcMechanicalFastener = IfcMechanicalFastener;\n class IfcMechanicalFastenerType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, NominalLength) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.NominalLength = NominalLength;\n this.type = 2108223431;\n }\n }\n IFC4X32.IfcMechanicalFastenerType = IfcMechanicalFastenerType;\n class IfcMedicalDeviceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1114901282;\n }\n }\n IFC4X32.IfcMedicalDeviceType = IfcMedicalDeviceType;\n class IfcMemberType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3181161470;\n }\n }\n IFC4X32.IfcMemberType = IfcMemberType;\n class IfcMobileTelecommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1950438474;\n }\n }\n IFC4X32.IfcMobileTelecommunicationsApplianceType = IfcMobileTelecommunicationsApplianceType;\n class IfcMooringDeviceType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 710110818;\n }\n }\n IFC4X32.IfcMooringDeviceType = IfcMooringDeviceType;\n class IfcMotorConnectionType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 977012517;\n }\n }\n IFC4X32.IfcMotorConnectionType = IfcMotorConnectionType;\n class IfcNavigationElementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 506776471;\n }\n }\n IFC4X32.IfcNavigationElementType = IfcNavigationElementType;\n class IfcOccupant extends IfcActor {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, TheActor);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheActor = TheActor;\n this.PredefinedType = PredefinedType;\n this.type = 4143007308;\n }\n }\n IFC4X32.IfcOccupant = IfcOccupant;\n class IfcOpeningElement extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3588315303;\n }\n }\n IFC4X32.IfcOpeningElement = IfcOpeningElement;\n class IfcOutletType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2837617999;\n }\n }\n IFC4X32.IfcOutletType = IfcOutletType;\n class IfcPavementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 514975943;\n }\n }\n IFC4X32.IfcPavementType = IfcPavementType;\n class IfcPerformanceHistory extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LifeCyclePhase, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LifeCyclePhase = LifeCyclePhase;\n this.PredefinedType = PredefinedType;\n this.type = 2382730787;\n }\n }\n IFC4X32.IfcPerformanceHistory = IfcPerformanceHistory;\n class IfcPermeableCoveringProperties extends IfcPreDefinedPropertySet {\n constructor(GlobalId, OwnerHistory, Name, Description, OperationType, PanelPosition, FrameDepth, FrameThickness, ShapeAspectStyle) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.OperationType = OperationType;\n this.PanelPosition = PanelPosition;\n this.FrameDepth = FrameDepth;\n this.FrameThickness = FrameThickness;\n this.ShapeAspectStyle = ShapeAspectStyle;\n this.type = 3566463478;\n }\n }\n IFC4X32.IfcPermeableCoveringProperties = IfcPermeableCoveringProperties;\n class IfcPermit extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3327091369;\n }\n }\n IFC4X32.IfcPermit = IfcPermit;\n class IfcPileType extends IfcDeepFoundationType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1158309216;\n }\n }\n IFC4X32.IfcPileType = IfcPileType;\n class IfcPipeFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 804291784;\n }\n }\n IFC4X32.IfcPipeFittingType = IfcPipeFittingType;\n class IfcPipeSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4231323485;\n }\n }\n IFC4X32.IfcPipeSegmentType = IfcPipeSegmentType;\n class IfcPlateType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4017108033;\n }\n }\n IFC4X32.IfcPlateType = IfcPlateType;\n class IfcPolygonalFaceSet extends IfcTessellatedFaceSet {\n constructor(Coordinates, Closed, Faces, PnIndex) {\n super(Coordinates, Closed);\n this.Coordinates = Coordinates;\n this.Closed = Closed;\n this.Faces = Faces;\n this.PnIndex = PnIndex;\n this.type = 2839578677;\n }\n }\n IFC4X32.IfcPolygonalFaceSet = IfcPolygonalFaceSet;\n class IfcPolyline extends IfcBoundedCurve {\n constructor(Points) {\n super();\n this.Points = Points;\n this.type = 3724593414;\n }\n }\n IFC4X32.IfcPolyline = IfcPolyline;\n class IfcPort extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 3740093272;\n }\n }\n IFC4X32.IfcPort = IfcPort;\n class IfcPositioningElement extends IfcProduct {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1946335990;\n }\n }\n IFC4X32.IfcPositioningElement = IfcPositioningElement;\n class IfcProcedure extends IfcProcess {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.PredefinedType = PredefinedType;\n this.type = 2744685151;\n }\n }\n IFC4X32.IfcProcedure = IfcProcedure;\n class IfcProjectOrder extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 2904328755;\n }\n }\n IFC4X32.IfcProjectOrder = IfcProjectOrder;\n class IfcProjectionElement extends IfcFeatureElementAddition {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3651124850;\n }\n }\n IFC4X32.IfcProjectionElement = IfcProjectionElement;\n class IfcProtectiveDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1842657554;\n }\n }\n IFC4X32.IfcProtectiveDeviceType = IfcProtectiveDeviceType;\n class IfcPumpType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2250791053;\n }\n }\n IFC4X32.IfcPumpType = IfcPumpType;\n class IfcRailType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1763565496;\n }\n }\n IFC4X32.IfcRailType = IfcRailType;\n class IfcRailingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2893384427;\n }\n }\n IFC4X32.IfcRailingType = IfcRailingType;\n class IfcRailway extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 3992365140;\n }\n }\n IFC4X32.IfcRailway = IfcRailway;\n class IfcRailwayPart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 1891881377;\n }\n }\n IFC4X32.IfcRailwayPart = IfcRailwayPart;\n class IfcRampFlightType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2324767716;\n }\n }\n IFC4X32.IfcRampFlightType = IfcRampFlightType;\n class IfcRampType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1469900589;\n }\n }\n IFC4X32.IfcRampType = IfcRampType;\n class IfcRationalBSplineSurfaceWithKnots extends IfcBSplineSurfaceWithKnots {\n constructor(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec, WeightsData) {\n super(UDegree, VDegree, ControlPointsList, SurfaceForm, UClosed, VClosed, SelfIntersect, UMultiplicities, VMultiplicities, UKnots, VKnots, KnotSpec);\n this.UDegree = UDegree;\n this.VDegree = VDegree;\n this.ControlPointsList = ControlPointsList;\n this.SurfaceForm = SurfaceForm;\n this.UClosed = UClosed;\n this.VClosed = VClosed;\n this.SelfIntersect = SelfIntersect;\n this.UMultiplicities = UMultiplicities;\n this.VMultiplicities = VMultiplicities;\n this.UKnots = UKnots;\n this.VKnots = VKnots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 683857671;\n }\n }\n IFC4X32.IfcRationalBSplineSurfaceWithKnots = IfcRationalBSplineSurfaceWithKnots;\n class IfcReferent extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 4021432810;\n }\n }\n IFC4X32.IfcReferent = IfcReferent;\n class IfcReinforcingElement extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.type = 3027567501;\n }\n }\n IFC4X32.IfcReinforcingElement = IfcReinforcingElement;\n class IfcReinforcingElementType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 964333572;\n }\n }\n IFC4X32.IfcReinforcingElementType = IfcReinforcingElementType;\n class IfcReinforcingMesh extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.PredefinedType = PredefinedType;\n this.type = 2320036040;\n }\n }\n IFC4X32.IfcReinforcingMesh = IfcReinforcingMesh;\n class IfcReinforcingMeshType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, MeshLength, MeshWidth, LongitudinalBarNominalDiameter, TransverseBarNominalDiameter, LongitudinalBarCrossSectionArea, TransverseBarCrossSectionArea, LongitudinalBarSpacing, TransverseBarSpacing, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.MeshLength = MeshLength;\n this.MeshWidth = MeshWidth;\n this.LongitudinalBarNominalDiameter = LongitudinalBarNominalDiameter;\n this.TransverseBarNominalDiameter = TransverseBarNominalDiameter;\n this.LongitudinalBarCrossSectionArea = LongitudinalBarCrossSectionArea;\n this.TransverseBarCrossSectionArea = TransverseBarCrossSectionArea;\n this.LongitudinalBarSpacing = LongitudinalBarSpacing;\n this.TransverseBarSpacing = TransverseBarSpacing;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2310774935;\n }\n }\n IFC4X32.IfcReinforcingMeshType = IfcReinforcingMeshType;\n class IfcRelAdheresToElement extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingElement, RelatedSurfaceFeatures) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingElement = RelatingElement;\n this.RelatedSurfaceFeatures = RelatedSurfaceFeatures;\n this.type = 3818125796;\n }\n }\n IFC4X32.IfcRelAdheresToElement = IfcRelAdheresToElement;\n class IfcRelAggregates extends IfcRelDecomposes {\n constructor(GlobalId, OwnerHistory, Name, Description, RelatingObject, RelatedObjects) {\n super(GlobalId, OwnerHistory, Name, Description);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.RelatingObject = RelatingObject;\n this.RelatedObjects = RelatedObjects;\n this.type = 160246688;\n }\n }\n IFC4X32.IfcRelAggregates = IfcRelAggregates;\n class IfcRoad extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 146592293;\n }\n }\n IFC4X32.IfcRoad = IfcRoad;\n class IfcRoadPart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 550521510;\n }\n }\n IFC4X32.IfcRoadPart = IfcRoadPart;\n class IfcRoofType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2781568857;\n }\n }\n IFC4X32.IfcRoofType = IfcRoofType;\n class IfcSanitaryTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1768891740;\n }\n }\n IFC4X32.IfcSanitaryTerminalType = IfcSanitaryTerminalType;\n class IfcSeamCurve extends IfcSurfaceCurve {\n constructor(Curve3D, AssociatedGeometry, MasterRepresentation) {\n super(Curve3D, AssociatedGeometry, MasterRepresentation);\n this.Curve3D = Curve3D;\n this.AssociatedGeometry = AssociatedGeometry;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 2157484638;\n }\n }\n IFC4X32.IfcSeamCurve = IfcSeamCurve;\n class IfcSecondOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 3649235739;\n }\n }\n IFC4X32.IfcSecondOrderPolynomialSpiral = IfcSecondOrderPolynomialSpiral;\n class IfcSegmentedReferenceCurve extends IfcCompositeCurve {\n constructor(Segments, SelfIntersect, BaseCurve, EndPoint) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.BaseCurve = BaseCurve;\n this.EndPoint = EndPoint;\n this.type = 544395925;\n }\n }\n IFC4X32.IfcSegmentedReferenceCurve = IfcSegmentedReferenceCurve;\n class IfcSeventhOrderPolynomialSpiral extends IfcSpiral {\n constructor(Position, SepticTerm, SexticTerm, QuinticTerm, QuarticTerm, CubicTerm, QuadraticTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.SepticTerm = SepticTerm;\n this.SexticTerm = SexticTerm;\n this.QuinticTerm = QuinticTerm;\n this.QuarticTerm = QuarticTerm;\n this.CubicTerm = CubicTerm;\n this.QuadraticTerm = QuadraticTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 1027922057;\n }\n }\n IFC4X32.IfcSeventhOrderPolynomialSpiral = IfcSeventhOrderPolynomialSpiral;\n class IfcShadingDeviceType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4074543187;\n }\n }\n IFC4X32.IfcShadingDeviceType = IfcShadingDeviceType;\n class IfcSign extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 33720170;\n }\n }\n IFC4X32.IfcSign = IfcSign;\n class IfcSignType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3599934289;\n }\n }\n IFC4X32.IfcSignType = IfcSignType;\n class IfcSignalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1894708472;\n }\n }\n IFC4X32.IfcSignalType = IfcSignalType;\n class IfcSineSpiral extends IfcSpiral {\n constructor(Position, SineTerm, LinearTerm, ConstantTerm) {\n super(Position);\n this.Position = Position;\n this.SineTerm = SineTerm;\n this.LinearTerm = LinearTerm;\n this.ConstantTerm = ConstantTerm;\n this.type = 42703149;\n }\n }\n IFC4X32.IfcSineSpiral = IfcSineSpiral;\n class IfcSite extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, RefLatitude, RefLongitude, RefElevation, LandTitleNumber, SiteAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.RefLatitude = RefLatitude;\n this.RefLongitude = RefLongitude;\n this.RefElevation = RefElevation;\n this.LandTitleNumber = LandTitleNumber;\n this.SiteAddress = SiteAddress;\n this.type = 4097777520;\n }\n }\n IFC4X32.IfcSite = IfcSite;\n class IfcSlabType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2533589738;\n }\n }\n IFC4X32.IfcSlabType = IfcSlabType;\n class IfcSolarDeviceType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1072016465;\n }\n }\n IFC4X32.IfcSolarDeviceType = IfcSolarDeviceType;\n class IfcSpace extends IfcSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType, ElevationWithFlooring) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.ElevationWithFlooring = ElevationWithFlooring;\n this.type = 3856911033;\n }\n }\n IFC4X32.IfcSpace = IfcSpace;\n class IfcSpaceHeaterType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1305183839;\n }\n }\n IFC4X32.IfcSpaceHeaterType = IfcSpaceHeaterType;\n class IfcSpaceType extends IfcSpatialStructureElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3812236995;\n }\n }\n IFC4X32.IfcSpaceType = IfcSpaceType;\n class IfcStackTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3112655638;\n }\n }\n IFC4X32.IfcStackTerminalType = IfcStackTerminalType;\n class IfcStairFlightType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1039846685;\n }\n }\n IFC4X32.IfcStairFlightType = IfcStairFlightType;\n class IfcStairType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 338393293;\n }\n }\n IFC4X32.IfcStairType = IfcStairType;\n class IfcStructuralAction extends IfcStructuralActivity {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 682877961;\n }\n }\n IFC4X32.IfcStructuralAction = IfcStructuralAction;\n class IfcStructuralConnection extends IfcStructuralItem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1179482911;\n }\n }\n IFC4X32.IfcStructuralConnection = IfcStructuralConnection;\n class IfcStructuralCurveAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1004757350;\n }\n }\n IFC4X32.IfcStructuralCurveAction = IfcStructuralCurveAction;\n class IfcStructuralCurveConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, AxisDirection) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.AxisDirection = AxisDirection;\n this.type = 4243806635;\n }\n }\n IFC4X32.IfcStructuralCurveConnection = IfcStructuralCurveConnection;\n class IfcStructuralCurveMember extends IfcStructuralMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 214636428;\n }\n }\n IFC4X32.IfcStructuralCurveMember = IfcStructuralCurveMember;\n class IfcStructuralCurveMemberVarying extends IfcStructuralCurveMember {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType, Axis);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.Axis = Axis;\n this.type = 2445595289;\n }\n }\n IFC4X32.IfcStructuralCurveMemberVarying = IfcStructuralCurveMemberVarying;\n class IfcStructuralCurveReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.PredefinedType = PredefinedType;\n this.type = 2757150158;\n }\n }\n IFC4X32.IfcStructuralCurveReaction = IfcStructuralCurveReaction;\n class IfcStructuralLinearAction extends IfcStructuralCurveAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1807405624;\n }\n }\n IFC4X32.IfcStructuralLinearAction = IfcStructuralLinearAction;\n class IfcStructuralLoadGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.type = 1252848954;\n }\n }\n IFC4X32.IfcStructuralLoadGroup = IfcStructuralLoadGroup;\n class IfcStructuralPointAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.type = 2082059205;\n }\n }\n IFC4X32.IfcStructuralPointAction = IfcStructuralPointAction;\n class IfcStructuralPointConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition, ConditionCoordinateSystem) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.ConditionCoordinateSystem = ConditionCoordinateSystem;\n this.type = 734778138;\n }\n }\n IFC4X32.IfcStructuralPointConnection = IfcStructuralPointConnection;\n class IfcStructuralPointReaction extends IfcStructuralReaction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.type = 1235345126;\n }\n }\n IFC4X32.IfcStructuralPointReaction = IfcStructuralPointReaction;\n class IfcStructuralResultGroup extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, TheoryType, ResultForLoadGroup, IsLinear) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.TheoryType = TheoryType;\n this.ResultForLoadGroup = ResultForLoadGroup;\n this.IsLinear = IsLinear;\n this.type = 2986769608;\n }\n }\n IFC4X32.IfcStructuralResultGroup = IfcStructuralResultGroup;\n class IfcStructuralSurfaceAction extends IfcStructuralAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 3657597509;\n }\n }\n IFC4X32.IfcStructuralSurfaceAction = IfcStructuralSurfaceAction;\n class IfcStructuralSurfaceConnection extends IfcStructuralConnection {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedCondition);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedCondition = AppliedCondition;\n this.type = 1975003073;\n }\n }\n IFC4X32.IfcStructuralSurfaceConnection = IfcStructuralSurfaceConnection;\n class IfcSubContractResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 148013059;\n }\n }\n IFC4X32.IfcSubContractResource = IfcSubContractResource;\n class IfcSurfaceFeature extends IfcFeatureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3101698114;\n }\n }\n IFC4X32.IfcSurfaceFeature = IfcSurfaceFeature;\n class IfcSwitchingDeviceType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2315554128;\n }\n }\n IFC4X32.IfcSwitchingDeviceType = IfcSwitchingDeviceType;\n class IfcSystem extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.type = 2254336722;\n }\n }\n IFC4X32.IfcSystem = IfcSystem;\n class IfcSystemFurnitureElement extends IfcFurnishingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 413509423;\n }\n }\n IFC4X32.IfcSystemFurnitureElement = IfcSystemFurnitureElement;\n class IfcTankType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 5716631;\n }\n }\n IFC4X32.IfcTankType = IfcTankType;\n class IfcTendon extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType, NominalDiameter, CrossSectionArea, TensionForce, PreStress, FrictionCoefficient, AnchorageSlip, MinCurvatureRadius) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.TensionForce = TensionForce;\n this.PreStress = PreStress;\n this.FrictionCoefficient = FrictionCoefficient;\n this.AnchorageSlip = AnchorageSlip;\n this.MinCurvatureRadius = MinCurvatureRadius;\n this.type = 3824725483;\n }\n }\n IFC4X32.IfcTendon = IfcTendon;\n class IfcTendonAnchor extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 2347447852;\n }\n }\n IFC4X32.IfcTendonAnchor = IfcTendonAnchor;\n class IfcTendonAnchorType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3081323446;\n }\n }\n IFC4X32.IfcTendonAnchorType = IfcTendonAnchorType;\n class IfcTendonConduit extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.PredefinedType = PredefinedType;\n this.type = 3663046924;\n }\n }\n IFC4X32.IfcTendonConduit = IfcTendonConduit;\n class IfcTendonConduitType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2281632017;\n }\n }\n IFC4X32.IfcTendonConduitType = IfcTendonConduitType;\n class IfcTendonType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, SheathDiameter) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.SheathDiameter = SheathDiameter;\n this.type = 2415094496;\n }\n }\n IFC4X32.IfcTendonType = IfcTendonType;\n class IfcTrackElementType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 618700268;\n }\n }\n IFC4X32.IfcTrackElementType = IfcTrackElementType;\n class IfcTransformerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1692211062;\n }\n }\n IFC4X32.IfcTransformerType = IfcTransformerType;\n class IfcTransportElementType extends IfcTransportationDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2097647324;\n }\n }\n IFC4X32.IfcTransportElementType = IfcTransportElementType;\n class IfcTransportationDevice extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1953115116;\n }\n }\n IFC4X32.IfcTransportationDevice = IfcTransportationDevice;\n class IfcTrimmedCurve extends IfcBoundedCurve {\n constructor(BasisCurve, Trim1, Trim2, SenseAgreement, MasterRepresentation) {\n super();\n this.BasisCurve = BasisCurve;\n this.Trim1 = Trim1;\n this.Trim2 = Trim2;\n this.SenseAgreement = SenseAgreement;\n this.MasterRepresentation = MasterRepresentation;\n this.type = 3593883385;\n }\n }\n IFC4X32.IfcTrimmedCurve = IfcTrimmedCurve;\n class IfcTubeBundleType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1600972822;\n }\n }\n IFC4X32.IfcTubeBundleType = IfcTubeBundleType;\n class IfcUnitaryEquipmentType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1911125066;\n }\n }\n IFC4X32.IfcUnitaryEquipmentType = IfcUnitaryEquipmentType;\n class IfcValveType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 728799441;\n }\n }\n IFC4X32.IfcValveType = IfcValveType;\n class IfcVehicle extends IfcTransportationDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 840318589;\n }\n }\n IFC4X32.IfcVehicle = IfcVehicle;\n class IfcVibrationDamper extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1530820697;\n }\n }\n IFC4X32.IfcVibrationDamper = IfcVibrationDamper;\n class IfcVibrationDamperType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3956297820;\n }\n }\n IFC4X32.IfcVibrationDamperType = IfcVibrationDamperType;\n class IfcVibrationIsolator extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391383451;\n }\n }\n IFC4X32.IfcVibrationIsolator = IfcVibrationIsolator;\n class IfcVibrationIsolatorType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3313531582;\n }\n }\n IFC4X32.IfcVibrationIsolatorType = IfcVibrationIsolatorType;\n class IfcVirtualElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2769231204;\n }\n }\n IFC4X32.IfcVirtualElement = IfcVirtualElement;\n class IfcVoidingFeature extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 926996030;\n }\n }\n IFC4X32.IfcVoidingFeature = IfcVoidingFeature;\n class IfcWallType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1898987631;\n }\n }\n IFC4X32.IfcWallType = IfcWallType;\n class IfcWasteTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1133259667;\n }\n }\n IFC4X32.IfcWasteTerminalType = IfcWasteTerminalType;\n class IfcWindowType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, PartitioningType, ParameterTakesPrecedence, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.ParameterTakesPrecedence = ParameterTakesPrecedence;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 4009809668;\n }\n }\n IFC4X32.IfcWindowType = IfcWindowType;\n class IfcWorkCalendar extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, WorkingTimes, ExceptionTimes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.WorkingTimes = WorkingTimes;\n this.ExceptionTimes = ExceptionTimes;\n this.PredefinedType = PredefinedType;\n this.type = 4088093105;\n }\n }\n IFC4X32.IfcWorkCalendar = IfcWorkCalendar;\n class IfcWorkControl extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.type = 1028945134;\n }\n }\n IFC4X32.IfcWorkControl = IfcWorkControl;\n class IfcWorkPlan extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 4218914973;\n }\n }\n IFC4X32.IfcWorkPlan = IfcWorkPlan;\n class IfcWorkSchedule extends IfcWorkControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, CreationDate, Creators, Purpose, Duration, TotalFloat, StartTime, FinishTime);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.CreationDate = CreationDate;\n this.Creators = Creators;\n this.Purpose = Purpose;\n this.Duration = Duration;\n this.TotalFloat = TotalFloat;\n this.StartTime = StartTime;\n this.FinishTime = FinishTime;\n this.PredefinedType = PredefinedType;\n this.type = 3342526732;\n }\n }\n IFC4X32.IfcWorkSchedule = IfcWorkSchedule;\n class IfcZone extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.type = 1033361043;\n }\n }\n IFC4X32.IfcZone = IfcZone;\n class IfcActionRequest extends IfcControl {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, PredefinedType, Status, LongDescription) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.PredefinedType = PredefinedType;\n this.Status = Status;\n this.LongDescription = LongDescription;\n this.type = 3821786052;\n }\n }\n IFC4X32.IfcActionRequest = IfcActionRequest;\n class IfcAirTerminalBoxType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1411407467;\n }\n }\n IFC4X32.IfcAirTerminalBoxType = IfcAirTerminalBoxType;\n class IfcAirTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3352864051;\n }\n }\n IFC4X32.IfcAirTerminalType = IfcAirTerminalType;\n class IfcAirToAirHeatRecoveryType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1871374353;\n }\n }\n IFC4X32.IfcAirToAirHeatRecoveryType = IfcAirToAirHeatRecoveryType;\n class IfcAlignmentCant extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, RailHeadDistance) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.RailHeadDistance = RailHeadDistance;\n this.type = 4266260250;\n }\n }\n IFC4X32.IfcAlignmentCant = IfcAlignmentCant;\n class IfcAlignmentHorizontal extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1545765605;\n }\n }\n IFC4X32.IfcAlignmentHorizontal = IfcAlignmentHorizontal;\n class IfcAlignmentSegment extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, DesignParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.DesignParameters = DesignParameters;\n this.type = 317615605;\n }\n }\n IFC4X32.IfcAlignmentSegment = IfcAlignmentSegment;\n class IfcAlignmentVertical extends IfcLinearElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1662888072;\n }\n }\n IFC4X32.IfcAlignmentVertical = IfcAlignmentVertical;\n class IfcAsset extends IfcGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, OriginalValue, CurrentValue, TotalReplacementCost, Owner, User, ResponsiblePerson, IncorporationDate, DepreciatedValue) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.OriginalValue = OriginalValue;\n this.CurrentValue = CurrentValue;\n this.TotalReplacementCost = TotalReplacementCost;\n this.Owner = Owner;\n this.User = User;\n this.ResponsiblePerson = ResponsiblePerson;\n this.IncorporationDate = IncorporationDate;\n this.DepreciatedValue = DepreciatedValue;\n this.type = 3460190687;\n }\n }\n IFC4X32.IfcAsset = IfcAsset;\n class IfcAudioVisualApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1532957894;\n }\n }\n IFC4X32.IfcAudioVisualApplianceType = IfcAudioVisualApplianceType;\n class IfcBSplineCurve extends IfcBoundedCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect) {\n super();\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.type = 1967976161;\n }\n }\n IFC4X32.IfcBSplineCurve = IfcBSplineCurve;\n class IfcBSplineCurveWithKnots extends IfcBSplineCurve {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.type = 2461110595;\n }\n }\n IFC4X32.IfcBSplineCurveWithKnots = IfcBSplineCurveWithKnots;\n class IfcBeamType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 819618141;\n }\n }\n IFC4X32.IfcBeamType = IfcBeamType;\n class IfcBearingType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3649138523;\n }\n }\n IFC4X32.IfcBearingType = IfcBearingType;\n class IfcBoilerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 231477066;\n }\n }\n IFC4X32.IfcBoilerType = IfcBoilerType;\n class IfcBoundaryCurve extends IfcCompositeCurveOnSurface {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 1136057603;\n }\n }\n IFC4X32.IfcBoundaryCurve = IfcBoundaryCurve;\n class IfcBridge extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.PredefinedType = PredefinedType;\n this.type = 644574406;\n }\n }\n IFC4X32.IfcBridge = IfcBridge;\n class IfcBridgePart extends IfcFacilityPart {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, UsageType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.UsageType = UsageType;\n this.PredefinedType = PredefinedType;\n this.type = 963979645;\n }\n }\n IFC4X32.IfcBridgePart = IfcBridgePart;\n class IfcBuilding extends IfcFacility {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType, ElevationOfRefHeight, ElevationOfTerrain, BuildingAddress) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, CompositionType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.CompositionType = CompositionType;\n this.ElevationOfRefHeight = ElevationOfRefHeight;\n this.ElevationOfTerrain = ElevationOfTerrain;\n this.BuildingAddress = BuildingAddress;\n this.type = 4031249490;\n }\n }\n IFC4X32.IfcBuilding = IfcBuilding;\n class IfcBuildingElementPart extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2979338954;\n }\n }\n IFC4X32.IfcBuildingElementPart = IfcBuildingElementPart;\n class IfcBuildingElementPartType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 39481116;\n }\n }\n IFC4X32.IfcBuildingElementPartType = IfcBuildingElementPartType;\n class IfcBuildingElementProxyType extends IfcBuiltElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1909888760;\n }\n }\n IFC4X32.IfcBuildingElementProxyType = IfcBuildingElementProxyType;\n class IfcBuildingSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 1177604601;\n }\n }\n IFC4X32.IfcBuildingSystem = IfcBuildingSystem;\n class IfcBuiltElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1876633798;\n }\n }\n IFC4X32.IfcBuiltElement = IfcBuiltElement;\n class IfcBuiltSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, LongName) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.LongName = LongName;\n this.type = 3862327254;\n }\n }\n IFC4X32.IfcBuiltSystem = IfcBuiltSystem;\n class IfcBurnerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2188180465;\n }\n }\n IFC4X32.IfcBurnerType = IfcBurnerType;\n class IfcCableCarrierFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 395041908;\n }\n }\n IFC4X32.IfcCableCarrierFittingType = IfcCableCarrierFittingType;\n class IfcCableCarrierSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3293546465;\n }\n }\n IFC4X32.IfcCableCarrierSegmentType = IfcCableCarrierSegmentType;\n class IfcCableFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2674252688;\n }\n }\n IFC4X32.IfcCableFittingType = IfcCableFittingType;\n class IfcCableSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1285652485;\n }\n }\n IFC4X32.IfcCableSegmentType = IfcCableSegmentType;\n class IfcCaissonFoundationType extends IfcDeepFoundationType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3203706013;\n }\n }\n IFC4X32.IfcCaissonFoundationType = IfcCaissonFoundationType;\n class IfcChillerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2951183804;\n }\n }\n IFC4X32.IfcChillerType = IfcChillerType;\n class IfcChimney extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3296154744;\n }\n }\n IFC4X32.IfcChimney = IfcChimney;\n class IfcCircle extends IfcConic {\n constructor(Position, Radius) {\n super(Position);\n this.Position = Position;\n this.Radius = Radius;\n this.type = 2611217952;\n }\n }\n IFC4X32.IfcCircle = IfcCircle;\n class IfcCivilElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1677625105;\n }\n }\n IFC4X32.IfcCivilElement = IfcCivilElement;\n class IfcCoilType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2301859152;\n }\n }\n IFC4X32.IfcCoilType = IfcCoilType;\n class IfcColumn extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 843113511;\n }\n }\n IFC4X32.IfcColumn = IfcColumn;\n class IfcCommunicationsApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 400855858;\n }\n }\n IFC4X32.IfcCommunicationsApplianceType = IfcCommunicationsApplianceType;\n class IfcCompressorType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3850581409;\n }\n }\n IFC4X32.IfcCompressorType = IfcCompressorType;\n class IfcCondenserType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2816379211;\n }\n }\n IFC4X32.IfcCondenserType = IfcCondenserType;\n class IfcConstructionEquipmentResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 3898045240;\n }\n }\n IFC4X32.IfcConstructionEquipmentResource = IfcConstructionEquipmentResource;\n class IfcConstructionMaterialResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 1060000209;\n }\n }\n IFC4X32.IfcConstructionMaterialResource = IfcConstructionMaterialResource;\n class IfcConstructionProductResource extends IfcConstructionResource {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, Identification, LongDescription, Usage, BaseCosts, BaseQuantity);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.Identification = Identification;\n this.LongDescription = LongDescription;\n this.Usage = Usage;\n this.BaseCosts = BaseCosts;\n this.BaseQuantity = BaseQuantity;\n this.PredefinedType = PredefinedType;\n this.type = 488727124;\n }\n }\n IFC4X32.IfcConstructionProductResource = IfcConstructionProductResource;\n class IfcConveyorSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2940368186;\n }\n }\n IFC4X32.IfcConveyorSegmentType = IfcConveyorSegmentType;\n class IfcCooledBeamType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 335055490;\n }\n }\n IFC4X32.IfcCooledBeamType = IfcCooledBeamType;\n class IfcCoolingTowerType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2954562838;\n }\n }\n IFC4X32.IfcCoolingTowerType = IfcCoolingTowerType;\n class IfcCourse extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1502416096;\n }\n }\n IFC4X32.IfcCourse = IfcCourse;\n class IfcCovering extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1973544240;\n }\n }\n IFC4X32.IfcCovering = IfcCovering;\n class IfcCurtainWall extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3495092785;\n }\n }\n IFC4X32.IfcCurtainWall = IfcCurtainWall;\n class IfcDamperType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3961806047;\n }\n }\n IFC4X32.IfcDamperType = IfcDamperType;\n class IfcDeepFoundation extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3426335179;\n }\n }\n IFC4X32.IfcDeepFoundation = IfcDeepFoundation;\n class IfcDiscreteAccessory extends IfcElementComponent {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1335981549;\n }\n }\n IFC4X32.IfcDiscreteAccessory = IfcDiscreteAccessory;\n class IfcDiscreteAccessoryType extends IfcElementComponentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2635815018;\n }\n }\n IFC4X32.IfcDiscreteAccessoryType = IfcDiscreteAccessoryType;\n class IfcDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 479945903;\n }\n }\n IFC4X32.IfcDistributionBoardType = IfcDistributionBoardType;\n class IfcDistributionChamberElementType extends IfcDistributionFlowElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1599208980;\n }\n }\n IFC4X32.IfcDistributionChamberElementType = IfcDistributionChamberElementType;\n class IfcDistributionControlElementType extends IfcDistributionElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.type = 2063403501;\n }\n }\n IFC4X32.IfcDistributionControlElementType = IfcDistributionControlElementType;\n class IfcDistributionElement extends IfcElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1945004755;\n }\n }\n IFC4X32.IfcDistributionElement = IfcDistributionElement;\n class IfcDistributionFlowElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3040386961;\n }\n }\n IFC4X32.IfcDistributionFlowElement = IfcDistributionFlowElement;\n class IfcDistributionPort extends IfcPort {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, FlowDirection, PredefinedType, SystemType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.FlowDirection = FlowDirection;\n this.PredefinedType = PredefinedType;\n this.SystemType = SystemType;\n this.type = 3041715199;\n }\n }\n IFC4X32.IfcDistributionPort = IfcDistributionPort;\n class IfcDistributionSystem extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 3205830791;\n }\n }\n IFC4X32.IfcDistributionSystem = IfcDistributionSystem;\n class IfcDoor extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, OperationType, UserDefinedOperationType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.OperationType = OperationType;\n this.UserDefinedOperationType = UserDefinedOperationType;\n this.type = 395920057;\n }\n }\n IFC4X32.IfcDoor = IfcDoor;\n class IfcDuctFittingType extends IfcFlowFittingType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 869906466;\n }\n }\n IFC4X32.IfcDuctFittingType = IfcDuctFittingType;\n class IfcDuctSegmentType extends IfcFlowSegmentType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3760055223;\n }\n }\n IFC4X32.IfcDuctSegmentType = IfcDuctSegmentType;\n class IfcDuctSilencerType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2030761528;\n }\n }\n IFC4X32.IfcDuctSilencerType = IfcDuctSilencerType;\n class IfcEarthworksCut extends IfcFeatureElementSubtraction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3071239417;\n }\n }\n IFC4X32.IfcEarthworksCut = IfcEarthworksCut;\n class IfcEarthworksElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1077100507;\n }\n }\n IFC4X32.IfcEarthworksElement = IfcEarthworksElement;\n class IfcEarthworksFill extends IfcEarthworksElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3376911765;\n }\n }\n IFC4X32.IfcEarthworksFill = IfcEarthworksFill;\n class IfcElectricApplianceType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 663422040;\n }\n }\n IFC4X32.IfcElectricApplianceType = IfcElectricApplianceType;\n class IfcElectricDistributionBoardType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2417008758;\n }\n }\n IFC4X32.IfcElectricDistributionBoardType = IfcElectricDistributionBoardType;\n class IfcElectricFlowStorageDeviceType extends IfcFlowStorageDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3277789161;\n }\n }\n IFC4X32.IfcElectricFlowStorageDeviceType = IfcElectricFlowStorageDeviceType;\n class IfcElectricFlowTreatmentDeviceType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2142170206;\n }\n }\n IFC4X32.IfcElectricFlowTreatmentDeviceType = IfcElectricFlowTreatmentDeviceType;\n class IfcElectricGeneratorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1534661035;\n }\n }\n IFC4X32.IfcElectricGeneratorType = IfcElectricGeneratorType;\n class IfcElectricMotorType extends IfcEnergyConversionDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1217240411;\n }\n }\n IFC4X32.IfcElectricMotorType = IfcElectricMotorType;\n class IfcElectricTimeControlType extends IfcFlowControllerType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 712377611;\n }\n }\n IFC4X32.IfcElectricTimeControlType = IfcElectricTimeControlType;\n class IfcEnergyConversionDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1658829314;\n }\n }\n IFC4X32.IfcEnergyConversionDevice = IfcEnergyConversionDevice;\n class IfcEngine extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2814081492;\n }\n }\n IFC4X32.IfcEngine = IfcEngine;\n class IfcEvaporativeCooler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3747195512;\n }\n }\n IFC4X32.IfcEvaporativeCooler = IfcEvaporativeCooler;\n class IfcEvaporator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 484807127;\n }\n }\n IFC4X32.IfcEvaporator = IfcEvaporator;\n class IfcExternalSpatialElement extends IfcExternalSpatialStructureElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, LongName);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 1209101575;\n }\n }\n IFC4X32.IfcExternalSpatialElement = IfcExternalSpatialElement;\n class IfcFanType extends IfcFlowMovingDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 346874300;\n }\n }\n IFC4X32.IfcFanType = IfcFanType;\n class IfcFilterType extends IfcFlowTreatmentDeviceType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1810631287;\n }\n }\n IFC4X32.IfcFilterType = IfcFilterType;\n class IfcFireSuppressionTerminalType extends IfcFlowTerminalType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4222183408;\n }\n }\n IFC4X32.IfcFireSuppressionTerminalType = IfcFireSuppressionTerminalType;\n class IfcFlowController extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2058353004;\n }\n }\n IFC4X32.IfcFlowController = IfcFlowController;\n class IfcFlowFitting extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 4278956645;\n }\n }\n IFC4X32.IfcFlowFitting = IfcFlowFitting;\n class IfcFlowInstrumentType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 4037862832;\n }\n }\n IFC4X32.IfcFlowInstrumentType = IfcFlowInstrumentType;\n class IfcFlowMeter extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2188021234;\n }\n }\n IFC4X32.IfcFlowMeter = IfcFlowMeter;\n class IfcFlowMovingDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3132237377;\n }\n }\n IFC4X32.IfcFlowMovingDevice = IfcFlowMovingDevice;\n class IfcFlowSegment extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 987401354;\n }\n }\n IFC4X32.IfcFlowSegment = IfcFlowSegment;\n class IfcFlowStorageDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 707683696;\n }\n }\n IFC4X32.IfcFlowStorageDevice = IfcFlowStorageDevice;\n class IfcFlowTerminal extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2223149337;\n }\n }\n IFC4X32.IfcFlowTerminal = IfcFlowTerminal;\n class IfcFlowTreatmentDevice extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3508470533;\n }\n }\n IFC4X32.IfcFlowTreatmentDevice = IfcFlowTreatmentDevice;\n class IfcFooting extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 900683007;\n }\n }\n IFC4X32.IfcFooting = IfcFooting;\n class IfcGeotechnicalAssembly extends IfcGeotechnicalElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2713699986;\n }\n }\n IFC4X32.IfcGeotechnicalAssembly = IfcGeotechnicalAssembly;\n class IfcGrid extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, UAxes, VAxes, WAxes, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.UAxes = UAxes;\n this.VAxes = VAxes;\n this.WAxes = WAxes;\n this.PredefinedType = PredefinedType;\n this.type = 3009204131;\n }\n }\n IFC4X32.IfcGrid = IfcGrid;\n class IfcHeatExchanger extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3319311131;\n }\n }\n IFC4X32.IfcHeatExchanger = IfcHeatExchanger;\n class IfcHumidifier extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2068733104;\n }\n }\n IFC4X32.IfcHumidifier = IfcHumidifier;\n class IfcInterceptor extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4175244083;\n }\n }\n IFC4X32.IfcInterceptor = IfcInterceptor;\n class IfcJunctionBox extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2176052936;\n }\n }\n IFC4X32.IfcJunctionBox = IfcJunctionBox;\n class IfcKerb extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, Mountable) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.Mountable = Mountable;\n this.type = 2696325953;\n }\n }\n IFC4X32.IfcKerb = IfcKerb;\n class IfcLamp extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 76236018;\n }\n }\n IFC4X32.IfcLamp = IfcLamp;\n class IfcLightFixture extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 629592764;\n }\n }\n IFC4X32.IfcLightFixture = IfcLightFixture;\n class IfcLinearPositioningElement extends IfcPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.type = 1154579445;\n }\n }\n IFC4X32.IfcLinearPositioningElement = IfcLinearPositioningElement;\n class IfcLiquidTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1638804497;\n }\n }\n IFC4X32.IfcLiquidTerminal = IfcLiquidTerminal;\n class IfcMedicalDevice extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1437502449;\n }\n }\n IFC4X32.IfcMedicalDevice = IfcMedicalDevice;\n class IfcMember extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1073191201;\n }\n }\n IFC4X32.IfcMember = IfcMember;\n class IfcMobileTelecommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2078563270;\n }\n }\n IFC4X32.IfcMobileTelecommunicationsAppliance = IfcMobileTelecommunicationsAppliance;\n class IfcMooringDevice extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 234836483;\n }\n }\n IFC4X32.IfcMooringDevice = IfcMooringDevice;\n class IfcMotorConnection extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2474470126;\n }\n }\n IFC4X32.IfcMotorConnection = IfcMotorConnection;\n class IfcNavigationElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2182337498;\n }\n }\n IFC4X32.IfcNavigationElement = IfcNavigationElement;\n class IfcOuterBoundaryCurve extends IfcBoundaryCurve {\n constructor(Segments, SelfIntersect) {\n super(Segments, SelfIntersect);\n this.Segments = Segments;\n this.SelfIntersect = SelfIntersect;\n this.type = 144952367;\n }\n }\n IFC4X32.IfcOuterBoundaryCurve = IfcOuterBoundaryCurve;\n class IfcOutlet extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3694346114;\n }\n }\n IFC4X32.IfcOutlet = IfcOutlet;\n class IfcPavement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1383356374;\n }\n }\n IFC4X32.IfcPavement = IfcPavement;\n class IfcPile extends IfcDeepFoundation {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType, ConstructionType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.ConstructionType = ConstructionType;\n this.type = 1687234759;\n }\n }\n IFC4X32.IfcPile = IfcPile;\n class IfcPipeFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 310824031;\n }\n }\n IFC4X32.IfcPipeFitting = IfcPipeFitting;\n class IfcPipeSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3612865200;\n }\n }\n IFC4X32.IfcPipeSegment = IfcPipeSegment;\n class IfcPlate extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3171933400;\n }\n }\n IFC4X32.IfcPlate = IfcPlate;\n class IfcProtectiveDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 738039164;\n }\n }\n IFC4X32.IfcProtectiveDevice = IfcProtectiveDevice;\n class IfcProtectiveDeviceTrippingUnitType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 655969474;\n }\n }\n IFC4X32.IfcProtectiveDeviceTrippingUnitType = IfcProtectiveDeviceTrippingUnitType;\n class IfcPump extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 90941305;\n }\n }\n IFC4X32.IfcPump = IfcPump;\n class IfcRail extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3290496277;\n }\n }\n IFC4X32.IfcRail = IfcRail;\n class IfcRailing extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2262370178;\n }\n }\n IFC4X32.IfcRailing = IfcRailing;\n class IfcRamp extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3024970846;\n }\n }\n IFC4X32.IfcRamp = IfcRamp;\n class IfcRampFlight extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3283111854;\n }\n }\n IFC4X32.IfcRampFlight = IfcRampFlight;\n class IfcRationalBSplineCurveWithKnots extends IfcBSplineCurveWithKnots {\n constructor(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec, WeightsData) {\n super(Degree, ControlPointsList, CurveForm, ClosedCurve, SelfIntersect, KnotMultiplicities, Knots, KnotSpec);\n this.Degree = Degree;\n this.ControlPointsList = ControlPointsList;\n this.CurveForm = CurveForm;\n this.ClosedCurve = ClosedCurve;\n this.SelfIntersect = SelfIntersect;\n this.KnotMultiplicities = KnotMultiplicities;\n this.Knots = Knots;\n this.KnotSpec = KnotSpec;\n this.WeightsData = WeightsData;\n this.type = 1232101972;\n }\n }\n IFC4X32.IfcRationalBSplineCurveWithKnots = IfcRationalBSplineCurveWithKnots;\n class IfcReinforcedSoil extends IfcEarthworksElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3798194928;\n }\n }\n IFC4X32.IfcReinforcedSoil = IfcReinforcedSoil;\n class IfcReinforcingBar extends IfcReinforcingElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade, NominalDiameter, CrossSectionArea, BarLength, PredefinedType, BarSurface) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, SteelGrade);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.SteelGrade = SteelGrade;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.PredefinedType = PredefinedType;\n this.BarSurface = BarSurface;\n this.type = 979691226;\n }\n }\n IFC4X32.IfcReinforcingBar = IfcReinforcingBar;\n class IfcReinforcingBarType extends IfcReinforcingElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType, NominalDiameter, CrossSectionArea, BarLength, BarSurface, BendingShapeCode, BendingParameters) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.NominalDiameter = NominalDiameter;\n this.CrossSectionArea = CrossSectionArea;\n this.BarLength = BarLength;\n this.BarSurface = BarSurface;\n this.BendingShapeCode = BendingShapeCode;\n this.BendingParameters = BendingParameters;\n this.type = 2572171363;\n }\n }\n IFC4X32.IfcReinforcingBarType = IfcReinforcingBarType;\n class IfcRoof extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2016517767;\n }\n }\n IFC4X32.IfcRoof = IfcRoof;\n class IfcSanitaryTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3053780830;\n }\n }\n IFC4X32.IfcSanitaryTerminal = IfcSanitaryTerminal;\n class IfcSensorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 1783015770;\n }\n }\n IFC4X32.IfcSensorType = IfcSensorType;\n class IfcShadingDevice extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1329646415;\n }\n }\n IFC4X32.IfcShadingDevice = IfcShadingDevice;\n class IfcSignal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 991950508;\n }\n }\n IFC4X32.IfcSignal = IfcSignal;\n class IfcSlab extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1529196076;\n }\n }\n IFC4X32.IfcSlab = IfcSlab;\n class IfcSolarDevice extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3420628829;\n }\n }\n IFC4X32.IfcSolarDevice = IfcSolarDevice;\n class IfcSpaceHeater extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1999602285;\n }\n }\n IFC4X32.IfcSpaceHeater = IfcSpaceHeater;\n class IfcStackTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1404847402;\n }\n }\n IFC4X32.IfcStackTerminal = IfcStackTerminal;\n class IfcStair extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 331165859;\n }\n }\n IFC4X32.IfcStair = IfcStair;\n class IfcStairFlight extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, NumberOfRisers, NumberOfTreads, RiserHeight, TreadLength, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.NumberOfRisers = NumberOfRisers;\n this.NumberOfTreads = NumberOfTreads;\n this.RiserHeight = RiserHeight;\n this.TreadLength = TreadLength;\n this.PredefinedType = PredefinedType;\n this.type = 4252922144;\n }\n }\n IFC4X32.IfcStairFlight = IfcStairFlight;\n class IfcStructuralAnalysisModel extends IfcSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, OrientationOf2DPlane, LoadedBy, HasResults, SharedPlacement) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.OrientationOf2DPlane = OrientationOf2DPlane;\n this.LoadedBy = LoadedBy;\n this.HasResults = HasResults;\n this.SharedPlacement = SharedPlacement;\n this.type = 2515109513;\n }\n }\n IFC4X32.IfcStructuralAnalysisModel = IfcStructuralAnalysisModel;\n class IfcStructuralLoadCase extends IfcStructuralLoadGroup {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose, SelfWeightCoefficients) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, PredefinedType, ActionType, ActionSource, Coefficient, Purpose);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.PredefinedType = PredefinedType;\n this.ActionType = ActionType;\n this.ActionSource = ActionSource;\n this.Coefficient = Coefficient;\n this.Purpose = Purpose;\n this.SelfWeightCoefficients = SelfWeightCoefficients;\n this.type = 385403989;\n }\n }\n IFC4X32.IfcStructuralLoadCase = IfcStructuralLoadCase;\n class IfcStructuralPlanarAction extends IfcStructuralSurfaceAction {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, AppliedLoad, GlobalOrLocal, DestabilizingLoad, ProjectedOrTrue, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.AppliedLoad = AppliedLoad;\n this.GlobalOrLocal = GlobalOrLocal;\n this.DestabilizingLoad = DestabilizingLoad;\n this.ProjectedOrTrue = ProjectedOrTrue;\n this.PredefinedType = PredefinedType;\n this.type = 1621171031;\n }\n }\n IFC4X32.IfcStructuralPlanarAction = IfcStructuralPlanarAction;\n class IfcSwitchingDevice extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1162798199;\n }\n }\n IFC4X32.IfcSwitchingDevice = IfcSwitchingDevice;\n class IfcTank extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 812556717;\n }\n }\n IFC4X32.IfcTank = IfcTank;\n class IfcTrackElement extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3425753595;\n }\n }\n IFC4X32.IfcTrackElement = IfcTrackElement;\n class IfcTransformer extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3825984169;\n }\n }\n IFC4X32.IfcTransformer = IfcTransformer;\n class IfcTransportElement extends IfcTransportationDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1620046519;\n }\n }\n IFC4X32.IfcTransportElement = IfcTransportElement;\n class IfcTubeBundle extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3026737570;\n }\n }\n IFC4X32.IfcTubeBundle = IfcTubeBundle;\n class IfcUnitaryControlElementType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3179687236;\n }\n }\n IFC4X32.IfcUnitaryControlElementType = IfcUnitaryControlElementType;\n class IfcUnitaryEquipment extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4292641817;\n }\n }\n IFC4X32.IfcUnitaryEquipment = IfcUnitaryEquipment;\n class IfcValve extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4207607924;\n }\n }\n IFC4X32.IfcValve = IfcValve;\n class IfcWall extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2391406946;\n }\n }\n IFC4X32.IfcWall = IfcWall;\n class IfcWallStandardCase extends IfcWall {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3512223829;\n }\n }\n IFC4X32.IfcWallStandardCase = IfcWallStandardCase;\n class IfcWasteTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4237592921;\n }\n }\n IFC4X32.IfcWasteTerminal = IfcWasteTerminal;\n class IfcWindow extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, OverallHeight, OverallWidth, PredefinedType, PartitioningType, UserDefinedPartitioningType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.OverallHeight = OverallHeight;\n this.OverallWidth = OverallWidth;\n this.PredefinedType = PredefinedType;\n this.PartitioningType = PartitioningType;\n this.UserDefinedPartitioningType = UserDefinedPartitioningType;\n this.type = 3304561284;\n }\n }\n IFC4X32.IfcWindow = IfcWindow;\n class IfcActuatorType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 2874132201;\n }\n }\n IFC4X32.IfcActuatorType = IfcActuatorType;\n class IfcAirTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1634111441;\n }\n }\n IFC4X32.IfcAirTerminal = IfcAirTerminal;\n class IfcAirTerminalBox extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 177149247;\n }\n }\n IFC4X32.IfcAirTerminalBox = IfcAirTerminalBox;\n class IfcAirToAirHeatRecovery extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2056796094;\n }\n }\n IFC4X32.IfcAirToAirHeatRecovery = IfcAirToAirHeatRecovery;\n class IfcAlarmType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 3001207471;\n }\n }\n IFC4X32.IfcAlarmType = IfcAlarmType;\n class IfcAlignment extends IfcLinearPositioningElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.PredefinedType = PredefinedType;\n this.type = 325726236;\n }\n }\n IFC4X32.IfcAlignment = IfcAlignment;\n class IfcAudioVisualAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 277319702;\n }\n }\n IFC4X32.IfcAudioVisualAppliance = IfcAudioVisualAppliance;\n class IfcBeam extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 753842376;\n }\n }\n IFC4X32.IfcBeam = IfcBeam;\n class IfcBearing extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4196446775;\n }\n }\n IFC4X32.IfcBearing = IfcBearing;\n class IfcBoiler extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 32344328;\n }\n }\n IFC4X32.IfcBoiler = IfcBoiler;\n class IfcBorehole extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 3314249567;\n }\n }\n IFC4X32.IfcBorehole = IfcBorehole;\n class IfcBuildingElementProxy extends IfcBuiltElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1095909175;\n }\n }\n IFC4X32.IfcBuildingElementProxy = IfcBuildingElementProxy;\n class IfcBurner extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2938176219;\n }\n }\n IFC4X32.IfcBurner = IfcBurner;\n class IfcCableCarrierFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 635142910;\n }\n }\n IFC4X32.IfcCableCarrierFitting = IfcCableCarrierFitting;\n class IfcCableCarrierSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3758799889;\n }\n }\n IFC4X32.IfcCableCarrierSegment = IfcCableCarrierSegment;\n class IfcCableFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1051757585;\n }\n }\n IFC4X32.IfcCableFitting = IfcCableFitting;\n class IfcCableSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4217484030;\n }\n }\n IFC4X32.IfcCableSegment = IfcCableSegment;\n class IfcCaissonFoundation extends IfcDeepFoundation {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3999819293;\n }\n }\n IFC4X32.IfcCaissonFoundation = IfcCaissonFoundation;\n class IfcChiller extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3902619387;\n }\n }\n IFC4X32.IfcChiller = IfcChiller;\n class IfcCoil extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 639361253;\n }\n }\n IFC4X32.IfcCoil = IfcCoil;\n class IfcCommunicationsAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3221913625;\n }\n }\n IFC4X32.IfcCommunicationsAppliance = IfcCommunicationsAppliance;\n class IfcCompressor extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3571504051;\n }\n }\n IFC4X32.IfcCompressor = IfcCompressor;\n class IfcCondenser extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2272882330;\n }\n }\n IFC4X32.IfcCondenser = IfcCondenser;\n class IfcControllerType extends IfcDistributionControlElementType {\n constructor(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ApplicableOccurrence, HasPropertySets, RepresentationMaps, Tag, ElementType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ApplicableOccurrence = ApplicableOccurrence;\n this.HasPropertySets = HasPropertySets;\n this.RepresentationMaps = RepresentationMaps;\n this.Tag = Tag;\n this.ElementType = ElementType;\n this.PredefinedType = PredefinedType;\n this.type = 578613899;\n }\n }\n IFC4X32.IfcControllerType = IfcControllerType;\n class IfcConveyorSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3460952963;\n }\n }\n IFC4X32.IfcConveyorSegment = IfcConveyorSegment;\n class IfcCooledBeam extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4136498852;\n }\n }\n IFC4X32.IfcCooledBeam = IfcCooledBeam;\n class IfcCoolingTower extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3640358203;\n }\n }\n IFC4X32.IfcCoolingTower = IfcCoolingTower;\n class IfcDamper extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4074379575;\n }\n }\n IFC4X32.IfcDamper = IfcDamper;\n class IfcDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3693000487;\n }\n }\n IFC4X32.IfcDistributionBoard = IfcDistributionBoard;\n class IfcDistributionChamberElement extends IfcDistributionFlowElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1052013943;\n }\n }\n IFC4X32.IfcDistributionChamberElement = IfcDistributionChamberElement;\n class IfcDistributionCircuit extends IfcDistributionSystem {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, LongName, PredefinedType);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.LongName = LongName;\n this.PredefinedType = PredefinedType;\n this.type = 562808652;\n }\n }\n IFC4X32.IfcDistributionCircuit = IfcDistributionCircuit;\n class IfcDistributionControlElement extends IfcDistributionElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1062813311;\n }\n }\n IFC4X32.IfcDistributionControlElement = IfcDistributionControlElement;\n class IfcDuctFitting extends IfcFlowFitting {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 342316401;\n }\n }\n IFC4X32.IfcDuctFitting = IfcDuctFitting;\n class IfcDuctSegment extends IfcFlowSegment {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3518393246;\n }\n }\n IFC4X32.IfcDuctSegment = IfcDuctSegment;\n class IfcDuctSilencer extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1360408905;\n }\n }\n IFC4X32.IfcDuctSilencer = IfcDuctSilencer;\n class IfcElectricAppliance extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1904799276;\n }\n }\n IFC4X32.IfcElectricAppliance = IfcElectricAppliance;\n class IfcElectricDistributionBoard extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 862014818;\n }\n }\n IFC4X32.IfcElectricDistributionBoard = IfcElectricDistributionBoard;\n class IfcElectricFlowStorageDevice extends IfcFlowStorageDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3310460725;\n }\n }\n IFC4X32.IfcElectricFlowStorageDevice = IfcElectricFlowStorageDevice;\n class IfcElectricFlowTreatmentDevice extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 24726584;\n }\n }\n IFC4X32.IfcElectricFlowTreatmentDevice = IfcElectricFlowTreatmentDevice;\n class IfcElectricGenerator extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 264262732;\n }\n }\n IFC4X32.IfcElectricGenerator = IfcElectricGenerator;\n class IfcElectricMotor extends IfcEnergyConversionDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 402227799;\n }\n }\n IFC4X32.IfcElectricMotor = IfcElectricMotor;\n class IfcElectricTimeControl extends IfcFlowController {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1003880860;\n }\n }\n IFC4X32.IfcElectricTimeControl = IfcElectricTimeControl;\n class IfcFan extends IfcFlowMovingDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3415622556;\n }\n }\n IFC4X32.IfcFan = IfcFan;\n class IfcFilter extends IfcFlowTreatmentDevice {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 819412036;\n }\n }\n IFC4X32.IfcFilter = IfcFilter;\n class IfcFireSuppressionTerminal extends IfcFlowTerminal {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 1426591983;\n }\n }\n IFC4X32.IfcFireSuppressionTerminal = IfcFireSuppressionTerminal;\n class IfcFlowInstrument extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 182646315;\n }\n }\n IFC4X32.IfcFlowInstrument = IfcFlowInstrument;\n class IfcGeomodel extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 2680139844;\n }\n }\n IFC4X32.IfcGeomodel = IfcGeomodel;\n class IfcGeoslice extends IfcGeotechnicalAssembly {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.type = 1971632696;\n }\n }\n IFC4X32.IfcGeoslice = IfcGeoslice;\n class IfcProtectiveDeviceTrippingUnit extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 2295281155;\n }\n }\n IFC4X32.IfcProtectiveDeviceTrippingUnit = IfcProtectiveDeviceTrippingUnit;\n class IfcSensor extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4086658281;\n }\n }\n IFC4X32.IfcSensor = IfcSensor;\n class IfcUnitaryControlElement extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 630975310;\n }\n }\n IFC4X32.IfcUnitaryControlElement = IfcUnitaryControlElement;\n class IfcActuator extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 4288193352;\n }\n }\n IFC4X32.IfcActuator = IfcActuator;\n class IfcAlarm extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 3087945054;\n }\n }\n IFC4X32.IfcAlarm = IfcAlarm;\n class IfcController extends IfcDistributionControlElement {\n constructor(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType) {\n super(GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag);\n this.GlobalId = GlobalId;\n this.OwnerHistory = OwnerHistory;\n this.Name = Name;\n this.Description = Description;\n this.ObjectType = ObjectType;\n this.ObjectPlacement = ObjectPlacement;\n this.Representation = Representation;\n this.Tag = Tag;\n this.PredefinedType = PredefinedType;\n this.type = 25142252;\n }\n }\n IFC4X32.IfcController = IfcController;\n})(IFC4X3 || (IFC4X3 = {}));\n\n// dist/helpers/properties.ts\nvar PropsNames = {\n aggregates: {\n name: IFCRELAGGREGATES,\n relating: \"RelatingObject\",\n related: \"RelatedObjects\",\n key: \"children\"\n },\n spatial: {\n name: IFCRELCONTAINEDINSPATIALSTRUCTURE,\n relating: \"RelatingStructure\",\n related: \"RelatedElements\",\n key: \"children\"\n },\n psets: {\n name: IFCRELDEFINESBYPROPERTIES,\n relating: \"RelatingPropertyDefinition\",\n related: \"RelatedObjects\",\n key: \"IsDefinedBy\"\n },\n materials: {\n name: IFCRELASSOCIATESMATERIAL,\n relating: \"RelatingMaterial\",\n related: \"RelatedObjects\",\n key: \"HasAssociations\"\n },\n type: {\n name: IFCRELDEFINESBYTYPE,\n relating: \"RelatingType\",\n related: \"RelatedObjects\",\n key: \"IsDefinedBy\"\n }\n};\nvar Properties = class {\n constructor(api) {\n this.api = api;\n }\n getItemProperties(modelID, id, recursive = false, inverse = false) {\n return __async(this, null, function* () {\n return this.api.GetLine(modelID, id, recursive, inverse);\n });\n }\n getPropertySets(modelID, elementID = 0, recursive = false, includeTypeProperties = false) {\n return __async(this, null, function* () {\n if (includeTypeProperties) {\n let types = yield this.getTypeProperties(modelID, elementID, false);\n let results = [];\n for (let t of types)\n results.push(...yield this.getPropertySets(modelID, t.expressID, recursive));\n return results;\n } else\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.psets, recursive);\n });\n }\n setPropertySets(modelID, elementID, psetID) {\n return __async(this, null, function* () {\n return this.setItemProperties(modelID, elementID, psetID, PropsNames.psets);\n });\n }\n getTypeProperties(modelID, elementID = 0, recursive = false) {\n return __async(this, null, function* () {\n if (this.api.GetModelSchema(modelID) == \"IFC2X3\") {\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.type, recursive);\n } else {\n return yield this.getRelatedProperties(modelID, elementID, __spreadProps(__spreadValues({}, PropsNames.type), { key: \"IsTypedBy\" }), recursive);\n }\n });\n }\n getMaterialsProperties(modelID, elementID = 0, recursive = false, includeTypeMaterials = false) {\n return __async(this, null, function* () {\n if (includeTypeMaterials) {\n let types = yield this.getTypeProperties(modelID, elementID, false);\n let results = [];\n for (let t of types)\n results.push(...yield this.getMaterialsProperties(modelID, t.expressID, recursive));\n return results;\n } else\n return yield this.getRelatedProperties(modelID, elementID, PropsNames.materials, recursive);\n });\n }\n setMaterialsProperties(modelID, elementID, materialID) {\n return __async(this, null, function* () {\n return this.setItemProperties(modelID, elementID, materialID, PropsNames.materials);\n });\n }\n getSpatialStructure(modelID, includeProperties = false) {\n return __async(this, null, function* () {\n const chunks = yield this.getSpatialTreeChunks(modelID);\n const allLines = yield this.api.GetLineIDsWithType(modelID, IFCPROJECT);\n const projectID = allLines.get(0);\n const project = Properties.newIfcProject(projectID);\n yield this.getSpatialNode(modelID, project, chunks, includeProperties);\n return project;\n });\n }\n getRelatedProperties(modelID, elementID, propsName, recursive = false) {\n return __async(this, null, function* () {\n const result = [];\n let rels = null;\n if (elementID !== 0)\n rels = yield this.api.GetLine(modelID, elementID, false, true, propsName.key)[propsName.key];\n else {\n let vec = this.api.GetLineIDsWithType(modelID, propsName.name);\n rels = [];\n for (let i = 0; i < vec.size(); ++i)\n rels.push({ value: vec.get(i) });\n }\n if (rels == null)\n return result;\n if (!Array.isArray(rels))\n rels = [rels];\n for (let i = 0; i < rels.length; i++) {\n let propSetIds = yield this.api.GetLine(modelID, rels[i].value, false, false)[propsName.relating];\n if (propSetIds == null)\n continue;\n if (!Array.isArray(propSetIds))\n propSetIds = [propSetIds];\n for (let x = 0; x < propSetIds.length; x++) {\n result.push(yield this.api.GetLine(modelID, propSetIds[x].value, recursive));\n }\n }\n return result;\n });\n }\n getChunks(modelID, chunks, propNames) {\n return __async(this, null, function* () {\n const relation = yield this.api.GetLineIDsWithType(modelID, propNames.name, true);\n for (let i = 0; i < relation.size(); i++) {\n const rel = yield this.api.GetLine(modelID, relation.get(i), false);\n this.saveChunk(chunks, propNames, rel);\n }\n });\n }\n static newIfcProject(id) {\n return {\n expressID: id,\n type: \"IFCPROJECT\",\n children: []\n };\n }\n getSpatialNode(modelID, node, treeChunks, includeProperties) {\n return __async(this, null, function* () {\n yield this.getChildren(modelID, node, treeChunks, PropsNames.aggregates, includeProperties);\n yield this.getChildren(modelID, node, treeChunks, PropsNames.spatial, includeProperties);\n });\n }\n getChildren(modelID, node, treeChunks, propNames, includeProperties) {\n return __async(this, null, function* () {\n const children = treeChunks[node.expressID];\n if (children == void 0)\n return;\n const prop = propNames.key;\n const nodes = [];\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n let node2 = this.newNode(child, this.api.GetLineType(modelID, child));\n if (includeProperties) {\n const properties = yield this.getItemProperties(modelID, node2.expressID);\n node2 = __spreadValues(__spreadValues({}, properties), node2);\n }\n yield this.getSpatialNode(modelID, node2, treeChunks, includeProperties);\n nodes.push(node2);\n }\n node[prop] = nodes;\n });\n }\n newNode(id, type) {\n return {\n expressID: id,\n type: this.api.GetNameFromTypeCode(type),\n children: []\n };\n }\n getSpatialTreeChunks(modelID) {\n return __async(this, null, function* () {\n const treeChunks = {};\n yield this.getChunks(modelID, treeChunks, PropsNames.aggregates);\n yield this.getChunks(modelID, treeChunks, PropsNames.spatial);\n return treeChunks;\n });\n }\n saveChunk(chunks, propNames, rel) {\n const relating = rel[propNames.relating].value;\n const related = rel[propNames.related].map((r) => r.value);\n if (chunks[relating] == void 0) {\n chunks[relating] = related;\n } else {\n chunks[relating] = chunks[relating].concat(related);\n }\n }\n setItemProperties(modelID, elementID, propID, propsName) {\n return __async(this, null, function* () {\n if (!Array.isArray(elementID))\n elementID = [elementID];\n if (!Array.isArray(propID))\n propID = [propID];\n let foundRel = 0;\n const rels = [];\n const elements = [];\n for (const elID of elementID) {\n const element = yield this.api.GetLine(modelID, elID, false, true);\n if (!element[propsName.key])\n continue;\n elements.push(element);\n }\n if (elements.length < 1)\n return false;\n const relations = this.api.GetLineIDsWithType(modelID, propsName.name);\n for (let i = 0; i < relations.size(); ++i) {\n const rel = yield this.api.GetLine(modelID, relations.get(i));\n if (propID.includes(Number(rel[propsName.relating].value))) {\n rels.push(rel);\n foundRel++;\n }\n if (foundRel == propID.length)\n break;\n }\n for (const element of elements) {\n for (const rel of rels) {\n if (!element[propsName.key].some((e) => e.value === rel.expressID))\n element[propsName.key].push({ type: 5, value: rel.expressID });\n if (!rel[propsName.related].some((e) => e.value === element.expressID)) {\n rel[propsName.related].push({ type: 5, value: element.expressID });\n this.api.WriteLine(modelID, rel);\n }\n }\n this.api.WriteLine(modelID, element);\n }\n return true;\n });\n }\n};\n\n// dist/helpers/log.ts\nvar LogLevel;\n(function(LogLevel2) {\n LogLevel2[LogLevel2[\"LOG_LEVEL_DEBUG\"] = 1] = \"LOG_LEVEL_DEBUG\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_WARN\"] = 3] = \"LOG_LEVEL_WARN\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_ERROR\"] = 4] = \"LOG_LEVEL_ERROR\";\n LogLevel2[LogLevel2[\"LOG_LEVEL_OFF\"] = 6] = \"LOG_LEVEL_OFF\";\n})(LogLevel || (LogLevel = {}));\nvar Log = class {\n static setLogLevel(level) {\n this.logLevel = level;\n }\n static log(msg, ...args) {\n if (this.logLevel <= 4) {\n console.log(msg, ...args);\n }\n }\n static debug(msg, ...args) {\n if (this.logLevel <= 1) {\n console.trace(\"DEBUG: \", msg, ...args);\n }\n }\n static warn(msg, ...args) {\n if (this.logLevel <= 3) {\n console.warn(\"WARN: \", msg, ...args);\n }\n }\n static error(msg, ...args) {\n if (this.logLevel <= 4) {\n console.error(\"ERROR: \", msg, ...args);\n }\n }\n};\nLog.logLevel = 4;\n\n// dist/web-ifc-api.ts\nif (false)\n __WASM_PATH__ = \"./web-ifc\";\nvar WebIFCWasm;\nif (typeof self !== \"undefined\" && self.crossOriginIsolated) {\n try {\n WebIFCWasm = require_web_ifc_mt();\n } catch (ex) {\n WebIFCWasm = require_web_ifc();\n }\n} else\n WebIFCWasm = require_web_ifc();\nvar UNKNOWN = 0;\nvar STRING = 1;\nvar LABEL = 2;\nvar ENUM = 3;\nvar REAL = 4;\nvar REF = 5;\nvar EMPTY = 6;\nvar SET_BEGIN = 7;\nvar SET_END = 8;\nvar LINE_END = 9;\nvar INTEGER = 10;\nfunction ms() {\n return new Date().getTime();\n}\nvar IfcAPI2 = class {\n constructor() {\n this.wasmModule = void 0;\n this.wasmPath = \"\";\n this.isWasmPathAbsolute = false;\n this.modelSchemaList = [];\n this.modelSchemaNameList = [];\n this.ifcGuidMap = new Map();\n this.deletedLines = new Map();\n this.properties = new Properties(this);\n }\n Init(customLocateFileHandler) {\n return __async(this, null, function* () {\n if (WebIFCWasm) {\n let locateFileHandler = (path, prefix) => {\n if (path.endsWith(\".wasm\")) {\n if (this.isWasmPathAbsolute) {\n return this.wasmPath + path;\n }\n return prefix + this.wasmPath + path;\n }\n return prefix + path;\n };\n this.wasmModule = yield WebIFCWasm({ noInitialRun: true, locateFile: customLocateFileHandler || locateFileHandler });\n this.SetLogLevel(LogLevel.LOG_LEVEL_ERROR);\n } else {\n Log.error(`Could not find wasm module at './web-ifc' from web-ifc-api.ts`);\n }\n });\n }\n OpenModels(dataSets, settings) {\n let s = __spreadValues({\n MEMORY_LIMIT: 2147483648\n }, settings);\n s.MEMORY_LIMIT = s.MEMORY_LIMIT / dataSets.length;\n let modelIDs = [];\n for (let dataSet of dataSets)\n modelIDs.push(this.OpenModel(dataSet, s));\n return modelIDs;\n }\n CreateSettings(settings) {\n let s = __spreadValues({\n OPTIMIZE_PROFILES: false,\n COORDINATE_TO_ORIGIN: false,\n CIRCLE_SEGMENTS: 12,\n TAPE_SIZE: 67108864,\n MEMORY_LIMIT: 2147483648\n }, settings);\n let deprecated = [\"USE_FAST_BOOLS\", \"CIRCLE_SEGMENTS_LOW\", \"CIRCLE_SEGMENTS_MEDIUM\", \"CIRCLE_SEGMENTS_HIGH\"];\n for (let d in deprecated) {\n if (d in s) {\n Log.warn(\"Use of deprecated settings \" + d + \" detected\");\n }\n }\n return s;\n }\n LookupSchemaId(schemaName) {\n for (var i = 0; i < SchemaNames.length; i++) {\n if (typeof SchemaNames[i] !== \"undefined\") {\n for (var j = 0; j < SchemaNames[i].length; j++) {\n if (SchemaNames[i][j] == schemaName)\n return i;\n }\n }\n }\n return -1;\n }\n OpenModel(data, settings) {\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.OpenModel(s, (destPtr, offsetInSrc, destSize) => {\n let srcSize = Math.min(data.byteLength - offsetInSrc, destSize);\n let dest = this.wasmModule.HEAPU8.subarray(destPtr, destPtr + srcSize);\n let src = data.subarray(offsetInSrc, offsetInSrc + srcSize);\n dest.set(src);\n return srcSize;\n });\n this.deletedLines.set(result, new Set());\n var schemaName = this.GetHeaderLine(result, FILE_SCHEMA).arguments[0][0].value;\n this.modelSchemaList[result] = this.LookupSchemaId(schemaName);\n this.modelSchemaNameList[result] = schemaName;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + schemaName);\n this.CloseModel(result);\n return -1;\n }\n Log.debug(\"Parsing Model using \" + schemaName + \" Schema\");\n return result;\n }\n OpenModelFromCallback(callback, settings) {\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.OpenModel(s, (destPtr, offsetInSrc, destSize) => {\n let data = callback(offsetInSrc, destSize);\n let srcSize = Math.min(data.byteLength, destSize);\n let dest = this.wasmModule.HEAPU8.subarray(destPtr, destPtr + srcSize);\n dest.set(data);\n return srcSize;\n });\n this.deletedLines.set(result, new Set());\n var schemaName = this.GetHeaderLine(result, FILE_SCHEMA).arguments[0][0].value;\n this.modelSchemaList[result] = this.LookupSchemaId(schemaName);\n this.modelSchemaNameList[result] = schemaName;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + schemaName);\n this.CloseModel(result);\n return -1;\n }\n Log.debug(\"Parsing Model using \" + schemaName + \" Schema\");\n return result;\n }\n GetModelSchema(modelID) {\n return this.modelSchemaNameList[modelID];\n }\n CreateModel(model, settings) {\n var _a, _b, _c;\n let s = this.CreateSettings(settings);\n let result = this.wasmModule.CreateModel(s);\n this.modelSchemaList[result] = this.LookupSchemaId(model.schema);\n this.modelSchemaNameList[result] = model.schema;\n if (this.modelSchemaList[result] == -1) {\n Log.error(\"Unsupported Schema:\" + model.schema);\n this.CloseModel(result);\n return -1;\n }\n this.deletedLines.set(result, new Set());\n const modelName = model.name || \"web-ifc-model-\" + result + \".ifc\";\n const timestamp = new Date().toISOString().slice(0, 19);\n const description = ((_a = model.description) == null ? void 0 : _a.map((d) => ({ type: STRING, value: d }))) || [{ type: STRING, value: \"ViewDefinition [CoordinationView]\" }];\n const authors = ((_b = model.authors) == null ? void 0 : _b.map((a) => ({ type: STRING, value: a }))) || [null];\n const orgs = ((_c = model.organizations) == null ? void 0 : _c.map((o) => ({ type: STRING, value: o }))) || [null];\n const auth = model.authorization ? { type: STRING, value: model.authorization } : null;\n this.wasmModule.WriteHeaderLine(result, FILE_DESCRIPTION, [\n description,\n { type: STRING, value: \"2;1\" }\n ]);\n this.wasmModule.WriteHeaderLine(result, FILE_NAME, [\n { type: STRING, value: modelName },\n { type: STRING, value: timestamp },\n authors,\n orgs,\n { type: STRING, value: \"ifcjs/web-ifc-api\" },\n { type: STRING, value: \"ifcjs/web-ifc-api\" },\n auth\n ]);\n this.wasmModule.WriteHeaderLine(result, FILE_SCHEMA, [[{ type: STRING, value: model.schema }]]);\n return result;\n }\n SaveModel(modelID) {\n let dataBuffer = new Uint8Array(0);\n this.wasmModule.SaveModel(modelID, (srcPtr, srcSize) => {\n let src = this.wasmModule.HEAPU8.subarray(srcPtr, srcPtr + srcSize);\n dataBuffer = new Uint8Array(srcSize);\n dataBuffer.set(src, 0);\n });\n return dataBuffer;\n }\n ExportFileAsIFC(modelID) {\n Log.warn(\"ExportFileAsIFC is deprecated, use SaveModel instead\");\n return this.SaveModel(modelID);\n }\n GetGeometry(modelID, geometryExpressID) {\n return this.wasmModule.GetGeometry(modelID, geometryExpressID);\n }\n GetHeaderLine(modelID, headerType) {\n return this.wasmModule.GetHeaderLine(modelID, headerType);\n }\n GetAllTypesOfModel(modelID) {\n let typesNames = [];\n const elements = Object.keys(FromRawLineData[this.modelSchemaList[modelID]]).map((e) => parseInt(e));\n for (let i = 0; i < elements.length; i++) {\n const lines = this.GetLineIDsWithType(modelID, elements[i]);\n if (lines.size() > 0)\n typesNames.push({ typeID: elements[i], typeName: this.wasmModule.GetNameFromTypeCode(elements[i]) });\n }\n return typesNames;\n }\n GetLine(modelID, expressID, flatten = false, inverse = false, inversePropKey = null) {\n let expressCheck = this.wasmModule.ValidateExpressID(modelID, expressID);\n if (!expressCheck) {\n return;\n }\n let rawLineData = this.GetRawLineData(modelID, expressID);\n let lineData;\n try {\n lineData = FromRawLineData[this.modelSchemaList[modelID]][rawLineData.type](rawLineData.arguments);\n lineData.expressID = rawLineData.ID;\n } catch (e) {\n Log.error(\"Invalid IFC Line:\" + expressID);\n if (rawLineData.ID) {\n throw e;\n } else {\n return;\n }\n }\n if (flatten) {\n this.FlattenLine(modelID, lineData);\n }\n let inverseData = InversePropertyDef[this.modelSchemaList[modelID]][rawLineData.type];\n if (inverse && inverseData != null) {\n for (let inverseProp of inverseData) {\n if (inversePropKey && inverseProp[0] !== inversePropKey)\n continue;\n if (!inverseProp[3])\n lineData[inverseProp[0]] = null;\n else\n lineData[inverseProp[0]] = [];\n let targetTypes = [inverseProp[1]];\n if (typeof InheritanceDef[this.modelSchemaList[modelID]][inverseProp[1]] != \"undefined\") {\n targetTypes = targetTypes.concat(InheritanceDef[this.modelSchemaList[modelID]][inverseProp[1]]);\n }\n let inverseIDs = this.wasmModule.GetInversePropertyForItem(modelID, expressID, targetTypes, inverseProp[2], inverseProp[3]);\n if (!inverseProp[3] && inverseIDs.size() > 0) {\n if (!flatten)\n lineData[inverseProp[0]] = { type: 5, value: inverseIDs.get(0) };\n else\n lineData[inverseProp[0]] = this.GetLine(modelID, inverseIDs.get(0));\n } else {\n for (let x = 0; x < inverseIDs.size(); x++) {\n if (!flatten)\n lineData[inverseProp[0]].push({ type: 5, value: inverseIDs.get(x) });\n else\n lineData[inverseProp[0]].push(this.GetLine(modelID, inverseIDs.get(x)));\n }\n }\n }\n }\n return lineData;\n }\n GetNextExpressID(modelID, expressID) {\n return this.wasmModule.GetNextExpressID(modelID, expressID);\n }\n GetAndClearErrors(_) {\n Log.warn(\"GetAndClearErrors is deprecated and will be removed in the next version\");\n return { size: function() {\n return 0;\n }, get: function(_2) {\n return {};\n } };\n }\n CreateIfcEntity(modelID, type, ...args) {\n return Constructors[this.modelSchemaList[modelID]][type](args);\n }\n CreateIfcType(modelID, type, value) {\n return TypeInitialisers[this.modelSchemaList[modelID]][type](value);\n }\n GetNameFromTypeCode(type) {\n return this.wasmModule.GetNameFromTypeCode(type);\n }\n GetTypeCodeFromName(typeName) {\n return this.wasmModule.GetTypeCodeFromName(typeName);\n }\n IsIfcElement(type) {\n return this.wasmModule.IsIfcElement(type);\n }\n GetIfcEntityList(modelID) {\n return Object.keys(FromRawLineData[this.modelSchemaList[modelID]]).map((x) => parseInt(x));\n }\n DeleteLine(modelID, expressID) {\n this.wasmModule.RemoveLine(modelID, expressID);\n this.deletedLines.get(modelID).add(expressID);\n }\n WriteLines(modelID, lineObjects) {\n this.wasmModule.ExtendLineStorage(modelID, lineObjects.length);\n for (let lineObject of lineObjects)\n this.WriteLine(modelID, lineObject);\n }\n WriteLine(modelID, lineObject) {\n if (lineObject.expressID != -1 && this.deletedLines.get(modelID).has(lineObject.expressID)) {\n Log.error(`Cannot re-use deleted express ID`);\n return;\n }\n if (lineObject.expressID != -1 && lineObject.expressID <= this.GetMaxExpressID(modelID) && this.GetLineType(modelID, lineObject.expressID) != lineObject.type && this.GetLineType(modelID, lineObject.expressID) != 0) {\n Log.error(`Cannot change type of existing IFC Line`);\n return;\n }\n let property;\n for (property in lineObject) {\n const lineProperty = lineObject[property];\n if (lineProperty && lineProperty.expressID !== void 0) {\n this.WriteLine(modelID, lineProperty);\n lineObject[property] = new Handle(lineProperty.expressID);\n } else if (Array.isArray(lineProperty) && lineProperty.length > 0) {\n for (let i = 0; i < lineProperty.length; i++) {\n if (lineProperty[i].expressID !== void 0) {\n this.WriteLine(modelID, lineProperty[i]);\n lineObject[property][i] = new Handle(lineProperty[i].expressID);\n }\n }\n }\n }\n if (lineObject.expressID === void 0 || lineObject.expressID < 0) {\n lineObject.expressID = this.GetMaxExpressID(modelID) + 1;\n }\n let rawLineData = {\n ID: lineObject.expressID,\n type: lineObject.type,\n arguments: ToRawLineData[this.modelSchemaList[modelID]][lineObject.type](lineObject)\n };\n this.WriteRawLineData(modelID, rawLineData);\n }\n FlattenLine(modelID, line) {\n Object.keys(line).forEach((propertyName) => {\n let property = line[propertyName];\n if (property && property.type === 5) {\n if (property.value)\n line[propertyName] = this.GetLine(modelID, property.value, true);\n } else if (Array.isArray(property) && property.length > 0 && property[0] && property[0].type === 5) {\n for (let i = 0; i < property.length; i++) {\n if (property[i].value)\n line[propertyName][i] = this.GetLine(modelID, property[i].value, true);\n }\n }\n });\n }\n GetRawLineData(modelID, expressID) {\n return this.wasmModule.GetLine(modelID, expressID);\n }\n WriteRawLineData(modelID, data) {\n this.wasmModule.WriteLine(modelID, data.ID, data.type, data.arguments);\n }\n WriteRawLinesData(modelID, data) {\n this.wasmModule.ExtendLineStorage(modelID, data.length);\n for (let rawLine of data)\n this.wasmModule.WriteLine(modelID, rawLine.ID, rawLine.type, rawLine.arguments);\n }\n GetLineIDsWithType(modelID, type, includeInherited = false) {\n let types = [];\n types.push(type);\n if (includeInherited && typeof InheritanceDef[this.modelSchemaList[modelID]][type] != \"undefined\") {\n types = types.concat(InheritanceDef[this.modelSchemaList[modelID]][type]);\n }\n return this.wasmModule.GetLineIDsWithType(modelID, types);\n }\n GetAllLines(modelID) {\n return this.wasmModule.GetAllLines(modelID);\n }\n GetAllCrossSections2D(modelID) {\n const crossSections = this.wasmModule.GetAllCrossSections2D(modelID);\n const crossSectionList = [];\n for (let i = 0; i < crossSections.size(); i++) {\n const alignment = crossSections.get(i);\n const curveList = [];\n const expressList = [];\n for (let j = 0; j < alignment.curves.size(); j++) {\n const curve = alignment.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y, z: pt.z };\n ptList.push(newPoint);\n }\n const newCurve = { points: ptList };\n curveList.push(newCurve);\n expressList.push(alignment.expressID.get(j));\n }\n const align = { origin, curves: curveList, expressID: expressList };\n crossSectionList.push(align);\n }\n return crossSectionList;\n }\n GetAllCrossSections3D(modelID) {\n const crossSections = this.wasmModule.GetAllCrossSections3D(modelID);\n const crossSectionList = [];\n for (let i = 0; i < crossSections.size(); i++) {\n const alignment = crossSections.get(i);\n const curveList = [];\n const expressList = [];\n for (let j = 0; j < alignment.curves.size(); j++) {\n const curve = alignment.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y, z: pt.z };\n ptList.push(newPoint);\n }\n const newCurve = { points: ptList };\n curveList.push(newCurve);\n expressList.push(alignment.expressID.get(j));\n }\n const align = { origin, curves: curveList, expressID: expressList };\n crossSectionList.push(align);\n }\n return crossSectionList;\n }\n GetAllAlignments(modelID) {\n const alignments = this.wasmModule.GetAllAlignments(modelID);\n const alignmentList = [];\n for (let i = 0; i < alignments.size(); i++) {\n const alignment = alignments.get(i);\n const horList = [];\n for (let j = 0; j < alignment.Horizontal.curves.size(); j++) {\n const curve = alignment.Horizontal.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y };\n ptList.push(newPoint);\n }\n const dtList = [];\n for (let p = 0; p < curve.userData.size(); p++) {\n const dt = curve.userData.get(p);\n dtList.push(dt);\n }\n const newCurve = { points: ptList, data: dtList };\n horList.push(newCurve);\n }\n const verList = [];\n for (let j = 0; j < alignment.Vertical.curves.size(); j++) {\n const curve = alignment.Vertical.curves.get(j);\n const ptList = [];\n for (let p = 0; p < curve.points.size(); p++) {\n const pt = curve.points.get(p);\n const newPoint = { x: pt.x, y: pt.y };\n ptList.push(newPoint);\n }\n const dtList = [];\n for (let p = 0; p < curve.userData.size(); p++) {\n const dt = curve.userData.get(p);\n dtList.push(dt);\n }\n const newCurve = { points: ptList, data: dtList };\n verList.push(newCurve);\n }\n const curve3DList = [];\n if (alignment.Horizontal.curves.size() > 0 && alignment.Vertical.curves.size() > 0) {\n const startH = { x: 0, y: 0, z: 0 };\n const startV = { x: 0, y: 0, z: 0 };\n let lastx = 0;\n let lasty = 0;\n let length = 0;\n for (let j = 0; j < alignment.Horizontal.curves.size(); j++) {\n const curve = alignment.Horizontal.curves.get(j);\n const points = [];\n for (let k = 0; k < curve.points.size(); k++) {\n let alt = 0;\n const pt = curve.points.get(k);\n if (j === 0 && k === 0) {\n lastx = pt.x;\n lasty = pt.y;\n }\n const valueX = pt.x - lastx;\n const valueY = pt.y - lasty;\n lastx = pt.x;\n lasty = pt.y;\n length += Math.sqrt(valueX * valueX + valueY * valueY);\n let first = true;\n let lastAlt = 0;\n let lastX = 0;\n let done = false;\n for (let ii = 0; ii < alignment.Vertical.curves.size(); ii++) {\n const curve2 = alignment.Vertical.curves.get(ii);\n for (let jj = 0; jj < curve2.points.size(); jj++) {\n const pt2 = curve2.points.get(jj);\n if (first) {\n first = false;\n alt = pt2.y;\n lastAlt = pt2.y;\n if (pt2.x >= length) {\n break;\n }\n }\n if (pt2.x >= length) {\n const value1 = pt2.x - lastX;\n const value2 = length - lastX;\n const value3 = value2 / value1;\n alt = lastAlt * (1 - value3) + pt2.y * value3;\n done = true;\n break;\n }\n lastAlt = pt2.y;\n lastX = pt2.x;\n }\n if (done) {\n break;\n }\n }\n points.push({\n x: pt.x - startH.x,\n y: alt - startV.y,\n z: startH.y - pt.y\n });\n }\n const newCurve = { points };\n curve3DList.push(newCurve);\n }\n }\n const align = {\n origin,\n horizontal: horList,\n vertical: verList,\n curve3D: curve3DList\n };\n alignmentList.push(align);\n }\n return alignmentList;\n }\n SetGeometryTransformation(modelID, transformationMatrix) {\n if (transformationMatrix.length != 16) {\n throw new Error(`invalid matrix size: ${transformationMatrix.length}`);\n }\n this.wasmModule.SetGeometryTransformation(modelID, transformationMatrix);\n }\n GetCoordinationMatrix(modelID) {\n return this.wasmModule.GetCoordinationMatrix(modelID);\n }\n GetVertexArray(ptr, size) {\n return this.getSubArray(this.wasmModule.HEAPF32, ptr, size);\n }\n GetIndexArray(ptr, size) {\n return this.getSubArray(this.wasmModule.HEAPU32, ptr, size);\n }\n getSubArray(heap, startPtr, sizeBytes) {\n return heap.subarray(startPtr / 4, startPtr / 4 + sizeBytes).slice(0);\n }\n CloseModel(modelID) {\n this.ifcGuidMap.delete(modelID);\n this.wasmModule.CloseModel(modelID);\n }\n StreamMeshes(modelID, expressIDs, meshCallback) {\n this.wasmModule.StreamMeshes(modelID, expressIDs, meshCallback);\n }\n StreamAllMeshes(modelID, meshCallback) {\n this.wasmModule.StreamAllMeshes(modelID, meshCallback);\n }\n StreamAllMeshesWithTypes(modelID, types, meshCallback) {\n this.wasmModule.StreamAllMeshesWithTypes(modelID, types, meshCallback);\n }\n IsModelOpen(modelID) {\n return this.wasmModule.IsModelOpen(modelID);\n }\n LoadAllGeometry(modelID) {\n return this.wasmModule.LoadAllGeometry(modelID);\n }\n GetFlatMesh(modelID, expressID) {\n return this.wasmModule.GetFlatMesh(modelID, expressID);\n }\n GetMaxExpressID(modelID) {\n return this.wasmModule.GetMaxExpressID(modelID);\n }\n IncrementMaxExpressID(modelID, incrementSize) {\n Log.warn(\"IncrementMaxExpressID is deprecated, use GetNextExpressID or GetMaxExpressID instead\");\n return this.wasmModule.GetMaxExpressID(modelID) + incrementSize;\n }\n GetLineType(modelID, expressID) {\n return this.wasmModule.GetLineType(modelID, expressID);\n }\n GetVersion() {\n return this.wasmModule.GetVersion();\n }\n GetExpressIdFromGuid(modelID, guid) {\n var _a;\n if (!this.ifcGuidMap.has(modelID))\n this.CreateIfcGuidToExpressIdMapping(modelID);\n return (_a = this.ifcGuidMap.get(modelID)) == null ? void 0 : _a.get(guid);\n }\n GetGuidFromExpressId(modelID, expressID) {\n var _a;\n if (!this.ifcGuidMap.has(modelID))\n this.CreateIfcGuidToExpressIdMapping(modelID);\n return (_a = this.ifcGuidMap.get(modelID)) == null ? void 0 : _a.get(expressID);\n }\n CreateIfcGuidToExpressIdMapping(modelID) {\n const map = new Map();\n let entities = this.GetIfcEntityList(modelID);\n for (const typeId of entities) {\n if (!this.IsIfcElement(typeId))\n continue;\n const lines = this.GetLineIDsWithType(modelID, typeId);\n const size = lines.size();\n for (let y = 0; y < size; y++) {\n const expressID = lines.get(y);\n const info = this.GetLine(modelID, expressID);\n try {\n if (\"GlobalId\" in info) {\n const globalID = info.GlobalId.value;\n map.set(expressID, globalID);\n map.set(globalID, expressID);\n }\n } catch (e) {\n continue;\n }\n }\n }\n this.ifcGuidMap.set(modelID, map);\n }\n SetWasmPath(path, absolute = false) {\n this.wasmPath = path;\n this.isWasmPathAbsolute = absolute;\n }\n SetLogLevel(level) {\n Log.setLogLevel(level);\n this.wasmModule.SetLogLevel(level);\n }\n};\nexport {\n Constructors,\n EMPTY,\n ENUM,\n FILE_DESCRIPTION,\n FILE_NAME,\n FILE_SCHEMA,\n FromRawLineData,\n Handle,\n IFC2DCOMPOSITECURVE,\n IFC2X3,\n IFC4,\n IFC4X3,\n IFCABSORBEDDOSEMEASURE,\n IFCACCELERATIONMEASURE,\n IFCACTIONREQUEST,\n IFCACTOR,\n IFCACTORROLE,\n IFCACTUATOR,\n IFCACTUATORTYPE,\n IFCADDRESS,\n IFCADVANCEDBREP,\n IFCADVANCEDBREPWITHVOIDS,\n IFCADVANCEDFACE,\n IFCAIRTERMINAL,\n IFCAIRTERMINALBOX,\n IFCAIRTERMINALBOXTYPE,\n IFCAIRTERMINALTYPE,\n IFCAIRTOAIRHEATRECOVERY,\n IFCAIRTOAIRHEATRECOVERYTYPE,\n IFCALARM,\n IFCALARMTYPE,\n IFCALIGNMENT,\n IFCALIGNMENTCANT,\n IFCALIGNMENTCANTSEGMENT,\n IFCALIGNMENTHORIZONTAL,\n IFCALIGNMENTHORIZONTALSEGMENT,\n IFCALIGNMENTPARAMETERSEGMENT,\n IFCALIGNMENTSEGMENT,\n IFCALIGNMENTVERTICAL,\n IFCALIGNMENTVERTICALSEGMENT,\n IFCAMOUNTOFSUBSTANCEMEASURE,\n IFCANGULARDIMENSION,\n IFCANGULARVELOCITYMEASURE,\n IFCANNOTATION,\n IFCANNOTATIONCURVEOCCURRENCE,\n IFCANNOTATIONFILLAREA,\n IFCANNOTATIONFILLAREAOCCURRENCE,\n IFCANNOTATIONOCCURRENCE,\n IFCANNOTATIONSURFACE,\n IFCANNOTATIONSURFACEOCCURRENCE,\n IFCANNOTATIONSYMBOLOCCURRENCE,\n IFCANNOTATIONTEXTOCCURRENCE,\n IFCAPPLICATION,\n IFCAPPLIEDVALUE,\n IFCAPPLIEDVALUERELATIONSHIP,\n IFCAPPROVAL,\n IFCAPPROVALACTORRELATIONSHIP,\n IFCAPPROVALPROPERTYRELATIONSHIP,\n IFCAPPROVALRELATIONSHIP,\n IFCARBITRARYCLOSEDPROFILEDEF,\n IFCARBITRARYOPENPROFILEDEF,\n IFCARBITRARYPROFILEDEFWITHVOIDS,\n IFCARCINDEX,\n IFCAREADENSITYMEASURE,\n IFCAREAMEASURE,\n IFCASSET,\n IFCASYMMETRICISHAPEPROFILEDEF,\n IFCAUDIOVISUALAPPLIANCE,\n IFCAUDIOVISUALAPPLIANCETYPE,\n IFCAXIS1PLACEMENT,\n IFCAXIS2PLACEMENT2D,\n IFCAXIS2PLACEMENT3D,\n IFCAXIS2PLACEMENTLINEAR,\n IFCBEAM,\n IFCBEAMSTANDARDCASE,\n IFCBEAMTYPE,\n IFCBEARING,\n IFCBEARINGTYPE,\n IFCBEZIERCURVE,\n IFCBINARY,\n IFCBLOBTEXTURE,\n IFCBLOCK,\n IFCBOILER,\n IFCBOILERTYPE,\n IFCBOOLEAN,\n IFCBOOLEANCLIPPINGRESULT,\n IFCBOOLEANRESULT,\n IFCBOREHOLE,\n IFCBOUNDARYCONDITION,\n IFCBOUNDARYCURVE,\n IFCBOUNDARYEDGECONDITION,\n IFCBOUNDARYFACECONDITION,\n IFCBOUNDARYNODECONDITION,\n IFCBOUNDARYNODECONDITIONWARPING,\n IFCBOUNDEDCURVE,\n IFCBOUNDEDSURFACE,\n IFCBOUNDINGBOX,\n IFCBOXALIGNMENT,\n IFCBOXEDHALFSPACE,\n IFCBRIDGE,\n IFCBRIDGEPART,\n IFCBSPLINECURVE,\n IFCBSPLINECURVEWITHKNOTS,\n IFCBSPLINESURFACE,\n IFCBSPLINESURFACEWITHKNOTS,\n IFCBUILDING,\n IFCBUILDINGELEMENT,\n IFCBUILDINGELEMENTCOMPONENT,\n IFCBUILDINGELEMENTPART,\n IFCBUILDINGELEMENTPARTTYPE,\n IFCBUILDINGELEMENTPROXY,\n IFCBUILDINGELEMENTPROXYTYPE,\n IFCBUILDINGELEMENTTYPE,\n IFCBUILDINGSTOREY,\n IFCBUILDINGSYSTEM,\n IFCBUILTELEMENT,\n IFCBUILTELEMENTTYPE,\n IFCBUILTSYSTEM,\n IFCBURNER,\n IFCBURNERTYPE,\n IFCCABLECARRIERFITTING,\n IFCCABLECARRIERFITTINGTYPE,\n IFCCABLECARRIERSEGMENT,\n IFCCABLECARRIERSEGMENTTYPE,\n IFCCABLEFITTING,\n IFCCABLEFITTINGTYPE,\n IFCCABLESEGMENT,\n IFCCABLESEGMENTTYPE,\n IFCCAISSONFOUNDATION,\n IFCCAISSONFOUNDATIONTYPE,\n IFCCALENDARDATE,\n IFCCARDINALPOINTREFERENCE,\n IFCCARTESIANPOINT,\n IFCCARTESIANPOINTLIST,\n IFCCARTESIANPOINTLIST2D,\n IFCCARTESIANPOINTLIST3D,\n IFCCARTESIANTRANSFORMATIONOPERATOR,\n IFCCARTESIANTRANSFORMATIONOPERATOR2D,\n IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM,\n IFCCARTESIANTRANSFORMATIONOPERATOR3D,\n IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM,\n IFCCENTERLINEPROFILEDEF,\n IFCCHAMFEREDGEFEATURE,\n IFCCHILLER,\n IFCCHILLERTYPE,\n IFCCHIMNEY,\n IFCCHIMNEYTYPE,\n IFCCIRCLE,\n IFCCIRCLEHOLLOWPROFILEDEF,\n IFCCIRCLEPROFILEDEF,\n IFCCIVILELEMENT,\n IFCCIVILELEMENTTYPE,\n IFCCLASSIFICATION,\n IFCCLASSIFICATIONITEM,\n IFCCLASSIFICATIONITEMRELATIONSHIP,\n IFCCLASSIFICATIONNOTATION,\n IFCCLASSIFICATIONNOTATIONFACET,\n IFCCLASSIFICATIONREFERENCE,\n IFCCLOSEDSHELL,\n IFCCLOTHOID,\n IFCCOIL,\n IFCCOILTYPE,\n IFCCOLOURRGB,\n IFCCOLOURRGBLIST,\n IFCCOLOURSPECIFICATION,\n IFCCOLUMN,\n IFCCOLUMNSTANDARDCASE,\n IFCCOLUMNTYPE,\n IFCCOMMUNICATIONSAPPLIANCE,\n IFCCOMMUNICATIONSAPPLIANCETYPE,\n IFCCOMPLEXNUMBER,\n IFCCOMPLEXPROPERTY,\n IFCCOMPLEXPROPERTYTEMPLATE,\n IFCCOMPOSITECURVE,\n IFCCOMPOSITECURVEONSURFACE,\n IFCCOMPOSITECURVESEGMENT,\n IFCCOMPOSITEPROFILEDEF,\n IFCCOMPOUNDPLANEANGLEMEASURE,\n IFCCOMPRESSOR,\n IFCCOMPRESSORTYPE,\n IFCCONDENSER,\n IFCCONDENSERTYPE,\n IFCCONDITION,\n IFCCONDITIONCRITERION,\n IFCCONIC,\n IFCCONNECTEDFACESET,\n IFCCONNECTIONCURVEGEOMETRY,\n IFCCONNECTIONGEOMETRY,\n IFCCONNECTIONPOINTECCENTRICITY,\n IFCCONNECTIONPOINTGEOMETRY,\n IFCCONNECTIONPORTGEOMETRY,\n IFCCONNECTIONSURFACEGEOMETRY,\n IFCCONNECTIONVOLUMEGEOMETRY,\n IFCCONSTRAINT,\n IFCCONSTRAINTAGGREGATIONRELATIONSHIP,\n IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP,\n IFCCONSTRAINTRELATIONSHIP,\n IFCCONSTRUCTIONEQUIPMENTRESOURCE,\n IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE,\n IFCCONSTRUCTIONMATERIALRESOURCE,\n IFCCONSTRUCTIONMATERIALRESOURCETYPE,\n IFCCONSTRUCTIONPRODUCTRESOURCE,\n IFCCONSTRUCTIONPRODUCTRESOURCETYPE,\n IFCCONSTRUCTIONRESOURCE,\n IFCCONSTRUCTIONRESOURCETYPE,\n IFCCONTEXT,\n IFCCONTEXTDEPENDENTMEASURE,\n IFCCONTEXTDEPENDENTUNIT,\n IFCCONTROL,\n IFCCONTROLLER,\n IFCCONTROLLERTYPE,\n IFCCONVERSIONBASEDUNIT,\n IFCCONVERSIONBASEDUNITWITHOFFSET,\n IFCCONVEYORSEGMENT,\n IFCCONVEYORSEGMENTTYPE,\n IFCCOOLEDBEAM,\n IFCCOOLEDBEAMTYPE,\n IFCCOOLINGTOWER,\n IFCCOOLINGTOWERTYPE,\n IFCCOORDINATEDUNIVERSALTIMEOFFSET,\n IFCCOORDINATEOPERATION,\n IFCCOORDINATEREFERENCESYSTEM,\n IFCCOSINESPIRAL,\n IFCCOSTITEM,\n IFCCOSTSCHEDULE,\n IFCCOSTVALUE,\n IFCCOUNTMEASURE,\n IFCCOURSE,\n IFCCOURSETYPE,\n IFCCOVERING,\n IFCCOVERINGTYPE,\n IFCCRANERAILASHAPEPROFILEDEF,\n IFCCRANERAILFSHAPEPROFILEDEF,\n IFCCREWRESOURCE,\n IFCCREWRESOURCETYPE,\n IFCCSGPRIMITIVE3D,\n IFCCSGSOLID,\n IFCCSHAPEPROFILEDEF,\n IFCCURRENCYRELATIONSHIP,\n IFCCURTAINWALL,\n IFCCURTAINWALLTYPE,\n IFCCURVATUREMEASURE,\n IFCCURVE,\n IFCCURVEBOUNDEDPLANE,\n IFCCURVEBOUNDEDSURFACE,\n IFCCURVESEGMENT,\n IFCCURVESTYLE,\n IFCCURVESTYLEFONT,\n IFCCURVESTYLEFONTANDSCALING,\n IFCCURVESTYLEFONTPATTERN,\n IFCCYLINDRICALSURFACE,\n IFCDAMPER,\n IFCDAMPERTYPE,\n IFCDATE,\n IFCDATEANDTIME,\n IFCDATETIME,\n IFCDAYINMONTHNUMBER,\n IFCDAYINWEEKNUMBER,\n IFCDAYLIGHTSAVINGHOUR,\n IFCDEEPFOUNDATION,\n IFCDEEPFOUNDATIONTYPE,\n IFCDEFINEDSYMBOL,\n IFCDERIVEDPROFILEDEF,\n IFCDERIVEDUNIT,\n IFCDERIVEDUNITELEMENT,\n IFCDESCRIPTIVEMEASURE,\n IFCDIAMETERDIMENSION,\n IFCDIMENSIONALEXPONENTS,\n IFCDIMENSIONCALLOUTRELATIONSHIP,\n IFCDIMENSIONCOUNT,\n IFCDIMENSIONCURVE,\n IFCDIMENSIONCURVEDIRECTEDCALLOUT,\n IFCDIMENSIONCURVETERMINATOR,\n IFCDIMENSIONPAIR,\n IFCDIRECTION,\n IFCDIRECTRIXCURVESWEPTAREASOLID,\n IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID,\n IFCDISCRETEACCESSORY,\n IFCDISCRETEACCESSORYTYPE,\n IFCDISTRIBUTIONBOARD,\n IFCDISTRIBUTIONBOARDTYPE,\n IFCDISTRIBUTIONCHAMBERELEMENT,\n IFCDISTRIBUTIONCHAMBERELEMENTTYPE,\n IFCDISTRIBUTIONCIRCUIT,\n IFCDISTRIBUTIONCONTROLELEMENT,\n IFCDISTRIBUTIONCONTROLELEMENTTYPE,\n IFCDISTRIBUTIONELEMENT,\n IFCDISTRIBUTIONELEMENTTYPE,\n IFCDISTRIBUTIONFLOWELEMENT,\n IFCDISTRIBUTIONFLOWELEMENTTYPE,\n IFCDISTRIBUTIONPORT,\n IFCDISTRIBUTIONSYSTEM,\n IFCDOCUMENTELECTRONICFORMAT,\n IFCDOCUMENTINFORMATION,\n IFCDOCUMENTINFORMATIONRELATIONSHIP,\n IFCDOCUMENTREFERENCE,\n IFCDOOR,\n IFCDOORLININGPROPERTIES,\n IFCDOORPANELPROPERTIES,\n IFCDOORSTANDARDCASE,\n IFCDOORSTYLE,\n IFCDOORTYPE,\n IFCDOSEEQUIVALENTMEASURE,\n IFCDRAUGHTINGCALLOUT,\n IFCDRAUGHTINGCALLOUTRELATIONSHIP,\n IFCDRAUGHTINGPREDEFINEDCOLOUR,\n IFCDRAUGHTINGPREDEFINEDCURVEFONT,\n IFCDRAUGHTINGPREDEFINEDTEXTFONT,\n IFCDUCTFITTING,\n IFCDUCTFITTINGTYPE,\n IFCDUCTSEGMENT,\n IFCDUCTSEGMENTTYPE,\n IFCDUCTSILENCER,\n IFCDUCTSILENCERTYPE,\n IFCDURATION,\n IFCDYNAMICVISCOSITYMEASURE,\n IFCEARTHWORKSCUT,\n IFCEARTHWORKSELEMENT,\n IFCEARTHWORKSFILL,\n IFCEDGE,\n IFCEDGECURVE,\n IFCEDGEFEATURE,\n IFCEDGELOOP,\n IFCELECTRICALBASEPROPERTIES,\n IFCELECTRICALCIRCUIT,\n IFCELECTRICALELEMENT,\n IFCELECTRICAPPLIANCE,\n IFCELECTRICAPPLIANCETYPE,\n IFCELECTRICCAPACITANCEMEASURE,\n IFCELECTRICCHARGEMEASURE,\n IFCELECTRICCONDUCTANCEMEASURE,\n IFCELECTRICCURRENTMEASURE,\n IFCELECTRICDISTRIBUTIONBOARD,\n IFCELECTRICDISTRIBUTIONBOARDTYPE,\n IFCELECTRICDISTRIBUTIONPOINT,\n IFCELECTRICFLOWSTORAGEDEVICE,\n IFCELECTRICFLOWSTORAGEDEVICETYPE,\n IFCELECTRICFLOWTREATMENTDEVICE,\n IFCELECTRICFLOWTREATMENTDEVICETYPE,\n IFCELECTRICGENERATOR,\n IFCELECTRICGENERATORTYPE,\n IFCELECTRICHEATERTYPE,\n IFCELECTRICMOTOR,\n IFCELECTRICMOTORTYPE,\n IFCELECTRICRESISTANCEMEASURE,\n IFCELECTRICTIMECONTROL,\n IFCELECTRICTIMECONTROLTYPE,\n IFCELECTRICVOLTAGEMEASURE,\n IFCELEMENT,\n IFCELEMENTARYSURFACE,\n IFCELEMENTASSEMBLY,\n IFCELEMENTASSEMBLYTYPE,\n IFCELEMENTCOMPONENT,\n IFCELEMENTCOMPONENTTYPE,\n IFCELEMENTQUANTITY,\n IFCELEMENTTYPE,\n IFCELLIPSE,\n IFCELLIPSEPROFILEDEF,\n IFCENERGYCONVERSIONDEVICE,\n IFCENERGYCONVERSIONDEVICETYPE,\n IFCENERGYMEASURE,\n IFCENERGYPROPERTIES,\n IFCENGINE,\n IFCENGINETYPE,\n IFCENVIRONMENTALIMPACTVALUE,\n IFCEQUIPMENTELEMENT,\n IFCEQUIPMENTSTANDARD,\n IFCEVAPORATIVECOOLER,\n IFCEVAPORATIVECOOLERTYPE,\n IFCEVAPORATOR,\n IFCEVAPORATORTYPE,\n IFCEVENT,\n IFCEVENTTIME,\n IFCEVENTTYPE,\n IFCEXTENDEDMATERIALPROPERTIES,\n IFCEXTENDEDPROPERTIES,\n IFCEXTERNALINFORMATION,\n IFCEXTERNALLYDEFINEDHATCHSTYLE,\n IFCEXTERNALLYDEFINEDSURFACESTYLE,\n IFCEXTERNALLYDEFINEDSYMBOL,\n IFCEXTERNALLYDEFINEDTEXTFONT,\n IFCEXTERNALREFERENCE,\n IFCEXTERNALREFERENCERELATIONSHIP,\n IFCEXTERNALSPATIALELEMENT,\n IFCEXTERNALSPATIALSTRUCTUREELEMENT,\n IFCEXTRUDEDAREASOLID,\n IFCEXTRUDEDAREASOLIDTAPERED,\n IFCFACE,\n IFCFACEBASEDSURFACEMODEL,\n IFCFACEBOUND,\n IFCFACEOUTERBOUND,\n IFCFACESURFACE,\n IFCFACETEDBREP,\n IFCFACETEDBREPWITHVOIDS,\n IFCFACILITY,\n IFCFACILITYPART,\n IFCFACILITYPARTCOMMON,\n IFCFAILURECONNECTIONCONDITION,\n IFCFAN,\n IFCFANTYPE,\n IFCFASTENER,\n IFCFASTENERTYPE,\n IFCFEATUREELEMENT,\n IFCFEATUREELEMENTADDITION,\n IFCFEATUREELEMENTSUBTRACTION,\n IFCFILLAREASTYLE,\n IFCFILLAREASTYLEHATCHING,\n IFCFILLAREASTYLETILES,\n IFCFILLAREASTYLETILESYMBOLWITHSTYLE,\n IFCFILTER,\n IFCFILTERTYPE,\n IFCFIRESUPPRESSIONTERMINAL,\n IFCFIRESUPPRESSIONTERMINALTYPE,\n IFCFIXEDREFERENCESWEPTAREASOLID,\n IFCFLOWCONTROLLER,\n IFCFLOWCONTROLLERTYPE,\n IFCFLOWFITTING,\n IFCFLOWFITTINGTYPE,\n IFCFLOWINSTRUMENT,\n IFCFLOWINSTRUMENTTYPE,\n IFCFLOWMETER,\n IFCFLOWMETERTYPE,\n IFCFLOWMOVINGDEVICE,\n IFCFLOWMOVINGDEVICETYPE,\n IFCFLOWSEGMENT,\n IFCFLOWSEGMENTTYPE,\n IFCFLOWSTORAGEDEVICE,\n IFCFLOWSTORAGEDEVICETYPE,\n IFCFLOWTERMINAL,\n IFCFLOWTERMINALTYPE,\n IFCFLOWTREATMENTDEVICE,\n IFCFLOWTREATMENTDEVICETYPE,\n IFCFLUIDFLOWPROPERTIES,\n IFCFONTSTYLE,\n IFCFONTVARIANT,\n IFCFONTWEIGHT,\n IFCFOOTING,\n IFCFOOTINGTYPE,\n IFCFORCEMEASURE,\n IFCFREQUENCYMEASURE,\n IFCFUELPROPERTIES,\n IFCFURNISHINGELEMENT,\n IFCFURNISHINGELEMENTTYPE,\n IFCFURNITURE,\n IFCFURNITURESTANDARD,\n IFCFURNITURETYPE,\n IFCGASTERMINALTYPE,\n IFCGENERALMATERIALPROPERTIES,\n IFCGENERALPROFILEPROPERTIES,\n IFCGEOGRAPHICELEMENT,\n IFCGEOGRAPHICELEMENTTYPE,\n IFCGEOMETRICCURVESET,\n IFCGEOMETRICREPRESENTATIONCONTEXT,\n IFCGEOMETRICREPRESENTATIONITEM,\n IFCGEOMETRICREPRESENTATIONSUBCONTEXT,\n IFCGEOMETRICSET,\n IFCGEOMODEL,\n IFCGEOSLICE,\n IFCGEOTECHNICALASSEMBLY,\n IFCGEOTECHNICALELEMENT,\n IFCGEOTECHNICALSTRATUM,\n IFCGLOBALLYUNIQUEID,\n IFCGRADIENTCURVE,\n IFCGRID,\n IFCGRIDAXIS,\n IFCGRIDPLACEMENT,\n IFCGROUP,\n IFCHALFSPACESOLID,\n IFCHEATEXCHANGER,\n IFCHEATEXCHANGERTYPE,\n IFCHEATFLUXDENSITYMEASURE,\n IFCHEATINGVALUEMEASURE,\n IFCHOURINDAY,\n IFCHUMIDIFIER,\n IFCHUMIDIFIERTYPE,\n IFCHYGROSCOPICMATERIALPROPERTIES,\n IFCIDENTIFIER,\n IFCILLUMINANCEMEASURE,\n IFCIMAGETEXTURE,\n IFCIMPACTPROTECTIONDEVICE,\n IFCIMPACTPROTECTIONDEVICETYPE,\n IFCINDEXEDCOLOURMAP,\n IFCINDEXEDPOLYCURVE,\n IFCINDEXEDPOLYGONALFACE,\n IFCINDEXEDPOLYGONALFACEWITHVOIDS,\n IFCINDEXEDPOLYGONALTEXTUREMAP,\n IFCINDEXEDTEXTUREMAP,\n IFCINDEXEDTRIANGLETEXTUREMAP,\n IFCINDUCTANCEMEASURE,\n IFCINTEGER,\n IFCINTEGERCOUNTRATEMEASURE,\n IFCINTERCEPTOR,\n IFCINTERCEPTORTYPE,\n IFCINTERSECTIONCURVE,\n IFCINVENTORY,\n IFCIONCONCENTRATIONMEASURE,\n IFCIRREGULARTIMESERIES,\n IFCIRREGULARTIMESERIESVALUE,\n IFCISHAPEPROFILEDEF,\n IFCISOTHERMALMOISTURECAPACITYMEASURE,\n IFCJUNCTIONBOX,\n IFCJUNCTIONBOXTYPE,\n IFCKERB,\n IFCKERBTYPE,\n IFCKINEMATICVISCOSITYMEASURE,\n IFCLABEL,\n IFCLABORRESOURCE,\n IFCLABORRESOURCETYPE,\n IFCLAGTIME,\n IFCLAMP,\n IFCLAMPTYPE,\n IFCLANGUAGEID,\n IFCLENGTHMEASURE,\n IFCLIBRARYINFORMATION,\n IFCLIBRARYREFERENCE,\n IFCLIGHTDISTRIBUTIONDATA,\n IFCLIGHTFIXTURE,\n IFCLIGHTFIXTURETYPE,\n IFCLIGHTINTENSITYDISTRIBUTION,\n IFCLIGHTSOURCE,\n IFCLIGHTSOURCEAMBIENT,\n IFCLIGHTSOURCEDIRECTIONAL,\n IFCLIGHTSOURCEGONIOMETRIC,\n IFCLIGHTSOURCEPOSITIONAL,\n IFCLIGHTSOURCESPOT,\n IFCLINE,\n IFCLINEARDIMENSION,\n IFCLINEARELEMENT,\n IFCLINEARFORCEMEASURE,\n IFCLINEARMOMENTMEASURE,\n IFCLINEARPLACEMENT,\n IFCLINEARPOSITIONINGELEMENT,\n IFCLINEARSTIFFNESSMEASURE,\n IFCLINEARVELOCITYMEASURE,\n IFCLINEINDEX,\n IFCLIQUIDTERMINAL,\n IFCLIQUIDTERMINALTYPE,\n IFCLOCALPLACEMENT,\n IFCLOCALTIME,\n IFCLOGICAL,\n IFCLOOP,\n IFCLSHAPEPROFILEDEF,\n IFCLUMINOUSFLUXMEASURE,\n IFCLUMINOUSINTENSITYDISTRIBUTIONMEASURE,\n IFCLUMINOUSINTENSITYMEASURE,\n IFCMAGNETICFLUXDENSITYMEASURE,\n IFCMAGNETICFLUXMEASURE,\n IFCMANIFOLDSOLIDBREP,\n IFCMAPCONVERSION,\n IFCMAPPEDITEM,\n IFCMARINEFACILITY,\n IFCMARINEPART,\n IFCMASSDENSITYMEASURE,\n IFCMASSFLOWRATEMEASURE,\n IFCMASSMEASURE,\n IFCMASSPERLENGTHMEASURE,\n IFCMATERIAL,\n IFCMATERIALCLASSIFICATIONRELATIONSHIP,\n IFCMATERIALCONSTITUENT,\n IFCMATERIALCONSTITUENTSET,\n IFCMATERIALDEFINITION,\n IFCMATERIALDEFINITIONREPRESENTATION,\n IFCMATERIALLAYER,\n IFCMATERIALLAYERSET,\n IFCMATERIALLAYERSETUSAGE,\n IFCMATERIALLAYERWITHOFFSETS,\n IFCMATERIALLIST,\n IFCMATERIALPROFILE,\n IFCMATERIALPROFILESET,\n IFCMATERIALPROFILESETUSAGE,\n IFCMATERIALPROFILESETUSAGETAPERING,\n IFCMATERIALPROFILEWITHOFFSETS,\n IFCMATERIALPROPERTIES,\n IFCMATERIALRELATIONSHIP,\n IFCMATERIALUSAGEDEFINITION,\n IFCMEASUREWITHUNIT,\n IFCMECHANICALCONCRETEMATERIALPROPERTIES,\n IFCMECHANICALFASTENER,\n IFCMECHANICALFASTENERTYPE,\n IFCMECHANICALMATERIALPROPERTIES,\n IFCMECHANICALSTEELMATERIALPROPERTIES,\n IFCMEDICALDEVICE,\n IFCMEDICALDEVICETYPE,\n IFCMEMBER,\n IFCMEMBERSTANDARDCASE,\n IFCMEMBERTYPE,\n IFCMETRIC,\n IFCMINUTEINHOUR,\n IFCMIRROREDPROFILEDEF,\n IFCMOBILETELECOMMUNICATIONSAPPLIANCE,\n IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE,\n IFCMODULUSOFELASTICITYMEASURE,\n IFCMODULUSOFLINEARSUBGRADEREACTIONMEASURE,\n IFCMODULUSOFROTATIONALSUBGRADEREACTIONMEASURE,\n IFCMODULUSOFSUBGRADEREACTIONMEASURE,\n IFCMOISTUREDIFFUSIVITYMEASURE,\n IFCMOLECULARWEIGHTMEASURE,\n IFCMOMENTOFINERTIAMEASURE,\n IFCMONETARYMEASURE,\n IFCMONETARYUNIT,\n IFCMONTHINYEARNUMBER,\n IFCMOORINGDEVICE,\n IFCMOORINGDEVICETYPE,\n IFCMOTORCONNECTION,\n IFCMOTORCONNECTIONTYPE,\n IFCMOVE,\n IFCNAMEDUNIT,\n IFCNAVIGATIONELEMENT,\n IFCNAVIGATIONELEMENTTYPE,\n IFCNONNEGATIVELENGTHMEASURE,\n IFCNORMALISEDRATIOMEASURE,\n IFCNUMERICMEASURE,\n IFCOBJECT,\n IFCOBJECTDEFINITION,\n IFCOBJECTIVE,\n IFCOBJECTPLACEMENT,\n IFCOCCUPANT,\n IFCOFFSETCURVE,\n IFCOFFSETCURVE2D,\n IFCOFFSETCURVE3D,\n IFCOFFSETCURVEBYDISTANCES,\n IFCONEDIRECTIONREPEATFACTOR,\n IFCOPENCROSSPROFILEDEF,\n IFCOPENINGELEMENT,\n IFCOPENINGSTANDARDCASE,\n IFCOPENSHELL,\n IFCOPTICALMATERIALPROPERTIES,\n IFCORDERACTION,\n IFCORGANIZATION,\n IFCORGANIZATIONRELATIONSHIP,\n IFCORIENTEDEDGE,\n IFCOUTERBOUNDARYCURVE,\n IFCOUTLET,\n IFCOUTLETTYPE,\n IFCOWNERHISTORY,\n IFCPARAMETERIZEDPROFILEDEF,\n IFCPARAMETERVALUE,\n IFCPATH,\n IFCPAVEMENT,\n IFCPAVEMENTTYPE,\n IFCPCURVE,\n IFCPERFORMANCEHISTORY,\n IFCPERMEABLECOVERINGPROPERTIES,\n IFCPERMIT,\n IFCPERSON,\n IFCPERSONANDORGANIZATION,\n IFCPHMEASURE,\n IFCPHYSICALCOMPLEXQUANTITY,\n IFCPHYSICALQUANTITY,\n IFCPHYSICALSIMPLEQUANTITY,\n IFCPILE,\n IFCPILETYPE,\n IFCPIPEFITTING,\n IFCPIPEFITTINGTYPE,\n IFCPIPESEGMENT,\n IFCPIPESEGMENTTYPE,\n IFCPIXELTEXTURE,\n IFCPLACEMENT,\n IFCPLANARBOX,\n IFCPLANAREXTENT,\n IFCPLANARFORCEMEASURE,\n IFCPLANE,\n IFCPLANEANGLEMEASURE,\n IFCPLATE,\n IFCPLATESTANDARDCASE,\n IFCPLATETYPE,\n IFCPOINT,\n IFCPOINTBYDISTANCEEXPRESSION,\n IFCPOINTONCURVE,\n IFCPOINTONSURFACE,\n IFCPOLYGONALBOUNDEDHALFSPACE,\n IFCPOLYGONALFACESET,\n IFCPOLYLINE,\n IFCPOLYLOOP,\n IFCPOLYNOMIALCURVE,\n IFCPORT,\n IFCPOSITIONINGELEMENT,\n IFCPOSITIVEINTEGER,\n IFCPOSITIVELENGTHMEASURE,\n IFCPOSITIVEPLANEANGLEMEASURE,\n IFCPOSITIVERATIOMEASURE,\n IFCPOSTALADDRESS,\n IFCPOWERMEASURE,\n IFCPREDEFINEDCOLOUR,\n IFCPREDEFINEDCURVEFONT,\n IFCPREDEFINEDDIMENSIONSYMBOL,\n IFCPREDEFINEDITEM,\n IFCPREDEFINEDPOINTMARKERSYMBOL,\n IFCPREDEFINEDPROPERTIES,\n IFCPREDEFINEDPROPERTYSET,\n IFCPREDEFINEDSYMBOL,\n IFCPREDEFINEDTERMINATORSYMBOL,\n IFCPREDEFINEDTEXTFONT,\n IFCPRESENTABLETEXT,\n IFCPRESENTATIONITEM,\n IFCPRESENTATIONLAYERASSIGNMENT,\n IFCPRESENTATIONLAYERWITHSTYLE,\n IFCPRESENTATIONSTYLE,\n IFCPRESENTATIONSTYLEASSIGNMENT,\n IFCPRESSUREMEASURE,\n IFCPROCEDURE,\n IFCPROCEDURETYPE,\n IFCPROCESS,\n IFCPRODUCT,\n IFCPRODUCTDEFINITIONSHAPE,\n IFCPRODUCTREPRESENTATION,\n IFCPRODUCTSOFCOMBUSTIONPROPERTIES,\n IFCPROFILEDEF,\n IFCPROFILEPROPERTIES,\n IFCPROJECT,\n IFCPROJECTEDCRS,\n IFCPROJECTIONCURVE,\n IFCPROJECTIONELEMENT,\n IFCPROJECTLIBRARY,\n IFCPROJECTORDER,\n IFCPROJECTORDERRECORD,\n IFCPROPERTY,\n IFCPROPERTYABSTRACTION,\n IFCPROPERTYBOUNDEDVALUE,\n IFCPROPERTYCONSTRAINTRELATIONSHIP,\n IFCPROPERTYDEFINITION,\n IFCPROPERTYDEPENDENCYRELATIONSHIP,\n IFCPROPERTYENUMERATEDVALUE,\n IFCPROPERTYENUMERATION,\n IFCPROPERTYLISTVALUE,\n IFCPROPERTYREFERENCEVALUE,\n IFCPROPERTYSET,\n IFCPROPERTYSETDEFINITION,\n IFCPROPERTYSETDEFINITIONSET,\n IFCPROPERTYSETTEMPLATE,\n IFCPROPERTYSINGLEVALUE,\n IFCPROPERTYTABLEVALUE,\n IFCPROPERTYTEMPLATE,\n IFCPROPERTYTEMPLATEDEFINITION,\n IFCPROTECTIVEDEVICE,\n IFCPROTECTIVEDEVICETRIPPINGUNIT,\n IFCPROTECTIVEDEVICETRIPPINGUNITTYPE,\n IFCPROTECTIVEDEVICETYPE,\n IFCPROXY,\n IFCPUMP,\n IFCPUMPTYPE,\n IFCQUANTITYAREA,\n IFCQUANTITYCOUNT,\n IFCQUANTITYLENGTH,\n IFCQUANTITYNUMBER,\n IFCQUANTITYSET,\n IFCQUANTITYTIME,\n IFCQUANTITYVOLUME,\n IFCQUANTITYWEIGHT,\n IFCRADIOACTIVITYMEASURE,\n IFCRADIUSDIMENSION,\n IFCRAIL,\n IFCRAILING,\n IFCRAILINGTYPE,\n IFCRAILTYPE,\n IFCRAILWAY,\n IFCRAILWAYPART,\n IFCRAMP,\n IFCRAMPFLIGHT,\n IFCRAMPFLIGHTTYPE,\n IFCRAMPTYPE,\n IFCRATIOMEASURE,\n IFCRATIONALBEZIERCURVE,\n IFCRATIONALBSPLINECURVEWITHKNOTS,\n IFCRATIONALBSPLINESURFACEWITHKNOTS,\n IFCREAL,\n IFCRECTANGLEHOLLOWPROFILEDEF,\n IFCRECTANGLEPROFILEDEF,\n IFCRECTANGULARPYRAMID,\n IFCRECTANGULARTRIMMEDSURFACE,\n IFCRECURRENCEPATTERN,\n IFCREFERENCE,\n IFCREFERENCESVALUEDOCUMENT,\n IFCREFERENT,\n IFCREGULARTIMESERIES,\n IFCREINFORCEDSOIL,\n IFCREINFORCEMENTBARPROPERTIES,\n IFCREINFORCEMENTDEFINITIONPROPERTIES,\n IFCREINFORCINGBAR,\n IFCREINFORCINGBARTYPE,\n IFCREINFORCINGELEMENT,\n IFCREINFORCINGELEMENTTYPE,\n IFCREINFORCINGMESH,\n IFCREINFORCINGMESHTYPE,\n IFCRELADHERESTOELEMENT,\n IFCRELAGGREGATES,\n IFCRELASSIGNS,\n IFCRELASSIGNSTASKS,\n IFCRELASSIGNSTOACTOR,\n IFCRELASSIGNSTOCONTROL,\n IFCRELASSIGNSTOGROUP,\n IFCRELASSIGNSTOGROUPBYFACTOR,\n IFCRELASSIGNSTOPROCESS,\n IFCRELASSIGNSTOPRODUCT,\n IFCRELASSIGNSTOPROJECTORDER,\n IFCRELASSIGNSTORESOURCE,\n IFCRELASSOCIATES,\n IFCRELASSOCIATESAPPLIEDVALUE,\n IFCRELASSOCIATESAPPROVAL,\n IFCRELASSOCIATESCLASSIFICATION,\n IFCRELASSOCIATESCONSTRAINT,\n IFCRELASSOCIATESDOCUMENT,\n IFCRELASSOCIATESLIBRARY,\n IFCRELASSOCIATESMATERIAL,\n IFCRELASSOCIATESPROFILEDEF,\n IFCRELASSOCIATESPROFILEPROPERTIES,\n IFCRELATIONSHIP,\n IFCRELAXATION,\n IFCRELCONNECTS,\n IFCRELCONNECTSELEMENTS,\n IFCRELCONNECTSPATHELEMENTS,\n IFCRELCONNECTSPORTS,\n IFCRELCONNECTSPORTTOELEMENT,\n IFCRELCONNECTSSTRUCTURALACTIVITY,\n IFCRELCONNECTSSTRUCTURALELEMENT,\n IFCRELCONNECTSSTRUCTURALMEMBER,\n IFCRELCONNECTSWITHECCENTRICITY,\n IFCRELCONNECTSWITHREALIZINGELEMENTS,\n IFCRELCONTAINEDINSPATIALSTRUCTURE,\n IFCRELCOVERSBLDGELEMENTS,\n IFCRELCOVERSSPACES,\n IFCRELDECLARES,\n IFCRELDECOMPOSES,\n IFCRELDEFINES,\n IFCRELDEFINESBYOBJECT,\n IFCRELDEFINESBYPROPERTIES,\n IFCRELDEFINESBYTEMPLATE,\n IFCRELDEFINESBYTYPE,\n IFCRELFILLSELEMENT,\n IFCRELFLOWCONTROLELEMENTS,\n IFCRELINTERACTIONREQUIREMENTS,\n IFCRELINTERFERESELEMENTS,\n IFCRELNESTS,\n IFCRELOCCUPIESSPACES,\n IFCRELOVERRIDESPROPERTIES,\n IFCRELPOSITIONS,\n IFCRELPROJECTSELEMENT,\n IFCRELREFERENCEDINSPATIALSTRUCTURE,\n IFCRELSCHEDULESCOSTITEMS,\n IFCRELSEQUENCE,\n IFCRELSERVICESBUILDINGS,\n IFCRELSPACEBOUNDARY,\n IFCRELSPACEBOUNDARY1STLEVEL,\n IFCRELSPACEBOUNDARY2NDLEVEL,\n IFCRELVOIDSELEMENT,\n IFCREPARAMETRISEDCOMPOSITECURVESEGMENT,\n IFCREPRESENTATION,\n IFCREPRESENTATIONCONTEXT,\n IFCREPRESENTATIONITEM,\n IFCREPRESENTATIONMAP,\n IFCRESOURCE,\n IFCRESOURCEAPPROVALRELATIONSHIP,\n IFCRESOURCECONSTRAINTRELATIONSHIP,\n IFCRESOURCELEVELRELATIONSHIP,\n IFCRESOURCETIME,\n IFCREVOLVEDAREASOLID,\n IFCREVOLVEDAREASOLIDTAPERED,\n IFCRIBPLATEPROFILEPROPERTIES,\n IFCRIGHTCIRCULARCONE,\n IFCRIGHTCIRCULARCYLINDER,\n IFCROAD,\n IFCROADPART,\n IFCROOF,\n IFCROOFTYPE,\n IFCROOT,\n IFCROTATIONALFREQUENCYMEASURE,\n IFCROTATIONALMASSMEASURE,\n IFCROTATIONALSTIFFNESSMEASURE,\n IFCROUNDEDEDGEFEATURE,\n IFCROUNDEDRECTANGLEPROFILEDEF,\n IFCSANITARYTERMINAL,\n IFCSANITARYTERMINALTYPE,\n IFCSCHEDULETIMECONTROL,\n IFCSCHEDULINGTIME,\n IFCSEAMCURVE,\n IFCSECONDINMINUTE,\n IFCSECONDORDERPOLYNOMIALSPIRAL,\n IFCSECTIONALAREAINTEGRALMEASURE,\n IFCSECTIONEDSOLID,\n IFCSECTIONEDSOLIDHORIZONTAL,\n IFCSECTIONEDSPINE,\n IFCSECTIONEDSURFACE,\n IFCSECTIONMODULUSMEASURE,\n IFCSECTIONPROPERTIES,\n IFCSECTIONREINFORCEMENTPROPERTIES,\n IFCSEGMENT,\n IFCSEGMENTEDREFERENCECURVE,\n IFCSENSOR,\n IFCSENSORTYPE,\n IFCSERVICELIFE,\n IFCSERVICELIFEFACTOR,\n IFCSEVENTHORDERPOLYNOMIALSPIRAL,\n IFCSHADINGDEVICE,\n IFCSHADINGDEVICETYPE,\n IFCSHAPEASPECT,\n IFCSHAPEMODEL,\n IFCSHAPEREPRESENTATION,\n IFCSHEARMODULUSMEASURE,\n IFCSHELLBASEDSURFACEMODEL,\n IFCSIGN,\n IFCSIGNAL,\n IFCSIGNALTYPE,\n IFCSIGNTYPE,\n IFCSIMPLEPROPERTY,\n IFCSIMPLEPROPERTYTEMPLATE,\n IFCSINESPIRAL,\n IFCSITE,\n IFCSIUNIT,\n IFCSLAB,\n IFCSLABELEMENTEDCASE,\n IFCSLABSTANDARDCASE,\n IFCSLABTYPE,\n IFCSLIPPAGECONNECTIONCONDITION,\n IFCSOLARDEVICE,\n IFCSOLARDEVICETYPE,\n IFCSOLIDANGLEMEASURE,\n IFCSOLIDMODEL,\n IFCSOUNDPOWERLEVELMEASURE,\n IFCSOUNDPOWERMEASURE,\n IFCSOUNDPRESSURELEVELMEASURE,\n IFCSOUNDPRESSUREMEASURE,\n IFCSOUNDPROPERTIES,\n IFCSOUNDVALUE,\n IFCSPACE,\n IFCSPACEHEATER,\n IFCSPACEHEATERTYPE,\n IFCSPACEPROGRAM,\n IFCSPACETHERMALLOADPROPERTIES,\n IFCSPACETYPE,\n IFCSPATIALELEMENT,\n IFCSPATIALELEMENTTYPE,\n IFCSPATIALSTRUCTUREELEMENT,\n IFCSPATIALSTRUCTUREELEMENTTYPE,\n IFCSPATIALZONE,\n IFCSPATIALZONETYPE,\n IFCSPECIFICHEATCAPACITYMEASURE,\n IFCSPECULAREXPONENT,\n IFCSPECULARROUGHNESS,\n IFCSPHERE,\n IFCSPHERICALSURFACE,\n IFCSPIRAL,\n IFCSTACKTERMINAL,\n IFCSTACKTERMINALTYPE,\n IFCSTAIR,\n IFCSTAIRFLIGHT,\n IFCSTAIRFLIGHTTYPE,\n IFCSTAIRTYPE,\n IFCSTRUCTURALACTION,\n IFCSTRUCTURALACTIVITY,\n IFCSTRUCTURALANALYSISMODEL,\n IFCSTRUCTURALCONNECTION,\n IFCSTRUCTURALCONNECTIONCONDITION,\n IFCSTRUCTURALCURVEACTION,\n IFCSTRUCTURALCURVECONNECTION,\n IFCSTRUCTURALCURVEMEMBER,\n IFCSTRUCTURALCURVEMEMBERVARYING,\n IFCSTRUCTURALCURVEREACTION,\n IFCSTRUCTURALITEM,\n IFCSTRUCTURALLINEARACTION,\n IFCSTRUCTURALLINEARACTIONVARYING,\n IFCSTRUCTURALLOAD,\n IFCSTRUCTURALLOADCASE,\n IFCSTRUCTURALLOADCONFIGURATION,\n IFCSTRUCTURALLOADGROUP,\n IFCSTRUCTURALLOADLINEARFORCE,\n IFCSTRUCTURALLOADORRESULT,\n IFCSTRUCTURALLOADPLANARFORCE,\n IFCSTRUCTURALLOADSINGLEDISPLACEMENT,\n IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION,\n IFCSTRUCTURALLOADSINGLEFORCE,\n IFCSTRUCTURALLOADSINGLEFORCEWARPING,\n IFCSTRUCTURALLOADSTATIC,\n IFCSTRUCTURALLOADTEMPERATURE,\n IFCSTRUCTURALMEMBER,\n IFCSTRUCTURALPLANARACTION,\n IFCSTRUCTURALPLANARACTIONVARYING,\n IFCSTRUCTURALPOINTACTION,\n IFCSTRUCTURALPOINTCONNECTION,\n IFCSTRUCTURALPOINTREACTION,\n IFCSTRUCTURALPROFILEPROPERTIES,\n IFCSTRUCTURALREACTION,\n IFCSTRUCTURALRESULTGROUP,\n IFCSTRUCTURALSTEELPROFILEPROPERTIES,\n IFCSTRUCTURALSURFACEACTION,\n IFCSTRUCTURALSURFACECONNECTION,\n IFCSTRUCTURALSURFACEMEMBER,\n IFCSTRUCTURALSURFACEMEMBERVARYING,\n IFCSTRUCTURALSURFACEREACTION,\n IFCSTRUCTUREDDIMENSIONCALLOUT,\n IFCSTYLEDITEM,\n IFCSTYLEDREPRESENTATION,\n IFCSTYLEMODEL,\n IFCSUBCONTRACTRESOURCE,\n IFCSUBCONTRACTRESOURCETYPE,\n IFCSUBEDGE,\n IFCSURFACE,\n IFCSURFACECURVE,\n IFCSURFACECURVESWEPTAREASOLID,\n IFCSURFACEFEATURE,\n IFCSURFACEOFLINEAREXTRUSION,\n IFCSURFACEOFREVOLUTION,\n IFCSURFACEREINFORCEMENTAREA,\n IFCSURFACESTYLE,\n IFCSURFACESTYLELIGHTING,\n IFCSURFACESTYLEREFRACTION,\n IFCSURFACESTYLERENDERING,\n IFCSURFACESTYLESHADING,\n IFCSURFACESTYLEWITHTEXTURES,\n IFCSURFACETEXTURE,\n IFCSWEPTAREASOLID,\n IFCSWEPTDISKSOLID,\n IFCSWEPTDISKSOLIDPOLYGONAL,\n IFCSWEPTSURFACE,\n IFCSWITCHINGDEVICE,\n IFCSWITCHINGDEVICETYPE,\n IFCSYMBOLSTYLE,\n IFCSYSTEM,\n IFCSYSTEMFURNITUREELEMENT,\n IFCSYSTEMFURNITUREELEMENTTYPE,\n IFCTABLE,\n IFCTABLECOLUMN,\n IFCTABLEROW,\n IFCTANK,\n IFCTANKTYPE,\n IFCTASK,\n IFCTASKTIME,\n IFCTASKTIMERECURRING,\n IFCTASKTYPE,\n IFCTELECOMADDRESS,\n IFCTEMPERATUREGRADIENTMEASURE,\n IFCTEMPERATURERATEOFCHANGEMEASURE,\n IFCTENDON,\n IFCTENDONANCHOR,\n IFCTENDONANCHORTYPE,\n IFCTENDONCONDUIT,\n IFCTENDONCONDUITTYPE,\n IFCTENDONTYPE,\n IFCTERMINATORSYMBOL,\n IFCTESSELLATEDFACESET,\n IFCTESSELLATEDITEM,\n IFCTEXT,\n IFCTEXTALIGNMENT,\n IFCTEXTDECORATION,\n IFCTEXTFONTNAME,\n IFCTEXTLITERAL,\n IFCTEXTLITERALWITHEXTENT,\n IFCTEXTSTYLE,\n IFCTEXTSTYLEFONTMODEL,\n IFCTEXTSTYLEFORDEFINEDFONT,\n IFCTEXTSTYLETEXTMODEL,\n IFCTEXTSTYLEWITHBOXCHARACTERISTICS,\n IFCTEXTTRANSFORMATION,\n IFCTEXTURECOORDINATE,\n IFCTEXTURECOORDINATEGENERATOR,\n IFCTEXTURECOORDINATEINDICES,\n IFCTEXTURECOORDINATEINDICESWITHVOIDS,\n IFCTEXTUREMAP,\n IFCTEXTUREVERTEX,\n IFCTEXTUREVERTEXLIST,\n IFCTHERMALADMITTANCEMEASURE,\n IFCTHERMALCONDUCTIVITYMEASURE,\n IFCTHERMALEXPANSIONCOEFFICIENTMEASURE,\n IFCTHERMALMATERIALPROPERTIES,\n IFCTHERMALRESISTANCEMEASURE,\n IFCTHERMALTRANSMITTANCEMEASURE,\n IFCTHERMODYNAMICTEMPERATUREMEASURE,\n IFCTHIRDORDERPOLYNOMIALSPIRAL,\n IFCTIME,\n IFCTIMEMEASURE,\n IFCTIMEPERIOD,\n IFCTIMESERIES,\n IFCTIMESERIESREFERENCERELATIONSHIP,\n IFCTIMESERIESSCHEDULE,\n IFCTIMESERIESVALUE,\n IFCTIMESTAMP,\n IFCTOPOLOGICALREPRESENTATIONITEM,\n IFCTOPOLOGYREPRESENTATION,\n IFCTOROIDALSURFACE,\n IFCTORQUEMEASURE,\n IFCTRACKELEMENT,\n IFCTRACKELEMENTTYPE,\n IFCTRANSFORMER,\n IFCTRANSFORMERTYPE,\n IFCTRANSPORTATIONDEVICE,\n IFCTRANSPORTATIONDEVICETYPE,\n IFCTRANSPORTELEMENT,\n IFCTRANSPORTELEMENTTYPE,\n IFCTRAPEZIUMPROFILEDEF,\n IFCTRIANGULATEDFACESET,\n IFCTRIANGULATEDIRREGULARNETWORK,\n IFCTRIMMEDCURVE,\n IFCTSHAPEPROFILEDEF,\n IFCTUBEBUNDLE,\n IFCTUBEBUNDLETYPE,\n IFCTWODIRECTIONREPEATFACTOR,\n IFCTYPEOBJECT,\n IFCTYPEPROCESS,\n IFCTYPEPRODUCT,\n IFCTYPERESOURCE,\n IFCUNITARYCONTROLELEMENT,\n IFCUNITARYCONTROLELEMENTTYPE,\n IFCUNITARYEQUIPMENT,\n IFCUNITARYEQUIPMENTTYPE,\n IFCUNITASSIGNMENT,\n IFCURIREFERENCE,\n IFCUSHAPEPROFILEDEF,\n IFCVALVE,\n IFCVALVETYPE,\n IFCVAPORPERMEABILITYMEASURE,\n IFCVECTOR,\n IFCVEHICLE,\n IFCVEHICLETYPE,\n IFCVERTEX,\n IFCVERTEXBASEDTEXTUREMAP,\n IFCVERTEXLOOP,\n IFCVERTEXPOINT,\n IFCVIBRATIONDAMPER,\n IFCVIBRATIONDAMPERTYPE,\n IFCVIBRATIONISOLATOR,\n IFCVIBRATIONISOLATORTYPE,\n IFCVIRTUALELEMENT,\n IFCVIRTUALGRIDINTERSECTION,\n IFCVOIDINGFEATURE,\n IFCVOLUMEMEASURE,\n IFCVOLUMETRICFLOWRATEMEASURE,\n IFCWALL,\n IFCWALLELEMENTEDCASE,\n IFCWALLSTANDARDCASE,\n IFCWALLTYPE,\n IFCWARPINGCONSTANTMEASURE,\n IFCWARPINGMOMENTMEASURE,\n IFCWASTETERMINAL,\n IFCWASTETERMINALTYPE,\n IFCWATERPROPERTIES,\n IFCWINDOW,\n IFCWINDOWLININGPROPERTIES,\n IFCWINDOWPANELPROPERTIES,\n IFCWINDOWSTANDARDCASE,\n IFCWINDOWSTYLE,\n IFCWINDOWTYPE,\n IFCWORKCALENDAR,\n IFCWORKCONTROL,\n IFCWORKPLAN,\n IFCWORKSCHEDULE,\n IFCWORKTIME,\n IFCYEARNUMBER,\n IFCZONE,\n IFCZSHAPEPROFILEDEF,\n INTEGER,\n IfcAPI2 as IfcAPI,\n IfcLineObject,\n InheritanceDef,\n InversePropertyDef,\n LABEL,\n LINE_END,\n LogLevel,\n Properties,\n REAL,\n REF,\n SET_BEGIN,\n SET_END,\n STRING,\n SchemaNames,\n Schemas,\n ToRawLineData,\n TypeInitialisers,\n UNKNOWN,\n logical,\n ms\n};\n", "import {\n createMat4,\n createVec3,\n createVec4,\n transformPoint3,\n transformPoint4,\n transformPositions3\n} from \"@xeokit/matrix\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\n//import * as WebIFC from \"web-ifc/web-ifc-api-node\";\nimport * as WebIFC from \"web-ifc\";\nimport {IfcElement, IfcRelAggregates, ifcTypeCodes} from \"@xeokit/ifctypes\";\nimport {worldToRTCPositions} from \"@xeokit/rtc\";\nimport {TrianglesPrimitive} from \"@xeokit/constants\";\nimport {SDKError} from \"@xeokit/core\";\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\n/**\n * @private\n */\ninterface ParsingContext {\n fileData: ArrayBuffer;\n ifcAPI: WebIFC.IfcAPI;\n sceneModel: SceneModel;\n dataModel?: DataModel;\n nextId: number;\n modelId: number;\n lines: WebIFC.Vector;\n ifcProjectId: number;\n}\n\n/**\n * Loads IFC into a {@link @xeokit/scene!SceneModel | SceneModel} and/or {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/webifc\" | @xeokit/webifc} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - IFC file contents.\n * @param params.ifcAPI - WebIFC API.\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @returns {Promise} Resolves when IFC has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadWebIFC(params: {\n fileData: ArrayBuffer,\n ifcAPI: WebIFC.IfcAPI,\n sceneModel: SceneModel,\n dataModel?: DataModel\n}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n const dataArray = new Uint8Array(params.fileData);\n const modelId = params.ifcAPI.OpenModel(dataArray);\n const lines = params.ifcAPI.GetLineIDsWithType(modelId, WebIFC.IFCPROJECT);\n const ifcProjectId = lines.get(0);\n const ctx: ParsingContext = {\n fileData: params.fileData,\n modelId,\n lines,\n ifcProjectId,\n ifcAPI: params.ifcAPI,\n sceneModel: params.sceneModel,\n dataModel: params.dataModel,\n nextId: 0\n };\n parseIFC(ctx);\n resolve();\n });\n}\n\nfunction parseIFC(ctx: ParsingContext) {\n if (ctx.dataModel) {\n parseDataModel(ctx);\n }\n if (ctx.sceneModel) {\n parseSceneModel(ctx);\n }\n}\n\nfunction parseDataModel(ctx: ParsingContext) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, WebIFC.IFCPROJECT);\n const ifcProjectId = lines.get(0);\n const ifcProject = ctx.ifcAPI.GetLine(ctx.modelId, ifcProjectId);\n parseDataObjectAggregation(ctx, ifcProject);\n parsePropertySets(ctx);\n}\n\nfunction parsePropertySets(ctx: any) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, WebIFC.IFCRELDEFINESBYPROPERTIES);\n for (let i = 0; i < lines.size(); i++) {\n let relID = lines.get(i);\n let rel = ctx.ifcAPI.GetLine(ctx.modelId, relID, true);\n if (rel) {\n const relatingPropertyDefinition = rel.RelatingPropertyDefinition;\n if (!relatingPropertyDefinition) {\n continue;\n }\n const propertySetId = relatingPropertyDefinition.GlobalId.value;\n const props = relatingPropertyDefinition.HasProperties;\n if (props && props.length > 0) {\n const propertySetType = \"Default\";\n const propertySetName = relatingPropertyDefinition.Name.value;\n const properties = [];\n for (let i = 0, len = props.length; i < len; i++) {\n const prop = props[i];\n const name = prop.Name;\n const nominalValue = prop.NominalValue;\n if (name && nominalValue) {\n properties.push({\n name: name.value,\n type: nominalValue.type,\n value: nominalValue.value,\n valueType: nominalValue.valueType,\n description: prop.Description ? prop.Description.value : (nominalValue.description ? nominalValue.description : \"\")\n });\n }\n }\n ctx.dataModel.createPropertySet({\n id: propertySetId,\n type: propertySetType,\n name: propertySetName,\n properties: properties\n });\n const relatedObjects = rel.RelatedObjects;\n if (!relatedObjects || relatedObjects.length === 0) {\n return;\n }\n for (let i = 0, len = relatedObjects.length; i < len; i++) {\n const relatedObject = relatedObjects[i];\n const dataObjectId = relatedObject.GlobalId.value;\n const dataObject = ctx.dataModel.objects[dataObjectId];\n if (dataObject) {\n if (!dataObject.propertySetIds) {\n dataObject.propertySetIds = [];\n }\n dataObject.propertySetIds.push(propertySetId);\n }\n }\n }\n }\n }\n}\n\nfunction parseDataObjectAggregation(ctx: ParsingContext, ifcElement: any, parentDataObjectId?: string) {\n const type = ifcElement.__proto__.constructor.name;\n createDataObject(ctx, ifcElement, parentDataObjectId);\n const dataObjectId = ifcElement.GlobalId.value;\n parseRelatedItemsOfType(ctx, ifcElement.expressID, 'RelatingObject', 'RelatedObjects', WebIFC.IFCRELAGGREGATES, dataObjectId);\n parseRelatedItemsOfType(ctx, ifcElement.expressID, 'RelatingStructure', 'RelatedElements', WebIFC.IFCRELCONTAINEDINSPATIALSTRUCTURE, dataObjectId);\n}\n\nfunction createDataObject(ctx: ParsingContext, ifcElement: any, parentDataObjectId?: string) {\n const id = ifcElement.GlobalId.value;\n const type = ifcElement.__proto__.constructor.name;\n const name = (ifcElement.Name && ifcElement.Name.value !== \"\") ? ifcElement.Name.value : type;\n let typeCode = ifcTypeCodes[type];\n if (typeCode == undefined) {\n typeCode = IfcElement;\n // TODO: Log this\n }\n ctx.dataModel.createObject({\n id,\n name,\n type: typeCode\n });\n if (parentDataObjectId) {\n ctx.dataModel.createRelationship({\n type: IfcRelAggregates,\n relatingObjectId: parentDataObjectId,\n relatedObjectId: id\n });\n }\n}\n\nfunction parseRelatedItemsOfType(ctx: ParsingContext, id: any, relation: string, related: string, type: number, parentDataObjectId: string) {\n const lines = ctx.ifcAPI.GetLineIDsWithType(ctx.modelId, type);\n for (let i = 0; i < lines.size(); i++) {\n const relID = lines.get(i);\n const rel = ctx.ifcAPI.GetLine(ctx.modelId, relID);\n const relatedItems = rel[relation];\n let foundElement = false;\n if (Array.isArray(relatedItems)) {\n const values = relatedItems.map((item) => item.value);\n foundElement = values.includes(id);\n } else {\n foundElement = (relatedItems.value === id);\n }\n if (foundElement) {\n const element = rel[related];\n if (!Array.isArray(element)) {\n const ifcElement = ctx.ifcAPI.GetLine(ctx.modelId, element.value);\n parseDataObjectAggregation(ctx, ifcElement, parentDataObjectId);\n } else {\n element.forEach((element2) => {\n const ifcElement = ctx.ifcAPI.GetLine(ctx.modelId, element2.value);\n parseDataObjectAggregation(ctx, ifcElement, parentDataObjectId);\n });\n }\n }\n }\n}\n\nfunction parseSceneModel(ctx: ParsingContext) {\n ctx.ifcAPI.StreamAllMeshes(ctx.modelId, (flatMesh) => {\n // TODO: Can we do geometry reuse with web-ifc?\n const flatMeshExpressID = flatMesh.expressID;\n const placedGeometries = flatMesh.geometries;\n const meshIds = [];\n const properties = ctx.ifcAPI.GetLine(ctx.modelId, flatMeshExpressID);\n const objectId = properties.GlobalId.value;\n const matrix = createMat4();\n const origin = createVec3();\n for (let j = 0, lenj = placedGeometries.size(); j < lenj; j++) {\n const placedGeometry = placedGeometries.get(j);\n const geometry = ctx.ifcAPI.GetGeometry(ctx.modelId, placedGeometry.geometryExpressID);\n const vertexData = ctx.ifcAPI.GetVertexArray(geometry.GetVertexData(), geometry.GetVertexDataSize());\n const indices = ctx.ifcAPI.GetIndexArray(geometry.GetIndexData(), geometry.GetIndexDataSize());\n // De-interleave vertex arrays\n const positions = new Float64Array(vertexData.length / 2);\n const normals = new Float32Array(vertexData.length / 2);\n (matrix).set(placedGeometry.flatTransformation);\n for (let k = 0, l = 0, lenk = vertexData.length / 6; k < lenk; k++, l += 3) {\n tempVec4a[0] = vertexData[k * 6 + 0];\n tempVec4a[1] = vertexData[k * 6 + 1];\n tempVec4a[2] = vertexData[k * 6 + 2];\n tempVec4a[3] = 1;\n transformPoint4(matrix, tempVec4a, tempVec4b);\n positions[l + 0] = tempVec4b[0];\n positions[l + 1] = tempVec4b[1];\n positions[l + 2] = tempVec4b[2];\n }\n\n const rtcNeeded = worldToRTCPositions(positions, positions, origin);\n const geometryId = \"\" + ctx.nextId++;\n ctx.sceneModel.createGeometry({\n id: geometryId,\n primitive: TrianglesPrimitive,\n positions,\n indices\n });\n const meshId = \"\" + ctx.nextId++;\n ctx.sceneModel.createMesh({\n id: meshId,\n geometryId,\n // TODO: matrix with translation if rtcNeeded\n color: [placedGeometry.color.x, placedGeometry.color.y, placedGeometry.color.z],\n opacity: placedGeometry.color.w\n });\n meshIds.push(meshId);\n }\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: meshIds\n });\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fdtx.svg)](https://badge.fury.io/js/%40xeokit%2Fdtx)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/dtx/badge)](https://www.jsdelivr.com/package/npm/@xeokit/dtx)\n *\n * \n *\n * # xeokit [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) Format Importer and Exporter\n *\n * ---\n *\n * ### *Import and export SceneModels as xeokit's native binary [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) format*\n *\n * ---\n *\n * This package allows us to import and export xeokit {@link @xeokit/scene!SceneModel | SceneModels} as [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx), a\n * compact binary-encoded runtime asset delivery format for geometry and materials.\n *\n * To import a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) model into xeokit, use the {@link loadDTX} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}. To export a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) model, use the {@link saveDTX} function, which will save a\n * {@link @xeokit/scene!SceneModel | SceneModel} to [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx).\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNkk1PwzAMhv9K5RNI3dSPtemqaafd2ASiICGUS9a4ENQ2U5MixrT_Tvo1WiEQvaSvHT9-rfgEqeQIMaQ5U2oj2EvFClrSkosKUy1kaW3vG93mrSTFEnemIrdOtLTMJ3h3yv2bua86kVbINN62oavrLravRc4HwVHpSh4beW7oA38rGX-6ebhjxoUaWqxWh0ajxmq97kKZyHHDNOuUurjqcR0s72DfmKwu25Eayuhewt7xP03HbSYA1QH-aDSZi4JDYTZbU3ApJCNob3hITYpi61Ghsi6mVIOdOP8V29u7pMZFP7BgQ4FVwQQ3S9EOREG_YoEUYvPLMWN1rimYwcxVVmuZHMsUYl3VaEN94Obh-zWCOGO5MlHkQstq1y9ac9hwYCXEJ_iA2HP8eRiFAXHDZUA8J7DhCPHCieYRWRDPJ15EiB-cbfiU0kCdeeD4hLjL0DFh33Nb2HOba1ycvwAqVO7G?type=png)](https://mermaid.live/edit#pako:eNqNkk1PwzAMhv9K5RNI3dSPtemqaafd2ASiICGUS9a4ENQ2U5MixrT_Tvo1WiEQvaSvHT9-rfgEqeQIMaQ5U2oj2EvFClrSkosKUy1kaW3vG93mrSTFEnemIrdOtLTMJ3h3yv2bua86kVbINN62oavrLravRc4HwVHpSh4beW7oA38rGX-6ebhjxoUaWqxWh0ajxmq97kKZyHHDNOuUurjqcR0s72DfmKwu25Eayuhewt7xP03HbSYA1QH-aDSZi4JDYTZbU3ApJCNob3hITYpi61Ghsi6mVIOdOP8V29u7pMZFP7BgQ4FVwQQ3S9EOREG_YoEUYvPLMWN1rimYwcxVVmuZHMsUYl3VaEN94Obh-zWCOGO5MlHkQstq1y9ac9hwYCXEJ_iA2HP8eRiFAXHDZUA8J7DhCPHCieYRWRDPJ15EiB-cbfiU0kCdeeD4hLjL0DFh33Nb2HOba1ycvwAqVO7G)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/dtx\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/dtx!loadDTX | loadDTX} to load\n * a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadDTX, saveDTX} from \"@xeokit/dtx\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.dtx\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadDTX({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading DTX: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * Using {@link @xeokit/dtx!saveDTX | saveDTX} to export the {@link @xeokit/scene!SceneModel | SceneModel} back to\n * [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx):\n *\n * ````javascript\n * const arrayBuffer = saveDTX({\n * sceneModel\n * });\n * ````\n *\n * @module @xeokit/dtx\n */\nexport * from \"./loadDTX\";\nexport * from \"./saveDTX\";\nexport * from \"./versions/v1/DTXData_v1\";\n", "\n/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n/* eslint-disable space-unary-ops */\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n//const Z_FILTERED = 1;\n//const Z_HUFFMAN_ONLY = 2;\n//const Z_RLE = 3;\nconst Z_FIXED$1 = 4;\n//const Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\nconst Z_BINARY = 0;\nconst Z_TEXT = 1;\n//const Z_ASCII = 1; // = Z_TEXT\nconst Z_UNKNOWN$1 = 2;\n\n/*============================================================================*/\n\n\nfunction zero$1(buf) { let len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n// From zutil.h\n\nconst STORED_BLOCK = 0;\nconst STATIC_TREES = 1;\nconst DYN_TREES = 2;\n/* The three kinds of block type */\n\nconst MIN_MATCH$1 = 3;\nconst MAX_MATCH$1 = 258;\n/* The minimum and maximum match lengths */\n\n// From deflate.h\n/* ===========================================================================\n * Internal compression state.\n */\n\nconst LENGTH_CODES$1 = 29;\n/* number of length codes, not counting the special END_BLOCK code */\n\nconst LITERALS$1 = 256;\n/* number of literal bytes 0..255 */\n\nconst L_CODES$1 = LITERALS$1 + 1 + LENGTH_CODES$1;\n/* number of Literal or Length codes, including the END_BLOCK code */\n\nconst D_CODES$1 = 30;\n/* number of distance codes */\n\nconst BL_CODES$1 = 19;\n/* number of codes used to transfer the bit lengths */\n\nconst HEAP_SIZE$1 = 2 * L_CODES$1 + 1;\n/* maximum heap size */\n\nconst MAX_BITS$1 = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst Buf_size = 16;\n/* size of bit buffer in bi_buf */\n\n\n/* ===========================================================================\n * Constants\n */\n\nconst MAX_BL_BITS = 7;\n/* Bit length codes must not exceed MAX_BL_BITS bits */\n\nconst END_BLOCK = 256;\n/* end of block literal code */\n\nconst REP_3_6 = 16;\n/* repeat previous bit length 3-6 times (2 bits of repeat count) */\n\nconst REPZ_3_10 = 17;\n/* repeat a zero length 3-10 times (3 bits of repeat count) */\n\nconst REPZ_11_138 = 18;\n/* repeat a zero length 11-138 times (7 bits of repeat count) */\n\n/* eslint-disable comma-spacing,array-bracket-spacing */\nconst extra_lbits = /* extra bits for each length code */\n new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]);\n\nconst extra_dbits = /* extra bits for each distance code */\n new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]);\n\nconst extra_blbits = /* extra bits for each bit length code */\n new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]);\n\nconst bl_order =\n new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);\n/* eslint-enable comma-spacing,array-bracket-spacing */\n\n/* The lengths of the bit length codes are sent in order of decreasing\n * probability, to avoid transmitting the lengths for unused bit length codes.\n */\n\n/* ===========================================================================\n * Local data. These are initialized only once.\n */\n\n// We pre-fill arrays with 0 to avoid uninitialized gaps\n\nconst DIST_CODE_LEN = 512; /* see definition of array dist_code below */\n\n// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1\nconst static_ltree = new Array((L_CODES$1 + 2) * 2);\nzero$1(static_ltree);\n/* The static literal tree. Since the bit lengths are imposed, there is no\n * need for the L_CODES extra codes used during heap construction. However\n * The codes 286 and 287 are needed to build a canonical tree (see _tr_init\n * below).\n */\n\nconst static_dtree = new Array(D_CODES$1 * 2);\nzero$1(static_dtree);\n/* The static distance tree. (Actually a trivial tree since all codes use\n * 5 bits.)\n */\n\nconst _dist_code = new Array(DIST_CODE_LEN);\nzero$1(_dist_code);\n/* Distance codes. The first 256 values correspond to the distances\n * 3 .. 258, the last 256 values correspond to the top 8 bits of\n * the 15 bit distances.\n */\n\nconst _length_code = new Array(MAX_MATCH$1 - MIN_MATCH$1 + 1);\nzero$1(_length_code);\n/* length code for each normalized match length (0 == MIN_MATCH) */\n\nconst base_length = new Array(LENGTH_CODES$1);\nzero$1(base_length);\n/* First normalized length for each code (0 = MIN_MATCH) */\n\nconst base_dist = new Array(D_CODES$1);\nzero$1(base_dist);\n/* First normalized distance for each code (0 = distance of 1) */\n\n\nfunction StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {\n\n this.static_tree = static_tree; /* static tree or NULL */\n this.extra_bits = extra_bits; /* extra bits for each code or NULL */\n this.extra_base = extra_base; /* base index for extra_bits */\n this.elems = elems; /* max number of elements in the tree */\n this.max_length = max_length; /* max bit length for the codes */\n\n // show if `static_tree` has data or dummy - needed for monomorphic objects\n this.has_stree = static_tree && static_tree.length;\n}\n\n\nlet static_l_desc;\nlet static_d_desc;\nlet static_bl_desc;\n\n\nfunction TreeDesc(dyn_tree, stat_desc) {\n this.dyn_tree = dyn_tree; /* the dynamic tree */\n this.max_code = 0; /* largest code with non zero frequency */\n this.stat_desc = stat_desc; /* the corresponding static tree */\n}\n\n\n\nconst d_code = (dist) => {\n\n return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];\n};\n\n\n/* ===========================================================================\n * Output a short LSB first on the stream.\n * IN assertion: there is enough room in pendingBuf.\n */\nconst put_short = (s, w) => {\n// put_byte(s, (uch)((w) & 0xff));\n// put_byte(s, (uch)((ush)(w) >> 8));\n s.pending_buf[s.pending++] = (w) & 0xff;\n s.pending_buf[s.pending++] = (w >>> 8) & 0xff;\n};\n\n\n/* ===========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\nconst send_bits = (s, value, length) => {\n\n if (s.bi_valid > (Buf_size - length)) {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n put_short(s, s.bi_buf);\n s.bi_buf = value >> (Buf_size - s.bi_valid);\n s.bi_valid += length - Buf_size;\n } else {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n s.bi_valid += length;\n }\n};\n\n\nconst send_code = (s, c, tree) => {\n\n send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);\n};\n\n\n/* ===========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\nconst bi_reverse = (code, len) => {\n\n let res = 0;\n do {\n res |= code & 1;\n code >>>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >>> 1;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer, keeping at most 7 bits in it.\n */\nconst bi_flush = (s) => {\n\n if (s.bi_valid === 16) {\n put_short(s, s.bi_buf);\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n } else if (s.bi_valid >= 8) {\n s.pending_buf[s.pending++] = s.bi_buf & 0xff;\n s.bi_buf >>= 8;\n s.bi_valid -= 8;\n }\n};\n\n\n/* ===========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\nconst gen_bitlen = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const max_code = desc.max_code;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const extra = desc.stat_desc.extra_bits;\n const base = desc.stat_desc.extra_base;\n const max_length = desc.stat_desc.max_length;\n let h; /* heap index */\n let n, m; /* iterate over the tree elements */\n let bits; /* bit length */\n let xbits; /* extra bits */\n let f; /* frequency */\n let overflow = 0; /* number of elements with bit length too large */\n\n for (bits = 0; bits <= MAX_BITS$1; bits++) {\n s.bl_count[bits] = 0;\n }\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */\n\n for (h = s.heap_max + 1; h < HEAP_SIZE$1; h++) {\n n = s.heap[h];\n bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n * 2 + 1]/*.Len*/ = bits;\n /* We overwrite tree[n].Dad which is no longer needed */\n\n if (n > max_code) { continue; } /* not a leaf node */\n\n s.bl_count[bits]++;\n xbits = 0;\n if (n >= base) {\n xbits = extra[n - base];\n }\n f = tree[n * 2]/*.Freq*/;\n s.opt_len += f * (bits + xbits);\n if (has_stree) {\n s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);\n }\n }\n if (overflow === 0) { return; }\n\n // Tracev((stderr,\"\\nbit length overflow\\n\"));\n /* This happens for example on obj2 and pic of the Calgary corpus */\n\n /* Find the first bit length which could increase: */\n do {\n bits = max_length - 1;\n while (s.bl_count[bits] === 0) { bits--; }\n s.bl_count[bits]--; /* move one leaf down the tree */\n s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */\n s.bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits !== 0; bits--) {\n n = s.bl_count[bits];\n while (n !== 0) {\n m = s.heap[--h];\n if (m > max_code) { continue; }\n if (tree[m * 2 + 1]/*.Len*/ !== bits) {\n // Tracev((stderr,\"code %d bits %d->%d\\n\", m, tree[m].Len, bits));\n s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;\n tree[m * 2 + 1]/*.Len*/ = bits;\n }\n n--;\n }\n }\n};\n\n\n/* ===========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\nconst gen_codes = (tree, max_code, bl_count) => {\n// ct_data *tree; /* the tree to decorate */\n// int max_code; /* largest code with non zero frequency */\n// ushf *bl_count; /* number of codes at each bit length */\n\n const next_code = new Array(MAX_BITS$1 + 1); /* next code value for each bit length */\n let code = 0; /* running code value */\n let bits; /* bit index */\n let n; /* code index */\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= MAX_BITS$1; bits++) {\n code = (code + bl_count[bits - 1]) << 1;\n next_code[bits] = code;\n }\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n //Assert (code + bl_count[MAX_BITS]-1 == (1< {\n\n let n; /* iterates over tree elements */\n let bits; /* bit counter */\n let length; /* length value */\n let code; /* code value */\n let dist; /* distance index */\n const bl_count = new Array(MAX_BITS$1 + 1);\n /* number of codes at each bit length for an optimal tree */\n\n // do check in _tr_init()\n //if (static_init_done) return;\n\n /* For some embedded targets, global variables are not initialized: */\n/*#ifdef NO_INIT_GLOBAL_POINTERS\n static_l_desc.static_tree = static_ltree;\n static_l_desc.extra_bits = extra_lbits;\n static_d_desc.static_tree = static_dtree;\n static_d_desc.extra_bits = extra_dbits;\n static_bl_desc.extra_bits = extra_blbits;\n#endif*/\n\n /* Initialize the mapping length (0..255) -> length code (0..28) */\n length = 0;\n for (code = 0; code < LENGTH_CODES$1 - 1; code++) {\n base_length[code] = length;\n for (n = 0; n < (1 << extra_lbits[code]); n++) {\n _length_code[length++] = code;\n }\n }\n //Assert (length == 256, \"tr_static_init: length != 256\");\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n _length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n base_dist[code] = dist;\n for (n = 0; n < (1 << extra_dbits[code]); n++) {\n _dist_code[dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: dist != 256\");\n dist >>= 7; /* from now on, all distances are divided by 128 */\n for (; code < D_CODES$1; code++) {\n base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {\n _dist_code[256 + dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: 256+dist != 512\");\n\n /* Construct the codes of the static literal tree */\n for (bits = 0; bits <= MAX_BITS$1; bits++) {\n bl_count[bits] = 0;\n }\n\n n = 0;\n while (n <= 143) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n while (n <= 255) {\n static_ltree[n * 2 + 1]/*.Len*/ = 9;\n n++;\n bl_count[9]++;\n }\n while (n <= 279) {\n static_ltree[n * 2 + 1]/*.Len*/ = 7;\n n++;\n bl_count[7]++;\n }\n while (n <= 287) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n gen_codes(static_ltree, L_CODES$1 + 1, bl_count);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < D_CODES$1; n++) {\n static_dtree[n * 2 + 1]/*.Len*/ = 5;\n static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);\n }\n\n // Now data ready and we can init static trees\n static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS$1 + 1, L_CODES$1, MAX_BITS$1);\n static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES$1, MAX_BITS$1);\n static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES$1, MAX_BL_BITS);\n\n //static_init_done = true;\n};\n\n\n/* ===========================================================================\n * Initialize a new block.\n */\nconst init_block = (s) => {\n\n let n; /* iterates over tree elements */\n\n /* Initialize the trees. */\n for (n = 0; n < L_CODES$1; n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < D_CODES$1; n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < BL_CODES$1; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }\n\n s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;\n s.opt_len = s.static_len = 0;\n s.sym_next = s.matches = 0;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer and align the output on a byte boundary\n */\nconst bi_windup = (s) =>\n{\n if (s.bi_valid > 8) {\n put_short(s, s.bi_buf);\n } else if (s.bi_valid > 0) {\n //put_byte(s, (Byte)s->bi_buf);\n s.pending_buf[s.pending++] = s.bi_buf;\n }\n s.bi_buf = 0;\n s.bi_valid = 0;\n};\n\n/* ===========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\nconst smaller = (tree, n, m, depth) => {\n\n const _n2 = n * 2;\n const _m2 = m * 2;\n return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||\n (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));\n};\n\n/* ===========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\nconst pqdownheap = (s, tree, k) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to restore */\n// int k; /* node to move down */\n\n const v = s.heap[k];\n let j = k << 1; /* left son of k */\n while (j <= s.heap_len) {\n /* Set j to the smallest of the two sons: */\n if (j < s.heap_len &&\n smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {\n j++;\n }\n /* Exit if v is smaller than both sons */\n if (smaller(tree, v, s.heap[j], s.depth)) { break; }\n\n /* Exchange v with the smallest son */\n s.heap[k] = s.heap[j];\n k = j;\n\n /* And continue down the tree, setting j to the left son of k */\n j <<= 1;\n }\n s.heap[k] = v;\n};\n\n\n// inlined manually\n// const SMALLEST = 1;\n\n/* ===========================================================================\n * Send the block data compressed using the given Huffman trees\n */\nconst compress_block = (s, ltree, dtree) => {\n// deflate_state *s;\n// const ct_data *ltree; /* literal tree */\n// const ct_data *dtree; /* distance tree */\n\n let dist; /* distance of matched string */\n let lc; /* match length or unmatched char (if dist == 0) */\n let sx = 0; /* running index in sym_buf */\n let code; /* the code to send */\n let extra; /* number of extra bits to send */\n\n if (s.sym_next !== 0) {\n do {\n dist = s.pending_buf[s.sym_buf + sx++] & 0xff;\n dist += (s.pending_buf[s.sym_buf + sx++] & 0xff) << 8;\n lc = s.pending_buf[s.sym_buf + sx++];\n if (dist === 0) {\n send_code(s, lc, ltree); /* send a literal byte */\n //Tracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n /* Here, lc is the match length - MIN_MATCH */\n code = _length_code[lc];\n send_code(s, code + LITERALS$1 + 1, ltree); /* send the length code */\n extra = extra_lbits[code];\n if (extra !== 0) {\n lc -= base_length[code];\n send_bits(s, lc, extra); /* send the extra length bits */\n }\n dist--; /* dist is now the match distance - 1 */\n code = d_code(dist);\n //Assert (code < D_CODES, \"bad d_code\");\n\n send_code(s, code, dtree); /* send the distance code */\n extra = extra_dbits[code];\n if (extra !== 0) {\n dist -= base_dist[code];\n send_bits(s, dist, extra); /* send the extra distance bits */\n }\n } /* literal or match pair ? */\n\n /* Check that the overlay between pending_buf and sym_buf is ok: */\n //Assert(s->pending < s->lit_bufsize + sx, \"pendingBuf overflow\");\n\n } while (sx < s.sym_next);\n }\n\n send_code(s, END_BLOCK, ltree);\n};\n\n\n/* ===========================================================================\n * Construct one Huffman tree and assigns the code bit strings and lengths.\n * Update the total bit length for the current block.\n * IN assertion: the field freq is set for all tree elements.\n * OUT assertions: the fields len and code are set to the optimal bit length\n * and corresponding code. The length opt_len is updated; static_len is\n * also updated if stree is not null. The field max_code is set.\n */\nconst build_tree = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const elems = desc.stat_desc.elems;\n let n, m; /* iterate over heap elements */\n let max_code = -1; /* largest code with non zero frequency */\n let node; /* new node being created */\n\n /* Construct the initial heap, with least frequent element in\n * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].\n * heap[0] is not used.\n */\n s.heap_len = 0;\n s.heap_max = HEAP_SIZE$1;\n\n for (n = 0; n < elems; n++) {\n if (tree[n * 2]/*.Freq*/ !== 0) {\n s.heap[++s.heap_len] = max_code = n;\n s.depth[n] = 0;\n\n } else {\n tree[n * 2 + 1]/*.Len*/ = 0;\n }\n }\n\n /* The pkzip format requires that at least one distance code exists,\n * and that at least one bit should be sent even if there is only one\n * possible code. So to avoid special checks later on we force at least\n * two codes of non zero frequency.\n */\n while (s.heap_len < 2) {\n node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);\n tree[node * 2]/*.Freq*/ = 1;\n s.depth[node] = 0;\n s.opt_len--;\n\n if (has_stree) {\n s.static_len -= stree[node * 2 + 1]/*.Len*/;\n }\n /* node is 0 or 1 so it does not have extra bits */\n }\n desc.max_code = max_code;\n\n /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,\n * establish sub-heaps of increasing lengths:\n */\n for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n node = elems; /* next internal node of the tree */\n do {\n //pqremove(s, tree, n); /* n = node of least frequency */\n /*** pqremove ***/\n n = s.heap[1/*SMALLEST*/];\n s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];\n pqdownheap(s, tree, 1/*SMALLEST*/);\n /***/\n\n m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */\n\n s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */\n s.heap[--s.heap_max] = m;\n\n /* Create a new node father of n and m */\n tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;\n s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;\n tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;\n\n /* and insert the new node in the heap */\n s.heap[1/*SMALLEST*/] = node++;\n pqdownheap(s, tree, 1/*SMALLEST*/);\n\n } while (s.heap_len >= 2);\n\n s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n gen_bitlen(s, desc);\n\n /* The field len is now set, we can generate the bit codes */\n gen_codes(tree, max_code, s.bl_count);\n};\n\n\n/* ===========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree.\n */\nconst scan_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n s.bl_tree[curlen * 2]/*.Freq*/ += count;\n\n } else if (curlen !== 0) {\n\n if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }\n s.bl_tree[REP_3_6 * 2]/*.Freq*/++;\n\n } else if (count <= 10) {\n s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;\n\n } else {\n s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;\n }\n\n count = 0;\n prevlen = curlen;\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\nconst send_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n /* tree[max_code+1].Len = -1; */ /* guard already set */\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);\n\n } else if (curlen !== 0) {\n if (curlen !== prevlen) {\n send_code(s, curlen, s.bl_tree);\n count--;\n }\n //Assert(count >= 3 && count <= 6, \" 3_6?\");\n send_code(s, REP_3_6, s.bl_tree);\n send_bits(s, count - 3, 2);\n\n } else if (count <= 10) {\n send_code(s, REPZ_3_10, s.bl_tree);\n send_bits(s, count - 3, 3);\n\n } else {\n send_code(s, REPZ_11_138, s.bl_tree);\n send_bits(s, count - 11, 7);\n }\n\n count = 0;\n prevlen = curlen;\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\nconst build_bl_tree = (s) => {\n\n let max_blindex; /* index of last bit length code of non zero freq */\n\n /* Determine the bit length frequencies for literal and distance trees */\n scan_tree(s, s.dyn_ltree, s.l_desc.max_code);\n scan_tree(s, s.dyn_dtree, s.d_desc.max_code);\n\n /* Build the bit length tree: */\n build_tree(s, s.bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = BL_CODES$1 - 1; max_blindex >= 3; max_blindex--) {\n if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {\n break;\n }\n }\n /* Update opt_len to include the bit length tree and counts */\n s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n //Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n // s->opt_len, s->static_len));\n\n return max_blindex;\n};\n\n\n/* ===========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\nconst send_all_trees = (s, lcodes, dcodes, blcodes) => {\n// deflate_state *s;\n// int lcodes, dcodes, blcodes; /* number of codes for each tree */\n\n let rank; /* index in bl_order */\n\n //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n // \"too many codes\");\n //Tracev((stderr, \"\\nbl counts: \"));\n send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */\n send_bits(s, dcodes - 1, 5);\n send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */\n for (rank = 0; rank < blcodes; rank++) {\n //Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);\n }\n //Tracev((stderr, \"\\nbl tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */\n //Tracev((stderr, \"\\nlit tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */\n //Tracev((stderr, \"\\ndist tree: sent %ld\", s->bits_sent));\n};\n\n\n/* ===========================================================================\n * Check if the data type is TEXT or BINARY, using the following algorithm:\n * - TEXT if the two conditions below are satisfied:\n * a) There are no non-portable control characters belonging to the\n * \"block list\" (0..6, 14..25, 28..31).\n * b) There is at least one printable character belonging to the\n * \"allow list\" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).\n * - BINARY otherwise.\n * - The following partially-portable control characters form a\n * \"gray list\" that is ignored in this detection algorithm:\n * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).\n * IN assertion: the fields Freq of dyn_ltree are set.\n */\nconst detect_data_type = (s) => {\n /* block_mask is the bit mask of block-listed bytes\n * set bits 0..6, 14..25, and 28..31\n * 0xf3ffc07f = binary 11110011111111111100000001111111\n */\n let block_mask = 0xf3ffc07f;\n let n;\n\n /* Check for non-textual (\"block-listed\") bytes. */\n for (n = 0; n <= 31; n++, block_mask >>>= 1) {\n if ((block_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {\n return Z_BINARY;\n }\n }\n\n /* Check for textual (\"allow-listed\") bytes. */\n if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||\n s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n for (n = 32; n < LITERALS$1; n++) {\n if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n }\n\n /* There are no \"block-listed\" or \"allow-listed\" bytes:\n * this stream either is empty or has tolerated (\"gray-listed\") bytes only.\n */\n return Z_BINARY;\n};\n\n\nlet static_init_done = false;\n\n/* ===========================================================================\n * Initialize the tree data structures for a new zlib stream.\n */\nconst _tr_init$1 = (s) =>\n{\n\n if (!static_init_done) {\n tr_static_init();\n static_init_done = true;\n }\n\n s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc);\n s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc);\n s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);\n\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n /* Initialize the first block of the first file: */\n init_block(s);\n};\n\n\n/* ===========================================================================\n * Send a stored block\n */\nconst _tr_stored_block$1 = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); /* send block type */\n bi_windup(s); /* align on byte boundary */\n put_short(s, stored_len);\n put_short(s, ~stored_len);\n if (stored_len) {\n s.pending_buf.set(s.window.subarray(buf, buf + stored_len), s.pending);\n }\n s.pending += stored_len;\n};\n\n\n/* ===========================================================================\n * Send one empty static block to give enough lookahead for inflate.\n * This takes 10 bits, of which 7 may remain in the bit buffer.\n */\nconst _tr_align$1 = (s) => {\n send_bits(s, STATIC_TREES << 1, 3);\n send_code(s, END_BLOCK, static_ltree);\n bi_flush(s);\n};\n\n\n/* ===========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and write out the encoded block.\n */\nconst _tr_flush_block$1 = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block, or NULL if too old */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n let opt_lenb, static_lenb; /* opt_len and static_len in bytes */\n let max_blindex = 0; /* index of last bit length code of non zero freq */\n\n /* Build the Huffman trees unless a stored block is forced */\n if (s.level > 0) {\n\n /* Check if the file is binary or text */\n if (s.strm.data_type === Z_UNKNOWN$1) {\n s.strm.data_type = detect_data_type(s);\n }\n\n /* Construct the literal and distance trees */\n build_tree(s, s.l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n\n build_tree(s, s.d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = build_bl_tree(s);\n\n /* Determine the best encoding. Compute the block lengths in bytes. */\n opt_lenb = (s.opt_len + 3 + 7) >>> 3;\n static_lenb = (s.static_len + 3 + 7) >>> 3;\n\n // Tracev((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u \",\n // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,\n // s->sym_next / 3));\n\n if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }\n\n } else {\n // Assert(buf != (char*)0, \"lost buf\");\n opt_lenb = static_lenb = stored_len + 5; /* force a stored block */\n }\n\n if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {\n /* 4: two words for the lengths */\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n _tr_stored_block$1(s, buf, stored_len, last);\n\n } else if (s.strategy === Z_FIXED$1 || static_lenb === opt_lenb) {\n\n send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);\n compress_block(s, static_ltree, static_dtree);\n\n } else {\n send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);\n send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);\n compress_block(s, s.dyn_ltree, s.dyn_dtree);\n }\n // Assert (s->compressed_len == s->bits_sent, \"bad compressed size\");\n /* The above check is made mod 2^32, for files larger than 512 MB\n * and uLong implemented on 32 bits.\n */\n init_block(s);\n\n if (last) {\n bi_windup(s);\n }\n // Tracev((stderr,\"\\ncomprlen %lu(%lu) \", s->compressed_len>>3,\n // s->compressed_len-7*last));\n};\n\n/* ===========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\nconst _tr_tally$1 = (s, dist, lc) => {\n// deflate_state *s;\n// unsigned dist; /* distance of matched string */\n// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */\n\n s.pending_buf[s.sym_buf + s.sym_next++] = dist;\n s.pending_buf[s.sym_buf + s.sym_next++] = dist >> 8;\n s.pending_buf[s.sym_buf + s.sym_next++] = lc;\n if (dist === 0) {\n /* lc is the unmatched char */\n s.dyn_ltree[lc * 2]/*.Freq*/++;\n } else {\n s.matches++;\n /* Here, lc is the match length - MIN_MATCH */\n dist--; /* dist = match distance - 1 */\n //Assert((ush)dist < (ush)MAX_DIST(s) &&\n // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n // (ush)d_code(dist) < (ush)D_CODES, \"_tr_tally: bad match\");\n\n s.dyn_ltree[(_length_code[lc] + LITERALS$1 + 1) * 2]/*.Freq*/++;\n s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;\n }\n\n return (s.sym_next === s.sym_end);\n};\n\nvar _tr_init_1 = _tr_init$1;\nvar _tr_stored_block_1 = _tr_stored_block$1;\nvar _tr_flush_block_1 = _tr_flush_block$1;\nvar _tr_tally_1 = _tr_tally$1;\nvar _tr_align_1 = _tr_align$1;\n\nvar trees = {\n\t_tr_init: _tr_init_1,\n\t_tr_stored_block: _tr_stored_block_1,\n\t_tr_flush_block: _tr_flush_block_1,\n\t_tr_tally: _tr_tally_1,\n\t_tr_align: _tr_align_1\n};\n\n// Note: adler32 takes 12% for level 0 and 2% for level 6.\n// It isn't worth it to make additional optimizations as in original.\n// Small size is preferable.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst adler32 = (adler, buf, len, pos) => {\n let s1 = (adler & 0xffff) |0,\n s2 = ((adler >>> 16) & 0xffff) |0,\n n = 0;\n\n while (len !== 0) {\n // Set limit ~ twice less than 5552, to keep\n // s2 in 31-bits, because we force signed ints.\n // in other case %= will fail.\n n = len > 2000 ? 2000 : len;\n len -= n;\n\n do {\n s1 = (s1 + buf[pos++]) |0;\n s2 = (s2 + s1) |0;\n } while (--n);\n\n s1 %= 65521;\n s2 %= 65521;\n }\n\n return (s1 | (s2 << 16)) |0;\n};\n\n\nvar adler32_1 = adler32;\n\n// Note: we can't get significant speed boost here.\n// So write code to minimize size - no pregenerated tables\n// and array tools dependencies.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// Use ordinary array, since untyped makes no boost here\nconst makeTable = () => {\n let c, table = [];\n\n for (var n = 0; n < 256; n++) {\n c = n;\n for (var k = 0; k < 8; k++) {\n c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));\n }\n table[n] = c;\n }\n\n return table;\n};\n\n// Create table on load. Just 255 signed longs. Not a problem.\nconst crcTable = new Uint32Array(makeTable());\n\n\nconst crc32 = (crc, buf, len, pos) => {\n const t = crcTable;\n const end = pos + len;\n\n crc ^= -1;\n\n for (let i = pos; i < end; i++) {\n crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF];\n }\n\n return (crc ^ (-1)); // >>> 0;\n};\n\n\nvar crc32_1 = crc32;\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar messages = {\n 2: 'need dictionary', /* Z_NEED_DICT 2 */\n 1: 'stream end', /* Z_STREAM_END 1 */\n 0: '', /* Z_OK 0 */\n '-1': 'file error', /* Z_ERRNO (-1) */\n '-2': 'stream error', /* Z_STREAM_ERROR (-2) */\n '-3': 'data error', /* Z_DATA_ERROR (-3) */\n '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */\n '-5': 'buffer error', /* Z_BUF_ERROR (-5) */\n '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar constants$2 = {\n\n /* Allowed flush values; see deflate() and inflate() below for details */\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n\n /* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n //Z_VERSION_ERROR: -6,\n\n /* compression levels */\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n\n\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n\n /* Possible values of the data_type field (though see inflate()) */\n Z_BINARY: 0,\n Z_TEXT: 1,\n //Z_ASCII: 1, // = Z_TEXT (deprecated)\n Z_UNKNOWN: 2,\n\n /* The deflate compression method */\n Z_DEFLATED: 8\n //Z_NULL: null // Use -1 or null inline, depending on var type\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst { _tr_init, _tr_stored_block, _tr_flush_block, _tr_tally, _tr_align } = trees;\n\n\n\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH: Z_NO_FLUSH$2, Z_PARTIAL_FLUSH, Z_FULL_FLUSH: Z_FULL_FLUSH$1, Z_FINISH: Z_FINISH$3, Z_BLOCK: Z_BLOCK$1,\n Z_OK: Z_OK$3, Z_STREAM_END: Z_STREAM_END$3, Z_STREAM_ERROR: Z_STREAM_ERROR$2, Z_DATA_ERROR: Z_DATA_ERROR$2, Z_BUF_ERROR: Z_BUF_ERROR$1,\n Z_DEFAULT_COMPRESSION: Z_DEFAULT_COMPRESSION$1,\n Z_FILTERED, Z_HUFFMAN_ONLY, Z_RLE, Z_FIXED, Z_DEFAULT_STRATEGY: Z_DEFAULT_STRATEGY$1,\n Z_UNKNOWN,\n Z_DEFLATED: Z_DEFLATED$2\n} = constants$2;\n\n/*============================================================================*/\n\n\nconst MAX_MEM_LEVEL = 9;\n/* Maximum value for memLevel in deflateInit2 */\nconst MAX_WBITS$1 = 15;\n/* 32K LZ77 window */\nconst DEF_MEM_LEVEL = 8;\n\n\nconst LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\nconst LITERALS = 256;\n/* number of literal bytes 0..255 */\nconst L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\nconst D_CODES = 30;\n/* number of distance codes */\nconst BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\nconst HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\nconst MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst MIN_MATCH = 3;\nconst MAX_MATCH = 258;\nconst MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1);\n\nconst PRESET_DICT = 0x20;\n\nconst INIT_STATE = 42; /* zlib header -> BUSY_STATE */\n//#ifdef GZIP\nconst GZIP_STATE = 57; /* gzip header -> BUSY_STATE | EXTRA_STATE */\n//#endif\nconst EXTRA_STATE = 69; /* gzip extra block -> NAME_STATE */\nconst NAME_STATE = 73; /* gzip file name -> COMMENT_STATE */\nconst COMMENT_STATE = 91; /* gzip comment -> HCRC_STATE */\nconst HCRC_STATE = 103; /* gzip header CRC -> BUSY_STATE */\nconst BUSY_STATE = 113; /* deflate -> FINISH_STATE */\nconst FINISH_STATE = 666; /* stream complete */\n\nconst BS_NEED_MORE = 1; /* block not completed, need more input or more output */\nconst BS_BLOCK_DONE = 2; /* block flush performed */\nconst BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */\nconst BS_FINISH_DONE = 4; /* finish done, accept no more input or output */\n\nconst OS_CODE = 0x03; // Unix :) . Don't detect, use this default.\n\nconst err = (strm, errorCode) => {\n strm.msg = messages[errorCode];\n return errorCode;\n};\n\nconst rank = (f) => {\n return ((f) * 2) - ((f) > 4 ? 9 : 0);\n};\n\nconst zero = (buf) => {\n let len = buf.length; while (--len >= 0) { buf[len] = 0; }\n};\n\n/* ===========================================================================\n * Slide the hash table when sliding the window down (could be avoided with 32\n * bit values at the expense of memory usage). We slide even when level == 0 to\n * keep the hash table consistent if we switch back to level > 0 later.\n */\nconst slide_hash = (s) => {\n let n, m;\n let p;\n let wsize = s.w_size;\n\n n = s.hash_size;\n p = n;\n do {\n m = s.head[--p];\n s.head[p] = (m >= wsize ? m - wsize : 0);\n } while (--n);\n n = wsize;\n//#ifndef FASTEST\n p = n;\n do {\n m = s.prev[--p];\n s.prev[p] = (m >= wsize ? m - wsize : 0);\n /* If n is not on any hash chain, prev[n] is garbage but\n * its value will never be used.\n */\n } while (--n);\n//#endif\n};\n\n/* eslint-disable new-cap */\nlet HASH_ZLIB = (s, prev, data) => ((prev << s.hash_shift) ^ data) & s.hash_mask;\n// This hash causes less collisions, https://github.com/nodeca/pako/issues/135\n// But breaks binary compatibility\n//let HASH_FAST = (s, prev, data) => ((prev << 8) + (prev >> 8) + (data << 4)) & s.hash_mask;\nlet HASH = HASH_ZLIB;\n\n\n/* =========================================================================\n * Flush as much pending output as possible. All deflate() output, except for\n * some deflate_stored() output, goes through this function so some\n * applications may wish to modify it to avoid allocating a large\n * strm->next_out buffer and copying into it. (See also read_buf()).\n */\nconst flush_pending = (strm) => {\n const s = strm.state;\n\n //_tr_flush_bits(s);\n let len = s.pending;\n if (len > strm.avail_out) {\n len = strm.avail_out;\n }\n if (len === 0) { return; }\n\n strm.output.set(s.pending_buf.subarray(s.pending_out, s.pending_out + len), strm.next_out);\n strm.next_out += len;\n s.pending_out += len;\n strm.total_out += len;\n strm.avail_out -= len;\n s.pending -= len;\n if (s.pending === 0) {\n s.pending_out = 0;\n }\n};\n\n\nconst flush_block_only = (s, last) => {\n _tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last);\n s.block_start = s.strstart;\n flush_pending(s.strm);\n};\n\n\nconst put_byte = (s, b) => {\n s.pending_buf[s.pending++] = b;\n};\n\n\n/* =========================================================================\n * Put a short in the pending buffer. The 16-bit value is put in MSB order.\n * IN assertion: the stream state is correct and there is enough room in\n * pending_buf.\n */\nconst putShortMSB = (s, b) => {\n\n // put_byte(s, (Byte)(b >> 8));\n// put_byte(s, (Byte)(b & 0xff));\n s.pending_buf[s.pending++] = (b >>> 8) & 0xff;\n s.pending_buf[s.pending++] = b & 0xff;\n};\n\n\n/* ===========================================================================\n * Read a new buffer from the current input stream, update the adler32\n * and total number of bytes read. All deflate() input goes through\n * this function so some applications may wish to modify it to avoid\n * allocating a large strm->input buffer and copying from it.\n * (See also flush_pending()).\n */\nconst read_buf = (strm, buf, start, size) => {\n\n let len = strm.avail_in;\n\n if (len > size) { len = size; }\n if (len === 0) { return 0; }\n\n strm.avail_in -= len;\n\n // zmemcpy(buf, strm->next_in, len);\n buf.set(strm.input.subarray(strm.next_in, strm.next_in + len), start);\n if (strm.state.wrap === 1) {\n strm.adler = adler32_1(strm.adler, buf, len, start);\n }\n\n else if (strm.state.wrap === 2) {\n strm.adler = crc32_1(strm.adler, buf, len, start);\n }\n\n strm.next_in += len;\n strm.total_in += len;\n\n return len;\n};\n\n\n/* ===========================================================================\n * Set match_start to the longest match starting at the given string and\n * return its length. Matches shorter or equal to prev_length are discarded,\n * in which case the result is equal to prev_length and match_start is\n * garbage.\n * IN assertions: cur_match is the head of the hash chain for the current\n * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1\n * OUT assertion: the match length is not greater than s->lookahead.\n */\nconst longest_match = (s, cur_match) => {\n\n let chain_length = s.max_chain_length; /* max hash chain length */\n let scan = s.strstart; /* current string */\n let match; /* matched string */\n let len; /* length of current match */\n let best_len = s.prev_length; /* best match length so far */\n let nice_match = s.nice_match; /* stop if match long enough */\n const limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ?\n s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/;\n\n const _win = s.window; // shortcut\n\n const wmask = s.w_mask;\n const prev = s.prev;\n\n /* Stop when cur_match becomes <= limit. To simplify the code,\n * we prevent matches with the string of window index 0.\n */\n\n const strend = s.strstart + MAX_MATCH;\n let scan_end1 = _win[scan + best_len - 1];\n let scan_end = _win[scan + best_len];\n\n /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.\n * It is easy to get rid of this optimization if necessary.\n */\n // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, \"Code too clever\");\n\n /* Do not waste too much time if we already have a good match: */\n if (s.prev_length >= s.good_match) {\n chain_length >>= 2;\n }\n /* Do not look for matches beyond the end of the input. This is necessary\n * to make deflate deterministic.\n */\n if (nice_match > s.lookahead) { nice_match = s.lookahead; }\n\n // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, \"need lookahead\");\n\n do {\n // Assert(cur_match < s->strstart, \"no future\");\n match = cur_match;\n\n /* Skip to next match if the match length cannot increase\n * or if the match length is less than 2. Note that the checks below\n * for insufficient lookahead only occur occasionally for performance\n * reasons. Therefore uninitialized memory will be accessed, and\n * conditional jumps will be made that depend on those values.\n * However the length of the match is limited to the lookahead, so\n * the output of deflate is not affected by the uninitialized values.\n */\n\n if (_win[match + best_len] !== scan_end ||\n _win[match + best_len - 1] !== scan_end1 ||\n _win[match] !== _win[scan] ||\n _win[++match] !== _win[scan + 1]) {\n continue;\n }\n\n /* The check at best_len-1 can be removed because it will be made\n * again later. (This heuristic is not always a win.)\n * It is not necessary to compare scan[2] and match[2] since they\n * are always equal when the other bytes match, given that\n * the hash keys are equal and that HASH_BITS >= 8.\n */\n scan += 2;\n match++;\n // Assert(*scan == *match, \"match[2]?\");\n\n /* We check for insufficient lookahead only every 8th comparison;\n * the 256th check will be made at strstart+258.\n */\n do {\n /*jshint noempty:false*/\n } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n scan < strend);\n\n // Assert(scan <= s->window+(unsigned)(s->window_size-1), \"wild scan\");\n\n len = MAX_MATCH - (strend - scan);\n scan = strend - MAX_MATCH;\n\n if (len > best_len) {\n s.match_start = cur_match;\n best_len = len;\n if (len >= nice_match) {\n break;\n }\n scan_end1 = _win[scan + best_len - 1];\n scan_end = _win[scan + best_len];\n }\n } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0);\n\n if (best_len <= s.lookahead) {\n return best_len;\n }\n return s.lookahead;\n};\n\n\n/* ===========================================================================\n * Fill the window when the lookahead becomes insufficient.\n * Updates strstart and lookahead.\n *\n * IN assertion: lookahead < MIN_LOOKAHEAD\n * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD\n * At least one byte has been read, or avail_in == 0; reads are\n * performed for at least two bytes (required for the zip translate_eol\n * option -- not supported here).\n */\nconst fill_window = (s) => {\n\n const _w_size = s.w_size;\n let n, more, str;\n\n //Assert(s->lookahead < MIN_LOOKAHEAD, \"already enough lookahead\");\n\n do {\n more = s.window_size - s.lookahead - s.strstart;\n\n // JS ints have 32 bit, block below not needed\n /* Deal with !@#$% 64K limit: */\n //if (sizeof(int) <= 2) {\n // if (more == 0 && s->strstart == 0 && s->lookahead == 0) {\n // more = wsize;\n //\n // } else if (more == (unsigned)(-1)) {\n // /* Very unlikely, but possible on 16 bit machine if\n // * strstart == 0 && lookahead == 1 (input done a byte at time)\n // */\n // more--;\n // }\n //}\n\n\n /* If the window is almost full and there is insufficient lookahead,\n * move the upper half to the lower one to make room in the upper half.\n */\n if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {\n\n s.window.set(s.window.subarray(_w_size, _w_size + _w_size - more), 0);\n s.match_start -= _w_size;\n s.strstart -= _w_size;\n /* we now have strstart >= MAX_DIST */\n s.block_start -= _w_size;\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n slide_hash(s);\n more += _w_size;\n }\n if (s.strm.avail_in === 0) {\n break;\n }\n\n /* If there was no sliding:\n * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&\n * more == window_size - lookahead - strstart\n * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)\n * => more >= window_size - 2*WSIZE + 2\n * In the BIG_MEM or MMAP case (not yet supported),\n * window_size == input_size + MIN_LOOKAHEAD &&\n * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.\n * Otherwise, window_size == 2*WSIZE so more >= 2.\n * If there was sliding, more >= WSIZE. So in all cases, more >= 2.\n */\n //Assert(more >= 2, \"more < 2\");\n n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);\n s.lookahead += n;\n\n /* Initialize the hash value now that we have some input: */\n if (s.lookahead + s.insert >= MIN_MATCH) {\n str = s.strstart - s.insert;\n s.ins_h = s.window[str];\n\n /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + 1]);\n//#if MIN_MATCH != 3\n// Call update_hash() MIN_MATCH-3 more times\n//#endif\n while (s.insert) {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = str;\n str++;\n s.insert--;\n if (s.lookahead + s.insert < MIN_MATCH) {\n break;\n }\n }\n }\n /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,\n * but this is not important since only literal bytes will be emitted.\n */\n\n } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0);\n\n /* If the WIN_INIT bytes after the end of the current data have never been\n * written, then zero those bytes in order to avoid memory check reports of\n * the use of uninitialized (or uninitialised as Julian writes) bytes by\n * the longest match routines. Update the high water mark for the next\n * time through here. WIN_INIT is set to MAX_MATCH since the longest match\n * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.\n */\n// if (s.high_water < s.window_size) {\n// const curr = s.strstart + s.lookahead;\n// let init = 0;\n//\n// if (s.high_water < curr) {\n// /* Previous high water mark below current data -- zero WIN_INIT\n// * bytes or up to end of window, whichever is less.\n// */\n// init = s.window_size - curr;\n// if (init > WIN_INIT)\n// init = WIN_INIT;\n// zmemzero(s->window + curr, (unsigned)init);\n// s->high_water = curr + init;\n// }\n// else if (s->high_water < (ulg)curr + WIN_INIT) {\n// /* High water mark at or above current data, but below current data\n// * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up\n// * to end of window, whichever is less.\n// */\n// init = (ulg)curr + WIN_INIT - s->high_water;\n// if (init > s->window_size - s->high_water)\n// init = s->window_size - s->high_water;\n// zmemzero(s->window + s->high_water, (unsigned)init);\n// s->high_water += init;\n// }\n// }\n//\n// Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD,\n// \"not enough room for search\");\n};\n\n/* ===========================================================================\n * Copy without compression as much as possible from the input stream, return\n * the current block state.\n *\n * In case deflateParams() is used to later switch to a non-zero compression\n * level, s->matches (otherwise unused when storing) keeps track of the number\n * of hash table slides to perform. If s->matches is 1, then one hash table\n * slide will be done when switching. If s->matches is 2, the maximum value\n * allowed here, then the hash table will be cleared, since two or more slides\n * is the same as a clear.\n *\n * deflate_stored() is written to minimize the number of times an input byte is\n * copied. It is most efficient with large input and output buffers, which\n * maximizes the opportunites to have a single copy from next_in to next_out.\n */\nconst deflate_stored = (s, flush) => {\n\n /* Smallest worthy block size when not flushing or finishing. By default\n * this is 32K. This can be as small as 507 bytes for memLevel == 1. For\n * large input and output buffers, the stored block size will be larger.\n */\n let min_block = s.pending_buf_size - 5 > s.w_size ? s.w_size : s.pending_buf_size - 5;\n\n /* Copy as many min_block or larger stored blocks directly to next_out as\n * possible. If flushing, copy the remaining available input to next_out as\n * stored blocks, if there is enough space.\n */\n let len, left, have, last = 0;\n let used = s.strm.avail_in;\n do {\n /* Set len to the maximum size block that we can copy directly with the\n * available input data and output space. Set left to how much of that\n * would be copied from what's left in the window.\n */\n len = 65535/* MAX_STORED */; /* maximum deflate stored block length */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n if (s.strm.avail_out < have) { /* need room for header */\n break;\n }\n /* maximum stored block length that will fit in avail_out: */\n have = s.strm.avail_out - have;\n left = s.strstart - s.block_start; /* bytes left in window */\n if (len > left + s.strm.avail_in) {\n len = left + s.strm.avail_in; /* limit len to the input */\n }\n if (len > have) {\n len = have; /* limit len to the output */\n }\n\n /* If the stored block would be less than min_block in length, or if\n * unable to copy all of the available input when flushing, then try\n * copying to the window and the pending buffer instead. Also don't\n * write an empty block when flushing -- deflate() does that.\n */\n if (len < min_block && ((len === 0 && flush !== Z_FINISH$3) ||\n flush === Z_NO_FLUSH$2 ||\n len !== left + s.strm.avail_in)) {\n break;\n }\n\n /* Make a dummy stored block in pending to get the header bytes,\n * including any pending bits. This also updates the debugging counts.\n */\n last = flush === Z_FINISH$3 && len === left + s.strm.avail_in ? 1 : 0;\n _tr_stored_block(s, 0, 0, last);\n\n /* Replace the lengths in the dummy stored block with len. */\n s.pending_buf[s.pending - 4] = len;\n s.pending_buf[s.pending - 3] = len >> 8;\n s.pending_buf[s.pending - 2] = ~len;\n s.pending_buf[s.pending - 1] = ~len >> 8;\n\n /* Write the stored block header bytes. */\n flush_pending(s.strm);\n\n//#ifdef ZLIB_DEBUG\n// /* Update debugging counts for the data about to be copied. */\n// s->compressed_len += len << 3;\n// s->bits_sent += len << 3;\n//#endif\n\n /* Copy uncompressed bytes from the window to next_out. */\n if (left) {\n if (left > len) {\n left = len;\n }\n //zmemcpy(s->strm->next_out, s->window + s->block_start, left);\n s.strm.output.set(s.window.subarray(s.block_start, s.block_start + left), s.strm.next_out);\n s.strm.next_out += left;\n s.strm.avail_out -= left;\n s.strm.total_out += left;\n s.block_start += left;\n len -= left;\n }\n\n /* Copy uncompressed bytes directly from next_in to next_out, updating\n * the check value.\n */\n if (len) {\n read_buf(s.strm, s.strm.output, s.strm.next_out, len);\n s.strm.next_out += len;\n s.strm.avail_out -= len;\n s.strm.total_out += len;\n }\n } while (last === 0);\n\n /* Update the sliding window with the last s->w_size bytes of the copied\n * data, or append all of the copied data to the existing window if less\n * than s->w_size bytes were copied. Also update the number of bytes to\n * insert in the hash tables, in the event that deflateParams() switches to\n * a non-zero compression level.\n */\n used -= s.strm.avail_in; /* number of input bytes directly copied */\n if (used) {\n /* If any input was used, then no unused input remains in the window,\n * therefore s->block_start == s->strstart.\n */\n if (used >= s.w_size) { /* supplant the previous history */\n s.matches = 2; /* clear hash */\n //zmemcpy(s->window, s->strm->next_in - s->w_size, s->w_size);\n s.window.set(s.strm.input.subarray(s.strm.next_in - s.w_size, s.strm.next_in), 0);\n s.strstart = s.w_size;\n s.insert = s.strstart;\n }\n else {\n if (s.window_size - s.strstart <= used) {\n /* Slide the window down. */\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n //zmemcpy(s->window + s->strstart, s->strm->next_in - used, used);\n s.window.set(s.strm.input.subarray(s.strm.next_in - used, s.strm.next_in), s.strstart);\n s.strstart += used;\n s.insert += used > s.w_size - s.insert ? s.w_size - s.insert : used;\n }\n s.block_start = s.strstart;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* If the last block was written to next_out, then done. */\n if (last) {\n return BS_FINISH_DONE;\n }\n\n /* If flushing and all input has been consumed, then done. */\n if (flush !== Z_NO_FLUSH$2 && flush !== Z_FINISH$3 &&\n s.strm.avail_in === 0 && s.strstart === s.block_start) {\n return BS_BLOCK_DONE;\n }\n\n /* Fill the window with any remaining input. */\n have = s.window_size - s.strstart;\n if (s.strm.avail_in > have && s.block_start >= s.w_size) {\n /* Slide the window down. */\n s.block_start -= s.w_size;\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n have += s.w_size; /* more space now */\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n if (have > s.strm.avail_in) {\n have = s.strm.avail_in;\n }\n if (have) {\n read_buf(s.strm, s.window, s.strstart, have);\n s.strstart += have;\n s.insert += have > s.w_size - s.insert ? s.w_size - s.insert : have;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* There was not enough avail_out to write a complete worthy or flushed\n * stored block to next_out. Write a stored block to pending instead, if we\n * have enough input for a worthy block, or if flushing and there is enough\n * room for the remaining input as a stored block in the pending buffer.\n */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n /* maximum stored block length that will fit in pending: */\n have = s.pending_buf_size - have > 65535/* MAX_STORED */ ? 65535/* MAX_STORED */ : s.pending_buf_size - have;\n min_block = have > s.w_size ? s.w_size : have;\n left = s.strstart - s.block_start;\n if (left >= min_block ||\n ((left || flush === Z_FINISH$3) && flush !== Z_NO_FLUSH$2 &&\n s.strm.avail_in === 0 && left <= have)) {\n len = left > have ? have : left;\n last = flush === Z_FINISH$3 && s.strm.avail_in === 0 &&\n len === left ? 1 : 0;\n _tr_stored_block(s, s.block_start, len, last);\n s.block_start += len;\n flush_pending(s.strm);\n }\n\n /* We've done all we can with the available input and output. */\n return last ? BS_FINISH_STARTED : BS_NEED_MORE;\n};\n\n\n/* ===========================================================================\n * Compress as much as possible from the input stream, return the current\n * block state.\n * This function does not perform lazy evaluation of matches and inserts\n * new strings in the dictionary only for unmatched strings or for short\n * matches. It is used only for the fast compression options.\n */\nconst deflate_fast = (s, flush) => {\n\n let hash_head; /* head of the hash chain */\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) {\n break; /* flush the current block */\n }\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n * At this point we have always match_length < MIN_MATCH\n */\n if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n }\n if (s.match_length >= MIN_MATCH) {\n // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only\n\n /*** _tr_tally_dist(s, s.strstart - s.match_start,\n s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n\n /* Insert new strings in the hash table only if the match length\n * is not too large. This saves time but degrades compression.\n */\n if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) {\n s.match_length--; /* string at strstart already in table */\n do {\n s.strstart++;\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead.\n */\n } while (--s.match_length !== 0);\n s.strstart++;\n } else\n {\n s.strstart += s.match_length;\n s.match_length = 0;\n s.ins_h = s.window[s.strstart];\n /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + 1]);\n\n//#if MIN_MATCH != 3\n// Call UPDATE_HASH() MIN_MATCH-3 more times\n//#endif\n /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not\n * matter since it will be recomputed at next deflate call.\n */\n }\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s.window[s.strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = ((s.strstart < (MIN_MATCH - 1)) ? s.strstart : MIN_MATCH - 1);\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * Same as above, but achieves better compression. We use a lazy\n * evaluation for matches: a match is finally adopted only if there is\n * no better match at the next window position.\n */\nconst deflate_slow = (s, flush) => {\n\n let hash_head; /* head of hash chain */\n let bflush; /* set if current block must be flushed */\n\n let max_insert;\n\n /* Process the input block. */\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n */\n s.prev_length = s.match_length;\n s.prev_match = s.match_start;\n s.match_length = MIN_MATCH - 1;\n\n if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match &&\n s.strstart - hash_head <= (s.w_size - MIN_LOOKAHEAD)/*MAX_DIST(s)*/) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n\n if (s.match_length <= 5 &&\n (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) {\n\n /* If prev_match is also MIN_MATCH, match_start is garbage\n * but we will ignore the current match anyway.\n */\n s.match_length = MIN_MATCH - 1;\n }\n }\n /* If there was a match at the previous step and the current\n * match is not better, output the previous match:\n */\n if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) {\n max_insert = s.strstart + s.lookahead - MIN_MATCH;\n /* Do not insert strings in hash table beyond this. */\n\n //check_match(s, s.strstart-1, s.prev_match, s.prev_length);\n\n /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match,\n s.prev_length - MIN_MATCH, bflush);***/\n bflush = _tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH);\n /* Insert in hash table all strings up to the end of the match.\n * strstart-1 and strstart are already inserted. If there is not\n * enough lookahead, the last two strings are not inserted in\n * the hash table.\n */\n s.lookahead -= s.prev_length - 1;\n s.prev_length -= 2;\n do {\n if (++s.strstart <= max_insert) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n } while (--s.prev_length !== 0);\n s.match_available = 0;\n s.match_length = MIN_MATCH - 1;\n s.strstart++;\n\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n } else if (s.match_available) {\n /* If there was no match at the previous position, output a\n * single literal. If there was a match but the current match\n * is longer, truncate the previous match to a single literal.\n */\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n if (bflush) {\n /*** FLUSH_BLOCK_ONLY(s, 0) ***/\n flush_block_only(s, false);\n /***/\n }\n s.strstart++;\n s.lookahead--;\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n } else {\n /* There is no previous match to compare with, wait for\n * the next step to decide.\n */\n s.match_available = 1;\n s.strstart++;\n s.lookahead--;\n }\n }\n //Assert (flush != Z_NO_FLUSH, \"no flush?\");\n if (s.match_available) {\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n s.match_available = 0;\n }\n s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n return BS_BLOCK_DONE;\n};\n\n\n/* ===========================================================================\n * For Z_RLE, simply look for runs of bytes, generate matches only of distance\n * one. Do not maintain a hash table. (It will be regenerated if this run of\n * deflate switches away from Z_RLE.)\n */\nconst deflate_rle = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n let prev; /* byte at distance one to match */\n let scan, strend; /* scan goes up to strend for length of run */\n\n const _win = s.window;\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the longest run, plus one for the unrolled loop.\n */\n if (s.lookahead <= MAX_MATCH) {\n fill_window(s);\n if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* See how many times the previous byte repeats */\n s.match_length = 0;\n if (s.lookahead >= MIN_MATCH && s.strstart > 0) {\n scan = s.strstart - 1;\n prev = _win[scan];\n if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) {\n strend = s.strstart + MAX_MATCH;\n do {\n /*jshint noempty:false*/\n } while (prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n scan < strend);\n s.match_length = MAX_MATCH - (strend - scan);\n if (s.match_length > s.lookahead) {\n s.match_length = s.lookahead;\n }\n }\n //Assert(scan <= s->window+(uInt)(s->window_size-1), \"wild scan\");\n }\n\n /* Emit match if have run of MIN_MATCH or longer, else emit literal */\n if (s.match_length >= MIN_MATCH) {\n //check_match(s, s.strstart, s.strstart - 1, s.match_length);\n\n /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, 1, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n s.strstart += s.match_length;\n s.match_length = 0;\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * For Z_HUFFMAN_ONLY, do not look for matches. Do not maintain a hash table.\n * (It will be regenerated if this run of deflate switches away from Huffman.)\n */\nconst deflate_huff = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we have a literal to write. */\n if (s.lookahead === 0) {\n fill_window(s);\n if (s.lookahead === 0) {\n if (flush === Z_NO_FLUSH$2) {\n return BS_NEED_MORE;\n }\n break; /* flush the current block */\n }\n }\n\n /* Output a literal byte */\n s.match_length = 0;\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n s.lookahead--;\n s.strstart++;\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH$3) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* Values for max_lazy_match, good_match and max_chain_length, depending on\n * the desired pack level (0..9). The values given below have been tuned to\n * exclude worst case performance for pathological files. Better values may be\n * found for specific files.\n */\nfunction Config(good_length, max_lazy, nice_length, max_chain, func) {\n\n this.good_length = good_length;\n this.max_lazy = max_lazy;\n this.nice_length = nice_length;\n this.max_chain = max_chain;\n this.func = func;\n}\n\nconst configuration_table = [\n /* good lazy nice chain */\n new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */\n new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */\n new Config(4, 5, 16, 8, deflate_fast), /* 2 */\n new Config(4, 6, 32, 32, deflate_fast), /* 3 */\n\n new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */\n new Config(8, 16, 32, 32, deflate_slow), /* 5 */\n new Config(8, 16, 128, 128, deflate_slow), /* 6 */\n new Config(8, 32, 128, 256, deflate_slow), /* 7 */\n new Config(32, 128, 258, 1024, deflate_slow), /* 8 */\n new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */\n];\n\n\n/* ===========================================================================\n * Initialize the \"longest match\" routines for a new zlib stream\n */\nconst lm_init = (s) => {\n\n s.window_size = 2 * s.w_size;\n\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n\n /* Set the default configuration parameters:\n */\n s.max_lazy_match = configuration_table[s.level].max_lazy;\n s.good_match = configuration_table[s.level].good_length;\n s.nice_match = configuration_table[s.level].nice_length;\n s.max_chain_length = configuration_table[s.level].max_chain;\n\n s.strstart = 0;\n s.block_start = 0;\n s.lookahead = 0;\n s.insert = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n s.ins_h = 0;\n};\n\n\nfunction DeflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.status = 0; /* as the name implies */\n this.pending_buf = null; /* output still pending */\n this.pending_buf_size = 0; /* size of pending_buf */\n this.pending_out = 0; /* next pending byte to output to the stream */\n this.pending = 0; /* nb of bytes in the pending buffer */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */\n this.gzhead = null; /* gzip header information to write */\n this.gzindex = 0; /* where in extra, name, or comment */\n this.method = Z_DEFLATED$2; /* can only be DEFLATED */\n this.last_flush = -1; /* value of flush param for previous deflate call */\n\n this.w_size = 0; /* LZ77 window size (32K by default) */\n this.w_bits = 0; /* log2(w_size) (8..16) */\n this.w_mask = 0; /* w_size - 1 */\n\n this.window = null;\n /* Sliding window. Input bytes are read into the second half of the window,\n * and move to the first half later to keep a dictionary of at least wSize\n * bytes. With this organization, matches are limited to a distance of\n * wSize-MAX_MATCH bytes, but this ensures that IO is always\n * performed with a length multiple of the block size.\n */\n\n this.window_size = 0;\n /* Actual size of window: 2*wSize, except when the user input buffer\n * is directly used as sliding window.\n */\n\n this.prev = null;\n /* Link to older string with same hash index. To limit the size of this\n * array to 64K, this link is maintained only for the last 32K strings.\n * An index in this array is thus a window index modulo 32K.\n */\n\n this.head = null; /* Heads of the hash chains or NIL. */\n\n this.ins_h = 0; /* hash index of string to be inserted */\n this.hash_size = 0; /* number of elements in hash table */\n this.hash_bits = 0; /* log2(hash_size) */\n this.hash_mask = 0; /* hash_size-1 */\n\n this.hash_shift = 0;\n /* Number of bits by which ins_h must be shifted at each input\n * step. It must be such that after MIN_MATCH steps, the oldest\n * byte no longer takes part in the hash key, that is:\n * hash_shift * MIN_MATCH >= hash_bits\n */\n\n this.block_start = 0;\n /* Window position at the beginning of the current output block. Gets\n * negative when the window is moved backwards.\n */\n\n this.match_length = 0; /* length of best match */\n this.prev_match = 0; /* previous match */\n this.match_available = 0; /* set if previous match exists */\n this.strstart = 0; /* start of string to insert */\n this.match_start = 0; /* start of matching string */\n this.lookahead = 0; /* number of valid bytes ahead in window */\n\n this.prev_length = 0;\n /* Length of the best match at previous step. Matches not greater than this\n * are discarded. This is used in the lazy match evaluation.\n */\n\n this.max_chain_length = 0;\n /* To speed up deflation, hash chains are never searched beyond this\n * length. A higher limit improves compression ratio but degrades the\n * speed.\n */\n\n this.max_lazy_match = 0;\n /* Attempt to find a better match only when the current match is strictly\n * smaller than this value. This mechanism is used only for compression\n * levels >= 4.\n */\n // That's alias to max_lazy_match, don't use directly\n //this.max_insert_length = 0;\n /* Insert new strings in the hash table only if the match length is not\n * greater than this length. This saves time but degrades compression.\n * max_insert_length is used only for compression levels <= 3.\n */\n\n this.level = 0; /* compression level (1..9) */\n this.strategy = 0; /* favor or force Huffman coding*/\n\n this.good_match = 0;\n /* Use a faster search when the previous match is longer than this */\n\n this.nice_match = 0; /* Stop searching when current match exceeds this */\n\n /* used by trees.c: */\n\n /* Didn't use ct_data typedef below to suppress compiler warning */\n\n // struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */\n // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */\n // struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */\n\n // Use flat array of DOUBLE size, with interleaved fata,\n // because JS does not support effective\n this.dyn_ltree = new Uint16Array(HEAP_SIZE * 2);\n this.dyn_dtree = new Uint16Array((2 * D_CODES + 1) * 2);\n this.bl_tree = new Uint16Array((2 * BL_CODES + 1) * 2);\n zero(this.dyn_ltree);\n zero(this.dyn_dtree);\n zero(this.bl_tree);\n\n this.l_desc = null; /* desc. for literal tree */\n this.d_desc = null; /* desc. for distance tree */\n this.bl_desc = null; /* desc. for bit length tree */\n\n //ush bl_count[MAX_BITS+1];\n this.bl_count = new Uint16Array(MAX_BITS + 1);\n /* number of codes at each bit length for an optimal tree */\n\n //int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */\n this.heap = new Uint16Array(2 * L_CODES + 1); /* heap used to build the Huffman trees */\n zero(this.heap);\n\n this.heap_len = 0; /* number of elements in the heap */\n this.heap_max = 0; /* element of largest frequency */\n /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.\n * The same heap array is used to build all trees.\n */\n\n this.depth = new Uint16Array(2 * L_CODES + 1); //uch depth[2*L_CODES+1];\n zero(this.depth);\n /* Depth of each subtree used as tie breaker for trees of equal frequency\n */\n\n this.sym_buf = 0; /* buffer for distances and literals/lengths */\n\n this.lit_bufsize = 0;\n /* Size of match buffer for literals/lengths. There are 4 reasons for\n * limiting lit_bufsize to 64K:\n * - frequencies can be kept in 16 bit counters\n * - if compression is not successful for the first block, all input\n * data is still in the window so we can still emit a stored block even\n * when input comes from standard input. (This can also be done for\n * all blocks if lit_bufsize is not greater than 32K.)\n * - if compression is not successful for a file smaller than 64K, we can\n * even emit a stored file instead of a stored block (saving 5 bytes).\n * This is applicable only for zip (not gzip or zlib).\n * - creating new Huffman trees less frequently may not provide fast\n * adaptation to changes in the input data statistics. (Take for\n * example a binary file with poorly compressible code followed by\n * a highly compressible string table.) Smaller buffer sizes give\n * fast adaptation but have of course the overhead of transmitting\n * trees more frequently.\n * - I can't count above 4\n */\n\n this.sym_next = 0; /* running index in sym_buf */\n this.sym_end = 0; /* symbol table full when sym_next reaches this */\n\n this.opt_len = 0; /* bit length of current block with optimal trees */\n this.static_len = 0; /* bit length of current block with static trees */\n this.matches = 0; /* number of string matches in current block */\n this.insert = 0; /* bytes at end of window left to insert */\n\n\n this.bi_buf = 0;\n /* Output buffer. bits are inserted starting at the bottom (least\n * significant bits).\n */\n this.bi_valid = 0;\n /* Number of valid bits in bi_buf. All bits above the last valid bit\n * are always zero.\n */\n\n // Used for window memory init. We safely ignore it for JS. That makes\n // sense only for pointers and memory check tools.\n //this.high_water = 0;\n /* High water mark offset in window for initialized bytes -- bytes above\n * this are set to zero in order to avoid memory check warnings when\n * longest match routines access bytes past the input. This is then\n * updated to the new high water mark.\n */\n}\n\n\n/* =========================================================================\n * Check for a valid deflate stream state. Return 0 if ok, 1 if not.\n */\nconst deflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const s = strm.state;\n if (!s || s.strm !== strm || (s.status !== INIT_STATE &&\n//#ifdef GZIP\n s.status !== GZIP_STATE &&\n//#endif\n s.status !== EXTRA_STATE &&\n s.status !== NAME_STATE &&\n s.status !== COMMENT_STATE &&\n s.status !== HCRC_STATE &&\n s.status !== BUSY_STATE &&\n s.status !== FINISH_STATE)) {\n return 1;\n }\n return 0;\n};\n\n\nconst deflateResetKeep = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return err(strm, Z_STREAM_ERROR$2);\n }\n\n strm.total_in = strm.total_out = 0;\n strm.data_type = Z_UNKNOWN;\n\n const s = strm.state;\n s.pending = 0;\n s.pending_out = 0;\n\n if (s.wrap < 0) {\n s.wrap = -s.wrap;\n /* was made negative by deflate(..., Z_FINISH); */\n }\n s.status =\n//#ifdef GZIP\n s.wrap === 2 ? GZIP_STATE :\n//#endif\n s.wrap ? INIT_STATE : BUSY_STATE;\n strm.adler = (s.wrap === 2) ?\n 0 // crc32(0, Z_NULL, 0)\n :\n 1; // adler32(0, Z_NULL, 0)\n s.last_flush = -2;\n _tr_init(s);\n return Z_OK$3;\n};\n\n\nconst deflateReset = (strm) => {\n\n const ret = deflateResetKeep(strm);\n if (ret === Z_OK$3) {\n lm_init(strm.state);\n }\n return ret;\n};\n\n\nconst deflateSetHeader = (strm, head) => {\n\n if (deflateStateCheck(strm) || strm.state.wrap !== 2) {\n return Z_STREAM_ERROR$2;\n }\n strm.state.gzhead = head;\n return Z_OK$3;\n};\n\n\nconst deflateInit2 = (strm, level, method, windowBits, memLevel, strategy) => {\n\n if (!strm) { // === Z_NULL\n return Z_STREAM_ERROR$2;\n }\n let wrap = 1;\n\n if (level === Z_DEFAULT_COMPRESSION$1) {\n level = 6;\n }\n\n if (windowBits < 0) { /* suppress zlib wrapper */\n wrap = 0;\n windowBits = -windowBits;\n }\n\n else if (windowBits > 15) {\n wrap = 2; /* write gzip wrapper instead */\n windowBits -= 16;\n }\n\n\n if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED$2 ||\n windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||\n strategy < 0 || strategy > Z_FIXED || (windowBits === 8 && wrap !== 1)) {\n return err(strm, Z_STREAM_ERROR$2);\n }\n\n\n if (windowBits === 8) {\n windowBits = 9;\n }\n /* until 256-byte window bug fixed */\n\n const s = new DeflateState();\n\n strm.state = s;\n s.strm = strm;\n s.status = INIT_STATE; /* to pass state test in deflateReset() */\n\n s.wrap = wrap;\n s.gzhead = null;\n s.w_bits = windowBits;\n s.w_size = 1 << s.w_bits;\n s.w_mask = s.w_size - 1;\n\n s.hash_bits = memLevel + 7;\n s.hash_size = 1 << s.hash_bits;\n s.hash_mask = s.hash_size - 1;\n s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);\n\n s.window = new Uint8Array(s.w_size * 2);\n s.head = new Uint16Array(s.hash_size);\n s.prev = new Uint16Array(s.w_size);\n\n // Don't need mem init magic for JS.\n //s.high_water = 0; /* nothing written to s->window yet */\n\n s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */\n\n /* We overlay pending_buf and sym_buf. This works since the average size\n * for length/distance pairs over any compressed block is assured to be 31\n * bits or less.\n *\n * Analysis: The longest fixed codes are a length code of 8 bits plus 5\n * extra bits, for lengths 131 to 257. The longest fixed distance codes are\n * 5 bits plus 13 extra bits, for distances 16385 to 32768. The longest\n * possible fixed-codes length/distance pair is then 31 bits total.\n *\n * sym_buf starts one-fourth of the way into pending_buf. So there are\n * three bytes in sym_buf for every four bytes in pending_buf. Each symbol\n * in sym_buf is three bytes -- two for the distance and one for the\n * literal/length. As each symbol is consumed, the pointer to the next\n * sym_buf value to read moves forward three bytes. From that symbol, up to\n * 31 bits are written to pending_buf. The closest the written pending_buf\n * bits gets to the next sym_buf symbol to read is just before the last\n * code is written. At that time, 31*(n-2) bits have been written, just\n * after 24*(n-2) bits have been consumed from sym_buf. sym_buf starts at\n * 8*n bits into pending_buf. (Note that the symbol buffer fills when n-1\n * symbols are written.) The closest the writing gets to what is unread is\n * then n+14 bits. Here n is lit_bufsize, which is 16384 by default, and\n * can range from 128 to 32768.\n *\n * Therefore, at a minimum, there are 142 bits of space between what is\n * written and what is read in the overlain buffers, so the symbols cannot\n * be overwritten by the compressed data. That space is actually 139 bits,\n * due to the three-bit fixed-code block header.\n *\n * That covers the case where either Z_FIXED is specified, forcing fixed\n * codes, or when the use of fixed codes is chosen, because that choice\n * results in a smaller compressed block than dynamic codes. That latter\n * condition then assures that the above analysis also covers all dynamic\n * blocks. A dynamic-code block will only be chosen to be emitted if it has\n * fewer bits than a fixed-code block would for the same set of symbols.\n * Therefore its average symbol length is assured to be less than 31. So\n * the compressed data for a dynamic block also cannot overwrite the\n * symbols from which it is being constructed.\n */\n\n s.pending_buf_size = s.lit_bufsize * 4;\n s.pending_buf = new Uint8Array(s.pending_buf_size);\n\n // It is offset from `s.pending_buf` (size is `s.lit_bufsize * 2`)\n //s->sym_buf = s->pending_buf + s->lit_bufsize;\n s.sym_buf = s.lit_bufsize;\n\n //s->sym_end = (s->lit_bufsize - 1) * 3;\n s.sym_end = (s.lit_bufsize - 1) * 3;\n /* We avoid equality with lit_bufsize*3 because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n\n s.level = level;\n s.strategy = strategy;\n s.method = method;\n\n return deflateReset(strm);\n};\n\nconst deflateInit = (strm, level) => {\n\n return deflateInit2(strm, level, Z_DEFLATED$2, MAX_WBITS$1, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY$1);\n};\n\n\n/* ========================================================================= */\nconst deflate$2 = (strm, flush) => {\n\n if (deflateStateCheck(strm) || flush > Z_BLOCK$1 || flush < 0) {\n return strm ? err(strm, Z_STREAM_ERROR$2) : Z_STREAM_ERROR$2;\n }\n\n const s = strm.state;\n\n if (!strm.output ||\n (strm.avail_in !== 0 && !strm.input) ||\n (s.status === FINISH_STATE && flush !== Z_FINISH$3)) {\n return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR$1 : Z_STREAM_ERROR$2);\n }\n\n const old_flush = s.last_flush;\n s.last_flush = flush;\n\n /* Flush as much pending output as possible */\n if (s.pending !== 0) {\n flush_pending(strm);\n if (strm.avail_out === 0) {\n /* Since avail_out is 0, deflate will be called again with\n * more output space, but possibly with both pending and\n * avail_in equal to zero. There won't be anything to do,\n * but this is not an error situation so make sure we\n * return OK instead of BUF_ERROR at next call of deflate:\n */\n s.last_flush = -1;\n return Z_OK$3;\n }\n\n /* Make sure there is something to do and avoid duplicate consecutive\n * flushes. For repeated and useless calls with Z_FINISH, we keep\n * returning Z_STREAM_END instead of Z_BUF_ERROR.\n */\n } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) &&\n flush !== Z_FINISH$3) {\n return err(strm, Z_BUF_ERROR$1);\n }\n\n /* User must not provide more input after the first FINISH: */\n if (s.status === FINISH_STATE && strm.avail_in !== 0) {\n return err(strm, Z_BUF_ERROR$1);\n }\n\n /* Write the header */\n if (s.status === INIT_STATE && s.wrap === 0) {\n s.status = BUSY_STATE;\n }\n if (s.status === INIT_STATE) {\n /* zlib header */\n let header = (Z_DEFLATED$2 + ((s.w_bits - 8) << 4)) << 8;\n let level_flags = -1;\n\n if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) {\n level_flags = 0;\n } else if (s.level < 6) {\n level_flags = 1;\n } else if (s.level === 6) {\n level_flags = 2;\n } else {\n level_flags = 3;\n }\n header |= (level_flags << 6);\n if (s.strstart !== 0) { header |= PRESET_DICT; }\n header += 31 - (header % 31);\n\n putShortMSB(s, header);\n\n /* Save the adler32 of the preset dictionary: */\n if (s.strstart !== 0) {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n strm.adler = 1; // adler32(0L, Z_NULL, 0);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n//#ifdef GZIP\n if (s.status === GZIP_STATE) {\n /* gzip header */\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n put_byte(s, 31);\n put_byte(s, 139);\n put_byte(s, 8);\n if (!s.gzhead) { // s->gzhead == Z_NULL\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, OS_CODE);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n else {\n put_byte(s, (s.gzhead.text ? 1 : 0) +\n (s.gzhead.hcrc ? 2 : 0) +\n (!s.gzhead.extra ? 0 : 4) +\n (!s.gzhead.name ? 0 : 8) +\n (!s.gzhead.comment ? 0 : 16)\n );\n put_byte(s, s.gzhead.time & 0xff);\n put_byte(s, (s.gzhead.time >> 8) & 0xff);\n put_byte(s, (s.gzhead.time >> 16) & 0xff);\n put_byte(s, (s.gzhead.time >> 24) & 0xff);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, s.gzhead.os & 0xff);\n if (s.gzhead.extra && s.gzhead.extra.length) {\n put_byte(s, s.gzhead.extra.length & 0xff);\n put_byte(s, (s.gzhead.extra.length >> 8) & 0xff);\n }\n if (s.gzhead.hcrc) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending, 0);\n }\n s.gzindex = 0;\n s.status = EXTRA_STATE;\n }\n }\n if (s.status === EXTRA_STATE) {\n if (s.gzhead.extra/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let left = (s.gzhead.extra.length & 0xffff) - s.gzindex;\n while (s.pending + left > s.pending_buf_size) {\n let copy = s.pending_buf_size - s.pending;\n // zmemcpy(s.pending_buf + s.pending,\n // s.gzhead.extra + s.gzindex, copy);\n s.pending_buf.set(s.gzhead.extra.subarray(s.gzindex, s.gzindex + copy), s.pending);\n s.pending = s.pending_buf_size;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex += copy;\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n left -= copy;\n }\n // JS specific: s.gzhead.extra may be TypedArray or Array for backward compatibility\n // TypedArray.slice and TypedArray.from don't exist in IE10-IE11\n let gzhead_extra = new Uint8Array(s.gzhead.extra);\n // zmemcpy(s->pending_buf + s->pending,\n // s->gzhead->extra + s->gzindex, left);\n s.pending_buf.set(gzhead_extra.subarray(s.gzindex, s.gzindex + left), s.pending);\n s.pending += left;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = NAME_STATE;\n }\n if (s.status === NAME_STATE) {\n if (s.gzhead.name/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.name.length) {\n val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = COMMENT_STATE;\n }\n if (s.status === COMMENT_STATE) {\n if (s.gzhead.comment/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.comment.length) {\n val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n }\n s.status = HCRC_STATE;\n }\n if (s.status === HCRC_STATE) {\n if (s.gzhead.hcrc) {\n if (s.pending + 2 > s.pending_buf_size) {\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n }\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK$3;\n }\n }\n//#endif\n\n /* Start a new block or continue the current one.\n */\n if (strm.avail_in !== 0 || s.lookahead !== 0 ||\n (flush !== Z_NO_FLUSH$2 && s.status !== FINISH_STATE)) {\n let bstate = s.level === 0 ? deflate_stored(s, flush) :\n s.strategy === Z_HUFFMAN_ONLY ? deflate_huff(s, flush) :\n s.strategy === Z_RLE ? deflate_rle(s, flush) :\n configuration_table[s.level].func(s, flush);\n\n if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) {\n s.status = FINISH_STATE;\n }\n if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) {\n if (strm.avail_out === 0) {\n s.last_flush = -1;\n /* avoid BUF_ERROR next call, see above */\n }\n return Z_OK$3;\n /* If flush != Z_NO_FLUSH && avail_out == 0, the next call\n * of deflate should use the same flush parameter to make sure\n * that the flush is complete. So we don't have to output an\n * empty block here, this will be done at next call. This also\n * ensures that for a very small output buffer, we emit at most\n * one empty block.\n */\n }\n if (bstate === BS_BLOCK_DONE) {\n if (flush === Z_PARTIAL_FLUSH) {\n _tr_align(s);\n }\n else if (flush !== Z_BLOCK$1) { /* FULL_FLUSH or SYNC_FLUSH */\n\n _tr_stored_block(s, 0, 0, false);\n /* For a full flush, this empty block will be recognized\n * as a special marker by inflate_sync().\n */\n if (flush === Z_FULL_FLUSH$1) {\n /*** CLEAR_HASH(s); ***/ /* forget history */\n zero(s.head); // Fill with NIL (= 0);\n\n if (s.lookahead === 0) {\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n }\n }\n flush_pending(strm);\n if (strm.avail_out === 0) {\n s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */\n return Z_OK$3;\n }\n }\n }\n\n if (flush !== Z_FINISH$3) { return Z_OK$3; }\n if (s.wrap <= 0) { return Z_STREAM_END$3; }\n\n /* Write the trailer */\n if (s.wrap === 2) {\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n put_byte(s, (strm.adler >> 16) & 0xff);\n put_byte(s, (strm.adler >> 24) & 0xff);\n put_byte(s, strm.total_in & 0xff);\n put_byte(s, (strm.total_in >> 8) & 0xff);\n put_byte(s, (strm.total_in >> 16) & 0xff);\n put_byte(s, (strm.total_in >> 24) & 0xff);\n }\n else\n {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n\n flush_pending(strm);\n /* If avail_out is zero, the application will call deflate again\n * to flush the rest.\n */\n if (s.wrap > 0) { s.wrap = -s.wrap; }\n /* write the trailer only once! */\n return s.pending !== 0 ? Z_OK$3 : Z_STREAM_END$3;\n};\n\n\nconst deflateEnd = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR$2;\n }\n\n const status = strm.state.status;\n\n strm.state = null;\n\n return status === BUSY_STATE ? err(strm, Z_DATA_ERROR$2) : Z_OK$3;\n};\n\n\n/* =========================================================================\n * Initializes the compression dictionary from the given byte\n * sequence without producing any compressed output.\n */\nconst deflateSetDictionary = (strm, dictionary) => {\n\n let dictLength = dictionary.length;\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR$2;\n }\n\n const s = strm.state;\n const wrap = s.wrap;\n\n if (wrap === 2 || (wrap === 1 && s.status !== INIT_STATE) || s.lookahead) {\n return Z_STREAM_ERROR$2;\n }\n\n /* when using zlib wrappers, compute Adler-32 for provided dictionary */\n if (wrap === 1) {\n /* adler32(strm->adler, dictionary, dictLength); */\n strm.adler = adler32_1(strm.adler, dictionary, dictLength, 0);\n }\n\n s.wrap = 0; /* avoid computing Adler-32 in read_buf */\n\n /* if dictionary would fill window, just replace the history */\n if (dictLength >= s.w_size) {\n if (wrap === 0) { /* already empty otherwise */\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n /* use the tail */\n // dictionary = dictionary.slice(dictLength - s.w_size);\n let tmpDict = new Uint8Array(s.w_size);\n tmpDict.set(dictionary.subarray(dictLength - s.w_size, dictLength), 0);\n dictionary = tmpDict;\n dictLength = s.w_size;\n }\n /* insert dictionary into window and hash */\n const avail = strm.avail_in;\n const next = strm.next_in;\n const input = strm.input;\n strm.avail_in = dictLength;\n strm.next_in = 0;\n strm.input = dictionary;\n fill_window(s);\n while (s.lookahead >= MIN_MATCH) {\n let str = s.strstart;\n let n = s.lookahead - (MIN_MATCH - 1);\n do {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n\n s.head[s.ins_h] = str;\n str++;\n } while (--n);\n s.strstart = str;\n s.lookahead = MIN_MATCH - 1;\n fill_window(s);\n }\n s.strstart += s.lookahead;\n s.block_start = s.strstart;\n s.insert = s.lookahead;\n s.lookahead = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n strm.next_in = next;\n strm.input = input;\n strm.avail_in = avail;\n s.wrap = wrap;\n return Z_OK$3;\n};\n\n\nvar deflateInit_1 = deflateInit;\nvar deflateInit2_1 = deflateInit2;\nvar deflateReset_1 = deflateReset;\nvar deflateResetKeep_1 = deflateResetKeep;\nvar deflateSetHeader_1 = deflateSetHeader;\nvar deflate_2$1 = deflate$2;\nvar deflateEnd_1 = deflateEnd;\nvar deflateSetDictionary_1 = deflateSetDictionary;\nvar deflateInfo = 'pako deflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.deflateBound = deflateBound;\nmodule.exports.deflateCopy = deflateCopy;\nmodule.exports.deflateGetDictionary = deflateGetDictionary;\nmodule.exports.deflateParams = deflateParams;\nmodule.exports.deflatePending = deflatePending;\nmodule.exports.deflatePrime = deflatePrime;\nmodule.exports.deflateTune = deflateTune;\n*/\n\nvar deflate_1$2 = {\n\tdeflateInit: deflateInit_1,\n\tdeflateInit2: deflateInit2_1,\n\tdeflateReset: deflateReset_1,\n\tdeflateResetKeep: deflateResetKeep_1,\n\tdeflateSetHeader: deflateSetHeader_1,\n\tdeflate: deflate_2$1,\n\tdeflateEnd: deflateEnd_1,\n\tdeflateSetDictionary: deflateSetDictionary_1,\n\tdeflateInfo: deflateInfo\n};\n\nconst _has = (obj, key) => {\n return Object.prototype.hasOwnProperty.call(obj, key);\n};\n\nvar assign = function (obj /*from1, from2, from3, ...*/) {\n const sources = Array.prototype.slice.call(arguments, 1);\n while (sources.length) {\n const source = sources.shift();\n if (!source) { continue; }\n\n if (typeof source !== 'object') {\n throw new TypeError(source + 'must be non-object');\n }\n\n for (const p in source) {\n if (_has(source, p)) {\n obj[p] = source[p];\n }\n }\n }\n\n return obj;\n};\n\n\n// Join array of chunks to single array.\nvar flattenChunks = (chunks) => {\n // calculate data length\n let len = 0;\n\n for (let i = 0, l = chunks.length; i < l; i++) {\n len += chunks[i].length;\n }\n\n // join chunks\n const result = new Uint8Array(len);\n\n for (let i = 0, pos = 0, l = chunks.length; i < l; i++) {\n let chunk = chunks[i];\n result.set(chunk, pos);\n pos += chunk.length;\n }\n\n return result;\n};\n\nvar common = {\n\tassign: assign,\n\tflattenChunks: flattenChunks\n};\n\n// String encode/decode helpers\n\n\n// Quick check if we can use fast array to bin string conversion\n//\n// - apply(Array) can fail on Android 2.2\n// - apply(Uint8Array) can fail on iOS 5.1 Safari\n//\nlet STR_APPLY_UIA_OK = true;\n\ntry { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }\n\n\n// Table with utf8 lengths (calculated by first byte of sequence)\n// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,\n// because max possible codepoint is 0x10ffff\nconst _utf8len = new Uint8Array(256);\nfor (let q = 0; q < 256; q++) {\n _utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);\n}\n_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start\n\n\n// convert string to array (typed, when possible)\nvar string2buf = (str) => {\n if (typeof TextEncoder === 'function' && TextEncoder.prototype.encode) {\n return new TextEncoder().encode(str);\n }\n\n let buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;\n\n // count binary size\n for (m_pos = 0; m_pos < str_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;\n }\n\n // allocate buffer\n buf = new Uint8Array(buf_len);\n\n // convert\n for (i = 0, m_pos = 0; i < buf_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n if (c < 0x80) {\n /* one byte */\n buf[i++] = c;\n } else if (c < 0x800) {\n /* two bytes */\n buf[i++] = 0xC0 | (c >>> 6);\n buf[i++] = 0x80 | (c & 0x3f);\n } else if (c < 0x10000) {\n /* three bytes */\n buf[i++] = 0xE0 | (c >>> 12);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n } else {\n /* four bytes */\n buf[i++] = 0xf0 | (c >>> 18);\n buf[i++] = 0x80 | (c >>> 12 & 0x3f);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n }\n }\n\n return buf;\n};\n\n// Helper\nconst buf2binstring = (buf, len) => {\n // On Chrome, the arguments in a function call that are allowed is `65534`.\n // If the length of the buffer is smaller than that, we can use this optimization,\n // otherwise we will take a slower path.\n if (len < 65534) {\n if (buf.subarray && STR_APPLY_UIA_OK) {\n return String.fromCharCode.apply(null, buf.length === len ? buf : buf.subarray(0, len));\n }\n }\n\n let result = '';\n for (let i = 0; i < len; i++) {\n result += String.fromCharCode(buf[i]);\n }\n return result;\n};\n\n\n// convert array to string\nvar buf2string = (buf, max) => {\n const len = max || buf.length;\n\n if (typeof TextDecoder === 'function' && TextDecoder.prototype.decode) {\n return new TextDecoder().decode(buf.subarray(0, max));\n }\n\n let i, out;\n\n // Reserve max possible length (2 words per char)\n // NB: by unknown reasons, Array is significantly faster for\n // String.fromCharCode.apply than Uint16Array.\n const utf16buf = new Array(len * 2);\n\n for (out = 0, i = 0; i < len;) {\n let c = buf[i++];\n // quick process ascii\n if (c < 0x80) { utf16buf[out++] = c; continue; }\n\n let c_len = _utf8len[c];\n // skip 5 & 6 byte codes\n if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }\n\n // apply mask on first byte\n c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;\n // join the rest\n while (c_len > 1 && i < len) {\n c = (c << 6) | (buf[i++] & 0x3f);\n c_len--;\n }\n\n // terminated by end of string?\n if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }\n\n if (c < 0x10000) {\n utf16buf[out++] = c;\n } else {\n c -= 0x10000;\n utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);\n utf16buf[out++] = 0xdc00 | (c & 0x3ff);\n }\n }\n\n return buf2binstring(utf16buf, out);\n};\n\n\n// Calculate max possible position in utf8 buffer,\n// that will not break sequence. If that's not possible\n// - (very small limits) return max size as is.\n//\n// buf[] - utf8 bytes array\n// max - length limit (mandatory);\nvar utf8border = (buf, max) => {\n\n max = max || buf.length;\n if (max > buf.length) { max = buf.length; }\n\n // go back from last position, until start of sequence found\n let pos = max - 1;\n while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }\n\n // Very small and broken sequence,\n // return max, because we should return something anyway.\n if (pos < 0) { return max; }\n\n // If we came to start of buffer - that means buffer is too small,\n // return max too.\n if (pos === 0) { return max; }\n\n return (pos + _utf8len[buf[pos]] > max) ? pos : max;\n};\n\nvar strings = {\n\tstring2buf: string2buf,\n\tbuf2string: buf2string,\n\tutf8border: utf8border\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction ZStream() {\n /* next input byte */\n this.input = null; // JS specific, because we have no pointers\n this.next_in = 0;\n /* number of bytes available at input */\n this.avail_in = 0;\n /* total number of input bytes read so far */\n this.total_in = 0;\n /* next output byte should be put there */\n this.output = null; // JS specific, because we have no pointers\n this.next_out = 0;\n /* remaining free space at output */\n this.avail_out = 0;\n /* total number of bytes output so far */\n this.total_out = 0;\n /* last error message, NULL if no error */\n this.msg = ''/*Z_NULL*/;\n /* not visible by applications */\n this.state = null;\n /* best guess about the data type: binary or text */\n this.data_type = 2/*Z_UNKNOWN*/;\n /* adler32 value of the uncompressed data */\n this.adler = 0;\n}\n\nvar zstream = ZStream;\n\nconst toString$1 = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH: Z_NO_FLUSH$1, Z_SYNC_FLUSH, Z_FULL_FLUSH, Z_FINISH: Z_FINISH$2,\n Z_OK: Z_OK$2, Z_STREAM_END: Z_STREAM_END$2,\n Z_DEFAULT_COMPRESSION,\n Z_DEFAULT_STRATEGY,\n Z_DEFLATED: Z_DEFLATED$1\n} = constants$2;\n\n/* ===========================================================================*/\n\n\n/**\n * class Deflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[deflate]],\n * [[deflateRaw]] and [[gzip]].\n **/\n\n/* internal\n * Deflate.chunks -> Array\n *\n * Chunks of output data, if [[Deflate#onData]] not overridden.\n **/\n\n/**\n * Deflate.result -> Uint8Array\n *\n * Compressed result, generated by default [[Deflate#onData]]\n * and [[Deflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Deflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Deflate.err -> Number\n *\n * Error code after deflate finished. 0 (Z_OK) on success.\n * You will not need it in real life, because deflate errors\n * are possible only on wrong options or bad `onData` / `onEnd`\n * custom handlers.\n **/\n\n/**\n * Deflate.msg -> String\n *\n * Error message, if [[Deflate.err]] != 0\n **/\n\n\n/**\n * new Deflate(options)\n * - options (Object): zlib deflate options.\n *\n * Creates new deflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `level`\n * - `windowBits`\n * - `memLevel`\n * - `strategy`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw deflate\n * - `gzip` (Boolean) - create gzip wrapper\n * - `header` (Object) - custom header for gzip\n * - `text` (Boolean) - true if compressed data believed to be text\n * - `time` (Number) - modification time, unix timestamp\n * - `os` (Number) - operation system code\n * - `extra` (Array) - array of bytes with extra data (max 65536)\n * - `name` (String) - file name (binary string)\n * - `comment` (String) - comment (binary string)\n * - `hcrc` (Boolean) - true if header crc should be added\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * , chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * , chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const deflate = new pako.Deflate({ level: 3});\n *\n * deflate.push(chunk1, false);\n * deflate.push(chunk2, true); // true -> last chunk\n *\n * if (deflate.err) { throw new Error(deflate.err); }\n *\n * console.log(deflate.result);\n * ```\n **/\nfunction Deflate$1(options) {\n this.options = common.assign({\n level: Z_DEFAULT_COMPRESSION,\n method: Z_DEFLATED$1,\n chunkSize: 16384,\n windowBits: 15,\n memLevel: 8,\n strategy: Z_DEFAULT_STRATEGY\n }, options || {});\n\n let opt = this.options;\n\n if (opt.raw && (opt.windowBits > 0)) {\n opt.windowBits = -opt.windowBits;\n }\n\n else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) {\n opt.windowBits += 16;\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new zstream();\n this.strm.avail_out = 0;\n\n let status = deflate_1$2.deflateInit2(\n this.strm,\n opt.level,\n opt.method,\n opt.windowBits,\n opt.memLevel,\n opt.strategy\n );\n\n if (status !== Z_OK$2) {\n throw new Error(messages[status]);\n }\n\n if (opt.header) {\n deflate_1$2.deflateSetHeader(this.strm, opt.header);\n }\n\n if (opt.dictionary) {\n let dict;\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n // If we need to compress text, change encoding to utf8.\n dict = strings.string2buf(opt.dictionary);\n } else if (toString$1.call(opt.dictionary) === '[object ArrayBuffer]') {\n dict = new Uint8Array(opt.dictionary);\n } else {\n dict = opt.dictionary;\n }\n\n status = deflate_1$2.deflateSetDictionary(this.strm, dict);\n\n if (status !== Z_OK$2) {\n throw new Error(messages[status]);\n }\n\n this._dict_set = true;\n }\n}\n\n/**\n * Deflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer|String): input data. Strings will be\n * converted to utf8 byte sequence.\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.\n * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.\n *\n * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with\n * new compressed chunks. Returns `true` on success. The last data block must\n * have `flush_mode` Z_FINISH (or `true`). That will flush internal pending\n * buffers and call [[Deflate#onEnd]].\n *\n * On fail call [[Deflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nDeflate$1.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n let status, _flush_mode;\n\n if (this.ended) { return false; }\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH$2 : Z_NO_FLUSH$1;\n\n // Convert data if needed\n if (typeof data === 'string') {\n // If we need to compress text, change encoding to utf8.\n strm.input = strings.string2buf(data);\n } else if (toString$1.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n // Make sure avail_out > 6 to avoid repeating markers\n if ((_flush_mode === Z_SYNC_FLUSH || _flush_mode === Z_FULL_FLUSH) && strm.avail_out <= 6) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n status = deflate_1$2.deflate(strm, _flush_mode);\n\n // Ended => flush and finish\n if (status === Z_STREAM_END$2) {\n if (strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n }\n status = deflate_1$2.deflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return status === Z_OK$2;\n }\n\n // Flush if out buffer full\n if (strm.avail_out === 0) {\n this.onData(strm.output);\n continue;\n }\n\n // Flush if requested and has data\n if (_flush_mode > 0 && strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Deflate#onData(chunk) -> Void\n * - chunk (Uint8Array): output data.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nDeflate$1.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Deflate#onEnd(status) -> Void\n * - status (Number): deflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called once after you tell deflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nDeflate$1.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK$2) {\n this.result = common.flattenChunks(this.chunks);\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * deflate(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * Compress `data` with deflate algorithm and `options`.\n *\n * Supported options are:\n *\n * - level\n * - windowBits\n * - memLevel\n * - strategy\n * - dictionary\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const data = new Uint8Array([1,2,3,4,5,6,7,8,9]);\n *\n * console.log(pako.deflate(data));\n * ```\n **/\nfunction deflate$1(input, options) {\n const deflator = new Deflate$1(options);\n\n deflator.push(input, true);\n\n // That will never happens, if you don't cheat with options :)\n if (deflator.err) { throw deflator.msg || messages[deflator.err]; }\n\n return deflator.result;\n}\n\n\n/**\n * deflateRaw(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction deflateRaw$1(input, options) {\n options = options || {};\n options.raw = true;\n return deflate$1(input, options);\n}\n\n\n/**\n * gzip(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but create gzip wrapper instead of\n * deflate one.\n **/\nfunction gzip$1(input, options) {\n options = options || {};\n options.gzip = true;\n return deflate$1(input, options);\n}\n\n\nvar Deflate_1$1 = Deflate$1;\nvar deflate_2 = deflate$1;\nvar deflateRaw_1$1 = deflateRaw$1;\nvar gzip_1$1 = gzip$1;\nvar constants$1 = constants$2;\n\nvar deflate_1$1 = {\n\tDeflate: Deflate_1$1,\n\tdeflate: deflate_2,\n\tdeflateRaw: deflateRaw_1$1,\n\tgzip: gzip_1$1,\n\tconstants: constants$1\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// See state defs from inflate.js\nconst BAD$1 = 16209; /* got a data error -- remain here until reset */\nconst TYPE$1 = 16191; /* i: waiting for type bits, including last-flag bit */\n\n/*\n Decode literal, length, and distance codes and write out the resulting\n literal and match bytes until either not enough input or output is\n available, an end-of-block is encountered, or a data error is encountered.\n When large enough input and output buffers are supplied to inflate(), for\n example, a 16K input buffer and a 64K output buffer, more than 95% of the\n inflate execution time is spent in this routine.\n\n Entry assumptions:\n\n state.mode === LEN\n strm.avail_in >= 6\n strm.avail_out >= 258\n start >= strm.avail_out\n state.bits < 8\n\n On return, state.mode is one of:\n\n LEN -- ran out of enough output space or enough available input\n TYPE -- reached end of block code, inflate() to interpret next block\n BAD -- error in block data\n\n Notes:\n\n - The maximum input bits used by a length/distance pair is 15 bits for the\n length code, 5 bits for the length extra, 15 bits for the distance code,\n and 13 bits for the distance extra. This totals 48 bits, or six bytes.\n Therefore if strm.avail_in >= 6, then there is enough input to avoid\n checking for available input while decoding.\n\n - The maximum bytes that a single length/distance pair can output is 258\n bytes, which is the maximum length that can be coded. inflate_fast()\n requires strm.avail_out >= 258 for each loop to avoid checking for\n output space.\n */\nvar inffast = function inflate_fast(strm, start) {\n let _in; /* local strm.input */\n let last; /* have enough input while in < last */\n let _out; /* local strm.output */\n let beg; /* inflate()'s initial strm.output */\n let end; /* while out < end, enough space available */\n//#ifdef INFLATE_STRICT\n let dmax; /* maximum distance from zlib header */\n//#endif\n let wsize; /* window size or zero if not using window */\n let whave; /* valid bytes in the window */\n let wnext; /* window write index */\n // Use `s_window` instead `window`, avoid conflict with instrumentation tools\n let s_window; /* allocated sliding window, if wsize != 0 */\n let hold; /* local strm.hold */\n let bits; /* local strm.bits */\n let lcode; /* local strm.lencode */\n let dcode; /* local strm.distcode */\n let lmask; /* mask for first level of length codes */\n let dmask; /* mask for first level of distance codes */\n let here; /* retrieved table entry */\n let op; /* code bits, operation, extra bits, or */\n /* window position, window bytes to copy */\n let len; /* match length, unused bytes */\n let dist; /* match distance */\n let from; /* where to copy match from */\n let from_source;\n\n\n let input, output; // JS specific, because we have no pointers\n\n /* copy state to local variables */\n const state = strm.state;\n //here = state.here;\n _in = strm.next_in;\n input = strm.input;\n last = _in + (strm.avail_in - 5);\n _out = strm.next_out;\n output = strm.output;\n beg = _out - (start - strm.avail_out);\n end = _out + (strm.avail_out - 257);\n//#ifdef INFLATE_STRICT\n dmax = state.dmax;\n//#endif\n wsize = state.wsize;\n whave = state.whave;\n wnext = state.wnext;\n s_window = state.window;\n hold = state.hold;\n bits = state.bits;\n lcode = state.lencode;\n dcode = state.distcode;\n lmask = (1 << state.lenbits) - 1;\n dmask = (1 << state.distbits) - 1;\n\n\n /* decode literals and length/distances until end-of-block or not enough\n input data or output space */\n\n top:\n do {\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n\n here = lcode[hold & lmask];\n\n dolen:\n for (;;) { // Goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n if (op === 0) { /* literal */\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n output[_out++] = here & 0xffff/*here.val*/;\n }\n else if (op & 16) { /* length base */\n len = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (op) {\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n len += hold & ((1 << op) - 1);\n hold >>>= op;\n bits -= op;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", len));\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n here = dcode[hold & dmask];\n\n dodist:\n for (;;) { // goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n\n if (op & 16) { /* distance base */\n dist = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n }\n dist += hold & ((1 << op) - 1);\n//#ifdef INFLATE_STRICT\n if (dist > dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD$1;\n break top;\n }\n//#endif\n hold >>>= op;\n bits -= op;\n //Tracevv((stderr, \"inflate: distance %u\\n\", dist));\n op = _out - beg; /* max distance in output */\n if (dist > op) { /* see if copy from window */\n op = dist - op; /* distance back in window */\n if (op > whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD$1;\n break top;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// if (len <= op - whave) {\n// do {\n// output[_out++] = 0;\n// } while (--len);\n// continue top;\n// }\n// len -= op - whave;\n// do {\n// output[_out++] = 0;\n// } while (--op > whave);\n// if (op === 0) {\n// from = _out - dist;\n// do {\n// output[_out++] = output[from++];\n// } while (--len);\n// continue top;\n// }\n//#endif\n }\n from = 0; // window index\n from_source = s_window;\n if (wnext === 0) { /* very common case */\n from += wsize - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n else if (wnext < op) { /* wrap around window */\n from += wsize + wnext - op;\n op -= wnext;\n if (op < len) { /* some from end of window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = 0;\n if (wnext < len) { /* some from start of window */\n op = wnext;\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n }\n else { /* contiguous in window */\n from += wnext - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n while (len > 2) {\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n len -= 3;\n }\n if (len) {\n output[_out++] = from_source[from++];\n if (len > 1) {\n output[_out++] = from_source[from++];\n }\n }\n }\n else {\n from = _out - dist; /* copy direct from output */\n do { /* minimum length is three */\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n len -= 3;\n } while (len > 2);\n if (len) {\n output[_out++] = output[from++];\n if (len > 1) {\n output[_out++] = output[from++];\n }\n }\n }\n }\n else if ((op & 64) === 0) { /* 2nd level distance code */\n here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dodist;\n }\n else {\n strm.msg = 'invalid distance code';\n state.mode = BAD$1;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n }\n else if ((op & 64) === 0) { /* 2nd level length code */\n here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dolen;\n }\n else if (op & 32) { /* end-of-block */\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.mode = TYPE$1;\n break top;\n }\n else {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD$1;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n } while (_in < last && _out < end);\n\n /* return unused bytes (on entry, bits < 8, so in won't go too far back) */\n len = bits >> 3;\n _in -= len;\n bits -= len << 3;\n hold &= (1 << bits) - 1;\n\n /* update state and return */\n strm.next_in = _in;\n strm.next_out = _out;\n strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last));\n strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end));\n state.hold = hold;\n state.bits = bits;\n return;\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst MAXBITS = 15;\nconst ENOUGH_LENS$1 = 852;\nconst ENOUGH_DISTS$1 = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst CODES$1 = 0;\nconst LENS$1 = 1;\nconst DISTS$1 = 2;\n\nconst lbase = new Uint16Array([ /* Length codes 257..285 base */\n 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,\n 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0\n]);\n\nconst lext = new Uint8Array([ /* Length codes 257..285 extra */\n 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,\n 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78\n]);\n\nconst dbase = new Uint16Array([ /* Distance codes 0..29 base */\n 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,\n 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,\n 8193, 12289, 16385, 24577, 0, 0\n]);\n\nconst dext = new Uint8Array([ /* Distance codes 0..29 extra */\n 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,\n 23, 23, 24, 24, 25, 25, 26, 26, 27, 27,\n 28, 28, 29, 29, 64, 64\n]);\n\nconst inflate_table = (type, lens, lens_index, codes, table, table_index, work, opts) =>\n{\n const bits = opts.bits;\n //here = opts.here; /* table entry for duplication */\n\n let len = 0; /* a code's length in bits */\n let sym = 0; /* index of code symbols */\n let min = 0, max = 0; /* minimum and maximum code lengths */\n let root = 0; /* number of index bits for root table */\n let curr = 0; /* number of index bits for current table */\n let drop = 0; /* code bits to drop for sub-table */\n let left = 0; /* number of prefix codes available */\n let used = 0; /* code entries in table used */\n let huff = 0; /* Huffman code */\n let incr; /* for incrementing code, index */\n let fill; /* index for replicating entries */\n let low; /* low bits for current root entry */\n let mask; /* mask for low root bits */\n let next; /* next available space in table */\n let base = null; /* base value table to use */\n// let shoextra; /* extra bits table to use */\n let match; /* use base and extra for symbol >= match */\n const count = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */\n const offs = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */\n let extra = null;\n\n let here_bits, here_op, here_val;\n\n /*\n Process a set of code lengths to create a canonical Huffman code. The\n code lengths are lens[0..codes-1]. Each length corresponds to the\n symbols 0..codes-1. The Huffman code is generated by first sorting the\n symbols by length from short to long, and retaining the symbol order\n for codes with equal lengths. Then the code starts with all zero bits\n for the first code of the shortest length, and the codes are integer\n increments for the same length, and zeros are appended as the length\n increases. For the deflate format, these bits are stored backwards\n from their more natural integer increment ordering, and so when the\n decoding tables are built in the large loop below, the integer codes\n are incremented backwards.\n\n This routine assumes, but does not check, that all of the entries in\n lens[] are in the range 0..MAXBITS. The caller must assure this.\n 1..MAXBITS is interpreted as that code length. zero means that that\n symbol does not occur in this code.\n\n The codes are sorted by computing a count of codes for each length,\n creating from that a table of starting indices for each length in the\n sorted table, and then entering the symbols in order in the sorted\n table. The sorted table is work[], with that space being provided by\n the caller.\n\n The length counts are used for other purposes as well, i.e. finding\n the minimum and maximum length codes, determining if there are any\n codes at all, checking for a valid set of lengths, and looking ahead\n at length counts to determine sub-table sizes when building the\n decoding tables.\n */\n\n /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */\n for (len = 0; len <= MAXBITS; len++) {\n count[len] = 0;\n }\n for (sym = 0; sym < codes; sym++) {\n count[lens[lens_index + sym]]++;\n }\n\n /* bound code lengths, force root to be within code lengths */\n root = bits;\n for (max = MAXBITS; max >= 1; max--) {\n if (count[max] !== 0) { break; }\n }\n if (root > max) {\n root = max;\n }\n if (max === 0) { /* no symbols to code at all */\n //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */\n //table.bits[opts.table_index] = 1; //here.bits = (var char)1;\n //table.val[opts.table_index++] = 0; //here.val = (var short)0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n\n //table.op[opts.table_index] = 64;\n //table.bits[opts.table_index] = 1;\n //table.val[opts.table_index++] = 0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n opts.bits = 1;\n return 0; /* no symbols, but wait for decoding to report error */\n }\n for (min = 1; min < max; min++) {\n if (count[min] !== 0) { break; }\n }\n if (root < min) {\n root = min;\n }\n\n /* check for an over-subscribed or incomplete set of lengths */\n left = 1;\n for (len = 1; len <= MAXBITS; len++) {\n left <<= 1;\n left -= count[len];\n if (left < 0) {\n return -1;\n } /* over-subscribed */\n }\n if (left > 0 && (type === CODES$1 || max !== 1)) {\n return -1; /* incomplete set */\n }\n\n /* generate offsets into symbol table for each length for sorting */\n offs[1] = 0;\n for (len = 1; len < MAXBITS; len++) {\n offs[len + 1] = offs[len] + count[len];\n }\n\n /* sort symbols by length, by symbol order within each length */\n for (sym = 0; sym < codes; sym++) {\n if (lens[lens_index + sym] !== 0) {\n work[offs[lens[lens_index + sym]]++] = sym;\n }\n }\n\n /*\n Create and fill in decoding tables. In this loop, the table being\n filled is at next and has curr index bits. The code being used is huff\n with length len. That code is converted to an index by dropping drop\n bits off of the bottom. For codes where len is less than drop + curr,\n those top drop + curr - len bits are incremented through all values to\n fill the table with replicated entries.\n\n root is the number of index bits for the root table. When len exceeds\n root, sub-tables are created pointed to by the root entry with an index\n of the low root bits of huff. This is saved in low to check for when a\n new sub-table should be started. drop is zero when the root table is\n being filled, and drop is root when sub-tables are being filled.\n\n When a new sub-table is needed, it is necessary to look ahead in the\n code lengths to determine what size sub-table is needed. The length\n counts are used for this, and so count[] is decremented as codes are\n entered in the tables.\n\n used keeps track of how many table entries have been allocated from the\n provided *table space. It is checked for LENS and DIST tables against\n the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in\n the initial root table size constants. See the comments in inftrees.h\n for more information.\n\n sym increments through all symbols, and the loop terminates when\n all codes of length max, i.e. all codes, have been processed. This\n routine permits incomplete codes, so another loop after this one fills\n in the rest of the decoding tables with invalid code markers.\n */\n\n /* set up for code type */\n // poor man optimization - use if-else instead of switch,\n // to avoid deopts in old v8\n if (type === CODES$1) {\n base = extra = work; /* dummy value--not used */\n match = 20;\n\n } else if (type === LENS$1) {\n base = lbase;\n extra = lext;\n match = 257;\n\n } else { /* DISTS */\n base = dbase;\n extra = dext;\n match = 0;\n }\n\n /* initialize opts for loop */\n huff = 0; /* starting code */\n sym = 0; /* starting code symbol */\n len = min; /* starting code length */\n next = table_index; /* current table to fill in */\n curr = root; /* current table index bits */\n drop = 0; /* current bits to drop from code for index */\n low = -1; /* trigger new sub-table when len > root */\n used = 1 << root; /* use root table entries */\n mask = used - 1; /* mask for comparing low */\n\n /* check available table space */\n if ((type === LENS$1 && used > ENOUGH_LENS$1) ||\n (type === DISTS$1 && used > ENOUGH_DISTS$1)) {\n return 1;\n }\n\n /* process all codes and make table entries */\n for (;;) {\n /* create table entry */\n here_bits = len - drop;\n if (work[sym] + 1 < match) {\n here_op = 0;\n here_val = work[sym];\n }\n else if (work[sym] >= match) {\n here_op = extra[work[sym] - match];\n here_val = base[work[sym] - match];\n }\n else {\n here_op = 32 + 64; /* end of block */\n here_val = 0;\n }\n\n /* replicate for those indices with low len bits equal to huff */\n incr = 1 << (len - drop);\n fill = 1 << curr;\n min = fill; /* save offset to next table */\n do {\n fill -= incr;\n table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;\n } while (fill !== 0);\n\n /* backwards increment the len-bit code huff */\n incr = 1 << (len - 1);\n while (huff & incr) {\n incr >>= 1;\n }\n if (incr !== 0) {\n huff &= incr - 1;\n huff += incr;\n } else {\n huff = 0;\n }\n\n /* go to next symbol, update count, len */\n sym++;\n if (--count[len] === 0) {\n if (len === max) { break; }\n len = lens[lens_index + work[sym]];\n }\n\n /* create new sub-table if needed */\n if (len > root && (huff & mask) !== low) {\n /* if first time, transition to sub-tables */\n if (drop === 0) {\n drop = root;\n }\n\n /* increment past last table */\n next += min; /* here min is 1 << curr */\n\n /* determine length of next table */\n curr = len - drop;\n left = 1 << curr;\n while (curr + drop < max) {\n left -= count[curr + drop];\n if (left <= 0) { break; }\n curr++;\n left <<= 1;\n }\n\n /* check for enough space */\n used += 1 << curr;\n if ((type === LENS$1 && used > ENOUGH_LENS$1) ||\n (type === DISTS$1 && used > ENOUGH_DISTS$1)) {\n return 1;\n }\n\n /* point entry in root table to sub-table */\n low = huff & mask;\n /*table.op[low] = curr;\n table.bits[low] = root;\n table.val[low] = next - opts.table_index;*/\n table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;\n }\n }\n\n /* fill in remaining table entry if code is incomplete (guaranteed to have\n at most one remaining entry, since if the code is incomplete, the\n maximum code length that was allowed to get this far is one bit) */\n if (huff !== 0) {\n //table.op[next + huff] = 64; /* invalid code marker */\n //table.bits[next + huff] = len - drop;\n //table.val[next + huff] = 0;\n table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;\n }\n\n /* set return parameters */\n //opts.table_index += used;\n opts.bits = root;\n return 0;\n};\n\n\nvar inftrees = inflate_table;\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n\n\n\n\n\nconst CODES = 0;\nconst LENS = 1;\nconst DISTS = 2;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_FINISH: Z_FINISH$1, Z_BLOCK, Z_TREES,\n Z_OK: Z_OK$1, Z_STREAM_END: Z_STREAM_END$1, Z_NEED_DICT: Z_NEED_DICT$1, Z_STREAM_ERROR: Z_STREAM_ERROR$1, Z_DATA_ERROR: Z_DATA_ERROR$1, Z_MEM_ERROR: Z_MEM_ERROR$1, Z_BUF_ERROR,\n Z_DEFLATED\n} = constants$2;\n\n\n/* STATES ====================================================================*/\n/* ===========================================================================*/\n\n\nconst HEAD = 16180; /* i: waiting for magic header */\nconst FLAGS = 16181; /* i: waiting for method and flags (gzip) */\nconst TIME = 16182; /* i: waiting for modification time (gzip) */\nconst OS = 16183; /* i: waiting for extra flags and operating system (gzip) */\nconst EXLEN = 16184; /* i: waiting for extra length (gzip) */\nconst EXTRA = 16185; /* i: waiting for extra bytes (gzip) */\nconst NAME = 16186; /* i: waiting for end of file name (gzip) */\nconst COMMENT = 16187; /* i: waiting for end of comment (gzip) */\nconst HCRC = 16188; /* i: waiting for header crc (gzip) */\nconst DICTID = 16189; /* i: waiting for dictionary check value */\nconst DICT = 16190; /* waiting for inflateSetDictionary() call */\nconst TYPE = 16191; /* i: waiting for type bits, including last-flag bit */\nconst TYPEDO = 16192; /* i: same, but skip check to exit inflate on new block */\nconst STORED = 16193; /* i: waiting for stored size (length and complement) */\nconst COPY_ = 16194; /* i/o: same as COPY below, but only first time in */\nconst COPY = 16195; /* i/o: waiting for input or output to copy stored block */\nconst TABLE = 16196; /* i: waiting for dynamic block table lengths */\nconst LENLENS = 16197; /* i: waiting for code length code lengths */\nconst CODELENS = 16198; /* i: waiting for length/lit and distance code lengths */\nconst LEN_ = 16199; /* i: same as LEN below, but only first time in */\nconst LEN = 16200; /* i: waiting for length/lit/eob code */\nconst LENEXT = 16201; /* i: waiting for length extra bits */\nconst DIST = 16202; /* i: waiting for distance code */\nconst DISTEXT = 16203; /* i: waiting for distance extra bits */\nconst MATCH = 16204; /* o: waiting for output space to copy string */\nconst LIT = 16205; /* o: waiting for output space to write literal */\nconst CHECK = 16206; /* i: waiting for 32-bit check value */\nconst LENGTH = 16207; /* i: waiting for 32-bit length (gzip) */\nconst DONE = 16208; /* finished check, done -- remain here until reset */\nconst BAD = 16209; /* got a data error -- remain here until reset */\nconst MEM = 16210; /* got an inflate() memory error -- remain here until reset */\nconst SYNC = 16211; /* looking for synchronization bytes to restart inflate() */\n\n/* ===========================================================================*/\n\n\n\nconst ENOUGH_LENS = 852;\nconst ENOUGH_DISTS = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst MAX_WBITS = 15;\n/* 32K LZ77 window */\nconst DEF_WBITS = MAX_WBITS;\n\n\nconst zswap32 = (q) => {\n\n return (((q >>> 24) & 0xff) +\n ((q >>> 8) & 0xff00) +\n ((q & 0xff00) << 8) +\n ((q & 0xff) << 24));\n};\n\n\nfunction InflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.mode = 0; /* current inflate mode */\n this.last = false; /* true if processing last block */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip,\n bit 2 true to validate check value */\n this.havedict = false; /* true if dictionary provided */\n this.flags = 0; /* gzip header method and flags (0 if zlib), or\n -1 if raw or no header yet */\n this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */\n this.check = 0; /* protected copy of check value */\n this.total = 0; /* protected copy of output count */\n // TODO: may be {}\n this.head = null; /* where to save gzip header information */\n\n /* sliding window */\n this.wbits = 0; /* log base 2 of requested window size */\n this.wsize = 0; /* window size or zero if not using window */\n this.whave = 0; /* valid bytes in the window */\n this.wnext = 0; /* window write index */\n this.window = null; /* allocated sliding window, if needed */\n\n /* bit accumulator */\n this.hold = 0; /* input bit accumulator */\n this.bits = 0; /* number of bits in \"in\" */\n\n /* for string and stored block copying */\n this.length = 0; /* literal or length of data to copy */\n this.offset = 0; /* distance back to copy string from */\n\n /* for table and code decoding */\n this.extra = 0; /* extra bits needed */\n\n /* fixed and dynamic code tables */\n this.lencode = null; /* starting table for length/literal codes */\n this.distcode = null; /* starting table for distance codes */\n this.lenbits = 0; /* index bits for lencode */\n this.distbits = 0; /* index bits for distcode */\n\n /* dynamic table building */\n this.ncode = 0; /* number of code length code lengths */\n this.nlen = 0; /* number of length code lengths */\n this.ndist = 0; /* number of distance code lengths */\n this.have = 0; /* number of code lengths in lens[] */\n this.next = null; /* next available space in codes[] */\n\n this.lens = new Uint16Array(320); /* temporary storage for code lengths */\n this.work = new Uint16Array(288); /* work area for code table building */\n\n /*\n because we don't have pointers in js, we use lencode and distcode directly\n as buffers so we don't need codes\n */\n //this.codes = new Int32Array(ENOUGH); /* space for code tables */\n this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */\n this.distdyn = null; /* dynamic table for distance codes (JS specific) */\n this.sane = 0; /* if false, allow invalid distance too far */\n this.back = 0; /* bits back of last unprocessed length/lit */\n this.was = 0; /* initial length of match */\n}\n\n\nconst inflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const state = strm.state;\n if (!state || state.strm !== strm ||\n state.mode < HEAD || state.mode > SYNC) {\n return 1;\n }\n return 0;\n};\n\n\nconst inflateResetKeep = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n strm.total_in = strm.total_out = state.total = 0;\n strm.msg = ''; /*Z_NULL*/\n if (state.wrap) { /* to support ill-conceived Java test suite */\n strm.adler = state.wrap & 1;\n }\n state.mode = HEAD;\n state.last = 0;\n state.havedict = 0;\n state.flags = -1;\n state.dmax = 32768;\n state.head = null/*Z_NULL*/;\n state.hold = 0;\n state.bits = 0;\n //state.lencode = state.distcode = state.next = state.codes;\n state.lencode = state.lendyn = new Int32Array(ENOUGH_LENS);\n state.distcode = state.distdyn = new Int32Array(ENOUGH_DISTS);\n\n state.sane = 1;\n state.back = -1;\n //Tracev((stderr, \"inflate: reset\\n\"));\n return Z_OK$1;\n};\n\n\nconst inflateReset = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n state.wsize = 0;\n state.whave = 0;\n state.wnext = 0;\n return inflateResetKeep(strm);\n\n};\n\n\nconst inflateReset2 = (strm, windowBits) => {\n let wrap;\n\n /* get the state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n\n /* extract wrap request from windowBits parameter */\n if (windowBits < 0) {\n wrap = 0;\n windowBits = -windowBits;\n }\n else {\n wrap = (windowBits >> 4) + 5;\n if (windowBits < 48) {\n windowBits &= 15;\n }\n }\n\n /* set number of window bits, free window if different */\n if (windowBits && (windowBits < 8 || windowBits > 15)) {\n return Z_STREAM_ERROR$1;\n }\n if (state.window !== null && state.wbits !== windowBits) {\n state.window = null;\n }\n\n /* update state and reset the rest of it */\n state.wrap = wrap;\n state.wbits = windowBits;\n return inflateReset(strm);\n};\n\n\nconst inflateInit2 = (strm, windowBits) => {\n\n if (!strm) { return Z_STREAM_ERROR$1; }\n //strm.msg = Z_NULL; /* in case we return an error */\n\n const state = new InflateState();\n\n //if (state === Z_NULL) return Z_MEM_ERROR;\n //Tracev((stderr, \"inflate: allocated\\n\"));\n strm.state = state;\n state.strm = strm;\n state.window = null/*Z_NULL*/;\n state.mode = HEAD; /* to pass state test in inflateReset2() */\n const ret = inflateReset2(strm, windowBits);\n if (ret !== Z_OK$1) {\n strm.state = null/*Z_NULL*/;\n }\n return ret;\n};\n\n\nconst inflateInit = (strm) => {\n\n return inflateInit2(strm, DEF_WBITS);\n};\n\n\n/*\n Return state with length and distance decoding tables and index sizes set to\n fixed code decoding. Normally this returns fixed tables from inffixed.h.\n If BUILDFIXED is defined, then instead this routine builds the tables the\n first time it's called, and returns those tables the first time and\n thereafter. This reduces the size of the code by about 2K bytes, in\n exchange for a little execution time. However, BUILDFIXED should not be\n used for threaded applications, since the rewriting of the tables and virgin\n may not be thread-safe.\n */\nlet virgin = true;\n\nlet lenfix, distfix; // We have no pointers in JS, so keep tables separate\n\n\nconst fixedtables = (state) => {\n\n /* build fixed huffman tables if first call (may not be thread safe) */\n if (virgin) {\n lenfix = new Int32Array(512);\n distfix = new Int32Array(32);\n\n /* literal/length table */\n let sym = 0;\n while (sym < 144) { state.lens[sym++] = 8; }\n while (sym < 256) { state.lens[sym++] = 9; }\n while (sym < 280) { state.lens[sym++] = 7; }\n while (sym < 288) { state.lens[sym++] = 8; }\n\n inftrees(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 });\n\n /* distance table */\n sym = 0;\n while (sym < 32) { state.lens[sym++] = 5; }\n\n inftrees(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 });\n\n /* do this just once */\n virgin = false;\n }\n\n state.lencode = lenfix;\n state.lenbits = 9;\n state.distcode = distfix;\n state.distbits = 5;\n};\n\n\n/*\n Update the window with the last wsize (normally 32K) bytes written before\n returning. If window does not exist yet, create it. This is only called\n when a window is already in use, or when output has been written during this\n inflate call, but the end of the deflate stream has not been reached yet.\n It is also called to create a window for dictionary data when a dictionary\n is loaded.\n\n Providing output buffers larger than 32K to inflate() should provide a speed\n advantage, since only the last 32K of output is copied to the sliding window\n upon return from inflate(), and since all distances after the first 32K of\n output will fall in the output data, making match copies simpler and faster.\n The advantage may be dependent on the size of the processor's data caches.\n */\nconst updatewindow = (strm, src, end, copy) => {\n\n let dist;\n const state = strm.state;\n\n /* if it hasn't been done already, allocate space for the window */\n if (state.window === null) {\n state.wsize = 1 << state.wbits;\n state.wnext = 0;\n state.whave = 0;\n\n state.window = new Uint8Array(state.wsize);\n }\n\n /* copy state->wsize or less output bytes into the circular window */\n if (copy >= state.wsize) {\n state.window.set(src.subarray(end - state.wsize, end), 0);\n state.wnext = 0;\n state.whave = state.wsize;\n }\n else {\n dist = state.wsize - state.wnext;\n if (dist > copy) {\n dist = copy;\n }\n //zmemcpy(state->window + state->wnext, end - copy, dist);\n state.window.set(src.subarray(end - copy, end - copy + dist), state.wnext);\n copy -= dist;\n if (copy) {\n //zmemcpy(state->window, end - copy, copy);\n state.window.set(src.subarray(end - copy, end), 0);\n state.wnext = copy;\n state.whave = state.wsize;\n }\n else {\n state.wnext += dist;\n if (state.wnext === state.wsize) { state.wnext = 0; }\n if (state.whave < state.wsize) { state.whave += dist; }\n }\n }\n return 0;\n};\n\n\nconst inflate$2 = (strm, flush) => {\n\n let state;\n let input, output; // input/output buffers\n let next; /* next input INDEX */\n let put; /* next output INDEX */\n let have, left; /* available input and output */\n let hold; /* bit buffer */\n let bits; /* bits in bit buffer */\n let _in, _out; /* save starting available input and output */\n let copy; /* number of stored or match bytes to copy */\n let from; /* where to copy match bytes from */\n let from_source;\n let here = 0; /* current decoding table entry */\n let here_bits, here_op, here_val; // paked \"here\" denormalized (JS specific)\n //let last; /* parent table entry */\n let last_bits, last_op, last_val; // paked \"last\" denormalized (JS specific)\n let len; /* length to copy for repeats, bits to drop */\n let ret; /* return code */\n const hbuf = new Uint8Array(4); /* buffer for gzip header crc calculation */\n let opts;\n\n let n; // temporary variable for NEED_BITS\n\n const order = /* permutation of code lengths */\n new Uint8Array([ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]);\n\n\n if (inflateStateCheck(strm) || !strm.output ||\n (!strm.input && strm.avail_in !== 0)) {\n return Z_STREAM_ERROR$1;\n }\n\n state = strm.state;\n if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */\n\n\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n _in = have;\n _out = left;\n ret = Z_OK$1;\n\n inf_leave: // goto emulation\n for (;;) {\n switch (state.mode) {\n case HEAD:\n if (state.wrap === 0) {\n state.mode = TYPEDO;\n break;\n }\n //=== NEEDBITS(16);\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */\n if (state.wbits === 0) {\n state.wbits = 15;\n }\n state.check = 0/*crc32(0L, Z_NULL, 0)*/;\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = FLAGS;\n break;\n }\n if (state.head) {\n state.head.done = false;\n }\n if (!(state.wrap & 1) || /* check if zlib header allowed */\n (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) {\n strm.msg = 'incorrect header check';\n state.mode = BAD;\n break;\n }\n if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n len = (hold & 0x0f)/*BITS(4)*/ + 8;\n if (state.wbits === 0) {\n state.wbits = len;\n }\n if (len > 15 || len > state.wbits) {\n strm.msg = 'invalid window size';\n state.mode = BAD;\n break;\n }\n\n // !!! pako patch. Force use `options.windowBits` if passed.\n // Required to always use max window size by default.\n state.dmax = 1 << state.wbits;\n //state.dmax = 1 << len;\n\n state.flags = 0; /* indicate zlib header */\n //Tracev((stderr, \"inflate: zlib header ok\\n\"));\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = hold & 0x200 ? DICTID : TYPE;\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n break;\n case FLAGS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.flags = hold;\n if ((state.flags & 0xff) !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n if (state.flags & 0xe000) {\n strm.msg = 'unknown header flags set';\n state.mode = BAD;\n break;\n }\n if (state.head) {\n state.head.text = ((hold >> 8) & 1);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = TIME;\n /* falls through */\n case TIME:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.time = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC4(state.check, hold)\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n hbuf[2] = (hold >>> 16) & 0xff;\n hbuf[3] = (hold >>> 24) & 0xff;\n state.check = crc32_1(state.check, hbuf, 4, 0);\n //===\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = OS;\n /* falls through */\n case OS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.xflags = (hold & 0xff);\n state.head.os = (hold >> 8);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = EXLEN;\n /* falls through */\n case EXLEN:\n if (state.flags & 0x0400) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length = hold;\n if (state.head) {\n state.head.extra_len = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32_1(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n else if (state.head) {\n state.head.extra = null/*Z_NULL*/;\n }\n state.mode = EXTRA;\n /* falls through */\n case EXTRA:\n if (state.flags & 0x0400) {\n copy = state.length;\n if (copy > have) { copy = have; }\n if (copy) {\n if (state.head) {\n len = state.head.extra_len - state.length;\n if (!state.head.extra) {\n // Use untyped array for more convenient processing later\n state.head.extra = new Uint8Array(state.head.extra_len);\n }\n state.head.extra.set(\n input.subarray(\n next,\n // extra field is limited to 65536 bytes\n // - no need for additional size check\n next + copy\n ),\n /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/\n len\n );\n //zmemcpy(state.head.extra + len, next,\n // len + copy > state.head.extra_max ?\n // state.head.extra_max - len : copy);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n state.length -= copy;\n }\n if (state.length) { break inf_leave; }\n }\n state.length = 0;\n state.mode = NAME;\n /* falls through */\n case NAME:\n if (state.flags & 0x0800) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n // TODO: 2 or 1 bytes?\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.name_max*/)) {\n state.head.name += String.fromCharCode(len);\n }\n } while (len && copy < have);\n\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.name = null;\n }\n state.length = 0;\n state.mode = COMMENT;\n /* falls through */\n case COMMENT:\n if (state.flags & 0x1000) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.comm_max*/)) {\n state.head.comment += String.fromCharCode(len);\n }\n } while (len && copy < have);\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32_1(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.comment = null;\n }\n state.mode = HCRC;\n /* falls through */\n case HCRC:\n if (state.flags & 0x0200) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.check & 0xffff)) {\n strm.msg = 'header crc mismatch';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n if (state.head) {\n state.head.hcrc = ((state.flags >> 9) & 1);\n state.head.done = true;\n }\n strm.adler = state.check = 0;\n state.mode = TYPE;\n break;\n case DICTID:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n strm.adler = state.check = zswap32(hold);\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = DICT;\n /* falls through */\n case DICT:\n if (state.havedict === 0) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n return Z_NEED_DICT$1;\n }\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = TYPE;\n /* falls through */\n case TYPE:\n if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case TYPEDO:\n if (state.last) {\n //--- BYTEBITS() ---//\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n state.mode = CHECK;\n break;\n }\n //=== NEEDBITS(3); */\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.last = (hold & 0x01)/*BITS(1)*/;\n //--- DROPBITS(1) ---//\n hold >>>= 1;\n bits -= 1;\n //---//\n\n switch ((hold & 0x03)/*BITS(2)*/) {\n case 0: /* stored block */\n //Tracev((stderr, \"inflate: stored block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = STORED;\n break;\n case 1: /* fixed block */\n fixedtables(state);\n //Tracev((stderr, \"inflate: fixed codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = LEN_; /* decode codes */\n if (flush === Z_TREES) {\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break inf_leave;\n }\n break;\n case 2: /* dynamic block */\n //Tracev((stderr, \"inflate: dynamic codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = TABLE;\n break;\n case 3:\n strm.msg = 'invalid block type';\n state.mode = BAD;\n }\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break;\n case STORED:\n //--- BYTEBITS() ---// /* go to byte boundary */\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) {\n strm.msg = 'invalid stored block lengths';\n state.mode = BAD;\n break;\n }\n state.length = hold & 0xffff;\n //Tracev((stderr, \"inflate: stored length %u\\n\",\n // state.length));\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = COPY_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case COPY_:\n state.mode = COPY;\n /* falls through */\n case COPY:\n copy = state.length;\n if (copy) {\n if (copy > have) { copy = have; }\n if (copy > left) { copy = left; }\n if (copy === 0) { break inf_leave; }\n //--- zmemcpy(put, next, copy); ---\n output.set(input.subarray(next, next + copy), put);\n //---//\n have -= copy;\n next += copy;\n left -= copy;\n put += copy;\n state.length -= copy;\n break;\n }\n //Tracev((stderr, \"inflate: stored end\\n\"));\n state.mode = TYPE;\n break;\n case TABLE:\n //=== NEEDBITS(14); */\n while (bits < 14) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4;\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n//#ifndef PKZIP_BUG_WORKAROUND\n if (state.nlen > 286 || state.ndist > 30) {\n strm.msg = 'too many length or distance symbols';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracev((stderr, \"inflate: table sizes ok\\n\"));\n state.have = 0;\n state.mode = LENLENS;\n /* falls through */\n case LENLENS:\n while (state.have < state.ncode) {\n //=== NEEDBITS(3);\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.lens[order[state.have++]] = (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n while (state.have < 19) {\n state.lens[order[state.have++]] = 0;\n }\n // We have separate tables & no pointers. 2 commented lines below not needed.\n //state.next = state.codes;\n //state.lencode = state.next;\n // Switch to use dynamic table\n state.lencode = state.lendyn;\n state.lenbits = 7;\n\n opts = { bits: state.lenbits };\n ret = inftrees(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);\n state.lenbits = opts.bits;\n\n if (ret) {\n strm.msg = 'invalid code lengths set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, \"inflate: code lengths ok\\n\"));\n state.have = 0;\n state.mode = CODELENS;\n /* falls through */\n case CODELENS:\n while (state.have < state.nlen + state.ndist) {\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_val < 16) {\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.lens[state.have++] = here_val;\n }\n else {\n if (here_val === 16) {\n //=== NEEDBITS(here.bits + 2);\n n = here_bits + 2;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n if (state.have === 0) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n len = state.lens[state.have - 1];\n copy = 3 + (hold & 0x03);//BITS(2);\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n }\n else if (here_val === 17) {\n //=== NEEDBITS(here.bits + 3);\n n = here_bits + 3;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 3 + (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n else {\n //=== NEEDBITS(here.bits + 7);\n n = here_bits + 7;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 11 + (hold & 0x7f);//BITS(7);\n //--- DROPBITS(7) ---//\n hold >>>= 7;\n bits -= 7;\n //---//\n }\n if (state.have + copy > state.nlen + state.ndist) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n while (copy--) {\n state.lens[state.have++] = len;\n }\n }\n }\n\n /* handle error breaks in while */\n if (state.mode === BAD) { break; }\n\n /* check for end-of-block code (better have one) */\n if (state.lens[256] === 0) {\n strm.msg = 'invalid code -- missing end-of-block';\n state.mode = BAD;\n break;\n }\n\n /* build code tables -- note: do not change the lenbits or distbits\n values here (9 and 6) without reading the comments in inftrees.h\n concerning the ENOUGH constants, which depend on those values */\n state.lenbits = 9;\n\n opts = { bits: state.lenbits };\n ret = inftrees(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.lenbits = opts.bits;\n // state.lencode = state.next;\n\n if (ret) {\n strm.msg = 'invalid literal/lengths set';\n state.mode = BAD;\n break;\n }\n\n state.distbits = 6;\n //state.distcode.copy(state.codes);\n // Switch to use dynamic table\n state.distcode = state.distdyn;\n opts = { bits: state.distbits };\n ret = inftrees(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.distbits = opts.bits;\n // state.distcode = state.next;\n\n if (ret) {\n strm.msg = 'invalid distances set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, 'inflate: codes ok\\n'));\n state.mode = LEN_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case LEN_:\n state.mode = LEN;\n /* falls through */\n case LEN:\n if (have >= 6 && left >= 258) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n inffast(strm, _out);\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n if (state.mode === TYPE) {\n state.back = -1;\n }\n break;\n }\n state.back = 0;\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if (here_bits <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_op && (here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.lencode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n state.length = here_val;\n if (here_op === 0) {\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n state.mode = LIT;\n break;\n }\n if (here_op & 32) {\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.back = -1;\n state.mode = TYPE;\n break;\n }\n if (here_op & 64) {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break;\n }\n state.extra = here_op & 15;\n state.mode = LENEXT;\n /* falls through */\n case LENEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", state.length));\n state.was = state.length;\n state.mode = DIST;\n /* falls through */\n case DIST:\n for (;;) {\n here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if ((here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.distcode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n if (here_op & 64) {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break;\n }\n state.offset = here_val;\n state.extra = (here_op) & 15;\n state.mode = DISTEXT;\n /* falls through */\n case DISTEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n//#ifdef INFLATE_STRICT\n if (state.offset > state.dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracevv((stderr, \"inflate: distance %u\\n\", state.offset));\n state.mode = MATCH;\n /* falls through */\n case MATCH:\n if (left === 0) { break inf_leave; }\n copy = _out - left;\n if (state.offset > copy) { /* copy from window */\n copy = state.offset - copy;\n if (copy > state.whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// Trace((stderr, \"inflate.c too far\\n\"));\n// copy -= state.whave;\n// if (copy > state.length) { copy = state.length; }\n// if (copy > left) { copy = left; }\n// left -= copy;\n// state.length -= copy;\n// do {\n// output[put++] = 0;\n// } while (--copy);\n// if (state.length === 0) { state.mode = LEN; }\n// break;\n//#endif\n }\n if (copy > state.wnext) {\n copy -= state.wnext;\n from = state.wsize - copy;\n }\n else {\n from = state.wnext - copy;\n }\n if (copy > state.length) { copy = state.length; }\n from_source = state.window;\n }\n else { /* copy from output */\n from_source = output;\n from = put - state.offset;\n copy = state.length;\n }\n if (copy > left) { copy = left; }\n left -= copy;\n state.length -= copy;\n do {\n output[put++] = from_source[from++];\n } while (--copy);\n if (state.length === 0) { state.mode = LEN; }\n break;\n case LIT:\n if (left === 0) { break inf_leave; }\n output[put++] = state.length;\n left--;\n state.mode = LEN;\n break;\n case CHECK:\n if (state.wrap) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n // Use '|' instead of '+' to make sure that result is signed\n hold |= input[next++] << bits;\n bits += 8;\n }\n //===//\n _out -= left;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check =\n /*UPDATE_CHECK(state.check, put - _out, _out);*/\n (state.flags ? crc32_1(state.check, output, _out, put - _out) : adler32_1(state.check, output, _out, put - _out));\n\n }\n _out = left;\n // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too\n if ((state.wrap & 4) && (state.flags ? hold : zswap32(hold)) !== state.check) {\n strm.msg = 'incorrect data check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: check matches trailer\\n\"));\n }\n state.mode = LENGTH;\n /* falls through */\n case LENGTH:\n if (state.wrap && state.flags) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.total & 0xffffffff)) {\n strm.msg = 'incorrect length check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: length matches trailer\\n\"));\n }\n state.mode = DONE;\n /* falls through */\n case DONE:\n ret = Z_STREAM_END$1;\n break inf_leave;\n case BAD:\n ret = Z_DATA_ERROR$1;\n break inf_leave;\n case MEM:\n return Z_MEM_ERROR$1;\n case SYNC:\n /* falls through */\n default:\n return Z_STREAM_ERROR$1;\n }\n }\n\n // inf_leave <- here is real place for \"goto inf_leave\", emulated via \"break inf_leave\"\n\n /*\n Return from inflate(), updating the total counts and the check value.\n If there was no progress during the inflate() call, return a buffer\n error. Call updatewindow() to create and/or update the window state.\n Note: a memory error from inflate() is non-recoverable.\n */\n\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n\n if (state.wsize || (_out !== strm.avail_out && state.mode < BAD &&\n (state.mode < CHECK || flush !== Z_FINISH$1))) {\n if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) ;\n }\n _in -= strm.avail_in;\n _out -= strm.avail_out;\n strm.total_in += _in;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check = /*UPDATE_CHECK(state.check, strm.next_out - _out, _out);*/\n (state.flags ? crc32_1(state.check, output, _out, strm.next_out - _out) : adler32_1(state.check, output, _out, strm.next_out - _out));\n }\n strm.data_type = state.bits + (state.last ? 64 : 0) +\n (state.mode === TYPE ? 128 : 0) +\n (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);\n if (((_in === 0 && _out === 0) || flush === Z_FINISH$1) && ret === Z_OK$1) {\n ret = Z_BUF_ERROR;\n }\n return ret;\n};\n\n\nconst inflateEnd = (strm) => {\n\n if (inflateStateCheck(strm)) {\n return Z_STREAM_ERROR$1;\n }\n\n let state = strm.state;\n if (state.window) {\n state.window = null;\n }\n strm.state = null;\n return Z_OK$1;\n};\n\n\nconst inflateGetHeader = (strm, head) => {\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n const state = strm.state;\n if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR$1; }\n\n /* save header structure */\n state.head = head;\n head.done = false;\n return Z_OK$1;\n};\n\n\nconst inflateSetDictionary = (strm, dictionary) => {\n const dictLength = dictionary.length;\n\n let state;\n let dictid;\n let ret;\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR$1; }\n state = strm.state;\n\n if (state.wrap !== 0 && state.mode !== DICT) {\n return Z_STREAM_ERROR$1;\n }\n\n /* check for correct dictionary identifier */\n if (state.mode === DICT) {\n dictid = 1; /* adler32(0, null, 0)*/\n /* dictid = adler32(dictid, dictionary, dictLength); */\n dictid = adler32_1(dictid, dictionary, dictLength, 0);\n if (dictid !== state.check) {\n return Z_DATA_ERROR$1;\n }\n }\n /* copy dictionary to window using updatewindow(), which will amend the\n existing dictionary if appropriate */\n ret = updatewindow(strm, dictionary, dictLength, dictLength);\n if (ret) {\n state.mode = MEM;\n return Z_MEM_ERROR$1;\n }\n state.havedict = 1;\n // Tracev((stderr, \"inflate: dictionary set\\n\"));\n return Z_OK$1;\n};\n\n\nvar inflateReset_1 = inflateReset;\nvar inflateReset2_1 = inflateReset2;\nvar inflateResetKeep_1 = inflateResetKeep;\nvar inflateInit_1 = inflateInit;\nvar inflateInit2_1 = inflateInit2;\nvar inflate_2$1 = inflate$2;\nvar inflateEnd_1 = inflateEnd;\nvar inflateGetHeader_1 = inflateGetHeader;\nvar inflateSetDictionary_1 = inflateSetDictionary;\nvar inflateInfo = 'pako inflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.inflateCodesUsed = inflateCodesUsed;\nmodule.exports.inflateCopy = inflateCopy;\nmodule.exports.inflateGetDictionary = inflateGetDictionary;\nmodule.exports.inflateMark = inflateMark;\nmodule.exports.inflatePrime = inflatePrime;\nmodule.exports.inflateSync = inflateSync;\nmodule.exports.inflateSyncPoint = inflateSyncPoint;\nmodule.exports.inflateUndermine = inflateUndermine;\nmodule.exports.inflateValidate = inflateValidate;\n*/\n\nvar inflate_1$2 = {\n\tinflateReset: inflateReset_1,\n\tinflateReset2: inflateReset2_1,\n\tinflateResetKeep: inflateResetKeep_1,\n\tinflateInit: inflateInit_1,\n\tinflateInit2: inflateInit2_1,\n\tinflate: inflate_2$1,\n\tinflateEnd: inflateEnd_1,\n\tinflateGetHeader: inflateGetHeader_1,\n\tinflateSetDictionary: inflateSetDictionary_1,\n\tinflateInfo: inflateInfo\n};\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction GZheader() {\n /* true if compressed data believed to be text */\n this.text = 0;\n /* modification time */\n this.time = 0;\n /* extra flags (not used when writing a gzip file) */\n this.xflags = 0;\n /* operating system */\n this.os = 0;\n /* pointer to extra field or Z_NULL if none */\n this.extra = null;\n /* extra field length (valid if extra != Z_NULL) */\n this.extra_len = 0; // Actually, we don't need it in JS,\n // but leave for few code modifications\n\n //\n // Setup limits is not necessary because in js we should not preallocate memory\n // for inflate use constant limit in 65536 bytes\n //\n\n /* space at extra (only when reading header) */\n // this.extra_max = 0;\n /* pointer to zero-terminated file name or Z_NULL */\n this.name = '';\n /* space at name (only when reading header) */\n // this.name_max = 0;\n /* pointer to zero-terminated comment or Z_NULL */\n this.comment = '';\n /* space at comment (only when reading header) */\n // this.comm_max = 0;\n /* true if there was or will be a header crc */\n this.hcrc = 0;\n /* true when done reading gzip header (not used when writing a gzip file) */\n this.done = false;\n}\n\nvar gzheader = GZheader;\n\nconst toString = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH, Z_FINISH,\n Z_OK, Z_STREAM_END, Z_NEED_DICT, Z_STREAM_ERROR, Z_DATA_ERROR, Z_MEM_ERROR\n} = constants$2;\n\n/* ===========================================================================*/\n\n\n/**\n * class Inflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[inflate]]\n * and [[inflateRaw]].\n **/\n\n/* internal\n * inflate.chunks -> Array\n *\n * Chunks of output data, if [[Inflate#onData]] not overridden.\n **/\n\n/**\n * Inflate.result -> Uint8Array|String\n *\n * Uncompressed result, generated by default [[Inflate#onData]]\n * and [[Inflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Inflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Inflate.err -> Number\n *\n * Error code after inflate finished. 0 (Z_OK) on success.\n * Should be checked if broken data possible.\n **/\n\n/**\n * Inflate.msg -> String\n *\n * Error message, if [[Inflate.err]] != 0\n **/\n\n\n/**\n * new Inflate(options)\n * - options (Object): zlib inflate options.\n *\n * Creates new inflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `windowBits`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw inflate\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n * By default, when no options set, autodetect deflate/gzip data format via\n * wrapper header.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * const chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const inflate = new pako.Inflate({ level: 3});\n *\n * inflate.push(chunk1, false);\n * inflate.push(chunk2, true); // true -> last chunk\n *\n * if (inflate.err) { throw new Error(inflate.err); }\n *\n * console.log(inflate.result);\n * ```\n **/\nfunction Inflate$1(options) {\n this.options = common.assign({\n chunkSize: 1024 * 64,\n windowBits: 15,\n to: ''\n }, options || {});\n\n const opt = this.options;\n\n // Force window size for `raw` data, if not set directly,\n // because we have no header for autodetect.\n if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {\n opt.windowBits = -opt.windowBits;\n if (opt.windowBits === 0) { opt.windowBits = -15; }\n }\n\n // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate\n if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&\n !(options && options.windowBits)) {\n opt.windowBits += 32;\n }\n\n // Gzip header has no info about windows size, we can do autodetect only\n // for deflate. So, if window size not set, force it to max when gzip possible\n if ((opt.windowBits > 15) && (opt.windowBits < 48)) {\n // bit 3 (16) -> gzipped data\n // bit 4 (32) -> autodetect gzip/deflate\n if ((opt.windowBits & 15) === 0) {\n opt.windowBits |= 15;\n }\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new zstream();\n this.strm.avail_out = 0;\n\n let status = inflate_1$2.inflateInit2(\n this.strm,\n opt.windowBits\n );\n\n if (status !== Z_OK) {\n throw new Error(messages[status]);\n }\n\n this.header = new gzheader();\n\n inflate_1$2.inflateGetHeader(this.strm, this.header);\n\n // Setup dictionary\n if (opt.dictionary) {\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n opt.dictionary = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n opt.dictionary = new Uint8Array(opt.dictionary);\n }\n if (opt.raw) { //In raw mode we need to set the dictionary early\n status = inflate_1$2.inflateSetDictionary(this.strm, opt.dictionary);\n if (status !== Z_OK) {\n throw new Error(messages[status]);\n }\n }\n }\n}\n\n/**\n * Inflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer): input data\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE\n * flush modes. See constants. Skipped or `false` means Z_NO_FLUSH,\n * `true` means Z_FINISH.\n *\n * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with\n * new output chunks. Returns `true` on success. If end of stream detected,\n * [[Inflate#onEnd]] will be called.\n *\n * `flush_mode` is not needed for normal operation, because end of stream\n * detected automatically. You may try to use it for advanced things, but\n * this functionality was not tested.\n *\n * On fail call [[Inflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nInflate$1.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n const dictionary = this.options.dictionary;\n let status, _flush_mode, last_avail_out;\n\n if (this.ended) return false;\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;\n\n // Convert data if needed\n if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n status = inflate_1$2.inflate(strm, _flush_mode);\n\n if (status === Z_NEED_DICT && dictionary) {\n status = inflate_1$2.inflateSetDictionary(strm, dictionary);\n\n if (status === Z_OK) {\n status = inflate_1$2.inflate(strm, _flush_mode);\n } else if (status === Z_DATA_ERROR) {\n // Replace code with more verbose\n status = Z_NEED_DICT;\n }\n }\n\n // Skip snyc markers if more data follows and not raw mode\n while (strm.avail_in > 0 &&\n status === Z_STREAM_END &&\n strm.state.wrap > 0 &&\n data[strm.next_in] !== 0)\n {\n inflate_1$2.inflateReset(strm);\n status = inflate_1$2.inflate(strm, _flush_mode);\n }\n\n switch (status) {\n case Z_STREAM_ERROR:\n case Z_DATA_ERROR:\n case Z_NEED_DICT:\n case Z_MEM_ERROR:\n this.onEnd(status);\n this.ended = true;\n return false;\n }\n\n // Remember real `avail_out` value, because we may patch out buffer content\n // to align utf8 strings boundaries.\n last_avail_out = strm.avail_out;\n\n if (strm.next_out) {\n if (strm.avail_out === 0 || status === Z_STREAM_END) {\n\n if (this.options.to === 'string') {\n\n let next_out_utf8 = strings.utf8border(strm.output, strm.next_out);\n\n let tail = strm.next_out - next_out_utf8;\n let utf8str = strings.buf2string(strm.output, next_out_utf8);\n\n // move tail & realign counters\n strm.next_out = tail;\n strm.avail_out = chunkSize - tail;\n if (tail) strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);\n\n this.onData(utf8str);\n\n } else {\n this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));\n }\n }\n }\n\n // Must repeat iteration if out buffer is full\n if (status === Z_OK && last_avail_out === 0) continue;\n\n // Finalize if end of stream reached.\n if (status === Z_STREAM_END) {\n status = inflate_1$2.inflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return true;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Inflate#onData(chunk) -> Void\n * - chunk (Uint8Array|String): output data. When string output requested,\n * each chunk will be string.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nInflate$1.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Inflate#onEnd(status) -> Void\n * - status (Number): inflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called either after you tell inflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nInflate$1.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK) {\n if (this.options.to === 'string') {\n this.result = this.chunks.join('');\n } else {\n this.result = common.flattenChunks(this.chunks);\n }\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * inflate(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Decompress `data` with inflate/ungzip and `options`. Autodetect\n * format via wrapper header by default. That's why we don't provide\n * separate `ungzip` method.\n *\n * Supported options are:\n *\n * - windowBits\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako');\n * const input = pako.deflate(new Uint8Array([1,2,3,4,5,6,7,8,9]));\n * let output;\n *\n * try {\n * output = pako.inflate(input);\n * } catch (err) {\n * console.log(err);\n * }\n * ```\n **/\nfunction inflate$1(input, options) {\n const inflator = new Inflate$1(options);\n\n inflator.push(input);\n\n // That will never happens, if you don't cheat with options :)\n if (inflator.err) throw inflator.msg || messages[inflator.err];\n\n return inflator.result;\n}\n\n\n/**\n * inflateRaw(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * The same as [[inflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction inflateRaw$1(input, options) {\n options = options || {};\n options.raw = true;\n return inflate$1(input, options);\n}\n\n\n/**\n * ungzip(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Just shortcut to [[inflate]], because it autodetects format\n * by header.content. Done for convenience.\n **/\n\n\nvar Inflate_1$1 = Inflate$1;\nvar inflate_2 = inflate$1;\nvar inflateRaw_1$1 = inflateRaw$1;\nvar ungzip$1 = inflate$1;\nvar constants = constants$2;\n\nvar inflate_1$1 = {\n\tInflate: Inflate_1$1,\n\tinflate: inflate_2,\n\tinflateRaw: inflateRaw_1$1,\n\tungzip: ungzip$1,\n\tconstants: constants\n};\n\nconst { Deflate, deflate, deflateRaw, gzip } = deflate_1$1;\n\nconst { Inflate, inflate, inflateRaw, ungzip } = inflate_1$1;\n\n\n\nvar Deflate_1 = Deflate;\nvar deflate_1 = deflate;\nvar deflateRaw_1 = deflateRaw;\nvar gzip_1 = gzip;\nvar Inflate_1 = Inflate;\nvar inflate_1 = inflate;\nvar inflateRaw_1 = inflateRaw;\nvar ungzip_1 = ungzip;\nvar constants_1 = constants$2;\n\nvar pako = {\n\tDeflate: Deflate_1,\n\tdeflate: deflate_1,\n\tdeflateRaw: deflateRaw_1,\n\tgzip: gzip_1,\n\tInflate: Inflate_1,\n\tinflate: inflate_1,\n\tinflateRaw: inflateRaw_1,\n\tungzip: ungzip_1,\n\tconstants: constants_1\n};\n\nexport { Deflate_1 as Deflate, Inflate_1 as Inflate, constants_1 as constants, pako as default, deflate_1 as deflate, deflateRaw_1 as deflateRaw, gzip_1 as gzip, inflate_1 as inflate, inflateRaw_1 as inflateRaw, ungzip_1 as ungzip };\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function inflateDTX(dtxDataDeflated: DTXDataDeflated): DTXData_v1 {\n\n function inflate(array:any, options?: any):any {\n return (array.length === 0) ? [] : (pako.inflate(array, options)).buffer;\n }\n\n return {\n positions: new Uint16Array(inflate(dtxDataDeflated.positions)),\n colors: new Uint8Array(inflate(dtxDataDeflated.colors)),\n indices: new Uint32Array(inflate(dtxDataDeflated.indices)),\n edgeIndices: new Uint32Array(inflate(dtxDataDeflated.edgeIndices)),\n aabbs: new Float32Array(inflate(dtxDataDeflated.aabbs)),\n eachGeometryPositionsBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryPositionsBase)),\n eachGeometryColorsBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryColorsBase)),\n eachGeometryIndicesBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryIndicesBase)),\n eachGeometryEdgeIndicesBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryEdgeIndicesBase)),\n eachGeometryPrimitiveType: new Uint8Array(inflate(dtxDataDeflated.eachGeometryPrimitiveType)),\n eachGeometryAABBBase: new Uint32Array(inflate(dtxDataDeflated.eachGeometryAABBBase)),\n matrices: new Float64Array(inflate(dtxDataDeflated.matrices)),\n eachMeshGeometriesBase: new Uint32Array(inflate(dtxDataDeflated.eachMeshGeometriesBase)),\n eachMeshMatricesBase: new Uint32Array(inflate(dtxDataDeflated.eachMeshMatricesBase)),\n eachMeshMaterialAttributes: new Uint8Array(inflate(dtxDataDeflated.eachMeshMaterialAttributes)),\n eachObjectId: JSON.parse(pako.inflate(dtxDataDeflated.eachObjectId, {to: 'string'})),\n eachObjectMeshesBase: new Uint32Array(inflate(dtxDataDeflated.eachObjectMeshesBase))\n };\n}\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\n\n/**\n * @private\n */\nexport function unpackDTX(arrayBuffer: ArrayBuffer): DTXDataDeflated {\n\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const dtxVersion = dataView.getUint32(0, true);\n const numElements = dataView.getUint32(4, true);\n\n const elements = [];\n let byteOffset = (numElements + 2) * 4;\n for (let i = 0; i < numElements; i++) {\n const elementSize = dataView.getUint32((i + 2) * 4, true);\n elements.push(dataArray.subarray(byteOffset, byteOffset + elementSize));\n byteOffset += elementSize;\n }\n\n let i = 0;\n\n return {\n positions: elements[i++],\n colors: elements[i++],\n indices: elements[i++],\n edgeIndices: elements[i++],\n aabbs: elements[i++],\n eachGeometryPositionsBase: elements[i++],\n eachGeometryColorsBase: elements[i++],\n eachGeometryIndicesBase: elements[i++],\n eachGeometryEdgeIndicesBase: elements[i++],\n eachGeometryPrimitiveType: elements[i++],\n eachGeometryAABBBase: elements[i++],\n matrices: elements[i++],\n eachMeshGeometriesBase: elements[i++],\n eachMeshMatricesBase: elements[i++],\n eachMeshMaterialAttributes: elements[i++],\n eachObjectId: elements[i++],\n eachObjectMeshesBase: elements[i++]\n };\n}\n", "import {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport type {SceneGeometryCompressedParams, SceneModel} from \"@xeokit/scene\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * @private\n */\nexport function dtxToModel(params: {\n dtxData: DTXData_v1,\n sceneModel: SceneModel\n}): void {\n\n const dtxData = params.dtxData;\n const sceneModel = params.sceneModel;\n\n const numGeometries = dtxData.eachGeometryPositionsBase.length;\n const numMeshes = dtxData.eachMeshGeometriesBase.length;\n const numObjects = dtxData.eachObjectMeshesBase.length;\n\n let nextMeshId = 0;\n\n const geometryCreated: { [key: string]: boolean } = {};\n\n for (let objectIdx = 0; objectIdx < numObjects; objectIdx++) {\n const objectId = dtxData.eachObjectId[objectIdx];\n const lastObjectIdx = (numObjects - 1);\n const atLastObject = (objectIdx === lastObjectIdx);\n const firstMeshIdx = dtxData.eachObjectMeshesBase [objectIdx];\n const lastMeshIdx = atLastObject ? (numMeshes - 1) : (dtxData.eachObjectMeshesBase[objectIdx + 1] - 1);\n const meshIds = [];\n for (let meshIdx = firstMeshIdx; meshIdx <= lastMeshIdx; meshIdx++) {\n const geometryIdx = dtxData.eachMeshGeometriesBase[meshIdx];\n const meshId = `${nextMeshId++}`;\n const color = decompressColor(dtxData.eachMeshMaterialAttributes.subarray((meshIdx * 4), (meshIdx * 4) + 3));\n const opacity = dtxData.eachMeshMaterialAttributes[(meshIdx * 4) + 3] / 255.0;\n const matricesBase = dtxData.eachMeshMatricesBase[meshIdx];\n const matrix = dtxData.matrices.slice(matricesBase, matricesBase + 16);\n const geometryId = `${geometryIdx}`;\n if (!geometryCreated[geometryId]) {\n const geometryCompressedParams = {\n id: geometryId\n };\n const primitiveType = dtxData.eachGeometryPrimitiveType[geometryIdx];\n switch (primitiveType) {\n case 0:\n geometryCompressedParams.primitive = TrianglesPrimitive;\n break;\n case 1:\n geometryCompressedParams.primitive = SolidPrimitive;\n break;\n case 2:\n geometryCompressedParams.primitive = SurfacePrimitive;\n break;\n case 3:\n geometryCompressedParams.primitive = LinesPrimitive;\n break;\n case 5:\n geometryCompressedParams.primitive = PointsPrimitive;\n break;\n }\n const aabbsBase = dtxData.eachGeometryAABBBase[geometryIdx];\n geometryCompressedParams.aabb = dtxData.aabbs.slice(aabbsBase, aabbsBase + 6);\n let geometryValid = false;\n const atLastGeometry = (geometryIdx === (numGeometries - 1));\n switch (geometryCompressedParams.primitive) {\n case TrianglesPrimitive:\n case SurfacePrimitive:\n case SolidPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryCompressedParams.indices = dtxData.indices.subarray(dtxData.eachGeometryIndicesBase [geometryIdx], atLastGeometry ? dtxData.indices.length : dtxData.eachGeometryIndicesBase [geometryIdx + 1]);\n geometryCompressedParams.edgeIndices = dtxData.edgeIndices.subarray(dtxData.eachGeometryEdgeIndicesBase [geometryIdx], atLastGeometry ? dtxData.edgeIndices.length : dtxData.eachGeometryEdgeIndicesBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0 && geometryCompressedParams.indices.length > 0);\n break;\n case PointsPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0);\n break;\n case LinesPrimitive:\n geometryCompressedParams.positionsCompressed = dtxData.positions.subarray(dtxData.eachGeometryPositionsBase [geometryIdx], atLastGeometry ? dtxData.positions.length : dtxData.eachGeometryPositionsBase [geometryIdx + 1]);\n geometryCompressedParams.indices = dtxData.indices.subarray(dtxData.eachGeometryIndicesBase [geometryIdx], atLastGeometry ? dtxData.indices.length : dtxData.eachGeometryIndicesBase [geometryIdx + 1]);\n geometryValid = (geometryCompressedParams.positionsCompressed.length > 0 && geometryCompressedParams.indices.length > 0);\n break;\n default:\n continue;\n }\n if (geometryValid) {\n sceneModel.createGeometryCompressed(geometryCompressedParams);\n geometryCreated[geometryId] = true;\n }\n }\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n matrix,\n color,\n opacity\n });\n meshIds.push(meshId);\n }\n if (meshIds.length > 0) {\n sceneModel.createObject({\n id: objectId,\n meshIds\n });\n }\n }\n}\n\nconst decompressColor = (function () {\n const floatColor = new Float32Array(3);\n return function (intColor: FloatArrayParam) {\n floatColor[0] = intColor[0] / 255;\n floatColor[1] = intColor[1] / 255;\n floatColor[2] = intColor[2] / 255;\n return floatColor;\n };\n})();\n\n", "import {inflateDTX} from \"./inflateDTX\";\nimport {unpackDTX} from \"./unpackDTX\";\nimport {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {dtxToModel} from \"./dtxToModel\";\n\n/**\n * @private\n */\nexport function readDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n dtxToModel({\n dtxData: inflateDTX(unpackDTX(fileData)),\n sceneModel\n });\n return Promise.resolve();\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {readDTX} from \"./versions/v1/readDTX\"\n\nconst parsers = {\n 1: readDTX\n};\n\n/**\n * Imports [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data from an ArrayBuffer\n * into a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and\n * {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data\n * @param params.sceneModel - SceneModel to load into.\n * @returns {Promise} Resolves when [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n */\nexport function loadDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n return readDTX(params);\n}\n\n\n/*\nexport function loadDTX(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n const arrayBuffer = params.fileData;\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const dtxVersion = dataView.getUint32(0, true);\n const parser = parsers[dtxVersion];\n if (!parser) {\n return Promise.reject(new SDKError(`Unsupported DTX file version: ${dtxVersion} - supports versions are [${Object.keys(parsers)}]`));\n }\n return readDTX({\n sceneModel\n });\n}\n */\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function deflateDTX(dtxData: DTXData_v1, options: { deflateLevel: 0 | 1 | -1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 }): DTXDataDeflated {\n const pakoOptions: pako.DeflateFunctionOptions = {/*level: options.deflateLevel*/};\n return {\n positions: pako.deflate(dtxData.positions.buffer, pakoOptions),\n colors: pako.deflate(dtxData.colors.buffer, pakoOptions),\n indices: pako.deflate(dtxData.indices.buffer, pakoOptions),\n edgeIndices: pako.deflate(dtxData.edgeIndices.buffer, pakoOptions),\n aabbs: pako.deflate(dtxData.aabbs.buffer, pakoOptions),\n eachGeometryPositionsBase: pako.deflate(dtxData.eachGeometryPositionsBase.buffer, pakoOptions),\n eachGeometryColorsBase: pako.deflate(dtxData.eachGeometryColorsBase.buffer, pakoOptions),\n eachGeometryIndicesBase: pako.deflate(dtxData.eachGeometryIndicesBase.buffer, pakoOptions),\n eachGeometryEdgeIndicesBase: pako.deflate(dtxData.eachGeometryEdgeIndicesBase.buffer, pakoOptions),\n eachGeometryPrimitiveType: pako.deflate(dtxData.eachGeometryPrimitiveType.buffer, pakoOptions),\n eachGeometryAABBBase: pako.deflate(dtxData.eachGeometryAABBBase.buffer, pakoOptions),\n matrices: pako.deflate(dtxData.matrices.buffer, pakoOptions),\n eachMeshGeometriesBase: pako.deflate(dtxData.eachMeshGeometriesBase.buffer, pakoOptions),\n eachMeshMatricesBase: pako.deflate(dtxData.eachMeshMatricesBase.buffer, pakoOptions),\n eachMeshMaterialAttributes: pako.deflate(dtxData.eachMeshMaterialAttributes.buffer, pakoOptions),\n eachObjectId: pako.deflate(JSON.stringify(dtxData.eachObjectId)\n .replace(/[\\u007F-\\uFFFF]/g, function (chr) { // Produce only ASCII-chars, so that the data can be inflated later\n return \"\\\\u\" + (\"0000\" + chr.charCodeAt(0).toString(16)).substr(-4)\n }), pakoOptions),\n eachObjectMeshesBase: pako.deflate(dtxData.eachObjectMeshesBase.buffer, pakoOptions)\n };\n}\n", "/**\n * Provides info on the [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) generated by {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n */\nexport const DTX_INFO = {\n\n /**\n * The [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) version generated by {@link @xeokit/dtx!saveDTX | saveDTX}.\n *\n * @property dtxVersion\n * @type {number}\n */\n dtxVersion: 1\n};\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport {DTX_INFO} from \"./DTX_INFO\";\nimport type {DTXData_v1} from \"./DTXData_v1\";\nimport {isIdentityMat4} from \"@xeokit/matrix\";\n\nconst DTX_VERSION = DTX_INFO.dtxVersion;\nconst NUM_MATERIAL_ATTRIBUTES = 4;\n\n/**\n * @private\n */\nexport function modelToDTX(params: {\n sceneModel: SceneModel\n}): DTXData_v1 {\n\n const sceneModel = params.sceneModel;\n\n const geometriesList = Object.values(sceneModel.geometries);\n const meshesList = Object.values(sceneModel.meshes);\n const objectsList = Object.values(sceneModel.objects);\n\n const numGeometries = geometriesList.length;\n const numMeshes = meshesList.length;\n const numObjects = objectsList.length;\n\n let identityMatrixAdded = false;\n let identityMatrixBase = 0;\n\n let sizePositions = 0;\n let sizeColors = 0;\n let sizeIndices = 0;\n let sizeEdgeIndices = 0;\n\n const geometryIndices: { [key: string]: number } = {};\n\n for (let geometryIdx = 0; geometryIdx < numGeometries; geometryIdx++) {\n const geometry = geometriesList [geometryIdx];\n if (geometry) {\n if (geometry.positionsCompressed) {\n sizePositions += geometry.positionsCompressed.length;\n if (geometry.indices) {\n sizeIndices += geometry.indices.length;\n }\n if (geometry.edgeIndices) {\n sizeEdgeIndices += geometry.edgeIndices.length;\n }\n if (geometry.colorsCompressed) {\n sizeColors += geometry.colorsCompressed.length;\n }\n }\n }\n }\n\n const dtxData = {\n positions: new Uint16Array(sizePositions),\n colors: new Uint8Array(sizeColors),\n indices: new Uint32Array(sizeIndices),\n edgeIndices: new Uint32Array(sizeEdgeIndices),\n aabbs: null,\n eachGeometryPositionsBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.positions. Every primitive type has positions.\n eachGeometryColorsBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.colors. If the next geometry has the same index, then this geometry has no colors.\n eachGeometryIndicesBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.indices. If the next geometry has the same index, then this geometry has no indices.\n eachGeometryEdgeIndicesBase: new Uint32Array(numGeometries), // For each geometry, an index to its first element in dtxData.edgeIndices. If the next geometry has the same index, then this geometry has no edge indices.\n eachGeometryPrimitiveType: new Uint8Array(numGeometries), // Primitive type for each geometry (0=solid triangles, 1=surface triangles, 2=lines, 3=points)\n eachGeometryAABBBase: new Uint32Array(numGeometries), // Positions dequantization matrices\n matrices: null, // Modeling matrices\n eachMeshGeometriesBase: new Uint32Array(numMeshes), // For each mesh, an index into the eachGeometry* arrays\n eachMeshMatricesBase: new Uint32Array(numMeshes), // For each mesh that shares its geometry, an index to its first element in dtxData.matrices, to indicate the modeling matrix that transforms the shared geometry Local-space vertex positions. This is ignored for meshes that don't share geometries, because the vertex positions of non-shared geometries are pre-transformed into World-space.\n eachMeshMaterialAttributes: new Uint8Array(numMeshes * NUM_MATERIAL_ATTRIBUTES), // For each mesh, an RGBA integer color of format [0..255, 0..255, 0..255, 0..255], and PBR metallic and roughness factors, of format [0..255, 0..255]\n eachObjectId: [], // For each object, an ID string\n eachObjectMeshesBase: new Uint32Array(numObjects) // For each object, the index of the first element of meshes used by the object\n };\n\n let positionsBase = 0;\n let colorsBase = 0;\n let indicesBase = 0;\n let edgeIndicesBase = 0;\n let aabbsBase = 0;\n\n const aabbIdxMap = {};\n\n const aabbs = [];\n const matrices = [];\n\n for (let geometryIdx = 0; geometryIdx < numGeometries; geometryIdx++) {\n const geometry = geometriesList[geometryIdx];\n let primitiveType;\n switch (geometry.primitive) {\n case TrianglesPrimitive:\n primitiveType = 0;\n break;\n case SolidPrimitive:\n primitiveType = 1;\n break;\n case SurfacePrimitive:\n primitiveType = 2;\n break;\n case LinesPrimitive:\n primitiveType = 3;\n break;\n case PointsPrimitive:\n primitiveType = 4;\n break;\n }\n dtxData.eachGeometryPrimitiveType [geometryIdx] = primitiveType;\n const aabb = geometry.aabb;\n const aabbHash = `${aabb[0]}-${aabb[1]}-${aabb[2]}-${aabb[3]}-${aabb[4]}-${aabb[5]}`;\n let aabbIdx = aabbIdxMap[aabbHash];\n if (aabbIdx === undefined) {\n aabbIdx = aabbsBase;\n aabbIdxMap[aabbHash] = aabbIdx;\n aabbs.push(...aabb);\n aabbsBase += 6;\n }\n dtxData.eachGeometryAABBBase [geometryIdx] = aabbIdx;\n dtxData.eachGeometryPositionsBase [geometryIdx] = positionsBase;\n dtxData.eachGeometryColorsBase [geometryIdx] = colorsBase;\n dtxData.positions.set(geometry.positionsCompressed, positionsBase);\n positionsBase += geometry.positionsCompressed.length;\n if (geometry.indices) {\n dtxData.indices.set(geometry.indices, indicesBase);\n dtxData.eachGeometryIndicesBase [geometryIdx] = indicesBase;\n indicesBase += geometry.indices.length;\n }\n if (geometry.edgeIndices) {\n dtxData.edgeIndices.set(geometry.edgeIndices, edgeIndicesBase);\n dtxData.eachGeometryEdgeIndicesBase [geometryIdx] = edgeIndicesBase;\n edgeIndicesBase += geometry.edgeIndices.length;\n }\n if (geometry.colorsCompressed) {\n dtxData.colors.set(geometry.colorsCompressed, colorsBase);\n dtxData.eachGeometryColorsBase [geometryIdx] = colorsBase;\n colorsBase += geometry.colorsCompressed.length;\n }\n geometryIndices[geometry.id] = geometryIdx;\n }\n\n // Meshes and objects\n\n let eachMeshMaterialAttributesBase = 0;\n let matricesBase = 0;\n let meshesBase = 0;\n for (let objectIdx = 0; objectIdx < numObjects; objectIdx++) {\n const object = objectsList[objectIdx];\n dtxData.eachObjectId[objectIdx] = object.id;\n dtxData.eachObjectMeshesBase[objectIdx] = meshesBase;\n for (let objectMeshIdx = 0; objectMeshIdx < object.meshes.length; objectMeshIdx++) {\n const mesh = object.meshes[objectMeshIdx];\n dtxData.eachMeshGeometriesBase [meshesBase] = geometryIndices[mesh.geometry.id];\n if (isIdentityMat4(mesh.matrix)) {\n if (!identityMatrixAdded) {\n matrices.push(...mesh.rtcMatrix);\n dtxData.eachMeshMatricesBase [meshesBase] = matricesBase;\n identityMatrixBase = matricesBase;\n matricesBase += 16;\n identityMatrixAdded = true;\n } else {\n dtxData.eachMeshMatricesBase [meshesBase] = identityMatrixBase;\n }\n } else {\n matrices.push(...mesh.matrix);\n dtxData.eachMeshMatricesBase [meshesBase] = matricesBase;\n matricesBase += 16;\n }\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[0] * 255); // Color RGB\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[1] * 255);\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.color[2] * 255);\n dtxData.eachMeshMaterialAttributes[eachMeshMaterialAttributesBase++] = (mesh.opacity * 255); // Opacity\n meshesBase++;\n }\n }\n\n dtxData.aabbs = new Float32Array(aabbs);\n dtxData.matrices = new Float64Array(matrices);\n\n return dtxData;\n}\n", "import type {DTXDataDeflated} from \"./DTXDataDeflated\";\nimport {DTX_INFO} from \"./DTX_INFO\";\n\n/**\n * @private\n */\nexport function packDTX(deflatedData: DTXDataDeflated): ArrayBuffer {\n return toArrayBuffer([\n deflatedData.positions,\n deflatedData.colors,\n deflatedData.indices,\n deflatedData.edgeIndices,\n deflatedData.aabbs,\n deflatedData.eachGeometryPositionsBase,\n deflatedData.eachGeometryColorsBase,\n deflatedData.eachGeometryIndicesBase,\n deflatedData.eachGeometryEdgeIndicesBase,\n deflatedData.eachGeometryPrimitiveType,\n deflatedData.eachGeometryAABBBase,\n deflatedData.matrices,\n deflatedData.eachMeshGeometriesBase,\n deflatedData.eachMeshMatricesBase,\n deflatedData.eachMeshMaterialAttributes,\n deflatedData.eachObjectId,\n deflatedData.eachObjectMeshesBase\n ]);\n}\n\nfunction toArrayBuffer(elements: Buffer[]): ArrayBuffer {\n const indexData = new Uint32Array(elements.length + 2);\n indexData[0] = DTX_INFO.dtxVersion;\n indexData [1] = elements.length; // Stored Data 1.1: number of stored elements\n let dataLen = 0; // Stored Data 1.2: length of stored elements\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i];\n const elementsize = element.length;\n indexData[i + 2] = elementsize;\n dataLen += elementsize;\n }\n const indexBuf = new Uint8Array(indexData.buffer);\n const dataArray = new Uint8Array(indexBuf.length + dataLen);\n dataArray.set(indexBuf);\n let offset = indexBuf.length;\n for (let i = 0, len = elements.length; i < len; i++) { // Stored Data 2: the elements themselves\n const element = elements[i];\n dataArray.set(element, offset);\n offset += element.length;\n }\n return dataArray.buffer;\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {deflateDTX} from \"./deflateDTX\";\nimport {modelToDTX} from \"./modelToDTX\";\nimport {packDTX} from \"./packDTX\";\n\n/** @private\n */\nexport function writeDTX(params: {\n sceneModel: SceneModel\n}): ArrayBuffer {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!params.sceneModel.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n return packDTX(\n deflateDTX(\n modelToDTX({\n sceneModel: params.sceneModel\n }), {\n deflateLevel: 0\n }));\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {writeDTX} from \"./versions/v1/writeDTX\"; // Always the latest\n\n/**\n * Exports a {@link @xeokit/scene!SceneModel | SceneModel} to an ArrayBuffer\n * containing [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data.\n *\n * See {@link \"@xeokit/dtx\" | @xeokit/dtx} for usage.\n *\n * @param params\n * @param params.sceneModel - The SceneModel to export to DTX.\n * @returns The [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file data in an ArrayBuffer.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has already been destroyed.\n * @returns {@link @xeokit/core!SDKError | SDKError} If the SceneModel has not yet been built.\n */\nexport function saveDTX(params: {\n sceneModel: SceneModel\n}): ArrayBuffer {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (!params.sceneModel.built) {\n throw new SDKError(\"SceneModel not yet built\");\n }\n return writeDTX({\n sceneModel: params.sceneModel\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Flas.svg)](https://badge.fury.io/js/%40xeokit%2Flas)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/las/badge)](https://www.jsdelivr.com/package/npm/@xeokit/las)\n *\n * \n *\n *
    \n *\n * # xeokit LAS/LAZ Importer\n *\n * ---\n *\n * ### *Import 3D lidar point cloud datasets*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [LAS](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#las), a\n * file format for the interchange of 3-dimensional point cloud data.\n *\n * The LAS file format is a standardized binary format used for storing and sharing 3D point cloud data from LiDAR\n * scanners. It includes header information and point data attributes, supports compressed and uncompressed data, and\n * is widely used in surveying, mapping, and other industries.\n *\n * To import an LAS model into xeokit, use the {@link loadLAS} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel} and a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNU01vozAQ_SvRnLYSiYA1NEFVpF3lmKpVua18cfHQuAXbso20NMp_r81H00jbaLmYeTPz3pvBHKFSHKGAqmHW7gR7MaylkkouDFZOKLnYP4V4yC_KCiXe-45mcaRy4R_Bx1M9v_p6OwaVQebwYYB-3IzYcycaPgccrTOqD-EpsM_8O-bYQH-NXRul0bi-xGt6I_aEDQtT2IPQl5nHM8t_WRwN7hXj-1_lI_NrsvMO7u50iNGh2W5HiBnD-t9dXaMZAfu5uYl-nvRf9A968HyFv9Y5iaZxVKPMDrU7TIB9E3rOofRNU-AMk7ZWpr2QbEbJs1bdyeHDB6mh7mJmCjGF5XJLIaFQfhnq-6rdedRJbM5c9nyTnZYBEbRoWia4v62DWQrugC1SKPwrx5p1jaPgTftS1jlV9rKCwpkOI-i0XzhO9xuKmjXWo8iFU-Z--gPCEYFmEooj_IVimZD16uc6I0lMbvM4I1kaQQ9FQvJVuo5JlqfJJickPUXwrpSnTVZxehvHab5J_ZNtQoPn-zMkg5HTBz5RHi8?type=png)](https://mermaid.live/edit#pako:eNqNU01vozAQ_SvRnLYSiYA1NEFVpF3lmKpVua18cfHQuAXbso20NMp_r81H00jbaLmYeTPz3pvBHKFSHKGAqmHW7gR7MaylkkouDFZOKLnYP4V4yC_KCiXe-45mcaRy4R_Bx1M9v_p6OwaVQebwYYB-3IzYcycaPgccrTOqD-EpsM_8O-bYQH-NXRul0bi-xGt6I_aEDQtT2IPQl5nHM8t_WRwN7hXj-1_lI_NrsvMO7u50iNGh2W5HiBnD-t9dXaMZAfu5uYl-nvRf9A968HyFv9Y5iaZxVKPMDrU7TIB9E3rOofRNU-AMk7ZWpr2QbEbJs1bdyeHDB6mh7mJmCjGF5XJLIaFQfhnq-6rdedRJbM5c9nyTnZYBEbRoWia4v62DWQrugC1SKPwrx5p1jaPgTftS1jlV9rKCwpkOI-i0XzhO9xuKmjXWo8iFU-Z--gPCEYFmEooj_IVimZD16uc6I0lMbvM4I1kaQQ9FQvJVuo5JlqfJJickPUXwrpSnTVZxehvHab5J_ZNtQoPn-zMkg5HTBz5RHi8)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/las\n * ````\n *\n * ## Usage\n *\n * The example below shows how to use {@link @xeokit/las!loadLAS | loadLAS} in context.\n *\n * In this example, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry\n * and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold model geometry and materials.\n *\n * We will then use\n * {@link @xeokit/las!loadLAS | loadLAS} to load an LAS/LAZ file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadLAS} from \"@xeokit/las\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n * fetch(\"model.las\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadLAS({\n * fileData,\n * sceneModel\n * },\n * {,\n * fp64: false, // Expect points as 64-bit floats? (optional, default is true)\n * colorDepth: \"auto\", // 8, 16 or \"auto\" (optional, default is \"auto)\n * skip: 1, // Load every nth point (optional, default is 1)\n * center: false, // Whether to center the points (optional, default is false)\n * transform: [ // Transform the points (optional)\n * 1,0,0,0,\n * 0,1,0,0,\n * 0,0,1,0,\n * 0,0,0,1\n * ],\n * }).then(() => {\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading LAS/LAZ file: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }).catch(message => {\n * console.error(`Error initializing WebIFC.IfcAPI: ${message}`);\n * });\n * }\n * ````\n *\n * @module @xeokit/las\n */\nexport * from \"./loadLAS\";\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parseFromContext(data, loaders, options, context) {\n return context._parse(data, loaders, options, context);\n}\n/**\n * Parses `data` synchronously using the specified loader, parse function provided via the loader context\n */\nexport function parseSyncFromContext(data, loader, options, context) {\n if (!context._parseSync) {\n throw new Error('parseSync');\n }\n return context._parseSync(data, loader, options, context);\n}\n/**\n * Parses `data` synchronously using a specified loader, parse function provided via the loader context\n */\nexport async function parseInBatchesFromContext(data, loader, options, context) {\n if (!context._parseInBatches) {\n throw new Error('parseInBatches');\n }\n return context._parseInBatches(data, loader, options, context);\n}\n", "/**\n * Throws an `Error` with the optional `message` if `condition` is falsy\n * @note Replacement for the external assert method to reduce bundle size\n */\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'loader assertion failed.');\n }\n}\n", "// Purpose: include this in your module to avoid\n// dependencies on micro modules like 'global' and 'is-browser';\n/* eslint-disable no-restricted-globals */\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global,\n document: typeof document !== 'undefined' && document\n};\nconst self_ = globals.self || globals.window || globals.global || {};\nconst window_ = globals.window || globals.self || globals.global || {};\nconst global_ = globals.global || globals.self || globals.window || {};\nconst document_ = globals.document || {};\nexport { self_ as self, window_ as window, global_ as global, document_ as document };\n/** true if running in a browser */\nexport const isBrowser = \n// @ts-ignore process does not exist on browser\nBoolean(typeof process !== 'object' || String(process) !== '[object process]' || process.browser);\n/** true if running in a worker thread */\nexport const isWorker = typeof importScripts === 'function';\n// Extract node major version\nconst matches = typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);\n/** Major Node version (as a number) */\nexport const nodeVersion = (matches && parseFloat(matches[1])) || 0;\n", "// Do not name these variables the same as the global objects - will break bundling\nconst global_ = globalThis;\nconst window_ = globalThis;\nconst document_ = globalThis.document || {};\nconst process_ = globalThis.process || {};\nconst console_ = globalThis.console;\nconst navigator_ = globalThis.navigator || {};\nexport { global_ as global, global_ as self, window_ as window, document_ as document, process_ as process, console_ as console, navigator_ as navigator };\n", "// based on https://github.com/cheton/is-electron\n// https://github.com/electron/electron/issues/2288\n/* eslint-disable complexity */\nexport function isElectron(mockUserAgent) {\n // Renderer process\n // @ts-expect-error\n if (typeof window !== 'undefined' && window.process?.type === 'renderer') {\n return true;\n }\n // Main process\n // eslint-disable-next-line\n if (typeof process !== 'undefined' && Boolean(process.versions?.['electron'])) {\n return true;\n }\n // Detect the user agent when the `nodeIntegration` option is set to true\n const realUserAgent = typeof navigator !== 'undefined' && navigator.userAgent;\n const userAgent = mockUserAgent || realUserAgent;\n return Boolean(userAgent && userAgent.indexOf('Electron') >= 0);\n}\n", "// This function is needed in initialization stages,\n// make sure it can be imported in isolation\nimport { isElectron } from \"./is-electron.js\";\n/** Check if in browser by duck-typing Node context */\nexport function isBrowser() {\n const isNode = \n // @ts-expect-error\n typeof process === 'object' && String(process) === '[object process]' && !process?.browser;\n return !isNode || isElectron();\n}\n", "// Extract injected version from package.json (injected by babel plugin)\n// @ts-expect-error\nexport const VERSION = typeof \"4.0.7\" !== 'undefined' ? \"4.0.7\" : 'untranspiled source';\n// ENVIRONMENT\nexport { self, window, global, document, process, console } from \"./lib/globals.js\";\nexport { isBrowser } from \"./lib/is-browser.js\";\nexport { getBrowser, isMobile } from \"./lib/get-browser.js\";\nexport { isElectron } from \"./lib/is-electron.js\";\n// ENVIRONMENT'S ASSERT IS 5-15KB, SO WE PROVIDE OUR OWN\nexport { assert } from \"./utils/assert.js\";\n// TODO - wish we could just export a constant\n// export const isBrowser = checkIfBrowser();\n", "// probe.gl, MIT license\nfunction getStorage(type) {\n try {\n const storage = window[type];\n const x = '__storage_test__';\n storage.setItem(x, x);\n storage.removeItem(x);\n return storage;\n }\n catch (e) {\n return null;\n }\n}\n// Store keys in local storage via simple interface\nexport class LocalStorage {\n constructor(id, defaultConfig, type = 'sessionStorage') {\n this.storage = getStorage(type);\n this.id = id;\n this.config = defaultConfig;\n this._loadConfiguration();\n }\n getConfiguration() {\n return this.config;\n }\n setConfiguration(configuration) {\n Object.assign(this.config, configuration);\n if (this.storage) {\n const serialized = JSON.stringify(this.config);\n this.storage.setItem(this.id, serialized);\n }\n }\n // Get config from persistent store, if available\n _loadConfiguration() {\n let configuration = {};\n if (this.storage) {\n const serializedConfiguration = this.storage.getItem(this.id);\n configuration = serializedConfiguration ? JSON.parse(serializedConfiguration) : {};\n }\n Object.assign(this.config, configuration);\n return this;\n }\n}\n", "// probe.gl, MIT license\n/**\n * Format time\n */\nexport function formatTime(ms) {\n let formatted;\n if (ms < 10) {\n formatted = `${ms.toFixed(2)}ms`;\n }\n else if (ms < 100) {\n formatted = `${ms.toFixed(1)}ms`;\n }\n else if (ms < 1000) {\n formatted = `${ms.toFixed(0)}ms`;\n }\n else {\n formatted = `${(ms / 1000).toFixed(2)}s`;\n }\n return formatted;\n}\nexport function leftPad(string, length = 8) {\n const padLength = Math.max(length - string.length, 0);\n return `${' '.repeat(padLength)}${string}`;\n}\nexport function rightPad(string, length = 8) {\n const padLength = Math.max(length - string.length, 0);\n return `${string}${' '.repeat(padLength)}`;\n}\nexport function formatValue(v, options = {}) {\n const EPSILON = 1e-16;\n const { isInteger = false } = options;\n if (Array.isArray(v) || ArrayBuffer.isView(v)) {\n return formatArrayValue(v, options);\n }\n if (!Number.isFinite(v)) {\n return String(v);\n }\n // @ts-expect-error\n if (Math.abs(v) < EPSILON) {\n return isInteger ? '0' : '0.';\n }\n if (isInteger) {\n // @ts-expect-error\n return v.toFixed(0);\n }\n // @ts-expect-error\n if (Math.abs(v) > 100 && Math.abs(v) < 10000) {\n // @ts-expect-error\n return v.toFixed(0);\n }\n // @ts-expect-error\n const string = v.toPrecision(2);\n const decimal = string.indexOf('.0');\n return decimal === string.length - 2 ? string.slice(0, -1) : string;\n}\n/** Helper to formatValue */\nfunction formatArrayValue(v, options) {\n const { maxElts = 16, size = 1 } = options;\n let string = '[';\n for (let i = 0; i < v.length && i < maxElts; ++i) {\n if (i > 0) {\n string += `,${i % size === 0 ? ' ' : ''}`;\n }\n string += formatValue(v[i], options);\n }\n const terminator = v.length > maxElts ? '...' : ']';\n return `${string}${terminator}`;\n}\n", "import { isBrowser } from '@probe.gl/env';\nexport var COLOR;\n(function (COLOR) {\n COLOR[COLOR[\"BLACK\"] = 30] = \"BLACK\";\n COLOR[COLOR[\"RED\"] = 31] = \"RED\";\n COLOR[COLOR[\"GREEN\"] = 32] = \"GREEN\";\n COLOR[COLOR[\"YELLOW\"] = 33] = \"YELLOW\";\n COLOR[COLOR[\"BLUE\"] = 34] = \"BLUE\";\n COLOR[COLOR[\"MAGENTA\"] = 35] = \"MAGENTA\";\n COLOR[COLOR[\"CYAN\"] = 36] = \"CYAN\";\n COLOR[COLOR[\"WHITE\"] = 37] = \"WHITE\";\n COLOR[COLOR[\"BRIGHT_BLACK\"] = 90] = \"BRIGHT_BLACK\";\n COLOR[COLOR[\"BRIGHT_RED\"] = 91] = \"BRIGHT_RED\";\n COLOR[COLOR[\"BRIGHT_GREEN\"] = 92] = \"BRIGHT_GREEN\";\n COLOR[COLOR[\"BRIGHT_YELLOW\"] = 93] = \"BRIGHT_YELLOW\";\n COLOR[COLOR[\"BRIGHT_BLUE\"] = 94] = \"BRIGHT_BLUE\";\n COLOR[COLOR[\"BRIGHT_MAGENTA\"] = 95] = \"BRIGHT_MAGENTA\";\n COLOR[COLOR[\"BRIGHT_CYAN\"] = 96] = \"BRIGHT_CYAN\";\n COLOR[COLOR[\"BRIGHT_WHITE\"] = 97] = \"BRIGHT_WHITE\";\n})(COLOR || (COLOR = {}));\nconst BACKGROUND_INCREMENT = 10;\nfunction getColor(color) {\n if (typeof color !== 'string') {\n return color;\n }\n color = color.toUpperCase();\n return COLOR[color] || COLOR.WHITE;\n}\nexport function addColor(string, color, background) {\n if (!isBrowser && typeof string === 'string') {\n if (color) {\n const colorCode = getColor(color);\n string = `\\u001b[${colorCode}m${string}\\u001b[39m`;\n }\n if (background) {\n // background colors values are +10\n const colorCode = getColor(background);\n string = `\\u001b[${colorCode + BACKGROUND_INCREMENT}m${string}\\u001b[49m`;\n }\n }\n return string;\n}\n", "// Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n/**\n * Binds the \"this\" argument of all functions on a class instance to the instance\n * @param obj - class instance (typically a react component)\n */\nexport function autobind(obj, predefined = ['constructor']) {\n const proto = Object.getPrototypeOf(obj);\n const propNames = Object.getOwnPropertyNames(proto);\n const object = obj;\n for (const key of propNames) {\n const value = object[key];\n if (typeof value === 'function') {\n if (!predefined.find(name => key === name)) {\n object[key] = value.bind(obj);\n }\n }\n }\n}\n", "export default function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'Assertion failed');\n }\n}\n", "// probe.gl, MIT license\nimport { window, process, isBrowser } from '@probe.gl/env';\n/** Get best timer available. */\nexport function getHiResTimestamp() {\n let timestamp;\n if (isBrowser() && window.performance) {\n timestamp = window?.performance?.now?.();\n }\n else if ('hrtime' in process) {\n // @ts-ignore\n const timeParts = process?.hrtime?.();\n timestamp = timeParts[0] * 1000 + timeParts[1] / 1e6;\n }\n else {\n timestamp = Date.now();\n }\n return timestamp;\n}\n", "// probe.gl, MIT license\n/* eslint-disable no-console */\nimport { VERSION, isBrowser } from '@probe.gl/env';\nimport { LocalStorage } from \"./utils/local-storage.js\";\nimport { formatTime, leftPad } from \"./utils/formatters.js\";\nimport { addColor } from \"./utils/color.js\";\nimport { autobind } from \"./utils/autobind.js\";\nimport assert from \"./utils/assert.js\";\nimport { getHiResTimestamp } from \"./utils/hi-res-timestamp.js\";\n// Instrumentation in other packages may override console methods, so preserve them here\nconst originalConsole = {\n debug: isBrowser() ? console.debug || console.log : console.log,\n log: console.log,\n info: console.info,\n warn: console.warn,\n error: console.error\n};\nconst DEFAULT_LOG_CONFIGURATION = {\n enabled: true,\n level: 0\n};\nfunction noop() { } // eslint-disable-line @typescript-eslint/no-empty-function\nconst cache = {};\nconst ONCE = { once: true };\n/** A console wrapper */\nexport class Log {\n constructor({ id } = { id: '' }) {\n this.VERSION = VERSION;\n this._startTs = getHiResTimestamp();\n this._deltaTs = getHiResTimestamp();\n this.userData = {};\n // TODO - fix support from throttling groups\n this.LOG_THROTTLE_TIMEOUT = 0; // Time before throttled messages are logged again\n this.id = id;\n this.userData = {};\n this._storage = new LocalStorage(`__probe-${this.id}__`, DEFAULT_LOG_CONFIGURATION);\n this.timeStamp(`${this.id} started`);\n autobind(this);\n Object.seal(this);\n }\n set level(newLevel) {\n this.setLevel(newLevel);\n }\n get level() {\n return this.getLevel();\n }\n isEnabled() {\n return this._storage.config.enabled;\n }\n getLevel() {\n return this._storage.config.level;\n }\n /** @return milliseconds, with fractions */\n getTotal() {\n return Number((getHiResTimestamp() - this._startTs).toPrecision(10));\n }\n /** @return milliseconds, with fractions */\n getDelta() {\n return Number((getHiResTimestamp() - this._deltaTs).toPrecision(10));\n }\n /** @deprecated use logLevel */\n set priority(newPriority) {\n this.level = newPriority;\n }\n /** @deprecated use logLevel */\n get priority() {\n return this.level;\n }\n /** @deprecated use logLevel */\n getPriority() {\n return this.level;\n }\n // Configure\n enable(enabled = true) {\n this._storage.setConfiguration({ enabled });\n return this;\n }\n setLevel(level) {\n this._storage.setConfiguration({ level });\n return this;\n }\n /** return the current status of the setting */\n get(setting) {\n return this._storage.config[setting];\n }\n // update the status of the setting\n set(setting, value) {\n this._storage.setConfiguration({ [setting]: value });\n }\n /** Logs the current settings as a table */\n settings() {\n if (console.table) {\n console.table(this._storage.config);\n }\n else {\n console.log(this._storage.config);\n }\n }\n // Unconditional logging\n assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'Assertion failed');\n }\n }\n warn(message) {\n return this._getLogFunction(0, message, originalConsole.warn, arguments, ONCE);\n }\n error(message) {\n return this._getLogFunction(0, message, originalConsole.error, arguments);\n }\n /** Print a deprecation warning */\n deprecated(oldUsage, newUsage) {\n return this.warn(`\\`${oldUsage}\\` is deprecated and will be removed \\\nin a later version. Use \\`${newUsage}\\` instead`);\n }\n /** Print a removal warning */\n removed(oldUsage, newUsage) {\n return this.error(`\\`${oldUsage}\\` has been removed. Use \\`${newUsage}\\` instead`);\n }\n probe(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.log, arguments, {\n time: true,\n once: true\n });\n }\n log(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.debug, arguments);\n }\n info(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.info, arguments);\n }\n once(logLevel, message) {\n return this._getLogFunction(logLevel, message, originalConsole.debug || originalConsole.info, arguments, ONCE);\n }\n /** Logs an object as a table */\n table(logLevel, table, columns) {\n if (table) {\n return this._getLogFunction(logLevel, table, console.table || noop, (columns && [columns]), {\n tag: getTableHeader(table)\n });\n }\n return noop;\n }\n time(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.time ? console.time : console.info);\n }\n timeEnd(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.timeEnd ? console.timeEnd : console.info);\n }\n timeStamp(logLevel, message) {\n return this._getLogFunction(logLevel, message, console.timeStamp || noop);\n }\n group(logLevel, message, opts = { collapsed: false }) {\n const options = normalizeArguments({ logLevel, message, opts });\n const { collapsed } = opts;\n // @ts-expect-error\n options.method = (collapsed ? console.groupCollapsed : console.group) || console.info;\n return this._getLogFunction(options);\n }\n groupCollapsed(logLevel, message, opts = {}) {\n return this.group(logLevel, message, Object.assign({}, opts, { collapsed: true }));\n }\n groupEnd(logLevel) {\n return this._getLogFunction(logLevel, '', console.groupEnd || noop);\n }\n // EXPERIMENTAL\n withGroup(logLevel, message, func) {\n this.group(logLevel, message)();\n try {\n func();\n }\n finally {\n this.groupEnd(logLevel)();\n }\n }\n trace() {\n if (console.trace) {\n console.trace();\n }\n }\n // PRIVATE METHODS\n /** Deduces log level from a variety of arguments */\n _shouldLog(logLevel) {\n return this.isEnabled() && this.getLevel() >= normalizeLogLevel(logLevel);\n }\n _getLogFunction(logLevel, message, method, args, opts) {\n if (this._shouldLog(logLevel)) {\n // normalized opts + timings\n opts = normalizeArguments({ logLevel, message, args, opts });\n method = method || opts.method;\n assert(method);\n opts.total = this.getTotal();\n opts.delta = this.getDelta();\n // reset delta timer\n this._deltaTs = getHiResTimestamp();\n const tag = opts.tag || opts.message;\n if (opts.once && tag) {\n if (!cache[tag]) {\n cache[tag] = getHiResTimestamp();\n }\n else {\n return noop;\n }\n }\n // TODO - Make throttling work with groups\n // if (opts.nothrottle || !throttle(tag, this.LOG_THROTTLE_TIMEOUT)) {\n // return noop;\n // }\n message = decorateMessage(this.id, opts.message, opts);\n // Bind console function so that it can be called after being returned\n return method.bind(console, message, ...opts.args);\n }\n return noop;\n }\n}\nLog.VERSION = VERSION;\n/**\n * Get logLevel from first argument:\n * - log(logLevel, message, args) => logLevel\n * - log(message, args) => 0\n * - log({logLevel, ...}, message, args) => logLevel\n * - log({logLevel, message, args}) => logLevel\n */\nfunction normalizeLogLevel(logLevel) {\n if (!logLevel) {\n return 0;\n }\n let resolvedLevel;\n switch (typeof logLevel) {\n case 'number':\n resolvedLevel = logLevel;\n break;\n case 'object':\n // Backward compatibility\n // TODO - deprecate `priority`\n // @ts-expect-error\n resolvedLevel = logLevel.logLevel || logLevel.priority || 0;\n break;\n default:\n return 0;\n }\n // 'log level must be a number'\n assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);\n return resolvedLevel;\n}\n/**\n * \"Normalizes\" the various argument patterns into an object with known types\n * - log(logLevel, message, args) => {logLevel, message, args}\n * - log(message, args) => {logLevel: 0, message, args}\n * - log({logLevel, ...}, message, args) => {logLevel, message, args}\n * - log({logLevel, message, args}) => {logLevel, message, args}\n */\nexport function normalizeArguments(opts) {\n const { logLevel, message } = opts;\n opts.logLevel = normalizeLogLevel(logLevel);\n // We use `arguments` instead of rest parameters (...args) because IE\n // does not support the syntax. Rest parameters is transpiled to code with\n // perf impact. Doing it here instead avoids constructing args when logging is\n // disabled.\n // TODO - remove when/if IE support is dropped\n const args = opts.args ? Array.from(opts.args) : [];\n // args should only contain arguments that appear after `message`\n // eslint-disable-next-line no-empty\n while (args.length && args.shift() !== message) { }\n switch (typeof logLevel) {\n case 'string':\n case 'function':\n if (message !== undefined) {\n args.unshift(message);\n }\n opts.message = logLevel;\n break;\n case 'object':\n Object.assign(opts, logLevel);\n break;\n default:\n }\n // Resolve functions into strings by calling them\n if (typeof opts.message === 'function') {\n opts.message = opts.message();\n }\n const messageType = typeof opts.message;\n // 'log message must be a string' or object\n assert(messageType === 'string' || messageType === 'object');\n // original opts + normalized opts + opts arg + fixed up message\n return Object.assign(opts, { args }, opts.opts);\n}\nfunction decorateMessage(id, message, opts) {\n if (typeof message === 'string') {\n const time = opts.time ? leftPad(formatTime(opts.total)) : '';\n message = opts.time ? `${id}: ${time} ${message}` : `${id}: ${message}`;\n message = addColor(message, opts.color, opts.background);\n }\n return message;\n}\nfunction getTableHeader(table) {\n for (const key in table) {\n for (const title in table[key]) {\n return title || 'untitled';\n }\n }\n return 'empty';\n}\n", "// @ts-nocheck\n/* eslint-disable */\nglobalThis.probe = {};\n", "import { Log } from \"./log.js\";\n// DEFAULT EXPORT IS A LOG INSTANCE\nexport default new Log({ id: '@probe.gl/log' });\n// LOGGING\nexport { Log } from \"./log.js\";\nexport { COLOR } from \"./utils/color.js\";\n// UTILITIES\nexport { addColor } from \"./utils/color.js\";\nexport { leftPad, rightPad } from \"./utils/formatters.js\";\nexport { autobind } from \"./utils/autobind.js\";\nexport { LocalStorage } from \"./utils/local-storage.js\";\nexport { getHiResTimestamp } from \"./utils/hi-res-timestamp.js\";\nimport \"./init.js\";\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n *\n * @param baseOptions Can be undefined, in which case a fresh options object will be minted\n * @param newOptions\n * @returns\n */\nexport function mergeLoaderOptions(baseOptions, newOptions) {\n return mergeOptionsRecursively(baseOptions || {}, newOptions);\n}\nfunction mergeOptionsRecursively(baseOptions, newOptions, level = 0) {\n // Sanity check (jest test runner overwrites the console object which can lead to infinite recursion)\n if (level > 3) {\n return newOptions;\n }\n const options = { ...baseOptions };\n for (const [key, newValue] of Object.entries(newOptions)) {\n if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {\n options[key] = mergeOptionsRecursively(options[key] || {}, newOptions[key], level + 1);\n // Object.assign(options[key] as object, newOptions[key]);\n }\n else {\n options[key] = newOptions[key];\n }\n }\n return options;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { log } from \"../log-utils/log.js\";\n/**\n * Register application-imported modules\n * These modules are typically to big to bundle, or may have issues on some bundlers/environments\n */\nexport function registerJSModules(modules) {\n globalThis.loaders ||= {};\n globalThis.loaders.modules ||= {};\n Object.assign(globalThis.loaders.modules, modules);\n}\n/**\n * Get a pre-registered application-imported module, warn if not present\n */\nexport function checkJSModule(name, caller) {\n const module = globalThis.loaders?.modules?.[name];\n if (!module) {\n log.warn(`${caller}: ${name} library not installed`)();\n }\n}\n/**\n * Get a pre-registered application-imported module, throw if not present\n */\nexport function getJSModule(name, caller) {\n const module = globalThis.loaders?.modules?.[name];\n if (!module) {\n throw new Error(`${caller}: ${name} library not installed`);\n }\n return module;\n}\n/**\n * Get a pre-registered application-imported module, return null if not present\n */\nexport function getJSModuleOrNull(name) {\n const module = globalThis.loaders?.modules?.[name];\n return module || null;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n/**\n * TODO - unpkg.com doesn't seem to have a `latest` specifier for alpha releases...\n * 'beta' on beta branch, 'latest' on prod branch\n */\nexport const NPM_TAG = 'latest';\nfunction getVersion() {\n if (!globalThis._loadersgl_?.version) {\n globalThis._loadersgl_ = globalThis._loadersgl_ || {};\n // __VERSION__ is injected by babel-plugin-version-inline\n if (typeof \"4.2.1\" === 'undefined') {\n // eslint-disable-next-line\n console.warn('loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.');\n globalThis._loadersgl_.version = NPM_TAG;\n }\n else {\n globalThis._loadersgl_.version = \"4.2.1\";\n }\n }\n return globalThis._loadersgl_.version;\n}\nexport const VERSION = getVersion();\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Replacement for the external assert method to reduce bundle size\n// Note: We don't use the second \"message\" argument in calling code,\n// so no need to support it here\n/** Throws an `Error` with the optional `message` if `condition` is falsy */\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'loaders.gl assertion failed.');\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Purpose: include this in your module to avoids adding dependencies on\n// micro modules like 'global' and 'is-browser';\n/* eslint-disable no-restricted-globals */\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global,\n document: typeof document !== 'undefined' && document\n};\nconst self_ = globals.self || globals.window || globals.global || {};\nconst window_ = globals.window || globals.self || globals.global || {};\nconst global_ = globals.global || globals.self || globals.window || {};\nconst document_ = globals.document || {};\nexport { self_ as self, window_ as window, global_ as global, document_ as document };\n/** true if running in the browser, false if running in Node.js */\nexport const isBrowser = \n// @ts-ignore process.browser\ntypeof process !== 'object' || String(process) !== '[object process]' || process.browser;\n/** true if running on a worker thread */\nexport const isWorker = typeof importScripts === 'function';\n/** true if running on a mobile device */\nexport const isMobile = typeof window !== 'undefined' && typeof window.orientation !== 'undefined';\n// Extract node major version\nconst matches = typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);\n/** Version of Node.js if running under Node, otherwise 0 */\nexport const nodeVersion = (matches && parseFloat(matches[1])) || 0;\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\n/**\n * Represents one Job handled by a WorkerPool or WorkerFarm\n */\nexport default class WorkerJob {\n name;\n workerThread;\n isRunning = true;\n /** Promise that resolves when Job is done */\n result;\n _resolve = () => { };\n _reject = () => { };\n constructor(jobName, workerThread) {\n this.name = jobName;\n this.workerThread = workerThread;\n this.result = new Promise((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n }\n /**\n * Send a message to the job's worker thread\n * @param data any data structure, ideally consisting mostly of transferrable objects\n */\n postMessage(type, payload) {\n this.workerThread.postMessage({\n source: 'loaders.gl', // Lets worker ignore unrelated messages\n type,\n payload\n });\n }\n /**\n * Call to resolve the `result` Promise with the supplied value\n */\n done(value) {\n assert(this.isRunning);\n this.isRunning = false;\n this._resolve(value);\n }\n /**\n * Call to reject the `result` Promise with the supplied error\n */\n error(error) {\n assert(this.isRunning);\n this.isRunning = false;\n this._reject(error);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/** Browser polyfill for Node.js built-in `worker_threads` module.\n * These fills are non-functional, and just intended to ensure that\n * `import 'worker_threads` doesn't break browser builds.\n * The replacement is done in package.json browser field\n */\nexport class NodeWorker {\n terminate() { }\n}\nexport const parentPort = null;\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nconst workerURLCache = new Map();\n/**\n * Creates a loadable URL from worker source or URL\n * that can be used to create `Worker` instances.\n * Due to CORS issues it may be necessary to wrap a URL in a small importScripts\n * @param props\n * @param props.source Worker source\n * @param props.url Worker URL\n * @returns loadable url\n */\nexport function getLoadableWorkerURL(props) {\n assert((props.source && !props.url) || (!props.source && props.url)); // Either source or url must be defined\n let workerURL = workerURLCache.get(props.source || props.url);\n if (!workerURL) {\n // Differentiate worker urls from worker source code\n if (props.url) {\n workerURL = getLoadableWorkerURLFromURL(props.url);\n workerURLCache.set(props.url, workerURL);\n }\n if (props.source) {\n workerURL = getLoadableWorkerURLFromSource(props.source);\n workerURLCache.set(props.source, workerURL);\n }\n }\n assert(workerURL);\n return workerURL;\n}\n/**\n * Build a loadable worker URL from worker URL\n * @param url\n * @returns loadable URL\n */\nfunction getLoadableWorkerURLFromURL(url) {\n // A local script url, we can use it to initialize a Worker directly\n if (!url.startsWith('http')) {\n return url;\n }\n // A remote script, we need to use `importScripts` to load from different origin\n const workerSource = buildScriptSource(url);\n return getLoadableWorkerURLFromSource(workerSource);\n}\n/**\n * Build a loadable worker URL from worker source\n * @param workerSource\n * @returns loadable url\n */\nfunction getLoadableWorkerURLFromSource(workerSource) {\n const blob = new Blob([workerSource], { type: 'application/javascript' });\n return URL.createObjectURL(blob);\n}\n/**\n * Per spec, worker cannot be initialized with a script from a different origin\n * However a local worker script can still import scripts from other origins,\n * so we simply build a wrapper script.\n *\n * @param workerUrl\n * @returns source\n */\nfunction buildScriptSource(workerUrl) {\n return `\\\ntry {\n importScripts('${workerUrl}');\n} catch (error) {\n console.error(error);\n throw error;\n}`;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// NOTE - there is a copy of this function is both in core and loader-utils\n// core does not need all the utils in loader-utils, just this one.\n/**\n * Returns an array of Transferrable objects that can be used with postMessage\n * https://developer.mozilla.org/en-US/docs/Web/API/Worker/postMessage\n * @param object data to be sent via postMessage\n * @param recursive - not for application use\n * @param transfers - not for application use\n * @returns a transfer list that can be passed to postMessage\n */\nexport function getTransferList(object, recursive = true, transfers) {\n // Make sure that items in the transfer list is unique\n const transfersSet = transfers || new Set();\n if (!object) {\n // ignore\n }\n else if (isTransferable(object)) {\n transfersSet.add(object);\n }\n else if (isTransferable(object.buffer)) {\n // Typed array\n transfersSet.add(object.buffer);\n }\n else if (ArrayBuffer.isView(object)) {\n // object is a TypeArray viewing into a SharedArrayBuffer (not transferable)\n // Do not iterate through the content in this case\n }\n else if (recursive && typeof object === 'object') {\n for (const key in object) {\n // Avoid perf hit - only go one level deep\n getTransferList(object[key], recursive, transfersSet);\n }\n }\n // If transfers is defined, is internal recursive call\n // Otherwise it's called by the user\n return transfers === undefined ? Array.from(transfersSet) : [];\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/Transferable\nfunction isTransferable(object) {\n if (!object) {\n return false;\n }\n if (object instanceof ArrayBuffer) {\n return true;\n }\n if (typeof MessagePort !== 'undefined' && object instanceof MessagePort) {\n return true;\n }\n if (typeof ImageBitmap !== 'undefined' && object instanceof ImageBitmap) {\n return true;\n }\n // @ts-ignore\n if (typeof OffscreenCanvas !== 'undefined' && object instanceof OffscreenCanvas) {\n return true;\n }\n return false;\n}\n/**\n * Recursively drop non serializable values like functions and regexps.\n * @param object\n */\nexport function getTransferListForWriter(object) {\n if (object === null) {\n return {};\n }\n const clone = Object.assign({}, object);\n Object.keys(clone).forEach((key) => {\n // Typed Arrays and Arrays are passed with no change\n if (typeof object[key] === 'object' &&\n !ArrayBuffer.isView(object[key]) &&\n !(object[key] instanceof Array)) {\n clone[key] = getTransferListForWriter(object[key]);\n }\n else if (typeof clone[key] === 'function' || clone[key] instanceof RegExp) {\n clone[key] = {};\n }\n else {\n clone[key] = object[key];\n }\n });\n return clone;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { NodeWorker } from \"../node/worker_threads.js\";\nimport { isBrowser } from \"../env-utils/globals.js\";\nimport { assert } from \"../env-utils/assert.js\";\nimport { getLoadableWorkerURL } from \"../worker-utils/get-loadable-worker-url.js\";\nimport { getTransferList } from \"../worker-utils/get-transfer-list.js\";\nconst NOOP = () => { };\n/**\n * Represents one worker thread\n */\nexport default class WorkerThread {\n name;\n source;\n url;\n terminated = false;\n worker;\n onMessage;\n onError;\n _loadableURL = '';\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return ((typeof Worker !== 'undefined' && isBrowser) ||\n (typeof NodeWorker !== 'undefined' && !isBrowser));\n }\n constructor(props) {\n const { name, source, url } = props;\n assert(source || url); // Either source or url must be defined\n this.name = name;\n this.source = source;\n this.url = url;\n this.onMessage = NOOP;\n this.onError = (error) => console.log(error); // eslint-disable-line\n this.worker = isBrowser ? this._createBrowserWorker() : this._createNodeWorker();\n }\n /**\n * Terminate this worker thread\n * @note Can free up significant memory\n */\n destroy() {\n this.onMessage = NOOP;\n this.onError = NOOP;\n this.worker.terminate(); // eslint-disable-line @typescript-eslint/no-floating-promises\n this.terminated = true;\n }\n get isRunning() {\n return Boolean(this.onMessage);\n }\n /**\n * Send a message to this worker thread\n * @param data any data structure, ideally consisting mostly of transferrable objects\n * @param transferList If not supplied, calculated automatically by traversing data\n */\n postMessage(data, transferList) {\n transferList = transferList || getTransferList(data);\n // @ts-ignore\n this.worker.postMessage(data, transferList);\n }\n // PRIVATE\n /**\n * Generate a standard Error from an ErrorEvent\n * @param event\n */\n _getErrorFromErrorEvent(event) {\n // Note Error object does not have the expected fields if loading failed completely\n // https://developer.mozilla.org/en-US/docs/Web/API/Worker#Event_handlers\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n let message = 'Failed to load ';\n message += `worker ${this.name} from ${this.url}. `;\n if (event.message) {\n message += `${event.message} in `;\n }\n // const hasFilename = event.filename && !event.filename.startsWith('blob:');\n // message += hasFilename ? event.filename : this.source.slice(0, 100);\n if (event.lineno) {\n message += `:${event.lineno}:${event.colno}`;\n }\n return new Error(message);\n }\n /**\n * Creates a worker thread on the browser\n */\n _createBrowserWorker() {\n this._loadableURL = getLoadableWorkerURL({ source: this.source, url: this.url });\n const worker = new Worker(this._loadableURL, { name: this.name });\n worker.onmessage = (event) => {\n if (!event.data) {\n this.onError(new Error('No data received'));\n }\n else {\n this.onMessage(event.data);\n }\n };\n // This callback represents an uncaught exception in the worker thread\n worker.onerror = (error) => {\n this.onError(this._getErrorFromErrorEvent(error));\n this.terminated = true;\n };\n // TODO - not clear when this would be called, for now just log in case it happens\n worker.onmessageerror = (event) => console.error(event); // eslint-disable-line\n return worker;\n }\n /**\n * Creates a worker thread in node.js\n * @todo https://nodejs.org/api/async_hooks.html#async-resource-worker-pool\n */\n _createNodeWorker() {\n let worker;\n if (this.url) {\n // Make sure relative URLs start with './'\n const absolute = this.url.includes(':/') || this.url.startsWith('/');\n const url = absolute ? this.url : `./${this.url}`;\n // console.log('Starting work from', url);\n worker = new NodeWorker(url, { eval: false });\n }\n else if (this.source) {\n worker = new NodeWorker(this.source, { eval: true });\n }\n else {\n throw new Error('no worker');\n }\n worker.on('message', (data) => {\n // console.error('message', data);\n this.onMessage(data);\n });\n worker.on('error', (error) => {\n // console.error('error', error);\n this.onError(error);\n });\n worker.on('exit', (code) => {\n // console.error('exit', code);\n });\n return worker;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isMobile, isBrowser } from \"../env-utils/globals.js\";\nimport WorkerThread from \"./worker-thread.js\";\nimport WorkerJob from \"./worker-job.js\";\n/**\n * Process multiple data messages with small pool of identical workers\n */\nexport default class WorkerPool {\n name = 'unnamed';\n source; // | Function;\n url;\n maxConcurrency = 1;\n maxMobileConcurrency = 1;\n onDebug = () => { };\n reuseWorkers = true;\n props = {};\n jobQueue = [];\n idleQueue = [];\n count = 0;\n isDestroyed = false;\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return WorkerThread.isSupported();\n }\n /**\n * @param processor - worker function\n * @param maxConcurrency - max count of workers\n */\n constructor(props) {\n this.source = props.source;\n this.url = props.url;\n this.setProps(props);\n }\n /**\n * Terminates all workers in the pool\n * @note Can free up significant memory\n */\n destroy() {\n // Destroy idle workers, active Workers will be destroyed on completion\n this.idleQueue.forEach((worker) => worker.destroy());\n this.isDestroyed = true;\n }\n setProps(props) {\n this.props = { ...this.props, ...props };\n if (props.name !== undefined) {\n this.name = props.name;\n }\n if (props.maxConcurrency !== undefined) {\n this.maxConcurrency = props.maxConcurrency;\n }\n if (props.maxMobileConcurrency !== undefined) {\n this.maxMobileConcurrency = props.maxMobileConcurrency;\n }\n if (props.reuseWorkers !== undefined) {\n this.reuseWorkers = props.reuseWorkers;\n }\n if (props.onDebug !== undefined) {\n this.onDebug = props.onDebug;\n }\n }\n async startJob(name, onMessage = (job, type, data) => job.done(data), onError = (job, error) => job.error(error)) {\n // Promise resolves when thread starts working on this job\n const startPromise = new Promise((onStart) => {\n // Promise resolves when thread completes or fails working on this job\n this.jobQueue.push({ name, onMessage, onError, onStart });\n return this;\n });\n this._startQueuedJob(); // eslint-disable-line @typescript-eslint/no-floating-promises\n return await startPromise;\n }\n // PRIVATE\n /**\n * Starts first queued job if worker is available or can be created\n * Called when job is started and whenever a worker returns to the idleQueue\n */\n async _startQueuedJob() {\n if (!this.jobQueue.length) {\n return;\n }\n const workerThread = this._getAvailableWorker();\n if (!workerThread) {\n return;\n }\n // We have a worker, dequeue and start the job\n const queuedJob = this.jobQueue.shift();\n if (queuedJob) {\n // Emit a debug event\n // @ts-ignore\n this.onDebug({\n message: 'Starting job',\n name: queuedJob.name,\n workerThread,\n backlog: this.jobQueue.length\n });\n // Create a worker job to let the app access thread and manage job completion\n const job = new WorkerJob(queuedJob.name, workerThread);\n // Set the worker thread's message handlers\n workerThread.onMessage = (data) => queuedJob.onMessage(job, data.type, data.payload);\n workerThread.onError = (error) => queuedJob.onError(job, error);\n // Resolve the start promise so that the app can start sending messages to worker\n queuedJob.onStart(job);\n // Wait for the app to signal that the job is complete, then return worker to queue\n try {\n await job.result;\n }\n catch (error) {\n // eslint-disable-next-line no-console\n console.error(`Worker exception: ${error}`);\n }\n finally {\n this.returnWorkerToQueue(workerThread);\n }\n }\n }\n /**\n * Returns a worker to the idle queue\n * Destroys the worker if\n * - pool is destroyed\n * - if this pool doesn't reuse workers\n * - if maxConcurrency has been lowered\n * @param worker\n */\n returnWorkerToQueue(worker) {\n const shouldDestroyWorker = \n // Workers on Node.js prevent the process from exiting.\n // Until we figure out how to close them before exit, we always destroy them\n !isBrowser ||\n // If the pool is destroyed, there is no reason to keep the worker around\n this.isDestroyed ||\n // If the app has disabled worker reuse, any completed workers should be destroyed\n !this.reuseWorkers ||\n // If concurrency has been lowered, this worker might be surplus to requirements\n this.count > this._getMaxConcurrency();\n if (shouldDestroyWorker) {\n worker.destroy();\n this.count--;\n }\n else {\n this.idleQueue.push(worker);\n }\n if (!this.isDestroyed) {\n this._startQueuedJob(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n /**\n * Returns idle worker or creates new worker if maxConcurrency has not been reached\n */\n _getAvailableWorker() {\n // If a worker has completed and returned to the queue, it can be used\n if (this.idleQueue.length > 0) {\n return this.idleQueue.shift() || null;\n }\n // Create fresh worker if we haven't yet created the max amount of worker threads for this worker source\n if (this.count < this._getMaxConcurrency()) {\n this.count++;\n const name = `${this.name.toLowerCase()} (#${this.count} of ${this.maxConcurrency})`;\n return new WorkerThread({ name, source: this.source, url: this.url });\n }\n // No worker available, have to wait\n return null;\n }\n _getMaxConcurrency() {\n return isMobile ? this.maxMobileConcurrency : this.maxConcurrency;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport WorkerPool from \"./worker-pool.js\";\nimport WorkerThread from \"./worker-thread.js\";\nconst DEFAULT_PROPS = {\n maxConcurrency: 3,\n maxMobileConcurrency: 1,\n reuseWorkers: true,\n onDebug: () => { }\n};\n/**\n * Process multiple jobs with a \"farm\" of different workers in worker pools.\n */\nexport default class WorkerFarm {\n props;\n workerPools = new Map();\n // singleton\n static _workerFarm;\n /** Checks if workers are supported on this platform */\n static isSupported() {\n return WorkerThread.isSupported();\n }\n /** Get the singleton instance of the global worker farm */\n static getWorkerFarm(props = {}) {\n WorkerFarm._workerFarm = WorkerFarm._workerFarm || new WorkerFarm({});\n WorkerFarm._workerFarm.setProps(props);\n return WorkerFarm._workerFarm;\n }\n /** get global instance with WorkerFarm.getWorkerFarm() */\n constructor(props) {\n this.props = { ...DEFAULT_PROPS };\n this.setProps(props);\n /** @type Map} */\n this.workerPools = new Map();\n }\n /**\n * Terminate all workers in the farm\n * @note Can free up significant memory\n */\n destroy() {\n for (const workerPool of this.workerPools.values()) {\n workerPool.destroy();\n }\n this.workerPools = new Map();\n }\n /**\n * Set props used when initializing worker pools\n * @param props\n */\n setProps(props) {\n this.props = { ...this.props, ...props };\n // Update worker pool props\n for (const workerPool of this.workerPools.values()) {\n workerPool.setProps(this._getWorkerPoolProps());\n }\n }\n /**\n * Returns a worker pool for the specified worker\n * @param options - only used first time for a specific worker name\n * @param options.name - the name of the worker - used to identify worker pool\n * @param options.url -\n * @param options.source -\n * @example\n * const job = WorkerFarm.getWorkerFarm().getWorkerPool({name, url}).startJob(...);\n */\n getWorkerPool(options) {\n const { name, source, url } = options;\n let workerPool = this.workerPools.get(name);\n if (!workerPool) {\n workerPool = new WorkerPool({\n name,\n source,\n url\n });\n workerPool.setProps(this._getWorkerPoolProps());\n this.workerPools.set(name, workerPool);\n }\n return workerPool;\n }\n _getWorkerPoolProps() {\n return {\n maxConcurrency: this.props.maxConcurrency,\n maxMobileConcurrency: this.props.maxMobileConcurrency,\n reuseWorkers: this.props.reuseWorkers,\n onDebug: this.props.onDebug\n };\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nimport { isBrowser } from \"../env-utils/globals.js\";\nimport { VERSION, NPM_TAG } from \"../env-utils/version.js\";\n/**\n * Gets worker object's name (for debugging in Chrome thread inspector window)\n */\nexport function getWorkerName(worker) {\n const warning = worker.version !== VERSION ? ` (worker-utils@${VERSION})` : '';\n return `${worker.name}@${worker.version}${warning}`;\n}\n/**\n * Generate a worker URL based on worker object and options\n * @returns A URL to one of the following:\n * - a published worker on unpkg CDN\n * - a local test worker\n * - a URL provided by the user in options\n */\nexport function getWorkerURL(worker, options = {}) {\n const workerOptions = options[worker.id] || {};\n const workerFile = isBrowser ? `${worker.id}-worker.js` : `${worker.id}-worker-node.js`;\n let url = workerOptions.workerUrl;\n // HACK: Allow for non-nested workerUrl for the CompressionWorker.\n // For the compression worker, workerOptions is currently not nested correctly. For most loaders,\n // you'd have options within an object, i.e. `{mvt: {coordinates: ...}}` but the CompressionWorker\n // puts options at the top level, not within a `compression` key (its `id`). For this reason, the\n // above `workerOptions` will always be a string (i.e. `'gzip'`) for the CompressionWorker. To not\n // break backwards compatibility, we allow the CompressionWorker to have options at the top level.\n if (!url && worker.id === 'compression') {\n url = options.workerUrl;\n }\n // If URL is test, generate local loaders.gl url\n // @ts-ignore _workerType\n if (options._workerType === 'test') {\n if (isBrowser) {\n url = `modules/${worker.module}/dist/${workerFile}`;\n }\n else {\n // In the test environment the ts-node loader requires TypeScript code\n url = `modules/${worker.module}/src/workers/${worker.id}-worker-node.ts`;\n }\n }\n // If url override is not provided, generate a URL to published version on npm CDN unpkg.com\n if (!url) {\n // GENERATE\n let version = worker.version;\n // On master we need to load npm alpha releases published with the `beta` tag\n if (version === 'latest') {\n // throw new Error('latest worker version specified');\n version = NPM_TAG;\n }\n const versionTag = version ? `@${version}` : '';\n url = `https://unpkg.com/@loaders.gl/${worker.module}${versionTag}/dist/${workerFile}`;\n }\n assert(url);\n // Allow user to override location\n return url;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../env-utils/assert.js\";\nimport { VERSION } from \"../env-utils/version.js\";\n/**\n * Check if worker is compatible with this library version\n * @param worker\n * @param libVersion\n * @returns `true` if the two versions are compatible\n */\nexport function validateWorkerVersion(worker, coreVersion = VERSION) {\n assert(worker, 'no worker provided');\n const workerVersion = worker.version;\n if (!coreVersion || !workerVersion) {\n return false;\n }\n // TODO enable when fix the __version__ injection\n // const coreVersions = parseVersion(coreVersion);\n // const workerVersions = parseVersion(workerVersion);\n // assert(\n // coreVersion.major === workerVersion.major && coreVersion.minor <= workerVersion.minor,\n // `worker: ${worker.name} is not compatible. ${coreVersion.major}.${\n // coreVersion.minor\n // }+ is required.`\n // );\n return true;\n}\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction parseVersion(version) {\n const parts = version.split('.').map(Number);\n return { major: parts[0], minor: parts[1] };\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/* global importScripts */\nimport { isBrowser, isWorker } from \"../env-utils/globals.js\";\nimport { assert } from \"../env-utils/assert.js\";\nimport { VERSION } from \"../env-utils/version.js\";\nconst loadLibraryPromises = {}; // promises\n/**\n * Dynamically loads a library (\"module\")\n *\n * - wasm library: Array buffer is returned\n * - js library: Parse JS is returned\n *\n * Method depends on environment\n * - browser - script element is created and installed on document\n * - worker - eval is called on global context\n * - node - file is required\n *\n * @param libraryUrl\n * @param moduleName\n * @param options\n */\nexport async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {\n if (moduleName) {\n libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);\n }\n // Ensure libraries are only loaded once\n loadLibraryPromises[libraryUrl] =\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);\n return await loadLibraryPromises[libraryUrl];\n}\n// TODO - sort out how to resolve paths for main/worker and dev/prod\nexport function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {\n // Check if already a URL\n if (!options.useLocalLibraries && library.startsWith('http')) {\n return library;\n }\n libraryName = libraryName || library;\n // Allow application to import and supply libraries through `options.modules`\n // TODO - See js-module-utils in loader-utils\n const modules = options.modules || {};\n if (modules[libraryName]) {\n return modules[libraryName];\n }\n // Load from local files, not from CDN scripts in Node.js\n // TODO - needs to locate the modules directory when installed!\n if (!isBrowser) {\n return `modules/${moduleName}/dist/libs/${libraryName}`;\n }\n // In browser, load from external scripts\n if (options.CDN) {\n assert(options.CDN.startsWith('http'));\n return `${options.CDN}/${moduleName}@${VERSION}/dist/libs/${libraryName}`;\n }\n // TODO - loading inside workers requires paths relative to worker script location...\n if (isWorker) {\n return `../src/libs/${libraryName}`;\n }\n return `modules/${moduleName}/src/libs/${libraryName}`;\n}\nasync function loadLibraryFromFile(libraryUrl) {\n if (libraryUrl.endsWith('wasm')) {\n return await loadAsArrayBuffer(libraryUrl);\n }\n if (!isBrowser) {\n // TODO - Node doesn't yet support dynamic import from https URLs\n // try {\n // return await import(libraryUrl);\n // } catch (error) {\n // console.error(error);\n // }\n try {\n const { requireFromFile } = globalThis.loaders || {};\n return await requireFromFile?.(libraryUrl);\n }\n catch (error) {\n console.error(error); // eslint-disable-line no-console\n return null;\n }\n }\n if (isWorker) {\n return importScripts(libraryUrl);\n }\n // TODO - fix - should be more secure than string parsing since observes CORS\n // if (isBrowser) {\n // return await loadScriptFromFile(libraryUrl);\n // }\n const scriptSource = await loadAsText(libraryUrl);\n return loadLibraryFromString(scriptSource, libraryUrl);\n}\n/*\nasync function loadScriptFromFile(libraryUrl) {\n const script = document.createElement('script');\n script.src = libraryUrl;\n return await new Promise((resolve, reject) => {\n script.onload = data => {\n resolve(data);\n };\n script.onerror = reject;\n });\n}\n*/\n// TODO - Needs security audit...\n// - Raw eval call\n// - Potentially bypasses CORS\n// Upside is that this separates fetching and parsing\n// we could create a`LibraryLoader` or`ModuleLoader`\nfunction loadLibraryFromString(scriptSource, id) {\n if (!isBrowser) {\n const { requireFromString } = globalThis.loaders || {};\n return requireFromString?.(scriptSource, id);\n }\n if (isWorker) {\n // Use lvalue trick to make eval run in global scope\n eval.call(globalThis, scriptSource); // eslint-disable-line no-eval\n // https://stackoverflow.com/questions/9107240/1-evalthis-vs-evalthis-in-javascript\n // http://perfectionkills.com/global-eval-what-are-the-options/\n return null;\n }\n const script = document.createElement('script');\n script.id = id;\n // most browsers like a separate text node but some throw an error. The second method covers those.\n try {\n script.appendChild(document.createTextNode(scriptSource));\n }\n catch (e) {\n script.text = scriptSource;\n }\n document.body.appendChild(script);\n return null;\n}\n// TODO - technique for module injection into worker, from THREE.DracoLoader...\n/*\nfunction combineWorkerWithLibrary(worker, jsContent) {\n var fn = wWorker.toString();\n var body = [\n '// injected',\n jsContent,\n '',\n '// worker',\n fn.substring(fn.indexOf('{') + 1, fn.lastIndexOf('}'))\n ].join('\\n');\n this.workerSourceURL = URL.createObjectURL(new Blob([body]));\n}\n*/\nasync function loadAsArrayBuffer(url) {\n const { readFileAsArrayBuffer } = globalThis.loaders || {};\n if (isBrowser || !readFileAsArrayBuffer || url.startsWith('http')) {\n const response = await fetch(url);\n return await response.arrayBuffer();\n }\n return await readFileAsArrayBuffer(url);\n}\n/**\n * Load a file from local file system\n * @param filename\n * @returns\n */\nasync function loadAsText(url) {\n const { readFileAsText } = globalThis.loaders || {};\n if (isBrowser || !readFileAsText || url.startsWith('http')) {\n const response = await fetch(url);\n return await response.text();\n }\n return await readFileAsText(url);\n}\n", "import { isBrowser } from '@loaders.gl/worker-utils';\nimport { WorkerFarm, getWorkerURL } from '@loaders.gl/worker-utils';\n/**\n * Determines if a loader can parse with worker\n * @param loader\n * @param options\n */\nexport function canParseWithWorker(loader, options) {\n if (!WorkerFarm.isSupported()) {\n return false;\n }\n // Node workers are still experimental\n if (!isBrowser && !options?._nodeWorkers) {\n return false;\n }\n return loader.worker && options?.worker;\n}\n/**\n * this function expects that the worker function sends certain messages,\n * this can be automated if the worker is wrapper by a call to createLoaderWorker in @loaders.gl/loader-utils.\n */\nexport async function parseWithWorker(loader, data, options, context, parseOnMainThread) {\n const name = loader.id; // TODO\n const url = getWorkerURL(loader, options);\n const workerFarm = WorkerFarm.getWorkerFarm(options);\n const workerPool = workerFarm.getWorkerPool({ name, url });\n // options.log object contains functions which cannot be transferred\n // context.fetch & context.parse functions cannot be transferred\n // TODO - decide how to handle logging on workers\n options = JSON.parse(JSON.stringify(options));\n context = JSON.parse(JSON.stringify(context || {}));\n const job = await workerPool.startJob('process-on-worker', \n // @ts-expect-error\n onMessage.bind(null, parseOnMainThread) // eslint-disable-line @typescript-eslint/no-misused-promises\n );\n job.postMessage('process', {\n // @ts-ignore\n input: data,\n options,\n context\n });\n const result = await job.result;\n // TODO - what is going on here?\n return await result.result;\n}\n/**\n * Handle worker's responses to the main thread\n * @param job\n * @param type\n * @param payload\n */\nasync function onMessage(parseOnMainThread, job, type, payload) {\n switch (type) {\n case 'done':\n job.done(payload);\n break;\n case 'error':\n job.error(new Error(payload.error));\n break;\n case 'process':\n // Worker is asking for main thread to parseO\n const { id, input, options } = payload;\n try {\n const result = await parseOnMainThread(input, options);\n job.postMessage('done', { id, result });\n }\n catch (error) {\n const message = error instanceof Error ? error.message : 'unknown error';\n job.postMessage('error', { id, error: message });\n }\n break;\n default:\n // eslint-disable-next-line\n console.warn(`parse-with-worker unknown message ${type}`);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/**\n * Get the first characters from a binary file (interpret the first bytes as an ASCII string)\n * @param data\n * @param length\n * @returns\n */\nexport function getFirstCharacters(data, length = 5) {\n if (typeof data === 'string') {\n return data.slice(0, length);\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n return getMagicString(data.buffer, data.byteOffset, length);\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n return getMagicString(data, byteOffset, length);\n }\n return '';\n}\n/**\n * Gets a magic string from a \"file\"\n * Typically used to check or detect file format\n * @param arrayBuffer\n * @param byteOffset\n * @param length\n * @returns\n */\nexport function getMagicString(arrayBuffer, byteOffset, length) {\n if (arrayBuffer.byteLength <= byteOffset + length) {\n return '';\n }\n const dataView = new DataView(arrayBuffer);\n let magic = '';\n for (let i = 0; i < length; i++) {\n magic += String.fromCharCode(dataView.getUint8(byteOffset + i));\n }\n return magic;\n}\n", "import { getFirstCharacters } from \"../binary-utils/get-first-characters.js\";\n/**\n * Minimal JSON parser that throws more meaningful error messages\n */\nexport function parseJSON(string) {\n try {\n return JSON.parse(string);\n }\n catch (_) {\n throw new Error(`Failed to parse JSON from data starting with \"${getFirstCharacters(string)}\"`);\n }\n}\n", "/**\n * compare two binary arrays for equality\n * @param a\n * @param b\n * @param byteLength\n */\nexport function compareArrayBuffers(arrayBuffer1, arrayBuffer2, byteLength) {\n byteLength = byteLength || arrayBuffer1.byteLength;\n if (arrayBuffer1.byteLength < byteLength || arrayBuffer2.byteLength < byteLength) {\n return false;\n }\n const array1 = new Uint8Array(arrayBuffer1);\n const array2 = new Uint8Array(arrayBuffer2);\n for (let i = 0; i < array1.length; ++i) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n}\n/**\n * Concatenate a sequence of ArrayBuffers from arguments\n * @return A concatenated ArrayBuffer\n */\nexport function concatenateArrayBuffers(...sources) {\n return concatenateArrayBuffersFromArray(sources);\n}\n/**\n * Concatenate a sequence of ArrayBuffers from array\n * @return A concatenated ArrayBuffer\n */\nexport function concatenateArrayBuffersFromArray(sources) {\n // Make sure all inputs are wrapped in typed arrays\n const sourceArrays = sources.map((source2) => source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2);\n // Get length of all inputs\n const byteLength = sourceArrays.reduce((length, typedArray) => length + typedArray.byteLength, 0);\n // Allocate array with space for all inputs\n const result = new Uint8Array(byteLength);\n // Copy the subarrays\n let offset = 0;\n for (const sourceArray of sourceArrays) {\n result.set(sourceArray, offset);\n offset += sourceArray.byteLength;\n }\n // We work with ArrayBuffers, discard the typed array wrapper\n return result.buffer;\n}\n/**\n * Concatenate arbitrary count of typed arrays\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays\n * @param - list of arrays. All arrays should be the same type\n * @return A concatenated TypedArray\n */\nexport function concatenateTypedArrays(...typedArrays) {\n // @ts-ignore\n const arrays = typedArrays;\n // @ts-ignore\n const TypedArrayConstructor = (arrays && arrays.length > 1 && arrays[0].constructor) || null;\n if (!TypedArrayConstructor) {\n throw new Error('\"concatenateTypedArrays\" - incorrect quantity of arguments or arguments have incompatible data types');\n }\n const sumLength = arrays.reduce((acc, value) => acc + value.length, 0);\n // @ts-ignore typescript does not like dynamic constructors\n const result = new TypedArrayConstructor(sumLength);\n let offset = 0;\n for (const array of arrays) {\n result.set(array, offset);\n offset += array.length;\n }\n return result;\n}\n/**\n * Copy a view of an ArrayBuffer into new ArrayBuffer with byteOffset = 0\n * @param arrayBuffer\n * @param byteOffset\n * @param byteLength\n */\nexport function sliceArrayBuffer(arrayBuffer, byteOffset, byteLength) {\n const subArray = byteLength !== undefined\n ? new Uint8Array(arrayBuffer).subarray(byteOffset, byteOffset + byteLength)\n : new Uint8Array(arrayBuffer).subarray(byteOffset);\n const arrayCopy = new Uint8Array(subArray);\n return arrayCopy.buffer;\n}\n", "import { assert } from \"../env-utils/assert.js\";\n/**\n * Calculate new size of an arrayBuffer to be aligned to an n-byte boundary\n * This function increases `byteLength` by the minimum delta,\n * allowing the total length to be divided by `padding`\n * @param byteLength\n * @param padding\n */\nexport function padToNBytes(byteLength, padding) {\n assert(byteLength >= 0); // `Incorrect 'byteLength' value: ${byteLength}`\n assert(padding > 0); // `Incorrect 'padding' value: ${padding}`\n return (byteLength + (padding - 1)) & ~(padding - 1);\n}\n/**\n * Creates a new Uint8Array based on two different ArrayBuffers\n * @param targetBuffer The first buffer.\n * @param sourceBuffer The second buffer.\n * @return The new ArrayBuffer created out of the two.\n */\nexport function copyArrayBuffer(targetBuffer, sourceBuffer, byteOffset, byteLength = sourceBuffer.byteLength) {\n const targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);\n const sourceArray = new Uint8Array(sourceBuffer);\n targetArray.set(sourceArray);\n return targetBuffer;\n}\n/**\n * Copy from source to target at the targetOffset\n *\n * @param source - The data to copy\n * @param target - The destination to copy data into\n * @param targetOffset - The start offset into target to place the copied data\n * @returns the new offset taking into account proper padding\n */\nexport function copyToArray(source, target, targetOffset) {\n let sourceArray;\n if (source instanceof ArrayBuffer) {\n sourceArray = new Uint8Array(source);\n }\n else {\n // Pack buffer onto the big target array\n //\n // 'source.data.buffer' could be a view onto a larger buffer.\n // We MUST use this constructor to ensure the byteOffset and byteLength is\n // set to correct values from 'source.data' and not the underlying\n // buffer for target.set() to work properly.\n const srcByteOffset = source.byteOffset;\n const srcByteLength = source.byteLength;\n // In gltf parser it is set as \"arrayBuffer\" instead of \"buffer\"\n // https://github.com/visgl/loaders.gl/blob/1e3a82a0a65d7b6a67b1e60633453e5edda2960a/modules/gltf/src/lib/parse-gltf.js#L85\n sourceArray = new Uint8Array(source.buffer || source.arrayBuffer, srcByteOffset, srcByteLength);\n }\n // Pack buffer onto the big target array\n target.set(sourceArray, targetOffset);\n return targetOffset + padToNBytes(sourceArray.byteLength, 4);\n}\n", "import { concatenateArrayBuffers } from \"../binary-utils/array-buffer-utils.js\";\n// GENERAL UTILITIES\n/**\n * Iterate over async iterator, without resetting iterator if end is not reached\n * - forEach intentionally does not reset iterator if exiting loop prematurely\n * so that iteration can continue in a second loop\n * - It is recommended to use a standard for-await as last loop to ensure\n * iterator gets properly reset\n *\n * TODO - optimize using sync iteration if argument is an Iterable?\n *\n * @param iterator\n * @param visitor\n */\nexport async function forEach(iterator, visitor) {\n // eslint-disable-next-line\n while (true) {\n const { done, value } = await iterator.next();\n if (done) {\n iterator.return();\n return;\n }\n const cancel = visitor(value);\n if (cancel) {\n return;\n }\n }\n}\n// Breaking big data into iterable chunks, concatenating iterable chunks into big data objects\n/**\n * Concatenates all data chunks yielded by an (async) iterator\n * This function can e.g. be used to enable atomic parsers to work on (async) iterator inputs\n */\nexport async function concatenateArrayBuffersAsync(asyncIterator) {\n const arrayBuffers = [];\n for await (const chunk of asyncIterator) {\n arrayBuffers.push(chunk);\n }\n return concatenateArrayBuffers(...arrayBuffers);\n}\nexport async function concatenateStringsAsync(asyncIterator) {\n const strings = [];\n for await (const chunk of asyncIterator) {\n strings.push(chunk);\n }\n return strings.join('');\n}\n", "// Simple file alias mechanisms for tests.\nlet pathPrefix = '';\nconst fileAliases = {};\n/*\n * Set a relative path prefix\n */\nexport function setPathPrefix(prefix) {\n pathPrefix = prefix;\n}\n/*\n * Get the relative path prefix\n */\nexport function getPathPrefix() {\n return pathPrefix;\n}\n/**\n *\n * @param aliases\n *\n * Note: addAliases are an experimental export, they are only for testing of loaders.gl loaders\n * not intended as a generic aliasing mechanism\n */\nexport function addAliases(aliases) {\n Object.assign(fileAliases, aliases);\n}\n/**\n * Resolves aliases and adds path-prefix to paths\n */\nexport function resolvePath(filename) {\n for (const alias in fileAliases) {\n if (filename.startsWith(alias)) {\n const replacement = fileAliases[alias];\n filename = filename.replace(alias, replacement);\n }\n }\n if (!filename.startsWith('http://') && !filename.startsWith('https://')) {\n filename = `${pathPrefix}${filename}`;\n }\n return filename;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Isolates Buffer references to ensure they are only bundled under Node.js (avoids big webpack polyfill)\n// this file is selected by the package.json \"browser\" field).\n/**\n * Convert Buffer to ArrayBuffer\n * Converts Node.js `Buffer` to `ArrayBuffer` (without triggering bundler to include Buffer polyfill on browser)\n * @todo better data type\n */\nexport function toArrayBuffer(buffer) {\n return buffer;\n}\n/**\n * Convert (copy) ArrayBuffer to Buffer\n */\nexport function toBuffer(binaryData) {\n throw new Error('Buffer not supported in browser');\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport * as node from \"../node/buffer.js\";\n/**\n * Check for Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n */\nexport function isBuffer(value) {\n return value && typeof value === 'object' && value.isBuffer;\n}\n/**\n * Converts to Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n * @todo better data type\n */\nexport function toBuffer(data) {\n return node.toBuffer ? node.toBuffer(data) : data;\n}\n/**\n * Convert an object to an array buffer\n */\nexport function toArrayBuffer(data) {\n // Note: Should be called first, Buffers can trigger other detections below\n if (isBuffer(data)) {\n return node.toArrayBuffer(data);\n }\n if (data instanceof ArrayBuffer) {\n return data;\n }\n // Careful - Node Buffers look like Uint8Arrays (keep after isBuffer)\n if (ArrayBuffer.isView(data)) {\n if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {\n return data.buffer;\n }\n return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);\n }\n if (typeof data === 'string') {\n const text = data;\n const uint8Array = new TextEncoder().encode(text);\n return uint8Array.buffer;\n }\n // HACK to support Blob polyfill\n if (data && typeof data === 'object' && data._toArrayBuffer) {\n return data._toArrayBuffer();\n }\n throw new Error('toArrayBuffer');\n}\n", "// Beginning of a minimal implementation of the Node.js path API, that doesn't pull in big polyfills.\nimport { getCWD } from \"./get-cwd.js\";\n/**\n * Replacement for Node.js path.filename\n * @param url\n */\nexport function filename(url) {\n const slashIndex = url ? url.lastIndexOf('/') : -1;\n return slashIndex >= 0 ? url.substr(slashIndex + 1) : '';\n}\n/**\n * Replacement for Node.js path.dirname\n * @param url\n */\nexport function dirname(url) {\n const slashIndex = url ? url.lastIndexOf('/') : -1;\n return slashIndex >= 0 ? url.substr(0, slashIndex) : '';\n}\n/**\n * Replacement for Node.js path.join\n * @param parts\n */\nexport function join(...parts) {\n const separator = '/';\n parts = parts.map((part, index) => {\n if (index) {\n part = part.replace(new RegExp(`^${separator}`), '');\n }\n if (index !== parts.length - 1) {\n part = part.replace(new RegExp(`${separator}$`), '');\n }\n return part;\n });\n return parts.join(separator);\n}\n/* eslint-disable no-continue */\n/**\n * https://nodejs.org/api/path.html#path_path_resolve_paths\n * @param paths A sequence of paths or path segments.\n * @return resolved path\n * Forked from BTOdell/path-resolve under MIT license\n * @see https://github.com/BTOdell/path-resolve/blob/master/LICENSE\n */\nexport function resolve(...components) {\n const paths = [];\n for (let _i = 0; _i < components.length; _i++) {\n paths[_i] = components[_i];\n }\n let resolvedPath = '';\n let resolvedAbsolute = false;\n let cwd;\n for (let i = paths.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n let path;\n if (i >= 0) {\n path = paths[i];\n }\n else {\n if (cwd === undefined) {\n cwd = getCWD();\n }\n path = cwd;\n }\n // Skip empty entries\n if (path.length === 0) {\n continue;\n }\n resolvedPath = `${path}/${resolvedPath}`;\n resolvedAbsolute = path.charCodeAt(0) === SLASH;\n }\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n // Normalize the path (removes leading slash)\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n if (resolvedAbsolute) {\n return `/${resolvedPath}`;\n }\n else if (resolvedPath.length > 0) {\n return resolvedPath;\n }\n return '.';\n}\nconst SLASH = 47;\nconst DOT = 46;\n/**\n * Resolves . and .. elements in a path with directory names\n * Forked from BTOdell/path-resolve under MIT license\n * @see https://github.com/BTOdell/path-resolve/blob/master/LICENSE\n */\n/* eslint-disable max-depth */\n// eslint-disable-next-line complexity, max-statements\nfunction normalizeStringPosix(path, allowAboveRoot) {\n let res = '';\n let lastSlash = -1;\n let dots = 0;\n let code;\n let isAboveRoot = false;\n for (let i = 0; i <= path.length; ++i) {\n if (i < path.length) {\n code = path.charCodeAt(i);\n }\n else if (code === SLASH) {\n break;\n }\n else {\n code = SLASH;\n }\n if (code === SLASH) {\n if (lastSlash === i - 1 || dots === 1) {\n // NOOP\n }\n else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 ||\n !isAboveRoot ||\n res.charCodeAt(res.length - 1) !== DOT ||\n res.charCodeAt(res.length - 2) !== DOT) {\n if (res.length > 2) {\n const start = res.length - 1;\n let j = start;\n for (; j >= 0; --j) {\n if (res.charCodeAt(j) === SLASH) {\n break;\n }\n }\n if (j !== start) {\n res = j === -1 ? '' : res.slice(0, j);\n lastSlash = i;\n dots = 0;\n isAboveRoot = false;\n continue;\n }\n }\n else if (res.length === 2 || res.length === 1) {\n res = '';\n lastSlash = i;\n dots = 0;\n isAboveRoot = false;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0) {\n res += '/..';\n }\n else {\n res = '..';\n }\n isAboveRoot = true;\n }\n }\n else {\n const slice = path.slice(lastSlash + 1, i);\n if (res.length > 0) {\n res += `/${slice}`;\n }\n else {\n res = slice;\n }\n isAboveRoot = false;\n }\n lastSlash = i;\n dots = 0;\n }\n else if (code === DOT && dots !== -1) {\n ++dots;\n }\n else {\n dots = -1;\n }\n }\n return res;\n}\n", "// loaders.gl MIT license\nexport function getCWD() {\n if (typeof process !== 'undefined' && typeof process.cwd !== 'undefined') {\n return process.cwd();\n }\n const pathname = window.location?.pathname;\n return pathname?.slice(0, pathname.lastIndexOf('/') + 1) || '';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst isBoolean = (x) => typeof x === 'boolean';\nconst isFunction = (x) => typeof x === 'function';\nexport const isObject = (x) => x !== null && typeof x === 'object';\nexport const isPureObject = (x) => isObject(x) && x.constructor === {}.constructor;\nexport const isPromise = (x) => isObject(x) && isFunction(x.then);\nexport const isIterable = (x) => Boolean(x) && typeof x[Symbol.iterator] === 'function';\nexport const isAsyncIterable = (x) => x && typeof x[Symbol.asyncIterator] === 'function';\nexport const isIterator = (x) => x && isFunction(x.next);\nexport const isResponse = (x) => (typeof Response !== 'undefined' && x instanceof Response) ||\n (x && x.arrayBuffer && x.text && x.json);\nexport const isFile = (x) => typeof File !== 'undefined' && x instanceof File;\nexport const isBlob = (x) => typeof Blob !== 'undefined' && x instanceof Blob;\n/** Check for Node.js `Buffer` without triggering bundler to include buffer polyfill */\nexport const isBuffer = (x) => x && typeof x === 'object' && x.isBuffer;\nexport const isWritableDOMStream = (x) => isObject(x) && isFunction(x.abort) && isFunction(x.getWriter);\nexport const isReadableDOMStream = (x) => (typeof ReadableStream !== 'undefined' && x instanceof ReadableStream) ||\n (isObject(x) && isFunction(x.tee) && isFunction(x.cancel) && isFunction(x.getReader));\n// Not implemented in Firefox: && isFunction(x.pipeTo)\nexport const isWritableNodeStream = (x) => isObject(x) && isFunction(x.end) && isFunction(x.write) && isBoolean(x.writable);\nexport const isReadableNodeStream = (x) => isObject(x) && isFunction(x.read) && isFunction(x.pipe) && isBoolean(x.readable);\nexport const isReadableStream = (x) => isReadableDOMStream(x) || isReadableNodeStream(x);\nexport const isWritableStream = (x) => isWritableDOMStream(x) || isWritableNodeStream(x);\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nexport class FetchError extends Error {\n constructor(message, info) {\n super(message);\n this.reason = info.reason;\n this.url = info.url;\n this.response = info.response;\n }\n /** A best effort reason for why the fetch failed */\n reason;\n /** The URL that failed to load. Empty string if not available. */\n url;\n /** The Response object, if any. */\n response;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// TODO - build/integrate proper MIME type parsing\n// https://mimesniff.spec.whatwg.org/\nconst DATA_URL_PATTERN = /^data:([-\\w.]+\\/[-\\w.+]+)(;|,)/;\nconst MIME_TYPE_PATTERN = /^([-\\w.]+\\/[-\\w.+]+)/;\n/**\n * Compare two MIME types, case insensitively etc.\n * @param mimeType1\n * @param mimeType2\n * @returns true if the MIME types are equivalent\n * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#structure_of_a_mime_type\n */\nexport function compareMIMETypes(mimeType1, mimeType2) {\n if (mimeType1.toLowerCase() === mimeType2.toLowerCase()) {\n return true;\n }\n return false;\n}\n/**\n * Remove extra data like `charset` from MIME types\n * @param mimeString\n * @returns A clean MIME type, or an empty string\n *\n * @todo - handle more advanced MIMETYpes, multiple types\n * @todo - extract charset etc\n */\nexport function parseMIMEType(mimeString) {\n // If resource is a data url, extract any embedded mime type\n const matches = MIME_TYPE_PATTERN.exec(mimeString);\n if (matches) {\n return matches[1];\n }\n return mimeString;\n}\n/**\n * Extract MIME type from data URL\n *\n * @param mimeString\n * @returns A clean MIME type, or an empty string\n *\n * @todo - handle more advanced MIMETYpes, multiple types\n * @todo - extract charset etc\n */\nexport function parseMIMETypeFromURL(url) {\n // If resource is a data URL, extract any embedded mime type\n const matches = DATA_URL_PATTERN.exec(url);\n if (matches) {\n return matches[1];\n }\n return '';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst QUERY_STRING_PATTERN = /\\?.*/;\nexport function extractQueryString(url) {\n const matches = url.match(QUERY_STRING_PATTERN);\n return matches && matches[0];\n}\nexport function stripQueryString(url) {\n return url.replace(QUERY_STRING_PATTERN, '');\n}\nexport function shortenUrlForDisplay(url) {\n if (url.length < 50) {\n return url;\n }\n const urlEnd = url.slice(url.length - 15);\n const urlStart = url.substr(0, 32);\n return `${urlStart}...${urlEnd}`;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isResponse, isBlob } from \"../../javascript-utils/is-type.js\";\nimport { parseMIMEType, parseMIMETypeFromURL } from \"./mime-type-utils.js\";\nimport { stripQueryString } from \"./url-utils.js\";\n/**\n * Returns the URL associated with this resource.\n * The returned value may include a query string and need further processing.\n * If it cannot determine url, the corresponding value will be an empty string\n *\n * @todo string parameters are assumed to be URLs\n */\nexport function getResourceUrl(resource) {\n // If resource is a `Response`, it contains the information directly as a field\n if (isResponse(resource)) {\n const response = resource;\n return response.url;\n }\n // If the resource is a Blob or a File (subclass of Blob)\n if (isBlob(resource)) {\n const blob = resource;\n // File objects have a \"name\" property. Blob objects don't have any\n // url (name) information\n return blob.name || '';\n }\n if (typeof resource === 'string') {\n return resource;\n }\n // Unknown\n return '';\n}\n/**\n * Returns the URL associated with this resource.\n * The returned value may include a query string and need further processing.\n * If it cannot determine url, the corresponding value will be an empty string\n *\n * @todo string parameters are assumed to be URLs\n */\nexport function getResourceMIMEType(resource) {\n // If resource is a response, it contains the information directly\n if (isResponse(resource)) {\n const response = resource;\n const contentTypeHeader = response.headers.get('content-type') || '';\n const noQueryUrl = stripQueryString(response.url);\n return parseMIMEType(contentTypeHeader) || parseMIMETypeFromURL(noQueryUrl);\n }\n // If the resource is a Blob or a File (subclass of Blob)\n if (isBlob(resource)) {\n const blob = resource;\n return blob.type || '';\n }\n if (typeof resource === 'string') {\n return parseMIMETypeFromURL(resource);\n }\n // Unknown\n return '';\n}\n/**\n * Returns (approximate) content length for a resource if it can be determined.\n * Returns -1 if content length cannot be determined.\n * @param resource\n\n * @note string parameters are NOT assumed to be URLs\n */\nexport function getResourceContentLength(resource) {\n if (isResponse(resource)) {\n const response = resource;\n return response.headers['content-length'] || -1;\n }\n if (isBlob(resource)) {\n const blob = resource;\n return blob.size;\n }\n if (typeof resource === 'string') {\n // TODO - handle data URL?\n return resource.length;\n }\n if (resource instanceof ArrayBuffer) {\n return resource.byteLength;\n }\n if (ArrayBuffer.isView(resource)) {\n return resource.byteLength;\n }\n return -1;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isResponse } from \"../../javascript-utils/is-type.js\";\nimport { FetchError } from \"../fetch/fetch-error.js\";\nimport { getResourceContentLength, getResourceUrl, getResourceMIMEType } from \"./resource-utils.js\";\nimport { shortenUrlForDisplay } from \"./url-utils.js\";\n/**\n * Returns a Response object\n * Adds content-length header when possible\n *\n * @param resource\n */\nexport async function makeResponse(resource) {\n if (isResponse(resource)) {\n return resource;\n }\n // Add content-length header if possible\n const headers = {};\n const contentLength = getResourceContentLength(resource);\n if (contentLength >= 0) {\n headers['content-length'] = String(contentLength);\n }\n // `new Response(File)` does not preserve content-type and URL\n // so we add them here\n const url = getResourceUrl(resource);\n const type = getResourceMIMEType(resource);\n if (type) {\n headers['content-type'] = type;\n }\n // Add a custom header with initial bytes if available\n const initialDataUrl = await getInitialDataUrl(resource);\n if (initialDataUrl) {\n headers['x-first-bytes'] = initialDataUrl;\n }\n // TODO - is this the best way of handling strings?\n // Maybe package as data URL instead?\n if (typeof resource === 'string') {\n // Convert to ArrayBuffer to avoid Response treating it as a URL\n resource = new TextEncoder().encode(resource);\n }\n // Attempt to create a Response from the resource, adding headers and setting url\n const response = new Response(resource, { headers });\n // We can't control `Response.url` via constructor, use a property override to record URL.\n Object.defineProperty(response, 'url', { value: url });\n return response;\n}\n/**\n * Checks response status (async) and throws a helpful error message if status is not OK.\n * @param response\n */\nexport async function checkResponse(response) {\n if (!response.ok) {\n const error = await getResponseError(response);\n throw error;\n }\n}\n/**\n * Checks response status (sync) and throws a helpful error message if status is not OK.\n * @param response\n */\nexport function checkResponseSync(response) {\n if (!response.ok) {\n let message = `${response.status} ${response.statusText}`;\n message = message.length > 60 ? `${message.slice(0, 60)}...` : message;\n throw new Error(message);\n }\n}\n// HELPERS\nasync function getResponseError(response) {\n const shortUrl = shortenUrlForDisplay(response.url);\n let message = `Failed to fetch resource (${response.status}) ${response.statusText}: ${shortUrl}`;\n message = message.length > 100 ? `${message.slice(0, 100)}...` : message;\n const info = {\n reason: response.statusText,\n url: response.url,\n response\n };\n try {\n const contentType = response.headers.get('Content-Type');\n info.reason = contentType?.includes('application/json')\n ? await response.json()\n : response.text();\n }\n catch (error) {\n // eslint forbids return in a finally statement, so we just catch here\n }\n return new FetchError(message, info);\n}\nasync function getInitialDataUrl(resource) {\n const INITIAL_DATA_LENGTH = 5;\n if (typeof resource === 'string') {\n return `data:,${resource.slice(0, INITIAL_DATA_LENGTH)}`;\n }\n if (resource instanceof Blob) {\n const blobSlice = resource.slice(0, 5);\n return await new Promise((resolve) => {\n const reader = new FileReader();\n reader.onload = (event) => resolve(event?.target?.result);\n reader.readAsDataURL(blobSlice);\n });\n }\n if (resource instanceof ArrayBuffer) {\n const slice = resource.slice(0, INITIAL_DATA_LENGTH);\n const base64 = arrayBufferToBase64(slice);\n return `data:base64,${base64}`;\n }\n return null;\n}\n// https://stackoverflow.com/questions/9267899/arraybuffer-to-base64-encoded-string\nfunction arrayBufferToBase64(buffer) {\n let binary = '';\n const bytes = new Uint8Array(buffer);\n for (let i = 0; i < bytes.byteLength; i++) {\n binary += String.fromCharCode(bytes[i]);\n }\n return btoa(binary);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { resolvePath } from '@loaders.gl/loader-utils';\nimport { makeResponse } from \"../utils/response-utils.js\";\n// import {FetchError} from './fetch-error';\nexport function isNodePath(url) {\n return !isRequestURL(url) && !isDataURL(url);\n}\nexport function isRequestURL(url) {\n return url.startsWith('http:') || url.startsWith('https:');\n}\nexport function isDataURL(url) {\n return url.startsWith('data:');\n}\n/**\n * fetch API compatible function\n * - Supports fetching from Node.js local file system paths\n * - Respects pathPrefix and file aliases\n */\nexport async function fetchFile(urlOrData, fetchOptions) {\n if (typeof urlOrData === 'string') {\n const url = resolvePath(urlOrData);\n // Support fetching from local file system\n if (isNodePath(url)) {\n if (globalThis.loaders?.fetchNode) {\n return globalThis.loaders?.fetchNode(url, fetchOptions);\n }\n // throw new Error(\n // 'fetchFile: globalThis.loaders.fetchNode not defined. Install @loaders.gl/polyfills'\n // );\n }\n // Call global fetch\n return await fetch(url, fetchOptions);\n }\n // TODO - should we still call fetch on non-URL inputs?\n return await makeResponse(urlOrData);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// probe.gl Log compatible loggers\nimport { Log } from '@probe.gl/log';\nexport const probeLog = new Log({ id: 'loaders.gl' });\n// Logs nothing\nexport class NullLog {\n log() {\n return () => { };\n }\n info() {\n return () => { };\n }\n warn() {\n return () => { };\n }\n error() {\n return () => { };\n }\n}\n// Logs to console\nexport class ConsoleLog {\n console;\n constructor() {\n this.console = console; // eslint-disable-line\n }\n log(...args) {\n return this.console.log.bind(this.console, ...args);\n }\n info(...args) {\n return this.console.info.bind(this.console, ...args);\n }\n warn(...args) {\n return this.console.warn.bind(this.console, ...args);\n }\n error(...args) {\n return this.console.error.bind(this.console, ...args);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser } from '@loaders.gl/loader-utils';\nimport { ConsoleLog } from \"./loggers.js\";\nexport const DEFAULT_LOADER_OPTIONS = {\n // baseUri\n fetch: null,\n mimeType: undefined,\n nothrow: false,\n log: new ConsoleLog(), // A probe.gl compatible (`log.log()()` syntax) that just logs to console\n useLocalLibraries: false,\n CDN: 'https://unpkg.com/@loaders.gl',\n worker: true, // By default, use worker if provided by loader.\n maxConcurrency: 3, // How many worker instances should be created for each loader.\n maxMobileConcurrency: 1, // How many worker instances should be created for each loader on mobile devices.\n reuseWorkers: isBrowser, // By default reuse workers in browser (Node.js refuses to terminate if browsers are running)\n _nodeWorkers: false, // By default do not support node workers\n _workerType: '', // 'test' to use locally generated workers\n limit: 0,\n _limitMB: 0,\n batchSize: 'auto',\n batchDebounceMs: 0,\n metadata: false, // TODO - currently only implemented for parseInBatches, adds initial metadata batch,\n transforms: []\n};\nexport const REMOVED_LOADER_OPTIONS = {\n throws: 'nothrow',\n dataType: '(no longer used)',\n uri: 'baseUri',\n // Warn if fetch options are used on top-level\n method: 'fetch.method',\n headers: 'fetch.headers',\n body: 'fetch.body',\n mode: 'fetch.mode',\n credentials: 'fetch.credentials',\n cache: 'fetch.cache',\n redirect: 'fetch.redirect',\n referrer: 'fetch.referrer',\n referrerPolicy: 'fetch.referrerPolicy',\n integrity: 'fetch.integrity',\n keepalive: 'fetch.keepalive',\n signal: 'fetch.signal'\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { registerJSModules } from '@loaders.gl/loader-utils';\nimport { isPureObject, isObject } from \"../../javascript-utils/is-type.js\";\nimport { probeLog, NullLog } from \"./loggers.js\";\nimport { DEFAULT_LOADER_OPTIONS, REMOVED_LOADER_OPTIONS } from \"./option-defaults.js\";\n/**\n * Helper for safely accessing global loaders.gl variables\n * Wraps initialization of global variable in function to defeat overly aggressive tree-shakers\n */\nexport function getGlobalLoaderState() {\n // @ts-ignore\n globalThis.loaders = globalThis.loaders || {};\n // @ts-ignore\n const { loaders } = globalThis;\n // Add _state object to keep separate from modules added to globalThis.loaders\n if (!loaders._state) {\n loaders._state = {};\n }\n return loaders._state;\n}\n/**\n * Store global loader options on the global object to increase chances of cross loaders-version interoperability\n * NOTE: This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks\n * @returns global loader options merged with default loader options\n */\nexport function getGlobalLoaderOptions() {\n const state = getGlobalLoaderState();\n // Ensure all default loader options from this library are mentioned\n state.globalOptions = state.globalOptions || { ...DEFAULT_LOADER_OPTIONS };\n return state.globalOptions;\n}\n/**\n * Set global loader options\n * @param options\n */\nexport function setGlobalOptions(options) {\n const state = getGlobalLoaderState();\n const globalOptions = getGlobalLoaderOptions();\n // @ts-expect-error First param looks incorrect\n state.globalOptions = normalizeOptionsInternal(globalOptions, options);\n // Make sure any new modules are registered\n registerJSModules(options.modules);\n}\n/**\n * Merges options with global opts and loader defaults, also injects baseUri\n * @param options\n * @param loader\n * @param loaders\n * @param url\n */\nexport function normalizeOptions(options, loader, loaders, url) {\n loaders = loaders || [];\n loaders = Array.isArray(loaders) ? loaders : [loaders];\n validateOptions(options, loaders);\n return normalizeOptionsInternal(loader, options, url);\n}\n// VALIDATE OPTIONS\n/**\n * Warn for unsupported options\n * @param options\n * @param loaders\n */\nfunction validateOptions(options, loaders) {\n // Check top level options\n validateOptionsObject(options, null, DEFAULT_LOADER_OPTIONS, REMOVED_LOADER_OPTIONS, loaders);\n for (const loader of loaders) {\n // Get the scoped, loader specific options from the user supplied options\n const idOptions = ((options && options[loader.id]) || {});\n // Get scoped, loader specific default and deprecated options from the selected loader\n const loaderOptions = (loader.options && loader.options[loader.id]) || {};\n const deprecatedOptions = (loader.deprecatedOptions && loader.deprecatedOptions[loader.id]) || {};\n // Validate loader specific options\n // @ts-ignore\n validateOptionsObject(idOptions, loader.id, loaderOptions, deprecatedOptions, loaders);\n }\n}\n// eslint-disable-next-line max-params, complexity\nfunction validateOptionsObject(options, id, defaultOptions, deprecatedOptions, loaders) {\n const loaderName = id || 'Top level';\n const prefix = id ? `${id}.` : '';\n for (const key in options) {\n // If top level option value is an object it could options for a loader, so ignore\n const isSubOptions = !id && isObject(options[key]);\n const isBaseUriOption = key === 'baseUri' && !id;\n const isWorkerUrlOption = key === 'workerUrl' && id;\n // .workerUrl requires special handling as it is now auto-generated and no longer specified as a default option.\n if (!(key in defaultOptions) && !isBaseUriOption && !isWorkerUrlOption) {\n // Issue deprecation warnings\n if (key in deprecatedOptions) {\n probeLog.warn(`${loaderName} loader option \\'${prefix}${key}\\' no longer supported, use \\'${deprecatedOptions[key]}\\'`)();\n }\n else if (!isSubOptions) {\n const suggestion = findSimilarOption(key, loaders);\n probeLog.warn(`${loaderName} loader option \\'${prefix}${key}\\' not recognized. ${suggestion}`)();\n }\n }\n }\n}\nfunction findSimilarOption(optionKey, loaders) {\n const lowerCaseOptionKey = optionKey.toLowerCase();\n let bestSuggestion = '';\n for (const loader of loaders) {\n for (const key in loader.options) {\n if (optionKey === key) {\n return `Did you mean \\'${loader.id}.${key}\\'?`;\n }\n const lowerCaseKey = key.toLowerCase();\n const isPartialMatch = lowerCaseOptionKey.startsWith(lowerCaseKey) || lowerCaseKey.startsWith(lowerCaseOptionKey);\n if (isPartialMatch) {\n bestSuggestion = bestSuggestion || `Did you mean \\'${loader.id}.${key}\\'?`;\n }\n }\n }\n return bestSuggestion;\n}\nfunction normalizeOptionsInternal(loader, options, url) {\n const loaderDefaultOptions = loader.options || {};\n const mergedOptions = { ...loaderDefaultOptions };\n addUrlOptions(mergedOptions, url);\n // LOGGING: options.log can be set to `null` to defeat logging\n if (mergedOptions.log === null) {\n mergedOptions.log = new NullLog();\n }\n mergeNestedFields(mergedOptions, getGlobalLoaderOptions());\n mergeNestedFields(mergedOptions, options);\n return mergedOptions;\n}\n// Merge nested options objects\nfunction mergeNestedFields(mergedOptions, options) {\n for (const key in options) {\n // Check for nested options\n // object in options => either no key in defaultOptions or object in defaultOptions\n if (key in options) {\n const value = options[key];\n if (isPureObject(value) && isPureObject(mergedOptions[key])) {\n mergedOptions[key] = {\n ...mergedOptions[key],\n ...options[key]\n };\n }\n else {\n mergedOptions[key] = options[key];\n }\n }\n // else: No need to merge nested opts, and the initial merge already copied over the nested options\n }\n}\n/**\n * Harvest information from the url\n * @deprecated This is mainly there to support a hack in the GLTFLoader\n * TODO - baseUri should be a directory, i.e. remove file component from baseUri\n * TODO - extract extension?\n * TODO - extract query parameters?\n * TODO - should these be injected on context instead of options?\n */\nfunction addUrlOptions(options, url) {\n if (url && !('baseUri' in options)) {\n options.baseUri = url;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from '@loaders.gl/loader-utils';\nexport function isLoaderObject(loader) {\n if (!loader) {\n return false;\n }\n if (Array.isArray(loader)) {\n loader = loader[0];\n }\n const hasExtensions = Array.isArray(loader?.extensions);\n /* Now handled by types and worker loaders do not have these\n let hasParser =\n loader.parseTextSync ||\n loader.parseSync ||\n loader.parse ||\n loader.parseStream || // TODO Remove, Replace with parseInBatches\n loader.parseInBatches;\n */\n return hasExtensions;\n}\nexport function normalizeLoader(loader) {\n // This error is fairly easy to trigger by mixing up import statements etc\n // So we make an exception and add a developer error message for this case\n // To help new users from getting stuck here\n assert(loader, 'null loader');\n assert(isLoaderObject(loader), 'invalid loader');\n // NORMALIZE [LOADER, OPTIONS] => LOADER\n // If [loader, options], create a new loaders object with options merged in\n let options;\n if (Array.isArray(loader)) {\n options = loader[1];\n loader = loader[0];\n loader = {\n ...loader,\n options: { ...loader.options, ...options }\n };\n }\n // NORMALIZE text and binary flags\n // Ensure at least one of text/binary flags are properly set\n // @ts-expect-error\n if (loader?.parseTextSync || loader?.parseText) {\n loader.text = true;\n }\n if (!loader.text) {\n loader.binary = true;\n }\n return loader;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { normalizeLoader } from \"../loader-utils/normalize-loader.js\";\nimport { getGlobalLoaderState } from \"../loader-utils/option-utils.js\";\n/**\n * Store global registered loaders on the global object to increase chances of cross loaders-version interoperability\n * This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks\n */\nconst getGlobalLoaderRegistry = () => {\n const state = getGlobalLoaderState();\n state.loaderRegistry = state.loaderRegistry || [];\n return state.loaderRegistry;\n};\n/** Register a list of global loaders */\nexport function registerLoaders(loaders) {\n const loaderRegistry = getGlobalLoaderRegistry();\n loaders = Array.isArray(loaders) ? loaders : [loaders];\n for (const loader of loaders) {\n const normalizedLoader = normalizeLoader(loader);\n if (!loaderRegistry.find((registeredLoader) => normalizedLoader === registeredLoader)) {\n // add to the beginning of the loaderRegistry, so the last registeredLoader get picked\n loaderRegistry.unshift(normalizedLoader);\n }\n }\n}\nexport function getRegisteredLoaders() {\n return getGlobalLoaderRegistry();\n}\n/** @deprecated For testing only */\nexport function _unregisterLoaders() {\n const state = getGlobalLoaderState();\n state.loaderRegistry = [];\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { Log } from '@probe.gl/log';\nexport const log = new Log({ id: 'loaders.gl' });\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { compareArrayBuffers, path } from '@loaders.gl/loader-utils';\nimport { normalizeLoader } from \"../loader-utils/normalize-loader.js\";\nimport { log } from \"../utils/log.js\";\nimport { getResourceUrl, getResourceMIMEType } from \"../utils/resource-utils.js\";\nimport { compareMIMETypes } from \"../utils/mime-type-utils.js\";\nimport { getRegisteredLoaders } from \"./register-loaders.js\";\nimport { isBlob } from \"../../javascript-utils/is-type.js\";\nimport { stripQueryString } from \"../utils/url-utils.js\";\nconst EXT_PATTERN = /\\.([^.]+)$/;\n// TODO - Need a variant that peeks at streams for parseInBatches\n// TODO - Detect multiple matching loaders? Use heuristics to grade matches?\n// TODO - Allow apps to pass context to disambiguate between multiple matches (e.g. multiple .json formats)?\n/**\n * Find a loader that matches file extension and/or initial file content\n * Search the loaders array argument for a loader that matches url extension or initial data\n * Returns: a normalized loader\n * @param data data to assist\n * @param loaders\n * @param options\n * @param context used internally, applications should not provide this parameter\n */\nexport async function selectLoader(data, loaders = [], options, context) {\n if (!validHTTPResponse(data)) {\n return null;\n }\n // First make a sync attempt, disabling exceptions\n let loader = selectLoaderSync(data, loaders, { ...options, nothrow: true }, context);\n if (loader) {\n return loader;\n }\n // For Blobs and Files, try to asynchronously read a small initial slice and test again with that\n // to see if we can detect by initial content\n if (isBlob(data)) {\n data = await data.slice(0, 10).arrayBuffer();\n loader = selectLoaderSync(data, loaders, options, context);\n }\n // no loader available\n if (!loader && !options?.nothrow) {\n throw new Error(getNoValidLoaderMessage(data));\n }\n return loader;\n}\n/**\n * Find a loader that matches file extension and/or initial file content\n * Search the loaders array argument for a loader that matches url extension or initial data\n * Returns: a normalized loader\n * @param data data to assist\n * @param loaders\n * @param options\n * @param context used internally, applications should not provide this parameter\n */\nexport function selectLoaderSync(data, loaders = [], options, context) {\n if (!validHTTPResponse(data)) {\n return null;\n }\n // eslint-disable-next-line complexity\n // if only a single loader was provided (not as array), force its use\n // TODO - Should this behavior be kept and documented?\n if (loaders && !Array.isArray(loaders)) {\n // TODO - remove support for legacy loaders\n return normalizeLoader(loaders);\n }\n // Build list of candidate loaders that will be searched in order for a match\n let candidateLoaders = [];\n // First search supplied loaders\n if (loaders) {\n candidateLoaders = candidateLoaders.concat(loaders);\n }\n // Then fall back to registered loaders\n if (!options?.ignoreRegisteredLoaders) {\n candidateLoaders.push(...getRegisteredLoaders());\n }\n // TODO - remove support for legacy loaders\n normalizeLoaders(candidateLoaders);\n const loader = selectLoaderInternal(data, candidateLoaders, options, context);\n // no loader available\n if (!loader && !options?.nothrow) {\n throw new Error(getNoValidLoaderMessage(data));\n }\n return loader;\n}\n/** Implements loaders selection logic */\n// eslint-disable-next-line complexity\nfunction selectLoaderInternal(data, loaders, options, context) {\n const url = getResourceUrl(data);\n const type = getResourceMIMEType(data);\n const testUrl = stripQueryString(url) || context?.url;\n let loader = null;\n let reason = '';\n // if options.mimeType is supplied, it takes precedence\n if (options?.mimeType) {\n loader = findLoaderByMIMEType(loaders, options?.mimeType);\n reason = `match forced by supplied MIME type ${options?.mimeType}`;\n }\n // Look up loader by url\n loader = loader || findLoaderByUrl(loaders, testUrl);\n reason = reason || (loader ? `matched url ${testUrl}` : '');\n // Look up loader by mime type\n loader = loader || findLoaderByMIMEType(loaders, type);\n reason = reason || (loader ? `matched MIME type ${type}` : '');\n // Look for loader via initial bytes (Note: not always accessible (e.g. Response, stream, async iterator)\n // @ts-ignore Blob | Response\n loader = loader || findLoaderByInitialBytes(loaders, data);\n // @ts-ignore Blob | Response\n reason = reason || (loader ? `matched initial data ${getFirstCharacters(data)}` : '');\n // Look up loader by fallback mime type\n if (options?.fallbackMimeType) {\n loader = loader || findLoaderByMIMEType(loaders, options?.fallbackMimeType);\n reason = reason || (loader ? `matched fallback MIME type ${type}` : '');\n }\n if (reason) {\n log.log(1, `selectLoader selected ${loader?.name}: ${reason}.`);\n }\n return loader;\n}\n/** Check HTTP Response */\nfunction validHTTPResponse(data) {\n // HANDLE HTTP status\n if (data instanceof Response) {\n // 204 - NO CONTENT. This handles cases where e.g. a tile server responds with 204 for a missing tile\n if (data.status === 204) {\n return false;\n }\n }\n return true;\n}\n/** Generate a helpful message to help explain why loader selection failed. */\nfunction getNoValidLoaderMessage(data) {\n const url = getResourceUrl(data);\n const type = getResourceMIMEType(data);\n let message = 'No valid loader found (';\n message += url ? `${path.filename(url)}, ` : 'no url provided, ';\n message += `MIME type: ${type ? `\"${type}\"` : 'not provided'}, `;\n // First characters are only accessible when called on data (string or arrayBuffer).\n // @ts-ignore Blob | Response\n const firstCharacters = data ? getFirstCharacters(data) : '';\n message += firstCharacters ? ` first bytes: \"${firstCharacters}\"` : 'first bytes: not available';\n message += ')';\n return message;\n}\nfunction normalizeLoaders(loaders) {\n for (const loader of loaders) {\n normalizeLoader(loader);\n }\n}\n// TODO - Would be nice to support http://example.com/file.glb?parameter=1\n// E.g: x = new URL('http://example.com/file.glb?load=1'; x.pathname\nfunction findLoaderByUrl(loaders, url) {\n // Get extension\n const match = url && EXT_PATTERN.exec(url);\n const extension = match && match[1];\n return extension ? findLoaderByExtension(loaders, extension) : null;\n}\nfunction findLoaderByExtension(loaders, extension) {\n extension = extension.toLowerCase();\n for (const loader of loaders) {\n for (const loaderExtension of loader.extensions) {\n if (loaderExtension.toLowerCase() === extension) {\n return loader;\n }\n }\n }\n return null;\n}\nfunction findLoaderByMIMEType(loaders, mimeType) {\n for (const loader of loaders) {\n if (loader.mimeTypes?.some((mimeType1) => compareMIMETypes(mimeType, mimeType1))) {\n return loader;\n }\n // Support referring to loaders using the \"unregistered tree\"\n // https://en.wikipedia.org/wiki/Media_type#Unregistered_tree\n if (compareMIMETypes(mimeType, `application/x.${loader.id}`)) {\n return loader;\n }\n }\n return null;\n}\nfunction findLoaderByInitialBytes(loaders, data) {\n if (!data) {\n return null;\n }\n for (const loader of loaders) {\n if (typeof data === 'string') {\n if (testDataAgainstText(data, loader)) {\n return loader;\n }\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n if (testDataAgainstBinary(data.buffer, data.byteOffset, loader)) {\n return loader;\n }\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n if (testDataAgainstBinary(data, byteOffset, loader)) {\n return loader;\n }\n }\n // TODO Handle streaming case (requires creating a new AsyncIterator)\n }\n return null;\n}\nfunction testDataAgainstText(data, loader) {\n if (loader.testText) {\n return loader.testText(data);\n }\n const tests = Array.isArray(loader.tests) ? loader.tests : [loader.tests];\n return tests.some((test) => data.startsWith(test));\n}\nfunction testDataAgainstBinary(data, byteOffset, loader) {\n const tests = Array.isArray(loader.tests) ? loader.tests : [loader.tests];\n return tests.some((test) => testBinary(data, byteOffset, loader, test));\n}\nfunction testBinary(data, byteOffset, loader, test) {\n if (test instanceof ArrayBuffer) {\n return compareArrayBuffers(test, data, test.byteLength);\n }\n switch (typeof test) {\n case 'function':\n return test(data);\n case 'string':\n // Magic bytes check: If `test` is a string, check if binary data starts with that strings\n const magic = getMagicString(data, byteOffset, test.length);\n return test === magic;\n default:\n return false;\n }\n}\nfunction getFirstCharacters(data, length = 5) {\n if (typeof data === 'string') {\n return data.slice(0, length);\n }\n else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n return getMagicString(data.buffer, data.byteOffset, length);\n }\n else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n return getMagicString(data, byteOffset, length);\n }\n return '';\n}\nfunction getMagicString(arrayBuffer, byteOffset, length) {\n if (arrayBuffer.byteLength < byteOffset + length) {\n return '';\n }\n const dataView = new DataView(arrayBuffer);\n let magic = '';\n for (let i = 0; i < length; i++) {\n magic += String.fromCharCode(dataView.getUint8(byteOffset + i));\n }\n return magic;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n/**\n * Returns an iterator that breaks a big string into chunks and yields them one-by-one as ArrayBuffers\n * @param blob string to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeStringIterator(string, options) {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n let offset = 0;\n const textEncoder = new TextEncoder();\n while (offset < string.length) {\n // Create a chunk of the right size\n const chunkLength = Math.min(string.length - offset, chunkSize);\n const chunk = string.slice(offset, offset + chunkLength);\n offset += chunkLength;\n // yield an ArrayBuffer chunk\n yield textEncoder.encode(chunk);\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n/**\n * Returns an iterator that breaks a big ArrayBuffer into chunks and yields them one-by-one\n * @param blob ArrayBuffer to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeArrayBufferIterator(arrayBuffer, options = {}) {\n const { chunkSize = DEFAULT_CHUNK_SIZE } = options;\n let byteOffset = 0;\n while (byteOffset < arrayBuffer.byteLength) {\n // Create a chunk of the right size\n const chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);\n const chunk = new ArrayBuffer(chunkByteLength);\n // Copy data from the big chunk\n const sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);\n const chunkArray = new Uint8Array(chunk);\n chunkArray.set(sourceArray);\n // yield the chunk\n byteOffset += chunkByteLength;\n yield chunk;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst DEFAULT_CHUNK_SIZE = 1024 * 1024; // 1MB \u2014 biggest value that keeps UI responsive\n/**\n * Returns an iterator that breaks a big Blob into chunks and yields them one-by-one\n * @param blob Blob or File object\n * @param options\n * @param options.chunkSize\n */\nexport async function* makeBlobIterator(blob, options) {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n let offset = 0;\n while (offset < blob.size) {\n const end = offset + chunkSize;\n const chunk = await blob.slice(offset, end).arrayBuffer();\n offset = end;\n yield chunk;\n }\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser, toArrayBuffer } from '@loaders.gl/loader-utils';\n/**\n * Returns an async iterable that reads from a stream (works in both Node.js and browsers)\n * @param stream stream to iterator over\n */\nexport function makeStreamIterator(stream, options) {\n return isBrowser\n ? makeBrowserStreamIterator(stream, options)\n : makeNodeStreamIterator(stream, options);\n}\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @see https://jakearchibald.com/2017/async-iterators-and-generators/#making-streams-iterate\n */\nasync function* makeBrowserStreamIterator(stream, options) {\n // WhatWG: stream is supposed to have a `getIterator` method\n // if (typeof stream.getIterator === 'function') {\n // return stream.getIterator();\n // }\n // if (typeof stream[Symbol.asyncIterator] === 'function') {\n // return makeToArrayBufferIterator(stream);\n // }\n // In the browser, we first need to get a lock on the stream\n const reader = stream.getReader();\n let nextBatchPromise;\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const currentBatchPromise = nextBatchPromise || reader.read();\n // Issue a read for an additional batch, while we await the next batch\n // Idea is to make fetching happen in parallel with processing / parsing\n if (options?._streamReadAhead) {\n nextBatchPromise = reader.read();\n }\n // Read from the stream\n // value is a Uint8Array\n const { done, value } = await currentBatchPromise;\n // Exit if we're done\n if (done) {\n return;\n }\n // Else yield the chunk\n yield toArrayBuffer(value);\n }\n }\n catch (error) {\n // TODO - examples makes it look like this should always be called,\n // but that generates exceptions so only call it if we do not reach the end\n reader.releaseLock();\n }\n}\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @note Requires Node.js >= 10\n */\nasync function* makeNodeStreamIterator(stream, options) {\n // Hacky test for node version to ensure we don't call bad polyfills\n // NODE 10+: stream is an asyncIterator\n for await (const chunk of stream) {\n yield toArrayBuffer(chunk); // Coerce each chunk to ArrayBuffer\n }\n}\n/* TODO - remove NODE < 10\n * @see https://github.com/bustle/streaming-iterables, MIT license\n *\n if (typeof stream[Symbol.asyncIterator] === 'function') {\n return;\n }\n\n // TODO - check if is this ever used in Node 10+?\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const data = stream.read();\n if (data !== null) {\n yield toArrayBuffer(data);\n // eslint-disable-next-line no-continue\n continue;\n }\n if (stream._readableState?.ended) {\n return;\n }\n await onceReadable(stream);\n }\n\nasync function onceReadable(stream: Readable): Promise {\n return new Promise((resolve) => {\n stream.once('readable', resolve);\n });\n}\n */\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { makeStringIterator } from \"./make-string-iterator.js\";\nimport { makeArrayBufferIterator } from \"./make-array-buffer-iterator.js\";\nimport { makeBlobIterator } from \"./make-blob-iterator.js\";\nimport { makeStreamIterator } from \"./make-stream-iterator.js\";\nimport { isBlob, isReadableStream, isResponse } from \"../../javascript-utils/is-type.js\";\n/**\n * Returns an iterator that breaks its input into chunks and yields them one-by-one.\n * @param data\n * @param options\n * @returns\n * This function can e.g. be used to enable data sources that can only be read atomically\n * (such as `Blob` and `File` via `FileReader`) to still be parsed in batches.\n */\nexport function makeIterator(data, options) {\n if (typeof data === 'string') {\n // Note: Converts string chunks to binary\n return makeStringIterator(data, options);\n }\n if (data instanceof ArrayBuffer) {\n return makeArrayBufferIterator(data, options);\n }\n if (isBlob(data)) {\n return makeBlobIterator(data, options);\n }\n if (isReadableStream(data)) {\n return makeStreamIterator(data, options);\n }\n if (isResponse(data)) {\n const response = data;\n return makeStreamIterator(response.body, options);\n }\n throw new Error('makeIterator');\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { concatenateArrayBuffersAsync } from '@loaders.gl/loader-utils';\nimport { isResponse, isReadableStream, isAsyncIterable, isIterable, isIterator, isBlob, isBuffer } from \"../../javascript-utils/is-type.js\";\nimport { makeIterator } from \"../../iterators/make-iterator/make-iterator.js\";\nimport { checkResponse, makeResponse } from \"../utils/response-utils.js\";\nconst ERR_DATA = 'Cannot convert supplied data type';\n// eslint-disable-next-line complexity\nexport function getArrayBufferOrStringFromDataSync(data, loader, options) {\n if (loader.text && typeof data === 'string') {\n return data;\n }\n if (isBuffer(data)) {\n // @ts-ignore\n data = data.buffer;\n }\n if (data instanceof ArrayBuffer) {\n const arrayBuffer = data;\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(arrayBuffer);\n }\n return arrayBuffer;\n }\n // We may need to handle offsets\n if (ArrayBuffer.isView(data)) {\n // TextDecoder is invoked on typed arrays and will handle offsets\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(data);\n }\n let arrayBuffer = data.buffer;\n // Since we are returning the underlying arrayBuffer, we must create a new copy\n // if this typed array / Buffer is a partial view into the ArryayBuffer\n // TODO - this is a potentially unnecessary copy\n const byteLength = data.byteLength || data.length;\n if (data.byteOffset !== 0 || byteLength !== arrayBuffer.byteLength) {\n // console.warn(`loaders.gl copying arraybuffer of length ${byteLength}`);\n arrayBuffer = arrayBuffer.slice(data.byteOffset, data.byteOffset + byteLength);\n }\n return arrayBuffer;\n }\n throw new Error(ERR_DATA);\n}\n// Convert async iterator to a promise\nexport async function getArrayBufferOrStringFromData(data, loader, options) {\n const isArrayBuffer = data instanceof ArrayBuffer || ArrayBuffer.isView(data);\n if (typeof data === 'string' || isArrayBuffer) {\n return getArrayBufferOrStringFromDataSync(data, loader, options);\n }\n // Blobs and files are FileReader compatible\n if (isBlob(data)) {\n data = await makeResponse(data);\n }\n if (isResponse(data)) {\n const response = data;\n await checkResponse(response);\n return loader.binary ? await response.arrayBuffer() : await response.text();\n }\n if (isReadableStream(data)) {\n // @ts-expect-error TS2559 options type\n data = makeIterator(data, options);\n }\n if (isIterable(data) || isAsyncIterable(data)) {\n // Assume arrayBuffer iterator - attempt to concatenate\n return concatenateArrayBuffersAsync(data);\n }\n throw new Error(ERR_DATA);\n}\nexport async function getAsyncIterableFromData(data, options) {\n if (isIterator(data)) {\n return data;\n }\n if (isResponse(data)) {\n const response = data;\n // Note Since this function is not async, we currently can't load error message, just status\n await checkResponse(response);\n // TODO - bug in polyfill, body can be a Promise under Node.js\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const body = await response.body;\n // TODO - body can be null?\n return makeIterator(body, options);\n }\n if (isBlob(data) || isReadableStream(data)) {\n return makeIterator(data, options);\n }\n if (isAsyncIterable(data)) {\n return data;\n }\n return getIterableFromData(data);\n}\nexport async function getReadableStream(data) {\n if (isReadableStream(data)) {\n return data;\n }\n if (isResponse(data)) {\n // @ts-ignore\n return data.body;\n }\n const response = await makeResponse(data);\n // @ts-ignore\n return response.body;\n}\n// HELPERS\nfunction getIterableFromData(data) {\n // generate an iterator that emits a single chunk\n if (ArrayBuffer.isView(data)) {\n return (function* oneChunk() {\n yield data.buffer;\n })();\n }\n if (data instanceof ArrayBuffer) {\n return (function* oneChunk() {\n yield data;\n })();\n }\n if (isIterator(data)) {\n return data;\n }\n if (isIterable(data)) {\n return data[Symbol.iterator]();\n }\n throw new Error(ERR_DATA);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isObject } from \"../../javascript-utils/is-type.js\";\nimport { fetchFile } from \"../fetch/fetch-file.js\";\nimport { getGlobalLoaderOptions } from \"./option-utils.js\";\n/**\n * Gets the current fetch function from options and context\n * @param options\n * @param context\n */\nexport function getFetchFunction(options, context) {\n const globalOptions = getGlobalLoaderOptions();\n const loaderOptions = options || globalOptions;\n // options.fetch can be a function\n if (typeof loaderOptions.fetch === 'function') {\n return loaderOptions.fetch;\n }\n // options.fetch can be an options object\n if (isObject(loaderOptions.fetch)) {\n return (url) => fetchFile(url, loaderOptions.fetch);\n }\n // else refer to context (from parent loader) if available\n if (context?.fetch) {\n return context?.fetch;\n }\n // else return the default fetch function\n return fetchFile;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getFetchFunction } from \"./get-fetch-function.js\";\nimport { extractQueryString, stripQueryString } from \"../utils/url-utils.js\";\nimport { path } from '@loaders.gl/loader-utils';\n/**\n * \"sub\" loaders invoked by other loaders get a \"context\" injected on `this`\n * The context will inject core methods like `parse` and contain information\n * about loaders and options passed in to the top-level `parse` call.\n *\n * @param context\n * @param options\n * @param previousContext\n */\nexport function getLoaderContext(context, options, parentContext) {\n // For recursive calls, we already have a context\n // TODO - add any additional loaders to context?\n if (parentContext) {\n return parentContext;\n }\n const newContext = {\n fetch: getFetchFunction(options, context),\n ...context\n };\n // Parse URLs so that subloaders can easily generate correct strings\n if (newContext.url) {\n const baseUrl = stripQueryString(newContext.url);\n newContext.baseUrl = baseUrl;\n newContext.queryString = extractQueryString(newContext.url);\n newContext.filename = path.filename(baseUrl);\n newContext.baseUrl = path.dirname(baseUrl);\n }\n // Recursive loading does not use single loader\n if (!Array.isArray(newContext.loaders)) {\n newContext.loaders = null;\n }\n return newContext;\n}\n// eslint-disable-next-line complexity\nexport function getLoadersFromContext(loaders, context) {\n // A single loader (non-array) indicates no selection desired. Force select.\n if (loaders && !Array.isArray(loaders)) {\n return loaders;\n }\n // Create a merged list\n let candidateLoaders;\n if (loaders) {\n candidateLoaders = Array.isArray(loaders) ? loaders : [loaders];\n }\n if (context && context.loaders) {\n const contextLoaders = Array.isArray(context.loaders) ? context.loaders : [context.loaders];\n candidateLoaders = candidateLoaders ? [...candidateLoaders, ...contextLoaders] : contextLoaders;\n }\n // If no loaders, return null to look in globally registered loaders\n return candidateLoaders && candidateLoaders.length ? candidateLoaders : undefined;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { parseWithWorker, canParseWithWorker } from '@loaders.gl/loader-utils';\nimport { assert, validateWorkerVersion } from '@loaders.gl/worker-utils';\nimport { isLoaderObject } from \"../loader-utils/normalize-loader.js\";\nimport { isResponse } from \"../../javascript-utils/is-type.js\";\nimport { normalizeOptions } from \"../loader-utils/option-utils.js\";\nimport { mergeLoaderOptions } from '@loaders.gl/loader-utils';\nimport { getArrayBufferOrStringFromData } from \"../loader-utils/get-data.js\";\nimport { getLoaderContext, getLoadersFromContext } from \"../loader-utils/loader-context.js\";\nimport { getResourceUrl } from \"../utils/resource-utils.js\";\nimport { selectLoader } from \"./select-loader.js\";\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parse(data, loaders, options, context) {\n // Signature: parse(data, options, context | url)\n // Uses registered loaders\n if (loaders && !Array.isArray(loaders) && !isLoaderObject(loaders)) {\n context = undefined; // context not supported in short signature\n options = loaders;\n loaders = undefined;\n }\n data = await data; // Resolve any promise\n options = options || {}; // Could be invalid...\n // Extract a url for auto detection\n const url = getResourceUrl(data);\n // Chooses a loader (and normalizes it)\n // Also use any loaders in the context, new loaders take priority\n const typedLoaders = loaders;\n const candidateLoaders = getLoadersFromContext(typedLoaders, context);\n // todo hacky type cast\n const loader = await selectLoader(data, candidateLoaders, options);\n // Note: if no loader was found, if so just return null\n if (!loader) {\n return null;\n }\n // Normalize options\n // @ts-expect-error\n options = normalizeOptions(options, loader, candidateLoaders, url); // Could be invalid...\n // Get a context (if already present, will be unchanged)\n context = getLoaderContext(\n // @ts-expect-error\n { url, _parse: parse, loaders: candidateLoaders }, options, context || null);\n return await parseWithLoader(loader, data, options, context);\n}\n// TODO: support progress and abort\n// TODO - should accept loader.parseAsyncIterator and concatenate.\nasync function parseWithLoader(loader, data, options, context) {\n validateWorkerVersion(loader);\n options = mergeLoaderOptions(loader.options, options);\n if (isResponse(data)) {\n // Serialize to support passing the response to web worker\n const response = data;\n const { ok, redirected, status, statusText, type, url } = response;\n const headers = Object.fromEntries(response.headers.entries());\n // @ts-expect-error TODO - fix this\n context.response = { headers, ok, redirected, status, statusText, type, url };\n }\n data = await getArrayBufferOrStringFromData(data, loader, options);\n const loaderWithParser = loader;\n // First check for synchronous text parser, wrap results in promises\n if (loaderWithParser.parseTextSync && typeof data === 'string') {\n return loaderWithParser.parseTextSync(data, options, context);\n }\n // If we have a workerUrl and the loader can parse the given options efficiently in a worker\n if (canParseWithWorker(loader, options)) {\n return await parseWithWorker(loader, data, options, context, parse);\n }\n // Check for asynchronous parser\n if (loaderWithParser.parseText && typeof data === 'string') {\n return await loaderWithParser.parseText(data, options, context);\n }\n if (loaderWithParser.parse) {\n return await loaderWithParser.parse(data, options, context);\n }\n // This should not happen, all sync loaders should also offer `parse` function\n assert(!loaderWithParser.parseSync);\n // TBD - If asynchronous parser not available, return null\n throw new Error(`${loader.id} loader - no parser found and worker is disabled`);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/** Deduce column types from values */\nexport function getDataTypeFromValue(value, defaultNumberType = 'float32') {\n if (value instanceof Date) {\n return 'date-millisecond';\n }\n if (value instanceof Number) {\n return defaultNumberType;\n }\n if (typeof value === 'string') {\n return 'utf8';\n }\n if (value === null || value === 'undefined') {\n return 'null';\n }\n return 'null';\n}\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromArray(array) {\n let type = getDataTypeFromTypedArray(array);\n if (type !== 'null') {\n return { type, nullable: false };\n }\n if (array.length > 0) {\n type = getDataTypeFromValue(array[0]);\n return { type, nullable: true };\n }\n return { type: 'null', nullable: true };\n}\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromTypedArray(array) {\n switch (array.constructor) {\n case Int8Array:\n return 'int8';\n case Uint8Array:\n case Uint8ClampedArray:\n return 'uint8';\n case Int16Array:\n return 'int16';\n case Uint16Array:\n return 'uint16';\n case Int32Array:\n return 'int32';\n case Uint32Array:\n return 'uint32';\n case Float32Array:\n return 'float32';\n case Float64Array:\n return 'float64';\n default:\n return 'null';\n }\n}\nexport function getArrayTypeFromDataType(type, nullable) {\n if (!nullable) {\n switch (type) {\n case 'int8':\n return Int8Array;\n case 'uint8':\n return Uint8Array;\n case 'int16':\n return Int16Array;\n case 'uint16':\n return Uint16Array;\n case 'int32':\n return Int32Array;\n case 'uint32':\n return Uint32Array;\n case 'float32':\n return Float32Array;\n case 'float64':\n return Float64Array;\n default:\n break;\n }\n }\n // if (typeof BigInt64Array !== 'undefined') {\n // TYPED_ARRAY_TO_TYPE.BigInt64Array = new Int64();\n // TYPED_ARRAY_TO_TYPE.BigUint64Array = new Uint64();\n // }\n return Array;\n}\n", "/**\n * Get number of vertices in mesh\n * @param attributes\n */\nexport function getMeshSize(attributes) {\n let size = 0;\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n if (ArrayBuffer.isView(attribute)) {\n // @ts-ignore DataView doesn't have BYTES_PER_ELEMENT\n size += attribute.byteLength * attribute.BYTES_PER_ELEMENT;\n }\n }\n return size;\n}\n/**\n * Get the (axis aligned) bounding box of a mesh\n * @param attributes\n * @returns array of two vectors representing the axis aligned bounding box\n */\n// eslint-disable-next-line complexity\nexport function getMeshBoundingBox(attributes) {\n let minX = Infinity;\n let minY = Infinity;\n let minZ = Infinity;\n let maxX = -Infinity;\n let maxY = -Infinity;\n let maxZ = -Infinity;\n const positions = attributes.POSITION ? attributes.POSITION.value : [];\n const len = positions && positions.length;\n for (let i = 0; i < len; i += 3) {\n const x = positions[i];\n const y = positions[i + 1];\n const z = positions[i + 2];\n minX = x < minX ? x : minX;\n minY = y < minY ? y : minY;\n minZ = z < minZ ? z : minZ;\n maxX = x > maxX ? x : maxX;\n maxY = y > maxY ? y : maxY;\n maxZ = z > maxZ ? z : maxZ;\n }\n return [\n [minX, minY, minZ],\n [maxX, maxY, maxZ]\n ];\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getDataTypeFromTypedArray } from \"../table/simple-table/data-type.js\";\n/**\n * Create a schema for mesh attributes data\n * @param attributes\n * @param metadata\n * @returns\n */\nexport function deduceMeshSchema(attributes, metadata = {}) {\n const fields = deduceMeshFields(attributes);\n return { fields, metadata };\n}\n/**\n * Create arrow-like schema field for mesh attribute\n * @param attributeName\n * @param attribute\n * @param optionalMetadata\n * @returns\n */\nexport function deduceMeshField(name, attribute, optionalMetadata) {\n const type = getDataTypeFromTypedArray(attribute.value);\n const metadata = optionalMetadata ? optionalMetadata : makeMeshAttributeMetadata(attribute);\n return {\n name,\n type: { type: 'fixed-size-list', listSize: attribute.size, children: [{ name: 'value', type }] },\n nullable: false,\n metadata\n };\n}\n/**\n * Create fields array for mesh attributes\n * @param attributes\n * @returns\n */\nfunction deduceMeshFields(attributes) {\n const fields = [];\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n fields.push(deduceMeshField(attributeName, attribute));\n }\n return fields;\n}\n/**\n * Make metadata by mesh attribute properties\n * @param attribute\n * @returns\n */\nexport function makeMeshAttributeMetadata(attribute) {\n const result = {};\n if ('byteOffset' in attribute) {\n result.byteOffset = attribute.byteOffset.toString(10);\n }\n if ('byteStride' in attribute) {\n result.byteStride = attribute.byteStride.toString(10);\n }\n if ('normalized' in attribute) {\n result.normalized = attribute.normalized.toString();\n }\n return result;\n}\n", "// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n/**\n * Loader for the LAS (LASer) point cloud format\n * @note Does not support LAS v1.4\n */\nexport const LASLoader = {\n dataType: null,\n batchType: null,\n name: 'LAS',\n id: 'las',\n module: 'las',\n version: VERSION,\n worker: true,\n extensions: ['las', 'laz'], // LAZ is the \"compressed\" flavor of LAS,\n mimeTypes: ['application/octet-stream'], // TODO - text version?\n text: true,\n binary: true,\n tests: ['LAS'],\n options: {\n las: {\n shape: 'mesh',\n fp64: false,\n skip: 1,\n colorDepth: 8\n }\n }\n};\n", "// @ts-nocheck\n/* eslint-disable */\n/*\n * Last update 2020-07-23\n *\n * Compiled from Howard Butler's laz-perf\n * https://github.com/hobu/laz-perf\n * Under LGPL License\n *\n * To update this file:\n * - git clone https://github.com/hobu/laz-perf\n * - cd laz-perf\n * - echo 'set(CMAKE_CXX_FLAGS \"-s SINGLE_FILE=1 ${CMAKE_CXX_FLAGS}\"' >> emscripten/CMakeLists.txt\n * - mkdir build && cd build\n * - cmake .. -DEMSCRIPTEN=1 -DCMAKE_TOOLCHAIN_FILE=/emscripten//cmake/Modules/Platform/Emscripten.cmake\n * - VERBOSE=1 make\n *\n * See the laz-perf repository for required dependencies\n *\n * The result should be build/emscripten/laz-perf.asm.js\n * Copy the content of this file in the getModule function below\n */\n// laz-perf.js\nexport default function getModule() {\n var Module = typeof Module !== 'undefined' ? Module : {};\n var moduleOverrides = {};\n var key;\n for (key in Module) {\n if (Module.hasOwnProperty(key)) {\n moduleOverrides[key] = Module[key];\n }\n }\n var arguments_ = [];\n var thisProgram = './this.program';\n var quit_ = function (status, toThrow) {\n throw toThrow;\n };\n var ENVIRONMENT_IS_WEB = false;\n var ENVIRONMENT_IS_WORKER = false;\n var ENVIRONMENT_IS_NODE = false;\n var ENVIRONMENT_IS_SHELL = false;\n ENVIRONMENT_IS_WEB = typeof window === 'object';\n ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';\n ENVIRONMENT_IS_NODE =\n typeof process === 'object' &&\n typeof process.versions === 'object' &&\n typeof process.versions.node === 'string';\n ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;\n var scriptDirectory = '';\n function locateFile(path) {\n if (Module['locateFile']) {\n return Module['locateFile'](path, scriptDirectory);\n }\n return scriptDirectory + path;\n }\n var read_, readAsync, readBinary, setWindowTitle;\n var nodeFS;\n var nodePath;\n if (ENVIRONMENT_IS_NODE) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = require('path').dirname(scriptDirectory) + '/';\n }\n else {\n const dirname = typeof __dirname !== 'undefined' ? __dirname : '';\n scriptDirectory = dirname + '/';\n }\n read_ = function shell_read(filename, binary) {\n var ret = tryParseAsDataURI(filename);\n if (ret) {\n return binary ? ret : ret.toString();\n }\n if (!nodeFS)\n nodeFS = require('fs');\n if (!nodePath)\n nodePath = require('path');\n filename = nodePath['normalize'](filename);\n return nodeFS['readFileSync'](filename, binary ? null : 'utf8');\n };\n readBinary = function readBinary(filename) {\n var ret = read_(filename, true);\n if (!ret.buffer) {\n ret = new Uint8Array(ret);\n }\n assert(ret.buffer);\n return ret;\n };\n if (process['argv'].length > 1) {\n thisProgram = process['argv'][1].replace(/\\\\/g, '/');\n }\n arguments_ = process['argv'].slice(2);\n if (typeof module !== 'undefined') {\n module['exports'] = Module;\n }\n process['on']('uncaughtException', function (ex) {\n if (!(ex instanceof ExitStatus)) {\n throw ex;\n }\n });\n process['on']('unhandledRejection', abort);\n quit_ = function (status) {\n process['exit'](status);\n };\n Module['inspect'] = function () {\n return '[Emscripten Module object]';\n };\n }\n else if (ENVIRONMENT_IS_SHELL) {\n if (typeof read != 'undefined') {\n read_ = function shell_read(f) {\n var data = tryParseAsDataURI(f);\n if (data) {\n return intArrayToString(data);\n }\n return read(f);\n };\n }\n readBinary = function readBinary(f) {\n var data;\n data = tryParseAsDataURI(f);\n if (data) {\n return data;\n }\n if (typeof readbuffer === 'function') {\n return new Uint8Array(readbuffer(f));\n }\n data = read(f, 'binary');\n assert(typeof data === 'object');\n return data;\n };\n if (typeof scriptArgs != 'undefined') {\n arguments_ = scriptArgs;\n }\n else if (typeof arguments != 'undefined') {\n arguments_ = arguments;\n }\n if (typeof quit === 'function') {\n quit_ = function (status) {\n quit(status);\n };\n }\n if (typeof print !== 'undefined') {\n if (typeof console === 'undefined')\n console = {};\n console.log = print;\n console.warn = console.error = typeof printErr !== 'undefined' ? printErr : print;\n }\n }\n else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {\n if (ENVIRONMENT_IS_WORKER) {\n scriptDirectory = self.location.href;\n }\n else if (document.currentScript) {\n scriptDirectory = document.currentScript.src;\n }\n if (scriptDirectory.indexOf('blob:') !== 0) {\n scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf('/') + 1);\n }\n else {\n scriptDirectory = '';\n }\n {\n read_ = function shell_read(url) {\n try {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, false);\n xhr.send(null);\n return xhr.responseText;\n }\n catch (err) {\n var data = tryParseAsDataURI(url);\n if (data) {\n return intArrayToString(data);\n }\n throw err;\n }\n };\n if (ENVIRONMENT_IS_WORKER) {\n readBinary = function readBinary(url) {\n try {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, false);\n xhr.responseType = 'arraybuffer';\n xhr.send(null);\n return new Uint8Array(xhr.response);\n }\n catch (err) {\n var data = tryParseAsDataURI(url);\n if (data) {\n return data;\n }\n throw err;\n }\n };\n }\n readAsync = function readAsync(url, onload, onerror) {\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, true);\n xhr.responseType = 'arraybuffer';\n xhr.onload = function xhr_onload() {\n if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) {\n onload(xhr.response);\n return;\n }\n var data = tryParseAsDataURI(url);\n if (data) {\n onload(data.buffer);\n return;\n }\n onerror();\n };\n xhr.onerror = onerror;\n xhr.send(null);\n };\n }\n setWindowTitle = function (title) {\n document.title = title;\n };\n }\n else {\n }\n var out = Module['print'] || console.log.bind(console);\n var err = Module['printErr'] || console.warn.bind(console);\n for (key in moduleOverrides) {\n if (moduleOverrides.hasOwnProperty(key)) {\n Module[key] = moduleOverrides[key];\n }\n }\n moduleOverrides = null;\n if (Module['arguments'])\n arguments_ = Module['arguments'];\n if (Module['thisProgram'])\n thisProgram = Module['thisProgram'];\n if (Module['quit'])\n quit_ = Module['quit'];\n var STACK_ALIGN = 16;\n function dynamicAlloc(size) {\n var ret = HEAP32[DYNAMICTOP_PTR >> 2];\n var end = (ret + size + 15) & -16;\n HEAP32[DYNAMICTOP_PTR >> 2] = end;\n return ret;\n }\n function getNativeTypeSize(type) {\n switch (type) {\n case 'i1':\n case 'i8':\n return 1;\n case 'i16':\n return 2;\n case 'i32':\n return 4;\n case 'i64':\n return 8;\n case 'float':\n return 4;\n case 'double':\n return 8;\n default: {\n if (type[type.length - 1] === '*') {\n return 4;\n }\n else if (type[0] === 'i') {\n var bits = Number(type.substr(1));\n assert(bits % 8 === 0, 'getNativeTypeSize invalid bits ' + bits + ', type ' + type);\n return bits / 8;\n }\n else {\n return 0;\n }\n }\n }\n }\n function warnOnce(text) {\n if (!warnOnce.shown)\n warnOnce.shown = {};\n if (!warnOnce.shown[text]) {\n warnOnce.shown[text] = 1;\n err(text);\n }\n }\n var jsCallStartIndex = 1;\n var functionPointers = new Array(0);\n var funcWrappers = {};\n function dynCall(sig, ptr, args) {\n if (args && args.length) {\n return Module['dynCall_' + sig].apply(null, [ptr].concat(args));\n }\n else {\n return Module['dynCall_' + sig].call(null, ptr);\n }\n }\n var tempRet0 = 0;\n var setTempRet0 = function (value) {\n tempRet0 = value;\n };\n var getTempRet0 = function () {\n return tempRet0;\n };\n var GLOBAL_BASE = 8;\n var wasmBinary;\n if (Module['wasmBinary'])\n wasmBinary = Module['wasmBinary'];\n var noExitRuntime;\n if (Module['noExitRuntime'])\n noExitRuntime = Module['noExitRuntime'];\n function setValue(ptr, value, type, noSafe) {\n type = type || 'i8';\n if (type.charAt(type.length - 1) === '*')\n type = 'i32';\n switch (type) {\n case 'i1':\n HEAP8[ptr >> 0] = value;\n break;\n case 'i8':\n HEAP8[ptr >> 0] = value;\n break;\n case 'i16':\n HEAP16[ptr >> 1] = value;\n break;\n case 'i32':\n HEAP32[ptr >> 2] = value;\n break;\n case 'i64':\n (tempI64 = [\n value >>> 0,\n ((tempDouble = value),\n +Math_abs(tempDouble) >= +1\n ? tempDouble > +0\n ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) | 0) >>> 0\n : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) >>> 0\n : 0)\n ]),\n (HEAP32[ptr >> 2] = tempI64[0]),\n (HEAP32[(ptr + 4) >> 2] = tempI64[1]);\n break;\n case 'float':\n HEAPF32[ptr >> 2] = value;\n break;\n case 'double':\n HEAPF64[ptr >> 3] = value;\n break;\n default:\n abort('invalid type for setValue: ' + type);\n }\n }\n var ABORT = false;\n var EXITSTATUS = 0;\n function assert(condition, text) {\n if (!condition) {\n abort('Assertion failed: ' + text);\n }\n }\n function getCFunc(ident) {\n var func = Module['_' + ident];\n assert(func, 'Cannot call unknown function ' + ident + ', make sure it is exported');\n return func;\n }\n function ccall(ident, returnType, argTypes, args, opts) {\n var toC = {\n string: function (str) {\n var ret = 0;\n if (str !== null && str !== undefined && str !== 0) {\n var len = (str.length << 2) + 1;\n ret = stackAlloc(len);\n stringToUTF8(str, ret, len);\n }\n return ret;\n },\n array: function (arr) {\n var ret = stackAlloc(arr.length);\n writeArrayToMemory(arr, ret);\n return ret;\n }\n };\n function convertReturnValue(ret) {\n if (returnType === 'string')\n return UTF8ToString(ret);\n if (returnType === 'boolean')\n return Boolean(ret);\n return ret;\n }\n var func = getCFunc(ident);\n var cArgs = [];\n var stack = 0;\n if (args) {\n for (var i = 0; i < args.length; i++) {\n var converter = toC[argTypes[i]];\n if (converter) {\n if (stack === 0)\n stack = stackSave();\n cArgs[i] = converter(args[i]);\n }\n else {\n cArgs[i] = args[i];\n }\n }\n }\n var ret = func.apply(null, cArgs);\n ret = convertReturnValue(ret);\n if (stack !== 0)\n stackRestore(stack);\n return ret;\n }\n var ALLOC_NONE = 3;\n var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined;\n function UTF8ArrayToString(heap, idx, maxBytesToRead) {\n var endIdx = idx + maxBytesToRead;\n var endPtr = idx;\n while (heap[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) {\n return UTF8Decoder.decode(heap.subarray(idx, endPtr));\n }\n else {\n var str = '';\n while (idx < endPtr) {\n var u0 = heap[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n var u1 = heap[idx++] & 63;\n if ((u0 & 224) == 192) {\n str += String.fromCharCode(((u0 & 31) << 6) | u1);\n continue;\n }\n var u2 = heap[idx++] & 63;\n if ((u0 & 240) == 224) {\n u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;\n }\n else {\n u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[idx++] & 63);\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n }\n else {\n var ch = u0 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : '';\n }\n function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) {\n if (!(maxBytesToWrite > 0))\n return 0;\n var startIdx = outIdx;\n var endIdx = outIdx + maxBytesToWrite - 1;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343) {\n var u1 = str.charCodeAt(++i);\n u = (65536 + ((u & 1023) << 10)) | (u1 & 1023);\n }\n if (u <= 127) {\n if (outIdx >= endIdx)\n break;\n heap[outIdx++] = u;\n }\n else if (u <= 2047) {\n if (outIdx + 1 >= endIdx)\n break;\n heap[outIdx++] = 192 | (u >> 6);\n heap[outIdx++] = 128 | (u & 63);\n }\n else if (u <= 65535) {\n if (outIdx + 2 >= endIdx)\n break;\n heap[outIdx++] = 224 | (u >> 12);\n heap[outIdx++] = 128 | ((u >> 6) & 63);\n heap[outIdx++] = 128 | (u & 63);\n }\n else {\n if (outIdx + 3 >= endIdx)\n break;\n heap[outIdx++] = 240 | (u >> 18);\n heap[outIdx++] = 128 | ((u >> 12) & 63);\n heap[outIdx++] = 128 | ((u >> 6) & 63);\n heap[outIdx++] = 128 | (u & 63);\n }\n }\n heap[outIdx] = 0;\n return outIdx - startIdx;\n }\n function stringToUTF8(str, outPtr, maxBytesToWrite) {\n return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);\n }\n function lengthBytesUTF8(str) {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var u = str.charCodeAt(i);\n if (u >= 55296 && u <= 57343)\n u = (65536 + ((u & 1023) << 10)) | (str.charCodeAt(++i) & 1023);\n if (u <= 127)\n ++len;\n else if (u <= 2047)\n len += 2;\n else if (u <= 65535)\n len += 3;\n else\n len += 4;\n }\n return len;\n }\n var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined;\n function UTF16ToString(ptr, maxBytesToRead) {\n var endPtr = ptr;\n var idx = endPtr >> 1;\n var maxIdx = idx + maxBytesToRead / 2;\n while (!(idx >= maxIdx) && HEAPU16[idx])\n ++idx;\n endPtr = idx << 1;\n if (endPtr - ptr > 32 && UTF16Decoder) {\n return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr));\n }\n else {\n var i = 0;\n var str = '';\n while (1) {\n var codeUnit = HEAP16[(ptr + i * 2) >> 1];\n if (codeUnit == 0 || i == maxBytesToRead / 2)\n return str;\n ++i;\n str += String.fromCharCode(codeUnit);\n }\n }\n }\n function stringToUTF16(str, outPtr, maxBytesToWrite) {\n if (maxBytesToWrite === undefined) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 2)\n return 0;\n maxBytesToWrite -= 2;\n var startPtr = outPtr;\n var numCharsToWrite = maxBytesToWrite < str.length * 2 ? maxBytesToWrite / 2 : str.length;\n for (var i = 0; i < numCharsToWrite; ++i) {\n var codeUnit = str.charCodeAt(i);\n HEAP16[outPtr >> 1] = codeUnit;\n outPtr += 2;\n }\n HEAP16[outPtr >> 1] = 0;\n return outPtr - startPtr;\n }\n function lengthBytesUTF16(str) {\n return str.length * 2;\n }\n function UTF32ToString(ptr, maxBytesToRead) {\n var i = 0;\n var str = '';\n while (!(i >= maxBytesToRead / 4)) {\n var utf32 = HEAP32[(ptr + i * 4) >> 2];\n if (utf32 == 0)\n break;\n ++i;\n if (utf32 >= 65536) {\n var ch = utf32 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n else {\n str += String.fromCharCode(utf32);\n }\n }\n return str;\n }\n function stringToUTF32(str, outPtr, maxBytesToWrite) {\n if (maxBytesToWrite === undefined) {\n maxBytesToWrite = 2147483647;\n }\n if (maxBytesToWrite < 4)\n return 0;\n var startPtr = outPtr;\n var endPtr = startPtr + maxBytesToWrite - 4;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343) {\n var trailSurrogate = str.charCodeAt(++i);\n codeUnit = (65536 + ((codeUnit & 1023) << 10)) | (trailSurrogate & 1023);\n }\n HEAP32[outPtr >> 2] = codeUnit;\n outPtr += 4;\n if (outPtr + 4 > endPtr)\n break;\n }\n HEAP32[outPtr >> 2] = 0;\n return outPtr - startPtr;\n }\n function lengthBytesUTF32(str) {\n var len = 0;\n for (var i = 0; i < str.length; ++i) {\n var codeUnit = str.charCodeAt(i);\n if (codeUnit >= 55296 && codeUnit <= 57343)\n ++i;\n len += 4;\n }\n return len;\n }\n function writeArrayToMemory(array, buffer) {\n HEAP8.set(array, buffer);\n }\n function writeAsciiToMemory(str, buffer, dontAddNull) {\n for (var i = 0; i < str.length; ++i) {\n HEAP8[buffer++ >> 0] = str.charCodeAt(i);\n }\n if (!dontAddNull)\n HEAP8[buffer >> 0] = 0;\n }\n var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n Module['HEAP8'] = HEAP8 = new Int8Array(buf);\n Module['HEAP16'] = HEAP16 = new Int16Array(buf);\n Module['HEAP32'] = HEAP32 = new Int32Array(buf);\n Module['HEAPU8'] = HEAPU8 = new Uint8Array(buf);\n Module['HEAPU16'] = HEAPU16 = new Uint16Array(buf);\n Module['HEAPU32'] = HEAPU32 = new Uint32Array(buf);\n Module['HEAPF32'] = HEAPF32 = new Float32Array(buf);\n Module['HEAPF64'] = HEAPF64 = new Float64Array(buf);\n }\n var STACK_BASE = 22384, DYNAMIC_BASE = 5265264, DYNAMICTOP_PTR = 22176;\n var INITIAL_INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 167772160;\n if (Module['buffer']) {\n buffer = Module['buffer'];\n }\n else {\n buffer = new ArrayBuffer(INITIAL_INITIAL_MEMORY);\n }\n INITIAL_INITIAL_MEMORY = buffer.byteLength;\n updateGlobalBufferAndViews(buffer);\n HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;\n function callRuntimeCallbacks(callbacks) {\n while (callbacks.length > 0) {\n var callback = callbacks.shift();\n if (typeof callback == 'function') {\n callback(Module);\n continue;\n }\n var func = callback.func;\n if (typeof func === 'number') {\n if (callback.arg === undefined) {\n Module['dynCall_v'](func);\n }\n else {\n Module['dynCall_vi'](func, callback.arg);\n }\n }\n else {\n func(callback.arg === undefined ? null : callback.arg);\n }\n }\n }\n var __ATPRERUN__ = [];\n var __ATINIT__ = [];\n var __ATMAIN__ = [];\n var __ATPOSTRUN__ = [];\n var runtimeInitialized = false;\n var runtimeExited = false;\n function preRun() {\n if (Module['preRun']) {\n if (typeof Module['preRun'] == 'function')\n Module['preRun'] = [Module['preRun']];\n while (Module['preRun'].length) {\n addOnPreRun(Module['preRun'].shift());\n }\n }\n callRuntimeCallbacks(__ATPRERUN__);\n }\n function initRuntime() {\n runtimeInitialized = true;\n callRuntimeCallbacks(__ATINIT__);\n }\n function preMain() {\n callRuntimeCallbacks(__ATMAIN__);\n }\n function exitRuntime() {\n runtimeExited = true;\n }\n function postRun() {\n if (Module['postRun']) {\n if (typeof Module['postRun'] == 'function')\n Module['postRun'] = [Module['postRun']];\n while (Module['postRun'].length) {\n addOnPostRun(Module['postRun'].shift());\n }\n }\n callRuntimeCallbacks(__ATPOSTRUN__);\n }\n function addOnPreRun(cb) {\n __ATPRERUN__.unshift(cb);\n }\n function addOnPostRun(cb) {\n __ATPOSTRUN__.unshift(cb);\n }\n var Math_abs = Math.abs;\n var Math_ceil = Math.ceil;\n var Math_floor = Math.floor;\n var Math_min = Math.min;\n var runDependencies = 0;\n var runDependencyWatcher = null;\n var dependenciesFulfilled = null;\n function addRunDependency(id) {\n runDependencies++;\n if (Module['monitorRunDependencies']) {\n Module['monitorRunDependencies'](runDependencies);\n }\n }\n function removeRunDependency(id) {\n runDependencies--;\n if (Module['monitorRunDependencies']) {\n Module['monitorRunDependencies'](runDependencies);\n }\n if (runDependencies == 0) {\n if (runDependencyWatcher !== null) {\n clearInterval(runDependencyWatcher);\n runDependencyWatcher = null;\n }\n if (dependenciesFulfilled) {\n var callback = dependenciesFulfilled;\n dependenciesFulfilled = null;\n callback();\n }\n }\n }\n Module['preloadedImages'] = {};\n Module['preloadedAudios'] = {};\n function abort(what) {\n if (Module['onAbort']) {\n Module['onAbort'](what);\n }\n what += '';\n out(what);\n err(what);\n ABORT = true;\n EXITSTATUS = 1;\n what = 'abort(' + what + '). Build with -s ASSERTIONS=1 for more info.';\n throw what;\n }\n var memoryInitializer = null;\n function hasPrefix(str, prefix) {\n return String.prototype.startsWith ? str.startsWith(prefix) : str.indexOf(prefix) === 0;\n }\n var dataURIPrefix = 'data:application/octet-stream;base64,';\n function isDataURI(filename) {\n return hasPrefix(filename, dataURIPrefix);\n }\n var fileURIPrefix = 'file://';\n var tempDouble;\n var tempI64;\n __ATINIT__.push({\n func: function () {\n globalCtors();\n }\n });\n memoryInitializer =\n 'data:application/octet-stream;base64,AAAAAAAAAAAPDg0MCwoJCA4AAQMGCgoJDQECBAcLCwoMAwQFCAwMCwsGBwgJDQ0MCgoLDA0ODg0JCgsMDQ4PDggJCgsMDQ4PAAECAwQFBgcBAAECAwQFBgIBAAECAwQFAwIBAAECAwQEAwIBAAECAwUEAwIBAAECBgUEAwIBAAEHBgUEAwIBAMgPAAAoDQAAEBAAACAQAADIDwAAUA0AABAQAAAgEAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAAAAAAAAAAAASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAAAAAADgFgAAmRgAAGAQAAAAAAAA4BYAAEIZAABgEAAAAAAAAOAWAAAqGgAASA8AAAAAAAC4FgAANBsAAOAWAACfGgAAMAoAAAAAAADgFgAAaRsAAEgPAAAAAAAA4BYAAIobAABIDwAAAAAAALgWAAAPHAAA4BYAAHwcAABIDwAAAAAAAOAWAACVHAAASA8AAAAAAADgFgAA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c2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzdfRUVOU185YWxsb2NhdG9ySVM3X0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFAExBU0YATjZsYXN6aXAxM2ludmFsaWRfbWFnaWNFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmlsZSBtYWdpYyBpcyBub3QgdmFsaWQATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk42bGFzemlwMmlvNnJlYWRlcjEwYmFzaWNfZmlsZUlOUzJfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRTExX3ZhbGlkYXRvcnNFdkVVbFJOUzNfNmhlYWRlckVFX05TXzlhbGxvY2F0b3JJU0JfRUVGdlNBX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONmxhc3ppcDJpbzZoZWFkZXJFRUVFAE42bGFzemlwMjFvbGRfc3R5bGVfY29tcHJlc3Npb25FAE42bGFzemlwMTRub3RfY29tcHJlc3NlZEUAVGhlIGZpbGUgc2VlbXMgdG8gaGF2ZSBvbGQgc3R5bGUgY29tcHJlc3Npb24gd2hpY2ggaXMgbm90IHN1cHBvcnRlZABUaGUgZmlsZSBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHJlc3NlZABaTjZsYXN6aXAyaW82cmVhZGVyMTBiYXNpY19maWxlSU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUUxMV92YWxpZGF0b3JzRXZFVWxSTlMwXzZoZWFkZXJFRV8AbGFzemlwIGVuY29kZWQATjZsYXN6aXAxM25vX2xhc3ppcF92bHJFAE42bGFzemlwMjVsYXN6aXBfZm9ybWF0X3Vuc3VwcG9ydGVkRQBPbmx5IExBU3ppcCBQT0lOVFdJU0UgQ0hVTktFRCBkZWNvbXByZXNzb3IgaXMgc3VwcG9ydGVkAE5vIExBU3ppcCBWTFIgd2FzIGZvdW5kIGluIHRoZSBWTFJzIHNlY3Rpb24ATjZsYXN6aXAyMmNodW5rX3RhYmxlX3JlYWRfZXJyb3JFAENodW5rIHRhYmxlIG9mZnNldCA9PSAtMSBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZQBONmxhc3ppcDEzbm90X3N1cHBvcnRlZEUATjZsYXN6aXAyNnVua25vd25fY2h1bmtfdGFibGVfZm9ybWF0RQBjaHVua19zaXplID09IHVpbnQubWF4IGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgBUaGVyZSB3YXMgYSBwcm9ibGVtIHJlYWRpbmcgdGhlIGNodW5rIHRhYmxlAFRoZSBjaHVuayB0YWJsZSB2ZXJzaW9uIG51bWJlciBpcyB1bmtub3duAE42bGFzemlwMTFlbmRfb2ZfZmlsZUUAUmVhY2hlZCBFbmQgb2YgZmlsZQBJbnZhbGlkIG51bWJlciBvZiBzeW1ib2xzAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM5X0VFTlNfOWFsbG9jYXRvcklTOV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwMTl1bmtub3duX3NjaGVtYV90eXBlRQBUaGUgTEFaIHNjaGVtYSBpcyBub3QgcmVjb2duaXplZABONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMGR5bmFtaWNfZGVjb21wcmVzc29yRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0NfRUVOU185YWxsb2NhdG9ySVNDX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19maWVsZF9kZWNvbXByZXNzb3JJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNDX0VFRUVFRQBONmxhc3ppcDdmb3JtYXRzMTBiYXNlX2ZpZWxkRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF81ZmllbGRJTlMwXzNsYXM3Z3BzdGltZUVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczdncHN0aW1lRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU0lfRUVOU185YWxsb2NhdG9ySVNJX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfNWZpZWxkSU5TMl8zbGFzN2dwc3RpbWVFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czI2ZHluYW1pY19kZWNvbXByZXNzb3JfZmllbGRJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfNWZpZWxkSU5TMF8zbGFzM3JnYkVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczNyZ2JFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0VfRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTSV9FRU5TXzlhbGxvY2F0b3JJU0lfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl81ZmllbGRJTlMyXzNsYXMzcmdiRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNFX0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzVmaWVsZElOUzBfM2xhczEwZXh0cmFieXRlc0VOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTQ19FRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVNJX0VFTlNfOWFsbG9jYXRvcklTSV9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzVmaWVsZElOUzJfM2xhczEwZXh0cmFieXRlc0VOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRV9FRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRUVFRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTS19FRU5TXzlhbGxvY2F0b3JJU0tfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRUVFRUVFRUUATjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOU18yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOU183c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMwXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMwXzVmaWVsZElOUzBfM2xhczdwb2ludDEwRU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNEX0VFRUVOU0JfSU5TQ183Z3BzdGltZUVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU05fRUVOU185YWxsb2NhdG9ySVNOX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOU184ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlNfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlNfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMF8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMF81ZmllbGRJTlMwXzNsYXM3cG9pbnQxMEVOUzBfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRF9FRUVFTlNCX0lOU0NfM3JnYkVOU0VfSVNIX0VFRUVFRUVFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU0pfRUVFRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTTl9FRU5TXzlhbGxvY2F0b3JJU05fRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlMxXzhkZWNvZGVyczEwYXJpdGhtZXRpY0lOUzFfMmlvMThfX2lmc3RyZWFtX3dyYXBwZXJJTlMxXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzJfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzJfNWZpZWxkSU5TMl8zbGFzN3BvaW50MTBFTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0ZfRUVFRU5TRF9JTlNFXzNyZ2JFTlNHX0lTSl9FRUVFRUVFRUVFRQBONmxhc3ppcDdmb3JtYXRzMjFkeW5hbWljX2RlY29tcHJlc3NvcjFJTlNfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TXzdzdHJlYW1zMTNtZW1vcnlfc3RyZWFtRUVFRUVOUzBfMTlyZWNvcmRfZGVjb21wcmVzc29ySUpOUzBfNWZpZWxkSU5TMF8zbGFzN3BvaW50MTBFTlMwXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJU0RfRUVFRU5TQl9JTlNDXzdncHN0aW1lRU5TRV9JU0hfRUVFRU5TQl9JTlNDXzNyZ2JFTlNFX0lTS19FRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyMWR5bmFtaWNfZGVjb21wcmVzc29yMUlOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSU5TMV8yaW8xOF9faWZzdHJlYW1fd3JhcHBlcklOUzFfN3N0cmVhbXMxM21lbW9yeV9zdHJlYW1FRUVFRU5TMl8xOXJlY29yZF9kZWNvbXByZXNzb3JJSk5TMl81ZmllbGRJTlMyXzNsYXM3cG9pbnQxMEVOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElTRl9FRUVFTlNEX0lOU0VfN2dwc3RpbWVFTlNHX0lTSl9FRUVFTlNEX0lOU0VfM3JnYkVOU0dfSVNNX0VFRUVFRUVFRU5TXzE0ZGVmYXVsdF9kZWxldGVJU1FfRUVOU185YWxsb2NhdG9ySVNRX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjZsYXN6aXA3Zm9ybWF0czIxZHluYW1pY19kZWNvbXByZXNzb3IxSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJTlMxXzJpbzE4X19pZnN0cmVhbV93cmFwcGVySU5TMV83c3RyZWFtczEzbWVtb3J5X3N0cmVhbUVFRUVFTlMyXzE5cmVjb3JkX2RlY29tcHJlc3NvcklKTlMyXzVmaWVsZElOUzJfM2xhczdwb2ludDEwRU5TMl8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSVNGX0VFRUVOU0RfSU5TRV83Z3BzdGltZUVOU0dfSVNKX0VFRUVOU0RfSU5TRV8zcmdiRU5TR19JU01fRUVFRUVFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUDEwYnVmX3N0cmVhbU5TXzE0ZGVmYXVsdF9kZWxldGVJUzFfRUVOU185YWxsb2NhdG9ySVMxX0VFRUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJMTBidWZfc3RyZWFtRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTNV9FRU5TXzlhbGxvY2F0b3JJUzVfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2ZpZWxkX2RlY29tcHJlc3NvcklOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFRUVOU18xNGRlZmF1bHRfZGVsZXRlSVM4X0VFTlNfOWFsbG9jYXRvcklTOF9FRUVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZmllbGRfZGVjb21wcmVzc29ySU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWlFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWlOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElpRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElpTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJak5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWpFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWpOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElqRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElqTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJakVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJYU5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWFFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWFOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElhRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElhTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJYUVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJc05TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXNFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXNOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZElzRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZElzTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJc0VFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJaE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSWhFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSWhOUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEloRUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEloTlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJaEVFRUVFRUVFAE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TXzhkZWNvZGVyczEwYXJpdGhtZXRpY0kxMGJ1Zl9zdHJlYW1FRU5TMF81ZmllbGRJdE5TMF8yMHN0YW5kYXJkX2RpZmZfbWV0aG9kSXRFRUVFRUUATlN0M19fMjIwX19zaGFyZWRfcHRyX3BvaW50ZXJJUE42bGFzemlwN2Zvcm1hdHMyNmR5bmFtaWNfZGVjb21wcmVzc29yX2ZpZWxkSU5TMV84ZGVjb2RlcnMxMGFyaXRobWV0aWNJMTBidWZfc3RyZWFtRUVOUzJfNWZpZWxkSXROUzJfMjBzdGFuZGFyZF9kaWZmX21ldGhvZEl0RUVFRUVFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTQ19FRU5TXzlhbGxvY2F0b3JJU0NfRUVFRQBOU3QzX18yMTRkZWZhdWx0X2RlbGV0ZUlONmxhc3ppcDdmb3JtYXRzMjZkeW5hbWljX2RlY29tcHJlc3Nvcl9maWVsZElOUzFfOGRlY29kZXJzMTBhcml0aG1ldGljSTEwYnVmX3N0cmVhbUVFTlMyXzVmaWVsZEl0TlMyXzIwc3RhbmRhcmRfZGlmZl9tZXRob2RJdEVFRUVFRUVFADZMQVNaaXAAUDZMQVNaaXAAUEs2TEFTWmlwAGlpAHYAdmkAdmlpaWkAdmlpaQBpaWkAMTNEeW5hbWljTEFTWmlwAFAxM0R5bmFtaWNMQVNaaXAAUEsxM0R5bmFtaWNMQVNaaXAAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAHN0ZDo6dTE2c3RyaW5nAHN0ZDo6dTMyc3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOMTBlbXNjcmlwdGVuM3ZhbEUATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyOV9fcG9pbnRlcl90b19tZW1iZXJfdHlwZV9pbmZvRQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAF9fY3hhX2d1YXJkX2FjcXVpcmUgZGV0ZWN0ZWQgcmVjdXJzaXZlIGluaXRpYWxpemF0aW9uAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABiYXNpY19zdHJpbmcAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHZlY3Rvcg==';\n var tempDoublePtr = 22368;\n function demangle(func) {\n return func;\n }\n function demangleAll(text) {\n var regex = /\\b__Z[\\w\\d_]+/g;\n return text.replace(regex, function (x) {\n var y = demangle(x);\n return x === y ? x : y + ' [' + x + ']';\n });\n }\n function jsStackTrace() {\n var err = new Error();\n if (!err.stack) {\n try {\n throw new Error();\n }\n catch (e) {\n err = e;\n }\n if (!err.stack) {\n return '(no stack trace available)';\n }\n }\n return err.stack.toString();\n }\n function ___cxa_allocate_exception(size) {\n return _malloc(size);\n }\n var ___exception_infos = {};\n var ___exception_caught = [];\n function ___exception_addRef(ptr) {\n if (!ptr)\n return;\n var info = ___exception_infos[ptr];\n info.refcount++;\n }\n function ___exception_deAdjust(adjusted) {\n if (!adjusted || ___exception_infos[adjusted])\n return adjusted;\n for (var key in ___exception_infos) {\n var ptr = +key;\n var adj = ___exception_infos[ptr].adjusted;\n var len = adj.length;\n for (var i = 0; i < len; i++) {\n if (adj[i] === adjusted) {\n return ptr;\n }\n }\n }\n return adjusted;\n }\n function ___cxa_begin_catch(ptr) {\n var info = ___exception_infos[ptr];\n if (info && !info.caught) {\n info.caught = true;\n __ZSt18uncaught_exceptionv.uncaught_exceptions--;\n }\n if (info)\n info.rethrown = false;\n ___exception_caught.push(ptr);\n ___exception_addRef(___exception_deAdjust(ptr));\n return ptr;\n }\n var ___exception_last = 0;\n function ___cxa_throw(ptr, type, destructor) {\n ___exception_infos[ptr] = {\n ptr: ptr,\n adjusted: [ptr],\n type: type,\n destructor: destructor,\n refcount: 0,\n caught: false,\n rethrown: false\n };\n ___exception_last = ptr;\n if (!('uncaught_exception' in __ZSt18uncaught_exceptionv)) {\n __ZSt18uncaught_exceptionv.uncaught_exceptions = 1;\n }\n else {\n __ZSt18uncaught_exceptionv.uncaught_exceptions++;\n }\n throw ptr;\n }\n function ___cxa_uncaught_exceptions() {\n return __ZSt18uncaught_exceptionv.uncaught_exceptions;\n }\n function ___gxx_personality_v0() { }\n function getShiftFromSize(size) {\n switch (size) {\n case 1:\n return 0;\n case 2:\n return 1;\n case 4:\n return 2;\n case 8:\n return 3;\n default:\n throw new TypeError('Unknown type size: ' + size);\n }\n }\n function embind_init_charCodes() {\n var codes = new Array(256);\n for (var i = 0; i < 256; ++i) {\n codes[i] = String.fromCharCode(i);\n }\n embind_charCodes = codes;\n }\n var embind_charCodes = undefined;\n function readLatin1String(ptr) {\n var ret = '';\n var c = ptr;\n while (HEAPU8[c]) {\n ret += embind_charCodes[HEAPU8[c++]];\n }\n return ret;\n }\n var awaitingDependencies = {};\n var registeredTypes = {};\n var typeDependencies = {};\n var char_0 = 48;\n var char_9 = 57;\n function makeLegalFunctionName(name) {\n if (undefined === name) {\n return '_unknown';\n }\n name = name.replace(/[^a-zA-Z0-9_]/g, '$');\n var f = name.charCodeAt(0);\n if (f >= char_0 && f <= char_9) {\n return '_' + name;\n }\n else {\n return name;\n }\n }\n function createNamedFunction(name, body) {\n name = makeLegalFunctionName(name);\n return new Function('body', 'return function ' +\n name +\n '() {\\n' +\n ' \"use strict\";' +\n ' return body.apply(this, arguments);\\n' +\n '};\\n')(body);\n }\n function extendError(baseErrorType, errorName) {\n var errorClass = createNamedFunction(errorName, function (message) {\n this.name = errorName;\n this.message = message;\n var stack = new Error(message).stack;\n if (stack !== undefined) {\n this.stack = this.toString() + '\\n' + stack.replace(/^Error(:[^\\n]*)?\\n/, '');\n }\n });\n errorClass.prototype = Object.create(baseErrorType.prototype);\n errorClass.prototype.constructor = errorClass;\n errorClass.prototype.toString = function () {\n if (this.message === undefined) {\n return this.name;\n }\n else {\n return this.name + ': ' + this.message;\n }\n };\n return errorClass;\n }\n var BindingError = undefined;\n function throwBindingError(message) {\n throw new BindingError(message);\n }\n var InternalError = undefined;\n function throwInternalError(message) {\n throw new InternalError(message);\n }\n function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {\n myTypes.forEach(function (type) {\n typeDependencies[type] = dependentTypes;\n });\n function onComplete(typeConverters) {\n var myTypeConverters = getTypeConverters(typeConverters);\n if (myTypeConverters.length !== myTypes.length) {\n throwInternalError('Mismatched type converter count');\n }\n for (var i = 0; i < myTypes.length; ++i) {\n registerType(myTypes[i], myTypeConverters[i]);\n }\n }\n var typeConverters = new Array(dependentTypes.length);\n var unregisteredTypes = [];\n var registered = 0;\n dependentTypes.forEach(function (dt, i) {\n if (registeredTypes.hasOwnProperty(dt)) {\n typeConverters[i] = registeredTypes[dt];\n }\n else {\n unregisteredTypes.push(dt);\n if (!awaitingDependencies.hasOwnProperty(dt)) {\n awaitingDependencies[dt] = [];\n }\n awaitingDependencies[dt].push(function () {\n typeConverters[i] = registeredTypes[dt];\n ++registered;\n if (registered === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n });\n }\n });\n if (0 === unregisteredTypes.length) {\n onComplete(typeConverters);\n }\n }\n function registerType(rawType, registeredInstance, options) {\n options = options || {};\n if (!('argPackAdvance' in registeredInstance)) {\n throw new TypeError('registerType registeredInstance requires argPackAdvance');\n }\n var name = registeredInstance.name;\n if (!rawType) {\n throwBindingError('type \"' + name + '\" must have a positive integer typeid pointer');\n }\n if (registeredTypes.hasOwnProperty(rawType)) {\n if (options.ignoreDuplicateRegistrations) {\n return;\n }\n else {\n throwBindingError(\"Cannot register type '\" + name + \"' twice\");\n }\n }\n registeredTypes[rawType] = registeredInstance;\n delete typeDependencies[rawType];\n if (awaitingDependencies.hasOwnProperty(rawType)) {\n var callbacks = awaitingDependencies[rawType];\n delete awaitingDependencies[rawType];\n callbacks.forEach(function (cb) {\n cb();\n });\n }\n }\n function __embind_register_bool(rawType, name, size, trueValue, falseValue) {\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (wt) {\n return !!wt;\n },\n toWireType: function (destructors, o) {\n return o ? trueValue : falseValue;\n },\n argPackAdvance: 8,\n readValueFromPointer: function (pointer) {\n var heap;\n if (size === 1) {\n heap = HEAP8;\n }\n else if (size === 2) {\n heap = HEAP16;\n }\n else if (size === 4) {\n heap = HEAP32;\n }\n else {\n throw new TypeError('Unknown boolean type size: ' + name);\n }\n return this['fromWireType'](heap[pointer >> shift]);\n },\n destructorFunction: null\n });\n }\n function ClassHandle_isAliasOf(other) {\n if (!(this instanceof ClassHandle)) {\n return false;\n }\n if (!(other instanceof ClassHandle)) {\n return false;\n }\n var leftClass = this.$$.ptrType.registeredClass;\n var left = this.$$.ptr;\n var rightClass = other.$$.ptrType.registeredClass;\n var right = other.$$.ptr;\n while (leftClass.baseClass) {\n left = leftClass.upcast(left);\n leftClass = leftClass.baseClass;\n }\n while (rightClass.baseClass) {\n right = rightClass.upcast(right);\n rightClass = rightClass.baseClass;\n }\n return leftClass === rightClass && left === right;\n }\n function shallowCopyInternalPointer(o) {\n return {\n count: o.count,\n deleteScheduled: o.deleteScheduled,\n preservePointerOnDelete: o.preservePointerOnDelete,\n ptr: o.ptr,\n ptrType: o.ptrType,\n smartPtr: o.smartPtr,\n smartPtrType: o.smartPtrType\n };\n }\n function throwInstanceAlreadyDeleted(obj) {\n function getInstanceTypeName(handle) {\n return handle.$$.ptrType.registeredClass.name;\n }\n throwBindingError(getInstanceTypeName(obj) + ' instance already deleted');\n }\n var finalizationGroup = false;\n function detachFinalizer(handle) { }\n function runDestructor($$) {\n if ($$.smartPtr) {\n $$.smartPtrType.rawDestructor($$.smartPtr);\n }\n else {\n $$.ptrType.registeredClass.rawDestructor($$.ptr);\n }\n }\n function releaseClassHandle($$) {\n $$.count.value -= 1;\n var toDelete = 0 === $$.count.value;\n if (toDelete) {\n runDestructor($$);\n }\n }\n function attachFinalizer(handle) {\n if ('undefined' === typeof FinalizationGroup) {\n attachFinalizer = function (handle) {\n return handle;\n };\n return handle;\n }\n finalizationGroup = new FinalizationGroup(function (iter) {\n for (var result = iter.next(); !result.done; result = iter.next()) {\n var $$ = result.value;\n if (!$$.ptr) {\n console.warn('object already deleted: ' + $$.ptr);\n }\n else {\n releaseClassHandle($$);\n }\n }\n });\n attachFinalizer = function (handle) {\n finalizationGroup.register(handle, handle.$$, handle.$$);\n return handle;\n };\n detachFinalizer = function (handle) {\n finalizationGroup.unregister(handle.$$);\n };\n return attachFinalizer(handle);\n }\n function ClassHandle_clone() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.preservePointerOnDelete) {\n this.$$.count.value += 1;\n return this;\n }\n else {\n var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), {\n $$: {\n value: shallowCopyInternalPointer(this.$$)\n }\n }));\n clone.$$.count.value += 1;\n clone.$$.deleteScheduled = false;\n return clone;\n }\n }\n function ClassHandle_delete() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError('Object already scheduled for deletion');\n }\n detachFinalizer(this);\n releaseClassHandle(this.$$);\n if (!this.$$.preservePointerOnDelete) {\n this.$$.smartPtr = undefined;\n this.$$.ptr = undefined;\n }\n }\n function ClassHandle_isDeleted() {\n return !this.$$.ptr;\n }\n var delayFunction = undefined;\n var deletionQueue = [];\n function flushPendingDeletes() {\n while (deletionQueue.length) {\n var obj = deletionQueue.pop();\n obj.$$.deleteScheduled = false;\n obj['delete']();\n }\n }\n function ClassHandle_deleteLater() {\n if (!this.$$.ptr) {\n throwInstanceAlreadyDeleted(this);\n }\n if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {\n throwBindingError('Object already scheduled for deletion');\n }\n deletionQueue.push(this);\n if (deletionQueue.length === 1 && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n this.$$.deleteScheduled = true;\n return this;\n }\n function init_ClassHandle() {\n ClassHandle.prototype['isAliasOf'] = ClassHandle_isAliasOf;\n ClassHandle.prototype['clone'] = ClassHandle_clone;\n ClassHandle.prototype['delete'] = ClassHandle_delete;\n ClassHandle.prototype['isDeleted'] = ClassHandle_isDeleted;\n ClassHandle.prototype['deleteLater'] = ClassHandle_deleteLater;\n }\n function ClassHandle() { }\n var registeredPointers = {};\n function ensureOverloadTable(proto, methodName, humanName) {\n if (undefined === proto[methodName].overloadTable) {\n var prevFunc = proto[methodName];\n proto[methodName] = function () {\n if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {\n throwBindingError(\"Function '\" +\n humanName +\n \"' called with an invalid number of arguments (\" +\n arguments.length +\n ') - expects one of (' +\n proto[methodName].overloadTable +\n ')!');\n }\n return proto[methodName].overloadTable[arguments.length].apply(this, arguments);\n };\n proto[methodName].overloadTable = [];\n proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;\n }\n }\n function exposePublicSymbol(name, value, numArguments) {\n if (Module.hasOwnProperty(name)) {\n if (undefined === numArguments ||\n (undefined !== Module[name].overloadTable &&\n undefined !== Module[name].overloadTable[numArguments])) {\n throwBindingError(\"Cannot register public name '\" + name + \"' twice\");\n }\n ensureOverloadTable(Module, name, name);\n if (Module.hasOwnProperty(numArguments)) {\n throwBindingError('Cannot register multiple overloads of a function with the same number of arguments (' +\n numArguments +\n ')!');\n }\n Module[name].overloadTable[numArguments] = value;\n }\n else {\n Module[name] = value;\n if (undefined !== numArguments) {\n Module[name].numArguments = numArguments;\n }\n }\n }\n function RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast) {\n this.name = name;\n this.constructor = constructor;\n this.instancePrototype = instancePrototype;\n this.rawDestructor = rawDestructor;\n this.baseClass = baseClass;\n this.getActualType = getActualType;\n this.upcast = upcast;\n this.downcast = downcast;\n this.pureVirtualFunctions = [];\n }\n function upcastPointer(ptr, ptrClass, desiredClass) {\n while (ptrClass !== desiredClass) {\n if (!ptrClass.upcast) {\n throwBindingError('Expected null or instance of ' +\n desiredClass.name +\n ', got an instance of ' +\n ptrClass.name);\n }\n ptr = ptrClass.upcast(ptr);\n ptrClass = ptrClass.baseClass;\n }\n return ptr;\n }\n function constNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function genericPointerToWireType(destructors, handle) {\n var ptr;\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n if (this.isSmartPointer) {\n ptr = this.rawConstructor();\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n return ptr;\n }\n else {\n return 0;\n }\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n if (!this.isConst && handle.$$.ptrType.isConst) {\n throwBindingError('Cannot convert argument of type ' +\n (handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name) +\n ' to parameter type ' +\n this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n if (this.isSmartPointer) {\n if (undefined === handle.$$.smartPtr) {\n throwBindingError('Passing raw pointer to smart pointer is illegal');\n }\n switch (this.sharingPolicy) {\n case 0:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n }\n else {\n throwBindingError('Cannot convert argument of type ' +\n (handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name) +\n ' to parameter type ' +\n this.name);\n }\n break;\n case 1:\n ptr = handle.$$.smartPtr;\n break;\n case 2:\n if (handle.$$.smartPtrType === this) {\n ptr = handle.$$.smartPtr;\n }\n else {\n var clonedHandle = handle['clone']();\n ptr = this.rawShare(ptr, __emval_register(function () {\n clonedHandle['delete']();\n }));\n if (destructors !== null) {\n destructors.push(this.rawDestructor, ptr);\n }\n }\n break;\n default:\n throwBindingError('Unsupporting sharing policy');\n }\n }\n return ptr;\n }\n function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {\n if (handle === null) {\n if (this.isReference) {\n throwBindingError('null is not a valid ' + this.name);\n }\n return 0;\n }\n if (!handle.$$) {\n throwBindingError('Cannot pass \"' + _embind_repr(handle) + '\" as a ' + this.name);\n }\n if (!handle.$$.ptr) {\n throwBindingError('Cannot pass deleted object as a pointer of type ' + this.name);\n }\n if (handle.$$.ptrType.isConst) {\n throwBindingError('Cannot convert argument of type ' +\n handle.$$.ptrType.name +\n ' to parameter type ' +\n this.name);\n }\n var handleClass = handle.$$.ptrType.registeredClass;\n var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);\n return ptr;\n }\n function simpleReadValueFromPointer(pointer) {\n return this['fromWireType'](HEAPU32[pointer >> 2]);\n }\n function RegisteredPointer_getPointee(ptr) {\n if (this.rawGetPointee) {\n ptr = this.rawGetPointee(ptr);\n }\n return ptr;\n }\n function RegisteredPointer_destructor(ptr) {\n if (this.rawDestructor) {\n this.rawDestructor(ptr);\n }\n }\n function RegisteredPointer_deleteObject(handle) {\n if (handle !== null) {\n handle['delete']();\n }\n }\n function downcastPointer(ptr, ptrClass, desiredClass) {\n if (ptrClass === desiredClass) {\n return ptr;\n }\n if (undefined === desiredClass.baseClass) {\n return null;\n }\n var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);\n if (rv === null) {\n return null;\n }\n return desiredClass.downcast(rv);\n }\n function getInheritedInstanceCount() {\n return Object.keys(registeredInstances).length;\n }\n function getLiveInheritedInstances() {\n var rv = [];\n for (var k in registeredInstances) {\n if (registeredInstances.hasOwnProperty(k)) {\n rv.push(registeredInstances[k]);\n }\n }\n return rv;\n }\n function setDelayFunction(fn) {\n delayFunction = fn;\n if (deletionQueue.length && delayFunction) {\n delayFunction(flushPendingDeletes);\n }\n }\n function init_embind() {\n Module['getInheritedInstanceCount'] = getInheritedInstanceCount;\n Module['getLiveInheritedInstances'] = getLiveInheritedInstances;\n Module['flushPendingDeletes'] = flushPendingDeletes;\n Module['setDelayFunction'] = setDelayFunction;\n }\n var registeredInstances = {};\n function getBasestPointer(class_, ptr) {\n if (ptr === undefined) {\n throwBindingError('ptr should not be undefined');\n }\n while (class_.baseClass) {\n ptr = class_.upcast(ptr);\n class_ = class_.baseClass;\n }\n return ptr;\n }\n function getInheritedInstance(class_, ptr) {\n ptr = getBasestPointer(class_, ptr);\n return registeredInstances[ptr];\n }\n function makeClassHandle(prototype, record) {\n if (!record.ptrType || !record.ptr) {\n throwInternalError('makeClassHandle requires ptr and ptrType');\n }\n var hasSmartPtrType = !!record.smartPtrType;\n var hasSmartPtr = !!record.smartPtr;\n if (hasSmartPtrType !== hasSmartPtr) {\n throwInternalError('Both smartPtrType and smartPtr must be specified');\n }\n record.count = {\n value: 1\n };\n return attachFinalizer(Object.create(prototype, {\n $$: {\n value: record\n }\n }));\n }\n function RegisteredPointer_fromWireType(ptr) {\n var rawPointer = this.getPointee(ptr);\n if (!rawPointer) {\n this.destructor(ptr);\n return null;\n }\n var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);\n if (undefined !== registeredInstance) {\n if (0 === registeredInstance.$$.count.value) {\n registeredInstance.$$.ptr = rawPointer;\n registeredInstance.$$.smartPtr = ptr;\n return registeredInstance['clone']();\n }\n else {\n var rv = registeredInstance['clone']();\n this.destructor(ptr);\n return rv;\n }\n }\n function makeDefaultHandle() {\n if (this.isSmartPointer) {\n return makeClassHandle(this.registeredClass.instancePrototype, {\n ptrType: this.pointeeType,\n ptr: rawPointer,\n smartPtrType: this,\n smartPtr: ptr\n });\n }\n else {\n return makeClassHandle(this.registeredClass.instancePrototype, {\n ptrType: this,\n ptr: ptr\n });\n }\n }\n var actualType = this.registeredClass.getActualType(rawPointer);\n var registeredPointerRecord = registeredPointers[actualType];\n if (!registeredPointerRecord) {\n return makeDefaultHandle.call(this);\n }\n var toType;\n if (this.isConst) {\n toType = registeredPointerRecord.constPointerType;\n }\n else {\n toType = registeredPointerRecord.pointerType;\n }\n var dp = downcastPointer(rawPointer, this.registeredClass, toType.registeredClass);\n if (dp === null) {\n return makeDefaultHandle.call(this);\n }\n if (this.isSmartPointer) {\n return makeClassHandle(toType.registeredClass.instancePrototype, {\n ptrType: toType,\n ptr: dp,\n smartPtrType: this,\n smartPtr: ptr\n });\n }\n else {\n return makeClassHandle(toType.registeredClass.instancePrototype, {\n ptrType: toType,\n ptr: dp\n });\n }\n }\n function init_RegisteredPointer() {\n RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;\n RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;\n RegisteredPointer.prototype['argPackAdvance'] = 8;\n RegisteredPointer.prototype['readValueFromPointer'] = simpleReadValueFromPointer;\n RegisteredPointer.prototype['deleteObject'] = RegisteredPointer_deleteObject;\n RegisteredPointer.prototype['fromWireType'] = RegisteredPointer_fromWireType;\n }\n function RegisteredPointer(name, registeredClass, isReference, isConst, isSmartPointer, pointeeType, sharingPolicy, rawGetPointee, rawConstructor, rawShare, rawDestructor) {\n this.name = name;\n this.registeredClass = registeredClass;\n this.isReference = isReference;\n this.isConst = isConst;\n this.isSmartPointer = isSmartPointer;\n this.pointeeType = pointeeType;\n this.sharingPolicy = sharingPolicy;\n this.rawGetPointee = rawGetPointee;\n this.rawConstructor = rawConstructor;\n this.rawShare = rawShare;\n this.rawDestructor = rawDestructor;\n if (!isSmartPointer && registeredClass.baseClass === undefined) {\n if (isConst) {\n this['toWireType'] = constNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n else {\n this['toWireType'] = nonConstNoSmartPtrRawPointerToWireType;\n this.destructorFunction = null;\n }\n }\n else {\n this['toWireType'] = genericPointerToWireType;\n }\n }\n function replacePublicSymbol(name, value, numArguments) {\n if (!Module.hasOwnProperty(name)) {\n throwInternalError('Replacing nonexistant public symbol');\n }\n if (undefined !== Module[name].overloadTable && undefined !== numArguments) {\n Module[name].overloadTable[numArguments] = value;\n }\n else {\n Module[name] = value;\n Module[name].argCount = numArguments;\n }\n }\n function embind__requireFunction(signature, rawFunction) {\n signature = readLatin1String(signature);\n function makeDynCaller(dynCall) {\n var args = [];\n for (var i = 1; i < signature.length; ++i) {\n args.push('a' + i);\n }\n var name = 'dynCall_' + signature + '_' + rawFunction;\n var body = 'return function ' + name + '(' + args.join(', ') + ') {\\n';\n body +=\n ' return dynCall(rawFunction' + (args.length ? ', ' : '') + args.join(', ') + ');\\n';\n body += '};\\n';\n return new Function('dynCall', 'rawFunction', body)(dynCall, rawFunction);\n }\n var dc = Module['dynCall_' + signature];\n var fp = makeDynCaller(dc);\n if (typeof fp !== 'function') {\n throwBindingError('unknown function pointer with signature ' + signature + ': ' + rawFunction);\n }\n return fp;\n }\n var UnboundTypeError = undefined;\n function getTypeName(type) {\n var ptr = ___getTypeName(type);\n var rv = readLatin1String(ptr);\n _free(ptr);\n return rv;\n }\n function throwUnboundTypeError(message, types) {\n var unboundTypes = [];\n var seen = {};\n function visit(type) {\n if (seen[type]) {\n return;\n }\n if (registeredTypes[type]) {\n return;\n }\n if (typeDependencies[type]) {\n typeDependencies[type].forEach(visit);\n return;\n }\n unboundTypes.push(type);\n seen[type] = true;\n }\n types.forEach(visit);\n throw new UnboundTypeError(message + ': ' + unboundTypes.map(getTypeName).join([', ']));\n }\n function __embind_register_class(rawType, rawPointerType, rawConstPointerType, baseClassRawType, getActualTypeSignature, getActualType, upcastSignature, upcast, downcastSignature, downcast, name, destructorSignature, rawDestructor) {\n name = readLatin1String(name);\n getActualType = embind__requireFunction(getActualTypeSignature, getActualType);\n if (upcast) {\n upcast = embind__requireFunction(upcastSignature, upcast);\n }\n if (downcast) {\n downcast = embind__requireFunction(downcastSignature, downcast);\n }\n rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);\n var legalFunctionName = makeLegalFunctionName(name);\n exposePublicSymbol(legalFunctionName, function () {\n throwUnboundTypeError('Cannot construct ' + name + ' due to unbound types', [\n baseClassRawType\n ]);\n });\n whenDependentTypesAreResolved([rawType, rawPointerType, rawConstPointerType], baseClassRawType ? [baseClassRawType] : [], function (base) {\n base = base[0];\n var baseClass;\n var basePrototype;\n if (baseClassRawType) {\n baseClass = base.registeredClass;\n basePrototype = baseClass.instancePrototype;\n }\n else {\n basePrototype = ClassHandle.prototype;\n }\n var constructor = createNamedFunction(legalFunctionName, function () {\n if (Object.getPrototypeOf(this) !== instancePrototype) {\n throw new BindingError(\"Use 'new' to construct \" + name);\n }\n if (undefined === registeredClass.constructor_body) {\n throw new BindingError(name + ' has no accessible constructor');\n }\n var body = registeredClass.constructor_body[arguments.length];\n if (undefined === body) {\n throw new BindingError('Tried to invoke ctor of ' +\n name +\n ' with invalid number of parameters (' +\n arguments.length +\n ') - expected (' +\n Object.keys(registeredClass.constructor_body).toString() +\n ') parameters instead!');\n }\n return body.apply(this, arguments);\n });\n var instancePrototype = Object.create(basePrototype, {\n constructor: {\n value: constructor\n }\n });\n constructor.prototype = instancePrototype;\n var registeredClass = new RegisteredClass(name, constructor, instancePrototype, rawDestructor, baseClass, getActualType, upcast, downcast);\n var referenceConverter = new RegisteredPointer(name, registeredClass, true, false, false);\n var pointerConverter = new RegisteredPointer(name + '*', registeredClass, false, false, false);\n var constPointerConverter = new RegisteredPointer(name + ' const*', registeredClass, false, true, false);\n registeredPointers[rawType] = {\n pointerType: pointerConverter,\n constPointerType: constPointerConverter\n };\n replacePublicSymbol(legalFunctionName, constructor);\n return [referenceConverter, pointerConverter, constPointerConverter];\n });\n }\n function heap32VectorToArray(count, firstElement) {\n var array = [];\n for (var i = 0; i < count; i++) {\n array.push(HEAP32[(firstElement >> 2) + i]);\n }\n return array;\n }\n function runDestructors(destructors) {\n while (destructors.length) {\n var ptr = destructors.pop();\n var del = destructors.pop();\n del(ptr);\n }\n }\n function __embind_register_class_constructor(rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) {\n assert(argCount > 0);\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n invoker = embind__requireFunction(invokerSignature, invoker);\n var args = [rawConstructor];\n var destructors = [];\n whenDependentTypesAreResolved([], [rawClassType], function (classType) {\n classType = classType[0];\n var humanName = 'constructor ' + classType.name;\n if (undefined === classType.registeredClass.constructor_body) {\n classType.registeredClass.constructor_body = [];\n }\n if (undefined !== classType.registeredClass.constructor_body[argCount - 1]) {\n throw new BindingError('Cannot register multiple constructors with identical number of parameters (' +\n (argCount - 1) +\n \") for class '\" +\n classType.name +\n \"'! Overload resolution is currently only performed using the parameter count, not actual type info!\");\n }\n classType.registeredClass.constructor_body[argCount - 1] = function unboundTypeHandler() {\n throwUnboundTypeError('Cannot construct ' + classType.name + ' due to unbound types', rawArgTypes);\n };\n whenDependentTypesAreResolved([], rawArgTypes, function (argTypes) {\n classType.registeredClass.constructor_body[argCount - 1] = function constructor_body() {\n if (arguments.length !== argCount - 1) {\n throwBindingError(humanName +\n ' called with ' +\n arguments.length +\n ' arguments, expected ' +\n (argCount - 1));\n }\n destructors.length = 0;\n args.length = argCount;\n for (var i = 1; i < argCount; ++i) {\n args[i] = argTypes[i]['toWireType'](destructors, arguments[i - 1]);\n }\n var ptr = invoker.apply(null, args);\n runDestructors(destructors);\n return argTypes[0]['fromWireType'](ptr);\n };\n return [];\n });\n return [];\n });\n }\n function new_(constructor, argumentList) {\n if (!(constructor instanceof Function)) {\n throw new TypeError('new_ called with constructor type ' + typeof constructor + ' which is not a function');\n }\n var dummy = createNamedFunction(constructor.name || 'unknownFunctionName', function () { });\n dummy.prototype = constructor.prototype;\n var obj = new dummy();\n var r = constructor.apply(obj, argumentList);\n return r instanceof Object ? r : obj;\n }\n function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc) {\n var argCount = argTypes.length;\n if (argCount < 2) {\n throwBindingError(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n }\n var isClassMethodFunc = argTypes[1] !== null && classType !== null;\n var needsDestructorStack = false;\n for (var i = 1; i < argTypes.length; ++i) {\n if (argTypes[i] !== null && argTypes[i].destructorFunction === undefined) {\n needsDestructorStack = true;\n break;\n }\n }\n var returns = argTypes[0].name !== 'void';\n var argsList = '';\n var argsListWired = '';\n for (var i = 0; i < argCount - 2; ++i) {\n argsList += (i !== 0 ? ', ' : '') + 'arg' + i;\n argsListWired += (i !== 0 ? ', ' : '') + 'arg' + i + 'Wired';\n }\n var invokerFnBody = 'return function ' +\n makeLegalFunctionName(humanName) +\n '(' +\n argsList +\n ') {\\n' +\n 'if (arguments.length !== ' +\n (argCount - 2) +\n ') {\\n' +\n \"throwBindingError('function \" +\n humanName +\n \" called with ' + arguments.length + ' arguments, expected \" +\n (argCount - 2) +\n \" args!');\\n\" +\n '}\\n';\n if (needsDestructorStack) {\n invokerFnBody += 'var destructors = [];\\n';\n }\n var dtorStack = needsDestructorStack ? 'destructors' : 'null';\n var args1 = ['throwBindingError', 'invoker', 'fn', 'runDestructors', 'retType', 'classParam'];\n var args2 = [\n throwBindingError,\n cppInvokerFunc,\n cppTargetFunc,\n runDestructors,\n argTypes[0],\n argTypes[1]\n ];\n if (isClassMethodFunc) {\n invokerFnBody += 'var thisWired = classParam.toWireType(' + dtorStack + ', this);\\n';\n }\n for (var i = 0; i < argCount - 2; ++i) {\n invokerFnBody +=\n 'var arg' +\n i +\n 'Wired = argType' +\n i +\n '.toWireType(' +\n dtorStack +\n ', arg' +\n i +\n '); // ' +\n argTypes[i + 2].name +\n '\\n';\n args1.push('argType' + i);\n args2.push(argTypes[i + 2]);\n }\n if (isClassMethodFunc) {\n argsListWired = 'thisWired' + (argsListWired.length > 0 ? ', ' : '') + argsListWired;\n }\n invokerFnBody +=\n (returns ? 'var rv = ' : '') +\n 'invoker(fn' +\n (argsListWired.length > 0 ? ', ' : '') +\n argsListWired +\n ');\\n';\n if (needsDestructorStack) {\n invokerFnBody += 'runDestructors(destructors);\\n';\n }\n else {\n for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {\n var paramName = i === 1 ? 'thisWired' : 'arg' + (i - 2) + 'Wired';\n if (argTypes[i].destructorFunction !== null) {\n invokerFnBody += paramName + '_dtor(' + paramName + '); // ' + argTypes[i].name + '\\n';\n args1.push(paramName + '_dtor');\n args2.push(argTypes[i].destructorFunction);\n }\n }\n }\n if (returns) {\n invokerFnBody += 'var ret = retType.fromWireType(rv);\\n' + 'return ret;\\n';\n }\n else {\n }\n invokerFnBody += '}\\n';\n args1.push(invokerFnBody);\n var invokerFunction = new_(Function, args1).apply(null, args2);\n return invokerFunction;\n }\n function __embind_register_class_function(rawClassType, methodName, argCount, rawArgTypesAddr, invokerSignature, rawInvoker, context, isPureVirtual) {\n var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);\n methodName = readLatin1String(methodName);\n rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);\n whenDependentTypesAreResolved([], [rawClassType], function (classType) {\n classType = classType[0];\n var humanName = classType.name + '.' + methodName;\n if (isPureVirtual) {\n classType.registeredClass.pureVirtualFunctions.push(methodName);\n }\n function unboundTypesHandler() {\n throwUnboundTypeError('Cannot call ' + humanName + ' due to unbound types', rawArgTypes);\n }\n var proto = classType.registeredClass.instancePrototype;\n var method = proto[methodName];\n if (undefined === method ||\n (undefined === method.overloadTable &&\n method.className !== classType.name &&\n method.argCount === argCount - 2)) {\n unboundTypesHandler.argCount = argCount - 2;\n unboundTypesHandler.className = classType.name;\n proto[methodName] = unboundTypesHandler;\n }\n else {\n ensureOverloadTable(proto, methodName, humanName);\n proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;\n }\n whenDependentTypesAreResolved([], rawArgTypes, function (argTypes) {\n var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context);\n if (undefined === proto[methodName].overloadTable) {\n memberFunction.argCount = argCount - 2;\n proto[methodName] = memberFunction;\n }\n else {\n proto[methodName].overloadTable[argCount - 2] = memberFunction;\n }\n return [];\n });\n return [];\n });\n }\n var emval_free_list = [];\n var emval_handle_array = [\n {},\n {\n value: undefined\n },\n {\n value: null\n },\n {\n value: true\n },\n {\n value: false\n }\n ];\n function __emval_decref(handle) {\n if (handle > 4 && 0 === --emval_handle_array[handle].refcount) {\n emval_handle_array[handle] = undefined;\n emval_free_list.push(handle);\n }\n }\n function count_emval_handles() {\n var count = 0;\n for (var i = 5; i < emval_handle_array.length; ++i) {\n if (emval_handle_array[i] !== undefined) {\n ++count;\n }\n }\n return count;\n }\n function get_first_emval() {\n for (var i = 5; i < emval_handle_array.length; ++i) {\n if (emval_handle_array[i] !== undefined) {\n return emval_handle_array[i];\n }\n }\n return null;\n }\n function init_emval() {\n Module['count_emval_handles'] = count_emval_handles;\n Module['get_first_emval'] = get_first_emval;\n }\n function __emval_register(value) {\n switch (value) {\n case undefined: {\n return 1;\n }\n case null: {\n return 2;\n }\n case true: {\n return 3;\n }\n case false: {\n return 4;\n }\n default: {\n var handle = emval_free_list.length ? emval_free_list.pop() : emval_handle_array.length;\n emval_handle_array[handle] = {\n refcount: 1,\n value: value\n };\n return handle;\n }\n }\n }\n function __embind_register_emval(rawType, name) {\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (handle) {\n var rv = emval_handle_array[handle].value;\n __emval_decref(handle);\n return rv;\n },\n toWireType: function (destructors, value) {\n return __emval_register(value);\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: null\n });\n }\n function _embind_repr(v) {\n if (v === null) {\n return 'null';\n }\n var t = typeof v;\n if (t === 'object' || t === 'array' || t === 'function') {\n return v.toString();\n }\n else {\n return '' + v;\n }\n }\n function floatReadValueFromPointer(name, shift) {\n switch (shift) {\n case 2:\n return function (pointer) {\n return this['fromWireType'](HEAPF32[pointer >> 2]);\n };\n case 3:\n return function (pointer) {\n return this['fromWireType'](HEAPF64[pointer >> 3]);\n };\n default:\n throw new TypeError('Unknown float type: ' + name);\n }\n }\n function __embind_register_float(rawType, name, size) {\n var shift = getShiftFromSize(size);\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n return value;\n },\n toWireType: function (destructors, value) {\n if (typeof value !== 'number' && typeof value !== 'boolean') {\n throw new TypeError('Cannot convert \"' + _embind_repr(value) + '\" to ' + this.name);\n }\n return value;\n },\n argPackAdvance: 8,\n readValueFromPointer: floatReadValueFromPointer(name, shift),\n destructorFunction: null\n });\n }\n function integerReadValueFromPointer(name, shift, signed) {\n switch (shift) {\n case 0:\n return signed\n ? function readS8FromPointer(pointer) {\n return HEAP8[pointer];\n }\n : function readU8FromPointer(pointer) {\n return HEAPU8[pointer];\n };\n case 1:\n return signed\n ? function readS16FromPointer(pointer) {\n return HEAP16[pointer >> 1];\n }\n : function readU16FromPointer(pointer) {\n return HEAPU16[pointer >> 1];\n };\n case 2:\n return signed\n ? function readS32FromPointer(pointer) {\n return HEAP32[pointer >> 2];\n }\n : function readU32FromPointer(pointer) {\n return HEAPU32[pointer >> 2];\n };\n default:\n throw new TypeError('Unknown integer type: ' + name);\n }\n }\n function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {\n name = readLatin1String(name);\n if (maxRange === -1) {\n maxRange = 4294967295;\n }\n var shift = getShiftFromSize(size);\n var fromWireType = function (value) {\n return value;\n };\n if (minRange === 0) {\n var bitshift = 32 - 8 * size;\n fromWireType = function (value) {\n return (value << bitshift) >>> bitshift;\n };\n }\n var isUnsignedType = name.indexOf('unsigned') != -1;\n registerType(primitiveType, {\n name: name,\n fromWireType: fromWireType,\n toWireType: function (destructors, value) {\n if (typeof value !== 'number' && typeof value !== 'boolean') {\n throw new TypeError('Cannot convert \"' + _embind_repr(value) + '\" to ' + this.name);\n }\n if (value < minRange || value > maxRange) {\n throw new TypeError('Passing a number \"' +\n _embind_repr(value) +\n '\" from JS side to C/C++ side to an argument of type \"' +\n name +\n '\", which is outside the valid range [' +\n minRange +\n ', ' +\n maxRange +\n ']!');\n }\n return isUnsignedType ? value >>> 0 : value | 0;\n },\n argPackAdvance: 8,\n readValueFromPointer: integerReadValueFromPointer(name, shift, minRange !== 0),\n destructorFunction: null\n });\n }\n function __embind_register_memory_view(rawType, dataTypeIndex, name) {\n var typeMapping = [\n Int8Array,\n Uint8Array,\n Int16Array,\n Uint16Array,\n Int32Array,\n Uint32Array,\n Float32Array,\n Float64Array\n ];\n var TA = typeMapping[dataTypeIndex];\n function decodeMemoryView(handle) {\n handle = handle >> 2;\n var heap = HEAPU32;\n var size = heap[handle];\n var data = heap[handle + 1];\n return new TA(buffer, data, size);\n }\n name = readLatin1String(name);\n registerType(rawType, {\n name: name,\n fromWireType: decodeMemoryView,\n argPackAdvance: 8,\n readValueFromPointer: decodeMemoryView\n }, {\n ignoreDuplicateRegistrations: true\n });\n }\n function __embind_register_std_string(rawType, name) {\n name = readLatin1String(name);\n var stdStringIsUTF8 = name === 'std::string';\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n var length = HEAPU32[value >> 2];\n var str;\n if (stdStringIsUTF8) {\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i;\n if (HEAPU8[currentBytePtr] == 0 || i == length) {\n var maxRead = currentBytePtr - decodeStartPtr;\n var stringSegment = UTF8ToString(decodeStartPtr, maxRead);\n if (str === undefined) {\n str = stringSegment;\n }\n else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + 1;\n }\n }\n }\n else {\n var a = new Array(length);\n for (var i = 0; i < length; ++i) {\n a[i] = String.fromCharCode(HEAPU8[value + 4 + i]);\n }\n str = a.join('');\n }\n _free(value);\n return str;\n },\n toWireType: function (destructors, value) {\n if (value instanceof ArrayBuffer) {\n value = new Uint8Array(value);\n }\n var getLength;\n var valueIsOfTypeString = typeof value === 'string';\n if (!(valueIsOfTypeString ||\n value instanceof Uint8Array ||\n value instanceof Uint8ClampedArray ||\n value instanceof Int8Array)) {\n throwBindingError('Cannot pass non-string to std::string');\n }\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n getLength = function () {\n return lengthBytesUTF8(value);\n };\n }\n else {\n getLength = function () {\n return value.length;\n };\n }\n var length = getLength();\n var ptr = _malloc(4 + length + 1);\n HEAPU32[ptr >> 2] = length;\n if (stdStringIsUTF8 && valueIsOfTypeString) {\n stringToUTF8(value, ptr + 4, length + 1);\n }\n else {\n if (valueIsOfTypeString) {\n for (var i = 0; i < length; ++i) {\n var charCode = value.charCodeAt(i);\n if (charCode > 255) {\n _free(ptr);\n throwBindingError('String has UTF-16 code units that do not fit in 8 bits');\n }\n HEAPU8[ptr + 4 + i] = charCode;\n }\n }\n else {\n for (var i = 0; i < length; ++i) {\n HEAPU8[ptr + 4 + i] = value[i];\n }\n }\n }\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: function (ptr) {\n _free(ptr);\n }\n });\n }\n function __embind_register_std_wstring(rawType, charSize, name) {\n name = readLatin1String(name);\n var decodeString, encodeString, getHeap, lengthBytesUTF, shift;\n if (charSize === 2) {\n decodeString = UTF16ToString;\n encodeString = stringToUTF16;\n lengthBytesUTF = lengthBytesUTF16;\n getHeap = function () {\n return HEAPU16;\n };\n shift = 1;\n }\n else if (charSize === 4) {\n decodeString = UTF32ToString;\n encodeString = stringToUTF32;\n lengthBytesUTF = lengthBytesUTF32;\n getHeap = function () {\n return HEAPU32;\n };\n shift = 2;\n }\n registerType(rawType, {\n name: name,\n fromWireType: function (value) {\n var length = HEAPU32[value >> 2];\n var HEAP = getHeap();\n var str;\n var decodeStartPtr = value + 4;\n for (var i = 0; i <= length; ++i) {\n var currentBytePtr = value + 4 + i * charSize;\n if (HEAP[currentBytePtr >> shift] == 0 || i == length) {\n var maxReadBytes = currentBytePtr - decodeStartPtr;\n var stringSegment = decodeString(decodeStartPtr, maxReadBytes);\n if (str === undefined) {\n str = stringSegment;\n }\n else {\n str += String.fromCharCode(0);\n str += stringSegment;\n }\n decodeStartPtr = currentBytePtr + charSize;\n }\n }\n _free(value);\n return str;\n },\n toWireType: function (destructors, value) {\n if (!(typeof value === 'string')) {\n throwBindingError('Cannot pass non-string to C++ string type ' + name);\n }\n var length = lengthBytesUTF(value);\n var ptr = _malloc(4 + length + charSize);\n HEAPU32[ptr >> 2] = length >> shift;\n encodeString(value, ptr + 4, length + charSize);\n if (destructors !== null) {\n destructors.push(_free, ptr);\n }\n return ptr;\n },\n argPackAdvance: 8,\n readValueFromPointer: simpleReadValueFromPointer,\n destructorFunction: function (ptr) {\n _free(ptr);\n }\n });\n }\n function __embind_register_void(rawType, name) {\n name = readLatin1String(name);\n registerType(rawType, {\n isVoid: true,\n name: name,\n argPackAdvance: 0,\n fromWireType: function () {\n return undefined;\n },\n toWireType: function (destructors, o) {\n return undefined;\n }\n });\n }\n function _abort() {\n abort();\n }\n function _emscripten_get_heap_size() {\n return HEAPU8.length;\n }\n function abortOnCannotGrowMemory(requestedSize) {\n abort('OOM');\n }\n function _emscripten_resize_heap(requestedSize) {\n requestedSize = requestedSize >>> 0;\n abortOnCannotGrowMemory(requestedSize);\n }\n function _llvm_trap() {\n abort('trap!');\n }\n function _emscripten_memcpy_big(dest, src, num) {\n HEAPU8.copyWithin(dest, src, src + num);\n }\n embind_init_charCodes();\n BindingError = Module['BindingError'] = extendError(Error, 'BindingError');\n InternalError = Module['InternalError'] = extendError(Error, 'InternalError');\n init_ClassHandle();\n init_RegisteredPointer();\n init_embind();\n UnboundTypeError = Module['UnboundTypeError'] = extendError(Error, 'UnboundTypeError');\n init_emval();\n var ASSERTIONS = false;\n function intArrayToString(array) {\n var ret = [];\n for (var i = 0; i < array.length; i++) {\n var chr = array[i];\n if (chr > 255) {\n if (ASSERTIONS) {\n assert(false, 'Character code ' +\n chr +\n ' (' +\n String.fromCharCode(chr) +\n ') at offset ' +\n i +\n ' not in 0x00-0xFF.');\n }\n chr &= 255;\n }\n ret.push(String.fromCharCode(chr));\n }\n return ret.join('');\n }\n var decodeBase64 = typeof atob === 'function'\n ? atob\n : function (input) {\n var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var output = '';\n var chr1, chr2, chr3;\n var enc1, enc2, enc3, enc4;\n var i = 0;\n input = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, '');\n do {\n enc1 = keyStr.indexOf(input.charAt(i++));\n enc2 = keyStr.indexOf(input.charAt(i++));\n enc3 = keyStr.indexOf(input.charAt(i++));\n enc4 = keyStr.indexOf(input.charAt(i++));\n chr1 = (enc1 << 2) | (enc2 >> 4);\n chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n chr3 = ((enc3 & 3) << 6) | enc4;\n output = output + String.fromCharCode(chr1);\n if (enc3 !== 64) {\n output = output + String.fromCharCode(chr2);\n }\n if (enc4 !== 64) {\n output = output + String.fromCharCode(chr3);\n }\n } while (i < input.length);\n return output;\n };\n function intArrayFromBase64(s) {\n if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) {\n var buf;\n try {\n buf = Buffer.from(s, 'base64');\n }\n catch (_) {\n buf = new Buffer(s, 'base64');\n }\n return new Uint8Array(buf['buffer'], buf['byteOffset'], buf['byteLength']);\n }\n try {\n var decoded = decodeBase64(s);\n var bytes = new Uint8Array(decoded.length);\n for (var i = 0; i < decoded.length; ++i) {\n bytes[i] = decoded.charCodeAt(i);\n }\n return bytes;\n }\n catch (_) {\n throw new Error('Converting base64 string to bytes failed.');\n }\n }\n function tryParseAsDataURI(filename) {\n if (!isDataURI(filename)) {\n return;\n }\n return intArrayFromBase64(filename.slice(dataURIPrefix.length));\n }\n var asmGlobalArg = {\n Math: Math,\n Int8Array: Int8Array,\n Int16Array: Int16Array,\n Int32Array: Int32Array,\n Uint8Array: Uint8Array,\n Uint16Array: Uint16Array,\n Float32Array: Float32Array,\n Float64Array: Float64Array\n };\n var asmLibraryArg = {\n A: _emscripten_memcpy_big,\n B: _emscripten_resize_heap,\n C: _llvm_trap,\n D: tempDoublePtr,\n a: abort,\n b: setTempRet0,\n c: getTempRet0,\n d: ___cxa_allocate_exception,\n e: ___cxa_begin_catch,\n f: ___cxa_throw,\n g: ___cxa_uncaught_exceptions,\n h: ___exception_addRef,\n i: ___exception_deAdjust,\n j: ___gxx_personality_v0,\n k: __embind_register_bool,\n l: __embind_register_class,\n m: __embind_register_class_constructor,\n n: __embind_register_class_function,\n o: __embind_register_emval,\n p: __embind_register_float,\n q: __embind_register_integer,\n r: __embind_register_memory_view,\n s: __embind_register_std_string,\n t: __embind_register_std_wstring,\n u: __embind_register_void,\n v: __emval_decref,\n w: __emval_register,\n x: _abort,\n y: _embind_repr,\n z: _emscripten_get_heap_size\n }; // EMSCRIPTEN_START_ASM\n var asm = /** @suppress {uselessCode} */ (function (global, env, buffer) {\n 'use asm';\n var a = new global.Int8Array(buffer), b = new global.Int16Array(buffer), c = new global.Int32Array(buffer), d = new global.Uint8Array(buffer), e = new global.Uint16Array(buffer), f = new global.Float32Array(buffer), g = new global.Float64Array(buffer), h = env.D | 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0.0, q = global.Math.imul, r = global.Math.clz32, s = env.a, t = env.b, u = env.c, v = env.d, w = env.e, x = env.f, y = env.g, z = env.h, A = env.i, B = env.j, C = env.k, D = env.l, E = env.m, F = env.n, G = env.o, H = env.p, I = env.q, J = env.r, K = env.s, L = env.t, M = env.u, N = env.v, O = env.w, P = env.x, Q = env.y, R = env.z, S = env.A, T = env.B, U = env.C, V = 22384, W = 5265264, X = 0.0;\n // EMSCRIPTEN_START_FUNCS\n function ia() {\n em();\n fm();\n }\n function ja() {\n ka(0);\n return;\n }\n function ka(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0;\n a = V;\n V = (V + 16) | 0;\n b = (a + 8) | 0;\n d = a;\n vk();\n m = xk() | 0;\n g = yk() | 0;\n f = Ak() | 0;\n h = Bk() | 0;\n i = Ck() | 0;\n j = Dk() | 0;\n k = Jk() | 0;\n l = Kk() | 0;\n e = Kk() | 0;\n D(f | 0, h | 0, i | 0, j | 0, k | 0, 9, l | 0, m | 0, e | 0, g | 0, 6204, Lk() | 0, 138);\n Nk(1);\n c[d >> 2] = 5;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Uk(6211, b);\n c[d >> 2] = 3;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n cl(6216, b);\n c[d >> 2] = 10;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n kl(6225, b);\n sl();\n g = ul() | 0;\n e = vl() | 0;\n m = xl() | 0;\n l = yl() | 0;\n k = zl() | 0;\n j = Dk() | 0;\n i = Jk() | 0;\n h = Kk() | 0;\n f = Kk() | 0;\n D(m | 0, l | 0, k | 0, j | 0, i | 0, 11, h | 0, g | 0, f | 0, e | 0, 6234, Lk() | 0, 139);\n Gl(2);\n c[d >> 2] = 6;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Nl(6211, b);\n c[d >> 2] = 4;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6248, b);\n c[d >> 2] = 5;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6265, b);\n c[d >> 2] = 6;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n Ul(6280, b);\n c[d >> 2] = 7;\n c[(d + 4) >> 2] = 0;\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n _l(6216, b);\n V = a;\n return;\n }\n function la(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n e = V;\n V = (V + 32) | 0;\n h = (e + 16) | 0;\n f = (e + 8) | 0;\n i = e;\n g = eq(20) | 0;\n ta(g, b, d);\n c[i >> 2] = 0;\n c[h >> 2] = c[i >> 2];\n va(f, g, h);\n b = c[f >> 2] | 0;\n c[f >> 2] = c[a >> 2];\n c[a >> 2] = b;\n b = (f + 4) | 0;\n d = (a + 4) | 0;\n g = c[b >> 2] | 0;\n c[b >> 2] = c[d >> 2];\n c[d >> 2] = g;\n wa(f);\n d = eq(352) | 0;\n ua(d, c[a >> 2] | 0);\n g = (a + 8) | 0;\n c[i >> 2] = 0;\n c[h >> 2] = c[i >> 2];\n Fa(f, d, h);\n d = c[f >> 2] | 0;\n c[f >> 2] = c[g >> 2];\n c[g >> 2] = d;\n g = (f + 4) | 0;\n d = (a + 12) | 0;\n b = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Ga(f);\n V = e;\n return;\n }\n function ma(a, b) {\n a = a | 0;\n b = b | 0;\n dd(c[(a + 8) >> 2] | 0, b);\n return;\n }\n function na(a) {\n a = a | 0;\n a = ((Qh(c[(a + 8) >> 2] | 0) | 0) + 107) | 0;\n return (d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24) | 0);\n }\n function oa(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n e = V;\n V = (V + 32) | 0;\n g = (e + 16) | 0;\n f = (e + 8) | 0;\n h = e;\n i = eq(12) | 0;\n Rh(i, b, d);\n c[h >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n Vh(f, i, g);\n i = c[f >> 2] | 0;\n c[f >> 2] = c[a >> 2];\n c[a >> 2] = i;\n i = (f + 4) | 0;\n d = (a + 4) | 0;\n b = c[i >> 2] | 0;\n c[i >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Wh(f);\n d = (a + 8) | 0;\n b = eq(12) | 0;\n Sh(b, c[a >> 2] | 0);\n c[h >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n ai(f, b, g);\n b = c[f >> 2] | 0;\n c[f >> 2] = c[d >> 2];\n c[d >> 2] = b;\n b = (f + 4) | 0;\n h = (a + 12) | 0;\n i = c[b >> 2] | 0;\n c[b >> 2] = c[h >> 2];\n c[h >> 2] = i;\n bi(f);\n Th(f, c[d >> 2] | 0);\n d = (a + 16) | 0;\n h = c[f >> 2] | 0;\n i = (f + 4) | 0;\n b = c[i >> 2] | 0;\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = h;\n d = (a + 20) | 0;\n c[(g + 4) >> 2] = c[d >> 2];\n c[d >> 2] = b;\n Uh(g);\n Uh(f);\n V = e;\n return;\n }\n function pa(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n a = (a + 16) | 0;\n d = c[a >> 2] | 0;\n a: do\n if (d | 0)\n switch (b | 0) {\n case 4: {\n ui(d);\n break a;\n }\n case 8: {\n vi(d);\n vi(c[a >> 2] | 0);\n break a;\n }\n default:\n break a;\n }\n while (0);\n return;\n }\n function qa(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = (a + 16) | 0;\n a = c[d >> 2] | 0;\n a: do\n if (a | 0) {\n switch (b | 0) {\n case 1: {\n hj(a);\n break a;\n }\n case 2: {\n ij(a);\n break a;\n }\n case 8: {\n ui(a);\n a = c[d >> 2] | 0;\n break;\n }\n case 4:\n break;\n default:\n break a;\n }\n ui(a);\n }\n while (0);\n return;\n }\n function ra(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = (a + 16) | 0;\n a = c[d >> 2] | 0;\n a: do\n if (a | 0) {\n switch (b | 0) {\n case 1: {\n Rj(a);\n break a;\n }\n case 2: {\n Sj(a);\n break a;\n }\n case 8: {\n vi(a);\n a = c[d >> 2] | 0;\n break;\n }\n case 4:\n break;\n default:\n break a;\n }\n vi(a);\n }\n while (0);\n return;\n }\n function sa(a, b) {\n a = a | 0;\n b = b | 0;\n a = c[(a + 16) >> 2] | 0;\n if (a | 0)\n $[c[c[a >> 2] >> 2] & 63](a, b) | 0;\n return;\n }\n function ta(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n c[b >> 2] = d;\n c[(b + 4) >> 2] = e;\n c[(b + 8) >> 2] = 0;\n a[(b + 12) >> 0] = 0;\n a[(b + 13) >> 0] = 0;\n c[(b + 16) >> 2] = 0;\n return;\n }\n function ua(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n Va((a + 4) | 0, b);\n Wa((a + 247) | 0);\n c[(a + 288) >> 2] = 0;\n c[(a + 292) >> 2] = 0;\n c[(a + 296) >> 2] = 0;\n Xa((a + 300) | 0);\n b = (a + 312) | 0;\n c[b >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n Ya((a + 328) | 0);\n Za(a);\n return;\n }\n function va(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4296;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n xa(a, e);\n V = d;\n return;\n }\n function wa(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function xa(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function ya(a) {\n a = a | 0;\n w(a | 0) | 0;\n lp();\n }\n function za(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Aa(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n jp(a);\n return;\n }\n function Ba(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 6407 ? (a + 12) | 0 : 0) | 0;\n }\n function Ca(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Da(a, b) {\n a = a | 0;\n b = b | 0;\n Ea(a);\n return;\n }\n function Ea(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Fa(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4324;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Ha(a, e);\n V = d;\n return;\n }\n function Ga(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Ha(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Ia(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ja(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n Ma(a);\n jp(a);\n }\n return;\n }\n function Ka(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 6605 ? (a + 12) | 0 : 0) | 0;\n }\n function La(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ma(a) {\n a = a | 0;\n Na((a + 320) | 0);\n Oa((a + 312) | 0);\n Pa((a + 300) | 0);\n Ta((a + 288) | 0);\n Qa((a + 247) | 0);\n Ra((a + 4) | 0);\n return;\n }\n function Na(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Oa(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Pa(a) {\n a = a | 0;\n Sa(a);\n return;\n }\n function Qa(a) {\n a = a | 0;\n a = (a + 34) | 0;\n a = d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24);\n if (a | 0)\n gq(a);\n return;\n }\n function Ra(a) {\n a = a | 0;\n Ua(c[(a + 12) >> 2] | 0);\n return;\n }\n function Sa(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function Ta(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function Ua(a) {\n a = a | 0;\n er(c[(a + -4) >> 2] | 0);\n return;\n }\n function Va(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = _a(1048576) | 0;\n return;\n }\n function Wa(b) {\n b = b | 0;\n var c = 0;\n c = (b + 32) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n b = (b + 34) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function Xa(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n return;\n }\n function Ya(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n a = (a + 16) | 0;\n c[a >> 2] = -1;\n c[(a + 4) >> 2] = -1;\n return;\n }\n function Za(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 64) | 0;\n g = (i + 32) | 0;\n e = (i + 56) | 0;\n d = (i + 16) | 0;\n h = i;\n $a(c[b >> 2] | 0, e, 4);\n mb(g, e, (e + 4) | 0);\n e = lb(6693) | 0;\n f = a[(g + 11) >> 0] | 0;\n if ((e | 0) == (((f << 24) >> 24 < 0 ? c[(g + 4) >> 2] | 0 : f & 255) | 0)) {\n f = (Hq(g, 0, -1, 6693, e) | 0) == 0;\n Cq(g);\n if (f) {\n e = c[b >> 2] | 0;\n c[d >> 2] = 0;\n c[(d + 4) >> 2] = 0;\n c[(d + 8) >> 2] = 0;\n c[(d + 12) >> 2] = 0;\n c[g >> 2] = c[d >> 2];\n c[(g + 4) >> 2] = c[(d + 4) >> 2];\n c[(g + 8) >> 2] = c[(d + 8) >> 2];\n c[(g + 12) >> 2] = c[(d + 12) >> 2];\n bb(e, g);\n e = (b + 20) | 0;\n $a(c[b >> 2] | 0, e, 227);\n cb(b, e);\n f = db() | 0;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n if ((d | 0) != (f | 0))\n do {\n eb(g, d);\n fb(g, e);\n gb(g);\n d = (d + 24) | 0;\n } while ((d | 0) != (f | 0));\n hb(b);\n ib(b);\n jb(c[b >> 2] | 0);\n f = c[b >> 2] | 0;\n d = ((c[(b + 116) >> 2] | 0) + 8) | 0;\n e = h;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = (h + 8) | 0;\n c[e >> 2] = d;\n c[(e + 4) >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n c[(g + 4) >> 2] = c[(h + 4) >> 2];\n c[(g + 8) >> 2] = c[(h + 8) >> 2];\n c[(g + 12) >> 2] = c[(h + 12) >> 2];\n bb(f, g);\n kb((b + 4) | 0);\n V = i;\n return;\n }\n }\n else\n Cq(g);\n i = v(8) | 0;\n ab(i);\n x(i | 0, 2592, 8);\n }\n function _a(a) {\n a = a | 0;\n var b = 0;\n b = dr((a + 68) | 0) | 0;\n a = (b + 68) & -64;\n c[(a + -4) >> 2] = b;\n return a | 0;\n }\n function $a(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = (b + 13) | 0;\n if (!(a[i >> 0] | 0)) {\n h = (b + 4) | 0;\n f = c[h >> 2] | 0;\n j = (b + 8) | 0;\n g = c[j >> 2] | 0;\n k = (f - g) | 0;\n e = (k | 0) < (e | 0) ? k : e;\n if (e) {\n vr(d | 0, ((c[b >> 2] | 0) + g) | 0, e | 0) | 0;\n g = c[j >> 2] | 0;\n f = c[h >> 2] | 0;\n }\n k = (g + e) | 0;\n c[j >> 2] = k;\n c[(b + 16) >> 2] = e;\n if ((k | 0) >= (f | 0))\n a[i >> 0] = 1;\n }\n else\n a[(b + 12) >> 0] = 1;\n return;\n }\n function ab(a) {\n a = a | 0;\n xq(a, 6791);\n c[a >> 2] = 4352;\n return;\n }\n function bb(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = (d + 8) | 0;\n d = c[g >> 2] | 0;\n g = c[(g + 4) >> 2] | 0;\n e = c[(b + 4) >> 2] | 0;\n f = (((e | 0) < 0) << 31) >> 31;\n if (((g | 0) < (f | 0)) | (((g | 0) == (f | 0)) & (d >>> 0 < e >>> 0)))\n c[(b + 8) >> 2] = d;\n else\n a[(b + 12) >> 0] = 1;\n return;\n }\n function cb(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0.0, e = 0.0, f = 0, i = 0.0, j = 0, k = 0.0, l = 0, m = 0.0, n = 0, o = 0.0;\n n = (c + 179) | 0;\n a[h >> 0] = a[n >> 0];\n a[(h + 1) >> 0] = a[(n + 1) >> 0];\n a[(h + 2) >> 0] = a[(n + 2) >> 0];\n a[(h + 3) >> 0] = a[(n + 3) >> 0];\n a[(h + 4) >> 0] = a[(n + 4) >> 0];\n a[(h + 5) >> 0] = a[(n + 5) >> 0];\n a[(h + 6) >> 0] = a[(n + 6) >> 0];\n a[(h + 7) >> 0] = a[(n + 7) >> 0];\n m = +g[h >> 3];\n j = (c + 187) | 0;\n a[h >> 0] = a[j >> 0];\n a[(h + 1) >> 0] = a[(j + 1) >> 0];\n a[(h + 2) >> 0] = a[(j + 2) >> 0];\n a[(h + 3) >> 0] = a[(j + 3) >> 0];\n a[(h + 4) >> 0] = a[(j + 4) >> 0];\n a[(h + 5) >> 0] = a[(j + 5) >> 0];\n a[(h + 6) >> 0] = a[(j + 6) >> 0];\n a[(h + 7) >> 0] = a[(j + 7) >> 0];\n o = +g[h >> 3];\n b = (c + 195) | 0;\n a[h >> 0] = a[b >> 0];\n a[(h + 1) >> 0] = a[(b + 1) >> 0];\n a[(h + 2) >> 0] = a[(b + 2) >> 0];\n a[(h + 3) >> 0] = a[(b + 3) >> 0];\n a[(h + 4) >> 0] = a[(b + 4) >> 0];\n a[(h + 5) >> 0] = a[(b + 5) >> 0];\n a[(h + 6) >> 0] = a[(b + 6) >> 0];\n a[(h + 7) >> 0] = a[(b + 7) >> 0];\n i = +g[h >> 3];\n l = (c + 203) | 0;\n a[h >> 0] = a[l >> 0];\n a[(h + 1) >> 0] = a[(l + 1) >> 0];\n a[(h + 2) >> 0] = a[(l + 2) >> 0];\n a[(h + 3) >> 0] = a[(l + 3) >> 0];\n a[(h + 4) >> 0] = a[(l + 4) >> 0];\n a[(h + 5) >> 0] = a[(l + 5) >> 0];\n a[(h + 6) >> 0] = a[(l + 6) >> 0];\n a[(h + 7) >> 0] = a[(l + 7) >> 0];\n k = +g[h >> 3];\n f = (c + 211) | 0;\n a[h >> 0] = a[f >> 0];\n a[(h + 1) >> 0] = a[(f + 1) >> 0];\n a[(h + 2) >> 0] = a[(f + 2) >> 0];\n a[(h + 3) >> 0] = a[(f + 3) >> 0];\n a[(h + 4) >> 0] = a[(f + 4) >> 0];\n a[(h + 5) >> 0] = a[(f + 5) >> 0];\n a[(h + 6) >> 0] = a[(f + 6) >> 0];\n a[(h + 7) >> 0] = a[(f + 7) >> 0];\n d = +g[h >> 3];\n c = (c + 219) | 0;\n a[h >> 0] = a[c >> 0];\n a[(h + 1) >> 0] = a[(c + 1) >> 0];\n a[(h + 2) >> 0] = a[(c + 2) >> 0];\n a[(h + 3) >> 0] = a[(c + 3) >> 0];\n a[(h + 4) >> 0] = a[(c + 4) >> 0];\n a[(h + 5) >> 0] = a[(c + 5) >> 0];\n a[(h + 6) >> 0] = a[(c + 6) >> 0];\n a[(h + 7) >> 0] = a[(c + 7) >> 0];\n e = +g[h >> 3];\n g[h >> 3] = o;\n a[n >> 0] = a[h >> 0];\n a[(n + 1) >> 0] = a[(h + 1) >> 0];\n a[(n + 2) >> 0] = a[(h + 2) >> 0];\n a[(n + 3) >> 0] = a[(h + 3) >> 0];\n a[(n + 4) >> 0] = a[(h + 4) >> 0];\n a[(n + 5) >> 0] = a[(h + 5) >> 0];\n a[(n + 6) >> 0] = a[(h + 6) >> 0];\n a[(n + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = m;\n a[l >> 0] = a[h >> 0];\n a[(l + 1) >> 0] = a[(h + 1) >> 0];\n a[(l + 2) >> 0] = a[(h + 2) >> 0];\n a[(l + 3) >> 0] = a[(h + 3) >> 0];\n a[(l + 4) >> 0] = a[(h + 4) >> 0];\n a[(l + 5) >> 0] = a[(h + 5) >> 0];\n a[(l + 6) >> 0] = a[(h + 6) >> 0];\n a[(l + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = k;\n a[j >> 0] = a[h >> 0];\n a[(j + 1) >> 0] = a[(h + 1) >> 0];\n a[(j + 2) >> 0] = a[(h + 2) >> 0];\n a[(j + 3) >> 0] = a[(h + 3) >> 0];\n a[(j + 4) >> 0] = a[(h + 4) >> 0];\n a[(j + 5) >> 0] = a[(h + 5) >> 0];\n a[(j + 6) >> 0] = a[(h + 6) >> 0];\n a[(j + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = i;\n a[f >> 0] = a[h >> 0];\n a[(f + 1) >> 0] = a[(h + 1) >> 0];\n a[(f + 2) >> 0] = a[(h + 2) >> 0];\n a[(f + 3) >> 0] = a[(h + 3) >> 0];\n a[(f + 4) >> 0] = a[(h + 4) >> 0];\n a[(f + 5) >> 0] = a[(h + 5) >> 0];\n a[(f + 6) >> 0] = a[(h + 6) >> 0];\n a[(f + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = e;\n a[b >> 0] = a[h >> 0];\n a[(b + 1) >> 0] = a[(h + 1) >> 0];\n a[(b + 2) >> 0] = a[(h + 2) >> 0];\n a[(b + 3) >> 0] = a[(h + 3) >> 0];\n a[(b + 4) >> 0] = a[(h + 4) >> 0];\n a[(b + 5) >> 0] = a[(h + 5) >> 0];\n a[(b + 6) >> 0] = a[(h + 6) >> 0];\n a[(b + 7) >> 0] = a[(h + 7) >> 0];\n g[h >> 3] = d;\n a[c >> 0] = a[h >> 0];\n a[(c + 1) >> 0] = a[(h + 1) >> 0];\n a[(c + 2) >> 0] = a[(h + 2) >> 0];\n a[(c + 3) >> 0] = a[(h + 3) >> 0];\n a[(c + 4) >> 0] = a[(h + 4) >> 0];\n a[(c + 5) >> 0] = a[(h + 5) >> 0];\n a[(c + 6) >> 0] = a[(h + 6) >> 0];\n a[(c + 7) >> 0] = a[(h + 7) >> 0];\n return;\n }\n function db() {\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n g = V;\n V = (V + 48) | 0;\n e = (g + 24) | 0;\n f = g;\n b = (g + 44) | 0;\n if ((a[21440] | 0) == 0 ? Tp(21440) | 0 : 0) {\n c[5374] = 0;\n c[5375] = 0;\n c[5376] = 0;\n $p(21440);\n }\n if ((a[21448] | 0) == 0 ? Tp(21448) | 0 : 0)\n $p(21448);\n if ((c[5374] | 0) == (c[5375] | 0)) {\n rq(21508);\n if ((c[5374] | 0) == (c[5375] | 0)) {\n a[e >> 0] = a[b >> 0] | 0;\n pb(f, e);\n b = c[5375] | 0;\n do\n if (b >>> 0 >= (c[5376] | 0) >>> 0) {\n b = (((((b - (c[5374] | 0)) | 0) / 24) | 0) + 1) | 0;\n d = xb(21496) | 0;\n if (d >>> 0 < b >>> 0)\n cr(21496);\n else {\n h = c[5374] | 0;\n j = ((((c[5376] | 0) - h) | 0) / 24) | 0;\n i = j << 1;\n ub(e, j >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((((c[5375] | 0) - h) | 0) / 24) | 0, 21504);\n d = (e + 8) | 0;\n sb(c[d >> 2] | 0, f);\n c[d >> 2] = (c[d >> 2] | 0) + 24;\n vb(21496, e);\n wb(e);\n break;\n }\n }\n else {\n qb(e, 21496, 1);\n j = (e + 4) | 0;\n sb(c[j >> 2] | 0, f);\n c[j >> 2] = (c[j >> 2] | 0) + 24;\n rb(e);\n }\n while (0);\n gb(f);\n }\n sq(21508);\n }\n V = g;\n return 21496;\n }\n function eb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n do\n if (e)\n if ((b | 0) == (e | 0)) {\n e = tb(a) | 0;\n c[(a + 16) >> 2] = e;\n d = c[d >> 2] | 0;\n da[c[((c[d >> 2] | 0) + 12) >> 2] & 15](d, e);\n break;\n }\n else {\n c[(a + 16) >> 2] = Z[c[((c[e >> 2] | 0) + 8) >> 2] & 15](e) | 0;\n break;\n }\n else\n c[(a + 16) >> 2] = 0;\n while (0);\n return;\n }\n function fb(a, b) {\n a = a | 0;\n b = b | 0;\n a = c[(a + 16) >> 2] | 0;\n if (!a) {\n b = v(4) | 0;\n c[b >> 2] = 0;\n Nb(b);\n x(b | 0, 4168, 131);\n }\n else {\n da[c[((c[a >> 2] | 0) + 24) >> 2] & 15](a, b);\n return;\n }\n }\n function gb(a) {\n a = a | 0;\n var b = 0;\n b = c[(a + 16) >> 2] | 0;\n if ((a | 0) != (b | 0)) {\n if (b | 0)\n ca[c[((c[b >> 2] | 0) + 20) >> 2] & 255](b);\n }\n else\n ca[c[((c[b >> 2] | 0) + 16) >> 2] & 255](b);\n return;\n }\n function hb(b) {\n b = b | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n q = V;\n V = (V + 96) | 0;\n i = (q + 16) | 0;\n o = q;\n l = (q + 72) | 0;\n j = c[b >> 2] | 0;\n m = e[(b + 114) >> 1] | 0;\n n = o;\n c[n >> 2] = 0;\n c[(n + 4) >> 2] = 0;\n n = (o + 8) | 0;\n c[n >> 2] = m;\n c[(n + 4) >> 2] = 0;\n c[i >> 2] = c[o >> 2];\n c[(i + 4) >> 2] = c[(o + 4) >> 2];\n c[(i + 8) >> 2] = c[(o + 8) >> 2];\n c[(i + 12) >> 2] = c[(o + 12) >> 2];\n bb(j, i);\n j = (b + 120) | 0;\n a: do\n if (c[j >> 2] | 0) {\n k = (i + 2) | 0;\n m = (i + 16) | 0;\n n = (i + 20) | 0;\n o = (i + 18) | 0;\n g = 0;\n while (1) {\n if (!(Ob(c[b >> 2] | 0) | 0))\n break a;\n if (Pb(c[b >> 2] | 0) | 0)\n break a;\n $a(c[b >> 2] | 0, i, 54);\n f = 7277;\n h = k;\n while (1) {\n if ((a[h >> 0] | 0) != (a[f >> 0] | 0))\n break;\n h = (h + 1) | 0;\n if ((h | 0) == (m | 0)) {\n p = 8;\n break;\n }\n else\n f = (f + 1) | 0;\n }\n if ((p | 0) == 8\n ? ((p = 0), ((d[o >> 0] | (d[(o + 1) >> 0] << 8)) << 16) >> 16 == 22204)\n : 0)\n break;\n Rb(c[b >> 2] | 0, (d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535, 0, 1);\n g = (g + 1) | 0;\n if (g >>> 0 >= (c[j >> 2] | 0) >>> 0)\n break a;\n }\n o = (d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535;\n p = fq(o) | 0;\n $a(c[b >> 2] | 0, p, o);\n Qb(b, p);\n jp(p);\n p = (b + 125) | 0;\n Tb(l, (b + 247) | 0, (d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 65535);\n Ub((b + 300) | 0, l) | 0;\n Pa(l);\n V = q;\n return;\n }\n while (0);\n q = v(8) | 0;\n Sb(q);\n x(q | 0, 2672, 8);\n }\n function ib(a) {\n a = a | 0;\n var b = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = V;\n V = (V + 176) | 0;\n g = (n + 40) | 0;\n h = (n + 24) | 0;\n b = (n + 16) | 0;\n f = n;\n k = (n + 152) | 0;\n l = (n + 136) | 0;\n m = (n + 56) | 0;\n j = c[a >> 2] | 0;\n i = (a + 116) | 0;\n o = c[i >> 2] | 0;\n e = h;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = (h + 8) | 0;\n c[e >> 2] = o;\n c[(e + 4) >> 2] = 0;\n c[g >> 2] = c[h >> 2];\n c[(g + 4) >> 2] = c[(h + 4) >> 2];\n c[(g + 8) >> 2] = c[(h + 8) >> 2];\n c[(g + 12) >> 2] = c[(h + 12) >> 2];\n bb(j, g);\n j = b;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n $a(c[a >> 2] | 0, b, 8);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n e = b;\n b = c[e >> 2] | 0;\n e = c[(e + 4) >> 2] | 0;\n if (((b | 0) == -1) & ((e | 0) == -1)) {\n o = v(8) | 0;\n ic(o, 7488);\n x(o | 0, 2720, 8);\n }\n o = c[a >> 2] | 0;\n j = f;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n j = (f + 8) | 0;\n c[j >> 2] = b;\n c[(j + 4) >> 2] = e;\n c[g >> 2] = c[f >> 2];\n c[(g + 4) >> 2] = c[(f + 4) >> 2];\n c[(g + 8) >> 2] = c[(f + 8) >> 2];\n c[(g + 12) >> 2] = c[(f + 12) >> 2];\n bb(o, g);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n $a(c[a >> 2] | 0, g, 8);\n if (!(Ob(c[a >> 2] | 0) | 0)) {\n o = v(8) | 0;\n hc(o);\n x(o | 0, 2704, 8);\n }\n if (c[g >> 2] | 0) {\n o = v(8) | 0;\n jc(o);\n x(o | 0, 2736, 8);\n }\n h = (a + 288) | 0;\n j = (a + 292) | 0;\n c[j >> 2] = c[h >> 2];\n o = (a + 259) | 0;\n if ((d[o >> 0] |\n (d[(o + 1) >> 0] << 8) |\n (d[(o + 2) >> 0] << 16) |\n (d[(o + 3) >> 0] << 24) |\n 0) ==\n -1) {\n o = v(8) | 0;\n ic(o, 7606);\n x(o | 0, 2720, 8);\n }\n f = (g + 4) | 0;\n kc(h, ((c[f >> 2] | 0) + 1) | 0);\n o = c[h >> 2] | 0;\n c[o >> 2] = (c[i >> 2] | 0) + 8;\n c[(o + 4) >> 2] = 0;\n if ((c[f >> 2] | 0) >>> 0 > 1) {\n Va(k, c[a >> 2] | 0);\n lc(l, k);\n mc(m, 32, 2, 8, 0);\n nc(l);\n oc(m);\n if (!(c[f >> 2] | 0)) {\n h = c[h >> 2] | 0;\n e = h;\n }\n else {\n e = 1;\n do {\n if (e >>> 0 > 1)\n b = c[((c[h >> 2] | 0) + ((e + -1) << 3)) >> 2] | 0;\n else\n b = 0;\n i = pc(m, l, b, 1) | 0;\n b = c[h >> 2] | 0;\n o = (b + (e << 3)) | 0;\n c[o >> 2] = i;\n c[(o + 4) >> 2] = (((i | 0) < 0) << 31) >> 31;\n e = (e + 1) | 0;\n } while (e >>> 0 <= (c[f >> 2] | 0) >>> 0);\n e = b;\n h = b;\n }\n b = c[j >> 2] | 0;\n if (((b - e) >> 3) >>> 0 > 1) {\n g = (b - h) >> 3;\n f = h;\n b = 1;\n e = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n do {\n o = (h + (b << 3)) | 0;\n j = o;\n e = lr(c[j >> 2] | 0, c[(j + 4) >> 2] | 0, e | 0, f | 0) | 0;\n f = u() | 0;\n c[o >> 2] = e;\n c[(o + 4) >> 2] = f;\n b = (b + 1) | 0;\n } while (b >>> 0 < g >>> 0);\n }\n qc(m);\n rc(l);\n Ra(k);\n }\n V = n;\n return;\n }\n function jb(b) {\n b = b | 0;\n a[(b + 12) >> 0] = 0;\n a[(b + 13) >> 0] = 0;\n return;\n }\n function kb(a) {\n a = a | 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n return;\n }\n function lb(a) {\n a = a | 0;\n return fo(a) | 0;\n }\n function mb(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 16) | 0;\n g = d;\n h = i;\n f = (e - g) | 0;\n if (f >>> 0 > 4294967279)\n yq(b);\n if (f >>> 0 < 11)\n a[(b + 11) >> 0] = f;\n else {\n k = (f + 16) & -16;\n j = eq(k) | 0;\n c[b >> 2] = j;\n c[(b + 8) >> 2] = k | -2147483648;\n c[(b + 4) >> 2] = f;\n b = j;\n }\n if ((d | 0) != (e | 0)) {\n g = (e - g) | 0;\n f = b;\n while (1) {\n nb(f, d);\n d = (d + 1) | 0;\n if ((d | 0) == (e | 0))\n break;\n else\n f = (f + 1) | 0;\n }\n b = (b + g) | 0;\n }\n a[h >> 0] = 0;\n nb(b, h);\n V = i;\n return;\n }\n function nb(b, c) {\n b = b | 0;\n c = c | 0;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function ob(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function pb(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 4372;\n c[(a + 16) >> 2] = a;\n return;\n }\n function qb(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 24) | 0);\n return;\n }\n function rb(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function sb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n do\n if (e)\n if ((b | 0) == (e | 0)) {\n e = tb(a) | 0;\n c[(a + 16) >> 2] = e;\n d = c[d >> 2] | 0;\n da[c[((c[d >> 2] | 0) + 12) >> 2] & 15](d, e);\n break;\n }\n else {\n c[(a + 16) >> 2] = e;\n c[d >> 2] = 0;\n break;\n }\n else\n c[(a + 16) >> 2] = 0;\n while (0);\n return;\n }\n function tb(a) {\n a = a | 0;\n return a | 0;\n }\n function ub(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 178956970) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 24) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 24) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 24) | 0);\n return;\n }\n function vb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n d = (d + -24) | 0;\n sb((e + -24) | 0, d);\n e = ((c[h >> 2] | 0) + -24) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function wb(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -24) | 0;\n c[e >> 2] = f;\n gb(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function xb(a) {\n a = a | 0;\n return 178956970;\n }\n function yb(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function zb(a) {\n a = a | 0;\n a = eq(8) | 0;\n c[a >> 2] = 4372;\n return a | 0;\n }\n function Ab(a, b) {\n a = a | 0;\n b = b | 0;\n c[b >> 2] = 4372;\n return;\n }\n function Bb(a) {\n a = a | 0;\n return;\n }\n function Cb(a) {\n a = a | 0;\n Da(a, 8);\n return;\n }\n function Db(a, b) {\n a = a | 0;\n b = b | 0;\n Hb((a + 4) | 0, b);\n return;\n }\n function Eb(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 7183 ? (a + 4) | 0 : 0) | 0;\n }\n function Fb(a) {\n a = a | 0;\n return 2664;\n }\n function Gb(a) {\n a = a | 0;\n return;\n }\n function Hb(a, b) {\n a = a | 0;\n b = b | 0;\n Ib(a, b);\n return;\n }\n function Ib(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0;\n b = (c + 104) | 0;\n c = d[b >> 0] | 0;\n e = c >>> 7;\n f = (c >>> 6) & 1;\n if (((e | 0) == 1) & ((f | 0) != 0)) {\n f = v(8) | 0;\n Jb(f);\n x(f | 0, 2632, 8);\n }\n if ((e | 0) == (f | 0)) {\n f = v(8) | 0;\n Kb(f);\n x(f | 0, 2648, 8);\n }\n else {\n a[b >> 0] = c & 63;\n return;\n }\n }\n function Jb(a) {\n a = a | 0;\n xq(a, 7076);\n c[a >> 2] = 4416;\n return;\n }\n function Kb(a) {\n a = a | 0;\n xq(a, 7144);\n c[a >> 2] = 4436;\n return;\n }\n function Lb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Mb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Nb(a) {\n a = a | 0;\n c[a >> 2] = 6092;\n return;\n }\n function Ob(b) {\n b = b | 0;\n var c = 0;\n c = (b + 12) | 0;\n b = (a[c >> 0] | 0) == 0;\n a[c >> 0] = 0;\n return b | 0;\n }\n function Pb(b) {\n b = b | 0;\n return ((a[(b + 13) >> 0] | 0) != 0) | 0;\n }\n function Qb(a, b) {\n a = a | 0;\n b = b | 0;\n a = (a + 247) | 0;\n Vb(a, b);\n if (((d[a >> 0] | (d[(a + 1) >> 0] << 8)) << 16) >> 16 == 2)\n return;\n else {\n b = v(8) | 0;\n Wb(b);\n x(b | 0, 2688, 8);\n }\n }\n function Rb(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n switch (f | 0) {\n case 0:\n break;\n case 2: {\n f = c[(b + 4) >> 2] | 0;\n d =\n lr(lr(d | 0, e | 0, -1, -1) | 0, u() | 0, f | 0, ((((f | 0) < 0) << 31) >> 31) | 0) | 0;\n e = u() | 0;\n break;\n }\n case 1: {\n f = c[(b + 8) >> 2] | 0;\n d = lr(f | 0, ((((f | 0) < 0) << 31) >> 31) | 0, d | 0, e | 0) | 0;\n e = u() | 0;\n break;\n }\n default: {\n e = 0;\n d = 0;\n }\n }\n g = c[(b + 4) >> 2] | 0;\n h = (((g | 0) < 0) << 31) >> 31;\n f = (b + 12) | 0;\n if (((e | 0) < 0) | (((e | 0) > (h | 0)) | (((e | 0) == (h | 0)) & (d >>> 0 >= g >>> 0))))\n a[f >> 0] = 1;\n else {\n a[f >> 0] = 0;\n c[(b + 8) >> 2] = d;\n }\n return;\n }\n function Sb(a) {\n a = a | 0;\n xq(a, 7410);\n c[a >> 2] = 4476;\n return;\n }\n function Tb(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n Xa(a);\n f = (b + 32) | 0;\n if (((d[f >> 0] | (d[(f + 1) >> 0] << 8)) << 16) >> 16) {\n e = (b + 34) | 0;\n b = 0;\n do {\n j =\n d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n k = (j + ((b * 6) | 0)) | 0;\n i = (j + ((b * 6) | 0) + 2) | 0;\n j = (j + ((b * 6) | 0) + 4) | 0;\n _b(g, (d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 65535, (d[i >> 0] | (d[(i + 1) >> 0] << 8)) & 65535, (d[j >> 0] | (d[(j + 1) >> 0] << 8)) & 65535);\n Zb(a, g);\n c = (c - ((d[i >> 0] | (d[(i + 1) >> 0] << 8)) & 65535)) | 0;\n b = (b + 1) | 0;\n } while (b >>> 0 < ((d[f >> 0] | (d[(f + 1) >> 0] << 8)) & 65535) >>> 0);\n }\n if ((c | 0) < 0) {\n k = v(8) | 0;\n Wb(k);\n x(k | 0, 2688, 8);\n }\n if (c | 0) {\n _b(g, 0, c, 2);\n Zb(a, g);\n }\n V = h;\n return;\n }\n function Ub(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0, e = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 1) | 0;\n a[e >> 0] = a[d >> 0] | 0;\n fc(b, c, e);\n V = d;\n return b | 0;\n }\n function Vb(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n f = (c + 2) | 0;\n h = d[c >> 0] | (d[(c + 1) >> 0] << 8);\n a[b >> 0] = h;\n a[(b + 1) >> 0] = h >> 8;\n h = (b + 2) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n a[(b + 4) >> 0] = a[(c + 4) >> 0] | 0;\n h = (c + 6) | 0;\n a[(b + 5) >> 0] = a[(c + 5) >> 0] | 0;\n f = (c + 8) | 0;\n e = (b + 6) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8);\n a[e >> 0] = h;\n a[(e + 1) >> 0] = h >> 8;\n e = (c + 12) | 0;\n h = (b + 8) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8) | (d[(f + 2) >> 0] << 16) | (d[(f + 3) >> 0] << 24);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n a[(h + 2) >> 0] = f >> 16;\n a[(h + 3) >> 0] = f >> 24;\n h = (b + 12) | 0;\n e = d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n a[h >> 0] = e;\n a[(h + 1) >> 0] = e >> 8;\n a[(h + 2) >> 0] = e >> 16;\n a[(h + 3) >> 0] = e >> 24;\n h = (c + 16) | 0;\n e = h;\n e = d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24);\n h = (h + 4) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8) | (d[(h + 2) >> 0] << 16) | (d[(h + 3) >> 0] << 24);\n f = (b + 16) | 0;\n i = f;\n a[i >> 0] = e;\n a[(i + 1) >> 0] = e >> 8;\n a[(i + 2) >> 0] = e >> 16;\n a[(i + 3) >> 0] = e >> 24;\n f = (f + 4) | 0;\n a[f >> 0] = h;\n a[(f + 1) >> 0] = h >> 8;\n a[(f + 2) >> 0] = h >> 16;\n a[(f + 3) >> 0] = h >> 24;\n f = (c + 32) | 0;\n h = (c + 24) | 0;\n i = h;\n i = d[i >> 0] | (d[(i + 1) >> 0] << 8) | (d[(i + 2) >> 0] << 16) | (d[(i + 3) >> 0] << 24);\n h = (h + 4) | 0;\n h = d[h >> 0] | (d[(h + 1) >> 0] << 8) | (d[(h + 2) >> 0] << 16) | (d[(h + 3) >> 0] << 24);\n e = (b + 24) | 0;\n g = e;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = h;\n a[(e + 1) >> 0] = h >> 8;\n a[(e + 2) >> 0] = h >> 16;\n a[(e + 3) >> 0] = h >> 24;\n e = (c + 34) | 0;\n h = (b + 32) | 0;\n f = d[f >> 0] | (d[(f + 1) >> 0] << 8);\n a[h >> 0] = f;\n a[(h + 1) >> 0] = f >> 8;\n g = (b + 34) | 0;\n b = d[g >> 0] | (d[(g + 1) >> 0] << 8) | (d[(g + 2) >> 0] << 16) | (d[(g + 3) >> 0] << 24);\n if (!b)\n b = f;\n else {\n gq(b);\n b = d[h >> 0] | (d[(h + 1) >> 0] << 8);\n }\n f = fq(((b & 65535) * 6) | 0) | 0;\n a[g >> 0] = f;\n a[(g + 1) >> 0] = f >> 8;\n a[(g + 2) >> 0] = f >> 16;\n a[(g + 3) >> 0] = f >> 24;\n if ((b << 16) >> 16\n ? ((b = (c + 36) | 0),\n (i = d[e >> 0] | (d[(e + 1) >> 0] << 8)),\n (a[f >> 0] = i),\n (a[(f + 1) >> 0] = i >> 8),\n (c = (c + 38) | 0),\n (i = (f + 2) | 0),\n (b = d[b >> 0] | (d[(b + 1) >> 0] << 8)),\n (a[i >> 0] = b),\n (a[(i + 1) >> 0] = b >> 8),\n (i = (f + 4) | 0),\n (c = d[c >> 0] | (d[(c + 1) >> 0] << 8)),\n (a[i >> 0] = c),\n (a[(i + 1) >> 0] = c >> 8),\n ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 65535) > 1)\n : 0) {\n b = 1;\n do {\n c = e;\n e = (e + 6) | 0;\n i =\n d[g >> 0] | (d[(g + 1) >> 0] << 8) | (d[(g + 2) >> 0] << 16) | (d[(g + 3) >> 0] << 24);\n j = (c + 8) | 0;\n f = (i + ((b * 6) | 0)) | 0;\n k = d[e >> 0] | (d[(e + 1) >> 0] << 8);\n a[f >> 0] = k;\n a[(f + 1) >> 0] = k >> 8;\n c = (c + 10) | 0;\n f = (i + ((b * 6) | 0) + 2) | 0;\n j = d[j >> 0] | (d[(j + 1) >> 0] << 8);\n a[f >> 0] = j;\n a[(f + 1) >> 0] = j >> 8;\n i = (i + ((b * 6) | 0) + 4) | 0;\n c = d[c >> 0] | (d[(c + 1) >> 0] << 8);\n a[i >> 0] = c;\n a[(i + 1) >> 0] = c >> 8;\n b = (b + 1) | 0;\n } while (b >>> 0 < ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 65535) >>> 0);\n }\n return;\n }\n function Wb(a) {\n a = a | 0;\n xq(a, 7354);\n c[a >> 2] = 4456;\n return;\n }\n function Xb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Yb(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Zb(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 32) | 0;\n f = i;\n g = (a + 4) | 0;\n d = c[g >> 2] | 0;\n h = (a + 8) | 0;\n do\n if ((d | 0) == (c[h >> 2] | 0)) {\n d = (((((d - (c[a >> 2] | 0)) | 0) / 12) | 0) + 1) | 0;\n e = ec(a) | 0;\n if (e >>> 0 < d >>> 0)\n cr(a);\n else {\n j = c[a >> 2] | 0;\n k = ((((c[h >> 2] | 0) - j) | 0) / 12) | 0;\n h = k << 1;\n bc(f, k >>> 0 < (e >>> 1) >>> 0 ? (h >>> 0 < d >>> 0 ? d : h) : e, ((((c[g >> 2] | 0) - j) | 0) / 12) | 0, (a + 8) | 0);\n h = (f + 8) | 0;\n g = c[h >> 2] | 0;\n c[g >> 2] = c[b >> 2];\n c[(g + 4) >> 2] = c[(b + 4) >> 2];\n c[(g + 8) >> 2] = c[(b + 8) >> 2];\n c[h >> 2] = (c[h >> 2] | 0) + 12;\n cc(a, f);\n dc(f);\n break;\n }\n }\n else {\n $b(f, a, 1);\n k = (f + 4) | 0;\n j = c[k >> 2] | 0;\n c[j >> 2] = c[b >> 2];\n c[(j + 4) >> 2] = c[(b + 4) >> 2];\n c[(j + 8) >> 2] = c[(b + 8) >> 2];\n c[k >> 2] = (c[k >> 2] | 0) + 12;\n ac(f);\n }\n while (0);\n V = i;\n return;\n }\n function _b(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n c[(a + 8) >> 2] = e;\n return;\n }\n function $b(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 12) | 0);\n return;\n }\n function ac(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function bc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 357913941) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 12) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 12) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 12) | 0);\n return;\n }\n function cc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n e = c[a >> 2] | 0;\n h = (a + 4) | 0;\n g = (b + 4) | 0;\n f = ((c[h >> 2] | 0) - e) | 0;\n d = ((c[g >> 2] | 0) + (((((f | 0) / -12) | 0) * 12) | 0)) | 0;\n c[g >> 2] = d;\n if ((f | 0) > 0) {\n ur(d | 0, e | 0, f | 0) | 0;\n e = g;\n d = c[g >> 2] | 0;\n }\n else\n e = g;\n g = c[a >> 2] | 0;\n c[a >> 2] = d;\n c[e >> 2] = g;\n g = (b + 8) | 0;\n f = c[h >> 2] | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = f;\n g = (a + 8) | 0;\n h = (b + 12) | 0;\n a = c[g >> 2] | 0;\n c[g >> 2] = c[h >> 2];\n c[h >> 2] = a;\n c[b >> 2] = c[e >> 2];\n return;\n }\n function dc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + ((~(((((e + -12 - b) | 0) >>> 0) / 12) | 0) * 12) | 0);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ec(a) {\n a = a | 0;\n return 357913941;\n }\n function fc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n gc(a);\n c[a >> 2] = c[b >> 2];\n d = (b + 4) | 0;\n c[(a + 4) >> 2] = c[d >> 2];\n e = (b + 8) | 0;\n c[(a + 8) >> 2] = c[e >> 2];\n c[e >> 2] = 0;\n c[d >> 2] = 0;\n c[b >> 2] = 0;\n return;\n }\n function gc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n e = (a + 4) | 0;\n c[e >> 2] = d;\n f = (a + 8) | 0;\n Da(b, ((c[f >> 2] | 0) - d) | 0);\n c[f >> 2] = 0;\n c[e >> 2] = 0;\n c[a >> 2] = 0;\n }\n return;\n }\n function hc(a) {\n a = a | 0;\n xq(a, 7660);\n c[a >> 2] = 4496;\n return;\n }\n function ic(a, b) {\n a = a | 0;\n b = b | 0;\n xq(a, b);\n c[a >> 2] = 4516;\n return;\n }\n function jc(a) {\n a = a | 0;\n xq(a, 7704);\n c[a >> 2] = 4536;\n return;\n }\n function kc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[a >> 2] | 0;\n e = ((c[d >> 2] | 0) - f) >> 3;\n if (e >>> 0 >= b >>> 0) {\n if (e >>> 0 > b >>> 0)\n c[d >> 2] = f + (b << 3);\n }\n else\n vc(a, (b - e) | 0);\n return;\n }\n function lc(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = -1;\n return;\n }\n function mc(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n c[(a + 12) >> 2] = e;\n c[(a + 16) >> 2] = f;\n c[(a + 36) >> 2] = 0;\n c[(a + 40) >> 2] = 0;\n c[(a + 44) >> 2] = 0;\n Gc((a + 48) | 0);\n c[(a + 68) >> 2] = 0;\n c[(a + 72) >> 2] = 0;\n c[(a + 76) >> 2] = 0;\n do\n if (!f) {\n d = (a + 20) | 0;\n if (((b + -1) | 0) >>> 0 < 31) {\n c[d >> 2] = b;\n f = 1 << b;\n c[(a + 24) >> 2] = f;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n break;\n }\n else {\n c[d >> 2] = 32;\n c[(a + 24) >> 2] = 0;\n c[(a + 28) >> 2] = -2147483648;\n d = 2147483647;\n break;\n }\n }\n else {\n e = (a + 20) | 0;\n c[e >> 2] = 0;\n c[(a + 24) >> 2] = f;\n d = f;\n g = 0;\n while (1) {\n d = d >>> 1;\n b = (g + 1) | 0;\n if (!d)\n break;\n else\n g = b;\n }\n c[e >> 2] = ((1 << g) | 0) == (f | 0) ? g : b;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n }\n while (0);\n c[(a + 32) >> 2] = d;\n c[a >> 2] = 0;\n return;\n }\n function nc(a) {\n a = a | 0;\n var b = 0;\n b = ((Jc(c[a >> 2] | 0) | 0) & 255) << 24;\n b = (((Jc(c[a >> 2] | 0) | 0) & 255) << 16) | b;\n b = b | (((Jc(c[a >> 2] | 0) | 0) & 255) << 8);\n c[(a + 4) >> 2] = b | ((Jc(c[a >> 2] | 0) | 0) & 255);\n return;\n }\n function oc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0;\n q = V;\n V = (V + 64) | 0;\n o = (q + 44) | 0;\n p = q;\n k = (a + 36) | 0;\n l = (a + 40) | 0;\n a: do\n if ((c[k >> 2] | 0) == (c[l >> 2] | 0)) {\n m = (a + 8) | 0;\n b: do\n if (!(c[m >> 2] | 0))\n n = (a + 20) | 0;\n else {\n f = (a + 20) | 0;\n g = (a + 44) | 0;\n h = (o + 4) | 0;\n i = (a + 44) | 0;\n j = (o + 8) | 0;\n e = 0;\n while (1) {\n Oc(p, ((c[f >> 2] | 0) + 1) | 0, 0, 0);\n b = c[l >> 2] | 0;\n if (b >>> 0 < (c[g >> 2] | 0) >>> 0) {\n Pc(o, k, 1);\n Rc(c[h >> 2] | 0, p);\n c[h >> 2] = (c[h >> 2] | 0) + 44;\n Qc(o);\n }\n else {\n b = (((((b - (c[k >> 2] | 0)) | 0) / 44) | 0) + 1) | 0;\n d = Vc(k) | 0;\n if (d >>> 0 < b >>> 0)\n break;\n r = c[k >> 2] | 0;\n t = ((((c[g >> 2] | 0) - r) | 0) / 44) | 0;\n s = t << 1;\n Sc(o, t >>> 0 < (d >>> 1) >>> 0 ? (s >>> 0 < b >>> 0 ? b : s) : d, ((((c[l >> 2] | 0) - r) | 0) / 44) | 0, i);\n Rc(c[j >> 2] | 0, p);\n c[j >> 2] = (c[j >> 2] | 0) + 44;\n Tc(k, o);\n Uc(o);\n }\n Ic(p);\n e = (e + 1) | 0;\n if (e >>> 0 >= (c[m >> 2] | 0) >>> 0) {\n n = f;\n break b;\n }\n }\n cr(k);\n }\n while (0);\n if (c[n >> 2] | 0) {\n h = (a + 12) | 0;\n i = (a + 68) | 0;\n j = (a + 72) | 0;\n k = (a + 76) | 0;\n l = (o + 4) | 0;\n f = (a + 76) | 0;\n g = (o + 8) | 0;\n e = 1;\n while (1) {\n b = c[h >> 2] | 0;\n Oc(p, 1 << (e >>> 0 > b >>> 0 ? b : e), 0, 0);\n b = c[j >> 2] | 0;\n if (b >>> 0 < (c[k >> 2] | 0) >>> 0) {\n Pc(o, i, 1);\n Rc(c[l >> 2] | 0, p);\n c[l >> 2] = (c[l >> 2] | 0) + 44;\n Qc(o);\n }\n else {\n b = (((((b - (c[i >> 2] | 0)) | 0) / 44) | 0) + 1) | 0;\n d = Vc(i) | 0;\n if (d >>> 0 < b >>> 0)\n break;\n t = c[i >> 2] | 0;\n r = ((((c[k >> 2] | 0) - t) | 0) / 44) | 0;\n s = r << 1;\n Sc(o, r >>> 0 < (d >>> 1) >>> 0 ? (s >>> 0 < b >>> 0 ? b : s) : d, ((((c[j >> 2] | 0) - t) | 0) / 44) | 0, f);\n Rc(c[g >> 2] | 0, p);\n c[g >> 2] = (c[g >> 2] | 0) + 44;\n Tc(i, o);\n Uc(o);\n }\n Ic(p);\n e = (e + 1) | 0;\n if (e >>> 0 > (c[n >> 2] | 0) >>> 0)\n break a;\n }\n cr(i);\n }\n }\n while (0);\n V = q;\n return;\n }\n function pc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n d = ((Yc(a, b, ((c[(a + 36) >> 2] | 0) + ((e * 44) | 0)) | 0) | 0) + d) | 0;\n b = c[(a + 24) >> 2] | 0;\n if ((d | 0) < 0)\n return (d + b) | 0;\n else\n return (d - (d >>> 0 < b >>> 0 ? 0 : b)) | 0;\n return 0;\n }\n function qc(a) {\n a = a | 0;\n Hc((a + 68) | 0);\n Hc((a + 36) | 0);\n return;\n }\n function rc(a) {\n a = a | 0;\n return;\n }\n function sc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function tc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function uc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function vc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n i = V;\n V = (V + 32) | 0;\n f = i;\n g = (a + 8) | 0;\n h = (a + 4) | 0;\n d = c[h >> 2] | 0;\n do\n if ((((c[g >> 2] | 0) - d) >> 3) >>> 0 < b >>> 0) {\n d = (((d - (c[a >> 2] | 0)) >> 3) + b) | 0;\n e = Dc(a) | 0;\n if (e >>> 0 < d >>> 0)\n cr(a);\n else {\n j = c[a >> 2] | 0;\n k = ((c[g >> 2] | 0) - j) | 0;\n g = k >> 2;\n xc(f, (k >> 3) >>> 0 < (e >>> 1) >>> 0 ? (g >>> 0 < d >>> 0 ? d : g) : e, ((c[h >> 2] | 0) - j) >> 3, (a + 8) | 0);\n yc(f, b);\n zc(a, f);\n Ac(f);\n break;\n }\n }\n else\n wc(a, b);\n while (0);\n V = i;\n return;\n }\n function wc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n Bc(e, a, b);\n a = (e + 4) | 0;\n b = c[a >> 2] | 0;\n d = c[(e + 8) >> 2] | 0;\n if ((b | 0) != (d | 0)) {\n d = (d + -8 - b) | 0;\n wr(b | 0, 0, ((d + 8) & -8) | 0) | 0;\n c[a >> 2] = b + (((d >>> 3) + 1) << 3);\n }\n Cc(e);\n V = f;\n return;\n }\n function xc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 536870911) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 3) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 3)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 3);\n return;\n }\n function yc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n e = V;\n V = (V + 16) | 0;\n d = e;\n Ec(d, (a + 8) | 0, b);\n a = c[d >> 2] | 0;\n b = c[(d + 4) >> 2] | 0;\n if ((a | 0) != (b | 0)) {\n b = (b + -8 - a) | 0;\n wr(a | 0, 0, ((b + 8) & -8) | 0) | 0;\n c[d >> 2] = a + (((b >>> 3) + 1) << 3);\n }\n Fc(d);\n V = e;\n return;\n }\n function zc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n e = c[a >> 2] | 0;\n h = (a + 4) | 0;\n g = (b + 4) | 0;\n f = ((c[h >> 2] | 0) - e) | 0;\n d = ((c[g >> 2] | 0) + ((0 - (f >> 3)) << 3)) | 0;\n c[g >> 2] = d;\n if ((f | 0) > 0) {\n ur(d | 0, e | 0, f | 0) | 0;\n e = g;\n d = c[g >> 2] | 0;\n }\n else\n e = g;\n g = c[a >> 2] | 0;\n c[a >> 2] = d;\n c[e >> 2] = g;\n g = (b + 8) | 0;\n f = c[h >> 2] | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = f;\n g = (a + 8) | 0;\n h = (b + 12) | 0;\n a = c[g >> 2] | 0;\n c[g >> 2] = c[h >> 2];\n c[h >> 2] = a;\n c[b >> 2] = c[e >> 2];\n return;\n }\n function Ac(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -8 - b) | 0) >>> 3) << 3);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function Bc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + (d << 3);\n return;\n }\n function Cc(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function Dc(a) {\n a = a | 0;\n return 536870911;\n }\n function Ec(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = (c[b >> 2] | 0) + (d << 3);\n c[(a + 8) >> 2] = b;\n return;\n }\n function Fc(a) {\n a = a | 0;\n c[c[(a + 8) >> 2] >> 2] = c[a >> 2];\n return;\n }\n function Gc(a) {\n a = a | 0;\n c[(a + 12) >> 2] = 1;\n c[(a + 16) >> 2] = 2;\n c[(a + 8) >> 2] = 4096;\n c[(a + 4) >> 2] = 4;\n c[a >> 2] = 4;\n return;\n }\n function Hc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n d = c[a >> 2] | 0;\n if (d | 0) {\n e = (a + 4) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) == (d | 0))\n b = d;\n else {\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n }\n c[e >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - b) | 0);\n }\n return;\n }\n function Ic(a) {\n a = a | 0;\n var b = 0;\n b = c[(a + 8) >> 2] | 0;\n if (b | 0)\n Ua(b);\n b = c[(a + 12) >> 2] | 0;\n if (b | 0)\n Ua(b);\n b = c[(a + 16) >> 2] | 0;\n if (b | 0)\n Ua(b);\n return;\n }\n function Jc(b) {\n b = b | 0;\n var d = 0, e = 0;\n e = (b + 4) | 0;\n d = c[e >> 2] | 0;\n if ((d | 0) >= (c[(b + 8) >> 2] | 0)) {\n Kc(b);\n d = c[e >> 2] | 0;\n }\n b = c[(b + 12) >> 2] | 0;\n c[e >> 2] = d + 1;\n return a[(b + d) >> 0] | 0;\n }\n function Kc(a) {\n a = a | 0;\n var b = 0;\n c[(a + 4) >> 2] = 0;\n $a(c[a >> 2] | 0, c[(a + 12) >> 2] | 0, 1048576);\n b = Lc(c[a >> 2] | 0) | 0;\n c[(a + 8) >> 2] = b;\n if (!b) {\n b = v(8) | 0;\n Mc(b);\n x(b | 0, 2752, 8);\n }\n else\n return;\n }\n function Lc(a) {\n a = a | 0;\n return c[(a + 16) >> 2] | 0;\n }\n function Mc(a) {\n a = a | 0;\n xq(a, 7769);\n c[a >> 2] = 4556;\n return;\n }\n function Nc(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Oc(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0;\n c[b >> 2] = d;\n a[(b + 4) >> 0] = e & 1;\n h = (b + 8) | 0;\n c[h >> 2] = 0;\n i = (b + 12) | 0;\n c[i >> 2] = 0;\n g = (b + 16) | 0;\n c[g >> 2] = 0;\n if (((d + -2) | 0) >>> 0 > 2046) {\n b = v(8) | 0;\n xq(b, 7789);\n x(b | 0, 3912, 8);\n }\n c[(b + 32) >> 2] = d + -1;\n if ((d >>> 0 > 16) & (e ^ 1)) {\n e = 3;\n while (1)\n if ((1 << (e + 2)) >>> 0 < d >>> 0)\n e = (e + 1) | 0;\n else\n break;\n d = 1 << e;\n c[(b + 36) >> 2] = d;\n c[(b + 40) >> 2] = 15 - e;\n c[g >> 2] = _a(((d << 2) + 8) | 0) | 0;\n d = c[b >> 2] | 0;\n }\n else {\n c[g >> 2] = 0;\n c[(b + 40) >> 2] = 0;\n c[(b + 36) >> 2] = 0;\n }\n c[h >> 2] = _a(d << 2) | 0;\n g = _a(c[b >> 2] << 2) | 0;\n c[i >> 2] = g;\n c[(b + 20) >> 2] = 0;\n d = c[b >> 2] | 0;\n e = (b + 24) | 0;\n c[e >> 2] = d;\n d = (d | 0) != 0;\n if (!f) {\n if (d) {\n d = 0;\n do {\n c[(g + (d << 2)) >> 2] = 1;\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n }\n else if (d) {\n d = 0;\n do {\n c[(g + (d << 2)) >> 2] = c[(f + (d << 2)) >> 2];\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n Xc(b);\n f = (((c[b >> 2] | 0) + 6) | 0) >>> 1;\n c[e >> 2] = f;\n c[(b + 28) >> 2] = f;\n return;\n }\n function Pc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + ((d * 44) | 0);\n return;\n }\n function Qc(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function Rc(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n c[b >> 2] = c[d >> 2];\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n e = (d + 8) | 0;\n c[(b + 8) >> 2] = c[e >> 2];\n c[(b + 12) >> 2] = c[(d + 12) >> 2];\n c[(b + 16) >> 2] = c[(d + 16) >> 2];\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n c[(b + 36) >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n c[(e + 8) >> 2] = 0;\n return;\n }\n function Sc(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 97612893) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq((b * 44) | 0) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + ((d * 44) | 0)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + ((b * 44) | 0);\n return;\n }\n function Tc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n d = (d + -44) | 0;\n Wc((e + -44) | 0, d);\n e = ((c[h >> 2] | 0) + -44) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function Uc(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -44) | 0;\n c[e >> 2] = f;\n Ic(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function Vc(a) {\n a = a | 0;\n return 97612893;\n }\n function Wc(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = c[d >> 2] | 0;\n c[b >> 2] = e;\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n h = (b + 36) | 0;\n c[h >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n e = e << 2;\n f = _a(e) | 0;\n c[(b + 8) >> 2] = f;\n g = c[b >> 2] | 0;\n if (g | 0)\n vr(f | 0, c[(d + 8) >> 2] | 0, (g << 2) | 0) | 0;\n e = _a(e) | 0;\n c[(b + 12) >> 2] = e;\n f = c[b >> 2] | 0;\n if (f | 0)\n vr(e | 0, c[(d + 12) >> 2] | 0, (f << 2) | 0) | 0;\n e = c[h >> 2] | 0;\n if (e) {\n f = _a(((e << 2) + 8) | 0) | 0;\n c[(b + 16) >> 2] = f;\n e = ((c[h >> 2] << 2) + 8) | 0;\n if (e | 0)\n vr(f | 0, c[(d + 16) >> 2] | 0, e | 0) | 0;\n }\n else\n c[(b + 16) >> 2] = 0;\n return;\n }\n function Xc(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0;\n r = (b + 24) | 0;\n g = (b + 20) | 0;\n d = ((c[g >> 2] | 0) + (c[r >> 2] | 0)) | 0;\n c[g >> 2] = d;\n if (d >>> 0 > 32768) {\n c[g >> 2] = 0;\n if (!(c[b >> 2] | 0))\n d = 0;\n else {\n f = c[(b + 12) >> 2] | 0;\n e = 0;\n do {\n n = (f + (e << 2)) | 0;\n d = (((c[n >> 2] | 0) + 1) | 0) >>> 1;\n c[n >> 2] = d;\n d = ((c[g >> 2] | 0) + d) | 0;\n c[g >> 2] = d;\n e = (e + 1) | 0;\n } while (e >>> 0 < (c[b >> 2] | 0) >>> 0);\n }\n }\n n = (2147483648 / (d >>> 0)) | 0;\n do\n if ((a[(b + 4) >> 0] | 0) == 0 ? ((o = (b + 36) | 0), (c[o >> 2] | 0) != 0) : 0) {\n if (c[b >> 2] | 0) {\n j = c[(b + 8) >> 2] | 0;\n k = c[(b + 12) >> 2] | 0;\n l = (b + 40) | 0;\n m = (b + 16) | 0;\n d = 0;\n h = 0;\n i = 0;\n do {\n e = (q(h, n) | 0) >>> 16;\n c[(j + (i << 2)) >> 2] = e;\n h = ((c[(k + (i << 2)) >> 2] | 0) + h) | 0;\n e = e >>> (c[l >> 2] | 0);\n if (d >>> 0 < e >>> 0) {\n f = (i + -1) | 0;\n g = c[m >> 2] | 0;\n do {\n d = (d + 1) | 0;\n c[(g + (d << 2)) >> 2] = f;\n } while ((d | 0) != (e | 0));\n d = e;\n }\n i = (i + 1) | 0;\n } while (i >>> 0 < (c[b >> 2] | 0) >>> 0);\n e = c[m >> 2] | 0;\n c[e >> 2] = 0;\n if (d >>> 0 > (c[o >> 2] | 0) >>> 0) {\n d = b;\n break;\n }\n }\n else {\n e = c[(b + 16) >> 2] | 0;\n c[e >> 2] = 0;\n d = 0;\n }\n do {\n d = (d + 1) | 0;\n c[(e + (d << 2)) >> 2] = (c[b >> 2] | 0) + -1;\n } while (d >>> 0 <= (c[o >> 2] | 0) >>> 0);\n d = b;\n }\n else\n p = 7;\n while (0);\n if ((p | 0) == 7)\n if (!(c[b >> 2] | 0))\n d = b;\n else {\n f = c[(b + 8) >> 2] | 0;\n g = c[(b + 12) >> 2] | 0;\n d = 0;\n e = 0;\n do {\n c[(f + (d << 2)) >> 2] = (q(e, n) | 0) >>> 16;\n e = ((c[(g + (d << 2)) >> 2] | 0) + e) | 0;\n d = (d + 1) | 0;\n } while (d >>> 0 < (c[b >> 2] | 0) >>> 0);\n d = b;\n }\n p = (((c[r >> 2] | 0) * 5) | 0) >>> 2;\n o = ((c[d >> 2] << 3) + 48) | 0;\n p = p >>> 0 > o >>> 0 ? o : p;\n c[r >> 2] = p;\n c[(b + 28) >> 2] = p;\n return;\n }\n function Yc(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n d = Zc(b, d) | 0;\n c[a >> 2] = d;\n do\n if (d) {\n if (d >>> 0 >= 32) {\n d = c[(a + 28) >> 2] | 0;\n break;\n }\n e = c[(a + 12) >> 2] | 0;\n if (d >>> 0 > e >>> 0) {\n e = (d - e) | 0;\n d = Zc(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n e = (d << e) | (_c(b, e) | 0);\n }\n else\n e = Zc(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n d = c[a >> 2] | 0;\n if ((e | 0) < ((1 << (d + -1)) | 0)) {\n d = (e + 1 + (-1 << d)) | 0;\n break;\n }\n else {\n d = (e + 1) | 0;\n break;\n }\n }\n else\n d = $c(b, (a + 48) | 0) | 0;\n while (0);\n return d | 0;\n }\n function Zc(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = (a + 8) | 0;\n m = c[n >> 2] | 0;\n f = c[(b + 16) >> 2] | 0;\n if (f) {\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n l = m >>> 15;\n c[n >> 2] = l;\n j = ((d >>> 0) / (l >>> 0)) | 0;\n i = j >>> (c[(b + 40) >> 2] | 0);\n g = c[(f + (i << 2)) >> 2] | 0;\n i = ((c[(f + ((i + 1) << 2)) >> 2] | 0) + 1) | 0;\n h = (g + 1) | 0;\n k = c[(b + 8) >> 2] | 0;\n if (i >>> 0 > h >>> 0) {\n f = g;\n g = i;\n do {\n h = ((g + f) | 0) >>> 1;\n i = (c[(k + (h << 2)) >> 2] | 0) >>> 0 > j >>> 0;\n f = i ? f : h;\n g = i ? h : g;\n h = (f + 1) | 0;\n } while (g >>> 0 > h >>> 0);\n g = f;\n }\n f = q(c[(k + (g << 2)) >> 2] | 0, l) | 0;\n if ((g | 0) == (c[(b + 32) >> 2] | 0))\n h = m;\n else\n h = q(c[(k + (h << 2)) >> 2] | 0, l) | 0;\n }\n else {\n k = m >>> 15;\n c[n >> 2] = k;\n i = c[b >> 2] | 0;\n l = c[(b + 8) >> 2] | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n j = i >>> 1;\n f = 0;\n h = m;\n g = 0;\n do {\n o = q(c[(l + (j << 2)) >> 2] | 0, k) | 0;\n m = o >>> 0 > d >>> 0;\n h = m ? o : h;\n f = m ? f : o;\n g = m ? g : j;\n i = m ? j : i;\n j = ((g + i) | 0) >>> 1;\n } while ((j | 0) != (g | 0));\n }\n c[e >> 2] = d - f;\n o = (h - f) | 0;\n c[n >> 2] = o;\n if (o >>> 0 < 16777216)\n ad(a);\n n = ((c[(b + 12) >> 2] | 0) + (g << 2)) | 0;\n c[n >> 2] = (c[n >> 2] | 0) + 1;\n n = (b + 28) | 0;\n o = ((c[n >> 2] | 0) + -1) | 0;\n c[n >> 2] = o;\n if (!o)\n Xc(b);\n return g | 0;\n }\n function _c(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n if (b >>> 0 > 19) {\n d = (bd(a) | 0) & 65535;\n return ((_c(a, (b + -16) | 0) | 0) << 16) | d | 0;\n }\n e = (a + 4) | 0;\n f = c[e >> 2] | 0;\n g = (a + 8) | 0;\n d = (c[g >> 2] | 0) >>> b;\n c[g >> 2] = d;\n b = ((f >>> 0) / (d >>> 0)) | 0;\n c[e >> 2] = f - (q(b, d) | 0);\n if (d >>> 0 < 16777216)\n ad(a);\n return b | 0;\n }\n function $c(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n e = (a + 8) | 0;\n f = c[e >> 2] | 0;\n d = q(f >>> 13, c[(b + 8) >> 2] | 0) | 0;\n g = (a + 4) | 0;\n h = c[g >> 2] | 0;\n i = h >>> 0 >= d >>> 0;\n if (i) {\n c[g >> 2] = h - d;\n d = (f - d) | 0;\n c[e >> 2] = d;\n }\n else {\n c[e >> 2] = d;\n h = (b + 12) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n }\n if (d >>> 0 < 16777216)\n ad(a);\n h = (b + 4) | 0;\n a = ((c[h >> 2] | 0) + -1) | 0;\n c[h >> 2] = a;\n if (!a)\n cd(b);\n return (i & 1) | 0;\n }\n function ad(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = (a + 4) | 0;\n d = (a + 8) | 0;\n e = c[b >> 2] | 0;\n do {\n e = (e << 8) | ((Jc(c[a >> 2] | 0) | 0) & 255);\n c[b >> 2] = e;\n f = c[d >> 2] << 8;\n c[d >> 2] = f;\n } while (f >>> 0 < 16777216);\n return;\n }\n function bd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[d >> 2] | 0;\n b = (a + 8) | 0;\n e = (c[b >> 2] | 0) >>> 16;\n c[b >> 2] = e;\n b = ((f >>> 0) / (e >>> 0)) | 0;\n c[d >> 2] = f - (q(b, e) | 0);\n ad(a);\n return (b & 65535) | 0;\n }\n function cd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0;\n f = c[a >> 2] | 0;\n d = (a + 16) | 0;\n b = ((c[d >> 2] | 0) + f) | 0;\n c[d >> 2] = b;\n if (b >>> 0 > 8192) {\n e = ((b + 1) | 0) >>> 1;\n c[d >> 2] = e;\n g = (a + 12) | 0;\n b = (((c[g >> 2] | 0) + 1) | 0) >>> 1;\n c[g >> 2] = b;\n if ((b | 0) == (e | 0)) {\n b = (e + 1) | 0;\n c[d >> 2] = b;\n d = b;\n b = e;\n }\n else\n d = e;\n }\n else {\n d = b;\n b = c[(a + 12) >> 2] | 0;\n }\n c[(a + 8) >> 2] = (q(b, (2147483648 / (d >>> 0)) | 0) | 0) >>> 18;\n g = (f * 5) | 0;\n g = g >>> 0 > 259 ? 64 : g >>> 2;\n c[a >> 2] = g;\n c[(a + 4) >> 2] = g;\n return;\n }\n function dd(a, b) {\n a = a | 0;\n b = b | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n m = V;\n V = (V + 32) | 0;\n h = (m + 16) | 0;\n i = (m + 8) | 0;\n j = m;\n k = (a + 336) | 0;\n f = k;\n g = (a + 259) | 0;\n if (!((c[(f + 4) >> 2] | 0) == 0\n ? (c[f >> 2] | 0) ==\n (d[g >> 0] |\n (d[(g + 1) >> 0] << 8) |\n (d[(g + 2) >> 0] << 16) |\n (d[(g + 3) >> 0] << 24) |\n 0)\n : 0)) {\n f = (a + 320) | 0;\n e = c[f >> 2] | 0;\n g = e;\n if (!((e | 0) != 0 ? (c[(a + 312) >> 2] | 0) != 0 : 0)) {\n e = g;\n l = 5;\n }\n }\n else {\n f = (a + 320) | 0;\n e = c[(a + 320) >> 2] | 0;\n l = 5;\n }\n if ((l | 0) == 5) {\n l = (a + 320) | 0;\n c[h >> 2] = e;\n c[l >> 2] = 0;\n e = (a + 324) | 0;\n c[(h + 4) >> 2] = c[e >> 2];\n c[e >> 2] = 0;\n Na(h);\n g = (a + 312) | 0;\n c[h >> 2] = c[g >> 2];\n c[g >> 2] = 0;\n n = (a + 316) | 0;\n c[(h + 4) >> 2] = c[n >> 2];\n c[n >> 2] = 0;\n Oa(h);\n o = eq(12) | 0;\n lc(o, (a + 4) | 0);\n c[j >> 2] = 0;\n c[h >> 2] = c[j >> 2];\n fd(i, o, h);\n o = c[i >> 2] | 0;\n c[i >> 2] = c[g >> 2];\n c[g >> 2] = o;\n o = (i + 4) | 0;\n j = c[o >> 2] | 0;\n c[o >> 2] = c[n >> 2];\n c[n >> 2] = j;\n Oa(i);\n ed(i, c[g >> 2] | 0, (a + 300) | 0);\n g = c[i >> 2] | 0;\n n = (i + 4) | 0;\n j = c[n >> 2] | 0;\n c[i >> 2] = 0;\n c[n >> 2] = 0;\n c[h >> 2] = c[l >> 2];\n c[l >> 2] = g;\n c[(h + 4) >> 2] = c[e >> 2];\n c[e >> 2] = j;\n Na(h);\n Na(i);\n e = (a + 328) | 0;\n j = e;\n j = lr(c[j >> 2] | 0, c[(j + 4) >> 2] | 0, 1, 0) | 0;\n l = u() | 0;\n c[e >> 2] = j;\n c[(e + 4) >> 2] = l;\n e = k;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n e = c[f >> 2] | 0;\n }\n $[c[c[e >> 2] >> 2] & 63](e, b) | 0;\n l = k;\n l = lr(c[l >> 2] | 0, c[(l + 4) >> 2] | 0, 1, 0) | 0;\n n = u() | 0;\n o = k;\n c[o >> 2] = l;\n c[(o + 4) >> 2] = n;\n V = m;\n return;\n }\n function ed(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n h = V;\n V = (V + 64) | 0;\n e = (h + 56) | 0;\n f = h;\n g = ld(d) | 0;\n if ((g | 0) == -1) {\n h = v(8) | 0;\n md(h);\n x(h | 0, 2784, 8);\n }\n d = nd(d) | 0;\n a: do\n if (!d)\n switch (g | 0) {\n case 0: {\n g = eq(4788) | 0;\n xd(g);\n wd(a, b, g);\n break a;\n }\n case 1: {\n g = eq(5116) | 0;\n zd(g);\n yd(a, b, g);\n break a;\n }\n case 2: {\n g = eq(5104) | 0;\n Bd(g);\n Ad(a, b, g);\n break a;\n }\n case 3: {\n g = eq(5432) | 0;\n Dd(g);\n Cd(a, b, g);\n break a;\n }\n default: {\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n break a;\n }\n }\n else {\n od(e, b);\n pd(c[e >> 2] | 0);\n if ((g | 2 | 0) == 3)\n qd(c[e >> 2] | 0);\n if ((g | 1 | 0) == 3)\n rd(c[e >> 2] | 0);\n g = c[e >> 2] | 0;\n td(f, d);\n sd(g, f);\n ud(f);\n c[a >> 2] = c[e >> 2];\n g = (e + 4) | 0;\n c[(a + 4) >> 2] = c[g >> 2];\n c[e >> 2] = 0;\n c[g >> 2] = 0;\n vd(e);\n }\n while (0);\n V = h;\n return;\n }\n function fd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4576;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n gd(a, e);\n V = d;\n return;\n }\n function gd(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function hd(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function id(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n rc(a);\n jp(a);\n }\n return;\n }\n function jd(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 7983 ? (a + 12) | 0 : 0) | 0;\n }\n function kd(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ld(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = ((c[(a + 4) >> 2] | 0) - (c[a >> 2] | 0)) | 0;\n a: do\n if (((b | 0) != 0\n ? ((d = ((((b | 0) / 12) | 0) + ((((nd(a) | 0) != 0) << 31) >> 31)) | 0),\n (d | 0) != 0)\n : 0)\n ? ((b = c[a >> 2] | 0), !(Ed(b, Fd() | 0) | 0))\n : 0) {\n switch (d | 0) {\n case 1: {\n a = 0;\n break a;\n }\n case 2: {\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Hd() | 0) | 0) {\n a = 1;\n break a;\n }\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Id() | 0) | 0) {\n a = 2;\n break a;\n }\n break;\n }\n case 3: {\n if (Gd(((c[a >> 2] | 0) + 12) | 0, Hd() | 0) | 0\n ? ((d = ((c[a >> 2] | 0) + 24) | 0), Gd(d, Id() | 0) | 0)\n : 0) {\n a = 3;\n break a;\n }\n break;\n }\n default: {\n }\n }\n a = -1;\n }\n else\n a = -1;\n while (0);\n return a | 0;\n }\n function md(a) {\n a = a | 0;\n xq(a, 8131);\n c[a >> 2] = 4604;\n return;\n }\n function nd(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[(a + 4) >> 2] | 0;\n if (((b | 0) != (c[a >> 2] | 0) ? ((d = b), (c[(d + -12) >> 2] | 0) == 0) : 0)\n ? (c[(d + -4) >> 2] | 0) == 2\n : 0)\n a = c[(d + -8) >> 2] | 0;\n else\n a = 0;\n return a | 0;\n }\n function od(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 4) | 0;\n g = d;\n f = eq(24) | 0;\n Kd(f, b);\n c[g >> 2] = 0;\n c[e >> 2] = c[g >> 2];\n Ld(a, f, e);\n V = d;\n return;\n }\n function pd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(4792) | 0;\n Zd(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n _d(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function qd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(336) | 0;\n af(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n bf(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function rd(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(324) | 0;\n Af(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Bf(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function sd(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n h = (j + 12) | 0;\n i = j;\n e = (j + 8) | 0;\n g = eq(64) | 0;\n Qf(g, c[(a + 4) >> 2] | 0, b);\n f = (a + 8) | 0;\n c[e >> 2] = 0;\n c[h >> 2] = c[e >> 2];\n Rf(i, g, h);\n g = (a + 12) | 0;\n b = c[g >> 2] | 0;\n e = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[e >> 2] | 0) >>> 0) {\n b = (((b - (c[f >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(f) | 0;\n if (d >>> 0 < b >>> 0)\n cr(f);\n else {\n k = c[f >> 2] | 0;\n l = ((c[e >> 2] | 0) - k) | 0;\n e = l >> 2;\n be(h, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (e >>> 0 < b >>> 0 ? b : e) : d, ((c[g >> 2] | 0) - k) >> 3, (a + 16) | 0);\n a = (h + 8) | 0;\n g = c[a >> 2] | 0;\n c[g >> 2] = c[i >> 2];\n e = (i + 4) | 0;\n c[(g + 4) >> 2] = c[e >> 2];\n c[i >> 2] = 0;\n c[e >> 2] = 0;\n c[a >> 2] = g + 8;\n ce(f, h);\n de(h);\n break;\n }\n }\n else {\n $d(h, f, 1);\n l = (h + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[i >> 2];\n a = (i + 4) | 0;\n c[(k + 4) >> 2] = c[a >> 2];\n c[i >> 2] = 0;\n c[a >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(h);\n }\n while (0);\n Sd(i);\n V = j;\n return;\n }\n function td(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = V;\n V = (V + 48) | 0;\n f = e;\n c[b >> 2] = d;\n a[(b + 4) >> 0] = 0;\n Jg((b + 8) | 0, d);\n Jg((b + 20) | 0, d);\n Oc(f, 256, 0, 0);\n Kg((b + 32) | 0, d, f);\n Ic(f);\n V = e;\n return;\n }\n function ud(a) {\n a = a | 0;\n Ng((a + 32) | 0);\n _f((a + 20) | 0);\n _f((a + 8) | 0);\n return;\n }\n function vd(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function wd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n Og(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n Pg(a, g, f);\n V = e;\n return;\n }\n function xd(a) {\n a = a | 0;\n ge(a);\n $g((a + 4784) | 0);\n return;\n }\n function yd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n ah(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n bh(a, g, f);\n V = e;\n return;\n }\n function zd(a) {\n a = a | 0;\n ge(a);\n nh((a + 4784) | 0);\n return;\n }\n function Ad(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n oh(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n ph(a, g, f);\n V = e;\n return;\n }\n function Bd(a) {\n a = a | 0;\n ge(a);\n Bh((a + 4784) | 0);\n return;\n }\n function Cd(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 16) | 0;\n f = (e + 4) | 0;\n h = e;\n g = eq(12) | 0;\n Ch(g, b, d);\n c[h >> 2] = 0;\n c[f >> 2] = c[h >> 2];\n Dh(a, g, f);\n V = e;\n return;\n }\n function Dd(a) {\n a = a | 0;\n ge(a);\n Ph((a + 4784) | 0);\n return;\n }\n function Ed(a, b) {\n a = a | 0;\n b = b | 0;\n return ((Gd(a, b) | 0) ^ 1) | 0;\n }\n function Fd() {\n if ((a[21456] | 0) == 0 ? Tp(21456) | 0 : 0) {\n _b(21536, 6, 20, 2);\n $p(21456);\n }\n return 21536;\n }\n function Gd(a, b) {\n a = a | 0;\n b = b | 0;\n if ((c[a >> 2] | 0) == (c[b >> 2] | 0) ? (c[(a + 8) >> 2] | 0) == (c[(b + 8) >> 2] | 0) : 0)\n a = (c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0);\n else\n a = 0;\n return a | 0;\n }\n function Hd() {\n if ((a[21464] | 0) == 0 ? Tp(21464) | 0 : 0) {\n _b(21548, 7, 8, 2);\n $p(21464);\n }\n return 21548;\n }\n function Id() {\n if ((a[21472] | 0) == 0 ? Tp(21472) | 0 : 0) {\n _b(21560, 8, 6, 2);\n $p(21472);\n }\n return 21560;\n }\n function Jd(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Kd(b, d) {\n b = b | 0;\n d = d | 0;\n Md(b);\n c[b >> 2] = 4624;\n c[(b + 4) >> 2] = d;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function Ld(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4664;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Ud(a, e);\n V = d;\n return;\n }\n function Md(a) {\n a = a | 0;\n c[a >> 2] = 4644;\n return;\n }\n function Nd(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n h = k;\n e = c[(b + 8) >> 2] | 0;\n i = c[(b + 12) >> 2] | 0;\n if ((e | 0) != (i | 0)) {\n j = (h + 4) | 0;\n do {\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n g = c[(e + 4) >> 2] | 0;\n c[j >> 2] = g;\n if (g | 0) {\n g = (g + 4) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n }\n d = $[c[((c[f >> 2] | 0) + 12) >> 2] & 63](f, d) | 0;\n Sd(h);\n e = (e + 8) | 0;\n } while ((e | 0) != (i | 0));\n }\n e = (b + 20) | 0;\n if (a[e >> 0] | 0) {\n a[e >> 0] = 0;\n nc(c[(b + 4) >> 2] | 0);\n }\n V = k;\n return d | 0;\n }\n function Od(a) {\n a = a | 0;\n c[a >> 2] = 4624;\n Td((a + 8) | 0);\n Qd(a);\n return;\n }\n function Pd(a) {\n a = a | 0;\n Od(a);\n jp(a);\n return;\n }\n function Qd(a) {\n a = a | 0;\n return;\n }\n function Rd(a) {\n a = a | 0;\n U();\n }\n function Sd(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Td(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n d = c[a >> 2] | 0;\n if (d | 0) {\n e = (a + 4) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) == (d | 0))\n b = d;\n else {\n do {\n b = (b + -8) | 0;\n Sd(b);\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n }\n c[e >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - b) | 0);\n }\n return;\n }\n function Ud(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Vd(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Wd(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Xd(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 8546 ? (a + 12) | 0 : 0) | 0;\n }\n function Yd(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Zd(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4692;\n c[(a + 4) >> 2] = b;\n ge((a + 8) | 0);\n return;\n }\n function _d(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4740;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function $d(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + (d << 3);\n return;\n }\n function ae(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function be(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 536870911) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 3) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 3)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 3);\n return;\n }\n function ce(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n i = c[a >> 2] | 0;\n j = (a + 4) | 0;\n d = c[j >> 2] | 0;\n h = (b + 4) | 0;\n if ((d | 0) == (i | 0)) {\n f = h;\n g = a;\n e = c[h >> 2] | 0;\n d = i;\n }\n else {\n e = c[h >> 2] | 0;\n do {\n g = d;\n d = (d + -8) | 0;\n c[(e + -8) >> 2] = c[d >> 2];\n g = (g + -4) | 0;\n c[(e + -4) >> 2] = c[g >> 2];\n c[d >> 2] = 0;\n c[g >> 2] = 0;\n e = ((c[h >> 2] | 0) + -8) | 0;\n c[h >> 2] = e;\n } while ((d | 0) != (i | 0));\n f = h;\n g = a;\n d = c[a >> 2] | 0;\n }\n c[g >> 2] = e;\n c[f >> 2] = d;\n i = (b + 8) | 0;\n h = c[j >> 2] | 0;\n c[j >> 2] = c[i >> 2];\n c[i >> 2] = h;\n i = (a + 8) | 0;\n j = (b + 12) | 0;\n a = c[i >> 2] | 0;\n c[i >> 2] = c[j >> 2];\n c[j >> 2] = a;\n c[b >> 2] = c[f >> 2];\n return;\n }\n function de(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = c[(a + 4) >> 2] | 0;\n e = (a + 8) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n f = (b + -8) | 0;\n c[e >> 2] = f;\n Sd(f);\n b = c[e >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ee(a) {\n a = a | 0;\n return 536870911;\n }\n function fe(a) {\n a = a | 0;\n c[a >> 2] = 4716;\n return;\n }\n function ge(b) {\n b = b | 0;\n oe(b);\n pe((b + 3980) | 0);\n qe((b + 4380) | 0);\n a[(b + 4780) >> 0] = 0;\n a[(b + 4781) >> 0] = 0;\n return;\n }\n function he(a) {\n a = a | 0;\n c[a >> 2] = 4692;\n ze((a + 8) | 0);\n le(a);\n return;\n }\n function ie(a) {\n a = a | 0;\n he(a);\n jp(a);\n return;\n }\n function je(a, b) {\n a = a | 0;\n b = b | 0;\n return b | 0;\n }\n function ke(a, b) {\n a = a | 0;\n b = b | 0;\n return Be((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function le(a) {\n a = a | 0;\n return;\n }\n function me(a) {\n a = a | 0;\n le(a);\n jp(a);\n return;\n }\n function ne(a, b) {\n a = a | 0;\n b = b | 0;\n return b | 0;\n }\n function oe(d) {\n d = d | 0;\n var e = 0, f = 0;\n te(d);\n ue((d + 52) | 0);\n ue((d + 436) | 0);\n Oc((d + 852) | 0, 64, 0, 0);\n a[(d + 3976) >> 0] = 0;\n e = (d + 20) | 0;\n f = (e + 32) | 0;\n do {\n b[e >> 1] = 0;\n e = (e + 2) | 0;\n } while ((e | 0) < (f | 0));\n e = eq(44) | 0;\n Oc(e, 256, 0, 0);\n c[(d + 896) >> 2] = e;\n e = eq(44) | 0;\n Oc(e, 256, 0, 0);\n c[(d + 900) >> 2] = e;\n e = (d + 820) | 0;\n c[e >> 2] = 0;\n c[(e + 4) >> 2] = 0;\n c[(e + 8) >> 2] = 0;\n c[(e + 12) >> 2] = 0;\n c[(e + 16) >> 2] = 0;\n c[(e + 20) >> 2] = 0;\n c[(e + 24) >> 2] = 0;\n c[(e + 28) >> 2] = 0;\n e = 0;\n do {\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 904 + (e << 2)) >> 2] = f;\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 1928 + (e << 2)) >> 2] = f;\n f = eq(44) | 0;\n Oc(f, 256, 0, 0);\n c[(d + 2952 + (e << 2)) >> 2] = f;\n e = (e + 1) | 0;\n } while (e >>> 0 < 256);\n return;\n }\n function pe(a) {\n a = a | 0;\n xe(a, 16, 4, 8, 0);\n xe((a + 80) | 0, 16, 1, 8, 0);\n xe((a + 160) | 0, 32, 2, 8, 0);\n xe((a + 240) | 0, 32, 22, 8, 0);\n xe((a + 320) | 0, 32, 20, 8, 0);\n return;\n }\n function qe(a) {\n a = a | 0;\n mc(a, 16, 4, 8, 0);\n mc((a + 80) | 0, 16, 1, 8, 0);\n mc((a + 160) | 0, 32, 2, 8, 0);\n mc((a + 240) | 0, 32, 22, 8, 0);\n mc((a + 320) | 0, 32, 20, 8, 0);\n return;\n }\n function re(a) {\n a = a | 0;\n ye((a + 320) | 0);\n ye((a + 240) | 0);\n ye((a + 160) | 0);\n ye((a + 80) | 0);\n ye(a);\n return;\n }\n function se(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[(a + 896) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 900) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n d = 0;\n do {\n b = c[(a + 904 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 1928 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n b = c[(a + 2952 + (d << 2)) >> 2] | 0;\n if (b | 0) {\n Ic(b);\n jp(b);\n }\n d = (d + 1) | 0;\n } while ((d | 0) != 256);\n Ic((a + 852) | 0);\n return;\n }\n function te(b) {\n b = b | 0;\n var c = 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n c = (b + 4) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 12) | 0;\n c = b;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function ue(a) {\n a = a | 0;\n var b = 0;\n b = (a + 384) | 0;\n do {\n ve(a);\n a = (a + 24) | 0;\n } while ((a | 0) != (b | 0));\n return;\n }\n function ve(a) {\n a = a | 0;\n we(a);\n return;\n }\n function we(b) {\n b = b | 0;\n c[b >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function xe(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n c[(a + 12) >> 2] = e;\n c[(a + 16) >> 2] = f;\n c[(a + 36) >> 2] = 0;\n c[(a + 40) >> 2] = 0;\n c[(a + 44) >> 2] = 0;\n Gc((a + 48) | 0);\n c[(a + 68) >> 2] = 0;\n c[(a + 72) >> 2] = 0;\n c[(a + 76) >> 2] = 0;\n do\n if (!f) {\n d = (a + 20) | 0;\n if (((b + -1) | 0) >>> 0 < 31) {\n c[d >> 2] = b;\n f = 1 << b;\n c[(a + 24) >> 2] = f;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n break;\n }\n else {\n c[d >> 2] = 32;\n c[(a + 24) >> 2] = 0;\n c[(a + 28) >> 2] = -2147483648;\n d = 2147483647;\n break;\n }\n }\n else {\n e = (a + 20) | 0;\n c[e >> 2] = 0;\n c[(a + 24) >> 2] = f;\n d = f;\n g = 0;\n while (1) {\n d = d >>> 1;\n b = (g + 1) | 0;\n if (!d)\n break;\n else\n g = b;\n }\n c[e >> 2] = ((1 << g) | 0) == (f | 0) ? g : b;\n d = f >>> 1;\n c[(a + 28) >> 2] = 0 - d;\n d = (f + -1 - d) | 0;\n }\n while (0);\n c[(a + 32) >> 2] = d;\n c[a >> 2] = 0;\n return;\n }\n function ye(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0;\n g = (a + 36) | 0;\n d = c[g >> 2] | 0;\n e = (a + 40) | 0;\n b = c[e >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (d | 0));\n c[e >> 2] = d;\n e = (a + 68) | 0;\n f = c[e >> 2] | 0;\n d = (a + 72) | 0;\n b = c[d >> 2] | 0;\n if ((b | 0) != (f | 0))\n do {\n b = (b + -44) | 0;\n Ic(b);\n } while ((b | 0) != (f | 0));\n c[d >> 2] = f;\n Hc(e);\n Hc(g);\n return;\n }\n function ze(a) {\n a = a | 0;\n Ae((a + 4380) | 0);\n re((a + 3980) | 0);\n se(a);\n return;\n }\n function Ae(a) {\n a = a | 0;\n qc((a + 320) | 0);\n qc((a + 240) | 0);\n qc((a + 160) | 0);\n qc((a + 80) | 0);\n qc(a);\n return;\n }\n function Be(f, g, h) {\n f = f | 0;\n g = g | 0;\n h = h | 0;\n var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 32) | 0;\n o = p;\n i = (f + 4781) | 0;\n if (!(a[i >> 0] | 0)) {\n Ce((f + 4380) | 0);\n a[i >> 0] = 1;\n }\n i = (f + 3976) | 0;\n if (!(a[i >> 0] | 0)) {\n a[i >> 0] = 1;\n Ee(De(g) | 0, h, 20);\n Fe(o, h);\n k = f;\n i = o;\n j = (k + 20) | 0;\n do {\n a[k >> 0] = a[i >> 0] | 0;\n k = (k + 1) | 0;\n i = (i + 1) | 0;\n } while ((k | 0) < (j | 0));\n b[(f + 12) >> 1] = 0;\n }\n else {\n m = Zc(g, (f + 852) | 0) | 0;\n if (m) {\n if ((m & 32) | 0)\n He((Zc(g, c[(f + 904 + (((Ge(f) | 0) & 255) << 2)) >> 2] | 0) | 0) & 255, f);\n n = (f + 14) | 0;\n k = a[n >> 0] | 0;\n i = k & 7;\n k = ((k & 255) >>> 3) & 7;\n j = d[(16 + (k << 3) + i) >> 0] | 0;\n i = d[(80 + (k << 3) + i) >> 0] | 0;\n if (!(m & 16))\n l = b[(f + 20 + (j << 1)) >> 1] | 0;\n else {\n q = (f + 20 + (j << 1)) | 0;\n l = (pc((f + 4380) | 0, g, e[q >> 1] | 0, j >>> 0 < 3 ? j : 3) | 0) & 65535;\n b[q >> 1] = l;\n }\n b[(f + 12) >> 1] = l;\n if ((m & 8) | 0) {\n q = (f + 15) | 0;\n a[q >> 0] = Zc(g, c[(f + 1928 + (d[q >> 0] << 2)) >> 2] | 0) | 0;\n }\n if ((m & 4) | 0) {\n n = Zc(g, c[(f + 896 + ((((d[n >> 0] | 0) >>> 6) & 1) << 2)) >> 2] | 0) | 0;\n q = (f + 16) | 0;\n a[q >> 0] = Ie((n + (a[q >> 0] | 0)) | 0) | 0;\n }\n if ((m & 2) | 0) {\n q = (f + 17) | 0;\n a[q >> 0] = Zc(g, c[(f + 2952 + (d[q >> 0] << 2)) >> 2] | 0) | 0;\n }\n if (m & 1) {\n q = (f + 18) | 0;\n b[q >> 1] = pc((f + 4460) | 0, g, e[q >> 1] | 0, 0) | 0;\n }\n }\n else {\n q = a[(f + 14) >> 0] | 0;\n i = q & 7;\n q = ((q & 255) >>> 3) & 7;\n k = q;\n j = d[(16 + (q << 3) + i) >> 0] | 0;\n i = d[(80 + (q << 3) + i) >> 0] | 0;\n }\n l = (f + 52 + ((j * 24) | 0)) | 0;\n m = (f + 4540) | 0;\n n = ((k | 0) == 1) & 1;\n k = pc(m, g, Je(l) | 0, n) | 0;\n c[o >> 2] = k;\n c[f >> 2] = (c[f >> 2] | 0) + k;\n Ke(l, o);\n l = (f + 436 + ((j * 24) | 0)) | 0;\n k = Je(l) | 0;\n j = Le(m) | 0;\n q = (f + 4620) | 0;\n j = pc(q, g, k, (j >>> 0 < 20 ? j & -2 : 20) | n) | 0;\n c[o >> 2] = j;\n k = (f + 4) | 0;\n c[k >> 2] = (c[k >> 2] | 0) + j;\n Ke(l, o);\n o = Le(m) | 0;\n o = ((Le(q) | 0) + o) | 0;\n q = (f + 820 + (i << 2)) | 0;\n o =\n pc((f + 4700) | 0, g, c[q >> 2] | 0, (o >>> 0 < 36 ? (o >>> 1) & 2147483646 : 18) | n) |\n 0;\n c[(f + 8) >> 2] = o;\n c[q >> 2] = o;\n Me(f, h);\n }\n V = p;\n return (h + 20) | 0;\n }\n function Ce(a) {\n a = a | 0;\n oc(a);\n oc((a + 80) | 0);\n oc((a + 160) | 0);\n oc((a + 240) | 0);\n oc((a + 320) | 0);\n return;\n }\n function De(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Ee(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = (b + 4) | 0;\n f = c[k >> 2] | 0;\n j = ((c[(b + 8) >> 2] | 0) - f) | 0;\n j = j >>> 0 > e >>> 0 ? e : j;\n i = (b + 12) | 0;\n g = ((c[i >> 2] | 0) + f) | 0;\n h = (g + j) | 0;\n if (j) {\n f = g;\n g = d;\n while (1) {\n a[g >> 0] = a[f >> 0] | 0;\n f = (f + 1) | 0;\n if ((f | 0) == (h | 0))\n break;\n else\n g = (g + 1) | 0;\n }\n f = c[k >> 2] | 0;\n }\n c[k >> 2] = f + j;\n e = (e - j) | 0;\n if (e | 0) {\n Kc(b);\n g = ((c[i >> 2] | 0) + (c[k >> 2] | 0)) | 0;\n h = (g + e) | 0;\n f = (d + j) | 0;\n while (1) {\n a[f >> 0] = a[g >> 0] | 0;\n g = (g + 1) | 0;\n if ((g | 0) == (h | 0))\n break;\n else\n f = (f + 1) | 0;\n }\n c[k >> 2] = (c[k >> 2] | 0) + e;\n }\n return;\n }\n function Fe(d, e) {\n d = d | 0;\n e = e | 0;\n te(d);\n c[d >> 2] = Ne(e) | 0;\n c[(d + 4) >> 2] = Ne((e + 4) | 0) | 0;\n c[(d + 8) >> 2] = Ne((e + 8) | 0) | 0;\n b[(d + 12) >> 1] = Oe((e + 12) | 0) | 0;\n He(Pe((e + 14) | 0) | 0, d);\n a[(d + 15) >> 0] = Pe((e + 15) | 0) | 0;\n a[(d + 16) >> 0] = Qe((e + 16) | 0) | 0;\n a[(d + 17) >> 0] = Qe((e + 17) | 0) | 0;\n b[(d + 18) >> 1] = Oe((e + 18) | 0) | 0;\n return;\n }\n function Ge(b) {\n b = b | 0;\n return a[(b + 14) >> 0] | 0;\n }\n function He(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 14) >> 0] = b;\n return;\n }\n function Ie(a) {\n a = a | 0;\n return (a & 255) | 0;\n }\n function Je(a) {\n a = a | 0;\n return c[(a + 8) >> 2] | 0;\n }\n function Ke(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = (b + 20) | 0;\n do\n if (!(a[k >> 0] | 0)) {\n j = (b + 8) | 0;\n e = c[j >> 2] | 0;\n f = c[d >> 2] | 0;\n g = (b + 4) | 0;\n h = c[g >> 2] | 0;\n if ((e | 0) >= (f | 0)) {\n if ((h | 0) < (f | 0)) {\n c[b >> 2] = h;\n c[g >> 2] = c[d >> 2];\n }\n else\n c[b >> 2] = f;\n a[k >> 0] = 1;\n break;\n }\n c[b >> 2] = h;\n c[g >> 2] = e;\n g = (b + 16) | 0;\n h = c[g >> 2] | 0;\n i = c[d >> 2] | 0;\n e = (b + 12) | 0;\n f = c[e >> 2] | 0;\n if ((h | 0) < (i | 0)) {\n c[j >> 2] = f;\n c[e >> 2] = h;\n c[g >> 2] = c[d >> 2];\n break;\n }\n if ((f | 0) < (i | 0)) {\n c[j >> 2] = f;\n c[e >> 2] = c[d >> 2];\n break;\n }\n else {\n c[j >> 2] = i;\n break;\n }\n }\n else {\n g = c[d >> 2] | 0;\n i = (b + 8) | 0;\n e = c[i >> 2] | 0;\n h = (b + 12) | 0;\n f = c[h >> 2] | 0;\n if ((g | 0) >= (e | 0)) {\n e = (b + 16) | 0;\n if ((g | 0) < (f | 0)) {\n c[e >> 2] = f;\n c[h >> 2] = c[d >> 2];\n }\n else\n c[e >> 2] = g;\n a[k >> 0] = 0;\n break;\n }\n c[(b + 16) >> 2] = f;\n c[h >> 2] = e;\n e = c[d >> 2] | 0;\n f = c[b >> 2] | 0;\n g = (b + 4) | 0;\n h = c[g >> 2] | 0;\n if ((e | 0) < (f | 0)) {\n c[i >> 2] = h;\n c[g >> 2] = f;\n c[b >> 2] = c[d >> 2];\n break;\n }\n if ((e | 0) < (h | 0)) {\n c[i >> 2] = h;\n c[g >> 2] = c[d >> 2];\n break;\n }\n else {\n c[i >> 2] = e;\n break;\n }\n }\n while (0);\n return;\n }\n function Le(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Me(b, c) {\n b = b | 0;\n c = c | 0;\n var e = 0;\n Se(d[b >> 0] | (d[(b + 1) >> 0] << 8) | (d[(b + 2) >> 0] << 16) | (d[(b + 3) >> 0] << 24), c);\n e = (b + 4) | 0;\n Se(d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24), (c + 4) | 0);\n e = (b + 8) | 0;\n Se(d[e >> 0] | (d[(e + 1) >> 0] << 8) | (d[(e + 2) >> 0] << 16) | (d[(e + 3) >> 0] << 24), (c + 8) | 0);\n e = (b + 12) | 0;\n Te(d[e >> 0] | (d[(e + 1) >> 0] << 8), (c + 12) | 0);\n Ue(Ge(b) | 0, (c + 14) | 0);\n Ue(a[(b + 15) >> 0] | 0, (c + 15) | 0);\n Ve(a[(b + 16) >> 0] | 0, (c + 16) | 0);\n Ve(a[(b + 17) >> 0] | 0, (c + 17) | 0);\n b = (b + 18) | 0;\n Te(d[b >> 0] | (d[(b + 1) >> 0] << 8), (c + 18) | 0);\n return;\n }\n function Ne(a) {\n a = a | 0;\n return Re(a) | 0;\n }\n function Oe(b) {\n b = b | 0;\n return (((a[(b + 1) >> 0] << 8) | d[b >> 0]) & 65535) | 0;\n }\n function Pe(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function Qe(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function Re(a) {\n a = a | 0;\n return (((d[(a + 1) >> 0] | 0) << 8) |\n (d[a >> 0] | 0) |\n ((d[(a + 2) >> 0] | 0) << 16) |\n ((d[(a + 3) >> 0] | 0) << 24) |\n 0);\n }\n function Se(a, b) {\n a = a | 0;\n b = b | 0;\n We(a, b);\n return;\n }\n function Te(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 1) >> 0] = (b & 65535) >>> 8;\n a[c >> 0] = b;\n return;\n }\n function Ue(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function Ve(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function We(b, c) {\n b = b | 0;\n c = c | 0;\n a[(c + 3) >> 0] = b >>> 24;\n a[(c + 2) >> 0] = b >>> 16;\n a[(c + 1) >> 0] = b >>> 8;\n a[c >> 0] = b;\n return;\n }\n function Xe(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Ye(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ze(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function _e(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 9202 ? (a + 12) | 0 : 0) | 0;\n }\n function $e(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function af(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4768;\n c[(a + 4) >> 2] = b;\n cf((a + 8) | 0);\n return;\n }\n function bf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4792;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function cf(b) {\n b = b | 0;\n gf(b);\n hf((b + 164) | 0);\n jf((b + 244) | 0);\n a[(b + 324) >> 0] = 0;\n a[(b + 325) >> 0] = 0;\n return;\n }\n function df(a) {\n a = a | 0;\n c[a >> 2] = 4768;\n of((a + 8) | 0);\n le(a);\n return;\n }\n function ef(a) {\n a = a | 0;\n df(a);\n jp(a);\n return;\n }\n function ff(a, b) {\n a = a | 0;\n b = b | 0;\n return qf((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function gf(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n a[b >> 0] = 0;\n Oc((b + 4) | 0, 516, 0, 0);\n Oc((b + 48) | 0, 6, 0, 0);\n c[(b + 92) >> 2] = 0;\n c[(b + 96) >> 2] = 0;\n e = (b + 100) | 0;\n mf(e);\n nf(f);\n g = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n d = 4;\n while (1) {\n i = e;\n j = i;\n a[j >> 0] = g;\n a[(j + 1) >> 0] = g >> 8;\n a[(j + 2) >> 0] = g >> 16;\n a[(j + 3) >> 0] = g >> 24;\n i = (i + 4) | 0;\n a[i >> 0] = f;\n a[(i + 1) >> 0] = f >> 8;\n a[(i + 2) >> 0] = f >> 16;\n a[(i + 3) >> 0] = f >> 24;\n d = (d + -1) | 0;\n if (!d)\n break;\n else\n e = (e + 8) | 0;\n }\n j = (b + 132) | 0;\n c[j >> 2] = 0;\n c[(j + 4) >> 2] = 0;\n c[(j + 8) >> 2] = 0;\n c[(j + 12) >> 2] = 0;\n c[(j + 16) >> 2] = 0;\n c[(j + 20) >> 2] = 0;\n c[(j + 24) >> 2] = 0;\n c[(j + 28) >> 2] = 0;\n V = h;\n return;\n }\n function hf(a) {\n a = a | 0;\n xe(a, 32, 9, 8, 0);\n return;\n }\n function jf(a) {\n a = a | 0;\n mc(a, 32, 9, 8, 0);\n return;\n }\n function kf(a) {\n a = a | 0;\n ye(a);\n return;\n }\n function lf(a) {\n a = a | 0;\n Ic((a + 48) | 0);\n Ic((a + 4) | 0);\n return;\n }\n function mf(a) {\n a = a | 0;\n var b = 0;\n b = (a + 32) | 0;\n do {\n nf(a);\n a = (a + 8) | 0;\n } while ((a | 0) != (b | 0));\n return;\n }\n function nf(b) {\n b = b | 0;\n var c = 0;\n c = b;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n a[(c + 2) >> 0] = 0;\n a[(c + 3) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n a[(b + 2) >> 0] = 0;\n a[(b + 3) >> 0] = 0;\n return;\n }\n function of(a) {\n a = a | 0;\n pf((a + 244) | 0);\n kf((a + 164) | 0);\n lf(a);\n return;\n }\n function pf(a) {\n a = a | 0;\n qc(a);\n return;\n }\n function qf(b, e, f) {\n b = b | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0;\n g = (b + 325) | 0;\n if (!(a[g >> 0] | 0)) {\n rf((b + 244) | 0);\n a[g >> 0] = 1;\n }\n if (!(a[b >> 0] | 0)) {\n a[b >> 0] = 1;\n Ee(De(e) | 0, f, 8);\n i = sf(f) | 0;\n j = u() | 0;\n b = (b + 100) | 0;\n e = b;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n b = (b + 4) | 0;\n a[b >> 0] = j;\n a[(b + 1) >> 0] = j >> 8;\n a[(b + 2) >> 0] = j >> 16;\n a[(b + 3) >> 0] = j >> 24;\n }\n else {\n j = (b + 92) | 0;\n a: do\n if (!(c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0)) {\n g = Zc(e, (b + 48) | 0) | 0;\n switch (g | 0) {\n case 1: {\n e = pc((b + 244) | 0, e, 0, 0) | 0;\n c[(b + 132 + (c[j >> 2] << 2)) >> 2] = e;\n e = c[j >> 2] | 0;\n k = c[(b + 132 + (e << 2)) >> 2] | 0;\n i = (b + 100 + (e << 3)) | 0;\n h = i;\n g = h;\n h = (h + 4) | 0;\n k =\n lr(d[g >> 0] |\n (d[(g + 1) >> 0] << 8) |\n (d[(g + 2) >> 0] << 16) |\n (d[(g + 3) >> 0] << 24) |\n 0, d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, k | 0, ((((k | 0) < 0) << 31) >> 31) | 0) | 0;\n h = u() | 0;\n g = i;\n a[g >> 0] = k;\n a[(g + 1) >> 0] = k >> 8;\n a[(g + 2) >> 0] = k >> 16;\n a[(g + 3) >> 0] = k >> 24;\n i = (i + 4) | 0;\n a[i >> 0] = h;\n a[(i + 1) >> 0] = h >> 8;\n a[(i + 2) >> 0] = h >> 16;\n a[(i + 3) >> 0] = h >> 24;\n c[(b + 148 + (e << 2)) >> 2] = 0;\n break a;\n }\n case 2: {\n k = (b + 96) | 0;\n c[k >> 2] = ((c[k >> 2] | 0) + 1) & 3;\n i = (b + 100 + (c[j >> 2] << 3) + 4) | 0;\n i =\n pc((b + 244) | 0, e, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24), 8) | 0;\n g = (b + 100 + (c[k >> 2] << 3)) | 0;\n h = g;\n a[h >> 0] = 0;\n a[(h + 1) >> 0] = 0;\n a[(h + 2) >> 0] = 0;\n a[(h + 3) >> 0] = 0;\n g = (g + 4) | 0;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n g = tf(e) | 0;\n k = c[k >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n i =\n d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24);\n g =\n d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n g;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[j >> 2] = k;\n c[(b + 132 + (k << 2)) >> 2] = 0;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break a;\n }\n default: {\n if ((g | 0) <= 2)\n break a;\n c[j >> 2] = (g + 2 + (c[j >> 2] | 0)) & 3;\n qf(b, e, f) | 0;\n break a;\n }\n }\n }\n else {\n i = Zc(e, (b + 4) | 0) | 0;\n if ((i | 0) == 1) {\n g = pc((b + 244) | 0, e, c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0, 1) | 0;\n k = c[j >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n g =\n lr(d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24) |\n 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | 0;\n i = u() | 0;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[(b + 148 + (k << 2)) >> 2] = 0;\n break;\n }\n if ((i | 0) >= 511) {\n if ((i | 0) == 512) {\n k = (b + 96) | 0;\n c[k >> 2] = ((c[k >> 2] | 0) + 1) & 3;\n i = (b + 100 + (c[j >> 2] << 3) + 4) | 0;\n i =\n pc((b + 244) | 0, e, d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24), 8) | 0;\n g = (b + 100 + (c[k >> 2] << 3)) | 0;\n h = g;\n a[h >> 0] = 0;\n a[(h + 1) >> 0] = 0;\n a[(h + 2) >> 0] = 0;\n a[(h + 3) >> 0] = 0;\n g = (g + 4) | 0;\n a[g >> 0] = i;\n a[(g + 1) >> 0] = i >> 8;\n a[(g + 2) >> 0] = i >> 16;\n a[(g + 3) >> 0] = i >> 24;\n g = tf(e) | 0;\n k = c[k >> 2] | 0;\n e = (b + 100 + (k << 3)) | 0;\n i = e;\n h = i;\n i = (i + 4) | 0;\n i =\n d[i >> 0] |\n (d[(i + 1) >> 0] << 8) |\n (d[(i + 2) >> 0] << 16) |\n (d[(i + 3) >> 0] << 24);\n g =\n d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n g;\n h = e;\n a[h >> 0] = g;\n a[(h + 1) >> 0] = g >> 8;\n a[(h + 2) >> 0] = g >> 16;\n a[(h + 3) >> 0] = g >> 24;\n e = (e + 4) | 0;\n a[e >> 0] = i;\n a[(e + 1) >> 0] = i >> 8;\n a[(e + 2) >> 0] = i >> 16;\n a[(e + 3) >> 0] = i >> 24;\n c[j >> 2] = k;\n c[(b + 132 + (k << 2)) >> 2] = 0;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break;\n }\n if ((i | 0) <= 511)\n break;\n c[j >> 2] = ((c[j >> 2] | 0) + i) & 3;\n qf(b, e, f) | 0;\n break;\n }\n do\n if (!i) {\n g = pc((b + 244) | 0, e, 0, 7) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) > 3) {\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n }\n }\n else {\n if ((i | 0) < 500) {\n g = (b + 244) | 0;\n h = q(c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0, i) | 0;\n if ((i | 0) < 10) {\n g = pc(g, e, h, 2) | 0;\n break;\n }\n else {\n g = pc(g, e, h, 3) | 0;\n break;\n }\n }\n if ((i | 0) == 500) {\n g =\n pc((b + 244) | 0, e, ((c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0) * 500) | 0, 4) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) <= 3)\n break;\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n break;\n }\n g = (500 - i) | 0;\n h = (b + 244) | 0;\n i = c[(b + 132 + (c[j >> 2] << 2)) >> 2] | 0;\n if ((g | 0) > -10) {\n g = pc(h, e, q(i, g) | 0, 5) | 0;\n break;\n }\n g = pc(h, e, q(i, -10) | 0, 6) | 0;\n h = (b + 148 + (c[j >> 2] << 2)) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n h = c[j >> 2] | 0;\n if ((c[(b + 148 + (h << 2)) >> 2] | 0) > 3) {\n c[(b + 132 + (h << 2)) >> 2] = g;\n c[(b + 148 + (c[j >> 2] << 2)) >> 2] = 0;\n }\n }\n while (0);\n k = (b + 100 + (c[j >> 2] << 3)) | 0;\n h = k;\n e = h;\n h = (h + 4) | 0;\n h =\n lr(d[e >> 0] |\n (d[(e + 1) >> 0] << 8) |\n (d[(e + 2) >> 0] << 16) |\n (d[(e + 3) >> 0] << 24) |\n 0, d[h >> 0] |\n (d[(h + 1) >> 0] << 8) |\n (d[(h + 2) >> 0] << 16) |\n (d[(h + 3) >> 0] << 24) |\n 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | 0;\n e = u() | 0;\n i = k;\n a[i >> 0] = h;\n a[(i + 1) >> 0] = h >> 8;\n a[(i + 2) >> 0] = h >> 16;\n a[(i + 3) >> 0] = h >> 24;\n k = (k + 4) | 0;\n a[k >> 0] = e;\n a[(k + 1) >> 0] = e >> 8;\n a[(k + 2) >> 0] = e >> 16;\n a[(k + 3) >> 0] = e >> 24;\n }\n while (0);\n uf((b + 100 + (c[j >> 2] << 3)) | 0, f);\n }\n return (f + 8) | 0;\n }\n function rf(a) {\n a = a | 0;\n oc(a);\n return;\n }\n function sf(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n e = Re(a) | 0;\n vf(d, e, Re((a + 4) | 0) | 0);\n a = c[d >> 2] | 0;\n t(c[(d + 4) >> 2] | 0);\n V = b;\n return a | 0;\n }\n function tf(a) {\n a = a | 0;\n var b = 0;\n b = (bd(a) | 0) & 65535;\n return (((bd(a) | 0) & 65535) << 16) | b | 0;\n }\n function uf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n c = a;\n We(d[c >> 0] | (d[(c + 1) >> 0] << 8) | (d[(c + 2) >> 0] << 16) | (d[(c + 3) >> 0] << 24), b);\n a = (a + 4) | 0;\n We(d[a >> 0] | (d[(a + 1) >> 0] << 8) | (d[(a + 2) >> 0] << 16) | (d[(a + 3) >> 0] << 24), (b + 4) | 0);\n return;\n }\n function vf(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = b;\n a[e >> 0] = c;\n a[(e + 1) >> 0] = c >> 8;\n a[(e + 2) >> 0] = c >> 16;\n a[(e + 3) >> 0] = c >> 24;\n c = (b + 4) | 0;\n a[c >> 0] = d;\n a[(c + 1) >> 0] = d >> 8;\n a[(c + 2) >> 0] = d >> 16;\n a[(c + 3) >> 0] = d >> 24;\n return;\n }\n function wf(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function xf(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function yf(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 9890 ? (a + 12) | 0 : 0) | 0;\n }\n function zf(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Af(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 4820;\n c[(a + 4) >> 2] = b;\n Cf((a + 8) | 0);\n return;\n }\n function Bf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4844;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Cf(b) {\n b = b | 0;\n a[b >> 0] = 0;\n Gf((b + 1) | 0);\n Oc((b + 8) | 0, 128, 0, 0);\n Oc((b + 52) | 0, 256, 0, 0);\n Oc((b + 96) | 0, 256, 0, 0);\n Oc((b + 140) | 0, 256, 0, 0);\n Oc((b + 184) | 0, 256, 0, 0);\n Oc((b + 228) | 0, 256, 0, 0);\n Oc((b + 272) | 0, 256, 0, 0);\n return;\n }\n function Df(a) {\n a = a | 0;\n c[a >> 2] = 4820;\n Hf((a + 8) | 0);\n le(a);\n return;\n }\n function Ef(a) {\n a = a | 0;\n Df(a);\n jp(a);\n return;\n }\n function Ff(a, b) {\n a = a | 0;\n b = b | 0;\n return If((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Gf(b) {\n b = b | 0;\n var c = 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n c = (b + 2) | 0;\n a[c >> 0] = 0;\n a[(c + 1) >> 0] = 0;\n b = (b + 4) | 0;\n a[b >> 0] = 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function Hf(a) {\n a = a | 0;\n Ic((a + 272) | 0);\n Ic((a + 228) | 0);\n Ic((a + 184) | 0);\n Ic((a + 140) | 0);\n Ic((a + 96) | 0);\n Ic((a + 52) | 0);\n Ic((a + 8) | 0);\n return;\n }\n function If(c, f, g) {\n c = c | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n o = V;\n V = (V + 16) | 0;\n m = o;\n if (!(a[c >> 0] | 0)) {\n a[c >> 0] = 1;\n Ee(De(f) | 0, g, 6);\n Jf(m, g);\n n = (c + 1) | 0;\n a[n >> 0] = a[m >> 0] | 0;\n a[(n + 1) >> 0] = a[(m + 1) >> 0] | 0;\n a[(n + 2) >> 0] = a[(m + 2) >> 0] | 0;\n a[(n + 3) >> 0] = a[(m + 3) >> 0] | 0;\n a[(n + 4) >> 0] = a[(m + 4) >> 0] | 0;\n a[(n + 5) >> 0] = a[(m + 5) >> 0] | 0;\n }\n else {\n n = Zc(f, (c + 8) | 0) | 0;\n Gf(m);\n if (!(n & 1)) {\n h = (c + 1) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n l = (Zc(f, (c + 52) | 0) | 0) & 255;\n h = (c + 1) | 0;\n h = (Ie((l + ((d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255)) | 0) | 0) & 255;\n }\n b[m >> 1] = h;\n if (!(n & 2)) {\n l = (c + 1) | 0;\n h = h | ((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & -256);\n }\n else {\n h = (Zc(f, (c + 96) | 0) | 0) & 255;\n l = (c + 1) | 0;\n h =\n ((Ie(((((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & 65535) >>> 8) + h) | 0) | 0) & 255) << 8;\n h = (h | e[m >> 1]) & 65535;\n }\n b[m >> 1] = h;\n do\n if (n & 64) {\n k = (c + 1) | 0;\n i = ((h & 255) - ((d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 255)) | 0;\n if (!(n & 4)) {\n h = (c + 3) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n h = (Zc(f, (c + 140) | 0) | 0) & 255;\n l = (c + 3) | 0;\n l = (i + ((d[l >> 0] | (d[(l + 1) >> 0] << 8)) & 255)) | 0;\n h = (Ie((((l | 0) < 1 ? 0 : (l | 0) > 254 ? 255 : l & 255) + h) | 0) | 0) & 255;\n }\n l = (m + 2) | 0;\n b[l >> 1] = h;\n if (!(n & 16)) {\n h = (c + 5) | 0;\n h = (d[h >> 0] | (d[(h + 1) >> 0] << 8)) & 255;\n }\n else {\n h = Zc(f, (c + 228) | 0) | 0;\n p = (c + 3) | 0;\n j = (c + 5) | 0;\n j =\n (((((i + (b[l >> 1] & 255) - ((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 255)) | 0) /\n 2) |\n 0) +\n ((d[j >> 0] | (d[(j + 1) >> 0] << 8)) & 255)) |\n 0;\n h =\n (Ie((((j | 0) < 1 ? 0 : (j | 0) > 254 ? 255 : j & 255) + (h & 255)) | 0) | 0) & 255;\n }\n j = (m + 4) | 0;\n b[j >> 1] = h;\n h =\n (((e[m >> 1] | 0) >>> 8) - (((d[k >> 0] | (d[(k + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0;\n if (!(n & 8)) {\n i = (c + 3) | 0;\n i = b[l >> 1] | ((d[i >> 0] | (d[(i + 1) >> 0] << 8)) & -256);\n }\n else {\n i = (Zc(f, (c + 184) | 0) | 0) & 255;\n p = (c + 3) | 0;\n p = ((((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & 65535) >>> 8) + h) | 0;\n i =\n ((Ie((((p | 0) < 1 ? 0 : (p | 0) > 254 ? 255 : p & 255) + i) | 0) | 0) & 255) << 8;\n i = (i | e[l >> 1]) & 65535;\n }\n b[l >> 1] = i;\n if (!(n & 32)) {\n p = (c + 5) | 0;\n b[j >> 1] = b[j >> 1] | ((d[p >> 0] | (d[(p + 1) >> 0] << 8)) & -256);\n break;\n }\n else {\n p = Zc(f, (c + 272) | 0) | 0;\n f = (c + 3) | 0;\n n = (c + 5) | 0;\n n =\n (((((((e[l >> 1] | 0) >>> 8) +\n h -\n (((d[f >> 0] | (d[(f + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0) /\n 2) |\n 0) +\n (((d[n >> 0] | (d[(n + 1) >> 0] << 8)) & 65535) >>> 8)) |\n 0;\n p =\n ((Ie((((n | 0) < 1 ? 0 : (n | 0) > 254 ? 255 : n & 255) + (p & 255)) | 0) | 0) &\n 255) <<\n 8;\n b[j >> 1] = p | e[j >> 1];\n break;\n }\n }\n else {\n b[(m + 2) >> 1] = h;\n b[(m + 4) >> 1] = h;\n }\n while (0);\n p = (c + 1) | 0;\n a[p >> 0] = a[m >> 0] | 0;\n a[(p + 1) >> 0] = a[(m + 1) >> 0] | 0;\n a[(p + 2) >> 0] = a[(m + 2) >> 0] | 0;\n a[(p + 3) >> 0] = a[(m + 3) >> 0] | 0;\n a[(p + 4) >> 0] = a[(m + 4) >> 0] | 0;\n a[(p + 5) >> 0] = a[(m + 5) >> 0] | 0;\n Kf(p, g);\n }\n V = o;\n return (g + 6) | 0;\n }\n function Jf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0, d = 0;\n d = Oe(b) | 0;\n c = Oe((b + 2) | 0) | 0;\n Lf(a, d, c, Oe((b + 4) | 0) | 0);\n return;\n }\n function Kf(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n Te(d[a >> 0] | (d[(a + 1) >> 0] << 8), b);\n c = (a + 2) | 0;\n Te(d[c >> 0] | (d[(c + 1) >> 0] << 8), (b + 2) | 0);\n a = (a + 4) | 0;\n Te(d[a >> 0] | (d[(a + 1) >> 0] << 8), (b + 4) | 0);\n return;\n }\n function Lf(b, c, d, e) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n a[b >> 0] = c;\n a[(b + 1) >> 0] = c >> 8;\n c = (b + 2) | 0;\n a[c >> 0] = d;\n a[(c + 1) >> 0] = d >> 8;\n d = (b + 4) | 0;\n a[d >> 0] = e;\n a[(d + 1) >> 0] = e >> 8;\n return;\n }\n function Mf(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Nf(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Of(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 10570 ? (a + 12) | 0 : 0) | 0;\n }\n function Pf(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Qf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n fe(a);\n c[a >> 2] = 4872;\n c[(a + 4) >> 2] = b;\n Sf((a + 8) | 0, d);\n return;\n }\n function Rf(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4896;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Sf(b, d) {\n b = b | 0;\n d = d | 0;\n c[b >> 2] = c[d >> 2];\n a[(b + 4) >> 0] = a[(d + 4) >> 0] | 0;\n Wf((b + 8) | 0, (d + 8) | 0);\n Wf((b + 20) | 0, (d + 20) | 0);\n Xf((b + 32) | 0, (d + 32) | 0);\n return;\n }\n function Tf(a) {\n a = a | 0;\n c[a >> 2] = 4872;\n ud((a + 8) | 0);\n le(a);\n return;\n }\n function Uf(a) {\n a = a | 0;\n Tf(a);\n jp(a);\n return;\n }\n function Vf(a, b) {\n a = a | 0;\n b = b | 0;\n return Dg((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Wf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n d = (b + 4) | 0;\n e = ((c[d >> 2] | 0) - (c[b >> 2] | 0)) | 0;\n if (e | 0) {\n Yf(a, e);\n Zf(a, c[b >> 2] | 0, c[d >> 2] | 0, e);\n }\n return;\n }\n function Xf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 32) | 0;\n e = (d + 24) | 0;\n f = (d + 16) | 0;\n h = (d + 8) | 0;\n g = d;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n zg(h, b);\n Ag(g, b);\n c[f >> 2] = c[h >> 2];\n c[(f + 4) >> 2] = c[(h + 4) >> 2];\n c[e >> 2] = c[g >> 2];\n c[(e + 4) >> 2] = c[(g + 4) >> 2];\n cg(a, f, e, 0);\n V = d;\n return;\n }\n function Yf(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n if (($f(a) | 0) >>> 0 < b >>> 0)\n cr(a);\n else {\n d = eq(b) | 0;\n c[(a + 4) >> 2] = d;\n c[a >> 2] = d;\n c[(a + 8) >> 2] = d + b;\n return;\n }\n }\n function Zf(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n ag(f, a, e);\n e = (f + 4) | 0;\n a = (d - b) | 0;\n if ((a | 0) > 0) {\n ur(c[e >> 2] | 0, b | 0, a | 0) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + a;\n }\n bg(f);\n V = g;\n return;\n }\n function _f(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = c[a >> 2] | 0;\n d = b;\n if (b | 0) {\n c[(a + 4) >> 2] = d;\n Da(b, ((c[(a + 8) >> 2] | 0) - d) | 0);\n }\n return;\n }\n function $f(a) {\n a = a | 0;\n return 2147483647;\n }\n function ag(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n b = c[(b + 4) >> 2] | 0;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + d;\n return;\n }\n function bg(a) {\n a = a | 0;\n c[((c[a >> 2] | 0) + 4) >> 2] = c[(a + 4) >> 2];\n return;\n }\n function cg(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n q = V;\n V = (V + 96) | 0;\n p = (q + 80) | 0;\n m = (q + 64) | 0;\n j = (q + 48) | 0;\n k = (q + 40) | 0;\n l = (q + 8) | 0;\n i = q;\n n = (q + 32) | 0;\n o = (q + 16) | 0;\n h = b;\n g = c[h >> 2] | 0;\n h = c[(h + 4) >> 2] | 0;\n f = d;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n e = g;\n if ((f | 0) == (h | 0))\n h = 0;\n else\n h =\n (((((f - (c[d >> 2] | 0)) | 0) / 44) | 0) +\n ((((d - g) >> 2) * 93) | 0) +\n ((((h - (c[g >> 2] | 0)) | 0) / -44) | 0)) |\n 0;\n d = ((c[(a + 8) >> 2] | 0) - (c[(a + 4) >> 2] | 0)) | 0;\n d =\n (((d | 0) == 0 ? 0 : ((((d >> 2) * 93) | 0) + -1) | 0) -\n ((c[(a + 20) >> 2] | 0) + (c[(a + 16) >> 2] | 0))) |\n 0;\n if (h >>> 0 > d >>> 0)\n eg(a, (h - d) | 0);\n fg(k, a);\n fg(i, a);\n f = i;\n d = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n g = l;\n c[g >> 2] = d;\n c[(g + 4) >> 2] = f;\n g = d;\n if (h | 0) {\n d = (((((f - (c[d >> 2] | 0)) | 0) / 44) | 0) + h) | 0;\n if ((d | 0) > 0) {\n i = ((d >>> 0) / 93) | 0;\n h = (g + (i << 2)) | 0;\n c[l >> 2] = h;\n d = ((c[h >> 2] | 0) + ((((d - ((i * 93) | 0)) | 0) * 44) | 0)) | 0;\n }\n else {\n d = (92 - d) | 0;\n i = (g + ((((d | 0) / -93) | 0) << 2)) | 0;\n c[l >> 2] = i;\n d = ((c[i >> 2] | 0) + ((((92 - ((d | 0) % 93 | 0)) | 0) * 44) | 0)) | 0;\n }\n c[(l + 4) >> 2] = d;\n }\n c[m >> 2] = c[k >> 2];\n c[(m + 4) >> 2] = c[(k + 4) >> 2];\n c[p >> 2] = c[l >> 2];\n c[(p + 4) >> 2] = c[(l + 4) >> 2];\n gg(j, m, p);\n hg(p, j);\n ig(m, j);\n if (jg(p, m) | 0) {\n g = (o + 4) | 0;\n h = (b + 4) | 0;\n do {\n kg(n, p);\n lg(o, a, n);\n d = c[o >> 2] | 0;\n if ((d | 0) != (c[g >> 2] | 0)) {\n f = c[h >> 2] | 0;\n do {\n Wc(d, f);\n d = ((c[o >> 2] | 0) + 44) | 0;\n c[o >> 2] = d;\n f = (f + 44) | 0;\n c[h >> 2] = f;\n if (((f - (c[e >> 2] | 0)) | 0) == 4092) {\n e = (e + 4) | 0;\n c[b >> 2] = e;\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n }\n } while ((d | 0) != (c[g >> 2] | 0));\n }\n mg(o);\n ng(p) | 0;\n } while (jg(p, m) | 0);\n }\n V = q;\n return;\n }\n function dg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -4 - b) | 0) >>> 2) << 2);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function eg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0;\n B = V;\n V = (V + 64) | 0;\n v = (B + 52) | 0;\n u = (B + 48) | 0;\n w = (B + 28) | 0;\n x = (B + 24) | 0;\n y = (B + 20) | 0;\n p = B;\n z = (a + 8) | 0;\n d = c[z >> 2] | 0;\n A = (a + 4) | 0;\n j = c[A >> 2] | 0;\n s = ((((d | 0) == (j | 0)) & 1) + b) | 0;\n h = ((s >>> 0) / 93) | 0;\n h = (h + ((((s - ((h * 93) | 0)) | 0) != 0) & 1)) | 0;\n s = (a + 16) | 0;\n e = c[s >> 2] | 0;\n i = ((e >>> 0) / 93) | 0;\n r = h >>> 0 < i >>> 0 ? h : i;\n b = (h - r) | 0;\n g = d;\n a: do\n if (!b) {\n c[s >> 2] = (q(r, -93) | 0) + e;\n if (r | 0) {\n i = (a + 12) | 0;\n k = (a + 12) | 0;\n l = (w + 4) | 0;\n m = (w + 8) | 0;\n n = (w + 12) | 0;\n b = r;\n e = j;\n while (1) {\n h = c[e >> 2] | 0;\n g = (e + 4) | 0;\n c[A >> 2] = g;\n t = c[i >> 2] | 0;\n e = t;\n do\n if ((d | 0) == (t | 0)) {\n t = c[a >> 2] | 0;\n d = t;\n if (g >>> 0 <= t >>> 0) {\n d = (e - d) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(w, d, d >>> 2, k);\n c[x >> 2] = c[A >> 2];\n c[y >> 2] = c[z >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[w >> 2];\n c[w >> 2] = d;\n d = c[A >> 2] | 0;\n c[A >> 2] = c[l >> 2];\n c[l >> 2] = d;\n d = c[z >> 2] | 0;\n c[z >> 2] = c[m >> 2];\n c[m >> 2] = d;\n d = c[i >> 2] | 0;\n c[i >> 2] = c[n >> 2];\n c[n >> 2] = d;\n tg(w);\n d = c[z >> 2] | 0;\n break;\n }\n t = g;\n d = (((((t - d) >> 2) + 1) | 0) / -2) | 0;\n f = (g + (d << 2)) | 0;\n e = (e - t) | 0;\n if (!e)\n d = f;\n else {\n vr(f | 0, g | 0, e | 0) | 0;\n d = ((c[A >> 2] | 0) + (d << 2)) | 0;\n }\n t = (f + ((e >> 2) << 2)) | 0;\n c[z >> 2] = t;\n c[A >> 2] = d;\n d = t;\n }\n while (0);\n c[d >> 2] = h;\n d = ((c[z >> 2] | 0) + 4) | 0;\n c[z >> 2] = d;\n b = (b + -1) | 0;\n if (!b)\n break a;\n e = c[A >> 2] | 0;\n }\n }\n }\n else {\n t = (a + 12) | 0;\n e = c[t >> 2] | 0;\n f = (e - (c[a >> 2] | 0)) | 0;\n d = (g - j) >> 2;\n if (b >>> 0 > (((f >> 2) - d) | 0) >>> 0) {\n o = f >> 1;\n n = (d + b) | 0;\n qg(p, o >>> 0 < n >>> 0 ? n : o, (d - r) | 0, (a + 12) | 0);\n do {\n c[v >> 2] = eq(4092) | 0;\n rg(p, v);\n b = (b + -1) | 0;\n } while ((b | 0) != 0);\n if (!r)\n d = c[A >> 2] | 0;\n else {\n i = (p + 8) | 0;\n j = (p + 12) | 0;\n k = (p + 4) | 0;\n l = (p + 16) | 0;\n m = (w + 4) | 0;\n n = (w + 8) | 0;\n o = (w + 12) | 0;\n h = r;\n b = c[i >> 2] | 0;\n d = c[A >> 2] | 0;\n do {\n g = c[j >> 2] | 0;\n e = g;\n do\n if ((b | 0) == (g | 0)) {\n f = c[k >> 2] | 0;\n g = c[p >> 2] | 0;\n b = g;\n if (f >>> 0 <= g >>> 0) {\n b = (e - b) | 0;\n b = (b | 0) == 0 ? 1 : b >> 1;\n qg(w, b, b >>> 2, c[l >> 2] | 0);\n c[x >> 2] = c[k >> 2];\n c[y >> 2] = c[i >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n b = c[p >> 2] | 0;\n c[p >> 2] = c[w >> 2];\n c[w >> 2] = b;\n b = c[k >> 2] | 0;\n c[k >> 2] = c[m >> 2];\n c[m >> 2] = b;\n b = c[i >> 2] | 0;\n c[i >> 2] = c[n >> 2];\n c[n >> 2] = b;\n b = c[j >> 2] | 0;\n c[j >> 2] = c[o >> 2];\n c[o >> 2] = b;\n tg(w);\n b = c[i >> 2] | 0;\n break;\n }\n C = f;\n b = (((((C - b) >> 2) + 1) | 0) / -2) | 0;\n g = (f + (b << 2)) | 0;\n e = (e - C) | 0;\n if (!e)\n b = g;\n else {\n vr(g | 0, f | 0, e | 0) | 0;\n b = ((c[k >> 2] | 0) + (b << 2)) | 0;\n }\n C = (g + ((e >> 2) << 2)) | 0;\n c[i >> 2] = C;\n c[k >> 2] = b;\n b = C;\n }\n while (0);\n c[b >> 2] = c[d >> 2];\n b = ((c[i >> 2] | 0) + 4) | 0;\n c[i >> 2] = b;\n d = ((c[A >> 2] | 0) + 4) | 0;\n c[A >> 2] = d;\n h = (h + -1) | 0;\n } while ((h | 0) != 0);\n }\n b = c[z >> 2] | 0;\n if ((b | 0) != (d | 0)) {\n do {\n b = (b + -4) | 0;\n sg(p, b);\n d = c[A >> 2] | 0;\n } while ((b | 0) != (d | 0));\n b = c[z >> 2] | 0;\n }\n C = c[a >> 2] | 0;\n c[a >> 2] = c[p >> 2];\n c[p >> 2] = C;\n C = (p + 4) | 0;\n c[A >> 2] = c[C >> 2];\n c[C >> 2] = d;\n C = (p + 8) | 0;\n c[z >> 2] = c[C >> 2];\n c[C >> 2] = b;\n C = (p + 12) | 0;\n A = c[t >> 2] | 0;\n c[t >> 2] = c[C >> 2];\n c[C >> 2] = A;\n c[s >> 2] = (c[s >> 2] | 0) + (q(r, -93) | 0);\n tg(p);\n break;\n }\n else {\n b: do\n if ((e | 0) == (g | 0))\n k = 18;\n else {\n while (1) {\n c[v >> 2] = eq(4092) | 0;\n og(a, v);\n b = (b + -1) | 0;\n if (!b)\n break;\n if ((c[t >> 2] | 0) == (c[z >> 2] | 0)) {\n k = 18;\n break b;\n }\n }\n d = r;\n b = c[s >> 2] | 0;\n }\n while (0);\n if ((k | 0) == 18) {\n e = ~(h >>> 0 > i >>> 0 ? i : h);\n d = b;\n do {\n c[v >> 2] = eq(4092) | 0;\n pg(a, v);\n d = (d + -1) | 0;\n f =\n (((((c[z >> 2] | 0) - (c[A >> 2] | 0)) | 0) == 4 ? 92 : 93) + (c[s >> 2] | 0)) |\n 0;\n c[s >> 2] = f;\n } while ((d | 0) != 0);\n d = (b + -1 - e) | 0;\n b = f;\n }\n c[s >> 2] = b + (q(d, -93) | 0);\n if (!d)\n break;\n i = (a + 12) | 0;\n j = (w + 4) | 0;\n k = (w + 8) | 0;\n l = (w + 12) | 0;\n b = c[z >> 2] | 0;\n do {\n g = c[A >> 2] | 0;\n h = c[g >> 2] | 0;\n g = (g + 4) | 0;\n c[A >> 2] = g;\n C = c[t >> 2] | 0;\n e = C;\n do\n if ((b | 0) == (C | 0)) {\n C = c[a >> 2] | 0;\n b = C;\n if (g >>> 0 <= C >>> 0) {\n b = (e - b) | 0;\n b = (b | 0) == 0 ? 1 : b >> 1;\n qg(w, b, b >>> 2, i);\n c[x >> 2] = c[A >> 2];\n c[y >> 2] = c[z >> 2];\n c[u >> 2] = c[x >> 2];\n c[v >> 2] = c[y >> 2];\n ug(w, u, v);\n b = c[a >> 2] | 0;\n c[a >> 2] = c[w >> 2];\n c[w >> 2] = b;\n b = c[A >> 2] | 0;\n c[A >> 2] = c[j >> 2];\n c[j >> 2] = b;\n b = c[z >> 2] | 0;\n c[z >> 2] = c[k >> 2];\n c[k >> 2] = b;\n b = c[t >> 2] | 0;\n c[t >> 2] = c[l >> 2];\n c[l >> 2] = b;\n tg(w);\n b = c[z >> 2] | 0;\n break;\n }\n C = g;\n b = (((((C - b) >> 2) + 1) | 0) / -2) | 0;\n f = (g + (b << 2)) | 0;\n e = (e - C) | 0;\n if (!e)\n b = f;\n else {\n vr(f | 0, g | 0, e | 0) | 0;\n b = ((c[A >> 2] | 0) + (b << 2)) | 0;\n }\n C = (f + ((e >> 2) << 2)) | 0;\n c[z >> 2] = C;\n c[A >> 2] = b;\n b = C;\n }\n while (0);\n c[b >> 2] = h;\n b = ((c[z >> 2] | 0) + 4) | 0;\n c[z >> 2] = b;\n d = (d + -1) | 0;\n } while ((d | 0) != 0);\n }\n }\n while (0);\n V = B;\n return;\n }\n function fg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = ((c[(b + 16) >> 2] | 0) + (c[(b + 20) >> 2] | 0)) | 0;\n g = c[(b + 4) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function gg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = b;\n b = c[(f + 4) >> 2] | 0;\n e = a;\n c[e >> 2] = c[f >> 2];\n c[(e + 4) >> 2] = b;\n e = d;\n b = c[(e + 4) >> 2] | 0;\n d = (a + 8) | 0;\n c[d >> 2] = c[e >> 2];\n c[(d + 4) >> 2] = b;\n return;\n }\n function hg(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = c[(b + 4) >> 2];\n c[(a + 8) >> 2] = c[(b + 8) >> 2];\n c[(a + 12) >> 2] = c[(b + 12) >> 2];\n return;\n }\n function ig(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n d = V;\n V = (V + 32) | 0;\n e = (d + 24) | 0;\n f = (d + 16) | 0;\n h = (d + 8) | 0;\n g = d;\n i = (b + 8) | 0;\n j = c[i >> 2] | 0;\n i = c[(i + 4) >> 2] | 0;\n b = h;\n c[b >> 2] = j;\n c[(b + 4) >> 2] = i;\n b = g;\n c[b >> 2] = j;\n c[(b + 4) >> 2] = i;\n c[f >> 2] = c[h >> 2];\n c[(f + 4) >> 2] = c[(h + 4) >> 2];\n c[e >> 2] = c[g >> 2];\n c[(e + 4) >> 2] = c[(g + 4) >> 2];\n gg(a, f, e);\n V = d;\n return;\n }\n function jg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((xg(a, b) | 0) ^ 1) | 0;\n }\n function kg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n d = c[b >> 2] | 0;\n e = c[(b + 4) >> 2] | 0;\n if ((d | 0) == (c[(b + 8) >> 2] | 0))\n yg(a, e, c[(b + 12) >> 2] | 0);\n else\n yg(a, e, ((c[d >> 2] | 0) + 4092) | 0);\n return;\n }\n function lg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = c[d >> 2] | 0;\n c[a >> 2] = e;\n c[(a + 4) >> 2] = c[(d + 4) >> 2];\n c[(a + 8) >> 2] = e;\n c[(a + 12) >> 2] = b;\n return;\n }\n function mg(a) {\n a = a | 0;\n var b = 0;\n b = ((c[(a + 12) >> 2] | 0) + 20) | 0;\n c[b >> 2] = (c[b >> 2] | 0) + (((((c[a >> 2] | 0) - (c[(a + 8) >> 2] | 0)) | 0) / 44) | 0);\n return;\n }\n function ng(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[a >> 2] | 0;\n d = (a + 8) | 0;\n if ((b | 0) == (c[d >> 2] | 0)) {\n e = d;\n b = c[(e + 4) >> 2] | 0;\n d = a;\n c[d >> 2] = c[e >> 2];\n c[(d + 4) >> 2] = b;\n }\n else {\n e = (b + 4) | 0;\n c[a >> 2] = e;\n c[(a + 4) >> 2] = c[e >> 2];\n }\n return a | 0;\n }\n function og(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n f = (p + 32) | 0;\n e = (p + 28) | 0;\n i = (p + 8) | 0;\n j = (p + 4) | 0;\n k = p;\n o = (a + 8) | 0;\n d = c[o >> 2] | 0;\n l = (a + 12) | 0;\n n = c[l >> 2] | 0;\n g = n;\n do\n if ((d | 0) == (n | 0)) {\n n = (a + 4) | 0;\n m = c[n >> 2] | 0;\n q = c[a >> 2] | 0;\n h = q;\n if (m >>> 0 <= q >>> 0) {\n d = (g - h) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(i, d, d >>> 2, (a + 12) | 0);\n c[j >> 2] = c[n >> 2];\n c[k >> 2] = c[o >> 2];\n c[e >> 2] = c[j >> 2];\n c[f >> 2] = c[k >> 2];\n ug(i, e, f);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[i >> 2];\n c[i >> 2] = d;\n d = (i + 4) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 8) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 12) | 0;\n q = c[l >> 2] | 0;\n c[l >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(i);\n d = c[o >> 2] | 0;\n break;\n }\n f = m;\n e = (((((f - h) >> 2) + 1) | 0) / -2) | 0;\n a = (m + (e << 2)) | 0;\n f = (d - f) | 0;\n if (!f)\n d = a;\n else {\n vr(a | 0, m | 0, f | 0) | 0;\n d = ((c[n >> 2] | 0) + (e << 2)) | 0;\n }\n q = (a + ((f >> 2) << 2)) | 0;\n c[o >> 2] = q;\n c[n >> 2] = d;\n d = q;\n }\n while (0);\n c[d >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + 4;\n V = p;\n return;\n }\n function pg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n e = (p + 32) | 0;\n d = (p + 28) | 0;\n h = (p + 8) | 0;\n i = (p + 4) | 0;\n j = p;\n o = (a + 4) | 0;\n m = c[o >> 2] | 0;\n n = c[a >> 2] | 0;\n k = n;\n do\n if ((m | 0) == (n | 0)) {\n n = (a + 8) | 0;\n l = c[n >> 2] | 0;\n g = (a + 12) | 0;\n q = c[g >> 2] | 0;\n f = q;\n if (l >>> 0 >= q >>> 0) {\n q = (f - k) | 0;\n q = (q | 0) == 0 ? 1 : q >> 1;\n qg(h, q, ((q + 3) | 0) >>> 2, (a + 12) | 0);\n c[i >> 2] = c[o >> 2];\n c[j >> 2] = c[n >> 2];\n c[d >> 2] = c[i >> 2];\n c[e >> 2] = c[j >> 2];\n ug(h, d, e);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[h >> 2];\n c[h >> 2] = d;\n d = (h + 4) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 8) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 12) | 0;\n q = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(h);\n d = c[o >> 2] | 0;\n break;\n }\n e = l;\n a = (((((f - e) >> 2) + 1) | 0) / 2) | 0;\n f = (l + (a << 2)) | 0;\n e = (e - m) | 0;\n d = (f + ((0 - (e >> 2)) << 2)) | 0;\n if (!e) {\n d = f;\n e = f;\n }\n else {\n vr(d | 0, m | 0, e | 0) | 0;\n e = ((c[n >> 2] | 0) + (a << 2)) | 0;\n }\n c[o >> 2] = d;\n c[n >> 2] = e;\n }\n else\n d = m;\n while (0);\n c[(d + -4) >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + -4;\n V = p;\n return;\n }\n function qg(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n f = (a + 12) | 0;\n c[f >> 2] = 0;\n c[(a + 16) >> 2] = e;\n do\n if (b)\n if (b >>> 0 > 1073741823) {\n f = v(8) | 0;\n vq(f, 6723);\n c[f >> 2] = 5956;\n x(f | 0, 3928, 123);\n }\n else {\n e = eq(b << 2) | 0;\n break;\n }\n else\n e = 0;\n while (0);\n c[a >> 2] = e;\n d = (e + (d << 2)) | 0;\n c[(a + 8) >> 2] = d;\n c[(a + 4) >> 2] = d;\n c[f >> 2] = e + (b << 2);\n return;\n }\n function rg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n f = (p + 32) | 0;\n e = (p + 28) | 0;\n i = (p + 8) | 0;\n j = (p + 4) | 0;\n k = p;\n o = (a + 8) | 0;\n d = c[o >> 2] | 0;\n l = (a + 12) | 0;\n n = c[l >> 2] | 0;\n g = n;\n do\n if ((d | 0) == (n | 0)) {\n n = (a + 4) | 0;\n m = c[n >> 2] | 0;\n q = c[a >> 2] | 0;\n h = q;\n if (m >>> 0 <= q >>> 0) {\n d = (g - h) | 0;\n d = (d | 0) == 0 ? 1 : d >> 1;\n qg(i, d, d >>> 2, c[(a + 16) >> 2] | 0);\n c[j >> 2] = c[n >> 2];\n c[k >> 2] = c[o >> 2];\n c[e >> 2] = c[j >> 2];\n c[f >> 2] = c[k >> 2];\n ug(i, e, f);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[i >> 2];\n c[i >> 2] = d;\n d = (i + 4) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 8) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (i + 12) | 0;\n q = c[l >> 2] | 0;\n c[l >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(i);\n d = c[o >> 2] | 0;\n break;\n }\n f = m;\n e = (((((f - h) >> 2) + 1) | 0) / -2) | 0;\n a = (m + (e << 2)) | 0;\n f = (d - f) | 0;\n if (!f)\n d = a;\n else {\n vr(a | 0, m | 0, f | 0) | 0;\n d = ((c[n >> 2] | 0) + (e << 2)) | 0;\n }\n q = (a + ((f >> 2) << 2)) | 0;\n c[o >> 2] = q;\n c[n >> 2] = d;\n d = q;\n }\n while (0);\n c[d >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + 4;\n V = p;\n return;\n }\n function sg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0;\n p = V;\n V = (V + 48) | 0;\n e = (p + 32) | 0;\n d = (p + 28) | 0;\n h = (p + 8) | 0;\n i = (p + 4) | 0;\n j = p;\n o = (a + 4) | 0;\n m = c[o >> 2] | 0;\n n = c[a >> 2] | 0;\n k = n;\n do\n if ((m | 0) == (n | 0)) {\n n = (a + 8) | 0;\n l = c[n >> 2] | 0;\n g = (a + 12) | 0;\n q = c[g >> 2] | 0;\n f = q;\n if (l >>> 0 >= q >>> 0) {\n q = (f - k) | 0;\n q = (q | 0) == 0 ? 1 : q >> 1;\n qg(h, q, ((q + 3) | 0) >>> 2, c[(a + 16) >> 2] | 0);\n c[i >> 2] = c[o >> 2];\n c[j >> 2] = c[n >> 2];\n c[d >> 2] = c[i >> 2];\n c[e >> 2] = c[j >> 2];\n ug(h, d, e);\n d = c[a >> 2] | 0;\n c[a >> 2] = c[h >> 2];\n c[h >> 2] = d;\n d = (h + 4) | 0;\n q = c[o >> 2] | 0;\n c[o >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 8) | 0;\n q = c[n >> 2] | 0;\n c[n >> 2] = c[d >> 2];\n c[d >> 2] = q;\n d = (h + 12) | 0;\n q = c[g >> 2] | 0;\n c[g >> 2] = c[d >> 2];\n c[d >> 2] = q;\n tg(h);\n d = c[o >> 2] | 0;\n break;\n }\n e = l;\n a = (((((f - e) >> 2) + 1) | 0) / 2) | 0;\n f = (l + (a << 2)) | 0;\n e = (e - m) | 0;\n d = (f + ((0 - (e >> 2)) << 2)) | 0;\n if (!e) {\n d = f;\n e = f;\n }\n else {\n vr(d | 0, m | 0, e | 0) | 0;\n e = ((c[n >> 2] | 0) + (a << 2)) | 0;\n }\n c[o >> 2] = d;\n c[n >> 2] = e;\n }\n else\n d = m;\n while (0);\n c[(d + -4) >> 2] = c[b >> 2];\n c[o >> 2] = (c[o >> 2] | 0) + -4;\n V = p;\n return;\n }\n function tg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = c[(a + 4) >> 2] | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n if ((e | 0) != (b | 0))\n c[d >> 2] = e + (~(((e + -4 - b) | 0) >>> 2) << 2);\n b = c[a >> 2] | 0;\n if (b | 0)\n Da(b, ((c[(a + 12) >> 2] | 0) - b) | 0);\n return;\n }\n function ug(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n f = c[b >> 2] | 0;\n vg(g, (a + 8) | 0, ((c[d >> 2] | 0) - f) >> 2);\n a = c[g >> 2] | 0;\n e = (g + 4) | 0;\n if ((a | 0) != (c[e >> 2] | 0)) {\n d = f;\n do {\n c[a >> 2] = c[d >> 2];\n a = ((c[g >> 2] | 0) + 4) | 0;\n c[g >> 2] = a;\n d = (d + 4) | 0;\n } while ((a | 0) != (c[e >> 2] | 0));\n c[b >> 2] = d;\n }\n wg(g);\n V = h;\n return;\n }\n function vg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = c[b >> 2];\n c[(a + 4) >> 2] = (c[b >> 2] | 0) + (d << 2);\n c[(a + 8) >> 2] = b;\n return;\n }\n function wg(a) {\n a = a | 0;\n c[c[(a + 8) >> 2] >> 2] = c[a >> 2];\n return;\n }\n function xg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0)) | 0;\n }\n function yg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n return;\n }\n function zg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = c[(b + 4) >> 2] | 0;\n d = c[(b + 16) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Ag(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = ((c[(b + 16) >> 2] | 0) + (c[(b + 20) >> 2] | 0)) | 0;\n g = c[(b + 4) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Bg(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 16) | 0;\n e = (i + 8) | 0;\n g = i;\n Cg(e, a);\n fg(g, a);\n f = (e + 4) | 0;\n b = c[f >> 2] | 0;\n g = (g + 4) | 0;\n if ((b | 0) != (c[g >> 2] | 0))\n do {\n Ic(b);\n b = ((c[f >> 2] | 0) + 44) | 0;\n c[f >> 2] = b;\n d = c[e >> 2] | 0;\n if (((b - (c[d >> 2] | 0)) | 0) == 4092) {\n b = (d + 4) | 0;\n c[e >> 2] = b;\n b = c[b >> 2] | 0;\n c[f >> 2] = b;\n }\n } while ((b | 0) != (c[g >> 2] | 0));\n c[(a + 20) >> 2] = 0;\n f = (a + 8) | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n b = ((c[f >> 2] | 0) - d) >> 2;\n if (b >>> 0 > 2)\n do {\n Da(c[d >> 2] | 0, 4092);\n d = ((c[e >> 2] | 0) + 4) | 0;\n c[e >> 2] = d;\n b = ((c[f >> 2] | 0) - d) >> 2;\n } while (b >>> 0 > 2);\n switch (b | 0) {\n case 1: {\n b = 46;\n h = 11;\n break;\n }\n case 2: {\n b = 93;\n h = 11;\n break;\n }\n default: {\n }\n }\n if ((h | 0) == 11)\n c[(a + 16) >> 2] = b;\n V = i;\n return;\n }\n function Cg(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = c[(b + 4) >> 2] | 0;\n d = c[(b + 16) >> 2] | 0;\n e = ((d >>> 0) / 93) | 0;\n f = (g + (e << 2)) | 0;\n if ((c[(b + 8) >> 2] | 0) == (g | 0))\n b = 0;\n else\n b = ((c[f >> 2] | 0) + ((((d - ((e * 93) | 0)) | 0) * 44) | 0)) | 0;\n c[a >> 2] = f;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Dg(b, e, f) {\n b = b | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0;\n m = V;\n V = (V + 16) | 0;\n l = m;\n j = (b + 4) | 0;\n if (!(a[j >> 0] | 0)) {\n l = De(e) | 0;\n Ee(l, f, c[b >> 2] | 0);\n l = c[b >> 2] | 0;\n i = (f + l) | 0;\n if (!l)\n g = 0;\n else {\n g = f;\n h = c[(b + 8) >> 2] | 0;\n while (1) {\n a[h >> 0] = a[g >> 0] | 0;\n g = (g + 1) | 0;\n if ((g | 0) == (i | 0))\n break;\n else\n h = (h + 1) | 0;\n }\n g = c[b >> 2] | 0;\n }\n a[j >> 0] = 1;\n f = (f + g) | 0;\n }\n else {\n h = c[(b + 20) >> 2] | 0;\n g = c[(b + 8) >> 2] | 0;\n Cg(l, (b + 32) | 0);\n b = (b + 12) | 0;\n if ((g | 0) != (c[b >> 2] | 0)) {\n k = (l + 4) | 0;\n j = g;\n i = h;\n g = c[k >> 2] | 0;\n while (1) {\n h = d[j >> 0] | 0;\n h = Eg(((Zc(e, g) | 0) + h) | 0) | 0;\n a[i >> 0] = h;\n a[f >> 0] = h;\n a[j >> 0] = h;\n j = (j + 1) | 0;\n f = (f + 1) | 0;\n h = c[l >> 2] | 0;\n g = ((c[k >> 2] | 0) + 44) | 0;\n c[k >> 2] = g;\n if (((g - (c[h >> 2] | 0)) | 0) == 4092) {\n g = (h + 4) | 0;\n c[l >> 2] = g;\n g = c[g >> 2] | 0;\n c[k >> 2] = g;\n }\n if ((j | 0) == (c[b >> 2] | 0))\n break;\n else\n i = (i + 1) | 0;\n }\n }\n }\n V = m;\n return f | 0;\n }\n function Eg(a) {\n a = a | 0;\n return (a & 255) | 0;\n }\n function Fg(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Gg(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Hg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 11262 ? (a + 12) | 0 : 0) | 0;\n }\n function Ig(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Jg(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n if (b | 0) {\n Yf(a, b);\n Lg(a, b);\n }\n return;\n }\n function Kg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n if (b | 0)\n Mg(a, b, d);\n return;\n }\n function Lg(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n ag(f, b, d);\n d = (f + 4) | 0;\n b = c[d >> 2] | 0;\n e = (f + 8) | 0;\n if ((b | 0) != (c[e >> 2] | 0))\n do {\n a[b >> 0] = 0;\n b = ((c[d >> 2] | 0) + 1) | 0;\n c[d >> 2] = b;\n } while ((b | 0) != (c[e >> 2] | 0));\n bg(f);\n V = g;\n return;\n }\n function Mg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n o = V;\n V = (V + 96) | 0;\n n = (o + 80) | 0;\n k = (o + 64) | 0;\n h = (o + 48) | 0;\n i = (o + 40) | 0;\n j = (o + 8) | 0;\n f = o;\n l = (o + 32) | 0;\n m = (o + 16) | 0;\n e = ((c[(a + 8) >> 2] | 0) - (c[(a + 4) >> 2] | 0)) | 0;\n e =\n (((e | 0) == 0 ? 0 : ((((e >> 2) * 93) | 0) + -1) | 0) -\n ((c[(a + 20) >> 2] | 0) + (c[(a + 16) >> 2] | 0))) |\n 0;\n if (e >>> 0 < b >>> 0)\n eg(a, (b - e) | 0);\n fg(i, a);\n fg(f, a);\n e = c[f >> 2] | 0;\n f = c[(f + 4) >> 2] | 0;\n g = j;\n c[g >> 2] = e;\n c[(g + 4) >> 2] = f;\n g = e;\n if (b | 0) {\n e = (((((f - (c[e >> 2] | 0)) | 0) / 44) | 0) + b) | 0;\n if ((e | 0) > 0) {\n b = ((e >>> 0) / 93) | 0;\n g = (g + (b << 2)) | 0;\n c[j >> 2] = g;\n e = ((c[g >> 2] | 0) + ((((e - ((b * 93) | 0)) | 0) * 44) | 0)) | 0;\n }\n else {\n e = (92 - e) | 0;\n b = (g + ((((e | 0) / -93) | 0) << 2)) | 0;\n c[j >> 2] = b;\n e = ((c[b >> 2] | 0) + ((((92 - ((e | 0) % 93 | 0)) | 0) * 44) | 0)) | 0;\n }\n c[(j + 4) >> 2] = e;\n }\n c[k >> 2] = c[i >> 2];\n c[(k + 4) >> 2] = c[(i + 4) >> 2];\n c[n >> 2] = c[j >> 2];\n c[(n + 4) >> 2] = c[(j + 4) >> 2];\n gg(h, k, n);\n hg(n, h);\n ig(k, h);\n if (jg(n, k) | 0) {\n f = (m + 4) | 0;\n do {\n kg(l, n);\n lg(m, a, l);\n e = c[m >> 2] | 0;\n if ((e | 0) != (c[f >> 2] | 0))\n do {\n Wc(e, d);\n e = ((c[m >> 2] | 0) + 44) | 0;\n c[m >> 2] = e;\n } while ((e | 0) != (c[f >> 2] | 0));\n mg(m);\n ng(n) | 0;\n } while (jg(n, k) | 0);\n }\n V = o;\n return;\n }\n function Ng(a) {\n a = a | 0;\n var b = 0, d = 0;\n Bg(a);\n b = c[(a + 4) >> 2] | 0;\n d = c[(a + 8) >> 2] | 0;\n if ((b | 0) != (d | 0))\n do {\n Da(c[b >> 2] | 0, 4092);\n b = (b + 4) | 0;\n } while ((b | 0) != (d | 0));\n dg(a);\n return;\n }\n function Og(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 4924;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function Pg(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4944;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function Qg(a, b) {\n a = a | 0;\n b = b | 0;\n return Tg(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Rg(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 4924;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n Vg(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function Sg(a) {\n a = a | 0;\n Rg(a);\n jp(a);\n return;\n }\n function Tg(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function Ug(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n if (a[b >> 0] | 0) {\n nc(c);\n a[b >> 0] = 0;\n }\n return d | 0;\n }\n function Vg(a) {\n a = a | 0;\n ze(a);\n return;\n }\n function Wg(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Xg(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Yg(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Zg(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 12004 ? (a + 12) | 0 : 0) | 0;\n }\n function _g(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function $g(b) {\n b = b | 0;\n a[b >> 0] = 1;\n return;\n }\n function ah(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 4972;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function bh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 4992;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function ch(a, b) {\n a = a | 0;\n b = b | 0;\n return fh(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function dh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 4972;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n hh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function eh(a) {\n a = a | 0;\n dh(a);\n jp(a);\n return;\n }\n function fh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return gh((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function gh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 328) | 0, b, qf(a, b, c) | 0) | 0;\n }\n function hh(a) {\n a = a | 0;\n ih((a + 4784) | 0);\n ze(a);\n return;\n }\n function ih(a) {\n a = a | 0;\n of(a);\n return;\n }\n function jh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function kh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function lh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 12827 ? (a + 12) | 0 : 0) | 0;\n }\n function mh(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function nh(a) {\n a = a | 0;\n cf(a);\n $g((a + 328) | 0);\n return;\n }\n function oh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 5020;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function ph(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5040;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function qh(a, b) {\n a = a | 0;\n b = b | 0;\n return th(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function rh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 5020;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n vh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function sh(a) {\n a = a | 0;\n rh(a);\n jp(a);\n return;\n }\n function th(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return uh((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function uh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ug((a + 316) | 0, b, If(a, b, c) | 0) | 0;\n }\n function vh(a) {\n a = a | 0;\n wh((a + 4784) | 0);\n ze(a);\n return;\n }\n function wh(a) {\n a = a | 0;\n Hf(a);\n return;\n }\n function xh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function yh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function zh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 13672 ? (a + 12) | 0 : 0) | 0;\n }\n function Ah(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Bh(a) {\n a = a | 0;\n Cf(a);\n $g((a + 316) | 0);\n return;\n }\n function Ch(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n Md(a);\n c[a >> 2] = 5068;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = d;\n return;\n }\n function Dh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5088;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Wg(a, e);\n V = d;\n return;\n }\n function Eh(a, b) {\n a = a | 0;\n b = b | 0;\n return Hh(c[(a + 8) >> 2] | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Fh(a) {\n a = a | 0;\n var b = 0, d = 0;\n c[a >> 2] = 5068;\n d = (a + 8) | 0;\n b = c[d >> 2] | 0;\n c[d >> 2] = 0;\n if (b | 0) {\n Jh(b);\n jp(b);\n }\n Qd(a);\n return;\n }\n function Gh(a) {\n a = a | 0;\n Fh(a);\n jp(a);\n return;\n }\n function Hh(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return Ih((a + 4784) | 0, b, Be(a, b, c) | 0) | 0;\n }\n function Ih(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return uh((a + 328) | 0, b, qf(a, b, c) | 0) | 0;\n }\n function Jh(a) {\n a = a | 0;\n Kh((a + 4784) | 0);\n ze(a);\n return;\n }\n function Kh(a) {\n a = a | 0;\n wh((a + 328) | 0);\n of(a);\n return;\n }\n function Lh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Mh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function Nh(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 14573 ? (a + 12) | 0 : 0) | 0;\n }\n function Oh(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ph(a) {\n a = a | 0;\n cf(a);\n Bh((a + 328) | 0);\n return;\n }\n function Qh(a) {\n a = a | 0;\n return (a + 20) | 0;\n }\n function Rh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = d;\n c[(a + 8) >> 2] = 0;\n return;\n }\n function Sh(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = -1;\n return;\n }\n function Th(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n d = V;\n V = (V + 16) | 0;\n e = (d + 4) | 0;\n g = d;\n f = eq(24) | 0;\n ii(f, b);\n c[g >> 2] = 0;\n c[e >> 2] = c[g >> 2];\n ji(a, f, e);\n V = d;\n return;\n }\n function Uh(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Vh(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5116;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xh(a, e);\n V = d;\n return;\n }\n function Wh(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function Xh(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function Yh(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Zh(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n jp(a);\n return;\n }\n function _h(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 14966 ? (a + 12) | 0 : 0) | 0;\n }\n function $h(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ai(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5144;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n ci(a, e);\n V = d;\n return;\n }\n function bi(a) {\n a = a | 0;\n var b = 0, d = 0;\n a = c[(a + 4) >> 2] | 0;\n if (a | 0 ? ((d = (a + 4) | 0), (b = c[d >> 2] | 0), (c[d >> 2] = b + -1), (b | 0) == 0) : 0) {\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n qq(a);\n }\n return;\n }\n function ci(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function di(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ei(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0) {\n hi(a);\n jp(a);\n }\n return;\n }\n function fi(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15127 ? (a + 12) | 0 : 0) | 0;\n }\n function gi(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function hi(a) {\n a = a | 0;\n return;\n }\n function ii(b, d) {\n b = b | 0;\n d = d | 0;\n Md(b);\n c[b >> 2] = 5172;\n c[(b + 4) >> 2] = d;\n c[(b + 8) >> 2] = 0;\n c[(b + 12) >> 2] = 0;\n c[(b + 16) >> 2] = 0;\n a[(b + 20) >> 0] = 1;\n return;\n }\n function ji(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5192;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n pi(a, e);\n V = d;\n return;\n }\n function ki(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n h = k;\n e = c[(b + 8) >> 2] | 0;\n i = c[(b + 12) >> 2] | 0;\n if ((e | 0) != (i | 0)) {\n j = (h + 4) | 0;\n do {\n f = c[e >> 2] | 0;\n c[h >> 2] = f;\n g = c[(e + 4) >> 2] | 0;\n c[j >> 2] = g;\n if (g | 0) {\n g = (g + 4) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n }\n d = $[c[((c[f >> 2] | 0) + 12) >> 2] & 63](f, d) | 0;\n Sd(h);\n e = (e + 8) | 0;\n } while ((e | 0) != (i | 0));\n }\n e = (b + 20) | 0;\n if (a[e >> 0] | 0) {\n a[e >> 0] = 0;\n ni(c[(b + 4) >> 2] | 0);\n }\n V = k;\n return d | 0;\n }\n function li(a) {\n a = a | 0;\n c[a >> 2] = 5172;\n Td((a + 8) | 0);\n Qd(a);\n return;\n }\n function mi(a) {\n a = a | 0;\n li(a);\n jp(a);\n return;\n }\n function ni(a) {\n a = a | 0;\n var b = 0;\n b = ((oi(c[a >> 2] | 0) | 0) & 255) << 24;\n b = (((oi(c[a >> 2] | 0) | 0) & 255) << 16) | b;\n b = b | (((oi(c[a >> 2] | 0) | 0) & 255) << 8);\n c[(a + 4) >> 2] = b | ((oi(c[a >> 2] | 0) | 0) & 255);\n return;\n }\n function oi(b) {\n b = b | 0;\n var d = 0, e = 0;\n d = c[b >> 2] | 0;\n e = (b + 8) | 0;\n b = c[e >> 2] | 0;\n c[e >> 2] = b + 1;\n return a[(d + b) >> 0] | 0;\n }\n function pi(a, b) {\n a = a | 0;\n b = b | 0;\n return;\n }\n function qi(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ri(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 8) >> 2] & 255](a);\n return;\n }\n function si(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15450 ? (a + 12) | 0 : 0) | 0;\n }\n function ti(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function ui(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(180) | 0;\n wi(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n xi(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function vi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(180) | 0;\n Ui(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Vi(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function wi(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5220;\n c[(a + 4) >> 2] = b;\n yi((a + 8) | 0);\n return;\n }\n function xi(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5244;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function yi(b) {\n b = b | 0;\n xe(b, 32, 1, 8, 0);\n mc((b + 80) | 0, 32, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Ci((b + 164) | 0);\n return;\n }\n function zi(a) {\n a = a | 0;\n c[a >> 2] = 5220;\n Di((a + 8) | 0);\n le(a);\n return;\n }\n function Ai(a) {\n a = a | 0;\n zi(a);\n jp(a);\n return;\n }\n function Bi(a, b) {\n a = a | 0;\n b = b | 0;\n return Ei((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Ci(b) {\n b = b | 0;\n a[(b + 4) >> 0] = 0;\n return;\n }\n function Di(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function Ei(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 164) | 0;\n if (Fi(g) | 0) {\n d = Gi((b + 80) | 0, d, c[g >> 2] | 0, 0) | 0;\n c[f >> 2] = d;\n Se(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 4);\n c[f >> 2] = Ne(e) | 0;\n }\n Ji(g, f);\n V = h;\n return (e + 4) | 0;\n }\n function Fi(b) {\n b = b | 0;\n return ((a[(b + 4) >> 0] | 0) != 0) | 0;\n }\n function Gi(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n d = ((Ki(a, b, ((c[(a + 36) >> 2] | 0) + ((e * 44) | 0)) | 0) | 0) + d) | 0;\n b = c[(a + 24) >> 2] | 0;\n if ((d | 0) < 0)\n return (d + b) | 0;\n else\n return (d - (d >>> 0 < b >>> 0 ? 0 : b)) | 0;\n return 0;\n }\n function Hi(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function Ii(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n if ((d | 0) > 0) {\n e = 0;\n do {\n a[(c + e) >> 0] = oi(b) | 0;\n e = (e + 1) | 0;\n } while ((e | 0) != (d | 0));\n }\n return;\n }\n function Ji(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = (b + 4) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n c[b >> 2] = c[d >> 2];\n return;\n }\n function Ki(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0;\n d = Li(b, d) | 0;\n c[a >> 2] = d;\n do\n if (d) {\n if (d >>> 0 >= 32) {\n d = c[(a + 28) >> 2] | 0;\n break;\n }\n e = c[(a + 12) >> 2] | 0;\n if (d >>> 0 > e >>> 0) {\n e = (d - e) | 0;\n d = Li(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n e = (d << e) | (Mi(b, e) | 0);\n }\n else\n e = Li(b, ((c[(a + 68) >> 2] | 0) + ((((d + -1) | 0) * 44) | 0)) | 0) | 0;\n d = c[a >> 2] | 0;\n if ((e | 0) < ((1 << (d + -1)) | 0)) {\n d = (e + 1 + (-1 << d)) | 0;\n break;\n }\n else {\n d = (e + 1) | 0;\n break;\n }\n }\n else\n d = Ni(b, (a + 48) | 0) | 0;\n while (0);\n return d | 0;\n }\n function Li(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n n = (a + 8) | 0;\n m = c[n >> 2] | 0;\n f = c[(b + 16) >> 2] | 0;\n if (f) {\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n l = m >>> 15;\n c[n >> 2] = l;\n j = ((d >>> 0) / (l >>> 0)) | 0;\n i = j >>> (c[(b + 40) >> 2] | 0);\n g = c[(f + (i << 2)) >> 2] | 0;\n i = ((c[(f + ((i + 1) << 2)) >> 2] | 0) + 1) | 0;\n h = (g + 1) | 0;\n k = c[(b + 8) >> 2] | 0;\n if (i >>> 0 > h >>> 0) {\n f = g;\n g = i;\n do {\n h = ((g + f) | 0) >>> 1;\n i = (c[(k + (h << 2)) >> 2] | 0) >>> 0 > j >>> 0;\n f = i ? f : h;\n g = i ? h : g;\n h = (f + 1) | 0;\n } while (g >>> 0 > h >>> 0);\n g = f;\n }\n f = q(c[(k + (g << 2)) >> 2] | 0, l) | 0;\n if ((g | 0) == (c[(b + 32) >> 2] | 0))\n h = m;\n else\n h = q(c[(k + (h << 2)) >> 2] | 0, l) | 0;\n }\n else {\n k = m >>> 15;\n c[n >> 2] = k;\n i = c[b >> 2] | 0;\n l = c[(b + 8) >> 2] | 0;\n e = (a + 4) | 0;\n d = c[e >> 2] | 0;\n j = i >>> 1;\n f = 0;\n h = m;\n g = 0;\n do {\n o = q(c[(l + (j << 2)) >> 2] | 0, k) | 0;\n m = o >>> 0 > d >>> 0;\n h = m ? o : h;\n f = m ? f : o;\n g = m ? g : j;\n i = m ? j : i;\n j = ((g + i) | 0) >>> 1;\n } while ((j | 0) != (g | 0));\n }\n c[e >> 2] = d - f;\n o = (h - f) | 0;\n c[n >> 2] = o;\n if (o >>> 0 < 16777216)\n Oi(a);\n n = ((c[(b + 12) >> 2] | 0) + (g << 2)) | 0;\n c[n >> 2] = (c[n >> 2] | 0) + 1;\n n = (b + 28) | 0;\n o = ((c[n >> 2] | 0) + -1) | 0;\n c[n >> 2] = o;\n if (!o)\n Xc(b);\n return g | 0;\n }\n function Mi(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n if (b >>> 0 > 19) {\n d = (Pi(a) | 0) & 65535;\n return ((Mi(a, (b + -16) | 0) | 0) << 16) | d | 0;\n }\n e = (a + 4) | 0;\n f = c[e >> 2] | 0;\n g = (a + 8) | 0;\n d = (c[g >> 2] | 0) >>> b;\n c[g >> 2] = d;\n b = ((f >>> 0) / (d >>> 0)) | 0;\n c[e >> 2] = f - (q(b, d) | 0);\n if (d >>> 0 < 16777216)\n Oi(a);\n return b | 0;\n }\n function Ni(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0, i = 0;\n e = (a + 8) | 0;\n f = c[e >> 2] | 0;\n d = q(f >>> 13, c[(b + 8) >> 2] | 0) | 0;\n g = (a + 4) | 0;\n h = c[g >> 2] | 0;\n i = h >>> 0 >= d >>> 0;\n if (i) {\n c[g >> 2] = h - d;\n d = (f - d) | 0;\n c[e >> 2] = d;\n }\n else {\n c[e >> 2] = d;\n h = (b + 12) | 0;\n c[h >> 2] = (c[h >> 2] | 0) + 1;\n }\n if (d >>> 0 < 16777216)\n Oi(a);\n h = (b + 4) | 0;\n a = ((c[h >> 2] | 0) + -1) | 0;\n c[h >> 2] = a;\n if (!a)\n cd(b);\n return (i & 1) | 0;\n }\n function Oi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = (a + 4) | 0;\n d = (a + 8) | 0;\n e = c[b >> 2] | 0;\n do {\n e = (e << 8) | ((oi(c[a >> 2] | 0) | 0) & 255);\n c[b >> 2] = e;\n f = c[d >> 2] << 8;\n c[d >> 2] = f;\n } while (f >>> 0 < 16777216);\n return;\n }\n function Pi(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n d = (a + 4) | 0;\n f = c[d >> 2] | 0;\n b = (a + 8) | 0;\n e = (c[b >> 2] | 0) >>> 16;\n c[b >> 2] = e;\n b = ((f >>> 0) / (e >>> 0)) | 0;\n c[d >> 2] = f - (q(b, e) | 0);\n Oi(a);\n return (b & 65535) | 0;\n }\n function Qi(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Ri(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Si(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 15904 ? (a + 12) | 0 : 0) | 0;\n }\n function Ti(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Ui(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5272;\n c[(a + 4) >> 2] = b;\n Wi((a + 8) | 0);\n return;\n }\n function Vi(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5296;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Wi(b) {\n b = b | 0;\n xe(b, 32, 1, 8, 0);\n mc((b + 80) | 0, 32, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n _i((b + 164) | 0);\n return;\n }\n function Xi(a) {\n a = a | 0;\n c[a >> 2] = 5272;\n $i((a + 8) | 0);\n le(a);\n return;\n }\n function Yi(a) {\n a = a | 0;\n Xi(a);\n jp(a);\n return;\n }\n function Zi(a, b) {\n a = a | 0;\n b = b | 0;\n return aj((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function _i(b) {\n b = b | 0;\n a[(b + 4) >> 0] = 0;\n return;\n }\n function $i(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function aj(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 164) | 0;\n if (bj(g) | 0) {\n d = Gi((b + 80) | 0, d, c[g >> 2] | 0, 0) | 0;\n c[f >> 2] = d;\n We(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 4);\n c[f >> 2] = Re(e) | 0;\n }\n cj(g, f);\n V = h;\n return (e + 4) | 0;\n }\n function bj(b) {\n b = b | 0;\n return ((a[(b + 4) >> 0] | 0) != 0) | 0;\n }\n function cj(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0;\n e = (b + 4) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n c[b >> 2] = c[d >> 2];\n return;\n }\n function dj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function ej(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function fj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 16402 ? (a + 12) | 0 : 0) | 0;\n }\n function gj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function hj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(172) | 0;\n jj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n kj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function ij(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(176) | 0;\n Aj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Bj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function jj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5324;\n c[(a + 4) >> 2] = b;\n lj((a + 8) | 0);\n return;\n }\n function kj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5348;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function lj(b) {\n b = b | 0;\n xe(b, 8, 1, 8, 0);\n mc((b + 80) | 0, 8, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n pj((b + 162) | 0);\n return;\n }\n function mj(a) {\n a = a | 0;\n c[a >> 2] = 5324;\n qj((a + 8) | 0);\n le(a);\n return;\n }\n function nj(a) {\n a = a | 0;\n mj(a);\n jp(a);\n return;\n }\n function oj(a, b) {\n a = a | 0;\n b = b | 0;\n return rj((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function pj(b) {\n b = b | 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function qj(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function rj(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n e = g;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n f = (b + 162) | 0;\n if (sj(f) | 0) {\n c = (Gi((b + 80) | 0, c, a[f >> 0] | 0, 0) | 0) & 255;\n a[e >> 0] = c;\n tj(c, d);\n }\n else {\n Ii(Hi(c) | 0, d, 1);\n a[e >> 0] = uj(d) | 0;\n }\n vj(f, e);\n V = g;\n return (d + 1) | 0;\n }\n function sj(b) {\n b = b | 0;\n return ((a[(b + 1) >> 0] | 0) != 0) | 0;\n }\n function tj(b, c) {\n b = b | 0;\n c = c | 0;\n a[c >> 0] = b;\n return;\n }\n function uj(b) {\n b = b | 0;\n return a[b >> 0] | 0;\n }\n function vj(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0;\n d = (b + 1) | 0;\n if (!(a[d >> 0] | 0))\n a[d >> 0] = 1;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function wj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function xj(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function yj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 16900 ? (a + 12) | 0 : 0) | 0;\n }\n function zj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Aj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5376;\n c[(a + 4) >> 2] = b;\n Cj((a + 8) | 0);\n return;\n }\n function Bj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5400;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Cj(b) {\n b = b | 0;\n xe(b, 16, 1, 8, 0);\n mc((b + 80) | 0, 16, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Gj((b + 162) | 0);\n return;\n }\n function Dj(a) {\n a = a | 0;\n c[a >> 2] = 5376;\n Hj((a + 8) | 0);\n le(a);\n return;\n }\n function Ej(a) {\n a = a | 0;\n Dj(a);\n jp(a);\n return;\n }\n function Fj(a, b) {\n a = a | 0;\n b = b | 0;\n return Ij((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Gj(b) {\n b = b | 0;\n a[(b + 2) >> 0] = 0;\n return;\n }\n function Hj(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function Ij(c, d, e) {\n c = c | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(c + 161) >> 0] | 0))\n oc((c + 80) | 0);\n g = (c + 162) | 0;\n if (Jj(g) | 0) {\n d = (Gi((c + 80) | 0, d, b[g >> 1] | 0, 0) | 0) & 65535;\n b[f >> 1] = d;\n Kj(d, e);\n }\n else {\n Ii(Hi(d) | 0, e, 2);\n b[f >> 1] = Lj(e) | 0;\n }\n Mj(g, f);\n V = h;\n return (e + 2) | 0;\n }\n function Jj(b) {\n b = b | 0;\n return ((a[(b + 2) >> 0] | 0) != 0) | 0;\n }\n function Kj(a, b) {\n a = a | 0;\n b = b | 0;\n Te(a, b);\n return;\n }\n function Lj(a) {\n a = a | 0;\n return Oe(a) | 0;\n }\n function Mj(c, d) {\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = (c + 2) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n b[c >> 1] = b[d >> 1] | 0;\n return;\n }\n function Nj(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function Oj(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function Pj(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 17398 ? (a + 12) | 0 : 0) | 0;\n }\n function Qj(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function Rj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(172) | 0;\n Tj(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n Uj(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function Sj(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n j = V;\n V = (V + 32) | 0;\n e = (j + 12) | 0;\n f = j;\n b = (j + 8) | 0;\n h = eq(176) | 0;\n gk(h, c[(a + 4) >> 2] | 0);\n g = (a + 8) | 0;\n c[b >> 2] = 0;\n c[e >> 2] = c[b >> 2];\n hk(f, h, e);\n h = (a + 12) | 0;\n b = c[h >> 2] | 0;\n i = (a + 16) | 0;\n do\n if (b >>> 0 >= (c[i >> 2] | 0) >>> 0) {\n b = (((b - (c[g >> 2] | 0)) >> 3) + 1) | 0;\n d = ee(g) | 0;\n if (d >>> 0 < b >>> 0)\n cr(g);\n else {\n k = c[g >> 2] | 0;\n l = ((c[i >> 2] | 0) - k) | 0;\n i = l >> 2;\n be(e, (l >> 3) >>> 0 < (d >>> 1) >>> 0 ? (i >>> 0 < b >>> 0 ? b : i) : d, ((c[h >> 2] | 0) - k) >> 3, (a + 16) | 0);\n i = (e + 8) | 0;\n h = c[i >> 2] | 0;\n c[h >> 2] = c[f >> 2];\n a = (f + 4) | 0;\n c[(h + 4) >> 2] = c[a >> 2];\n c[f >> 2] = 0;\n c[a >> 2] = 0;\n c[i >> 2] = h + 8;\n ce(g, e);\n de(e);\n break;\n }\n }\n else {\n $d(e, g, 1);\n l = (e + 4) | 0;\n k = c[l >> 2] | 0;\n c[k >> 2] = c[f >> 2];\n i = (f + 4) | 0;\n c[(k + 4) >> 2] = c[i >> 2];\n c[f >> 2] = 0;\n c[i >> 2] = 0;\n c[l >> 2] = k + 8;\n ae(e);\n }\n while (0);\n Sd(f);\n V = j;\n return;\n }\n function Tj(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5428;\n c[(a + 4) >> 2] = b;\n Vj((a + 8) | 0);\n return;\n }\n function Uj(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5452;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function Vj(b) {\n b = b | 0;\n xe(b, 8, 1, 8, 0);\n mc((b + 80) | 0, 8, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n Zj((b + 162) | 0);\n return;\n }\n function Wj(a) {\n a = a | 0;\n c[a >> 2] = 5428;\n _j((a + 8) | 0);\n le(a);\n return;\n }\n function Xj(a) {\n a = a | 0;\n Wj(a);\n jp(a);\n return;\n }\n function Yj(a, b) {\n a = a | 0;\n b = b | 0;\n return $j((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function Zj(b) {\n b = b | 0;\n a[(b + 1) >> 0] = 0;\n return;\n }\n function _j(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function $j(b, c, e) {\n b = b | 0;\n c = c | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n f = h;\n if (!(a[(b + 161) >> 0] | 0))\n oc((b + 80) | 0);\n g = (b + 162) | 0;\n if (ak(g) | 0) {\n c = (Gi((b + 80) | 0, c, d[g >> 0] | 0, 0) | 0) & 255;\n a[f >> 0] = c;\n Ue(c, e);\n }\n else {\n Ii(Hi(c) | 0, e, 1);\n a[f >> 0] = Pe(e) | 0;\n }\n bk(g, f);\n V = h;\n return (e + 1) | 0;\n }\n function ak(b) {\n b = b | 0;\n return ((a[(b + 1) >> 0] | 0) != 0) | 0;\n }\n function bk(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0;\n d = (b + 1) | 0;\n if (!(a[d >> 0] | 0))\n a[d >> 0] = 1;\n a[b >> 0] = a[c >> 0] | 0;\n return;\n }\n function ck(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function dk(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function ek(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 17896 ? (a + 12) | 0 : 0) | 0;\n }\n function fk(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function gk(a, b) {\n a = a | 0;\n b = b | 0;\n fe(a);\n c[a >> 2] = 5480;\n c[(a + 4) >> 2] = b;\n ik((a + 8) | 0);\n return;\n }\n function hk(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n c[a >> 2] = b;\n f = eq(16) | 0;\n c[(f + 4) >> 2] = 0;\n c[(f + 8) >> 2] = 0;\n c[f >> 2] = 5504;\n c[(f + 12) >> 2] = b;\n c[(a + 4) >> 2] = f;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = b;\n Xe(a, e);\n V = d;\n return;\n }\n function ik(b) {\n b = b | 0;\n xe(b, 16, 1, 8, 0);\n mc((b + 80) | 0, 16, 1, 8, 0);\n a[(b + 160) >> 0] = 0;\n a[(b + 161) >> 0] = 0;\n mk((b + 162) | 0);\n return;\n }\n function jk(a) {\n a = a | 0;\n c[a >> 2] = 5480;\n nk((a + 8) | 0);\n le(a);\n return;\n }\n function kk(a) {\n a = a | 0;\n jk(a);\n jp(a);\n return;\n }\n function lk(a, b) {\n a = a | 0;\n b = b | 0;\n return ok((a + 8) | 0, c[(a + 4) >> 2] | 0, b) | 0;\n }\n function mk(b) {\n b = b | 0;\n a[(b + 2) >> 0] = 0;\n return;\n }\n function nk(a) {\n a = a | 0;\n qc((a + 80) | 0);\n ye(a);\n return;\n }\n function ok(c, d, f) {\n c = c | 0;\n d = d | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0;\n i = V;\n V = (V + 16) | 0;\n g = i;\n if (!(a[(c + 161) >> 0] | 0))\n oc((c + 80) | 0);\n h = (c + 162) | 0;\n if (pk(h) | 0) {\n d = (Gi((c + 80) | 0, d, e[h >> 1] | 0, 0) | 0) & 65535;\n b[g >> 1] = d;\n Te(d, f);\n }\n else {\n Ii(Hi(d) | 0, f, 2);\n b[g >> 1] = Oe(f) | 0;\n }\n qk(h, g);\n V = i;\n return (f + 2) | 0;\n }\n function pk(b) {\n b = b | 0;\n return ((a[(b + 2) >> 0] | 0) != 0) | 0;\n }\n function qk(c, d) {\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = (c + 2) | 0;\n if (!(a[e >> 0] | 0))\n a[e >> 0] = 1;\n b[c >> 1] = b[d >> 1] | 0;\n return;\n }\n function rk(a) {\n a = a | 0;\n pq(a);\n jp(a);\n return;\n }\n function sk(a) {\n a = a | 0;\n a = c[(a + 12) >> 2] | 0;\n if (a | 0)\n ca[c[((c[a >> 2] | 0) + 4) >> 2] & 255](a);\n return;\n }\n function tk(a, b) {\n a = a | 0;\n b = b | 0;\n return ((c[(b + 4) >> 2] | 0) == 18394 ? (a + 12) | 0 : 0) | 0;\n }\n function uk(a) {\n a = a | 0;\n Da(a, 16);\n return;\n }\n function vk() {\n return;\n }\n function wk(a) {\n a = a | 0;\n return Ek(a) | 0;\n }\n function xk() {\n return 0;\n }\n function yk() {\n return 0;\n }\n function zk(a) {\n a = a | 0;\n if (a | 0) {\n Fk(a);\n jp(a);\n }\n return;\n }\n function Ak() {\n return Gk() | 0;\n }\n function Bk() {\n return Hk() | 0;\n }\n function Ck() {\n return Ik() | 0;\n }\n function Dk() {\n return 0;\n }\n function Ek(a) {\n a = a | 0;\n return 3360;\n }\n function Fk(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n e = b;\n c[e >> 2] = c[a >> 2];\n c[a >> 2] = 0;\n d = (a + 4) | 0;\n c[(e + 4) >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n wa(e);\n d = (a + 8) | 0;\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n f = (a + 12) | 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Ga(e);\n Ga(d);\n wa(a);\n V = b;\n return;\n }\n function Gk() {\n return 3360;\n }\n function Hk() {\n return 3368;\n }\n function Ik() {\n return 3384;\n }\n function Jk() {\n return 18579;\n }\n function Kk() {\n return 18582;\n }\n function Lk() {\n return 18584;\n }\n function Mk() {\n var a = 0;\n a = eq(16) | 0;\n Tk(a);\n return a | 0;\n }\n function Nk(a) {\n a = a | 0;\n var b = 0, c = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n e = Ak() | 0;\n d = Pk(c) | 0;\n c = Qk(c) | 0;\n E(e | 0, d | 0, c | 0, Jk() | 0, 12, a | 0);\n V = b;\n return;\n }\n function Ok(a) {\n a = a | 0;\n return Rk(Y[a & 3]() | 0) | 0;\n }\n function Pk(a) {\n a = a | 0;\n return 1;\n }\n function Qk(a) {\n a = a | 0;\n return Sk() | 0;\n }\n function Rk(a) {\n a = a | 0;\n return a | 0;\n }\n function Sk() {\n return 5524;\n }\n function Tk(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n return;\n }\n function Uk(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = Wk(f) | 0;\n f = Xk(f) | 0;\n b = bl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 4, Yk(e) | 0, 0);\n V = d;\n return;\n }\n function Vk(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = Zk(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = _k(d) | 0;\n g = $k(e) | 0;\n ea[b & 15](a, f, g);\n return;\n }\n function Wk(a) {\n a = a | 0;\n return 4;\n }\n function Xk(a) {\n a = a | 0;\n return al() | 0;\n }\n function Yk(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Zk(a) {\n a = a | 0;\n return a | 0;\n }\n function _k(a) {\n a = a | 0;\n return a | 0;\n }\n function $k(a) {\n a = a | 0;\n return a | 0;\n }\n function al() {\n return 144;\n }\n function bl() {\n return 18587;\n }\n function cl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = el(f) | 0;\n f = fl(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 7, gl(e) | 0, 0);\n V = d;\n return;\n }\n function dl(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Zk(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = hl(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function el(a) {\n a = a | 0;\n return 3;\n }\n function fl(a) {\n a = a | 0;\n return il() | 0;\n }\n function gl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function hl(a) {\n a = a | 0;\n return a | 0;\n }\n function il() {\n return 5528;\n }\n function jl() {\n return 18593;\n }\n function kl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = Ak() | 0;\n g = ml(f) | 0;\n f = nl(f) | 0;\n b = rl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 41, ol(e) | 0, 0);\n V = d;\n return;\n }\n function ll(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n e = V;\n V = (V + 16) | 0;\n d = e;\n g = Zk(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n c[d >> 2] = Z[b & 15](a) | 0;\n g = pl(d) | 0;\n V = e;\n return g | 0;\n }\n function ml(a) {\n a = a | 0;\n return 2;\n }\n function nl(a) {\n a = a | 0;\n return ql() | 0;\n }\n function ol(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function pl(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function ql() {\n return 5540;\n }\n function rl() {\n return 18598;\n }\n function sl() {\n return;\n }\n function tl(a) {\n a = a | 0;\n return Al(a) | 0;\n }\n function ul() {\n return 0;\n }\n function vl() {\n return 0;\n }\n function wl(a) {\n a = a | 0;\n if (a | 0) {\n Bl(a);\n jp(a);\n }\n return;\n }\n function xl() {\n return Cl() | 0;\n }\n function yl() {\n return Dl() | 0;\n }\n function zl() {\n return El() | 0;\n }\n function Al(a) {\n a = a | 0;\n return 3400;\n }\n function Bl(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n e = b;\n c[e >> 2] = c[a >> 2];\n c[a >> 2] = 0;\n d = (a + 4) | 0;\n c[(e + 4) >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n Wh(e);\n d = (a + 16) | 0;\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n f = (a + 20) | 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Uh(e);\n c[e >> 2] = c[d >> 2];\n c[d >> 2] = 0;\n c[(e + 4) >> 2] = c[f >> 2];\n c[f >> 2] = 0;\n Uh(e);\n Uh(d);\n bi((a + 8) | 0);\n Wh(a);\n V = b;\n return;\n }\n function Cl() {\n return 3400;\n }\n function Dl() {\n return 3408;\n }\n function El() {\n return 3424;\n }\n function Fl() {\n var a = 0;\n a = eq(24) | 0;\n Ml(a);\n return a | 0;\n }\n function Gl(a) {\n a = a | 0;\n var b = 0, c = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n e = xl() | 0;\n d = Il(c) | 0;\n c = Jl(c) | 0;\n E(e | 0, d | 0, c | 0, Jk() | 0, 13, a | 0);\n V = b;\n return;\n }\n function Hl(a) {\n a = a | 0;\n return Kl(Y[a & 3]() | 0) | 0;\n }\n function Il(a) {\n a = a | 0;\n return 1;\n }\n function Jl(a) {\n a = a | 0;\n return Ll() | 0;\n }\n function Kl(a) {\n a = a | 0;\n return a | 0;\n }\n function Ll() {\n return 5548;\n }\n function Ml(a) {\n a = a | 0;\n c[a >> 2] = 0;\n c[(a + 4) >> 2] = 0;\n c[(a + 8) >> 2] = 0;\n c[(a + 12) >> 2] = 0;\n c[(a + 16) >> 2] = 0;\n c[(a + 20) >> 2] = 0;\n return;\n }\n function Nl(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = Pl(f) | 0;\n f = Ql(f) | 0;\n b = bl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 5, Rl(e) | 0, 0);\n V = d;\n return;\n }\n function Ol(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = Sl(b) | 0;\n b = c[a >> 2] | 0;\n f = c[(a + 4) >> 2] | 0;\n a = (g + (f >> 1)) | 0;\n if (f & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = _k(d) | 0;\n g = $k(e) | 0;\n ea[b & 15](a, f, g);\n return;\n }\n function Pl(a) {\n a = a | 0;\n return 4;\n }\n function Ql(a) {\n a = a | 0;\n return Tl() | 0;\n }\n function Rl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Sl(a) {\n a = a | 0;\n return a | 0;\n }\n function Tl() {\n return 160;\n }\n function Ul(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = Wl(f) | 0;\n f = Xl(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 8, Yl(e) | 0, 0);\n V = d;\n return;\n }\n function Vl(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Sl(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = $k(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function Wl(a) {\n a = a | 0;\n return 3;\n }\n function Xl(a) {\n a = a | 0;\n return Zl() | 0;\n }\n function Yl(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function Zl() {\n return 5552;\n }\n function _l(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n d = V;\n V = (V + 16) | 0;\n e = d;\n f = (d + 8) | 0;\n h = c[(b + 4) >> 2] | 0;\n c[e >> 2] = c[b >> 2];\n c[(e + 4) >> 2] = h;\n h = xl() | 0;\n g = am(f) | 0;\n f = bm(f) | 0;\n b = jl() | 0;\n F(h | 0, a | 0, g | 0, f | 0, b | 0, 9, cm(e) | 0, 0);\n V = d;\n return;\n }\n function $l(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = Sl(b) | 0;\n b = c[a >> 2] | 0;\n e = c[(a + 4) >> 2] | 0;\n a = (f + (e >> 1)) | 0;\n if (e & 1)\n b = c[((c[a >> 2] | 0) + b) >> 2] | 0;\n f = hl(d) | 0;\n da[b & 15](a, f);\n return;\n }\n function am(a) {\n a = a | 0;\n return 3;\n }\n function bm(a) {\n a = a | 0;\n return dm() | 0;\n }\n function cm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = eq(8) | 0;\n d = c[(a + 4) >> 2] | 0;\n c[b >> 2] = c[a >> 2];\n c[(b + 4) >> 2] = d;\n return b | 0;\n }\n function dm() {\n return 5564;\n }\n function em() {\n ja();\n return;\n }\n function fm() {\n gm();\n return;\n }\n function gm() {\n hm(22144);\n return;\n }\n function hm(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + 16) | 0;\n c[b >> 2] = a;\n im();\n V = b;\n return;\n }\n function im() {\n M(jm() | 0, 18653);\n C(km() | 0, 18658, 1, 1, 0);\n lm(18663);\n mm(18668);\n nm(18680);\n om(18694);\n pm(18700);\n qm(18715);\n rm(18719);\n sm(18732);\n tm(18737);\n um(18751);\n vm(18757);\n K(wm() | 0, 18764);\n K(xm() | 0, 18776);\n L(ym() | 0, 4, 18809);\n L(zm() | 0, 2, 18822);\n L(Am() | 0, 4, 18837);\n G(Bm() | 0, 18852);\n Cm(18868);\n Dm(18898);\n Em(18935);\n Fm(18974);\n Gm(19005);\n Hm(19045);\n Im(19074);\n Jm(19112);\n Km(19142);\n Dm(19181);\n Em(19213);\n Fm(19246);\n Gm(19279);\n Hm(19313);\n Im(19346);\n Lm(19380);\n Mm(19411);\n Nm(19443);\n return;\n }\n function jm() {\n return _n() | 0;\n }\n function km() {\n return Zn() | 0;\n }\n function lm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Xn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, ((-128 << 24) >> 24) | 0, ((127 << 24) >> 24) | 0);\n V = b;\n return;\n }\n function mm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Vn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, ((-128 << 24) >> 24) | 0, ((127 << 24) >> 24) | 0);\n V = b;\n return;\n }\n function nm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Tn() | 0;\n I(a | 0, c[d >> 2] | 0, 1, 0, 255);\n V = b;\n return;\n }\n function om(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Rn() | 0;\n I(a | 0, c[d >> 2] | 0, 2, ((-32768 << 16) >> 16) | 0, ((32767 << 16) >> 16) | 0);\n V = b;\n return;\n }\n function pm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Pn() | 0;\n I(a | 0, c[d >> 2] | 0, 2, 0, 65535);\n V = b;\n return;\n }\n function qm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Nn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, -2147483648, 2147483647);\n V = b;\n return;\n }\n function rm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Ln() | 0;\n I(a | 0, c[d >> 2] | 0, 4, 0, -1);\n V = b;\n return;\n }\n function sm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Jn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, -2147483648, 2147483647);\n V = b;\n return;\n }\n function tm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Hn() | 0;\n I(a | 0, c[d >> 2] | 0, 4, 0, -1);\n V = b;\n return;\n }\n function um(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Fn() | 0;\n H(a | 0, c[d >> 2] | 0, 4);\n V = b;\n return;\n }\n function vm(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n a = Dn() | 0;\n H(a | 0, c[d >> 2] | 0, 8);\n V = b;\n return;\n }\n function wm() {\n return Cn() | 0;\n }\n function xm() {\n return Bn() | 0;\n }\n function ym() {\n return An() | 0;\n }\n function zm() {\n return zn() | 0;\n }\n function Am() {\n return yn() | 0;\n }\n function Bm() {\n return xn() | 0;\n }\n function Cm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = un() | 0;\n a = vn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Dm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = rn() | 0;\n a = sn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Em(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = on() | 0;\n a = pn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Fm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = ln() | 0;\n a = mn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Gm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = hn() | 0;\n a = jn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Hm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = en() | 0;\n a = fn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Im(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = bn() | 0;\n a = cn() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Jm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = _m() | 0;\n a = $m() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Km(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Xm() | 0;\n a = Ym() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Lm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Um() | 0;\n a = Vm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Mm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Rm() | 0;\n a = Sm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Nm(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n c[d >> 2] = a;\n e = Om() | 0;\n a = Pm() | 0;\n J(e | 0, a | 0, c[d >> 2] | 0);\n V = b;\n return;\n }\n function Om() {\n return Qm() | 0;\n }\n function Pm() {\n return 7;\n }\n function Qm() {\n return 3440;\n }\n function Rm() {\n return Tm() | 0;\n }\n function Sm() {\n return 7;\n }\n function Tm() {\n return 3448;\n }\n function Um() {\n return Wm() | 0;\n }\n function Vm() {\n return 6;\n }\n function Wm() {\n return 3456;\n }\n function Xm() {\n return Zm() | 0;\n }\n function Ym() {\n return 5;\n }\n function Zm() {\n return 3464;\n }\n function _m() {\n return an() | 0;\n }\n function $m() {\n return 4;\n }\n function an() {\n return 3472;\n }\n function bn() {\n return dn() | 0;\n }\n function cn() {\n return 5;\n }\n function dn() {\n return 3480;\n }\n function en() {\n return gn() | 0;\n }\n function fn() {\n return 4;\n }\n function gn() {\n return 3488;\n }\n function hn() {\n return kn() | 0;\n }\n function jn() {\n return 3;\n }\n function kn() {\n return 3496;\n }\n function ln() {\n return nn() | 0;\n }\n function mn() {\n return 2;\n }\n function nn() {\n return 3504;\n }\n function on() {\n return qn() | 0;\n }\n function pn() {\n return 1;\n }\n function qn() {\n return 3512;\n }\n function rn() {\n return tn() | 0;\n }\n function sn() {\n return 0;\n }\n function tn() {\n return 3520;\n }\n function un() {\n return wn() | 0;\n }\n function vn() {\n return 0;\n }\n function wn() {\n return 3528;\n }\n function xn() {\n return 3536;\n }\n function yn() {\n return 3544;\n }\n function zn() {\n return 3576;\n }\n function An() {\n return 3600;\n }\n function Bn() {\n return 3624;\n }\n function Cn() {\n return 3648;\n }\n function Dn() {\n return En() | 0;\n }\n function En() {\n return 4144;\n }\n function Fn() {\n return Gn() | 0;\n }\n function Gn() {\n return 4136;\n }\n function Hn() {\n return In() | 0;\n }\n function In() {\n return 4128;\n }\n function Jn() {\n return Kn() | 0;\n }\n function Kn() {\n return 4120;\n }\n function Ln() {\n return Mn() | 0;\n }\n function Mn() {\n return 4112;\n }\n function Nn() {\n return On() | 0;\n }\n function On() {\n return 4104;\n }\n function Pn() {\n return Qn() | 0;\n }\n function Qn() {\n return 4096;\n }\n function Rn() {\n return Sn() | 0;\n }\n function Sn() {\n return 4088;\n }\n function Tn() {\n return Un() | 0;\n }\n function Un() {\n return 4072;\n }\n function Vn() {\n return Wn() | 0;\n }\n function Wn() {\n return 4080;\n }\n function Xn() {\n return Yn() | 0;\n }\n function Yn() {\n return 4064;\n }\n function Zn() {\n return 4056;\n }\n function _n() {\n return 4040;\n }\n function $n(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0;\n b = V;\n V = (V + 16) | 0;\n d = (b + 8) | 0;\n e = (b + 4) | 0;\n f = b;\n c[f >> 2] = a;\n c[e >> 2] = c[f >> 2];\n c[d >> 2] = c[((c[e >> 2] | 0) + 4) >> 2];\n a = Jo(c[d >> 2] | 0) | 0;\n V = b;\n return a | 0;\n }\n function ao() {\n return 21636;\n }\n function bo(a) {\n a = a | 0;\n return (((a + -48) | 0) >>> 0 < 10) | 0;\n }\n function co() {\n return 5576;\n }\n function eo(b, c) {\n b = b | 0;\n c = c | 0;\n var d = 0, e = 0;\n d = a[b >> 0] | 0;\n e = a[c >> 0] | 0;\n if ((d << 24) >> 24 == 0 ? 1 : (d << 24) >> 24 != (e << 24) >> 24)\n b = e;\n else {\n do {\n b = (b + 1) | 0;\n c = (c + 1) | 0;\n d = a[b >> 0] | 0;\n e = a[c >> 0] | 0;\n } while (!((d << 24) >> 24 == 0 ? 1 : (d << 24) >> 24 != (e << 24) >> 24));\n b = e;\n }\n return ((d & 255) - (b & 255)) | 0;\n }\n function fo(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = b;\n a: do\n if (!(f & 3))\n e = 5;\n else {\n d = f;\n while (1) {\n if (!(a[b >> 0] | 0)) {\n b = d;\n break a;\n }\n b = (b + 1) | 0;\n d = b;\n if (!(d & 3)) {\n e = 5;\n break;\n }\n }\n }\n while (0);\n if ((e | 0) == 5) {\n while (1) {\n d = c[b >> 2] | 0;\n if (!(((d & -2139062144) ^ -2139062144) & (d + -16843009)))\n b = (b + 4) | 0;\n else\n break;\n }\n if (((d & 255) << 24) >> 24)\n do\n b = (b + 1) | 0;\n while ((a[b >> 0] | 0) != 0);\n }\n return (b - f) | 0;\n }\n function go(a) {\n a = a | 0;\n return;\n }\n function ho(a) {\n a = a | 0;\n return 1;\n }\n function io(b) {\n b = b | 0;\n var d = 0, e = 0;\n d = (b + 74) | 0;\n e = a[d >> 0] | 0;\n a[d >> 0] = (e + 255) | e;\n d = c[b >> 2] | 0;\n if (!(d & 8)) {\n c[(b + 8) >> 2] = 0;\n c[(b + 4) >> 2] = 0;\n e = c[(b + 44) >> 2] | 0;\n c[(b + 28) >> 2] = e;\n c[(b + 20) >> 2] = e;\n c[(b + 16) >> 2] = e + (c[(b + 48) >> 2] | 0);\n b = 0;\n }\n else {\n c[b >> 2] = d | 32;\n b = -1;\n }\n return b | 0;\n }\n function jo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0;\n f = (e + 16) | 0;\n g = c[f >> 2] | 0;\n if (!g)\n if (!(io(e) | 0)) {\n g = c[f >> 2] | 0;\n h = 5;\n }\n else\n f = 0;\n else\n h = 5;\n a: do\n if ((h | 0) == 5) {\n j = (e + 20) | 0;\n i = c[j >> 2] | 0;\n f = i;\n if (((g - i) | 0) >>> 0 < d >>> 0) {\n f = aa[c[(e + 36) >> 2] & 7](e, b, d) | 0;\n break;\n }\n b: do\n if (((a[(e + 75) >> 0] | 0) < 0) | ((d | 0) == 0)) {\n h = 0;\n g = b;\n }\n else {\n i = d;\n while (1) {\n g = (i + -1) | 0;\n if ((a[(b + g) >> 0] | 0) == 10)\n break;\n if (!g) {\n h = 0;\n g = b;\n break b;\n }\n else\n i = g;\n }\n f = aa[c[(e + 36) >> 2] & 7](e, b, i) | 0;\n if (f >>> 0 < i >>> 0)\n break a;\n h = i;\n g = (b + i) | 0;\n d = (d - i) | 0;\n f = c[j >> 2] | 0;\n }\n while (0);\n ur(f | 0, g | 0, d | 0) | 0;\n c[j >> 2] = (c[j >> 2] | 0) + d;\n f = (h + d) | 0;\n }\n while (0);\n return f | 0;\n }\n function ko(a, b) {\n a = a | 0;\n b = b | 0;\n if (!b)\n b = 0;\n else\n b = lo(c[b >> 2] | 0, c[(b + 4) >> 2] | 0, a) | 0;\n return ((b | 0) == 0 ? a : b) | 0;\n }\n function lo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0;\n o = ((c[b >> 2] | 0) + 1794895138) | 0;\n h = mo(c[(b + 8) >> 2] | 0, o) | 0;\n f = mo(c[(b + 12) >> 2] | 0, o) | 0;\n g = mo(c[(b + 16) >> 2] | 0, o) | 0;\n a: do\n if ((h >>> 0 < (d >>> 2) >>> 0\n ? ((n = (d - (h << 2)) | 0), (f >>> 0 < n >>> 0) & (g >>> 0 < n >>> 0))\n : 0)\n ? (((g | f) & 3) | 0) == 0\n : 0) {\n n = f >>> 2;\n m = g >>> 2;\n l = 0;\n while (1) {\n j = h >>> 1;\n k = (l + j) | 0;\n i = k << 1;\n g = (i + n) | 0;\n f = mo(c[(b + (g << 2)) >> 2] | 0, o) | 0;\n g = mo(c[(b + ((g + 1) << 2)) >> 2] | 0, o) | 0;\n if (!((g >>> 0 < d >>> 0) & (f >>> 0 < ((d - g) | 0) >>> 0))) {\n f = 0;\n break a;\n }\n if (a[(b + (g + f)) >> 0] | 0) {\n f = 0;\n break a;\n }\n f = eo(e, (b + g) | 0) | 0;\n if (!f)\n break;\n f = (f | 0) < 0;\n if ((h | 0) == 1) {\n f = 0;\n break a;\n }\n l = f ? l : k;\n h = f ? j : (h - j) | 0;\n }\n f = (i + m) | 0;\n g = mo(c[(b + (f << 2)) >> 2] | 0, o) | 0;\n f = mo(c[(b + ((f + 1) << 2)) >> 2] | 0, o) | 0;\n if ((f >>> 0 < d >>> 0) & (g >>> 0 < ((d - f) | 0) >>> 0))\n f = (a[(b + (f + g)) >> 0] | 0) == 0 ? (b + f) | 0 : 0;\n else\n f = 0;\n }\n else\n f = 0;\n while (0);\n return f | 0;\n }\n function mo(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0;\n c = tr(a | 0) | 0;\n return ((b | 0) == 0 ? a : c) | 0;\n }\n function no(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = d & 255;\n f = (e | 0) != 0;\n a: do\n if (f & (((b & 3) | 0) != 0)) {\n g = d & 255;\n while (1) {\n if ((a[b >> 0] | 0) == (g << 24) >> 24) {\n g = 6;\n break a;\n }\n b = (b + 1) | 0;\n e = (e + -1) | 0;\n f = (e | 0) != 0;\n if (!(f & (((b & 3) | 0) != 0))) {\n g = 5;\n break;\n }\n }\n }\n else\n g = 5;\n while (0);\n if ((g | 0) == 5)\n if (f)\n g = 6;\n else\n b = 0;\n b: do\n if ((g | 0) == 6) {\n if ((a[b >> 0] | 0) != ((d & 255) << 24) >> 24) {\n f = q(h, 16843009) | 0;\n c: do\n if (e >>> 0 > 3)\n do {\n h = c[b >> 2] ^ f;\n if ((((h & -2139062144) ^ -2139062144) & (h + -16843009)) | 0)\n break c;\n b = (b + 4) | 0;\n e = (e + -4) | 0;\n } while (e >>> 0 > 3);\n while (0);\n }\n if (!e)\n b = 0;\n else {\n f = d & 255;\n while (1) {\n if ((a[b >> 0] | 0) == (f << 24) >> 24)\n break b;\n e = (e + -1) | 0;\n if (!e) {\n b = 0;\n break;\n }\n else\n b = (b + 1) | 0;\n }\n }\n }\n while (0);\n return b | 0;\n }\n function oo(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return ro(a, b, c, 1, 8) | 0;\n }\n function po(b, e, f, g, h, i) {\n b = b | 0;\n e = +e;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n i = i | 0;\n var j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, r = 0.0, s = 0, t = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0;\n H = V;\n V = (V + 560) | 0;\n l = (H + 32) | 0;\n w = (H + 536) | 0;\n G = H;\n F = G;\n m = (H + 540) | 0;\n c[w >> 2] = 0;\n E = (m + 12) | 0;\n Do(e) | 0;\n j = u() | 0;\n if ((j | 0) < 0) {\n e = -e;\n Do(e) | 0;\n D = 1;\n C = 20247;\n j = u() | 0;\n }\n else {\n D = (((h & 2049) | 0) != 0) & 1;\n C = ((h & 2048) | 0) == 0 ? (((h & 1) | 0) == 0 ? 20248 : 20253) : 20250;\n }\n do\n if ((0 == 0) & (((j & 2146435072) | 0) == 2146435072)) {\n G = ((i & 32) | 0) != 0;\n j = (D + 3) | 0;\n zo(b, 32, f, j, h & -65537);\n to(b, C, D);\n to(b, (e != e) | (0.0 != 0.0) ? (G ? 20274 : 20278) : G ? 20266 : 20270, 3);\n zo(b, 32, f, j, h ^ 8192);\n }\n else {\n r = +Eo(e, w) * 2.0;\n j = r != 0.0;\n if (j)\n c[w >> 2] = (c[w >> 2] | 0) + -1;\n v = i | 32;\n if ((v | 0) == 97) {\n o = i & 32;\n s = (o | 0) == 0 ? C : (C + 9) | 0;\n p = D | 2;\n j = (12 - g) | 0;\n do\n if (!((g >>> 0 > 11) | ((j | 0) == 0))) {\n e = 8.0;\n do {\n j = (j + -1) | 0;\n e = e * 16.0;\n } while ((j | 0) != 0);\n if ((a[s >> 0] | 0) == 45) {\n e = -(e + (-r - e));\n break;\n }\n else {\n e = r + e - e;\n break;\n }\n }\n else\n e = r;\n while (0);\n k = c[w >> 2] | 0;\n j = (k | 0) < 0 ? (0 - k) | 0 : k;\n j = yo(j, (((j | 0) < 0) << 31) >> 31, E) | 0;\n if ((j | 0) == (E | 0)) {\n j = (m + 11) | 0;\n a[j >> 0] = 48;\n }\n a[(j + -1) >> 0] = ((k >> 31) & 2) + 43;\n n = (j + -2) | 0;\n a[n >> 0] = i + 15;\n k = (g | 0) < 1;\n l = ((h & 8) | 0) == 0;\n m = G;\n do {\n D = ~~e;\n j = (m + 1) | 0;\n a[m >> 0] = o | d[(640 + D) >> 0];\n e = (e - +(D | 0)) * 16.0;\n if (((j - F) | 0) == 1 ? !(l & (k & (e == 0.0))) : 0) {\n a[j >> 0] = 46;\n m = (m + 2) | 0;\n }\n else\n m = j;\n } while (e != 0.0);\n if ((g | 0) != 0 ? ((-2 - F + m) | 0) < (g | 0) : 0) {\n k = E;\n l = n;\n j = (g + 2 + k - l) | 0;\n }\n else {\n k = E;\n l = n;\n j = (k - F - l + m) | 0;\n }\n E = (j + p) | 0;\n zo(b, 32, f, E, h);\n to(b, s, p);\n zo(b, 48, f, E, h ^ 65536);\n F = (m - F) | 0;\n to(b, G, F);\n G = (k - l) | 0;\n zo(b, 48, (j - (F + G)) | 0, 0, 0);\n to(b, n, G);\n zo(b, 32, f, E, h ^ 8192);\n j = E;\n break;\n }\n k = (g | 0) < 0 ? 6 : g;\n if (j) {\n j = ((c[w >> 2] | 0) + -28) | 0;\n c[w >> 2] = j;\n e = r * 268435456.0;\n }\n else {\n e = r;\n j = c[w >> 2] | 0;\n }\n B = (j | 0) < 0 ? l : (l + 288) | 0;\n l = B;\n do {\n z = ~~e >>> 0;\n c[l >> 2] = z;\n l = (l + 4) | 0;\n e = (e - +(z >>> 0)) * 1.0e9;\n } while (e != 0.0);\n z = B;\n if ((j | 0) > 0) {\n o = B;\n while (1) {\n n = (j | 0) < 29 ? j : 29;\n j = (l + -4) | 0;\n if (j >>> 0 >= o >>> 0) {\n m = 0;\n do {\n t = rr(c[j >> 2] | 0, 0, n | 0) | 0;\n t = lr(t | 0, u() | 0, m | 0, 0) | 0;\n x = u() | 0;\n m = pr(t | 0, x | 0, 1e9, 0) | 0;\n y = kr(m | 0, u() | 0, 1e9, 0) | 0;\n y = mr(t | 0, x | 0, y | 0, u() | 0) | 0;\n u() | 0;\n c[j >> 2] = y;\n j = (j + -4) | 0;\n } while (j >>> 0 >= o >>> 0);\n if (m) {\n y = (o + -4) | 0;\n c[y >> 2] = m;\n m = y;\n }\n else\n m = o;\n }\n else\n m = o;\n a: do\n if (l >>> 0 > m >>> 0) {\n j = l;\n while (1) {\n l = (j + -4) | 0;\n if (c[l >> 2] | 0) {\n l = j;\n break a;\n }\n if (l >>> 0 > m >>> 0)\n j = l;\n else\n break;\n }\n }\n while (0);\n j = ((c[w >> 2] | 0) - n) | 0;\n c[w >> 2] = j;\n if ((j | 0) > 0)\n o = m;\n else\n break;\n }\n }\n else\n m = B;\n if ((j | 0) < 0) {\n g = (((((k + 25) | 0) / 9) | 0) + 1) | 0;\n t = (v | 0) == 102;\n do {\n s = (0 - j) | 0;\n s = (s | 0) < 9 ? s : 9;\n if (m >>> 0 < l >>> 0) {\n n = ((1 << s) + -1) | 0;\n o = 1e9 >>> s;\n p = 0;\n j = m;\n do {\n y = c[j >> 2] | 0;\n c[j >> 2] = (y >>> s) + p;\n p = q(y & n, o) | 0;\n j = (j + 4) | 0;\n } while (j >>> 0 < l >>> 0);\n m = (c[m >> 2] | 0) == 0 ? (m + 4) | 0 : m;\n if (p) {\n c[l >> 2] = p;\n l = (l + 4) | 0;\n }\n }\n else\n m = (c[m >> 2] | 0) == 0 ? (m + 4) | 0 : m;\n j = t ? B : m;\n l = (((l - j) >> 2) | 0) > (g | 0) ? (j + (g << 2)) | 0 : l;\n j = ((c[w >> 2] | 0) + s) | 0;\n c[w >> 2] = j;\n } while ((j | 0) < 0);\n t = m;\n }\n else\n t = m;\n if (t >>> 0 < l >>> 0) {\n j = (((z - t) >> 2) * 9) | 0;\n n = c[t >> 2] | 0;\n if (n >>> 0 >= 10) {\n m = 10;\n do {\n m = (m * 10) | 0;\n j = (j + 1) | 0;\n } while (n >>> 0 >= m >>> 0);\n }\n }\n else\n j = 0;\n x = (v | 0) == 103;\n y = (k | 0) != 0;\n m = (k - ((v | 0) == 102 ? 0 : j) + (((y & x) << 31) >> 31)) | 0;\n if ((m | 0) < ((((((l - z) >> 2) * 9) | 0) + -9) | 0)) {\n w = (m + 9216) | 0;\n m = ((w | 0) / 9) | 0;\n g = (B + 4 + ((m + -1024) << 2)) | 0;\n m = (w - ((m * 9) | 0)) | 0;\n if ((m | 0) < 8) {\n n = 10;\n while (1) {\n n = (n * 10) | 0;\n if ((m | 0) < 7)\n m = (m + 1) | 0;\n else\n break;\n }\n }\n else\n n = 10;\n p = c[g >> 2] | 0;\n m = ((p >>> 0) / (n >>> 0)) | 0;\n s = (p - (q(m, n) | 0)) | 0;\n o = ((g + 4) | 0) == (l | 0);\n if (!(o & ((s | 0) == 0))) {\n r = ((m & 1) | 0) == 0 ? 9007199254740992.0 : 9007199254740994.0;\n w = n >>> 1;\n e = s >>> 0 < w >>> 0 ? 0.5 : o & ((s | 0) == (w | 0)) ? 1.0 : 1.5;\n if (D) {\n w = (a[C >> 0] | 0) == 45;\n e = w ? -e : e;\n r = w ? -r : r;\n }\n m = (p - s) | 0;\n c[g >> 2] = m;\n if (r + e != r) {\n w = (m + n) | 0;\n c[g >> 2] = w;\n if (w >>> 0 > 999999999) {\n n = g;\n j = t;\n while (1) {\n m = (n + -4) | 0;\n c[n >> 2] = 0;\n if (m >>> 0 < j >>> 0) {\n j = (j + -4) | 0;\n c[j >> 2] = 0;\n }\n w = ((c[m >> 2] | 0) + 1) | 0;\n c[m >> 2] = w;\n if (w >>> 0 > 999999999)\n n = m;\n else {\n n = j;\n break;\n }\n }\n }\n else {\n m = g;\n n = t;\n }\n j = (((z - n) >> 2) * 9) | 0;\n p = c[n >> 2] | 0;\n if (p >>> 0 >= 10) {\n o = 10;\n do {\n o = (o * 10) | 0;\n j = (j + 1) | 0;\n } while (p >>> 0 >= o >>> 0);\n }\n }\n else {\n m = g;\n n = t;\n }\n }\n else {\n m = g;\n n = t;\n }\n w = (m + 4) | 0;\n l = l >>> 0 > w >>> 0 ? w : l;\n }\n else\n n = t;\n g = (0 - j) | 0;\n b: do\n if (l >>> 0 > n >>> 0)\n while (1) {\n m = (l + -4) | 0;\n if (c[m >> 2] | 0) {\n w = l;\n v = 1;\n break b;\n }\n if (m >>> 0 > n >>> 0)\n l = m;\n else {\n w = m;\n v = 0;\n break;\n }\n }\n else {\n w = l;\n v = 0;\n }\n while (0);\n do\n if (x) {\n k = (k + ((y ^ 1) & 1)) | 0;\n if (((k | 0) > (j | 0)) & ((j | 0) > -5)) {\n o = (i + -1) | 0;\n k = (k + -1 - j) | 0;\n }\n else {\n o = (i + -2) | 0;\n k = (k + -1) | 0;\n }\n if (!(h & 8)) {\n if (v ? ((A = c[(w + -4) >> 2] | 0), (A | 0) != 0) : 0)\n if (!((A >>> 0) % 10 | 0)) {\n m = 0;\n l = 10;\n do {\n l = (l * 10) | 0;\n m = (m + 1) | 0;\n } while (!((A >>> 0) % (l >>> 0) | 0 | 0));\n }\n else\n m = 0;\n else\n m = 9;\n l = (((((w - z) >> 2) * 9) | 0) + -9) | 0;\n if ((o | 32 | 0) == 102) {\n i = (l - m) | 0;\n i = (i | 0) > 0 ? i : 0;\n k = (k | 0) < (i | 0) ? k : i;\n break;\n }\n else {\n i = (l + j - m) | 0;\n i = (i | 0) > 0 ? i : 0;\n k = (k | 0) < (i | 0) ? k : i;\n break;\n }\n }\n }\n else\n o = i;\n while (0);\n t = (k | 0) != 0;\n p = t ? 1 : (h >>> 3) & 1;\n s = (o | 32 | 0) == 102;\n if (s) {\n x = 0;\n j = (j | 0) > 0 ? j : 0;\n }\n else {\n l = (j | 0) < 0 ? g : j;\n l = yo(l, (((l | 0) < 0) << 31) >> 31, E) | 0;\n m = E;\n if (((m - l) | 0) < 2)\n do {\n l = (l + -1) | 0;\n a[l >> 0] = 48;\n } while (((m - l) | 0) < 2);\n a[(l + -1) >> 0] = ((j >> 31) & 2) + 43;\n j = (l + -2) | 0;\n a[j >> 0] = o;\n x = j;\n j = (m - j) | 0;\n }\n j = (D + 1 + k + p + j) | 0;\n zo(b, 32, f, j, h);\n to(b, C, D);\n zo(b, 48, f, j, h ^ 65536);\n if (s) {\n p = n >>> 0 > B >>> 0 ? B : n;\n s = (G + 9) | 0;\n n = s;\n o = (G + 8) | 0;\n m = p;\n do {\n l = yo(c[m >> 2] | 0, 0, s) | 0;\n if ((m | 0) == (p | 0)) {\n if ((l | 0) == (s | 0)) {\n a[o >> 0] = 48;\n l = o;\n }\n }\n else if (l >>> 0 > G >>> 0) {\n wr(G | 0, 48, (l - F) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n to(b, l, (n - l) | 0);\n m = (m + 4) | 0;\n } while (m >>> 0 <= B >>> 0);\n if (!((((h & 8) | 0) == 0) & (t ^ 1)))\n to(b, 20282, 1);\n if ((m >>> 0 < w >>> 0) & ((k | 0) > 0))\n while (1) {\n l = yo(c[m >> 2] | 0, 0, s) | 0;\n if (l >>> 0 > G >>> 0) {\n wr(G | 0, 48, (l - F) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n to(b, l, (k | 0) < 9 ? k : 9);\n m = (m + 4) | 0;\n l = (k + -9) | 0;\n if (!((m >>> 0 < w >>> 0) & ((k | 0) > 9))) {\n k = l;\n break;\n }\n else\n k = l;\n }\n zo(b, 48, (k + 9) | 0, 9, 0);\n }\n else {\n w = v ? w : (n + 4) | 0;\n if ((n >>> 0 < w >>> 0) & ((k | 0) > -1)) {\n g = (G + 9) | 0;\n t = ((h & 8) | 0) == 0;\n v = g;\n p = (0 - F) | 0;\n s = (G + 8) | 0;\n o = n;\n do {\n l = yo(c[o >> 2] | 0, 0, g) | 0;\n if ((l | 0) == (g | 0)) {\n a[s >> 0] = 48;\n l = s;\n }\n do\n if ((o | 0) == (n | 0)) {\n m = (l + 1) | 0;\n to(b, l, 1);\n if (t & ((k | 0) < 1)) {\n l = m;\n break;\n }\n to(b, 20282, 1);\n l = m;\n }\n else {\n if (l >>> 0 <= G >>> 0)\n break;\n wr(G | 0, 48, (l + p) | 0) | 0;\n do\n l = (l + -1) | 0;\n while (l >>> 0 > G >>> 0);\n }\n while (0);\n F = (v - l) | 0;\n to(b, l, (k | 0) > (F | 0) ? F : k);\n k = (k - F) | 0;\n o = (o + 4) | 0;\n } while ((o >>> 0 < w >>> 0) & ((k | 0) > -1));\n }\n zo(b, 48, (k + 18) | 0, 18, 0);\n to(b, x, (E - x) | 0);\n }\n zo(b, 32, f, j, h ^ 8192);\n }\n while (0);\n V = H;\n return ((j | 0) < (f | 0) ? f : j) | 0;\n }\n function qo(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0.0, e = 0;\n e = ((c[b >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n d = +g[e >> 3];\n c[b >> 2] = e + 8;\n g[a >> 3] = d;\n return;\n }\n function ro(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0;\n t = V;\n V = (V + 224) | 0;\n p = (t + 208) | 0;\n q = (t + 160) | 0;\n r = (t + 80) | 0;\n s = t;\n h = q;\n i = (h + 40) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n c[p >> 2] = c[e >> 2];\n if ((so(0, d, p, r, q, f, g) | 0) < 0)\n e = -1;\n else {\n if ((c[(b + 76) >> 2] | 0) > -1)\n o = ho(b) | 0;\n else\n o = 0;\n e = c[b >> 2] | 0;\n n = e & 32;\n if ((a[(b + 74) >> 0] | 0) < 1)\n c[b >> 2] = e & -33;\n h = (b + 48) | 0;\n if (!(c[h >> 2] | 0)) {\n i = (b + 44) | 0;\n j = c[i >> 2] | 0;\n c[i >> 2] = s;\n k = (b + 28) | 0;\n c[k >> 2] = s;\n l = (b + 20) | 0;\n c[l >> 2] = s;\n c[h >> 2] = 80;\n m = (b + 16) | 0;\n c[m >> 2] = s + 80;\n e = so(b, d, p, r, q, f, g) | 0;\n if (j) {\n aa[c[(b + 36) >> 2] & 7](b, 0, 0) | 0;\n e = (c[l >> 2] | 0) == 0 ? -1 : e;\n c[i >> 2] = j;\n c[h >> 2] = 0;\n c[m >> 2] = 0;\n c[k >> 2] = 0;\n c[l >> 2] = 0;\n }\n }\n else\n e = so(b, d, p, r, q, f, g) | 0;\n h = c[b >> 2] | 0;\n c[b >> 2] = h | n;\n if (o | 0)\n go(b);\n e = ((h & 32) | 0) == 0 ? e : -1;\n }\n V = t;\n return e | 0;\n }\n function so(d, e, f, h, i, j, k) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n h = h | 0;\n i = i | 0;\n j = j | 0;\n k = k | 0;\n var l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, v = 0, w = 0, x = 0, y = 0, z = 0, A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0;\n J = V;\n V = (V + 64) | 0;\n G = (J + 56) | 0;\n I = (J + 40) | 0;\n B = J;\n D = (J + 48) | 0;\n E = (J + 60) | 0;\n c[G >> 2] = e;\n y = (d | 0) != 0;\n z = (B + 40) | 0;\n A = z;\n B = (B + 39) | 0;\n C = (D + 4) | 0;\n l = 0;\n e = 0;\n n = 0;\n a: while (1) {\n do {\n do\n if ((e | 0) > -1)\n if ((l | 0) > ((2147483647 - e) | 0)) {\n c[(ao() | 0) >> 2] = 61;\n e = -1;\n break;\n }\n else {\n e = (l + e) | 0;\n break;\n }\n while (0);\n r = c[G >> 2] | 0;\n l = a[r >> 0] | 0;\n if (!((l << 24) >> 24)) {\n x = 92;\n break a;\n }\n m = r;\n b: while (1) {\n switch ((l << 24) >> 24) {\n case 37: {\n x = 10;\n break b;\n }\n case 0: {\n l = m;\n break b;\n }\n default: {\n }\n }\n w = (m + 1) | 0;\n c[G >> 2] = w;\n l = a[w >> 0] | 0;\n m = w;\n }\n c: do\n if ((x | 0) == 10) {\n x = 0;\n l = m;\n do {\n if ((a[(m + 1) >> 0] | 0) != 37)\n break c;\n l = (l + 1) | 0;\n m = (m + 2) | 0;\n c[G >> 2] = m;\n } while ((a[m >> 0] | 0) == 37);\n }\n while (0);\n l = (l - r) | 0;\n if (y)\n to(d, r, l);\n } while ((l | 0) != 0);\n w = (bo(a[((c[G >> 2] | 0) + 1) >> 0] | 0) | 0) == 0;\n m = c[G >> 2] | 0;\n if (!w ? (a[(m + 2) >> 0] | 0) == 36 : 0) {\n t = ((a[(m + 1) >> 0] | 0) + -48) | 0;\n p = 1;\n l = 3;\n }\n else {\n t = -1;\n p = n;\n l = 1;\n }\n l = (m + l) | 0;\n c[G >> 2] = l;\n m = a[l >> 0] | 0;\n n = (((m << 24) >> 24) + -32) | 0;\n if ((n >>> 0 > 31) | ((((1 << n) & 75913) | 0) == 0))\n o = 0;\n else {\n o = 0;\n do {\n o = (1 << n) | o;\n l = (l + 1) | 0;\n c[G >> 2] = l;\n m = a[l >> 0] | 0;\n n = (((m << 24) >> 24) + -32) | 0;\n } while (!((n >>> 0 > 31) | ((((1 << n) & 75913) | 0) == 0)));\n }\n if ((m << 24) >> 24 == 42) {\n if ((bo(a[(l + 1) >> 0] | 0) | 0) != 0\n ? ((H = c[G >> 2] | 0), (a[(H + 2) >> 0] | 0) == 36)\n : 0) {\n l = (H + 1) | 0;\n c[(i + (((a[l >> 0] | 0) + -48) << 2)) >> 2] = 10;\n l = c[(h + (((a[l >> 0] | 0) + -48) << 3)) >> 2] | 0;\n n = 1;\n m = (H + 3) | 0;\n }\n else {\n if (p | 0) {\n e = -1;\n break;\n }\n if (y) {\n w = ((c[f >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n l = c[w >> 2] | 0;\n c[f >> 2] = w + 4;\n }\n else\n l = 0;\n n = 0;\n m = ((c[G >> 2] | 0) + 1) | 0;\n }\n c[G >> 2] = m;\n w = (l | 0) < 0;\n v = w ? (0 - l) | 0 : l;\n o = w ? o | 8192 : o;\n w = n;\n }\n else {\n l = uo(G) | 0;\n if ((l | 0) < 0) {\n e = -1;\n break;\n }\n v = l;\n w = p;\n m = c[G >> 2] | 0;\n }\n do\n if ((a[m >> 0] | 0) == 46) {\n l = (m + 1) | 0;\n if ((a[l >> 0] | 0) != 42) {\n c[G >> 2] = l;\n l = uo(G) | 0;\n m = c[G >> 2] | 0;\n break;\n }\n if (bo(a[(m + 2) >> 0] | 0) | 0 ? ((F = c[G >> 2] | 0), (a[(F + 3) >> 0] | 0) == 36) : 0) {\n l = (F + 2) | 0;\n c[(i + (((a[l >> 0] | 0) + -48) << 2)) >> 2] = 10;\n l = c[(h + (((a[l >> 0] | 0) + -48) << 3)) >> 2] | 0;\n m = (F + 4) | 0;\n c[G >> 2] = m;\n break;\n }\n if (w | 0) {\n e = -1;\n break a;\n }\n if (y) {\n s = ((c[f >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n l = c[s >> 2] | 0;\n c[f >> 2] = s + 4;\n }\n else\n l = 0;\n m = ((c[G >> 2] | 0) + 2) | 0;\n c[G >> 2] = m;\n }\n else\n l = -1;\n while (0);\n s = 0;\n while (1) {\n if ((((a[m >> 0] | 0) + -65) | 0) >>> 0 > 57) {\n e = -1;\n break a;\n }\n n = m;\n m = (m + 1) | 0;\n c[G >> 2] = m;\n n = a[((a[n >> 0] | 0) + -65 + (176 + ((s * 58) | 0))) >> 0] | 0;\n p = n & 255;\n if (((p + -1) | 0) >>> 0 >= 8)\n break;\n else\n s = p;\n }\n if (!((n << 24) >> 24)) {\n e = -1;\n break;\n }\n q = (t | 0) > -1;\n do\n if ((n << 24) >> 24 == 19)\n if (q) {\n e = -1;\n break a;\n }\n else\n x = 54;\n else {\n if (q) {\n c[(i + (t << 2)) >> 2] = p;\n q = (h + (t << 3)) | 0;\n t = c[(q + 4) >> 2] | 0;\n x = I;\n c[x >> 2] = c[q >> 2];\n c[(x + 4) >> 2] = t;\n x = 54;\n break;\n }\n if (!y) {\n e = 0;\n break a;\n }\n vo(I, p, f, k);\n m = c[G >> 2] | 0;\n x = 55;\n }\n while (0);\n if ((x | 0) == 54) {\n x = 0;\n if (y)\n x = 55;\n else\n l = 0;\n }\n d: do\n if ((x | 0) == 55) {\n x = 0;\n m = a[(m + -1) >> 0] | 0;\n m = ((s | 0) != 0) & (((m & 15) | 0) == 3) ? m & -33 : m;\n n = o & -65537;\n t = ((o & 8192) | 0) == 0 ? o : n;\n e: do\n switch (m | 0) {\n case 110:\n switch (((s & 255) << 24) >> 24) {\n case 0: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 1: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 2: {\n l = c[I >> 2] | 0;\n c[l >> 2] = e;\n c[(l + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n l = 0;\n break d;\n }\n case 3: {\n b[c[I >> 2] >> 1] = e;\n l = 0;\n break d;\n }\n case 4: {\n a[c[I >> 2] >> 0] = e;\n l = 0;\n break d;\n }\n case 6: {\n c[c[I >> 2] >> 2] = e;\n l = 0;\n break d;\n }\n case 7: {\n l = c[I >> 2] | 0;\n c[l >> 2] = e;\n c[(l + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n l = 0;\n break d;\n }\n default: {\n l = 0;\n break d;\n }\n }\n case 112: {\n m = 120;\n l = l >>> 0 > 8 ? l : 8;\n n = t | 8;\n x = 67;\n break;\n }\n case 88:\n case 120: {\n n = t;\n x = 67;\n break;\n }\n case 111: {\n q = I;\n q = xo(c[q >> 2] | 0, c[(q + 4) >> 2] | 0, z) | 0;\n n = (A - q) | 0;\n o = 0;\n p = 20230;\n l = (((t & 8) | 0) == 0) | ((l | 0) > (n | 0)) ? l : (n + 1) | 0;\n n = t;\n x = 73;\n break;\n }\n case 105:\n case 100: {\n n = I;\n m = c[n >> 2] | 0;\n n = c[(n + 4) >> 2] | 0;\n if ((n | 0) < 0) {\n m = mr(0, 0, m | 0, n | 0) | 0;\n n = u() | 0;\n o = I;\n c[o >> 2] = m;\n c[(o + 4) >> 2] = n;\n o = 1;\n p = 20230;\n x = 72;\n break e;\n }\n else {\n o = (((t & 2049) | 0) != 0) & 1;\n p = ((t & 2048) | 0) == 0 ? (((t & 1) | 0) == 0 ? 20230 : 20232) : 20231;\n x = 72;\n break e;\n }\n }\n case 117: {\n n = I;\n o = 0;\n p = 20230;\n m = c[n >> 2] | 0;\n n = c[(n + 4) >> 2] | 0;\n x = 72;\n break;\n }\n case 99: {\n a[B >> 0] = c[I >> 2];\n r = B;\n o = 0;\n p = 20230;\n q = 1;\n m = n;\n l = A;\n break;\n }\n case 115: {\n s = c[I >> 2] | 0;\n s = (s | 0) == 0 ? 20240 : s;\n t = no(s, 0, l) | 0;\n K = (t | 0) == 0;\n r = s;\n o = 0;\n p = 20230;\n q = K ? l : (t - s) | 0;\n m = n;\n l = K ? (s + l) | 0 : t;\n break;\n }\n case 67: {\n c[D >> 2] = c[I >> 2];\n c[C >> 2] = 0;\n c[I >> 2] = D;\n p = -1;\n x = 79;\n break;\n }\n case 83: {\n if (!l) {\n zo(d, 32, v, 0, t);\n l = 0;\n x = 89;\n }\n else {\n p = l;\n x = 79;\n }\n break;\n }\n case 65:\n case 71:\n case 70:\n case 69:\n case 97:\n case 103:\n case 102:\n case 101: {\n l = _[j & 1](d, +g[I >> 3], v, l, t, m) | 0;\n break d;\n }\n default: {\n o = 0;\n p = 20230;\n q = l;\n m = t;\n l = A;\n }\n }\n while (0);\n f: do\n if ((x | 0) == 67) {\n q = I;\n q = wo(c[q >> 2] | 0, c[(q + 4) >> 2] | 0, z, m & 32) | 0;\n p = I;\n p = (((n & 8) | 0) == 0) | (((c[p >> 2] | 0) == 0) & ((c[(p + 4) >> 2] | 0) == 0));\n o = p ? 0 : 2;\n p = p ? 20230 : (20230 + (m >>> 4)) | 0;\n x = 73;\n }\n else if ((x | 0) == 72) {\n q = yo(m, n, z) | 0;\n n = t;\n x = 73;\n }\n else if ((x | 0) == 79) {\n x = 0;\n o = c[I >> 2] | 0;\n l = 0;\n while (1) {\n m = c[o >> 2] | 0;\n if (!m)\n break;\n m = Ao(E, m) | 0;\n n = (m | 0) < 0;\n if (n | (m >>> 0 > ((p - l) | 0) >>> 0)) {\n x = 83;\n break;\n }\n l = (m + l) | 0;\n if (p >>> 0 > l >>> 0)\n o = (o + 4) | 0;\n else\n break;\n }\n if ((x | 0) == 83) {\n x = 0;\n if (n) {\n e = -1;\n break a;\n }\n }\n zo(d, 32, v, l, t);\n if (!l) {\n l = 0;\n x = 89;\n }\n else {\n n = c[I >> 2] | 0;\n o = 0;\n while (1) {\n m = c[n >> 2] | 0;\n if (!m) {\n x = 89;\n break f;\n }\n m = Ao(E, m) | 0;\n o = (m + o) | 0;\n if ((o | 0) > (l | 0)) {\n x = 89;\n break f;\n }\n to(d, E, m);\n if (o >>> 0 >= l >>> 0) {\n x = 89;\n break;\n }\n else\n n = (n + 4) | 0;\n }\n }\n }\n while (0);\n if ((x | 0) == 73) {\n x = 0;\n m = I;\n m = ((c[m >> 2] | 0) != 0) | ((c[(m + 4) >> 2] | 0) != 0);\n K = ((l | 0) != 0) | m;\n m = (A - q + ((m ^ 1) & 1)) | 0;\n r = K ? q : z;\n q = K ? ((l | 0) > (m | 0) ? l : m) : 0;\n m = (l | 0) > -1 ? n & -65537 : n;\n l = A;\n }\n else if ((x | 0) == 89) {\n x = 0;\n zo(d, 32, v, l, t ^ 8192);\n l = (v | 0) > (l | 0) ? v : l;\n break;\n }\n t = (l - r) | 0;\n s = (q | 0) < (t | 0) ? t : q;\n K = (s + o) | 0;\n l = (v | 0) < (K | 0) ? K : v;\n zo(d, 32, l, K, m);\n to(d, p, o);\n zo(d, 48, l, K, m ^ 65536);\n zo(d, 48, s, t, 0);\n to(d, r, t);\n zo(d, 32, l, K, m ^ 8192);\n }\n while (0);\n n = w;\n }\n g: do\n if ((x | 0) == 92)\n if (!d)\n if (!n)\n e = 0;\n else {\n e = 1;\n while (1) {\n l = c[(i + (e << 2)) >> 2] | 0;\n if (!l)\n break;\n vo((h + (e << 3)) | 0, l, f, k);\n e = (e + 1) | 0;\n if (e >>> 0 >= 10) {\n e = 1;\n break g;\n }\n }\n while (1) {\n if (c[(i + (e << 2)) >> 2] | 0) {\n e = -1;\n break g;\n }\n e = (e + 1) | 0;\n if (e >>> 0 >= 10) {\n e = 1;\n break;\n }\n }\n }\n while (0);\n V = J;\n return e | 0;\n }\n function to(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if (!(c[a >> 2] & 32))\n jo(b, d, a) | 0;\n return;\n }\n function uo(b) {\n b = b | 0;\n var d = 0, e = 0;\n if (!(bo(a[c[b >> 2] >> 0] | 0) | 0))\n d = 0;\n else {\n d = 0;\n do {\n e = c[b >> 2] | 0;\n d = (((d * 10) | 0) + -48 + (a[e >> 0] | 0)) | 0;\n e = (e + 1) | 0;\n c[b >> 2] = e;\n } while ((bo(a[e >> 0] | 0) | 0) != 0);\n }\n return d | 0;\n }\n function vo(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, h = 0.0;\n a: do\n if (b >>> 0 <= 20)\n do\n switch (b | 0) {\n case 9: {\n b = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[b >> 2] | 0;\n c[d >> 2] = b + 4;\n c[a >> 2] = e;\n break a;\n }\n case 10: {\n e = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n b = c[e >> 2] | 0;\n c[d >> 2] = e + 4;\n e = a;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = (((b | 0) < 0) << 31) >> 31;\n break a;\n }\n case 11: {\n e = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n b = c[e >> 2] | 0;\n c[d >> 2] = e + 4;\n e = a;\n c[e >> 2] = b;\n c[(e + 4) >> 2] = 0;\n break a;\n }\n case 12: {\n e = ((c[d >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n b = e;\n f = c[b >> 2] | 0;\n b = c[(b + 4) >> 2] | 0;\n c[d >> 2] = e + 8;\n e = a;\n c[e >> 2] = f;\n c[(e + 4) >> 2] = b;\n break a;\n }\n case 13: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n e = ((e & 65535) << 16) >> 16;\n f = a;\n c[f >> 2] = e;\n c[(f + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n break a;\n }\n case 14: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n f = a;\n c[f >> 2] = e & 65535;\n c[(f + 4) >> 2] = 0;\n break a;\n }\n case 15: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n e = ((e & 255) << 24) >> 24;\n f = a;\n c[f >> 2] = e;\n c[(f + 4) >> 2] = (((e | 0) < 0) << 31) >> 31;\n break a;\n }\n case 16: {\n f = ((c[d >> 2] | 0) + (4 - 1)) & ~(4 - 1);\n e = c[f >> 2] | 0;\n c[d >> 2] = f + 4;\n f = a;\n c[f >> 2] = e & 255;\n c[(f + 4) >> 2] = 0;\n break a;\n }\n case 17: {\n f = ((c[d >> 2] | 0) + (8 - 1)) & ~(8 - 1);\n h = +g[f >> 3];\n c[d >> 2] = f + 8;\n g[a >> 3] = h;\n break a;\n }\n case 18: {\n da[e & 15](a, d);\n break a;\n }\n default:\n break a;\n }\n while (0);\n while (0);\n return;\n }\n function wo(b, c, e, f) {\n b = b | 0;\n c = c | 0;\n e = e | 0;\n f = f | 0;\n if (!(((b | 0) == 0) & ((c | 0) == 0)))\n do {\n e = (e + -1) | 0;\n a[e >> 0] = d[(640 + (b & 15)) >> 0] | 0 | f;\n b = qr(b | 0, c | 0, 4) | 0;\n c = u() | 0;\n } while (!(((b | 0) == 0) & ((c | 0) == 0)));\n return e | 0;\n }\n function xo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n if (!(((b | 0) == 0) & ((c | 0) == 0)))\n do {\n d = (d + -1) | 0;\n a[d >> 0] = (b & 7) | 48;\n b = qr(b | 0, c | 0, 3) | 0;\n c = u() | 0;\n } while (!(((b | 0) == 0) & ((c | 0) == 0)));\n return d | 0;\n }\n function yo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n if ((c >>> 0 > 0) | (((c | 0) == 0) & (b >>> 0 > 4294967295))) {\n do {\n e = b;\n b = pr(b | 0, c | 0, 10, 0) | 0;\n f = c;\n c = u() | 0;\n g = kr(b | 0, c | 0, 10, 0) | 0;\n g = mr(e | 0, f | 0, g | 0, u() | 0) | 0;\n u() | 0;\n d = (d + -1) | 0;\n a[d >> 0] = (g & 255) | 48;\n } while ((f >>> 0 > 9) | (((f | 0) == 9) & (e >>> 0 > 4294967295)));\n c = b;\n }\n else\n c = b;\n if (c)\n do {\n g = c;\n c = ((c >>> 0) / 10) | 0;\n d = (d + -1) | 0;\n a[d >> 0] = (g - ((c * 10) | 0)) | 48;\n } while (g >>> 0 >= 10);\n return d | 0;\n }\n function zo(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = V;\n V = (V + 256) | 0;\n f = g;\n if (((c | 0) > (d | 0)) & (((e & 73728) | 0) == 0)) {\n e = (c - d) | 0;\n wr(f | 0, ((b << 24) >> 24) | 0, (e >>> 0 < 256 ? e : 256) | 0) | 0;\n if (e >>> 0 > 255) {\n b = (c - d) | 0;\n do {\n to(a, f, 256);\n e = (e + -256) | 0;\n } while (e >>> 0 > 255);\n e = b & 255;\n }\n to(a, f, e);\n }\n V = g;\n return;\n }\n function Ao(a, b) {\n a = a | 0;\n b = b | 0;\n if (!a)\n a = 0;\n else\n a = Bo(a, b, 0) | 0;\n return a | 0;\n }\n function Bo(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n do\n if (b) {\n if (d >>> 0 < 128) {\n a[b >> 0] = d;\n b = 1;\n break;\n }\n if (!(c[c[((Co() | 0) + 176) >> 2] >> 2] | 0))\n if (((d & -128) | 0) == 57216) {\n a[b >> 0] = d;\n b = 1;\n break;\n }\n else {\n c[(ao() | 0) >> 2] = 25;\n b = -1;\n break;\n }\n if (d >>> 0 < 2048) {\n a[b >> 0] = (d >>> 6) | 192;\n a[(b + 1) >> 0] = (d & 63) | 128;\n b = 2;\n break;\n }\n if ((d >>> 0 < 55296) | (((d & -8192) | 0) == 57344)) {\n a[b >> 0] = (d >>> 12) | 224;\n a[(b + 1) >> 0] = ((d >>> 6) & 63) | 128;\n a[(b + 2) >> 0] = (d & 63) | 128;\n b = 3;\n break;\n }\n if (((d + -65536) | 0) >>> 0 < 1048576) {\n a[b >> 0] = (d >>> 18) | 240;\n a[(b + 1) >> 0] = ((d >>> 12) & 63) | 128;\n a[(b + 2) >> 0] = ((d >>> 6) & 63) | 128;\n a[(b + 3) >> 0] = (d & 63) | 128;\n b = 4;\n break;\n }\n else {\n c[(ao() | 0) >> 2] = 25;\n b = -1;\n break;\n }\n }\n else\n b = 1;\n while (0);\n return b | 0;\n }\n function Co() {\n return co() | 0;\n }\n function Do(a) {\n a = +a;\n var b = 0;\n g[h >> 3] = a;\n b = c[h >> 2] | 0;\n t(c[(h + 4) >> 2] | 0);\n return b | 0;\n }\n function Eo(a, b) {\n a = +a;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n g[h >> 3] = a;\n d = c[h >> 2] | 0;\n e = c[(h + 4) >> 2] | 0;\n f = qr(d | 0, e | 0, 52) | 0;\n u() | 0;\n switch (f & 2047) {\n case 0: {\n if (a != 0.0) {\n a = +Eo(a * 18446744073709551616.0, b);\n d = ((c[b >> 2] | 0) + -64) | 0;\n }\n else\n d = 0;\n c[b >> 2] = d;\n break;\n }\n case 2047:\n break;\n default: {\n c[b >> 2] = (f & 2047) + -1022;\n c[h >> 2] = d;\n c[(h + 4) >> 2] = (e & -2146435073) | 1071644672;\n a = +g[h >> 3];\n }\n }\n return +a;\n }\n function Fo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0;\n a: do\n if (!d)\n b = 0;\n else {\n while (1) {\n e = a[b >> 0] | 0;\n f = a[c >> 0] | 0;\n if ((e << 24) >> 24 != (f << 24) >> 24)\n break;\n d = (d + -1) | 0;\n if (!d) {\n b = 0;\n break a;\n }\n else {\n b = (b + 1) | 0;\n c = (c + 1) | 0;\n }\n }\n b = ((e & 255) - (f & 255)) | 0;\n }\n while (0);\n return b | 0;\n }\n function Go(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n f = V;\n V = (V + 16) | 0;\n g = f;\n c[g >> 2] = e;\n e = Ho(a, b, d, g) | 0;\n V = f;\n return e | 0;\n }\n function Ho(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0;\n j = V;\n V = (V + 160) | 0;\n g = (j + 144) | 0;\n i = j;\n ur(i | 0, 3672, 144) | 0;\n if (((d + -1) | 0) >>> 0 > 2147483646)\n if (!d) {\n b = g;\n d = 1;\n h = 4;\n }\n else {\n c[(ao() | 0) >> 2] = 61;\n d = -1;\n }\n else\n h = 4;\n if ((h | 0) == 4) {\n h = (-2 - b) | 0;\n h = d >>> 0 > h >>> 0 ? h : d;\n c[(i + 48) >> 2] = h;\n g = (i + 20) | 0;\n c[g >> 2] = b;\n c[(i + 44) >> 2] = b;\n d = (b + h) | 0;\n b = (i + 16) | 0;\n c[b >> 2] = d;\n c[(i + 28) >> 2] = d;\n d = oo(i, e, f) | 0;\n if (h) {\n i = c[g >> 2] | 0;\n a[(i + ((((i | 0) == (c[b >> 2] | 0)) << 31) >> 31)) >> 0] = 0;\n }\n }\n V = j;\n return d | 0;\n }\n function Io(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = (a + 20) | 0;\n f = c[e >> 2] | 0;\n a = ((c[(a + 16) >> 2] | 0) - f) | 0;\n a = a >>> 0 > d >>> 0 ? d : a;\n ur(f | 0, b | 0, a | 0) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + a;\n return d | 0;\n }\n function Jo(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = ((fo(a) | 0) + 1) | 0;\n c = dr(b) | 0;\n if (!c)\n a = 0;\n else\n a = ur(c | 0, a | 0, b | 0) | 0;\n return a | 0;\n }\n function Ko(b, e) {\n b = b | 0;\n e = e | 0;\n var f = 0, g = 0;\n f = 0;\n while (1) {\n if ((d[(656 + f) >> 0] | 0) == (b | 0)) {\n g = 4;\n break;\n }\n f = (f + 1) | 0;\n if ((f | 0) == 87) {\n b = 87;\n g = 5;\n break;\n }\n }\n if ((g | 0) == 4)\n if (!f)\n f = 752;\n else {\n b = f;\n g = 5;\n }\n if ((g | 0) == 5) {\n f = 752;\n do {\n do {\n g = f;\n f = (f + 1) | 0;\n } while ((a[g >> 0] | 0) != 0);\n b = (b + -1) | 0;\n } while ((b | 0) != 0);\n }\n return Lo(f, c[(e + 20) >> 2] | 0) | 0;\n }\n function Lo(a, b) {\n a = a | 0;\n b = b | 0;\n return ko(a, b) | 0;\n }\n function Mo(a) {\n a = a | 0;\n return Ko(a, c[((No() | 0) + 176) >> 2] | 0) | 0;\n }\n function No() {\n return co() | 0;\n }\n function Oo(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n e = Mo(b) | 0;\n b = fo(e) | 0;\n if (b >>> 0 >= d >>> 0) {\n b = (d + -1) | 0;\n if (!d)\n b = 68;\n else {\n ur(c | 0, e | 0, b | 0) | 0;\n a[(c + b) >> 0] = 0;\n b = 68;\n }\n }\n else {\n ur(c | 0, e | 0, (b + 1) | 0) | 0;\n b = 0;\n }\n return b | 0;\n }\n function Po() {\n var a = 0, b = 0, d = 0, e = 0, f = 0, g = 0, h = 0;\n e = V;\n V = (V + 48) | 0;\n g = (e + 32) | 0;\n b = (e + 24) | 0;\n h = (e + 16) | 0;\n f = e;\n e = (e + 36) | 0;\n a = Qo() | 0;\n if (a | 0 ? ((d = c[a >> 2] | 0), d | 0) : 0) {\n a = (d + 48) | 0;\n if (!(Ro(a) | 0)) {\n c[b >> 2] = 20420;\n To(20370, b);\n }\n b = So(a) | 0;\n if (((b | 0) == 1126902529) & ((u() | 0) == 1129074247))\n a = c[(d + 44) >> 2] | 0;\n else\n a = (d + 80) | 0;\n c[e >> 2] = a;\n d = c[d >> 2] | 0;\n a = c[(d + 4) >> 2] | 0;\n if (aa[c[((c[954] | 0) + 16) >> 2] & 7](3816, d, e) | 0) {\n h = c[e >> 2] | 0;\n h = Z[c[((c[h >> 2] | 0) + 8) >> 2] & 15](h) | 0;\n c[f >> 2] = 20420;\n c[(f + 4) >> 2] = a;\n c[(f + 8) >> 2] = h;\n To(20284, f);\n }\n else {\n c[h >> 2] = 20420;\n c[(h + 4) >> 2] = a;\n To(20329, h);\n }\n }\n To(20408, g);\n }\n function Qo() {\n return 21640;\n }\n function Ro(a) {\n a = a | 0;\n a = So(a) | 0;\n return ((((a & -256) | 0) == 1126902528) & ((u() | 0) == 1129074247)) | 0;\n }\n function So(a) {\n a = a | 0;\n var b = 0;\n b = a;\n a = c[b >> 2] | 0;\n t(c[(b + 4) >> 2] | 0);\n return a | 0;\n }\n function To(a, b) {\n a = a | 0;\n b = b | 0;\n U();\n }\n function Uo(a) {\n a = a | 0;\n return;\n }\n function Vo(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Wo(a) {\n a = a | 0;\n return;\n }\n function Xo(a) {\n a = a | 0;\n return;\n }\n function Yo(d, e, f) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0;\n l = V;\n V = (V + 64) | 0;\n j = l;\n if (!(ap(d, e, 0) | 0))\n if ((e | 0) != 0 ? ((k = ep(e, 3840, 3824, 0) | 0), (k | 0) != 0) : 0) {\n c[j >> 2] = k;\n c[(j + 4) >> 2] = 0;\n c[(j + 8) >> 2] = d;\n c[(j + 12) >> 2] = -1;\n d = (j + 16) | 0;\n e = (j + 24) | 0;\n g = (j + 48) | 0;\n h = d;\n i = (h + 36) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n b[(d + 36) >> 1] = 0;\n a[(d + 38) >> 0] = 0;\n c[g >> 2] = 1;\n fa[c[((c[k >> 2] | 0) + 28) >> 2] & 7](k, j, c[f >> 2] | 0, 1);\n if ((c[e >> 2] | 0) == 1) {\n c[f >> 2] = c[d >> 2];\n d = 1;\n }\n else\n d = 0;\n }\n else\n d = 0;\n else\n d = 1;\n V = l;\n return d | 0;\n }\n function Zo(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, g) | 0)\n dp(0, b, d, e, f);\n return;\n }\n function _o(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0;\n do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (ap(b, c[d >> 2] | 0, g) | 0) {\n if ((c[(d + 16) >> 2] | 0) != (e | 0)\n ? ((h = (d + 20) | 0), (c[h >> 2] | 0) != (e | 0))\n : 0) {\n c[(d + 32) >> 2] = f;\n c[h >> 2] = e;\n g = (d + 40) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) == 1 ? (c[(d + 24) >> 2] | 0) == 2 : 0)\n a[(d + 54) >> 0] = 1;\n c[(d + 44) >> 2] = 4;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function $o(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, 0) | 0)\n bp(0, b, d, e);\n return;\n }\n function ap(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if (d)\n if ((a | 0) == (b | 0))\n a = 1;\n else\n a = (eo(c[(a + 4) >> 2] | 0, c[(b + 4) >> 2] | 0) | 0) == 0;\n else\n a = (c[(a + 4) >> 2] | 0) == (c[(b + 4) >> 2] | 0);\n return a | 0;\n }\n function bp(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0;\n b = (d + 16) | 0;\n g = c[b >> 2] | 0;\n do\n if (g) {\n if ((g | 0) != (e | 0)) {\n f = (d + 36) | 0;\n c[f >> 2] = (c[f >> 2] | 0) + 1;\n c[(d + 24) >> 2] = 2;\n a[(d + 54) >> 0] = 1;\n break;\n }\n b = (d + 24) | 0;\n if ((c[b >> 2] | 0) == 2)\n c[b >> 2] = f;\n }\n else {\n c[b >> 2] = e;\n c[(d + 24) >> 2] = f;\n c[(d + 36) >> 2] = 1;\n }\n while (0);\n return;\n }\n function cp(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0;\n if ((c[(b + 4) >> 2] | 0) == (d | 0) ? ((f = (b + 28) | 0), (c[f >> 2] | 0) != 1) : 0)\n c[f >> 2] = e;\n return;\n }\n function dp(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n a[(d + 53) >> 0] = 1;\n do\n if ((c[(d + 4) >> 2] | 0) == (f | 0)) {\n a[(d + 52) >> 0] = 1;\n b = (d + 16) | 0;\n f = c[b >> 2] | 0;\n if (!f) {\n c[b >> 2] = e;\n c[(d + 24) >> 2] = g;\n c[(d + 36) >> 2] = 1;\n if (!((g | 0) == 1 ? (c[(d + 48) >> 2] | 0) == 1 : 0))\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) != (e | 0)) {\n g = (d + 36) | 0;\n c[g >> 2] = (c[g >> 2] | 0) + 1;\n a[(d + 54) >> 0] = 1;\n break;\n }\n f = (d + 24) | 0;\n b = c[f >> 2] | 0;\n if ((b | 0) == 2) {\n c[f >> 2] = g;\n b = g;\n }\n if ((b | 0) == 1 ? (c[(d + 48) >> 2] | 0) == 1 : 0)\n a[(d + 54) >> 0] = 1;\n }\n while (0);\n return;\n }\n function ep(d, e, f, g) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n p = V;\n V = (V + 64) | 0;\n n = p;\n m = c[d >> 2] | 0;\n o = (d + (c[(m + -8) >> 2] | 0)) | 0;\n m = c[(m + -4) >> 2] | 0;\n c[n >> 2] = f;\n c[(n + 4) >> 2] = d;\n c[(n + 8) >> 2] = e;\n c[(n + 12) >> 2] = g;\n d = (n + 16) | 0;\n e = (n + 20) | 0;\n g = (n + 24) | 0;\n h = (n + 28) | 0;\n i = (n + 32) | 0;\n j = (n + 40) | 0;\n k = d;\n l = (k + 36) | 0;\n do {\n c[k >> 2] = 0;\n k = (k + 4) | 0;\n } while ((k | 0) < (l | 0));\n b[(d + 36) >> 1] = 0;\n a[(d + 38) >> 0] = 0;\n a: do\n if (ap(m, f, 0) | 0) {\n c[(n + 48) >> 2] = 1;\n ha[c[((c[m >> 2] | 0) + 20) >> 2] & 3](m, n, o, o, 1, 0);\n d = (c[g >> 2] | 0) == 1 ? o : 0;\n }\n else {\n ga[c[((c[m >> 2] | 0) + 24) >> 2] & 3](m, n, o, 1, 0);\n switch (c[(n + 36) >> 2] | 0) {\n case 0: {\n d =\n ((c[j >> 2] | 0) == 1) & ((c[h >> 2] | 0) == 1) & ((c[i >> 2] | 0) == 1)\n ? c[e >> 2] | 0\n : 0;\n break a;\n }\n case 1:\n break;\n default: {\n d = 0;\n break a;\n }\n }\n if ((c[g >> 2] | 0) != 1\n ? !(((c[j >> 2] | 0) == 0) & ((c[h >> 2] | 0) == 1) & ((c[i >> 2] | 0) == 1))\n : 0) {\n d = 0;\n break;\n }\n d = c[d >> 2] | 0;\n }\n while (0);\n V = p;\n return d | 0;\n }\n function fp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function gp(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, g) | 0)\n dp(0, b, d, e, f);\n else {\n a = c[(a + 8) >> 2] | 0;\n ha[c[((c[a >> 2] | 0) + 20) >> 2] & 3](a, b, d, e, f, g);\n }\n return;\n }\n function hp(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (!(ap(b, c[d >> 2] | 0, g) | 0)) {\n i = c[(b + 8) >> 2] | 0;\n ga[c[((c[i >> 2] | 0) + 24) >> 2] & 3](i, d, e, f, g);\n break;\n }\n if ((c[(d + 16) >> 2] | 0) != (e | 0) ? ((i = (d + 20) | 0), (c[i >> 2] | 0) != (e | 0)) : 0) {\n c[(d + 32) >> 2] = f;\n f = (d + 44) | 0;\n do\n if ((c[f >> 2] | 0) != 4) {\n h = (d + 52) | 0;\n a[h >> 0] = 0;\n j = (d + 53) | 0;\n a[j >> 0] = 0;\n b = c[(b + 8) >> 2] | 0;\n ha[c[((c[b >> 2] | 0) + 20) >> 2] & 3](b, d, e, e, 1, g);\n if (a[j >> 0] | 0) {\n j = (a[h >> 0] | 0) == 0;\n c[f >> 2] = 3;\n if (j)\n break;\n else\n break a;\n }\n else {\n c[f >> 2] = 4;\n break;\n }\n }\n while (0);\n c[i >> 2] = e;\n j = (d + 40) | 0;\n c[j >> 2] = (c[j >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) != 1)\n break;\n if ((c[(d + 24) >> 2] | 0) != 2)\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function ip(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n if (ap(a, c[(b + 8) >> 2] | 0, 0) | 0)\n bp(0, b, d, e);\n else {\n a = c[(a + 8) >> 2] | 0;\n fa[c[((c[a >> 2] | 0) + 28) >> 2] & 7](a, b, d, e);\n }\n return;\n }\n function jp(a) {\n a = a | 0;\n er(a);\n return;\n }\n function kp(a) {\n a = a | 0;\n return;\n }\n function lp() {\n var a = 0, b = 0;\n a = Qo() | 0;\n if ((a | 0 ? ((b = c[a >> 2] | 0), b | 0) : 0) ? Ro((b + 48) | 0) | 0 : 0)\n mp(c[(b + 12) >> 2] | 0);\n mp(np() | 0);\n }\n function mp(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + 16) | 0;\n ba[a & 3]();\n To(20559, b);\n }\n function np() {\n return 2;\n }\n function op(a) {\n a = a | 0;\n return;\n }\n function pp(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function qp(a) {\n a = a | 0;\n return 20599;\n }\n function rp(a) {\n a = a | 0;\n c[a >> 2] = 5916;\n vp((a + 4) | 0);\n return;\n }\n function sp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function tp(a) {\n a = a | 0;\n return up((a + 4) | 0) | 0;\n }\n function up(a) {\n a = a | 0;\n return c[a >> 2] | 0;\n }\n function vp(a) {\n a = a | 0;\n var b = 0, d = 0;\n if (wp(a) | 0\n ? ((b = xp(c[a >> 2] | 0) | 0),\n (d = (b + 8) | 0),\n (a = c[d >> 2] | 0),\n (c[d >> 2] = a + -1),\n (a | 0) < 1)\n : 0)\n jp(b);\n return;\n }\n function wp(a) {\n a = a | 0;\n return 1;\n }\n function xp(a) {\n a = a | 0;\n return (a + -12) | 0;\n }\n function yp(a) {\n a = a | 0;\n c[a >> 2] = 5936;\n vp((a + 4) | 0);\n return;\n }\n function zp(a) {\n a = a | 0;\n yp(a);\n jp(a);\n return;\n }\n function Ap(a) {\n a = a | 0;\n return up((a + 4) | 0) | 0;\n }\n function Bp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function Cp(a) {\n a = a | 0;\n rp(a);\n jp(a);\n return;\n }\n function Dp() {\n var a = 0;\n a = V;\n V = (V + 16) | 0;\n To(20848, a);\n }\n function Ep(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Fp(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return ap(a, b, 0) | 0;\n }\n function Gp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Hp(d, e, f) {\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0;\n n = V;\n V = (V + 64) | 0;\n l = n;\n do\n if (!(ap(e, 4048, 0) | 0)) {\n if (Ip(d, e, 0) | 0) {\n e = c[f >> 2] | 0;\n if (!e) {\n e = 1;\n break;\n }\n c[f >> 2] = c[e >> 2];\n e = 1;\n break;\n }\n if ((e | 0) != 0 ? ((g = ep(e, 3840, 3976, 0) | 0), (g | 0) != 0) : 0) {\n e = c[f >> 2] | 0;\n if (e | 0)\n c[f >> 2] = c[e >> 2];\n e = c[(g + 8) >> 2] | 0;\n i = (d + 8) | 0;\n h = c[i >> 2] | 0;\n if (((e & 7 & (h ^ 7)) | 0) == 0 ? ((((e & 96) ^ 96) & h) | 0) == 0 : 0) {\n h = (d + 12) | 0;\n d = c[h >> 2] | 0;\n g = (g + 12) | 0;\n e = c[g >> 2] | 0;\n if (!(ap(d, e, 0) | 0)) {\n if (ap(d, 4040, 0) | 0) {\n if (!e) {\n e = 1;\n break;\n }\n e = (ep(e, 3840, 3992, 0) | 0) == 0;\n break;\n }\n if (d) {\n e = ep(d, 3840, 3976, 0) | 0;\n if (e | 0) {\n if (!(c[i >> 2] & 1)) {\n e = 0;\n break;\n }\n e = Jp(e, c[g >> 2] | 0) | 0;\n break;\n }\n e = c[h >> 2] | 0;\n if (e) {\n e = ep(e, 3840, 4008, 0) | 0;\n if (e | 0) {\n if (!(c[i >> 2] & 1)) {\n e = 0;\n break;\n }\n e = Kp(e, c[g >> 2] | 0) | 0;\n break;\n }\n e = c[h >> 2] | 0;\n if ((((e | 0) != 0 ? ((j = ep(e, 3840, 3824, 0) | 0), (j | 0) != 0) : 0)\n ? ((k = c[g >> 2] | 0), (k | 0) != 0)\n : 0)\n ? ((m = ep(k, 3840, 3824, 0) | 0), (m | 0) != 0)\n : 0) {\n c[l >> 2] = m;\n c[(l + 4) >> 2] = 0;\n c[(l + 8) >> 2] = j;\n c[(l + 12) >> 2] = -1;\n e = (l + 16) | 0;\n d = (l + 24) | 0;\n g = (l + 48) | 0;\n h = e;\n i = (h + 36) | 0;\n do {\n c[h >> 2] = 0;\n h = (h + 4) | 0;\n } while ((h | 0) < (i | 0));\n b[(e + 36) >> 1] = 0;\n a[(e + 38) >> 0] = 0;\n c[g >> 2] = 1;\n fa[c[((c[m >> 2] | 0) + 28) >> 2] & 7](m, l, c[f >> 2] | 0, 1);\n do\n if ((c[d >> 2] | 0) == 1) {\n if (!(c[f >> 2] | 0)) {\n e = 1;\n break;\n }\n c[f >> 2] = c[e >> 2];\n e = 1;\n }\n else\n e = 0;\n while (0);\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else\n e = 1;\n }\n else\n e = 0;\n }\n else\n e = 0;\n }\n else {\n c[f >> 2] = 0;\n e = 1;\n }\n while (0);\n V = n;\n return e | 0;\n }\n function Ip(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n if (!(c[(a + 8) >> 2] & 24))\n if ((b | 0) != 0 ? ((e = ep(b, 3840, 3960, 0) | 0), (e | 0) != 0) : 0) {\n d = ((c[(e + 8) >> 2] & 24) | 0) != 0;\n f = 5;\n }\n else\n d = 0;\n else {\n d = 1;\n f = 5;\n }\n if ((f | 0) == 5)\n d = ap(a, b, d) | 0;\n return d | 0;\n }\n function Jp(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0, h = 0;\n while (1) {\n if (!b) {\n b = 0;\n break;\n }\n d = ep(b, 3840, 3976, 0) | 0;\n if (!d) {\n b = 0;\n break;\n }\n f = c[(a + 8) >> 2] | 0;\n if ((c[(d + 8) >> 2] & ~f) | 0) {\n b = 0;\n break;\n }\n e = (a + 12) | 0;\n b = c[e >> 2] | 0;\n d = (d + 12) | 0;\n if (ap(b, c[d >> 2] | 0, 0) | 0) {\n b = 1;\n break;\n }\n if ((((f & 1) | 0) == 0) | ((b | 0) == 0)) {\n b = 0;\n break;\n }\n a = ep(b, 3840, 3976, 0) | 0;\n if (!a) {\n h = 9;\n break;\n }\n b = c[d >> 2] | 0;\n }\n if ((h | 0) == 9) {\n b = c[e >> 2] | 0;\n if ((b | 0) != 0 ? ((g = ep(b, 3840, 4008, 0) | 0), (g | 0) != 0) : 0)\n b = Kp(g, c[d >> 2] | 0) | 0;\n else\n b = 0;\n }\n return b | 0;\n }\n function Kp(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n if ((((b | 0) != 0 ? ((d = ep(b, 3840, 4008, 0) | 0), (d | 0) != 0) : 0)\n ? ((c[(d + 8) >> 2] & ~c[(a + 8) >> 2]) | 0) == 0\n : 0)\n ? ap(c[(a + 12) >> 2] | 0, c[(d + 12) >> 2] | 0, 0) | 0\n : 0)\n a = ap(c[(a + 16) >> 2] | 0, c[(d + 16) >> 2] | 0, 0) | 0;\n else\n a = 0;\n return a | 0;\n }\n function Lp(a) {\n a = a | 0;\n Uo(a);\n jp(a);\n return;\n }\n function Mp(b, d, e, f, g, h) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n var i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0;\n if (ap(b, c[(d + 8) >> 2] | 0, h) | 0)\n dp(0, d, e, f, g);\n else {\n r = (d + 52) | 0;\n j = a[r >> 0] | 0;\n q = (d + 53) | 0;\n i = a[q >> 0] | 0;\n p = c[(b + 12) >> 2] | 0;\n m = (b + 16 + (p << 3)) | 0;\n a[r >> 0] = 0;\n a[q >> 0] = 0;\n Qp((b + 16) | 0, d, e, f, g, h);\n k = a[r >> 0] | 0;\n j = k | j;\n l = a[q >> 0] | 0;\n i = l | i;\n a: do\n if ((p | 0) > 1) {\n n = (d + 24) | 0;\n o = (b + 8) | 0;\n p = (d + 54) | 0;\n b = (b + 24) | 0;\n do {\n i = i & 1;\n j = j & 1;\n if (a[p >> 0] | 0)\n break a;\n if (!((k << 24) >> 24)) {\n if ((l << 24) >> 24 ? ((c[o >> 2] & 1) | 0) == 0 : 0)\n break a;\n }\n else {\n if ((c[n >> 2] | 0) == 1)\n break a;\n if (!(c[o >> 2] & 2))\n break a;\n }\n a[r >> 0] = 0;\n a[q >> 0] = 0;\n Qp(b, d, e, f, g, h);\n k = a[r >> 0] | 0;\n j = k | j;\n l = a[q >> 0] | 0;\n i = l | i;\n b = (b + 8) | 0;\n } while (b >>> 0 < m >>> 0);\n }\n while (0);\n a[r >> 0] = ((j << 24) >> 24 != 0) & 1;\n a[q >> 0] = ((i << 24) >> 24 != 0) & 1;\n }\n return;\n }\n function Np(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, g) | 0)) {\n if (!(ap(b, c[d >> 2] | 0, g) | 0)) {\n p = c[(b + 12) >> 2] | 0;\n k = (b + 16 + (p << 3)) | 0;\n Rp((b + 16) | 0, d, e, f, g);\n h = (b + 24) | 0;\n if ((p | 0) <= 1)\n break;\n b = c[(b + 8) >> 2] | 0;\n if (((b & 2) | 0) == 0 ? ((j = (d + 36) | 0), (c[j >> 2] | 0) != 1) : 0) {\n if (!(b & 1)) {\n b = (d + 54) | 0;\n while (1) {\n if (a[b >> 0] | 0)\n break a;\n if ((c[j >> 2] | 0) == 1)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n b = (d + 24) | 0;\n i = (d + 54) | 0;\n while (1) {\n if (a[i >> 0] | 0)\n break a;\n if ((c[j >> 2] | 0) == 1 ? (c[b >> 2] | 0) == 1 : 0)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n b = (d + 54) | 0;\n while (1) {\n if (a[b >> 0] | 0)\n break a;\n Rp(h, d, e, f, g);\n h = (h + 8) | 0;\n if (h >>> 0 >= k >>> 0)\n break a;\n }\n }\n if ((c[(d + 16) >> 2] | 0) != (e | 0) ? ((p = (d + 20) | 0), (c[p >> 2] | 0) != (e | 0)) : 0) {\n c[(d + 32) >> 2] = f;\n o = (d + 44) | 0;\n if ((c[o >> 2] | 0) != 4) {\n j = (b + 16 + (c[(b + 12) >> 2] << 3)) | 0;\n k = (d + 52) | 0;\n f = (d + 53) | 0;\n l = (d + 54) | 0;\n m = (b + 8) | 0;\n n = (d + 24) | 0;\n h = 0;\n i = (b + 16) | 0;\n b = 0;\n b: while (1) {\n if (i >>> 0 >= j >>> 0) {\n i = 18;\n break;\n }\n a[k >> 0] = 0;\n a[f >> 0] = 0;\n Qp(i, d, e, e, 1, g);\n if (a[l >> 0] | 0) {\n i = 18;\n break;\n }\n do\n if (a[f >> 0] | 0) {\n if (!(a[k >> 0] | 0))\n if (!(c[m >> 2] & 1)) {\n i = 19;\n break b;\n }\n else {\n b = 1;\n break;\n }\n if ((c[n >> 2] | 0) == 1) {\n h = 1;\n i = 19;\n break b;\n }\n if (!(c[m >> 2] & 2)) {\n h = 1;\n i = 19;\n break b;\n }\n else {\n h = 1;\n b = 1;\n }\n }\n while (0);\n i = (i + 8) | 0;\n }\n if ((i | 0) == 18)\n if (b)\n i = 19;\n else\n b = 4;\n if ((i | 0) == 19)\n b = 3;\n c[o >> 2] = b;\n if (h & 1)\n break;\n }\n c[p >> 2] = e;\n e = (d + 40) | 0;\n c[e >> 2] = (c[e >> 2] | 0) + 1;\n if ((c[(d + 36) >> 2] | 0) != 1)\n break;\n if ((c[(d + 24) >> 2] | 0) != 2)\n break;\n a[(d + 54) >> 0] = 1;\n break;\n }\n if ((f | 0) == 1)\n c[(d + 32) >> 2] = 1;\n }\n else\n cp(0, d, e, f);\n while (0);\n return;\n }\n function Op(b, d, e, f) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n a: do\n if (!(ap(b, c[(d + 8) >> 2] | 0, 0) | 0)) {\n h = c[(b + 12) >> 2] | 0;\n g = (b + 16 + (h << 3)) | 0;\n Pp((b + 16) | 0, d, e, f);\n if ((h | 0) > 1) {\n h = (d + 54) | 0;\n b = (b + 24) | 0;\n do {\n Pp(b, d, e, f);\n if (a[h >> 0] | 0)\n break a;\n b = (b + 8) | 0;\n } while (b >>> 0 < g >>> 0);\n }\n }\n else\n bp(0, d, e, f);\n while (0);\n return;\n }\n function Pp(a, b, d, e) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0;\n g = c[(a + 4) >> 2] | 0;\n if (d) {\n f = g >> 8;\n if (g & 1)\n f = c[((c[d >> 2] | 0) + f) >> 2] | 0;\n }\n else\n f = 0;\n a = c[a >> 2] | 0;\n fa[c[((c[a >> 2] | 0) + 28) >> 2] & 7](a, b, (d + f) | 0, ((g & 2) | 0) == 0 ? 2 : e);\n return;\n }\n function Qp(a, b, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0;\n i = c[(a + 4) >> 2] | 0;\n h = i >> 8;\n if (i & 1)\n h = c[((c[e >> 2] | 0) + h) >> 2] | 0;\n a = c[a >> 2] | 0;\n ha[c[((c[a >> 2] | 0) + 20) >> 2] & 3](a, b, d, (e + h) | 0, ((i & 2) | 0) == 0 ? 2 : f, g);\n return;\n }\n function Rp(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0;\n h = c[(a + 4) >> 2] | 0;\n g = h >> 8;\n if (h & 1)\n g = c[((c[d >> 2] | 0) + g) >> 2] | 0;\n a = c[a >> 2] | 0;\n ga[c[((c[a >> 2] | 0) + 24) >> 2] & 3](a, b, (d + g) | 0, ((h & 2) | 0) == 0 ? 2 : e, f);\n return;\n }\n function Sp(a) {\n a = a | 0;\n c[a >> 2] = 5896;\n return;\n }\n function Tp(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n Up(c, a);\n a = Vp(c) | 0;\n V = b;\n return a | 0;\n }\n function Up(a, b) {\n a = a | 0;\n b = b | 0;\n _p(a, b);\n return;\n }\n function Vp(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n Wp(d, c[(a + 4) >> 2] | 0);\n if (!(((Xp(d) | 0) << 24) >> 24))\n a = Zp(Yp(a) | 0) | 0;\n else\n a = 0;\n V = b;\n return a | 0;\n }\n function Wp(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n return;\n }\n function Xp(b) {\n b = b | 0;\n return a[c[b >> 2] >> 0] | 0;\n }\n function Yp(a) {\n a = a | 0;\n return a | 0;\n }\n function Zp(b) {\n b = b | 0;\n var d = 0, e = 0, f = 0, g = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n b = c[(b + 8) >> 2] | 0;\n d = a[b >> 0] | 0;\n do\n if ((d << 24) >> 24 != 1)\n if (!(d & 2)) {\n a[b >> 0] = 2;\n e = 1;\n break;\n }\n else\n To(20985, f);\n else\n e = 0;\n while (0);\n V = g;\n return e | 0;\n }\n function _p(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = b;\n c[(a + 4) >> 2] = b;\n c[(a + 8) >> 2] = b + 1;\n c[(a + 12) >> 2] = 0;\n return;\n }\n function $p(a) {\n a = a | 0;\n var b = 0, c = 0;\n b = V;\n V = (V + 16) | 0;\n c = b;\n Up(c, a);\n aq(c);\n V = b;\n return;\n }\n function aq(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = V;\n V = (V + 16) | 0;\n d = b;\n Wp(d, c[(a + 4) >> 2] | 0);\n bq(d);\n cq(Yp(a) | 0);\n V = b;\n return;\n }\n function bq(b) {\n b = b | 0;\n a[c[b >> 2] >> 0] = 1;\n return;\n }\n function cq(b) {\n b = b | 0;\n a[c[(b + 8) >> 2] >> 0] = 1;\n return;\n }\n function dq() {\n return 0;\n }\n function eq(a) {\n a = a | 0;\n var b = 0, c = 0;\n c = (a | 0) == 0 ? 1 : a;\n while (1) {\n b = dr(c) | 0;\n if (b | 0) {\n a = 6;\n break;\n }\n a = dq() | 0;\n if (!a) {\n a = 5;\n break;\n }\n ba[a & 3]();\n }\n if ((a | 0) == 5) {\n c = v(4) | 0;\n Sp(c);\n x(c | 0, 3880, 121);\n }\n else if ((a | 0) == 6)\n return b | 0;\n return 0;\n }\n function fq(a) {\n a = a | 0;\n return eq(a) | 0;\n }\n function gq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function hq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n c[e >> 2] = c[d >> 2];\n a = aa[c[((c[a >> 2] | 0) + 16) >> 2] & 7](a, b, e) | 0;\n if (a)\n c[d >> 2] = c[e >> 2];\n V = f;\n return (a & 1) | 0;\n }\n function iq(a) {\n a = a | 0;\n if (!a)\n a = 0;\n else\n a = ((ep(a, 3840, 3976, 0) | 0) != 0) & 1;\n return a | 0;\n }\n function jq(a) {\n a = a | 0;\n return 0;\n }\n function kq() {\n return ((lq() | 0) > 0) | 0;\n }\n function lq() {\n return y() | 0;\n }\n function mq(a) {\n a = a | 0;\n return;\n }\n function nq(a) {\n a = a | 0;\n mq(a);\n jp(a);\n return;\n }\n function oq(a) {\n a = a | 0;\n return 21039;\n }\n function pq(a) {\n a = a | 0;\n return;\n }\n function qq(a) {\n a = a | 0;\n var b = 0, d = 0;\n b = (a + 8) | 0;\n if (!((c[b >> 2] | 0) != 0 ? ((d = c[b >> 2] | 0), (c[b >> 2] = d + -1), (d | 0) != 0) : 0))\n ca[c[((c[a >> 2] | 0) + 16) >> 2] & 255](a);\n return;\n }\n function rq(a) {\n a = a | 0;\n a = jq(a) | 0;\n if (!a)\n return;\n else\n br(a, 21145);\n }\n function sq(a) {\n a = a | 0;\n return;\n }\n function tq(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n e = fo(b) | 0;\n d = eq((e + 13) | 0) | 0;\n c[d >> 2] = e;\n c[(d + 4) >> 2] = e;\n c[(d + 8) >> 2] = 0;\n d = uq(d) | 0;\n ur(d | 0, b | 0, (e + 1) | 0) | 0;\n c[a >> 2] = d;\n return;\n }\n function uq(a) {\n a = a | 0;\n return (a + 12) | 0;\n }\n function vq(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 5916;\n tq((a + 4) | 0, b);\n return;\n }\n function wq(b, d) {\n b = b | 0;\n d = d | 0;\n c[b >> 2] = 5936;\n tq((b + 4) | 0, (a[(d + 11) >> 0] | 0) < 0 ? c[d >> 2] | 0 : d);\n return;\n }\n function xq(a, b) {\n a = a | 0;\n b = b | 0;\n c[a >> 2] = 5936;\n tq((a + 4) | 0, b);\n return;\n }\n function yq(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21163);\n c[a >> 2] = 5956;\n x(a | 0, 3928, 123);\n }\n function zq(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21163);\n c[a >> 2] = 5976;\n x(a | 0, 3944, 123);\n }\n function Aq(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0;\n g = V;\n V = (V + 16) | 0;\n f = g;\n if (e >>> 0 > 4294967279)\n yq(b);\n if (e >>> 0 < 11)\n a[(b + 11) >> 0] = e;\n else {\n i = (e + 16) & -16;\n h = eq(i) | 0;\n c[b >> 2] = h;\n c[(b + 8) >> 2] = i | -2147483648;\n c[(b + 4) >> 2] = e;\n b = h;\n }\n Bq(b, d, e) | 0;\n a[f >> 0] = 0;\n nb((b + e) | 0, f);\n V = g;\n return;\n }\n function Bq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if (c | 0)\n ur(a | 0, b | 0, c | 0) | 0;\n return a | 0;\n }\n function Cq(b) {\n b = b | 0;\n if ((a[(b + 11) >> 0] | 0) < 0)\n Da(c[b >> 2] | 0, c[(b + 8) >> 2] & 2147483647);\n return;\n }\n function Dq(b, d, e, f, g, h, i, j) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n h = h | 0;\n i = i | 0;\n j = j | 0;\n var k = 0, l = 0, m = 0, n = 0, o = 0;\n o = V;\n V = (V + 16) | 0;\n n = o;\n if (((-18 - d) | 0) >>> 0 < e >>> 0)\n yq(b);\n if ((a[(b + 11) >> 0] | 0) < 0)\n m = c[b >> 2] | 0;\n else\n m = b;\n if (d >>> 0 < 2147483623) {\n k = (e + d) | 0;\n l = d << 1;\n k = k >>> 0 < l >>> 0 ? l : k;\n k = k >>> 0 < 11 ? 11 : (k + 16) & -16;\n }\n else\n k = -17;\n l = eq(k) | 0;\n if (g | 0)\n Bq(l, m, g) | 0;\n if (i | 0)\n Bq((l + g) | 0, j, i) | 0;\n f = (f - h) | 0;\n e = (f - g) | 0;\n if (e | 0)\n Bq((l + g + i) | 0, (m + g + h) | 0, e) | 0;\n e = (d + 1) | 0;\n if ((e | 0) != 11)\n Da(m, e);\n c[b >> 2] = l;\n c[(b + 8) >> 2] = k | -2147483648;\n i = (f + i) | 0;\n c[(b + 4) >> 2] = i;\n a[n >> 0] = 0;\n nb((l + i) | 0, n);\n V = o;\n return;\n }\n function Eq(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0, j = 0, k = 0;\n k = V;\n V = (V + 16) | 0;\n i = k;\n j = (b + 11) | 0;\n f = a[j >> 0] | 0;\n h = (f << 24) >> 24 < 0;\n if (h) {\n g = ((c[(b + 8) >> 2] & 2147483647) + -1) | 0;\n f = c[(b + 4) >> 2] | 0;\n }\n else {\n g = 10;\n f = f & 255;\n }\n if (((g - f) | 0) >>> 0 >= e >>> 0) {\n if (e | 0) {\n if (h)\n g = c[b >> 2] | 0;\n else\n g = b;\n Bq((g + f) | 0, d, e) | 0;\n f = (f + e) | 0;\n if ((a[j >> 0] | 0) < 0)\n c[(b + 4) >> 2] = f;\n else\n a[j >> 0] = f;\n a[i >> 0] = 0;\n nb((g + f) | 0, i);\n }\n }\n else\n Dq(b, g, (f + e - g) | 0, f, f, 0, e, d);\n V = k;\n return b | 0;\n }\n function Fq(a, b) {\n a = a | 0;\n b = b | 0;\n return Eq(a, b, lb(b) | 0) | 0;\n }\n function Gq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if (!c)\n a = 0;\n else\n a = Fo(a, b, c) | 0;\n return a | 0;\n }\n function Hq(b, d, e, f, g) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n var h = 0, i = 0;\n h = a[(b + 11) >> 0] | 0;\n i = (h << 24) >> 24 < 0;\n if (i)\n h = c[(b + 4) >> 2] | 0;\n else\n h = h & 255;\n if (((g | 0) == -1) | (h >>> 0 < d >>> 0))\n zq(b);\n h = (h - d) | 0;\n e = h >>> 0 < e >>> 0 ? h : e;\n if (i)\n b = c[b >> 2] | 0;\n h = e >>> 0 > g >>> 0;\n b = Gq((b + d) | 0, f, h ? g : e) | 0;\n if (!b)\n return (e >>> 0 < g >>> 0 ? -1 : h & 1) | 0;\n else\n return b | 0;\n return 0;\n }\n function Iq(a) {\n a = a | 0;\n return;\n }\n function Jq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Kq(a) {\n a = a | 0;\n return 21228;\n }\n function Lq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n c[a >> 2] = d;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Mq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = f;\n ea[c[((c[a >> 2] | 0) + 12) >> 2] & 15](e, a, b);\n if ((c[(e + 4) >> 2] | 0) == (c[(d + 4) >> 2] | 0))\n a = (c[e >> 2] | 0) == (c[d >> 2] | 0);\n else\n a = 0;\n V = f;\n return a | 0;\n }\n function Nq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n return ((c[b >> 2] | 0) == (d | 0) ? (c[(b + 4) >> 2] | 0) == (a | 0) : 0) | 0;\n }\n function Oq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) > 256)\n Aq(a, 21176, lb(21176) | 0);\n else\n Pq(a, 0, c);\n return;\n }\n function Pq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n Qq(a, c);\n return;\n }\n function Qq(b, d) {\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0, h = 0, i = 0;\n i = V;\n V = (V + 1040) | 0;\n g = (i + 1024) | 0;\n e = i;\n h = c[(ao() | 0) >> 2] | 0;\n f = Rq(Oo(d, e, 1024) | 0, e) | 0;\n if (!(a[f >> 0] | 0)) {\n c[g >> 2] = d;\n Go(e, 1024, 21211, g) | 0;\n }\n else\n e = f;\n c[(ao() | 0) >> 2] = h;\n Aq(b, e, lb(e) | 0);\n V = i;\n return;\n }\n function Rq(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0;\n switch (a | 0) {\n case 0: {\n d = b;\n break;\n }\n case -1: {\n a = c[(ao() | 0) >> 2] | 0;\n e = 3;\n break;\n }\n default:\n e = 3;\n }\n if ((e | 0) == 3)\n if ((a | 0) == 28)\n d = 22145;\n else\n P();\n return d | 0;\n }\n function Sq(a) {\n a = a | 0;\n jp(a);\n return;\n }\n function Tq(a) {\n a = a | 0;\n return 21353;\n }\n function Uq(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n if ((d | 0) > 256) {\n Wq() | 0;\n b = 6180;\n }\n else {\n Xq() | 0;\n b = 6176;\n }\n c[a >> 2] = d;\n c[(a + 4) >> 2] = b;\n return;\n }\n function Vq(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) > 256)\n Aq(a, 21319, lb(21319) | 0);\n else\n Pq(a, 0, c);\n return;\n }\n function Wq() {\n if ((a[21488] | 0) == 0 ? Tp(21488) | 0 : 0)\n $p(21488);\n return 6180;\n }\n function Xq() {\n if ((a[21480] | 0) == 0 ? Tp(21480) | 0 : 0)\n $p(21480);\n return 6176;\n }\n function Yq(a) {\n a = a | 0;\n yp(a);\n return;\n }\n function Zq(a) {\n a = a | 0;\n Yq(a);\n jp(a);\n return;\n }\n function _q(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0;\n d = c[(b + 4) >> 2] | 0;\n ea[c[((c[d >> 2] | 0) + 24) >> 2] & 15](a, d, c[b >> 2] | 0);\n return;\n }\n function $q(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n h = V;\n V = (V + 16) | 0;\n g = h;\n if (c[d >> 2] | 0) {\n f = a[(e + 11) >> 0] | 0;\n if ((f << 24) >> 24 < 0)\n f = c[(e + 4) >> 2] | 0;\n else\n f = f & 255;\n if (f | 0)\n Fq(e, 21417) | 0;\n _q(g, d);\n d = a[(g + 11) >> 0] | 0;\n f = (d << 24) >> 24 < 0;\n Eq(e, f ? c[g >> 2] | 0 : g, f ? c[(g + 4) >> 2] | 0 : d & 255) | 0;\n Cq(g);\n }\n c[b >> 2] = c[e >> 2];\n c[(b + 4) >> 2] = c[(e + 4) >> 2];\n c[(b + 8) >> 2] = c[(e + 8) >> 2];\n f = 0;\n while (1) {\n if ((f | 0) == 3)\n break;\n c[(e + (f << 2)) >> 2] = 0;\n f = (f + 1) | 0;\n }\n V = h;\n return;\n }\n function ar(a, b, d) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n var e = 0, f = 0, g = 0;\n e = V;\n V = (V + 32) | 0;\n g = (e + 12) | 0;\n f = e;\n Aq(f, d, lb(d) | 0);\n $q(g, b, f);\n wq(a, g);\n Cq(g);\n Cq(f);\n c[a >> 2] = 6192;\n f = b;\n b = c[(f + 4) >> 2] | 0;\n d = (a + 8) | 0;\n c[d >> 2] = c[f >> 2];\n c[(d + 4) >> 2] = b;\n V = e;\n return;\n }\n function br(a, b) {\n a = a | 0;\n b = b | 0;\n var d = 0, e = 0, f = 0;\n f = V;\n V = (V + 16) | 0;\n e = (f + 8) | 0;\n d = v(16) | 0;\n Wq() | 0;\n c[f >> 2] = a;\n c[(f + 4) >> 2] = 6180;\n c[e >> 2] = c[f >> 2];\n c[(e + 4) >> 2] = c[(f + 4) >> 2];\n ar(d, e, b);\n x(d | 0, 4272, 136);\n }\n function cr(a) {\n a = a | 0;\n a = v(8) | 0;\n vq(a, 21420);\n c[a >> 2] = 5956;\n x(a | 0, 3928, 123);\n }\n function dr(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0;\n w = V;\n V = (V + 16) | 0;\n n = w;\n do\n if (a >>> 0 < 245) {\n k = a >>> 0 < 11 ? 16 : (a + 11) & -8;\n a = k >>> 3;\n m = c[5412] | 0;\n d = m >>> a;\n if ((d & 3) | 0) {\n b = (((d & 1) ^ 1) + a) | 0;\n a = (21688 + ((b << 1) << 2)) | 0;\n d = (a + 8) | 0;\n e = c[d >> 2] | 0;\n f = (e + 8) | 0;\n g = c[f >> 2] | 0;\n if ((g | 0) == (a | 0))\n c[5412] = m & ~(1 << b);\n else {\n c[(g + 12) >> 2] = a;\n c[d >> 2] = g;\n }\n v = b << 3;\n c[(e + 4) >> 2] = v | 3;\n v = (e + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n v = f;\n V = w;\n return v | 0;\n }\n l = c[5414] | 0;\n if (k >>> 0 > l >>> 0) {\n if (d | 0) {\n b = 2 << a;\n b = (d << a) & (b | (0 - b));\n b = ((b & (0 - b)) + -1) | 0;\n i = (b >>> 12) & 16;\n b = b >>> i;\n d = (b >>> 5) & 8;\n b = b >>> d;\n g = (b >>> 2) & 4;\n b = b >>> g;\n a = (b >>> 1) & 2;\n b = b >>> a;\n e = (b >>> 1) & 1;\n e = ((d | i | g | a | e) + (b >>> e)) | 0;\n b = (21688 + ((e << 1) << 2)) | 0;\n a = (b + 8) | 0;\n g = c[a >> 2] | 0;\n i = (g + 8) | 0;\n d = c[i >> 2] | 0;\n if ((d | 0) == (b | 0)) {\n a = m & ~(1 << e);\n c[5412] = a;\n }\n else {\n c[(d + 12) >> 2] = b;\n c[a >> 2] = d;\n a = m;\n }\n v = e << 3;\n h = (v - k) | 0;\n c[(g + 4) >> 2] = k | 3;\n f = (g + k) | 0;\n c[(f + 4) >> 2] = h | 1;\n c[(g + v) >> 2] = h;\n if (l | 0) {\n e = c[5417] | 0;\n b = l >>> 3;\n d = (21688 + ((b << 1) << 2)) | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = e;\n c[(b + 12) >> 2] = e;\n c[(e + 8) >> 2] = b;\n c[(e + 12) >> 2] = d;\n }\n c[5414] = h;\n c[5417] = f;\n v = i;\n V = w;\n return v | 0;\n }\n g = c[5413] | 0;\n if (g) {\n d = ((g & (0 - g)) + -1) | 0;\n f = (d >>> 12) & 16;\n d = d >>> f;\n e = (d >>> 5) & 8;\n d = d >>> e;\n h = (d >>> 2) & 4;\n d = d >>> h;\n i = (d >>> 1) & 2;\n d = d >>> i;\n j = (d >>> 1) & 1;\n j = c[(21952 + (((e | f | h | i | j) + (d >>> j)) << 2)) >> 2] | 0;\n d = j;\n i = j;\n j = ((c[(j + 4) >> 2] & -8) - k) | 0;\n while (1) {\n a = c[(d + 16) >> 2] | 0;\n if (!a) {\n a = c[(d + 20) >> 2] | 0;\n if (!a)\n break;\n }\n h = ((c[(a + 4) >> 2] & -8) - k) | 0;\n f = h >>> 0 < j >>> 0;\n d = a;\n i = f ? a : i;\n j = f ? h : j;\n }\n h = (i + k) | 0;\n if (h >>> 0 > i >>> 0) {\n f = c[(i + 24) >> 2] | 0;\n b = c[(i + 12) >> 2] | 0;\n do\n if ((b | 0) == (i | 0)) {\n a = (i + 20) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n a = (i + 16) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n d = 0;\n break;\n }\n }\n while (1) {\n e = (b + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (b + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n b = d;\n a = e;\n }\n }\n else {\n b = d;\n a = e;\n }\n }\n c[a >> 2] = 0;\n d = b;\n }\n else {\n d = c[(i + 8) >> 2] | 0;\n c[(d + 12) >> 2] = b;\n c[(b + 8) >> 2] = d;\n d = b;\n }\n while (0);\n do\n if (f | 0) {\n b = c[(i + 28) >> 2] | 0;\n a = (21952 + (b << 2)) | 0;\n if ((i | 0) == (c[a >> 2] | 0)) {\n c[a >> 2] = d;\n if (!d) {\n c[5413] = g & ~(1 << b);\n break;\n }\n }\n else {\n v = (f + 16) | 0;\n c[((c[v >> 2] | 0) == (i | 0) ? v : (f + 20) | 0) >> 2] = d;\n if (!d)\n break;\n }\n c[(d + 24) >> 2] = f;\n b = c[(i + 16) >> 2] | 0;\n if (b | 0) {\n c[(d + 16) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n b = c[(i + 20) >> 2] | 0;\n if (b | 0) {\n c[(d + 20) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n }\n while (0);\n if (j >>> 0 < 16) {\n v = (j + k) | 0;\n c[(i + 4) >> 2] = v | 3;\n v = (i + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n else {\n c[(i + 4) >> 2] = k | 3;\n c[(h + 4) >> 2] = j | 1;\n c[(h + j) >> 2] = j;\n if (l | 0) {\n e = c[5417] | 0;\n b = l >>> 3;\n d = (21688 + ((b << 1) << 2)) | 0;\n b = 1 << b;\n if (!(b & m)) {\n c[5412] = b | m;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = e;\n c[(b + 12) >> 2] = e;\n c[(e + 8) >> 2] = b;\n c[(e + 12) >> 2] = d;\n }\n c[5414] = j;\n c[5417] = h;\n }\n v = (i + 8) | 0;\n V = w;\n return v | 0;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else if (a >>> 0 <= 4294967231) {\n a = (a + 11) | 0;\n k = a & -8;\n e = c[5413] | 0;\n if (e) {\n f = (0 - k) | 0;\n a = a >>> 8;\n if (a)\n if (k >>> 0 > 16777215)\n j = 31;\n else {\n m = (((a + 1048320) | 0) >>> 16) & 8;\n q = a << m;\n i = (((q + 520192) | 0) >>> 16) & 4;\n q = q << i;\n j = (((q + 245760) | 0) >>> 16) & 2;\n j = (14 - (i | m | j) + ((q << j) >>> 15)) | 0;\n j = ((k >>> ((j + 7) | 0)) & 1) | (j << 1);\n }\n else\n j = 0;\n d = c[(21952 + (j << 2)) >> 2] | 0;\n a: do\n if (!d) {\n d = 0;\n a = 0;\n q = 61;\n }\n else {\n a = 0;\n i = k << ((j | 0) == 31 ? 0 : (25 - (j >>> 1)) | 0);\n g = 0;\n while (1) {\n h = ((c[(d + 4) >> 2] & -8) - k) | 0;\n if (h >>> 0 < f >>> 0)\n if (!h) {\n a = d;\n f = 0;\n q = 65;\n break a;\n }\n else {\n a = d;\n f = h;\n }\n q = c[(d + 20) >> 2] | 0;\n d = c[(d + 16 + ((i >>> 31) << 2)) >> 2] | 0;\n g = ((q | 0) == 0) | ((q | 0) == (d | 0)) ? g : q;\n if (!d) {\n d = g;\n q = 61;\n break;\n }\n else\n i = i << 1;\n }\n }\n while (0);\n if ((q | 0) == 61) {\n if (((d | 0) == 0) & ((a | 0) == 0)) {\n a = 2 << j;\n a = (a | (0 - a)) & e;\n if (!a) {\n m = k;\n break;\n }\n m = ((a & (0 - a)) + -1) | 0;\n h = (m >>> 12) & 16;\n m = m >>> h;\n g = (m >>> 5) & 8;\n m = m >>> g;\n i = (m >>> 2) & 4;\n m = m >>> i;\n j = (m >>> 1) & 2;\n m = m >>> j;\n d = (m >>> 1) & 1;\n a = 0;\n d = c[(21952 + (((g | h | i | j | d) + (m >>> d)) << 2)) >> 2] | 0;\n }\n if (!d) {\n i = a;\n h = f;\n }\n else\n q = 65;\n }\n if ((q | 0) == 65) {\n g = d;\n while (1) {\n m = ((c[(g + 4) >> 2] & -8) - k) | 0;\n d = m >>> 0 < f >>> 0;\n f = d ? m : f;\n a = d ? g : a;\n d = c[(g + 16) >> 2] | 0;\n if (!d)\n d = c[(g + 20) >> 2] | 0;\n if (!d) {\n i = a;\n h = f;\n break;\n }\n else\n g = d;\n }\n }\n if (((i | 0) != 0 ? h >>> 0 < (((c[5414] | 0) - k) | 0) >>> 0 : 0)\n ? ((l = (i + k) | 0), l >>> 0 > i >>> 0)\n : 0) {\n g = c[(i + 24) >> 2] | 0;\n b = c[(i + 12) >> 2] | 0;\n do\n if ((b | 0) == (i | 0)) {\n a = (i + 20) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n a = (i + 16) | 0;\n b = c[a >> 2] | 0;\n if (!b) {\n b = 0;\n break;\n }\n }\n while (1) {\n f = (b + 20) | 0;\n d = c[f >> 2] | 0;\n if (!d) {\n f = (b + 16) | 0;\n d = c[f >> 2] | 0;\n if (!d)\n break;\n else {\n b = d;\n a = f;\n }\n }\n else {\n b = d;\n a = f;\n }\n }\n c[a >> 2] = 0;\n }\n else {\n v = c[(i + 8) >> 2] | 0;\n c[(v + 12) >> 2] = b;\n c[(b + 8) >> 2] = v;\n }\n while (0);\n do\n if (g) {\n a = c[(i + 28) >> 2] | 0;\n d = (21952 + (a << 2)) | 0;\n if ((i | 0) == (c[d >> 2] | 0)) {\n c[d >> 2] = b;\n if (!b) {\n e = e & ~(1 << a);\n c[5413] = e;\n break;\n }\n }\n else {\n v = (g + 16) | 0;\n c[((c[v >> 2] | 0) == (i | 0) ? v : (g + 20) | 0) >> 2] = b;\n if (!b)\n break;\n }\n c[(b + 24) >> 2] = g;\n a = c[(i + 16) >> 2] | 0;\n if (a | 0) {\n c[(b + 16) >> 2] = a;\n c[(a + 24) >> 2] = b;\n }\n a = c[(i + 20) >> 2] | 0;\n if (a) {\n c[(b + 20) >> 2] = a;\n c[(a + 24) >> 2] = b;\n }\n }\n while (0);\n b: do\n if (h >>> 0 < 16) {\n v = (h + k) | 0;\n c[(i + 4) >> 2] = v | 3;\n v = (i + v + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n else {\n c[(i + 4) >> 2] = k | 3;\n c[(l + 4) >> 2] = h | 1;\n c[(l + h) >> 2] = h;\n b = h >>> 3;\n if (h >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = l;\n c[(b + 12) >> 2] = l;\n c[(l + 8) >> 2] = b;\n c[(l + 12) >> 2] = d;\n break;\n }\n b = h >>> 8;\n if (b)\n if (h >>> 0 > 16777215)\n d = 31;\n else {\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n d = (((v + 245760) | 0) >>> 16) & 2;\n d = (14 - (t | u | d) + ((v << d) >>> 15)) | 0;\n d = ((h >>> ((d + 7) | 0)) & 1) | (d << 1);\n }\n else\n d = 0;\n b = (21952 + (d << 2)) | 0;\n c[(l + 28) >> 2] = d;\n a = (l + 16) | 0;\n c[(a + 4) >> 2] = 0;\n c[a >> 2] = 0;\n a = 1 << d;\n if (!(e & a)) {\n c[5413] = e | a;\n c[b >> 2] = l;\n c[(l + 24) >> 2] = b;\n c[(l + 12) >> 2] = l;\n c[(l + 8) >> 2] = l;\n break;\n }\n b = c[b >> 2] | 0;\n c: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (h | 0)) {\n e = h << ((d | 0) == 31 ? 0 : (25 - (d >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (h | 0)) {\n b = a;\n break c;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = l;\n c[(l + 24) >> 2] = b;\n c[(l + 12) >> 2] = l;\n c[(l + 8) >> 2] = l;\n break b;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = l;\n c[u >> 2] = l;\n c[(l + 8) >> 2] = v;\n c[(l + 12) >> 2] = b;\n c[(l + 24) >> 2] = 0;\n }\n while (0);\n v = (i + 8) | 0;\n V = w;\n return v | 0;\n }\n else\n m = k;\n }\n else\n m = k;\n }\n else\n m = -1;\n while (0);\n d = c[5414] | 0;\n if (d >>> 0 >= m >>> 0) {\n b = (d - m) | 0;\n a = c[5417] | 0;\n if (b >>> 0 > 15) {\n v = (a + m) | 0;\n c[5417] = v;\n c[5414] = b;\n c[(v + 4) >> 2] = b | 1;\n c[(a + d) >> 2] = b;\n c[(a + 4) >> 2] = m | 3;\n }\n else {\n c[5414] = 0;\n c[5417] = 0;\n c[(a + 4) >> 2] = d | 3;\n v = (a + d + 4) | 0;\n c[v >> 2] = c[v >> 2] | 1;\n }\n v = (a + 8) | 0;\n V = w;\n return v | 0;\n }\n h = c[5415] | 0;\n if (h >>> 0 > m >>> 0) {\n t = (h - m) | 0;\n c[5415] = t;\n v = c[5418] | 0;\n u = (v + m) | 0;\n c[5418] = u;\n c[(u + 4) >> 2] = t | 1;\n c[(v + 4) >> 2] = m | 3;\n v = (v + 8) | 0;\n V = w;\n return v | 0;\n }\n if (!(c[5530] | 0)) {\n c[5532] = 4096;\n c[5531] = 4096;\n c[5533] = -1;\n c[5534] = -1;\n c[5535] = 0;\n c[5523] = 0;\n c[5530] = (n & -16) ^ 1431655768;\n a = 4096;\n }\n else\n a = c[5532] | 0;\n i = (m + 48) | 0;\n j = (m + 47) | 0;\n g = (a + j) | 0;\n f = (0 - a) | 0;\n k = g & f;\n if (k >>> 0 <= m >>> 0) {\n v = 0;\n V = w;\n return v | 0;\n }\n a = c[5522] | 0;\n if (a | 0\n ? ((l = c[5520] | 0), (n = (l + k) | 0), (n >>> 0 <= l >>> 0) | (n >>> 0 > a >>> 0))\n : 0) {\n v = 0;\n V = w;\n return v | 0;\n }\n d: do\n if (!(c[5523] & 4)) {\n d = c[5418] | 0;\n e: do\n if (d) {\n e = 22096;\n while (1) {\n n = c[e >> 2] | 0;\n if (n >>> 0 <= d >>> 0 ? ((n + (c[(e + 4) >> 2] | 0)) | 0) >>> 0 > d >>> 0 : 0)\n break;\n a = c[(e + 8) >> 2] | 0;\n if (!a) {\n q = 128;\n break e;\n }\n else\n e = a;\n }\n b = (g - h) & f;\n if (b >>> 0 < 2147483647) {\n a = fr(b) | 0;\n if ((a | 0) == (((c[e >> 2] | 0) + (c[(e + 4) >> 2] | 0)) | 0)) {\n if ((a | 0) != (-1 | 0)) {\n h = b;\n g = a;\n q = 145;\n break d;\n }\n }\n else {\n e = a;\n q = 136;\n }\n }\n else\n b = 0;\n }\n else\n q = 128;\n while (0);\n do\n if ((q | 0) == 128) {\n d = fr(0) | 0;\n if ((d | 0) != (-1 | 0)\n ? ((b = d),\n (o = c[5531] | 0),\n (p = (o + -1) | 0),\n (b = ((((p & b) | 0) == 0 ? 0 : (((p + b) & (0 - o)) - b) | 0) + k) | 0),\n (o = c[5520] | 0),\n (p = (b + o) | 0),\n (b >>> 0 > m >>> 0) & (b >>> 0 < 2147483647))\n : 0) {\n n = c[5522] | 0;\n if (n | 0 ? (p >>> 0 <= o >>> 0) | (p >>> 0 > n >>> 0) : 0) {\n b = 0;\n break;\n }\n a = fr(b) | 0;\n if ((a | 0) == (d | 0)) {\n h = b;\n g = d;\n q = 145;\n break d;\n }\n else {\n e = a;\n q = 136;\n }\n }\n else\n b = 0;\n }\n while (0);\n do\n if ((q | 0) == 136) {\n d = (0 - b) | 0;\n if (!((i >>> 0 > b >>> 0) & ((b >>> 0 < 2147483647) & ((e | 0) != (-1 | 0)))))\n if ((e | 0) == (-1 | 0)) {\n b = 0;\n break;\n }\n else {\n h = b;\n g = e;\n q = 145;\n break d;\n }\n a = c[5532] | 0;\n a = (j - b + a) & (0 - a);\n if (a >>> 0 >= 2147483647) {\n h = b;\n g = e;\n q = 145;\n break d;\n }\n if ((fr(a) | 0) == (-1 | 0)) {\n fr(d) | 0;\n b = 0;\n break;\n }\n else {\n h = (a + b) | 0;\n g = e;\n q = 145;\n break d;\n }\n }\n while (0);\n c[5523] = c[5523] | 4;\n q = 143;\n }\n else {\n b = 0;\n q = 143;\n }\n while (0);\n if (((q | 0) == 143 ? k >>> 0 < 2147483647 : 0)\n ? ((t = fr(k) | 0),\n (p = fr(0) | 0),\n (r = (p - t) | 0),\n (s = r >>> 0 > ((m + 40) | 0) >>> 0),\n !(((t | 0) == (-1 | 0)) |\n (s ^ 1) |\n (((t >>> 0 < p >>> 0) & (((t | 0) != (-1 | 0)) & ((p | 0) != (-1 | 0)))) ^ 1)))\n : 0) {\n h = s ? r : b;\n g = t;\n q = 145;\n }\n if ((q | 0) == 145) {\n b = ((c[5520] | 0) + h) | 0;\n c[5520] = b;\n if (b >>> 0 > (c[5521] | 0) >>> 0)\n c[5521] = b;\n j = c[5418] | 0;\n f: do\n if (j) {\n b = 22096;\n while (1) {\n a = c[b >> 2] | 0;\n d = c[(b + 4) >> 2] | 0;\n if ((g | 0) == ((a + d) | 0)) {\n q = 154;\n break;\n }\n e = c[(b + 8) >> 2] | 0;\n if (!e)\n break;\n else\n b = e;\n }\n if (((q | 0) == 154 ? ((u = (b + 4) | 0), ((c[(b + 12) >> 2] & 8) | 0) == 0) : 0)\n ? (g >>> 0 > j >>> 0) & (a >>> 0 <= j >>> 0)\n : 0) {\n c[u >> 2] = d + h;\n v = ((c[5415] | 0) + h) | 0;\n t = (j + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (j + t) | 0;\n t = (v - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(j + v + 4) >> 2] = 40;\n c[5419] = c[5534];\n break;\n }\n if (g >>> 0 < (c[5416] | 0) >>> 0)\n c[5416] = g;\n d = (g + h) | 0;\n b = 22096;\n while (1) {\n if ((c[b >> 2] | 0) == (d | 0)) {\n q = 162;\n break;\n }\n a = c[(b + 8) >> 2] | 0;\n if (!a)\n break;\n else\n b = a;\n }\n if ((q | 0) == 162 ? ((c[(b + 12) >> 2] & 8) | 0) == 0 : 0) {\n c[b >> 2] = g;\n l = (b + 4) | 0;\n c[l >> 2] = (c[l >> 2] | 0) + h;\n l = (g + 8) | 0;\n l = (g + (((l & 7) | 0) == 0 ? 0 : (0 - l) & 7)) | 0;\n b = (d + 8) | 0;\n b = (d + (((b & 7) | 0) == 0 ? 0 : (0 - b) & 7)) | 0;\n k = (l + m) | 0;\n i = (b - l - m) | 0;\n c[(l + 4) >> 2] = m | 3;\n g: do\n if ((j | 0) == (b | 0)) {\n v = ((c[5415] | 0) + i) | 0;\n c[5415] = v;\n c[5418] = k;\n c[(k + 4) >> 2] = v | 1;\n }\n else {\n if ((c[5417] | 0) == (b | 0)) {\n v = ((c[5414] | 0) + i) | 0;\n c[5414] = v;\n c[5417] = k;\n c[(k + 4) >> 2] = v | 1;\n c[(k + v) >> 2] = v;\n break;\n }\n a = c[(b + 4) >> 2] | 0;\n if (((a & 3) | 0) == 1) {\n h = a & -8;\n e = a >>> 3;\n h: do\n if (a >>> 0 < 256) {\n a = c[(b + 8) >> 2] | 0;\n d = c[(b + 12) >> 2] | 0;\n if ((d | 0) == (a | 0)) {\n c[5412] = c[5412] & ~(1 << e);\n break;\n }\n else {\n c[(a + 12) >> 2] = d;\n c[(d + 8) >> 2] = a;\n break;\n }\n }\n else {\n g = c[(b + 24) >> 2] | 0;\n a = c[(b + 12) >> 2] | 0;\n do\n if ((a | 0) == (b | 0)) {\n d = (b + 16) | 0;\n e = (d + 4) | 0;\n a = c[e >> 2] | 0;\n if (!a) {\n a = c[d >> 2] | 0;\n if (!a) {\n a = 0;\n break;\n }\n }\n else\n d = e;\n while (1) {\n f = (a + 20) | 0;\n e = c[f >> 2] | 0;\n if (!e) {\n f = (a + 16) | 0;\n e = c[f >> 2] | 0;\n if (!e)\n break;\n else {\n a = e;\n d = f;\n }\n }\n else {\n a = e;\n d = f;\n }\n }\n c[d >> 2] = 0;\n }\n else {\n v = c[(b + 8) >> 2] | 0;\n c[(v + 12) >> 2] = a;\n c[(a + 8) >> 2] = v;\n }\n while (0);\n if (!g)\n break;\n d = c[(b + 28) >> 2] | 0;\n e = (21952 + (d << 2)) | 0;\n do\n if ((c[e >> 2] | 0) != (b | 0)) {\n v = (g + 16) | 0;\n c[((c[v >> 2] | 0) == (b | 0) ? v : (g + 20) | 0) >> 2] = a;\n if (!a)\n break h;\n }\n else {\n c[e >> 2] = a;\n if (a | 0)\n break;\n c[5413] = c[5413] & ~(1 << d);\n break h;\n }\n while (0);\n c[(a + 24) >> 2] = g;\n d = (b + 16) | 0;\n e = c[d >> 2] | 0;\n if (e | 0) {\n c[(a + 16) >> 2] = e;\n c[(e + 24) >> 2] = a;\n }\n d = c[(d + 4) >> 2] | 0;\n if (!d)\n break;\n c[(a + 20) >> 2] = d;\n c[(d + 24) >> 2] = a;\n }\n while (0);\n b = (b + h) | 0;\n f = (h + i) | 0;\n }\n else\n f = i;\n b = (b + 4) | 0;\n c[b >> 2] = c[b >> 2] & -2;\n c[(k + 4) >> 2] = f | 1;\n c[(k + f) >> 2] = f;\n b = f >>> 3;\n if (f >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = k;\n c[(b + 12) >> 2] = k;\n c[(k + 8) >> 2] = b;\n c[(k + 12) >> 2] = d;\n break;\n }\n b = f >>> 8;\n do\n if (!b)\n e = 0;\n else {\n if (f >>> 0 > 16777215) {\n e = 31;\n break;\n }\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n e = (((v + 245760) | 0) >>> 16) & 2;\n e = (14 - (t | u | e) + ((v << e) >>> 15)) | 0;\n e = ((f >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n while (0);\n b = (21952 + (e << 2)) | 0;\n c[(k + 28) >> 2] = e;\n a = (k + 16) | 0;\n c[(a + 4) >> 2] = 0;\n c[a >> 2] = 0;\n a = c[5413] | 0;\n d = 1 << e;\n if (!(a & d)) {\n c[5413] = a | d;\n c[b >> 2] = k;\n c[(k + 24) >> 2] = b;\n c[(k + 12) >> 2] = k;\n c[(k + 8) >> 2] = k;\n break;\n }\n b = c[b >> 2] | 0;\n i: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (f | 0)) {\n e = f << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (f | 0)) {\n b = a;\n break i;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = k;\n c[(k + 24) >> 2] = b;\n c[(k + 12) >> 2] = k;\n c[(k + 8) >> 2] = k;\n break g;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = k;\n c[u >> 2] = k;\n c[(k + 8) >> 2] = v;\n c[(k + 12) >> 2] = b;\n c[(k + 24) >> 2] = 0;\n }\n while (0);\n v = (l + 8) | 0;\n V = w;\n return v | 0;\n }\n b = 22096;\n while (1) {\n a = c[b >> 2] | 0;\n if (a >>> 0 <= j >>> 0 ? ((v = (a + (c[(b + 4) >> 2] | 0)) | 0), v >>> 0 > j >>> 0) : 0)\n break;\n b = c[(b + 8) >> 2] | 0;\n }\n f = (v + -47) | 0;\n a = (f + 8) | 0;\n a = (f + (((a & 7) | 0) == 0 ? 0 : (0 - a) & 7)) | 0;\n f = (j + 16) | 0;\n a = a >>> 0 < f >>> 0 ? j : a;\n b = (a + 8) | 0;\n d = (h + -40) | 0;\n t = (g + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (g + t) | 0;\n t = (d - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(g + d + 4) >> 2] = 40;\n c[5419] = c[5534];\n d = (a + 4) | 0;\n c[d >> 2] = 27;\n c[b >> 2] = c[5524];\n c[(b + 4) >> 2] = c[5525];\n c[(b + 8) >> 2] = c[5526];\n c[(b + 12) >> 2] = c[5527];\n c[5524] = g;\n c[5525] = h;\n c[5527] = 0;\n c[5526] = b;\n b = (a + 24) | 0;\n do {\n u = b;\n b = (b + 4) | 0;\n c[b >> 2] = 7;\n } while (((u + 8) | 0) >>> 0 < v >>> 0);\n if ((a | 0) != (j | 0)) {\n g = (a - j) | 0;\n c[d >> 2] = c[d >> 2] & -2;\n c[(j + 4) >> 2] = g | 1;\n c[a >> 2] = g;\n b = g >>> 3;\n if (g >>> 0 < 256) {\n d = (21688 + ((b << 1) << 2)) | 0;\n a = c[5412] | 0;\n b = 1 << b;\n if (!(a & b)) {\n c[5412] = a | b;\n b = d;\n a = (d + 8) | 0;\n }\n else {\n a = (d + 8) | 0;\n b = c[a >> 2] | 0;\n }\n c[a >> 2] = j;\n c[(b + 12) >> 2] = j;\n c[(j + 8) >> 2] = b;\n c[(j + 12) >> 2] = d;\n break;\n }\n b = g >>> 8;\n if (b)\n if (g >>> 0 > 16777215)\n e = 31;\n else {\n u = (((b + 1048320) | 0) >>> 16) & 8;\n v = b << u;\n t = (((v + 520192) | 0) >>> 16) & 4;\n v = v << t;\n e = (((v + 245760) | 0) >>> 16) & 2;\n e = (14 - (t | u | e) + ((v << e) >>> 15)) | 0;\n e = ((g >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n else\n e = 0;\n d = (21952 + (e << 2)) | 0;\n c[(j + 28) >> 2] = e;\n c[(j + 20) >> 2] = 0;\n c[f >> 2] = 0;\n b = c[5413] | 0;\n a = 1 << e;\n if (!(b & a)) {\n c[5413] = b | a;\n c[d >> 2] = j;\n c[(j + 24) >> 2] = d;\n c[(j + 12) >> 2] = j;\n c[(j + 8) >> 2] = j;\n break;\n }\n b = c[d >> 2] | 0;\n j: do\n if (((c[(b + 4) >> 2] & -8) | 0) != (g | 0)) {\n e = g << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (b + 16 + ((e >>> 31) << 2)) | 0;\n a = c[d >> 2] | 0;\n if (!a)\n break;\n if (((c[(a + 4) >> 2] & -8) | 0) == (g | 0)) {\n b = a;\n break j;\n }\n else {\n e = e << 1;\n b = a;\n }\n }\n c[d >> 2] = j;\n c[(j + 24) >> 2] = b;\n c[(j + 12) >> 2] = j;\n c[(j + 8) >> 2] = j;\n break f;\n }\n while (0);\n u = (b + 8) | 0;\n v = c[u >> 2] | 0;\n c[(v + 12) >> 2] = j;\n c[u >> 2] = j;\n c[(j + 8) >> 2] = v;\n c[(j + 12) >> 2] = b;\n c[(j + 24) >> 2] = 0;\n }\n }\n else {\n v = c[5416] | 0;\n if (((v | 0) == 0) | (g >>> 0 < v >>> 0))\n c[5416] = g;\n c[5524] = g;\n c[5525] = h;\n c[5527] = 0;\n c[5421] = c[5530];\n c[5420] = -1;\n c[5425] = 21688;\n c[5424] = 21688;\n c[5427] = 21696;\n c[5426] = 21696;\n c[5429] = 21704;\n c[5428] = 21704;\n c[5431] = 21712;\n c[5430] = 21712;\n c[5433] = 21720;\n c[5432] = 21720;\n c[5435] = 21728;\n c[5434] = 21728;\n c[5437] = 21736;\n c[5436] = 21736;\n c[5439] = 21744;\n c[5438] = 21744;\n c[5441] = 21752;\n c[5440] = 21752;\n c[5443] = 21760;\n c[5442] = 21760;\n c[5445] = 21768;\n c[5444] = 21768;\n c[5447] = 21776;\n c[5446] = 21776;\n c[5449] = 21784;\n c[5448] = 21784;\n c[5451] = 21792;\n c[5450] = 21792;\n c[5453] = 21800;\n c[5452] = 21800;\n c[5455] = 21808;\n c[5454] = 21808;\n c[5457] = 21816;\n c[5456] = 21816;\n c[5459] = 21824;\n c[5458] = 21824;\n c[5461] = 21832;\n c[5460] = 21832;\n c[5463] = 21840;\n c[5462] = 21840;\n c[5465] = 21848;\n c[5464] = 21848;\n c[5467] = 21856;\n c[5466] = 21856;\n c[5469] = 21864;\n c[5468] = 21864;\n c[5471] = 21872;\n c[5470] = 21872;\n c[5473] = 21880;\n c[5472] = 21880;\n c[5475] = 21888;\n c[5474] = 21888;\n c[5477] = 21896;\n c[5476] = 21896;\n c[5479] = 21904;\n c[5478] = 21904;\n c[5481] = 21912;\n c[5480] = 21912;\n c[5483] = 21920;\n c[5482] = 21920;\n c[5485] = 21928;\n c[5484] = 21928;\n c[5487] = 21936;\n c[5486] = 21936;\n v = (h + -40) | 0;\n t = (g + 8) | 0;\n t = ((t & 7) | 0) == 0 ? 0 : (0 - t) & 7;\n u = (g + t) | 0;\n t = (v - t) | 0;\n c[5418] = u;\n c[5415] = t;\n c[(u + 4) >> 2] = t | 1;\n c[(g + v + 4) >> 2] = 40;\n c[5419] = c[5534];\n }\n while (0);\n b = c[5415] | 0;\n if (b >>> 0 > m >>> 0) {\n t = (b - m) | 0;\n c[5415] = t;\n v = c[5418] | 0;\n u = (v + m) | 0;\n c[5418] = u;\n c[(u + 4) >> 2] = t | 1;\n c[(v + 4) >> 2] = m | 3;\n v = (v + 8) | 0;\n V = w;\n return v | 0;\n }\n }\n c[(ao() | 0) >> 2] = 48;\n v = 0;\n V = w;\n return v | 0;\n }\n function er(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;\n if (!a)\n return;\n d = (a + -8) | 0;\n f = c[5416] | 0;\n a = c[(a + -4) >> 2] | 0;\n b = a & -8;\n j = (d + b) | 0;\n do\n if (!(a & 1)) {\n e = c[d >> 2] | 0;\n if (!(a & 3))\n return;\n h = (d + (0 - e)) | 0;\n g = (e + b) | 0;\n if (h >>> 0 < f >>> 0)\n return;\n if ((c[5417] | 0) == (h | 0)) {\n a = (j + 4) | 0;\n b = c[a >> 2] | 0;\n if (((b & 3) | 0) != 3) {\n i = h;\n b = g;\n break;\n }\n c[5414] = g;\n c[a >> 2] = b & -2;\n c[(h + 4) >> 2] = g | 1;\n c[(h + g) >> 2] = g;\n return;\n }\n d = e >>> 3;\n if (e >>> 0 < 256) {\n a = c[(h + 8) >> 2] | 0;\n b = c[(h + 12) >> 2] | 0;\n if ((b | 0) == (a | 0)) {\n c[5412] = c[5412] & ~(1 << d);\n i = h;\n b = g;\n break;\n }\n else {\n c[(a + 12) >> 2] = b;\n c[(b + 8) >> 2] = a;\n i = h;\n b = g;\n break;\n }\n }\n f = c[(h + 24) >> 2] | 0;\n a = c[(h + 12) >> 2] | 0;\n do\n if ((a | 0) == (h | 0)) {\n b = (h + 16) | 0;\n d = (b + 4) | 0;\n a = c[d >> 2] | 0;\n if (!a) {\n a = c[b >> 2] | 0;\n if (!a) {\n a = 0;\n break;\n }\n }\n else\n b = d;\n while (1) {\n e = (a + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (a + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n a = d;\n b = e;\n }\n }\n else {\n a = d;\n b = e;\n }\n }\n c[b >> 2] = 0;\n }\n else {\n i = c[(h + 8) >> 2] | 0;\n c[(i + 12) >> 2] = a;\n c[(a + 8) >> 2] = i;\n }\n while (0);\n if (f) {\n b = c[(h + 28) >> 2] | 0;\n d = (21952 + (b << 2)) | 0;\n if ((c[d >> 2] | 0) == (h | 0)) {\n c[d >> 2] = a;\n if (!a) {\n c[5413] = c[5413] & ~(1 << b);\n i = h;\n b = g;\n break;\n }\n }\n else {\n i = (f + 16) | 0;\n c[((c[i >> 2] | 0) == (h | 0) ? i : (f + 20) | 0) >> 2] = a;\n if (!a) {\n i = h;\n b = g;\n break;\n }\n }\n c[(a + 24) >> 2] = f;\n b = (h + 16) | 0;\n d = c[b >> 2] | 0;\n if (d | 0) {\n c[(a + 16) >> 2] = d;\n c[(d + 24) >> 2] = a;\n }\n b = c[(b + 4) >> 2] | 0;\n if (b) {\n c[(a + 20) >> 2] = b;\n c[(b + 24) >> 2] = a;\n i = h;\n b = g;\n }\n else {\n i = h;\n b = g;\n }\n }\n else {\n i = h;\n b = g;\n }\n }\n else {\n i = d;\n h = d;\n }\n while (0);\n if (h >>> 0 >= j >>> 0)\n return;\n a = (j + 4) | 0;\n e = c[a >> 2] | 0;\n if (!(e & 1))\n return;\n if (!(e & 2)) {\n if ((c[5418] | 0) == (j | 0)) {\n j = ((c[5415] | 0) + b) | 0;\n c[5415] = j;\n c[5418] = i;\n c[(i + 4) >> 2] = j | 1;\n if ((i | 0) != (c[5417] | 0))\n return;\n c[5417] = 0;\n c[5414] = 0;\n return;\n }\n if ((c[5417] | 0) == (j | 0)) {\n j = ((c[5414] | 0) + b) | 0;\n c[5414] = j;\n c[5417] = h;\n c[(i + 4) >> 2] = j | 1;\n c[(h + j) >> 2] = j;\n return;\n }\n f = ((e & -8) + b) | 0;\n d = e >>> 3;\n do\n if (e >>> 0 < 256) {\n b = c[(j + 8) >> 2] | 0;\n a = c[(j + 12) >> 2] | 0;\n if ((a | 0) == (b | 0)) {\n c[5412] = c[5412] & ~(1 << d);\n break;\n }\n else {\n c[(b + 12) >> 2] = a;\n c[(a + 8) >> 2] = b;\n break;\n }\n }\n else {\n g = c[(j + 24) >> 2] | 0;\n a = c[(j + 12) >> 2] | 0;\n do\n if ((a | 0) == (j | 0)) {\n b = (j + 16) | 0;\n d = (b + 4) | 0;\n a = c[d >> 2] | 0;\n if (!a) {\n a = c[b >> 2] | 0;\n if (!a) {\n d = 0;\n break;\n }\n }\n else\n b = d;\n while (1) {\n e = (a + 20) | 0;\n d = c[e >> 2] | 0;\n if (!d) {\n e = (a + 16) | 0;\n d = c[e >> 2] | 0;\n if (!d)\n break;\n else {\n a = d;\n b = e;\n }\n }\n else {\n a = d;\n b = e;\n }\n }\n c[b >> 2] = 0;\n d = a;\n }\n else {\n d = c[(j + 8) >> 2] | 0;\n c[(d + 12) >> 2] = a;\n c[(a + 8) >> 2] = d;\n d = a;\n }\n while (0);\n if (g | 0) {\n a = c[(j + 28) >> 2] | 0;\n b = (21952 + (a << 2)) | 0;\n if ((c[b >> 2] | 0) == (j | 0)) {\n c[b >> 2] = d;\n if (!d) {\n c[5413] = c[5413] & ~(1 << a);\n break;\n }\n }\n else {\n e = (g + 16) | 0;\n c[((c[e >> 2] | 0) == (j | 0) ? e : (g + 20) | 0) >> 2] = d;\n if (!d)\n break;\n }\n c[(d + 24) >> 2] = g;\n a = (j + 16) | 0;\n b = c[a >> 2] | 0;\n if (b | 0) {\n c[(d + 16) >> 2] = b;\n c[(b + 24) >> 2] = d;\n }\n a = c[(a + 4) >> 2] | 0;\n if (a | 0) {\n c[(d + 20) >> 2] = a;\n c[(a + 24) >> 2] = d;\n }\n }\n }\n while (0);\n c[(i + 4) >> 2] = f | 1;\n c[(h + f) >> 2] = f;\n if ((i | 0) == (c[5417] | 0)) {\n c[5414] = f;\n return;\n }\n }\n else {\n c[a >> 2] = e & -2;\n c[(i + 4) >> 2] = b | 1;\n c[(h + b) >> 2] = b;\n f = b;\n }\n a = f >>> 3;\n if (f >>> 0 < 256) {\n d = (21688 + ((a << 1) << 2)) | 0;\n b = c[5412] | 0;\n a = 1 << a;\n if (!(b & a)) {\n c[5412] = b | a;\n a = d;\n b = (d + 8) | 0;\n }\n else {\n b = (d + 8) | 0;\n a = c[b >> 2] | 0;\n }\n c[b >> 2] = i;\n c[(a + 12) >> 2] = i;\n c[(i + 8) >> 2] = a;\n c[(i + 12) >> 2] = d;\n return;\n }\n a = f >>> 8;\n if (a)\n if (f >>> 0 > 16777215)\n e = 31;\n else {\n h = (((a + 1048320) | 0) >>> 16) & 8;\n j = a << h;\n g = (((j + 520192) | 0) >>> 16) & 4;\n j = j << g;\n e = (((j + 245760) | 0) >>> 16) & 2;\n e = (14 - (g | h | e) + ((j << e) >>> 15)) | 0;\n e = ((f >>> ((e + 7) | 0)) & 1) | (e << 1);\n }\n else\n e = 0;\n a = (21952 + (e << 2)) | 0;\n c[(i + 28) >> 2] = e;\n c[(i + 20) >> 2] = 0;\n c[(i + 16) >> 2] = 0;\n b = c[5413] | 0;\n d = 1 << e;\n a: do\n if (!(b & d)) {\n c[5413] = b | d;\n c[a >> 2] = i;\n c[(i + 24) >> 2] = a;\n c[(i + 12) >> 2] = i;\n c[(i + 8) >> 2] = i;\n }\n else {\n a = c[a >> 2] | 0;\n b: do\n if (((c[(a + 4) >> 2] & -8) | 0) != (f | 0)) {\n e = f << ((e | 0) == 31 ? 0 : (25 - (e >>> 1)) | 0);\n while (1) {\n d = (a + 16 + ((e >>> 31) << 2)) | 0;\n b = c[d >> 2] | 0;\n if (!b)\n break;\n if (((c[(b + 4) >> 2] & -8) | 0) == (f | 0)) {\n a = b;\n break b;\n }\n else {\n e = e << 1;\n a = b;\n }\n }\n c[d >> 2] = i;\n c[(i + 24) >> 2] = a;\n c[(i + 12) >> 2] = i;\n c[(i + 8) >> 2] = i;\n break a;\n }\n while (0);\n h = (a + 8) | 0;\n j = c[h >> 2] | 0;\n c[(j + 12) >> 2] = i;\n c[h >> 2] = i;\n c[(i + 8) >> 2] = j;\n c[(i + 12) >> 2] = a;\n c[(i + 24) >> 2] = 0;\n }\n while (0);\n j = ((c[5420] | 0) + -1) | 0;\n c[5420] = j;\n if (j | 0)\n return;\n a = 22104;\n while (1) {\n a = c[a >> 2] | 0;\n if (!a)\n break;\n else\n a = (a + 8) | 0;\n }\n c[5420] = -1;\n return;\n }\n function fr(a) {\n a = a | 0;\n var b = 0, d = 0, e = 0;\n e = (a + 3) & -4;\n a = sr() | 0;\n b = c[a >> 2] | 0;\n d = (b + e) | 0;\n do\n if (((e | 0) < 1) | (d >>> 0 > b >>> 0)) {\n if (d >>> 0 > (R() | 0) >>> 0 ? (T(d | 0) | 0) == 0 : 0)\n break;\n c[a >> 2] = d;\n e = b;\n return e | 0;\n }\n while (0);\n c[(ao() | 0) >> 2] = 48;\n e = -1;\n return e | 0;\n }\n function gr(a) {\n a = a | 0;\n var b = 0;\n b = V;\n V = (V + a) | 0;\n V = (V + 15) & -16;\n return b | 0;\n }\n function hr(a) {\n a = a | 0;\n V = a;\n }\n function ir() {\n return V | 0;\n }\n function jr(a, b) {\n a = a | 0;\n b = b | 0;\n var c = 0, d = 0, e = 0, f = 0;\n f = a & 65535;\n e = b & 65535;\n c = q(e, f) | 0;\n d = a >>> 16;\n a = ((c >>> 16) + (q(e, d) | 0)) | 0;\n e = b >>> 16;\n b = q(e, f) | 0;\n return ((t(((a >>> 16) + (q(e, d) | 0) + ((((a & 65535) + b) | 0) >>> 16)) | 0),\n ((a + b) << 16) | (c & 65535) | 0) | 0);\n }\n function kr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0, f = 0;\n e = a;\n f = c;\n c = jr(e, f) | 0;\n a = u() | 0;\n return (t(((q(b, f) | 0) + (q(d, e) | 0) + a) | (a & 0) | 0), c | 0 | 0) | 0;\n }\n function lr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n c = (a + c) >>> 0;\n return (t(((b + d + ((c >>> 0 < a >>> 0) | 0)) >>> 0) | 0), c | 0) | 0;\n }\n function mr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n d = (b - d - ((c >>> 0 > a >>> 0) | 0)) >>> 0;\n return (t(d | 0), ((a - c) >>> 0) | 0) | 0;\n }\n function nr(a) {\n a = a | 0;\n return (a ? (31 - (r(a ^ (a - 1)) | 0)) | 0 : 32) | 0;\n }\n function or(a, b, d, e, f) {\n a = a | 0;\n b = b | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n var g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0, p = 0;\n l = a;\n j = b;\n k = j;\n h = d;\n n = e;\n i = n;\n if (!k) {\n g = (f | 0) != 0;\n if (!i) {\n if (g) {\n c[f >> 2] = (l >>> 0) % (h >>> 0);\n c[(f + 4) >> 2] = 0;\n }\n n = 0;\n f = ((l >>> 0) / (h >>> 0)) >>> 0;\n return (t(n | 0), f) | 0;\n }\n else {\n if (!g) {\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = b & 0;\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n }\n g = (i | 0) == 0;\n do\n if (h) {\n if (!g) {\n g = ((r(i | 0) | 0) - (r(k | 0) | 0)) | 0;\n if (g >>> 0 <= 31) {\n m = (g + 1) | 0;\n i = (31 - g) | 0;\n b = (g - 31) >> 31;\n h = m;\n a = ((l >>> (m >>> 0)) & b) | (k << i);\n b = (k >>> (m >>> 0)) & b;\n g = 0;\n i = l << i;\n break;\n }\n if (!f) {\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = j | (b & 0);\n n = 0;\n f = 0;\n return (t(n | 0), f) | 0;\n }\n g = (h - 1) | 0;\n if ((g & h) | 0) {\n i = ((r(h | 0) | 0) + 33 - (r(k | 0) | 0)) | 0;\n p = (64 - i) | 0;\n m = (32 - i) | 0;\n j = m >> 31;\n o = (i - 32) | 0;\n b = o >> 31;\n h = i;\n a = (((m - 1) >> 31) & (k >>> (o >>> 0))) | (((k << m) | (l >>> (i >>> 0))) & b);\n b = b & (k >>> (i >>> 0));\n g = (l << p) & j;\n i = (((k << p) | (l >>> (o >>> 0))) & j) | ((l << m) & ((i - 33) >> 31));\n break;\n }\n if (f | 0) {\n c[f >> 2] = g & l;\n c[(f + 4) >> 2] = 0;\n }\n if ((h | 0) == 1) {\n o = j | (b & 0);\n p = a | 0 | 0;\n return (t(o | 0), p) | 0;\n }\n else {\n p = nr(h | 0) | 0;\n o = (k >>> (p >>> 0)) | 0;\n p = (k << (32 - p)) | (l >>> (p >>> 0)) | 0;\n return (t(o | 0), p) | 0;\n }\n }\n else {\n if (g) {\n if (f | 0) {\n c[f >> 2] = (k >>> 0) % (h >>> 0);\n c[(f + 4) >> 2] = 0;\n }\n o = 0;\n p = ((k >>> 0) / (h >>> 0)) >>> 0;\n return (t(o | 0), p) | 0;\n }\n if (!l) {\n if (f | 0) {\n c[f >> 2] = 0;\n c[(f + 4) >> 2] = (k >>> 0) % (i >>> 0);\n }\n o = 0;\n p = ((k >>> 0) / (i >>> 0)) >>> 0;\n return (t(o | 0), p) | 0;\n }\n g = (i - 1) | 0;\n if (!(g & i)) {\n if (f | 0) {\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = (g & k) | (b & 0);\n }\n o = 0;\n p = k >>> ((nr(i | 0) | 0) >>> 0);\n return (t(o | 0), p) | 0;\n }\n g = ((r(i | 0) | 0) - (r(k | 0) | 0)) | 0;\n if (g >>> 0 <= 30) {\n b = (g + 1) | 0;\n i = (31 - g) | 0;\n h = b;\n a = (k << i) | (l >>> (b >>> 0));\n b = k >>> (b >>> 0);\n g = 0;\n i = l << i;\n break;\n }\n if (!f) {\n o = 0;\n p = 0;\n return (t(o | 0), p) | 0;\n }\n c[f >> 2] = a | 0;\n c[(f + 4) >> 2] = j | (b & 0);\n o = 0;\n p = 0;\n return (t(o | 0), p) | 0;\n }\n while (0);\n if (!h) {\n k = i;\n j = 0;\n i = 0;\n }\n else {\n m = d | 0 | 0;\n l = n | (e & 0);\n k = lr(m | 0, l | 0, -1, -1) | 0;\n d = u() | 0;\n j = i;\n i = 0;\n do {\n e = j;\n j = (g >>> 31) | (j << 1);\n g = i | (g << 1);\n e = (a << 1) | (e >>> 31) | 0;\n n = (a >>> 31) | (b << 1) | 0;\n mr(k | 0, d | 0, e | 0, n | 0) | 0;\n p = u() | 0;\n o = (p >> 31) | (((p | 0) < 0 ? -1 : 0) << 1);\n i = o & 1;\n a =\n mr(e | 0, n | 0, (o & m) | 0, (((((p | 0) < 0 ? -1 : 0) >> 31) | (((p | 0) < 0 ? -1 : 0) << 1)) & l) | 0) | 0;\n b = u() | 0;\n h = (h - 1) | 0;\n } while ((h | 0) != 0);\n k = j;\n j = 0;\n }\n h = 0;\n if (f | 0) {\n c[f >> 2] = a;\n c[(f + 4) >> 2] = b;\n }\n o = ((g | 0) >>> 31) | ((k | h) << 1) | (((h << 1) | (g >>> 31)) & 0) | j;\n p = (((g << 1) | (0 >>> 31)) & -2) | i;\n return (t(o | 0), p) | 0;\n }\n function pr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n return or(a, b, c, d, 0) | 0;\n }\n function qr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) < 32) {\n t((b >>> c) | 0);\n return (a >>> c) | ((b & ((1 << c) - 1)) << (32 - c));\n }\n t(0);\n return (b >>> (c - 32)) | 0;\n }\n function rr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n if ((c | 0) < 32) {\n t((b << c) | ((a & (((1 << c) - 1) << (32 - c))) >>> (32 - c)) | 0);\n return a << c;\n }\n t((a << (c - 32)) | 0);\n return 0;\n }\n function sr() {\n return 22176;\n }\n function tr(a) {\n a = a | 0;\n return (((a & 255) << 24) | (((a >> 8) & 255) << 16) | (((a >> 16) & 255) << 8) | (a >>> 24) | 0);\n }\n function ur(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0;\n if ((e | 0) >= 512) {\n S(b | 0, d | 0, e | 0) | 0;\n return b | 0;\n }\n h = b | 0;\n g = (b + e) | 0;\n if ((b & 3) == (d & 3)) {\n while (b & 3) {\n if (!e)\n return h | 0;\n a[b >> 0] = a[d >> 0] | 0;\n b = (b + 1) | 0;\n d = (d + 1) | 0;\n e = (e - 1) | 0;\n }\n e = (g & -4) | 0;\n f = (e - 64) | 0;\n while ((b | 0) <= (f | 0)) {\n c[b >> 2] = c[d >> 2];\n c[(b + 4) >> 2] = c[(d + 4) >> 2];\n c[(b + 8) >> 2] = c[(d + 8) >> 2];\n c[(b + 12) >> 2] = c[(d + 12) >> 2];\n c[(b + 16) >> 2] = c[(d + 16) >> 2];\n c[(b + 20) >> 2] = c[(d + 20) >> 2];\n c[(b + 24) >> 2] = c[(d + 24) >> 2];\n c[(b + 28) >> 2] = c[(d + 28) >> 2];\n c[(b + 32) >> 2] = c[(d + 32) >> 2];\n c[(b + 36) >> 2] = c[(d + 36) >> 2];\n c[(b + 40) >> 2] = c[(d + 40) >> 2];\n c[(b + 44) >> 2] = c[(d + 44) >> 2];\n c[(b + 48) >> 2] = c[(d + 48) >> 2];\n c[(b + 52) >> 2] = c[(d + 52) >> 2];\n c[(b + 56) >> 2] = c[(d + 56) >> 2];\n c[(b + 60) >> 2] = c[(d + 60) >> 2];\n b = (b + 64) | 0;\n d = (d + 64) | 0;\n }\n while ((b | 0) < (e | 0)) {\n c[b >> 2] = c[d >> 2];\n b = (b + 4) | 0;\n d = (d + 4) | 0;\n }\n }\n else {\n e = (g - 4) | 0;\n while ((b | 0) < (e | 0)) {\n a[b >> 0] = a[d >> 0] | 0;\n a[(b + 1) >> 0] = a[(d + 1) >> 0] | 0;\n a[(b + 2) >> 0] = a[(d + 2) >> 0] | 0;\n a[(b + 3) >> 0] = a[(d + 3) >> 0] | 0;\n b = (b + 4) | 0;\n d = (d + 4) | 0;\n }\n }\n while ((b | 0) < (g | 0)) {\n a[b >> 0] = a[d >> 0] | 0;\n b = (b + 1) | 0;\n d = (d + 1) | 0;\n }\n return h | 0;\n }\n function vr(b, c, d) {\n b = b | 0;\n c = c | 0;\n d = d | 0;\n var e = 0;\n if (((c | 0) < (b | 0)) & ((b | 0) < ((c + d) | 0))) {\n e = b;\n c = (c + d) | 0;\n b = (b + d) | 0;\n while ((d | 0) > 0) {\n b = (b - 1) | 0;\n c = (c - 1) | 0;\n d = (d - 1) | 0;\n a[b >> 0] = a[c >> 0] | 0;\n }\n b = e;\n }\n else\n ur(b, c, d) | 0;\n return b | 0;\n }\n function wr(b, d, e) {\n b = b | 0;\n d = d | 0;\n e = e | 0;\n var f = 0, g = 0, h = 0, i = 0;\n h = (b + e) | 0;\n d = d & 255;\n if ((e | 0) >= 67) {\n while (b & 3) {\n a[b >> 0] = d;\n b = (b + 1) | 0;\n }\n f = (h & -4) | 0;\n i = d | (d << 8) | (d << 16) | (d << 24);\n g = (f - 64) | 0;\n while ((b | 0) <= (g | 0)) {\n c[b >> 2] = i;\n c[(b + 4) >> 2] = i;\n c[(b + 8) >> 2] = i;\n c[(b + 12) >> 2] = i;\n c[(b + 16) >> 2] = i;\n c[(b + 20) >> 2] = i;\n c[(b + 24) >> 2] = i;\n c[(b + 28) >> 2] = i;\n c[(b + 32) >> 2] = i;\n c[(b + 36) >> 2] = i;\n c[(b + 40) >> 2] = i;\n c[(b + 44) >> 2] = i;\n c[(b + 48) >> 2] = i;\n c[(b + 52) >> 2] = i;\n c[(b + 56) >> 2] = i;\n c[(b + 60) >> 2] = i;\n b = (b + 64) | 0;\n }\n while ((b | 0) < (f | 0)) {\n c[b >> 2] = i;\n b = (b + 4) | 0;\n }\n }\n while ((b | 0) < (h | 0)) {\n a[b >> 0] = d;\n b = (b + 1) | 0;\n }\n return (h - e) | 0;\n }\n function xr(a) {\n a = a | 0;\n return Y[a & 3]() | 0;\n }\n function yr(a, b) {\n a = a | 0;\n b = b | 0;\n return Z[a & 15](b | 0) | 0;\n }\n function zr(a, b, c, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n c = +c;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n return _[a & 1](b | 0, +c, d | 0, e | 0, f | 0, g | 0) | 0;\n }\n function Ar(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n return $[a & 63](b | 0, c | 0) | 0;\n }\n function Br(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n return aa[a & 7](b | 0, c | 0, d | 0) | 0;\n }\n function Cr(a) {\n a = a | 0;\n ba[a & 3]();\n }\n function Dr(a, b) {\n a = a | 0;\n b = b | 0;\n ca[a & 255](b | 0);\n }\n function Er(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n da[a & 15](b | 0, c | 0);\n }\n function Fr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n ea[a & 15](b | 0, c | 0, d | 0);\n }\n function Gr(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n fa[a & 7](b | 0, c | 0, d | 0, e | 0);\n }\n function Hr(a, b, c, d, e, f) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n ga[a & 3](b | 0, c | 0, d | 0, e | 0, f | 0);\n }\n function Ir(a, b, c, d, e, f, g) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n g = g | 0;\n ha[a & 3](b | 0, c | 0, d | 0, e | 0, f | 0, g | 0);\n }\n function Jr() {\n s(0);\n return 0;\n }\n function Kr(a) {\n a = a | 0;\n s(1);\n return 0;\n }\n function Lr(a, b, c, d, e, f) {\n a = a | 0;\n b = +b;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n s(2);\n return 0;\n }\n function Mr(a, b) {\n a = a | 0;\n b = b | 0;\n s(3);\n return 0;\n }\n function Nr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n s(4);\n return 0;\n }\n function Or() {\n s(5);\n }\n function Pr(a) {\n a = a | 0;\n s(6);\n }\n function Qr(a, b) {\n a = a | 0;\n b = b | 0;\n s(7);\n }\n function Rr(a, b, c) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n s(8);\n }\n function Sr(a, b, c, d) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n s(9);\n }\n function Tr(a, b, c, d, e) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n s(10);\n }\n function Ur(a, b, c, d, e, f) {\n a = a | 0;\n b = b | 0;\n c = c | 0;\n d = d | 0;\n e = e | 0;\n f = f | 0;\n s(11);\n }\n // EMSCRIPTEN_END_FUNCS\n var Y = [Jr, Mk, Fl, Jr];\n var Z = [Kr, Ap, zb, Fb, qp, tp, oq, Kq, Tq, wk, na, tl, Ok, Hl, Kr, Kr];\n var _ = [Lr, po];\n var $ = [\n Mr,\n Ba,\n Ka,\n Eb,\n jd,\n Nd,\n Xd,\n je,\n ke,\n ne,\n _e,\n ff,\n yf,\n Ff,\n Of,\n Vf,\n Hg,\n Qg,\n Zg,\n ch,\n lh,\n qh,\n zh,\n Eh,\n Nh,\n _h,\n fi,\n ki,\n si,\n Bi,\n Si,\n Zi,\n fj,\n oj,\n yj,\n Fj,\n Pj,\n Yj,\n ek,\n lk,\n tk,\n ll,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr,\n Mr\n ];\n var aa = [Nr, Io, Yo, Fp, Hp, Mq, Nq, Nr];\n var ba = [Or, Dp, Po, Or];\n var ca = [\n Pr,\n pq,\n za,\n Aa,\n Ca,\n Ia,\n Ja,\n La,\n yp,\n ob,\n Gb,\n yb,\n Bb,\n Cb,\n Lb,\n Mb,\n Xb,\n Yb,\n sc,\n tc,\n uc,\n Nc,\n hd,\n id,\n kd,\n Jd,\n Od,\n Pd,\n Qd,\n Rd,\n Vd,\n Wd,\n Yd,\n he,\n ie,\n le,\n me,\n Ye,\n Ze,\n $e,\n df,\n ef,\n wf,\n xf,\n zf,\n Df,\n Ef,\n Mf,\n Nf,\n Pf,\n Tf,\n Uf,\n Fg,\n Gg,\n Ig,\n Rg,\n Sg,\n Xg,\n Yg,\n _g,\n dh,\n eh,\n jh,\n kh,\n mh,\n rh,\n sh,\n xh,\n yh,\n Ah,\n Fh,\n Gh,\n Lh,\n Mh,\n Oh,\n Yh,\n Zh,\n $h,\n di,\n ei,\n gi,\n li,\n mi,\n qi,\n ri,\n ti,\n zi,\n Ai,\n Qi,\n Ri,\n Ti,\n Xi,\n Yi,\n dj,\n ej,\n gj,\n mj,\n nj,\n wj,\n xj,\n zj,\n Dj,\n Ej,\n Nj,\n Oj,\n Qj,\n Wj,\n Xj,\n ck,\n dk,\n fk,\n jk,\n kk,\n rk,\n sk,\n uk,\n Uo,\n Vo,\n Wo,\n Xo,\n fp,\n op,\n pp,\n rp,\n sp,\n zp,\n Bp,\n Cp,\n Ep,\n Gp,\n Lp,\n mq,\n nq,\n Iq,\n Jq,\n Sq,\n Yq,\n Zq,\n zk,\n wl,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr,\n Pr\n ];\n var da = [Qr, Ab, Db, ma, pa, qa, ra, sa, qo, Qr, Qr, Qr, Qr, Qr, Qr, Qr];\n var ea = [Rr, Lq, Oq, Uq, Vq, la, oa, dl, Vl, $l, Rr, Rr, Rr, Rr, Rr, Rr];\n var fa = [Sr, $o, ip, Op, Vk, Ol, Sr, Sr];\n var ga = [Tr, _o, hp, Np];\n var ha = [Ur, Zo, gp, Mp];\n return {\n __ZSt18uncaught_exceptionv: kq,\n ___cxa_can_catch: hq,\n ___cxa_is_pointer_type: iq,\n ___embind_register_native_and_builtin_types: im,\n ___errno_location: ao,\n ___getTypeName: $n,\n ___muldi3: kr,\n ___udivdi3: pr,\n _bitshift64Lshr: qr,\n _bitshift64Shl: rr,\n _emscripten_get_sbrk_ptr: sr,\n _free: er,\n _i64Add: lr,\n _i64Subtract: mr,\n _llvm_bswap_i32: tr,\n _malloc: dr,\n _memcpy: ur,\n _memmove: vr,\n _memset: wr,\n dynCall_i: xr,\n dynCall_ii: yr,\n dynCall_iidiiii: zr,\n dynCall_iii: Ar,\n dynCall_iiii: Br,\n dynCall_v: Cr,\n dynCall_vi: Dr,\n dynCall_vii: Er,\n dynCall_viii: Fr,\n dynCall_viiii: Gr,\n dynCall_viiiii: Hr,\n dynCall_viiiiii: Ir,\n globalCtors: ia,\n stackAlloc: gr,\n stackRestore: hr,\n stackSave: ir\n };\n })(\n // EMSCRIPTEN_END_ASM\n asmGlobalArg, asmLibraryArg, buffer);\n var __ZSt18uncaught_exceptionv = (Module['__ZSt18uncaught_exceptionv'] =\n asm['__ZSt18uncaught_exceptionv']);\n var ___cxa_can_catch = (Module['___cxa_can_catch'] = asm['___cxa_can_catch']);\n var ___cxa_is_pointer_type = (Module['___cxa_is_pointer_type'] = asm['___cxa_is_pointer_type']);\n var ___embind_register_native_and_builtin_types = (Module['___embind_register_native_and_builtin_types'] = asm['___embind_register_native_and_builtin_types']);\n var ___errno_location = (Module['___errno_location'] = asm['___errno_location']);\n var ___getTypeName = (Module['___getTypeName'] = asm['___getTypeName']);\n var ___muldi3 = (Module['___muldi3'] = asm['___muldi3']);\n var ___udivdi3 = (Module['___udivdi3'] = asm['___udivdi3']);\n var _bitshift64Lshr = (Module['_bitshift64Lshr'] = asm['_bitshift64Lshr']);\n var _bitshift64Shl = (Module['_bitshift64Shl'] = asm['_bitshift64Shl']);\n var _emscripten_get_sbrk_ptr = (Module['_emscripten_get_sbrk_ptr'] =\n asm['_emscripten_get_sbrk_ptr']);\n var _free = (Module['_free'] = asm['_free']);\n var _i64Add = (Module['_i64Add'] = asm['_i64Add']);\n var _i64Subtract = (Module['_i64Subtract'] = asm['_i64Subtract']);\n var _llvm_bswap_i32 = (Module['_llvm_bswap_i32'] = asm['_llvm_bswap_i32']);\n var _malloc = (Module['_malloc'] = asm['_malloc']);\n var _memcpy = (Module['_memcpy'] = asm['_memcpy']);\n var _memmove = (Module['_memmove'] = asm['_memmove']);\n var _memset = (Module['_memset'] = asm['_memset']);\n var globalCtors = (Module['globalCtors'] = asm['globalCtors']);\n var stackAlloc = (Module['stackAlloc'] = asm['stackAlloc']);\n var stackRestore = (Module['stackRestore'] = asm['stackRestore']);\n var stackSave = (Module['stackSave'] = asm['stackSave']);\n var dynCall_i = (Module['dynCall_i'] = asm['dynCall_i']);\n var dynCall_ii = (Module['dynCall_ii'] = asm['dynCall_ii']);\n var dynCall_iidiiii = (Module['dynCall_iidiiii'] = asm['dynCall_iidiiii']);\n var dynCall_iii = (Module['dynCall_iii'] = asm['dynCall_iii']);\n var dynCall_iiii = (Module['dynCall_iiii'] = asm['dynCall_iiii']);\n var dynCall_v = (Module['dynCall_v'] = asm['dynCall_v']);\n var dynCall_vi = (Module['dynCall_vi'] = asm['dynCall_vi']);\n var dynCall_vii = (Module['dynCall_vii'] = asm['dynCall_vii']);\n var dynCall_viii = (Module['dynCall_viii'] = asm['dynCall_viii']);\n var dynCall_viiii = (Module['dynCall_viiii'] = asm['dynCall_viiii']);\n var dynCall_viiiii = (Module['dynCall_viiiii'] = asm['dynCall_viiiii']);\n var dynCall_viiiiii = (Module['dynCall_viiiiii'] = asm['dynCall_viiiiii']);\n Module['asm'] = asm;\n if (memoryInitializer) {\n if (!isDataURI(memoryInitializer)) {\n memoryInitializer = locateFile(memoryInitializer);\n }\n if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) {\n var data = readBinary(memoryInitializer);\n HEAPU8.set(data, GLOBAL_BASE);\n }\n else {\n addRunDependency('memory initializer');\n var applyMemoryInitializer = function (data) {\n if (data.byteLength)\n data = new Uint8Array(data);\n HEAPU8.set(data, GLOBAL_BASE);\n if (Module['memoryInitializerRequest'])\n delete Module['memoryInitializerRequest'].response;\n removeRunDependency('memory initializer');\n };\n var doBrowserLoad = function () {\n readAsync(memoryInitializer, applyMemoryInitializer, function () {\n var e = new Error('could not load memory initializer ' + memoryInitializer);\n throw e;\n });\n };\n var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer);\n if (memoryInitializerBytes) {\n applyMemoryInitializer(memoryInitializerBytes.buffer);\n }\n else if (Module['memoryInitializerRequest']) {\n var useRequest = function () {\n var request = Module['memoryInitializerRequest'];\n var response = request.response;\n if (request.status !== 200 && request.status !== 0) {\n var data = tryParseAsDataURI(Module['memoryInitializerRequestURL']);\n if (data) {\n response = data.buffer;\n }\n else {\n console.warn('a problem seems to have happened with Module.memoryInitializerRequest, status: ' +\n request.status +\n ', retrying ' +\n memoryInitializer);\n doBrowserLoad();\n return;\n }\n }\n applyMemoryInitializer(response);\n };\n if (Module['memoryInitializerRequest'].response) {\n setTimeout(useRequest, 0);\n }\n else {\n Module['memoryInitializerRequest'].addEventListener('load', useRequest);\n }\n }\n else {\n doBrowserLoad();\n }\n }\n }\n var calledRun;\n function ExitStatus(status) {\n this.name = 'ExitStatus';\n this.message = 'Program terminated with exit(' + status + ')';\n this.status = status;\n }\n dependenciesFulfilled = function runCaller() {\n if (!calledRun)\n run();\n if (!calledRun)\n dependenciesFulfilled = runCaller;\n };\n function run(args) {\n args = args || arguments_;\n if (runDependencies > 0) {\n return;\n }\n preRun();\n if (runDependencies > 0)\n return;\n function doRun() {\n if (calledRun)\n return;\n calledRun = true;\n Module['calledRun'] = true;\n if (ABORT)\n return;\n initRuntime();\n preMain();\n if (Module['onRuntimeInitialized'])\n Module['onRuntimeInitialized']();\n postRun();\n }\n if (Module['setStatus']) {\n Module['setStatus']('Running...');\n setTimeout(function () {\n setTimeout(function () {\n Module['setStatus']('');\n }, 1);\n doRun();\n }, 1);\n }\n else {\n doRun();\n }\n }\n Module['run'] = run;\n if (Module['preInit']) {\n if (typeof Module['preInit'] == 'function')\n Module['preInit'] = [Module['preInit']];\n while (Module['preInit'].length > 0) {\n Module['preInit'].pop()();\n }\n }\n noExitRuntime = true;\n run();\n return Module;\n}\n", "import getModule from \"./libs/laz-perf.js\";\nlet Module = null;\nconst POINT_FORMAT_READERS = {\n 0: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15)\n };\n },\n 1: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15)\n };\n },\n 2: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15),\n color: [dv.getUint16(20, true), dv.getUint16(22, true), dv.getUint16(24, true)]\n };\n },\n 3: (dv) => {\n return {\n position: [dv.getInt32(0, true), dv.getInt32(4, true), dv.getInt32(8, true)],\n intensity: dv.getUint16(12, true),\n classification: dv.getUint8(15),\n color: [dv.getUint16(28, true), dv.getUint16(30, true), dv.getUint16(32, true)]\n };\n }\n};\n/**\n * Reads incoming binary data depends on the Type parameter\n * @param buf\n * @param Type\n * @param offset\n * @param count\n * @returns number | number[] from incoming binary data\n */\nfunction readAs(buf, Type = {}, offset, count) {\n count = count === undefined || count === 0 ? 1 : count;\n const sub = buf.slice(offset, offset + Type.BYTES_PER_ELEMENT * count);\n const r = new Type(sub);\n if (count === 1) {\n return r[0];\n }\n const ret = [];\n for (let i = 0; i < count; i++) {\n ret.push(r[i]);\n }\n return ret;\n}\n/**\n * Parsing of header's attributes\n * @param arraybuffer\n * @returns header as LASHeader\n */\nfunction parseLASHeader(arraybuffer) {\n let start = 32 * 3 + 35;\n const o = {\n pointsOffset: readAs(arraybuffer, Uint32Array, 32 * 3),\n pointsFormatId: readAs(arraybuffer, Uint8Array, 32 * 3 + 8),\n pointsStructSize: readAs(arraybuffer, Uint16Array, 32 * 3 + 8 + 1),\n pointsCount: readAs(arraybuffer, Uint32Array, 32 * 3 + 11),\n scale: readAs(arraybuffer, Float64Array, start, 3)\n };\n start += 24; // 8*3\n o.offset = readAs(arraybuffer, Float64Array, start, 3);\n start += 24;\n const bounds = readAs(arraybuffer, Float64Array, start, 6);\n start += 48; // 8*6;\n o.maxs = [bounds[0], bounds[2], bounds[4]];\n o.mins = [bounds[1], bounds[3], bounds[5]];\n return o;\n}\n// LAS Loader\n// Loads uncompressed files\n//\nclass LASLoader {\n arraybuffer;\n readOffset = 0;\n header = {\n pointsOffset: 0,\n pointsFormatId: 0,\n pointsStructSize: 0,\n pointsCount: 0,\n scale: [0, 0, 0],\n offset: [0, 0, 0],\n maxs: [0],\n mins: [0],\n totalToRead: 0,\n totalRead: 0,\n versionAsString: '',\n isCompressed: true\n };\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n }\n /**\n * @returns boolean\n */\n open() {\n // Nothing needs to be done to open this\n return true;\n }\n /**\n * Parsing of incoming binary\n * @returns LASHeader\n */\n getHeader() {\n this.header = parseLASHeader(this.arraybuffer);\n return this.header;\n }\n /**\n * Reading data\n * @param count\n * @param skip\n * @returns new ArrayBuffer, count, hasMoreData\n */\n readData(count, skip) {\n const { header, arraybuffer } = this;\n if (!header) {\n throw new Error('Cannot start reading data till a header request is issued');\n }\n let { readOffset } = this;\n let start;\n if (skip <= 1) {\n count = Math.min(count, header.pointsCount - readOffset);\n start = header.pointsOffset + readOffset * header.pointsStructSize;\n const end = start + count * header.pointsStructSize;\n readOffset += count;\n this.readOffset = readOffset;\n return {\n buffer: arraybuffer.slice(start, end),\n count,\n hasMoreData: readOffset < header.pointsCount\n };\n }\n const pointsToRead = Math.min(count * skip, header.pointsCount - readOffset);\n const bufferSize = Math.ceil(pointsToRead / skip);\n let pointsRead = 0;\n const buf = new Uint8Array(bufferSize * header.pointsStructSize);\n for (let i = 0; i < pointsToRead; i++) {\n if (i % skip === 0) {\n start = header.pointsOffset + readOffset * header.pointsStructSize;\n const src = new Uint8Array(arraybuffer, start, header.pointsStructSize);\n buf.set(src, pointsRead * header.pointsStructSize);\n pointsRead++;\n }\n readOffset++;\n }\n this.readOffset = readOffset;\n return {\n buffer: buf.buffer,\n count: pointsRead,\n hasMoreData: readOffset < header.pointsCount\n };\n }\n /**\n * Method which brings data to null to close the file\n * @returns\n */\n close() {\n // @ts-ignore Possibly null\n this.arraybuffer = null;\n return true;\n }\n}\n/**\n * LAZ Loader\n * Uses NaCL module to load LAZ files\n */\nclass LAZLoader {\n arraybuffer;\n instance = null; // LASZip instance\n header = null;\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n if (!Module) {\n // Avoid executing laz-perf on import\n Module = getModule();\n }\n }\n /**\n * Opens the file\n * @returns boolean\n */\n open() {\n try {\n const { arraybuffer } = this;\n this.instance = new Module.LASZip();\n const abInt = new Uint8Array(arraybuffer);\n const buf = Module._malloc(arraybuffer.byteLength);\n this.instance.arraybuffer = arraybuffer;\n this.instance.buf = buf;\n Module.HEAPU8.set(abInt, buf);\n this.instance.open(buf, arraybuffer.byteLength);\n this.instance.readOffset = 0;\n return true;\n }\n catch (error) {\n throw new Error(`Failed to open file: ${error.message}`);\n }\n }\n getHeader() {\n if (!this.instance) {\n throw new Error('You need to open the file before trying to read header');\n }\n try {\n const header = parseLASHeader(this.instance.arraybuffer);\n header.pointsFormatId &= 0x3f;\n this.header = header;\n return header;\n }\n catch (error) {\n throw new Error(`Failed to get header: ${error.message}`);\n }\n }\n /**\n * @param count\n * @param offset\n * @param skip\n * @returns Data\n */\n readData(count, offset, skip) {\n if (!this.instance) {\n throw new Error('You need to open the file before trying to read stuff');\n }\n const { header, instance } = this;\n if (!header) {\n throw new Error('You need to query header before reading, I maintain state that way, sorry :(');\n }\n try {\n const pointsToRead = Math.min(count * skip, header.pointsCount - instance.readOffset);\n const bufferSize = Math.ceil(pointsToRead / skip);\n let pointsRead = 0;\n const thisBuf = new Uint8Array(bufferSize * header.pointsStructSize);\n const bufRead = Module._malloc(header.pointsStructSize);\n for (let i = 0; i < pointsToRead; i++) {\n instance.getPoint(bufRead);\n if (i % skip === 0) {\n const a = new Uint8Array(Module.HEAPU8.buffer, bufRead, header.pointsStructSize);\n thisBuf.set(a, pointsRead * header.pointsStructSize);\n pointsRead++;\n }\n instance.readOffset++;\n }\n Module._free(bufRead);\n return {\n buffer: thisBuf.buffer,\n count: pointsRead,\n hasMoreData: instance.readOffset < header.pointsCount\n };\n }\n catch (error) {\n throw new Error(`Failed to read data: ${error.message}`);\n }\n }\n /**\n * Deletes the instance\n * @returns boolean\n */\n close() {\n try {\n if (this.instance !== null) {\n Module._free(this.instance.buf);\n this.instance.delete();\n this.instance = null;\n }\n return true;\n }\n catch (error) {\n throw new Error(`Failed to close file: ${error.message}`);\n }\n }\n}\n/**\n * Helper class: Decodes LAS records into points\n */\nclass LASDecoder {\n arrayb;\n decoder;\n pointsCount;\n pointSize;\n scale;\n offset;\n mins;\n maxs;\n constructor(buffer, len, header) {\n this.arrayb = buffer;\n this.decoder = POINT_FORMAT_READERS[header.pointsFormatId];\n this.pointsCount = len;\n this.pointSize = header.pointsStructSize;\n this.scale = header.scale;\n this.offset = header.offset;\n this.mins = header.mins;\n this.maxs = header.maxs;\n }\n /**\n * Decodes data depends on this point size\n * @param index\n * @returns New object\n */\n getPoint(index) {\n if (index < 0 || index >= this.pointsCount) {\n throw new Error('Point index out of range');\n }\n const dv = new DataView(this.arrayb, index * this.pointSize, this.pointSize);\n return this.decoder(dv);\n }\n}\n/**\n * A single consistent interface for loading LAS/LAZ files\n */\nexport class LASFile {\n arraybuffer;\n formatId = 0;\n loader;\n isCompressed = true;\n isOpen = false;\n version = 0;\n versionAsString = '';\n constructor(arraybuffer) {\n this.arraybuffer = arraybuffer;\n if (this.determineVersion() > 13) {\n throw new Error('Only file versions <= 1.3 are supported at this time');\n }\n this.determineFormat();\n if (POINT_FORMAT_READERS[this.formatId] === undefined) {\n throw new Error('The point format ID is not supported');\n }\n this.loader = this.isCompressed\n ? new LAZLoader(this.arraybuffer)\n : new LASLoader(this.arraybuffer);\n }\n /**\n * Determines format in parameters of LASHeaer\n */\n determineFormat() {\n const formatId = readAs(this.arraybuffer, Uint8Array, 32 * 3 + 8);\n const bit7 = (formatId & 0x80) >> 7;\n const bit6 = (formatId & 0x40) >> 6;\n if (bit7 === 1 && bit6 === 1) {\n throw new Error('Old style compression not supported');\n }\n this.formatId = formatId & 0x3f;\n this.isCompressed = bit7 === 1 || bit6 === 1;\n }\n /**\n * Determines version\n * @returns version\n */\n determineVersion() {\n const ver = new Int8Array(this.arraybuffer, 24, 2);\n this.version = ver[0] * 10 + ver[1];\n this.versionAsString = `${ver[0]}.${ver[1]}`;\n return this.version;\n }\n /**\n * Reads if the file is open\n * @returns boolean\n */\n open() {\n if (this.loader.open()) {\n this.isOpen = true;\n }\n }\n /**\n * Gets the header\n * @returns Header\n */\n getHeader() {\n return this.loader.getHeader();\n }\n /**\n * @param count\n * @param start\n * @param skip\n * @returns Data\n */\n readData(count, start, skip) {\n return this.loader.readData(count, start, skip);\n }\n /**\n * Closes the file\n */\n close() {\n if (this.loader.close()) {\n this.isOpen = false;\n }\n }\n /**\n */\n getUnpacker() {\n return LASDecoder;\n }\n}\nexport const LASModuleWasLoaded = false;\n/* eslint no-use-before-define: 2 */\n", "import { deduceMeshSchema } from '@loaders.gl/schema';\n/**\n * Gets schema from PLY header\n * @param lasHeader\n * @param metadata\n * @returns Schema\n */\nexport function getLASSchema(lasHeader, attributes) {\n const metadataMap = makeMetadataFromLasHeader(lasHeader);\n const schema = deduceMeshSchema(attributes, metadataMap);\n return schema;\n}\n/**\n * Make arrow like schema metadata by LASHeader properties\n * @param lasHeader\n * @returns\n */\nexport function makeMetadataFromLasHeader(lasHeader) {\n const metadata = {};\n /* eslint-disable camelcase */\n metadata.las_pointsOffset = lasHeader.pointsOffset.toString(10);\n metadata.las_pointsFormatId = lasHeader.pointsFormatId.toString(10);\n metadata.las_pointsStructSize = lasHeader.pointsStructSize.toString(10);\n metadata.las_pointsCount = lasHeader.pointsCount.toString(10);\n metadata.las_scale = JSON.stringify(lasHeader.scale);\n metadata.las_offset = JSON.stringify(lasHeader.offset);\n if (lasHeader.maxs !== undefined) {\n metadata.las_maxs = JSON.stringify(lasHeader.maxs);\n }\n if (lasHeader.mins !== undefined) {\n metadata.las_mins = JSON.stringify(lasHeader.mins);\n }\n metadata.las_totalToRead = lasHeader.totalToRead.toString(10);\n metadata.las_pointsFortotalReadmatId = lasHeader.totalRead.toString(10);\n if (lasHeader.versionAsString !== undefined) {\n metadata.las_versionAsString = lasHeader.versionAsString;\n }\n if (lasHeader.isCompressed !== undefined) {\n metadata.las_isCompressed = lasHeader.isCompressed.toString();\n }\n return metadata;\n}\n", "import { getMeshBoundingBox /* , convertMesh */ } from '@loaders.gl/schema';\nimport { LASFile } from \"./laslaz-decoder.js\";\nimport { getLASSchema } from \"./get-las-schema.js\";\n/**\n * Parsing of .las file\n * @param arrayBuffer\n * @param options\n * @returns LASHeader\n */\nexport function parseLAS(arrayBuffer, options) {\n return parseLASMesh(arrayBuffer, options);\n // This code breaks pointcloud example on the website\n // const mesh = parseLASMesh(arrayBuffer, options);\n // return convertMesh(mesh, options?.las?.shape || 'mesh') as LASMesh | ArrowTable | ColumnarTable;\n}\n/**\n * Parsing of .las file\n * @param arrayBuffer\n * @param options\n * @returns LASHeader\n */\nfunction parseLASMesh(arrayBuffer, options = {}) {\n let pointIndex = 0;\n let positions;\n let colors;\n let intensities;\n let classifications;\n let originalHeader;\n const lasMesh = {\n loader: 'las',\n loaderData: {},\n // shape: 'mesh',\n schema: { fields: [], metadata: {} },\n header: {\n vertexCount: 0,\n boundingBox: [\n [0, 0, 0],\n [0, 0, 0]\n ]\n },\n attributes: {},\n topology: 'point-list',\n mode: 0 // GL.POINTS\n };\n /* eslint-disable max-statements */\n // @ts-ignore Possibly undefined\n parseLASChunked(arrayBuffer, options.las?.skip, (decoder = {}, lasHeader) => {\n if (!originalHeader) {\n originalHeader = lasHeader;\n const total = lasHeader.totalToRead;\n const PositionsType = options.las?.fp64 ? Float64Array : Float32Array;\n positions = new PositionsType(total * 3);\n // laslaz-decoder.js `pointFormatReaders`\n colors = lasHeader.pointsFormatId >= 2 ? new Uint8Array(total * 4) : null;\n intensities = new Uint16Array(total);\n classifications = new Uint8Array(total);\n lasMesh.loaderData = lasHeader;\n lasMesh.attributes = {\n POSITION: { value: positions, size: 3 },\n // non-gltf attributes, use non-capitalized names for now\n intensity: { value: intensities, size: 1 },\n classification: { value: classifications, size: 1 }\n };\n if (colors) {\n lasMesh.attributes.COLOR_0 = { value: colors, size: 4 };\n }\n }\n const batchSize = decoder.pointsCount;\n const { scale: [scaleX, scaleY, scaleZ], offset: [offsetX, offsetY, offsetZ] } = lasHeader;\n const twoByteColor = detectTwoByteColors(decoder, batchSize, options.las?.colorDepth);\n for (let i = 0; i < batchSize; i++) {\n const { position, color, intensity, classification } = decoder.getPoint(i);\n positions[pointIndex * 3] = position[0] * scaleX + offsetX;\n positions[pointIndex * 3 + 1] = position[1] * scaleY + offsetY;\n positions[pointIndex * 3 + 2] = position[2] * scaleZ + offsetZ;\n if (color && colors) {\n if (twoByteColor) {\n colors[pointIndex * 4] = color[0] / 256;\n colors[pointIndex * 4 + 1] = color[1] / 256;\n colors[pointIndex * 4 + 2] = color[2] / 256;\n }\n else {\n colors[pointIndex * 4] = color[0];\n colors[pointIndex * 4 + 1] = color[1];\n colors[pointIndex * 4 + 2] = color[2];\n }\n colors[pointIndex * 4 + 3] = 255;\n }\n intensities[pointIndex] = intensity;\n classifications[pointIndex] = classification;\n pointIndex++;\n }\n const meshBatch = {\n ...lasMesh,\n header: {\n vertexCount: lasHeader.totalRead\n },\n progress: lasHeader.totalRead / lasHeader.totalToRead\n };\n options?.onProgress?.(meshBatch);\n });\n /* eslint-enable max-statements */\n lasMesh.header = {\n vertexCount: originalHeader.totalToRead,\n boundingBox: getMeshBoundingBox(lasMesh?.attributes || {})\n };\n if (lasMesh) {\n lasMesh.schema = getLASSchema(lasMesh.loaderData, lasMesh.attributes);\n }\n return lasMesh;\n}\n/**\n * parse laz data\n * @param rawData\n * @param skip\n * @param onParseData\n * @return parsed point cloud\n */\n/* eslint-enable max-statements */\nexport function parseLASChunked(rawData, skip, onParseData = {}) {\n const dataHandler = new LASFile(rawData);\n try {\n // open data\n dataHandler.open();\n const header = dataHandler.getHeader();\n // start loading\n const Unpacker = dataHandler.getUnpacker();\n const totalToRead = Math.ceil(header.pointsCount / Math.max(1, skip));\n header.totalToRead = totalToRead;\n let totalRead = 0;\n /* eslint-disable no-constant-condition */\n while (true) {\n const chunk = dataHandler.readData(1000 * 100, 0, skip);\n totalRead += chunk.count;\n header.totalRead = totalRead;\n header.versionAsString = chunk.versionAsString;\n header.isCompressed = chunk.isCompressed;\n const unpacker = new Unpacker(chunk.buffer, chunk.count, header);\n // surface unpacker and progress via call back\n // use unpacker.pointsCount and unpacker.getPoint(i) to handle data in app\n onParseData(unpacker, header);\n if (!chunk.hasMoreData || totalRead >= totalToRead) {\n break;\n }\n }\n }\n catch (e) {\n throw e;\n }\n finally {\n dataHandler.close();\n }\n}\n/**\n * @param decoder\n * @param batchSize\n * @param colorDepth\n * @returns boolean\n */\nfunction detectTwoByteColors(decoder = {}, batchSize, colorDepth) {\n let twoByteColor = false;\n switch (colorDepth) {\n case 8:\n twoByteColor = false;\n break;\n case 16:\n twoByteColor = true;\n break;\n case 'auto':\n if (decoder.getPoint(0).color) {\n for (let i = 0; i < batchSize; i++) {\n const { color } = decoder.getPoint(i);\n // eslint-disable-next-line max-depth\n if (color[0] > 255 || color[1] > 255 || color[2] > 255) {\n twoByteColor = true;\n }\n }\n }\n break;\n default:\n // eslint-disable-next-line\n console.warn('las: illegal value for options.las.colorDepth');\n break;\n }\n return twoByteColor;\n}\n", "import { LASLoader as LASWorkerLoader } from \"./las-loader.js\";\nimport { parseLAS } from \"./lib/parse-las.js\";\nexport { LASWorkerLoader };\n/**\n * Loader for the LAS (LASer) point cloud format\n * @note Does not support LAS v1.4\n */\nexport const LASLoader = {\n ...LASWorkerLoader,\n parse: async (arrayBuffer, options) => parseLAS(arrayBuffer, options),\n parseSync: (arrayBuffer, options) => parseLAS(arrayBuffer, options)\n};\n", "import type {SceneModel} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {createMat4, createVec3, transformPoint3} from \"@xeokit/matrix\";\nimport {BasicAggregation, BasicEntity} from \"@xeokit/basictypes\";\nimport {createUUID} from \"@xeokit/utils\";\nimport {PointsPrimitive} from \"@xeokit/constants\";\nimport {parse} from '@loaders.gl/core';\nimport {LASLoader} from '@loaders.gl/las';\nimport {FloatArrayParam} from \"@xeokit/math\";\n\nconst MAX_VERTICES = 500000; // TODO: Rough estimate\n\n/**\n * Loads LAS/LAZ file data from an ArrayBuffer into a {@link @xeokit/scene!SceneModel | SceneModel} and/or a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/las\"} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - LAS/LAZ file data\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into.\n * @param options - Loading parameters.\n * @param options.center - Whether to center the points. Default is false.\n * @param options.transform - Optional flattened 4x4 matrix to transform the points. Applied after centering, if specified.\n * @param options.skip - Option to oad every **n** points. Default is 1.\n * @param options.fp64 - Whether to assume that LAS positions are stored in 64-bit floats instead of 32-bit. Default is true.\n * @param options.colorDepth - Whether to assume that LAS colors are encoded using 8 or 16 bits. Accepted values are 8, 16 an \"auto\".\n * @returns {Promise} Resolves when LAS has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadLAS(params: {\n fileData: ArrayBuffer,\n sceneModel: SceneModel,\n dataModel?: DataModel,\n log?: Function\n },\n options: {\n center?: boolean;\n transform?: FloatArrayParam;\n skip?: number;\n fp64?: boolean;\n colorDepth?: string | number,\n }={}): Promise {\n\n return new Promise(function (resolve, reject) {\n\n const dataModel = params.dataModel;\n const sceneModel = params.sceneModel;\n\n if (sceneModel?.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n\n if (sceneModel?.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n\n if (dataModel?.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n\n if (dataModel?.built) {\n throw new SDKError(\"DataModel already built\");\n }\n\n const skip = options.skip || 1;\n\n const log = (msg) => {\n if (params.log) {\n params.log(msg);\n }\n }\n\n parse(params.fileData, LASLoader, {\n las: {\n colorDepth: options.colorDepth || \"auto\",\n fp64: options.fp64 !== undefined ? options.fp64 : false\n }\n\n }).then((parsedData) => {\n\n const attributes = parsedData.attributes;\n\n const loaderData = parsedData.loaderData;\n const pointsFormatId = loaderData.pointsFormatId !== undefined ? loaderData.pointsFormatId : -1;\n\n if (!attributes.POSITION) {\n log(\"No positions found in file (expected for all LAS point formats)\");\n return;\n }\n\n let readAttributes: any = {};\n\n switch (pointsFormatId) {\n case 0:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 0)\");\n return;\n }\n\n readAttributes = readIntensities(attributes.POSITION, attributes.intensity);\n break;\n case 1:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 1)\");\n return;\n }\n readAttributes = readIntensities(attributes.POSITION, attributes.intensity);\n break;\n case 2:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 2)\");\n return;\n }\n\n readAttributes = readColorsAndIntensities(attributes.POSITION, attributes.COLOR_0, attributes.intensity);\n break;\n case 3:\n if (!attributes.intensity) {\n log(\"No intensities found in file (expected for LAS point format 3)\");\n return;\n }\n readAttributes = readColorsAndIntensities(attributes.POSITION, attributes.COLOR_0, attributes.intensity);\n break;\n }\n\n const pointsChunks = chunkArray(readPositions(readAttributes.positions), MAX_VERTICES * 3);\n const colorsChunks = chunkArray(readAttributes.colors, MAX_VERTICES * 4);\n\n const meshIds = [];\n\n for (let j = 0, lenj = pointsChunks.length; j < lenj; j++) {\n\n const geometryId = `geometry-${j}`;\n\n const geometry = sceneModel.createGeometry({\n id: geometryId,\n primitive: PointsPrimitive,\n positions: pointsChunks[j],\n colors: colorsChunks[j]\n });\n\n if (geometry instanceof SDKError) {\n log(`[ERROR] Failed to load point cloud: ${geometry.message}`);\n } else {\n\n const meshId = `mesh-${j}`;\n meshIds.push(meshId);\n\n const mesh = sceneModel.createMesh({\n id: meshId,\n geometryId\n });\n\n if (mesh instanceof SDKError) {\n log(`[ERROR] Failed to load point cloud: ${mesh.message}`);\n }\n }\n }\n\n const entityId = createUUID();\n\n sceneModel.createObject({\n id: entityId,\n meshIds\n });\n\n if (dataModel) {\n\n const rootMetaObjectId = createUUID();\n\n dataModel.createObject({\n id: rootMetaObjectId,\n type: BasicEntity,\n name: \"Model\",\n });\n\n dataModel.createObject({\n id: entityId,\n type: BasicEntity,\n name: \"PointCloud (LAZ)\",\n });\n\n dataModel.createRelationship({\n type: BasicAggregation,\n relatingObjectId: rootMetaObjectId,\n relatedObjectId: entityId\n });\n }\n\n resolve();\n\n }, (errMsg) => {\n reject(errMsg);\n });\n\n function readPositions(positionsValue) {\n\n if (positionsValue) {\n if (options.center) {\n const centerPos = createVec3();\n const numPoints = positionsValue.length;\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n centerPos[0] += positionsValue[i + 0];\n centerPos[1] += positionsValue[i + 1];\n centerPos[2] += positionsValue[i + 2];\n }\n centerPos[0] /= numPoints;\n centerPos[1] /= numPoints;\n centerPos[2] /= numPoints;\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n positionsValue[i + 0] -= centerPos[0];\n positionsValue[i + 1] -= centerPos[1];\n positionsValue[i + 2] -= centerPos[2];\n }\n }\n if (options.transform) {\n const mat = createMat4(options.transform);\n const pos = createVec3();\n for (let i = 0, len = positionsValue.length; i < len; i += 3) {\n pos[0] = positionsValue[i + 0];\n pos[1] = positionsValue[i + 1];\n pos[2] = positionsValue[i + 2];\n transformPoint3(mat, pos, pos);\n positionsValue[i + 0] = pos[0];\n positionsValue[i + 1] = pos[1];\n positionsValue[i + 2] = pos[2];\n }\n }\n }\n return positionsValue;\n }\n\n function readColorsAndIntensities(attributesPosition, attributesColor, attributesIntensity) {\n const positionsValue = attributesPosition.value;\n const colors = attributesColor.value;\n const colorSize = attributesColor.size;\n const intensities = attributesIntensity.value;\n const colorsCompressedSize = intensities.length * 4;\n const positions = [];\n const colorsCompressed = new Uint8Array(colorsCompressedSize / skip);\n let count = skip;\n for (let i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, len = intensities.length; i < len; i++, k += colorSize, j += 4, l += 3) {\n if (count <= 0) {\n colorsCompressed[m++] = colors[k + 0];\n colorsCompressed[m++] = colors[k + 1];\n colorsCompressed[m++] = colors[k + 2];\n colorsCompressed[m++] = Math.round((intensities[i] / 65536) * 255);\n positions[n++] = positionsValue[l + 0];\n positions[n++] = positionsValue[l + 1];\n positions[n++] = positionsValue[l + 2];\n count = skip;\n } else {\n count--;\n }\n }\n return {\n positions,\n colors: colorsCompressed\n };\n }\n\n function readIntensities(attributesPosition, attributesIntensity) {\n const positionsValue = attributesPosition.value;\n const intensities = attributesIntensity.intensity;\n const colorsCompressedSize = intensities.length * 4;\n const positions = [];\n const colorsCompressed = new Uint8Array(colorsCompressedSize / skip);\n let count = skip;\n for (let i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, len = intensities.length; i < len; i++, k += 3, j += 4, l += 3) {\n if (count <= 0) {\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = 0;\n colorsCompressed[m++] = Math.round((intensities[i] / 65536) * 255);\n positions[n++] = positionsValue[l + 0];\n positions[n++] = positionsValue[l + 1];\n positions[n++] = positionsValue[l + 2];\n count = skip;\n } else {\n count--;\n }\n }\n return {\n positions,\n colors: colorsCompressed\n };\n }\n\n function chunkArray(array, chunkSize) {\n if (chunkSize >= array.length) {\n return [array]; // One chunk\n }\n let result = [];\n for (let i = 0; i < array.length; i += chunkSize) {\n result.push(array.slice(i, i + chunkSize));\n }\n return result;\n }\n });\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fgltf.svg)](https://badge.fury.io/js/%40xeokit%2Fgltf)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/gltf/badge)](https://www.jsdelivr.com/package/npm/@xeokit/gltf)\n *\n * \n *\n * # xeokit glTF Importer\n *\n * ---\n *\n * ### *Import models from the industry standard glTF model file format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [glTF](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#gltf) (GL Transmission Format), a\n * file format that is a runtime asset delivery format for 3D scenes and models.\n *\n * glTF is a compact and efficient format for 3D content, allowing fast loading and rendering in apps and web\n * browsers. It stores geometry, materials, textures, animations, and scene hierarchy, and is open and royalty-free,\n * making it a popular choice for 3D content distribution and exchange.\n *\n * To import a glTF model into xeokit, use the {@link loadGLTF} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNpVkctOwzAQRX8lmhVIaZVHE6dRlVUFm1Ygygp548YTMErsynYkStV_x84DqDf2vTM-Mx5foFYcoYS6ZcZsBXvXrKOSSi401lYoGexevB7iwaFGiXt3ow0uVAZuCT7u6vjp8s0oao3M4tNg3d2P3rEXLZ8FR2O1Ont59fSZv1OMP-5eH56Za8PMNTabk9doUVfVaDWixS2zbFTmt62JN9LaifbHaXo5PMpjhsTbghQiCotFRSGmcPgHnUlz7PYahNCh7pjgbpBDLQr2AzukULojx4b1raXgarpU1lt1OMsaSqt7DKE_cTesafRQNqw1zkUurNL76XP8FsKJSSgv8AVlEqXLvMgzEufrjCRRFsIZylVULAuyIklKkoKQNLuG8K2Ug0bLLEoJidd55Ow0iQfY2xDzXVx_ANo5py0?type=png)](https://mermaid.live/edit#pako:eNpVkctOwzAQRX8lmhVIaZVHE6dRlVUFm1Ygygp548YTMErsynYkStV_x84DqDf2vTM-Mx5foFYcoYS6ZcZsBXvXrKOSSi401lYoGexevB7iwaFGiXt3ow0uVAZuCT7u6vjp8s0oao3M4tNg3d2P3rEXLZ8FR2O1Ont59fSZv1OMP-5eH56Za8PMNTabk9doUVfVaDWixS2zbFTmt62JN9LaifbHaXo5PMpjhsTbghQiCotFRSGmcPgHnUlz7PYahNCh7pjgbpBDLQr2AzukULojx4b1raXgarpU1lt1OMsaSqt7DKE_cTesafRQNqw1zkUurNL76XP8FsKJSSgv8AVlEqXLvMgzEufrjCRRFsIZylVULAuyIklKkoKQNLuG8K2Ug0bLLEoJidd55Ow0iQfY2xDzXVx_ANo5py0)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/gltf\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/gltf!loadGLTF | loadGLTF} to load\n * a binary glTF (GLB) file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadGLTF} from \"@xeokit/gltf\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.glb\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadGLTF({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading glTF: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/gltf\n */\nexport * from \"./loadGLTF\";\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { getPrimitiveTextureData } from \"./utils/3d-tiles-utils.js\";\nconst EXT_MESH_FEATURES_NAME = 'EXT_mesh_features';\nexport const name = EXT_MESH_FEATURES_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtMeshFeatures(scenegraph, options);\n}\n/**\n * Decodes feature metadata from extension.\n * @param {GLTFScenegraph} scenegraph - Instance of the class for structured access to GLTF data.\n * @param {GLTFLoaderOptions} options - GLTFLoader options.\n */\nfunction decodeExtMeshFeatures(scenegraph, options) {\n const json = scenegraph.gltf.json;\n if (!json.meshes) {\n return;\n }\n // Iterate through all meshes/primitives.\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processMeshPrimitiveFeatures(scenegraph, primitive, options);\n }\n }\n}\n/**\n * Takes data from EXT_mesh_features and store it in 'data' property of featureIds.\n * If combined with EXT_structural_metadata, corresponding data are taken from the property tables of that extension.\n * @param {GLTFScenegraph} scenegraph - Instance of the class for structured access to GLTF data.\n * @param {GLTFMeshPrimitive} primitive - Primitive that contains extensions.\n * @param {GLTFLoaderOptions} options - GLTFLoader options.\n */\nfunction processMeshPrimitiveFeatures(scenegraph, primitive, options) {\n // Processing of mesh primitive features requires buffers to be loaded.\n if (!options?.gltf?.loadBuffers) {\n return;\n }\n const extension = primitive.extensions?.[EXT_MESH_FEATURES_NAME];\n const featureIds = extension?.featureIds;\n if (!featureIds) {\n return;\n }\n for (const featureId of featureIds) {\n let featureIdData;\n // Process \"Feature ID by Vertex\"\n if (typeof featureId.attribute !== 'undefined') {\n const accessorKey = `_FEATURE_ID_${featureId.attribute}`;\n const accessorIndex = primitive.attributes[accessorKey];\n featureIdData = scenegraph.getTypedArrayForAccessor(accessorIndex);\n }\n // Process \"Feature ID by Texture Coordinates\"\n else if (typeof featureId.texture !== 'undefined' && options?.gltf?.loadImages) {\n featureIdData = getPrimitiveTextureData(scenegraph, featureId.texture, primitive);\n }\n // Process \"Feature ID by Index\"\n else {\n /*\n When both featureId.attribute and featureId.texture are undefined,\n then the feature ID value for each vertex is given implicitly, via the index of the vertex.\n In this case, the featureCount must match the number of vertices of the mesh primitive.\n */\n // TODO: At the moment of writing we don't have a tileset with the data of that kind. Implement it later.\n featureIdData = [];\n }\n featureId.data = featureIdData;\n }\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "import { isBrowser } from '@loaders.gl/loader-utils';\n// @ts-ignore TS2339: Property does not exist on type\nconst parseImageNode = globalThis.loaders?.parseImageNode;\nconst IMAGE_SUPPORTED = typeof Image !== 'undefined'; // NOTE: \"false\" positives if jsdom is installed\nconst IMAGE_BITMAP_SUPPORTED = typeof ImageBitmap !== 'undefined';\nconst NODE_IMAGE_SUPPORTED = Boolean(parseImageNode);\nconst DATA_SUPPORTED = isBrowser ? true : NODE_IMAGE_SUPPORTED;\n/**\n * Checks if a loaders.gl image type is supported\n * @param type image type string\n */\nexport function isImageTypeSupported(type) {\n switch (type) {\n case 'auto':\n // Should only ever be false in Node.js, if polyfills have not been installed...\n return IMAGE_BITMAP_SUPPORTED || IMAGE_SUPPORTED || DATA_SUPPORTED;\n case 'imagebitmap':\n return IMAGE_BITMAP_SUPPORTED;\n case 'image':\n return IMAGE_SUPPORTED;\n case 'data':\n return DATA_SUPPORTED;\n default:\n throw new Error(`@loaders.gl/images: image ${type} not supported in this environment`);\n }\n}\n/**\n * Returns the \"most performant\" supported image type on this platform\n * @returns image type string\n */\nexport function getDefaultImageType() {\n if (IMAGE_BITMAP_SUPPORTED) {\n return 'imagebitmap';\n }\n if (IMAGE_SUPPORTED) {\n return 'image';\n }\n if (DATA_SUPPORTED) {\n return 'data';\n }\n // This should only happen in Node.js\n throw new Error('Install \\'@loaders.gl/polyfills\\' to parse images under Node.js');\n}\n", "export function isImage(image) {\n return Boolean(getImageTypeOrNull(image));\n}\nexport function deleteImage(image) {\n switch (getImageType(image)) {\n case 'imagebitmap':\n image.close();\n break;\n default:\n // Nothing to do for images and image data objects\n }\n}\nexport function getImageType(image) {\n const format = getImageTypeOrNull(image);\n if (!format) {\n throw new Error('Not an image');\n }\n return format;\n}\nexport function getImageSize(image) {\n return getImageData(image);\n}\nexport function getImageData(image) {\n switch (getImageType(image)) {\n case 'data':\n return image;\n case 'image':\n case 'imagebitmap':\n // Extract the image data from the image via a canvas\n const canvas = document.createElement('canvas');\n // TODO - reuse the canvas?\n const context = canvas.getContext('2d');\n if (!context) {\n throw new Error('getImageData');\n }\n // @ts-ignore\n canvas.width = image.width;\n // @ts-ignore\n canvas.height = image.height;\n // @ts-ignore\n context.drawImage(image, 0, 0);\n // @ts-ignore\n return context.getImageData(0, 0, image.width, image.height);\n default:\n throw new Error('getImageData');\n }\n}\n// PRIVATE\n// eslint-disable-next-line complexity\nfunction getImageTypeOrNull(image) {\n if (typeof ImageBitmap !== 'undefined' && image instanceof ImageBitmap) {\n return 'imagebitmap';\n }\n if (typeof Image !== 'undefined' && image instanceof Image) {\n return 'image';\n }\n if (image && typeof image === 'object' && image.data && image.width && image.height) {\n return 'data';\n }\n return null;\n}\n", "// SVG parsing has limitations, e.g:\n// https://bugs.chromium.org/p/chromium/issues/detail?id=606319\nconst SVG_DATA_URL_PATTERN = /^data:image\\/svg\\+xml/;\nconst SVG_URL_PATTERN = /\\.svg((\\?|#).*)?$/;\nexport function isSVG(url) {\n return url && (SVG_DATA_URL_PATTERN.test(url) || SVG_URL_PATTERN.test(url));\n}\nexport function getBlobOrSVGDataUrl(arrayBuffer, url) {\n if (isSVG(url)) {\n // Prepare a properly tagged data URL, and load using normal mechanism\n const textDecoder = new TextDecoder();\n let xmlText = textDecoder.decode(arrayBuffer);\n // TODO Escape in browser to support e.g. Chinese characters\n try {\n if (typeof unescape === 'function' && typeof encodeURIComponent === 'function') {\n xmlText = unescape(encodeURIComponent(xmlText));\n }\n }\n catch (error) {\n throw new Error(error.message);\n }\n // base64 encoding is safer. utf-8 fails in some browsers\n const src = `data:image/svg+xml;base64,${btoa(xmlText)}`;\n return src;\n }\n return getBlob(arrayBuffer, url);\n}\nexport function getBlob(arrayBuffer, url) {\n if (isSVG(url)) {\n // https://bugs.chromium.org/p/chromium/issues/detail?id=606319\n // return new Blob([new Uint8Array(arrayBuffer)], {type: 'image/svg+xml'});\n throw new Error('SVG cannot be parsed directly to imagebitmap');\n }\n // TODO - how to determine mime type? Param? Sniff here?\n return new Blob([new Uint8Array(arrayBuffer)]); // MIME type not needed?\n}\n", "import { getBlobOrSVGDataUrl } from \"./svg-utils.js\";\n// Parses html image from array buffer\nexport async function parseToImage(arrayBuffer, options, url) {\n // Note: image parsing requires conversion to Blob (for createObjectURL).\n // Potentially inefficient for not using `response.blob()` (and for File / Blob inputs)...\n // But presumably not worth adding 'blob' flag to loader objects?\n const blobOrDataUrl = getBlobOrSVGDataUrl(arrayBuffer, url);\n const URL = self.URL || self.webkitURL;\n const objectUrl = typeof blobOrDataUrl !== 'string' && URL.createObjectURL(blobOrDataUrl);\n try {\n return await loadToImage(objectUrl || blobOrDataUrl, options);\n }\n finally {\n if (objectUrl) {\n URL.revokeObjectURL(objectUrl);\n }\n }\n}\nexport async function loadToImage(url, options) {\n const image = new Image();\n image.src = url;\n // The `image.onload()` callback does not guarantee that the image has been decoded\n // so a main thread \"freeze\" can be incurred when using the image for the first time.\n // `Image.decode()` returns a promise that completes when image is decoded.\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decode\n // Note: When calling `img.decode()`, we do not need to wait for `img.onload()`\n // Note: `HTMLImageElement.decode()` is not available in Edge and IE11\n if (options.image && options.image.decode && image.decode) {\n await image.decode();\n return image;\n }\n // Create a promise that tracks onload/onerror callbacks\n return await new Promise((resolve, reject) => {\n try {\n image.onload = () => resolve(image);\n image.onerror = (error) => {\n const message = error instanceof Error ? error.message : 'error';\n reject(new Error(message));\n };\n }\n catch (error) {\n reject(error);\n }\n });\n}\n", "import { isSVG, getBlob } from \"./svg-utils.js\";\nimport { parseToImage } from \"./parse-to-image.js\";\nconst EMPTY_OBJECT = {};\nlet imagebitmapOptionsSupported = true;\n/**\n * Asynchronously parses an array buffer into an ImageBitmap - this contains the decoded data\n * ImageBitmaps are supported on worker threads, but not supported on Edge, IE11 and Safari\n * https://developer.mozilla.org/en-US/docs/Web/API/ImageBitmap#Browser_compatibility\n *\n * TODO - createImageBitmap supports source rect (5 param overload), pass through?\n */\nexport async function parseToImageBitmap(arrayBuffer, options, url) {\n let blob;\n // Cannot parse SVG directly to ImageBitmap, parse to Image first\n if (isSVG(url)) {\n // Note: this only works on main thread\n const image = await parseToImage(arrayBuffer, options, url);\n blob = image;\n }\n else {\n // Create blob from the array buffer\n blob = getBlob(arrayBuffer, url);\n }\n const imagebitmapOptions = options && options.imagebitmap;\n return await safeCreateImageBitmap(blob, imagebitmapOptions);\n}\n/**\n * Safely creates an imageBitmap with options\n * *\n * Firefox crashes if imagebitmapOptions is supplied\n * Avoid supplying if not provided or supported, remember if not supported\n */\nasync function safeCreateImageBitmap(blob, imagebitmapOptions = null) {\n if (isEmptyObject(imagebitmapOptions) || !imagebitmapOptionsSupported) {\n imagebitmapOptions = null;\n }\n if (imagebitmapOptions) {\n try {\n // @ts-ignore Options\n return await createImageBitmap(blob, imagebitmapOptions);\n }\n catch (error) {\n console.warn(error); // eslint-disable-line\n imagebitmapOptionsSupported = false;\n }\n }\n return await createImageBitmap(blob);\n}\nfunction isEmptyObject(object) {\n // @ts-ignore\n for (const key in object || EMPTY_OBJECT) {\n return false;\n }\n return true;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// code adapted from https://github.com/sindresorhus/file-type under MIT license\n/**\n * Tests if a buffer is in ISO base media file format (ISOBMFF) @see https://en.wikipedia.org/wiki/ISO_base_media_file_format\n * (ISOBMFF is a media container standard based on the Apple QuickTime container format)\n */\nexport function getISOBMFFMediaType(buffer) {\n // Almost all ISO base media files start with `ftyp` box. (It's not required to be first, but it's recommended to be.)\n if (!checkString(buffer, 'ftyp', 4)) {\n return null;\n }\n // Extra check: test for 8859-1 printable characters (for simplicity, it's a mask which also catches one non-printable character).\n if ((buffer[8] & 0x60) === 0x00) {\n return null;\n }\n // `ftyp` box must contain a brand major identifier, which must consist of ISO 8859-1 printable characters.\n return decodeMajorBrand(buffer);\n}\n/**\n * brands explained @see https://github.com/strukturag/libheif/issues/83\n * code adapted from @see https://github.com/sindresorhus/file-type/blob/main/core.js#L489-L492\n */\nexport function decodeMajorBrand(buffer) {\n const brandMajor = getUTF8String(buffer, 8, 12).replace('\\0', ' ').trim();\n switch (brandMajor) {\n case 'avif':\n case 'avis':\n return { extension: 'avif', mimeType: 'image/avif' };\n default:\n return null;\n }\n // We don't need these now, but they are easy to add\n // case 'mif1':\n // return {extension: 'heic', mimeType: 'image/heif'};\n // case 'msf1':\n // return {extension: 'heic', mimeType: 'image/heif-sequence'};\n // case 'heic':\n // case 'heix':\n // return {extension: 'heic', mimeType: 'image/heic'};\n // case 'hevc':\n // case 'hevx':\n // return {extension: 'heic', mimeType: 'image/heic-sequence'};\n // case 'qt':\n // return {ext: 'mov', mime: 'video/quicktime'};\n // case 'M4V':\n // case 'M4VH':\n // case 'M4VP':\n // return {ext: 'm4v', mime: 'video/x-m4v'};\n // case 'M4P':\n // return {ext: 'm4p', mime: 'video/mp4'};\n // case 'M4B':\n // return {ext: 'm4b', mime: 'audio/mp4'};\n // case 'M4A':\n // return {ext: 'm4a', mime: 'audio/x-m4a'};\n // case 'F4V':\n // return {ext: 'f4v', mime: 'video/mp4'};\n // case 'F4P':\n // return {ext: 'f4p', mime: 'video/mp4'};\n // case 'F4A':\n // return {ext: 'f4a', mime: 'audio/mp4'};\n // case 'F4B':\n // return {ext: 'f4b', mime: 'audio/mp4'};\n // case 'crx':\n // return {ext: 'cr3', mime: 'image/x-canon-cr3'};\n // default:\n // if (brandMajor.startsWith('3g')) {\n // if (brandMajor.startsWith('3g2')) {\n // return {ext: '3g2', mime: 'video/3gpp2'};\n // }\n // return {ext: '3gp', mime: 'video/3gpp'};\n // }\n // return {ext: 'mp4', mime: 'video/mp4'};\n}\n/** Interpret a chunk of bytes as a UTF8 string */\nfunction getUTF8String(array, start, end) {\n return String.fromCharCode(...array.slice(start, end));\n}\nfunction stringToBytes(string) {\n return [...string].map((character) => character.charCodeAt(0));\n}\nfunction checkString(buffer, header, offset = 0) {\n const headerBytes = stringToBytes(header);\n for (let i = 0; i < headerBytes.length; ++i) {\n if (headerBytes[i] !== buffer[i + offset]) {\n return false;\n }\n }\n return true;\n}\n", "// Attributions\n// * Based on binary-gltf-utils under MIT license: Copyright (c) 2016-17 Karl Cheng\nimport { getISOBMFFMediaType } from \"./parse-isobmff-binary.js\";\nconst BIG_ENDIAN = false;\nconst LITTLE_ENDIAN = true;\n/**\n * Extracts `{mimeType, width and height}` from a memory buffer containing a known image format\n * Currently supports `image/png`, `image/jpeg`, `image/bmp` and `image/gif`.\n * @param binaryData: DataView | ArrayBuffer image file memory to parse\n * @returns metadata or null if memory is not a valid image file format layout.\n */\nexport function getBinaryImageMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n return (getPngMetadata(dataView) ||\n getJpegMetadata(dataView) ||\n getGifMetadata(dataView) ||\n getBmpMetadata(dataView) ||\n getISOBMFFMetadata(dataView));\n}\n// ISOBMFF\nfunction getISOBMFFMetadata(binaryData) {\n const buffer = new Uint8Array(binaryData instanceof DataView ? binaryData.buffer : binaryData);\n const mediaType = getISOBMFFMediaType(buffer);\n if (!mediaType) {\n return null;\n }\n return {\n mimeType: mediaType.mimeType,\n // TODO - decode width and height\n width: 0,\n height: 0\n };\n}\n// PNG\nfunction getPngMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check file contains the first 4 bytes of the PNG signature.\n const isPng = dataView.byteLength >= 24 && dataView.getUint32(0, BIG_ENDIAN) === 0x89504e47;\n if (!isPng) {\n return null;\n }\n // Extract size from a binary PNG file\n return {\n mimeType: 'image/png',\n width: dataView.getUint32(16, BIG_ENDIAN),\n height: dataView.getUint32(20, BIG_ENDIAN)\n };\n}\n// GIF\n// Extract size from a binary GIF file\n// TODO: GIF is not this simple\nfunction getGifMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check first 4 bytes of the GIF signature (\"GIF8\").\n const isGif = dataView.byteLength >= 10 && dataView.getUint32(0, BIG_ENDIAN) === 0x47494638;\n if (!isGif) {\n return null;\n }\n // GIF is little endian.\n return {\n mimeType: 'image/gif',\n width: dataView.getUint16(6, LITTLE_ENDIAN),\n height: dataView.getUint16(8, LITTLE_ENDIAN)\n };\n}\n// BMP\n// TODO: BMP is not this simple\nexport function getBmpMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check magic number is valid (first 2 characters should be \"BM\").\n // The mandatory bitmap file header is 14 bytes long.\n const isBmp = dataView.byteLength >= 14 &&\n dataView.getUint16(0, BIG_ENDIAN) === 0x424d &&\n dataView.getUint32(2, LITTLE_ENDIAN) === dataView.byteLength;\n if (!isBmp) {\n return null;\n }\n // BMP is little endian.\n return {\n mimeType: 'image/bmp',\n width: dataView.getUint32(18, LITTLE_ENDIAN),\n height: dataView.getUint32(22, LITTLE_ENDIAN)\n };\n}\n// JPEG\n// Extract width and height from a binary JPEG file\nfunction getJpegMetadata(binaryData) {\n const dataView = toDataView(binaryData);\n // Check file contains the JPEG \"start of image\" (SOI) marker\n // followed by another marker.\n const isJpeg = dataView.byteLength >= 3 &&\n dataView.getUint16(0, BIG_ENDIAN) === 0xffd8 &&\n dataView.getUint8(2) === 0xff;\n if (!isJpeg) {\n return null;\n }\n const { tableMarkers, sofMarkers } = getJpegMarkers();\n // Exclude the two byte SOI marker.\n let i = 2;\n while (i + 9 < dataView.byteLength) {\n const marker = dataView.getUint16(i, BIG_ENDIAN);\n // The frame that contains the width and height of the JPEG image.\n if (sofMarkers.has(marker)) {\n return {\n mimeType: 'image/jpeg',\n height: dataView.getUint16(i + 5, BIG_ENDIAN), // Number of lines\n width: dataView.getUint16(i + 7, BIG_ENDIAN) // Number of pixels per line\n };\n }\n // Miscellaneous tables/data preceding the frame header.\n if (!tableMarkers.has(marker)) {\n return null;\n }\n // Length includes size of length parameter but not the two byte header.\n i += 2;\n i += dataView.getUint16(i, BIG_ENDIAN);\n }\n return null;\n}\nfunction getJpegMarkers() {\n // Tables/misc header markers.\n // DQT, DHT, DAC, DRI, COM, APP_n\n const tableMarkers = new Set([0xffdb, 0xffc4, 0xffcc, 0xffdd, 0xfffe]);\n for (let i = 0xffe0; i < 0xfff0; ++i) {\n tableMarkers.add(i);\n }\n // SOF markers and DHP marker.\n // These markers are after tables/misc data.\n const sofMarkers = new Set([\n 0xffc0, 0xffc1, 0xffc2, 0xffc3, 0xffc5, 0xffc6, 0xffc7, 0xffc9, 0xffca, 0xffcb, 0xffcd, 0xffce,\n 0xffcf, 0xffde\n ]);\n return { tableMarkers, sofMarkers };\n}\n// TODO - move into image module?\nfunction toDataView(data) {\n if (data instanceof DataView) {\n return data;\n }\n if (ArrayBuffer.isView(data)) {\n return new DataView(data.buffer);\n }\n // TODO: make these functions work for Node.js buffers?\n // if (bufferToArrayBuffer) {\n // data = bufferToArrayBuffer(data);\n // }\n // Careful - Node Buffers will look like ArrayBuffers (keep after isBuffer)\n if (data instanceof ArrayBuffer) {\n return new DataView(data);\n }\n throw new Error('toDataView');\n}\n", "import { assert } from '@loaders.gl/loader-utils';\nimport { getBinaryImageMetadata } from \"../category-api/binary-image-api.js\";\n// Use polyfills if installed to parsed image using get-pixels\nexport async function parseToNodeImage(arrayBuffer, options) {\n const { mimeType } = getBinaryImageMetadata(arrayBuffer) || {};\n // @ts-ignore\n const parseImageNode = globalThis.loaders?.parseImageNode;\n assert(parseImageNode); // '@loaders.gl/polyfills not installed'\n // @ts-expect-error TODO should we throw error in this case?\n return await parseImageNode(arrayBuffer, mimeType);\n}\n", "import { assert } from '@loaders.gl/loader-utils';\nimport { isImageTypeSupported, getDefaultImageType } from \"../category-api/image-type.js\";\nimport { getImageData } from \"../category-api/parsed-image-api.js\";\nimport { parseToImage } from \"./parse-to-image.js\";\nimport { parseToImageBitmap } from \"./parse-to-image-bitmap.js\";\nimport { parseToNodeImage } from \"./parse-to-node-image.js\";\n// Parse to platform defined image type (data on node, ImageBitmap or HTMLImage on browser)\n// eslint-disable-next-line complexity\nexport async function parseImage(arrayBuffer, options, context) {\n options = options || {};\n const imageOptions = options.image || {};\n // The user can request a specific output format via `options.image.type`\n const imageType = imageOptions.type || 'auto';\n const { url } = context || {};\n // Note: For options.image.type === `data`, we may still need to load as `image` or `imagebitmap`\n const loadType = getLoadableImageType(imageType);\n let image;\n switch (loadType) {\n case 'imagebitmap':\n image = await parseToImageBitmap(arrayBuffer, options, url);\n break;\n case 'image':\n image = await parseToImage(arrayBuffer, options, url);\n break;\n case 'data':\n // Node.js loads imagedata directly\n image = await parseToNodeImage(arrayBuffer, options);\n break;\n default:\n assert(false);\n }\n // Browser: if options.image.type === 'data', we can now extract data from the loaded image\n if (imageType === 'data') {\n image = getImageData(image);\n }\n return image;\n}\n// Get a loadable image type from image type\nfunction getLoadableImageType(type) {\n switch (type) {\n case 'auto':\n case 'data':\n // Browser: For image data we need still need to load using an image format\n // Node: the default image type is `data`.\n return getDefaultImageType();\n default:\n // Throw an error if not supported\n isImageTypeSupported(type);\n return type;\n }\n}\n", "// import type { ImageType } from '@loaders.gl/schema';\nimport { VERSION } from \"./lib/utils/version.js\";\nimport { parseImage } from \"./lib/parsers/parse-image.js\";\nimport { getBinaryImageMetadata } from \"./lib/category-api/binary-image-api.js\";\nconst EXTENSIONS = ['png', 'jpg', 'jpeg', 'gif', 'webp', 'bmp', 'ico', 'svg', 'avif'];\nconst MIME_TYPES = [\n 'image/png',\n 'image/jpeg',\n 'image/gif',\n 'image/webp',\n 'image/avif',\n 'image/bmp',\n 'image/vnd.microsoft.icon',\n 'image/svg+xml'\n];\nconst DEFAULT_IMAGE_LOADER_OPTIONS = {\n image: {\n type: 'auto',\n decode: true // if format is HTML\n }\n // imagebitmap: {} - passes (platform dependent) parameters to ImageBitmap constructor\n};\n/**\n * Loads a platform-specific image type\n * Note: This type can be used as input data to WebGL texture creation\n */\nexport const ImageLoader = {\n dataType: null,\n batchType: null,\n id: 'image',\n module: 'images',\n name: 'Images',\n version: VERSION,\n mimeTypes: MIME_TYPES,\n extensions: EXTENSIONS,\n parse: parseImage,\n // TODO: byteOffset, byteLength;\n tests: [(arrayBuffer) => Boolean(getBinaryImageMetadata(new DataView(arrayBuffer)))],\n options: DEFAULT_IMAGE_LOADER_OPTIONS\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { isBrowser } from '@loaders.gl/loader-utils';\nconst MIME_TYPES = [\n 'image/png',\n 'image/jpeg',\n 'image/gif',\n 'image/webp',\n 'image/avif',\n 'image/tiff',\n // TODO - what is the correct type for SVG\n 'image/svg',\n 'image/svg+xml',\n 'image/bmp',\n 'image/vnd.microsoft.icon'\n];\n/** Only one round of tests is performed */\nconst mimeTypeSupportedPromise = null;\n/** Run-time browser detection of file formats requires async tests for most precise results */\nexport async function getSupportedImageFormats() {\n if (mimeTypeSupportedPromise) {\n return await mimeTypeSupportedPromise;\n }\n const supportedMimeTypes = new Set();\n for (const mimeType of MIME_TYPES) {\n const supported = isBrowser\n ? await checkBrowserImageFormatSupportAsync(mimeType)\n : checkNodeImageFormatSupport(mimeType);\n if (supported) {\n supportedMimeTypes.add(mimeType);\n }\n }\n return supportedMimeTypes;\n}\n/** Cache sync values for speed */\nconst mimeTypeSupportedSync = {};\n/**\n * Check if image MIME type is supported. Result is cached to avoid repeated tests.\n */\nexport function isImageFormatSupported(mimeType) {\n if (mimeTypeSupportedSync[mimeType] === undefined) {\n const supported = isBrowser\n ? checkBrowserImageFormatSupport(mimeType)\n : checkNodeImageFormatSupport(mimeType);\n mimeTypeSupportedSync[mimeType] = supported;\n }\n return mimeTypeSupportedSync[mimeType];\n}\n/**\n * Checks that polyfills are installed and that mimeType is supported by polyfills\n * @todo Ideally polyfills should declare what formats they support, instead of storing that data here.\n */\nfunction checkNodeImageFormatSupport(mimeType) {\n const NODE_FORMAT_SUPPORT = ['image/png', 'image/jpeg', 'image/gif'];\n const imageFormatsNode = globalThis.loaders?.imageFormatsNode || NODE_FORMAT_SUPPORT;\n const parseImageNode = globalThis.loaders?.parseImageNode;\n return Boolean(parseImageNode) && imageFormatsNode.includes(mimeType);\n}\n/** Checks image format support synchronously.\n * @note Unreliable, fails on AVIF\n */\nfunction checkBrowserImageFormatSupport(mimeType) {\n switch (mimeType) {\n case 'image/avif': // Will fail\n case 'image/webp':\n return testBrowserImageFormatSupport(mimeType);\n default:\n return true;\n }\n}\nconst TEST_IMAGE = {\n 'image/avif': 'data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=',\n // Lossy test image. Support for lossy images doesn't guarantee support for all WebP images.\n 'image/webp': 'data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA'\n};\n/** Checks WebP and AVIF support asynchronously */\nasync function checkBrowserImageFormatSupportAsync(mimeType) {\n const dataURL = TEST_IMAGE[mimeType];\n return dataURL ? await testBrowserImageFormatSupportAsync(dataURL) : true;\n}\n/**\n * Checks browser synchronously\n * Checks if toDataURL supports the mimeType.\n * @note Imperfect testOn Chrome this is true for WebP but not for AVIF\n */\nfunction testBrowserImageFormatSupport(mimeType) {\n try {\n const element = document.createElement('canvas');\n const dataURL = element.toDataURL(mimeType);\n return dataURL.indexOf(`data:${mimeType}`) === 0;\n }\n catch {\n // Probably Safari...\n return false;\n }\n}\n// Check WebPSupport asynchronously\nasync function testBrowserImageFormatSupportAsync(testImageDataURL) {\n return new Promise((resolve) => {\n const image = new Image();\n image.src = testImageDataURL;\n image.onload = () => resolve(image.height > 0);\n image.onerror = () => resolve(false);\n });\n}\n", "// Replacement for the external assert method to reduce bundle size\n// Note: We don't use the second \"message\" argument in calling code,\n// so no need to support it here\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'assert failed: gltf');\n }\n}\n", "export const COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nexport const BYTES = {\n 5120: 1, // BYTE\n 5121: 1, // UNSIGNED_BYTE\n 5122: 2, // SHORT\n 5123: 2, // UNSIGNED_SHORT\n 5125: 4, // UNSIGNED_INT\n 5126: 4 // FLOAT\n};\n// ENUM LOOKUP\nexport function getBytesFromComponentType(componentType) {\n return BYTES[componentType];\n}\nexport function getSizeFromAccessorType(type) {\n return COMPONENTS[type];\n}\nexport function getGLEnumFromSamplerParameter(parameter) {\n const GL_TEXTURE_MAG_FILTER = 0x2800;\n const GL_TEXTURE_MIN_FILTER = 0x2801;\n const GL_TEXTURE_WRAP_S = 0x2802;\n const GL_TEXTURE_WRAP_T = 0x2803;\n const PARAMETER_MAP = {\n magFilter: GL_TEXTURE_MAG_FILTER,\n minFilter: GL_TEXTURE_MIN_FILTER,\n wrapS: GL_TEXTURE_WRAP_S,\n wrapT: GL_TEXTURE_WRAP_T\n };\n return PARAMETER_MAP[parameter];\n}\n", "import { assert } from \"../utils/assert.js\";\nimport { BYTES, COMPONENTS } from \"../gltf-utils/gltf-constants.js\";\n/**\n * Memory needed to store texture and all mipmap levels 1 + 1/4 + 1/16 + 1/64 + ...\n * Minimum 1.33, but due to GPU layout may be 1.5\n */\nconst MIPMAP_FACTOR = 1.33;\nconst TYPES = ['SCALAR', 'VEC2', 'VEC3', 'VEC4'];\nconst ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT = [\n [Int8Array, 5120],\n [Uint8Array, 5121],\n [Int16Array, 5122],\n [Uint16Array, 5123],\n [Uint32Array, 5125],\n [Float32Array, 5126],\n [Float64Array, 5130]\n];\nconst ARRAY_TO_COMPONENT_TYPE = new Map(ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT);\nconst ATTRIBUTE_TYPE_TO_COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE = {\n 5120: 1,\n 5121: 1,\n 5122: 2,\n 5123: 2,\n 5125: 4,\n 5126: 4\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY = {\n 5120: Int8Array,\n 5121: Uint8Array,\n 5122: Int16Array,\n 5123: Uint16Array,\n 5125: Uint32Array,\n 5126: Float32Array\n};\nexport function getAccessorTypeFromSize(size) {\n const type = TYPES[size - 1];\n return type || TYPES[0];\n}\nexport function getComponentTypeFromArray(typedArray) {\n const componentType = ARRAY_TO_COMPONENT_TYPE.get(typedArray.constructor);\n if (!componentType) {\n throw new Error('Illegal typed array');\n }\n return componentType;\n}\nexport function getAccessorArrayTypeAndLength(accessor, bufferView) {\n const ArrayType = ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY[accessor.componentType];\n const components = ATTRIBUTE_TYPE_TO_COMPONENTS[accessor.type];\n const bytesPerComponent = ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[accessor.componentType];\n const length = accessor.count * components;\n const byteLength = accessor.count * components * bytesPerComponent;\n assert(byteLength >= 0 && byteLength <= bufferView.byteLength);\n const componentByteSize = BYTES[accessor.componentType];\n const numberOfComponentsInElement = COMPONENTS[accessor.type];\n return { ArrayType, length, byteLength, componentByteSize, numberOfComponentsInElement };\n}\n/**\n * Calculate the GPU memory used by a GLTF tile, for both buffer and texture memory\n * @param gltf - the gltf content of a GLTF tile\n * @returns - total memory usage in bytes\n */\nexport function getMemoryUsageGLTF(gltf) {\n let { images, bufferViews } = gltf;\n images = images || [];\n bufferViews = bufferViews || [];\n const imageBufferViews = images.map((i) => i.bufferView);\n bufferViews = bufferViews.filter((view) => !imageBufferViews.includes(view));\n const bufferMemory = bufferViews.reduce((acc, view) => acc + view.byteLength, 0);\n // Assume each pixel of the texture is 4 channel with mimmaps (which add 33%)\n // TODO correctly handle compressed textures\n const pixelCount = images.reduce((acc, image) => {\n // @ts-ignore\n const { width, height } = image.image;\n return acc + width * height;\n }, 0);\n return bufferMemory + Math.ceil(4 * pixelCount * MIPMAP_FACTOR);\n}\n", "// TODO - GLTFScenegraph should use these\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorArrayTypeAndLength } from \"./gltf-utils.js\";\n// accepts buffer view index or buffer view object\n// returns a `Uint8Array`\nexport function getTypedArrayForBufferView(json, buffers, bufferViewIndex) {\n const bufferView = json.bufferViews[bufferViewIndex];\n assert(bufferView);\n // Get hold of the arrayBuffer\n const bufferIndex = bufferView.buffer;\n const binChunk = buffers[bufferIndex];\n assert(binChunk);\n const byteOffset = (bufferView.byteOffset || 0) + binChunk.byteOffset;\n return new Uint8Array(binChunk.arrayBuffer, byteOffset, bufferView.byteLength);\n}\n// accepts accessor index or accessor object\n// returns a `Uint8Array`\nexport function getTypedArrayForImageData(json, buffers, imageIndex) {\n const image = json.images[imageIndex];\n const bufferViewIndex = json.bufferViews[image.bufferView];\n return getTypedArrayForBufferView(json, buffers, bufferViewIndex);\n}\n/**\n * Gets data pointed by the accessor.\n * @param json - json part of gltf content of a GLTF tile.\n * @param buffers - Array containing buffers of data.\n * @param accessor - accepts accessor index or accessor object.\n * @returns {TypedArray} Typed array with type matching the type of data poited by the accessor.\n */\n// eslint-disable-next-line complexity\nexport function getTypedArrayForAccessor(json, buffers, accessor) {\n const gltfAccessor = typeof accessor === 'number' ? json.accessors?.[accessor] : accessor;\n if (!gltfAccessor) {\n throw new Error(`No gltf accessor ${JSON.stringify(accessor)}`);\n }\n const bufferView = json.bufferViews?.[gltfAccessor.bufferView || 0];\n if (!bufferView) {\n throw new Error(`No gltf buffer view for accessor ${bufferView}`);\n }\n // Get `arrayBuffer` the `bufferView` looks at\n const { arrayBuffer, byteOffset: bufferByteOffset } = buffers[bufferView.buffer];\n // Resulting byteOffset is sum of the buffer, accessor and bufferView byte offsets\n const byteOffset = (bufferByteOffset || 0) + (gltfAccessor.byteOffset || 0) + (bufferView.byteOffset || 0);\n // Deduce TypedArray type and its length from `accessor` and `bufferView` data\n const { ArrayType, length, componentByteSize, numberOfComponentsInElement } = getAccessorArrayTypeAndLength(gltfAccessor, bufferView);\n // 'length' is a whole number of components of all elements in the buffer pointed by the accessor\n // Multiplier to calculate the address of the element in the arrayBuffer\n const elementByteSize = componentByteSize * numberOfComponentsInElement;\n const elementAddressScale = bufferView.byteStride || elementByteSize;\n // Creare an array of component's type where all components (not just elements) will reside\n if (typeof bufferView.byteStride === 'undefined' || bufferView.byteStride === elementByteSize) {\n // No iterleaving\n const result = new ArrayType(arrayBuffer, byteOffset, length);\n return result;\n }\n // Iterleaving\n const result = new ArrayType(length);\n for (let i = 0; i < gltfAccessor.count; i++) {\n const values = new ArrayType(arrayBuffer, byteOffset + i * elementAddressScale, numberOfComponentsInElement);\n result.set(values, i * numberOfComponentsInElement);\n }\n return result;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { getBinaryImageMetadata } from '@loaders.gl/images';\nimport { padToNBytes, copyToArray } from '@loaders.gl/loader-utils';\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorTypeFromSize, getComponentTypeFromArray } from \"../gltf-utils/gltf-utils.js\";\nimport { getTypedArrayForAccessor as _getTypedArrayForAccessor } from \"../gltf-utils/get-typed-array.js\";\nfunction makeDefaultGLTFJson() {\n return {\n asset: {\n version: '2.0',\n generator: 'loaders.gl'\n },\n buffers: [],\n extensions: {},\n extensionsRequired: [],\n extensionsUsed: []\n };\n}\n/**\n * Class for structured access to GLTF data\n */\nexport class GLTFScenegraph {\n // internal\n gltf;\n sourceBuffers;\n byteLength;\n // TODO - why is this not GLTFWithBuffers - what happens to images?\n constructor(gltf) {\n // Declare locally so\n this.gltf = {\n json: gltf?.json || makeDefaultGLTFJson(),\n buffers: gltf?.buffers || [],\n images: gltf?.images || []\n };\n this.sourceBuffers = [];\n this.byteLength = 0;\n // Initialize buffers\n if (this.gltf.buffers && this.gltf.buffers[0]) {\n this.byteLength = this.gltf.buffers[0].byteLength;\n this.sourceBuffers = [this.gltf.buffers[0]];\n }\n }\n // Accessors\n get json() {\n return this.gltf.json;\n }\n getApplicationData(key) {\n // TODO - Data is already unpacked by GLBParser\n const data = this.json[key];\n return data;\n }\n getExtraData(key) {\n // TODO - Data is already unpacked by GLBParser\n const extras = (this.json.extras || {});\n return extras[key];\n }\n hasExtension(extensionName) {\n const isUsedExtension = this.getUsedExtensions().find((name) => name === extensionName);\n const isRequiredExtension = this.getRequiredExtensions().find((name) => name === extensionName);\n return typeof isUsedExtension === 'string' || typeof isRequiredExtension === 'string';\n }\n getExtension(extensionName) {\n const isExtension = this.getUsedExtensions().find((name) => name === extensionName);\n const extensions = this.json.extensions || {};\n return isExtension ? extensions[extensionName] : null;\n }\n getRequiredExtension(extensionName) {\n const isRequired = this.getRequiredExtensions().find((name) => name === extensionName);\n return isRequired ? this.getExtension(extensionName) : null;\n }\n getRequiredExtensions() {\n return this.json.extensionsRequired || [];\n }\n getUsedExtensions() {\n return this.json.extensionsUsed || [];\n }\n getRemovedExtensions() {\n return (this.json.extensionsRemoved || []);\n }\n getObjectExtension(object, extensionName) {\n const extensions = object.extensions || {};\n return extensions[extensionName];\n }\n getScene(index) {\n return this.getObject('scenes', index);\n }\n getNode(index) {\n return this.getObject('nodes', index);\n }\n getSkin(index) {\n return this.getObject('skins', index);\n }\n getMesh(index) {\n return this.getObject('meshes', index);\n }\n getMaterial(index) {\n return this.getObject('materials', index);\n }\n getAccessor(index) {\n return this.getObject('accessors', index);\n }\n // getCamera(index: number): object | null {\n // return null; // TODO: fix thi: object as null;\n // }\n getTexture(index) {\n return this.getObject('textures', index);\n }\n getSampler(index) {\n return this.getObject('samplers', index);\n }\n getImage(index) {\n return this.getObject('images', index);\n }\n getBufferView(index) {\n return this.getObject('bufferViews', index);\n }\n getBuffer(index) {\n return this.getObject('buffers', index);\n }\n getObject(array, index) {\n // check if already resolved\n if (typeof index === 'object') {\n return index;\n }\n const object = this.json[array] && this.json[array][index];\n if (!object) {\n throw new Error(`glTF file error: Could not find ${array}[${index}]`); // eslint-disable-line\n }\n return object;\n }\n /**\n * Accepts buffer view index or buffer view object\n * @returns a `Uint8Array`\n */\n getTypedArrayForBufferView(bufferView) {\n bufferView = this.getBufferView(bufferView);\n // @ts-ignore\n const bufferIndex = bufferView.buffer;\n // Get hold of the arrayBuffer\n // const buffer = this.getBuffer(bufferIndex);\n const binChunk = this.gltf.buffers[bufferIndex];\n assert(binChunk);\n // @ts-ignore\n const byteOffset = (bufferView.byteOffset || 0) + binChunk.byteOffset;\n // @ts-ignore\n return new Uint8Array(binChunk.arrayBuffer, byteOffset, bufferView.byteLength);\n }\n /** Accepts accessor index or accessor object\n * @returns a typed array with type that matches the types\n */\n getTypedArrayForAccessor(accessor) {\n // @ts-ignore\n const gltfAccessor = this.getAccessor(accessor);\n return _getTypedArrayForAccessor(this.gltf.json, this.gltf.buffers, gltfAccessor);\n }\n /** accepts accessor index or accessor object\n * returns a `Uint8Array`\n */\n getTypedArrayForImageData(image) {\n // @ts-ignore\n image = this.getAccessor(image);\n // @ts-ignore\n const bufferView = this.getBufferView(image.bufferView);\n const buffer = this.getBuffer(bufferView.buffer);\n // @ts-ignore\n const arrayBuffer = buffer.data;\n const byteOffset = bufferView.byteOffset || 0;\n return new Uint8Array(arrayBuffer, byteOffset, bufferView.byteLength);\n }\n // MODIFERS\n /**\n * Add an extra application-defined key to the top-level data structure\n */\n addApplicationData(key, data) {\n this.json[key] = data;\n return this;\n }\n /**\n * `extras` - Standard GLTF field for storing application specific data\n */\n addExtraData(key, data) {\n this.json.extras = this.json.extras || {};\n this.json.extras[key] = data;\n return this;\n }\n addObjectExtension(object, extensionName, data) {\n // @ts-ignore\n object.extensions = object.extensions || {};\n // TODO - clobber or merge?\n // @ts-ignore\n object.extensions[extensionName] = data;\n this.registerUsedExtension(extensionName);\n return this;\n }\n setObjectExtension(object, extensionName, data) {\n const extensions = object.extensions || {};\n extensions[extensionName] = data;\n // TODO - add to usedExtensions...\n }\n removeObjectExtension(object, extensionName) {\n const extensions = object?.extensions || {};\n if (extensions[extensionName]) {\n this.json.extensionsRemoved = this.json.extensionsRemoved || [];\n const extensionsRemoved = this.json.extensionsRemoved;\n if (!extensionsRemoved.includes(extensionName)) {\n extensionsRemoved.push(extensionName);\n }\n }\n delete extensions[extensionName];\n }\n /**\n * Add to standard GLTF top level extension object, mark as used\n */\n addExtension(extensionName, extensionData = {}) {\n assert(extensionData);\n this.json.extensions = this.json.extensions || {};\n this.json.extensions[extensionName] = extensionData;\n this.registerUsedExtension(extensionName);\n return extensionData;\n }\n /**\n * Standard GLTF top level extension object, mark as used and required\n */\n addRequiredExtension(extensionName, extensionData = {}) {\n assert(extensionData);\n this.addExtension(extensionName, extensionData);\n this.registerRequiredExtension(extensionName);\n return extensionData;\n }\n /**\n * Add extensionName to list of used extensions\n */\n registerUsedExtension(extensionName) {\n this.json.extensionsUsed = this.json.extensionsUsed || [];\n if (!this.json.extensionsUsed.find((ext) => ext === extensionName)) {\n this.json.extensionsUsed.push(extensionName);\n }\n }\n /**\n * Add extensionName to list of required extensions\n */\n registerRequiredExtension(extensionName) {\n this.registerUsedExtension(extensionName);\n this.json.extensionsRequired = this.json.extensionsRequired || [];\n if (!this.json.extensionsRequired.find((ext) => ext === extensionName)) {\n this.json.extensionsRequired.push(extensionName);\n }\n }\n /**\n * Removes an extension from the top-level list\n */\n removeExtension(extensionName) {\n if (this.json.extensions?.[extensionName]) {\n this.json.extensionsRemoved = this.json.extensionsRemoved || [];\n const extensionsRemoved = this.json.extensionsRemoved;\n if (!extensionsRemoved.includes(extensionName)) {\n extensionsRemoved.push(extensionName);\n }\n }\n if (this.json.extensions) {\n delete this.json.extensions[extensionName];\n }\n if (this.json.extensionsRequired) {\n this._removeStringFromArray(this.json.extensionsRequired, extensionName);\n }\n if (this.json.extensionsUsed) {\n this._removeStringFromArray(this.json.extensionsUsed, extensionName);\n }\n }\n /**\n * Set default scene which is to be displayed at load time\n */\n setDefaultScene(sceneIndex) {\n this.json.scene = sceneIndex;\n }\n /**\n * @todo: add more properties for scene initialization:\n * name`, `extensions`, `extras`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#reference-scene\n */\n addScene(scene) {\n const { nodeIndices } = scene;\n this.json.scenes = this.json.scenes || [];\n this.json.scenes.push({ nodes: nodeIndices });\n return this.json.scenes.length - 1;\n }\n /**\n * @todo: add more properties for node initialization:\n * `name`, `extensions`, `extras`, `camera`, `children`, `skin`, `rotation`, `scale`, `translation`, `weights`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#node\n */\n addNode(node) {\n const { meshIndex, matrix } = node;\n this.json.nodes = this.json.nodes || [];\n const nodeData = { mesh: meshIndex };\n if (matrix) {\n // @ts-ignore\n nodeData.matrix = matrix;\n }\n this.json.nodes.push(nodeData);\n return this.json.nodes.length - 1;\n }\n /** Adds a mesh to the json part */\n addMesh(mesh) {\n const { attributes, indices, material, mode = 4 } = mesh;\n const accessors = this._addAttributes(attributes);\n const glTFMesh = {\n primitives: [\n {\n attributes: accessors,\n mode\n }\n ]\n };\n if (indices) {\n const indicesAccessor = this._addIndices(indices);\n // @ts-ignore\n glTFMesh.primitives[0].indices = indicesAccessor;\n }\n if (Number.isFinite(material)) {\n // @ts-ignore\n glTFMesh.primitives[0].material = material;\n }\n this.json.meshes = this.json.meshes || [];\n this.json.meshes.push(glTFMesh);\n return this.json.meshes.length - 1;\n }\n addPointCloud(attributes) {\n // @ts-ignore\n const accessorIndices = this._addAttributes(attributes);\n const glTFMesh = {\n primitives: [\n {\n attributes: accessorIndices,\n mode: 0 // GL.POINTS\n }\n ]\n };\n this.json.meshes = this.json.meshes || [];\n this.json.meshes.push(glTFMesh);\n return this.json.meshes.length - 1;\n }\n /**\n * Adds a binary image. Builds glTF \"JSON metadata\" and saves buffer reference\n * Buffer will be copied into BIN chunk during \"pack\"\n * Currently encodes as glTF image\n * @param imageData\n * @param mimeType\n */\n addImage(imageData, mimeTypeOpt) {\n // If image is referencing a bufferView instead of URI, mimeType must be defined:\n // https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#images\n // \"a reference to a bufferView; in that case mimeType must be defined.\"\n const metadata = getBinaryImageMetadata(imageData);\n const mimeType = mimeTypeOpt || metadata?.mimeType;\n const bufferViewIndex = this.addBufferView(imageData);\n const glTFImage = {\n bufferView: bufferViewIndex,\n mimeType\n };\n this.json.images = this.json.images || [];\n this.json.images.push(glTFImage);\n return this.json.images.length - 1;\n }\n /**\n * Add one untyped source buffer, create a matching glTF `bufferView`, and return its index\n * @param buffer\n */\n addBufferView(buffer, bufferIndex = 0, byteOffset = this.byteLength) {\n const byteLength = buffer.byteLength;\n assert(Number.isFinite(byteLength));\n // Add this buffer to the list of buffers to be written to the body.\n this.sourceBuffers = this.sourceBuffers || [];\n this.sourceBuffers.push(buffer);\n const glTFBufferView = {\n buffer: bufferIndex,\n // Write offset from the start of the binary body\n byteOffset,\n byteLength\n };\n // We've now added the contents to the body, so update the total length\n // Every sub-chunk needs to be 4-byte align ed\n this.byteLength += padToNBytes(byteLength, 4);\n // Add a bufferView indicating start and length of this binary sub-chunk\n this.json.bufferViews = this.json.bufferViews || [];\n this.json.bufferViews.push(glTFBufferView);\n return this.json.bufferViews.length - 1;\n }\n /**\n * Adds an accessor to a bufferView\n * @param bufferViewIndex\n * @param accessor\n */\n addAccessor(bufferViewIndex, accessor) {\n const glTFAccessor = {\n bufferView: bufferViewIndex,\n // @ts-ignore\n type: getAccessorTypeFromSize(accessor.size),\n // @ts-ignore\n componentType: accessor.componentType,\n // @ts-ignore\n count: accessor.count,\n // @ts-ignore\n max: accessor.max,\n // @ts-ignore\n min: accessor.min\n };\n this.json.accessors = this.json.accessors || [];\n this.json.accessors.push(glTFAccessor);\n return this.json.accessors.length - 1;\n }\n /**\n * Add a binary buffer. Builds glTF \"JSON metadata\" and saves buffer reference\n * Buffer will be copied into BIN chunk during \"pack\"\n * Currently encodes buffers as glTF accessors, but this could be optimized\n * @param sourceBuffer\n * @param accessor\n */\n addBinaryBuffer(sourceBuffer, accessor = { size: 3 }) {\n const bufferViewIndex = this.addBufferView(sourceBuffer);\n // @ts-ignore\n let minMax = { min: accessor.min, max: accessor.max };\n if (!minMax.min || !minMax.max) {\n // @ts-ignore\n minMax = this._getAccessorMinMax(sourceBuffer, accessor.size);\n }\n const accessorDefaults = {\n // @ts-ignore\n size: accessor.size,\n componentType: getComponentTypeFromArray(sourceBuffer),\n // @ts-ignore\n count: Math.round(sourceBuffer.length / accessor.size),\n min: minMax.min,\n max: minMax.max\n };\n return this.addAccessor(bufferViewIndex, Object.assign(accessorDefaults, accessor));\n }\n /**\n * Adds a texture to the json part\n * @todo: add more properties for texture initialization\n * `sampler`, `name`, `extensions`, `extras`\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#texture\n */\n addTexture(texture) {\n const { imageIndex } = texture;\n const glTFTexture = {\n source: imageIndex\n };\n this.json.textures = this.json.textures || [];\n this.json.textures.push(glTFTexture);\n return this.json.textures.length - 1;\n }\n /** Adds a material to the json part */\n addMaterial(pbrMaterialInfo) {\n this.json.materials = this.json.materials || [];\n this.json.materials.push(pbrMaterialInfo);\n return this.json.materials.length - 1;\n }\n /** Pack the binary chunk */\n createBinaryChunk() {\n // Encoder expects this array undefined or empty\n this.gltf.buffers = [];\n // Allocate total array\n const totalByteLength = this.byteLength;\n const arrayBuffer = new ArrayBuffer(totalByteLength);\n const targetArray = new Uint8Array(arrayBuffer);\n // Copy each array into\n let dstByteOffset = 0;\n for (const sourceBuffer of this.sourceBuffers || []) {\n dstByteOffset = copyToArray(sourceBuffer, targetArray, dstByteOffset);\n }\n // Update the glTF BIN CHUNK byte length\n if (this.json?.buffers?.[0]) {\n this.json.buffers[0].byteLength = totalByteLength;\n }\n else {\n this.json.buffers = [{ byteLength: totalByteLength }];\n }\n // Save generated arrayBuffer\n this.gltf.binary = arrayBuffer;\n // Put arrayBuffer to sourceBuffers for possible additional writing data in the chunk\n this.sourceBuffers = [arrayBuffer];\n }\n // PRIVATE\n _removeStringFromArray(array, string) {\n let found = true;\n while (found) {\n const index = array.indexOf(string);\n if (index > -1) {\n array.splice(index, 1);\n }\n else {\n found = false;\n }\n }\n }\n /**\n * Add attributes to buffers and create `attributes` object which is part of `mesh`\n */\n _addAttributes(attributes = {}) {\n const result = {};\n for (const attributeKey in attributes) {\n const attributeData = attributes[attributeKey];\n const attrName = this._getGltfAttributeName(attributeKey);\n const accessor = this.addBinaryBuffer(attributeData.value, attributeData);\n result[attrName] = accessor;\n }\n return result;\n }\n /**\n * Add indices to buffers\n */\n _addIndices(indices) {\n return this.addBinaryBuffer(indices, { size: 1 });\n }\n /**\n * Deduce gltf specific attribue name from input attribute name\n */\n _getGltfAttributeName(attributeName) {\n switch (attributeName.toLowerCase()) {\n case 'position':\n case 'positions':\n case 'vertices':\n return 'POSITION';\n case 'normal':\n case 'normals':\n return 'NORMAL';\n case 'color':\n case 'colors':\n return 'COLOR_0';\n case 'texcoord':\n case 'texcoords':\n return 'TEXCOORD_0';\n default:\n return attributeName;\n }\n }\n /**\n * Calculate `min` and `max` arrays of accessor according to spec:\n * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#reference-accessor\n */\n _getAccessorMinMax(buffer, size) {\n const result = { min: null, max: null };\n if (buffer.length < size) {\n return result;\n }\n // @ts-ignore\n result.min = [];\n // @ts-ignore\n result.max = [];\n const initValues = buffer.subarray(0, size);\n for (const value of initValues) {\n // @ts-ignore\n result.min.push(value);\n // @ts-ignore\n result.max.push(value);\n }\n for (let index = size; index < buffer.length; index += size) {\n for (let componentIndex = 0; componentIndex < size; componentIndex++) {\n // @ts-ignore\n result.min[0 + componentIndex] = Math.min(\n // @ts-ignore\n result.min[0 + componentIndex], buffer[index + componentIndex]);\n // @ts-ignore\n result.max[0 + componentIndex] = Math.max(\n // @ts-ignore\n result.max[0 + componentIndex], buffer[index + componentIndex]);\n }\n }\n return result;\n }\n}\n", "/**\n * loaders.gl, MIT license\n *\n * Shared code for 3DTiles extensions:\n * * EXT_feature_metadata\n * * EXT_mesh_features\n * * EXT_structural_metadata\n */\nimport { getComponentTypeFromArray } from \"../../gltf-utils/gltf-utils.js\";\nimport { getImageData } from '@loaders.gl/images';\nfunction emod(n) {\n return ((n % 1) + 1) % 1;\n}\nconst ATTRIBUTE_TYPE_TO_COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16,\n BOOLEAN: 1,\n STRING: 1,\n ENUM: 1\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY = {\n INT8: Int8Array,\n UINT8: Uint8Array,\n INT16: Int16Array,\n UINT16: Uint16Array,\n INT32: Int32Array,\n UINT32: Uint32Array,\n INT64: BigInt64Array,\n UINT64: BigUint64Array,\n FLOAT32: Float32Array,\n FLOAT64: Float64Array\n};\nconst ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE = {\n INT8: 1,\n UINT8: 1,\n INT16: 2,\n UINT16: 2,\n INT32: 4,\n UINT32: 4,\n INT64: 8,\n UINT64: 8,\n FLOAT32: 4,\n FLOAT64: 8\n};\nexport function getArrayElementByteSize(attributeType, componentType) {\n return (ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[componentType] *\n ATTRIBUTE_TYPE_TO_COMPONENTS[attributeType]);\n}\n/**\n * Gets offset array from `arrayOffsets` or `stringOffsets`.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param bufferViewIndex - Buffer view index\n * @param offsetType - The type of values in `arrayOffsets` or `stringOffsets`.\n * @param numberOfElements - The number of elements in each property array.\n * @returns Array of values offsets. The number of offsets in the array is equal to `numberOfElements` plus one.\n */\nexport function getOffsetsForProperty(scenegraph, bufferViewIndex, offsetType, numberOfElements) {\n if (offsetType !== 'UINT8' &&\n offsetType !== 'UINT16' &&\n offsetType !== 'UINT32' &&\n offsetType !== 'UINT64') {\n return null;\n }\n const arrayOffsetsBytes = scenegraph.getTypedArrayForBufferView(bufferViewIndex);\n const arrayOffsets = convertRawBufferToMetadataArray(arrayOffsetsBytes, 'SCALAR', // offsets consist of ONE component\n offsetType, numberOfElements + 1 // The number of offsets is equal to the property table `count` plus one.\n );\n // We don't support BigInt offsets at the moment. It requires additional logic and potential issues in Safari\n if (arrayOffsets instanceof BigInt64Array || arrayOffsets instanceof BigUint64Array) {\n return null;\n }\n return arrayOffsets;\n}\n/**\n * Converts raw bytes that are in the buffer to an array of the type defined by the schema.\n * @param data - Raw bytes in the buffer.\n * @param attributeType - SCALAR, VECN, MATN.\n * @param componentType - Type of the component in elements, e.g. 'UINT8' or 'FLOAT32'.\n * @param elementCount - Number of elements in the array. Default value is 1.\n * @returns Data array\n */\nexport function convertRawBufferToMetadataArray(data, attributeType, componentType, elementCount = 1) {\n const numberOfComponents = ATTRIBUTE_TYPE_TO_COMPONENTS[attributeType];\n const ArrayType = ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY[componentType];\n const size = ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE[componentType];\n const length = elementCount * numberOfComponents;\n const byteLength = length * size;\n let buffer = data.buffer;\n let offset = data.byteOffset;\n if (offset % size !== 0) {\n const bufferArray = new Uint8Array(buffer);\n buffer = bufferArray.slice(offset, offset + byteLength).buffer;\n offset = 0;\n }\n return new ArrayType(buffer, offset, length);\n}\n/**\n * Processes data encoded in the texture associated with the primitive.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param textureInfo - Reference to the texture where extension data are stored.\n * @param primitive - Primitive object in the mesh.\n * @returns Array of data taken. Null if data can't be taken from the texture.\n */\nexport function getPrimitiveTextureData(scenegraph, textureInfo, primitive) {\n /*\n texture.index is an index for the \"textures\" array.\n The texture object referenced by this index looks like this:\n {\n \"sampler\": 0,\n \"source\": 0\n }\n \"sampler\" is an index for the \"samplers\" array\n \"source\" is an index for the \"images\" array that contains data stored in rgba channels of the image.\n \n texture.texCoord is a number-suffix (like 1) for an attribute like \"TEXCOORD_1\" in meshes.primitives\n The value of \"TEXCOORD_1\" is an accessor that is used to get coordinates.\n These coordinates are being used to get data from the image.\n \n Default for texture.texCoord is 0\n @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/specification/2.0/schema/textureInfo.schema.json\n */\n const texCoordAccessorKey = `TEXCOORD_${textureInfo.texCoord || 0}`;\n const texCoordAccessorIndex = primitive.attributes[texCoordAccessorKey];\n const textureCoordinates = scenegraph.getTypedArrayForAccessor(texCoordAccessorIndex);\n const json = scenegraph.gltf.json;\n const textureIndex = textureInfo.index;\n const imageIndex = json.textures?.[textureIndex]?.source;\n if (typeof imageIndex !== 'undefined') {\n const mimeType = json.images?.[imageIndex]?.mimeType;\n const parsedImage = scenegraph.gltf.images?.[imageIndex];\n // Checking for width is to prevent handling Un-processed images (e.g. [analyze] stage, where loadImages option is set to false)\n if (parsedImage && typeof parsedImage.width !== 'undefined') {\n const textureData = [];\n for (let index = 0; index < textureCoordinates.length; index += 2) {\n const value = getImageValueByCoordinates(parsedImage, mimeType, textureCoordinates, index, textureInfo.channels);\n textureData.push(value);\n }\n return textureData;\n }\n }\n return [];\n}\n/**\n * Puts property data to attributes.\n * It creates corresponding buffer, bufferView and accessor\n * so the data can be accessed like regular data stored in buffers.\n * @param scenegraph - Scenegraph object.\n * @param attributeName - Name of the attribute.\n * @param propertyData - Property data to store.\n * @param featureTable - Array where unique data from the property data are being stored.\n * @param primitive - Primitive object.\n */\nexport function primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTable, primitive) {\n // No reason to create an empty buffer if there is no property data to store.\n if (!propertyData?.length) {\n return;\n }\n /*\n featureTable will contain unique values, e.g.\n propertyData = [24, 35, 28, 24]\n featureTable = [24, 35, 28]\n featureIndices will contain indices that refer featureTextureTable, e.g.\n featureIndices = [0, 1, 2, 0]\n */\n const featureIndices = [];\n for (const texelData of propertyData) {\n let index = featureTable.findIndex((item) => item === texelData);\n if (index === -1) {\n index = featureTable.push(texelData) - 1;\n }\n featureIndices.push(index);\n }\n const typedArray = new Uint32Array(featureIndices);\n const bufferIndex = scenegraph.gltf.buffers.push({\n arrayBuffer: typedArray.buffer,\n byteOffset: typedArray.byteOffset,\n byteLength: typedArray.byteLength\n }) - 1;\n const bufferViewIndex = scenegraph.addBufferView(typedArray, bufferIndex, 0);\n const accessorIndex = scenegraph.addAccessor(bufferViewIndex, {\n size: 1,\n componentType: getComponentTypeFromArray(typedArray),\n count: typedArray.length\n });\n primitive.attributes[attributeName] = accessorIndex;\n}\n/**\n * Gets the value from the texture by coordinates provided.\n * @param parsedImage - Image where the data are stored.\n * @param mimeType - MIME type.\n * @param textureCoordinates - uv coordinates to access data in the image.\n * @param index - Index of uv coordinates in the array textureCoordinates.\n * @param channels - Image channels where data are stored.\n * Channels of an RGBA texture are numbered 0..3 respectively.\n * For Ext_mesh_features and EXT_strucural_metadata the channels default is [0]\n * @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/extensions/2.0/Vendor/EXT_mesh_features/schema/featureIdTexture.schema.json\n * @see https://github.com/CesiumGS/glTF/blob/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTexture.property.schema.json\n * @returns Value taken from the image.\n */\nfunction getImageValueByCoordinates(parsedImage, mimeType, textureCoordinates, index, channels = [0]) {\n const CHANNELS_MAP = {\n r: { offset: 0, shift: 0 },\n g: { offset: 1, shift: 8 },\n b: { offset: 2, shift: 16 },\n a: { offset: 3, shift: 24 }\n };\n const u = textureCoordinates[index];\n const v = textureCoordinates[index + 1];\n let components = 1;\n if (mimeType && (mimeType.indexOf('image/jpeg') !== -1 || mimeType.indexOf('image/png') !== -1))\n components = 4;\n const offset = coordinatesToOffset(u, v, parsedImage, components);\n let value = 0;\n for (const c of channels) {\n /*\n According to the EXT_feature_metadata extension specification:\n Channels are labeled by rgba and are swizzled with a string of 1-4 characters.\n According to the EXT_mesh_features extension specification:\n The channels array contains non-negative integer values corresponding to channels of the source texture that the feature ID consists of.\n Channels of an RGBA texture are numbered 0\u20133 respectively.\n Function getImageValueByCoordinates is used to process both extensions.\n So, there should be possible to get the element of CHANNELS_MAP by either index (0, 1, 2, 3) or key (r, g, b, a).\n */\n const map = typeof c === 'number' ? Object.values(CHANNELS_MAP)[c] : CHANNELS_MAP[c];\n const imageOffset = offset + map.offset;\n const imageData = getImageData(parsedImage);\n if (imageData.data.length <= imageOffset) {\n throw new Error(`${imageData.data.length} <= ${imageOffset}`);\n }\n const imageValue = imageData.data[imageOffset];\n value |= imageValue << map.shift;\n }\n return value;\n}\n/**\n * Retrieves the offset in the image where the data are stored.\n * @param u - u-coordinate.\n * @param v - v-coordinate.\n * @param parsedImage - Image where the data are stored.\n * @param componentsCount - Number of components the data consists of.\n * @returns Offset in the image where the data are stored.\n */\nfunction coordinatesToOffset(u, v, parsedImage, componentsCount = 1) {\n const w = parsedImage.width;\n const iX = emod(u) * (w - 1);\n const indX = Math.round(iX);\n const h = parsedImage.height;\n const iY = emod(v) * (h - 1);\n const indY = Math.round(iY);\n const components = parsedImage.components ? parsedImage.components : componentsCount;\n // components is a number of channels in the image\n const offset = (indY * w + indX) * components;\n return offset;\n}\n/**\n * Parses variable-length array data.\n * In this case every value of the property in the table will be an array\n * of arbitrary length.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - Number of rows in the property table.\n * @param arrayOffsets - Offsets of nested arrays in the flat values array.\n * @param valuesDataBytesLength - Data byte length.\n * @param valueSize - Value size in bytes.\n * @returns Array of typed arrays.\n */\nexport function parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytesLength, valueSize) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const arrayOffset = arrayOffsets[index];\n const arrayByteSize = arrayOffsets[index + 1] - arrayOffsets[index];\n if (arrayByteSize + arrayOffset > valuesDataBytesLength) {\n break;\n }\n const typedArrayOffset = arrayOffset / valueSize;\n const elementCount = arrayByteSize / valueSize;\n attributeValueArray.push(valuesData.slice(typedArrayOffset, typedArrayOffset + elementCount));\n }\n return attributeValueArray;\n}\n/**\n * Parses fixed-length array data.\n * In this case every value of the property in the table will be an array\n * of constant length equal to `arrayCount`.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - Number of rows in the property table.\n * @param arrayCount - Nested arrays length.\n * @returns Array of typed arrays.\n */\nexport function parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const elementOffset = index * arrayCount;\n attributeValueArray.push(valuesData.slice(elementOffset, elementOffset + arrayCount));\n }\n return attributeValueArray;\n}\n/**\n * Decodes properties of string type from binary source.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @param stringOffsets - Index of the buffer view containing offsets for strings. It should be available for string type.\n * @returns String property values\n */\nexport function getPropertyDataString(numberOfElements, valuesDataBytes, arrayOffsets, stringOffsets) {\n if (arrayOffsets) {\n // TODO: implement it as soon as we have the corresponding tileset\n throw new Error('Not implemented - arrayOffsets for strings is specified');\n }\n if (stringOffsets) {\n const stringsArray = [];\n const textDecoder = new TextDecoder('utf8');\n let stringOffset = 0;\n for (let index = 0; index < numberOfElements; index++) {\n const stringByteSize = stringOffsets[index + 1] - stringOffsets[index];\n if (stringByteSize + stringOffset <= valuesDataBytes.length) {\n const stringData = valuesDataBytes.subarray(stringOffset, stringByteSize + stringOffset);\n const stringAttribute = textDecoder.decode(stringData);\n stringsArray.push(stringAttribute);\n stringOffset += stringByteSize;\n }\n }\n return stringsArray;\n }\n return [];\n}\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { convertRawBufferToMetadataArray, getPrimitiveTextureData, primitivePropertyDataToAttributes, getArrayElementByteSize, getOffsetsForProperty, parseVariableLengthArrayNumeric, parseFixedLengthArrayNumeric, getPropertyDataString } from \"./utils/3d-tiles-utils.js\";\nconst EXT_STRUCTURAL_METADATA_NAME = 'EXT_structural_metadata';\nexport const name = EXT_STRUCTURAL_METADATA_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtStructuralMetadata(scenegraph, options);\n}\n/*\n// Example of the extension.\n// See more info at https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata\nconst extensions = {\n \"extensions\": {\n \"EXT_structural_metadata\": {\n \"schema\": {\n \"classes\": {\n \"tree\": {\n \"name\": \"Tree\",\n \"description\": \"Woody, perennial plant.\",\n \"properties\": {\n \"species\": {\n \"description\": \"Type of tree.\",\n \"type\": \"ENUM\",\n \"enumType\": \"speciesEnum\",\n \"required\": true\n },\n \"age\": {\n \"description\": \"The age of the tree, in years\",\n \"type\": \"SCALAR\",\n \"componentType\": \"UINT8\",\n \"required\": true\n }\n }\n }\n },\n \"enums\": {\n \"speciesEnum\": {\n \"name\": \"Species\",\n \"description\": \"An example enum for tree species.\",\n // valueType is not defined here. Default is \"UINT16\"\n \"values\": [\n { \"name\": \"Unspecified\", \"value\": 0 },\n { \"name\": \"Oak\", \"value\": 1 }\n ]\n }\n }\n },\n \"propertyTables\": [{\n \"name\": \"tree_survey_2021-09-29\",\n \"class\": \"tree\",\n \"count\": 10, // The number of elements in each property array (in `species`, in `age`).\n \"properties\": {\n \"species\": {\n \"values\": 0, // It's an index of the buffer view containing property values.\n },\n \"age\": {\n \"values\": 1\n }\n }\n }]\n }\n }\n}\n*/\n/**\n * Decodes feature metadata from extension.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param options - GLTFLoader options.\n */\nfunction decodeExtStructuralMetadata(scenegraph, options) {\n // Decoding metadata involves buffers processing.\n // So, if buffers have not been loaded, there is no reason to process metadata.\n if (!options.gltf?.loadBuffers) {\n return;\n }\n const extension = scenegraph.getExtension(EXT_STRUCTURAL_METADATA_NAME);\n if (!extension) {\n return;\n }\n if (options.gltf?.loadImages) {\n decodePropertyTextures(scenegraph, extension);\n }\n decodePropertyTables(scenegraph, extension);\n}\n/**\n * Processes the data stored in the textures\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTextures(scenegraph, extension) {\n const propertyTextures = extension.propertyTextures;\n const json = scenegraph.gltf.json;\n if (propertyTextures && json.meshes) {\n // Iterate through all meshes/primitives.\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processPrimitivePropertyTextures(scenegraph, propertyTextures, primitive, extension);\n }\n }\n }\n}\n/**\n * Processes the data stored in the property tables.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTables(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const propertyTables = extension.propertyTables;\n if (schemaClasses && propertyTables) {\n for (const schemaName in schemaClasses) {\n const propertyTable = findPropertyTableByClass(propertyTables, schemaName);\n if (propertyTable) {\n processPropertyTable(scenegraph, schema, propertyTable);\n }\n }\n }\n}\n/**\n * Finds the property table by class name.\n * @param propertyTables - propertyTable definition taken from the top-level extension.\n * @param schemaClassName - class name in the extension schema.\n */\nfunction findPropertyTableByClass(propertyTables, schemaClassName) {\n for (const propertyTable of propertyTables) {\n if (propertyTable.class === schemaClassName) {\n return propertyTable;\n }\n }\n return null;\n}\n/**\n * Takes data from property textures reffered by the primitive.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTextures - propertyTexture definition taken from the top-level extention.\n * @param primitive - Primitive object.\n * @param extension - Top-level extension.\n */\nfunction processPrimitivePropertyTextures(scenegraph, propertyTextures, primitive, extension) {\n if (!propertyTextures) {\n return;\n }\n const primitiveExtension = primitive.extensions?.[EXT_STRUCTURAL_METADATA_NAME];\n const primitivePropertyTextureIndices = primitiveExtension?.propertyTextures;\n if (!primitivePropertyTextureIndices) {\n return;\n }\n for (const primitivePropertyTextureIndex of primitivePropertyTextureIndices) {\n const propertyTexture = propertyTextures[primitivePropertyTextureIndex];\n processPrimitivePropertyTexture(scenegraph, propertyTexture, primitive, extension);\n }\n}\n/**\n * Takes property data from the texture pointed by the primitive and appends them to `exension.data`.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTexture - propertyTexture definition taken from the top-level extension.\n * @param primitive - Primitive object.\n * @param extension - Top-level extension.\n */\nfunction processPrimitivePropertyTexture(scenegraph, propertyTexture, primitive, extension) {\n if (!propertyTexture.properties) {\n return;\n }\n if (!extension.dataAttributeNames) {\n extension.dataAttributeNames = [];\n }\n /* Iterate through all properties defined in propertyTexture, e.g. \"speed\" and \"direction\":\n {\n \"class\": \"wind\",\n \"properties\": {\n \"speed\": {\n \"index\": 0,\n \"texCoord\": 0,\n \"channels\": [0]\n },\n \"direction\": {\n \"index\": 0,\n \"texCoord\": 0,\n \"channels\": [1, 2]\n }\n }\n }\n */\n const className = propertyTexture.class;\n for (const propertyName in propertyTexture.properties) {\n // propertyName has values like \"speed\", \"direction\"\n // Make attributeName as a combination of the class name and the propertyName like \"wind_speed\" or \"wind_direction\"\n const attributeName = `${className}_${propertyName}`;\n const textureInfoTopLevel = propertyTexture.properties?.[propertyName];\n if (!textureInfoTopLevel) {\n // eslint-disable-next-line no-continue\n continue;\n }\n // The data taken from all meshes/primitives (the same property, e.g. \"speed\" or \"direction\") will be combined into one array and saved in textureInfoTopLevel.data\n // Initially textureInfoTopLevel.data will be initialized with an empty array.\n if (!textureInfoTopLevel.data) {\n textureInfoTopLevel.data = [];\n }\n const featureTextureTable = textureInfoTopLevel.data;\n const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);\n if (propertyData === null) {\n // eslint-disable-next-line no-continue\n continue;\n }\n primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);\n textureInfoTopLevel.data = featureTextureTable;\n extension.dataAttributeNames.push(attributeName);\n }\n}\n/**\n * Navigates through all properies in the property table, gets properties data,\n * and put the data to `propertyTable.data` as an array.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - schema object.\n * @param propertyTable - propertyTable definition taken from the top-level extension.\n */\nfunction processPropertyTable(scenegraph, schema, propertyTable) {\n const schemaClass = schema.classes?.[propertyTable.class];\n if (!schemaClass) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);\n }\n const numberOfElements = propertyTable.count; // `propertyTable.count` is a number of elements in each property array.\n for (const propertyName in schemaClass.properties) {\n const classProperty = schemaClass.properties[propertyName];\n const propertyTableProperty = propertyTable.properties?.[propertyName];\n if (propertyTableProperty) {\n // Getting all elements (`numberOfElements`) of the array in the `propertyTableProperty`\n const data = getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);\n propertyTableProperty.data = data;\n }\n }\n}\n/**\n * Decodes a propertyTable column from binary source based on property type.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - Schema object.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @returns {string[] | number[] | string[][] | number[][]}\n */\nfunction getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty) {\n let data = [];\n const valuesBufferView = propertyTableProperty.values;\n const valuesDataBytes = scenegraph.getTypedArrayForBufferView(valuesBufferView);\n const arrayOffsets = getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements);\n const stringOffsets = getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements);\n switch (classProperty.type) {\n case 'SCALAR':\n case 'VEC2':\n case 'VEC3':\n case 'VEC4':\n case 'MAT2':\n case 'MAT3':\n case 'MAT4': {\n data = getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets);\n break;\n }\n case 'BOOLEAN': {\n // TODO: implement it as soon as we have the corresponding tileset\n throw new Error(`Not implemented - classProperty.type=${classProperty.type}`);\n }\n case 'STRING': {\n data = getPropertyDataString(numberOfElements, valuesDataBytes, arrayOffsets, stringOffsets);\n break;\n }\n case 'ENUM': {\n data = getPropertyDataENUM(schema, classProperty, numberOfElements, valuesDataBytes, arrayOffsets);\n break;\n }\n default:\n throw new Error(`Unknown classProperty type ${classProperty.type}`);\n }\n return data;\n}\n/**\n * Parses propertyTable.property.arrayOffsets that are offsets of sub-arrays in a flatten array of values.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param classProperty - class property object.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L21\n */\nfunction getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n if (classProperty.array &&\n // `count` is a number of array elements. May only be defined when `array` is true.\n // If `count` is NOT defined, it's a VARIABLE-length array\n typeof classProperty.count === 'undefined' &&\n // `arrayOffsets` is an index of the buffer view containing offsets for variable-length arrays.\n typeof propertyTableProperty.arrayOffsets !== 'undefined') {\n // Data are in a VARIABLE-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.arrayOffsets, propertyTableProperty.arrayOffsetType || 'UINT32', numberOfElements);\n }\n return null;\n}\n/**\n * Parses propertyTable.property.stringOffsets.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L29C10-L29C23\n */\nfunction getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements) {\n if (typeof propertyTableProperty.stringOffsets !== 'undefined' // `stringOffsets` is an index of the buffer view containing offsets for strings.\n ) {\n // Data are in a FIXED-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.stringOffsets, propertyTableProperty.stringOffsetType || 'UINT32', numberOfElements);\n }\n return null;\n}\n/**\n * Decodes properties of SCALAR, VEC-N, MAT-N types from binary sourse.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Property values in a typed array or in an array of typed arrays.\n */\nfunction getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const isArray = classProperty.array;\n const arrayCount = classProperty.count;\n const elementSize = getArrayElementByteSize(classProperty.type, classProperty.componentType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n let valuesData;\n if (classProperty.componentType) {\n valuesData = convertRawBufferToMetadataArray(valuesDataBytes, classProperty.type, \n // The datatype of the element's components. Only applicable to `SCALAR`, `VECN`, and `MATN` types.\n classProperty.componentType, elementCount);\n }\n else {\n // The spec doesn't provide any info what to do if componentType is not set.\n valuesData = valuesDataBytes;\n }\n if (isArray) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);\n }\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);\n }\n return [];\n }\n return valuesData;\n}\n/**\n * Decodes properties of enum type from binary source.\n * @param schema - Schema object.\n * @param classProperty - Class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Strings array of nested strings array.\n */\nfunction getPropertyDataENUM(schema, classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const enumType = classProperty.enumType;\n // Enum ID as declared in the `enums` dictionary. Required when `type` is `ENUM`.\n if (!enumType) {\n throw new Error('Incorrect data in the EXT_structural_metadata extension: classProperty.enumType is not set for type ENUM');\n }\n const enumEntry = schema.enums?.[enumType];\n if (!enumEntry) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: schema.enums does't contain ${enumType}`);\n }\n const enumValueType = enumEntry.valueType || 'UINT16';\n const elementSize = getArrayElementByteSize(classProperty.type, enumValueType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n let valuesData = convertRawBufferToMetadataArray(valuesDataBytes, classProperty.type, enumValueType, elementCount);\n if (!valuesData) {\n valuesData = valuesDataBytes;\n }\n if (classProperty.array) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayENUM({\n valuesData,\n numberOfElements,\n arrayOffsets,\n valuesDataBytesLength: valuesDataBytes.length,\n elementSize,\n enumEntry\n });\n }\n const arrayCount = classProperty.count;\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayENUM(valuesData, numberOfElements, arrayCount, enumEntry);\n }\n return [];\n }\n // Single value (not an array)\n return getEnumsArray(valuesData, 0, numberOfElements, enumEntry);\n}\n/**\n * Parses variable length nested ENUM arrays.\n * @param params.valuesData - Values in a flat typed array.\n * @param params.numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param params.arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @param params.valuesDataBytesLength - Byte length of values array.\n * @param params.elementSize - Single element byte size.\n * @param params.enumEntry - Enums dictionary.\n * @returns Nested strings array.\n */\nfunction parseVariableLengthArrayENUM(params) {\n const { valuesData, numberOfElements, arrayOffsets, valuesDataBytesLength, elementSize, enumEntry } = params;\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const arrayOffset = arrayOffsets[index];\n const arrayByteSize = arrayOffsets[index + 1] - arrayOffsets[index];\n if (arrayByteSize + arrayOffset > valuesDataBytesLength) {\n break;\n }\n const typedArrayOffset = arrayOffset / elementSize;\n const elementCount = arrayByteSize / elementSize;\n const array = getEnumsArray(valuesData, typedArrayOffset, elementCount, enumEntry);\n attributeValueArray.push(array);\n }\n return attributeValueArray;\n}\n/**\n * Parses fixed length ENUM arrays.\n * @param valuesData - Values in a flat typed array.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param arrayCount - Nested arrays length.\n * @param enumEntry - Enums dictionary.\n * @returns Nested strings array.\n */\nfunction parseFixedLengthArrayENUM(valuesData, numberOfElements, arrayCount, enumEntry) {\n const attributeValueArray = [];\n for (let index = 0; index < numberOfElements; index++) {\n const elementOffset = arrayCount * index;\n const array = getEnumsArray(valuesData, elementOffset, arrayCount, enumEntry);\n attributeValueArray.push(array);\n }\n return attributeValueArray;\n}\n/**\n * Parses ENUM values into a string array.\n * @param valuesData - Values in a flat typed array.\n * @param offset - Offset to start parse from.\n * @param count - Values length to parse.\n * @param enumEntry - Enums dictionary.\n * @returns Array of strings with parsed ENUM names.\n */\nfunction getEnumsArray(valuesData, offset, count, enumEntry) {\n const array = [];\n for (let i = 0; i < count; i++) {\n // At the moment we don't support BigInt. It requires additional calculations logic\n // and might be an issue in Safari\n if (valuesData instanceof BigInt64Array || valuesData instanceof BigUint64Array) {\n array.push('');\n }\n else {\n const value = valuesData[offset + i];\n const enumObject = getEnumByValue(enumEntry, value);\n if (enumObject) {\n array.push(enumObject.name);\n }\n else {\n array.push('');\n }\n }\n }\n return array;\n}\n/**\n * Looks up ENUM whose `value` property matches the specified number in the parameter `value`.\n * @param {GLTF_EXT_structural_metadata_Enum} enumEntry - ENUM entry containing the array of possible enums.\n * @param {number} value - The value of the ENUM to locate.\n * @returns {GLTF_EXT_structural_metadata_EnumValue | null} ENUM matcihng the specified value or null of no ENUM object was found.\n */\nfunction getEnumByValue(enumEntry, value) {\n for (const enumValue of enumEntry.values) {\n if (enumValue.value === value) {\n return enumValue;\n }\n }\n return null;\n}\n", "import { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nimport { convertRawBufferToMetadataArray, getPrimitiveTextureData, primitivePropertyDataToAttributes, getArrayElementByteSize, getOffsetsForProperty, parseVariableLengthArrayNumeric, parseFixedLengthArrayNumeric, getPropertyDataString } from \"../utils/3d-tiles-utils.js\";\n/** Extension name */\nconst EXT_FEATURE_METADATA_NAME = 'EXT_feature_metadata';\nexport const name = EXT_FEATURE_METADATA_NAME;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n decodeExtFeatureMetadata(scenegraph, options);\n}\n/**\n * Decodes feature metadata from extension.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param options - GLTFLoader options.\n */\nfunction decodeExtFeatureMetadata(scenegraph, options) {\n // Decoding metadata involves buffers processing.\n // So, if buffers have not been loaded, there is no reason to process metadata.\n if (!options.gltf?.loadBuffers) {\n return;\n }\n const extension = scenegraph.getExtension(EXT_FEATURE_METADATA_NAME);\n if (!extension) {\n return;\n }\n if (options.gltf?.loadImages) {\n decodePropertyTextures(scenegraph, extension);\n }\n decodePropertyTables(scenegraph, extension);\n}\n/**\n * Processes the data stored in the textures\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTextures(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const { featureTextures } = extension;\n if (schemaClasses && featureTextures) {\n for (const schemaName in schemaClasses) {\n const schemaClass = schemaClasses[schemaName];\n const featureTexture = findFeatureTextureByClass(featureTextures, schemaName);\n if (featureTexture) {\n handleFeatureTextureProperties(scenegraph, featureTexture, schemaClass);\n }\n }\n }\n}\n/**\n * Processes the data stored in the property tables.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param extension - Top-level extension.\n */\nfunction decodePropertyTables(scenegraph, extension) {\n const schema = extension.schema;\n if (!schema) {\n return;\n }\n const schemaClasses = schema.classes;\n const propertyTables = extension.featureTables;\n if (schemaClasses && propertyTables) {\n for (const schemaName in schemaClasses) {\n const propertyTable = findPropertyTableByClass(propertyTables, schemaName);\n if (propertyTable) {\n processPropertyTable(scenegraph, schema, propertyTable);\n }\n }\n }\n}\n/**\n * Finds the property table by class name.\n * @param propertyTables - propertyTable definition taken from the top-level extension.\n * @param schemaClassName - class name in the extension schema.\n */\nfunction findPropertyTableByClass(propertyTables, schemaClassName) {\n for (const propertyTableName in propertyTables) {\n const propertyTable = propertyTables[propertyTableName];\n if (propertyTable.class === schemaClassName) {\n return propertyTable;\n }\n }\n return null;\n}\nfunction findFeatureTextureByClass(featureTextures, schemaClassName) {\n for (const featureTexturesName in featureTextures) {\n const featureTable = featureTextures[featureTexturesName];\n if (featureTable.class === schemaClassName) {\n return featureTable;\n }\n }\n return null;\n}\n/**\n * Navigates through all properies in the property table, gets properties data,\n * and put the data to `propertyTable.data` as an array.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schema - schema object.\n * @param propertyTable - propertyTable definition taken from the top-level extension.\n */\nfunction processPropertyTable(scenegraph, schema, propertyTable) {\n // Though 'class' is not required by spec, it doesn't make any scence when it's not provided.\n // So, bale out here.\n if (!propertyTable.class) {\n return;\n }\n const schemaClass = schema.classes?.[propertyTable.class];\n if (!schemaClass) {\n throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);\n }\n const numberOfElements = propertyTable.count; // `propertyTable.count` is a number of elements in each property array.\n for (const propertyName in schemaClass.properties) {\n const classProperty = schemaClass.properties[propertyName];\n const propertyTableProperty = propertyTable.properties?.[propertyName];\n if (propertyTableProperty) {\n // Getting all elements (`numberOfElements`) of the array in the `propertyTableProperty`\n const data = getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);\n propertyTableProperty.data = data;\n }\n }\n}\n/**\n * Navigates through all properies in feature texture and gets properties data.\n * Data will be stored in featureTexture.properties[propertyName].data.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param featureTexture\n * @param schemaClass\n */\nfunction handleFeatureTextureProperties(scenegraph, featureTexture, schemaClass) {\n const attributeName = featureTexture.class;\n for (const propertyName in schemaClass.properties) {\n const featureTextureProperty = featureTexture?.properties?.[propertyName];\n if (featureTextureProperty) {\n const data = getPropertyDataFromTexture(scenegraph, featureTextureProperty, attributeName);\n featureTextureProperty.data = data;\n }\n }\n}\n/**\n * Decodes properties from binary sourse based on property type.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param schemaProperty\n * @param numberOfFeatures\n * @param featureTableProperty\n */\nfunction getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfFeatures, featureTableProperty) {\n let data = [];\n const bufferView = featureTableProperty.bufferView;\n const dataArray = scenegraph.getTypedArrayForBufferView(bufferView);\n const arrayOffsets = getArrayOffsetsForProperty(scenegraph, classProperty, featureTableProperty, numberOfFeatures);\n const stringOffsets = getStringOffsetsForProperty(scenegraph, classProperty, featureTableProperty, numberOfFeatures);\n if (classProperty.type === 'STRING' || classProperty.componentType === 'STRING') {\n data = getPropertyDataString(numberOfFeatures, dataArray, arrayOffsets, stringOffsets);\n }\n else if (isNumericProperty(classProperty)) {\n data = getPropertyDataNumeric(classProperty, numberOfFeatures, dataArray, arrayOffsets);\n }\n return data;\n}\n/**\n * Parses propertyTable.property.arrayOffsets that are offsets of sub-arrays in a flatten array of values.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param classProperty - class property object.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array with offset values.\n * @see https://github.com/CesiumGS/glTF/blob/2976f1183343a47a29e4059a70961371cd2fcee8/extensions/2.0/Vendor/EXT_structural_metadata/schema/propertyTable.property.schema.json#L21\n */\nfunction getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n /*\n If ARRAY is used, then componentType must also be specified.\n ARRAY is a fixed-length array when componentCount is defined, and variable-length otherwise.\n */\n if (classProperty.type === 'ARRAY' &&\n // `componentCount` is a number of fixed-length array elements.\n // If `componentCount` is NOT defined, it's a VARIABLE-length array\n typeof classProperty.componentCount === 'undefined' &&\n // `arrayOffsetBufferView` is an index of the buffer view containing offsets for variable-length arrays.\n typeof propertyTableProperty.arrayOffsetBufferView !== 'undefined') {\n // Data are in a VARIABLE-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.arrayOffsetBufferView, propertyTableProperty.offsetType || 'UINT32', // offsetType is used both for stringOffsetBufferView and arrayOffsetBufferView\n numberOfElements);\n }\n return null;\n}\n/**\n * Parses featureTable.property.stringOffsetBufferView.\n * String offsets is an array of offsets of strings in the united array of characters.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param propertyTableProperty - propertyTable's property metadata.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @returns Typed array of offset values. The number of offsets in the array is equal to `numberOfElements` plus one.\n * @see https://github.com/CesiumGS/glTF/blob/c38f7f37e894004353c15cd0481bc5b7381ce841/extensions/2.0/Vendor/EXT_feature_metadata/schema/featureTable.property.schema.json#L50C10-L50C32\n */\nfunction getStringOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements) {\n if (typeof propertyTableProperty.stringOffsetBufferView !== 'undefined' // `stringOffsetBufferView` is an index of the buffer view containing offsets for strings.\n ) {\n // Data are in a FIXED-length array\n return getOffsetsForProperty(scenegraph, propertyTableProperty.stringOffsetBufferView, propertyTableProperty.offsetType || 'UINT32', // offsetType is used both for stringOffsetBufferView and arrayOffsetBufferView\n numberOfElements);\n }\n return null;\n}\n/**\n * Checks if the feature table property is of numeric type.\n * @param schemaPropertyType - feature table property\n * @returns true if property is numeric, else - false\n */\nfunction isNumericProperty(schemaProperty) {\n const types = [\n 'UINT8',\n 'INT16',\n 'UINT16',\n 'INT32',\n 'UINT32',\n 'INT64',\n 'UINT64',\n 'FLOAT32',\n 'FLOAT64'\n ];\n return (types.includes(schemaProperty.type) ||\n (typeof schemaProperty.componentType !== 'undefined' &&\n types.includes(schemaProperty.componentType)));\n}\n/**\n * Decodes properties of numeric types from binary sourse.\n * @param classProperty - class property object.\n * @param numberOfElements - The number of elements in each property array that propertyTableProperty contains. It's a number of rows in the table.\n * @param valuesDataBytes - Data taken from values property of the property table property.\n * @param arrayOffsets - Offsets for variable-length arrays. It's null for fixed-length arrays or scalar types.\n * @returns Property values in a typed array or in an array of typed arrays.\n */\nfunction getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes, arrayOffsets) {\n const isArray = classProperty.type === 'ARRAY';\n const arrayCount = classProperty.componentCount;\n /*\n We are getting Numeric data. So,\n the component type can be one of NumericComponentType,\n the attribute type should be 'SCALAR'\n */\n const attributeType = 'SCALAR';\n const componentType = classProperty.componentType || classProperty.type;\n const elementSize = getArrayElementByteSize(attributeType, componentType);\n const elementCount = valuesDataBytes.byteLength / elementSize;\n const valuesData = convertRawBufferToMetadataArray(valuesDataBytes, attributeType, componentType, elementCount);\n if (isArray) {\n if (arrayOffsets) {\n // VARIABLE-length array\n return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);\n }\n if (arrayCount) {\n // FIXED-length array\n return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);\n }\n return [];\n }\n return valuesData;\n}\n/**\n * Gets properties from texture associated with all mesh primitives.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param featureTextureProperty\n * @param attributeName\n * @returns Feature texture data\n */\nfunction getPropertyDataFromTexture(scenegraph, featureTextureProperty, attributeName) {\n const json = scenegraph.gltf.json;\n if (!json.meshes) {\n return [];\n }\n const featureTextureTable = [];\n for (const mesh of json.meshes) {\n for (const primitive of mesh.primitives) {\n processPrimitiveTextures(scenegraph, attributeName, featureTextureProperty, featureTextureTable, primitive);\n }\n }\n return featureTextureTable;\n}\n/**\n * Processes data encoded in the texture associated with the primitive. This data will be accessible through the attributes.\n * @param scenegraph - Instance of the class for structured access to GLTF data.\n * @param attributeName\n * @param featureTextureProperty\n * @param featureTextureTable\n * @param primitive\n */\nfunction processPrimitiveTextures(scenegraph, attributeName, featureTextureProperty, featureTextureTable, primitive) {\n const textureInfoTopLevel = {\n channels: featureTextureProperty.channels,\n ...featureTextureProperty.texture\n };\n const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);\n if (!propertyData) {\n return;\n }\n primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { registerJSModules, getJSModuleOrNull } from '@loaders.gl/loader-utils';\nimport { loadLibrary } from '@loaders.gl/worker-utils';\nexport const BASIS_EXTERNAL_LIBRARIES = {\n /** Basis transcoder, javascript wrapper part */\n TRANSCODER: 'basis_transcoder.js',\n /** Basis transcoder, compiled web assembly part */\n TRANSCODER_WASM: 'basis_transcoder.wasm',\n /** Basis encoder, javascript wrapper part */\n ENCODER: 'basis_encoder.js',\n /** Basis encoder, compiled web assembly part */\n ENCODER_WASM: 'basis_encoder.wasm'\n};\nlet loadBasisTranscoderPromise;\n/**\n * Loads wasm transcoder module\n * @param options\n * @returns {BasisFile} promise\n */\nexport async function loadBasisTranscoderModule(options) {\n registerJSModules(options.modules);\n const basis = getJSModuleOrNull('basis');\n if (basis) {\n return basis;\n }\n loadBasisTranscoderPromise ||= loadBasisTranscoder(options);\n return await loadBasisTranscoderPromise;\n}\n/**\n * Loads wasm transcoder module\n * @param options\n * @returns {BasisFile} promise\n */\nasync function loadBasisTranscoder(options) {\n let BASIS = null;\n let wasmBinary = null;\n [BASIS, wasmBinary] = await Promise.all([\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, 'textures', options),\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, 'textures', options)\n ]);\n // Depends on how import happened...\n // @ts-ignore TS2339: Property does not exist on type\n BASIS = BASIS || globalThis.BASIS;\n return await initializeBasisTranscoderModule(BASIS, wasmBinary);\n}\n/**\n * Initialize wasm transcoder module\n * @param BasisModule - js part of the module\n * @param wasmBinary - wasm part of the module\n * @returns {BasisFile} promise\n */\nfunction initializeBasisTranscoderModule(BasisModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n // if you try to return BasisModule the browser crashes!\n BasisModule(options).then((module) => {\n const { BasisFile, initializeBasis } = module;\n initializeBasis();\n resolve({ BasisFile });\n });\n });\n}\nlet loadBasisEncoderPromise;\n/**\n * Loads wasm encoder module\n * @param options\n * @returns {BasisFile, KTX2File} promise\n */\nexport async function loadBasisEncoderModule(options) {\n const modules = options.modules || {};\n if (modules.basisEncoder) {\n return modules.basisEncoder;\n }\n loadBasisEncoderPromise = loadBasisEncoderPromise || loadBasisEncoder(options);\n return await loadBasisEncoderPromise;\n}\n/**\n * Loads wasm encoder module\n * @param options\n * @returns {BasisFile, KTX2File} promise\n */\nasync function loadBasisEncoder(options) {\n let BASIS_ENCODER = null;\n let wasmBinary = null;\n [BASIS_ENCODER, wasmBinary] = await Promise.all([\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, 'textures', options),\n await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, 'textures', options)\n ]);\n // Depends on how import happened...\n // @ts-ignore TS2339: Property does not exist on type\n BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;\n return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);\n}\n/**\n * Initialize wasm transcoder module\n * @param BasisEncoderModule - js part of the module\n * @param wasmBinary - wasm part of the module\n * @returns {BasisFile, KTX2File} promise\n */\nfunction initializeBasisEncoderModule(BasisEncoderModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n // if you try to return BasisModule the browser crashes!\n BasisEncoderModule(options).then((module) => {\n const { BasisFile, KTX2File, initializeBasis, BasisEncoder } = module;\n initializeBasis();\n resolve({ BasisFile, KTX2File, BasisEncoder });\n });\n });\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n/* eslint-disable camelcase */\nexport const GL_EXTENSIONS_CONSTANTS = {\n // WEBGL_compressed_texture_s3tc\n COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83f0,\n COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83f1,\n COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83f2,\n COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83f3,\n // WEBGL_compressed_texture_es3\n COMPRESSED_R11_EAC: 0x9270,\n COMPRESSED_SIGNED_R11_EAC: 0x9271,\n COMPRESSED_RG11_EAC: 0x9272,\n COMPRESSED_SIGNED_RG11_EAC: 0x9273,\n COMPRESSED_RGB8_ETC2: 0x9274,\n COMPRESSED_RGBA8_ETC2_EAC: 0x9275,\n COMPRESSED_SRGB8_ETC2: 0x9276,\n COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9277,\n COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9278,\n COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9279,\n // WEBGL_compressed_texture_pvrtc\n COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8c00,\n COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8c02,\n COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8c01,\n COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8c03,\n // WEBGL_compressed_texture_etc1\n COMPRESSED_RGB_ETC1_WEBGL: 0x8d64,\n // WEBGL_compressed_texture_atc\n COMPRESSED_RGB_ATC_WEBGL: 0x8c92,\n COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 0x8c93,\n COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 0x87ee,\n // WEBGL_compressed_texture_astc\n COMPRESSED_RGBA_ASTC_4X4_KHR: 0x93b0,\n COMPRESSED_RGBA_ASTC_5X4_KHR: 0x93b1,\n COMPRESSED_RGBA_ASTC_5X5_KHR: 0x93b2,\n COMPRESSED_RGBA_ASTC_6X5_KHR: 0x93b3,\n COMPRESSED_RGBA_ASTC_6X6_KHR: 0x93b4,\n COMPRESSED_RGBA_ASTC_8X5_KHR: 0x93b5,\n COMPRESSED_RGBA_ASTC_8X6_KHR: 0x93b6,\n COMPRESSED_RGBA_ASTC_8X8_KHR: 0x93b7,\n COMPRESSED_RGBA_ASTC_10X5_KHR: 0x93b8,\n COMPRESSED_RGBA_ASTC_10X6_KHR: 0x93b9,\n COMPRESSED_RGBA_ASTC_10X8_KHR: 0x93ba,\n COMPRESSED_RGBA_ASTC_10X10_KHR: 0x93bb,\n COMPRESSED_RGBA_ASTC_12X10_KHR: 0x93bc,\n COMPRESSED_RGBA_ASTC_12X12_KHR: 0x93bd,\n COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR: 0x93d0,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR: 0x93d1,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR: 0x93d2,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR: 0x93d3,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR: 0x93d4,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR: 0x93d5,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR: 0x93d6,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR: 0x93d7,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR: 0x93d8,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR: 0x93d9,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR: 0x93da,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 0x93db,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 0x93dc,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 0x93dd,\n // EXT_texture_compression_rgtc\n COMPRESSED_RED_RGTC1_EXT: 0x8dbb,\n COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8dbc,\n COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8dbd,\n COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8dbe,\n // WEBGL_compressed_texture_s3tc_srgb\n COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8c4c,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8c4d,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8c4e,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8c4f\n};\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nconst BROWSER_PREFIXES = ['', 'WEBKIT_', 'MOZ_'];\nconst WEBGL_EXTENSIONS = {\n /* eslint-disable camelcase */\n WEBGL_compressed_texture_s3tc: 'dxt',\n WEBGL_compressed_texture_s3tc_srgb: 'dxt-srgb',\n WEBGL_compressed_texture_etc1: 'etc1',\n WEBGL_compressed_texture_etc: 'etc2',\n WEBGL_compressed_texture_pvrtc: 'pvrtc',\n WEBGL_compressed_texture_atc: 'atc',\n WEBGL_compressed_texture_astc: 'astc',\n EXT_texture_compression_rgtc: 'rgtc'\n /* eslint-enable camelcase */\n};\nlet formats = null;\n/**\n * Returns a list of formats.\n * Creates a temporary WebGLRenderingContext if none is provided.\n *\n * @param gl - Optional context.\n */\nexport function getSupportedGPUTextureFormats(gl) {\n if (!formats) {\n gl = gl || getWebGLContext() || undefined;\n formats = new Set();\n for (const prefix of BROWSER_PREFIXES) {\n for (const extension in WEBGL_EXTENSIONS) {\n if (gl && gl.getExtension(`${prefix}${extension}`)) {\n const gpuTextureFormat = WEBGL_EXTENSIONS[extension];\n formats.add(gpuTextureFormat);\n }\n }\n }\n }\n return formats;\n}\n/**\n * @returns {WebGLRenderingContext?}\n */\nfunction getWebGLContext() {\n try {\n const canvas = document.createElement('canvas');\n return canvas.getContext('webgl');\n }\n catch (error) {\n return null;\n }\n}\n", "///////////////////////////////////////////////////\n// Common.\n///////////////////////////////////////////////////\n\n// Injected at compile time, from $npm_package_version.\ndeclare const PACKAGE_VERSION: string;\n\nexport const KTX_WRITER = `KTX-Parse v${PACKAGE_VERSION}`;\n\nexport const NUL = new Uint8Array([0x00]);\n\n\n///////////////////////////////////////////////////\n// KTX2 Header.\n///////////////////////////////////////////////////\n\nexport const KTX2_ID = [\n\t// '´', 'K', 'T', 'X', '2', '0', 'ª', '\\r', '\\n', '\\x1A', '\\n'\n\t0xAB, 0x4B, 0x54, 0x58, 0x20, 0x32, 0x30, 0xBB, 0x0D, 0x0A, 0x1A, 0x0A\n];\n\nexport const HEADER_BYTE_LENGTH = 68; // 13 * 4 + 2 * 8\n\nexport enum KTX2SupercompressionScheme {\n\tNONE = 0,\n\tBASISLZ = 1,\n\tZSTD = 2,\n\tZLIB = 3,\n};\n\n\n///////////////////////////////////////////////////\n// Data Format Descriptor (DFD).\n///////////////////////////////////////////////////\n\nexport enum KTX2DataFormatType {\n BASICFORMAT = 0x00,\n};\n\nexport const KHR_DF_VENDORID_KHRONOS = 0;\n\nexport const KHR_DF_VERSION = 2;\n\nexport const KHR_DF_BLOCKSIZE = 40;\n\nexport const VK_FORMAT_UNDEFINED = 0;\n\nexport enum KTX2DataFormatModel {\n UNSPECIFIED = 0,\n\tETC1S = 163,\n\tUASTC = 166,\n};\n\nexport enum KTX2DataFormatPrimaries {\n UNSPECIFIED = 0,\n SRGB = 1,\n};\n\nexport enum KTX2DataFormatTransfer {\n UNSPECIFIED = 0,\n LINEAR = 1,\n SRGB = 2,\n ITU = 3,\n NTSC = 4,\n SLOG = 5,\n SLOG2 = 6,\n};\n\nexport enum KTX2DataFormatFlags {\n ALPHA_STRAIGHT = 0,\n ALPHA_PREMULTIPLIED = 1,\n};\n\nexport enum KTX2DataFormatChannelETC1S {\n RGB = 0,\n RRR = 3,\n GGG = 4,\n AAA = 15,\n};\n\nexport enum KTX2DataFormatChannelUASTC {\n RGB = 0,\n RGBA = 3,\n RRR = 4,\n RRRG = 5,\n};\n", "import { KHR_DF_BLOCKSIZE, KHR_DF_VENDORID_KHRONOS, KHR_DF_VERSION, KTX2DataFormatFlags, KTX2DataFormatModel, KTX2DataFormatPrimaries, KTX2DataFormatType, KTX2SupercompressionScheme, VK_FORMAT_UNDEFINED } from './constants';\n\n/**\n * Represents an unpacked KTX 2.0 texture container. Data for individual mip levels are stored in\n * the `.levels` array, typically compressed in Basis Universal formats. Additional properties\n * provide metadata required to process, transcode, and upload these textures.\n */\nexport class KTX2Container {\n\t/**\n\t * Specifies the image format using Vulkan VkFormat enum values. When using Basis Universal\n\t * texture formats, `vkFormat` must be VK_FORMAT_UNDEFINED.\n\t */\n\tpublic vkFormat = VK_FORMAT_UNDEFINED;\n\n\t/**\n\t * Size of the data type in bytes used to upload the data to a graphics API. When `vkFormat` is\n\t * VK_FORMAT_UNDEFINED, `typeSize` must be 1.\n\t */\n\tpublic typeSize: number = 1;\n\n\t/** Width of the texture image for level 0, in pixels. */\n\tpublic pixelWidth: number = 0;\n\n\t/** Height of the texture image for level 0, in pixels. */\n\tpublic pixelHeight: number = 0;\n\n\t/** Depth of the texture image for level 0, in pixels (3D textures only). */\n\tpublic pixelDepth: number = 0;\n\n\t/** Number of array elements (array textures only). */\n\tpublic layerCount: number = 0;\n\n\t/**\n\t * Number of cubemap faces. For cubemaps and cubemap arrays, `faceCount` must be 6. For all\n\t * other textures, `faceCount` must be 1. Cubemap faces are stored in +X, -X, +Y, -Y, +Z, -Z\n\t * order.\n\t */\n\tpublic faceCount: number = 1;\n\n\t/** Indicates which supercompression scheme has been applied to mip level images, if any. */\n\tpublic supercompressionScheme = KTX2SupercompressionScheme.NONE;\n\n\t/** Mip levels, ordered largest (original) to smallest (~1px). */\n\tpublic levels: KTX2Level[] = [];\n\n\t/** Data Format Descriptor. */\n\tpublic dataFormatDescriptor: KTX2DataFormatDescriptorBasicFormat[] = [{\n\t\tvendorId: KHR_DF_VENDORID_KHRONOS,\n\t\tdescriptorType: KTX2DataFormatType.BASICFORMAT,\n\t\tversionNumber: KHR_DF_VERSION,\n\t\tdescriptorBlockSize: KHR_DF_BLOCKSIZE,\n\t\tcolorModel: KTX2DataFormatModel.UNSPECIFIED,\n\t\tcolorPrimaries: KTX2DataFormatPrimaries.SRGB,\n\t\ttransferFunction: KTX2DataFormatPrimaries.SRGB,\n\t\tflags: KTX2DataFormatFlags.ALPHA_STRAIGHT,\n\t\ttexelBlockDimension: {x: 4, y: 4, z: 1, w: 1},\n\t\tbytesPlane: [],\n\t\tsamples: [],\n\t}];\n\n\t/** Key/Value Data. */\n\tpublic keyValue: {[key: string]: string | Uint8Array} = {};\n\n\t/** Supercompression Global Data. */\n\tpublic globalData: KTX2GlobalDataBasisLZ | null = null;\n}\n\n\n///////////////////////////////////////////////////\n// Mip Levels.\n///////////////////////////////////////////////////\n\nexport interface KTX2Level {\n\t/** Compressed data of the mip level. */\n\tlevelData: Uint8Array;\n\n\t/**\n\t * Size of the mip level after reflation from supercompression, if applicable. When\n\t * `supercompressionType` is BASISLZ, `uncompressedByteLength` must be 0. When\n\t * `supercompressionType` is `NONE`, `uncompressedByteLength` must match the `levelData` byte\n\t * length.\n\t *\n\t * _**NOTICE:** this implies that for formats such as UASTC, `uncompressedByteLength` may\n\t * indicate size after ZSTD reflation (and of transcoded ASTC data), but does _not_ indicate\n\t * size of decoded RGBA32 pixels._\n\t */\n\tuncompressedByteLength: number;\n};\n\n\n///////////////////////////////////////////////////\n// Data Format Descriptor (DFD).\n///////////////////////////////////////////////////\n\nexport interface KTX2DataFormatDescriptorBasicFormat {\n\tvendorId: number;\n\tdescriptorType: number;\n\tversionNumber: number;\n\tdescriptorBlockSize: number;\n\tcolorModel: number;\n\tcolorPrimaries: number;\n\ttransferFunction: number;\n\tflags: number;\n\ttexelBlockDimension: KTX2BasicFormatTexelBlockDimensions;\n\tbytesPlane: number[];\n\tsamples: KTX2BasicFormatSample[],\n};\n\nexport interface KTX2BasicFormatTexelBlockDimensions {\n\tx: number;\n\ty: number;\n\tz: number;\n\tw: number;\n};\n\nexport interface KTX2BasicFormatSample {\n\tbitOffset: number;\n\tbitLength: number;\n\tchannelID: number;\n\tsamplePosition: number[];\n\tsampleLower: number;\n\tsampleUpper: number;\n};\n\n\n///////////////////////////////////////////////////\n// Supercompression Global Data.\n///////////////////////////////////////////////////\n\nexport interface KTX2GlobalDataBasisLZ {\n\tendpointCount: number;\n\tselectorCount: number;\n\timageDescs: KTX2GlobalDataBasisLZImageDesc[];\n\tendpointsData: Uint8Array;\n\tselectorsData: Uint8Array;\n\ttablesData: Uint8Array;\n\textendedData: Uint8Array;\n};\n\ninterface KTX2GlobalDataBasisLZImageDesc {\n\timageFlags: number;\n\trgbSliceByteOffset: number;\n\trgbSliceByteLength: number;\n\talphaSliceByteOffset: number;\n\talphaSliceByteLength: number;\n};\n", "export class BufferReader {\n\tprivate _dataView: DataView;\n\tprivate _littleEndian: boolean;\n\tpublic _offset: number;\n\n\tconstructor(data: Uint8Array, byteOffset: number, byteLength: number, littleEndian: boolean) {\n\t\tthis._dataView = new DataView(data.buffer, data.byteOffset + byteOffset, byteLength);\n\t\tthis._littleEndian = littleEndian;\n\t\tthis._offset = 0;\n\t}\n\n\t_nextUint8() {\n\t\tconst value = this._dataView.getUint8(this._offset);\n\t\tthis._offset += 1;\n\t\treturn value;\n\t}\n\n\t_nextUint16() {\n\t\tconst value = this._dataView.getUint16(this._offset, this._littleEndian);\n\t\tthis._offset += 2;\n\t\treturn value;\n\t}\n\n\t_nextUint32() {\n\t\tconst value = this._dataView.getUint32(this._offset, this._littleEndian);\n\t\tthis._offset += 4;\n\t\treturn value;\n\t}\n\n\t_nextUint64() {\n\t\tconst left = this._dataView.getUint32(this._offset, this._littleEndian);\n\t\tconst right = this._dataView.getUint32(this._offset + 4, this._littleEndian);\n\t\t// TODO(cleanup): Just test this...\n\t\t// const value = this._littleEndian ? left + (2 ** 32 * right) : (2 ** 32 * left) + right;\n\t\tconst value = left + (2 ** 32 * right);\n\t\tthis._offset += 8;\n\t\treturn value;\n\t}\n\n\t_skip(bytes: number) {\n\t\tthis._offset += bytes;\n\t\treturn this;\n\t}\n\n\t_scan(maxByteLength: number, term: number = 0x00): Uint8Array {\n\t\tconst byteOffset = this._offset;\n\t\tlet byteLength = 0;\n\t\twhile (this._dataView.getUint8(this._offset) !== term && byteLength < maxByteLength) {\n\t\t\tbyteLength++;\n\t\t\tthis._offset++;\n\t\t}\n\n\t\tif (byteLength < maxByteLength) this._offset++;\n\n\t\treturn new Uint8Array(\n\t\t\tthis._dataView.buffer,\n\t\t\tthis._dataView.byteOffset + byteOffset,\n\t\t\tbyteLength\n\t\t);\n\t}\n}\n", "\n/** Encodes text to an ArrayBuffer. */\nexport function encodeText(text: string): Uint8Array {\n\tif (typeof TextEncoder !== 'undefined') {\n\t\treturn new TextEncoder().encode(text);\n\t}\n\treturn Buffer.from(text);\n}\n\n/** Decodes an ArrayBuffer to text. */\nexport function decodeText(buffer: Uint8Array): string {\n\tif (typeof TextDecoder !== 'undefined') {\n\t\treturn new TextDecoder().decode(buffer);\n\t}\n\treturn Buffer.from(buffer).toString('utf8');\n}\n\n/** Concatenates N ArrayBuffers. */\nexport function concat (buffers: (ArrayBuffer | Uint8Array)[]): Uint8Array {\n\tlet totalByteLength = 0;\n\tfor (const buffer of buffers) {\n\t\ttotalByteLength += buffer.byteLength;\n\t}\n\n\tconst result = new Uint8Array(totalByteLength);\n\tlet byteOffset = 0;\n\n\tfor (const buffer of buffers) {\n\t\tresult.set(new Uint8Array(buffer), byteOffset);\n\t\tbyteOffset += buffer.byteLength;\n\t}\n\n\treturn result;\n}", "import { BufferReader } from './buffer-reader';\nimport { KTX2_ID } from './constants';\nimport { KTX2Container, KTX2DataFormatDescriptorBasicFormat } from './container';\nimport { decodeText } from './util';\n\n/**\n * Parses a KTX 2.0 file, returning an unpacked {@link KTX2Container} instance with all associated\n * data. The container's mip levels and other binary data are pointers into the original file, not\n * copies, so the original file should not be overwritten after reading.\n *\n * @param data Bytes of KTX 2.0 file, as Uint8Array or Buffer.\n */\nexport function read(data: Uint8Array): KTX2Container {\n\n\t///////////////////////////////////////////////////\n\t// KTX 2.0 Identifier.\n\t///////////////////////////////////////////////////\n\n\tconst id = new Uint8Array(data.buffer, data.byteOffset, KTX2_ID.length);\n\tif (id[0] !== KTX2_ID[0] || // '´'\n\t\tid[1] !== KTX2_ID[1] || // 'K'\n\t\tid[2] !== KTX2_ID[2] || // 'T'\n\t\tid[3] !== KTX2_ID[3] || // 'X'\n\t\tid[4] !== KTX2_ID[4] || // ' '\n\t\tid[5] !== KTX2_ID[5] || // '2'\n\t\tid[6] !== KTX2_ID[6] || // '0'\n\t\tid[7] !== KTX2_ID[7] || // 'ª'\n\t\tid[8] !== KTX2_ID[8] || // '\\r'\n\t\tid[9] !== KTX2_ID[9] || // '\\n'\n\t\tid[10] !== KTX2_ID[10] || // '\\x1A'\n\t\tid[11] !== KTX2_ID[11] // '\\n'\n\t) {\n\t\tthrow new Error('Missing KTX 2.0 identifier.');\n\t}\n\n\tconst container = new KTX2Container();\n\n\t///////////////////////////////////////////////////\n\t// Header.\n\t///////////////////////////////////////////////////\n\n\tconst headerByteLength = 17 * Uint32Array.BYTES_PER_ELEMENT;\n\tconst headerReader = new BufferReader(data, KTX2_ID.length, headerByteLength, true);\n\n\tcontainer.vkFormat = headerReader._nextUint32();\n\tcontainer.typeSize = headerReader._nextUint32();\n\tcontainer.pixelWidth = headerReader._nextUint32();\n\tcontainer.pixelHeight = headerReader._nextUint32();\n\tcontainer.pixelDepth = headerReader._nextUint32();\n\tcontainer.layerCount = headerReader._nextUint32();\n\tcontainer.faceCount = headerReader._nextUint32();\n\n\tconst levelCount = headerReader._nextUint32();\n\n\tcontainer.supercompressionScheme = headerReader._nextUint32();\n\n\tconst dfdByteOffset = headerReader._nextUint32();\n\tconst dfdByteLength = headerReader._nextUint32();\n\tconst kvdByteOffset = headerReader._nextUint32();\n\tconst kvdByteLength = headerReader._nextUint32();\n\tconst sgdByteOffset = headerReader._nextUint64();\n\tconst sgdByteLength = headerReader._nextUint64();\n\n\t///////////////////////////////////////////////////\n\t// Level Index.\n\t///////////////////////////////////////////////////\n\n\tconst levelByteLength = levelCount * 3 * 8;\n\tconst levelReader = new BufferReader(data, KTX2_ID.length + headerByteLength, levelByteLength, true);\n\n\tfor (let i = 0; i < levelCount; i ++) {\n\t\tcontainer.levels.push({\n\t\t\tlevelData: new Uint8Array(data.buffer, data.byteOffset + levelReader._nextUint64(), levelReader._nextUint64()),\n\t\t\tuncompressedByteLength: levelReader._nextUint64(),\n\t\t});\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Data Format Descriptor (DFD).\n\t///////////////////////////////////////////////////\n\n\tconst dfdReader = new BufferReader(data, dfdByteOffset, dfdByteLength, true);\n\n\tconst dfd: KTX2DataFormatDescriptorBasicFormat = {\n\t\tvendorId: dfdReader._skip(4 /* totalSize */)._nextUint16(),\n\t\tdescriptorType: dfdReader._nextUint16(),\n\t\tversionNumber: dfdReader._nextUint16(),\n\t\tdescriptorBlockSize: dfdReader._nextUint16(),\n\t\tcolorModel: dfdReader._nextUint8(),\n\t\tcolorPrimaries: dfdReader._nextUint8(),\n\t\ttransferFunction: dfdReader._nextUint8(),\n\t\tflags: dfdReader._nextUint8(),\n\t\ttexelBlockDimension: {\n\t\t\tx: dfdReader._nextUint8() + 1,\n\t\t\ty: dfdReader._nextUint8() + 1,\n\t\t\tz: dfdReader._nextUint8() + 1,\n\t\t\tw: dfdReader._nextUint8() + 1,\n\t\t},\n\t\tbytesPlane: [\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t\tdfdReader._nextUint8(),\n\t\t],\n\t\tsamples: [],\n\t};\n\n\tconst sampleStart = 6;\n\tconst sampleWords = 4;\n\tconst numSamples = (dfd.descriptorBlockSize / 4 - sampleStart) / sampleWords;\n\n\tfor (let i = 0; i < numSamples; i ++) {\n\t\tdfd.samples[ i ] = {\n\t\t\tbitOffset: dfdReader._nextUint16(),\n\t\t\tbitLength: dfdReader._nextUint8(),\n\t\t\tchannelID: dfdReader._nextUint8(),\n\t\t\tsamplePosition: [\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t\tdfdReader._nextUint8(),\n\t\t\t],\n\t\t\tsampleLower: dfdReader._nextUint32(),\n\t\t\tsampleUpper: dfdReader._nextUint32(),\n\t\t};\n\t}\n\n\tcontainer.dataFormatDescriptor.length = 0;\n\tcontainer.dataFormatDescriptor.push(dfd);\n\n\n\t///////////////////////////////////////////////////\n\t// Key/Value Data (KVD).\n\t///////////////////////////////////////////////////\n\n\tconst kvdReader = new BufferReader(data, kvdByteOffset, kvdByteLength, true);\n\n\twhile (kvdReader._offset < kvdByteLength) {\n\t\tconst keyValueByteLength = kvdReader._nextUint32();\n\t\tconst keyData = kvdReader._scan(keyValueByteLength);\n\t\tconst key = decodeText(keyData);\n\t\tconst valueData = kvdReader._scan(keyValueByteLength - keyData.byteLength);\n\t\tcontainer.keyValue[key] = key.match(/^ktx/i) ? decodeText(valueData) : valueData;\n\n\t\t// 4-byte alignment.\n\t\tif (keyValueByteLength % 4) kvdReader._skip(4 - (keyValueByteLength % 4));\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Supercompression Global Data (SGD).\n\t///////////////////////////////////////////////////\n\n\tif (sgdByteLength <= 0) return container;\n\n\tconst sgdReader = new BufferReader(data, sgdByteOffset, sgdByteLength, true);\n\n\tconst endpointCount = sgdReader._nextUint16();\n\tconst selectorCount = sgdReader._nextUint16();\n\tconst endpointsByteLength = sgdReader._nextUint32();\n\tconst selectorsByteLength = sgdReader._nextUint32();\n\tconst tablesByteLength = sgdReader._nextUint32();\n\tconst extendedByteLength = sgdReader._nextUint32();\n\n\tconst imageDescs = [];\n\tfor (let i = 0; i < levelCount; i ++) {\n\t\timageDescs.push({\n\t\t\timageFlags: sgdReader._nextUint32(),\n\t\t\trgbSliceByteOffset: sgdReader._nextUint32(),\n\t\t\trgbSliceByteLength: sgdReader._nextUint32(),\n\t\t\talphaSliceByteOffset: sgdReader._nextUint32(),\n\t\t\talphaSliceByteLength: sgdReader._nextUint32(),\n\t\t});\n\t}\n\n\tconst endpointsByteOffset = sgdByteOffset + sgdReader._offset;\n\tconst selectorsByteOffset = endpointsByteOffset + endpointsByteLength;\n\tconst tablesByteOffset = selectorsByteOffset + selectorsByteLength;\n\tconst extendedByteOffset = tablesByteOffset + tablesByteLength;\n\n\tconst endpointsData = new Uint8Array(data.buffer, data.byteOffset + endpointsByteOffset, endpointsByteLength);\n\tconst selectorsData = new Uint8Array(data.buffer, data.byteOffset + selectorsByteOffset, selectorsByteLength);\n\tconst tablesData = new Uint8Array(data.buffer, data.byteOffset + tablesByteOffset, tablesByteLength);\n\tconst extendedData = new Uint8Array(data.buffer, data.byteOffset + extendedByteOffset, extendedByteLength);\n\n\tcontainer.globalData = {\n\t\tendpointCount,\n\t\tselectorCount,\n\t\timageDescs,\n\t\tendpointsData,\n\t\tselectorsData,\n\t\ttablesData,\n\t\textendedData,\n\t};\n\n\treturn container;\n}\n", "import { HEADER_BYTE_LENGTH, KTX2DataFormatType, KTX2_ID, KTX_WRITER, NUL } from './constants';\nimport { KTX2Container } from './container';\nimport { concat, encodeText } from './util';\n\ninterface WriteOptions {keepWriter?: boolean};\nconst DEFAULT_OPTIONS: WriteOptions = {keepWriter: false};\n\n/**\n * Serializes a {@link KTX2Container} instance to a KTX 2.0 file. Mip levels and other binary data\n * are copied into the resulting Uint8Array, so the original container can safely be edited or\n * destroyed after it is serialized.\n *\n * Options:\n * - keepWriter: If true, 'KTXWriter' key/value field is written as provided by the container.\n * \t\tOtherwise, a string for the current ktx-parse version is generated. Default: false.\n *\n * @param container\n * @param options\n */\nexport function write(container: KTX2Container, options: WriteOptions = {}): Uint8Array {\n\toptions = {...DEFAULT_OPTIONS, ...options};\n\n\t///////////////////////////////////////////////////\n\t// Supercompression Global Data (SGD).\n\t///////////////////////////////////////////////////\n\n\tlet sgdBuffer = new ArrayBuffer(0);\n\tif (container.globalData) {\n\t\tconst sgdHeaderBuffer = new ArrayBuffer(20 + container.globalData.imageDescs.length * 5 * 4);\n\t\tconst sgdHeaderView = new DataView(sgdHeaderBuffer);\n\t\tsgdHeaderView.setUint16(0, container.globalData.endpointCount, true);\n\t\tsgdHeaderView.setUint16(2, container.globalData.selectorCount, true);\n\t\tsgdHeaderView.setUint32(4, container.globalData.endpointsData.byteLength, true);\n\t\tsgdHeaderView.setUint32(8, container.globalData.selectorsData.byteLength, true);\n\t\tsgdHeaderView.setUint32(12, container.globalData.tablesData.byteLength, true);\n\t\tsgdHeaderView.setUint32(16, container.globalData.extendedData.byteLength, true);\n\n\t\tfor (let i = 0; i < container.globalData.imageDescs.length; i++) {\n\t\t\tconst imageDesc = container.globalData.imageDescs[i];\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 0, imageDesc.imageFlags, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 4, imageDesc.rgbSliceByteOffset, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 8, imageDesc.rgbSliceByteLength, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 12, imageDesc.alphaSliceByteOffset, true);\n\t\t\tsgdHeaderView.setUint32(20 + i * 5 * 4 + 16, imageDesc.alphaSliceByteLength, true);\n\t\t}\n\n\t\tsgdBuffer = concat([\n\t\t\tsgdHeaderBuffer,\n\t\t\tcontainer.globalData.endpointsData,\n\t\t\tcontainer.globalData.selectorsData,\n\t\t\tcontainer.globalData.tablesData,\n\t\t\tcontainer.globalData.extendedData,\n\t\t]);\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Key/Value Data (KVD).\n\t///////////////////////////////////////////////////\n\n\tconst keyValueData: Uint8Array[] = [];\n\tlet keyValue = container.keyValue;\n\n\tif (!options.keepWriter) {\n\t\tkeyValue = {...container.keyValue, 'KTXwriter': KTX_WRITER};\n\t}\n\n\tfor (const key in keyValue) {\n\t\tconst value = keyValue[key];\n\t\tconst keyData = encodeText(key);\n\t\tconst valueData = typeof value === 'string' ? encodeText(value) : value;\n\t\tconst kvByteLength = keyData.byteLength + 1 + valueData.byteLength + 1;\n\t\tconst kvPadding = kvByteLength % 4 ? (4 - (kvByteLength % 4)) : 0; // align(4)\n\t\tkeyValueData.push(concat([\n\t\t\tnew Uint32Array([kvByteLength]),\n\t\t\tkeyData,\n\t\t\tNUL,\n\t\t\tvalueData,\n\t\t\tNUL,\n\t\t\tnew Uint8Array(kvPadding).fill(0x00), // align(4)\n\t\t]));\n\t}\n\n\tconst kvdBuffer = concat(keyValueData);\n\n\n\t///////////////////////////////////////////////////\n\t// Data Format Descriptor (DFD).\n\t///////////////////////////////////////////////////\n\n\tconst dfdBuffer = new ArrayBuffer(44);\n\tconst dfdView = new DataView(dfdBuffer);\n\n\tif (container.dataFormatDescriptor.length !== 1\n\t\t\t|| container.dataFormatDescriptor[0].descriptorType !== KTX2DataFormatType.BASICFORMAT) {\n\t\tthrow new Error('Only BASICFORMAT Data Format Descriptor output supported.');\n\t}\n\n\tconst dfd = container.dataFormatDescriptor[0];\n\n\tdfdView.setUint32(0, 44, true);\n\tdfdView.setUint16(4, dfd.vendorId, true);\n\tdfdView.setUint16(6, dfd.descriptorType, true);\n\tdfdView.setUint16(8, dfd.versionNumber, true);\n\tdfdView.setUint16(10, dfd.descriptorBlockSize, true);\n\n\tdfdView.setUint8(12, dfd.colorModel);\n\tdfdView.setUint8(13, dfd.colorPrimaries);\n\tdfdView.setUint8(14, dfd.transferFunction);\n\tdfdView.setUint8(15, dfd.flags);\n\n\tdfdView.setUint8(16, dfd.texelBlockDimension.x - 1);\n\tdfdView.setUint8(17, dfd.texelBlockDimension.y - 1);\n\tdfdView.setUint8(18, dfd.texelBlockDimension.z - 1);\n\tdfdView.setUint8(19, dfd.texelBlockDimension.w - 1);\n\n\tfor (let i = 0; i < 8; i++) dfdView.setUint8(20 + i, dfd.bytesPlane[i]);\n\n\tfor (let i = 0; i < dfd.samples.length; i++) {\n\t\tconst sample = dfd.samples[i];\n\t\tconst sampleByteOffset = 28 + i * 16;\n\n\t\tdfdView.setUint16(sampleByteOffset + 0, sample.bitOffset, true);\n\t\tdfdView.setUint8(sampleByteOffset + 2, sample.bitLength);\n\t\tdfdView.setUint8(sampleByteOffset + 3, sample.channelID);\n\n\t\tdfdView.setUint8(sampleByteOffset + 4, sample.samplePosition[0]);\n\t\tdfdView.setUint8(sampleByteOffset + 5, sample.samplePosition[1]);\n\t\tdfdView.setUint8(sampleByteOffset + 6, sample.samplePosition[2]);\n\t\tdfdView.setUint8(sampleByteOffset + 7, sample.samplePosition[3]);\n\n\t\tdfdView.setUint32(sampleByteOffset + 8, sample.sampleLower, true);\n\t\tdfdView.setUint32(sampleByteOffset + 12, sample.sampleUpper, true);\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Data alignment.\n\t///////////////////////////////////////////////////\n\n\tconst dfdByteOffset = KTX2_ID.length + HEADER_BYTE_LENGTH + container.levels.length * 3 * 8;\n\tconst kvdByteOffset = dfdByteOffset + dfdBuffer.byteLength;\n\tlet sgdByteOffset = kvdByteOffset + kvdBuffer.byteLength;\n\tif (sgdByteOffset % 8) sgdByteOffset += 8 - (sgdByteOffset % 8); // align(8)\n\n\n\t///////////////////////////////////////////////////\n\t// Level Index.\n\t///////////////////////////////////////////////////\n\n\tconst levelData: Uint8Array[] = [];\n\tconst levelIndex = new DataView(new ArrayBuffer(container.levels.length * 3 * 8));\n\n\tlet levelDataByteOffset = sgdByteOffset + sgdBuffer.byteLength;\n\tfor (let i = 0; i < container.levels.length; i++) {\n\t\tconst level = container.levels[i];\n\t\tlevelData.push(level.levelData);\n\t\tlevelIndex.setBigUint64(i * 24 + 0, BigInt(levelDataByteOffset), true);\n\t\tlevelIndex.setBigUint64(i * 24 + 8, BigInt(level.levelData.byteLength), true);\n\t\tlevelIndex.setBigUint64(i * 24 + 16, BigInt(level.uncompressedByteLength), true);\n\t\tlevelDataByteOffset += level.levelData.byteLength;\n\t}\n\n\n\t///////////////////////////////////////////////////\n\t// Header.\n\t///////////////////////////////////////////////////\n\n\tconst headerBuffer = new ArrayBuffer(HEADER_BYTE_LENGTH);\n\tconst headerView = new DataView(headerBuffer);\n\theaderView.setUint32(0, container.vkFormat, true);\n\theaderView.setUint32(4, container.typeSize, true);\n\theaderView.setUint32(8, container.pixelWidth, true);\n\theaderView.setUint32(12, container.pixelHeight, true);\n\theaderView.setUint32(16, container.pixelDepth, true);\n\theaderView.setUint32(20, container.layerCount, true);\n\theaderView.setUint32(24, container.faceCount, true);\n\theaderView.setUint32(28, container.levels.length, true);\n\theaderView.setUint32(32, container.supercompressionScheme, true);\n\n\theaderView.setUint32(36, dfdByteOffset, true);\n\theaderView.setUint32(40, dfdBuffer.byteLength, true);\n\theaderView.setUint32(44, kvdByteOffset, true);\n\theaderView.setUint32(48, kvdBuffer.byteLength, true);\n\theaderView.setBigUint64(52, BigInt(sgdByteOffset), true);\n\theaderView.setBigUint64(60, BigInt(sgdBuffer.byteLength), true);\n\n\n\t///////////////////////////////////////////////////\n\t// Compose.\n\t///////////////////////////////////////////////////\n\n\treturn new Uint8Array(concat([\n\t\tnew Uint8Array(KTX2_ID).buffer,\n\t\theaderBuffer,\n\t\tlevelIndex.buffer,\n\t\tdfdBuffer,\n\t\tkvdBuffer,\n\t\tnew ArrayBuffer(sgdByteOffset - (kvdByteOffset + kvdBuffer.byteLength)), // align(8)\n\t\tsgdBuffer,\n\t\t...levelData,\n\t]));\n}\n\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { read } from 'ktx-parse';\nimport { extractMipmapImages } from \"../utils/extract-mipmap-images.js\";\nimport { mapVkFormatToWebGL } from \"../utils/ktx-format-helper.js\";\nconst KTX2_ID = [\n // '\u00B4', 'K', 'T', 'X', '2', '0', '\u00AA', '\\r', '\\n', '\\x1A', '\\n'\n 0xab, 0x4b, 0x54, 0x58, 0x20, 0x32, 0x30, 0xbb, 0x0d, 0x0a, 0x1a, 0x0a\n];\n// eslint-disable-next-line complexity\nexport function isKTX(data) {\n // const id = new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n const id = new Uint8Array(data);\n const notKTX = id.byteLength < KTX2_ID.length ||\n id[0] !== KTX2_ID[0] || // '\u00B4'\n id[1] !== KTX2_ID[1] || // 'K'\n id[2] !== KTX2_ID[2] || // 'T'\n id[3] !== KTX2_ID[3] || // 'X'\n id[4] !== KTX2_ID[4] || // ' '\n id[5] !== KTX2_ID[5] || // '2'\n id[6] !== KTX2_ID[6] || // '0'\n id[7] !== KTX2_ID[7] || // '\u00AA'\n id[8] !== KTX2_ID[8] || // '\\r'\n id[9] !== KTX2_ID[9] || // '\\n'\n id[10] !== KTX2_ID[10] || // '\\x1A'\n id[11] !== KTX2_ID[11]; // '\\n'\n return !notKTX;\n}\nexport function parseKTX(arrayBuffer) {\n const uint8Array = new Uint8Array(arrayBuffer);\n const ktx = read(uint8Array);\n const mipMapLevels = Math.max(1, ktx.levels.length);\n const width = ktx.pixelWidth;\n const height = ktx.pixelHeight;\n const internalFormat = mapVkFormatToWebGL(ktx.vkFormat);\n return extractMipmapImages(ktx.levels, {\n mipMapLevels,\n width,\n height,\n sizeFunction: (level) => level.uncompressedByteLength,\n internalFormat\n });\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { loadBasisEncoderModule, loadBasisTranscoderModule } from \"./basis-module-loader.js\";\nimport { GL_EXTENSIONS_CONSTANTS } from \"../gl-extensions.js\";\nimport { getSupportedGPUTextureFormats } from \"../utils/texture-formats.js\";\nimport { isKTX } from \"./parse-ktx.js\";\nconst OutputFormat = {\n etc1: {\n basisFormat: 0,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL\n },\n etc2: { basisFormat: 1, compressed: true },\n bc1: {\n basisFormat: 2,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT\n },\n bc3: {\n basisFormat: 3,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT\n },\n bc4: { basisFormat: 4, compressed: true },\n bc5: { basisFormat: 5, compressed: true },\n 'bc7-m6-opaque-only': { basisFormat: 6, compressed: true },\n 'bc7-m5': { basisFormat: 7, compressed: true },\n 'pvrtc1-4-rgb': {\n basisFormat: 8,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG\n },\n 'pvrtc1-4-rgba': {\n basisFormat: 9,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG\n },\n 'astc-4x4': {\n basisFormat: 10,\n compressed: true,\n format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR\n },\n 'atc-rgb': { basisFormat: 11, compressed: true },\n 'atc-rgba-interpolated-alpha': { basisFormat: 12, compressed: true },\n rgba32: { basisFormat: 13, compressed: false },\n rgb565: { basisFormat: 14, compressed: false },\n bgr565: { basisFormat: 15, compressed: false },\n rgba4444: { basisFormat: 16, compressed: false }\n};\n/**\n * parse data with a Binomial Basis_Universal module\n * @param data\n * @param options\n * @returns compressed texture data\n */\nexport default async function parseBasis(data, options) {\n if (options.basis.containerFormat === 'auto') {\n if (isKTX(data)) {\n const fileConstructors = await loadBasisEncoderModule(options);\n return parseKTX2File(fileConstructors.KTX2File, data, options);\n }\n const { BasisFile } = await loadBasisTranscoderModule(options);\n return parseBasisFile(BasisFile, data, options);\n }\n switch (options.basis.module) {\n case 'encoder':\n const fileConstructors = await loadBasisEncoderModule(options);\n switch (options.basis.containerFormat) {\n case 'ktx2':\n return parseKTX2File(fileConstructors.KTX2File, data, options);\n case 'basis':\n default:\n return parseBasisFile(fileConstructors.BasisFile, data, options);\n }\n case 'transcoder':\n default:\n const { BasisFile } = await loadBasisTranscoderModule(options);\n return parseBasisFile(BasisFile, data, options);\n }\n}\n/**\n * Parse *.basis file data\n * @param BasisFile - initialized transcoder module\n * @param data\n * @param options\n * @returns compressed texture data\n */\nfunction parseBasisFile(BasisFile, data, options) {\n const basisFile = new BasisFile(new Uint8Array(data));\n try {\n if (!basisFile.startTranscoding()) {\n throw new Error('Failed to start basis transcoding');\n }\n const imageCount = basisFile.getNumImages();\n const images = [];\n for (let imageIndex = 0; imageIndex < imageCount; imageIndex++) {\n const levelsCount = basisFile.getNumLevels(imageIndex);\n const levels = [];\n for (let levelIndex = 0; levelIndex < levelsCount; levelIndex++) {\n levels.push(transcodeImage(basisFile, imageIndex, levelIndex, options));\n }\n images.push(levels);\n }\n return images;\n }\n finally {\n basisFile.close();\n basisFile.delete();\n }\n}\n/**\n * Parse the particular level image of a basis file\n * @param basisFile\n * @param imageIndex\n * @param levelIndex\n * @param options\n * @returns compressed texture data\n */\nfunction transcodeImage(basisFile, imageIndex, levelIndex, options) {\n const width = basisFile.getImageWidth(imageIndex, levelIndex);\n const height = basisFile.getImageHeight(imageIndex, levelIndex);\n // See https://github.com/BinomialLLC/basis_universal/pull/83\n const hasAlpha = basisFile.getHasAlpha( /* imageIndex, levelIndex */);\n // Check options for output format etc\n const { compressed, format, basisFormat } = getBasisOptions(options, hasAlpha);\n const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);\n const decodedData = new Uint8Array(decodedSize);\n if (!basisFile.transcodeImage(decodedData, imageIndex, levelIndex, basisFormat, 0, 0)) {\n throw new Error('failed to start Basis transcoding');\n }\n return {\n // standard loaders.gl image category payload\n width,\n height,\n data: decodedData,\n compressed,\n format,\n // Additional fields\n // Add levelSize field.\n hasAlpha\n };\n}\n/**\n * Parse *.ktx2 file data\n * @param KTX2File\n * @param data\n * @param options\n * @returns compressed texture data\n */\nfunction parseKTX2File(KTX2File, data, options) {\n const ktx2File = new KTX2File(new Uint8Array(data));\n try {\n if (!ktx2File.startTranscoding()) {\n throw new Error('failed to start KTX2 transcoding');\n }\n const levelsCount = ktx2File.getLevels();\n const levels = [];\n for (let levelIndex = 0; levelIndex < levelsCount; levelIndex++) {\n levels.push(transcodeKTX2Image(ktx2File, levelIndex, options));\n break; // texture app can only show one level for some reason\n }\n return [levels];\n }\n finally {\n ktx2File.close();\n ktx2File.delete();\n }\n}\n/**\n * Parse the particular level image of a ktx2 file\n * @param ktx2File\n * @param levelIndex\n * @param options\n * @returns\n */\nfunction transcodeKTX2Image(ktx2File, levelIndex, options) {\n const { alphaFlag, height, width } = ktx2File.getImageLevelInfo(levelIndex, 0, 0);\n // Check options for output format etc\n const { compressed, format, basisFormat } = getBasisOptions(options, alphaFlag);\n const decodedSize = ktx2File.getImageTranscodedSizeInBytes(levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat);\n const decodedData = new Uint8Array(decodedSize);\n if (!ktx2File.transcodeImage(decodedData, levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat, 0, -1 /* channel0 */, -1 /* channel1 */)) {\n throw new Error('Failed to transcode KTX2 image');\n }\n return {\n // standard loaders.gl image category payload\n width,\n height,\n data: decodedData,\n compressed,\n // Additional fields\n levelSize: decodedSize,\n hasAlpha: alphaFlag,\n format\n };\n}\n/**\n * Get BasisFormat by loader format option\n * @param options\n * @param hasAlpha\n * @returns BasisFormat data\n */\nfunction getBasisOptions(options, hasAlpha) {\n let format = options && options.basis && options.basis.format;\n if (format === 'auto') {\n format = selectSupportedBasisFormat();\n }\n if (typeof format === 'object') {\n format = hasAlpha ? format.alpha : format.noAlpha;\n }\n format = format.toLowerCase();\n return OutputFormat[format];\n}\n/**\n * Select transcode format from the list of supported formats\n * @returns key for OutputFormat map\n */\nexport function selectSupportedBasisFormat() {\n const supportedFormats = getSupportedGPUTextureFormats();\n if (supportedFormats.has('astc')) {\n return 'astc-4x4';\n }\n else if (supportedFormats.has('dxt')) {\n return {\n alpha: 'bc3',\n noAlpha: 'bc1'\n };\n }\n else if (supportedFormats.has('pvrtc')) {\n return {\n alpha: 'pvrtc1-4-rgba',\n noAlpha: 'pvrtc1-4-rgb'\n };\n }\n else if (supportedFormats.has('etc1')) {\n return 'etc1';\n }\n else if (supportedFormats.has('etc2')) {\n return 'etc2';\n }\n return 'rgb565';\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { VERSION } from \"./lib/utils/version.js\";\nimport parseBasis from \"./lib/parsers/parse-basis.js\";\n/**\n * Worker loader for Basis super compressed textures\n */\nexport const BasisWorkerLoader = {\n dataType: null,\n batchType: null,\n name: 'Basis',\n id: 'basis',\n module: 'textures',\n version: VERSION,\n worker: true,\n extensions: ['basis', 'ktx2'],\n mimeTypes: ['application/octet-stream', 'image/ktx2'],\n tests: ['sB'],\n binary: true,\n options: {\n basis: {\n format: 'auto',\n libraryPath: 'libs/',\n containerFormat: 'auto',\n module: 'transcoder'\n }\n }\n};\n/**\n * Loader for Basis super compressed textures\n */\nexport const BasisLoader = {\n ...BasisWorkerLoader,\n parse: parseBasis\n};\n", "import { padToNBytes, assert } from '@loaders.gl/loader-utils';\n/** Binary GLTF is little endian. */\nconst LITTLE_ENDIAN = true;\n/** 'glTF' in Big-Endian ASCII */\nconst MAGIC_glTF = 0x676c5446;\nconst GLB_FILE_HEADER_SIZE = 12;\nconst GLB_CHUNK_HEADER_SIZE = 8;\nconst GLB_CHUNK_TYPE_JSON = 0x4e4f534a;\nconst GLB_CHUNK_TYPE_BIN = 0x004e4942;\nconst GLB_V1_CONTENT_FORMAT_JSON = 0x0;\n/** @deprecated - Backward compatibility for old xviz files */\nconst GLB_CHUNK_TYPE_JSON_XVIZ_DEPRECATED = 0;\n/** @deprecated - Backward compatibility for old xviz files */\nconst GLB_CHUNK_TYPE_BIX_XVIZ_DEPRECATED = 1;\nfunction getMagicString(dataView, byteOffset = 0) {\n return `\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 0))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 1))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 2))}\\\n${String.fromCharCode(dataView.getUint8(byteOffset + 3))}`;\n}\n/** Check if the contents of an array buffer contains GLB byte markers */\nexport function isGLB(arrayBuffer, byteOffset = 0, options = {}) {\n const dataView = new DataView(arrayBuffer);\n // Check that GLB Header starts with the magic number\n const { magic = MAGIC_glTF } = options;\n const magic1 = dataView.getUint32(byteOffset, false);\n return magic1 === magic || magic1 === MAGIC_glTF;\n}\n/**\n * Synchronously parse a GLB\n * @param glb - Target, Output is stored there\n * @param arrayBuffer - Input data\n * @param byteOffset - Offset into arrayBuffer to start parsing from (for \"embedded\" GLBs, e.g. in 3D tiles)\n * @param options\n * @returns\n */\nexport function parseGLBSync(glb, arrayBuffer, byteOffset = 0, options = {}) {\n // Check that GLB Header starts with the magic number\n const dataView = new DataView(arrayBuffer);\n // Compare format with GLBLoader documentation\n const type = getMagicString(dataView, byteOffset + 0);\n const version = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Version 2 of binary glTF container format\n const byteLength = dataView.getUint32(byteOffset + 8, LITTLE_ENDIAN); // Total byte length of binary file\n Object.assign(glb, {\n // Put less important stuff in a header, to avoid clutter\n header: {\n byteOffset, // Byte offset into the initial arrayBuffer\n byteLength,\n hasBinChunk: false\n },\n type,\n version,\n json: {},\n binChunks: []\n });\n byteOffset += GLB_FILE_HEADER_SIZE;\n switch (glb.version) {\n case 1:\n return parseGLBV1(glb, dataView, byteOffset);\n case 2:\n return parseGLBV2(glb, dataView, byteOffset, (options = {}));\n default:\n throw new Error(`Invalid GLB version ${glb.version}. Only supports version 1 and 2.`);\n }\n}\n/**\n * Parse a V1 GLB\n * @param glb - target, output is stored in this object\n * @param dataView - Input, memory to be parsed\n * @param byteOffset - Offset of first byte of GLB data in the data view\n * @returns Number of bytes parsed (there could be additional non-GLB data after the GLB)\n */\nfunction parseGLBV1(glb, dataView, byteOffset) {\n // Sanity: ensure file is big enough to hold at least the headers\n assert(glb.header.byteLength > GLB_FILE_HEADER_SIZE + GLB_CHUNK_HEADER_SIZE);\n // Explanation of GLB structure:\n // https://cloud.githubusercontent.com/assets/3479527/22600725/36b87122-ea55-11e6-9d40-6fd42819fcab.png\n const contentLength = dataView.getUint32(byteOffset + 0, LITTLE_ENDIAN); // Byte length of chunk\n const contentFormat = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Chunk format as uint32\n byteOffset += GLB_CHUNK_HEADER_SIZE;\n // GLB v1 only supports a single chunk type\n assert(contentFormat === GLB_V1_CONTENT_FORMAT_JSON);\n parseJSONChunk(glb, dataView, byteOffset, contentLength);\n // No need to call the function padToBytes() from parseJSONChunk()\n byteOffset += contentLength;\n byteOffset += parseBINChunk(glb, dataView, byteOffset, glb.header.byteLength);\n return byteOffset;\n}\n/**\n * Parse a V2 GLB\n * @param glb - target, output is stored in this object\n * @param dataView - Input, memory to be parsed\n * @param byteOffset - Offset of first byte of GLB data in the data view\n * @returns Number of bytes parsed (there could be additional non-GLB data after the GLB)\n */\nfunction parseGLBV2(glb, dataView, byteOffset, options) {\n // Sanity: ensure file is big enough to hold at least the first chunk header\n assert(glb.header.byteLength > GLB_FILE_HEADER_SIZE + GLB_CHUNK_HEADER_SIZE);\n parseGLBChunksSync(glb, dataView, byteOffset, options);\n return byteOffset + glb.header.byteLength;\n}\n/** Iterate over GLB chunks and parse them */\nfunction parseGLBChunksSync(glb, dataView, byteOffset, options) {\n // Per spec we must iterate over chunks, ignoring all except JSON and BIN\n // Iterate as long as there is space left for another chunk header\n while (byteOffset + 8 <= glb.header.byteLength) {\n const chunkLength = dataView.getUint32(byteOffset + 0, LITTLE_ENDIAN); // Byte length of chunk\n const chunkFormat = dataView.getUint32(byteOffset + 4, LITTLE_ENDIAN); // Chunk format as uint32\n byteOffset += GLB_CHUNK_HEADER_SIZE;\n // Per spec we must iterate over chunks, ignoring all except JSON and BIN\n switch (chunkFormat) {\n case GLB_CHUNK_TYPE_JSON:\n parseJSONChunk(glb, dataView, byteOffset, chunkLength);\n break;\n case GLB_CHUNK_TYPE_BIN:\n parseBINChunk(glb, dataView, byteOffset, chunkLength);\n break;\n // Backward compatibility for very old xviz files\n case GLB_CHUNK_TYPE_JSON_XVIZ_DEPRECATED:\n if (!options.strict) {\n parseJSONChunk(glb, dataView, byteOffset, chunkLength);\n }\n break;\n case GLB_CHUNK_TYPE_BIX_XVIZ_DEPRECATED:\n if (!options.strict) {\n parseBINChunk(glb, dataView, byteOffset, chunkLength);\n }\n break;\n default:\n // Ignore, per spec\n // console.warn(`Unknown GLB chunk type`); // eslint-disable-line\n break;\n }\n byteOffset += padToNBytes(chunkLength, 4);\n }\n return byteOffset;\n}\n/* Parse a GLB JSON chunk */\nfunction parseJSONChunk(glb, dataView, byteOffset, chunkLength) {\n // 1. Create a \"view\" of the binary encoded JSON data inside the GLB\n const jsonChunk = new Uint8Array(dataView.buffer, byteOffset, chunkLength);\n // 2. Decode the JSON binary array into clear text\n const textDecoder = new TextDecoder('utf8');\n const jsonText = textDecoder.decode(jsonChunk);\n // 3. Parse the JSON text into a JavaScript data structure\n glb.json = JSON.parse(jsonText);\n return padToNBytes(chunkLength, 4);\n}\n/** Parse a GLB BIN chunk */\nfunction parseBINChunk(glb, dataView, byteOffset, chunkLength) {\n // Note: BIN chunk can be optional\n glb.header.hasBinChunk = true;\n glb.binChunks.push({\n byteOffset,\n byteLength: chunkLength,\n arrayBuffer: dataView.buffer\n // TODO - copy, or create typed array view?\n });\n return padToNBytes(chunkLength, 4);\n}\n", "// Resolves a relative url against a baseUrl\n// If url is absolute, return it unchanged\nexport function resolveUrl(url, options) {\n // TODO: Use better logic to handle all protocols plus not delay on data\n const absolute = url.startsWith('data:') || url.startsWith('http:') || url.startsWith('https:');\n if (absolute) {\n return url;\n }\n const baseUrl = options.baseUri || options.uri;\n if (!baseUrl) {\n throw new Error(`'baseUri' must be provided to resolve relative url ${url}`);\n }\n return baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1) + url;\n}\n", "import { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { meshoptDecodeGltfBuffer } from \"../../meshopt/meshopt-decoder.js\";\n// @ts-ignore\n// eslint-disable-next-line\nconst DEFAULT_MESHOPT_OPTIONS = {\n byteOffset: 0,\n filter: 'NONE'\n};\n/** Extension name */\nconst EXT_MESHOPT_COMPRESSION = 'EXT_meshopt_compression';\nexport const name = EXT_MESHOPT_COMPRESSION;\nexport async function decode(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n if (!options?.gltf?.decompressMeshes || !options.gltf?.loadBuffers) {\n return;\n }\n const promises = [];\n for (const bufferViewIndex of gltfData.json.bufferViews || []) {\n promises.push(decodeMeshoptBufferView(scenegraph, bufferViewIndex));\n }\n // Decompress meshes in parallel\n await Promise.all(promises);\n // We have now decompressed all primitives, so remove the top-level extension\n scenegraph.removeExtension(EXT_MESHOPT_COMPRESSION);\n}\n/** Decode one meshopt buffer view */\nasync function decodeMeshoptBufferView(scenegraph, bufferView) {\n const meshoptExtension = scenegraph.getObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);\n if (meshoptExtension) {\n const { byteOffset = 0, byteLength = 0, byteStride, count, mode, filter = 'NONE', buffer: bufferIndex } = meshoptExtension;\n const buffer = scenegraph.gltf.buffers[bufferIndex];\n const source = new Uint8Array(buffer.arrayBuffer, buffer.byteOffset + byteOffset, byteLength);\n const result = new Uint8Array(scenegraph.gltf.buffers[bufferView.buffer].arrayBuffer, bufferView.byteOffset, bufferView.byteLength);\n await meshoptDecodeGltfBuffer(result, count, byteStride, source, mode, filter);\n scenegraph.removeObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);\n }\n}\n", "// This file is part of meshoptimizer library and is distributed under the terms of MIT License.\n// Copyright (C) 2016-2021, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)\n/* eslint-disable camelcase */\nconst isWebAssemblySupported = typeof WebAssembly !== 'object';\n// Built with clang version 11.0.0 (https://github.com/llvm/llvm-project.git 0160ad802e899c2922bc9b29564080c22eb0908c)\n// Built from meshoptimizer 0.16\nconst wasm_base = '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';\nconst wasm_simd = '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';\n// Uses bulk-memory and simd extensions\nconst detector = new Uint8Array([\n 0, 97, 115, 109, 1, 0, 0, 0, 1, 4, 1, 96, 0, 0, 3, 3, 2, 0, 0, 5, 3, 1, 0, 1, 12, 1, 0, 10, 22, 2,\n 12, 0, 65, 0, 65, 0, 65, 0, 252, 10, 0, 0, 11, 7, 0, 65, 0, 253, 15, 26, 11\n]);\n// Used to unpack wasm\nconst wasmpack = new Uint8Array([\n 32, 0, 65, 253, 3, 1, 2, 34, 4, 106, 6, 5, 11, 8, 7, 20, 13, 33, 12, 16, 128, 9, 116, 64, 19, 113,\n 127, 15, 10, 21, 22, 14, 255, 66, 24, 54, 136, 107, 18, 23, 192, 26, 114, 118, 132, 17, 77, 101,\n 130, 144, 27, 87, 131, 44, 45, 74, 156, 154, 70, 167\n]);\nconst FILTERS = {\n // legacy index-based enums for glTF\n 0: '',\n 1: 'meshopt_decodeFilterOct',\n 2: 'meshopt_decodeFilterQuat',\n 3: 'meshopt_decodeFilterExp',\n // string-based enums for glTF\n NONE: '',\n OCTAHEDRAL: 'meshopt_decodeFilterOct',\n QUATERNION: 'meshopt_decodeFilterQuat',\n EXPONENTIAL: 'meshopt_decodeFilterExp'\n};\nconst DECODERS = {\n // legacy index-based enums for glTF\n 0: 'meshopt_decodeVertexBuffer',\n 1: 'meshopt_decodeIndexBuffer',\n 2: 'meshopt_decodeIndexSequence',\n // string-based enums for glTF\n ATTRIBUTES: 'meshopt_decodeVertexBuffer',\n TRIANGLES: 'meshopt_decodeIndexBuffer',\n INDICES: 'meshopt_decodeIndexSequence'\n};\nexport function isMeshoptSupported() {\n return isWebAssemblySupported;\n}\nexport async function meshoptDecodeVertexBuffer(target, count, size, source, filter = 'NONE') {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeVertexBuffer, target, count, size, source, instance.exports[FILTERS[filter]]);\n}\nexport async function meshoptDecodeIndexBuffer(target, count, size, source) {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeIndexBuffer, target, count, size, source);\n}\nexport async function meshoptDecodeIndexSequence(target, count, size, source) {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports.meshopt_decodeIndexSequence, target, count, size, source);\n}\n// eslint-disable-next-line max-params\nexport async function meshoptDecodeGltfBuffer(target, count, size, source, mode, filter = 'NONE') {\n const instance = await loadWasmInstance();\n decode(instance, instance.exports[DECODERS[mode]], target, count, size, source, instance.exports[FILTERS[filter || 'NONE']]);\n}\nlet wasmPromise;\nasync function loadWasmInstance() {\n // eslint-disable-next-line\n if (!wasmPromise) {\n wasmPromise = loadWasmModule();\n }\n return wasmPromise;\n}\nasync function loadWasmModule() {\n let wasm = wasm_base;\n if (WebAssembly.validate(detector)) {\n wasm = wasm_simd;\n // eslint-disable-next-line no-console\n console.log('Warning: meshopt_decoder is using experimental SIMD support');\n }\n const result = await WebAssembly.instantiate(unpack(wasm), {});\n await result.instance.exports.__wasm_call_ctors();\n return result.instance;\n}\nfunction unpack(data) {\n const result = new Uint8Array(data.length);\n for (let i = 0; i < data.length; ++i) {\n const ch = data.charCodeAt(i);\n result[i] = ch > 96 ? ch - 71 : ch > 64 ? ch - 65 : ch > 47 ? ch + 4 : ch > 46 ? 63 : 62;\n }\n let write = 0;\n for (let i = 0; i < data.length; ++i) {\n result[write++] = result[i] < 60 ? wasmpack[result[i]] : (result[i] - 60) * 64 + result[++i];\n }\n return result.buffer.slice(0, write);\n}\n// eslint-disable-next-line max-params\nfunction decode(instance, fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3; // pad for SIMD filter\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res === 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res !== 0) {\n throw new Error(`Malformed buffer data: ${res}`);\n }\n}\n", "// GLTF EXTENSION: EXT_TEXTURE_WEBP\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/EXT_TEXTURE_WEBP\n/* eslint-disable camelcase */\nimport { isImageFormatSupported } from '@loaders.gl/images';\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst EXT_TEXTURE_WEBP = 'EXT_texture_webp';\n/** Extension name */\nexport const name = EXT_TEXTURE_WEBP;\n/**\n * Replaces a texture source reference with the extension texture\n * Done in preprocess() to prevent load of default image\n */\nexport function preprocess(gltfData, options) {\n const scenegraph = new GLTFScenegraph(gltfData);\n if (!isImageFormatSupported('image/webp')) {\n if (scenegraph.getRequiredExtensions().includes(EXT_TEXTURE_WEBP)) {\n throw new Error(`gltf: Required extension ${EXT_TEXTURE_WEBP} not supported by browser`);\n }\n return;\n }\n const { json } = scenegraph;\n for (const texture of json.textures || []) {\n const extension = scenegraph.getObjectExtension(texture, EXT_TEXTURE_WEBP);\n if (extension) {\n // TODO - if multiple texture extensions are present which one wins?\n texture.source = extension.source;\n }\n scenegraph.removeObjectExtension(texture, EXT_TEXTURE_WEBP);\n }\n // Remove the top-level extension\n scenegraph.removeExtension(EXT_TEXTURE_WEBP);\n}\n", "// GLTF EXTENSION: KHR_texture_basisu\n// https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_texture_basisu\n/* eslint-disable camelcase */\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst KHR_TEXTURE_BASISU = 'KHR_texture_basisu';\n/** Extension name */\nexport const name = KHR_TEXTURE_BASISU;\n/**\n * Replaces a texture source reference with the extension texture\n * Done in preprocess() to prevent load of default image\n */\nexport function preprocess(gltfData, options) {\n const scene = new GLTFScenegraph(gltfData);\n const { json } = scene;\n for (const texture of json.textures || []) {\n const extension = scene.getObjectExtension(texture, KHR_TEXTURE_BASISU);\n if (extension) {\n // TODO - if multiple texture extensions are present which one wins?\n texture.source = extension.source;\n scene.removeObjectExtension(texture, KHR_TEXTURE_BASISU);\n }\n }\n // Remove the top-level extension\n scene.removeExtension(KHR_TEXTURE_BASISU);\n}\n", "// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_draco_mesh_compression\n// Only TRIANGLES: 0x0004 and TRIANGLE_STRIP: 0x0005 are supported\n/* eslint-disable camelcase */\nimport { sliceArrayBuffer, parseFromContext } from '@loaders.gl/loader-utils';\nimport { DracoLoader } from '@loaders.gl/draco';\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nimport { getGLTFAccessors, getGLTFAccessor } from \"../gltf-utils/gltf-attribute-utils.js\";\nconst KHR_DRACO_MESH_COMPRESSION = 'KHR_draco_mesh_compression';\n/** Extension name */\nexport const name = KHR_DRACO_MESH_COMPRESSION;\nexport function preprocess(gltfData, options, context) {\n const scenegraph = new GLTFScenegraph(gltfData);\n for (const primitive of makeMeshPrimitiveIterator(scenegraph)) {\n if (scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION)) {\n // TODO - Remove fallback accessors to make sure we don't load unnecessary buffers\n }\n }\n}\nexport async function decode(gltfData, options, context) {\n if (!options?.gltf?.decompressMeshes) {\n return;\n }\n const scenegraph = new GLTFScenegraph(gltfData);\n const promises = [];\n for (const primitive of makeMeshPrimitiveIterator(scenegraph)) {\n if (scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION)) {\n promises.push(decompressPrimitive(scenegraph, primitive, options, context));\n }\n }\n // Decompress meshes in parallel\n await Promise.all(promises);\n // We have now decompressed all primitives, so remove the top-level extension\n scenegraph.removeExtension(KHR_DRACO_MESH_COMPRESSION);\n}\nexport function encode(gltfData, options = {}) {\n const scenegraph = new GLTFScenegraph(gltfData);\n for (const mesh of scenegraph.json.meshes || []) {\n // eslint-disable-next-line camelcase\n // @ts-ignore\n compressMesh(mesh, options);\n // NOTE: Only add the extension if something was actually compressed\n scenegraph.addRequiredExtension(KHR_DRACO_MESH_COMPRESSION);\n }\n}\n// DECODE\n// Unpacks one mesh primitive and removes the extension from the primitive\n// DracoDecoder needs to be imported and registered by app\n// Returns: Promise that resolves when all pending draco decoder jobs for this mesh complete\n// TODO - Implement fallback behavior per KHR_DRACO_MESH_COMPRESSION spec\nasync function decompressPrimitive(scenegraph, primitive, options, context) {\n const dracoExtension = scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION);\n if (!dracoExtension) {\n return;\n }\n const buffer = scenegraph.getTypedArrayForBufferView(dracoExtension.bufferView);\n // TODO - parse does not yet deal well with byte offsets embedded in typed arrays. Copy buffer\n // TODO - remove when `parse` is fixed to handle `byteOffset`s\n const bufferCopy = sliceArrayBuffer(buffer.buffer, buffer.byteOffset); // , buffer.byteLength);\n const dracoOptions = { ...options };\n // TODO - remove hack: The entire tileset might be included, too expensive to serialize\n delete dracoOptions['3d-tiles'];\n const decodedData = await parseFromContext(bufferCopy, DracoLoader, dracoOptions, context);\n const decodedAttributes = getGLTFAccessors(decodedData.attributes);\n // Restore min/max values\n for (const [attributeName, decodedAttribute] of Object.entries(decodedAttributes)) {\n if (attributeName in primitive.attributes) {\n const accessorIndex = primitive.attributes[attributeName];\n const accessor = scenegraph.getAccessor(accessorIndex);\n if (accessor?.min && accessor?.max) {\n decodedAttribute.min = accessor.min;\n decodedAttribute.max = accessor.max;\n }\n }\n }\n // @ts-ignore\n primitive.attributes = decodedAttributes;\n if (decodedData.indices) {\n // @ts-ignore\n primitive.indices = getGLTFAccessor(decodedData.indices);\n }\n // Extension has been processed, delete it\n scenegraph.removeObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION);\n checkPrimitive(primitive);\n}\n// ENCODE\n// eslint-disable-next-line max-len\n// Only TRIANGLES: 0x0004 and TRIANGLE_STRIP: 0x0005 are supported\nfunction compressMesh(attributes, indices, mode = 4, options, context) {\n if (!options.DracoWriter) {\n throw new Error('options.gltf.DracoWriter not provided');\n }\n // TODO - use DracoWriter using encode w/ registered DracoWriter...\n const compressedData = options.DracoWriter.encodeSync({ attributes });\n // Draco compression may change the order and number of vertices in a mesh.\n // To satisfy the requirement that accessors properties be correct for both\n // compressed and uncompressed data, generators should create uncompressed\n // attributes and indices using data that has been decompressed from the Draco buffer,\n // rather than the original source data.\n // @ts-ignore TODO this needs to be fixed\n const decodedData = context?.parseSync?.({ attributes });\n const fauxAccessors = options._addFauxAttributes(decodedData.attributes);\n const bufferViewIndex = options.addBufferView(compressedData);\n const glTFMesh = {\n primitives: [\n {\n attributes: fauxAccessors, // TODO - verify with spec\n mode, // GL.POINTS\n extensions: {\n [KHR_DRACO_MESH_COMPRESSION]: {\n bufferView: bufferViewIndex,\n attributes: fauxAccessors // TODO - verify with spec\n }\n }\n }\n ]\n };\n return glTFMesh;\n}\n// UTILS\nfunction checkPrimitive(primitive) {\n if (!primitive.attributes && Object.keys(primitive.attributes).length > 0) {\n throw new Error('glTF: Empty primitive detected: Draco decompression failure?');\n }\n}\nfunction* makeMeshPrimitiveIterator(scenegraph) {\n for (const mesh of scenegraph.json.meshes || []) {\n for (const primitive of mesh.primitives) {\n yield primitive;\n }\n }\n}\n", "// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof \"4.2.1\" !== 'undefined' ? \"4.2.1\" : 'latest';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { VERSION } from \"./lib/utils/version.js\";\n/**\n * Worker loader for Draco3D compressed geometries\n */\nexport const DracoLoader = {\n dataType: null,\n batchType: null,\n name: 'Draco',\n id: 'draco',\n module: 'draco',\n // shapes: ['mesh'],\n version: VERSION,\n worker: true,\n extensions: ['drc'],\n mimeTypes: ['application/octet-stream'],\n binary: true,\n tests: ['DRACO'],\n options: {\n draco: {\n decoderType: typeof WebAssembly === 'object' ? 'wasm' : 'js', // 'js' for IE11\n libraryPath: 'libs/',\n extraAttributes: {},\n attributeNameEntry: undefined\n }\n }\n};\n", "import { deduceMeshField } from '@loaders.gl/schema';\n/** Extract an arrow-like schema from a Draco mesh */\nexport function getDracoSchema(attributes, loaderData, indices) {\n const metadata = makeMetadata(loaderData.metadata);\n const fields = [];\n const namedLoaderDataAttributes = transformAttributesLoaderData(loaderData.attributes);\n for (const attributeName in attributes) {\n const attribute = attributes[attributeName];\n const field = getArrowFieldFromAttribute(attributeName, attribute, namedLoaderDataAttributes[attributeName]);\n fields.push(field);\n }\n if (indices) {\n const indicesField = getArrowFieldFromAttribute('indices', indices);\n fields.push(indicesField);\n }\n return { fields, metadata };\n}\nfunction transformAttributesLoaderData(loaderData) {\n const result = {};\n for (const key in loaderData) {\n const dracoAttribute = loaderData[key];\n result[dracoAttribute.name || 'undefined'] = dracoAttribute;\n }\n return result;\n}\nfunction getArrowFieldFromAttribute(attributeName, attribute, loaderData) {\n const metadataMap = loaderData ? makeMetadata(loaderData.metadata) : undefined;\n const field = deduceMeshField(attributeName, attribute, metadataMap);\n return field;\n}\nfunction makeMetadata(metadata) {\n Object.entries(metadata);\n const serializedMetadata = {};\n for (const key in metadata) {\n serializedMetadata[`${key}.string`] = JSON.stringify(metadata[key]);\n }\n return serializedMetadata;\n}\n", "/* eslint-disable camelcase */\nimport { getMeshBoundingBox } from '@loaders.gl/schema';\nimport { getDracoSchema } from \"./utils/get-draco-schema.js\";\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst GEOMETRY_TYPE = {\n TRIANGULAR_MESH: 0,\n POINT_CLOUD: 1\n};\n// Native Draco attribute names to GLTF attribute names.\nconst DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP = {\n POSITION: 'POSITION',\n NORMAL: 'NORMAL',\n COLOR: 'COLOR_0',\n TEX_COORD: 'TEXCOORD_0'\n};\nconst DRACO_DATA_TYPE_TO_TYPED_ARRAY_MAP = {\n 1: Int8Array,\n 2: Uint8Array,\n 3: Int16Array,\n 4: Uint16Array,\n 5: Int32Array,\n 6: Uint32Array,\n // 7: BigInt64Array,\n // 8: BigUint64Array,\n 9: Float32Array\n // 10: Float64Array\n // 11: BOOL - What array type do we use for this?\n};\nconst INDEX_ITEM_SIZE = 4;\nexport default class DracoParser {\n draco;\n decoder;\n metadataQuerier;\n // draco - the draco decoder, either import `draco3d` or load dynamically\n constructor(draco) {\n this.draco = draco;\n this.decoder = new this.draco.Decoder();\n this.metadataQuerier = new this.draco.MetadataQuerier();\n }\n /**\n * Destroy draco resources\n */\n destroy() {\n this.draco.destroy(this.decoder);\n this.draco.destroy(this.metadataQuerier);\n }\n /**\n * NOTE: caller must call `destroyGeometry` on the return value after using it\n * @param arrayBuffer\n * @param options\n */\n parseSync(arrayBuffer, options = {}) {\n const buffer = new this.draco.DecoderBuffer();\n buffer.Init(new Int8Array(arrayBuffer), arrayBuffer.byteLength);\n this._disableAttributeTransforms(options);\n const geometry_type = this.decoder.GetEncodedGeometryType(buffer);\n const dracoGeometry = geometry_type === this.draco.TRIANGULAR_MESH\n ? new this.draco.Mesh()\n : new this.draco.PointCloud();\n try {\n let dracoStatus;\n switch (geometry_type) {\n case this.draco.TRIANGULAR_MESH:\n dracoStatus = this.decoder.DecodeBufferToMesh(buffer, dracoGeometry);\n break;\n case this.draco.POINT_CLOUD:\n dracoStatus = this.decoder.DecodeBufferToPointCloud(buffer, dracoGeometry);\n break;\n default:\n throw new Error('DRACO: Unknown geometry type.');\n }\n if (!dracoStatus.ok() || !dracoGeometry.ptr) {\n const message = `DRACO decompression failed: ${dracoStatus.error_msg()}`;\n // console.error(message);\n throw new Error(message);\n }\n const loaderData = this._getDracoLoaderData(dracoGeometry, geometry_type, options);\n const geometry = this._getMeshData(dracoGeometry, loaderData, options);\n const boundingBox = getMeshBoundingBox(geometry.attributes);\n const schema = getDracoSchema(geometry.attributes, loaderData, geometry.indices);\n const data = {\n loader: 'draco',\n loaderData,\n header: {\n vertexCount: dracoGeometry.num_points(),\n boundingBox\n },\n ...geometry,\n schema\n };\n return data;\n }\n finally {\n this.draco.destroy(buffer);\n if (dracoGeometry) {\n this.draco.destroy(dracoGeometry);\n }\n }\n }\n // Draco specific \"loader data\"\n /**\n * Extract\n * @param dracoGeometry\n * @param geometry_type\n * @param options\n * @returns\n */\n _getDracoLoaderData(dracoGeometry, geometry_type, options) {\n const metadata = this._getTopLevelMetadata(dracoGeometry);\n const attributes = this._getDracoAttributes(dracoGeometry, options);\n return {\n geometry_type,\n num_attributes: dracoGeometry.num_attributes(),\n num_points: dracoGeometry.num_points(),\n num_faces: dracoGeometry instanceof this.draco.Mesh ? dracoGeometry.num_faces() : 0,\n metadata,\n attributes\n };\n }\n /**\n * Extract all draco provided information and metadata for each attribute\n * @param dracoGeometry\n * @param options\n * @returns\n */\n _getDracoAttributes(dracoGeometry, options) {\n const dracoAttributes = {};\n for (let attributeId = 0; attributeId < dracoGeometry.num_attributes(); attributeId++) {\n // Note: Draco docs do not seem clear on `GetAttribute` ids just being a zero-based index,\n // but it does seems to work this way\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attributeId);\n const metadata = this._getAttributeMetadata(dracoGeometry, attributeId);\n dracoAttributes[dracoAttribute.unique_id()] = {\n unique_id: dracoAttribute.unique_id(),\n attribute_type: dracoAttribute.attribute_type(),\n data_type: dracoAttribute.data_type(),\n num_components: dracoAttribute.num_components(),\n byte_offset: dracoAttribute.byte_offset(),\n byte_stride: dracoAttribute.byte_stride(),\n normalized: dracoAttribute.normalized(),\n attribute_index: attributeId,\n metadata\n };\n // Add transformation parameters for any attributes app wants untransformed\n const quantization = this._getQuantizationTransform(dracoAttribute, options);\n if (quantization) {\n dracoAttributes[dracoAttribute.unique_id()].quantization_transform = quantization;\n }\n const octahedron = this._getOctahedronTransform(dracoAttribute, options);\n if (octahedron) {\n dracoAttributes[dracoAttribute.unique_id()].octahedron_transform = octahedron;\n }\n }\n return dracoAttributes;\n }\n /**\n * Get standard loaders.gl mesh category data\n * Extracts the geometry from draco\n * @param dracoGeometry\n * @param options\n */\n _getMeshData(dracoGeometry, loaderData, options) {\n const attributes = this._getMeshAttributes(loaderData, dracoGeometry, options);\n const positionAttribute = attributes.POSITION;\n if (!positionAttribute) {\n throw new Error('DRACO: No position attribute found.');\n }\n // For meshes, we need indices to define the faces.\n if (dracoGeometry instanceof this.draco.Mesh) {\n switch (options.topology) {\n case 'triangle-strip':\n return {\n topology: 'triangle-strip',\n mode: 4, // GL.TRIANGLES\n attributes,\n indices: {\n value: this._getTriangleStripIndices(dracoGeometry),\n size: 1\n }\n };\n case 'triangle-list':\n default:\n return {\n topology: 'triangle-list',\n mode: 5, // GL.TRIANGLE_STRIP\n attributes,\n indices: {\n value: this._getTriangleListIndices(dracoGeometry),\n size: 1\n }\n };\n }\n }\n // PointCloud - must come last as Mesh inherits from PointCloud\n return {\n topology: 'point-list',\n mode: 0, // GL.POINTS\n attributes\n };\n }\n _getMeshAttributes(loaderData, dracoGeometry, options) {\n const attributes = {};\n for (const loaderAttribute of Object.values(loaderData.attributes)) {\n const attributeName = this._deduceAttributeName(loaderAttribute, options);\n loaderAttribute.name = attributeName;\n const values = this._getAttributeValues(dracoGeometry, loaderAttribute);\n if (values) {\n const { value, size } = values;\n attributes[attributeName] = {\n value,\n size,\n byteOffset: loaderAttribute.byte_offset,\n byteStride: loaderAttribute.byte_stride,\n normalized: loaderAttribute.normalized\n };\n }\n }\n return attributes;\n }\n // MESH INDICES EXTRACTION\n /**\n * For meshes, we need indices to define the faces.\n * @param dracoGeometry\n */\n _getTriangleListIndices(dracoGeometry) {\n // Example on how to retrieve mesh and attributes.\n const numFaces = dracoGeometry.num_faces();\n const numIndices = numFaces * 3;\n const byteLength = numIndices * INDEX_ITEM_SIZE;\n const ptr = this.draco._malloc(byteLength);\n try {\n this.decoder.GetTrianglesUInt32Array(dracoGeometry, byteLength, ptr);\n return new Uint32Array(this.draco.HEAPF32.buffer, ptr, numIndices).slice();\n }\n finally {\n this.draco._free(ptr);\n }\n }\n /**\n * For meshes, we need indices to define the faces.\n * @param dracoGeometry\n */\n _getTriangleStripIndices(dracoGeometry) {\n const dracoArray = new this.draco.DracoInt32Array();\n try {\n /* const numStrips = */ this.decoder.GetTriangleStripsFromMesh(dracoGeometry, dracoArray);\n return getUint32Array(dracoArray);\n }\n finally {\n this.draco.destroy(dracoArray);\n }\n }\n /**\n *\n * @param dracoGeometry\n * @param dracoAttribute\n * @param attributeName\n */\n _getAttributeValues(dracoGeometry, attribute) {\n const TypedArrayCtor = DRACO_DATA_TYPE_TO_TYPED_ARRAY_MAP[attribute.data_type];\n if (!TypedArrayCtor) {\n // eslint-disable-next-line no-console\n console.warn(`DRACO: Unsupported attribute type ${attribute.data_type}`);\n return null;\n }\n const numComponents = attribute.num_components;\n const numPoints = dracoGeometry.num_points();\n const numValues = numPoints * numComponents;\n const byteLength = numValues * TypedArrayCtor.BYTES_PER_ELEMENT;\n const dataType = getDracoDataType(this.draco, TypedArrayCtor);\n let value;\n const ptr = this.draco._malloc(byteLength);\n try {\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attribute.attribute_index);\n this.decoder.GetAttributeDataArrayForAllPoints(dracoGeometry, dracoAttribute, dataType, byteLength, ptr);\n value = new TypedArrayCtor(this.draco.HEAPF32.buffer, ptr, numValues).slice();\n }\n finally {\n this.draco._free(ptr);\n }\n return { value, size: numComponents };\n }\n // Attribute names\n /**\n * DRACO does not store attribute names - We need to deduce an attribute name\n * for each attribute\n _getAttributeNames(\n dracoGeometry: Mesh | PointCloud,\n options: DracoParseOptions\n ): {[unique_id: number]: string} {\n const attributeNames: {[unique_id: number]: string} = {};\n for (let attributeId = 0; attributeId < dracoGeometry.num_attributes(); attributeId++) {\n const dracoAttribute = this.decoder.GetAttribute(dracoGeometry, attributeId);\n const attributeName = this._deduceAttributeName(dracoAttribute, options);\n attributeNames[attributeName] = attributeName;\n }\n return attributeNames;\n }\n */\n /**\n * Deduce an attribute name.\n * @note DRACO does not save attribute names, just general type (POSITION, COLOR)\n * to help optimize compression. We generate GLTF compatible names for the Draco-recognized\n * types\n * @param attributeData\n */\n _deduceAttributeName(attribute, options) {\n // Deduce name based on application provided map\n const uniqueId = attribute.unique_id;\n for (const [attributeName, attributeUniqueId] of Object.entries(options.extraAttributes || {})) {\n if (attributeUniqueId === uniqueId) {\n return attributeName;\n }\n }\n // Deduce name based on attribute type\n const thisAttributeType = attribute.attribute_type;\n for (const dracoAttributeConstant in DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP) {\n const attributeType = this.draco[dracoAttributeConstant];\n if (attributeType === thisAttributeType) {\n // TODO - Return unique names if there multiple attributes per type\n // (e.g. multiple TEX_COORDS or COLORS)\n return DRACO_TO_GLTF_ATTRIBUTE_NAME_MAP[dracoAttributeConstant];\n }\n }\n // Look up in metadata\n // TODO - shouldn't this have priority?\n const entryName = options.attributeNameEntry || 'name';\n if (attribute.metadata[entryName]) {\n return attribute.metadata[entryName].string;\n }\n // Attribute of \"GENERIC\" type, we need to assign some name\n return `CUSTOM_ATTRIBUTE_${uniqueId}`;\n }\n // METADATA EXTRACTION\n /** Get top level metadata */\n _getTopLevelMetadata(dracoGeometry) {\n const dracoMetadata = this.decoder.GetMetadata(dracoGeometry);\n return this._getDracoMetadata(dracoMetadata);\n }\n /** Get per attribute metadata */\n _getAttributeMetadata(dracoGeometry, attributeId) {\n const dracoMetadata = this.decoder.GetAttributeMetadata(dracoGeometry, attributeId);\n return this._getDracoMetadata(dracoMetadata);\n }\n /**\n * Extract metadata field values\n * @param dracoMetadata\n * @returns\n */\n _getDracoMetadata(dracoMetadata) {\n // The not so wonderful world of undocumented Draco APIs :(\n if (!dracoMetadata || !dracoMetadata.ptr) {\n return {};\n }\n const result = {};\n const numEntries = this.metadataQuerier.NumEntries(dracoMetadata);\n for (let entryIndex = 0; entryIndex < numEntries; entryIndex++) {\n const entryName = this.metadataQuerier.GetEntryName(dracoMetadata, entryIndex);\n result[entryName] = this._getDracoMetadataField(dracoMetadata, entryName);\n }\n return result;\n }\n /**\n * Extracts possible values for one metadata entry by name\n * @param dracoMetadata\n * @param entryName\n */\n _getDracoMetadataField(dracoMetadata, entryName) {\n const dracoArray = new this.draco.DracoInt32Array();\n try {\n // Draco metadata fields can hold int32 arrays\n this.metadataQuerier.GetIntEntryArray(dracoMetadata, entryName, dracoArray);\n const intArray = getInt32Array(dracoArray);\n return {\n int: this.metadataQuerier.GetIntEntry(dracoMetadata, entryName),\n string: this.metadataQuerier.GetStringEntry(dracoMetadata, entryName),\n double: this.metadataQuerier.GetDoubleEntry(dracoMetadata, entryName),\n intArray\n };\n }\n finally {\n this.draco.destroy(dracoArray);\n }\n }\n // QUANTIZED ATTRIBUTE SUPPORT (NO DECOMPRESSION)\n /** Skip transforms for specific attribute types */\n _disableAttributeTransforms(options) {\n const { quantizedAttributes = [], octahedronAttributes = [] } = options;\n const skipAttributes = [...quantizedAttributes, ...octahedronAttributes];\n for (const dracoAttributeName of skipAttributes) {\n this.decoder.SkipAttributeTransform(this.draco[dracoAttributeName]);\n }\n }\n /**\n * Extract (and apply?) Position Transform\n * @todo not used\n */\n _getQuantizationTransform(dracoAttribute, options) {\n const { quantizedAttributes = [] } = options;\n const attribute_type = dracoAttribute.attribute_type();\n const skip = quantizedAttributes.map((type) => this.decoder[type]).includes(attribute_type);\n if (skip) {\n const transform = new this.draco.AttributeQuantizationTransform();\n try {\n if (transform.InitFromAttribute(dracoAttribute)) {\n return {\n quantization_bits: transform.quantization_bits(),\n range: transform.range(),\n min_values: new Float32Array([1, 2, 3]).map((i) => transform.min_value(i))\n };\n }\n }\n finally {\n this.draco.destroy(transform);\n }\n }\n return null;\n }\n _getOctahedronTransform(dracoAttribute, options) {\n const { octahedronAttributes = [] } = options;\n const attribute_type = dracoAttribute.attribute_type();\n const octahedron = octahedronAttributes\n .map((type) => this.decoder[type])\n .includes(attribute_type);\n if (octahedron) {\n const transform = new this.draco.AttributeQuantizationTransform();\n try {\n if (transform.InitFromAttribute(dracoAttribute)) {\n return {\n quantization_bits: transform.quantization_bits()\n };\n }\n }\n finally {\n this.draco.destroy(transform);\n }\n }\n return null;\n }\n}\n/**\n * Get draco specific data type by TypedArray constructor type\n * @param attributeType\n * @returns draco specific data type\n */\nfunction getDracoDataType(draco, attributeType) {\n switch (attributeType) {\n case Float32Array:\n return draco.DT_FLOAT32;\n case Int8Array:\n return draco.DT_INT8;\n case Int16Array:\n return draco.DT_INT16;\n case Int32Array:\n return draco.DT_INT32;\n case Uint8Array:\n return draco.DT_UINT8;\n case Uint16Array:\n return draco.DT_UINT16;\n case Uint32Array:\n return draco.DT_UINT32;\n default:\n return draco.DT_INVALID;\n }\n}\n/**\n * Copy a Draco int32 array into a JS typed array\n */\nfunction getInt32Array(dracoArray) {\n const numValues = dracoArray.size();\n const intArray = new Int32Array(numValues);\n for (let i = 0; i < numValues; i++) {\n intArray[i] = dracoArray.GetValue(i);\n }\n return intArray;\n}\n/**\n * Copy a Draco int32 array into a JS typed array\n */\nfunction getUint32Array(dracoArray) {\n const numValues = dracoArray.size();\n const intArray = new Int32Array(numValues);\n for (let i = 0; i < numValues; i++) {\n intArray[i] = dracoArray.GetValue(i);\n }\n return intArray;\n}\n", "// Dynamic DRACO module loading inspired by THREE.DRACOLoader\n// https://github.com/mrdoob/three.js/blob/398c4f39ebdb8b23eefd4a7a5ec49ec0c96c7462/examples/jsm/loaders/DRACOLoader.js\n// by Don McCurdy / https://www.donmccurdy.com / MIT license\nimport { loadLibrary } from '@loaders.gl/worker-utils';\nconst DRACO_DECODER_VERSION = '1.5.6';\nconst DRACO_ENCODER_VERSION = '1.4.1';\nconst STATIC_DECODER_URL = `https://www.gstatic.com/draco/versioned/decoders/${DRACO_DECODER_VERSION}`;\nexport const DRACO_EXTERNAL_LIBRARIES = {\n /** The primary Draco3D encoder, javascript wrapper part */\n DECODER: 'draco_wasm_wrapper.js',\n /** The primary draco decoder, compiled web assembly part */\n DECODER_WASM: 'draco_decoder.wasm',\n /** Fallback decoder for non-webassebly environments. Very big bundle, lower performance */\n FALLBACK_DECODER: 'draco_decoder.js',\n /** Draco encoder */\n ENCODER: 'draco_encoder.js'\n};\nexport const DRACO_EXTERNAL_LIBRARY_URLS = {\n [DRACO_EXTERNAL_LIBRARIES.DECODER]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.DECODER}`,\n [DRACO_EXTERNAL_LIBRARIES.DECODER_WASM]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.DECODER_WASM}`,\n [DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER]: `${STATIC_DECODER_URL}/${DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER}`,\n [DRACO_EXTERNAL_LIBRARIES.ENCODER]: `https://raw.githubusercontent.com/google/draco/${DRACO_ENCODER_VERSION}/javascript/${DRACO_EXTERNAL_LIBRARIES.ENCODER}`\n};\nlet loadDecoderPromise;\nlet loadEncoderPromise;\nexport async function loadDracoDecoderModule(options) {\n const modules = options.modules || {};\n // Check if a bundled draco3d library has been supplied by application\n if (modules.draco3d) {\n loadDecoderPromise ||= modules.draco3d.createDecoderModule({}).then((draco) => {\n return { draco };\n });\n }\n else {\n // If not, dynamically load the WASM script from our CDN\n loadDecoderPromise ||= loadDracoDecoder(options);\n }\n return await loadDecoderPromise;\n}\nexport async function loadDracoEncoderModule(options) {\n const modules = options.modules || {};\n // Check if a bundled draco3d library has been supplied by application\n if (modules.draco3d) {\n loadEncoderPromise ||= modules.draco3d.createEncoderModule({}).then((draco) => {\n return { draco };\n });\n }\n else {\n // If not, dynamically load the WASM script from our CDN\n loadEncoderPromise ||= loadDracoEncoder(options);\n }\n return await loadEncoderPromise;\n}\n// DRACO DECODER LOADING\nasync function loadDracoDecoder(options) {\n let DracoDecoderModule;\n let wasmBinary;\n switch (options.draco && options.draco.decoderType) {\n case 'js':\n DracoDecoderModule = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER);\n break;\n case 'wasm':\n default:\n [DracoDecoderModule, wasmBinary] = await Promise.all([\n await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.DECODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.DECODER),\n await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.DECODER_WASM], 'draco', options, DRACO_EXTERNAL_LIBRARIES.DECODER_WASM)\n ]);\n }\n // Depends on how import happened...\n // @ts-ignore\n DracoDecoderModule = DracoDecoderModule || globalThis.DracoDecoderModule;\n return await initializeDracoDecoder(DracoDecoderModule, wasmBinary);\n}\nfunction initializeDracoDecoder(DracoDecoderModule, wasmBinary) {\n const options = {};\n if (wasmBinary) {\n options.wasmBinary = wasmBinary;\n }\n return new Promise((resolve) => {\n DracoDecoderModule({\n ...options,\n onModuleLoaded: (draco) => resolve({ draco }) // Module is Promise-like. Wrap in object to avoid loop.\n });\n });\n}\n// ENCODER\nasync function loadDracoEncoder(options) {\n let DracoEncoderModule = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.ENCODER], 'draco', options, DRACO_EXTERNAL_LIBRARIES.ENCODER);\n // @ts-ignore\n DracoEncoderModule = DracoEncoderModule || globalThis.DracoEncoderModule;\n return new Promise((resolve) => {\n DracoEncoderModule({\n onModuleLoaded: (draco) => resolve({ draco }) // Module is Promise-like. Wrap in object to avoid loop.\n });\n });\n}\n", "import { DracoLoader as DracoWorkerLoader } from \"./draco-loader.js\";\nimport DracoParser from \"./lib/draco-parser.js\";\nimport { loadDracoDecoderModule } from \"./lib/draco-module-loader.js\";\nimport { VERSION } from \"./lib/utils/version.js\";\n// Module constants\nexport { DRACO_EXTERNAL_LIBRARIES, DRACO_EXTERNAL_LIBRARY_URLS } from \"./lib/draco-module-loader.js\";\nexport { DracoWriter } from \"./draco-writer.js\";\n/**\n * Browser worker doesn't work because of issue during \"draco_encoder.js\" loading.\n * Refused to execute script from 'https://raw.githubusercontent.com/google/draco/1.4.1/javascript/draco_encoder.js' because its MIME type ('') is not executable.\n */\nexport const DracoWriterWorker = {\n id: 'draco-writer',\n name: 'Draco compressed geometry writer',\n module: 'draco',\n version: VERSION,\n worker: true,\n options: {\n draco: {},\n source: null\n }\n};\nexport { DracoWorkerLoader };\n/**\n * Loader for Draco3D compressed geometries\n */\nexport const DracoLoader = {\n ...DracoWorkerLoader,\n parse\n};\nasync function parse(arrayBuffer, options) {\n const { draco } = await loadDracoDecoderModule(options);\n const dracoParser = new DracoParser(draco);\n try {\n return dracoParser.parseSync(arrayBuffer, options?.draco);\n }\n finally {\n dracoParser.destroy();\n }\n}\n", "// TODO - remove\nimport { getAccessorTypeFromSize, getComponentTypeFromArray } from \"./gltf-utils.js\";\n// Returns a fresh attributes object with glTF-standardized attributes names\n// Attributes that cannot be identified will not be included\n// Removes `indices` if present, as it should be stored separately from the attributes\nexport function getGLTFAccessors(attributes) {\n const accessors = {};\n for (const name in attributes) {\n const attribute = attributes[name];\n if (name !== 'indices') {\n const glTFAccessor = getGLTFAccessor(attribute);\n accessors[name] = glTFAccessor;\n }\n }\n return accessors;\n}\n// Fix up a single accessor.\n// Input: typed array or a partial accessor object\n// Return: accessor object\nexport function getGLTFAccessor(attribute) {\n const { buffer, size, count } = getAccessorData(attribute);\n const glTFAccessor = {\n // glTF Accessor values\n // TODO: Instead of a bufferView index we could have an actual buffer (typed array)\n // bufferView: null,\n // TODO: Deprecate `value` in favor of bufferView?\n // @ts-ignore\n value: buffer,\n size, // Decoded `type` (e.g. SCALAR)\n byteOffset: 0,\n count,\n type: getAccessorTypeFromSize(size),\n componentType: getComponentTypeFromArray(buffer)\n };\n return glTFAccessor;\n}\n// export function getGLTFAttribute(data, gltfAttributeName): GLTFAccessor {\n// return data.attributes[data.glTFAttributeMap[gltfAttributeName]];\n// }\nfunction getAccessorData(attribute) {\n let buffer = attribute;\n let size = 1;\n let count = 0;\n if (attribute && attribute.value) {\n buffer = attribute.value;\n size = attribute.size || 1;\n }\n if (buffer) {\n if (!ArrayBuffer.isView(buffer)) {\n buffer = toTypedArray(buffer, Float32Array);\n }\n count = buffer.length / size;\n }\n return { buffer, size, count };\n}\n// Convert non-typed arrays to arrays of specified format\nfunction toTypedArray(array, ArrayType, convertTypedArrays = false) {\n if (!array) {\n return null;\n }\n if (Array.isArray(array)) {\n return new ArrayType(array);\n }\n if (convertTypedArrays && !(array instanceof ArrayType)) {\n return new ArrayType(array);\n }\n return array;\n}\n", "/**\n * https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_texture_transform/README.md\n */\nimport { Vector3, Matrix3 } from '@math.gl/core';\nimport { getAccessorArrayTypeAndLength } from \"../gltf-utils/gltf-utils.js\";\nimport { BYTES, COMPONENTS } from \"../gltf-utils/gltf-constants.js\";\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\n/** Extension name */\nconst KHR_TEXTURE_TRANSFORM = 'KHR_texture_transform';\nexport const name = KHR_TEXTURE_TRANSFORM;\nconst scratchVector = new Vector3();\nconst scratchRotationMatrix = new Matrix3();\nconst scratchScaleMatrix = new Matrix3();\n/**\n * The extension entry to process the transformation\n * @param gltfData gltf buffers and json\n * @param options GLTFLoader options\n */\nexport async function decode(gltfData, options) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const hasExtension = gltfScenegraph.hasExtension(KHR_TEXTURE_TRANSFORM);\n if (!hasExtension || !options.gltf?.loadBuffers) {\n return;\n }\n const materials = gltfData.json.materials || [];\n for (let i = 0; i < materials.length; i++) {\n transformTexCoords(i, gltfData);\n }\n}\n/**\n * Transform TEXCOORD by material\n * @param materialIndex processing material index\n * @param gltfData gltf buffers and json\n */\nfunction transformTexCoords(materialIndex, gltfData) {\n const material = gltfData.json.materials?.[materialIndex];\n const materialTextures = [\n material?.pbrMetallicRoughness?.baseColorTexture,\n material?.emissiveTexture,\n material?.normalTexture,\n material?.occlusionTexture,\n material?.pbrMetallicRoughness?.metallicRoughnessTexture\n ];\n // Save processed texCoords in order no to process the same twice\n const processedTexCoords = [];\n for (const textureInfo of materialTextures) {\n if (textureInfo && textureInfo?.extensions?.[KHR_TEXTURE_TRANSFORM]) {\n transformPrimitives(gltfData, materialIndex, textureInfo, processedTexCoords);\n }\n }\n}\n/**\n * Transform primitives of the particular material\n * @param gltfData gltf data\n * @param materialIndex primitives with this material will be transformed\n * @param texture texture object\n * @param processedTexCoords storage to save already processed texCoords\n */\nfunction transformPrimitives(gltfData, materialIndex, texture, processedTexCoords) {\n const transformParameters = getTransformParameters(texture, processedTexCoords);\n if (!transformParameters) {\n return;\n }\n const meshes = gltfData.json.meshes || [];\n for (const mesh of meshes) {\n for (const primitive of mesh.primitives) {\n const material = primitive.material;\n if (Number.isFinite(material) && materialIndex === material) {\n transformPrimitive(gltfData, primitive, transformParameters);\n }\n }\n }\n}\n/**\n * Get parameters for TEXCOORD transformation\n * @param texture texture object\n * @param processedTexCoords storage to save already processed texCoords\n * @returns texCoord couple and transformation matrix\n */\nfunction getTransformParameters(texture, processedTexCoords) {\n const textureInfo = texture.extensions?.[KHR_TEXTURE_TRANSFORM];\n const { texCoord: originalTexCoord = 0 } = texture;\n // If texCoord is not set in the extension, original attribute data will be replaced\n const { texCoord = originalTexCoord } = textureInfo;\n // Make sure that couple [originalTexCoord, extensionTexCoord] is not processed twice\n const isProcessed = processedTexCoords.findIndex(([original, newTexCoord]) => original === originalTexCoord && newTexCoord === texCoord) !== -1;\n if (!isProcessed) {\n const matrix = makeTransformationMatrix(textureInfo);\n if (originalTexCoord !== texCoord) {\n texture.texCoord = texCoord;\n }\n processedTexCoords.push([originalTexCoord, texCoord]);\n return { originalTexCoord, texCoord, matrix };\n }\n return null;\n}\n/**\n * Transform `TEXCOORD_0` attribute in the primitive\n * @param gltfData gltf data\n * @param primitive primitive object\n * @param transformParameters texCoord couple and transformation matrix\n */\nfunction transformPrimitive(gltfData, primitive, transformParameters) {\n const { originalTexCoord, texCoord, matrix } = transformParameters;\n const texCoordAccessor = primitive.attributes[`TEXCOORD_${originalTexCoord}`];\n if (Number.isFinite(texCoordAccessor)) {\n // Get accessor of the `TEXCOORD_0` attribute\n const accessor = gltfData.json.accessors?.[texCoordAccessor];\n if (accessor && accessor.bufferView) {\n // Get `bufferView` of the `accessor`\n const bufferView = gltfData.json.bufferViews?.[accessor.bufferView];\n if (bufferView) {\n // Get `arrayBuffer` the `bufferView` look at\n const { arrayBuffer, byteOffset: bufferByteOffset } = gltfData.buffers[bufferView.buffer];\n // Resulting byteOffset is sum of the buffer, accessor and bufferView byte offsets\n const byteOffset = (bufferByteOffset || 0) + (accessor.byteOffset || 0) + (bufferView.byteOffset || 0);\n // Deduce TypedArray type and its length from `accessor` and `bufferView` data\n const { ArrayType, length } = getAccessorArrayTypeAndLength(accessor, bufferView);\n // Number of bytes each component occupies\n const bytes = BYTES[accessor.componentType];\n // Number of components. For the `TEXCOORD_0` with `VEC2` type, it must return 2\n const components = COMPONENTS[accessor.type];\n // Multiplier to calculate the address of the `TEXCOORD_0` element in the arrayBuffer\n const elementAddressScale = bufferView.byteStride || bytes * components;\n // Data transform to Float32Array\n const result = new Float32Array(length);\n for (let i = 0; i < accessor.count; i++) {\n // Take [u, v] couple from the arrayBuffer\n const uv = new ArrayType(arrayBuffer, byteOffset + i * elementAddressScale, 2);\n // Set and transform Vector3 per https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_texture_transform#overview\n scratchVector.set(uv[0], uv[1], 1);\n scratchVector.transformByMatrix3(matrix);\n // Save result in Float32Array\n result.set([scratchVector[0], scratchVector[1]], i * components);\n }\n // If texCoord the same, replace gltf structural data\n if (originalTexCoord === texCoord) {\n updateGltf(accessor, bufferView, gltfData.buffers, result);\n }\n else {\n // If texCoord change, create new attribute\n createAttribute(texCoord, accessor, primitive, gltfData, result);\n }\n }\n }\n }\n}\n/**\n * Update GLTF structural objects with new data as we create new `Float32Array` for `TEXCOORD_0`.\n * @param accessor accessor to change\n * @param bufferView bufferView to change\n * @param buffers binary buffers\n * @param newTexcoordArray typed array with data after transformation\n */\nfunction updateGltf(accessor, bufferView, buffers, newTexCoordArray) {\n accessor.componentType = 5126;\n buffers.push({\n arrayBuffer: newTexCoordArray.buffer,\n byteOffset: 0,\n byteLength: newTexCoordArray.buffer.byteLength\n });\n bufferView.buffer = buffers.length - 1;\n bufferView.byteLength = newTexCoordArray.buffer.byteLength;\n bufferView.byteOffset = 0;\n delete bufferView.byteStride;\n}\n/**\n *\n * @param newTexCoord new `texCoord` value\n * @param originalAccessor original accessor object, that store data before transformation\n * @param primitive primitive object\n * @param gltfData gltf data\n * @param newTexCoordArray typed array with data after transformation\n * @returns\n */\nfunction createAttribute(newTexCoord, originalAccessor, primitive, gltfData, newTexCoordArray) {\n gltfData.buffers.push({\n arrayBuffer: newTexCoordArray.buffer,\n byteOffset: 0,\n byteLength: newTexCoordArray.buffer.byteLength\n });\n const bufferViews = gltfData.json.bufferViews;\n if (!bufferViews) {\n return;\n }\n bufferViews.push({\n buffer: gltfData.buffers.length - 1,\n byteLength: newTexCoordArray.buffer.byteLength,\n byteOffset: 0\n });\n const accessors = gltfData.json.accessors;\n if (!accessors) {\n return;\n }\n accessors.push({\n bufferView: bufferViews?.length - 1,\n byteOffset: 0,\n componentType: 5126,\n count: originalAccessor.count,\n type: 'VEC2'\n });\n primitive.attributes[`TEXCOORD_${newTexCoord}`] = accessors.length - 1;\n}\n/**\n * Construct transformation matrix from the extension data (transition, rotation, scale)\n * @param extensionData extension data\n * @returns transformation matrix\n */\nfunction makeTransformationMatrix(extensionData) {\n const { offset = [0, 0], rotation = 0, scale = [1, 1] } = extensionData;\n const translationMatrix = new Matrix3().set(1, 0, 0, 0, 1, 0, offset[0], offset[1], 1);\n const rotationMatrix = scratchRotationMatrix.set(Math.cos(rotation), Math.sin(rotation), 0, -Math.sin(rotation), Math.cos(rotation), 0, 0, 0, 1);\n const scaleMatrix = scratchScaleMatrix.set(scale[0], 0, 0, 0, scale[1], 0, 0, 0, 1);\n return translationMatrix.multiplyRight(rotationMatrix).multiplyRight(scaleMatrix);\n}\n", "// math.gl, MIT license\nconst RADIANS_TO_DEGREES = (1 / Math.PI) * 180;\nconst DEGREES_TO_RADIANS = (1 / 180) * Math.PI;\nconst DEFAULT_CONFIG = {\n EPSILON: 1e-12,\n debug: false,\n precision: 4,\n printTypes: false,\n printDegrees: false,\n printRowMajor: true,\n _cartographicRadians: false\n};\n// Configuration is truly global as of v3.6 to ensure single config even if multiple copies of math.gl\n// Multiple copies of config can be quite tricky to debug...\nglobalThis.mathgl = globalThis.mathgl || { config: { ...DEFAULT_CONFIG } };\nexport const config = globalThis.mathgl.config;\nexport function configure(options) {\n // Only copy existing keys\n Object.assign(config, options);\n return config;\n}\n/**\n * Formats a value into a string\n * @param value\n * @param param1\n * @returns\n */\nexport function formatValue(value, { precision = config.precision } = {}) {\n value = round(value);\n // get rid of trailing zeros\n return `${parseFloat(value.toPrecision(precision))}`;\n}\n/**\n * Check if value is an \"array\"\n * Returns `true` if value is either an array or a typed array\n * Note: returns `false` for `ArrayBuffer` and `DataView` instances\n * @note isTypedArray and isNumericArray are often more useful in TypeScript\n */\nexport function isArray(value) {\n return Array.isArray(value) || (ArrayBuffer.isView(value) && !(value instanceof DataView));\n}\nexport function clone(array) {\n return 'clone' in array ? array.clone() : array.slice();\n}\nexport function toRadians(degrees) {\n return radians(degrees);\n}\nexport function toDegrees(radians) {\n return degrees(radians);\n}\nexport function radians(degrees, result) {\n return map(degrees, (degrees) => degrees * DEGREES_TO_RADIANS, result);\n}\nexport function degrees(radians, result) {\n return map(radians, (radians) => radians * RADIANS_TO_DEGREES, result);\n}\n/**\n * \"GLSL equivalent\" of `Math.sin`: Works on single values and vectors\n * @deprecated\n */\nexport function sin(radians, result) {\n return map(radians, (angle) => Math.sin(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.cos`: Works on single values and vectors\n * @deprecated\n */\nexport function cos(radians, result) {\n return map(radians, (angle) => Math.cos(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.tan`: Works on single values and vectors\n * @deprecated\n */\nexport function tan(radians, result) {\n return map(radians, (angle) => Math.tan(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.asin`: Works on single values and vectors\n * @deprecated\n */\nexport function asin(radians, result) {\n return map(radians, (angle) => Math.asin(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.acos`: Works on single values and vectors\n * @deprecated\n */\nexport function acos(radians, result) {\n return map(radians, (angle) => Math.acos(angle), result);\n}\n/**\n * \"GLSL equivalent\" of `Math.atan`: Works on single values and vectors\n * @deprecated\n */\nexport function atan(radians, result) {\n return map(radians, (angle) => Math.atan(angle), result);\n}\nexport function clamp(value, min, max) {\n return map(value, (value) => Math.max(min, Math.min(max, value)));\n}\nexport function lerp(a, b, t) {\n if (isArray(a)) {\n return a.map((ai, i) => lerp(ai, b[i], t));\n }\n return t * b + (1 - t) * a;\n}\n/* eslint-disable */\n/**\n * Compares any two math objects, using `equals` method if available.\n * @param a\n * @param b\n * @param epsilon\n * @returns\n */\nexport function equals(a, b, epsilon) {\n const oldEpsilon = config.EPSILON;\n if (epsilon) {\n config.EPSILON = epsilon;\n }\n try {\n if (a === b) {\n return true;\n }\n if (isArray(a) && isArray(b)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; ++i) {\n // eslint-disable-next-line max-depth\n if (!equals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n if (a && a.equals) {\n return a.equals(b);\n }\n if (b && b.equals) {\n return b.equals(a);\n }\n if (typeof a === 'number' && typeof b === 'number') {\n return Math.abs(a - b) <= config.EPSILON * Math.max(1, Math.abs(a), Math.abs(b));\n }\n return false;\n }\n finally {\n config.EPSILON = oldEpsilon;\n }\n}\nexport function exactEquals(a, b) {\n if (a === b) {\n return true;\n }\n if (a && typeof a === 'object' && b && typeof b === 'object') {\n if (a.constructor !== b.constructor) {\n return false;\n }\n if (a.exactEquals) {\n return a.exactEquals(b);\n }\n }\n if (isArray(a) && isArray(b)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; ++i) {\n if (!exactEquals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n return false;\n}\n/* eslint-enable */\nexport function withEpsilon(epsilon, func) {\n const oldPrecision = config.EPSILON;\n config.EPSILON = epsilon;\n let value;\n try {\n value = func();\n }\n finally {\n config.EPSILON = oldPrecision;\n }\n return value;\n}\n// HELPERS\nfunction round(value) {\n return Math.round(value / config.EPSILON) * config.EPSILON;\n}\n// If the array has a clone function, calls it, otherwise returns a copy\nfunction duplicateArray(array) {\n // @ts-expect-error We check for math.gl class methods\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return array.clone ? array.clone() : new Array(array.length);\n}\n// If the argument value is an array, applies the func element wise,\n// otherwise applies func to the argument value\nfunction map(value, func, result) {\n if (isArray(value)) {\n const array = value;\n result = result || duplicateArray(array);\n for (let i = 0; i < result.length && i < array.length; ++i) {\n const val = typeof value === 'number' ? value : value[i];\n result[i] = func(val, i, result);\n }\n return result;\n }\n return func(value);\n}\n", "import { config, formatValue, equals, isArray } from \"../../lib/common.js\";\n/** Base class for vectors and matrices */\nexport class MathArray extends Array {\n // Common methods\n /**\n * Clone the current object\n * @returns a new copy of this object\n */\n clone() {\n // @ts-expect-error TS2351: Cannot use 'new' with an expression whose type lacks a call or construct signature.\n return new this.constructor().copy(this); // eslint-disable-line\n }\n fromArray(array, offset = 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = array[i + offset];\n }\n return this.check();\n }\n toArray(targetArray = [], offset = 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n targetArray[offset + i] = this[i];\n }\n return targetArray;\n }\n toObject(targetObject) {\n return targetObject;\n }\n from(arrayOrObject) {\n return Array.isArray(arrayOrObject)\n ? this.copy(arrayOrObject)\n : // @ts-ignore\n this.fromObject(arrayOrObject);\n }\n to(arrayOrObject) {\n // @ts-ignore\n if (arrayOrObject === this) {\n return this;\n }\n // @ts-expect-error TS2339: Property 'toObject' does not exist on type 'MathArray'.\n return isArray(arrayOrObject) ? this.toArray(arrayOrObject) : this.toObject(arrayOrObject);\n }\n toTarget(target) {\n return target ? this.to(target) : this;\n }\n /** @deprecated */\n toFloat32Array() {\n return new Float32Array(this);\n }\n toString() {\n return this.formatString(config);\n }\n /** Formats string according to options */\n formatString(opts) {\n let string = '';\n for (let i = 0; i < this.ELEMENTS; ++i) {\n string += (i > 0 ? ', ' : '') + formatValue(this[i], opts);\n }\n return `${opts.printTypes ? this.constructor.name : ''}[${string}]`;\n }\n equals(array) {\n if (!array || this.length !== array.length) {\n return false;\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n if (!equals(this[i], array[i])) {\n return false;\n }\n }\n return true;\n }\n exactEquals(array) {\n if (!array || this.length !== array.length) {\n return false;\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n if (this[i] !== array[i]) {\n return false;\n }\n }\n return true;\n }\n // Modifiers\n /** Negates all values in this object */\n negate() {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = -this[i];\n }\n return this.check();\n }\n lerp(a, b, t) {\n if (t === undefined) {\n return this.lerp(this, a, b);\n }\n for (let i = 0; i < this.ELEMENTS; ++i) {\n const ai = a[i];\n const endValue = typeof b === 'number' ? b : b[i];\n this[i] = ai + t * (endValue - ai);\n }\n return this.check();\n }\n /** Minimal */\n min(vector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(vector[i], this[i]);\n }\n return this.check();\n }\n /** Maximal */\n max(vector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.max(vector[i], this[i]);\n }\n return this.check();\n }\n clamp(minVector, maxVector) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(Math.max(this[i], minVector[i]), maxVector[i]);\n }\n return this.check();\n }\n add(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] += vector[i];\n }\n }\n return this.check();\n }\n subtract(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] -= vector[i];\n }\n }\n return this.check();\n }\n scale(scale) {\n if (typeof scale === 'number') {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scale;\n }\n }\n else {\n for (let i = 0; i < this.ELEMENTS && i < scale.length; ++i) {\n this[i] *= scale[i];\n }\n }\n return this.check();\n }\n /**\n * Multiplies all elements by `scale`\n * Note: `Matrix4.multiplyByScalar` only scales its 3x3 \"minor\"\n */\n multiplyByScalar(scalar) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scalar;\n }\n return this.check();\n }\n // Debug checks\n /** Throws an error if array length is incorrect or contains illegal values */\n check() {\n if (config.debug && !this.validate()) {\n throw new Error(`math.gl: ${this.constructor.name} some fields set to invalid numbers'`);\n }\n return this;\n }\n /** Returns false if the array length is incorrect or contains illegal values */\n validate() {\n let valid = this.length === this.ELEMENTS;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n valid = valid && Number.isFinite(this[i]);\n }\n return valid;\n }\n // three.js compatibility\n /** @deprecated */\n sub(a) {\n return this.subtract(a);\n }\n /** @deprecated */\n setScalar(a) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = a;\n }\n return this.check();\n }\n /** @deprecated */\n addScalar(a) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] += a;\n }\n return this.check();\n }\n /** @deprecated */\n subScalar(a) {\n return this.addScalar(-a);\n }\n /** @deprecated */\n multiplyScalar(scalar) {\n // Multiplies all elements\n // `Matrix4.scale` only scales its 3x3 \"minor\"\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= scalar;\n }\n return this.check();\n }\n /** @deprecated */\n divideScalar(a) {\n return this.multiplyByScalar(1 / a);\n }\n /** @deprecated */\n clampScalar(min, max) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] = Math.min(Math.max(this[i], min), max);\n }\n return this.check();\n }\n /** @deprecated */\n get elements() {\n return this;\n }\n}\n", "import { config } from \"./common.js\";\nexport function validateVector(v, length) {\n if (v.length !== length) {\n return false;\n }\n // Could be arguments \"array\" (v.every not availasble)\n for (let i = 0; i < v.length; ++i) {\n if (!Number.isFinite(v[i])) {\n return false;\n }\n }\n return true;\n}\nexport function checkNumber(value) {\n if (!Number.isFinite(value)) {\n throw new Error(`Invalid number ${JSON.stringify(value)}`);\n }\n return value;\n}\nexport function checkVector(v, length, callerName = '') {\n if (config.debug && !validateVector(v, length)) {\n throw new Error(`math.gl: ${callerName} some fields set to invalid numbers'`);\n }\n return v;\n}\nconst map = {};\nexport function deprecated(method, version) {\n if (!map[method]) {\n map[method] = true;\n // eslint-disable-next-line\n console.warn(`${method} has been removed in version ${version}, see upgrade guide for more information`);\n }\n}\n", "export function assert(condition, message) {\n if (!condition) {\n throw new Error(`math.gl assertion ${message}`);\n }\n}\n", "import { MathArray } from \"./math-array.js\";\nimport { checkNumber } from \"../../lib/validators.js\";\nimport { assert } from \"../../lib/assert.js\";\n/** Base class for vectors with at least 2 elements */\nexport class Vector extends MathArray {\n // ACCESSORS\n get x() {\n return this[0];\n }\n set x(value) {\n this[0] = checkNumber(value);\n }\n get y() {\n return this[1];\n }\n set y(value) {\n this[1] = checkNumber(value);\n }\n /**\n * Returns the length of the vector from the origin to the point described by this vector\n *\n * @note `length` is a reserved word for Arrays, so `v.length()` will return number of elements\n * Instead we provide `len` and `magnitude`\n */\n len() {\n return Math.sqrt(this.lengthSquared());\n }\n /**\n * Returns the length of the vector from the origin to the point described by this vector\n */\n magnitude() {\n return this.len();\n }\n /**\n * Returns the squared length of the vector from the origin to the point described by this vector\n */\n lengthSquared() {\n let length = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n length += this[i] * this[i];\n }\n return length;\n }\n /**\n * Returns the squared length of the vector from the origin to the point described by this vector\n */\n magnitudeSquared() {\n return this.lengthSquared();\n }\n distance(mathArray) {\n return Math.sqrt(this.distanceSquared(mathArray));\n }\n distanceSquared(mathArray) {\n let length = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n const dist = this[i] - mathArray[i];\n length += dist * dist;\n }\n return checkNumber(length);\n }\n dot(mathArray) {\n let product = 0;\n for (let i = 0; i < this.ELEMENTS; ++i) {\n product += this[i] * mathArray[i];\n }\n return checkNumber(product);\n }\n // MODIFIERS\n normalize() {\n const length = this.magnitude();\n if (length !== 0) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] /= length;\n }\n }\n return this.check();\n }\n multiply(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] *= vector[i];\n }\n }\n return this.check();\n }\n divide(...vectors) {\n for (const vector of vectors) {\n for (let i = 0; i < this.ELEMENTS; ++i) {\n this[i] /= vector[i];\n }\n }\n return this.check();\n }\n // THREE.js compatibility\n lengthSq() {\n return this.lengthSquared();\n }\n distanceTo(vector) {\n return this.distance(vector);\n }\n distanceToSquared(vector) {\n return this.distanceSquared(vector);\n }\n getComponent(i) {\n assert(i >= 0 && i < this.ELEMENTS, 'index is out of range');\n return checkNumber(this[i]);\n }\n setComponent(i, value) {\n assert(i >= 0 && i < this.ELEMENTS, 'index is out of range');\n this[i] = value;\n return this.check();\n }\n addVectors(a, b) {\n return this.copy(a).add(b);\n }\n subVectors(a, b) {\n return this.copy(a).subtract(b);\n }\n multiplyVectors(a, b) {\n return this.copy(a).multiply(b);\n }\n addScaledVector(a, b) {\n // @ts-expect-error error TS2351: Cannot use 'new' with an expression whose type lacks a call or construct signature.\n return this.add(new this.constructor(a).multiplyScalar(b));\n }\n}\n", "// @eslint-disable\n// @ts-nocheck\n/**\n * Common utilities\n * @module glMatrix\n */\n// Configuration Constants\nexport const EPSILON = 0.000001;\nexport let ARRAY_TYPE = typeof Float32Array !== 'undefined' ? Float32Array : Array;\nexport const RANDOM = Math.random;\nexport const ANGLE_ORDER = 'zyx';\n/**\n * Symmetric round\n * see https://www.npmjs.com/package/round-half-up-symmetric#user-content-detailed-background\n *\n * @param {Number} a value to round\n */\nexport function round(a) {\n if (a >= 0)\n return Math.round(a);\n return a % 0.5 === 0 ? Math.floor(a) : Math.round(a);\n}\n/**\n * Sets the type of array used when creating new vectors and matrices\n *\n * @param {Float32ArrayConstructor | ArrayConstructor} type Array type, such as Float32Array or Array\n */\nexport function setMatrixArrayType(type) {\n ARRAY_TYPE = type;\n}\nconst degree = Math.PI / 180;\n/**\n * Convert Degree To Radian\n *\n * @param {Number} a Angle in Degrees\n */\nexport function toRadian(a) {\n return a * degree;\n}\n/**\n * Tests whether or not the arguments have approximately the same value, within an absolute\n * or relative tolerance of glMatrix.EPSILON (an absolute tolerance is used for values less\n * than or equal to 1.0, and a relative tolerance is used for larger values)\n *\n * @param {Number} a The first number to test.\n * @param {Number} b The second number to test.\n * @returns {Boolean} True if the numbers are approximately equal, false otherwise.\n */\nexport function equals(a, b) {\n return Math.abs(a - b) <= EPSILON * Math.max(1.0, Math.abs(a), Math.abs(b));\n}\n", "// @eslint-disable\n// @ts-nocheck\nimport * as glMatrix from './common.js';\n/**\n * 2 Dimensional Vector\n * @module vec2\n */\n/**\n * Creates a new, empty vec2\n *\n * @returns {NumericArray} a new 2D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(2);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n }\n return out;\n}\n/**\n * Creates a new vec2 initialized with values from an existing vector\n *\n * @param {Readonly} a vector to clone\n * @returns {NumericArray} a new 2D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n/**\n * Creates a new vec2 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} a new 2D vector\n */\nexport function fromValues(x, y) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = x;\n out[1] = y;\n return out;\n}\n/**\n * Copy the values from one vec2 to another\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the source vector\n * @returns {NumericArray} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n/**\n * Set the components of a vec2 to the given values\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} out\n */\nexport function set(out, x, y) {\n out[0] = x;\n out[1] = y;\n return out;\n}\n/**\n * Adds two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n return out;\n}\n/**\n * Subtracts vector b from vector a\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n return out;\n}\n/**\n * Multiplies two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n return out;\n}\n/**\n * Divides two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n return out;\n}\n/**\n * Math.ceil the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to ceil\n * @returns {NumericArray} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n return out;\n}\n/**\n * Math.floor the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to floor\n * @returns {NumericArray} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n return out;\n}\n/**\n * Returns the minimum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n return out;\n}\n/**\n * Returns the maximum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {NumericArray} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n return out;\n}\n/**\n * symmetric round the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to round\n * @returns {NumericArray} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n return out;\n}\n/**\n * Scales a vec2 by a scalar number\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {NumericArray} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n return out;\n}\n/**\n * Adds two vec2's after scaling the second operand by a scalar value\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {NumericArray} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n return out;\n}\n/**\n * Calculates the euclidian distance between two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return Math.sqrt(x * x + y * y);\n}\n/**\n * Calculates the squared euclidian distance between two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return x * x + y * y;\n}\n/**\n * Calculates the length of a vec2\n *\n * @param {Readonly} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n return Math.sqrt(x * x + y * y);\n}\n/**\n * Calculates the squared length of a vec2\n *\n * @param {Readonly} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n return x * x + y * y;\n}\n/**\n * Negates the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to negate\n * @returns {NumericArray} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n return out;\n}\n/**\n * Returns the inverse of the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to invert\n * @returns {NumericArray} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n return out;\n}\n/**\n * Normalize a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a vector to normalize\n * @returns {NumericArray} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n let len = x * x + y * y;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n return out;\n}\n/**\n * Calculates the dot product of two vec2's\n *\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1];\n}\n/**\n * Computes the cross product of two vec2's\n * Note that the cross product must by definition produce a 3D vector\n *\n * @param {vec3} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const z = a[0] * b[1] - a[1] * b[0];\n out[0] = out[1] = 0;\n out[2] = z;\n return out;\n}\n/**\n * Performs a linear interpolation between two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the first operand\n * @param {Readonly} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {NumericArray} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n return out;\n}\n/**\n * Generates a random vector with the given scale\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {NumericArray} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n out[0] = Math.cos(r) * scale;\n out[1] = Math.sin(r) * scale;\n return out;\n}\n/**\n * Transforms the vec2 with a mat2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat2} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n return out;\n}\n/**\n * Transforms the vec2 with a mat2d\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat2d} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2d(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y + m[4];\n out[1] = m[1] * x + m[3] * y + m[5];\n return out;\n}\n/**\n * Transforms the vec2 with a mat3\n * 3rd vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat3} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[3] * y + m[6];\n out[1] = m[1] * x + m[4] * y + m[7];\n return out;\n}\n/**\n * Transforms the vec2 with a mat4\n * 3rd vector component is implicitly '0'\n * 4th vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[4] * y + m[12];\n out[1] = m[1] * x + m[5] * y + m[13];\n return out;\n}\n/**\n * Rotate a 2D vector\n * @param {NumericArray} out The receiving vec2\n * @param {Readonly} a The vec2 point to rotate\n * @param {Readonly} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {NumericArray} out\n */\nexport function rotate(out, a, b, rad) {\n // Translate point to the origin\n const p0 = a[0] - b[0];\n const p1 = a[1] - b[1];\n const sinC = Math.sin(rad);\n const cosC = Math.cos(rad);\n // perform rotation and translate to correct position\n out[0] = p0 * cosC - p1 * sinC + b[0];\n out[1] = p0 * sinC + p1 * cosC + b[1];\n return out;\n}\n/**\n * Get the angle between two 2D vectors\n * @param {Readonly} a The first operand\n * @param {Readonly} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const x1 = a[0];\n const y1 = a[1];\n const x2 = b[0];\n const y2 = b[1];\n // mag is the product of the magnitudes of a and b\n const mag = Math.sqrt((x1 * x1 + y1 * y1) * (x2 * x2 + y2 * y2));\n // mag &&.. short circuits if mag == 0\n const cosine = mag && (x1 * x2 + y1 * y2) / mag;\n // Math.min(Math.max(cosine, -1), 1) clamps the cosine between -1 and 1\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n/**\n * Set the components of a vec2 to zero\n *\n * @param {NumericArray} out the receiving vector\n * @returns {NumericArray} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n return out;\n}\n/**\n * Returns a string representation of a vector\n *\n * @param {Readonly} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec2(${a[0]}, ${a[1]})`;\n}\n/**\n * Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)\n *\n * @param {Readonly} a The first vector.\n * @param {Readonly} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1];\n}\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {Readonly} a The first vector.\n * @param {Readonly} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const b0 = b[0];\n const b1 = b[1];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)));\n}\n/**\n * Alias for {@link vec2.length}\n * @function\n */\nexport const len = length;\n/**\n * Alias for {@link vec2.subtract}\n * @function\n */\nexport const sub = subtract;\n/**\n * Alias for {@link vec2.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link vec2.divide}\n * @function\n */\nexport const div = divide;\n/**\n * Alias for {@link vec2.distance}\n * @function\n */\nexport const dist = distance;\n/**\n * Alias for {@link vec2.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n/**\n * Alias for {@link vec2.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n/**\n * Perform some operation over an array of vec2s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec2. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec2s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 2;\n }\n if (!offset) {\n offset = 0;\n }\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n }\n else {\n l = a.length;\n }\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n }\n return a;\n };\n})();\n", "// vec2 additions\nexport function vec2_transformMat4AsVector(out, a, m) {\n const x = a[0];\n const y = a[1];\n const w = m[3] * x + m[7] * y || 1.0;\n out[0] = (m[0] * x + m[4] * y) / w;\n out[1] = (m[1] * x + m[5] * y) / w;\n return out;\n}\n// vec3 additions\n// Transform as vector, only uses 3x3 minor matrix\nexport function vec3_transformMat4AsVector(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n const w = m[3] * x + m[7] * y + m[11] * z || 1.0;\n out[0] = (m[0] * x + m[4] * y + m[8] * z) / w;\n out[1] = (m[1] * x + m[5] * y + m[9] * z) / w;\n out[2] = (m[2] * x + m[6] * y + m[10] * z) / w;\n return out;\n}\nexport function vec3_transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n out[2] = a[2];\n return out;\n}\n// vec4 additions\nexport function vec4_transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n out[2] = a[2];\n out[3] = a[3];\n return out;\n}\nexport function vec4_transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n out[0] = m[0] * x + m[3] * y + m[6] * z;\n out[1] = m[1] * x + m[4] * y + m[7] * z;\n out[2] = m[2] * x + m[5] * y + m[8] * z;\n out[3] = a[3];\n return out;\n}\n", "// @eslint-disable\n// @ts-nocheck\nimport * as glMatrix from './common.js';\n/**\n * 3 Dimensional Vector\n * @module vec3\n */\n/**\n * Creates a new, empty vec3\n *\n * @returns {vec3} a new 3D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(3);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n out[2] = 0;\n }\n return out;\n}\n/**\n * Creates a new vec3 initialized with values from an existing vector\n *\n * @param {ReadonlyVec3} a vector to clone\n * @returns {vec3} a new 3D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(3);\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n return out;\n}\n/**\n * Calculates the length of a vec3\n *\n * @param {ReadonlyVec3} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n return Math.sqrt(x * x + y * y + z * z);\n}\n/**\n * Creates a new vec3 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @param {Number} z Z component\n * @returns {vec3} a new 3D vector\n */\nexport function fromValues(x, y, z) {\n const out = new glMatrix.ARRAY_TYPE(3);\n out[0] = x;\n out[1] = y;\n out[2] = z;\n return out;\n}\n/**\n * Copy the values from one vec3 to another\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the source vector\n * @returns {vec3} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n return out;\n}\n/**\n * Set the components of a vec3 to the given values\n *\n * @param {vec3} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @param {Number} z Z component\n * @returns {vec3} out\n */\nexport function set(out, x, y, z) {\n out[0] = x;\n out[1] = y;\n out[2] = z;\n return out;\n}\n/**\n * Adds two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n out[2] = a[2] + b[2];\n return out;\n}\n/**\n * Subtracts vector b from vector a\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n out[2] = a[2] - b[2];\n return out;\n}\n/**\n * Multiplies two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n out[2] = a[2] * b[2];\n return out;\n}\n/**\n * Divides two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n out[2] = a[2] / b[2];\n return out;\n}\n/**\n * Math.ceil the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to ceil\n * @returns {vec3} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n out[2] = Math.ceil(a[2]);\n return out;\n}\n/**\n * Math.floor the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to floor\n * @returns {vec3} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n out[2] = Math.floor(a[2]);\n return out;\n}\n/**\n * Returns the minimum of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n out[2] = Math.min(a[2], b[2]);\n return out;\n}\n/**\n * Returns the maximum of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n out[2] = Math.max(a[2], b[2]);\n return out;\n}\n/**\n * symmetric round the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to round\n * @returns {vec3} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n out[2] = glMatrix.round(a[2]);\n return out;\n}\n/**\n * Scales a vec3 by a scalar number\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {vec3} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n out[2] = a[2] * b;\n return out;\n}\n/**\n * Adds two vec3's after scaling the second operand by a scalar value\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {vec3} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n out[2] = a[2] + b[2] * scale;\n return out;\n}\n/**\n * Calculates the euclidian distance between two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n const z = b[2] - a[2];\n return Math.sqrt(x * x + y * y + z * z);\n}\n/**\n * Calculates the squared euclidian distance between two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n const z = b[2] - a[2];\n return x * x + y * y + z * z;\n}\n/**\n * Calculates the squared length of a vec3\n *\n * @param {ReadonlyVec3} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n return x * x + y * y + z * z;\n}\n/**\n * Negates the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to negate\n * @returns {vec3} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n out[2] = -a[2];\n return out;\n}\n/**\n * Returns the inverse of the components of a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to invert\n * @returns {vec3} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n out[2] = 1.0 / a[2];\n return out;\n}\n/**\n * Normalize a vec3\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a vector to normalize\n * @returns {vec3} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n let len = x * x + y * y + z * z;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n out[2] = a[2] * len;\n return out;\n}\n/**\n * Calculates the dot product of two vec3's\n *\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1] + a[2] * b[2];\n}\n/**\n * Computes the cross product of two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n const bx = b[0];\n const by = b[1];\n const bz = b[2];\n out[0] = ay * bz - az * by;\n out[1] = az * bx - ax * bz;\n out[2] = ax * by - ay * bx;\n return out;\n}\n/**\n * Performs a linear interpolation between two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n out[2] = az + t * (b[2] - az);\n return out;\n}\n/**\n * Performs a spherical linear interpolation between two vec3's\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function slerp(out, a, b, t) {\n const angle = Math.acos(Math.min(Math.max(dot(a, b), -1), 1));\n const sinTotal = Math.sin(angle);\n const ratioA = Math.sin((1 - t) * angle) / sinTotal;\n const ratioB = Math.sin(t * angle) / sinTotal;\n out[0] = ratioA * a[0] + ratioB * b[0];\n out[1] = ratioA * a[1] + ratioB * b[1];\n out[2] = ratioA * a[2] + ratioB * b[2];\n return out;\n}\n/**\n * Performs a hermite interpolation with two control points\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {ReadonlyVec3} c the third operand\n * @param {ReadonlyVec3} d the fourth operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function hermite(out, a, b, c, d, t) {\n const factorTimes2 = t * t;\n const factor1 = factorTimes2 * (2 * t - 3) + 1;\n const factor2 = factorTimes2 * (t - 2) + t;\n const factor3 = factorTimes2 * (t - 1);\n const factor4 = factorTimes2 * (3 - 2 * t);\n out[0] = a[0] * factor1 + b[0] * factor2 + c[0] * factor3 + d[0] * factor4;\n out[1] = a[1] * factor1 + b[1] * factor2 + c[1] * factor3 + d[1] * factor4;\n out[2] = a[2] * factor1 + b[2] * factor2 + c[2] * factor3 + d[2] * factor4;\n return out;\n}\n/**\n * Performs a bezier interpolation with two control points\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the first operand\n * @param {ReadonlyVec3} b the second operand\n * @param {ReadonlyVec3} c the third operand\n * @param {ReadonlyVec3} d the fourth operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec3} out\n */\nexport function bezier(out, a, b, c, d, t) {\n const inverseFactor = 1 - t;\n const inverseFactorTimesTwo = inverseFactor * inverseFactor;\n const factorTimes2 = t * t;\n const factor1 = inverseFactorTimesTwo * inverseFactor;\n const factor2 = 3 * t * inverseFactorTimesTwo;\n const factor3 = 3 * factorTimes2 * inverseFactor;\n const factor4 = factorTimes2 * t;\n out[0] = a[0] * factor1 + b[0] * factor2 + c[0] * factor3 + d[0] * factor4;\n out[1] = a[1] * factor1 + b[1] * factor2 + c[1] * factor3 + d[1] * factor4;\n out[2] = a[2] * factor1 + b[2] * factor2 + c[2] * factor3 + d[2] * factor4;\n return out;\n}\n/**\n * Generates a random vector with the given scale\n *\n * @param {vec3} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {vec3} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n const z = glMatrix.RANDOM() * 2.0 - 1.0;\n const zScale = Math.sqrt(1.0 - z * z) * scale;\n out[0] = Math.cos(r) * zScale;\n out[1] = Math.sin(r) * zScale;\n out[2] = z * scale;\n return out;\n}\n/**\n * Transforms the vec3 with a mat4.\n * 4th vector component is implicitly '1'\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {vec3} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n let w = m[3] * x + m[7] * y + m[11] * z + m[15];\n w = w || 1.0;\n out[0] = (m[0] * x + m[4] * y + m[8] * z + m[12]) / w;\n out[1] = (m[1] * x + m[5] * y + m[9] * z + m[13]) / w;\n out[2] = (m[2] * x + m[6] * y + m[10] * z + m[14]) / w;\n return out;\n}\n/**\n * Transforms the vec3 with a mat3.\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyMat3} m the 3x3 matrix to transform with\n * @returns {vec3} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n const z = a[2];\n out[0] = x * m[0] + y * m[3] + z * m[6];\n out[1] = x * m[1] + y * m[4] + z * m[7];\n out[2] = x * m[2] + y * m[5] + z * m[8];\n return out;\n}\n/**\n * Transforms the vec3 with a quat\n * Can also be used for dual quaternions. (Multiply it with the real part)\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec3} a the vector to transform\n * @param {ReadonlyQuat} q quaternion to transform with\n * @returns {vec3} out\n */\nexport function transformQuat(out, a, q) {\n // benchmarks: https://jsperf.com/quaternion-transform-vec3-implementations-fixed\n const qx = q[0];\n const qy = q[1];\n const qz = q[2];\n const qw = q[3];\n const x = a[0];\n const y = a[1];\n const z = a[2];\n // var qvec = [qx, qy, qz];\n // var uv = vec3.cross([], qvec, a);\n let uvx = qy * z - qz * y;\n let uvy = qz * x - qx * z;\n let uvz = qx * y - qy * x;\n // var uuv = vec3.cross([], qvec, uv);\n let uuvx = qy * uvz - qz * uvy;\n let uuvy = qz * uvx - qx * uvz;\n let uuvz = qx * uvy - qy * uvx;\n // vec3.scale(uv, uv, 2 * w);\n const w2 = qw * 2;\n uvx *= w2;\n uvy *= w2;\n uvz *= w2;\n // vec3.scale(uuv, uuv, 2);\n uuvx *= 2;\n uuvy *= 2;\n uuvz *= 2;\n // return vec3.add(out, a, vec3.add(out, uv, uuv));\n out[0] = x + uvx + uuvx;\n out[1] = y + uvy + uuvy;\n out[2] = z + uvz + uuvz;\n return out;\n}\n/**\n * Rotate a 3D vector around the x-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateX(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[0];\n r[1] = p[1] * Math.cos(rad) - p[2] * Math.sin(rad);\n r[2] = p[1] * Math.sin(rad) + p[2] * Math.cos(rad);\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Rotate a 3D vector around the y-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateY(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[2] * Math.sin(rad) + p[0] * Math.cos(rad);\n r[1] = p[1];\n r[2] = p[2] * Math.cos(rad) - p[0] * Math.sin(rad);\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Rotate a 3D vector around the z-axis\n * @param {vec3} out The receiving vec3\n * @param {ReadonlyVec3} a The vec3 point to rotate\n * @param {ReadonlyVec3} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec3} out\n */\nexport function rotateZ(out, a, b, rad) {\n const p = [];\n const r = [];\n // Translate point to the origin\n p[0] = a[0] - b[0];\n p[1] = a[1] - b[1];\n p[2] = a[2] - b[2];\n // perform rotation\n r[0] = p[0] * Math.cos(rad) - p[1] * Math.sin(rad);\n r[1] = p[0] * Math.sin(rad) + p[1] * Math.cos(rad);\n r[2] = p[2];\n // translate to correct position\n out[0] = r[0] + b[0];\n out[1] = r[1] + b[1];\n out[2] = r[2] + b[2];\n return out;\n}\n/**\n * Get the angle between two 3D vectors\n * @param {ReadonlyVec3} a The first operand\n * @param {ReadonlyVec3} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const ax = a[0];\n const ay = a[1];\n const az = a[2];\n const bx = b[0];\n const by = b[1];\n const bz = b[2];\n const mag = Math.sqrt((ax * ax + ay * ay + az * az) * (bx * bx + by * by + bz * bz));\n const cosine = mag && dot(a, b) / mag;\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n/**\n * Set the components of a vec3 to zero\n *\n * @param {vec3} out the receiving vector\n * @returns {vec3} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n out[2] = 0.0;\n return out;\n}\n/**\n * Returns a string representation of a vector\n *\n * @param {ReadonlyVec3} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec3(${a[0]}, ${a[1]}, ${a[2]})`;\n}\n/**\n * Returns whether or not the vectors have exactly the same elements in the same position (when compared with ===)\n *\n * @param {ReadonlyVec3} a The first vector.\n * @param {ReadonlyVec3} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1] && a[2] === b[2];\n}\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {ReadonlyVec3} a The first vector.\n * @param {ReadonlyVec3} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const a2 = a[2];\n const b0 = b[0];\n const b1 = b[1];\n const b2 = b[2];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)) &&\n Math.abs(a2 - b2) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a2), Math.abs(b2)));\n}\n/**\n * Alias for {@link vec3.subtract}\n * @function\n */\nexport const sub = subtract;\n/**\n * Alias for {@link vec3.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link vec3.divide}\n * @function\n */\nexport const div = divide;\n/**\n * Alias for {@link vec3.distance}\n * @function\n */\nexport const dist = distance;\n/**\n * Alias for {@link vec3.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n/**\n * Alias for {@link vec3.length}\n * @function\n */\nexport const len = length;\n/**\n * Alias for {@link vec3.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n/**\n * Perform some operation over an array of vec3s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec3. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec3s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 3;\n }\n if (!offset) {\n offset = 0;\n }\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n }\n else {\n l = a.length;\n }\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n vec[2] = a[i + 2];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n a[i + 2] = vec[2];\n }\n return a;\n };\n})();\n", "import { Vector } from \"./base/vector.js\";\nimport { config, isArray } from \"../lib/common.js\";\nimport { checkNumber } from \"../lib/validators.js\";\n// @ts-ignore gl-matrix types\nimport { angle as vec3_angle, cross as vec3_cross, rotateX as vec3_rotateX, rotateY as vec3_rotateY, rotateZ as vec3_rotateZ, transformMat4 as vec3_transformMat4, transformMat3 as vec3_transformMat3, transformQuat as vec3_transformQuat } from \"../gl-matrix/vec3.js\";\n/* eslint-disable camelcase */\nimport { vec3_transformMat2, vec3_transformMat4AsVector } from \"../lib/gl-matrix-extras.js\";\nconst ORIGIN = [0, 0, 0];\nlet ZERO;\n/**\n * Three-element vector class.\n * Subclass of Array\n */\nexport class Vector3 extends Vector {\n static get ZERO() {\n if (!ZERO) {\n ZERO = new Vector3(0, 0, 0);\n Object.freeze(ZERO);\n }\n return ZERO;\n }\n /**\n * @class\n * @param x\n * @param y\n * @param z\n */\n constructor(x = 0, y = 0, z = 0) {\n // PERF NOTE: initialize elements as double precision numbers\n super(-0, -0, -0);\n if (arguments.length === 1 && isArray(x)) {\n this.copy(x);\n }\n else {\n // this.set(x, y, z);\n if (config.debug) {\n checkNumber(x);\n checkNumber(y);\n checkNumber(z);\n }\n // @ts-expect-error TS2412: Property '0' of type 'number | [number, number, number]' is not assignable to numeric index type 'number'\n this[0] = x;\n this[1] = y;\n this[2] = z;\n }\n }\n set(x, y, z) {\n this[0] = x;\n this[1] = y;\n this[2] = z;\n return this.check();\n }\n copy(array) {\n this[0] = array[0];\n this[1] = array[1];\n this[2] = array[2];\n return this.check();\n }\n fromObject(object) {\n if (config.debug) {\n checkNumber(object.x);\n checkNumber(object.y);\n checkNumber(object.z);\n }\n this[0] = object.x;\n this[1] = object.y;\n this[2] = object.z;\n return this.check();\n }\n toObject(object) {\n object.x = this[0];\n object.y = this[1];\n object.z = this[2];\n return object;\n }\n // Getters/setters\n get ELEMENTS() {\n return 3;\n }\n get z() {\n return this[2];\n }\n set z(value) {\n this[2] = checkNumber(value);\n }\n // ACCESSORS\n angle(vector) {\n return vec3_angle(this, vector);\n }\n // MODIFIERS\n cross(vector) {\n vec3_cross(this, this, vector);\n return this.check();\n }\n rotateX({ radians, origin = ORIGIN }) {\n vec3_rotateX(this, this, origin, radians);\n return this.check();\n }\n rotateY({ radians, origin = ORIGIN }) {\n vec3_rotateY(this, this, origin, radians);\n return this.check();\n }\n rotateZ({ radians, origin = ORIGIN }) {\n vec3_rotateZ(this, this, origin, radians);\n return this.check();\n }\n // Transforms\n // transforms as point (4th component is implicitly 1)\n transform(matrix4) {\n return this.transformAsPoint(matrix4);\n }\n // transforms as point (4th component is implicitly 1)\n transformAsPoint(matrix4) {\n vec3_transformMat4(this, this, matrix4);\n return this.check();\n }\n // transforms as vector (4th component is implicitly 0, ignores translation. slightly faster)\n transformAsVector(matrix4) {\n vec3_transformMat4AsVector(this, this, matrix4);\n return this.check();\n }\n transformByMatrix3(matrix3) {\n vec3_transformMat3(this, this, matrix3);\n return this.check();\n }\n transformByMatrix2(matrix2) {\n vec3_transformMat2(this, this, matrix2);\n return this.check();\n }\n transformByQuaternion(quaternion) {\n vec3_transformQuat(this, this, quaternion);\n return this.check();\n }\n}\n", "import { MathArray } from \"./math-array.js\";\nimport { checkNumber } from \"../../lib/validators.js\";\nimport { config } from \"../../lib/common.js\";\n/** Base class for matrices */\nexport class Matrix extends MathArray {\n // fromObject(object) {\n // const array = object.elements;\n // return this.fromRowMajor(array);\n // }\n // toObject(object) {\n // const array = object.elements;\n // this.toRowMajor(array);\n // return object;\n // }\n // TODO better override formatString?\n toString() {\n let string = '[';\n if (config.printRowMajor) {\n string += 'row-major:';\n for (let row = 0; row < this.RANK; ++row) {\n for (let col = 0; col < this.RANK; ++col) {\n string += ` ${this[col * this.RANK + row]}`;\n }\n }\n }\n else {\n string += 'column-major:';\n for (let i = 0; i < this.ELEMENTS; ++i) {\n string += ` ${this[i]}`;\n }\n }\n string += ']';\n return string;\n }\n getElementIndex(row, col) {\n return col * this.RANK + row;\n }\n // By default assumes row major indices\n getElement(row, col) {\n return this[col * this.RANK + row];\n }\n // By default assumes row major indices\n setElement(row, col, value) {\n this[col * this.RANK + row] = checkNumber(value);\n return this;\n }\n getColumn(columnIndex, result = new Array(this.RANK).fill(-0)) {\n const firstIndex = columnIndex * this.RANK;\n for (let i = 0; i < this.RANK; ++i) {\n result[i] = this[firstIndex + i];\n }\n return result;\n }\n setColumn(columnIndex, columnVector) {\n const firstIndex = columnIndex * this.RANK;\n for (let i = 0; i < this.RANK; ++i) {\n this[firstIndex + i] = columnVector[i];\n }\n return this;\n }\n}\n", "import * as glMatrix from './common.js';\n/**\n * 3x3 Matrix\n * @module mat3\n */\n/**\n * Creates a new identity mat3\n *\n * @returns {mat3} a new 3x3 matrix\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(9);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n }\n out[0] = 1;\n out[4] = 1;\n out[8] = 1;\n return out;\n}\n/**\n * Copies the upper-left 3x3 values into the given mat3.\n *\n * @param {mat3} out the receiving 3x3 matrix\n * @param {ReadonlyMat4} a the source 4x4 matrix\n * @returns {mat3} out\n */\nexport function fromMat4(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[4];\n out[4] = a[5];\n out[5] = a[6];\n out[6] = a[8];\n out[7] = a[9];\n out[8] = a[10];\n return out;\n}\n/**\n * Creates a new mat3 initialized with values from an existing matrix\n *\n * @param {ReadonlyMat3} a matrix to clone\n * @returns {mat3} a new 3x3 matrix\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(9);\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[3];\n out[4] = a[4];\n out[5] = a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Copy the values from one mat3 to another\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[3];\n out[4] = a[4];\n out[5] = a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Create a new mat3 with the given values\n *\n * @param {Number} m00 Component in column 0, row 0 position (index 0)\n * @param {Number} m01 Component in column 0, row 1 position (index 1)\n * @param {Number} m02 Component in column 0, row 2 position (index 2)\n * @param {Number} m10 Component in column 1, row 0 position (index 3)\n * @param {Number} m11 Component in column 1, row 1 position (index 4)\n * @param {Number} m12 Component in column 1, row 2 position (index 5)\n * @param {Number} m20 Component in column 2, row 0 position (index 6)\n * @param {Number} m21 Component in column 2, row 1 position (index 7)\n * @param {Number} m22 Component in column 2, row 2 position (index 8)\n * @returns {mat3} A new mat3\n */\nexport function fromValues(m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n const out = new glMatrix.ARRAY_TYPE(9);\n out[0] = m00;\n out[1] = m01;\n out[2] = m02;\n out[3] = m10;\n out[4] = m11;\n out[5] = m12;\n out[6] = m20;\n out[7] = m21;\n out[8] = m22;\n return out;\n}\n/**\n * Set the components of a mat3 to the given values\n *\n * @param {mat3} out the receiving matrix\n * @param {Number} m00 Component in column 0, row 0 position (index 0)\n * @param {Number} m01 Component in column 0, row 1 position (index 1)\n * @param {Number} m02 Component in column 0, row 2 position (index 2)\n * @param {Number} m10 Component in column 1, row 0 position (index 3)\n * @param {Number} m11 Component in column 1, row 1 position (index 4)\n * @param {Number} m12 Component in column 1, row 2 position (index 5)\n * @param {Number} m20 Component in column 2, row 0 position (index 6)\n * @param {Number} m21 Component in column 2, row 1 position (index 7)\n * @param {Number} m22 Component in column 2, row 2 position (index 8)\n * @returns {mat3} out\n */\nexport function set(out, m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n out[0] = m00;\n out[1] = m01;\n out[2] = m02;\n out[3] = m10;\n out[4] = m11;\n out[5] = m12;\n out[6] = m20;\n out[7] = m21;\n out[8] = m22;\n return out;\n}\n/**\n * Set a mat3 to the identity matrix\n *\n * @param {mat3} out the receiving matrix\n * @returns {mat3} out\n */\nexport function identity(out) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 1;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Transpose the values of a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function transpose(out, a) {\n // If we are transposing ourselves we can skip a few steps but have to cache some values\n if (out === a) {\n const a01 = a[1];\n const a02 = a[2];\n const a12 = a[5];\n out[1] = a[3];\n out[2] = a[6];\n out[3] = a01;\n out[5] = a[7];\n out[6] = a02;\n out[7] = a12;\n }\n else {\n out[0] = a[0];\n out[1] = a[3];\n out[2] = a[6];\n out[3] = a[1];\n out[4] = a[4];\n out[5] = a[7];\n out[6] = a[2];\n out[7] = a[5];\n out[8] = a[8];\n }\n return out;\n}\n/**\n * Inverts a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function invert(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const b01 = a22 * a11 - a12 * a21;\n const b11 = -a22 * a10 + a12 * a20;\n const b21 = a21 * a10 - a11 * a20;\n // Calculate the determinant\n let det = a00 * b01 + a01 * b11 + a02 * b21;\n if (!det) {\n return null;\n }\n det = 1.0 / det;\n out[0] = b01 * det;\n out[1] = (-a22 * a01 + a02 * a21) * det;\n out[2] = (a12 * a01 - a02 * a11) * det;\n out[3] = b11 * det;\n out[4] = (a22 * a00 - a02 * a20) * det;\n out[5] = (-a12 * a00 + a02 * a10) * det;\n out[6] = b21 * det;\n out[7] = (-a21 * a00 + a01 * a20) * det;\n out[8] = (a11 * a00 - a01 * a10) * det;\n return out;\n}\n/**\n * Calculates the adjugate of a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the source matrix\n * @returns {mat3} out\n */\nexport function adjoint(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n out[0] = a11 * a22 - a12 * a21;\n out[1] = a02 * a21 - a01 * a22;\n out[2] = a01 * a12 - a02 * a11;\n out[3] = a12 * a20 - a10 * a22;\n out[4] = a00 * a22 - a02 * a20;\n out[5] = a02 * a10 - a00 * a12;\n out[6] = a10 * a21 - a11 * a20;\n out[7] = a01 * a20 - a00 * a21;\n out[8] = a00 * a11 - a01 * a10;\n return out;\n}\n/**\n * Calculates the determinant of a mat3\n *\n * @param {ReadonlyMat3} a the source matrix\n * @returns {Number} determinant of a\n */\nexport function determinant(a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n return (a00 * (a22 * a11 - a12 * a21) + a01 * (-a22 * a10 + a12 * a20) + a02 * (a21 * a10 - a11 * a20));\n}\n/**\n * Multiplies two mat3's\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function multiply(out, a, b) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const b00 = b[0];\n const b01 = b[1];\n const b02 = b[2];\n const b10 = b[3];\n const b11 = b[4];\n const b12 = b[5];\n const b20 = b[6];\n const b21 = b[7];\n const b22 = b[8];\n out[0] = b00 * a00 + b01 * a10 + b02 * a20;\n out[1] = b00 * a01 + b01 * a11 + b02 * a21;\n out[2] = b00 * a02 + b01 * a12 + b02 * a22;\n out[3] = b10 * a00 + b11 * a10 + b12 * a20;\n out[4] = b10 * a01 + b11 * a11 + b12 * a21;\n out[5] = b10 * a02 + b11 * a12 + b12 * a22;\n out[6] = b20 * a00 + b21 * a10 + b22 * a20;\n out[7] = b20 * a01 + b21 * a11 + b22 * a21;\n out[8] = b20 * a02 + b21 * a12 + b22 * a22;\n return out;\n}\n/**\n * Translate a mat3 by the given vector\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to translate\n * @param {ReadonlyVec2} v vector to translate by\n * @returns {mat3} out\n */\nexport function translate(out, a, v) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const x = v[0];\n const y = v[1];\n out[0] = a00;\n out[1] = a01;\n out[2] = a02;\n out[3] = a10;\n out[4] = a11;\n out[5] = a12;\n out[6] = x * a00 + y * a10 + a20;\n out[7] = x * a01 + y * a11 + a21;\n out[8] = x * a02 + y * a12 + a22;\n return out;\n}\n/**\n * Rotates a mat3 by the given angle\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to rotate\n * @param {Number} rad the angle to rotate the matrix by\n * @returns {mat3} out\n */\nexport function rotate(out, a, rad) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a10 = a[3];\n const a11 = a[4];\n const a12 = a[5];\n const a20 = a[6];\n const a21 = a[7];\n const a22 = a[8];\n const s = Math.sin(rad);\n const c = Math.cos(rad);\n out[0] = c * a00 + s * a10;\n out[1] = c * a01 + s * a11;\n out[2] = c * a02 + s * a12;\n out[3] = c * a10 - s * a00;\n out[4] = c * a11 - s * a01;\n out[5] = c * a12 - s * a02;\n out[6] = a20;\n out[7] = a21;\n out[8] = a22;\n return out;\n}\n/**\n * Scales the mat3 by the dimensions in the given vec2\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to scale\n * @param {ReadonlyVec2} v the vec2 to scale the matrix by\n * @returns {mat3} out\n **/\nexport function scale(out, a, v) {\n const x = v[0];\n const y = v[1];\n out[0] = x * a[0];\n out[1] = x * a[1];\n out[2] = x * a[2];\n out[3] = y * a[3];\n out[4] = y * a[4];\n out[5] = y * a[5];\n out[6] = a[6];\n out[7] = a[7];\n out[8] = a[8];\n return out;\n}\n/**\n * Creates a matrix from a vector translation\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.translate(dest, dest, vec);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyVec2} v Translation vector\n * @returns {mat3} out\n */\nexport function fromTranslation(out, v) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 1;\n out[5] = 0;\n out[6] = v[0];\n out[7] = v[1];\n out[8] = 1;\n return out;\n}\n/**\n * Creates a matrix from a given angle\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.rotate(dest, dest, rad);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {Number} rad the angle to rotate the matrix by\n * @returns {mat3} out\n */\nexport function fromRotation(out, rad) {\n const s = Math.sin(rad);\n const c = Math.cos(rad);\n out[0] = c;\n out[1] = s;\n out[2] = 0;\n out[3] = -s;\n out[4] = c;\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Creates a matrix from a vector scaling\n * This is equivalent to (but much faster than):\n *\n * mat3.identity(dest);\n * mat3.scale(dest, dest, vec);\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyVec2} v Scaling vector\n * @returns {mat3} out\n */\nexport function fromScaling(out, v) {\n out[0] = v[0];\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = v[1];\n out[5] = 0;\n out[6] = 0;\n out[7] = 0;\n out[8] = 1;\n return out;\n}\n/**\n * Copies the values from a mat2d into a mat3\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat2d} a the matrix to copy\n * @returns {mat3} out\n **/\nexport function fromMat2d(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = 0;\n out[3] = a[2];\n out[4] = a[3];\n out[5] = 0;\n out[6] = a[4];\n out[7] = a[5];\n out[8] = 1;\n return out;\n}\n/**\n * Calculates a 3x3 matrix from the given quaternion\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyQuat} q Quaternion to create matrix from\n *\n * @returns {mat3} out\n */\nexport function fromQuat(out, q) {\n const x = q[0];\n const y = q[1];\n const z = q[2];\n const w = q[3];\n const x2 = x + x;\n const y2 = y + y;\n const z2 = z + z;\n const xx = x * x2;\n const yx = y * x2;\n const yy = y * y2;\n const zx = z * x2;\n const zy = z * y2;\n const zz = z * z2;\n const wx = w * x2;\n const wy = w * y2;\n const wz = w * z2;\n out[0] = 1 - yy - zz;\n out[3] = yx - wz;\n out[6] = zx + wy;\n out[1] = yx + wz;\n out[4] = 1 - xx - zz;\n out[7] = zy - wx;\n out[2] = zx - wy;\n out[5] = zy + wx;\n out[8] = 1 - xx - yy;\n return out;\n}\n/**\n * Calculates a 3x3 normal matrix (transpose inverse) from the 4x4 matrix\n *\n * @param {mat3} out mat3 receiving operation result\n * @param {ReadonlyMat4} a Mat4 to derive the normal matrix from\n *\n * @returns {mat3} out\n */\nexport function normalFromMat4(out, a) {\n const a00 = a[0];\n const a01 = a[1];\n const a02 = a[2];\n const a03 = a[3];\n const a10 = a[4];\n const a11 = a[5];\n const a12 = a[6];\n const a13 = a[7];\n const a20 = a[8];\n const a21 = a[9];\n const a22 = a[10];\n const a23 = a[11];\n const a30 = a[12];\n const a31 = a[13];\n const a32 = a[14];\n const a33 = a[15];\n const b00 = a00 * a11 - a01 * a10;\n const b01 = a00 * a12 - a02 * a10;\n const b02 = a00 * a13 - a03 * a10;\n const b03 = a01 * a12 - a02 * a11;\n const b04 = a01 * a13 - a03 * a11;\n const b05 = a02 * a13 - a03 * a12;\n const b06 = a20 * a31 - a21 * a30;\n const b07 = a20 * a32 - a22 * a30;\n const b08 = a20 * a33 - a23 * a30;\n const b09 = a21 * a32 - a22 * a31;\n const b10 = a21 * a33 - a23 * a31;\n const b11 = a22 * a33 - a23 * a32;\n // Calculate the determinant\n let det = b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;\n if (!det) {\n return null;\n }\n det = 1.0 / det;\n out[0] = (a11 * b11 - a12 * b10 + a13 * b09) * det;\n out[1] = (a12 * b08 - a10 * b11 - a13 * b07) * det;\n out[2] = (a10 * b10 - a11 * b08 + a13 * b06) * det;\n out[3] = (a02 * b10 - a01 * b11 - a03 * b09) * det;\n out[4] = (a00 * b11 - a02 * b08 + a03 * b07) * det;\n out[5] = (a01 * b08 - a00 * b10 - a03 * b06) * det;\n out[6] = (a31 * b05 - a32 * b04 + a33 * b03) * det;\n out[7] = (a32 * b02 - a30 * b05 - a33 * b01) * det;\n out[8] = (a30 * b04 - a31 * b02 + a33 * b00) * det;\n return out;\n}\n/**\n * Generates a 2D projection matrix with the given bounds\n *\n * @param {mat3} out mat3 frustum matrix will be written into\n * @param {number} width Width of your gl context\n * @param {number} height Height of gl context\n * @returns {mat3} out\n */\nexport function projection(out, width, height) {\n out[0] = 2 / width;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = -2 / height;\n out[5] = 0;\n out[6] = -1;\n out[7] = 1;\n out[8] = 1;\n return out;\n}\n/**\n * Returns a string representation of a mat3\n *\n * @param {ReadonlyMat3} a matrix to represent as a string\n * @returns {String} string representation of the matrix\n */\nexport function str(a) {\n return `mat3(${a[0]}, ${a[1]}, ${a[2]}, ${a[3]}, ${a[4]}, ${a[5]}, ${a[6]}, ${a[7]}, ${a[8]})`;\n}\n/**\n * Returns Frobenius norm of a mat3\n *\n * @param {ReadonlyMat3} a the matrix to calculate Frobenius norm of\n * @returns {Number} Frobenius norm\n */\nexport function frob(a) {\n return Math.sqrt(a[0] * a[0] +\n a[1] * a[1] +\n a[2] * a[2] +\n a[3] * a[3] +\n a[4] * a[4] +\n a[5] * a[5] +\n a[6] * a[6] +\n a[7] * a[7] +\n a[8] * a[8]);\n}\n/**\n * Adds two mat3's\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n out[2] = a[2] + b[2];\n out[3] = a[3] + b[3];\n out[4] = a[4] + b[4];\n out[5] = a[5] + b[5];\n out[6] = a[6] + b[6];\n out[7] = a[7] + b[7];\n out[8] = a[8] + b[8];\n return out;\n}\n/**\n * Subtracts matrix b from matrix a\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @returns {mat3} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n out[2] = a[2] - b[2];\n out[3] = a[3] - b[3];\n out[4] = a[4] - b[4];\n out[5] = a[5] - b[5];\n out[6] = a[6] - b[6];\n out[7] = a[7] - b[7];\n out[8] = a[8] - b[8];\n return out;\n}\n/**\n * Multiply each element of the matrix by a scalar.\n *\n * @param {mat3} out the receiving matrix\n * @param {ReadonlyMat3} a the matrix to scale\n * @param {Number} b amount to scale the matrix's elements by\n * @returns {mat3} out\n */\nexport function multiplyScalar(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n out[2] = a[2] * b;\n out[3] = a[3] * b;\n out[4] = a[4] * b;\n out[5] = a[5] * b;\n out[6] = a[6] * b;\n out[7] = a[7] * b;\n out[8] = a[8] * b;\n return out;\n}\n/**\n * Adds two mat3's after multiplying each element of the second operand by a scalar value.\n *\n * @param {mat3} out the receiving vector\n * @param {ReadonlyMat3} a the first operand\n * @param {ReadonlyMat3} b the second operand\n * @param {Number} scale the amount to scale b's elements by before adding\n * @returns {mat3} out\n */\nexport function multiplyScalarAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n out[2] = a[2] + b[2] * scale;\n out[3] = a[3] + b[3] * scale;\n out[4] = a[4] + b[4] * scale;\n out[5] = a[5] + b[5] * scale;\n out[6] = a[6] + b[6] * scale;\n out[7] = a[7] + b[7] * scale;\n out[8] = a[8] + b[8] * scale;\n return out;\n}\n/**\n * Returns whether or not the matrices have exactly the same elements in the same position (when compared with ===)\n *\n * @param {ReadonlyMat3} a The first matrix.\n * @param {ReadonlyMat3} b The second matrix.\n * @returns {Boolean} True if the matrices are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return (a[0] === b[0] &&\n a[1] === b[1] &&\n a[2] === b[2] &&\n a[3] === b[3] &&\n a[4] === b[4] &&\n a[5] === b[5] &&\n a[6] === b[6] &&\n a[7] === b[7] &&\n a[8] === b[8]);\n}\n/**\n * Returns whether or not the matrices have approximately the same elements in the same position.\n *\n * @param {ReadonlyMat3} a The first matrix.\n * @param {ReadonlyMat3} b The second matrix.\n * @returns {Boolean} True if the matrices are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const a2 = a[2];\n const a3 = a[3];\n const a4 = a[4];\n const a5 = a[5];\n const a6 = a[6];\n const a7 = a[7];\n const a8 = a[8];\n const b0 = b[0];\n const b1 = b[1];\n const b2 = b[2];\n const b3 = b[3];\n const b4 = b[4];\n const b5 = b[5];\n const b6 = b[6];\n const b7 = b[7];\n const b8 = b[8];\n return (Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)) &&\n Math.abs(a2 - b2) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a2), Math.abs(b2)) &&\n Math.abs(a3 - b3) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a3), Math.abs(b3)) &&\n Math.abs(a4 - b4) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a4), Math.abs(b4)) &&\n Math.abs(a5 - b5) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a5), Math.abs(b5)) &&\n Math.abs(a6 - b6) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a6), Math.abs(b6)) &&\n Math.abs(a7 - b7) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a7), Math.abs(b7)) &&\n Math.abs(a8 - b8) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a8), Math.abs(b8)));\n}\n/**\n * Alias for {@link mat3.multiply}\n * @function\n */\nexport const mul = multiply;\n/**\n * Alias for {@link mat3.subtract}\n * @function\n */\nexport const sub = subtract;\n", "// Copyright (c) 2017 Uber Technologies, Inc.\n// MIT License\nimport { Matrix } from \"./base/matrix.js\";\nimport { checkVector } from \"../lib/validators.js\";\nimport { vec4_transformMat3 } from \"../lib/gl-matrix-extras.js\";\nimport { fromQuat as mat3_fromQuat, determinant as mat3_determinant, transpose as mat3_transpose, invert as mat3_invert, multiply as mat3_multiply, rotate as mat3_rotate, scale as mat3_scale, translate as mat3_translate } from \"../gl-matrix/mat3.js\";\nimport { transformMat3 as vec2_transformMat3 } from \"../gl-matrix/vec2.js\";\nimport { transformMat3 as vec3_transformMat3 } from \"../gl-matrix/vec3.js\";\nvar INDICES;\n(function (INDICES) {\n INDICES[INDICES[\"COL0ROW0\"] = 0] = \"COL0ROW0\";\n INDICES[INDICES[\"COL0ROW1\"] = 1] = \"COL0ROW1\";\n INDICES[INDICES[\"COL0ROW2\"] = 2] = \"COL0ROW2\";\n INDICES[INDICES[\"COL1ROW0\"] = 3] = \"COL1ROW0\";\n INDICES[INDICES[\"COL1ROW1\"] = 4] = \"COL1ROW1\";\n INDICES[INDICES[\"COL1ROW2\"] = 5] = \"COL1ROW2\";\n INDICES[INDICES[\"COL2ROW0\"] = 6] = \"COL2ROW0\";\n INDICES[INDICES[\"COL2ROW1\"] = 7] = \"COL2ROW1\";\n INDICES[INDICES[\"COL2ROW2\"] = 8] = \"COL2ROW2\";\n})(INDICES || (INDICES = {}));\nconst IDENTITY_MATRIX = Object.freeze([1, 0, 0, 0, 1, 0, 0, 0, 1]);\nexport class Matrix3 extends Matrix {\n static get IDENTITY() {\n return getIdentityMatrix();\n }\n static get ZERO() {\n return getZeroMatrix();\n }\n get ELEMENTS() {\n return 9;\n }\n get RANK() {\n return 3;\n }\n get INDICES() {\n return INDICES;\n }\n constructor(array, ...args) {\n // PERF NOTE: initialize elements as double precision numbers\n super(-0, -0, -0, -0, -0, -0, -0, -0, -0);\n if (arguments.length === 1 && Array.isArray(array)) {\n this.copy(array);\n }\n else if (args.length > 0) {\n this.copy([array, ...args]);\n }\n else {\n this.identity();\n }\n }\n copy(array) {\n // Element wise copy for performance\n this[0] = array[0];\n this[1] = array[1];\n this[2] = array[2];\n this[3] = array[3];\n this[4] = array[4];\n this[5] = array[5];\n this[6] = array[6];\n this[7] = array[7];\n this[8] = array[8];\n return this.check();\n }\n // Constructors\n identity() {\n return this.copy(IDENTITY_MATRIX);\n }\n /**\n *\n * @param object\n * @returns self\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n fromObject(object) {\n return this.check();\n }\n /** Calculates a 3x3 matrix from the given quaternion\n * q quat Quaternion to create matrix from\n */\n fromQuaternion(q) {\n mat3_fromQuat(this, q);\n return this.check();\n }\n /**\n * accepts column major order, stores in column major order\n */\n // eslint-disable-next-line max-params\n set(m00, m10, m20, m01, m11, m21, m02, m12, m22) {\n this[0] = m00;\n this[1] = m10;\n this[2] = m20;\n this[3] = m01;\n this[4] = m11;\n this[5] = m21;\n this[6] = m02;\n this[7] = m12;\n this[8] = m22;\n return this.check();\n }\n /**\n * accepts row major order, stores as column major\n */\n // eslint-disable-next-line max-params\n setRowMajor(m00, m01, m02, m10, m11, m12, m20, m21, m22) {\n this[0] = m00;\n this[1] = m10;\n this[2] = m20;\n this[3] = m01;\n this[4] = m11;\n this[5] = m21;\n this[6] = m02;\n this[7] = m12;\n this[8] = m22;\n return this.check();\n }\n // Accessors\n determinant() {\n return mat3_determinant(this);\n }\n // Modifiers\n transpose() {\n mat3_transpose(this, this);\n return this.check();\n }\n /** Invert a matrix. Note that this can fail if the matrix is not invertible */\n invert() {\n mat3_invert(this, this);\n return this.check();\n }\n // Operations\n multiplyLeft(a) {\n mat3_multiply(this, a, this);\n return this.check();\n }\n multiplyRight(a) {\n mat3_multiply(this, this, a);\n return this.check();\n }\n rotate(radians) {\n mat3_rotate(this, this, radians);\n return this.check();\n }\n scale(factor) {\n if (Array.isArray(factor)) {\n mat3_scale(this, this, factor);\n }\n else {\n mat3_scale(this, this, [factor, factor]);\n }\n return this.check();\n }\n translate(vec) {\n mat3_translate(this, this, vec);\n return this.check();\n }\n // Transforms\n transform(vector, result) {\n let out;\n switch (vector.length) {\n case 2:\n out = vec2_transformMat3(result || [-0, -0], vector, this);\n break;\n case 3:\n out = vec3_transformMat3(result || [-0, -0, -0], vector, this);\n break;\n case 4:\n out = vec4_transformMat3(result || [-0, -0, -0, -0], vector, this);\n break;\n default:\n throw new Error('Illegal vector');\n }\n checkVector(out, vector.length);\n return out;\n }\n /** @deprecated */\n transformVector(vector, result) {\n return this.transform(vector, result);\n }\n /** @deprecated */\n transformVector2(vector, result) {\n return this.transform(vector, result);\n }\n /** @deprecated */\n transformVector3(vector, result) {\n return this.transform(vector, result);\n }\n}\nlet ZERO_MATRIX3;\nlet IDENTITY_MATRIX3 = null;\nfunction getZeroMatrix() {\n if (!ZERO_MATRIX3) {\n ZERO_MATRIX3 = new Matrix3([0, 0, 0, 0, 0, 0, 0, 0, 0]);\n Object.freeze(ZERO_MATRIX3);\n }\n return ZERO_MATRIX3;\n}\nfunction getIdentityMatrix() {\n if (!IDENTITY_MATRIX3) {\n IDENTITY_MATRIX3 = new Matrix3();\n Object.freeze(IDENTITY_MATRIX3);\n }\n return IDENTITY_MATRIX3;\n}\n", "// GLTF EXTENSION: KHR_lights_punctual\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_lights_punctual\nimport { assert } from \"../../utils/assert.js\";\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_LIGHTS_PUNCTUAL = 'KHR_lights_punctual';\nexport const name = KHR_LIGHTS_PUNCTUAL;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Move the light array out of the extension and remove the extension\n const extension = gltfScenegraph.getExtension(KHR_LIGHTS_PUNCTUAL);\n if (extension) {\n // @ts-ignore\n gltfScenegraph.json.lights = extension.lights;\n gltfScenegraph.removeExtension(KHR_LIGHTS_PUNCTUAL);\n }\n // Any nodes that have the extension, add lights field pointing to light object\n // and remove the extension\n for (const node of json.nodes || []) {\n const nodeExtension = gltfScenegraph.getObjectExtension(node, KHR_LIGHTS_PUNCTUAL);\n if (nodeExtension) {\n // @ts-ignore\n node.light = nodeExtension.light;\n }\n gltfScenegraph.removeObjectExtension(node, KHR_LIGHTS_PUNCTUAL);\n }\n}\n// Move the light ar ray out of the extension and remove the extension\nexport async function encode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // @ts-ignore\n if (json.lights) {\n const extension = gltfScenegraph.addExtension(KHR_LIGHTS_PUNCTUAL);\n // @ts-ignore\n assert(!extension.lights);\n // @ts-ignore\n extension.lights = json.lights;\n // @ts-ignore\n delete json.lights;\n }\n // Any nodes that have lights field pointing to light object\n // add the extension\n // @ts-ignore\n if (gltfScenegraph.json.lights) {\n // @ts-ignore\n for (const light of gltfScenegraph.json.lights) {\n const node = light.node;\n gltfScenegraph.addObjectExtension(node, KHR_LIGHTS_PUNCTUAL, light);\n }\n // @ts-ignore\n delete gltfScenegraph.json.lights;\n }\n}\n", "// GLTF EXTENSION: KHR_materials_unlit\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_unlit\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_MATERIALS_UNLIT = 'KHR_materials_unlit';\nexport const name = KHR_MATERIALS_UNLIT;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Any nodes that have the extension, add lights field pointing to light object\n // and remove the extension\n for (const material of json.materials || []) {\n const extension = material.extensions && material.extensions.KHR_materials_unlit;\n if (extension) {\n // @ts-ignore TODO\n material.unlit = true;\n }\n gltfScenegraph.removeObjectExtension(material, KHR_MATERIALS_UNLIT);\n }\n // Remove the top-level extension\n gltfScenegraph.removeExtension(KHR_MATERIALS_UNLIT);\n}\nexport function encode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Any nodes that have lights field pointing to light object\n // add the extension\n // @ts-ignore\n if (gltfScenegraph.materials) {\n for (const material of json.materials || []) {\n // @ts-ignore\n if (material.unlit) {\n // @ts-ignore\n delete material.unlit;\n gltfScenegraph.addObjectExtension(material, KHR_MATERIALS_UNLIT, {});\n gltfScenegraph.addExtension(KHR_MATERIALS_UNLIT);\n }\n }\n }\n}\n", "// GLTF EXTENSION: KHR_techniques_webgl\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_techniques_webgl\nimport { GLTFScenegraph } from \"../../api/gltf-scenegraph.js\";\nconst KHR_TECHNIQUES_WEBGL = 'KHR_techniques_webgl';\nexport const name = KHR_TECHNIQUES_WEBGL;\nexport async function decode(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n const extension = gltfScenegraph.getExtension(KHR_TECHNIQUES_WEBGL);\n if (extension) {\n const techniques = resolveTechniques(extension, gltfScenegraph);\n for (const material of json.materials || []) {\n const materialExtension = gltfScenegraph.getObjectExtension(material, KHR_TECHNIQUES_WEBGL);\n if (materialExtension) {\n // @ts-ignore TODO\n material.technique = Object.assign({}, materialExtension, \n // @ts-ignore\n techniques[materialExtension.technique]);\n // @ts-ignore TODO\n material.technique.values = resolveValues(material.technique, gltfScenegraph);\n }\n gltfScenegraph.removeObjectExtension(material, KHR_TECHNIQUES_WEBGL);\n }\n // Remove the top-level extension\n gltfScenegraph.removeExtension(KHR_TECHNIQUES_WEBGL);\n }\n}\n// eslint-disable-next-line\nexport async function encode(gltfData, options) {\n // TODO\n}\nfunction resolveTechniques(techniquesExtension, \n// programs: {[key: string]: any}[],\n// shaders: {[key: string]: any}[],\n// techniques: {[key: string]: any}[]\ngltfScenegraph) {\n const { programs = [], shaders = [], techniques = [] } = techniquesExtension;\n const textDecoder = new TextDecoder();\n shaders.forEach((shader) => {\n if (Number.isFinite(shader.bufferView)) {\n shader.code = textDecoder.decode(gltfScenegraph.getTypedArrayForBufferView(shader.bufferView));\n }\n else {\n // TODO: handle URI shader\n throw new Error('KHR_techniques_webgl: no shader code');\n }\n });\n programs.forEach((program) => {\n program.fragmentShader = shaders[program.fragmentShader];\n program.vertexShader = shaders[program.vertexShader];\n });\n techniques.forEach((technique) => {\n technique.program = programs[technique.program];\n });\n return techniques;\n}\nfunction resolveValues(technique, gltfScenegraph) {\n const values = Object.assign({}, technique.values);\n // merge values from uniforms\n Object.keys(technique.uniforms || {}).forEach((uniform) => {\n if (technique.uniforms[uniform].value && !(uniform in values)) {\n values[uniform] = technique.uniforms[uniform].value;\n }\n });\n // resolve textures\n Object.keys(values).forEach((uniform) => {\n if (typeof values[uniform] === 'object' && values[uniform].index !== undefined) {\n // Assume this is a texture\n // TODO: find if there are any other types that can be referenced\n values[uniform].texture = gltfScenegraph.getTexture(values[uniform].index);\n }\n });\n return values;\n}\n", "// GLTF 1.0 extensions (decode only)\n// import * as KHR_binary_gltf from './KHR_draco_mesh_compression';\n// GLTF 2.0 Vendor extensions\nimport * as EXT_mesh_features from \"../extensions/EXT_mesh_features.js\";\nimport * as EXT_structural_metadata from \"../extensions/EXT_structural_metadata.js\";\n// GLTF 2.0 Khronos extensions (decode/encode)\nimport * as EXT_meshopt_compression from \"../extensions/EXT_meshopt_compression.js\";\nimport * as EXT_texture_webp from \"../extensions/EXT_texture_webp.js\";\nimport * as KHR_texture_basisu from \"../extensions/KHR_texture_basisu.js\";\nimport * as KHR_draco_mesh_compression from \"../extensions/KHR_draco_mesh_compression.js\";\nimport * as KHR_texture_transform from \"../extensions/KHR_texture_transform.js\";\n// Deprecated. These should be handled by rendering library (e.g. luma.gl), not the loader.\nimport * as KHR_lights_punctual from \"../extensions/deprecated/KHR_lights_punctual.js\";\nimport * as KHR_materials_unlit from \"../extensions/deprecated/KHR_materials_unlit.js\";\nimport * as KHR_techniques_webgl from \"../extensions/deprecated/KHR_techniques_webgl.js\";\nimport * as EXT_feature_metadata from \"../extensions/deprecated/EXT_feature_metadata.js\";\n/**\n * List of extensions processed by the GLTFLoader\n * Note that may extensions can only be handled on the rendering stage and are left out here\n * These are just extensions that can be handled fully or partially during loading.\n */\nexport const EXTENSIONS = [\n // 1.0\n // KHR_binary_gltf is handled separately - must be processed before other parsing starts\n // KHR_binary_gltf,\n // 2.0\n EXT_structural_metadata,\n EXT_mesh_features,\n EXT_meshopt_compression,\n EXT_texture_webp,\n // Basisu should come after webp, we want basisu to be preferred if both are provided\n KHR_texture_basisu,\n KHR_draco_mesh_compression,\n KHR_lights_punctual,\n KHR_materials_unlit,\n KHR_techniques_webgl,\n KHR_texture_transform,\n EXT_feature_metadata\n];\n/** Call before any resource loading starts */\nexport function preprocessExtensions(gltf, options = {}, context) {\n const extensions = EXTENSIONS.filter((extension) => useExtension(extension.name, options));\n for (const extension of extensions) {\n extension.preprocess?.(gltf, options, context);\n }\n}\n/** Call after resource loading */\nexport async function decodeExtensions(gltf, options = {}, context) {\n const extensions = EXTENSIONS.filter((extension) => useExtension(extension.name, options));\n for (const extension of extensions) {\n // Note: We decode async extensions sequentially, this might not be necessary\n // Currently we only have Draco, but when we add Basis we may revisit\n await extension.decode?.(gltf, options, context);\n }\n}\nfunction useExtension(extensionName, options) {\n const excludes = options?.gltf?.excludeExtensions || {};\n const exclude = extensionName in excludes && !excludes[extensionName];\n return !exclude;\n}\n", "// GLTF 1.0 EXTENSION: KHR_binary_glTF\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/1.0/Khronos/KHR_binary_glTF\n/* eslint-disable camelcase */\nimport { GLTFScenegraph } from \"../api/gltf-scenegraph.js\";\nconst KHR_BINARY_GLTF = 'KHR_binary_glTF';\n/** Extension name */\nexport const name = KHR_BINARY_GLTF;\nexport function preprocess(gltfData) {\n const gltfScenegraph = new GLTFScenegraph(gltfData);\n const { json } = gltfScenegraph;\n // Note: json.buffers.binary_glTF also needs to be replaced\n // This is currently done during gltf normalization\n // Image and shader nodes can have the extension\n // https://github.com/KhronosGroup/glTF/blob/master/extensions/1.0/Khronos/KHR_binary_glTF/schema/image.KHR_binary_glTF.schema.json\n for (const image of json.images || []) {\n const extension = gltfScenegraph.getObjectExtension(image, KHR_BINARY_GLTF);\n // The data in the extension is valid as glTF 2.0 data inside the object, so just copy it in\n if (extension) {\n Object.assign(image, extension);\n }\n gltfScenegraph.removeObjectExtension(image, KHR_BINARY_GLTF);\n }\n // TODO shaders - At least traverse and throw error if used?\n // https://github.com/KhronosGroup/glTF/blob/master/extensions/1.0/Khronos/KHR_binary_glTF/schema/shader.KHR_binary_glTF.schema.json\n // glTF v1 one files have a partially formed URI field that is not expected in (and causes problems in) 2.0\n if (json.buffers && json.buffers[0]) {\n delete json.buffers[0].uri;\n }\n // Remove the top-level extension as it has now been processed\n gltfScenegraph.removeExtension(KHR_BINARY_GLTF);\n}\n// KHR_binary_gltf is a 1.0 extension that is supported natively by 2.0\n// export function encode() {\n// throw new Error(KHR_BINARY_GLTF);\n// }\n", "/* eslint-disable camelcase */\nimport * as KHR_binary_glTF from \"../extensions/KHR_binary_gltf.js\";\n// Binary format changes (mainly implemented by GLBLoader)\n// https://github.com/KhronosGroup/glTF/tree/master/extensions/1.0/Khronos/KHR_binary_glTF\n// JSON format changes:\n// https://github.com/khronosgroup/gltf/issues/605\n// - [x] Top-level JSON objects are arrays now\n// - [ ] Removed indirection from animation: sampler now refers directly to accessors, #712\n// - [ ] material.parameter.value and technique.parameter.value must be an array, #690\n// - [ ] Node can have only one mesh #821\n// - [ ] Added reqs on JSON encoding\n// - [ ] Added reqs on binary data alignment #802 (comment)\n// Additions:\n// - [ ] Added accessor.normalized, #691, #706\n// - [ ] Added glExtensionsUsed property and 5125 (UNSIGNED_INT) accessor.componentType value, #619\n// - [ ] Added extensionsRequired property, #720, #721\n// - [ ] Added \"STEP\" as valid animation.sampler.interpolation value, #712\n// Removals:\n// - [x] Removed buffer.type, #786, #629\n// - [ ] Removed revision number from profile.version, #709\n// - [ ] Removed technique.functions.scissor and removed 3089 (SCISSOR_TEST) as a valid value for technique.states.enable, #681\n// - [ ] Techniques, programs, and shaders were moved out to KHR_technique_webgl extension.\n// Other edits:\n// - [x] asset is now required, #642\n// - [ ] buffer.byteLength and bufferView.byteLength are now required, #560.\n// - [ ] accessor.min and accessor.max are now required, #593, and clarified that the JSON value and binary data must be the same, #628.\n// - [ ] Clarified animation.sampler and animation.channel restrictions, #712\n// - [ ] skin.inverseBindMatrices is now optional, #461.\n// - [ ] Attribute parameters can't have a value defined in the technique or parameter, #563 (comment).\n// - [ ] Only TEXCOORD and COLOR attribute semantics can be written in the form [semantic]_[set_index], #563 (comment).\n// - [ ] TEXCOORD and COLOR attribute semantics must be written in the form [semantic]_[set_index], e.g., just TEXCOORD should be TEXCOORD_0, and just COLOR should be COLOR_0, #649\n// - [ ] camera.perspective.aspectRatio and camera.perspective.yfov must now be > 0, not >= 0, #563 (comment).\n// - [ ] Application-specific parameter semantics must start with an underscore, e.g., _TEMPERATURE and _SIMULATION_TIME, #563 (comment).\n// - [ ] Properties in technique.parameters must be defined in technique.uniforms or technique.attributes,\n// #563 (comment).\n// - [ ] technique.parameter.count can only be defined when the semantic is JOINTMATRIX or an application-specific semantic is used. It can never be defined for attribute parameters; only uniforms, d2f6945\n// - [ ] technique.parameter.semantic is required when the parameter is an attribute, 28e113d\n// - [ ] Mesh-only models are allowed, e.g., without materials, #642\n// - [ ] Skeleton hierarchies (nodes containing jointName) must be separated from non-skeleton hierarchies., #647\n// - [ ] technique.states.functions.blendColor and technique.states.functions.depthRange parameters now must match WebGL function min/max, #707\nconst GLTF_ARRAYS = {\n accessors: 'accessor',\n animations: 'animation',\n buffers: 'buffer',\n bufferViews: 'bufferView',\n images: 'image',\n materials: 'material',\n meshes: 'mesh',\n nodes: 'node',\n samplers: 'sampler',\n scenes: 'scene',\n skins: 'skin',\n textures: 'texture'\n};\nconst GLTF_KEYS = {\n accessor: 'accessors',\n animations: 'animation',\n buffer: 'buffers',\n bufferView: 'bufferViews',\n image: 'images',\n material: 'materials',\n mesh: 'meshes',\n node: 'nodes',\n sampler: 'samplers',\n scene: 'scenes',\n skin: 'skins',\n texture: 'textures'\n};\n/**\n * Converts (normalizes) glTF v1 to v2\n */\nclass GLTFV1Normalizer {\n idToIndexMap = {\n animations: {},\n accessors: {},\n buffers: {},\n bufferViews: {},\n images: {},\n materials: {},\n meshes: {},\n nodes: {},\n samplers: {},\n scenes: {},\n skins: {},\n textures: {}\n };\n json;\n // constructor() {}\n /**\n * Convert (normalize) glTF < 2.0 to glTF 2.0\n * @param gltf - object with json and binChunks\n * @param options\n * @param options normalize Whether to actually normalize\n */\n normalize(gltf, options) {\n this.json = gltf.json;\n const json = gltf.json;\n // Check version\n switch (json.asset && json.asset.version) {\n // We are converting to v2 format. Return if there is nothing to do\n case '2.0':\n return;\n // This class is written to convert 1.0\n case undefined:\n case '1.0':\n break;\n default:\n // eslint-disable-next-line no-undef, no-console\n console.warn(`glTF: Unknown version ${json.asset.version}`);\n return;\n }\n if (!options.normalize) {\n // We are still missing a few conversion tricks, remove once addressed\n throw new Error('glTF v1 is not supported.');\n }\n // eslint-disable-next-line no-undef, no-console\n console.warn('Converting glTF v1 to glTF v2 format. This is experimental and may fail.');\n this._addAsset(json);\n // In glTF2 top-level fields are Arrays not Object maps\n this._convertTopLevelObjectsToArrays(json);\n // Extract bufferView indices for images\n // (this extension needs to be invoked early in the normalization process)\n // TODO can this be handled by standard extension processing instead of called explicitly?\n KHR_binary_glTF.preprocess(gltf);\n // Convert object references from ids to indices\n this._convertObjectIdsToArrayIndices(json);\n this._updateObjects(json);\n this._updateMaterial(json);\n }\n // asset is now required, #642 https://github.com/KhronosGroup/glTF/issues/639\n _addAsset(json) {\n json.asset = json.asset || {};\n // We are normalizing to glTF v2, so change version to \"2.0\"\n json.asset.version = '2.0';\n json.asset.generator = json.asset.generator || 'Normalized to glTF 2.0 by loaders.gl';\n }\n _convertTopLevelObjectsToArrays(json) {\n // TODO check that all arrays are covered\n for (const arrayName in GLTF_ARRAYS) {\n this._convertTopLevelObjectToArray(json, arrayName);\n }\n }\n /** Convert one top level object to array */\n _convertTopLevelObjectToArray(json, mapName) {\n const objectMap = json[mapName];\n if (!objectMap || Array.isArray(objectMap)) {\n return;\n }\n // Rewrite the top-level field as an array\n json[mapName] = [];\n // Copy the map key into object.id\n for (const id in objectMap) {\n const object = objectMap[id];\n object.id = object.id || id; // Mutates the loaded object\n const index = json[mapName].length;\n json[mapName].push(object);\n this.idToIndexMap[mapName][id] = index;\n }\n }\n /** Go through all objects in all top-level arrays and replace ids with indices */\n _convertObjectIdsToArrayIndices(json) {\n for (const arrayName in GLTF_ARRAYS) {\n this._convertIdsToIndices(json, arrayName);\n }\n if ('scene' in json) {\n json.scene = this._convertIdToIndex(json.scene, 'scene');\n }\n // Convert any index references that are not using array names\n // texture.source (image)\n for (const texture of json.textures) {\n this._convertTextureIds(texture);\n }\n for (const mesh of json.meshes) {\n this._convertMeshIds(mesh);\n }\n for (const node of json.nodes) {\n this._convertNodeIds(node);\n }\n for (const node of json.scenes) {\n this._convertSceneIds(node);\n }\n }\n _convertTextureIds(texture) {\n if (texture.source) {\n texture.source = this._convertIdToIndex(texture.source, 'image');\n }\n }\n _convertMeshIds(mesh) {\n for (const primitive of mesh.primitives) {\n const { attributes, indices, material } = primitive;\n for (const attributeName in attributes) {\n attributes[attributeName] = this._convertIdToIndex(attributes[attributeName], 'accessor');\n }\n if (indices) {\n primitive.indices = this._convertIdToIndex(indices, 'accessor');\n }\n if (material) {\n primitive.material = this._convertIdToIndex(material, 'material');\n }\n }\n }\n _convertNodeIds(node) {\n if (node.children) {\n node.children = node.children.map((child) => this._convertIdToIndex(child, 'node'));\n }\n if (node.meshes) {\n node.meshes = node.meshes.map((mesh) => this._convertIdToIndex(mesh, 'mesh'));\n }\n }\n _convertSceneIds(scene) {\n if (scene.nodes) {\n scene.nodes = scene.nodes.map((node) => this._convertIdToIndex(node, 'node'));\n }\n }\n /** Go through all objects in a top-level array and replace ids with indices */\n _convertIdsToIndices(json, topLevelArrayName) {\n if (!json[topLevelArrayName]) {\n console.warn(`gltf v1: json doesn't contain attribute ${topLevelArrayName}`); // eslint-disable-line no-console, no-undef\n json[topLevelArrayName] = [];\n }\n for (const object of json[topLevelArrayName]) {\n for (const key in object) {\n const id = object[key];\n const index = this._convertIdToIndex(id, key);\n object[key] = index;\n }\n }\n }\n _convertIdToIndex(id, key) {\n const arrayName = GLTF_KEYS[key];\n if (arrayName in this.idToIndexMap) {\n const index = this.idToIndexMap[arrayName][id];\n if (!Number.isFinite(index)) {\n throw new Error(`gltf v1: failed to resolve ${key} with id ${id}`);\n }\n return index;\n }\n return id;\n }\n /**\n *\n * @param {*} json\n */\n _updateObjects(json) {\n for (const buffer of this.json.buffers) {\n // - [x] Removed buffer.type, #786, #629\n delete buffer.type;\n }\n }\n /**\n * Update material (set pbrMetallicRoughness)\n * @param {*} json\n */\n _updateMaterial(json) {\n for (const material of json.materials) {\n material.pbrMetallicRoughness = {\n baseColorFactor: [1, 1, 1, 1],\n metallicFactor: 1,\n roughnessFactor: 1\n };\n const textureId = material.values?.tex || material.values?.texture2d_0 || material.values?.diffuseTex;\n const textureIndex = json.textures.findIndex((texture) => texture.id === textureId);\n if (textureIndex !== -1) {\n material.pbrMetallicRoughness.baseColorTexture = { index: textureIndex };\n }\n }\n }\n}\nexport function normalizeGLTFV1(gltf, options = {}) {\n return new GLTFV1Normalizer().normalize(gltf, options);\n}\n", "import { parseJSON, sliceArrayBuffer, parseFromContext } from '@loaders.gl/loader-utils';\nimport { ImageLoader } from '@loaders.gl/images';\nimport { BasisLoader, selectSupportedBasisFormat } from '@loaders.gl/textures';\nimport { assert } from \"../utils/assert.js\";\nimport { isGLB, parseGLBSync } from \"./parse-glb.js\";\nimport { resolveUrl } from \"../gltf-utils/resolve-url.js\";\nimport { getTypedArrayForBufferView } from \"../gltf-utils/get-typed-array.js\";\nimport { preprocessExtensions, decodeExtensions } from \"../api/gltf-extensions.js\";\nimport { normalizeGLTFV1 } from \"../api/normalize-gltf-v1.js\";\n/** Check if an array buffer appears to contain GLTF data */\nexport function isGLTF(arrayBuffer, options) {\n const byteOffset = 0;\n return isGLB(arrayBuffer, byteOffset, options);\n}\nexport async function parseGLTF(gltf, arrayBufferOrString, byteOffset = 0, options, context) {\n parseGLTFContainerSync(gltf, arrayBufferOrString, byteOffset, options);\n normalizeGLTFV1(gltf, { normalize: options?.gltf?.normalize });\n preprocessExtensions(gltf, options, context);\n // Load linked buffers asynchronously and decodes base64 buffers in parallel\n if (options?.gltf?.loadBuffers && gltf.json.buffers) {\n await loadBuffers(gltf, options, context);\n }\n // loadImages and decodeExtensions should not be running in parallel, because\n // decodeExtensions uses data from images taken during the loadImages call.\n if (options?.gltf?.loadImages) {\n await loadImages(gltf, options, context);\n }\n await decodeExtensions(gltf, options, context);\n return gltf;\n}\n/**\n *\n * @param gltf\n * @param data - can be ArrayBuffer (GLB), ArrayBuffer (Binary JSON), String (JSON), or Object (parsed JSON)\n * @param byteOffset\n * @param options\n */\nfunction parseGLTFContainerSync(gltf, data, byteOffset, options) {\n // Initialize gltf container\n if (options.uri) {\n gltf.baseUri = options.uri;\n }\n // If data is binary and starting with magic bytes, assume binary JSON text, convert to string\n if (data instanceof ArrayBuffer && !isGLB(data, byteOffset, options)) {\n const textDecoder = new TextDecoder();\n data = textDecoder.decode(data);\n }\n if (typeof data === 'string') {\n // If string, try to parse as JSON\n gltf.json = parseJSON(data);\n }\n else if (data instanceof ArrayBuffer) {\n // If still ArrayBuffer, parse as GLB container\n const glb = {};\n byteOffset = parseGLBSync(glb, data, byteOffset, options.glb);\n assert(glb.type === 'glTF', `Invalid GLB magic string ${glb.type}`);\n gltf._glb = glb;\n gltf.json = glb.json;\n }\n else {\n assert(false, 'GLTF: must be ArrayBuffer or string');\n }\n // Populate buffers\n // Create an external buffers array to hold binary data\n const buffers = gltf.json.buffers || [];\n gltf.buffers = new Array(buffers.length).fill(null);\n // Populates JSON and some bin chunk info\n if (gltf._glb && gltf._glb.header.hasBinChunk) {\n const { binChunks } = gltf._glb;\n gltf.buffers[0] = {\n arrayBuffer: binChunks[0].arrayBuffer,\n byteOffset: binChunks[0].byteOffset,\n byteLength: binChunks[0].byteLength\n };\n // TODO - this modifies JSON and is a post processing thing\n // gltf.json.buffers[0].data = gltf.buffers[0].arrayBuffer;\n // gltf.json.buffers[0].byteOffset = gltf.buffers[0].byteOffset;\n }\n // Populate images\n const images = gltf.json.images || [];\n gltf.images = new Array(images.length).fill({});\n}\n/** Asynchronously fetch and parse buffers, store in buffers array outside of json\n * TODO - traverse gltf and determine which buffers are actually needed\n */\nasync function loadBuffers(gltf, options, context) {\n // TODO\n const buffers = gltf.json.buffers || [];\n for (let i = 0; i < buffers.length; ++i) {\n const buffer = buffers[i];\n if (buffer.uri) {\n const { fetch } = context;\n assert(fetch);\n const uri = resolveUrl(buffer.uri, options);\n const response = await context?.fetch?.(uri);\n const arrayBuffer = await response?.arrayBuffer?.();\n gltf.buffers[i] = {\n arrayBuffer,\n byteOffset: 0,\n byteLength: arrayBuffer.byteLength\n };\n delete buffer.uri;\n }\n else if (gltf.buffers[i] === null) {\n gltf.buffers[i] = {\n arrayBuffer: new ArrayBuffer(buffer.byteLength),\n byteOffset: 0,\n byteLength: buffer.byteLength\n };\n }\n }\n}\n/**\n * Loads all images\n * TODO - traverse gltf and determine which images are actually needed\n * @param gltf\n * @param options\n * @param context\n * @returns\n */\nasync function loadImages(gltf, options, context) {\n const imageIndices = getReferencesImageIndices(gltf);\n const images = gltf.json.images || [];\n const promises = [];\n for (const imageIndex of imageIndices) {\n promises.push(loadImage(gltf, images[imageIndex], imageIndex, options, context));\n }\n return await Promise.all(promises);\n}\n/** Make sure we only load images that are actually referenced by textures */\nfunction getReferencesImageIndices(gltf) {\n const imageIndices = new Set();\n const textures = gltf.json.textures || [];\n for (const texture of textures) {\n if (texture.source !== undefined) {\n imageIndices.add(texture.source);\n }\n }\n return Array.from(imageIndices).sort();\n}\n/** Asynchronously fetches and parses one image, store in images array outside of json */\nasync function loadImage(gltf, image, index, options, context) {\n let arrayBuffer;\n if (image.uri && !image.hasOwnProperty('bufferView')) {\n const uri = resolveUrl(image.uri, options);\n const { fetch } = context;\n const response = await fetch(uri);\n arrayBuffer = await response.arrayBuffer();\n image.bufferView = {\n data: arrayBuffer\n };\n }\n if (Number.isFinite(image.bufferView)) {\n const array = getTypedArrayForBufferView(gltf.json, gltf.buffers, image.bufferView);\n arrayBuffer = sliceArrayBuffer(array.buffer, array.byteOffset, array.byteLength);\n }\n assert(arrayBuffer, 'glTF image has no data');\n // Call `parse`\n let parsedImage = (await parseFromContext(arrayBuffer, [ImageLoader, BasisLoader], {\n ...options,\n mimeType: image.mimeType,\n basis: options.basis || { format: selectSupportedBasisFormat() }\n }, context));\n if (parsedImage && parsedImage[0]) {\n parsedImage = {\n compressed: true,\n // @ts-expect-error\n mipmaps: false,\n width: parsedImage[0].width,\n height: parsedImage[0].height,\n data: parsedImage[0]\n };\n }\n // TODO making sure ImageLoader is overridable by using array of loaders\n // const parsedImage = await parse(arrayBuffer, [ImageLoader]);\n // Store the loaded image\n gltf.images = gltf.images || [];\n // @ts-expect-error TODO - sort out image typing asap\n gltf.images[index] = parsedImage;\n}\n", "import { VERSION } from \"./lib/utils/version.js\";\nimport { parseGLTF } from \"./lib/parsers/parse-gltf.js\";\n/**\n * GLTF loader\n */\nexport const GLTFLoader = {\n dataType: null,\n batchType: null,\n name: 'glTF',\n id: 'gltf',\n module: 'gltf',\n version: VERSION,\n extensions: ['gltf', 'glb'],\n mimeTypes: ['model/gltf+json', 'model/gltf-binary'],\n text: true,\n binary: true,\n tests: ['glTF'],\n parse,\n options: {\n gltf: {\n normalize: true, // Normalize glTF v1 to glTF v2 format (not yet stable)\n loadBuffers: true, // Fetch any linked .BIN buffers, decode base64\n loadImages: true, // Create image objects\n decompressMeshes: true // Decompress Draco encoded meshes\n },\n // common?\n log: console // eslint-disable-line\n }\n};\nexport async function parse(arrayBuffer, options = {}, context) {\n // Apps can call the parse method directly, we so apply default options here\n options = { ...GLTFLoader.options, ...options };\n // @ts-ignore\n options.gltf = { ...GLTFLoader.options.gltf, ...options.gltf };\n const { byteOffset = 0 } = options;\n const gltf = {};\n return await parseGLTF(gltf, arrayBuffer, byteOffset, options, context);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\nimport { assert } from \"../utils/assert.js\";\nimport { getAccessorArrayTypeAndLength } from \"../gltf-utils/gltf-utils.js\";\n// This is a post processor for loaded glTF files\n// The goal is to make the loaded data easier to use in WebGL applications\n//\n// Functions:\n// * Resolve indexed arrays structure of glTF into a linked tree.\n// * Translate stringified enum keys and values into WebGL constants.\n// * Load images (optional)\n// ENUM LOOKUP\nconst COMPONENTS = {\n SCALAR: 1,\n VEC2: 2,\n VEC3: 3,\n VEC4: 4,\n MAT2: 4,\n MAT3: 9,\n MAT4: 16\n};\nconst BYTES = {\n 5120: 1, // BYTE\n 5121: 1, // UNSIGNED_BYTE\n 5122: 2, // SHORT\n 5123: 2, // UNSIGNED_SHORT\n 5125: 4, // UNSIGNED_INT\n 5126: 4 // FLOAT\n};\nconst GL_SAMPLER = {\n // Sampler parameters\n TEXTURE_MAG_FILTER: 0x2800,\n TEXTURE_MIN_FILTER: 0x2801,\n TEXTURE_WRAP_S: 0x2802,\n TEXTURE_WRAP_T: 0x2803,\n // Sampler default values\n REPEAT: 0x2901,\n LINEAR: 0x2601,\n NEAREST_MIPMAP_LINEAR: 0x2702\n};\nconst SAMPLER_PARAMETER_GLTF_TO_GL = {\n magFilter: GL_SAMPLER.TEXTURE_MAG_FILTER,\n minFilter: GL_SAMPLER.TEXTURE_MIN_FILTER,\n wrapS: GL_SAMPLER.TEXTURE_WRAP_S,\n wrapT: GL_SAMPLER.TEXTURE_WRAP_T\n};\n// When undefined, a sampler with repeat wrapping and auto filtering should be used.\n// https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#texture\nconst DEFAULT_SAMPLER_PARAMETERS = {\n [GL_SAMPLER.TEXTURE_MAG_FILTER]: GL_SAMPLER.LINEAR,\n [GL_SAMPLER.TEXTURE_MIN_FILTER]: GL_SAMPLER.NEAREST_MIPMAP_LINEAR,\n [GL_SAMPLER.TEXTURE_WRAP_S]: GL_SAMPLER.REPEAT,\n [GL_SAMPLER.TEXTURE_WRAP_T]: GL_SAMPLER.REPEAT\n};\nfunction makeDefaultSampler() {\n return {\n id: 'default-sampler',\n parameters: DEFAULT_SAMPLER_PARAMETERS\n };\n}\nfunction getBytesFromComponentType(componentType) {\n return BYTES[componentType];\n}\nfunction getSizeFromAccessorType(type) {\n return COMPONENTS[type];\n}\nclass GLTFPostProcessor {\n baseUri = '';\n // @ts-expect-error\n jsonUnprocessed;\n // @ts-expect-error\n json;\n buffers = [];\n images = [];\n postProcess(gltf, options = {}) {\n const { json, buffers = [], images = [] } = gltf;\n // @ts-expect-error\n const { baseUri = '' } = gltf;\n assert(json);\n this.baseUri = baseUri;\n this.buffers = buffers;\n this.images = images;\n this.jsonUnprocessed = json;\n this.json = this._resolveTree(gltf.json, options);\n return this.json;\n }\n // Convert indexed glTF structure into tree structure\n // cross-link index resolution, enum lookup, convenience calculations\n // eslint-disable-next-line complexity, max-statements\n _resolveTree(gltf, options = {}) {\n // @ts-expect-error\n const json = { ...gltf };\n this.json = json;\n if (gltf.bufferViews) {\n json.bufferViews = gltf.bufferViews.map((bufView, i) => this._resolveBufferView(bufView, i));\n }\n if (gltf.images) {\n json.images = gltf.images.map((image, i) => this._resolveImage(image, i));\n }\n if (gltf.samplers) {\n json.samplers = gltf.samplers.map((sampler, i) => this._resolveSampler(sampler, i));\n }\n if (gltf.textures) {\n json.textures = gltf.textures.map((texture, i) => this._resolveTexture(texture, i));\n }\n if (gltf.accessors) {\n json.accessors = gltf.accessors.map((accessor, i) => this._resolveAccessor(accessor, i));\n }\n if (gltf.materials) {\n json.materials = gltf.materials.map((material, i) => this._resolveMaterial(material, i));\n }\n if (gltf.meshes) {\n json.meshes = gltf.meshes.map((mesh, i) => this._resolveMesh(mesh, i));\n }\n if (gltf.nodes) {\n json.nodes = gltf.nodes.map((node, i) => this._resolveNode(node, i));\n json.nodes = json.nodes.map((node, i) => this._resolveNodeChildren(node));\n }\n if (gltf.skins) {\n json.skins = gltf.skins.map((skin, i) => this._resolveSkin(skin, i));\n }\n if (gltf.scenes) {\n json.scenes = gltf.scenes.map((scene, i) => this._resolveScene(scene, i));\n }\n if (typeof this.json.scene === 'number' && json.scenes) {\n json.scene = json.scenes[this.json.scene];\n }\n return json;\n }\n getScene(index) {\n return this._get(this.json.scenes, index);\n }\n getNode(index) {\n return this._get(this.json.nodes, index);\n }\n getSkin(index) {\n return this._get(this.json.skins, index);\n }\n getMesh(index) {\n return this._get(this.json.meshes, index);\n }\n getMaterial(index) {\n return this._get(this.json.materials, index);\n }\n getAccessor(index) {\n return this._get(this.json.accessors, index);\n }\n getCamera(index) {\n return this._get(this.json.cameras, index);\n }\n getTexture(index) {\n return this._get(this.json.textures, index);\n }\n getSampler(index) {\n return this._get(this.json.samplers, index);\n }\n getImage(index) {\n return this._get(this.json.images, index);\n }\n getBufferView(index) {\n return this._get(this.json.bufferViews, index);\n }\n getBuffer(index) {\n return this._get(this.json.buffers, index);\n }\n _get(array, index) {\n // check if already resolved\n if (typeof index === 'object') {\n return index;\n }\n const object = array && array[index];\n if (!object) {\n console.warn(`glTF file error: Could not find ${array}[${index}]`); // eslint-disable-line\n }\n return object;\n }\n // PARSING HELPERS\n _resolveScene(scene, index) {\n return {\n ...scene,\n // @ts-ignore\n id: scene.id || `scene-${index}`,\n nodes: (scene.nodes || []).map((node) => this.getNode(node))\n };\n }\n _resolveNode(gltfNode, index) {\n // @ts-expect-error\n const node = {\n ...gltfNode,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfNode?.id || `node-${index}`\n };\n if (gltfNode.mesh !== undefined) {\n node.mesh = this.getMesh(gltfNode.mesh);\n }\n if (gltfNode.camera !== undefined) {\n node.camera = this.getCamera(gltfNode.camera);\n }\n if (gltfNode.skin !== undefined) {\n node.skin = this.getSkin(gltfNode.skin);\n }\n // TODO deprecated - Delete in v4.0?\n // @ts-expect-error node.meshes does not seem to be part of the GLTF standard\n if (gltfNode.meshes !== undefined && gltfNode.meshes.length) {\n // @ts-expect-error\n node.mesh = gltfNode.meshes.reduce((accum, meshIndex) => {\n const mesh = this.getMesh(meshIndex);\n accum.id = mesh.id;\n accum.primitives = accum.primitives.concat(mesh.primitives);\n return accum;\n }, { primitives: [] });\n }\n return node;\n }\n _resolveNodeChildren(node) {\n if (node.children) {\n // @ts-expect-error node.children are numbers at this stage\n node.children = node.children.map((child) => this.getNode(child));\n }\n return node;\n }\n _resolveSkin(gltfSkin, index) {\n const inverseBindMatrices = typeof gltfSkin.inverseBindMatrices === 'number'\n ? this.getAccessor(gltfSkin.inverseBindMatrices)\n : undefined;\n return {\n ...gltfSkin,\n id: gltfSkin.id || `skin-${index}`,\n inverseBindMatrices\n };\n }\n _resolveMesh(gltfMesh, index) {\n const mesh = {\n ...gltfMesh,\n id: gltfMesh.id || `mesh-${index}`,\n primitives: []\n };\n if (gltfMesh.primitives) {\n mesh.primitives = gltfMesh.primitives.map((gltfPrimitive) => {\n const primitive = {\n ...gltfPrimitive,\n attributes: {},\n indices: undefined,\n material: undefined\n };\n const attributes = gltfPrimitive.attributes;\n for (const attribute in attributes) {\n primitive.attributes[attribute] = this.getAccessor(attributes[attribute]);\n }\n if (gltfPrimitive.indices !== undefined) {\n primitive.indices = this.getAccessor(gltfPrimitive.indices);\n }\n if (gltfPrimitive.material !== undefined) {\n primitive.material = this.getMaterial(gltfPrimitive.material);\n }\n return primitive;\n });\n }\n return mesh;\n }\n _resolveMaterial(gltfMaterial, index) {\n // @ts-expect-error\n const material = {\n ...gltfMaterial,\n // @ts-expect-error\n id: gltfMaterial.id || `material-${index}`\n };\n if (material.normalTexture) {\n material.normalTexture = { ...material.normalTexture };\n material.normalTexture.texture = this.getTexture(material.normalTexture.index);\n }\n if (material.occlusionTexture) {\n material.occlusionTexture = { ...material.occlusionTexture };\n material.occlusionTexture.texture = this.getTexture(material.occlusionTexture.index);\n }\n if (material.emissiveTexture) {\n material.emissiveTexture = { ...material.emissiveTexture };\n material.emissiveTexture.texture = this.getTexture(material.emissiveTexture.index);\n }\n if (!material.emissiveFactor) {\n material.emissiveFactor = material.emissiveTexture ? [1, 1, 1] : [0, 0, 0];\n }\n if (material.pbrMetallicRoughness) {\n material.pbrMetallicRoughness = { ...material.pbrMetallicRoughness };\n const mr = material.pbrMetallicRoughness;\n if (mr.baseColorTexture) {\n mr.baseColorTexture = { ...mr.baseColorTexture };\n mr.baseColorTexture.texture = this.getTexture(mr.baseColorTexture.index);\n }\n if (mr.metallicRoughnessTexture) {\n mr.metallicRoughnessTexture = { ...mr.metallicRoughnessTexture };\n mr.metallicRoughnessTexture.texture = this.getTexture(mr.metallicRoughnessTexture.index);\n }\n }\n return material;\n }\n _resolveAccessor(gltfAccessor, index) {\n // Look up enums\n const bytesPerComponent = getBytesFromComponentType(gltfAccessor.componentType);\n const components = getSizeFromAccessorType(gltfAccessor.type);\n const bytesPerElement = bytesPerComponent * components;\n const accessor = {\n ...gltfAccessor,\n // @ts-expect-error\n id: gltfAccessor.id || `accessor-${index}`,\n bytesPerComponent,\n components,\n bytesPerElement,\n value: undefined,\n bufferView: undefined,\n sparse: undefined\n };\n if (gltfAccessor.bufferView !== undefined) {\n // Draco encoded meshes don't have bufferView\n accessor.bufferView = this.getBufferView(gltfAccessor.bufferView);\n }\n // Create TypedArray for the accessor\n // Note: The canonical way to instantiate is to ignore this array and create\n // WebGLBuffer's using the bufferViews.\n if (accessor.bufferView) {\n const buffer = accessor.bufferView.buffer;\n const { ArrayType, byteLength } = getAccessorArrayTypeAndLength(accessor, accessor.bufferView);\n const byteOffset = (accessor.bufferView.byteOffset || 0) + (accessor.byteOffset || 0) + buffer.byteOffset;\n let cutBuffer = buffer.arrayBuffer.slice(byteOffset, byteOffset + byteLength);\n if (accessor.bufferView.byteStride) {\n cutBuffer = this._getValueFromInterleavedBuffer(buffer, byteOffset, accessor.bufferView.byteStride, accessor.bytesPerElement, accessor.count);\n }\n accessor.value = new ArrayType(cutBuffer);\n }\n return accessor;\n }\n /**\n * Take values of particular accessor from interleaved buffer\n * various parts of the buffer\n * @param buffer\n * @param byteOffset\n * @param byteStride\n * @param bytesPerElement\n * @param count\n * @returns\n */\n _getValueFromInterleavedBuffer(buffer, byteOffset, byteStride, bytesPerElement, count) {\n const result = new Uint8Array(count * bytesPerElement);\n for (let i = 0; i < count; i++) {\n const elementOffset = byteOffset + i * byteStride;\n result.set(new Uint8Array(buffer.arrayBuffer.slice(elementOffset, elementOffset + bytesPerElement)), i * bytesPerElement);\n }\n return result.buffer;\n }\n _resolveTexture(gltfTexture, index) {\n return {\n ...gltfTexture,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfTexture.id || `texture-${index}`,\n sampler: typeof gltfTexture.sampler === 'number'\n ? this.getSampler(gltfTexture.sampler)\n : makeDefaultSampler(),\n source: typeof gltfTexture.source === 'number' ? this.getImage(gltfTexture.source) : undefined\n };\n }\n _resolveSampler(gltfSampler, index) {\n const sampler = {\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfSampler.id || `sampler-${index}`,\n ...gltfSampler,\n parameters: {}\n };\n // Map textual parameters to GL parameter values\n for (const key in sampler) {\n const glEnum = this._enumSamplerParameter(key);\n if (glEnum !== undefined) {\n sampler.parameters[glEnum] = sampler[key];\n }\n }\n return sampler;\n }\n _enumSamplerParameter(key) {\n return SAMPLER_PARAMETER_GLTF_TO_GL[key];\n }\n _resolveImage(gltfImage, index) {\n const image = {\n ...gltfImage,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfImage.id || `image-${index}`,\n image: null,\n bufferView: gltfImage.bufferView !== undefined ? this.getBufferView(gltfImage.bufferView) : undefined\n };\n // Check if image has been preloaded by the GLTFLoader\n // If so, link it into the JSON and drop the URI\n const preloadedImage = this.images[index];\n if (preloadedImage) {\n image.image = preloadedImage;\n }\n return image;\n }\n _resolveBufferView(gltfBufferView, index) {\n const bufferIndex = gltfBufferView.buffer;\n const arrayBuffer = this.buffers[bufferIndex].arrayBuffer;\n // Add offset of buffer, then offset of buffer view\n let byteOffset = this.buffers[bufferIndex].byteOffset || 0;\n if (gltfBufferView.byteOffset) {\n byteOffset += gltfBufferView.byteOffset;\n }\n const bufferView = {\n // // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: `bufferView-${index}`,\n ...gltfBufferView,\n // ...this.buffers[bufferIndex],\n buffer: this.buffers[bufferIndex],\n data: new Uint8Array(arrayBuffer, byteOffset, gltfBufferView.byteLength)\n };\n return bufferView;\n }\n _resolveCamera(gltfCamera, index) {\n const camera = {\n ...gltfCamera,\n // @ts-expect-error id could already be present, glTF standard does not prevent it\n id: gltfCamera.id || `camera-${index}`\n };\n // TODO - create 4x4 matrices\n if (camera.perspective) {\n // camera.matrix = createPerspectiveMatrix(camera.perspective);\n }\n if (camera.orthographic) {\n // camera.matrix = createOrthographicMatrix(camera.orthographic);\n }\n return camera;\n }\n}\nexport function postProcessGLTF(gltf, options) {\n return new GLTFPostProcessor().postProcess(gltf, options);\n}\n", "// import '@loaders.gl/polyfills';\nimport {parse} from '@loaders.gl/core';\nimport {GLTFLoader, postProcessGLTF} from '@loaders.gl/gltf';\n\nimport {\n ClampToEdgeWrapping,\n LinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n LinesPrimitive,\n MirroredRepeatWrapping,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n PointsPrimitive,\n RepeatWrapping,\n TrianglesPrimitive\n} from \"@xeokit/constants\";\nimport {isString} from \"@xeokit/utils\";\nimport {createMat4, identityMat4, mulMat4, quatToMat4, scalingMat4v, translationMat4v} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {SceneGeometryParams, SceneMeshParams, SceneModel, SceneTextureSetParams} from \"@xeokit/scene\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\n\ninterface ParsingContext {\n gltfData: any;\n nextId: number;\n log: any;\n error: (msg: any) => void;\n dataModel?: DataModel;\n sceneModel?: SceneModel;\n objectCreated: { [key: string]: boolean }\n}\n\n/**\n * Loads glTF file data from an ArrayBuffer into a {@link @xeokit/scene!SceneModel | SceneModel} and/or\n * a {@link @xeokit/data!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n * * Does not call {@link @xeokit/scene!SceneModel.build | SceneModel.build} - we call that ourselves, when we have finished building the SceneModel\n *\n * See {@link \"@xeokit/gltf\" | @xeokit/gltf} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - glTF file data\n * @param params.sceneModel - SceneModel to load into.\n * @param params.dataModel - DataModel to load into. For glTF, this will create a basic aggregation hierarchy (see {@link \"@xeokit/basictypes/basicTypes\"}).\n * @returns {Promise} Resolves when glTF has been loaded.\n * @returns {Promise} Resolves when glTF has been loaded into the SceneModel and/or DataModel.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadGLTF(params: {\n fileData: ArrayBuffer,\n sceneModel: SceneModel,\n dataModel?: DataModel,\n log?: Function\n}): Promise {\n return new Promise(function (resolve, reject) {\n if (params.sceneModel.destroyed) {\n throw new SDKError(\"SceneModel already destroyed\");\n }\n if (params.sceneModel.built) {\n throw new SDKError(\"SceneModel already built\");\n }\n if (params.dataModel) {\n if (params.dataModel.destroyed) {\n throw new SDKError(\"DataModel already destroyed\");\n }\n if (params.dataModel.built) {\n throw new SDKError(\"DataModel already built\");\n }\n }\n parse(params.fileData, GLTFLoader, {\n loadImages: false\n }).then((gltfData) => {\n const processedGLTF = postProcessGLTF(gltfData);\n const ctx: ParsingContext = {\n gltfData: processedGLTF,\n nextId: 0,\n log: (params.log || function (msg: string) {\n }),\n error: function (msg) {\n console.error(msg);\n },\n dataModel: params.dataModel,\n sceneModel: params.sceneModel,\n objectCreated: {}\n };\n parseTextures(ctx);\n parseMaterials(ctx);\n parseDefaultScene(ctx);\n resolve();\n }, (errMsg) => {\n reject(new SDKError(`Error parsing glTF: ${errMsg}`));\n });\n });\n}\n\nfunction parseTextures(ctx: any) {\n if (!ctx.sceneModel) {\n return;\n }\n const gltfData = ctx.gltfData;\n const textures = gltfData.textures;\n if (textures) {\n for (let i = 0, len = textures.length; i < len; i++) {\n parseTexture(ctx, textures[i]);\n }\n }\n}\n\nfunction parseTexture(ctx: any, texture: any) {\n if (!texture.source || !texture.source.image) {\n return;\n }\n const textureId = `texture-${ctx.nextId++}`;\n let minFilter = NearestMipMapLinearFilter;\n switch (texture.sampler.minFilter) {\n case 9728:\n minFilter = NearestFilter;\n break;\n case 9729:\n minFilter = LinearFilter;\n break;\n case 9984:\n minFilter = NearestMipMapNearestFilter;\n break;\n case 9985:\n minFilter = LinearMipMapNearestFilter;\n break;\n case 9986:\n minFilter = NearestMipMapLinearFilter;\n break;\n case 9987:\n minFilter = LinearMipMapLinearFilter;\n break;\n }\n let magFilter = LinearFilter;\n switch (texture.sampler.magFilter) {\n case 9728:\n magFilter = NearestFilter;\n break;\n case 9729:\n magFilter = LinearFilter;\n break;\n }\n let wrapS = RepeatWrapping;\n switch (texture.sampler.wrapS) {\n case 33071:\n wrapS = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapS = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapS = RepeatWrapping;\n break;\n }\n let wrapT = RepeatWrapping;\n switch (texture.sampler.wrapT) {\n case 33071:\n wrapT = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapT = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapT = RepeatWrapping;\n break;\n }\n let wrapR = RepeatWrapping;\n switch (texture.sampler.wrapR) {\n case 33071:\n wrapR = ClampToEdgeWrapping;\n break;\n case 33648:\n wrapR = MirroredRepeatWrapping;\n break;\n case 10497:\n wrapR = RepeatWrapping;\n break;\n }\n ctx.sceneModel.createTexture({\n id: textureId,\n imageData: texture.source.image,\n mediaType: texture.source.mediaType,\n compressed: true,\n width: texture.source.image.width,\n height: texture.source.image.height,\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR,\n flipY: !!texture.flipY,\n // encoding: \"sRGB\"\n });\n texture._textureId = textureId;\n}\n\nfunction parseMaterials(ctx: ParsingContext): void {\n if (!ctx.sceneModel) {\n return;\n }\n const gltfData = ctx.gltfData;\n const materials = gltfData.materials;\n if (materials) {\n for (let i = 0, len = materials.length; i < len; i++) {\n const material = materials[i];\n material._textureSetId = parseTextureSet(ctx, material);\n material._attributes = parseMaterialAttributes(ctx, material);\n }\n }\n}\n\nfunction parseTextureSet(ctx: ParsingContext, material: any): null | string {\n // @ts-ignore\n\n const textureSetCfg: SceneTextureSetParams = {\n // @ts-ignore\n id: null,\n occlusionTextureId: undefined,\n emissiveTextureId: undefined,\n colorTextureId: undefined,\n metallicRoughnessTextureId: undefined\n };\n if (material.occlusionTexture) {\n textureSetCfg.occlusionTextureId = material.occlusionTexture.texture._textureId;\n }\n if (material.emissiveTexture) {\n textureSetCfg.emissiveTextureId = material.emissiveTexture.texture._textureId;\n }\n // const alphaMode = material.alphaMode;\n // switch (alphaMode) {\n // case \"NORMAL_OPAQUE\":\n // materialCfg.alphaMode = \"opaque\";\n // break;\n // case \"MASK\":\n // materialCfg.alphaMode = \"mask\";\n // break;\n // case \"BLEND\":\n // materialCfg.alphaMode = \"blend\";\n // break;\n // default:\n // }\n // const alphaCutoff = material.alphaCutoff;\n // if (alphaCutoff !== undefined) {\n // materialCfg.alphaCutoff = alphaCutoff;\n // }\n const metallicPBR = material.pbrMetallicRoughness;\n if (material.pbrMetallicRoughness) {\n const pbrMetallicRoughness = material.pbrMetallicRoughness;\n const baseColorTexture = pbrMetallicRoughness.baseColorTexture || pbrMetallicRoughness.colorTexture;\n if (baseColorTexture) {\n if (baseColorTexture.texture) {\n textureSetCfg.colorTextureId = baseColorTexture.texture._textureId;\n } else {\n textureSetCfg.colorTextureId = ctx.gltfData.textures[baseColorTexture.index]._textureId;\n }\n }\n if (metallicPBR.metallicRoughnessTexture) {\n textureSetCfg.metallicRoughnessTextureId = metallicPBR.metallicRoughnessTexture.texture._textureId;\n }\n }\n const extensions = material.extensions;\n if (extensions) {\n const specularPBR = extensions[\"KHR_materials_pbrSpecularGlossiness\"];\n if (specularPBR) {\n const specularTexture = specularPBR.specularTexture;\n if (specularTexture !== null && specularTexture !== undefined) {\n // textureSetCfg.colorTextureId = ctx.gltfData.textures[specularColorTexture.index]._textureId;\n }\n const specularColorTexture = specularPBR.specularColorTexture;\n if (specularColorTexture !== null && specularColorTexture !== undefined) {\n textureSetCfg.colorTextureId = ctx.gltfData.textures[specularColorTexture.index]._textureId;\n }\n }\n }\n if (textureSetCfg.occlusionTextureId !== undefined ||\n textureSetCfg.emissiveTextureId !== undefined ||\n textureSetCfg.colorTextureId !== undefined ||\n textureSetCfg.metallicRoughnessTextureId !== undefined) {\n textureSetCfg.id = `textureSet-${ctx.nextId++};`\n // @ts-ignore\n ctx.sceneModel.createTextureSet(textureSetCfg);\n return textureSetCfg.id;\n }\n return null;\n}\n\nfunction parseMaterialAttributes(ctx: ParsingContext, material: any): any { // Substitute RGBA for material, to use fast flat shading instead\n const extensions = material.extensions;\n const materialAttributes = {\n color: new Float32Array([1, 1, 1, 1]),\n opacity: 1,\n metallic: 0,\n roughness: 1\n };\n if (extensions) {\n const specularPBR = extensions[\"KHR_materials_pbrSpecularGlossiness\"];\n if (specularPBR) {\n const diffuseFactor = specularPBR.diffuseFactor;\n if (diffuseFactor !== null && diffuseFactor !== undefined) {\n materialAttributes.color.set(diffuseFactor);\n }\n }\n const common = extensions[\"KHR_materials_common\"];\n if (common) {\n const technique = common.technique;\n const values = common.values || {};\n const blinn = technique === \"BLINN\";\n const phong = technique === \"PHONG\";\n const lambert = technique === \"LAMBERT\";\n const diffuse = values.diffuse;\n if (diffuse && (blinn || phong || lambert)) {\n if (!isString(diffuse)) {\n materialAttributes.color.set(diffuse);\n }\n }\n const transparency = values.transparency;\n if (transparency !== null && transparency !== undefined) {\n materialAttributes.opacity = transparency;\n }\n const transparent = values.transparent;\n if (transparent !== null && transparent !== undefined) {\n materialAttributes.opacity = transparent;\n }\n }\n }\n const metallicPBR = material.pbrMetallicRoughness;\n if (metallicPBR) {\n const baseColorFactor = metallicPBR.baseColorFactor;\n if (baseColorFactor) {\n materialAttributes.color[0] = baseColorFactor[0];\n materialAttributes.color[1] = baseColorFactor[1];\n materialAttributes.color[2] = baseColorFactor[2];\n materialAttributes.opacity = baseColorFactor[3];\n }\n const metallicFactor = metallicPBR.metallicFactor;\n if (metallicFactor !== null && metallicFactor !== undefined) {\n materialAttributes.metallic = metallicFactor;\n }\n const roughnessFactor = metallicPBR.roughnessFactor;\n if (roughnessFactor !== null && roughnessFactor !== undefined) {\n materialAttributes.roughness = roughnessFactor;\n }\n }\n return materialAttributes;\n}\n\nfunction parseDefaultScene(ctx: ParsingContext) {\n const gltfData = ctx.gltfData;\n const scene = gltfData.scene || gltfData.scenes[0];\n if (!scene) {\n ctx.error(\"glTF has no default scene\");\n return;\n }\n parseScene(ctx, scene);\n}\n\nfunction parseScene(ctx: ParsingContext, scene: any) {\n const nodes = scene.nodes;\n if (!nodes) {\n return;\n }\n for (let i = 0, len = nodes.length; i < len; i++) {\n const node = nodes[i];\n parseNode(ctx, node, 0, null);\n }\n}\n\nconst deferredMeshIds: string[] = [];\n\nfunction parseNode(ctx: ParsingContext, node: any, depth: number, matrix: null | FloatArrayParam) {\n\n // Pre-order visit scene node\n\n let localMatrix;\n if (node.matrix) {\n localMatrix = node.matrix;\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.translation) {\n localMatrix = translationMat4v(node.translation);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.rotation) {\n localMatrix = quatToMat4(node.rotation);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n if (node.scale) {\n localMatrix = scalingMat4v(node.scale);\n if (matrix) {\n matrix = mulMat4(matrix, localMatrix, createMat4());\n } else {\n matrix = localMatrix;\n }\n }\n\n if (node.mesh) {\n\n const mesh = node.mesh;\n const numPrimitives = mesh.primitives.length;\n\n if (numPrimitives > 0) {\n for (let i = 0; i < numPrimitives; i++) {\n const primitive = mesh.primitives[i];\n if (!primitive._geometryId) {\n const geometryId = \"geometry-\" + ctx.nextId++;\n\n const geometryParams: SceneGeometryParams = {\n id: geometryId,\n primitive: 0,\n // @ts-ignore\n positions: undefined\n };\n switch (primitive.mode) {\n case 0: // POINTS\n geometryParams.primitive = PointsPrimitive;\n break;\n case 1: // LINES\n geometryParams.primitive = LinesPrimitive;\n break;\n case 2: // LINE_LOOP\n geometryParams.primitive = LinesPrimitive;\n break;\n case 3: // LINE_STRIP\n geometryParams.primitive = LinesPrimitive;\n break;\n case 4: // TRIANGLES\n geometryParams.primitive = TrianglesPrimitive;\n break;\n case 5: // TRIANGLE_STRIP\n geometryParams.primitive = TrianglesPrimitive;\n break;\n case 6: // TRIANGLE_FAN\n geometryParams.primitive = TrianglesPrimitive;\n break;\n default:\n geometryParams.primitive = TrianglesPrimitive;\n }\n const POSITION = primitive.attributes.POSITION;\n if (!POSITION) {\n continue;\n }\n geometryParams.positions = primitive.attributes.POSITION.value;\n if (primitive.attributes.COLOR_0) {\n geometryParams.colors = primitive.attributes.COLOR_0.value;\n }\n if (primitive.attributes.TEXCOORD_0) {\n geometryParams.uvs = primitive.attributes.TEXCOORD_0.value;\n }\n if (primitive.indices) {\n geometryParams.indices = primitive.indices.value;\n }\n // @ts-ignore\n ctx.sceneModel.createGeometry(geometryParams);\n primitive._geometryId = geometryId;\n }\n\n const meshId = `${ctx.nextId++}`;\n const meshParams: SceneMeshParams = {\n id: meshId,\n geometryId: primitive._geometryId,\n matrix: matrix ? matrix.slice() : identityMat4(),\n textureSetId: undefined\n };\n const material = primitive.material;\n if (material) {\n // meshParams.textureSetId = material._textureSetId;\n meshParams.color = material._attributes.color;\n meshParams.opacity = material._attributes.opacity;\n // meshParams.metallic = material._attributes.metallic;\n // meshParams.roughness = material._attributes.roughness;\n } else {\n meshParams.color = [1.0, 1.0, 1.0];\n meshParams.opacity = 1.0;\n }\n // @ts-ignore\n ctx.sceneModel.createMesh(meshParams);\n deferredMeshIds.push(meshId);\n }\n }\n }\n\n // Visit child scene nodes\n\n if (node.children) {\n const children = node.children;\n for (let i = 0, len = children.length; i < len; i++) {\n const childNode = children[i];\n parseNode(ctx, childNode, depth + 1, matrix);\n }\n }\n\n // Post-order visit scene node\n\n const nodeName = node.name;\n if (((nodeName !== undefined && nodeName !== null) || depth === 0) && deferredMeshIds.length > 0) {\n if (nodeName === undefined || nodeName === null) {\n ctx.log(`Warning: 'name' properties not found on glTF scene nodes - will randomly-generate object IDs in DTX`);\n }\n let objectId = nodeName; // Fall back on generated ID when `name` not found on glTF scene node(s)\n if (!!objectId && ctx.objectCreated[objectId]) {\n ctx.log(`Warning: Two or more glTF nodes found with same 'name' attribute: '${nodeName} - will randomly-generating an object ID in DTX`);\n }\n while (!objectId || ctx.objectCreated[objectId]) {\n objectId = \"object-\" + ctx.nextId++;\n }\n // @ts-ignore\n ctx.sceneModel.createObject({\n id: objectId,\n meshIds: deferredMeshIds\n });\n ctx.objectCreated[objectId] = true;\n deferredMeshIds.length = 0;\n\n }\n}\n\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fxkt.svg)](https://badge.fury.io/js/%40xeokit%2Fxkt)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/xkt/badge)](https://www.jsdelivr.com/package/npm/@xeokit/xkt)\n *\n * \n *\n * # xeokit [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) Importer and Exporter\n *\n * ---\n *\n * ### *Import models as xeokit's native binary [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) format*\n *\n * ---\n *\n * The xeokit SDK allows us to import 3D models from [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt), which is xeokit's\n * native runtime asset delivery format for model representations and semantics.\n *\n * The [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) format compresses large double-precision model geometry to\n * a compact payload that loads quickly over the Web into a xeokit viewer running in the browser.\n *\n * To import a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) model into xeokit, use the {@link loadXKT} function, which will load the file into\n * a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * Use the {@link @xeokit/metamodel!loadMetamodel | loadMetamodel} function to load legacy JSON metadata into a {@link @xeokit/data!DataModel | DataModel}.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNkt9vgjAQx_8Vck9bggYYoBLjw-LbNDOyJcvSl0qPyYItaUsyZvzf14LoeJhZX9r79bnrN3eETDCEBLKSKrUs6IekB8IJZ4XETBeCO6uttdu4k2bIcW0qSudIuGNOwbpb7D5NvuqMTCLV-Ny67u47364uStYbDJWWorHmydJ7_pJq2uJv0SspKpS6SfFWv863xZLaX6h9UQ0jmyvlXyN2A64EZW9PLxtqZFK9BvN5ZW3UKBeLzkWlpM1jnecoO4e6KDfglR3vSspr3spuQW3eoCMBj8BotCDgE0h_If_OukhK-LlZHxnUJM6rQuVcPmKUBRcOKA-0YGY_2gEJ6D0ekEBingxzWpeagBnUpNJai7ThGSRa1uhCXTGj8nmjIMlpqYwXWaGFXJ93zl4uVJRDcoQvSEZ-OB0_TKPQ98JJ7EVhFLjQQOKH8TiYemEUB_4sDsPg5MK3EAbrj71g4nlBPAvMiWa2wPDe26Ad5PQDhIPxEQ?type=png)](https://mermaid.live/edit#pako:eNqNkt9vgjAQx_8Vck9bggYYoBLjw-LbNDOyJcvSl0qPyYItaUsyZvzf14LoeJhZX9r79bnrN3eETDCEBLKSKrUs6IekB8IJZ4XETBeCO6uttdu4k2bIcW0qSudIuGNOwbpb7D5NvuqMTCLV-Ny67u47364uStYbDJWWorHmydJ7_pJq2uJv0SspKpS6SfFWv863xZLaX6h9UQ0jmyvlXyN2A64EZW9PLxtqZFK9BvN5ZW3UKBeLzkWlpM1jnecoO4e6KDfglR3vSspr3spuQW3eoCMBj8BotCDgE0h_If_OukhK-LlZHxnUJM6rQuVcPmKUBRcOKA-0YGY_2gEJ6D0ekEBingxzWpeagBnUpNJai7ThGSRa1uhCXTGj8nmjIMlpqYwXWaGFXJ93zl4uVJRDcoQvSEZ-OB0_TKPQ98JJ7EVhFLjQQOKH8TiYemEUB_4sDsPg5MK3EAbrj71g4nlBPAvMiWa2wPDe26Ad5PQDhIPxEQ)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/xkt\n * ````\n *\n * ## Usage\n *\n * In the example below, we will create a {@link @xeokit/viewer!Viewer | Viewer} with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and a {@link @xeokit/scene!Scene | Scene}, which holds model geometry and materials.\n *\n * On our Viewer, we will create a single {@link @xeokit/viewer!View | View} to render it to a canvas element on the page. We will\n * also attach a {@link @xeokit/cameracontrol!CameraControl | CameraControl} to our View, allowing us to control its camera with mouse and touch input.\n *\n * Within the Scene, we will create a {@link @xeokit/scene!SceneModel | SceneModel} to hold a model. We will then use\n * {@link @xeokit/xkt!loadXKT | loadXKT} to load\n * any XKT file into our SceneModel.\n *\n * The {@link @xeokit/core!SDKError | SDKError} class will be used to handle any errors that may occur during this process.\n *\n * * [Run this example]()\n *\n * ````javascript\n * import {SDKError} from \"@xeokit/core\";\n * import {Scene} from \"@xeokit/scene\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * import {loadXKT} from \"@xeokit/xkt\";\n *\n * const scene = new Scene();\n *\n * const renderer = new WebGLRenderer({});\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderer\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas\" // << Ensure that this HTMLElement exists in the page\n * });\n *\n * if (view instanceof SDKError) {\n * console.error(`Error creating View: ${view.message}`);\n *\n * } else {\n *\n * view.camera.eye = [1841982.93, 10.03, -5173286.74];\n * view.camera.look = [1842009.49, 9.68, -5173295.85];\n * view.camera.up = [0.0, 1.0, 0.0];\n *\n * new CameraControl(view, {});\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * if (sceneModel instanceof SDKError) {\n * console.error(`Error creating SceneModel: ${sceneModel.message}`);\n *\n * } else {\n *\n * fetch(\"model.xkt\").then(response => {\n *\n * response.arrayBuffer().then(fileData => {\n *\n * loadXKT({\n * fileData,\n * sceneModel\n * }).then(() => {\n *\n * sceneModel.build();\n *\n * }).catch(sdkError => {\n * sceneModel.destroy();\n * console.error(`Error loading XKT: ${sdkError.message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error creating ArrayBuffer: ${message}`);\n * });\n *\n * }).catch(message => {\n * console.error(`Error fetching model: ${message}`);\n * });\n * }\n * }\n * ````\n *\n * @module @xeokit/xkt\n */\nexport * from \"./loadXKT\";\nexport * from \"./loadXKTManifest\";\n", "import type {XKTDataDeflated} from \"./XKTDataDeflated\";\nimport type {XKTData} from \"./XKTData\";\nimport * as pako from \"pako\";\n\n/**\n * @private\n */\nexport function inflateXKT(xktDataDeflated: XKTDataDeflated): XKTData {\n\n function inflate(array: any, options?: any) : Buffer{\n // @ts-ignore\n return (array.length === 0) ? [] : pako.inflate(array, options).buffer;\n }\n\n\n return {\n metadata: JSON.parse(pako.inflate(xktDataDeflated.metadata, {to: 'string'})),\n textureData: new Uint8Array(inflate(xktDataDeflated.textureData)), // <<----------------------------- ??? ZIPPing to blame?\n eachTextureDataPortion: new Uint32Array(inflate(xktDataDeflated.eachTextureDataPortion)),\n eachTextureAttributes: new Uint16Array(inflate(xktDataDeflated.eachTextureAttributes)),\n positions: new Uint16Array(inflate(xktDataDeflated.positions)),\n normals: new Int8Array(inflate(xktDataDeflated.normals)),\n colors: new Uint8Array(inflate(xktDataDeflated.colors)),\n uvs: new Float32Array(inflate(xktDataDeflated.uvs)),\n indices: new Uint32Array(inflate(xktDataDeflated.indices)),\n edgeIndices: new Uint32Array(inflate(xktDataDeflated.edgeIndices)),\n eachTextureSetTextures: new Int32Array(inflate(xktDataDeflated.eachTextureSetTextures)),\n matrices: new Float32Array(inflate(xktDataDeflated.matrices)),\n reusedGeometriesDecodeMatrix: new Float32Array(inflate(xktDataDeflated.reusedGeometriesDecodeMatrix)),\n eachGeometryPrimitiveType: new Uint8Array(inflate(xktDataDeflated.eachGeometryPrimitiveType)),\n eachGeometryPositionsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryPositionsPortion)),\n eachGeometryNormalsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryNormalsPortion)),\n eachGeometryColorsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryColorsPortion)),\n eachGeometryUVsPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryUVsPortion)),\n eachGeometryIndicesPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryIndicesPortion)),\n eachGeometryEdgeIndicesPortion: new Uint32Array(inflate(xktDataDeflated.eachGeometryEdgeIndicesPortion)),\n eachMeshGeometriesPortion: new Uint32Array(inflate(xktDataDeflated.eachMeshGeometriesPortion)),\n eachMeshMatricesPortion: new Uint32Array(inflate(xktDataDeflated.eachMeshMatricesPortion)),\n eachMeshTextureSet: new Int32Array(inflate(xktDataDeflated.eachMeshTextureSet)), // Can be -1\n eachMeshMaterialAttributes: new Uint8Array(inflate(xktDataDeflated.eachMeshMaterialAttributes)),\n eachEntityId: JSON.parse(pako.inflate(xktDataDeflated.eachEntityId, {to: 'string'})),\n eachEntityMeshesPortion: new Uint32Array(inflate(xktDataDeflated.eachEntityMeshesPortion)),\n eachTileAABB: new Float64Array(inflate(xktDataDeflated.eachTileAABB)),\n eachTileEntitiesPortion: new Uint32Array(inflate(xktDataDeflated.eachTileEntitiesPortion)),\n };\n}\n", "import type {XKTDataDeflated} from \"./XKTDataDeflated\";\n\n/**\n * @private\n */\nexport function unpackXKT(arrayBuffer: ArrayBuffer): XKTDataDeflated {\n\n const dataView = new DataView(arrayBuffer);\n const dataArray = new Uint8Array(arrayBuffer);\n const xktVersion = dataView.getUint32(0, true);\n const numElements = dataView.getUint32(4, true);\n\n console.log(`Parsing XKT v${xktVersion}`)\n const elements = [];\n let byteOffset = (numElements + 2) * 4;\n for (let i = 0; i < numElements; i++) {\n const elementSize = dataView.getUint32((i + 2) * 4, true);\n elements.push(dataArray.subarray(byteOffset, byteOffset + elementSize));\n byteOffset += elementSize;\n }\n\n let i = 0;\n\n return {\n metadata: elements[i++],\n textureData: elements[i++],\n eachTextureDataPortion: elements[i++],\n eachTextureAttributes: elements[i++],\n positions: elements[i++],\n normals: elements[i++],\n colors: elements[i++],\n uvs: elements[i++],\n indices: elements[i++],\n edgeIndices: elements[i++],\n eachTextureSetTextures: elements[i++],\n matrices: elements[i++],\n reusedGeometriesDecodeMatrix: elements[i++],\n eachGeometryPrimitiveType: elements[i++],\n eachGeometryPositionsPortion: elements[i++],\n eachGeometryNormalsPortion: elements[i++],\n eachGeometryColorsPortion: elements[i++],\n eachGeometryUVsPortion: elements[i++],\n eachGeometryIndicesPortion: elements[i++],\n eachGeometryEdgeIndicesPortion: elements[i++],\n eachMeshGeometriesPortion: elements[i++],\n eachMeshMatricesPortion: elements[i++],\n eachMeshTextureSet: elements[i++],\n eachMeshMaterialAttributes: elements[i++],\n eachEntityId: elements[i++],\n eachEntityMeshesPortion: elements[i++],\n eachTileAABB: elements[i++],\n eachTileEntitiesPortion: elements[i++],\n };\n}\n", "import {\n LinesPrimitive,\n PointsPrimitive,\n SolidPrimitive,\n SurfacePrimitive,\n JPEGMediaType,\n PNGMediaType\n} from \"@xeokit/constants\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport type {XKTData} from \"./XKTData\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createVec3, createVec4} from \"@xeokit/matrix\";\nimport {createAABB3, getAABB3Center} from \"@xeokit/boundaries\";\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\nconst NUM_TEXTURE_ATTRIBUTES = 9;\n\nfunction lineStripToLines(positions, indices) {\n const linesIndices = [];\n if (indices.length > 1) {\n for (let i = 0, len = indices.length - 1; i < len; i++) {\n linesIndices.push(indices[i]);\n linesIndices.push(indices[i + 1]);\n }\n } else if (positions.length > 1) {\n for (let i = 0, len = (positions.length / 3) - 1; i < len; i++) {\n linesIndices.push(i);\n linesIndices.push(i + 1);\n }\n }\n return linesIndices;\n}\n\nconst decompressColor = (function () {\n const floatColor = new Float32Array(3);\n return function (intColor: FloatArrayParam) {\n floatColor[0] = intColor[0] / 255;\n floatColor[1] = intColor[1] / 255;\n floatColor[2] = intColor[2] / 255;\n return floatColor;\n };\n})();\n\n/**\n * @private\n */\nexport function xktToModel(params: {\n xktData: XKTData,\n sceneModel: SceneModel\n}): void {\n\n let nextId = 0;\n\n const getNextId = () => {\n return `${nextId++}`;\n };\n\n const xktData = params.xktData;\n const sceneModel = params.sceneModel;\n\n const modelPartId = getNextId();\n\n // const metadata = xktData.metadata;\n const textureData = xktData.textureData;\n const eachTextureDataPortion = xktData.eachTextureDataPortion;\n const eachTextureAttributes = xktData.eachTextureAttributes;\n const positions = xktData.positions;\n const normals = xktData.normals;\n const colors = xktData.colors;\n const uvs = xktData.uvs;\n const indices = xktData.indices;\n const edgeIndices = xktData.edgeIndices;\n const eachTextureSetTextures = xktData.eachTextureSetTextures;\n const matrices = xktData.matrices;\n const reusedGeometriesDecodeMatrix = xktData.reusedGeometriesDecodeMatrix;\n const eachGeometryPrimitiveType = xktData.eachGeometryPrimitiveType;\n const eachGeometryPositionsPortion = xktData.eachGeometryPositionsPortion;\n const eachGeometryNormalsPortion = xktData.eachGeometryNormalsPortion;\n const eachGeometryColorsPortion = xktData.eachGeometryColorsPortion;\n const eachGeometryUVsPortion = xktData.eachGeometryUVsPortion;\n const eachGeometryIndicesPortion = xktData.eachGeometryIndicesPortion;\n const eachGeometryEdgeIndicesPortion = xktData.eachGeometryEdgeIndicesPortion;\n const eachMeshGeometriesPortion = xktData.eachMeshGeometriesPortion;\n const eachMeshMatricesPortion = xktData.eachMeshMatricesPortion;\n const eachMeshTextureSet = xktData.eachMeshTextureSet;\n const eachMeshMaterialAttributes = xktData.eachMeshMaterialAttributes;\n const eachEntityId = xktData.eachEntityId;\n const eachEntityMeshesPortion = xktData.eachEntityMeshesPortion;\n const eachTileAABB = xktData.eachTileAABB;\n const eachTileEntitiesPortion = xktData.eachTileEntitiesPortion;\n\n const numTextures = eachTextureDataPortion.length;\n const numTextureSets = eachTextureSetTextures.length / 5;\n const numGeometries = eachGeometryPositionsPortion.length;\n const numMeshes = eachMeshGeometriesPortion.length;\n const numEntities = eachEntityMeshesPortion.length;\n const numTiles = eachTileEntitiesPortion.length;\n\n // if (metaModel) {\n // metaModel.loadData(metadata, {\n // includeTypes: options.includeTypes,\n // excludeTypes: options.excludeTypes,\n // globalizeObjectIds: options.globalizeObjectIds\n // }); // Can be empty\n // }\n\n // Create textures\n\n for (let textureIndex = 0; textureIndex < numTextures; textureIndex++) {\n const atLastTexture = (textureIndex === (numTextures - 1));\n const textureDataPortionStart = eachTextureDataPortion[textureIndex];\n const textureDataPortionEnd = atLastTexture ? textureData.length : (eachTextureDataPortion[textureIndex + 1]);\n\n const textureDataPortionSize = textureDataPortionEnd - textureDataPortionStart;\n const textureDataPortionExists = (textureDataPortionSize > 0);\n\n const textureAttrBaseIdx = (textureIndex * NUM_TEXTURE_ATTRIBUTES);\n\n const compressed = (eachTextureAttributes[textureAttrBaseIdx + 0] === 1);\n const mediaType = eachTextureAttributes[textureAttrBaseIdx + 1];\n const width = eachTextureAttributes[textureAttrBaseIdx + 2];\n const height = eachTextureAttributes[textureAttrBaseIdx + 3];\n const minFilter = eachTextureAttributes[textureAttrBaseIdx + 4];\n const magFilter = eachTextureAttributes[textureAttrBaseIdx + 5]; // LinearFilter | NearestFilter\n const wrapS = eachTextureAttributes[textureAttrBaseIdx + 6]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n const wrapT = eachTextureAttributes[textureAttrBaseIdx + 7]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n const wrapR = eachTextureAttributes[textureAttrBaseIdx + 8]; // ClampToEdgeWrapping | MirroredRepeatWrapping | RepeatWrapping\n\n if (textureDataPortionExists) {\n\n const imageDataSubarray = new Uint8Array(textureData.subarray(textureDataPortionStart, textureDataPortionEnd));\n const arrayBuffer = imageDataSubarray.buffer;\n const textureId = `${modelPartId}-texture-${textureIndex}`;\n\n if (compressed) {\n\n sceneModel.createTexture({\n id: textureId,\n buffers: [arrayBuffer],\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR\n });\n\n } else {\n\n const mimeType = mediaType === JPEGMediaType ? \"image/jpeg\" : (mediaType === PNGMediaType ? \"image/png\" : \"image/gif\");\n const blob = new Blob([arrayBuffer], {type: mimeType});\n const urlCreator = window.URL || window.webkitURL;\n const imageUrl = urlCreator.createObjectURL(blob);\n const img = document.createElement('img');\n img.src = imageUrl;\n\n sceneModel.createTexture({\n id: textureId,\n image: img,\n //mediaType,\n minFilter,\n magFilter,\n wrapS,\n wrapT,\n wrapR\n });\n }\n }\n }\n\n // Create texture sets\n\n for (let textureSetIndex = 0; textureSetIndex < numTextureSets; textureSetIndex++) {\n const eachTextureSetTexturesIndex = textureSetIndex * 5;\n const textureSetId = `${modelPartId}-textureSet-${textureSetIndex}`;\n const colorTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 0];\n const metallicRoughnessTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 1];\n const normalsTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 2];\n const emissiveTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 3];\n const occlusionTextureIndex = eachTextureSetTextures[eachTextureSetTexturesIndex + 4];\n sceneModel.createTextureSet({\n id: textureSetId,\n colorTextureId: colorTextureIndex >= 0 ? `${modelPartId}-texture-${colorTextureIndex}` : null,\n normalsTextureId: normalsTextureIndex >= 0 ? `${modelPartId}-texture-${normalsTextureIndex}` : null,\n metallicRoughnessTextureId: metallicRoughnessTextureIndex >= 0 ? `${modelPartId}-texture-${metallicRoughnessTextureIndex}` : null,\n emissiveTextureId: emissiveTextureIndex >= 0 ? `${modelPartId}-texture-${emissiveTextureIndex}` : null,\n occlusionTextureId: occlusionTextureIndex >= 0 ? `${modelPartId}-texture-${occlusionTextureIndex}` : null\n });\n }\n\n // Count instances of each geometry\n\n const geometryReuseCounts = new Uint32Array(numGeometries);\n\n for (let meshIndex = 0; meshIndex < numMeshes; meshIndex++) {\n const geometryIndex = eachMeshGeometriesPortion[meshIndex];\n if (geometryReuseCounts[geometryIndex] !== undefined) {\n geometryReuseCounts[geometryIndex]++;\n } else {\n geometryReuseCounts[geometryIndex] = 1;\n }\n }\n\n // Iterate over tiles\n\n const tileCenter = createVec3();\n const rtcAABB = createAABB3();\n\n const geometryArraysCache = {};\n\n for (let tileIndex = 0; tileIndex < numTiles; tileIndex++) {\n\n const lastTileIndex = (numTiles - 1);\n\n const atLastTile = (tileIndex === lastTileIndex);\n\n const firstTileEntityIndex = eachTileEntitiesPortion [tileIndex];\n const lastTileEntityIndex = atLastTile ? (numEntities - 1) : (eachTileEntitiesPortion[tileIndex + 1] - 1);\n\n const tileAABBIndex = tileIndex * 6;\n const tileAABB = eachTileAABB.subarray(tileAABBIndex, tileAABBIndex + 6);\n\n getAABB3Center(tileAABB, tileCenter);\n\n rtcAABB[0] = tileAABB[0] - tileCenter[0];\n rtcAABB[1] = tileAABB[1] - tileCenter[1];\n rtcAABB[2] = tileAABB[2] - tileCenter[2];\n rtcAABB[3] = tileAABB[3] - tileCenter[0];\n rtcAABB[4] = tileAABB[4] - tileCenter[1];\n rtcAABB[5] = tileAABB[5] - tileCenter[2];\n\n const geometryCreatedInTile = {};\n\n // Iterate over each tile's entities\n\n for (let tileEntityIndex = firstTileEntityIndex; tileEntityIndex <= lastTileEntityIndex; tileEntityIndex++) {\n\n const xktEntityId = eachEntityId[tileEntityIndex];\n\n const entityId = xktEntityId;\n\n const finalTileEntityIndex = (numEntities - 1);\n const atLastTileEntity = (tileEntityIndex === finalTileEntityIndex);\n const firstMeshIndex = eachEntityMeshesPortion [tileEntityIndex];\n const lastMeshIndex = atLastTileEntity ? (eachMeshGeometriesPortion.length - 1) : (eachEntityMeshesPortion[tileEntityIndex + 1] - 1);\n\n const meshIds = [];\n\n // Iterate each entity's meshes\n\n for (let meshIndex = firstMeshIndex; meshIndex <= lastMeshIndex; meshIndex++) {\n\n const geometryIndex = eachMeshGeometriesPortion[meshIndex];\n const geometryReuseCount = geometryReuseCounts[geometryIndex];\n const isReusedGeometry = (geometryReuseCount > 1);\n\n const atLastGeometry = (geometryIndex === (numGeometries - 1));\n\n const textureSetIndex = eachMeshTextureSet[meshIndex];\n\n const textureSetId = (textureSetIndex >= 0) ? `${modelPartId}-textureSet-${textureSetIndex}` : null;\n\n const meshColor = decompressColor(eachMeshMaterialAttributes.subarray((meshIndex * 6), (meshIndex * 6) + 3));\n const meshOpacity = eachMeshMaterialAttributes[(meshIndex * 6) + 3] / 255.0;\n const meshMetallic = eachMeshMaterialAttributes[(meshIndex * 6) + 4] / 255.0;\n const meshRoughness = eachMeshMaterialAttributes[(meshIndex * 6) + 5] / 255.0;\n\n const meshId = getNextId();\n\n if (isReusedGeometry) {\n\n // Create mesh for multi-use geometry - create (or reuse) geometry, create mesh using that geometry\n\n const meshMatrixIndex = eachMeshMatricesPortion[meshIndex];\n const meshMatrix = matrices.slice(meshMatrixIndex, meshMatrixIndex + 16);\n\n const geometryId = `${modelPartId}-geometry.${tileIndex}.${geometryIndex}`; // These IDs are local to the SceneModel\n\n let geometryArrays = geometryArraysCache[geometryId];\n\n if (!geometryArrays) {\n geometryArrays = {};\n const primitiveType = eachGeometryPrimitiveType[geometryIndex];\n let geometryValid = false;\n switch (primitiveType) {\n case 0:\n geometryArrays.primitiveName = SolidPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryArrays.geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryArrays.geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 1:\n geometryArrays.primitiveName = SurfacePrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryArrays.geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryArrays.geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 2:\n geometryArrays.primitiveName = PointsPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryColors = colors.subarray(eachGeometryColorsPortion [geometryIndex], atLastGeometry ? colors.length : eachGeometryColorsPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0);\n break;\n case 3:\n geometryArrays.primitiveName = LinesPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n case 4:\n geometryArrays.primitiveName = LinesPrimitive;\n geometryArrays.geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryArrays.geometryIndices = lineStripToLines(\n geometryArrays.geometryPositions,\n indices.subarray(eachGeometryIndicesPortion [geometryIndex],\n atLastGeometry\n ? indices.length\n : eachGeometryIndicesPortion [geometryIndex + 1]));\n geometryValid = (geometryArrays.geometryPositions.length > 0 && geometryArrays.geometryIndices.length > 0);\n break;\n default:\n continue;\n }\n\n if (!geometryValid) {\n geometryArrays = null;\n }\n }\n\n if (geometryArrays) {\n\n if (!geometryCreatedInTile[geometryId]) {\n\n sceneModel.createGeometryCompressed({\n id: geometryId,\n primitive: geometryArrays.primitiveName,\n positionsCompressed: geometryArrays.geometryPositions,\n uvsCompressed: geometryArrays.geometryUVs,\n colorsCompressed: geometryArrays.geometryColors,\n indices: geometryArrays.geometryIndices,\n edgeIndices: geometryArrays.geometryEdgeIndices,\n\n aabb: rtcAABB\n });\n\n geometryCreatedInTile[geometryId] = true;\n }\n\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n textureSetId,\n matrix: meshMatrix,\n color: meshColor,\n opacity: meshOpacity,\n\n ///////////////////////////////////\n // Adjust matrix?\n /////////////////////////////////////\n // origin: tileCenter\n });\n\n meshIds.push(meshId);\n }\n\n } else { // Do not reuse geometry\n\n const primitiveType = eachGeometryPrimitiveType[geometryIndex];\n\n let primitiveName;\n let geometryPositions;\n let geometryNormals;\n let geometryUVs;\n let geometryColors;\n let geometryIndices;\n let geometryEdgeIndices;\n let geometryValid = false;\n\n switch (primitiveType) {\n case 0:\n primitiveName = SolidPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 1:\n primitiveName = SurfacePrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryNormals = normals.subarray(eachGeometryNormalsPortion [geometryIndex], atLastGeometry ? normals.length : eachGeometryNormalsPortion [geometryIndex + 1]);\n geometryUVs = uvs.subarray(eachGeometryUVsPortion [geometryIndex], atLastGeometry ? uvs.length : eachGeometryUVsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryEdgeIndices = edgeIndices.subarray(eachGeometryEdgeIndicesPortion [geometryIndex], atLastGeometry ? edgeIndices.length : eachGeometryEdgeIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 2:\n primitiveName = PointsPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryColors = colors.subarray(eachGeometryColorsPortion [geometryIndex], atLastGeometry ? colors.length : eachGeometryColorsPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0);\n break;\n case 3:\n primitiveName = LinesPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryIndices = indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry ? indices.length : eachGeometryIndicesPortion [geometryIndex + 1]);\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n case 4:\n primitiveName = LinesPrimitive;\n geometryPositions = positions.subarray(eachGeometryPositionsPortion [geometryIndex], atLastGeometry ? positions.length : eachGeometryPositionsPortion [geometryIndex + 1]);\n geometryIndices = lineStripToLines(\n geometryPositions,\n indices.subarray(eachGeometryIndicesPortion [geometryIndex], atLastGeometry\n ? indices.length\n : eachGeometryIndicesPortion [geometryIndex + 1]));\n geometryValid = (geometryPositions.length > 0 && geometryIndices.length > 0);\n break;\n default:\n continue;\n }\n\n if (geometryValid) {\n\n const geometryId = getNextId();\n\n sceneModel.createGeometryCompressed({\n id: geometryId,\n primitive: primitiveName,\n positionsCompressed: geometryPositions,\n uvsCompressed: geometryUVs && geometryUVs.length > 0 ? geometryUVs : null,\n colorsCompressed: geometryColors,\n indices: geometryIndices,\n edgeIndices: geometryEdgeIndices,\n aabb: rtcAABB\n });\n\n sceneModel.createMesh({\n id: meshId,\n geometryId,\n textureSetId,\n origin: tileCenter,\n color: meshColor,\n opacity: meshOpacity\n });\n meshIds.push(meshId);\n }\n }\n }\n\n if (meshIds.length > 0) {\n\n sceneModel.createObject({\n id: entityId,\n meshIds: meshIds\n });\n }\n }\n }\n}\n\n\n\n", "import {inflateXKT} from \"./inflateXKT\";\nimport {unpackXKT} from \"./unpackXKT\";\nimport {SceneModel} from \"@xeokit/scene\";\nimport {SDKError} from \"@xeokit/core\";\nimport {xktToModel} from \"./xktToModel\";\n\nexport function parseXKTv10(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n xktToModel({\n xktData: inflateXKT(unpackXKT(fileData)),\n sceneModel\n });\n return Promise.resolve();\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {SceneModel} from \"@xeokit/scene\";\nimport {parseXKTv10} from \"./versions/v10/parseXKT\"\n\nconst parsers = {\n 10: parseXKTv10\n};\n\n/**\n * Imports [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data from an ArrayBuffer\n * into a {@link @xeokit/scene!SceneModel | SceneModel}.\n *\n * * Expects {@link @xeokit/scene!SceneModel.built | SceneModel.built} and\n * {@link @xeokit/scene!SceneModel.destroyed | SceneModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/xkt\" | @xeokit/xkt} for usage.\n *\n * See {@link @xeokit/xkt!XKTData} for insights into the structure of a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data\n * @param params.sceneModel - SceneModel to load into.\n * @returns {Promise} Resolves when [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the SceneModel has already been destroyed.\n * * If the SceneModel has already been built.\n */\nexport function loadXKT(params: {\n fileData: ArrayBuffer;\n sceneModel: SceneModel;\n}): Promise {\n const {fileData, sceneModel} = params;\n if (sceneModel.destroyed) {\n return Promise.reject(new SDKError(\"SceneModel already destroyed\"));\n }\n if (sceneModel.built) {\n return Promise.reject(new SDKError(\"SceneModel already built\"));\n }\n return parseXKTv10(params);\n}\n", "import {SDKError} from \"@xeokit/core\";\nimport type {DataModel} from \"@xeokit/data\";\nimport {IfcRelAggregates, ifcTypeCodes} from \"@xeokit/ifctypes\";\n\n\n/**\n * Imports [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) metadata\n * into a {@link @xeokit/scene!DataModel | DataModel}.\n *\n * * Expects {@link @xeokit/scene!DataModel.built | DataModel.built} and\n * {@link @xeokit/scene!DataModel.destroyed | DataModel.destroyed} to be ````false````\n *\n * See {@link \"@xeokit/xkt\" | @xeokit/xkt} for usage.\n *\n * @param params - Loading parameters.\n * @param params.fileData - [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file data\n * @param params.dataModel - DataModel to load into.\n * @returns {Promise} Resolves when metadata has been loaded.\n * @throws *{@link @xeokit/core!SDKError | SDKError}*\n * * If the DataModel has already been destroyed.\n * * If the DataModel has already been built.\n */\nexport function loadMetamodel(params: {\n fileData: any;\n dataModel: DataModel;\n}): Promise {\n if (!params) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Argument expected: params\"));\n }\n const {fileData, dataModel} = params;\n if (!fileData) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Parameter expected: params.fileData\"));\n }\n if (!dataModel) {\n return Promise.reject(new SDKError(\"[loadXKTMetaData] Parameter expected: params.dataModel\"));\n }\n if (dataModel.destroyed) {\n return Promise.reject(new SDKError(\"DataModel already destroyed\"));\n }\n if (dataModel.built) {\n return Promise.reject(new SDKError(\"DataModel already built\"));\n }\n //////////////////////////////////\n // TODO: Property set decompression\n //////////////////////////////////\n if (fileData.propertySets) {\n for (let i = 0, len = fileData.propertySets.length; i < len; i++) {\n const propertySetData = fileData.propertySets[i];\n if (!propertySetData.properties) { // HACK: https://github.com/Creoox/creoox-ifc2gltfcxconverter/issues/8\n propertySetData.properties = [];\n }\n let propertySet = dataModel.propertySets[propertySetData.id];\n if (!propertySet) {\n dataModel.createPropertySet({\n id: propertySetData.id,\n type: propertySetData.type,\n name: propertySetData.name,\n\n /////////////////////////////////////////\n // FIXME: Properties not translated right here\n /////////////////////////////////////////\n\n properties: propertySetData.properties\n });\n }\n }\n }\n if (fileData.metaObjects) {\n for (let i = 0, len = fileData.metaObjects.length; i < len; i++) {\n const metaObjectData = fileData.metaObjects[i];\n const id = metaObjectData.id;\n\n let dataObject = dataModel.objects[id];\n if (!dataObject) {\n const originalSystemId = metaObjectData.originalSystemId;\n const propertySetIds = metaObjectData.propertySets || metaObjectData.propertySetIds;\n const type = ifcTypeCodes[metaObjectData.type];\n dataModel.createObject({\n id,\n originalSystemId,\n type,\n name: metaObjectData.name,\n propertySetIds\n });\n if (metaObjectData.parent) {\n dataModel.createRelationship({\n relatingObjectId: metaObjectData.parent,\n relatedObjectId: id,\n type: IfcRelAggregates\n })\n }\n }\n }\n }\n return Promise.resolve();\n}\n", "import {SceneModel} from \"@xeokit/scene\";\nimport {DataModel} from \"@xeokit/data\";\nimport {SDKError} from \"@xeokit/core\";\nimport {loadXKT} from \"./loadXKT\";\nimport {loadMetamodel} from \"@xeokit/metamodel\";\n\n/**\n *\n */\nexport interface XKTManifest {\n xktFiles: string[],\n metaModelFiles?: string []\n}\n\n/**\n *\n * @param params\n */\nexport function loadXKTManifest(params: {\n src?: string,\n manifest?: XKTManifest,\n sceneModel: SceneModel,\n dataModel: DataModel\n}) {\n return new Promise((resolve, reject) => {\n\n if (!params) {\n return reject(new SDKError(\"[loadXKTChunks] Argument expected: params\"));\n }\n\n const sceneModel = params.sceneModel;\n if (!sceneModel) {\n return reject(new SDKError(\"[loadXKTChunks] Parameter expected: sceneModel\"));\n }\n\n const dataModel = params.dataModel;\n if (!params.manifest && !params.src) {\n return reject(new SDKError(\"[loadXKTChunks] Parameter expected: manifest or src\"));\n }\n\n if (params.src) {\n const baseDir = getBaseDirectory(params.src);\n\n fetch(params.src).then(response => {\n response.json().then(manifest => {\n\n const xktFiles = manifest.xktFiles;\n const metaModelFiles = manifest.metaModelFiles;\n\n const loadXKTFiles = (done: () => void) => {\n let i = 0;\n const loadNextXKT = () => {\n if (sceneModel.destroyed) {\n done();\n } else if (i >= xktFiles.length) {\n done();\n } else {\n fetch(`${baseDir}${xktFiles[i]}`).then(response => {\n response.arrayBuffer().then(fileData => {\n loadXKT({\n fileData,\n sceneModel\n }).then(() => {\n i++;\n loadNextXKT();\n }).catch((error) => {\n reject(`[loadXKTChunks] Error loading XKT file: ${error}`);\n })\n });\n });\n }\n }\n loadNextXKT();\n }\n\n const loadMetaModelFiles = (done: () => void) => {\n let i = 0;\n const loadNextMetaModelFile = () => {\n if (dataModel.destroyed) {\n done();\n } else if (i >= metaModelFiles.length) {\n done();\n } else {\n fetch(`${baseDir}${metaModelFiles[i]}`).then(response => {\n response.json().then(fileData => {\n loadMetamodel({\n fileData,\n dataModel\n }).then(() => {\n i++;\n loadNextMetaModelFile();\n }).catch((error) => {\n reject(`[loadXKTChunks] Error loading XKT metadata file: ${error}`);\n })\n });\n });\n }\n }\n loadNextMetaModelFile();\n }\n\n if (xktFiles && metaModelFiles) {\n loadXKTFiles(() => {\n loadMetaModelFiles(() => {\n resolve();\n });\n });\n } else if (xktFiles) {\n loadXKTFiles(() => {\n resolve();\n });\n } else if (metaModelFiles) {\n loadMetaModelFiles(() => {\n resolve();\n });\n } else {\n resolve();\n }\n });\n });\n }\n });\n}\n\n\nfunction getBaseDirectory(filePath) {\n const pathArray = filePath.split('/');\n pathArray.pop(); // Remove the file name or the last segment of the path\n return pathArray.join('/') + '/';\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fviewer.svg)](https://badge.fury.io/js/%40xeokit%2Fviewer)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/viewer/badge)](https://www.jsdelivr.com/package/npm/@xeokit/viewer)\n *\n * \n *\n * # xeokit Scene Viewer\n *\n * ---\n *\n * ### *The SDK's browser-based 3D/2D scene viewer*\n *\n * ---\n *\n * ## Features\n *\n * * Use a {@link @xeokit/viewer!Viewer | Viewer} to interactively view a {@link @xeokit/scene!Scene | Scene} in all major browsers, including mobile.\n * * A Viewer has a {@link @xeokit/viewer!Renderer}, which is a pluggable strategy that adapts the Viewer to use various browser graphics APIs. Currently we have two\n * Renderer implementations:\n * {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and WebGPURenderer.\n * * A Viewer can have multiple {@link @xeokit/viewer!View | Views}, each providing an independently configurable view of the Scene in a separate HTML canvas.\n * * Each View has a {@link @xeokit/viewer!ViewObject} for each of the {@link @xeokit/scene!SceneObject | SceneObjects} in the Scene, which represnts and controls that\n * SceneObject's appearance in the View's canvas.\n * The View creates and destroys its ViewObjects automatically, in order to proxy the SceneObjects.\n * * Each View also has it's own {@link @xeokit/viewer!Camera}, {@link @xeokit/viewer!DirLight | Lights} and {@link @xeokit/viewer!SectionPlane | SectionPlanes}.\n * * Each View can optionally organize its ViewObjects into {@link @xeokit/viewer!ViewLayer | ViewLayers}. These allow us to partition our ViewObjects into\n * different *bins* depending on what they represent in the View, and then conveniently focus our updates (toggle visibility, select, highlight, slice etc.)\n * eon certain bins, exclusively. ViewLayers also allow us to restrict which SceneObjects are renderable in the Viewer's [phycially-based](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#pbr)\n * quality rendering mode. This allows us to disable wasteful quality rendering for objects that are not supposed to appear realistic, such as grids and other 3D helper objects.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNVU1v4jAQ_SuRT7srQKRAgKjiQqXdA6iI7oe0ysVJpsWtY2cdhy2l_Pd1_JEmkK7KJWbemzdj541zRAlPAYUoobgobgh-EDiLWEoEJJJw5q22EdOY95PAXxDeMWKe-QlgKQgQJlAkwMAs94pZmGUiAEuoUj99NpGInZqKTi_BbI9tEo8fVXWngDMQ2Kwpedi5eGEa3FDMwIYoPoBoFV5VEVfZhO4aeW1kValXoVaDWsJ1SdKODv-UmBJ52OrjOMu-1cTz9D0pSEzBbYQqClhop5rQ23SBZ6EasOuEUy7Ii01MKMlzXOvkJHl6-4dxHDd6WepTdH3AATx7ZJw_mVWZWxnBH80RNdKbh-ZEcl54VkXZpfleb4jQZ-mYFeyoegstF2ytjTT7-hrHhRQ4kYtFg_ML4q-rFrG5t7KQPNvUfbuyGZaCPDd3UVm0RpXvaafhtBnWFVz7gwIWLWdoKc35rzWMljGBE4tLQlP3JwW1W3641L40jsIjZoYwQn6E-v2Ffm7rMewA78xUmkcNfLGAKfIurPdnUbN-V-G8tMKrUGivgmp9AZrcsD6wt5imtLZgucosuYACmCw8wrxv39er-uborKGnN3QXQx2J0HAw-EA7rbNc2pvoopDze-jupwtGc34iZoWa2hvVX16R9t34rZA73omcuz9i9Zxcv_b7Z6MTeiTLKWTVCXYxNz8-RF3z5OkdYvO-WXKm3F2PiP4waCO34NbL8M3LQD2kGBkmqfo26fQIyZ2qEaFQLVO4xyVVPlFqiopLye8OLEHhPaYF9FCZp2ru7OesjkJKJBdr-8GrHj2UY4bCI3pGoT-dD4JgOJv644nvj-ejWQ8dUDgKZoPRfDjxx1fB_Go6np166IVzpTocTILJVGGjSTAMRrPxSMv91qAUJZz-AZsUb1U?type=png)](https://mermaid.live/edit#pako:eNqNVU1v4jAQ_SuRT7srQKRAgKjiQqXdA6iI7oe0ysVJpsWtY2cdhy2l_Pd1_JEmkK7KJWbemzdj541zRAlPAYUoobgobgh-EDiLWEoEJJJw5q22EdOY95PAXxDeMWKe-QlgKQgQJlAkwMAs94pZmGUiAEuoUj99NpGInZqKTi_BbI9tEo8fVXWngDMQ2Kwpedi5eGEa3FDMwIYoPoBoFV5VEVfZhO4aeW1kValXoVaDWsJ1SdKODv-UmBJ52OrjOMu-1cTz9D0pSEzBbYQqClhop5rQ23SBZ6EasOuEUy7Ii01MKMlzXOvkJHl6-4dxHDd6WepTdH3AATx7ZJw_mVWZWxnBH80RNdKbh-ZEcl54VkXZpfleb4jQZ-mYFeyoegstF2ytjTT7-hrHhRQ4kYtFg_ML4q-rFrG5t7KQPNvUfbuyGZaCPDd3UVm0RpXvaafhtBnWFVz7gwIWLWdoKc35rzWMljGBE4tLQlP3JwW1W3641L40jsIjZoYwQn6E-v2Ffm7rMewA78xUmkcNfLGAKfIurPdnUbN-V-G8tMKrUGivgmp9AZrcsD6wt5imtLZgucosuYACmCw8wrxv39er-uborKGnN3QXQx2J0HAw-EA7rbNc2pvoopDze-jupwtGc34iZoWa2hvVX16R9t34rZA73omcuz9i9Zxcv_b7Z6MTeiTLKWTVCXYxNz8-RF3z5OkdYvO-WXKm3F2PiP4waCO34NbL8M3LQD2kGBkmqfo26fQIyZ2qEaFQLVO4xyVVPlFqiopLye8OLEHhPaYF9FCZp2ru7OesjkJKJBdr-8GrHj2UY4bCI3pGoT-dD4JgOJv644nvj-ejWQ8dUDgKZoPRfDjxx1fB_Go6np166IVzpTocTILJVGGjSTAMRrPxSMv91qAUJZz-AZsUb1U)\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/viewer\n * ````\n *\n * ## Usage\n *\n * * [Creating a Viewer](#creating-a-viewer)\n * * [Creating a View](#creating-a-view)\n * * [Adding a CameraControl](#adding-a-cameracontrol)\n * * [Creating a SceneModel](#creating-a-scene)\n * * [Showing and Hiding Objects](#showing-and-hiding-objects)\n * * [Highlighting, Selecting and X-Raying Objects](#highlighting-selecting-and-x-raying-objects)\n * * [Creating a Second View](#creating-a-second-view)\n * * [Slicing Objects](#slicing-objects)\n * * [Adding a ViewLayer](#adding-a-viewlayer)\n *\n * ### Creating a Viewer\n *\n * Install these NPM modules:\n *\n * ````bash\n * npm install @xeokit/scene\n * npm install @xeokit/viewer\n * npm install @xeokit/ktx2\n * npm install @xeokit/webglrenderer\n * npm install @xeokit/constants\n * npm install @xeokit/cameracontrol\n * ````\n *\n * In our JavaScript, import the modules:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {TrianglesPrimitive, LinearEncoding, LinearFilter} from \"@xeokit/constants\";\n * import {CameraControl} from \"@xeokit/cameracontrol\";\n * ````\n *\n * Create a {@link @xeokit/scene!Scene | Scene} to hold our scene graph:\n *\n * ````javascript\n * const scene = new Scene();\n * ````\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer} to view our Scene.\n *\n * We'll configured it with\n * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}, which will adapt the Viewer to use the browser's WebGL graphics API.\n * We'll also equip our WebGLRenderer with a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} so we that we can view compressed textures.\n *\n * ````javascript\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderers: new WebGLRenderer({\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional, this is the default\n * transcoderPath: \"./../dist/basis/\" // Optional, defaults to CDN\n * })\n * })\n * });\n * ````\n *\n * ### Creating a View\n *\n * Within our Viewer, create a {@link @xeokit/viewer!View} and arrange its {@link @xeokit/viewer!Camera}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * ### Adding a CameraControl\n *\n * > *See [@xeokit/cameracontrol](/docs/modules/_xeokit_cameracontrol.html)*\n *\n * Add a {@link @xeokit/cameracontrol!CameraControl} to the View, to control the Camera from mouse and touch input:\n *\n * ````javascript\n * const myCameraControl = new CameraControl({\n * view: view1\n * });\n * ````\n *\n * ### Creating a SceneModel\n *\n * > *See [@xeokit/scene](/docs/modules/_xeokit_scene.html)*\n *\n * Our {@link @xeokit/scene!Scene | Scene } contains geometric representations of our models and objects,\n * with materials and textures.\n *\n * Within the Scene, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} that contains a couple\n * of textured {@link @xeokit/scene!SceneModel | SceneObjects}:\n *\n * ````javascript\n * const sceneModel = scene.createModel();\n *\n * sceneModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [202, 202, 202, 200, 202, 202, ...],\n * indices: [0, 1, 2, 0, 2, 3, 4, 5, 6, 4, ...]\n * });\n *\n * sceneModel.createTexture({\n * id: \"myColorTexture\",\n * src: \"myTexture\",\n * encoding: LinearEncoding, // Demo some texture configs\n * magFilter: LinearFilter,\n * minFilter: LinearFilter\n * });\n *\n * sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\"\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh1\",\n * geometryId: \"myGeometry\",\n * textureSetId: \"myTextureSet\"\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh2\",\n * geometryId: \"myGeometry\",\n * textureSetId: \"myTextureSet\"\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject1\",\n * meshIds: [\"myMesh1\"]\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject2\",\n * meshIds: [\"myMesh2\"]\n * });\n *\n * sceneModel.build();\n * ````\n *\n * As soon as we've called {@link @xeokit/scene!SceneModel.build | SceneModel.build}, two new objects appear\n * in the View's canvas.\n *\n * ### Showing and Hiding Objects\n *\n * Hide one of the objects in the View's canvas:\n *\n * ````javascript\n * view1.setObjectsVisible([\"myObject1\"], false);\n * ````\n *\n * Another way to hide the object:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].visible = false;\n * ````\n *\n * Show the object again:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].visible = true;\n * ````\n *\n * ### Highlighting, Selecting and X-Raying Objects\n *\n * The functions for highlighting, selecting, colorizing and X-raying objects work the same as hiding and\n * showing, as just described.\n *\n * Let's highlight the first object in our View:\n *\n * ````javascript\n * view1.objects[\"myObject1\"].highlighted = true;\n * ````\n *\n * ### Creating a Second View\n *\n * A Viewer can have many Views, each providing an independent view of the Scene in a separate\n * HTML canvas. Each View can have a completely different viewpoint, projection, and configuration of which objects\n * are visible, x-rayed, highlighted etc.\n *\n * Create a second View, with a separate canvas, that shows the other object highlighted instead:\n *\n * ```` javascript\n * const view2 = myViewer.createView({\n * id: \"myView2\",\n * elementId: \"myView2\"\n * });\n *\n * view2.camera.eye = [-3.933, 2.855, 27.018];\n * view2.camera.look = [4.400, 3.724, 8.899];\n * view2.camera.up = [-0.018, 0.999, 0.039];\n *\n * view2.objects[\"myObject1\"].highlighted = true;\n * ````\n *\n * To show an independent view of {@link @xeokit/scene!SceneModel | SceneObjects}, a View\n * proxies them with {@link @xeokit/viewer!ViewObject | ViewObjects}, which represent and control their appearance within the View's canvas.\n *\n * ### Slicing Objects\n *\n * Each View can have an unlimited number of interactive {@link SectionPlane | SectionPlanes}, with which we can use to slice open objects\n * to view interior structures.\n *\n * Create a couple of SectionPlanes within our second View, to slice through one of our\n * objects, then adjust the direction of one of the SectionPlanes:\n *\n * ````javascript\n * const mySlice1 = view2.createSlice({\n * id: \"mySlice1\",\n * pos: [0,0,0],\n * dir: [-1,-1,-1]\n * });\n *\n * const mySlice2 = view2.createSlice({\n * id: \"mySlice2\",\n * pos: [0,0,0],\n * dir: [1,1,.5]\n * });\n *\n * mySlice1.dir = [1,1,1];\n * ````\n *\n * ### Adding a ViewLayer\n *\n * Sometimes we want to create SceneModels whose objects will never be included in any BCF viewpoints that we save, and\n * will never be disturbed by any viewpoints that we load.\n *\n * An example of such a case is a skybox, which we'd never want included in any BCF viewpoints, or hidden\n * whenever we load a BCF viewpoint.\n *\n * TODO TODO TODO TODO\n *\n * ````javascript\n * const environmentViewLayer = view.createLayer({\n * id: \"myEnviromentViewLayer\"\n * });\n * ````\n *\n * Now we'll create a SceneModel for our skybox in that ViewLayer:\n *\n * ````javascript\n * const skyboxSceneModel = myVScene.createModel({\n * id: \"mySkyBox\",\n * layerId: \"myEnviromentViewLayer\"\n * });\n *\n * skyboxSceneModel.createObject({\n * id: \"skyBox\",\n * //...\n * });\n *\n * skyboxSceneModel.build();\n * ````\n *\n * Now we can save that View as a BCF viewpoint that will never include our skybox objects:\n *\n * ````javascript\n * const bcfViewpointAgain = saveBCFViewpoint({\n * view: view2,\n * excludeLayerIds: [\"myEnviromentViewLayer\"]\n * });\n * ````\n *\n * We can also load that viewpoint back into our View, in a way that won't disrupt our skybox:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint: bcfViewpointAgain\n * view: view2,\n * excludeLayerIds: [\"myEnvironmentViewLayer\"]\n * });\n * ````\n *\n * ````javascript\n * myViewer.viewModes.createViewMode({\n * id: \"qualityViewMode\"\n * });\n *\n * myViewer.viewModes.createViewMode({\n * id: \"navigationViewMode\"\n * });\n *\n * environmentViewLayer.setViewModes([\"qualityViewMode\"]};\n *\n * myViewer.viewModes.setActiveViewMode(\"quality\");\n * ````\n *\n * @module @xeokit/viewer\n */\nexport * from \"./Viewer\";\nexport * from \"./ViewParams\";\nexport * from \"./Renderer\";\nexport * from \"./Camera\";\nexport * from \"./Projection\";\nexport * from \"./FrustumProjection\";\nexport * from \"./OrthoProjection\";\nexport * from \"./PerspectiveProjection\";\nexport * from \"./CustomProjection\";\nexport * from \"./CameraFlightAnimation\";\nexport * from \"./AmbientLight\";\nexport * from \"./DirLight\";\nexport * from \"./PointLight\";\nexport * from \"./EmphasisMaterial\";\nexport * from \"./Edges\";\nexport * from \"./PointsMaterial\";\nexport * from \"./LinesMaterial\";\nexport * from \"./Metriqs\";\nexport * from \"./View\";\nexport * from \"./ViewLayer\";\nexport * from \"./ViewObject\";\nexport * from \"./SectionPlane\";\nexport * from \"./SectionPlaneParams\";\nexport * from \"./SAO\";\nexport * from \"./PickParams\";\nexport * from \"./PickResult\";\nexport * from \"./ViewLayerParams\";\nexport * from \"./ResolutionScale\";\nexport * from \"./Texturing\";\nexport * from \"./TickParams\";\nexport * from \"./SnapshotParams\";\nexport * from \"./SnapshotResult\";\n", "import {apply, createUUID, inQuotes} from \"@xeokit/utils\";\nimport {type Capabilities, Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {Scene, SceneModel} from \"@xeokit/scene\";\n\nimport {View} from \"./View\";\nimport {scheduler} from \"./scheduler\";\nimport type {Renderer} from \"./Renderer\";\n\nimport type {ViewParams} from \"./ViewParams\";\nimport type {TickParams} from \"./TickParams\";\n\n/**\n * A Browser-based 2D/3D model viewer.\n *\n * See {@link \"@xeokit/viewer\" | @xeokit/viewer} for usage.\n */\nexport class Viewer extends Component {\n\n /**\n * ID of this Viewer.\n */\n declare readonly id: string;\n\n /**\n * True once this Viewer has been destroyed.\n *\n * Don't use this Viewer if this is ````false````.\n */\n declare readonly destroyed: boolean;\n\n /**\n * Indicates the capabilities of this Viewer.\n */\n readonly capabilities: Capabilities;\n\n /**\n * Emits an event each time a message is logged.\n *\n * @event\n */\n readonly onLog: EventEmitter;\n\n /**\n * Emits an event each time a Viewer \"tick\" occurs (~10-60 times per second).\n *\n * @event\n */\n readonly onTick: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!View} is created.\n *\n * @event\n */\n readonly onViewCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!View} is destroyed.\n *\n * @event\n */\n readonly onViewDestroyed: EventEmitter;\n\n /**\n * The Viewer's scene representation.\n *\n * The {@link @xeokit/scene!SceneModel | SceneModels} is the container of {@link @xeokit/scene!SceneModel | SceneModels}\n * and {@link @xeokit/scene!SceneObject | SceneObjects}, which contain the geometry and materials for models currently\n * loaded in the Viewer.\n */\n readonly scene: Scene;\n\n /**\n * Map of all the Views in this Viewer.\n *\n * Each {@link @xeokit/viewer!View} is mapped here against {@link @xeokit/viewer!View.id | View.id}.\n *\n * Each {@link @xeokit/viewer!View} is an independently configurable view of the Viewer's models, with its own\n * canvas, camera position, section planes, lights, and object visual states.\n */\n readonly views: { [key: string]: View };\n\n /**\n * List of all the Views in this Viewer.\n *\n * Each {@link @xeokit/viewer!View} is an independently configurable view of the Viewer's models, with its own canvas, camera position, section planes, lights, and object visual states.\n *\n * @internal\n */\n readonly viewList: View[];\n\n /**\n * The number of {@link View | Views} belonging to this Viewer.\n *\n * The maxiumum number of Views that a Viewer can have is determined by the {@link Renderer} implementation it was\n * configured with, which is provided in {@link Capabilities.maxViews}.\n */\n numViews: number;\n\n /**\n * The time that this Viewer was created.\n * This is the number of milliseconds since the epoch, which is defined as the midnight at the beginning of January 1, 1970, UTC.\n */\n readonly startTime: number = (new Date()).getTime();\n\n /**\n * The Renderer that this Viewer was configured with via the Viewer's constructor.\n * Th Renderer is only used by the Viewer, and is not intended to for users to use directly. It's provided via this property\n * in order to verify which Render implementation the Viewer is configured with.\n */\n readonly renderer: Renderer;\n\n #tickifiedFunctions: {};\n\n /**\n * Creates a Viewer.\n *\n * @param params - Viewer configuration.\n * @param params.scene - Contains model representations.\n * @param params.renderer - Manages rendering of models.\n * @param params.id - ID for this Viewer, automatically generated by default.\n * @param params.units - The measurement unit type. Accepted values are ````\"meters\"````, ````\"metres\"````, , ````\"centimeters\"````, ````\"centimetres\"````, ````\"millimeters\"````, ````\"millimetres\"````, ````\"yards\"````, ````\"feet\"```` and ````\"inches\"````.\n * @param params.scale - The number of Real-space units in each World-space coordinate system unit.\n * @param params.origin - The Real-space 3D origin, in current measurement units, at which the World-space coordinate origin ````[0,0,0]```` sits.\n * @param params.localeService - Locale-based translation service.\n * @throws SDKError\n * The given Renderer is already attached to some other Viewer.\n */\n constructor(params: {\n scene?: Scene,\n renderer: Renderer,\n id?: string,\n units?: string,\n scale?: number,\n origin?: FloatArrayParam,\n }) {\n super(null, {});\n\n this.id = params.id || createUUID();\n\n if (params.renderer.viewer !== undefined) {\n throw new SDKError(`Failed to create Viewer - the given Renderer is currently attached to another Viewer`);\n }\n\n this.onLog = new EventEmitter(new EventDispatcher());\n this.onTick = new EventEmitter(new EventDispatcher());\n this.onViewCreated = new EventEmitter(new EventDispatcher());\n this.onViewDestroyed = new EventEmitter(new EventDispatcher());\n\n this.viewList = [];\n this.numViews = 0;\n this.views = {};\n this.destroyed = false;\n\n this.capabilities = {\n maxViews: 1,\n headless: false,\n astcSupported: false,\n etc1Supported: false,\n etc2Supported: false,\n dxtSupported: false,\n bptcSupported: false,\n pvrtcSupported: false\n };\n\n this.scene = params.scene || new Scene();\n\n params.renderer.attachViewer(this);\n params.renderer.getCapabilities(this.capabilities);\n\n this.renderer = params.renderer;\n\n this.#tickifiedFunctions = {};\n\n this.scene.onModelCreated.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.renderer.attachSceneModel(sceneModel);\n });\n this.scene.onModelDestroyed.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.renderer.detachSceneModel(sceneModel);\n });\n\n scheduler.registerViewer(this);\n }\n\n /**\n * This method will \"tickify\" the provided `cb` function.\n *\n * This means, the function will be wrapped so:\n *\n * - it runs time-aligned to scene ticks\n * - it runs maximum once per scene-tick\n *\n * @param {Function} cb The function to tickify\n * @returns {Function}\n */\n tickify(cb: any): any {\n let cbString = cb.toString();\n\n /**\n * Check if the function is already tickified, and if so return the cached one.\n */\n if (cbString in this.#tickifiedFunctions) {\n return this.#tickifiedFunctions[cbString].wrapperFunc;\n }\n\n let alreadyRun = 0;\n let needToRun = 0;\n\n let lastArgs;\n\n /**\n * The provided `cb` function is replaced with a \"set-dirty\" function\n *\n * @type {Function}\n */\n const wrapperFunc = function (...args) {\n lastArgs = args;\n needToRun++;\n };\n\n /**\n * An each scene tick, if the \"dirty-flag\" is set, run the `cb` function.\n *\n * This will make it run time-aligned to the scene tick.\n */\n const tickSubId = this.onTick.sub(() => {\n const tmp = needToRun;\n if (tmp > alreadyRun) {\n alreadyRun = tmp;\n cb(...lastArgs);\n }\n });\n\n /**\n * And, store the list of subscribers.\n */\n this.#tickifiedFunctions[cbString] = {tickSubId, wrapperFunc};\n\n return wrapperFunc;\n }\n\n /**\n * Creates a new {@link @xeokit/viewer!View} within this Viewer.\n *\n * * The maximum number of views you're allowed to create is provided in {@link Capabilities.maxViews}. This\n * will be determined by the {@link Renderer} implementation the Viewer is configured with.\n * * To destroy the View after use, call {@link View.destroy}.\n * * You must add a View to the Viewer before you can create or load content into the Viewer's Viewer.\n *\n * ### Usage\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * if (view1 instanceof SDKError) {\n * console.log(view1.message);\n * } else {\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * //...\n * }\n * ````\n *\n * @param params View configuration.\n * @returns *{@link View}*\n * * On success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * If View already exists with the given ID.\n * * Attempted to create too many Views - see {@link Capabilities.maxViews | Capabilities.maxViews}.\n */\n createView(params: ViewParams): View | SDKError {\n if (this.viewList.length >= this.capabilities.maxViews) {\n return new SDKError(`Attempted to create too many Views with View.createView() - maximum of ${this.capabilities.maxViews} is allowed`);\n }\n let viewId = params.id || createUUID();\n if (this.views[viewId]) {\n return new SDKError(`View with ID \"${viewId}\" already exists in this Viewer`);\n }\n // @ts-ignore\n const htmlElement = params.htmlElement || document.getElementById(params.elementId);\n if (!(htmlElement instanceof HTMLElement)) {\n return new SDKError(\"Mandatory View config expected: valid elementId or HTMLElement\");\n }\n const view = new View(apply({viewId, viewer: this}, params));\n {\n const result: void | SDKError = this.renderer.attachView(view);\n if (result instanceof SDKError) {\n this.error(`Failed to create View (id = \"${view.viewId}\"): ${result.message}`);\n return result;\n }\n }\n this.#registerView(view);\n view.onDestroyed.one(() => {\n this.#deregisterView(view);\n this.renderer.detachView(view);\n this.onViewDestroyed.dispatch(this, view);\n });\n // Renderer.attachSceneModel creates RendererObjects in Renderer.rendererObjects,\n // which are then expected by View.initViewObjects\n for (let id in this.scene.models) {\n this.renderer.attachSceneModel(this.scene.models[id]);\n }\n view.initViewObjects();\n this.onViewCreated.dispatch(this, view);\n return view;\n }\n\n /**\n * Trigger redraw of all {@link View | Views} belonging to this Viewer.\n *\n * @private\n */\n redraw(): void {\n for (let viewId in this.views) {\n this.views[viewId].redraw();\n }\n }\n\n /**\n * Logs a console debugging message for this Viewer.\n *\n * The console message will have this format: *````[LOG] [ : ````*\n *\n * @private\n * @param message - The message to log\n */\n log(message: string): void {\n window.console.log(`[LOG] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs a warning for this Viewer to the JavaScript console.\n *\n * The console message will have this format: *````[WARN] [ =: ````*\n *\n * @private\n * @param message - The warning message to log\n */\n warn(message: string): void {\n window.console.warn(`[WARN] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * Logs an error for this Viewer to the JavaScript console.\n *\n * The console message will have this format: *````[ERROR] [ =: ````*\n *\n * @private\n * @param message The error message to log\n */\n error(message: string): void {\n window.console.error(`[ERROR] ${this.#prefixMessageWithID(message)}`);\n }\n\n /**\n * @private\n * @param params\n */\n render(params: any) {\n for (let viewIndex = 0; viewIndex < this.viewList.length; viewIndex++) {\n // console.log(\"this.renderer.render()\");\n // console.log(\"...\");\n this.renderer.render(viewIndex, {force: false});\n }\n }\n\n #prefixMessageWithID(message: string): string {\n return `[${this.constructor.name} \"${inQuotes(this.id)}\"]: ${message}`;\n }\n\n #registerView(view: View): void {\n if (this.views[view.id]) {\n return;\n }\n this.views[view.id] = view;\n for (let viewIndex = 0; ; viewIndex++) {\n if (!this.viewList[viewIndex]) {\n this.viewList[viewIndex] = view;\n this.numViews++;\n view.viewIndex = viewIndex;\n return;\n }\n }\n }\n\n #deregisterView(view: View): void {\n if (!this.views[view.id]) {\n return;\n }\n delete this.views[view.id];\n delete this.viewList[view.viewIndex];\n this.numViews--;\n }\n\n /**\n * Destroys this Viewer.\n */\n destroy(): void {\n if (this.destroyed) {\n return;\n }\n this.renderer.detachViewer();\n scheduler.deregisterViewer(this);\n for (let id in this.views) {\n this.views[id].destroy();\n }\n this.onLog.clear();\n this.onTick.clear();\n this.onViewCreated.clear();\n this.onViewDestroyed.clear();\n super.destroy();\n }\n}\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter, SDKError} from \"@xeokit/core\";\nimport {createUUID} from \"@xeokit/utils\";\nimport {FastRender, QualityRender} from \"@xeokit/constants\";\nimport type {FloatArrayParam, IntArrayParam} from \"@xeokit/math\";\nimport {createVec3} from \"@xeokit/matrix\";\nimport type {Scene, SceneModel} from \"@xeokit/scene\";\n\nimport {ViewObject} from \"./ViewObject\";\nimport {SectionPlane} from \"./SectionPlane\";\nimport type {Viewer} from \"./Viewer\";\nimport {Metrics} from \"./Metriqs\";\nimport {SAO} from \"./SAO\";\nimport {Texturing} from \"./Texturing\";\nimport {LinesMaterial} from \"./LinesMaterial\";\nimport {ViewLayer} from \"./ViewLayer\";\nimport type {ViewLayerParams} from \"./ViewLayerParams\";\nimport type {SectionPlaneParams} from \"./SectionPlaneParams\";\nimport {EmphasisMaterial} from \"./EmphasisMaterial\";\nimport {Edges} from \"./Edges\";\nimport {PointsMaterial} from \"./PointsMaterial\";\nimport {Camera} from \"./Camera\";\nimport type {PointLight} from \"./PointLight\";\nimport {CameraFlightAnimation} from \"./CameraFlightAnimation\";\nimport {AmbientLight} from \"./AmbientLight\";\nimport {DirLight} from \"./DirLight\";\nimport type {RendererObject} from \"@xeokit/scene/src/RendererObject\";\nimport type {PickParams} from \"./PickParams\";\nimport type {PickResult} from \"./PickResult\";\nimport {SnapshotResult} from \"./SnapshotResult\";\nimport type {SnapshotParams} from \"./SnapshotParams\";\nimport {ResolutionScale} from \"./ResolutionScale\";\n\n/**\n * Event that signifies the beginning of a canvas snapshot captured with\n */\nexport interface SnapshotStartedEvent {\n width: number;\n height: number;\n}\n\n/**\n *\n */\nexport interface SnapshotFinishedEvent {\n width: number;\n height: number;\n}\n\n\n/**\n * An independently-configurable view of the models in a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/viewer\" | @xeokit/viewer} for usage.\n *\n * ## Overview\n *\n * A View is an independently-configurable view of the {@link RendererObject | ViewerObjects} existing within a Viewer, with\n * its own HTML canvas. A View automatically contains a {@link @xeokit/viewer!ViewObject} for each existing ViewerObject. ViewObjects\n * function as a kind of proxy for the ViewerObjects, through which we control their appearance\n * (show/hide/highlight etc.) within that particular View's canvas.\n *\n * Using Views, we can essentially have multiple canvases viewing the same model, each canvas perhaps showing a different subset\n * of the objects, with different visual effects, camera position etc.\n *\n * ## Quickstart\n *\n * * Create a View with {@link Viewer.createView}\n * * Control the View's viewpoint and projection with {@link View.camera}\n * * Create light sources with {@link View.createLightSource}\n * * Create slicing planes with {@link View createSectionPlane}\n * * Each View automatically has a {@link @xeokit/viewer!ViewObject} for every {@link RendererObject}\n * * Uses {@link @xeokit/viewer!ViewLayer | ViewLayers} to organize ViewObjects into layers\n * * Optionally uses ViewLayers to mask which ViewObjects are automatically maintained\n * * Control the visibility of ViewObjects with {@link View.setObjectsVisible}\n * * Emphasise ViewObjects with {@link View.setObjectsHighlighted}, {@link View.setObjectsSelected}, {@link View.setObjectsXRayed} and {@link View.setObjectsColorized}\n *\n * ## Examples\n *\n * Create a view in a given canvas, with three objects visible and a couple of object X-rayed (rendered translucent):\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * view1.setObjectsVisible([\"myObject1\", \"myObject2\", \"myObject3\", ...], true);\n * view1.setObjectsXRayed([\"myObject1\", \"myObject\", ...], true);\n * ````\n *\n * Create a second view, using a different canvas, that shows two objects visible, with one of them highlighted:\n *\n * ```` javascript\n * const view2 = myViewer.createView({\n * id: \"myView2\",\n * elementId: \"myView2\"\n * });\n *\n * view2.camera.eye = [-1.4, 1.5, 15.8];\n * view2.camera.look = [4.0, 3.7, 1.8];\n * view2.camera.up = [0.0, 0.9, 0.0];\n *\n * view2.setObjectsVisible([\"myObject1\", \"myObject3\", ...], true);\n * view2.setObjectsHighlighted([\"myObject3\", ...], true);\n * ````\n */\nclass View extends Component {\n\n /**\n ID of this View, unique within the {@link @xeokit/viewer!Viewer | Viewer}.\n */\n declare viewId: string;\n\n /**\n * The Viewer to which this View belongs.\n */\n declare readonly viewer: Viewer;\n\n /**\n * The index of this View in {@link Viewer.viewList}.\n * @private\n */\n viewIndex: number;\n\n /**\n * Manages the Camera for this View.\n */\n readonly camera: Camera;\n\n /**\n * The HTML canvas.\n */\n public htmlElement: HTMLElement;\n\n /**\n * Indicates if this View is transparent.\n */\n public readonly transparent: boolean;\n\n /**\n * Boundary of the canvas in absolute browser window coordinates.\n * Format is ````[xmin, ymin, xwidth, ywidth]````.\n */\n public readonly boundary: number[];\n\n /**\n * Configures Scalable Ambient Obscurance (SAO) for this View.\n */\n readonly sao: SAO;\n\n /**\n * Configures when textures are rendered for this View.\n */\n readonly texturing: Texturing;\n\n /**\n * Flies or jumps the View's {@link @xeokit/viewer!Camera} to given positions.\n */\n readonly cameraFlight: CameraFlightAnimation;\n\n /**\n * Manages measurement units, origin and scale for this View.\n */\n readonly metrics: Metrics;\n\n /**\n * Configures the X-rayed appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly xrayMaterial: EmphasisMaterial;\n\n /**\n * Configures the highlighted appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly highlightMaterial: EmphasisMaterial;\n\n /**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly selectedMaterial: EmphasisMaterial;\n\n /**\n * Configures the appearance of edges belonging to {@link @xeokit/viewer!ViewObject} in this View.\n */\n readonly edges: Edges;\n\n /**\n * Configures resolution scaling for this View.\n */\n readonly resolutionScale: ResolutionScale;\n\n /**\n * Configures the appearance of point primitives belonging to {@link @xeokit/viewer!ViewObject | ViewObjects} in this View .\n */\n readonly pointsMaterial: PointsMaterial;\n\n /**\n * Configures the appearance of lines belonging to {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n readonly linesMaterial: LinesMaterial;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n *\n * The View automatically ensures that there is a {@link @xeokit/viewer!ViewObject} here for\n * each {@link RendererObject} in the {@link @xeokit/viewer!Viewer | Viewer}\n */\n readonly objects: { [key: string]: ViewObject };\n\n /**\n * Map of the currently visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is visible when {@link @xeokit/viewer!ViewObject.visible} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly visibleObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently x-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is x-rayed when {@link @xeokit/viewer!ViewObject.xrayed} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly xrayedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is highlighted when {@link @xeokit/viewer!ViewObject.highlighted} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly highlightedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * A ViewObject is selected when {@link @xeokit/viewer!ViewObject.selected} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly selectedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly colorizedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View whose opacity has been updated.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly opacityObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link SectionPlane}s in this View.\n *\n * Each {@link SectionPlane} is mapped here by {@link SectionPlane.id}.\n */\n readonly sectionPlanes: { [key: string]: SectionPlane };\n\n /**\n * List of {@link SectionPlane}s in this View.\n */\n readonly sectionPlanesList: SectionPlane[] = [];\n\n /**\n * Map of light sources in this View.\n */\n readonly lights: { [key: string]: AmbientLight | PointLight | DirLight };\n\n /**\n * List of light sources in this View.\n */\n readonly lightsList: (AmbientLight | PointLight | DirLight)[] = [];\n\n gammaOutput: boolean;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewLayer}s in this View.\n *\n * Each {@link @xeokit/viewer!ViewLayer} is mapped here by {@link @xeokit/viewer!ViewLayer.id}.\n */\n readonly layers: { [key: string]: ViewLayer };\n\n /**\n * Whether the View will automatically create {@link @xeokit/viewer!ViewLayer | ViewLayers} on-demand\n * as {@link RendererObject | ViewerObjects} are created.\n *\n * When ````true```` (default), the View will automatically create {@link @xeokit/viewer!ViewLayer | ViewLayers} as needed for each new\n * {@link RendererObject.layerId} encountered, including a \"default\" ViewLayer for ViewerObjects that have no\n * layerId. This default setting therefore ensures that a ViewObject is created in the View for every SceneObject that is created.\n *\n * If you set this ````false````, however, then the View will only create {@link @xeokit/viewer!ViewObject | ViewObjects} for {@link RendererObject | ViewerObjects} that have\n * a {@link RendererObject.layerId} that matches the ID of a {@link @xeokit/viewer!ViewLayer} that you have explicitly created previously with {@link View.createLayer}.\n *\n * Setting this parameter false enables Views to contain only the ViewObjects that they actually need to show, i.e. to represent only\n * ViewerObjects that they need to view. This enables a View to avoid wastefully creating and maintaining ViewObjects for ViewerObjects\n * that it never needs to show.\n */\n readonly autoLayers: boolean;\n\n /**\n * Emits an event each time the canvas boundary changes.\n *\n * @event\n */\n readonly onBoundary: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is created in this View.\n *\n * @event\n */\n readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is destroyed in this View.\n *\n * @event\n */\n readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Emits an event each time the visibility of a {@link @xeokit/viewer!ViewObject} changes in this View.\n *\n * ViewObjects are shown and hidden with {@link View.setObjectsVisible}, {@link @xeokit/viewer!ViewLayer.setObjectsVisible} or {@link @xeokit/viewer!ViewObject.visible}.\n *\n * @event\n */\n readonly onObjectVisibility: EventEmitter;\n\n /**\n * Emits an event each time the X-ray state of a {@link @xeokit/viewer!ViewObject} changes in this View.\n *\n * ViewObjects are X-rayed with {@link View.setObjectsXRayed}, {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} or {@link @xeokit/viewer!ViewObject.xrayed}.\n *\n * @event\n */\n readonly onObjectXRayed: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewLayer} is created in this View.\n *\n * Layers are created explicitly with {@link View.createLayer}, or implicitly with {@link View.createModel} and {@link CreateModelParams.layerId}.\n *\n * @event\n */\n readonly onLayerCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewLayer} in this View is destroyed.\n *\n * ViewLayers are destroyed explicitly with {@link @xeokit/viewer!ViewLayer.destroy}, or implicitly when they become empty and {@link View.autoLayers} is false.\n *\n * @event\n */\n readonly onLayerDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a {@link SectionPlane} is created in this View.\n *\n * @event\n */\n readonly onSectionPlaneCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link SectionPlane} in this View is destroyed.\n *\n * @event\n */\n readonly onSectionPlaneDestroyed: EventEmitter;\n\n /**\n * Emits an event each time a snapshot is initiated with {@link View.getSnapshot}.\n *\n * @event\n */\n readonly onSnapshotStarted: EventEmitter;\n\n /**\n * Emits an event each time a snapshot is completed with {@link View.getSnapshot}.\n *\n * @event\n */\n readonly onSnapshotFinished: EventEmitter;\n\n #onTick: () => void;\n\n #renderMode: number = QualityRender;\n\n #backgroundColor: FloatArrayParam;\n #backgroundColorFromAmbientLight: boolean;\n #numObjects: number;\n #objectIds: string[] | null;\n #numVisibleObjects: number;\n #visibleObjectIds: string[] | null;\n #numXRayedObjects: number;\n #xrayedObjectIds: string[] | null;\n #numHighlightedObjects: number;\n #highlightedObjectIds: string[] | null;\n #numSelectedObjects: number;\n #selectedObjectIds: string[] | null;\n #numColorizedObjects: number;\n #colorizedObjectIds: string[] | null;\n #numOpacityObjects: number;\n #opacityObjectIds: string[] | null;\n #qualityRender: boolean;\n #lightsHash: string | null = null;\n #sectionPlanesHash: string | null = null;\n #snapshotBegun: boolean;\n\n /**\n * @private\n */\n constructor(options: {\n viewer: Viewer;\n origin?: number[];\n scale?: number;\n units?: number;\n elementId?: string;\n htmlElement: HTMLElement;\n backgroundColor?: any[];\n backgroundColorFromAmbientLight?: boolean;\n premultipliedAlpha?: boolean;\n transparent?: boolean;\n qualityRender?: boolean;\n autoLayers?: boolean;\n }) {\n super(null, options);\n\n this.viewer = options.viewer;\n\n const canvas =\n options.htmlElement ||\n document.getElementById(options.elementId);\n\n if (!(canvas instanceof HTMLElement)) {\n throw \"Mandatory View config expected: valid HTMLElement\";\n }\n\n this.htmlElement = canvas;\n this.viewIndex = 0;\n this.objects = {};\n this.visibleObjects = {};\n this.xrayedObjects = {};\n this.highlightedObjects = {};\n this.selectedObjects = {};\n this.colorizedObjects = {};\n this.opacityObjects = {};\n this.sectionPlanes = {};\n this.sectionPlanesList = [];\n this.lights = {};\n this.lightsList = [];\n this.layers = {};\n\n this.#numObjects = 0;\n this.#objectIds = null;\n this.#numVisibleObjects = 0;\n this.#visibleObjectIds = null;\n this.#numXRayedObjects = 0;\n this.#xrayedObjectIds = null;\n this.#numHighlightedObjects = 0;\n this.#highlightedObjectIds = null;\n this.#numSelectedObjects = 0;\n this.#selectedObjectIds = null;\n this.#numColorizedObjects = 0;\n this.#colorizedObjectIds = null;\n this.#numOpacityObjects = 0;\n this.#opacityObjectIds = null;\n this.#qualityRender = !!options.qualityRender;\n this.gammaOutput = true;\n this.#snapshotBegun = false;\n\n this.#sectionPlanesHash = null;\n this.#lightsHash = null;\n\n // this.canvas = new View(this, {\n // canvas: canvas,\n // transparent: !!options.transparent,\n // backgroundColor: options.backgroundColor,\n // backgroundColorFromAmbientLight: !!options.backgroundColorFromAmbientLight,\n // premultipliedAlpha: !!options.premultipliedAlpha\n // });\n //\n // this.canvas.onBoundary.subscribe(() => {\n // this.redraw();\n // });\n\n this.onBoundary = new EventEmitter(\n new EventDispatcher()\n );\n\n this.#backgroundColor = createVec3([\n options.backgroundColor ? options.backgroundColor[0] : 1,\n options.backgroundColor ? options.backgroundColor[1] : 1,\n options.backgroundColor ? options.backgroundColor[2] : 1,\n ]);\n this.#backgroundColorFromAmbientLight =\n !!options.backgroundColorFromAmbientLight;\n this.transparent = !!options.transparent;\n // this.htmlElement.width = this.htmlElement.clientWidth;\n // this.htmlElement.height = this.htmlElement.clientHeight;\n this.boundary = [\n this.htmlElement.offsetLeft,\n this.htmlElement.offsetTop,\n this.htmlElement.clientWidth,\n this.htmlElement.clientHeight,\n ];\n\n // Publish htmlElement size and position changes on each scene tick\n\n let lastWindowWidth = 0;\n let lastWindowHeight = 0;\n let lastViewWidth = 0;\n let lastViewHeight = 0;\n let lastViewOffsetLeft = 0;\n let lastViewOffsetTop = 0;\n let lastParent: null | HTMLElement = null;\n\n let lastResolutionScale: null | number = null;\n\n this.#onTick = this.viewer.onTick.subscribe(() => {\n const htmlElement = this.htmlElement;\n const newResolutionScale = this.resolutionScale.resolutionScale !== lastResolutionScale;\n const newWindowSize =\n window.innerWidth !== lastWindowWidth ||\n window.innerHeight !== lastWindowHeight;\n const newViewSize =\n htmlElement.clientWidth !== lastViewWidth ||\n htmlElement.clientHeight !== lastViewHeight;\n const newViewPos =\n htmlElement.offsetLeft !== lastViewOffsetLeft ||\n htmlElement.offsetTop !== lastViewOffsetTop;\n const parent = htmlElement.parentElement;\n const newParent = parent !== lastParent;\n\n if (\n newResolutionScale ||\n newWindowSize ||\n newViewSize ||\n newViewPos ||\n newParent\n ) {\n // this._spinner._adjustPosition();\n if (newResolutionScale || newViewSize || newViewPos) {\n const newWidth = htmlElement.clientWidth;\n const newHeight = htmlElement.clientHeight;\n if (newResolutionScale || newViewSize) {\n //////////////////////////////////////////////////////////////////////////////////////\n // TODO: apply resolutionscale properly\n //////////////////////////////////////////////////////////////////////////////////////\n // htmlElement.width = Math.round(\n // htmlElement.clientWidth * this.resolutionScale.resolutionScale\n // );\n // htmlElement.height = Math.round(\n // htmlElement.clientHeight * this.resolutionScale.resolutionScale\n // );\n }\n const boundary = this.boundary;\n boundary[0] = htmlElement.offsetLeft;\n boundary[1] = htmlElement.offsetTop;\n boundary[2] = newWidth;\n boundary[3] = newHeight;\n if (!newResolutionScale || newViewSize) {\n this.onBoundary.dispatch(this, boundary);\n }\n lastViewWidth = newWidth;\n lastViewHeight = newHeight;\n }\n\n if (newResolutionScale) {\n // lastResolutionScale = this.#resolutionScale;\n }\n if (newWindowSize) {\n lastWindowWidth = window.innerWidth;\n lastWindowHeight = window.innerHeight;\n }\n if (newViewPos) {\n lastViewOffsetLeft = htmlElement.offsetLeft;\n lastViewOffsetTop = htmlElement.offsetTop;\n }\n lastParent = parent;\n }\n });\n\n this.camera = new Camera(this);\n\n this.sao = new SAO(this, {});\n\n this.texturing = new Texturing(this, {});\n\n this.cameraFlight = new CameraFlightAnimation(this, {\n duration: 0.5,\n });\n\n this.metrics = new Metrics(this, {\n units: options.units,\n scale: options.scale,\n origin: options.origin,\n });\n\n this.xrayMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [0.9, 0.7, 0.6],\n fillAlpha: 0.4,\n edges: true,\n edgeColor: [0.5, 0.4, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.highlightMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [1.0, 1.0, 0.0],\n fillAlpha: 0.5,\n edges: true,\n edgeColor: [0.5, 0.4, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.selectedMaterial = new EmphasisMaterial(this, {\n fill: true,\n fillColor: [0.0, 1.0, 0.0],\n fillAlpha: 0.5,\n edges: true,\n edgeColor: [0.4, 0.5, 0.4],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n });\n\n this.edges = new Edges(this, {\n edgeColor: [0.0, 0.0, 0.0],\n edgeAlpha: 1.0,\n edgeWidth: 1,\n enabled: true,\n renderModes: [QualityRender],\n });\n\n this.resolutionScale = new ResolutionScale(this, {\n enabled: true,\n renderModes: [FastRender],\n resolutionScale: 1.0\n });\n\n this.pointsMaterial = new PointsMaterial(this, {\n pointSize: 1,\n roundPoints: true,\n perspectivePoints: true,\n minPerspectivePointSize: 1,\n maxPerspectivePointSize: 6,\n filterIntensity: false,\n minIntensity: 0,\n maxIntensity: 1,\n });\n\n this.linesMaterial = new LinesMaterial(this, {\n lineWidth: 1,\n });\n\n this.lights = {};\n\n this.#qualityRender = !!options.qualityRender;\n\n this.autoLayers = options.autoLayers !== false;\n\n this.onObjectCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectVisibility = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onObjectXRayed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onLayerCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onLayerDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSectionPlaneCreated = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSectionPlaneDestroyed = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSnapshotStarted = new EventEmitter(\n new EventDispatcher()\n );\n\n this.onSnapshotFinished = new EventEmitter(\n new EventDispatcher()\n );\n\n new AmbientLight(this, {\n color: [1.0, 1.0, 1.0],\n intensity: 1.0\n });\n\n new DirLight(this, {\n dir: [0.8, -.5, -0.5],\n color: [0.8, 0.8, 1.0],\n intensity: 1.0,\n space: \"world\"\n });\n\n new DirLight(this, {\n dir: [-0.8, -1.0, 0.5],\n color: [1, 1, .9],\n intensity: 1.0,\n space: \"world\"\n });\n\n new DirLight(this, {\n dir: [-0.8, -1.0, -0.5],\n color: [.0, .0, 1],\n intensity: 1.0,\n space: \"world\"\n });\n\n }\n\n /**\n * @private\n */\n initViewObjects() {\n for (const id in this.viewer.scene.models) {\n this.#createViewObjectsForSceneModel(this.viewer.scene.models[id]);\n }\n this.viewer.scene.onModelCreated.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.#createViewObjectsForSceneModel(sceneModel);\n }\n );\n this.viewer.scene.onModelDestroyed.subscribe((scene: Scene, sceneModel: SceneModel) => {\n this.#destroyViewObjectsForSceneModel(sceneModel);\n }\n );\n }\n\n #createViewObjectsForSceneModel(sceneModel: SceneModel) {\n // The Renderer has a RendererObject for each object, through which a ViewObject can\n // push state changes into the Renderer for its object.\n // The RendererObject\n const sceneObjects = sceneModel.objects;\n const rendererObjects = this.viewer.renderer.rendererObjects;\n for (let id in sceneObjects) {\n const sceneObject = sceneObjects[id];\n const rendererObject = rendererObjects[id];\n const layerId = sceneObject.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n if (!viewLayer) {\n if (!this.autoLayers) {\n continue;\n }\n viewLayer = new ViewLayer({\n id: layerId,\n view: this,\n viewer: this.viewer,\n });\n this.layers[layerId] = viewLayer;\n viewLayer.onDestroyed.one(() => {\n delete this.layers[viewLayer.id];\n this.onLayerDestroyed.dispatch(this, viewLayer);\n });\n this.onLayerCreated.dispatch(this, viewLayer);\n }\n const viewObject = new ViewObject(viewLayer, sceneObject, rendererObject);\n viewLayer.registerViewObject(viewObject);\n this.registerViewObject(viewObject);\n this.onObjectCreated.dispatch(this, viewObject);\n }\n }\n\n /**\n * Sets which rendering mode this View is in.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is {@link @xeokit/constants!QualityRender | QualityRender}.\n *\n * @param renderMode The rendering mode\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * Rendering mode not supported.\n */\n setRenderMode(renderMode: number): SDKError | void {\n if (renderMode !== QualityRender && renderMode !== FastRender) {\n return new SDKError(`Failed to set render mode for View - unsupported mode - supported modes are FastRender and QualityRender`);\n }\n this.#renderMode = renderMode;\n }\n\n /**\n * Gets which rendering mode this View is in.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is {@link @xeokit/constants!QualityRender | QualityRender}.\n */\n get renderMode(): number {\n return this.#renderMode;\n }\n\n /**\n *\n */\n get aabb(): FloatArrayParam {\n return this.viewer.scene.aabb;\n }\n\n /**\n * Gets the canvas clear color.\n *\n * Default value is ````[1, 1, 1]````.\n */\n get backgroundColor(): FloatArrayParam {\n return this.#backgroundColor;\n }\n\n /**\n * Sets the canvas clear color.\n *\n * Default value is ````[1, 1, 1]````.\n */\n set backgroundColor(value: FloatArrayParam) {\n if (value) {\n this.#backgroundColor[0] = value[0];\n this.#backgroundColor[1] = value[1];\n this.#backgroundColor[2] = value[2];\n } else {\n this.#backgroundColor[0] = 1.0;\n this.#backgroundColor[1] = 1.0;\n this.#backgroundColor[2] = 1.0;\n }\n this.redraw();\n }\n\n /**\n * Gets whether the canvas clear color will be derived from {@link AmbientLight} or {@link View#backgroundColor}\n * when {@link View#transparent} is ```true```.\n *\n * When {@link View#transparent} is ```true``` and this is ````true````, then the canvas clear color will\n * be taken from the ambient light color.\n *\n * When {@link View#transparent} is ```true``` and this is ````false````, then the canvas clear color will\n * be taken from {@link View#backgroundColor}.\n *\n * Default value is ````true````.\n */\n get backgroundColorFromAmbientLight(): boolean {\n return this.#backgroundColorFromAmbientLight;\n }\n\n /**\n * Sets if the canvas background color is derived from an {@link AmbientLight}.\n *\n * This only has effect when the canvas is not transparent. When not enabled, the background color\n * will be the canvas element's HTML/CSS background color.\n *\n * Default value is ````true````.\n */\n set backgroundColorFromAmbientLight(\n backgroundColorFromAmbientLight: boolean\n ) {\n this.#backgroundColorFromAmbientLight =\n backgroundColorFromAmbientLight !== false;\n }\n\n /**\n * Gets the gamma factor.\n */\n get gammaFactor() {\n // TODO\n return 1.0;\n }\n\n /**\n * Gets whether quality rendering is enabled for this View.\n *\n * Default is ````false````.\n */\n get qualityRender(): boolean {\n return this.#qualityRender;\n }\n\n /**\n * Sets whether quality rendering is enabled for this View.\n *\n * Default is ````false````.\n */\n set qualityRender(value: boolean) {\n if (this.#qualityRender === value) {\n return;\n }\n this.#qualityRender = value;\n this.redraw();\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numObjects(): number {\n return this.#numObjects;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get objectIds(): string[] {\n if (!this.#objectIds) {\n this.#objectIds = Object.keys(this.objects);\n }\n return this.#objectIds;\n }\n\n /**\n * Gets the number of visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numVisibleObjects(): number {\n return this.#numVisibleObjects;\n }\n\n /**\n * Gets the IDs of the visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get visibleObjectIds(): string[] {\n if (!this.#visibleObjectIds) {\n this.#visibleObjectIds = Object.keys(this.visibleObjects);\n }\n return this.#visibleObjectIds;\n }\n\n /**\n * Gets the number of X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numXRayedObjects(): number {\n return this.#numXRayedObjects;\n }\n\n /**\n * Gets the IDs of the X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get xrayedObjectIds(): string[] {\n if (!this.#xrayedObjectIds) {\n this.#xrayedObjectIds = Object.keys(this.xrayedObjects);\n }\n return this.#xrayedObjectIds;\n }\n\n /**\n * Gets the number of highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numHighlightedObjects(): number {\n return this.#numHighlightedObjects;\n }\n\n /**\n * Gets the IDs of the highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get highlightedObjectIds(): string[] {\n if (!this.#highlightedObjectIds) {\n this.#highlightedObjectIds = Object.keys(this.highlightedObjects);\n }\n return this.#highlightedObjectIds;\n }\n\n /**\n * Gets the number of selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numSelectedObjects(): number {\n return this.#numSelectedObjects;\n }\n\n /**\n * Gets the IDs of the selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get selectedObjectIds(): string[] {\n if (!this.#selectedObjectIds) {\n this.#selectedObjectIds = Object.keys(this.selectedObjects);\n }\n return this.#selectedObjectIds;\n }\n\n /**\n * Gets the number of colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get numColorizedObjects(): number {\n return this.#numColorizedObjects;\n }\n\n /**\n * Gets the IDs of the colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n */\n get colorizedObjectIds(): string[] {\n if (!this.#colorizedObjectIds) {\n this.#colorizedObjectIds = Object.keys(this.colorizedObjects);\n }\n return this.#colorizedObjectIds;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this View that have updated opacities.\n */\n get opacityObjectIds(): string[] {\n if (!this.#opacityObjectIds) {\n this.#opacityObjectIds = Object.keys(this.opacityObjects);\n }\n return this.#opacityObjectIds;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this View that have updated opacities.\n */\n get numOpacityObjects(): number {\n return this.#numOpacityObjects;\n }\n\n /**\n * @private\n */\n registerViewObject(viewObject: ViewObject) {\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n deregisterViewObject(viewObject: ViewObject) {\n delete this.objects[viewObject.id];\n delete this.visibleObjects[viewObject.id];\n delete this.xrayedObjects[viewObject.id];\n delete this.highlightedObjects[viewObject.id];\n delete this.selectedObjects[viewObject.id];\n delete this.colorizedObjects[viewObject.id];\n delete this.opacityObjects[viewObject.id];\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectVisibilityUpdated(\n viewObject: ViewObject,\n visible: boolean,\n notify: boolean = true\n ) {\n if (visible) {\n this.visibleObjects[viewObject.id] = viewObject;\n this.#numVisibleObjects++;\n } else {\n delete this.visibleObjects[viewObject.id];\n this.#numVisibleObjects--;\n }\n this.#visibleObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n }\n\n /**\n * @private\n */\n objectXRayedUpdated(\n viewObject: ViewObject,\n xrayed: boolean,\n notify: boolean = true\n ) {\n if (xrayed) {\n this.xrayedObjects[viewObject.id] = viewObject;\n this.#numXRayedObjects++;\n } else {\n delete this.xrayedObjects[viewObject.id];\n this.#numXRayedObjects--;\n }\n this.#xrayedObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectXRayed.dispatch(this, viewObject);\n }\n }\n\n /**\n * @private\n */\n objectHighlightedUpdated(viewObject: ViewObject, highlighted: boolean) {\n if (highlighted) {\n this.highlightedObjects[viewObject.id] = viewObject;\n this.#numHighlightedObjects++;\n } else {\n delete this.highlightedObjects[viewObject.id];\n this.#numHighlightedObjects--;\n }\n this.#highlightedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectSelectedUpdated(viewObject: ViewObject, selected: boolean) {\n if (selected) {\n this.selectedObjects[viewObject.id] = viewObject;\n this.#numSelectedObjects++;\n } else {\n delete this.selectedObjects[viewObject.id];\n this.#numSelectedObjects--;\n }\n this.#selectedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectColorizeUpdated(viewObject: ViewObject, colorized: boolean) {\n if (colorized) {\n this.colorizedObjects[viewObject.id] = viewObject;\n this.#numColorizedObjects++;\n } else {\n delete this.colorizedObjects[viewObject.id];\n this.#numColorizedObjects--;\n }\n this.#colorizedObjectIds = null; // Lazy regenerate\n }\n\n /**\n * @private\n */\n objectOpacityUpdated(viewObject: ViewObject, opacityUpdated: boolean) {\n if (opacityUpdated) {\n this.opacityObjects[viewObject.id] = viewObject;\n this.#numOpacityObjects++;\n } else {\n delete this.opacityObjects[viewObject.id];\n this.#numOpacityObjects--;\n }\n this.#opacityObjectIds = null; // Lazy regenerate\n }\n\n /**\n * Creates a {@link SectionPlane} in this View.\n *\n * @param sectionPlaneParams\n */\n createSectionPlane(sectionPlaneParams: SectionPlaneParams): SectionPlane {\n let id = sectionPlaneParams.id || createUUID();\n if (this.sectionPlanes[id]) {\n this.error(\n `SectionPlane with ID \"${id}\" already exists - will randomly-generate ID`\n );\n id = createUUID();\n }\n const sectionPlane = new SectionPlane(this, sectionPlaneParams);\n this.#registerSectionPlane(sectionPlane);\n sectionPlane.onDestroyed.one(() => {\n this.#deregisterSectionPlane(sectionPlane);\n });\n return sectionPlane;\n }\n\n /**\n * Destroys the {@link SectionPlane}s in this View.\n */\n clearSectionPlanes(): void {\n const objectIds = Object.keys(this.sectionPlanes);\n for (let i = 0, len = objectIds.length; i < len; i++) {\n this.sectionPlanes[objectIds[i]].destroy();\n }\n this.sectionPlanesList.length = 0;\n this.#sectionPlanesHash = null;\n }\n\n /**\n * @private\n */\n getSectionPlanesHash() {\n if (this.#sectionPlanesHash) {\n return this.#sectionPlanesHash;\n }\n if (this.sectionPlanesList.length === 0) {\n return (this.#sectionPlanesHash = \";\");\n }\n let sectionPlane;\n const hashParts = [];\n for (let i = 0, len = this.sectionPlanesList.length; i < len; i++) {\n sectionPlane = this.sectionPlanesList[i];\n hashParts.push(\"cp\");\n }\n hashParts.push(\";\");\n this.#sectionPlanesHash = hashParts.join(\"\");\n return this.#sectionPlanesHash;\n }\n\n /**\n * @private\n */\n registerLight(light: PointLight | DirLight | AmbientLight) {\n this.lightsList.push(light);\n this.lights[light.id] = light;\n this.#lightsHash = null;\n this.rebuild();\n }\n\n /**\n * @private\n */\n deregisterLight(light: PointLight | DirLight | AmbientLight) {\n for (let i = 0, len = this.lightsList.length; i < len; i++) {\n if (this.lightsList[i].id === light.id) {\n this.lightsList.splice(i, 1);\n this.#lightsHash = null;\n delete this.lights[light.id];\n this.rebuild();\n return;\n }\n }\n }\n\n /**\n * Destroys the light sources in this View.\n */\n clearLights(): void {\n const lightIds = Object.keys(this.lights);\n for (let i = 0, len = lightIds.length; i < len; i++) {\n this.lights[lightIds[i]].destroy();\n }\n }\n\n /**\n * @private\n */\n getLightsHash() {\n if (this.#lightsHash) {\n return this.#lightsHash;\n }\n if (this.lightsList.length === 0) {\n return (this.#lightsHash = \";\");\n }\n const hashParts = [];\n const lights = this.lightsList;\n for (let i = 0, len = lights.length; i < len; i++) {\n const light: any = lights[i];\n hashParts.push(\"/\");\n hashParts.push(light instanceof DirLight ? \"d\" : \"p\");\n hashParts.push(light.space === \"world\" ? \"w\" : \"v\");\n if (light.castsShadow) {\n hashParts.push(\"sh\");\n }\n }\n // if (this.lightMaps.length > 0) {\n // hashParts.push(\"/lm\");\n // }\n // if (this.reflectionMaps.length > 0) {\n // hashParts.push(\"/rm\");\n // }\n hashParts.push(\";\");\n this.#lightsHash = hashParts.join(\"\");\n return this.#lightsHash;\n }\n\n /**\n * @private\n */\n rebuild() {\n this.viewer.renderer.setNeedsRebuild(this.viewIndex);\n }\n\n /**\n * @private\n */\n redraw() {\n this.viewer.renderer.setImageDirty(this.viewIndex);\n }\n\n /**\n * @private\n */\n getAmbientColorAndIntensity(): FloatArrayParam {\n return [0.5, 0.5, 0.5, 1];\n }\n\n /**\n * Updates the visibility of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.visible} on the Objects with the given IDs.\n * - Updates {@link View.visibleObjects} and {@link View.numVisibleObjects}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param visible Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsVisible(objectIds: string[], visible: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.visible !== visible;\n viewObject.visible = visible;\n return changed;\n });\n }\n\n /**\n * Updates the collidability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Updates {@link @xeokit/viewer!ViewObject.collidable} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param collidable Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCollidable(objectIds: string[], collidable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.collidable !== collidable;\n viewObject.collidable = collidable;\n return changed;\n });\n }\n\n /**\n * Updates the culled status of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * Updates {@link @xeokit/viewer!ViewObject.culled} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param culled Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCulled(objectIds: string[], culled: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.culled !== culled;\n viewObject.culled = culled;\n return changed;\n });\n }\n\n /**\n * Selects or deselects the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.selected} on the Objects with the given IDs.\n * - Updates {@link View.selectedObjects} and {@link View.numSelectedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param selected Whether or not to select.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsSelected(objectIds: string[], selected: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.selected !== selected;\n viewObject.selected = selected;\n return changed;\n });\n }\n\n /**\n * Highlights or un-highlights the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.highlighted} on the Objects with the given IDs.\n * - Updates {@link View.highlightedObjects} and {@link View.numHighlightedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param highlighted Whether or not to highlight.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsHighlighted(objectIds: string[], highlighted: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.highlighted !== highlighted;\n viewObject.highlighted = highlighted;\n return changed;\n });\n }\n\n /**\n * Applies or removes X-ray rendering for the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.xrayed} on the Objects with the given IDs.\n * - Updates {@link View.xrayedObjects} and {@link View.numXRayedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param xrayed Whether or not to xray.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsXRayed(objectIds: string[], xrayed: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.xrayed !== xrayed;\n if (changed) {\n viewObject.xrayed = xrayed;\n }\n return changed;\n });\n }\n\n /**\n * Colorizes the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.colorize} on the Objects with the given IDs.\n * - Updates {@link View.colorizedObjects} and {@link View.numColorizedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param colorize - RGB colorize factors in range ````[0..1,0..1,0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsColorized(objectIds: string[], colorize: number[]) {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n viewObject.colorize = colorize;\n });\n }\n\n /**\n * Sets the opacity of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.opacity} on the Objects with the given IDs.\n * - Updates {@link View.opacityObjects} and {@link View.numOpacityObjects}.\n *\n * @param objectIds - One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param opacity - Opacity factor in range ````[0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsOpacity(objectIds: string[], opacity: number): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.opacity !== opacity;\n if (changed) {\n viewObject.opacity = opacity;\n }\n return changed;\n });\n }\n\n /**\n * Sets the pickability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.pickable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param pickable Whether or not to set pickable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsPickable(objectIds: string[], pickable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.pickable !== pickable;\n if (changed) {\n viewObject.pickable = pickable;\n }\n return changed;\n });\n }\n\n /**\n * Sets the clippability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.clippable} on the Objects with the given IDs.\n * - Enables or disables the ability to clip the given Objects with {@link SectionPlane}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param clippable Whether or not to set clippable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsClippable(objectIds: string[], clippable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = viewObject.clippable !== clippable;\n if (changed) {\n viewObject.clippable = clippable;\n }\n return changed;\n });\n }\n\n /**\n * Iterates with a callback over the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this View.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param callback Callback to execute on each {@link @xeokit/viewer!ViewObject}.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n withObjects(objectIds: string[], callback: Function): boolean {\n let changed = false;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const id = objectIds[i];\n let viewObject = this.objects[id];\n if (viewObject) {\n changed = callback(viewObject) || changed;\n }\n }\n return changed;\n }\n\n /**\n * Creates a {@link @xeokit/viewer!ViewLayer} in this View.\n *\n * The ViewLayer is then registered in {@link View.layers}.\n *\n * Since the ViewLayer is created explicitly by this method, the ViewLayer will persist until {@link @xeokit/viewer!ViewLayer.destroy}\n * is called, or the {@link @xeokit/viewer!View} itself is destroyed. If a ViewLayer with the given ID already exists, then the method\n * returns that existing ViewLayer. The method will also ensure that the existing ViewLayer likewise persists.\n *\n * @param viewLayerParams\n * @returns The new ViewLayer\n */\n createLayer(viewLayerParams: ViewLayerParams): ViewLayer {\n let viewLayer = this.layers[viewLayerParams.id];\n if (!viewLayer) {\n viewLayer = new ViewLayer({\n // Automatically creates ViewObjects\n id: viewLayerParams.id,\n view: this,\n viewer: this.viewer,\n });\n this.layers[viewLayerParams.id] = viewLayer;\n this.onLayerCreated.dispatch(this, viewLayer);\n viewLayer.onDestroyed.one(() => {\n delete this.layers[viewLayer.id];\n this.onLayerDestroyed.dispatch(this, viewLayer);\n });\n }\n viewLayer.autoDestroy = false;\n return viewLayer;\n }\n\n /**\n * Attempts to pick a ViewObject in this View.\n *\n * @param pickParams Picking parameters.\n * @param pickResult Picking results, when caller wants to manage them externally.\n * @throws {@link @xeokit/core!SDKError | SDKError}\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n * * Illegal picking parameters given.\n * @returns {@link @xeokit/viewer!PickResult}\n * * Picking attempt completed.\n */\n pick(pickParams: PickParams, pickResult?: PickResult): PickResult | null {\n return this.viewer.renderer.pick(this.viewIndex, pickParams, pickResult);\n }\n\n /**\n * Enter snapshot mode.\n *\n * Switches rendering to a hidden snapshot canvas.\n *\n * Exit snapshot mode using {@link Viewer#endSnapshot}.\n */\n beginSnapshot() {\n if (this.#snapshotBegun) {\n return;\n }\n this.viewer.renderer.beginSnapshot(this.viewIndex);\n this.#snapshotBegun = true;\n }\n\n /**\n * Captures a snapshot image of this View.\n *\n * @param snapshotParams\n * @param snapshotResult\n */\n getSnapshot(snapshotParams: SnapshotParams, snapshotResult?: SnapshotResult): SnapshotResult {\n // const needFinishSnapshot = (!this.#snapshotBegun);\n // const resize = (snapshotParams.width !== undefined && snapshotParams.height !== undefined);\n // const canvas = this.htmlElement;\n // const saveWidth = canvas.clientWidth;\n // const saveHeight = canvas.clientHeight;\n // const width = snapshotParams.width ? Math.floor(snapshotParams.width) : canvas.width;\n // const height = snapshotParams.height ? Math.floor(snapshotParams.height) : canvas.height;\n //\n // if (resize) {\n // // canvas.width = width;\n // // canvas.height = height;\n // }\n //\n // if (!this.#snapshotBegun) {\n // this.onSnapshotStarted.dispatch(this, {\n // width,\n // height\n // });\n // }\n\n // if (!snapshotParams.includeGizmos) {\n // this.sendToPlugins(\"snapshotStarting\"); // Tells plugins to hide things that shouldn't be in snapshot\n // }\n //\n // const captured = {};\n // for (let i = 0, len = this._plugins.length; i < len; i++) {\n // const plugin = this._plugins[i];\n // if (plugin.getContainerElement) {\n // const container = plugin.getContainerElement();\n // if (container !== document.body) {\n // if (!captured[container.id]) {\n // captured[container.id] = true;\n // html2canvas(container).then(function (canvas) {\n // document.body.appendChild(canvas);\n // });\n // }\n // }\n // }\n // }\n //\n // this.scene._renderer.renderSnapshot();\n //\n // const imageDataURI = this.scene._renderer.readSnapshot(snapshotParams);\n //\n // if (resize) {\n // canvas.width = saveWidth;\n // canvas.height = saveHeight;\n //\n // this.scene.glRedraw();\n // }\n //\n // if (!snapshotParams.includeGizmos) {\n // this.sendToPlugins(\"snapshotFinished\");\n // }\n //\n // if (needFinishSnapshot) {\n // this.endSnapshot();\n // }\n\n // return imageDataURI;\n return new SnapshotResult();\n }\n\n #registerSectionPlane(sectionPlane: SectionPlane) {\n this.sectionPlanesList.push(sectionPlane);\n this.sectionPlanes[sectionPlane.id] = sectionPlane;\n this.#sectionPlanesHash = null;\n this.rebuild();\n this.onSectionPlaneCreated.dispatch(this, sectionPlane);\n }\n\n #deregisterSectionPlane(sectionPlane: SectionPlane) {\n for (let i = 0, len = this.sectionPlanesList.length; i < len; i++) {\n if (this.sectionPlanesList[i].id === sectionPlane.id) {\n this.sectionPlanesList.splice(i, 1);\n this.#sectionPlanesHash = null;\n delete this.sectionPlanes[sectionPlane.id];\n this.rebuild();\n this.onSectionPlaneDestroyed.dispatch(this, sectionPlane);\n return;\n }\n }\n }\n\n getNumAllocatedSectionPlanes(): number {\n return this.sectionPlanesList.length;\n }\n\n /**\n * Destroys this View.\n *\n * Causes {@link @xeokit/viewer!Viewer | Viewer} to fire a \"viewDestroyed\" event.\n */\n destroy() {\n this.viewer.onTick.unsubscribe(this.#onTick);\n this.#destroyViewLayers();\n this.#destroyViewObjects();\n this.onObjectCreated.clear();\n this.onObjectDestroyed.clear();\n this.onObjectVisibility.clear();\n this.onObjectXRayed.clear();\n this.onLayerCreated.clear();\n this.onLayerDestroyed.clear();\n this.onSectionPlaneCreated.clear();\n this.onSectionPlaneDestroyed.clear();\n super.destroy();\n }\n\n #destroyViewObjectsForSceneModel(sceneModel: SceneModel) {\n const objects = sceneModel.objects;\n for (let id in objects) {\n const object = objects[id];\n const layerId = object.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n const viewObject = this.objects[object.id];\n this.deregisterViewObject(viewObject);\n if (viewLayer) {\n viewLayer.deregisterViewObject(viewObject);\n if (viewLayer.autoDestroy && viewLayer.numObjects === 0) {\n viewLayer.destroy();\n }\n }\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n\n #destroyViewLayers() {\n const viewLayers = this.layers;\n for (let id in viewLayers) {\n const viewLayer = viewLayers[id];\n viewLayer.destroy();\n }\n }\n\n #destroyViewObjects() {\n const objects = this.objects;\n for (let id in objects) {\n const object = objects[id];\n const sceneObject = object.sceneObject;\n const layerId = sceneObject.layerId || \"default\";\n let viewLayer = this.layers[layerId];\n const viewObject = this.objects[object.id];\n this.deregisterViewObject(viewObject);\n if (viewLayer) {\n viewLayer.deregisterViewObject(viewObject);\n if (viewLayer.autoDestroy && viewLayer.numObjects === 0) {\n viewLayer.destroy();\n }\n }\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n}\n\nexport {View};\n", "import type {FloatArrayParam} from \"@xeokit/math\";\n\nimport type {ViewLayer} from \"./ViewLayer\";\nimport type {SceneObject} from \"@xeokit/scene\";\nimport type {RendererObject} from \"@xeokit/scene/src/RendererObject\";\nimport {SDKError} from \"@xeokit/core\";\n\n/**\n * Represents and controls the visual state of a {@link @xeokit/scene!SceneModel | SceneObject} in\n * a {@link @xeokit/viewer!View |View's} canvas.\n *\n * ## Summary\n *\n * * Stored in {@link View.objects | View.objects} and {@link @xeokit/viewer!ViewLayer.objects | ViewLayer.objects}\n * * Viewer automatically creates one of these in each existing {@link @xeokit/viewer!View} for each {@link @xeokit/scene!SceneModel | SceneObject} created\n * * {@link @xeokit/scene!SceneObject.layerId | SceneObject.layerId} determines which of the View's {@link @xeokit/viewer!ViewLayer | ViewLayers} to put the ViewObject in\n *\n * ## Overview\n *\n * Every View automatically maintains within itself a ViewObject for each {@link @xeokit/scene!SceneModel | SceneObject} that exists in the {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * Whenever we create a SceneObject, each View will automatically create a corresponding ViewObject within itself. When\n * we destroy a SceneObject, each View will automatically destroy its corresponding ViewObject. The ViewObjects in a View\n * are therefore a manifest of the ViewerObjects in the View.\n *\n * {@link @xeokit/viewer!ViewLayer}.\n */\nexport class ViewObject {\n\n /**\n * Unique ID of this ViewObject within {@link @xeokit/viewer!ViewLayer.objects}.\n */\n public readonly id: string;\n\n /**\n * ID of this ViewObject within the originating system.\n */\n public readonly originalSystemId: string;\n\n /**\n * The ViewLayer to which this ViewObject belongs.\n */\n public readonly layer: ViewLayer;\n\n /**\n * The corresponding {@link @xeokit/scene!SceneObject}.\n */\n public readonly sceneObject: SceneObject;\n\n /**\n * The corresponding {@link RendererObject}.\n * @internal\n */\n #rendererObject: RendererObject;\n\n #state: {\n visible: boolean;\n culled: boolean;\n pickable: boolean;\n clippable: boolean;\n collidable: boolean;\n xrayed: boolean;\n selected: boolean;\n highlighted: boolean;\n colorize: Float32Array;\n colorized: boolean;\n opacityUpdated: boolean;\n };\n\n /**\n * @private\n */\n constructor(layer: ViewLayer, sceneObject: SceneObject, rendererObject: RendererObject) {\n\n this.id = sceneObject.id;\n this.originalSystemId = sceneObject.originalSystemId;\n this.layer = layer;\n this.sceneObject = sceneObject;\n this.#rendererObject = rendererObject;\n\n this.#state = {\n visible: true,\n culled: false,\n pickable: true,\n clippable: true,\n collidable: true,\n xrayed: false,\n selected: false,\n highlighted: false,\n colorize: new Float32Array(4),\n colorized: false,\n opacityUpdated: false,\n };\n\n this.#rendererObject.setVisible(this.layer.view.viewIndex, this.#state.visible);\n\n // this.#rendererObject.initFlags(this.layer.view.viewIndex, this.#state);\n\n this.layer.objectVisibilityUpdated(this, this.#state.visible, true);\n\n //this.#rendererObject.setClippable(this.layer.view.viewIndex, this.#state.clippable);\n\n this.#rendererObject.setPickable(this.layer.view.viewIndex, this.#state.pickable);\n }\n\n /**\n * Gets the World-space axis-aligned 3D boundary of this ViewObject.\n */\n get aabb(): FloatArrayParam {\n return this.sceneObject.aabb;\n }\n\n /**\n * Gets if this ViewObject is visible.\n *\n * * When {@link @xeokit/viewer!ViewObject.visible} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.visibleObjects}.\n * * Each ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsVisible} to batch-update the visibility of ViewObjects, which fires a single event for the batch.\n */\n get visible(): boolean {\n return this.#state.visible;\n }\n\n /**\n * Sets if this ViewObject is visible.\n *\n * * When {@link @xeokit/viewer!ViewObject.visible} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.visibleObjects}.\n * * Each ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Fires an \"objectVisibility\" event on associated {@link @xeokit/viewer!ViewLayer}s.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsVisible} to batch-update the visibility of ViewObjects, which fires a single event for the batch.\n */\n set visible(visible: boolean) {\n if (visible === this.#state.visible) {\n return;\n }\n this.#state.visible = visible;\n const result = this.#rendererObject.setVisible(this.layer.view.viewIndex, visible);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectVisibilityUpdated(this, visible, true);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is X-rayed.\n *\n * * When {@link @xeokit/viewer!ViewObject.xrayed} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.xrayedObjects | ViewLayer.xrayedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} to batch-update the X-rayed state of ViewObjects.\n */\n get xrayed(): boolean {\n return this.#state.xrayed;\n }\n\n /**\n * Sets if this ViewObject is X-rayed.\n *\n * * When {@link @xeokit/viewer!ViewObject.xrayed} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.xrayedObjects | ViewLayer.xrayedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsXRayed} to batch-update the X-rayed state of ViewObjects.\n */\n set xrayed(xrayed: boolean) {\n if (this.#state.xrayed === xrayed) {\n return;\n }\n this.#state.xrayed = xrayed;\n const result = this.#rendererObject.setXRayed(this.layer.view.viewIndex, xrayed);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectXRayedUpdated(this, xrayed);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is highlighted.\n *\n * * When {@link @xeokit/viewer!ViewObject.highlighted} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.highlightedObjects | ViewLayer.highlightedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsHighlighted} to batch-update the highlighted state of ViewObjects.\n */\n get highlighted(): boolean {\n return this.#state.highlighted;\n }\n\n /**\n * Sets if this ViewObject is highlighted.\n *\n * * When {@link @xeokit/viewer!ViewObject.highlighted} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.highlightedObjects | ViewLayer.highlightedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsHighlighted} to batch-update the highlighted state of ViewObjects.\n */\n set highlighted(highlighted: boolean) {\n if (highlighted === this.#state.highlighted) {\n return;\n }\n this.#state.highlighted = highlighted;\n const result = this.#rendererObject.setHighlighted(this.layer.view.viewIndex, highlighted);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectHighlightedUpdated(this, highlighted);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is selected.\n *\n * * When {@link @xeokit/viewer!ViewObject.selected} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.selectedObjects | ViewLayer.selectedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsSelected} to batch-update the selected state of ViewObjects.\n */\n get selected(): boolean {\n return this.#state.selected;\n }\n\n /**\n * Sets if this ViewObject is selected.\n *\n * * When {@link @xeokit/viewer!ViewObject.selected} is ````true```` the ViewObject will be registered by {@link @xeokit/viewer!ViewObject.id} in {@link @xeokit/viewer!ViewLayer.selectedObjects | ViewLayer.selectedObjects}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsSelected} to batch-update the selected state of ViewObjects.\n */\n set selected(selected: boolean) {\n if (selected === this.#state.selected) {\n return;\n }\n this.#state.selected = selected;\n const result = this.#rendererObject.setSelected(this.layer.view.viewIndex, selected);\n if (result instanceof SDKError) {\n throw result;\n }\n this.layer.objectSelectedUpdated(this, selected);\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is culled.\n *\n * * The ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCulled} to batch-update the culled state of ViewObjects.\n */\n get culled(): boolean {\n return this.#state.culled;\n }\n\n /**\n * Sets if this ViewObject is culled.\n *\n * * The ViewObject is only rendered when {@link @xeokit/viewer!ViewObject.visible} is ````true```` and {@link @xeokit/viewer!ViewObject.culled} is ````false````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCulled} to batch-update the culled state of ViewObjects.\n */\n set culled(culled: boolean) {\n if (culled === this.#state.culled) {\n return;\n }\n const result = this.#rendererObject.setCulled(this.layer.view.viewIndex, culled);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.culled = culled;\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is clippable.\n *\n * * Clipping is done by the {@link SectionPlane}s in {@link @xeokit/viewer!ViewLayer.sectionPlanes}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsClippable} to batch-update the clippable state of ViewObjects.\n */\n get clippable(): boolean {\n return this.#state.clippable;\n }\n\n /**\n * Sets if this ViewObject is clippable.\n *\n * * Clipping is done by the {@link SectionPlane}s in {@link @xeokit/viewer!ViewLayer.sectionPlanes}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsClippable} to batch-update the clippable state of ViewObjects.\n */\n set clippable(clippable: boolean) {\n if (clippable === this.#state.clippable) {\n return;\n }\n const result = this.#rendererObject.setCulled(this.layer.view.viewIndex, clippable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.clippable = clippable;\n this.layer.redraw();\n }\n\n /**\n * Gets if this ViewObject is included in boundary calculations.\n *\n * * When ````true````, the 3D World boundaries returned by {@link @xeokit/viewer!ViewLayer.aabb} will include this ViewObject's boundary.\n * * The ViewObject's 3D boundary is held in {@link @xeokit/scene!SceneObject.aabb}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCollidable} to batch-update the collidable state of ViewObjects.\n */\n get collidable(): boolean {\n return this.#state.collidable;\n }\n\n /**\n * Sets if this ViewObject included in boundary calculations.\n *\n * * When ````true````, the 3D World boundaries returned by {@link @xeokit/viewer!ViewLayer.aabb} will include this ViewObject's boundary.\n * * The ViewObject's 3D boundary is held in {@link @xeokit/scene!SceneObject.aabb}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsCollidable} to batch-update the collidable state of ViewObjects.\n */\n set collidable(collidable: boolean) {\n if (collidable === this.#state.collidable) {\n return;\n }\n const result = this.#rendererObject.setCollidable(this.layer.view.viewIndex, collidable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.collidable = collidable;\n // this._setAABBDirty();\n // this.layer._aabbDirty = true;\n }\n\n /**\n * Gets if this ViewObject is pickable.\n *\n * * Picking is done with {@link @xeokit/viewer!View.pick}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsPickable} to batch-update the pickable state of ViewObjects.\n */\n get pickable(): boolean {\n return this.#state.pickable;\n }\n\n /**\n * Sets if this ViewObject is pickable.\n *\n * * Picking is done with {@link @xeokit/viewer!View.pick}.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsPickable} to batch-update the pickable state of ViewObjects.\n */\n set pickable(pickable: boolean) {\n if (this.#state.pickable === pickable) {\n return;\n }\n const result = this.#rendererObject.setPickable(this.layer.view.viewIndex, pickable);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.pickable = pickable;\n // No need to trigger a render;\n // state is only used when picking\n }\n\n /**\n * Gets the RGB colorize color for this ViewObject.\n *\n * * Multiplies by rendered fragment colors.\n * * Each element of the color is in range ````[0..1]````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsColorized} to batch-update the colorized state of ViewObjects.\n */\n get colorize(): Float32Array {\n return this.#state.colorize;\n }\n\n /**\n * Sets the RGB colorize color for this ViewObject.\n *\n * * Multiplies by rendered fragment colors.\n * * Each element of the color is in range ````[0..1]````.\n * * Set to ````null```` or ````undefined```` to reset the colorize color to its default value of ````[1,1,1]````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsColorized} to batch-update the colorized state of ViewObjects.\n */\n set colorize(value: FloatArrayParam | undefined | null) {\n let colorize = this.#state.colorize;\n if (value) {\n colorize[0] = value[0];\n colorize[1] = value[1];\n colorize[2] = value[2];\n } else {\n colorize[0] = 1;\n colorize[1] = 1;\n colorize[2] = 1;\n }\n const result = this.#rendererObject.setColorize(this.layer.view.viewIndex, colorize);\n if (result instanceof SDKError) {\n throw result;\n }\n this.#state.colorized = !!value;\n this.layer.objectColorizeUpdated(this, this.#state.colorized);\n this.layer.redraw();\n }\n\n /**\n * Gets the opacity factor for this ViewObject.\n *\n * * This is a factor in range ````[0..1]```` which multiplies by the rendered fragment alphas.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsOpacity} to batch-update the opacities of ViewObjects.\n */\n get opacity(): number {\n return this.#state.colorize[3];\n }\n\n /**\n * Sets the opacity factor for this ViewObject.\n *\n * * This is a factor in range ````[0..1]```` which multiplies by the rendered fragment alphas.\n * * Set to ````null```` or ````undefined```` to reset the opacity to its default value of ````1````.\n * * Use {@link @xeokit/viewer!ViewLayer.setObjectsOpacity} to batch-update the opacities of ViewObjects.\n */\n set opacity(opacity: number | undefined | null) {\n let colorize = this.#state.colorize;\n this.#state.opacityUpdated = opacity !== null && opacity !== undefined;\n // @ts-ignore\n colorize[3] = this.#state.opacityUpdated ? opacity : 1.0;\n this.layer.objectOpacityUpdated(this, this.#state.opacityUpdated);\n this.layer.redraw();\n }\n\n /**\n * @private\n */\n _destroy() {\n // Called by ViewLayer#destroyViewObjects\n if (this.#state.visible) {\n this.layer.objectVisibilityUpdated(this, false, false);\n }\n if (this.#state.xrayed) {\n this.layer.objectXRayedUpdated(this, false);\n }\n if (this.#state.selected) {\n this.layer.objectSelectedUpdated(this, false);\n }\n if (this.#state.highlighted) {\n this.layer.objectHighlightedUpdated(this, false);\n }\n if (this.#state.colorized) {\n this.layer.objectColorizeUpdated(this, false);\n }\n if (this.#state.opacityUpdated) {\n this.layer.objectOpacityUpdated(this, false);\n }\n this.layer.redraw();\n }\n}\n\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\n\nimport * as matrix from '@xeokit/matrix';\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * An arbitrarily-aligned World-space clipping plane.\n *\n * ## Summary\n *\n * * Belongs to a {@link @xeokit/viewer!View}.\n * * Slices portions off {@link @xeokit/viewer!ViewObject | ViewObjects} to create cross-section views or reveal interiors.\n * * Registered by {@link SectionPlane.id} in {@link View.sectionPlanes}.\n * * Indicates its World-space position in {@link SectionPlane.pos} and orientation vector in {@link SectionPlane.dir}.\n * * Discards elements from the half-space in the direction of {@link SectionPlane.dir}.\n * * Can be be enabled or disabled via {@link SectionPlane.active}.\n *\n * ## Usage\n *\n * In the example below, we'll create two SectionPlanes to slice a model loaded from glTF. Note that we could also create them\n * using a {@link SectionPlanesPlugin}.\n *\n * ````javascript\n * import {Viewer, GLTFLoaderPlugin, SectionPlane} from \"xeokit-viewer.es.js\";\n *\n * const viewer = new Viewer({\n * elementId: \"myCanvas\"\n * });\n *\n * const gltfLoaderPlugin = new GLTFModelsPlugin(viewer, {\n * id: \"GLTFModels\"\n * });\n *\n * const model = gltfLoaderPlugin.load({\n * id: \"myModel\",\n * src: \"./models/gltf/mygltfmodel.gltf\"\n * });\n *\n * // Create a SectionPlane on negative diagonal\n * const sectionPlane1 = new SectionPlane(viewer.scene, {\n * pos: [1.0, 1.0, 1.0],\n * dir: [-1.0, -1.0, -1.0],\n * active: true\n * }),\n *\n * // Create a SectionPlane on positive diagonal\n * const sectionPlane2 = new SectionPlane(viewer.scene, {\n * pos: [-1.0, -1.0, -1.0],\n * dir: [1.0, 1.0, 1.0],\n * active: true\n * });\n * ````\n */\nclass SectionPlane extends Component {\n\n /**\n ID of this SectionPlane, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this DirLight belongs.\n *\n * @property view\n * @type {View}\n * @final\n */\n public readonly view: View;\n\n /**\n * Emits an event each time {@link SectionPlane.pos} changes.\n *\n * @event\n */\n readonly onPos: EventEmitter;\n\n /**\n * Emits an event each time {@link SectionPlane.dir} changes.\n *\n * @event\n */\n readonly onDir: EventEmitter;\n\n /**\n * Emits an event each time {@link SectionPlane.active} changes.\n *\n * @event\n */\n readonly onActive: EventEmitter;\n\n #state: {\n pos: Float64Array;\n active: boolean;\n dist: number;\n dir: Float32Array\n };\n\n /**\n * @private\n * @constructor\n */\n constructor(view: View, cfg: {\n pos?: FloatArrayParam;\n active?: boolean;\n dir?: FloatArrayParam\n } = {}) {\n\n super(view, cfg);\n\n this.view = view;\n\n this.#state = {\n active: cfg.active !== false,\n pos: new Float64Array(cfg.pos || [0, 0, 0]),\n dir: new Float32Array(cfg.pos || [0, 0, -1]),\n dist: 0\n };\n\n this.onPos = new EventEmitter(new EventDispatcher());\n this.onDir = new EventEmitter(new EventDispatcher());\n this.onActive = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets if this SectionPlane is active or not.\n *\n * Default value is ````true````.\n *\n * @returns Returns ````true```` if active.\n */\n get active(): boolean {\n return this.#state.active;\n }\n\n /**\n * Sets if this SectionPlane is active or not.\n *\n * Default value is ````true````.\n *\n * @param value Set ````true```` to activate else ````false```` to deactivate.\n */\n set active(value: boolean) {\n if (this.#state.active === value) {\n return;\n }\n this.#state.active = value;\n this.view.redraw();\n this.onActive.dispatch(this, this.#state.active);\n }\n\n /**\n * Gets the World-space position of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, 0]````.\n *\n * @returns Current position.\n */\n get pos(): Float64Array {\n return this.#state.pos;\n }\n\n /**\n * Sets the World-space position of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, 0]````.\n *\n * @param value New position.\n */\n set pos(value: FloatArrayParam) {\n this.#state.pos.set(value);\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.onPos.dispatch(this, this.#state.pos);\n }\n\n /**\n * Gets the direction of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, -1]````.\n *\n * @returns value Current direction.\n */\n get dir(): Float32Array {\n return this.#state.dir;\n }\n\n /**\n * Sets the direction of this SectionPlane's plane.\n *\n * Default value is ````[0, 0, -1]````.\n *\n * @param value New direction.\n */\n set dir(value: FloatArrayParam) {\n this.#state.dir.set(value);\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.view.redraw();\n this.onDir.dispatch(this, this.#state.dir);\n }\n\n /**\n * Gets this SectionPlane's distance to the origin of the World-space coordinate system.\n *\n * This is the dot product of {@link SectionPlane.pos} and {@link SectionPlane.dir} and is automatically re-calculated\n * each time either of two properties are updated.\n *\n * @returns Distance to the origin of the World-space coordinate system.\n */\n get dist(): number {\n return this.#state.dist;\n }\n\n /**\n * Inverts the direction of {@link SectionPlane.dir}.\n */\n flipDir() {\n const dir = this.#state.dir;\n dir[0] *= -1.0;\n dir[1] *= -1.0;\n dir[2] *= -1.0;\n this.#state.dist = (-matrix.dotVec3(this.#state.pos, this.#state.dir));\n this.onDir.dispatch(this, this.#state.dir);\n this.view.redraw();\n }\n\n /**\n * Destroys this SectionPlane.\n */\n destroy() {\n this.onPos.clear();\n this.onActive.clear;\n this.onDir.clear();\n super.destroy();\n }\n}\n\nexport {SectionPlane};\n", "import type {View} from \"./View\";\nimport {CentimetersUnit, FeetUnit, InchesUnit, MetersUnit, MillimetersUnit, YardsUnit} from \"@xeokit/constants\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {createVec3} from \"@xeokit/matrix\";\n\n\nconst unitsInfo = {\n [MetersUnit]: {\n abbrev: \"m\"\n },\n [CentimetersUnit]: {\n abbrev: \"cm\"\n },\n [MillimetersUnit]: {\n abbrev: \"mm\"\n },\n [YardsUnit]: {\n abbrev: \"yd\"\n },\n [FeetUnit]: {\n abbrev: \"ft\"\n },\n [InchesUnit]: {\n abbrev: \"in\"\n }\n};\n\n/**\n * Configures its {@link @xeokit/viewer!View}'s measurement unit and mapping between the Real-space and World-space 3D Cartesian coordinate systems.\n *\n *\n * ## Summary\n *\n * * Located at {@link View.metrics}.\n * * {@link Metrics.units} configures the Real-space unit type, which is {@link @xeokit/constants!MetersUnit} by default.\n * * {@link Metrics.scale} configures the number of Real-space units represented by each unit within the World-space 3D coordinate system. This is ````1.0```` by default.\n * * {@link Metrics.origin} configures the 3D Real-space origin, in current Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin sits, This is ````[0,0,0]```` by default.\n *\n * ## Usage\n *\n * ````JavaScript\n * import {Viewer, constants} from \"xeokit-viewer.es.js\";\n *\n * const viewer = new Viewer();\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas1\"\n * });\n *\n * const metrics = view1.metrics;\n *\n * metrics.units = MetersUnit;\n * metrics.scale = 10.0;\n * metrics.origin = [100.0, 0.0, 200.0];\n * ````\n */\nclass Metrics extends Component {\n\n #units: number;\n #scale: number;\n #origin: FloatArrayParam;\n\n /**\n * Emits an event each time {@link Metrics.units} changes.\n *\n * @event\n */\n readonly onUnits: EventEmitter;\n\n /**\n * Emits an event each time {@link Metrics.scale} changes.\n *\n * @event\n */\n readonly onScale: EventEmitter;\n\n /**\n * Emits an event each time {@link Metrics.origin} changes.\n *\n * @event\n */\n readonly onOrigin: EventEmitter;\n\n\n /**\n * @private\n */\n constructor(view: View, cfg: {\n origin?: FloatArrayParam;\n scale?: number;\n units?: number\n } = {\n units: MetersUnit,\n scale: 1.0,\n origin: [1, 1, 1]\n }) {\n\n super(view, cfg);\n\n this.onUnits = new EventEmitter(new EventDispatcher());\n this.onScale = new EventEmitter(new EventDispatcher());\n this.onOrigin = new EventEmitter(new EventDispatcher());\n\n this.#units = MetersUnit;\n this.#scale = 1.0;\n this.#origin = createVec3([0, 0, 0]);\n\n this.units = cfg.units;\n this.scale = cfg.scale;\n this.origin = cfg.origin;\n }\n\n /**\n * Gets info about the supported Real-space unit types.\n *\n * With {@link constants} indicating each unit type, the info will be:\n *\n * ````javascript\n * {\n * [MetersUnit]: {\n * abbrev: \"m\"\n * },\n * [CentimetersUnit]: {\n * abbrev: \"cm\"\n * },\n * [MillimetersUnit]: {\n * abbrev: \"mm\"\n * },\n * [YardsUnit]: {\n * abbrev: \"yd\"\n * },\n * [FeetUnit]: {\n * abbrev: \"ft\"\n * },\n * [InchesUnit]: {\n * abbrev: \"in\"\n * }\n * }\n * ````\n *\n * @type {*}\n */\n get unitsInfo(): {} {\n return unitsInfo;\n }\n\n /**\n * Gets the {@link @xeokit/viewer!View}'s Real-space unit type.\n */\n get units(): number {\n return this.#units;\n }\n\n /**\n * Sets the {@link @xeokit/viewer!View}'s Real-space unit type.\n *\n * Accepted values are {@link @xeokit/constants!MetersUnit}, {@link @xeokit/constants!CentimetersUnit}, {@link @xeokit/constants!MillimetersUnit}, {@link @xeokit/constants!YardsUnit}, {@link @xeokit/constants!FeetUnit} and {@link @xeokit/constants!InchesUnit}.\n */\n set units(value: number | undefined) {\n if (!value) {\n value = MetersUnit;\n }\n // @ts-ignore\n const info = unitsInfo[value];\n if (!info) {\n this.error(\"Unsupported value for 'units': \" + value + \" defaulting to MetersUnit\");\n value = MetersUnit;\n }\n this.#units = value;\n this.onUnits.dispatch(this, this.#units);\n }\n\n /**\n * Gets the number of Real-space units represented by each unit of the {@link @xeokit/viewer!View}'s World-space coordinate system.\n */\n get scale(): number {\n return this.#scale;\n }\n\n /**\n * Sets the number of Real-space units represented by each unit of the {@link @xeokit/viewer!View}'s World-space coordinate system.\n *\n * For example, if {@link Metrics.units} is {@link @xeokit/constants!MetersUnit}, and there are ten meters per World-space coordinate system unit, then ````scale```` would have a value of ````10.0````.\n */\n set scale(value: number | undefined) {\n value = value || 1;\n if (value <= 0) {\n this.error(\"scale value should be larger than zero\");\n return;\n }\n this.#scale = value;\n this.onScale.dispatch(this, this.#scale);\n }\n\n /**\n * Gets the 3D Real-space origin, in Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin ````[0,0,0]```` sits.\n */\n get origin(): FloatArrayParam {\n return this.#origin;\n }\n\n /**\n * Sets the Real-space 3D origin, in Real-space units, at which this {@link @xeokit/viewer!View}'s World-space coordinate origin ````[0,0,0]```` sits.\n */\n set origin(value: FloatArrayParam | undefined) {\n if (!value) {\n this.#origin[0] = 0;\n this.#origin[1] = 0;\n this.#origin[2] = 0;\n return;\n }\n this.#origin[0] = value[0];\n this.#origin[1] = value[1];\n this.#origin[2] = value[2];\n this.onOrigin.dispatch(this, this.#origin);\n }\n\n /**\n * Converts a 3D position from World-space to Real-space.\n *\n * This is equivalent to ````realPos = #origin + (worldPos * #scale)````.\n *\n * @param worldPos World-space 3D position, in World coordinate system units.\n * @param [realPos] Destination for Real-space 3D position.\n * @returns Real-space 3D position, in units indicated by {@link Metrics#units}.\n */\n worldToRealPos(worldPos: FloatArrayParam, realPos: FloatArrayParam = createVec3()): FloatArrayParam {\n realPos[0] = this.#origin[0] + (this.#scale * worldPos[0]);\n realPos[1] = this.#origin[1] + (this.#scale * worldPos[1]);\n realPos[2] = this.#origin[2] + (this.#scale * worldPos[2]);\n return realPos;\n }\n\n /**\n * Converts a 3D position from Real-space to World-space.\n *\n * This is equivalent to ````worldPos = (worldPos - #origin) / #scale````.\n *\n * @param realPos Real-space 3D position.\n * @param [worldPos] Destination for World-space 3D position.\n * @returns World-space 3D position.\n */\n realToWorldPos(realPos: FloatArrayParam, worldPos: FloatArrayParam = createVec3()): FloatArrayParam {\n worldPos[0] = (realPos[0] - this.#origin[0]) / this.#scale;\n worldPos[1] = (realPos[1] - this.#origin[1]) / this.#scale;\n worldPos[2] = (realPos[2] - this.#origin[2]) / this.#scale;\n return worldPos;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n this.onUnits.clear();\n this.onScale.clear();\n this.onOrigin.clear();\n }\n}\n\nexport {Metrics};\n", "import type {View} from \"./View\";\nimport {Component, SDKError} from \"@xeokit/core\";\nimport {CustomProjectionType, FastRender, FrustumProjectionType, QualityRender} from \"@xeokit/constants\";\n\n/**\n * Configures Scalable Ambient Obscurance (SAO) for a {@link @xeokit/viewer!View}.\n */\nexport class SAO extends Component {\n\n /**\n * The View to which this SAO belongs.\n */\n public readonly view: View;\n\n #state: {\n renderModes: number[];\n intensity: number;\n minResolution: number;\n blendFactor: number;\n numSamples: number;\n bias: number;\n scale: number;\n blur: boolean;\n blendCutoff: number;\n enabled: boolean;\n kernelRadius: number;\n }\n\n /** @private */\n constructor(view: View, params: any) {\n\n super(view, params);\n\n this.view = view;\n\n this.#state = {\n renderModes: [QualityRender],\n enabled: params.enabled !== false,\n kernelRadius: params.kernelRadius || 100.0,\n intensity: (params.intensity !== undefined) ? params.intensity : 0.15,\n bias: (params.bias !== undefined) ? params.bias : 0.5,\n scale: (params.scale !== undefined) ? params.scale : 1.0,\n minResolution: (params.minResolution !== undefined) ? params.minResolution : 0.0,\n numSamples: (params.numSamples !== undefined) ? params.numSamples : 10,\n blur: !!(params.blur),\n blendCutoff: (params.blendCutff !== undefined) ? params.blendCutoff : 0.3,\n blendFactor: (params.blendFactor !== undefined) ? params.blendFactor : 1.0\n };\n }\n\n /**\n * Sets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render SAO.\n *\n * Supported rendering modes are:\n *\n * * {@link @xeokit/constants!FastRender | FastRender} - Fast rendering mode for smooth interactivity.\n * * {@link @xeokit/constants!QualityRender | QualityRender} - Quality rendering mode for maximum image fidelity.\n *\n * Default value is [{@link @xeokit/constants!QualityRender | QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Gets whether SAO is supported by this browser and GPU.\n *\n * Even when enabled, SAO will only work if supported.\n */\n get supported(): boolean {\n return this.view.viewer.renderer.getSAOSupported();\n }\n\n /**\n * Gets whether SAO is enabled for the {@link @xeokit/viewer!View}.\n *\n * Even when enabled, SAO will only apply if supported.\n *\n * Default value is ````false````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Sets whether SAO is enabled for the {@link @xeokit/viewer!View}.\n *\n * Even when enabled, SAO will only work if supported.\n *\n * Default value is ````false````.\n */\n set enabled(value: boolean) {\n value = !!value;\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Returns true if SAO is currently possible, where it is supported, enabled, and the current view state is compatible.\n * Called internally by renderers logic.\n * @private\n */\n get possible(): boolean {\n if (!this.supported) {\n return false;\n }\n if (!this.#state.enabled) {\n return false;\n }\n const projectionType = this.view.camera.projectionType;\n if (projectionType === CustomProjectionType) {\n return false;\n }\n if (projectionType === FrustumProjectionType) {\n return false;\n }\n return true;\n }\n\n /**\n * Gets the maximum area that SAO takes into account when checking for possible occlusion for each fragment.\n *\n * Default value is ````100.0````.\n */\n get kernelRadius(): number {\n return this.#state.kernelRadius;\n }\n\n /**\n * Sets the maximum area that SAO takes into account when checking for possible occlusion for each fragment.\n *\n * Default value is ````100.0````.\n */\n set kernelRadius(value: number) {\n if (value === undefined || value === null) {\n value = 100.0;\n }\n if (this.#state.kernelRadius === value) {\n return;\n }\n this.#state.kernelRadius = value;\n this.view.redraw();\n }\n\n /**\n * Gets the degree of darkening (ambient obscurance) produced by the SAO effect.\n *\n * Default value is ````0.15````.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the degree of darkening (ambient obscurance) produced by the SAO effect.\n *\n * Default value is ````0.15````.\n */\n set intensity(value: number) {\n if (value === undefined || value === null) {\n value = 0.15;\n }\n if (this.#state.intensity === value) {\n return;\n }\n this.#state.intensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO bias.\n *\n * Default value is ````0.5````.\n */\n get bias(): number {\n return this.#state.bias;\n }\n\n /**\n * Sets the SAO bias.\n *\n * Default value is ````0.5````.\n */\n set bias(value: number) {\n if (value === undefined || value === null) {\n value = 0.5;\n }\n if (this.#state.bias === value) {\n return;\n }\n this.#state.bias = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO occlusion scale.\n *\n * Default value is ````1.0````.\n */\n get scale(): number {\n return this.#state.scale;\n }\n\n /**\n * Sets the SAO occlusion scale.\n *\n * Default value is ````1.0````.\n */\n set scale(value: number) {\n if (value === undefined || value === null) {\n value = 1.0;\n }\n if (this.#state.scale === value) {\n return;\n }\n this.#state.scale = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO minimum resolution.\n *\n * Default value is ````0.0````.\n */\n get minResolution(): number {\n return this.#state.minResolution;\n }\n\n /**\n * Sets the SAO minimum resolution.\n *\n * Default value is ````0.0````.\n */\n set minResolution(value: number) {\n if (value === undefined || value === null) {\n value = 0.0;\n }\n if (this.#state.minResolution === value) {\n return;\n }\n this.#state.minResolution = value;\n this.view.redraw();\n }\n\n /**\n * Gets the number of SAO samples.\n *\n * Default value is ````10````.\n */\n get numSamples(): number {\n return this.#state.numSamples;\n }\n\n /**\n * Sets the number of SAO samples.\n *\n * Default value is ````10````.\n *\n * Update this sparingly, since it causes a shader recompile.\n */\n set numSamples(value: number) {\n if (value === undefined || value === null) {\n value = 10;\n }\n if (this.#state.numSamples === value) {\n return;\n }\n this.#state.numSamples = value;\n this.view.redraw();\n }\n\n /**\n * Gets whether Guassian blur is enabled.\n *\n * Default value is ````true````.\n */\n get blur(): boolean {\n return this.#state.blur;\n }\n\n /**\n * Sets whether Guassian blur is enabled.\n *\n * Default value is ````true````.\n */\n set blur(value: boolean) {\n value = (value !== false);\n if (this.#state.blur === value) {\n return;\n }\n this.#state.blur = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO blend cutoff.\n *\n * Default value is ````0.3````.\n *\n * Normally you don't need to alter this.\n */\n get blendCutoff(): number {\n return this.#state.blendCutoff;\n }\n\n /**\n * Sets the SAO blend cutoff.\n *\n * Default value is ````0.3````.\n *\n * Normally you don't need to alter this.\n */\n set blendCutoff(value: number) {\n if (value === undefined || value === null) {\n value = 0.3;\n }\n if (this.#state.blendCutoff === value) {\n return;\n }\n this.#state.blendCutoff = value;\n this.view.redraw();\n }\n\n /**\n * Gets the SAO blend scale.\n *\n * Default value is ````1.0````.\n *\n * Normally you don't need to alter this.\n */\n get blendFactor(): number {\n return this.#state.blendFactor;\n }\n\n /**\n * Sets the SAO blend factor.\n *\n * Default value is ````1.0````.\n *\n * Normally you don't need to alter this.\n */\n set blendFactor(value: number) {\n if (value === undefined || value === null) {\n value = 1.0;\n }\n if (this.#state.blendFactor === value) {\n return;\n }\n this.#state.blendFactor = value;\n this.view.redraw();\n }\n\n /**\n * Gets if SAO is currently applied.\n *\n * This is `true` when {@link SAO.enabled | SAO.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link SAO.renderModes | SAO.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport {QualityRender} from \"@xeokit/constants\";\n\n\n/**\n * Configures when textures are rendered on {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * ## Summary\n *\n * * Located at {@link View.textures}.\n */\nclass Texturing extends Component {\n\n /**\n * The View to which this Texturing belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n enabled: boolean;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n enabled?: boolean;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n renderModes: options.renderModes || [QualityRender],\n enabled: options.enabled !== false\n };\n }\n\n /**\n * Sets which rendering modes in which to render textures.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render textures.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets if textures on {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if textures on {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Gets if textures are currently applied.\n *\n * This is `true` when {@link Texturing.enabled | Texturing.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link Texturing.renderModes | Texturing.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {Texturing};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\n\n\n/**\n * Configures the appearance of \"lines\" geometry primitives.\n *\n * * Located at {@link View#linesMaterial}.\n */\nclass LinesMaterial extends Component {\n\n /**\n * The View to which this LinesMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n lineWidth: number\n };\n\n /**\n * @private\n */\n constructor(view: View, options: { lineWidth: number } = {lineWidth: 1}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n lineWidth: (options.lineWidth !== undefined && options.lineWidth !== null) ? options.lineWidth : 1\n };\n }\n\n /**\n * Sets line width.\n *\n * Default value is ````1```` pixels.\n */\n set lineWidth(value: number) {\n this.#state.lineWidth = value || 1;\n this.view.redraw();\n }\n\n /**\n * Gets the line width.\n *\n * Default value is ````1```` pixels.\n */\n get lineWidth(): number {\n return this.#state.lineWidth;\n }\n}\n\nexport {LinesMaterial};", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\n\nimport {ViewObject} from \"./ViewObject\";\nimport type {Viewer} from \"./Viewer\";\nimport type {View} from \"./View\";\nimport type {Scene, SceneModel} from \"@xeokit/scene\";\n\n\n\n/**\n * A layer of {@link @xeokit/viewer!ViewObject | ViewObjects} in a {@link @xeokit/viewer!View}.\n *\n * See {@link \"@xeokit/viewer\"} for usage.\n *\n * ## Summary\n *\n * * Automatically stores a {@link @xeokit/viewer!ViewObject} for each existing {@link RendererObject} that has a matching {@link RendererObject.layerId | ViewerObject.layerId}\n * * Useful for segreggating {@link @xeokit/viewer!ViewObject | ViewObjects} into layers\n * * Created automatically or manually (see {@link View.createLayer | View.createLayer})\n * * Stored in {@link View.layers | View.layers}\n *\n * ## Overview\n *\n * ViewLayers organize a {@link View |View's} {@link @xeokit/viewer!ViewObject | ViewObjects} into layers, according to which aspects of\n * the view they represent. They make it easier for us to focus our interactions on the ViewObjects that are relevant\n * to the particular aspects we're interested in.\n *\n * ### Typical use case: segregating model objects from environment objects\n *\n * A typical use case for this feature is to group environmental {@link @xeokit/viewer!ViewObject | ViewObjects} (e.g. ground, skybox) in an \"environment\" ViewLayer,\n * and group model ViewObjects in a \"model\" ViewLayer. Then we can focus our model interactions (show, hide, highlight,\n * save/load BCF viewpoints, etc.) on the ViewObjects in the \"model\" ViewLayer, without involving the \"environment\"\n * ViewObjects at all, which are effectively in the background. We can basically ignore the environment objects as we\n * do various batch operations on our model objects, i.e. \"X-ray all\", \"X-ray everything except for walls\" and so on.\n *\n * ### Automatic ViewLayers\n *\n * By default, each {@link @xeokit/viewer!View} automatically lazy-creates ViewLayers within itself as required. As {@link RendererObject | ViewerObjects} appear in the\n * {@link @xeokit/viewer!Viewer | Viewer}, {@link @xeokit/viewer!ViewObject | ViewObjects} and Viewlayers magically appear in each existing View.\n *\n * Recall that, whenever a {@link RendererObject} is created, each existing {@link @xeokit/viewer!View} will automatically create a\n * corresponding {@link @xeokit/viewer!ViewObject} to represent and control that ViewerObject's appearance within the View's canvas.\n *\n * If the {@link RendererObject} also happens to have a value set on its {@link RendererObject.layerId} ID property, then the View\n * will also automatically ensure that it contains a matching {@link @xeokit/viewer!ViewLayer}, and will register the new ViewObject\n * in that ViewLayer. Note that each ViewObject can belong to a maximum of one ViewLayer.\n *\n * When a {@link @xeokit/viewer!View} automatically creates Viewlayers, it will also automatically destroy them again whenever\n * their {@link RendererObject | ViewerObjects} have all been destroyed.\n *\n * ### Manual ViewLayers\n *\n * We can configure a {@link @xeokit/viewer!View} to **not** automatically create ViewLayers, and instead rely on us to manually create them.\n *\n * When we do that, the View will only create the {@link @xeokit/viewer!ViewObject | ViewObjects} within itself for the ViewLayers that we created. The\n * View will ignore all ViewerObjects that don't have {@link RendererObject.layerId} values that match the IDs of our\n * manually-created ViewLayers.\n *\n * This feature is useful for ensuring that aspect-focused Views don't contain huge numbers of unused ViewObjects for\n * ViewerObjects that they never need to show.\n *\n * When we manually create ViewLayers like this, then the View will not automatically destroy them whenever\n * their {@link RendererObject | ViewerObjects} have all been destroyed. This keeps the ViewLayers around, in case\n * we create matching ViewerObjects again in future.\n *\n * ## Examples\n *\n * ### Exampe 1: Automatic ViewLayers\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}:\n *\n *````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\"\n * });\n *````\n *\n * Create a {@link @xeokit/viewer!View}, with the default setting of ````false```` for {@link ViewParams.autoLayers}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myView1\",\n * autoLayers: true // <<----------- Default\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * Next, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} containing two model {@link RendererObject | ViewerObjects} that represent a building\n * foundation and walls, along with two environmental ViewerObjects that represent a skybox and ground plane.\n *\n * The ground and skybox ViewerObjects specify that their {@link @xeokit/viewer!ViewObject | ViewObjects} belong\n * to \"environment\" ViewLayers, while the model ViewerObjects specify that their ViewObjects belong to \"model\" ViewLayers.\n *\n * ````javascript\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * // (calls to SceneModel createGeometry and\n * // createLayerMesh omitted for brevity)\n *\n * sceneModel.createObject({\n * id: \"ground\",\n * meshIds: [\"groundMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"skyBox\",\n * meshIds: [\"skyBoxMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseFoundation\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseWalls\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.build();\n * ````\n *\n * Our {@link @xeokit/viewer!View} has now automatically created an \"environment\" {@link @xeokit/viewer!ViewLayer}, which contains {@link @xeokit/viewer!ViewObject | ViewObjects} for the skybox and\n * ground plane ViewerObjects, and a \"model\" ViewLayer, which contains ViewObjects for the house foundation and walls.\n *\n * We can now batch-update the ViewObjects in each ViewLayer independently. As mentioned, this is useful when we need to ignore things\n * like UI or environmental objects in batch-updates, BCF viewpoints etc.\n *\n * ````javascript\n * // viewer.objects contains four ViewerObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.objects contains four ViewObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.layers contains two ViewLayers with IDs \"environment\" and \"model\"\n *\n * const environmentLayer = view1.layers[\"environment\"];\n * environmentLayer.setObjectsVisible(environmentLayer.objectIds, true);\n\n * const modelLayer = view1.layers[\"model\"];\n * modelLayer.setObjectsVisible(modelLayer.objectIds, true);\n * ````\n *\n * ### Example 2: Manual ViewLayers\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}:\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\"\n * });\n * ````\n *\n * Create a {@link @xeokit/viewer!View}, this time with ````false```` for {@link ViewParams.autoLayers}, in order to **not**\n * automatically create ViewLayers on demand:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * elementId: \"myCanvas1\",\n * autoLayers: false // <<----------- Override default\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n * ````\n *\n * We'll manually create the \"model\" ViewLayer, and won't create an \"environment\" ViewLayer:\n *\n * ````javascript\n * const modelViewLayer = view1.createLayer({\n * id: \"model\",\n * visible: true\n * });\n * ````\n *\n * As we did in the previous example, we'll now create a {@link @xeokit/scene!SceneModel | SceneModel} containing two model\n * {@link RendererObject | ViewerObjects} that represent a building foundation and walls, along with two environmental\n * ViewerObjects that represent a skybox and ground plane.\n *\n * As before, the ground and skybox ViewerObjects specify that their {@link @xeokit/viewer!ViewObject | ViewObjects} belong to \"environment\" ViewLayers,\n * while the model ViewerObjects specify that their ViewObjects belong to \"model\" ViewLayers.\n *\n * ````javascript\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * // (calls to SceneModel createGeometry and\n * // createLayerMesh omitted for brevity)\n *\n * sceneModel.createObject({\n * id: \"ground\",\n * meshIds: [\"groundMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"skyBox\",\n * meshIds: [\"skyBoxMesh}],\n * layerId: \"environment\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseFoundation\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.createObject({\n * id: \"houseWalls\",\n * meshIds: [\"myMesh}],\n * layerId: \"model\"\n * });\n *\n * sceneModel.build();\n * ````\n *\n * This time, however, our {@link @xeokit/viewer!View} has now created {@link @xeokit/viewer!ViewObject | ViewObjects} for the \"model\" ViewerObjects, while\n * ignoring the \"environment\" ViewerObjects.\n *\n * As far as this View is concerned, the \"environment\" ViewerObjects do not exist.\n *\n * ````javascript\n * // viewer.scene.objects contains four SceneObjects with IDs \"ground\", \"skyBox\", \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.objects contains two ViewObjects with IDs \"houseFoundation\" and \"houseWalls\"\n *\n * // viewer.views.view1.layers contains one ViewLayer with ID \"model\"\n *\n * const modelLayer = view1.layers[\"model\"];\n * modelLayer.setObjectsVisible(modelLayer.objectIds, true);\n * ````\n */\nclass ViewLayer extends Component {\n\n /**\n ID of this ViewLayer, unique within the {@link @xeokit/viewer!View}.\n\n This ViewLayer is mapped by this ID in {@link View.layers}.\n */\n declare readonly id: string;\n\n /**\n * The Viewer to which this ViewLayer belongs.\n */\n declare readonly viewer: Viewer;\n\n /**\n * The View to which this ViewLayer belongs.\n */\n declare readonly view: View;\n\n /**\n * Map of the all {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * These are the ViewObjects for which {@link @xeokit/viewer!ViewObject.layerId | ViewObject.layerId} has the same value as {@link @xeokit/viewer!ViewLayer.id}.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n *\n * The ViewLayer automatically ensures that there is a {@link @xeokit/viewer!ViewObject} here for\n * each {@link RendererObject} in the {@link @xeokit/viewer!Viewer | Viewer}\n */\n readonly objects: { [key: string]: ViewObject };\n\n /**\n * Map of the currently visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is visible when {@link @xeokit/viewer!ViewObject.visible} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly visibleObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently x-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is x-rayed when {@link @xeokit/viewer!ViewObject.xrayed} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly xrayedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is highlighted when {@link @xeokit/viewer!ViewObject.highlighted} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly highlightedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * A ViewObject is selected when {@link @xeokit/viewer!ViewObject.selected} is true.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly selectedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of currently colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly colorizedObjects: { [key: string]: ViewObject };\n\n /**\n * Map of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer whose opacity has been updated.\n *\n * Each {@link @xeokit/viewer!ViewObject} is mapped here by {@link @xeokit/viewer!ViewObject.id}.\n */\n readonly opacityObjects: { [key: string]: ViewObject };\n\n /**\n * When true, View destroys this ViewLayer as soon as there are no ViewObjects\n * that need it. When false, View retains it.\n * @private\n */\n autoDestroy: boolean;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is created in this ViewLayer.\n *\n * @event\n */\n readonly onObjectCreated: EventEmitter;\n\n /**\n * Emits an event each time a {@link @xeokit/viewer!ViewObject} is destroyed in this ViewLayer.\n *\n * @event\n */\n readonly onObjectDestroyed: EventEmitter;\n\n /**\n * Emits an event each time the visibility of a {@link @xeokit/viewer!ViewObject} changes.\n *\n * ViewObjects are shown and hidden with {@link View.setObjectsVisible}, {@link @xeokit/viewer!ViewLayer.setObjectsVisible} or {@link @xeokit/viewer!ViewObject.visible}.\n *\n * @event\n */\n readonly onObjectVisibility: EventEmitter;\n\n #renderModes: number[];\n\n #numObjects: number;\n #objectIds: string[] | null;\n #numVisibleObjects: number;\n #visibleObjectIds: string[] | null;\n #numXRayedObjects: number;\n #xrayedObjectIds: string[] | null;\n #numHighlightedObjects: number;\n #highlightedObjectIds: string[] | null;\n #numSelectedObjects: number;\n #selectedObjectIds: string[] | null;\n #numColorizedObjects: number;\n #colorizedObjectIds: string[] | null;\n #numOpacityObjects: number;\n #opacityObjectIds: string[] | null;\n\n #qualityRender: boolean;\n\n gammaOutput: boolean;\n\n constructor(options: {\n id: string;\n viewer: Viewer;\n view: View;\n qualityRender?: boolean;\n autoDestroy?: boolean;\n }) {\n\n super(options.view, options);\n\n this.id = options.id;\n this.viewer = options.viewer;\n this.view = options.view;\n\n this.objects = {};\n this.visibleObjects = {};\n this.xrayedObjects = {};\n this.highlightedObjects = {};\n this.selectedObjects = {};\n this.colorizedObjects = {};\n this.opacityObjects = {};\n\n this.autoDestroy = (options.autoDestroy !== false);\n\n this.#numObjects = 0;\n this.#numVisibleObjects = 0;\n this.#numXRayedObjects = 0\n this.#numHighlightedObjects = 0;\n this.#numSelectedObjects = 0;\n this.#numColorizedObjects = 0;\n this.#numOpacityObjects = 0;\n\n this.#qualityRender = !!options.qualityRender;\n\n this.#renderModes = [];\n\n this.onObjectCreated = new EventEmitter(new EventDispatcher());\n this.onObjectDestroyed = new EventEmitter(new EventDispatcher());\n this.onObjectVisibility = new EventEmitter(new EventDispatcher());\n\n this.#initViewObjects();\n }\n\n /**\n * Gets the gamma factor.\n */\n get gammaFactor() { // TODO\n return 1.0;\n }\n\n /**\n * Sets which rendering modes in which to render the {@link ViewObject | ViewObjects} in this ViewLayer.\n *\n * Default value is [].\n */\n set renderModes(value: number[]) {\n this.#renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render the {@link ViewObject | ViewObjects} in this ViewLayer.\n *\n * Default value is [].\n */\n get renderModes(): number[] {\n return this.#renderModes;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numObjects(): number {\n return this.#numObjects;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get objectIds(): string[] {\n if (!this.#objectIds) {\n this.#objectIds = Object.keys(this.objects);\n }\n return this.#objectIds;\n }\n\n /**\n * Gets the number of visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numVisibleObjects(): number {\n return this.#numVisibleObjects;\n }\n\n /**\n * Gets the IDs of the visible {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get visibleObjectIds(): string[] {\n if (!this.#visibleObjectIds) {\n this.#visibleObjectIds = Object.keys(this.visibleObjects);\n }\n return this.#visibleObjectIds;\n }\n\n /**\n * Gets the number of X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numXRayedObjects(): number {\n return this.#numXRayedObjects;\n }\n\n /**\n * Gets the IDs of the X-rayed {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get xrayedObjectIds(): string[] {\n if (!this.#xrayedObjectIds) {\n this.#xrayedObjectIds = Object.keys(this.xrayedObjects);\n }\n return this.#xrayedObjectIds;\n }\n\n /**\n * Gets the number of highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numHighlightedObjects(): number {\n return this.#numHighlightedObjects;\n }\n\n /**\n * Gets the IDs of the highlighted {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get highlightedObjectIds(): string[] {\n if (!this.#highlightedObjectIds) {\n this.#highlightedObjectIds = Object.keys(this.highlightedObjects);\n }\n return this.#highlightedObjectIds;\n }\n\n /**\n * Gets the number of selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numSelectedObjects(): number {\n return this.#numSelectedObjects;\n }\n\n /**\n * Gets the IDs of the selected {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get selectedObjectIds(): string[] {\n if (!this.#selectedObjectIds) {\n this.#selectedObjectIds = Object.keys(this.selectedObjects);\n }\n return this.#selectedObjectIds;\n }\n\n /**\n * Gets the number of colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get numColorizedObjects(): number {\n return this.#numColorizedObjects;\n }\n\n /**\n * Gets the IDs of the colorized {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n */\n get colorizedObjectIds(): string[] {\n if (!this.#colorizedObjectIds) {\n this.#colorizedObjectIds = Object.keys(this.colorizedObjects);\n }\n return this.#colorizedObjectIds;\n }\n\n /**\n * Gets the IDs of the {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer that have updated opacities.\n */\n get opacityObjectIds(): string[] {\n if (!this.#opacityObjectIds) {\n this.#opacityObjectIds = Object.keys(this.opacityObjects);\n }\n return this.#opacityObjectIds;\n }\n\n /**\n * Gets the number of {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer that have updated opacities.\n */\n get numOpacityObjects(): number {\n return this.#numOpacityObjects;\n }\n\n /**\n * @private\n */\n registerViewObject(viewObject: ViewObject) {\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectCreated.dispatch(this, viewObject);\n }\n\n /**\n * @private\n */\n deregisterViewObject(viewObject: ViewObject) {\n delete this.objects[viewObject.id];\n delete this.visibleObjects[viewObject.id];\n delete this.xrayedObjects[viewObject.id];\n delete this.highlightedObjects[viewObject.id];\n delete this.selectedObjects[viewObject.id];\n delete this.colorizedObjects[viewObject.id];\n delete this.opacityObjects[viewObject.id];\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n\n /**\n * @private\n */\n redraw() {\n this.viewer.renderer.setImageDirty(this.view.viewIndex);\n }\n\n /**\n * @private\n */\n objectVisibilityUpdated(viewObject: ViewObject, visible: boolean, notify: boolean = true) {\n if (visible) {\n this.visibleObjects[viewObject.id] = viewObject;\n this.#numVisibleObjects++;\n } else {\n delete this.visibleObjects[viewObject.id];\n this.#numVisibleObjects--;\n }\n this.#visibleObjectIds = null; // Lazy regenerate\n if (notify) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n this.view.objectVisibilityUpdated(viewObject, visible, notify);\n }\n\n /**\n * @private\n */\n objectXRayedUpdated(viewObject: ViewObject, xrayed: boolean) {\n if (xrayed) {\n this.xrayedObjects[viewObject.id] = viewObject;\n this.#numXRayedObjects++;\n } else {\n delete this.xrayedObjects[viewObject.id];\n this.#numXRayedObjects--;\n }\n this.#xrayedObjectIds = null; // Lazy regenerate\n this.view.objectXRayedUpdated(viewObject, xrayed);\n }\n\n /**\n * @private\n */\n objectHighlightedUpdated(viewObject: ViewObject, highlighted: boolean) {\n if (highlighted) {\n this.highlightedObjects[viewObject.id] = viewObject;\n this.#numHighlightedObjects++;\n } else {\n delete this.highlightedObjects[viewObject.id];\n this.#numHighlightedObjects--;\n }\n this.#highlightedObjectIds = null; // Lazy regenerate\n this.view.objectHighlightedUpdated(viewObject, highlighted);\n }\n\n /**\n * @private\n */\n objectSelectedUpdated(viewObject: ViewObject, selected: boolean) {\n if (selected) {\n this.selectedObjects[viewObject.id] = viewObject;\n this.#numSelectedObjects++;\n } else {\n delete this.selectedObjects[viewObject.id];\n this.#numSelectedObjects--;\n }\n this.#selectedObjectIds = null; // Lazy regenerate\n this.view.objectSelectedUpdated(viewObject, selected);\n }\n\n /**\n * @private\n */\n objectColorizeUpdated(viewObject: ViewObject, colorized: boolean) {\n if (colorized) {\n this.colorizedObjects[viewObject.id] = viewObject;\n this.#numColorizedObjects++;\n } else {\n delete this.colorizedObjects[viewObject.id];\n this.#numColorizedObjects--;\n }\n this.#colorizedObjectIds = null; // Lazy regenerate\n this.view.objectColorizeUpdated(viewObject, colorized);\n }\n\n /**\n * @private\n */\n objectOpacityUpdated(viewObject: ViewObject, opacityUpdated: boolean) {\n if (opacityUpdated) {\n this.opacityObjects[viewObject.id] = viewObject;\n this.#numOpacityObjects++;\n } else {\n delete this.opacityObjects[viewObject.id];\n this.#numOpacityObjects--;\n }\n this.#opacityObjectIds = null; // Lazy regenerate\n this.view.objectOpacityUpdated(viewObject, opacityUpdated);\n }\n\n /**\n * Updates the visibility of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.visible} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.visibleObjects} and {@link @xeokit/viewer!ViewLayer.numVisibleObjects}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param visible Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsVisible(objectIds: string[], visible: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.visible !== visible);\n viewObject.visible = visible;\n if (changed) {\n this.onObjectVisibility.dispatch(this, viewObject);\n }\n return changed;\n });\n }\n\n /**\n * Updates the collidability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Updates {@link @xeokit/viewer!ViewObject.collidable} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param collidable Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCollidable(objectIds: string[], collidable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.collidable !== collidable);\n viewObject.collidable = collidable;\n return changed;\n });\n }\n\n /**\n * Updates the culled status of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * Updates {@link @xeokit/viewer!ViewObject.culled} on the Objects with the given IDs.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param culled Whether or not to cull.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsCulled(objectIds: string[], culled: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.culled !== culled);\n viewObject.culled = culled;\n return changed;\n });\n }\n\n /**\n * Selects or deselects the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.selected} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.selectedObjects} and {@link @xeokit/viewer!ViewLayer.numSelectedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param selected Whether or not to select.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsSelected(objectIds: string[], selected: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.selected !== selected);\n viewObject.selected = selected;\n return changed;\n });\n }\n\n /**\n * Highlights or un-highlights the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.highlighted} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.highlightedObjects} and {@link @xeokit/viewer!ViewLayer.numHighlightedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param highlighted Whether or not to highlight.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsHighlighted(objectIds: string[], highlighted: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.highlighted !== highlighted);\n viewObject.highlighted = highlighted;\n return changed;\n });\n }\n\n /**\n * Applies or removes X-ray rendering for the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.xrayed} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.xrayedObjects} and {@link @xeokit/viewer!ViewLayer.numXRayedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param xrayed Whether or not to xray.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsXRayed(objectIds: string[], xrayed: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.xrayed !== xrayed);\n if (changed) {\n viewObject.xrayed = xrayed;\n }\n return changed;\n });\n }\n\n /**\n * Colorizes the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.colorize} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.colorizedObjects} and {@link @xeokit/viewer!ViewLayer.numColorizedObjects}.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param colorize - RGB colorize factors in range ````[0..1,0..1,0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsColorized(objectIds: string[], colorize: number[]) {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n viewObject.colorize = colorize;\n });\n }\n\n /**\n * Sets the opacity of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.opacity} on the Objects with the given IDs.\n * - Updates {@link @xeokit/viewer!ViewLayer.opacityObjects} and {@link @xeokit/viewer!ViewLayer.numOpacityObjects}.\n *\n * @param objectIds - One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param opacity - Opacity factor in range ````[0..1]````.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} changed opacity, else false if all updates were redundant and not applied.\n */\n setObjectsOpacity(objectIds: string[], opacity: number): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.opacity !== opacity);\n if (changed) {\n viewObject.opacity = opacity;\n }\n return changed;\n });\n }\n\n /**\n * Sets the pickability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.pickable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link @xeokit/viewer!View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param pickable Whether or not to set pickable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsPickable(objectIds: string[], pickable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.pickable !== pickable);\n if (changed) {\n viewObject.pickable = pickable;\n }\n return changed;\n });\n }\n\n /**\n * Sets the clippability of the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * - Updates {@link @xeokit/viewer!ViewObject.clippable} on the Objects with the given IDs.\n * - Enables or disables the ability to pick the given Objects with {@link @xeokit/viewer!View.pick}.\n *\n * @param {String[]} objectIds Array of {@link @xeokit/viewer!ViewObject.id} values.\n * @param clippable Whether or not to set clippable.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n setObjectsClippable(objectIds: string[], clippable: boolean): boolean {\n return this.withObjects(objectIds, (viewObject: ViewObject) => {\n const changed = (viewObject.clippable !== clippable);\n if (changed) {\n viewObject.clippable = clippable;\n }\n return changed;\n });\n }\n\n /**\n * Iterates with a callback over the given {@link @xeokit/viewer!ViewObject | ViewObjects} in this ViewLayer.\n *\n * @param objectIds One or more {@link @xeokit/viewer!ViewObject.id} values.\n * @param callback Callback to execute on each {@link @xeokit/viewer!ViewObject}.\n * @returns True if any {@link @xeokit/viewer!ViewObject | ViewObjects} were updated, else false if all updates were redundant and not applied.\n */\n withObjects(objectIds: string[], callback: Function): boolean {\n let changed = false;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const id = objectIds[i];\n let viewObject = this.objects[id];\n if (viewObject) {\n changed = callback(viewObject) || changed;\n }\n }\n return changed;\n }\n\n #initViewObjects() {\n const models = this.viewer.scene.models;\n for (const id in models) {\n const model = models[id];\n this.#createViewObjects(model);\n }\n this.viewer.scene.onModelCreated.subscribe((scene: Scene, model: SceneModel) => {\n this.#createViewObjects(model);\n });\n // this.viewer.scene.onModelDestroyed.subscribe((scene:Scene, model: SceneModel) => {\n // this.#destroyViewObjects(model);\n // });\n }\n\n #createViewObjects(model: SceneModel) {\n const sceneObjects = model.objects;\n for (let id in sceneObjects) {\n const sceneObject = sceneObjects[id];\n const rendererViewObject = this.viewer.renderer.rendererObjects[id];\n if (sceneObject.layerId == this.id) {\n if (!this.objects[id]) {\n const viewObject = new ViewObject(this, sceneObject, rendererViewObject);\n this.objects[viewObject.id] = viewObject;\n this.#numObjects++;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectCreated.dispatch(this, viewObject);\n }\n }\n }\n }\n\n #destroyViewObjectsForModel(model: SceneModel) {\n const viewerObjects = model.objects;\n for (let id in viewerObjects) {\n const viewerObject = viewerObjects[id];\n const viewObject = this.objects[viewerObject.id];\n if (viewObject) {\n viewObject._destroy();\n this.#numObjects--;\n this.#objectIds = null; // Lazy regenerate\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n }\n\n /**\n * Destroys this ViewLayer.\n *\n * Causes {@link @xeokit/viewer!Viewer | Viewer} to fire a \"viewDestroyed\" event.\n */\n destroy() {\n this.#destroyViewObjects();\n this.onObjectCreated.clear();\n this.onObjectDestroyed.clear();\n this.onObjectVisibility.clear();\n super.destroy();\n }\n\n #destroyViewObjects() {\n const objects = this.objects;\n for (let id in objects) {\n const viewObject = objects[id];\n this.deregisterViewObject(viewObject);\n this.onObjectDestroyed.dispatch(this, viewObject);\n }\n }\n}\n\nexport {ViewLayer};\n", "import {Component} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\nimport type {View} from \"./View\";\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when they are xrayed, highlighted or selected.\n *\n * ## Summary\n *\n * * Located at {@link View.xrayMaterial}, {@link View.highlightMaterial} and {@link View.selectedMaterial}.\n * * XRay a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.xrayed} ````true````.\n * * Highlight a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.highlighted} ````true````.\n * * Select a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.selected} ````true````.\n */\nclass EmphasisMaterial extends Component {\n\n /**\n * The View to which this EmphasisMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n fillColor: Float32Array;\n backfaces: boolean;\n edgeColor: Float32Array;\n edgeWidth: number;\n edgeAlpha: number;\n edges: boolean;\n fillAlpha: number;\n fill: boolean;\n glowThrough: boolean;\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n fillColor?: FloatArrayParam;\n backfaces?: boolean;\n edgeColor?: FloatArrayParam;\n edgeWidth?: number;\n edgeAlpha?: number;\n edges?: boolean;\n fillAlpha?: number;\n fill?: boolean;\n glowThrough?:boolean;\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n fill: !!options.fill,\n fillColor: new Float32Array(options.fillColor || [0.4, 0.4, 0.4]),\n fillAlpha: (options.fillAlpha !== undefined && options.fillAlpha !== null) ? options.fillAlpha : 0.2,\n edges: options.edges !== false,\n edgeColor: new Float32Array(options.edgeColor || [0.2, 0.2, 0.2]),\n edgeAlpha: (options.edgeAlpha !== undefined && options.edgeAlpha !== null) ? options.edgeAlpha : 0.5,\n edgeWidth: (options.edgeWidth !== undefined && options.edgeWidth !== null) ? options.edgeWidth : 1,\n backfaces: !!options.backfaces,\n glowThrough: !!options.glowThrough\n };\n }\n\n /**\n * Sets if the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are filled with color.\n *\n * Default is ````true````.\n */\n set fill(value: boolean) {\n if (this.#state.fill === value) {\n return;\n }\n this.#state.fill = value;\n this.view.redraw();\n }\n\n /**\n * Gets if the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are filled with color.\n *\n * Default is ````true````.\n */\n get fill(): boolean {\n return this.#state.fill;\n }\n\n /**\n * Sets the RGB surface fill color for the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ````[0.4, 0.4, 0.4]````.\n */\n set fillColor(value: FloatArrayParam) {\n const fillColor = this.#state.fillColor;\n if (fillColor[0] === value[0] && fillColor[1] === value[1] && fillColor[2] === value[2]) {\n return;\n }\n fillColor[0] = 0.4;\n fillColor[1] = 0.4;\n fillColor[2] = 0.4;\n this.view.redraw();\n }\n\n /**\n * Gets the RGB surface fill color for the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ````[0.4, 0.4, 0.4]````.\n */\n get fillColor(): Float32Array {\n return this.#state.fillColor;\n }\n\n /**\n * Sets the transparency of the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n set fillAlpha(value: number) {\n if (this.#state.fillAlpha === value) {\n return;\n }\n this.#state.fillAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets the transparency of the surfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n get fillAlpha(): number {\n return this.#state.fillAlpha;\n }\n\n /**\n * Sets if the edges on emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set edges(value: boolean) {\n if (this.#state.edges === value) {\n return;\n }\n this.#state.edges = value;\n this.view.redraw();\n }\n\n /**\n * Gets if the edges on emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get edges(): boolean {\n return this.#state.edges;\n }\n\n /**\n * Sets the RGB color of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ```` [0.2, 0.2, 0.2]````.\n */\n set edgeColor(value: FloatArrayParam) {\n let edgeColor = this.#state.edgeColor;\n if (edgeColor[0] === value[0] && edgeColor[1] === value[1] && edgeColor[2] === value[2]) {\n return;\n }\n edgeColor[0] = 0.2;\n edgeColor[1] = 0.2;\n edgeColor[2] = 0.2;\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default is ```` [0.2, 0.2, 0.2]````.\n */\n get edgeColor(): Float32Array {\n return this.#state.edgeColor;\n }\n\n /**\n * Sets the transparency of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n set edgeAlpha(value: number) {\n if (this.#state.edgeAlpha === value) {\n return;\n }\n this.#state.edgeAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets the transparency of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default is ````0.2````.\n */\n get edgeAlpha(): number {\n return this.#state.edgeAlpha;\n }\n\n /**\n * Sets the width of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * Default value is ````1.0```` pixels.\n */\n set edgeWidth(value: number) {\n this.#state.edgeWidth = value;\n this.view.redraw();\n }\n\n /**\n * Gets the width of the edges of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects}.\n *\n * This is not supported by WebGL implementations based on DirectX [2019].\n *\n * Default value is ````1.0```` pixels.\n */\n get edgeWidth(): number {\n return this.#state.edgeWidth;\n }\n\n /**\n * Sets whether to render backfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} when {@link EmphasisMaterial.fill} is ````true````.\n *\n * Default is ````false````.\n */\n set backfaces(value: boolean) {\n if (this.#state.backfaces === value) {\n return;\n }\n this.#state.backfaces = value;\n this.view.redraw();\n }\n\n /**\n * Gets whether to render backfaces of emphasized {@link @xeokit/viewer!ViewObject | ViewObjects} when {@link EmphasisMaterial.fill} is ````true````.\n *\n * Default is ````false````.\n */\n get backfaces(): boolean {\n return this.#state.backfaces;\n }\n\n /**\n * Sets whether to render emphasized objects over the top of other objects, as if they were \"glowing through\".\n *\n * Default is ````true````.\n *\n * Note: updating this property will not affect the appearance of objects that are already emphasized.\n *\n * @type {Boolean}\n */\n set glowThrough(value) {\n value = (value !== false);\n if (this.#state.glowThrough === value) {\n return;\n }\n this.#state.glowThrough = value;\n this.view.redraw();\n }\n\n /**\n * Sets whether to render emphasized objects over the top of other objects, as if they were \"glowing through\".\n *\n * Default is ````true````.\n *\n * @type {Boolean}\n */\n get glowThrough() {\n return this.#state.glowThrough;\n }\n\n /**\n * @private\n */\n get hash(): string {\n return \"\";\n }\n\n /**\n * @private\n */\n destroy(): void {\n super.destroy();\n }\n}\n\nexport {EmphasisMaterial};\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {QualityRender} from \"@xeokit/constants\";\n\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when their edges are emphasised.\n *\n * ## Summary\n *\n * * Located at {@link View.edges}.\n * * Emphasise edges of a {@link @xeokit/viewer!ViewObject} by setting {@link @xeokit/viewer!ViewObject.enabled} ````true````.\n */\nclass Edges extends Component {\n\n /**\n * The View to which this Edges belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n edgeColor: Float32Array;\n edgeWidth: number;\n edgeAlpha: number;\n enabled: boolean;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n edgeColor?: FloatArrayParam;\n edgeWidth?: number;\n edgeAlpha?: number;\n enabled?: boolean;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n renderModes: options.renderModes || [QualityRender],\n enabled: options.enabled !== false,\n edgeColor: new Float32Array(options.edgeColor || [0.2, 0.2, 0.2]),\n edgeAlpha: (options.edgeAlpha !== undefined && options.edgeAlpha !== null) ? options.edgeAlpha : 0.5,\n edgeWidth: (options.edgeWidth !== undefined && options.edgeWidth !== null) ? options.edgeWidth : 1\n };\n }\n\n /**\n * Sets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to render edges.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!QualityRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets if edges of {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if edges of {@link ViewObject | ViewObjects} are visible.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n\n /////////////////////////////////////////////////////////////////////////\n // HACK\n /////////////////////////////////////////////////////////////////////////\n return false;\n\n // return this.#state.enabled;\n }\n\n /**\n * Sets RGB edge color for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````[0.2, 0.2, 0.2]````.\n */\n set edgeColor(value: FloatArrayParam) {\n let edgeColor = this.#state.edgeColor;\n if (value && edgeColor[0] === value[0] && edgeColor[1] === value[1] && edgeColor[2] === value[2]) {\n return;\n }\n edgeColor[0] = 0.2;\n edgeColor[1] = 0.2;\n edgeColor[2] = 0.2;\n this.view.redraw();\n }\n\n /**\n * Gets RGB edge color for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````[0.2, 0.2, 0.2]````.\n */\n get edgeColor(): Float32Array {\n return this.#state.edgeColor;\n }\n\n /**\n * Sets edge transparency for {@link ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default value is ````1.0````.\n */\n set edgeAlpha(value: number) {\n if (this.#state.edgeAlpha === value) {\n return;\n }\n this.#state.edgeAlpha = value;\n this.view.redraw();\n }\n\n /**\n * Gets edge transparency for {@link ViewObject | ViewObjects}.\n *\n * A value of ````0.0```` indicates fully transparent, ````1.0```` is fully opaque.\n *\n * Default value is ````1.0````.\n */\n get edgeAlpha(): number {\n return this.#state.edgeAlpha;\n }\n\n /**\n * Sets edge width for {@link ViewObject | ViewObjects}.\n *\n * Default value is ````1.0```` pixels.\n */\n set edgeWidth(value: number) {\n if (this.#state.edgeWidth === value) {\n return;\n }\n this.#state.edgeWidth = value;\n this.view.redraw();\n }\n\n /**\n * Gets edge width for {@link ViewObject | ViewObjects}.\n *\n * This is not supported by WebGL implementations based on DirectX [2019].\n *\n * Default value is ````1.0```` pixels.\n */\n get edgeWidth(): number {\n return this.#state.edgeWidth;\n }\n\n /**\n * Gets if edges are currently applied.\n *\n * This is `true` when {@link Edges.enabled | Edges.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link Edges.renderModes | Edges.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {Edges};\n", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\n\n/**\n * Configures the size and shape of {@link @xeokit/viewer!ViewObject | ViewObjects} that represent clouds of points.\n *\n * ## Summary\n *\n * * Located at {@link View.pointsMaterial}.\n * * Supports round and square points.\n * * Optional perspective point scaling.\n */\nclass PointsMaterial extends Component {\n\n /**\n * The View to which this PointsMaterial belongs.\n */\n public readonly view: View;\n\n #state: {\n pointSize: number,\n roundPoints: boolean,\n perspectivePoints: boolean,\n minPerspectivePointSize: number,\n maxPerspectivePointSize: number,\n filterIntensity: boolean,\n minIntensity: number,\n maxIntensity: number\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n pointSize?: number,\n roundPoints?: boolean,\n perspectivePoints?: boolean,\n minPerspectivePointSize?: number,\n maxPerspectivePointSize?: number,\n filterIntensity?: boolean,\n minIntensity?: number,\n maxIntensity?: number\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n pointSize: (options.pointSize !== undefined && options.pointSize !== null) ? options.pointSize : 1,\n roundPoints: options.roundPoints !== false,\n perspectivePoints: options.perspectivePoints !== false,\n minPerspectivePointSize: (options.minPerspectivePointSize !== undefined && options.minPerspectivePointSize !== null) ? options.minPerspectivePointSize : 1,\n maxPerspectivePointSize: (options.maxPerspectivePointSize !== undefined && options.maxPerspectivePointSize !== null) ? options.maxPerspectivePointSize : 6,\n filterIntensity: !!options.filterIntensity,\n minIntensity: (options.minIntensity !== undefined && options.minIntensity !== null) ? options.minIntensity : 0,\n maxIntensity: (options.maxIntensity !== undefined && options.maxIntensity !== null) ? options.maxIntensity : 1\n };\n }\n\n /**\n * Sets point size.\n *\n * Default value is ````2.0```` pixels.\n */\n set pointSize(value: number) {\n this.#state.pointSize = value;\n this.view.redraw();\n }\n\n /**\n * Gets point size.\n *\n * Default value is ````2.0```` pixels.\n */\n get pointSize(): number {\n return this.#state.pointSize;\n }\n\n\n /**\n * Sets if points are round or square.\n *\n * Default is ````true```` to set points round.\n */\n set roundPoints(value: boolean) {\n if (this.#state.roundPoints === value) {\n return;\n }\n this.#state.roundPoints = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if points are round or square.\n *\n * Default is ````true```` to set points round.\n */\n get roundPoints(): boolean {\n return this.#state.roundPoints;\n }\n\n /**\n * Sets if rendered point size reduces with distance when {@link Camera.projection} is set to ````PerspectiveProjectionType````.\n *\n * Default is ````true````.\n */\n set perspectivePoints(value: boolean) {\n if (this.#state.perspectivePoints === value) {\n return;\n }\n this.#state.perspectivePoints = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if rendered point size reduces with distance when {@link Camera.projection} is set to PerspectiveProjectionType.\n *\n * Default is ````false````.\n */\n get perspectivePoints(): boolean {\n return this.#state.perspectivePoints;\n }\n\n /**\n * Sets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````1.0```` pixels.\n */\n set minPerspectivePointSize(value: number) {\n if (this.#state.minPerspectivePointSize === value) {\n return;\n }\n this.#state.minPerspectivePointSize = value;\n this.view.rebuild();\n }\n\n /**\n * Gets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````1.0```` pixels.\n *\n * @type {Number}\n */\n get minPerspectivePointSize(): number {\n return this.#state.minPerspectivePointSize;\n }\n\n /**\n * Sets the maximum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````6```` pixels.\n */\n set maxPerspectivePointSize(value: number) {\n if (this.#state.maxPerspectivePointSize === value) {\n return;\n }\n this.#state.maxPerspectivePointSize = value;\n this.view.rebuild();\n }\n\n /**\n * Gets the maximum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````6```` pixels.\n */\n get maxPerspectivePointSize(): number {\n return this.#state.maxPerspectivePointSize;\n }\n\n /**\n * Sets if rendered point size reduces with distance when {@link Camera.projection} is set to ````PerspectiveProjectionType````.\n *\n * Default is ````false````.\n */\n set filterIntensity(value: boolean) {\n if (this.#state.filterIntensity === value) {\n return;\n }\n this.#state.filterIntensity = value;\n this.view.rebuild();\n }\n\n /**\n * Gets if rendered point size reduces with distance when {@link Camera.projection} is set to PerspectiveProjectionType.\n *\n * Default is ````false````.\n */\n get filterIntensity(): boolean {\n return this.#state.filterIntensity;\n }\n\n /**\n * Sets the minimum rendered size of points when {@link PointsMaterial.perspectivePoints} is ````true````.\n *\n * Default value is ````0````.\n */\n set minIntensity(value: number) {\n if (this.#state.minIntensity === value) {\n return;\n }\n this.#state.minIntensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the minimum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````0````.\n */\n get minIntensity(): number {\n return this.#state.minIntensity;\n }\n\n /**\n * Sets the maximum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````1````.\n */\n set maxIntensity(value: number) {\n if (this.#state.maxIntensity === value) {\n return;\n }\n this.#state.maxIntensity = value;\n this.view.redraw();\n }\n\n /**\n * Gets the maximum rendered size of points when {@link PointsMaterial.filterIntensity} is ````true````.\n *\n * Default value is ````1````.\n */\n get maxIntensity(): number {\n return this.#state.maxIntensity;\n }\n\n /**\n * @private\n */\n get hash(): string {\n const state = this.#state;\n return `${state.pointSize};\n ${state.roundPoints};\n ${state.perspectivePoints};\n ${state.minPerspectivePointSize};\n ${state.maxPerspectivePointSize};\n ${state.filterIntensity}`;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n\nexport {PointsMaterial};", "import {EventDispatcher} from \"strongly-typed-events\";\nimport {\n addVec3,\n createMat4,\n createVec3,\n cross3Vec3,\n dotVec3,\n identityMat4,\n inverseMat4,\n lenVec3,\n lookAtMat4v,\n mulMat4,\n mulVec3Scalar,\n normalizeVec3,\n rotationMat4v,\n subVec3,\n transformPoint3,\n transposeMat4\n} from \"@xeokit/matrix\";\n\nimport {PerspectiveProjection} from './PerspectiveProjection';\nimport {OrthoProjection} from './OrthoProjection';\nimport {FrustumProjection} from './FrustumProjection';\nimport {CustomProjection} from './CustomProjection';\nimport type {View} from \"./View\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {DEGTORAD, type FloatArrayParam} from \"@xeokit/math\";\nimport {\n CustomProjectionType,\n FrustumProjectionType,\n OrthoProjectionType,\n PerspectiveProjectionType\n} from \"@xeokit/constants\";\nimport {Frustum3, setFrustum3} from \"@xeokit/boundaries\";\nimport {Projection} from \"./Projection\";\nimport {SceneGeometry, SceneMesh, SceneModelParams, SceneObject} from \"@xeokit/scene\";\n\n\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec3f = createVec3();\nconst tempMat = createMat4();\nconst tempMatb = createMat4();\nconst eyeLookVec = createVec3();\nconst eyeLookVecNorm = createVec3();\nconst eyeLookOffset = createVec3();\nconst offsetEye = createVec3();\n\n\n/**\n * Controls the viewpoint and projection for a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Located at {@link View.camera}\n * * Views are located at {@link Viewer.views}\n * * Controls camera viewing and projection transforms\n * * Provides methods to pan, zoom and orbit\n * * Dynamically configurable World-space axis\n * * Has {@link PerspectiveProjection}, {@link OrthoProjection} and {@link FrustumProjection} and {@link CustomProjection}, which you can dynamically switch between\n * * Switchable gimbal lock\n * * Can be flown to look at targets using the View's {@link CameraFlightAnimation}\n * * Can be animated along a path using a {@link CameraPathAnimation}\n *\n * ## Getting a View's Camera\n *\n * Let's create a {@link @xeokit/viewer!Viewer | Viewer} with a single {@link @xeokit/viewer!View}, from which we'll get a Camera:\n *\n * ````javascript\n * const viewer = new Viewer();\n *\n * const view = new View(viewer, {\n * elementId: \"myCanvas1\"\n * });\n *\n * const camera = view.camera;\n * ````\n *\n * ## Setting the Camera Position\n *\n * Get and set the Camera's absolute position:\n *\n * ````javascript\n * camera.eye = [-10,0,0];\n * camera.look = [-10,0,0];\n * camera.up = [0,1,0];\n * ````\n *\n * ## Camera View and Projection Matrices\n *\n * The Camera's *view matrix* transforms coordinates from World-space to View-space:\n *\n * ````javascript\n * var viewMatrix = camera.viewMatrix;\n * ````\n *\n * {@link Camera.onViewMatrix} fires whenever {@link Camera.viewMatrix} updates:\n *\n * ````javascript\n * camera.onViewMatrix.subscribe((camera, matrix) => { ... });\n * ````\n *\n * ## Rotating the Camera\n *\n * Orbiting the {@link @xeokit/viewer!Camera.look | Camera.look} position:\n *\n * ````javascript\n * camera.orbitYaw(20.0);\n * camera.orbitPitch(10.0);\n * ````\n *\n * Perform a *first-person* rotation, in which we rotate {@link @xeokit/viewer!Camera.look | Camera.look} and {@link @xeokit/viewer!Camera.up | Camera.up} about {@link @xeokit/viewer!Camera.eye | Camera.eye}:\n *\n * ````javascript\n * camera.yaw(5.0);\n * camera.pitch(-10.0);\n * ````\n *\n * ## Panning the Camera\n *\n * Pan along the Camera's local axis (ie. left/right, up/down, forward/backward):\n *\n * ````javascript\n * camera.pan([-20, 0, 10]);\n * ````\n *\n * ## Zooming the Camera\n *\n * Zoom to vary distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}:\n *\n * ````javascript\n * camera.zoom(-5); // Move five units closer\n * ````\n *\n * Get the current distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}:\n *\n * ````javascript\n * var distance = camera.eyeLookDist;\n * ````\n *\n * ## Projection\n *\n * The Camera has a Component to manage each projection type, which are: {@link PerspectiveProjection}, {@link OrthoProjection}\n * and {@link FrustumProjection} and {@link CustomProjection}.\n *\n * You can configure those components at any time, regardless of which is currently active:\n *\n * The Camera has a {@link PerspectiveProjection} to manage perspective\n * ````javascript\n *\n * // Set some properties on PerspectiveProjection\n * camera.perspectiveProjection.near = 0.4;\n * camera.perspectiveProjection.fov = 45;\n *\n * // Set some properties on OrthoProjection\n * camera.orthoProjection.near = 0.8;\n * camera.orthoProjection.far = 1000;\n *\n * // Set some properties on FrustumProjection\n * camera.frustumProjection.left = -1.0;\n * camera.frustumProjection.right = 1.0;\n * camera.frustumProjection.far = 1000.0;\n *\n * // Set the matrix property on CustomProjection\n * camera.customProjection.projMatrix = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\n *\n * // Switch between the projection types\n * Camera.projectionType = PerspectiveProjectionType; // Switch to perspective\n * Camera.projectionType = FrustumProjectiontype; // Switch to frustum\n * Camera.projectionType = OrthoProjectionType; // Switch to ortho\n * Camera.projectionType = CustomProjectionType; // Switch to custom\n * ````\n *\n * Camera provides the projection matrix for the currently active projection in {@link Camera.projMatrix}.\n *\n * Get the projection matrix:\n *\n * ````javascript\n * var projMatrix = camera.projMatrix;\n * ````\n *\n * Listen for projection matrix updates:\n *\n * ````javascript\n * camera.onProjMatrix((camera, matrix) => { ... });\n * ````\n *\n * ## Configuring World up direction\n *\n * We can dynamically configure the directions of the World-space coordinate system.\n *\n * Setting the +Y axis as World \"up\", +X as right and -Z as forwards (convention in some modeling software):\n *\n * ````javascript\n * camera.worldAxis = [\n * 1, 0, 0, // Right\n * 0, 1, 0, // Up\n * 0, 0,-1 // Forward\n * ];\n * ````\n *\n * Setting the +Z axis as World \"up\", +X as right and -Y as \"up\" (convention in most CAD and BIM viewers):\n *\n * ````javascript\n * camera.worldAxis = [\n * 1, 0, 0, // Right\n * 0, 0, 1, // Up\n * 0,-1, 0 // Forward\n * ];\n * ````\n *\n * The Camera has read-only convenience properties that provide each axis individually:\n *\n * ````javascript\n * var worldRight = camera.worldRight;\n * var worldForward = camera.worldForward;\n * var worldUp = camera.worldUp;\n * ````\n *\n * ## Gimbal locking\n *\n * By default, the Camera locks yaw rotation to pivot about the World-space \"up\" axis. We can dynamically lock and unlock that at any time:\n *\n * ````javascript\n * camera.gimbalLock = false; // Yaw rotation now happens about Camera's local Y-axis\n * camera.gimbalLock = true; // Yaw rotation now happens about World's \"up\" axis\n * ````\n *\n * See: https://en.wikipedia.org/wiki/Gimbal_lock\n */\nclass Camera extends Component {\n\n /**\n * The View to which this Camera belongs.\n *\n * @property view\n * @type {View}\n * @final\n */\n public readonly view: View;\n\n /**\n * The perspective projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link PerspectiveProjectionType}.\n */\n public readonly perspectiveProjection: PerspectiveProjection;\n\n /**\n * The orthographic projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!OrthoProjectionType}.\n */\n public readonly orthoProjection: OrthoProjection;\n\n /**\n * The frustum projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!FrustumProjectionType}.\n */\n public readonly frustumProjection: FrustumProjection;\n\n /**\n * The custom projection.\n *\n * The Camera uses this while {@link Camera.projectionType} equals {@link @xeokit/constants!CustomProjectionType}.\n */\n public readonly customProjection: CustomProjection;\n\n /**\n * Emits an event each time {@link Camera.projectionType} updates.\n *\n * ````javascript\n * myView.camera.onProjectionType.subscribe((camera, projType) => { ... });\n * ````\n *\n * @event\n */\n readonly onProjectionType: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.viewMatrix} updates.\n *\n * ````javascript\n * myView.camera.onViewMatrix.subscribe((camera, viewMatrix) => { ... });\n * ````\n *\n * @event\n */\n readonly onViewMatrix: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.projMatrix} updates.\n *\n * ````javascript\n * myView.camera.onProjMatrix.subscribe((camera, projMatrix) => { ... });\n * ````\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.worldAxis} updates.\n *\n * ````javascript\n * myView.camera.onWorldAxis.subscribe((camera, worldAxis) => { ... });\n * ````\n *\n * @event\n */\n readonly onWorldAxis: EventEmitter;\n\n /**\n * Emits an event each time {@link Camera.frustum} updates.\n *\n * ````javascript\n * myView.camera.onFrustum.subscribe((camera, frustum) => { ... });\n * ````\n *\n * @event\n */\n readonly onFrustum: EventEmitter;\n\n readonly #state: {\n deviceMatrix: FloatArrayParam,\n viewNormalMatrix: FloatArrayParam,\n hasDeviceMatrix: boolean,\n viewMatrix: FloatArrayParam,\n inverseViewMatrix: FloatArrayParam,\n eye: FloatArrayParam,\n look: FloatArrayParam,\n up: FloatArrayParam,\n worldAxis: FloatArrayParam,\n worldUp: FloatArrayParam,\n worldRight: FloatArrayParam,\n worldForward: FloatArrayParam,\n gimbalLock: boolean,\n constrainPitch: boolean,\n projectionType: number\n };\n\n /**\n * The viewing frustum.\n */\n #frustum: Frustum3;\n #activeProjection: PerspectiveProjection | OrthoProjection | FrustumProjection | CustomProjection;\n\n /**\n * @private\n */\n constructor(view: View, cfg: {\n eye?: FloatArrayParam;\n look?: FloatArrayParam,\n up?: FloatArrayParam;\n deviceMatrix?: FloatArrayParam;\n gimbalLock?: boolean;\n worldAxis?: FloatArrayParam;\n constrainPitch?: boolean;\n projectionType?: number\n } = {}) {\n\n super(view, cfg);\n\n this.onProjectionType = new EventEmitter(new EventDispatcher());\n this.onViewMatrix = new EventEmitter(new EventDispatcher());\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n this.onWorldAxis = new EventEmitter(new EventDispatcher());\n this.onFrustum = new EventEmitter(new EventDispatcher());\n\n this.view = view;\n\n this.#state = {\n eye: createVec3(cfg.eye || [0, 0, 10]),\n look: createVec3(cfg.look || [0, 0, 0]),\n up: createVec3(cfg.up || [0, 1, 0]),\n worldUp: createVec3([0, 1, 0]),\n worldRight: createVec3([1, 0, 0]),\n worldForward: createVec3([0, 0, -1]),\n worldAxis: new Float32Array(cfg.worldAxis || [1, 0, 0, 0, 1, 0, 0, 0, 1]),\n gimbalLock: cfg.gimbalLock !== false,\n constrainPitch: cfg.constrainPitch === true,\n projectionType: cfg.projectionType || PerspectiveProjectionType,\n deviceMatrix: cfg.deviceMatrix ? createMat4(cfg.deviceMatrix) : identityMat4(),\n hasDeviceMatrix: !!cfg.deviceMatrix,\n viewMatrix: createMat4(),\n viewNormalMatrix: createMat4(),\n inverseViewMatrix: createMat4()\n };\n\n this.#frustum = new Frustum3();\n\n this.perspectiveProjection = new PerspectiveProjection(this);\n this.orthoProjection = new OrthoProjection(this);\n this.frustumProjection = new FrustumProjection(this);\n this.customProjection = new CustomProjection(this);\n\n this.#activeProjection = this.perspectiveProjection;\n\n this.perspectiveProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === PerspectiveProjectionType) {\n this.onProjMatrix.dispatch(this, this.perspectiveProjection.projMatrix);\n }\n });\n\n this.orthoProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === OrthoProjectionType) {\n this.onProjMatrix.dispatch(this, this.orthoProjection.projMatrix);\n }\n });\n\n this.frustumProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === FrustumProjectionType) {\n this.onProjMatrix.dispatch(this, this.frustumProjection.projMatrix);\n }\n });\n\n this.customProjection.onProjMatrix.subscribe(() => {\n if (this.#state.projectionType === CustomProjectionType) {\n this.onProjMatrix.dispatch(this, this.customProjection.projMatrix);\n }\n });\n }\n\n /**\n * Gets the currently active projection for this Camera.\n *\n * The currently active project is selected with {@link Camera.projectionType}.\n *\n * @returns {PerspectiveProjection|OrthoProjection|FrustumProjection|CustomProjection} The currently active projection is active.\n */\n get projection(): Projection {\n return this.#activeProjection;\n }\n\n /**\n * Gets the position of the Camera's eye.\n *\n * Default vale is ````[0,0,10]````.\n *\n * @type {Number[]} New eye position.\n */\n get eye(): FloatArrayParam {\n return this.#state.eye;\n }\n\n /**\n * Sets the position of the Camera's eye.\n *\n * Default value is ````[0,0,10]````.\n *\n * @emits \"eye\" event on change, with the value of this property.\n * @type {Number[]} New eye position.\n */\n set eye(eye: FloatArrayParam) {\n // @ts-ignore\n this.#state.eye.set(eye);\n this.setDirty(); // Ensure matrix built on next \"tick\"\n }\n\n /**\n * Gets the position of this Camera's point-of-interest.\n *\n * Default value is ````[0,0,0]````.\n *\n * @returns {Number[]} Camera look position.\n */\n get look(): FloatArrayParam {\n return this.#state.look;\n }\n\n /**\n * Sets the position of this Camera's point-of-interest.\n *\n * Default value is ````[0,0,0]````.\n *\n * @param look Camera look position.\n */\n set look(look: FloatArrayParam) {\n // @ts-ignore\n this.#state.look.set(look);\n this.setDirty(); // Ensure matrix built on next \"tick\"\n }\n\n /**\n * Gets the direction of this Camera's {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @returns {Number[]} Direction of \"up\".\n */\n get up(): FloatArrayParam {\n return this.#state.up;\n }\n\n /**\n * Sets the direction of this Camera's {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @param up Direction of \"up\".\n */\n set up(up: FloatArrayParam) {\n // @ts-ignore\n this.#state.up.set(up);\n this.setDirty();\n }\n\n /**\n * Gets the direction of World-space \"up\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[0,1,0]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldUp(): FloatArrayParam {\n return this.#state.worldUp;\n }\n\n /**\n * Gets the direction of World-space \"right\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[1,0,0]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldRight(): FloatArrayParam {\n return this.#state.worldRight;\n }\n\n /**\n * Gets the direction of World-space \"forwards\".\n *\n * This is set by {@link Camera.worldAxis}.\n *\n * Default value is ````[0,0,1]````.\n *\n * @returns {Number[]} The \"up\" vector.\n */\n get worldForward(): FloatArrayParam {\n return this.#state.worldForward;\n }\n\n /**\n * Gets whether to prevent camera from being pitched upside down.\n *\n * The camera is upside down when the angle between {@link @xeokit/viewer!Camera.up | Camera.up} and {@link Camera.worldUp} is less than one degree.\n *\n * Default value is ````false````.\n *\n * @returns {Boolean} ````true```` if pitch rotation is currently constrained.\n */\n get constrainPitch(): boolean {\n return this.#state.constrainPitch;\n }\n\n /**\n * Sets whether to prevent camera from being pitched upside down.\n *\n * The camera is upside down when the angle between {@link @xeokit/viewer!Camera.up | Camera.up} and {@link Camera.worldUp} is less than one degree.\n *\n * Default value is ````false````.\n *\n * @param value Set ````true```` to contrain pitch rotation.\n */\n set constrainPitch(value: boolean) {\n this.#state.constrainPitch = value;\n }\n\n /**\n * Gets whether to lock yaw rotation to pivot about the World-space \"up\" axis.\n *\n * @returns {Boolean} Returns ````true```` if gimbal is locked.\n */\n get gimbalLock(): boolean {\n return this.#state.gimbalLock;\n }\n\n /**\n * Sets whether to lock yaw rotation to pivot about the World-space \"up\" axis.\n *\n * @params {Boolean} gimbalLock Set true to lock gimbal.\n */\n set gimbalLock(value: boolean) {\n this.#state.gimbalLock = value;\n }\n\n /**\n * Gets the up, right and forward axis of the World coordinate system.\n *\n * Has format: ````[rightX, rightY, rightZ, upX, upY, upZ, forwardX, forwardY, forwardZ]````\n *\n * Default axis is ````[1, 0, 0, 0, 1, 0, 0, 0, 1]````\n *\n * @returns {Number[]} The current World coordinate axis.\n */\n get worldAxis(): FloatArrayParam {\n return this.#state.worldAxis;\n }\n\n /**\n * Sets the up, right and forward axis of the World coordinate system.\n *\n * Has format: ````[rightX, rightY, rightZ, upX, upY, upZ, forwardX, forwardY, forwardZ]````\n *\n * Default axis is ````[1, 0, 0, 0, 1, 0, 0, 0, 1]````\n *\n * @param axis The new Wworld coordinate axis.\n */\n set worldAxis(axis: FloatArrayParam) {\n const state = this.#state;\n // @ts-ignore\n state.worldAxis.set(axis);\n state.worldRight[0] = state.worldAxis[0];\n state.worldRight[1] = state.worldAxis[1];\n state.worldRight[2] = state.worldAxis[2];\n state.worldUp[0] = state.worldAxis[3];\n state.worldUp[1] = state.worldAxis[4];\n state.worldUp[2] = state.worldAxis[5];\n state.worldForward[0] = state.worldAxis[6];\n state.worldForward[1] = state.worldAxis[7];\n state.worldForward[2] = state.worldAxis[8];\n this.onWorldAxis.dispatch(this, state.worldAxis);\n }\n\n /**\n * Gets an optional matrix to premultiply into {@link Camera.projMatrix} matrix.\n *\n * @returns {Number[]} The matrix.\n */\n get deviceMatrix(): FloatArrayParam {\n // @ts-ignore\n return this.#state.deviceMatrix;\n }\n\n /**\n * Sets an optional matrix to premultiply into {@link Camera.projMatrix} matrix.\n *\n * This is intended to be used for stereo rendering with WebVR etc.\n *\n * @param matrix The matrix.\n */\n set deviceMatrix(matrix: FloatArrayParam) {\n // @ts-ignore\n this.#state.deviceMatrix.set(matrix || [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);\n this.#state.hasDeviceMatrix = !!matrix;\n this.setDirty();\n }\n\n /**\n * Gets if the World-space X-axis is \"up\".\n * @returns {boolean}\n */\n get xUp(): boolean {\n return this.#state.worldUp[0] > this.#state.worldUp[1] && this.#state.worldUp[0] > this.#state.worldUp[2];\n }\n\n /**\n * Gets if the World-space Y-axis is \"up\".\n * @returns {boolean}\n */\n get yUp(): boolean {\n return this.#state.worldUp[1] > this.#state.worldUp[0] && this.#state.worldUp[1] > this.#state.worldUp[2];\n }\n\n /**\n * Gets if the World-space Z-axis is \"up\".\n * @returns {boolean}\n */\n get zUp(): boolean {\n return this.#state.worldUp[2] > this.#state.worldUp[0] && this.#state.worldUp[2] > this.#state.worldUp[1];\n }\n\n /**\n * Gets distance from {@link @xeokit/viewer!Camera.look | Camera.look} to {@link @xeokit/viewer!Camera.eye | Camera.eye}.\n *\n * @returns {Number} The distance.\n */\n get eyeLookDist(): number {\n return lenVec3(subVec3(this.#state.look, this.#state.eye, tempVec3));\n }\n\n /**\n * Gets the Camera's viewing transformation matrix.\n *\n * @returns {Number[]} The viewing transform matrix.\n */\n get viewMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.viewMatrix;\n }\n\n /**\n * Gets the inverse of the Camera's viewing transform matrix.\n *\n * @returns {Number[]} The inverse viewing transform matrix.\n */\n get inverseViewMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.inverseViewMatrix;\n }\n\n /**\n * Gets the Camera's projection transformation projMatrix.\n *\n * @returns {Number[]} The projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n // @ts-ignore\n return this.#activeProjection.projMatrix;\n }\n\n /**\n * Gets the Camera's 3D World-space viewing frustum.\n *\n * @returns {Frustum3} The frustum.\n */\n get frustum() {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#frustum;\n }\n\n /**\n * Gets the active projection type.\n *\n * Possible values are ````PerspectiveProjectionType````, ````OrthoProjectionType````, ````\"frustum\"```` and ````\"customProjection\"````.\n *\n * Default value is ````PerspectiveProjectionType````.\n *\n * @returns {number} Identifies the active projection type.\n */\n get projectionType(): number {\n return this.#state.projectionType;\n }\n\n /**\n * Sets the active projection type.\n *\n * Accepted values are ````PerspectiveProjectionType````, ````OrthoProjectionType````, ````\"frustum\"```` and ````\"customProjection\"````.\n *\n * Default value is ````PerspectiveProjectionType````.\n *\n * @param value Identifies the active projection type.\n */\n set projectionType(value: number | undefined) {\n value = value || PerspectiveProjectionType;\n if (this.#state.projectionType === value) {\n return;\n }\n if (value === PerspectiveProjectionType) {\n this.#activeProjection = this.perspectiveProjection;\n } else if (value === OrthoProjectionType) {\n this.#activeProjection = this.orthoProjection;\n } else if (value === FrustumProjectionType) {\n this.#activeProjection = this.frustumProjection;\n } else if (value === CustomProjectionType) {\n this.#activeProjection = this.customProjection;\n } else {\n this.error(\"Unsupported value for 'projection': \" + value + \" defaulting to PerspectiveProjectionType\");\n this.#activeProjection = this.perspectiveProjection;\n value = PerspectiveProjectionType;\n }\n // @ts-ignore\n this.#activeProjection.clean();\n this.#state.projectionType = value;\n this.clean();\n this.onProjectionType.dispatch(this, this.#state.projectionType);\n this.onProjMatrix.dispatch(this, this.#activeProjection.projMatrix);\n }\n\n setDirty() {\n super.setDirty();\n this.view.redraw();\n }\n\n clean() {\n const state = this.#state;\n // In ortho mode, build the view matrix with an eye position that's translated\n // well back from look, so that the front sectionPlane plane doesn't unexpectedly cut\n // the front off the view (not a problem with perspective, since objects close enough\n // to be clipped by the front plane are usually too big to see anything of their cross-sections).\n let eye;\n if (this.projectionType === OrthoProjectionType) {\n subVec3(this.#state.eye, this.#state.look, eyeLookVec);\n normalizeVec3(eyeLookVec, eyeLookVecNorm);\n mulVec3Scalar(eyeLookVecNorm, 1000.0, eyeLookOffset);\n addVec3(this.#state.look, eyeLookOffset, offsetEye);\n eye = offsetEye;\n } else {\n eye = this.#state.eye;\n }\n if (state.hasDeviceMatrix) {\n lookAtMat4v(eye, this.#state.look, this.#state.up, tempMatb);\n mulMat4(state.deviceMatrix, tempMatb, state.viewMatrix);\n } else {\n lookAtMat4v(eye, this.#state.look, this.#state.up, state.viewMatrix);\n }\n inverseMat4(this.#state.viewMatrix, this.#state.inverseViewMatrix);\n transposeMat4(this.#state.inverseViewMatrix, this.#state.viewNormalMatrix);\n this.view.redraw();\n setFrustum3(this.#state.viewMatrix, this.#activeProjection.projMatrix, this.#frustum);\n this.onViewMatrix.dispatch(this, this.#state.viewMatrix);\n this.onFrustum.dispatch(this, this.#frustum);\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.eye | Camera.eye} about {@link @xeokit/viewer!Camera.look | Camera.look}, around the {@link @xeokit/viewer!Camera.up | Camera.up} vector\n *\n * @param angleInc Angle of rotation in degrees\n */\n orbitYaw(angleInc: number) {\n let lookEyeVec = subVec3(this.#state.eye, this.#state.look, tempVec3);\n rotationMat4v(angleInc * 0.0174532925, this.#state.gimbalLock ? this.#state.worldUp : this.#state.up, tempMat);\n lookEyeVec = transformPoint3(tempMat, lookEyeVec, tempVec3b);\n this.eye = addVec3(this.#state.look, lookEyeVec, tempVec3c); // Set eye position as 'look' plus 'eye' vector\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3d); // Rotate 'up' vector\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.eye | Camera.eye} about {@link @xeokit/viewer!Camera.look | Camera.look} around the right axis (orthogonal to {@link @xeokit/viewer!Camera.up | Camera.up} and \"look\").\n *\n * @param angleInc Angle of rotation in degrees\n */\n orbitPitch(angleInc: number) {\n if (this.#state.constrainPitch) {\n angleInc = dotVec3(this.#state.up, this.#state.worldUp) / DEGTORAD;\n if (angleInc < 1) {\n return;\n }\n }\n let eye2 = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const left = cross3Vec3(normalizeVec3(eye2, tempVec3b), normalizeVec3(this.#state.up, tempVec3c));\n rotationMat4v(angleInc * 0.0174532925, left, tempMat);\n eye2 = transformPoint3(tempMat, eye2, tempVec3d);\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3e);\n this.eye = addVec3(eye2, this.#state.look, tempVec3f);\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.look | Camera.look} about {@link @xeokit/viewer!Camera.eye | Camera.eye}, around the {@link @xeokit/viewer!Camera.up | Camera.up} vector.\n *\n * @param angleInc Angle of rotation in degrees\n */\n yaw(angleInc: number) {\n let look2 = subVec3(this.#state.look, this.#state.eye, tempVec3);\n rotationMat4v(angleInc * 0.0174532925, this.#state.gimbalLock ? this.#state.worldUp : this.#state.up, tempMat);\n look2 = transformPoint3(tempMat, look2, tempVec3b);\n this.look = addVec3(look2, this.#state.eye, tempVec3c);\n if (this.#state.gimbalLock) {\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3d);\n }\n }\n\n /**\n * Rotates {@link @xeokit/viewer!Camera.look | Camera.look} about {@link @xeokit/viewer!Camera.eye | Camera.eye}, around the right axis (orthogonal to {@link @xeokit/viewer!Camera.up | Camera.up} and \"look\").\n\n * @param angleInc Angle of rotation in degrees\n */\n pitch(angleInc: number) {\n if (this.#state.constrainPitch) {\n angleInc = dotVec3(this.#state.up, this.#state.worldUp) / DEGTORAD;\n if (angleInc < 1) {\n return;\n }\n }\n let look2 = subVec3(this.#state.look, this.#state.eye, tempVec3);\n const left = cross3Vec3(normalizeVec3(look2, tempVec3b), normalizeVec3(this.#state.up, tempVec3c));\n rotationMat4v(angleInc * 0.0174532925, left, tempMat);\n this.up = transformPoint3(tempMat, this.#state.up, tempVec3f);\n look2 = transformPoint3(tempMat, look2, tempVec3d);\n this.look = addVec3(look2, this.#state.eye, tempVec3e);\n }\n\n /**\n * Pans the Camera along its local X, Y and Z axis.\n *\n * @param pan The pan vector\n */\n pan(pan: FloatArrayParam) {\n const eye2 = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const vec = [0, 0, 0];\n let v;\n if (pan[0] !== 0) {\n const left = cross3Vec3(normalizeVec3(eye2, []), normalizeVec3(this.#state.up, tempVec3b));\n v = mulVec3Scalar(left, pan[0]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n if (pan[1] !== 0) {\n v = mulVec3Scalar(normalizeVec3(this.#state.up, tempVec3c), pan[1]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n if (pan[2] !== 0) {\n v = mulVec3Scalar(normalizeVec3(eye2, tempVec3d), pan[2]);\n vec[0] += v[0];\n vec[1] += v[1];\n vec[2] += v[2];\n }\n this.eye = addVec3(this.#state.eye, vec, tempVec3e);\n this.look = addVec3(this.#state.look, vec, tempVec3f);\n }\n\n /**\n * Increments/decrements the Camera's zoom factor, which is the distance between {@link @xeokit/viewer!Camera.eye | Camera.eye} and {@link @xeokit/viewer!Camera.look | Camera.look}.\n *\n * @param delta Zoom factor increment.\n */\n zoom(delta: number) {\n const vec = subVec3(this.#state.eye, this.#state.look, tempVec3);\n const lenLook = Math.abs(lenVec3(vec));\n const newLenLook = Math.abs(lenLook + delta);\n if (newLenLook < 0.5) {\n return;\n }\n const dir = normalizeVec3(vec, tempVec3c);\n this.eye = addVec3(this.#state.look, mulVec3Scalar(dir, newLenLook), tempVec3d);\n }\n\n // /**\n // * Gets this Camera as JSON.\n // */\n // getJSON(): CameraParams {\n // const cameraParams = {\n // eye: Array.from(this.#state.eye),\n // look: Array.from(this.#state.look),\n // up: Array.from(this.#state.up),\n // worldUp: Array.from(this.#state.worldUp),\n // worldRight: Array.from(this.#state.worldRight),\n // worldForward: Array.from(this.#state.worldForward),\n // projectionType: this.projectionType\n // };\n // return cameraParams;\n // }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n this.onProjectionType.clear();\n this.onViewMatrix.clear();\n this.onProjMatrix.clear();\n this.onWorldAxis.clear();\n }\n\n\n}\n\nexport {Camera};\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {inverseMat4, createMat4, mulMat4v4, mulVec3Scalar, perspectiveMat4, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * PerspectiveProjection projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * ## Summary\n *\n * * Located at {@link @xeokit/viewer!Camera.perspectiveProjection | Camera.perspectiveProjection}.\n * * Implicitly sets the left, right, top, bottom frustum planes using {@link @xeokit/viewer!PerspectiveProjection.fov | PerspectiveProjection.fov}.\n * * {@link @xeokit/viewer!PerspectiveProjection.near | PerspectiveProjection.near} and {@link @xeokit/viewer!PerspectiveProjection.far| PerspectiveProjection.far} specify the distances to the clipping planes.\n * * {@link @xeokit/viewer!PerspectiveProjection.onProjMatrix | PerspectiveProjection.onProjMatrix} will fire an event whenever {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class PerspectiveProjection extends Component implements Projection {\n\n /**\n * The Camera this PerspectiveProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = PerspectiveProjectionType;\n\n #state: {\n far: number;\n near: number;\n fov: number;\n fovAxis: string;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n #onViewBoundary: any;\n\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n fov?: number,\n fovAxis?: string,\n near?: number,\n far?: number\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n near: cfg.near || 0.1,\n far: cfg.far || 10000.0,\n fov: cfg.fov || 60.0,\n fovAxis: cfg.fovAxis || \"min\",\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.#onViewBoundary = this.camera.view.onBoundary.subscribe( () => {\n this.setDirty();\n });\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Gets the PerspectiveProjection's field-of-view angle (FOV).\n *\n * Default value is ````60.0````.\n *\n * @returns {Number} Current field-of-view.\n */\n get fov(): number {\n return this.#state.fov;\n }\n\n /**\n * Sets the PerspectiveProjection's field-of-view angle (FOV).\n *\n * Default value is ````60.0````.\n *\n * @param value New field-of-view.\n */\n set fov(value: number) {\n if (value === this.#state.fov) {\n return;\n }\n this.#state.fov = value;\n this.setDirty();\n }\n\n /**\n * Gets the PerspectiveProjection's FOV axis.\n *\n * Options are ````\"x\"````, ````\"y\"```` or ````\"min\"````, to use the minimum axis.\n *\n * Default value is ````\"min\"````.\n *\n * @returns {String} The current FOV axis value.\n */\n get fovAxis(): string {\n return this.#state.fovAxis;\n }\n\n /**\n * Sets the PerspectiveProjection's FOV axis.\n *\n * Options are ````\"x\"````, ````\"y\"```` or ````\"min\"````, to use the minimum axis.\n *\n * Default value ````\"min\"````.\n *\n * @param value New FOV axis value.\n */\n set fovAxis(value: string) {\n value = value || \"min\";\n if (this.#state.fovAxis === value) {\n return;\n }\n if (value !== \"x\" && value !== \"y\" && value !== \"min\") {\n this.error(\"Unsupported value for 'fovAxis': \" + value + \" - defaulting to 'min'\");\n value = \"min\";\n }\n this.#state.fovAxis = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the PerspectiveProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @returns The PerspectiveProjection's near plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the PerspectiveProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New PerspectiveProjection near plane position.\n */\n set near(value: number) {\n if (this.#state.near === value) {\n return;\n }\n this.#state.near = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of this PerspectiveProjection's far plane on the positive View-space Z-axis.\n *\n * @return {Number} The PerspectiveProjection's far plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of this PerspectiveProjection's far plane on the positive View-space Z-axis.\n *\n * @param value New PerspectiveProjection far plane position.\n */\n set far(value: number) {\n if (this.#state.far === value) {\n return;\n }\n this.#state.far = value;\n this.setDirty();\n }\n\n /**\n * Gets the PerspectiveProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The PerspectiveProjection's projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n *\n * @returns The inverse of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n *\n * @returns The transpose of {@link @xeokit/viewer!PerspectiveProjection.projMatrix | PerspectiveProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n const WIDTH_INDEX = 2;\n const HEIGHT_INDEX = 3;\n const boundary = this.camera.view.boundary;\n const aspect = boundary[WIDTH_INDEX] / boundary[HEIGHT_INDEX];\n const fovAxis = this.#state.fovAxis;\n let fov = this.#state.fov;\n if (fovAxis === \"x\" || (fovAxis === \"min\" && aspect < 1) || (fovAxis === \"max\" && aspect > 1)) {\n fov = fov / aspect;\n }\n fov = Math.min(fov, 120);\n perspectiveMat4(fov * (Math.PI / 180.0), aspect, this.#state.near, this.#state.far, this.#state.projMatrix);\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates and Screen-space depth, using this PerspectiveProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(canvasPos: FloatArrayParam, screenZ: number, screenPos: FloatArrayParam, viewPos: FloatArrayParam, worldPos: FloatArrayParam): FloatArrayParam {\n\n const htmlElement = this.camera.view.htmlElement;\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.camera.view.onBoundary.unsubscribe(this.#onViewBoundary);\n this.onProjMatrix.clear();\n }\n}\n", "import {EventDispatcher} from \"strongly-typed-events\";\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {createMat4, inverseMat4, mulMat4v4, mulVec3Scalar, orthoMat4c, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n\n\n/**\n * Orthographic projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link @xeokit/viewer!Camera.orthoProjection | Camera.orthoProjection}.\n * * Works like Blender's orthographic projection, where the positions of the left, right, top and bottom planes are implicitly\n * indicated with a single {@link @xeokit/viewer!OrthoProjection.scale | OrthoProjection.scale} property, which causes the frustum to be symmetrical on X and Y axis, large enough to\n * contain the number of units given by {@link @xeokit/viewer!OrthoProjection.scale | OrthoProjection.scale}.\n * * {@link @xeokit/viewer!OrthoProjection.near | OrthoProjection.near} and {@link @xeokit/viewer!OrthoProjection.far | OrthoProjection.far} indicated the distances to the clipping planes.\n * * {@link @xeokit/viewer!OrthoProjection.onProjMatrix | OrthoProjection.onProjMatrix} will fire an event whenever {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class OrthoProjection extends Component implements Projection {\n\n /**\n * The Camera this OrthoProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = OrthoProjectionType;\n\n #state: {\n far: number;\n near: number;\n scale: number;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n #onViewBoundary: any;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n far?: number;\n near?: number;\n scale?: number;\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n near: cfg.near || 0.1,\n far: cfg.far || 2000.0,\n scale: cfg.scale || 1.0,\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.#onViewBoundary = this.camera.view.onBoundary.subscribe(() => {\n this.setDirty();\n });\n }\n\n /**\n * Gets scale factor for this OrthoProjection's extents on X and Y axis.\n *\n * Clamps to minimum value of ````0.01```.\n *\n * Default value is ````1.0````\n *\n * returns New OrthoProjection scale value.\n */\n get scale(): number {\n return this.#state.scale;\n }\n\n /**\n * Sets scale factor for this OrthoProjection's extents on X and Y axis.\n *\n * Clamps to minimum value of ````0.01```.\n *\n * Default value is ````1.0````\n * @param value New scale value.\n */\n set scale(value: number) {\n if (value <= 0) {\n value = 0.01;\n }\n this.#state.scale = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the OrthoProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * returns New OrthoProjection near plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the OrthoProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New OrthoProjection near plane position.\n */\n set near(value: number) {\n if (this.#state.near === value) {\n return;\n }\n this.#state.near = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the OrthoProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * returns New far ortho plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of the OrthoProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````2000.0````.\n *\n * @param value New far ortho plane position.\n */\n set far(value: number) {\n if (this.#state.far === value) {\n return;\n }\n this.#state.far = value;\n this.setDirty();\n }\n\n /**\n * Gets the OrthoProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The OrthoProjection's projection matrix.\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n *\n * @returns The inverse of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n *\n * @returns The transpose of {@link @xeokit/viewer!OrthoProjection.projMatrix | OrthoProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n\n const WIDTH_INDEX = 2;\n const HEIGHT_INDEX = 3;\n\n const view = this.camera.view;\n const scale = this.#state.scale;\n const halfSize = 0.5 * scale;\n\n const boundary = view.boundary;\n const boundaryWidth = boundary[WIDTH_INDEX];\n const boundaryHeight = boundary[HEIGHT_INDEX];\n const aspect = boundaryWidth / boundaryHeight;\n\n let left;\n let right;\n let top;\n let bottom;\n\n if (boundaryWidth > boundaryHeight) {\n left = -halfSize;\n right = halfSize;\n top = halfSize / aspect;\n bottom = -halfSize / aspect;\n\n } else {\n left = -halfSize * aspect;\n right = halfSize * aspect;\n top = halfSize;\n bottom = -halfSize;\n }\n\n orthoMat4c(left, right, bottom, top, this.#state.near, this.#state.far, this.#state.projMatrix);\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n\n this.camera.view.redraw();\n\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates, using this OrthoProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam): FloatArrayParam {\n\n const canvas = this.camera.view.htmlElement;\n\n const halfViewWidth = canvas.offsetWidth / 2.0;\n const halfViewHeight = canvas.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.camera.view.onBoundary.unsubscribe(this.#onViewBoundary);\n this.onProjMatrix.clear();\n }\n}\n\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {FrustumProjectionType} from \"@xeokit/constants\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat4, frustumMat4, inverseMat4, mulMat4v4, mulVec3Scalar, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * FrustumProjection-based perspective projection configuration for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link Camera.frustumProjection}.\n * * Allows to explicitly set the positions of the left, right, top, bottom, near and far planes, which is useful for asymmetrical view volumes, such as for stereo viewing.\n * * {@link FrustumProjection.near} and {@link FrustumProjection.far} specify the distances to the clipping planes.\n * * {@link FrustumProjection.onProjMatrix} will fire an event whenever {@link FrustumProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nexport class FrustumProjection extends Component implements Projection {\n\n /**\n * The type of this projection.\n */\n static readonly type: number = FrustumProjectionType;\n /**\n * The Camera this FrustumProjection belongs to.\n */\n public readonly camera: Camera;\n /**\n * Emits an event each time {@link FrustumProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n #state: {\n far: number;\n near: number;\n left: number;\n right: number;\n bottom: number;\n top: number;\n projMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n };\n\n #inverseMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n far?: number;\n near?: number;\n top?: number;\n bottom?: number;\n right?: number;\n left?: number;\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n projMatrix: createMat4(),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4(),\n near: 0.1,\n far: 10000.0,\n left: (cfg.left !== undefined && cfg.left !== null) ? cfg.left : -1.0,\n right: (cfg.right !== undefined && cfg.right !== null) ? cfg.right : 1.0,\n bottom: (cfg.bottom !== undefined && cfg.bottom !== null) ? cfg.bottom : -1.0,\n top: (cfg.top !== undefined && cfg.top !== null) ? cfg.top : 1.0\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n }\n\n /**\n * Gets the position of the FrustumProjection's left plane on the View-space X-axis.\n *\n * @return {Number} Left frustum plane position.\n */\n get left(): number {\n return this.#state.left;\n }\n\n /**\n * Sets the position of the FrustumProjection's left plane on the View-space X-axis.\n *\n * @param value New left frustum plane position.\n */\n set left(value: number) {\n this.#state.left = value;\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's right plane on the View-space X-axis.\n *\n * @return {Number} Right frustum plane position.\n */\n get right(): number {\n return this.#state.right;\n }\n\n /**\n * Sets the position of the FrustumProjection's right plane on the View-space X-axis.\n *\n * @param value New right frustum plane position.\n */\n set right(value: number) {\n this.#state.right = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's top plane on the View-space Y-axis.\n *\n * @return {Number} Top frustum plane position.\n */\n get top(): number {\n return this.#state.top;\n }\n\n /**\n * Sets the position of the FrustumProjection's top plane on the View-space Y-axis.\n *\n * @param value New top frustum plane position.\n */\n set top(value: number) {\n this.#state.top = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's bottom plane on the View-space Y-axis.\n *\n * @return {Number} Bottom frustum plane position.\n */\n get bottom(): number {\n return this.#state.bottom;\n }\n\n /**\n * Sets the position of the FrustumProjection's bottom plane on the View-space Y-axis.\n *\n * @param value New bottom frustum plane position.\n */\n set bottom(value: number) {\n this.#state.bottom = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @return {Number} Near frustum plane position.\n */\n get near(): number {\n return this.#state.near;\n }\n\n /**\n * Sets the position of the FrustumProjection's near plane on the positive View-space Z-axis.\n *\n * Default value is ````0.1````.\n *\n * @param value New FrustumProjection near plane position.\n */\n set near(value: number) {\n this.#state.near = value\n this.setDirty();\n }\n\n /**\n * Gets the position of the FrustumProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * @return {Number} Far frustum plane position.\n */\n get far(): number {\n return this.#state.far;\n }\n\n /**\n * Sets the position of the FrustumProjection's far plane on the positive View-space Z-axis.\n *\n * Default value is ````10000.0````.\n *\n * @param value New far frustum plane position.\n */\n set far(value: number) {\n this.#state.far = value\n this.setDirty();\n }\n\n /**\n * Gets the FrustumProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @returns The FrustumProjection's projection matrix\n */\n get projMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n return this.#state.projMatrix;\n }\n\n /**\n * Gets the inverse of {@link FrustumProjection.projMatrix}.\n *\n * @returns The inverse orthographic projection projMatrix.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link FrustumProjection.projMatrix}.\n *\n * @returns The transpose of {@link FrustumProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * @private\n */\n clean() {\n frustumMat4(this.#state.left, this.#state.right, this.#state.bottom, this.#state.top, this.#state.near, this.#state.far, this.#state.projMatrix);\n this.#inverseMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Un-projects the given View-space coordinates, using this FrustumProjection projection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam): FloatArrayParam {\n\n const htmlElement = this.camera.view.htmlElement;\n\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.onProjMatrix.clear();\n }\n}\n", "\nimport {EventDispatcher} from \"strongly-typed-events\";\n\nimport type {Camera} from \"./Camera\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {CustomProjectionType} from \"@xeokit/constants\";\nimport {identityMat4, inverseMat4, createMat4, mulMat4v4, mulVec3Scalar, transposeMat4} from \"@xeokit/matrix\";\nimport {Projection} from \"./Projection\";\n\n/**\n * Configures a custom projection for a {@link @xeokit/viewer!Camera} .\n *\n * * Located at {@link Camera.customProjection}.\n * * {@link CustomProjection.onProjMatrix} will fire an event whenever {@link CustomProjection.projMatrix} updates, which indicates that one or more other properties have updated.\n */\nclass CustomProjection extends Component implements Projection {\n\n /**\n * The Camera this CustomProjection belongs to.\n */\n public readonly camera: Camera;\n\n /**\n * Emits an event each time {@link CustomProjection.projMatrix} updates.\n *\n * @event\n */\n readonly onProjMatrix: EventEmitter;\n\n /**\n * The type of this projection.\n */\n static readonly type: number = CustomProjectionType;\n\n #state: {\n projMatrix: FloatArrayParam;\n transposedProjMatrix: FloatArrayParam;\n inverseProjMatrix: FloatArrayParam\n };\n\n #inverseProjMatrixDirty: boolean;\n #transposedProjMatrixDirty: boolean;\n\n /**\n * @private\n */\n constructor(camera: Camera, cfg: {\n projMatrix?: FloatArrayParam\n } = {}) {\n\n super(camera, cfg);\n\n this.camera = camera;\n\n this.#state = {\n projMatrix: createMat4(cfg.projMatrix || identityMat4()),\n inverseProjMatrix: createMat4(),\n transposedProjMatrix: createMat4()\n };\n\n this.onProjMatrix = new EventEmitter(new EventDispatcher());\n\n this.#inverseProjMatrixDirty = true;\n this.#transposedProjMatrixDirty = false;\n }\n\n /**\n * Gets the CustomProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @return New value for the CustomProjection's matrix.\n */\n get projMatrix(): FloatArrayParam {\n return this.#state.projMatrix;\n }\n\n /**\n * Sets the CustomProjection's projection transform matrix.\n *\n * Default value is ````[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]````.\n *\n * @param projMatrix New value for the CustomProjection's matrix.\n */\n set projMatrix(projMatrix: FloatArrayParam) {\n // @ts-ignore\n this.#state.projMatrix.set(projMatrix);\n this.#inverseProjMatrixDirty = true;\n this.#transposedProjMatrixDirty = true;\n this.setDirty();\n this.camera.view.redraw();\n this.onProjMatrix.dispatch(this, this.#state.projMatrix);\n }\n\n /**\n * Gets the inverse of {@link CustomProjection.projMatrix}.\n *\n * @returns The inverse of {@link CustomProjection.projMatrix}.\n */\n get inverseProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#inverseProjMatrixDirty) {\n inverseMat4(this.#state.projMatrix, this.#state.inverseProjMatrix);\n this.#inverseProjMatrixDirty = false;\n }\n return this.#state.inverseProjMatrix;\n }\n\n /**\n * Gets the transpose of {@link CustomProjection.projMatrix}.\n *\n * @returns The transpose of {@link CustomProjection.projMatrix}.\n */\n get transposedProjMatrix(): FloatArrayParam {\n if (this.dirty) {\n this.cleanIfDirty();\n }\n if (this.#transposedProjMatrixDirty) {\n transposeMat4(this.#state.projMatrix, this.#state.transposedProjMatrix);\n this.#transposedProjMatrixDirty = false;\n }\n return this.#state.transposedProjMatrix;\n }\n\n /**\n * Un-projects the given View-space coordinates, using this CustomProjection.\n *\n * @param canvasPos Inputs 2D View-space coordinates.\n * @param screenZ Inputs Screen-space Z coordinate.\n * @param screenPos Outputs 3D Screen/Clip-space coordinates.\n * @param viewPos Outputs un-projected 3D View-space coordinates.\n * @param worldPos Outputs un-projected 3D World-space coordinates.\n */\n unproject(\n canvasPos: FloatArrayParam,\n screenZ: number,\n screenPos: FloatArrayParam,\n viewPos: FloatArrayParam,\n worldPos: FloatArrayParam) {\n const htmlElement = this.camera.view.htmlElement;\n const halfViewWidth = htmlElement.offsetWidth / 2.0;\n const halfViewHeight = htmlElement.offsetHeight / 2.0;\n screenPos[0] = (canvasPos[0] - halfViewWidth) / halfViewWidth;\n screenPos[1] = (canvasPos[1] - halfViewHeight) / halfViewHeight;\n screenPos[2] = screenZ;\n screenPos[3] = 1.0;\n mulMat4v4(this.inverseProjMatrix, screenPos, viewPos);\n mulVec3Scalar(viewPos, 1.0 / viewPos[3]);\n viewPos[3] = 1.0;\n viewPos[1] *= -1;\n mulMat4v4(this.camera.inverseViewMatrix, viewPos, worldPos);\n return worldPos;\n }\n\n /** @private\n *\n */\n destroy() {\n super.destroy();\n this.onProjMatrix.clear();\n }\n}\n\nexport {CustomProjection};\n", "import {EventDispatcher} from \"strongly-typed-events\";\n\n\nimport {scheduler} from './scheduler';\nimport type {View} from \"./View\";\nimport type {Camera} from \"./Camera\";\nimport {addVec3, lenVec3, lerpMat4, lerpVec3, mulVec3Scalar, normalizeVec3, subVec3, createVec3} from \"@xeokit/matrix\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {DEGTORAD, type FloatArrayParam} from \"@xeokit/math\";\nimport {getAABB3Center, getAABB3Diag, getAABB3DiagPoint} from \"@xeokit/boundaries\";\nimport {CustomProjectionType, OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\n\nconst tempVec3 = createVec3();\nconst newLook = createVec3();\nconst newEye = createVec3();\nconst newUp = createVec3();\nconst newLookEyeVec = createVec3();\n\n/**\n * Animates its {@link View |View's} {@link @xeokit/viewer!Camera} to look at specified objects, boundaries or locations.\n *\n * ## Summary\n *\n * * Belongs to a {@link @xeokit/viewer!View}, and is located at {@link View.cameraFlight}\n * * Controls the View's {@link @xeokit/viewer!Camera} , which is located at {@link View.camera}\n * * Navigates the Camera to look at a {@link ViewerObject} or boundary\n * * Navigates the Camera to an explicit position given as ````eye````, ````look```` and ````up```` vectors\n * * Jumps or flies the Camera\n * * Smoothly transitions between projections\n */\nclass CameraFlightAnimation extends Component {\n\n /**\n * The View that owns this CameraFlightAnimation.\n */\n public readonly view: View;\n\n /**\n * The Camera controlled by this CameraFlightAnimation.\n */\n public readonly camera: Camera;\n\n #duration: number;\n #look1: FloatArrayParam;\n #eye1: FloatArrayParam;\n #up1: FloatArrayParam;\n #look2: FloatArrayParam;\n #eye2: FloatArrayParam;\n #up2: FloatArrayParam;\n #orthoScale1: number;\n #orthoScale2: number;\n #fit: boolean;\n #trail: boolean;\n #flying: boolean;\n #flyEyeLookUp: boolean;\n #flyingEye: boolean;\n #flyingLook: boolean;\n #callback: any;\n #callbackScope: any;\n #time1: number | null;\n #time2: number | null;\n easing: boolean;\n #flyingEyeLookUp: boolean;\n #fitFOV: number;\n #projection2: number;\n #projMatrix1: FloatArrayParam;\n #projMatrix2: FloatArrayParam;\n\n\n /**\n * Emits an event each time the animation starts.\n *\n * @event\n */\n readonly onStarted: EventEmitter;\n\n /**\n * Emits an event each time the animation stops.\n *\n * @event\n */\n readonly onStopped: EventEmitter;\n\n /**\n * Emits an event each time the animation stops.\n *\n * @event\n */\n readonly onCancelled: EventEmitter;\n\n /**\n @private\n */\n constructor(view: View, cfg?: {\n duration: number\n }) {\n\n super(view, cfg);\n\n this.view = view;\n this.camera = view.camera;\n\n this.#look1 = createVec3();\n this.#eye1 = createVec3();\n this.#up1 = createVec3();\n this.#look2 = createVec3();\n this.#eye2 = createVec3();\n this.#up2 = createVec3();\n this.#orthoScale1 = 1;\n this.#orthoScale2 = 1;\n this.#flying = false;\n this.#flyEyeLookUp = false;\n this.#flyingEye = false;\n this.#flyingLook = false;\n this.#callback = null;\n this.#callbackScope = null;\n this.#time1 = null;\n this.#time2 = null;\n this.easing = true;\n this.#trail = false;\n this.#fit = true;\n this.#duration = 500;\n\n this.onStarted = new EventEmitter(new EventDispatcher());\n this.onStopped = new EventEmitter(new EventDispatcher());\n this.onCancelled = new EventEmitter(new EventDispatcher());\n }\n\n /**\n * Flies the {@link @xeokit/viewer!Camera} to a target.\n *\n * * When the target is a boundary, the {@link @xeokit/viewer!Camera} will fly towards the target and stop when the target fills most of the canvas.\n * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up````, then CameraFlightAnimation will interpolate the {@link @xeokit/viewer!Camera} to that target and stop there.\n *\n * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has\n * an AABB. Defaults to the {@link @xeokit/scene!Scene | Scene}, which causes the {@link @xeokit/viewer!Camera} to fit the Scene in view.\n * @param [params.arc=0] Factor in range ````[0..1]```` indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} position\n * will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} position as it flies to the target.\n * @param {Number|String|Component} [params.component] ID or instance of a component to fly to. Defaults to the entire {@link @xeokit/scene!Scene | Scene}.\n * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to.\n * @param [params.eye] Position to fly the eye position to.\n * @param [params.look] Position to fly the look position to.\n * @param [params.up] Position to fly the up vector to.\n * @param [params.projection] Projection type to transition into as we fly. Can be any of the values of {@link Camera.projectionType}.\n * @param [params.fit=true] Whether to fit the target to the view volume. Overrides {@link CameraFlightAnimation.fit}.\n * @param [params.fitFOV] How much of field-of-view, in degrees, that a target {@link ViewerObject} or its AABB should\n * fill the canvas on arrival. Overrides {@link CameraFlightAnimation.fitFOV}.\n * @param [params.duration] Flight duration in seconds. Overrides {@link CameraFlightAnimation.duration}.\n * @param [params.orthoScale] Animate the Camera's orthographic scale to this target value. See {@link Ortho.scale}.\n * @param {Function} [callback] Callback fired on arrival.\n * @param {Object} [scope] Optional scope for callback.\n */\n flyTo(params: {\n projection?: number;\n orthoScale?: number;\n aabb?: FloatArrayParam;\n length?: number;\n eye?: FloatArrayParam;\n look?: FloatArrayParam;\n up?: FloatArrayParam;\n poi?: FloatArrayParam;\n fitFOV?: number;\n duration?: number;\n } = {},\n callback: {\n (): void; call: (arg0: any) => void;\n }) {\n\n if (this.#flying) {\n this.stop();\n }\n\n this.#flying = false;\n this.#flyingEye = false;\n this.#flyingLook = false;\n this.#flyingEyeLookUp = false;\n\n this.#callback = callback;\n\n const camera = this.camera;\n const flyToProjection = (!!params.projection) && (params.projection !== camera.projectionType);\n\n this.#eye1[0] = camera.eye[0];\n this.#eye1[1] = camera.eye[1];\n this.#eye1[2] = camera.eye[2];\n\n this.#look1[0] = camera.look[0];\n this.#look1[1] = camera.look[1];\n this.#look1[2] = camera.look[2];\n\n this.#up1[0] = camera.up[0];\n this.#up1[1] = camera.up[1];\n this.#up1[2] = camera.up[2];\n\n this.#orthoScale1 = camera.orthoProjection.scale;\n this.#orthoScale2 = params.orthoScale || this.#orthoScale1;\n\n let aabb: FloatArrayParam;\n let eye: FloatArrayParam;\n let look: FloatArrayParam;\n let up: FloatArrayParam;\n\n if (params.aabb) {\n aabb = params.aabb;\n\n } else if ((params.eye && params.look) || params.up) {\n // @ts-ignore\n eye = params.eye;\n // @ts-ignore\n look = params.look;\n // @ts-ignore\n up = params.up;\n\n } else if (params.eye) {\n eye = params.eye;\n\n } else if (params.look) {\n look = params.look;\n\n } else {\n if (!flyToProjection) {\n aabb = this.view.aabb;\n }\n }\n\n const poi = params.poi;\n // @ts-ignore\n if (aabb) {\n\n if (aabb[3] < aabb[0] || aabb[4] < aabb[1] || aabb[5] < aabb[2]) { // Don't fly to an inverted boundary\n return;\n }\n\n if (aabb[3] === aabb[0] && aabb[4] === aabb[1] && aabb[5] === aabb[2]) { // Don't fly to an empty boundary\n return;\n }\n\n aabb = aabb.slice();\n const aabbCenter = getAABB3Center(aabb);\n\n this.#look2 = poi || aabbCenter;\n\n const eyeLookVec = subVec3(this.#eye1, this.#look1, tempVec3);\n const eyeLookVecNorm = normalizeVec3(eyeLookVec);\n const diag = poi ? getAABB3DiagPoint(aabb, poi) : getAABB3Diag(aabb);\n const fitFOV = params.fitFOV || this.#fitFOV;\n const sca = Math.abs(diag / Math.tan(fitFOV * DEGTORAD));\n\n this.#orthoScale2 = diag * 1.1;\n\n this.#eye2[0] = this.#look2[0] + (eyeLookVecNorm[0] * sca);\n this.#eye2[1] = this.#look2[1] + (eyeLookVecNorm[1] * sca);\n this.#eye2[2] = this.#look2[2] + (eyeLookVecNorm[2] * sca);\n\n this.#up2[0] = this.#up1[0];\n this.#up2[1] = this.#up1[1];\n this.#up2[2] = this.#up1[2];\n\n this.#flyingEyeLookUp = true;\n\n // @ts-ignore\n } else if (eye || look || up) {\n // @ts-ignore\n this.#flyingEyeLookUp = !!eye && !!look && !!up;\n // @ts-ignore\n this.#flyingEye = !!eye && !look;\n // @ts-ignore\n this.#flyingLook = !!look && !eye;\n // @ts-ignore\n if (eye) {\n this.#eye2[0] = eye[0];\n this.#eye2[1] = eye[1];\n this.#eye2[2] = eye[2];\n }\n // @ts-ignore\n if (look) {\n this.#look2[0] = look[0];\n this.#look2[1] = look[1];\n this.#look2[2] = look[2];\n }\n // @ts-ignore\n if (up) {\n this.#up2[0] = up[0];\n this.#up2[1] = up[1];\n this.#up2[2] = up[2];\n }\n }\n\n if (flyToProjection) {\n\n if (params.projection === OrthoProjectionType && camera.projectionType !== OrthoProjectionType) {\n this.#projection2 = OrthoProjectionType;\n this.#projMatrix1 = camera.projMatrix.slice();\n this.#projMatrix2 = camera.orthoProjection.projMatrix.slice();\n camera.projectionType = CustomProjectionType;\n }\n\n if (params.projection === PerspectiveProjectionType && camera.projectionType !== PerspectiveProjectionType) {\n this.#projection2 = PerspectiveProjectionType;\n this.#projMatrix1 = camera.projMatrix.slice();\n this.#projMatrix2 = camera.perspectiveProjection.projMatrix.slice();\n camera.projectionType = CustomProjectionType;\n }\n } else {\n // @ts-ignore\n this.#projection2 = null;\n }\n\n this.onStarted.dispatch(this, null);\n\n this.#time1 = Date.now();\n this.#time2 = this.#time1 + (params.duration ? params.duration * 1000 : this.#duration);\n\n this.#flying = true; // False as soon as we stop\n\n scheduler.scheduleTask(this.#update, this);\n }\n\n /**\n * Jumps the {@link @xeokit/viewer!View}'s {@link @xeokit/viewer!Camera} to the given target.\n *\n * * When the target is a boundary, this CameraFlightAnimation will position the {@link @xeokit/viewer!Camera} at where the target fills most of the canvas.\n * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up```` vectors, then this CameraFlightAnimation will jump the {@link @xeokit/viewer!Camera} to that target.\n *\n * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has a World-space AABB.\n * @param [params.arc=0] Factor in range [0..1] indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} as it flies to the target.\n * @param {Number|String|Component} [params.component] ID or instance of a component to fly to.\n * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to.\n * @param [params.eye] Position to fly the eye position to.\n * @param [params.look] Position to fly the look position to.\n * @param [params.up] Position to fly the up vector to.\n * @param [params.projection] Projection type to transition into. Can be any of the values of {@link Camera.projectionType}.\n * @param [params.fitFOV] How much of field-of-view, in degrees, that a target {@link ViewerObject} or its AABB should fill the canvas on arrival. Overrides {@link CameraFlightAnimation.fitFOV}.\n * @param [params.fit] Whether to fit the target to the view volume. Overrides {@link CameraFlightAnimation.fit}.\n */\n jumpTo(params: any) {\n this.#jumpTo(params);\n }\n\n #jumpTo(params: any) {\n\n if (this.#flying) {\n this.stop();\n }\n\n const camera = this.camera;\n\n let aabb: FloatArrayParam;\n let newEye: FloatArrayParam;\n let newLook: FloatArrayParam;\n let newUp: FloatArrayParam;\n\n if (params.aabb) { // Boundary3D\n aabb = params.aabb;\n } else if (params.eye || params.look || params.up) { // Camera pose\n newEye = params.eye;\n newLook = params.look;\n newUp = params.up;\n } else {\n aabb = this.view.aabb;\n }\n\n const poi = params.poi;\n // @ts-ignore\n if (aabb) {\n\n if (aabb[3] <= aabb[0] || aabb[4] <= aabb[1] || aabb[5] <= aabb[2]) { // Don't fly to an empty boundary\n return;\n }\n\n const diag = poi ? getAABB3DiagPoint(aabb, poi) : getAABB3Diag(aabb);\n // @ts-ignore\n newLook = poi || getAABB3Center(aabb, newLook);\n\n if (this.#trail) {\n subVec3(camera.look, newLook, newLookEyeVec);\n } else {\n subVec3(camera.eye, camera.look, newLookEyeVec);\n }\n\n normalizeVec3(newLookEyeVec);\n let dist;\n const fit = (params.fit !== undefined) ? params.fit : this.#fit;\n\n if (fit) {\n dist = Math.abs((diag) / Math.tan((params.fitFOV || this.#fitFOV) * DEGTORAD));\n\n } else {\n dist = lenVec3(subVec3(camera.eye, camera.look, tempVec3));\n }\n\n mulVec3Scalar(newLookEyeVec, dist);\n\n camera.eye = addVec3(newLook, newLookEyeVec, tempVec3);\n camera.look = newLook;\n\n this.camera.orthoProjection.scale = diag * 1.1;\n // @ts-ignore\n } else if (newEye || newLook || newUp) {\n // @ts-ignore\n if (newEye) {\n camera.eye = newEye;\n } // @ts-ignore\n if (newLook) {\n camera.look = newLook;\n } // @ts-ignore\n if (newUp) {\n camera.up = newUp;\n }\n }\n\n if (params.projection) {\n camera.projectionType = params.projection;\n }\n }\n\n #update() {\n if (!this.#flying) {\n return;\n }\n const time = Date.now();\n // @ts-ignore\n let t = (time - this.#time1) / (this.#time2 - this.#time1);\n const stopping = (t >= 1);\n\n if (t > 1) {\n t = 1;\n }\n\n const tFlight = this.easing ? CameraFlightAnimation.#ease(t, 0, 1, 1) : t;\n const camera = this.camera;\n\n if (this.#flyingEye || this.#flyingLook) {\n\n if (this.#flyingEye) {\n subVec3(camera.eye, camera.look, newLookEyeVec);\n camera.eye = lerpVec3(tFlight, 0, 1, this.#eye1, this.#eye2, newEye);\n camera.look = subVec3(newEye, newLookEyeVec, newLook);\n } else if (this.#flyingLook) {\n camera.look = lerpVec3(tFlight, 0, 1, this.#look1, this.#look2, newLook);\n camera.up = lerpVec3(tFlight, 0, 1, this.#up1, this.#up2, newUp);\n }\n\n } else if (this.#flyingEyeLookUp) {\n\n camera.eye = lerpVec3(tFlight, 0, 1, this.#eye1, this.#eye2, newEye);\n camera.look = lerpVec3(tFlight, 0, 1, this.#look1, this.#look2, newLook);\n camera.up = lerpVec3(tFlight, 0, 1, this.#up1, this.#up2, newUp);\n }\n\n if (this.#projection2) {\n const tProj = (this.#projection2 === OrthoProjectionType) ? CameraFlightAnimation.#easeOutExpo(t, 0, 1, 1) : CameraFlightAnimation.#easeInCubic(t, 0, 1, 1);\n camera.customProjection.projMatrix = lerpMat4(tProj, 0, 1, this.#projMatrix1, this.#projMatrix2);\n\n } else {\n camera.orthoProjection.scale = this.#orthoScale1 + (t * (this.#orthoScale2 - this.#orthoScale1));\n }\n\n if (stopping) {\n camera.orthoProjection.scale = this.#orthoScale2;\n this.stop();\n return;\n }\n scheduler.scheduleTask(this.#update, this); // Keep flying\n }\n\n static #ease(t: number, b: number, c: number, d: number) { // Quadratic easing out - decelerating to zero velocity http://gizma.com/easing\n t /= d;\n return -c * t * (t - 2) + b;\n }\n\n static #easeInCubic(t: number, b: number, c: number, d: number) {\n t /= d;\n return c * t * t * t + b;\n }\n\n static #easeOutExpo(t: number, b: number, c: number, d: number) {\n return c * (-Math.pow(2, -10 * t / d) + 1) + b;\n }\n\n /**\n * Stops an earlier {@link CameraFlightAnimation.flyTo}, fires arrival callback, then \"stopped\" event.\n */\n stop() {\n if (!this.#flying) {\n return;\n }\n this.#flying = false;\n this.#time1 = null;\n this.#time2 = null;\n if (this.#projection2) {\n this.camera.projectionType = this.#projection2;\n }\n const callback = this.#callback;\n if (callback) {\n this.#callback = null;\n callback();\n }\n this.onStopped.dispatch(this, null);\n }\n\n /**\n * Cancels a flight in progress, without calling the arrival callback.\n */\n cancel() {\n if (!this.#flying) {\n return;\n }\n this.#flying = false;\n this.#time1 = null;\n this.#time2 = null;\n if (this.#callback) {\n this.#callback = null;\n }\n this.onCancelled.dispatch(this, null);\n }\n\n /**\n * Sets the flight duration in seconds.\n *\n * Stops any flight currently in progress.\n *\n * Default value is ````0.5````.\n */\n set duration(value: number) {\n this.#duration = value ? (value * 1000.0) : 500;\n this.stop();\n }\n\n /**\n * Gets the flight duration in seconds.\n *\n * Default value is ````0.5````.\n */\n get duration(): number {\n return this.#duration / 1000.0;\n }\n\n /**\n * When flying to a {@link @xeokit/scene!SceneModel | SceneModel}, {@link ViewerObject} or boundary, indicates if the CameraFlightAnimation always adjusts\n * the distance of {@link @xeokit/viewer!Camera.eye | Camera.eye} from {@link @xeokit/viewer!Camera.look | Camera.look} to ensure that the target always fits in view.\n *\n * When false, the eye will remain fixed at its current distance from the look position.\n *\n * Default value is ````true````.\n */\n set fit(value: boolean) {\n this.#fit = value;\n }\n\n /**\n * When flying to a {@link @xeokit/scene!SceneModel | SceneModel}, {@link ViewerObject} or boundary, indicates if the CameraFlightAnimation always adjusts\n * the distance of {@link @xeokit/viewer!Camera.eye | Camera.eye} from {@link @xeokit/viewer!Camera.look | Camera.look} to ensure that the target always fits in view.\n *\n * When false, the eye will remain fixed at its current distance from the look position.\n *\n * Default value is ````true````.\n */\n get fit(): boolean {\n return this.#fit;\n }\n\n /**\n * Sets how much of the perspective field-of-view, in degrees, that a target {@link ViewerObject.aabb} should\n * fill the canvas when calling {@link CameraFlightAnimation.flyTo} or {@link CameraFlightAnimation.jumpTo}.\n *\n * Default value is ````45````.\n */\n set fitFOV(value: number) {\n this.#fitFOV = value;\n }\n\n /**\n * Gets how much of the perspective field-of-view, in degrees, that a target {@link ViewerObject.aabb} should\n * fill the canvas when calling {@link CameraFlightAnimation.flyTo} or {@link CameraFlightAnimation.jumpTo}.\n *\n * Default value is ````45````.\n */\n get fitFOV(): number {\n return this.#fitFOV;\n }\n\n /**\n * Indicates if this CameraFlightAnimation will orient the {@link @xeokit/viewer!Camera}\n * in the direction that it is flying.\n *\n * Default value is ````false````.\n */\n set trail(value: boolean) {\n this.#trail = value;\n }\n\n /**\n * Indicates if this CameraFlightAnimation will orient the {@link @xeokit/viewer!Camera}\n * in the direction that it is flying.\n *\n * Default value is ````false````.\n */\n get trail(): boolean {\n return this.#trail;\n }\n\n /**\n * @private\n */\n destroy() {\n this.stop();\n super.destroy();\n this.onStarted.clear();\n this.onStopped.clear();\n this.onCancelled.clear();\n }\n}\n\nexport {CameraFlightAnimation};\n", "/**\n * xeokit runtime statistics.\n * @type {{components: {models: number, objects: number, scenes: number, meshes: number}, memory: {indices: number, uvs: number, textures: number, materials: number, transforms: number, positions: number, programs: number, normals: number, meshes: number, colors: number}, build: {version: string}, client: {browser: string}, frame: {frameCount: number, useProgram: number, bindTexture: number, drawElements: number, bindArray: number, tasksRun: number, fps: number, drawArrays: number, tasksScheduled: number}}}\n */\nconst stats = {\n build: {\n version: \"0.8\"\n },\n client: {\n browser: (navigator && navigator.userAgent) ? navigator.userAgent : \"n/a\"\n },\n components: {\n viewers: 0,\n views: 0,\n scenes: 0,\n models: 0,\n meshes: 0,\n objects: 0\n },\n memory: {\n meshes: 0,\n positions: 0,\n colors: 0,\n normals: 0,\n uvs: 0,\n indices: 0,\n textures: 0,\n transforms: 0,\n materials: 0,\n programs: 0\n },\n frame: {\n frameCount: 0,\n fps: 0,\n tasksRun: 0,\n tasksScheduled: 0,\n tasksBudget: 0\n }\n};\n\nexport {stats};", "import {Queue, Map, inQuotes} from \"@xeokit/utils\";\n\nimport {stats} from './stats';\nimport type {Viewer} from \"./Viewer\";\n\n\nexport interface TickEvent {\n viewerId: string;\n time: number;\n startTime: number;\n prevTime: number;\n deltaTime: number;\n}\n\nconst tickEvent: TickEvent = {\n viewerId: \"\",\n time: 0,\n startTime: 0,\n prevTime: 0,\n deltaTime: 0\n};\n\nclass Scheduler {\n\n public readonly viewers: { [key: string]: Viewer };\n\n #viewersRenderInfo: { [key: string]: any } = {};\n\n // @ts-ignore\n #viewerIDMap: Map = new Map(); // Ensures unique viewer IDs\n #taskQueue: Queue = new Queue(); // Task queue, which is pumped on each frame; tasks are pushed to it with calls to xeokit.schedule\n #taskBudget: number = 10; // Millisecs we're allowed to spend on tasks in each frame\n #lastTime: number = 0;\n #elapsedTime: number = 0;\n\n /**\n * @private\n */\n constructor() {\n\n this.viewers = {};\n\n const frame = () => {\n const time = Date.now();\n if (this.#lastTime > 0) {\n this.#elapsedTime = time - this.#lastTime;\n }\n this.#runTasks(time);\n this.#fireTickEvents(time);\n this.#renderViewers();\n this.#lastTime = time;\n\n requestAnimationFrame(frame);\n };\n\n requestAnimationFrame(frame);\n }\n\n #runTasks(time: number) {\n const tasksRun = this.#runTasksUntil(time + this.#taskBudget);\n const tasksScheduled = this.getNumTasks();\n stats.frame.tasksRun = tasksRun;\n stats.frame.tasksScheduled = tasksScheduled;\n stats.frame.tasksBudget = this.#taskBudget;\n }\n\n #runTasksUntil(until: number = -1) {\n let time = (new Date()).getTime();\n let tasksRun = 0;\n while (this.#taskQueue.length > 0 && (until < 0 || time < until)) {\n const callback = this.#taskQueue.shift();\n const scope = this.#taskQueue.shift();\n if (scope) {\n callback.call(scope);\n } else {\n callback();\n }\n time = (new Date()).getTime();\n tasksRun++;\n }\n return tasksRun;\n }\n\n #fireTickEvents(time: number) {\n tickEvent.time = time;\n for (let id in scheduler.viewers) {\n if (this.viewers.hasOwnProperty(id)) {\n const viewer = this.viewers[id];\n tickEvent.viewerId = id;\n tickEvent.startTime = viewer.startTime;\n tickEvent.deltaTime = tickEvent.prevTime != null ? tickEvent.time - tickEvent.prevTime : 0;\n viewer.onTick.dispatch(viewer, tickEvent);\n }\n }\n tickEvent.prevTime = time;\n }\n\n #renderViewers() {\n for (let id in this.viewers) {\n if (this.viewers.hasOwnProperty(id)) {\n const viewer = this.viewers[id];\n let renderInfo = this.#viewersRenderInfo[id];\n if (!renderInfo) {\n renderInfo = this.#viewersRenderInfo[id] = {}; // FIXME\n }\n\n\n // const ticksPerOcclusionTest = viewer.ticksPerOcclusionTest;\n // if (renderInfo.ticksPerOcclusionTest !== ticksPerOcclusionTest) {\n // renderInfo.ticksPerOcclusionTest = ticksPerOcclusionTest;\n // renderInfo.renderCountdown = ticksPerOcclusionTest;\n // }\n // if (--viewer.occlusionTestCountdown <= 0) {\n // viewer.doOcclusionTest();\n // viewer.occlusionTestCountdown = ticksPerOcclusionTest;\n // }\n //\n // ticksPerRender = viewer.ticksPerRender;\n // if (renderInfo.ticksPerRender !== ticksPerRender) {\n // renderInfo.ticksPerRender = ticksPerRender;\n // renderInfo.renderCountdown = ticksPerRender;\n // }\n // if (--renderInfo.renderCountdown === 0) {\n viewer.render({});\n // renderInfo.renderCountdown = ticksPerRender;\n // }\n }\n }\n }\n\n registerViewer(viewer: Viewer) {\n if (viewer.id) {\n if (this.viewers[viewer.id]) {\n console.error(`[ERROR] Viewer ${inQuotes(viewer.id)} already exists`);\n return;\n }\n } else { // Auto-generated ID\n // @ts-ignore\n // noinspection JSConstantReassignment\n viewer.id = this.#viewerIDMap.addItem({});\n }\n this.viewers[viewer.id] = viewer;\n // const ticksPerOcclusionTest = viewer.ticksPerOcclusionTest;\n // const ticksPerRender = viewer.ticksPerRender;\n this.#viewersRenderInfo[viewer.id] = {\n // ticksPerOcclusionTest: ticksPerOcclusionTest,\n // ticksPerRender: ticksPerRender,\n // renderCountdown: ticksPerRender\n };\n stats.components.viewers++;\n }\n\n deregisterViewer(viewer:Viewer) {\n if (!this.viewers[viewer.id]) {\n return;\n }\n this.#viewerIDMap.removeItem(viewer.id);\n delete this.viewers[viewer.id];\n delete this.#viewersRenderInfo[viewer.id];\n stats.components.viewers--;\n }\n\n scheduleTask(callback: Function, scope: any) {\n this.#taskQueue.push(callback);\n this.#taskQueue.push(scope);\n }\n\n getNumTasks() {\n return this.#taskQueue.length;\n }\n}\n\nconst scheduler = new Scheduler();\n\nexport {scheduler};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * An ambient light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Has fixed color and intensity that illuminates all objects equally.\n * * {@link AmbientLight}s, {@link DirLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass AmbientLight extends Component {\n\n /**\n ID of this AmbientLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this AmbientLight belongs.\n */\n public readonly view: View;\n\n #state: {\n intensity: number;\n color: Float32Array;\n type: string\n };\n\n /**\n * @param view Owner component. When destroyed, the owner will destroy this AmbientLight as well.\n * @param cfg AmbientLight configuration\n */\n constructor(view: View, cfg: {\n /** Optional ID, generated automatically when omitted.*/\n id?: string;\n /** Intensity factor in range ````[0..1]````. Default is ````1````.*/\n intensity?: number;\n /** RGB color in range ````[0..1,0..1,0..1]````. Default is ````[0.7, 0.7, 0.7]````.*/\n color?: FloatArrayParam\n } = {}) {\n super(view, cfg);\n this.view = view;\n this.#state = {\n type: \"ambient\",\n color: new Float32Array(cfg.color || [0.7, 0.7, 0.7]),\n intensity: (cfg.intensity !== undefined && cfg.intensity !== null) ? cfg.intensity : 1.0\n };\n this.view.registerLight(this);\n }\n\n /**\n * Sets the RGB color of this AmbientLight.\n *\n * Default value is ````[0.7, 0.7, 0.7]````.\n *\n * @param color The AmbientLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this AmbientLight.\n *\n * Default value is ````[0.7, 0.7, 0.7]````.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the intensity of this AmbientLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @param intensity The AmbientLight's intensity.\n */\n set intensity(intensity: number) {\n this.#state.intensity = intensity !== undefined ? intensity : 1.0;\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this AmbientLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The AmbientLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Destroys this AmbientLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n }\n}\n\nexport {AmbientLight};\n", "import {Component} from \"@xeokit/core\";\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n/**\n * A directional light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Illuminates all objects equally from a given direction.\n * * Has an emission direction vector in {@link DirLight.dir}, but no position.\n * * Defined in either *World* or *View* coordinate space. When in World-space, {@link DirLight.dir} is relative to the\n * World coordinate system, and will appear to move as the {@link @xeokit/viewer!Camera} moves. When in View-space, {@link DirLight.dir} is\n * relative to the View coordinate system, and will behave as if fixed to the viewer's head.\n * * {@link AmbientLight}s, {@link DirLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass DirLight extends Component {\n\n /**\n ID of this DirLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this DirLight belongs.\n */\n public readonly view: View;\n\n #state: {\n type: \"dir\";\n dir: Float32Array;\n color: Float32Array;\n intensity: number;\n space: \"world\" | \"view\"\n };\n\n /**\n * @param view View that owns this DirLight. When destroyed, the View will destroy this DirLight as well.\n * @param options The DirLight configuration\n * @param [options.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [options.dir=[1.0, 1.0, 1.0]] A unit vector indicating the direction that the light is shining, given in either World or View space, depending on the value of the ````space```` parameter.\n * @param [options.color=[0.7, 0.7, 0.8 ]] The color of this DirLight.\n * @param [options.intensity=1.0] The intensity of this DirLight, as a factor in range ````[0..1]````.\n * @param [options.space=\"view\"] The coordinate system the DirLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n constructor(view: View, options: {\n intensity?: number; color?: FloatArrayParam;\n dir?: FloatArrayParam; space?: \"world\" | \"view\"\n } = {}) {\n super(view, options);\n this.view = view;\n this.#state = {\n type: \"dir\",\n dir: new Float32Array(options.dir || [1.0, 1.0, 1.0]),\n color: new Float32Array(options.color || [0.7, 0.7, 0.8]),\n intensity: (options.intensity !== undefined && options.intensity !== null) ? options.intensity : 1.0,\n space: options.space || \"view\"\n };\n this.view.registerLight(this);\n }\n\n /**\n * Gets the direction in which the DirLight is shining.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @returns {Number[]} The direction vector.\n */\n get dir(): FloatArrayParam {\n return this.#state.dir;\n }\n\n /**\n * The coordinate system the DirLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n get space(): String {\n return this.#state.space;\n }\n\n /**\n * Sets the direction in which the DirLight is shining.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @param value The direction vector.\n */\n set dir(value: FloatArrayParam) {\n this.#state.dir.set(value);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this DirLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @returns {Number[]} The DirLight's RGB color.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the RGB color of this DirLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @param color The DirLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color);\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this DirLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The DirLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the intensity of this DirLight.\n *\n * Default intensity is ````1.0```` for maximum intensity.\n *\n * @param intensity The DirLight's intensity\n */\n set intensity(intensity: number) {\n this.#state.intensity = intensity;\n this.view.redraw();\n }\n\n /**\n * Destroys this DirLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n this.view.redraw();\n }\n}\n\nexport {DirLight};\n", "\n\n/**\n * Results of a snapshot attempted with {@link View.getSnapshot}.\n */\nclass SnapshotResult {\n\n\n constructor() {\n\n this.reset();\n }\n\n\n\n /**\n * @private\n */\n reset() {\n\n }\n}\n\nexport {SnapshotResult};", "import {Component} from \"@xeokit/core\";\nimport type {View} from \"./View\";\nimport {FastRender, QualityRender} from \"@xeokit/constants\";\n\n\n// /**\n// * Gets the scale of the canvas back buffer relative to the CSS-defined size of the canvas.\n// *\n// * This is a kdtree3 way to trade off rendering quality for speed. If the canvas size is defined in CSS, then\n// * setting this to a value between ````[0..1]```` (eg ````0.5````) will render into a smaller back buffer, giving\n// * a performance boost.\n// *\n// * @returns The resolution scale.\n// */\n// get resolutionScale(): number {\n// return this.#resolutionScale;\n// }\n//\n// /**\n// * Sets the scale of the canvas back buffer relative to the CSS-defined size of the canvas.\n// *\n// * This is a kdtree3 way to trade off rendering quality for speed. If the canvas size is defined in CSS, then\n// * setting this to a value between ````[0..1]```` (eg ````0.5````) will render into a smaller back buffer, giving\n// * a performance boost.\n// *\n// * @param resolutionScale The resolution scale.\n// */\n// set resolutionScale(resolutionScale: number) {\n// resolutionScale = resolutionScale || 1.0;\n// if (resolutionScale === this.#resolutionScale) {\n// return;\n// }\n// this.#resolutionScale = resolutionScale;\n// const htmlElement = this.htmlElement;\n// htmlElement.width = Math.round(\n// htmlElement.clientWidth * this.#resolutionScale\n// );\n// htmlElement.height = Math.round(\n// htmlElement.clientHeight * this.#resolutionScale\n// );\n// this.redraw();\n// }\n\n/**\n * Configures the appearance of {@link @xeokit/viewer!ViewObject | ViewObjects} when canvas resolution scaling is applied.\n *\n * ## Summary\n *\n * * Located at {@link View.resolutionScale}.\n */\nexport class ResolutionScale extends Component {\n\n /**\n * The View to which this ResolutionScale belongs.\n */\n public readonly view: View;\n\n /**\n * @private\n */\n #state: {\n enabled: boolean;\n resolutionScale: number;\n renderModes: number[];\n };\n\n /**\n * @private\n */\n constructor(view: View, options: {\n enabled?: boolean;\n resolutionScale?: number;\n renderModes?: number[];\n } = {}) {\n\n super(view, options);\n\n this.view = view;\n\n this.#state = {\n enabled: options.enabled !== false,\n renderModes: options.renderModes || [FastRender],\n resolutionScale: options.resolutionScale || 1\n };\n }\n\n /**\n * Sets if resolution scaling is enabled.\n *\n * Default is ````true````.\n */\n set enabled(value: boolean) {\n if (this.#state.enabled === value) {\n return;\n }\n this.#state.enabled = value;\n this.view.redraw();\n }\n\n /**\n * Gets if resolution scaling is enabled.\n *\n * Default is ````true````.\n */\n get enabled(): boolean {\n return this.#state.enabled;\n }\n\n /**\n * Sets which rendering modes in which to apply ResolutionScale.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!FastRender}].\n */\n set renderModes(value: number[]) {\n this.#state.renderModes = value;\n this.view.redraw();\n }\n\n /**\n * Gets which rendering modes in which to apply ResolutionScale.\n *\n * Accepted modes are {@link @xeokit/constants!QualityRender} and {@link @xeokit/constants!FastRender}.\n *\n * Default value is [{@link @xeokit/constants!FastRender}].\n */\n get renderModes(): number[] {\n return this.#state.renderModes;\n }\n\n /**\n * Sets the scale when ResolutionScale is applied.\n *\n * Default is ````1.0````.\n */\n set resolutionScale(value: number) {\n if (this.#state.resolutionScale === value) {\n return;\n }\n this.#state.resolutionScale = value;\n this.view.redraw();\n }\n\n /**\n * Gets the scale when ResolutionScale is applied.\n *\n * Default is ````1.0````.\n */\n get resolutionScale(): number {\n return this.#state.resolutionScale;\n }\n\n /**\n * Gets if resolution scaling is currently applied.\n *\n * This is `true` when {@link ResolutionScale.enabled | ResolutionScale.enabled} is `true`\n * and {@link View.renderMode | View.renderMode} is\n * in {@link ResolutionScale.renderModes | ResolutionScale.renderModes}.\n */\n get applied(): boolean {\n if (!this.#state.enabled) {\n return false;\n }\n for (let i = 0, len = this.#state.renderModes.length; i < len; i++) {\n if (this.view.renderMode === this.#state.renderModes[i]) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * @private\n */\n destroy() {\n super.destroy();\n }\n}\n", "import {Component} from \"@xeokit/core\";\n\n\nimport type {View} from \"./View\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * A positional light source within a {@link @xeokit/viewer!View}.\n *\n * ## Summary\n *\n * * Originates from a single point and spreads outward in all directions, with optional attenuation over distance.\n * * Has a position in {@link PointLight.pos}, but no direction.\n * * Defined in either *World* or *View* coordinate space. When in World-space, {@link PointLight.pos} is relative to\n * the World coordinate system, and will appear to move as the {@link @xeokit/viewer!Camera} moves. When in View-space,\n * {@link PointLight.pos} is relative to the View coordinate system, and will behave as if fixed to the viewer's head.\n * * Has {@link PointLight.constantAttenuation}, {@link PointLight.linearAttenuation} and {@link PointLight.quadraticAttenuation}\n * factors, which indicate how intensity attenuates over distance.\n * * {@link AmbientLight}s, {@link PointLight}s and {@link PointLight}s are registered by their {@link Component.id} on {@link View.lights}.\n */\nclass PointLight extends Component {\n\n /**\n ID of this PointLight, unique within the {@link @xeokit/viewer!View}.\n */\n declare public id: string;\n\n /**\n * The View to which this PointLight belongs.\n */\n public readonly view: View;\n\n #state: {\n intensity: number;\n attenuation: Float32Array;\n color: Float32Array;\n pos: Float64Array;\n type: string;\n space: string\n };\n\n /**\n * @param view View that owns this PointLight. When destroyed, the View will destroy this PointLight as well.\n * @param cfg The PointLight configuration\n * @param [cfg.id] Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.\n * @param [cfg.pos=[ 1.0, 1.0, 1.0 ]] Position, in either World or View space, depending on the value of the **space** parameter.\n * @param [cfg.color=[0.7, 0.7, 0.8 ]] Color of this PointLight.\n * @param [cfg.intensity=1.0] Intensity of this PointLight, as a factor in range ````[0..1]````.\n * @param [cfg.constantAttenuation=0] Constant attenuation factor.\n * @param [cfg.linearAttenuation=0] Linear attenuation factor.\n * @param [cfg.quadraticAttenuation=0] Quadratic attenuation factor.\n * @param [cfg.space=\"view\"] The coordinate system this PointLight is defined in - \"view\" or \"world\".\n * @param [cfg.castsShadow=false] Flag which indicates if this PointLight casts a castsShadow.\n */\n constructor(view: View, cfg: {\n /** Optional ID, unique among all components in the parent {@link @xeokit/scene!Scene | Scene}, generated automatically when omitted.*/\n id?: string;\n /** Intensity of this PointLight, as a factor in range ````[0..1]````. */\n intensity?: number;\n /** RGB color */\n color?: FloatArrayParam;\n /** World-space position */\n pos?: FloatArrayParam;\n /** Quadratic attenuation factor. */\n quadraticAttenuation?: number;\n /** Constant attenuation factor */\n constantAttenuation?: number;\n /** The coordinate system this PointLight is defined in - \"view\" or \"world\". */\n space?: string;\n /** Linear attenuation factor */\n linearAttenuation?: number\n } = {}) {\n\n super(view, cfg);\n\n this.view = view;\n\n\n this.#state = {\n type: \"point\",\n pos: new Float64Array(cfg.pos || [1.0, 1.0, 1.0]),\n color: new Float32Array(cfg.color || [0.7, 0.7, 0.8]),\n intensity: 1.0,\n // @ts-ignore\n attenuation: new Float32Array([cfg.constantAttenuation, cfg.linearAttenuation, cfg.quadraticAttenuation]),\n space: cfg.space || \"view\"\n };\n\n this.view.registerLight(this);\n }\n\n /**\n * The coordinate system the PointLight is defined in - ````\"view\"```` or ````\"space\"````.\n */\n get space(): String {\n return this.#state.space;\n }\n\n /**\n * Gets the position of this PointLight.\n *\n * This will be either World- or View-space, depending on the value of {@link PointLight.space}.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @returns {Number[]} The position.\n */\n get pos(): FloatArrayParam {\n return this.#state.pos;\n }\n\n /**\n * Sets the position of this PointLight.\n *\n * This will be either World- or View-space, depending on the value of {@link PointLight.space}.\n *\n * Default value is ````[1.0, 1.0, 1.0]````.\n *\n * @param pos The position.\n */\n set pos(pos: FloatArrayParam) {\n this.#state.pos.set(pos || [1.0, 1.0, 1.0]);\n this.view.redraw();\n }\n\n /**\n * Gets the RGB color of this PointLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @returns {Number[]} The PointLight's RGB color.\n */\n get color(): FloatArrayParam {\n return this.#state.color;\n }\n\n /**\n * Sets the RGB color of this PointLight.\n *\n * Default value is ````[0.7, 0.7, 0.8]````.\n *\n * @param color The PointLight's RGB color.\n */\n set color(color: FloatArrayParam) {\n this.#state.color.set(color || [0.7, 0.7, 0.8]);\n this.view.redraw();\n }\n\n /**\n * Gets the intensity of this PointLight.\n *\n * Default value is ````1.0```` for maximum intensity.\n *\n * @returns {Number} The PointLight's intensity.\n */\n get intensity(): number {\n return this.#state.intensity;\n }\n\n /**\n * Sets the intensity of this PointLight.\n *\n * Default intensity is ````1.0```` for maximum intensity.\n *\n * @param intensity The PointLight's intensity\n */\n set intensity(intensity: number) {\n if (intensity === this.#state.intensity) {\n return;\n }\n this.#state.intensity = intensity;\n this.view.redraw();\n }\n\n /**\n * Gets the constant attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The constant attenuation factor.\n */\n get constantAttenuation(): number {\n return this.#state.attenuation[0];\n }\n\n /**\n * Sets the constant attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The constant attenuation factor.\n */\n set constantAttenuation(value: number) {\n this.#state.attenuation[0] = value;\n this.view.redraw();\n }\n\n /**\n * Gets the linear attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The linear attenuation factor.\n */\n get linearAttenuation(): number {\n return this.#state.attenuation[1];\n }\n\n /**\n * Sets the linear attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The linear attenuation factor.\n */\n set linearAttenuation(value: number) {\n this.#state.attenuation[1] = value;\n this.view.redraw();\n }\n\n /**\n * Gets the quadratic attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @returns {Number} The quadratic attenuation factor.\n */\n get quadraticAttenuation(): number {\n return this.#state.attenuation[2];\n }\n\n /**\n * Sets the quadratic attenuation factor for this PointLight.\n *\n * Default value is ````0````.\n *\n * @param value The quadratic attenuation factor.\n */\n set quadraticAttenuation(value: number) {\n this.#state.attenuation[2] = value;\n this.view.redraw();\n }\n\n /**\n * Destroys this PointLight.\n */\n destroy() {\n super.destroy();\n this.view.deregisterLight(this);\n this.view.redraw();\n }\n}\n\nexport {PointLight};\n", "import type {ViewObject} from \"./ViewObject\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\n\n\n/**\n * Results of a pick attempted with {@link View.pick}.\n */\nclass PickResult {\n\n #viewObject?: ViewObject | null | undefined;\n #gotCanvasPos: boolean;\n #gotSnappedCanvasPos: boolean;\n #gotOrigin: boolean;\n #gotDirection: boolean;\n #gotIndices: boolean;\n #gotLocalPos: boolean;\n #gotWorldPos: boolean;\n #gotViewPos: boolean;\n #gotWorldNormal: boolean;\n #gotUV: boolean;\n #snappedToVertex: boolean;\n #snappedToEdge: boolean;\n #canvasPos: Int16Array;\n #snappedCanvasPos: Int16Array;\n #origin: FloatArrayParam;\n #direction: FloatArrayParam;\n #indices: Int32Array;\n #localPos: FloatArrayParam;\n #worldPos: FloatArrayParam;\n #viewPos: FloatArrayParam;\n #worldNormal: FloatArrayParam;\n #uv: FloatArrayParam;\n\n constructor() {\n\n this.#viewObject = null;\n this.#canvasPos = new Int16Array([0, 0]);\n this.#origin = new Float64Array([0, 0, 0]);\n this.#direction = new Float64Array([0, 0, 0]);\n this.#indices = new Int32Array(3);\n this.#localPos = new Float64Array([0, 0, 0]);\n this.#worldPos = new Float64Array([0, 0, 0]);\n this.#viewPos = new Float64Array([0, 0, 0]);\n this.#worldNormal = new Float64Array([0, 0, 0]);\n this.#uv = new Float64Array([0, 0]);\n this.#gotOrigin = false;\n this.#gotDirection = false;\n this.#gotIndices = false;\n this.#gotCanvasPos = false;\n this.#gotSnappedCanvasPos = false;\n this.#gotLocalPos = false;\n this.#gotWorldPos = false;\n this.#gotViewPos = false;\n this.#gotWorldNormal = false;\n this.#gotUV = false;\n this.#snappedToVertex = false\n this.#snappedToEdge = false;\n\n this.reset();\n }\n\n /**\n * The picked {@link @xeokit/viewer!ViewObject}.\n */\n get viewObject(): ViewObject | null | undefined {\n return this.#viewObject;\n }\n\n /**\n * @private\n */\n set viewObject(value: ViewObject | null | undefined) {\n this.#viewObject = value;\n }\n\n /**\n * Canvas coordinates when picking with a 2D pointer.\n */\n get canvasPos(): Int16Array | undefined {\n return this.#gotCanvasPos ? this.#canvasPos : undefined;\n }\n\n /**\n * @private\n */\n set canvasPos(value: FloatArrayParam | Int16Array | undefined) {\n if (value) {\n this.#canvasPos[0] = value[0];\n this.#canvasPos[1] = value[1];\n this.#gotCanvasPos = true;\n } else {\n this.#gotCanvasPos = false;\n }\n }\n\n /**\n * World-space 3D ray origin when raypicked.\n */\n get origin(): FloatArrayParam | null {\n return this.#gotOrigin ? this.#origin : null;\n }\n\n /**\n * @private\n */\n set origin(value: any) {\n if (value) {\n this.#origin[0] = value[0];\n this.#origin[1] = value[1];\n this.#origin[2] = value[2];\n this.#gotOrigin = true;\n } else {\n this.#gotOrigin = false;\n }\n }\n\n /**\n * World-space 3D ray direction when raypicked.\n */\n get direction(): FloatArrayParam | null {\n return this.#gotDirection ? this.#direction : null;\n }\n\n /**\n * @private\n */\n set direction(value: any) {\n if (value) {\n this.#direction[0] = value[0];\n this.#direction[1] = value[1];\n this.#direction[2] = value[2];\n this.#gotDirection = true;\n } else {\n this.#gotDirection = false;\n }\n }\n\n /**\n * Picked triangle's vertex indices.\n * Only defined when an object and triangle was picked.\n */\n get indices(): Int32Array | null {\n return this.#viewObject !== null && this.#gotIndices ? this.#indices : null;\n }\n\n /**\n * @private\n */\n set indices(value: any) {\n if (value) {\n this.#indices[0] = value[0];\n this.#indices[1] = value[1];\n this.#indices[2] = value[2];\n this.#gotIndices = true;\n } else {\n this.#gotIndices = false;\n }\n }\n\n /**\n * Picked Local-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get localPos(): FloatArrayParam | null {\n return this.#viewObject!== null && this.#gotLocalPos ? this.#localPos : null;\n }\n\n /**\n * @private\n */\n set localPos(value: any) {\n if (value) {\n this.#localPos[0] = value[0];\n this.#localPos[1] = value[1];\n this.#localPos[2] = value[2];\n this.#gotLocalPos = true;\n } else {\n this.#gotLocalPos = false;\n }\n }\n\n /**\n * Picked World-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get worldPos(): FloatArrayParam | null {\n return this.#viewObject && this.#gotWorldPos ? this.#worldPos : null;\n }\n\n /**\n * @private\n */\n set worldPos(value: any) {\n if (value) {\n this.#worldPos[0] = value[0];\n this.#worldPos[1] = value[1];\n this.#worldPos[2] = value[2];\n this.#gotWorldPos = true;\n } else {\n this.#gotWorldPos = false;\n }\n }\n\n /**\n * Picked View-space point on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get viewPos(): FloatArrayParam | null {\n return this.#viewObject && this.#gotViewPos ? this.#viewPos : null;\n }\n\n /**\n * @private\n */\n set viewPos(value: any) {\n if (value) {\n this.#viewPos[0] = value[0];\n this.#viewPos[1] = value[1];\n this.#viewPos[2] = value[2];\n this.#gotViewPos = true;\n } else {\n this.#gotViewPos = false;\n }\n }\n\n /**\n * Normal vector at picked position on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get worldNormal(): FloatArrayParam | null {\n return this.#viewObject !== null&& this.#gotWorldNormal ? this.#worldNormal : null;\n }\n\n /**\n * @private\n */\n set worldNormal(value: any) {\n if (value) {\n this.#worldNormal[0] = value[0];\n this.#worldNormal[1] = value[1];\n this.#worldNormal[2] = value[2];\n this.#gotWorldNormal = true;\n } else {\n this.#gotWorldNormal = false;\n }\n }\n\n /**\n * UV coordinates at picked position on surface.\n * Only defined when an object and a point on its surface was picked.\n */\n get uv(): FloatArrayParam | null {\n return this.#viewObject !== null&& this.#gotUV ? this.#uv : null;\n }\n\n /**\n * @private\n */\n set uv(value: any) {\n if (value) {\n this.#uv[0] = value[0];\n this.#uv[1] = value[1];\n this.#gotUV = true;\n } else {\n this.#gotUV = false;\n }\n }\n\n /**\n * Returns `true` if picking has snapped to the canvas coordinates of the nearest vertex.\n * When this is `true`, then {@link PickResult.snappedCanvasPos} will contain the canvas coordinates of the nearest position on teh nearest vertex.\n */\n get snappedToVertex(): boolean {\n return this.#viewObject !== null&& this.#snappedToVertex;\n }\n\n /**\n * @private\n */\n set snappedToVertex(value: boolean) {\n this.#snappedToVertex = value;\n }\n\n /**\n * Returns `true` if picking has snapped to the canvas coordinates of the nearest edge.\n * When this is `true`, then {@link PickResult.snappedCanvasPos} will contain the canvas coordinates of the nearest position on teh nearest edge.\n */\n get snappedToEdge(): boolean {\n return this.#viewObject !== null&& this.#snappedToEdge;\n }\n\n set snappedToEdge(value: boolean) {\n this.#snappedToEdge = value;\n }\n\n /**\n * Snapped canvas coordinates when picking with a 2D pointer.\n * This has a value when {@link PickResult.snappedToEdge} or {@link PickResult.snappedToVertex} is `true`, otherwise will be `null`.\n */\n get snappedCanvasPos(): Int16Array | undefined {\n return this.#gotSnappedCanvasPos ? this.#snappedCanvasPos : undefined;\n }\n\n /**\n * @private\n */\n set snappedCanvasPos(value: FloatArrayParam | Int16Array | undefined) {\n if (value) {\n this.#snappedCanvasPos[0] = value[0];\n this.#snappedCanvasPos[1] = value[1];\n this.#gotSnappedCanvasPos = true;\n } else {\n this.#gotSnappedCanvasPos = false;\n }\n }\n\n /**\n * @private\n */\n reset() {\n this.#viewObject = null;\n this.#gotCanvasPos = false;\n this.#gotSnappedCanvasPos = false;\n this.#gotOrigin = false;\n this.#gotDirection = false;\n this.#gotIndices = false;\n this.#gotLocalPos = false;\n this.#gotWorldPos = false;\n this.#gotViewPos = false;\n this.#gotWorldNormal = false;\n this.#gotUV = false;\n this.#snappedToVertex = false;\n this.#snappedToEdge = false;\n }\n}\n\nexport {PickResult};", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fwebgl.svg)](https://badge.fury.io/js/%40xeokit%2Fwebgl)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/webglrenderer/badge)](https://www.jsdelivr.com/package/npm/@xeokit/webglrenderer)\n *\n * \n *\n * # xeokit WebGL2 Renderer\n *\n * ---\n *\n * ### *Configures a xeokit Viewer to use WebGL2 for graphics*\n *\n * ---\n *\n * * Plug a {@link WebGLRenderer} into a {@link @xeokit/viewer!Viewer | Viewer} to use WebGL for model storage and rendering\n * * Compact texture-based model representation\n * * Fast full-precision rendering of large models\n * * Physically-based materials\n * * Multi-canvas\n * * Basis-compressed textures\n * * Compressed geometry\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/webglrenderer\n * ````\n *\n * ## Usage\n *\n * Configuring a {@link @xeokit/viewer!Viewer | Viewer} with a {@link WebGLRenderer} to use the browser's WebGL\n * graphics API for storing and rendering models:\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * scene: new Scene(),\n * renderers: new WebGLRenderer({ // Mandatory\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // <------ Path to BasisU transcoder module\n * })\n * })\n * });\n *\n * //...\n * ````\n *\n * @module @xeokit/webglrenderer\n */\nexport {WebGLRenderer} from \"./WebGLRenderer\";\nexport {createSceneModelStreamParams} from \"./createSceneModelStreamParams\";\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fktx2.svg)](https://badge.fury.io/js/%40xeokit%2Fktx2)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/ktx2/badge)](https://www.jsdelivr.com/package/npm/@xeokit/ktx2)\n *\n * \n *\n * # xeokit KTX2 SceneTexture Transcoder\n *\n * ---\n *\n * ### *Enables the xeokit Viewer to load KTX2-compressed textures*\n *\n * ---\n *\n * * Provides {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}\n * * Configure a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} that has a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}\n * * Then a Viewer is able to view a {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} that has KTX2-encoded compressed textures\n * * Uses the [Basis Universal GPU SceneTexture Codec](https://github.com/BinomialLLC/basis_universal) to\n * transcode [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures.\n * * Loads the Basis Codec from [CDN](https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/) by default, but can\n * also be configured to load the Codec from local files.\n * * We also bundle the Basis Codec with the xeokit-viewer npm package, and in the [repository](https://github.com/xeokit/sdk/tree/master/dist/basis).\n *\n * ### What is KTX2?\n *\n * A [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) file stores GPU texture data in the Khronos SceneTexture 2.0 (KTX2) container format. It contains image data for\n * a texture asset compressed with Basis Universal (BasisU) supercompression that can be transcoded to different formats\n * depending on the support provided by the target devices. [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) provides a lightweight format for distributing texture\n * assets to GPUs. Due to BasisU compression, [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) files can store any image format supported by GPUs.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt?type=png)](https://mermaid.live/edit#pako:eNqNUsFuwjAM_ZXKp00CabtWqIeN0wQD0WsupnFHpjSpnORQIf59SUMHCImtl9TPznvPjo_QWElQQqPRuaXCL8ZOGGGkYmq8sqZY7VI85ou6IUPreEMXR2GK-CmZT7v_jvUuBw0TetqM0NNzxvZBaTkFkpxnO6TwlNgn_iV6HOkfsfdse2I_1PRIL2M70pi6cAfV32a2F5Z_WcwGVxblu_LDR7353GKclZsGsVj0KSZPXFUZQmYc3kLbEmfA_Y7vrDG1e6OhrzQu7G0w43sk8rH43oqAFwHzeSXgVUB9pfVH6fJi41p7St_fhhl0xB0qGTdndCjAH6gjAWX8ldRi0F5AdBpLMXhbD6aB0nOgGYQ-9k3nXYOyRe0iSlJ5y-vzNqbj9AOT7uJt)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/ktx2\n * ````\n *\n * ## Usage\n *\n * ### Loading an DTX file containing [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures into a Viewer\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}. Then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer, and use {@link loadDTX} to\n * load a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file with KTX2-compressed textures into the SceneModel. For each [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture in the file, the\n * KTX2TextureTranscoder will transparently transcode the [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myCanvas1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const sceneModel= myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModelWithTextures.dtx\") // <<-- [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file with KTX2 textures\n * .then(response => {\n * if (response.ok) {\n * loadDTX(response.arrayBuffer(), sceneModel);\n * sceneModel.build();\n * }\n * });\n * ````\n *\n * ### Loading KTX2 texture files into a Viewer\n *\n * As in the previous example, create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}, then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer.\n *\n * This time, we'll build the SceneModel ourselves, using its builder methods. When we\n * call builder method {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with a path to a KTX2-compressed texture file, the\n * KTX2TextureTranscoder will transparently transcode that KTX2 data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * sceneModel.createTexture({\n * id: \"myColorTexture\",\n * src: \"sample_uastc_zstd.ktx2\" // <<----- KTX2 texture asset\n * });\n *\n * sceneModel.createTexture({\n * id: \"myMetallicRoughnessTexture\",\n * src: \"crosshatchAlphaMap.jpg\" // <<----- JPEG texture asset\n * });\n *\n * sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\",\n * metallicRoughnessTextureId: \"myMetallicRoughnessTexture\"\n * });\n *\n * sceneModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [1, 1, 1, ...],\n * normals: [0, 0, 1, 0, ...],\n * uv: [1, 0, 0, ...],\n * indices: [0, 1, 2, ...],\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh\",\n * textureSetId: \"myTextureSet\",\n * geometryId: \"myGeometry\"\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject\",\n * meshIds: [\"myMesh\"]\n * });\n *\n * sceneModel.build();\n * ````\n *\n * ### Loading [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture ArrayBuffers into a Viewer\n *\n * As in the previous two examples, create a {@link @xeokit/viewer!Viewer | Viewer} that has a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a\n * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}, and then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer.\n *\n * Once more, build the SceneModel using its builder methods. This time, call builder method\n * {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with an ArrayBuffer containing the contents of a KTX2-compressed texture\n * file. As before, the KTX2TextureTranscoder will transparently transcode that [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) data for us.\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\n * import {loadDTX} from \"@xeokit/dtx\";\n *\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ // Optional\n * textureTranscoder: new KTX2TextureTranscoder({ // Optional\n * transcoderPath: \"./../dist/basis/\" // Optional, path to BasisU transcoder module\n * })\n * })\n * });\n *\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const sceneModel = myViewer.scene.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"sample_uastc_zstd.ktx2\") // // <<----- KTX2 texture asset\n * .then(response => {\n * if (response.ok) {\n *\n * sceneModel.createTexture({\n * id: \"myColorTexture\",\n * buffers: [arrayBuffer] // <<----- KTX2 texture asset\n * });\n *\n * sceneModel.createTexture({\n * id: \"myMetallicRoughnessTexture\",\n * src: \"../assets/textures/alpha/crosshatchAlphaMap.jpg\" // <<----- JPEG texture asset\n * });\n *\n * sceneModel.createTextureSet({\n * id: \"myTextureSet\",\n * colorTextureId: \"myColorTexture\",\n * metallicRoughnessTextureId: \"myMetallicRoughnessTexture\"\n * });\n *\n * sceneModel.createGeometry({\n * id: \"myGeometry\",\n * primitive: TrianglesPrimitive,\n * positions: [1, 1, 1, ...],\n * normals: [0, 0, 1, 0, ...],\n * uv: [1, 0, 0, ...],\n * indices: [0, 1, 2, ...],\n * });\n *\n * sceneModel.createLayerMesh({\n * id: \"myMesh\",\n * textureSetId: \"myTextureSet\",\n * geometryId: \"myGeometry\"\n * });\n *\n * sceneModel.createObject({\n * id: \"myObject\",\n * meshIds: [\"myMesh\"]\n * });\n *\n * sceneModel.build();\n * }\n * });\n * ````\n *\n * @module @xeokit/ktx2\n */\nexport * from \"./KTX2TextureTranscoder\";\n", "import {\n LinearEncoding,\n LinearFilter,\n LinearMipmapLinearFilter,\n RGB_ETC1_Format,\n RGB_ETC2_Format,\n RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format,\n RGBA_ASTC_4x4_Format,\n RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT5_Format,\n RGBAFormat,\n sRGBEncoding\n} from \"@xeokit/constants\";\nimport {FileLoader, WorkerPool} from \"@xeokit/utils\";\nimport type {Capabilities, TextureCompressedParams, TextureTranscoder} from \"@xeokit/core\";\n\nconst KTX2TransferSRGB = 2;\nconst KTX2_ALPHA_PREMULTIPLIED = 1;\n\nlet activeTranscoders = 0;\n\nconst BasisFormat = {\n ETC1S: 0,\n UASTC_4x4: 1\n};\n\nconst TranscoderFormat = {\n ETC1: 0,\n ETC2: 1,\n BC1: 2,\n BC3: 3,\n BC4: 4,\n BC5: 5,\n BC7_M6_OPAQUE_ONLY: 6,\n BC7_M5: 7,\n PVRTC1_4_RGB: 8,\n PVRTC1_4_RGBA: 9,\n ASTC_4x4: 10,\n ATC_RGB: 11,\n ATC_RGBA_INTERPOLATED_ALPHA: 12,\n RGBA32: 13,\n RGB565: 14,\n BGR565: 15,\n RGBA4444: 16\n};\n\nconst EngineFormat = {\n RGBAFormat: RGBAFormat,\n RGBA_ASTC_4x4_Format: RGBA_ASTC_4x4_Format,\n RGBA_BPTC_Format: RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format: RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_4BPPV1_Format: RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT5_Format: RGBA_S3TC_DXT5_Format,\n RGB_ETC1_Format: RGB_ETC1_Format,\n RGB_ETC2_Format: RGB_ETC2_Format,\n RGB_PVRTC_4BPPV1_Format: RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format: RGB_S3TC_DXT1_Format\n};\n\n/**\n * [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture decompression strategy.\n *\n * See {@link @xeokit/ktx2} for usage.\n */\nexport class KTX2TextureTranscoder implements TextureTranscoder {\n\n #transcoderPath: string;\n #transcoderBinary: any;\n #transcoderPending: null | Promise;\n #workerPool: WorkerPool;\n #workerSourceURL: string;\n #workerConfig: null | { astcSupported: any; etc1Supported: any; pvrtcSupported: any; etc2Supported: any; dxtSupported: any; bptcSupported: any };\n #supportedFileTypes: string[];\n #withCredentials: boolean;\n\n /**\n * Creates a new KTX2TextureTranscoder.\n *\n * @param {String} [params.transcoderPath=\"https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/\"] Path to the Basis\n * transcoder module that internally does the heavy lifting for our KTX2TextureTranscoder. If we omit this configuration,\n * then our KTX2TextureTranscoder will load it from ````https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/```` by\n * default. Therefore, make sure your application is connected to the internet if you wish to use the default transcoder path.\n * @param {Number} [params.workerLimit] The maximum number of Workers to use for transcoding.\n */\n constructor(params: { transcoderPath?: string, workerLimit?: number }) {\n\n this.#transcoderPath = params.transcoderPath || \"https://cdn.jsdelivr.net/npm/@xeokit/sdk/dist/basis/\";\n this.#transcoderBinary = null;\n this.#transcoderPending = null;\n this.#workerPool = new WorkerPool();\n this.#workerSourceURL = '';\n\n if (params.workerLimit) {\n this.#workerPool.setWorkerLimit(params.workerLimit);\n }\n\n this.#workerConfig = null;\n this.#withCredentials = false;\n this.#supportedFileTypes = [\"dtx2\"];\n }\n\n /**\n * Initializes this transcoder.\n *\n * @param capabilities A set of flags indicating the capabilities of this TextureTranscoder.\n */\n init(capabilities: Capabilities) {\n this.#workerConfig = {\n astcSupported: capabilities.astcSupported,\n etc1Supported: capabilities.etc1Supported,\n etc2Supported: capabilities.etc2Supported,\n dxtSupported: capabilities.dxtSupported,\n bptcSupported: capabilities.bptcSupported,\n pvrtcSupported: capabilities.pvrtcSupported\n };\n }\n\n /**\n * Transcodes texture data from transcoded buffers.\n *\n * @param {ArrayBuffer[]} buffers Transcoded input texture data. Given as an array of buffers so that we can support multi-image textures, such as cube maps.\n * @param {*} config Transcoding options.\n * @returns {Promise} Transcoded output texture data.\n */\n transcode(buffers: ArrayBuffer[], config = {}): Promise {\n return new Promise((resolve, reject) => {\n const taskConfig = config;\n this.#initTranscoder().then(() => {\n return this.#workerPool.postMessage({\n type: 'transcode',\n buffers,\n taskConfig: taskConfig\n }, buffers);\n }).then((e) => {\n // @ts-ignore\n const transcodeResult = e.data;\n const {mipmaps, width, height, format, type, error, dfdTransferFn, dfdFlags} = transcodeResult;\n if (type === 'error') {\n return reject(error);\n }\n resolve({\n mipmaps,\n props: {\n format,\n minFilter: mipmaps.length === 1 ? LinearFilter : LinearMipmapLinearFilter,\n magFilter: mipmaps.length === 1 ? LinearFilter : LinearMipmapLinearFilter,\n encoding: dfdTransferFn === KTX2TransferSRGB ? sRGBEncoding : LinearEncoding,\n premultiplyAlpha: !!(dfdFlags & KTX2_ALPHA_PREMULTIPLIED)\n }\n });\n });\n });\n }\n\n /**\n * Destroys this KTX2TextureTranscoder\n */\n destroy() {\n URL.revokeObjectURL(this.#workerSourceURL);\n this.#workerPool.destroy();\n activeTranscoders--;\n }\n\n #initTranscoder() {\n if (!this.#transcoderPending) {\n const jsLoader = new FileLoader();\n jsLoader.setPath(this.#transcoderPath);\n jsLoader.setWithCredentials(this.#withCredentials);\n // @ts-ignore\n const jsContent = jsLoader.loadAsync('basis_transcoder.js');\n const binaryLoader = new FileLoader();\n binaryLoader.setPath(this.#transcoderPath);\n binaryLoader.setResponseType('arraybuffer');\n binaryLoader.setWithCredentials(this.#withCredentials);\n // @ts-ignore\n const binaryContent = binaryLoader.loadAsync('basis_transcoder.wasm');\n this.#transcoderPending = Promise.all([jsContent, binaryContent])\n .then(([jsContent, binaryContent]) => {\n const fn = BasisWorker.toString();\n const body = [\n '/* constants */',\n 'let _EngineFormat = ' + JSON.stringify(EngineFormat),\n 'let _TranscoderFormat = ' + JSON.stringify(TranscoderFormat),\n 'let _BasisFormat = ' + JSON.stringify(BasisFormat),\n '/* basis_transcoder.js */',\n jsContent,\n '/* worker */',\n fn.substring(fn.indexOf('{') + 1, fn.lastIndexOf('}'))\n ].join('\\n');\n this.#workerSourceURL = URL.createObjectURL(new Blob([body]));\n this.#transcoderBinary = binaryContent;\n this.#workerPool.setWorkerCreator(() => {\n const worker = new Worker(this.#workerSourceURL);\n const transcoderBinary = this.#transcoderBinary.slice(0);\n worker.postMessage({\n type: 'init',\n config: this.#workerConfig,\n transcoderBinary\n }, [transcoderBinary]);\n return worker;\n });\n });\n if (activeTranscoders > 0) {\n console.warn('KTX2TextureTranscoder: Multiple active KTX2TextureTranscoder may cause performance issues.' + ' Use a single KTX2TextureTranscoder instance, or call .dispose() on old instances.');\n }\n activeTranscoders++;\n }\n return this.#transcoderPending;\n }\n}\n\n\nconst BasisWorker = function () {\n\n let config: { [x: string]: any; };\n let transcoderPending: Promise;\n let BasisModule: any;\n\n // @ts-ignore\n const EngineFormat = _EngineFormat; // eslint-disable-line no-undef\n // @ts-ignore\n const TranscoderFormat = _TranscoderFormat; // eslint-disable-line no-undef\n // @ts-ignore\n const BasisFormat = _BasisFormat; // eslint-disable-line no-undef\n\n self.addEventListener('message', function (e) {\n const message = e.data;\n switch (message.type) {\n case 'init':\n config = message.config;\n init(message.transcoderBinary);\n break;\n case 'transcode':\n transcoderPending.then(() => {\n try {\n const {\n width,\n height,\n hasAlpha,\n mipmaps,\n format,\n dfdTransferFn,\n dfdFlags\n } = transcode(message.buffers[0]);\n const buffers = [];\n for (let i = 0; i < mipmaps.length; ++i) {\n buffers.push(mipmaps[i].data.buffer);\n }\n self.postMessage({\n type: 'transcode',\n id: message.id,\n width,\n height,\n hasAlpha,\n mipmaps,\n format,\n dfdTransferFn,\n dfdFlags\n // @ts-ignore\n }, buffers);\n } catch (error) {\n console.error(`[BasisWorker]: ${error}`);\n // @ts-ignore\n self.postMessage({type: 'error', id: message.id, error: error.message});\n }\n });\n break;\n }\n });\n\n function init(wasmBinary: any) {\n transcoderPending = new Promise(resolve => {\n BasisModule = {\n wasmBinary,\n onRuntimeInitialized: resolve\n };\n // @ts-ignore\n BASIS(BasisModule); // eslint-disable-line no-undef\n }).then(() => {\n BasisModule.initializeBasis();\n if (BasisModule.KTX2File === undefined) {\n console.warn('KTX2TextureTranscoder: Please update Basis Universal transcoder.');\n }\n });\n }\n\n function transcode(buffer: Iterable) {\n const ktx2File = new BasisModule.KTX2File(new Uint8Array(buffer));\n\n function cleanup() {\n ktx2File.close();\n ktx2File.delete();\n }\n\n if (!ktx2File.isValid()) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: Invalid or unsupported .ktx2 file');\n }\n const basisFormat = ktx2File.isUASTC() ? BasisFormat.UASTC_4x4 : BasisFormat.ETC1S;\n const width = ktx2File.getWidth();\n const height = ktx2File.getHeight();\n const levels = ktx2File.getLevels();\n const hasAlpha = ktx2File.getHasAlpha();\n const dfdTransferFn = ktx2File.getDFDTransferFunc();\n const dfdFlags = ktx2File.getDFDFlags();\n const {transcoderFormat, engineFormat} = getTranscoderFormat(basisFormat, width, height, hasAlpha);\n if (!width || !height || !levels) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: Invalid texture');\n }\n if (!ktx2File.startTranscoding()) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: .startTranscoding failed');\n }\n const mipmaps = [];\n for (let mip = 0; mip < levels; mip++) {\n const levelInfo = ktx2File.getImageLevelInfo(mip, 0, 0);\n const mipWidth = levelInfo.origWidth;\n const mipHeight = levelInfo.origHeight;\n const dst = new Uint8Array(ktx2File.getImageTranscodedSizeInBytes(mip, 0, 0, transcoderFormat));\n const status = ktx2File.transcodeImage(dst, mip, 0, 0, transcoderFormat, 0, -1, -1);\n if (!status) {\n cleanup();\n throw new Error('KTX2TextureTranscoder: .transcodeImage failed.');\n }\n mipmaps.push({data: dst, width: mipWidth, height: mipHeight});\n }\n cleanup();\n return {width, height, hasAlpha, mipmaps, format: engineFormat, dfdTransferFn, dfdFlags};\n }\n\n // Optimal choice of a transcoder target format depends on the Basis format (ETC1S or UASTC),\n // device capabilities, and texture dimensions. The list below ranks the formats separately\n // for ETC1S and UASTC.\n //\n // In some cases, transcoding UASTC to RGBA32 might be preferred for higher quality (at\n // significant memory cost) compared to ETC1/2, BC1/3, and PVRTC. The transcoder currently\n // chooses RGBA32 only as a last resort and does not expose that option to the caller.\n\n const FORMAT_OPTIONS = [{\n if: 'astcSupported',\n basisFormat: [BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ASTC_4x4, TranscoderFormat.ASTC_4x4],\n engineFormat: [EngineFormat.RGBA_ASTC_4x4_Format, EngineFormat.RGBA_ASTC_4x4_Format],\n priorityETC1S: Infinity,\n priorityUASTC: 1,\n needsPowerOfTwo: false\n }, {\n if: 'bptcSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.BC7_M5, TranscoderFormat.BC7_M5],\n engineFormat: [EngineFormat.RGBA_BPTC_Format, EngineFormat.RGBA_BPTC_Format],\n priorityETC1S: 3,\n priorityUASTC: 2,\n needsPowerOfTwo: false\n }, {\n if: 'dxtSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.BC1, TranscoderFormat.BC3],\n engineFormat: [EngineFormat.RGB_S3TC_DXT1_Format, EngineFormat.RGBA_S3TC_DXT5_Format],\n priorityETC1S: 4,\n priorityUASTC: 5,\n needsPowerOfTwo: false\n }, {\n if: 'etc2Supported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ETC1, TranscoderFormat.ETC2],\n engineFormat: [EngineFormat.RGB_ETC2_Format, EngineFormat.RGBA_ETC2_EAC_Format],\n priorityETC1S: 1,\n priorityUASTC: 3,\n needsPowerOfTwo: false\n }, {\n if: 'etc1Supported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.ETC1],\n engineFormat: [EngineFormat.RGB_ETC1_Format],\n priorityETC1S: 2,\n priorityUASTC: 4,\n needsPowerOfTwo: false\n }, {\n if: 'pvrtcSupported',\n basisFormat: [BasisFormat.ETC1S, BasisFormat.UASTC_4x4],\n transcoderFormat: [TranscoderFormat.PVRTC1_4_RGB, TranscoderFormat.PVRTC1_4_RGBA],\n engineFormat: [EngineFormat.RGB_PVRTC_4BPPV1_Format, EngineFormat.RGBA_PVRTC_4BPPV1_Format],\n priorityETC1S: 5,\n priorityUASTC: 6,\n needsPowerOfTwo: true\n }];\n const ETC1S_OPTIONS = FORMAT_OPTIONS.sort(function (a, b) {\n return a.priorityETC1S - b.priorityETC1S;\n });\n const UASTC_OPTIONS = FORMAT_OPTIONS.sort(function (a, b) {\n return a.priorityUASTC - b.priorityUASTC;\n });\n\n function getTranscoderFormat(basisFormat: number, width: number, height: number, hasAlpha: any) {\n let transcoderFormat;\n let engineFormat;\n const options = basisFormat === BasisFormat.ETC1S ? ETC1S_OPTIONS : UASTC_OPTIONS;\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n if (!config[opt.if]) continue;\n if (!opt.basisFormat.includes(basisFormat)) continue;\n if (hasAlpha && opt.transcoderFormat.length < 2) continue;\n if (opt.needsPowerOfTwo && !(isPowerOfTwo(width) && isPowerOfTwo(height))) continue;\n transcoderFormat = opt.transcoderFormat[hasAlpha ? 1 : 0];\n engineFormat = opt.engineFormat[hasAlpha ? 1 : 0];\n return {\n transcoderFormat,\n engineFormat\n };\n }\n console.warn('KTX2TextureTranscoder: No suitable compressed texture format found. Decoding to RGBA32.');\n transcoderFormat = TranscoderFormat.RGBA32;\n engineFormat = EngineFormat.RGBAFormat;\n return {\n transcoderFormat,\n engineFormat\n };\n }\n\n function isPowerOfTwo(value: number) {\n if (value <= 2) return true;\n return (value & value - 1) === 0 && value !== 0;\n }\n};\n\n", "/**\n * Represents a WebGL ArrayBuffer.\n */\nexport class WebGLArrayBuf {\n\n /**\n * WebGL2 rendering context.\n */\n gl: WebGL2RenderingContext;\n\n /**\n * The ArrayBuffer's item type.\n */\n itemType: GLenum;\n\n /**\n * Byte size of each item.\n */\n itemByteSize: number;\n\n /**\n * The ArrayBuffer type.\n */\n type: any;\n\n /**\n * Allocated yet?\n */\n allocated: boolean;\n\n /**\n * A GLenum specifying the intended usage pattern of the data store for optimization purposes. Possible values:\n *\n * * gl.STATIC_DRAW : The contents are intended to be specified once by the application, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.DYNAMIC_DRAW : The contents are intended to be respecified repeatedly by the application, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.STREAM_DRAW : The contents are intended to be specified once by the application, and used at most a few times as the source for WebGL drawing and image specification commands.\n * * gl.STATIC_READ : The contents are intended to be specified once by reading data from WebGL, and queried many times by the application.\n * * gl.DYNAMIC_READ : The contents are intended to be respecified repeatedly by reading data from WebGL, and queried many times by the application.\n * * gl.STREAM_READ : The contents are intended to be specified once by reading data from WebGL, and queried at most a few times by the application\n * * gl.STATIC_COPY : The contents are intended to be specified once by reading data from WebGL, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.DYNAMIC_COPY : The contents are intended to be respecified repeatedly by reading data from WebGL, and used many times as the source for WebGL drawing and image specification commands.\n * * gl.STREAM_COPY : The contents are intended to be specified once by reading data from WebGL, and used at most a few times as the source for WebGL drawing and image specification commands.\n */\n usage: GLenum;\n\n /**\n * The ArrayBuffer type.\n */\n length: GLuint;\n\n /**\n *\n */\n dataLength: number;\n\n /**\n * Number of items in the ArrayBuffer.\n */\n numItems: number;\n\n /**\n * Size of each item.\n */\n itemSize: number;\n\n /**\n * True when ArrayBuffer values are normalized.\n */\n normalized: boolean;\n\n /**\n * The ArrayBuffer stride.\n */\n stride: number;\n\n /**\n *\n */\n offset: number;\n\n /**\n * Hand to a WebGLBuffer.\n */\n handle: WebGLBuffer;\n\n /**\n * Creates a WebGL ArrayBuffer.\n */\n constructor(\n gl: WebGL2RenderingContext,\n type: any,\n data: any,\n numItems: number,\n itemSize: number,\n usage: GLenum,\n normalized?: boolean,\n stride?: number,\n offset?: number) {\n\n this.gl = gl;\n this.type = type;\n this.allocated = false;\n\n switch (data.constructor) {\n\n case Uint8Array:\n this.itemType = gl.UNSIGNED_BYTE;\n this.itemByteSize = 1;\n break;\n\n case Int8Array:\n this.itemType = gl.BYTE;\n this.itemByteSize = 1;\n break;\n\n case Uint16Array:\n this.itemType = gl.UNSIGNED_SHORT;\n this.itemByteSize = 2;\n break;\n\n case Int16Array:\n this.itemType = gl.SHORT;\n this.itemByteSize = 2;\n break;\n\n case Uint32Array:\n this.itemType = gl.UNSIGNED_INT;\n this.itemByteSize = 4;\n break;\n\n case Int32Array:\n this.itemType = gl.INT;\n this.itemByteSize = 4;\n break;\n\n default:\n this.itemType = gl.FLOAT;\n this.itemByteSize = 4;\n }\n\n this.usage = usage;\n this.length = 0;\n this.dataLength = numItems;\n this.numItems = 0;\n this.itemSize = itemSize;\n this.normalized = !!normalized;\n this.stride = stride || 0;\n this.offset = offset || 0;\n\n this._allocate(data);\n }\n\n _allocate(data: any) {\n this.allocated = false;\n // @ts-ignore\n this.handle = this.gl.createBuffer();\n if (!this.handle) {\n throw new Error(\"Failed to allocate WebGL ArrayBuffer\");\n }\n if (this.handle) {\n this.gl.bindBuffer(this.type, this.handle);\n this.gl.bufferData(this.type, data.length > this.dataLength ? data.slice(0, this.dataLength) : data, this.usage);\n this.gl.bindBuffer(this.type, null);\n this.length = data.length;\n this.numItems = this.length / this.itemSize;\n this.allocated = true;\n }\n }\n\n /**\n * Updates the contents of this ArrayBuffer.\n * @param data\n * @param offset\n */\n setData(data: any, offset: number) {\n if (!this.allocated) {\n return;\n }\n if (data.length + (offset || 0) > this.length) { // Needs reallocation\n this.destroy();\n this._allocate(data);\n } else { // No reallocation needed\n this.gl.bindBuffer(this.type, this.handle);\n if (offset || offset === 0) {\n this.gl.bufferSubData(this.type, offset * this.itemByteSize, data);\n } else {\n this.gl.bufferData(this.type, data, this.usage);\n }\n this.gl.bindBuffer(this.type, null);\n }\n }\n\n /**\n * Binds this ArrayBuffer to the WebGL rendering context.\n */\n bind() {\n if (!this.allocated) {\n return;\n }\n this.gl.bindBuffer(this.type, this.handle);\n }\n\n /**\n * Unbinds this ArrayBuffer from the WebGL rendering context.\n */\n unbind() {\n if (!this.allocated) {\n return;\n }\n this.gl.bindBuffer(this.type, null);\n }\n\n /**\n * Destroys this ArrayBuffer.\n */\n destroy() {\n if (!this.allocated) {\n return;\n }\n this.gl.deleteBuffer(this.handle);\n this.allocated = false;\n }\n}\n", "import type {WebGLArrayBuf} from \"./WebGLArrayBuf\";\n\n/**\n * Represents a WebGL vertex attribute.\n */\nexport class WebGLAttribute {\n gl: WebGL2RenderingContext;\n location: number;\n\n /**\n * Creates a new vertex attribute.\n * @param gl\n * @param location\n */\n constructor(gl: WebGL2RenderingContext, location: number) {\n this.gl = gl;\n this.location = location;\n }\n\n /**\n * Binds an array buffer to this vertex attribute.\n * @param arrayBuf\n */\n bindArrayBuffer(arrayBuf: WebGLArrayBuf) {\n if (!arrayBuf) {\n return;\n }\n arrayBuf.bind();\n this.gl.enableVertexAttribArray(this.location);\n this.gl.vertexAttribPointer(this.location, arrayBuf.itemSize, arrayBuf.itemType, arrayBuf.normalized, arrayBuf.stride, arrayBuf.offset);\n }\n}\n", "/**\n * Represents a WebGL2 shader.\n */\nexport class WebGLShader {\n\n /**\n * Compilation errors, if any.\n */\n errors: string[];\n\n /**\n * True when this shader was successfully allocated.\n */\n allocated: boolean;\n\n /**\n * True when this shader was successfully compiled.\n */\n compiled: boolean;\n\n /**\n * Handle to GPU-resident WebGL2 shader.\n */\n handle: WebGLShader;\n\n /**\n * Creates a new shader.\n * @param gl\n * @param type\n * @param source\n */\n constructor(gl: WebGL2RenderingContext, type: number, source: string) {\n this.allocated = false;\n this.compiled = false;\n // @ts-ignore\n this.handle = gl.createShader(type);\n if (!this.handle) {\n this.errors = [\n \"Failed to allocate\"\n ];\n return;\n }\n this.allocated = true;\n gl.shaderSource(this.handle, source);\n gl.compileShader(this.handle);\n this.compiled = gl.getShaderParameter(this.handle, gl.COMPILE_STATUS);\n if (!this.compiled) {\n if (!gl.isContextLost()) { // Handled explicitly elsewhere, so won't re-handle here\n const lines = source.split(\"\\n\");\n const numberedLines = [];\n for (let i = 0; i < lines.length; i++) {\n numberedLines.push((i + 1) + \": \" + lines[i] + \"\\n\");\n }\n this.errors = [];\n this.errors.push(\"\");\n this.errors.push(gl.getShaderInfoLog(this.handle) || \"\");\n this.errors = this.errors.concat(numberedLines.join(\"\"));\n }\n }\n }\n\n /**\n * Destroys this shader.\n */\n destroy() {\n\n }\n}", "import type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\n/**\n * Represents a WebGL2 sampler.\n */\nexport class WebGLSampler {\n\n private readonly location: WebGLUniformLocation;\n private readonly gl: WebGL2RenderingContext;\n\n /**\n * Creates a new sampler.\n * @param gl\n * @param location\n */\n constructor(gl: WebGL2RenderingContext, location: WebGLUniformLocation) {\n this.gl = gl;\n this.location = location;\n }\n\n /**\n * Binds a texture to this sampler.\n * @param texture\n * @param unit\n */\n bindTexture(texture: WebGLAbstractTexture, unit: number) {\n if (texture.bind(unit)) {\n this.gl.uniform1i(this.location, unit);\n return true;\n }\n return false;\n }\n}\n", "import {Map} from \"@xeokit/utils\";\n\nimport {WebGLShader} from \"./WebGLShader\";\nimport {WebGLSampler} from \"./WebGLSampler\";\nimport {WebGLAttribute} from \"./WebGLAttribute\";\nimport type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\nconst ids = new Map({}, \"\");\n\n/**\n * Represents a WebGL2 program.\n */\nexport class WebGLProgram {\n\n /**\n * Unique ID of this program.\n */\n id: number;\n\n /**\n * The vertex shader.\n */\n vertexShader: WebGLShader;\n\n /**\n * The fragment shader.\n */\n fragmentShader: WebGLShader;\n\n /**\n * Map of all attributes in this program.\n */\n attributes: { [key: string]: WebGLAttribute };\n\n /**\n * Map of all samplers in this program.\n */\n samplers: { [key: string]: WebGLSampler };\n\n /**\n * Map of all uniforms in this program.\n */\n uniforms: { [key: string]: WebGLUniformLocation };\n\n /**\n * List of compilation errors for this program, if any.\n */\n errors: string[];\n\n /**\n * Flag set true when program has been validated.\n */\n validated: boolean;\n\n /**\n * Flag set true when this program has been successfully linked.\n */\n linked: boolean;\n\n /**\n * Flag set true when this program has been successfully conpiled.\n */\n compiled: boolean;\n\n /**\n * Flag set true when this program has been successfully allocated.\n */\n allocated: boolean;\n\n /**\n * The WebGL2 rendering context.\n */\n gl: WebGL2RenderingContext;\n\n /**\n * The source code from which the shaders are built.\n */\n source: any;\n\n /**\n * Handle to the WebGL program itself, which resides on the GPU.\n */\n handle: WebGLProgram;\n\n /**\n * Creates a new program.\n * @param gl\n * @param shaderSource\n */\n constructor(gl: WebGL2RenderingContext,\n shaderSource: {\n vertex: string,\n fragment: string\n }) {\n\n // console.log(\"WebGLProgram constructor\")\n // console.log(\"-----------------------------------------------------\")\n // console.log(\"\\nshaderSource.vertex:\\n\");\n // console.log(shaderSource.vertex);\n // console.log(\"\\nshaderSource.fragment:\\n\");\n // console.log(shaderSource.fragment);\n // console.log(\"-----------------------------------------------------\")\n\n // @ts-ignore\n this.id = ids.addItem({});\n this.source = shaderSource;\n this.gl = gl;\n this.allocated = false;\n this.compiled = false;\n this.linked = false;\n this.validated = false;\n this.errors = undefined;\n this.uniforms = {};\n this.samplers = {};\n this.attributes = {};\n\n this.vertexShader = new WebGLShader(gl, gl.VERTEX_SHADER, this.source.vertex);\n this.fragmentShader = new WebGLShader(gl, gl.FRAGMENT_SHADER, this.source.fragment);\n\n if (!this.vertexShader.allocated) {\n this.errors = [\"Vertex shader failed to allocate\"].concat(this.vertexShader.errors);\n logErrors(this.errors);\n return;\n }\n\n if (!this.fragmentShader.allocated) {\n this.errors = [\"Fragment shader failed to allocate\"].concat(this.fragmentShader.errors);\n logErrors(this.errors);\n return;\n }\n\n this.allocated = true;\n\n if (!this.vertexShader.compiled) {\n this.errors = [\"Vertex shader failed to compile\"].concat(this.vertexShader.errors);\n logErrors(this.errors);\n return;\n }\n\n if (!this.fragmentShader.compiled) {\n this.errors = [\"Fragment shader failed to compile\"].concat(this.fragmentShader.errors);\n logErrors(this.errors);\n return;\n }\n\n this.compiled = true;\n // @ts-ignore\n this.handle = gl.createProgram();\n\n if (!this.handle) {\n this.errors = [\"Failed to allocate program\"];\n return;\n }\n\n gl.attachShader(this.handle, this.vertexShader.handle);\n gl.attachShader(this.handle, this.fragmentShader.handle);\n gl.linkProgram(this.handle);\n\n this.linked = gl.getProgramParameter(this.handle, gl.LINK_STATUS);\n\n // HACK: Disable validation temporarily: https://github.com/xeolabs/xeokit-sdk/issues/5\n // Perhaps we should defer validation until render-time, when the program has values set for all inputs?\n\n this.validated = true;\n\n if (!this.linked || !this.validated) {\n this.errors = [];\n this.errors.push(\"\");\n // @ts-ignore\n this.errors.push(gl.getProgramInfoLog(this.handle));\n this.errors.push(\"\\nVertex shader:\\n\");\n this.errors = this.errors.concat(this.source.vertex);\n this.errors.push(\"\\nFragment shader:\\n\");\n this.errors = this.errors.concat(this.source.fragment);\n logErrors(this.errors);\n return;\n }\n\n const numUniforms = gl.getProgramParameter(this.handle, gl.ACTIVE_UNIFORMS);\n for (let i = 0; i < numUniforms; ++i) {\n const u = gl.getActiveUniform(this.handle, i);\n if (u) {\n let uName = u.name;\n\n if (uName[uName.length - 1] === \"\\u0000\") {\n uName = uName.substr(0, uName.length - 1);\n }\n const location = gl.getUniformLocation(this.handle, uName);\n if ((u.type === gl.SAMPLER_2D) || (u.type === gl.SAMPLER_CUBE) || (u.type === 35682) || (u.type === 36306)) {\n // @ts-ignore\n this.samplers[uName] = new WebGLSampler(gl, location);\n } else {\n // @ts-ignore\n this.uniforms[uName] = location;\n }\n }\n }\n\n const numAttribs = gl.getProgramParameter(this.handle, gl.ACTIVE_ATTRIBUTES);\n for (let i = 0; i < numAttribs; i++) {\n const a = gl.getActiveAttrib(this.handle, i);\n if (a) {\n const location = gl.getAttribLocation(this.handle, a.name);\n this.attributes[a.name] = new WebGLAttribute(gl, location);\n }\n }\n\n this.allocated = true;\n }\n\n /**\n * Binds this program.\n */\n bind() {\n if (!this.allocated) {\n return;\n }\n this.gl.useProgram(this.handle);\n }\n\n /**\n * Gets the location of the given uniform within this program.\n * @param name\n */\n getLocation(name: string): WebGLUniformLocation {\n return this.uniforms[name];\n }\n\n /**\n * Gets an attribute within this program.\n * @param name\n */\n getAttribute(name: string): WebGLAttribute {\n return this.attributes[name];\n }\n\n /**\n * Gets a sampler within this program.\n * @param name\n */\n getSampler(name: string): WebGLSampler {\n return this.samplers[name];\n }\n\n /**\n * Binds a texture to this program.\n * @param name\n * @param texture\n * @param unit\n */\n bindTexture(name: string, texture: WebGLAbstractTexture, unit: number): boolean {\n if (!this.allocated) {\n return false;\n }\n const sampler = this.samplers[name];\n if (sampler) {\n return sampler.bindTexture(texture, unit);\n } else {\n return false;\n }\n }\n\n /**\n * Destroys this program.\n */\n destroy() {\n if (!this.allocated) {\n return;\n }\n ids.removeItem(this.id);\n this.gl.deleteProgram(this.handle);\n this.gl.deleteShader(this.vertexShader.handle);\n this.gl.deleteShader(this.fragmentShader.handle);\n this.attributes = {};\n this.uniforms = {};\n this.samplers = {};\n this.allocated = false;\n }\n}\n\nfunction joinSansComments(srcLines: string[]) {\n const src = [];\n let line;\n ``\n for (let i = 0, len = srcLines.length; i < len; i++) {\n line = srcLines[i];\n const n = line.indexOf(\"/\");\n if (n > 0) {\n if (line.charAt(n + 1) === \"/\") {\n line = line.substring(0, n);\n }\n }\n src.push(line);\n }\n return src.join(\"\\n\");\n}\n\nfunction logErrors(errors: string[]) {\n console.error(errors.join(\"\\n\"));\n}\n", "import {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\n\n/**\n * @desc Represents a WebGL render buffer.\n * @private\n */\nclass WebGLRenderBuffer {\n #gl: WebGL2RenderingContext;\n allocated: boolean;\n canvas: HTMLCanvasElement;\n #buffer: any;\n bound: boolean;\n size: any;\n #imageDataCache: any;\n #texture: WebGLAbstractTexture;\n #depthTexture: WebGLAbstractTexture;\n #hasDepthTexture: boolean;\n\n constructor(canvas: HTMLCanvasElement, gl: WebGL2RenderingContext, options: {\n depthTexture: boolean;\n size: any;\n }) {\n /** @type {WebGL2RenderingContext} */\n this.#gl = gl;\n this.allocated = false;\n this.canvas = canvas;\n this.#buffer = null;\n this.bound = false;\n this.size = options.size;\n this.#hasDepthTexture = !!options.depthTexture;\n }\n\n /**\n * Sets the size of this render buffer.\n * @param size\n */\n setSize(size: any) {\n this.size = size;\n }\n\n webglContextRestored(gl: WebGL2RenderingContext) {\n this.#gl = gl;\n this.#buffer = null;\n this.allocated = false;\n this.bound = false;\n }\n\n /**\n * Binds this render buffer.\n */\n bind(...internalformats: any) {\n this.touch(...internalformats);\n if (this.bound) {\n return;\n }\n const gl = this.#gl;\n // @ts-ignore\n gl.bindFramebuffer(gl.FRAMEBUFFER, this.#buffer.framebuf);\n this.bound = true;\n }\n\n /**\n * Create and specify a WebGL texture image.\n *\n * @param { number } width\n * @param { number } height\n * @param { GLenum } [internalformat=null]\n *\n * @returns { WebGLTexture }\n */\n createTexture(width: number, height: number, internalformat = null) {\n const gl = this.#gl;\n\n const colorTexture = gl.createTexture();\n gl.bindTexture(gl.TEXTURE_2D, colorTexture);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n\n if (internalformat) {\n gl.texStorage2D(gl.TEXTURE_2D, 1, internalformat, width, height);\n } else {\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, width, height, 0, gl.RGBA, gl.UNSIGNED_BYTE, null);\n }\n\n return colorTexture;\n }\n\n /**\n *\n * @param {number[]} [internalformats=[]]\n * @returns\n */\n touch(...internalformats: any) {\n\n let width;\n let height;\n const gl = this.#gl;\n\n if (this.size) {\n width = this.size[0];\n height = this.size[1];\n\n } else {\n width = gl.drawingBufferWidth;\n height = gl.drawingBufferHeight;\n }\n\n if (this.#buffer) {\n\n if (this.#buffer.width === width && this.#buffer.height === height) {\n return;\n\n } else {\n this.#buffer.textures.forEach(texture => gl.deleteTexture(texture));\n gl.deleteFramebuffer(this.#buffer.framebuf);\n gl.deleteRenderbuffer(this.#buffer.renderbuf);\n }\n }\n\n const colorTextures = [];\n if (internalformats.length > 0) {\n colorTextures.push(...internalformats.map(internalformat => this.createTexture(width, height, internalformat)));\n } else {\n colorTextures.push(this.createTexture(width, height));\n }\n\n let depthTexture;\n\n if (this.#hasDepthTexture) {\n depthTexture = gl.createTexture();\n gl.bindTexture(gl.TEXTURE_2D, depthTexture);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT32F, width, height, 0, gl.DEPTH_COMPONENT, gl.FLOAT, null);\n }\n\n const renderbuf = gl.createRenderbuffer();\n gl.bindRenderbuffer(gl.RENDERBUFFER, renderbuf);\n gl.renderbufferStorage(gl.RENDERBUFFER, gl.DEPTH_COMPONENT32F, width, height);\n\n const framebuf = gl.createFramebuffer();\n gl.bindFramebuffer(gl.FRAMEBUFFER, framebuf);\n for (let i = 0; i < colorTextures.length; i++) {\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + i, gl.TEXTURE_2D, colorTextures[i], 0);\n }\n if (internalformats.length > 0) {\n gl.drawBuffers(colorTextures.map((_, i) => gl.COLOR_ATTACHMENT0 + i));\n }\n\n if (this.#hasDepthTexture) {\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, depthTexture, 0);\n } else {\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, renderbuf);\n }\n\n gl.bindTexture(gl.TEXTURE_2D, null);\n gl.bindRenderbuffer(gl.RENDERBUFFER, null);\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n\n // Verify framebuffer is OK\n\n gl.bindFramebuffer(gl.FRAMEBUFFER, framebuf);\n if (!gl.isFramebuffer(framebuf)) {\n throw \"Invalid framebuffer\";\n }\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n\n const status = gl.checkFramebufferStatus(gl.FRAMEBUFFER);\n\n switch (status) {\n\n case gl.FRAMEBUFFER_COMPLETE:\n break;\n\n case gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_ATTACHMENT\";\n\n case gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\";\n\n case gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:\n throw \"Incomplete framebuffer: FRAMEBUFFER_INCOMPLETE_DIMENSIONS\";\n\n case gl.FRAMEBUFFER_UNSUPPORTED:\n throw \"Incomplete framebuffer: FRAMEBUFFER_UNSUPPORTED\";\n\n default:\n throw \"Incomplete framebuffer: \" + status;\n }\n\n this.#buffer = {\n framebuf: framebuf,\n renderbuf: renderbuf,\n texture: colorTextures[0],\n textures: colorTextures,\n depthTexture: depthTexture,\n width: width,\n height: height\n };\n\n this.bound = false;\n }\n\n /**\n * Clears this render buffer.\n */\n clear() {\n if (!this.bound) {\n throw \"Render buffer not bound\";\n }\n const gl = this.#gl;\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n /**\n * Reads a pixel from this render buffer.\n * @param pickX\n * @param pickY\n */\n read(pickX: number, pickY: number, glFormat = null, glType = null, arrayType = Uint8Array, arrayMultiplier: number = 4, colorBufferIndex = 0) {\n const x = pickX;\n const y = this.#buffer.height ? (this.#buffer.height - pickY - 1) : (this.#gl.drawingBufferHeight - pickY);\n const pix = new arrayType(arrayMultiplier);\n const gl = this.#gl;\n gl.readBuffer(gl.COLOR_ATTACHMENT0 + colorBufferIndex);\n gl.readPixels(x, y, 1, 1, glFormat || gl.RGBA, glType || gl.UNSIGNED_BYTE, pix, 0);\n return pix;\n }\n\n readArray(glFormat = null, glType = null, arrayType = Uint8Array, arrayMultiplier = 4, colorBufferIndex = 0) {\n const pix = new arrayType(this.#buffer.width * this.#buffer.height * arrayMultiplier);\n const gl = this.#gl;\n gl.readBuffer(gl.COLOR_ATTACHMENT0 + colorBufferIndex);\n gl.readPixels(0, 0, this.#buffer.width, this.#buffer.height, glFormat || gl.RGBA, glType || gl.UNSIGNED_BYTE, pix, 0);\n return pix;\n }\n\n /**\n * Returns an HTMLCanvas containing the contents of the RenderBuffer as an image.\n *\n * - The HTMLCanvas has a CanvasRenderingContext2D.\n * - Expects the caller to draw more things on the HTMLCanvas (annotations etc).\n *\n * @returns {HTMLCanvasElement}\n */\n readImageAsCanvas() {\n const gl = this.#gl;\n const imageDataCache = this._getImageDataCache();\n const pixelData = imageDataCache.pixelData;\n const canvas = imageDataCache.canvas;\n const imageData = imageDataCache.imageData;\n const context = imageDataCache.context;\n gl.readPixels(0, 0, this.#buffer.width, this.#buffer.height, gl.RGBA, gl.UNSIGNED_BYTE, pixelData);\n const width = this.#buffer.width;\n const height = this.#buffer.height;\n const halfHeight = height / 2 | 0; // the | 0 keeps the result an int\n const bytesPerRow = width * 4;\n const temp = new Uint8Array(width * 4);\n for (let y = 0; y < halfHeight; ++y) {\n const topOffset = y * bytesPerRow;\n const bottomOffset = (height - y - 1) * bytesPerRow;\n temp.set(pixelData.subarray(topOffset, topOffset + bytesPerRow));\n pixelData.copyWithin(topOffset, bottomOffset, bottomOffset + bytesPerRow);\n pixelData.set(temp, bottomOffset);\n }\n imageData.data.set(pixelData);\n context.putImageData(imageData, 0, 0);\n return canvas;\n }\n\n /**\n * Redas an image from this render buffer.\n * @param params\n */\n readImage(params: {\n height?: number;\n width?: number;\n format?: string;\n }) {\n const gl = this.#gl;\n const imageDataCache = this._getImageDataCache();\n const pixelData = imageDataCache.pixelData;\n const canvas = imageDataCache.canvas;\n const imageData = imageDataCache.imageData;\n const context = imageDataCache.context;\n const {width, height} = this.#buffer;\n gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, pixelData);\n imageData.data.set(pixelData);\n context.putImageData(imageData, 0, 0);\n\n // flip Y\n context.save();\n context.globalCompositeOperation = 'copy';\n context.scale(1, -1);\n context.drawImage(canvas, 0, -height, width, height);\n context.restore();\n\n let format = params.format || \"png\";\n if (format !== \"jpeg\" && format !== \"png\" && format !== \"bmp\") {\n console.error(\"Unsupported image format: '\" + format + \"' - supported types are 'jpeg', 'bmp' and 'png' - defaulting to 'png'\");\n format = \"png\";\n }\n return canvas.toDataURL(`image/${format}`);\n }\n\n _getImageDataCache(type = Uint8Array, multiplier = 4) {\n\n const bufferWidth = this.#buffer.width;\n const bufferHeight = this.#buffer.height;\n\n let imageDataCache = this.#imageDataCache;\n\n if (imageDataCache) {\n if (imageDataCache.width !== bufferWidth || imageDataCache.height !== bufferHeight) {\n this.#imageDataCache = null;\n imageDataCache = null;\n }\n }\n\n if (!imageDataCache) {\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n canvas.width = bufferWidth;\n canvas.height = bufferHeight;\n imageDataCache = {\n pixelData: new type(bufferWidth * bufferHeight * multiplier),\n canvas: canvas,\n context: context,\n imageData: context.createImageData(bufferWidth, bufferHeight),\n width: bufferWidth,\n height: bufferHeight\n };\n\n this.#imageDataCache = imageDataCache;\n }\n imageDataCache.context.resetTransform(); // Prevents strange scale-accumulation effect with html2canvas\n return imageDataCache;\n }\n\n unbind() {\n const gl = this.#gl;\n gl.bindFramebuffer(gl.FRAMEBUFFER, null);\n this.bound = false;\n }\n\n getTexture(): WebGLAbstractTexture {\n return this.#texture || (this.#texture = {\n bind: (unit: number) => {\n if (this.#buffer && this.#buffer.texture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, this.#buffer.texture);\n return true;\n }\n return false;\n },\n unbind: (unit: number) => {\n if (this.#buffer && this.#buffer.texture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, null);\n }\n }\n });\n }\n\n hasDepthTexture(): boolean {\n return this.#hasDepthTexture;\n }\n\n /**\n * Gets the depth texture component of this render buffer, if any.\n */\n getDepthTexture(): WebGLAbstractTexture | null {\n if (!this.#hasDepthTexture) {\n return null;\n }\n return this.#depthTexture || (this.#depthTexture = {\n bind: (unit: number) => {\n if (this.#buffer && this.#buffer.depthTexture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, this.#buffer.depthTexture);\n return true;\n }\n return false;\n },\n unbind: (unit: number) => {\n if (this.#buffer && this.#buffer.depthTexture) {\n // @ts-ignore\n this.#gl.activeTexture(this.#gl[\"TEXTURE\" + unit]);\n this.#gl.bindTexture(this.#gl.TEXTURE_2D, null);\n }\n }\n });\n }\n\n destroy() {\n if (this.allocated) {\n const gl = this.#gl;\n this.#buffer.textures.forEach(texture => gl.deleteTexture(texture));\n gl.deleteTexture(this.#buffer.depthTexture);\n gl.deleteFramebuffer(this.#buffer.framebuf);\n gl.deleteRenderbuffer(this.#buffer.renderbuf);\n this.allocated = false;\n this.#buffer = null;\n this.bound = false;\n }\n this.#imageDataCache = null;\n this.#texture = null;\n this.#depthTexture = null;\n }\n}\n\nexport {WebGLRenderBuffer};\n", "/**\n * Gets a WebGL2 extension.\n * @param gl\n * @param name\n */\nexport function getWebGLExtension(gl: WebGL2RenderingContext, name: string) {\n // @ts-ignore\n if (gl._cachedExtensions === undefined) {\n // @ts-ignore\n gl._cachedExtensions = {};\n }\n // @ts-ignore\n if (gl._cachedExtensions[name] !== undefined) {\n // @ts-ignore\n return gl._cachedExtensions[name];\n }\n let extension;\n switch (name) {\n case 'WEBGL_depth_texture':\n extension = gl.getExtension('WEBGL_depth_texture') || gl.getExtension('MOZ_WEBGL_depth_texture') || gl.getExtension('WEBKIT_WEBGL_depth_texture');\n break;\n case 'EXT_texture_filter_anisotropic':\n extension = gl.getExtension('EXT_texture_filter_anisotropic') || gl.getExtension('MOZ_EXT_texture_filter_anisotropic') || gl.getExtension('WEBKIT_EXT_texture_filter_anisotropic');\n break;\n case 'WEBGL_compressed_texture_s3tc':\n extension = gl.getExtension('WEBGL_compressed_texture_s3tc') || gl.getExtension('MOZ_WEBGL_compressed_texture_s3tc') || gl.getExtension('WEBKIT_WEBGL_compressed_texture_s3tc');\n break;\n case 'WEBGL_compressed_texture_pvrtc':\n extension = gl.getExtension('WEBGL_compressed_texture_pvrtc') || gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc');\n break;\n default:\n extension = gl.getExtension(name);\n }\n // @ts-ignore\n gl._cachedExtensions[name] = extension;\n return extension;\n}", "import {\n AlphaFormat,\n ByteType,\n ClampToEdgeWrapping,\n DepthFormat,\n DepthStencilFormat,\n FloatType,\n HalfFloatType,\n IntType,\n LinearFilter,\n LinearMipMapLinearFilter,\n LinearMipMapNearestFilter,\n LuminanceAlphaFormat,\n LuminanceFormat,\n NearestFilter,\n NearestMipMapLinearFilter,\n NearestMipMapNearestFilter,\n RedFormat,\n RedIntegerFormat,\n RepeatWrapping,\n RGB_ETC1_Format,\n RGB_ETC2_Format,\n RGB_PVRTC_2BPPV1_Format,\n RGB_PVRTC_4BPPV1_Format,\n RGB_S3TC_DXT1_Format,\n RGBA_ASTC_10x10_Format,\n RGBA_ASTC_10x5_Format,\n RGBA_ASTC_10x6_Format,\n RGBA_ASTC_10x8_Format,\n RGBA_ASTC_12x10_Format,\n RGBA_ASTC_12x12_Format,\n RGBA_ASTC_4x4_Format,\n RGBA_ASTC_5x4_Format,\n RGBA_ASTC_5x5_Format,\n RGBA_ASTC_6x5_Format,\n RGBA_ASTC_6x6_Format,\n RGBA_ASTC_8x5_Format,\n RGBA_ASTC_8x6_Format,\n RGBA_ASTC_8x8_Format,\n RGBA_BPTC_Format,\n RGBA_ETC2_EAC_Format,\n RGBA_PVRTC_2BPPV1_Format,\n RGBA_PVRTC_4BPPV1_Format,\n RGBA_S3TC_DXT1_Format,\n RGBA_S3TC_DXT3_Format,\n RGBA_S3TC_DXT5_Format,\n RGBAFormat,\n RGBAIntegerFormat,\n RGBFormat,\n RGFormat,\n RGIntegerFormat,\n ShortType,\n sRGBEncoding,\n UnsignedByteType,\n UnsignedInt248Type,\n UnsignedIntType,\n UnsignedShort4444Type,\n UnsignedShort5551Type,\n UnsignedShortType\n} from \"@xeokit/constants\";\n\nimport {getWebGLExtension} from \"./getWebGLExtension\";\n\n/**\n * Converts a xeokit SDK constant to its eauivalent WebGL2 constant/enumeration value.\n *\n * @param gl\n * @param constantVal\n * @param encoding\n */\nexport function convertWebGLConstant(gl: WebGL2RenderingContext, constantVal: number, encoding?: number) {\n\n let extension;\n const p = constantVal;\n\n if (p === UnsignedByteType) return gl.UNSIGNED_BYTE;\n if (p === UnsignedShort4444Type) return gl.UNSIGNED_SHORT_4_4_4_4;\n if (p === UnsignedShort5551Type) return gl.UNSIGNED_SHORT_5_5_5_1;\n\n if (p === ByteType) return gl.BYTE;\n if (p === ShortType) return gl.SHORT;\n if (p === UnsignedShortType) return gl.UNSIGNED_SHORT;\n if (p === IntType) return gl.INT;\n if (p === UnsignedIntType) return gl.UNSIGNED_INT;\n if (p === FloatType) return gl.FLOAT;\n\n if (p === HalfFloatType) {\n return gl.HALF_FLOAT;\n }\n\n if (p === AlphaFormat) return gl.ALPHA;\n if (p === RGBAFormat) return gl.RGBA;\n if (p === LuminanceFormat) return gl.LUMINANCE;\n if (p === LuminanceAlphaFormat) return gl.LUMINANCE_ALPHA;\n if (p === DepthFormat) return gl.DEPTH_COMPONENT;\n if (p === DepthStencilFormat) return gl.DEPTH_STENCIL;\n if (p === RedFormat) return gl.RED;\n\n if (p === RGBFormat) {\n return gl.RGBA;\n }\n\n // WebGL formats.\n\n if (p === RedIntegerFormat) return gl.RED_INTEGER;\n if (p === RGFormat) return gl.RG;\n if (p === RGIntegerFormat) return gl.RG_INTEGER;\n if (p === RGBAIntegerFormat) return gl.RGBA_INTEGER;\n\n // S3TC\n\n if (p === RGB_S3TC_DXT1_Format || p === RGBA_S3TC_DXT1_Format || p === RGBA_S3TC_DXT3_Format || p === RGBA_S3TC_DXT5_Format) {\n if (encoding === sRGBEncoding) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc_srgb');\n if (extension !== null) {\n if (p === RGB_S3TC_DXT1_Format) return extension.COMPRESSED_SRGB_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT1_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT3_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;\n if (p === RGBA_S3TC_DXT5_Format) return extension.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT;\n } else {\n return null;\n }\n } else {\n extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc');\n if (extension !== null) {\n if (p === RGB_S3TC_DXT1_Format) return extension.COMPRESSED_RGB_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT1_Format) return extension.COMPRESSED_RGBA_S3TC_DXT1_EXT;\n if (p === RGBA_S3TC_DXT3_Format) return extension.COMPRESSED_RGBA_S3TC_DXT3_EXT;\n if (p === RGBA_S3TC_DXT5_Format) return extension.COMPRESSED_RGBA_S3TC_DXT5_EXT;\n } else {\n return null;\n }\n }\n }\n\n // PVRTC\n\n if (p === RGB_PVRTC_4BPPV1_Format || p === RGB_PVRTC_2BPPV1_Format || p === RGBA_PVRTC_4BPPV1_Format || p === RGBA_PVRTC_2BPPV1_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_pvrtc');\n if (extension !== null) {\n if (p === RGB_PVRTC_4BPPV1_Format) return extension.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;\n if (p === RGB_PVRTC_2BPPV1_Format) return extension.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;\n if (p === RGBA_PVRTC_4BPPV1_Format) return extension.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;\n if (p === RGBA_PVRTC_2BPPV1_Format) return extension.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;\n } else {\n return null;\n }\n }\n\n // ETC1\n\n if (p === RGB_ETC1_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_etc1');\n if (extension !== null) {\n return extension.COMPRESSED_RGB_ETC1_WEBGL;\n } else {\n return null;\n }\n }\n\n // ETC2\n\n if (p === RGB_ETC2_Format || p === RGBA_ETC2_EAC_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_etc');\n if (extension !== null) {\n if (p === RGB_ETC2_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ETC2 : extension.COMPRESSED_RGB8_ETC2;\n if (p === RGBA_ETC2_EAC_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC : extension.COMPRESSED_RGBA8_ETC2_EAC;\n } else {\n return null;\n }\n }\n\n // ASTC\n\n if (p === RGBA_ASTC_4x4_Format || p === RGBA_ASTC_5x4_Format || p === RGBA_ASTC_5x5_Format ||\n p === RGBA_ASTC_6x5_Format || p === RGBA_ASTC_6x6_Format || p === RGBA_ASTC_8x5_Format ||\n p === RGBA_ASTC_8x6_Format || p === RGBA_ASTC_8x8_Format || p === RGBA_ASTC_10x5_Format ||\n p === RGBA_ASTC_10x6_Format || p === RGBA_ASTC_10x8_Format || p === RGBA_ASTC_10x10_Format ||\n p === RGBA_ASTC_12x10_Format || p === RGBA_ASTC_12x12_Format) {\n const extension = getWebGLExtension(gl, 'WEBGL_compressed_texture_astc');\n if (extension !== null) {\n if (p === RGBA_ASTC_4x4_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR : extension.COMPRESSED_RGBA_ASTC_4x4_KHR;\n if (p === RGBA_ASTC_5x4_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR : extension.COMPRESSED_RGBA_ASTC_5x4_KHR;\n if (p === RGBA_ASTC_5x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR : extension.COMPRESSED_RGBA_ASTC_5x5_KHR;\n if (p === RGBA_ASTC_6x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR : extension.COMPRESSED_RGBA_ASTC_6x5_KHR;\n if (p === RGBA_ASTC_6x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR : extension.COMPRESSED_RGBA_ASTC_6x6_KHR;\n if (p === RGBA_ASTC_8x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR : extension.COMPRESSED_RGBA_ASTC_8x5_KHR;\n if (p === RGBA_ASTC_8x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR : extension.COMPRESSED_RGBA_ASTC_8x6_KHR;\n if (p === RGBA_ASTC_8x8_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR : extension.COMPRESSED_RGBA_ASTC_8x8_KHR;\n if (p === RGBA_ASTC_10x5_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR : extension.COMPRESSED_RGBA_ASTC_10x5_KHR;\n if (p === RGBA_ASTC_10x6_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR : extension.COMPRESSED_RGBA_ASTC_10x6_KHR;\n if (p === RGBA_ASTC_10x8_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR : extension.COMPRESSED_RGBA_ASTC_10x8_KHR;\n if (p === RGBA_ASTC_10x10_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR : extension.COMPRESSED_RGBA_ASTC_10x10_KHR;\n if (p === RGBA_ASTC_12x10_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR : extension.COMPRESSED_RGBA_ASTC_12x10_KHR;\n if (p === RGBA_ASTC_12x12_Format) return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR : extension.COMPRESSED_RGBA_ASTC_12x12_KHR;\n } else {\n return null;\n }\n }\n\n // BPTC\n\n if (p === RGBA_BPTC_Format) {\n const extension = getWebGLExtension(gl, 'EXT_texture_compression_bptc');\n if (extension !== null) {\n if (p === RGBA_BPTC_Format) {\n return (encoding === sRGBEncoding) ? extension.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT : extension.COMPRESSED_RGBA_BPTC_UNORM_EXT;\n }\n } else {\n return null;\n }\n }\n\n //\n\n if (p === UnsignedInt248Type) {\n return gl.UNSIGNED_INT_24_8;\n }\n if (p === RepeatWrapping) {\n return gl.REPEAT;\n }\n if (p === ClampToEdgeWrapping) {\n return gl.CLAMP_TO_EDGE;\n }\n if (p === NearestMipMapNearestFilter) {\n return gl.NEAREST_MIPMAP_LINEAR;\n }\n if (p === NearestMipMapLinearFilter) {\n return gl.NEAREST_MIPMAP_LINEAR;\n }\n if (p === LinearMipMapNearestFilter) {\n return gl.LINEAR_MIPMAP_NEAREST;\n }\n if (p === LinearMipMapLinearFilter) {\n return gl.LINEAR_MIPMAP_LINEAR;\n }\n if (p === NearestFilter) {\n return gl.NEAREST;\n }\n if (p === LinearFilter) {\n return gl.LINEAR;\n }\n\n return null;\n}\n\n", "import type * as math from '@xeokit/math';\nimport {\n NearestFilter,\n NearestMipmapLinearFilter, NearestMipmapNearestFilter,\n RepeatWrapping,\n RGBAFormat, sRGBEncoding,\n UnsignedByteType\n} from \"@xeokit/constants\";\n\nimport {isArray} from \"@xeokit/utils\";\n\nimport {convertWebGLConstant} from \"./convertWebGLConstant\";\nimport {getWebGLExtension} from \"./getWebGLExtension\";\nimport type {WebGLAbstractTexture} from \"./WebGLAbstractTexture\";\nimport type {TextureCompressedParams} from \"@xeokit/core\";\n\nconst color = new Uint8Array([0, 0, 0, 1]);\n\n/**\n * Represents a WebGL2 texture.\n */\nexport class WebGLTexture implements WebGLAbstractTexture {\n\n private gl: WebGL2RenderingContext;\n private target: number;\n private format: number;\n private type: number;\n private internalFormat: number;\n private premultiplyAlpha: boolean;\n private flipY: boolean;\n private unpackAlignment: number;\n private wrapS: number;\n private wrapT: number;\n private wrapR: number;\n private texture: WebGLTexture;\n private allocated: boolean;\n private minFilter: number;\n private magFilter: number;\n private encoding: number;\n\n constructor(params: {\n gl: WebGL2RenderingContext,\n target?: number,\n format?: number,\n type?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number,\n preloadColor?: math.FloatArrayParam,\n premultiplyAlpha?: boolean,\n flipY?: boolean\n }) {\n\n this.gl = params.gl;\n\n this.target = params.target || params.gl.TEXTURE_2D;\n this.format = params.format || RGBAFormat;\n this.type = params.type || UnsignedByteType;\n this.internalFormat = -1;\n this.premultiplyAlpha = !!params.premultiplyAlpha;\n this.flipY = !!params.flipY;\n this.unpackAlignment = 4;\n this.wrapS = params.wrapS || RepeatWrapping;\n this.wrapT = params.wrapT || RepeatWrapping;\n this.wrapR = params.wrapR || RepeatWrapping;\n\n // @ts-ignore\n this.texture = params.gl.createTexture();\n\n if (params.preloadColor) {\n this.setPreloadColor(params.preloadColor); // Prevents \"there is no texture bound to the unit 0\" error\n }\n\n this.allocated = true;\n }\n\n setPreloadColor(value: math.FloatArrayParam) {\n if (!value) {\n color[0] = 0;\n color[1] = 0;\n color[2] = 0;\n color[3] = 255;\n } else {\n color[0] = Math.floor(value[0] * 255);\n color[1] = Math.floor(value[1] * 255);\n color[2] = Math.floor(value[2] * 255);\n color[3] = Math.floor((value[3] !== undefined ? value[3] : 1) * 255);\n }\n const gl = this.gl;\n gl.bindTexture(this.target, this.texture);\n if (this.target === gl.TEXTURE_CUBE_MAP) {\n const faces = [\n gl.TEXTURE_CUBE_MAP_POSITIVE_X,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_X,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Y,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Z,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n ];\n for (let i = 0, len = faces.length; i < len; i++) {\n gl.texImage2D(faces[i], 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, color);\n }\n } else {\n gl.texImage2D(this.target, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, color);\n }\n gl.bindTexture(this.target, null);\n }\n\n setTarget(target: number) {\n this.target = target || this.gl.TEXTURE_2D;\n }\n\n setImage(image: HTMLImageElement, props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment?: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }={}) {\n\n const gl = this.gl;\n\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.flipY !== undefined) {\n this.flipY = props.flipY;\n }\n if (props.premultiplyAlpha !== undefined) {\n this.premultiplyAlpha = props.premultiplyAlpha;\n }\n if (props.unpackAlignment !== undefined) {\n this.unpackAlignment = props.unpackAlignment;\n }\n if (props.minFilter !== undefined) {\n this.minFilter = props.minFilter;\n }\n if (props.magFilter !== undefined) {\n this.magFilter = props.magFilter;\n }\n if (props.wrapS !== undefined) {\n this.wrapS = props.wrapS;\n }\n if (props.wrapT !== undefined) {\n this.wrapT = props.wrapT;\n }\n if (props.wrapR !== undefined) {\n this.wrapR = props.wrapR;\n }\n\n let generateMipMap = false;\n\n gl.bindTexture(this.target, this.texture);\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.flipY);\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);\n gl.pixelStorei(gl.UNPACK_ALIGNMENT, this.unpackAlignment);\n gl.pixelStorei(gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, gl.NONE);\n\n const minFilter = convertWebGLConstant(gl, this.minFilter);\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, minFilter);\n\n if (minFilter === gl.NEAREST_MIPMAP_NEAREST\n || minFilter === gl.LINEAR_MIPMAP_NEAREST\n || minFilter === gl.NEAREST_MIPMAP_LINEAR\n || minFilter === gl.LINEAR_MIPMAP_LINEAR) {\n generateMipMap = true;\n }\n\n const magFilter = convertWebGLConstant(gl, this.magFilter);\n if (magFilter) {\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, magFilter);\n }\n\n const wrapS = convertWebGLConstant(gl, this.wrapS);\n if (wrapS) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n\n const wrapT = convertWebGLConstant(gl, this.wrapT);\n if (wrapT) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n\n const glFormat = convertWebGLConstant(gl, this.format, this.encoding);\n const glType = convertWebGLConstant(gl, this.type);\n const glInternalFormat = getInternalFormat(gl, this.internalFormat, glFormat, glType, this.encoding, false);\n\n if (this.target === gl.TEXTURE_CUBE_MAP) {\n if (isArray(image)) {\n const images = image;\n const faces = [\n gl.TEXTURE_CUBE_MAP_POSITIVE_X,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_X,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Y,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,\n gl.TEXTURE_CUBE_MAP_POSITIVE_Z,\n gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n ];\n for (let i = 0, len = faces.length; i < len; i++) {\n // @ts-ignore\n gl.texImage2D(faces[i], 0, glInternalFormat, glFormat, glType, images[i]);\n }\n }\n } else {\n gl.texImage2D(gl.TEXTURE_2D, 0, glInternalFormat, glFormat, glType, image);\n }\n\n // if (generateMipMap) {\n // gl.generateMipmap(this.target);\n // }\n\n gl.bindTexture(this.target, null);\n }\n\n setCompressedData(params: TextureCompressedParams) {\n\n const gl = this.gl;\n const mipmaps = params.mipmaps || [];\n const levels = mipmaps.length;\n const props = params.props;\n\n // Cache props\n\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.flipY !== undefined) {\n this.flipY = props.flipY;\n }\n if (props.premultiplyAlpha !== undefined) {\n this.premultiplyAlpha = props.premultiplyAlpha;\n }\n if (props.unpackAlignment !== undefined) {\n this.unpackAlignment = props.unpackAlignment;\n }\n if (props.minFilter !== undefined) {\n this.minFilter = props.minFilter;\n }\n if (props.magFilter !== undefined) {\n this.magFilter = props.magFilter;\n }\n if (props.wrapS !== undefined) {\n this.wrapS = props.wrapS;\n }\n if (props.wrapT !== undefined) {\n this.wrapT = props.wrapT;\n }\n if (props.wrapR !== undefined) {\n this.wrapR = props.wrapR;\n }\n\n gl.activeTexture(gl.TEXTURE0 + 0);\n gl.bindTexture(this.target, this.texture);\n\n let supportsMips = mipmaps.length > 1;\n\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.flipY);\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);\n gl.pixelStorei(gl.UNPACK_ALIGNMENT, this.unpackAlignment);\n gl.pixelStorei(gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, gl.NONE);\n\n const wrapS = convertWebGLConstant(gl, this.wrapS);\n if (wrapS) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n\n const wrapT = convertWebGLConstant(gl, this.wrapT);\n if (wrapT) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n\n // @ts-ignore\n if (this.type === gl.TEXTURE_3D || this.type === gl.TEXTURE_2D_ARRAY) {\n const wrapR = convertWebGLConstant(gl, this.wrapR);\n if (wrapR) {\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_R, wrapR);\n }\n gl.texParameteri(this.type, gl.TEXTURE_WRAP_R, wrapR);\n }\n\n if (supportsMips) {\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, filterFallback(gl, this.minFilter));\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, filterFallback(gl, this.magFilter));\n\n } else {\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, convertWebGLConstant(gl, this.minFilter));\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, convertWebGLConstant(gl, this.magFilter));\n }\n\n const glFormat = convertWebGLConstant(gl, this.format, this.encoding);\n const glType = convertWebGLConstant(gl, this.type);\n const glInternalFormat = getInternalFormat(gl, this.internalFormat, glFormat, glType, this.encoding, false);\n\n gl.texStorage2D(gl.TEXTURE_2D, levels, glInternalFormat, mipmaps[0].width, mipmaps[0].height);\n\n for (let i = 0, len = mipmaps.length; i < len; i++) {\n\n const mipmap = mipmaps[i];\n\n if (this.format !== RGBAFormat) {\n if (glFormat !== null) {\n gl.compressedTexSubImage2D(gl.TEXTURE_2D, i, 0, 0, mipmap.width, mipmap.height, glFormat, mipmap.data);\n } else {\n console.warn('Attempt to load unsupported compressed texture format in .setCompressedData()');\n }\n } else {\n gl.texSubImage2D(gl.TEXTURE_2D, i, 0, 0, mipmap.width, mipmap.height, glFormat, glType, mipmap.data);\n }\n }\n\n gl.bindTexture(this.target, null);\n }\n\n setProps(props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }) {\n const gl = this.gl;\n gl.bindTexture(this.target, this.texture);\n this._uploadProps(props);\n gl.bindTexture(this.target, null);\n }\n\n _uploadProps(props: {\n format?: number,\n internalFormat?: number,\n encoding?: number,\n type?: number,\n flipY?: boolean,\n premultiplyAlpha?: boolean,\n unpackAlignment: number,\n minFilter?: number,\n magFilter?: number,\n wrapS?: number,\n wrapT?: number,\n wrapR?: number\n }) {\n const gl = this.gl;\n if (props.format !== undefined) {\n this.format = props.format;\n }\n if (props.internalFormat !== undefined) {\n this.internalFormat = props.internalFormat;\n }\n if (props.encoding !== undefined) {\n this.encoding = props.encoding;\n }\n if (props.type !== undefined) {\n this.type = props.type;\n }\n if (props.minFilter !== undefined) {\n const minFilter = convertWebGLConstant(gl, props.minFilter);\n if (minFilter) {\n this.minFilter = props.minFilter;\n gl.texParameteri(this.target, gl.TEXTURE_MIN_FILTER, minFilter);\n if (minFilter === gl.NEAREST_MIPMAP_NEAREST || minFilter === gl.LINEAR_MIPMAP_NEAREST || minFilter === gl.NEAREST_MIPMAP_LINEAR || minFilter === gl.LINEAR_MIPMAP_LINEAR) {\n gl.generateMipmap(this.target);\n }\n }\n }\n if (props.magFilter !== undefined) {\n const magFilter = convertWebGLConstant(gl, props.magFilter);\n if (magFilter) {\n this.magFilter = props.magFilter;\n gl.texParameteri(this.target, gl.TEXTURE_MAG_FILTER, magFilter);\n }\n }\n if (props.wrapS !== undefined) {\n const wrapS = convertWebGLConstant(gl, props.wrapS);\n if (wrapS) {\n this.wrapS = props.wrapS;\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_S, wrapS);\n }\n }\n if (props.wrapT !== undefined) {\n const wrapT = convertWebGLConstant(gl, props.wrapT);\n if (wrapT) {\n this.wrapT = props.wrapT;\n gl.texParameteri(this.target, gl.TEXTURE_WRAP_T, wrapT);\n }\n }\n }\n\n bind(unit: number) :boolean{\n if (!this.allocated) {\n return false;\n }\n if (this.texture) {\n const gl = this.gl;\n // @ts-ignore\n gl.activeTexture(gl[`TEXTURE${unit}`]);\n gl.bindTexture(this.target, this.texture);\n return true;\n }\n return false;\n }\n\n unbind(unit: number) {\n if (!this.allocated) {\n return;\n }\n if (this.texture) {\n const gl = this.gl;\n // @ts-ignore\n gl.activeTexture(gl[`TEXTURE${unit}`]);\n gl.bindTexture(this.target, null);\n }\n }\n\n destroy() {\n if (!this.allocated) {\n return;\n }\n if (this.texture) {\n this.gl.deleteTexture(this.texture);\n // @ts-ignore\n this.texture = null;\n }\n }\n}\n\nfunction getInternalFormat(\n gl: WebGL2RenderingContext,\n internalFormatName: string | number,\n glFormat: any,\n glType: any,\n encoding: number,\n isVideoTexture = false): number {\n if (internalFormatName !== null) {\n // @ts-ignore\n if (gl[internalFormatName] !== undefined) {\n // @ts-ignore\n return gl[internalFormatName];\n }\n console.warn('Attempt to use non-existing WebGL internal format \\'' + internalFormatName + '\\'');\n }\n let internalFormat = glFormat;\n if (glFormat === gl.RED) {\n if (glType === gl.FLOAT) internalFormat = gl.R32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.R16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = gl.R8;\n }\n if (glFormat === gl.RG) {\n if (glType === gl.FLOAT) internalFormat = gl.RG32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.RG16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = gl.RG8;\n }\n if (glFormat === gl.RGBA) {\n if (glType === gl.FLOAT) internalFormat = gl.RGBA32F;\n if (glType === gl.HALF_FLOAT) internalFormat = gl.RGBA16F;\n if (glType === gl.UNSIGNED_BYTE) internalFormat = (encoding === sRGBEncoding && isVideoTexture === false) ? gl.SRGB8_ALPHA8 : gl.RGBA8;\n if (glType === gl.UNSIGNED_SHORT_4_4_4_4) internalFormat = gl.RGBA4;\n if (glType === gl.UNSIGNED_SHORT_5_5_5_1) internalFormat = gl.RGB5_A1;\n }\n if (internalFormat === gl.R16F || internalFormat === gl.R32F ||\n internalFormat === gl.RG16F || internalFormat === gl.RG32F ||\n internalFormat === gl.RGBA16F || internalFormat === gl.RGBA32F) {\n getWebGLExtension(gl, 'EXT_color_buffer_float');\n }\n return internalFormat;\n}\n\nfunction filterFallback(gl: WebGL2RenderingContext, f: number): number {\n if (f === NearestFilter || f === NearestMipmapNearestFilter || f === NearestMipmapLinearFilter) {\n return gl.NEAREST;\n }\n return gl.LINEAR;\n\n}", "/**\n * Canvas2Image v0.1\n * Copyright (c) 2008 Jacob Seidelin, cupboy@gmail.com\n * MIT License [http://www.opensource.org/licenses/mit-license.php]\n *\n * Modified by @xeolabs to permit vertical flipping, so that snapshot can be taken from WebGL frame buffers,\n * which vertically flip image data as part of the way that WebGL renders textures.\n */\nexport const Canvas2Image = (function () {\n // check if we have canvas support\n const oCanvas = document.createElement(\"canvas\"), sc = String.fromCharCode, strDownloadMime = \"image/octet-stream\",\n bReplaceDownloadMime = false;\n\n // no canvas, bail out.\n if (!oCanvas.getContext) {\n return {\n saveAsBMP: function () {\n },\n saveAsPNG: function () {\n },\n saveAsJPEG: function () {\n }\n }\n }\n\n // @ts-ignore\n const bHasImageData = !!(oCanvas.getContext(\"2d\").getImageData), bHasDataURL = !!(oCanvas.toDataURL),\n bHasBase64 = !!(window.btoa);\n\n // ok, we're good\n const readCanvasData = function (oCanvas: HTMLCanvasElement) {\n // @ts-ignore\n const iWidth = parseInt(oCanvas.width), iHeight = parseInt(oCanvas.height);\n // @ts-ignore\n return oCanvas.getContext(\"2d\").getImageData(0, 0, iWidth, iHeight);\n };\n\n // base64 encodes either a string or an array of charcodes\n const encodeData = function (data: any) {\n let i: any, aData: any, strData: any = \"\";\n if (typeof data == \"string\") {\n strData = data;\n } else {\n aData = data;\n for (i = 0; i < aData.length; i++) {\n strData += sc(aData[i]);\n }\n }\n return btoa(strData);\n };\n\n // creates a base64 encoded string containing BMP data takes an imagedata object as argument\n const createBMP = function (oData: ImageData) {\n let strHeader = '';\n const iWidth = oData.width;\n const iHeight = oData.height;\n\n strHeader += 'BM';\n\n let iFileSize = iWidth * iHeight * 4 + 54; // total header size = 54 bytes\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n iFileSize = Math.floor(iFileSize / 256);\n strHeader += sc(iFileSize % 256);\n\n strHeader += sc(0, 0, 0, 0, 54, 0, 0, 0); // data offset\n strHeader += sc(40, 0, 0, 0); // info header size\n\n let iImageWidth = iWidth;\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n iImageWidth = Math.floor(iImageWidth / 256);\n strHeader += sc(iImageWidth % 256);\n\n let iImageHeight = iHeight;\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n iImageHeight = Math.floor(iImageHeight / 256);\n strHeader += sc(iImageHeight % 256);\n\n strHeader += sc(1, 0, 32, 0); // num of planes & num of bits per pixel\n strHeader += sc(0, 0, 0, 0); // compression = none\n\n let iDataSize = iWidth * iHeight * 4;\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n iDataSize = Math.floor(iDataSize / 256);\n strHeader += sc(iDataSize % 256);\n\n strHeader += sc(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); // these bytes are not used\n\n const aImgData = oData.data;\n let strPixelData = \"\";\n let c;\n let x;\n let y = iHeight;\n let iOffsetX;\n let iOffsetY;\n let strPixelRow;\n\n do {\n iOffsetY = iWidth * (y - 1) * 4;\n strPixelRow = \"\";\n for (x = 0; x < iWidth; x++) {\n iOffsetX = 4 * x;\n strPixelRow += sc(\n aImgData[iOffsetY + iOffsetX + 2], // B\n aImgData[iOffsetY + iOffsetX + 1], // G\n aImgData[iOffsetY + iOffsetX], // R\n aImgData[iOffsetY + iOffsetX + 3] // A\n );\n }\n strPixelData += strPixelRow;\n } while (--y);\n\n return encodeData(strHeader + strPixelData);\n };\n\n // sends the generated file to the client\n const saveFile = function (strData: string) {\n if (!window.open(strData)) {\n document.location.href = strData;\n }\n };\n\n const makeDataURI = function (strData: string, strMime: string) {\n return \"data:\" + strMime + \";base64,\" + strData;\n };\n\n // generates a object containing the imagedata\n const makeImageObject = function (strSource: any) {\n const oImgElement = document.createElement(\"img\");\n oImgElement.src = strSource;\n return oImgElement;\n };\n\n const scaleCanvas = function (oCanvas: HTMLCanvasElement, iWidth: number, iHeight: number, flipy: boolean) {\n if (iWidth && iHeight) {\n const oSaveCanvas = document.createElement(\"canvas\");\n oSaveCanvas.width = iWidth;\n oSaveCanvas.height = iHeight;\n oSaveCanvas.style.width = iWidth + \"px\";\n oSaveCanvas.style.height = iHeight + \"px\";\n const oSaveCtx = oSaveCanvas.getContext(\"2d\");\n if (flipy) {\n // @ts-ignore\n oSaveCtx.save();\n // @ts-ignore\n oSaveCtx.scale(1.0, -1.0);\n // @ts-ignore\n oSaveCtx.imageSmoothingEnabled = true;\n // @ts-ignore\n oSaveCtx.drawImage(oCanvas, 0, 0, oCanvas.width, oCanvas.height, 0, 0, iWidth, -iHeight);\n // @ts-ignore\n oSaveCtx.restore();\n } else {\n // @ts-ignore\n oSaveCtx.imageSmoothingEnabled = true;\n // @ts-ignore\n oSaveCtx.drawImage(oCanvas, 0, 0, oCanvas.width, oCanvas.height, 0, 0, iWidth, iHeight);\n }\n return oSaveCanvas;\n }\n return oCanvas;\n };\n\n return {\n saveAsPNG: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!bHasDataURL) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/png\";\n const strData = oScaledCanvas.toDataURL(strMime);\n if (bReturnImg) {\n return makeImageObject(strData);\n } else {\n saveFile(bReplaceDownloadMime ? strData.replace(strMime, strDownloadMime) : strData);\n }\n return true;\n },\n\n saveAsJPEG: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!bHasDataURL) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/jpeg\";\n const strData = oScaledCanvas.toDataURL(strMime);\n // check if browser actually supports jpeg by looking for the mime type in the data uri. if not, return false\n if (strData.indexOf(strMime) != 5) return false;\n if (bReturnImg) {\n return makeImageObject(strData);\n } else {\n saveFile(bReplaceDownloadMime ? strData.replace(strMime, strDownloadMime) : strData);\n }\n return true;\n },\n\n saveAsBMP: function (oCanvas: HTMLCanvasElement, bReturnImg: boolean, iWidth: number, iHeight: number, flipy: boolean): boolean | HTMLImageElement {\n if (!(bHasDataURL && bHasImageData && bHasBase64)) return false;\n const oScaledCanvas = scaleCanvas(oCanvas, iWidth, iHeight, flipy);\n const strMime = \"image/bmp\";\n const oData = readCanvasData(oScaledCanvas), strImgData = createBMP(oData);\n if (bReturnImg) {\n return makeImageObject(makeDataURI(strImgData, strMime));\n } else {\n saveFile(makeDataURI(strImgData, strMime));\n }\n return true;\n }\n };\n})();\n", "/**\n * Information about WebGL2 support on the client machine.\n */\nconst WEBGL_INFO: {\n [key: string]: any\n} = {\n WEBGL: false,\n SUPPORTED_EXTENSIONS: {}\n};\n\nconst canvas = document.createElement(\"canvas\");\n\nif (canvas) {\n\n // @ts-ignore\n const gl: WebGL2RenderingContext = canvas.getContext(\"webgl2\", {antialias: true});\n\n WEBGL_INFO.WEBGL = !!gl;\n\n if (WEBGL_INFO.WEBGL) {\n // @ts-ignore\n WEBGL_INFO.ANTIALIAS = gl.getContextAttributes().antialias;\n if (gl.getShaderPrecisionFormat) {\n // @ts-ignore\n if (gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT).precision > 0) {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"highp\";\n } else { // @ts-ignore\n if (gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.MEDIUM_FLOAT).precision > 0) {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"mediump\";\n } else {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"lowp\";\n }\n }\n } else {\n WEBGL_INFO.FS_MAX_FLOAT_PRECISION = \"mediump\";\n }\n WEBGL_INFO.DEPTH_BUFFER_BITS = gl.getParameter(gl.DEPTH_BITS);\n WEBGL_INFO.MAX_TEXTURE_SIZE = gl.getParameter(gl.MAX_TEXTURE_SIZE);\n WEBGL_INFO.MAX_CUBE_MAP_SIZE = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE);\n WEBGL_INFO.MAX_RENDERBUFFER_SIZE = gl.getParameter(gl.MAX_RENDERBUFFER_SIZE);\n WEBGL_INFO.MAX_TEXTURE_UNITS = gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);\n WEBGL_INFO.MAX_TEXTURE_IMAGE_UNITS = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS);\n WEBGL_INFO.MAX_VERTEX_ATTRIBS = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);\n WEBGL_INFO.MAX_VERTEX_UNIFORM_VECTORS = gl.getParameter(gl.MAX_VERTEX_UNIFORM_VECTORS);\n WEBGL_INFO.MAX_FRAGMENT_UNIFORM_VECTORS = gl.getParameter(gl.MAX_FRAGMENT_UNIFORM_VECTORS);\n WEBGL_INFO.MAX_VARYING_VECTORS = gl.getParameter(gl.MAX_VARYING_VECTORS);\n // @ts-ignore\n gl.getSupportedExtensions().forEach(function (ext: any) {\n WEBGL_INFO.SUPPORTED_EXTENSIONS[ext] = true;\n });\n WEBGL_INFO.depthTexturesSupported = WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"];\n }\n}\n\nexport {WEBGL_INFO};", "import type {View, Viewer} from \"@xeokit/viewer\";\nimport {type WebGLAbstractTexture, WebGLDataTexture, WEBGL_INFO} from \"@xeokit/webglutils\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {WebGLRenderer} from \"./WebGLRenderer\";\n\n/**\n * @private\n */\nexport class RenderContext {\n\n /**\n * The Viewer.\n */\n public viewer: Viewer;\n\n /**\n * @private\n */\n public rendererSets: {};\n\n /**\n * The View we are rendering.\n */\n public view: View;\n\n /**\n * The WebGL rendering context.\n */\n public gl: WebGL2RenderingContext;\n\n public viewMatrixDataTexture: WebGLDataTexture;\n\n /**\n * Whether to render a quality representation for triangle surfaces.\n *\n * When ````false````, we'll render them with a fast vertex-shaded Gouraud-shaded representation, which\n * is great for zillions of objects.\n *\n * When ````true````, we'll render them at a better visual quality, using smooth, per-fragment shading\n * and a more realistic lighting model.\n */\n public pbrEnabled: boolean;\n\n /**\n * Whether SAO is currently enabled during the current frame.\n */\n public withSAO: boolean;\n\n /**\n * Whether backfaces are currently enabled during the current frame.\n */\n public backfaces: boolean;\n\n /**\n * The vertex winding order for what we currently consider to be a backface during current\n * frame: true == \"cw\", false == \"ccw\".\n */\n public frontface: boolean;\n\n /**\n * The next available texture unit to bind a {@link WebGLAbstractTexture} to.\n */\n public textureUnit: number;\n\n /**\n * Statistic that counts how many times ````gl.bindTexture()```` has been called so far within the current frame.\n */\n public bindTexture: number;\n\n /**\n * Indicates which pass the renderers is currently rendering.\n */\n public renderPass: number;\n\n /**\n * The 4x4 viewing transform matrix the renderers is currently using when rendering castsShadows.\n *\n * This sets the viewpoint to look from the point of view of each {@link DirLight}\n * or {@link PointLight} that casts a shadow.\n */\n public shadowViewMatrix: any;\n\n /**\n * The 4x4 viewing projection matrix the renderers is currently using when rendering shadows.\n */\n public shadowProjMatrix: any;\n\n /**\n * The 4x4 viewing transform matrix the renderers is currently using when rendering a ray-pick.\n *\n * This sets the viewpoint to look along the ray given to {@link @xeokit/scene!Scene/pick:method\"}}Scene#pick(){{/crossLink}}\n * when picking with a ray.\n */\n public pickViewMatrix: any;\n\n /**\n * The 4x4 orthographic projection transform matrix the renderers is currently using when rendering a ray-pick.\n */\n public pickProjMatrix: any;\n\n /**\n * Distance to the near clipping plane when rendering depth fragments for GPU-accelerated 3D picking.\n */\n public pickZNear: number;\n\n /**\n * Distance to the far clipping plane when rendering depth fragments for GPU-accelerated 3D picking.\n */\n public pickZFar: number;\n\n /**\n * Whether or not the renderers is currently picking invisible objects.\n */\n public pickInvisible: boolean;\n\n /** The current line width.\n */\n public lineWidth: number;\n\n /**\n * ID of the last {@link WebGLProgram} that was bound during the current frame.\n */\n public lastProgramId: number;\n\n /**\n * The occlusion rendering texture.\n */\n public occlusionTexture: WebGLAbstractTexture | null;\n\n public pickClipPos: FloatArrayParam;\n\n public webglRenderer: WebGLRenderer;\n\n constructor(viewer: Viewer, gl: WebGL2RenderingContext, webglRenderer: WebGLRenderer) {\n this.viewer = viewer;\n this.view = null;\n this.gl = gl;\n this.webglRenderer = webglRenderer;\n this.reset();\n }\n\n /**\n * Called by the renderers before each frame.\n */\n reset() {\n this.lastProgramId = -1;\n this.pbrEnabled = false;\n this.withSAO = false;\n this.backfaces = false;\n this.frontface = true;\n this.textureUnit = 0;\n this.shadowViewMatrix = null;\n this.shadowProjMatrix = null;\n this.pickViewMatrix = null;\n this.pickProjMatrix = null;\n this.pickZNear = 0.01;\n this.pickZFar = 5000;\n this.pickInvisible = false;\n this.lineWidth = 1;\n this.occlusionTexture = null;\n }\n\n /**\n * Gets the next available texture unit for this render\n */\n get nextTextureUnit() {\n const textureUnit = this.textureUnit;\n this.textureUnit = (this.textureUnit + 1) % WEBGL_INFO.MAX_TEXTURE_UNITS;\n return textureUnit;\n }\n}\n", "import type {SceneGeometry, RendererGeometry} from \"@xeokit/scene\";\n\n/**\n * @private\n */\nexport class WebGLRendererGeometry implements RendererGeometry {\n\n constructor() {\n }\n}", "import type {RendererTexture, SceneTexture} from \"@xeokit/scene\";\nimport type {WebGLTexture} from \"@xeokit/webglutils\";\n\n/**\n * @private\n */\nexport class WebGLRendererTexture implements RendererTexture {\n\n texture: SceneTexture | null;\n texture2D: WebGLTexture;\n\n constructor(texture: SceneTexture | null, texture2D: WebGLTexture) {\n this.texture = texture\n this.texture2D = texture2D;\n }\n\n destroy() {\n if (this.texture2D) {\n this.texture2D.destroy();\n }\n }\n}\n", "\n/**\n * @private\n */\nexport const SCENE_OBJECT_FLAGS = {\n VISIBLE: 1,\n CULLED: 1 << 2,\n PICKABLE: 1 << 3,\n CLIPPABLE: 1 << 4,\n COLLIDABLE: 1 << 5,\n CAST_SHADOW: 1 << 6,\n RECEIVE_SHADOW: 1 << 7,\n XRAYED: 1 << 8,\n HIGHLIGHTED: 1 << 9,\n SELECTED: 1 << 10,\n BACKFACES: 1 << 11,\n TRANSPARENT: 1 << 12\n};\n", "import {createAABB3} from \"@xeokit/boundaries\";\nimport {createVec3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {SCENE_OBJECT_FLAGS} from './SCENE_OBJECT_FLAGS';\nimport type {WebGLRendererMesh} from \"./WebGLRendererMesh\";\nimport type {RendererModel, RendererObject} from \"@xeokit/scene\";\n\nconst tempIntRGB = new Uint16Array([0, 0, 0]);\n\n/**\n * @private\n */\nexport class WebGLRendererObject implements RendererObject {\n\n readonly id: string;\n readonly rendererModel: RendererModel;\n readonly layerId: string | null;\n\n readonly rendererMeshes: WebGLRendererMesh[];\n\n #flags: number[];\n #aabb: FloatArrayParam;\n #offsetAABB: FloatArrayParam;\n #offset: FloatArrayParam;\n #colorizeUpdated: boolean;\n #opacityUpdated: boolean;\n\n /**\n * @private\n * @param params\n */\n constructor(params: {\n id: string,\n rendererModel: RendererModel,\n rendererMeshes: WebGLRendererMesh[],\n aabb: any,\n layerId?: string\n }) {\n this.id = params.id;\n this.rendererModel = params.rendererModel;\n this.rendererMeshes = params.rendererMeshes || [];\n\n ///////////////////////////////////\n // FIXME: start off at 1,1,1,1 ?\n ///////////////////////////////////\n\n this.#flags = [0, 0, 0, 0];\n this.#aabb = params.aabb;\n this.#offsetAABB = createAABB3(params.aabb);\n this.#offset = createVec3();\n this.#colorizeUpdated = false;\n this.#opacityUpdated = false;\n\n this.layerId = params.layerId || null;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) { // TODO: tidier way? Refactor?\n this.rendererMeshes[i].setRendererObject(this);\n }\n }\n\n get aabb(): FloatArrayParam {\n return this.#offsetAABB;\n }\n\n setVisible(viewIndex: number, visible: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.VISIBLE) === visible) {\n return;\n }\n this.#flags[viewIndex] = visible ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.VISIBLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.VISIBLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setVisible(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setHighlighted(viewIndex: number, highlighted: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.HIGHLIGHTED) === highlighted) {\n return;\n }\n this.#flags[viewIndex] = highlighted ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.HIGHLIGHTED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.HIGHLIGHTED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setHighlighted(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setXRayed(viewIndex: number, xrayed: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.XRAYED) === xrayed) {\n return;\n }\n this.#flags[viewIndex] = xrayed ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.XRAYED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.XRAYED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setXRayed(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setSelected(viewIndex: number, selected: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.SELECTED) === selected) {\n return;\n }\n this.#flags[viewIndex] = selected ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.SELECTED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.SELECTED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setSelected(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setCulled(viewIndex: number, culled: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.CULLED) === culled) {\n return;\n }\n this.#flags[viewIndex] = culled ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.CULLED : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.CULLED;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setCulled(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setClippable(viewIndex: number, clippable: boolean): void {\n if ((!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.CLIPPABLE)) === clippable) {\n return;\n }\n this.#flags[viewIndex] = clippable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.CLIPPABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.CLIPPABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setClippable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setCollidable(viewIndex: number, collidable: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.COLLIDABLE) === collidable) {\n return;\n }\n this.#flags[viewIndex] = collidable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.COLLIDABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.COLLIDABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setCollidable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setPickable(viewIndex: number, pickable: boolean): void {\n if (!!(this.#flags[viewIndex] & SCENE_OBJECT_FLAGS.PICKABLE) === pickable) {\n return;\n }\n this.#flags[viewIndex] = pickable ? this.#flags[viewIndex] | SCENE_OBJECT_FLAGS.PICKABLE : this.#flags[viewIndex] & ~SCENE_OBJECT_FLAGS.PICKABLE;\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setPickable(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n setColorize(viewIndex: number, color?: FloatArrayParam): void { // [0..1, 0..1, 0..1]\n if (color) {\n tempIntRGB[0] = Math.floor(color[0] * 255.0); // Quantize\n tempIntRGB[1] = Math.floor(color[1] * 255.0);\n tempIntRGB[2] = Math.floor(color[2] * 255.0);\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setColorize(viewIndex, tempIntRGB);\n }\n } else {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setColorize(viewIndex, null);\n }\n }\n }\n\n setOpacity(viewIndex: number, opacity?: number): void {\n if (this.rendererMeshes.length === 0) {\n return;\n }\n // @ts-ignore\n const lastOpacityQuantized = this.rendererMeshes[0].colorize[3];\n let opacityQuantized = 255;\n if (opacity !== null && opacity !== undefined) {\n if (opacity < 0) {\n opacity = 0;\n } else if (opacity > 1) {\n opacity = 1;\n }\n opacityQuantized = Math.floor(opacity * 255.0); // Quantize\n // @ts-ignore\n if (lastOpacityQuantized === opacityQuantized) {\n return;\n }\n } else {\n opacityQuantized = 255.0;\n // @ts-ignore\n if (lastOpacityQuantized === opacityQuantized) {\n return;\n }\n }\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].setOpacity(viewIndex, opacityQuantized, this.#flags[viewIndex]);\n }\n }\n\n setOffset(viewIndex: number, offset: FloatArrayParam): void {\n // TODO\n }\n\n initFlags(viewIndex: number): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].initFlags(viewIndex, this.#flags[viewIndex]);\n }\n }\n\n commitRendererState(viewIndex: number): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].commitRendererState(viewIndex);\n }\n }\n\n destroy(): void {\n for (let i = 0, len = this.rendererMeshes.length; i < len; i++) {\n this.rendererMeshes[i].destroy();\n }\n }\n}\n", "import type {RendererGeometry, RendererMesh, RendererObject, RendererTextureSet, SceneObject} from \"@xeokit/scene\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport {createAABB3} from \"@xeokit/boundaries\";\n\nimport type {RenderContext} from \"./RenderContext\";\nimport type {Pickable} from \"./Pickable\";\nimport {createMat4, mulMat4, transformPoint3, translationMat4c} from \"@xeokit/matrix\";\nimport type {Tile, WebGLTileManager} from \"./WebGLTileManager\";\nimport {Layer} from \"./Layer\";\n\nconst tempMat4a = createMat4();\nconst tempMat4b = createMat4();\n\n/**\n * @private\n */\nexport class WebGLRendererMesh implements RendererMesh, Pickable {\n\n id: string;\n color: FloatArrayParam;\n rendererGeometry: RendererGeometry;\n rendererTextureSet: RendererTextureSet;\n matrix: FloatArrayParam;\n opacity: number;\n pickId: number;\n tileManager: WebGLTileManager;\n tile: Tile;\n rendererObject: RendererObject | null;\n aabb: FloatArrayParam;\n layer: Layer;\n meshIndex: number;\n colorize: FloatArrayParam[];\n colorizing: boolean[];\n transparent: boolean[];\n attribs: any;\n\n constructor(params: {\n tileManager: WebGLTileManager,\n layer: Layer,\n id: string,\n matrix: FloatArrayParam;\n color: FloatArrayParam,\n opacity: number,\n rendererTextureSet: RendererTextureSet\n rendererGeometry: RendererGeometry,\n meshIndex: number\n }) {\n this.rendererObject = null;\n this.tileManager = params.tileManager;\n this.id = params.id;\n this.pickId = 0;\n this.attribs = [];\n this.color = [params.color[0], params.color[1], params.color[2], params.opacity]; // [0..255]\n for (let i = 0; i < 4; i++) {\n this.attribs.push({\n colorize: [params.color[0], params.color[1], params.color[2], params.opacity], // [0..255]\n colorizing: false,\n transparent: (params.opacity < 255),\n });\n }\n this.layer = params.layer;\n this.matrix = params.matrix;\n this.opacity = params.opacity;\n this.aabb = createAABB3();\n this.rendererTextureSet = params.rendererTextureSet;\n this.rendererGeometry = params.rendererGeometry;\n this.meshIndex = params.meshIndex;\n }\n\n delegatePickedEntity(): SceneObject {\n throw new Error(\"Method not implemented.\");\n }\n\n setRendererObject(rendererObject: RendererObject) {\n this.rendererObject = rendererObject;\n }\n\n setVisible(viewIndex: number, flags: any) {\n this.layer.setLayerMeshVisible(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setMatrix(matrix: FloatArrayParam): void {\n const center = transformPoint3(matrix, [0, 0, 0]);\n const oldTile = this.tile;\n this.tile = oldTile ? this.tileManager.updateTileCenter(oldTile, center) : this.tileManager.getTile(center);\n const tileChanged = !oldTile || oldTile.id !== this.tile.id;\n const tileCenter = this.tile.center;\n const needRTC = (tileCenter[0] !== 0 || tileCenter[1] !== 0 || tileCenter[2] !== 0);\n this.layer.setLayerMeshMatrix(this.meshIndex, needRTC\n ? mulMat4(matrix, translationMat4c(-tileCenter[0], -tileCenter[1], -tileCenter[2], tempMat4a), tempMat4b)\n : matrix);\n if (tileChanged) {\n // this.layer.setLayerMeshViewMatrixIndex(this.meshIndex, this.tile.index);\n }\n }\n\n setMetallic(metallic: number): void {\n }\n\n setRoughness(roughness: number): void {\n }\n\n setColor(color: FloatArrayParam) {\n const setOpacity = false;\n this.color[0] = color[0];\n this.color[1] = color[1];\n this.color[2] = color[2];\n if (!this.colorizing) {\n for (let viewIndex = 0, len = this.layer.rendererModel.viewer.viewList.length; viewIndex < len; viewIndex++) {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, color, setOpacity);\n }\n }\n }\n\n setColorize(viewIndex: number, colorize: FloatArrayParam | null) {\n const setOpacity = false;\n const attribs = this.attribs[viewIndex];\n const meshColorize = attribs.colorize;\n if (colorize) {\n meshColorize[0] = colorize[0];\n meshColorize[1] = colorize[1];\n meshColorize[2] = colorize[2];\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, meshColorize, setOpacity);\n attribs.colorizing = true;\n } else {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, meshColorize, setOpacity);\n attribs.colorizing = false;\n }\n }\n\n setOpacity(viewIndex: number, opacity: number, flags: number) {\n const setOpacity = true;\n const attribs = this.attribs[viewIndex];\n const newTransparent = (opacity < 255);\n const lastTransparent = attribs.transparent;\n const changingTransparency = (lastTransparent !== newTransparent);\n attribs.color[3] = opacity;\n attribs.colorize[3] = opacity;\n attribs.transparent = newTransparent;\n if (this.colorizing) {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, attribs.colorize, setOpacity);\n } else {\n this.layer.setLayerMeshColor(viewIndex, this.meshIndex, attribs.color, setOpacity);\n }\n if (changingTransparency) {\n this.layer.setLayerMeshTransparent(viewIndex, this.meshIndex, flags, newTransparent);\n }\n }\n\n setHighlighted(viewIndex: number, flags: number) {\n this.layer.setLayerMeshHighlighted(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setXRayed(viewIndex: number, flags: number) {\n this.layer.setLayerMeshXRayed(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setSelected(viewIndex: number, flags: number) {\n this.layer.setLayerMeshSelected(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setClippable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshClippable(viewIndex, this.meshIndex, flags);\n }\n\n setCollidable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshCollidable(viewIndex, this.meshIndex, flags);\n }\n\n setPickable(viewIndex: number, flags: number) {\n this.layer.setLayerMeshPickable(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n setCulled(viewIndex: number, flags: number) {\n this.layer.setLayerMeshCulled(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n canPickTriangle() {\n return false;\n }\n\n drawPickTriangles(drawFlags: any, renderContext: any) {\n // NOP\n }\n\n pickTriangleSurface(pickResult: any) {\n // NOP\n }\n\n canPickWorldPos() {\n return true;\n }\n\n drawPickNormals(renderContext: RenderContext) {\n //this.rendererObject.rendererModel.drawPickNormals(renderContext);\n }\n\n initFlags(viewIndex: number, flags: number) {\n this.layer.initFlags(viewIndex, this.meshIndex, flags, this.attribs[viewIndex].transparent);\n }\n\n commitRendererState(viewIndex: number) {\n this.layer.commitRendererState(viewIndex);\n }\n\n destroy() {\n if (this.tile && this.tileManager) {\n this.tileManager.putTile(this.tile);\n }\n }\n}\n", "import type { RendererTextureSet} from \"@xeokit/scene\";\nimport type {WebGLRendererTexture} from \"./WebGLRendererTexture\";\n\n/**\n * @private\n */\nexport class WebGLRendererTextureSet implements RendererTextureSet {\n\n public readonly id: string;\n public readonly colorRendererTexture: WebGLRendererTexture;\n public readonly metallicRoughnessRendererTexture: WebGLRendererTexture;\n public readonly emissiveRendererTexture: WebGLRendererTexture;\n public readonly occlusionRendererTexture: WebGLRendererTexture;\n\n constructor(params: {\n id: string;\n colorRendererTexture: WebGLRendererTexture;\n metallicRoughnessRendererTexture: WebGLRendererTexture;\n emissiveRendererTexture: WebGLRendererTexture;\n occlusionRendererTexture: WebGLRendererTexture;\n }) {\n this.id = params.id;\n this.colorRendererTexture = params.colorRendererTexture;\n this.metallicRoughnessRendererTexture = params.metallicRoughnessRendererTexture;\n this.emissiveRendererTexture = params.emissiveRendererTexture;\n this.occlusionRendererTexture = params.occlusionRendererTexture;\n }\n}\n", "\n/**\n * @private\n */\nexport class MeshCounts {\n\n numMeshes: number;\n numVisible: number;\n numTransparent: number;\n numXRayed: number;\n numSelected: number;\n numHighlighted: number;\n numClippable: number;\n numPickable: number;\n numCulled: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.numMeshes = 0;\n this.numVisible = 0;\n this.numTransparent = 0;\n this.numXRayed = 0;\n this.numSelected = 0;\n this.numHighlighted = 0;\n this.numClippable = 0;\n this.numPickable = 0;\n this.numCulled = 0;\n }\n}\n", "/**\n * Indicates what rendering needs to be done for the layers within a {@link Drawable}.\n *\n * Each Drawable has a RenderFlags in {@link Drawable#renderFlags}.\n *\n * Before rendering each frame, {@link Renderer} will call {@link Drawable#rebuildRenderFlags} on each {@link Drawable}.\n *\n * Then, when rendering a frame, Renderer will apply rendering passes to each Drawable according on what flags are set in {@link Drawable#renderFlags}.\n *\n * @private\n */\nclass RenderFlags {\n\n /**\n * Set by {@link Drawable#rebuildRenderFlags} to indicate which layers are visible within the {@link Drawable}.\n *\n * This is a list of IDs of visible layers within the {@link Drawable}. The IDs will be whatever the\n * {@link Drawable} uses to identify its layers, usually integers.\n *\n * @property visibleLayers\n * @type {Number[]}\n */\n visibleLayers: any[];\n\n /**\n * Set by {@link Drawable#rebuildRenderFlags} to indicate which {@link SectionPlane}s are active within each layer of the {@link Drawable}.\n *\n * Layout is as follows:\n *\n * ````[\n * false, false, true, // Layer 0, SectionPlanes 0, 1, 2\n * false, true, true, // Layer 1, SectionPlanes 0, 1, 2\n * true, false, true // Layer 2, SectionPlanes 0, 1, 2\n * ]````\n *\n * @property sectionPlanesActivePerLayer\n * @type {Boolean[]}\n */\n sectionPlanesActivePerLayer: any[];\n culled: boolean;\n sectioned: boolean;\n numLayers: number;\n numVisibleLayers: number;\n colorOpaque: boolean;\n colorTransparent: boolean;\n edgesOpaque: boolean;\n edgesTransparent: boolean;\n xrayedSilhouetteOpaque: boolean;\n xrayedEdgesOpaque: boolean;\n xrayedSilhouetteTransparent: boolean;\n xrayedEdgesTransparent: boolean;\n highlightedSilhouetteOpaque: boolean;\n highlightedEdgesOpaque: boolean;\n highlightedSilhouetteTransparent: boolean;\n highlightedEdgesTransparent: boolean;\n selectedSilhouetteOpaque: boolean;\n selectedEdgesOpaque: boolean;\n selectedSilhouetteTransparent: boolean;\n selectedEdgesTransparent: boolean;\n\n /**\n * @private\n */\n constructor() {\n this.visibleLayers = [];\n this.sectionPlanesActivePerLayer = [];\n this.reset();\n }\n\n /**\n * @private\n */\n reset() {\n this.culled = false;\n this.sectioned = false;\n this.numLayers = 0;\n this.numVisibleLayers = 0;\n this.colorOpaque = false;\n this.colorTransparent = false;\n this.edgesOpaque = false;\n this.edgesTransparent = false;\n this.xrayedSilhouetteOpaque = false;\n this.xrayedEdgesOpaque = false;\n this.xrayedSilhouetteTransparent = false;\n this.xrayedEdgesTransparent = false;\n this.highlightedSilhouetteOpaque = false;\n this.highlightedEdgesOpaque = false;\n this.highlightedSilhouetteTransparent = false;\n this.highlightedEdgesTransparent = false;\n this.selectedSilhouetteOpaque = false;\n this.selectedEdgesOpaque = false;\n this.selectedSilhouetteTransparent = false;\n this.selectedEdgesTransparent = false;\n }\n}\n\nexport {RenderFlags};\n", "\n/**\n * @private\n */\nexport class VBOBatchingBuffer {\n\n maxVerts: number;\n maxIndices: number;\n positions: number[];\n colors: number[];\n uv: number[];\n normals: number[];\n pickColors: number[];\n offsets: number[];\n indices: number[];\n edgeIndices: number[];\n\n constructor(maxGeometryBatchSize: number = 400000) {\n if (maxGeometryBatchSize > 400000) {\n maxGeometryBatchSize = 400000;\n }\n this.maxVerts = maxGeometryBatchSize;\n this.maxIndices = maxGeometryBatchSize\n this.positions = [];\n this.colors = [];\n this.uv = [];\n this.normals = [];\n this.pickColors = [];\n this.offsets = [];\n this.indices = [];\n this.edgeIndices = [];\n }\n}\n\n", "\n/**\n * @private\n */\nexport const RENDER_PASSES = {\n\n // Skipped - suppress rendering\n\n NOT_RENDERED: 0,\n\n // Normal rendering - mutually exclusive modes\n\n COLOR_OPAQUE: 1,\n COLOR_TRANSPARENT: 2,\n\n // Accents silhouette rendering - mutually exclusive modes\n\n SILHOUETTE_HIGHLIGHTED: 3,\n SILHOUETTE_SELECTED: 4,\n SILHOUETTE_XRAYED: 5,\n\n // Picking\n\n PICK: 6\n};\n\n", "/**\n * Provides scratch memory for methods like TrianglesBatchingLayer setFlags() and setColors(),\n * so they don't need to allocate temporary arrays that need garbage collection.\n *\n * @private\n */\nclass ScratchMemory {\n #uint8Arrays: {};\n #float32Arrays: {};\n\n constructor() {\n this.#uint8Arrays = {};\n this.#float32Arrays = {};\n }\n\n _clear(): void {\n this.#uint8Arrays = {};\n this.#float32Arrays = {};\n }\n\n getUInt8Array(len: number): Uint8Array {\n let uint8Array = this.#uint8Arrays[len];\n if (!uint8Array) {\n uint8Array = new Uint8Array(len);\n this.#uint8Arrays[len] = uint8Array;\n }\n return uint8Array;\n }\n\n getFloat32Array(len: number): Float32Array {\n let float32Array = this.#float32Arrays[len];\n if (!float32Array) {\n float32Array = new Float32Array(len);\n this.#float32Arrays[len] = float32Array;\n }\n return float32Array;\n }\n}\n\nconst batchingLayerScratchMemory = new ScratchMemory();\n\nlet countUsers = 0;\n\n/**\n * @private\n */\nfunction getScratchMemory(): ScratchMemory {\n countUsers++;\n return batchingLayerScratchMemory;\n}\n\n/**\n * @private\n */\nfunction putScratchMemory(): void {\n if (countUsers === 0) {\n return;\n }\n countUsers--;\n if (countUsers === 0) {\n batchingLayerScratchMemory._clear();\n }\n}\n\nexport {getScratchMemory, putScratchMemory};\n", "import {Layer} from \"../../Layer\";\nimport {WebGLRendererModel} from \"../../WebGLRendererModel\";\nimport {MeshCounts} from \"../../MeshCounts\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {createMat3, createVec3, createVec4, identityMat4, transformPoint4} from \"@xeokit/matrix\";\nimport {collapseAABB3, expandAABB3, positions3ToAABB3} from \"@xeokit/boundaries\";\nimport {SDKError} from \"@xeokit/core\";\nimport {LayerMeshParams} from \"../../LayerMeshParams\";\nimport {SceneGeometry, SceneMesh} from \"@xeokit/scene\";\nimport {VBOBatchingBuffer} from \"./VBOBatchingBuffer\";\nimport {VBOBatchingRenderState} from \"./VBOBatchingRenderState\";\n\nimport {SCENE_OBJECT_FLAGS} from \"../../SCENE_OBJECT_FLAGS\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\nimport {WebGLArrayBuf} from \"@xeokit/webglutils\";\nimport {RenderContext} from \"../../RenderContext\";\nimport {getScratchMemory, putScratchMemory} from \"../ScratchMemory\";\nimport {VBOBatchingLayerParams} from \"./VBOBatchingLayerParams\";\n\nimport {compressUVs, decompressPoint3WithAABB3, getUVBounds, quantizePositions3} from \"@xeokit/compression\";\nimport {VBORendererSet} from \"../VBORendererSet\";\n\nlet numLayers = 0;\n\nconst tempVec3a = createVec3();\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\n\n/**\n * @private\n */\nexport class VBOBatchingLayer implements Layer {\n\n primitive: number;\n rendererModel: WebGLRendererModel;\n layerIndex: number;\n meshCounts: MeshCounts[];\n renderState: VBOBatchingRenderState;\n sortId: string;\n\n #built: boolean;\n #aabb: FloatArrayParam;\n aabbDirty: boolean;\n #meshes: any[]; // A Mesh has multiple SubMeshes\n #layerNumber: number;\n\n #deferredAttributesUpdateEnabled: boolean;\n #deferredMatricesUpdateEnabled: boolean;\n\n #deferredAttributesUpdateDirty: boolean;\n #deferredMatricesUpdateDirty: boolean;\n\n #countAttributesUpdateInFrame: number;\n #countMatricesUpdateInFrame: number;\n\n #onViewerTick: () => void;\n #scratchMemory: any;\n #buffer: VBOBatchingBuffer;\n renderContext: RenderContext;\n #portions: number[];\n #rendererSet: VBORendererSet;\n\n constructor(vBOBatchingLayerParams: VBOBatchingLayerParams, rendererSet: VBORendererSet) {\n\n this.renderContext = vBOBatchingLayerParams.renderContext;\n this.primitive = vBOBatchingLayerParams.primitive;\n this.rendererModel = vBOBatchingLayerParams.rendererModel;\n this.layerIndex = vBOBatchingLayerParams.layerIndex;\n this.sortId = `VBOBatchingLayer-${vBOBatchingLayerParams.primitive}`;\n\n this.meshCounts = [];\n for (let i =0, len = this.renderContext.viewer.viewList.length; i < len; i++) {\n this.meshCounts.push(new MeshCounts());\n }\n\n this.#layerNumber = numLayers++;\n this.#portions = [];\n this.#buffer = new VBOBatchingBuffer();\n this.#scratchMemory = getScratchMemory();\n this.#rendererSet = rendererSet;\n this.#built = false;\n this.#aabb = collapseAABB3(); // Model-space AABB\n this.aabbDirty = true;\n\n this.renderState = {\n numVertices: 0,\n positionsBuf: null,\n indicesBuf: null,\n offsetsBuf: null,\n colorsBuf: [],\n flagsBufs: [],\n positionsDecompressScale: createVec3(),\n positionsDecompressOffset: createVec3(),\n origin: createVec3(vBOBatchingLayerParams.origin),\n pbrSupported: false\n };\n }\n\n get hash() {\n return `${this.primitive}`;\n }\n\n get aabb() {\n if (this.aabbDirty) {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.#meshes.length; i < len; i++) {\n expandAABB3(this.#aabb, this.#meshes[i].aabb);\n }\n this.aabbDirty = false;\n }\n return this.#aabb;\n }\n\n canCreateLayerMesh(sceneGeometry: SceneGeometry): boolean {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const numVertices = sceneGeometry.positionsCompressed.length;\n const numIndices = sceneGeometry.indices ? sceneGeometry.indices.length : 0;\n return ((this.#buffer.positions.length + numVertices) < (this.#buffer.maxVerts)\n && (this.#buffer.indices.length + numIndices) < (this.#buffer.maxIndices));\n }\n\n createLayerMesh(layerMeshParams: LayerMeshParams, sceneMesh: SceneMesh): number {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const geometry = sceneMesh.geometry;\n const color = sceneMesh.color;\n const pickColor = layerMeshParams.pickColor;\n const buffer = this.#buffer;\n const positionsIndex = buffer.positions.length;\n const vertsIndex = positionsIndex / 3;\n const indices = geometry.indices;\n const edgeIndices = geometry.edgeIndices;\n const positionsCompressed = geometry.positionsCompressed;\n const uvCompressed = geometry.uvsCompressed;\n const geometryAABB = geometry.aabb;\n const colorsCompressed = geometry.colorsCompressed;\n const numGeometryVerts = positionsCompressed.length / 3;\n let numLayerVerts = buffer.positions.length / 3;\n let numLayerMeshVerts = 0;\n if (!positionsCompressed) {\n throw \"positionsCompressed expected\";\n }\n if (indices) {\n for (let i = 0, len = indices.length; i < len; i++) {\n buffer.indices.push(numLayerVerts + indices[i]);\n }\n }\n if (edgeIndices) {\n for (let i = 0, len = edgeIndices.length; i < len; i++) {\n buffer.edgeIndices.push(numLayerVerts + edgeIndices[i]);\n }\n }\n for (let k = 0, lenk = positionsCompressed.length; k < lenk; k += 3) {\n tempVec3a[0] = positionsCompressed[k];\n tempVec3a[1] = positionsCompressed[k + 1];\n tempVec3a[2] = positionsCompressed[k + 2];\n decompressPoint3WithAABB3(tempVec3a, geometryAABB, tempVec4a);\n if (sceneMesh.rtcMatrix) {\n tempVec4a[3] = 1.0;\n transformPoint4(sceneMesh.rtcMatrix, tempVec4a, tempVec4b);\n buffer.positions.push(tempVec4b[0]);\n buffer.positions.push(tempVec4b[1]);\n buffer.positions.push(tempVec4b[2]);\n } else {\n buffer.positions.push(tempVec4a[0]);\n buffer.positions.push(tempVec4a[1]);\n buffer.positions.push(tempVec4a[2]);\n }\n }\n if (colorsCompressed) {\n for (let i = 0, len = colorsCompressed.length; i < len; i++) {\n buffer.colors.push(colorsCompressed[i]);\n }\n }\n if (uvCompressed && uvCompressed.length > 0) {\n for (let i = 0, len = uvCompressed.length; i < len; i++) {\n buffer.uv.push(uvCompressed[i]);\n }\n }\n numLayerVerts += numGeometryVerts;\n numLayerMeshVerts += numGeometryVerts;\n if (color) {\n const r = color[0] * 255;\n const g = color[1] * 255;\n const b = color[2] * 255;\n const a = 255;\n for (let i = 0; i < numLayerMeshVerts; i++) {\n buffer.colors.push(r);\n buffer.colors.push(g);\n buffer.colors.push(b);\n buffer.colors.push(a);\n }\n }\n for (let i = 0, len = numLayerMeshVerts; i < len; i += 4) {\n buffer.pickColors.push(...pickColor);\n }\n const layerMeshIndex = this.#portions.length / 2;\n this.#portions.push(vertsIndex);\n this.#portions.push(numLayerVerts);\n for (let viewIndex = 0, len = this.meshCounts.length; viewIndex < len; viewIndex++) {\n this.meshCounts[viewIndex].numMeshes++;\n this.rendererModel.meshCounts[viewIndex].numMeshes++;\n }\n return layerMeshIndex;\n }\n\n /**\n * Builds batch VBOs from appended geometries.\n * No more portions can then be created.\n */\n build() {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n const renderState = this.renderState;\n const gl = this.renderContext.gl;\n const buffer = this.#buffer;\n const numViews = this.meshCounts.length;\n if (buffer.positions.length > 0) {\n const positions = new Float32Array(buffer.positions);\n positions3ToAABB3(positions, this.#aabb, null);\n const quantizedPositions = quantizePositions3(positions, this.#aabb);\n renderState.positionsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, quantizedPositions, buffer.positions.length, 3, gl.STATIC_DRAW);\n // @ts-ignore\n renderState.positionsDecompressOffset.set([this.#aabb[0], this.#aabb[1], this.#aabb[2]]);\n // @ts-ignore\n renderState.positionsDecompressScale.set([\n (this.#aabb[3] - this.#aabb[0]) / 65535,\n (this.#aabb[4] - this.#aabb[1]) / 65535,\n (this.#aabb[5] - this.#aabb[2]) / 65535]);\n }\n if (buffer.colors.length > 0) {\n const colors = new Uint8Array(buffer.colors);\n let normalized = false;\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.colorsBuf[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, colors, buffer.colors.length, 4, gl.STATIC_DRAW, normalized);\n }\n }\n if (buffer.positions.length > 0) { // Because we build flags arrays here, get their length from the positions array\n const flagsLength = buffer.positions.length / 3;\n const flags = new Float32Array(flagsLength);\n let notNormalized = false;\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.flagsBufs[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, flags, flags.length, 1, gl.DYNAMIC_DRAW, notNormalized);\n }\n }\n if (buffer.pickColors.length > 0) {\n const pickColors = new Uint8Array(buffer.pickColors);\n let normalized = false;\n renderState.pickColorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, pickColors, buffer.pickColors.length, 4, gl.STATIC_DRAW, normalized);\n }\n if (buffer.indices.length > 0) {\n const indices = new Uint32Array(buffer.indices);\n renderState.indicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, indices, buffer.indices.length, 1, gl.STATIC_DRAW);\n }\n if (buffer.edgeIndices.length > 0) {\n const edgeIndices = new Uint32Array(buffer.edgeIndices);\n renderState.edgeIndicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, edgeIndices, buffer.edgeIndices.length, 1, gl.STATIC_DRAW);\n }\n if (buffer.uv.length > 0) {\n if (!renderState.uvDecodeMatrix) {\n const bounds = getUVBounds(buffer.uv);\n const result = compressUVs(buffer.uv, bounds.min, bounds.max);\n const uv = result.quantized;\n let notNormalized = false;\n renderState.uvDecodeMatrix = createMat3(result.decompressMatrix);\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, uv, uv.length, 2, gl.STATIC_DRAW, notNormalized);\n } else {\n let notNormalized = false;\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, buffer.uv, buffer.uv.length, 2, gl.STATIC_DRAW, notNormalized);\n }\n }\n this.renderState.pbrSupported\n = !!renderState.metallicRoughnessBuf\n && !!renderState.uvBuf\n && !!renderState.normalsBuf\n && !!renderState.textureSet\n && !!renderState.textureSet.colorTexture\n && !!renderState.textureSet.metallicRoughnessTexture;\n this.renderState.colorTextureSupported\n = !!renderState.uvBuf\n && !!renderState.textureSet\n && !!renderState.textureSet.colorTexture;\n this.#buffer = null;\n this.#built = true;\n }\n\n initFlags(viewIndex: number, layerMeshIndex: number, flags: number, meshTransparent: boolean) {\n const layerMeshCounts = this.meshCounts[viewIndex];\n const modelMeshCounts = this.rendererModel.meshCounts[viewIndex];\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n layerMeshCounts.numVisible++;\n modelMeshCounts.numVisible++;\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n layerMeshCounts.numHighlighted++;\n modelMeshCounts.numHighlighted++;\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n layerMeshCounts.numXRayed++;\n modelMeshCounts.numXRayed++;\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n layerMeshCounts.numSelected++;\n modelMeshCounts.numSelected++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n layerMeshCounts.numClippable++;\n modelMeshCounts.numClippable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n layerMeshCounts.numPickable++;\n modelMeshCounts.numPickable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n layerMeshCounts.numCulled++;\n modelMeshCounts.numCulled++;\n }\n if (meshTransparent) {\n layerMeshCounts.numTransparent++;\n modelMeshCounts.numTransparent++;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, meshTransparent);\n }\n\n setLayerMeshVisible(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n this.meshCounts[viewIndex].numVisible++;\n this.rendererModel.meshCounts[viewIndex].numVisible++;\n } else {\n this.meshCounts[viewIndex].numVisible--;\n this.rendererModel.meshCounts[viewIndex].numVisible--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshHighlighted(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n this.meshCounts[viewIndex].numHighlighted++;\n this.rendererModel.meshCounts[viewIndex].numHighlighted++;\n } else {\n this.meshCounts[viewIndex].numHighlighted--;\n this.rendererModel.meshCounts[viewIndex].numHighlighted--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshXRayed(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n this.meshCounts[viewIndex].numXRayed++;\n this.rendererModel.meshCounts[viewIndex].numXRayed++;\n } else {\n this.meshCounts[viewIndex].numXRayed--;\n this.rendererModel.meshCounts[viewIndex].numXRayed--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshSelected(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n this.meshCounts[viewIndex].numSelected++;\n this.rendererModel.meshCounts[viewIndex].numSelected++;\n } else {\n this.meshCounts[viewIndex].numSelected--;\n this.rendererModel.meshCounts[viewIndex].numSelected--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshClippable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n this.meshCounts[viewIndex].numClippable++;\n this.rendererModel.meshCounts[viewIndex].numClippable++;\n } else {\n this.meshCounts[viewIndex].numClippable--;\n this.rendererModel.meshCounts[viewIndex].numClippable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags);\n }\n\n setLayerMeshCulled(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n this.meshCounts[viewIndex].numCulled++;\n this.rendererModel.meshCounts[viewIndex].numCulled++;\n } else {\n this.meshCounts[viewIndex].numCulled--;\n this.rendererModel.meshCounts[viewIndex].numCulled--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshCollidable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshPickable(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n this.meshCounts[viewIndex].numPickable++;\n this.rendererModel.meshCounts[viewIndex].numPickable++;\n } else {\n this.meshCounts[viewIndex].numPickable--;\n this.rendererModel.meshCounts[viewIndex].numPickable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshColor(viewIndex: number, layerMeshIndex: number, color: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n const portionsIdx = layerMeshIndex * 2;\n const vertexBase = this.#portions[portionsIdx];\n const numVerts = this.#portions[portionsIdx + 1];\n const firstColor = vertexBase * 4;\n const lenColor = numVerts * 4;\n const tempArray = this.#scratchMemory.getUInt8Array(lenColor);\n const r = color[0];\n const g = color[1];\n const b = color[2];\n for (let i = 0; i < lenColor; i += 4) {\n tempArray[i + 0] = r;\n tempArray[i + 1] = g;\n tempArray[i + 2] = b;\n }\n this.renderState.colorsBuf[viewIndex].setData(tempArray, firstColor);\n }\n\n setLayerMeshTransparent(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (transparent) {\n this.meshCounts[viewIndex].numTransparent++;\n this.rendererModel.meshCounts[viewIndex].numTransparent++;\n } else {\n this.meshCounts[viewIndex].numTransparent--;\n this.rendererModel.meshCounts[viewIndex].numTransparent--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshFlags(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean = false): void {\n\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n\n const view = this.renderContext.viewer.viewList[viewIndex];\n\n const portionsIdx = layerMeshIndex * 2;\n const vertexBase = this.#portions[portionsIdx];\n const numVerts = this.#portions[portionsIdx + 1];\n const firstFlag = vertexBase;\n const lenFlags = numVerts - vertexBase;\n const tempArray = this.#scratchMemory.getFloat32Array(lenFlags);\n\n const visible = !!(flags & SCENE_OBJECT_FLAGS.VISIBLE);\n const xrayed = !!(flags & SCENE_OBJECT_FLAGS.XRAYED);\n const highlighted = !!(flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED);\n const selected = !!(flags & SCENE_OBJECT_FLAGS.SELECTED);\n const pickable = !!(flags & SCENE_OBJECT_FLAGS.PICKABLE);\n const culled = !!(flags & SCENE_OBJECT_FLAGS.CULLED);\n\n let colorFlag;\n if (!visible || culled || xrayed\n || (highlighted && !view.highlightMaterial.glowThrough)\n || (selected && !view.selectedMaterial.glowThrough)) {\n colorFlag = RENDER_PASSES.NOT_RENDERED;\n } else {\n if (transparent) {\n colorFlag = RENDER_PASSES.COLOR_TRANSPARENT;\n } else {\n colorFlag = RENDER_PASSES.COLOR_OPAQUE;\n }\n }\n\n let silhouetteFlag;\n if (!visible || culled) {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n } else if (selected) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_SELECTED;\n } else if (highlighted) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_HIGHLIGHTED;\n } else if (xrayed) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_XRAYED;\n } else {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n }\n\n let pickFlag = (visible && !culled && pickable) ? RENDER_PASSES.PICK : RENDER_PASSES.NOT_RENDERED;\n\n const clippableFlag = !!(flags & SCENE_OBJECT_FLAGS.CLIPPABLE) ? 1 : 0;\n\n for (let i = 0; i < lenFlags; i++) {\n let vertFlag = 0;\n vertFlag |= colorFlag;\n vertFlag |= silhouetteFlag << 4;\n vertFlag |= pickFlag << 8;\n vertFlag |= clippableFlag << 12;\n tempArray[i] = vertFlag;\n }\n\n this.renderState.flagsBufs[viewIndex].setData(tempArray, firstFlag);\n }\n\n setLayerMeshMatrix(layerMeshIndex: number, matrix: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshOffset(viewIndex: number, layerMeshIndex: number, offset: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n drawColorOpaque() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawColorTranslucent() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0 ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawDepth() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.depthRenderer) {\n // this.#rendererSet.depthRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses depth (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawNormals() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.normalsRenderer) {\n // this.#rendererSet.normalsRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses normals (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawSilhouetteXRayed() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawSilhouetteHighlighted() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawSilhouetteSelected() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesColorOpaque() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawEdgesColorTranslucent() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawEdgesHighlighted() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawEdgesSelected() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesXRayed() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawOcclusion() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.occlusionRenderer) {\n this.#rendererSet.occlusionRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawShadow() {\n const viewIndex = this.renderContext.view.viewIndex;\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n // this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.shadowRenderer) {\n // this.#rendererSet.shadowRenderer.render( this, RENDER_PASSES.COLOR_OPAQUE);\n // }\n }\n\n drawPickMesh() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickMeshRenderer) {\n this.#rendererSet.pickMeshRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickDepths() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickDepthRenderer) {\n this.#rendererSet.pickDepthRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnapInit() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapInitRenderer) {\n this.#rendererSet.snapInitRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnap() {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapRenderer) {\n this.#rendererSet.snapRenderer.renderVBOBatchingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickNormals() {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.pickNormalsRenderer) {\n // this.#rendererSet.pickNormalsRenderer.render( this, RENDER_PASSES.PICK);\n // }\n }\n\n destroy() {\n const renderState = this.renderState;\n if (renderState.positionsBuf) {\n renderState.positionsBuf.destroy();\n renderState.positionsBuf = null;\n }\n if (renderState.offsetsBuf) {\n renderState.offsetsBuf.destroy();\n renderState.offsetsBuf = null;\n }\n for (let viewIndex = 0, len = renderState.colorsBuf.length; viewIndex < len; viewIndex++) {\n if (renderState.colorsBuf[viewIndex]) {\n renderState.colorsBuf[viewIndex].destroy();\n renderState.colorsBuf[viewIndex] = null;\n }\n }\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.flagsBufs[viewIndex]) {\n renderState.flagsBufs[viewIndex].destroy();\n renderState.flagsBufs[viewIndex] = null;\n }\n }\n if (renderState.pickColorsBuf) {\n renderState.pickColorsBuf.destroy();\n renderState.pickColorsBuf = null;\n }\n if (renderState.uvBuf) {\n renderState.uvBuf.destroy();\n renderState.uvBuf = null;\n }\n if (renderState.indicesBuf) {\n renderState.indicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n if (renderState.edgeIndicesBuf) {\n renderState.edgeIndicesBuf.destroy();\n renderState.edgeIndicesBuf = null;\n }\n //renderState.destroy();\n putScratchMemory();\n }\n\n commitRendererState(viewIndex: number): void {\n }\n\n isEmpty(): boolean {\n return false;\n }\n\n\n}\n", "import {WebGLAttribute, WebGLProgram} from \"@xeokit/webglutils\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {AmbientLight, DirLight, PointLight} from \"@xeokit/viewer\";\nimport {RenderContext} from \"../RenderContext\";\nimport {RENDER_PASSES} from \"../RENDER_PASSES\";\nimport {VBOInstancingLayer} from \"./instancing/VBOInstancingLayer\";\nimport {VBOBatchingLayer} from \"./batching/VBOBatchingLayer\";\n\nconst defaultColor = new Float32Array([1, 1, 1, 1]);\n\nfunction joinSansComments(srcLines) {\n const src = [];\n let line;\n let n;\n for (let i = 0, len = srcLines.length; i < len; i++) {\n line = srcLines[i];\n n = line.indexOf(\"/\");\n if (n > 0) {\n if (line.charAt(n + 1) === \"/\") {\n line = line.substring(0, n);\n }\n }\n src.push(line);\n }\n return src.join(\"\\n\");\n}\n\n/**\n * @private\n */\nexport abstract class VBORenderer {\n\n renderContext: RenderContext;\n hash: string;\n program: WebGLProgram | null;\n errors: string[];\n edges: boolean;\n\n #needRebuild: boolean;\n\n uniforms: {\n pointCloudIntensityRange: WebGLUniformLocation;\n nearPlaneHeight: WebGLUniformLocation;\n silhouetteColor: WebGLUniformLocation;\n gammaFactor: WebGLUniformLocation;\n pickZNear: WebGLUniformLocation;\n renderPass: WebGLUniformLocation;\n snapCameraEyeRTC: WebGLUniformLocation;\n pointSize: WebGLUniformLocation;\n intensityRange: WebGLUniformLocation;\n pickZFar: WebGLUniformLocation;\n pickClipPos: WebGLUniformLocation;\n drawingBufferSize: WebGLUniformLocation;\n worldMatrix: WebGLUniformLocation;\n positionsDecompressOffset: WebGLUniformLocation;\n positionsDecompressScale: WebGLUniformLocation;\n sectionPlanes: any[];\n sceneModelMatrix: WebGLUniformLocation;\n projMatrix: WebGLUniformLocation;\n viewMatrix: WebGLUniformLocation;\n lightPos: WebGLUniformLocation[];\n lightDir: WebGLUniformLocation[];\n lightColor: WebGLUniformLocation[];\n lightAttenuation: WebGLUniformLocation[];\n lightAmbient: WebGLUniformLocation;\n };\n\n attributes: {\n color: WebGLAttribute;\n normal: WebGLAttribute;\n intensity: WebGLAttribute;\n flags: WebGLAttribute;\n uv: WebGLAttribute;\n position: WebGLAttribute;\n pickColor: WebGLAttribute;\n modelMatrix: WebGLAttribute;\n modelMatrixCol0: WebGLAttribute;\n modelMatrixCol1: WebGLAttribute;\n modelMatrixCol2: WebGLAttribute;\n };\n\n constructor(renderContext: RenderContext, cfg: { edges: boolean } = {edges: false}) {\n this.renderContext = renderContext;\n this.#needRebuild = true;\n this.edges = cfg.edges;\n this.build();\n }\n\n abstract getHash(): string;\n\n get lambertShadingHash() {\n return this.renderContext.view.getLightsHash();\n }\n\n get slicingHash() {\n return this.renderContext.view.getSectionPlanesHash();\n }\n\n get pointsHash() {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n return `${pointsMaterial.roundPoints}-${pointsMaterial.perspectivePoints}`;\n }\n\n needRebuild() {\n this.#needRebuild = true;\n }\n\n getValid() {\n if (!this.#needRebuild) {\n return true;\n }\n this.#needRebuild = false;\n return this.hash === this.getHash();\n };\n\n build(): void {\n\n const view = this.renderContext.view;\n const gl = this.renderContext.gl;\n\n const vertexSrc = [];\n this.buildVertexShader(vertexSrc)\n\n const fragmentSrc = [];\n this.buildFragmentShader(fragmentSrc)\n\n this.program = new WebGLProgram(gl, {\n vertex: joinSansComments(vertexSrc),\n fragment: joinSansComments(fragmentSrc)\n });\n\n if (this.program.errors) {\n this.errors = this.program.errors;\n return;\n }\n\n const program = this.program;\n\n this.uniforms = {\n renderPass: program.getLocation(\"renderPass\"),\n gammaFactor: program.getLocation(\"gammaFactor\"),\n sceneModelMatrix: program.getLocation(\"sceneModelMatrix\"),\n viewMatrix: program.getLocation(\"viewMatrix\"),\n projMatrix: program.getLocation(\"projMatrix\"),\n worldMatrix: program.getLocation(\"worldMatrix\"),\n positionsDecompressOffset: program.getLocation(\"positionsDecompressOffset\"),\n positionsDecompressScale: program.getLocation(\"positionsDecompressScale\"),\n snapCameraEyeRTC: program.getLocation(\"snapCameraEyeRTC\"),\n pointSize: program.getLocation(\"pointSize\"),\n intensityRange: program.getLocation(\"intensityRange\"),\n nearPlaneHeight: program.getLocation(\"nearPlaneHeight\"),\n pointCloudIntensityRange: program.getLocation(\"pointCloudIntensityRange\"),\n pickZNear: program.getLocation(\"pickZNear\"),\n pickZFar: program.getLocation(\"pickZFar\"),\n pickClipPos: program.getLocation(\"pickClipPos\"),\n drawingBufferSize: program.getLocation(\"drawingBufferSize\"),\n silhouetteColor: program.getLocation(\"silhouetteColor\"),\n sectionPlanes: [],\n lightColor: [],\n lightDir: [],\n lightPos: [],\n lightAttenuation: [],\n lightAmbient: program.getLocation(\"lightAmbient\")\n };\n\n const lights = view.lightsList;\n for (let i = 0, len = lights.length; i < len; i++) {\n const light = lights[i];\n if (light instanceof DirLight) {\n this.uniforms.lightColor[i] = program.getLocation(\"lightColor\" + i);\n this.uniforms.lightPos[i] = null;\n this.uniforms.lightDir[i] = program.getLocation(\"lightDir\" + i);\n break;\n } else {\n this.uniforms.lightColor[i] = program.getLocation(\"lightColor\" + i);\n this.uniforms.lightPos[i] = program.getLocation(\"lightPos\" + i);\n this.uniforms.lightDir[i] = null;\n this.uniforms.lightAttenuation[i] = program.getLocation(\"lightAttenuation\" + i);\n }\n }\n\n const uniforms = this.uniforms;\n\n for (let i = 0, len = view.sectionPlanesList.length; i < len; i++) {\n uniforms.sectionPlanes.push({\n active: program.getLocation(\"sectionPlaneActive\" + i),\n pos: program.getLocation(\"sectionPlanePos\" + i),\n dir: program.getLocation(\"sectionPlaneDir\" + i)\n });\n }\n\n this.attributes = {\n position: program.getAttribute(\"position\"),\n normal: program.getAttribute(\"normal\"),\n color: program.getAttribute(\"color\"),\n uv: program.getAttribute(\"uv\"),\n intensity: program.getAttribute(\"intensity\"),\n flags: program.getAttribute(\"flags\"),\n pickColor: program.getAttribute(\"pickColor\"),\n modelMatrix: program.getAttribute(\"modelMatrix\"),\n\n // Instancing\n\n modelMatrixCol0: program.getAttribute(\"modelMatrixCol0\"),\n modelMatrixCol1: program.getAttribute(\"modelMatrixCol1\"),\n modelMatrixCol2: program.getAttribute(\"modelMatrixCol2\")\n }\n\n this.hash = this.getHash();\n\n this.#needRebuild = false;\n }\n\n abstract buildVertexShader(src: string[]);\n\n abstract buildFragmentShader(src: string[]);\n\n vertexHeader(src: string[]) {\n src.push('#version 300 es');\n src.push(\"// vertexHeader\")\n src.push(`// ${this.constructor.name} vertex shader`);\n }\n\n vertexCommonDefs(src: string[]) {\n src.push(\"// ------------------- vertexCommonDefs\")\n src.push(\"in float flags;\");\n src.push(\"uniform int renderPass;\");\n src.push(\"\");\n }\n\n vertexBatchingTransformDefs(src: string[]) {\n src.push(\"// ------------------- vertexBatchingTransformDefs\")\n src.push(\"uniform mat4 viewMatrix;\");\n src.push(\"uniform mat4 projMatrix;\");\n src.push(\"uniform mat4 worldMatrix;\");\n src.push(\"uniform vec3 positionsDecompressOffset;\");\n src.push(\"uniform vec3 positionsDecompressScale;\");\n src.push(\"in vec3 position;\");\n }\n\n vertexInstancingTransformDefs(src: string[]) {\n src.push(\"// ------------------- vertexInstancingTransformDefs\")\n src.push(\"uniform mat4 viewMatrix;\");\n src.push(\"uniform mat4 projMatrix;\");\n src.push(\"uniform mat4 worldMatrix;\");\n src.push(\"uniform vec3 positionsDecompressOffset;\");\n src.push(\"uniform vec3 positionsDecompressScale;\");\n src.push(\"in vec3 position;\");\n src.push(\"in vec4 modelMatrixCol0;\");\n src.push(\"in vec4 modelMatrixCol1;\");\n src.push(\"in vec4 modelMatrixCol2;\");\n }\n\n vertexPickMeshShadingDefs(src: string[]) {\n src.push(\"// ------------------- vertexPickMeshShadingDefs\")\n src.push(\"in vec4 pickColor;\");\n src.push(\"out vec4 vPickColor;\");\n\n src.push(\"uniform vec2 drawingBufferSize;\");\n src.push(\"uniform vec2 pickClipPos;\");\n\n src.push(\"vec4 remapClipPos(vec4 clipPos) {\");\n src.push(\" clipPos.xy /= clipPos.w;\");\n //if (viewportSize === 1) {\n src.push(\" clipPos.xy = (clipPos.xy - pickClipPos) * drawingBufferSize;\");\n // } else {\n // src.push(` clipPos.xy = (clipPos.xy - pickClipPos) * (drawingBufferSize / float(${viewportSize}));`);\n // }\n src.push(\" clipPos.xy *= clipPos.w;\")\n src.push(\" return clipPos;\")\n src.push(\"}\");\n }\n\n vertexSlicingDefs(src: string[]) {\n if (this.renderContext.view.getNumAllocatedSectionPlanes() > 0) {\n src.push(\"// ------------------- vertexSlicingDefs\")\n src.push(\"out vec4 vWorldPosition;\");\n src.push(\"out boolean vClippable;\");\n }\n }\n\n vertexColorMainOpenBlock(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` int colorFlag = int(flags) & 0xF;`);\n src.push(` if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\" } else {\");\n }\n\n openVertexSilhouetteMain(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` if ((int(flags) >> 4 & 0xF) != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\" } else {\");\n }\n\n openVertexEdgesMain(src: string[]) {\n src.push(\"void main(void) {\");\n }\n\n openVertexPickMain(src: string[]) {\n src.push(\"void main(void) {\");\n src.push(` int pickFlag = int(flags) >> 8 & 0xF;`);\n src.push(` if (pickFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n }\n\n vertexColorMainCloseBlock(src: string[]) {\n src.push(\" }\");\n src.push(\"}\");\n }\n\n vertexPickMainCloseBlock(src: string[]) {\n src.push(\" }\");\n src.push(\"}\");\n }\n\n vertexSlicingLogic(src: string[]) {\n if (this.renderContext.view.getNumAllocatedSectionPlanes() > 0) {\n src.push(\" // ------------------- vertexSlicingLogic\")\n src.push(\" vWorldPosition = worldPosition;\");\n src.push(\" vClippable = (int(flags) >> 12 & 0xF) == 1;\");\n }\n }\n\n vertexDrawBatchingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawBatchingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" gl_Position = projMatrix * viewPosition;\");\n }\n\n vertexPickBatchingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawBatchingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" gl_Position = remapClipPos(projMatrix * viewPosition);\");\n }\n\n vertexDrawInstancingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawInstancingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * vec4(dot(worldPosition, modelMatrixCol0), dot(worldPosition, modelMatrixCol1), dot(worldPosition, modelMatrixCol2), 1.0); \");\n src.push(\" gl_Position = projMatrix * viewPosition;\");\n }\n\n vertexPickInstancingTransformLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawInstancingTransformLogic\")\n src.push(\" vec4 worldPosition = (vec4(positionsDecompressOffset + (positionsDecompressScale * position), 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * vec4(dot(worldPosition, modelMatrixCol0), dot(worldPosition, modelMatrixCol1), dot(worldPosition, modelMatrixCol2), 1.0); \");\n src.push(\" gl_Position = remapClipPos(projMatrix * viewPosition);\");\n }\n\n vertexDrawLambertDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawLambertDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n src.push(\" out vec4 vViewPosition;\");\n }\n\n vertexDrawLambertLogic(src: string[]) { // Depends on vertexDrawInstancingTransformLogic / vertexDrawBatchingTransformLogic\n src.push(\" // ------------------- vertexDrawLambertLogic\")\n src.push(\" vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n src.push(\" vViewPosition = viewPosition;\");\n }\n\n vertexDrawSilhouetteDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawSilhouetteDefs\")\n src.push(\" uniform vec4 silhouetteColor;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawSilhouetteLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawSilhouetteLogic\")\n src.push(\" vColor = vec4(silhouetteColor.r, silhouetteColor.g, silhouetteColor.b, 0.5);\");\n }\n\n vertexDrawFlatColorDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawFlatColorDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawFlatColorLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawFlatColorLogic\")\n src.push(\" vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n }\n\n vertexDrawEdgesColorDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesColorDefs\")\n src.push(\" in vec4 color;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawEdgesColorLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesColorLogic\")\n src.push(\" vColor = vec4(float(color.r-200.0) / 255.0, float(color.g-200.0) / 255.0, float(color.b-200.0) / 255.0, 1.0);\");\n }\n\n vertexDrawEdgesSilhouetteDefs(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesSilhouetteDefs\")\n src.push(\" uniform vec4 silhouetteColor;\");\n src.push(\" out vec4 vColor;\");\n }\n\n vertexDrawEdgesSilhouetteLogic(src: string[]) {\n src.push(\" // ------------------- vertexDrawEdgesSilhouetteLogic\")\n src.push(\" vColor = vec4(silhouetteColor.r, silhouetteColor.g, silhouetteColor.b, 0.5);\");\n }\n\n vertexPickMeshShadingLogic(src: string[]) {\n src.push(\" // ------------------- vertexPickMeshShadingLogic\")\n src.push(\" vPickColor = vec4(float(pickColor.r) / 255.0, float(pickColor.g) / 255.0, float(pickColor.b) / 255.0, float(pickColor.a) / 255.0);\");\n }\n\n fragmentHeader(src: string[]) {\n src.push('#version 300 es');\n src.push(`// ${this.constructor.name} fragment shader`);\n }\n\n fragmentPrecisionDefs(src: string[]) {\n src.push(\"// ------------------- fragmentPrecisionDefs\")\n src.push(\"#ifdef GL_FRAGMENT_PRECISION_HIGH\");\n src.push(\"precision highp float;\");\n src.push(\"precision highp int;\");\n src.push(\"#else\");\n src.push(\"precision mediump float;\");\n src.push(\"precision mediump int;\");\n src.push(\"#endif\");\n }\n\n fragmentDrawLambertDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawLambertDefs\")\n const view = this.renderContext.view;\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"in vec4 vViewPosition;\");\n src.push(\"uniform vec4 lightAmbient;\");\n src.push(\"uniform mat4 viewMatrix;\");\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (light instanceof AmbientLight) {\n continue;\n }\n src.push(`uniform vec4 lightColor${i};`);\n if (light instanceof DirLight) {\n src.push(`uniform vec3 lightDir${i};`);\n }\n if (light instanceof PointLight) {\n src.push(`uniform vec3 lightPos${i};`);\n }\n }\n }\n\n fragmentDrawLambertLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawLambertLogic\")\n const view = this.renderContext.view;\n src.push(\"vec3 reflectedColor = vec3(0.0, 0.0, 0.0);\");\n src.push(\"vec3 viewLightDir = vec3(0.0, 0.0, -1.0);\");\n src.push(\"float lambertian = 1.0;\");\n src.push(\"vec3 xTangent = dFdx( vViewPosition.xyz );\");\n src.push(\"vec3 yTangent = dFdy( vViewPosition.xyz );\");\n src.push(\"vec3 viewNormal = normalize( cross( xTangent, yTangent ) );\");\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (light instanceof AmbientLight) {\n continue;\n }\n if (light instanceof DirLight) {\n if (light.space === \"view\") {\n src.push(`viewLightDir = normalize(lightDir${i});`);\n } else {\n src.push(`viewLightDir = normalize((viewMatrix * vec4(lightDir${i}, 0.0)).xyz);`);\n }\n } else if (light instanceof PointLight) {\n if (light.space === \"view\") {\n src.push(`viewLightDir = -normalize(lightPos${i} - viewPosition.xyz);`);\n } else {\n src.push(`viewLightDir = -normalize((viewMatrix * vec4(lightPos${i}, 0.0)).xyz);`);\n }\n } else {\n continue;\n }\n src.push(\"lambertian = max(dot(-viewNormal, viewLightDir), 0.0);\");\n src.push(`reflectedColor += lambertian * (lightColor${i}.rgb * lightColor${i}.a);`);\n }\n src.push(\"outColor = vec4((lightAmbient.rgb * lightAmbient.a * vColor.rgb) + (reflectedColor * vColor.rgb), vColor.a);\");\n }\n\n fragmentDrawSilhouetteDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawSilhouetteLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawFlatColorDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawFlatColorDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawFlatColorLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawFlatColorLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawEdgesColorDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesColorDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawEdgesColorLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesColorLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentDrawEdgesSilhouetteDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesSilhouetteDefs\")\n src.push(\"in vec4 vColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentDrawEdgesSilhouetteLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawEdgesSilhouetteLogic\")\n src.push(\"outColor = vColor;\");\n }\n\n fragmentPickMeshShadingDefs(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteDefs\")\n src.push(\"in vec4 vPickColor;\");\n src.push(\"out vec4 outColor;\");\n }\n\n fragmentPickMeshShadingLogic(src: string[]) {\n src.push(\"// ------------------- fragmentDrawSilhouetteLogic\")\n src.push(\"outColor = vPickColor;\");\n }\n\n fragmentSlicingDefs(src: string[]) {\n const numSectionPlanes = this.renderContext.view.getNumAllocatedSectionPlanes();\n if (numSectionPlanes === 0) {\n return;\n }\n src.push(\"// ------------------- fragmentSlicingDefs\")\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in boolean vClippable;\");\n for (let i = 0; i < numSectionPlanes; i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n\n fragmentSlicingLogic(src: string[]) {\n const numSectionPlanes = this.renderContext.view.getNumAllocatedSectionPlanes();\n if (numSectionPlanes === 0) {\n return;\n }\n src.push(\"// ------------------- fragmentSlicingLogic\")\n src.push(\" if (vClippable) {\");\n src.push(\" float dist = 0.0;\");\n for (let i = 0; i < numSectionPlanes; i++) {\n src.push(\" if (sectionPlaneActive\" + i + \") {\");\n src.push(\" dist += clamp(dot(-sectionPlaneDir\" + i + \".xyz, vWorldPosition.xyz - sectionPlanePos\" + i + \".xyz), 0.0, 1000.0);\");\n src.push(\" }\");\n }\n src.push(\" if (dist > 0.0) { discard; }\");\n src.push(\" }\");\n }\n\n vertexDrawPointsColorsDefs(src: string[]): void {\n src.push(\"in vec4 color;\");\n src.push(\"out vec4 vColor;\");\n }\n\n vertexDrawPointsColorsLogic(src: string[]): void {\n src.push(\"vColor = vec4(float(color.r) / 255.0, float(color.g) / 255.0, float(color.b) / 255.0, 1.0);\");\n }\n\n vertexPointsGeometryDefs(src: string[]): void {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n if (pointsMaterial.filterIntensity) {\n src.push(\"uniform vec2 intensityRange;\");\n }\n }\n\n vertexPointsFilterLogicOpenBlock(src: string[]) {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.filterIntensity) {\n src.push(\"float intensity = float(color.a) / 255.0;\")\n src.push(\"if (intensity < intensityRange[0] || intensity > intensityRange[1]) {\");\n src.push(\" gl_Position = vec4(2.0, 0.0, 0.0, 0.0);\");\n src.push(\"} else {\");\n }\n }\n\n vertexPointsFilterLogicCloseBlock(src: string[]) {\n src.push(\"}\");\n }\n\n vertexPointsGeometryLogic(src: string[]) {\n const pointsMaterial = this.renderContext.view.pointsMaterial;\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n }\n\n fragmentPointsGeometryLogic(src: string[]): void {\n if (this.renderContext.view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n }\n\n bind(renderPass: number): boolean {\n const view = this.renderContext.view;\n const gl = this.renderContext.gl;\n const uniforms = this.uniforms;\n this.renderContext.textureUnit = 0;\n if (this.program && !this.getValid()) {\n this.program.destroy();\n this.program = null;\n }\n if (!this.program) {\n this.build();\n if (this.errors) {\n return false;\n }\n this.renderContext.lastProgramId = -1;\n }\n if (!this.program) {\n return false;\n }\n if (this.renderContext.lastProgramId === this.program.id) {\n return true; // Already bound\n }\n this.program.bind();\n this.renderContext.lastProgramId = this.program.id;\n gl.uniform1i(uniforms.renderPass, renderPass);\n if (uniforms.projMatrix) {\n gl.uniformMatrix4fv(uniforms.projMatrix, false,\n \n (renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickProjMatrix\n : view.camera.projMatrix));\n }\n if (uniforms.pointSize) {\n gl.uniform1f(uniforms.pointSize, view.pointsMaterial.pointSize);\n }\n if (uniforms.nearPlaneHeight) {\n gl.uniform1f(uniforms.nearPlaneHeight, (view.camera.projectionType === OrthoProjectionType) ? 1.0 : (gl.drawingBufferHeight / (2 * Math.tan(0.5 * view.camera.perspectiveProjection.fov * Math.PI / 180.0))));\n }\n if (uniforms.pickZNear) {\n gl.uniform1f(uniforms.pickZNear, this.renderContext.pickZNear);\n gl.uniform1f(uniforms.pickZFar, this.renderContext.pickZFar);\n }\n if (uniforms.drawingBufferSize) {\n gl.uniform2f(uniforms.drawingBufferSize, gl.drawingBufferWidth, gl.drawingBufferHeight);\n }\n if (uniforms.pickClipPos) {\n gl.uniform2fv(uniforms.pickClipPos, this.renderContext.pickClipPos);\n }\n if (uniforms.lightAmbient) {\n gl.uniform4fv(uniforms.lightAmbient, view.getAmbientColorAndIntensity());\n }\n for (let i = 0, len = view.lightsList.length; i < len; i++) {\n const light = view.lightsList[i];\n if (this.uniforms.lightColor[i]) {\n gl.uniform4f(this.uniforms.lightColor[i], light.color[0], light.color[1], light.color[2], light.intensity);\n }\n if (this.uniforms.lightPos[i]) {\n const pointLight = light;\n gl.uniform3fv(this.uniforms.lightPos[i], pointLight.pos);\n }\n if (this.uniforms.lightDir[i]) {\n const dirLight = light;\n gl.uniform3fv(this.uniforms.lightDir[i], dirLight.dir);\n }\n }\n if (this.uniforms.silhouetteColor) {\n if (this.edges) {\n if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n const material = view.xrayMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n const material = view.highlightMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n const material = view.selectedMaterial;\n const color = material.edgeColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.edgeAlpha);\n } else {\n gl.uniform4fv(this.uniforms.silhouetteColor, defaultColor);\n }\n } else {\n if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n const material = view.xrayMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n const material = view.highlightMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n const material = view.selectedMaterial;\n const color = material.fillColor;\n gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], material.fillAlpha);\n } else {\n gl.uniform4fv(this.uniforms.silhouetteColor, defaultColor);\n }\n }\n }\n return true;\n }\n\n renderVBOInstancingLayer(vboInstancinglayer: VBOInstancingLayer, renderPass: number) {\n // Default no-op\n }\n\n renderVBOBatchingLayer(vboInstancinglayer: VBOBatchingLayer, renderPass: number) {\n // Default no-op\n }\n\n destroy() {\n if (this.program) {\n this.program.destroy();\n }\n this.program = null;\n }\n}\n", "import {VBOBatchingLayer} from \"./VBOBatchingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBORenderer} from \"../VBORenderer\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\n\n\n/**\n * @private\n */\nexport abstract class VBOBatchingRenderer extends VBORenderer {\n\n renderVBOBatchingLayer(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n if (!this.bind(renderPass)) {\n return;\n }\n const attributes = this.attributes;\n const renderState = vboBatchingLayer.renderState;\n const view = this.renderContext.view;\n const viewIndex = view.viewIndex;\n const gl = this.renderContext.gl;\n attributes.position.bindArrayBuffer(renderState.positionsBuf);\n if (attributes.flags) {\n attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n }\n if (attributes.color) {\n attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n }\n if (attributes.pickColor) {\n attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n }\n if (attributes.intensity) {\n //attributes.intensity.bindArrayBuffer(renderState.pointIntensitiesBuf);\n }\n if (attributes.uv) {\n attributes.uv.bindArrayBuffer(renderState.uvBuf);\n }\n gl.uniform1i(this.uniforms.renderPass, renderPass);\n gl.uniform3fv(this.uniforms.positionsDecompressOffset, renderState.positionsDecompressOffset);\n gl.uniform3fv(this.uniforms.positionsDecompressScale, renderState.positionsDecompressScale);\n gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n gl.uniformMatrix4fv(this.uniforms.viewMatrix, false,\n createRTCViewMat(\n renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickViewMatrix\n : this.renderContext.view.camera.viewMatrix,\n renderState.origin));\n if (renderState.indicesBuf) {\n renderState.indicesBuf.bind();\n }\n this.drawVBOBatchingLayerPrimitives(vboBatchingLayer, renderPass);\n }\n\n abstract drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number);\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n const view = this.renderContext.view;\n const pointsMaterial = view.pointsMaterial;\n return `${pointsMaterial.perspectivePoints}-${pointsMaterial.filterIntensity}-${pointsMaterial.roundPoints}-${view.getSectionPlanesHash()}`;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPointsGeometryDefs(src);\n this.vertexDrawPointsColorsDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexPointsFilterLogicOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexSlicingLogic(src);\n this.vertexDrawPointsColorsLogic(src);\n this.vertexPointsGeometryLogic(src);\n }\n this.vertexPointsFilterLogicCloseBlock(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentPointsGeometryLogic(src);\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n gl.drawArrays(gl.POINTS, 0, vboBatchingLayer.renderState.positionsBuf.numItems);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return \"\";\n }\n\n buildVertexShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n const pointsMaterial = view.pointsMaterial;\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n src.push(\"in vec4 pickColor;\");\n src.push(\"uniform float pointSize;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"uniform float logDepthBufFC;\");\n // src.push(\"out float vFragDepth;\");\n // }\n\n src.push(\"out vec4 vPickColor;\");\n src.push(\"void main(void) {\");\n // pickFlag = NOT_RENDERED | PICK\n // renderPass = PICK\n src.push(`int pickFlag = int(flags) >> 12 & 0xF;`);\n src.push(`if (pickFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\" } else {\");\n src.push(\" vec4 worldPosition = worldMatrix * (positionsDecodeMatrix * vec4(position, 1.0)); \");\n src.push(\" vec4 viewPosition = viewMatrix * worldPosition; \");\n src.push(\" vPickColor = vec4(float(pickColor.r) / 255.0, float(pickColor.g) / 255.0, float(pickColor.b) / 255.0, float(pickColor.a) / 255.0);\");\n if (clipping) {\n src.push(\" vWorldPosition = worldPosition;\");\n src.push(\" vFlags = flags;\");\n }\n src.push(\"vec4 clipPos = projMatrix * viewPosition;\");\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"vFragDepth = 1.0 + clipPos.w;\");\n // }\n src.push(\"gl_Position = clipPos;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n src.push(\"gl_PointSize += 10.0;\");\n src.push(\" }\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n src.push(`#version 300 es\n // Points batching pick mesh vertex shader\n #ifdef GL_FRAGMENT_PRECISION_HIGH\n precision highp float;\n precision highp int;\n #else;\n precision mediump float;\n precision mediump int;\n #endif`);\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"uniform float logDepthBufFC;\");\n // src.push(\"in float vFragDepth;\");\n // }\n if (clipping) {\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in float vFlags;\");\n for (var i = 0; i < view.getNumAllocatedSectionPlanes(); i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n src.push(\"in vec4 vPickColor;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"void main(void) {\");\n if (view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n if (clipping) {\n src.push(\" bool clippable = (int(vFlags) >> 16 & 0xF) == 1;\");\n src.push(\" if (clippable) {\");\n src.push(\" float dist = 0.0;\");\n for (let i = 0; i < view.getNumAllocatedSectionPlanes(); i++) {\n src.push(\" if (sectionPlaneActive\" + i + \") {\");\n src.push(\" dist += clamp(dot(-sectionPlaneDir\" + i + \".xyz, vWorldPosition.xyz - sectionPlanePos\" + i + \".xyz), 0.0, 1000.0);\");\n src.push(\" }\");\n }\n src.push(\" if (dist > 0.0) { discard; }\");\n src.push(\" }\");\n }\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"gl_FragDepth = log2( vFragDepth ) * logDepthBufFC * 0.5;\");\n // }\n src.push(\" outColor = vPickColor; \");\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number) {\n // this.bind(renderPass);\n // const view = this.renderContext.view;\n // const viewIndex = view.viewIndex;\n // const gl = this.renderContext.gl;\n // const attributes = this.attributes;\n // const renderState = vboBatchingLayer.renderState;\n // attributes.position.bindArrayBuffer(renderState.positionsBuf);\n // if (attributes.pickColor) {\n // attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n // }\n // if (attributes.flags) {\n // attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n // }\n // gl.uniform1i(this.uniforms.renderPass, renderPass);\n // gl.uniformMatrix4fv(this.uniforms.positionsDecodeMatrix, false, renderState.positionsDecodeMatrix);\n //\n // gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n // gl.uniformMatrix4fv(this.uniforms.viewMatrix, false, createRTCViewMat(this.renderContext.view.camera.viewMatrix, renderState.origin));\n // gl.drawArrays(gl.POINTS, 0, renderState.positionsBuf.numItems);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {RENDER_PASSES} from \"../../../../RENDER_PASSES\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return \"\";\n }\n\n buildVertexShader(src: string[]) :void{\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n const pointsMaterial = view.pointsMaterial;\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexSlicingDefs(src);\n src.push(\"uniform vec4 color;\");\n src.push(\"uniform float pointSize;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"uniform float nearPlaneHeight;\");\n }\n\n src.push(\"void main(void) {\");\n // silhouetteFlag = NOT_RENDERED | SILHOUETTE_HIGHLIGHTED | SILHOUETTE_SELECTED | SILHOUETTE_XRAYED\n // renderPass = SILHOUETTE_HIGHLIGHTED | SILHOUETTE_SELECTED | | SILHOUETTE_XRAYED\n src.push(`int silhouetteFlag = int(flags) >> 4 & 0xF;`);\n src.push(`if (silhouetteFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n src.push(\"vec4 worldPosition = worldMatrix * (positionsDecodeMatrix * vec4(position, 1.0)); \");\n src.push(\"vec4 viewPosition = viewMatrix * worldPosition; \");\n if (clipping) {\n src.push(\"vWorldPosition = worldPosition;\");\n src.push(\"vFlags = flags;\");\n }\n src.push(\"vec4 clipPos = projMatrix * viewPosition;\");\n // if (view.logarithmicDepthBufferEnabled) {\n // src.push(\"vFragDepth = 1.0 + clipPos.w;\");\n // }\n src.push(\"gl_Position = clipPos;\");\n if (pointsMaterial.perspectivePoints) {\n src.push(\"gl_PointSize = (nearPlaneHeight * pointSize) / clipPos.w;\");\n src.push(\"gl_PointSize = max(gl_PointSize, \" + Math.floor(pointsMaterial.minPerspectivePointSize) + \".0);\");\n src.push(\"gl_PointSize = min(gl_PointSize, \" + Math.floor(pointsMaterial.maxPerspectivePointSize) + \".0);\");\n } else {\n src.push(\"gl_PointSize = pointSize;\");\n }\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n const renderContext = this.renderContext;\n const view = renderContext.view;\n const clipping = view.getNumAllocatedSectionPlanes() > 0;\n this.fragmentHeader(src);\n src.push(\"#ifdef GL_FRAGMENT_PRECISION_HIGH\");\n src.push(\"precision highp float;\");\n src.push(\"precision highp int;\");\n src.push(\"#else\");\n src.push(\"precision mediump float;\");\n src.push(\"precision mediump int;\");\n src.push(\"#endif\");\n if (clipping) {\n src.push(\"in vec4 vWorldPosition;\");\n src.push(\"in float vFlags;\");\n for (let i = 0, len = view.getNumAllocatedSectionPlanes(); i < len; i++) {\n src.push(\"uniform bool sectionPlaneActive\" + i + \";\");\n src.push(\"uniform vec3 sectionPlanePos\" + i + \";\");\n src.push(\"uniform vec3 sectionPlaneDir\" + i + \";\");\n }\n }\n src.push(\"uniform vec4 color;\");\n src.push(\"out vec4 outColor;\");\n src.push(\"void main(void) {\");\n if (view.pointsMaterial.roundPoints) {\n src.push(\" vec2 cxy = 2.0 * gl_PointCoord - 1.0;\");\n src.push(\" float r = dot(cxy, cxy);\");\n src.push(\" if (r > 1.0) {\");\n src.push(\" discard;\");\n src.push(\" }\");\n }\n this.fragmentSlicingLogic(src);\n src.push(\"outColor = color;\");\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n // this.bind(renderPass);\n // const view = this.renderContext.view;\n // const viewIndex = view.viewIndex;\n // let material;\n // if (renderPass === RENDER_PASSES.SILHOUETTE_XRAYED) {\n // material = view.xrayMaterial;\n // } else if (renderPass === RENDER_PASSES.SILHOUETTE_HIGHLIGHTED) {\n // material = view.highlightMaterial;\n // } else if (renderPass === RENDER_PASSES.SILHOUETTE_SELECTED) {\n // material = view.selectedMaterial;\n // } else {\n // return;\n // }\n // const gl = this.renderContext.gl;\n // const color = material.fillColor;\n // const alpha = material.fillAlpha;\n // gl.uniform4f(this.uniforms.silhouetteColor, color[0], color[1], color[2], alpha);\n // const attributes = this.attributes;\n // const renderState = vboBatchingLayer.renderState;\n // attributes.position.bindArrayBuffer(renderState.positionsBuf);\n // if (attributes.color) {\n // attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n // }\n // if (attributes.flags) {\n // attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n // }\n // gl.uniform1i(this.uniforms.renderPass, renderPass);\n // gl.uniformMatrix4fv(this.uniforms.positionsDecodeMatrix, false, renderState.positionsDecodeMatrix);\n // gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboBatchingLayer.rendererModel.worldMatrix);\n // gl.uniformMatrix4fv(this.uniforms.viewMatrix, false, createRTCViewMat(this.renderContext.view.camera.viewMatrix, renderState.origin));\n // gl.drawArrays(gl.POINTS, 0, renderState.positionsBuf.numItems);\n }\n}\n", "import {RenderContext} from \"../RenderContext\";\nimport {VBORenderer} from \"./VBORenderer\";\nimport {RenderStats} from \"../RenderStats\";\nimport {WebGLRenderer} from \"../WebGLRenderer\";\n\n/**\n * @private\n */\nexport class VBORendererSet {\n\n renderContext: RenderContext;\n renderStats: RenderStats;\n\n #colorRenderer: VBORenderer;\n #silhouetteRenderer: VBORenderer;\n #pickMeshRenderer: VBORenderer;\n #pickDepthRenderer: VBORenderer;\n #occlusionRenderer: VBORenderer;\n #snapInitRenderer: VBORenderer;\n #snapRenderer: VBORenderer;\n #edgesColorRenderer: VBORenderer;\n #edgesSilhouetteRenderer: VBORenderer;\n #depthRenderer: VBORenderer;\n #normalsRenderer: VBORenderer;\n\n constructor(webglRenderer: WebGLRenderer) {\n this.renderContext = webglRenderer.renderContext;\n this.renderStats = webglRenderer.renderStats;\n }\n\n _compile() {\n if (this.#colorRenderer && (!this.#colorRenderer.getValid())) {\n this.#colorRenderer.destroy();\n this.#colorRenderer = null;\n }\n if (this.#silhouetteRenderer && (!this.#silhouetteRenderer.getValid())) {\n this.#silhouetteRenderer.destroy();\n this.#silhouetteRenderer = null;\n }\n if (this.#edgesColorRenderer && (!this.#edgesColorRenderer.getValid())) {\n this.#edgesColorRenderer.destroy();\n this.#edgesColorRenderer = null;\n }\n if (this.#pickMeshRenderer && (!this.#pickMeshRenderer.getValid())) {\n this.#pickMeshRenderer.destroy();\n this.#pickMeshRenderer = null;\n }\n if (this.#pickDepthRenderer && (!this.#pickDepthRenderer.getValid())) {\n this.#pickDepthRenderer.destroy();\n this.#pickDepthRenderer = null;\n }\n if (this.#occlusionRenderer && this.#occlusionRenderer.getValid() === false) {\n this.#occlusionRenderer.destroy();\n this.#occlusionRenderer = null;\n }\n if (this.#snapInitRenderer && (!this.#snapInitRenderer.getValid())) {\n this.#snapInitRenderer.destroy();\n this.#snapInitRenderer = null;\n }\n if (this.#snapRenderer && (!this.#snapRenderer.getValid())) {\n this.#snapRenderer.destroy();\n this.#snapRenderer = null;\n }\n }\n\n _eagerCreate() {\n\n }\n\n get colorRenderer(): VBORenderer {\n if (!this.#colorRenderer) {\n this.#colorRenderer = this.createDrawRenderer();\n }\n return this.#colorRenderer;\n }\n\n get silhouetteRenderer(): VBORenderer {\n if (!this.#silhouetteRenderer) {\n this.#silhouetteRenderer = this.createSilhouetteRenderer();\n }\n return this.#silhouetteRenderer;\n }\n\n get edgesColorRenderer(): VBORenderer {\n if (!this.#edgesColorRenderer) {\n this.#edgesColorRenderer = this.createEdgesColorRenderer();\n }\n return this.#edgesColorRenderer;\n }\n\n get edgesSilhouetteRenderer(): VBORenderer {\n if (!this.#edgesSilhouetteRenderer) {\n this.#edgesSilhouetteRenderer = this.createEdgesSilhouetteRenderer();\n }\n return this.#edgesSilhouetteRenderer;\n }\n\n get pickMeshRenderer(): VBORenderer {\n if (!this.#pickMeshRenderer) {\n this.#pickMeshRenderer = this.createPickMeshRenderer();\n }\n return this.#pickMeshRenderer;\n }\n\n get pickDepthRenderer(): VBORenderer {\n if (!this.#pickDepthRenderer) {\n this.#pickDepthRenderer = this.createPickDepthRenderer();\n }\n return this.#pickDepthRenderer;\n }\n\n get occlusionRenderer(): VBORenderer {\n if (!this.#occlusionRenderer) {\n this.#occlusionRenderer = this.createOcclusionRenderer();\n }\n return this.#occlusionRenderer;\n }\n\n get snapInitRenderer(): VBORenderer {\n if (!this.#snapInitRenderer) {\n this.#snapInitRenderer = this.createSnapInitRenderer();\n }\n return this.#snapInitRenderer;\n }\n\n get snapRenderer(): VBORenderer {\n if (!this.#snapRenderer) {\n this.#snapInitRenderer = this.createSnapRenderer();\n }\n return this.#snapRenderer;\n }\n\n protected createDrawRenderer(): VBORenderer {\n return null;\n }\n\n protected createSilhouetteRenderer(): VBORenderer {\n return null;\n }\n\n protected createEdgesColorRenderer(): VBORenderer {\n return null;\n }\n\n protected createEdgesSilhouetteRenderer(): VBORenderer {\n return null;\n }\n\n protected createPickMeshRenderer(): VBORenderer {\n return null;\n }\n\n protected createPickDepthRenderer(): VBORenderer {\n return null;\n }\n\n protected createOcclusionRenderer(): VBORenderer {\n return null;\n }\n\n protected createSnapInitRenderer(): VBORenderer {\n return null;\n }\n\n protected createSnapRenderer(): VBORenderer {\n return null;\n }\n\n _destroy() {\n if (this.#colorRenderer) {\n this.#colorRenderer.destroy();\n }\n if (this.#silhouetteRenderer) {\n this.#silhouetteRenderer.destroy();\n }\n if (this.#edgesColorRenderer) {\n this.#edgesColorRenderer.destroy();\n }\n if (this.#edgesSilhouetteRenderer) {\n this.#edgesSilhouetteRenderer.destroy();\n }\n if (this.#pickMeshRenderer) {\n this.#pickMeshRenderer.destroy();\n }\n if (this.#pickDepthRenderer) {\n this.#pickDepthRenderer.destroy();\n }\n if (this.#occlusionRenderer) {\n this.#occlusionRenderer.destroy();\n }\n if (this.#snapInitRenderer) {\n this.#snapInitRenderer.destroy();\n }\n if (this.#snapRenderer) {\n this.#snapRenderer.destroy();\n }\n }\n}\n\n/**\n * @private\n */\nexport class RendererSetFactory {\n\n #rendererSets: {};\n\n #createRendererSet: (webglRenderer: WebGLRenderer) => VBORendererSet;\n\n constructor(createRendererSet:(webglRenderer)=> VBORendererSet) {\n this.#rendererSets = {};\n this.#createRendererSet = createRendererSet;\n }\n\n getRenderers(webglRenderer: WebGLRenderer): VBORendererSet {\n const viewerId = webglRenderer.viewer.id;\n let rendererSet = this.#rendererSets[viewerId];\n if (!rendererSet) {\n rendererSet = this.#createRendererSet(webglRenderer);\n this.#rendererSets[viewerId] = rendererSet;\n rendererSet._compile();\n rendererSet._eagerCreate();\n webglRenderer.onCompiled.sub(() => {\n rendererSet._compile();\n rendererSet._eagerCreate();\n });\n webglRenderer.onDestroyed.sub(() => {\n delete this.#rendererSets[viewerId];\n rendererSet._destroy();\n });\n }\n return rendererSet;\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {VBOPointsBatchingDrawRenderer} from \"./VBOPointsBatchingDrawRenderer\";\nimport {VBOPointsBatchingPickMeshRenderer} from \"./VBOPointsBatchingPickMeshRenderer\";\nimport {VBOPointsBatchingSilhouetteRenderer} from \"./VBOPointsBatchingSilhouetteRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBORenderer} from \"../../../VBORenderer\";\n\n\n/**\n * @private\n */\n class RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBOBatchingRenderer {\n return new VBOPointsBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOPointsBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOPointsBatchingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOPointsBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n const view = this.renderContext.view;\n return `${view.getLightsHash()}-${view.getSectionPlanesHash()}`;\n }\n\n buildVertexShader(src: string[]):void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawLambertDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawLambertLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]) :void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawLambertDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawLambertLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexPickBatchingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexPickMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingEdgesDrawRenderer extends VBOBatchingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawEdgesColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingEdgesSilhouetteRenderer extends VBOBatchingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawEdgesSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOTrianglesBatchingDrawRenderer} from \"./VBOTrianglesBatchingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOTrianglesBatchingPickMeshRenderer} from \"./VBOTrianglesBatchingPickMeshRenderer\";\nimport {VBOTrianglesBatchingSilhouetteRenderer} from \"./VBOTrianglesBatchingSilhouetteRenderer\";\nimport {VBOTrianglesBatchingEdgesDrawRenderer} from \"./VBOTrianglesBatchingEdgesDrawRenderer\";\nimport {VBOTrianglesBatchingEdgesSilhouetteRenderer} from \"./VBOTrianglesBatchingEdgesSilhouetteRenderer\";\n\n\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOTrianglesBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOTrianglesBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesBatchingSilhouetteRenderer(this.renderContext);\n }\n\n createEdgesColorRenderer(): VBORenderer {\n return new VBOTrianglesBatchingEdgesDrawRenderer(this.renderContext);\n }\n\n createEdgesSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesBatchingEdgesSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOTrianglesBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "\n/**\n * @private\n */\nexport class VBOInstancingBuffer {\n\n maxVerts: number;\n maxIndices: number;\n positions: number[];\n colors: number[];\n uv: number[];\n normals: number[];\n pickColors: number[];\n offsets: number[];\n indices: number[];\n edgeIndices: number[];\n modelNormalMatrixCol0: number[];\n modelNormalMatrixCol1: number[];\n modelNormalMatrixCol2: number[];\n modelMatrixCol0: number[];\n modelMatrixCol1: number[];\n modelMatrixCol2: number[];\n modelMatrix: number[];\n\n constructor() {\n this.positions = [];\n this.colors = [];\n this.uv = [];\n this.normals = [];\n this.pickColors = [];\n this.offsets = [];\n this.indices = [];\n this.edgeIndices = [];\n this.modelMatrixCol0 = [];\n this.modelMatrixCol1 = [];\n this.modelMatrixCol2 = [];\n }\n}\n\n", "import {VBOInstancingLayerParams} from \"./VBOInstancingLayerParams\";\nimport {WebGLRendererModel} from \"../../WebGLRendererModel\";\nimport {SceneGeometry, SceneMesh} from \"@xeokit/scene\";\nimport {WebGLArrayBuf} from \"@xeokit/webglutils\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {VBOInstancingRenderState} from \"./VBOInstancingRenderState\";\nimport {collapseAABB3, createOBB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {MeshCounts} from \"../../MeshCounts\";\nimport {VBOInstancingBuffer} from \"./VBOInstancingBuffer\";\nimport {RenderContext} from \"../../RenderContext\";\nimport {Layer} from \"../../Layer\";\nimport {SDKError} from \"@xeokit/core\";\nimport {createMat4, createVec3, createVec4} from \"@xeokit/matrix\";\nimport {SCENE_OBJECT_FLAGS} from \"../../SCENE_OBJECT_FLAGS\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\nimport {LayerMeshParams} from \"../../LayerMeshParams\";\nimport {VBORendererSet} from \"../VBORendererSet\";\n\nconst tempUint8Vec4 = new Uint8Array(4);\nconst tempFloat32 = new Float32Array(1);\nconst tempVec4a = createVec4([0, 0, 0, 1]);\nconst tempVec3fa = new Float32Array(3);\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\nconst tempVec3e = createVec3();\nconst tempVec3f = createVec3();\nconst tempVec3g = createVec3();\n\nconst tempFloat32Vec4 = new Float32Array(4);\n\n/**\n * @private\n */\nexport class VBOInstancingLayer implements Layer {\n\n rendererModel: WebGLRendererModel;\n renderState: VBOInstancingRenderState;\n #rendererSet: VBORendererSet;\n\n #aabb: FloatArrayParam;\n layerIndex: number;\n sortId: string;\n primitive: number;\n aabbDirty: boolean;\n meshCounts: MeshCounts[];\n #buffer: VBOInstancingBuffer;\n #meshes: any[];\n #portions: any[];\n #built: boolean;\n renderContext: RenderContext;\n\n constructor(layerParams: VBOInstancingLayerParams, rendererSet: VBORendererSet) {\n\n console.info(\"Creating VBOInstancingLayer\");\n\n this.renderContext = layerParams.renderContext;\n this.rendererModel = layerParams.rendererModel;\n this.sortId = `VBOInstancingLayer-${layerParams.sceneGeometry.primitive}`;\n this.layerIndex = layerParams.layerIndex;\n\n this.#buffer = new VBOInstancingBuffer();\n\n this.#rendererSet = rendererSet;\n\n this.#aabb = collapseAABB3();\n\n this.meshCounts = [];\n for (let i =0, len = this.renderContext.viewer.viewList.length; i < len; i++) {\n this.meshCounts.push(new MeshCounts());\n }\n\n const geometry = layerParams.sceneGeometry;\n const aabb = geometry.aabb;\n const positionsDecompressOffset = createVec3([aabb[0], aabb[1], aabb[2]]);\n const positionsDecompressScale = createVec3([(aabb[3] - aabb[0]) / 65535, (aabb[4] - aabb[1]) / 65535, (aabb[5] - aabb[2]) / 65535]);\n\n this.renderState = {\n numVertices: 0,\n numIndices: 0,\n numEdgeIndices: 0,\n numInstances: 0,\n obb: createOBB3(),\n origin: createVec3(layerParams.origin),\n sceneGeometry: layerParams.sceneGeometry,\n textureSet: layerParams.textureSet,\n pbrSupported: false,\n positionsDecompressScale,\n positionsDecompressOffset,\n colorsBuf: [],\n flagsBufs: [],\n modelMatrixBuf: null,\n modelMatrixCol0Buf: null,\n modelMatrixCol1Buf: null,\n modelMatrixCol2Buf: null,\n modelNormalMatrixCol0Buf: null,\n modelNormalMatrixCol1Buf: null,\n modelNormalMatrixCol2Buf: null,\n pickColorsBuf: null\n };\n\n this.#portions = [];\n this.#meshes = [];\n\n this.#aabb = collapseAABB3();\n this.aabbDirty = true;\n\n this.#built = false;\n }\n\n get hash() {\n return `${this.primitive}`;\n }\n\n get aabb() {\n if (this.aabbDirty) {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.#meshes.length; i < len; i++) {\n expandAABB3(this.#aabb, this.#meshes[i].aabb);\n }\n this.aabbDirty = false;\n }\n return this.#aabb;\n }\n\n canCreateLayerMesh(sceneGeometry: SceneGeometry): boolean {\n if (this.#built) {\n throw new SDKError(\"Already built\");\n }\n return true; // TODO\n }\n\n createLayerMesh(layerMeshParams: LayerMeshParams, sceneMesh: SceneMesh) {\n\n const color = sceneMesh.color;\n const opacity = sceneMesh.opacity !== null && sceneMesh.opacity !== undefined ? sceneMesh.opacity : 255;\n const meshMatrix = sceneMesh.rtcMatrix;\n const pickColor = layerMeshParams.pickColor;\n\n if (this.#built) {\n throw \"Already finalized\";\n }\n\n const r = color[0] * 255;\n const g = color[1] * 255;\n const b = color[2] * 255;\n\n this.#buffer.colors.push(r);\n this.#buffer.colors.push(g);\n this.#buffer.colors.push(b);\n this.#buffer.colors.push(opacity);\n\n this.#buffer.modelMatrixCol0.push(meshMatrix[0]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[4]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[8]);\n this.#buffer.modelMatrixCol0.push(meshMatrix[12]);\n\n this.#buffer.modelMatrixCol1.push(meshMatrix[1]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[5]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[9]);\n this.#buffer.modelMatrixCol1.push(meshMatrix[13]);\n\n this.#buffer.modelMatrixCol2.push(meshMatrix[2]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[6]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[10]);\n this.#buffer.modelMatrixCol2.push(meshMatrix[14]);\n\n // Per-vertex pick colors\n\n this.#buffer.pickColors.push(...pickColor);\n\n this.renderState.numInstances++;\n\n const layerMeshIndex = this.#portions.length;\n\n const portion = {};\n this.#portions.push(portion);\n\n for (let viewIndex = 0, len = this.meshCounts.length; viewIndex < len; viewIndex++) {\n this.meshCounts[viewIndex].numMeshes++;\n this.rendererModel.meshCounts[viewIndex].numMeshes++;\n }\n\n this.#meshes.push(sceneMesh);\n return layerMeshIndex;\n }\n\n build() {\n if (this.#built) {\n return;\n }\n const renderState = this.renderState;\n const sceneGeometry = renderState.sceneGeometry;\n const numViews = this.meshCounts.length;\n const textureSet = renderState.textureSet;\n const gl = this.renderContext.gl;\n const colorsLength = this.#buffer.colors.length;\n const flagsLength = colorsLength / 4;\n if (colorsLength > 0) {\n let notNormalized = false;\n const colors = new Uint8Array(this.#buffer.colors);\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.colorsBuf[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, colors, this.#buffer.colors.length, 4, gl.DYNAMIC_DRAW, notNormalized);\n }\n this.#buffer.colors = []; // Release memory\n }\n if (flagsLength > 0) {\n // Because we only build flags arrays here,\n // get their length from the colors array\n let notNormalized = false;\n const flagsArray = new Float32Array(flagsLength);\n for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n renderState.flagsBufs[viewIndex] = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, flagsArray, flagsLength, 1, gl.DYNAMIC_DRAW, notNormalized);\n }\n }\n const positionsCompressed = sceneGeometry.positionsCompressed;\n const indices = sceneGeometry.indices;\n const edgeIndices = sceneGeometry.edgeIndices;\n const uvsCompressed = sceneGeometry.uvsCompressed;\n const colorsCompressed = sceneGeometry.colorsCompressed;\n if (positionsCompressed && positionsCompressed.length > 0) {\n const normalized = false;\n renderState.positionsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint16Array(positionsCompressed), positionsCompressed.length, 3, gl.STATIC_DRAW, normalized);\n }\n if (indices && indices.length > 0) {\n renderState.indicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, new Uint32Array(indices), indices.length, 1, gl.STATIC_DRAW);\n renderState.numIndices = indices.length;\n }\n if (edgeIndices && edgeIndices.length > 0) {\n renderState.edgeIndicesBuf = new WebGLArrayBuf(gl, gl.ELEMENT_ARRAY_BUFFER, new Uint32Array(edgeIndices), edgeIndices.length, 1, gl.STATIC_DRAW);\n renderState.numEdgeIndices = edgeIndices.length;\n }\n // if (colorsCompressed && colorsCompressed.length > 0) {\n // const notNormalized = false;\n // renderState.colorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(colorsCompressed), colorsCompressed.length, 4, gl.STATIC_DRAW, notNormalized);\n // }\n if (uvsCompressed && uvsCompressed.length > 0) {\n renderState.uvDecodeMatrix = sceneGeometry.uvsDecompressMatrix;\n renderState.uvBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(uvsCompressed), uvsCompressed.length, 2, gl.STATIC_DRAW, false);\n }\n if (this.#buffer.modelMatrixCol0.length > 0) {\n const normalized = false;\n renderState.modelMatrixCol0Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol0), this.#buffer.modelMatrixCol0.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelMatrixCol1Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol1), this.#buffer.modelMatrixCol1.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelMatrixCol2Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelMatrixCol2), this.#buffer.modelMatrixCol2.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.modelMatrixCol0 = [];\n this.#buffer.modelMatrixCol1 = [];\n this.#buffer.modelMatrixCol2 = [];\n if (renderState.normalsBuf) {\n renderState.modelNormalMatrixCol0Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol0), this.#buffer.modelNormalMatrixCol0.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelNormalMatrixCol1Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol1), this.#buffer.modelNormalMatrixCol1.length, 4, gl.STATIC_DRAW, normalized);\n renderState.modelNormalMatrixCol2Buf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Float32Array(this.#buffer.modelNormalMatrixCol2), this.#buffer.modelNormalMatrixCol2.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.modelNormalMatrixCol0 = [];\n this.#buffer.modelNormalMatrixCol1 = [];\n this.#buffer.modelNormalMatrixCol2 = [];\n }\n }\n if (this.#buffer.pickColors.length > 0) {\n const normalized = false;\n renderState.pickColorsBuf = new WebGLArrayBuf(gl, gl.ARRAY_BUFFER, new Uint8Array(this.#buffer.pickColors), this.#buffer.pickColors.length, 4, gl.STATIC_DRAW, normalized);\n this.#buffer.pickColors = []; // Release memory\n }\n renderState.pbrSupported\n = !!renderState.metallicRoughnessBuf\n && !!renderState.uvBuf\n && !!renderState.normalsBuf\n && !!textureSet\n && !!textureSet.colorTexture\n && !!textureSet.metallicRoughnessTexture;\n renderState.colorTextureSupported\n = !!renderState.uvBuf\n && !!textureSet\n && !!textureSet.colorTexture;\n this.renderState.sceneGeometry = null;\n this.#built = true;\n }\n\n initFlags(viewIndex: number, layerMeshIndex, flags, meshTransparent) {\n const layerMeshCounts = this.meshCounts[viewIndex];\n const modelMeshCounts = this.rendererModel.meshCounts[viewIndex];\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n layerMeshCounts.numVisible++;\n modelMeshCounts.numVisible++;\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n layerMeshCounts.numHighlighted++;\n modelMeshCounts.numHighlighted++;\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n layerMeshCounts.numXRayed++;\n modelMeshCounts.numXRayed++;\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n layerMeshCounts.numSelected++;\n modelMeshCounts.numSelected++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n layerMeshCounts.numClippable++;\n modelMeshCounts.numClippable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n layerMeshCounts.numPickable++;\n modelMeshCounts.numPickable++;\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n layerMeshCounts.numCulled++;\n modelMeshCounts.numCulled++;\n }\n if (meshTransparent) {\n layerMeshCounts.numTransparent++;\n modelMeshCounts.numTransparent++;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, meshTransparent);\n }\n\n setLayerMeshVisible(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.VISIBLE) {\n this.meshCounts[viewIndex].numVisible++;\n this.rendererModel.meshCounts[viewIndex].numVisible++;\n } else {\n this.meshCounts[viewIndex].numVisible--;\n this.rendererModel.meshCounts[viewIndex].numVisible--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshHighlighted(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED) {\n this.meshCounts[viewIndex].numHighlighted++;\n this.rendererModel.meshCounts[viewIndex].numHighlighted++;\n } else {\n this.meshCounts[viewIndex].numHighlighted--;\n this.rendererModel.meshCounts[viewIndex].numHighlighted--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshXRayed(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.XRAYED) {\n this.meshCounts[viewIndex].numXRayed++;\n this.rendererModel.meshCounts[viewIndex].numXRayed++;\n } else {\n this.meshCounts[viewIndex].numXRayed--;\n this.rendererModel.meshCounts[viewIndex].numXRayed--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshSelected(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.SELECTED) {\n this.meshCounts[viewIndex].numSelected++;\n this.rendererModel.meshCounts[viewIndex].numSelected++;\n } else {\n this.meshCounts[viewIndex].numSelected--;\n this.rendererModel.meshCounts[viewIndex].numSelected--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshClippable(viewIndex: number, layerMeshIndex: number, flags: number): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.CLIPPABLE) {\n this.meshCounts[viewIndex].numClippable++;\n this.rendererModel.meshCounts[viewIndex].numClippable++;\n } else {\n this.meshCounts[viewIndex].numClippable--;\n this.rendererModel.meshCounts[viewIndex].numClippable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags);\n }\n\n setCollidable(viewIndex: number, layerMeshIndex: number, flags: number) {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n }\n\n setLayerMeshPickable(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.PICKABLE) {\n this.meshCounts[viewIndex].numPickable++;\n this.rendererModel.meshCounts[viewIndex].numPickable++;\n } else {\n this.meshCounts[viewIndex].numPickable--;\n this.rendererModel.meshCounts[viewIndex].numPickable--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshCulled(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n if (flags & SCENE_OBJECT_FLAGS.CULLED) {\n this.meshCounts[viewIndex].numCulled++;\n this.rendererModel.meshCounts[viewIndex].numCulled++;\n } else {\n this.meshCounts[viewIndex].numCulled--;\n this.rendererModel.meshCounts[viewIndex].numCulled--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshColor(viewIndex: number, layerMeshIndex: number, color: FloatArrayParam): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n tempUint8Vec4[0] = color[0];\n tempUint8Vec4[1] = color[1];\n tempUint8Vec4[2] = color[2];\n tempUint8Vec4[3] = color[3];\n if (this.renderState.colorsBuf[viewIndex]) {\n this.renderState.colorsBuf[viewIndex].setData(tempUint8Vec4, layerMeshIndex * 4);\n }\n }\n\n setLayerMeshTransparent(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean): void {\n if (transparent) {\n this.meshCounts[viewIndex].numTransparent++;\n this.rendererModel.meshCounts[viewIndex].numTransparent++;\n } else {\n this.meshCounts[viewIndex].numTransparent--;\n this.rendererModel.meshCounts[viewIndex].numTransparent--;\n }\n this.setLayerMeshFlags(viewIndex, layerMeshIndex, flags, transparent);\n }\n\n setLayerMeshFlags(viewIndex: number, layerMeshIndex: number, flags: number, transparent: boolean = false): void {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n const view = this.renderContext.viewer.viewList[viewIndex];\n const visible = !!(flags & SCENE_OBJECT_FLAGS.VISIBLE);\n const xrayed = !!(flags & SCENE_OBJECT_FLAGS.XRAYED);\n const highlighted = !!(flags & SCENE_OBJECT_FLAGS.HIGHLIGHTED);\n const selected = !!(flags & SCENE_OBJECT_FLAGS.SELECTED);\n const pickable = !!(flags & SCENE_OBJECT_FLAGS.PICKABLE);\n const culled = !!(flags & SCENE_OBJECT_FLAGS.CULLED);\n let colorFlag;\n if (!visible || culled || xrayed\n || (highlighted && !view.highlightMaterial.glowThrough)\n || (selected && !view.selectedMaterial.glowThrough)) {\n colorFlag = RENDER_PASSES.NOT_RENDERED;\n } else {\n if (transparent) {\n colorFlag = RENDER_PASSES.COLOR_TRANSPARENT;\n } else {\n colorFlag = RENDER_PASSES.COLOR_OPAQUE;\n }\n }\n let silhouetteFlag;\n if (!visible || culled) {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n } else if (selected) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_SELECTED;\n } else if (highlighted) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_HIGHLIGHTED;\n } else if (xrayed) {\n silhouetteFlag = RENDER_PASSES.SILHOUETTE_XRAYED;\n } else {\n silhouetteFlag = RENDER_PASSES.NOT_RENDERED;\n }\n const pickFlag = (visible && !culled && pickable) ? RENDER_PASSES.PICK : RENDER_PASSES.NOT_RENDERED;\n const clippableFlag = !!(flags & SCENE_OBJECT_FLAGS.CLIPPABLE) ? 1 : 0;\n let vertFlag = 0;\n vertFlag |= colorFlag;\n vertFlag |= silhouetteFlag << 4;\n vertFlag |= pickFlag << 8;\n vertFlag |= clippableFlag << 12;\n tempFloat32[0] = vertFlag;\n if (this.renderState.flagsBufs[viewIndex]) {\n this.renderState.flagsBufs[viewIndex].setData(tempFloat32, layerMeshIndex);\n }\n }\n\n setMatrix(viewIndex: number, layerMeshIndex: number, matrix: FloatArrayParam) {\n if (!this.#built) {\n throw \"Not finalized\";\n }\n ////////////////////////////////////////\n // TODO: Update portion matrix\n ////////////////////////////////////////\n const offset = layerMeshIndex * 4;\n tempFloat32Vec4[0] = matrix[0];\n tempFloat32Vec4[1] = matrix[4];\n tempFloat32Vec4[2] = matrix[8];\n tempFloat32Vec4[3] = matrix[12];\n this.renderState.modelMatrixCol0Buf.setData(tempFloat32Vec4, offset);\n tempFloat32Vec4[0] = matrix[1];\n tempFloat32Vec4[1] = matrix[5];\n tempFloat32Vec4[2] = matrix[9];\n tempFloat32Vec4[3] = matrix[13];\n this.renderState.modelMatrixCol1Buf.setData(tempFloat32Vec4, offset);\n tempFloat32Vec4[0] = matrix[2];\n tempFloat32Vec4[1] = matrix[6];\n tempFloat32Vec4[2] = matrix[10];\n tempFloat32Vec4[3] = matrix[14];\n this.renderState.modelMatrixCol2Buf.setData(tempFloat32Vec4, offset);\n }\n\n drawColorOpaque(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawColorTranslucent(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0 ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n if (this.#rendererSet.colorRenderer) {\n this.#rendererSet.colorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawDepth(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.depthRenderer) {\n // this.#rendererSet.depthRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses depth (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawNormals(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numXRayed === this.meshCounts[viewIndex].numMeshes) {\n return;\n }\n // if (this.#rendererSet.normalsRenderer) {\n // this.#rendererSet.normalsRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE); // Assume whatever post-effect uses normals (eg SAO) does not apply to transparent objects\n // }\n }\n\n drawSilhouetteXRayed(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawSilhouetteHighlighted(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawSilhouetteSelected(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.silhouetteRenderer) {\n this.#rendererSet.silhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesColorOpaque(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawEdgesColorTranslucent(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numTransparent === 0) {\n return;\n }\n if (this.#rendererSet.edgesColorRenderer) {\n this.#rendererSet.edgesColorRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_TRANSPARENT);\n }\n }\n\n drawEdgesHighlighted(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numHighlighted === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_HIGHLIGHTED);\n }\n }\n\n drawEdgesSelected(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numSelected === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_SELECTED);\n }\n }\n\n drawEdgesXRayed(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0 ||\n this.meshCounts[viewIndex].numXRayed === 0) {\n return;\n }\n if (this.#rendererSet.edgesSilhouetteRenderer) {\n this.#rendererSet.edgesSilhouetteRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.SILHOUETTE_XRAYED);\n }\n }\n\n drawOcclusion(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.occlusionRenderer) {\n this.#rendererSet.occlusionRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.COLOR_OPAQUE);\n }\n }\n\n drawShadow(): void {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes ||\n // this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.shadowRenderer) {\n // this.#rendererSet.shadowRenderer.render( this, RENDER_PASSES.COLOR_OPAQUE);\n // }\n }\n\n drawPickMesh(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickMeshRenderer) {\n this.#rendererSet.pickMeshRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickDepths(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.pickDepthRenderer) {\n this.#rendererSet.pickDepthRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnapInit(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapInitRenderer) {\n this.#rendererSet.snapInitRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawSnap(): void {\n const viewIndex = this.renderContext.view.viewIndex;\n if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n return;\n }\n if (this.#rendererSet.snapRenderer) {\n this.#rendererSet.snapRenderer.renderVBOInstancingLayer(this, RENDER_PASSES.PICK);\n }\n }\n\n drawPickNormals(): void {\n // if (this.meshCounts[viewIndex].numCulled === this.meshCounts[viewIndex].numMeshes || this.meshCounts[viewIndex].numVisible === 0) {\n // return;\n // }\n // if (this.#rendererSet.pickNormalsRenderer) {\n // this.#rendererSet.pickNormalsRenderer.render( this, RENDER_PASSES.PICK);\n // }\n }\n\n destroy() {\n const renderState = this.renderState;\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.colorsBuf[viewIndex]) {\n renderState.colorsBuf[viewIndex].destroy();\n renderState.colorsBuf[viewIndex] = null;\n }\n }\n if (renderState.metallicRoughnessBuf) {\n renderState.metallicRoughnessBuf.destroy();\n renderState.metallicRoughnessBuf = null;\n }\n for (let viewIndex = 0, len = renderState.flagsBufs.length; viewIndex < len; viewIndex++) {\n if (renderState.flagsBufs[viewIndex]) {\n renderState.flagsBufs[viewIndex].destroy();\n renderState.flagsBufs[viewIndex] = null;\n }\n }\n if (renderState.modelMatrixCol0Buf) {\n renderState.modelMatrixCol0Buf.destroy();\n renderState.modelMatrixCol0Buf = null;\n }\n if (renderState.modelMatrixCol1Buf) {\n renderState.modelMatrixCol1Buf.destroy();\n renderState.modelMatrixCol1Buf = null;\n }\n if (renderState.modelMatrixCol2Buf) {\n renderState.modelMatrixCol2Buf.destroy();\n renderState.modelMatrixCol2Buf = null;\n }\n if (renderState.modelNormalMatrixCol0Buf) {\n renderState.modelNormalMatrixCol0Buf.destroy();\n renderState.modelNormalMatrixCol0Buf = null;\n }\n if (renderState.modelNormalMatrixCol1Buf) {\n renderState.modelNormalMatrixCol1Buf.destroy();\n renderState.modelNormalMatrixCol1Buf = null;\n }\n if (renderState.modelNormalMatrixCol2Buf) {\n renderState.modelNormalMatrixCol2Buf.destroy();\n renderState.modelNormalMatrixCol2Buf = null;\n }\n if (renderState.pickColorsBuf) {\n renderState.pickColorsBuf.destroy();\n renderState.pickColorsBuf = null;\n }\n if (renderState.indicesBuf) {\n renderState.indicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n if (renderState.edgeIndicesBuf) {\n renderState.edgeIndicesBuf.destroy();\n renderState.indicesBuf = null;\n }\n this.renderState = null;\n }\n\n commitRendererState(viewIndex: number): void {\n }\n\n isEmpty(): boolean {\n return false;\n }\n\n setLayerMeshCollidable(layerMeshIndex, flags): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshMatrix(layerMeshIndex: number, matrix: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n\n setLayerMeshOffset(viewIndex: number, layerMeshIndex: number, offset: FloatArrayParam): void {\n if (!this.#built) {\n throw new SDKError(\"Not built\");\n }\n }\n}\n", "import {VBOInstancingLayer} from \"./VBOInstancingLayer\";\nimport {createRTCViewMat} from \"@xeokit/rtc\";\nimport {VBORenderer} from \"../VBORenderer\";\nimport {RENDER_PASSES} from \"../../RENDER_PASSES\";\n\n/**\n * @private\n */\nexport abstract class VBOInstancingRenderer extends VBORenderer {\n\n renderVBOInstancingLayer(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n if (!this.bind(renderPass)) {\n return;\n }\n const attributes = this.attributes;\n const renderState = vboInstancingLayer.renderState;\n const view = this.renderContext.view;\n const viewIndex = view.viewIndex;\n const gl = this.renderContext.gl;\n gl.uniform1i(this.uniforms.renderPass, renderPass);\n attributes.position.bindArrayBuffer(renderState.positionsBuf);\n if (attributes.uv) {\n attributes.uv.bindArrayBuffer(renderState.uvBuf);\n }\n if (attributes.flags) {\n attributes.flags.bindArrayBuffer(renderState.flagsBufs[viewIndex]);\n gl.vertexAttribDivisor(attributes.flags.location, 1);\n }\n if (attributes.color) {\n attributes.color.bindArrayBuffer(renderState.colorsBuf[viewIndex]);\n gl.vertexAttribDivisor(attributes.color.location, 1);\n }\n if (attributes.pickColor) {\n attributes.pickColor.bindArrayBuffer(renderState.pickColorsBuf);\n gl.vertexAttribDivisor(attributes.pickColor.location, 1);\n }\n if (attributes.intensity) {\n // attributes.intensity.bindArrayBuffer(renderState.pointIntensitiesBuf);\n }\n if (attributes.modelMatrixCol0) {\n attributes.modelMatrixCol0.bindArrayBuffer(renderState.modelMatrixCol0Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol0.location, 1);\n }\n if (attributes.modelMatrixCol1) {\n attributes.modelMatrixCol1.bindArrayBuffer(renderState.modelMatrixCol1Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol1.location, 1);\n }\n if (attributes.modelMatrixCol2) {\n attributes.modelMatrixCol2.bindArrayBuffer(renderState.modelMatrixCol2Buf);\n gl.vertexAttribDivisor(attributes.modelMatrixCol2.location, 1);\n }\n gl.uniform3fv(this.uniforms.positionsDecompressOffset, renderState.positionsDecompressOffset);\n gl.uniform3fv(this.uniforms.positionsDecompressScale, renderState.positionsDecompressScale);\n gl.uniformMatrix4fv(this.uniforms.worldMatrix, false, vboInstancingLayer.rendererModel.worldMatrix);\n gl.uniformMatrix4fv(this.uniforms.viewMatrix, false,\n createRTCViewMat(\n renderPass === RENDER_PASSES.PICK\n ? this.renderContext.pickViewMatrix\n : this.renderContext.view.camera.viewMatrix,\n renderState.origin));\n if (renderState.indicesBuf) {\n renderState.indicesBuf.bind();\n }\n this.drawVBOInstancingLayerPrimitives(vboInstancingLayer, renderPass);\n }\n\n abstract drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number);\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingDrawRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return `${this.lambertShadingHash}-${this.slicingHash}`;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawLambertDefs(src);\n // this.vertexColorMainOpenBlock(src);\n src.push(\"void main(void) {\");\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawLambertLogic(src);\n this.vertexSlicingLogic(src);\n }\n // this.vertexColorMainCloseBlock(src);\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawLambertDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawLambertLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingSilhouetteRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {AmbientLight, DirLight, PointLight} from \"@xeokit/viewer\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingPickMeshRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexPickInstancingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexPickMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]) : void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.TRIANGLES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingEdgesDrawRenderer extends VBOInstancingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawEdgesColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\nimport {RenderContext} from \"../../../../RenderContext\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingEdgesSilhouetteRenderer extends VBOInstancingRenderer {\n\n constructor(renderContext: RenderContext) {\n super(renderContext, { edges: true});\n }\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawEdgesSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawEdgesSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawEdgesSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawEdgesSilhouetteLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.edgeIndicesBuf.numItems, renderState.edgeIndicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOTrianglesInstancingDrawRenderer} from \"./VBOTrianglesInstancingDrawRenderer\";\nimport {VBOTrianglesInstancingSilhouetteRenderer} from \"./VBOTrianglesInstancingSilhouetteRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOTrianglesInstancingPickMeshRenderer} from \"./VBOTrianglesInstancingPickMeshRenderer\";\nimport {VBOTrianglesInstancingEdgesDrawRenderer} from \"./VBOTrianglesInstancingEdgesDrawRenderer\";\nimport {VBOTrianglesInstancingEdgesSilhouetteRenderer} from \"./VBOTrianglesInstancingEdgesSilhouetteRenderer\";\n\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOTrianglesInstancingDrawRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesInstancingSilhouetteRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOTrianglesInstancingPickMeshRenderer(this.renderContext);\n }\n\n createEdgesColorRenderer(): VBORenderer {\n return new VBOTrianglesInstancingEdgesDrawRenderer(this.renderContext);\n }\n\n createEdgesSilhouetteRenderer(): VBORenderer {\n return new VBOTrianglesInstancingEdgesSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOInstancingLayer} from \"../VBOInstancingLayer\";\nimport {VBOInstancingLayerParams} from \"../VBOInstancingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOTrianglesInstancingLayer extends VBOInstancingLayer {\n constructor(VBOInstancingLayerParams: VBOInstancingLayerParams) {\n super(VBOInstancingLayerParams, rendererFactory.getRenderers(VBOInstancingLayerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingDrawRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawFlatColorDefs(src);\n this.vertexColorMainOpenBlock(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawFlatColorLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingPickMeshRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n this.openVertexPickMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n }\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n {\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n }\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {VBOInstancingLayer} from \"../../VBOInstancingLayer\";\nimport {VBOInstancingRenderer} from \"../../VBOInstancingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingSilhouetteRenderer extends VBOInstancingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]): void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexInstancingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n this.openVertexSilhouetteMain(src);\n {\n this.vertexDrawInstancingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n }\n this.vertexColorMainCloseBlock(src);\n }\n\n buildFragmentShader(src: string[]): void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOInstancingLayerPrimitives(vboInstancingLayer: VBOInstancingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboInstancingLayer.renderState;\n gl.drawElementsInstanced(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0, renderState.numInstances);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOLinesInstancingDrawRenderer} from \"./VBOLinesInstancingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOLinesInstancingPickMeshRenderer} from \"./VBOLinesInstancingPickMeshRenderer\";\nimport {VBOLinesInstancingSilhouetteRenderer} from \"./VBOLinesInstancingSilhouetteRenderer\";\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOLinesInstancingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOLinesInstancingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOLinesInstancingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOInstancingLayer} from \"../VBOInstancingLayer\";\nimport {VBOInstancingLayerParams} from \"../VBOInstancingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOLinesInstancingLayer extends VBOInstancingLayer {\n constructor(layerParams: VBOInstancingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingDrawRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]):void {\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`if ((int(flags) & 0xF) != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawFlatColorLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]) :void{\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawFlatColorDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawFlatColorLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingPickMeshRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`int colorFlag = int(flags) & 0xF;`);\n src.push(`if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexPickMeshShadingLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentPickMeshShadingDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentPickMeshShadingLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {VBOBatchingLayer} from \"../../VBOBatchingLayer\";\nimport {VBOBatchingRenderer} from \"../../VBOBatchingRenderer\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingSilhouetteRenderer extends VBOBatchingRenderer {\n\n getHash(): string {\n return this.slicingHash;\n }\n\n buildVertexShader(src: string[]) :void{\n this.vertexHeader(src);\n this.vertexCommonDefs(src);\n this.vertexBatchingTransformDefs(src);\n this.vertexSlicingDefs(src);\n this.vertexDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n // colorFlag = NOT_RENDERED | COLOR_OPAQUE | COLOR_TRANSPARENT\n // renderPass = COLOR_OPAQUE\n src.push(`int colorFlag = int(flags) & 0xF;`);\n src.push(`if (colorFlag != renderPass) {`);\n src.push(\" gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\"); // Cull vertex\n src.push(\"} else {\");\n this.vertexDrawBatchingTransformLogic(src);\n this.vertexDrawSilhouetteLogic(src);\n this.vertexSlicingLogic(src);\n src.push(\"}\");\n src.push(\"}\");\n }\n\n buildFragmentShader(src: string[]):void {\n this.fragmentHeader(src);\n this.fragmentPrecisionDefs(src);\n this.fragmentSlicingDefs(src);\n this.fragmentDrawSilhouetteDefs(src);\n src.push(\"void main(void) {\");\n this.fragmentSlicingLogic(src);\n this.fragmentDrawSilhouetteLogic(src);\n src.push(\"}\");\n }\n\n drawVBOBatchingLayerPrimitives(vboBatchingLayer: VBOBatchingLayer, renderPass: number): void {\n const gl = this.renderContext.gl;\n const renderState = vboBatchingLayer.renderState;\n gl.drawElements(gl.LINES, renderState.indicesBuf.numItems, renderState.indicesBuf.itemType, 0);\n }\n}\n", "import {WebGLRenderer} from \"../../../../WebGLRenderer\";\nimport {RendererSetFactory, VBORendererSet} from \"../../../VBORendererSet\";\nimport {VBOLinesBatchingDrawRenderer} from \"./VBOLinesBatchingDrawRenderer\";\nimport {VBORenderer} from \"../../../VBORenderer\";\nimport {VBOLinesBatchingPickMeshRenderer} from \"./VBOLinesBatchingPickMeshRenderer\";\nimport {VBOLinesBatchingSilhouetteRenderer} from \"./VBOLinesBatchingSilhouetteRenderer\";\n\n/**\n * @private\n */\nclass RendererFactory extends VBORendererSet {\n\n createDrawRenderer(): VBORenderer {\n return new VBOLinesBatchingDrawRenderer(this.renderContext);\n }\n\n createPickMeshRenderer(): VBORenderer {\n return new VBOLinesBatchingPickMeshRenderer(this.renderContext);\n }\n\n createSilhouetteRenderer(): VBORenderer {\n return new VBOLinesBatchingSilhouetteRenderer(this.renderContext);\n }\n}\n\n/**\n * @private\n */\nexport const rendererFactory = new RendererSetFactory(((webglRenderer: WebGLRenderer): VBORendererSet => {\n return new RendererFactory(webglRenderer);\n}));\n", "import {VBOBatchingLayer} from \"../VBOBatchingLayer\";\nimport {VBOBatchingLayerParams} from \"../VBOBatchingLayerParams\";\nimport {rendererFactory} from \"./renderers/rendererFactory\";\n\n/**\n * @private\n */\nexport class VBOLinesBatchingLayer extends VBOBatchingLayer {\n constructor(layerParams: VBOBatchingLayerParams) {\n super(layerParams, rendererFactory.getRenderers(layerParams.renderContext.webglRenderer));\n }\n}\n", "import {Component, EventEmitter, SDKError, type TextureTranscoder} from \"@xeokit/core\";\nimport {createUUID, loadArraybuffer} from \"@xeokit/utils\";\nimport {collapseAABB3, expandAABB3} from \"@xeokit/boundaries\";\nimport {composeMat4, createMat4, createVec3, createVec4, eulerToQuat, identityQuat, mulMat4} from \"@xeokit/matrix\";\n\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {Viewer} from \"@xeokit/viewer\";\nimport {WebGLTexture} from \"@xeokit/webglutils\";\nimport type {\n RendererGeometry,\n RendererModel,\n RendererTexture,\n RendererTextureSet,\n SceneGeometry,\n SceneMesh,\n SceneModel,\n SceneObject,\n SceneTexture,\n SceneTextureSet\n} from \"@xeokit/scene\";\nimport type {WebGLRenderer} from \"./WebGLRenderer\";\n\nimport type {RenderContext} from \"./RenderContext\";\nimport {WebGLRendererGeometry} from \"./WebGLRendererGeometry\";\n\nimport {WebGLRendererTexture} from \"./WebGLRendererTexture\";\nimport {WebGLRendererObject} from \"./WebGLRendererObject\";\nimport {WebGLRendererMesh} from \"./WebGLRendererMesh\";\nimport {WebGLRendererTextureSet} from \"./WebGLRendererTextureSet\";\nimport type {WebGLTileManager} from \"./WebGLTileManager\";\nimport {MeshCounts} from \"./MeshCounts\";\nimport {LinesPrimitive, PointsPrimitive, SolidPrimitive, SurfacePrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\nimport {RenderFlags} from \"./RenderFlags\";\nimport {Layer} from \"./Layer\";\nimport {VBOPointsBatchingLayer} from \"./vbo/batching/points/VBOPointsBatchingLayer\";\nimport {VBOTrianglesBatchingLayer} from \"./vbo/batching/triangles/VBOTrianglesBatchingLayer\";\nimport {VBOTrianglesInstancingLayer} from \"./vbo/instancing/triangles/VBOTrianglesInstancingLayer\";\nimport {VBOLinesInstancingLayer} from \"./vbo/instancing/lines/VBOLinesInstancingLayer\";\nimport {VBOLinesBatchingLayer} from \"./vbo/batching/lines/VBOLinesBatchingLayer\";\n\n\nconst defaultScale = createVec3([1, 1, 1]);\nconst defaultPosition = createVec3([0, 0, 0]);\nconst defaultRotation = createVec3([0, 0, 0]);\nconst defaultQuaternion = identityQuat();\n\nconst defaultColorTextureId = \"defaultColorTexture\";\nconst defaultMetalRoughTextureId = \"defaultMetalRoughTexture\";\nconst defaultNormalsTextureId = \"defaultNormalsTexture\";\nconst defaultEmissiveTextureId = \"defaultEmissiveTexture\";\nconst defaultOcclusionTextureId = \"defaultOcclusionTexture\";\nconst defaultTextureSetId = \"defaultTextureSet\";\n\n/**\n * @private\n */\nexport class WebGLRendererModel extends Component implements RendererModel {\n\n declare readonly id: string;\n readonly viewer: Viewer;\n readonly qualityRender: boolean;\n declare readonly destroyed: boolean;\n\n rendererGeometries: { [key: string]: RendererGeometry };\n rendererTextures: { [key: string]: RendererTexture };\n rendererTextureSets: { [key: string]: RendererTextureSet; };\n rendererMeshes: { [key: string]: WebGLRendererMesh };\n rendererObjects: { [key: string]: WebGLRendererObject };\n rendererObjectsList: WebGLRendererObject[];\n\n layerList: Layer[];\n #layers: { [key: string]: Layer };\n #currentLayers: { [key: string]: any };\n\n meshCounts: MeshCounts[];\n\n declare readonly onDestroyed: EventEmitter;\n\n webglRenderer: WebGLRenderer;\n #renderContext: RenderContext;\n #position: FloatArrayParam;\n #rotation: FloatArrayParam;\n #quaternion: FloatArrayParam;\n #scale: FloatArrayParam;\n #worldMatrix: FloatArrayParam;\n #viewMatrix: FloatArrayParam;\n #colorTextureEnabled: boolean;\n #backfaces: boolean;\n #numGeometries: number;\n #numTextures: number;\n #numMeshes: number;\n #numTriangles: number;\n #numLines: number;\n #numPoints: number;\n #numRendererObjects: number;\n #textureTranscoder: TextureTranscoder;\n #aabbDirty: boolean;\n #edgeThreshold: number;\n #aabb: FloatArrayParam;\n #viewMatrixDirty: boolean;\n #worldMatrixNonIdentity: boolean;\n #onCameraViewMatrix: () => void;\n #layerId: string | undefined;\n\n numSubMeshes: number;\n renderFlags: RenderFlags[];\n\n constructor(params: {\n id: string;\n viewer: Viewer;\n sceneModel: SceneModel;\n matrix?: FloatArrayParam;\n scale?: FloatArrayParam;\n webglRenderer: WebGLRenderer;\n renderContext: RenderContext;\n quaternion?: FloatArrayParam;\n rotation?: FloatArrayParam;\n position?: FloatArrayParam;\n edgeThreshold?: number;\n textureTranscoder: TextureTranscoder;\n qualityRender?: boolean;\n layerId?: string;\n }) {\n\n super(params.viewer);\n\n this.id = params.id;\n this.viewer = params.viewer;\n\n this.meshCounts = [\n new MeshCounts(),\n new MeshCounts(),\n new MeshCounts(),\n new MeshCounts()\n ];\n\n this.webglRenderer = params.webglRenderer;\n this.#renderContext = params.renderContext;\n this.#textureTranscoder = params.textureTranscoder;\n\n this.#aabb = collapseAABB3();\n this.#aabbDirty = false;\n this.#layers = {};\n this.layerList = [];\n this.#currentLayers = {};\n\n this.rendererGeometries = {};\n this.rendererTextures = {};\n this.rendererTextureSets = {};\n this.rendererMeshes = {};\n this.rendererObjects = {};\n this.rendererObjectsList = [];\n\n this.rendererObjects = {};\n\n this.#numGeometries = 0;\n this.#numRendererObjects = 0;\n this.#numTextures = 0;\n this.#numMeshes = 0;\n\n this.#numTriangles = 0;\n this.#numLines = 0;\n this.#numPoints = 0;\n this.#edgeThreshold = params.edgeThreshold || 10;\n\n this.numSubMeshes = 0;\n\n // Build static matrix\n\n this.#position = createVec3(params.position || [0, 0, 0]);\n this.#rotation = createVec3(params.rotation || [0, 0, 0]);\n this.#quaternion = createVec4(params.quaternion || [0, 0, 0, 1]);\n if (params.rotation) {\n eulerToQuat(this.#rotation, \"XYZ\", this.#quaternion);\n }\n this.#scale = createVec3(params.scale || [1, 1, 1]);\n this.#worldMatrix = createMat4();\n composeMat4(this.#position, this.#quaternion, this.#scale, this.#worldMatrix);\n\n if (params.matrix || params.position || params.rotation || params.scale || params.quaternion) {\n this.#viewMatrix = createMat4();\n this.#viewMatrixDirty = true;\n this.#worldMatrixNonIdentity = true;\n }\n\n this.qualityRender = (params.qualityRender !== false);\n\n this.#layerId = params.layerId;\n\n // this.#onCameraViewMatrix = this.#view.camera.onViewMatrix.subscribe((camera: Camera, viewMatrix: FloatArrayParam) => {\n // this.#viewMatrixDirty = true;\n // });\n\n this.#createDefaultTextureSet();\n\n for (let i = 0, len = this.layerList.length; i < len; i++) {\n const layer = this.layerList[i];\n layer.layerIndex = i;\n }\n this.#currentLayers = {};\n //this.#build();\n this.#attachSceneModel(params.sceneModel);\n this.webglRenderer.setImageDirty();\n // this.#view.viewer.scene.setAABBDirty();\n\n this.renderFlags = [\n new RenderFlags(),\n new RenderFlags(),\n new RenderFlags(),\n new RenderFlags()\n ];\n }\n\n #attachSceneModel(sceneModel: SceneModel): void {\n const textures = sceneModel.textures;\n const geometries = sceneModel.geometries;\n const meshes = sceneModel.meshes;\n const objects = sceneModel.objects;\n if (textures) {\n for (let textureId in textures) {\n this.#attachTexture(textures[textureId]);\n }\n }\n if (geometries) {\n for (let geometryId in geometries) {\n this.#attachGeometry(geometries[geometryId]);\n }\n }\n if (meshes) {\n for (let meshId in meshes) {\n this.#attachMesh(meshes[meshId]);\n }\n }\n if (objects) {\n for (let objectId in objects) {\n this.#attachSceneObject(objects[objectId]);\n }\n }\n for (let layerId in this.#currentLayers) {\n this.#currentLayers[layerId].build();\n }\n // Do a two-step commit and flush of all the flags and material attributes\n // managed by the RendererObjects into their Layers. This enables efficient\n // upload of that state into the data textures managed by those Layers. First\n // step populates the data arrays for the data textures, second step loads the\n // entire arrays into the textures, collapsing zillions of gl.texSubImage2D calls.\n const numViews = this.viewer.viewList.length;\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n // this.rendererObjectsList[i].initFlags(viewIndex);\n // }\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // for (let viewIndex = 0; viewIndex < numViews; viewIndex++) {\n // this.rendererObjectsList[i].commitRendererState(viewIndex);\n // }\n // }\n }\n\n #attachTexture(texture: SceneTexture): void {\n // Attaches a WebGLRendererTexture to the given SceneTexture\n const textureId = texture.id;\n if (this.rendererTextures[textureId]) {\n throw new SDKError(`WebGLRendererTexture with ID ${textureId} already created in WebGLRendererModel`);\n }\n const glTexture = new WebGLTexture({gl: this.#renderContext.gl});\n if (texture.preloadColor) {\n glTexture.setPreloadColor(texture.preloadColor);\n }\n if (texture.image) { // Ignore transcoder for Images\n const image = texture.image;\n image.crossOrigin = \"Anonymous\";\n glTexture.setImage(image, {\n minFilter: texture.minFilter,\n magFilter: texture.magFilter,\n wrapS: texture.wrapS,\n wrapT: texture.wrapT,\n wrapR: texture.wrapR,\n flipY: texture.flipY,\n encoding: texture.encoding\n });\n } else if (texture.src) {\n const ext = texture.src.split('.').pop();\n switch (ext) { // Don't transcode recognized image file types\n case \"jpeg\":\n case \"jpg\":\n case \"png\":\n case \"gif\":\n const image = new Image();\n image.onload = () => {\n glTexture.setImage(image, {\n minFilter: texture.minFilter,\n magFilter: texture.magFilter,\n wrapS: texture.wrapS,\n wrapT: texture.wrapT,\n wrapR: texture.wrapR,\n flipY: texture.flipY,\n encoding: texture.encoding\n });\n };\n image.src = texture.src; // URL or Base64 string\n break;\n default: // Assume other file types need transcoding\n if (!this.#textureTranscoder) {\n this.error(`Can't create texture from 'src' - rendererModel needs to be configured with a TextureTranscoder for this file type ('${ext}')`);\n } else {\n loadArraybuffer(texture.src, (arrayBuffer: ArrayBuffer) => {\n if (!arrayBuffer.byteLength) {\n this.error(`Can't create texture from 'src': file data is zero length`);\n return;\n }\n this.#textureTranscoder.transcode([arrayBuffer]).then((compressedTextureData) => {\n glTexture.setCompressedData(compressedTextureData);\n this.webglRenderer.setImageDirty();\n });\n },\n (errMsg: string) => {\n this.error(`Can't create texture from 'src': ${errMsg}`);\n });\n }\n break;\n }\n } else if (texture.buffers) { // Buffers implicitly require transcoding\n if (!this.#textureTranscoder) {\n this.error(`Can't create texture from 'buffers' - rendererModel needs to be configured with a TextureTranscoder for this option`);\n } else {\n this.#textureTranscoder.transcode(texture.buffers).then((compressedTextureData) => {\n glTexture.setCompressedData(compressedTextureData);\n this.webglRenderer.setImageDirty();\n });\n }\n }\n const rendererTexture = new WebGLRendererTexture(texture, glTexture);\n texture.rendererTexture = rendererTexture;\n this.rendererTextures[textureId] = rendererTexture;\n }\n\n #attachGeometry(geometry: SceneGeometry): void {\n // Attaches a WebGLRendererGeometry to the given SceneGeometry\n const geometryId = geometry.id;\n if (this.rendererGeometries[geometryId]) {\n throw new SDKError(`RendererGeometry with ID ${geometryId} already created in WebGLRendererModel`);\n }\n const rendererGeometry = new WebGLRendererGeometry();\n this.rendererGeometries[geometryId] = rendererGeometry;\n geometry.rendererGeometry = rendererGeometry;\n this.#numGeometries++;\n }\n\n #attachMesh(mesh: SceneMesh): void {\n // Attaches a WebGLRendererMesh to the given SceneMesh\n const rendererGeometry = this.rendererGeometries[mesh.geometry.id];\n if (!rendererGeometry) {\n throw new SDKError(`RendererGeometry with ID ${mesh.geometry.id} not found in WebGLRendererModel`);\n }\n const textureSetId = mesh.textureSet ? (mesh.textureSet).id : defaultTextureSetId;\n const rendererTextureSet = this.rendererTextureSets[textureSetId];\n if (!rendererTextureSet) {\n this.error(`TextureSet with ID \"${textureSetId}\" not found in WebGLRendererModel`);\n }\n const layer = this.#getLayer(textureSetId, mesh);\n if (!layer) {\n return; // TODO\n }\n let matrix = mesh.rtcMatrix;\n const color = (mesh.color) ? new Uint8Array([Math.floor(mesh.color[0] * 255), Math.floor(mesh.color[1] * 255), Math.floor(mesh.color[2] * 255)]) : [255, 255, 255];\n const opacity = (mesh.opacity !== undefined && mesh.opacity !== null) ? Math.floor(mesh.opacity * 255) : 255;\n const rendererMesh = new WebGLRendererMesh({\n tileManager: this.webglRenderer.tileManager,\n id: mesh.id,\n layer,\n color,\n opacity,\n matrix,\n rendererTextureSet,\n rendererGeometry,\n meshIndex: 0\n });\n rendererMesh.pickId = this.webglRenderer.attachPickable(rendererMesh);\n const a = rendererMesh.pickId >> 24 & 0xFF;\n const b = rendererMesh.pickId >> 16 & 0xFF;\n const g = rendererMesh.pickId >> 8 & 0xFF;\n const r = rendererMesh.pickId & 0xFF;\n const pickColor = new Uint8Array([r, g, b, a]);\n // collapseAABB3(rendererMesh.aabb);\n const meshIndex = layer.createLayerMesh({pickColor}, mesh);\n // expandAABB3(this.#aabb, rendererMesh.aabb);\n rendererMesh.layer = layer;\n rendererMesh.meshIndex = meshIndex;\n this.rendererMeshes[mesh.id] = rendererMesh;\n this.#numMeshes++;\n }\n\n #getLayer(textureSetId: string, mesh: SceneMesh): Layer | undefined {\n const sceneGeometry = mesh.geometry;\n const primitive = sceneGeometry.primitive;\n const instancing = sceneGeometry.numMeshes > 1;\n const origin = mesh.tile.origin;\n const layerId = `VBO-${instancing ? \"Instancing\" : \"Batching\"}-${textureSetId}.${primitive}.${Math.round(origin[0])}.${Math.round(origin[1])}.${Math.round(origin[2])}`;\n let layer = this.#currentLayers[layerId];\n if (layer) {\n if (layer.canCreateLayerMesh(sceneGeometry)) {\n return layer;\n } else {\n layer.build();\n delete this.#currentLayers[layerId];\n }\n }\n let textureSet;\n if (textureSetId) {\n textureSet = this.rendererTextureSets[textureSetId];\n if (!textureSet) {\n this.error(`TextureSet with ID \"${textureSetId}\" not found in WebGLRendererModel - ensure that you create it first with createTextureSet()`);\n // Create layer without texture set\n }\n }\n if (instancing) {\n switch (sceneGeometry.primitive) {\n case TrianglesPrimitive:\n case SolidPrimitive:\n case SurfacePrimitive:\n layer = new VBOTrianglesInstancingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n sceneGeometry,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOTrianglesInstancingLayer`);\n break;\n case LinesPrimitive:\n layer = new VBOLinesInstancingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n sceneGeometry,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOLinesInstancingLayer`);\n break;\n case PointsPrimitive:\n // layer = new VBOPointsInstancingLayer({\n // renderContext: this.#renderContext,\n // rendererModel: this,\n // sceneGeometry,\n // textureSet,\n // layerIndex: 0,\n // origin\n // });\n this.log(`Creating new VBOPointsInstancingLayer`);\n break;\n default:\n this.error(`Primitive type not supported: ${sceneGeometry.primitive}`);\n return;\n }\n } else {\n switch (sceneGeometry.primitive) {\n case TrianglesPrimitive:\n case SolidPrimitive:\n case SurfacePrimitive:\n layer = new VBOTrianglesBatchingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n primitive,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOTrianglesBatchingLayer`);\n break;\n case LinesPrimitive:\n layer = new VBOLinesBatchingLayer({\n primitive,\n renderContext: this.#renderContext,\n rendererModel: this,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOLinesBatchingLayer`);\n break;\n case PointsPrimitive:\n layer = new VBOPointsBatchingLayer({\n renderContext: this.#renderContext,\n rendererModel: this,\n primitive,\n textureSet,\n layerIndex: 0,\n origin\n });\n this.log(`Creating new VBOPointsBatchingLayer`);\n break;\n default:\n this.error(`Primitive type not supported: ${sceneGeometry.primitive}`);\n return;\n }\n }\n this.#layers[layerId] = layer;\n this.layerList.push(layer);\n this.#currentLayers[layerId] = layer;\n return layer;\n }\n\n #attachSceneObject(sceneObject: SceneObject): void {\n // Attaches a WebGLRendererObject to the given SceneObject\n let objectId = sceneObject.id;\n if (objectId === undefined) {\n objectId = createUUID();\n } else if (this.rendererObjects[objectId]) {\n this.error(\"Already has a WebGLRenderObject with this ID: \" + objectId + \" - will assign random ID\");\n objectId = createUUID();\n }\n const meshes = sceneObject.meshes;\n if (meshes === undefined) {\n throw new SDKError(\"SceneObject property expected: meshes\");\n }\n const rendererMeshes: WebGLRendererMesh[] = [];\n for (let i = 0, len = meshes.length; i < len; i++) {\n const mesh = meshes[i];\n const rendererMesh = this.rendererMeshes[mesh.id];\n if (!rendererMesh) {\n console.error(\"WebGLRendererMesh not found: + \" + mesh.id);\n } else {\n rendererMeshes.push(rendererMesh);\n }\n }\n if (rendererMeshes.length === 0) {\n return;\n }\n const rendererObject = new WebGLRendererObject({\n id: objectId,\n rendererModel: this,\n rendererMeshes,\n aabb: sceneObject.aabb,\n layerId: this.#layerId\n });\n this.rendererObjectsList.push(rendererObject);\n this.rendererObjects[objectId] = rendererObject; // \n sceneObject.rendererObject = rendererObject;\n this.#numRendererObjects++;\n }\n\n get position(): FloatArrayParam {\n return this.#position;\n }\n\n get rotation(): FloatArrayParam {\n return this.#rotation;\n }\n\n get quaternion(): FloatArrayParam {\n return this.#quaternion;\n }\n\n get scale(): FloatArrayParam {\n return this.#scale;\n }\n\n get worldMatrix(): FloatArrayParam {\n return this.#worldMatrix;\n }\n\n get colorTextureEnabled() {\n return this.#colorTextureEnabled;\n }\n\n get backfaces(): boolean {\n return this.#backfaces;\n }\n\n set backfaces(backfaces: boolean) {\n backfaces = !!backfaces;\n this.#backfaces = backfaces;\n this.webglRenderer.setImageDirty();\n }\n\n get matrix(): FloatArrayParam {\n return this.#worldMatrix;\n }\n\n get aabb(): FloatArrayParam {\n if (this.#aabbDirty) {\n this.#rebuildAABB();\n }\n return this.#aabb;\n }\n\n get numTriangles(): number {\n return this.#numTriangles;\n }\n\n get numLines(): number {\n return this.#numLines;\n }\n\n get numPoints(): number {\n return this.#numPoints;\n }\n\n #createDefaultTextureSet() {\n const defaultColorRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [1, 1, 1, 1] // [r, g, b, a]})\n }));\n\n const defaultMetalRoughRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 1, 1, 1] // [unused, roughness, metalness, unused]\n }));\n const defaultNormalsRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 0, 0, 0] // [x, y, z, unused] - these must be zeros\n }));\n\n const defaultEmissiveRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [0, 0, 0, 1] // [x, y, z, unused]\n }));\n const defaultOcclusionRendererTexture = new WebGLRendererTexture(\n null,\n new WebGLTexture({\n gl: this.#renderContext.gl,\n preloadColor: [1, 1, 1, 1] // [x, y, z, unused]\n }));\n this.rendererTextures[defaultColorTextureId] = defaultColorRendererTexture;\n this.rendererTextures[defaultMetalRoughTextureId] = defaultMetalRoughRendererTexture;\n this.rendererTextures[defaultNormalsTextureId] = defaultNormalsRendererTexture;\n this.rendererTextures[defaultEmissiveTextureId] = defaultEmissiveRendererTexture;\n this.rendererTextures[defaultOcclusionTextureId] = defaultOcclusionRendererTexture;\n this.rendererTextureSets[defaultTextureSetId] = new WebGLRendererTextureSet({\n id: defaultTextureSetId,\n colorRendererTexture: defaultColorRendererTexture,\n metallicRoughnessRendererTexture: defaultMetalRoughRendererTexture,\n emissiveRendererTexture: defaultEmissiveRendererTexture,\n occlusionRendererTexture: defaultOcclusionRendererTexture\n });\n }\n\n #rebuildAABB() {\n collapseAABB3(this.#aabb);\n for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n const rendererObject = this.rendererObjectsList[i];\n expandAABB3(this.#aabb, rendererObject.aabb);\n }\n this.#aabbDirty = false;\n }\n\n /** @private */\n rebuildRenderFlags(viewIndex: number) {\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.reset();\n this.#updateRenderFlagsVisibleLayers(viewIndex);\n if (renderFlags.numLayers > 0 && renderFlags.numVisibleLayers === 0) {\n renderFlags.culled = true;\n return;\n }\n this.#updateRenderFlags(viewIndex);\n }\n\n /**\n * @private\n */\n #updateRenderFlagsVisibleLayers(viewIndex: number) {\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.numLayers = this.layerList.length;\n renderFlags.numVisibleLayers = 0;\n for (let layerIndex = 0, len = this.layerList.length; layerIndex < len; layerIndex++) {\n const layer = this.layerList[layerIndex];\n const layerVisible = this.#getActiveSectionPlanesForLayer(layer);\n if (layerVisible) {\n renderFlags.visibleLayers[renderFlags.numVisibleLayers++] = layerIndex;\n }\n }\n }\n\n #getActiveSectionPlanesForLayer(layer) {\n // const renderFlags = this.renderFlags;\n // const sectionPlanes = this.scene._sectionPlanesState.sectionPlanes;\n // const numSectionPlanes = sectionPlanes.length;\n // const baseIndex = layer.layerIndex * numSectionPlanes;\n // if (numSectionPlanes > 0) {\n // for (let i = 0; i < numSectionPlanes; i++) {\n // const sectionPlane = sectionPlanes[i];\n // if (!sectionPlane.active) {\n // renderFlags.sectionPlanesActivePerLayer[baseIndex + i] = false;\n // } else {\n // renderFlags.sectionPlanesActivePerLayer[baseIndex + i] = true;\n // renderFlags.sectioned = true;\n // }\n // }\n // }\n return true;\n }\n\n #updateRenderFlags(viewIndex: number) {\n const meshCounts = this.meshCounts[viewIndex];\n if (meshCounts.numVisible === 0) {\n return;\n }\n if (meshCounts.numCulled === meshCounts.numMeshes) {\n return;\n }\n const renderFlags = this.renderFlags[viewIndex];\n renderFlags.colorOpaque = (meshCounts.numTransparent < meshCounts.numMeshes);\n if (meshCounts.numTransparent > 0) {\n renderFlags.colorTransparent = true;\n }\n if (meshCounts.numXRayed > 0) {\n const xrayMaterial = this.viewer[viewIndex].xrayMaterial;\n if (xrayMaterial.fill) {\n if (xrayMaterial.fillAlpha < 1.0) {\n renderFlags.xrayedSilhouetteTransparent = true;\n } else {\n renderFlags.xrayedSilhouetteOpaque = true;\n }\n }\n if (xrayMaterial.edges) {\n if (xrayMaterial.edgeAlpha < 1.0) {\n renderFlags.xrayedEdgesTransparent = true;\n } else {\n renderFlags.xrayedEdgesOpaque = true;\n }\n }\n }\n const edgeMaterial = this.viewer[viewIndex].edges;\n if (edgeMaterial.enabled) {\n renderFlags.edgesOpaque = (meshCounts.numTransparent < meshCounts.numMeshes);\n if (meshCounts.numTransparent > 0) {\n renderFlags.edgesTransparent = true;\n }\n }\n if (meshCounts.numSelected > 0) {\n const selectedMaterial = this.viewer[viewIndex].selectedMaterial;\n if (selectedMaterial.fill) {\n if (selectedMaterial.fillAlpha < 1.0) {\n renderFlags.selectedSilhouetteTransparent = true;\n } else {\n renderFlags.selectedSilhouetteOpaque = true;\n }\n }\n if (selectedMaterial.edges) {\n if (selectedMaterial.edgeAlpha < 1.0) {\n renderFlags.selectedEdgesTransparent = true;\n } else {\n renderFlags.selectedEdgesOpaque = true;\n }\n }\n }\n if (meshCounts.numHighlighted > 0) {\n const highlightMaterial = this.viewer[viewIndex].highlightMaterial;\n if (highlightMaterial.fill) {\n if (highlightMaterial.fillAlpha < 1.0) {\n renderFlags.highlightedSilhouetteTransparent = true;\n } else {\n renderFlags.highlightedSilhouetteOpaque = true;\n }\n }\n if (highlightMaterial.edges) {\n if (highlightMaterial.edgeAlpha < 1.0) {\n renderFlags.highlightedEdgesTransparent = true;\n } else {\n renderFlags.highlightedEdgesOpaque = true;\n }\n }\n }\n }\n\n #build() {\n // for (let layerId in this.#currentLayers) {\n // let layer = this.#currentLayers[layerId];\n // layer.build();\n // delete this.#currentLayers[layerId];\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // const rendererObject = this.rendererObjectsList[i];\n // rendererObject.initFlags();\n // }\n // for (let i = 0, len = this.rendererObjectsList.length; i < len; i++) {\n // const rendererObject = this.rendererObjectsList[i];\n // rendererObject.commitRendererState();\n // }\n }\n\n // build() {\n // if (this.destroyed) {\n // this.log(\"rendererModel already destroyed\");\n // return;\n // }\n // if (this.built) {\n // this.log(\"rendererModel already built\");\n // return;\n // }\n // for (let layerId in this.#currentLayers) {\n // if (this.#currentLayers.hasOwnProperty(layerId)) {\n // this.#currentLayers[layerId].build();\n // }\n // }\n // for (let i = 0, len = this.objectList.length; i < len; i++) {\n // const rendererObject = this.objectList[i];\n // rendererObject.build();\n // }\n // for (let i = 0, len = this.objectList.length; i < len; i++) {\n // const rendererObject = this.objectList[i];\n // rendererObject.build2();\n // }\n // // this.layerList.sort((a, b) => {\n // // if (a.sortId < b.sortId) {\n // // return -1;\n // // }\n // // if (a.sortId > b.sortId) {\n // // return 1;\n // // }\n // // return 0;\n // // });\n // for (let i = 0, len = this.layerList.length; i < len; i++) {\n // const layer = this.layerList[i];\n // layer.layerIndex = i;\n // }\n // this.#currentLayers = {};\n // this.built = true;\n // this.webglRenderer.setImageDirty();\n // // this.#view.viewer.scene.setAABBDirty();\n // this.onBuilt.dispatch(this, null);\n // }\n //\n\n destroy() {\n if (this.destroyed) {\n return;\n }\n // this.detachSceneModel();\n // this.#view.camera.onViewMatrix.unsubscribe(this.#onCameraViewMatrix);\n for (let layerId in this.#currentLayers) {\n if (this.#currentLayers.hasOwnProperty(layerId)) {\n this.#currentLayers[layerId].destroy();\n }\n }\n for (let i = 0, len = this.layerList.length; i < len; i++) {\n this.layerList[i].destroy();\n }\n for (let objectId in this.rendererObjects) {\n this.rendererObjects[objectId].destroy();\n }\n for (let meshId in this.rendererMeshes) {\n this.rendererMeshes[meshId].destroy();\n // this.webglRenderer.deregisterPickable(this.rendererMeshes[meshId].pickId);\n }\n this.#currentLayers = {};\n this.#layers = {};\n this.layerList = [];\n this.rendererGeometries = {};\n this.rendererTextures = {};\n this.rendererTextureSets = {};\n this.rendererMeshes = {};\n this.rendererObjects = {};\n // this.#view.viewer.setAABBDirty();\n super.destroy();\n }\n\n // detachSceneModel(): void {\n // const sceneModel = this.sceneModel;\n // if (!sceneModel) {\n // return;\n // }\n // const textures = sceneModel.textures;\n // const geometries = sceneModel.geometries;\n // const meshes = sceneModel.meshes;\n // const objects = sceneModel.objects;\n // if (textures) {\n // for (let textureId in textures) {\n // const texture = textures[textureId];\n // if (texture.rendererTexture) {\n // texture.rendererTexture = null;\n // }\n // }\n // }\n // if (geometries) {\n // for (let geometryId in geometries) {\n // const geometry = geometries[geometryId];\n // if (geometry.rendererGeometry) {\n // geometry.rendererGeometry = null;\n // }\n // }\n // }\n // if (meshes) {\n // for (let meshId in meshes) {\n // const mesh = meshes[meshId];\n // if (mesh.rendererMesh) {\n // mesh.rendererMesh = null;\n // }\n // }\n // }\n // if (objects) {\n // for (let objectId in objects) {\n // const object = objects[objectId];\n // if (object.rendererObject) {\n // object.rendererObject = null;\n // }\n // }\n // }\n // this.sceneModel = null;\n // }\n}\n\n\n\n", "/**\n * Collects statistics during each rendered frame.\n */\nexport class RenderStats {\n\n /**\n * Number of WebGL programs that were bound in the rendered frame.\n */\n numProgramBinds: number;\n\n /**\n * Number of WebGL drawArrays calls performed during the rendered frame.\n */\n numDrawArrays: number;\n\n /**\n * Number of WebGL textures that were bound in the rendered frame.\n */\n numTextureBinds: number;\n\n /**\n * Creates a new RenderStats.\n */\n constructor() {\n this.reset();\n }\n\n /**\n * Called by the renderers before each frame.\n */\n reset() {\n this.numProgramBinds = 0;\n this.numDrawArrays = 0;\n this.numTextureBinds = 0;\n }\n}\n", "import {Map} from \"@xeokit/utils\";\nimport {addVec3, createMat4, createVec2, createVec3, cross3Vec3, lookAtMat4v, normalizeVec3} from \"@xeokit/matrix\";\nimport type {FloatArrayParam} from \"@xeokit/math\";\nimport type {Renderer, View, Viewer} from \"@xeokit/viewer\";\nimport {KTX2TextureTranscoder} from \"@xeokit/ktx2\";\nimport {RenderContext} from \"./RenderContext\";\nimport {getWebGLExtension, WEBGL_INFO} from \"@xeokit/webglutils\";\nimport type {Pickable} from \"./Pickable\";\nimport {WebGLRendererModel} from \"./WebGLRendererModel\";\nimport type {Capabilities, TextureTranscoder} from \"@xeokit/core\";\nimport {EventEmitter, SDKError} from \"@xeokit/core\";\nimport type {RendererObject, SceneModel} from \"@xeokit/scene\";\nimport {WebGLTileManager} from \"./WebGLTileManager\";\nimport {RenderStats} from \"./RenderStats\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {Layer} from \"./Layer\";\nimport {WebGLRenderBufferManager} from \"./WebGLRenderBufferManager\";\nimport {PickParams, PickResult} from \"@xeokit/viewer\";\nimport {WebGLRendererMesh} from \"./WebGLRendererMesh\";\n\nconst ua = navigator.userAgent.match(/(opera|chrome|safari|firefox|msie|mobile)\\/?\\s*(\\.?\\d+(\\.\\d+)*)/i);\nconst isSafari = (ua && ua[1].toLowerCase() === \"safari\");\n\n/** @private */\nclass WebGLRendererView {\n\n view: View;\n transparencyEnabled: boolean;\n imageDirty: boolean;\n viewMatrixDirty: boolean;\n canvasTransparent: boolean;\n saoEnabled: boolean;\n edgesEnabled: boolean;\n backgroundColor: FloatArrayParam;\n transparentEnabled: boolean;\n pbrEnabled: boolean;\n saveCanvasBoundary: DOMRect;\n gl: WebGL2RenderingContext;\n renderBufferManager: WebGLRenderBufferManager;\n\n pickIDs: Map;\n\n constructor(gl: WebGL2RenderingContext, webglCanvasElement: HTMLCanvasElement, view: View) {\n this.gl = gl;\n this.view = view;\n this.transparencyEnabled = true;\n this.imageDirty = true;\n this.viewMatrixDirty = true;\n this.canvasTransparent = false;\n this.pbrEnabled = false;\n this.saoEnabled = false;\n this.edgesEnabled = true;\n this.transparentEnabled = true;\n this.backgroundColor = createVec3();\n this.saveCanvasBoundary = view.htmlElement.getBoundingClientRect();\n this.renderBufferManager = new WebGLRenderBufferManager(gl, webglCanvasElement);\n this.pickIDs = new Map({});\n }\n\n destroy() {\n this.renderBufferManager.destroy();\n }\n}\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempMat4b = createMat4();\n\nconst pickTemps = {\n pickCanvasPos: createVec2(),\n pickWorldRayDir: createVec3(),\n pickWorldRayOrigin: createVec3(),\n pickViewMatrix: createMat4(),\n pickProjMatrix: createMat4()\n};\n\n/**\n * A WebGL-based rendering strategy for a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * See {@link \"@xeokit/webglrenderer\" | @xeokit/webglrenderer} for usage.\n */\nexport class WebGLRenderer implements Renderer {\n\n /**\n * Interfaces through which each {@link @xeokit/viewer!ViewObject | ViewObject} shows/hides/highlights/selects/xrays/colorizes\n * its {@link @xeokit/scene!SceneObject | SceneObject} within the WebGLRenderer that's\n * configured on its {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n */\n rendererObjects: { [key: string]: RendererObject };\n\n /**\n * @internal\n */\n renderStats: RenderStats;\n\n /**\n * @internal\n */\n tileManager: WebGLTileManager | null;\n\n\n #pickBufferManager: WebGLRenderBufferManager;\n\n #rendererViews: { [key: string]: WebGLRendererView };\n #rendererViewsList: WebGLRendererView[];\n #activeRendererView: WebGLRendererView;\n\n #viewer: Viewer;\n renderContext: RenderContext;\n\n #shadersDirty: boolean;\n\n #rendererModels: { [key: string]: WebGLRendererModel };\n #layerList: Layer[];\n #layerListDirty: boolean;\n #stateSortDirty: boolean;\n #pickIDs = new Map({});\n #extensionHandles: any;\n #logarithmicDepthBufferEnabled: boolean;\n #alphaDepthMask: boolean;\n #occlusionTester: any;\n // #saoOcclusionRenderer: null | SAOOcclusionRenderer;\n // #saoDepthLimitedBlurRenderer: SAODepthLimitedBlurRenderer;\n #textureTranscoder: TextureTranscoder;\n #viewMatrixDirty: boolean;\n #snapshotBound: boolean;\n #destroyed: boolean;\n\n #onViewCameraMatrix: () => void | null;\n\n /**\n * @internal\n * @event\n */\n readonly onCompiled: EventEmitter;\n\n /**\n * @internal\n * @event\n */\n readonly onDestroyed: EventEmitter;\n\n #webglCanvasElement: HTMLCanvasElement;\n #gl: WebGL2RenderingContext;\n\n #pickResult: PickResult;\n\n /**\n * Creates a WebGLRenderer.\n *\n * @param params Configs\n * @param params.textureTranscoder Injects an optional transcoder that will be used internally by {@link rendererModel.createTexture}\n * to convert transcoded texture data. The transcoder is only required when we'll be providing transcoded data\n * to {@link rendererModel.createTexture}. We assume that all transcoded texture data added to a ````rendererModel````\n * will then be in a format supported by this transcoder.\n */\n constructor(params: {\n textureTranscoder?: TextureTranscoder\n }) {\n this.renderStats = new RenderStats();\n this.rendererObjects = {};\n this.tileManager = null;\n this.renderContext = null;\n this.#textureTranscoder = params.textureTranscoder || new KTX2TextureTranscoder({});\n this.#alphaDepthMask = false;\n this.#extensionHandles = {};\n this.#pickIDs = new Map({});\n this.#layerList = [];\n this.#layerListDirty = true;\n this.#stateSortDirty = true;\n this.#shadersDirty = true;\n this.#occlusionTester = null; // Lazy-created in #addMarker()\n\n // this.#saoDepthRenderBuffer = null;\n // this.#renderBufferManager = null;\n this.#logarithmicDepthBufferEnabled = false;\n this.#rendererModels = {};\n this.#viewMatrixDirty = true;\n this.#snapshotBound = false;\n this.#destroyed = false;\n\n this.#rendererViews = {};\n this.#rendererViewsList = [];\n this.#activeRendererView = null;\n\n this.#pickResult = new PickResult();\n\n this.onCompiled = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#webglCanvasElement = document.createElement('canvas');\n const webglCanvasElement = this.#webglCanvasElement;\n webglCanvasElement.width = 400;\n webglCanvasElement.height = 400;\n webglCanvasElement.style.position = 'absolute';\n webglCanvasElement.style.top = '50px';\n webglCanvasElement.style.left = '50px';\n webglCanvasElement.style.border = '1px solid black';\n webglCanvasElement.style[\"pointer-events\"] = \"none\";\n webglCanvasElement.style[\"z-index\"] = 100000; // HACK\n document.body.appendChild(webglCanvasElement);\n const contextAttr = {\n alpha: true,\n preserveDrawingBuffer: true,\n stencil: false,\n premultipliedAlpha: false,\n antialias: true\n };\n this.#gl = webglCanvasElement.getContext(\"webgl2\", contextAttr);\n if (!this.#gl) {\n throw new SDKError(`Failed to get a WebGL2 context`);\n }\n this.#gl.hint(this.#gl.FRAGMENT_SHADER_DERIVATIVE_HINT, this.#gl.NICEST);\n\n this.#pickBufferManager = new WebGLRenderBufferManager(this.#gl, webglCanvasElement);\n\n // this.tileManager = new WebGLTileManager({camera: view.camera, gl});\n }\n\n /**\n * The Viewer this WebGLRenderer is currently attached to, if any.\n */\n get viewer(): Viewer {\n return this.#viewer;\n }\n\n /**\n * Gets the TextureTranscoder this WebGLRenderer was configured with, if any.\n *\n * @internal\n */\n get textureTranscoder(): void | TextureTranscoder {\n return this.#textureTranscoder;\n }\n\n /**\n * Gets the capabilities of this WebGLRenderer.\n *\n * @param capabilities Returns the capabilities of this WebGLRenderer.\n * @internal\n */\n getCapabilities(capabilities: Capabilities): void {\n capabilities.maxViews = 4;\n const htmlElement = document.createElement('canvas');\n let gl;\n try {\n gl = htmlElement.getContext(\"webgl2\");\n } catch (e) {\n console.error('Failed to get a WebGL context');\n }\n if (gl) {\n capabilities.astcSupported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_astc');\n capabilities.etc1Supported = true; // WebGL\n capabilities.etc2Supported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_etc');\n capabilities.dxtSupported = !!getWebGLExtension(gl, 'WEBGL_compressed_texture_s3tc');\n capabilities.bptcSupported = !!getWebGLExtension(gl, 'EXT_texture_compression_bptc');\n capabilities.pvrtcSupported = !!(getWebGLExtension(gl, 'WEBGL_compressed_texture_pvrtc') || getWebGLExtension(gl, 'WEBKIT_WEBGL_compressed_texture_pvrtc'));\n }\n }\n\n /**\n * Initializes this WebGLRenderer by attaching a {@link @xeokit/viewer!Viewer | Viewer}.\n *\n * @internal\n * @param viewer Viewer to attach.\n * @returns *void*\n * * Viewer successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * A Viewer is already attached to this Renderer.\n * * The given Viewer is already attached to another Renderer.\n */\n attachViewer(viewer: Viewer): void {\n if (this.#viewer) {\n throw new SDKError(\"Can't attach Viewer to WebGLRenderer - a Viewer is already attached\");\n }\n if (viewer.renderer) {\n throw new SDKError(\"Can't attach Viewer to WebGLRenderer - given Viewer is already attached to another Renderer\");\n }\n this.#viewer = viewer;\n this.#textureTranscoder.init(this.#viewer.capabilities);\n this.renderContext = new RenderContext(this.#viewer, this.#gl, this);\n }\n\n /**\n * Detaches the {@link @xeokit/viewer!Viewer | Viewer} that is currently attached, if any.\n *\n * @internal\n * @returns *void*\n * * Viewer successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is currently attached to this WebGLRenderer.\n */\n detachViewer(): SDKError | void {\n if (this.#viewer) {\n return new SDKError(\"Can't detach Viewer from WebGLRenderer - no Viewer is currently attached\");\n }\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[id];\n }\n this.#viewer = null;\n this.#rendererViews = {};\n this.renderContext = null;\n this.#layerList = [];\n this.rendererObjects = {};\n this.tileManager = null;\n }\n\n /**\n * Attaches a {@link @xeokit/viewer!View} to this WebGLRenderer.\n *\n * The WebGLRenderer will then begin rendering each {@link @xeokit/scene!SceneModel | SceneModel} previously or subsequently\n * created with {@link @xeokit/scene!Scene.createModel | Scene.createModel}, for the new View.\n *\n * You can only attach as many Views as indicated in {@link @xeokit/core!Capabilities.maxViews | Capabilities.maxViews}, as returned by\n * {@link @xeokit/webglrenderer!WebGLRenderer.getCapabilities | Renderer.getCapabilities}.\n *\n * You must attach a View before you can attach a SceneModel.\n *\n * @internal\n * @param view The View to attach.\n * @returns *void*\n * * View successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is attached to this WebGLRenderer.\n * * Caller attempted to attach too many Views.\n * * The WebGLRenderer failed to get a WebGL2 context on the View's canvas.\n */\n attachView(view: View): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't attach View to WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViews[view.id]) {\n return new SDKError(\"Can't attach additional View to WebGLRenderer - View already attached (see WebViewerCapabilities.maxViews)\");\n }\n\n view.camera.onViewMatrix.subscribe(this.#onViewCameraMatrix = () => {\n this.#viewMatrixDirty = true;\n });\n const rendererView = new WebGLRendererView(this.renderContext.gl, this.#webglCanvasElement, view);\n this.#rendererViews[view.id] = rendererView;\n view.viewIndex = this.#rendererViewsList.length;\n this.#rendererViewsList.push(rendererView);\n }\n\n // #updateViewIndices() {\n // this.#rendererViewsList = [];\n // for (let viewIndex = 0, len = this.#viewer.viewList.length; viewIndex < len; viewIndex++) {\n // const view = this.#viewer.viewList[viewIndex];\n // view.viewIndex = viewIndex;\n // this.#rendererViewsList[viewIndex] = this.#rendererViews[view.id];\n // }\n // }\n\n /**\n * Detaches the given {@link @xeokit/viewer!View} from this Renderer.\n *\n * The Renderer will then cease rendering for that View.\n *\n * @internal\n * @param view The View to detach.\n * @returns *void*\n * * View successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No Viewer is attached to this WebGLRenderer.\n * * View is not currently attached to this WebGLRenderer.\n */\n detachView(view: View): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't detach View from WebGLRenderer - no Viewer is attached\");\n }\n const rendererView = this.#rendererViews[view.id];\n if (!rendererView) {\n return new SDKError(\"Can't detach View to WebGLRenderer - given View is not attached\");\n }\n rendererView.destroy();\n delete this.#rendererViews[view.id];\n view.camera.onViewMatrix.unsubscribe(this.#onViewCameraMatrix);\n view.viewIndex = 0;\n this.#onViewCameraMatrix = null;\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[id];\n }\n this.renderContext = null;\n this.#layerList = [];\n this.rendererObjects = {};\n this.tileManager = null;\n // TODO: Remove rendererView etc\n }\n\n /**\n * Attaches a {@link @xeokit/scene!SceneModel | SceneModel} to this WebGLRenderer.\n *\n * This method attaches various hooks to the elements within the SceneModel, through which they can\n * upload state updates to the Renderer.\n *\n * * Sets a {@link @xeokit/scene!RendererModel} on {@link @xeokit/scene!SceneModel.rendererModel | SceneModel.rendererModel}\n * * Sets a {@link @xeokit/scene!RendererObject} on each {@link @xeokit/scene!SceneObject.rendererObject | SceneObject.rendererObject}\n * * Sets a {@link @xeokit/scene!RendererMesh} on each {@link @xeokit/scene!SceneMesh.rendererMesh | SceneMesh.rendererMesh}\n * * Sets a {@link @xeokit/scene!RendererTextureSet} on each {@link @xeokit/scene!SceneTextureSet.rendererTextureSet | SceneTextureSet.rendererTextureSet}\n * * Sets a {@link @xeokit/scene!RendererTexture} on each {@link @xeokit/scene!SceneTexture.rendererTexture | SceneTexture.rendererTexture}\n *\n * Then, when we make any state updates to those components, they will upload the updates into the Renderer.\n *\n * You must first attach a View with {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView} before you can attach a SceneModel.\n *\n * @param sceneModel\n * @internal\n * @returns *void*\n * * SceneModel successfully attached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * SceneModel already attached to this WebGLRenderer, or to another Renderer.\n */\n attachSceneModel(sceneModel: SceneModel): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't attach SceneModel to WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViewsList.length === 0) {\n throw new SDKError(\"Can't attach SceneModel to WebGLRenderer - no View is attached\");\n }\n const rendererModel = new WebGLRendererModel({\n id: sceneModel.id,\n sceneModel,\n viewer: this.viewer,\n textureTranscoder: this.#textureTranscoder,\n webglRenderer: this,\n renderContext: this.renderContext\n });\n this.#rendererModels[rendererModel.id] = rendererModel;\n this.#attachRendererObjects(rendererModel);\n this.#layerListDirty = true;\n sceneModel.rendererModel = rendererModel;\n }\n\n #attachRendererObjects(rendererModel: WebGLRendererModel) {\n const rendererObjects = rendererModel.rendererObjects;\n for (let id in rendererObjects) {\n this.rendererObjects[id] = rendererObjects[id];\n }\n }\n\n /**\n * Detaches a {@link @xeokit/scene!SceneModel | SceneModel} from this WebGLRenderer.\n *\n * Detaches and destroys the {@link @xeokit/scene!RendererModel}, {@link @xeokit/scene!RendererObject} and\n * {@link @xeokit/scene!RendererMesh},\n * {@link @xeokit/scene!RendererTexture} instances that were attached in {@link @xeokit/webglrenderer!WebGLRenderer.attachSceneModel}.\n *\n * @internal\n * @returns *void*\n * * SceneModel successfully detached.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * SceneModel is not attached to this WebGLRenderer.\n */\n detachSceneModel(sceneModel: SceneModel): SDKError | void {\n if (!this.#viewer) {\n throw new SDKError(\"Can't detach SceneModel from WebGLRenderer - no Viewer is attached\");\n }\n if (this.#rendererViewsList.length === 0) {\n throw new SDKError(\"Can't detach SceneModel to WebGLRenderer - no View is attached\");\n }\n if (this.#rendererModels[sceneModel.id] == undefined) {\n return new SDKError(`Can't detach SceneModel from WebGLRenderer - no SceneModel with this ID (\"${sceneModel.id}\") has been attached to this WebGLRenderer`);\n }\n this.#detachSceneModel(sceneModel);\n }\n\n #detachSceneModel(sceneModel: SceneModel) {\n if (this.#rendererModels[sceneModel.id]) {\n const rendererModel = this.#rendererModels[sceneModel.id];\n this.#detachRendererObjects(rendererModel);\n // Detaches WebGLRendererObjects, WebGLRendererMeshes, WebGLRendererTexturesSets,\n // WebGLRendererTextures etc. and destroys Layers\n rendererModel.destroy();\n delete this.#rendererModels[sceneModel.id];\n this.#layerListDirty = true;\n sceneModel.rendererModel = null;\n }\n }\n\n #detachRendererObjects(rendererModel: WebGLRendererModel) {\n const rendererObjects = rendererModel.rendererObjects;\n for (let id in rendererObjects) {\n delete this.rendererObjects[id];\n }\n }\n\n /**\n * @private\n */\n attachPickable(pickable: Pickable): number { // @ts-ignore\n return this.#pickIDs.addItem(pickable);\n }\n\n /**\n * @private\n */\n detachPickable(pickId: number) {\n this.#pickIDs.removeItem(pickId);\n }\n\n /**\n * Indicates that the WebGLRenderer needs to draw a new frame.\n * @internal\n */\n setImageDirty(viewIndex?: number): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets the WebGLRenderer's background color.\n * @internal\n */\n setBackgroundColor(viewIndex: number, color: FloatArrayParam): void { // @ts-ignore\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n // @ts-ignore\n rendererView.backgroundColor.set(color);\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets whether the WebGLRenderer draws edges.\n * Triggers a new frame render.\n * @internal\n */\n setEdgesEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.edgesEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Sets whether the WebGLRenderer draws with physically-based rendering.\n * Triggers a new frame render.\n * @internal\n */\n setPBREnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.pbrEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n\n getSAOSupported(): boolean {\n return isSafari && WEBGL_INFO.SUPPORTED_EXTENSIONS[\"OES_standard_derivatives\"];\n }\n\n /**\n * Sets whether the WebGLRenderer draws with SAO.\n * Triggers a new frame render.\n * @internal\n */\n setSAOEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.saoEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Enable/disable rendering of transparent objects for the given View.\n *\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @param enabled Whether to enable or disable transparent objects for the View.\n * @internal\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n */\n setTransparentEnabled(viewIndex: number, enabled: boolean): void {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (rendererView) {\n rendererView.transparentEnabled = enabled;\n rendererView.imageDirty = true;\n }\n }\n\n /**\n * Clears this WebGLRenderer for the given view.\n *\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n clear(viewIndex: number): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't clear canvas with WebGLRenderer - no Viewer and View is attached\");\n }\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n throw new SDKError(`Can't clear canvas with WebGLRenderer - no View attached at given viewIndex: ${viewIndex}`);\n }\n const gl = this.renderContext.gl;\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n if (rendererView.canvasTransparent) {\n gl.clearColor(1, 1, 1, 1);\n } else {\n gl.clearColor(rendererView.backgroundColor[0], rendererView.backgroundColor[1], rendererView.backgroundColor[2], 1.0);\n }\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n };\n\n /**\n * Triggers a rebuild of the shaders within this WebGLRenderer for the given View.\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *void*\n * * Success.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n setNeedsRebuild(viewIndex?: number): void {\n this.#shadersDirty = true;\n }\n\n /**\n * Gets if a new frame needs to be rendered for the given View.\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *boolean*\n * * True if a new frame needs to be rendered for the View.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this WebGLRenderer.\n * * Can't find a View attached to this WebGLRenderer with the given handle.\n */\n getNeedsRender(viewIndex?: number): boolean {\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n return false;\n }\n return (rendererView.imageDirty || this.#layerListDirty || this.#stateSortDirty);\n }\n\n /**\n * Renders a frame for a View.\n *\n * @internal\n * @param viewIndex Handle to the View, returned earlier by {@param params Rendering params.\n * @param [params.force=false] True to force a render, else only render if needed.\n * @link @xeokit/webglrenderer!WebGLRenderer.attachView | Renderer.attachView}.\n * @returns *{@link @xeokit/core!SDKError | SDKError}*\n * * No View is currently attached to this Renderer.\n * * Can't find a View attached to this Renderer with the given handle.\n */\n render(viewIndex: number, params?: { force: boolean; opaqueOnly: boolean }): void | SDKError {\n if (!this.#viewer) {\n throw new SDKError(\"Can't render with WebGLRenderer - no Viewer and View is attached\");\n }\n const rendererView = this.#rendererViewsList[viewIndex];\n if (!rendererView) {\n throw new SDKError(`Can't render with WebGLRenderer - no View attached at given viewIndex: ${viewIndex}`);\n }\n this.renderStats.reset();\n if (this.#shadersDirty) {\n this.onCompiled.dispatch(this, true);\n this.#shadersDirty = false;\n }\n // params = params || {};\n if (params.force) {\n rendererView.imageDirty = true;\n }\n this.#updateLayerList();\n if (rendererView.imageDirty) {\n this.#activateView(viewIndex);\n this.#draw({\n viewIndex,\n clear: true\n });\n\n rendererView.imageDirty = false;\n }\n }\n\n #activateView(viewIndex: number) {\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't activate View - no such target View attached: ${viewIndex}`);\n }\n const activeRendererView = this.#activeRendererView;\n if (activeRendererView) {\n const activeCanvasBoundingRect = activeRendererView.view.htmlElement.getBoundingClientRect();\n const primarySnapshotBuffer = activeRendererView.renderBufferManager.getRenderBuffer(\"snapshot\", {\n depthTexture: false,\n size: [activeCanvasBoundingRect.width, activeCanvasBoundingRect.height]\n });\n primarySnapshotBuffer.bind();\n primarySnapshotBuffer.clear();\n this.#draw({\n viewIndex: activeRendererView.view.viewIndex,\n clear: true\n });\n const image = primarySnapshotBuffer.readImage({\n format: \"png\",\n height: activeCanvasBoundingRect.height,\n width: activeCanvasBoundingRect.width\n });\n primarySnapshotBuffer.unbind();\n (activeRendererView.view.htmlElement).src = image;\n }\n\n const webglCanvasElement = this.#webglCanvasElement;\n\n const targetView = targetRendererView.view;\n const targetCanvasElement = targetView.htmlElement;\n const targetCanvasBoundingRect = targetCanvasElement.getBoundingClientRect();\n\n webglCanvasElement.style[\"left\"] = `${targetCanvasBoundingRect.left}px`;\n webglCanvasElement.style[\"top\"] = `${targetCanvasBoundingRect.top}px`;\n webglCanvasElement.style[\"width\"] = `${targetCanvasBoundingRect.width}px`;\n webglCanvasElement.style[\"height\"] = `${targetCanvasBoundingRect.height}px`;\n webglCanvasElement.width = targetCanvasBoundingRect.width;\n webglCanvasElement.height = targetCanvasBoundingRect.height;\n webglCanvasElement.style[\"z-index\"] = 100000;\n\n this.#activeRendererView = targetRendererView;\n }\n\n #updateLayerList(): void {\n if (this.#layerListDirty) {\n this.#buildLayerList();\n this.#layerListDirty = false;\n this.#stateSortDirty = true;\n }\n if (this.#stateSortDirty) {\n this.#sortLayerList();\n this.#stateSortDirty = false;\n for (let viewIndex = 0, len = this.#rendererViewsList.length; viewIndex < len; viewIndex++) {\n const rendererView = this.#rendererViewsList[viewIndex];\n rendererView.imageDirty = true;\n }\n }\n }\n\n #buildLayerList(): void {\n let lenLayerList = 0;\n for (let id in this.#rendererModels) {\n const rendererModel = this.#rendererModels[id];\n for (let i = 0, len = rendererModel.layerList.length; i < len; i++) {\n this.#layerList[lenLayerList++] = rendererModel.layerList[i];\n }\n }\n this.#layerList.length = lenLayerList;\n }\n\n #sortLayerList(): void {\n this.#layerList.sort((layer1, layer2) => {\n if (layer1.sortId < layer2.sortId) {\n return -1;\n }\n if (layer1.sortId > layer2.sortId) {\n return 1;\n }\n return 0;\n });\n }\n\n #draw(params: {\n viewIndex: number,\n clear: boolean;\n }) {\n const rendererView = this.#rendererViewsList[params.viewIndex];\n if (!rendererView) {\n return;\n }\n this.#activateExtensions();\n if (rendererView.saoEnabled && rendererView.view.sao.possible) {\n this.#drawSAOBuffers(params);\n }\n this.#drawColor(params);\n }\n\n #activateExtensions() {\n if (WEBGL_INFO.SUPPORTED_EXTENSIONS[\"OES_element_index_uint\"]) {\n this.#extensionHandles.OES_element_index_uint = this.renderContext.gl.getExtension(\"OES_element_index_uint\");\n }\n if (this.#logarithmicDepthBufferEnabled && WEBGL_INFO.SUPPORTED_EXTENSIONS[\"EXT_frag_depth\"]) {\n this.#extensionHandles.EXT_frag_depth = this.renderContext.gl.getExtension('EXT_frag_depth');\n }\n if (WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"]) {\n this.#extensionHandles.WEBGL_depth_texture = this.renderContext.gl.getExtension('WEBGL_depth_texture');\n }\n }\n\n #drawSAOBuffers(params: {\n clear: boolean;\n }) {\n // const sao = this.#view.sao;\n // const saoDepthRenderBuffer = this.#renderBufferManager.getRenderBuffer(\"saoDepth\", {\n // depthTexture: WEBGL_INFO.SUPPORTED_EXTENSIONS[\"WEBGL_depth_texture\"]\n // });\n // this.#saoDepthRenderBuffer.bind();\n // this.#saoDepthRenderBuffer.clear();\n // this.#drawDepth(params);\n // this.#saoDepthRenderBuffer.unbind();\n // // Render occlusion buffer\n // const occlusionRenderBuffer1 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion\");\n // occlusionRenderBuffer1.bind();\n // occlusionRenderBuffer1.clear();\n // this.#saoOcclusionRenderer.render(saoDepthRenderBuffer);\n // occlusionRenderBuffer1.unbind();\n // if (sao.blur) {\n // // Horizontally blur occlusion buffer 1 into occlusion buffer 2\n // const occlusionRenderBuffer2 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion2\");\n // occlusionRenderBuffer2.bind();\n // occlusionRenderBuffer2.clear();\n // this.#saoDepthLimitedBlurRenderer.render(saoDepthRenderBuffer, occlusionRenderBuffer1, 0);\n // occlusionRenderBuffer2.unbind();\n // // Vertically blur occlusion buffer 2 back into occlusion buffer 1\n // occlusionRenderBuffer1.bind();\n // occlusionRenderBuffer1.clear();\n // this.#saoDepthLimitedBlurRenderer.render(saoDepthRenderBuffer, occlusionRenderBuffer2, 1);\n // occlusionRenderBuffer1.unbind();\n // }\n }\n\n #drawDepth(params: {\n viewIndex: number,\n clear: boolean\n }) {\n this.renderContext.reset();\n const gl = this.renderContext.gl;\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n gl.clearColor(0, 0, 0, 0);\n gl.enable(gl.DEPTH_TEST);\n gl.frontFace(gl.CCW);\n gl.enable(gl.CULL_FACE);\n gl.depthMask(true);\n if (params.clear !== false) {\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n // for (let i = 0, len = this.#layerListPostCull.length; i < len; i++) {\n // const layer = this.#layerListPostCull[i];\n // // if (layer.culled === true || layer.visible === false || !layer.drawDepth) {\n // // continue;\n // // }\n // // if (layer.drawFlags.colorOpaque) {\n // // // layer.drawDepth(this.renderContext);\n // // }\n // }\n // const numVertexAttribs = WEBGL_INFO.MAX_VERTEX_ATTRIBS; // Fixes https://github.com/xeokit/xeokit-sdk/issues/174\n // for (let ii = 0; ii < numVertexAttribs; ii++) {\n // gl.disableVertexAttribArray(ii);\n // }\n }\n\n #drawColor(params: {\n viewIndex: number,\n clear: boolean;\n }) {\n\n const viewIndex = params.viewIndex;\n const rendererView = this.#rendererViewsList[viewIndex];\n const view = rendererView.view;\n const renderContext = this.renderContext;\n const gl = renderContext.gl;\n\n const normalDrawSAOBin: Layer[] = [];\n const edgesColorOpaqueBin: Layer[] = [];\n const normalFillTransparentBin: Layer[] = [];\n const edgesColorTransparentBin: Layer[] = [];\n const xrayedSilhouetteOpaqueBin: Layer[] = [];\n const xrayEdgesOpaqueBin: Layer[] = [];\n const xrayedSilhouetteTransparentBin: Layer[] = [];\n const xrayEdgesTransparentBin: Layer[] = [];\n const highlightedSilhouetteOpaqueBin: Layer[] = [];\n const highlightedEdgesOpaqueBin: Layer[] = [];\n const highlightedSilhouetteTransparentBin: Layer[] = [];\n const highlightedEdgesTransparentBin: Layer[] = [];\n const selectedSilhouetteOpaqueBin: Layer[] = [];\n const selectedEdgesOpaqueBin: Layer[] = [];\n const selectedSilhouetteTransparentBin: Layer[] = [];\n const selectedEdgesTransparentBin: Layer[] = [];\n\n renderContext.reset();\n renderContext.view = view;\n renderContext.withSAO = false;\n renderContext.pbrEnabled = rendererView.pbrEnabled && !!view.qualityRender;\n\n gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight);\n\n if (rendererView.canvasTransparent) {\n gl.clearColor(0, 0, 0, 0);\n } else {\n gl.clearColor(rendererView.backgroundColor[0], rendererView.backgroundColor[1], rendererView.backgroundColor[2], 1.0);\n }\n\n gl.enable(gl.DEPTH_TEST);\n gl.frontFace(gl.CCW);\n gl.enable(gl.CULL_FACE);\n gl.depthMask(true);\n gl.lineWidth(1);\n\n renderContext.lineWidth = 1;\n\n const saoPossible = view.sao.possible;\n\n if (rendererView.saoEnabled && saoPossible) {\n // const occlusionRenderBuffer1 = this.#renderBufferManager.getRenderBuffer(\"saoOcclusion\", {\n // depthTexture: false,\n // size: [gl.drawingBufferWidth, gl.drawingBufferHeight]\n // });\n // renderContext.occlusionTexture = occlusionRenderBuffer1 ? occlusionRenderBuffer1.getTexture() : null;\n } else {\n renderContext.occlusionTexture = null;\n\n }\n\n if (params.clear !== false) {\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n }\n\n // Render normal opaque solids, defer others to subsequent bins, to render after\n\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n\n if (meshCounts.numCulled === meshCounts.numMeshes || meshCounts.numVisible === 0) {\n continue;\n }\n\n if (meshCounts.numTransparent < meshCounts.numMeshes) {\n layer.drawColorOpaque();\n }\n\n if (rendererView.transparentEnabled) {\n if (meshCounts.numTransparent > 0) {\n normalFillTransparentBin.push(layer);\n }\n }\n\n if (meshCounts.numXRayed > 0) {\n if (view.xrayMaterial.fill) {\n if (view.xrayMaterial.fillAlpha < 1.0) {\n xrayedSilhouetteTransparentBin.push(layer);\n } else {\n xrayedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (meshCounts.numHighlighted > 0) {\n if (view.highlightMaterial.fill) {\n if (view.highlightMaterial.fillAlpha < 1.0) {\n highlightedSilhouetteTransparentBin.push(layer);\n } else {\n highlightedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (meshCounts.numSelected > 0) {\n if (view.selectedMaterial.fill) {\n if (view.selectedMaterial.fillAlpha < 1.0) {\n selectedSilhouetteTransparentBin.push(layer);\n } else {\n selectedSilhouetteOpaqueBin.push(layer);\n }\n }\n }\n\n if (rendererView.edgesEnabled && view.edges.enabled) {\n if (meshCounts.numTransparent < meshCounts.numMeshes) {\n edgesColorOpaqueBin.push(layer);\n }\n if (meshCounts.numTransparent > 0) {\n edgesColorTransparentBin.push(layer);\n }\n if (view.selectedMaterial.edgeAlpha < 1.0) {\n selectedEdgesTransparentBin.push(layer);\n } else {\n selectedEdgesOpaqueBin.push(layer);\n }\n if (meshCounts.numXRayed > 0) {\n if (view.xrayMaterial.edgeAlpha < 1.0) {\n xrayEdgesTransparentBin.push(layer);\n } else {\n xrayEdgesOpaqueBin.push(layer);\n }\n }\n if (view.highlightMaterial.edgeAlpha < 1.0) {\n highlightedEdgesTransparentBin.push(layer);\n } else {\n highlightedEdgesOpaqueBin.push(layer);\n }\n }\n }\n\n // Render deferred bins\n\n if (normalDrawSAOBin.length > 0) {\n renderContext.withSAO = true;\n for (let i = 0; i < normalDrawSAOBin.length; i++) {\n normalDrawSAOBin[i].drawColorOpaque();\n }\n }\n\n for (let i = 0; i < edgesColorOpaqueBin.length; i++) {\n edgesColorOpaqueBin[i].drawEdgesColorOpaque();\n }\n\n for (let i = 0; i < xrayedSilhouetteOpaqueBin.length; i++) {\n xrayedSilhouetteOpaqueBin[i].drawSilhouetteXRayed();\n }\n\n for (let i = 0; i < xrayEdgesOpaqueBin.length; i++) {\n xrayEdgesOpaqueBin[i].drawEdgesXRayed();\n }\n\n if (xrayedSilhouetteTransparentBin.length > 0 ||\n xrayEdgesTransparentBin.length > 0 ||\n normalFillTransparentBin.length > 0 ||\n edgesColorTransparentBin.length > 0) {\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n renderContext.backfaces = false;\n if (!this.#alphaDepthMask) {\n gl.depthMask(false);\n }\n for (let i = 0; i < xrayEdgesTransparentBin.length; i++) {\n xrayEdgesTransparentBin[i].drawEdgesXRayed();\n }\n for (let i = 0; i < xrayedSilhouetteTransparentBin.length; i++) {\n xrayedSilhouetteTransparentBin[i].drawSilhouetteXRayed();\n }\n if (normalFillTransparentBin.length > 0 || edgesColorTransparentBin.length > 0) {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < edgesColorTransparentBin.length; i++) {\n edgesColorTransparentBin[i].drawEdgesColorTranslucent();\n }\n for (let i = 0; i < normalFillTransparentBin.length; i++) {\n normalFillTransparentBin[i].drawColorTranslucent();\n }\n gl.disable(gl.BLEND);\n if (!this.#alphaDepthMask) {\n gl.depthMask(true);\n }\n }\n\n if (highlightedSilhouetteOpaqueBin.length > 0 || highlightedEdgesOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1; // HACK\n gl.clear(gl.DEPTH_BUFFER_BIT);\n for (let i = 0; i < highlightedEdgesOpaqueBin.length; i++) {\n highlightedEdgesOpaqueBin[i].drawEdgesHighlighted();\n }\n for (let i = 0; i < highlightedSilhouetteOpaqueBin.length; i++) {\n highlightedSilhouetteOpaqueBin[i].drawSilhouetteHighlighted();\n }\n }\n\n if (highlightedSilhouetteTransparentBin.length > 0 ||\n highlightedEdgesTransparentBin.length > 0 ||\n highlightedSilhouetteOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < highlightedEdgesTransparentBin.length; i++) {\n highlightedEdgesTransparentBin[i].drawEdgesHighlighted();\n }\n for (let i = 0; i < highlightedSilhouetteTransparentBin.length; i++) {\n highlightedSilhouetteTransparentBin[i].drawSilhouetteHighlighted();\n }\n gl.disable(gl.BLEND);\n }\n\n if (selectedSilhouetteOpaqueBin.length > 0 || selectedEdgesOpaqueBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n for (let i = 0; i < selectedEdgesOpaqueBin.length; i++) {\n selectedEdgesOpaqueBin[i].drawEdgesSelected();\n }\n for (let i = 0; i < selectedSilhouetteOpaqueBin.length; i++) {\n selectedSilhouetteOpaqueBin[i].drawSilhouetteSelected();\n }\n }\n\n if (selectedSilhouetteTransparentBin.length > 0 || selectedEdgesTransparentBin.length > 0) {\n renderContext.lastProgramId = -1;\n gl.clear(gl.DEPTH_BUFFER_BIT);\n gl.enable(gl.CULL_FACE);\n gl.enable(gl.BLEND);\n if (rendererView.canvasTransparent) {\n gl.blendEquation(gl.FUNC_ADD);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\n } else {\n gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);\n }\n for (let i = 0; i < selectedEdgesTransparentBin.length; i++) {\n selectedEdgesTransparentBin[i].drawEdgesSelected();\n }\n for (let i = 0; i < selectedSilhouetteTransparentBin.length; i++) {\n selectedSilhouetteTransparentBin[i].drawSilhouetteSelected();\n }\n gl.disable(gl.BLEND);\n }\n\n const numTextureUnits = WEBGL_INFO.MAX_TEXTURE_UNITS;\n for (let ii = 0; ii < numTextureUnits; ii++) {\n gl.activeTexture(gl.TEXTURE0 + ii);\n }\n gl.bindTexture(gl.TEXTURE_CUBE_MAP, null);\n gl.bindTexture(gl.TEXTURE_2D, null);\n\n const numVertexAttribs = WEBGL_INFO.MAX_VERTEX_ATTRIBS; // Fixes https://github.com/xeokit/xeokit-sdk/issues/174\n for (let ii = 0; ii < numVertexAttribs; ii++) {\n gl.disableVertexAttribArray(ii);\n }\n }\n\n /**\n * TODO\n * @internal\n */\n pick(viewIndex: number,\n pickParams: PickParams,\n pickResult = this.#pickResult): PickResult | null {\n\n if (!this.#viewer) {\n throw new SDKError(\"Can't pick object with WebGLRenderer - no Viewer and View is attached\");\n }\n\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't pick object with WebGLRenderer - no View attached at given viewInded: ${viewIndex}`);\n }\n\n const view = targetRendererView.view;\n\n if (this.#shadersDirty) {\n this.onCompiled.dispatch(this, true);\n this.#shadersDirty = false;\n }\n\n this.#updateLayerList();\n\n pickResult.reset();\n\n const {\n pickCanvasPos,\n pickViewMatrix,\n pickProjMatrix,\n pickWorldRayOrigin,\n pickWorldRayDir\n } = pickTemps;\n\n if (pickParams.canvasPos) {\n\n // @ts-ignore\n pickCanvasPos.set(pickParams.canvasPos);\n // @ts-ignore\n pickViewMatrix.set(view.camera.viewMatrix);\n // @ts-ignore\n pickProjMatrix.set(view.camera.projMatrix);\n pickResult.canvasPos = pickParams.canvasPos;\n } else {\n\n // Picking with arbitrary World-space ray\n // Align camera along ray and fire ray through center of canvas\n\n if (pickParams.rayMatrix) {\n\n // Ray defined using matrix\n\n // @ts-ignore\n pickViewMatrix.set(params.rayMatrix);\n // @ts-ignore\n pickProjMatrix.set(view.camera.projMatrix);\n } else {\n\n // Ray defined as origin and direction\n\n pickWorldRayOrigin.set(pickParams.rayOrigin || [0, 0, 0]);\n pickWorldRayDir.set(pickParams.rayDirection || [0, 0, 1]);\n const look = addVec3(pickWorldRayOrigin, pickWorldRayDir, tempVec3a);\n tempVec3b[0] = Math.random();\n tempVec3b[1] = Math.random();\n tempVec3b[2] = Math.random();\n normalizeVec3(tempVec3b);\n cross3Vec3(pickWorldRayDir, tempVec3b, tempVec3c);\n // @ts-ignore\n pickViewMatrix.set(lookAtMat4v(pickWorldRayOrigin, look, tempVec3c, tempMat4b));\n // @ts-ignore\n pickProjMatrix.set(view.camera.orthoProjection.projMatrix);\n pickResult.origin = pickWorldRayOrigin;\n pickResult.direction = pickWorldRayDir;\n }\n pickCanvasPos[0] = targetRendererView.view.htmlElement.clientWidth * 0.5;\n pickCanvasPos[1] = targetRendererView.view.htmlElement.clientHeight * 0.5;\n }\n\n if (pickParams.pickViewObject) {\n const rendererMesh = this.#pickMesh(viewIndex, targetRendererView, {\n pickCanvasPos,\n pickViewMatrix,\n pickProjMatrix,\n pickInvisible: !!pickParams.pickInvisible\n });\n if (rendererMesh) {\n const rendererObject = rendererMesh.rendererObject;\n const view = targetRendererView.view;\n const viewObject = view.objects[rendererObject.id];\n pickResult.viewObject = viewObject;\n }\n }\n\n // if (params.pickSurface) {\n // const worldPos = this.#pickSurface(viewIndex, targetRendererView, {\n // pickCanvasPos,\n // pickViewMatrix,\n // pickProjMatrix,\n // pickInvisible: params.pickInvisible\n // });\n // if (worldPos) {\n // pickResult.worldPos = worldPos;\n // }\n // }\n\n return pickResult;\n };\n\n #pickMesh(viewIndex: number,\n targetRendererView: WebGLRendererView,\n params: {\n pickCanvasPos: FloatArrayParam,\n pickViewMatrix: FloatArrayParam,\n pickProjMatrix: FloatArrayParam,\n pickInvisible: boolean\n }): WebGLRendererMesh {\n\n const gl = this.#gl\n const view = targetRendererView.view;\n const targetCanvasBoundingRect = targetRendererView.view.htmlElement.getBoundingClientRect();\n const pickProjMatrix = params.pickProjMatrix;\n const pickViewMatrix = params.pickViewMatrix;\n const resolutionScale = view.resolutionScale;\n const renderContext = this.renderContext;\n const pickBuffer = this.#pickBufferManager.getRenderBuffer(\"pickMesh\", {\n depthTexture: false,\n size: [1, 1]\n });\n pickBuffer.bind();\n pickBuffer.clear();\n renderContext.reset();\n renderContext.backfaces = true;\n renderContext.frontface = true; // \"ccw\"\n renderContext.pickViewMatrix = pickViewMatrix;\n renderContext.pickProjMatrix = pickProjMatrix;\n renderContext.pickInvisible = !!params.pickInvisible;\n renderContext.pickClipPos = [\n this.#getClipPosX(params.pickCanvasPos[0] * resolutionScale.resolutionScale, gl.drawingBufferWidth),\n this.#getClipPosY(params.pickCanvasPos[1] * resolutionScale.resolutionScale, gl.drawingBufferHeight)\n ];\n gl.viewport(0, 0, 1, 1);\n gl.depthMask(true);\n gl.enable(gl.DEPTH_TEST);\n gl.disable(gl.CULL_FACE);\n gl.disable(gl.BLEND);\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n if (meshCounts.numPickable < meshCounts.numMeshes ||\n meshCounts.numCulled === meshCounts.numMeshes ||\n meshCounts.numVisible === 0) {\n continue;\n }\n layer.drawPickMesh();\n }\n const pix = pickBuffer.read(0, 0);\n const pickID = pix[0] + (pix[1] << 8) + (pix[2] << 16) + (pix[3] << 24);\n\n console.log(\"pickID = \" + pickID);\n pickBuffer.unbind();\n\n if (pickID < 0) {\n return null;\n }\n\n return this.#pickIDs.items[pickID];\n }\n\n #pickWorldPos(\n viewIndex: number,\n params: {\n canvasPos: FloatArrayParam,\n pickViewMatrix: FloatArrayParam,\n pickProjMatrix: FloatArrayParam,\n pickInvisible: boolean,\n layer?: Layer\n }): WebGLRendererMesh | null {\n\n const targetRendererView = this.#rendererViewsList[viewIndex];\n if (!targetRendererView) {\n throw new SDKError(`Can't activate View - no such target View attached: ${viewIndex}`);\n }\n\n const gl = this.#gl\n const view = targetRendererView.view;\n const pickProjMatrix = params.pickProjMatrix;\n const pickViewMatrix = params.pickViewMatrix;\n const resolutionScale = view.resolutionScale;\n const renderContext = this.renderContext;\n\n const targetCanvasBoundingRect = targetRendererView.view.htmlElement.getBoundingClientRect();\n const pickBuffer = targetRendererView.renderBufferManager.getRenderBuffer(\"pickDepth\", {\n depthTexture: true,\n size: [targetCanvasBoundingRect.width, targetCanvasBoundingRect.height]\n });\n pickBuffer.setSize([targetCanvasBoundingRect.width, targetCanvasBoundingRect.height]);\n pickBuffer.bind();\n pickBuffer.clear();\n\n renderContext.reset();\n renderContext.backfaces = true;\n renderContext.frontface = true; // \"ccw\"\n renderContext.pickViewMatrix = pickViewMatrix;\n renderContext.pickProjMatrix = pickProjMatrix;\n renderContext.pickInvisible = !!params.pickInvisible;\n renderContext.pickClipPos[0] = this.#getClipPosX(params.canvasPos[0] * resolutionScale.resolutionScale, gl.drawingBufferWidth);\n renderContext.pickClipPos[0] = this.#getClipPosY(params.canvasPos[1] * resolutionScale.resolutionScale, gl.drawingBufferHeight);\n\n gl.viewport(0, 0, 1, 1);\n gl.depthMask(true);\n gl.enable(gl.DEPTH_TEST);\n gl.disable(gl.CULL_FACE);\n gl.disable(gl.BLEND);\n gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);\n\n if (params.layer) {\n params.layer.drawPickDepths();\n } else {\n for (let i = 0, len = this.#layerList.length; i < len; i++) {\n const layer = this.#layerList[i];\n const meshCounts = layer.meshCounts[viewIndex];\n if (meshCounts.numPickable < meshCounts.numMeshes ||\n meshCounts.numCulled === meshCounts.numMeshes ||\n meshCounts.numVisible === 0) {\n continue;\n }\n layer.drawPickDepths();\n }\n }\n\n const pix = pickBuffer.read(0, 0);\n\n pickBuffer.unbind();\n\n const pickID = pix[0] + (pix[1] << 8) + (pix[2] << 16) + (pix[3] << 24);\n if (pickID < 0) {\n return null;\n }\n\n return this.#pickIDs.items[pickID];\n }\n\n\n #getClipPosX(pos: number, size: number) {\n return 2 * (pos / size) - 1;\n }\n\n #getClipPosY(pos: number, size: number) {\n return 1 - 2 * (pos / size);\n }\n\n beginSnapshot(viewIndex: number, params?: {\n width: number,\n height: number\n }) {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't begin snapshot with WebGLRenderer.beginSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // if (params && params.width && params.height) {\n // snapshotBuffer.setSize([params.width, params.height]);\n // }\n // snapshotBuffer.bind();\n // snapshotBuffer.clear();\n // this.#snapshotBound = true;\n }\n\n renderSnapshot() {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't render snapshot with WebGLRenderer.renderSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // snapshotBuffer.clear();\n // this.render(viewIndex, {\n // force: true,\n // opaqueOnly: false\n // });\n // rendererView.imageDirty = true;\n }\n\n readSnapshot(): string {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't read snapshot with WebGLRenderer.readSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // return snapshotBuffer.readImage(params);\n return \"\";\n }\n\n readSnapshotAsCanvas(): HTMLCanvasElement {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't read snapshot with WebGLRenderer.readSnapshotAsCanvas() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // return snapshotBuffer.readImageAsCanvas();\n return null;\n }\n\n /**\n * Exits snapshot mode.\n *\n * Switches rendering back to the main canvas.\n */\n endSnapshot() {\n // const rendererView = this.#rendererViewsList[viewIndex];\n // if (!rendererView) {\n // throw new SDKError(`Can't end snapshot with WebGLRenderer.endSnapshot() - no View attached at given viewIndex: ${viewIndex}`);\n // }\n // if (!this.#snapshotBound) {\n // return;\n // }\n // const snapshotBuffer = rendererView.renderBufferManager.getRenderBuffer(\"snapshot\");\n // snapshotBuffer.unbind();\n this.#snapshotBound = false;\n }\n\n destroy() {\n if (this.#destroyed) {\n return;\n }\n if (this.#viewer) {\n this.detachViewer();\n }\n this.#pickBufferManager.destroy();\n this.#destroyed = true;\n this.onDestroyed.dispatch(this, true);\n }\n}\n", "import {View} from \"@xeokit/viewer\";\nimport {WebGLRenderBuffer} from \"@xeokit/webglutils\";\n\n/**\n * @private\n */\nexport class WebGLRenderBufferManager {\n #gl: WebGL2RenderingContext;\n #view: View;\n #renderBuffersBasic: { [key: string]: WebGLRenderBuffer };\n #renderBuffersScaled: { [key: string]: WebGLRenderBuffer };\n #webglCanvas: HTMLCanvasElement;\n\n constructor(gl: WebGL2RenderingContext, webglCanvas: HTMLCanvasElement) {\n this.#gl = gl;\n // this.#view = view;\n this.#webglCanvas= webglCanvas;\n this.#renderBuffersBasic = {};\n this.#renderBuffersScaled = {};\n }\n\n getRenderBuffer(id: string, options?: {\n depthTexture: boolean;\n size: number[];\n }) {\n // const renderBuffers = this.#view.resolutionScale.enabled ? this.#renderBuffersBasic : this.#renderBuffersScaled;\n const renderBuffers =this.#renderBuffersBasic;\n let renderBuffer = renderBuffers[id];\n if (!renderBuffer) {\n renderBuffer = new WebGLRenderBuffer(this.#webglCanvas, this.#gl, options);\n renderBuffers[id] = renderBuffer;\n } else {\n if (options && options.size) {\n renderBuffer.setSize(options.size);\n }\n }\n return renderBuffer;\n }\n\n destroy() {\n for (let id in this.#renderBuffersBasic) {\n this.#renderBuffersBasic[id].destroy();\n }\n for (let id in this.#renderBuffersScaled) {\n this.#renderBuffersScaled[id].destroy();\n }\n }\n}\n", "import {SceneModel, SceneModelStreamParams} from \"@xeokit/scene\";\nimport {LinesPrimitive, TrianglesPrimitive} from \"@xeokit/constants\";\n\n\n/**\n * Enables a {@link @xeokit/scene!SceneModel | SceneModel} to be progressively loaded\n * into {@link @xeokit/viewer!Viewer | Viewer} that's configured with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}.\n *\n * @param sceneModel\n */\nexport function createSceneModelStreamParams(sceneModel: SceneModel) {\n\n const layersBeingBuilt = {};\n const layerList = [];\n let layerIndex = 0;\n\n Object.entries(sceneModel.objects).forEach(([objectId, sceneObject]) => {\n\n for (const sceneMesh of sceneObject.meshes) {\n\n const sceneGeometry = sceneMesh.geometry;\n const textureSetId = sceneMesh.textureSet ? sceneMesh.textureSet.id : \"\";\n const tile = sceneMesh.tile;\n const layerId = `${textureSetId}.${sceneGeometry.primitive}.${tile.id}`;\n\n let layer = layersBeingBuilt[layerId];\n\n let canCreate = false;\n\n while (!canCreate) {\n if (!layer) {\n layerIndex = layerList.length;\n layer = {\n layerIndex,\n numMeshes: 0,\n numVertices: 0,\n numIndices: 0\n };\n layerList.push(layer);\n layersBeingBuilt[layerId] = layer;\n }\n\n const indicesPerPrimitive = sceneGeometry.primitive === TrianglesPrimitive ? 3 : (LinesPrimitive ? 2 : 1); // TODO\n const numExistingIndices = layer.numIndices;\n const numVerticesToCreate = sceneGeometry.positionsCompressed.length / indicesPerPrimitive;\n const numIndicesToCreate = sceneGeometry.indices.length / indicesPerPrimitive;\n\n canCreate =\n (layer.numVertices + numVerticesToCreate) <= 500000 * 4096 &&\n (numExistingIndices + numIndicesToCreate) <= 500000;\n\n if (canCreate) {\n layer.numMeshes++;\n layer.numVertices += numVerticesToCreate;\n // TODO\n }\n }\n\n if (canCreate) {\n sceneMesh.streamLayerIndex = layerIndex;\n } else { // Layer is full\n delete layersBeingBuilt[layerId];\n layer = null;\n }\n }\n });\n\n const streamParams: SceneModelStreamParams = {\n streamLayers: []\n };\n\n for (let i = 0, len = layerList.length; i < len; i++) {\n const layer = layerList[i];\n streamParams.streamLayers.push({\n numLayerMeshes: layer.numLayerMeshes,\n numVertices: layer.numVertices,\n numIndices: layer.numIndices\n });\n }\n\n sceneModel.streamParams = streamParams;\n}\n", "export * from './CameraControl';\n\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {CameraControl} from \"./CameraControl\";\nimport {createVec2} from \"@xeokit/matrix\";\n\nconst DEFAULT_SNAP_PICK_RADIUS = 45;\nconst DEFAULT_SNAP_MODE = \"vertex\";\n\n/**\n *\n * @private\n */\nclass PickController {\n #view: View;\n #cameraControl: CameraControl;\n #configs: any;\n private schedulePickEntity: boolean;\n private schedulePickSurface: boolean;\n private scheduleSnapOrPick: boolean;\n private pickCursorPos: any;\n private picked: boolean;\n private pickedSurface: boolean;\n private pickResult: PickResult;\n #lastPickedEntityId: any;\n #lastHash: any;\n #needFireEvents: number;\n private snappedOrPicked: boolean;\n private hoveredSnappedOrSurfaceOff: boolean;\n private snapPickResult: PickResult;\n\n constructor(cameraControl: CameraControl, configs: any) {\n\n this.#view = cameraControl.view;\n\n this.#cameraControl = cameraControl;\n\n this.#view.htmlElement.oncontextmenu = function (e) {\n e.preventDefault();\n };\n\n this.#configs = configs;\n\n /**\n * Set true to schedule picking of an Entity.\n * @type {boolean}\n */\n this.schedulePickEntity = false;\n\n /**\n * Set true to schedule picking of a position on teh surface of an Entity.\n * @type {boolean}\n */\n this.schedulePickSurface = false;\n\n /**\n * Set true to schedule snap-picking with surface picking as a fallback - used for measurement.\n * @type {boolean}\n */\n this.scheduleSnapOrPick = false;\n\n /**\n * The canvas position at which to do the next scheduled pick.\n * @type {Number[]}\n */\n this.pickCursorPos = createVec2();\n\n /**\n * Will be true after picking to indicate that something was picked.\n * @type {boolean}\n */\n this.picked = false;\n\n /**\n * Will be true after picking to indicate that a position on the surface of an Entity was picked.\n * @type {boolean}\n */\n this.pickedSurface = false;\n\n /**\n * Will hold the PickResult after after picking.\n * @type {PickResult}\n */\n this.pickResult = null;\n\n this.#lastPickedEntityId = null;\n\n this.#lastHash = null;\n\n this.#needFireEvents = 0;\n }\n\n /**\n * Immediately attempts a pick, if scheduled.\n */\n update() {\n\n if (!this.#configs.pointerEnabled) {\n return;\n }\n\n if (!this.schedulePickEntity && !this.schedulePickSurface) {\n return;\n }\n\n const hash = `${~~this.pickCursorPos[0]}-${~~this.pickCursorPos[1]}-${this.scheduleSnapOrPick}-${this.schedulePickSurface}-${this.schedulePickEntity}`;\n if (this.#lastHash === hash) {\n return;\n }\n\n this.picked = false;\n this.pickedSurface = false;\n this.snappedOrPicked = false;\n this.hoveredSnappedOrSurfaceOff = false;\n\n const hasHoverSurfaceSubs = this.#cameraControl.onHoverSurface.count > 0;\n\n if (this.scheduleSnapOrPick) {\n const snapPickResult = this.#view.pick({\n canvasPos: this.pickCursorPos,\n snapRadius: this.#configs.snapRadius,\n snapToVertex: this.#configs.snapToVertex,\n snapToEdge: this.#configs.snapToEdge,\n });\n if (snapPickResult && (snapPickResult.snappedToEdge || snapPickResult.snappedToVertex)) {\n this.snapPickResult = snapPickResult;\n this.snappedOrPicked = true;\n this.#needFireEvents++;\n } else {\n this.schedulePickSurface = true; // Fallback\n this.snapPickResult = null;\n }\n }\n\n if (this.schedulePickSurface) {\n if (this.pickResult && this.pickResult.worldPos) {\n const pickResultCanvasPos = this.pickResult.canvasPos;\n if (pickResultCanvasPos[0] === this.pickCursorPos[0] && pickResultCanvasPos[1] === this.pickCursorPos[1]) {\n this.picked = true;\n this.pickedSurface = true;\n this.#needFireEvents += hasHoverSurfaceSubs ? 1 : 0;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n if (this.scheduleSnapOrPick) {\n this.snappedOrPicked = true;\n } else {\n this.hoveredSnappedOrSurfaceOff = true;\n }\n this.scheduleSnapOrPick = false;\n return;\n }\n }\n }\n\n if (this.schedulePickEntity) {\n if (this.pickResult && (this.pickResult.canvasPos || this.pickResult.snappedCanvasPos)) {\n const pickResultCanvasPos = this.pickResult.canvasPos || this.pickResult.snappedCanvasPos;\n if (pickResultCanvasPos[0] === this.pickCursorPos[0] && pickResultCanvasPos[1] === this.pickCursorPos[1]) {\n this.picked = true;\n this.pickedSurface = false;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n return;\n }\n }\n }\n\n if (this.schedulePickSurface || (this.scheduleSnapOrPick && !this.snapPickResult)) {\n this.pickResult = this.#view.pick({\n pickSurface: true,\n pickSurfaceNormal: false,\n canvasPos: this.pickCursorPos\n });\n if (this.pickResult) {\n this.picked = true;\n if (this.scheduleSnapOrPick) {\n this.snappedOrPicked = true;\n } else {\n this.pickedSurface = true;\n }\n this.#needFireEvents++;\n } else if (this.scheduleSnapOrPick) {\n this.hoveredSnappedOrSurfaceOff = true;\n this.#needFireEvents++;\n }\n\n } else { // schedulePickEntity == true\n\n this.pickResult = this.#view.pick({\n canvasPos: this.pickCursorPos\n });\n\n if (this.pickResult) {\n this.picked = true;\n this.pickedSurface = false;\n this.#needFireEvents++;\n }\n }\n\n this.scheduleSnapOrPick = false;\n this.schedulePickEntity = false;\n this.schedulePickSurface = false;\n }\n\n fireEvents() {\n\n if (this.#needFireEvents === 0) {\n return;\n }\n\n if (this.hoveredSnappedOrSurfaceOff) {\n this.#cameraControl.onHoverSnapOrSurfaceOff.dispatch(this.#cameraControl, {\n canvasPos: this.pickCursorPos,\n pointerPos: this.pickCursorPos\n });\n }\n\n if (this.snappedOrPicked) {\n if (this.snapPickResult) {\n const pickResult = new PickResult();\n pickResult.viewObject = this.snapPickResult.viewObject;\n pickResult.snappedToVertex = this.snapPickResult.snappedToVertex;\n pickResult.snappedToEdge = this.snapPickResult.snappedToEdge;\n pickResult.worldPos = this.snapPickResult.worldPos;\n pickResult.canvasPos = this.pickCursorPos\n pickResult.snappedCanvasPos = this.snapPickResult.snappedCanvasPos;\n this.#cameraControl.onHoverSnapOrSurface.dispatch(this.#cameraControl, pickResult);\n this.snapPickResult = null;\n } else {\n this.#cameraControl.onHoverSnapOrSurface.dispatch(this.#cameraControl, this.pickResult);\n }\n } else {\n\n }\n\n if (this.picked && this.pickResult && (this.pickResult.viewObject || this.pickResult.worldPos)) {\n\n if (this.pickResult.viewObject) {\n\n const pickedEntityId = this.pickResult.viewObject.id;\n\n if (this.#lastPickedEntityId !== pickedEntityId) {\n\n if (this.#lastPickedEntityId !== undefined) {\n this.#cameraControl.onHoverOut.dispatch(this.#cameraControl, {\n viewObject: this.#view.objects[this.#lastPickedEntityId]\n });\n }\n\n this.#cameraControl.onHoverEnter.dispatch(this.#cameraControl, this.pickResult);\n this.#lastPickedEntityId = pickedEntityId;\n }\n }\n\n this.#cameraControl.onHover.dispatch(this.#cameraControl, this.pickResult);\n\n if (this.pickResult.worldPos) {\n this.pickedSurface = true;\n this.#cameraControl.onHoverSurface.dispatch(this.#cameraControl, this.pickResult);\n }\n\n } else {\n\n if (this.#lastPickedEntityId !== undefined) {\n this.#cameraControl.onHoverOut.dispatch(this.#cameraControl, {\n viewObject: this.#view.objects[this.#lastPickedEntityId]\n });\n this.#lastPickedEntityId = undefined;\n }\n\n this.#cameraControl.onHoverOff.dispatch(this.#cameraControl, {\n canvasPos: this.pickCursorPos\n });\n }\n\n this.pickResult = null;\n\n this.#needFireEvents = 0;\n }\n}\n\nexport {PickController};\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {\n addVec3,\n compareVec3,\n createMat4,\n createVec2,\n createVec3,\n createVec4,\n cross3Vec3,\n decomposeMat4, distVec3, dotVec4,\n inverseMat4, lenVec3, lookAtMat4v, mulVec3Scalar, normalizeVec3, sqLenVec3, subVec3,\n transformPoint3, transformPoint4, transformVec3\n} from \"@xeokit/matrix\";\nimport {clamp, FloatArrayParam} from \"@xeokit/math\";\nimport {worldToRTCPos} from \"@xeokit/rtc\";\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\nconst tempVec4c = createVec4();\n\n\n/** @private */\nclass PivotController {\n #view: View;\n #configs: any;\n #pivotWorldPos: Float64Array;\n #cameraOffset: Float64Array;\n #azimuth: number;\n #polar: number;\n #radius: number;\n #pivotPosSet: boolean;\n #pivoting: boolean;\n #shown: boolean;\n #pivotSphereEnabled: boolean;\n #pivotSphere: any;\n #pivotSphereSize: number;\n #pivotSphereGeometry: any;\n #pivotSphereMaterial: any;\n #rtcCenter: Float64Array;\n #rtcPos: Float64Array;\n #pivotViewPos: any;\n #pivotProjPos: any;\n #pivotCanvasPos: any;\n #cameraDirty: boolean;\n #onViewMatrix: any;\n #onProjMatrix: () => void;\n #onTick: () => void;\n #pivotElement: any;\n\n /**\n * @private\n */\n constructor(view: View, configs) {\n\n // Pivot math by: http://www.derschmale.com/\n\n this.#view = view;\n this.#configs = configs;\n this.#pivotWorldPos = createVec3();\n this.#cameraOffset = createVec3();\n this.#azimuth = 0;\n this.#polar = 0;\n this.#radius = 0;\n this.#pivotPosSet = false; // Initially false, true as soon as #pivotWorldPos has been set to some value\n this.#pivoting = false; // True while pivoting\n this.#shown = false;\n\n this.#pivotSphereEnabled = false;\n this.#pivotSphere = null;\n this.#pivotSphereSize = 1;\n this.#pivotSphereGeometry = null;\n this.#pivotSphereMaterial = null;\n this.#rtcCenter = createVec3();\n this.#rtcPos = createVec3();\n\n this.#pivotViewPos = createVec4();\n this.#pivotProjPos = createVec4();\n this.#pivotCanvasPos = createVec2();\n this.#cameraDirty = true;\n\n this.#onViewMatrix = this.#view.camera.onViewMatrix.sub(() => {\n this.#cameraDirty = true;\n });\n\n this.#onProjMatrix = this.#view.camera.onProjMatrix.sub(() => {\n this.#cameraDirty = true;\n });\n\n this.#onTick = this.#view.viewer.onTick.sub(() => {\n this.updatePivotElement();\n this.updatePivotSphere();\n });\n }\n\n createPivotSphere() {\n // const currentPos = this.getPivotPos();\n // const cameraPos = createVec3();\n // decomposeMat4(inverseMat4(this.#view.camera.viewMatrix, createMat4()), cameraPos, createVec4(), createVec3());\n // const length = distVec3(cameraPos, currentPos);\n // let radius = (Math.tan(Math.PI / 500) * length) * this.#pivotSphereSize;\n //\n // if (this.#view.camera.projectionType == OrthoProjectionType) {\n // radius /= (this.#view.camera.orthoProjection.scale / 2);\n // }\n //\n // worldToRTCPos(currentPos, this.#rtcCenter, this.#rtcPos);\n // this.#pivotSphereGeometry = new VBOGeometry(\n // this.#view,\n // buildSphereGeometry({ radius })\n // );\n // this.#pivotSphere = new Mesh(this.#view, {\n // geometry: this.#pivotSphereGeometry,\n // material: this.#pivotSphereMaterial,\n // pickable: false,\n // position: this.#rtcPos,\n // rtcCenter: this.#rtcCenter\n // });\n };\n\n destroyPivotSphere() {\n if (this.#pivotSphere) {\n this.#pivotSphere.destroy();\n this.#pivotSphere = null;\n }\n if (this.#pivotSphereGeometry) {\n this.#pivotSphereGeometry.destroy();\n this.#pivotSphereGeometry = null;\n }\n }\n\n updatePivotElement() {\n\n // const camera = this.#view.camera;\n // const htmlElement = this.#view.htmlElement;\n //\n // if (this.#pivoting && this.#cameraDirty) {\n //\n // transformPoint3(camera.viewMatrix, this.getPivotPos(), this.#pivotViewPos);\n // this.#pivotViewPos[3] = 1;\n // transformPoint4(camera.projMatrix, this.#pivotViewPos, this.#pivotProjPos);\n //\n // const canvasAABB = this.#view.boundary;\n // const canvasWidth = canvasAABB[2];\n // const canvasHeight = canvasAABB[3];\n //\n // this.#pivotCanvasPos[0] = Math.floor((1 + this.#pivotProjPos[0] / this.#pivotProjPos[3]) * canvasWidth / 2);\n // this.#pivotCanvasPos[1] = Math.floor((1 - this.#pivotProjPos[1] / this.#pivotProjPos[3]) * canvasHeight / 2);\n //\n // // data-textures: avoid to do continuous DOM layout calculations\n // let canvasBoundingRect = htmlElement.#lastBoundingClientRect;\n // if (!canvasBoundingRect || htmlElement.#canvasSizeChanged) {\n // canvasBoundingRect = htmlElement.#lastBoundingClientRect = htmlElement.getBoundingClientRect ();\n // }\n //\n // if (this.#pivotElement) {\n // this.#pivotElement.style.left = (Math.floor(canvasBoundingRect.left + this.#pivotCanvasPos[0]) - (this.#pivotElement.clientWidth / 2) + window.scrollX) + \"px\";\n // this.#pivotElement.style.top = (Math.floor(canvasBoundingRect.top + this.#pivotCanvasPos[1]) - (this.#pivotElement.clientHeight / 2) + window.scrollY) + \"px\";\n // }\n // this.#cameraDirty = false;\n // }\n }\n\n updatePivotSphere() {\n if (this.#pivoting && this.#pivotSphere) {\n worldToRTCPos(this.getPivotPos(), this.#rtcCenter, this.#rtcPos);\n if(!compareVec3(this.#rtcPos, this.#pivotSphere.position)) {\n this.destroyPivotSphere();\n this.createPivotSphere();\n }\n }\n }\n /**\n * Sets the HTML DOM element that will represent the pivot position.\n *\n * @param pivotElement\n */\n setPivotElement(pivotElement) {\n this.#pivotElement = pivotElement;\n }\n\n /**\n * Sets a sphere as the representation of the pivot position.\n *\n * @param {Object} [cfg] Sphere configuration.\n * @param {String} [cfg.size=1] Optional size factor of the sphere. Defaults to 1.\n * @param {String} [cfg.color=Array] Optional maretial color. Defaults to a red.\n */\n enablePivotSphere(cfg = {\n size: 0,\n color: [1,1,1]\n }) {\n // this.destroyPivotSphere();\n // this.#pivotSphereEnabled = true;\n // if (cfg.size) {\n // this.#pivotSphereSize = cfg.size;\n // }\n // const color = cfg.color || [1, 0, 0];\n // this.#pivotSphereMaterial = new PhongMaterial(this.#view, {\n // emissive: color,\n // ambient: color,\n // specular: [0,0,0],\n // diffuse: [0,0,0],\n // });\n }\n\n /**\n * Remove the sphere as the representation of the pivot position.\n *\n */\n disablePivotSphere() {\n this.destroyPivotSphere();\n this.#pivotSphereEnabled = false;\n }\n\n /**\n * Begins pivoting.\n */\n startPivot() {\n\n if (this.#cameraLookingDownwards()) {\n this.#pivoting = false;\n return false;\n }\n\n const camera = this.#view.camera;\n\n let lookat = lookAtMat4v(camera.eye, camera.look, camera.worldUp);\n transformPoint3(lookat, this.getPivotPos(), this.#cameraOffset);\n\n const pivotPos = this.getPivotPos();\n this.#cameraOffset[2] += distVec3(camera.eye, pivotPos);\n\n lookat = inverseMat4(lookat);\n\n const offset = transformVec3(lookat, this.#cameraOffset);\n const diff = createVec3();\n\n subVec3(camera.eye, pivotPos, diff);\n addVec3(diff, offset);\n\n if (camera.zUp) {\n const t = diff[1];\n diff[1] = diff[2];\n diff[2] = t;\n }\n\n this.#radius = lenVec3(diff);\n this.#polar = Math.acos(diff[1] / this.#radius);\n this.#azimuth = Math.atan2(diff[0], diff[2]);\n this.#pivoting = true;\n }\n\n #cameraLookingDownwards() { // Returns true if angle between camera viewing direction and World-space \"up\" axis is too small\n const camera = this.#view.camera;\n const forwardAxis = normalizeVec3(subVec3(camera.look, camera.eye, tempVec3a));\n const rightAxis = cross3Vec3(forwardAxis, camera.worldUp, tempVec3b);\n let rightAxisLen = sqLenVec3(rightAxis);\n return (rightAxisLen <= 0.0001);\n }\n\n /**\n * Returns true if we are currently pivoting.\n *\n * @returns {Boolean}\n */\n getPivoting() {\n return this.#pivoting;\n }\n\n /**\n * Sets a 3D World-space position to pivot about.\n *\n * @param {Number[]} worldPos The new World-space pivot position.\n */\n setPivotPos(worldPos) {\n this.#pivotWorldPos.set(worldPos);\n this.#pivotPosSet = true;\n }\n\n /**\n * Sets the pivot position to the 3D projection of the given 2D canvas coordinates on a sphere centered\n * at the viewpoint. The radius of the sphere is configured via {@link CameraControl#smartPivot}.\n *\n *\n * @param canvasPos\n */\n setCanvasPivotPos(canvasPos) {\n const camera = this.#view.camera;\n const pivotShereRadius = Math.abs(distVec3(this.#view.viewer.scene.center, camera.eye));\n const transposedProjectMat = camera.projection.transposedProjMatrix;\n // @ts-ignore\n const Pt3 = transposedProjectMat.subarray(8, 12);\n // @ts-ignore\n const Pt4 = transposedProjectMat.subarray(12);\n const D = [0, 0, -1.0, 1];\n const screenZ = dotVec4(D, Pt3) / dotVec4(D, Pt4);\n const worldPos = tempVec4a;\n camera.projection.unproject(canvasPos, screenZ, tempVec4b, tempVec4c, worldPos);\n const eyeWorldPosVec = normalizeVec3(subVec3(worldPos, camera.eye, tempVec3a));\n const posOnSphere = addVec3(camera.eye, mulVec3Scalar(eyeWorldPosVec, pivotShereRadius, tempVec3b), tempVec3c);\n this.setPivotPos(posOnSphere);\n }\n\n /**\n * Gets the current position we're pivoting about.\n * @returns {Number[]} The current World-space pivot position.\n */\n getPivotPos():FloatArrayParam {\n return (this.#pivotPosSet) ? this.#pivotWorldPos : this.#view.camera.look; // Avoid pivoting about [0,0,0] by default\n }\n\n /**\n * Continues to pivot.\n *\n * @param {Number} yawInc Yaw rotation increment.\n * @param {Number} pitchInc Pitch rotation increment.\n */\n continuePivot(yawInc, pitchInc) {\n if (!this.#pivoting) {\n return;\n }\n if (yawInc === 0 && pitchInc === 0) {\n return;\n }\n const camera = this.#view.camera;\n var dx = -yawInc;\n const dy = -pitchInc;\n if (camera.worldUp[2] === 1) {\n dx = -dx;\n }\n this.#azimuth += -dx * .01;\n this.#polar += dy * .01;\n this.#polar = clamp(this.#polar, .001, Math.PI - .001);\n const pos = [\n this.#radius * Math.sin(this.#polar) * Math.sin(this.#azimuth),\n this.#radius * Math.cos(this.#polar),\n this.#radius * Math.sin(this.#polar) * Math.cos(this.#azimuth)\n ];\n if (camera.worldUp[2] === 1) {\n const t = pos[1];\n pos[1] = pos[2];\n pos[2] = t;\n }\n // Preserve the eye->look distance, since in xeokit \"look\" is the point-of-interest, not the direction vector.\n const eyeLookLen = lenVec3(subVec3(camera.look, camera.eye, createVec3()));\n const pivotPos = this.getPivotPos();\n addVec3(pos, pivotPos);\n let lookat = lookAtMat4v(pos, pivotPos, camera.worldUp);\n lookat = inverseMat4(lookat);\n const offset = transformVec3(lookat, this.#cameraOffset);\n lookat[12] -= offset[0];\n lookat[13] -= offset[1];\n lookat[14] -= offset[2];\n const zAxis = [lookat[8], lookat[9], lookat[10]];\n camera.eye = [lookat[12], lookat[13], lookat[14]];\n subVec3(camera.eye, mulVec3Scalar(zAxis, eyeLookLen), camera.look);\n camera.up = [lookat[4], lookat[5], lookat[6]];\n this.showPivot();\n }\n\n /**\n * Shows the pivot position.\n *\n * Only works if we set an HTML DOM element to represent the pivot position.\n */\n showPivot() {\n if (this.#shown) {\n return;\n }\n if (this.#pivotElement) {\n this.updatePivotElement();\n this.#pivotElement.style.visibility = \"visible\";\n }\n if (this.#pivotSphereEnabled) {\n this.destroyPivotSphere();\n this.createPivotSphere();\n }\n this.#shown = true;\n }\n\n /**\n * Hides the pivot position.\n *\n * Only works if we set an HTML DOM element to represent the pivot position.\n */\n hidePivot() {\n if (!this.#shown) {\n return;\n }\n if (this.#pivotElement) {\n this.#pivotElement.style.visibility = \"hidden\";\n }\n if (this.#pivotSphereEnabled) {\n this.destroyPivotSphere();\n }\n this.#shown = false;\n }\n\n /**\n * Finishes pivoting.\n */\n endPivot() {\n this.#pivoting = false;\n }\n\n destroy() {\n this.destroyPivotSphere();\n this.#view.camera.onViewMatrix.unsub(this.#onViewMatrix);\n this.#view.camera.onProjMatrix.unsub(this.#onProjMatrix);\n this.#view.viewer.onTick.unsub(this.#onTick);\n }\n}\n\n\nexport {PivotController};\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\nimport {addVec3, createVec3, createVec4, dotVec4, lenVec3, mulVec3Scalar, normalizeVec3, subVec3} from \"@xeokit/matrix\";\n\nconst screenPos = createVec4();\nconst viewPos = createVec4();\n\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\nconst tempVec4a = createVec4();\nconst tempVec4b = createVec4();\nconst tempVec4c = createVec4();\n\n/**\n * @private\n */\nclass PanController {\n\n #view: View;\n\n constructor(view) {\n this.#view = view;\n }\n\n /**\n * Dollys the Camera towards the given target 2D canvas position.\n *\n * When the target's corresponding World-space position is also provided, then this function will also test if we've\n * dollied past the target, and will return ````true```` if that's the case.\n *\n * @param [optionalTargetWorldPos] Optional world position of the target\n * @param targetCanvasPos Canvas position of the target\n * @param dollyDelta Amount to dolly\n * @return True if optionalTargetWorldPos was given, and we've dollied past that position.\n */\n dollyToCanvasPos(optionalTargetWorldPos, targetCanvasPos, dollyDelta) {\n\n let dolliedThroughSurface = false;\n\n const camera = this.#view.camera;\n\n if (optionalTargetWorldPos) {\n const eyeToWorldPosVec = subVec3(optionalTargetWorldPos, camera.eye, tempVec3a);\n const eyeWorldPosDist = lenVec3(eyeToWorldPosVec);\n dolliedThroughSurface = (eyeWorldPosDist < dollyDelta);\n }\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDelta;\n\n const unprojectedWorldPos = this._unproject(targetCanvasPos, tempVec4a);\n const offset = subVec3(unprojectedWorldPos, camera.eye, tempVec4c);\n const moveVec = mulVec3Scalar(normalizeVec3(offset), -dollyDelta, []);\n\n camera.eye = [camera.eye[0] - moveVec[0], camera.eye[1] - moveVec[1], camera.eye[2] - moveVec[2]];\n camera.look = [camera.look[0] - moveVec[0], camera.look[1] - moveVec[1], camera.look[2] - moveVec[2]];\n\n if (optionalTargetWorldPos) {\n\n // Subtle UX tweak - if we have a target World position, then set camera eye->look distance to\n // the same distance as from eye->target. This just gives us a better position for look,\n // if we subsequently orbit eye about look, so that we don't orbit a position that's\n // suddenly a lot closer than the point we pivoted about on the surface of the last object\n // that we click-drag-pivoted on.\n\n const eyeTargetVec = subVec3(optionalTargetWorldPos, camera.eye, tempVec3a);\n const lenEyeTargetVec = lenVec3(eyeTargetVec);\n const eyeLookVec = mulVec3Scalar(normalizeVec3(subVec3(camera.look, camera.eye, tempVec3b)), lenEyeTargetVec);\n camera.look = [camera.eye[0] + eyeLookVec[0], camera.eye[1] + eyeLookVec[1], camera.eye[2] + eyeLookVec[2]];\n }\n\n } else if (camera.projectionType === OrthoProjectionType) {\n\n // - set ortho scale, getting the unprojected targetCanvasPos before and after, get that difference in a vector;\n // - get the vector in which we're dollying;\n // - add both vectors to camera eye and look.\n\n const worldPos1 = this._unproject(targetCanvasPos, tempVec4a);\n\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDelta;\n\n ////////////////////////////// TODO\n // camera.orthoProjection._update(); // HACK\n\n const worldPos2 = this._unproject(targetCanvasPos, tempVec4b);\n const offset = subVec3(worldPos2, worldPos1, tempVec4c);\n const eyeLookMoveVec = mulVec3Scalar(normalizeVec3(subVec3(camera.look, camera.eye, tempVec3a)), -dollyDelta, tempVec3b);\n const moveVec = addVec3(offset, eyeLookMoveVec, tempVec3c);\n\n camera.eye = [camera.eye[0] - moveVec[0], camera.eye[1] - moveVec[1], camera.eye[2] - moveVec[2]];\n camera.look = [camera.look[0] - moveVec[0], camera.look[1] - moveVec[1], camera.look[2] - moveVec[2]];\n }\n\n return dolliedThroughSurface;\n }\n\n _unproject(canvasPos, worldPos) {\n\n const camera = this.#view.camera;\n const transposedProjectMat = camera.projection.transposedProjMatrix;\n\n // @ts-ignore\n const Pt3 = transposedProjectMat.subarray(8, 12);\n // @ts-ignore\n const Pt4 = transposedProjectMat.subarray(12);\n const D = [0, 0, -1.0, 1];\n const screenZ = dotVec4(D, Pt3) / dotVec4(D, Pt4);\n\n camera.projection.unproject(canvasPos, screenZ, screenPos, viewPos, worldPos);\n\n return worldPos;\n }\n\n destroy() {\n }\n}\n\nexport {PanController};\n", "/**\n * @private\n */\nimport {View} from \"@xeokit/viewer\";\n\nclass MouseMiscHandler {\n\n #view: View;\n #mouseEnterHandler: () => void;\n #mouseLeaveHandler: () => void;\n #mouseMoveHandler: (e) => void;\n #mouseDownHandler: (e) => void;\n #mouseUpHandler: (e) => void;\n\n constructor(view:View, controllers, configs, states, updates) {\n\n this.#view = view;\n\n const htmlElement = this.#view.htmlElement;\n\n htmlElement.addEventListener(\"mouseenter\", this.#mouseEnterHandler = () => {\n states.mouseover = true;\n });\n\n htmlElement.addEventListener(\"mouseleave\", this.#mouseLeaveHandler = () => {\n states.mouseover = false;\n htmlElement.style.cursor = null;\n });\n\n document.addEventListener(\"mousemove\", this.#mouseMoveHandler = (e) => {\n getCanvasPosFromEvent(e, htmlElement, states.pointerCanvasPos);\n });\n\n htmlElement.addEventListener(\"mousedown\", this.#mouseDownHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n getCanvasPosFromEvent(e, htmlElement, states.pointerCanvasPos);\n states.mouseover = true;\n });\n\n htmlElement.addEventListener(\"mouseup\", this.#mouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n });\n }\n\n reset() {\n }\n\n destroy() {\n\n const htmlElement = this.#view.htmlElement;\n\n document.removeEventListener(\"mousemove\", this.#mouseMoveHandler);\n htmlElement.removeEventListener(\"mouseenter\", this.#mouseEnterHandler);\n htmlElement.removeEventListener(\"mouseleave\", this.#mouseLeaveHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#mouseDownHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#mouseUpHandler);\n }\n}\n\nfunction getCanvasPosFromEvent(event, htmlElement, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n const { left, top } = htmlElement.getBoundingClientRect();\n canvasPos[0] = event.clientX - left;\n canvasPos[1] = event.clientY - top;\n }\n return canvasPos;\n}\n\nexport {MouseMiscHandler};\n", "\nimport {createVec2, distVec2, geometricMeanVec2, lenVec3, subVec2, subVec3} from \"@xeokit/matrix\";\nimport {View} from \"@xeokit/viewer\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\n\nconst getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX - totalOffsetLeft;\n canvasPos[1] = event.pageY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nclass TouchPanRotateAndDollyHandler {\n #canvasTouchMoveHandler: any;\n #canvasTouchStartHandler: any;\n #view: View;\n #canvasTouchEndHandler: any;\n #tickSub: () => void;\n\n constructor(view:View, controllers:any, configs:any, states:any, updates:any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n\n const tapStartCanvasPos = createVec2();\n const tapCanvasPos0 = createVec2();\n const tapCanvasPos1 = createVec2();\n const touch0Vec = createVec2();\n\n const lastCanvasTouchPosList = [];\n const canvas = this.#view.htmlElement;\n\n let numTouches = 0;\n let tapStartTime = -1;\n let waitForTick = false;\n\n this.#tickSub = view.viewer.onTick.sub(() => {\n waitForTick = false;\n });\n\n let firstDragDeltaX = 0;\n let firstDragDeltaY = 1;\n let absorbTinyFirstDrag = false;\n\n canvas.addEventListener(\"touchstart\", this.#canvasTouchStartHandler = (event) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n event.preventDefault();\n\n const touches = event.touches;\n const changedTouches = event.changedTouches;\n\n states.touchStartTime = Date.now();\n\n if (touches.length === 1 && changedTouches.length === 1) {\n\n tapStartTime = states.touchStartTime;\n\n getCanvasPosFromEvent(touches[0], tapStartCanvasPos);\n\n if (configs.followPointer) {\n\n pickController.pickCursorPos = tapStartCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (!configs.planView) {\n\n if (pickController.picked && pickController.pickedSurface && pickController.pickResult && pickController.pickResult.worldPos) {\n\n pivotController.setPivotPos(pickController.pickResult.worldPos);\n\n if (!configs.firstPerson && pivotController.startPivot()) {\n pivotController.showPivot();\n }\n\n } else {\n\n if (configs.smartPivot) {\n pivotController.setCanvasPivotPos(states.pointerCanvasPos);\n } else {\n pivotController.setPivotPos(view.camera.look);\n }\n\n if (!configs.firstPerson && pivotController.startPivot()) {\n pivotController.showPivot();\n }\n }\n }\n }\n\n } else {\n tapStartTime = -1;\n }\n\n while (lastCanvasTouchPosList.length < touches.length) {\n lastCanvasTouchPosList.push(createVec2());\n }\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n getCanvasPosFromEvent(touches[i], lastCanvasTouchPosList[i]);\n }\n\n numTouches = touches.length;\n });\n\n canvas.addEventListener(\"touchend\", this.#canvasTouchEndHandler = () => {\n if (pivotController.getPivoting()) {\n pivotController.endPivot()\n }\n firstDragDeltaX = 0;\n firstDragDeltaY = 0;\n absorbTinyFirstDrag = true;\n })\n\n canvas.addEventListener(\"touchmove\", this.#canvasTouchMoveHandler = (event) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n event.stopPropagation();\n event.preventDefault();\n\n if (waitForTick) {\n // Limit changes detection to one per frame\n return;\n }\n\n waitForTick = true;\n\n // Scaling drag-rotate to canvas boundary\n\n const canvasBoundary = view.boundary;\n const canvasWidth = canvasBoundary[2];\n const canvasHeight = canvasBoundary[3];\n\n const touches = event.touches;\n\n if (event.touches.length !== numTouches) {\n // Two fingers were pressed, then one of them is removed\n // We don't want to rotate in this case (weird behavior)\n return;\n }\n\n if (numTouches === 1) {\n\n getCanvasPosFromEvent(touches[0], tapCanvasPos0);\n\n //-----------------------------------------------------------------------------------------------\n // Drag rotation\n //-----------------------------------------------------------------------------------------------\n\n subVec2(tapCanvasPos0, lastCanvasTouchPosList[0], touch0Vec);\n\n const xPanDelta = touch0Vec[0];\n const yPanDelta = touch0Vec[1];\n\n if (states.longTouchTimeout !== null && (Math.abs(xPanDelta) > configs.longTapRadius || Math.abs(yPanDelta) > configs.longTapRadius)) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n if (configs.planView) { // No rotating in plan-view mode\n\n const camera = view.camera;\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n const touchPicked = false;\n const pickedWorldPos = [0, 0, 0];\n\n const depth = Math.abs(touchPicked ? lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])) : view.camera.eyeLookDist);\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX += (xPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY += (yPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n\n } else {\n\n updates.panDeltaX += 0.5 * camera.orthoProjection.scale * (xPanDelta / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY += 0.5 * camera.orthoProjection.scale * (yPanDelta / canvasHeight) * configs.touchPanRate;\n }\n\n } else {\n // if (!absorbTinyFirstDrag) {\n updates.rotateDeltaY -= (xPanDelta / canvasWidth) * (configs.dragRotationRate * 1.0); // Full horizontal rotation\n updates.rotateDeltaX += (yPanDelta / canvasHeight) * (configs.dragRotationRate * 1.5); // Half vertical rotation\n // } else {\n // firstDragDeltaY -= (xPanDelta / canvasWidth) * (configs.dragRotationRate * 1.0); // Full horizontal rotation\n // firstDragDeltaX += (yPanDelta / canvasHeight) * (configs.dragRotationRate * 1.5); // Half vertical rotation\n // if (Math.abs(firstDragDeltaX) > 5 || Math.abs(firstDragDeltaY) > 5) {\n // updates.rotateDeltaX += firstDragDeltaX;\n // updates.rotateDeltaY += firstDragDeltaY;\n // firstDragDeltaX = 0;\n // firstDragDeltaY = 0;\n // absorbTinyFirstDrag = false;\n // }\n // }\n }\n\n } else if (numTouches === 2) {\n\n const touch0 = touches[0];\n const touch1 = touches[1];\n\n getCanvasPosFromEvent(touch0, tapCanvasPos0);\n getCanvasPosFromEvent(touch1, tapCanvasPos1);\n\n const lastMiddleTouch = geometricMeanVec2(lastCanvasTouchPosList[0], lastCanvasTouchPosList[1]);\n const currentMiddleTouch = geometricMeanVec2(tapCanvasPos0, tapCanvasPos1);\n\n const touchDelta = createVec2();\n\n subVec2(lastMiddleTouch, currentMiddleTouch, touchDelta);\n\n const xPanDelta = touchDelta[0];\n const yPanDelta = touchDelta[1];\n\n const camera = view.camera;\n\n // Dollying\n\n const d1 = distVec2([touch0.pageX, touch0.pageY], [touch1.pageX, touch1.pageY]);\n const d2 = distVec2(lastCanvasTouchPosList[0], lastCanvasTouchPosList[1]);\n\n const dollyDelta = (d2 - d1) * configs.touchDollyRate;\n\n updates.dollyDelta = dollyDelta;\n\n if (Math.abs(dollyDelta) < 1.0) {\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n const pickedWorldPos = pickController.pickResult ? pickController.pickResult.worldPos : view.viewer.scene.center;\n\n const depth = Math.abs(lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])));\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX -= (xPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY -= (yPanDelta * targetDistance / canvasHeight) * configs.touchPanRate;\n\n } else {\n\n updates.panDeltaX -= 0.5 * camera.orthoProjection.scale * (xPanDelta / canvasHeight) * configs.touchPanRate;\n updates.panDeltaY -= 0.5 * camera.orthoProjection.scale * (yPanDelta / canvasHeight) * configs.touchPanRate;\n }\n }\n\n\n states.pointerCanvasPos = currentMiddleTouch;\n }\n\n for (let i = 0; i < numTouches; ++i) {\n getCanvasPosFromEvent(touches[i], lastCanvasTouchPosList[i]);\n }\n });\n }\n\n reset() {\n }\n\n destroy() {\n const canvas = this.#view.htmlElement;\n canvas.removeEventListener(\"touchstart\", this.#canvasTouchStartHandler);\n canvas.removeEventListener(\"touchend\", this.#canvasTouchEndHandler);\n canvas.removeEventListener(\"touchmove\", this.#canvasTouchMoveHandler);\n this.#view.viewer.onTick.unsub(this.#tickSub);\n }\n}\n\nexport {TouchPanRotateAndDollyHandler};\n", "/**\n * Code for the BACKSPACE key.\n */\nexport const KEY_BACKSPACE: number = 8;\n\n/**\n * Code for the TAB key.\n */\nexport const KEY_TAB: number = 9;\n\n/**\n * Code for the ENTER key.\n */\nexport const KEY_ENTER: number = 13;\n\n/**\n * Code for the SHIFT key.\n */\nexport const KEY_SHIFT: number = 16;\n\n/**\n * Code for the CTRL key.\n */\nexport const KEY_CTRL: number = 17;\n\n/**\n * Code for the ALT key.\n */\nexport const KEY_ALT: number = 18;\n\n/**\n * Code for the PAUSE_BREAK key.\n */\nexport const KEY_PAUSE_BREAK: number = 19;\n\n/**\n * Code for the CAPS_LOCK key.\n */\nexport const KEY_CAPS_LOCK: number = 20;\n\n/**\n * Code for the ESCAPE key.\n */\nexport const KEY_ESCAPE: number = 27;\n\n/**\n * Code for the PAGE_UP key.\n */\nexport const KEY_PAGE_UP: number = 33;\n\n/**\n * Code for the PAGE_DOWN key.\n */\nexport const KEY_PAGE_DOWN: number = 34;\n\n/**\n * Code for the END key.\n */\nexport const KEY_END: number = 35;\n\n/**\n * Code for the HOME key.\n */\nexport const KEY_HOME: number = 36;\n\n/**\n * Code for the LEFT_ARROW key.\n */\nexport const KEY_LEFT_ARROW: number = 37;\n\n/**\n * Code for the UP_ARROW key.\n\n */\nexport const KEY_UP_ARROW: number = 38;\n\n/**\n * Code for the RIGHT_ARROW key.\n */\nexport const KEY_RIGHT_ARROW: number = 39;\n\n/**\n * Code for the DOWN_ARROW key.\n */\nexport const KEY_DOWN_ARROW: number = 40;\n\n/**\n * Code for the INSERT key.\n */\nexport const KEY_INSERT: number = 45;\n\n/**\n * Code for the DELETE key.\n */\nexport const KEY_DELETE: number = 46;\n\n/**\n * Code for the 0 key.\n */\nexport const KEY_NUM_0: number = 48;\n\n/**\n * Code for the 1 key.\n */\nexport const KEY_NUM_1: number = 49;\n\n/**\n * Code for the 2 key.\n */\nexport const KEY_NUM_2: number = 50;\n\n/**\n * Code for the 3 key.\n */\nexport const KEY_NUM_3: number = 51;\n\n/**\n * Code for the 4 key.\n */\nexport const KEY_NUM_4: number = 52;\n\n/**\n * Code for the 5 key.\n */\nexport const KEY_NUM_5: number = 53;\n\n/**\n * Code for the 6 key.\n */\nexport const KEY_NUM_6: number = 54;\n\n/**\n * Code for the 7 key.\n */\nexport const KEY_NUM_7: number = 55;\n\n/**\n * Code for the 8 key.\n */\nexport const KEY_NUM_8: number = 56;\n\n/**\n * Code for the 9 key.\n */\nexport const KEY_NUM_9: number = 57;\n\n/**\n * Code for the A key.\n */\nexport const KEY_A: number = 65;\n\n/**\n * Code for the B key.\n */\nexport const KEY_B: number = 66;\n\n/**\n * Code for the C key.\n */\nexport const KEY_C: number = 67;\n\n/**\n * Code for the D key.\n */\nexport const KEY_D: number = 68;\n\n/**\n * Code for the E key.\n */\nexport const KEY_E: number = 69;\n\n/**\n * Code for the F key.\n */\nexport const KEY_F: number = 70;\n\n/**\n * Code for the G key.\n */\nexport const KEY_G: number = 71;\n\n/**\n * Code for the H key.\n */\nexport const KEY_H: number = 72;\n\n/**\n * Code for the I key.\n */\nexport const KEY_I: number = 73;\n\n/**\n * Code for the J key.\n */\nexport const KEY_J: number = 74;\n\n/**\n * Code for the K key.\n */\nexport const KEY_K: number = 75;\n\n/**\n * Code for the L key.\n */\nexport const KEY_L: number = 76;\n\n/**\n * Code for the M key.\n */\nexport const KEY_M: number = 77;\n\n/**\n * Code for the N key.\n */\nexport const KEY_N: number = 78;\n\n/**\n * Code for the O key.\n */\nexport const KEY_O: number = 79;\n\n/**\n * Code for the P key.\n */\nexport const KEY_P: number = 80;\n\n/**\n * Code for the Q key.\n */\nexport const KEY_Q: number = 81;\n\n/**\n * Code for the R key.\n */\nexport const KEY_R: number = 82;\n\n/**\n * Code for the S key.\n */\nexport const KEY_S: number = 83;\n\n/**\n * Code for the T key.\n */\nexport const KEY_T: number = 84;\n\n/**\n * Code for the U key.\n */\nexport const KEY_U: number = 85;\n\n/**\n * Code for the V key.\n */\nexport const KEY_V: number = 86;\n\n/**\n * Code for the W key.\n */\nexport const KEY_W: number = 87;\n\n/**\n * Code for the X key.\n */\nexport const KEY_X: number = 88;\n\n/**\n * Code for the Y key.\n */\nexport const KEY_Y: number = 89;\n\n/**\n * Code for the Z key.\n */\nexport const KEY_Z: number = 90;\n\n/**\n * Code for the LEFT_WINDOW key.\n */\nexport const KEY_LEFT_WINDOW: number = 91;\n\n/**\n * Code for the RIGHT_WINDOW key.\n */\nexport const KEY_RIGHT_WINDOW: number = 92;\n\n/**\n * Code for the SELECT key.\n */\nexport const KEY_SELECT_KEY: number = 93;\n\n/**\n * Code for the number pad 0 key.\n */\nexport const KEY_NUMPAD_0: number = 96;\n\n/**\n * Code for the number pad 1 key.\n */\nexport const KEY_NUMPAD_1: number = 97;\n\n/**\n * Code for the number pad 2 key.\n */\nexport const KEY_NUMPAD_2: number = 98;\n\n/**\n * Code for the number pad 3 key.\n */\nexport const KEY_NUMPAD_3: number = 99;\n\n/**\n * Code for the number pad 4 key.\n */\nexport const KEY_NUMPAD_4: number = 100;\n\n/**\n * Code for the number pad 5 key.\n */\nexport const KEY_NUMPAD_5: number = 101;\n\n/**\n * Code for the number pad 6 key.\n */\nexport const KEY_NUMPAD_6: number = 102;\n\n/**\n * Code for the number pad 7 key.\n */\nexport const KEY_NUMPAD_7: number = 103;\n\n/**\n * Code for the number pad 8 key.\n */\nexport const KEY_NUMPAD_8: number = 104;\n\n/**\n * Code for the number pad 9 key.\n */\nexport const KEY_NUMPAD_9: number = 105;\n\n/**\n * Code for the MULTIPLY key.\n */\nexport const KEY_MULTIPLY: number = 106;\n\n/**\n * Code for the ADD key.\n */\nexport const KEY_ADD: number = 107;\n\n/**\n * Code for the SUBTRACT key.\n */\nexport const KEY_SUBTRACT: number = 109;\n\n/**\n * Code for the DECIMAL POINT key.\n */\nexport const KEY_DECIMAL_POINT: number = 110;\n\n/**\n * Code for the DIVIDE key.\n */\nexport const KEY_DIVIDE: number = 111;\n\n/**\n * Code for the F1 key.\n */\nexport const KEY_F1: number = 112;\n\n/**\n * Code for the F2 key.\n */\nexport const KEY_F2: number = 113;\n\n/**\n * Code for the F3 key.\n */\nexport const KEY_F3: number = 114;\n\n/**\n * Code for the F4 key.\n */\nexport const KEY_F4: number = 115;\n\n/**\n * Code for the F5 key.\n */\nexport const KEY_F5: number = 116;\n\n/**\n * Code for the F6 key.\n */\nexport const KEY_F6: number = 117;\n\n/**\n * Code for the F7 key.\n */\nexport const KEY_F7: number = 118;\n\n/**\n * Code for the F8 key.\n */\nexport const KEY_F8: number = 119;\n\n/**\n * Code for the F9 key.\n */\nexport const KEY_F9: number = 120;\n\n/**\n * Code for the F10 key.\n */\nexport const KEY_F10: number = 121;\n\n/**\n * Code for the F11 key.\n */\nexport const KEY_F11: number = 122;\n\n/**\n * Code for the F12 key.\n */\nexport const KEY_F12: number = 123;\n\n/**\n * Code for the NUM_LOCK key.\n */\nexport const KEY_NUM_LOCK: number = 144;\n\n/**\n * Code for the SCROLL_LOCK key.\n */\nexport const KEY_SCROLL_LOCK: number = 145;\n\n/**\n * Code for the SEMI_COLON key.\n */\nexport const KEY_SEMI_COLON: number = 186;\n\n/**\n * Code for the EQUAL_SIGN key.\n */\nexport const KEY_EQUAL_SIGN: number = 187;\n\n/**\n * Code for the COMMA key.\n */\nexport const KEY_COMMA: number = 188;\n\n/**\n * Code for the DASH key.\n */\nexport const KEY_DASH: number = 189;\n\n/**\n * Code for the PERIOD key.\n */\nexport const KEY_PERIOD: number = 190;\n\n/**\n * Code for the FORWARD_SLASH key.\n */\nexport const KEY_FORWARD_SLASH: number = 191;\n\n/**\n * Code for the GRAVE_ACCENT key.\n */\nexport const KEY_GRAVE_ACCENT: number = 192;\n\n/**\n * Code for the OPEN_BRACKET key.\n */\nexport const KEY_OPEN_BRACKET: number = 219;\n\n/**\n * Code for the BACK_SLASH key.\n */\nexport const KEY_BACK_SLASH: number = 220;\n\n/**\n * Code for the CLOSE_BRACKET key.\n */\nexport const KEY_CLOSE_BRACKET: number = 221;\n\n/**\n * Code for the SINGLE_QUOTE key.\n */\nexport const KEY_SINGLE_QUOTE: number = 222;\n\n/**\n * Code for the SPACE key.\n */\nexport const KEY_SPACE: number = 32;", "/**\n * @private\n */\nimport {createVec2, createVec3, lenVec3, subVec3} from \"@xeokit/matrix\";\nimport {KEY_SHIFT} from \"./keycodes\";\nimport {View} from \"@xeokit/viewer\";\nimport {PerspectiveProjectionType} from \"@xeokit/constants\";\n\n\nconst canvasPos = createVec2();\n\nexport const getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n let totalScrollX = 0;\n let totalScrollY = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n totalScrollX += element.scrollLeft;\n totalScrollY += element.scrollTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX + totalScrollX - totalOffsetLeft;\n canvasPos[1] = event.pageY + totalScrollY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nexport class MousePanRotateDollyHandler {\n #canvasMouseMoveHandler: (e) => void;\n #documentKeyDownHandler: (e) => void;\n #documentKeyUpHandler: (e) => void;\n #view: View;\n #documentMouseUpHandler: (e) => void;\n #mouseEnterHandler: () => void;\n #mouseDownHandler: (e) => void;\n #documentMouseMoveHandler: (e) => void;\n #mouseUpHandler: (e) => void;\n #mouseWheelHandler: (e) => void;\n\n constructor(view:View, controllers:any, configs:any, states:any, updates:any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n\n let lastX = 0;\n let lastY = 0;\n let lastXDown = 0;\n let lastYDown = 0;\n let xRotateDelta = 0;\n let yRotateDelta = 0;\n\n let mouseDownLeft;\n let mouseDownMiddle;\n let mouseDownRight;\n\n let mouseDownPicked = false;\n const pickedWorldPos = createVec3();\n\n let mouseMovedOnCanvasSinceLastWheel = true;\n\n const htmlElement = this.#view.htmlElement;\n\n const keyDown = [];\n\n document.addEventListener(\"keydown\", this.#documentKeyDownHandler = (e) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n const keyCode = e.keyCode;\n keyDown[keyCode] = true;\n });\n\n document.addEventListener(\"keyup\", this.#documentKeyUpHandler = (e) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n if (!(configs.active && configs.pointerEnabled) ) {\n return;\n }\n const keyCode = e.keyCode;\n keyDown[keyCode] = false;\n });\n\n function setMousedownState(pick = true) {\n htmlElement.style.cursor = \"move\";\n setMousedownPositions();\n if (pick) {\n setMousedownPick();\n }\n }\n\n function setMousedownPositions() {\n xRotateDelta = 0;\n yRotateDelta = 0;\n\n lastX = states.pointerCanvasPos[0];\n lastY = states.pointerCanvasPos[1];\n lastXDown = states.pointerCanvasPos[0];\n lastYDown = states.pointerCanvasPos[1];\n }\n\n function setMousedownPick() {\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (pickController.picked && pickController.pickedSurface && pickController.pickResult && pickController.pickResult.worldPos) {\n mouseDownPicked = true;\n pickedWorldPos.set(pickController.pickResult.worldPos);\n } else {\n mouseDownPicked = false;\n }\n }\n\n htmlElement.addEventListener(\"mousedown\", this.#mouseDownHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n switch (e.which) {\n\n case 1: // Left button\n\n if (keyDown[KEY_SHIFT] || configs.planView) {\n\n mouseDownLeft = true;\n\n setMousedownState();\n\n } else {\n\n mouseDownLeft = true;\n\n setMousedownState(false);\n }\n\n break;\n\n case 2: // Middle/both buttons\n\n mouseDownMiddle = true;\n\n setMousedownState();\n\n break;\n\n case 3: // Right button\n\n mouseDownRight = true;\n\n if (configs.panRightClick) {\n\n setMousedownState();\n }\n\n break;\n\n default:\n break;\n }\n });\n\n document.addEventListener(\"mousemove\", this.#documentMouseMoveHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (!mouseDownLeft && !mouseDownMiddle && !mouseDownRight) {\n return;\n }\n\n // Scaling drag-rotate to canvas boundary\n\n const canvasBoundary = view.boundary;\n\n const canvasWidth = canvasBoundary[2];\n const canvasHeight = canvasBoundary[3];\n const x = states.pointerCanvasPos[0];\n const y = states.pointerCanvasPos[1];\n\n const panning = keyDown[KEY_SHIFT] || configs.planView || (!configs.panRightClick && mouseDownMiddle) || (configs.panRightClick && mouseDownRight);\n\n const xDelta = document.pointerLockElement ? e.movementX : (x - lastX);\n const yDelta = document.pointerLockElement ? e.movementY : (y - lastY);\n\n if (panning) {\n\n const camera = view.camera;\n\n // We use only canvasHeight here so that aspect ratio does not distort speed\n\n if (camera.projectionType === PerspectiveProjectionType) {\n\n const depth = Math.abs(mouseDownPicked ? lenVec3(subVec3(pickedWorldPos, view.camera.eye, [])) : view.camera.eyeLookDist);\n const targetDistance = depth * Math.tan((camera.perspectiveProjection.fov / 2) * Math.PI / 180.0);\n\n updates.panDeltaX += (1.5 * xDelta * targetDistance / canvasHeight);\n updates.panDeltaY += (1.5 * yDelta * targetDistance / canvasHeight);\n\n } else {\n\n updates.panDeltaX += 0.5 * camera.orthoProjection.scale * (xDelta / canvasHeight);\n updates.panDeltaY += 0.5 * camera.orthoProjection.scale * (yDelta / canvasHeight);\n }\n\n } else if (mouseDownLeft && !mouseDownMiddle && !mouseDownRight) {\n\n if (!configs.planView) { // No rotating in plan-view mode\n\n if (configs.firstPerson) {\n updates.rotateDeltaY -= (xDelta / canvasWidth) * configs.dragRotationRate / 2;\n updates.rotateDeltaX += (yDelta / canvasHeight) * (configs.dragRotationRate / 4);\n\n } else {\n updates.rotateDeltaY -= (xDelta / canvasWidth) * (configs.dragRotationRate * 1.5);\n updates.rotateDeltaX += (yDelta / canvasHeight) * (configs.dragRotationRate * 1.5);\n }\n }\n }\n\n lastX = x;\n lastY = y;\n });\n\n htmlElement.addEventListener(\"mousemove\", this.#canvasMouseMoveHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (!states.mouseover) {\n return;\n }\n\n mouseMovedOnCanvasSinceLastWheel = true;\n });\n\n document.addEventListener(\"mouseup\", this.#documentMouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n switch (e.which) {\n case 1: // Left button\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n case 2: // Middle/both buttons\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n case 3: // Right button\n mouseDownLeft = false;\n mouseDownMiddle = false;\n mouseDownRight = false;\n break;\n default:\n break;\n }\n xRotateDelta = 0;\n yRotateDelta = 0;\n });\n\n htmlElement.addEventListener(\"mouseup\", this.#mouseUpHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n switch (e.which) {\n case 3: // Right button\n getCanvasPosFromEvent(e, canvasPos);\n const x = canvasPos[0];\n const y = canvasPos[1];\n if (Math.abs(x - lastXDown) < 3 && Math.abs(y - lastYDown) < 3) {\n controllers.cameraControl.fire(\"rightClick\", { // For context menus\n pagePos: [Math.round(e.pageX), Math.round(e.pageY)],\n canvasPos: canvasPos,\n event: e\n }, true);\n }\n break;\n default:\n break;\n }\n htmlElement.style.removeProperty(\"cursor\");\n });\n\n htmlElement.addEventListener(\"mouseenter\", this.#mouseEnterHandler = () => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n xRotateDelta = 0;\n yRotateDelta = 0;\n });\n\n const maxElapsed = 1 / 20;\n const minElapsed = 1 / 60;\n\n let secsNowLast = null;\n\n htmlElement.addEventListener(\"wheel\", this.#mouseWheelHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n const secsNow = performance.now() / 1000.0;\n var secsElapsed = (secsNowLast !== null) ? (secsNow - secsNowLast) : 0;\n secsNowLast = secsNow;\n if (secsElapsed > maxElapsed) {\n secsElapsed = maxElapsed;\n }\n if (secsElapsed < minElapsed) {\n secsElapsed = minElapsed;\n }\n const delta = Math.max(-1, Math.min(1, -e.deltaY * 40));\n if (delta === 0) {\n return;\n }\n const normalizedDelta = delta / Math.abs(delta);\n updates.dollyDelta += -normalizedDelta * secsElapsed * configs.mouseWheelDollyRate;\n\n if (mouseMovedOnCanvasSinceLastWheel) {\n states.followPointerDirty = true;\n mouseMovedOnCanvasSinceLastWheel = false;\n }\n\n }, {passive: true});\n }\n\n reset() {\n }\n\n destroy() {\n\n const htmlElement = this.#view.htmlElement;\n\n document.removeEventListener(\"keydown\", this.#documentKeyDownHandler);\n document.removeEventListener(\"keyup\", this.#documentKeyUpHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#mouseDownHandler);\n document.removeEventListener(\"mousemove\", this.#documentMouseMoveHandler);\n htmlElement.removeEventListener(\"mousemove\", this.#canvasMouseMoveHandler);\n document.removeEventListener(\"mouseup\", this.#documentMouseUpHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#mouseUpHandler);\n htmlElement.removeEventListener(\"mouseenter\", this.#mouseEnterHandler);\n htmlElement.removeEventListener(\"wheel\", this.#mouseWheelHandler);\n }\n}\n\n\n", "\nimport {View} from \"@xeokit/viewer\";\nimport {createVec3} from \"@xeokit/matrix\";\n\nconst center = createVec3();\nconst tempVec3a = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\nconst tempVec3d = createVec3();\n\nconst tempCameraTarget = {\n eye: createVec3(),\n look: createVec3(),\n up: createVec3()\n};\n\n/**\n * @private\n */\nexport class KeyboardAxisViewHandler {\n #view: View;\n\n constructor(view: View, controllers:any, configs:any, states:any, updates: any) {\n\n this.#view = view;\n // const cameraControl = controllers.cameraControl;\n // const camera = view.camera;\n //\n // this._onSceneKeyDown = view.input.on(\"keydown\", () => {\n //\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n //\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n //\n // const axisViewRight = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_RIGHT);\n // const axisViewBack = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_BACK);\n // const axisViewLeft = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_LEFT);\n // const axisViewFront = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_FRONT);\n // const axisViewTop = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_TOP);\n // const axisViewBottom = cameraControl._isKeyDownForAction(cameraControl.AXIS_VIEW_BOTTOM);\n //\n // if ((!axisViewRight) && (!axisViewBack) && (!axisViewLeft) && (!axisViewFront) && (!axisViewTop) && (!axisViewBottom)) {\n // return;\n // }\n //\n // const aabb = view.aabb;\n // const diag = math.getAABB3Diag(aabb);\n //\n // math.getAABB3Center(aabb, center);\n //\n // const perspectiveDist = Math.abs(diag / Math.tan(controllers.cameraFlight.fitFOV * math.DEGTORAD));\n // const orthoScale = diag * 1.1;\n //\n // tempCameraTarget.orthoScale = orthoScale;\n //\n // if (axisViewRight) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldRight, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewBack) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldForward, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewLeft) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldRight, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewFront) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldForward, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(camera.worldUp);\n //\n // } else if (axisViewTop) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldUp, perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(math.normalizeVec3(math.mulVec3Scalar(camera.worldForward, 1, tempVec3b), tempVec3c));\n //\n // } else if (axisViewBottom) {\n //\n // tempCameraTarget.eye.set(math.addVec3(center, math.mulVec3Scalar(camera.worldUp, -perspectiveDist, tempVec3a), tempVec3d));\n // tempCameraTarget.look.set(center);\n // tempCameraTarget.up.set(math.normalizeVec3(math.mulVec3Scalar(camera.worldForward, -1, tempVec3b)));\n // }\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.setPivotPos(center);\n // }\n //\n // if (controllers.cameraFlight.duration > 0) {\n // controllers.cameraFlight.flyTo(tempCameraTarget, () => {\n // if (controllers.pivotController.getPivoting() && configs.followPointer) {\n // controllers.pivotController.showPivot();\n // }\n // });\n //\n // } else {\n // controllers.cameraFlight.jumpTo(tempCameraTarget);\n // if (controllers.pivotController.getPivoting() && configs.followPointer) {\n // controllers.pivotController.showPivot();\n // }\n // }\n // });\n }\n\n reset() {\n }\n\n destroy() {\n // this.#view.input.off(this._onSceneKeyDown);\n }\n}\n\n\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {createVec3, subVec3, canvasPosToWorldRay} from \"@xeokit/matrix\";\nimport {getAABB3Center} from \"@xeokit/boundaries\";\n\n/**\n * @private\n */\nclass MousePickHandler {\n\n #view: View;\n #clicks: number;\n #timeout: any;\n #lastPickedEntityId: any;\n #canvasMouseDownHandler: (e) => void;\n #canvasMouseMoveHandler: (e) => void;\n #canvasMouseUpHandler: (e) => void;\n #documentMouseUpHandler: (e) => void;\n\n constructor(view: View, controllers: any, configs: any, states: any, updates: any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n const cameraControl = controllers.cameraControl;\n\n this.#clicks = 0;\n this.#timeout = null;\n this.#lastPickedEntityId = null;\n\n let leftDown = false;\n let rightDown = false;\n\n const htmlElement = this.#view.htmlElement;\n\n const flyCameraTo = (pickResult?: PickResult) => {\n let pos;\n if (pickResult && pickResult.worldPos) {\n pos = pickResult.worldPos\n }\n const aabb = pickResult && pickResult.viewObject ? pickResult.viewObject.aabb : view.aabb;\n if (pos) { // Fly to look at point, don't change eye->look dist\n const camera = view.camera;\n const diff = subVec3(camera.eye, camera.look, []);\n controllers.cameraFlight.flyTo({\n // look: pos,\n // eye: xeokit.addVec3(pos, diff, []),\n // up: camera.up,\n aabb: aabb\n });\n // TODO: Option to back off to fit AABB in view\n } else {// Fly to fit target boundary in view\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n }\n };\n\n const tickifiedMouseMoveFn = view.viewer.tickify(\n this.#canvasMouseMoveHandler = (e) => {\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (leftDown || rightDown) {\n return;\n }\n\n if (cameraControl.onRayMove.count > 0) {\n const origin = createVec3();\n const direction = createVec3();\n canvasPosToWorldRay(view.htmlElement, view.camera.viewMatrix, view.camera.projMatrix, view.camera.projection, states.pointerCanvasPos, origin, direction);\n cameraControl.onRayMove.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos,\n ray: {\n origin: origin,\n direction: direction,\n canvasPos: states.pointerCanvasPos\n }\n });\n }\n\n const hoverSubs = cameraControl.onHover.count > 0;\n const hoverEnterSubs = cameraControl.onHoverEnter.count > 0;\n const hoverOutSubs = cameraControl.onHoverOut.count > 0;\n const hoverOffSubs = cameraControl.onHoverOff.count > 0;\n const hoverSurfaceSubs = cameraControl.onHoverSurface.count > 0;\n const hoverSnapOrSurfaceSubs = cameraControl.onHoverSnapOrSurface.count > 0;\n\n if (hoverSubs || hoverEnterSubs || hoverOutSubs || hoverOffSubs || hoverSurfaceSubs || hoverSnapOrSurfaceSubs) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = hoverSurfaceSubs;\n pickController.scheduleSnapOrPick = hoverSnapOrSurfaceSubs\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n if (pickController.pickResult.viewObject) {\n const pickedEntityId = pickController.pickResult.viewObject.id;\n\n if (this.#lastPickedEntityId !== pickedEntityId) {\n\n if (this.#lastPickedEntityId !== undefined) {\n\n cameraControl.onHoverOut.dispatch(cameraControl, { // Hovered off an entity\n viewObject: view.objects[this.#lastPickedEntityId]\n });\n }\n\n cameraControl.onHoverEnter.dispatch(cameraControl, pickController.pickResult); // Hovering over a new entity\n\n this.#lastPickedEntityId = pickedEntityId;\n }\n }\n\n cameraControl.onHover.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickResult.worldPos || pickController.pickResult.snappedWorldPos) { // Hovering the surface of an entity\n cameraControl.onHoverSurface.dispatch(cameraControl, pickController.pickResult);\n }\n\n } else {\n\n if (this.#lastPickedEntityId !== undefined) {\n\n cameraControl.onHoverOut.dispatch(cameraControl, { // Hovered off an entity\n viewObject: view.objects[this.#lastPickedEntityId]\n });\n\n this.#lastPickedEntityId = undefined;\n }\n\n cameraControl.onHoverOff.dispatch(cameraControl, { // Not hovering on any entity\n canvasPos: pickController.pickCursorPos\n });\n }\n }\n }\n );\n\n htmlElement.addEventListener(\"mousemove\", tickifiedMouseMoveFn);\n\n htmlElement.addEventListener('mousedown', this.#canvasMouseDownHandler = (e) => {\n\n if (e.which === 1) {\n leftDown = true;\n }\n\n if (e.which === 3) {\n rightDown = true;\n }\n\n const leftButtonDown = (e.which === 1);\n\n if (!leftButtonDown) {\n return;\n }\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n // Left mouse button down to start pivoting\n\n states.mouseDownClientX = e.clientX;\n states.mouseDownClientY = e.clientY;\n states.mouseDownCursorX = states.pointerCanvasPos[0];\n states.mouseDownCursorY = states.pointerCanvasPos[1];\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n\n pickController.update();\n\n if (e.which === 1) {// Left button\n const pickResult = pickController.pickResult;\n if (pickResult && pickResult.worldPos) {\n pivotController.setPivotPos(pickResult.worldPos);\n pivotController.startPivot();\n } else {\n if (configs.smartPivot) {\n pivotController.setCanvasPivotPos(states.pointerCanvasPos);\n } else {\n pivotController.setPivotPos(view.camera.look);\n }\n pivotController.startPivot();\n }\n }\n }\n });\n\n document.addEventListener('mouseup', this.#documentMouseUpHandler = (e) => {\n\n if (e.which === 1) {\n leftDown = false;\n }\n\n if (e.which === 3) {\n rightDown = false;\n }\n\n if (pivotController.getPivoting()) {\n pivotController.endPivot();\n }\n });\n\n htmlElement.addEventListener('mouseup', this.#canvasMouseUpHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n const leftButtonUp = (e.which === 1);\n\n if (!leftButtonUp) {\n return;\n }\n\n // Left mouse button up to possibly pick or double-pick\n\n pivotController.hidePivot();\n\n if (Math.abs(e.clientX - states.mouseDownClientX) > 3 || Math.abs(e.clientY - states.mouseDownClientY) > 3) {\n return;\n }\n\n const pickedSubs = cameraControl.onPicked.count > 0;\n const pickedNothingSubs = cameraControl.onPickedNothing.count > 0;\n const pickedSurfaceSubs = cameraControl.onPickedSurface.count > 0;\n const doublePickedSubs = cameraControl.onDoublePicked.count > 0;\n const doublePickedSurfaceSubs = cameraControl.onDoublePickedSurface.count > 0;\n const doublePickedNothingSubs = cameraControl.onDoublePickedNothing.count > 0;\n\n if ((!configs.doublePickFlyTo) &&\n (!doublePickedSubs) &&\n (!doublePickedSurfaceSubs) &&\n (!doublePickedNothingSubs)) {\n\n // Avoid the single/double click differentiation timeout\n\n if (pickedSubs || pickedNothingSubs || pickedSurfaceSubs) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n pickController.update();\n\n if (pickController.pickResult) {\n\n cameraControl.onPicked.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.onPickedSurface.dispatch(cameraControl, pickController.pickResult);\n }\n } else {\n cameraControl.onPickedNothing(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n }\n }\n\n this.#clicks = 0;\n\n return;\n }\n\n this.#clicks++;\n\n if (this.#clicks === 1) { // First click\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = configs.doublePickFlyTo;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n pickController.update();\n\n const firstClickPickResult = pickController.pickResult;\n const firstClickPickSurface = pickController.pickedSurface;\n\n this.#timeout = setTimeout(() => {\n\n if (firstClickPickResult && firstClickPickResult.worldPos) {\n\n cameraControl.onPicked.dispatch(cameraControl, firstClickPickResult);\n\n if (firstClickPickSurface) {\n\n cameraControl.onPickedSurface.dispatch(cameraControl, firstClickPickResult);\n\n if ((!configs.firstPerson) && configs.followPointer) {\n controllers.pivotController.setPivotPos(firstClickPickResult.worldPos);\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n } else {\n cameraControl.onPickedNothing.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n }\n\n this.#clicks = 0;\n\n }, configs.doubleClickTimeFrame);\n\n } else { // Second click\n\n if (this.#timeout !== null) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickEntity = configs.doublePickFlyTo || doublePickedSubs || doublePickedSurfaceSubs;\n pickController.schedulePickSurface = pickController.schedulePickEntity && doublePickedSurfaceSubs;\n pickController.update();\n\n if (pickController.pickResult) {\n\n cameraControl.onDoublePicked.dispatch(cameraControl, pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.onDoublePickedSurface.dispatch(cameraControl, pickController.pickResult);\n }\n\n if (configs.doublePickFlyTo) {\n\n flyCameraTo(pickController.pickResult);\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n const pickedEntityAABB = pickController.pickResult.viewObject.aabb;\n const pickedEntityCenterPos = getAABB3Center(pickedEntityAABB);\n\n controllers.pivotController.setPivotPos(pickedEntityCenterPos);\n\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n\n } else {\n\n cameraControl.onDoublePickedNothing.dispatch(cameraControl, {\n canvasPos: states.pointerCanvasPos\n });\n\n if (configs.doublePickFlyTo) {\n\n flyCameraTo();\n\n if ((!configs.firstPerson) && configs.followPointer) {\n\n const sceneAABB = view.aabb;\n const sceneCenterPos = getAABB3Center(sceneAABB);\n\n controllers.pivotController.setPivotPos(sceneCenterPos);\n\n if (controllers.pivotController.startPivot()) {\n controllers.pivotController.showPivot();\n }\n }\n }\n }\n\n this.#clicks = 0;\n }\n }, false);\n }\n\n reset() {\n this.#clicks = 0;\n this.#lastPickedEntityId = null;\n if (this.#timeout) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n }\n\n destroy() {\n const htmlElement = this.#view.htmlElement;\n htmlElement.removeEventListener(\"mousemove\", this.#canvasMouseMoveHandler);\n htmlElement.removeEventListener(\"mousedown\", this.#canvasMouseDownHandler);\n document.removeEventListener(\"mouseup\", this.#documentMouseUpHandler);\n htmlElement.removeEventListener(\"mouseup\", this.#canvasMouseUpHandler);\n if (this.#timeout) {\n window.clearTimeout(this.#timeout);\n this.#timeout = null;\n }\n }\n}\n\n\nexport {MousePickHandler};\n", "import {PickResult, View} from \"@xeokit/viewer\";\nimport {distVec2, subVec3} from \"@xeokit/matrix\";\n\n\nconst TAP_INTERVAL = 150;\nconst DBL_TAP_INTERVAL = 325;\nconst TAP_DISTANCE_THRESHOLD = 4;\n\nconst getCanvasPosFromEvent = function (event, canvasPos) {\n if (!event) {\n event = window.event;\n canvasPos[0] = event.x;\n canvasPos[1] = event.y;\n } else {\n let element = event.target;\n let totalOffsetLeft = 0;\n let totalOffsetTop = 0;\n while (element.offsetParent) {\n totalOffsetLeft += element.offsetLeft;\n totalOffsetTop += element.offsetTop;\n element = element.offsetParent;\n }\n canvasPos[0] = event.pageX - totalOffsetLeft;\n canvasPos[1] = event.pageY - totalOffsetTop;\n }\n return canvasPos;\n};\n\n/**\n * @private\n */\nexport class TouchPickHandler {\n\n #view: View;\n #canvasTouchStartHandler: (e) => void;\n #canvasTouchEndHandler: (e) => void;\n\n constructor(view: View, controllers: any, configs: any, states: any, updates: any) {\n\n this.#view = view;\n\n const pickController = controllers.pickController;\n const cameraControl = controllers.cameraControl;\n\n let touchStartTime;\n const activeTouches = [];\n const tapStartPos = new Float32Array(2);\n let tapStartTime = -1;\n let lastTapTime = -1;\n\n const htmlElement = this.#view.htmlElement;\n\n const flyCameraTo = (pickResult?: PickResult) => {\n let pos;\n if (pickResult && pickResult.worldPos) {\n pos = pickResult.worldPos\n }\n const aabb = pickResult ? pickResult.viewObject.aabb : view.aabb;\n if (pos) { // Fly to look at point, don't change eye->look dist\n const camera = view.camera;\n const diff = subVec3(camera.eye, camera.look, []);\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n // TODO: Option to back off to fit AABB in view\n } else {// Fly to fit target boundary in view\n controllers.cameraFlight.flyTo({\n aabb: aabb\n });\n }\n };\n\n htmlElement.addEventListener(\"touchstart\", this.#canvasTouchStartHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n if (states.longTouchTimeout !== null) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n const touches = e.touches;\n const changedTouches = e.changedTouches;\n\n touchStartTime = Date.now();\n\n if (touches.length === 1 && changedTouches.length === 1) {\n tapStartTime = touchStartTime;\n\n getCanvasPosFromEvent(touches[0], tapStartPos);\n\n const rightClickClientX = tapStartPos[0];\n const rightClickClientY = tapStartPos[1];\n\n const rightClickPageX = touches[0].pageX;\n const rightClickPageY = touches[0].pageY;\n\n states.longTouchTimeout = setTimeout(() => {\n controllers.cameraControl.fire(\"rightClick\", { // For context menus\n pagePos: [Math.round(rightClickPageX), Math.round(rightClickPageY)],\n canvasPos: [Math.round(rightClickClientX), Math.round(rightClickClientY)],\n event: e\n }, true);\n\n states.longTouchTimeout = null;\n }, configs.longTapTimeout);\n\n } else {\n tapStartTime = -1;\n }\n\n while (activeTouches.length < touches.length) {\n activeTouches.push(new Float32Array(2))\n }\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n getCanvasPosFromEvent(touches[i], activeTouches[i]);\n }\n\n activeTouches.length = touches.length;\n\n }, {passive: true});\n\n\n htmlElement.addEventListener(\"touchend\", this.#canvasTouchEndHandler = (e) => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n const currentTime = Date.now();\n const touches = e.touches;\n const changedTouches = e.changedTouches;\n\n const pickedSurfaceSubs = cameraControl.hasSubs(\"pickedSurface\");\n\n if (states.longTouchTimeout !== null) {\n clearTimeout(states.longTouchTimeout);\n states.longTouchTimeout = null;\n }\n\n // process tap\n\n if (touches.length === 0 && changedTouches.length === 1) {\n\n if (tapStartTime > -1 && currentTime - tapStartTime < TAP_INTERVAL) {\n\n if (lastTapTime > -1 && tapStartTime - lastTapTime < DBL_TAP_INTERVAL) {\n\n // Double-tap\n\n getCanvasPosFromEvent(changedTouches[0], pickController.pickCursorPos);\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n pickController.pickResult.touchInput = true;\n\n cameraControl.fire(\"doublePicked\", pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.fire(\"doublePickedSurface\", pickController.pickResult);\n }\n\n if (configs.doublePickFlyTo) {\n flyCameraTo(pickController.pickResult);\n }\n } else {\n cameraControl.fire(\"doublePickedNothing\");\n if (configs.doublePickFlyTo) {\n flyCameraTo();\n }\n }\n\n lastTapTime = -1;\n\n } else if (distVec2(activeTouches[0], tapStartPos) < TAP_DISTANCE_THRESHOLD) {\n\n // Single-tap\n\n getCanvasPosFromEvent(changedTouches[0], pickController.pickCursorPos);\n pickController.schedulePickEntity = true;\n pickController.schedulePickSurface = pickedSurfaceSubs;\n\n pickController.update();\n\n if (pickController.pickResult) {\n\n pickController.pickResult.touchInput = true;\n\n cameraControl.fire(\"picked\", pickController.pickResult);\n\n if (pickController.pickedSurface) {\n cameraControl.fire(\"pickedSurface\", pickController.pickResult);\n }\n\n } else {\n cameraControl.fire(\"pickedNothing\");\n }\n\n lastTapTime = currentTime;\n }\n\n tapStartTime = -1\n }\n }\n\n activeTouches.length = touches.length;\n\n for (let i = 0, len = touches.length; i < len; ++i) {\n activeTouches[i][0] = touches[i].pageX;\n activeTouches[i][1] = touches[i].pageY;\n }\n\n // e.stopPropagation();\n\n }, {passive: true});\n\n }\n\n reset(): void {\n // TODO\n // tapStartTime = -1;\n // lastTapTime = -1;\n\n }\n\n destroy(): void {\n const htmlElement = this.#view.htmlElement;\n htmlElement.removeEventListener(\"touchstart\", this.#canvasTouchStartHandler);\n htmlElement.removeEventListener(\"touchend\", this.#canvasTouchEndHandler);\n }\n}\n", "/**\n * @private\n */\nimport {View} from \"@xeokit/viewer\";\n\nexport class KeyboardPanRotateDollyHandler {\n #view: View;\n\n constructor(view:View, controllers, configs, states, updates) {\n\n this.#view = view;\n // const input = view.input;\n\n const keyDownMap = [];\n\n // const canvas = view.canvas.canvas;\n //\n // let mouseMovedSinceLastKeyboardDolly = true;\n //\n // this._onSceneMouseMove = input.on(\"mousemove\", () => {\n // mouseMovedSinceLastKeyboardDolly = true;\n // });\n //\n // this._onSceneKeyDown = input.on(\"keydown\", (keyCode) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n // keyDownMap[keyCode] = true;\n //\n // if (keyCode === input.KEY_SHIFT) {\n // canvas.style.cursor = \"move\";\n // }\n // });\n //\n // this._onSceneKeyUp = input.on(\"keyup\", (keyCode) => {\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n // keyDownMap[keyCode] = false;\n //\n // if (keyCode === input.KEY_SHIFT) {\n // canvas.style.cursor = null;\n // }\n //\n // if (controllers.pivotController.getPivoting()) {\n // controllers.pivotController.endPivot()\n // }\n // });\n //\n // this._onTick = view.on(\"tick\", (e) => {\n //\n // if (!(configs.active && configs.pointerEnabled) || (!view.input.keyboardEnabled)) {\n // return;\n // }\n //\n // if (configs.keyboardEnabledOnlyIfMouseover && !states.mouseover) {\n // return;\n // }\n //\n // const cameraControl = controllers.cameraControl;\n // const elapsedSecs = (e.deltaTime / 1000.0);\n //\n // //-------------------------------------------------------------------------------------------------\n // // Keyboard rotation\n // //-------------------------------------------------------------------------------------------------\n //\n // if (!configs.planView) {\n //\n // const rotateYPos = cameraControl._isKeyDownForAction(cameraControl.ROTATE_Y_POS, keyDownMap);\n // const rotateYNeg = cameraControl._isKeyDownForAction(cameraControl.ROTATE_Y_NEG, keyDownMap);\n // const rotateXPos = cameraControl._isKeyDownForAction(cameraControl.ROTATE_X_POS, keyDownMap);\n // const rotateXNeg = cameraControl._isKeyDownForAction(cameraControl.ROTATE_X_NEG, keyDownMap);\n //\n // const orbitDelta = elapsedSecs * configs.keyboardRotationRate;\n //\n // if (rotateYPos || rotateYNeg || rotateXPos || rotateXNeg) {\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n //\n // if (rotateYPos) {\n // updates.rotateDeltaY += orbitDelta;\n //\n // } else if (rotateYNeg) {\n // updates.rotateDeltaY -= orbitDelta;\n // }\n //\n // if (rotateXPos) {\n // updates.rotateDeltaX += orbitDelta;\n //\n // } else if (rotateXNeg) {\n // updates.rotateDeltaX -= orbitDelta;\n // }\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n // }\n // }\n //\n // //-------------------------------------------------------------------------------------------------\n // // Keyboard panning\n // //-------------------------------------------------------------------------------------------------\n //\n // if (!keyDownMap[input.KEY_CTRL] && !keyDownMap[input.KEY_ALT]) {\n //\n // const dollyBackwards = cameraControl._isKeyDownForAction(cameraControl.DOLLY_BACKWARDS, keyDownMap);\n // const dollyForwards = cameraControl._isKeyDownForAction(cameraControl.DOLLY_FORWARDS, keyDownMap);\n //\n // if (dollyBackwards || dollyForwards) {\n //\n // const dollyDelta = elapsedSecs * configs.keyboardDollyRate;\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n // if (dollyForwards) {\n // updates.dollyDelta -= dollyDelta;\n // } else if (dollyBackwards) {\n // updates.dollyDelta += dollyDelta;\n // }\n //\n // if (mouseMovedSinceLastKeyboardDolly) {\n // states.followPointerDirty = true;\n // mouseMovedSinceLastKeyboardDolly = false;\n // }\n // }\n // }\n //\n // const panForwards = cameraControl._isKeyDownForAction(cameraControl.PAN_FORWARDS, keyDownMap);\n // const panBackwards = cameraControl._isKeyDownForAction(cameraControl.PAN_BACKWARDS, keyDownMap);\n // const panLeft = cameraControl._isKeyDownForAction(cameraControl.PAN_LEFT, keyDownMap);\n // const panRight = cameraControl._isKeyDownForAction(cameraControl.PAN_RIGHT, keyDownMap);\n // const panUp = cameraControl._isKeyDownForAction(cameraControl.PAN_UP, keyDownMap);\n // const panDown = cameraControl._isKeyDownForAction(cameraControl.PAN_DOWN, keyDownMap);\n //\n // const panDelta = (keyDownMap[input.KEY_ALT] ? 0.3 : 1.0) * elapsedSecs * configs.keyboardPanRate; // ALT for slower pan rate\n //\n // if (panForwards || panBackwards || panLeft || panRight || panUp || panDown) {\n //\n // if ((!configs.firstPerson) && configs.followPointer) {\n // controllers.pivotController.startPivot();\n // }\n //\n // if (panDown) {\n // updates.panDeltaY += panDelta;\n //\n // } else if (panUp) {\n // updates.panDeltaY += -panDelta;\n // }\n //\n // if (panRight) {\n // updates.panDeltaX += -panDelta;\n //\n // } else if (panLeft) {\n // updates.panDeltaX += panDelta;\n // }\n //\n // if (panBackwards) {\n // updates.panDeltaZ += panDelta;\n //\n // } else if (panForwards) {\n // updates.panDeltaZ += -panDelta;\n // }\n // }\n // });\n }\n\n reset() {\n }\n\n destroy() {\n\n // this.#view.off(this._onTick);\n //\n // this.#view.input.off(this._onSceneMouseMove);\n // this.#view.input.off(this._onSceneKeyDown);\n // this.#view.input.off(this._onSceneKeyUp);\n }\n}\n\n", "import {View} from \"@xeokit/viewer\";\nimport {createVec3, lenVec3, subVec3} from \"@xeokit/matrix\";\n\nconst SCALE_DOLLY_EACH_FRAME = 1; // Recalculate dolly speed for eye->target distance on each Nth frame\nconst EPSILON = 0.001;\nconst tempVec3 = createVec3();\n\n/**\n * Handles camera updates on each \"tick\" that were scheduled by the various controllers.\n *\n * @private\n */\nexport class CameraUpdater {\n #view: View;\n #onTick: () => void;\n\n constructor(view: View, controllers, configs, states, updates) {\n\n this.#view = view;\n const camera = view.camera;\n const pickController = controllers.pickController;\n const pivotController = controllers.pivotController;\n const panController = controllers.panController;\n\n let countDown = SCALE_DOLLY_EACH_FRAME; // Decrements on each tick\n let dollyDistFactor = 1.0; // Calculated when countDown is zero\n let followPointerWorldPos = null; // Holds the pointer's World position when configs.followPointer is true\n\n this.#onTick = view.viewer.onTick.subscribe(() => {\n\n if (!(configs.active && configs.pointerEnabled)) {\n return;\n }\n\n let cursorType = \"default\";\n\n //----------------------------------------------------------------------------------------------------------\n // Dolly decay\n //------------------------------------------------------------------------------------ ----------------------\n\n if (Math.abs(updates.dollyDelta) < EPSILON) {\n updates.dollyDelta = 0;\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Rotation decay\n //----------------------------------------------------------------------------------------------------------\n\n if (Math.abs(updates.rotateDeltaX) < EPSILON) {\n updates.rotateDeltaX = 0;\n }\n\n if (Math.abs(updates.rotateDeltaY) < EPSILON) {\n updates.rotateDeltaY = 0;\n }\n\n if (updates.rotateDeltaX !== 0 || updates.rotateDeltaY !== 0) {\n updates.dollyDelta = 0;\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Dolly speed eye->look scaling\n //\n // If pointer is over an object, then dolly speed is proportional to the distance to that object.\n //\n // If pointer is not over an object, then dolly speed is proportional to the distance to the last\n // object the pointer was over. This is so that we can dolly to structures that may have gaps through\n // which empty background shows, that the pointer may inadvertently be over. In these cases, we don't\n // want dolly speed wildly varying depending on how accurately the user avoids the gaps with the pointer.\n //----------------------------------------------------------------------------------------------------------\n\n if (configs.followPointer) {\n\n if (--countDown <= 0) {\n\n countDown = SCALE_DOLLY_EACH_FRAME;\n\n if (updates.dollyDelta !== 0) {\n if (updates.rotateDeltaY === 0 && updates.rotateDeltaX === 0) {\n\n if (configs.followPointer && states.followPointerDirty) {\n\n pickController.pickCursorPos = states.pointerCanvasPos;\n pickController.schedulePickSurface = true;\n pickController.update();\n\n if (pickController.pickResult && pickController.pickResult.worldPos) {\n followPointerWorldPos = pickController.pickResult.worldPos;\n\n } else {\n dollyDistFactor = 1.0;\n followPointerWorldPos = null;\n }\n\n states.followPointerDirty = false;\n }\n }\n\n if (followPointerWorldPos) {\n const dist = Math.abs(lenVec3(subVec3(followPointerWorldPos, view.camera.eye, tempVec3)));\n dollyDistFactor = dist / configs.dollyProximityThreshold;\n }\n\n if (dollyDistFactor < configs.dollyMinSpeed) {\n dollyDistFactor = configs.dollyMinSpeed;\n }\n }\n }\n } else {\n dollyDistFactor = 1;\n followPointerWorldPos = null;\n }\n\n const dollyDeltaForDist = (updates.dollyDelta * dollyDistFactor);\n\n //----------------------------------------------------------------------------------------------------------\n // Rotation\n //----------------------------------------------------------------------------------------------------------\n\n if (updates.rotateDeltaY !== 0 || updates.rotateDeltaX !== 0) {\n\n if ((!configs.firstPerson) && configs.followPointer && pivotController.getPivoting()) {\n pivotController.continuePivot(updates.rotateDeltaY, updates.rotateDeltaX);\n pivotController.showPivot();\n\n } else {\n\n if (updates.rotateDeltaX !== 0) {\n if (configs.firstPerson) {\n camera.pitch(-updates.rotateDeltaX);\n } else {\n camera.orbitPitch(updates.rotateDeltaX);\n }\n }\n\n if (updates.rotateDeltaY !== 0) {\n if (configs.firstPerson) {\n camera.yaw(updates.rotateDeltaY);\n } else {\n camera.orbitYaw(updates.rotateDeltaY);\n }\n }\n }\n\n updates.rotateDeltaX *= configs.rotationInertia;\n updates.rotateDeltaY *= configs.rotationInertia;\n\n cursorType = \"grabbing\";\n }\n\n //----------------------------------------------------------------------------------------------------------\n // Panning\n //----------------------------------------------------------------------------------------------------------\n\n if (Math.abs(updates.panDeltaX) < EPSILON) {\n updates.panDeltaX = 0;\n }\n\n if (Math.abs(updates.panDeltaY) < EPSILON) {\n updates.panDeltaY = 0;\n }\n\n if (Math.abs(updates.panDeltaZ) < EPSILON) {\n updates.panDeltaZ = 0;\n }\n\n if (updates.panDeltaX !== 0 || updates.panDeltaY !== 0 || updates.panDeltaZ !== 0) {\n\n const vec = createVec3();\n\n vec[0] = updates.panDeltaX;\n vec[1] = updates.panDeltaY;\n vec[2] = updates.panDeltaZ;\n\n let verticalEye;\n let verticalLook;\n\n if (configs.constrainVertical) {\n\n if (camera.xUp) {\n verticalEye = camera.eye[0];\n verticalLook = camera.look[0];\n } else if (camera.yUp) {\n verticalEye = camera.eye[1];\n verticalLook = camera.look[1];\n } else if (camera.zUp) {\n verticalEye = camera.eye[2];\n verticalLook = camera.look[2];\n }\n\n camera.pan(vec);\n\n const eye = camera.eye;\n const look = camera.look;\n\n if (camera.xUp) {\n eye[0] = verticalEye;\n look[0] = verticalLook;\n } else if (camera.yUp) {\n eye[1] = verticalEye;\n look[1] = verticalLook;\n } else if (camera.zUp) {\n eye[2] = verticalEye;\n look[2] = verticalLook;\n }\n\n camera.eye = eye;\n camera.look = look;\n\n } else {\n camera.pan(vec);\n }\n\n cursorType = \"grabbing\";\n }\n\n updates.panDeltaX *= configs.panInertia;\n updates.panDeltaY *= configs.panInertia;\n updates.panDeltaZ *= configs.panInertia;\n\n //----------------------------------------------------------------------------------------------------------\n // Dollying\n //----------------------------------------------------------------------------------------------------------\n\n if (dollyDeltaForDist !== 0) {\n\n if (dollyDeltaForDist < 0) {\n cursorType = \"zoom-in\";\n } else {\n cursorType = \"zoom-out\";\n }\n\n if (configs.firstPerson) {\n\n let verticalEye;\n let verticalLook;\n\n if (configs.constrainVertical) {\n if (camera.xUp) {\n verticalEye = camera.eye[0];\n verticalLook = camera.look[0];\n } else if (camera.yUp) {\n verticalEye = camera.eye[1];\n verticalLook = camera.look[1];\n } else if (camera.zUp) {\n verticalEye = camera.eye[2];\n verticalLook = camera.look[2];\n }\n }\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.pan([0, 0, dollyDeltaForDist]);\n camera.orthoProjection.scale = camera.orthoProjection.scale - dollyDeltaForDist;\n }\n\n if (configs.constrainVertical) {\n const eye = camera.eye;\n const look = camera.look;\n if (camera.xUp) {\n eye[0] = verticalEye;\n look[0] = verticalLook;\n } else if (camera.yUp) {\n eye[1] = verticalEye;\n look[1] = verticalLook;\n } else if (camera.zUp) {\n eye[2] = verticalEye;\n look[2] = verticalLook;\n }\n camera.eye = eye;\n camera.look = look;\n }\n\n } else if (configs.planView) {\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.orthoProjection.scale = camera.orthoProjection.scale + dollyDeltaForDist;\n camera.zoom(dollyDeltaForDist);\n }\n\n } else { // Orbiting\n\n if (configs.followPointer) {\n const dolliedThroughSurface = panController.dollyToCanvasPos(followPointerWorldPos, states.pointerCanvasPos, -dollyDeltaForDist);\n if (dolliedThroughSurface) {\n states.followPointerDirty = true;\n }\n } else {\n camera.orthoProjection.scale = camera.orthoProjection.scale + dollyDeltaForDist;\n camera.zoom(dollyDeltaForDist);\n }\n }\n\n updates.dollyDelta *= configs.dollyInertia;\n }\n\n pickController.fireEvents();\n\n document.body.style.cursor = cursorType;\n });\n }\n\n\n destroy() {\n this.#view.viewer.onTick.unsub(this.#onTick);\n }\n}\n\n", "\nimport {CameraFlightAnimation, PickResult, View} from \"@xeokit/viewer\";\nimport {createVec2} from \"@xeokit/matrix\";\nimport {PickController} from \"./PickController\";\nimport {PivotController} from \"./PivotController\";\nimport {PanController} from \"./PanController\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport {MouseMiscHandler} from \"./MouseMiscHandler\";\nimport {TouchPanRotateAndDollyHandler} from \"./TouchPanRotateAndDollyHandler\";\nimport {MousePanRotateDollyHandler} from \"./MousePanRotateDollyHandler\";\nimport {KeyboardAxisViewHandler} from \"./KeyboardAxisViewHandler\";\nimport {MousePickHandler} from \"./MousePickHandler\";\nimport {TouchPickHandler} from \"./TouchPickHandler\";\nimport {KeyboardPanRotateDollyHandler} from \"./KeyboardPanRotateDollyHandler\";\nimport {CameraUpdater} from \"./CameraUpdater\";\nimport {isString} from \"@xeokit/utils\";\nimport {FirstPersonNavigationMode, OrbitNavigationMode, PlanViewNavigationMode} from \"@xeokit/constants\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {\n KEY_A,\n KEY_ADD,\n KEY_D,\n KEY_DOWN_ARROW,\n KEY_E,\n KEY_LEFT_ARROW,\n KEY_NUM_1,\n KEY_NUM_2,\n KEY_NUM_3,\n KEY_NUM_4,\n KEY_NUM_5,\n KEY_NUM_6,\n KEY_Q,\n KEY_RIGHT_ARROW,\n KEY_S,\n KEY_SUBTRACT,\n KEY_UP_ARROW,\n KEY_W,\n KEY_X,\n KEY_Z\n} from \"./keycodes\";\n\n\n\nconst DEFAULT_SNAP_PICK_RADIUS = 30;\nconst DEFAULT_SNAP_VERTEX = true;\nconst DEFAULT_SNAP_EDGE = true;\n\n/**\n *\n */\nclass HoverEvent {\n}\n\n/**\n *\n */\nexport interface CameraControlParams {\n mouseWheelDollyRate?: number;\n keyboardDollyRate?: number;\n panInertia?: number;\n dollyMinSpeed?: number;\n dollyProximityThreshold?: number;\n dollyInertia?: number;\n touchDollyRate?: number;\n dragRotationRate?: number;\n keyboardRotationRate?: number;\n touchPanRate?: number;\n keyboardPanRate?: number;\n rotationInertia?: number;\n followPointer?: boolean;\n active?: boolean;\n panRightClick?: boolean;\n keyMap?: any;\n keyboardLayout?: any;\n constrainVertical?: boolean;\n planView?: boolean;\n navMode?: number;\n doublePickFlyTo?: boolean;\n keyboardEnabled?: boolean;\n}\n\n/**\n * @desc Controls the {@link Camera} with user input, and fires events when the user interacts with pickable {@link Entity}s.\n *\n * # Contents\n *\n * * [Overview](#overview)\n * * [Examples](#examples)\n * * [Orbit Mode](#orbit-mode)\n * + [Following the Pointer in Orbit Mode](#--following-the-pointer-in-orbit-mode--)\n * + [Showing the Pivot Position](#--showing-the-pivot-position--)\n * + [Axis-Aligned Views in Orbit Mode](#--axis-aligned-views-in-orbit-mode--)\n * + [View-Fitting Entitys in Orbit Mode](#--view-fitting-entitys-in-orbit-mode--)\n * * [First-Person Mode](#first-person-mode)\n * + [Following the Pointer in First-Person Mode](#--following-the-pointer-in-first-person-mode--)\n * + [Constraining Vertical Position in First-Person Mode](#--constraining-vertical-position-in-first-person-mode--)\n * + [Axis-Aligned Views in First-Person Mode](#--axis-aligned-views-in-first-person-mode--)\n * + [View-Fitting Entitys in First-Person Mode](#--view-fitting-entitys-in-first-person-mode--)\n * * [Plan-View Mode](#plan-view-mode)\n * + [Following the Pointer in Plan-View Mode](#--following-the-pointer-in-plan-view-mode--)\n * + [Axis-Aligned Views in Plan-View Mode](#--axis-aligned-views-in-plan-view-mode--)\n * * [CameraControl Events](#cameracontrol-events)\n * + [\"hover\"](#---hover---)\n * + [\"hoverOff\"](#---hoveroff---)\n * + [\"hoverEnter\"](#---hoverenter---)\n * + [\"hoverOut\"](#---hoverout---)\n * + [\"picked\"](#---picked---)\n * + [\"pickedSurface\"](#---pickedsurface---)\n * + [\"pickedNothing\"](#---pickednothing---)\n * + [\"doublePicked\"](#---doublepicked---)\n * + [\"doublePickedSurface\"](#---doublepickedsurface---)\n * + [\"doublePickedNothing\"](#---doublepickednothing---)\n * + [\"rightClick\"](#---rightclick---)\n * * [Custom Keyboard Mappings](#custom-keyboard-mappings)\n *\n *

    \n *\n * # Overview\n *\n * * Each {@link Viewer} has a ````CameraControl````, located at {@link Viewer#cameraControl}.\n * * {@link CameraControl#navMode} selects the navigation mode:\n * * ````OrbitNavigationMode```` rotates the {@link Camera} position about the target.\n * * ````\"firstPerson\"```` rotates the World about the Camera position.\n * * ````\"planView\"```` never rotates, but still allows to pan and dolly, typically for an axis-aligned view.\n * * {@link CameraControl#followPointer} makes the Camera follow the mouse or touch pointer.\n * * {@link CameraControl#constrainVertical} locks the Camera to its current height when in first-person mode.\n * * ````CameraControl```` fires pick events when we hover, click or tap on an {@link Entity}.\n *

    \n *\n * # Examples\n *\n * * [Orbit Navigation - Duplex Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_orbit_Duplex)\n * * [Orbit Navigation - Holter Tower Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_orbit_HolterTower)\n * * [First-Person Navigation - Duplex Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_firstPerson_Duplex)\n * * [First-Person Navigation - Holter Tower Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_firstPerson_HolterTower)\n * * [Plan-view Navigation - Schependomlaan Model](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_planView_Schependomlaan)\n * * [Custom Keyboard Mapping](https://xeokit.github.io/xeokit-sdk/examples/index.html#CameraControl_keyMap)\n *

    \n *\n * # Orbit Mode\n *\n * In orbit mode, ````CameraControl```` orbits the {@link Camera} about the target.\n *\n * To enable orbit mode:\n *\n * ````javascript\n * const cameraControl = myViewer.cameraControl;\n * cameraControl.navMode = OrbitNavigationMode;\n * ````\n *\n * Then orbit by:\n *\n * * left-dragging the mouse,\n * * tap-dragging the touch pad, and\n * * pressing arrow keys, or ````Q```` and ````E```` on a QWERTY keyboard, or ````A```` and ````E```` on an AZERTY keyboard.\n *

    \n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys, or ````W```` and ````S```` on a QWERTY keyboard, or ````Z```` and ````S```` for AZERTY.\n *

    \n *\n * Pan horizontally and vertically by:\n *\n * * right-dragging the mouse,\n * * left-dragging the mouse with the SHIFT key down,\n * * tap-dragging the touch pad with SHIFT down,\n * * pressing the ````A````, ````D````, ````Z```` and ````X```` keys on a QWERTY keyboard, and\n * * pressing the ````Q````, ````D````, ````W```` and ````X```` keys on an AZERTY keyboard,\n *

    \n *\n * ## Following the Pointer in Orbit Mode\n *\n * When {@link CameraControl#followPointer} is ````true````in orbiting mode, the mouse or touch pointer will dynamically\n * indicate the target that the {@link Camera} will orbit, as well as dolly to and from.\n *\n * Lets ensure that we're in orbit mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = OrbitNavigationMode;\n * cameraControl.followPointer = true;\n * ````\n *\n * ## Smart Pivoting\n *\n * TODO\n *\n * ## Showing the Pivot Position\n *\n * We can configure {@link CameraControl#pivotElement} with an HTML element to indicate the current\n * pivot position. The indicator will appear momentarily each time we move the {@link Camera} while in orbit mode with\n * {@link CameraControl#followPointer} set ````true````.\n *\n * First we'll define some CSS to style our pivot indicator as a black dot with a white border:\n *\n * ````css\n * .camera-pivot-marker {\n * color: #ffffff;\n * position: absolute;\n * width: 25px;\n * height: 25px;\n * border-radius: 15px;\n * border: 2px solid #ebebeb;\n * background: black;\n * visibility: hidden;\n * box-shadow: 5px 5px 15px 1px #000000;\n * z-index: 10000;\n * pointer-events: none;\n * }\n * ````\n *\n * Then we'll attach our pivot indicator's HTML element to the ````CameraControl````:\n *\n * ````javascript\n * const pivotElement = document.createRange().createContextualFragment(\"
    \").firstChild;\n *\n * document.body.appendChild(pivotElement);\n *\n * cameraControl.pivotElement = pivotElement;\n * ````\n *\n * ## Axis-Aligned Views in Orbit Mode\n *\n * In orbit mode, we can use keys 1-6 to position the {@link Camera} to look at the center of the {@link Scene} from along each of the\n * six World-space axis. Pressing one of these keys will fly the {@link Camera} to the corresponding axis-aligned view.\n *\n * ## View-Fitting Entitys in Orbit Mode\n *\n * When {@link CameraControl#doublePickFlyTo} is ````true````, we can left-double-click or\n * double-tap (ie. \"double-pick\") an {@link Entity} to fit it to view. This will cause the {@link Camera}\n * to fly to that Entity. Our target then becomes the center of that Entity. If we are currently pivoting,\n * then our pivot position is then also set to the Entity center.\n *\n * Disable that behaviour by setting {@link CameraControl#doublePickFlyTo} ````false````.\n *\n * # First-Person Mode\n *\n * In first-person mode, ````CameraControl```` rotates the World about the {@link Camera} position.\n *\n * To enable first-person mode:\n *\n * ````javascript\n * cameraControl.navMode = \"firstPerson\";\n * ````\n *\n * Then rotate by:\n *\n * * left-dragging the mouse,\n * * tap-dragging the touch pad,\n * * pressing arrow keys, or ````Q```` and ````E```` on a QWERTY keyboard, or ````A```` and ````E```` on an AZERTY keyboard.\n *

    \n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys, or ````W```` and ````S```` on a QWERTY keyboard, or ````Z```` and ````S```` for AZERTY.\n *

    \n *\n * Pan left, right, up and down by:\n *\n * * left-dragging or right-dragging the mouse, and\n * * tap-dragging the touch pad with SHIFT down.\n *\n * Pan forwards, backwards, left, right, up and down by pressing the ````WSADZX```` keys on a QWERTY keyboard,\n * or ````WSQDWX```` keys on an AZERTY keyboard.\n *

    \n *\n * ## Following the Pointer in First-Person Mode\n *\n * When {@link CameraControl#followPointer} is ````true```` in first-person mode, the mouse or touch pointer will dynamically\n * indicate the target to which the {@link Camera} will dolly to and from. In first-person mode, however, the World will always rotate\n * about the {@link Camera} position.\n *\n * Lets ensure that we're in first-person mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = \"firstPerson\";\n * cameraControl.followPointer = true;\n * ````\n *\n * When the pointer is over empty space, the target will remain the last object that the pointer was over.\n *\n * ## Constraining Vertical Position in First-Person Mode\n *\n * In first-person mode, we can lock the {@link Camera} to its current position on the vertical World axis, which is useful for walk-through navigation:\n *\n * ````javascript\n * cameraControl.constrainVertical = true;\n * ````\n *\n * ## Axis-Aligned Views in First-Person Mode\n *\n * In first-person mode we can use keys 1-6 to position the {@link Camera} to look at the center of\n * the {@link Scene} from along each of the six World-space axis. Pressing one of these keys will fly the {@link Camera} to the\n * corresponding axis-aligned view.\n *\n * ## View-Fitting Entitys in First-Person Mode\n *\n * As in orbit mode, when in first-person mode and {@link CameraControl#doublePickFlyTo} is ````true````, we can double-click\n * or double-tap an {@link Entity} (ie. \"double-picking\") to fit it in view. This will cause the {@link Camera} to fly to\n * that Entity. Our target then becomes the center of that Entity.\n *\n * Disable that behaviour by setting {@link CameraControl#doublePickFlyTo} ````false````.\n *\n * # Plan-View Mode\n *\n * In plan-view mode, ````CameraControl```` pans and rotates the {@link Camera}, without rotating it.\n *\n * To enable plan-view mode:\n *\n * ````javascript\n * cameraControl.navMode = \"planView\";\n * ````\n *\n * Dolly forwards and backwards by:\n *\n * * spinning the mouse wheel,\n * * pinching on the touch pad, and\n * * pressing the ````+```` and ````-```` keys.\n *\n *
    \n * Pan left, right, up and down by:\n *\n * * left-dragging or right-dragging the mouse, and\n * * tap-dragging the touch pad with SHIFT down.\n *\n * Pan forwards, backwards, left, right, up and down by pressing the ````WSADZX```` keys on a QWERTY keyboard,\n * or ````WSQDWX```` keys on an AZERTY keyboard.\n *

    \n *\n * ## Following the Pointer in Plan-View Mode\n *\n * When {@link CameraControl#followPointer} is ````true```` in plan-view mode, the mouse or touch pointer will dynamically\n * indicate the target to which the {@link Camera} will dolly to and from. In plan-view mode, however, the {@link Camera} cannot rotate.\n *\n * Lets ensure that we're in plan-view mode, then enable the {@link Camera} to follow the pointer:\n *\n * ````javascript\n * cameraControl.navMode = \"planView\";\n * cameraControl.followPointer = true; // Default\n * ````\n *\n * When the pointer is over empty space, the target will remain the last object that the pointer was over.\n *\n * ## Axis-Aligned Views in Plan-View Mode\n *\n * As in orbit and first-person modes, in plan-view mode we can use keys 1-6 to position the {@link Camera} to look at the center of\n * the {@link Scene} from along each of the six World-space axis. Pressing one of these keys will fly the {@link Camera} to the\n * corresponding axis-aligned view.\n *\n * # CameraControl Events\n *\n * ````CameraControl```` fires events as we interact with {@link Entity}s using mouse or touch input.\n *\n * The following examples demonstrate how to subscribe to those events.\n *\n * The first example shows how to save a handle to a subscription, which we can later use to unsubscribe.\n *\n * ## \"hover\"\n *\n * Event fired when the pointer moves while hovering over an Entity.\n *\n * ````javascript\n * const onHover = cameraControl.on(\"hover\", (e) => {\n * const entity = e.entity; // Entity\n * const canvasPos = e.canvasPos; // 2D canvas position\n * });\n * ````\n *\n * To unsubscribe from the event:\n *\n * ````javascript\n * cameraControl.off(onHover);\n * ````\n *\n * ## \"hoverOff\"\n *\n * Event fired when the pointer moves while hovering over empty space.\n *\n * ````javascript\n * cameraControl.on(\"hoverOff\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"hoverEnter\"\n *\n * Event fired when the pointer moves onto an Entity.\n *\n * ````javascript\n * cameraControl.on(\"hoverEnter\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"hoverOut\"\n *\n * Event fired when the pointer moves off an Entity.\n *\n * ````javascript\n * cameraControl.on(\"hoverOut\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"picked\"\n *\n * Event fired when we left-click or tap on an Entity.\n *\n * ````javascript\n * cameraControl.on(\"picked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"pickedSurface\"\n *\n * Event fired when we left-click or tap on the surface of an Entity.\n *\n * ````javascript\n * cameraControl.on(\"picked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * const worldPos = e.worldPos; // 3D World-space position\n * const viewPos = e.viewPos; // 3D View-space position\n * const worldNormal = e.worldNormal; // 3D World-space normal vector\n * });\n * ````\n *\n * ## \"pickedNothing\"\n *\n * Event fired when we left-click or tap on empty space.\n *\n * ````javascript\n * cameraControl.on(\"pickedNothing\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"doublePicked\"\n *\n * Event fired wwhen we left-double-click or double-tap on an Entity.\n *\n * ````javascript\n * cameraControl.on(\"doublePicked\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"doublePickedSurface\"\n *\n * Event fired when we left-double-click or double-tap on the surface of an Entity.\n *\n * ````javascript\n * cameraControl.on(\"doublePickedSurface\", (e) => {\n * const entity = e.entity;\n * const canvasPos = e.canvasPos;\n * const worldPos = e.worldPos;\n * const viewPos = e.viewPos;\n * const worldNormal = e.worldNormal;\n * });\n * ````\n *\n * ## \"doublePickedNothing\"\n *\n * Event fired when we left-double-click or double-tap on empty space.\n *\n * ````javascript\n * cameraControl.on(\"doublePickedNothing\", (e) => {\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## \"rightClick\"\n *\n * Event fired when we right-click on the canvas.\n *\n * ````javascript\n * cameraControl.on(\"rightClick\", (e) => {\n * const event = e.event; // Mouse event\n * const canvasPos = e.canvasPos;\n * });\n * ````\n *\n * ## Custom Keyboard Mappings\n *\n * We can customize````CameraControl```` key bindings as shown below.\n *\n * In this example, we'll just set the default bindings for a QWERTY keyboard.\n *\n * ````javascript\n * const input = myViewer.view.input;\n *\n * cameraControl.navMode = OrbitNavigationMode;\n * cameraControl.followPointer = true;\n *\n * const keyMap = {};\n *\n * keyMap[cameraControl.PAN_LEFT] = [KEY_A];\n * keyMap[cameraControl.PAN_RIGHT] = [KEY_D];\n * keyMap[cameraControl.PAN_UP] = [KEY_Z];\n * keyMap[cameraControl.PAN_DOWN] = [KEY_X];\n * keyMap[cameraControl.DOLLY_FORWARDS] = [KEY_W, KEY_ADD];\n * keyMap[cameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n * keyMap[cameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n * keyMap[cameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n * keyMap[cameraControl.ROTATE_Y_POS] = [KEY_LEFT_ARROW];\n * keyMap[cameraControl.ROTATE_Y_NEG] = [KEY_RIGHT_ARROW];\n * keyMap[cameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n * keyMap[cameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n * keyMap[cameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n * keyMap[cameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n * keyMap[cameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n * keyMap[cameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n *\n * cameraControl.keyMap = keyMap;\n * ````\n *\n * We can also just configure default bindings for a specified keyboard layout, like this:\n *\n * ````javascript\n * cameraControl.keyMap = \"qwerty\";\n * ````\n *\n * Then, ````CameraControl```` will internally set {@link CameraControl#keyMap} to the default key map for the QWERTY\n * layout (which is the same set of mappings we set in the previous example). In other words, if we subsequently\n * read {@link CameraControl#keyMap}, it will now be a key map, instead of the \"qwerty\" string value we set it to.\n *\n * Supported layouts are, so far:\n *\n * * ````\"qwerty\"````\n * * ````\"azerty\"````\n */\nexport class CameraControl extends Component {\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_LEFT = 0;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_RIGHT = 1;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_UP = 2;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_DOWN = 3;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_FORWARDS = 4;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static PAN_BACKWARDS = 5;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_X_POS = 6;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_X_NEG = 7;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_Y_POS = 8;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static ROTATE_Y_NEG = 9;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static DOLLY_FORWARDS = 10;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static DOLLY_BACKWARDS = 11;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_RIGHT = 12;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_BACK = 13;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_LEFT = 14;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_FRONT = 15;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_TOP = 16;\n\n /**\n * Identifies the XX action.\n * @final\n * @type {Number}\n */\n static AXIS_VIEW_BOTTOM = 17;\n\n view: View;\n\n\n /**\n * Event fired when we right-click.\n *\n * @event\n */\n readonly onRightClick: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHover: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverSurface: EventEmitter;\n\n /**\n * Event fired when the pointer moves while over empty space.\n *\n * @event\n */\n readonly onHoverOff: EventEmitter;\n\n /**\n * Event fired when the pointer moves onto a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverEnter: EventEmitter;\n\n /**\n * Event fired when the pointer moves off a {@link @xeokit/viewer!ViewObject}.\n *\n * @event\n */\n readonly onHoverOut: EventEmitter;\n\n /**\n * Event fired when a {@link @xeokit/viewer!ViewObject} is picked.\n *\n * @event\n */\n readonly onPicked: EventEmitter;\n\n /**\n * Event fired when empty space is picked.\n *\n * @event\n */\n readonly onPickedSurface: EventEmitter;\n\n /**\n * Event fired when empty space is picked.\n *\n * @event\n */\n readonly onPickedNothing: EventEmitter;\n\n /**\n * Event fired when a ViewObject is double-picked.\n *\n * @event\n */\n readonly onDoublePicked: EventEmitter;\n\n /**\n * Event fired when a surface is double-picked.\n *\n * @event\n */\n readonly onDoublePickedSurface: EventEmitter;\n\n /**\n * Event fired when empty space is double-picked.\n *\n * @event\n */\n readonly onDoublePickedNothing: EventEmitter;\n\n /**\n * Event fired when snapping off a surface, vertex, or edge.\n *\n * @event\n */\n readonly onHoverSnapOrSurfaceOff: EventEmitter;\n\n /**\n * Event fired when snapping onto a surface, vertex, or edge.\n *\n * @event\n */\n readonly onHoverSnapOrSurface: EventEmitter;\n\n /**\n * Event fired when ray moves.\n *\n * @event\n */\n readonly onRayMove: EventEmitter;\n\n #configs: {\n rotationInertia: number;\n mouseWheelDollyRate: number;\n snapToEdge: boolean;\n keyboardPanRate: number;\n touchPanRate: number;\n pointerEnabled: boolean;\n dollyProximityThreshold: number;\n keyboardRotationRate: number;\n planView: boolean;\n doubleClickTimeFrame: number;\n keyboardLayout: string;\n constrainVertical: boolean;\n snapRadius: number;\n touchDollyRate: number;\n dragRotationRate: number;\n firstPerson: boolean;\n active: boolean;\n longTapRadius: number;\n dollyMinSpeed: number;\n panInertia: number;\n followPointer: boolean;\n showPivot: boolean;\n keyboardEnabledOnlyIfMouseover: boolean;\n navMode: number;\n longTapTimeout: number;\n snapToVertex: boolean;\n keyboardDollyRate: number;\n dollyInertia: number;\n panRightClick: boolean;\n smartPivot: boolean;\n doublePickFlyTo: boolean;\n };\n\n #states: {\n mouseDownCursorX: number;\n tapStartTime: number;\n lastTapTime: number;\n mouseover: boolean;\n mouseDownCursorY: number;\n pointerCanvasPos: any;\n activeTouches: any[];\n tapStartPos: any;\n longTouchTimeout: null;\n followPointerDirty: boolean;\n mouseDownClientX: number;\n mouseDownClientY: number;\n touchStartTime: null;\n };\n\n #updates: {\n panDeltaZ: number;\n panDeltaY: number;\n panDeltaX: number;\n rotateDeltaX: number;\n dollyDelta: number;\n rotateDeltaY: number;\n };\n\n #controllers: {\n pickController: any;\n cameraControl: any;\n pivotController: any;\n cameraFlight: any;\n panController: any;\n };\n\n #handlers: any[];\n #cameraUpdater: any;\n\n #keyMap: any;\n\n\n\n /**\n * @private\n * @constructor\n */\n constructor(view: View, cfg:CameraControlParams = {}) {\n\n super(view, cfg);\n\n this.#keyMap = {}; // Maps key codes to the above actions\n\n this.view = view;\n\n this.view.htmlElement.oncontextmenu = (e) => {\n e.preventDefault();\n };\n\n // User-settable CameraControl configurations\n\n this.#configs = {\n\n // Private\n\n longTapTimeout: 600, // Millisecs\n longTapRadius: 5, // Pixels\n\n // General\n\n active: true,\n keyboardLayout: \"qwerty\",\n navMode: OrbitNavigationMode,\n planView: false,\n firstPerson: false,\n followPointer: true,\n doublePickFlyTo: true,\n panRightClick: true,\n showPivot: false,\n pointerEnabled: true,\n constrainVertical: false,\n smartPivot: false,\n doubleClickTimeFrame: 250,\n\n snapToVertex: DEFAULT_SNAP_VERTEX,\n snapToEdge: DEFAULT_SNAP_EDGE,\n snapRadius: DEFAULT_SNAP_PICK_RADIUS,\n\n keyboardEnabledOnlyIfMouseover: true,\n\n // Rotation\n\n dragRotationRate: 360.0,\n keyboardRotationRate: 90.0,\n rotationInertia: 0.0,\n\n // Panning\n\n keyboardPanRate: 1.0,\n touchPanRate: 1.0,\n panInertia: 0.5,\n\n // Dollying\n\n keyboardDollyRate: 10,\n mouseWheelDollyRate: 100,\n touchDollyRate: 0.2,\n dollyInertia: 0,\n dollyProximityThreshold: 30.0,\n dollyMinSpeed: 0.04\n };\n\n // Current runtime state of the CameraControl\n\n this.#states = {\n pointerCanvasPos: createVec2(),\n mouseover: false,\n followPointerDirty: true,\n mouseDownClientX: 0,\n mouseDownClientY: 0,\n mouseDownCursorX: 0,\n mouseDownCursorY: 0,\n touchStartTime: null,\n activeTouches: [],\n tapStartPos: createVec2(),\n tapStartTime: -1,\n lastTapTime: -1,\n longTouchTimeout: null\n };\n\n // Updates for CameraUpdater to process on next Scene \"tick\" event\n\n this.#updates = {\n rotateDeltaX: 0,\n rotateDeltaY: 0,\n panDeltaX: 0,\n panDeltaY: 0,\n panDeltaZ: 0,\n dollyDelta: 0\n };\n\n // Controllers to assist input event handlers with controlling the Camera\n\n this.#controllers = {\n cameraControl: this,\n pickController: new PickController(this, this.#configs),\n pivotController: new PivotController(view, this.#configs),\n panController: new PanController(view),\n cameraFlight: new CameraFlightAnimation(this.view, {\n duration: 0.5\n })\n };\n\n // Input event handlers\n\n this.#handlers = [\n new MouseMiscHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new TouchPanRotateAndDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new MousePanRotateDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new KeyboardAxisViewHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new MousePickHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new TouchPickHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates),\n new KeyboardPanRotateDollyHandler(this.view, this.#controllers, this.#configs, this.#states, this.#updates)\n ];\n\n // Applies scheduled updates to the Camera on each Scene \"tick\" event\n\n this.#cameraUpdater = new CameraUpdater(this.view, this.#controllers, this.#configs, this.#states, this.#updates);\n\n this.onHover = new EventEmitter(new EventDispatcher());\n this.onHoverOff = new EventEmitter(new EventDispatcher());\n this.onHoverEnter = new EventEmitter(new EventDispatcher());\n this.onHoverOut = new EventEmitter(new EventDispatcher());\n\n this.onRightClick = new EventEmitter(new EventDispatcher());\n this.onHoverSurface = new EventEmitter(new EventDispatcher());\n this.onPicked = new EventEmitter(new EventDispatcher());\n this.onPickedSurface = new EventEmitter(new EventDispatcher());\n this.onPickedNothing = new EventEmitter(new EventDispatcher());\n this.onDoublePicked = new EventEmitter(new EventDispatcher());\n this.onDoublePickedSurface = new EventEmitter(new EventDispatcher());\n this.onDoublePickedNothing = new EventEmitter(new EventDispatcher());\n this.onHoverSnapOrSurfaceOff = new EventEmitter(new EventDispatcher());\n this.onHoverSnapOrSurface = new EventEmitter(new EventDispatcher());\n this.onRayMove = new EventEmitter(new EventDispatcher());\n\n // Set initial user configurations\n\n this.navMode = cfg.navMode;\n if (cfg.planView) {\n this.planView = cfg.planView;\n }\n this.constrainVertical = cfg.constrainVertical;\n if (cfg.keyboardLayout) {\n this.keyboardLayout = cfg.keyboardLayout; // Deprecated\n } else {\n this.keyMap = cfg.keyMap;\n }\n this.doublePickFlyTo = cfg.doublePickFlyTo;\n this.panRightClick = cfg.panRightClick;\n this.active = cfg.active;\n this.followPointer = cfg.followPointer;\n this.rotationInertia = cfg.rotationInertia;\n this.keyboardPanRate = cfg.keyboardPanRate;\n this.touchPanRate = cfg.touchPanRate;\n this.keyboardRotationRate = cfg.keyboardRotationRate;\n this.dragRotationRate = cfg.dragRotationRate;\n this.touchDollyRate = cfg.touchDollyRate;\n this.dollyInertia = cfg.dollyInertia;\n this.dollyProximityThreshold = cfg.dollyProximityThreshold;\n this.dollyMinSpeed = cfg.dollyMinSpeed;\n this.panInertia = cfg.panInertia;\n this.pointerEnabled = true;\n this.keyboardDollyRate = cfg.keyboardDollyRate;\n this.mouseWheelDollyRate = cfg.mouseWheelDollyRate;\n }\n\n /**\n * Sets custom mappings of keys to ````CameraControl```` actions.\n *\n * See class docs for usage.\n *\n * @param {{Number:Number}|String} value Either a set of new key mappings, or a string to select a keyboard layout,\n * which causes ````CameraControl```` to use the default key mappings for that layout.\n */\n set keyMap(value: string) {\n value = value || \"qwerty\";\n if (isString(value)) {\n const keyMap = {};\n\n switch (value) {\n\n default:\n this.error(\"Unsupported value for 'keyMap': \" + value + \" defaulting to 'qwerty'\");\n // Intentional fall-through to \"qwerty\"\n case \"qwerty\":\n keyMap[CameraControl.PAN_LEFT] = [KEY_A];\n keyMap[CameraControl.PAN_RIGHT] = [KEY_D];\n keyMap[CameraControl.PAN_UP] = [KEY_Z];\n keyMap[CameraControl.PAN_DOWN] = [KEY_X];\n keyMap[CameraControl.PAN_BACKWARDS] = [];\n keyMap[CameraControl.PAN_FORWARDS] = [];\n keyMap[CameraControl.DOLLY_FORWARDS] = [KEY_W, KEY_ADD];\n keyMap[CameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n keyMap[CameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n keyMap[CameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n keyMap[CameraControl.ROTATE_Y_POS] = [KEY_Q, KEY_LEFT_ARROW];\n keyMap[CameraControl.ROTATE_Y_NEG] = [KEY_E, KEY_RIGHT_ARROW];\n keyMap[CameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n keyMap[CameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n keyMap[CameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n keyMap[CameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n keyMap[CameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n keyMap[CameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n break;\n\n case \"azerty\":\n keyMap[CameraControl.PAN_LEFT] = [KEY_Q];\n keyMap[CameraControl.PAN_RIGHT] = [KEY_D];\n keyMap[CameraControl.PAN_UP] = [KEY_W];\n keyMap[CameraControl.PAN_DOWN] = [KEY_X];\n keyMap[CameraControl.PAN_BACKWARDS] = [];\n keyMap[CameraControl.PAN_FORWARDS] = [];\n keyMap[CameraControl.DOLLY_FORWARDS] = [KEY_Z, KEY_ADD];\n keyMap[CameraControl.DOLLY_BACKWARDS] = [KEY_S, KEY_SUBTRACT];\n keyMap[CameraControl.ROTATE_X_POS] = [KEY_DOWN_ARROW];\n keyMap[CameraControl.ROTATE_X_NEG] = [KEY_UP_ARROW];\n keyMap[CameraControl.ROTATE_Y_POS] = [KEY_A, KEY_LEFT_ARROW];\n keyMap[CameraControl.ROTATE_Y_NEG] = [KEY_E, KEY_RIGHT_ARROW];\n keyMap[CameraControl.AXIS_VIEW_RIGHT] = [KEY_NUM_1];\n keyMap[CameraControl.AXIS_VIEW_BACK] = [KEY_NUM_2];\n keyMap[CameraControl.AXIS_VIEW_LEFT] = [KEY_NUM_3];\n keyMap[CameraControl.AXIS_VIEW_FRONT] = [KEY_NUM_4];\n keyMap[CameraControl.AXIS_VIEW_TOP] = [KEY_NUM_5];\n keyMap[CameraControl.AXIS_VIEW_BOTTOM] = [KEY_NUM_6];\n break;\n }\n\n this.#keyMap = keyMap;\n } else {\n const keyMap = value;\n this.#keyMap = keyMap;\n }\n }\n\n /**\n * Gets custom mappings of keys to {@link CameraControl} actions.\n *\n * @returns {{Number:Number}} Current key mappings.\n */\n get keyMap() {\n return this.#keyMap ;\n }\n\n /**\n * Returns true if any keys configured for the given action are down.\n * @param action\n * @param keyDownMap\n * @private\n */\n _isKeyDownForAction(action: number, keyDownMap: any) {\n // const keys = this.#keyMap [action];\n // if (!keys) {\n // return false;\n // }\n // if (!keyDownMap) {\n // keyDownMap = this.view.KEYDown;\n // }\n // for (let i = 0, len = keys.length; i < len; i++) {\n // const key = keys[i];\n // if (keyDownMap[key]) {\n // return true;\n // }\n // }\n return false;\n }\n\n /**\n * Sets the HTMl element to represent the pivot point when {@link CameraControl#followPointer} is true.\n *\n * See class comments for an example.\n *\n * @param {HTMLElement} element HTML element representing the pivot point.\n */\n set pivotElement(element: HTMLElement) {\n this.#controllers.pivotController.setPivotElement(element);\n }\n\n /**\n * Sets if this ````CameraControl```` is active or not.\n *\n * When inactive, the ````CameraControl```` will not react to input.\n *\n * Default is ````true````.\n *\n * @param {Boolean} value Set ````true```` to activate this ````CameraControl````.\n */\n set active(value: boolean) {\n value = value !== false;\n this.#configs.active = value;\n this.#handlers[1]._active = value;\n this.#handlers[5]._active = value;\n }\n\n /**\n * Gets if this ````CameraControl```` is active or not.\n *\n * When inactive, the ````CameraControl```` will not react to input.\n *\n * Default is ````true````.\n *\n * @returns {Boolean} Returns ````true```` if this ````CameraControl```` is active.\n */\n get active() : boolean{\n return this.#configs.active;\n }\n\n /**\n * Sets whether the pointer snap to vertex.\n *\n * @param {boolean} snapToVertex\n */\n set snapToVertex(snapToVertex: boolean) {\n this.#configs.snapToVertex = !!snapToVertex;\n }\n\n /**\n * Gets whether the pointer snap to vertex.\n *\n * @returns {boolean}\n */\n get snapToVertex() : boolean{\n return this.#configs.snapToVertex;\n }\n\n /**\n * Sets whether the pointer snap to edge.\n *\n * @param {boolean} snapToEdge\n */\n set snapToEdge(snapToEdge: boolean) {\n this.#configs.snapToEdge = !!snapToEdge;\n }\n\n /**\n * Gets whether the pointer snap to edge.\n *\n * @returns {boolean}\n */\n get snapToEdge(): boolean {\n return this.#configs.snapToEdge;\n }\n\n /**\n * Sets the current snap radius for \"hoverSnapOrSurface\" events, to specify whether the radius\n * within which the pointer snaps to the nearest vertex or the nearest edge.\n *\n * Default value is 30 pixels.\n *\n * @param {Number} snapRadius The snap radius.\n */\n set snapRadius(snapRadius: number) {\n snapRadius = snapRadius || DEFAULT_SNAP_PICK_RADIUS;\n this.#configs.snapRadius = snapRadius;\n }\n\n /**\n * Gets the current snap radius.\n *\n * @returns {Number} The snap radius.\n */\n get snapRadius() : number{\n return this.#configs.snapRadius;\n }\n\n /**\n * If `true`, the keyboard shortcuts are enabled ONLY if the mouse is over the canvas.\n *\n * @param {boolean} value\n */\n set keyboardEnabledOnlyIfMouseover(value: boolean) {\n this.#configs.keyboardEnabledOnlyIfMouseover = !!value;\n }\n\n /**\n * Gets whether the keyboard shortcuts are enabled ONLY if the mouse is over the canvas or ALWAYS.\n *\n * @returns {boolean}\n */\n get keyboardEnabledOnlyIfMouseover() : boolean{\n return this.#configs.keyboardEnabledOnlyIfMouseover;\n }\n\n /**\n * Gets the current navigation mode.\n *\n * Returned values are:\n *\n * * {@link @xeokit/constants!OrbitNavigationMode} - rotation orbits about the current target or pivot point,\n * * {@link @xeokit/constants!FirstPersonNavigationMode} - rotation is about the current eye position,\n * * {@link @xeokit/constants!PlanViewNavigationMode} - rotation is disabled.\n *\n * @returns {number} The navigation mode: OrbitNavigationMode, FirstPersonNavigationMode or PlanViewNavigationMode.\n */\n get navMode(): number {\n return this.#configs.navMode;\n }\n\n /**\n * Sets the current navigation mode.\n *\n * Accepted values are:\n *\n * * {@link @xeokit/constants!OrbitNavigationMode} - rotation orbits about the current target or pivot point,\n * * {@link @xeokit/constants!FirstPersonNavigationMode} - rotation is about the current eye position,\n * * {@link @xeokit/constants!PlanViewNavigationMode} - rotation is disabled.\n *\n * See class comments for more info.\n *\n * @param navMode The navigation mode: OrbitNavigationMode, FirstPersonNavigationMode or PlanViewNavigationMode.\n */\n set navMode(navMode: number | undefined) {\n navMode = navMode || OrbitNavigationMode;\n if (navMode !== FirstPersonNavigationMode && navMode !== OrbitNavigationMode && navMode !== PlanViewNavigationMode) {\n this.error(\"Unsupported value for navMode: \" + navMode + \" - supported values are 'orbit', 'firstPerson' and 'planView' - defaulting to 'orbit'\");\n navMode = OrbitNavigationMode;\n }\n this.#configs.firstPerson = (navMode === FirstPersonNavigationMode);\n this.#configs.planView = (navMode === PlanViewNavigationMode);\n if (this.#configs.firstPerson || this.#configs.planView) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n this.#configs.navMode = navMode;\n }\n\n /**\n * Sets whether mouse and touch input is enabled.\n *\n * Default is ````true````.\n *\n * Disabling mouse and touch input on ````CameraControl```` is useful when we want to temporarily use mouse or\n * touch input to interact with some other 3D control, without disturbing the {@link Camera}.\n *\n * @param {Boolean} value Set ````true```` to enable mouse and touch input.\n */\n set pointerEnabled(value) {\n this._reset();\n this.#configs.pointerEnabled = !!value;\n }\n\n _reset() {\n for (let i = 0, len = this.#handlers.length; i < len; i++) {\n const handler = this.#handlers[i];\n if (handler.reset) {\n handler.reset();\n }\n }\n\n this.#updates.panDeltaX = 0;\n this.#updates.panDeltaY = 0;\n this.#updates.rotateDeltaX = 0;\n this.#updates.rotateDeltaY = 0;\n this.#updates.dollyDelta = 0;\n }\n\n /**\n * Gets whether mouse and touch input is enabled.\n *\n * Default is ````true````.\n *\n * Disabling mouse and touch input on ````CameraControl```` is desirable when we want to temporarily use mouse or\n * touch input to interact with some other 3D control, without interfering with the {@link Camera}.\n *\n * @returns {Boolean} Returns ````true```` if mouse and touch input is enabled.\n */\n get pointerEnabled() {\n return this.#configs.pointerEnabled;\n }\n\n /**\n * Sets whether the {@link Camera} follows the mouse/touch pointer.\n *\n * In orbiting mode, the Camera will orbit about the pointer, and will dolly to and from the pointer.\n *\n * In fly-to mode, the Camera will dolly to and from the pointer, however the World will always rotate about the Camera position.\n *\n * In plan-view mode, the Camera will dolly to and from the pointer, however the Camera will not rotate.\n *\n * Default is ````true````.\n *\n * See class comments for more info.\n *\n * @param {Boolean} value Set ````true```` to enable the Camera to follow the pointer.\n */\n set followPointer(value) {\n this.#configs.followPointer = (value !== false);\n }\n\n /**\n * Sets whether the {@link Camera} follows the mouse/touch pointer.\n *\n * In orbiting mode, the Camera will orbit about the pointer, and will dolly to and from the pointer.\n *\n * In fly-to mode, the Camera will dolly to and from the pointer, however the World will always rotate about the Camera position.\n *\n * In plan-view mode, the Camera will dolly to and from the pointer, however the Camera will not rotate.\n *\n * Default is ````true````.\n *\n * See class comments for more info.\n *\n * @returns {Boolean} Returns ````true```` if the Camera follows the pointer.\n */\n get followPointer() {\n return this.#configs.followPointer;\n }\n\n /**\n * Sets the current World-space 3D target position.\n *\n * Only applies when {@link CameraControl#followPointer} is ````true````.\n *\n * @param {Number[]} worldPos The new World-space 3D target position.\n */\n set pivotPos(worldPos) {\n this.#controllers.pivotController.setPivotPos(worldPos);\n }\n\n /**\n * Gets the current World-space 3D pivot position.\n *\n * Only applies when {@link CameraControl#followPointer} is ````true````.\n *\n * @return {Number[]} worldPos The current World-space 3D pivot position.\n */\n get pivotPos() {\n return this.#controllers.pivotController.getPivotPos();\n }\n\n /**\n * @deprecated\n * @param {Boolean} value Set ````true```` to enable dolly-to-pointer behaviour.\n */\n set dollyToPointer(value) {\n this.warn(\"dollyToPointer property is deprecated - replaced with followPointer\");\n this.followPointer = value;\n }\n\n /**\n * @deprecated\n * @returns {Boolean} Returns ````true```` if dolly-to-pointer behaviour is enabled.\n */\n get dollyToPointer() {\n this.warn(\"dollyToPointer property is deprecated - replaced with followPointer\");\n return this.followPointer;\n }\n\n /**\n * @deprecated\n * @param {Boolean} value Set ````true```` to enable dolly-to-pointer behaviour.\n */\n set panToPointer(value) {\n this.warn(\"panToPointer property is deprecated - replaced with followPointer\");\n }\n\n /**\n * @deprecated\n * @returns {Boolean} Returns ````true```` if dolly-to-pointer behaviour is enabled.\n */\n get panToPointer() {\n this.warn(\"panToPointer property is deprecated - replaced with followPointer\");\n return false;\n }\n\n /**\n * Sets whether this ````CameraControl```` is in plan-view mode.\n *\n * When in plan-view mode, rotation is disabled.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @param {Boolean} value Set ````true```` to enable plan-view mode.\n * @deprecated\n */\n set planView(value) {\n this.#configs.planView = !!value;\n this.#configs.firstPerson = false;\n if (this.#configs.planView) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n this.warn(\"planView property is deprecated - replaced with navMode\");\n }\n\n /**\n * Gets whether this ````CameraControl```` is in plan-view mode.\n *\n * When in plan-view mode, rotation is disabled.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @returns {Boolean} Returns ````true```` if plan-view mode is enabled.\n * @deprecated\n */\n get planView() {\n this.warn(\"planView property is deprecated - replaced with navMode\");\n return this.#configs.planView;\n }\n\n /**\n * Sets whether this ````CameraControl```` is in first-person mode.\n *\n * In \"first person\" mode (disabled by default) the look position rotates about the eye position. Otherwise, {@link Camera#eye} rotates about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @param {Boolean} value Set ````true```` to enable first-person mode.\n * @deprecated\n */\n set firstPerson(value) {\n this.warn(\"firstPerson property is deprecated - replaced with navMode\");\n this.#configs.firstPerson = !!value;\n this.#configs.planView = false;\n if (this.#configs.firstPerson) {\n this.#controllers.pivotController.hidePivot();\n this.#controllers.pivotController.endPivot();\n }\n }\n\n /**\n * Gets whether this ````CameraControl```` is in first-person mode.\n *\n * In \"first person\" mode (disabled by default) the look position rotates about the eye position. Otherwise, {@link Camera#eye} rotates about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * Deprecated - use {@link CameraControl#navMode} instead.\n *\n * @returns {Boolean} Returns ````true```` if first-person mode is enabled.\n * @deprecated\n */\n get firstPerson() {\n this.warn(\"firstPerson property is deprecated - replaced with navMode\");\n return this.#configs.firstPerson;\n }\n\n /**\n * Sets whether to vertically constrain the {@link Camera} position for first-person navigation.\n *\n * When set ````true````, this constrains {@link Camera#eye} to its current vertical position.\n *\n * Only applies when {@link CameraControl#navMode} is ````\"firstPerson\"````.\n *\n * Default is ````false````.\n *\n * @param {Boolean} value Set ````true```` to vertically constrain the Camera.\n */\n set constrainVertical(value) {\n this.#configs.constrainVertical = !!value;\n }\n\n /**\n * Gets whether to vertically constrain the {@link Camera} position for first-person navigation.\n *\n * When set ````true````, this constrains {@link Camera#eye} to its current vertical position.\n *\n * Only applies when {@link CameraControl#navMode} is ````\"firstPerson\"````.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} ````true```` when Camera is vertically constrained.\n */\n get constrainVertical() {\n return this.#configs.constrainVertical;\n }\n\n /**\n * Sets whether double-picking an {@link Entity} causes the {@link Camera} to fly to its boundary.\n *\n * Default is ````false````.\n *\n * @param {Boolean} value Set ````true```` to enable double-pick-fly-to mode.\n */\n set doublePickFlyTo(value) {\n this.#configs.doublePickFlyTo = value !== false;\n }\n\n /**\n * Gets whether double-picking an {@link Entity} causes the {@link Camera} to fly to its boundary.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} Returns ````true```` when double-pick-fly-to mode is enabled.\n */\n get doublePickFlyTo() {\n return this.#configs.doublePickFlyTo;\n }\n\n /**\n * Sets whether either right-clicking (true) or middle-clicking (false) pans the {@link Camera}.\n *\n * Default is ````true````.\n *\n * @param {Boolean} value Set ````false```` to disable pan on right-click.\n */\n set panRightClick(value) {\n this.#configs.panRightClick = value !== false;\n }\n\n /**\n * Gets whether right-clicking pans the {@link Camera}.\n *\n * Default is ````true````.\n *\n * @returns {Boolean} Returns ````false```` when pan on right-click is disabled.\n */\n get panRightClick() {\n return this.#configs.panRightClick;\n }\n\n /**\n * Sets a factor in range ````[0..1]```` indicating how much the {@link Camera} keeps moving after you finish rotating it.\n *\n * A value of ````0.0```` causes it to immediately stop, ````0.5```` causes its movement to decay 50% on each tick,\n * while ````1.0```` causes no decay, allowing it continue moving, by the current rate of rotation.\n *\n * You may choose an inertia of zero when you want be able to precisely rotate the Camera,\n * without interference from inertia. Zero inertia can also mean that less frames are rendered while\n * you are rotating the Camera.\n *\n * Default is ````0.0````.\n *\n * Does not apply when {@link CameraControl#navMode} is ````\"planView\"````, which disallows rotation.\n *\n * @param {Number} rotationInertia New inertial factor.\n */\n set rotationInertia(rotationInertia) {\n this.#configs.rotationInertia = (rotationInertia !== undefined && rotationInertia !== null) ? rotationInertia : 0.0;\n }\n\n /**\n * Gets the rotation inertia factor.\n *\n * Default is ````0.0````.\n *\n * Does not apply when {@link CameraControl#navMode} is ````\"planView\"````, which disallows rotation.\n *\n * @returns {Number} The inertia factor.\n */\n get rotationInertia() {\n return this.#configs.rotationInertia;\n }\n\n /**\n * Sets how much the {@link Camera} pans each second with keyboard input.\n *\n * Default is ````5.0````, to pan the Camera ````5.0```` World-space units every second that\n * a panning key is depressed. See the ````CameraControl```` class documentation for which keys control\n * panning.\n *\n * Panning direction is aligned to our Camera's orientation. When we pan horizontally, we pan\n * to our left and right, when we pan vertically, we pan upwards and downwards, and when we pan forwards\n * and backwards, we pan along the direction the Camera is pointing.\n *\n * Unlike dollying when {@link followPointer} is ````true````, panning does not follow the pointer.\n *\n * @param {Number} keyboardPanRate The new keyboard pan rate.\n */\n set keyboardPanRate(keyboardPanRate) {\n this.#configs.keyboardPanRate = (keyboardPanRate !== null && keyboardPanRate !== undefined) ? keyboardPanRate : 5.0;\n }\n\n\n /**\n * Sets how fast the camera pans on touch panning\n *\n * @param {Number} touchPanRate The new touch pan rate.\n */\n set touchPanRate(touchPanRate) {\n this.#configs.touchPanRate = (touchPanRate !== null && touchPanRate !== undefined) ? touchPanRate : 1.0;\n }\n\n /**\n * Gets how fast the {@link Camera} pans on touch panning\n *\n * Default is ````1.0````.\n *\n * @returns {Number} The current touch pan rate.\n */\n get touchPanRate() {\n return this.#configs.touchPanRate;\n }\n\n /**\n * Gets how much the {@link Camera} pans each second with keyboard input.\n *\n * Default is ````5.0````.\n *\n * @returns {Number} The current keyboard pan rate.\n */\n get keyboardPanRate() {\n return this.#configs.keyboardPanRate;\n }\n\n /**\n * Sets how many degrees per second the {@link Camera} rotates/orbits with keyboard input.\n *\n * Default is ````90.0````, to rotate/orbit the Camera ````90.0```` degrees every second that\n * a rotation key is depressed. See the ````CameraControl```` class documentation for which keys control\n * rotation/orbit.\n *\n * @param {Number} keyboardRotationRate The new keyboard rotation rate.\n */\n set keyboardRotationRate(keyboardRotationRate) {\n this.#configs.keyboardRotationRate = (keyboardRotationRate !== null && keyboardRotationRate !== undefined) ? keyboardRotationRate : 90.0;\n }\n\n /**\n * Sets how many degrees per second the {@link Camera} rotates/orbits with keyboard input.\n *\n * Default is ````90.0````.\n *\n * @returns {Number} The current keyboard rotation rate.\n */\n get keyboardRotationRate() {\n return this.#configs.keyboardRotationRate;\n }\n\n /**\n * Sets the current drag rotation rate.\n *\n * This configures how many degrees the {@link Camera} rotates/orbits for a full sweep of the canvas by mouse or touch dragging.\n *\n * For example, a value of ````360.0```` indicates that the ````Camera```` rotates/orbits ````360.0```` degrees horizontally\n * when we sweep the entire width of the canvas.\n *\n * ````CameraControl```` makes vertical rotation half as sensitive as horizontal rotation, so that we don't tend to\n * flip upside-down. Therefore, a value of ````360.0```` rotates/orbits the ````Camera```` through ````180.0```` degrees\n * vertically when we sweep the entire height of the canvas.\n *\n * Default is ````360.0````.\n *\n * @param {Number} dragRotationRate The new drag rotation rate.\n */\n set dragRotationRate(dragRotationRate) {\n this.#configs.dragRotationRate = (dragRotationRate !== null && dragRotationRate !== undefined) ? dragRotationRate : 360.0;\n }\n\n /**\n * Gets the current drag rotation rate.\n *\n * Default is ````360.0````.\n *\n * @returns {Number} The current drag rotation rate.\n */\n get dragRotationRate() {\n return this.#configs.dragRotationRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys each second with keyboard input.\n *\n * Default is ````15.0````, to dolly the {@link Camera} ````15.0```` World-space units per second while we hold down\n * the ````+```` and ````-```` keys.\n *\n * @param {Number} keyboardDollyRate The new keyboard dolly rate.\n */\n set keyboardDollyRate(keyboardDollyRate) {\n this.#configs.keyboardDollyRate = (keyboardDollyRate !== null && keyboardDollyRate !== undefined) ? keyboardDollyRate : 15.0;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second with keyboard input.\n *\n * Default is ````15.0````.\n *\n * @returns {Number} The current keyboard dolly rate.\n */\n get keyboardDollyRate() {\n return this.#configs.keyboardDollyRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys with touch input.\n *\n * Default is ````0.2````\n *\n * @param {Number} touchDollyRate The new touch dolly rate.\n */\n set touchDollyRate(touchDollyRate) {\n this.#configs.touchDollyRate = (touchDollyRate !== null && touchDollyRate !== undefined) ? touchDollyRate : 0.2;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second with touch input.\n *\n * Default is ````0.2````.\n *\n * @returns {Number} The current touch dolly rate.\n */\n get touchDollyRate() {\n return this.#configs.touchDollyRate;\n }\n\n /**\n * Sets how much the {@link Camera} dollys each second while the mouse wheel is spinning.\n *\n * Default is ````100.0````, to dolly the {@link Camera} ````10.0```` World-space units per second as we spin\n * the mouse wheel.\n *\n * @param {Number} mouseWheelDollyRate The new mouse wheel dolly rate.\n */\n set mouseWheelDollyRate(mouseWheelDollyRate) {\n this.#configs.mouseWheelDollyRate = (mouseWheelDollyRate !== null && mouseWheelDollyRate !== undefined) ? mouseWheelDollyRate : 100.0;\n }\n\n /**\n * Gets how much the {@link Camera} dollys each second while the mouse wheel is spinning.\n *\n * Default is ````100.0````.\n *\n * @returns {Number} The current mouseWheel dolly rate.\n */\n get mouseWheelDollyRate() {\n return this.#configs.mouseWheelDollyRate;\n }\n\n /**\n * Sets the dolly inertia factor.\n *\n * This factor configures how much the {@link Camera} keeps moving after you finish dollying it.\n *\n * This factor is a value in range ````[0..1]````. A value of ````0.0```` causes dollying to immediately stop,\n * ````0.5```` causes dollying to decay 50% on each animation frame, while ````1.0```` causes no decay, which allows dollying\n * to continue until further input stops it.\n *\n * You might set ````dollyInertia```` to zero when you want be able to precisely position or rotate the Camera,\n * without interference from inertia. This also means that xeokit renders less frames while dollying the Camera,\n * which can improve rendering performance.\n *\n * Default is ````0````.\n *\n * @param {Number} dollyInertia New dolly inertia factor.\n */\n set dollyInertia(dollyInertia) {\n this.#configs.dollyInertia = (dollyInertia !== undefined && dollyInertia !== null) ? dollyInertia : 0;\n }\n\n /**\n * Gets the dolly inertia factor.\n *\n * Default is ````0````.\n *\n * @returns {Number} The current dolly inertia factor.\n */\n get dollyInertia() {\n return this.#configs.dollyInertia;\n }\n\n /**\n * Sets the proximity to the closest object below which dolly speed decreases, and above which dolly speed increases.\n *\n * Default is ````35.0````.\n *\n * @param {Number} dollyProximityThreshold New dolly proximity threshold.\n */\n set dollyProximityThreshold(dollyProximityThreshold) {\n this.#configs.dollyProximityThreshold = (dollyProximityThreshold !== undefined && dollyProximityThreshold !== null) ? dollyProximityThreshold : 35.0;\n }\n\n /**\n * Gets the proximity to the closest object below which dolly speed decreases, and above which dolly speed increases.\n *\n * Default is ````35.0````.\n *\n * @returns {Number} The current dolly proximity threshold.\n */\n get dollyProximityThreshold() {\n return this.#configs.dollyProximityThreshold;\n }\n\n /**\n * Sets the minimum dolly speed.\n *\n * Default is ````0.04````.\n *\n * @param {Number} dollyMinSpeed New dolly minimum speed.\n */\n set dollyMinSpeed(dollyMinSpeed) {\n this.#configs.dollyMinSpeed = (dollyMinSpeed !== undefined && dollyMinSpeed !== null) ? dollyMinSpeed : 0.04;\n }\n\n /**\n * Gets the minimum dolly speed.\n *\n * Default is ````0.04````.\n *\n * @returns {Number} The current minimum dolly speed.\n */\n get dollyMinSpeed() {\n return this.#configs.dollyMinSpeed;\n }\n\n /**\n * Sets the pan inertia factor.\n *\n * This factor configures how much the {@link Camera} keeps moving after you finish panning it.\n *\n * This factor is a value in range ````[0..1]````. A value of ````0.0```` causes panning to immediately stop,\n * ````0.5```` causes panning to decay 50% on each animation frame, while ````1.0```` causes no decay, which allows panning\n * to continue until further input stops it.\n *\n * You might set ````panInertia```` to zero when you want be able to precisely position or rotate the Camera,\n * without interference from inertia. This also means that xeokit renders less frames while panning the Camera,\n * wich can improve rendering performance.\n *\n * Default is ````0.5````.\n *\n * @param {Number} panInertia New pan inertia factor.\n */\n set panInertia(panInertia) {\n this.#configs.panInertia = (panInertia !== undefined && panInertia !== null) ? panInertia : 0.5;\n }\n\n /**\n * Gets the pan inertia factor.\n *\n * Default is ````0.5````.\n *\n * @returns {Number} The current pan inertia factor.\n */\n get panInertia() {\n return this.#configs.panInertia;\n }\n\n /**\n * Sets the keyboard layout.\n *\n * Supported layouts are:\n *\n * * ````\"qwerty\"```` (default)\n * * ````\"azerty\"````\n *\n * @deprecated\n * @param {String} value Selects the keyboard layout.\n */\n set keyboardLayout(value) {\n // this.warn(\"keyboardLayout property is deprecated - use keyMap property instead\");\n value = value || \"qwerty\";\n if (value !== \"qwerty\" && value !== \"azerty\") {\n this.error(\"Unsupported value for keyboardLayout - defaulting to 'qwerty'\");\n value = \"qwerty\";\n }\n this.#configs.keyboardLayout = value;\n this.keyMap = this.#configs.keyboardLayout;\n }\n\n /**\n * Gets the keyboard layout.\n *\n * Supported layouts are:\n *\n * * ````\"qwerty\"```` (default)\n * * ````\"azerty\"````\n *\n * @deprecated\n * @returns {String} The current keyboard layout.\n */\n get keyboardLayout() {\n return this.#configs.keyboardLayout;\n }\n\n /**\n * Sets a sphere as the representation of the pivot position.\n *\n * @param {Object} [cfg] Sphere configuration.\n * @param {String} [cfg.size=1] Optional size factor of the sphere. Defaults to 1.\n * @param {String} [cfg.material=PhongMaterial] Optional size factor of the sphere. Defaults to a red opaque material.\n */\n enablePivotSphere(cfg = {}) {\n this.#controllers.pivotController.enablePivotSphere(cfg);\n }\n\n /**\n * Remove the sphere as the representation of the pivot position.\n *\n */\n disablePivotSphere() {\n this.#controllers.pivotController.disablePivotSphere();\n }\n\n /**\n * Sets whether smart default pivoting is enabled.\n *\n * When ````true````, we'll pivot by default about the 3D position of the mouse/touch pointer on an\n * imaginary sphere that's centered at {@link Camera#eye} and sized to the {@link Scene} boundary.\n *\n * When ````false````, we'll pivot by default about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * @param {Boolean} enabled Set ````true```` to pivot by default about the selected point on the virtual sphere, or ````false```` to pivot by default about {@link Camera#look}.\n */\n set smartPivot(enabled) {\n this.#configs.smartPivot = (enabled !== false);\n }\n\n /**\n * Gets whether smart default pivoting is enabled.\n *\n * When ````true````, we'll pivot by default about the 3D position of the mouse/touch pointer on an\n * imaginary sphere that's centered at {@link Camera#eye} and sized to the {@link Scene} boundary.\n *\n * When ````false````, we'll pivot by default about {@link Camera#look}.\n *\n * Default is ````false````.\n *\n * @returns {Boolean} Returns ````true```` when pivoting by default about the selected point on the virtual sphere, or ````false```` when pivoting by default about {@link Camera#look}.\n */\n get smartPivot() {\n return this.#configs.smartPivot;\n }\n\n /**\n * Sets the double click time frame length in milliseconds.\n *\n * If two mouse click events occur within this time frame, it is considered a double click.\n *\n * Default is ````250````\n *\n * @param {Number} value New double click time frame.\n */\n set doubleClickTimeFrame(value) {\n this.#configs.doubleClickTimeFrame = (value !== undefined && value !== null) ? value : 250;\n }\n\n /**\n * Gets the double click time frame length in milliseconds.\n *\n * Default is ````250````\n *\n * @param {Number} value Current double click time frame.\n */\n get doubleClickTimeFrame() {\n return this.#configs.doubleClickTimeFrame;\n }\n\n /**\n * Destroys this ````CameraControl````.\n * @private\n */\n destroy() {\n this._destroyHandlers();\n this._destroyControllers();\n this.#cameraUpdater.destroy();\n super.destroy();\n }\n\n _destroyHandlers() {\n for (let i = 0, len = this.#handlers.length; i < len; i++) {\n const handler = this.#handlers[i];\n if (handler.destroy) {\n handler.destroy();\n }\n }\n }\n\n _destroyControllers() {\n for (let key in this.#controllers) {\n const controller = this.#controllers[key];\n if (controller.destroy) {\n controller.destroy();\n }\n }\n }\n}\n\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Fbcf.svg)](https://badge.fury.io/js/%40xeokit%2Fbcf)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/bcf/badge)](https://www.jsdelivr.com/package/npm/@xeokit/bcf)\n *\n * \n *\n * # xeokit BCF Viewpoint Importer and Exporter\n *\n * ---\n *\n * ### *Interoperate with other BIM software through the exchange of BCF viewpoints*\n *\n * ---\n *\n * The xeokit SDK uses the [BCF](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#bcf) format to exchange bookmarks of Viewer state with other\n * BIM software. BCF (Building Collaboration Format) is an open file format that enables data exchange and collaboration on 3D models and building\n * information. A *BCF viewpoint* is a snapshot of a specific issue related to a building project, containing information such as the\n * problem description, location, and proposed solutions. It is used to facilitate communication and collaboration among\n * project stakeholders in BIM workflows.\n *\n * To import a JSON-encoded BCF viewpoint into a {@link @xeokit/viewer!View | View} belonging to a {@link @xeokit/viewer!Viewer | Viewer}, use the\n * {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} function. Similarly, to export the state of a View as a JSON-encoded BCF viewpoint, use\n * the {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} function.\n *\n * Refer to {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} for information on the BCF viewpoint format.\n *\n *
    \n *\n * [![](https://mermaid.ink/img/pako:eNqlVFFP2zAQ_ivRPUJADe2oZKE-UMRTJlWrxsNmhNz4CkaJbcVOR1f1v2O7SUiyaGJaH1rfd9999-Uu9QEyxREIZDkz5k6w55IVVFLJRYmZFUpG6Tcfh3z0IPAXltGBysh9zqOdiw2Vxz6jTQvenHK2x_JPZurhaISvNq-ufb8gVYzfLu99nVZC2hVzXk1TfXOjfYwWy8Wikdlk25be9dw2dNIVx7R2dwLxrQd2HOQDBx-9t5UM0_KtOwVrtsN_tPwf9syg21_snRZJIaFwcbGgcEbhITQO30M49KJyfAEUJjU7aUQ-QeymqRwOtmGNC5Hou0ETtcMz_onGRz1i7hPEvrnhWBvWuNCouWZDXXq9nNNStSNq_4fb4VPmCktGPHn1AS8D2q3JhUQTaKk7_Xzs5jbCFkyfsrfh3M9nudBayOcnnbNGZVljKw_16UY6sRdlA29dBz09VWglUdpaqg3D-wYxOPMFE9zdNOG5KdgXLJACcUeOW1blloIjOyqrrFrvZQbElhXGUGnOLNZ3E5Aty41DNZNADvAGZBLDHsg0uZwm1_PJbH41mU3nX2ZXxxh-K-UqkhiQC6vKr_Vd53-Cwo-Q922O73wUsH8?type=png)](https://mermaid.live/edit#pako:eNqlVFFP2zAQ_ivRPUJADe2oZKE-UMRTJlWrxsNmhNz4CkaJbcVOR1f1v2O7SUiyaGJaH1rfd9999-Uu9QEyxREIZDkz5k6w55IVVFLJRYmZFUpG6Tcfh3z0IPAXltGBysh9zqOdiw2Vxz6jTQvenHK2x_JPZurhaISvNq-ufb8gVYzfLu99nVZC2hVzXk1TfXOjfYwWy8Wikdlk25be9dw2dNIVx7R2dwLxrQd2HOQDBx-9t5UM0_KtOwVrtsN_tPwf9syg21_snRZJIaFwcbGgcEbhITQO30M49KJyfAEUJjU7aUQ-QeymqRwOtmGNC5Hou0ETtcMz_onGRz1i7hPEvrnhWBvWuNCouWZDXXq9nNNStSNq_4fb4VPmCktGPHn1AS8D2q3JhUQTaKk7_Xzs5jbCFkyfsrfh3M9nudBayOcnnbNGZVljKw_16UY6sRdlA29dBz09VWglUdpaqg3D-wYxOPMFE9zdNOG5KdgXLJACcUeOW1blloIjOyqrrFrvZQbElhXGUGnOLNZ3E5Aty41DNZNADvAGZBLDHsg0uZwm1_PJbH41mU3nX2ZXxxh-K-UqkhiQC6vKr_Vd53-Cwo-Q922O73wUsH8)\n *\n *
    \n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/bcf\n * ````\n *\n * ## Usage\n *\n * ### Saving and Loading a View as BCF\n *\n * In this example we'll set up a xeokit Viewer in a web browser, load a BIM model into it, and then demonstrate how we\n * can save and load bookmarks of our Viewer state as BCF viewpoints, using the model.\n *\n * We'll start with these steps:\n *\n * * create a {@link @xeokit/scene!Scene | Scene} and a {@link @xeokit/data!Data | Data},\n * * initialize a Viewer with the Scene and a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer},\n * * create a new {@link @xeokit/viewer!View | View}, {@link @xeokit/scene!SceneModel | SceneModel} and {@link @xeokit/data!DataModel | DataModel},\n * * load a [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) file using the {@link @xeokit/xkt!loadXKT | loadXKT} function, and\n * * build the Scene and Data models, rendering the 3D model in the web browser.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Data} from \"@xeoki/data\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {loadXKT} from \"@xeokit/xkt\";\n * import {saveBCFViewpoint, loadBCFViewpoint} from \"@xeokit/bcf\";\n * import * as ifcTypes from \"@xeokit/ifctypes\";\n *\n * const scene = new Scene();\n * const data = new Data();\n *\n * const viewer = new Viewer({\n * scene,\n * renderers: new WebGLRenderer()\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * canvasId: \"myCanvas\"\n * });\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\"\n * });\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModel.xkt\").then(response => {\n * response.arrayBuffer().then(data => {\n *\n * loadXKT({ data, sceneModel, dataModel });\n *\n * sceneModel.build();\n * dataModel.build();\n * });\n * });\n * ````\n *\n * When our [XKT](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#xkt) has loaded, that call to {@link @xeokit/scene!SceneModel.build | SceneModel.build} will finalize our SceneModel\n * and cause it to immediately appear in the View's canvas.\n *\n * That call will also trigger {@link @xeokit/scene!SceneModel.onBuilt | SceneModel.onBuilt} and\n * {@link @xeokit/data!DataModel.onBuilt | DataModel.onBuilt} events.\n *\n * On the SceneModel.onBuilt event, we'll customize the View by arranging the {@link @xeokit/viewer!Camera} and applying\n * an X-ray effect tp a couple of objects, then we'll use {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} to save the state of the View to\n * a BCF viewpoint.\n *\n * Once the SceneModel and DataModel have been built, we can no longer add anything to them.\n *\n * ````javascript\n * sceneModel.onBuilt.one(()=>{\n *\n * view.camera.eye = [0,0,-33];\n * view.camera.look = [0,0,0];\n * view.camera.up = [0,0,0];\n *\n * view.setObjectsVisible(view.objectIds, false);\n * view.setObjectsVisible([\"myObject1\", \"myObject2\", \"myObject3\", ...], true);\n *\n * view.setObjectsXRayed([\"myObject1\", \"myObject\", ...], true);\n *\n * const bcfViewpoint = saveBCFViewpoint({\n * view: view\n * });\n *\n * });\n * ````\n *\n * Now that we've saved the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}, we could now use {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} to load\n * the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} back into the {@link @xeokit/viewer!View | View}:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint,\n * view\n * });\n * ````\n *\n * ### Saving and Loading a ViewLayer as BCF\n *\n * As before, let's create a Viewer with a View and a SceneModel.\n *\n * This time, we'll add two {@link @xeokit/viewer!ViewLayer | ViewLayers} to our View, and we'll associate our SceneModel with one of those\n * ViewLayers. ViewLayers allow us to partition our ViewObjects into bins, so that we can conveniently focus certain operations (eg. import/export\n * BCF) only on the relevant ViewObjects.\n *\n * ````javascript\n * import {Scene} from \"@xeokit/scene\";\n * import {Data} from \"@xeoki/data\";\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {loadBCFViewpoint} from \"@xeokit/bcf\";\n *\n * const viewer = new Viewer({\n * id: \"myViewer\",\n * scene,\n * renderers: new WebGLRenderer({\n * //...\n * })\n * });\n *\n * const view = viewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * const foregroundViewLayer = view.createLayer({\n * id: \"foreground\"\n * });\n *\n * const backgroundViewLayer = view.createLayer({\n * id: \"background\"\n * });\n *\n * const sceneModel = scene.createModel({\n * id: \"myModel\",\n * layerId: \"foreground\"\n * });\n *\n * //...create some objects, load XKT etc\n *\n * sceneModel.build();\n *\n * const myOtherSceneModel = scene.createModel({\n * id: \"myOtherModel\",\n * layerId: \"background\"\n * });\n *\n * //...create some objects, load XKT etc\n *\n * myOtherSceneModel.build();\n * ````\n *\n * Now we can use {@link @xeokit/bcf!saveBCFViewpoint | saveBCFViewpoint} to save the states of only the {@link @xeokit/viewer!ViewObject | ViewObjects} in the\n * {@link @xeokit/viewer!ViewLayer | ViewLayer} that contains our SceneModel to a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}, while ignoring the\n * other ViewLayer:\n *\n * ````javascript\n * const bcfViewpoint = saveBCFViewpoint({\n * view,\n * includeViewLayerIds: [\"foreground\"],\n * excludeViewLayerIds: [\"background\"] // Unnecessary, but we'll show it anyway\n * });\n * ````\n *\n * Use {@link @xeokit/bcf!loadBCFViewpoint | loadBCFViewpoint} to load the {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} back into the {@link @xeokit/viewer!ViewLayer | ViewLayer}:\n *\n * ````javascript\n * loadBCFViewpoint({\n * bcfViewpoint,\n * view,\n * includeViewLayerIds: [\"foreground\"],\n * excludeViewLayerIds: [\"background\"]\n * });\n * ````\n *\n * @module @xeokit/bcf\n */\nexport {BCFOrthogonalCamera} from \"./BCFOrthogonalCamera\";\nexport {BCFPerspectiveCamera} from \"./BCFPerspectiveCamera\";\nexport {BCFVector} from \"./BCFVector\";\nexport {BCFLine} from \"./BCFLine\";\nexport {BCFBitmap} from \"./BCFBitmap\";\nexport {BCFClippingPlane} from \"./BCFClippingPlane\";\nexport {BCFSnapshot} from \"./BCFSnapshot\";\nexport {BCFComponents} from \"./BCFComponents\";\nexport {BCFViewSetupHints} from \"./BCFViewSetupHints\";\nexport {BCFColoringComponent} from \"./BCFColoringComponent\";\nexport {BCFVisibilityComponent} from \"./BCFVisibilityComponent\";\nexport {BCFTranslucencyComponent} from \"./BCFTranslucencyComponent\";\nexport {BCFComponent} from \"./BCFComponent\";\nexport {BCFSelectionComponent} from \"./BCFSelectionComponent\";\nexport {BCFViewpoint} from \"./BCFViewpoint\";\nexport {loadBCFViewpoint} from \"./loadBCFViewpoint\";\nexport {saveBCFViewpoint} from \"./saveBCFViewpoint\";\nexport {SaveBCFViewpointParams} from \"./SaveBCFViewpointParams\";\nexport {LoadBCFViewpointParams} from \"./LoadBCFViewpointParams\";\n\n", "import type {LoadBCFViewpointParams} from \"./LoadBCFViewpointParams\";\nimport {addVec3, createVec3, negateVec3, subVec3} from \"@xeokit/matrix\";\nimport {View} from \"@xeokit/viewer\";\nimport {Data, DataObject} from \"@xeokit/data\";\nimport {OrthoProjectionType, PerspectiveProjectionType} from \"@xeokit/constants\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {IfcOpeningElement, IfcSpace} from \"@xeokit/ifctypes\";\nimport {BasicAggregation} from \"@xeokit/basictypes\";\nimport {BCFVector} from \"./BCFVector\";\nimport {BCFComponent} from \"./BCFComponent\";\n\nconst tempVec3 = createVec3();\nconst tempVec3b = createVec3();\nconst tempVec3c = createVec3();\n\n/**\n * Loads a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint} into a {@link @xeokit/viewer!View | View}.\n *\n * See {@link \"@xeokit/bcf\" | @xeokit/bcf} for usage.\n *\n * @param params BCF viewpoint loading paremeters.\n */\nexport function loadBCFViewpoint(params: LoadBCFViewpointParams): void {\n\n const includeViewLayers = params.includeLayerIds ? new Set(params.includeLayerIds) : null;\n const excludeViewLayers = params.excludeLayerIds ? new Set(params.excludeLayerIds) : null;\n\n const view = params.view;\n const data = params.data;\n const camera = view.camera;\n const rayCast = (!!params.rayCast);\n const immediate = (params.immediate !== false);\n const reset = (params.reset !== false);\n //const realWorldOffset = scene.realWorldOffset;\n const realWorldOffset = createVec3();\n const reverseClippingPlanes = (params.reverseClippingPlanes === true);\n const bcfViewpoint = params.bcfViewpoint;\n\n view.clearSectionPlanes();\n\n if (bcfViewpoint.clipping_planes && bcfViewpoint.clipping_planes.length > 0) {\n bcfViewpoint.clipping_planes.forEach(function (e) {\n let pos = xyzObjectToArray(e.location, tempVec3);\n let dir = xyzObjectToArray(e.direction, tempVec3);\n if (reverseClippingPlanes) {\n negateVec3(dir);\n }\n subVec3(pos, realWorldOffset);\n if (camera.yUp) {\n pos = ZToY(pos);\n dir = ZToY(dir);\n }\n view.createSectionPlane({pos, dir});\n });\n }\n /*\n scene.clearLines();\n\n if (bcfViewpoint.lines && bcfViewpoint.lines.length > 0) {\n const positions = [];\n const indices = [];\n let i = 0;\n bcfViewpoint.lines.forEach((e) => {\n if (!e.start_point) {\n return;\n }\n if (!e.end_point) {\n return;\n }\n positions.push(e.start_point.x);\n positions.push(e.start_point.y);\n positions.push(e.start_point.z);\n positions.push(e.end_point.x);\n positions.push(e.end_point.y);\n positions.push(e.end_point.z);\n indices.push(i++);\n indices.push(i++);\n });\n new LineSet(scene, {\n positions,\n indices,\n clippable: false,\n collidable: true\n });\n }\n\n scene.clearBitmaps();\n\n if (bcfViewpoint.bitmaps && bcfViewpoint.bitmaps.length > 0) {\n bcfViewpoint.bitmaps.forEach(function (e) {\n const bitmap_type = e.bitmap_type || \"jpg\"; // \"jpg\" | \"png\"\n const bitmap_data = e.bitmap_data; // base64\n let location = xyzObjectToArray(e.location, tempVec3a);\n let normal = xyzObjectToArray(e.normal, tempVec3b);\n let up = xyzObjectToArray(e.up, tempVec3c);\n let height = e.height || 1;\n if (!bitmap_type) {\n return;\n }\n if (!bitmap_data) {\n return;\n }\n if (!location) {\n return;\n }\n if (!normal) {\n return;\n }\n if (!up) {\n return;\n }\n if (camera.yUp) {\n location = ZToY(location);\n normal = ZToY(normal);\n up = ZToY(up);\n }\n new Bitmap(scene, {\n src: bitmap_data,\n type: bitmap_type,\n pos: location,\n normal: normal,\n up: up,\n clippable: false,\n collidable: true,\n height\n });\n });\n }\n */\n\n ///////////////////////////////////////////\n // TODO\n // Filter on layers\n ///////////////////////////////////////////\n\n if (reset) {\n view.setObjectsXRayed(view.xrayedObjectIds, false);\n view.setObjectsHighlighted(view.highlightedObjectIds, false);\n view.setObjectsSelected(view.selectedObjectIds, false);\n }\n\n function filterViewObject(viewObject) {\n return !viewObject.layer ||\n ((!includeViewLayers || includeViewLayers.has(viewObject.layer.id)) &&\n (!excludeViewLayers || !excludeViewLayers.has(viewObject.layer.id)));\n }\n\n if (bcfViewpoint.components) {\n if (bcfViewpoint.components.visibility) {\n if (!bcfViewpoint.components.visibility.default_visibility) {\n view.setObjectsVisible(view.objectIds, false);\n if (bcfViewpoint.components.visibility.exceptions) {\n bcfViewpoint.components.visibility.exceptions.forEach(\n component =>\n withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.visible = true;\n }\n }));\n }\n } else {\n view.setObjectsVisible(view.objectIds, true);\n if (bcfViewpoint.components.visibility.exceptions) {\n bcfViewpoint.components.visibility.exceptions.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n }));\n }\n }\n const view_setup_hints = bcfViewpoint.components.visibility.view_setup_hints;\n if (view_setup_hints) {\n if (view_setup_hints.spaces_visible === false) { // Hide IfcSpaces\n data.searchObjects({\n includeObjects: [IfcSpace],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.spaces_translucent !== undefined) { // X-ray IfcSpaces\n data.searchObjects({\n includeObjects: [IfcSpace],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.space_boundaries_visible !== undefined) {\n // TODO\n }\n if (view_setup_hints.openings_visible === false) { // Hide IfcOpeningElements\n data.searchObjects({\n includeObjects: [IfcOpeningElement],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.visible = false;\n }\n return false;\n }\n });\n }\n if (view_setup_hints.space_boundaries_translucent !== undefined) {\n // TODO\n }\n if (view_setup_hints.openings_translucent !== undefined) { // // X-ray IfcOpeningElements\n data.searchObjects({\n includeObjects: [IfcOpeningElement],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject && filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n return false;\n }\n });\n }\n }\n }\n\n if (bcfViewpoint.components.selection) {\n view.setObjectsSelected(view.selectedObjectIds, false);\n bcfViewpoint.components.selection.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.selected = true;\n }\n }));\n\n }\n if (bcfViewpoint.components.translucency) {\n view.setObjectsXRayed(view.xrayedObjectIds, false);\n bcfViewpoint.components.translucency.forEach(\n component => withBCFComponent(data, view, params, component,\n (viewObject) => {\n if (filterViewObject(viewObject)) {\n viewObject.xrayed = true;\n }\n }));\n }\n if (bcfViewpoint.components.coloring) {\n bcfViewpoint.components.coloring.forEach(coloring => {\n let color = coloring.color;\n let alpha = 0;\n let alphaDefined = false;\n if (color.length === 8) {\n alpha = parseInt(color.substring(0, 2), 16) / 256;\n if (alpha <= 1.0 && alpha >= 0.95) {\n alpha = 1.0;\n }\n color = color.substring(2);\n alphaDefined = true;\n }\n const colorize = [\n parseInt(color.substring(0, 2), 16) / 256,\n parseInt(color.substring(2, 4), 16) / 256,\n parseInt(color.substring(4, 6), 16) / 256\n ];\n coloring.components.map(component =>\n withBCFComponent(data, view, params, component,\n (viewObject) => {\n viewObject.colorize = colorize;\n if (alphaDefined) {\n viewObject.opacity = alpha;\n }\n }));\n });\n }\n }\n\n if (bcfViewpoint.perspective_camera || bcfViewpoint.orthogonal_camera) {\n let eye;\n let look;\n let up;\n let projection;\n\n if (bcfViewpoint.perspective_camera) {\n eye = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_view_point, tempVec3);\n look = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_direction, tempVec3);\n up = xyzObjectToArray(bcfViewpoint.perspective_camera.camera_up_vector, tempVec3);\n\n camera.perspectiveProjection.fov = bcfViewpoint.perspective_camera.field_of_view;\n\n projection = PerspectiveProjectionType;\n } else {\n eye = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_view_point, tempVec3);\n look = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_direction, tempVec3);\n up = xyzObjectToArray(bcfViewpoint.orthogonal_camera.camera_up_vector, tempVec3);\n\n camera.orthoProjection.scale = bcfViewpoint.orthogonal_camera.view_to_world_scale;\n\n projection = OrthoProjectionType;\n }\n\n subVec3(eye, realWorldOffset);\n\n if (camera.yUp) {\n eye = ZToY(eye);\n look = ZToY(look);\n up = ZToY(up);\n }\n\n if (rayCast) {\n const hit = view.pick({\n pickSurface: true, // <<------ This causes picking to find the intersection point on the viewObject\n rayOrigin: eye,\n rayDirection: look\n });\n look = (hit ? hit.worldPos : addVec3(eye, look, tempVec3));\n } else {\n look = addVec3(eye, look, tempVec3);\n }\n\n if (immediate) {\n camera.eye = eye;\n camera.look = look;\n camera.up = up;\n camera.projectionType = projection;\n } else {\n view.cameraFlight.flyTo({eye, look, up, duration: params.duration, projection}, () => {\n // TODO\n });\n }\n }\n}\n\n\nfunction withBCFComponent(data: Data, view: View, params: LoadBCFViewpointParams, component: BCFComponent, callback) {\n\n\n if (component.authoring_tool_id && component.originating_system === params.originatingSystem) {\n\n const id = component.authoring_tool_id;\n const viewObject = view.objects[id];\n\n if (viewObject) {\n callback(viewObject);\n return\n }\n\n if (params.updateCompositeObjects) {\n const dataObject = data.objects[id];\n if (dataObject) {\n data.searchObjects({ // Updated aggregated IFC elements\n startObjectId: dataObject.id,\n includeStart: true,\n includeRelated: [BasicAggregation],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject) {\n callback(viewObject);\n }\n return false;\n }\n });\n return;\n }\n }\n }\n\n if (component.ifc_guid) {\n\n const originalSystemId = component.ifc_guid;\n const viewObject = view.objects[originalSystemId];\n\n if (viewObject) {\n callback(viewObject);\n return;\n }\n\n if (params.updateCompositeObjects) {\n const dataObject = data.objects[originalSystemId];\n if (dataObject) {\n data.searchObjects({\n startObjectId: dataObject.id,\n includeStart: true,\n includeRelated: [BasicAggregation],\n resultCallback: (dataObject: DataObject): boolean => {\n const viewObject = view.objects[dataObject.id];\n if (viewObject) {\n callback(viewObject);\n }\n return false;\n }\n });\n return;\n }\n }\n\n // Object.keys(scene.models).forEach((modelId) => {\n //\n // const id = globalizeObjectId(modelId, originalSystemId);\n // const viewObject = scene.objects[id];\n //\n // if (viewObject) {\n // callback(viewObject);\n // return;\n // }\n //\n // if (params.updateCompositeObjects) {\n // const dataObject = data.objects[id];\n // if (dataObject) {\n // scene.withObjects(viewer.metaScene.getObjectIDsInSubtree(id), callback);\n //\n // }\n // }\n // });\n }\n}\n\nfunction globalizeObjectId(modelId: string, objectId: string): string {\n return (modelId + \"#\" + objectId)\n}\n\nfunction xyzObjectToArray(xyz: BCFVector, arry: FloatArrayParam): FloatArrayParam {\n arry = new Float64Array(3);\n arry[0] = xyz.x;\n arry[1] = xyz.y;\n arry[2] = xyz.z;\n return arry;\n}\n\nfunction YToZ(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], -vec[2], vec[1]]);\n}\n\nfunction ZToY(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], vec[2], -vec[1]]);\n}\n\nfunction colorizeToRGB(color: FloatArrayParam): string {\n let rgb = \"\";\n rgb += Math.round(color[0] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[1] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[2] * 255).toString(16).padStart(2, \"0\");\n return rgb;\n}\n", "import type {BCFViewpoint} from \"./BCFViewpoint\";\nimport type {SaveBCFViewpointParams} from \"./SaveBCFViewpointParams\";\nimport {addVec3, createVec3, normalizeVec3, subVec3} from \"@xeokit/matrix\";\nimport {FloatArrayParam} from \"@xeokit/math\";\nimport {OrthoProjectionType} from \"@xeokit/constants\";\nimport {ViewObject} from \"@xeokit/viewer\";\n\n/**\n * Saves a {@link @xeokit/viewer!View | View} to a {@link @xeokit/bcf!BCFViewpoint | BCFViewpoint}.\n *\n * See {@link \"@xeokit/bcf\" | @xeokit/bcf} for usage.\n *\n * @param params BCF saving parameers.\n * @returns The BCF viewpoint.\n */\nexport function saveBCFViewpoint(params: SaveBCFViewpointParams): BCFViewpoint {\n\n const includeViewLayers = params.includeLayerIds ? new Set(params.includeLayerIds) : null;\n const excludeViewLayers = params.excludeLayerIds ? new Set(params.excludeLayerIds) : null;\n\n const view = params.view;\n const camera = view.camera;\n // const realWorldOffset = view.realWorldOffset;\n const realWorldOffset = createVec3();\n const reverseClippingPlanes = (params.reverseClippingPlanes === true);\n let bcfViewpoint: any = {};\n\n let lookDirection = normalizeVec3(subVec3(camera.look, camera.eye, createVec3()));\n let eye = camera.eye;\n let up = camera.up;\n\n if (camera.yUp) {\n // BCF is Z up\n lookDirection = YToZ(lookDirection);\n eye = YToZ(eye);\n up = YToZ(up);\n }\n\n const camera_view_point = xyzArrayToObject(addVec3(eye, realWorldOffset));\n\n if (camera.projectionType === OrthoProjectionType) {\n bcfViewpoint.orthogonal_camera = {\n camera_view_point: camera_view_point,\n camera_direction: xyzArrayToObject(lookDirection),\n camera_up_vector: xyzArrayToObject(up),\n view_to_world_scale: camera.orthoProjection.scale,\n };\n } else {\n bcfViewpoint.perspective_camera = {\n camera_view_point: camera_view_point,\n camera_direction: xyzArrayToObject(lookDirection),\n camera_up_vector: xyzArrayToObject(up),\n field_of_view: camera.perspectiveProjection.fov,\n };\n }\n\n // Section planes\n\n // const sectionPlanes = view.sectionPlanes;\n // for (let id in sectionPlanes) {\n // if (sectionPlanes.hasOwnProperty(id)) {\n // let sectionPlane = sectionPlanes[id];\n // if (!sectionPlane.active) {\n // continue;\n // }\n // let location = sectionPlane.pos;\n //\n // let direction;\n // if (reverseClippingPlanes) {\n // direction = negateVec3(sectionPlane.dir, createVec3());\n // } else {\n // direction = sectionPlane.dir;\n // }\n //\n // if (camera.yUp) {\n // // BCF is Z up\n // location = YToZ(location);\n // direction = YToZ(direction);\n // }\n // addVec3(location, realWorldOffset);\n //\n // location = xyzArrayToObject(location);\n // direction = xyzArrayToObject(direction);\n // if (!bcfViewpoint.clipping_planes) {\n // bcfViewpoint.clipping_planes = [];\n // }\n // bcfViewpoint.clipping_planes.push({location, direction});\n // }\n // }\n\n // Lines\n\n // const lineSets = view.lineSets;\n // for (let id in lineSets) {\n // if (lineSets.hasOwnProperty(id)) {\n // const lineSet = lineSets[id];\n // if (!bcfViewpoint.lines) {\n // bcfViewpoint.lines = [];\n // }\n // const positions = lineSet.positions;\n // const indices = lineSet.indices;\n // for (let i = 0, len = indices.length / 2; i < len; i++) {\n // const a = indices[i * 2];\n // const b = indices[(i * 2) + 1];\n // bcfViewpoint.lines.push({\n // start_point: {\n // x: positions[a * 3 + 0],\n // y: positions[a * 3 + 1],\n // z: positions[a * 3 + 2]\n // },\n // end_point: {\n // x: positions[b * 3 + 0],\n // y: positions[b * 3 + 1],\n // z: positions[b * 3 + 2]\n // }\n // });\n // }\n //\n // }\n // }\n\n // Bitmaps\n\n // const bitmaps = view.bitmaps;\n // for (let id in bitmaps) {\n // if (bitmaps.hasOwnProperty(id)) {\n // let bitmap = bitmaps[id];\n // let location = bitmap.pos;\n // let normal = bitmap.normal;\n // let up = bitmap.up;\n // if (camera.yUp) {\n // // BCF is Z up\n // location = YToZ(location);\n // normal = YToZ(normal);\n // up = YToZ(up);\n // }\n // addVec3(location, realWorldOffset);\n // if (!bcfViewpoint.bitmaps) {\n // bcfViewpoint.bitmaps = [];\n // }\n // bcfViewpoint.bitmaps.push({\n // bitmap_type: bitmap.type,\n // bitmap_data: bitmap.imageData,\n // location: xyzArrayToObject(location),\n // normal: xyzArrayToObject(normal),\n // up: xyzArrayToObject(up),\n // height: bitmap.height\n // });\n // }\n // }\n\n // Entity states\n\n bcfViewpoint.components = {\n visibility: {\n view_setup_hints: {\n spaces_visible: !!params.spacesVisible,\n space_boundaries_visible: !!params.spaceBoundariesVisible,\n openings_visible: !!params.openingsVisible,\n spaces_translucent: !!params.spaces_translucent,\n space_boundaries_translucent: !!params.space_boundaries_translucent,\n openings_translucent: !!params.openings_translucent\n }\n }\n };\n\n const opacityObjectIds = new Set(view.opacityObjectIds);\n const xrayedObjectIds = new Set(view.xrayedObjectIds);\n const colorizedObjectIds = new Set(view.colorizedObjectIds);\n\n const coloringMap = Object.values(view.objects)\n .filter(viewObject =>\n\n /////////////////////////////////\n // TODO filter visible, highlioghted, selected x-rayed etc\n ///////////////////////////////////////////////////////\n\n !viewObject.layer ||\n ((!includeViewLayers || includeViewLayers.has(viewObject.layer.id)) &&\n (!excludeViewLayers || !excludeViewLayers.has(viewObject.layer.id)))\n\n && opacityObjectIds.has(viewObject.id)\n || colorizedObjectIds.has(viewObject.id)\n || xrayedObjectIds.has(viewObject.id))\n .reduce((coloringMap, viewObject: ViewObject) => {\n\n let color = colorizeToRGB(viewObject.colorize);\n let alpha;\n\n if (viewObject.xrayed) {\n if (view.xrayMaterial.fillAlpha === 0.0 && view.xrayMaterial.edgeAlpha !== 0.0) {\n // BCF can't deal with edges. If xRay is implemented only with edges, set an arbitrary opacity\n alpha = 0.1;\n } else {\n alpha = view.xrayMaterial.fillAlpha;\n }\n alpha = Math.round(alpha * 255).toString(16).padStart(2, \"0\");\n color = alpha + color;\n } else if (opacityObjectIds.has(viewObject.id)) {\n alpha = Math.round(viewObject.opacity * 255).toString(16).padStart(2, \"0\");\n color = alpha + color;\n }\n\n if (!coloringMap[color]) {\n coloringMap[color] = [];\n }\n\n const objectId = viewObject.id;\n const originalSystemId = viewObject.originalSystemId;\n const component: any = {\n ifc_guid: originalSystemId,\n originating_system: params.originatingSystem\n };\n if (originalSystemId !== objectId) {\n component.authoring_tool_id = objectId;\n }\n\n coloringMap[color].push(component);\n\n return coloringMap;\n\n }, {});\n\n const coloringArray = Object.entries(coloringMap).map(([color, components]) => {\n return {color, components};\n });\n\n bcfViewpoint.components.coloring = coloringArray;\n\n const objectIds = view.objectIds;\n const visibleObjects = view.visibleObjects;\n const visibleObjectIds = view.visibleObjectIds;\n const invisibleObjectIds = objectIds.filter(id => !visibleObjects[id]);\n const selectedObjectIds = view.selectedObjectIds;\n\n if (params.defaultInvisible || visibleObjectIds.length < invisibleObjectIds.length) {\n bcfViewpoint.components.visibility.exceptions = createBCFComponents(params, visibleObjectIds);\n bcfViewpoint.components.visibility.default_visibility = false;\n } else {\n bcfViewpoint.components.visibility.exceptions = createBCFComponents(params, invisibleObjectIds);\n bcfViewpoint.components.visibility.default_visibility = true;\n }\n\n bcfViewpoint.components.selection = createBCFComponents(params, selectedObjectIds);\n\n bcfViewpoint.components.translucency = createBCFComponents(params, view.xrayedObjectIds);\n\n if (params.snapshot !== false) {\n bcfViewpoint.snapshot = {\n snapshot_type: \"png\",\n snapshot_data: view.getSnapshot({format: \"png\"})\n };\n }\n\n return bcfViewpoint;\n}\n\nfunction createBCFComponents(params: SaveBCFViewpointParams, objectIds) {\n const view = params.view;\n const components = [];\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const objectId = objectIds[i];\n const viewObject = view.objects[objectId];\n if (viewObject) {\n const component: any = {\n ifc_guid: viewObject.originalSystemId,\n originating_system: params.originatingSystem\n };\n if (viewObject.originalSystemId !== objectId) {\n component.authoring_tool_id = objectId;\n }\n components.push(component);\n }\n }\n return components;\n}\n\n\nfunction globalizeObjectId(modelId: string, objectId: string): string {\n return (modelId + \"#\" + objectId)\n}\n\nfunction xyzArrayToObject(arr: FloatArrayParam): any {\n return {\"x\": arr[0], \"y\": arr[1], \"z\": arr[2]};\n}\n\nfunction YToZ(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], -vec[2], vec[1]]);\n}\n\nfunction ZToY(vec: FloatArrayParam): FloatArrayParam {\n return new Float64Array([vec[0], vec[2], -vec[1]]);\n}\n\nfunction colorizeToRGB(color) {\n let rgb = \"\";\n rgb += Math.round(color[0] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[1] * 255).toString(16).padStart(2, \"0\");\n rgb += Math.round(color[2] * 255).toString(16).padStart(2, \"0\");\n return rgb;\n}\n\nfunction convertListToMap(strings) {\n const resultMap = new Map();\n strings.forEach((str) => {\n resultMap.set(str, true);\n });\n return resultMap;\n}\n", "/**\n * [![npm version](https://badge.fury.io/js/%40xeokit%2Ftreeview.svg)](https://badge.fury.io/js/%40xeokit%2Ftreeview)\n * [![](https://data.jsdelivr.com/v1/package/npm/@xeokit/treeview/badge)](https://www.jsdelivr.com/package/npm/@xeokit/treeview)\n *\n * \n *\n *
    \n *\n * ## xeokit Tree View UI\n *\n * * {@link @xeokit/treeview!TreeView}\n * * Fast HTML tree view to navigate federated models in a {@link @xeokit/viewer!Viewer | Viewer}\n * * Use with a {@link @xeokit/viewer!View | View} and a semantic {@link @xeokit/data!Data | Data} model\n * * Supports Industry Foundation Classes ([IFC](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ifc))\n * * Supports any schema expressable as ER graph with aggregation relationships\n *\n * ## Installation\n *\n * ````bash\n * npm install @xeokit/treeview\n * ````\n *\n * ## Usage\n *\n * TODO\n *\n * ````javascript\n * import {Viewer} from \"@xeokit/viewer\";\n * import {WebGLRenderer} from \"@xeokit/webglrenderer\";\n * import {Data} from \"@xeokit/data\";\n * import * as ifcTypes from \"@xeokit/ifctypes\";\n * import {TreeView} from \"@xeokit/treeview!TreeView\";\n * import {loadDTX} from \"@xeokit/dtx\";\n * ````\n *\n * Create a {@link @xeokit/viewer!Viewer | Viewer}, configured with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}:\n *\n * ````javascript\n * const myViewer = new Viewer({\n * id: \"myViewer\",\n * renderers: new WebGLRenderer({ })\n * });\n * ````\n *\n * Create a {@link @xeokit/viewer!View} and position the {@link @xeokit/viewer!Camera}:\n *\n * ````javascript\n * const view1 = myViewer.createView({\n * id: \"myView\",\n * canvasId: \"myView1\"\n * });\n *\n * view1.camera.eye = [-3.933, 2.855, 27.018];\n * view1.camera.look = [4.400, 3.724, 8.899];\n * view1.camera.up = [-0.018, 0.999, 0.039];\n *\n * const data = new Data();\n * ````\n *\n * Create a {@link @xeokit/treeview!TreeView}, configured to show TODO:\n *\n * ````javascript\n * const treeView = new TreeView({\n *\n * view: myView,\n * data: myData,\n *\n * containerElement: document.getElementById(\"myTreeViewContainer\"),\n *\n * hierarchy: TreeView.GroupsHierarchy,\n * linkType: ifcTypes.IfcRelAggregates,\n * groupTypes: [ifcTypes.IfcBuilding, ifcTypes.IfcBuildingStorey]\n * });\n *\n * const sceneModel = new SceneModel(); // SceneModel implements SceneModel\n *\n * const dataModel = data.createModel({\n * id: \"myModel\"\n * });\n *\n * fetch(\"myModel.dtx\").then(response => {\n *\n * response.arrayBuffer().then(data => {\n *\n * loadDTX({ data, sceneModel, dataModel });\n *\n * sceneModel.build();\n * dataModel.build();\n *\n * myViewer.scene.addModel({ id: \"myModel\", sceneModel });\n * });\n * });\n * ````\n *\n * @module @xeokit/treeview\n */\nexport * from \"./TreeView\";\nexport {TreeViewParams} from \"./TreeViewparams\";\nexport {TreeViewNode} from \"./TreeViewNode\";\nexport {TreeViewNodeContextMenuEvent} from \"./TreeViewNodeContextMenuEvent\";\nexport {TreeViewNodeTitleClickedEvent} from \"./TreeViewNodeTitleClickedEvent\";\n", "import type {View, Viewer, ViewObject} from \"@xeokit/viewer\";\nimport {Component, EventEmitter} from \"@xeokit/core\";\nimport type {Data, DataModel, DataObject} from \"@xeokit/data\";\nimport {EventDispatcher} from \"strongly-typed-events\";\nimport {TreeViewParams} from \"./TreeViewparams\";\nimport {TreeViewNode} from \"./TreeViewNode\";\nimport {TreeViewNodeContextMenuEvent} from \"./TreeViewNodeContextMenuEvent\";\nimport {TreeViewNodeTitleClickedEvent} from \"./TreeViewNodeTitleClickedEvent\";\n\n\n/**\n * An HTMl tree view that navigates the {@link @xeokit/data!DataObject | DataObjects} in the given\n * {@link @xeokit/data!Data | Data}, while controlling the visibility of their corresponding\n * {@link @xeokit/viewer!ViewObject | ViewObjects} in the given {@link @xeokit/viewer!View | View}.\n *\n * See {@link \"@xeokit/treeview\" | @xeokit/treeview} for usage.\n */\nexport class TreeView extends Component {\n\n /**\n * Hierarchy mode that arranges the {@link TreeViewNode | TreeViewNodes} as an aggregation hierarchy.\n *\n * The mode creates a TreeViewNode hierarchy that mirrors that of the\n * {@link @xeokit/data!DataObject | DataObjects} and\n * aggregation {@link @xeokit/data!Relationship | Relationships} in the {@link @xeokit/data!Data | Data}.\n *\n * In this hierarchy, each TreeViewNode corresponds to a DataObject in the Data. The TreeViewNodes are connected\n * into a hierarchy that reflects a depth-first traversal from the root DataObjects that follows each DataObject's\n * outgoing Relationships of the type given in {@link TreeView.linkType | TreeView.linkType}.\n */\n static AggregationHierarchy = 0;\n\n /**\n * Hierarchy mode that groups the {@link TreeViewNode | TreeViewNodes} by type.\n *\n * This mode creates a two-level hierarchy. At the root level, we get TreeViewNodes that represent each of the\n * distinct types in our {@link @xeokit/data!Data | Data}. Each of those gets one or more child TreeViewNodes\n * that represent {@link @xeokit/data!DataObject | DataObjects} of that type. When those DataObjects have\n * {@link @xeokit/viewer!ViewObject | ViewObjects} of the same ID, then the TreeViewNodes will have checkboxes\n * that we can use to show, hide, and X-ray their ViewObjects.\n */\n static TypesHierarchy = 1;\n\n /**\n * Hierarchy mode that arranges the {@link TreeViewNode | TreeViewNodes} into an n-level grouped hierarchy.\n *\n * This mode creates a multi-level grouped hierarchy, following the order given\n * in {@link TreeViewParams.groupTypes | TreeViewParams.groupTypes}. The TreeViewNodes at level 0 are all the same\n * type as ````TreeViewParams.groupTypes[0]````, TreeViewNodes at level 1 are all the same type\n * as ````TreeViewParams.groupTypes[2]````, and so on. Once descended beyond the length of ````TreeViewParams.groupTypes````,\n * the TreeViewNodes are just grouped by type.\n */\n static GroupsHierarchy = 2;\n\n /**\n * The semantic {@link @xeokit/data!Data | Data} model that determines the structure of this TreeView.\n */\n data: Data;\n\n /**\n * The {@link @xeokit/viewer!View | View} that contains the {@link @xeokit/viewer!ViewObject | ViewObjects}\n * navigated by this TreeView.\n */\n view: View;\n\n /**\n * Emits an event each time the title of a node is clicked in the tree view.\n *\n * @event\n */\n readonly onNodeTitleClicked: EventEmitter;\n\n /**\n * Emits an event each time we right-click on a tree node.\n *\n * @event\n */\n readonly onContextMenu: EventEmitter;\n\n /**\n * Emits an event when this TreeView has been destroyed.\n *\n * Triggered by {@link TreeView.destroy}.\n *\n * @event\n */\n declare readonly onDestroyed: EventEmitter;\n\n #linkType: number;\n #groupTypes: number[];\n #containerElement: HTMLElement;\n #hierarchy: number;\n #dataModels: {\n [key: string]: DataModel\n };\n #autoAddModels: boolean;\n #autoExpandDepth: any;\n #sortNodes: boolean | undefined;\n #pruneEmptyNodes: boolean;\n #viewer: Viewer;\n #rootElement: HTMLUListElement | null;\n #muteSceneEvents: boolean;\n #muteTreeEvents: boolean;\n #rootNodes: any[];\n #objectNodes: {\n [key: string]: TreeViewNode\n };\n #rootName: any;\n #showListItemElementId: string | null;\n #spatialSortFunc: (node1: TreeViewNode, node2: TreeViewNode) => (number);\n #switchExpandHandler: (event: MouseEvent) => void;\n #switchCollapseHandler: (event: MouseEvent) => void;\n #checkboxChangeHandler: (event: MouseEvent) => void;\n #destroyed: boolean;\n #onViewObjectVisibility: () => void;\n #onViewObjectXRayed: () => void;\n\n #dataObjectSceneObjectCounts: { [key: string]: number };\n\n /**\n *\n * TODO\n *\n * @param params\n */\n constructor(params: TreeViewParams) {\n\n super(null);\n\n if (!params.containerElement) {\n throw new Error(\"Config expected: containerElement\");\n }\n\n if (!params.data) {\n throw new Error(\"Config expected: data\");\n }\n\n if (!params.view) {\n throw new Error(\"Config expected: view\");\n }\n\n this.data = params.data;\n this.view = params.view;\n\n this.#viewer = params.view.viewer;\n this.#linkType = params.linkType;\n this.#groupTypes = params.groupTypes;\n this.#hierarchy = TreeView.AggregationHierarchy;\n this.#containerElement = params.containerElement;\n this.#dataModels = {};\n this.#autoExpandDepth = (params.autoExpandDepth || 0);\n this.#sortNodes = (params.sortNodes !== false);\n this.#pruneEmptyNodes = (params.pruneEmptyNodes !== false);\n this.#rootElement = null;\n this.#muteSceneEvents = false;\n this.#muteTreeEvents = false;\n this.#rootNodes = [];\n this.#objectNodes = {}; // Object ID -> TreeViewNode\n this.#rootName = params.rootName;\n this.#sortNodes = params.sortNodes;\n // @ts-ignore\n this.#pruneEmptyNodes = params.pruneEmptyNodes;\n // @ts-ignore\n this.#showListItemElementId = null;\n this.#destroyed = false;\n\n this.onNodeTitleClicked = new EventEmitter(new EventDispatcher());\n this.onContextMenu = new EventEmitter(new EventDispatcher());\n this.onDestroyed = new EventEmitter(new EventDispatcher());\n\n this.#containerElement.oncontextmenu = (e) => {\n e.preventDefault();\n };\n\n this.#onViewObjectVisibility = this.view.onObjectVisibility.subscribe((view: View, viewObject: ViewObject) => {\n if (this.#muteSceneEvents) {\n return;\n }\n const objectId = viewObject.id;\n // @ts-ignore\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // Not in this tree\n }\n const visible = viewObject.visible;\n const updated = (visible !== node.checked);\n if (!updated) {\n return;\n }\n this.#muteTreeEvents = true;\n node.checked = visible;\n if (visible) {\n node.numVisibleViewObjects++;\n } else {\n node.numVisibleViewObjects--;\n }\n const checkbox = document.getElementById(node.nodeId);\n if (checkbox) {\n checkbox.checked = visible;\n }\n let parentNode = node.parentNode;\n while (parentNode) {\n parentNode.checked = visible;\n if (visible) {\n parentNode.numVisibleViewObjects++;\n } else {\n parentNode.numVisibleViewObjects--;\n }\n const parentCheckbox = document.getElementById(parentNode.nodeId);\n if (parentCheckbox) {\n const newChecked = (parentNode.numVisibleViewObjects > 0);\n if (newChecked !== parentCheckbox.checked) {\n parentCheckbox.checked = newChecked;\n }\n }\n parentNode = parentNode.parentNode;\n }\n this.#muteTreeEvents = false;\n });\n\n this.#onViewObjectXRayed = this.view.onObjectXRayed.subscribe((view: View, viewObject: ViewObject) => {\n if (this.#muteSceneEvents) {\n return;\n }\n const objectId = viewObject.id;\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // Not in this tree\n }\n this.#muteTreeEvents = true;\n const xrayed = viewObject.xrayed;\n const updated = (xrayed !== node.xrayed);\n if (!updated) {\n return;\n }\n node.xrayed = xrayed;\n const listItemElementId = 'node-' + node.nodeId;\n const listItemElement = document.getElementById(listItemElementId);\n if (listItemElement !== null) {\n if (xrayed) {\n listItemElement.classList.add('xrayed-node');\n } else {\n listItemElement.classList.remove('xrayed-node');\n }\n }\n this.#muteTreeEvents = false;\n });\n\n this.#switchExpandHandler = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n const switchElement = (event.target);\n this.#expandSwitchElement(switchElement);\n };\n\n this.#switchCollapseHandler = (event) => {\n event.preventDefault();\n event.stopPropagation();\n const switchElement = (event.target);\n this.#collapseSwitchElement(switchElement);\n };\n\n this.#checkboxChangeHandler = (event: any) => {\n if (this.#muteTreeEvents) {\n return;\n }\n this.#muteSceneEvents = true;\n const checkbox = event.target;\n const visible = checkbox.checked;\n const nodeId = checkbox.id;\n const checkedObjectId = nodeId;\n const checkedNode = this.#objectNodes[checkedObjectId];\n const objects = this.view.objects;\n let numUpdated = 0;\n this.#withNodeTree(checkedNode, (node: TreeViewNode) => {\n const objectId = node.objectId;\n const checkBoxId = node.nodeId;\n const viewObject = objects[objectId];\n const isLeaf = (node.childNodes.length === 0);\n node.numVisibleViewObjects = visible ? node.numViewObjects : 0;\n if (isLeaf && (visible !== node.checked)) {\n numUpdated++;\n }\n node.checked = visible;\n const checkbox2 = document.getElementById(checkBoxId);\n if (checkbox2) {\n checkbox2.checked = visible;\n }\n if (viewObject) {\n viewObject.visible = visible;\n }\n });\n let parentNode = checkedNode.parentNode;\n while (parentNode) {\n parentNode.checked = visible;\n const checkbox2 = document.getElementById(parentNode.nodeId); // Parent checkboxes are always in DOM\n if (visible) {\n parentNode.numVisibleViewObjects += numUpdated;\n } else {\n parentNode.numVisibleViewObjects -= numUpdated;\n }\n const newChecked = (parentNode.numVisibleViewObjects > 0);\n if (newChecked !== checkbox2.checked) {\n checkbox2.checked = newChecked;\n }\n parentNode = parentNode.parentNode;\n }\n this.#muteSceneEvents = false;\n };\n\n this.hierarchy = params.hierarchy;\n\n const modelIds = Object.keys(this.data.models);\n for (let i = 0, len = modelIds.length; i < len; i++) {\n const modelId = modelIds[i];\n this.#addModel(modelId);\n }\n\n this.#viewer.scene.onModelCreated.subscribe((scene, sceneModel) => {\n if (this.data.models[sceneModel.id]) {\n this.#addModel(sceneModel.id);\n }\n });\n }\n\n /**\n * Gets how the nodes are organized within this tree view.\n *\n * Accepted values are:\n *\n * * {@link TreeView.AggregationHierarchy} (default)\n * * {@link TreeView.TypesHierarchy}\n * * {@link TreeView.GroupsHierarchy}\n */\n get hierarchy(): number {\n return this.#hierarchy;\n }\n\n /**\n * Sets how the nodes are organized within this tree view.\n *\n * Accepted values are:\n *\n * * {@link TreeView.AggregationHierarchy} (default)\n * * {@link TreeView.TypesHierarchy}\n * * {@link TreeView.GroupsHierarchy}\n */\n set hierarchy(hierarchy: number) {\n hierarchy = (hierarchy !== null && hierarchy !== undefined) ? hierarchy : TreeView.AggregationHierarchy;\n if (hierarchy !== TreeView.AggregationHierarchy && hierarchy !== TreeView.GroupsHierarchy && hierarchy !== TreeView.TypesHierarchy) {\n this.error(\"Unsupported value for `hierarchy' - defaulting to TreeView.AggregationHierarchy \");\n hierarchy = TreeView.AggregationHierarchy;\n }\n if (this.#hierarchy === hierarchy) {\n return;\n }\n this.#hierarchy = hierarchy;\n this.#rebuildNodes();\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes, at each\n * {@link @xeokit/data!DataObject | DataObjects}, the TreeView will traverse only the outgoing\n * {@link @xeokit/data!Relationship | Relationships} of this type in\n * {@link @xeokit/data!DataObject.relating | DataObject.relating}.\n */\n get linkType(): number {\n return this.#linkType;\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes, at each\n * {@link @xeokit/data!DataObject | DataObjects}, the TreeView will traverse only the outgoing\n * {@link @xeokit/data!Relationship | Relationships} of this type in\n * {@link @xeokit/data!DataObject.relating | DataObject.relating}.\n */\n set linkType(linkType: number) {\n if (this.#linkType === linkType) {\n return;\n }\n this.#linkType = linkType;\n this.#rebuildNodes();\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes for\n * a {@link TreeView.GroupsHierarchy}, these are the values\n * of {@link @xeokit/data!DataObject.type | DataObject.type} that the\n * TreeView groups and subgroups the {@link @xeokit/data!DataObject | DataObjects} on.\n *\n * The grouping for {@link TreeView.GroupsHierarchy} has two levels. The major grouping type is given\n * in ````groupTypes[0]```` and the minor grouping type is given in ````storeyGroups[1]````.\n *\n * Example: ````[IfcBuilding, IfcBuildingStorey]````.\n */\n get groupTypes(): number [] {\n return this.#groupTypes;\n }\n\n /**\n * When traversing the {@link @xeokit/data!Data | Data} to build the tree UI nodes for\n * a {@link TreeView.GroupsHierarchy}, these are the values\n * of {@link @xeokit/data!DataObject.type | DataObject.type} that the\n * TreeView groups and subgroups the {@link @xeokit/data!DataObject | DataObjects} on.\n *\n * The grouping for the {@link @xeokit/treeview!TreeView.GroupsHierarchy | GroupsHierarchy} hierarchy has two levels. The major grouping type is given\n * in ````groupTypes[0]```` and the minor grouping type is given in ````storeyGroups[1]````.\n *\n * Example: ````[IfcBuilding, IfcBuildingStorey]````.\n */\n set groupTypes(groupTypes: number[]) {\n if (this.#groupTypes === groupTypes) {\n return;\n }\n this.#groupTypes = groupTypes;\n if (this.#hierarchy === TreeView.GroupsHierarchy) {\n this.#rebuildNodes();\n }\n }\n\n /**\n * Highlights the tree view node that represents the given object {@link viewObject}.\n *\n * This causes the tree view to collapse, then expand to reveal the node, then highlight the node.\n *\n * If a node is previously highlighted, de-highlights that node and collapses the tree first.\n *\n * Note that if the TreeView was configured with ````pruneEmptyNodes: true```` (default configuration), then the\n * node won't exist in the tree if it has no viewObjects in the {@link @xeokit/scene!Scene | Scene}. in that case, nothing will happen.\n *\n * Within the DOM, the node is represented by an ````
  • ```` element. This method will add a ````.highlighted-node```` class to\n * the element to make it appear highlighted, removing that class when de-highlighting it again. See the CSS rules\n * in the TreeView ifcviewer for an example of that class.\n *\n * @param {String} objectId ID of the {@link viewObject}.\n */\n showNode(objectId: string): void {\n if (this.#showListItemElementId) {\n this.unShowNode();\n }\n const node = this.#objectNodes[objectId];\n if (!node) {\n return; // TreeViewNode may not exist for the given object if (this.#pruneEmptyNodes == true)\n }\n const nodeId = node.nodeId;\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n switchElement.scrollIntoView();\n return;\n }\n const path = [];\n path.unshift(node);\n let parentNode = node.parentNode;\n while (parentNode) {\n path.unshift(parentNode);\n parentNode = parentNode.parentNode;\n }\n for (let i = 0, len = path.length; i < len; i++) {\n const node = path[i];\n const nodeId = node.nodeId;\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n }\n }\n const listItemElementId = 'node-' + nodeId;\n const listItemElement = document.getElementById(listItemElementId);\n // @ts-ignore\n listItemElement.scrollIntoView({block: \"center\"});\n // @ts-ignore\n listItemElement.classList.add(\"highlighted-node\");\n this.#showListItemElementId = listItemElementId;\n }\n\n /**\n * De-highlights the node previously shown with {@link TreeView#showNode}.\n *\n * Does nothing if no node is currently shown.\n *\n * If the node is currently scrolled into view, keeps the node in view.\n */\n unShowNode(): void {\n if (!this.#showListItemElementId) {\n return;\n }\n const listItemElement = document.getElementById(this.#showListItemElementId);\n if (!listItemElement) {\n this.#showListItemElementId = null;\n return;\n }\n listItemElement.classList.remove(\"highlighted-node\");\n this.#showListItemElementId = null;\n }\n\n /**\n * Expands the tree to the given depth.\n *\n * Collapses the tree first.\n *\n * @param depth Depth to expand to.\n */\n expandToDepth(depth: number): void {\n this.collapse();\n const expand = (node: TreeViewNode, countDepth: number) => {\n if (countDepth === depth) {\n return;\n }\n const nodeId = node.nodeId;\n const switchElementId = `switch-${nodeId}`;\n const switchElement = document.getElementById(switchElementId);\n if (switchElement) {\n this.#expandSwitchElement(switchElement);\n const childNodes = node.childNodes;\n for (let i = 0, len = childNodes.length; i < len; i++) {\n const childNode = childNodes[i];\n expand(childNode, countDepth + 1);\n }\n }\n };\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n expand(rootNode, 0);\n }\n }\n\n /**\n * Closes all the nodes in the tree.\n */\n collapse(): void {\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n const objectId = rootNode.objectId;\n this.#collapseNode(objectId);\n }\n }\n\n /**\n * Destroys this TreeView.\n */\n destroy(): void {\n if (!this.#containerElement) {\n return;\n }\n this.#dataModels = {};\n if (this.#rootElement && !this.#destroyed) {\n // @ts-ignore\n this.#rootElement.parentNode.removeChild(this.#rootElement);\n this.view.onObjectVisibility.unsubscribe(this.#onViewObjectVisibility);\n this.view.onObjectXRayed.unsubscribe(this.#onViewObjectXRayed);\n this.#destroyed = true;\n }\n super.destroy();\n }\n\n /**\n * Adds a model to this tree view.\n *\n * @private\n * @param {String} modelId ID of a model {@link viewObject} in {@link @xeokit/scene!Scene#models}.\n * @param {Object} [options] Options for model in the tree view.\n * @param {String} [options.rootName] Optional display name for the root node. Ordinary, for \"containment\"\n * and {@link @xeokit/treeview!TreeView.GroupsHierarchy | GroupsHierarchy} hierarchy types, the tree would derive the root node name from the model's \"IfcProject\" element\n * name. This option allows to override that name when it is not suitable as a display name.\n */\n #addModel(modelId: string, options = {}): void {\n if (!this.#containerElement) {\n return;\n }\n const model = this.#viewer.scene.models[modelId];\n if (!model) {\n this.error(`SceneModel not found: ${modelId}`);\n return;\n }\n const dataModel = this.data.models[modelId];\n if (!dataModel) {\n this.error(`DataModel not found: ${modelId}`);\n return;\n }\n if (this.#dataModels[modelId]) {\n this.error(`Model already added: ${modelId}`);\n return;\n }\n this.#dataModels[modelId] = dataModel;\n model.onDestroyed.one(() => {\n this.#removeModel(model.id);\n });\n this.#rebuildNodes();\n }\n\n /**\n * Removes a model from this tree view.\n *\n * @private\n * @param {String} modelId ID of a model {@link viewObject} in {@link @xeokit/scene!Scene#models}.\n */\n #removeModel(modelId: string): void {\n if (!this.#containerElement) {\n return;\n }\n const dataModel = this.#dataModels[modelId];\n if (!dataModel) {\n return;\n }\n delete this.#dataModels[modelId];\n this.#rebuildNodes();\n }\n\n #rebuildNodes(): void {\n if (this.#rootElement) {\n // @ts-ignore\n this.#rootElement.parentNode.removeChild(this.#rootElement);\n this.#rootElement = null;\n }\n\n this.#rootNodes = [];\n this.#objectNodes = {};\n // if (this.#validate()) {\n this.#createEnabledNodes();\n // } else {\n // this.#createDisabledNodes();\n // }\n }\n\n #validate(): boolean {\n let valid = true;\n switch (this.#hierarchy) {\n case TreeView.GroupsHierarchy:\n valid = (this.#rootNodes.length > 0);\n // valid = this.#validateMetaModelForStoreysHierarchy();\n break;\n case TreeView.TypesHierarchy:\n valid = (this.#rootNodes.length > 0);\n break;\n case TreeView.AggregationHierarchy:\n default:\n valid = (this.#rootNodes.length > 0);\n break;\n }\n return valid;\n }\n\n #validateMetaModelForStoreysHierarchy(level = 0, ctx: any, buildingNode: any) {\n // ctx = ctx || {\n // foundIFCBuildingStoreys: false\n // };\n // const dataObjectType = dataObject.type;\n // const children = dataObject.children;\n // if (dataObjectType === \"IfcBuilding\") {\n // buildingNode = true;\n // } else if (dataObjectType === \"IfcBuildingStorey\") {\n // if (!buildingNode) {\n // errors.push(\"Can't build storeys hierarchy: IfcBuildingStorey found without parent IfcBuilding\");\n // return false;\n // }\n // ctx.foundIFCBuildingStoreys = true;\n // }\n // if (children) {\n // for (let i = 0, len = children.length; i < len; i++) {\n // const aggregatedDataObject = children[i];\n // if (!this.#validateMetaModelForStoreysHierarchy(aggregatedDataObject, errors, level + 1, ctx, buildingNode)) {\n // return false;\n // }\n // }\n // }\n // if (level === 0) {\n // if (!ctx.foundIFCBuildingStoreys) {\n // // errors.push(\"Can't build storeys hierarchy: no IfcBuildingStoreys found\");\n // }\n // }\n return true;\n }\n\n #createEnabledNodes(): void {\n if (this.#pruneEmptyNodes) {\n this.#findEmptyNodes();\n }\n switch (this.#hierarchy) {\n case TreeView.GroupsHierarchy:\n this.#buildGroupsNodes();\n if (this.#rootNodes.length === 0) {\n this.error(\"Failed to build hierarchy TreeView.GroupsHierarchy\");\n }\n break;\n case TreeView.TypesHierarchy:\n this.#buildTypesNodes();\n break;\n case TreeView.AggregationHierarchy:\n default:\n this.#buildAggregationNodes();\n }\n if (this.#sortNodes) {\n this.#doSortNodes();\n }\n this.#synchNodesToEntities();\n this.#createNodeElements();\n this.expandToDepth(this.#autoExpandDepth);\n }\n\n #createDisabledNodes(): void { // Creates empty HTML nodes for data graph roots\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n const dataObjectType = dataObject.type;\n const name = dataObject.name;\n const rootName = (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : `${dataObjectType}`; // TODO: type is a number - needs to be human-readable\n const ul = document.createElement('ul');\n const li = document.createElement('li');\n ul.appendChild(li);\n this.#containerElement.appendChild(ul);\n this.#rootElement = ul;\n const switchElement = document.createElement('a');\n switchElement.href = '#';\n switchElement.textContent = '!';\n switchElement.classList.add('warn');\n switchElement.classList.add('warning');\n li.appendChild(switchElement);\n const span = document.createElement('span');\n span.textContent = rootName;\n li.appendChild(span);\n }\n }\n }\n\n #findEmptyNodes(): void {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#findEmptyNodes2(dataObject);\n }\n }\n }\n\n #findEmptyNodes2(dataObject: DataObject): number {\n const viewer = this.#viewer;\n const scene = viewer.scene;\n const aggregations = dataObject.related[this.#linkType];\n const objectId = dataObject.id;\n const viewObject = scene.objects[objectId];\n let sceneObjectCounts = 0;\n if (viewObject) {\n sceneObjectCounts++;\n }\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n const aggregatedCount = this.#findEmptyNodes2(aggregatedDataObject);\n this.#dataObjectSceneObjectCounts[aggregatedDataObject.id] = aggregatedCount;\n sceneObjectCounts += aggregatedCount;\n }\n }\n this.#dataObjectSceneObjectCounts[dataObject.id] = sceneObjectCounts;\n return sceneObjectCounts;\n }\n\n #buildGroupsNodes(): void {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildGroupsNodes2(dataObject, [], null, null, null);\n }\n }\n }\n\n #buildGroupsNodes2(\n dataObject: DataObject,\n pathNodes: TreeViewNode[],\n buildingNode: TreeViewNode | null,\n storeyNode: TreeViewNode | null,\n typeNodes: { [key: number]: TreeViewNode } | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name;\n const aggregations = dataObject.related[this.#linkType];\n\n if (pathNodes.length < this.#groupTypes.length) {\n const groupType = this.#groupTypes[pathNodes.length];\n if (pathNodes.length === 0) {\n if (type === groupType) {\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: this.#rootName || ((name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : type),\n type,\n parentNode: null,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n pathNodes.push(node);\n this.#rootNodes.push(node);\n this.#objectNodes[node.objectId] = node;\n }\n } else {\n if (type === groupType) {\n const parentNode = pathNodes[pathNodes.length - 1];\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : `${type}`,\n type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n parentNode.childNodes.push(node);\n pathNodes.push(node);\n this.#objectNodes[node.objectId] = node;\n }\n }\n } else {\n\n const parentNode = pathNodes[pathNodes.length - 1];\n const viewObjects = this.view.objects;\n const viewObject = viewObjects[objectId];\n\n // TODO: makes assumptions about leaves having ViewObjects; can be more flexible\n // TODO: Only makes nodes for objects that have geometric representations, ie. ViewObjects\n\n if (viewObject) { // Grouped leaf nodes, only for nodes that have ViewObjects\n typeNodes = typeNodes || {};\n let typeNode: TreeViewNode = typeNodes[type];\n if (!typeNode) {\n const typeNodeObjectId = parentNode.objectId + \".\" + type;\n const typeNodeNodeId = typeNodeObjectId;\n typeNode = {\n nodeId: typeNodeNodeId,\n objectId: typeNodeObjectId,\n title: `${type}`,\n type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n parentNode.childNodes.push(typeNode);\n this.#objectNodes[typeNodeObjectId] = typeNode;\n typeNodes[type] = typeNode;\n }\n const leafNode: TreeViewNode = {\n nodeId: objectId,\n objectId,\n title: (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\") ? name : \"\" + type,\n type,\n parentNode: typeNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n typeNode.childNodes.push(leafNode);\n this.#objectNodes[leafNode.objectId] = leafNode;\n }\n }\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildGroupsNodes2(aggregatedDataObject, pathNodes, buildingNode, storeyNode, typeNodes);\n }\n }\n }\n\n #buildTypesNodes() {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildTypesNodes2(dataObject, null, null);\n }\n }\n }\n\n #buildTypesNodes2(dataObject: DataObject, rootNode: TreeViewNode | null, typeNodes: { [key: string | number]: TreeViewNode } | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name;\n const aggregations = dataObject.related[this.#linkType];\n\n // if (dataObject.id === this.#rootdataObject.id) {\n // rootNode = {\n // nodeId: objectId,\n // objectId: objectId,\n // title: this.#rootName || ((name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\")\n // ? name\n // : type),\n // type: type,\n // parentNode: null,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // this.#rootNodes.push(rootNode);\n // this.#objectNodes[rootNode.objectId] = rootNode;\n // typeNodes = {};\n // } else {\n // if (rootNode) {\n // const objects = this.#viewer.scene.objects;\n // const object = objects[objectId];\n // if (object) {\n // let typeNode = typeNodes[type];\n // if (!typeNode) {\n // typeNode = {\n // nodeId: rootNode.objectId + \".\" + type,\n // objectId: rootNode.objectId + \".\" + type,\n // title: `${type}`,\n // type: type,\n // parentNode: rootNode,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // rootNode.childNodes.push(typeNode);\n // this.#objectNodes[typeNode.objectId] = typeNode;\n // typeNodes[type] = typeNode;\n // }\n // const node: TreeViewNode = {\n // nodeId: objectId,\n // objectId: objectId,\n // title: (name && name !== \"\" && name !== \"Default\")\n // ? name\n // : `${type}`,\n // type: type,\n // parentNode: typeNode,\n // numViewObjects: 0,\n // numVisibleViewObjects: 0,\n // checked: false,\n // xrayed: false,\n // childNodes: []\n // };\n // typeNode.childNodes.push(node);\n // this.#objectNodes[node.objectId] = node;\n // }\n // }\n // }\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildTypesNodes2(aggregatedDataObject, rootNode, typeNodes);\n }\n }\n }\n\n #buildAggregationNodes() {\n const objects = this.data.objects;\n for (let objectId in objects) {\n const dataObject = objects[objectId];\n if (Object.keys(dataObject.relating).length === 0) {\n this.#buildAggregationNodes2(dataObject, null);\n }\n }\n }\n\n #buildAggregationNodes2(dataObject: DataObject, parentNode: TreeViewNode | null) {\n\n if (this.#pruneEmptyNodes && (!this.#dataObjectSceneObjectCounts[dataObject.id])) {\n return;\n }\n\n const objectId = dataObject.id;\n const type = dataObject.type;\n const name = dataObject.name || type;\n const aggregations = dataObject.related[this.#linkType];\n\n const node: TreeViewNode = {\n nodeId: objectId,\n objectId: objectId,\n title: (!parentNode)\n ? (this.#rootName || name)\n : (name && name !== \"\" && name !== \"Undefined\" && name !== \"Default\")\n ? name\n : type,\n type: type,\n parentNode,\n numViewObjects: 0,\n numVisibleViewObjects: 0,\n checked: false,\n xrayed: false,\n childNodes: []\n };\n if (parentNode) {\n parentNode.childNodes.push(node);\n } else {\n this.#rootNodes.push(node);\n }\n this.#objectNodes[node.objectId] = node;\n\n if (aggregations) {\n for (let i = 0, len = aggregations.length; i < len; i++) {\n const aggregation = aggregations[i];\n const aggregatedDataObject = aggregation.relatedObject;\n this.#buildAggregationNodes2(aggregatedDataObject, node);\n }\n }\n }\n\n #doSortNodes() {\n for (let i = 0, len = this.#rootNodes.length; i < len; i++) {\n const rootNode = this.#rootNodes[i];\n this.#sortChildNodes(rootNode);\n }\n }\n\n #sortChildNodes(node: TreeViewNode) {\n // const childNodes = node.childNodes;\n // if (!childNodes || childNodes.length === 0) {\n // return;\n // }\n // if (this.#hierarchy === \"storeys\" && node.type === \"IfcBuilding\") {\n // // Assumes that childNodes of an IfcBuilding will always be IfcBuildingStoreys\n // childNodes.sort(this.#getSpatialSortFunc());\n // } else {\n // childNodes.sort(this.#alphaSortFunc);\n // }\n // for (let i = 0, len = childNodes.length; i < len; i++) {\n // const node = childNodes[i];\n // this.#sortChildNodes(node);\n // }\n }\n\n #getSpatialSortFunc() { // Creates cached sort func with Viewer in scope\n // const viewer = this.#viewer;\n // const scene = viewer.scene;\n // const camera = scene.camera;\n // const metaScene = viewer.metaScene;\n // return this.#spatialSortFunc || (this.#spatialSortFunc = (node1, node2) => {\n // if (!node1.aabb || !node2.aabb) {\n // // Sorting on lowest point of the AABB is likely more more robust when objects could overlap storeys\n // if (!node1.aabb) {\n // node1.aabb = scene.getAABB(metaScene.getObjectIDsInSubtree(node1.objectId));\n // }\n // if (!node2.aabb) {\n // node2.aabb = scene.getAABB(metaScene.getObjectIDsInSubtree(node2.objectId));\n // }\n // }\n // let idx = 0;\n // if (camera.xUp) {\n // idx = 0;\n // } else if (camera.yUp) {\n // idx = 1;\n // } else {\n // idx = 2;\n // }\n // if (node1.aabb[idx] > node2.aabb[idx]) {\n // return -1;\n // }\n // if (node1.aabb[idx] < node2.aabb[idx]) {\n // return 1;\n // }\n // return 0;\n // });\n }\n\n #alphaSortFunc(node1: TreeViewNode, node2: TreeViewNode): number {\n const title1 = node1.title.toUpperCase(); // FIXME: Should be case sensitive?\n const title2 = node2.title.toUpperCase();\n if (title1 < title2) {\n return -1;\n }\n if (title1 > title2) {\n return 1;\n }\n return 0;\n }\n\n #synchNodesToEntities(): void {\n const objectIds = Object.keys(this.data.objects);\n const dataObjects = this.data.objects;\n const viewObjects = this.view.objects;\n for (let i = 0, len = objectIds.length; i < len; i++) {\n const objectId = objectIds[i];\n const dataObject = dataObjects[objectId];\n if (dataObject) {\n const node = this.#objectNodes[objectId];\n if (node) {\n const viewObject = viewObjects[objectId];\n if (viewObject) {\n const visible = viewObject.visible;\n node.numViewObjects = 1;\n node.xrayed = viewObject.xrayed;\n if (visible) {\n node.numVisibleViewObjects = 1;\n node.checked = true;\n } else {\n node.numVisibleViewObjects = 0;\n node.checked = false;\n }\n let parentNode = node.parentNode; // Synch parents\n while (parentNode) {\n parentNode.numViewObjects++;\n if (visible) {\n parentNode.numVisibleViewObjects++;\n parentNode.checked = true;\n }\n parentNode = parentNode.parentNode;\n }\n }\n }\n }\n }\n }\n\n #withNodeTree(node: TreeViewNode, callback: (arg0: TreeViewNode) => void) {\n callback(node);\n const childNodes = node.childNodes;\n if (!childNodes) {\n return;\n }\n for (let i = 0, len = childNodes.length; i < len; i++) {\n this.#withNodeTree(childNodes[i], callback);\n }\n }\n\n #createNodeElements(): void {\n if (this.#rootNodes.length === 0) {\n return;\n }\n const rootNodeElements = this.#rootNodes.map((rootNode) => {\n return this.#createNodeElement(rootNode);\n });\n const ul = document.createElement('ul');\n rootNodeElements.forEach((nodeElement) => {\n ul.appendChild(nodeElement);\n });\n this.#containerElement.appendChild(ul);\n this.#rootElement = ul;\n }\n\n #createNodeElement(node: TreeViewNode): HTMLElement {\n const nodeElement = document.createElement('li');\n //const nodeId = this.#objectToNodeID(node.objectId);\n const nodeId = node.nodeId;\n if (node.xrayed) {\n nodeElement.classList.add('xrayed-node');\n }\n nodeElement.id = 'node-' + nodeId;\n if (node.childNodes.length > 0) {\n const switchElementId = \"switch-\" + nodeId;\n const switchElement = document.createElement('a');\n switchElement.href = '#';\n switchElement.id = switchElementId;\n switchElement.textContent = '+';\n switchElement.classList.add('plus');\n switchElement.addEventListener('click', this.#switchExpandHandler);\n nodeElement.appendChild(switchElement);\n }\n const checkbox = document.createElement('input');\n checkbox.id = nodeId;\n checkbox.type = \"checkbox\";\n checkbox.checked = node.checked;\n // @ts-ignore\n checkbox.style[\"pointer-events\"] = \"all\";\n // @ts-ignore\n checkbox.addEventListener(\"change\", this.#checkboxChangeHandler);\n nodeElement.appendChild(checkbox);\n const span = document.createElement('span');\n span.textContent = node.title;\n nodeElement.appendChild(span);\n span.oncontextmenu = (e: MouseEvent) => {\n this.onContextMenu.dispatch(this, {\n event: e,\n treeView: this,\n treeViewNode: node\n });\n e.preventDefault();\n };\n span.onclick = (e: MouseEvent) => {\n this.onNodeTitleClicked.dispatch(this, {\n event: e,\n treeView: this,\n treeViewNode: node\n });\n e.preventDefault();\n };\n return nodeElement;\n }\n\n #expandSwitchElement(switchElement: HTMLElement): void {\n const parentElement = switchElement.parentElement;\n if (!parentElement) {\n return;\n }\n const expanded = parentElement.getElementsByTagName('li')[0];\n if (expanded) {\n return;\n }\n const nodeId = parentElement.id.replace('node-', '');\n const objectId = nodeId;\n const switchNode = this.#objectNodes[objectId];\n const childNodes = switchNode.childNodes;\n const nodeElements = childNodes.map((node) => {\n return this.#createNodeElement(node);\n });\n const ul = document.createElement('ul');\n nodeElements.forEach((nodeElement) => {\n ul.appendChild(nodeElement);\n });\n parentElement.appendChild(ul);\n switchElement.classList.remove('plus');\n switchElement.classList.add('minus');\n switchElement.textContent = '-';\n switchElement.removeEventListener('click', this.#switchExpandHandler);\n switchElement.addEventListener('click', this.#switchCollapseHandler);\n }\n\n #collapseNode(objectId: string): void {\n const nodeId = objectId;\n const switchElementId = `switch-${nodeId}`;\n const switchElement = document.getElementById(switchElementId);\n if (!switchElement) {\n return;\n }\n this.#collapseSwitchElement(switchElement);\n }\n\n #collapseSwitchElement(switchElement: HTMLElement): void {\n if (!switchElement) {\n return;\n }\n const parent = switchElement.parentElement;\n if (!parent) {\n return;\n }\n const ul = parent.querySelector('ul');\n if (!ul) {\n return;\n }\n parent.removeChild(ul);\n switchElement.classList.remove('minus');\n switchElement.classList.add('plus');\n switchElement.textContent = '+';\n switchElement.removeEventListener('click', this.#switchCollapseHandler);\n switchElement.addEventListener('click', this.#switchExpandHandler);\n }\n}\n\n"], + "mappings": "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N,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM;;;;AC30KV,IAAAC,iBAAA;SAAAA,gBAAA;;;;;ACWO,IAAM,SAAU,uBAAK;EAKxB,MAAM,KAAI;IACN;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA,YAAaC,IAAU,GAAU,GAAQ;AAErC,WAAK,IAAIA;AAGT,WAAK,IAAI;AACT,WAAK,IAAI;AAGT,WAAK,OAAO;AACZ,WAAK,OAAO;AAGZ,WAAK,IAAI;AAGT,WAAK,QAAQ;AACb,WAAK,QAAQ;AAGb,WAAK,UAAU;IACnB;;AACH;AAED,QAAMC,UAAS,CAAC,MAAoB,aAA4B,MAAW,MAAqB;AAE5F,UAAM,OAAO;AAEb,UAAM,WAAqB,eAAe,YAAY,SAAS;AAC/D,UAAM,WAAoB,WAAW,YAAY,CAAC,IAAI,MAAM,KAAK;AACjE,QAAI,YAAmB,WAAW,MAAM,GAAG,UAAU,KAAK,IAAI;AAC9D,UAAM,YAA4B,CAAA;AAElC,QAAI,CAAC,aAAa,UAAU,SAAS,UAAU;AAAM,aAAO;AAE5D,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,QAAI,UAAU;AACV,kBAAY,eAAe,MAAM,aAAa,WAAW,GAAG;;AAKhE,QAAI,KAAK,SAAS,KAAK,KAAK;AACxB,aAAO,OAAO,KAAK,CAAC;AACpB,aAAO,OAAO,KAAK,CAAC;AAEpB,eAASD,KAAI,KAAKA,KAAI,UAAUA,MAAK,KAAK;AACtC,YAAI,KAAKA,EAAC;AACV,YAAI,KAAKA,KAAI,CAAC;AACd,YAAI,IAAI;AAAM,iBAAO;AACrB,YAAI,IAAI;AAAM,iBAAO;AACrB,YAAI,IAAI;AAAM,iBAAO;AACrB,YAAI,IAAI;AAAM,iBAAO;;AAIzB,gBAAU,KAAK,IAAI,OAAO,MAAM,OAAO,IAAI;AAC3C,gBAAU,YAAY,IAAI,IAAI,UAAU;;AAG5C,iBAAa,WAAW,WAAW,KAAK,MAAM,MAAM,OAAO;AAE3D,WAAO;EACX;AAGA,QAAM,aAAa,CACf,MACA,OACA,KACA,KACA,cACiB;AACjB,QAAIA;AACJ,QAAI;AAEJ,QAAI,cAAe,WAAW,MAAM,OAAO,KAAK,GAAG,IAAI,GAAI;AACvD,WAAKA,KAAI,OAAOA,KAAI,KAAKA,MAAK,KAAK;AAC/B,eAAO,WAAWA,IAAG,KAAKA,EAAC,GAAG,KAAKA,KAAI,CAAC,GAAG,IAAI;;WAEhD;AACH,WAAKA,KAAI,MAAM,KAAKA,MAAK,OAAOA,MAAK,KAAK;AACtC,eAAO,WAAWA,IAAG,KAAKA,EAAC,GAAG,KAAKA,KAAI,CAAC,GAAG,IAAI;;;AAIvD,QAAI,QAAQE,QAAO,MAAM,KAAK,IAAI,GAAG;AACjC,iBAAW,IAAI;AACf,aAAO,KAAK;;AAGhB,WAAO;EACX;AAGA,QAAM,eAAe,CAAC,OAAwB,QAAsB;AAChE,QAAI,CAAC;AAAO,aAAO;AACnB,QAAI,CAAC;AAAK,YAAM;AAGhB,QAAIC,KAAW;AACf,QAAI,QAAkB;AACtB,OAAG;AAEC,cAAQ;AAER,UAAI,CAACA,GAAE,YAAYD,QAAOC,IAAGA,GAAE,IAAI,KAAK,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,MAAM,IAAI;AACpE,mBAAWA,EAAC;AACZ,QAAAA,KAAI,MAAMA,GAAE;AACZ,YAAIA,OAAMA,GAAE;AAAM;AAClB,gBAAQ;aAEL;AACH,QAAAA,KAAIA,GAAE;;aAEL,SAASA,OAAM;AAExB,WAAO;EACX;AAGA,QAAM,eAAe,CAAE,KACA,WACA,KACA,MACA,MACA,SACA,SAAwB;AAC3C,QAAI,CAAC;AAAK;AAGV,QAAI,CAAC,QAAQ,SAAS;AAClB,iBAAY,KAAK,MAAM,MAAM,OAAO;;AAGxC,QAAI,OAAc;AAClB,QAAI;AACJ,QAAI;AAGJ,WAAO,IAAI,SAAS,IAAI,MAAM;AAC1B,aAAO,IAAI;AACX,aAAO,IAAI;AAEX,UAAI,UAAU,YAAY,KAAK,MAAM,MAAM,OAAO,IAAI,MAAM,GAAG,GAAG;AAE9D,kBAAU,KAAK,KAAK,IAAI,GAAG;AAC3B,kBAAU,KAAK,IAAI,IAAI,GAAG;AAC1B,kBAAU,KAAK,KAAK,IAAI,GAAG;AAE3B,mBAAW,GAAG;AAGd,cAAM,KAAK;AACX,eAAO,KAAK;AAEZ;;AAGJ,YAAM;AAGN,UAAI,QAAQ,MAAM;AAEd,YAAI,CAAC,MAAM;AACP,uBAAa,aAAa,GAAG,GAAG,WAAW,KAAK,MAAM,MAAM,SAAS,CAAC;mBAG/D,SAAS,GAAG;AACnB,gBAAM,uBAAuB,aAAa,GAAG,GAAG,WAAW,GAAG;AAC9D,uBAAa,KAAK,WAAW,KAAK,MAAM,MAAM,SAAS,CAAC;mBAGjD,SAAS,GAAG;AACnB,sBAAY,KAAK,WAAW,KAAK,MAAM,MAAM,OAAO;;AAGxD;;;EAGZ;AAGA,QAAM,QAAQ,CAAC,QAAwB;AACnC,UAAMC,KAAW,IAAI;AACrB,UAAMC,KAAW;AACjB,UAAMC,KAAW,IAAI;AAErB,QAAI,KAAKF,IAAGC,IAAGC,EAAC,KAAK;AAAG,aAAO;AAG/B,QAAIH,KAAI,IAAI,KAAK;AAEjB,WAAOA,OAAM,IAAI,MAAM;AACnB,UAAI,gBAAgBC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGH,GAAE,GAAGA,GAAE,CAAC,KACtD,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,KAAK;AAAG,eAAO;AACzC,MAAAA,KAAIA,GAAE;;AAGV,WAAO;EACX;AAEA,QAAM,cAAc,CAAC,KAAU,MAAa,MAAa,YAA4B;AACjF,QAAIC,KAAW,IAAI;AACnB,QAAIC,KAAW;AACf,QAAIC,KAAW,IAAI;AAEnB,QAAI,KAAKF,IAAGC,IAAGC,EAAC,KAAK;AAAG,aAAO;AAI/B,QAAI,QAAQF,GAAE,IAAIC,GAAE,IAAKD,GAAE,IAAIE,GAAE,IAAIF,GAAE,IAAIE,GAAE,IAAMD,GAAE,IAAIC,GAAE,IAAID,GAAE,IAAIC,GAAE,GACnE,QAAQF,GAAE,IAAIC,GAAE,IAAKD,GAAE,IAAIE,GAAE,IAAIF,GAAE,IAAIE,GAAE,IAAMD,GAAE,IAAIC,GAAE,IAAID,GAAE,IAAIC,GAAE,GACnE,QAAQF,GAAE,IAAIC,GAAE,IAAKD,GAAE,IAAIE,GAAE,IAAIF,GAAE,IAAIE,GAAE,IAAMD,GAAE,IAAIC,GAAE,IAAID,GAAE,IAAIC,GAAE,GACnE,QAAQF,GAAE,IAAIC,GAAE,IAAKD,GAAE,IAAIE,GAAE,IAAIF,GAAE,IAAIE,GAAE,IAAMD,GAAE,IAAIC,GAAE,IAAID,GAAE,IAAIC,GAAE;AAGvE,QAAI,OAAO,OAAO,OAAO,OAAO,MAAM,MAAM,OAAO,GAC/C,OAAO,OAAO,OAAO,OAAO,MAAM,MAAM,OAAO;AAEnD,QAAIH,KAAI,IAAI,OACRI,KAAI,IAAI;AAGZ,WAAOJ,MAAKA,GAAE,KAAK,QAAQI,MAAKA,GAAE,KAAK,MAAM;AACzC,UAAIJ,OAAM,IAAI,QAAQA,OAAM,IAAI;MAE5B,gBAAgBC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGH,GAAE,GAAGA,GAAE,CAAC,KACtD,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,KAAK;AAAG,eAAO;AACzC,MAAAA,KAAIA,GAAE;AAEN,UAAII,OAAM,IAAI,QAAQA,OAAM,IAAI;MAE5B,gBAAgBH,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,CAAC,KACtD,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,KAAK;AAAG,eAAO;AACzC,MAAAA,KAAIA,GAAE;;AAIV,WAAOJ,MAAKA,GAAE,KAAK,MAAM;AACrB,UAAIA,OAAM,IAAI,QAAQA,OAAM,IAAI;MAE5B,gBAAgBC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGH,GAAE,GAAGA,GAAE,CAAC,KACtD,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,KAAK;AAAG,eAAO;AACzC,MAAAA,KAAIA,GAAE;;AAIV,WAAOI,MAAKA,GAAE,KAAK,MAAM;AACrB,UAAIA,OAAM,IAAI,QAAQA,OAAM,IAAI;MAE5B,gBAAgBH,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,GAAGC,GAAE,GAAGA,GAAE,CAAC,KACtD,KAAKA,GAAE,MAAMA,IAAGA,GAAE,IAAI,KAAK;AAAG,eAAO;AACzC,MAAAA,KAAIA,GAAE;;AAGV,WAAO;EACX;AAGA,QAAM,yBAAyB,CAAE,OAAc,WAA2B,QAAwB;AAC9F,QAAIJ,KAAW;AACf,OAAG;AACC,UAAIC,KAAWD,GAAE;AACjB,UAAIE,KAAWF,GAAE,KAAK;AAEtB,UAAI,CAACD,QAAOE,IAAGC,EAAC,KAAK,WAAWD,IAAGD,IAAGA,GAAE,MAAME,EAAC,KAAK,cAAcD,IAAGC,EAAC,KAAK,cAAcA,IAAGD,EAAC,GAAG;AAE5F,kBAAU,KAAKA,GAAE,IAAI,GAAG;AACxB,kBAAU,KAAKD,GAAE,IAAI,GAAG;AACxB,kBAAU,KAAKE,GAAE,IAAI,GAAG;AAGxB,mBAAWF,EAAC;AACZ,mBAAWA,GAAE,IAAI;AAEjB,QAAAA,KAAI,QAAQE;;AAEhB,MAAAF,KAAIA,GAAE;aACDA,OAAM;AAEf,WAAO,aAAaA,EAAC;EACzB;AAGA,QAAM,cAAc,CAAE,OAAa,WAAW,KAAK,MAAM,MAAM,YAAkB;AAE7E,QAAIC,KAAW;AACf,OAAG;AACC,UAAIC,KAAWD,GAAE,KAAK;AACtB,aAAOC,OAAMD,GAAE,MAAM;AACjB,YAAIA,GAAE,MAAMC,GAAE,KAAK,gBAAgBD,IAAGC,EAAC,GAAG;AAEtC,cAAIC,KAAI,aAAaF,IAAGC,EAAC;AAGzB,UAAAD,KAAI,aAAaA,IAAGA,GAAE,IAAI;AAC1B,UAAAE,KAAI,aAAaA,IAAGA,GAAE,IAAI;AAG1B,uBAAaF,IAAG,WAAW,KAAK,MAAM,MAAM,OAAO;AACnD,uBAAaE,IAAG,WAAW,KAAK,MAAM,MAAM,OAAO;AACnD;;AAEJ,QAAAD,KAAIA,GAAE;;AAEV,MAAAD,KAAIA,GAAE;aACDA,OAAM;EACnB;AAGA,QAAM,iBAAiB,CAAE,MACA,aACA,WACA,QAAsB;AAC3C,UAAM,QAAsB,CAAA;AAC5B,QAAIJ;AACJ,UAAM,MAAM,YAAY;AACxB,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,SAAKA,KAAI,GAAGA,KAAI,KAAKA,MAAK;AACtB,cAAQ,YAAYA,EAAC,IAAI;AACzB,YAAMA,KAAI,MAAM,IAAI,YAAYA,KAAI,CAAC,IAAI,MAAM,KAAK;AACpD,aAAO,WAAW,MAAM,OAAO,KAAK,KAAK,KAAK;AAC9C,UAAI,SAAS,KAAK;AAAM,aAAK,UAAU;AACvC,YAAM,KAAK,YAAY,IAAI,CAAC;;AAGhC,UAAM,KAAK,QAAQ;AAGnB,SAAKA,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK;AAC/B,oBAAc,MAAMA,EAAC,GAAG,SAAS;AACjC,kBAAY,aAAa,WAAW,UAAU,IAAI;;AAGtD,WAAO;EACX;AAEA,QAAM,WAAW,CAAEI,IAAaC,OAAyB;AACrD,WAAOD,GAAE,IAAIC,GAAE;EACnB;AAGA,QAAM,gBAAgB,CAAE,MAAa,cAA4B;AAC7D,QAAI,SAAS,eAAe,MAAM,SAAS;AAC3C,QAAI,CAAC,QAAQ;AACT,aAAO;;AAGX,QAAI,gBAAgB,aAAa,QAAQ,IAAI;AAG7C,QAAI,iBAAiB,aAAa,QAAQ,OAAO,IAAI;AACrD,iBAAa,eAAe,cAAc,IAAI;AAG9C,WAAO,cAAc,SAAS,iBAAiB;EAGnD;AAGA,QAAM,iBAAiB,CAAE,MAAa,cAA4B;AAC9D,QAAIF,KAAW;AACf,QAAI,KAAc,KAAK;AACvB,QAAI,KAAc,KAAK;AACvB,QAAI,KAAc;AAClB,QAAI;AAIJ,OAAG;AACC,UAAI,MAAMA,GAAE,KAAK,MAAMA,GAAE,KAAK,KAAKA,GAAE,KAAK,MAAMA,GAAE,GAAG;AACjD,YAAI,IAAIA,GAAE,KAAK,KAAKA,GAAE,MAAMA,GAAE,KAAK,IAAIA,GAAE,MAAMA,GAAE,KAAK,IAAIA,GAAE;AAC5D,YAAI,KAAK,MAAM,IAAI,IAAI;AACnB,eAAK;AACL,cAAI,MAAM,IAAI;AACV,gBAAI,OAAOA,GAAE;AAAG,qBAAOA;AACvB,gBAAI,OAAOA,GAAE,KAAK;AAAG,qBAAOA,GAAE;;AAElC,cAAIA,GAAE,IAAIA,GAAE,KAAK,IAAIA,KAAIA,GAAE;;;AAGnC,MAAAA,KAAIA,GAAE;aACDA,OAAM;AAEf,QAAI,CAAC,GAAG;AACJ,aAAO;;AAGX,QAAI,OAAO,IAAI;AACX,aAAO;;AAOX,QAAI,OAAc;AAClB,QAAI,KAAc,EAAE;AACpB,QAAI,KAAc,EAAE;AACpB,QAAI,SAAkB;AACtB,QAAI;AAEJ,IAAAA,KAAI;AAEJ,OAAG;AACC,UAAI,MAAMA,GAAE,KAAKA,GAAE,KAAK,MAAM,OAAOA,GAAE,KACnC,gBAAgB,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,IAAIA,GAAE,GAAGA,GAAE,CAAC,GAAG;AAEjF,cAAM,KAAK,IAAI,KAAKA,GAAE,CAAC,KAAK,KAAKA,GAAE;AAEnC,YAAI,cAAcA,IAAG,IAAI,MACpB,MAAM,UAAW,QAAQ,WAAWA,GAAE,IAAI,EAAE,KAAMA,GAAE,MAAM,EAAE,KAAK,qBAAqB,GAAGA,EAAC,KAAO;AAClG,cAAIA;AACJ,mBAAS;;;AAIjB,MAAAA,KAAIA,GAAE;aACDA,OAAM;AAEf,WAAO;EACX;AAGA,QAAM,uBAAuB,CAAE,GAAUA,OAAsB;AAC3D,WAAO,KAAK,EAAE,MAAM,GAAGA,GAAE,IAAI,IAAI,KAAK,KAAKA,GAAE,MAAM,GAAG,EAAE,IAAI,IAAI;EACpE;AAGA,QAAM,aAAa,CAAE,OAAc,MAAe,MAAe,YAA4B;AACzF,QAAIA,KAAI;AACR,OAAG;AACC,UAAIA,GAAE,MAAM;AAAM,QAAAA,GAAE,IAAI,OAAOA,GAAE,GAAGA,GAAE,GAAG,MAAM,MAAM,OAAO;AAC5D,MAAAA,GAAE,QAAQA,GAAE;AACZ,MAAAA,GAAE,QAAQA,GAAE;AACZ,MAAAA,KAAIA,GAAE;aACDA,OAAM;AAEf,IAAAA,GAAE,MAAM,QAAQ;AAChB,IAAAA,GAAE,QAAQ;AAEV,eAAWA,EAAC;EAChB;AAIA,QAAM,aAAa,CAAE,SAAuB;AACxC,QAAIH;AACJ,QAAIG;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI,SAAkB;AAEtB,OAAG;AACC,MAAAA,KAAI;AACJ,aAAO;AACP,aAAO;AACP,kBAAY;AAEZ,aAAOA,IAAG;AACN;AACA,YAAIA;AACJ,gBAAQ;AACR,aAAKH,KAAI,GAAGA,KAAI,QAAQA,MAAK;AACzB;AACA,cAAI,EAAE;AACN,cAAI,CAAC;AAAG;;AAEZ,gBAAQ;AAER,eAAO,QAAQ,KAAM,QAAQ,KAAK,GAAI;AAClC,cAAI,UAAU,MAAM,UAAU,KAAK,CAAC,KAAKG,GAAE,KAAK,EAAE,IAAI;AAClD,gBAAIA;AACJ,YAAAA,KAAIA,GAAE;AACN;iBACG;AACH,gBAAI;AACJ,gBAAI,EAAE;AACN;;AAGJ,cAAI;AAAM,iBAAK,QAAQ;;AAClB,mBAAO;AAEZ,YAAE,QAAQ;AACV,iBAAO;;AAGX,QAAAA,KAAI;;AAGR,WAAK,QAAQ;AACb,gBAAU;aAEL,YAAY;AAErB,WAAO;EACX;AAGA,QAAM,SAAS,CAAE,GAAU,GAAU,MAAa,MAAa,YAA2B;AAEtF,QAAI,SAAS,IAAI,QAAQ;AACzB,QAAI,SAAS,IAAI,QAAQ;AAEzB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AAErB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AACrB,SAAK,IAAK,KAAK,KAAM;AAErB,WAAO,IAAK,KAAK;EACrB;AAGA,QAAM,cAAc,CAAE,UAAuB;AACzC,QAAIA,KAAW;AACf,QAAI,WAAkB;AACtB,OAAG;AACC,UAAIA,GAAE,IAAI,SAAS,KAAMA,GAAE,MAAM,SAAS,KAAKA,GAAE,IAAI,SAAS,GAAI;AAC9D,mBAAWA;;AAEf,MAAAA,KAAIA,GAAE;aACDA,OAAM;AACf,WAAO;EACX;AAIA,QAAM,kBAAkB,CAAE,IAAa,IACb,IAAa,IACb,IAAa,IACb,IAAa,OAAyB;AAC5D,YAAQ,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,MACnD,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,MAChD,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO;EACzD;AAGA,QAAM,kBAAkB,CAAEC,IAAUC,OAAuB;AACvD,WAAOD,GAAE,KAAK,MAAMC,GAAE,KAAKD,GAAE,KAAK,MAAMC,GAAE,KAAK,CAAC,kBAAkBD,IAAGC,EAAC;KACjE,cAAcD,IAAGC,EAAC,KAAK,cAAcA,IAAGD,EAAC,KAAK,aAAaA,IAAGC,EAAC;KAC3D,KAAKD,GAAE,MAAMA,IAAGC,GAAE,IAAI,KAAK,KAAK,KAAKD,IAAGC,GAAE,MAAMA,EAAC,MAAM;IACxDH,QAAOE,IAAGC,EAAC,KAAK,KAAKD,GAAE,MAAMA,IAAGA,GAAE,IAAI,IAAI,KAAK,KAAKC,GAAE,MAAMA,IAAGA,GAAE,IAAI,IAAI;EACrF;AAGA,QAAM,OAAO,CAACF,IAAW,GAAWK,OAAsB;AACtD,YAAQ,EAAE,IAAIL,GAAE,MAAMK,GAAE,IAAI,EAAE,MAAM,EAAE,IAAIL,GAAE,MAAMK,GAAE,IAAI,EAAE;EAC9D;AAIA,QAAMN,UAAS,CAAC,IAAY,OAAwB;AAChD,WAAO,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG;EACxC;AAIA,QAAM,aAAa,CAAE,IAAY,IAAY,IAAY,OAAyB;AAC9E,QAAI,KAAK,KAAK,KAAK,IAAI,IAAI,EAAE,CAAC;AAC9B,QAAI,KAAK,KAAK,KAAK,IAAI,IAAI,EAAE,CAAC;AAC9B,QAAI,KAAK,KAAK,KAAK,IAAI,IAAI,EAAE,CAAC;AAC9B,QAAI,KAAK,KAAK,KAAK,IAAI,IAAI,EAAE,CAAC;AAE9B,QAAI,OAAO,MAAM,OAAO;AAAI,aAAO;AAEnC,QAAI,OAAO,KAAK,UAAU,IAAI,IAAI,EAAE;AAAG,aAAO;AAC9C,QAAI,OAAO,KAAK,UAAU,IAAI,IAAI,EAAE;AAAG,aAAO;AAC9C,QAAI,OAAO,KAAK,UAAU,IAAI,IAAI,EAAE;AAAG,aAAO;AAC9C,QAAI,OAAO,KAAK,UAAU,IAAI,IAAI,EAAE;AAAG,aAAO;AAE9C,WAAO;EACX;AAGA,QAAM,YAAY,CAAEC,IAAW,GAAWK,OAAwB;AAC9D,WAAO,EAAE,KAAK,KAAK,IAAIL,GAAE,GAAGK,GAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAIL,GAAE,GAAGK,GAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAIL,GAAE,GAAGK,GAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAIL,GAAE,GAAGK,GAAE,CAAC;EAC1H;AAEA,QAAM,OAAO,CAAC,QAAuB;AACjC,WAAO,MAAM,IAAI,IAAI,MAAM,IAAI,KAAK;EACxC;AAGA,QAAM,oBAAoB,CAAEJ,IAAQC,OAAqB;AACrD,QAAIF,KAAWC;AACf,OAAG;AACC,UAAID,GAAE,MAAMC,GAAE,KAAKD,GAAE,KAAK,MAAMC,GAAE,KAAKD,GAAE,MAAME,GAAE,KAAKF,GAAE,KAAK,MAAME,GAAE,KAAK,WAAWF,IAAGA,GAAE,MAAMC,IAAGC,EAAC,GAAG;AACnG,eAAO;;AAEX,MAAAF,KAAIA,GAAE;aACDA,OAAMC;AAEf,WAAO;EACX;AAGA,QAAM,gBAAgB,CAAEA,IAAUC,OAAuB;AACrD,WAAO,KAAKD,GAAE,MAAMA,IAAGA,GAAE,IAAI,IAAI,IAC7B,KAAKA,IAAGC,IAAGD,GAAE,IAAI,KAAK,KAAK,KAAKA,IAAGA,GAAE,MAAMC,EAAC,KAAK,IACjD,KAAKD,IAAGC,IAAGD,GAAE,IAAI,IAAI,KAAK,KAAKA,IAAGA,GAAE,MAAMC,EAAC,IAAI;EACvD;AAGA,QAAM,eAAe,CAAED,IAAUC,OAAuB;AACpD,QAAIF,KAAWC;AACf,QAAI,SAAmB;AACvB,UAAM,MAAeA,GAAE,IAAIC,GAAE,KAAK;AAClC,UAAM,MAAeD,GAAE,IAAIC,GAAE,KAAK;AAElC,OAAG;AACC,UAAMF,GAAE,IAAI,OAASA,GAAE,KAAK,IAAI,MAAQA,GAAE,KAAK,MAAMA,GAAE,KAClD,MAAMA,GAAE,KAAK,IAAIA,GAAE,MAAM,KAAKA,GAAE,MAAMA,GAAE,KAAK,IAAIA,GAAE,KAAKA,GAAE;AAC3D,iBAAS,CAAC;AACd,MAAAA,KAAIA,GAAE;aACDA,OAAMC;AAEf,WAAO;EACX;AAIA,QAAM,eAAe,CAAEA,IAAUC,OAAoB;AACjD,UAAMI,MAAY,IAAI,KAAKL,GAAE,GAAGA,GAAE,GAAGA,GAAE,CAAC;AACxC,UAAMM,MAAY,IAAI,KAAKL,GAAE,GAAGA,GAAE,GAAGA,GAAE,CAAC;AACxC,UAAM,KAAYD,GAAE;AACpB,UAAM,KAAYC,GAAE;AAEpB,IAAAD,GAAE,OAAOC;AACT,IAAAA,GAAE,OAAOD;AAET,IAAAK,IAAG,OAAO;AACV,OAAG,OAAOA;AAEV,IAAAC,IAAG,OAAOD;AACV,IAAAA,IAAG,OAAOC;AAEV,OAAG,OAAOA;AACV,IAAAA,IAAG,OAAO;AAEV,WAAOA;EACX;AAGA,QAAM,aAAa,CAACV,IAAG,GAAG,GAAG,SAAe;AACxC,QAAIG,KAAW,IAAI,KAAKH,IAAG,GAAG,CAAC;AAE/B,QAAI,CAAC,MAAM;AACP,MAAAG,GAAE,OAAOA;AACT,MAAAA,GAAE,OAAOA;WAEN;AACH,MAAAA,GAAE,OAAO,KAAK;AACd,MAAAA,GAAE,OAAO;AACT,WAAK,KAAK,OAAOA;AACjB,WAAK,OAAOA;;AAEhB,WAAOA;EACX;AAEA,QAAM,aAAa,CAAEA,OAAoB;AACrC,IAAAA,GAAE,KAAK,OAAOA,GAAE;AAChB,IAAAA,GAAE,KAAK,OAAOA,GAAE;AAEhB,QAAIA,GAAE;AAAO,MAAAA,GAAE,MAAM,QAAQA,GAAE;AAC/B,QAAIA,GAAE;AAAO,MAAAA,GAAE,MAAM,QAAQA,GAAE;EACnC;AAEA,QAAM,aAAa,CAAE,MAAsB,OAAc,KAAY,QAAuB;AACxF,QAAI,MAAM;AACV,aAASH,KAAI,OAAO,IAAI,MAAM,KAAKA,KAAI,KAAKA,MAAK,KAAK;AAClD,cAAQ,KAAK,CAAC,IAAI,KAAKA,EAAC,MAAM,KAAKA,KAAI,CAAC,IAAI,KAAK,IAAI,CAAC;AACtD,UAAIA;;AAER,WAAO;EACX;AAEA,SAAOC;AACX,GAAE;;;ACnsBF,IAAM,YAAY,WAAU;AAC5B,IAAMU,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAuBtB,SAAU,aAAaC,SAKA,UAEI;EACA,SAAS;GACZ;AAC1B,MAAIA,QAAO,YAAY;AACnB,QAAIA,QAAO,WAAW,WAAW;AAC7B,aAAO,QAAQ,OAAO,IAAI,SAAS,8BAA8B,CAAC;;AAEtE,QAAIA,QAAO,WAAW,OAAO;AACzB,aAAO,QAAQ,OAAO,IAAI,SAAS,0BAA0B,CAAC;;;AAGtE,MAAIA,QAAO,WAAW;AAClB,QAAIA,QAAO,UAAU,WAAW;AAC5B,aAAO,QAAQ,OAAO,IAAI,SAAS,6BAA6B,CAAC;;AAErE,QAAIA,QAAO,UAAU,OAAO;AACxB,aAAO,QAAQ,OAAO,IAAI,SAAS,yBAAyB,CAAC;;;AAGrE,QAAM,WAAWA,QAAO;AACxB,QAAM,MAAM;IACR;IACA,UAAW,SAAS,aAAaA,QAAO,aAClC,kBAAkB,SAAS,UAAU,SAAS,WAAW,QAAQ,OAAO,IACxE,SAAS;IACf,YAAYA,QAAO;IACnB,WAAWA,QAAO;IAClB,QAAQ;;AAEZ,gBAAc,GAAG;AACjB,SAAO,QAAQ,QAAO;AAC1B;AAEA,SAAS,kBAAkB,UAAe,WAAgBC,UAAiB;AACvE,QAAM,sBAAsB,CAAA;AAC5B,QAAMC,SAAQ,UAAU,SAAS,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AACrD,QAAMC,aAAY,UAAU,aAAa,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AAC7D,WAASC,KAAI,GAAG,IAAI,GAAGA,KAAI,SAAS,QAAQA,MAAK,KAAK,GAAG;AACrD,UAAM,IAAK,SAASA,EAAC,EAAE,CAAC,IAAIF,OAAM,CAAC,IAAKC,WAAU,CAAC;AACnD,UAAM,IAAK,SAASC,EAAC,EAAE,CAAC,IAAIF,OAAM,CAAC,IAAKC,WAAU,CAAC;AACnD,UAAM,IAAK,SAASC,EAAC,EAAE,CAAC,IAAIF,OAAM,CAAC,IAAKC,WAAU,CAAC;AACnD,QAAIF,UAAS;AACT,0BAAoB,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;WAC/B;AACH,0BAAoB,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;;;AAG1C,SAAO;AACX;AAEA,SAAS,cAAc,KAAQ;AAC3B,QAAM,WAAW,IAAI;AACrB,QAAM,cAAc,SAAS;AAC7B,aAAW,YAAY,aAAa;AAChC,oBAAgB,KAAK,YAAY,QAAQ,GAAG,QAAQ;;AAExD,MAAI,IAAI,WAAW;AACf,eAAW,YAAY,aAAa;AAChC,wBAAkB,KAAK,YAAY,QAAQ,GAAG,QAAQ;;;AAGlE;AAEA,SAAS,gBAAgB,KAAU,YAAiB,UAAa;AAC7D,MAAI,IAAI,WAAW;AACf,QAAI,UAAU,aAAa;MACvB,IAAI;MACJ,MAAM,WAAW,OAAO,QAAQ;MAChC,MAAMI,WAAU,WAAW,IAAI,IAAI;MACnC,QAAQ,WAAW,UAAU,WAAW,QAAQ,CAAC,IAAI;KACxD;;AAEL,MAAI,IAAI,YAAY;AAChB,QAAI,EAAE,WAAW,YAAY,WAAW,SAAS,SAAS,IAAI;AAC1D;;AAEJ,UAAM,UAA0B,CAAA;AAChC,aAASD,KAAI,GAAG,MAAM,WAAW,SAAS,QAAQA,KAAI,KAAKA,MAAK;AAC5D,YAAM,WAAW,WAAW,SAASA,EAAC;AACtC,UAAI;AACJ,UAAI;AACJ,YAAM,aAAa,IAAI,SAAS;AAChC,UAAI,YAAY;AACZ,cAAM,YAAY,WAAW;AAC7B,YAAI,WAAW;AACX,gBAAM,mBAAmB,SAAS;AAClC,cAAI,kBAAkB;AAClB,kBAAM,WAAW,OAAO,KAAK,gBAAgB;AAC7C,gBAAI,SAAS,SAAS,GAAG;AACrB,oBAAM,UAAU,SAAS,CAAC;AAC1B,oBAAM,QAAQ,iBAAiB,OAAO;AACtC,kBAAI,MAAM,UAAU,QAAW;AAC3B,iCAAiB,UAAU,MAAM,KAAK;qBACnC;AACH,sBAAM,SAAS,MAAM;AACrB,oBAAI,QAAQ;AACR,qCAAmB,CAAA;AACnB,2BAAS,IAAI,GAAG,OAAO,OAAO,QAAQ,IAAI,MAAM,KAAK;AACjD,0BAAM,QAAQ,OAAOA,EAAC;AACtB,0BAAM,kBAAkB,UAAU,KAAK;AACvC,qCAAiB,KAAK,eAAe;;;;;;;;AAQjE,UAAI,kBAAkB;AAClB,8CAAsC,KAAK,UAAU,kBAAkB,OAAO;aAC3E;AACH,gDAAwC,KAAK,UAAU,gBAAgB,OAAO;;;AAGtF,QAAI,QAAQ,SAAS,GAAG;AACpB,UAAI,WAAW,aAAa;QACxB,IAAI;QACJ;OACH;;;AAGb;AAEA,SAAS,kBAAkB,KAAU,YAAiB,UAAa;AAC/D,MAAI,WAAW,SAAS;AACpB,QAAI,UAAU,mBAAmB;MAC7B,kBAAkB,WAAW,QAAQ,CAAC;MACtC,iBAAiB;MACjB,MAAM;KACT;;AAET;AAEA,SAAS,sCAAsC,KAAU,UAAe,kBAAuB,SAAY;AACvG,QAAM,WAAW,SAAS;AAC1B,UAAQ,UAAU;IACd,KAAK;AACD;IACJ,KAAK;AACD;IACJ,KAAK;IACL,KAAK;AACD,YAAM,WAAW,SAAS;AAC1B,oCAA8B,KAAK,kBAAkB,UAAU,OAAO;AACtE;IACJ,KAAK;AACD,YAAM,SAAS,SAAS;AACxB,eAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACpC,cAAME,YAAW,OAAO,CAAC;AACzB,sCAA8B,KAAK,kBAAkBA,WAAU,OAAO;;AAE1E;IACJ,KAAK;IACL,KAAK;AACD,YAAM,SAAS,SAAS;AACxB,eAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACpC,iBAAS,IAAI,GAAG,IAAI,OAAO,CAAC,EAAE,QAAQ,KAAK;AACvC,gBAAMA,YAAW,OAAO,CAAC,EAAE,CAAC;AAC5B,wCAA8B,KAAK,kBAAkBA,WAAU,OAAO;;;AAG9E;IACJ,KAAK;AACD;;AAEZ;AAEA,SAAS,8BAA8B,KAAU,kBAAuB,UAAe,SAAY;AAC/F,QAAM,WAAW,IAAI;AACrB,QAAM,aAAa,IAAI;AACvB,WAASF,KAAI,GAAGA,KAAI,SAAS,QAAQA,MAAK;AACtC,UAAM,UAAU,SAASA,EAAC;AAC1B,UAAM,kBAAkB,iBAAiBA,EAAC,KAAK,EAAC,cAAc,CAAC,KAAK,KAAK,GAAG,GAAG,cAAc,EAAG;AAChG,UAAM,OAAO,CAAA;AACb,UAAM,QAAQ,CAAA;AACd,UAAM,gBAAuB,CAAA;AAC7B,UAAM,cAAmB;MACrB,WAAW,CAAA;MACX,SAAS,CAAA;;AAEb,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;AACrC,UAAI,KAAK,SAAS,GAAG;AACjB,cAAM,KAAK,KAAK,MAAM;;AAE1B,YAAM,UAAU,oBAAoB,KAAK,QAAQ,CAAC,GAAG,eAAe,WAAW;AAC/E,WAAK,KAAK,GAAG,OAAO;;AAExB,QAAI,KAAK,WAAW,GAAG;AACnB,kBAAY,QAAQ,KAAK,KAAK,CAAC,CAAC;AAChC,kBAAY,QAAQ,KAAK,KAAK,CAAC,CAAC;AAChC,kBAAY,QAAQ,KAAK,KAAK,CAAC,CAAC;eACzB,KAAK,SAAS,GAAG;AAExB,YAAM,QAAQ,CAAA;AACd,eAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AAClC,cAAM,KAAK;UACP,GAAG,SAAS,cAAc,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;UACrC,GAAG,SAAS,cAAc,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;UACrC,GAAG,SAAS,cAAc,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC;;AAEL,YAAMG,UAAS,qBAAqB,OAAO,WAAU,CAAE;AAEvD,UAAI,KAAK,CAAA;AACT,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,aAAK,MAAM,CAAC,GAAGA,SAAQ,SAAS;AAChC,WAAG,QAAQ,UAAU,CAAC,CAAC;AACvB,WAAG,QAAQ,UAAU,CAAC,CAAC;;AAG3B,YAAM,KAAK,OAAO,IAAI,OAAO,CAAC;AAE9B,eAAS,IAAI,GAAG,IAAI,GAAG,QAAQ,KAAK,GAAG;AACnC,oBAAY,QAAQ,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC;AACvC,oBAAY,QAAQ,QAAQ,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;AAC3C,oBAAY,QAAQ,QAAQ,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;;;AAGnD,UAAM,aAAa,KAAK,IAAI;AAC5B,eAAW,eAAe;MACtB,IAAI;MACJ,WAAW;MACX,WAAW,YAAY;MACvB,SAAS,YAAY;KACxB;AACD,UAAM,SAAS,KAAK,IAAI;AACxB,eAAW,WAAW;MAClB,IAAI;MACJ;MACA,OAAQ,mBAAmB,gBAAgB,eAAgB,gBAAgB,eAAe,CAAC,KAAK,KAAK,GAAG;MACxG,SAAU,mBAAmB,gBAAgB,iBAAiB,SAAc,IAAM,gBAAgB,eAAgB;KACrH;AACD,YAAQ,KAAK,MAAM;;AAE3B;AAEA,SAAS,wCAAwC,KAAU,UAAe,gBAAqB,SAAY;AACvG,QAAM,aAAa,IAAI;AACvB,QAAM,gBAAqB,CAAA;AAC3B,QAAM,cAAmB;IACrB,WAAW,CAAA;IACX,SAAS,CAAA;;AAEb,QAAM,WAAW,SAAS;AAC1B,UAAQ,UAAU;IACd,KAAK;AACD;IACJ,KAAK;AACD;IACJ,KAAK;IACL,KAAK;AACD,YAAM,WAAW,SAAS;AAC1B,sCAAgC,KAAK,UAAU,eAAe,WAAW;AACzE;IACJ,KAAK;AACD,YAAM,SAAS,SAAS;AACxB,eAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACpC,cAAMD,YAAW,OAAO,CAAC;AACzB,wCAAgC,KAAKA,WAAU,eAAe,WAAW;;AAE7E;IACJ,KAAK;IACL,KAAK;AACD,YAAM,SAAS,SAAS;AACxB,eAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACpC,iBAAS,IAAI,GAAG,IAAI,OAAO,CAAC,EAAE,QAAQ,KAAK;AACvC,gBAAMA,YAAW,OAAO,CAAC,EAAE,CAAC;AAC5B,0CAAgC,KAAKA,WAAU,eAAe,WAAW;;;AAGjF;IACJ,KAAK;AACD;;AAER,MAAI,YAAY,UAAU,SAAS,KAAK,YAAY,QAAQ,SAAS,GAAG;AACpE,UAAM,aAAa,KAAK,IAAI;AAC5B,eAAW,eAAe;MACtB,IAAI;MACJ,WAAW;MACX,WAAW,YAAY;MACvB,SAAS,YAAY;KACxB;AACD,UAAM,SAAS,KAAK,IAAI;AACxB,eAAW,WAAW;MAClB,IAAI;MACJ;MACA,OAAQ,kBAAkB,eAAe,eAAgB,eAAe,eAAe,CAAC,KAAK,KAAK,GAAG;MACrG,SAAS;KACZ;AACD,YAAQ,KAAK,MAAM;;AAE3B;AAEA,SAAS,gCAAgC,KAAU,UAAe,eAAoB,cAAiB;AACnG,QAAM,WAAW,IAAI;AACrB,WAASF,KAAI,GAAGA,KAAI,SAAS,QAAQA,MAAK;AACtC,QAAI,WAAW,CAAA;AACf,QAAI,QAAQ,CAAA;AACZ,aAAS,IAAI,GAAG,IAAI,SAASA,EAAC,EAAE,QAAQ,KAAK;AACzC,UAAI,SAAS,SAAS,GAAG;AACrB,cAAM,KAAK,SAAS,MAAM;;AAE9B,YAAM,cAAc,oBAAoB,KAAK,SAASA,EAAC,EAAE,CAAC,GAAG,eAAe,YAAY;AACxF,eAAS,KAAK,GAAG,WAAW;;AAEhC,QAAI,SAAS,WAAW,GAAG;AACvB,mBAAa,QAAQ,KAAK,SAAS,CAAC,CAAC;AACrC,mBAAa,QAAQ,KAAK,SAAS,CAAC,CAAC;AACrC,mBAAa,QAAQ,KAAK,SAAS,CAAC,CAAC;eAC9B,SAAS,SAAS,GAAG;AAC5B,UAAI,QAAQ,CAAA;AACZ,eAAS,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;AACtC,cAAM,KAAK;UACP,GAAG,SAAS,cAAc,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;UACzC,GAAG,SAAS,cAAc,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;UACzC,GAAG,SAAS,cAAc,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C;;AAEL,YAAMG,UAAS,qBAAqB,OAAO,WAAU,CAAE;AACvD,UAAI,KAAK,CAAA;AACT,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,aAAK,MAAM,CAAC,GAAGA,SAAQ,SAAS;AAChC,WAAG,QAAQ,UAAU,CAAC,CAAC;AACvB,WAAG,QAAQ,UAAU,CAAC,CAAC;;AAE3B,YAAM,KAAK,OAAO,IAAI,OAAO,CAAC;AAC9B,eAAS,IAAI,GAAG,IAAI,GAAG,QAAQ,KAAK,GAAG;AACnC,qBAAa,QAAQ,QAAQ,SAAS,GAAG,CAAC,CAAC,CAAC;AAC5C,qBAAa,QAAQ,QAAQ,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC;AAChD,qBAAa,QAAQ,QAAQ,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC;;;;AAIhE;AAEA,SAAS,oBAAoB,KAAU,UAAe,eAAoB,aAAgB;AACtF,QAAM,WAAW,IAAI;AACrB,QAAM,cAAc,CAAA;AACpB,WAASH,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,UAAM,QAAQ,SAASA,EAAC;AACxB,QAAI,cAAc,SAAS,KAAK,GAAG;AAC/B,YAAM,cAAc,cAAc,QAAQ,KAAK;AAC/C,kBAAY,KAAK,WAAW;WACzB;AACH,kBAAY,UAAU,KAAK,SAAS,KAAK,EAAE,CAAC,CAAC;AAC7C,kBAAY,UAAU,KAAK,SAAS,KAAK,EAAE,CAAC,CAAC;AAC7C,kBAAY,UAAU,KAAK,SAAS,KAAK,EAAE,CAAC,CAAC;AAC7C,kBAAY,KAAK,cAAc,MAAM;AACrC,oBAAc,KAAK,KAAK;;;AAGhC,SAAO;AACX;AAEA,SAAS,qBAAqB,WAAgBG,SAAW;AACrD,WAASH,KAAI,GAAGA,KAAI,UAAU,QAAQA,MAAK;AACvC,QAAI,QAAQA,KAAI;AAChB,QAAI,UAAU,UAAU,QAAQ;AAC5B,cAAQ;;AAEZ,IAAAG,QAAO,CAAC,MAAO,UAAUH,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE,MAAM,UAAUA,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE;AACzF,IAAAG,QAAO,CAAC,MAAO,UAAUH,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE,MAAM,UAAUA,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE;AACzF,IAAAG,QAAO,CAAC,MAAO,UAAUH,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE,MAAM,UAAUA,EAAC,EAAE,IAAI,UAAU,KAAK,EAAE;;AAE7F,SAAO,cAAcG,OAAM;AAC/B;AAEA,SAAS,KAAK,IAAS,IAAS,IAAO;AACnC,QAAMC,KAAIX;AACV,QAAMY,KAAIX;AACV,QAAM,KAAKC;AACX,EAAAS,GAAE,CAAC,IAAI,GAAG;AACV,EAAAA,GAAE,CAAC,IAAI,GAAG;AACV,EAAAA,GAAE,CAAC,IAAI,GAAG;AACV,EAAAC,GAAE,CAAC,IAAI,GAAG;AACV,EAAAA,GAAE,CAAC,IAAI,GAAG;AACV,EAAAA,GAAE,CAAC,IAAI,GAAG;AACV,KAAG,CAAC,IAAI;AACR,KAAG,CAAC,IAAI;AACR,KAAG,CAAC,IAAI;AACR,QAAM,OAAO,QAAQ,QAAQ,IAAIA,EAAC,CAAC;AACnC,MAAI,OAAO,MAAM;AACb,OAAG,CAAC,KAAK;AACT,OAAG,CAAC,KAAK;AACT,OAAG,CAAC,KAAK;;AAEb,QAAMC,OAAM,QAAQ,IAAID,EAAC;AACzB,QAAM,OAAO,cAAcA,IAAGC,MAAK,WAAU,CAAE;AAC/C,KAAG,CAAC,KAAK,KAAK,CAAC;AACf,KAAG,CAAC,KAAK,KAAK,CAAC;AACf,KAAG,CAAC,KAAK,KAAK,CAAC;AACf,gBAAc,EAAE;AAChB,QAAM,KAAK,WAAWD,IAAG,IAAI,WAAU,CAAE;AACzC,QAAM,IAAI,QAAQD,IAAG,EAAE;AACvB,QAAM,IAAI,QAAQA,IAAG,EAAE;AACvB,KAAG,CAAC,IAAI;AACR,KAAG,CAAC,IAAI;AACZ;;;ACjcA,IAAAG,iBAAA;SAAAA,gBAAA;;;;;;AC6BM,SAAU,WAAWC,SAKA,UAGI,CAAA,GAAE;AAC7B,SAAO,IAAI,QAAc,SAAUC,UAAS,QAAM;AAC9C,QAAID,QAAO,WAAW,WAAW;AAC7B,YAAM,IAAI,SAAS,8BAA8B;;AAErD,QAAIA,QAAO,WAAW,OAAO;AACzB,YAAM,IAAI,SAAS,0BAA0B;;AAEjD,QAAIA,QAAO,WAAW;AAClB,UAAIA,QAAO,UAAU,WAAW;AAC5B,cAAM,IAAI,SAAS,6BAA6B;;AAEpD,UAAIA,QAAO,UAAU,OAAO;AACxB,cAAM,IAAI,SAAS,yBAAyB;;;AAGpD,UAAM,WAAWA,QAAO;AACxB,UAAM,MAAM;MACR;MACA,YAAYA,QAAO;MACnB,WAAWA,QAAO;MAClB,QAAQ;MACR,OAAO,QAAQ,SAAS,SAAU,QAAc;MAChD;MACA,WAAW,QAAQ;;AAEvB,gBAAY,GAAG;AACf,IAAAC,SAAO;EACX,CAAC;AACL;AAEA,SAAS,YAAY,KAAQ;AACzB,QAAM,WAAW,IAAI;AACrB,QAAM,SAAS,SAAS;AACxB,WAASC,KAAI,GAAG,MAAM,OAAO,QAAQA,KAAI,KAAKA,MAAK;AAC/C,UAAM,OAAO,OAAOA,EAAC;AACrB,UAAM,WAAW,IAAI,WAAW,eAAe;MAC3C,IAAI,KAAK;MACT,WAAW;MACX,WAAW,KAAK;MAChB,SAAS,KAAK;KACjB;AACD,QAAI,oBAAoB,UAAU;AAC9B,UAAI,MAAM,gCAAgC,SAAS,OAAO,EAAE;;;AAGpE,QAAM,WAAW,SAAS;AAC1B,WAASA,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,UAAM,UAAU,SAASA,EAAC;AAC1B,UAAM,OAAO,QAAQ;AACrB,UAAM,WACF,QAAQ,SAAS,SACX,GAAG,QAAQ,IAAI,KACd,SAAS,UAAa,KAAK,OAAO,SAC/B,KAAK,KACLA;AACd,QAAI,IAAI,YAAY;AAChB,YAAM,aAAa,QAAQ;AAC3B,YAAM,SAAS,GAAG,QAAQ;AAC1B,YAAM,SAAS,QAAQ;AACvB,YAAM,WAAW,QAAQ;AACzB,YAAMC,SAAQ,QAAQ;AACtB,YAAM,OAAO,IAAI,WAAW,WAAW;QACnC,IAAI;QACJ;QACA,OAAOA,SAAQ,CAACA,OAAM,GAAGA,OAAM,GAAGA,OAAM,CAAC,IAAI;QAC7C,SAASA,SAAQA,OAAM,IAAI;QAC3B,YAAY,WAAW,CAAC,SAAS,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE,IAAI;QAC9E,UAAU,SACH,IAAI,YACD,CAAC,OAAO,IAAI,IAAI,UAAU,CAAC,GAAG,OAAO,IAAI,IAAI,UAAU,CAAC,GAAG,OAAO,IAAI,IAAI,UAAU,CAAC,CAAC,IACtF,CAAC,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,IAChC,IAAI,YAAY,IAAI,YAAY;OAC1C;AACD,UAAI,gBAAgB,UAAU;AAC1B,YAAI,MAAM,4BAA4B,KAAK,OAAO,EAAE;AACpD;;AAEJ,YAAM,cAAc,IAAI,WAAW,aAAa;QAC5C,IAAI;QACJ,SAAS,CAAC,MAAM;OACnB;AACD,UAAI,uBAAuB,UAAU;AACjC,YAAI,MAAM,8BAA8B,YAAY,OAAO,EAAE;AAC7D;;;AAGR,QAAI,IAAI,WAAW;AACf,UAAI,CAAC,IAAI,UAAU,QAAQ,QAAQ,IAAI,GAAG;AACtC,cAAM,aAAa,IAAI,UAAU,aAAa;UAC1C,IAAI;UACJ,MAAM,aAAa,QAAQ,IAAI;UAC/B,MAAM,KAAK;UACX,aAAa,KAAK;SACrB;AACD,YAAI,sBAAsB,UAAU;AAChC,cAAI,MAAM,8BAA8B,WAAW,OAAO,EAAE;;;;;AAKhF;;;ACnIA,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAiBtB,SAAU,WAAWC,SAG1B;AACG,QAAM,aAAaA,QAAO;AAC1B,QAAM,YAAYA,QAAO;AACzB,MAAI,YAAY,WAAW;AACvB,UAAM,IAAI,SAAS,8BAA8B;;AAErD,MAAI,CAAC,YAAY,OAAO;AACpB,UAAM,IAAI,SAAS,0BAA0B;;AAEjD,MAAI,WAAW;AACX,QAAI,UAAU,WAAW;AACrB,YAAM,IAAI,SAAS,6BAA6B;;AAEpD,QAAI,CAAC,UAAU,OAAO;AAClB,YAAM,IAAI,SAAS,yBAAyB;;;AAGpD,SAAO,cAAc,EAAC,YAAY,UAAS,CAAC;AAChD;AAGA,SAAS,cAAcA,SAAwD;AAE3E,QAAM,SAAS;IACX,QAAQ,CAAA;IACR,UAAU,CAAA;;AAGd,QAAM,aAAa,OAAO,OAAOA,QAAO,WAAW,UAAU;AAE7D,QAAM,aAAa,CAAA;AAEnB,WAASC,KAAI,GAAG,MAAM,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACnD,UAAM,WAAW,WAAWA,EAAC;AAC7B,UAAM,OAAO,SAAS;AACtB,UAAM,cAAc,CAAA;AACpB,UAAM,sBAAsB,SAAS;AACrC,aAAS,IAAI,GAAG,OAAO,oBAAoB,QAAQ,IAAI,MAAM,KAAK,GAAG;AACjE,MAAAH,WAAU,CAAC,IAAI,oBAAoB,CAAC;AACpC,MAAAA,WAAU,CAAC,IAAI,oBAAoB,IAAI,CAAC;AACxC,MAAAA,WAAU,CAAC,IAAI,oBAAoB,IAAI,CAAC;AACxC,gCAA0BA,YAAW,MAAMC,UAAS;AACpD,kBAAY,KAAKA,WAAU,CAAC,CAAC;AAC7B,kBAAY,KAAKA,WAAU,CAAC,CAAC;AAC7B,kBAAY,KAAKA,WAAU,CAAC,CAAC;;AAEjC,eAAW,SAAS,EAAE,IAAI;MACtB,SAAS,SAAS;MAClB;MACA,SAAS,SAAS,WAAW,CAAA;;;AAIrC,QAAM,eAAe,OAAO,OAAOC,QAAO,WAAW,OAAO;AAE5D,WAASC,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,UAAM,cAAc,aAAaA,EAAC;AAClC,UAAM,SAAS,YAAY;AAC3B,QAAI;AACJ,QAAI;AACJ,QAAI,OAAO,WAAW,GAAG;AACrB,YAAM,OAAO,OAAO,CAAC;AACrB,YAAM,WAAW,KAAK;AACtB,eAAS,WAAW,SAAS,EAAE;AAC/B,aAAO,OAAO,KAAK,MAAM;AACzB,eAAS,SAAS;WACf;AACH,eAAS;QACL,SAAS,YAAY;QACrB,aAAa,CAAA;QACb,SAAS,CAAA;;AAEb,UAAI,gBAAgB;AACpB,eAAS,IAAI,GAAG,OAAO,OAAO,QAAQ,IAAI,MAAM,KAAK;AACjD,cAAM,YAAY,OAAO,CAAC;AAC1B,cAAM,WAAW,UAAU;AAC3B,cAAM,iBAAiB,WAAW,SAAS,EAAE;AAC7C,cAAM,cAAc,eAAe;AACnC,iBAAS,IAAI,GAAG,OAAO,YAAY,QAAQ,IAAI,MAAM,KAAK;AACtD,iBAAO,YAAY,KAAK,YAAY,CAAC,CAAC;;AAE1C,cAAM,UAAU,eAAe;AAC/B,iBAAS,IAAI,GAAG,OAAO,QAAQ,QAAQ,IAAI,MAAM,KAAK;AAClD,iBAAO,QAAQ,KAAK,QAAQ,CAAC,IAAI,aAAa;;AAElD,yBAAiB,YAAY,SAAS;;AAE1C,aAAO,OAAO,KAAK,MAAM;AACzB,eAAS,YAAY;;AAEzB,UAAM,YAAY,OAAO,CAAC;AAC1B,UAAMC,SAAQ,UAAU;AACxB,UAAM,WAAW,WAAU;AAC3B,UAAM,aAAa,WAAU;AAC7B,UAAMC,SAAQ,WAAU;AACxB,kBAAc,UAAU,QAAQ,UAAU,YAAYA,MAAK;AAC3D,UAAM,OAAY;MACd,IAAI,YAAY;MAChB,KAAK;;AAET,QAAI;AACJ,QAAIH,QAAO,WAAW;AAClB,mBAAaA,QAAO,UAAU,QAAQ,YAAY,EAAE;AACpD,UAAI,YAAY;AACZ,aAAK,OAAO,aAAa,WAAW,IAAI;AACxC,aAAK,OAAO,WAAW;AACvB,aAAK,cAAc,WAAW;;;AAGtC,QAAI,CAAC,YAAY;AACb,WAAK,OAAO;AACZ,WAAK,OAAO;AACZ,WAAK,cAAc;;AAEvB,WAAO,SAAS,KAAK;MACjB;MACA,SAAS,OAAO;MAChB,MAAM,KAAK;MACX,OAAO;QACH,GAAGE,OAAM,CAAC;QACV,GAAGA,OAAM,CAAC;QACV,GAAGA,OAAM,CAAC;QACV,GAAG,UAAU;;MAEjB,QAAQ;QACJ,GAAG,SAAS,CAAC;QACb,GAAG,SAAS,CAAC;QACb,GAAG,SAAS,CAAC;;MAEjB,UAAU;QACN,IAAI,WAAW,CAAC;QAChB,IAAI,WAAW,CAAC;QAChB,IAAI,WAAW,CAAC;QAChB,IAAI,WAAW,CAAC;;MAEpB,IAAI,WAAW,CAAC;MAChB,IAAI,WAAW,CAAC;MAChB,IAAI,WAAW,CAAC;KACnB;;AAGL,SAAO;AACX;;;AC1KA,IAAAE,iBAAA;SAAAA,gBAAA;;;;;ACmBA,IAAIC,cAAa,CAACC,KAAI,QAAQ,SAAS,YAAY;AACjD,SAAO,QAAQ,GAAGA,IAAG,OAAO,KAAKA,GAAE,EAAE,CAAC,CAAC,IAAI,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,GAAG,GAAG,IAAI;AACvF;AAuBA,IAAI,qBAAqBC,YAAW;AAAA,EAClC,qBAAqB,SAASC,SAAQ;AACpC,QAAI,eAAe,MAAM;AACvB,UAAI,aAAa,OAAO,aAAa,eAAe,SAAS,gBAAgB,SAAS,cAAc,MAAM;AAC1G,aAAO,SAAS,YAAY,CAAC,GAAG;AAC9B,iBAAS,mBAAmB;AAC1B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB;AAC1B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oBAAoB;AAC3B,cAAI,WAAW,UAAU,MAAM,QAAQ;AACrC,8BAAkB;AAAA,UACpB;AACA,iBAAO;AAAA,QACT;AACA,YAAIC,UAAS;AACb,YAAI,qBAAqB;AACzB,QAAAA,QAAO,OAAO,IAAI,IAAI,QAAQ,CAACC,UAAS,WAAW;AACjD,gCAAsBA;AACtB,+BAAqB;AAAA,QACvB,CAAC;AACD,YAAI,kBAAkB,OAAO,OAAO,CAAC,GAAGD,OAAM;AAC9C,YAAI,aAAa,CAAC;AAClB,YAAI,cAAc;AAClB,YAAI,QAAQ,CAAC,QAAQ,YAAY;AAC/B,gBAAM;AAAA,QACR;AACA,YAAI,qBAAqB,OAAO,UAAU;AAC1C,YAAI,wBAAwB,OAAO,iBAAiB;AACpD,YAAI,sBAAsB,OAAO,WAAW,YAAY,OAAO,QAAQ,YAAY,YAAY,OAAO,QAAQ,SAAS,QAAQ;AAC/H,YAAI,yBAAyBA,QAAO,wBAAwB,KAAK;AACjE,YAAI,kBAAkB;AACtB,iBAAS,WAAW,MAAM;AACxB,cAAIA,QAAO,YAAY,GAAG;AACxB,mBAAOA,QAAO,YAAY,EAAE,MAAM,eAAe;AAAA,UACnD;AACA,iBAAO,kBAAkB;AAAA,QAC3B;AACA,YAAI,OAAO,WAAW,YAAY;AAClC,YAAI,sBAAsB,uBAAuB;AAC/C,cAAI,uBAAuB;AACzB,8BAAkB,KAAK,SAAS;AAAA,UAClC,WAAW,OAAO,YAAY,eAAe,SAAS,eAAe;AACnE,8BAAkB,SAAS,cAAc;AAAA,UAC3C;AACA,cAAI,YAAY;AACd,8BAAkB;AAAA,UACpB;AACA,cAAI,gBAAgB,QAAQ,OAAO,MAAM,GAAG;AAC1C,8BAAkB,gBAAgB,OAAO,GAAG,gBAAgB,QAAQ,UAAU,EAAE,EAAE,YAAY,GAAG,IAAI,CAAC;AAAA,UACxG,OAAO;AACL,8BAAkB;AAAA,UACpB;AACA;AACE,oBAAQ,CAAC,QAAQ;AACf,kBAAI,MAAM,IAAI,eAAe;AAC7B,kBAAI,KAAK,OAAO,KAAK,KAAK;AAC1B,kBAAI,KAAK,IAAI;AACb,qBAAO,IAAI;AAAA,YACb;AACA,gBAAI,uBAAuB;AACzB,2BAAa,CAAC,QAAQ;AACpB,oBAAI,MAAM,IAAI,eAAe;AAC7B,oBAAI,KAAK,OAAO,KAAK,KAAK;AAC1B,oBAAI,eAAe;AACnB,oBAAI,KAAK,IAAI;AACb,uBAAO,IAAI,WAAW,IAAI,QAAQ;AAAA,cACpC;AAAA,YACF;AACA,wBAAY,CAAC,KAAK,QAAQ,YAAY;AACpC,kBAAI,MAAM,IAAI,eAAe;AAC7B,kBAAI,KAAK,OAAO,KAAK,IAAI;AACzB,kBAAI,eAAe;AACnB,kBAAI,SAAS,MAAM;AACjB,oBAAI,IAAI,UAAU,OAAO,IAAI,UAAU,KAAK,IAAI,UAAU;AACxD,yBAAO,IAAI,QAAQ;AACnB;AAAA,gBACF;AACA,wBAAQ;AAAA,cACV;AACA,kBAAI,UAAU;AACd,kBAAI,KAAK,IAAI;AAAA,YACf;AAAA,UACF;AACA,2BAAiB,CAAC,UAAU,SAAS,QAAQ;AAAA,QAC/C,OAAO;AAAA,QACP;AACA,YAAI,MAAMA,QAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,OAAO;AACrD,YAAIE,OAAMF,QAAO,UAAU,KAAK,QAAQ,MAAM,KAAK,OAAO;AAC1D,eAAO,OAAOA,SAAQ,eAAe;AACrC,0BAAkB;AAClB,YAAIA,QAAO,WAAW;AACpB,uBAAaA,QAAO,WAAW;AACjC,YAAIA,QAAO,aAAa;AACtB,wBAAcA,QAAO,aAAa;AACpC,YAAIA,QAAO,MAAM;AACf,kBAAQA,QAAO,MAAM;AACvB,YAAI;AACJ,YAAIA,QAAO,YAAY;AACrB,uBAAaA,QAAO,YAAY;AAClC,YAAI,gBAAgBA,QAAO,eAAe,KAAK;AAC/C,YAAI,OAAO,eAAe,UAAU;AAClC,gBAAM,iCAAiC;AAAA,QACzC;AACA,YAAI;AACJ,YAAI;AACJ,YAAI;AACJ,YAAI,QAAQ;AACZ,YAAI;AACJ,iBAASG,QAAO,WAAW,MAAM;AAC/B,cAAI,CAAC,WAAW;AACd,kBAAM,IAAI;AAAA,UACZ;AAAA,QACF;AACA,YAAI,OAAO,QAAQ,QAAQ,SAAS,QAAQ,SAAS,SAAS;AAC9D,iBAAS,oBAAoB;AAC3B,cAAIC,KAAI,WAAW;AACnB,UAAAJ,QAAO,OAAO,IAAI,QAAQ,IAAI,UAAUI,EAAC;AACzC,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,YAAYI,EAAC;AAC/C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,YAAYI,EAAC;AAC/C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,aAAaI,EAAC;AAChD,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,aAAaI,EAAC;AAAA,QAClD;AACA,YAAI,iBAAiBJ,QAAO,gBAAgB,KAAK;AACjD,QAAAG,QAAO,kBAAkB,SAAS,0DAA0D,iBAAiB,wBAAgC;AAC7I,YAAI,wBAAwB;AAC1B,uBAAaH,QAAO,YAAY;AAAA,QAClC,OAAO;AACL,cAAIA,QAAO,YAAY,GAAG;AACxB,yBAAaA,QAAO,YAAY;AAAA,UAClC,OAAO;AACL,yBAAa,IAAI,YAAY,OAAO,EAAE,WAAW,iBAAiB,OAAO,WAAW,aAAa,OAAO,UAAU,KAAK,CAAC;AACxH,gBAAI,EAAE,WAAW,kBAAkB,oBAAoB;AACrD,cAAAE,KAAI,6NAA6N;AACjO,kBAAI,qBAAqB;AACvB,gBAAAA,KAAI,2GAA2G;AAAA,cACjH;AACA,oBAAM,MAAM,YAAY;AAAA,YAC1B;AAAA,UACF;AAAA,QACF;AACA,0BAAkB;AAClB,yBAAiB,WAAW,OAAO;AACnC,YAAI;AACJ,YAAI,eAAe,CAAC;AACpB,YAAI,aAAa,CAAC;AAClB,YAAI,gBAAgB,CAAC;AACrB,YAAI,qBAAqB;AACzB,YAAI,0BAA0B;AAC9B,iBAAS,mBAAmB;AAC1B,iBAAO,iBAAiB,0BAA0B;AAAA,QACpD;AACA,iBAAS,SAAS;AAChB,cAAIF,QAAO,QAAQ,GAAG;AACpB,gBAAI,OAAOA,QAAO,QAAQ,KAAK;AAC7B,cAAAA,QAAO,QAAQ,IAAI,CAACA,QAAO,QAAQ,CAAC;AACtC,mBAAOA,QAAO,QAAQ,EAAE,QAAQ;AAC9B,0BAAYA,QAAO,QAAQ,EAAE,MAAM,CAAC;AAAA,YACtC;AAAA,UACF;AACA,+BAAqB,YAAY;AAAA,QACnC;AACA,iBAAS,cAAc;AACrB,+BAAqB;AACrB,cAAI;AACF;AACF,cAAI,CAACA,QAAO,UAAU,KAAK,CAAC,GAAG,KAAK;AAClC,eAAG,KAAK;AACV,aAAG,oBAAoB;AACvB,cAAI,KAAK;AACT,+BAAqB,UAAU;AAAA,QACjC;AACA,iBAAS,UAAU;AACjB,cAAI;AACF;AACF,cAAIA,QAAO,SAAS,GAAG;AACrB,gBAAI,OAAOA,QAAO,SAAS,KAAK;AAC9B,cAAAA,QAAO,SAAS,IAAI,CAACA,QAAO,SAAS,CAAC;AACxC,mBAAOA,QAAO,SAAS,EAAE,QAAQ;AAC/B,2BAAaA,QAAO,SAAS,EAAE,MAAM,CAAC;AAAA,YACxC;AAAA,UACF;AACA,+BAAqB,aAAa;AAAA,QACpC;AACA,iBAAS,YAAYK,KAAI;AACvB,uBAAa,QAAQA,GAAE;AAAA,QACzB;AACA,iBAAS,UAAUA,KAAI;AACrB,qBAAW,QAAQA,GAAE;AAAA,QACvB;AACA,iBAAS,aAAaA,KAAI;AACxB,wBAAc,QAAQA,GAAE;AAAA,QAC1B;AACA,YAAI,kBAAkB;AACtB,YAAI,uBAAuB;AAC3B,YAAI,wBAAwB;AAC5B,iBAAS,uBAAuB,IAAI;AAClC,iBAAO;AAAA,QACT;AACA,iBAAS,iBAAiB,IAAI;AAC5B;AACA,cAAIL,QAAO,wBAAwB,GAAG;AACpC,YAAAA,QAAO,wBAAwB,EAAE,eAAe;AAAA,UAClD;AAAA,QACF;AACA,iBAAS,oBAAoB,IAAI;AAC/B;AACA,cAAIA,QAAO,wBAAwB,GAAG;AACpC,YAAAA,QAAO,wBAAwB,EAAE,eAAe;AAAA,UAClD;AACA,cAAI,mBAAmB,GAAG;AACxB,gBAAI,yBAAyB,MAAM;AACjC,4BAAc,oBAAoB;AAClC,qCAAuB;AAAA,YACzB;AACA,gBAAI,uBAAuB;AACzB,kBAAI,WAAW;AACf,sCAAwB;AACxB,uBAAS;AAAA,YACX;AAAA,UACF;AAAA,QACF;AACA,iBAAS,MAAM,MAAM;AACnB,cAAIA,QAAO,SAAS,GAAG;AACrB,YAAAA,QAAO,SAAS,EAAE,IAAI;AAAA,UACxB;AACA,iBAAO,aAAa,OAAO;AAC3B,UAAAE,KAAI,IAAI;AACR,kBAAQ;AACR,uBAAa;AACb,kBAAQ;AACR,cAAI,IAAI,IAAI,YAAY,aAAa,IAAI;AACzC,6BAAmB,CAAC;AACpB,gBAAM;AAAA,QACR;AACA,YAAI,gBAAgB;AACpB,iBAAS,UAAUI,WAAU;AAC3B,iBAAOA,UAAS,WAAW,aAAa;AAAA,QAC1C;AACA,YAAI;AACJ,yBAAiB;AACjB,YAAI,CAAC,UAAU,cAAc,GAAG;AAC9B,2BAAiB,WAAW,cAAc;AAAA,QAC5C;AACA,iBAAS,cAAc,MAAM;AAC3B,cAAI,QAAQ,kBAAkB,YAAY;AACxC,mBAAO,IAAI,WAAW,UAAU;AAAA,UAClC;AACA,cAAI,YAAY;AACd,mBAAO,WAAW,IAAI;AAAA,UACxB;AACA,gBAAM;AAAA,QACR;AACA,iBAAS,iBAAiB,YAAY;AACpC,cAAI,CAAC,eAAe,sBAAsB,wBAAwB;AAChE,gBAAI,OAAO,SAAS,YAAY;AAC9B,qBAAO,MAAM,YAAY,EAAE,aAAa,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa;AAC1E,oBAAI,CAAC,SAAS,IAAI,GAAG;AACnB,wBAAM,yCAAyC,aAAa;AAAA,gBAC9D;AACA,uBAAO,SAAS,aAAa,EAAE;AAAA,cACjC,CAAC,EAAE,MAAM,MAAM,cAAc,UAAU,CAAC;AAAA,YAC1C;AAAA,UACF;AACA,iBAAO,QAAQ,QAAQ,EAAE,KAAK,MAAM,cAAc,UAAU,CAAC;AAAA,QAC/D;AACA,iBAAS,uBAAuB,YAAY,SAAS,UAAU;AAC7D,iBAAO,iBAAiB,UAAU,EAAE,KAAK,CAAC,WAAW,YAAY,YAAY,QAAQ,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,QAAQ,EAAE,KAAK,UAAU,CAAC,WAAW;AACrJ,YAAAJ,KAAI,4CAA4C,MAAM;AACtD,kBAAM,MAAM;AAAA,UACd,CAAC;AAAA,QACH;AACA,iBAAS,iBAAiB,QAAQ,YAAY,SAAS,UAAU;AAC/D,cAAI,CAAC,UAAU,OAAO,YAAY,wBAAwB,cAAc,CAAC,UAAU,UAAU,KAAK,OAAO,SAAS,YAAY;AAC5H,mBAAO,MAAM,YAAY,EAAE,aAAa,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa;AAC1E,kBAAI,SAAS,YAAY,qBAAqB,UAAU,OAAO;AAC/D,qBAAO,OAAO,KAAK,UAAU,SAAS,QAAQ;AAC5C,gBAAAA,KAAI,oCAAoC,MAAM;AAC9C,gBAAAA,KAAI,2CAA2C;AAC/C,uBAAO,uBAAuB,YAAY,SAAS,QAAQ;AAAA,cAC7D,CAAC;AAAA,YACH,CAAC;AAAA,UACH;AACA,iBAAO,uBAAuB,YAAY,SAAS,QAAQ;AAAA,QAC7D;AACA,iBAAS,aAAa;AACpB,cAAI,OAAO,EAAE,KAAK,YAAY;AAC9B,mBAAS,gBAAgB,UAAUK,UAAS;AAC1C,gBAAI,WAAW,SAAS;AACxB,uBAAW,0BAA0B,QAAQ;AAC7C,0BAAc;AACd,4BAAgB,YAAY,IAAI,CAAC;AACjC,wBAAY,YAAY,IAAI;AAC5B,sBAAU,YAAY,IAAI,CAAC;AAC3B,yBAAaA;AACb,gCAAoB,kBAAkB;AACtC,mBAAO;AAAA,UACT;AACA,2BAAiB,kBAAkB;AACnC,mBAAS,2BAA2B,QAAQ;AAC1C,4BAAgB,OAAO,UAAU,GAAG,OAAO,QAAQ,CAAC;AAAA,UACtD;AACA,cAAIP,QAAO,iBAAiB,GAAG;AAC7B,gBAAI;AACF,qBAAOA,QAAO,iBAAiB,EAAE,MAAM,eAAe;AAAA,YACxD,SAAS,GAAG;AACV,cAAAE,KAAI,wDAAwD,CAAC;AAC7D,iCAAmB,CAAC;AAAA,YACtB;AAAA,UACF;AACA,2BAAiB,YAAY,gBAAgB,MAAM,0BAA0B,EAAE,MAAM,kBAAkB;AACvG,iBAAO,CAAC;AAAA,QACV;AACA,YAAI;AACJ,YAAI;AACJ,iBAAS,WAAW,QAAQ;AAC1B,eAAK,OAAO;AACZ,eAAK,UAAU,gCAAgC,MAAM;AACrD,eAAK,SAAS;AAAA,QAChB;AACA,YAAI,kBAAkB,SAAS,QAAQ;AACrC,iBAAO,UAAU;AACjB,iBAAO,YAAY,CAAC,MAAM;AAAA,UAC1B;AAAA,QACF;AACA,iBAAS,WAAW,aAAa;AAC/B,cAAI,SAAS,QAAQ,SAAS,WAAW;AACzC,iBAAO,QAAQ,SAAS,WAAW;AACnC,0BAAgB,MAAM;AACtB,wCAA8B,WAAW;AACzC,kBAAQ,eAAe,OAAO,QAAQ,eAAe,QAAQ,MAAM,GAAG,CAAC;AACvE,iBAAO,cAAc;AAAA,QACvB;AACA,iBAAS,aAAa,aAAa;AACjC,cAAI,SAAS,QAAQ,SAAS,WAAW;AACzC,iBAAO,YAAY,EAAE,OAAO,SAAS,CAAC;AAAA,QACxC;AACA,iBAAS,cAAc,aAAa;AAClC,cAAI,SAAS,QAAQ,SAAS,WAAW;AACzC,UAAAC,QAAO,MAAM;AACb,kBAAQ,mBAAmB,MAAM;AAAA,QACnC;AACA,iBAAS,YAAY,cAAc;AACjC,cAAI,SAAS,QAAQ,aAAa;AAClC,cAAI,CAAC,QAAQ;AACX,mBAAO;AAAA,UACT;AACA,kBAAQ,eAAe,KAAK,MAAM;AAClC,kBAAQ,SAAS,aAAa,WAAW,IAAI;AAC7C,iBAAO,cAAc,aAAa;AAClC,cAAI,MAAM,EAAE,OAAO,OAAO,iBAAiB,aAAa,cAAc,OAAO,aAAa,KAAK,eAAe,aAAa,YAAY;AACvI,iBAAO,YAAY,KAAK,aAAa,YAAY;AACjD,iBAAO;AAAA,QACT;AACA,YAAI,OAAO,EAAE,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,MAAM,KAAK,WAAW,CAACG,cAAa;AAC7E,cAAI,cAAc;AAClB,iBAAO,YAAY,KAAKA,SAAQ,EAAE,MAAM,CAAC;AAAA,QAC3C,GAAG,gBAAgB,CAAC,OAAO,mBAAmB;AAC5C,cAAI,KAAK;AACT,mBAASE,KAAI,MAAM,SAAS,GAAGA,MAAK,GAAGA,MAAK;AAC1C,gBAAI,OAAO,MAAMA,EAAC;AAClB,gBAAI,SAAS,KAAK;AAChB,oBAAM,OAAOA,IAAG,CAAC;AAAA,YACnB,WAAW,SAAS,MAAM;AACxB,oBAAM,OAAOA,IAAG,CAAC;AACjB;AAAA,YACF,WAAW,IAAI;AACb,oBAAM,OAAOA,IAAG,CAAC;AACjB;AAAA,YACF;AAAA,UACF;AACA,cAAI,gBAAgB;AAClB,mBAAO,IAAI,MAAM;AACf,oBAAM,QAAQ,IAAI;AAAA,YACpB;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,SAAS;AACtB,cAAI,aAAa,KAAK,MAAM,IAAI,GAAG,gBAAgB,KAAK,OAAO,EAAE,MAAM;AACvE,iBAAO,KAAK,eAAe,KAAK,MAAM,GAAG,EAAE,OAAO,CAACC,OAAM,CAAC,CAACA,EAAC,GAAG,CAAC,UAAU,EAAE,KAAK,GAAG;AACpF,cAAI,CAAC,QAAQ,CAAC,YAAY;AACxB,mBAAO;AAAA,UACT;AACA,cAAI,QAAQ,eAAe;AACzB,oBAAQ;AAAA,UACV;AACA,kBAAQ,aAAa,MAAM,MAAM;AAAA,QACnC,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI,SAAS,KAAK,UAAU,IAAI,GAAG,OAAO,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC;AACnE,cAAI,CAAC,QAAQ,CAAC,KAAK;AACjB,mBAAO;AAAA,UACT;AACA,cAAI,KAAK;AACP,kBAAM,IAAI,OAAO,GAAG,IAAI,SAAS,CAAC;AAAA,UACpC;AACA,iBAAO,OAAO;AAAA,QAChB,GAAG,UAAU,CAAC,SAAS;AACrB,cAAI,SAAS;AACX,mBAAO;AACT,iBAAO,KAAK,UAAU,IAAI;AAC1B,iBAAO,KAAK,QAAQ,OAAO,EAAE;AAC7B,cAAI,YAAY,KAAK,YAAY,GAAG;AACpC,cAAI,cAAc;AAChB,mBAAO;AACT,iBAAO,KAAK,OAAO,YAAY,CAAC;AAAA,QAClC,GAAG,MAAM,WAAW;AAClB,cAAI,QAAQ,MAAM,UAAU,MAAM,KAAK,SAAS;AAChD,iBAAO,KAAK,UAAU,MAAM,KAAK,GAAG,CAAC;AAAA,QACvC,GAAG,OAAO,CAACC,IAAGC,OAAM,KAAK,UAAUD,KAAI,MAAMC,EAAC,EAAE;AAChD,YAAI,iBAAiB,MAAM;AACzB,cAAI,OAAO,UAAU,YAAY,OAAO,OAAO,iBAAiB,KAAK,YAAY;AAC/E,mBAAO,CAAC,UAAU,KAAK,IAAI,OAAO,gBAAgB,IAAI,WAAW,KAAK,UAAU,CAAC,CAAC,GAAG;AAAA,UACvF;AACE,kBAAM,kBAAkB;AAAA,QAC5B;AACA,YAAI,aAAa,CAAC,UAAU,aAAa,eAAe,GAAG,IAAI;AAC/D,YAAI,UAAU,EAAE,SAAS,WAAW;AAClC,cAAI,eAAe,IAAI,mBAAmB;AAC1C,mBAASH,KAAI,UAAU,SAAS,GAAGA,MAAK,MAAM,CAAC,kBAAkBA,MAAK;AACpE,gBAAI,OAAOA,MAAK,IAAI,UAAUA,EAAC,IAAI,GAAG,IAAI;AAC1C,gBAAI,OAAO,QAAQ,UAAU;AAC3B,oBAAM,IAAI,UAAU,2CAA2C;AAAA,YACjE,WAAW,CAAC,MAAM;AAChB,qBAAO;AAAA,YACT;AACA,2BAAe,OAAO,MAAM;AAC5B,+BAAmB,KAAK,MAAM,IAAI;AAAA,UACpC;AACA,yBAAe,KAAK,eAAe,aAAa,MAAM,GAAG,EAAE,OAAO,CAACC,OAAM,CAAC,CAACA,EAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,GAAG;AAC1G,kBAAQ,mBAAmB,MAAM,MAAM,gBAAgB;AAAA,QACzD,GAAG,UAAU,CAAC,MAAM,OAAO;AACzB,iBAAO,QAAQ,QAAQ,IAAI,EAAE,OAAO,CAAC;AACrC,eAAK,QAAQ,QAAQ,EAAE,EAAE,OAAO,CAAC;AACjC,mBAAS,KAAK,KAAK;AACjB,gBAAI,QAAQ;AACZ,mBAAO,QAAQ,IAAI,QAAQ,SAAS;AAClC,kBAAI,IAAI,KAAK,MAAM;AACjB;AAAA,YACJ;AACA,gBAAI,MAAM,IAAI,SAAS;AACvB,mBAAO,OAAO,GAAG,OAAO;AACtB,kBAAI,IAAI,GAAG,MAAM;AACf;AAAA,YACJ;AACA,gBAAI,QAAQ;AACV,qBAAO,CAAC;AACV,mBAAO,IAAI,MAAM,OAAO,MAAM,QAAQ,CAAC;AAAA,UACzC;AACA,cAAI,YAAY,KAAK,KAAK,MAAM,GAAG,CAAC;AACpC,cAAI,UAAU,KAAK,GAAG,MAAM,GAAG,CAAC;AAChC,cAAI,SAAS,KAAK,IAAI,UAAU,QAAQ,QAAQ,MAAM;AACtD,cAAI,kBAAkB;AACtB,mBAASD,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,UAAUA,EAAC,MAAM,QAAQA,EAAC,GAAG;AAC/B,gCAAkBA;AAClB;AAAA,YACF;AAAA,UACF;AACA,cAAI,cAAc,CAAC;AACnB,mBAASA,KAAI,iBAAiBA,KAAI,UAAU,QAAQA,MAAK;AACvD,wBAAY,KAAK,IAAI;AAAA,UACvB;AACA,wBAAc,YAAY,OAAO,QAAQ,MAAM,eAAe,CAAC;AAC/D,iBAAO,YAAY,KAAK,GAAG;AAAA,QAC7B,EAAE;AACF,YAAI,cAAc,OAAO,eAAe,cAAc,IAAI,YAAY,MAAM,IAAI;AAChF,YAAI,oBAAoB,CAAC,aAAa,KAAK,mBAAmB;AAC5D,mBAAS;AACT,cAAI,SAAS,MAAM;AACnB,cAAI,SAAS;AACb,iBAAO,YAAY,MAAM,KAAK,EAAE,UAAU;AACxC,cAAE;AACJ,cAAI,SAAS,MAAM,MAAM,YAAY,UAAU,aAAa;AAC1D,mBAAO,YAAY,OAAO,YAAY,kBAAkB,oBAAoB,YAAY,MAAM,KAAK,MAAM,IAAI,YAAY,SAAS,KAAK,MAAM,CAAC;AAAA,UAChJ;AACA,cAAI,MAAM;AACV,iBAAO,MAAM,QAAQ;AACnB,gBAAI,KAAK,YAAY,KAAK;AAC1B,gBAAI,EAAE,KAAK,MAAM;AACf,qBAAO,OAAO,aAAa,EAAE;AAC7B;AAAA,YACF;AACA,gBAAI,KAAK,YAAY,KAAK,IAAI;AAC9B,iBAAK,KAAK,QAAQ,KAAK;AACrB,qBAAO,OAAO,cAAc,KAAK,OAAO,IAAI,EAAE;AAC9C;AAAA,YACF;AACA,gBAAI,KAAK,YAAY,KAAK,IAAI;AAC9B,iBAAK,KAAK,QAAQ,KAAK;AACrB,oBAAM,KAAK,OAAO,KAAK,MAAM,IAAI;AAAA,YACnC,OAAO;AACL,oBAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,IAAI,YAAY,KAAK,IAAI;AAAA,YAClE;AACA,gBAAI,KAAK,OAAO;AACd,qBAAO,OAAO,aAAa,EAAE;AAAA,YAC/B,OAAO;AACL,kBAAI,KAAK,KAAK;AACd,qBAAO,OAAO,aAAa,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI;AAAA,YAChE;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,0BAA0B,CAAC;AAC/B,YAAI,kBAAkB,CAAC,QAAQ;AAC7B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAII,KAAI,IAAI,WAAWJ,EAAC;AACxB,gBAAII,MAAK,KAAK;AACZ;AAAA,YACF,WAAWA,MAAK,MAAM;AACpB,qBAAO;AAAA,YACT,WAAWA,MAAK,SAASA,MAAK,OAAO;AACnC,qBAAO;AACP,gBAAEJ;AAAA,YACJ,OAAO;AACL,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,oBAAoB,CAAC,KAAK,MAAM,QAAQ,oBAAoB;AAC9D,sBAAY;AACZ,cAAI,EAAE,kBAAkB;AACtB,mBAAO;AACT,cAAI,WAAW;AACf,cAAI,SAAS,SAAS,kBAAkB;AACxC,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,IAAI,IAAI,WAAWA,EAAC;AACxB,gBAAI,KAAK,SAAS,KAAK,OAAO;AAC5B,kBAAI,KAAK,IAAI,WAAW,EAAEA,EAAC;AAC3B,kBAAI,UAAU,IAAI,SAAS,MAAM,KAAK;AAAA,YACxC;AACA,gBAAI,KAAK,KAAK;AACZ,kBAAI,UAAU;AACZ;AACF,mBAAK,aAAa,CAAC,IAAI;AAAA,YACzB,WAAW,KAAK,MAAM;AACpB,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC,WAAW,KAAK,OAAO;AACrB,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,IAAI;AACtC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC,OAAO;AACL,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,KAAK;AACvC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,IAAI;AACtC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC;AAAA,UACF;AACA,eAAK,WAAW,CAAC,IAAI;AACrB,iBAAO,SAAS;AAAA,QAClB;AACA,iBAAS,mBAAmB,SAAS,aAAa,QAAQ;AACxD,cAAI,MAAM,SAAS,IAAI,SAAS,gBAAgB,OAAO,IAAI;AAC3D,cAAI,UAAU,IAAI,MAAM,GAAG;AAC3B,cAAI,kBAAkB,kBAAkB,SAAS,SAAS,GAAG,QAAQ,MAAM;AAC3E,cAAI;AACF,oBAAQ,SAAS;AACnB,iBAAO;AAAA,QACT;AACA,YAAI,mBAAmB,MAAM;AAC3B,cAAI,CAAC,wBAAwB,QAAQ;AACnC,gBAAI,SAAS;AACb,gBAAI,OAAO,UAAU,eAAe,OAAO,OAAO,UAAU,YAAY;AACtE,uBAAS,OAAO,OAAO,SAAS;AAChC,kBAAI,WAAW,MAAM;AACnB,0BAAU;AAAA,cACZ;AAAA,YACF,WAAW,OAAO,YAAY,YAAY;AACxC,uBAAS,SAAS;AAClB,kBAAI,WAAW,MAAM;AACnB,0BAAU;AAAA,cACZ;AAAA,YACF;AACA,gBAAI,CAAC,QAAQ;AACX,qBAAO;AAAA,YACT;AACA,sCAA0B,mBAAmB,QAAQ,IAAI;AAAA,UAC3D;AACA,iBAAO,wBAAwB,MAAM;AAAA,QACvC;AACA,YAAI,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,WAAW;AAAA,QACvC,GAAG,UAAU,WAAW;AAAA,QACxB,GAAG,UAAU,SAAS,KAAK,KAAK;AAC9B,cAAI,KAAK,GAAG,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,IAAI;AAC7C,aAAG,eAAe,KAAK,IAAI,UAAU;AAAA,QACvC,GAAG,YAAY,EAAE,MAAM,SAAS,QAAQ;AACtC,cAAI,MAAM,IAAI,KAAK,OAAO,KAAK,IAAI;AACnC,cAAI,CAAC,KAAK;AACR,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,MAAM;AACb,iBAAO,WAAW;AAAA,QACpB,GAAG,OAAO,SAAS,QAAQ;AACzB,iBAAO,IAAI,IAAI,MAAM,OAAO,GAAG;AAAA,QACjC,GAAG,OAAO,SAAS,QAAQ;AACzB,iBAAO,IAAI,IAAI,MAAM,OAAO,GAAG;AAAA,QACjC,GAAG,MAAM,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,KAAK;AACrD,cAAI,CAAC,OAAO,OAAO,CAAC,OAAO,IAAI,IAAI,UAAU;AAC3C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY;AAChB,mBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI;AACJ,gBAAI;AACF,uBAAS,OAAO,IAAI,IAAI,SAAS,OAAO,GAAG;AAAA,YAC7C,SAAS,GAAG;AACV,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,gBAAI,WAAW,UAAU,cAAc,GAAG;AACxC,oBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,YAC3B;AACA,gBAAI,WAAW,QAAQ,WAAW;AAChC;AACF;AACA,mBAAO,SAASA,EAAC,IAAI;AAAA,UACvB;AACA,cAAI,WAAW;AACb,mBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,UACnC;AACA,iBAAO;AAAA,QACT,GAAG,OAAO,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,KAAK;AACtD,cAAI,CAAC,OAAO,OAAO,CAAC,OAAO,IAAI,IAAI,UAAU;AAC3C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACF,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,qBAAO,IAAI,IAAI,SAAS,OAAO,KAAK,OAAO,SAASA,EAAC,CAAC;AAAA,YACxD;AAAA,UACF,SAAS,GAAG;AACV,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ;AACV,mBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,UACnC;AACA,iBAAOA;AAAA,QACT,EAAE,GAAG,iBAAiB,EAAE,UAAU,SAAS,KAAK;AAC9C,iBAAO,iBAAiB;AAAA,QAC1B,GAAG,UAAU,SAAS,KAAK,KAAK;AAC9B,cAAI,QAAQ,QAAQ,QAAQ,IAAI;AAC9B,gBAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB,OAAO;AACL,gBAAI,OAAO;AACT,kBAAI,OAAO,KAAK,GAAG;AAAA,UACvB;AAAA,QACF,GAAG,OAAO,SAAS,KAAK;AACtB,cAAI,IAAI,UAAU,IAAI,OAAO,SAAS,GAAG;AACvC,gBAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB;AAAA,QACF,GAAG,cAAc,SAAS,KAAK;AAC7B,iBAAO,EAAE,SAAS,OAAO,SAAS,GAAG,SAAS,KAAK,SAAS,OAAO,MAAM,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE;AAAA,QACvL,GAAG,cAAc,SAAS,KAAK,kBAAkB,MAAM;AACrD,iBAAO;AAAA,QACT,GAAG,kBAAkB,SAAS,KAAK;AACjC,iBAAO,CAAC,IAAI,EAAE;AAAA,QAChB,EAAE,GAAG,kBAAkB,EAAE,UAAU,SAAS,KAAK,KAAK;AACpD,cAAI,QAAQ,QAAQ,QAAQ,IAAI;AAC9B,YAAAN,KAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB,OAAO;AACL,gBAAI,OAAO;AACT,kBAAI,OAAO,KAAK,GAAG;AAAA,UACvB;AAAA,QACF,GAAG,OAAO,SAAS,KAAK;AACtB,cAAI,IAAI,UAAU,IAAI,OAAO,SAAS,GAAG;AACvC,YAAAA,KAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB;AAAA,QACF,EAAE,EAAE;AACJ,YAAI,YAAY,CAAC,SAAS;AACxB,gBAAM;AAAA,QACR;AACA,YAAI,QAAQ,EAAE,WAAW,MAAM,MAAM,OAAO;AAC1C,iBAAO,MAAM,WAAW,MAAM,KAAK,QAAQ,KAAK,CAAC;AAAA,QACnD,GAAG,WAAW,QAAQW,QAAM,MAAM,KAAK;AACrC,cAAI,GAAG,SAAS,IAAI,KAAK,GAAG,OAAO,IAAI,GAAG;AACxC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,MAAM,WAAW;AACpB,kBAAM,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,SAAS,QAAQ,MAAM,SAAS,QAAQ,OAAO,MAAM,SAAS,OAAO,QAAQ,MAAM,SAAS,QAAQ,QAAQ,MAAM,SAAS,QAAQ,OAAO,MAAM,SAAS,OAAO,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,MAAM,WAAW,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,MAAM,WAAW,QAAQ,MAAM,MAAM,WAAW,MAAM,OAAO,MAAM,WAAW,OAAO,UAAU,MAAM,WAAW,UAAU,MAAM,MAAM,WAAW,MAAM,OAAO,MAAM,WAAW,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,SAAS,UAAU,MAAM,SAAS,SAAS,GAAG,QAAQ,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,GAAG,kBAAkB,EAAE;AAAA,UAC34B;AACA,cAAI,OAAO,GAAG,WAAW,QAAQA,QAAM,MAAM,GAAG;AAChD,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,iBAAK,WAAW,MAAM,UAAU,IAAI;AACpC,iBAAK,aAAa,MAAM,UAAU,IAAI;AACtC,iBAAK,WAAW,CAAC;AAAA,UACnB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,WAAW,MAAM,UAAU,KAAK;AACrC,iBAAK,aAAa,MAAM,UAAU,KAAK;AACvC,iBAAK,YAAY;AACjB,iBAAK,WAAW;AAAA,UAClB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,WAAW,MAAM,UAAU,KAAK;AACrC,iBAAK,aAAa,MAAM,UAAU,KAAK;AAAA,UACzC,WAAW,GAAG,SAAS,KAAK,IAAI,GAAG;AACjC,iBAAK,WAAW,MAAM,UAAU,OAAO;AACvC,iBAAK,aAAa,MAAM,UAAU,OAAO;AAAA,UAC3C;AACA,eAAK,YAAY,KAAK,IAAI;AAC1B,cAAI,QAAQ;AACV,mBAAO,SAASA,MAAI,IAAI;AACxB,mBAAO,YAAY,KAAK;AAAA,UAC1B;AACA,iBAAO;AAAA,QACT,GAAG,wBAAwB,MAAM;AAC/B,cAAI,CAAC,KAAK;AACR,mBAAO,IAAI,WAAW,CAAC;AACzB,cAAI,KAAK,SAAS;AAChB,mBAAO,KAAK,SAAS,SAAS,GAAG,KAAK,SAAS;AACjD,iBAAO,IAAI,WAAW,KAAK,QAAQ;AAAA,QACrC,GAAG,kBAAkB,MAAM,aAAa;AACtC,cAAI,eAAe,KAAK,WAAW,KAAK,SAAS,SAAS;AAC1D,cAAI,gBAAgB;AAClB;AACF,cAAI,wBAAwB,OAAO;AACnC,wBAAc,KAAK,IAAI,aAAa,gBAAgB,eAAe,wBAAwB,IAAI,WAAW,CAAC;AAC3G,cAAI,gBAAgB;AAClB,0BAAc,KAAK,IAAI,aAAa,GAAG;AACzC,cAAI,cAAc,KAAK;AACvB,eAAK,WAAW,IAAI,WAAW,WAAW;AAC1C,cAAI,KAAK,YAAY;AACnB,iBAAK,SAAS,IAAI,YAAY,SAAS,GAAG,KAAK,SAAS,GAAG,CAAC;AAAA,QAChE,GAAG,kBAAkB,MAAM,SAAS;AAClC,cAAI,KAAK,aAAa;AACpB;AACF,cAAI,WAAW,GAAG;AAChB,iBAAK,WAAW;AAChB,iBAAK,YAAY;AAAA,UACnB,OAAO;AACL,gBAAI,cAAc,KAAK;AACvB,iBAAK,WAAW,IAAI,WAAW,OAAO;AACtC,gBAAI,aAAa;AACf,mBAAK,SAAS,IAAI,YAAY,SAAS,GAAG,KAAK,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC;AAAA,YAC9E;AACA,iBAAK,YAAY;AAAA,UACnB;AAAA,QACF,GAAG,UAAU,EAAE,QAAQ,MAAM;AAC3B,cAAI,OAAO,CAAC;AACZ,eAAK,MAAM,GAAG,SAAS,KAAK,IAAI,IAAI,KAAK,KAAK;AAC9C,eAAK,MAAM,KAAK;AAChB,eAAK,OAAO,KAAK;AACjB,eAAK,QAAQ;AACb,eAAK,MAAM;AACX,eAAK,MAAM;AACX,eAAK,OAAO,KAAK;AACjB,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,iBAAK,OAAO;AAAA,UACd,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,OAAO,KAAK;AAAA,UACnB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,OAAO,KAAK,KAAK;AAAA,UACxB,OAAO;AACL,iBAAK,OAAO;AAAA,UACd;AACA,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,UAAU;AACf,eAAK,SAAS,KAAK,KAAK,KAAK,OAAO,KAAK,OAAO;AAChD,iBAAO;AAAA,QACT,GAAG,QAAQ,MAAM,MAAM;AACrB,cAAI,KAAK,SAAS,QAAQ;AACxB,iBAAK,OAAO,KAAK;AAAA,UACnB;AACA,cAAI,KAAK,cAAc,QAAQ;AAC7B,iBAAK,YAAY,KAAK;AAAA,UACxB;AACA,cAAI,KAAK,SAAS,QAAQ;AACxB,kBAAM,kBAAkB,MAAM,KAAK,IAAI;AAAA,UACzC;AAAA,QACF,GAAG,OAAO,QAAQA,QAAM;AACtB,gBAAM,GAAG,cAAc,EAAE;AAAA,QAC3B,GAAG,MAAM,QAAQA,QAAM,MAAM,KAAK;AAChC,iBAAO,MAAM,WAAW,QAAQA,QAAM,MAAM,GAAG;AAAA,QACjD,GAAG,OAAO,UAAU,SAAS,UAAU;AACrC,cAAI,GAAG,MAAM,SAAS,IAAI,GAAG;AAC3B,gBAAI;AACJ,gBAAI;AACF,yBAAW,GAAG,WAAW,SAAS,QAAQ;AAAA,YAC5C,SAAS,GAAG;AAAA,YACZ;AACA,gBAAI,UAAU;AACZ,uBAASL,MAAK,SAAS,UAAU;AAC/B,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF;AAAA,UACF;AACA,iBAAO,SAAS,OAAO,SAAS,SAAS,IAAI;AAC7C,mBAAS,OAAO,YAAY,KAAK,IAAI;AACrC,mBAAS,OAAO;AAChB,kBAAQ,SAAS,QAAQ,IAAI;AAC7B,kBAAQ,YAAY,SAAS,OAAO;AACpC,mBAAS,SAAS;AAAA,QACpB,GAAG,OAAO,QAAQK,QAAM;AACtB,iBAAO,OAAO,SAASA,MAAI;AAC3B,iBAAO,YAAY,KAAK,IAAI;AAAA,QAC9B,GAAG,MAAM,QAAQA,QAAM;AACrB,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,mBAASL,MAAK,KAAK,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAASK,MAAI;AAC3B,iBAAO,YAAY,KAAK,IAAI;AAAA,QAC9B,GAAG,QAAQ,MAAM;AACf,cAAI,UAAU,CAAC,KAAK,IAAI;AACxB,mBAAS,OAAO,KAAK,UAAU;AAC7B,gBAAI,CAAC,KAAK,SAAS,eAAe,GAAG,GAAG;AACtC;AAAA,YACF;AACA,oBAAQ,KAAK,GAAG;AAAA,UAClB;AACA,iBAAO;AAAA,QACT,GAAG,QAAQ,QAAQ,SAAS,SAAS;AACnC,cAAI,OAAO,MAAM,WAAW,QAAQ,SAAS,MAAM,OAAO,CAAC;AAC3D,eAAK,OAAO;AACZ,iBAAO;AAAA,QACT,GAAG,SAAS,MAAM;AAChB,cAAI,CAAC,GAAG,OAAO,KAAK,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK;AAAA,QACd,EAAE,GAAG,YAAY,EAAE,KAAK,QAAQ,QAAQ,QAAQ,QAAQ,UAAU;AAChE,cAAI,WAAW,OAAO,KAAK;AAC3B,cAAI,YAAY,OAAO,KAAK;AAC1B,mBAAO;AACT,cAAI,OAAO,KAAK,IAAI,OAAO,KAAK,YAAY,UAAU,MAAM;AAC5D,cAAI,OAAO,KAAK,SAAS,UAAU;AACjC,mBAAO,IAAI,SAAS,SAAS,UAAU,WAAW,IAAI,GAAG,MAAM;AAAA,UACjE,OAAO;AACL,qBAASL,KAAI,GAAGA,KAAI,MAAMA;AACxB,qBAAO,SAASA,EAAC,IAAI,SAAS,WAAWA,EAAC;AAAA,UAC9C;AACA,iBAAO;AAAA,QACT,GAAG,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,QAAQ;AACzD,cAAI,OAAO,WAAW,iBAAiB,EAAE,QAAQ;AAC/C,qBAAS;AAAA,UACX;AACA,cAAI,CAAC;AACH,mBAAO;AACT,cAAI,OAAO,OAAO;AAClB,eAAK,YAAY,KAAK,IAAI;AAC1B,cAAI,OAAO,aAAa,CAAC,KAAK,YAAY,KAAK,SAAS,WAAW;AACjE,gBAAI,QAAQ;AACV,mBAAK,WAAW,OAAO,SAAS,QAAQ,SAAS,MAAM;AACvD,mBAAK,YAAY;AACjB,qBAAO;AAAA,YACT,WAAW,KAAK,cAAc,KAAK,aAAa,GAAG;AACjD,mBAAK,WAAW,OAAO,MAAM,QAAQ,SAAS,MAAM;AACpD,mBAAK,YAAY;AACjB,qBAAO;AAAA,YACT,WAAW,WAAW,UAAU,KAAK,WAAW;AAC9C,mBAAK,SAAS,IAAI,OAAO,SAAS,QAAQ,SAAS,MAAM,GAAG,QAAQ;AACpE,qBAAO;AAAA,YACT;AAAA,UACF;AACA,gBAAM,kBAAkB,MAAM,WAAW,MAAM;AAC/C,cAAI,KAAK,SAAS,YAAY,OAAO,UAAU;AAC7C,iBAAK,SAAS,IAAI,OAAO,SAAS,QAAQ,SAAS,MAAM,GAAG,QAAQ;AAAA,UACtE,OAAO;AACL,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,mBAAK,SAAS,WAAWA,EAAC,IAAI,OAAO,SAASA,EAAC;AAAA,YACjD;AAAA,UACF;AACA,eAAK,YAAY,KAAK,IAAI,KAAK,WAAW,WAAW,MAAM;AAC3D,iBAAO;AAAA,QACT,GAAG,OAAO,QAAQ,QAAQ,QAAQ;AAChC,cAAI,WAAW;AACf,cAAI,WAAW,GAAG;AAChB,wBAAY,OAAO;AAAA,UACrB,WAAW,WAAW,GAAG;AACvB,gBAAI,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAC/B,0BAAY,OAAO,KAAK;AAAA,YAC1B;AAAA,UACF;AACA,cAAI,WAAW,GAAG;AAChB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,QAAQ,QAAQ,QAAQ;AAClC,gBAAM,kBAAkB,OAAO,MAAM,SAAS,MAAM;AACpD,iBAAO,KAAK,YAAY,KAAK,IAAI,OAAO,KAAK,WAAW,SAAS,MAAM;AAAA,QACzE,GAAG,KAAK,QAAQ,QAAQ,UAAU,MAAM,OAAO;AAC7C,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAChC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI;AACJ,cAAI,WAAW,OAAO,KAAK;AAC3B,cAAI,EAAE,QAAQ,MAAM,SAAS,WAAW,iBAAiB,EAAE,QAAQ;AACjE,wBAAY;AACZ,kBAAM,SAAS;AAAA,UACjB,OAAO;AACL,gBAAI,WAAW,KAAK,WAAW,SAAS,SAAS,QAAQ;AACvD,kBAAI,SAAS,UAAU;AACrB,2BAAW,SAAS,SAAS,UAAU,WAAW,MAAM;AAAA,cAC1D,OAAO;AACL,2BAAW,MAAM,UAAU,MAAM,KAAK,UAAU,UAAU,WAAW,MAAM;AAAA,cAC7E;AAAA,YACF;AACA,wBAAY;AACZ,kBAAM,UAAU,MAAM;AACtB,gBAAI,CAAC,KAAK;AACR,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,6BAAiB,EAAE,IAAI,UAAU,QAAQ,CAAC;AAAA,UAC5C;AACA,iBAAO,EAAE,KAAK,UAAU;AAAA,QAC1B,GAAG,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,WAAW;AAClD,gBAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,QAAQ,QAAQ,KAAK;AAC/D,iBAAO;AAAA,QACT,EAAE,EAAE;AACJ,YAAI,YAAY,CAAC,KAAK,QAAQ,SAAS,aAAa;AAClD,cAAI,MAAM,CAAC,WAAW,uBAAuB,MAAM,GAAG,EAAE,IAAI;AAC5D,oBAAU,KAAK,CAAC,gBAAgB;AAC9B,YAAAL,QAAO,aAAa,sBAAsB,GAAG,4BAA4B;AACzE,mBAAO,IAAI,WAAW,WAAW,CAAC;AAClC,gBAAI;AACF,kCAAoB,GAAG;AAAA,UAC3B,GAAG,CAAC,UAAU;AACZ,gBAAI,SAAS;AACX,sBAAQ;AAAA,YACV,OAAO;AACL,oBAAM,sBAAsB,GAAG;AAAA,YACjC;AAAA,UACF,CAAC;AACD,cAAI;AACF,6BAAiB,GAAG;AAAA,QACxB;AACA,YAAI,iBAAiBH,QAAO,gBAAgB,KAAK,CAAC;AAClD,iBAAS,0BAA0B,WAAW,UAAU,QAAQ,SAAS;AACvE,cAAI,OAAO,WAAW;AACpB,oBAAQ,KAAK;AACf,cAAI,UAAU;AACd,yBAAe,QAAQ,SAAS,QAAQ;AACtC,gBAAI;AACF;AACF,gBAAI,OAAO,WAAW,EAAE,QAAQ,GAAG;AACjC,qBAAO,QAAQ,EAAE,WAAW,UAAU,QAAQ,OAAO;AACrD,wBAAU;AAAA,YACZ;AAAA,UACF,CAAC;AACD,iBAAO;AAAA,QACT;AACA,iBAAS,uBAAuB,QAAQa,QAAM,KAAK,SAAS,UAAU,QAAQ,SAAS,gBAAgB,QAAQ,WAAW;AACxH,cAAI,WAAWA,SAAO,QAAQ,QAAQ,KAAK,MAAM,QAAQA,MAAI,CAAC,IAAI;AAClE,cAAI,MAAM,uBAAuB,MAAM,QAAQ,EAAE;AACjD,mBAAS,YAAY,WAAW;AAC9B,qBAAS,OAAO,YAAY;AAC1B,kBAAI;AACF,0BAAU;AACZ,kBAAI,CAAC,gBAAgB;AACnB,mBAAG,eAAe,QAAQA,QAAM,YAAY,SAAS,UAAU,MAAM;AAAA,cACvE;AACA,kBAAI;AACF,uBAAO;AACT,kCAAoB,GAAG;AAAA,YACzB;AACA,gBAAI,0BAA0B,WAAW,UAAU,QAAQ,MAAM;AAC/D,kBAAI;AACF,wBAAQ;AACV,kCAAoB,GAAG;AAAA,YACzB,CAAC,GAAG;AACF;AAAA,YACF;AACA,mBAAO,SAAS;AAAA,UAClB;AACA,2BAAiB,GAAG;AACpB,cAAI,OAAO,OAAO,UAAU;AAC1B,sBAAU,KAAK,CAAC,cAAc,YAAY,SAAS,GAAG,OAAO;AAAA,UAC/D,OAAO;AACL,wBAAY,GAAG;AAAA,UACjB;AAAA,QACF;AACA,iBAAS,qBAAqB,KAAK;AACjC,cAAI,YAAY,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,MAAM,KAAK,GAAG,MAAM,MAAM,KAAK,GAAG,KAAK,OAAO,KAAK,GAAG,MAAM,OAAO,KAAK,EAAE;AAClH,cAAI,QAAQ,UAAU,GAAG;AACzB,cAAI,OAAO,SAAS,aAAa;AAC/B,kBAAM,IAAI,MAAM,2BAA2B,GAAG,EAAE;AAAA,UAClD;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,SAAS,UAAU;AACrC,cAAI,OAAO;AACX,cAAI;AACF,oBAAQ,MAAM;AAChB,cAAI;AACF,oBAAQ;AACV,iBAAO;AAAA,QACT;AACA,YAAI,KAAK,EAAE,MAAM,MAAM,QAAQ,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,GAAG,WAAW,GAAG,WAAW,MAAM,aAAa,KAAK,aAAa,OAAO,mBAAmB,MAAM,YAAY,MAAM,eAAe,CAAC,GAAG,aAAa,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,OAAO,CAAC,MAAM;AACrQ,iBAAO,QAAQ,QAAQ,IAAI;AAC3B,cAAI,CAAC;AACH,mBAAO,EAAE,MAAM,IAAI,MAAM,KAAK;AAChC,cAAI,WAAW,EAAE,cAAc,MAAM,eAAe,EAAE;AACtD,iBAAO,OAAO,OAAO,UAAU,IAAI;AACnC,cAAI,KAAK,gBAAgB,GAAG;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ,KAAK,MAAM,GAAG,EAAE,OAAO,CAACJ,OAAM,CAAC,CAACA,EAAC;AAC7C,cAAI,UAAU,GAAG;AACjB,cAAI,eAAe;AACnB,mBAASD,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK;AACrC,gBAAI,SAASA,OAAM,MAAM,SAAS;AAClC,gBAAI,UAAU,KAAK,QAAQ;AACzB;AAAA,YACF;AACA,sBAAU,GAAG,WAAW,SAAS,MAAMA,EAAC,CAAC;AACzC,2BAAe,KAAK,MAAM,cAAc,MAAMA,EAAC,CAAC;AAChD,gBAAI,GAAG,aAAa,OAAO,GAAG;AAC5B,kBAAI,CAAC,UAAU,UAAU,KAAK,cAAc;AAC1C,0BAAU,QAAQ,QAAQ;AAAA,cAC5B;AAAA,YACF;AACA,gBAAI,CAAC,UAAU,KAAK,QAAQ;AAC1B,kBAAI,QAAQ;AACZ,qBAAO,GAAG,OAAO,QAAQ,IAAI,GAAG;AAC9B,oBAAI,OAAO,GAAG,SAAS,YAAY;AACnC,+BAAe,QAAQ,QAAQ,KAAK,QAAQ,YAAY,GAAG,IAAI;AAC/D,oBAAI,SAAS,GAAG,WAAW,cAAc,EAAE,eAAe,KAAK,gBAAgB,EAAE,CAAC;AAClF,0BAAU,OAAO;AACjB,oBAAI,UAAU,IAAI;AAChB,wBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,gBAC5B;AAAA,cACF;AAAA,YACF;AAAA,UACF;AACA,iBAAO,EAAE,MAAM,cAAc,MAAM,QAAQ;AAAA,QAC7C,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI;AACJ,iBAAO,MAAM;AACX,gBAAI,GAAG,OAAO,IAAI,GAAG;AACnB,kBAAI,QAAQ,KAAK,MAAM;AACvB,kBAAI,CAAC;AACH,uBAAO;AACT,qBAAO,MAAM,MAAM,SAAS,CAAC,MAAM,MAAM,GAAG,KAAK,IAAI,IAAI,KAAK,QAAQ;AAAA,YACxE;AACA,mBAAO,OAAO,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK;AAC5C,mBAAO,KAAK;AAAA,UACd;AAAA,QACF,GAAG,UAAU,CAAC,UAAUK,WAAS;AAC/B,cAAI,OAAO;AACX,mBAASL,KAAI,GAAGA,KAAIK,OAAK,QAAQL,MAAK;AACpC,oBAAQ,QAAQ,KAAK,OAAOK,OAAK,WAAWL,EAAC,IAAI;AAAA,UACnD;AACA,kBAAQ,WAAW,SAAS,KAAK,GAAG,UAAU;AAAA,QAChD,GAAG,aAAa,CAAC,SAAS;AACxB,cAAI,OAAO,GAAG,SAAS,KAAK,OAAO,IAAI,KAAK,IAAI;AAChD,eAAK,YAAY,GAAG,UAAU,IAAI;AAClC,aAAG,UAAU,IAAI,IAAI;AAAA,QACvB,GAAG,gBAAgB,CAAC,SAAS;AAC3B,cAAI,OAAO,GAAG,SAAS,KAAK,OAAO,IAAI,KAAK,IAAI;AAChD,cAAI,GAAG,UAAU,IAAI,MAAM,MAAM;AAC/B,eAAG,UAAU,IAAI,IAAI,KAAK;AAAA,UAC5B,OAAO;AACL,gBAAI,UAAU,GAAG,UAAU,IAAI;AAC/B,mBAAO,SAAS;AACd,kBAAI,QAAQ,cAAc,MAAM;AAC9B,wBAAQ,YAAY,KAAK;AACzB;AAAA,cACF;AACA,wBAAU,QAAQ;AAAA,YACpB;AAAA,UACF;AAAA,QACF,GAAG,YAAY,CAAC,QAAQK,WAAS;AAC/B,cAAI,UAAU,GAAG,UAAU,MAAM;AACjC,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,SAAS,MAAM;AAAA,UACzC;AACA,cAAI,OAAO,GAAG,SAAS,OAAO,IAAIA,MAAI;AACtC,mBAAS,OAAO,GAAG,UAAU,IAAI,GAAG,MAAM,OAAO,KAAK,WAAW;AAC/D,gBAAI,WAAW,KAAK;AACpB,gBAAI,KAAK,OAAO,OAAO,OAAO,MAAM,aAAaA,QAAM;AACrD,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO,GAAG,OAAO,QAAQA,MAAI;AAAA,QAC/B,GAAG,YAAY,CAAC,QAAQA,QAAM,MAAM,SAAS;AAC3C,cAAI,OAAO,IAAI,GAAG,OAAO,QAAQA,QAAM,MAAM,IAAI;AACjD,aAAG,YAAY,IAAI;AACnB,iBAAO;AAAA,QACT,GAAG,aAAa,CAAC,SAAS;AACxB,aAAG,eAAe,IAAI;AAAA,QACxB,GAAG,QAAQ,CAAC,SAAS,SAAS,KAAK,QAAQ,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,QAAQ,CAAC,UAAU,OAAO,WAAW,OAAO,OAAO,CAAC,UAAU,OAAO,WAAW,OAAO,QAAQ,CAAC,UAAU,OAAO,WAAW,OAAO,UAAU,CAAC,UAAU,OAAO,WAAW,MAAM,UAAU,CAAC,UAAU,OAAO,WAAW,OAAO,QAAQ,CAAC,UAAU,OAAO,WAAW,MAAM,UAAU,CAAC,UAAU,OAAO,WAAW,OAAO,yBAAyB,CAAC,SAAS;AAC3a,cAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,EAAE,OAAO,CAAC;AACrC,cAAI,OAAO,KAAK;AACd,qBAAS;AAAA,UACX;AACA,iBAAO;AAAA,QACT,GAAG,iBAAiB,CAAC,MAAM,UAAU;AACnC,cAAI,GAAG,mBAAmB;AACxB,mBAAO;AAAA,UACT;AACA,cAAI,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,MAAM;AAC7C,mBAAO;AAAA,UACT,WAAW,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,MAAM;AACpD,mBAAO;AAAA,UACT,WAAW,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,KAAK;AACnD,mBAAO;AAAA,UACT;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,QAAQ;AACrB,cAAI,UAAU,GAAG,gBAAgB,KAAK,GAAG;AACzC,cAAI;AACF,mBAAO;AACT,cAAI,CAAC,IAAI,SAAS;AAChB,mBAAO;AACT,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,KAAKA,WAAS;AAC3B,cAAI;AACF,gBAAI,OAAO,GAAG,WAAW,KAAKA,MAAI;AAClC,mBAAO;AAAA,UACT,SAAS,GAAG;AAAA,UACZ;AACA,iBAAO,GAAG,gBAAgB,KAAK,IAAI;AAAA,QACrC,GAAG,WAAW,CAAC,KAAKA,QAAM,UAAU;AAClC,cAAI;AACJ,cAAI;AACF,mBAAO,GAAG,WAAW,KAAKA,MAAI;AAAA,UAChC,SAAS,GAAG;AACV,mBAAO,EAAE;AAAA,UACX;AACA,cAAI,UAAU,GAAG,gBAAgB,KAAK,IAAI;AAC1C,cAAI,SAAS;AACX,mBAAO;AAAA,UACT;AACA,cAAI,OAAO;AACT,gBAAI,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACxB,qBAAO;AAAA,YACT;AACA,gBAAI,GAAG,OAAO,IAAI,KAAK,GAAG,QAAQ,IAAI,MAAM,GAAG,IAAI,GAAG;AACpD,qBAAO;AAAA,YACT;AAAA,UACF,OAAO;AACL,gBAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,CAAC,MAAM,UAAU;AAC3B,cAAI,CAAC,MAAM;AACT,mBAAO;AAAA,UACT;AACA,cAAI,GAAG,OAAO,KAAK,IAAI,GAAG;AACxB,mBAAO;AAAA,UACT,WAAW,GAAG,MAAM,KAAK,IAAI,GAAG;AAC9B,gBAAI,GAAG,wBAAwB,KAAK,MAAM,OAAO,QAAQ,KAAK;AAC5D,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO,GAAG,gBAAgB,MAAM,GAAG,wBAAwB,KAAK,CAAC;AAAA,QACnE,GAAG,cAAc,MAAM,QAAQ,MAAM;AACnC,mBAAS,KAAK,GAAG,MAAM,GAAG,cAAc,MAAM;AAC5C,gBAAI,CAAC,GAAG,QAAQ,EAAE,GAAG;AACnB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,gBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,QAC5B,GAAG,kBAAkB,CAAC,OAAO;AAC3B,cAAI,SAAS,GAAG,UAAU,EAAE;AAC5B,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,OAAO,GAAG,QAAQ,EAAE,GAAG,cAAc,CAAC,QAAQ,KAAK,OAAO;AACvE,cAAI,CAAC,GAAG,UAAU;AAChB,eAAG,WAAW,WAAW;AACvB,mBAAK,SAAS,CAAC;AAAA,YACjB;AACA,eAAG,SAAS,YAAY,CAAC;AACzB,mBAAO,iBAAiB,GAAG,SAAS,WAAW,EAAE,QAAQ,EAAE,MAAM;AAC/D,qBAAO,KAAK;AAAA,YACd,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO;AAAA,YACd,EAAE,GAAG,QAAQ,EAAE,MAAM;AACnB,sBAAQ,KAAK,QAAQ,aAAa;AAAA,YACpC,EAAE,GAAG,SAAS,EAAE,MAAM;AACpB,sBAAQ,KAAK,QAAQ,aAAa;AAAA,YACpC,EAAE,GAAG,UAAU,EAAE,MAAM;AACrB,qBAAO,KAAK,QAAQ;AAAA,YACtB,EAAE,GAAG,OAAO,EAAE,MAAM;AAClB,qBAAO,KAAK,OAAO;AAAA,YACrB,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO,QAAQ;AAAA,YACtB,EAAE,GAAG,UAAU,EAAE,MAAM;AACrB,qBAAO,KAAK,OAAO;AAAA,YACrB,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO,WAAW;AAAA,YACzB,EAAE,EAAE,CAAC;AAAA,UACP;AACA,mBAAS,OAAO,OAAO,IAAI,GAAG,SAAS,GAAG,MAAM;AAChD,cAAI,MAAM,IAAI;AACZ,iBAAK,GAAG,OAAO;AAAA,UACjB;AACA,iBAAO,KAAK;AACZ,aAAG,QAAQ,EAAE,IAAI;AACjB,iBAAO;AAAA,QACT,GAAG,aAAa,CAAC,OAAO;AACtB,aAAG,QAAQ,EAAE,IAAI;AAAA,QACnB,GAAG,mBAAmB,EAAE,MAAM,CAAC,WAAW;AACxC,cAAI,SAAS,GAAG,UAAU,OAAO,KAAK,IAAI;AAC1C,iBAAO,aAAa,OAAO;AAC3B,cAAI,OAAO,WAAW,MAAM;AAC1B,mBAAO,WAAW,KAAK,MAAM;AAAA,UAC/B;AAAA,QACF,GAAG,QAAQ,MAAM;AACf,gBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,QAC5B,EAAE,GAAG,OAAO,CAAC,QAAQ,OAAO,GAAG,OAAO,CAAC,QAAQ,MAAM,KAAK,SAAS,CAAC,IAAI,OAAO,MAAM,IAAI,IAAI,gBAAgB,CAAC,KAAK,QAAQ;AACzH,aAAG,QAAQ,GAAG,IAAI,EAAE,YAAY,IAAI;AAAA,QACtC,GAAG,WAAW,CAAC,QAAQ,GAAG,QAAQ,GAAG,GAAG,WAAW,CAAC,UAAU;AAC5D,cAAI,SAAS,CAAC;AACd,cAAI,QAAQ,CAAC,KAAK;AAClB,iBAAO,MAAM,QAAQ;AACnB,gBAAI,IAAI,MAAM,IAAI;AAClB,mBAAO,KAAK,CAAC;AACb,kBAAM,KAAK,MAAM,OAAO,EAAE,MAAM;AAAA,UAClC;AACA,iBAAO;AAAA,QACT,GAAG,QAAQ,CAAC,UAAU,aAAa;AACjC,cAAI,OAAO,YAAY,YAAY;AACjC,uBAAW;AACX,uBAAW;AAAA,UACb;AACA,aAAG;AACH,cAAI,GAAG,iBAAiB,GAAG;AACzB,YAAAX,KAAI,YAAY,GAAG,cAAc,yEAAyE;AAAA,UAC5G;AACA,cAAI,SAAS,GAAG,UAAU,GAAG,KAAK,KAAK;AACvC,cAAI,YAAY;AAChB,mBAAS,WAAW,SAAS;AAC3B,eAAG;AACH,mBAAO,SAAS,OAAO;AAAA,UACzB;AACA,mBAAS,KAAK,SAAS;AACrB,gBAAI,SAAS;AACX,kBAAI,CAAC,KAAK,SAAS;AACjB,qBAAK,UAAU;AACf,uBAAO,WAAW,OAAO;AAAA,cAC3B;AACA;AAAA,YACF;AACA,gBAAI,EAAE,aAAa,OAAO,QAAQ;AAChC,yBAAW,IAAI;AAAA,YACjB;AAAA,UACF;AACA,iBAAO,QAAQ,CAAC,UAAU;AACxB,gBAAI,CAAC,MAAM,KAAK,QAAQ;AACtB,qBAAO,KAAK,IAAI;AAAA,YAClB;AACA,kBAAM,KAAK,OAAO,OAAO,UAAU,IAAI;AAAA,UACzC,CAAC;AAAA,QACH,GAAG,OAAO,CAAC,MAAM,MAAM,eAAe;AACpC,cAAI,OAAO,eAAe;AAC1B,cAAI,SAAS,CAAC;AACd,cAAI;AACJ,cAAI,QAAQ,GAAG,MAAM;AACnB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B,WAAW,CAAC,QAAQ,CAAC,QAAQ;AAC3B,gBAAI,SAAS,GAAG,WAAW,YAAY,EAAE,cAAc,MAAM,CAAC;AAC9D,yBAAa,OAAO;AACpB,mBAAO,OAAO;AACd,gBAAI,GAAG,aAAa,IAAI,GAAG;AACzB,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,gBAAI,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACxB,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AAAA,UACF;AACA,cAAI,QAAQ,EAAE,MAAM,MAAM,YAAY,QAAQ,CAAC,EAAE;AACjD,cAAI,YAAY,KAAK,MAAM,KAAK;AAChC,oBAAU,QAAQ;AAClB,gBAAM,OAAO;AACb,cAAI,MAAM;AACR,eAAG,OAAO;AAAA,UACZ,WAAW,MAAM;AACf,iBAAK,UAAU;AACf,gBAAI,KAAK,OAAO;AACd,mBAAK,MAAM,OAAO,KAAK,KAAK;AAAA,YAC9B;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,CAAC,eAAe;AAC1B,cAAI,SAAS,GAAG,WAAW,YAAY,EAAE,cAAc,MAAM,CAAC;AAC9D,cAAI,CAAC,GAAG,aAAa,OAAO,IAAI,GAAG;AACjC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,OAAO,OAAO;AAClB,cAAI,QAAQ,KAAK;AACjB,cAAI,SAAS,GAAG,UAAU,KAAK;AAC/B,iBAAO,KAAK,GAAG,SAAS,EAAE,QAAQ,CAAC,SAAS;AAC1C,gBAAI,UAAU,GAAG,UAAU,IAAI;AAC/B,mBAAO,SAAS;AACd,kBAAI,OAAO,QAAQ;AACnB,kBAAI,OAAO,SAAS,QAAQ,KAAK,GAAG;AAClC,mBAAG,YAAY,OAAO;AAAA,cACxB;AACA,wBAAU;AAAA,YACZ;AAAA,UACF,CAAC;AACD,eAAK,UAAU;AACf,cAAI,MAAM,KAAK,MAAM,OAAO,QAAQ,KAAK;AACzC,eAAK,MAAM,OAAO,OAAO,KAAK,CAAC;AAAA,QACjC,GAAG,QAAQ,CAAC,QAAQW,WAAS,OAAO,SAAS,OAAO,QAAQA,MAAI,GAAG,OAAO,CAAC,MAAM,MAAM,QAAQ;AAC7F,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAIA,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,CAACA,UAAQA,WAAS,OAAOA,WAAS,MAAM;AAC1C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,UAAU,QAAQA,MAAI;AACvC,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,OAAO;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAAS,MAAM,QAAQA,QAAM,MAAM,GAAG;AAAA,QACtD,GAAG,QAAQ,CAAC,MAAM,SAAS;AACzB,iBAAO,SAAS,SAAS,OAAO;AAChC,kBAAQ;AACR,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAAA,QAC/B,GAAG,OAAO,CAAC,MAAM,SAAS;AACxB,iBAAO,SAAS,SAAS,OAAO;AAChC,kBAAQ,MAAM;AACd,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAAA,QAC/B,GAAG,WAAW,CAAC,MAAM,SAAS;AAC5B,cAAI,OAAO,KAAK,MAAM,GAAG;AACzB,cAAI,IAAI;AACR,mBAASL,KAAI,GAAGA,KAAI,KAAK,QAAQ,EAAEA,IAAG;AACpC,gBAAI,CAAC,KAAKA,EAAC;AACT;AACF,iBAAK,MAAM,KAAKA,EAAC;AACjB,gBAAI;AACF,iBAAG,MAAM,GAAG,IAAI;AAAA,YAClB,SAAS,GAAG;AACV,kBAAI,EAAE,SAAS;AACb,sBAAM;AAAA,YACV;AAAA,UACF;AAAA,QACF,GAAG,OAAO,CAAC,MAAM,MAAM,QAAQ;AAC7B,cAAI,OAAO,OAAO,aAAa;AAC7B,kBAAM;AACN,mBAAO;AAAA,UACT;AACA,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,GAAG;AAAA,QACjC,GAAG,SAAS,CAAC,SAAS,YAAY;AAChC,cAAI,CAAC,QAAQ,QAAQ,OAAO,GAAG;AAC7B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,SAAS,GAAG,WAAW,SAAS,EAAE,QAAQ,KAAK,CAAC;AACpD,cAAI,SAAS,OAAO;AACpB,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,KAAK,SAAS,OAAO;AACnC,cAAI,UAAU,GAAG,UAAU,QAAQ,OAAO;AAC1C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,SAAS;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAAS,QAAQ,QAAQ,SAAS,OAAO;AAAA,QACzD,GAAG,QAAQ,CAAC,UAAU,aAAa;AACjC,cAAI,cAAc,KAAK,QAAQ,QAAQ;AACvC,cAAI,cAAc,KAAK,QAAQ,QAAQ;AACvC,cAAI,WAAW,KAAK,SAAS,QAAQ;AACrC,cAAI,WAAW,KAAK,SAAS,QAAQ;AACrC,cAAI,QAAQ,SAAS;AACrB,mBAAS,GAAG,WAAW,UAAU,EAAE,QAAQ,KAAK,CAAC;AACjD,oBAAU,OAAO;AACjB,mBAAS,GAAG,WAAW,UAAU,EAAE,QAAQ,KAAK,CAAC;AACjD,oBAAU,OAAO;AACjB,cAAI,CAAC,WAAW,CAAC;AACf,kBAAM,IAAI,GAAG,WAAW,EAAE;AAC5B,cAAI,QAAQ,UAAU,QAAQ,OAAO;AACnC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,WAAW,GAAG,WAAW,SAAS,QAAQ;AAC9C,cAAI,WAAW,QAAQ,SAAS,UAAU,WAAW;AACrD,cAAI,SAAS,OAAO,CAAC,MAAM,KAAK;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,qBAAW,QAAQ,SAAS,UAAU,WAAW;AACjD,cAAI,SAAS,OAAO,CAAC,MAAM,KAAK;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI;AACF,uBAAW,GAAG,WAAW,SAAS,QAAQ;AAAA,UAC5C,SAAS,GAAG;AAAA,UACZ;AACA,cAAI,aAAa,UAAU;AACzB;AAAA,UACF;AACA,cAAI,QAAQ,GAAG,MAAM,SAAS,IAAI;AAClC,cAAI,UAAU,GAAG,UAAU,SAAS,UAAU,KAAK;AACnD,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,oBAAU,WAAW,GAAG,UAAU,SAAS,UAAU,KAAK,IAAI,GAAG,UAAU,SAAS,QAAQ;AAC5F,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,QAAQ,SAAS,QAAQ;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,QAAQ,KAAK,YAAY,GAAG,aAAa,QAAQ,GAAG;AACtE,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY,SAAS;AACvB,sBAAU,GAAG,gBAAgB,SAAS,GAAG;AACzC,gBAAI,SAAS;AACX,oBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,YACjC;AAAA,UACF;AACA,aAAG,eAAe,QAAQ;AAC1B,cAAI;AACF,oBAAQ,SAAS,OAAO,UAAU,SAAS,QAAQ;AAAA,UACrD,SAAS,GAAG;AACV,kBAAM;AAAA,UACR,UAAE;AACA,eAAG,YAAY,QAAQ;AAAA,UACzB;AAAA,QACF,GAAG,OAAO,CAAC,SAAS;AAClB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAIK,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,cAAI,UAAU,GAAG,UAAU,QAAQA,QAAM,IAAI;AAC7C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,OAAO;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,SAAS,MAAM,QAAQA,MAAI;AAClC,aAAG,YAAY,IAAI;AAAA,QACrB,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK,SAAS,QAAQ,IAAI;AAAA,QACnC,GAAG,QAAQ,CAAC,SAAS;AACnB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAIA,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,cAAI,UAAU,GAAG,UAAU,QAAQA,QAAM,KAAK;AAC9C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,QAAQ;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,SAAS,OAAO,QAAQA,MAAI;AACnC,aAAG,YAAY,IAAI;AAAA,QACrB,GAAG,UAAU,CAAC,SAAS;AACrB,cAAI,SAAS,GAAG,WAAW,IAAI;AAC/B,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,KAAK,SAAS,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,QAAQ,QAAQ,GAAG,QAAQ,KAAK,MAAM,GAAG,KAAK,SAAS,SAAS,IAAI,CAAC;AAAA,QAC9E,GAAG,MAAM,CAAC,MAAM,eAAe;AAC7B,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK,SAAS,QAAQ,IAAI;AAAA,QACnC,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,MAAM,eAAe;AAC1E,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,MAAM,OAAO,OAAO,KAAK,OAAO,CAAC,MAAM,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QAC9F,GAAG,QAAQ,CAAC,MAAM,SAAS;AACzB,aAAG,MAAM,MAAM,MAAM,IAAI;AAAA,QAC3B,GAAG,QAAQ,CAAC,IAAI,SAAS;AACvB,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,aAAG,MAAM,OAAO,MAAM,IAAI;AAAA,QAC5B,GAAG,OAAO,CAAC,MAAM,KAAK,KAAK,eAAe;AACxC,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QACvD,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ;AAC7B,aAAG,MAAM,MAAM,KAAK,KAAK,IAAI;AAAA,QAC/B,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ;AAC3B,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,aAAG,MAAM,OAAO,MAAM,KAAK,GAAG;AAAA,QAChC,GAAG,UAAU,CAAC,MAAM,QAAQ;AAC1B,cAAI,MAAM,GAAG;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,GAAG,OAAO,KAAK,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,gBAAgB,MAAM,GAAG;AAC1C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,MAAM,KAAK,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QAClE,GAAG,WAAW,CAAC,IAAI,QAAQ;AACzB,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,aAAG,SAAS,OAAO,MAAM,GAAG;AAAA,QAC9B,GAAG,OAAO,CAAC,MAAM,OAAO,UAAU;AAChC,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,OAAO;AAClB,eAAK,SAAS,QAAQ,MAAM,EAAE,WAAW,KAAK,IAAI,OAAO,KAAK,EAAE,CAAC;AAAA,QACnE,GAAG,MAAM,CAAC,MAAM,OAAO,SAAS;AAC9B,cAAI,SAAS,IAAI;AACf,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,kBAAQ,OAAO,SAAS,WAAW,qBAAqB,KAAK,IAAI;AACjE,iBAAO,OAAO,QAAQ,cAAc,MAAM;AAC1C,cAAI,QAAQ,IAAI;AACd,mBAAO,OAAO,OAAO;AAAA,UACvB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,mBAAO;AAAA,UACT,OAAO;AACL,mBAAO,KAAK,UAAU,IAAI;AAC1B,gBAAI;AACF,kBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,EAAE,QAAQ,QAAQ,CAAC;AAC9D,qBAAO,OAAO;AAAA,YAChB,SAAS,GAAG;AAAA,YACZ;AAAA,UACF;AACA,cAAI,UAAU;AACd,cAAI,QAAQ,IAAI;AACd,gBAAI,MAAM;AACR,kBAAI,QAAQ,KAAK;AACf,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF,OAAO;AACL,qBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAC7B,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,KAAK,IAAI,GAAG;AAC1B,qBAAS,CAAC;AAAA,UACZ;AACA,cAAI,QAAQ,SAAS,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACzC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,SAAS;AACZ,gBAAI,UAAU,GAAG,QAAQ,MAAM,KAAK;AACpC,gBAAI,SAAS;AACX,oBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,YACjC;AAAA,UACF;AACA,cAAI,QAAQ,OAAO,CAAC,SAAS;AAC3B,eAAG,SAAS,MAAM,CAAC;AAAA,UACrB;AACA,mBAAS,EAAE,MAAM,MAAM;AACvB,cAAI,SAAS,GAAG,aAAa,EAAE,MAAM,MAAM,GAAG,QAAQ,IAAI,GAAG,OAAO,UAAU,MAAM,UAAU,GAAG,YAAY,KAAK,YAAY,UAAU,CAAC,GAAG,OAAO,MAAM,CAAC;AAC1J,cAAI,OAAO,WAAW,MAAM;AAC1B,mBAAO,WAAW,KAAK,MAAM;AAAA,UAC/B;AACA,cAAIb,QAAO,cAAc,KAAK,EAAE,QAAQ,IAAI;AAC1C,gBAAI,CAAC,GAAG;AACN,iBAAG,YAAY,CAAC;AAClB,gBAAI,EAAE,QAAQ,GAAG,YAAY;AAC3B,iBAAG,UAAU,IAAI,IAAI;AAAA,YACvB;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,OAAO,CAAC,WAAW;AACpB,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,OAAO;AACT,mBAAO,WAAW;AACpB,cAAI;AACF,gBAAI,OAAO,WAAW,OAAO;AAC3B,qBAAO,WAAW,MAAM,MAAM;AAAA,YAChC;AAAA,UACF,SAAS,GAAG;AACV,kBAAM;AAAA,UACR,UAAE;AACA,eAAG,YAAY,OAAO,EAAE;AAAA,UAC1B;AACA,iBAAO,KAAK;AAAA,QACd,GAAG,UAAU,CAAC,WAAW,OAAO,OAAO,MAAM,QAAQ,CAAC,QAAQ,QAAQ,WAAW;AAC/E,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,OAAO,YAAY,CAAC,OAAO,WAAW,QAAQ;AACjD,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,KAAK,UAAU,KAAK,UAAU,GAAG;AAC7C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,WAAW,OAAO,WAAW,OAAO,QAAQ,QAAQ,MAAM;AACjE,iBAAO,WAAW,CAAC;AACnB,iBAAO,OAAO;AAAA,QAChB,GAAG,MAAM,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,aAAa;AACrD,cAAI,SAAS,KAAK,WAAW,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,MAAM;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,OAAO,YAAY;AACjC,cAAI,CAAC,SAAS;AACZ,uBAAW,OAAO;AAAA,UACpB,WAAW,CAAC,OAAO,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY,OAAO,WAAW,KAAK,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAC/E,cAAI,CAAC;AACH,mBAAO,YAAY;AACrB,iBAAO;AAAA,QACT,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,WAAW;AAC9D,cAAI,SAAS,KAAK,WAAW,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,OAAO,YAAY,OAAO,QAAQ,MAAM;AAC1C,eAAG,OAAO,QAAQ,GAAG,CAAC;AAAA,UACxB;AACA,cAAI,UAAU,OAAO,YAAY;AACjC,cAAI,CAAC,SAAS;AACZ,uBAAW,OAAO;AAAA,UACpB,WAAW,CAAC,OAAO,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,eAAe,OAAO,WAAW,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,MAAM;AAC3F,cAAI,CAAC;AACH,mBAAO,YAAY;AACrB,iBAAO;AAAA,QACT,GAAG,UAAU,CAAC,QAAQ,QAAQ,WAAW;AACvC,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,SAAS,KAAK,UAAU,GAAG;AAC7B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,KAAK,CAAC,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC/D,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,UAAU;AAC/B,kBAAM,IAAI,GAAG,WAAW,GAAG;AAAA,UAC7B;AACA,iBAAO,WAAW,SAAS,QAAQ,QAAQ,MAAM;AAAA,QACnD,GAAG,MAAM,CAAC,QAAQ,QAAQ,UAAU,MAAM,UAAU;AAClD,eAAK,OAAO,OAAO,MAAM,QAAQ,OAAO,MAAM,OAAO,QAAQ,aAAa,GAAG;AAC3E,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,OAAO,WAAW,MAAM;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,WAAW,KAAK,QAAQ,QAAQ,UAAU,MAAM,KAAK;AAAA,QACrE,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,cAAc;AACvD,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,mBAAO;AAAA,UACT;AACA,iBAAO,OAAO,WAAW,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,SAAS;AAAA,QAC1E,GAAG,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ;AACrD,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,WAAW,MAAM,QAAQ,KAAK,GAAG;AAAA,QACjD,GAAG,UAAU,CAAC,MAAM,OAAO,CAAC,MAAM;AAChC,eAAK,QAAQ,KAAK,SAAS;AAC3B,eAAK,WAAW,KAAK,YAAY;AACjC,cAAI,KAAK,aAAa,UAAU,KAAK,aAAa,UAAU;AAC1D,kBAAM,IAAI,MAAM,0BAA0B,KAAK,QAAQ,GAAG;AAAA,UAC5D;AACA,cAAI;AACJ,cAAI,SAAS,GAAG,KAAK,MAAM,KAAK,KAAK;AACrC,cAAI,OAAO,GAAG,KAAK,IAAI;AACvB,cAAI,SAAS,KAAK;AAClB,cAAI,MAAM,IAAI,WAAW,MAAM;AAC/B,aAAG,KAAK,QAAQ,KAAK,GAAG,QAAQ,CAAC;AACjC,cAAI,KAAK,aAAa,QAAQ;AAC5B,kBAAM,kBAAkB,KAAK,CAAC;AAAA,UAChC,WAAW,KAAK,aAAa,UAAU;AACrC,kBAAM;AAAA,UACR;AACA,aAAG,MAAM,MAAM;AACf,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,MAAM,MAAM,OAAO,CAAC,MAAM;AACvC,eAAK,QAAQ,KAAK,SAAS;AAC3B,cAAI,SAAS,GAAG,KAAK,MAAM,KAAK,OAAO,KAAK,IAAI;AAChD,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,MAAM,IAAI,WAAW,gBAAgB,IAAI,IAAI,CAAC;AAClD,gBAAI,iBAAiB,kBAAkB,MAAM,KAAK,GAAG,IAAI,MAAM;AAC/D,eAAG,MAAM,QAAQ,KAAK,GAAG,gBAAgB,QAAQ,KAAK,MAAM;AAAA,UAC9D,WAAW,YAAY,OAAO,IAAI,GAAG;AACnC,eAAG,MAAM,QAAQ,MAAM,GAAG,KAAK,YAAY,QAAQ,KAAK,MAAM;AAAA,UAChE,OAAO;AACL,kBAAM,IAAI,MAAM,uBAAuB;AAAA,UACzC;AACA,aAAG,MAAM,MAAM;AAAA,QACjB,GAAG,KAAK,MAAM,GAAG,aAAa,OAAO,CAAC,SAAS;AAC7C,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,SAAS,MAAM;AACxB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC/B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,gBAAgB,OAAO,MAAM,GAAG;AACjD,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,aAAG,cAAc,OAAO;AAAA,QAC1B,GAAG,0BAA0B,MAAM;AACjC,aAAG,MAAM,MAAM;AACf,aAAG,MAAM,OAAO;AAChB,aAAG,MAAM,gBAAgB;AAAA,QAC3B,GAAG,sBAAsB,MAAM;AAC7B,aAAG,MAAM,MAAM;AACf,aAAG,eAAe,GAAG,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,OAAO,CAAC;AAC7G,aAAG,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;AACtC,cAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,eAAe;AAClD,cAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,gBAAgB;AACnD,aAAG,MAAM,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC;AACrC,aAAG,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;AACtC,cAAI,eAAe,IAAI,WAAW,IAAI,GAAG,aAAa;AACtD,cAAI,aAAa,MAAM;AACrB,gBAAI,eAAe,GAAG;AACpB,2BAAa,WAAW,YAAY,EAAE;AAAA,YACxC;AACA,mBAAO,aAAa,EAAE,UAAU;AAAA,UAClC;AACA,aAAG,aAAa,QAAQ,UAAU,UAAU;AAC5C,aAAG,aAAa,QAAQ,WAAW,UAAU;AAC7C,aAAG,MAAM,UAAU;AACnB,aAAG,MAAM,cAAc;AAAA,QACzB,GAAG,0BAA0B,MAAM;AACjC,aAAG,MAAM,OAAO;AAChB,cAAI,YAAY,GAAG,MAAM,YAAY;AACrC,aAAG,MAAM,eAAe;AACxB,aAAG,MAAM,EAAE,OAAO,MAAM;AACtB,gBAAI,OAAO,GAAG,WAAW,WAAW,MAAM,QAAQ,KAAK,EAAE;AACzD,iBAAK,WAAW,EAAE,QAAQ,CAAC,QAAQa,WAAS;AAC1C,kBAAI,KAAK,CAACA;AACV,kBAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,kBAAI,MAAM,EAAE,QAAQ,MAAM,OAAO,EAAE,YAAY,OAAO,GAAG,UAAU,EAAE,UAAU,MAAM,OAAO,KAAK,EAAE;AACnG,kBAAI,SAAS;AACb,qBAAO;AAAA,YACT,EAAE;AACF,mBAAO;AAAA,UACT,EAAE,GAAG,CAAC,GAAG,eAAe;AAAA,QAC1B,GAAG,uBAAuB,MAAM;AAC9B,cAAIb,QAAO,OAAO,GAAG;AACnB,eAAG,aAAa,QAAQ,SAASA,QAAO,OAAO,CAAC;AAAA,UAClD,OAAO;AACL,eAAG,QAAQ,YAAY,YAAY;AAAA,UACrC;AACA,cAAIA,QAAO,QAAQ,GAAG;AACpB,eAAG,aAAa,QAAQ,UAAU,MAAMA,QAAO,QAAQ,CAAC;AAAA,UAC1D,OAAO;AACL,eAAG,QAAQ,YAAY,aAAa;AAAA,UACtC;AACA,cAAIA,QAAO,QAAQ,GAAG;AACpB,eAAG,aAAa,QAAQ,UAAU,MAAMA,QAAO,QAAQ,CAAC;AAAA,UAC1D,OAAO;AACL,eAAG,QAAQ,aAAa,aAAa;AAAA,UACvC;AACA,cAAI,QAAQ,GAAG,KAAK,cAAc,CAAC;AACnC,cAAI,SAAS,GAAG,KAAK,eAAe,CAAC;AACrC,cAAI,SAAS,GAAG,KAAK,eAAe,CAAC;AAAA,QACvC,GAAG,kBAAkB,MAAM;AACzB,cAAI,GAAG;AACL;AACF,aAAG,aAAa,SAAS,WAAW,OAAO,MAAM;AAC/C,iBAAK,OAAO;AACZ,iBAAK,OAAO;AACZ,iBAAK,WAAW,SAAS,QAAQ;AAC/B,mBAAK,QAAQ;AAAA,YACf;AACA,iBAAK,SAAS,KAAK;AACnB,iBAAK,UAAU;AAAA,UACjB;AACA,aAAG,WAAW,YAAY,IAAI,MAAM;AACpC,aAAG,WAAW,UAAU,cAAc,GAAG;AACzC,WAAC,EAAE,EAAE,QAAQ,CAAC,SAAS;AACrB,eAAG,cAAc,IAAI,IAAI,IAAI,GAAG,WAAW,IAAI;AAC/C,eAAG,cAAc,IAAI,EAAE,QAAQ;AAAA,UACjC,CAAC;AAAA,QACH,GAAG,YAAY,MAAM;AACnB,aAAG,iBAAiB;AACpB,aAAG,YAAY,IAAI,MAAM,IAAI;AAC7B,aAAG,MAAM,OAAO,CAAC,GAAG,GAAG;AACvB,aAAG,yBAAyB;AAC5B,aAAG,qBAAqB;AACxB,aAAG,yBAAyB;AAC5B,aAAG,cAAc,EAAE,SAAS,MAAM;AAAA,QACpC,GAAG,MAAM,CAAC,OAAO,QAAQ,UAAU;AACjC,aAAG,KAAK,cAAc;AACtB,aAAG,iBAAiB;AACpB,UAAAA,QAAO,OAAO,IAAI,SAASA,QAAO,OAAO;AACzC,UAAAA,QAAO,QAAQ,IAAI,UAAUA,QAAO,QAAQ;AAC5C,UAAAA,QAAO,QAAQ,IAAI,SAASA,QAAO,QAAQ;AAC3C,aAAG,sBAAsB;AAAA,QAC3B,GAAG,MAAM,MAAM;AACb,aAAG,KAAK,cAAc;AACtB,mBAASQ,KAAI,GAAGA,KAAI,GAAG,QAAQ,QAAQA,MAAK;AAC1C,gBAAI,SAAS,GAAG,QAAQA,EAAC;AACzB,gBAAI,CAAC,QAAQ;AACX;AAAA,YACF;AACA,eAAG,MAAM,MAAM;AAAA,UACjB;AAAA,QACF,GAAG,YAAY,CAAC,MAAM,wBAAwB;AAC5C,cAAI,MAAM,GAAG,YAAY,MAAM,mBAAmB;AAClD,cAAI,CAAC,IAAI,QAAQ;AACf,mBAAO;AAAA,UACT;AACA,iBAAO,IAAI;AAAA,QACb,GAAG,aAAa,CAAC,MAAM,wBAAwB;AAC7C,cAAI;AACF,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;AACjE,mBAAO,OAAO;AAAA,UAChB,SAAS,GAAG;AAAA,UACZ;AACA,cAAI,MAAM,EAAE,QAAQ,OAAO,QAAQ,OAAO,OAAO,GAAG,MAAM,MAAM,MAAM,MAAM,QAAQ,MAAM,cAAc,OAAO,YAAY,MAAM,cAAc,KAAK;AACpJ,cAAI;AACF,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,gBAAI,eAAe;AACnB,gBAAI,aAAa,OAAO;AACxB,gBAAI,eAAe,OAAO;AAC1B,gBAAI,OAAO,KAAK,SAAS,IAAI;AAC7B,qBAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;AAC7D,gBAAI,SAAS;AACb,gBAAI,OAAO,OAAO;AAClB,gBAAI,SAAS,OAAO;AACpB,gBAAI,OAAO,OAAO,KAAK;AACvB,gBAAI,SAAS,OAAO,SAAS;AAAA,UAC/B,SAAS,GAAG;AACV,gBAAI,QAAQ,EAAE;AAAA,UAChB;AACA,iBAAO;AAAA,QACT,GAAG,YAAY,CAAC,QAAQ,MAAM,SAAS,aAAa;AAClD,mBAAS,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM;AAC/D,cAAI,QAAQ,KAAK,MAAM,GAAG,EAAE,QAAQ;AACpC,iBAAO,MAAM,QAAQ;AACnB,gBAAI,OAAO,MAAM,IAAI;AACrB,gBAAI,CAAC;AACH;AACF,gBAAI,UAAU,KAAK,MAAM,QAAQ,IAAI;AACrC,gBAAI;AACF,iBAAG,MAAM,OAAO;AAAA,YAClB,SAAS,GAAG;AAAA,YACZ;AACA,qBAAS;AAAA,UACX;AACA,iBAAO;AAAA,QACT,GAAG,YAAY,CAAC,QAAQK,QAAM,YAAY,SAAS,aAAa;AAC9D,cAAI,OAAO,KAAK,MAAM,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM,GAAGA,MAAI;AACnF,cAAI,OAAO,WAAW,SAAS,QAAQ;AACvC,iBAAO,GAAG,OAAO,MAAM,IAAI;AAAA,QAC7B,GAAG,gBAAgB,CAAC,QAAQA,QAAM,MAAM,SAAS,UAAU,WAAW;AACpE,cAAI,OAAOA;AACX,cAAI,QAAQ;AACV,qBAAS,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM;AAC/D,mBAAOA,SAAO,KAAK,MAAM,QAAQA,MAAI,IAAI;AAAA,UAC3C;AACA,cAAI,OAAO,WAAW,SAAS,QAAQ;AACvC,cAAI,OAAO,GAAG,OAAO,MAAM,IAAI;AAC/B,cAAI,MAAM;AACR,gBAAI,OAAO,QAAQ,UAAU;AAC3B,kBAAI,MAAM,IAAI,MAAM,KAAK,MAAM;AAC/B,uBAASL,KAAI,GAAG,MAAM,KAAK,QAAQA,KAAI,KAAK,EAAEA;AAC5C,oBAAIA,EAAC,IAAI,KAAK,WAAWA,EAAC;AAC5B,qBAAO;AAAA,YACT;AACA,eAAG,MAAM,MAAM,OAAO,GAAG;AACzB,gBAAI,SAAS,GAAG,KAAK,MAAM,GAAG;AAC9B,eAAG,MAAM,QAAQ,MAAM,GAAG,KAAK,QAAQ,GAAG,MAAM;AAChD,eAAG,MAAM,MAAM;AACf,eAAG,MAAM,MAAM,IAAI;AAAA,UACrB;AACA,iBAAO;AAAA,QACT,GAAG,cAAc,CAAC,QAAQK,QAAM,OAAO,WAAW;AAChD,cAAI,OAAO,KAAK,MAAM,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM,GAAGA,MAAI;AACnF,cAAI,OAAO,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;AACvC,cAAI,CAAC,GAAG,aAAa;AACnB,eAAG,aAAa,QAAQ;AAC1B,cAAI,MAAM,GAAG,QAAQ,GAAG,aAAa,SAAS,CAAC;AAC/C,aAAG,eAAe,KAAK,EAAE,MAAM,CAAC,WAAW;AACzC,mBAAO,WAAW;AAAA,UACpB,GAAG,OAAO,CAAC,WAAW;AACpB,gBAAI,UAAU,OAAO,UAAU,OAAO,OAAO,QAAQ;AACnD,qBAAO,EAAE;AAAA,YACX;AAAA,UACF,GAAG,MAAM,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAChD,gBAAI,YAAY;AAChB,qBAASL,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,kBAAI;AACJ,kBAAI;AACF,yBAAS,MAAM;AAAA,cACjB,SAAS,GAAG;AACV,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AACA,kBAAI,WAAW,UAAU,cAAc,GAAG;AACxC,sBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,cAC3B;AACA,kBAAI,WAAW,QAAQ,WAAW;AAChC;AACF;AACA,qBAAO,SAASA,EAAC,IAAI;AAAA,YACvB;AACA,gBAAI,WAAW;AACb,qBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,YACnC;AACA,mBAAO;AAAA,UACT,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AACjD,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,kBAAI;AACF,uBAAO,OAAO,SAASA,EAAC,CAAC;AAAA,cAC3B,SAAS,GAAG;AACV,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF;AACA,gBAAI,QAAQ;AACV,qBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,YACnC;AACA,mBAAOA;AAAA,UACT,EAAE,CAAC;AACH,iBAAO,GAAG,MAAM,MAAM,MAAM,GAAG;AAAA,QACjC,GAAG,eAAe,CAAC,QAAQ;AACzB,cAAI,IAAI,YAAY,IAAI,YAAY,IAAI,QAAQ,IAAI;AAClD,mBAAO;AACT,cAAI,OAAO,kBAAkB,aAAa;AACxC,kBAAM,IAAI,MAAM,kMAAkM;AAAA,UACpN,WAAW,OAAO;AAChB,gBAAI;AACF,kBAAI,WAAW,mBAAmB,MAAM,IAAI,GAAG,GAAG,IAAI;AACtD,kBAAI,YAAY,IAAI,SAAS;AAAA,YAC/B,SAAS,GAAG;AACV,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AAAA,UACF,OAAO;AACL,kBAAM,IAAI,MAAM,+CAA+C;AAAA,UACjE;AAAA,QACF,GAAG,gBAAgB,CAAC,QAAQK,QAAM,KAAK,SAAS,aAAa;AAC3D,mBAAS,iBAAiB;AACxB,iBAAK,cAAc;AACnB,iBAAK,SAAS,CAAC;AAAA,UACjB;AACA,yBAAe,UAAU,MAAM,SAAS,mBAAmB,KAAK;AAC9D,gBAAI,MAAM,KAAK,SAAS,KAAK,MAAM,GAAG;AACpC,qBAAO;AAAA,YACT;AACA,gBAAI,cAAc,MAAM,KAAK;AAC7B,gBAAI,WAAW,MAAM,KAAK,YAAY;AACtC,mBAAO,KAAK,OAAO,QAAQ,EAAE,WAAW;AAAA,UAC1C;AACA,yBAAe,UAAU,gBAAgB,SAAS,6BAA6B,QAAQ;AACrF,iBAAK,SAAS;AAAA,UAChB;AACA,yBAAe,UAAU,cAAc,SAAS,6BAA6B;AAC3E,gBAAI,MAAM,IAAI,eAAe;AAC7B,gBAAI,KAAK,QAAQ,KAAK,KAAK;AAC3B,gBAAI,KAAK,IAAI;AACb,gBAAI,EAAE,IAAI,UAAU,OAAO,IAAI,SAAS,OAAO,IAAI,WAAW;AAC5D,oBAAM,IAAI,MAAM,mBAAmB,MAAM,eAAe,IAAI,MAAM;AACpE,gBAAI,aAAa,OAAO,IAAI,kBAAkB,gBAAgB,CAAC;AAC/D,gBAAI;AACJ,gBAAI,kBAAkB,SAAS,IAAI,kBAAkB,eAAe,MAAM,WAAW;AACrF,gBAAI,YAAY,SAAS,IAAI,kBAAkB,kBAAkB,MAAM,WAAW;AAClF,gBAAI,YAAY,OAAO;AACvB,gBAAI,CAAC;AACH,0BAAY;AACd,gBAAI,QAAQ,CAAC,MAAM,OAAO;AACxB,kBAAI,OAAO;AACT,sBAAM,IAAI,MAAM,oBAAoB,OAAO,OAAO,KAAK,0BAA0B;AACnF,kBAAI,KAAK,aAAa;AACpB,sBAAM,IAAI,MAAM,UAAU,aAAa,qCAAqC;AAC9E,kBAAI,OAAO,IAAI,eAAe;AAC9B,mBAAK,KAAK,OAAO,KAAK,KAAK;AAC3B,kBAAI,eAAe;AACjB,qBAAK,iBAAiB,SAAS,WAAW,OAAO,MAAM,EAAE;AAC3D,mBAAK,eAAe;AACpB,kBAAI,KAAK,kBAAkB;AACzB,qBAAK,iBAAiB,oCAAoC;AAAA,cAC5D;AACA,mBAAK,KAAK,IAAI;AACd,kBAAI,EAAE,KAAK,UAAU,OAAO,KAAK,SAAS,OAAO,KAAK,WAAW;AAC/D,sBAAM,IAAI,MAAM,mBAAmB,MAAM,eAAe,KAAK,MAAM;AACrE,kBAAI,KAAK,aAAa,QAAQ;AAC5B,uBAAO,IAAI,WAAW,KAAK,YAAY,CAAC,CAAC;AAAA,cAC3C;AACA,qBAAO,mBAAmB,KAAK,gBAAgB,IAAI,IAAI;AAAA,YACzD;AACA,gBAAI,aAAa;AACjB,uBAAW,cAAc,CAAC,aAAa;AACrC,kBAAI,QAAQ,WAAW;AACvB,kBAAI,OAAO,WAAW,KAAK,YAAY;AACvC,oBAAM,KAAK,IAAI,KAAK,aAAa,CAAC;AAClC,kBAAI,OAAO,WAAW,OAAO,QAAQ,KAAK,aAAa;AACrD,2BAAW,OAAO,QAAQ,IAAI,MAAM,OAAO,GAAG;AAAA,cAChD;AACA,kBAAI,OAAO,WAAW,OAAO,QAAQ,KAAK;AACxC,sBAAM,IAAI,MAAM,eAAe;AACjC,qBAAO,WAAW,OAAO,QAAQ;AAAA,YACnC,CAAC;AACD,gBAAI,YAAY,CAAC,YAAY;AAC3B,0BAAY,aAAa;AACzB,2BAAa,KAAK,OAAO,CAAC,EAAE;AAC5B,0BAAY;AACZ,kBAAI,6EAA6E;AAAA,YACnF;AACA,iBAAK,UAAU;AACf,iBAAK,aAAa;AAClB,iBAAK,cAAc;AAAA,UACrB;AACA,cAAI,OAAO,kBAAkB,aAAa;AACxC,gBAAI,CAAC;AACH,oBAAM;AACR,gBAAI,YAAY,IAAI,eAAe;AACnC,mBAAO,iBAAiB,WAAW,EAAE,QAAQ,EAAE,KAAK,WAAW;AAC7D,kBAAI,CAAC,KAAK,aAAa;AACrB,qBAAK,YAAY;AAAA,cACnB;AACA,qBAAO,KAAK;AAAA,YACd,EAAE,GAAG,WAAW,EAAE,KAAK,WAAW;AAChC,kBAAI,CAAC,KAAK,aAAa;AACrB,qBAAK,YAAY;AAAA,cACnB;AACA,qBAAO,KAAK;AAAA,YACd,EAAE,EAAE,CAAC;AACL,gBAAI,aAAa,EAAE,UAAU,OAAO,UAAU,UAAU;AAAA,UAC1D,OAAO;AACL,gBAAI,aAAa,EAAE,UAAU,OAAO,IAAI;AAAA,UAC1C;AACA,cAAI,OAAO,GAAG,WAAW,QAAQA,QAAM,YAAY,SAAS,QAAQ;AACpE,cAAI,WAAW,UAAU;AACvB,iBAAK,WAAW,WAAW;AAAA,UAC7B,WAAW,WAAW,KAAK;AACzB,iBAAK,WAAW;AAChB,iBAAK,MAAM,WAAW;AAAA,UACxB;AACA,iBAAO,iBAAiB,MAAM,EAAE,WAAW,EAAE,KAAK,WAAW;AAC3D,mBAAO,KAAK,SAAS;AAAA,UACvB,EAAE,EAAE,CAAC;AACL,cAAI,aAAa,CAAC;AAClB,cAAI,OAAO,OAAO,KAAK,KAAK,UAAU;AACtC,eAAK,QAAQ,CAAC,QAAQ;AACpB,gBAAI,KAAK,KAAK,WAAW,GAAG;AAC5B,uBAAW,GAAG,IAAI,SAAS,oBAAoB;AAC7C,iBAAG,cAAc,IAAI;AACrB,qBAAO,GAAG,MAAM,MAAM,SAAS;AAAA,YACjC;AAAA,UACF,CAAC;AACD,mBAAS,YAAY,QAAQ,QAAQ,QAAQ,QAAQ,UAAU;AAC7D,gBAAI,WAAW,OAAO,KAAK;AAC3B,gBAAI,YAAY,SAAS;AACvB,qBAAO;AACT,gBAAI,OAAO,KAAK,IAAI,SAAS,SAAS,UAAU,MAAM;AACtD,gBAAI,SAAS,OAAO;AAClB,uBAASL,KAAI,GAAGA,KAAI,MAAMA,MAAK;AAC7B,uBAAO,SAASA,EAAC,IAAI,SAAS,WAAWA,EAAC;AAAA,cAC5C;AAAA,YACF,OAAO;AACL,uBAASA,KAAI,GAAGA,KAAI,MAAMA,MAAK;AAC7B,uBAAO,SAASA,EAAC,IAAI,SAAS,IAAI,WAAWA,EAAC;AAAA,cAChD;AAAA,YACF;AACA,mBAAO;AAAA,UACT;AACA,qBAAW,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,aAAa;AAC9D,eAAG,cAAc,IAAI;AACrB,mBAAO,YAAY,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,UAC7D;AACA,qBAAW,OAAO,CAAC,QAAQ,QAAQ,UAAU,MAAM,UAAU;AAC3D,eAAG,cAAc,IAAI;AACrB,gBAAI,MAAM,UAAU,MAAM;AAC1B,gBAAI,CAAC,KAAK;AACR,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,wBAAY,QAAQ,iBAAiB,GAAG,KAAK,QAAQ,QAAQ;AAC7D,mBAAO,EAAE,KAAK,WAAW,KAAK;AAAA,UAChC;AACA,eAAK,aAAa;AAClB,iBAAO;AAAA,QACT,EAAE;AACF,YAAI,eAAe,CAAC,KAAK,mBAAmB;AAC1C,mBAAS;AACT,iBAAO,MAAM,kBAAkB,iBAAiB,GAAG,KAAK,cAAc,IAAI;AAAA,QAC5E;AACA,YAAI,WAAW,EAAE,kBAAkB,GAAG,aAAa,SAAS,OAAO,MAAM,YAAY;AACnF,cAAI,KAAK,MAAM,IAAI,GAAG;AACpB,mBAAO;AAAA,UACT;AACA,cAAI;AACJ,cAAI,UAAU,MAAM;AAClB,kBAAM,GAAG,IAAI;AAAA,UACf,OAAO;AACL,gBAAI,YAAY,SAAS,gBAAgB,KAAK;AAC9C,kBAAM,UAAU;AAAA,UAClB;AACA,cAAI,KAAK,UAAU,GAAG;AACpB,gBAAI,CAAC,YAAY;AACf,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,mBAAO;AAAA,UACT;AACA,iBAAO,KAAK,MAAM,KAAK,IAAI;AAAA,QAC7B,GAAG,QAAQ,SAAS,MAAM,MAAM,KAAK;AACnC,cAAI;AACF,gBAAI,OAAO,KAAK,IAAI;AAAA,UACtB,SAAS,GAAG;AACV,gBAAI,KAAK,EAAE,QAAQ,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,GAAG,QAAQ,EAAE,IAAI,CAAC,GAAG;AAC9E,qBAAO;AAAA,YACT;AACA,kBAAM;AAAA,UACR;AACA,4BAAkB,EAAE,QAAQ,CAAC,IAAI,KAAK;AACtC,4BAAkB,EAAE,MAAM,MAAM,CAAC,IAAI,KAAK;AAC1C,4BAAkB,EAAE,MAAM,MAAM,CAAC,IAAI,KAAK;AAC1C,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,KAAK;AAC3C,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,KAAK;AAC3C,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,KAAK;AAC3C,oBAAU,CAAC,KAAK,SAAS,IAAI,aAAa,KAAK,MAAM,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC9T,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI;AACtC,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,KAAK;AAC3C,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC1V,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACpD,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC1V,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACpD,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC1V,4BAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACpD,oBAAU,CAAC,KAAK,QAAQ,IAAI,aAAa,KAAK,KAAK,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC5T,iBAAO;AAAA,QACT,GAAG,SAAS,SAAS,MAAM,QAAQ,KAAK,OAAO,QAAQ;AACrD,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAChC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ,GAAG;AACb,mBAAO;AAAA,UACT;AACA,cAAI,SAAS,iBAAiB,EAAE,MAAM,MAAM,OAAO,GAAG;AACtD,aAAG,MAAM,QAAQ,QAAQ,QAAQ,KAAK,KAAK;AAAA,QAC7C,GAAG,SAAS,QAAQ,MAAM;AACxB,mBAAS,WAAW;AACpB,cAAI,MAAM,kBAAkB,EAAE,SAAS,UAAU,MAAM,CAAC;AACxD,iBAAO;AAAA,QACT,GAAG,OAAO,KAAK;AACb,cAAI,MAAM,aAAa,GAAG;AAC1B,iBAAO;AAAA,QACT,GAAG,iBAAiB,SAAS,IAAI;AAC/B,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,iBAAO;AAAA,QACT,EAAE;AACF,iBAAS,WAAW,MAAM;AACxB,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,IAAI;AACrC,uBAAa;AACb,cAAI,CAAC,iBAAiB,GAAG;AACvB,oBAAQ,oBAAoB;AAC5B,gBAAIR,QAAO,QAAQ;AACjB,cAAAA,QAAO,QAAQ,EAAE,IAAI;AACvB,oBAAQ;AAAA,UACV;AACA,gBAAM,MAAM,IAAI,WAAW,IAAI,CAAC;AAAA,QAClC;AACA,YAAI,SAAS,CAAC,QAAQ,aAAa;AACjC,uBAAa;AACb,cAAI,wBAAwB;AAC1B,6BAAiB,MAAM;AACvB,kBAAM;AAAA,UACR;AACA,qBAAW,MAAM;AAAA,QACnB;AACA,YAAI,QAAQ;AACZ,YAAI,kBAAkB,CAAC,MAAM;AAC3B,cAAI,aAAa,cAAc,KAAK,UAAU;AAC5C,mBAAO;AAAA,UACT;AACA,gBAAM,GAAG,CAAC;AAAA,QACZ;AACA,YAAI,UAAU,EAAE,eAAe,CAAC,GAAG,gBAAgB,CAAC,GAAG,kBAAkB,CAAC,GAAG,UAAU,CAAC,GAAG,MAAM,WAAW;AAC1G,cAAI,wBAAwB;AAC1B,oBAAQ,WAAW;AAAA,UACrB,OAAO;AACL,oBAAQ,eAAe;AAAA,UACzB;AAAA,QACF,GAAG,gBAAgB,WAAW;AAC5B,cAAI,kBAAkB,UAAU;AAChC,iBAAO,mBAAmB;AACxB,oBAAQ,qBAAqB;AAAA,UAC/B;AACA,sBAAY,MAAM;AAChB,6BAAiB,iBAAiB;AAClC,oBAAQ,2BAA2B,MAAM,oBAAoB,iBAAiB,CAAC;AAAA,UACjF,CAAC;AAAA,QACH,GAAG,YAAY,WAAW;AACxB,0BAAgB;AAAA,QAClB,GAAG,eAAe,SAAS,QAAQ;AACjC,uBAAa;AAAA,QACf,GAAG,2BAA2B,CAAC,kBAAkB,GAAG,qBAAqB,WAAW;AAClF,mBAAS,UAAU,QAAQ,gBAAgB;AACzC,4BAAgB,MAAM;AAAA,UACxB;AACA,mBAAS,UAAU,QAAQ,eAAe;AACxC,4BAAgB,MAAM;AAAA,UACxB;AACA,kBAAQ,gBAAgB,CAAC;AACzB,kBAAQ,iBAAiB,CAAC;AAC1B,kBAAQ,WAAW,CAAC;AAAA,QACtB,GAAG,oBAAoB,SAAS,QAAQ;AACtC,cAAI,cAAc,OAAO;AACzB,iBAAO,QAAQ,SAAS,WAAW;AACnC,kBAAQ,cAAc,KAAK,MAAM;AACjC,kBAAQ,eAAe,OAAO,QAAQ,eAAe,QAAQ,MAAM,GAAG,CAAC;AACvE,iBAAO,cAAc;AACrB,wCAA8B,WAAW;AAAA,QAC3C,GAAG,uBAAuB,SAAS,MAAM;AAAA,QACzC,GAAG,eAAe,WAAW;AAC3B,kBAAQ,iBAAiB,QAAQ,CAACc,OAAMA,GAAE,CAAC;AAAA,QAC7C,GAAG,wBAAwB,CAAC,WAAW,IAAI,QAAQ,CAAC,sBAAsB;AACxE,iBAAO,YAAY,CAAC,MAAM;AACxB,gBAAI,IAAI,EAAE,MAAM;AAChB,gBAAI,MAAM,EAAE,KAAK;AACjB,gBAAI,EAAE,cAAc,KAAK,EAAE,cAAc,KAAK,cAAc,GAAG;AAC7D,kBAAI,eAAe,QAAQ,SAAS,EAAE,YAAY;AAClD,kBAAI,cAAc;AAChB,6BAAa,YAAY,GAAG,EAAE,cAAc,CAAC;AAAA,cAC/C,OAAO;AACL,gBAAAZ,KAAI,4CAA4C,MAAM,yBAAyB,EAAE,cAAc,IAAI,qCAAqC;AAAA,cAC1I;AACA;AAAA,YACF;AACA,gBAAI,QAAQ,gBAAgB;AAC1B,2BAAa;AAAA,YACf,WAAW,QAAQ,eAAe;AAChC,0BAAY,CAAC;AAAA,YACf,WAAW,QAAQ,iBAAiB;AAClC,4BAAc,EAAE,QAAQ,CAAC;AAAA,YAC3B,WAAW,QAAQ,cAAc;AAC/B,yBAAW,EAAE,QAAQ,CAAC;AAAA,YACxB,WAAW,QAAQ,gBAAgB;AACjC,2BAAa,EAAE,QAAQ,CAAC;AAAA,YAC1B,WAAW,QAAQ,UAAU;AAC3B,qBAAO,SAAS;AAChB,gCAAkB,MAAM;AAAA,YAC1B,WAAW,QAAQ,SAAS;AAC1B,oBAAM,YAAY,EAAE,UAAU,IAAI,OAAO,EAAE,MAAM,CAAC;AAAA,YACpD,WAAW,EAAE,WAAW,gBAAgB;AACtC,qBAAO,YAAY,CAAC;AAAA,YACtB,WAAW,QAAQ,eAAe;AAChC,cAAAF,QAAO,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC;AAAA,YACnC,WAAW,KAAK;AACd,cAAAE,KAAI,oCAAoC,GAAG;AAAA,YAC7C;AAAA,UACF;AACA,iBAAO,UAAU,CAAC,MAAM;AACtB,gBAAI,UAAU;AACd,YAAAA,KAAI,UAAU,MAAM,EAAE,WAAW,MAAM,EAAE,SAAS,OAAO,EAAE,OAAO;AAClE,kBAAM;AAAA,UACR;AACA,cAAI,WAAW,CAAC;AAChB,cAAI,gBAAgB,CAAC,UAAU,WAAW,SAAS,UAAU;AAC7D,mBAAS,WAAW,eAAe;AACjC,gBAAIF,QAAO,eAAe,OAAO,GAAG;AAClC,uBAAS,KAAK,OAAO;AAAA,YACvB;AAAA,UACF;AACA,iBAAO,YAAY,EAAE,OAAO,QAAQ,YAAY,UAAU,aAAaA,QAAO,qBAAqB,KAAK,YAAY,cAAc,YAAY,cAAc,WAAW,CAAC;AAAA,QAC1K,CAAC,GAAG,4BAA4B,SAAS,cAAc;AACrD,cAAI,wBAAwB;AAC1B,mBAAO,aAAa;AAAA,UACtB;AACA,cAAI,mBAAmB,QAAQ,IAAI,QAAQ,cAAc,IAAI,QAAQ,sBAAsB,CAAC;AAC5F,2BAAiB,KAAK,YAAY;AAAA,QACpC,GAAG,sBAAsB,WAAW;AAClC,cAAI;AACJ,cAAI,gBAAgB,WAAW,sBAAsB;AACrD,mBAAS,IAAI,OAAO,aAAa;AACjC,kBAAQ,cAAc,KAAK,MAAM;AAAA,QACnC,GAAG,cAAc,WAAW;AAC1B,cAAI,QAAQ,cAAc,UAAU,GAAG;AACrC,oBAAQ,qBAAqB;AAC7B,oBAAQ,uBAAuB,QAAQ,cAAc,CAAC,CAAC;AAAA,UACzD;AACA,iBAAO,QAAQ,cAAc,IAAI;AAAA,QACnC,EAAE;AACF,QAAAA,QAAO,SAAS,IAAI;AACpB,YAAI,uBAAuB,CAAC,cAAc;AACxC,iBAAO,UAAU,SAAS,GAAG;AAC3B,sBAAU,MAAM,EAAEA,OAAM;AAAA,UAC1B;AAAA,QACF;AACA,iBAAS,sBAAsB;AAC7B,cAAI,cAAc,cAAc;AAChC,cAAI,YAAY,kBAAkB,EAAE,cAAc,OAAO,CAAC;AAC1D,cAAI,YAAY,kBAAkB,EAAE,cAAc,OAAO,CAAC;AAC1D,cAAI,WAAW,YAAY;AAC3B,uCAA6B,WAAW,QAAQ;AAChD,uBAAa,SAAS;AAAA,QACxB;AACA,QAAAA,QAAO,qBAAqB,IAAI;AAChC,iBAAS,iBAAiB,YAAY;AACpC,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,UAAU;AAC3C,gBAAM,UAAU;AAAA,QAClB;AACA,YAAI,kBAAkB,CAAC;AACvB,YAAI,oBAAoB,CAAC,YAAY;AACnC,cAAI,OAAO,gBAAgB,OAAO;AAClC,cAAI,CAAC,MAAM;AACT,gBAAI,WAAW,gBAAgB;AAC7B,8BAAgB,SAAS,UAAU;AACrC,4BAAgB,OAAO,IAAI,OAAO,UAAU,IAAI,OAAO;AAAA,UACzD;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,iBAAiB,KAAK,KAAK;AAClC,cAAI,SAAS,kBAAkB,GAAG,EAAE,GAAG;AACvC,mBAAS,OAAO,SAAS;AACvB,gBAAI,iBAAiB,GAAG;AACtB,sBAAQ,cAAc,OAAO;AAAA,YAC/B,OAAO;AACL,uCAAyB,OAAO;AAAA,YAClC;AAAA,UACF;AACA,iBAAO,MAAM;AAAA,QACf;AACA,QAAAA,QAAO,kBAAkB,IAAI;AAC7B,iBAAS,gBAAgB,aAAa;AACpC,kBAAQ,iBAAiB,KAAK,WAAW;AAAA,QAC3C;AACA,iBAAS,cAAc,QAAQ;AAC7B,eAAK,SAAS;AACd,eAAK,MAAM,SAAS;AACpB,eAAK,WAAW,SAAS,MAAM;AAC7B,8BAAkB,EAAE,KAAK,MAAM,MAAM,CAAC,IAAI;AAAA,UAC5C;AACA,eAAK,WAAW,WAAW;AACzB,mBAAO,kBAAkB,EAAE,KAAK,MAAM,MAAM,CAAC;AAAA,UAC/C;AACA,eAAK,iBAAiB,SAAS,YAAY;AACzC,8BAAkB,EAAE,KAAK,MAAM,MAAM,CAAC,IAAI;AAAA,UAC5C;AACA,eAAK,iBAAiB,WAAW;AAC/B,mBAAO,kBAAkB,EAAE,KAAK,MAAM,MAAM,CAAC;AAAA,UAC/C;AACA,eAAK,aAAa,SAAS,QAAQ;AACjC,qBAAS,SAAS,IAAI;AACtB,6BAAiB,EAAE,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UAC5C;AACA,eAAK,aAAa,WAAW;AAC3B,mBAAO,iBAAiB,EAAE,KAAK,MAAM,OAAO,CAAC,KAAK;AAAA,UACpD;AACA,eAAK,eAAe,SAAS,UAAU;AACrC,uBAAW,WAAW,IAAI;AAC1B,6BAAiB,EAAE,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UAC5C;AACA,eAAK,eAAe,WAAW;AAC7B,mBAAO,iBAAiB,EAAE,KAAK,MAAM,OAAO,CAAC,KAAK;AAAA,UACpD;AACA,eAAK,OAAO,SAAS,MAAM,YAAY;AACrC,iBAAK,iBAAiB,CAAC;AACvB,iBAAK,SAAS,IAAI;AAClB,iBAAK,eAAe,UAAU;AAAA,UAChC;AACA,eAAK,mBAAmB,SAAS,aAAa;AAC5C,8BAAkB,EAAE,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UAC7C;AACA,eAAK,mBAAmB,WAAW;AACjC,mBAAO,kBAAkB,EAAE,KAAK,MAAM,OAAO,CAAC;AAAA,UAChD;AACA,eAAK,oBAAoB,WAAW;AAClC,gBAAI,YAAY,uBAAuB,KAAK,SAAS,CAAC;AACtD,gBAAI,WAAW;AACb,qBAAO,kBAAkB,EAAE,KAAK,WAAW,CAAC;AAAA,YAC9C;AACA,gBAAI,WAAW,KAAK,iBAAiB;AACrC,gBAAI,aAAa;AACf,qBAAO;AACT,mBAAO,KAAK;AAAA,UACd;AAAA,QACF;AACA,YAAI,gBAAgB;AACpB,YAAI,yBAAyB;AAC7B,iBAAS,2BAA2B,IAAI,IAAI;AAC1C,iBAAO,KAAK,YAAY,IAAI,UAAU,CAAC,CAAC,MAAM,OAAO,KAAK,KAAK,aAAa;AAAA,QAC9E;AACA,iBAAS,aAAa,KAAK,MAAM,YAAY;AAC3C,mBAAS;AACT,oBAAU;AACV,0BAAgB;AAChB,cAAI,OAAO,IAAI,cAAc,GAAG;AAChC,eAAK,KAAK,MAAM,UAAU;AAC1B,0BAAgB;AAChB;AACA,gBAAM;AAAA,QACR;AACA,iBAAS,kCAAkC,IAAI;AAC7C,kBAAQ;AACR,mCAAyB,IAAI,CAAC,uBAAuB,GAAG,CAAC,oBAAoB,SAAS,KAAK;AAC3F,kBAAQ,cAAc;AAAA,QACxB;AACA,iBAAS,6BAA6B,QAAQ;AAC5C,sBAAY;AACZ,cAAI,CAAC;AACH,0BAAc,MAAM;AAAA;AAEpB,wBAAY,EAAE,OAAO,iBAAiB,UAAU,OAAO,CAAC;AAAA,QAC5D;AACA,YAAI,qBAAqB,CAAC;AAC1B,iBAAS,eAAe,aAAa;AACnC,iBAAO,YAAY,QAAQ;AACzB,gBAAI,MAAM,YAAY,IAAI;AAC1B,gBAAI,MAAM,YAAY,IAAI;AAC1B,gBAAI,GAAG;AAAA,UACT;AAAA,QACF;AACA,iBAAS,2BAA2B,SAAS;AAC3C,iBAAO,KAAK,cAAc,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;AAAA,QAChE;AACA,YAAI,uBAAuB,CAAC;AAC5B,YAAI,kBAAkB,CAAC;AACvB,YAAI,mBAAmB,CAAC;AACxB,YAAI,gBAAgB;AACpB,iBAAS,mBAAmB,SAAS;AACnC,gBAAM,IAAI,cAAc,OAAO;AAAA,QACjC;AACA,iBAAS,8BAA8B,SAAS,gBAAgB,mBAAmB;AACjF,kBAAQ,QAAQ,SAAS,MAAM;AAC7B,6BAAiB,IAAI,IAAI;AAAA,UAC3B,CAAC;AACD,mBAAS,WAAW,iBAAiB;AACnC,gBAAI,mBAAmB,kBAAkB,eAAe;AACxD,gBAAI,iBAAiB,WAAW,QAAQ,QAAQ;AAC9C,iCAAmB,iCAAiC;AAAA,YACtD;AACA,qBAASQ,KAAI,GAAGA,KAAI,QAAQ,QAAQ,EAAEA,IAAG;AACvC,2BAAa,QAAQA,EAAC,GAAG,iBAAiBA,EAAC,CAAC;AAAA,YAC9C;AAAA,UACF;AACA,cAAI,iBAAiB,IAAI,MAAM,eAAe,MAAM;AACpD,cAAI,oBAAoB,CAAC;AACzB,cAAI,aAAa;AACjB,yBAAe,QAAQ,CAAC,IAAIA,OAAM;AAChC,gBAAI,gBAAgB,eAAe,EAAE,GAAG;AACtC,6BAAeA,EAAC,IAAI,gBAAgB,EAAE;AAAA,YACxC,OAAO;AACL,gCAAkB,KAAK,EAAE;AACzB,kBAAI,CAAC,qBAAqB,eAAe,EAAE,GAAG;AAC5C,qCAAqB,EAAE,IAAI,CAAC;AAAA,cAC9B;AACA,mCAAqB,EAAE,EAAE,KAAK,MAAM;AAClC,+BAAeA,EAAC,IAAI,gBAAgB,EAAE;AACtC,kBAAE;AACF,oBAAI,eAAe,kBAAkB,QAAQ;AAC3C,6BAAW,cAAc;AAAA,gBAC3B;AAAA,cACF,CAAC;AAAA,YACH;AAAA,UACF,CAAC;AACD,cAAI,kBAAkB,WAAW,GAAG;AAClC,uBAAW,cAAc;AAAA,UAC3B;AAAA,QACF;AACA,iBAAS,8BAA8B,cAAc;AACnD,4BAAkB;AAClB,cAAI,MAAM,mBAAmB,YAAY;AACzC,iBAAO,mBAAmB,YAAY;AACtC,cAAI,WAAW,IAAI;AACnB,cAAI,iBAAiB,SAAS;AAC9B,cAAI,eAAe,SAAS,IAAI,SAAS,KAAK;AAC5C,mBAAO,IAAI;AAAA,UACb,CAAC,EAAE,OAAO,SAAS,IAAI,SAAS,KAAK;AACnC,mBAAO,IAAI;AAAA,UACb,CAAC,CAAC;AACF,cAAI,iBAAiB,IAAI;AACzB,cAAI,gBAAgB,IAAI;AACxB,wCAA8B,CAAC,YAAY,GAAG,cAAc,SAAS,eAAe;AAClF,qBAAS,QAAQ,CAAC,KAAKA,OAAM;AAC3B,kBAAI,mBAAmB,cAAcA,EAAC;AACtC,kBAAI,SAAS,IAAI;AACjB,kBAAI,gBAAgB,IAAI;AACxB,kBAAI,qBAAqB,cAAcA,KAAI,cAAc;AACzD,kBAAI,SAAS,IAAI;AACjB,kBAAI,gBAAgB,IAAI;AACxB,kBAAI,OAAO,CAAC,QAAQ,iBAAiB,cAAc,EAAE,OAAO,eAAe,GAAG,CAAC;AAC/E,kBAAI,QAAQ,CAAC,KAAKO,OAAM;AACtB,oBAAI,cAAc,CAAC;AACnB,uBAAO,eAAe,KAAK,mBAAmB,YAAY,EAAE,aAAaA,EAAC,CAAC;AAC3E,+BAAe,WAAW;AAAA,cAC5B;AAAA,YACF,CAAC;AACD,mBAAO,CAAC,EAAE,MAAM,IAAI,MAAM,gBAAgB,SAAS,KAAK;AACtD,kBAAI,KAAK,IAAI,MAAM,cAAc;AACjC,uBAASP,KAAI,GAAGA,KAAI,gBAAgB,EAAEA,IAAG;AACvC,mBAAGA,EAAC,IAAI,SAASA,EAAC,EAAE,KAAK,GAAG;AAAA,cAC9B;AACA,4BAAc,GAAG;AACjB,qBAAO;AAAA,YACT,GAAG,cAAc,SAAS,aAAaO,IAAG;AACxC,kBAAI,mBAAmBA,GAAE,QAAQ;AAC/B,sBAAM,IAAI,UAAU,0CAA0C,IAAI,IAAI,cAAc,cAAc,YAAYA,GAAE,MAAM,EAAE;AAAA,cAC1H;AACA,kBAAI,MAAM,eAAe;AACzB,uBAASP,KAAI,GAAGA,KAAI,gBAAgB,EAAEA,IAAG;AACvC,yBAASA,EAAC,EAAE,MAAM,KAAKO,GAAEP,EAAC,CAAC;AAAA,cAC7B;AACA,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,eAAe,GAAG;AAAA,cACrC;AACA,qBAAO;AAAA,YACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,cAAc,CAAC;AAAA,UACjH,CAAC;AAAA,QACH;AACA,YAAI,sBAAsB,CAAC;AAC3B,YAAI,iCAAiC,SAAS,YAAY;AACxD,0BAAgB;AAChB,cAAI,MAAM,oBAAoB,UAAU;AACxC,iBAAO,oBAAoB,UAAU;AACrC,cAAI,iBAAiB,IAAI;AACzB,cAAI,gBAAgB,IAAI;AACxB,cAAI,eAAe,IAAI;AACvB,cAAI,aAAa,aAAa,IAAI,CAAC,UAAU,MAAM,gBAAgB,EAAE,OAAO,aAAa,IAAI,CAAC,UAAU,MAAM,kBAAkB,CAAC;AACjI,wCAA8B,CAAC,UAAU,GAAG,YAAY,CAAC,gBAAgB;AACvE,gBAAI,SAAS,CAAC;AACd,yBAAa,QAAQ,CAAC,OAAOA,OAAM;AACjC,kBAAI,YAAY,MAAM;AACtB,kBAAI,mBAAmB,YAAYA,EAAC;AACpC,kBAAI,SAAS,MAAM;AACnB,kBAAI,gBAAgB,MAAM;AAC1B,kBAAI,qBAAqB,YAAYA,KAAI,aAAa,MAAM;AAC5D,kBAAI,SAAS,MAAM;AACnB,kBAAI,gBAAgB,MAAM;AAC1B,qBAAO,SAAS,IAAI,EAAE,MAAM,CAAC,QAAQ,iBAAiB,cAAc,EAAE,OAAO,eAAe,GAAG,CAAC,GAAG,OAAO,CAAC,KAAKO,OAAM;AACpH,oBAAI,cAAc,CAAC;AACnB,uBAAO,eAAe,KAAK,mBAAmB,YAAY,EAAE,aAAaA,EAAC,CAAC;AAC3E,+BAAe,WAAW;AAAA,cAC5B,EAAE;AAAA,YACJ,CAAC;AACD,mBAAO,CAAC,EAAE,MAAM,IAAI,MAAM,gBAAgB,SAAS,KAAK;AACtD,kBAAI,KAAK,CAAC;AACV,uBAASP,MAAK,QAAQ;AACpB,mBAAGA,EAAC,IAAI,OAAOA,EAAC,EAAE,KAAK,GAAG;AAAA,cAC5B;AACA,4BAAc,GAAG;AACjB,qBAAO;AAAA,YACT,GAAG,cAAc,SAAS,aAAaO,IAAG;AACxC,uBAAS,aAAa,QAAQ;AAC5B,oBAAI,EAAE,aAAaA,KAAI;AACrB,wBAAM,IAAI,UAAU,mBAAmB,SAAS,GAAG;AAAA,gBACrD;AAAA,cACF;AACA,kBAAI,MAAM,eAAe;AACzB,mBAAK,aAAa,QAAQ;AACxB,uBAAO,SAAS,EAAE,MAAM,KAAKA,GAAE,SAAS,CAAC;AAAA,cAC3C;AACA,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,eAAe,GAAG;AAAA,cACrC;AACA,qBAAO;AAAA,YACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,cAAc,CAAC;AAAA,UACjH,CAAC;AAAA,QACH;AACA,iBAAS,yBAAyB,eAAeF,QAAM,MAAM,UAAU,UAAU;AAC/E,6BAAmB;AACnB,UAAAA,YAAU;AACV,oBAAU;AAAA,QACZ;AACA,iBAAS,iBAAiB,MAAM;AAC9B,kBAAQ,MAAM;AAAA,YACZ,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT;AACE,oBAAM,IAAI,UAAU,sBAAsB,IAAI,EAAE;AAAA,UACpD;AAAA,QACF;AACA,iBAAS,wBAAwB;AAC/B,cAAI,QAAQ,IAAI,MAAM,GAAG;AACzB,mBAASL,KAAI,GAAGA,KAAI,KAAK,EAAEA,IAAG;AAC5B,kBAAMA,EAAC,IAAI,OAAO,aAAaA,EAAC;AAAA,UAClC;AACA,6BAAmB;AAAA,QACrB;AACA,YAAI,mBAAmB;AACvB,iBAAS,iBAAiB,KAAK;AAC7B,cAAI,MAAM;AACV,cAAII,KAAI;AACR,iBAAO,iBAAiB,EAAEA,OAAM,CAAC,GAAG;AAClC,mBAAO,iBAAiB,iBAAiB,EAAEA,SAAQ,CAAC,CAAC;AAAA,UACvD;AACA,iBAAO;AAAA,QACT;AACA,YAAI,eAAe;AACnB,iBAAS,kBAAkB,SAAS;AAClC,gBAAM,IAAI,aAAa,OAAO;AAAA,QAChC;AACA,iBAAS,mBAAmB,SAAS,oBAAoB,UAAU,CAAC,GAAG;AACrE,cAAIC,SAAO,mBAAmB;AAC9B,cAAI,CAAC,SAAS;AACZ,8BAAkB,SAASA,MAAI,+CAA+C;AAAA,UAChF;AACA,cAAI,gBAAgB,eAAe,OAAO,GAAG;AAC3C,gBAAI,QAAQ,8BAA8B;AACxC;AAAA,YACF,OAAO;AACL,gCAAkB,yBAAyBA,MAAI,SAAS;AAAA,YAC1D;AAAA,UACF;AACA,0BAAgB,OAAO,IAAI;AAC3B,iBAAO,iBAAiB,OAAO;AAC/B,cAAI,qBAAqB,eAAe,OAAO,GAAG;AAChD,gBAAI,YAAY,qBAAqB,OAAO;AAC5C,mBAAO,qBAAqB,OAAO;AACnC,sBAAU,QAAQ,CAACR,QAAOA,IAAG,CAAC;AAAA,UAChC;AAAA,QACF;AACA,iBAAS,aAAa,SAAS,oBAAoB,UAAU,CAAC,GAAG;AAC/D,cAAI,EAAE,oBAAoB,qBAAqB;AAC7C,kBAAM,IAAI,UAAU,yDAAyD;AAAA,UAC/E;AACA,iBAAO,mBAAmB,SAAS,oBAAoB,OAAO;AAAA,QAChE;AACA,iBAAS,uBAAuB,SAASQ,QAAM,MAAM,WAAW,YAAY;AAC1E,uBAAa;AACb,UAAAA,YAAU;AACV,oBAAU;AACV,cAAI,QAAQ,iBAAiB,IAAI;AACjC,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,IAAI;AACzD,mBAAO,CAAC,CAAC;AAAA,UACX,GAAG,cAAc,SAAS,aAAaE,IAAG;AACxC,mBAAOA,KAAI,YAAY;AAAA,UACzB,GAAG,kBAAkB,GAAG,wBAAwB,SAAS,SAAS;AAChE,gBAAI;AACJ,gBAAI,SAAS,GAAG;AACd,qBAAO,iBAAiB;AAAA,YAC1B,WAAW,SAAS,GAAG;AACrB,qBAAO,kBAAkB;AAAA,YAC3B,WAAW,SAAS,GAAG;AACrB,qBAAO,kBAAkB;AAAA,YAC3B,OAAO;AACL,oBAAM,IAAI,UAAU,gCAAgCF,MAAI;AAAA,YAC1D;AACA,mBAAO,KAAK,cAAc,EAAE,KAAK,YAAY,KAAK,CAAC;AAAA,UACrD,GAAG,oBAAoB,KAAK,CAAC;AAAA,QAC/B;AACA,iBAAS,sBAAsB,OAAO;AACpC,cAAI,EAAE,gBAAgB,cAAc;AAClC,mBAAO;AAAA,UACT;AACA,cAAI,EAAE,iBAAiB,cAAc;AACnC,mBAAO;AAAA,UACT;AACA,cAAI,YAAY,KAAK,GAAG,QAAQ;AAChC,cAAI,OAAO,KAAK,GAAG;AACnB,cAAI,aAAa,MAAM,GAAG,QAAQ;AAClC,cAAI,QAAQ,MAAM,GAAG;AACrB,iBAAO,UAAU,WAAW;AAC1B,mBAAO,UAAU,OAAO,IAAI;AAC5B,wBAAY,UAAU;AAAA,UACxB;AACA,iBAAO,WAAW,WAAW;AAC3B,oBAAQ,WAAW,OAAO,KAAK;AAC/B,yBAAa,WAAW;AAAA,UAC1B;AACA,iBAAO,cAAc,cAAc,SAAS;AAAA,QAC9C;AACA,iBAAS,2BAA2BE,IAAG;AACrC,iBAAO,EAAE,OAAOA,GAAE,OAAO,iBAAiBA,GAAE,iBAAiB,yBAAyBA,GAAE,yBAAyB,KAAKA,GAAE,KAAK,SAASA,GAAE,SAAS,UAAUA,GAAE,UAAU,cAAcA,GAAE,aAAa;AAAA,QACtM;AACA,iBAAS,4BAA4B,KAAK;AACxC,mBAAS,oBAAoB,QAAQ;AACnC,mBAAO,OAAO,GAAG,QAAQ,gBAAgB;AAAA,UAC3C;AACA,4BAAkB,oBAAoB,GAAG,IAAI,2BAA2B;AAAA,QAC1E;AACA,YAAI,uBAAuB;AAC3B,iBAAS,gBAAgB,QAAQ;AAAA,QACjC;AACA,iBAAS,cAAc,IAAI;AACzB,cAAI,GAAG,UAAU;AACf,eAAG,aAAa,cAAc,GAAG,QAAQ;AAAA,UAC3C,OAAO;AACL,eAAG,QAAQ,gBAAgB,cAAc,GAAG,GAAG;AAAA,UACjD;AAAA,QACF;AACA,iBAAS,mBAAmB,IAAI;AAC9B,aAAG,MAAM,SAAS;AAClB,cAAI,WAAW,GAAG,MAAM,UAAU;AAClC,cAAI,UAAU;AACZ,0BAAc,EAAE;AAAA,UAClB;AAAA,QACF;AACA,iBAAS,gBAAgB,KAAK,UAAU,cAAc;AACpD,cAAI,aAAa,cAAc;AAC7B,mBAAO;AAAA,UACT;AACA,cAAI,aAAa,cAAc,QAAQ;AACrC,mBAAO;AAAA,UACT;AACA,cAAI,KAAK,gBAAgB,KAAK,UAAU,aAAa,SAAS;AAC9D,cAAI,OAAO,MAAM;AACf,mBAAO;AAAA,UACT;AACA,iBAAO,aAAa,SAAS,EAAE;AAAA,QACjC;AACA,YAAI,qBAAqB,CAAC;AAC1B,iBAAS,4BAA4B;AACnC,iBAAO,OAAO,KAAK,mBAAmB,EAAE;AAAA,QAC1C;AACA,iBAAS,4BAA4B;AACnC,cAAI,KAAK,CAAC;AACV,mBAAS,KAAK,qBAAqB;AACjC,gBAAI,oBAAoB,eAAe,CAAC,GAAG;AACzC,iBAAG,KAAK,oBAAoB,CAAC,CAAC;AAAA,YAChC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC;AACrB,iBAAS,sBAAsB;AAC7B,iBAAO,cAAc,QAAQ;AAC3B,gBAAI,MAAM,cAAc,IAAI;AAC5B,gBAAI,GAAG,kBAAkB;AACzB,gBAAI,QAAQ,EAAE;AAAA,UAChB;AAAA,QACF;AACA,YAAI,gBAAgB;AACpB,iBAAS,iBAAiB,IAAI;AAC5B,0BAAgB;AAChB,cAAI,cAAc,UAAU,eAAe;AACzC,0BAAc,mBAAmB;AAAA,UACnC;AAAA,QACF;AACA,iBAAS,cAAc;AACrB,UAAAf,QAAO,2BAA2B,IAAI;AACtC,UAAAA,QAAO,2BAA2B,IAAI;AACtC,UAAAA,QAAO,qBAAqB,IAAI;AAChC,UAAAA,QAAO,kBAAkB,IAAI;AAAA,QAC/B;AACA,YAAI,sBAAsB,CAAC;AAC3B,iBAAS,iBAAiB,QAAQ,KAAK;AACrC,cAAI,QAAQ,QAAQ;AAClB,8BAAkB,6BAA6B;AAAA,UACjD;AACA,iBAAO,OAAO,WAAW;AACvB,kBAAM,OAAO,OAAO,GAAG;AACvB,qBAAS,OAAO;AAAA,UAClB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,qBAAqB,QAAQ,KAAK;AACzC,gBAAM,iBAAiB,QAAQ,GAAG;AAClC,iBAAO,oBAAoB,GAAG;AAAA,QAChC;AACA,iBAAS,gBAAgB,WAAW,QAAQ;AAC1C,cAAI,CAAC,OAAO,WAAW,CAAC,OAAO,KAAK;AAClC,+BAAmB,0CAA0C;AAAA,UAC/D;AACA,cAAI,kBAAkB,CAAC,CAAC,OAAO;AAC/B,cAAI,cAAc,CAAC,CAAC,OAAO;AAC3B,cAAI,oBAAoB,aAAa;AACnC,+BAAmB,kDAAkD;AAAA,UACvE;AACA,iBAAO,QAAQ,EAAE,OAAO,EAAE;AAC1B,iBAAO,gBAAgB,OAAO,OAAO,WAAW,EAAE,IAAI,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;AAAA,QAC5E;AACA,iBAAS,+BAA+B,KAAK;AAC3C,cAAI,aAAa,KAAK,WAAW,GAAG;AACpC,cAAI,CAAC,YAAY;AACf,iBAAK,WAAW,GAAG;AACnB,mBAAO;AAAA,UACT;AACA,cAAI,qBAAqB,qBAAqB,KAAK,iBAAiB,UAAU;AAC9E,cAAI,uBAAuB,QAAQ;AACjC,gBAAI,mBAAmB,GAAG,MAAM,UAAU,GAAG;AAC3C,iCAAmB,GAAG,MAAM;AAC5B,iCAAmB,GAAG,WAAW;AACjC,qBAAO,mBAAmB,OAAO,EAAE;AAAA,YACrC,OAAO;AACL,kBAAI,KAAK,mBAAmB,OAAO,EAAE;AACrC,mBAAK,WAAW,GAAG;AACnB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,mBAAS,oBAAoB;AAC3B,gBAAI,KAAK,gBAAgB;AACvB,qBAAO,gBAAgB,KAAK,gBAAgB,mBAAmB,EAAE,SAAS,KAAK,aAAa,KAAK,YAAY,cAAc,MAAM,UAAU,IAAI,CAAC;AAAA,YAClJ,OAAO;AACL,qBAAO,gBAAgB,KAAK,gBAAgB,mBAAmB,EAAE,SAAS,MAAM,IAAI,CAAC;AAAA,YACvF;AAAA,UACF;AACA,cAAI,aAAa,KAAK,gBAAgB,cAAc,UAAU;AAC9D,cAAI,0BAA0B,mBAAmB,UAAU;AAC3D,cAAI,CAAC,yBAAyB;AAC5B,mBAAO,kBAAkB,KAAK,IAAI;AAAA,UACpC;AACA,cAAI;AACJ,cAAI,KAAK,SAAS;AAChB,qBAAS,wBAAwB;AAAA,UACnC,OAAO;AACL,qBAAS,wBAAwB;AAAA,UACnC;AACA,cAAI,KAAK,gBAAgB,YAAY,KAAK,iBAAiB,OAAO,eAAe;AACjF,cAAI,OAAO,MAAM;AACf,mBAAO,kBAAkB,KAAK,IAAI;AAAA,UACpC;AACA,cAAI,KAAK,gBAAgB;AACvB,mBAAO,gBAAgB,OAAO,gBAAgB,mBAAmB,EAAE,SAAS,QAAQ,KAAK,IAAI,cAAc,MAAM,UAAU,IAAI,CAAC;AAAA,UAClI,OAAO;AACL,mBAAO,gBAAgB,OAAO,gBAAgB,mBAAmB,EAAE,SAAS,QAAQ,KAAK,GAAG,CAAC;AAAA,UAC/F;AAAA,QACF;AACA,YAAI,kBAAkB,SAAS,QAAQ;AACrC,cAAI,OAAO,yBAAyB,aAAa;AAC/C,8BAAkB,CAAC,YAAY;AAC/B,mBAAO;AAAA,UACT;AACA,iCAAuB,IAAI,qBAAqB,CAAC,SAAS;AACxD,+BAAmB,KAAK,EAAE;AAAA,UAC5B,CAAC;AACD,4BAAkB,CAAC,YAAY;AAC7B,gBAAI,KAAK,QAAQ;AACjB,gBAAI,cAAc,CAAC,CAAC,GAAG;AACvB,gBAAI,aAAa;AACf,kBAAI,OAAO,EAAE,GAAG;AAChB,mCAAqB,SAAS,SAAS,MAAM,OAAO;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,4BAAkB,CAAC,YAAY,qBAAqB,WAAW,OAAO;AACtE,iBAAO,gBAAgB,MAAM;AAAA,QAC/B;AACA,iBAAS,oBAAoB;AAC3B,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,yBAAyB;AACnC,iBAAK,GAAG,MAAM,SAAS;AACvB,mBAAO;AAAA,UACT,OAAO;AACL,gBAAIgB,SAAQ,gBAAgB,OAAO,OAAO,OAAO,eAAe,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,2BAA2B,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9H,YAAAA,OAAM,GAAG,MAAM,SAAS;AACxB,YAAAA,OAAM,GAAG,kBAAkB;AAC3B,mBAAOA;AAAA,UACT;AAAA,QACF;AACA,iBAAS,qBAAqB;AAC5B,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,mBAAmB,CAAC,KAAK,GAAG,yBAAyB;AAC/D,8BAAkB,uCAAuC;AAAA,UAC3D;AACA,0BAAgB,IAAI;AACpB,6BAAmB,KAAK,EAAE;AAC1B,cAAI,CAAC,KAAK,GAAG,yBAAyB;AACpC,iBAAK,GAAG,WAAW;AACnB,iBAAK,GAAG,MAAM;AAAA,UAChB;AAAA,QACF;AACA,iBAAS,wBAAwB;AAC/B,iBAAO,CAAC,KAAK,GAAG;AAAA,QAClB;AACA,iBAAS,0BAA0B;AACjC,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,mBAAmB,CAAC,KAAK,GAAG,yBAAyB;AAC/D,8BAAkB,uCAAuC;AAAA,UAC3D;AACA,wBAAc,KAAK,IAAI;AACvB,cAAI,cAAc,WAAW,KAAK,eAAe;AAC/C,0BAAc,mBAAmB;AAAA,UACnC;AACA,eAAK,GAAG,kBAAkB;AAC1B,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB;AAC1B,sBAAY,UAAU,WAAW,IAAI;AACrC,sBAAY,UAAU,OAAO,IAAI;AACjC,sBAAY,UAAU,QAAQ,IAAI;AAClC,sBAAY,UAAU,WAAW,IAAI;AACrC,sBAAY,UAAU,aAAa,IAAI;AAAA,QACzC;AACA,iBAAS,cAAc;AAAA,QACvB;AACA,YAAI,SAAS;AACb,YAAI,SAAS;AACb,iBAAS,sBAAsBH,QAAM;AACnC,cAAIA,WAAS,QAAQ;AACnB,mBAAO;AAAA,UACT;AACA,UAAAA,SAAOA,OAAK,QAAQ,kBAAkB,GAAG;AACzC,cAAIC,KAAID,OAAK,WAAW,CAAC;AACzB,cAAIC,MAAK,UAAUA,MAAK,QAAQ;AAC9B,mBAAO,IAAID,MAAI;AAAA,UACjB;AACA,iBAAOA;AAAA,QACT;AACA,iBAAS,oBAAoBA,QAAM,MAAM;AACvC,UAAAA,SAAO,sBAAsBA,MAAI;AACjC,iBAAO,EAAE,CAACA,MAAI,GAAG,WAAW;AAC1B,mBAAO,KAAK,MAAM,MAAM,SAAS;AAAA,UACnC,EAAE,EAAEA,MAAI;AAAA,QACV;AACA,iBAAS,oBAAoB,OAAO,YAAY,WAAW;AACzD,cAAI,MAAM,UAAU,EAAE,kBAAkB,QAAQ;AAC9C,gBAAI,WAAW,MAAM,UAAU;AAC/B,kBAAM,UAAU,IAAI,WAAW;AAC7B,kBAAI,CAAC,MAAM,UAAU,EAAE,cAAc,eAAe,UAAU,MAAM,GAAG;AACrE,kCAAkB,aAAa,SAAS,iDAAiD,UAAU,MAAM,uBAAuB,MAAM,UAAU,EAAE,aAAa,IAAI;AAAA,cACrK;AACA,qBAAO,MAAM,UAAU,EAAE,cAAc,UAAU,MAAM,EAAE,MAAM,MAAM,SAAS;AAAA,YAChF;AACA,kBAAM,UAAU,EAAE,gBAAgB,CAAC;AACnC,kBAAM,UAAU,EAAE,cAAc,SAAS,QAAQ,IAAI;AAAA,UACvD;AAAA,QACF;AACA,iBAAS,mBAAmBA,QAAM,OAAO,cAAc;AACrD,cAAIb,QAAO,eAAea,MAAI,GAAG;AAC/B,gBAAI,iBAAiB,UAAUb,QAAOa,MAAI,EAAE,kBAAkB,UAAUb,QAAOa,MAAI,EAAE,cAAc,YAAY,MAAM,QAAQ;AAC3H,gCAAkB,gCAAgCA,MAAI,SAAS;AAAA,YACjE;AACA,gCAAoBb,SAAQa,QAAMA,MAAI;AACtC,gBAAIb,QAAO,eAAe,YAAY,GAAG;AACvC,gCAAkB,uFAAuF,YAAY,IAAI;AAAA,YAC3H;AACA,YAAAA,QAAOa,MAAI,EAAE,cAAc,YAAY,IAAI;AAAA,UAC7C,OAAO;AACL,YAAAb,QAAOa,MAAI,IAAI;AACf,gBAAI,iBAAiB,QAAQ;AAC3B,cAAAb,QAAOa,MAAI,EAAE,eAAe;AAAA,YAC9B;AAAA,UACF;AAAA,QACF;AACA,iBAAS,gBAAgBA,QAAM,aAAa,mBAAmB,eAAe,WAAW,eAAe,QAAQ,UAAU;AACxH,eAAK,OAAOA;AACZ,eAAK,cAAc;AACnB,eAAK,oBAAoB;AACzB,eAAK,gBAAgB;AACrB,eAAK,YAAY;AACjB,eAAK,gBAAgB;AACrB,eAAK,SAAS;AACd,eAAK,WAAW;AAChB,eAAK,uBAAuB,CAAC;AAAA,QAC/B;AACA,iBAAS,cAAc,KAAK,UAAU,cAAc;AAClD,iBAAO,aAAa,cAAc;AAChC,gBAAI,CAAC,SAAS,QAAQ;AACpB,gCAAkB,gCAAgC,aAAa,IAAI,wBAAwB,SAAS,IAAI,EAAE;AAAA,YAC5G;AACA,kBAAM,SAAS,OAAO,GAAG;AACzB,uBAAW,SAAS;AAAA,UACtB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oCAAoC,aAAa,QAAQ;AAChE,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,cAAI,MAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACxE,iBAAO;AAAA,QACT;AACA,iBAAS,yBAAyB,aAAa,QAAQ;AACrD,cAAI;AACJ,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,gBAAI,KAAK,gBAAgB;AACvB,oBAAM,KAAK,eAAe;AAC1B,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,KAAK,eAAe,GAAG;AAAA,cAC1C;AACA,qBAAO;AAAA,YACT,OAAO;AACL,qBAAO;AAAA,YACT;AAAA,UACF;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,CAAC,KAAK,WAAW,OAAO,GAAG,QAAQ,SAAS;AAC9C,8BAAkB,mCAAmC,OAAO,GAAG,eAAe,OAAO,GAAG,aAAa,OAAO,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,UACrK;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,gBAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACpE,cAAI,KAAK,gBAAgB;AACvB,gBAAI,OAAO,GAAG,aAAa,QAAQ;AACjC,gCAAkB,iDAAiD;AAAA,YACrE;AACA,oBAAQ,KAAK,eAAe;AAAA,cAC1B,KAAK;AACH,oBAAI,OAAO,GAAG,iBAAiB,MAAM;AACnC,wBAAM,OAAO,GAAG;AAAA,gBAClB,OAAO;AACL,oCAAkB,mCAAmC,OAAO,GAAG,eAAe,OAAO,GAAG,aAAa,OAAO,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,gBACrK;AACA;AAAA,cACF,KAAK;AACH,sBAAM,OAAO,GAAG;AAChB;AAAA,cACF,KAAK;AACH,oBAAI,OAAO,GAAG,iBAAiB,MAAM;AACnC,wBAAM,OAAO,GAAG;AAAA,gBAClB,OAAO;AACL,sBAAI,eAAe,OAAO,OAAO,EAAE;AACnC,wBAAM,KAAK,SAAS,KAAK,MAAM,SAAS,WAAW;AACjD,iCAAa,QAAQ,EAAE;AAAA,kBACzB,CAAC,CAAC;AACF,sBAAI,gBAAgB,MAAM;AACxB,gCAAY,KAAK,KAAK,eAAe,GAAG;AAAA,kBAC1C;AAAA,gBACF;AACA;AAAA,cACF;AACE,kCAAkB,6BAA6B;AAAA,YACnD;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,uCAAuC,aAAa,QAAQ;AACnE,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,OAAO,GAAG,QAAQ,SAAS;AAC7B,8BAAkB,mCAAmC,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,UAC9G;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,cAAI,MAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACxE,iBAAO;AAAA,QACT;AACA,iBAAS,6BAA6B,KAAK;AACzC,cAAI,KAAK,eAAe;AACtB,kBAAM,KAAK,cAAc,GAAG;AAAA,UAC9B;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,6BAA6B,KAAK;AACzC,cAAI,KAAK,eAAe;AACtB,iBAAK,cAAc,GAAG;AAAA,UACxB;AAAA,QACF;AACA,iBAAS,+BAA+B,QAAQ;AAC9C,cAAI,WAAW,MAAM;AACnB,mBAAO,QAAQ,EAAE;AAAA,UACnB;AAAA,QACF;AACA,iBAAS,yBAAyB;AAChC,4BAAkB,UAAU,aAAa;AACzC,4BAAkB,UAAU,aAAa;AACzC,4BAAkB,UAAU,gBAAgB,IAAI;AAChD,4BAAkB,UAAU,sBAAsB,IAAI;AACtD,4BAAkB,UAAU,cAAc,IAAI;AAC9C,4BAAkB,UAAU,cAAc,IAAI;AAAA,QAChD;AACA,iBAAS,kBAAkBA,QAAM,iBAAiB,aAAa,SAAS,gBAAgB,aAAa,eAAe,eAAe,gBAAgB,UAAU,eAAe;AAC1K,eAAK,OAAOA;AACZ,eAAK,kBAAkB;AACvB,eAAK,cAAc;AACnB,eAAK,UAAU;AACf,eAAK,iBAAiB;AACtB,eAAK,cAAc;AACnB,eAAK,gBAAgB;AACrB,eAAK,gBAAgB;AACrB,eAAK,iBAAiB;AACtB,eAAK,WAAW;AAChB,eAAK,gBAAgB;AACrB,cAAI,CAAC,kBAAkB,gBAAgB,cAAc,QAAQ;AAC3D,gBAAI,SAAS;AACX,mBAAK,YAAY,IAAI;AACrB,mBAAK,qBAAqB;AAAA,YAC5B,OAAO;AACL,mBAAK,YAAY,IAAI;AACrB,mBAAK,qBAAqB;AAAA,YAC5B;AAAA,UACF,OAAO;AACL,iBAAK,YAAY,IAAI;AAAA,UACvB;AAAA,QACF;AACA,iBAAS,oBAAoBA,QAAM,OAAO,cAAc;AACtD,cAAI,CAACb,QAAO,eAAea,MAAI,GAAG;AAChC,+BAAmB,qCAAqC;AAAA,UAC1D;AACA,cAAIb,QAAOa,MAAI,EAAE,kBAAkB,UAAU,iBAAiB,QAAQ;AACpE,YAAAb,QAAOa,MAAI,EAAE,cAAc,YAAY,IAAI;AAAA,UAC7C,OAAO;AACL,YAAAb,QAAOa,MAAI,IAAI;AACf,YAAAb,QAAOa,MAAI,EAAE,WAAW;AAAA,UAC1B;AAAA,QACF;AACA,YAAI,gBAAgB,CAAC,KAAK,KAAK,SAAS;AACtC,cAAIC,KAAId,QAAO,aAAa,GAAG;AAC/B,iBAAO,QAAQ,KAAK,SAASc,GAAE,MAAM,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,IAAIA,GAAE,KAAK,MAAM,GAAG;AAAA,QACnF;AACA,YAAI,UAAU,CAAC,KAAK,KAAK,SAAS;AAChC,cAAI,IAAI,SAAS,GAAG,GAAG;AACrB,mBAAO,cAAc,KAAK,KAAK,IAAI;AAAA,UACrC;AACA,cAAI,MAAM,kBAAkB,GAAG,EAAE,MAAM,MAAM,IAAI;AACjD,iBAAO;AAAA,QACT;AACA,YAAI,eAAe,CAAC,KAAK,QAAQ;AAC/B,cAAI,WAAW,CAAC;AAChB,iBAAO,WAAW;AAChB,qBAAS,SAAS;AAClB,mBAAO,OAAO,UAAU,SAAS;AACjC,mBAAO,QAAQ,KAAK,KAAK,QAAQ;AAAA,UACnC;AAAA,QACF;AACA,iBAAS,wBAAwB,WAAW,aAAa;AACvD,sBAAY,iBAAiB,SAAS;AACtC,mBAAS,gBAAgB;AACvB,gBAAI,UAAU,SAAS,GAAG,GAAG;AAC3B,qBAAO,aAAa,WAAW,WAAW;AAAA,YAC5C;AACA,mBAAO,kBAAkB,WAAW;AAAA,UACtC;AACA,cAAI,KAAK,cAAc;AACvB,cAAI,OAAO,MAAM,YAAY;AAC3B,8BAAkB,2CAA2C,SAAS,KAAK,WAAW,EAAE;AAAA,UAC1F;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,YAAY,eAAe,WAAW;AAC7C,cAAI,aAAa,oBAAoB,WAAW,SAAS,SAAS;AAChE,iBAAK,OAAO;AACZ,iBAAK,UAAU;AACf,gBAAI,QAAQ,IAAI,MAAM,OAAO,EAAE;AAC/B,gBAAI,UAAU,QAAQ;AACpB,mBAAK,QAAQ,KAAK,SAAS,IAAI,OAAO,MAAM,QAAQ,sBAAsB,EAAE;AAAA,YAC9E;AAAA,UACF,CAAC;AACD,qBAAW,YAAY,OAAO,OAAO,cAAc,SAAS;AAC5D,qBAAW,UAAU,cAAc;AACnC,qBAAW,UAAU,WAAW,WAAW;AACzC,gBAAI,KAAK,YAAY,QAAQ;AAC3B,qBAAO,KAAK;AAAA,YACd,OAAO;AACL,qBAAO,GAAG,KAAK,IAAI,KAAK,KAAK,OAAO;AAAA,YACtC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,mBAAmB;AACvB,iBAAS,YAAY,MAAM;AACzB,cAAI,MAAM,eAAe,IAAI;AAC7B,cAAI,KAAK,iBAAiB,GAAG;AAC7B,gBAAM,GAAG;AACT,iBAAO;AAAA,QACT;AACA,iBAAS,sBAAsB,SAAS,OAAO;AAC7C,cAAI,eAAe,CAAC;AACpB,cAAI,OAAO,CAAC;AACZ,mBAAS,MAAM,MAAM;AACnB,gBAAI,KAAK,IAAI,GAAG;AACd;AAAA,YACF;AACA,gBAAI,gBAAgB,IAAI,GAAG;AACzB;AAAA,YACF;AACA,gBAAI,iBAAiB,IAAI,GAAG;AAC1B,+BAAiB,IAAI,EAAE,QAAQ,KAAK;AACpC;AAAA,YACF;AACA,yBAAa,KAAK,IAAI;AACtB,iBAAK,IAAI,IAAI;AAAA,UACf;AACA,gBAAM,QAAQ,KAAK;AACnB,gBAAM,IAAI,iBAAiB,GAAG,OAAO,OAAO,aAAa,IAAI,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;AAAA,QACxF;AACA,iBAAS,wBAAwB,SAAS,gBAAgB,qBAAqB,kBAAkB,wBAAwB,eAAe,iBAAiB,QAAQ,mBAAmB,UAAUD,QAAM,qBAAqB,eAAe;AACtO,uBAAa;AACb,8BAAoB;AACpB,mCAAyB;AACzB,gCAAsB;AACtB,sCAA4B;AAC5B,6BAAmB;AACnB,+BAAqB;AACrB,sBAAY;AACZ,iCAAuB;AACvB,wBAAc;AACd,UAAAA,YAAU;AACV,mCAAyB;AACzB,6BAAmB;AACnB,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,0BAAgB,wBAAwB,wBAAwB,aAAa;AAC7E,cAAI,QAAQ;AACV,qBAAS,wBAAwB,iBAAiB,MAAM;AAAA,UAC1D;AACA,cAAI,UAAU;AACZ,uBAAW,wBAAwB,mBAAmB,QAAQ;AAAA,UAChE;AACA,0BAAgB,wBAAwB,qBAAqB,aAAa;AAC1E,cAAI,oBAAoB,sBAAsBA,MAAI;AAClD,6BAAmB,mBAAmB,WAAW;AAC/C,kCAAsB,oBAAoBA,MAAI,yBAAyB,CAAC,gBAAgB,CAAC;AAAA,UAC3F,CAAC;AACD,wCAA8B,CAAC,SAAS,gBAAgB,mBAAmB,GAAG,mBAAmB,CAAC,gBAAgB,IAAI,CAAC,GAAG,SAAS,MAAM;AACvI,mBAAO,KAAK,CAAC;AACb,gBAAI;AACJ,gBAAI;AACJ,gBAAI,kBAAkB;AACpB,0BAAY,KAAK;AACjB,8BAAgB,UAAU;AAAA,YAC5B,OAAO;AACL,8BAAgB,YAAY;AAAA,YAC9B;AACA,gBAAI,cAAc,oBAAoB,mBAAmB,WAAW;AAClE,kBAAI,OAAO,eAAe,IAAI,MAAM,mBAAmB;AACrD,sBAAM,IAAI,aAAa,4BAA4BA,MAAI;AAAA,cACzD;AACA,kBAAI,gBAAgB,qBAAqB,QAAQ;AAC/C,sBAAM,IAAI,aAAaA,SAAO,gCAAgC;AAAA,cAChE;AACA,kBAAI,OAAO,gBAAgB,iBAAiB,UAAU,MAAM;AAC5D,kBAAI,SAAS,QAAQ;AACnB,sBAAM,IAAI,aAAa,2BAA2BA,MAAI,uCAAuC,UAAU,MAAM,iBAAiB,OAAO,KAAK,gBAAgB,gBAAgB,EAAE,SAAS,CAAC,uBAAuB;AAAA,cAC/M;AACA,qBAAO,KAAK,MAAM,MAAM,SAAS;AAAA,YACnC,CAAC;AACD,gBAAI,oBAAoB,OAAO,OAAO,eAAe,EAAE,aAAa,EAAE,OAAO,YAAY,EAAE,CAAC;AAC5F,wBAAY,YAAY;AACxB,gBAAI,kBAAkB,IAAI,gBAAgBA,QAAM,aAAa,mBAAmB,eAAe,WAAW,eAAe,QAAQ,QAAQ;AACzI,gBAAI,gBAAgB,WAAW;AAC7B,kBAAI,gBAAgB,UAAU,qBAAqB,QAAQ;AACzD,gCAAgB,UAAU,mBAAmB,CAAC;AAAA,cAChD;AACA,8BAAgB,UAAU,iBAAiB,KAAK,eAAe;AAAA,YACjE;AACA,gBAAI,qBAAqB,IAAI,kBAAkBA,QAAM,iBAAiB,MAAM,OAAO,KAAK;AACxF,gBAAI,mBAAmB,IAAI,kBAAkBA,SAAO,KAAK,iBAAiB,OAAO,OAAO,KAAK;AAC7F,gBAAI,wBAAwB,IAAI,kBAAkBA,SAAO,WAAW,iBAAiB,OAAO,MAAM,KAAK;AACvG,+BAAmB,OAAO,IAAI,EAAE,aAAa,kBAAkB,kBAAkB,sBAAsB;AACvG,gCAAoB,mBAAmB,WAAW;AAClD,mBAAO,CAAC,oBAAoB,kBAAkB,qBAAqB;AAAA,UACrE,CAAC;AAAA,QACH;AACA,iBAAS,oBAAoB,OAAO,cAAc;AAChD,cAAI,QAAQ,CAAC;AACb,mBAASL,KAAI,GAAGA,KAAI,OAAOA,MAAK;AAC9B,kBAAM,KAAK,kBAAkB,EAAE,eAAeA,KAAI,MAAM,CAAC,CAAC;AAAA,UAC5D;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,QAAQ,aAAa,cAAc;AAC1C,cAAI,EAAE,uBAAuB,WAAW;AACtC,kBAAM,IAAI,UAAU,qCAAqC,OAAO,WAAW,0BAA0B;AAAA,UACvG;AACA,cAAI,QAAQ,oBAAoB,YAAY,QAAQ,uBAAuB,WAAW;AAAA,UACtF,CAAC;AACD,gBAAM,YAAY,YAAY;AAC9B,cAAI,MAAM,IAAI,MAAM;AACpB,cAAIG,KAAI,YAAY,MAAM,KAAK,YAAY;AAC3C,iBAAOA,cAAa,SAASA,KAAI;AAAA,QACnC;AACA,iBAAS,qBAAqB,WAAW,UAAU,WAAW,gBAAgB,eAAe,SAAS;AACpG,cAAI,WAAW,SAAS;AACxB,cAAI,WAAW,GAAG;AAChB,8BAAkB,gFAAgF;AAAA,UACpG;AACA,cAAI,oBAAoB,SAAS,CAAC,MAAM,QAAQ,cAAc;AAC9D,cAAI,uBAAuB;AAC3B,mBAASH,KAAI,GAAGA,KAAI,SAAS,QAAQ,EAAEA,IAAG;AACxC,gBAAI,SAASA,EAAC,MAAM,QAAQ,SAASA,EAAC,EAAE,uBAAuB,QAAQ;AACrE,qCAAuB;AACvB;AAAA,YACF;AAAA,UACF;AACA,cAAI,UAAU,SAAS,CAAC,EAAE,SAAS;AACnC,cAAI,WAAW;AACf,cAAI,gBAAgB;AACpB,mBAASA,KAAI,GAAGA,KAAI,WAAW,GAAG,EAAEA,IAAG;AACrC,yBAAaA,OAAM,IAAI,OAAO,MAAM,QAAQA;AAC5C,8BAAkBA,OAAM,IAAI,OAAO,MAAM,QAAQA,KAAI;AAAA,UACvD;AACA,cAAI,gBAAgB;AAAA,0BACJ,sBAAsB,SAAS,CAAC,IAAI,QAAQ;AAAA,mCACnC,WAAW,CAAC;AAAA,wCACP,SAAS,gBAAgB,UAAU,MAAM,wBAAwB,WAAW,CAAC;AAAA;AAE3G,cAAI,sBAAsB;AACxB,6BAAiB;AAAA,UACnB;AACA,cAAI,YAAY,uBAAuB,gBAAgB;AACvD,cAAI,QAAQ,CAAC,qBAAqB,WAAW,MAAM,kBAAkB,WAAW,YAAY;AAC5F,cAAI,QAAQ,CAAC,mBAAmB,gBAAgB,eAAe,gBAAgB,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC;AACvG,cAAI,mBAAmB;AACrB,6BAAiB,2CAA2C,YAAY;AAAA,UAC1E;AACA,mBAASA,KAAI,GAAGA,KAAI,WAAW,GAAG,EAAEA,IAAG;AACrC,6BAAiB,YAAYA,KAAI,oBAAoBA,KAAI,iBAAiB,YAAY,UAAUA,KAAI,WAAW,SAASA,KAAI,CAAC,EAAE,OAAO;AACtI,kBAAM,KAAK,YAAYA,EAAC;AACxB,kBAAM,KAAK,SAASA,KAAI,CAAC,CAAC;AAAA,UAC5B;AACA,cAAI,mBAAmB;AACrB,4BAAgB,eAAe,cAAc,SAAS,IAAI,OAAO,MAAM;AAAA,UACzE;AACA,4BAAkB,WAAW,UAAU,cAAc,MAAM,gBAAgB,cAAc,SAAS,IAAI,OAAO,MAAM,gBAAgB;AACnI,cAAI,sBAAsB;AACxB,6BAAiB;AAAA,UACnB,OAAO;AACL,qBAASA,KAAI,oBAAoB,IAAI,GAAGA,KAAI,SAAS,QAAQ,EAAEA,IAAG;AAChE,kBAAI,YAAYA,OAAM,IAAI,cAAc,SAASA,KAAI,KAAK;AAC1D,kBAAI,SAASA,EAAC,EAAE,uBAAuB,MAAM;AAC3C,iCAAiB,YAAY,WAAW,YAAY,WAAW,SAASA,EAAC,EAAE,OAAO;AAClF,sBAAM,KAAK,YAAY,OAAO;AAC9B,sBAAM,KAAK,SAASA,EAAC,EAAE,kBAAkB;AAAA,cAC3C;AAAA,YACF;AAAA,UACF;AACA,cAAI,SAAS;AACX,6BAAiB;AAAA,UACnB,OAAO;AAAA,UACP;AACA,2BAAiB;AACjB,gBAAM,KAAK,aAAa;AACxB,iBAAO,QAAQ,UAAU,KAAK,EAAE,MAAM,MAAM,KAAK;AAAA,QACnD;AACA,iBAAS,oCAAoC,cAAc,UAAU,iBAAiB,kBAAkB,SAAS,gBAAgB;AAC/H,4BAAkB;AAClB,+BAAqB;AACrB,gCAAsB;AACtB,uBAAa;AACb,8BAAoB;AACpB,cAAI,cAAc,oBAAoB,UAAU,eAAe;AAC/D,oBAAU,wBAAwB,kBAAkB,OAAO;AAC3D,wCAA8B,CAAC,GAAG,CAAC,YAAY,GAAG,SAAS,WAAW;AACpE,wBAAY,UAAU,CAAC;AACvB,gBAAI,YAAY,eAAe,UAAU,IAAI;AAC7C,gBAAI,UAAU,gBAAgB,qBAAqB,QAAQ;AACzD,wBAAU,gBAAgB,mBAAmB,CAAC;AAAA,YAChD;AACA,gBAAI,UAAU,gBAAgB,iBAAiB,WAAW,CAAC,MAAM,QAAQ;AACvE,oBAAM,IAAI,aAAa,8EAA8E,WAAW,CAAC,gBAAgB,UAAU,IAAI,qGAAqG;AAAA,YACtP;AACA,sBAAU,gBAAgB,iBAAiB,WAAW,CAAC,IAAI,MAAM;AAC/D,oCAAsB,oBAAoB,UAAU,IAAI,yBAAyB,WAAW;AAAA,YAC9F;AACA,0CAA8B,CAAC,GAAG,aAAa,SAAS,UAAU;AAChE,uBAAS,OAAO,GAAG,GAAG,IAAI;AAC1B,wBAAU,gBAAgB,iBAAiB,WAAW,CAAC,IAAI,qBAAqB,WAAW,UAAU,MAAM,SAAS,cAAc;AAClI,qBAAO,CAAC;AAAA,YACV,CAAC;AACD,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,iCAAiC,cAAc,YAAY,UAAU,iBAAiB,kBAAkB,YAAY,SAAS,eAAe,SAAS;AAC5J,4BAAkB;AAClB,0BAAgB;AAChB,+BAAqB;AACrB,gCAAsB;AACtB,0BAAgB;AAChB,uBAAa;AACb,cAAI,cAAc,oBAAoB,UAAU,eAAe;AAC/D,uBAAa,iBAAiB,UAAU;AACxC,uBAAa,wBAAwB,kBAAkB,UAAU;AACjE,wCAA8B,CAAC,GAAG,CAAC,YAAY,GAAG,SAAS,WAAW;AACpE,wBAAY,UAAU,CAAC;AACvB,gBAAI,YAAY,GAAG,UAAU,IAAI,IAAI,UAAU;AAC/C,gBAAI,WAAW,WAAW,IAAI,GAAG;AAC/B,2BAAa,OAAO,WAAW,UAAU,CAAC,CAAC;AAAA,YAC7C;AACA,gBAAI,eAAe;AACjB,wBAAU,gBAAgB,qBAAqB,KAAK,UAAU;AAAA,YAChE;AACA,qBAAS,sBAAsB;AAC7B,oCAAsB,eAAe,SAAS,yBAAyB,WAAW;AAAA,YACpF;AACA,gBAAI,QAAQ,UAAU,gBAAgB;AACtC,gBAAI,SAAS,MAAM,UAAU;AAC7B,gBAAI,WAAW,UAAU,OAAO,kBAAkB,UAAU,OAAO,cAAc,UAAU,QAAQ,OAAO,aAAa,WAAW,GAAG;AACnI,kCAAoB,WAAW,WAAW;AAC1C,kCAAoB,YAAY,UAAU;AAC1C,oBAAM,UAAU,IAAI;AAAA,YACtB,OAAO;AACL,kCAAoB,OAAO,YAAY,SAAS;AAChD,oBAAM,UAAU,EAAE,cAAc,WAAW,CAAC,IAAI;AAAA,YAClD;AACA,0CAA8B,CAAC,GAAG,aAAa,SAAS,UAAU;AAChE,kBAAI,iBAAiB,qBAAqB,WAAW,UAAU,WAAW,YAAY,SAAS,OAAO;AACtG,kBAAI,MAAM,UAAU,EAAE,kBAAkB,QAAQ;AAC9C,+BAAe,WAAW,WAAW;AACrC,sBAAM,UAAU,IAAI;AAAA,cACtB,OAAO;AACL,sBAAM,UAAU,EAAE,cAAc,WAAW,CAAC,IAAI;AAAA,cAClD;AACA,qBAAO,CAAC;AAAA,YACV,CAAC;AACD,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,sBAAsB;AAC7B,iBAAO,OAAO,gBAAgB,WAAW,EAAE,IAAI,IAAI;AACjD,mBAAO,KAAK,UAAU,EAAE;AAAA,UAC1B,GAAG,IAAI,IAAI;AACT,mBAAO,KAAK,UAAU,EAAE,MAAM;AAAA,UAChC,GAAG,SAAS,QAAQ;AAClB,gBAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU;AAC/C,iBAAK,UAAU,EAAE,IAAI;AACrB,mBAAO;AAAA,UACT,GAAG,KAAK,IAAI;AACV,iBAAK,UAAU,EAAE,IAAI;AACrB,iBAAK,SAAS,KAAK,EAAE;AAAA,UACvB,EAAE,CAAC;AAAA,QACL;AACA,iBAAS,kBAAkB;AACzB,eAAK,YAAY,CAAC,MAAM;AACxB,eAAK,WAAW,CAAC;AAAA,QACnB;AACA,YAAI,gBAAgB,IAAI,gBAAgB;AACxC,iBAAS,eAAe,QAAQ;AAC9B,sBAAY;AACZ,cAAI,UAAU,cAAc,YAAY,EAAE,cAAc,IAAI,MAAM,EAAE,aAAa,GAAG;AAClF,0BAAc,KAAK,MAAM;AAAA,UAC3B;AAAA,QACF;AACA,iBAAS,sBAAsB;AAC7B,cAAI,QAAQ;AACZ,mBAASA,KAAI,cAAc,UAAUA,KAAI,cAAc,UAAU,QAAQ,EAAEA,IAAG;AAC5E,gBAAI,cAAc,UAAUA,EAAC,MAAM,QAAQ;AACzC,gBAAE;AAAA,YACJ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,aAAa;AACpB,wBAAc,UAAU,KAAK,EAAE,OAAO,OAAO,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,MAAM,CAAC;AAClG,wBAAc,WAAW,cAAc,UAAU;AACjD,UAAAR,QAAO,qBAAqB,IAAI;AAAA,QAClC;AACA,YAAI,QAAQ,EAAE,SAAS,CAAC,WAAW;AACjC,cAAI,CAAC,QAAQ;AACX,8BAAkB,sCAAsC,MAAM;AAAA,UAChE;AACA,iBAAO,cAAc,IAAI,MAAM,EAAE;AAAA,QACnC,GAAG,UAAU,CAAC,UAAU;AACtB,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,SAAS;AACP,qBAAO,cAAc,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC;AAAA,YACtD;AAAA,UACF;AAAA,QACF,EAAE;AACF,iBAAS,wBAAwB,SAASa,QAAM;AAC9C,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,QAAQ;AAC7D,gBAAI,KAAK,MAAM,QAAQ,MAAM;AAC7B,2BAAe,MAAM;AACrB,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,mBAAO,MAAM,SAAS,KAAK;AAAA,UAC7B,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,KAAK,CAAC;AAAA,QACxG;AACA,iBAAS,WAAW,GAAG;AACrB,cAAI,MAAM,MAAM;AACd,mBAAO;AAAA,UACT;AACA,cAAII,KAAI,OAAO;AACf,cAAIA,OAAM,YAAYA,OAAM,WAAWA,OAAM,YAAY;AACvD,mBAAO,EAAE,SAAS;AAAA,UACpB,OAAO;AACL,mBAAO,KAAK;AAAA,UACd;AAAA,QACF;AACA,iBAAS,0BAA0BJ,QAAM,OAAO;AAC9C,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO,SAAS,SAAS;AACvB,uBAAO,KAAK,cAAc,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;AAAA,cAChE;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS;AACvB,uBAAO,KAAK,cAAc,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;AAAA,cAChE;AAAA,YACF;AACE,oBAAM,IAAI,UAAU,yBAAyBA,MAAI;AAAA,UACrD;AAAA,QACF;AACA,iBAAS,wBAAwB,SAASA,QAAM,MAAM;AACpD,uBAAa;AACb,UAAAA,YAAU;AACV,oBAAU;AACV,cAAI,QAAQ,iBAAiB,IAAI;AACjC,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,0BAA0BA,QAAM,KAAK,GAAG,oBAAoB,KAAK,CAAC;AAAA,QACpH;AACA,iBAAS,2BAA2BA,QAAM,UAAU,iBAAiB,WAAW,YAAY,IAAI,SAAS;AACvG,UAAAA,YAAU;AACV,+BAAqB;AACrB,yBAAe;AACf,0BAAgB;AAChB,kBAAQ;AACR,cAAI,WAAW,oBAAoB,UAAU,eAAe;AAC5D,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,wBAAwB,WAAW,UAAU;AAC1D,6BAAmBA,QAAM,WAAW;AAClC,kCAAsB,eAAeA,MAAI,yBAAyB,QAAQ;AAAA,UAC5E,GAAG,WAAW,CAAC;AACf,wCAA8B,CAAC,GAAG,UAAU,SAAS,WAAW;AAC9D,gBAAI,mBAAmB,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,OAAO,UAAU,MAAM,CAAC,CAAC;AACrE,gCAAoBA,QAAM,qBAAqBA,QAAM,kBAAkB,MAAM,YAAY,IAAI,OAAO,GAAG,WAAW,CAAC;AACnH,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,4BAA4BA,QAAM,OAAO,QAAQ;AACxD,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO,SAAS,SAAS,kBAAkB,SAAS;AAClD,uBAAO,iBAAiB,EAAE,YAAY,CAAC;AAAA,cACzC,IAAI,SAAS,kBAAkB,SAAS;AACtC,uBAAO,iBAAiB,EAAE,YAAY,CAAC;AAAA,cACzC;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS,mBAAmB,SAAS;AACnD,uBAAO,kBAAkB,EAAE,YAAY,CAAC;AAAA,cAC1C,IAAI,SAAS,mBAAmB,SAAS;AACvC,uBAAO,kBAAkB,EAAE,YAAY,CAAC;AAAA,cAC1C;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS,mBAAmB,SAAS;AACnD,uBAAO,kBAAkB,EAAE,YAAY,CAAC;AAAA,cAC1C,IAAI,SAAS,mBAAmB,SAAS;AACvC,uBAAO,kBAAkB,EAAE,YAAY,CAAC;AAAA,cAC1C;AAAA,YACF;AACE,oBAAM,IAAI,UAAU,2BAA2BA,MAAI;AAAA,UACvD;AAAA,QACF;AACA,iBAAS,0BAA0B,eAAeA,QAAM,MAAM,UAAU,UAAU;AAChF,6BAAmB;AACnB,UAAAA,YAAU;AACV,oBAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,aAAa,IAAI;AACnB,uBAAW;AAAA,UACb;AACA,cAAI,QAAQ,iBAAiB,IAAI;AACjC,cAAI,eAAe,CAAC,UAAU;AAC9B,cAAI,aAAa,GAAG;AAClB,gBAAI,WAAW,KAAK,IAAI;AACxB,2BAAe,CAAC,UAAU,SAAS,aAAa;AAAA,UAClD;AACA,cAAI,iBAAiBA,OAAK,SAAS,UAAU;AAC7C,cAAI,kBAAkB,CAAC,OAAO,eAAe;AAAA,UAC7C;AACA,cAAI;AACJ,cAAI,gBAAgB;AAClB,yBAAa,SAAS,aAAa,OAAO;AACxC,8BAAgB,OAAO,KAAK,IAAI;AAChC,qBAAO,UAAU;AAAA,YACnB;AAAA,UACF,OAAO;AACL,yBAAa,SAAS,aAAa,OAAO;AACxC,8BAAgB,OAAO,KAAK,IAAI;AAChC,qBAAO;AAAA,YACT;AAAA,UACF;AACA,uBAAa,eAAe,EAAE,MAAAA,QAAM,gBAAgB,cAAc,cAAc,YAAY,kBAAkB,GAAG,wBAAwB,4BAA4BA,QAAM,OAAO,aAAa,CAAC,GAAG,oBAAoB,KAAK,CAAC;AAAA,QAC/N;AACA,iBAAS,8BAA8B,SAAS,eAAeA,QAAM;AACnE,uBAAa;AACb,UAAAA,YAAU;AACV,cAAI,cAAc,CAAC,WAAW,YAAY,YAAY,aAAa,YAAY,aAAa,cAAc,YAAY;AACtH,cAAI,KAAK,YAAY,aAAa;AAClC,mBAAS,iBAAiB,QAAQ;AAChC,qBAAS,UAAU;AACnB,gBAAI,OAAO,kBAAkB;AAC7B,gBAAI,OAAO,KAAK,WAAW,CAAC;AAC5B,gBAAI,OAAO,KAAK,SAAS,MAAM,CAAC;AAChC,mBAAO,IAAI,GAAG,KAAK,QAAQ,MAAM,IAAI;AAAA,UACvC;AACA,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,kBAAkB,kBAAkB,GAAG,wBAAwB,iBAAiB,GAAG,EAAE,8BAA8B,KAAK,CAAC;AAAA,QACzK;AACA,YAAI,eAAe,CAAC,KAAK,QAAQ,oBAAoB,kBAAkB,KAAK,iBAAiB,GAAG,QAAQ,eAAe;AACvH,iBAAS,6BAA6B,SAASA,QAAM;AACnD,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,kBAAkBA,WAAS;AAC/B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,gBAAI,SAAS,kBAAkB,EAAE,UAAU,CAAC;AAC5C,gBAAI,UAAU,QAAQ;AACtB,gBAAI;AACJ,gBAAI,iBAAiB;AACnB,kBAAI,iBAAiB;AACrB,uBAASL,KAAI,GAAGA,MAAK,QAAQ,EAAEA,IAAG;AAChC,oBAAI,iBAAiB,UAAUA;AAC/B,oBAAIA,MAAK,UAAU,iBAAiB,EAAE,mBAAmB,CAAC,KAAK,GAAG;AAChE,sBAAI,UAAU,iBAAiB;AAC/B,sBAAI,gBAAgB,aAAa,gBAAgB,OAAO;AACxD,sBAAI,QAAQ,QAAQ;AAClB,0BAAM;AAAA,kBACR,OAAO;AACL,2BAAO,OAAO,aAAa,CAAC;AAC5B,2BAAO;AAAA,kBACT;AACA,mCAAiB,iBAAiB;AAAA,gBACpC;AAAA,cACF;AAAA,YACF,OAAO;AACL,kBAAIU,KAAI,IAAI,MAAM,MAAM;AACxB,uBAASV,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,gBAAAU,GAAEV,EAAC,IAAI,OAAO,aAAa,iBAAiB,EAAE,UAAUA,OAAM,CAAC,CAAC;AAAA,cAClE;AACA,oBAAMU,GAAE,KAAK,EAAE;AAAA,YACjB;AACA,kBAAM,KAAK;AACX,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,gBAAI,iBAAiB,aAAa;AAChC,sBAAQ,IAAI,WAAW,KAAK;AAAA,YAC9B;AACA,gBAAI;AACJ,gBAAI,sBAAsB,OAAO,SAAS;AAC1C,gBAAI,EAAE,uBAAuB,iBAAiB,cAAc,iBAAiB,qBAAqB,iBAAiB,YAAY;AAC7H,gCAAkB,uCAAuC;AAAA,YAC3D;AACA,gBAAI,mBAAmB,qBAAqB;AAC1C,uBAAS,gBAAgB,KAAK;AAAA,YAChC,OAAO;AACL,uBAAS,MAAM;AAAA,YACjB;AACA,gBAAI,OAAO,QAAQ,IAAI,SAAS,CAAC;AACjC,gBAAI,MAAM,OAAO;AACjB,8BAAkB,EAAE,SAAS,CAAC,IAAI;AAClC,gBAAI,mBAAmB,qBAAqB;AAC1C,2BAAa,OAAO,KAAK,SAAS,CAAC;AAAA,YACrC,OAAO;AACL,kBAAI,qBAAqB;AACvB,yBAASV,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,sBAAI,WAAW,MAAM,WAAWA,EAAC;AACjC,sBAAI,WAAW,KAAK;AAClB,0BAAM,GAAG;AACT,sCAAkB,wDAAwD;AAAA,kBAC5E;AACA,mCAAiB,EAAE,MAAMA,OAAM,CAAC,IAAI;AAAA,gBACtC;AAAA,cACF,OAAO;AACL,yBAASA,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,mCAAiB,EAAE,MAAMA,OAAM,CAAC,IAAI,MAAMA,EAAC;AAAA,gBAC7C;AAAA,cACF;AAAA,YACF;AACA,gBAAI,gBAAgB,MAAM;AACxB,0BAAY,KAAK,OAAO,IAAI;AAAA,YAC9B;AACA,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,SAAS,KAAK;AAC5G,kBAAM,GAAG;AAAA,UACX,EAAE,CAAC;AAAA,QACL;AACA,YAAI,eAAe,OAAO,eAAe,cAAc,IAAI,YAAY,UAAU,IAAI;AACrF,YAAI,gBAAgB,CAAC,KAAK,mBAAmB;AAC3C,cAAI,SAAS;AACb,cAAI,MAAM,UAAU;AACpB,cAAI,SAAS,MAAM,iBAAiB;AACpC,iBAAO,EAAE,OAAO,WAAW,kBAAkB,EAAE,QAAQ,CAAC;AACtD,cAAE;AACJ,mBAAS,OAAO;AAChB,cAAI,SAAS,MAAM,MAAM;AACvB,mBAAO,aAAa,OAAO,iBAAiB,EAAE,MAAM,KAAK,MAAM,CAAC;AAClE,cAAI,MAAM;AACV,mBAASA,KAAI,GAAG,EAAEA,MAAK,iBAAiB,IAAI,EAAEA,IAAG;AAC/C,gBAAI,WAAW,kBAAkB,EAAE,MAAMA,KAAI,MAAM,CAAC;AACpD,gBAAI,YAAY;AACd;AACF,mBAAO,OAAO,aAAa,QAAQ;AAAA,UACrC;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC,KAAK,QAAQ,oBAAoB;AACpD,cAAI,oBAAoB,QAAQ;AAC9B,8BAAkB;AAAA,UACpB;AACA,cAAI,kBAAkB;AACpB,mBAAO;AACT,6BAAmB;AACnB,cAAI,WAAW;AACf,cAAI,kBAAkB,kBAAkB,IAAI,SAAS,IAAI,kBAAkB,IAAI,IAAI;AACnF,mBAASA,KAAI,GAAGA,KAAI,iBAAiB,EAAEA,IAAG;AACxC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,8BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,sBAAU;AAAA,UACZ;AACA,4BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,iBAAO,SAAS;AAAA,QAClB;AACA,YAAI,mBAAmB,CAAC,QAAQ,IAAI,SAAS;AAC7C,YAAI,gBAAgB,CAAC,KAAK,mBAAmB;AAC3C,cAAIA,KAAI;AACR,cAAI,MAAM;AACV,iBAAO,EAAEA,MAAK,iBAAiB,IAAI;AACjC,gBAAI,QAAQ,kBAAkB,EAAE,MAAMA,KAAI,MAAM,CAAC;AACjD,gBAAI,SAAS;AACX;AACF,cAAEA;AACF,gBAAI,SAAS,OAAO;AAClB,kBAAI,KAAK,QAAQ;AACjB,qBAAO,OAAO,aAAa,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI;AAAA,YAChE,OAAO;AACL,qBAAO,OAAO,aAAa,KAAK;AAAA,YAClC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC,KAAK,QAAQ,oBAAoB;AACpD,sBAAY;AACZ,cAAI,oBAAoB,QAAQ;AAC9B,8BAAkB;AAAA,UACpB;AACA,cAAI,kBAAkB;AACpB,mBAAO;AACT,cAAI,WAAW;AACf,cAAI,SAAS,WAAW,kBAAkB;AAC1C,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,gBAAI,YAAY,SAAS,YAAY,OAAO;AAC1C,kBAAI,iBAAiB,IAAI,WAAW,EAAEA,EAAC;AACvC,yBAAW,UAAU,WAAW,SAAS,MAAM,iBAAiB;AAAA,YAClE;AACA,8BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,sBAAU;AACV,gBAAI,SAAS,IAAI;AACf;AAAA,UACJ;AACA,4BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,iBAAO,SAAS;AAAA,QAClB;AACA,YAAI,mBAAmB,CAAC,QAAQ;AAC9B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,gBAAI,YAAY,SAAS,YAAY;AACnC,gBAAEA;AACJ,mBAAO;AAAA,UACT;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gCAAgC,SAAS,SAAS,UAAUK,QAAM;AACpE,uBAAa;AACb,wBAAc;AACd,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,cAAc,cAAc,SAAS,gBAAgB;AACzD,cAAI,aAAa,GAAG;AAClB,2BAAe;AACf,2BAAe;AACf,6BAAiB;AACjB,sBAAU,MAAM,kBAAkB;AAClC,oBAAQ;AAAA,UACV,WAAW,aAAa,GAAG;AACzB,2BAAe;AACf,2BAAe;AACf,6BAAiB;AACjB,sBAAU,MAAM,kBAAkB;AAClC,oBAAQ;AAAA,UACV;AACA,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,gBAAI,SAAS,kBAAkB,EAAE,UAAU,CAAC;AAC5C,gBAAI,OAAO,QAAQ;AACnB,gBAAI;AACJ,gBAAI,iBAAiB,QAAQ;AAC7B,qBAASL,KAAI,GAAGA,MAAK,QAAQ,EAAEA,IAAG;AAChC,kBAAI,iBAAiB,QAAQ,IAAIA,KAAI;AACrC,kBAAIA,MAAK,UAAU,KAAK,mBAAmB,KAAK,KAAK,GAAG;AACtD,oBAAI,eAAe,iBAAiB;AACpC,oBAAI,gBAAgB,aAAa,gBAAgB,YAAY;AAC7D,oBAAI,QAAQ,QAAQ;AAClB,wBAAM;AAAA,gBACR,OAAO;AACL,yBAAO,OAAO,aAAa,CAAC;AAC5B,yBAAO;AAAA,gBACT;AACA,iCAAiB,iBAAiB;AAAA,cACpC;AAAA,YACF;AACA,kBAAM,KAAK;AACX,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,gBAAI,EAAE,OAAO,SAAS,WAAW;AAC/B,gCAAkB,6CAA6CK,MAAI,EAAE;AAAA,YACvE;AACA,gBAAI,SAAS,eAAe,KAAK;AACjC,gBAAI,MAAM,QAAQ,IAAI,SAAS,QAAQ;AACvC,8BAAkB,EAAE,QAAQ,CAAC,IAAI,UAAU;AAC3C,yBAAa,OAAO,MAAM,GAAG,SAAS,QAAQ;AAC9C,gBAAI,gBAAgB,MAAM;AACxB,0BAAY,KAAK,OAAO,GAAG;AAAA,YAC7B;AACA,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,SAAS,KAAK;AAC5G,kBAAM,GAAG;AAAA,UACX,EAAE,CAAC;AAAA,QACL;AACA,iBAAS,8BAA8B,SAASA,QAAM,sBAAsB,gBAAgB,qBAAqB,eAAe;AAC9H,uBAAa;AACb,UAAAA,YAAU;AACV,oCAA0B;AAC1B,8BAAoB;AACpB,mCAAyB;AACzB,6BAAmB;AACnB,6BAAmB,OAAO,IAAI,EAAE,MAAM,iBAAiBA,MAAI,GAAG,gBAAgB,wBAAwB,sBAAsB,cAAc,GAAG,eAAe,wBAAwB,qBAAqB,aAAa,GAAG,UAAU,CAAC,EAAE;AAAA,QACxO;AACA,iBAAS,sCAAsC,cAAc,kBAAkB,iBAAiB,QAAQ,eAAe,oBAAoB,iBAAiB,QAAQ,eAAe;AACjL,4BAAkB;AAClB,gCAAsB;AACtB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,kCAAwB;AACxB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,6BAAmB,YAAY,EAAE,SAAS,KAAK,EAAE,kBAAkB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,eAAe,oBAAoB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,cAAc,CAAC;AAAA,QAC3O;AACA,iBAAS,+BAA+B,SAASA,QAAM,sBAAsB,gBAAgB,qBAAqB,eAAe;AAC/H,uBAAa;AACb,UAAAA,YAAU;AACV,oCAA0B;AAC1B,8BAAoB;AACpB,mCAAyB;AACzB,6BAAmB;AACnB,8BAAoB,OAAO,IAAI,EAAE,MAAM,iBAAiBA,MAAI,GAAG,gBAAgB,wBAAwB,sBAAsB,cAAc,GAAG,eAAe,wBAAwB,qBAAqB,aAAa,GAAG,QAAQ,CAAC,EAAE;AAAA,QACvO;AACA,iBAAS,qCAAqC,YAAY,WAAW,kBAAkB,iBAAiB,QAAQ,eAAe,oBAAoB,iBAAiB,QAAQ,eAAe;AACzL,0BAAgB;AAChB,yBAAe;AACf,gCAAsB;AACtB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,kCAAwB;AACxB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,8BAAoB,UAAU,EAAE,OAAO,KAAK,EAAE,WAAW,iBAAiB,SAAS,GAAG,kBAAkB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,eAAe,oBAAoB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,cAAc,CAAC;AAAA,QAChR;AACA,iBAAS,uBAAuB,SAASA,QAAM;AAC7C,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,QAAQ,MAAM,MAAAA,QAAM,kBAAkB,GAAG,gBAAgB,WAAW;AAC1F,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAaE,IAAG;AACxC,mBAAO;AAAA,UACT,EAAE,CAAC;AAAA,QACL;AACA,YAAI,iBAAiB;AACrB,YAAI,oCAAoC,MAAM;AAC9C,YAAI,YAAY,MAAM;AACpB,cAAI,CAAC,iBAAiB,GAAG;AACvB,gBAAI;AACF,kBAAI;AACF,yCAAyB,UAAU;AAAA;AAEnC,sBAAM,UAAU;AAAA,YACpB,SAAS,GAAG;AACV,8BAAgB,CAAC;AAAA,YACnB;AAAA,UACF;AAAA,QACF;AACA,YAAI,mBAAmB,CAAC,SAAS;AAC/B,cAAI,OAAO;AACT;AAAA,UACF;AACA,cAAI;AACF,iBAAK;AACL,sBAAU;AAAA,UACZ,SAAS,GAAG;AACV,4BAAgB,CAAC;AAAA,UACnB;AAAA,QACF;AACA,iBAAS,kCAAkC,aAAa;AACtD,2BAAiB;AACjB,cAAI,OAAO,QAAQ,cAAc,YAAY;AAC3C,gBAAI,OAAO,QAAQ,UAAU,kBAAkB,GAAG,eAAe,GAAG,WAAW;AAC/E,iBAAK,MAAM,KAAK,YAAY;AAC5B,gBAAI,eAAe,cAAc;AACjC,oBAAQ,MAAM,kBAAkB,GAAG,gBAAgB,GAAG,CAAC;AAAA,UACzD;AAAA,QACF;AACA,QAAAf,QAAO,mCAAmC,IAAI;AAC9C,YAAI,eAAe,WAAW;AAC5B,cAAI,cAAc,cAAc;AAChC,cAAI,aAAa;AACf,8CAAkC,WAAW;AAC7C,6BAAiB,MAAM,2BAA2B,CAAC;AAAA,UACrD;AAAA,QACF;AACA,QAAAA,QAAO,cAAc,IAAI;AACzB,YAAI,0CAA0C,SAAS,gBAAgB,cAAc,cAAc;AACjG,8BAAoB;AACpB,4BAAkB;AAClB,4BAAkB;AAClB,cAAI,kBAAkB,cAAc;AAClC,uBAAW,MAAM,aAAa,CAAC;AAAA,UACjC,WAAW,wBAAwB;AACjC,wBAAY,EAAE,gBAAgB,gBAAgB,OAAO,eAAe,CAAC;AAAA,UACvE,OAAO;AACL,gBAAI,SAAS,QAAQ,SAAS,cAAc;AAC5C,gBAAI,CAAC,QAAQ;AACX;AAAA,YACF;AACA,mBAAO,YAAY,EAAE,OAAO,eAAe,CAAC;AAAA,UAC9C;AAAA,QACF;AACA,iBAAS,sCAAsC,QAAQ,OAAO,QAAQ;AACpE,sBAAY;AACZ,iBAAO;AAAA,QACT;AACA,iBAAS,kCAAkC,QAAQ;AACjD,sBAAY;AAAA,QACd;AACA,iBAAS,sBAAsB,SAAS,WAAW;AACjD,cAAI,OAAO,gBAAgB,OAAO;AAClC,cAAI,SAAS,QAAQ;AACnB,8BAAkB,YAAY,uBAAuB,YAAY,OAAO,CAAC;AAAA,UAC3E;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,QAAQ,YAAY,gBAAgB;AACtD,sBAAY;AACZ,0BAAgB;AAChB,8BAAoB;AACpB,mBAAS,MAAM,QAAQ,MAAM;AAC7B,uBAAa,sBAAsB,YAAY,WAAW;AAC1D,cAAI,cAAc,CAAC;AACnB,cAAI,KAAK,MAAM,SAAS,WAAW;AACnC,4BAAkB,EAAE,mBAAmB,CAAC,IAAI;AAC5C,iBAAO,WAAW,YAAY,EAAE,aAAa,MAAM;AAAA,QACrD;AACA,iBAAS,kBAAkB,UAAU,UAAU;AAC7C,cAAIkB,KAAI,IAAI,MAAM,QAAQ;AAC1B,mBAASV,KAAI,GAAGA,KAAI,UAAU,EAAEA,IAAG;AACjC,YAAAU,GAAEV,EAAC,IAAI,sBAAsB,kBAAkB,EAAE,WAAWA,KAAI,MAAM,CAAC,GAAG,eAAeA,EAAC;AAAA,UAC5F;AACA,iBAAOU;AAAA,QACT;AACA,iBAAS,aAAa,QAAQ,UAAU,UAAU,MAAM;AACtD,sBAAY;AACZ,wBAAc;AACd,oBAAU;AACV,mBAAS,MAAM,QAAQ,MAAM;AAC7B,cAAI,QAAQ,kBAAkB,UAAU,QAAQ;AAChD,cAAI,OAAO,IAAI,MAAM,QAAQ;AAC7B,mBAASV,KAAI,GAAGA,KAAI,UAAU,EAAEA,IAAG;AACjC,gBAAI,OAAO,MAAMA,EAAC;AAClB,iBAAKA,EAAC,IAAI,KAAK,sBAAsB,EAAE,IAAI;AAC3C,oBAAQ,KAAK,gBAAgB;AAAA,UAC/B;AACA,cAAI,KAAK,OAAO,MAAM,QAAQ,IAAI;AAClC,iBAAO,MAAM,SAAS,EAAE;AAAA,QAC1B;AACA,YAAI,gBAAgB,CAAC;AACrB,iBAAS,kBAAkB,SAAS;AAClC,cAAI,SAAS,cAAc,OAAO;AAClC,cAAI,WAAW,QAAQ;AACrB,mBAAO,iBAAiB,OAAO;AAAA,UACjC;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB;AAC1B,cAAI,OAAO,cAAc,UAAU;AACjC,mBAAO;AAAA,UACT;AACA,kBAAO,2BAAW;AAChB,mBAAO;AAAA,UACT,EAAE,GAAE,aAAa,EAAE;AAAA,QACrB;AACA,iBAAS,mBAAmBK,QAAM;AAChC,UAAAA,YAAU;AACV,cAAIA,WAAS,GAAG;AACd,mBAAO,MAAM,SAAS,iBAAiB,CAAC;AAAA,UAC1C,OAAO;AACL,YAAAA,SAAO,kBAAkBA,MAAI;AAC7B,mBAAO,MAAM,SAAS,iBAAiB,EAAEA,MAAI,CAAC;AAAA,UAChD;AAAA,QACF;AACA,iBAAS,qBAAqB,QAAQ,KAAK;AACzC,sBAAY;AACZ,mBAAS;AACT,mBAAS,MAAM,QAAQ,MAAM;AAC7B,gBAAM,MAAM,QAAQ,GAAG;AACvB,iBAAO,MAAM,SAAS,OAAO,GAAG,CAAC;AAAA,QACnC;AACA,iBAAS,eAAe,QAAQ;AAC9B,sBAAY;AACZ,cAAI,SAAS,GAAG;AACd,0BAAc,IAAI,MAAM,EAAE,YAAY;AAAA,UACxC;AAAA,QACF;AACA,iBAAS,mBAAmB,QAAQ,aAAa;AAC/C,sBAAY;AACZ,2BAAiB;AACjB,mBAAS,MAAM,QAAQ,MAAM;AAC7B,wBAAc,MAAM,QAAQ,WAAW;AACvC,iBAAO,kBAAkB;AAAA,QAC3B;AACA,iBAAS,kBAAkB,QAAQ;AACjC,sBAAY;AACZ,mBAAS,MAAM,QAAQ,MAAM;AAC7B,iBAAO,OAAO,UAAU;AAAA,QAC1B;AACA,iBAAS,kBAAkB,QAAQ;AACjC,sBAAY;AACZ,mBAAS,MAAM,QAAQ,MAAM;AAC7B,iBAAO,OAAO,UAAU;AAAA,QAC1B;AACA,iBAAS,oBAAoB;AAC3B,iBAAO,MAAM,SAAS,CAAC,CAAC;AAAA,QAC1B;AACA,iBAAS,oBAAoB,GAAG;AAC9B,iBAAO;AACP,iBAAO,MAAM,SAAS,kBAAkB,CAAC,CAAC;AAAA,QAC5C;AACA,iBAAS,qBAAqB;AAC5B,iBAAO,MAAM,SAAS,CAAC,CAAC;AAAA,QAC1B;AACA,iBAAS,wBAAwB,QAAQ;AACvC,sBAAY;AACZ,cAAI,cAAc,MAAM,QAAQ,MAAM;AACtC,yBAAe,WAAW;AAC1B,yBAAe,MAAM;AAAA,QACvB;AACA,iBAAS,qBAAqB,QAAQ,KAAK,OAAO;AAChD,sBAAY;AACZ,mBAAS;AACT,qBAAW;AACX,mBAAS,MAAM,QAAQ,MAAM;AAC7B,gBAAM,MAAM,QAAQ,GAAG;AACvB,kBAAQ,MAAM,QAAQ,KAAK;AAC3B,iBAAO,GAAG,IAAI;AAAA,QAChB;AACA,iBAAS,mBAAmB,MAAM,KAAK;AACrC,oBAAU;AACV,mBAAS;AACT,iBAAO,sBAAsB,MAAM,mBAAmB;AACtD,cAAI,IAAI,KAAK,sBAAsB,EAAE,GAAG;AACxC,iBAAO,MAAM,SAAS,CAAC;AAAA,QACzB;AACA,iBAAS,YAAY,UAAU,WAAW,OAAO;AAC/C,cAAI,OAAO,2BAA2B,UAAU,SAAS;AACzD,qBAAW;AACX,cAAI,OAAO,IAAI,KAAK,OAAO,GAAG;AAC9B,4BAAkB,EAAE,UAAU,CAAC,IAAI,KAAK,cAAc;AACtD,4BAAkB,EAAE,QAAQ,MAAM,CAAC,IAAI,KAAK,cAAc;AAC1D,4BAAkB,EAAE,QAAQ,MAAM,CAAC,IAAI,KAAK,YAAY;AACxD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,WAAW;AACxD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,YAAY;AACzD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,eAAe,IAAI;AAChE,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,UAAU;AACvD,cAAI,QAAQ,KAAK,IAAI,KAAK,eAAe,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAC5D,cAAI,QAAQ,KAAK,QAAQ,IAAI,UAAU,MAAM,KAAK,KAAK,MAAM;AAC7D,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI;AAAA,QAC1C;AACA,YAAI,aAAa,CAAC,SAAS,OAAO,MAAM,MAAM,OAAO,QAAQ,KAAK,OAAO,QAAQ;AACjF,YAAI,6BAA6B,CAAC,GAAG,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACvF,YAAI,gCAAgC,CAAC,GAAG,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AAC1F,YAAI,eAAe,CAAC,SAAS;AAC3B,cAAI,OAAO,WAAW,KAAK,YAAY,CAAC;AACxC,cAAI,sBAAsB,OAAO,6BAA6B;AAC9D,cAAI,OAAO,oBAAoB,KAAK,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI;AACnE,iBAAO;AAAA,QACT;AACA,iBAAS,eAAe,UAAU,WAAW,OAAO;AAClD,cAAI,OAAO,2BAA2B,UAAU,SAAS;AACzD,qBAAW;AACX,cAAI,OAAO,IAAI,KAAK,OAAO,GAAG;AAC9B,4BAAkB,EAAE,UAAU,CAAC,IAAI,KAAK,WAAW;AACnD,4BAAkB,EAAE,QAAQ,MAAM,CAAC,IAAI,KAAK,WAAW;AACvD,4BAAkB,EAAE,QAAQ,MAAM,CAAC,IAAI,KAAK,SAAS;AACrD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,QAAQ;AACrD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,SAAS;AACtD,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI;AAC7D,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,KAAK,OAAO;AACpD,cAAI,OAAO,aAAa,IAAI,IAAI;AAChC,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI;AACxC,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI,EAAE,KAAK,kBAAkB,IAAI;AACrE,cAAI,QAAQ,IAAI,KAAK,KAAK,YAAY,GAAG,GAAG,CAAC;AAC7C,cAAI,eAAe,IAAI,KAAK,KAAK,YAAY,GAAG,GAAG,CAAC,EAAE,kBAAkB;AACxE,cAAI,eAAe,MAAM,kBAAkB;AAC3C,cAAI,OAAO,gBAAgB,gBAAgB,KAAK,kBAAkB,KAAK,KAAK,IAAI,cAAc,YAAY,KAAK;AAC/G,4BAAkB,EAAE,QAAQ,OAAO,CAAC,IAAI;AAAA,QAC1C;AACA,YAAI,kBAAkB,CAAC,QAAQ;AAC7B,cAAI,OAAO,gBAAgB,GAAG,IAAI;AAClC,cAAI,MAAM,QAAQ,IAAI;AACtB,cAAI;AACF,yBAAa,KAAK,KAAK,IAAI;AAC7B,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,UAAU,UAAU,QAAQ;AAC9C,wBAAc;AACd,wBAAc;AACd,sBAAY;AACZ,cAAI,eAAc,oBAAI,KAAK,GAAE,YAAY;AACzC,cAAI,SAAS,IAAI,KAAK,aAAa,GAAG,CAAC;AACvC,cAAI,SAAS,IAAI,KAAK,aAAa,GAAG,CAAC;AACvC,cAAI,eAAe,OAAO,kBAAkB;AAC5C,cAAI,eAAe,OAAO,kBAAkB;AAC5C,cAAI,oBAAoB,KAAK,IAAI,cAAc,YAAY;AAC3D,4BAAkB,EAAE,aAAa,CAAC,IAAI,oBAAoB;AAC1D,4BAAkB,EAAE,aAAa,CAAC,IAAI,OAAO,gBAAgB,YAAY;AACzE,mBAAS,YAAY,MAAM;AACzB,gBAAI,QAAQ,KAAK,aAAa,EAAE,MAAM,mBAAmB;AACzD,mBAAO,QAAQ,MAAM,CAAC,IAAI;AAAA,UAC5B;AACA,cAAI,aAAa,YAAY,MAAM;AACnC,cAAI,aAAa,YAAY,MAAM;AACnC,cAAI,gBAAgB,gBAAgB,UAAU;AAC9C,cAAI,gBAAgB,gBAAgB,UAAU;AAC9C,cAAI,eAAe,cAAc;AAC/B,8BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,8BAAkB,EAAE,SAAS,MAAM,CAAC,IAAI;AAAA,UAC1C,OAAO;AACL,8BAAkB,EAAE,WAAW,CAAC,IAAI;AACpC,8BAAkB,EAAE,SAAS,MAAM,CAAC,IAAI;AAAA,UAC1C;AAAA,QACF;AACA,YAAI,SAAS,MAAM;AACjB,gBAAM,EAAE;AAAA,QACV;AACA,YAAI,WAAW,CAAC,SAAS;AACvB,cAAI,CAAC,SAAS;AACZ,qBAAS,QAAQ,CAAC;AACpB,cAAI,CAAC,SAAS,MAAM,IAAI,GAAG;AACzB,qBAAS,MAAM,IAAI,IAAI;AACvB,YAAAX,KAAI,IAAI;AAAA,UACV;AAAA,QACF;AACA,iBAAS,qCAAqC;AAAA,QAC9C;AACA,iBAAS,uBAAuB;AAC9B,iBAAO,KAAK,IAAI;AAAA,QAClB;AACA,YAAI,uBAAuB,MAAM;AAC/B,qCAA2B;AAAA,QAC7B;AACA,YAAI,qCAAqC,MAAM;AAC7C,+BAAqB;AACrB,gBAAM;AAAA,QACR;AACA,YAAI;AACJ,8BAAsB,MAAM,YAAY,aAAa,YAAY,IAAI;AACrE,YAAI,gBAAgB,CAACY,OAAM;AACzB,cAAI,QAAQ,UAAU;AACtB,cAAI,MAAMA,GAAE;AACZ,uBAAa,KAAK;AAClB,iBAAO;AAAA,QACT;AACA,YAAI,oBAAoB,SAAS,OAAO,MAAM;AAC5C,cAAI,cAAc,UAAU,SAAS;AACrC,cAAI,YAAY;AAChB,iBAAO,cAAc,MAAM;AACzB,gBAAI,wBAAwB;AAC5B,gBAAI,OAAO,WAAW,wBAAwB,CAAC;AAC/C,gBAAIV,KAAI,QAAQ;AAChB,qBAASI,KAAI,GAAGA,KAAI,aAAaA,MAAK;AACpC,kBAAI,MAAM,UAAU,IAAIA,EAAC;AACzB,gCAAkB,EAAEJ,KAAII,OAAM,CAAC,IAAI;AAAA,YACrC;AACA,mBAAO,2CAA2C,OAAO,uBAAuB,MAAM,IAAI;AAAA,UAC5F,CAAC;AAAA,QACH;AACA,YAAI,gDAAgD,CAAC;AACrD,iBAAS,sCAAsC,OAAO,eAAe,aAAa,MAAM;AACtF,6BAAmB;AACnB,oBAAU;AACV,kBAAQ,sCAAsC;AAC9C,wDAA8C,SAAS;AACvD,cAAIJ,KAAI,QAAQ;AAChB,mBAASI,KAAI,GAAGA,KAAI,aAAaA,MAAK;AACpC,0DAA8CA,EAAC,IAAI,kBAAkB,EAAEJ,KAAII,OAAM,CAAC;AAAA,UACpF;AACA,cAAI,OAAO,qBAAqB,KAAK;AACrC,iBAAO,KAAK,MAAM,MAAM,6CAA6C;AAAA,QACvE;AACA,YAAI,aAAa,MAAM;AACvB,YAAI,aAAa,CAAC,SAAS;AACzB,cAAIJ,KAAI,WAAW;AACnB,cAAI,QAAQ,OAAOA,GAAE,aAAa,UAAU;AAC5C,cAAI;AACF,uBAAW,KAAK,KAAK;AACrB,8BAAkB;AAClB,mBAAO;AAAA,UACT,SAAS,GAAG;AAAA,UACZ;AAAA,QACF;AACA,iBAAS,wBAAwB,eAAe;AAC9C,6BAAmB;AACnB,cAAI,UAAU,iBAAiB,EAAE;AACjC,cAAI,iBAAiB,SAAS;AAC5B,mBAAO;AAAA,UACT;AACA,cAAI,cAAc,WAAW;AAC7B,cAAI,gBAAgB,aAAa;AAC/B,mBAAO;AAAA,UACT;AACA,cAAI,UAAU,CAAC,GAAG,aAAa,KAAK,WAAW,IAAI,YAAY;AAC/D,mBAAS,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG;AAChD,gBAAI,oBAAoB,WAAW,IAAI,MAAM;AAC7C,gCAAoB,KAAK,IAAI,mBAAmB,gBAAgB,SAAS;AACzE,gBAAI,UAAU,KAAK,IAAI,aAAa,QAAQ,KAAK,IAAI,eAAe,iBAAiB,GAAG,KAAK,CAAC;AAC9F,gBAAI,cAAc,WAAW,OAAO;AACpC,gBAAI,aAAa;AACf,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,MAAM,CAAC;AACX,YAAI,oBAAoB,MAAM,eAAe;AAC7C,YAAI,gBAAgB,MAAM;AACxB,cAAI,CAAC,cAAc,SAAS;AAC1B,gBAAI,QAAQ,OAAO,aAAa,YAAY,UAAU,aAAa,UAAU,UAAU,CAAC,KAAK,KAAK,QAAQ,KAAK,GAAG,IAAI;AACtH,gBAAI,MAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,QAAQ,KAAK,OAAO,KAAK,QAAQ,kBAAkB,QAAQ,MAAM,KAAK,kBAAkB,EAAE;AACjJ,qBAAS,KAAK,KAAK;AACjB,kBAAI,IAAI,CAAC,MAAM;AACb,uBAAO,IAAI,CAAC;AAAA;AAEZ,oBAAI,CAAC,IAAI,IAAI,CAAC;AAAA,YAClB;AACA,gBAAIe,WAAU,CAAC;AACf,qBAAS,KAAK,KAAK;AACjB,cAAAA,SAAQ,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;AAAA,YAC/B;AACA,0BAAc,UAAUA;AAAA,UAC1B;AACA,iBAAO,cAAc;AAAA,QACvB;AACA,YAAI,gBAAgB,CAAC,KAAK,WAAW;AACnC,mBAASX,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,6BAAiB,EAAE,aAAa,CAAC,IAAI,IAAI,WAAWA,EAAC;AAAA,UACvD;AACA,2BAAiB,EAAE,WAAW,CAAC,IAAI;AAAA,QACrC;AACA,iBAAS,aAAa,WAAW,aAAa;AAC5C,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,WAAW,WAAW;AACvD,yBAAe;AACf,2BAAiB;AACjB,cAAI,UAAU;AACd,wBAAc,EAAE,QAAQ,SAAS,QAAQA,IAAG;AAC1C,gBAAI,MAAM,cAAc;AACxB,8BAAkB,EAAE,YAAYA,KAAI,MAAM,CAAC,IAAI;AAC/C,0BAAc,QAAQ,GAAG;AACzB,uBAAW,OAAO,SAAS;AAAA,UAC7B,CAAC;AACD,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB,gBAAgB,mBAAmB;AAC7D,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,gBAAgB,iBAAiB;AAClE,8BAAoB;AACpB,iCAAuB;AACvB,cAAIW,WAAU,cAAc;AAC5B,4BAAkB,EAAE,mBAAmB,CAAC,IAAIA,SAAQ;AACpD,cAAI,UAAU;AACd,UAAAA,SAAQ,QAAQ,SAAS,QAAQ;AAC/B,uBAAW,OAAO,SAAS;AAAA,UAC7B,CAAC;AACD,4BAAkB,EAAE,sBAAsB,CAAC,IAAI;AAC/C,iBAAO;AAAA,QACT;AACA,iBAAS,UAAU,IAAI;AACrB,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,EAAE;AACnC,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,eAAG,MAAM,MAAM;AACf,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,iBAAS,eAAe,IAAI,MAAM;AAChC,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,IAAI,IAAI;AACzC,oBAAU;AACV,cAAI;AACF,gBAAI,aAAa;AACjB,gBAAI,mBAAmB;AACvB,gBAAI,QAAQ;AACZ;AACE,kBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,kBAAI,OAAO,OAAO,MAAM,IAAI,GAAG,MAAM,OAAO,IAAI,IAAI,IAAI,GAAG,OAAO,OAAO,IAAI,IAAI,IAAI;AAAA,YACvF;AACA,6BAAiB,EAAE,SAAS,CAAC,IAAI;AACjC,8BAAkB,EAAE,OAAO,MAAM,CAAC,IAAI;AACtC,sBAAU,CAAC,eAAe,IAAI,aAAa,YAAY,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,OAAO,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC;AACjU,sBAAU,CAAC,qBAAqB,IAAI,aAAa,kBAAkB,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC;AAC9U,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,UAAU,CAAC,QAAQ,KAAK,QAAQ,WAAW;AAC7C,cAAI,MAAM;AACV,mBAASX,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,MAAM,kBAAkB,EAAE,QAAQ,CAAC;AACvC,gBAAI,MAAM,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC3C,mBAAO;AACP,gBAAI,OAAO,GAAG,KAAK,QAAQ,iBAAiB,GAAG,KAAK,KAAK,MAAM;AAC/D,gBAAI,OAAO;AACT,qBAAO;AACT,mBAAO;AACP,gBAAI,OAAO;AACT;AACF,gBAAI,OAAO,WAAW,aAAa;AACjC,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,SAAS,IAAI,KAAK,QAAQ,MAAM;AACvC,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,IAAI,KAAK,QAAQ,IAAI;AACtD,mBAAS;AACT,sBAAY;AACZ,oBAAU;AACV,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,gBAAI,MAAM,QAAQ,QAAQ,KAAK,MAAM;AACrC,8BAAkB,EAAE,SAAS,CAAC,IAAI;AAClC,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,iBAAS,SAAS,IAAI,YAAY,aAAa,QAAQ,WAAW;AAChE,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,IAAI,YAAY,aAAa,QAAQ,SAAS;AAC/E,cAAI,SAAS,2BAA2B,YAAY,WAAW;AAC/D,yBAAe;AACf,cAAI;AACF,gBAAI,MAAM,MAAM;AACd,qBAAO;AACT,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,eAAG,OAAO,QAAQ,QAAQ,MAAM;AAChC,sBAAU,CAAC,OAAO,aAAa,IAAI,aAAa,OAAO,UAAU,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,kBAAkB,EAAE,cAAc,CAAC,IAAI,QAAQ,CAAC,GAAG,kBAAkB,EAAE,YAAY,MAAM,CAAC,IAAI,QAAQ,CAAC;AAChV,gBAAI,OAAO,YAAY,WAAW,KAAK,WAAW;AAChD,qBAAO,WAAW;AACpB,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,WAAW,CAAC,QAAQ,KAAK,QAAQ,WAAW;AAC9C,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,MAAM,kBAAkB,EAAE,QAAQ,CAAC;AACvC,gBAAI,MAAM,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC3C,mBAAO;AACP,gBAAI,OAAO,GAAG,MAAM,QAAQ,iBAAiB,GAAG,KAAK,KAAK,MAAM;AAChE,gBAAI,OAAO;AACT,qBAAO;AACT,mBAAO;AACP,gBAAI,OAAO,WAAW,aAAa;AACjC,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,UAAU,IAAI,KAAK,QAAQ,MAAM;AACxC,cAAI;AACF,mBAAO,kBAAkB,GAAG,GAAG,IAAI,KAAK,QAAQ,IAAI;AACtD,mBAAS;AACT,sBAAY;AACZ,oBAAU;AACV,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,gBAAI,MAAM,SAAS,QAAQ,KAAK,MAAM;AACtC,8BAAkB,EAAE,SAAS,CAAC,IAAI;AAClC,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,WAAW,CAAC,OAAO,UAAU;AAC/B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,MAAK,OAAO,OAAO,MAAMA,IAAG,GAAG;AAAA,UAC/C;AACA,iBAAO;AAAA,QACT;AACA,YAAI,kBAAkB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACrE,YAAI,qBAAqB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxE,YAAI,UAAU,CAAC,MAAM,SAAS;AAC5B,cAAI,UAAU,IAAI,KAAK,KAAK,QAAQ,CAAC;AACrC,iBAAO,OAAO,GAAG;AACf,gBAAI,OAAO,WAAW,QAAQ,YAAY,CAAC;AAC3C,gBAAI,eAAe,QAAQ,SAAS;AACpC,gBAAI,sBAAsB,OAAO,kBAAkB,oBAAoB,YAAY;AACnF,gBAAI,OAAO,qBAAqB,QAAQ,QAAQ,GAAG;AACjD,sBAAQ,qBAAqB,QAAQ,QAAQ,IAAI;AACjD,sBAAQ,QAAQ,CAAC;AACjB,kBAAI,eAAe,IAAI;AACrB,wBAAQ,SAAS,eAAe,CAAC;AAAA,cACnC,OAAO;AACL,wBAAQ,SAAS,CAAC;AAClB,wBAAQ,YAAY,QAAQ,YAAY,IAAI,CAAC;AAAA,cAC/C;AAAA,YACF,OAAO;AACL,sBAAQ,QAAQ,QAAQ,QAAQ,IAAI,IAAI;AACxC,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,qBAAqB,CAAC,OAAO,WAAW;AAC1C,2BAAiB,EAAE,IAAI,OAAO,WAAW,CAAC;AAAA,QAC5C;AACA,iBAAS,UAAUY,IAAG,SAAS,QAAQ,IAAI;AACzC,UAAAA,QAAO;AACP,uBAAa;AACb,sBAAY;AACZ,kBAAQ;AACR,cAAI,UAAU,kBAAkB,EAAE,KAAK,OAAO,CAAC;AAC/C,cAAI,OAAO,EAAE,QAAQ,kBAAkB,EAAE,OAAO,CAAC,GAAG,QAAQ,kBAAkB,EAAE,KAAK,MAAM,CAAC,GAAG,SAAS,kBAAkB,EAAE,KAAK,MAAM,CAAC,GAAG,SAAS,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,QAAQ,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,UAAU,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,WAAW,kBAAkB,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,UAAU,aAAa,OAAO,IAAI,GAAG;AACtf,cAAI,UAAU,aAAa,MAAM;AACjC,cAAI,oBAAoB,EAAE,MAAM,wBAAwB,MAAM,YAAY,MAAM,YAAY,MAAM,MAAM,MAAM,eAAe,MAAM,SAAS,MAAM,YAAY,MAAM,YAAY,MAAM,YAAY,OAAO,MAAM,OAAO,MAAM,OAAO,YAAY,OAAO,YAAY,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,KAAK;AACpc,mBAAS,QAAQ,mBAAmB;AAClC,sBAAU,QAAQ,QAAQ,IAAI,OAAO,MAAM,GAAG,GAAG,kBAAkB,IAAI,CAAC;AAAA,UAC1E;AACA,cAAI,WAAW,CAAC,UAAU,UAAU,WAAW,aAAa,YAAY,UAAU,UAAU;AAC5F,cAAI,SAAS,CAAC,WAAW,YAAY,SAAS,SAAS,OAAO,QAAQ,QAAQ,UAAU,aAAa,WAAW,YAAY,UAAU;AACtI,mBAAS,iBAAiB,OAAO,QAAQ,WAAW;AAClD,gBAAI,MAAM,OAAO,SAAS,WAAW,MAAM,SAAS,IAAI,SAAS;AACjE,mBAAO,IAAI,SAAS,QAAQ;AAC1B,oBAAM,UAAU,CAAC,IAAI;AAAA,YACvB;AACA,mBAAO;AAAA,UACT;AACA,mBAAS,aAAa,OAAO,QAAQ;AACnC,mBAAO,iBAAiB,OAAO,QAAQ,GAAG;AAAA,UAC5C;AACA,mBAAS,aAAa,OAAO,OAAO;AAClC,qBAAS,IAAI,OAAO;AAClB,qBAAO,QAAQ,IAAI,KAAK,QAAQ,IAAI,IAAI;AAAA,YAC1C;AACA,gBAAI;AACJ,iBAAK,UAAU,IAAI,MAAM,YAAY,IAAI,MAAM,YAAY,CAAC,OAAO,GAAG;AACpE,mBAAK,UAAU,IAAI,MAAM,SAAS,IAAI,MAAM,SAAS,CAAC,OAAO,GAAG;AAC9D,0BAAU,IAAI,MAAM,QAAQ,IAAI,MAAM,QAAQ,CAAC;AAAA,cACjD;AAAA,YACF;AACA,mBAAO;AAAA,UACT;AACA,mBAAS,sBAAsB,WAAW;AACxC,oBAAQ,UAAU,OAAO,GAAG;AAAA,cAC1B,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,cACrD,KAAK;AACH,uBAAO;AAAA,cACT,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,cACrD,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,YACvD;AAAA,UACF;AACA,mBAAS,iBAAiB,OAAO;AAC/B,gBAAI,WAAW,QAAQ,IAAI,KAAK,MAAM,UAAU,MAAM,GAAG,CAAC,GAAG,MAAM,OAAO;AAC1E,gBAAI,oBAAoB,IAAI,KAAK,SAAS,YAAY,GAAG,GAAG,CAAC;AAC7D,gBAAI,oBAAoB,IAAI,KAAK,SAAS,YAAY,IAAI,GAAG,GAAG,CAAC;AACjE,gBAAI,yBAAyB,sBAAsB,iBAAiB;AACpE,gBAAI,yBAAyB,sBAAsB,iBAAiB;AACpE,gBAAI,aAAa,wBAAwB,QAAQ,KAAK,GAAG;AACvD,kBAAI,aAAa,wBAAwB,QAAQ,KAAK,GAAG;AACvD,uBAAO,SAAS,YAAY,IAAI;AAAA,cAClC;AACA,qBAAO,SAAS,YAAY;AAAA,YAC9B;AACA,mBAAO,SAAS,YAAY,IAAI;AAAA,UAClC;AACA,cAAI,oBAAoB,EAAE,MAAM,CAAC,UAAU,SAAS,MAAM,OAAO,EAAE,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,SAAS,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,OAAO,MAAM,MAAM,EAAE,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,OAAO,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU;AAC3O,gBAAI,OAAO,MAAM,UAAU;AAC3B,mBAAO,aAAa,OAAO,MAAM,GAAG,CAAC;AAAA,UACvC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU,iBAAiB,MAAM,SAAS,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,iBAAiB,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,iBAAiB,KAAK,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU;AAC1R,gBAAI,aAAa,MAAM;AACvB,gBAAI,cAAc;AAChB,2BAAa;AAAA,qBACN,aAAa;AACpB,4BAAc;AAChB,mBAAO,aAAa,YAAY,CAAC;AAAA,UACnC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,UAAU,SAAS,WAAW,MAAM,UAAU,IAAI,IAAI,kBAAkB,oBAAoB,MAAM,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,QAAQ,CAAC,GAAG,MAAM,MAAM,MAAM,MAAM,CAAC,UAAU;AAC/R,gBAAI,MAAM,WAAW,KAAK,MAAM,UAAU,IAAI;AAC5C,qBAAO;AAAA,YACT;AACA,mBAAO;AAAA,UACT,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,QAAQ,CAAC,GAAG,MAAM,MAAM,KAAK,MAAM,CAAC,UAAU,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU;AACxH,gBAAI,OAAO,MAAM,UAAU,IAAI,MAAM;AACrC,mBAAO,aAAa,KAAK,MAAM,OAAO,CAAC,GAAG,CAAC;AAAA,UAC7C,GAAG,MAAM,CAAC,UAAU;AAClB,gBAAI,MAAM,KAAK,OAAO,MAAM,UAAU,KAAK,MAAM,UAAU,KAAK,KAAK,CAAC;AACtE,iBAAK,MAAM,UAAU,MAAM,MAAM,UAAU,KAAK,KAAK,GAAG;AACtD;AAAA,YACF;AACA,gBAAI,CAAC,KAAK;AACR,oBAAM;AACN,kBAAI,SAAS,MAAM,UAAU,IAAI,MAAM,UAAU,KAAK;AACtD,kBAAI,SAAS,KAAK,SAAS,KAAK,WAAW,MAAM,UAAU,MAAM,CAAC,GAAG;AACnE;AAAA,cACF;AAAA,YACF,WAAW,OAAO,IAAI;AACpB,kBAAI,QAAQ,MAAM,UAAU,MAAM,MAAM,WAAW;AACnD,kBAAI,QAAQ,MAAM,QAAQ,KAAK,CAAC,WAAW,MAAM,OAAO;AACtD,sBAAM;AAAA,YACV;AACA,mBAAO,aAAa,KAAK,CAAC;AAAA,UAC5B,GAAG,MAAM,CAAC,UAAU,MAAM,SAAS,MAAM,CAAC,UAAU;AAClD,gBAAI,OAAO,MAAM,UAAU,KAAK,MAAM,UAAU,KAAK;AACrD,mBAAO,aAAa,KAAK,MAAM,OAAO,CAAC,GAAG,CAAC;AAAA,UAC7C,GAAG,MAAM,CAAC,WAAW,MAAM,UAAU,MAAM,SAAS,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,MAAM,UAAU,MAAM,MAAM,CAAC,UAAU;AAC1H,gBAAI,MAAM,MAAM;AAChB,gBAAI,QAAQ,OAAO;AACnB,kBAAM,KAAK,IAAI,GAAG,IAAI;AACtB,kBAAM,MAAM,KAAK,MAAM,MAAM;AAC7B,oBAAQ,QAAQ,MAAM,OAAO,OAAO,SAAS,GAAG,EAAE,MAAM,EAAE;AAAA,UAC5D,GAAG,MAAM,CAAC,UAAU,MAAM,SAAS,MAAM,MAAM,IAAI;AACnD,oBAAU,QAAQ,QAAQ,OAAO,MAAM;AACvC,mBAAS,QAAQ,mBAAmB;AAClC,gBAAI,QAAQ,SAAS,IAAI,GAAG;AAC1B,wBAAU,QAAQ,QAAQ,IAAI,OAAO,MAAM,GAAG,GAAG,kBAAkB,IAAI,EAAE,IAAI,CAAC;AAAA,YAChF;AAAA,UACF;AACA,oBAAU,QAAQ,QAAQ,SAAS,GAAG;AACtC,cAAI,QAAQ,mBAAmB,SAAS,KAAK;AAC7C,cAAI,MAAM,SAAS,SAAS;AAC1B,mBAAO;AAAA,UACT;AACA,6BAAmB,OAAOA,EAAC;AAC3B,iBAAO,MAAM,SAAS;AAAA,QACxB;AACA,iBAAS,YAAYA,IAAG,SAAS,QAAQ,IAAI,KAAK;AAChD,UAAAA,QAAO;AACP,uBAAa;AACb,sBAAY;AACZ,kBAAQ;AACR,mBAAS;AACT,iBAAO,UAAUA,IAAG,SAAS,QAAQ,EAAE;AAAA,QACzC;AACA,gBAAQ,KAAK;AACb,YAAI,SAAS,SAAS,QAAQP,QAAM,MAAM,MAAM;AAC9C,cAAI,CAAC,QAAQ;AACX,qBAAS;AAAA,UACX;AACA,eAAK,SAAS;AACd,eAAK,QAAQ,OAAO;AACpB,eAAK,UAAU;AACf,eAAK,KAAK,GAAG;AACb,eAAK,OAAOA;AACZ,eAAK,OAAO;AACZ,eAAK,WAAW,CAAC;AACjB,eAAK,aAAa,CAAC;AACnB,eAAK,OAAO;AAAA,QACd;AACA,YAAI,WAAW,MAAM;AACrB,YAAI,YAAY;AAChB,eAAO,iBAAiB,OAAO,WAAW,EAAE,MAAM,EAAE,KAAK,WAAW;AAClE,kBAAQ,KAAK,OAAO,cAAc;AAAA,QACpC,GAAG,KAAK,SAAS,KAAK;AACpB,gBAAM,KAAK,QAAQ,WAAW,KAAK,QAAQ,CAAC;AAAA,QAC9C,EAAE,GAAG,OAAO,EAAE,KAAK,WAAW;AAC5B,kBAAQ,KAAK,OAAO,eAAe;AAAA,QACrC,GAAG,KAAK,SAAS,KAAK;AACpB,gBAAM,KAAK,QAAQ,YAAY,KAAK,QAAQ,CAAC;AAAA,QAC/C,EAAE,GAAG,UAAU,EAAE,KAAK,WAAW;AAC/B,iBAAO,GAAG,MAAM,KAAK,IAAI;AAAA,QAC3B,EAAE,GAAG,UAAU,EAAE,KAAK,WAAW;AAC/B,iBAAO,GAAG,SAAS,KAAK,IAAI;AAAA,QAC9B,EAAE,EAAE,CAAC;AACL,WAAG,SAAS;AACZ,WAAG,sBAAsB;AACzB,WAAG,WAAW;AACd,wBAAgBb,QAAO,eAAe,IAAI,MAAM,sBAAsB,MAAM;AAAA,UAC1E,YAAY,SAAS;AACnB,kBAAM,OAAO;AACb,iBAAK,OAAO;AAAA,UACd;AAAA,QACF;AACA,8BAAsB;AACtB,uBAAeA,QAAO,cAAc,IAAI,MAAM,qBAAqB,MAAM;AAAA,UACvE,YAAY,SAAS;AACnB,kBAAM,OAAO;AACb,iBAAK,OAAO;AAAA,UACd;AAAA,QACF;AACA,yBAAiB;AACjB,oBAAY;AACZ,+BAAuB;AACvB,2BAAmBA,QAAO,kBAAkB,IAAI,YAAY,OAAO,kBAAkB;AACrF,4BAAoB;AACpB,mBAAW;AACX,YAAI,uBAAuB,CAAC,MAAM,YAAY,kBAAkB,cAAc,oBAAoB,WAAW,gBAAgB,UAAU,UAAU,SAAS;AAC1J,YAAI,cAAc,EAAE,GAAG,cAAc,GAAG,mCAAmC,GAAG,8BAA8B,IAAI,+BAA+B,GAAG,gCAAgC,GAAG,0BAA0B,IAAI,wBAAwB,GAAG,yBAAyB,GAAG,qCAAqC,GAAG,kCAAkC,IAAI,yBAAyB,GAAG,yBAAyB,GAAG,4BAA4B,GAAG,2BAA2B,GAAG,+BAA+B,GAAG,8BAA8B,GAAG,+BAA+B,IAAI,+BAA+B,GAAG,uCAAuC,GAAG,gCAAgC,GAAG,sCAAsC,IAAI,wBAAwB,GAAG,mCAAmC,GAAG,yCAAyC,GAAG,uCAAuC,GAAG,mCAAmC,IAAI,mCAAmC,GAAG,YAAY,GAAG,cAAc,GAAG,gBAAgB,GAAG,oBAAoB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,mBAAmB,IAAI,mBAAmB,GAAG,qBAAqB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,sBAAsB,GAAG,oBAAoB,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,QAAQ,GAAG,oCAAoC,GAAG,sBAAsB,IAAI,oCAAoC,GAAG,qBAAqB,GAAG,uCAAuC,GAAG,yBAAyB,GAAG,cAAc,GAAG,oBAAoB,GAAG,OAAO,GAAG,WAAW,GAAG,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,cAAcA,QAAO,YAAY,GAAG,GAAG,YAAY;AAC5qD,YAAI,MAAM,WAAW;AACrB,YAAI,qBAAqB,OAAO,qBAAqB,YAAY,IAAI,GAAG;AACxE,YAAI,gBAAgBA,QAAO,eAAe,IAAI,OAAO,gBAAgBA,QAAO,eAAe,IAAI,YAAY,IAAI,GAAG;AAClH,YAAI,UAAU,CAAC,QAAQ,UAAU,YAAY,IAAI,GAAG,EAAE;AACtD,YAAI,wBAAwBA,QAAO,uBAAuB,IAAI,OAAO,wBAAwBA,QAAO,uBAAuB,IAAI,YAAY,IAAI,GAAG;AAClJ,YAAI,iBAAiB,CAAC,QAAQ,iBAAiB,YAAY,IAAI,GAAG,EAAE;AACpE,YAAI,+BAA+BA,QAAO,8BAA8B,IAAI,OAAO,+BAA+BA,QAAO,8BAA8B,IAAI,YAAY,IAAI,GAAG;AAC9K,YAAI,oBAAoB,OAAO,oBAAoB,YAAY,kBAAkB,GAAG;AACpF,YAAI,2BAA2BA,QAAO,0BAA0B,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,QAAQ,2BAA2BrB,QAAO,0BAA0B,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,EAAE;AAC1M,YAAI,8BAA8BrB,QAAO,6BAA6B,IAAI,OAAO,8BAA8BA,QAAO,6BAA6B,IAAI,YAAY,IAAI,GAAG;AAC1K,YAAI,+CAA+C,OAAO,+CAA+C,YAAY,6CAA6C,GAAG;AACrK,YAAI,qCAAqC,OAAO,qCAAqC,YAAY,mCAAmC,GAAG;AACvI,YAAI,6CAA6C,CAAC,IAAI,IAAIqB,KAAI,QAAQ,6CAA6C,YAAY,IAAI,GAAG,IAAI,IAAIA,KAAI,EAAE;AACpJ,YAAI,kCAAkC,CAAC,IAAI,IAAIA,KAAI,IAAI,QAAQ,kCAAkC,YAAY,gCAAgC,GAAG,IAAI,IAAIA,KAAI,IAAI,EAAE;AAClK,YAAI,QAAQ,CAAC,QAAQ,QAAQ,YAAY,IAAI,GAAG,EAAE;AAClD,YAAI,gCAAgC,CAAC,QAAQ,gCAAgC,YAAY,IAAI,GAAG,EAAE;AAClG,YAAI,2BAA2BrB,QAAO,0BAA0B,IAAI,CAAC,QAAQ,2BAA2BA,QAAO,0BAA0B,IAAI,YAAY,IAAI,GAAG,EAAE;AAClK,YAAI,6BAA6BA,QAAO,4BAA4B,IAAI,OAAO,6BAA6BA,QAAO,4BAA4B,IAAI,YAAY,IAAI,GAAG;AACtK,YAAI,+BAA+B,CAAC,IAAI,QAAQ,+BAA+B,YAAY,IAAI,GAAG,IAAI,EAAE;AACxG,YAAI,YAAY,OAAO,YAAY,YAAY,IAAI,GAAG;AACtD,YAAI,eAAe,CAAC,QAAQ,eAAe,YAAY,IAAI,GAAG,EAAE;AAChE,YAAI,aAAa,CAAC,QAAQ,aAAa,YAAY,IAAI,GAAG,EAAE;AAC5D,YAAI,sCAAsC,CAAC,QAAQ,sCAAsC,YAAY,oCAAoC,GAAG,EAAE;AAC9I,YAAI,yBAAyB,CAAC,QAAQ,yBAAyB,YAAY,IAAI,GAAG,EAAE;AACpF,YAAI,eAAeA,QAAO,cAAc,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,QAAQ,eAAerB,QAAO,cAAc,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,EAAE;AAClJ,YAAI,iBAAiBrB,QAAO,gBAAgB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,QAAQ,iBAAiBrB,QAAO,gBAAgB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,EAAE;AAC1K,YAAI,iBAAiBrB,QAAO,gBAAgB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,QAAQ,iBAAiBrB,QAAO,gBAAgB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,EAAE;AAC1K,YAAI,kBAAkBrB,QAAO,iBAAiB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,kBAAkBrB,QAAO,iBAAiB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AAC9L,YAAI,mBAAmBrB,QAAO,kBAAkB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,mBAAmBrB,QAAO,kBAAkB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AAC1M,iBAAS,0BAA0B,UAAU;AAC3C,qBAAW,OAAO,OAAO,CAAC,GAAG,QAAQ;AACrC,cAAI,gBAAgB,CAACP,OAAM,MAAMA,GAAE,MAAM;AACzC,cAAI,iBAAiB,CAACA,OAAM,CAAC,OAAOA,GAAE,EAAE,MAAM;AAC9C,mBAAS,cAAc,IAAI,cAAc,SAAS,cAAc,CAAC;AACjE,mBAAS,QAAQ,IAAI,eAAe,SAAS,QAAQ,CAAC;AACtD,mBAAS,eAAe,IAAI,eAAe,SAAS,eAAe,CAAC;AACpE,mBAAS,kBAAkB,IAAI,cAAc,SAAS,kBAAkB,CAAC;AACzE,mBAAS,WAAW,IAAI,cAAc,SAAS,WAAW,CAAC;AAC3D,mBAAS,YAAY,IAAI,eAAe,SAAS,YAAY,CAAC;AAC9D,iBAAO;AAAA,QACT;AACA,QAAAd,QAAO,kBAAkB,IAAI;AAC7B,QAAAA,QAAO,YAAY,IAAI;AACvB,QAAAA,QAAO,YAAY,IAAI;AACvB,QAAAA,QAAO,SAAS,IAAI;AACpB,YAAI;AACJ,gCAAwB,SAAS,YAAY;AAC3C,cAAI,CAAC;AACH,gBAAI;AACN,cAAI,CAAC;AACH,oCAAwB;AAAA,QAC5B;AACA,iBAAS,MAAM;AACb,cAAI,kBAAkB,GAAG;AACvB;AAAA,UACF;AACA,cAAI,wBAAwB;AAC1B,gCAAoBA,OAAM;AAC1B,wBAAY;AACZ,wBAAYA,OAAM;AAClB;AAAA,UACF;AACA,iBAAO;AACP,cAAI,kBAAkB,GAAG;AACvB;AAAA,UACF;AACA,mBAAS,QAAQ;AACf,gBAAI;AACF;AACF,wBAAY;AACZ,YAAAA,QAAO,WAAW,IAAI;AACtB,gBAAI;AACF;AACF,wBAAY;AACZ,gCAAoBA,OAAM;AAC1B,gBAAIA,QAAO,sBAAsB;AAC/B,cAAAA,QAAO,sBAAsB,EAAE;AACjC,oBAAQ;AAAA,UACV;AACA,cAAIA,QAAO,WAAW,GAAG;AACvB,YAAAA,QAAO,WAAW,EAAE,YAAY;AAChC,uBAAW,WAAW;AACpB,yBAAW,WAAW;AACpB,gBAAAA,QAAO,WAAW,EAAE,EAAE;AAAA,cACxB,GAAG,CAAC;AACJ,oBAAM;AAAA,YACR,GAAG,CAAC;AAAA,UACN,OAAO;AACL,kBAAM;AAAA,UACR;AAAA,QACF;AACA,YAAIA,QAAO,SAAS,GAAG;AACrB,cAAI,OAAOA,QAAO,SAAS,KAAK;AAC9B,YAAAA,QAAO,SAAS,IAAI,CAACA,QAAO,SAAS,CAAC;AACxC,iBAAOA,QAAO,SAAS,EAAE,SAAS,GAAG;AACnC,YAAAA,QAAO,SAAS,EAAE,IAAI,EAAE;AAAA,UAC1B;AAAA,QACF;AACA,YAAI;AACJ,eAAO,UAAU;AAAA,MACnB;AAAA,IACF,GAAG;AACH,QAAI,OAAO,YAAY,YAAY,OAAOD,YAAW;AACnD,MAAAA,QAAO,UAAU;AAAA,aACV,OAAO,WAAW,cAAc,OAAO,KAAK;AACnD,aAAO,CAAC,GAAG,MAAM,WAAW;AAAA,EAChC;AACF,CAAC;AAGD,IAAI,kBAAkBD,YAAW;AAAA,EAC/B,kBAAkB,SAASC,SAAQ;AACjC,QAAI,eAAe,MAAM;AACvB,UAAI,aAAa,OAAO,aAAa,eAAe,SAAS,gBAAgB,SAAS,cAAc,MAAM;AAC1G,aAAO,SAAS,YAAY,CAAC,GAAG;AAC9B,YAAIC,UAAS;AACb,YAAI,qBAAqB;AACzB,QAAAA,QAAO,OAAO,IAAI,IAAI,QAAQ,CAACC,UAAS,WAAW;AACjD,gCAAsBA;AACtB,+BAAqB;AAAA,QACvB,CAAC;AACD,YAAI,kBAAkB,OAAO,OAAO,CAAC,GAAGD,OAAM;AAC9C,YAAI,aAAa,CAAC;AAClB,YAAI,cAAc;AAClB,YAAI,QAAQ,CAAC,QAAQ,YAAY;AAC/B,gBAAM;AAAA,QACR;AACA,YAAI,qBAAqB;AACzB,YAAI,wBAAwB;AAC5B,YAAI,kBAAkB;AACtB,iBAAS,WAAW,MAAM;AACxB,cAAIA,QAAO,YAAY,GAAG;AACxB,mBAAOA,QAAO,YAAY,EAAE,MAAM,eAAe;AAAA,UACnD;AACA,iBAAO,kBAAkB;AAAA,QAC3B;AACA,YAAI,OAAO,WAAW,YAAY;AAClC,YAAI,sBAAsB,uBAAuB;AAC/C,cAAI,uBAAuB;AACzB,8BAAkB,KAAK,SAAS;AAAA,UAClC,WAAW,OAAO,YAAY,eAAe,SAAS,eAAe;AACnE,8BAAkB,SAAS,cAAc;AAAA,UAC3C;AACA,cAAI,YAAY;AACd,8BAAkB;AAAA,UACpB;AACA,cAAI,gBAAgB,QAAQ,OAAO,MAAM,GAAG;AAC1C,8BAAkB,gBAAgB,OAAO,GAAG,gBAAgB,QAAQ,UAAU,EAAE,EAAE,YAAY,GAAG,IAAI,CAAC;AAAA,UACxG,OAAO;AACL,8BAAkB;AAAA,UACpB;AACA;AACE,oBAAQ,CAAC,QAAQ;AACf,kBAAI,MAAM,IAAI,eAAe;AAC7B,kBAAI,KAAK,OAAO,KAAK,KAAK;AAC1B,kBAAI,KAAK,IAAI;AACb,qBAAO,IAAI;AAAA,YACb;AACA,gBAAI,uBAAuB;AACzB,2BAAa,CAAC,QAAQ;AACpB,oBAAI,MAAM,IAAI,eAAe;AAC7B,oBAAI,KAAK,OAAO,KAAK,KAAK;AAC1B,oBAAI,eAAe;AACnB,oBAAI,KAAK,IAAI;AACb,uBAAO,IAAI,WAAW,IAAI,QAAQ;AAAA,cACpC;AAAA,YACF;AACA,wBAAY,CAAC,KAAK,QAAQ,YAAY;AACpC,kBAAI,MAAM,IAAI,eAAe;AAC7B,kBAAI,KAAK,OAAO,KAAK,IAAI;AACzB,kBAAI,eAAe;AACnB,kBAAI,SAAS,MAAM;AACjB,oBAAI,IAAI,UAAU,OAAO,IAAI,UAAU,KAAK,IAAI,UAAU;AACxD,yBAAO,IAAI,QAAQ;AACnB;AAAA,gBACF;AACA,wBAAQ;AAAA,cACV;AACA,kBAAI,UAAU;AACd,kBAAI,KAAK,IAAI;AAAA,YACf;AAAA,UACF;AACA,2BAAiB,CAAC,UAAU,SAAS,QAAQ;AAAA,QAC/C,OAAO;AAAA,QACP;AACA,YAAI,MAAMA,QAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,OAAO;AACrD,YAAIE,OAAMF,QAAO,UAAU,KAAK,QAAQ,MAAM,KAAK,OAAO;AAC1D,eAAO,OAAOA,SAAQ,eAAe;AACrC,0BAAkB;AAClB,YAAIA,QAAO,WAAW;AACpB,uBAAaA,QAAO,WAAW;AACjC,YAAIA,QAAO,aAAa;AACtB,wBAAcA,QAAO,aAAa;AACpC,YAAIA,QAAO,MAAM;AACf,kBAAQA,QAAO,MAAM;AACvB,YAAI;AACJ,YAAIA,QAAO,YAAY;AACrB,uBAAaA,QAAO,YAAY;AAClC,YAAI,gBAAgBA,QAAO,eAAe,KAAK;AAC/C,YAAI,OAAO,eAAe,UAAU;AAClC,gBAAM,iCAAiC;AAAA,QACzC;AACA,YAAI;AACJ,YAAI;AACJ,YAAI,QAAQ;AACZ,YAAI;AACJ,iBAASG,QAAO,WAAW,MAAM;AAC/B,cAAI,CAAC,WAAW;AACd,kBAAM,IAAI;AAAA,UACZ;AAAA,QACF;AACA,YAAI,OAAO,QAAQ,QAAQ,SAAS,QAAQ,SAAS,SAAS;AAC9D,iBAAS,oBAAoB;AAC3B,cAAIC,KAAI,WAAW;AACnB,UAAAJ,QAAO,OAAO,IAAI,QAAQ,IAAI,UAAUI,EAAC;AACzC,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,QAAQ,IAAI,SAAS,IAAI,WAAWI,EAAC;AAC5C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,YAAYI,EAAC;AAC/C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,YAAYI,EAAC;AAC/C,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,aAAaI,EAAC;AAChD,UAAAJ,QAAO,SAAS,IAAI,UAAU,IAAI,aAAaI,EAAC;AAAA,QAClD;AACA,YAAI;AACJ,YAAI,eAAe,CAAC;AACpB,YAAI,aAAa,CAAC;AAClB,YAAI,gBAAgB,CAAC;AACrB,YAAI,qBAAqB;AACzB,iBAAS,SAAS;AAChB,cAAIJ,QAAO,QAAQ,GAAG;AACpB,gBAAI,OAAOA,QAAO,QAAQ,KAAK;AAC7B,cAAAA,QAAO,QAAQ,IAAI,CAACA,QAAO,QAAQ,CAAC;AACtC,mBAAOA,QAAO,QAAQ,EAAE,QAAQ;AAC9B,0BAAYA,QAAO,QAAQ,EAAE,MAAM,CAAC;AAAA,YACtC;AAAA,UACF;AACA,+BAAqB,YAAY;AAAA,QACnC;AACA,iBAAS,cAAc;AACrB,+BAAqB;AACrB,cAAI,CAACA,QAAO,UAAU,KAAK,CAAC,GAAG,KAAK;AAClC,eAAG,KAAK;AACV,aAAG,oBAAoB;AACvB,cAAI,KAAK;AACT,+BAAqB,UAAU;AAAA,QACjC;AACA,iBAAS,UAAU;AACjB,cAAIA,QAAO,SAAS,GAAG;AACrB,gBAAI,OAAOA,QAAO,SAAS,KAAK;AAC9B,cAAAA,QAAO,SAAS,IAAI,CAACA,QAAO,SAAS,CAAC;AACxC,mBAAOA,QAAO,SAAS,EAAE,QAAQ;AAC/B,2BAAaA,QAAO,SAAS,EAAE,MAAM,CAAC;AAAA,YACxC;AAAA,UACF;AACA,+BAAqB,aAAa;AAAA,QACpC;AACA,iBAAS,YAAYK,KAAI;AACvB,uBAAa,QAAQA,GAAE;AAAA,QACzB;AACA,iBAAS,UAAUA,KAAI;AACrB,qBAAW,QAAQA,GAAE;AAAA,QACvB;AACA,iBAAS,aAAaA,KAAI;AACxB,wBAAc,QAAQA,GAAE;AAAA,QAC1B;AACA,YAAI,kBAAkB;AACtB,YAAI,uBAAuB;AAC3B,YAAI,wBAAwB;AAC5B,iBAAS,uBAAuB,IAAI;AAClC,iBAAO;AAAA,QACT;AACA,iBAAS,iBAAiB,IAAI;AAC5B;AACA,cAAIL,QAAO,wBAAwB,GAAG;AACpC,YAAAA,QAAO,wBAAwB,EAAE,eAAe;AAAA,UAClD;AAAA,QACF;AACA,iBAAS,oBAAoB,IAAI;AAC/B;AACA,cAAIA,QAAO,wBAAwB,GAAG;AACpC,YAAAA,QAAO,wBAAwB,EAAE,eAAe;AAAA,UAClD;AACA,cAAI,mBAAmB,GAAG;AACxB,gBAAI,yBAAyB,MAAM;AACjC,4BAAc,oBAAoB;AAClC,qCAAuB;AAAA,YACzB;AACA,gBAAI,uBAAuB;AACzB,kBAAI,WAAW;AACf,sCAAwB;AACxB,uBAAS;AAAA,YACX;AAAA,UACF;AAAA,QACF;AACA,iBAAS,MAAM,MAAM;AACnB,cAAIA,QAAO,SAAS,GAAG;AACrB,YAAAA,QAAO,SAAS,EAAE,IAAI;AAAA,UACxB;AACA,iBAAO,aAAa,OAAO;AAC3B,UAAAE,KAAI,IAAI;AACR,kBAAQ;AACR,uBAAa;AACb,kBAAQ;AACR,cAAI,IAAI,IAAI,YAAY,aAAa,IAAI;AACzC,6BAAmB,CAAC;AACpB,gBAAM;AAAA,QACR;AACA,YAAI,gBAAgB;AACpB,iBAAS,UAAUI,WAAU;AAC3B,iBAAOA,UAAS,WAAW,aAAa;AAAA,QAC1C;AACA,YAAI;AACJ,yBAAiB;AACjB,YAAI,CAAC,UAAU,cAAc,GAAG;AAC9B,2BAAiB,WAAW,cAAc;AAAA,QAC5C;AACA,iBAAS,cAAc,MAAM;AAC3B,cAAI,QAAQ,kBAAkB,YAAY;AACxC,mBAAO,IAAI,WAAW,UAAU;AAAA,UAClC;AACA,cAAI,YAAY;AACd,mBAAO,WAAW,IAAI;AAAA,UACxB;AACA,gBAAM;AAAA,QACR;AACA,iBAAS,iBAAiB,YAAY;AACpC,cAAI,CAAC,eAAe,sBAAsB,wBAAwB;AAChE,gBAAI,OAAO,SAAS,YAAY;AAC9B,qBAAO,MAAM,YAAY,EAAE,aAAa,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa;AAC1E,oBAAI,CAAC,SAAS,IAAI,GAAG;AACnB,wBAAM,yCAAyC,aAAa;AAAA,gBAC9D;AACA,uBAAO,SAAS,aAAa,EAAE;AAAA,cACjC,CAAC,EAAE,MAAM,MAAM,cAAc,UAAU,CAAC;AAAA,YAC1C;AAAA,UACF;AACA,iBAAO,QAAQ,QAAQ,EAAE,KAAK,MAAM,cAAc,UAAU,CAAC;AAAA,QAC/D;AACA,iBAAS,uBAAuB,YAAY,SAAS,UAAU;AAC7D,iBAAO,iBAAiB,UAAU,EAAE,KAAK,CAAC,WAAW,YAAY,YAAY,QAAQ,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,QAAQ,EAAE,KAAK,UAAU,CAAC,WAAW;AACrJ,YAAAJ,KAAI,4CAA4C,MAAM;AACtD,kBAAM,MAAM;AAAA,UACd,CAAC;AAAA,QACH;AACA,iBAAS,iBAAiB,QAAQ,YAAY,SAAS,UAAU;AAC/D,cAAI,CAAC,UAAU,OAAO,YAAY,wBAAwB,cAAc,CAAC,UAAU,UAAU,KAAK,OAAO,SAAS,YAAY;AAC5H,mBAAO,MAAM,YAAY,EAAE,aAAa,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa;AAC1E,kBAAI,SAAS,YAAY,qBAAqB,UAAU,OAAO;AAC/D,qBAAO,OAAO,KAAK,UAAU,SAAS,QAAQ;AAC5C,gBAAAA,KAAI,oCAAoC,MAAM;AAC9C,gBAAAA,KAAI,2CAA2C;AAC/C,uBAAO,uBAAuB,YAAY,SAAS,QAAQ;AAAA,cAC7D,CAAC;AAAA,YACH,CAAC;AAAA,UACH;AACA,iBAAO,uBAAuB,YAAY,SAAS,QAAQ;AAAA,QAC7D;AACA,iBAAS,aAAa;AACpB,cAAI,OAAO,EAAE,KAAK,YAAY;AAC9B,mBAAS,gBAAgB,UAAUK,UAAS;AAC1C,gBAAI,WAAW,SAAS;AACxB,uBAAW,0BAA0B,QAAQ;AAC7C,0BAAc;AACd,yBAAa,YAAY,GAAG;AAC5B,8BAAkB;AAClB,wBAAY,YAAY,GAAG;AAC3B,sBAAU,YAAY,GAAG,CAAC;AAC1B,gCAAoB,kBAAkB;AACtC,mBAAO;AAAA,UACT;AACA,2BAAiB,kBAAkB;AACnC,mBAAS,2BAA2B,QAAQ;AAC1C,4BAAgB,OAAO,UAAU,CAAC;AAAA,UACpC;AACA,cAAIP,QAAO,iBAAiB,GAAG;AAC7B,gBAAI;AACF,qBAAOA,QAAO,iBAAiB,EAAE,MAAM,eAAe;AAAA,YACxD,SAAS,GAAG;AACV,cAAAE,KAAI,wDAAwD,CAAC;AAC7D,iCAAmB,CAAC;AAAA,YACtB;AAAA,UACF;AACA,2BAAiB,YAAY,gBAAgB,MAAM,0BAA0B,EAAE,MAAM,kBAAkB;AACvG,iBAAO,CAAC;AAAA,QACV;AACA,YAAI;AACJ,YAAI;AACJ,YAAI,uBAAuB,CAAC,cAAc;AACxC,iBAAO,UAAU,SAAS,GAAG;AAC3B,sBAAU,MAAM,EAAEF,OAAM;AAAA,UAC1B;AAAA,QACF;AACA,iBAAS,cAAc,QAAQ;AAC7B,eAAK,SAAS;AACd,eAAK,MAAM,SAAS;AACpB,eAAK,WAAW,SAAS,MAAM;AAC7B,oBAAQ,KAAK,MAAM,MAAM,CAAC,IAAI;AAAA,UAChC;AACA,eAAK,WAAW,WAAW;AACzB,mBAAO,QAAQ,KAAK,MAAM,MAAM,CAAC;AAAA,UACnC;AACA,eAAK,iBAAiB,SAAS,YAAY;AACzC,oBAAQ,KAAK,MAAM,MAAM,CAAC,IAAI;AAAA,UAChC;AACA,eAAK,iBAAiB,WAAW;AAC/B,mBAAO,QAAQ,KAAK,MAAM,MAAM,CAAC;AAAA,UACnC;AACA,eAAK,aAAa,SAAS,QAAQ;AACjC,qBAAS,SAAS,IAAI;AACtB,kBAAM,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UAC/B;AACA,eAAK,aAAa,WAAW;AAC3B,mBAAO,MAAM,KAAK,MAAM,OAAO,CAAC,KAAK;AAAA,UACvC;AACA,eAAK,eAAe,SAAS,UAAU;AACrC,uBAAW,WAAW,IAAI;AAC1B,kBAAM,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UAC/B;AACA,eAAK,eAAe,WAAW;AAC7B,mBAAO,MAAM,KAAK,MAAM,OAAO,CAAC,KAAK;AAAA,UACvC;AACA,eAAK,OAAO,SAAS,MAAM,YAAY;AACrC,iBAAK,iBAAiB,CAAC;AACvB,iBAAK,SAAS,IAAI;AAClB,iBAAK,eAAe,UAAU;AAAA,UAChC;AACA,eAAK,mBAAmB,SAAS,aAAa;AAC5C,oBAAQ,KAAK,MAAM,OAAO,CAAC,IAAI;AAAA,UACjC;AACA,eAAK,mBAAmB,WAAW;AACjC,mBAAO,QAAQ,KAAK,MAAM,OAAO,CAAC;AAAA,UACpC;AACA,eAAK,oBAAoB,WAAW;AAClC,gBAAI,YAAY,uBAAuB,KAAK,SAAS,CAAC;AACtD,gBAAI,WAAW;AACb,qBAAO,QAAQ,KAAK,WAAW,CAAC;AAAA,YAClC;AACA,gBAAI,WAAW,KAAK,iBAAiB;AACrC,gBAAI,aAAa;AACf,qBAAO;AACT,mBAAO,KAAK;AAAA,UACd;AAAA,QACF;AACA,YAAI,gBAAgB;AACpB,YAAI,yBAAyB;AAC7B,iBAAS,2BAA2B,IAAI,IAAI;AAC1C,iBAAO,KAAK,YAAY,IAAI,UAAU,CAAC,CAAC,MAAM,OAAO,KAAK,KAAK,aAAa;AAAA,QAC9E;AACA,iBAAS,aAAa,KAAK,MAAM,YAAY;AAC3C,mBAAS;AACT,oBAAU;AACV,0BAAgB;AAChB,cAAI,OAAO,IAAI,cAAc,GAAG;AAChC,eAAK,KAAK,MAAM,UAAU;AAC1B,0BAAgB;AAChB;AACA,gBAAM;AAAA,QACR;AACA,YAAI,qBAAqB,CAAC;AAC1B,iBAAS,eAAe,aAAa;AACnC,iBAAO,YAAY,QAAQ;AACzB,gBAAI,MAAM,YAAY,IAAI;AAC1B,gBAAI,MAAM,YAAY,IAAI;AAC1B,gBAAI,GAAG;AAAA,UACT;AAAA,QACF;AACA,iBAAS,2BAA2B,SAAS;AAC3C,iBAAO,KAAK,cAAc,EAAE,OAAO,YAAY,CAAC,CAAC;AAAA,QACnD;AACA,YAAI,uBAAuB,CAAC;AAC5B,YAAI,kBAAkB,CAAC;AACvB,YAAI,mBAAmB,CAAC;AACxB,YAAI,gBAAgB;AACpB,iBAAS,mBAAmB,SAAS;AACnC,gBAAM,IAAI,cAAc,OAAO;AAAA,QACjC;AACA,iBAAS,8BAA8B,SAAS,gBAAgB,mBAAmB;AACjF,kBAAQ,QAAQ,SAAS,MAAM;AAC7B,6BAAiB,IAAI,IAAI;AAAA,UAC3B,CAAC;AACD,mBAAS,WAAW,iBAAiB;AACnC,gBAAI,mBAAmB,kBAAkB,eAAe;AACxD,gBAAI,iBAAiB,WAAW,QAAQ,QAAQ;AAC9C,iCAAmB,iCAAiC;AAAA,YACtD;AACA,qBAASQ,KAAI,GAAGA,KAAI,QAAQ,QAAQ,EAAEA,IAAG;AACvC,2BAAa,QAAQA,EAAC,GAAG,iBAAiBA,EAAC,CAAC;AAAA,YAC9C;AAAA,UACF;AACA,cAAI,iBAAiB,IAAI,MAAM,eAAe,MAAM;AACpD,cAAI,oBAAoB,CAAC;AACzB,cAAI,aAAa;AACjB,yBAAe,QAAQ,CAAC,IAAIA,OAAM;AAChC,gBAAI,gBAAgB,eAAe,EAAE,GAAG;AACtC,6BAAeA,EAAC,IAAI,gBAAgB,EAAE;AAAA,YACxC,OAAO;AACL,gCAAkB,KAAK,EAAE;AACzB,kBAAI,CAAC,qBAAqB,eAAe,EAAE,GAAG;AAC5C,qCAAqB,EAAE,IAAI,CAAC;AAAA,cAC9B;AACA,mCAAqB,EAAE,EAAE,KAAK,MAAM;AAClC,+BAAeA,EAAC,IAAI,gBAAgB,EAAE;AACtC,kBAAE;AACF,oBAAI,eAAe,kBAAkB,QAAQ;AAC3C,6BAAW,cAAc;AAAA,gBAC3B;AAAA,cACF,CAAC;AAAA,YACH;AAAA,UACF,CAAC;AACD,cAAI,kBAAkB,WAAW,GAAG;AAClC,uBAAW,cAAc;AAAA,UAC3B;AAAA,QACF;AACA,iBAAS,8BAA8B,cAAc;AACnD,4BAAkB;AAClB,cAAI,MAAM,mBAAmB,YAAY;AACzC,iBAAO,mBAAmB,YAAY;AACtC,cAAI,WAAW,IAAI;AACnB,cAAI,iBAAiB,SAAS;AAC9B,cAAI,eAAe,SAAS,IAAI,SAAS,KAAK;AAC5C,mBAAO,IAAI;AAAA,UACb,CAAC,EAAE,OAAO,SAAS,IAAI,SAAS,KAAK;AACnC,mBAAO,IAAI;AAAA,UACb,CAAC,CAAC;AACF,cAAI,iBAAiB,IAAI;AACzB,cAAI,gBAAgB,IAAI;AACxB,wCAA8B,CAAC,YAAY,GAAG,cAAc,SAAS,eAAe;AAClF,qBAAS,QAAQ,CAAC,KAAKA,OAAM;AAC3B,kBAAI,mBAAmB,cAAcA,EAAC;AACtC,kBAAI,SAAS,IAAI;AACjB,kBAAI,gBAAgB,IAAI;AACxB,kBAAI,qBAAqB,cAAcA,KAAI,cAAc;AACzD,kBAAI,SAAS,IAAI;AACjB,kBAAI,gBAAgB,IAAI;AACxB,kBAAI,OAAO,CAAC,QAAQ,iBAAiB,cAAc,EAAE,OAAO,eAAe,GAAG,CAAC;AAC/E,kBAAI,QAAQ,CAAC,KAAKO,OAAM;AACtB,oBAAI,cAAc,CAAC;AACnB,uBAAO,eAAe,KAAK,mBAAmB,YAAY,EAAE,aAAaA,EAAC,CAAC;AAC3E,+BAAe,WAAW;AAAA,cAC5B;AAAA,YACF,CAAC;AACD,mBAAO,CAAC,EAAE,MAAM,IAAI,MAAM,gBAAgB,SAAS,KAAK;AACtD,kBAAI,KAAK,IAAI,MAAM,cAAc;AACjC,uBAASP,KAAI,GAAGA,KAAI,gBAAgB,EAAEA,IAAG;AACvC,mBAAGA,EAAC,IAAI,SAASA,EAAC,EAAE,KAAK,GAAG;AAAA,cAC9B;AACA,4BAAc,GAAG;AACjB,qBAAO;AAAA,YACT,GAAG,cAAc,SAAS,aAAaO,IAAG;AACxC,kBAAI,mBAAmBA,GAAE,QAAQ;AAC/B,sBAAM,IAAI,UAAU,0CAA0C,IAAI,IAAI,cAAc,cAAc,YAAYA,GAAE,MAAM,EAAE;AAAA,cAC1H;AACA,kBAAI,MAAM,eAAe;AACzB,uBAASP,KAAI,GAAGA,KAAI,gBAAgB,EAAEA,IAAG;AACvC,yBAASA,EAAC,EAAE,MAAM,KAAKO,GAAEP,EAAC,CAAC;AAAA,cAC7B;AACA,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,eAAe,GAAG;AAAA,cACrC;AACA,qBAAO;AAAA,YACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,cAAc,CAAC;AAAA,UACjH,CAAC;AAAA,QACH;AACA,YAAI,sBAAsB,CAAC;AAC3B,YAAI,iCAAiC,SAAS,YAAY;AACxD,0BAAgB;AAChB,cAAI,MAAM,oBAAoB,UAAU;AACxC,iBAAO,oBAAoB,UAAU;AACrC,cAAI,iBAAiB,IAAI;AACzB,cAAI,gBAAgB,IAAI;AACxB,cAAI,eAAe,IAAI;AACvB,cAAI,aAAa,aAAa,IAAI,CAAC,UAAU,MAAM,gBAAgB,EAAE,OAAO,aAAa,IAAI,CAAC,UAAU,MAAM,kBAAkB,CAAC;AACjI,wCAA8B,CAAC,UAAU,GAAG,YAAY,CAAC,gBAAgB;AACvE,gBAAI,SAAS,CAAC;AACd,yBAAa,QAAQ,CAAC,OAAOA,OAAM;AACjC,kBAAI,YAAY,MAAM;AACtB,kBAAI,mBAAmB,YAAYA,EAAC;AACpC,kBAAI,SAAS,MAAM;AACnB,kBAAI,gBAAgB,MAAM;AAC1B,kBAAI,qBAAqB,YAAYA,KAAI,aAAa,MAAM;AAC5D,kBAAI,SAAS,MAAM;AACnB,kBAAI,gBAAgB,MAAM;AAC1B,qBAAO,SAAS,IAAI,EAAE,MAAM,CAAC,QAAQ,iBAAiB,cAAc,EAAE,OAAO,eAAe,GAAG,CAAC,GAAG,OAAO,CAAC,KAAKO,OAAM;AACpH,oBAAI,cAAc,CAAC;AACnB,uBAAO,eAAe,KAAK,mBAAmB,YAAY,EAAE,aAAaA,EAAC,CAAC;AAC3E,+BAAe,WAAW;AAAA,cAC5B,EAAE;AAAA,YACJ,CAAC;AACD,mBAAO,CAAC,EAAE,MAAM,IAAI,MAAM,gBAAgB,SAAS,KAAK;AACtD,kBAAI,KAAK,CAAC;AACV,uBAASP,MAAK,QAAQ;AACpB,mBAAGA,EAAC,IAAI,OAAOA,EAAC,EAAE,KAAK,GAAG;AAAA,cAC5B;AACA,4BAAc,GAAG;AACjB,qBAAO;AAAA,YACT,GAAG,cAAc,SAAS,aAAaO,IAAG;AACxC,uBAAS,aAAa,QAAQ;AAC5B,oBAAI,EAAE,aAAaA,KAAI;AACrB,wBAAM,IAAI,UAAU,mBAAmB,SAAS,GAAG;AAAA,gBACrD;AAAA,cACF;AACA,kBAAI,MAAM,eAAe;AACzB,mBAAK,aAAa,QAAQ;AACxB,uBAAO,SAAS,EAAE,MAAM,KAAKA,GAAE,SAAS,CAAC;AAAA,cAC3C;AACA,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,eAAe,GAAG;AAAA,cACrC;AACA,qBAAO;AAAA,YACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,cAAc,CAAC;AAAA,UACjH,CAAC;AAAA,QACH;AACA,iBAAS,yBAAyB,eAAeF,QAAM,MAAM,UAAU,UAAU;AAC/E,6BAAmB;AACnB,UAAAA,YAAU;AACV,oBAAU;AAAA,QACZ;AACA,iBAAS,iBAAiB,MAAM;AAC9B,kBAAQ,MAAM;AAAA,YACZ,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT;AACE,oBAAM,IAAI,UAAU,sBAAsB,IAAI,EAAE;AAAA,UACpD;AAAA,QACF;AACA,iBAAS,wBAAwB;AAC/B,cAAI,QAAQ,IAAI,MAAM,GAAG;AACzB,mBAASL,KAAI,GAAGA,KAAI,KAAK,EAAEA,IAAG;AAC5B,kBAAMA,EAAC,IAAI,OAAO,aAAaA,EAAC;AAAA,UAClC;AACA,6BAAmB;AAAA,QACrB;AACA,YAAI,mBAAmB;AACvB,iBAAS,iBAAiB,KAAK;AAC7B,cAAI,MAAM;AACV,cAAII,KAAI;AACR,iBAAO,OAAOA,OAAM,CAAC,GAAG;AACtB,mBAAO,iBAAiB,OAAOA,SAAQ,CAAC,CAAC;AAAA,UAC3C;AACA,iBAAO;AAAA,QACT;AACA,YAAI,eAAe;AACnB,iBAAS,kBAAkB,SAAS;AAClC,gBAAM,IAAI,aAAa,OAAO;AAAA,QAChC;AACA,iBAAS,mBAAmB,SAAS,oBAAoB,UAAU,CAAC,GAAG;AACrE,cAAIC,SAAO,mBAAmB;AAC9B,cAAI,CAAC,SAAS;AACZ,8BAAkB,SAASA,MAAI,+CAA+C;AAAA,UAChF;AACA,cAAI,gBAAgB,eAAe,OAAO,GAAG;AAC3C,gBAAI,QAAQ,8BAA8B;AACxC;AAAA,YACF,OAAO;AACL,gCAAkB,yBAAyBA,MAAI,SAAS;AAAA,YAC1D;AAAA,UACF;AACA,0BAAgB,OAAO,IAAI;AAC3B,iBAAO,iBAAiB,OAAO;AAC/B,cAAI,qBAAqB,eAAe,OAAO,GAAG;AAChD,gBAAI,YAAY,qBAAqB,OAAO;AAC5C,mBAAO,qBAAqB,OAAO;AACnC,sBAAU,QAAQ,CAACR,QAAOA,IAAG,CAAC;AAAA,UAChC;AAAA,QACF;AACA,iBAAS,aAAa,SAAS,oBAAoB,UAAU,CAAC,GAAG;AAC/D,cAAI,EAAE,oBAAoB,qBAAqB;AAC7C,kBAAM,IAAI,UAAU,yDAAyD;AAAA,UAC/E;AACA,iBAAO,mBAAmB,SAAS,oBAAoB,OAAO;AAAA,QAChE;AACA,iBAAS,uBAAuB,SAASQ,QAAM,MAAM,WAAW,YAAY;AAC1E,uBAAa;AACb,UAAAA,YAAU;AACV,oBAAU;AACV,cAAI,QAAQ,iBAAiB,IAAI;AACjC,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,IAAI;AACzD,mBAAO,CAAC,CAAC;AAAA,UACX,GAAG,cAAc,SAAS,aAAaE,IAAG;AACxC,mBAAOA,KAAI,YAAY;AAAA,UACzB,GAAG,kBAAkB,GAAG,wBAAwB,SAAS,SAAS;AAChE,gBAAI;AACJ,gBAAI,SAAS,GAAG;AACd,qBAAO;AAAA,YACT,WAAW,SAAS,GAAG;AACrB,qBAAO;AAAA,YACT,WAAW,SAAS,GAAG;AACrB,qBAAO;AAAA,YACT,OAAO;AACL,oBAAM,IAAI,UAAU,gCAAgCF,MAAI;AAAA,YAC1D;AACA,mBAAO,KAAK,cAAc,EAAE,KAAK,YAAY,KAAK,CAAC;AAAA,UACrD,GAAG,oBAAoB,KAAK,CAAC;AAAA,QAC/B;AACA,iBAAS,sBAAsB,OAAO;AACpC,cAAI,EAAE,gBAAgB,cAAc;AAClC,mBAAO;AAAA,UACT;AACA,cAAI,EAAE,iBAAiB,cAAc;AACnC,mBAAO;AAAA,UACT;AACA,cAAI,YAAY,KAAK,GAAG,QAAQ;AAChC,cAAI,OAAO,KAAK,GAAG;AACnB,cAAI,aAAa,MAAM,GAAG,QAAQ;AAClC,cAAI,QAAQ,MAAM,GAAG;AACrB,iBAAO,UAAU,WAAW;AAC1B,mBAAO,UAAU,OAAO,IAAI;AAC5B,wBAAY,UAAU;AAAA,UACxB;AACA,iBAAO,WAAW,WAAW;AAC3B,oBAAQ,WAAW,OAAO,KAAK;AAC/B,yBAAa,WAAW;AAAA,UAC1B;AACA,iBAAO,cAAc,cAAc,SAAS;AAAA,QAC9C;AACA,iBAAS,2BAA2BE,IAAG;AACrC,iBAAO,EAAE,OAAOA,GAAE,OAAO,iBAAiBA,GAAE,iBAAiB,yBAAyBA,GAAE,yBAAyB,KAAKA,GAAE,KAAK,SAASA,GAAE,SAAS,UAAUA,GAAE,UAAU,cAAcA,GAAE,aAAa;AAAA,QACtM;AACA,iBAAS,4BAA4B,KAAK;AACxC,mBAAS,oBAAoB,QAAQ;AACnC,mBAAO,OAAO,GAAG,QAAQ,gBAAgB;AAAA,UAC3C;AACA,4BAAkB,oBAAoB,GAAG,IAAI,2BAA2B;AAAA,QAC1E;AACA,YAAI,uBAAuB;AAC3B,iBAAS,gBAAgB,QAAQ;AAAA,QACjC;AACA,iBAAS,cAAc,IAAI;AACzB,cAAI,GAAG,UAAU;AACf,eAAG,aAAa,cAAc,GAAG,QAAQ;AAAA,UAC3C,OAAO;AACL,eAAG,QAAQ,gBAAgB,cAAc,GAAG,GAAG;AAAA,UACjD;AAAA,QACF;AACA,iBAAS,mBAAmB,IAAI;AAC9B,aAAG,MAAM,SAAS;AAClB,cAAI,WAAW,GAAG,MAAM,UAAU;AAClC,cAAI,UAAU;AACZ,0BAAc,EAAE;AAAA,UAClB;AAAA,QACF;AACA,iBAAS,gBAAgB,KAAK,UAAU,cAAc;AACpD,cAAI,aAAa,cAAc;AAC7B,mBAAO;AAAA,UACT;AACA,cAAI,aAAa,cAAc,QAAQ;AACrC,mBAAO;AAAA,UACT;AACA,cAAI,KAAK,gBAAgB,KAAK,UAAU,aAAa,SAAS;AAC9D,cAAI,OAAO,MAAM;AACf,mBAAO;AAAA,UACT;AACA,iBAAO,aAAa,SAAS,EAAE;AAAA,QACjC;AACA,YAAI,qBAAqB,CAAC;AAC1B,iBAAS,4BAA4B;AACnC,iBAAO,OAAO,KAAK,mBAAmB,EAAE;AAAA,QAC1C;AACA,iBAAS,4BAA4B;AACnC,cAAI,KAAK,CAAC;AACV,mBAAS,KAAK,qBAAqB;AACjC,gBAAI,oBAAoB,eAAe,CAAC,GAAG;AACzC,iBAAG,KAAK,oBAAoB,CAAC,CAAC;AAAA,YAChC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC;AACrB,iBAAS,sBAAsB;AAC7B,iBAAO,cAAc,QAAQ;AAC3B,gBAAI,MAAM,cAAc,IAAI;AAC5B,gBAAI,GAAG,kBAAkB;AACzB,gBAAI,QAAQ,EAAE;AAAA,UAChB;AAAA,QACF;AACA,YAAI,gBAAgB;AACpB,iBAAS,iBAAiB,IAAI;AAC5B,0BAAgB;AAChB,cAAI,cAAc,UAAU,eAAe;AACzC,0BAAc,mBAAmB;AAAA,UACnC;AAAA,QACF;AACA,iBAAS,cAAc;AACrB,UAAAf,QAAO,2BAA2B,IAAI;AACtC,UAAAA,QAAO,2BAA2B,IAAI;AACtC,UAAAA,QAAO,qBAAqB,IAAI;AAChC,UAAAA,QAAO,kBAAkB,IAAI;AAAA,QAC/B;AACA,YAAI,sBAAsB,CAAC;AAC3B,iBAAS,iBAAiB,QAAQ,KAAK;AACrC,cAAI,QAAQ,QAAQ;AAClB,8BAAkB,6BAA6B;AAAA,UACjD;AACA,iBAAO,OAAO,WAAW;AACvB,kBAAM,OAAO,OAAO,GAAG;AACvB,qBAAS,OAAO;AAAA,UAClB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,qBAAqB,QAAQ,KAAK;AACzC,gBAAM,iBAAiB,QAAQ,GAAG;AAClC,iBAAO,oBAAoB,GAAG;AAAA,QAChC;AACA,iBAAS,gBAAgB,WAAW,QAAQ;AAC1C,cAAI,CAAC,OAAO,WAAW,CAAC,OAAO,KAAK;AAClC,+BAAmB,0CAA0C;AAAA,UAC/D;AACA,cAAI,kBAAkB,CAAC,CAAC,OAAO;AAC/B,cAAI,cAAc,CAAC,CAAC,OAAO;AAC3B,cAAI,oBAAoB,aAAa;AACnC,+BAAmB,kDAAkD;AAAA,UACvE;AACA,iBAAO,QAAQ,EAAE,OAAO,EAAE;AAC1B,iBAAO,gBAAgB,OAAO,OAAO,WAAW,EAAE,IAAI,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;AAAA,QAC5E;AACA,iBAAS,+BAA+B,KAAK;AAC3C,cAAI,aAAa,KAAK,WAAW,GAAG;AACpC,cAAI,CAAC,YAAY;AACf,iBAAK,WAAW,GAAG;AACnB,mBAAO;AAAA,UACT;AACA,cAAI,qBAAqB,qBAAqB,KAAK,iBAAiB,UAAU;AAC9E,cAAI,uBAAuB,QAAQ;AACjC,gBAAI,mBAAmB,GAAG,MAAM,UAAU,GAAG;AAC3C,iCAAmB,GAAG,MAAM;AAC5B,iCAAmB,GAAG,WAAW;AACjC,qBAAO,mBAAmB,OAAO,EAAE;AAAA,YACrC,OAAO;AACL,kBAAI,KAAK,mBAAmB,OAAO,EAAE;AACrC,mBAAK,WAAW,GAAG;AACnB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,mBAAS,oBAAoB;AAC3B,gBAAI,KAAK,gBAAgB;AACvB,qBAAO,gBAAgB,KAAK,gBAAgB,mBAAmB,EAAE,SAAS,KAAK,aAAa,KAAK,YAAY,cAAc,MAAM,UAAU,IAAI,CAAC;AAAA,YAClJ,OAAO;AACL,qBAAO,gBAAgB,KAAK,gBAAgB,mBAAmB,EAAE,SAAS,MAAM,IAAI,CAAC;AAAA,YACvF;AAAA,UACF;AACA,cAAI,aAAa,KAAK,gBAAgB,cAAc,UAAU;AAC9D,cAAI,0BAA0B,mBAAmB,UAAU;AAC3D,cAAI,CAAC,yBAAyB;AAC5B,mBAAO,kBAAkB,KAAK,IAAI;AAAA,UACpC;AACA,cAAI;AACJ,cAAI,KAAK,SAAS;AAChB,qBAAS,wBAAwB;AAAA,UACnC,OAAO;AACL,qBAAS,wBAAwB;AAAA,UACnC;AACA,cAAI,KAAK,gBAAgB,YAAY,KAAK,iBAAiB,OAAO,eAAe;AACjF,cAAI,OAAO,MAAM;AACf,mBAAO,kBAAkB,KAAK,IAAI;AAAA,UACpC;AACA,cAAI,KAAK,gBAAgB;AACvB,mBAAO,gBAAgB,OAAO,gBAAgB,mBAAmB,EAAE,SAAS,QAAQ,KAAK,IAAI,cAAc,MAAM,UAAU,IAAI,CAAC;AAAA,UAClI,OAAO;AACL,mBAAO,gBAAgB,OAAO,gBAAgB,mBAAmB,EAAE,SAAS,QAAQ,KAAK,GAAG,CAAC;AAAA,UAC/F;AAAA,QACF;AACA,YAAI,kBAAkB,SAAS,QAAQ;AACrC,cAAI,OAAO,yBAAyB,aAAa;AAC/C,8BAAkB,CAAC,YAAY;AAC/B,mBAAO;AAAA,UACT;AACA,iCAAuB,IAAI,qBAAqB,CAAC,SAAS;AACxD,+BAAmB,KAAK,EAAE;AAAA,UAC5B,CAAC;AACD,4BAAkB,CAAC,YAAY;AAC7B,gBAAI,KAAK,QAAQ;AACjB,gBAAI,cAAc,CAAC,CAAC,GAAG;AACvB,gBAAI,aAAa;AACf,kBAAI,OAAO,EAAE,GAAG;AAChB,mCAAqB,SAAS,SAAS,MAAM,OAAO;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,4BAAkB,CAAC,YAAY,qBAAqB,WAAW,OAAO;AACtE,iBAAO,gBAAgB,MAAM;AAAA,QAC/B;AACA,iBAAS,oBAAoB;AAC3B,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,yBAAyB;AACnC,iBAAK,GAAG,MAAM,SAAS;AACvB,mBAAO;AAAA,UACT,OAAO;AACL,gBAAIgB,SAAQ,gBAAgB,OAAO,OAAO,OAAO,eAAe,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,2BAA2B,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9H,YAAAA,OAAM,GAAG,MAAM,SAAS;AACxB,YAAAA,OAAM,GAAG,kBAAkB;AAC3B,mBAAOA;AAAA,UACT;AAAA,QACF;AACA,iBAAS,qBAAqB;AAC5B,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,mBAAmB,CAAC,KAAK,GAAG,yBAAyB;AAC/D,8BAAkB,uCAAuC;AAAA,UAC3D;AACA,0BAAgB,IAAI;AACpB,6BAAmB,KAAK,EAAE;AAC1B,cAAI,CAAC,KAAK,GAAG,yBAAyB;AACpC,iBAAK,GAAG,WAAW;AACnB,iBAAK,GAAG,MAAM;AAAA,UAChB;AAAA,QACF;AACA,iBAAS,wBAAwB;AAC/B,iBAAO,CAAC,KAAK,GAAG;AAAA,QAClB;AACA,iBAAS,0BAA0B;AACjC,cAAI,CAAC,KAAK,GAAG,KAAK;AAChB,wCAA4B,IAAI;AAAA,UAClC;AACA,cAAI,KAAK,GAAG,mBAAmB,CAAC,KAAK,GAAG,yBAAyB;AAC/D,8BAAkB,uCAAuC;AAAA,UAC3D;AACA,wBAAc,KAAK,IAAI;AACvB,cAAI,cAAc,WAAW,KAAK,eAAe;AAC/C,0BAAc,mBAAmB;AAAA,UACnC;AACA,eAAK,GAAG,kBAAkB;AAC1B,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB;AAC1B,sBAAY,UAAU,WAAW,IAAI;AACrC,sBAAY,UAAU,OAAO,IAAI;AACjC,sBAAY,UAAU,QAAQ,IAAI;AAClC,sBAAY,UAAU,WAAW,IAAI;AACrC,sBAAY,UAAU,aAAa,IAAI;AAAA,QACzC;AACA,iBAAS,cAAc;AAAA,QACvB;AACA,YAAI,SAAS;AACb,YAAI,SAAS;AACb,iBAAS,sBAAsBH,QAAM;AACnC,cAAIA,WAAS,QAAQ;AACnB,mBAAO;AAAA,UACT;AACA,UAAAA,SAAOA,OAAK,QAAQ,kBAAkB,GAAG;AACzC,cAAIC,KAAID,OAAK,WAAW,CAAC;AACzB,cAAIC,MAAK,UAAUA,MAAK,QAAQ;AAC9B,mBAAO,IAAID,MAAI;AAAA,UACjB;AACA,iBAAOA;AAAA,QACT;AACA,iBAAS,oBAAoBA,QAAM,MAAM;AACvC,UAAAA,SAAO,sBAAsBA,MAAI;AACjC,iBAAO,EAAE,CAACA,MAAI,GAAG,WAAW;AAC1B,mBAAO,KAAK,MAAM,MAAM,SAAS;AAAA,UACnC,EAAE,EAAEA,MAAI;AAAA,QACV;AACA,iBAAS,oBAAoB,OAAO,YAAY,WAAW;AACzD,cAAI,MAAM,UAAU,EAAE,kBAAkB,QAAQ;AAC9C,gBAAI,WAAW,MAAM,UAAU;AAC/B,kBAAM,UAAU,IAAI,WAAW;AAC7B,kBAAI,CAAC,MAAM,UAAU,EAAE,cAAc,eAAe,UAAU,MAAM,GAAG;AACrE,kCAAkB,aAAa,SAAS,iDAAiD,UAAU,MAAM,uBAAuB,MAAM,UAAU,EAAE,aAAa,IAAI;AAAA,cACrK;AACA,qBAAO,MAAM,UAAU,EAAE,cAAc,UAAU,MAAM,EAAE,MAAM,MAAM,SAAS;AAAA,YAChF;AACA,kBAAM,UAAU,EAAE,gBAAgB,CAAC;AACnC,kBAAM,UAAU,EAAE,cAAc,SAAS,QAAQ,IAAI;AAAA,UACvD;AAAA,QACF;AACA,iBAAS,mBAAmBA,QAAM,OAAO,cAAc;AACrD,cAAIb,QAAO,eAAea,MAAI,GAAG;AAC/B,gBAAI,iBAAiB,UAAUb,QAAOa,MAAI,EAAE,kBAAkB,UAAUb,QAAOa,MAAI,EAAE,cAAc,YAAY,MAAM,QAAQ;AAC3H,gCAAkB,gCAAgCA,MAAI,SAAS;AAAA,YACjE;AACA,gCAAoBb,SAAQa,QAAMA,MAAI;AACtC,gBAAIb,QAAO,eAAe,YAAY,GAAG;AACvC,gCAAkB,uFAAuF,YAAY,IAAI;AAAA,YAC3H;AACA,YAAAA,QAAOa,MAAI,EAAE,cAAc,YAAY,IAAI;AAAA,UAC7C,OAAO;AACL,YAAAb,QAAOa,MAAI,IAAI;AACf,gBAAI,iBAAiB,QAAQ;AAC3B,cAAAb,QAAOa,MAAI,EAAE,eAAe;AAAA,YAC9B;AAAA,UACF;AAAA,QACF;AACA,iBAAS,gBAAgBA,QAAM,aAAa,mBAAmB,eAAe,WAAW,eAAe,QAAQ,UAAU;AACxH,eAAK,OAAOA;AACZ,eAAK,cAAc;AACnB,eAAK,oBAAoB;AACzB,eAAK,gBAAgB;AACrB,eAAK,YAAY;AACjB,eAAK,gBAAgB;AACrB,eAAK,SAAS;AACd,eAAK,WAAW;AAChB,eAAK,uBAAuB,CAAC;AAAA,QAC/B;AACA,iBAAS,cAAc,KAAK,UAAU,cAAc;AAClD,iBAAO,aAAa,cAAc;AAChC,gBAAI,CAAC,SAAS,QAAQ;AACpB,gCAAkB,gCAAgC,aAAa,IAAI,wBAAwB,SAAS,IAAI,EAAE;AAAA,YAC5G;AACA,kBAAM,SAAS,OAAO,GAAG;AACzB,uBAAW,SAAS;AAAA,UACtB;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,oCAAoC,aAAa,QAAQ;AAChE,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,cAAI,MAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACxE,iBAAO;AAAA,QACT;AACA,iBAAS,yBAAyB,aAAa,QAAQ;AACrD,cAAI;AACJ,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,gBAAI,KAAK,gBAAgB;AACvB,oBAAM,KAAK,eAAe;AAC1B,kBAAI,gBAAgB,MAAM;AACxB,4BAAY,KAAK,KAAK,eAAe,GAAG;AAAA,cAC1C;AACA,qBAAO;AAAA,YACT,OAAO;AACL,qBAAO;AAAA,YACT;AAAA,UACF;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,CAAC,KAAK,WAAW,OAAO,GAAG,QAAQ,SAAS;AAC9C,8BAAkB,mCAAmC,OAAO,GAAG,eAAe,OAAO,GAAG,aAAa,OAAO,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,UACrK;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,gBAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACpE,cAAI,KAAK,gBAAgB;AACvB,gBAAI,OAAO,GAAG,aAAa,QAAQ;AACjC,gCAAkB,iDAAiD;AAAA,YACrE;AACA,oBAAQ,KAAK,eAAe;AAAA,cAC1B,KAAK;AACH,oBAAI,OAAO,GAAG,iBAAiB,MAAM;AACnC,wBAAM,OAAO,GAAG;AAAA,gBAClB,OAAO;AACL,oCAAkB,mCAAmC,OAAO,GAAG,eAAe,OAAO,GAAG,aAAa,OAAO,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,gBACrK;AACA;AAAA,cACF,KAAK;AACH,sBAAM,OAAO,GAAG;AAChB;AAAA,cACF,KAAK;AACH,oBAAI,OAAO,GAAG,iBAAiB,MAAM;AACnC,wBAAM,OAAO,GAAG;AAAA,gBAClB,OAAO;AACL,sBAAI,eAAe,OAAO,OAAO,EAAE;AACnC,wBAAM,KAAK,SAAS,KAAK,MAAM,SAAS,WAAW;AACjD,iCAAa,QAAQ,EAAE;AAAA,kBACzB,CAAC,CAAC;AACF,sBAAI,gBAAgB,MAAM;AACxB,gCAAY,KAAK,KAAK,eAAe,GAAG;AAAA,kBAC1C;AAAA,gBACF;AACA;AAAA,cACF;AACE,kCAAkB,6BAA6B;AAAA,YACnD;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,uCAAuC,aAAa,QAAQ;AACnE,cAAI,WAAW,MAAM;AACnB,gBAAI,KAAK,aAAa;AACpB,gCAAkB,uBAAuB,KAAK,IAAI,EAAE;AAAA,YACtD;AACA,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,OAAO,IAAI;AACd,8BAAkB,gBAAgB,WAAW,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE;AAAA,UAC3E;AACA,cAAI,CAAC,OAAO,GAAG,KAAK;AAClB,8BAAkB,mDAAmD,KAAK,IAAI,EAAE;AAAA,UAClF;AACA,cAAI,OAAO,GAAG,QAAQ,SAAS;AAC7B,8BAAkB,mCAAmC,OAAO,GAAG,QAAQ,IAAI,sBAAsB,KAAK,IAAI,EAAE;AAAA,UAC9G;AACA,cAAI,cAAc,OAAO,GAAG,QAAQ;AACpC,cAAI,MAAM,cAAc,OAAO,GAAG,KAAK,aAAa,KAAK,eAAe;AACxE,iBAAO;AAAA,QACT;AACA,iBAAS,6BAA6B,KAAK;AACzC,cAAI,KAAK,eAAe;AACtB,kBAAM,KAAK,cAAc,GAAG;AAAA,UAC9B;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,6BAA6B,KAAK;AACzC,cAAI,KAAK,eAAe;AACtB,iBAAK,cAAc,GAAG;AAAA,UACxB;AAAA,QACF;AACA,iBAAS,+BAA+B,QAAQ;AAC9C,cAAI,WAAW,MAAM;AACnB,mBAAO,QAAQ,EAAE;AAAA,UACnB;AAAA,QACF;AACA,iBAAS,yBAAyB;AAChC,4BAAkB,UAAU,aAAa;AACzC,4BAAkB,UAAU,aAAa;AACzC,4BAAkB,UAAU,gBAAgB,IAAI;AAChD,4BAAkB,UAAU,sBAAsB,IAAI;AACtD,4BAAkB,UAAU,cAAc,IAAI;AAC9C,4BAAkB,UAAU,cAAc,IAAI;AAAA,QAChD;AACA,iBAAS,kBAAkBA,QAAM,iBAAiB,aAAa,SAAS,gBAAgB,aAAa,eAAe,eAAe,gBAAgB,UAAU,eAAe;AAC1K,eAAK,OAAOA;AACZ,eAAK,kBAAkB;AACvB,eAAK,cAAc;AACnB,eAAK,UAAU;AACf,eAAK,iBAAiB;AACtB,eAAK,cAAc;AACnB,eAAK,gBAAgB;AACrB,eAAK,gBAAgB;AACrB,eAAK,iBAAiB;AACtB,eAAK,WAAW;AAChB,eAAK,gBAAgB;AACrB,cAAI,CAAC,kBAAkB,gBAAgB,cAAc,QAAQ;AAC3D,gBAAI,SAAS;AACX,mBAAK,YAAY,IAAI;AACrB,mBAAK,qBAAqB;AAAA,YAC5B,OAAO;AACL,mBAAK,YAAY,IAAI;AACrB,mBAAK,qBAAqB;AAAA,YAC5B;AAAA,UACF,OAAO;AACL,iBAAK,YAAY,IAAI;AAAA,UACvB;AAAA,QACF;AACA,iBAAS,oBAAoBA,QAAM,OAAO,cAAc;AACtD,cAAI,CAACb,QAAO,eAAea,MAAI,GAAG;AAChC,+BAAmB,qCAAqC;AAAA,UAC1D;AACA,cAAIb,QAAOa,MAAI,EAAE,kBAAkB,UAAU,iBAAiB,QAAQ;AACpE,YAAAb,QAAOa,MAAI,EAAE,cAAc,YAAY,IAAI;AAAA,UAC7C,OAAO;AACL,YAAAb,QAAOa,MAAI,IAAI;AACf,YAAAb,QAAOa,MAAI,EAAE,WAAW;AAAA,UAC1B;AAAA,QACF;AACA,YAAI,gBAAgB,CAAC,KAAK,KAAK,SAAS;AACtC,cAAIC,KAAId,QAAO,aAAa,GAAG;AAC/B,iBAAO,QAAQ,KAAK,SAASc,GAAE,MAAM,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,IAAIA,GAAE,KAAK,MAAM,GAAG;AAAA,QACnF;AACA,YAAI,kBAAkB,CAAC;AACvB,YAAI,oBAAoB,CAAC,YAAY;AACnC,cAAI,OAAO,gBAAgB,OAAO;AAClC,cAAI,CAAC,MAAM;AACT,gBAAI,WAAW,gBAAgB;AAC7B,8BAAgB,SAAS,UAAU;AACrC,4BAAgB,OAAO,IAAI,OAAO,UAAU,IAAI,OAAO;AAAA,UACzD;AACA,iBAAO;AAAA,QACT;AACA,YAAI,UAAU,CAAC,KAAK,KAAK,SAAS;AAChC,cAAI,IAAI,SAAS,GAAG,GAAG;AACrB,mBAAO,cAAc,KAAK,KAAK,IAAI;AAAA,UACrC;AACA,cAAI,MAAM,kBAAkB,GAAG,EAAE,MAAM,MAAM,IAAI;AACjD,iBAAO;AAAA,QACT;AACA,YAAI,eAAe,CAAC,KAAK,QAAQ;AAC/B,cAAI,WAAW,CAAC;AAChB,iBAAO,WAAW;AAChB,qBAAS,SAAS;AAClB,mBAAO,OAAO,UAAU,SAAS;AACjC,mBAAO,QAAQ,KAAK,KAAK,QAAQ;AAAA,UACnC;AAAA,QACF;AACA,iBAAS,wBAAwB,WAAW,aAAa;AACvD,sBAAY,iBAAiB,SAAS;AACtC,mBAAS,gBAAgB;AACvB,gBAAI,UAAU,SAAS,GAAG,GAAG;AAC3B,qBAAO,aAAa,WAAW,WAAW;AAAA,YAC5C;AACA,mBAAO,kBAAkB,WAAW;AAAA,UACtC;AACA,cAAI,KAAK,cAAc;AACvB,cAAI,OAAO,MAAM,YAAY;AAC3B,8BAAkB,2CAA2C,SAAS,KAAK,WAAW,EAAE;AAAA,UAC1F;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,YAAY,eAAe,WAAW;AAC7C,cAAI,aAAa,oBAAoB,WAAW,SAAS,SAAS;AAChE,iBAAK,OAAO;AACZ,iBAAK,UAAU;AACf,gBAAI,QAAQ,IAAI,MAAM,OAAO,EAAE;AAC/B,gBAAI,UAAU,QAAQ;AACpB,mBAAK,QAAQ,KAAK,SAAS,IAAI,OAAO,MAAM,QAAQ,sBAAsB,EAAE;AAAA,YAC9E;AAAA,UACF,CAAC;AACD,qBAAW,YAAY,OAAO,OAAO,cAAc,SAAS;AAC5D,qBAAW,UAAU,cAAc;AACnC,qBAAW,UAAU,WAAW,WAAW;AACzC,gBAAI,KAAK,YAAY,QAAQ;AAC3B,qBAAO,KAAK;AAAA,YACd,OAAO;AACL,qBAAO,GAAG,KAAK,IAAI,KAAK,KAAK,OAAO;AAAA,YACtC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,mBAAmB;AACvB,iBAAS,YAAY,MAAM;AACzB,cAAI,MAAM,eAAe,IAAI;AAC7B,cAAI,KAAK,iBAAiB,GAAG;AAC7B,gBAAM,GAAG;AACT,iBAAO;AAAA,QACT;AACA,iBAAS,sBAAsB,SAAS,OAAO;AAC7C,cAAI,eAAe,CAAC;AACpB,cAAI,OAAO,CAAC;AACZ,mBAAS,MAAM,MAAM;AACnB,gBAAI,KAAK,IAAI,GAAG;AACd;AAAA,YACF;AACA,gBAAI,gBAAgB,IAAI,GAAG;AACzB;AAAA,YACF;AACA,gBAAI,iBAAiB,IAAI,GAAG;AAC1B,+BAAiB,IAAI,EAAE,QAAQ,KAAK;AACpC;AAAA,YACF;AACA,yBAAa,KAAK,IAAI;AACtB,iBAAK,IAAI,IAAI;AAAA,UACf;AACA,gBAAM,QAAQ,KAAK;AACnB,gBAAM,IAAI,iBAAiB,GAAG,OAAO,OAAO,aAAa,IAAI,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;AAAA,QACxF;AACA,iBAAS,wBAAwB,SAAS,gBAAgB,qBAAqB,kBAAkB,wBAAwB,eAAe,iBAAiB,QAAQ,mBAAmB,UAAUD,QAAM,qBAAqB,eAAe;AACtO,uBAAa;AACb,8BAAoB;AACpB,mCAAyB;AACzB,gCAAsB;AACtB,sCAA4B;AAC5B,6BAAmB;AACnB,+BAAqB;AACrB,sBAAY;AACZ,iCAAuB;AACvB,wBAAc;AACd,UAAAA,YAAU;AACV,mCAAyB;AACzB,6BAAmB;AACnB,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,0BAAgB,wBAAwB,wBAAwB,aAAa;AAC7E,cAAI,QAAQ;AACV,qBAAS,wBAAwB,iBAAiB,MAAM;AAAA,UAC1D;AACA,cAAI,UAAU;AACZ,uBAAW,wBAAwB,mBAAmB,QAAQ;AAAA,UAChE;AACA,0BAAgB,wBAAwB,qBAAqB,aAAa;AAC1E,cAAI,oBAAoB,sBAAsBA,MAAI;AAClD,6BAAmB,mBAAmB,WAAW;AAC/C,kCAAsB,oBAAoBA,MAAI,yBAAyB,CAAC,gBAAgB,CAAC;AAAA,UAC3F,CAAC;AACD,wCAA8B,CAAC,SAAS,gBAAgB,mBAAmB,GAAG,mBAAmB,CAAC,gBAAgB,IAAI,CAAC,GAAG,SAAS,MAAM;AACvI,mBAAO,KAAK,CAAC;AACb,gBAAI;AACJ,gBAAI;AACJ,gBAAI,kBAAkB;AACpB,0BAAY,KAAK;AACjB,8BAAgB,UAAU;AAAA,YAC5B,OAAO;AACL,8BAAgB,YAAY;AAAA,YAC9B;AACA,gBAAI,cAAc,oBAAoB,mBAAmB,WAAW;AAClE,kBAAI,OAAO,eAAe,IAAI,MAAM,mBAAmB;AACrD,sBAAM,IAAI,aAAa,4BAA4BA,MAAI;AAAA,cACzD;AACA,kBAAI,gBAAgB,qBAAqB,QAAQ;AAC/C,sBAAM,IAAI,aAAaA,SAAO,gCAAgC;AAAA,cAChE;AACA,kBAAI,OAAO,gBAAgB,iBAAiB,UAAU,MAAM;AAC5D,kBAAI,SAAS,QAAQ;AACnB,sBAAM,IAAI,aAAa,2BAA2BA,MAAI,uCAAuC,UAAU,MAAM,iBAAiB,OAAO,KAAK,gBAAgB,gBAAgB,EAAE,SAAS,CAAC,uBAAuB;AAAA,cAC/M;AACA,qBAAO,KAAK,MAAM,MAAM,SAAS;AAAA,YACnC,CAAC;AACD,gBAAI,oBAAoB,OAAO,OAAO,eAAe,EAAE,aAAa,EAAE,OAAO,YAAY,EAAE,CAAC;AAC5F,wBAAY,YAAY;AACxB,gBAAI,kBAAkB,IAAI,gBAAgBA,QAAM,aAAa,mBAAmB,eAAe,WAAW,eAAe,QAAQ,QAAQ;AACzI,gBAAI,gBAAgB,WAAW;AAC7B,kBAAI,gBAAgB,UAAU,qBAAqB,QAAQ;AACzD,gCAAgB,UAAU,mBAAmB,CAAC;AAAA,cAChD;AACA,8BAAgB,UAAU,iBAAiB,KAAK,eAAe;AAAA,YACjE;AACA,gBAAI,qBAAqB,IAAI,kBAAkBA,QAAM,iBAAiB,MAAM,OAAO,KAAK;AACxF,gBAAI,mBAAmB,IAAI,kBAAkBA,SAAO,KAAK,iBAAiB,OAAO,OAAO,KAAK;AAC7F,gBAAI,wBAAwB,IAAI,kBAAkBA,SAAO,WAAW,iBAAiB,OAAO,MAAM,KAAK;AACvG,+BAAmB,OAAO,IAAI,EAAE,aAAa,kBAAkB,kBAAkB,sBAAsB;AACvG,gCAAoB,mBAAmB,WAAW;AAClD,mBAAO,CAAC,oBAAoB,kBAAkB,qBAAqB;AAAA,UACrE,CAAC;AAAA,QACH;AACA,iBAAS,oBAAoB,OAAO,cAAc;AAChD,cAAI,QAAQ,CAAC;AACb,mBAASL,KAAI,GAAGA,KAAI,OAAOA,MAAK;AAC9B,kBAAM,KAAK,QAAQ,eAAeA,KAAI,MAAM,CAAC,CAAC;AAAA,UAChD;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,QAAQ,aAAa,cAAc;AAC1C,cAAI,EAAE,uBAAuB,WAAW;AACtC,kBAAM,IAAI,UAAU,qCAAqC,OAAO,WAAW,0BAA0B;AAAA,UACvG;AACA,cAAI,QAAQ,oBAAoB,YAAY,QAAQ,uBAAuB,WAAW;AAAA,UACtF,CAAC;AACD,gBAAM,YAAY,YAAY;AAC9B,cAAI,MAAM,IAAI,MAAM;AACpB,cAAIG,KAAI,YAAY,MAAM,KAAK,YAAY;AAC3C,iBAAOA,cAAa,SAASA,KAAI;AAAA,QACnC;AACA,iBAAS,qBAAqB,WAAW,UAAU,WAAW,gBAAgB,eAAe,SAAS;AACpG,cAAI,WAAW,SAAS;AACxB,cAAI,WAAW,GAAG;AAChB,8BAAkB,gFAAgF;AAAA,UACpG;AACA,cAAI,oBAAoB,SAAS,CAAC,MAAM,QAAQ,cAAc;AAC9D,cAAI,uBAAuB;AAC3B,mBAASH,KAAI,GAAGA,KAAI,SAAS,QAAQ,EAAEA,IAAG;AACxC,gBAAI,SAASA,EAAC,MAAM,QAAQ,SAASA,EAAC,EAAE,uBAAuB,QAAQ;AACrE,qCAAuB;AACvB;AAAA,YACF;AAAA,UACF;AACA,cAAI,UAAU,SAAS,CAAC,EAAE,SAAS;AACnC,cAAI,WAAW;AACf,cAAI,gBAAgB;AACpB,mBAASA,KAAI,GAAGA,KAAI,WAAW,GAAG,EAAEA,IAAG;AACrC,yBAAaA,OAAM,IAAI,OAAO,MAAM,QAAQA;AAC5C,8BAAkBA,OAAM,IAAI,OAAO,MAAM,QAAQA,KAAI;AAAA,UACvD;AACA,cAAI,gBAAgB;AAAA,0BACJ,sBAAsB,SAAS,CAAC,IAAI,QAAQ;AAAA,mCACnC,WAAW,CAAC;AAAA,wCACP,SAAS,gBAAgB,UAAU,MAAM,wBAAwB,WAAW,CAAC;AAAA;AAE3G,cAAI,sBAAsB;AACxB,6BAAiB;AAAA,UACnB;AACA,cAAI,YAAY,uBAAuB,gBAAgB;AACvD,cAAI,QAAQ,CAAC,qBAAqB,WAAW,MAAM,kBAAkB,WAAW,YAAY;AAC5F,cAAI,QAAQ,CAAC,mBAAmB,gBAAgB,eAAe,gBAAgB,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC;AACvG,cAAI,mBAAmB;AACrB,6BAAiB,2CAA2C,YAAY;AAAA,UAC1E;AACA,mBAASA,KAAI,GAAGA,KAAI,WAAW,GAAG,EAAEA,IAAG;AACrC,6BAAiB,YAAYA,KAAI,oBAAoBA,KAAI,iBAAiB,YAAY,UAAUA,KAAI,WAAW,SAASA,KAAI,CAAC,EAAE,OAAO;AACtI,kBAAM,KAAK,YAAYA,EAAC;AACxB,kBAAM,KAAK,SAASA,KAAI,CAAC,CAAC;AAAA,UAC5B;AACA,cAAI,mBAAmB;AACrB,4BAAgB,eAAe,cAAc,SAAS,IAAI,OAAO,MAAM;AAAA,UACzE;AACA,4BAAkB,WAAW,UAAU,cAAc,MAAM,gBAAgB,cAAc,SAAS,IAAI,OAAO,MAAM,gBAAgB;AACnI,cAAI,sBAAsB;AACxB,6BAAiB;AAAA,UACnB,OAAO;AACL,qBAASA,KAAI,oBAAoB,IAAI,GAAGA,KAAI,SAAS,QAAQ,EAAEA,IAAG;AAChE,kBAAI,YAAYA,OAAM,IAAI,cAAc,SAASA,KAAI,KAAK;AAC1D,kBAAI,SAASA,EAAC,EAAE,uBAAuB,MAAM;AAC3C,iCAAiB,YAAY,WAAW,YAAY,WAAW,SAASA,EAAC,EAAE,OAAO;AAClF,sBAAM,KAAK,YAAY,OAAO;AAC9B,sBAAM,KAAK,SAASA,EAAC,EAAE,kBAAkB;AAAA,cAC3C;AAAA,YACF;AAAA,UACF;AACA,cAAI,SAAS;AACX,6BAAiB;AAAA,UACnB,OAAO;AAAA,UACP;AACA,2BAAiB;AACjB,gBAAM,KAAK,aAAa;AACxB,iBAAO,QAAQ,UAAU,KAAK,EAAE,MAAM,MAAM,KAAK;AAAA,QACnD;AACA,iBAAS,oCAAoC,cAAc,UAAU,iBAAiB,kBAAkB,SAAS,gBAAgB;AAC/H,4BAAkB;AAClB,+BAAqB;AACrB,gCAAsB;AACtB,uBAAa;AACb,8BAAoB;AACpB,cAAI,cAAc,oBAAoB,UAAU,eAAe;AAC/D,oBAAU,wBAAwB,kBAAkB,OAAO;AAC3D,wCAA8B,CAAC,GAAG,CAAC,YAAY,GAAG,SAAS,WAAW;AACpE,wBAAY,UAAU,CAAC;AACvB,gBAAI,YAAY,eAAe,UAAU,IAAI;AAC7C,gBAAI,UAAU,gBAAgB,qBAAqB,QAAQ;AACzD,wBAAU,gBAAgB,mBAAmB,CAAC;AAAA,YAChD;AACA,gBAAI,UAAU,gBAAgB,iBAAiB,WAAW,CAAC,MAAM,QAAQ;AACvE,oBAAM,IAAI,aAAa,8EAA8E,WAAW,CAAC,gBAAgB,UAAU,IAAI,qGAAqG;AAAA,YACtP;AACA,sBAAU,gBAAgB,iBAAiB,WAAW,CAAC,IAAI,MAAM;AAC/D,oCAAsB,oBAAoB,UAAU,IAAI,yBAAyB,WAAW;AAAA,YAC9F;AACA,0CAA8B,CAAC,GAAG,aAAa,SAAS,UAAU;AAChE,uBAAS,OAAO,GAAG,GAAG,IAAI;AAC1B,wBAAU,gBAAgB,iBAAiB,WAAW,CAAC,IAAI,qBAAqB,WAAW,UAAU,MAAM,SAAS,cAAc;AAClI,qBAAO,CAAC;AAAA,YACV,CAAC;AACD,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,iCAAiC,cAAc,YAAY,UAAU,iBAAiB,kBAAkB,YAAY,SAAS,eAAe,SAAS;AAC5J,4BAAkB;AAClB,0BAAgB;AAChB,+BAAqB;AACrB,gCAAsB;AACtB,0BAAgB;AAChB,uBAAa;AACb,cAAI,cAAc,oBAAoB,UAAU,eAAe;AAC/D,uBAAa,iBAAiB,UAAU;AACxC,uBAAa,wBAAwB,kBAAkB,UAAU;AACjE,wCAA8B,CAAC,GAAG,CAAC,YAAY,GAAG,SAAS,WAAW;AACpE,wBAAY,UAAU,CAAC;AACvB,gBAAI,YAAY,GAAG,UAAU,IAAI,IAAI,UAAU;AAC/C,gBAAI,WAAW,WAAW,IAAI,GAAG;AAC/B,2BAAa,OAAO,WAAW,UAAU,CAAC,CAAC;AAAA,YAC7C;AACA,gBAAI,eAAe;AACjB,wBAAU,gBAAgB,qBAAqB,KAAK,UAAU;AAAA,YAChE;AACA,qBAAS,sBAAsB;AAC7B,oCAAsB,eAAe,SAAS,yBAAyB,WAAW;AAAA,YACpF;AACA,gBAAI,QAAQ,UAAU,gBAAgB;AACtC,gBAAI,SAAS,MAAM,UAAU;AAC7B,gBAAI,WAAW,UAAU,OAAO,kBAAkB,UAAU,OAAO,cAAc,UAAU,QAAQ,OAAO,aAAa,WAAW,GAAG;AACnI,kCAAoB,WAAW,WAAW;AAC1C,kCAAoB,YAAY,UAAU;AAC1C,oBAAM,UAAU,IAAI;AAAA,YACtB,OAAO;AACL,kCAAoB,OAAO,YAAY,SAAS;AAChD,oBAAM,UAAU,EAAE,cAAc,WAAW,CAAC,IAAI;AAAA,YAClD;AACA,0CAA8B,CAAC,GAAG,aAAa,SAAS,UAAU;AAChE,kBAAI,iBAAiB,qBAAqB,WAAW,UAAU,WAAW,YAAY,SAAS,OAAO;AACtG,kBAAI,MAAM,UAAU,EAAE,kBAAkB,QAAQ;AAC9C,+BAAe,WAAW,WAAW;AACrC,sBAAM,UAAU,IAAI;AAAA,cACtB,OAAO;AACL,sBAAM,UAAU,EAAE,cAAc,WAAW,CAAC,IAAI;AAAA,cAClD;AACA,qBAAO,CAAC;AAAA,YACV,CAAC;AACD,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,sBAAsB;AAC7B,iBAAO,OAAO,gBAAgB,WAAW,EAAE,IAAI,IAAI;AACjD,mBAAO,KAAK,UAAU,EAAE;AAAA,UAC1B,GAAG,IAAI,IAAI;AACT,mBAAO,KAAK,UAAU,EAAE,MAAM;AAAA,UAChC,GAAG,SAAS,QAAQ;AAClB,gBAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU;AAC/C,iBAAK,UAAU,EAAE,IAAI;AACrB,mBAAO;AAAA,UACT,GAAG,KAAK,IAAI;AACV,iBAAK,UAAU,EAAE,IAAI;AACrB,iBAAK,SAAS,KAAK,EAAE;AAAA,UACvB,EAAE,CAAC;AAAA,QACL;AACA,iBAAS,kBAAkB;AACzB,eAAK,YAAY,CAAC,MAAM;AACxB,eAAK,WAAW,CAAC;AAAA,QACnB;AACA,YAAI,gBAAgB,IAAI,gBAAgB;AACxC,iBAAS,eAAe,QAAQ;AAC9B,sBAAY;AACZ,cAAI,UAAU,cAAc,YAAY,EAAE,cAAc,IAAI,MAAM,EAAE,aAAa,GAAG;AAClF,0BAAc,KAAK,MAAM;AAAA,UAC3B;AAAA,QACF;AACA,iBAAS,sBAAsB;AAC7B,cAAI,QAAQ;AACZ,mBAASA,KAAI,cAAc,UAAUA,KAAI,cAAc,UAAU,QAAQ,EAAEA,IAAG;AAC5E,gBAAI,cAAc,UAAUA,EAAC,MAAM,QAAQ;AACzC,gBAAE;AAAA,YACJ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,aAAa;AACpB,wBAAc,UAAU,KAAK,EAAE,OAAO,OAAO,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,MAAM,CAAC;AAClG,wBAAc,WAAW,cAAc,UAAU;AACjD,UAAAR,QAAO,qBAAqB,IAAI;AAAA,QAClC;AACA,YAAI,QAAQ,EAAE,SAAS,CAAC,WAAW;AACjC,cAAI,CAAC,QAAQ;AACX,8BAAkB,sCAAsC,MAAM;AAAA,UAChE;AACA,iBAAO,cAAc,IAAI,MAAM,EAAE;AAAA,QACnC,GAAG,UAAU,CAAC,UAAU;AACtB,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,SAAS;AACP,qBAAO,cAAc,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC;AAAA,YACtD;AAAA,UACF;AAAA,QACF,EAAE;AACF,iBAAS,wBAAwB,SAASa,QAAM;AAC9C,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,QAAQ;AAC7D,gBAAI,KAAK,MAAM,QAAQ,MAAM;AAC7B,2BAAe,MAAM;AACrB,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,mBAAO,MAAM,SAAS,KAAK;AAAA,UAC7B,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,KAAK,CAAC;AAAA,QACxG;AACA,iBAAS,WAAW,GAAG;AACrB,cAAI,MAAM,MAAM;AACd,mBAAO;AAAA,UACT;AACA,cAAII,KAAI,OAAO;AACf,cAAIA,OAAM,YAAYA,OAAM,WAAWA,OAAM,YAAY;AACvD,mBAAO,EAAE,SAAS;AAAA,UACpB,OAAO;AACL,mBAAO,KAAK;AAAA,UACd;AAAA,QACF;AACA,iBAAS,0BAA0BJ,QAAM,OAAO;AAC9C,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO,SAAS,SAAS;AACvB,uBAAO,KAAK,cAAc,EAAE,QAAQ,YAAY,CAAC,CAAC;AAAA,cACpD;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS;AACvB,uBAAO,KAAK,cAAc,EAAE,QAAQ,YAAY,CAAC,CAAC;AAAA,cACpD;AAAA,YACF;AACE,oBAAM,IAAI,UAAU,yBAAyBA,MAAI;AAAA,UACrD;AAAA,QACF;AACA,iBAAS,wBAAwB,SAASA,QAAM,MAAM;AACpD,uBAAa;AACb,UAAAA,YAAU;AACV,oBAAU;AACV,cAAI,QAAQ,iBAAiB,IAAI;AACjC,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,0BAA0BA,QAAM,KAAK,GAAG,oBAAoB,KAAK,CAAC;AAAA,QACpH;AACA,iBAAS,2BAA2BA,QAAM,UAAU,iBAAiB,WAAW,YAAY,IAAI,SAAS;AACvG,UAAAA,YAAU;AACV,+BAAqB;AACrB,yBAAe;AACf,0BAAgB;AAChB,kBAAQ;AACR,cAAI,WAAW,oBAAoB,UAAU,eAAe;AAC5D,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,wBAAwB,WAAW,UAAU;AAC1D,6BAAmBA,QAAM,WAAW;AAClC,kCAAsB,eAAeA,MAAI,yBAAyB,QAAQ;AAAA,UAC5E,GAAG,WAAW,CAAC;AACf,wCAA8B,CAAC,GAAG,UAAU,SAAS,WAAW;AAC9D,gBAAI,mBAAmB,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,OAAO,UAAU,MAAM,CAAC,CAAC;AACrE,gCAAoBA,QAAM,qBAAqBA,QAAM,kBAAkB,MAAM,YAAY,IAAI,OAAO,GAAG,WAAW,CAAC;AACnH,mBAAO,CAAC;AAAA,UACV,CAAC;AAAA,QACH;AACA,iBAAS,4BAA4BA,QAAM,OAAO,QAAQ;AACxD,kBAAQ,OAAO;AAAA,YACb,KAAK;AACH,qBAAO,SAAS,SAAS,kBAAkB,SAAS;AAClD,uBAAO,MAAM,YAAY,CAAC;AAAA,cAC5B,IAAI,SAAS,kBAAkB,SAAS;AACtC,uBAAO,OAAO,YAAY,CAAC;AAAA,cAC7B;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS,mBAAmB,SAAS;AACnD,uBAAO,OAAO,YAAY,CAAC;AAAA,cAC7B,IAAI,SAAS,mBAAmB,SAAS;AACvC,uBAAO,QAAQ,YAAY,CAAC;AAAA,cAC9B;AAAA,YACF,KAAK;AACH,qBAAO,SAAS,SAAS,mBAAmB,SAAS;AACnD,uBAAO,OAAO,YAAY,CAAC;AAAA,cAC7B,IAAI,SAAS,mBAAmB,SAAS;AACvC,uBAAO,QAAQ,YAAY,CAAC;AAAA,cAC9B;AAAA,YACF;AACE,oBAAM,IAAI,UAAU,2BAA2BA,MAAI;AAAA,UACvD;AAAA,QACF;AACA,iBAAS,0BAA0B,eAAeA,QAAM,MAAM,UAAU,UAAU;AAChF,6BAAmB;AACnB,UAAAA,YAAU;AACV,oBAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,aAAa,IAAI;AACnB,uBAAW;AAAA,UACb;AACA,cAAI,QAAQ,iBAAiB,IAAI;AACjC,cAAI,eAAe,CAAC,UAAU;AAC9B,cAAI,aAAa,GAAG;AAClB,gBAAI,WAAW,KAAK,IAAI;AACxB,2BAAe,CAAC,UAAU,SAAS,aAAa;AAAA,UAClD;AACA,cAAI,iBAAiBA,OAAK,SAAS,UAAU;AAC7C,cAAI,kBAAkB,CAAC,OAAO,eAAe;AAAA,UAC7C;AACA,cAAI;AACJ,cAAI,gBAAgB;AAClB,yBAAa,SAAS,aAAa,OAAO;AACxC,8BAAgB,OAAO,KAAK,IAAI;AAChC,qBAAO,UAAU;AAAA,YACnB;AAAA,UACF,OAAO;AACL,yBAAa,SAAS,aAAa,OAAO;AACxC,8BAAgB,OAAO,KAAK,IAAI;AAChC,qBAAO;AAAA,YACT;AAAA,UACF;AACA,uBAAa,eAAe,EAAE,MAAAA,QAAM,gBAAgB,cAAc,cAAc,YAAY,kBAAkB,GAAG,wBAAwB,4BAA4BA,QAAM,OAAO,aAAa,CAAC,GAAG,oBAAoB,KAAK,CAAC;AAAA,QAC/N;AACA,iBAAS,8BAA8B,SAAS,eAAeA,QAAM;AACnE,uBAAa;AACb,UAAAA,YAAU;AACV,cAAI,cAAc,CAAC,WAAW,YAAY,YAAY,aAAa,YAAY,aAAa,cAAc,YAAY;AACtH,cAAI,KAAK,YAAY,aAAa;AAClC,mBAAS,iBAAiB,QAAQ;AAChC,qBAAS,UAAU;AACnB,gBAAI,OAAO;AACX,gBAAI,OAAO,KAAK,WAAW,CAAC;AAC5B,gBAAI,OAAO,KAAK,SAAS,MAAM,CAAC;AAChC,mBAAO,IAAI,GAAG,KAAK,QAAQ,MAAM,IAAI;AAAA,UACvC;AACA,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,kBAAkB,kBAAkB,GAAG,wBAAwB,iBAAiB,GAAG,EAAE,8BAA8B,KAAK,CAAC;AAAA,QACzK;AACA,YAAI,oBAAoB,CAAC,KAAK,MAAM,QAAQ,oBAAoB;AAC9D,sBAAY;AACZ,cAAI,EAAE,kBAAkB;AACtB,mBAAO;AACT,cAAI,WAAW;AACf,cAAI,SAAS,SAAS,kBAAkB;AACxC,mBAASL,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,IAAI,IAAI,WAAWA,EAAC;AACxB,gBAAI,KAAK,SAAS,KAAK,OAAO;AAC5B,kBAAI,KAAK,IAAI,WAAW,EAAEA,EAAC;AAC3B,kBAAI,UAAU,IAAI,SAAS,MAAM,KAAK;AAAA,YACxC;AACA,gBAAI,KAAK,KAAK;AACZ,kBAAI,UAAU;AACZ;AACF,mBAAK,aAAa,CAAC,IAAI;AAAA,YACzB,WAAW,KAAK,MAAM;AACpB,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC,WAAW,KAAK,OAAO;AACrB,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,IAAI;AACtC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC,OAAO;AACL,kBAAI,SAAS,KAAK;AAChB;AACF,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK;AAClC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,KAAK;AACvC,mBAAK,aAAa,CAAC,IAAI,MAAM,KAAK,IAAI;AACtC,mBAAK,aAAa,CAAC,IAAI,MAAM,IAAI;AAAA,YACnC;AAAA,UACF;AACA,eAAK,WAAW,CAAC,IAAI;AACrB,iBAAO,SAAS;AAAA,QAClB;AACA,YAAI,eAAe,CAAC,KAAK,QAAQ,oBAAoB,kBAAkB,KAAK,QAAQ,QAAQ,eAAe;AAC3G,YAAI,kBAAkB,CAAC,QAAQ;AAC7B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAII,KAAI,IAAI,WAAWJ,EAAC;AACxB,gBAAII,MAAK,KAAK;AACZ;AAAA,YACF,WAAWA,MAAK,MAAM;AACpB,qBAAO;AAAA,YACT,WAAWA,MAAK,SAASA,MAAK,OAAO;AACnC,qBAAO;AACP,gBAAEJ;AAAA,YACJ,OAAO;AACL,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,cAAc,OAAO,eAAe,cAAc,IAAI,YAAY,MAAM,IAAI;AAChF,YAAI,oBAAoB,CAAC,aAAa,KAAK,mBAAmB;AAC5D,mBAAS;AACT,cAAI,SAAS,MAAM;AACnB,cAAI,SAAS;AACb,iBAAO,YAAY,MAAM,KAAK,EAAE,UAAU;AACxC,cAAE;AACJ,cAAI,SAAS,MAAM,MAAM,YAAY,UAAU,aAAa;AAC1D,mBAAO,YAAY,OAAO,YAAY,SAAS,KAAK,MAAM,CAAC;AAAA,UAC7D;AACA,cAAI,MAAM;AACV,iBAAO,MAAM,QAAQ;AACnB,gBAAI,KAAK,YAAY,KAAK;AAC1B,gBAAI,EAAE,KAAK,MAAM;AACf,qBAAO,OAAO,aAAa,EAAE;AAC7B;AAAA,YACF;AACA,gBAAI,KAAK,YAAY,KAAK,IAAI;AAC9B,iBAAK,KAAK,QAAQ,KAAK;AACrB,qBAAO,OAAO,cAAc,KAAK,OAAO,IAAI,EAAE;AAC9C;AAAA,YACF;AACA,gBAAI,KAAK,YAAY,KAAK,IAAI;AAC9B,iBAAK,KAAK,QAAQ,KAAK;AACrB,oBAAM,KAAK,OAAO,KAAK,MAAM,IAAI;AAAA,YACnC,OAAO;AACL,oBAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,IAAI,YAAY,KAAK,IAAI;AAAA,YAClE;AACA,gBAAI,KAAK,OAAO;AACd,qBAAO,OAAO,aAAa,EAAE;AAAA,YAC/B,OAAO;AACL,kBAAI,KAAK,KAAK;AACd,qBAAO,OAAO,aAAa,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI;AAAA,YAChE;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,eAAe,CAAC,KAAK,mBAAmB;AAC1C,mBAAS;AACT,iBAAO,MAAM,kBAAkB,QAAQ,KAAK,cAAc,IAAI;AAAA,QAChE;AACA,iBAAS,6BAA6B,SAASK,QAAM;AACnD,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,kBAAkBA,WAAS;AAC/B,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,gBAAI,SAAS,QAAQ,UAAU,CAAC;AAChC,gBAAI,UAAU,QAAQ;AACtB,gBAAI;AACJ,gBAAI,iBAAiB;AACnB,kBAAI,iBAAiB;AACrB,uBAASL,KAAI,GAAGA,MAAK,QAAQ,EAAEA,IAAG;AAChC,oBAAI,iBAAiB,UAAUA;AAC/B,oBAAIA,MAAK,UAAU,OAAO,mBAAmB,CAAC,KAAK,GAAG;AACpD,sBAAI,UAAU,iBAAiB;AAC/B,sBAAI,gBAAgB,aAAa,gBAAgB,OAAO;AACxD,sBAAI,QAAQ,QAAQ;AAClB,0BAAM;AAAA,kBACR,OAAO;AACL,2BAAO,OAAO,aAAa,CAAC;AAC5B,2BAAO;AAAA,kBACT;AACA,mCAAiB,iBAAiB;AAAA,gBACpC;AAAA,cACF;AAAA,YACF,OAAO;AACL,kBAAIU,KAAI,IAAI,MAAM,MAAM;AACxB,uBAASV,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,gBAAAU,GAAEV,EAAC,IAAI,OAAO,aAAa,OAAO,UAAUA,OAAM,CAAC,CAAC;AAAA,cACtD;AACA,oBAAMU,GAAE,KAAK,EAAE;AAAA,YACjB;AACA,kBAAM,KAAK;AACX,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,gBAAI,iBAAiB,aAAa;AAChC,sBAAQ,IAAI,WAAW,KAAK;AAAA,YAC9B;AACA,gBAAI;AACJ,gBAAI,sBAAsB,OAAO,SAAS;AAC1C,gBAAI,EAAE,uBAAuB,iBAAiB,cAAc,iBAAiB,qBAAqB,iBAAiB,YAAY;AAC7H,gCAAkB,uCAAuC;AAAA,YAC3D;AACA,gBAAI,mBAAmB,qBAAqB;AAC1C,uBAAS,gBAAgB,KAAK;AAAA,YAChC,OAAO;AACL,uBAAS,MAAM;AAAA,YACjB;AACA,gBAAI,OAAO,QAAQ,IAAI,SAAS,CAAC;AACjC,gBAAI,MAAM,OAAO;AACjB,oBAAQ,SAAS,CAAC,IAAI;AACtB,gBAAI,mBAAmB,qBAAqB;AAC1C,2BAAa,OAAO,KAAK,SAAS,CAAC;AAAA,YACrC,OAAO;AACL,kBAAI,qBAAqB;AACvB,yBAASV,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,sBAAI,WAAW,MAAM,WAAWA,EAAC;AACjC,sBAAI,WAAW,KAAK;AAClB,0BAAM,GAAG;AACT,sCAAkB,wDAAwD;AAAA,kBAC5E;AACA,yBAAO,MAAMA,OAAM,CAAC,IAAI;AAAA,gBAC1B;AAAA,cACF,OAAO;AACL,yBAASA,KAAI,GAAGA,KAAI,QAAQ,EAAEA,IAAG;AAC/B,yBAAO,MAAMA,OAAM,CAAC,IAAI,MAAMA,EAAC;AAAA,gBACjC;AAAA,cACF;AAAA,YACF;AACA,gBAAI,gBAAgB,MAAM;AACxB,0BAAY,KAAK,OAAO,IAAI;AAAA,YAC9B;AACA,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,SAAS,KAAK;AAC5G,kBAAM,GAAG;AAAA,UACX,EAAE,CAAC;AAAA,QACL;AACA,YAAI,eAAe,OAAO,eAAe,cAAc,IAAI,YAAY,UAAU,IAAI;AACrF,YAAI,gBAAgB,CAAC,KAAK,mBAAmB;AAC3C,cAAI,SAAS;AACb,cAAI,MAAM,UAAU;AACpB,cAAI,SAAS,MAAM,iBAAiB;AACpC,iBAAO,EAAE,OAAO,WAAW,QAAQ,QAAQ,CAAC;AAC1C,cAAE;AACJ,mBAAS,OAAO;AAChB,cAAI,SAAS,MAAM,MAAM;AACvB,mBAAO,aAAa,OAAO,OAAO,SAAS,QAAQ,GAAG,WAAW,CAAC,CAAC;AACrE,cAAI,MAAM;AACV,mBAASA,KAAI,GAAG,EAAEA,MAAK,iBAAiB,IAAI,EAAEA,IAAG;AAC/C,gBAAI,WAAW,OAAO,MAAMA,KAAI,MAAM,CAAC;AACvC,gBAAI,YAAY;AACd;AACF,mBAAO,OAAO,aAAa,QAAQ;AAAA,UACrC;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC,KAAK,QAAQ,oBAAoB;AACpD,cAAI,oBAAoB,QAAQ;AAC9B,8BAAkB;AAAA,UACpB;AACA,cAAI,kBAAkB;AACpB,mBAAO;AACT,6BAAmB;AACnB,cAAI,WAAW;AACf,cAAI,kBAAkB,kBAAkB,IAAI,SAAS,IAAI,kBAAkB,IAAI,IAAI;AACnF,mBAASA,KAAI,GAAGA,KAAI,iBAAiB,EAAEA,IAAG;AACxC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,mBAAO,WAAW,CAAC,IAAI;AACvB,sBAAU;AAAA,UACZ;AACA,iBAAO,WAAW,CAAC,IAAI;AACvB,iBAAO,SAAS;AAAA,QAClB;AACA,YAAI,mBAAmB,CAAC,QAAQ,IAAI,SAAS;AAC7C,YAAI,gBAAgB,CAAC,KAAK,mBAAmB;AAC3C,cAAIA,KAAI;AACR,cAAI,MAAM;AACV,iBAAO,EAAEA,MAAK,iBAAiB,IAAI;AACjC,gBAAI,QAAQ,OAAO,MAAMA,KAAI,MAAM,CAAC;AACpC,gBAAI,SAAS;AACX;AACF,cAAEA;AACF,gBAAI,SAAS,OAAO;AAClB,kBAAI,KAAK,QAAQ;AACjB,qBAAO,OAAO,aAAa,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI;AAAA,YAChE,OAAO;AACL,qBAAO,OAAO,aAAa,KAAK;AAAA,YAClC;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gBAAgB,CAAC,KAAK,QAAQ,oBAAoB;AACpD,sBAAY;AACZ,cAAI,oBAAoB,QAAQ;AAC9B,8BAAkB;AAAA,UACpB;AACA,cAAI,kBAAkB;AACpB,mBAAO;AACT,cAAI,WAAW;AACf,cAAI,SAAS,WAAW,kBAAkB;AAC1C,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,gBAAI,YAAY,SAAS,YAAY,OAAO;AAC1C,kBAAI,iBAAiB,IAAI,WAAW,EAAEA,EAAC;AACvC,yBAAW,UAAU,WAAW,SAAS,MAAM,iBAAiB;AAAA,YAClE;AACA,mBAAO,WAAW,CAAC,IAAI;AACvB,sBAAU;AACV,gBAAI,SAAS,IAAI;AACf;AAAA,UACJ;AACA,iBAAO,WAAW,CAAC,IAAI;AACvB,iBAAO,SAAS;AAAA,QAClB;AACA,YAAI,mBAAmB,CAAC,QAAQ;AAC9B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,gBAAI,WAAW,IAAI,WAAWA,EAAC;AAC/B,gBAAI,YAAY,SAAS,YAAY;AACnC,gBAAEA;AACJ,mBAAO;AAAA,UACT;AACA,iBAAO;AAAA,QACT;AACA,YAAI,gCAAgC,SAAS,SAAS,UAAUK,QAAM;AACpE,uBAAa;AACb,wBAAc;AACd,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,cAAI,cAAc,cAAc,SAAS,gBAAgB;AACzD,cAAI,aAAa,GAAG;AAClB,2BAAe;AACf,2BAAe;AACf,6BAAiB;AACjB,sBAAU,MAAM;AAChB,oBAAQ;AAAA,UACV,WAAW,aAAa,GAAG;AACzB,2BAAe;AACf,2BAAe;AACf,6BAAiB;AACjB,sBAAU,MAAM;AAChB,oBAAQ;AAAA,UACV;AACA,uBAAa,SAAS,EAAE,MAAAA,QAAM,gBAAgB,SAAS,OAAO;AAC5D,gBAAI,SAAS,QAAQ,UAAU,CAAC;AAChC,gBAAI,OAAO,QAAQ;AACnB,gBAAI;AACJ,gBAAI,iBAAiB,QAAQ;AAC7B,qBAASL,KAAI,GAAGA,MAAK,QAAQ,EAAEA,IAAG;AAChC,kBAAI,iBAAiB,QAAQ,IAAIA,KAAI;AACrC,kBAAIA,MAAK,UAAU,KAAK,mBAAmB,KAAK,KAAK,GAAG;AACtD,oBAAI,eAAe,iBAAiB;AACpC,oBAAI,gBAAgB,aAAa,gBAAgB,YAAY;AAC7D,oBAAI,QAAQ,QAAQ;AAClB,wBAAM;AAAA,gBACR,OAAO;AACL,yBAAO,OAAO,aAAa,CAAC;AAC5B,yBAAO;AAAA,gBACT;AACA,iCAAiB,iBAAiB;AAAA,cACpC;AAAA,YACF;AACA,kBAAM,KAAK;AACX,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAa,OAAO;AAC5C,gBAAI,EAAE,OAAO,SAAS,WAAW;AAC/B,gCAAkB,6CAA6CK,MAAI,EAAE;AAAA,YACvE;AACA,gBAAI,SAAS,eAAe,KAAK;AACjC,gBAAI,MAAM,QAAQ,IAAI,SAAS,QAAQ;AACvC,oBAAQ,QAAQ,CAAC,IAAI,UAAU;AAC/B,yBAAa,OAAO,MAAM,GAAG,SAAS,QAAQ;AAC9C,gBAAI,gBAAgB,MAAM;AACxB,0BAAY,KAAK,OAAO,GAAG;AAAA,YAC7B;AACA,mBAAO;AAAA,UACT,GAAG,kBAAkB,GAAG,wBAAwB,4BAA4B,oBAAoB,SAAS,KAAK;AAC5G,kBAAM,GAAG;AAAA,UACX,EAAE,CAAC;AAAA,QACL;AACA,iBAAS,8BAA8B,SAASA,QAAM,sBAAsB,gBAAgB,qBAAqB,eAAe;AAC9H,uBAAa;AACb,UAAAA,YAAU;AACV,oCAA0B;AAC1B,8BAAoB;AACpB,mCAAyB;AACzB,6BAAmB;AACnB,6BAAmB,OAAO,IAAI,EAAE,MAAM,iBAAiBA,MAAI,GAAG,gBAAgB,wBAAwB,sBAAsB,cAAc,GAAG,eAAe,wBAAwB,qBAAqB,aAAa,GAAG,UAAU,CAAC,EAAE;AAAA,QACxO;AACA,iBAAS,sCAAsC,cAAc,kBAAkB,iBAAiB,QAAQ,eAAe,oBAAoB,iBAAiB,QAAQ,eAAe;AACjL,4BAAkB;AAClB,gCAAsB;AACtB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,kCAAwB;AACxB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,6BAAmB,YAAY,EAAE,SAAS,KAAK,EAAE,kBAAkB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,eAAe,oBAAoB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,cAAc,CAAC;AAAA,QAC3O;AACA,iBAAS,+BAA+B,SAASA,QAAM,sBAAsB,gBAAgB,qBAAqB,eAAe;AAC/H,uBAAa;AACb,UAAAA,YAAU;AACV,oCAA0B;AAC1B,8BAAoB;AACpB,mCAAyB;AACzB,6BAAmB;AACnB,8BAAoB,OAAO,IAAI,EAAE,MAAM,iBAAiBA,MAAI,GAAG,gBAAgB,wBAAwB,sBAAsB,cAAc,GAAG,eAAe,wBAAwB,qBAAqB,aAAa,GAAG,QAAQ,CAAC,EAAE;AAAA,QACvO;AACA,iBAAS,qCAAqC,YAAY,WAAW,kBAAkB,iBAAiB,QAAQ,eAAe,oBAAoB,iBAAiB,QAAQ,eAAe;AACzL,0BAAgB;AAChB,yBAAe;AACf,gCAAsB;AACtB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,kCAAwB;AACxB,+BAAqB;AACrB,sBAAY;AACZ,6BAAmB;AACnB,8BAAoB,UAAU,EAAE,OAAO,KAAK,EAAE,WAAW,iBAAiB,SAAS,GAAG,kBAAkB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,eAAe,oBAAoB,QAAQ,wBAAwB,iBAAiB,MAAM,GAAG,cAAc,CAAC;AAAA,QAChR;AACA,iBAAS,uBAAuB,SAASA,QAAM;AAC7C,uBAAa;AACb,UAAAA,YAAU;AACV,UAAAA,SAAO,iBAAiBA,MAAI;AAC5B,uBAAa,SAAS,EAAE,QAAQ,MAAM,MAAAA,QAAM,kBAAkB,GAAG,gBAAgB,WAAW;AAC1F,mBAAO;AAAA,UACT,GAAG,cAAc,SAAS,aAAaE,IAAG;AACxC,mBAAO;AAAA,UACT,EAAE,CAAC;AAAA,QACL;AACA,YAAI,iBAAiB;AACrB,YAAI,oCAAoC,MAAM;AAC9C,iBAAS,sBAAsB,SAAS,WAAW;AACjD,cAAI,OAAO,gBAAgB,OAAO;AAClC,cAAI,SAAS,QAAQ;AACnB,8BAAkB,YAAY,uBAAuB,YAAY,OAAO,CAAC;AAAA,UAC3E;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,QAAQ,YAAY,gBAAgB;AACtD,sBAAY;AACZ,0BAAgB;AAChB,8BAAoB;AACpB,mBAAS,MAAM,QAAQ,MAAM;AAC7B,uBAAa,sBAAsB,YAAY,WAAW;AAC1D,cAAI,cAAc,CAAC;AACnB,cAAI,KAAK,MAAM,SAAS,WAAW;AACnC,kBAAQ,mBAAmB,CAAC,IAAI;AAChC,iBAAO,WAAW,YAAY,EAAE,aAAa,MAAM;AAAA,QACrD;AACA,iBAAS,kBAAkB,UAAU,UAAU;AAC7C,cAAIG,KAAI,IAAI,MAAM,QAAQ;AAC1B,mBAASV,KAAI,GAAGA,KAAI,UAAU,EAAEA,IAAG;AACjC,YAAAU,GAAEV,EAAC,IAAI,sBAAsB,QAAQ,WAAWA,KAAI,MAAM,CAAC,GAAG,eAAeA,EAAC;AAAA,UAChF;AACA,iBAAOU;AAAA,QACT;AACA,iBAAS,aAAa,QAAQ,UAAU,UAAU,MAAM;AACtD,sBAAY;AACZ,wBAAc;AACd,oBAAU;AACV,mBAAS,MAAM,QAAQ,MAAM;AAC7B,cAAI,QAAQ,kBAAkB,UAAU,QAAQ;AAChD,cAAI,OAAO,IAAI,MAAM,QAAQ;AAC7B,mBAASV,KAAI,GAAGA,KAAI,UAAU,EAAEA,IAAG;AACjC,gBAAI,OAAO,MAAMA,EAAC;AAClB,iBAAKA,EAAC,IAAI,KAAK,sBAAsB,EAAE,IAAI;AAC3C,oBAAQ,KAAK,gBAAgB;AAAA,UAC/B;AACA,cAAI,KAAK,OAAO,MAAM,QAAQ,IAAI;AAClC,iBAAO,MAAM,SAAS,EAAE;AAAA,QAC1B;AACA,YAAI,gBAAgB,CAAC;AACrB,iBAAS,kBAAkB,SAAS;AAClC,cAAI,SAAS,cAAc,OAAO;AAClC,cAAI,WAAW,QAAQ;AACrB,mBAAO,iBAAiB,OAAO;AAAA,UACjC;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB;AAC1B,cAAI,OAAO,cAAc,UAAU;AACjC,mBAAO;AAAA,UACT;AACA,kBAAO,2BAAW;AAChB,mBAAO;AAAA,UACT,EAAE,GAAE,aAAa,EAAE;AAAA,QACrB;AACA,iBAAS,mBAAmBK,QAAM;AAChC,UAAAA,YAAU;AACV,cAAIA,WAAS,GAAG;AACd,mBAAO,MAAM,SAAS,iBAAiB,CAAC;AAAA,UAC1C,OAAO;AACL,YAAAA,SAAO,kBAAkBA,MAAI;AAC7B,mBAAO,MAAM,SAAS,iBAAiB,EAAEA,MAAI,CAAC;AAAA,UAChD;AAAA,QACF;AACA,iBAAS,qBAAqB,QAAQ,KAAK;AACzC,sBAAY;AACZ,mBAAS;AACT,mBAAS,MAAM,QAAQ,MAAM;AAC7B,gBAAM,MAAM,QAAQ,GAAG;AACvB,iBAAO,MAAM,SAAS,OAAO,GAAG,CAAC;AAAA,QACnC;AACA,iBAAS,eAAe,QAAQ;AAC9B,sBAAY;AACZ,cAAI,SAAS,GAAG;AACd,0BAAc,IAAI,MAAM,EAAE,YAAY;AAAA,UACxC;AAAA,QACF;AACA,iBAAS,mBAAmB,QAAQ,aAAa;AAC/C,sBAAY;AACZ,2BAAiB;AACjB,mBAAS,MAAM,QAAQ,MAAM;AAC7B,wBAAc,MAAM,QAAQ,WAAW;AACvC,iBAAO,kBAAkB;AAAA,QAC3B;AACA,iBAAS,kBAAkB,QAAQ;AACjC,sBAAY;AACZ,mBAAS,MAAM,QAAQ,MAAM;AAC7B,iBAAO,OAAO,UAAU;AAAA,QAC1B;AACA,iBAAS,kBAAkB,QAAQ;AACjC,sBAAY;AACZ,mBAAS,MAAM,QAAQ,MAAM;AAC7B,iBAAO,OAAO,UAAU;AAAA,QAC1B;AACA,iBAAS,oBAAoB;AAC3B,iBAAO,MAAM,SAAS,CAAC,CAAC;AAAA,QAC1B;AACA,iBAAS,oBAAoB,GAAG;AAC9B,iBAAO;AACP,iBAAO,MAAM,SAAS,kBAAkB,CAAC,CAAC;AAAA,QAC5C;AACA,iBAAS,qBAAqB;AAC5B,iBAAO,MAAM,SAAS,CAAC,CAAC;AAAA,QAC1B;AACA,iBAAS,wBAAwB,QAAQ;AACvC,sBAAY;AACZ,cAAI,cAAc,MAAM,QAAQ,MAAM;AACtC,yBAAe,WAAW;AAC1B,yBAAe,MAAM;AAAA,QACvB;AACA,iBAAS,qBAAqB,QAAQ,KAAK,OAAO;AAChD,sBAAY;AACZ,mBAAS;AACT,qBAAW;AACX,mBAAS,MAAM,QAAQ,MAAM;AAC7B,gBAAM,MAAM,QAAQ,GAAG;AACvB,kBAAQ,MAAM,QAAQ,KAAK;AAC3B,iBAAO,GAAG,IAAI;AAAA,QAChB;AACA,iBAAS,mBAAmB,MAAM,KAAK;AACrC,oBAAU;AACV,mBAAS;AACT,iBAAO,sBAAsB,MAAM,mBAAmB;AACtD,cAAI,IAAI,KAAK,sBAAsB,EAAE,GAAG;AACxC,iBAAO,MAAM,SAAS,CAAC;AAAA,QACzB;AACA,iBAAS,YAAY,UAAU,WAAW,OAAO;AAC/C,cAAI,OAAO,2BAA2B,UAAU,SAAS;AACzD,qBAAW;AACX,cAAI,OAAO,IAAI,KAAK,OAAO,GAAG;AAC9B,iBAAO,UAAU,CAAC,IAAI,KAAK,cAAc;AACzC,iBAAO,QAAQ,MAAM,CAAC,IAAI,KAAK,cAAc;AAC7C,iBAAO,QAAQ,MAAM,CAAC,IAAI,KAAK,YAAY;AAC3C,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,WAAW;AAC3C,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,YAAY;AAC5C,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,eAAe,IAAI;AACnD,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,UAAU;AAC1C,cAAI,QAAQ,KAAK,IAAI,KAAK,eAAe,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAC5D,cAAI,QAAQ,KAAK,QAAQ,IAAI,UAAU,MAAM,KAAK,KAAK,MAAM;AAC7D,iBAAO,QAAQ,OAAO,CAAC,IAAI;AAAA,QAC7B;AACA,YAAI,aAAa,CAAC,SAAS,OAAO,MAAM,MAAM,OAAO,QAAQ,KAAK,OAAO,QAAQ;AACjF,YAAI,6BAA6B,CAAC,GAAG,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACvF,YAAI,gCAAgC,CAAC,GAAG,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AAC1F,YAAI,eAAe,CAAC,SAAS;AAC3B,cAAI,OAAO,WAAW,KAAK,YAAY,CAAC;AACxC,cAAI,sBAAsB,OAAO,6BAA6B;AAC9D,cAAI,OAAO,oBAAoB,KAAK,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI;AACnE,iBAAO;AAAA,QACT;AACA,iBAAS,eAAe,UAAU,WAAW,OAAO;AAClD,cAAI,OAAO,2BAA2B,UAAU,SAAS;AACzD,qBAAW;AACX,cAAI,OAAO,IAAI,KAAK,OAAO,GAAG;AAC9B,iBAAO,UAAU,CAAC,IAAI,KAAK,WAAW;AACtC,iBAAO,QAAQ,MAAM,CAAC,IAAI,KAAK,WAAW;AAC1C,iBAAO,QAAQ,MAAM,CAAC,IAAI,KAAK,SAAS;AACxC,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,QAAQ;AACxC,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,SAAS;AACzC,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI;AAChD,iBAAO,QAAQ,OAAO,CAAC,IAAI,KAAK,OAAO;AACvC,cAAI,OAAO,aAAa,IAAI,IAAI;AAChC,iBAAO,QAAQ,OAAO,CAAC,IAAI;AAC3B,iBAAO,QAAQ,OAAO,CAAC,IAAI,EAAE,KAAK,kBAAkB,IAAI;AACxD,cAAI,QAAQ,IAAI,KAAK,KAAK,YAAY,GAAG,GAAG,CAAC;AAC7C,cAAI,eAAe,IAAI,KAAK,KAAK,YAAY,GAAG,GAAG,CAAC,EAAE,kBAAkB;AACxE,cAAI,eAAe,MAAM,kBAAkB;AAC3C,cAAI,OAAO,gBAAgB,gBAAgB,KAAK,kBAAkB,KAAK,KAAK,IAAI,cAAc,YAAY,KAAK;AAC/G,iBAAO,QAAQ,OAAO,CAAC,IAAI;AAAA,QAC7B;AACA,YAAI,kBAAkB,CAAC,QAAQ;AAC7B,cAAI,OAAO,gBAAgB,GAAG,IAAI;AAClC,cAAI,MAAM,QAAQ,IAAI;AACtB,cAAI;AACF,yBAAa,KAAK,KAAK,IAAI;AAC7B,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,UAAU,UAAU,QAAQ;AAC9C,wBAAc;AACd,wBAAc;AACd,sBAAY;AACZ,cAAI,eAAc,oBAAI,KAAK,GAAE,YAAY;AACzC,cAAI,SAAS,IAAI,KAAK,aAAa,GAAG,CAAC;AACvC,cAAI,SAAS,IAAI,KAAK,aAAa,GAAG,CAAC;AACvC,cAAI,eAAe,OAAO,kBAAkB;AAC5C,cAAI,eAAe,OAAO,kBAAkB;AAC5C,cAAI,oBAAoB,KAAK,IAAI,cAAc,YAAY;AAC3D,kBAAQ,aAAa,CAAC,IAAI,oBAAoB;AAC9C,iBAAO,aAAa,CAAC,IAAI,OAAO,gBAAgB,YAAY;AAC5D,mBAAS,YAAY,MAAM;AACzB,gBAAI,QAAQ,KAAK,aAAa,EAAE,MAAM,mBAAmB;AACzD,mBAAO,QAAQ,MAAM,CAAC,IAAI;AAAA,UAC5B;AACA,cAAI,aAAa,YAAY,MAAM;AACnC,cAAI,aAAa,YAAY,MAAM;AACnC,cAAI,gBAAgB,gBAAgB,UAAU;AAC9C,cAAI,gBAAgB,gBAAgB,UAAU;AAC9C,cAAI,eAAe,cAAc;AAC/B,oBAAQ,WAAW,CAAC,IAAI;AACxB,oBAAQ,SAAS,MAAM,CAAC,IAAI;AAAA,UAC9B,OAAO;AACL,oBAAQ,WAAW,CAAC,IAAI;AACxB,oBAAQ,SAAS,MAAM,CAAC,IAAI;AAAA,UAC9B;AAAA,QACF;AACA,YAAI,SAAS,MAAM;AACjB,gBAAM,EAAE;AAAA,QACV;AACA,iBAAS,uBAAuB;AAC9B,iBAAO,KAAK,IAAI;AAAA,QAClB;AACA,YAAI;AACJ,8BAAsB,MAAM,YAAY,IAAI;AAC5C,iBAAS,uBAAuB,MAAM,KAAK,KAAK;AAC9C,oBAAU;AACV,mBAAS;AACT,mBAAS;AACT,iBAAO,OAAO,WAAW,SAAS,GAAG,QAAQ,GAAG,MAAM,QAAQ,CAAC;AAAA,QACjE;AACA,YAAI,aAAa,MAAM;AACvB,YAAI,aAAa,CAAC,SAAS;AACzB,cAAIT,KAAI,WAAW;AACnB,cAAI,QAAQ,OAAOA,GAAE,aAAa,UAAU;AAC5C,cAAI;AACF,uBAAW,KAAK,KAAK;AACrB,8BAAkB;AAClB,mBAAO;AAAA,UACT,SAAS,GAAG;AAAA,UACZ;AAAA,QACF;AACA,iBAAS,wBAAwB,eAAe;AAC9C,6BAAmB;AACnB,cAAI,UAAU,OAAO;AACrB,cAAI,cAAc,WAAW;AAC7B,cAAI,gBAAgB,aAAa;AAC/B,mBAAO;AAAA,UACT;AACA,cAAI,UAAU,CAAC,GAAG,aAAa,KAAK,WAAW,IAAI,YAAY;AAC/D,mBAAS,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG;AAChD,gBAAI,oBAAoB,WAAW,IAAI,MAAM;AAC7C,gCAAoB,KAAK,IAAI,mBAAmB,gBAAgB,SAAS;AACzE,gBAAI,UAAU,KAAK,IAAI,aAAa,QAAQ,KAAK,IAAI,eAAe,iBAAiB,GAAG,KAAK,CAAC;AAC9F,gBAAI,cAAc,WAAW,OAAO;AACpC,gBAAI,aAAa;AACf,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,MAAM,CAAC;AACX,YAAI,oBAAoB,MAAM,eAAe;AAC7C,YAAI,gBAAgB,MAAM;AACxB,cAAI,CAAC,cAAc,SAAS;AAC1B,gBAAI,QAAQ,OAAO,aAAa,YAAY,UAAU,aAAa,UAAU,UAAU,CAAC,KAAK,KAAK,QAAQ,KAAK,GAAG,IAAI;AACtH,gBAAI,MAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,QAAQ,KAAK,OAAO,KAAK,QAAQ,kBAAkB,QAAQ,MAAM,KAAK,kBAAkB,EAAE;AACjJ,qBAAS,KAAK,KAAK;AACjB,kBAAI,IAAI,CAAC,MAAM;AACb,uBAAO,IAAI,CAAC;AAAA;AAEZ,oBAAI,CAAC,IAAI,IAAI,CAAC;AAAA,YAClB;AACA,gBAAIe,WAAU,CAAC;AACf,qBAAS,KAAK,KAAK;AACjB,cAAAA,SAAQ,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;AAAA,YAC/B;AACA,0BAAc,UAAUA;AAAA,UAC1B;AACA,iBAAO,cAAc;AAAA,QACvB;AACA,YAAI,gBAAgB,CAAC,KAAK,WAAW;AACnC,mBAASX,KAAI,GAAGA,KAAI,IAAI,QAAQ,EAAEA,IAAG;AACnC,kBAAM,aAAa,CAAC,IAAI,IAAI,WAAWA,EAAC;AAAA,UAC1C;AACA,gBAAM,WAAW,CAAC,IAAI;AAAA,QACxB;AACA,YAAI,OAAO,EAAE,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,MAAM,KAAK,WAAW,CAACF,cAAa;AAC7E,cAAI,cAAc;AAClB,iBAAO,YAAY,KAAKA,SAAQ,EAAE,MAAM,CAAC;AAAA,QAC3C,GAAG,gBAAgB,CAAC,OAAO,mBAAmB;AAC5C,cAAI,KAAK;AACT,mBAASE,KAAI,MAAM,SAAS,GAAGA,MAAK,GAAGA,MAAK;AAC1C,gBAAI,OAAO,MAAMA,EAAC;AAClB,gBAAI,SAAS,KAAK;AAChB,oBAAM,OAAOA,IAAG,CAAC;AAAA,YACnB,WAAW,SAAS,MAAM;AACxB,oBAAM,OAAOA,IAAG,CAAC;AACjB;AAAA,YACF,WAAW,IAAI;AACb,oBAAM,OAAOA,IAAG,CAAC;AACjB;AAAA,YACF;AAAA,UACF;AACA,cAAI,gBAAgB;AAClB,mBAAO,IAAI,MAAM;AACf,oBAAM,QAAQ,IAAI;AAAA,YACpB;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,SAAS;AACtB,cAAI,aAAa,KAAK,MAAM,IAAI,GAAG,gBAAgB,KAAK,OAAO,EAAE,MAAM;AACvE,iBAAO,KAAK,eAAe,KAAK,MAAM,GAAG,EAAE,OAAO,CAACC,OAAM,CAAC,CAACA,EAAC,GAAG,CAAC,UAAU,EAAE,KAAK,GAAG;AACpF,cAAI,CAAC,QAAQ,CAAC,YAAY;AACxB,mBAAO;AAAA,UACT;AACA,cAAI,QAAQ,eAAe;AACzB,oBAAQ;AAAA,UACV;AACA,kBAAQ,aAAa,MAAM,MAAM;AAAA,QACnC,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI,SAAS,KAAK,UAAU,IAAI,GAAG,OAAO,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC;AACnE,cAAI,CAAC,QAAQ,CAAC,KAAK;AACjB,mBAAO;AAAA,UACT;AACA,cAAI,KAAK;AACP,kBAAM,IAAI,OAAO,GAAG,IAAI,SAAS,CAAC;AAAA,UACpC;AACA,iBAAO,OAAO;AAAA,QAChB,GAAG,UAAU,CAAC,SAAS;AACrB,cAAI,SAAS;AACX,mBAAO;AACT,iBAAO,KAAK,UAAU,IAAI;AAC1B,iBAAO,KAAK,QAAQ,OAAO,EAAE;AAC7B,cAAI,YAAY,KAAK,YAAY,GAAG;AACpC,cAAI,cAAc;AAChB,mBAAO;AACT,iBAAO,KAAK,OAAO,YAAY,CAAC;AAAA,QAClC,GAAG,MAAM,WAAW;AAClB,cAAI,QAAQ,MAAM,UAAU,MAAM,KAAK,SAAS;AAChD,iBAAO,KAAK,UAAU,MAAM,KAAK,GAAG,CAAC;AAAA,QACvC,GAAG,OAAO,CAACC,IAAGC,OAAM,KAAK,UAAUD,KAAI,MAAMC,EAAC,EAAE;AAChD,YAAI,iBAAiB,MAAM;AACzB,cAAI,OAAO,UAAU,YAAY,OAAO,OAAO,iBAAiB,KAAK,YAAY;AAC/E,mBAAO,CAAC,SAAS,OAAO,gBAAgB,IAAI;AAAA,UAC9C;AACE,kBAAM,kBAAkB;AAAA,QAC5B;AACA,YAAI,aAAa,CAAC,UAAU,aAAa,eAAe,GAAG,IAAI;AAC/D,YAAI,UAAU,EAAE,SAAS,WAAW;AAClC,cAAI,eAAe,IAAI,mBAAmB;AAC1C,mBAASH,KAAI,UAAU,SAAS,GAAGA,MAAK,MAAM,CAAC,kBAAkBA,MAAK;AACpE,gBAAI,OAAOA,MAAK,IAAI,UAAUA,EAAC,IAAI,GAAG,IAAI;AAC1C,gBAAI,OAAO,QAAQ,UAAU;AAC3B,oBAAM,IAAI,UAAU,2CAA2C;AAAA,YACjE,WAAW,CAAC,MAAM;AAChB,qBAAO;AAAA,YACT;AACA,2BAAe,OAAO,MAAM;AAC5B,+BAAmB,KAAK,MAAM,IAAI;AAAA,UACpC;AACA,yBAAe,KAAK,eAAe,aAAa,MAAM,GAAG,EAAE,OAAO,CAACC,OAAM,CAAC,CAACA,EAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,GAAG;AAC1G,kBAAQ,mBAAmB,MAAM,MAAM,gBAAgB;AAAA,QACzD,GAAG,UAAU,CAAC,MAAM,OAAO;AACzB,iBAAO,QAAQ,QAAQ,IAAI,EAAE,OAAO,CAAC;AACrC,eAAK,QAAQ,QAAQ,EAAE,EAAE,OAAO,CAAC;AACjC,mBAAS,KAAK,KAAK;AACjB,gBAAI,QAAQ;AACZ,mBAAO,QAAQ,IAAI,QAAQ,SAAS;AAClC,kBAAI,IAAI,KAAK,MAAM;AACjB;AAAA,YACJ;AACA,gBAAI,MAAM,IAAI,SAAS;AACvB,mBAAO,OAAO,GAAG,OAAO;AACtB,kBAAI,IAAI,GAAG,MAAM;AACf;AAAA,YACJ;AACA,gBAAI,QAAQ;AACV,qBAAO,CAAC;AACV,mBAAO,IAAI,MAAM,OAAO,MAAM,QAAQ,CAAC;AAAA,UACzC;AACA,cAAI,YAAY,KAAK,KAAK,MAAM,GAAG,CAAC;AACpC,cAAI,UAAU,KAAK,GAAG,MAAM,GAAG,CAAC;AAChC,cAAI,SAAS,KAAK,IAAI,UAAU,QAAQ,QAAQ,MAAM;AACtD,cAAI,kBAAkB;AACtB,mBAASD,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,UAAUA,EAAC,MAAM,QAAQA,EAAC,GAAG;AAC/B,gCAAkBA;AAClB;AAAA,YACF;AAAA,UACF;AACA,cAAI,cAAc,CAAC;AACnB,mBAASA,KAAI,iBAAiBA,KAAI,UAAU,QAAQA,MAAK;AACvD,wBAAY,KAAK,IAAI;AAAA,UACvB;AACA,wBAAc,YAAY,OAAO,QAAQ,MAAM,eAAe,CAAC;AAC/D,iBAAO,YAAY,KAAK,GAAG;AAAA,QAC7B,EAAE;AACF,YAAI,0BAA0B,CAAC;AAC/B,iBAAS,mBAAmB,SAAS,aAAa,QAAQ;AACxD,cAAI,MAAM,SAAS,IAAI,SAAS,gBAAgB,OAAO,IAAI;AAC3D,cAAI,UAAU,IAAI,MAAM,GAAG;AAC3B,cAAI,kBAAkB,kBAAkB,SAAS,SAAS,GAAG,QAAQ,MAAM;AAC3E,cAAI;AACF,oBAAQ,SAAS;AACnB,iBAAO;AAAA,QACT;AACA,YAAI,mBAAmB,MAAM;AAC3B,cAAI,CAAC,wBAAwB,QAAQ;AACnC,gBAAI,SAAS;AACb,gBAAI,OAAO,UAAU,eAAe,OAAO,OAAO,UAAU,YAAY;AACtE,uBAAS,OAAO,OAAO,SAAS;AAChC,kBAAI,WAAW,MAAM;AACnB,0BAAU;AAAA,cACZ;AAAA,YACF,WAAW,OAAO,YAAY,YAAY;AACxC,uBAAS,SAAS;AAClB,kBAAI,WAAW,MAAM;AACnB,0BAAU;AAAA,cACZ;AAAA,YACF;AACA,gBAAI,CAAC,QAAQ;AACX,qBAAO;AAAA,YACT;AACA,sCAA0B,mBAAmB,QAAQ,IAAI;AAAA,UAC3D;AACA,iBAAO,wBAAwB,MAAM;AAAA,QACvC;AACA,YAAI,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,WAAW;AAAA,QACvC,GAAG,UAAU,WAAW;AAAA,QACxB,GAAG,UAAU,SAAS,KAAK,KAAK;AAC9B,cAAI,KAAK,GAAG,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,IAAI;AAC7C,aAAG,eAAe,KAAK,IAAI,UAAU;AAAA,QACvC,GAAG,YAAY,EAAE,MAAM,SAAS,QAAQ;AACtC,cAAI,MAAM,IAAI,KAAK,OAAO,KAAK,IAAI;AACnC,cAAI,CAAC,KAAK;AACR,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,MAAM;AACb,iBAAO,WAAW;AAAA,QACpB,GAAG,OAAO,SAAS,QAAQ;AACzB,iBAAO,IAAI,IAAI,MAAM,OAAO,GAAG;AAAA,QACjC,GAAG,OAAO,SAAS,QAAQ;AACzB,iBAAO,IAAI,IAAI,MAAM,OAAO,GAAG;AAAA,QACjC,GAAG,MAAM,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,KAAK;AACrD,cAAI,CAAC,OAAO,OAAO,CAAC,OAAO,IAAI,IAAI,UAAU;AAC3C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY;AAChB,mBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI;AACJ,gBAAI;AACF,uBAAS,OAAO,IAAI,IAAI,SAAS,OAAO,GAAG;AAAA,YAC7C,SAAS,GAAG;AACV,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,gBAAI,WAAW,UAAU,cAAc,GAAG;AACxC,oBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,YAC3B;AACA,gBAAI,WAAW,QAAQ,WAAW;AAChC;AACF;AACA,mBAAO,SAASA,EAAC,IAAI;AAAA,UACvB;AACA,cAAI,WAAW;AACb,mBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,UACnC;AACA,iBAAO;AAAA,QACT,GAAG,OAAO,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,KAAK;AACtD,cAAI,CAAC,OAAO,OAAO,CAAC,OAAO,IAAI,IAAI,UAAU;AAC3C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACF,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,qBAAO,IAAI,IAAI,SAAS,OAAO,KAAK,OAAO,SAASA,EAAC,CAAC;AAAA,YACxD;AAAA,UACF,SAAS,GAAG;AACV,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ;AACV,mBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,UACnC;AACA,iBAAOA;AAAA,QACT,EAAE,GAAG,iBAAiB,EAAE,UAAU,SAAS,KAAK;AAC9C,iBAAO,iBAAiB;AAAA,QAC1B,GAAG,UAAU,SAAS,KAAK,KAAK;AAC9B,cAAI,QAAQ,QAAQ,QAAQ,IAAI;AAC9B,gBAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB,OAAO;AACL,gBAAI,OAAO;AACT,kBAAI,OAAO,KAAK,GAAG;AAAA,UACvB;AAAA,QACF,GAAG,OAAO,SAAS,KAAK;AACtB,cAAI,IAAI,UAAU,IAAI,OAAO,SAAS,GAAG;AACvC,gBAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB;AAAA,QACF,GAAG,cAAc,SAAS,KAAK;AAC7B,iBAAO,EAAE,SAAS,OAAO,SAAS,GAAG,SAAS,KAAK,SAAS,OAAO,MAAM,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE;AAAA,QACvL,GAAG,cAAc,SAAS,KAAK,kBAAkB,MAAM;AACrD,iBAAO;AAAA,QACT,GAAG,kBAAkB,SAAS,KAAK;AACjC,iBAAO,CAAC,IAAI,EAAE;AAAA,QAChB,EAAE,GAAG,kBAAkB,EAAE,UAAU,SAAS,KAAK,KAAK;AACpD,cAAI,QAAQ,QAAQ,QAAQ,IAAI;AAC9B,YAAAN,KAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB,OAAO;AACL,gBAAI,OAAO;AACT,kBAAI,OAAO,KAAK,GAAG;AAAA,UACvB;AAAA,QACF,GAAG,OAAO,SAAS,KAAK;AACtB,cAAI,IAAI,UAAU,IAAI,OAAO,SAAS,GAAG;AACvC,YAAAA,KAAI,kBAAkB,IAAI,QAAQ,CAAC,CAAC;AACpC,gBAAI,SAAS,CAAC;AAAA,UAChB;AAAA,QACF,EAAE,EAAE;AACJ,YAAI,YAAY,CAAC,SAAS;AACxB,gBAAM;AAAA,QACR;AACA,YAAI,QAAQ,EAAE,WAAW,MAAM,MAAM,OAAO;AAC1C,iBAAO,MAAM,WAAW,MAAM,KAAK,QAAQ,KAAK,CAAC;AAAA,QACnD,GAAG,WAAW,QAAQW,QAAM,MAAM,KAAK;AACrC,cAAI,GAAG,SAAS,IAAI,KAAK,GAAG,OAAO,IAAI,GAAG;AACxC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,MAAM,WAAW;AACpB,kBAAM,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,SAAS,QAAQ,MAAM,SAAS,QAAQ,OAAO,MAAM,SAAS,OAAO,QAAQ,MAAM,SAAS,QAAQ,QAAQ,MAAM,SAAS,QAAQ,OAAO,MAAM,SAAS,OAAO,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,MAAM,WAAW,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,MAAM,WAAW,QAAQ,MAAM,MAAM,WAAW,MAAM,OAAO,MAAM,WAAW,OAAO,UAAU,MAAM,WAAW,UAAU,MAAM,MAAM,WAAW,MAAM,OAAO,MAAM,WAAW,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,SAAS,UAAU,MAAM,SAAS,SAAS,GAAG,QAAQ,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,SAAS,MAAM,SAAS,SAAS,SAAS,MAAM,SAAS,QAAQ,GAAG,QAAQ,GAAG,kBAAkB,EAAE;AAAA,UAC34B;AACA,cAAI,OAAO,GAAG,WAAW,QAAQA,QAAM,MAAM,GAAG;AAChD,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,iBAAK,WAAW,MAAM,UAAU,IAAI;AACpC,iBAAK,aAAa,MAAM,UAAU,IAAI;AACtC,iBAAK,WAAW,CAAC;AAAA,UACnB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,WAAW,MAAM,UAAU,KAAK;AACrC,iBAAK,aAAa,MAAM,UAAU,KAAK;AACvC,iBAAK,YAAY;AACjB,iBAAK,WAAW;AAAA,UAClB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,WAAW,MAAM,UAAU,KAAK;AACrC,iBAAK,aAAa,MAAM,UAAU,KAAK;AAAA,UACzC,WAAW,GAAG,SAAS,KAAK,IAAI,GAAG;AACjC,iBAAK,WAAW,MAAM,UAAU,OAAO;AACvC,iBAAK,aAAa,MAAM,UAAU,OAAO;AAAA,UAC3C;AACA,eAAK,YAAY,KAAK,IAAI;AAC1B,cAAI,QAAQ;AACV,mBAAO,SAASA,MAAI,IAAI;AACxB,mBAAO,YAAY,KAAK;AAAA,UAC1B;AACA,iBAAO;AAAA,QACT,GAAG,wBAAwB,MAAM;AAC/B,cAAI,CAAC,KAAK;AACR,mBAAO,IAAI,WAAW,CAAC;AACzB,cAAI,KAAK,SAAS;AAChB,mBAAO,KAAK,SAAS,SAAS,GAAG,KAAK,SAAS;AACjD,iBAAO,IAAI,WAAW,KAAK,QAAQ;AAAA,QACrC,GAAG,kBAAkB,MAAM,aAAa;AACtC,cAAI,eAAe,KAAK,WAAW,KAAK,SAAS,SAAS;AAC1D,cAAI,gBAAgB;AAClB;AACF,cAAI,wBAAwB,OAAO;AACnC,wBAAc,KAAK,IAAI,aAAa,gBAAgB,eAAe,wBAAwB,IAAI,WAAW,CAAC;AAC3G,cAAI,gBAAgB;AAClB,0BAAc,KAAK,IAAI,aAAa,GAAG;AACzC,cAAI,cAAc,KAAK;AACvB,eAAK,WAAW,IAAI,WAAW,WAAW;AAC1C,cAAI,KAAK,YAAY;AACnB,iBAAK,SAAS,IAAI,YAAY,SAAS,GAAG,KAAK,SAAS,GAAG,CAAC;AAAA,QAChE,GAAG,kBAAkB,MAAM,SAAS;AAClC,cAAI,KAAK,aAAa;AACpB;AACF,cAAI,WAAW,GAAG;AAChB,iBAAK,WAAW;AAChB,iBAAK,YAAY;AAAA,UACnB,OAAO;AACL,gBAAI,cAAc,KAAK;AACvB,iBAAK,WAAW,IAAI,WAAW,OAAO;AACtC,gBAAI,aAAa;AACf,mBAAK,SAAS,IAAI,YAAY,SAAS,GAAG,KAAK,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC;AAAA,YAC9E;AACA,iBAAK,YAAY;AAAA,UACnB;AAAA,QACF,GAAG,UAAU,EAAE,QAAQ,MAAM;AAC3B,cAAI,OAAO,CAAC;AACZ,eAAK,MAAM,GAAG,SAAS,KAAK,IAAI,IAAI,KAAK,KAAK;AAC9C,eAAK,MAAM,KAAK;AAChB,eAAK,OAAO,KAAK;AACjB,eAAK,QAAQ;AACb,eAAK,MAAM;AACX,eAAK,MAAM;AACX,eAAK,OAAO,KAAK;AACjB,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,iBAAK,OAAO;AAAA,UACd,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,OAAO,KAAK;AAAA,UACnB,WAAW,GAAG,OAAO,KAAK,IAAI,GAAG;AAC/B,iBAAK,OAAO,KAAK,KAAK;AAAA,UACxB,OAAO;AACL,iBAAK,OAAO;AAAA,UACd;AACA,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;AACpC,eAAK,UAAU;AACf,eAAK,SAAS,KAAK,KAAK,KAAK,OAAO,KAAK,OAAO;AAChD,iBAAO;AAAA,QACT,GAAG,QAAQ,MAAM,MAAM;AACrB,cAAI,KAAK,SAAS,QAAQ;AACxB,iBAAK,OAAO,KAAK;AAAA,UACnB;AACA,cAAI,KAAK,cAAc,QAAQ;AAC7B,iBAAK,YAAY,KAAK;AAAA,UACxB;AACA,cAAI,KAAK,SAAS,QAAQ;AACxB,kBAAM,kBAAkB,MAAM,KAAK,IAAI;AAAA,UACzC;AAAA,QACF,GAAG,OAAO,QAAQA,QAAM;AACtB,gBAAM,GAAG,cAAc,EAAE;AAAA,QAC3B,GAAG,MAAM,QAAQA,QAAM,MAAM,KAAK;AAChC,iBAAO,MAAM,WAAW,QAAQA,QAAM,MAAM,GAAG;AAAA,QACjD,GAAG,OAAO,UAAU,SAAS,UAAU;AACrC,cAAI,GAAG,MAAM,SAAS,IAAI,GAAG;AAC3B,gBAAI;AACJ,gBAAI;AACF,yBAAW,GAAG,WAAW,SAAS,QAAQ;AAAA,YAC5C,SAAS,GAAG;AAAA,YACZ;AACA,gBAAI,UAAU;AACZ,uBAASL,MAAK,SAAS,UAAU;AAC/B,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF;AAAA,UACF;AACA,iBAAO,SAAS,OAAO,SAAS,SAAS,IAAI;AAC7C,mBAAS,OAAO,YAAY,KAAK,IAAI;AACrC,mBAAS,OAAO;AAChB,kBAAQ,SAAS,QAAQ,IAAI;AAC7B,kBAAQ,YAAY,SAAS,OAAO;AACpC,mBAAS,SAAS;AAAA,QACpB,GAAG,OAAO,QAAQK,QAAM;AACtB,iBAAO,OAAO,SAASA,MAAI;AAC3B,iBAAO,YAAY,KAAK,IAAI;AAAA,QAC9B,GAAG,MAAM,QAAQA,QAAM;AACrB,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,mBAASL,MAAK,KAAK,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAASK,MAAI;AAC3B,iBAAO,YAAY,KAAK,IAAI;AAAA,QAC9B,GAAG,QAAQ,MAAM;AACf,cAAI,UAAU,CAAC,KAAK,IAAI;AACxB,mBAAS,OAAO,KAAK,UAAU;AAC7B,gBAAI,CAAC,KAAK,SAAS,eAAe,GAAG,GAAG;AACtC;AAAA,YACF;AACA,oBAAQ,KAAK,GAAG;AAAA,UAClB;AACA,iBAAO;AAAA,QACT,GAAG,QAAQ,QAAQ,SAAS,SAAS;AACnC,cAAI,OAAO,MAAM,WAAW,QAAQ,SAAS,MAAM,OAAO,CAAC;AAC3D,eAAK,OAAO;AACZ,iBAAO;AAAA,QACT,GAAG,SAAS,MAAM;AAChB,cAAI,CAAC,GAAG,OAAO,KAAK,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK;AAAA,QACd,EAAE,GAAG,YAAY,EAAE,KAAK,QAAQ,QAAQ,QAAQ,QAAQ,UAAU;AAChE,cAAI,WAAW,OAAO,KAAK;AAC3B,cAAI,YAAY,OAAO,KAAK;AAC1B,mBAAO;AACT,cAAI,OAAO,KAAK,IAAI,OAAO,KAAK,YAAY,UAAU,MAAM;AAC5D,cAAI,OAAO,KAAK,SAAS,UAAU;AACjC,mBAAO,IAAI,SAAS,SAAS,UAAU,WAAW,IAAI,GAAG,MAAM;AAAA,UACjE,OAAO;AACL,qBAASL,KAAI,GAAGA,KAAI,MAAMA;AACxB,qBAAO,SAASA,EAAC,IAAI,SAAS,WAAWA,EAAC;AAAA,UAC9C;AACA,iBAAO;AAAA,QACT,GAAG,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,QAAQ;AACzD,cAAI,OAAO,WAAW,MAAM,QAAQ;AAClC,qBAAS;AAAA,UACX;AACA,cAAI,CAAC;AACH,mBAAO;AACT,cAAI,OAAO,OAAO;AAClB,eAAK,YAAY,KAAK,IAAI;AAC1B,cAAI,OAAO,aAAa,CAAC,KAAK,YAAY,KAAK,SAAS,WAAW;AACjE,gBAAI,QAAQ;AACV,mBAAK,WAAW,OAAO,SAAS,QAAQ,SAAS,MAAM;AACvD,mBAAK,YAAY;AACjB,qBAAO;AAAA,YACT,WAAW,KAAK,cAAc,KAAK,aAAa,GAAG;AACjD,mBAAK,WAAW,OAAO,MAAM,QAAQ,SAAS,MAAM;AACpD,mBAAK,YAAY;AACjB,qBAAO;AAAA,YACT,WAAW,WAAW,UAAU,KAAK,WAAW;AAC9C,mBAAK,SAAS,IAAI,OAAO,SAAS,QAAQ,SAAS,MAAM,GAAG,QAAQ;AACpE,qBAAO;AAAA,YACT;AAAA,UACF;AACA,gBAAM,kBAAkB,MAAM,WAAW,MAAM;AAC/C,cAAI,KAAK,SAAS,YAAY,OAAO,UAAU;AAC7C,iBAAK,SAAS,IAAI,OAAO,SAAS,QAAQ,SAAS,MAAM,GAAG,QAAQ;AAAA,UACtE,OAAO;AACL,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,mBAAK,SAAS,WAAWA,EAAC,IAAI,OAAO,SAASA,EAAC;AAAA,YACjD;AAAA,UACF;AACA,eAAK,YAAY,KAAK,IAAI,KAAK,WAAW,WAAW,MAAM;AAC3D,iBAAO;AAAA,QACT,GAAG,OAAO,QAAQ,QAAQ,QAAQ;AAChC,cAAI,WAAW;AACf,cAAI,WAAW,GAAG;AAChB,wBAAY,OAAO;AAAA,UACrB,WAAW,WAAW,GAAG;AACvB,gBAAI,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAC/B,0BAAY,OAAO,KAAK;AAAA,YAC1B;AAAA,UACF;AACA,cAAI,WAAW,GAAG;AAChB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,QAAQ,QAAQ,QAAQ;AAClC,gBAAM,kBAAkB,OAAO,MAAM,SAAS,MAAM;AACpD,iBAAO,KAAK,YAAY,KAAK,IAAI,OAAO,KAAK,WAAW,SAAS,MAAM;AAAA,QACzE,GAAG,KAAK,QAAQ,QAAQ,UAAU,MAAM,OAAO;AAC7C,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAChC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI;AACJ,cAAI,WAAW,OAAO,KAAK;AAC3B,cAAI,EAAE,QAAQ,MAAM,SAAS,WAAW,MAAM,QAAQ;AACpD,wBAAY;AACZ,kBAAM,SAAS;AAAA,UACjB,OAAO;AACL,gBAAI,WAAW,KAAK,WAAW,SAAS,SAAS,QAAQ;AACvD,kBAAI,SAAS,UAAU;AACrB,2BAAW,SAAS,SAAS,UAAU,WAAW,MAAM;AAAA,cAC1D,OAAO;AACL,2BAAW,MAAM,UAAU,MAAM,KAAK,UAAU,UAAU,WAAW,MAAM;AAAA,cAC7E;AAAA,YACF;AACA,wBAAY;AACZ,kBAAM,UAAU,MAAM;AACtB,gBAAI,CAAC,KAAK;AACR,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,kBAAM,IAAI,UAAU,QAAQ,CAAC;AAAA,UAC/B;AACA,iBAAO,EAAE,KAAK,UAAU;AAAA,QAC1B,GAAG,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,WAAW;AAClD,gBAAM,WAAW,MAAM,QAAQ,QAAQ,GAAG,QAAQ,QAAQ,KAAK;AAC/D,iBAAO;AAAA,QACT,EAAE,EAAE;AACJ,YAAI,YAAY,CAAC,KAAK,QAAQ,SAAS,aAAa;AAClD,cAAI,MAAM,CAAC,WAAW,uBAAuB,MAAM,GAAG,EAAE,IAAI;AAC5D,oBAAU,KAAK,CAAC,gBAAgB;AAC9B,YAAAL,QAAO,aAAa,sBAAsB,GAAG,4BAA4B;AACzE,mBAAO,IAAI,WAAW,WAAW,CAAC;AAClC,gBAAI;AACF,kCAAoB,GAAG;AAAA,UAC3B,GAAG,CAAC,UAAU;AACZ,gBAAI,SAAS;AACX,sBAAQ;AAAA,YACV,OAAO;AACL,oBAAM,sBAAsB,GAAG;AAAA,YACjC;AAAA,UACF,CAAC;AACD,cAAI;AACF,6BAAiB,GAAG;AAAA,QACxB;AACA,YAAI,iBAAiBH,QAAO,gBAAgB,KAAK,CAAC;AAClD,iBAAS,0BAA0B,WAAW,UAAU,QAAQ,SAAS;AACvE,cAAI,OAAO,WAAW;AACpB,oBAAQ,KAAK;AACf,cAAI,UAAU;AACd,yBAAe,QAAQ,SAAS,QAAQ;AACtC,gBAAI;AACF;AACF,gBAAI,OAAO,WAAW,EAAE,QAAQ,GAAG;AACjC,qBAAO,QAAQ,EAAE,WAAW,UAAU,QAAQ,OAAO;AACrD,wBAAU;AAAA,YACZ;AAAA,UACF,CAAC;AACD,iBAAO;AAAA,QACT;AACA,iBAAS,uBAAuB,QAAQa,QAAM,KAAK,SAAS,UAAU,QAAQ,SAAS,gBAAgB,QAAQ,WAAW;AACxH,cAAI,WAAWA,SAAO,QAAQ,QAAQ,KAAK,MAAM,QAAQA,MAAI,CAAC,IAAI;AAClE,cAAI,MAAM,uBAAuB,MAAM,QAAQ,EAAE;AACjD,mBAAS,YAAY,WAAW;AAC9B,qBAAS,OAAO,YAAY;AAC1B,kBAAI;AACF,0BAAU;AACZ,kBAAI,CAAC,gBAAgB;AACnB,mBAAG,eAAe,QAAQA,QAAM,YAAY,SAAS,UAAU,MAAM;AAAA,cACvE;AACA,kBAAI;AACF,uBAAO;AACT,kCAAoB,GAAG;AAAA,YACzB;AACA,gBAAI,0BAA0B,WAAW,UAAU,QAAQ,MAAM;AAC/D,kBAAI;AACF,wBAAQ;AACV,kCAAoB,GAAG;AAAA,YACzB,CAAC,GAAG;AACF;AAAA,YACF;AACA,mBAAO,SAAS;AAAA,UAClB;AACA,2BAAiB,GAAG;AACpB,cAAI,OAAO,OAAO,UAAU;AAC1B,sBAAU,KAAK,CAAC,cAAc,YAAY,SAAS,GAAG,OAAO;AAAA,UAC/D,OAAO;AACL,wBAAY,GAAG;AAAA,UACjB;AAAA,QACF;AACA,iBAAS,qBAAqB,KAAK;AACjC,cAAI,YAAY,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,MAAM,KAAK,GAAG,MAAM,MAAM,KAAK,GAAG,KAAK,OAAO,KAAK,GAAG,MAAM,OAAO,KAAK,EAAE;AAClH,cAAI,QAAQ,UAAU,GAAG;AACzB,cAAI,OAAO,SAAS,aAAa;AAC/B,kBAAM,IAAI,MAAM,2BAA2B,GAAG,EAAE;AAAA,UAClD;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,WAAW,SAAS,UAAU;AACrC,cAAI,OAAO;AACX,cAAI;AACF,oBAAQ,MAAM;AAChB,cAAI;AACF,oBAAQ;AACV,iBAAO;AAAA,QACT;AACA,YAAI,KAAK,EAAE,MAAM,MAAM,QAAQ,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,GAAG,WAAW,GAAG,WAAW,MAAM,aAAa,KAAK,aAAa,OAAO,mBAAmB,MAAM,YAAY,MAAM,eAAe,CAAC,GAAG,aAAa,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,OAAO,CAAC,MAAM;AACrQ,iBAAO,QAAQ,QAAQ,IAAI;AAC3B,cAAI,CAAC;AACH,mBAAO,EAAE,MAAM,IAAI,MAAM,KAAK;AAChC,cAAI,WAAW,EAAE,cAAc,MAAM,eAAe,EAAE;AACtD,iBAAO,OAAO,OAAO,UAAU,IAAI;AACnC,cAAI,KAAK,gBAAgB,GAAG;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ,KAAK,MAAM,GAAG,EAAE,OAAO,CAACJ,OAAM,CAAC,CAACA,EAAC;AAC7C,cAAI,UAAU,GAAG;AACjB,cAAI,eAAe;AACnB,mBAASD,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK;AACrC,gBAAI,SAASA,OAAM,MAAM,SAAS;AAClC,gBAAI,UAAU,KAAK,QAAQ;AACzB;AAAA,YACF;AACA,sBAAU,GAAG,WAAW,SAAS,MAAMA,EAAC,CAAC;AACzC,2BAAe,KAAK,MAAM,cAAc,MAAMA,EAAC,CAAC;AAChD,gBAAI,GAAG,aAAa,OAAO,GAAG;AAC5B,kBAAI,CAAC,UAAU,UAAU,KAAK,cAAc;AAC1C,0BAAU,QAAQ,QAAQ;AAAA,cAC5B;AAAA,YACF;AACA,gBAAI,CAAC,UAAU,KAAK,QAAQ;AAC1B,kBAAI,QAAQ;AACZ,qBAAO,GAAG,OAAO,QAAQ,IAAI,GAAG;AAC9B,oBAAI,OAAO,GAAG,SAAS,YAAY;AACnC,+BAAe,QAAQ,QAAQ,KAAK,QAAQ,YAAY,GAAG,IAAI;AAC/D,oBAAI,SAAS,GAAG,WAAW,cAAc,EAAE,eAAe,KAAK,gBAAgB,EAAE,CAAC;AAClF,0BAAU,OAAO;AACjB,oBAAI,UAAU,IAAI;AAChB,wBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,gBAC5B;AAAA,cACF;AAAA,YACF;AAAA,UACF;AACA,iBAAO,EAAE,MAAM,cAAc,MAAM,QAAQ;AAAA,QAC7C,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI;AACJ,iBAAO,MAAM;AACX,gBAAI,GAAG,OAAO,IAAI,GAAG;AACnB,kBAAI,QAAQ,KAAK,MAAM;AACvB,kBAAI,CAAC;AACH,uBAAO;AACT,qBAAO,MAAM,MAAM,SAAS,CAAC,MAAM,MAAM,GAAG,KAAK,IAAI,IAAI,KAAK,QAAQ;AAAA,YACxE;AACA,mBAAO,OAAO,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK;AAC5C,mBAAO,KAAK;AAAA,UACd;AAAA,QACF,GAAG,UAAU,CAAC,UAAUK,WAAS;AAC/B,cAAI,OAAO;AACX,mBAASL,KAAI,GAAGA,KAAIK,OAAK,QAAQL,MAAK;AACpC,oBAAQ,QAAQ,KAAK,OAAOK,OAAK,WAAWL,EAAC,IAAI;AAAA,UACnD;AACA,kBAAQ,WAAW,SAAS,KAAK,GAAG,UAAU;AAAA,QAChD,GAAG,aAAa,CAAC,SAAS;AACxB,cAAI,OAAO,GAAG,SAAS,KAAK,OAAO,IAAI,KAAK,IAAI;AAChD,eAAK,YAAY,GAAG,UAAU,IAAI;AAClC,aAAG,UAAU,IAAI,IAAI;AAAA,QACvB,GAAG,gBAAgB,CAAC,SAAS;AAC3B,cAAI,OAAO,GAAG,SAAS,KAAK,OAAO,IAAI,KAAK,IAAI;AAChD,cAAI,GAAG,UAAU,IAAI,MAAM,MAAM;AAC/B,eAAG,UAAU,IAAI,IAAI,KAAK;AAAA,UAC5B,OAAO;AACL,gBAAI,UAAU,GAAG,UAAU,IAAI;AAC/B,mBAAO,SAAS;AACd,kBAAI,QAAQ,cAAc,MAAM;AAC9B,wBAAQ,YAAY,KAAK;AACzB;AAAA,cACF;AACA,wBAAU,QAAQ;AAAA,YACpB;AAAA,UACF;AAAA,QACF,GAAG,YAAY,CAAC,QAAQK,WAAS;AAC/B,cAAI,UAAU,GAAG,UAAU,MAAM;AACjC,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,SAAS,MAAM;AAAA,UACzC;AACA,cAAI,OAAO,GAAG,SAAS,OAAO,IAAIA,MAAI;AACtC,mBAAS,OAAO,GAAG,UAAU,IAAI,GAAG,MAAM,OAAO,KAAK,WAAW;AAC/D,gBAAI,WAAW,KAAK;AACpB,gBAAI,KAAK,OAAO,OAAO,OAAO,MAAM,aAAaA,QAAM;AACrD,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO,GAAG,OAAO,QAAQA,MAAI;AAAA,QAC/B,GAAG,YAAY,CAAC,QAAQA,QAAM,MAAM,SAAS;AAC3C,cAAI,OAAO,IAAI,GAAG,OAAO,QAAQA,QAAM,MAAM,IAAI;AACjD,aAAG,YAAY,IAAI;AACnB,iBAAO;AAAA,QACT,GAAG,aAAa,CAAC,SAAS;AACxB,aAAG,eAAe,IAAI;AAAA,QACxB,GAAG,QAAQ,CAAC,SAAS,SAAS,KAAK,QAAQ,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,QAAQ,CAAC,UAAU,OAAO,WAAW,OAAO,OAAO,CAAC,UAAU,OAAO,WAAW,OAAO,QAAQ,CAAC,UAAU,OAAO,WAAW,OAAO,UAAU,CAAC,UAAU,OAAO,WAAW,MAAM,UAAU,CAAC,UAAU,OAAO,WAAW,OAAO,QAAQ,CAAC,UAAU,OAAO,WAAW,MAAM,UAAU,CAAC,UAAU,OAAO,WAAW,OAAO,yBAAyB,CAAC,SAAS;AAC3a,cAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,EAAE,OAAO,CAAC;AACrC,cAAI,OAAO,KAAK;AACd,qBAAS;AAAA,UACX;AACA,iBAAO;AAAA,QACT,GAAG,iBAAiB,CAAC,MAAM,UAAU;AACnC,cAAI,GAAG,mBAAmB;AACxB,mBAAO;AAAA,UACT;AACA,cAAI,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,MAAM;AAC7C,mBAAO;AAAA,UACT,WAAW,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,MAAM;AACpD,mBAAO;AAAA,UACT,WAAW,MAAM,SAAS,GAAG,KAAK,EAAE,KAAK,OAAO,KAAK;AACnD,mBAAO;AAAA,UACT;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,QAAQ;AACrB,cAAI,UAAU,GAAG,gBAAgB,KAAK,GAAG;AACzC,cAAI;AACF,mBAAO;AACT,cAAI,CAAC,IAAI,SAAS;AAChB,mBAAO;AACT,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,KAAKA,WAAS;AAC3B,cAAI;AACF,gBAAI,OAAO,GAAG,WAAW,KAAKA,MAAI;AAClC,mBAAO;AAAA,UACT,SAAS,GAAG;AAAA,UACZ;AACA,iBAAO,GAAG,gBAAgB,KAAK,IAAI;AAAA,QACrC,GAAG,WAAW,CAAC,KAAKA,QAAM,UAAU;AAClC,cAAI;AACJ,cAAI;AACF,mBAAO,GAAG,WAAW,KAAKA,MAAI;AAAA,UAChC,SAAS,GAAG;AACV,mBAAO,EAAE;AAAA,UACX;AACA,cAAI,UAAU,GAAG,gBAAgB,KAAK,IAAI;AAC1C,cAAI,SAAS;AACX,mBAAO;AAAA,UACT;AACA,cAAI,OAAO;AACT,gBAAI,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACxB,qBAAO;AAAA,YACT;AACA,gBAAI,GAAG,OAAO,IAAI,KAAK,GAAG,QAAQ,IAAI,MAAM,GAAG,IAAI,GAAG;AACpD,qBAAO;AAAA,YACT;AAAA,UACF,OAAO;AACL,gBAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,CAAC,MAAM,UAAU;AAC3B,cAAI,CAAC,MAAM;AACT,mBAAO;AAAA,UACT;AACA,cAAI,GAAG,OAAO,KAAK,IAAI,GAAG;AACxB,mBAAO;AAAA,UACT,WAAW,GAAG,MAAM,KAAK,IAAI,GAAG;AAC9B,gBAAI,GAAG,wBAAwB,KAAK,MAAM,OAAO,QAAQ,KAAK;AAC5D,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO,GAAG,gBAAgB,MAAM,GAAG,wBAAwB,KAAK,CAAC;AAAA,QACnE,GAAG,cAAc,MAAM,QAAQ,MAAM;AACnC,mBAAS,KAAK,GAAG,MAAM,GAAG,cAAc,MAAM;AAC5C,gBAAI,CAAC,GAAG,QAAQ,EAAE,GAAG;AACnB,qBAAO;AAAA,YACT;AAAA,UACF;AACA,gBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,QAC5B,GAAG,kBAAkB,CAAC,OAAO;AAC3B,cAAI,SAAS,GAAG,UAAU,EAAE;AAC5B,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,OAAO,GAAG,QAAQ,EAAE,GAAG,cAAc,CAAC,QAAQ,KAAK,OAAO;AACvE,cAAI,CAAC,GAAG,UAAU;AAChB,eAAG,WAAW,WAAW;AACvB,mBAAK,SAAS,CAAC;AAAA,YACjB;AACA,eAAG,SAAS,YAAY,CAAC;AACzB,mBAAO,iBAAiB,GAAG,SAAS,WAAW,EAAE,QAAQ,EAAE,MAAM;AAC/D,qBAAO,KAAK;AAAA,YACd,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO;AAAA,YACd,EAAE,GAAG,QAAQ,EAAE,MAAM;AACnB,sBAAQ,KAAK,QAAQ,aAAa;AAAA,YACpC,EAAE,GAAG,SAAS,EAAE,MAAM;AACpB,sBAAQ,KAAK,QAAQ,aAAa;AAAA,YACpC,EAAE,GAAG,UAAU,EAAE,MAAM;AACrB,qBAAO,KAAK,QAAQ;AAAA,YACtB,EAAE,GAAG,OAAO,EAAE,MAAM;AAClB,qBAAO,KAAK,OAAO;AAAA,YACrB,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO,QAAQ;AAAA,YACtB,EAAE,GAAG,UAAU,EAAE,MAAM;AACrB,qBAAO,KAAK,OAAO;AAAA,YACrB,GAAG,IAAI,KAAK;AACV,mBAAK,OAAO,WAAW;AAAA,YACzB,EAAE,EAAE,CAAC;AAAA,UACP;AACA,mBAAS,OAAO,OAAO,IAAI,GAAG,SAAS,GAAG,MAAM;AAChD,cAAI,MAAM,IAAI;AACZ,iBAAK,GAAG,OAAO;AAAA,UACjB;AACA,iBAAO,KAAK;AACZ,aAAG,QAAQ,EAAE,IAAI;AACjB,iBAAO;AAAA,QACT,GAAG,aAAa,CAAC,OAAO;AACtB,aAAG,QAAQ,EAAE,IAAI;AAAA,QACnB,GAAG,mBAAmB,EAAE,MAAM,CAAC,WAAW;AACxC,cAAI,SAAS,GAAG,UAAU,OAAO,KAAK,IAAI;AAC1C,iBAAO,aAAa,OAAO;AAC3B,cAAI,OAAO,WAAW,MAAM;AAC1B,mBAAO,WAAW,KAAK,MAAM;AAAA,UAC/B;AAAA,QACF,GAAG,QAAQ,MAAM;AACf,gBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,QAC5B,EAAE,GAAG,OAAO,CAAC,QAAQ,OAAO,GAAG,OAAO,CAAC,QAAQ,MAAM,KAAK,SAAS,CAAC,IAAI,OAAO,MAAM,IAAI,IAAI,gBAAgB,CAAC,KAAK,QAAQ;AACzH,aAAG,QAAQ,GAAG,IAAI,EAAE,YAAY,IAAI;AAAA,QACtC,GAAG,WAAW,CAAC,QAAQ,GAAG,QAAQ,GAAG,GAAG,WAAW,CAAC,UAAU;AAC5D,cAAI,SAAS,CAAC;AACd,cAAI,QAAQ,CAAC,KAAK;AAClB,iBAAO,MAAM,QAAQ;AACnB,gBAAI,IAAI,MAAM,IAAI;AAClB,mBAAO,KAAK,CAAC;AACb,kBAAM,KAAK,MAAM,OAAO,EAAE,MAAM;AAAA,UAClC;AACA,iBAAO;AAAA,QACT,GAAG,QAAQ,CAAC,UAAU,aAAa;AACjC,cAAI,OAAO,YAAY,YAAY;AACjC,uBAAW;AACX,uBAAW;AAAA,UACb;AACA,aAAG;AACH,cAAI,GAAG,iBAAiB,GAAG;AACzB,YAAAX,KAAI,YAAY,GAAG,cAAc,yEAAyE;AAAA,UAC5G;AACA,cAAI,SAAS,GAAG,UAAU,GAAG,KAAK,KAAK;AACvC,cAAI,YAAY;AAChB,mBAAS,WAAW,SAAS;AAC3B,eAAG;AACH,mBAAO,SAAS,OAAO;AAAA,UACzB;AACA,mBAAS,KAAK,SAAS;AACrB,gBAAI,SAAS;AACX,kBAAI,CAAC,KAAK,SAAS;AACjB,qBAAK,UAAU;AACf,uBAAO,WAAW,OAAO;AAAA,cAC3B;AACA;AAAA,YACF;AACA,gBAAI,EAAE,aAAa,OAAO,QAAQ;AAChC,yBAAW,IAAI;AAAA,YACjB;AAAA,UACF;AACA,iBAAO,QAAQ,CAAC,UAAU;AACxB,gBAAI,CAAC,MAAM,KAAK,QAAQ;AACtB,qBAAO,KAAK,IAAI;AAAA,YAClB;AACA,kBAAM,KAAK,OAAO,OAAO,UAAU,IAAI;AAAA,UACzC,CAAC;AAAA,QACH,GAAG,OAAO,CAAC,MAAM,MAAM,eAAe;AACpC,cAAI,OAAO,eAAe;AAC1B,cAAI,SAAS,CAAC;AACd,cAAI;AACJ,cAAI,QAAQ,GAAG,MAAM;AACnB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B,WAAW,CAAC,QAAQ,CAAC,QAAQ;AAC3B,gBAAI,SAAS,GAAG,WAAW,YAAY,EAAE,cAAc,MAAM,CAAC;AAC9D,yBAAa,OAAO;AACpB,mBAAO,OAAO;AACd,gBAAI,GAAG,aAAa,IAAI,GAAG;AACzB,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,gBAAI,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACxB,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AAAA,UACF;AACA,cAAI,QAAQ,EAAE,MAAM,MAAM,YAAY,QAAQ,CAAC,EAAE;AACjD,cAAI,YAAY,KAAK,MAAM,KAAK;AAChC,oBAAU,QAAQ;AAClB,gBAAM,OAAO;AACb,cAAI,MAAM;AACR,eAAG,OAAO;AAAA,UACZ,WAAW,MAAM;AACf,iBAAK,UAAU;AACf,gBAAI,KAAK,OAAO;AACd,mBAAK,MAAM,OAAO,KAAK,KAAK;AAAA,YAC9B;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,SAAS,CAAC,eAAe;AAC1B,cAAI,SAAS,GAAG,WAAW,YAAY,EAAE,cAAc,MAAM,CAAC;AAC9D,cAAI,CAAC,GAAG,aAAa,OAAO,IAAI,GAAG;AACjC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,OAAO,OAAO;AAClB,cAAI,QAAQ,KAAK;AACjB,cAAI,SAAS,GAAG,UAAU,KAAK;AAC/B,iBAAO,KAAK,GAAG,SAAS,EAAE,QAAQ,CAAC,SAAS;AAC1C,gBAAI,UAAU,GAAG,UAAU,IAAI;AAC/B,mBAAO,SAAS;AACd,kBAAI,OAAO,QAAQ;AACnB,kBAAI,OAAO,SAAS,QAAQ,KAAK,GAAG;AAClC,mBAAG,YAAY,OAAO;AAAA,cACxB;AACA,wBAAU;AAAA,YACZ;AAAA,UACF,CAAC;AACD,eAAK,UAAU;AACf,cAAI,MAAM,KAAK,MAAM,OAAO,QAAQ,KAAK;AACzC,eAAK,MAAM,OAAO,OAAO,KAAK,CAAC;AAAA,QACjC,GAAG,QAAQ,CAAC,QAAQW,WAAS,OAAO,SAAS,OAAO,QAAQA,MAAI,GAAG,OAAO,CAAC,MAAM,MAAM,QAAQ;AAC7F,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAIA,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,CAACA,UAAQA,WAAS,OAAOA,WAAS,MAAM;AAC1C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,UAAU,QAAQA,MAAI;AACvC,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,OAAO;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAAS,MAAM,QAAQA,QAAM,MAAM,GAAG;AAAA,QACtD,GAAG,QAAQ,CAAC,MAAM,SAAS;AACzB,iBAAO,SAAS,SAAS,OAAO;AAChC,kBAAQ;AACR,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAAA,QAC/B,GAAG,OAAO,CAAC,MAAM,SAAS;AACxB,iBAAO,SAAS,SAAS,OAAO;AAChC,kBAAQ,MAAM;AACd,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAAA,QAC/B,GAAG,WAAW,CAAC,MAAM,SAAS;AAC5B,cAAI,OAAO,KAAK,MAAM,GAAG;AACzB,cAAI,IAAI;AACR,mBAASL,KAAI,GAAGA,KAAI,KAAK,QAAQ,EAAEA,IAAG;AACpC,gBAAI,CAAC,KAAKA,EAAC;AACT;AACF,iBAAK,MAAM,KAAKA,EAAC;AACjB,gBAAI;AACF,iBAAG,MAAM,GAAG,IAAI;AAAA,YAClB,SAAS,GAAG;AACV,kBAAI,EAAE,SAAS;AACb,sBAAM;AAAA,YACV;AAAA,UACF;AAAA,QACF,GAAG,OAAO,CAAC,MAAM,MAAM,QAAQ;AAC7B,cAAI,OAAO,OAAO,aAAa;AAC7B,kBAAM;AACN,mBAAO;AAAA,UACT;AACA,kBAAQ;AACR,iBAAO,GAAG,MAAM,MAAM,MAAM,GAAG;AAAA,QACjC,GAAG,SAAS,CAAC,SAAS,YAAY;AAChC,cAAI,CAAC,QAAQ,QAAQ,OAAO,GAAG;AAC7B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,SAAS,GAAG,WAAW,SAAS,EAAE,QAAQ,KAAK,CAAC;AACpD,cAAI,SAAS,OAAO;AACpB,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,KAAK,SAAS,OAAO;AACnC,cAAI,UAAU,GAAG,UAAU,QAAQ,OAAO;AAC1C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,SAAS;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,SAAS,QAAQ,QAAQ,SAAS,OAAO;AAAA,QACzD,GAAG,QAAQ,CAAC,UAAU,aAAa;AACjC,cAAI,cAAc,KAAK,QAAQ,QAAQ;AACvC,cAAI,cAAc,KAAK,QAAQ,QAAQ;AACvC,cAAI,WAAW,KAAK,SAAS,QAAQ;AACrC,cAAI,WAAW,KAAK,SAAS,QAAQ;AACrC,cAAI,QAAQ,SAAS;AACrB,mBAAS,GAAG,WAAW,UAAU,EAAE,QAAQ,KAAK,CAAC;AACjD,oBAAU,OAAO;AACjB,mBAAS,GAAG,WAAW,UAAU,EAAE,QAAQ,KAAK,CAAC;AACjD,oBAAU,OAAO;AACjB,cAAI,CAAC,WAAW,CAAC;AACf,kBAAM,IAAI,GAAG,WAAW,EAAE;AAC5B,cAAI,QAAQ,UAAU,QAAQ,OAAO;AACnC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,WAAW,GAAG,WAAW,SAAS,QAAQ;AAC9C,cAAI,WAAW,QAAQ,SAAS,UAAU,WAAW;AACrD,cAAI,SAAS,OAAO,CAAC,MAAM,KAAK;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,qBAAW,QAAQ,SAAS,UAAU,WAAW;AACjD,cAAI,SAAS,OAAO,CAAC,MAAM,KAAK;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI;AACF,uBAAW,GAAG,WAAW,SAAS,QAAQ;AAAA,UAC5C,SAAS,GAAG;AAAA,UACZ;AACA,cAAI,aAAa,UAAU;AACzB;AAAA,UACF;AACA,cAAI,QAAQ,GAAG,MAAM,SAAS,IAAI;AAClC,cAAI,UAAU,GAAG,UAAU,SAAS,UAAU,KAAK;AACnD,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,oBAAU,WAAW,GAAG,UAAU,SAAS,UAAU,KAAK,IAAI,GAAG,UAAU,SAAS,QAAQ;AAC5F,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,QAAQ,SAAS,QAAQ;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,QAAQ,KAAK,YAAY,GAAG,aAAa,QAAQ,GAAG;AACtE,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY,SAAS;AACvB,sBAAU,GAAG,gBAAgB,SAAS,GAAG;AACzC,gBAAI,SAAS;AACX,oBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,YACjC;AAAA,UACF;AACA,aAAG,eAAe,QAAQ;AAC1B,cAAI;AACF,oBAAQ,SAAS,OAAO,UAAU,SAAS,QAAQ;AAAA,UACrD,SAAS,GAAG;AACV,kBAAM;AAAA,UACR,UAAE;AACA,eAAG,YAAY,QAAQ;AAAA,UACzB;AAAA,QACF,GAAG,OAAO,CAAC,SAAS;AAClB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAIK,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,cAAI,UAAU,GAAG,UAAU,QAAQA,QAAM,IAAI;AAC7C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,OAAO;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,SAAS,MAAM,QAAQA,MAAI;AAClC,aAAG,YAAY,IAAI;AAAA,QACrB,GAAG,SAAS,CAAC,SAAS;AACpB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK,SAAS,QAAQ,IAAI;AAAA,QACnC,GAAG,QAAQ,CAAC,SAAS;AACnB,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,SAAS,OAAO;AACpB,cAAI,CAAC,QAAQ;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAIA,SAAO,KAAK,SAAS,IAAI;AAC7B,cAAI,OAAO,GAAG,WAAW,QAAQA,MAAI;AACrC,cAAI,UAAU,GAAG,UAAU,QAAQA,QAAM,KAAK;AAC9C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,cAAI,CAAC,OAAO,SAAS,QAAQ;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,aAAa,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,SAAS,OAAO,QAAQA,MAAI;AACnC,aAAG,YAAY,IAAI;AAAA,QACrB,GAAG,UAAU,CAAC,SAAS;AACrB,cAAI,SAAS,GAAG,WAAW,IAAI;AAC/B,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,KAAK,SAAS,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,QAAQ,QAAQ,GAAG,QAAQ,KAAK,MAAM,GAAG,KAAK,SAAS,SAAS,IAAI,CAAC;AAAA,QAC9E,GAAG,MAAM,CAAC,MAAM,eAAe;AAC7B,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,cAAI,OAAO,OAAO;AAClB,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,KAAK,SAAS,QAAQ,IAAI;AAAA,QACnC,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,MAAM,eAAe;AAC1E,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,MAAM,OAAO,OAAO,KAAK,OAAO,CAAC,MAAM,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QAC9F,GAAG,QAAQ,CAAC,MAAM,SAAS;AACzB,aAAG,MAAM,MAAM,MAAM,IAAI;AAAA,QAC3B,GAAG,QAAQ,CAAC,IAAI,SAAS;AACvB,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,aAAG,MAAM,OAAO,MAAM,IAAI;AAAA,QAC5B,GAAG,OAAO,CAAC,MAAM,KAAK,KAAK,eAAe;AACxC,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC;AACxD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QACvD,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ;AAC7B,aAAG,MAAM,MAAM,KAAK,KAAK,IAAI;AAAA,QAC/B,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ;AAC3B,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,aAAG,MAAM,OAAO,MAAM,KAAK,GAAG;AAAA,QAChC,GAAG,UAAU,CAAC,MAAM,QAAQ;AAC1B,cAAI,MAAM,GAAG;AACX,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI,CAAC,KAAK,SAAS,SAAS;AAC1B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,MAAM,KAAK,IAAI,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,GAAG,OAAO,KAAK,IAAI,GAAG;AACzB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,gBAAgB,MAAM,GAAG;AAC1C,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,eAAK,SAAS,QAAQ,MAAM,EAAE,MAAM,KAAK,WAAW,KAAK,IAAI,EAAE,CAAC;AAAA,QAClE,GAAG,WAAW,CAAC,IAAI,QAAQ;AACzB,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,aAAG,SAAS,OAAO,MAAM,GAAG;AAAA,QAC9B,GAAG,OAAO,CAAC,MAAM,OAAO,UAAU;AAChC,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,OAAO;AAClB,eAAK,SAAS,QAAQ,MAAM,EAAE,WAAW,KAAK,IAAI,OAAO,KAAK,EAAE,CAAC;AAAA,QACnE,GAAG,MAAM,CAAC,MAAM,OAAO,SAAS;AAC9B,cAAI,SAAS,IAAI;AACf,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,kBAAQ,OAAO,SAAS,WAAW,qBAAqB,KAAK,IAAI;AACjE,iBAAO,OAAO,QAAQ,cAAc,MAAM;AAC1C,cAAI,QAAQ,IAAI;AACd,mBAAO,OAAO,OAAO;AAAA,UACvB,OAAO;AACL,mBAAO;AAAA,UACT;AACA,cAAI;AACJ,cAAI,OAAO,QAAQ,UAAU;AAC3B,mBAAO;AAAA,UACT,OAAO;AACL,mBAAO,KAAK,UAAU,IAAI;AAC1B,gBAAI;AACF,kBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,EAAE,QAAQ,QAAQ,CAAC;AAC9D,qBAAO,OAAO;AAAA,YAChB,SAAS,GAAG;AAAA,YACZ;AAAA,UACF;AACA,cAAI,UAAU;AACd,cAAI,QAAQ,IAAI;AACd,gBAAI,MAAM;AACR,kBAAI,QAAQ,KAAK;AACf,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF,OAAO;AACL,qBAAO,GAAG,MAAM,MAAM,MAAM,CAAC;AAC7B,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,cAAI,CAAC,MAAM;AACT,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,KAAK,IAAI,GAAG;AAC1B,qBAAS,CAAC;AAAA,UACZ;AACA,cAAI,QAAQ,SAAS,CAAC,GAAG,MAAM,KAAK,IAAI,GAAG;AACzC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,SAAS;AACZ,gBAAI,UAAU,GAAG,QAAQ,MAAM,KAAK;AACpC,gBAAI,SAAS;AACX,oBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,YACjC;AAAA,UACF;AACA,cAAI,QAAQ,OAAO,CAAC,SAAS;AAC3B,eAAG,SAAS,MAAM,CAAC;AAAA,UACrB;AACA,mBAAS,EAAE,MAAM,MAAM;AACvB,cAAI,SAAS,GAAG,aAAa,EAAE,MAAM,MAAM,GAAG,QAAQ,IAAI,GAAG,OAAO,UAAU,MAAM,UAAU,GAAG,YAAY,KAAK,YAAY,UAAU,CAAC,GAAG,OAAO,MAAM,CAAC;AAC1J,cAAI,OAAO,WAAW,MAAM;AAC1B,mBAAO,WAAW,KAAK,MAAM;AAAA,UAC/B;AACA,cAAIb,QAAO,cAAc,KAAK,EAAE,QAAQ,IAAI;AAC1C,gBAAI,CAAC,GAAG;AACN,iBAAG,YAAY,CAAC;AAClB,gBAAI,EAAE,QAAQ,GAAG,YAAY;AAC3B,iBAAG,UAAU,IAAI,IAAI;AAAA,YACvB;AAAA,UACF;AACA,iBAAO;AAAA,QACT,GAAG,OAAO,CAAC,WAAW;AACpB,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,OAAO;AACT,mBAAO,WAAW;AACpB,cAAI;AACF,gBAAI,OAAO,WAAW,OAAO;AAC3B,qBAAO,WAAW,MAAM,MAAM;AAAA,YAChC;AAAA,UACF,SAAS,GAAG;AACV,kBAAM;AAAA,UACR,UAAE;AACA,eAAG,YAAY,OAAO,EAAE;AAAA,UAC1B;AACA,iBAAO,KAAK;AAAA,QACd,GAAG,UAAU,CAAC,WAAW,OAAO,OAAO,MAAM,QAAQ,CAAC,QAAQ,QAAQ,WAAW;AAC/E,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,OAAO,YAAY,CAAC,OAAO,WAAW,QAAQ;AACjD,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,KAAK,UAAU,KAAK,UAAU,GAAG;AAC7C,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,WAAW,OAAO,WAAW,OAAO,QAAQ,QAAQ,MAAM;AACjE,iBAAO,WAAW,CAAC;AACnB,iBAAO,OAAO;AAAA,QAChB,GAAG,MAAM,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,aAAa;AACrD,cAAI,SAAS,KAAK,WAAW,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,MAAM;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,OAAO,YAAY;AACjC,cAAI,CAAC,SAAS;AACZ,uBAAW,OAAO;AAAA,UACpB,WAAW,CAAC,OAAO,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,YAAY,OAAO,WAAW,KAAK,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAC/E,cAAI,CAAC;AACH,mBAAO,YAAY;AACrB,iBAAO;AAAA,QACT,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,WAAW;AAC9D,cAAI,SAAS,KAAK,WAAW,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC9B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,OAAO,YAAY,OAAO,QAAQ,MAAM;AAC1C,eAAG,OAAO,QAAQ,GAAG,CAAC;AAAA,UACxB;AACA,cAAI,UAAU,OAAO,YAAY;AACjC,cAAI,CAAC,SAAS;AACZ,uBAAW,OAAO;AAAA,UACpB,WAAW,CAAC,OAAO,UAAU;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,eAAe,OAAO,WAAW,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,UAAU,MAAM;AAC3F,cAAI,CAAC;AACH,mBAAO,YAAY;AACrB,iBAAO;AAAA,QACT,GAAG,UAAU,CAAC,QAAQ,QAAQ,WAAW;AACvC,cAAI,GAAG,SAAS,MAAM,GAAG;AACvB,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,SAAS,KAAK,UAAU,GAAG;AAC7B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,KAAK,CAAC,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC/D,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,OAAO,WAAW,UAAU;AAC/B,kBAAM,IAAI,GAAG,WAAW,GAAG;AAAA,UAC7B;AACA,iBAAO,WAAW,SAAS,QAAQ,QAAQ,MAAM;AAAA,QACnD,GAAG,MAAM,CAAC,QAAQ,QAAQ,UAAU,MAAM,UAAU;AAClD,eAAK,OAAO,OAAO,MAAM,QAAQ,OAAO,MAAM,OAAO,QAAQ,aAAa,GAAG;AAC3E,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,eAAK,OAAO,QAAQ,aAAa,GAAG;AAClC,kBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,UAC3B;AACA,cAAI,CAAC,OAAO,WAAW,MAAM;AAC3B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,WAAW,KAAK,QAAQ,QAAQ,UAAU,MAAM,KAAK;AAAA,QACrE,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,cAAc;AACvD,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,mBAAO;AAAA,UACT;AACA,iBAAO,OAAO,WAAW,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,SAAS;AAAA,QAC1E,GAAG,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ;AACrD,cAAI,CAAC,OAAO,WAAW,OAAO;AAC5B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,iBAAO,OAAO,WAAW,MAAM,QAAQ,KAAK,GAAG;AAAA,QACjD,GAAG,UAAU,CAAC,MAAM,OAAO,CAAC,MAAM;AAChC,eAAK,QAAQ,KAAK,SAAS;AAC3B,eAAK,WAAW,KAAK,YAAY;AACjC,cAAI,KAAK,aAAa,UAAU,KAAK,aAAa,UAAU;AAC1D,kBAAM,IAAI,MAAM,0BAA0B,KAAK,QAAQ,GAAG;AAAA,UAC5D;AACA,cAAI;AACJ,cAAI,SAAS,GAAG,KAAK,MAAM,KAAK,KAAK;AACrC,cAAI,OAAO,GAAG,KAAK,IAAI;AACvB,cAAI,SAAS,KAAK;AAClB,cAAI,MAAM,IAAI,WAAW,MAAM;AAC/B,aAAG,KAAK,QAAQ,KAAK,GAAG,QAAQ,CAAC;AACjC,cAAI,KAAK,aAAa,QAAQ;AAC5B,kBAAM,kBAAkB,KAAK,CAAC;AAAA,UAChC,WAAW,KAAK,aAAa,UAAU;AACrC,kBAAM;AAAA,UACR;AACA,aAAG,MAAM,MAAM;AACf,iBAAO;AAAA,QACT,GAAG,WAAW,CAAC,MAAM,MAAM,OAAO,CAAC,MAAM;AACvC,eAAK,QAAQ,KAAK,SAAS;AAC3B,cAAI,SAAS,GAAG,KAAK,MAAM,KAAK,OAAO,KAAK,IAAI;AAChD,cAAI,OAAO,QAAQ,UAAU;AAC3B,gBAAI,MAAM,IAAI,WAAW,gBAAgB,IAAI,IAAI,CAAC;AAClD,gBAAI,iBAAiB,kBAAkB,MAAM,KAAK,GAAG,IAAI,MAAM;AAC/D,eAAG,MAAM,QAAQ,KAAK,GAAG,gBAAgB,QAAQ,KAAK,MAAM;AAAA,UAC9D,WAAW,YAAY,OAAO,IAAI,GAAG;AACnC,eAAG,MAAM,QAAQ,MAAM,GAAG,KAAK,YAAY,QAAQ,KAAK,MAAM;AAAA,UAChE,OAAO;AACL,kBAAM,IAAI,MAAM,uBAAuB;AAAA,UACzC;AACA,aAAG,MAAM,MAAM;AAAA,QACjB,GAAG,KAAK,MAAM,GAAG,aAAa,OAAO,CAAC,SAAS;AAC7C,cAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,cAAI,OAAO,SAAS,MAAM;AACxB,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,CAAC,GAAG,MAAM,OAAO,KAAK,IAAI,GAAG;AAC/B,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,UAAU,GAAG,gBAAgB,OAAO,MAAM,GAAG;AACjD,cAAI,SAAS;AACX,kBAAM,IAAI,GAAG,WAAW,OAAO;AAAA,UACjC;AACA,aAAG,cAAc,OAAO;AAAA,QAC1B,GAAG,0BAA0B,MAAM;AACjC,aAAG,MAAM,MAAM;AACf,aAAG,MAAM,OAAO;AAChB,aAAG,MAAM,gBAAgB;AAAA,QAC3B,GAAG,sBAAsB,MAAM;AAC7B,aAAG,MAAM,MAAM;AACf,aAAG,eAAe,GAAG,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,OAAO,CAAC;AAC7G,aAAG,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;AACtC,cAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,eAAe;AAClD,cAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,gBAAgB;AACnD,aAAG,MAAM,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC;AACrC,aAAG,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;AACtC,cAAI,eAAe,IAAI,WAAW,IAAI,GAAG,aAAa;AACtD,cAAI,aAAa,MAAM;AACrB,gBAAI,eAAe,GAAG;AACpB,2BAAa,WAAW,YAAY,EAAE;AAAA,YACxC;AACA,mBAAO,aAAa,EAAE,UAAU;AAAA,UAClC;AACA,aAAG,aAAa,QAAQ,UAAU,UAAU;AAC5C,aAAG,aAAa,QAAQ,WAAW,UAAU;AAC7C,aAAG,MAAM,UAAU;AACnB,aAAG,MAAM,cAAc;AAAA,QACzB,GAAG,0BAA0B,MAAM;AACjC,aAAG,MAAM,OAAO;AAChB,cAAI,YAAY,GAAG,MAAM,YAAY;AACrC,aAAG,MAAM,eAAe;AACxB,aAAG,MAAM,EAAE,OAAO,MAAM;AACtB,gBAAI,OAAO,GAAG,WAAW,WAAW,MAAM,QAAQ,KAAK,EAAE;AACzD,iBAAK,WAAW,EAAE,QAAQ,CAAC,QAAQa,WAAS;AAC1C,kBAAI,KAAK,CAACA;AACV,kBAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,kBAAI,MAAM,EAAE,QAAQ,MAAM,OAAO,EAAE,YAAY,OAAO,GAAG,UAAU,EAAE,UAAU,MAAM,OAAO,KAAK,EAAE;AACnG,kBAAI,SAAS;AACb,qBAAO;AAAA,YACT,EAAE;AACF,mBAAO;AAAA,UACT,EAAE,GAAG,CAAC,GAAG,eAAe;AAAA,QAC1B,GAAG,uBAAuB,MAAM;AAC9B,cAAIb,QAAO,OAAO,GAAG;AACnB,eAAG,aAAa,QAAQ,SAASA,QAAO,OAAO,CAAC;AAAA,UAClD,OAAO;AACL,eAAG,QAAQ,YAAY,YAAY;AAAA,UACrC;AACA,cAAIA,QAAO,QAAQ,GAAG;AACpB,eAAG,aAAa,QAAQ,UAAU,MAAMA,QAAO,QAAQ,CAAC;AAAA,UAC1D,OAAO;AACL,eAAG,QAAQ,YAAY,aAAa;AAAA,UACtC;AACA,cAAIA,QAAO,QAAQ,GAAG;AACpB,eAAG,aAAa,QAAQ,UAAU,MAAMA,QAAO,QAAQ,CAAC;AAAA,UAC1D,OAAO;AACL,eAAG,QAAQ,aAAa,aAAa;AAAA,UACvC;AACA,cAAI,QAAQ,GAAG,KAAK,cAAc,CAAC;AACnC,cAAI,SAAS,GAAG,KAAK,eAAe,CAAC;AACrC,cAAI,SAAS,GAAG,KAAK,eAAe,CAAC;AAAA,QACvC,GAAG,kBAAkB,MAAM;AACzB,cAAI,GAAG;AACL;AACF,aAAG,aAAa,SAAS,WAAW,OAAO,MAAM;AAC/C,iBAAK,OAAO;AACZ,iBAAK,OAAO;AACZ,iBAAK,WAAW,SAAS,QAAQ;AAC/B,mBAAK,QAAQ;AAAA,YACf;AACA,iBAAK,SAAS,KAAK;AACnB,iBAAK,UAAU;AAAA,UACjB;AACA,aAAG,WAAW,YAAY,IAAI,MAAM;AACpC,aAAG,WAAW,UAAU,cAAc,GAAG;AACzC,WAAC,EAAE,EAAE,QAAQ,CAAC,SAAS;AACrB,eAAG,cAAc,IAAI,IAAI,IAAI,GAAG,WAAW,IAAI;AAC/C,eAAG,cAAc,IAAI,EAAE,QAAQ;AAAA,UACjC,CAAC;AAAA,QACH,GAAG,YAAY,MAAM;AACnB,aAAG,iBAAiB;AACpB,aAAG,YAAY,IAAI,MAAM,IAAI;AAC7B,aAAG,MAAM,OAAO,CAAC,GAAG,GAAG;AACvB,aAAG,yBAAyB;AAC5B,aAAG,qBAAqB;AACxB,aAAG,yBAAyB;AAC5B,aAAG,cAAc,EAAE,SAAS,MAAM;AAAA,QACpC,GAAG,MAAM,CAAC,OAAO,QAAQ,UAAU;AACjC,aAAG,KAAK,cAAc;AACtB,aAAG,iBAAiB;AACpB,UAAAA,QAAO,OAAO,IAAI,SAASA,QAAO,OAAO;AACzC,UAAAA,QAAO,QAAQ,IAAI,UAAUA,QAAO,QAAQ;AAC5C,UAAAA,QAAO,QAAQ,IAAI,SAASA,QAAO,QAAQ;AAC3C,aAAG,sBAAsB;AAAA,QAC3B,GAAG,MAAM,MAAM;AACb,aAAG,KAAK,cAAc;AACtB,mBAASQ,KAAI,GAAGA,KAAI,GAAG,QAAQ,QAAQA,MAAK;AAC1C,gBAAI,SAAS,GAAG,QAAQA,EAAC;AACzB,gBAAI,CAAC,QAAQ;AACX;AAAA,YACF;AACA,eAAG,MAAM,MAAM;AAAA,UACjB;AAAA,QACF,GAAG,YAAY,CAAC,MAAM,wBAAwB;AAC5C,cAAI,MAAM,GAAG,YAAY,MAAM,mBAAmB;AAClD,cAAI,CAAC,IAAI,QAAQ;AACf,mBAAO;AAAA,UACT;AACA,iBAAO,IAAI;AAAA,QACb,GAAG,aAAa,CAAC,MAAM,wBAAwB;AAC7C,cAAI;AACF,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;AACjE,mBAAO,OAAO;AAAA,UAChB,SAAS,GAAG;AAAA,UACZ;AACA,cAAI,MAAM,EAAE,QAAQ,OAAO,QAAQ,OAAO,OAAO,GAAG,MAAM,MAAM,MAAM,MAAM,QAAQ,MAAM,cAAc,OAAO,YAAY,MAAM,cAAc,KAAK;AACpJ,cAAI;AACF,gBAAI,SAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,KAAK,CAAC;AACjD,gBAAI,eAAe;AACnB,gBAAI,aAAa,OAAO;AACxB,gBAAI,eAAe,OAAO;AAC1B,gBAAI,OAAO,KAAK,SAAS,IAAI;AAC7B,qBAAS,GAAG,WAAW,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;AAC7D,gBAAI,SAAS;AACb,gBAAI,OAAO,OAAO;AAClB,gBAAI,SAAS,OAAO;AACpB,gBAAI,OAAO,OAAO,KAAK;AACvB,gBAAI,SAAS,OAAO,SAAS;AAAA,UAC/B,SAAS,GAAG;AACV,gBAAI,QAAQ,EAAE;AAAA,UAChB;AACA,iBAAO;AAAA,QACT,GAAG,YAAY,CAAC,QAAQ,MAAM,SAAS,aAAa;AAClD,mBAAS,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM;AAC/D,cAAI,QAAQ,KAAK,MAAM,GAAG,EAAE,QAAQ;AACpC,iBAAO,MAAM,QAAQ;AACnB,gBAAI,OAAO,MAAM,IAAI;AACrB,gBAAI,CAAC;AACH;AACF,gBAAI,UAAU,KAAK,MAAM,QAAQ,IAAI;AACrC,gBAAI;AACF,iBAAG,MAAM,OAAO;AAAA,YAClB,SAAS,GAAG;AAAA,YACZ;AACA,qBAAS;AAAA,UACX;AACA,iBAAO;AAAA,QACT,GAAG,YAAY,CAAC,QAAQK,QAAM,YAAY,SAAS,aAAa;AAC9D,cAAI,OAAO,KAAK,MAAM,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM,GAAGA,MAAI;AACnF,cAAI,OAAO,WAAW,SAAS,QAAQ;AACvC,iBAAO,GAAG,OAAO,MAAM,IAAI;AAAA,QAC7B,GAAG,gBAAgB,CAAC,QAAQA,QAAM,MAAM,SAAS,UAAU,WAAW;AACpE,cAAI,OAAOA;AACX,cAAI,QAAQ;AACV,qBAAS,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM;AAC/D,mBAAOA,SAAO,KAAK,MAAM,QAAQA,MAAI,IAAI;AAAA,UAC3C;AACA,cAAI,OAAO,WAAW,SAAS,QAAQ;AACvC,cAAI,OAAO,GAAG,OAAO,MAAM,IAAI;AAC/B,cAAI,MAAM;AACR,gBAAI,OAAO,QAAQ,UAAU;AAC3B,kBAAI,MAAM,IAAI,MAAM,KAAK,MAAM;AAC/B,uBAASL,KAAI,GAAG,MAAM,KAAK,QAAQA,KAAI,KAAK,EAAEA;AAC5C,oBAAIA,EAAC,IAAI,KAAK,WAAWA,EAAC;AAC5B,qBAAO;AAAA,YACT;AACA,eAAG,MAAM,MAAM,OAAO,GAAG;AACzB,gBAAI,SAAS,GAAG,KAAK,MAAM,GAAG;AAC9B,eAAG,MAAM,QAAQ,MAAM,GAAG,KAAK,QAAQ,GAAG,MAAM;AAChD,eAAG,MAAM,MAAM;AACf,eAAG,MAAM,MAAM,IAAI;AAAA,UACrB;AACA,iBAAO;AAAA,QACT,GAAG,cAAc,CAAC,QAAQK,QAAM,OAAO,WAAW;AAChD,cAAI,OAAO,KAAK,MAAM,OAAO,UAAU,WAAW,SAAS,GAAG,QAAQ,MAAM,GAAGA,MAAI;AACnF,cAAI,OAAO,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;AACvC,cAAI,CAAC,GAAG,aAAa;AACnB,eAAG,aAAa,QAAQ;AAC1B,cAAI,MAAM,GAAG,QAAQ,GAAG,aAAa,SAAS,CAAC;AAC/C,aAAG,eAAe,KAAK,EAAE,MAAM,CAAC,WAAW;AACzC,mBAAO,WAAW;AAAA,UACpB,GAAG,OAAO,CAAC,WAAW;AACpB,gBAAI,UAAU,OAAO,UAAU,OAAO,OAAO,QAAQ;AACnD,qBAAO,EAAE;AAAA,YACX;AAAA,UACF,GAAG,MAAM,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAChD,gBAAI,YAAY;AAChB,qBAASL,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,kBAAI;AACJ,kBAAI;AACF,yBAAS,MAAM;AAAA,cACjB,SAAS,GAAG;AACV,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AACA,kBAAI,WAAW,UAAU,cAAc,GAAG;AACxC,sBAAM,IAAI,GAAG,WAAW,CAAC;AAAA,cAC3B;AACA,kBAAI,WAAW,QAAQ,WAAW;AAChC;AACF;AACA,qBAAO,SAASA,EAAC,IAAI;AAAA,YACvB;AACA,gBAAI,WAAW;AACb,qBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,YACnC;AACA,mBAAO;AAAA,UACT,GAAG,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AACjD,qBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,kBAAI;AACF,uBAAO,OAAO,SAASA,EAAC,CAAC;AAAA,cAC3B,SAAS,GAAG;AACV,sBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,cAC5B;AAAA,YACF;AACA,gBAAI,QAAQ;AACV,qBAAO,KAAK,YAAY,KAAK,IAAI;AAAA,YACnC;AACA,mBAAOA;AAAA,UACT,EAAE,CAAC;AACH,iBAAO,GAAG,MAAM,MAAM,MAAM,GAAG;AAAA,QACjC,GAAG,eAAe,CAAC,QAAQ;AACzB,cAAI,IAAI,YAAY,IAAI,YAAY,IAAI,QAAQ,IAAI;AAClD,mBAAO;AACT,cAAI,OAAO,kBAAkB,aAAa;AACxC,kBAAM,IAAI,MAAM,kMAAkM;AAAA,UACpN,WAAW,OAAO;AAChB,gBAAI;AACF,kBAAI,WAAW,mBAAmB,MAAM,IAAI,GAAG,GAAG,IAAI;AACtD,kBAAI,YAAY,IAAI,SAAS;AAAA,YAC/B,SAAS,GAAG;AACV,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AAAA,UACF,OAAO;AACL,kBAAM,IAAI,MAAM,+CAA+C;AAAA,UACjE;AAAA,QACF,GAAG,gBAAgB,CAAC,QAAQK,QAAM,KAAK,SAAS,aAAa;AAC3D,mBAAS,iBAAiB;AACxB,iBAAK,cAAc;AACnB,iBAAK,SAAS,CAAC;AAAA,UACjB;AACA,yBAAe,UAAU,MAAM,SAAS,mBAAmB,KAAK;AAC9D,gBAAI,MAAM,KAAK,SAAS,KAAK,MAAM,GAAG;AACpC,qBAAO;AAAA,YACT;AACA,gBAAI,cAAc,MAAM,KAAK;AAC7B,gBAAI,WAAW,MAAM,KAAK,YAAY;AACtC,mBAAO,KAAK,OAAO,QAAQ,EAAE,WAAW;AAAA,UAC1C;AACA,yBAAe,UAAU,gBAAgB,SAAS,6BAA6B,QAAQ;AACrF,iBAAK,SAAS;AAAA,UAChB;AACA,yBAAe,UAAU,cAAc,SAAS,6BAA6B;AAC3E,gBAAI,MAAM,IAAI,eAAe;AAC7B,gBAAI,KAAK,QAAQ,KAAK,KAAK;AAC3B,gBAAI,KAAK,IAAI;AACb,gBAAI,EAAE,IAAI,UAAU,OAAO,IAAI,SAAS,OAAO,IAAI,WAAW;AAC5D,oBAAM,IAAI,MAAM,mBAAmB,MAAM,eAAe,IAAI,MAAM;AACpE,gBAAI,aAAa,OAAO,IAAI,kBAAkB,gBAAgB,CAAC;AAC/D,gBAAI;AACJ,gBAAI,kBAAkB,SAAS,IAAI,kBAAkB,eAAe,MAAM,WAAW;AACrF,gBAAI,YAAY,SAAS,IAAI,kBAAkB,kBAAkB,MAAM,WAAW;AAClF,gBAAI,YAAY,OAAO;AACvB,gBAAI,CAAC;AACH,0BAAY;AACd,gBAAI,QAAQ,CAAC,MAAM,OAAO;AACxB,kBAAI,OAAO;AACT,sBAAM,IAAI,MAAM,oBAAoB,OAAO,OAAO,KAAK,0BAA0B;AACnF,kBAAI,KAAK,aAAa;AACpB,sBAAM,IAAI,MAAM,UAAU,aAAa,qCAAqC;AAC9E,kBAAI,OAAO,IAAI,eAAe;AAC9B,mBAAK,KAAK,OAAO,KAAK,KAAK;AAC3B,kBAAI,eAAe;AACjB,qBAAK,iBAAiB,SAAS,WAAW,OAAO,MAAM,EAAE;AAC3D,mBAAK,eAAe;AACpB,kBAAI,KAAK,kBAAkB;AACzB,qBAAK,iBAAiB,oCAAoC;AAAA,cAC5D;AACA,mBAAK,KAAK,IAAI;AACd,kBAAI,EAAE,KAAK,UAAU,OAAO,KAAK,SAAS,OAAO,KAAK,WAAW;AAC/D,sBAAM,IAAI,MAAM,mBAAmB,MAAM,eAAe,KAAK,MAAM;AACrE,kBAAI,KAAK,aAAa,QAAQ;AAC5B,uBAAO,IAAI,WAAW,KAAK,YAAY,CAAC,CAAC;AAAA,cAC3C;AACA,qBAAO,mBAAmB,KAAK,gBAAgB,IAAI,IAAI;AAAA,YACzD;AACA,gBAAI,aAAa;AACjB,uBAAW,cAAc,CAAC,aAAa;AACrC,kBAAI,QAAQ,WAAW;AACvB,kBAAI,OAAO,WAAW,KAAK,YAAY;AACvC,oBAAM,KAAK,IAAI,KAAK,aAAa,CAAC;AAClC,kBAAI,OAAO,WAAW,OAAO,QAAQ,KAAK,aAAa;AACrD,2BAAW,OAAO,QAAQ,IAAI,MAAM,OAAO,GAAG;AAAA,cAChD;AACA,kBAAI,OAAO,WAAW,OAAO,QAAQ,KAAK;AACxC,sBAAM,IAAI,MAAM,eAAe;AACjC,qBAAO,WAAW,OAAO,QAAQ;AAAA,YACnC,CAAC;AACD,gBAAI,YAAY,CAAC,YAAY;AAC3B,0BAAY,aAAa;AACzB,2BAAa,KAAK,OAAO,CAAC,EAAE;AAC5B,0BAAY;AACZ,kBAAI,6EAA6E;AAAA,YACnF;AACA,iBAAK,UAAU;AACf,iBAAK,aAAa;AAClB,iBAAK,cAAc;AAAA,UACrB;AACA,cAAI,OAAO,kBAAkB,aAAa;AACxC,gBAAI,CAAC;AACH,oBAAM;AACR,gBAAI,YAAY,IAAI,eAAe;AACnC,mBAAO,iBAAiB,WAAW,EAAE,QAAQ,EAAE,KAAK,WAAW;AAC7D,kBAAI,CAAC,KAAK,aAAa;AACrB,qBAAK,YAAY;AAAA,cACnB;AACA,qBAAO,KAAK;AAAA,YACd,EAAE,GAAG,WAAW,EAAE,KAAK,WAAW;AAChC,kBAAI,CAAC,KAAK,aAAa;AACrB,qBAAK,YAAY;AAAA,cACnB;AACA,qBAAO,KAAK;AAAA,YACd,EAAE,EAAE,CAAC;AACL,gBAAI,aAAa,EAAE,UAAU,OAAO,UAAU,UAAU;AAAA,UAC1D,OAAO;AACL,gBAAI,aAAa,EAAE,UAAU,OAAO,IAAI;AAAA,UAC1C;AACA,cAAI,OAAO,GAAG,WAAW,QAAQA,QAAM,YAAY,SAAS,QAAQ;AACpE,cAAI,WAAW,UAAU;AACvB,iBAAK,WAAW,WAAW;AAAA,UAC7B,WAAW,WAAW,KAAK;AACzB,iBAAK,WAAW;AAChB,iBAAK,MAAM,WAAW;AAAA,UACxB;AACA,iBAAO,iBAAiB,MAAM,EAAE,WAAW,EAAE,KAAK,WAAW;AAC3D,mBAAO,KAAK,SAAS;AAAA,UACvB,EAAE,EAAE,CAAC;AACL,cAAI,aAAa,CAAC;AAClB,cAAI,OAAO,OAAO,KAAK,KAAK,UAAU;AACtC,eAAK,QAAQ,CAAC,QAAQ;AACpB,gBAAI,KAAK,KAAK,WAAW,GAAG;AAC5B,uBAAW,GAAG,IAAI,SAAS,oBAAoB;AAC7C,iBAAG,cAAc,IAAI;AACrB,qBAAO,GAAG,MAAM,MAAM,SAAS;AAAA,YACjC;AAAA,UACF,CAAC;AACD,mBAAS,YAAY,QAAQ,QAAQ,QAAQ,QAAQ,UAAU;AAC7D,gBAAI,WAAW,OAAO,KAAK;AAC3B,gBAAI,YAAY,SAAS;AACvB,qBAAO;AACT,gBAAI,OAAO,KAAK,IAAI,SAAS,SAAS,UAAU,MAAM;AACtD,gBAAI,SAAS,OAAO;AAClB,uBAASL,KAAI,GAAGA,KAAI,MAAMA,MAAK;AAC7B,uBAAO,SAASA,EAAC,IAAI,SAAS,WAAWA,EAAC;AAAA,cAC5C;AAAA,YACF,OAAO;AACL,uBAASA,KAAI,GAAGA,KAAI,MAAMA,MAAK;AAC7B,uBAAO,SAASA,EAAC,IAAI,SAAS,IAAI,WAAWA,EAAC;AAAA,cAChD;AAAA,YACF;AACA,mBAAO;AAAA,UACT;AACA,qBAAW,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,aAAa;AAC9D,eAAG,cAAc,IAAI;AACrB,mBAAO,YAAY,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,UAC7D;AACA,qBAAW,OAAO,CAAC,QAAQ,QAAQ,UAAU,MAAM,UAAU;AAC3D,eAAG,cAAc,IAAI;AACrB,gBAAI,MAAM,UAAU,MAAM;AAC1B,gBAAI,CAAC,KAAK;AACR,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,wBAAY,QAAQ,OAAO,KAAK,QAAQ,QAAQ;AAChD,mBAAO,EAAE,KAAK,WAAW,KAAK;AAAA,UAChC;AACA,eAAK,aAAa;AAClB,iBAAO;AAAA,QACT,EAAE;AACF,YAAI,WAAW,EAAE,kBAAkB,GAAG,aAAa,SAAS,OAAO,MAAM,YAAY;AACnF,cAAI,KAAK,MAAM,IAAI,GAAG;AACpB,mBAAO;AAAA,UACT;AACA,cAAI;AACJ,cAAI,UAAU,MAAM;AAClB,kBAAM,GAAG,IAAI;AAAA,UACf,OAAO;AACL,gBAAI,YAAY,SAAS,gBAAgB,KAAK;AAC9C,kBAAM,UAAU;AAAA,UAClB;AACA,cAAI,KAAK,UAAU,GAAG;AACpB,gBAAI,CAAC,YAAY;AACf,oBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,YAC5B;AACA,mBAAO;AAAA,UACT;AACA,iBAAO,KAAK,MAAM,KAAK,IAAI;AAAA,QAC7B,GAAG,QAAQ,SAAS,MAAM,MAAM,KAAK;AACnC,cAAI;AACF,gBAAI,OAAO,KAAK,IAAI;AAAA,UACtB,SAAS,GAAG;AACV,gBAAI,KAAK,EAAE,QAAQ,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,GAAG,QAAQ,EAAE,IAAI,CAAC,GAAG;AAC9E,qBAAO;AAAA,YACT;AACA,kBAAM;AAAA,UACR;AACA,iBAAO,QAAQ,CAAC,IAAI,KAAK;AACzB,iBAAO,MAAM,MAAM,CAAC,IAAI,KAAK;AAC7B,kBAAQ,MAAM,MAAM,CAAC,IAAI,KAAK;AAC9B,iBAAO,MAAM,OAAO,CAAC,IAAI,KAAK;AAC9B,iBAAO,MAAM,OAAO,CAAC,IAAI,KAAK;AAC9B,iBAAO,MAAM,OAAO,CAAC,IAAI,KAAK;AAC9B,oBAAU,CAAC,KAAK,SAAS,IAAI,aAAa,KAAK,MAAM,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AACpS,iBAAO,MAAM,OAAO,CAAC,IAAI;AACzB,iBAAO,MAAM,OAAO,CAAC,IAAI,KAAK;AAC9B,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,cAAI,QAAQ,KAAK,MAAM,QAAQ;AAC/B,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAChU,kBAAQ,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACxC,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAChU,kBAAQ,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACxC,oBAAU,CAAC,KAAK,MAAM,QAAQ,GAAG,MAAM,IAAI,aAAa,KAAK,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAChU,kBAAQ,MAAM,OAAO,CAAC,IAAI,QAAQ,MAAM;AACxC,oBAAU,CAAC,KAAK,QAAQ,IAAI,aAAa,KAAK,KAAK,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,QAAQ,CAAC;AAClS,iBAAO;AAAA,QACT,GAAG,SAAS,SAAS,MAAM,QAAQ,KAAK,OAAO,QAAQ;AACrD,cAAI,CAAC,GAAG,OAAO,OAAO,KAAK,IAAI,GAAG;AAChC,kBAAM,IAAI,GAAG,WAAW,EAAE;AAAA,UAC5B;AACA,cAAI,QAAQ,GAAG;AACb,mBAAO;AAAA,UACT;AACA,cAAI,SAAS,OAAO,MAAM,MAAM,OAAO,GAAG;AAC1C,aAAG,MAAM,QAAQ,QAAQ,QAAQ,KAAK,KAAK;AAAA,QAC7C,GAAG,SAAS,QAAQ,MAAM;AACxB,mBAAS,WAAW;AACpB,cAAI,MAAM,OAAO,SAAS,UAAU,MAAM,CAAC;AAC3C,iBAAO;AAAA,QACT,GAAG,OAAO,KAAK;AACb,cAAI,MAAM,aAAa,GAAG;AAC1B,iBAAO;AAAA,QACT,GAAG,iBAAiB,SAAS,IAAI;AAC/B,cAAI,SAAS,GAAG,iBAAiB,EAAE;AACnC,iBAAO;AAAA,QACT,EAAE;AACF,iBAAS,aAAa,WAAW,aAAa;AAC5C,yBAAe;AACf,2BAAiB;AACjB,cAAI,UAAU;AACd,wBAAc,EAAE,QAAQ,SAAS,QAAQA,IAAG;AAC1C,gBAAI,MAAM,cAAc;AACxB,oBAAQ,YAAYA,KAAI,MAAM,CAAC,IAAI;AACnC,0BAAc,QAAQ,GAAG;AACzB,uBAAW,OAAO,SAAS;AAAA,UAC7B,CAAC;AACD,iBAAO;AAAA,QACT;AACA,iBAAS,mBAAmB,gBAAgB,mBAAmB;AAC7D,8BAAoB;AACpB,iCAAuB;AACvB,cAAIW,WAAU,cAAc;AAC5B,kBAAQ,mBAAmB,CAAC,IAAIA,SAAQ;AACxC,cAAI,UAAU;AACd,UAAAA,SAAQ,QAAQ,SAAS,QAAQ;AAC/B,uBAAW,OAAO,SAAS;AAAA,UAC7B,CAAC;AACD,kBAAQ,sBAAsB,CAAC,IAAI;AACnC,iBAAO;AAAA,QACT;AACA,iBAAS,UAAU,IAAI;AACrB,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,eAAG,MAAM,MAAM;AACf,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,iBAAS,eAAe,IAAI,MAAM;AAChC,oBAAU;AACV,cAAI;AACF,gBAAI,aAAa;AACjB,gBAAI,mBAAmB;AACvB,gBAAI,QAAQ;AACZ;AACE,kBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,kBAAI,OAAO,OAAO,MAAM,IAAI,GAAG,MAAM,OAAO,IAAI,IAAI,IAAI,GAAG,OAAO,OAAO,IAAI,IAAI,IAAI;AAAA,YACvF;AACA,kBAAM,SAAS,CAAC,IAAI;AACpB,mBAAO,OAAO,MAAM,CAAC,IAAI;AACzB,sBAAU,CAAC,eAAe,IAAI,aAAa,YAAY,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,OAAO,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC;AACvS,sBAAU,CAAC,qBAAqB,IAAI,aAAa,kBAAkB,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,OAAO,OAAO,CAAC,IAAI,QAAQ,CAAC;AACpT,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,UAAU,CAAC,QAAQ,KAAK,QAAQ,WAAW;AAC7C,cAAI,MAAM;AACV,mBAASX,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,MAAM,QAAQ,QAAQ,CAAC;AAC3B,gBAAI,MAAM,QAAQ,MAAM,MAAM,CAAC;AAC/B,mBAAO;AACP,gBAAI,OAAO,GAAG,KAAK,QAAQ,OAAO,KAAK,KAAK,MAAM;AAClD,gBAAI,OAAO;AACT,qBAAO;AACT,mBAAO;AACP,gBAAI,OAAO;AACT;AACF,gBAAI,OAAO,WAAW,aAAa;AACjC,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,SAAS,IAAI,KAAK,QAAQ,MAAM;AACvC,mBAAS;AACT,sBAAY;AACZ,oBAAU;AACV,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,gBAAI,MAAM,QAAQ,QAAQ,KAAK,MAAM;AACrC,oBAAQ,SAAS,CAAC,IAAI;AACtB,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,iBAAS,SAAS,IAAI,YAAY,aAAa,QAAQ,WAAW;AAChE,cAAI,SAAS,2BAA2B,YAAY,WAAW;AAC/D,yBAAe;AACf,cAAI;AACF,gBAAI,MAAM,MAAM;AACd,qBAAO;AACT,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,eAAG,OAAO,QAAQ,QAAQ,MAAM;AAChC,sBAAU,CAAC,OAAO,aAAa,IAAI,aAAa,OAAO,UAAU,CAAC,KAAK,IAAI,UAAU,KAAK,IAAI,aAAa,IAAI,CAAC,KAAK,MAAM,aAAa,UAAU,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,MAAM,UAAU,MAAM,IAAI,EAAE,GAAG,OAAO,cAAc,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,YAAY,MAAM,CAAC,IAAI,QAAQ,CAAC;AACtT,gBAAI,OAAO,YAAY,WAAW,KAAK,WAAW;AAChD,qBAAO,WAAW;AACpB,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,WAAW,CAAC,QAAQ,KAAK,QAAQ,WAAW;AAC9C,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,KAAI,QAAQA,MAAK;AAC/B,gBAAI,MAAM,QAAQ,QAAQ,CAAC;AAC3B,gBAAI,MAAM,QAAQ,MAAM,MAAM,CAAC;AAC/B,mBAAO;AACP,gBAAI,OAAO,GAAG,MAAM,QAAQ,OAAO,KAAK,KAAK,MAAM;AACnD,gBAAI,OAAO;AACT,qBAAO;AACT,mBAAO;AACP,gBAAI,OAAO,WAAW,aAAa;AACjC,wBAAU;AAAA,YACZ;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,iBAAS,UAAU,IAAI,KAAK,QAAQ,MAAM;AACxC,mBAAS;AACT,sBAAY;AACZ,oBAAU;AACV,cAAI;AACF,gBAAI,SAAS,SAAS,gBAAgB,EAAE;AACxC,gBAAI,MAAM,SAAS,QAAQ,KAAK,MAAM;AACtC,oBAAQ,SAAS,CAAC,IAAI;AACtB,mBAAO;AAAA,UACT,SAAS,GAAG;AACV,gBAAI,OAAO,MAAM,eAAe,EAAE,EAAE,SAAS;AAC3C,oBAAM;AACR,mBAAO,EAAE;AAAA,UACX;AAAA,QACF;AACA,YAAI,WAAW,CAAC,OAAO,UAAU;AAC/B,cAAI,MAAM;AACV,mBAASA,KAAI,GAAGA,MAAK,OAAO,OAAO,MAAMA,IAAG,GAAG;AAAA,UAC/C;AACA,iBAAO;AAAA,QACT;AACA,YAAI,kBAAkB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACrE,YAAI,qBAAqB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxE,YAAI,UAAU,CAAC,MAAM,SAAS;AAC5B,cAAI,UAAU,IAAI,KAAK,KAAK,QAAQ,CAAC;AACrC,iBAAO,OAAO,GAAG;AACf,gBAAI,OAAO,WAAW,QAAQ,YAAY,CAAC;AAC3C,gBAAI,eAAe,QAAQ,SAAS;AACpC,gBAAI,sBAAsB,OAAO,kBAAkB,oBAAoB,YAAY;AACnF,gBAAI,OAAO,qBAAqB,QAAQ,QAAQ,GAAG;AACjD,sBAAQ,qBAAqB,QAAQ,QAAQ,IAAI;AACjD,sBAAQ,QAAQ,CAAC;AACjB,kBAAI,eAAe,IAAI;AACrB,wBAAQ,SAAS,eAAe,CAAC;AAAA,cACnC,OAAO;AACL,wBAAQ,SAAS,CAAC;AAClB,wBAAQ,YAAY,QAAQ,YAAY,IAAI,CAAC;AAAA,cAC/C;AAAA,YACF,OAAO;AACL,sBAAQ,QAAQ,QAAQ,QAAQ,IAAI,IAAI;AACxC,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AACA,YAAI,qBAAqB,CAAC,OAAO,WAAW;AAC1C,gBAAM,IAAI,OAAO,WAAW,CAAC;AAAA,QAC/B;AACA,iBAAS,UAAUY,IAAG,SAAS,QAAQ,IAAI;AACzC,UAAAA,QAAO;AACP,uBAAa;AACb,sBAAY;AACZ,kBAAQ;AACR,cAAI,UAAU,OAAO,KAAK,OAAO,CAAC;AAClC,cAAI,OAAO,EAAE,QAAQ,OAAO,OAAO,CAAC,GAAG,QAAQ,OAAO,KAAK,MAAM,CAAC,GAAG,SAAS,OAAO,KAAK,MAAM,CAAC,GAAG,SAAS,OAAO,KAAK,OAAO,CAAC,GAAG,QAAQ,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,OAAO,KAAK,OAAO,CAAC,GAAG,UAAU,OAAO,KAAK,OAAO,CAAC,GAAG,WAAW,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,UAAU,aAAa,OAAO,IAAI,GAAG;AACpX,cAAI,UAAU,aAAa,MAAM;AACjC,cAAI,oBAAoB,EAAE,MAAM,wBAAwB,MAAM,YAAY,MAAM,YAAY,MAAM,MAAM,MAAM,eAAe,MAAM,SAAS,MAAM,YAAY,MAAM,YAAY,MAAM,YAAY,OAAO,MAAM,OAAO,MAAM,OAAO,YAAY,OAAO,YAAY,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,KAAK;AACpc,mBAAS,QAAQ,mBAAmB;AAClC,sBAAU,QAAQ,QAAQ,IAAI,OAAO,MAAM,GAAG,GAAG,kBAAkB,IAAI,CAAC;AAAA,UAC1E;AACA,cAAI,WAAW,CAAC,UAAU,UAAU,WAAW,aAAa,YAAY,UAAU,UAAU;AAC5F,cAAI,SAAS,CAAC,WAAW,YAAY,SAAS,SAAS,OAAO,QAAQ,QAAQ,UAAU,aAAa,WAAW,YAAY,UAAU;AACtI,mBAAS,iBAAiB,OAAO,QAAQ,WAAW;AAClD,gBAAI,MAAM,OAAO,SAAS,WAAW,MAAM,SAAS,IAAI,SAAS;AACjE,mBAAO,IAAI,SAAS,QAAQ;AAC1B,oBAAM,UAAU,CAAC,IAAI;AAAA,YACvB;AACA,mBAAO;AAAA,UACT;AACA,mBAAS,aAAa,OAAO,QAAQ;AACnC,mBAAO,iBAAiB,OAAO,QAAQ,GAAG;AAAA,UAC5C;AACA,mBAAS,aAAa,OAAO,OAAO;AAClC,qBAAS,IAAI,OAAO;AAClB,qBAAO,QAAQ,IAAI,KAAK,QAAQ,IAAI,IAAI;AAAA,YAC1C;AACA,gBAAI;AACJ,iBAAK,UAAU,IAAI,MAAM,YAAY,IAAI,MAAM,YAAY,CAAC,OAAO,GAAG;AACpE,mBAAK,UAAU,IAAI,MAAM,SAAS,IAAI,MAAM,SAAS,CAAC,OAAO,GAAG;AAC9D,0BAAU,IAAI,MAAM,QAAQ,IAAI,MAAM,QAAQ,CAAC;AAAA,cACjD;AAAA,YACF;AACA,mBAAO;AAAA,UACT;AACA,mBAAS,sBAAsB,WAAW;AACxC,oBAAQ,UAAU,OAAO,GAAG;AAAA,cAC1B,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,cACrD,KAAK;AACH,uBAAO;AAAA,cACT,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,GAAG,GAAG,CAAC;AAAA,cAC/C,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,cACrD,KAAK;AACH,uBAAO,IAAI,KAAK,UAAU,YAAY,IAAI,GAAG,IAAI,EAAE;AAAA,YACvD;AAAA,UACF;AACA,mBAAS,iBAAiB,OAAO;AAC/B,gBAAI,WAAW,QAAQ,IAAI,KAAK,MAAM,UAAU,MAAM,GAAG,CAAC,GAAG,MAAM,OAAO;AAC1E,gBAAI,oBAAoB,IAAI,KAAK,SAAS,YAAY,GAAG,GAAG,CAAC;AAC7D,gBAAI,oBAAoB,IAAI,KAAK,SAAS,YAAY,IAAI,GAAG,GAAG,CAAC;AACjE,gBAAI,yBAAyB,sBAAsB,iBAAiB;AACpE,gBAAI,yBAAyB,sBAAsB,iBAAiB;AACpE,gBAAI,aAAa,wBAAwB,QAAQ,KAAK,GAAG;AACvD,kBAAI,aAAa,wBAAwB,QAAQ,KAAK,GAAG;AACvD,uBAAO,SAAS,YAAY,IAAI;AAAA,cAClC;AACA,qBAAO,SAAS,YAAY;AAAA,YAC9B;AACA,mBAAO,SAAS,YAAY,IAAI;AAAA,UAClC;AACA,cAAI,oBAAoB,EAAE,MAAM,CAAC,UAAU,SAAS,MAAM,OAAO,EAAE,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,SAAS,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,OAAO,MAAM,MAAM,EAAE,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,OAAO,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU;AAC3O,gBAAI,OAAO,MAAM,UAAU;AAC3B,mBAAO,aAAa,OAAO,MAAM,GAAG,CAAC;AAAA,UACvC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU,iBAAiB,MAAM,SAAS,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,iBAAiB,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,iBAAiB,KAAK,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU;AAC1R,gBAAI,aAAa,MAAM;AACvB,gBAAI,cAAc;AAChB,2BAAa;AAAA,qBACN,aAAa;AACpB,4BAAc;AAChB,mBAAO,aAAa,YAAY,CAAC;AAAA,UACnC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,UAAU,SAAS,WAAW,MAAM,UAAU,IAAI,IAAI,kBAAkB,oBAAoB,MAAM,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,QAAQ,CAAC,GAAG,MAAM,MAAM,MAAM,MAAM,CAAC,UAAU;AAC/R,gBAAI,MAAM,WAAW,KAAK,MAAM,UAAU,IAAI;AAC5C,qBAAO;AAAA,YACT;AACA,mBAAO;AAAA,UACT,GAAG,MAAM,CAAC,UAAU,aAAa,MAAM,QAAQ,CAAC,GAAG,MAAM,MAAM,KAAK,MAAM,CAAC,UAAU,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU;AACxH,gBAAI,OAAO,MAAM,UAAU,IAAI,MAAM;AACrC,mBAAO,aAAa,KAAK,MAAM,OAAO,CAAC,GAAG,CAAC;AAAA,UAC7C,GAAG,MAAM,CAAC,UAAU;AAClB,gBAAI,MAAM,KAAK,OAAO,MAAM,UAAU,KAAK,MAAM,UAAU,KAAK,KAAK,CAAC;AACtE,iBAAK,MAAM,UAAU,MAAM,MAAM,UAAU,KAAK,KAAK,GAAG;AACtD;AAAA,YACF;AACA,gBAAI,CAAC,KAAK;AACR,oBAAM;AACN,kBAAI,SAAS,MAAM,UAAU,IAAI,MAAM,UAAU,KAAK;AACtD,kBAAI,SAAS,KAAK,SAAS,KAAK,WAAW,MAAM,UAAU,MAAM,CAAC,GAAG;AACnE;AAAA,cACF;AAAA,YACF,WAAW,OAAO,IAAI;AACpB,kBAAI,QAAQ,MAAM,UAAU,MAAM,MAAM,WAAW;AACnD,kBAAI,QAAQ,MAAM,QAAQ,KAAK,CAAC,WAAW,MAAM,OAAO;AACtD,sBAAM;AAAA,YACV;AACA,mBAAO,aAAa,KAAK,CAAC;AAAA,UAC5B,GAAG,MAAM,CAAC,UAAU,MAAM,SAAS,MAAM,CAAC,UAAU;AAClD,gBAAI,OAAO,MAAM,UAAU,KAAK,MAAM,UAAU,KAAK;AACrD,mBAAO,aAAa,KAAK,MAAM,OAAO,CAAC,GAAG,CAAC;AAAA,UAC7C,GAAG,MAAM,CAAC,WAAW,MAAM,UAAU,MAAM,SAAS,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,MAAM,UAAU,MAAM,MAAM,CAAC,UAAU;AAC1H,gBAAI,MAAM,MAAM;AAChB,gBAAI,QAAQ,OAAO;AACnB,kBAAM,KAAK,IAAI,GAAG,IAAI;AACtB,kBAAM,MAAM,KAAK,MAAM,MAAM;AAC7B,oBAAQ,QAAQ,MAAM,OAAO,OAAO,SAAS,GAAG,EAAE,MAAM,EAAE;AAAA,UAC5D,GAAG,MAAM,CAAC,UAAU,MAAM,SAAS,MAAM,MAAM,IAAI;AACnD,oBAAU,QAAQ,QAAQ,OAAO,MAAM;AACvC,mBAAS,QAAQ,mBAAmB;AAClC,gBAAI,QAAQ,SAAS,IAAI,GAAG;AAC1B,wBAAU,QAAQ,QAAQ,IAAI,OAAO,MAAM,GAAG,GAAG,kBAAkB,IAAI,EAAE,IAAI,CAAC;AAAA,YAChF;AAAA,UACF;AACA,oBAAU,QAAQ,QAAQ,SAAS,GAAG;AACtC,cAAI,QAAQ,mBAAmB,SAAS,KAAK;AAC7C,cAAI,MAAM,SAAS,SAAS;AAC1B,mBAAO;AAAA,UACT;AACA,6BAAmB,OAAOA,EAAC;AAC3B,iBAAO,MAAM,SAAS;AAAA,QACxB;AACA,iBAAS,YAAYA,IAAG,SAAS,QAAQ,IAAI,KAAK;AAChD,UAAAA,QAAO;AACP,uBAAa;AACb,sBAAY;AACZ,kBAAQ;AACR,mBAAS;AACT,iBAAO,UAAUA,IAAG,SAAS,QAAQ,EAAE;AAAA,QACzC;AACA,wBAAgBpB,QAAO,eAAe,IAAI,MAAM,sBAAsB,MAAM;AAAA,UAC1E,YAAY,SAAS;AACnB,kBAAM,OAAO;AACb,iBAAK,OAAO;AAAA,UACd;AAAA,QACF;AACA,8BAAsB;AACtB,uBAAeA,QAAO,cAAc,IAAI,MAAM,qBAAqB,MAAM;AAAA,UACvE,YAAY,SAAS;AACnB,kBAAM,OAAO;AACb,iBAAK,OAAO;AAAA,UACd;AAAA,QACF;AACA,yBAAiB;AACjB,oBAAY;AACZ,+BAAuB;AACvB,2BAAmBA,QAAO,kBAAkB,IAAI,YAAY,OAAO,kBAAkB;AACrF,4BAAoB;AACpB,mBAAW;AACX,YAAI,SAAS,SAAS,QAAQa,QAAM,MAAM,MAAM;AAC9C,cAAI,CAAC,QAAQ;AACX,qBAAS;AAAA,UACX;AACA,eAAK,SAAS;AACd,eAAK,QAAQ,OAAO;AACpB,eAAK,UAAU;AACf,eAAK,KAAK,GAAG;AACb,eAAK,OAAOA;AACZ,eAAK,OAAO;AACZ,eAAK,WAAW,CAAC;AACjB,eAAK,aAAa,CAAC;AACnB,eAAK,OAAO;AAAA,QACd;AACA,YAAI,WAAW,MAAM;AACrB,YAAI,YAAY;AAChB,eAAO,iBAAiB,OAAO,WAAW,EAAE,MAAM,EAAE,KAAK,WAAW;AAClE,kBAAQ,KAAK,OAAO,cAAc;AAAA,QACpC,GAAG,KAAK,SAAS,KAAK;AACpB,gBAAM,KAAK,QAAQ,WAAW,KAAK,QAAQ,CAAC;AAAA,QAC9C,EAAE,GAAG,OAAO,EAAE,KAAK,WAAW;AAC5B,kBAAQ,KAAK,OAAO,eAAe;AAAA,QACrC,GAAG,KAAK,SAAS,KAAK;AACpB,gBAAM,KAAK,QAAQ,YAAY,KAAK,QAAQ,CAAC;AAAA,QAC/C,EAAE,GAAG,UAAU,EAAE,KAAK,WAAW;AAC/B,iBAAO,GAAG,MAAM,KAAK,IAAI;AAAA,QAC3B,EAAE,GAAG,UAAU,EAAE,KAAK,WAAW;AAC/B,iBAAO,GAAG,SAAS,KAAK,IAAI;AAAA,QAC9B,EAAE,EAAE,CAAC;AACL,WAAG,SAAS;AACZ,WAAG,sBAAsB;AACzB,WAAG,WAAW;AACd,YAAI,cAAc,EAAE,GAAG,cAAc,GAAG,+BAA+B,GAAG,gCAAgC,GAAG,0BAA0B,GAAG,wBAAwB,GAAG,yBAAyB,GAAG,qCAAqC,GAAG,kCAAkC,GAAG,yBAAyB,GAAG,yBAAyB,GAAG,4BAA4B,GAAG,2BAA2B,GAAG,+BAA+B,GAAG,8BAA8B,GAAG,+BAA+B,GAAG,+BAA+B,GAAG,uCAAuC,GAAG,gCAAgC,GAAG,sCAAsC,GAAG,wBAAwB,GAAG,mCAAmC,GAAG,YAAY,GAAG,cAAc,GAAG,gBAAgB,GAAG,oBAAoB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,qBAAqB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,sBAAsB,GAAG,oBAAoB,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,QAAQ,GAAG,sBAAsB,GAAG,wBAAwB,GAAG,yBAAyB,GAAG,cAAc,GAAG,oBAAoB,GAAG,WAAW,GAAG,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,YAAY;AACrxC,YAAI,MAAM,WAAW;AACrB,YAAI,qBAAqB,OAAO,qBAAqB,YAAY,GAAG,GAAG;AACvE,YAAI,UAAU,CAAC,QAAQ,UAAU,YAAY,IAAI,GAAG,EAAE;AACtD,YAAI,iBAAiB,CAAC,QAAQ,iBAAiB,YAAY,IAAI,GAAG,EAAE;AACpE,YAAI,+BAA+Bb,QAAO,8BAA8B,IAAI,OAAO,+BAA+BA,QAAO,8BAA8B,IAAI,YAAY,IAAI,GAAG;AAC9K,YAAI,oBAAoB,OAAO,oBAAoB,YAAY,kBAAkB,GAAG;AACpF,YAAI,QAAQ,CAAC,QAAQ,QAAQ,YAAY,IAAI,GAAG,EAAE;AAClD,YAAI,sCAAsC,CAAC,QAAQ,sCAAsC,YAAY,oCAAoC,GAAG,EAAE;AAC9I,YAAI,yBAAyB,CAAC,QAAQ,yBAAyB,YAAY,IAAI,GAAG,EAAE;AACpF,YAAI,eAAeA,QAAO,cAAc,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,QAAQ,eAAerB,QAAO,cAAc,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,EAAE;AAClJ,YAAI,iBAAiBrB,QAAO,gBAAgB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,QAAQ,iBAAiBrB,QAAO,gBAAgB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,EAAE;AAC1K,YAAI,iBAAiBrB,QAAO,gBAAgB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,QAAQ,iBAAiBrB,QAAO,gBAAgB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,EAAE;AAC1K,YAAI,kBAAkBrB,QAAO,iBAAiB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,kBAAkBrB,QAAO,iBAAiB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AAC9L,YAAI,mBAAmBrB,QAAO,kBAAkB,IAAI,CAAC,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,mBAAmBrB,QAAO,kBAAkB,IAAI,YAAY,IAAI,GAAG,IAAI,IAAIqB,KAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AAC1M,iBAAS,0BAA0B,UAAU;AAC3C,qBAAW,OAAO,OAAO,CAAC,GAAG,QAAQ;AACrC,cAAI,iBAAiB,CAACP,OAAM,CAAC,OAAOA,GAAE,EAAE,MAAM;AAC9C,cAAI,gBAAgB,CAACA,OAAM,MAAMA,GAAE,MAAM;AACzC,mBAAS,QAAQ,IAAI,eAAe,SAAS,QAAQ,CAAC;AACtD,mBAAS,eAAe,IAAI,eAAe,SAAS,eAAe,CAAC;AACpE,mBAAS,kBAAkB,IAAI,cAAc,SAAS,kBAAkB,CAAC;AACzE,mBAAS,WAAW,IAAI,cAAc,SAAS,WAAW,CAAC;AAC3D,mBAAS,YAAY,IAAI,eAAe,SAAS,YAAY,CAAC;AAC9D,iBAAO;AAAA,QACT;AACA,YAAI;AACJ,gCAAwB,SAAS,YAAY;AAC3C,cAAI,CAAC;AACH,gBAAI;AACN,cAAI,CAAC;AACH,oCAAwB;AAAA,QAC5B;AACA,iBAAS,MAAM;AACb,cAAI,kBAAkB,GAAG;AACvB;AAAA,UACF;AACA,iBAAO;AACP,cAAI,kBAAkB,GAAG;AACvB;AAAA,UACF;AACA,mBAAS,QAAQ;AACf,gBAAI;AACF;AACF,wBAAY;AACZ,YAAAd,QAAO,WAAW,IAAI;AACtB,gBAAI;AACF;AACF,wBAAY;AACZ,gCAAoBA,OAAM;AAC1B,gBAAIA,QAAO,sBAAsB;AAC/B,cAAAA,QAAO,sBAAsB,EAAE;AACjC,oBAAQ;AAAA,UACV;AACA,cAAIA,QAAO,WAAW,GAAG;AACvB,YAAAA,QAAO,WAAW,EAAE,YAAY;AAChC,uBAAW,WAAW;AACpB,yBAAW,WAAW;AACpB,gBAAAA,QAAO,WAAW,EAAE,EAAE;AAAA,cACxB,GAAG,CAAC;AACJ,oBAAM;AAAA,YACR,GAAG,CAAC;AAAA,UACN,OAAO;AACL,kBAAM;AAAA,UACR;AAAA,QACF;AACA,YAAIA,QAAO,SAAS,GAAG;AACrB,cAAI,OAAOA,QAAO,SAAS,KAAK;AAC9B,YAAAA,QAAO,SAAS,IAAI,CAACA,QAAO,SAAS,CAAC;AACxC,iBAAOA,QAAO,SAAS,EAAE,SAAS,GAAG;AACnC,YAAAA,QAAO,SAAS,EAAE,IAAI,EAAE;AAAA,UAC1B;AAAA,QACF;AACA,YAAI;AACJ,eAAO,UAAU;AAAA,MACnB;AAAA,IACF,GAAG;AACH,QAAI,OAAO,YAAY,YAAY,OAAOD,YAAW;AACnD,MAAAA,QAAO,UAAU;AAAA,aACV,OAAO,WAAW,cAAc,OAAO,KAAK;AACnD,aAAO,CAAC,GAAG,MAAM,WAAW;AAAA,EAChC;AACF,CAAC;AA0ID,IAAI,cAAc;AAClB,IAAI,cAAc;AAClB,IAAI,iCAAiC;AACrC,IAAI,uBAAuB;AAC3B,IAAI,qBAAqB;AACzB,IAAI,uBAAuB;AAC3B,IAAI,cAAc;AAClB,IAAI,aAAa;AACjB,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,IAAI,YAAY;AAChB,IAAI,oBAAoB;AACxB,IAAI,UAAU;AACd,IAAI,cAAc;AAClB,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,uCAAuC;AAC3C,IAAI,oBAAoB;AACxB,IAAI,8BAA8B;AAClC,IAAI,UAAU;AACd,IAAI,0BAA0B;AAC9B,IAAI,qCAAqC;AACzC,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,2BAA2B;AAC/B,IAAI,oBAAoB;AACxB,IAAI,YAAY;AAChB,IAAI,yBAAyB;AAC7B,IAAI,2BAA2B;AAC/B,IAAI,iBAAiB;AACrB,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,YAAY;AAChB,IAAI,iBAAiB;AACrB,IAAI,uBAAuB;AAC3B,IAAI,sBAAsB;AAC1B,IAAI,yBAAyB;AAC7B,IAAI,mBAAmB;AACvB,IAAI,yBAAyB;AAC7B,IAAI,qBAAqB;AACzB,IAAI,aAAa;AACjB,IAAI,0BAA0B;AAC9B,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,gBAAgB;AACpB,IAAI,gBAAgB;AACpB,IAAI,cAAc;AAClB,IAAI,UAAU;AACd,IAAI,kCAAkC;AACtC,IAAI,6BAA6B;AACjC,IAAI,iCAAiC;AACrC,IAAI,cAAc;AAClB,IAAI,UAAU;AACd,IAAI,yBAAyB;AAC7B,IAAI,cAAc;AAClB,IAAI,iBAAiB;AACrB,IAAI,aAAa;AACjB,IAAI,cAAc;AAClB,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,2BAA2B;AAC/B,IAAI,uBAAuB;AAC3B,IAAI,2CAA2C;AAC/C,IAAI,gBAAgB;AACpB,IAAI,oBAAoB;AACxB,IAAI,wBAAwB;AAC5B,IAAI,mBAAmB;AACvB,IAAI,cAAc;AAClB,IAAI,gCAAgC;AACpC,IAAI,4BAA4B;AAChC,IAAI,mBAAmB;AACvB,IAAI,yBAAyB;AAC7B,IAAI,yBAAyB;AAC7B,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,6CAA6C;AACjD,IAAI,wBAAwB;AAC5B,IAAI,gBAAgB;AACpB,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,sBAAsB;AAC1B,IAAI,iBAAiB;AACrB,IAAI,kCAAkC;AACtC,IAAI,8BAA8B;AAClC,IAAI,gCAAgC;AACpC,IAAI,YAAY;AAChB,IAAI,sBAAsB;AAC1B,IAAI,8BAA8B;AAClC,IAAI,oBAAoB;AACxB,IAAI,kBAAkB;AACtB,IAAI,6BAA6B;AACjC,IAAI,qBAAqB;AACzB,IAAI,4BAA4B;AAChC,IAAI,iBAAiB;AACrB,IAAI,gCAAgC;AACpC,IAAI,kCAAkC;AACtC,IAAI,kBAAkB;AACtB,IAAI,0BAA0B;AAC9B,IAAI,aAAa;AACjB,IAAI,+BAA+B;AACnC,IAAI,yBAAyB;AAC7B,IAAI,qBAAqB;AACzB,IAAI,gCAAgC;AACpC,IAAI,0BAA0B;AAC9B,IAAI,uCAAuC;AAC3C,IAAI,8BAA8B;AAClC,IAAI,oBAAoB;AACxB,IAAI,8BAA8B;AAElC,IAAI,gBAAgB;AACpB,IAAI,WAAW;AACf,IAAI,cAAc;AAClB,IAAI,2BAA2B;AAC/B,IAAI,YAAY;AAChB,IAAI,kCAAkC;AACtC,IAAI,oBAAoB;AACxB,IAAI,6BAA6B;AACjC,IAAI,YAAY;AAChB,IAAI,SAAS;AACb,IAAI,yBAAyB;AAC7B,IAAI,mBAAmB;AACvB,IAAI,uBAAuB;AAC3B,IAAI,+BAA+B;AACnC,IAAI,+BAA+B;AACnC,IAAI,uBAAuB;AAC3B,IAAI,kBAAkB;AACtB,IAAI,iBAAiB;AACrB,IAAI,iBAAiB;AACrB,IAAI,yBAAyB;AAC7B,IAAI,YAAY;AAChB,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,eAAe;AACnB,IAAI,gBAAgB;AACpB,IAAI,6BAA6B;AACjC,IAAI,UAAU;AACd,IAAI,aAAa;AACjB,IAAI,kBAAkB;AACtB,IAAI,kBAAkB;AACtB,IAAI,yBAAyB;AAC7B,IAAI,yBAAyB;AAC7B,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,sBAAsB;AAC1B,IAAI,0BAA0B;AAC9B,IAAI,0BAA0B;AAC9B,IAAI,oBAAoB;AACxB,IAAI,iBAAiB;AACrB,IAAI,wBAAwB;AAC5B,IAAI,mBAAmB;AACvB,IAAI,uBAAuB;AAC3B,IAAI,WAAW;AACf,IAAI,sBAAsB;AAC1B,IAAI,+BAA+B;AACnC,IAAI,gBAAgB;AACpB,IAAI,iBAAiB;AACrB,IAAI,UAAU;AACd,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,mBAAmB;AACvB,IAAI,iBAAiB;AACrB,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,sBAAsB;AAC1B,IAAI,wBAAwB;AAC5B,IAAI,mCAAmC;AACvC,IAAI,UAAU;AACd,IAAI,sCAAsC;AAC1C,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,iBAAiB;AACrB,IAAI,iBAAiB;AACrB,IAAI,YAAY;AAChB,IAAI,wBAAwB;AAC5B,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,mBAAmB;AACvB,IAAI,kBAAkB;AACtB,IAAI,UAAU;AACd,IAAI,iBAAiB;AACrB,IAAI,iBAAiB;AACrB,IAAI,gBAAgB;AACpB,IAAI,mBAAmB;AACvB,IAAI,eAAe;AACnB,IAAI,4BAA4B;AAChC,IAAI,gBAAgB;AACpB,IAAI,uBAAuB;AAC3B,IAAI,YAAY;AAChB,IAAI,mCAAmC;AACvC,IAAI,sBAAsB;AAC1B,IAAI,wBAAwB;AAC5B,IAAI,iCAAiC;AACrC,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,aAAa;AACjB,IAAI,sBAAsB;AAC1B,IAAI,gBAAgB;AACpB,IAAI,oBAAoB;AACxB,IAAI,6BAA6B;AACjC,IAAI,mBAAmB;AACvB,IAAI,2BAA2B;AAC/B,IAAI,8BAA8B;AAClC,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,IAAI,gBAAgB;AACpB,IAAI,sBAAsB;AAC1B,IAAI,4BAA4B;AAChC,IAAI,oBAAoB;AACxB,IAAI,6BAA6B;AACjC,IAAI,6BAA6B;AACjC,IAAI,2BAA2B;AAC/B,IAAI,eAAe;AACnB,IAAI,qBAAqB;AACzB,IAAI,uBAAuB;AAC3B,IAAI,eAAe;AACnB,IAAI,cAAc;AAClB,IAAI,yBAAyB;AAC7B,IAAI,4BAA4B;AAChC,IAAI,qCAAqC;AACzC,IAAI,cAAc;AAClB,IAAI,sBAAsB;AAC1B,IAAI,cAAc;AAClB,IAAI,yBAAyB;AAC7B,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,qBAAqB;AACzB,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,eAAe;AACnB,IAAI,iBAAiB;AACrB,IAAI,qCAAqC;AACzC,IAAI,WAAW;AACf,IAAI,gBAAgB;AACpB,IAAI,yBAAyB;AAC7B,IAAI,cAAc;AAClB,IAAI,wBAAwB;AAC5B,IAAI,qCAAqC;AACzC,IAAI,sCAAsC;AAC1C,IAAI,uCAAuC;AAC3C,IAAI,6BAA6B;AACjC,IAAI,6BAA6B;AACjC,IAAI,sBAAsB;AAC1B,IAAI,iBAAiB;AACrB,IAAI,6BAA6B;AACjC,IAAI,oBAAoB;AACxB,IAAI,2BAA2B;AAC/B,IAAI,kBAAkB;AACtB,IAAI,yBAAyB;AAC7B,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,cAAc;AAClB,IAAI,kBAAkB;AACtB,IAAI,6BAA6B;AACjC,IAAI,+BAA+B;AACnC,IAAI,sBAAsB;AAC1B,IAAI,qBAAqB;AACzB,IAAI,iBAAiB;AACrB,IAAI,wBAAwB;AAC5B,IAAI,oBAAoB;AACxB,IAAI,4BAA4B;AAChC,IAAI,8BAA8B;AAClC,IAAI,yCAAyC;AAC7C,IAAI,8BAA8B;AAClC,IAAI,8BAA8B;AAClC,IAAI,2BAA2B;AAC/B,IAAI,0BAA0B;AAC9B,IAAI,wBAAwB;AAC5B,IAAI,iBAAiB;AACrB,IAAI,+BAA+B;AACnC,IAAI,sBAAsB;AAC1B,IAAI,yBAAyB;AAC7B,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,2BAA2B;AAC/B,IAAI,YAAY;AAChB,IAAI,uBAAuB;AAC3B,IAAI,mCAAmC;AACvC,IAAI,0BAA0B;AAC9B,IAAI,2BAA2B;AAC/B,IAAI,kCAAkC;AACtC,IAAI,8BAA8B;AAClC,IAAI,eAAe;AACnB,IAAI,yBAAyB;AAC7B,IAAI,sBAAsB;AAC1B,IAAI,aAAa;AACjB,IAAI,8BAA8B;AAClC,IAAI,0BAA0B;AAC9B,IAAI,0BAA0B;AAC9B,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,kBAAkB;AACtB,IAAI,iBAAiB;AACrB,IAAI,qBAAqB;AACzB,IAAI,6BAA6B;AACjC,IAAI,kBAAkB;AACtB,IAAI,oCAAoC;AACxC,IAAI,kCAAkC;AACtC,IAAI,iBAAiB;AACrB,IAAI,gCAAgC;AACpC,IAAI,0BAA0B;AAC9B,IAAI,wBAAwB;AAC5B,IAAI,0BAA0B;AAC9B,IAAI,qCAAqC;AACzC,IAAI,6BAA6B;AACjC,IAAI,4BAA4B;AAChC,IAAI,yBAAyB;AAC7B,IAAI,aAAa;AACjB,IAAI,+BAA+B;AACnC,IAAI,uBAAuB;AAC3B,IAAI,sBAAsB;AAC1B,IAAI,mCAAmC;AACvC,IAAI,wBAAwB;AAC5B,IAAI,eAAe;AACnB,IAAI,mCAAmC;AACvC,IAAI,mBAAmB;AACvB,IAAI,cAAc;AAElB,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,cAAc;AAElB,IAAI,8BAA8B;AAClC,IAAI,4BAA4B;AAChC,IAAI,iCAAiC;AAMrC,IAAI,kBAAkB;AAGtB,IAAI,gCAAgC;AACpC,IAAI,wBAAwB;AAC5B,IAAI,qBAAqB;AACzB,IAAI,8BAA8B;AAElC,IAAI,mBAAmB;AAGvB,IAAI,yBAAyB;AAC7B,IAAI,8BAA8B;AAClC,IAAI,oBAAoB;AACxB,IAAI,+BAA+B;AACnC,IAAI,gCAAgC;AACpC,IAAI,gCAAgC;AACpC,IAAI,oBAAoB;AACxB,IAAI,wBAAwB;AAC5B,IAAI,UAAU;AACd,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,IAAI,YAAY;AAChB,IAAI,sBAAsB;AAC1B,IAAI,UAAU;AACd,IAAI,2BAA2B;AAC/B,IAAI,kBAAkB;AACtB,IAAI,YAAY;AAChB,IAAI,6BAA6B;AACjC,IAAI,iBAAiB;AACrB,IAAI,WAAW;AACf,IAAI,UAAU;AACd,IAAI,gBAAgB;AACpB,IAAI,wBAAwB;AAC5B,IAAI,UAAU;AACd,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,yBAAyB;AAC7B,IAAI,gBAAgB;AACpB,IAAI,UAAU;AACd,IAAI,aAAa;AACjB,IAAI,WAAW;AACf,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,yBAAyB;AAC7B,IAAI,kBAAkB;AACtB,IAAI,uBAAuB;AAC3B,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,wBAAwB;AAC5B,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,iCAAiC;AACrC,IAAI,gBAAgB;AACpB,IAAI,aAAa;AACjB,IAAI,4BAA4B;AAChC,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,6BAA6B;AACjC,IAAI,uBAAuB;AAC3B,IAAI,wBAAwB;AAC5B,IAAI,2BAA2B;AAC/B,IAAI,mCAAmC;AACvC,IAAI,2BAA2B;AAC/B,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,qBAAqB;AACzB,IAAI,qBAAqB;AACzB,IAAI,UAAU;AACd,IAAI,sBAAsB;AAC1B,IAAI,6BAA6B;AACjC,IAAI,yBAAyB;AAC7B,IAAI,oCAAoC;AACxC,IAAI,oCAAoC;AACxC,IAAI,2BAA2B;AAC/B,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,gBAAgB;AACpB,IAAI,iBAAiB;AACrB,IAAI,cAAc;AAClB,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,iCAAiC;AACrC,IAAI,kCAAkC;AACtC,IAAI,mCAAmC;AACvC,IAAI,wBAAwB;AAC5B,IAAI,eAAe;AACnB,IAAI,mBAAmB;AACvB,IAAI,oBAAoB;AACxB,IAAI,YAAY;AAChB,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,6BAA6B;AACjC,IAAI,6BAA6B;AACjC,IAAI,8BAA8B;AAClC,IAAI,0BAA0B;AAC9B,IAAI,yBAAyB;AAC7B,IAAI,8BAA8B;AAClC,IAAI,qBAAqB;AACzB,IAAI,gBAAgB;AACpB,IAAI,iBAAiB;AACrB,IAAI,cAAc;AAClB,IAAI,kBAAkB;AACtB,IAAI,WAAW;AACf,IAAI,sBAAsB;AAC1B,IAAI,8BAA8B;AAClC,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,mBAAmB;AACvB,IAAI,sBAAsB;AAC1B,IAAI,UAAU;AACd,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,iBAAiB;AACrB,IAAI,uBAAuB;AAC3B,IAAI,cAAc;AAClB,IAAI,oBAAoB;AACxB,IAAI,eAAe;AACnB,IAAI,0BAA0B;AAC9B,IAAI,oBAAoB;AACxB,IAAI,kBAAkB;AACtB,IAAI,sBAAsB;AAC1B,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,yBAAyB;AAC7B,IAAI,yBAAyB;AAC7B,IAAI,iCAAiC;AACrC,IAAI,2BAA2B;AAC/B,IAAI,6BAA6B;AACjC,IAAI,+BAA+B;AACnC,IAAI,2BAA2B;AAC/B,IAAI,mCAAmC;AACvC,IAAI,4BAA4B;AAChC,IAAI,yBAAyB;AAC7B,IAAI,mCAAmC;AACvC,IAAI,4BAA4B;AAChC,IAAI,kCAAkC;AACtC,IAAI,2BAA2B;AAC/B,IAAI,+BAA+B;AACnC,IAAI,0BAA0B;AAC9B,IAAI,sBAAsB;AAC1B,IAAI,qBAAqB;AACzB,IAAI,uBAAuB;AAC3B,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,IAAI,qBAAqB;AACzB,IAAI,WAAW;AACf,IAAI,cAAc;AAClB,IAAI,UAAU;AACd,IAAI,iBAAiB;AACrB,IAAI,yBAAyB;AAC7B,IAAI,0BAA0B;AAC9B,IAAI,qBAAqB;AACzB,IAAI,mBAAmB;AACvB,IAAI,oBAAoB;AACxB,IAAI,iBAAiB;AACrB,IAAI,qBAAqB;AACzB,IAAI,cAAc;AAClB,IAAI,0BAA0B;AAC9B,IAAI,uBAAuB;AAC3B,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,eAAe;AACnB,IAAI,UAAU;AACd,IAAI,cAAc;AAClB,IAAI,eAAe;AACnB,IAAI,qBAAqB;AACzB,IAAI,qBAAqB;AACzB,IAAI,YAAY;AAChB,IAAI,wBAAwB;AAC5B,IAAI,gBAAgB;AACpB,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,cAAc;AAClB,IAAI,UAAU;AACd,IAAI,yBAAyB;AAC7B,IAAI,gBAAgB;AACpB,IAAI,4BAA4B;AAChC,IAAI,wBAAwB;AAC5B,IAAI,qBAAqB;AACzB,IAAI,sBAAsB;AAC1B,IAAI,cAAc;AAClB,IAAI,mBAAmB;AACvB,IAAI,qBAAqB;AACzB,IAAI,eAAe;AACnB,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,IAAI,WAAW;AACf,IAAI,UAAU;AACd,IAAI,qBAAqB;AACzB,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,6BAA6B;AACjC,IAAI,sBAAsB;AAC1B,IAAI,2BAA2B;AAC/B,IAAI,qBAAqB;AACzB,IAAI,0BAA0B;AAC9B,IAAI,mBAAmB;AACvB,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,+BAA+B;AACnC,IAAI,4BAA4B;AAChC,IAAI,oBAAoB;AACxB,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,0BAA0B;AAC9B,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,2BAA2B;AAC/B,IAAI,uBAAuB;AAC3B,IAAI,sBAAsB;AAC1B,IAAI,gCAAgC;AACpC,IAAI,aAAa;AACjB,IAAI,0BAA0B;AAC9B,IAAI,sBAAsB;AAC1B,IAAI,qBAAqB;AACzB,IAAI,aAAa;AACjB,IAAI,8BAA8B;AAClC,IAAI,iCAAiC;AACrC,IAAI,6BAA6B;AACjC,IAAI,mCAAmC;AACvC,IAAI,qBAAqB;AACzB,IAAI,kBAAkB;AACtB,IAAI,kBAAkB;AACtB,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,aAAa;AACjB,IAAI,0BAA0B;AAC9B,IAAI,WAAW;AACf,IAAI,oBAAoB;AACxB,IAAI,gBAAgB;AACpB,IAAI,4BAA4B;AAChC,IAAI,oBAAoB;AACxB,IAAI,yBAAyB;AAC7B,IAAI,cAAc;AAClB,IAAI,kBAAkB;AACtB,IAAI,2BAA2B;AAC/B,IAAI,WAAW;AACf,IAAI,gCAAgC;AACpC,IAAI,gBAAgB;AACpB,IAAI,WAAW;AACf,IAAI,0BAA0B;AAC9B,IAAI,UAAU;AACd,IAAI,gCAAgC;AACpC,IAAI,yBAAyB;AAC7B,IAAI,8BAA8B;AAClC,IAAI,gCAAgC;AACpC,IAAI,gCAAgC;AACpC,IAAI,oCAAoC;AACxC,IAAI,6BAA6B;AACjC,IAAI,wBAAwB;AAC5B,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,wBAAwB;AAC5B,IAAI,YAAY;AAChB,IAAI,iCAAiC;AACrC,IAAI,6BAA6B;AACjC,IAAI,2BAA2B;AAC/B,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,cAAc;AAClB,IAAI,qBAAqB;AACzB,IAAI,sBAAsB;AAC1B,IAAI,0BAA0B;AAC9B,IAAI,iBAAiB;AACrB,IAAI,2BAA2B;AAC/B,IAAI,qCAAqC;AACzC,IAAI,wBAAwB;AAC5B,IAAI,4BAA4B;AAChC,IAAI,uBAAuB;AAC3B,IAAI,cAAc;AAClB,IAAI,gCAAgC;AACpC,IAAI,4BAA4B;AAChC,IAAI,qBAAqB;AACzB,IAAI,sBAAsB;AAC1B,IAAI,4BAA4B;AAChC,IAAI,gBAAgB;AACpB,IAAI,mBAAmB;AACvB,IAAI,qBAAqB;AACzB,IAAI,2BAA2B;AAC/B,IAAI,oCAAoC;AACxC,IAAI,sCAAsC;AAC1C,IAAI,iCAAiC;AACrC,IAAI,iCAAiC;AACrC,IAAI,kCAAkC;AACtC,IAAI,mCAAmC;AACvC,IAAI,sBAAsB;AAC1B,IAAI,8BAA8B;AAClC,IAAI,6BAA6B;AACjC,IAAI,yBAAyB;AAC7B,IAAI,iBAAiB;AACrB,IAAI,oCAAoC;AACxC,IAAI,2BAA2B;AAC/B,IAAI,0BAA0B;AAC9B,IAAI,2BAA2B;AAC/B,IAAI,6BAA6B;AACjC,IAAI,iCAAiC;AACrC,IAAI,2BAA2B;AAC/B,IAAI,+BAA+B;AACnC,IAAI,mBAAmB;AACvB,IAAI,0BAA0B;AAC9B,IAAI,8BAA8B;AAClC,IAAI,yBAAyB;AAC7B,IAAI,yBAAyB;AAC7B,IAAI,uBAAuB;AAC3B,IAAI,yBAAyB;AAC7B,IAAI,uBAAuB;AAC3B,IAAI,gBAAgB;AACpB,IAAI,+BAA+B;AACnC,IAAI,wBAAwB;AAC5B,IAAI,+BAA+B;AACnC,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,qBAAqB;AACzB,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,IAAI,WAAW;AACf,IAAI,eAAe;AACnB,IAAI,iCAAiC;AACrC,IAAI,mBAAmB;AACvB,IAAI,mBAAmB;AACvB,IAAI,YAAY;AAChB,IAAI,uBAAuB;AAC3B,IAAI,UAAU;AACd,IAAI,sBAAsB;AAC1B,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,2BAA2B;AAC/B,IAAI,yBAAyB;AAC7B,IAAI,wBAAwB;AAC5B,IAAI,sCAAsC;AAC1C,IAAI,2BAA2B;AAC/B,IAAI,2BAA2B;AAC/B,IAAI,uBAAuB;AAC3B,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,uBAAuB;AAC3B,IAAI,iBAAiB;AACrB,IAAI,qBAAqB;AACzB,IAAI,cAAc;AAClB,IAAI,mCAAmC;AACvC,IAAI,gCAAgC;AACpC,IAAI,uBAAuB;AAC3B,IAAI,eAAe;AACnB,IAAI,yBAAyB;AAC7B,IAAI,0BAA0B;AAC9B,IAAI,eAAe;AACnB,IAAI,8BAA8B;AAClC,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,uBAAuB;AAC3B,IAAI,WAAW;AACf,IAAI,cAAc;AAClB,IAAI,oBAAoB;AACxB,IAAI,+BAA+B;AACnC,IAAI,+BAA+B;AACnC,IAAI,2BAA2B;AAC/B,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,iDAAiD;AACrD,IAAI,uCAAuC;AAC3C,IAAI,iDAAiD;AACrD,IAAI,uCAAuC;AAC3C,IAAI,qCAAqC;AACzC,IAAI,oBAAoB;AACxB,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,sBAAsB;AAC1B,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,IAAI,kCAAkC;AACtC,IAAI,wBAAwB;AAC5B,IAAI,+BAA+B;AACnC,IAAI,sBAAsB;AAC1B,IAAI,iBAAiB;AACrB,IAAI,2BAA2B;AAC/B,IAAI,4BAA4B;AAChC,IAAI,gBAAgB;AACpB,IAAI,YAAY;AAChB,IAAI,sBAAsB;AAC1B,IAAI,iBAAiB;AACrB,IAAI,gBAAgB;AACpB,IAAI,8BAA8B;AAClC,IAAI,yBAAyB;AAC7B,IAAI,2BAA2B;AAC/B,IAAI,iBAAiB;AACrB,IAAI,sBAAsB;AAC1B,IAAI,sBAAsB;AAC1B,IAAI,kBAAkB;AACtB,IAAI,oBAAoB;AACxB,IAAI,oBAAoB;AACxB,IAAI,2BAA2B;AAC/B,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,IAAI,sCAAsC;AAC1C,IAAI,iCAAiC;AACrC,IAAI,sCAAsC;AAC1C,IAAI,+BAA+B;AACnC,IAAI,gDAAgD;AACpD,IAAI,sCAAsC;AAC1C,IAAI,+BAA+B;AACnC,IAAI,+BAA+B;AACnC,IAAI,gCAAgC;AACpC,IAAI,gBAAgB;AACpB,IAAI,qBAAqB;AACzB,IAAI,gBAAgB;AACpB,IAAI,iCAAiC;AACrC,IAAI,4BAA4B;AAChC,IAAI,uBAAuB;AAC3B,IAAI,oBAAoB;AACxB,IAAI,gCAAgC;AACpC,IAAI,kBAAkB;AACtB,IAAI,uCAAuC;AAC3C,IAAI,uBAAuB;AAC3B,IAAI,yBAAyB;AAC7B,IAAI,wBAAwB;AAC5B,IAAI,yBAAyB;AAC7B,IAAI,2BAA2B;AAC/B,IAAI,4BAA4B;AAChC,IAAI,uBAAuB;AAC3B,IAAI,6BAA6B;AACjC,IAAI,wBAAwB;AAC5B,IAAI,0BAA0B;AAC9B,IAAI,4BAA4B;AAChC,IAAI,iCAAiC;AACrC,IAAI,+BAA+B;AACnC,IAAI,yBAAyB;AAC7B,IAAI,sBAAsB;AAC1B,IAAI,+BAA+B;AACnC,IAAI,cAAc;AAClB,IAAI,oBAAoB;AACxB,IAAI,kBAAkB;AACtB,IAAI,WAAW;AACf,IAAI,kBAAkB;AACtB,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,IAAI,6BAA6B;AACjC,IAAI,UAAU;AACd,IAAI,6BAA6B;AACjC,IAAI,kBAAkB;AACtB,IAAI,eAAe;AACnB,IAAI,8BAA8B;AAClC,IAAI,sBAAsB;AAC1B,IAAI,0CAA0C;AAC9C,IAAI,sCAAsC;AAC1C,IAAI,gBAAgB;AACpB,IAAI,UAAU;AACd,IAAI,oBAAoB;AACxB,IAAI,qBAAqB;AACzB,IAAI,2BAA2B;AAC/B,IAAI,4BAA4B;AAChC,IAAI,4BAA4B;AAChC,IAAI,wBAAwB;AAC5B,IAAI,iBAAiB;AACrB,IAAI,yBAAyB;AAC7B,IAAI,kBAAkB;AACtB,IAAI,mCAAmC;AACvC,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,kBAAkB;AACtB,IAAI,uCAAuC;AAC3C,IAAI,iCAAiC;AACrC,IAAI,oCAAoC;AACxC,IAAI,8BAA8B;AAClC,IAAI,+BAA+B;AACnC,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,gCAAgC;AACpC,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,eAAe;AACnB,IAAI,UAAU;AACd,IAAI,gCAAgC;AACpC,IAAI,eAAe;AACnB,IAAI,UAAU;AACd,IAAI,kCAAkC;AACtC,IAAI,uBAAuB;AAC3B,IAAI,mBAAmB;AACvB,IAAI,kCAAkC;AACtC,IAAI,uBAAuB;AAC3B,IAAI,gBAAgB;AACpB,IAAI,yBAAyB;AAC7B,IAAI,0BAA0B;AAC9B,IAAI,iCAAiC;AACrC,IAAI,6BAA6B;AACjC,IAAI,sBAAsB;AAC1B,IAAI,yBAAyB;AAC7B,IAAI,qBAAqB;AACzB,IAAI,eAAe;AACnB,IAAI,6BAA6B;AACjC,IAAI,0BAA0B;AAC9B,IAAI,iBAAiB;AACrB,IAAI,kCAAkC;AACtC,IAAI,6BAA6B;AACjC,IAAI,+BAA+B;AACnC,IAAI,8BAA8B;AAClC,IAAI,gCAAgC;AACpC,IAAI,iCAAiC;AACrC,IAAI,0BAA0B;AAC9B,IAAI,qBAAqB;AACzB,IAAI,6BAA6B;AACjC,IAAI,iBAAiB;AAErB,IAAI,YAAY;AAEhB,IAAI,4BAA4B;AAChC,IAAI,mCAAmC;AAEvC,IAAI,qCAAqC;AAEzC,IAAI,+BAA+B;AACnC,IAAI,mBAAmB;AACvB,IAAI,gBAAgB;AACpB,IAAI,gCAAgC;AACpC,IAAI,uBAAuB;AAE3B,IAAI,wBAAwB;AAC5B,IAAI,6BAA6B;AACjC,IAAI,wBAAwB;AAC5B,IAAI,eAAe;AACnB,IAAI,oBAAoB;AAExB,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,oBAAoB;AACxB,IAAI,8BAA8B;AAClC,IAAI,yBAAyB;AAC7B,IAAI,4BAA4B;AAChC,IAAI,0BAA0B;AAC9B,IAAI,kBAAkB;AACtB,IAAI,0BAA0B;AAC9B,IAAI,gBAAgB;AACpB,IAAI,gBAAgB;AACpB,IAAI,+BAA+B;AACnC,IAAI,0BAA0B;AAG9B,IAAI,oBAAoB;AACxB,IAAI,yBAAyB;AAC7B,IAAI,gBAAgB;AACpB,IAAI,iBAAiB;AACrB,IAAI,oCAAoC;AACxC,IAAI,uBAAuB;AAC3B,IAAI,YAAY;AAEhB,IAAI,+BAA+B;AACnC,IAAI,uBAAuB;AAG3B,IAAI,oBAAoB;AAExB,IAAI,gCAAgC;AACpC,IAAI,6BAA6B;AACjC,IAAI,oBAAoB;AACxB,IAAI,oBAAoB;AACxB,IAAI,kBAAkB;AACtB,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,kBAAkB;AACtB,IAAI,yBAAyB;AAC7B,IAAI,oCAAoC;AACxC,IAAI,oCAAoC;AACxC,IAAI,cAAc;AAClB,IAAI,uBAAuB;AAE3B,IAAI,oCAAoC;AACxC,IAAI,2BAA2B;AAG/B,IAAI,gCAAgC;AACpC,IAAI,iCAAiC;AACrC,IAAI,wBAAwB;AAC5B,IAAI,gCAAgC;AACpC,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,4BAA4B;AAEhC,IAAI,2BAA2B;AAC/B,IAAI,YAAY;AAEhB,IAAI,8BAA8B;AAClC,IAAI,kBAAkB;AACtB,IAAI,+BAA+B;AACnC,IAAI,eAAe;AACnB,IAAI,qBAAqB;AAGzB,IAAI,YAAY;AAChB,IAAI,uCAAuC;AAC3C,IAAI,kCAAkC;AAEtC,IAAI,wBAAwB;AAE5B,IAAI,2BAA2B;AAC/B,IAAI,sBAAsB;AAC1B,IAAI,mBAAmB;AACvB,IAAI,wCAAwC;AAC5C,IAAI,cAAc;AAIlB,IAAI,sBAAsB;AAC1B,IAAI,wBAAwB;AAG5B,IAAI,+BAA+B;AACnC,IAAI,6BAA6B;AACjC,IAAI,mCAAmC;AACvC,IAAI,iCAAiC;AAErC,IAAI,8BAA8B;AAClC,IAAI,mCAAmC;AACvC,IAAI,qCAAqC;AACzC,IAAI,yBAAyB;AAM7B,IAAI,2BAA2B;AAC/B,IAAI,8BAA8B;AAClC,IAAI,oBAAoB;AACxB,IAAI,0BAA0B;AAC9B,IAAI,eAAe;AAEnB,IAAI,4BAA4B;AAChC,IAAI,0CAA0C;AAC9C,IAAI,uCAAuC;AAE3C,IAAI,+BAA+B;AACnC,IAAI,4BAA4B;AAChC,IAAI,6BAA6B;AAEjC,IAAI,yBAAyB;AAG7B,IAAI,oCAAoC;AACxC,IAAI,wBAAwB;AAC5B,IAAI,oBAAoB;AAExB,IAAI,kCAAkC;AACtC,IAAI,2BAA2B;AAC/B,IAAI,2BAA2B;AAC/B,IAAI,2BAA2B;AAE/B,IAAI,0BAA0B;AAE9B,IAAI,+BAA+B;AAEnC,IAAI,8BAA8B;AAQlC,IAAI,SAAS,MAAM;AAAA,EACjB,YAAY,OAAO;AACjB,SAAK,QAAQ;AACb,SAAK,OAAO;AAAA,EACd;AACF;AACA,IAAI;AAAA,CACH,SAAS,UAAU;AAClB,WAAS,SAAS,OAAO,IAAI,CAAC,IAAI;AAClC,WAAS,SAAS,MAAM,IAAI,CAAC,IAAI;AACjC,WAAS,SAAS,SAAS,IAAI,CAAC,IAAI;AACtC,GAAG,YAAY,UAAU,CAAC,EAAE;AAC5B,IAAI,gBAAgB,MAAM;AAAA,EACxB,YAAY,YAAY,IAAI;AAC1B,SAAK,YAAY;AACjB,SAAK,OAAO;AAAA,EACd;AACF;AACA,IAAI,kBAAkB,CAAC;AACvB,IAAI,qBAAqB,CAAC;AAC1B,IAAI,iBAAiB,CAAC;AACtB,IAAI,eAAe,CAAC;AACpB,IAAI,gBAAgB,CAAC;AACrB,IAAI,mBAAmB,CAAC;AACxB,IAAI,cAAc,CAAC;AACnB,SAAS,gBAAgB,QAAQ,UAAU;AACzC,MAAI,MAAM,QAAQ,QAAQ;AACxB,aAAS,IAAI,CAACuB,OAAM,gBAAgB,QAAQA,EAAC,CAAC;AAChD,MAAI,SAAS;AACX,WAAO,iBAAiB,MAAM,EAAE,SAAS,QAAQ,EAAE,SAAS,KAAK;AAAA;AAEjE,WAAO,SAAS;AACpB;AACA,SAAS,SAAS,UAAU;AAC1B,MAAI,SAAS;AACX,WAAO;AAAA;AAEP,WAAO,EAAE,OAAO,SAAS,MAAM,SAAS,GAAG,WAAW,SAAS,MAAM,MAAM,GAAG,OAAO,SAAS,KAAK;AACvG;AACA,SAAS,eAAe,MAAM;AAC5B,UAAQ,KAAK,SAAS,GAAG;AAAA,IACvB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,EACX;AACF;AACA,IAAI;AAAA,CACH,SAAS,UAAU;AAClB,WAAS,QAAQ,IAAI;AACrB,WAAS,MAAM,IAAI;AACnB,WAAS,QAAQ,IAAI;AACvB,GAAG,YAAY,UAAU,CAAC,EAAE;AAC5B,YAAY,CAAC,IAAI,CAAC,UAAU,aAAa;AACzC,gBAAgB,CAAC,IAAI;AAAA,EACnB,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5K,WAAW,CAAC,MAAM,IAAI,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzK,WAAW,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtO,WAAW,CAAC,MAAM,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChY,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3U;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7a,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9K,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5M;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChP,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChH,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0CAA0C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0CAA0C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0CAA0C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8CAA8C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8CAA8C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8CAA8C,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChsB,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClY,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChmB,YAAY,CAAC,MAAM,IAAI,OAAO,gCAAgC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrrB,WAAW,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvN,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnP,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/L,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC9M;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/J;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3G,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClH,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB;AAAA,EACpD,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpJ,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1L,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtJ,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxY,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qCAAqC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACpV;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,wCAAwC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpN;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACnU;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kCAAkC,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC9L,WAAW,CAAC,MAAM,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3e,WAAW,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7R,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7N,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7K,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzH,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EACpH,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EACjP,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrP,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;AAAA,EAC1iC;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,mCAAmC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9Q;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxQ,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClgB,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnP,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7P,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/P,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzP,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3P,WAAW,CAAC,MAAM,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/L,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1M;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrY;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClP,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,qBAAqBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,wCAAwCA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1Y;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,8BAA8B,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzK;AAAA,EACA,UAAU,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3W,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxF,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,wCAAwC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClN;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnO,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChK,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kBAAkB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzF,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChH,YAAY,CAAC,MAAM,IAAI,OAAO,gCAAgC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sCAAsC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtgB,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,qCAAqC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sCAAsC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,SAAS,KAAK,EAAE,EAAE,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtlC;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,UAAU,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChf,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,EAAE,CAAC,CAAC;AAAA,EAClD,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtF,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB;AAAA,EACjD,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC3jB,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9xB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxd;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtT;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzW,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI,IAAI,IAAI,IAAI;AACpB,WAAO,IAAI,OAAO,UAAU,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACn4B;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC3P;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9J,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1N,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3qB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9F,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/F,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1G,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClG,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,+BAA+B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtV;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,8BAA8B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxiB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChH,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iCAAiC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpK;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC3R;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kCAAkC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpa,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/G,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtK,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3J,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3U;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,kCAAkC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtU,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpQ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtQ,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxQ,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzQ,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtQ,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1Q,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvQ,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpU;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClY,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5K,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5T;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnL,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB;AAAA,EACpD,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/H,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAChf,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnQ,WAAW,CAAC,MAAM,IAAI,OAAO,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACvD,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpJ,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC3Y;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnV;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxT;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjU;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjK,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5H,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7G,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnH,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnY,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxT;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxQ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClU;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1N;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChN,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClL,WAAW,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzF,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,8BAA8B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjK;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/J,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACpI,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzK;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC9K;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI,IAAI;AACZ,WAAO,IAAI,OAAO,kBAAkB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,SAASA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3P,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,gBAAgBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EAChd;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpJ,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACjb,YAAY,CAAC,MAAM,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EAC5Z,WAAW,CAAC,MAAM,IAAI,OAAO,qBAAqB;AAAA,EAClD,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,8BAA8B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrN;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gBAAgB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACnJ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,kBAAkBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxK;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3b,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvW,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mCAAmC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/M;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1J;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC;AAAA,EAC/D,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,0BAA0B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpU;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,oBAAoB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACvJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,UAAU;AAAA,EACxC,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,2BAA2B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjR;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClF,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,6BAA6B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,iBAAiBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpS;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtlB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClR;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzR;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxR;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtR;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrK,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnK,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gCAAgC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjR;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC5O,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChO,WAAW,CAAC,MAAM,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9S,WAAW,CAAC,MAAM,IAAI,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1S,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAChU;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChS;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpJ,UAAU,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3W,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjJ,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvL,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9P,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnQ,YAAY,CAAC,MAAM,IAAI,OAAO,gCAAgC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvQ,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxP,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnP,YAAY,CAAC,MAAM,IAAI,OAAO,gCAAgC,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5G,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClH,WAAW,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EACxL,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,8BAA8B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxT;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,UAAU,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC7I;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC3G,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC/G,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EACtN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7hB,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrN;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtZ,WAAW,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3U,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7iB,YAAY,CAAC,MAAM,IAAI,OAAO,kCAAkC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5X,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B;AAAA,EAC7D,YAAY,CAAC,MAAM,IAAI,OAAO,qCAAqC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzX,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kBAAkB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrJ;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzI,WAAW,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC/G,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qCAAqC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjgB,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnN,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzd;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjT,WAAW,CAAC,MAAM,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvT,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnW,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9kB,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/iB,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,6BAA6B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,6BAA6B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC7xB,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3I,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ;AAAA,EACtC,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxH,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7U;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,wCAAwC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,2BAA2B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,8BAA8B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sCAAsC,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACt7B,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9Q,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/F,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,eAAe,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC9G,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnK,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,UAAU,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC7I;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5b;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACzZ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChF,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5J,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS;AAAA,EACvC,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5I,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvM,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzM,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/F,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnG,WAAW,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxG,WAAW,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1G,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5R;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9S,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjR,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3U;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrU;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,0BAA0B,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9Q,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpR,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrQ,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,gBAAgB,GAAGA,EAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/iB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/R,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC7gB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qCAAqC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxc;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1Q,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtW,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjT;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EAClY,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/J;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/U,WAAW,CAAC,MAAM,IAAI,OAAO,cAAc;AAAA,EAC3C,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,WAAW,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC/a;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,EACna,WAAW,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,CAAC;AAAA,EACjvB,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,uBAAuB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnkB,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,sBAAsB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5V,YAAY,CAAC,MAAM,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrjB,YAAY,CAAC,MAAM,IAAI,OAAO,8CAA8C,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzoB,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/hB,YAAY,CAAC,MAAM,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpnB,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACxxD,YAAY,CAAC,MAAM,IAAI,OAAO,oCAAoC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC/kE,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5J,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW;AAAA,EACzC,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACze,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5H,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtV,WAAW,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzH,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACv3B,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrT;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAClJ,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1P,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvZ,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtI,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAChc;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACloB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACttB,YAAY,CAAC,MAAM,IAAI,OAAO,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrI,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjF,WAAW,CAAC,MAAM,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC/8B,WAAW,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnf,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK;AAAA,EACxsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1jB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,6BAA6B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvR;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjN;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gCAAgC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtV;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9I,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3I,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7I,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnM,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjI,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB;AAAA,EAChD,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClR,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvJ,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1jB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,oBAAoB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,iBAAiBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxK;AAAA,EACA,UAAU,CAAC,MAAM,IAAI,OAAO,mCAAmC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC1P,YAAY,CAAC,MAAM,IAAI,OAAO,qCAAqC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC9P,YAAY,CAAC,MAAM,IAAI,OAAO,+CAA+C,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAClT,YAAY,CAAC,MAAM,IAAI,OAAO,qCAAqC,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpT,YAAY,CAAC,MAAM,IAAI,OAAO,+CAA+C,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAClZ,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5N,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7H,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC98B,WAAW,CAAC,MAAM,IAAI,OAAO,6BAA6B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACvwB,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrF,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/E,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS;AAAA,EACvC,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACvP;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1H,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5Q;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACnU;AAAA,EACA,UAAU,CAAC,MAAM;AACf,QAAI;AACJ,WAAO,IAAI,OAAO,eAAe,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC9I;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACtlC,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnf,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,aAAa,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK;AAAA,EACtsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1J;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzG,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7G,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjJ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtb;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxF,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7R,UAAU,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClV,WAAW,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrO,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,2BAA2B,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC9J;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1S,YAAY,CAAC,MAAM,IAAI,OAAO,oCAAoC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvG,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,wBAAwB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjQ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,mCAAmC,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,gBAAgB,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EAC7pC,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACzsB;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC1J;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3e,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACpvB,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClH,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxF,YAAY,CAAC,MAAM,IAAI,OAAO,UAAU,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpU,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EACvK,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9M,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1f,WAAW,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/L,WAAW,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3E,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrU,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjb,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,WAAW,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnlB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7Q;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACnX;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpf,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACngB,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzR,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC1X,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACxX;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5d;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACta;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9d;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,4BAA4B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7a;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACza;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACrX;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,6BAA6B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpa;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1a;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtd;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACna;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzhB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzQ,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtZ,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;AAAA,EACzpB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrW,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnZ,YAAY,CAAC,MAAM,IAAI,OAAO,iCAAiC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1W,YAAY,CAAC,MAAM,IAAI,OAAO,gCAAgC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzW,YAAY,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjlB,WAAW,CAAC,MAAM,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACznB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,oCAAoC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3kB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7a;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpa;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC9Z;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5Z;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAClX;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACra;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/Z;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5V,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACra;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnjB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACvZ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5d;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxhB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9V,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mCAAmC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9a;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1a;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,eAAe,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACpZ,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACna;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EAC9a,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5V,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtU,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,qBAAqB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClO,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxN,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5N,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtgB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjtB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5I,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACze,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxb,WAAW,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzb,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACze,YAAY,CAAC,MAAM,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACthB,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,kCAAkC,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,yBAAyBA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACxsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gCAAgC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACnK;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,kBAAkB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxU,YAAY,CAAC,MAAM,IAAI,OAAO,4BAA4B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrO,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxK,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,8BAA8B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChtB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAC1jB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAChtB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1W,YAAY,CAAC,MAAM,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpb,YAAY,CAAC,MAAM,IAAI,OAAO,8BAA8B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACxyB,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5Q,YAAY,CAAC,MAAM,IAAI,OAAO,yBAAyB,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzI,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB;AAAA,EAC9C,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACjsB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,iBAAiB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpkB,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClS,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,oBAAoB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK;AAAA,EAClL;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5E,YAAY,CAAC,MAAM,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjhB,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrU,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtU,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,CAAC;AAAA,EAC1xB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACxsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzgB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC3sB;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,mCAAmC,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACtK;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,+BAA+B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjtB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,4BAA4B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,0BAA0B,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,gBAAgB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK;AAAA,EAC/yB,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrf,YAAY,CAAC,MAAM,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EACzgB,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9f,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1sB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9M,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,8BAA8B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChtB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9f,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/U,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACjtB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC1sB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjF,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACpM;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrf,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAClsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5f,YAAY,CAAC,MAAM,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpgB,YAAY,CAAC,MAAM,IAAI,OAAO,6BAA6B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACvgB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACzsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACrsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,yBAAyB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACtsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,2BAA2B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7sB;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9f,WAAW,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9U,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI,IAAI;AACZ,WAAO,IAAI,OAAO,QAAQ,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5wB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,SAAS,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACnU,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC7sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC1sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,aAAa,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACnnB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACxkB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACpsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC5sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxJ;AAAA,EACA,WAAW,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC7pB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,0BAA0B,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtsB;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC/sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,QAAQ,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,SAAS,KAAK,EAAE,EAAE,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAO,QAAQA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC9wB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACnX,YAAY,CAAC,MAAM,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5f,YAAY,CAAC,MAAM,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC;AAAA,EACxnB,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,cAAc,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACtsB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAChY,YAAY,CAAC,MAAM,IAAI,OAAO,UAAU,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACzX,WAAW,CAAC,MAAM;AAChB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC3sB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,aAAa,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACrsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,cAAc,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACjJ;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,QAAQ,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC9a,YAAY,CAAC,MAAM,IAAI,OAAO,aAAa,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACjc,YAAY,CAAC,MAAM,IAAI,OAAO,gBAAgB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EACpc,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,sBAAsB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;AAAA,EAC/b;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,qBAAqB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC/f,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAChtB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,YAAY,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACpsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,qBAAqB,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EACxJ;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,eAAe,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EACvsB;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,kBAAkB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAC1sB;AAAA,EACA,WAAW,CAAC,MAAM;AAChB,QAAI;AACJ,WAAO,IAAI,OAAO,iBAAiB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC;AAAA,EAC5Z;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI;AACJ,WAAO,IAAI,OAAO,mBAAmB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAAA,EAC1d;AAAA,EACA,YAAY,CAAC,MAAM;AACjB,QAAI,IAAI;AACR,WAAO,IAAI,OAAO,wBAAwB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,KAAK,EAAE,CAAC,MAAM,OAAO,SAAS,GAAG,IAAI,CAACA,QAAOA,MAAK,OAAO,SAASA,GAAE,SAAS,IAAI,OAAOA,GAAE,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;AAAA,EAChtB;AAAA,EACA,YAAY,CAAC,MAAM,IAAI,OAAO,uBAAuB,IAAI,OAAO,oBAAoB,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,wBAAwB,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAA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O,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,GAAG,OAAO,MAAM;AAC9C,kBAAgB,MAAM,EAAE,MAAM,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CAAC,IAAI,OAAO,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,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,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,OAAO,YAAY,CAAC,EAAE,EAAE,IAAI,OAAO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,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE,IAAI,IAAI;AACV,gBAAAA,GAAE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QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AACA,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxC,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;AACxB,UAAI,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AACA,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxE,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxE,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxC,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;AACxB,UAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;AACxB,aAAO;AAAA,QACH,4BAA4B;AAAA,QAC5B,kBAAkB;AAAA,QAClB,wBAAwB;AAAA,QACxB,6CAA6C;AAAA,QAC7C,mBAAmB;AAAA,QACnB,gBAAgB;AAAA,QAChB,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,iBAAiB;AAAA,QACjB,gBAAgB;AAAA,QAChB,0BAA0B;AAAA,QAC1B,OAAO;AAAA,QACP,SAAS;AAAA,QACT,cAAc;AAAA,QACd,iBAAiB;AAAA,QACjB,SAAS;AAAA,QACT,SAAS;AAAA,QACT,UAAU;AAAA,QACV,SAAS;AAAA,QACT,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,cAAc;AAAA,QACd,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,aAAa;AAAA,QACb,cAAc;AAAA,QACd,eAAe;AAAA,QACf,gBAAgB;AAAA,QAChB,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,cAAc;AAAA,QACd,WAAW;AAAA,MACf;AAAA,IACJ;AAAA;AAAA,MAEA;AAAA,MAAc;AAAA,MAAe;AAAA,IAAM;AAAA;AACnC,MAAI,6BAA8BxB,QAAO,4BAA4B,IACjE,IAAI,4BAA4B;AACpC,MAAI,mBAAoBA,QAAO,kBAAkB,IAAI,IAAI,kBAAkB;AAC3E,MAAI,yBAA0BA,QAAO,wBAAwB,IAAI,IAAI,wBAAwB;AAC7F,MAAI,8CAA+CA,QAAO,6CAA6C,IAAI,IAAI,6CAA6C;AAC5J,MAAI,oBAAqBA,QAAO,mBAAmB,IAAI,IAAI,mBAAmB;AAC9E,MAAI,iBAAkBA,QAAO,gBAAgB,IAAI,IAAI,gBAAgB;AACrE,MAAI,YAAaA,QAAO,WAAW,IAAI,IAAI,WAAW;AACtD,MAAI,aAAcA,QAAO,YAAY,IAAI,IAAI,YAAY;AACzD,MAAI,kBAAmBA,QAAO,iBAAiB,IAAI,IAAI,iBAAiB;AACxE,MAAI,iBAAkBA,QAAO,gBAAgB,IAAI,IAAI,gBAAgB;AACrE,MAAI,2BAA4BA,QAAO,0BAA0B,IAC7D,IAAI,0BAA0B;AAClC,MAAI,QAASA,QAAO,OAAO,IAAI,IAAI,OAAO;AAC1C,MAAI,UAAWA,QAAO,SAAS,IAAI,IAAI,SAAS;AAChD,MAAI,eAAgBA,QAAO,cAAc,IAAI,IAAI,cAAc;AAC/D,MAAI,kBAAmBA,QAAO,iBAAiB,IAAI,IAAI,iBAAiB;AACxE,MAAI,UAAWA,QAAO,SAAS,IAAI,IAAI,SAAS;AAChD,MAAI,UAAWA,QAAO,SAAS,IAAI,IAAI,SAAS;AAChD,MAAI,WAAYA,QAAO,UAAU,IAAI,IAAI,UAAU;AACnD,MAAI,UAAWA,QAAO,SAAS,IAAI,IAAI,SAAS;AAChD,MAAI,cAAeA,QAAO,aAAa,IAAI,IAAI,aAAa;AAC5D,MAAI,aAAcA,QAAO,YAAY,IAAI,IAAI,YAAY;AACzD,MAAI,eAAgBA,QAAO,cAAc,IAAI,IAAI,cAAc;AAC/D,MAAI,YAAaA,QAAO,WAAW,IAAI,IAAI,WAAW;AACtD,MAAI,YAAaA,QAAO,WAAW,IAAI,IAAI,WAAW;AACtD,MAAI,aAAcA,QAAO,YAAY,IAAI,IAAI,YAAY;AACzD,MAAI,kBAAmBA,QAAO,iBAAiB,IAAI,IAAI,iBAAiB;AACxE,MAAI,cAAeA,QAAO,aAAa,IAAI,IAAI,aAAa;AAC5D,MAAI,eAAgBA,QAAO,cAAc,IAAI,IAAI,cAAc;AAC/D,MAAI,YAAaA,QAAO,WAAW,IAAI,IAAI,WAAW;AACtD,MAAI,aAAcA,QAAO,YAAY,IAAI,IAAI,YAAY;AACzD,MAAI,cAAeA,QAAO,aAAa,IAAI,IAAI,aAAa;AAC5D,MAAI,eAAgBA,QAAO,cAAc,IAAI,IAAI,cAAc;AAC/D,MAAI,gBAAiBA,QAAO,eAAe,IAAI,IAAI,eAAe;AAClE,MAAI,iBAAkBA,QAAO,gBAAgB,IAAI,IAAI,gBAAgB;AACrE,MAAI,kBAAmBA,QAAO,iBAAiB,IAAI,IAAI,iBAAiB;AACxE,EAAAA,QAAO,KAAK,IAAI;AAChB,MAAI,mBAAmB;AACnB,QAAI,CAAC,UAAU,iBAAiB,GAAG;AAC/B,0BAAoB,WAAW,iBAAiB;AAAA,IACpD;AACA,QAAI,uBAAuB,sBAAsB;AAC7C,UAAI,OAAO,WAAW,iBAAiB;AACvC,aAAO,IAAI,MAAM,WAAW;AAAA,IAChC,OACK;AACD,uBAAiB,oBAAoB;AACrC,UAAI,yBAAyB,SAAUM,OAAM;AACzC,YAAIA,MAAK;AACL,UAAAA,QAAO,IAAI,WAAWA,KAAI;AAC9B,eAAO,IAAIA,OAAM,WAAW;AAC5B,YAAIN,QAAO,0BAA0B;AACjC,iBAAOA,QAAO,0BAA0B,EAAE;AAC9C,4BAAoB,oBAAoB;AAAA,MAC5C;AACA,UAAI,gBAAgB,WAAY;AAC5B,kBAAU,mBAAmB,wBAAwB,WAAY;AAC7D,cAAI,IAAI,IAAI,MAAM,uCAAuC,iBAAiB;AAC1E,gBAAM;AAAA,QACV,CAAC;AAAA,MACL;AACA,UAAI,yBAAyB,kBAAkB,iBAAiB;AAChE,UAAI,wBAAwB;AACxB,+BAAuB,uBAAuB,MAAM;AAAA,MACxD,WACSA,QAAO,0BAA0B,GAAG;AACzC,YAAI,aAAa,WAAY;AACzB,cAAI,UAAUA,QAAO,0BAA0B;AAC/C,cAAI,WAAW,QAAQ;AACvB,cAAI,QAAQ,WAAW,OAAO,QAAQ,WAAW,GAAG;AAChD,gBAAIM,QAAO,kBAAkBN,QAAO,6BAA6B,CAAC;AAClE,gBAAIM,OAAM;AACN,yBAAWA,MAAK;AAAA,YACpB,OACK;AACD,sBAAQ,KAAK,oFACT,QAAQ,SACR,gBACA,iBAAiB;AACrB,4BAAc;AACd;AAAA,YACJ;AAAA,UACJ;AACA,iCAAuB,QAAQ;AAAA,QACnC;AACA,YAAIN,QAAO,0BAA0B,EAAE,UAAU;AAC7C,qBAAW,YAAY,CAAC;AAAA,QAC5B,OACK;AACD,UAAAA,QAAO,0BAA0B,EAAE,iBAAiB,QAAQ,UAAU;AAAA,QAC1E;AAAA,MACJ,OACK;AACD,sBAAc;AAAA,MAClB;AAAA,IACJ;AAAA,EACJ;AACA,MAAI;AACJ,WAAS,WAAW,QAAQ;AACxB,SAAK,OAAO;AACZ,SAAK,UAAU,kCAAkC,SAAS;AAC1D,SAAK,SAAS;AAAA,EAClB;AACA,0BAAwB,SAAS,YAAY;AACzC,QAAI,CAAC;AACD,UAAI;AACR,QAAI,CAAC;AACD,8BAAwB;AAAA,EAChC;AACA,WAAS,IAAI,MAAM;AACf,WAAO,QAAQ;AACf,QAAI,kBAAkB,GAAG;AACrB;AAAA,IACJ;AACA,WAAO;AACP,QAAI,kBAAkB;AAClB;AACJ,aAAS,QAAQ;AACb,UAAI;AACA;AACJ,kBAAY;AACZ,MAAAA,QAAO,WAAW,IAAI;AACtB,UAAI;AACA;AACJ,kBAAY;AACZ,cAAQ;AACR,UAAIA,QAAO,sBAAsB;AAC7B,QAAAA,QAAO,sBAAsB,EAAE;AACnC,cAAQ;AAAA,IACZ;AACA,QAAIA,QAAO,WAAW,GAAG;AACrB,MAAAA,QAAO,WAAW,EAAE,YAAY;AAChC,iBAAW,WAAY;AACnB,mBAAW,WAAY;AACnB,UAAAA,QAAO,WAAW,EAAE,EAAE;AAAA,QAC1B,GAAG,CAAC;AACJ,cAAM;AAAA,MACV,GAAG,CAAC;AAAA,IACR,OACK;AACD,YAAM;AAAA,IACV;AAAA,EACJ;AACA,EAAAA,QAAO,KAAK,IAAI;AAChB,MAAIA,QAAO,SAAS,GAAG;AACnB,QAAI,OAAOA,QAAO,SAAS,KAAK;AAC5B,MAAAA,QAAO,SAAS,IAAI,CAACA,QAAO,SAAS,CAAC;AAC1C,WAAOA,QAAO,SAAS,EAAE,SAAS,GAAG;AACjC,MAAAA,QAAO,SAAS,EAAE,IAAI,EAAE;AAAA,IAC5B;AAAA,EACJ;AACA,kBAAgB;AAChB,MAAI;AACJ,SAAOA;AACX;;;AC1jlBA,IAAI,SAAS;AACb,IAAM,uBAAuB;AAAA,EACzB,GAAG,CAAC,OAAO;AACP,WAAO;AAAA,MACH,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;AAAA,MAC3E,WAAW,GAAG,UAAU,IAAI,IAAI;AAAA,MAChC,gBAAgB,GAAG,SAAS,EAAE;AAAA,IAClC;AAAA,EACJ;AAAA,EACA,GAAG,CAAC,OAAO;AACP,WAAO;AAAA,MACH,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;AAAA,MAC3E,WAAW,GAAG,UAAU,IAAI,IAAI;AAAA,MAChC,gBAAgB,GAAG,SAAS,EAAE;AAAA,IAClC;AAAA,EACJ;AAAA,EACA,GAAG,CAAC,OAAO;AACP,WAAO;AAAA,MACH,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;AAAA,MAC3E,WAAW,GAAG,UAAU,IAAI,IAAI;AAAA,MAChC,gBAAgB,GAAG,SAAS,EAAE;AAAA,MAC9B,OAAO,CAAC,GAAG,UAAU,IAAI,IAAI,GAAG,GAAG,UAAU,IAAI,IAAI,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC;AAAA,IAClF;AAAA,EACJ;AAAA,EACA,GAAG,CAAC,OAAO;AACP,WAAO;AAAA,MACH,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;AAAA,MAC3E,WAAW,GAAG,UAAU,IAAI,IAAI;AAAA,MAChC,gBAAgB,GAAG,SAAS,EAAE;AAAA,MAC9B,OAAO,CAAC,GAAG,UAAU,IAAI,IAAI,GAAG,GAAG,UAAU,IAAI,IAAI,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC;AAAA,IAClF;AAAA,EACJ;AACJ;AASA,SAAS,OAAO,KAAK,OAAO,CAAC,GAAG,QAAQ,OAAO;AAC3C,UAAQ,UAAU,UAAa,UAAU,IAAI,IAAI;AACjD,QAAM,MAAM,IAAI,MAAM,QAAQ,SAAS,KAAK,oBAAoB,KAAK;AACrE,QAAMyD,KAAI,IAAI,KAAK,GAAG;AACtB,MAAI,UAAU,GAAG;AACb,WAAOA,GAAE,CAAC;AAAA,EACd;AACA,QAAM,MAAM,CAAC;AACb,WAASC,KAAI,GAAGA,KAAI,OAAOA,MAAK;AAC5B,QAAI,KAAKD,GAAEC,EAAC,CAAC;AAAA,EACjB;AACA,SAAO;AACX;AAMA,SAAS,eAAe,aAAa;AACjC,MAAI,QAAQ,KAAK,IAAI;AACrB,QAAMC,KAAI;AAAA,IACN,cAAc,OAAO,aAAa,aAAa,KAAK,CAAC;AAAA,IACrD,gBAAgB,OAAO,aAAa,YAAY,KAAK,IAAI,CAAC;AAAA,IAC1D,kBAAkB,OAAO,aAAa,aAAa,KAAK,IAAI,IAAI,CAAC;AAAA,IACjE,aAAa,OAAO,aAAa,aAAa,KAAK,IAAI,EAAE;AAAA,IACzD,OAAO,OAAO,aAAa,cAAc,OAAO,CAAC;AAAA,EACrD;AACA,WAAS;AACT,EAAAA,GAAE,SAAS,OAAO,aAAa,cAAc,OAAO,CAAC;AACrD,WAAS;AACT,QAAM,SAAS,OAAO,aAAa,cAAc,OAAO,CAAC;AACzD,WAAS;AACT,EAAAA,GAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AACzC,EAAAA,GAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AACzC,SAAOA;AACX;AAIA,IAAMC,aAAN,MAAgB;AAAA,EACZ;AAAA,EACA,aAAa;AAAA,EACb,SAAS;AAAA,IACL,cAAc;AAAA,IACd,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,aAAa;AAAA,IACb,OAAO,CAAC,GAAG,GAAG,CAAC;AAAA,IACf,QAAQ,CAAC,GAAG,GAAG,CAAC;AAAA,IAChB,MAAM,CAAC,CAAC;AAAA,IACR,MAAM,CAAC,CAAC;AAAA,IACR,aAAa;AAAA,IACb,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,cAAc;AAAA,EAClB;AAAA,EACA,YAAY,aAAa;AACrB,SAAK,cAAc;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO;AAEH,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY;AACR,SAAK,SAAS,eAAe,KAAK,WAAW;AAC7C,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAS,OAAO,MAAM;AAClB,UAAM,EAAE,QAAQ,YAAY,IAAI;AAChC,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,2DAA2D;AAAA,IAC/E;AACA,QAAI,EAAE,WAAW,IAAI;AACrB,QAAI;AACJ,QAAI,QAAQ,GAAG;AACX,cAAQ,KAAK,IAAI,OAAO,OAAO,cAAc,UAAU;AACvD,cAAQ,OAAO,eAAe,aAAa,OAAO;AAClD,YAAM,MAAM,QAAQ,QAAQ,OAAO;AACnC,oBAAc;AACd,WAAK,aAAa;AAClB,aAAO;AAAA,QACH,QAAQ,YAAY,MAAM,OAAO,GAAG;AAAA,QACpC;AAAA,QACA,aAAa,aAAa,OAAO;AAAA,MACrC;AAAA,IACJ;AACA,UAAM,eAAe,KAAK,IAAI,QAAQ,MAAM,OAAO,cAAc,UAAU;AAC3E,UAAM,aAAa,KAAK,KAAK,eAAe,IAAI;AAChD,QAAI,aAAa;AACjB,UAAM,MAAM,IAAI,WAAW,aAAa,OAAO,gBAAgB;AAC/D,aAASF,KAAI,GAAGA,KAAI,cAAcA,MAAK;AACnC,UAAIA,KAAI,SAAS,GAAG;AAChB,gBAAQ,OAAO,eAAe,aAAa,OAAO;AAClD,cAAM,MAAM,IAAI,WAAW,aAAa,OAAO,OAAO,gBAAgB;AACtE,YAAI,IAAI,KAAK,aAAa,OAAO,gBAAgB;AACjD;AAAA,MACJ;AACA;AAAA,IACJ;AACA,SAAK,aAAa;AAClB,WAAO;AAAA,MACH,QAAQ,IAAI;AAAA,MACZ,OAAO;AAAA,MACP,aAAa,aAAa,OAAO;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ;AAEJ,SAAK,cAAc;AACnB,WAAO;AAAA,EACX;AACJ;AAKA,IAAM,YAAN,MAAgB;AAAA,EACZ;AAAA,EACA,WAAW;AAAA;AAAA,EACX,SAAS;AAAA,EACT,YAAY,aAAa;AACrB,SAAK,cAAc;AACnB,QAAI,CAAC,QAAQ;AAET,eAAS,UAAU;AAAA,IACvB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO;AACH,QAAI;AACA,YAAM,EAAE,YAAY,IAAI;AACxB,WAAK,WAAW,IAAI,OAAO,OAAO;AAClC,YAAM,QAAQ,IAAI,WAAW,WAAW;AACxC,YAAM,MAAM,OAAO,QAAQ,YAAY,UAAU;AACjD,WAAK,SAAS,cAAc;AAC5B,WAAK,SAAS,MAAM;AACpB,aAAO,OAAO,IAAI,OAAO,GAAG;AAC5B,WAAK,SAAS,KAAK,KAAK,YAAY,UAAU;AAC9C,WAAK,SAAS,aAAa;AAC3B,aAAO;AAAA,IACX,SACO,OAAO;AACV,YAAM,IAAI,MAAM,wBAAwB,MAAM,OAAO,EAAE;AAAA,IAC3D;AAAA,EACJ;AAAA,EACA,YAAY;AACR,QAAI,CAAC,KAAK,UAAU;AAChB,YAAM,IAAI,MAAM,wDAAwD;AAAA,IAC5E;AACA,QAAI;AACA,YAAM,SAAS,eAAe,KAAK,SAAS,WAAW;AACvD,aAAO,kBAAkB;AACzB,WAAK,SAAS;AACd,aAAO;AAAA,IACX,SACO,OAAO;AACV,YAAM,IAAI,MAAM,yBAAyB,MAAM,OAAO,EAAE;AAAA,IAC5D;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAS,OAAO,QAAQ,MAAM;AAC1B,QAAI,CAAC,KAAK,UAAU;AAChB,YAAM,IAAI,MAAM,uDAAuD;AAAA,IAC3E;AACA,UAAM,EAAE,QAAQ,SAAS,IAAI;AAC7B,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,8EAA8E;AAAA,IAClG;AACA,QAAI;AACA,YAAM,eAAe,KAAK,IAAI,QAAQ,MAAM,OAAO,cAAc,SAAS,UAAU;AACpF,YAAM,aAAa,KAAK,KAAK,eAAe,IAAI;AAChD,UAAI,aAAa;AACjB,YAAM,UAAU,IAAI,WAAW,aAAa,OAAO,gBAAgB;AACnE,YAAM,UAAU,OAAO,QAAQ,OAAO,gBAAgB;AACtD,eAASA,KAAI,GAAGA,KAAI,cAAcA,MAAK;AACnC,iBAAS,SAAS,OAAO;AACzB,YAAIA,KAAI,SAAS,GAAG;AAChB,gBAAMG,KAAI,IAAI,WAAW,OAAO,OAAO,QAAQ,SAAS,OAAO,gBAAgB;AAC/E,kBAAQ,IAAIA,IAAG,aAAa,OAAO,gBAAgB;AACnD;AAAA,QACJ;AACA,iBAAS;AAAA,MACb;AACA,aAAO,MAAM,OAAO;AACpB,aAAO;AAAA,QACH,QAAQ,QAAQ;AAAA,QAChB,OAAO;AAAA,QACP,aAAa,SAAS,aAAa,OAAO;AAAA,MAC9C;AAAA,IACJ,SACO,OAAO;AACV,YAAM,IAAI,MAAM,wBAAwB,MAAM,OAAO,EAAE;AAAA,IAC3D;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ;AACJ,QAAI;AACA,UAAI,KAAK,aAAa,MAAM;AACxB,eAAO,MAAM,KAAK,SAAS,GAAG;AAC9B,aAAK,SAAS,OAAO;AACrB,aAAK,WAAW;AAAA,MACpB;AACA,aAAO;AAAA,IACX,SACO,OAAO;AACV,YAAM,IAAI,MAAM,yBAAyB,MAAM,OAAO,EAAE;AAAA,IAC5D;AAAA,EACJ;AACJ;AAIA,IAAM,aAAN,MAAiB;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY,QAAQ,KAAK,QAAQ;AAC7B,SAAK,SAAS;AACd,SAAK,UAAU,qBAAqB,OAAO,cAAc;AACzD,SAAK,cAAc;AACnB,SAAK,YAAY,OAAO;AACxB,SAAK,QAAQ,OAAO;AACpB,SAAK,SAAS,OAAO;AACrB,SAAK,OAAO,OAAO;AACnB,SAAK,OAAO,OAAO;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAS,OAAO;AACZ,QAAI,QAAQ,KAAK,SAAS,KAAK,aAAa;AACxC,YAAM,IAAI,MAAM,0BAA0B;AAAA,IAC9C;AACA,UAAM,KAAK,IAAI,SAAS,KAAK,QAAQ,QAAQ,KAAK,WAAW,KAAK,SAAS;AAC3E,WAAO,KAAK,QAAQ,EAAE;AAAA,EAC1B;AACJ;AAIO,IAAM,UAAN,MAAc;AAAA,EACjB;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA,eAAe;AAAA,EACf,SAAS;AAAA,EACT,UAAU;AAAA,EACV,kBAAkB;AAAA,EAClB,YAAY,aAAa;AACrB,SAAK,cAAc;AACnB,QAAI,KAAK,iBAAiB,IAAI,IAAI;AAC9B,YAAM,IAAI,MAAM,sDAAsD;AAAA,IAC1E;AACA,SAAK,gBAAgB;AACrB,QAAI,qBAAqB,KAAK,QAAQ,MAAM,QAAW;AACnD,YAAM,IAAI,MAAM,sCAAsC;AAAA,IAC1D;AACA,SAAK,SAAS,KAAK,eACb,IAAI,UAAU,KAAK,WAAW,IAC9B,IAAID,WAAU,KAAK,WAAW;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB;AACd,UAAM,WAAW,OAAO,KAAK,aAAa,YAAY,KAAK,IAAI,CAAC;AAChE,UAAM,QAAQ,WAAW,QAAS;AAClC,UAAM,QAAQ,WAAW,OAAS;AAClC,QAAI,SAAS,KAAK,SAAS,GAAG;AAC1B,YAAM,IAAI,MAAM,qCAAqC;AAAA,IACzD;AACA,SAAK,WAAW,WAAW;AAC3B,SAAK,eAAe,SAAS,KAAK,SAAS;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB;AACf,UAAM,MAAM,IAAI,UAAU,KAAK,aAAa,IAAI,CAAC;AACjD,SAAK,UAAU,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;AAClC,SAAK,kBAAkB,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;AAC1C,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO;AACH,QAAI,KAAK,OAAO,KAAK,GAAG;AACpB,WAAK,SAAS;AAAA,IAClB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY;AACR,WAAO,KAAK,OAAO,UAAU;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAS,OAAO,OAAO,MAAM;AACzB,WAAO,KAAK,OAAO,SAAS,OAAO,OAAO,IAAI;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA,EAIA,QAAQ;AACJ,QAAI,KAAK,OAAO,MAAM,GAAG;AACrB,WAAK,SAAS;AAAA,IAClB;AAAA,EACJ;AAAA;AAAA;AAAA,EAGA,cAAc;AACV,WAAO;AAAA,EACX;AACJ;;;ACxYO,SAAS,aAAa,WAAW,YAAY;AAChD,QAAM,cAAc,0BAA0B,SAAS;AACvD,QAAM,SAAS,iBAAiB,YAAY,WAAW;AACvD,SAAO;AACX;AAMO,SAAS,0BAA0B,WAAW;AACjD,QAAM,WAAW,CAAC;AAElB,WAAS,mBAAmB,UAAU,aAAa,SAAS,EAAE;AAC9D,WAAS,qBAAqB,UAAU,eAAe,SAAS,EAAE;AAClE,WAAS,uBAAuB,UAAU,iBAAiB,SAAS,EAAE;AACtE,WAAS,kBAAkB,UAAU,YAAY,SAAS,EAAE;AAC5D,WAAS,YAAY,KAAK,UAAU,UAAU,KAAK;AACnD,WAAS,aAAa,KAAK,UAAU,UAAU,MAAM;AACrD,MAAI,UAAU,SAAS,QAAW;AAC9B,aAAS,WAAW,KAAK,UAAU,UAAU,IAAI;AAAA,EACrD;AACA,MAAI,UAAU,SAAS,QAAW;AAC9B,aAAS,WAAW,KAAK,UAAU,UAAU,IAAI;AAAA,EACrD;AACA,WAAS,kBAAkB,UAAU,YAAY,SAAS,EAAE;AAC5D,WAAS,8BAA8B,UAAU,UAAU,SAAS,EAAE;AACtE,MAAI,UAAU,oBAAoB,QAAW;AACzC,aAAS,sBAAsB,UAAU;AAAA,EAC7C;AACA,MAAI,UAAU,iBAAiB,QAAW;AACtC,aAAS,mBAAmB,UAAU,aAAa,SAAS;AAAA,EAChE;AACA,SAAO;AACX;;;AChCO,SAAS,SAAS,aAAa,SAAS;AAC3C,SAAO,aAAa,aAAa,OAAO;AAI5C;AAOA,SAAS,aAAa,aAAa,UAAU,CAAC,GAAG;AAC7C,MAAI,aAAa;AACjB,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,QAAM,UAAU;AAAA,IACZ,QAAQ;AAAA,IACR,YAAY,CAAC;AAAA;AAAA,IAEb,QAAQ,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,EAAE;AAAA,IACnC,QAAQ;AAAA,MACJ,aAAa;AAAA,MACb,aAAa;AAAA,QACT,CAAC,GAAG,GAAG,CAAC;AAAA,QACR,CAAC,GAAG,GAAG,CAAC;AAAA,MACZ;AAAA,IACJ;AAAA,IACA,YAAY,CAAC;AAAA,IACb,UAAU;AAAA,IACV,MAAM;AAAA;AAAA,EACV;AAGA,kBAAgB,aAAa,QAAQ,KAAK,MAAM,CAAC,UAAU,CAAC,GAAG,cAAc;AACzE,QAAI,CAAC,gBAAgB;AACjB,uBAAiB;AACjB,YAAM,QAAQ,UAAU;AACxB,YAAM,gBAAgB,QAAQ,KAAK,OAAO,eAAe;AACzD,kBAAY,IAAI,cAAc,QAAQ,CAAC;AAEvC,eAAS,UAAU,kBAAkB,IAAI,IAAI,WAAW,QAAQ,CAAC,IAAI;AACrE,oBAAc,IAAI,YAAY,KAAK;AACnC,wBAAkB,IAAI,WAAW,KAAK;AACtC,cAAQ,aAAa;AACrB,cAAQ,aAAa;AAAA,QACjB,UAAU,EAAE,OAAO,WAAW,MAAM,EAAE;AAAA;AAAA,QAEtC,WAAW,EAAE,OAAO,aAAa,MAAM,EAAE;AAAA,QACzC,gBAAgB,EAAE,OAAO,iBAAiB,MAAM,EAAE;AAAA,MACtD;AACA,UAAI,QAAQ;AACR,gBAAQ,WAAW,UAAU,EAAE,OAAO,QAAQ,MAAM,EAAE;AAAA,MAC1D;AAAA,IACJ;AACA,UAAM,YAAY,QAAQ;AAC1B,UAAM,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,GAAG,QAAQ,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI;AACjF,UAAM,eAAe,oBAAoB,SAAS,WAAW,QAAQ,KAAK,UAAU;AACpF,aAASE,KAAI,GAAGA,KAAI,WAAWA,MAAK;AAChC,YAAM,EAAE,UAAU,OAAAC,QAAO,WAAW,eAAe,IAAI,QAAQ,SAASD,EAAC;AACzE,gBAAU,aAAa,CAAC,IAAI,SAAS,CAAC,IAAI,SAAS;AACnD,gBAAU,aAAa,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,SAAS;AACvD,gBAAU,aAAa,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,SAAS;AACvD,UAAIC,UAAS,QAAQ;AACjB,YAAI,cAAc;AACd,iBAAO,aAAa,CAAC,IAAIA,OAAM,CAAC,IAAI;AACpC,iBAAO,aAAa,IAAI,CAAC,IAAIA,OAAM,CAAC,IAAI;AACxC,iBAAO,aAAa,IAAI,CAAC,IAAIA,OAAM,CAAC,IAAI;AAAA,QAC5C,OACK;AACD,iBAAO,aAAa,CAAC,IAAIA,OAAM,CAAC;AAChC,iBAAO,aAAa,IAAI,CAAC,IAAIA,OAAM,CAAC;AACpC,iBAAO,aAAa,IAAI,CAAC,IAAIA,OAAM,CAAC;AAAA,QACxC;AACA,eAAO,aAAa,IAAI,CAAC,IAAI;AAAA,MACjC;AACA,kBAAY,UAAU,IAAI;AAC1B,sBAAgB,UAAU,IAAI;AAC9B;AAAA,IACJ;AACA,UAAM,YAAY;AAAA,MACd,GAAG;AAAA,MACH,QAAQ;AAAA,QACJ,aAAa,UAAU;AAAA,MAC3B;AAAA,MACA,UAAU,UAAU,YAAY,UAAU;AAAA,IAC9C;AACA,aAAS,aAAa,SAAS;AAAA,EACnC,CAAC;AAED,UAAQ,SAAS;AAAA,IACb,aAAa,eAAe;AAAA,IAC5B,aAAa,mBAAmB,SAAS,cAAc,CAAC,CAAC;AAAA,EAC7D;AACA,MAAI,SAAS;AACT,YAAQ,SAAS,aAAa,QAAQ,YAAY,QAAQ,UAAU;AAAA,EACxE;AACA,SAAO;AACX;AASO,SAAS,gBAAgB,SAAS,MAAM,cAAc,CAAC,GAAG;AAC7D,QAAM,cAAc,IAAI,QAAQ,OAAO;AACvC,MAAI;AAEA,gBAAY,KAAK;AACjB,UAAM,SAAS,YAAY,UAAU;AAErC,UAAM,WAAW,YAAY,YAAY;AACzC,UAAM,cAAc,KAAK,KAAK,OAAO,cAAc,KAAK,IAAI,GAAG,IAAI,CAAC;AACpE,WAAO,cAAc;AACrB,QAAI,YAAY;AAEhB,WAAO,MAAM;AACT,YAAM,QAAQ,YAAY,SAAS,MAAO,KAAK,GAAG,IAAI;AACtD,mBAAa,MAAM;AACnB,aAAO,YAAY;AACnB,aAAO,kBAAkB,MAAM;AAC/B,aAAO,eAAe,MAAM;AAC5B,YAAM,WAAW,IAAI,SAAS,MAAM,QAAQ,MAAM,OAAO,MAAM;AAG/D,kBAAY,UAAU,MAAM;AAC5B,UAAI,CAAC,MAAM,eAAe,aAAa,aAAa;AAChD;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,SACO,GAAG;AACN,UAAM;AAAA,EACV,UACA;AACI,gBAAY,MAAM;AAAA,EACtB;AACJ;AAOA,SAAS,oBAAoB,UAAU,CAAC,GAAG,WAAW,YAAY;AAC9D,MAAI,eAAe;AACnB,UAAQ,YAAY;AAAA,IAChB,KAAK;AACD,qBAAe;AACf;AAAA,IACJ,KAAK;AACD,qBAAe;AACf;AAAA,IACJ,KAAK;AACD,UAAI,QAAQ,SAAS,CAAC,EAAE,OAAO;AAC3B,iBAASD,KAAI,GAAGA,KAAI,WAAWA,MAAK;AAChC,gBAAM,EAAE,OAAAC,OAAM,IAAI,QAAQ,SAASD,EAAC;AAEpC,cAAIC,OAAM,CAAC,IAAI,OAAOA,OAAM,CAAC,IAAI,OAAOA,OAAM,CAAC,IAAI,KAAK;AACpD,2BAAe;AAAA,UACnB;AAAA,QACJ;AAAA,MACJ;AACA;AAAA,IACJ;AAEI,cAAQ,KAAK,+CAA+C;AAC5D;AAAA,EACR;AACA,SAAO;AACX;;;AClLO,IAAMC,aAAY;AAAA,EACrB,GAAG;AAAA,EACH,OAAO,OAAO,aAAa,YAAY,SAAS,aAAa,OAAO;AAAA,EACpE,WAAW,CAAC,aAAa,YAAY,SAAS,aAAa,OAAO;AACtE;;;ACAA,IAAM,eAAe;AA2Bf,SAAU,QAAQC,SAMA,UAME,CAAA,GAAE;AAExB,SAAO,IAAI,QAAc,SAAUC,UAAS,QAAM;AAE9C,UAAM,YAAYD,QAAO;AACzB,UAAM,aAAaA,QAAO;AAE1B,QAAI,YAAY,WAAW;AACvB,YAAM,IAAI,SAAS,8BAA8B;;AAGrD,QAAI,YAAY,OAAO;AACnB,YAAM,IAAI,SAAS,0BAA0B;;AAGjD,QAAI,WAAW,WAAW;AACtB,YAAM,IAAI,SAAS,6BAA6B;;AAGpD,QAAI,WAAW,OAAO;AAClB,YAAM,IAAI,SAAS,yBAAyB;;AAGhD,UAAM,OAAO,QAAQ,QAAQ;AAE7B,UAAME,OAAM,CAAC,QAAO;AAChB,UAAIF,QAAO,KAAK;AACZ,QAAAA,QAAO,IAAI,GAAG;;IAEtB;AAEA,UAAMA,QAAO,UAAUG,YAAW;MAC9B,KAAK;QACD,YAAY,QAAQ,cAAc;QAClC,MAAM,QAAQ,SAAS,SAAY,QAAQ,OAAO;;KAGzD,EAAE,KAAK,CAAC,eAAc;AAEnB,YAAM,aAAa,WAAW;AAE9B,YAAM,aAAa,WAAW;AAC9B,YAAM,iBAAiB,WAAW,mBAAmB,SAAY,WAAW,iBAAiB;AAE7F,UAAI,CAAC,WAAW,UAAU;AACtB,QAAAD,KAAI,iEAAiE;AACrE;;AAGJ,UAAI,iBAAsB,CAAA;AAE1B,cAAQ,gBAAgB;QACpB,KAAK;AACD,cAAI,CAAC,WAAW,WAAW;AACvB,YAAAA,KAAI,gEAAgE;AACpE;;AAGJ,2BAAiB,gBAAgB,WAAW,UAAU,WAAW,SAAS;AAC1E;QACJ,KAAK;AACD,cAAI,CAAC,WAAW,WAAW;AACvB,YAAAA,KAAI,gEAAgE;AACpE;;AAEJ,2BAAiB,gBAAgB,WAAW,UAAU,WAAW,SAAS;AAC1E;QACJ,KAAK;AACD,cAAI,CAAC,WAAW,WAAW;AACvB,YAAAA,KAAI,gEAAgE;AACpE;;AAGJ,2BAAiB,yBAAyB,WAAW,UAAU,WAAW,SAAS,WAAW,SAAS;AACvG;QACJ,KAAK;AACD,cAAI,CAAC,WAAW,WAAW;AACvB,YAAAA,KAAI,gEAAgE;AACpE;;AAEJ,2BAAiB,yBAAyB,WAAW,UAAU,WAAW,SAAS,WAAW,SAAS;AACvG;;AAGR,YAAM,eAAe,WAAW,cAAc,eAAe,SAAS,GAAG,eAAe,CAAC;AACzF,YAAM,eAAe,WAAW,eAAe,QAAQ,eAAe,CAAC;AAEvE,YAAM,UAAU,CAAA;AAEhB,eAAS,IAAI,GAAG,OAAO,aAAa,QAAQ,IAAI,MAAM,KAAK;AAEvD,cAAM,aAAa,YAAY,CAAC;AAEhC,cAAM,WAAW,WAAW,eAAe;UACvC,IAAI;UACJ,WAAW;UACX,WAAW,aAAa,CAAC;UACzB,QAAQ,aAAa,CAAC;SACzB;AAED,YAAI,oBAAoB,UAAU;AAC9B,UAAAA,KAAI,uCAAuC,SAAS,OAAO,EAAE;eAC1D;AAEH,gBAAM,SAAS,QAAQ,CAAC;AACxB,kBAAQ,KAAK,MAAM;AAEnB,gBAAM,OAAO,WAAW,WAAW;YAC/B,IAAI;YACJ;WACH;AAED,cAAI,gBAAgB,UAAU;AAC1B,YAAAA,KAAI,uCAAuC,KAAK,OAAO,EAAE;;;;AAKrE,YAAM,WAAWE,YAAU;AAE3B,iBAAW,aAAa;QACpB,IAAI;QACJ;OACH;AAED,UAAI,WAAW;AAEX,cAAM,mBAAmBA,YAAU;AAEnC,kBAAU,aAAa;UACnB,IAAI;UACJ,MAAM;UACN,MAAM;SACT;AAED,kBAAU,aAAa;UACnB,IAAI;UACJ,MAAM;UACN,MAAM;SACT;AAED,kBAAU,mBAAmB;UACzB,MAAM;UACN,kBAAkB;UAClB,iBAAiB;SACpB;;AAGL,MAAAH,SAAO;IAEX,GAAG,CAAC,WAAU;AACV,aAAO,MAAM;IACjB,CAAC;AAED,aAAS,cAAc,gBAAc;AAEjC,UAAI,gBAAgB;AAChB,YAAI,QAAQ,QAAQ;AAChB,gBAAM,YAAY,WAAU;AAC5B,gBAAM,YAAY,eAAe;AACjC,mBAASI,KAAI,GAAG,MAAM,eAAe,QAAQA,KAAI,KAAKA,MAAK,GAAG;AAC1D,sBAAU,CAAC,KAAK,eAAeA,KAAI,CAAC;AACpC,sBAAU,CAAC,KAAK,eAAeA,KAAI,CAAC;AACpC,sBAAU,CAAC,KAAK,eAAeA,KAAI,CAAC;;AAExC,oBAAU,CAAC,KAAK;AAChB,oBAAU,CAAC,KAAK;AAChB,oBAAU,CAAC,KAAK;AAChB,mBAASA,KAAI,GAAG,MAAM,eAAe,QAAQA,KAAI,KAAKA,MAAK,GAAG;AAC1D,2BAAeA,KAAI,CAAC,KAAK,UAAU,CAAC;AACpC,2BAAeA,KAAI,CAAC,KAAK,UAAU,CAAC;AACpC,2BAAeA,KAAI,CAAC,KAAK,UAAU,CAAC;;;AAG5C,YAAI,QAAQ,WAAW;AACnB,gBAAM,MAAM,WAAW,QAAQ,SAAS;AACxC,gBAAM,MAAM,WAAU;AACtB,mBAASA,KAAI,GAAG,MAAM,eAAe,QAAQA,KAAI,KAAKA,MAAK,GAAG;AAC1D,gBAAI,CAAC,IAAI,eAAeA,KAAI,CAAC;AAC7B,gBAAI,CAAC,IAAI,eAAeA,KAAI,CAAC;AAC7B,gBAAI,CAAC,IAAI,eAAeA,KAAI,CAAC;AAC7B,4BAAgB,KAAK,KAAK,GAAG;AAC7B,2BAAeA,KAAI,CAAC,IAAI,IAAI,CAAC;AAC7B,2BAAeA,KAAI,CAAC,IAAI,IAAI,CAAC;AAC7B,2BAAeA,KAAI,CAAC,IAAI,IAAI,CAAC;;;;AAIzC,aAAO;IACX;AAEA,aAAS,yBAAyB,oBAAoB,iBAAiB,qBAAmB;AACtF,YAAM,iBAAiB,mBAAmB;AAC1C,YAAM,SAAS,gBAAgB;AAC/B,YAAM,YAAY,gBAAgB;AAClC,YAAM,cAAc,oBAAoB;AACxC,YAAM,uBAAuB,YAAY,SAAS;AAClD,YAAM,YAAY,CAAA;AAClB,YAAM,mBAAmB,IAAI,WAAW,uBAAuB,IAAI;AACnE,UAAI,QAAQ;AACZ,eAASA,KAAI,GAAG,IAAI,GAAG,IAAI,GAAGC,KAAI,GAAG,IAAI,GAAGC,KAAI,GAAG,MAAM,YAAY,QAAQF,KAAI,KAAKA,MAAK,KAAK,WAAW,KAAK,GAAGC,MAAK,GAAG;AACvH,YAAI,SAAS,GAAG;AACZ,2BAAiB,GAAG,IAAI,OAAO,IAAI,CAAC;AACpC,2BAAiB,GAAG,IAAI,OAAO,IAAI,CAAC;AACpC,2BAAiB,GAAG,IAAI,OAAO,IAAI,CAAC;AACpC,2BAAiB,GAAG,IAAI,KAAK,MAAO,YAAYD,EAAC,IAAI,QAAS,GAAG;AACjE,oBAAUE,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,oBAAUC,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,oBAAUC,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,kBAAQ;eACL;AACH;;;AAGR,aAAO;QACH;QACA,QAAQ;;IAEhB;AAEA,aAAS,gBAAgB,oBAAoB,qBAAmB;AAC5D,YAAM,iBAAiB,mBAAmB;AAC1C,YAAM,cAAc,oBAAoB;AACxC,YAAM,uBAAuB,YAAY,SAAS;AAClD,YAAM,YAAY,CAAA;AAClB,YAAM,mBAAmB,IAAI,WAAW,uBAAuB,IAAI;AACnE,UAAI,QAAQ;AACZ,eAASD,KAAI,GAAG,IAAI,GAAG,IAAI,GAAGC,KAAI,GAAG,IAAI,GAAGC,KAAI,GAAG,MAAM,YAAY,QAAQF,KAAI,KAAKA,MAAK,KAAK,GAAG,KAAK,GAAGC,MAAK,GAAG;AAC/G,YAAI,SAAS,GAAG;AACZ,2BAAiB,GAAG,IAAI;AACxB,2BAAiB,GAAG,IAAI;AACxB,2BAAiB,GAAG,IAAI;AACxB,2BAAiB,GAAG,IAAI,KAAK,MAAO,YAAYD,EAAC,IAAI,QAAS,GAAG;AACjE,oBAAUE,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,oBAAUC,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,oBAAUC,IAAG,IAAI,eAAeD,KAAI,CAAC;AACrC,kBAAQ;eACL;AACH;;;AAGR,aAAO;QACH;QACA,QAAQ;;IAEhB;AAEA,aAAS,WAAW,OAAO,WAAS;AAChC,UAAI,aAAa,MAAM,QAAQ;AAC3B,eAAO,CAAC,KAAK;;AAEjB,UAAI,SAAS,CAAA;AACb,eAASD,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK,WAAW;AAC9C,eAAO,KAAK,MAAM,MAAMA,IAAGA,KAAI,SAAS,CAAC;;AAE7C,aAAO;IACX;EACJ,CAAC;AACL;;;ACpTA,IAAAG,iBAAA;SAAAA,gBAAA;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;;;ACGO,IAAMC,WAAU,OAAiC,UAAU;;;ACDlE,IAAM,iBAAiB,WAAW,SAAS;AAC3C,IAAM,kBAAkB,OAAO,UAAU;AACzC,IAAM,yBAAyB,OAAO,gBAAgB;AACtD,IAAM,uBAAuB,QAAQ,cAAc;AACnD,IAAM,iBAAiB,YAAY,OAAO;AAKnC,SAAS,qBAAqB,MAAM;AACvC,UAAQ,MAAM;AAAA,IACV,KAAK;AAED,aAAO,0BAA0B,mBAAmB;AAAA,IACxD,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX;AACI,YAAM,IAAI,MAAM,6BAA6B,IAAI,oCAAoC;AAAA,EAC7F;AACJ;AAKO,SAAS,sBAAsB;AAClC,MAAI,wBAAwB;AACxB,WAAO;AAAA,EACX;AACA,MAAI,iBAAiB;AACjB,WAAO;AAAA,EACX;AACA,MAAI,gBAAgB;AAChB,WAAO;AAAA,EACX;AAEA,QAAM,IAAI,MAAM,+DAAiE;AACrF;;;AC9BO,SAAS,aAAa,OAAO;AAChC,QAAM,SAAS,mBAAmB,KAAK;AACvC,MAAI,CAAC,QAAQ;AACT,UAAM,IAAI,MAAM,cAAc;AAAA,EAClC;AACA,SAAO;AACX;AAIO,SAAS,aAAa,OAAO;AAChC,UAAQ,aAAa,KAAK,GAAG;AAAA,IACzB,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AAAA,IACL,KAAK;AAED,YAAMC,UAAS,SAAS,cAAc,QAAQ;AAE9C,YAAM,UAAUA,QAAO,WAAW,IAAI;AACtC,UAAI,CAAC,SAAS;AACV,cAAM,IAAI,MAAM,cAAc;AAAA,MAClC;AAEA,MAAAA,QAAO,QAAQ,MAAM;AAErB,MAAAA,QAAO,SAAS,MAAM;AAEtB,cAAQ,UAAU,OAAO,GAAG,CAAC;AAE7B,aAAO,QAAQ,aAAa,GAAG,GAAG,MAAM,OAAO,MAAM,MAAM;AAAA,IAC/D;AACI,YAAM,IAAI,MAAM,cAAc;AAAA,EACtC;AACJ;AAGA,SAAS,mBAAmB,OAAO;AAC/B,MAAI,OAAO,gBAAgB,eAAe,iBAAiB,aAAa;AACpE,WAAO;AAAA,EACX;AACA,MAAI,OAAO,UAAU,eAAe,iBAAiB,OAAO;AACxD,WAAO;AAAA,EACX;AACA,MAAI,SAAS,OAAO,UAAU,YAAY,MAAM,QAAQ,MAAM,SAAS,MAAM,QAAQ;AACjF,WAAO;AAAA,EACX;AACA,SAAO;AACX;;;AC1DA,IAAM,uBAAuB;AAC7B,IAAM,kBAAkB;AACjB,SAAS,MAAM,KAAK;AACvB,SAAO,QAAQ,qBAAqB,KAAK,GAAG,KAAK,gBAAgB,KAAK,GAAG;AAC7E;AACO,SAAS,oBAAoB,aAAa,KAAK;AAClD,MAAI,MAAM,GAAG,GAAG;AAEZ,UAAM,cAAc,IAAI,YAAY;AACpC,QAAI,UAAU,YAAY,OAAO,WAAW;AAE5C,QAAI;AACA,UAAI,OAAO,aAAa,cAAc,OAAO,uBAAuB,YAAY;AAC5E,kBAAU,SAAS,mBAAmB,OAAO,CAAC;AAAA,MAClD;AAAA,IACJ,SACO,OAAO;AACV,YAAM,IAAI,MAAM,MAAM,OAAO;AAAA,IACjC;AAEA,UAAM,MAAM,6BAA6B,KAAK,OAAO,CAAC;AACtD,WAAO;AAAA,EACX;AACA,SAAO,QAAQ,aAAa,GAAG;AACnC;AACO,SAAS,QAAQ,aAAa,KAAK;AACtC,MAAI,MAAM,GAAG,GAAG;AAGZ,UAAM,IAAI,MAAM,8CAA8C;AAAA,EAClE;AAEA,SAAO,IAAI,KAAK,CAAC,IAAI,WAAW,WAAW,CAAC,CAAC;AACjD;;;ACjCA,eAAsB,aAAa,aAAa,SAAS,KAAK;AAI1D,QAAM,gBAAgB,oBAAoB,aAAa,GAAG;AAC1D,QAAMC,OAAM,KAAK,OAAO,KAAK;AAC7B,QAAM,YAAY,OAAO,kBAAkB,YAAYA,KAAI,gBAAgB,aAAa;AACxF,MAAI;AACA,WAAO,MAAM,YAAY,aAAa,eAAe,OAAO;AAAA,EAChE,UACA;AACI,QAAI,WAAW;AACX,MAAAA,KAAI,gBAAgB,SAAS;AAAA,IACjC;AAAA,EACJ;AACJ;AACA,eAAsB,YAAY,KAAK,SAAS;AAC5C,QAAM,QAAQ,IAAI,MAAM;AACxB,QAAM,MAAM;AAOZ,MAAI,QAAQ,SAAS,QAAQ,MAAM,UAAU,MAAM,QAAQ;AACvD,UAAM,MAAM,OAAO;AACnB,WAAO;AAAA,EACX;AAEA,SAAO,MAAM,IAAI,QAAQ,CAACC,UAAS,WAAW;AAC1C,QAAI;AACA,YAAM,SAAS,MAAMA,SAAQ,KAAK;AAClC,YAAM,UAAU,CAAC,UAAU;AACvB,cAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU;AACzD,eAAO,IAAI,MAAM,OAAO,CAAC;AAAA,MAC7B;AAAA,IACJ,SACO,OAAO;AACV,aAAO,KAAK;AAAA,IAChB;AAAA,EACJ,CAAC;AACL;;;AC1CA,IAAM,eAAe,CAAC;AACtB,IAAI,8BAA8B;AAQlC,eAAsB,mBAAmB,aAAa,SAAS,KAAK;AAChE,MAAI;AAEJ,MAAI,MAAM,GAAG,GAAG;AAEZ,UAAM,QAAQ,MAAM,aAAa,aAAa,SAAS,GAAG;AAC1D,WAAO;AAAA,EACX,OACK;AAED,WAAO,QAAQ,aAAa,GAAG;AAAA,EACnC;AACA,QAAM,qBAAqB,WAAW,QAAQ;AAC9C,SAAO,MAAM,sBAAsB,MAAM,kBAAkB;AAC/D;AAOA,eAAe,sBAAsB,MAAM,qBAAqB,MAAM;AAClE,MAAIC,eAAc,kBAAkB,KAAK,CAAC,6BAA6B;AACnE,yBAAqB;AAAA,EACzB;AACA,MAAI,oBAAoB;AACpB,QAAI;AAEA,aAAO,MAAM,kBAAkB,MAAM,kBAAkB;AAAA,IAC3D,SACO,OAAO;AACV,cAAQ,KAAK,KAAK;AAClB,oCAA8B;AAAA,IAClC;AAAA,EACJ;AACA,SAAO,MAAM,kBAAkB,IAAI;AACvC;AACA,SAASA,eAAc,QAAQ;AAE3B,aAAW,OAAO,UAAU,cAAc;AACtC,WAAO;AAAA,EACX;AACA,SAAO;AACX;;;AC9CO,SAAS,oBAAoB,QAAQ;AAExC,MAAI,CAAC,YAAY,QAAQ,QAAQ,CAAC,GAAG;AACjC,WAAO;AAAA,EACX;AAEA,OAAK,OAAO,CAAC,IAAI,QAAU,GAAM;AAC7B,WAAO;AAAA,EACX;AAEA,SAAO,iBAAiB,MAAM;AAClC;AAKO,SAAS,iBAAiB,QAAQ;AACrC,QAAM,aAAa,cAAc,QAAQ,GAAG,EAAE,EAAE,QAAQ,MAAM,GAAG,EAAE,KAAK;AACxE,UAAQ,YAAY;AAAA,IAChB,KAAK;AAAA,IACL,KAAK;AACD,aAAO,EAAE,WAAW,QAAQ,UAAU,aAAa;AAAA,IACvD;AACI,aAAO;AAAA,EACf;AA0CJ;AAEA,SAAS,cAAc,OAAO,OAAO,KAAK;AACtC,SAAO,OAAO,aAAa,GAAG,MAAM,MAAM,OAAO,GAAG,CAAC;AACzD;AACA,SAAS,cAAc,QAAQ;AAC3B,SAAO,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,cAAc,UAAU,WAAW,CAAC,CAAC;AACjE;AACA,SAAS,YAAY,QAAQ,QAAQ,SAAS,GAAG;AAC7C,QAAM,cAAc,cAAc,MAAM;AACxC,WAASC,KAAI,GAAGA,KAAI,YAAY,QAAQ,EAAEA,IAAG;AACzC,QAAI,YAAYA,EAAC,MAAM,OAAOA,KAAI,MAAM,GAAG;AACvC,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;;;ACvFA,IAAM,aAAa;AACnB,IAAM,gBAAgB;AAOf,SAAS,uBAAuB,YAAY;AAC/C,QAAM,WAAW,WAAW,UAAU;AACtC,SAAQ,eAAe,QAAQ,KAC3B,gBAAgB,QAAQ,KACxB,eAAe,QAAQ,KACvB,eAAe,QAAQ,KACvB,mBAAmB,QAAQ;AACnC;AAEA,SAAS,mBAAmB,YAAY;AACpC,QAAM,SAAS,IAAI,WAAW,sBAAsB,WAAW,WAAW,SAAS,UAAU;AAC7F,QAAM,YAAY,oBAAoB,MAAM;AAC5C,MAAI,CAAC,WAAW;AACZ,WAAO;AAAA,EACX;AACA,SAAO;AAAA,IACH,UAAU,UAAU;AAAA;AAAA,IAEpB,OAAO;AAAA,IACP,QAAQ;AAAA,EACZ;AACJ;AAEA,SAAS,eAAe,YAAY;AAChC,QAAM,WAAW,WAAW,UAAU;AAEtC,QAAM,QAAQ,SAAS,cAAc,MAAM,SAAS,UAAU,GAAG,UAAU,MAAM;AACjF,MAAI,CAAC,OAAO;AACR,WAAO;AAAA,EACX;AAEA,SAAO;AAAA,IACH,UAAU;AAAA,IACV,OAAO,SAAS,UAAU,IAAI,UAAU;AAAA,IACxC,QAAQ,SAAS,UAAU,IAAI,UAAU;AAAA,EAC7C;AACJ;AAIA,SAAS,eAAe,YAAY;AAChC,QAAM,WAAW,WAAW,UAAU;AAEtC,QAAM,QAAQ,SAAS,cAAc,MAAM,SAAS,UAAU,GAAG,UAAU,MAAM;AACjF,MAAI,CAAC,OAAO;AACR,WAAO;AAAA,EACX;AAEA,SAAO;AAAA,IACH,UAAU;AAAA,IACV,OAAO,SAAS,UAAU,GAAG,aAAa;AAAA,IAC1C,QAAQ,SAAS,UAAU,GAAG,aAAa;AAAA,EAC/C;AACJ;AAGO,SAAS,eAAe,YAAY;AACvC,QAAM,WAAW,WAAW,UAAU;AAGtC,QAAM,QAAQ,SAAS,cAAc,MACjC,SAAS,UAAU,GAAG,UAAU,MAAM,SACtC,SAAS,UAAU,GAAG,aAAa,MAAM,SAAS;AACtD,MAAI,CAAC,OAAO;AACR,WAAO;AAAA,EACX;AAEA,SAAO;AAAA,IACH,UAAU;AAAA,IACV,OAAO,SAAS,UAAU,IAAI,aAAa;AAAA,IAC3C,QAAQ,SAAS,UAAU,IAAI,aAAa;AAAA,EAChD;AACJ;AAGA,SAAS,gBAAgB,YAAY;AACjC,QAAM,WAAW,WAAW,UAAU;AAGtC,QAAM,SAAS,SAAS,cAAc,KAClC,SAAS,UAAU,GAAG,UAAU,MAAM,SACtC,SAAS,SAAS,CAAC,MAAM;AAC7B,MAAI,CAAC,QAAQ;AACT,WAAO;AAAA,EACX;AACA,QAAM,EAAE,cAAc,WAAW,IAAI,eAAe;AAEpD,MAAIC,KAAI;AACR,SAAOA,KAAI,IAAI,SAAS,YAAY;AAChC,UAAM,SAAS,SAAS,UAAUA,IAAG,UAAU;AAE/C,QAAI,WAAW,IAAI,MAAM,GAAG;AACxB,aAAO;AAAA,QACH,UAAU;AAAA,QACV,QAAQ,SAAS,UAAUA,KAAI,GAAG,UAAU;AAAA;AAAA,QAC5C,OAAO,SAAS,UAAUA,KAAI,GAAG,UAAU;AAAA;AAAA,MAC/C;AAAA,IACJ;AAEA,QAAI,CAAC,aAAa,IAAI,MAAM,GAAG;AAC3B,aAAO;AAAA,IACX;AAEA,IAAAA,MAAK;AACL,IAAAA,MAAK,SAAS,UAAUA,IAAG,UAAU;AAAA,EACzC;AACA,SAAO;AACX;AACA,SAAS,iBAAiB;AAGtB,QAAM,eAAe,oBAAI,IAAI,CAAC,OAAQ,OAAQ,OAAQ,OAAQ,KAAM,CAAC;AACrE,WAASA,KAAI,OAAQA,KAAI,OAAQ,EAAEA,IAAG;AAClC,iBAAa,IAAIA,EAAC;AAAA,EACtB;AAGA,QAAM,aAAa,oBAAI,IAAI;AAAA,IACvB;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IAAQ;AAAA,IACxF;AAAA,IAAQ;AAAA,EACZ,CAAC;AACD,SAAO,EAAE,cAAc,WAAW;AACtC;AAEA,SAAS,WAAW,MAAM;AACtB,MAAI,gBAAgB,UAAU;AAC1B,WAAO;AAAA,EACX;AACA,MAAI,YAAY,OAAO,IAAI,GAAG;AAC1B,WAAO,IAAI,SAAS,KAAK,MAAM;AAAA,EACnC;AAMA,MAAI,gBAAgB,aAAa;AAC7B,WAAO,IAAI,SAAS,IAAI;AAAA,EAC5B;AACA,QAAM,IAAI,MAAM,YAAY;AAChC;;;ACpJA,eAAsB,iBAAiB,aAAa,SAAS;AACzD,QAAM,EAAE,SAAS,IAAI,uBAAuB,WAAW,KAAK,CAAC;AAE7D,QAAMC,kBAAiB,WAAW,SAAS;AAC3C,SAAOA,eAAc;AAErB,SAAO,MAAMA,gBAAe,aAAa,QAAQ;AACrD;;;ACFA,eAAsB,WAAW,aAAa,SAAS,SAAS;AAC5D,YAAU,WAAW,CAAC;AACtB,QAAM,eAAe,QAAQ,SAAS,CAAC;AAEvC,QAAM,YAAY,aAAa,QAAQ;AACvC,QAAM,EAAE,IAAI,IAAI,WAAW,CAAC;AAE5B,QAAM,WAAW,qBAAqB,SAAS;AAC/C,MAAI;AACJ,UAAQ,UAAU;AAAA,IACd,KAAK;AACD,cAAQ,MAAM,mBAAmB,aAAa,SAAS,GAAG;AAC1D;AAAA,IACJ,KAAK;AACD,cAAQ,MAAM,aAAa,aAAa,SAAS,GAAG;AACpD;AAAA,IACJ,KAAK;AAED,cAAQ,MAAM,iBAAiB,aAAa,OAAO;AACnD;AAAA,IACJ;AACI,aAAO,KAAK;AAAA,EACpB;AAEA,MAAI,cAAc,QAAQ;AACtB,YAAQ,aAAa,KAAK;AAAA,EAC9B;AACA,SAAO;AACX;AAEA,SAAS,qBAAqB,MAAM;AAChC,UAAQ,MAAM;AAAA,IACV,KAAK;AAAA,IACL,KAAK;AAGD,aAAO,oBAAoB;AAAA,IAC/B;AAEI,2BAAqB,IAAI;AACzB,aAAO;AAAA,EACf;AACJ;;;AC9CA,IAAM,aAAa,CAAC,OAAO,OAAO,QAAQ,OAAO,QAAQ,OAAO,OAAO,OAAO,MAAM;AACpF,IAAM,aAAa;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;AACA,IAAM,+BAA+B;AAAA,EACjC,OAAO;AAAA,IACH,MAAM;AAAA,IACN,QAAQ;AAAA;AAAA,EACZ;AAAA;AAEJ;AAKO,IAAM,cAAc;AAAA,EACvB,UAAU;AAAA,EACV,WAAW;AAAA,EACX,IAAI;AAAA,EACJ,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,SAASC;AAAA,EACT,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,OAAO;AAAA;AAAA,EAEP,OAAO,CAAC,CAAC,gBAAgB,QAAQ,uBAAuB,IAAI,SAAS,WAAW,CAAC,CAAC,CAAC;AAAA,EACnF,SAAS;AACb;;;ACHA,IAAM,wBAAwB,CAAC;AAIxB,SAAS,uBAAuB,UAAU;AAC7C,MAAI,sBAAsB,QAAQ,MAAM,QAAW;AAC/C,UAAM,YAAY,YACZ,+BAA+B,QAAQ,IACvC,4BAA4B,QAAQ;AAC1C,0BAAsB,QAAQ,IAAI;AAAA,EACtC;AACA,SAAO,sBAAsB,QAAQ;AACzC;AAKA,SAAS,4BAA4B,UAAU;AAC3C,QAAM,sBAAsB,CAAC,aAAa,cAAc,WAAW;AACnE,QAAM,mBAAmB,WAAW,SAAS,oBAAoB;AACjE,QAAMC,kBAAiB,WAAW,SAAS;AAC3C,SAAO,QAAQA,eAAc,KAAK,iBAAiB,SAAS,QAAQ;AACxE;AAIA,SAAS,+BAA+B,UAAU;AAC9C,UAAQ,UAAU;AAAA,IACd,KAAK;AAAA,IACL,KAAK;AACD,aAAO,8BAA8B,QAAQ;AAAA,IACjD;AACI,aAAO;AAAA,EACf;AACJ;AAgBA,SAAS,8BAA8B,UAAU;AAC7C,MAAI;AACA,UAAM,UAAU,SAAS,cAAc,QAAQ;AAC/C,UAAM,UAAU,QAAQ,UAAU,QAAQ;AAC1C,WAAO,QAAQ,QAAQ,QAAQ,QAAQ,EAAE,MAAM;AAAA,EACnD,QACM;AAEF,WAAO;AAAA,EACX;AACJ;;;AC7FO,SAASC,QAAO,WAAW,SAAS;AACvC,MAAI,CAAC,WAAW;AACZ,UAAM,IAAI,MAAM,WAAW,qBAAqB;AAAA,EACpD;AACJ;;;ACPO,IAAM,aAAa;AAAA,EACtB,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACV;AACO,IAAM,QAAQ;AAAA,EACjB,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AACV;;;ACTA,IAAM,QAAQ,CAAC,UAAU,QAAQ,QAAQ,MAAM;AAC/C,IAAM,sCAAsC;AAAA,EACxC,CAAC,WAAW,IAAI;AAAA,EAChB,CAAC,YAAY,IAAI;AAAA,EACjB,CAAC,YAAY,IAAI;AAAA,EACjB,CAAC,aAAa,IAAI;AAAA,EAClB,CAAC,aAAa,IAAI;AAAA,EAClB,CAAC,cAAc,IAAI;AAAA,EACnB,CAAC,cAAc,IAAI;AACvB;AACA,IAAM,0BAA0B,IAAI,IAAI,mCAAmC;AAC3E,IAAM,+BAA+B;AAAA,EACjC,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACV;AACA,IAAM,wCAAwC;AAAA,EAC1C,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACV;AACA,IAAM,oCAAoC;AAAA,EACtC,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACV;AACO,SAAS,wBAAwB,MAAM;AAC1C,QAAM,OAAO,MAAM,OAAO,CAAC;AAC3B,SAAO,QAAQ,MAAM,CAAC;AAC1B;AACO,SAAS,0BAA0B,YAAY;AAClD,QAAM,gBAAgB,wBAAwB,IAAI,WAAW,WAAW;AACxE,MAAI,CAAC,eAAe;AAChB,UAAM,IAAI,MAAM,qBAAqB;AAAA,EACzC;AACA,SAAO;AACX;AACO,SAAS,8BAA8B,UAAU,YAAY;AAChE,QAAM,YAAY,kCAAkC,SAAS,aAAa;AAC1E,QAAM,aAAa,6BAA6B,SAAS,IAAI;AAC7D,QAAM,oBAAoB,sCAAsC,SAAS,aAAa;AACtF,QAAM,SAAS,SAAS,QAAQ;AAChC,QAAM,aAAa,SAAS,QAAQ,aAAa;AACjD,EAAAC,QAAO,cAAc,KAAK,cAAc,WAAW,UAAU;AAC7D,QAAM,oBAAoB,MAAM,SAAS,aAAa;AACtD,QAAM,8BAA8B,WAAW,SAAS,IAAI;AAC5D,SAAO,EAAE,WAAW,QAAQ,YAAY,mBAAmB,4BAA4B;AAC3F;;;AC3DO,SAAS,2BAA2B,MAAM,SAAS,iBAAiB;AACvE,QAAM,aAAa,KAAK,YAAY,eAAe;AACnD,EAAAC,QAAO,UAAU;AAEjB,QAAM,cAAc,WAAW;AAC/B,QAAM,WAAW,QAAQ,WAAW;AACpC,EAAAA,QAAO,QAAQ;AACf,QAAM,cAAc,WAAW,cAAc,KAAK,SAAS;AAC3D,SAAO,IAAI,WAAW,SAAS,aAAa,YAAY,WAAW,UAAU;AACjF;AAgBO,SAAS,yBAAyB,MAAM,SAAS,UAAU;AAC9D,QAAM,eAAe,OAAO,aAAa,WAAW,KAAK,YAAY,QAAQ,IAAI;AACjF,MAAI,CAAC,cAAc;AACf,UAAM,IAAI,MAAM,oBAAoB,KAAK,UAAU,QAAQ,CAAC,EAAE;AAAA,EAClE;AACA,QAAM,aAAa,KAAK,cAAc,aAAa,cAAc,CAAC;AAClE,MAAI,CAAC,YAAY;AACb,UAAM,IAAI,MAAM,oCAAoC,UAAU,EAAE;AAAA,EACpE;AAEA,QAAM,EAAE,aAAa,YAAY,iBAAiB,IAAI,QAAQ,WAAW,MAAM;AAE/E,QAAM,cAAc,oBAAoB,MAAM,aAAa,cAAc,MAAM,WAAW,cAAc;AAExG,QAAM,EAAE,WAAW,QAAQ,mBAAmB,4BAA4B,IAAI,8BAA8B,cAAc,UAAU;AAGpI,QAAM,kBAAkB,oBAAoB;AAC5C,QAAM,sBAAsB,WAAW,cAAc;AAErD,MAAI,OAAO,WAAW,eAAe,eAAe,WAAW,eAAe,iBAAiB;AAE3F,UAAMC,UAAS,IAAI,UAAU,aAAa,YAAY,MAAM;AAC5D,WAAOA;AAAA,EACX;AAEA,QAAM,SAAS,IAAI,UAAU,MAAM;AACnC,WAASC,KAAI,GAAGA,KAAI,aAAa,OAAOA,MAAK;AACzC,UAAM,SAAS,IAAI,UAAU,aAAa,aAAaA,KAAI,qBAAqB,2BAA2B;AAC3G,WAAO,IAAI,QAAQA,KAAI,2BAA2B;AAAA,EACtD;AACA,SAAO;AACX;;;ACtDA,SAAS,sBAAsB;AAC3B,SAAO;AAAA,IACH,OAAO;AAAA,MACH,SAAS;AAAA,MACT,WAAW;AAAA,IACf;AAAA,IACA,SAAS,CAAC;AAAA,IACV,YAAY,CAAC;AAAA,IACb,oBAAoB,CAAC;AAAA,IACrB,gBAAgB,CAAC;AAAA,EACrB;AACJ;AAIO,IAAM,iBAAN,MAAqB;AAAA;AAAA,EAExB;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA,YAAY,MAAM;AAEd,SAAK,OAAO;AAAA,MACR,MAAM,MAAM,QAAQ,oBAAoB;AAAA,MACxC,SAAS,MAAM,WAAW,CAAC;AAAA,MAC3B,QAAQ,MAAM,UAAU,CAAC;AAAA,IAC7B;AACA,SAAK,gBAAgB,CAAC;AACtB,SAAK,aAAa;AAElB,QAAI,KAAK,KAAK,WAAW,KAAK,KAAK,QAAQ,CAAC,GAAG;AAC3C,WAAK,aAAa,KAAK,KAAK,QAAQ,CAAC,EAAE;AACvC,WAAK,gBAAgB,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;AAAA,IAC9C;AAAA,EACJ;AAAA;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,KAAK;AAAA,EACrB;AAAA,EACA,mBAAmB,KAAK;AAEpB,UAAM,OAAO,KAAK,KAAK,GAAG;AAC1B,WAAO;AAAA,EACX;AAAA,EACA,aAAa,KAAK;AAEd,UAAM,SAAU,KAAK,KAAK,UAAU,CAAC;AACrC,WAAO,OAAO,GAAG;AAAA,EACrB;AAAA,EACA,aAAa,eAAe;AACxB,UAAM,kBAAkB,KAAK,kBAAkB,EAAE,KAAK,CAACC,WAASA,WAAS,aAAa;AACtF,UAAM,sBAAsB,KAAK,sBAAsB,EAAE,KAAK,CAACA,WAASA,WAAS,aAAa;AAC9F,WAAO,OAAO,oBAAoB,YAAY,OAAO,wBAAwB;AAAA,EACjF;AAAA,EACA,aAAa,eAAe;AACxB,UAAM,cAAc,KAAK,kBAAkB,EAAE,KAAK,CAACA,WAASA,WAAS,aAAa;AAClF,UAAM,aAAa,KAAK,KAAK,cAAc,CAAC;AAC5C,WAAO,cAAc,WAAW,aAAa,IAAI;AAAA,EACrD;AAAA,EACA,qBAAqB,eAAe;AAChC,UAAM,aAAa,KAAK,sBAAsB,EAAE,KAAK,CAACA,WAASA,WAAS,aAAa;AACrF,WAAO,aAAa,KAAK,aAAa,aAAa,IAAI;AAAA,EAC3D;AAAA,EACA,wBAAwB;AACpB,WAAO,KAAK,KAAK,sBAAsB,CAAC;AAAA,EAC5C;AAAA,EACA,oBAAoB;AAChB,WAAO,KAAK,KAAK,kBAAkB,CAAC;AAAA,EACxC;AAAA,EACA,uBAAuB;AACnB,WAAQ,KAAK,KAAK,qBAAqB,CAAC;AAAA,EAC5C;AAAA,EACA,mBAAmB,QAAQ,eAAe;AACtC,UAAM,aAAa,OAAO,cAAc,CAAC;AACzC,WAAO,WAAW,aAAa;AAAA,EACnC;AAAA,EACA,SAAS,OAAO;AACZ,WAAO,KAAK,UAAU,UAAU,KAAK;AAAA,EACzC;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,UAAU,SAAS,KAAK;AAAA,EACxC;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,UAAU,SAAS,KAAK;AAAA,EACxC;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,UAAU,UAAU,KAAK;AAAA,EACzC;AAAA,EACA,YAAY,OAAO;AACf,WAAO,KAAK,UAAU,aAAa,KAAK;AAAA,EAC5C;AAAA,EACA,YAAY,OAAO;AACf,WAAO,KAAK,UAAU,aAAa,KAAK;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,WAAW,OAAO;AACd,WAAO,KAAK,UAAU,YAAY,KAAK;AAAA,EAC3C;AAAA,EACA,WAAW,OAAO;AACd,WAAO,KAAK,UAAU,YAAY,KAAK;AAAA,EAC3C;AAAA,EACA,SAAS,OAAO;AACZ,WAAO,KAAK,UAAU,UAAU,KAAK;AAAA,EACzC;AAAA,EACA,cAAc,OAAO;AACjB,WAAO,KAAK,UAAU,eAAe,KAAK;AAAA,EAC9C;AAAA,EACA,UAAU,OAAO;AACb,WAAO,KAAK,UAAU,WAAW,KAAK;AAAA,EAC1C;AAAA,EACA,UAAU,OAAO,OAAO;AAEpB,QAAI,OAAO,UAAU,UAAU;AAC3B,aAAO;AAAA,IACX;AACA,UAAM,SAAS,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,EAAE,KAAK;AACzD,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,mCAAmC,KAAK,IAAI,KAAK,GAAG;AAAA,IACxE;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,2BAA2B,YAAY;AACnC,iBAAa,KAAK,cAAc,UAAU;AAE1C,UAAM,cAAc,WAAW;AAG/B,UAAM,WAAW,KAAK,KAAK,QAAQ,WAAW;AAC9C,IAAAC,QAAO,QAAQ;AAEf,UAAM,cAAc,WAAW,cAAc,KAAK,SAAS;AAE3D,WAAO,IAAI,WAAW,SAAS,aAAa,YAAY,WAAW,UAAU;AAAA,EACjF;AAAA;AAAA;AAAA;AAAA,EAIA,yBAAyB,UAAU;AAE/B,UAAM,eAAe,KAAK,YAAY,QAAQ;AAC9C,WAAO,yBAA0B,KAAK,KAAK,MAAM,KAAK,KAAK,SAAS,YAAY;AAAA,EACpF;AAAA;AAAA;AAAA;AAAA,EAIA,0BAA0B,OAAO;AAE7B,YAAQ,KAAK,YAAY,KAAK;AAE9B,UAAM,aAAa,KAAK,cAAc,MAAM,UAAU;AACtD,UAAM,SAAS,KAAK,UAAU,WAAW,MAAM;AAE/C,UAAM,cAAc,OAAO;AAC3B,UAAM,aAAa,WAAW,cAAc;AAC5C,WAAO,IAAI,WAAW,aAAa,YAAY,WAAW,UAAU;AAAA,EACxE;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB,KAAK,MAAM;AAC1B,SAAK,KAAK,GAAG,IAAI;AACjB,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa,KAAK,MAAM;AACpB,SAAK,KAAK,SAAS,KAAK,KAAK,UAAU,CAAC;AACxC,SAAK,KAAK,OAAO,GAAG,IAAI;AACxB,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAQ,eAAe,MAAM;AAE5C,WAAO,aAAa,OAAO,cAAc,CAAC;AAG1C,WAAO,WAAW,aAAa,IAAI;AACnC,SAAK,sBAAsB,aAAa;AACxC,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAQ,eAAe,MAAM;AAC5C,UAAM,aAAa,OAAO,cAAc,CAAC;AACzC,eAAW,aAAa,IAAI;AAAA,EAEhC;AAAA,EACA,sBAAsB,QAAQ,eAAe;AACzC,UAAM,aAAa,QAAQ,cAAc,CAAC;AAC1C,QAAI,WAAW,aAAa,GAAG;AAC3B,WAAK,KAAK,oBAAoB,KAAK,KAAK,qBAAqB,CAAC;AAC9D,YAAM,oBAAoB,KAAK,KAAK;AACpC,UAAI,CAAC,kBAAkB,SAAS,aAAa,GAAG;AAC5C,0BAAkB,KAAK,aAAa;AAAA,MACxC;AAAA,IACJ;AACA,WAAO,WAAW,aAAa;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa,eAAe,gBAAgB,CAAC,GAAG;AAC5C,IAAAA,QAAO,aAAa;AACpB,SAAK,KAAK,aAAa,KAAK,KAAK,cAAc,CAAC;AAChD,SAAK,KAAK,WAAW,aAAa,IAAI;AACtC,SAAK,sBAAsB,aAAa;AACxC,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,qBAAqB,eAAe,gBAAgB,CAAC,GAAG;AACpD,IAAAA,QAAO,aAAa;AACpB,SAAK,aAAa,eAAe,aAAa;AAC9C,SAAK,0BAA0B,aAAa;AAC5C,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,sBAAsB,eAAe;AACjC,SAAK,KAAK,iBAAiB,KAAK,KAAK,kBAAkB,CAAC;AACxD,QAAI,CAAC,KAAK,KAAK,eAAe,KAAK,CAAC,QAAQ,QAAQ,aAAa,GAAG;AAChE,WAAK,KAAK,eAAe,KAAK,aAAa;AAAA,IAC/C;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,0BAA0B,eAAe;AACrC,SAAK,sBAAsB,aAAa;AACxC,SAAK,KAAK,qBAAqB,KAAK,KAAK,sBAAsB,CAAC;AAChE,QAAI,CAAC,KAAK,KAAK,mBAAmB,KAAK,CAAC,QAAQ,QAAQ,aAAa,GAAG;AACpE,WAAK,KAAK,mBAAmB,KAAK,aAAa;AAAA,IACnD;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAgB,eAAe;AAC3B,QAAI,KAAK,KAAK,aAAa,aAAa,GAAG;AACvC,WAAK,KAAK,oBAAoB,KAAK,KAAK,qBAAqB,CAAC;AAC9D,YAAM,oBAAoB,KAAK,KAAK;AACpC,UAAI,CAAC,kBAAkB,SAAS,aAAa,GAAG;AAC5C,0BAAkB,KAAK,aAAa;AAAA,MACxC;AAAA,IACJ;AACA,QAAI,KAAK,KAAK,YAAY;AACtB,aAAO,KAAK,KAAK,WAAW,aAAa;AAAA,IAC7C;AACA,QAAI,KAAK,KAAK,oBAAoB;AAC9B,WAAK,uBAAuB,KAAK,KAAK,oBAAoB,aAAa;AAAA,IAC3E;AACA,QAAI,KAAK,KAAK,gBAAgB;AAC1B,WAAK,uBAAuB,KAAK,KAAK,gBAAgB,aAAa;AAAA,IACvE;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAgB,YAAY;AACxB,SAAK,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAS,OAAO;AACZ,UAAM,EAAE,YAAY,IAAI;AACxB,SAAK,KAAK,SAAS,KAAK,KAAK,UAAU,CAAC;AACxC,SAAK,KAAK,OAAO,KAAK,EAAE,OAAO,YAAY,CAAC;AAC5C,WAAO,KAAK,KAAK,OAAO,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,QAAQ,MAAM;AACV,UAAM,EAAE,WAAW,OAAO,IAAI;AAC9B,SAAK,KAAK,QAAQ,KAAK,KAAK,SAAS,CAAC;AACtC,UAAM,WAAW,EAAE,MAAM,UAAU;AACnC,QAAI,QAAQ;AAER,eAAS,SAAS;AAAA,IACtB;AACA,SAAK,KAAK,MAAM,KAAK,QAAQ;AAC7B,WAAO,KAAK,KAAK,MAAM,SAAS;AAAA,EACpC;AAAA;AAAA,EAEA,QAAQ,MAAM;AACV,UAAM,EAAE,YAAY,SAAS,UAAU,OAAO,EAAE,IAAI;AACpD,UAAM,YAAY,KAAK,eAAe,UAAU;AAChD,UAAM,WAAW;AAAA,MACb,YAAY;AAAA,QACR;AAAA,UACI,YAAY;AAAA,UACZ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AACA,QAAI,SAAS;AACT,YAAM,kBAAkB,KAAK,YAAY,OAAO;AAEhD,eAAS,WAAW,CAAC,EAAE,UAAU;AAAA,IACrC;AACA,QAAI,OAAO,SAAS,QAAQ,GAAG;AAE3B,eAAS,WAAW,CAAC,EAAE,WAAW;AAAA,IACtC;AACA,SAAK,KAAK,SAAS,KAAK,KAAK,UAAU,CAAC;AACxC,SAAK,KAAK,OAAO,KAAK,QAAQ;AAC9B,WAAO,KAAK,KAAK,OAAO,SAAS;AAAA,EACrC;AAAA,EACA,cAAc,YAAY;AAEtB,UAAM,kBAAkB,KAAK,eAAe,UAAU;AACtD,UAAM,WAAW;AAAA,MACb,YAAY;AAAA,QACR;AAAA,UACI,YAAY;AAAA,UACZ,MAAM;AAAA;AAAA,QACV;AAAA,MACJ;AAAA,IACJ;AACA,SAAK,KAAK,SAAS,KAAK,KAAK,UAAU,CAAC;AACxC,SAAK,KAAK,OAAO,KAAK,QAAQ;AAC9B,WAAO,KAAK,KAAK,OAAO,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS,WAAW,aAAa;AAI7B,UAAM,WAAW,uBAAuB,SAAS;AACjD,UAAM,WAAW,eAAe,UAAU;AAC1C,UAAM,kBAAkB,KAAK,cAAc,SAAS;AACpD,UAAM,YAAY;AAAA,MACd,YAAY;AAAA,MACZ;AAAA,IACJ;AACA,SAAK,KAAK,SAAS,KAAK,KAAK,UAAU,CAAC;AACxC,SAAK,KAAK,OAAO,KAAK,SAAS;AAC/B,WAAO,KAAK,KAAK,OAAO,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,QAAQ,cAAc,GAAG,aAAa,KAAK,YAAY;AACjE,UAAM,aAAa,OAAO;AAC1B,IAAAA,QAAO,OAAO,SAAS,UAAU,CAAC;AAElC,SAAK,gBAAgB,KAAK,iBAAiB,CAAC;AAC5C,SAAK,cAAc,KAAK,MAAM;AAC9B,UAAM,iBAAiB;AAAA,MACnB,QAAQ;AAAA;AAAA,MAER;AAAA,MACA;AAAA,IACJ;AAGA,SAAK,cAAc,YAAY,YAAY,CAAC;AAE5C,SAAK,KAAK,cAAc,KAAK,KAAK,eAAe,CAAC;AAClD,SAAK,KAAK,YAAY,KAAK,cAAc;AACzC,WAAO,KAAK,KAAK,YAAY,SAAS;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAAY,iBAAiB,UAAU;AACnC,UAAM,eAAe;AAAA,MACjB,YAAY;AAAA;AAAA,MAEZ,MAAM,wBAAwB,SAAS,IAAI;AAAA;AAAA,MAE3C,eAAe,SAAS;AAAA;AAAA,MAExB,OAAO,SAAS;AAAA;AAAA,MAEhB,KAAK,SAAS;AAAA;AAAA,MAEd,KAAK,SAAS;AAAA,IAClB;AACA,SAAK,KAAK,YAAY,KAAK,KAAK,aAAa,CAAC;AAC9C,SAAK,KAAK,UAAU,KAAK,YAAY;AACrC,WAAO,KAAK,KAAK,UAAU,SAAS;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,gBAAgB,cAAc,WAAW,EAAE,MAAM,EAAE,GAAG;AAClD,UAAM,kBAAkB,KAAK,cAAc,YAAY;AAEvD,QAAI,SAAS,EAAE,KAAK,SAAS,KAAK,KAAK,SAAS,IAAI;AACpD,QAAI,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK;AAE5B,eAAS,KAAK,mBAAmB,cAAc,SAAS,IAAI;AAAA,IAChE;AACA,UAAM,mBAAmB;AAAA;AAAA,MAErB,MAAM,SAAS;AAAA,MACf,eAAe,0BAA0B,YAAY;AAAA;AAAA,MAErD,OAAO,KAAK,MAAM,aAAa,SAAS,SAAS,IAAI;AAAA,MACrD,KAAK,OAAO;AAAA,MACZ,KAAK,OAAO;AAAA,IAChB;AACA,WAAO,KAAK,YAAY,iBAAiB,OAAO,OAAO,kBAAkB,QAAQ,CAAC;AAAA,EACtF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAW,SAAS;AAChB,UAAM,EAAE,WAAW,IAAI;AACvB,UAAM,cAAc;AAAA,MAChB,QAAQ;AAAA,IACZ;AACA,SAAK,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC;AAC5C,SAAK,KAAK,SAAS,KAAK,WAAW;AACnC,WAAO,KAAK,KAAK,SAAS,SAAS;AAAA,EACvC;AAAA;AAAA,EAEA,YAAY,iBAAiB;AACzB,SAAK,KAAK,YAAY,KAAK,KAAK,aAAa,CAAC;AAC9C,SAAK,KAAK,UAAU,KAAK,eAAe;AACxC,WAAO,KAAK,KAAK,UAAU,SAAS;AAAA,EACxC;AAAA;AAAA,EAEA,oBAAoB;AAEhB,SAAK,KAAK,UAAU,CAAC;AAErB,UAAM,kBAAkB,KAAK;AAC7B,UAAM,cAAc,IAAI,YAAY,eAAe;AACnD,UAAM,cAAc,IAAI,WAAW,WAAW;AAE9C,QAAI,gBAAgB;AACpB,eAAW,gBAAgB,KAAK,iBAAiB,CAAC,GAAG;AACjD,sBAAgB,YAAY,cAAc,aAAa,aAAa;AAAA,IACxE;AAEA,QAAI,KAAK,MAAM,UAAU,CAAC,GAAG;AACzB,WAAK,KAAK,QAAQ,CAAC,EAAE,aAAa;AAAA,IACtC,OACK;AACD,WAAK,KAAK,UAAU,CAAC,EAAE,YAAY,gBAAgB,CAAC;AAAA,IACxD;AAEA,SAAK,KAAK,SAAS;AAEnB,SAAK,gBAAgB,CAAC,WAAW;AAAA,EACrC;AAAA;AAAA,EAEA,uBAAuB,OAAO,QAAQ;AAClC,QAAI,QAAQ;AACZ,WAAO,OAAO;AACV,YAAM,QAAQ,MAAM,QAAQ,MAAM;AAClC,UAAI,QAAQ,IAAI;AACZ,cAAM,OAAO,OAAO,CAAC;AAAA,MACzB,OACK;AACD,gBAAQ;AAAA,MACZ;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAIA,eAAe,aAAa,CAAC,GAAG;AAC5B,UAAM,SAAS,CAAC;AAChB,eAAW,gBAAgB,YAAY;AACnC,YAAM,gBAAgB,WAAW,YAAY;AAC7C,YAAM,WAAW,KAAK,sBAAsB,YAAY;AACxD,YAAM,WAAW,KAAK,gBAAgB,cAAc,OAAO,aAAa;AACxE,aAAO,QAAQ,IAAI;AAAA,IACvB;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAY,SAAS;AACjB,WAAO,KAAK,gBAAgB,SAAS,EAAE,MAAM,EAAE,CAAC;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAIA,sBAAsB,eAAe;AACjC,YAAQ,cAAc,YAAY,GAAG;AAAA,MACjC,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,MACX;AACI,eAAO;AAAA,IACf;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB,QAAQ,MAAM;AAC7B,UAAM,SAAS,EAAE,KAAK,MAAM,KAAK,KAAK;AACtC,QAAI,OAAO,SAAS,MAAM;AACtB,aAAO;AAAA,IACX;AAEA,WAAO,MAAM,CAAC;AAEd,WAAO,MAAM,CAAC;AACd,UAAM,aAAa,OAAO,SAAS,GAAG,IAAI;AAC1C,eAAW,SAAS,YAAY;AAE5B,aAAO,IAAI,KAAK,KAAK;AAErB,aAAO,IAAI,KAAK,KAAK;AAAA,IACzB;AACA,aAAS,QAAQ,MAAM,QAAQ,OAAO,QAAQ,SAAS,MAAM;AACzD,eAAS,iBAAiB,GAAG,iBAAiB,MAAM,kBAAkB;AAElE,eAAO,IAAI,IAAI,cAAc,IAAI,KAAK;AAAA;AAAA,UAEtC,OAAO,IAAI,IAAI,cAAc;AAAA,UAAG,OAAO,QAAQ,cAAc;AAAA,QAAC;AAE9D,eAAO,IAAI,IAAI,cAAc,IAAI,KAAK;AAAA;AAAA,UAEtC,OAAO,IAAI,IAAI,cAAc;AAAA,UAAG,OAAO,QAAQ,cAAc;AAAA,QAAC;AAAA,MAClE;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AACJ;;;ACnjBA,SAAS,KAAKC,IAAG;AACb,UAASA,KAAI,IAAK,KAAK;AAC3B;AACA,IAAMC,gCAA+B;AAAA,EACjC,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,MAAM;AACV;AACA,IAAMC,qCAAoC;AAAA,EACtC,MAAM;AAAA,EACN,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AACb;AACA,IAAMC,yCAAwC;AAAA,EAC1C,MAAM;AAAA,EACN,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AACb;AACO,SAAS,wBAAwB,eAAe,eAAe;AAClE,SAAQA,uCAAsC,aAAa,IACvDF,8BAA6B,aAAa;AAClD;AASO,SAAS,sBAAsB,YAAY,iBAAiB,YAAY,kBAAkB;AAC7F,MAAI,eAAe,WACf,eAAe,YACf,eAAe,YACf,eAAe,UAAU;AACzB,WAAO;AAAA,EACX;AACA,QAAM,oBAAoB,WAAW,2BAA2B,eAAe;AAC/E,QAAM,eAAe;AAAA,IAAgC;AAAA,IAAmB;AAAA;AAAA,IACxE;AAAA,IAAY,mBAAmB;AAAA;AAAA,EAC/B;AAEA,MAAI,wBAAwB,iBAAiB,wBAAwB,gBAAgB;AACjF,WAAO;AAAA,EACX;AACA,SAAO;AACX;AASO,SAAS,gCAAgC,MAAM,eAAe,eAAe,eAAe,GAAG;AAClG,QAAM,qBAAqBA,8BAA6B,aAAa;AACrE,QAAM,YAAYC,mCAAkC,aAAa;AACjE,QAAM,OAAOC,uCAAsC,aAAa;AAChE,QAAM,SAAS,eAAe;AAC9B,QAAM,aAAa,SAAS;AAC5B,MAAI,SAAS,KAAK;AAClB,MAAI,SAAS,KAAK;AAClB,MAAI,SAAS,SAAS,GAAG;AACrB,UAAM,cAAc,IAAI,WAAW,MAAM;AACzC,aAAS,YAAY,MAAM,QAAQ,SAAS,UAAU,EAAE;AACxD,aAAS;AAAA,EACb;AACA,SAAO,IAAI,UAAU,QAAQ,QAAQ,MAAM;AAC/C;AAQO,SAAS,wBAAwB,YAAY,aAAa,WAAW;AAkBxE,QAAM,sBAAsB,YAAY,YAAY,YAAY,CAAC;AACjE,QAAM,wBAAwB,UAAU,WAAW,mBAAmB;AACtE,QAAM,qBAAqB,WAAW,yBAAyB,qBAAqB;AACpF,QAAM,OAAO,WAAW,KAAK;AAC7B,QAAM,eAAe,YAAY;AACjC,QAAM,aAAa,KAAK,WAAW,YAAY,GAAG;AAClD,MAAI,OAAO,eAAe,aAAa;AACnC,UAAM,WAAW,KAAK,SAAS,UAAU,GAAG;AAC5C,UAAM,cAAc,WAAW,KAAK,SAAS,UAAU;AAEvD,QAAI,eAAe,OAAO,YAAY,UAAU,aAAa;AACzD,YAAM,cAAc,CAAC;AACrB,eAAS,QAAQ,GAAG,QAAQ,mBAAmB,QAAQ,SAAS,GAAG;AAC/D,cAAM,QAAQ,2BAA2B,aAAa,UAAU,oBAAoB,OAAO,YAAY,QAAQ;AAC/G,oBAAY,KAAK,KAAK;AAAA,MAC1B;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO,CAAC;AACZ;AAWO,SAAS,kCAAkC,YAAY,eAAe,cAAc,cAAc,WAAW;AAEhH,MAAI,CAAC,cAAc,QAAQ;AACvB;AAAA,EACJ;AAQA,QAAM,iBAAiB,CAAC;AACxB,aAAW,aAAa,cAAc;AAClC,QAAI,QAAQ,aAAa,UAAU,CAAC,SAAS,SAAS,SAAS;AAC/D,QAAI,UAAU,IAAI;AACd,cAAQ,aAAa,KAAK,SAAS,IAAI;AAAA,IAC3C;AACA,mBAAe,KAAK,KAAK;AAAA,EAC7B;AACA,QAAM,aAAa,IAAI,YAAY,cAAc;AACjD,QAAM,cAAc,WAAW,KAAK,QAAQ,KAAK;AAAA,IAC7C,aAAa,WAAW;AAAA,IACxB,YAAY,WAAW;AAAA,IACvB,YAAY,WAAW;AAAA,EAC3B,CAAC,IAAI;AACL,QAAM,kBAAkB,WAAW,cAAc,YAAY,aAAa,CAAC;AAC3E,QAAM,gBAAgB,WAAW,YAAY,iBAAiB;AAAA,IAC1D,MAAM;AAAA,IACN,eAAe,0BAA0B,UAAU;AAAA,IACnD,OAAO,WAAW;AAAA,EACtB,CAAC;AACD,YAAU,WAAW,aAAa,IAAI;AAC1C;AAcA,SAAS,2BAA2B,aAAa,UAAU,oBAAoB,OAAO,WAAW,CAAC,CAAC,GAAG;AAClG,QAAM,eAAe;AAAA,IACjB,GAAG,EAAE,QAAQ,GAAG,OAAO,EAAE;AAAA,IACzB,GAAG,EAAE,QAAQ,GAAG,OAAO,EAAE;AAAA,IACzB,GAAG,EAAE,QAAQ,GAAG,OAAO,GAAG;AAAA,IAC1B,GAAG,EAAE,QAAQ,GAAG,OAAO,GAAG;AAAA,EAC9B;AACA,QAAM,IAAI,mBAAmB,KAAK;AAClC,QAAM,IAAI,mBAAmB,QAAQ,CAAC;AACtC,MAAI,aAAa;AACjB,MAAI,aAAa,SAAS,QAAQ,YAAY,MAAM,MAAM,SAAS,QAAQ,WAAW,MAAM;AACxF,iBAAa;AACjB,QAAM,SAAS,oBAAoB,GAAG,GAAG,aAAa,UAAU;AAChE,MAAI,QAAQ;AACZ,aAAWC,MAAK,UAAU;AAUtB,UAAM,MAAM,OAAOA,OAAM,WAAW,OAAO,OAAO,YAAY,EAAEA,EAAC,IAAI,aAAaA,EAAC;AACnF,UAAM,cAAc,SAAS,IAAI;AACjC,UAAM,YAAY,aAAa,WAAW;AAC1C,QAAI,UAAU,KAAK,UAAU,aAAa;AACtC,YAAM,IAAI,MAAM,GAAG,UAAU,KAAK,MAAM,OAAO,WAAW,EAAE;AAAA,IAChE;AACA,UAAM,aAAa,UAAU,KAAK,WAAW;AAC7C,aAAS,cAAc,IAAI;AAAA,EAC/B;AACA,SAAO;AACX;AASA,SAAS,oBAAoB,GAAG,GAAG,aAAa,kBAAkB,GAAG;AACjE,QAAM,IAAI,YAAY;AACtB,QAAM,KAAK,KAAK,CAAC,KAAK,IAAI;AAC1B,QAAM,OAAO,KAAK,MAAM,EAAE;AAC1B,QAAM,IAAI,YAAY;AACtB,QAAM,KAAK,KAAK,CAAC,KAAK,IAAI;AAC1B,QAAM,OAAO,KAAK,MAAM,EAAE;AAC1B,QAAM,aAAa,YAAY,aAAa,YAAY,aAAa;AAErE,QAAM,UAAU,OAAO,IAAI,QAAQ;AACnC,SAAO;AACX;AAYO,SAAS,gCAAgC,YAAY,kBAAkB,cAAc,uBAAuB,WAAW;AAC1H,QAAM,sBAAsB,CAAC;AAC7B,WAAS,QAAQ,GAAG,QAAQ,kBAAkB,SAAS;AACnD,UAAM,cAAc,aAAa,KAAK;AACtC,UAAM,gBAAgB,aAAa,QAAQ,CAAC,IAAI,aAAa,KAAK;AAClE,QAAI,gBAAgB,cAAc,uBAAuB;AACrD;AAAA,IACJ;AACA,UAAM,mBAAmB,cAAc;AACvC,UAAM,eAAe,gBAAgB;AACrC,wBAAoB,KAAK,WAAW,MAAM,kBAAkB,mBAAmB,YAAY,CAAC;AAAA,EAChG;AACA,SAAO;AACX;AAUO,SAAS,6BAA6B,YAAY,kBAAkB,YAAY;AACnF,QAAM,sBAAsB,CAAC;AAC7B,WAAS,QAAQ,GAAG,QAAQ,kBAAkB,SAAS;AACnD,UAAM,gBAAgB,QAAQ;AAC9B,wBAAoB,KAAK,WAAW,MAAM,eAAe,gBAAgB,UAAU,CAAC;AAAA,EACxF;AACA,SAAO;AACX;AASO,SAAS,sBAAsB,kBAAkB,iBAAiB,cAAc,eAAe;AAClG,MAAI,cAAc;AAEd,UAAM,IAAI,MAAM,yDAAyD;AAAA,EAC7E;AACA,MAAI,eAAe;AACf,UAAM,eAAe,CAAC;AACtB,UAAM,cAAc,IAAI,YAAY,MAAM;AAC1C,QAAI,eAAe;AACnB,aAAS,QAAQ,GAAG,QAAQ,kBAAkB,SAAS;AACnD,YAAM,iBAAiB,cAAc,QAAQ,CAAC,IAAI,cAAc,KAAK;AACrE,UAAI,iBAAiB,gBAAgB,gBAAgB,QAAQ;AACzD,cAAM,aAAa,gBAAgB,SAAS,cAAc,iBAAiB,YAAY;AACvF,cAAM,kBAAkB,YAAY,OAAO,UAAU;AACrD,qBAAa,KAAK,eAAe;AACjC,wBAAgB;AAAA,MACpB;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AACA,SAAO,CAAC;AACZ;;;AlBxUA,IAAM,yBAAyB;AACxB,IAAM,OAAO;AACpB,eAAsB,OAAO,UAAU,SAAS;AAC5C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,wBAAsB,YAAY,OAAO;AAC7C;AAMA,SAAS,sBAAsB,YAAY,SAAS;AAChD,QAAM,OAAO,WAAW,KAAK;AAC7B,MAAI,CAAC,KAAK,QAAQ;AACd;AAAA,EACJ;AAEA,aAAW,QAAQ,KAAK,QAAQ;AAC5B,eAAW,aAAa,KAAK,YAAY;AACrC,mCAA6B,YAAY,WAAW,OAAO;AAAA,IAC/D;AAAA,EACJ;AACJ;AAQA,SAAS,6BAA6B,YAAY,WAAW,SAAS;AAElE,MAAI,CAAC,SAAS,MAAM,aAAa;AAC7B;AAAA,EACJ;AACA,QAAM,YAAY,UAAU,aAAa,sBAAsB;AAC/D,QAAM,aAAa,WAAW;AAC9B,MAAI,CAAC,YAAY;AACb;AAAA,EACJ;AACA,aAAW,aAAa,YAAY;AAChC,QAAI;AAEJ,QAAI,OAAO,UAAU,cAAc,aAAa;AAC5C,YAAM,cAAc,eAAe,UAAU,SAAS;AACtD,YAAM,gBAAgB,UAAU,WAAW,WAAW;AACtD,sBAAgB,WAAW,yBAAyB,aAAa;AAAA,IACrE,WAES,OAAO,UAAU,YAAY,eAAe,SAAS,MAAM,YAAY;AAC5E,sBAAgB,wBAAwB,YAAY,UAAU,SAAS,SAAS;AAAA,IACpF,OAEK;AAOD,sBAAgB,CAAC;AAAA,IACrB;AACA,cAAU,OAAO;AAAA,EACrB;AACJ;;;AmBlEA;AAAA;AAAA,gBAAAC;AAAA,EAAA,YAAAC;AAAA;AAEA,IAAM,+BAA+B;AAC9B,IAAMC,QAAO;AACpB,eAAsBC,QAAO,UAAU,SAAS;AAC5C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,8BAA4B,YAAY,OAAO;AACnD;AA8DA,SAAS,4BAA4B,YAAY,SAAS;AAGtD,MAAI,CAAC,QAAQ,MAAM,aAAa;AAC5B;AAAA,EACJ;AACA,QAAM,YAAY,WAAW,aAAa,4BAA4B;AACtE,MAAI,CAAC,WAAW;AACZ;AAAA,EACJ;AACA,MAAI,QAAQ,MAAM,YAAY;AAC1B,2BAAuB,YAAY,SAAS;AAAA,EAChD;AACA,uBAAqB,YAAY,SAAS;AAC9C;AAMA,SAAS,uBAAuB,YAAY,WAAW;AACnD,QAAM,mBAAmB,UAAU;AACnC,QAAM,OAAO,WAAW,KAAK;AAC7B,MAAI,oBAAoB,KAAK,QAAQ;AAEjC,eAAW,QAAQ,KAAK,QAAQ;AAC5B,iBAAW,aAAa,KAAK,YAAY;AACrC,yCAAiC,YAAY,kBAAkB,WAAW,SAAS;AAAA,MACvF;AAAA,IACJ;AAAA,EACJ;AACJ;AAMA,SAAS,qBAAqB,YAAY,WAAW;AACjD,QAAM,SAAS,UAAU;AACzB,MAAI,CAAC,QAAQ;AACT;AAAA,EACJ;AACA,QAAM,gBAAgB,OAAO;AAC7B,QAAM,iBAAiB,UAAU;AACjC,MAAI,iBAAiB,gBAAgB;AACjC,eAAW,cAAc,eAAe;AACpC,YAAM,gBAAgB,yBAAyB,gBAAgB,UAAU;AACzE,UAAI,eAAe;AACf,6BAAqB,YAAY,QAAQ,aAAa;AAAA,MAC1D;AAAA,IACJ;AAAA,EACJ;AACJ;AAMA,SAAS,yBAAyB,gBAAgB,iBAAiB;AAC/D,aAAW,iBAAiB,gBAAgB;AACxC,QAAI,cAAc,UAAU,iBAAiB;AACzC,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;AAQA,SAAS,iCAAiC,YAAY,kBAAkB,WAAW,WAAW;AAC1F,MAAI,CAAC,kBAAkB;AACnB;AAAA,EACJ;AACA,QAAM,qBAAqB,UAAU,aAAa,4BAA4B;AAC9E,QAAM,kCAAkC,oBAAoB;AAC5D,MAAI,CAAC,iCAAiC;AAClC;AAAA,EACJ;AACA,aAAW,iCAAiC,iCAAiC;AACzE,UAAM,kBAAkB,iBAAiB,6BAA6B;AACtE,oCAAgC,YAAY,iBAAiB,WAAW,SAAS;AAAA,EACrF;AACJ;AAQA,SAAS,gCAAgC,YAAY,iBAAiB,WAAW,WAAW;AACxF,MAAI,CAAC,gBAAgB,YAAY;AAC7B;AAAA,EACJ;AACA,MAAI,CAAC,UAAU,oBAAoB;AAC/B,cAAU,qBAAqB,CAAC;AAAA,EACpC;AAkBA,QAAM,YAAY,gBAAgB;AAClC,aAAW,gBAAgB,gBAAgB,YAAY;AAGnD,UAAM,gBAAgB,GAAG,SAAS,IAAI,YAAY;AAClD,UAAM,sBAAsB,gBAAgB,aAAa,YAAY;AACrE,QAAI,CAAC,qBAAqB;AAEtB;AAAA,IACJ;AAGA,QAAI,CAAC,oBAAoB,MAAM;AAC3B,0BAAoB,OAAO,CAAC;AAAA,IAChC;AACA,UAAM,sBAAsB,oBAAoB;AAChD,UAAM,eAAe,wBAAwB,YAAY,qBAAqB,SAAS;AACvF,QAAI,iBAAiB,MAAM;AAEvB;AAAA,IACJ;AACA,sCAAkC,YAAY,eAAe,cAAc,qBAAqB,SAAS;AACzG,wBAAoB,OAAO;AAC3B,cAAU,mBAAmB,KAAK,aAAa;AAAA,EACnD;AACJ;AAQA,SAAS,qBAAqB,YAAY,QAAQ,eAAe;AAC7D,QAAM,cAAc,OAAO,UAAU,cAAc,KAAK;AACxD,MAAI,CAAC,aAAa;AACd,UAAM,IAAI,MAAM,sFAAsF,cAAc,KAAK,EAAE;AAAA,EAC/H;AACA,QAAM,mBAAmB,cAAc;AACvC,aAAW,gBAAgB,YAAY,YAAY;AAC/C,UAAM,gBAAgB,YAAY,WAAW,YAAY;AACzD,UAAM,wBAAwB,cAAc,aAAa,YAAY;AACrE,QAAI,uBAAuB;AAEvB,YAAM,OAAO,gCAAgC,YAAY,QAAQ,eAAe,kBAAkB,qBAAqB;AACvH,4BAAsB,OAAO;AAAA,IACjC;AAAA,EACJ;AACJ;AAUA,SAAS,gCAAgC,YAAY,QAAQ,eAAe,kBAAkB,uBAAuB;AACjH,MAAI,OAAO,CAAC;AACZ,QAAM,mBAAmB,sBAAsB;AAC/C,QAAM,kBAAkB,WAAW,2BAA2B,gBAAgB;AAC9E,QAAM,eAAe,2BAA2B,YAAY,eAAe,uBAAuB,gBAAgB;AAClH,QAAM,gBAAgB,4BAA4B,YAAY,uBAAuB,gBAAgB;AACrG,UAAQ,cAAc,MAAM;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK,QAAQ;AACT,aAAO,uBAAuB,eAAe,kBAAkB,iBAAiB,YAAY;AAC5F;AAAA,IACJ;AAAA,IACA,KAAK,WAAW;AAEZ,YAAM,IAAI,MAAM,wCAAwC,cAAc,IAAI,EAAE;AAAA,IAChF;AAAA,IACA,KAAK,UAAU;AACX,aAAO,sBAAsB,kBAAkB,iBAAiB,cAAc,aAAa;AAC3F;AAAA,IACJ;AAAA,IACA,KAAK,QAAQ;AACT,aAAO,oBAAoB,QAAQ,eAAe,kBAAkB,iBAAiB,YAAY;AACjG;AAAA,IACJ;AAAA,IACA;AACI,YAAM,IAAI,MAAM,8BAA8B,cAAc,IAAI,EAAE;AAAA,EAC1E;AACA,SAAO;AACX;AAUA,SAAS,2BAA2B,YAAY,eAAe,uBAAuB,kBAAkB;AACpG,MAAI,cAAc;AAAA;AAAA,EAGd,OAAO,cAAc,UAAU;AAAA,EAE/B,OAAO,sBAAsB,iBAAiB,aAAa;AAE3D,WAAO,sBAAsB,YAAY,sBAAsB,cAAc,sBAAsB,mBAAmB,UAAU,gBAAgB;AAAA,EACpJ;AACA,SAAO;AACX;AASA,SAAS,4BAA4B,YAAY,uBAAuB,kBAAkB;AACtF,MAAI,OAAO,sBAAsB,kBAAkB,aACjD;AAEE,WAAO,sBAAsB,YAAY,sBAAsB,eAAe,sBAAsB,oBAAoB,UAAU,gBAAgB;AAAA,EACtJ;AACA,SAAO;AACX;AASA,SAAS,uBAAuB,eAAe,kBAAkB,iBAAiB,cAAc;AAC5F,QAAMC,WAAU,cAAc;AAC9B,QAAM,aAAa,cAAc;AACjC,QAAM,cAAc,wBAAwB,cAAc,MAAM,cAAc,aAAa;AAC3F,QAAM,eAAe,gBAAgB,aAAa;AAClD,MAAI;AACJ,MAAI,cAAc,eAAe;AAC7B,iBAAa;AAAA,MAAgC;AAAA,MAAiB,cAAc;AAAA;AAAA,MAE5E,cAAc;AAAA,MAAe;AAAA,IAAY;AAAA,EAC7C,OACK;AAED,iBAAa;AAAA,EACjB;AACA,MAAIA,UAAS;AACT,QAAI,cAAc;AAEd,aAAO,gCAAgC,YAAY,kBAAkB,cAAc,gBAAgB,QAAQ,WAAW;AAAA,IAC1H;AACA,QAAI,YAAY;AAEZ,aAAO,6BAA6B,YAAY,kBAAkB,UAAU;AAAA,IAChF;AACA,WAAO,CAAC;AAAA,EACZ;AACA,SAAO;AACX;AAUA,SAAS,oBAAoB,QAAQ,eAAe,kBAAkB,iBAAiB,cAAc;AACjG,QAAM,WAAW,cAAc;AAE/B,MAAI,CAAC,UAAU;AACX,UAAM,IAAI,MAAM,0GAA0G;AAAA,EAC9H;AACA,QAAM,YAAY,OAAO,QAAQ,QAAQ;AACzC,MAAI,CAAC,WAAW;AACZ,UAAM,IAAI,MAAM,wFAAwF,QAAQ,EAAE;AAAA,EACtH;AACA,QAAM,gBAAgB,UAAU,aAAa;AAC7C,QAAM,cAAc,wBAAwB,cAAc,MAAM,aAAa;AAC7E,QAAM,eAAe,gBAAgB,aAAa;AAClD,MAAI,aAAa,gCAAgC,iBAAiB,cAAc,MAAM,eAAe,YAAY;AACjH,MAAI,CAAC,YAAY;AACb,iBAAa;AAAA,EACjB;AACA,MAAI,cAAc,OAAO;AACrB,QAAI,cAAc;AAEd,aAAO,6BAA6B;AAAA,QAChC;AAAA,QACA;AAAA,QACA;AAAA,QACA,uBAAuB,gBAAgB;AAAA,QACvC;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACL;AACA,UAAM,aAAa,cAAc;AACjC,QAAI,YAAY;AAEZ,aAAO,0BAA0B,YAAY,kBAAkB,YAAY,SAAS;AAAA,IACxF;AACA,WAAO,CAAC;AAAA,EACZ;AAEA,SAAO,cAAc,YAAY,GAAG,kBAAkB,SAAS;AACnE;AAWA,SAAS,6BAA6BC,SAAQ;AAC1C,QAAM,EAAE,YAAY,kBAAkB,cAAc,uBAAuB,aAAa,UAAU,IAAIA;AACtG,QAAM,sBAAsB,CAAC;AAC7B,WAAS,QAAQ,GAAG,QAAQ,kBAAkB,SAAS;AACnD,UAAM,cAAc,aAAa,KAAK;AACtC,UAAM,gBAAgB,aAAa,QAAQ,CAAC,IAAI,aAAa,KAAK;AAClE,QAAI,gBAAgB,cAAc,uBAAuB;AACrD;AAAA,IACJ;AACA,UAAM,mBAAmB,cAAc;AACvC,UAAM,eAAe,gBAAgB;AACrC,UAAM,QAAQ,cAAc,YAAY,kBAAkB,cAAc,SAAS;AACjF,wBAAoB,KAAK,KAAK;AAAA,EAClC;AACA,SAAO;AACX;AASA,SAAS,0BAA0B,YAAY,kBAAkB,YAAY,WAAW;AACpF,QAAM,sBAAsB,CAAC;AAC7B,WAAS,QAAQ,GAAG,QAAQ,kBAAkB,SAAS;AACnD,UAAM,gBAAgB,aAAa;AACnC,UAAM,QAAQ,cAAc,YAAY,eAAe,YAAY,SAAS;AAC5E,wBAAoB,KAAK,KAAK;AAAA,EAClC;AACA,SAAO;AACX;AASA,SAAS,cAAc,YAAY,QAAQ,OAAO,WAAW;AACzD,QAAM,QAAQ,CAAC;AACf,WAASC,KAAI,GAAGA,KAAI,OAAOA,MAAK;AAG5B,QAAI,sBAAsB,iBAAiB,sBAAsB,gBAAgB;AAC7E,YAAM,KAAK,EAAE;AAAA,IACjB,OACK;AACD,YAAM,QAAQ,WAAW,SAASA,EAAC;AACnC,YAAM,aAAa,eAAe,WAAW,KAAK;AAClD,UAAI,YAAY;AACZ,cAAM,KAAK,WAAW,IAAI;AAAA,MAC9B,OACK;AACD,cAAM,KAAK,EAAE;AAAA,MACjB;AAAA,IACJ;AAAA,EACJ;AACA,SAAO;AACX;AAOA,SAAS,eAAe,WAAW,OAAO;AACtC,aAAW,aAAa,UAAU,QAAQ;AACtC,QAAI,UAAU,UAAU,OAAO;AAC3B,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;;;ACreA;AAAA;AAAA,gBAAAC;AAAA,EAAA,YAAAC;AAAA;AAGA,IAAM,4BAA4B;AAC3B,IAAMC,QAAO;AACpB,eAAsBC,QAAO,UAAU,SAAS;AAC5C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,2BAAyB,YAAY,OAAO;AAChD;AAMA,SAAS,yBAAyB,YAAY,SAAS;AAGnD,MAAI,CAAC,QAAQ,MAAM,aAAa;AAC5B;AAAA,EACJ;AACA,QAAM,YAAY,WAAW,aAAa,yBAAyB;AACnE,MAAI,CAAC,WAAW;AACZ;AAAA,EACJ;AACA,MAAI,QAAQ,MAAM,YAAY;AAC1B,IAAAC,wBAAuB,YAAY,SAAS;AAAA,EAChD;AACA,EAAAC,sBAAqB,YAAY,SAAS;AAC9C;AAMA,SAASD,wBAAuB,YAAY,WAAW;AACnD,QAAM,SAAS,UAAU;AACzB,MAAI,CAAC,QAAQ;AACT;AAAA,EACJ;AACA,QAAM,gBAAgB,OAAO;AAC7B,QAAM,EAAE,gBAAgB,IAAI;AAC5B,MAAI,iBAAiB,iBAAiB;AAClC,eAAW,cAAc,eAAe;AACpC,YAAM,cAAc,cAAc,UAAU;AAC5C,YAAM,iBAAiB,0BAA0B,iBAAiB,UAAU;AAC5E,UAAI,gBAAgB;AAChB,uCAA+B,YAAY,gBAAgB,WAAW;AAAA,MAC1E;AAAA,IACJ;AAAA,EACJ;AACJ;AAMA,SAASC,sBAAqB,YAAY,WAAW;AACjD,QAAM,SAAS,UAAU;AACzB,MAAI,CAAC,QAAQ;AACT;AAAA,EACJ;AACA,QAAM,gBAAgB,OAAO;AAC7B,QAAM,iBAAiB,UAAU;AACjC,MAAI,iBAAiB,gBAAgB;AACjC,eAAW,cAAc,eAAe;AACpC,YAAM,gBAAgBC,0BAAyB,gBAAgB,UAAU;AACzE,UAAI,eAAe;AACf,QAAAC,sBAAqB,YAAY,QAAQ,aAAa;AAAA,MAC1D;AAAA,IACJ;AAAA,EACJ;AACJ;AAMA,SAASD,0BAAyB,gBAAgB,iBAAiB;AAC/D,aAAW,qBAAqB,gBAAgB;AAC5C,UAAM,gBAAgB,eAAe,iBAAiB;AACtD,QAAI,cAAc,UAAU,iBAAiB;AACzC,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;AACA,SAAS,0BAA0B,iBAAiB,iBAAiB;AACjE,aAAW,uBAAuB,iBAAiB;AAC/C,UAAM,eAAe,gBAAgB,mBAAmB;AACxD,QAAI,aAAa,UAAU,iBAAiB;AACxC,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;AAQA,SAASC,sBAAqB,YAAY,QAAQ,eAAe;AAG7D,MAAI,CAAC,cAAc,OAAO;AACtB;AAAA,EACJ;AACA,QAAM,cAAc,OAAO,UAAU,cAAc,KAAK;AACxD,MAAI,CAAC,aAAa;AACd,UAAM,IAAI,MAAM,sFAAsF,cAAc,KAAK,EAAE;AAAA,EAC/H;AACA,QAAM,mBAAmB,cAAc;AACvC,aAAW,gBAAgB,YAAY,YAAY;AAC/C,UAAM,gBAAgB,YAAY,WAAW,YAAY;AACzD,UAAM,wBAAwB,cAAc,aAAa,YAAY;AACrE,QAAI,uBAAuB;AAEvB,YAAM,OAAOC,iCAAgC,YAAY,QAAQ,eAAe,kBAAkB,qBAAqB;AACvH,4BAAsB,OAAO;AAAA,IACjC;AAAA,EACJ;AACJ;AAQA,SAAS,+BAA+B,YAAY,gBAAgB,aAAa;AAC7E,QAAM,gBAAgB,eAAe;AACrC,aAAW,gBAAgB,YAAY,YAAY;AAC/C,UAAM,yBAAyB,gBAAgB,aAAa,YAAY;AACxE,QAAI,wBAAwB;AACxB,YAAM,OAAO,2BAA2B,YAAY,wBAAwB,aAAa;AACzF,6BAAuB,OAAO;AAAA,IAClC;AAAA,EACJ;AACJ;AAQA,SAASA,iCAAgC,YAAY,QAAQ,eAAe,kBAAkB,sBAAsB;AAChH,MAAI,OAAO,CAAC;AACZ,QAAM,aAAa,qBAAqB;AACxC,QAAM,YAAY,WAAW,2BAA2B,UAAU;AAClE,QAAM,eAAeC,4BAA2B,YAAY,eAAe,sBAAsB,gBAAgB;AACjH,QAAM,gBAAgBC,6BAA4B,YAAY,eAAe,sBAAsB,gBAAgB;AACnH,MAAI,cAAc,SAAS,YAAY,cAAc,kBAAkB,UAAU;AAC7E,WAAO,sBAAsB,kBAAkB,WAAW,cAAc,aAAa;AAAA,EACzF,WACS,kBAAkB,aAAa,GAAG;AACvC,WAAOC,wBAAuB,eAAe,kBAAkB,WAAW,YAAY;AAAA,EAC1F;AACA,SAAO;AACX;AAUA,SAASF,4BAA2B,YAAY,eAAe,uBAAuB,kBAAkB;AAKpG,MAAI,cAAc,SAAS;AAAA;AAAA,EAGvB,OAAO,cAAc,mBAAmB;AAAA,EAExC,OAAO,sBAAsB,0BAA0B,aAAa;AAEpE,WAAO;AAAA,MAAsB;AAAA,MAAY,sBAAsB;AAAA,MAAuB,sBAAsB,cAAc;AAAA;AAAA,MAC1H;AAAA,IAAgB;AAAA,EACpB;AACA,SAAO;AACX;AAUA,SAASC,6BAA4B,YAAY,eAAe,uBAAuB,kBAAkB;AACrG,MAAI,OAAO,sBAAsB,2BAA2B,aAC1D;AAEE,WAAO;AAAA,MAAsB;AAAA,MAAY,sBAAsB;AAAA,MAAwB,sBAAsB,cAAc;AAAA;AAAA,MAC3H;AAAA,IAAgB;AAAA,EACpB;AACA,SAAO;AACX;AAMA,SAAS,kBAAkB,gBAAgB;AACvC,QAAM,QAAQ;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AACA,SAAQ,MAAM,SAAS,eAAe,IAAI,KACrC,OAAO,eAAe,kBAAkB,eACrC,MAAM,SAAS,eAAe,aAAa;AACvD;AASA,SAASC,wBAAuB,eAAe,kBAAkB,iBAAiB,cAAc;AAC5F,QAAMC,WAAU,cAAc,SAAS;AACvC,QAAM,aAAa,cAAc;AAMjC,QAAM,gBAAgB;AACtB,QAAM,gBAAgB,cAAc,iBAAiB,cAAc;AACnE,QAAM,cAAc,wBAAwB,eAAe,aAAa;AACxE,QAAM,eAAe,gBAAgB,aAAa;AAClD,QAAM,aAAa,gCAAgC,iBAAiB,eAAe,eAAe,YAAY;AAC9G,MAAIA,UAAS;AACT,QAAI,cAAc;AAEd,aAAO,gCAAgC,YAAY,kBAAkB,cAAc,gBAAgB,QAAQ,WAAW;AAAA,IAC1H;AACA,QAAI,YAAY;AAEZ,aAAO,6BAA6B,YAAY,kBAAkB,UAAU;AAAA,IAChF;AACA,WAAO,CAAC;AAAA,EACZ;AACA,SAAO;AACX;AAQA,SAAS,2BAA2B,YAAY,wBAAwB,eAAe;AACnF,QAAM,OAAO,WAAW,KAAK;AAC7B,MAAI,CAAC,KAAK,QAAQ;AACd,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,sBAAsB,CAAC;AAC7B,aAAW,QAAQ,KAAK,QAAQ;AAC5B,eAAW,aAAa,KAAK,YAAY;AACrC,+BAAyB,YAAY,eAAe,wBAAwB,qBAAqB,SAAS;AAAA,IAC9G;AAAA,EACJ;AACA,SAAO;AACX;AASA,SAAS,yBAAyB,YAAY,eAAe,wBAAwB,qBAAqB,WAAW;AACjH,QAAM,sBAAsB;AAAA,IACxB,UAAU,uBAAuB;AAAA,IACjC,GAAG,uBAAuB;AAAA,EAC9B;AACA,QAAM,eAAe,wBAAwB,YAAY,qBAAqB,SAAS;AACvF,MAAI,CAAC,cAAc;AACf;AAAA,EACJ;AACA,oCAAkC,YAAY,eAAe,cAAc,qBAAqB,SAAS;AAC7G;;;ACvSO,IAAMC,WAAU,OAAiC,UAAU;;;ACG3D,IAAMC,WAAU,OAAiC,UAAU;;;ACD3D,IAAM,2BAA2B;AAAA;AAAA,EAEpC,YAAY;AAAA;AAAA,EAEZ,iBAAiB;AAAA;AAAA,EAEjB,SAAS;AAAA;AAAA,EAET,cAAc;AAClB;AACA,IAAI;AAMJ,eAAsB,0BAA0B,SAAS;AACrD,oBAAkB,QAAQ,OAAO;AACjC,QAAM,QAAQ,kBAAkB,OAAO;AACvC,MAAI,OAAO;AACP,WAAO;AAAA,EACX;AACA,iCAA+B,oBAAoB,OAAO;AAC1D,SAAO,MAAM;AACjB;AAMA,eAAe,oBAAoB,SAAS;AACxC,MAAIC,SAAQ;AACZ,MAAI,aAAa;AACjB,GAACA,QAAO,UAAU,IAAI,MAAM,QAAQ,IAAI;AAAA,IACpC,MAAM,YAAY,yBAAyB,YAAY,YAAY,OAAO;AAAA,IAC1E,MAAM,YAAY,yBAAyB,iBAAiB,YAAY,OAAO;AAAA,EACnF,CAAC;AAGD,EAAAA,SAAQA,UAAS,WAAW;AAC5B,SAAO,MAAM,gCAAgCA,QAAO,UAAU;AAClE;AAOA,SAAS,gCAAgC,aAAa,YAAY;AAC9D,QAAM,UAAU,CAAC;AACjB,MAAI,YAAY;AACZ,YAAQ,aAAa;AAAA,EACzB;AACA,SAAO,IAAI,QAAQ,CAACC,aAAY;AAE5B,gBAAY,OAAO,EAAE,KAAK,CAACC,YAAW;AAClC,YAAM,EAAE,WAAW,gBAAgB,IAAIA;AACvC,sBAAgB;AAChB,MAAAD,SAAQ,EAAE,UAAU,CAAC;AAAA,IACzB,CAAC;AAAA,EACL,CAAC;AACL;AACA,IAAI;AAMJ,eAAsB,uBAAuB,SAAS;AAClD,QAAM,UAAU,QAAQ,WAAW,CAAC;AACpC,MAAI,QAAQ,cAAc;AACtB,WAAO,QAAQ;AAAA,EACnB;AACA,4BAA0B,2BAA2B,iBAAiB,OAAO;AAC7E,SAAO,MAAM;AACjB;AAMA,eAAe,iBAAiB,SAAS;AACrC,MAAI,gBAAgB;AACpB,MAAI,aAAa;AACjB,GAAC,eAAe,UAAU,IAAI,MAAM,QAAQ,IAAI;AAAA,IAC5C,MAAM,YAAY,yBAAyB,SAAS,YAAY,OAAO;AAAA,IACvE,MAAM,YAAY,yBAAyB,cAAc,YAAY,OAAO;AAAA,EAChF,CAAC;AAGD,kBAAgB,iBAAiB,WAAW;AAC5C,SAAO,MAAM,6BAA6B,eAAe,UAAU;AACvE;AAOA,SAAS,6BAA6B,oBAAoB,YAAY;AAClE,QAAM,UAAU,CAAC;AACjB,MAAI,YAAY;AACZ,YAAQ,aAAa;AAAA,EACzB;AACA,SAAO,IAAI,QAAQ,CAACA,aAAY;AAE5B,uBAAmB,OAAO,EAAE,KAAK,CAACC,YAAW;AACzC,YAAM,EAAE,WAAW,UAAU,iBAAiB,aAAa,IAAIA;AAC/D,sBAAgB;AAChB,MAAAD,SAAQ,EAAE,WAAW,UAAU,aAAa,CAAC;AAAA,IACjD,CAAC;AAAA,EACL,CAAC;AACL;;;ACjHO,IAAM,0BAA0B;AAAA;AAAA,EAEnC,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,+BAA+B;AAAA,EAC/B,+BAA+B;AAAA;AAAA,EAE/B,oBAAoB;AAAA,EACpB,2BAA2B;AAAA,EAC3B,qBAAqB;AAAA,EACrB,4BAA4B;AAAA,EAC5B,sBAAsB;AAAA,EACtB,2BAA2B;AAAA,EAC3B,uBAAuB;AAAA,EACvB,kCAAkC;AAAA,EAClC,0CAA0C;AAAA,EAC1C,2CAA2C;AAAA;AAAA,EAE3C,iCAAiC;AAAA,EACjC,kCAAkC;AAAA,EAClC,iCAAiC;AAAA,EACjC,kCAAkC;AAAA;AAAA,EAElC,2BAA2B;AAAA;AAAA,EAE3B,0BAA0B;AAAA,EAC1B,0CAA0C;AAAA,EAC1C,8CAA8C;AAAA;AAAA,EAE9C,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,+BAA+B;AAAA,EAC/B,+BAA+B;AAAA,EAC/B,gCAAgC;AAAA,EAChC,gCAAgC;AAAA,EAChC,gCAAgC;AAAA,EAChC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,sCAAsC;AAAA,EACtC,uCAAuC;AAAA,EACvC,uCAAuC;AAAA,EACvC,uCAAuC;AAAA,EACvC,wCAAwC;AAAA,EACxC,wCAAwC;AAAA,EACxC,wCAAwC;AAAA;AAAA,EAExC,0BAA0B;AAAA,EAC1B,iCAAiC;AAAA,EACjC,gCAAgC;AAAA,EAChC,uCAAuC;AAAA;AAAA,EAEvC,+BAA+B;AAAA,EAC/B,qCAAqC;AAAA,EACrC,qCAAqC;AAAA,EACrC,qCAAqC;AACzC;;;ACpEA,IAAM,mBAAmB,CAAC,IAAI,WAAW,MAAM;AAC/C,IAAM,mBAAmB;AAAA;AAAA,EAErB,+BAA+B;AAAA,EAC/B,oCAAoC;AAAA,EACpC,+BAA+B;AAAA,EAC/B,8BAA8B;AAAA,EAC9B,gCAAgC;AAAA,EAChC,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,8BAA8B;AAAA;AAElC;AACA,IAAI,UAAU;AAOP,SAAS,8BAA8B,IAAI;AAC9C,MAAI,CAAC,SAAS;AACV,SAAK,MAAM,gBAAgB,KAAK;AAChC,cAAU,oBAAI,IAAI;AAClB,eAAW,UAAU,kBAAkB;AACnC,iBAAW,aAAa,kBAAkB;AACtC,YAAI,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG;AAChD,gBAAM,mBAAmB,iBAAiB,SAAS;AACnD,kBAAQ,IAAI,gBAAgB;AAAA,QAChC;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACA,SAAO;AACX;AAIA,SAAS,kBAAkB;AACvB,MAAI;AACA,UAAME,UAAS,SAAS,cAAc,QAAQ;AAC9C,WAAOA,QAAO,WAAW,OAAO;AAAA,EACpC,SACO,OAAO;AACV,WAAO;AAAA,EACX;AACJ;;;ICxCaC,IAAM,IAAIC,WAAW,CAAC,CAAA,CAAA;AASgC,IAKvDC;AALuD,IAiBvDC;AAjBuD,IA6BvDC;AA7BuD,IAmCvDC;AAnCuD,IAwCvDC;AAxCuD,IAkDvDC;AAlDuD,IAuDvDC;AAvDuD,IA8DvDC;AAAAA,CAzDZ,SAAYP,IAAAA;AACXA,EAAAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,UAAAA,CAAAA,IAAAA,WACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA;AAAAA,EAJWA,MAAAA,IAAAA,CAAAA,EAAAA,GAYZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,cAAAA,CAAAA,IAAAA;AAAAA,EADQA,MAAAA,IAAAA,CAAAA,EAAAA,GAYZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,cAAAA,CAAAA,IAAAA,eACHA,GAAAA,GAAAA,QAAAA,GAAAA,IAAAA,SACAA,GAAAA,GAAAA,QAAAA,GAAAA,IAAAA;AAAAA,EAHWA,MAAAA,IAAAA,CAAAA,EAAAA,GAMZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,cAAAA,CAAAA,IAAAA,eACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA;AAAAA,EAFQA,OAAAA,KAAAA,CAAAA,EAAAA,GAKZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,cAAAA,CAAAA,IAAAA,eACAA,GAAAA,GAAAA,SAAAA,CAAAA,IAAAA,UACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,QAAAA,CAAAA,IAAAA;AAAAA,EAPQA,MAAAA,IAAAA,CAAAA,EAAAA,GAUZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,iBAAAA,CAAAA,IAAAA,kBACAA,GAAAA,GAAAA,sBAAAA,CAAAA,IAAAA;AAAAA,EAFQA,MAAAA,IAAAA,CAAAA,EAAAA,GAKZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,MAAAA,EAAAA,IAAAA;AAAAA,EAJQA,MAAAA,IAAAA,CAAAA,EAAAA,GAOZ,SAAYC,IAAAA;AACRA,EAAAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA,QACAA,GAAAA,GAAAA,MAAAA,CAAAA,IAAAA,OACAA,GAAAA,GAAAA,OAAAA,CAAAA,IAAAA;AAAAA,EAJQA,MAAAA,IAAAA,CAAAA,EAAAA;;;AM1EZ,IAAM,UAAU;AAAA;AAAA,EAEZ;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AACtE;AAEO,SAAS,MAAM,MAAM;AAExB,QAAM,KAAK,IAAI,WAAW,IAAI;AAC9B,QAAM,SAAS,GAAG,aAAa,QAAQ,UACnC,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,CAAC,MAAM,QAAQ,CAAC;AAAA,EACnB,GAAG,EAAE,MAAM,QAAQ,EAAE;AAAA,EACrB,GAAG,EAAE,MAAM,QAAQ,EAAE;AACzB,SAAO,CAAC;AACZ;;;ACrBA,IAAM,eAAe;AAAA,EACjB,MAAM;AAAA,IACF,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,MAAM,EAAE,aAAa,GAAG,YAAY,KAAK;AAAA,EACzC,KAAK;AAAA,IACD,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,KAAK;AAAA,IACD,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,KAAK,EAAE,aAAa,GAAG,YAAY,KAAK;AAAA,EACxC,KAAK,EAAE,aAAa,GAAG,YAAY,KAAK;AAAA,EACxC,sBAAsB,EAAE,aAAa,GAAG,YAAY,KAAK;AAAA,EACzD,UAAU,EAAE,aAAa,GAAG,YAAY,KAAK;AAAA,EAC7C,gBAAgB;AAAA,IACZ,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,iBAAiB;AAAA,IACb,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,YAAY;AAAA,IACR,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ,wBAAwB;AAAA,EACpC;AAAA,EACA,WAAW,EAAE,aAAa,IAAI,YAAY,KAAK;AAAA,EAC/C,+BAA+B,EAAE,aAAa,IAAI,YAAY,KAAK;AAAA,EACnE,QAAQ,EAAE,aAAa,IAAI,YAAY,MAAM;AAAA,EAC7C,QAAQ,EAAE,aAAa,IAAI,YAAY,MAAM;AAAA,EAC7C,QAAQ,EAAE,aAAa,IAAI,YAAY,MAAM;AAAA,EAC7C,UAAU,EAAE,aAAa,IAAI,YAAY,MAAM;AACnD;AAOA,eAAO,WAAkC,MAAM,SAAS;AACpD,MAAI,QAAQ,MAAM,oBAAoB,QAAQ;AAC1C,QAAI,MAAM,IAAI,GAAG;AACb,YAAM,mBAAmB,MAAM,uBAAuB,OAAO;AAC7D,aAAO,cAAc,iBAAiB,UAAU,MAAM,OAAO;AAAA,IACjE;AACA,UAAM,EAAE,UAAU,IAAI,MAAM,0BAA0B,OAAO;AAC7D,WAAO,eAAe,WAAW,MAAM,OAAO;AAAA,EAClD;AACA,UAAQ,QAAQ,MAAM,QAAQ;AAAA,IAC1B,KAAK;AACD,YAAM,mBAAmB,MAAM,uBAAuB,OAAO;AAC7D,cAAQ,QAAQ,MAAM,iBAAiB;AAAA,QACnC,KAAK;AACD,iBAAO,cAAc,iBAAiB,UAAU,MAAM,OAAO;AAAA,QACjE,KAAK;AAAA,QACL;AACI,iBAAO,eAAe,iBAAiB,WAAW,MAAM,OAAO;AAAA,MACvE;AAAA,IACJ,KAAK;AAAA,IACL;AACI,YAAM,EAAE,UAAU,IAAI,MAAM,0BAA0B,OAAO;AAC7D,aAAO,eAAe,WAAW,MAAM,OAAO;AAAA,EACtD;AACJ;AAQA,SAAS,eAAe,WAAW,MAAM,SAAS;AAC9C,QAAM,YAAY,IAAI,UAAU,IAAI,WAAW,IAAI,CAAC;AACpD,MAAI;AACA,QAAI,CAAC,UAAU,iBAAiB,GAAG;AAC/B,YAAM,IAAI,MAAM,mCAAmC;AAAA,IACvD;AACA,UAAM,aAAa,UAAU,aAAa;AAC1C,UAAM,SAAS,CAAC;AAChB,aAAS,aAAa,GAAG,aAAa,YAAY,cAAc;AAC5D,YAAM,cAAc,UAAU,aAAa,UAAU;AACrD,YAAM,SAAS,CAAC;AAChB,eAAS,aAAa,GAAG,aAAa,aAAa,cAAc;AAC7D,eAAO,KAAK,eAAe,WAAW,YAAY,YAAY,OAAO,CAAC;AAAA,MAC1E;AACA,aAAO,KAAK,MAAM;AAAA,IACtB;AACA,WAAO;AAAA,EACX,UACA;AACI,cAAU,MAAM;AAChB,cAAU,OAAO;AAAA,EACrB;AACJ;AASA,SAAS,eAAe,WAAW,YAAY,YAAY,SAAS;AAChE,QAAM,QAAQ,UAAU,cAAc,YAAY,UAAU;AAC5D,QAAM,SAAS,UAAU,eAAe,YAAY,UAAU;AAE9D,QAAM,WAAW,UAAU;AAAA;AAAA,EAAyC;AAEpE,QAAM,EAAE,YAAY,QAAQ,YAAY,IAAI,gBAAgB,SAAS,QAAQ;AAC7E,QAAM,cAAc,UAAU,8BAA8B,YAAY,YAAY,WAAW;AAC/F,QAAM,cAAc,IAAI,WAAW,WAAW;AAC9C,MAAI,CAAC,UAAU,eAAe,aAAa,YAAY,YAAY,aAAa,GAAG,CAAC,GAAG;AACnF,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACvD;AACA,SAAO;AAAA;AAAA,IAEH;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IACN;AAAA,IACA;AAAA;AAAA;AAAA,IAGA;AAAA,EACJ;AACJ;AAQA,SAAS,cAAc,UAAU,MAAM,SAAS;AAC5C,QAAM,WAAW,IAAI,SAAS,IAAI,WAAW,IAAI,CAAC;AAClD,MAAI;AACA,QAAI,CAAC,SAAS,iBAAiB,GAAG;AAC9B,YAAM,IAAI,MAAM,kCAAkC;AAAA,IACtD;AACA,UAAM,cAAc,SAAS,UAAU;AACvC,UAAM,SAAS,CAAC;AAChB,aAAS,aAAa,GAAG,aAAa,aAAa,cAAc;AAC7D,aAAO,KAAK,mBAAmB,UAAU,YAAY,OAAO,CAAC;AAC7D;AAAA,IACJ;AACA,WAAO,CAAC,MAAM;AAAA,EAClB,UACA;AACI,aAAS,MAAM;AACf,aAAS,OAAO;AAAA,EACpB;AACJ;AAQA,SAAS,mBAAmB,UAAU,YAAY,SAAS;AACvD,QAAM,EAAE,WAAW,QAAQ,MAAM,IAAI,SAAS,kBAAkB,YAAY,GAAG,CAAC;AAEhF,QAAM,EAAE,YAAY,QAAQ,YAAY,IAAI,gBAAgB,SAAS,SAAS;AAC9E,QAAM,cAAc,SAAS,8BAA8B,YAAY,GAAoB,GAAmB,WAAW;AACzH,QAAM,cAAc,IAAI,WAAW,WAAW;AAC9C,MAAI,CAAC,SAAS;AAAA,IAAe;AAAA,IAAa;AAAA,IAAY;AAAA,IAAoB;AAAA,IAAmB;AAAA,IAAa;AAAA,IAAG;AAAA,IAAmB;AAAA;AAAA,EAAiB,GAAG;AAChJ,UAAM,IAAI,MAAM,gCAAgC;AAAA,EACpD;AACA,SAAO;AAAA;AAAA,IAEH;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IACN;AAAA;AAAA,IAEA,WAAW;AAAA,IACX,UAAU;AAAA,IACV;AAAA,EACJ;AACJ;AAOA,SAAS,gBAAgB,SAAS,UAAU;AACxC,MAAI,SAAS,WAAW,QAAQ,SAAS,QAAQ,MAAM;AACvD,MAAI,WAAW,QAAQ;AACnB,aAAS,2BAA2B;AAAA,EACxC;AACA,MAAI,OAAO,WAAW,UAAU;AAC5B,aAAS,WAAW,OAAO,QAAQ,OAAO;AAAA,EAC9C;AACA,WAAS,OAAO,YAAY;AAC5B,SAAO,aAAa,MAAM;AAC9B;AAKO,SAAS,6BAA6B;AACzC,QAAM,mBAAmB,8BAA8B;AACvD,MAAI,iBAAiB,IAAI,MAAM,GAAG;AAC9B,WAAO;AAAA,EACX,WACS,iBAAiB,IAAI,KAAK,GAAG;AAClC,WAAO;AAAA,MACH,OAAO;AAAA,MACP,SAAS;AAAA,IACb;AAAA,EACJ,WACS,iBAAiB,IAAI,OAAO,GAAG;AACpC,WAAO;AAAA,MACH,OAAO;AAAA,MACP,SAAS;AAAA,IACb;AAAA,EACJ,WACS,iBAAiB,IAAI,MAAM,GAAG;AACnC,WAAO;AAAA,EACX,WACS,iBAAiB,IAAI,MAAM,GAAG;AACnC,WAAO;AAAA,EACX;AACA,SAAO;AACX;;;AC1OO,IAAM,oBAAoB;AAAA,EAC7B,UAAU;AAAA,EACV,WAAW;AAAA,EACX,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,QAAQ;AAAA,EACR,SAASC;AAAA,EACT,QAAQ;AAAA,EACR,YAAY,CAAC,SAAS,MAAM;AAAA,EAC5B,WAAW,CAAC,4BAA4B,YAAY;AAAA,EACpD,OAAO,CAAC,IAAI;AAAA,EACZ,QAAQ;AAAA,EACR,SAAS;AAAA,IACL,OAAO;AAAA,MACH,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,iBAAiB;AAAA,MACjB,QAAQ;AAAA,IACZ;AAAA,EACJ;AACJ;AAIO,IAAM,cAAc;AAAA,EACvB,GAAG;AAAA,EACH,OAAO;AACX;;;ACjCA,IAAMC,iBAAgB;AAEtB,IAAM,aAAa;AACnB,IAAM,uBAAuB;AAC7B,IAAM,wBAAwB;AAC9B,IAAM,sBAAsB;AAC5B,IAAM,qBAAqB;AAC3B,IAAM,6BAA6B;AAEnC,IAAM,sCAAsC;AAE5C,IAAM,qCAAqC;AAC3C,SAASC,gBAAe,UAAU,aAAa,GAAG;AAC9C,SAAO,GACT,OAAO,aAAa,SAAS,SAAS,aAAa,CAAC,CAAC,CAAC,GACtD,OAAO,aAAa,SAAS,SAAS,aAAa,CAAC,CAAC,CAAC,GACtD,OAAO,aAAa,SAAS,SAAS,aAAa,CAAC,CAAC,CAAC,GACtD,OAAO,aAAa,SAAS,SAAS,aAAa,CAAC,CAAC,CAAC;AACxD;AAEO,SAAS,MAAM,aAAa,aAAa,GAAG,UAAU,CAAC,GAAG;AAC7D,QAAM,WAAW,IAAI,SAAS,WAAW;AAEzC,QAAM,EAAE,QAAQ,WAAW,IAAI;AAC/B,QAAM,SAAS,SAAS,UAAU,YAAY,KAAK;AACnD,SAAO,WAAW,SAAS,WAAW;AAC1C;AASO,SAAS,aAAa,KAAK,aAAa,aAAa,GAAG,UAAU,CAAC,GAAG;AAEzE,QAAM,WAAW,IAAI,SAAS,WAAW;AAEzC,QAAM,OAAOA,gBAAe,UAAU,aAAa,CAAC;AACpD,QAAM,UAAU,SAAS,UAAU,aAAa,GAAGD,cAAa;AAChE,QAAM,aAAa,SAAS,UAAU,aAAa,GAAGA,cAAa;AACnE,SAAO,OAAO,KAAK;AAAA;AAAA,IAEf,QAAQ;AAAA,MACJ;AAAA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM,CAAC;AAAA,IACP,WAAW,CAAC;AAAA,EAChB,CAAC;AACD,gBAAc;AACd,UAAQ,IAAI,SAAS;AAAA,IACjB,KAAK;AACD,aAAO,WAAW,KAAK,UAAU,UAAU;AAAA,IAC/C,KAAK;AACD,aAAO,WAAW,KAAK,UAAU,YAAa,UAAU,CAAC,CAAE;AAAA,IAC/D;AACI,YAAM,IAAI,MAAM,uBAAuB,IAAI,OAAO,kCAAkC;AAAA,EAC5F;AACJ;AAQA,SAAS,WAAW,KAAK,UAAU,YAAY;AAE3C,SAAO,IAAI,OAAO,aAAa,uBAAuB,qBAAqB;AAG3E,QAAM,gBAAgB,SAAS,UAAU,aAAa,GAAGA,cAAa;AACtE,QAAM,gBAAgB,SAAS,UAAU,aAAa,GAAGA,cAAa;AACtE,gBAAc;AAEd,SAAO,kBAAkB,0BAA0B;AACnD,iBAAe,KAAK,UAAU,YAAY,aAAa;AAEvD,gBAAc;AACd,gBAAc,cAAc,KAAK,UAAU,YAAY,IAAI,OAAO,UAAU;AAC5E,SAAO;AACX;AAQA,SAAS,WAAW,KAAK,UAAU,YAAY,SAAS;AAEpD,SAAO,IAAI,OAAO,aAAa,uBAAuB,qBAAqB;AAC3E,qBAAmB,KAAK,UAAU,YAAY,OAAO;AACrD,SAAO,aAAa,IAAI,OAAO;AACnC;AAEA,SAAS,mBAAmB,KAAK,UAAU,YAAY,SAAS;AAG5D,SAAO,aAAa,KAAK,IAAI,OAAO,YAAY;AAC5C,UAAM,cAAc,SAAS,UAAU,aAAa,GAAGA,cAAa;AACpE,UAAM,cAAc,SAAS,UAAU,aAAa,GAAGA,cAAa;AACpE,kBAAc;AAEd,YAAQ,aAAa;AAAA,MACjB,KAAK;AACD,uBAAe,KAAK,UAAU,YAAY,WAAW;AACrD;AAAA,MACJ,KAAK;AACD,sBAAc,KAAK,UAAU,YAAY,WAAW;AACpD;AAAA,MAEJ,KAAK;AACD,YAAI,CAAC,QAAQ,QAAQ;AACjB,yBAAe,KAAK,UAAU,YAAY,WAAW;AAAA,QACzD;AACA;AAAA,MACJ,KAAK;AACD,YAAI,CAAC,QAAQ,QAAQ;AACjB,wBAAc,KAAK,UAAU,YAAY,WAAW;AAAA,QACxD;AACA;AAAA,MACJ;AAGI;AAAA,IACR;AACA,kBAAc,YAAY,aAAa,CAAC;AAAA,EAC5C;AACA,SAAO;AACX;AAEA,SAAS,eAAe,KAAK,UAAU,YAAY,aAAa;AAE5D,QAAM,YAAY,IAAI,WAAW,SAAS,QAAQ,YAAY,WAAW;AAEzE,QAAM,cAAc,IAAI,YAAY,MAAM;AAC1C,QAAM,WAAW,YAAY,OAAO,SAAS;AAE7C,MAAI,OAAO,KAAK,MAAM,QAAQ;AAC9B,SAAO,YAAY,aAAa,CAAC;AACrC;AAEA,SAAS,cAAc,KAAK,UAAU,YAAY,aAAa;AAE3D,MAAI,OAAO,cAAc;AACzB,MAAI,UAAU,KAAK;AAAA,IACf;AAAA,IACA,YAAY;AAAA,IACZ,aAAa,SAAS;AAAA;AAAA,EAE1B,CAAC;AACD,SAAO,YAAY,aAAa,CAAC;AACrC;;;AC9JO,SAAS,WAAW,KAAK,SAAS;AAErC,QAAM,WAAW,IAAI,WAAW,OAAO,KAAK,IAAI,WAAW,OAAO,KAAK,IAAI,WAAW,QAAQ;AAC9F,MAAI,UAAU;AACV,WAAO;AAAA,EACX;AACA,QAAM,UAAU,QAAQ,WAAW,QAAQ;AAC3C,MAAI,CAAC,SAAS;AACV,UAAM,IAAI,MAAM,sDAAsD,GAAG,EAAE;AAAA,EAC/E;AACA,SAAO,QAAQ,OAAO,GAAG,QAAQ,YAAY,GAAG,IAAI,CAAC,IAAI;AAC7D;;;ACbA;AAAA;AAAA,gBAAAE;AAAA,EAAA,YAAAC;AAAA;;;ACMA,IAAM,YAAY;AAClB,IAAM,YAAY;AAElB,IAAM,WAAW,IAAI,WAAW;AAAA,EAC5B;AAAA,EAAG;AAAA,EAAI;AAAA,EAAK;AAAA,EAAK;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAI;AAAA,EAChG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAK;AAAA,EAAI;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAC7E,CAAC;AAED,IAAM,WAAW,IAAI,WAAW;AAAA,EAC5B;AAAA,EAAI;AAAA,EAAG;AAAA,EAAI;AAAA,EAAK;AAAA,EAAG;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAK;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAG;AAAA,EAAG;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAG;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAC9F;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAI;AAAA,EAAK;AAAA,EAAK;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAC5F;AAAA,EAAK;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAI;AAAA,EAAI;AAAA,EAAI;AAAA,EAAK;AAAA,EAAK;AAAA,EAAI;AACrD,CAAC;AACD,IAAM,UAAU;AAAA;AAAA,EAEZ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA;AAAA,EAEH,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,aAAa;AACjB;AACA,IAAM,WAAW;AAAA;AAAA,EAEb,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA;AAAA,EAEH,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,SAAS;AACb;AAiBA,eAAsB,wBAAwB,QAAQ,OAAO,MAAM,QAAQ,MAAM,SAAS,QAAQ;AAC9F,QAAM,WAAW,MAAM,iBAAiB;AACxC,EAAAC,QAAO,UAAU,SAAS,QAAQ,SAAS,IAAI,CAAC,GAAG,QAAQ,OAAO,MAAM,QAAQ,SAAS,QAAQ,QAAQ,UAAU,MAAM,CAAC,CAAC;AAC/H;AACA,IAAI;AACJ,eAAe,mBAAmB;AAE9B,MAAI,CAAC,aAAa;AACd,kBAAc,eAAe;AAAA,EACjC;AACA,SAAO;AACX;AACA,eAAe,iBAAiB;AAC5B,MAAI,OAAO;AACX,MAAI,YAAY,SAAS,QAAQ,GAAG;AAChC,WAAO;AAEP,YAAQ,IAAI,6DAA6D;AAAA,EAC7E;AACA,QAAM,SAAS,MAAM,YAAY,YAAY,OAAO,IAAI,GAAG,CAAC,CAAC;AAC7D,QAAM,OAAO,SAAS,QAAQ,kBAAkB;AAChD,SAAO,OAAO;AAClB;AACA,SAAS,OAAO,MAAM;AAClB,QAAM,SAAS,IAAI,WAAW,KAAK,MAAM;AACzC,WAASC,KAAI,GAAGA,KAAI,KAAK,QAAQ,EAAEA,IAAG;AAClC,UAAM,KAAK,KAAK,WAAWA,EAAC;AAC5B,WAAOA,EAAC,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK;AAAA,EAC1F;AACA,MAAI,QAAQ;AACZ,WAASA,KAAI,GAAGA,KAAI,KAAK,QAAQ,EAAEA,IAAG;AAClC,WAAO,OAAO,IAAI,OAAOA,EAAC,IAAI,KAAK,SAAS,OAAOA,EAAC,CAAC,KAAK,OAAOA,EAAC,IAAI,MAAM,KAAK,OAAO,EAAEA,EAAC;AAAA,EAC/F;AACA,SAAO,OAAO,OAAO,MAAM,GAAG,KAAK;AACvC;AAEA,SAASD,QAAO,UAAU,KAAK,QAAQ,OAAO,MAAM,QAAQ,QAAQ;AAChE,QAAM,OAAO,SAAS,QAAQ;AAC9B,QAAM,SAAU,QAAQ,IAAK,CAAC;AAC9B,QAAM,KAAK,KAAK,SAAS,IAAI;AAC7B,QAAM,KAAK,KAAK,OAAO,MAAM;AAC7B,QAAM,OAAO,IAAI,WAAW,SAAS,QAAQ,OAAO,MAAM;AAC1D,OAAK,IAAI,QAAQ,EAAE;AACnB,QAAM,MAAM,IAAI,IAAI,OAAO,MAAM,IAAI,OAAO,MAAM;AAClD,MAAI,QAAQ,KAAK,QAAQ;AACrB,WAAO,IAAI,QAAQ,IAAI;AAAA,EAC3B;AACA,SAAO,IAAI,KAAK,SAAS,IAAI,KAAK,QAAQ,IAAI,CAAC;AAC/C,OAAK,KAAK,KAAK,CAAC,CAAC;AACjB,MAAI,QAAQ,GAAG;AACX,UAAM,IAAI,MAAM,0BAA0B,GAAG,EAAE;AAAA,EACnD;AACJ;;;ADpGA,IAAM,0BAA0B;AACzB,IAAME,QAAO;AACpB,eAAsBC,QAAO,UAAU,SAAS;AAC5C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,MAAI,CAAC,SAAS,MAAM,oBAAoB,CAAC,QAAQ,MAAM,aAAa;AAChE;AAAA,EACJ;AACA,QAAM,WAAW,CAAC;AAClB,aAAW,mBAAmB,SAAS,KAAK,eAAe,CAAC,GAAG;AAC3D,aAAS,KAAK,wBAAwB,YAAY,eAAe,CAAC;AAAA,EACtE;AAEA,QAAM,QAAQ,IAAI,QAAQ;AAE1B,aAAW,gBAAgB,uBAAuB;AACtD;AAEA,eAAe,wBAAwB,YAAY,YAAY;AAC3D,QAAM,mBAAmB,WAAW,mBAAmB,YAAY,uBAAuB;AAC1F,MAAI,kBAAkB;AAClB,UAAM,EAAE,aAAa,GAAG,aAAa,GAAG,YAAY,OAAO,MAAM,SAAS,QAAQ,QAAQ,YAAY,IAAI;AAC1G,UAAM,SAAS,WAAW,KAAK,QAAQ,WAAW;AAClD,UAAM,SAAS,IAAI,WAAW,OAAO,aAAa,OAAO,aAAa,YAAY,UAAU;AAC5F,UAAM,SAAS,IAAI,WAAW,WAAW,KAAK,QAAQ,WAAW,MAAM,EAAE,aAAa,WAAW,YAAY,WAAW,UAAU;AAClI,UAAM,wBAAwB,QAAQ,OAAO,YAAY,QAAQ,MAAM,MAAM;AAC7E,eAAW,sBAAsB,YAAY,uBAAuB;AAAA,EACxE;AACJ;;;AEpCA;AAAA;AAAA,cAAAC;AAAA,EAAA;AAAA;AAKA,IAAM,mBAAmB;AAElB,IAAMC,QAAO;AAKb,SAAS,WAAW,UAAU,SAAS;AAC1C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,MAAI,CAAC,uBAAuB,YAAY,GAAG;AACvC,QAAI,WAAW,sBAAsB,EAAE,SAAS,gBAAgB,GAAG;AAC/D,YAAM,IAAI,MAAM,4BAA4B,gBAAgB,2BAA2B;AAAA,IAC3F;AACA;AAAA,EACJ;AACA,QAAM,EAAE,KAAK,IAAI;AACjB,aAAW,WAAW,KAAK,YAAY,CAAC,GAAG;AACvC,UAAM,YAAY,WAAW,mBAAmB,SAAS,gBAAgB;AACzE,QAAI,WAAW;AAEX,cAAQ,SAAS,UAAU;AAAA,IAC/B;AACA,eAAW,sBAAsB,SAAS,gBAAgB;AAAA,EAC9D;AAEA,aAAW,gBAAgB,gBAAgB;AAC/C;;;AC/BA;AAAA;AAAA,cAAAC;AAAA,EAAA,kBAAAC;AAAA;AAIA,IAAM,qBAAqB;AAEpB,IAAMC,QAAO;AAKb,SAASC,YAAW,UAAU,SAAS;AAC1C,QAAM,QAAQ,IAAI,eAAe,QAAQ;AACzC,QAAM,EAAE,KAAK,IAAI;AACjB,aAAW,WAAW,KAAK,YAAY,CAAC,GAAG;AACvC,UAAM,YAAY,MAAM,mBAAmB,SAAS,kBAAkB;AACtE,QAAI,WAAW;AAEX,cAAQ,SAAS,UAAU;AAC3B,YAAM,sBAAsB,SAAS,kBAAkB;AAAA,IAC3D;AAAA,EACJ;AAEA,QAAM,gBAAgB,kBAAkB;AAC5C;;;ACxBA;AAAA;AAAA,gBAAAC;AAAA,EAAA;AAAA,cAAAC;AAAA,EAAA,kBAAAC;AAAA;;;ACGO,IAAMC,WAAU,OAAiC,UAAU;;;ACI3D,IAAM,cAAc;AAAA,EACvB,UAAU;AAAA,EACV,WAAW;AAAA,EACX,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,QAAQ;AAAA;AAAA,EAER,SAASC;AAAA,EACT,QAAQ;AAAA,EACR,YAAY,CAAC,KAAK;AAAA,EAClB,WAAW,CAAC,0BAA0B;AAAA,EACtC,QAAQ;AAAA,EACR,OAAO,CAAC,OAAO;AAAA,EACf,SAAS;AAAA,IACL,OAAO;AAAA,MACH,aAAa,OAAO,gBAAgB,WAAW,SAAS;AAAA;AAAA,MACxD,aAAa;AAAA,MACb,iBAAiB,CAAC;AAAA,MAClB,oBAAoB;AAAA,IACxB;AAAA,EACJ;AACJ;;;AC1BO,SAAS,eAAe,YAAY,YAAY,SAAS;AAC5D,QAAM,WAAW,aAAa,WAAW,QAAQ;AACjD,QAAM,SAAS,CAAC;AAChB,QAAM,4BAA4B,8BAA8B,WAAW,UAAU;AACrF,aAAW,iBAAiB,YAAY;AACpC,UAAM,YAAY,WAAW,aAAa;AAC1C,UAAM,QAAQ,2BAA2B,eAAe,WAAW,0BAA0B,aAAa,CAAC;AAC3G,WAAO,KAAK,KAAK;AAAA,EACrB;AACA,MAAI,SAAS;AACT,UAAM,eAAe,2BAA2B,WAAW,OAAO;AAClE,WAAO,KAAK,YAAY;AAAA,EAC5B;AACA,SAAO,EAAE,QAAQ,SAAS;AAC9B;AACA,SAAS,8BAA8B,YAAY;AAC/C,QAAM,SAAS,CAAC;AAChB,aAAW,OAAO,YAAY;AAC1B,UAAM,iBAAiB,WAAW,GAAG;AACrC,WAAO,eAAe,QAAQ,WAAW,IAAI;AAAA,EACjD;AACA,SAAO;AACX;AACA,SAAS,2BAA2B,eAAe,WAAW,YAAY;AACtE,QAAM,cAAc,aAAa,aAAa,WAAW,QAAQ,IAAI;AACrE,QAAM,QAAQ,gBAAgB,eAAe,WAAW,WAAW;AACnE,SAAO;AACX;AACA,SAAS,aAAa,UAAU;AAC5B,SAAO,QAAQ,QAAQ;AACvB,QAAM,qBAAqB,CAAC;AAC5B,aAAW,OAAO,UAAU;AACxB,uBAAmB,GAAG,GAAG,SAAS,IAAI,KAAK,UAAU,SAAS,GAAG,CAAC;AAAA,EACtE;AACA,SAAO;AACX;;;AC3BA,IAAM,mCAAmC;AAAA,EACrC,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,WAAW;AACf;AACA,IAAM,qCAAqC;AAAA,EACvC,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA;AAAA;AAAA,EAGH,GAAG;AAAA;AAAA;AAGP;AACA,IAAM,kBAAkB;AACxB,IAAqB,cAArB,MAAiC;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA,YAAY,OAAO;AACf,SAAK,QAAQ;AACb,SAAK,UAAU,IAAI,KAAK,MAAM,QAAQ;AACtC,SAAK,kBAAkB,IAAI,KAAK,MAAM,gBAAgB;AAAA,EAC1D;AAAA;AAAA;AAAA;AAAA,EAIA,UAAU;AACN,SAAK,MAAM,QAAQ,KAAK,OAAO;AAC/B,SAAK,MAAM,QAAQ,KAAK,eAAe;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,UAAU,aAAa,UAAU,CAAC,GAAG;AACjC,UAAM,SAAS,IAAI,KAAK,MAAM,cAAc;AAC5C,WAAO,KAAK,IAAI,UAAU,WAAW,GAAG,YAAY,UAAU;AAC9D,SAAK,4BAA4B,OAAO;AACxC,UAAM,gBAAgB,KAAK,QAAQ,uBAAuB,MAAM;AAChE,UAAM,gBAAgB,kBAAkB,KAAK,MAAM,kBAC7C,IAAI,KAAK,MAAM,KAAK,IACpB,IAAI,KAAK,MAAM,WAAW;AAChC,QAAI;AACA,UAAI;AACJ,cAAQ,eAAe;AAAA,QACnB,KAAK,KAAK,MAAM;AACZ,wBAAc,KAAK,QAAQ,mBAAmB,QAAQ,aAAa;AACnE;AAAA,QACJ,KAAK,KAAK,MAAM;AACZ,wBAAc,KAAK,QAAQ,yBAAyB,QAAQ,aAAa;AACzE;AAAA,QACJ;AACI,gBAAM,IAAI,MAAM,+BAA+B;AAAA,MACvD;AACA,UAAI,CAAC,YAAY,GAAG,KAAK,CAAC,cAAc,KAAK;AACzC,cAAM,UAAU,+BAA+B,YAAY,UAAU,CAAC;AAEtE,cAAM,IAAI,MAAM,OAAO;AAAA,MAC3B;AACA,YAAM,aAAa,KAAK,oBAAoB,eAAe,eAAe,OAAO;AACjF,YAAM,WAAW,KAAK,aAAa,eAAe,YAAY,OAAO;AACrE,YAAM,cAAc,mBAAmB,SAAS,UAAU;AAC1D,YAAM,SAAS,eAAe,SAAS,YAAY,YAAY,SAAS,OAAO;AAC/E,YAAM,OAAO;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,QACA,QAAQ;AAAA,UACJ,aAAa,cAAc,WAAW;AAAA,UACtC;AAAA,QACJ;AAAA,QACA,GAAG;AAAA,QACH;AAAA,MACJ;AACA,aAAO;AAAA,IACX,UACA;AACI,WAAK,MAAM,QAAQ,MAAM;AACzB,UAAI,eAAe;AACf,aAAK,MAAM,QAAQ,aAAa;AAAA,MACpC;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,oBAAoB,eAAe,eAAe,SAAS;AACvD,UAAM,WAAW,KAAK,qBAAqB,aAAa;AACxD,UAAM,aAAa,KAAK,oBAAoB,eAAe,OAAO;AAClE,WAAO;AAAA,MACH;AAAA,MACA,gBAAgB,cAAc,eAAe;AAAA,MAC7C,YAAY,cAAc,WAAW;AAAA,MACrC,WAAW,yBAAyB,KAAK,MAAM,OAAO,cAAc,UAAU,IAAI;AAAA,MAClF;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,oBAAoB,eAAe,SAAS;AACxC,UAAM,kBAAkB,CAAC;AACzB,aAAS,cAAc,GAAG,cAAc,cAAc,eAAe,GAAG,eAAe;AAGnF,YAAM,iBAAiB,KAAK,QAAQ,aAAa,eAAe,WAAW;AAC3E,YAAM,WAAW,KAAK,sBAAsB,eAAe,WAAW;AACtE,sBAAgB,eAAe,UAAU,CAAC,IAAI;AAAA,QAC1C,WAAW,eAAe,UAAU;AAAA,QACpC,gBAAgB,eAAe,eAAe;AAAA,QAC9C,WAAW,eAAe,UAAU;AAAA,QACpC,gBAAgB,eAAe,eAAe;AAAA,QAC9C,aAAa,eAAe,YAAY;AAAA,QACxC,aAAa,eAAe,YAAY;AAAA,QACxC,YAAY,eAAe,WAAW;AAAA,QACtC,iBAAiB;AAAA,QACjB;AAAA,MACJ;AAEA,YAAM,eAAe,KAAK,0BAA0B,gBAAgB,OAAO;AAC3E,UAAI,cAAc;AACd,wBAAgB,eAAe,UAAU,CAAC,EAAE,yBAAyB;AAAA,MACzE;AACA,YAAM,aAAa,KAAK,wBAAwB,gBAAgB,OAAO;AACvE,UAAI,YAAY;AACZ,wBAAgB,eAAe,UAAU,CAAC,EAAE,uBAAuB;AAAA,MACvE;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,aAAa,eAAe,YAAY,SAAS;AAC7C,UAAM,aAAa,KAAK,mBAAmB,YAAY,eAAe,OAAO;AAC7E,UAAM,oBAAoB,WAAW;AACrC,QAAI,CAAC,mBAAmB;AACpB,YAAM,IAAI,MAAM,qCAAqC;AAAA,IACzD;AAEA,QAAI,yBAAyB,KAAK,MAAM,MAAM;AAC1C,cAAQ,QAAQ,UAAU;AAAA,QACtB,KAAK;AACD,iBAAO;AAAA,YACH,UAAU;AAAA,YACV,MAAM;AAAA;AAAA,YACN;AAAA,YACA,SAAS;AAAA,cACL,OAAO,KAAK,yBAAyB,aAAa;AAAA,cAClD,MAAM;AAAA,YACV;AAAA,UACJ;AAAA,QACJ,KAAK;AAAA,QACL;AACI,iBAAO;AAAA,YACH,UAAU;AAAA,YACV,MAAM;AAAA;AAAA,YACN;AAAA,YACA,SAAS;AAAA,cACL,OAAO,KAAK,wBAAwB,aAAa;AAAA,cACjD,MAAM;AAAA,YACV;AAAA,UACJ;AAAA,MACR;AAAA,IACJ;AAEA,WAAO;AAAA,MACH,UAAU;AAAA,MACV,MAAM;AAAA;AAAA,MACN;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,mBAAmB,YAAY,eAAe,SAAS;AACnD,UAAM,aAAa,CAAC;AACpB,eAAW,mBAAmB,OAAO,OAAO,WAAW,UAAU,GAAG;AAChE,YAAM,gBAAgB,KAAK,qBAAqB,iBAAiB,OAAO;AACxE,sBAAgB,OAAO;AACvB,YAAM,SAAS,KAAK,oBAAoB,eAAe,eAAe;AACtE,UAAI,QAAQ;AACR,cAAM,EAAE,OAAO,KAAK,IAAI;AACxB,mBAAW,aAAa,IAAI;AAAA,UACxB;AAAA,UACA;AAAA,UACA,YAAY,gBAAgB;AAAA,UAC5B,YAAY,gBAAgB;AAAA,UAC5B,YAAY,gBAAgB;AAAA,QAChC;AAAA,MACJ;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,wBAAwB,eAAe;AAEnC,UAAMC,YAAW,cAAc,UAAU;AACzC,UAAM,aAAaA,YAAW;AAC9B,UAAM,aAAa,aAAa;AAChC,UAAM,MAAM,KAAK,MAAM,QAAQ,UAAU;AACzC,QAAI;AACA,WAAK,QAAQ,wBAAwB,eAAe,YAAY,GAAG;AACnE,aAAO,IAAI,YAAY,KAAK,MAAM,QAAQ,QAAQ,KAAK,UAAU,EAAE,MAAM;AAAA,IAC7E,UACA;AACI,WAAK,MAAM,MAAM,GAAG;AAAA,IACxB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,yBAAyB,eAAe;AACpC,UAAM,aAAa,IAAI,KAAK,MAAM,gBAAgB;AAClD,QAAI;AACwB,WAAK,QAAQ,0BAA0B,eAAe,UAAU;AACxF,aAAO,eAAe,UAAU;AAAA,IACpC,UACA;AACI,WAAK,MAAM,QAAQ,UAAU;AAAA,IACjC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,oBAAoB,eAAe,WAAW;AAC1C,UAAM,iBAAiB,mCAAmC,UAAU,SAAS;AAC7E,QAAI,CAAC,gBAAgB;AAEjB,cAAQ,KAAK,qCAAqC,UAAU,SAAS,EAAE;AACvE,aAAO;AAAA,IACX;AACA,UAAM,gBAAgB,UAAU;AAChC,UAAM,YAAY,cAAc,WAAW;AAC3C,UAAM,YAAY,YAAY;AAC9B,UAAM,aAAa,YAAY,eAAe;AAC9C,UAAM,WAAW,iBAAiB,KAAK,OAAO,cAAc;AAC5D,QAAI;AACJ,UAAM,MAAM,KAAK,MAAM,QAAQ,UAAU;AACzC,QAAI;AACA,YAAM,iBAAiB,KAAK,QAAQ,aAAa,eAAe,UAAU,eAAe;AACzF,WAAK,QAAQ,kCAAkC,eAAe,gBAAgB,UAAU,YAAY,GAAG;AACvG,cAAQ,IAAI,eAAe,KAAK,MAAM,QAAQ,QAAQ,KAAK,SAAS,EAAE,MAAM;AAAA,IAChF,UACA;AACI,WAAK,MAAM,MAAM,GAAG;AAAA,IACxB;AACA,WAAO,EAAE,OAAO,MAAM,cAAc;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAyBA,qBAAqB,WAAW,SAAS;AAErC,UAAM,WAAW,UAAU;AAC3B,eAAW,CAAC,eAAe,iBAAiB,KAAK,OAAO,QAAQ,QAAQ,mBAAmB,CAAC,CAAC,GAAG;AAC5F,UAAI,sBAAsB,UAAU;AAChC,eAAO;AAAA,MACX;AAAA,IACJ;AAEA,UAAM,oBAAoB,UAAU;AACpC,eAAW,0BAA0B,kCAAkC;AACnE,YAAM,gBAAgB,KAAK,MAAM,sBAAsB;AACvD,UAAI,kBAAkB,mBAAmB;AAGrC,eAAO,iCAAiC,sBAAsB;AAAA,MAClE;AAAA,IACJ;AAGA,UAAM,YAAY,QAAQ,sBAAsB;AAChD,QAAI,UAAU,SAAS,SAAS,GAAG;AAC/B,aAAO,UAAU,SAAS,SAAS,EAAE;AAAA,IACzC;AAEA,WAAO,oBAAoB,QAAQ;AAAA,EACvC;AAAA;AAAA;AAAA,EAGA,qBAAqB,eAAe;AAChC,UAAM,gBAAgB,KAAK,QAAQ,YAAY,aAAa;AAC5D,WAAO,KAAK,kBAAkB,aAAa;AAAA,EAC/C;AAAA;AAAA,EAEA,sBAAsB,eAAe,aAAa;AAC9C,UAAM,gBAAgB,KAAK,QAAQ,qBAAqB,eAAe,WAAW;AAClF,WAAO,KAAK,kBAAkB,aAAa;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,kBAAkB,eAAe;AAE7B,QAAI,CAAC,iBAAiB,CAAC,cAAc,KAAK;AACtC,aAAO,CAAC;AAAA,IACZ;AACA,UAAM,SAAS,CAAC;AAChB,UAAM,aAAa,KAAK,gBAAgB,WAAW,aAAa;AAChE,aAAS,aAAa,GAAG,aAAa,YAAY,cAAc;AAC5D,YAAM,YAAY,KAAK,gBAAgB,aAAa,eAAe,UAAU;AAC7E,aAAO,SAAS,IAAI,KAAK,uBAAuB,eAAe,SAAS;AAAA,IAC5E;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,uBAAuB,eAAe,WAAW;AAC7C,UAAM,aAAa,IAAI,KAAK,MAAM,gBAAgB;AAClD,QAAI;AAEA,WAAK,gBAAgB,iBAAiB,eAAe,WAAW,UAAU;AAC1E,YAAM,WAAW,cAAc,UAAU;AACzC,aAAO;AAAA,QACH,KAAK,KAAK,gBAAgB,YAAY,eAAe,SAAS;AAAA,QAC9D,QAAQ,KAAK,gBAAgB,eAAe,eAAe,SAAS;AAAA,QACpE,QAAQ,KAAK,gBAAgB,eAAe,eAAe,SAAS;AAAA,QACpE;AAAA,MACJ;AAAA,IACJ,UACA;AACI,WAAK,MAAM,QAAQ,UAAU;AAAA,IACjC;AAAA,EACJ;AAAA;AAAA;AAAA,EAGA,4BAA4B,SAAS;AACjC,UAAM,EAAE,sBAAsB,CAAC,GAAG,uBAAuB,CAAC,EAAE,IAAI;AAChE,UAAM,iBAAiB,CAAC,GAAG,qBAAqB,GAAG,oBAAoB;AACvE,eAAW,sBAAsB,gBAAgB;AAC7C,WAAK,QAAQ,uBAAuB,KAAK,MAAM,kBAAkB,CAAC;AAAA,IACtE;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,0BAA0B,gBAAgB,SAAS;AAC/C,UAAM,EAAE,sBAAsB,CAAC,EAAE,IAAI;AACrC,UAAM,iBAAiB,eAAe,eAAe;AACrD,UAAM,OAAO,oBAAoB,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,EAAE,SAAS,cAAc;AAC1F,QAAI,MAAM;AACN,YAAM,YAAY,IAAI,KAAK,MAAM,+BAA+B;AAChE,UAAI;AACA,YAAI,UAAU,kBAAkB,cAAc,GAAG;AAC7C,iBAAO;AAAA,YACH,mBAAmB,UAAU,kBAAkB;AAAA,YAC/C,OAAO,UAAU,MAAM;AAAA,YACvB,YAAY,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,CAACC,OAAM,UAAU,UAAUA,EAAC,CAAC;AAAA,UAC7E;AAAA,QACJ;AAAA,MACJ,UACA;AACI,aAAK,MAAM,QAAQ,SAAS;AAAA,MAChC;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,wBAAwB,gBAAgB,SAAS;AAC7C,UAAM,EAAE,uBAAuB,CAAC,EAAE,IAAI;AACtC,UAAM,iBAAiB,eAAe,eAAe;AACrD,UAAM,aAAa,qBACd,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,EAChC,SAAS,cAAc;AAC5B,QAAI,YAAY;AACZ,YAAM,YAAY,IAAI,KAAK,MAAM,+BAA+B;AAChE,UAAI;AACA,YAAI,UAAU,kBAAkB,cAAc,GAAG;AAC7C,iBAAO;AAAA,YACH,mBAAmB,UAAU,kBAAkB;AAAA,UACnD;AAAA,QACJ;AAAA,MACJ,UACA;AACI,aAAK,MAAM,QAAQ,SAAS;AAAA,MAChC;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AACJ;AAMA,SAAS,iBAAiB,OAAO,eAAe;AAC5C,UAAQ,eAAe;AAAA,IACnB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB,KAAK;AACD,aAAO,MAAM;AAAA,IACjB;AACI,aAAO,MAAM;AAAA,EACrB;AACJ;AAIA,SAAS,cAAc,YAAY;AAC/B,QAAM,YAAY,WAAW,KAAK;AAClC,QAAM,WAAW,IAAI,WAAW,SAAS;AACzC,WAASA,KAAI,GAAGA,KAAI,WAAWA,MAAK;AAChC,aAASA,EAAC,IAAI,WAAW,SAASA,EAAC;AAAA,EACvC;AACA,SAAO;AACX;AAIA,SAAS,eAAe,YAAY;AAChC,QAAM,YAAY,WAAW,KAAK;AAClC,QAAM,WAAW,IAAI,WAAW,SAAS;AACzC,WAASA,KAAI,GAAGA,KAAI,WAAWA,MAAK;AAChC,aAASA,EAAC,IAAI,WAAW,SAASA,EAAC;AAAA,EACvC;AACA,SAAO;AACX;;;ACneA,IAAM,wBAAwB;AAC9B,IAAM,wBAAwB;AAC9B,IAAM,qBAAqB,oDAAoD,qBAAqB;AAC7F,IAAM,2BAA2B;AAAA;AAAA,EAEpC,SAAS;AAAA;AAAA,EAET,cAAc;AAAA;AAAA,EAEd,kBAAkB;AAAA;AAAA,EAElB,SAAS;AACb;AACO,IAAM,8BAA8B;AAAA,EACvC,CAAC,yBAAyB,OAAO,GAAG,GAAG,kBAAkB,IAAI,yBAAyB,OAAO;AAAA,EAC7F,CAAC,yBAAyB,YAAY,GAAG,GAAG,kBAAkB,IAAI,yBAAyB,YAAY;AAAA,EACvG,CAAC,yBAAyB,gBAAgB,GAAG,GAAG,kBAAkB,IAAI,yBAAyB,gBAAgB;AAAA,EAC/G,CAAC,yBAAyB,OAAO,GAAG,kDAAkD,qBAAqB,eAAe,yBAAyB,OAAO;AAC9J;AACA,IAAI;AAEJ,eAAsB,uBAAuB,SAAS;AAClD,QAAM,UAAU,QAAQ,WAAW,CAAC;AAEpC,MAAI,QAAQ,SAAS;AACjB,2BAAuB,QAAQ,QAAQ,oBAAoB,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU;AAC3E,aAAO,EAAE,MAAM;AAAA,IACnB,CAAC;AAAA,EACL,OACK;AAED,2BAAuB,iBAAiB,OAAO;AAAA,EACnD;AACA,SAAO,MAAM;AACjB;AAgBA,eAAe,iBAAiB,SAAS;AACrC,MAAI;AACJ,MAAI;AACJ,UAAQ,QAAQ,SAAS,QAAQ,MAAM,aAAa;AAAA,IAChD,KAAK;AACD,2BAAqB,MAAM,YAAY,4BAA4B,yBAAyB,gBAAgB,GAAG,SAAS,SAAS,yBAAyB,gBAAgB;AAC1K;AAAA,IACJ,KAAK;AAAA,IACL;AACI,OAAC,oBAAoB,UAAU,IAAI,MAAM,QAAQ,IAAI;AAAA,QACjD,MAAM,YAAY,4BAA4B,yBAAyB,OAAO,GAAG,SAAS,SAAS,yBAAyB,OAAO;AAAA,QACnI,MAAM,YAAY,4BAA4B,yBAAyB,YAAY,GAAG,SAAS,SAAS,yBAAyB,YAAY;AAAA,MACjJ,CAAC;AAAA,EACT;AAGA,uBAAqB,sBAAsB,WAAW;AACtD,SAAO,MAAM,uBAAuB,oBAAoB,UAAU;AACtE;AACA,SAAS,uBAAuB,oBAAoB,YAAY;AAC5D,QAAM,UAAU,CAAC;AACjB,MAAI,YAAY;AACZ,YAAQ,aAAa;AAAA,EACzB;AACA,SAAO,IAAI,QAAQ,CAACC,aAAY;AAC5B,uBAAmB;AAAA,MACf,GAAG;AAAA,MACH,gBAAgB,CAAC,UAAUA,SAAQ,EAAE,MAAM,CAAC;AAAA;AAAA,IAChD,CAAC;AAAA,EACL,CAAC;AACL;;;AC1DO,IAAMC,eAAc;AAAA,EACvB,GAAG;AAAA,EACH,OAAAC;AACJ;AACA,eAAeA,OAAM,aAAa,SAAS;AACvC,QAAM,EAAE,MAAM,IAAI,MAAM,uBAAuB,OAAO;AACtD,QAAM,cAAc,IAAI,YAAY,KAAK;AACzC,MAAI;AACA,WAAO,YAAY,UAAU,aAAa,SAAS,KAAK;AAAA,EAC5D,UACA;AACI,gBAAY,QAAQ;AAAA,EACxB;AACJ;;;AClCO,SAAS,iBAAiB,YAAY;AACzC,QAAM,YAAY,CAAC;AACnB,aAAWC,UAAQ,YAAY;AAC3B,UAAM,YAAY,WAAWA,MAAI;AACjC,QAAIA,WAAS,WAAW;AACpB,YAAM,eAAe,gBAAgB,SAAS;AAC9C,gBAAUA,MAAI,IAAI;AAAA,IACtB;AAAA,EACJ;AACA,SAAO;AACX;AAIO,SAAS,gBAAgB,WAAW;AACvC,QAAM,EAAE,QAAQ,MAAM,MAAM,IAAI,gBAAgB,SAAS;AACzD,QAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMjB,OAAO;AAAA,IACP;AAAA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA,MAAM,wBAAwB,IAAI;AAAA,IAClC,eAAe,0BAA0B,MAAM;AAAA,EACnD;AACA,SAAO;AACX;AAIA,SAAS,gBAAgB,WAAW;AAChC,MAAI,SAAS;AACb,MAAI,OAAO;AACX,MAAI,QAAQ;AACZ,MAAI,aAAa,UAAU,OAAO;AAC9B,aAAS,UAAU;AACnB,WAAO,UAAU,QAAQ;AAAA,EAC7B;AACA,MAAI,QAAQ;AACR,QAAI,CAAC,YAAY,OAAO,MAAM,GAAG;AAC7B,eAAS,aAAa,QAAQ,YAAY;AAAA,IAC9C;AACA,YAAQ,OAAO,SAAS;AAAA,EAC5B;AACA,SAAO,EAAE,QAAQ,MAAM,MAAM;AACjC;AAEA,SAAS,aAAa,OAAO,WAAW,qBAAqB,OAAO;AAChE,MAAI,CAAC,OAAO;AACR,WAAO;AAAA,EACX;AACA,MAAI,MAAM,QAAQ,KAAK,GAAG;AACtB,WAAO,IAAI,UAAU,KAAK;AAAA,EAC9B;AACA,MAAI,sBAAsB,EAAE,iBAAiB,YAAY;AACrD,WAAO,IAAI,UAAU,KAAK;AAAA,EAC9B;AACA,SAAO;AACX;;;AP5DA,IAAM,6BAA6B;AAE5B,IAAMC,QAAO;AACb,SAASC,YAAW,UAAU,SAAS,SAAS;AACnD,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,aAAW,aAAa,0BAA0B,UAAU,GAAG;AAC3D,QAAI,WAAW,mBAAmB,WAAW,0BAA0B,GAAG;AAAA,IAE1E;AAAA,EACJ;AACJ;AACA,eAAsBC,QAAO,UAAU,SAAS,SAAS;AACrD,MAAI,CAAC,SAAS,MAAM,kBAAkB;AAClC;AAAA,EACJ;AACA,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,QAAM,WAAW,CAAC;AAClB,aAAW,aAAa,0BAA0B,UAAU,GAAG;AAC3D,QAAI,WAAW,mBAAmB,WAAW,0BAA0B,GAAG;AACtE,eAAS,KAAK,oBAAoB,YAAY,WAAW,SAAS,OAAO,CAAC;AAAA,IAC9E;AAAA,EACJ;AAEA,QAAM,QAAQ,IAAI,QAAQ;AAE1B,aAAW,gBAAgB,0BAA0B;AACzD;AACO,SAAS,OAAO,UAAU,UAAU,CAAC,GAAG;AAC3C,QAAM,aAAa,IAAI,eAAe,QAAQ;AAC9C,aAAW,QAAQ,WAAW,KAAK,UAAU,CAAC,GAAG;AAG7C,iBAAa,MAAM,OAAO;AAE1B,eAAW,qBAAqB,0BAA0B;AAAA,EAC9D;AACJ;AAMA,eAAe,oBAAoB,YAAY,WAAW,SAAS,SAAS;AACxE,QAAM,iBAAiB,WAAW,mBAAmB,WAAW,0BAA0B;AAC1F,MAAI,CAAC,gBAAgB;AACjB;AAAA,EACJ;AACA,QAAM,SAAS,WAAW,2BAA2B,eAAe,UAAU;AAG9E,QAAM,aAAa,iBAAiB,OAAO,QAAQ,OAAO,UAAU;AACpE,QAAM,eAAe,EAAE,GAAG,QAAQ;AAElC,SAAO,aAAa,UAAU;AAC9B,QAAM,cAAc,MAAM,iBAAiB,YAAYC,cAAa,cAAc,OAAO;AACzF,QAAM,oBAAoB,iBAAiB,YAAY,UAAU;AAEjE,aAAW,CAAC,eAAe,gBAAgB,KAAK,OAAO,QAAQ,iBAAiB,GAAG;AAC/E,QAAI,iBAAiB,UAAU,YAAY;AACvC,YAAM,gBAAgB,UAAU,WAAW,aAAa;AACxD,YAAM,WAAW,WAAW,YAAY,aAAa;AACrD,UAAI,UAAU,OAAO,UAAU,KAAK;AAChC,yBAAiB,MAAM,SAAS;AAChC,yBAAiB,MAAM,SAAS;AAAA,MACpC;AAAA,IACJ;AAAA,EACJ;AAEA,YAAU,aAAa;AACvB,MAAI,YAAY,SAAS;AAErB,cAAU,UAAU,gBAAgB,YAAY,OAAO;AAAA,EAC3D;AAEA,aAAW,sBAAsB,WAAW,0BAA0B;AACtE,iBAAe,SAAS;AAC5B;AAIA,SAAS,aAAa,YAAY,SAAS,OAAO,GAAG,SAAS,SAAS;AACnE,MAAI,CAAC,QAAQ,aAAa;AACtB,UAAM,IAAI,MAAM,uCAAuC;AAAA,EAC3D;AAEA,QAAM,iBAAiB,QAAQ,YAAY,WAAW,EAAE,WAAW,CAAC;AAOpE,QAAM,cAAc,SAAS,YAAY,EAAE,WAAW,CAAC;AACvD,QAAM,gBAAgB,QAAQ,mBAAmB,YAAY,UAAU;AACvE,QAAM,kBAAkB,QAAQ,cAAc,cAAc;AAC5D,QAAM,WAAW;AAAA,IACb,YAAY;AAAA,MACR;AAAA,QACI,YAAY;AAAA;AAAA,QACZ;AAAA;AAAA,QACA,YAAY;AAAA,UACR,CAAC,0BAA0B,GAAG;AAAA,YAC1B,YAAY;AAAA,YACZ,YAAY;AAAA;AAAA,UAChB;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACA,SAAO;AACX;AAEA,SAAS,eAAe,WAAW;AAC/B,MAAI,CAAC,UAAU,cAAc,OAAO,KAAK,UAAU,UAAU,EAAE,SAAS,GAAG;AACvE,UAAM,IAAI,MAAM,8DAA8D;AAAA,EAClF;AACJ;AACA,UAAU,0BAA0B,YAAY;AAC5C,aAAW,QAAQ,WAAW,KAAK,UAAU,CAAC,GAAG;AAC7C,eAAW,aAAa,KAAK,YAAY;AACrC,YAAM;AAAA,IACV;AAAA,EACJ;AACJ;;;AQlIA;AAAA;AAAA,gBAAAC;AAAA,EAAA,YAAAC;AAAA;;;ACCA,IAAM,qBAAsB,IAAI,KAAK,KAAM;AAC3C,IAAM,qBAAsB,IAAI,MAAO,KAAK;AAC5C,IAAM,iBAAiB;AAAA,EACnB,SAAS;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,eAAe;AAAA,EACf,sBAAsB;AAC1B;AAGA,WAAW,SAAS,WAAW,UAAU,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE;AAClE,IAAM,SAAS,WAAW,OAAO;AAYjC,SAAS,YAAY,OAAO,EAAE,YAAY,OAAO,UAAU,IAAI,CAAC,GAAG;AACtE,UAAQ,MAAM,KAAK;AAEnB,SAAO,GAAG,WAAW,MAAM,YAAY,SAAS,CAAC,CAAC;AACtD;AAOO,SAASC,SAAQ,OAAO;AAC3B,SAAO,MAAM,QAAQ,KAAK,KAAM,YAAY,OAAO,KAAK,KAAK,EAAE,iBAAiB;AACpF;AA2EO,SAAS,OAAOC,IAAGC,IAAG,SAAS;AAClC,QAAM,aAAa,OAAO;AAC1B,MAAI,SAAS;AACT,WAAO,UAAU;AAAA,EACrB;AACA,MAAI;AACA,QAAID,OAAMC,IAAG;AACT,aAAO;AAAA,IACX;AACA,QAAIC,SAAQF,EAAC,KAAKE,SAAQD,EAAC,GAAG;AAC1B,UAAID,GAAE,WAAWC,GAAE,QAAQ;AACvB,eAAO;AAAA,MACX;AACA,eAASE,KAAI,GAAGA,KAAIH,GAAE,QAAQ,EAAEG,IAAG;AAE/B,YAAI,CAAC,OAAOH,GAAEG,EAAC,GAAGF,GAAEE,EAAC,CAAC,GAAG;AACrB,iBAAO;AAAA,QACX;AAAA,MACJ;AACA,aAAO;AAAA,IACX;AACA,QAAIH,MAAKA,GAAE,QAAQ;AACf,aAAOA,GAAE,OAAOC,EAAC;AAAA,IACrB;AACA,QAAIA,MAAKA,GAAE,QAAQ;AACf,aAAOA,GAAE,OAAOD,EAAC;AAAA,IACrB;AACA,QAAI,OAAOA,OAAM,YAAY,OAAOC,OAAM,UAAU;AAChD,aAAO,KAAK,IAAID,KAAIC,EAAC,KAAK,OAAO,UAAU,KAAK,IAAI,GAAG,KAAK,IAAID,EAAC,GAAG,KAAK,IAAIC,EAAC,CAAC;AAAA,IACnF;AACA,WAAO;AAAA,EACX,UACA;AACI,WAAO,UAAU;AAAA,EACrB;AACJ;AAwCA,SAAS,MAAM,OAAO;AAClB,SAAO,KAAK,MAAM,QAAQ,OAAO,OAAO,IAAI,OAAO;AACvD;;;AC9LO,IAAM,YAAN,cAAwB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjC,QAAQ;AAEJ,WAAO,IAAI,KAAK,YAAY,EAAE,KAAK,IAAI;AAAA,EAC3C;AAAA,EACA,UAAU,OAAO,SAAS,GAAG;AACzB,aAASG,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,MAAMA,KAAI,MAAM;AAAA,IAC9B;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,QAAQ,cAAc,CAAC,GAAG,SAAS,GAAG;AAClC,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,kBAAY,SAASA,EAAC,IAAI,KAAKA,EAAC;AAAA,IACpC;AACA,WAAO;AAAA,EACX;AAAA,EACA,SAAS,cAAc;AACnB,WAAO;AAAA,EACX;AAAA,EACA,KAAK,eAAe;AAChB,WAAO,MAAM,QAAQ,aAAa,IAC5B,KAAK,KAAK,aAAa;AAAA;AAAA,MAErB,KAAK,WAAW,aAAa;AAAA;AAAA,EACzC;AAAA,EACA,GAAG,eAAe;AAEd,QAAI,kBAAkB,MAAM;AACxB,aAAO;AAAA,IACX;AAEA,WAAOC,SAAQ,aAAa,IAAI,KAAK,QAAQ,aAAa,IAAI,KAAK,SAAS,aAAa;AAAA,EAC7F;AAAA,EACA,SAAS,QAAQ;AACb,WAAO,SAAS,KAAK,GAAG,MAAM,IAAI;AAAA,EACtC;AAAA;AAAA,EAEA,iBAAiB;AACb,WAAO,IAAI,aAAa,IAAI;AAAA,EAChC;AAAA,EACA,WAAW;AACP,WAAO,KAAK,aAAa,MAAM;AAAA,EACnC;AAAA;AAAA,EAEA,aAAa,MAAM;AACf,QAAI,SAAS;AACb,aAASD,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,iBAAWA,KAAI,IAAI,OAAO,MAAM,YAAY,KAAKA,EAAC,GAAG,IAAI;AAAA,IAC7D;AACA,WAAO,GAAG,KAAK,aAAa,KAAK,YAAY,OAAO,EAAE,IAAI,MAAM;AAAA,EACpE;AAAA,EACA,OAAO,OAAO;AACV,QAAI,CAAC,SAAS,KAAK,WAAW,MAAM,QAAQ;AACxC,aAAO;AAAA,IACX;AACA,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,UAAI,CAAC,OAAO,KAAKA,EAAC,GAAG,MAAMA,EAAC,CAAC,GAAG;AAC5B,eAAO;AAAA,MACX;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,YAAY,OAAO;AACf,QAAI,CAAC,SAAS,KAAK,WAAW,MAAM,QAAQ;AACxC,aAAO;AAAA,IACX;AACA,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,UAAI,KAAKA,EAAC,MAAM,MAAMA,EAAC,GAAG;AACtB,eAAO;AAAA,MACX;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA,EAGA,SAAS;AACL,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,CAAC,KAAKA,EAAC;AAAA,IACrB;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,KAAKE,IAAGC,IAAGC,IAAG;AACV,QAAIA,OAAM,QAAW;AACjB,aAAO,KAAK,KAAK,MAAMF,IAAGC,EAAC;AAAA,IAC/B;AACA,aAASH,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,YAAM,KAAKE,GAAEF,EAAC;AACd,YAAM,WAAW,OAAOG,OAAM,WAAWA,KAAIA,GAAEH,EAAC;AAChD,WAAKA,EAAC,IAAI,KAAKI,MAAK,WAAW;AAAA,IACnC;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,IAAI,QAAQ;AACR,aAASJ,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,KAAK,IAAI,OAAOA,EAAC,GAAG,KAAKA,EAAC,CAAC;AAAA,IACzC;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,IAAI,QAAQ;AACR,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,KAAK,IAAI,OAAOA,EAAC,GAAG,KAAKA,EAAC,CAAC;AAAA,IACzC;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,MAAM,WAAW,WAAW;AACxB,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,KAAK,IAAI,KAAK,IAAI,KAAKA,EAAC,GAAG,UAAUA,EAAC,CAAC,GAAG,UAAUA,EAAC,CAAC;AAAA,IACpE;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,OAAO,SAAS;AACZ,eAAW,UAAU,SAAS;AAC1B,eAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAK,OAAOA,EAAC;AAAA,MACvB;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,YAAY,SAAS;AACjB,eAAW,UAAU,SAAS;AAC1B,eAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAK,OAAOA,EAAC;AAAA,MACvB;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,MAAMK,QAAO;AACT,QAAI,OAAOA,WAAU,UAAU;AAC3B,eAASL,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAKK;AAAA,MACf;AAAA,IACJ,OACK;AACD,eAASL,KAAI,GAAGA,KAAI,KAAK,YAAYA,KAAIK,OAAM,QAAQ,EAAEL,IAAG;AACxD,aAAKA,EAAC,KAAKK,OAAML,EAAC;AAAA,MACtB;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,iBAAiB,QAAQ;AACrB,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,KAAK;AAAA,IACf;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA,EAGA,QAAQ;AACJ,QAAI,OAAO,SAAS,CAAC,KAAK,SAAS,GAAG;AAClC,YAAM,IAAI,MAAM,YAAY,KAAK,YAAY,IAAI,sCAAsC;AAAA,IAC3F;AACA,WAAO;AAAA,EACX;AAAA;AAAA,EAEA,WAAW;AACP,QAAI,QAAQ,KAAK,WAAW,KAAK;AACjC,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,cAAQ,SAAS,OAAO,SAAS,KAAKA,EAAC,CAAC;AAAA,IAC5C;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA,EAGA,IAAIE,IAAG;AACH,WAAO,KAAK,SAASA,EAAC;AAAA,EAC1B;AAAA;AAAA,EAEA,UAAUA,IAAG;AACT,aAASF,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAIE;AAAA,IACd;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,UAAUA,IAAG;AACT,aAASF,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,KAAKE;AAAA,IACf;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,UAAUA,IAAG;AACT,WAAO,KAAK,UAAU,CAACA,EAAC;AAAA,EAC5B;AAAA;AAAA,EAEA,eAAe,QAAQ;AAGnB,aAASF,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,KAAK;AAAA,IACf;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,aAAaE,IAAG;AACZ,WAAO,KAAK,iBAAiB,IAAIA,EAAC;AAAA,EACtC;AAAA;AAAA,EAEA,YAAY,KAAK,KAAK;AAClB,aAASF,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,WAAKA,EAAC,IAAI,KAAK,IAAI,KAAK,IAAI,KAAKA,EAAC,GAAG,GAAG,GAAG,GAAG;AAAA,IAClD;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AACJ;;;AC7NO,SAAS,eAAe,GAAG,QAAQ;AACtC,MAAI,EAAE,WAAW,QAAQ;AACrB,WAAO;AAAA,EACX;AAEA,WAASM,KAAI,GAAGA,KAAI,EAAE,QAAQ,EAAEA,IAAG;AAC/B,QAAI,CAAC,OAAO,SAAS,EAAEA,EAAC,CAAC,GAAG;AACxB,aAAO;AAAA,IACX;AAAA,EACJ;AACA,SAAO;AACX;AACO,SAAS,YAAY,OAAO;AAC/B,MAAI,CAAC,OAAO,SAAS,KAAK,GAAG;AACzB,UAAM,IAAI,MAAM,kBAAkB,KAAK,UAAU,KAAK,CAAC,EAAE;AAAA,EAC7D;AACA,SAAO;AACX;AACO,SAAS,YAAY,GAAG,QAAQ,aAAa,IAAI;AACpD,MAAI,OAAO,SAAS,CAAC,eAAe,GAAG,MAAM,GAAG;AAC5C,UAAM,IAAI,MAAM,YAAY,UAAU,sCAAsC;AAAA,EAChF;AACA,SAAO;AACX;;;ACxBO,SAASC,QAAO,WAAW,SAAS;AACvC,MAAI,CAAC,WAAW;AACZ,UAAM,IAAI,MAAM,qBAAqB,OAAO,EAAE;AAAA,EAClD;AACJ;;;ACAO,IAAM,SAAN,cAAqB,UAAU;AAAA;AAAA,EAElC,IAAI,IAAI;AACJ,WAAO,KAAK,CAAC;AAAA,EACjB;AAAA,EACA,IAAI,EAAE,OAAO;AACT,SAAK,CAAC,IAAI,YAAY,KAAK;AAAA,EAC/B;AAAA,EACA,IAAI,IAAI;AACJ,WAAO,KAAK,CAAC;AAAA,EACjB;AAAA,EACA,IAAI,EAAE,OAAO;AACT,SAAK,CAAC,IAAI,YAAY,KAAK;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM;AACF,WAAO,KAAK,KAAK,KAAK,cAAc,CAAC;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA,EAIA,YAAY;AACR,WAAO,KAAK,IAAI;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAgB;AACZ,QAAI,SAAS;AACb,aAASC,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,gBAAU,KAAKA,EAAC,IAAI,KAAKA,EAAC;AAAA,IAC9B;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAmB;AACf,WAAO,KAAK,cAAc;AAAA,EAC9B;AAAA,EACA,SAAS,WAAW;AAChB,WAAO,KAAK,KAAK,KAAK,gBAAgB,SAAS,CAAC;AAAA,EACpD;AAAA,EACA,gBAAgB,WAAW;AACvB,QAAI,SAAS;AACb,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,YAAM,OAAO,KAAKA,EAAC,IAAI,UAAUA,EAAC;AAClC,gBAAU,OAAO;AAAA,IACrB;AACA,WAAO,YAAY,MAAM;AAAA,EAC7B;AAAA,EACA,IAAI,WAAW;AACX,QAAI,UAAU;AACd,aAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,iBAAW,KAAKA,EAAC,IAAI,UAAUA,EAAC;AAAA,IACpC;AACA,WAAO,YAAY,OAAO;AAAA,EAC9B;AAAA;AAAA,EAEA,YAAY;AACR,UAAM,SAAS,KAAK,UAAU;AAC9B,QAAI,WAAW,GAAG;AACd,eAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAK;AAAA,MACf;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,YAAY,SAAS;AACjB,eAAW,UAAU,SAAS;AAC1B,eAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAK,OAAOA,EAAC;AAAA,MACvB;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,UAAU,SAAS;AACf,eAAW,UAAU,SAAS;AAC1B,eAASA,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,aAAKA,EAAC,KAAK,OAAOA,EAAC;AAAA,MACvB;AAAA,IACJ;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,WAAW;AACP,WAAO,KAAK,cAAc;AAAA,EAC9B;AAAA,EACA,WAAW,QAAQ;AACf,WAAO,KAAK,SAAS,MAAM;AAAA,EAC/B;AAAA,EACA,kBAAkB,QAAQ;AACtB,WAAO,KAAK,gBAAgB,MAAM;AAAA,EACtC;AAAA,EACA,aAAaA,IAAG;AACZ,IAAAC,QAAOD,MAAK,KAAKA,KAAI,KAAK,UAAU,uBAAuB;AAC3D,WAAO,YAAY,KAAKA,EAAC,CAAC;AAAA,EAC9B;AAAA,EACA,aAAaA,IAAG,OAAO;AACnB,IAAAC,QAAOD,MAAK,KAAKA,KAAI,KAAK,UAAU,uBAAuB;AAC3D,SAAKA,EAAC,IAAI;AACV,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,WAAWE,IAAGC,IAAG;AACb,WAAO,KAAK,KAAKD,EAAC,EAAE,IAAIC,EAAC;AAAA,EAC7B;AAAA,EACA,WAAWD,IAAGC,IAAG;AACb,WAAO,KAAK,KAAKD,EAAC,EAAE,SAASC,EAAC;AAAA,EAClC;AAAA,EACA,gBAAgBD,IAAGC,IAAG;AAClB,WAAO,KAAK,KAAKD,EAAC,EAAE,SAASC,EAAC;AAAA,EAClC;AAAA,EACA,gBAAgBD,IAAGC,IAAG;AAElB,WAAO,KAAK,IAAI,IAAI,KAAK,YAAYD,EAAC,EAAE,eAAeC,EAAC,CAAC;AAAA,EAC7D;AACJ;;;ACrHO,IAAI,aAAa,OAAO,iBAAiB,cAAc,eAAe;AAsB7E,IAAM,SAAS,KAAK,KAAK;;;AClBlB,SAAS,SAAS;AACrB,QAAM,MAAM,IAAa,WAAW,CAAC;AACrC,MAAa,cAAc,cAAc;AACrC,QAAI,CAAC,IAAI;AACT,QAAI,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACX;AAuXO,SAAS,cAAc,KAAKC,IAAG,GAAG;AACrC,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;AAClC,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;AAClC,SAAO;AACX;AAmJO,IAAMC,WAAW,WAAY;AAChC,QAAM,MAAM,OAAO;AACnB,SAAO,SAAUC,IAAG,QAAQ,QAAQ,OAAO,IAAI,KAAK;AAChD,QAAIC;AACJ,QAAIC;AACJ,QAAI,CAAC,QAAQ;AACT,eAAS;AAAA,IACb;AACA,QAAI,CAAC,QAAQ;AACT,eAAS;AAAA,IACb;AACA,QAAI,OAAO;AACP,MAAAA,KAAI,KAAK,IAAI,QAAQ,SAAS,QAAQF,GAAE,MAAM;AAAA,IAClD,OACK;AACD,MAAAE,KAAIF,GAAE;AAAA,IACV;AACA,SAAKC,KAAI,QAAQA,KAAIC,IAAGD,MAAK,QAAQ;AACjC,UAAI,CAAC,IAAID,GAAEC,EAAC;AACZ,UAAI,CAAC,IAAID,GAAEC,KAAI,CAAC;AAChB,SAAG,KAAK,KAAK,GAAG;AAChB,MAAAD,GAAEC,EAAC,IAAI,IAAI,CAAC;AACZ,MAAAD,GAAEC,KAAI,CAAC,IAAI,IAAI,CAAC;AAAA,IACpB;AACA,WAAOD;AAAA,EACX;AACJ,EAAG;;;ACljBI,SAAS,2BAA2B,KAAKG,IAAG,GAAG;AAClD,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,KAAK;AAC7C,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK;AAC5C,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK;AAC5C,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,KAAK;AAC7C,SAAO;AACX;AACO,SAAS,mBAAmB,KAAKA,IAAG,GAAG;AAC1C,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;AAC3B,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;AAC3B,MAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,SAAO;AACX;AAWO,SAAS,mBAAmB,KAAKC,IAAG,GAAG;AAC1C,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;AACtC,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;AACtC,MAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;AACtC,MAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,SAAO;AACX;;;ACpCO,SAASC,UAAS;AACrB,QAAM,MAAM,IAAa,WAAW,CAAC;AACrC,MAAa,cAAc,cAAc;AACrC,QAAI,CAAC,IAAI;AACT,QAAI,CAAC,IAAI;AACT,QAAI,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACX;AAyTO,SAASC,KAAIC,IAAGC,IAAG;AACtB,SAAOD,GAAE,CAAC,IAAIC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAIC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAIC,GAAE,CAAC;AACjD;AASO,SAASC,OAAM,KAAKF,IAAGC,IAAG;AAC7B,QAAM,KAAKD,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKC,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,MAAI,CAAC,IAAI,KAAK,KAAK,KAAK;AACxB,MAAI,CAAC,IAAI,KAAK,KAAK,KAAK;AACxB,MAAI,CAAC,IAAI,KAAK,KAAK,KAAK;AACxB,SAAO;AACX;AA8GO,SAAS,cAAc,KAAKE,IAAG,GAAG;AACrC,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,MAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE;AAC9C,MAAI,KAAK;AACT,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK;AACpD,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK;AACpD,MAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK;AACrD,SAAO;AACX;AASO,SAASC,eAAc,KAAKD,IAAG,GAAG;AACrC,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,MAAI,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;AACtC,MAAI,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;AACtC,MAAI,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;AACtC,SAAO;AACX;AAUO,SAAS,cAAc,KAAKA,IAAG,GAAG;AAErC,QAAM,KAAK,EAAE,CAAC;AACd,QAAM,KAAK,EAAE,CAAC;AACd,QAAM,KAAK,EAAE,CAAC;AACd,QAAM,KAAK,EAAE,CAAC;AACd,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AACb,QAAM,IAAIA,GAAE,CAAC;AAGb,MAAI,MAAM,KAAK,IAAI,KAAK;AACxB,MAAI,MAAM,KAAK,IAAI,KAAK;AACxB,MAAI,MAAM,KAAK,IAAI,KAAK;AAExB,MAAI,OAAO,KAAK,MAAM,KAAK;AAC3B,MAAI,OAAO,KAAK,MAAM,KAAK;AAC3B,MAAI,OAAO,KAAK,MAAM,KAAK;AAE3B,QAAM,KAAK,KAAK;AAChB,SAAO;AACP,SAAO;AACP,SAAO;AAEP,UAAQ;AACR,UAAQ;AACR,UAAQ;AAER,MAAI,CAAC,IAAI,IAAI,MAAM;AACnB,MAAI,CAAC,IAAI,IAAI,MAAM;AACnB,MAAI,CAAC,IAAI,IAAI,MAAM;AACnB,SAAO;AACX;AASO,SAAS,QAAQ,KAAKA,IAAGE,IAAG,KAAK;AACpC,QAAMC,KAAI,CAAC;AACX,QAAMC,KAAI,CAAC;AAEX,EAAAD,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AAEjB,EAAAE,GAAE,CAAC,IAAID,GAAE,CAAC;AACV,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AACjD,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AAEjD,MAAI,CAAC,IAAIC,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,SAAO;AACX;AASO,SAAS,QAAQ,KAAKF,IAAGE,IAAG,KAAK;AACpC,QAAMC,KAAI,CAAC;AACX,QAAMC,KAAI,CAAC;AAEX,EAAAD,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AAEjB,EAAAE,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AACjD,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC;AACV,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AAEjD,MAAI,CAAC,IAAIC,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,SAAO;AACX;AASO,SAAS,QAAQ,KAAKF,IAAGE,IAAG,KAAK;AACpC,QAAMC,KAAI,CAAC;AACX,QAAMC,KAAI,CAAC;AAEX,EAAAD,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AACjB,EAAAC,GAAE,CAAC,IAAIH,GAAE,CAAC,IAAIE,GAAE,CAAC;AAEjB,EAAAE,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AACjD,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIA,GAAE,CAAC,IAAI,KAAK,IAAI,GAAG;AACjD,EAAAC,GAAE,CAAC,IAAID,GAAE,CAAC;AAEV,MAAI,CAAC,IAAIC,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,MAAI,CAAC,IAAIE,GAAE,CAAC,IAAIF,GAAE,CAAC;AACnB,SAAO;AACX;AAOO,SAAS,MAAMF,IAAGE,IAAG;AACxB,QAAM,KAAKF,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKE,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,KAAKA,GAAE,CAAC;AACd,QAAM,MAAM,KAAK,MAAM,KAAK,KAAK,KAAK,KAAK,KAAK,OAAO,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACnF,QAAM,SAAS,OAAOG,KAAIL,IAAGE,EAAC,IAAI;AAClC,SAAO,KAAK,KAAK,KAAK,IAAI,KAAK,IAAI,QAAQ,EAAE,GAAG,CAAC,CAAC;AACtD;AAiGO,IAAMI,WAAW,WAAY;AAChC,QAAM,MAAMC,QAAO;AACnB,SAAO,SAAUC,IAAG,QAAQ,QAAQ,OAAO,IAAI,KAAK;AAChD,QAAIC;AACJ,QAAIC;AACJ,QAAI,CAAC,QAAQ;AACT,eAAS;AAAA,IACb;AACA,QAAI,CAAC,QAAQ;AACT,eAAS;AAAA,IACb;AACA,QAAI,OAAO;AACP,MAAAA,KAAI,KAAK,IAAI,QAAQ,SAAS,QAAQF,GAAE,MAAM;AAAA,IAClD,OACK;AACD,MAAAE,KAAIF,GAAE;AAAA,IACV;AACA,SAAKC,KAAI,QAAQA,KAAIC,IAAGD,MAAK,QAAQ;AACjC,UAAI,CAAC,IAAID,GAAEC,EAAC;AACZ,UAAI,CAAC,IAAID,GAAEC,KAAI,CAAC;AAChB,UAAI,CAAC,IAAID,GAAEC,KAAI,CAAC;AAChB,SAAG,KAAK,KAAK,GAAG;AAChB,MAAAD,GAAEC,EAAC,IAAI,IAAI,CAAC;AACZ,MAAAD,GAAEC,KAAI,CAAC,IAAI,IAAI,CAAC;AAChB,MAAAD,GAAEC,KAAI,CAAC,IAAI,IAAI,CAAC;AAAA,IACpB;AACA,WAAOD;AAAA,EACX;AACJ,EAAG;;;ACxuBH,IAAM,SAAS,CAAC,GAAG,GAAG,CAAC;AACvB,IAAI;AAKG,IAAM,UAAN,MAAM,iBAAgB,OAAO;AAAA,EAChC,WAAW,OAAO;AACd,QAAI,CAAC,MAAM;AACP,aAAO,IAAI,SAAQ,GAAG,GAAG,CAAC;AAC1B,aAAO,OAAO,IAAI;AAAA,IACtB;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAY,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG;AAE7B,UAAM,IAAI,IAAI,EAAE;AAChB,QAAI,UAAU,WAAW,KAAKG,SAAQ,CAAC,GAAG;AACtC,WAAK,KAAK,CAAC;AAAA,IACf,OACK;AAED,UAAI,OAAO,OAAO;AACd,oBAAY,CAAC;AACb,oBAAY,CAAC;AACb,oBAAY,CAAC;AAAA,MACjB;AAEA,WAAK,CAAC,IAAI;AACV,WAAK,CAAC,IAAI;AACV,WAAK,CAAC,IAAI;AAAA,IACd;AAAA,EACJ;AAAA,EACA,IAAI,GAAG,GAAG,GAAG;AACT,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,KAAK,OAAO;AACR,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,WAAW,QAAQ;AACf,QAAI,OAAO,OAAO;AACd,kBAAY,OAAO,CAAC;AACpB,kBAAY,OAAO,CAAC;AACpB,kBAAY,OAAO,CAAC;AAAA,IACxB;AACA,SAAK,CAAC,IAAI,OAAO;AACjB,SAAK,CAAC,IAAI,OAAO;AACjB,SAAK,CAAC,IAAI,OAAO;AACjB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,SAAS,QAAQ;AACb,WAAO,IAAI,KAAK,CAAC;AACjB,WAAO,IAAI,KAAK,CAAC;AACjB,WAAO,IAAI,KAAK,CAAC;AACjB,WAAO;AAAA,EACX;AAAA;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EACA,IAAI,IAAI;AACJ,WAAO,KAAK,CAAC;AAAA,EACjB;AAAA,EACA,IAAI,EAAE,OAAO;AACT,SAAK,CAAC,IAAI,YAAY,KAAK;AAAA,EAC/B;AAAA;AAAA,EAEA,MAAM,QAAQ;AACV,WAAO,MAAW,MAAM,MAAM;AAAA,EAClC;AAAA;AAAA,EAEA,MAAM,QAAQ;AACV,IAAAC,OAAW,MAAM,MAAM,MAAM;AAC7B,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,QAAQ,EAAE,SAAS,QAAAC,UAAS,OAAO,GAAG;AAClC,YAAa,MAAM,MAAMA,SAAQ,OAAO;AACxC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,QAAQ,EAAE,SAAS,QAAAA,UAAS,OAAO,GAAG;AAClC,YAAa,MAAM,MAAMA,SAAQ,OAAO;AACxC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,QAAQ,EAAE,SAAS,QAAAA,UAAS,OAAO,GAAG;AAClC,YAAa,MAAM,MAAMA,SAAQ,OAAO;AACxC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA,EAGA,UAAU,SAAS;AACf,WAAO,KAAK,iBAAiB,OAAO;AAAA,EACxC;AAAA;AAAA,EAEA,iBAAiB,SAAS;AACtB,kBAAmB,MAAM,MAAM,OAAO;AACtC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,kBAAkB,SAAS;AACvB,+BAA2B,MAAM,MAAM,OAAO;AAC9C,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,mBAAmB,SAAS;AACxB,IAAAC,eAAmB,MAAM,MAAM,OAAO;AACtC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,mBAAmB,SAAS;AACxB,uBAAmB,MAAM,MAAM,OAAO;AACtC,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,sBAAsB,YAAY;AAC9B,kBAAmB,MAAM,MAAM,UAAU;AACzC,WAAO,KAAK,MAAM;AAAA,EACtB;AACJ;;;ACjIO,IAAM,SAAN,cAAqB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWlC,WAAW;AACP,QAAI,SAAS;AACb,QAAI,OAAO,eAAe;AACtB,gBAAU;AACV,eAAS,MAAM,GAAG,MAAM,KAAK,MAAM,EAAE,KAAK;AACtC,iBAAS,MAAM,GAAG,MAAM,KAAK,MAAM,EAAE,KAAK;AACtC,oBAAU,IAAI,KAAK,MAAM,KAAK,OAAO,GAAG,CAAC;AAAA,QAC7C;AAAA,MACJ;AAAA,IACJ,OACK;AACD,gBAAU;AACV,eAASC,KAAI,GAAGA,KAAI,KAAK,UAAU,EAAEA,IAAG;AACpC,kBAAU,IAAI,KAAKA,EAAC,CAAC;AAAA,MACzB;AAAA,IACJ;AACA,cAAU;AACV,WAAO;AAAA,EACX;AAAA,EACA,gBAAgB,KAAK,KAAK;AACtB,WAAO,MAAM,KAAK,OAAO;AAAA,EAC7B;AAAA;AAAA,EAEA,WAAW,KAAK,KAAK;AACjB,WAAO,KAAK,MAAM,KAAK,OAAO,GAAG;AAAA,EACrC;AAAA;AAAA,EAEA,WAAW,KAAK,KAAK,OAAO;AACxB,SAAK,MAAM,KAAK,OAAO,GAAG,IAAI,YAAY,KAAK;AAC/C,WAAO;AAAA,EACX;AAAA,EACA,UAAU,aAAa,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,KAAK,EAAE,GAAG;AAC3D,UAAM,aAAa,cAAc,KAAK;AACtC,aAASA,KAAI,GAAGA,KAAI,KAAK,MAAM,EAAEA,IAAG;AAChC,aAAOA,EAAC,IAAI,KAAK,aAAaA,EAAC;AAAA,IACnC;AACA,WAAO;AAAA,EACX;AAAA,EACA,UAAU,aAAa,cAAc;AACjC,UAAM,aAAa,cAAc,KAAK;AACtC,aAASA,KAAI,GAAGA,KAAI,KAAK,MAAM,EAAEA,IAAG;AAChC,WAAK,aAAaA,EAAC,IAAI,aAAaA,EAAC;AAAA,IACzC;AACA,WAAO;AAAA,EACX;AACJ;;;ACqGO,SAAS,UAAU,KAAKC,IAAG;AAE9B,MAAI,QAAQA,IAAG;AACX,UAAM,MAAMA,GAAE,CAAC;AACf,UAAM,MAAMA,GAAE,CAAC;AACf,UAAM,MAAMA,GAAE,CAAC;AACf,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAI;AACT,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAI;AACT,QAAI,CAAC,IAAI;AAAA,EACb,OACK;AACD,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,QAAI,CAAC,IAAIA,GAAE,CAAC;AAAA,EAChB;AACA,SAAO;AACX;AAQO,SAAS,OAAO,KAAKA,IAAG;AAC3B,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAM,MAAM,MAAM,MAAM;AAC9B,QAAM,MAAM,CAAC,MAAM,MAAM,MAAM;AAC/B,QAAM,MAAM,MAAM,MAAM,MAAM;AAE9B,MAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM;AACxC,MAAI,CAAC,KAAK;AACN,WAAO;AAAA,EACX;AACA,QAAM,IAAM;AACZ,MAAI,CAAC,IAAI,MAAM;AACf,MAAI,CAAC,KAAK,CAAC,MAAM,MAAM,MAAM,OAAO;AACpC,MAAI,CAAC,KAAK,MAAM,MAAM,MAAM,OAAO;AACnC,MAAI,CAAC,IAAI,MAAM;AACf,MAAI,CAAC,KAAK,MAAM,MAAM,MAAM,OAAO;AACnC,MAAI,CAAC,KAAK,CAAC,MAAM,MAAM,MAAM,OAAO;AACpC,MAAI,CAAC,IAAI,MAAM;AACf,MAAI,CAAC,KAAK,CAAC,MAAM,MAAM,MAAM,OAAO;AACpC,MAAI,CAAC,KAAK,MAAM,MAAM,MAAM,OAAO;AACnC,SAAO;AACX;AAmCO,SAAS,YAAYC,IAAG;AAC3B,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,SAAQ,OAAO,MAAM,MAAM,MAAM,OAAO,OAAO,CAAC,MAAM,MAAM,MAAM,OAAO,OAAO,MAAM,MAAM,MAAM;AACtG;AASO,SAAS,SAAS,KAAKA,IAAGC,IAAG;AAChC,QAAM,MAAMD,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMC,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,MAAI,CAAC,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM;AACvC,SAAO;AACX;AASO,SAASC,WAAU,KAAKF,IAAG,GAAG;AACjC,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC;AACb,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM;AAC7B,MAAI,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM;AAC7B,MAAI,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM;AAC7B,SAAO;AACX;AASO,SAAS,OAAO,KAAKA,IAAG,KAAK;AAChC,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAM,MAAMA,GAAE,CAAC;AACf,QAAMG,KAAI,KAAK,IAAI,GAAG;AACtB,QAAMC,KAAI,KAAK,IAAI,GAAG;AACtB,MAAI,CAAC,IAAIA,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAIC,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAIC,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAIC,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAIC,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAIC,KAAI,MAAMD,KAAI;AACvB,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,MAAI,CAAC,IAAI;AACT,SAAO;AACX;AASO,SAASE,OAAM,KAAKL,IAAG,GAAG;AAC7B,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC;AACb,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAI,IAAIA,GAAE,CAAC;AAChB,MAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,MAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,MAAI,CAAC,IAAIA,GAAE,CAAC;AACZ,SAAO;AACX;AAmGO,SAAS,SAAS,KAAK,GAAG;AAC7B,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,IAAI,EAAE,CAAC;AACb,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,QAAM,KAAK,IAAI;AACf,MAAI,CAAC,IAAI,IAAI,KAAK;AAClB,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,IAAI,KAAK;AAClB,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,KAAK;AACd,MAAI,CAAC,IAAI,IAAI,KAAK;AAClB,SAAO;AACX;;;AC7fA,IAAI;AAAA,CACH,SAAUM,UAAS;AAChB,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACnC,EAAAA,SAAQA,SAAQ,UAAU,IAAI,CAAC,IAAI;AACvC,GAAG,YAAY,UAAU,CAAC,EAAE;AAC5B,IAAM,kBAAkB,OAAO,OAAO,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;AAC1D,IAAM,UAAN,cAAsB,OAAO;AAAA,EAChC,WAAW,WAAW;AAClB,WAAO,kBAAkB;AAAA,EAC7B;AAAA,EACA,WAAW,OAAO;AACd,WAAO,cAAc;AAAA,EACzB;AAAA,EACA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EACA,IAAI,OAAO;AACP,WAAO;AAAA,EACX;AAAA,EACA,IAAI,UAAU;AACV,WAAO;AAAA,EACX;AAAA,EACA,YAAY,UAAU,MAAM;AAExB,UAAM,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACxC,QAAI,UAAU,WAAW,KAAK,MAAM,QAAQ,KAAK,GAAG;AAChD,WAAK,KAAK,KAAK;AAAA,IACnB,WACS,KAAK,SAAS,GAAG;AACtB,WAAK,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;AAAA,IAC9B,OACK;AACD,WAAK,SAAS;AAAA,IAClB;AAAA,EACJ;AAAA,EACA,KAAK,OAAO;AAER,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,SAAK,CAAC,IAAI,MAAM,CAAC;AACjB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,WAAW;AACP,WAAO,KAAK,KAAK,eAAe;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAW,QAAQ;AACf,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA,EAIA,eAAe,GAAG;AACd,aAAc,MAAM,CAAC;AACrB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK;AAC7C,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK;AACrD,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,SAAK,CAAC,IAAI;AACV,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,cAAc;AACV,WAAO,YAAiB,IAAI;AAAA,EAChC;AAAA;AAAA,EAEA,YAAY;AACR,cAAe,MAAM,IAAI;AACzB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,SAAS;AACL,WAAY,MAAM,IAAI;AACtB,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,aAAaC,IAAG;AACZ,aAAc,MAAMA,IAAG,IAAI;AAC3B,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,cAAcA,IAAG;AACb,aAAc,MAAM,MAAMA,EAAC;AAC3B,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,OAAO,SAAS;AACZ,WAAY,MAAM,MAAM,OAAO;AAC/B,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,MAAM,QAAQ;AACV,QAAI,MAAM,QAAQ,MAAM,GAAG;AACvB,MAAAC,OAAW,MAAM,MAAM,MAAM;AAAA,IACjC,OACK;AACD,MAAAA,OAAW,MAAM,MAAM,CAAC,QAAQ,MAAM,CAAC;AAAA,IAC3C;AACA,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA,EACA,UAAU,KAAK;AACX,IAAAC,WAAe,MAAM,MAAM,GAAG;AAC9B,WAAO,KAAK,MAAM;AAAA,EACtB;AAAA;AAAA,EAEA,UAAU,QAAQ,QAAQ;AACtB,QAAI;AACJ,YAAQ,OAAO,QAAQ;AAAA,MACnB,KAAK;AACD,cAAM,cAAmB,UAAU,CAAC,IAAI,EAAE,GAAG,QAAQ,IAAI;AACzD;AAAA,MACJ,KAAK;AACD,cAAMC,eAAmB,UAAU,CAAC,IAAI,IAAI,EAAE,GAAG,QAAQ,IAAI;AAC7D;AAAA,MACJ,KAAK;AACD,cAAM,mBAAmB,UAAU,CAAC,IAAI,IAAI,IAAI,EAAE,GAAG,QAAQ,IAAI;AACjE;AAAA,MACJ;AACI,cAAM,IAAI,MAAM,gBAAgB;AAAA,IACxC;AACA,gBAAY,KAAK,OAAO,MAAM;AAC9B,WAAO;AAAA,EACX;AAAA;AAAA,EAEA,gBAAgB,QAAQ,QAAQ;AAC5B,WAAO,KAAK,UAAU,QAAQ,MAAM;AAAA,EACxC;AAAA;AAAA,EAEA,iBAAiB,QAAQ,QAAQ;AAC7B,WAAO,KAAK,UAAU,QAAQ,MAAM;AAAA,EACxC;AAAA;AAAA,EAEA,iBAAiB,QAAQ,QAAQ;AAC7B,WAAO,KAAK,UAAU,QAAQ,MAAM;AAAA,EACxC;AACJ;AACA,IAAI;AACJ,IAAI,mBAAmB;AACvB,SAAS,gBAAgB;AACrB,MAAI,CAAC,cAAc;AACf,mBAAe,IAAI,QAAQ,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;AACtD,WAAO,OAAO,YAAY;AAAA,EAC9B;AACA,SAAO;AACX;AACA,SAAS,oBAAoB;AACzB,MAAI,CAAC,kBAAkB;AACnB,uBAAmB,IAAI,QAAQ;AAC/B,WAAO,OAAO,gBAAgB;AAAA,EAClC;AACA,SAAO;AACX;;;AblMA,IAAM,wBAAwB;AACvB,IAAMC,QAAO;AACpB,IAAM,gBAAgB,IAAI,QAAQ;AAClC,IAAM,wBAAwB,IAAI,QAAQ;AAC1C,IAAM,qBAAqB,IAAI,QAAQ;AAMvC,eAAsBC,QAAO,UAAU,SAAS;AAC5C,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,eAAe,eAAe,aAAa,qBAAqB;AACtE,MAAI,CAAC,gBAAgB,CAAC,QAAQ,MAAM,aAAa;AAC7C;AAAA,EACJ;AACA,QAAM,YAAY,SAAS,KAAK,aAAa,CAAC;AAC9C,WAASC,KAAI,GAAGA,KAAI,UAAU,QAAQA,MAAK;AACvC,uBAAmBA,IAAG,QAAQ;AAAA,EAClC;AACJ;AAMA,SAAS,mBAAmB,eAAe,UAAU;AACjD,QAAM,WAAW,SAAS,KAAK,YAAY,aAAa;AACxD,QAAM,mBAAmB;AAAA,IACrB,UAAU,sBAAsB;AAAA,IAChC,UAAU;AAAA,IACV,UAAU;AAAA,IACV,UAAU;AAAA,IACV,UAAU,sBAAsB;AAAA,EACpC;AAEA,QAAM,qBAAqB,CAAC;AAC5B,aAAW,eAAe,kBAAkB;AACxC,QAAI,eAAe,aAAa,aAAa,qBAAqB,GAAG;AACjE,0BAAoB,UAAU,eAAe,aAAa,kBAAkB;AAAA,IAChF;AAAA,EACJ;AACJ;AAQA,SAAS,oBAAoB,UAAU,eAAe,SAAS,oBAAoB;AAC/E,QAAM,sBAAsB,uBAAuB,SAAS,kBAAkB;AAC9E,MAAI,CAAC,qBAAqB;AACtB;AAAA,EACJ;AACA,QAAM,SAAS,SAAS,KAAK,UAAU,CAAC;AACxC,aAAW,QAAQ,QAAQ;AACvB,eAAW,aAAa,KAAK,YAAY;AACrC,YAAM,WAAW,UAAU;AAC3B,UAAI,OAAO,SAAS,QAAQ,KAAK,kBAAkB,UAAU;AACzD,2BAAmB,UAAU,WAAW,mBAAmB;AAAA,MAC/D;AAAA,IACJ;AAAA,EACJ;AACJ;AAOA,SAAS,uBAAuB,SAAS,oBAAoB;AACzD,QAAM,cAAc,QAAQ,aAAa,qBAAqB;AAC9D,QAAM,EAAE,UAAU,mBAAmB,EAAE,IAAI;AAE3C,QAAM,EAAE,WAAW,iBAAiB,IAAI;AAExC,QAAM,cAAc,mBAAmB,UAAU,CAAC,CAAC,UAAU,WAAW,MAAM,aAAa,oBAAoB,gBAAgB,QAAQ,MAAM;AAC7I,MAAI,CAAC,aAAa;AACd,UAAM,SAAS,yBAAyB,WAAW;AACnD,QAAI,qBAAqB,UAAU;AAC/B,cAAQ,WAAW;AAAA,IACvB;AACA,uBAAmB,KAAK,CAAC,kBAAkB,QAAQ,CAAC;AACpD,WAAO,EAAE,kBAAkB,UAAU,OAAO;AAAA,EAChD;AACA,SAAO;AACX;AAOA,SAAS,mBAAmB,UAAU,WAAW,qBAAqB;AAClE,QAAM,EAAE,kBAAkB,UAAU,OAAO,IAAI;AAC/C,QAAM,mBAAmB,UAAU,WAAW,YAAY,gBAAgB,EAAE;AAC5E,MAAI,OAAO,SAAS,gBAAgB,GAAG;AAEnC,UAAM,WAAW,SAAS,KAAK,YAAY,gBAAgB;AAC3D,QAAI,YAAY,SAAS,YAAY;AAEjC,YAAM,aAAa,SAAS,KAAK,cAAc,SAAS,UAAU;AAClE,UAAI,YAAY;AAEZ,cAAM,EAAE,aAAa,YAAY,iBAAiB,IAAI,SAAS,QAAQ,WAAW,MAAM;AAExF,cAAM,cAAc,oBAAoB,MAAM,SAAS,cAAc,MAAM,WAAW,cAAc;AAEpG,cAAM,EAAE,WAAW,OAAO,IAAI,8BAA8B,UAAU,UAAU;AAEhF,cAAM,QAAQ,MAAM,SAAS,aAAa;AAE1C,cAAM,aAAa,WAAW,SAAS,IAAI;AAE3C,cAAM,sBAAsB,WAAW,cAAc,QAAQ;AAE7D,cAAM,SAAS,IAAI,aAAa,MAAM;AACtC,iBAASA,KAAI,GAAGA,KAAI,SAAS,OAAOA,MAAK;AAErC,gBAAM,KAAK,IAAI,UAAU,aAAa,aAAaA,KAAI,qBAAqB,CAAC;AAE7E,wBAAc,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC;AACjC,wBAAc,mBAAmB,MAAM;AAEvC,iBAAO,IAAI,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC,CAAC,GAAGA,KAAI,UAAU;AAAA,QACnE;AAEA,YAAI,qBAAqB,UAAU;AAC/B,qBAAW,UAAU,YAAY,SAAS,SAAS,MAAM;AAAA,QAC7D,OACK;AAED,0BAAgB,UAAU,UAAU,WAAW,UAAU,MAAM;AAAA,QACnE;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACJ;AAQA,SAAS,WAAW,UAAU,YAAY,SAAS,kBAAkB;AACjE,WAAS,gBAAgB;AACzB,UAAQ,KAAK;AAAA,IACT,aAAa,iBAAiB;AAAA,IAC9B,YAAY;AAAA,IACZ,YAAY,iBAAiB,OAAO;AAAA,EACxC,CAAC;AACD,aAAW,SAAS,QAAQ,SAAS;AACrC,aAAW,aAAa,iBAAiB,OAAO;AAChD,aAAW,aAAa;AACxB,SAAO,WAAW;AACtB;AAUA,SAAS,gBAAgB,aAAa,kBAAkB,WAAW,UAAU,kBAAkB;AAC3F,WAAS,QAAQ,KAAK;AAAA,IAClB,aAAa,iBAAiB;AAAA,IAC9B,YAAY;AAAA,IACZ,YAAY,iBAAiB,OAAO;AAAA,EACxC,CAAC;AACD,QAAM,cAAc,SAAS,KAAK;AAClC,MAAI,CAAC,aAAa;AACd;AAAA,EACJ;AACA,cAAY,KAAK;AAAA,IACb,QAAQ,SAAS,QAAQ,SAAS;AAAA,IAClC,YAAY,iBAAiB,OAAO;AAAA,IACpC,YAAY;AAAA,EAChB,CAAC;AACD,QAAM,YAAY,SAAS,KAAK;AAChC,MAAI,CAAC,WAAW;AACZ;AAAA,EACJ;AACA,YAAU,KAAK;AAAA,IACX,YAAY,aAAa,SAAS;AAAA,IAClC,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,OAAO,iBAAiB;AAAA,IACxB,MAAM;AAAA,EACV,CAAC;AACD,YAAU,WAAW,YAAY,WAAW,EAAE,IAAI,UAAU,SAAS;AACzE;AAMA,SAAS,yBAAyB,eAAe;AAC7C,QAAM,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,WAAW,GAAG,OAAAC,SAAQ,CAAC,GAAG,CAAC,EAAE,IAAI;AAC1D,QAAM,oBAAoB,IAAI,QAAQ,EAAE,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;AACrF,QAAM,iBAAiB,sBAAsB,IAAI,KAAK,IAAI,QAAQ,GAAG,KAAK,IAAI,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,QAAQ,GAAG,KAAK,IAAI,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAC;AAC/I,QAAM,cAAc,mBAAmB,IAAIA,OAAM,CAAC,GAAG,GAAG,GAAG,GAAGA,OAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AAClF,SAAO,kBAAkB,cAAc,cAAc,EAAE,cAAc,WAAW;AACpF;;;ActNA;AAAA;AAAA,gBAAAC;AAAA,EAAA,cAAAC;AAAA,EAAA,YAAAC;AAAA;AAIA,IAAM,sBAAsB;AACrB,IAAMC,QAAO;AACpB,eAAsBC,QAAO,UAAU;AACnC,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AAEjB,QAAM,YAAY,eAAe,aAAa,mBAAmB;AACjE,MAAI,WAAW;AAEX,mBAAe,KAAK,SAAS,UAAU;AACvC,mBAAe,gBAAgB,mBAAmB;AAAA,EACtD;AAGA,aAAW,QAAQ,KAAK,SAAS,CAAC,GAAG;AACjC,UAAM,gBAAgB,eAAe,mBAAmB,MAAM,mBAAmB;AACjF,QAAI,eAAe;AAEf,WAAK,QAAQ,cAAc;AAAA,IAC/B;AACA,mBAAe,sBAAsB,MAAM,mBAAmB;AAAA,EAClE;AACJ;AAEA,eAAsBC,QAAO,UAAU;AACnC,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AAEjB,MAAI,KAAK,QAAQ;AACb,UAAM,YAAY,eAAe,aAAa,mBAAmB;AAEjE,IAAAC,QAAO,CAAC,UAAU,MAAM;AAExB,cAAU,SAAS,KAAK;AAExB,WAAO,KAAK;AAAA,EAChB;AAIA,MAAI,eAAe,KAAK,QAAQ;AAE5B,eAAW,SAAS,eAAe,KAAK,QAAQ;AAC5C,YAAM,OAAO,MAAM;AACnB,qBAAe,mBAAmB,MAAM,qBAAqB,KAAK;AAAA,IACtE;AAEA,WAAO,eAAe,KAAK;AAAA,EAC/B;AACJ;;;ACrDA;AAAA;AAAA,gBAAAC;AAAA,EAAA,cAAAC;AAAA,EAAA,YAAAC;AAAA;AAGA,IAAM,sBAAsB;AACrB,IAAMC,SAAO;AACpB,eAAsBC,QAAO,UAAU;AACnC,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AAGjB,aAAW,YAAY,KAAK,aAAa,CAAC,GAAG;AACzC,UAAM,YAAY,SAAS,cAAc,SAAS,WAAW;AAC7D,QAAI,WAAW;AAEX,eAAS,QAAQ;AAAA,IACrB;AACA,mBAAe,sBAAsB,UAAU,mBAAmB;AAAA,EACtE;AAEA,iBAAe,gBAAgB,mBAAmB;AACtD;AACO,SAASC,QAAO,UAAU;AAC7B,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AAIjB,MAAI,eAAe,WAAW;AAC1B,eAAW,YAAY,KAAK,aAAa,CAAC,GAAG;AAEzC,UAAI,SAAS,OAAO;AAEhB,eAAO,SAAS;AAChB,uBAAe,mBAAmB,UAAU,qBAAqB,CAAC,CAAC;AACnE,uBAAe,aAAa,mBAAmB;AAAA,MACnD;AAAA,IACJ;AAAA,EACJ;AACJ;;;ACtCA;AAAA;AAAA,gBAAAC;AAAA,EAAA,cAAAC;AAAA,EAAA,YAAAC;AAAA;AAGA,IAAM,uBAAuB;AACtB,IAAMC,SAAO;AACpB,eAAsBC,SAAO,UAAU;AACnC,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AACjB,QAAM,YAAY,eAAe,aAAa,oBAAoB;AAClE,MAAI,WAAW;AACX,UAAM,aAAa,kBAAkB,WAAW,cAAc;AAC9D,eAAW,YAAY,KAAK,aAAa,CAAC,GAAG;AACzC,YAAM,oBAAoB,eAAe,mBAAmB,UAAU,oBAAoB;AAC1F,UAAI,mBAAmB;AAEnB,iBAAS,YAAY,OAAO;AAAA,UAAO,CAAC;AAAA,UAAG;AAAA;AAAA,UAEvC,WAAW,kBAAkB,SAAS;AAAA,QAAC;AAEvC,iBAAS,UAAU,SAAS,cAAc,SAAS,WAAW,cAAc;AAAA,MAChF;AACA,qBAAe,sBAAsB,UAAU,oBAAoB;AAAA,IACvE;AAEA,mBAAe,gBAAgB,oBAAoB;AAAA,EACvD;AACJ;AAEA,eAAsBC,QAAO,UAAU,SAAS;AAEhD;AACA,SAAS,kBAAkB,qBAI3B,gBAAgB;AACZ,QAAM,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,GAAG,aAAa,CAAC,EAAE,IAAI;AACzD,QAAM,cAAc,IAAI,YAAY;AACpC,UAAQ,QAAQ,CAAC,WAAW;AACxB,QAAI,OAAO,SAAS,OAAO,UAAU,GAAG;AACpC,aAAO,OAAO,YAAY,OAAO,eAAe,2BAA2B,OAAO,UAAU,CAAC;AAAA,IACjG,OACK;AAED,YAAM,IAAI,MAAM,sCAAsC;AAAA,IAC1D;AAAA,EACJ,CAAC;AACD,WAAS,QAAQ,CAAC,YAAY;AAC1B,YAAQ,iBAAiB,QAAQ,QAAQ,cAAc;AACvD,YAAQ,eAAe,QAAQ,QAAQ,YAAY;AAAA,EACvD,CAAC;AACD,aAAW,QAAQ,CAAC,cAAc;AAC9B,cAAU,UAAU,SAAS,UAAU,OAAO;AAAA,EAClD,CAAC;AACD,SAAO;AACX;AACA,SAAS,cAAc,WAAW,gBAAgB;AAC9C,QAAM,SAAS,OAAO,OAAO,CAAC,GAAG,UAAU,MAAM;AAEjD,SAAO,KAAK,UAAU,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,YAAY;AACvD,QAAI,UAAU,SAAS,OAAO,EAAE,SAAS,EAAE,WAAW,SAAS;AAC3D,aAAO,OAAO,IAAI,UAAU,SAAS,OAAO,EAAE;AAAA,IAClD;AAAA,EACJ,CAAC;AAED,SAAO,KAAK,MAAM,EAAE,QAAQ,CAAC,YAAY;AACrC,QAAI,OAAO,OAAO,OAAO,MAAM,YAAY,OAAO,OAAO,EAAE,UAAU,QAAW;AAG5E,aAAO,OAAO,EAAE,UAAU,eAAe,WAAW,OAAO,OAAO,EAAE,KAAK;AAAA,IAC7E;AAAA,EACJ,CAAC;AACD,SAAO;AACX;;;ACpDO,IAAMC,cAAa;AAAA;AAAA;AAAA;AAAA;AAAA,EAKtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;AAEO,SAAS,qBAAqB,MAAM,UAAU,CAAC,GAAG,SAAS;AAC9D,QAAM,aAAaA,YAAW,OAAO,CAAC,cAAc,aAAa,UAAU,MAAM,OAAO,CAAC;AACzF,aAAW,aAAa,YAAY;AAChC,cAAU,aAAa,MAAM,SAAS,OAAO;AAAA,EACjD;AACJ;AAEA,eAAsB,iBAAiB,MAAM,UAAU,CAAC,GAAG,SAAS;AAChE,QAAM,aAAaA,YAAW,OAAO,CAAC,cAAc,aAAa,UAAU,MAAM,OAAO,CAAC;AACzF,aAAW,aAAa,YAAY;AAGhC,UAAM,UAAU,SAAS,MAAM,SAAS,OAAO;AAAA,EACnD;AACJ;AACA,SAAS,aAAa,eAAe,SAAS;AAC1C,QAAM,WAAW,SAAS,MAAM,qBAAqB,CAAC;AACtD,QAAM,UAAU,iBAAiB,YAAY,CAAC,SAAS,aAAa;AACpE,SAAO,CAAC;AACZ;;;ACvDA,IAAM,kBAAkB;AAGjB,SAASC,YAAW,UAAU;AACjC,QAAM,iBAAiB,IAAI,eAAe,QAAQ;AAClD,QAAM,EAAE,KAAK,IAAI;AAKjB,aAAW,SAAS,KAAK,UAAU,CAAC,GAAG;AACnC,UAAM,YAAY,eAAe,mBAAmB,OAAO,eAAe;AAE1E,QAAI,WAAW;AACX,aAAO,OAAO,OAAO,SAAS;AAAA,IAClC;AACA,mBAAe,sBAAsB,OAAO,eAAe;AAAA,EAC/D;AAIA,MAAI,KAAK,WAAW,KAAK,QAAQ,CAAC,GAAG;AACjC,WAAO,KAAK,QAAQ,CAAC,EAAE;AAAA,EAC3B;AAEA,iBAAe,gBAAgB,eAAe;AAClD;;;ACUA,IAAM,cAAc;AAAA,EAChB,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,UAAU;AACd;AACA,IAAM,YAAY;AAAA,EACd,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,UAAU;AAAA,EACV,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AAAA,EACT,OAAO;AAAA,EACP,MAAM;AAAA,EACN,SAAS;AACb;AAIA,IAAM,mBAAN,MAAuB;AAAA,EACnB,eAAe;AAAA,IACX,YAAY,CAAC;AAAA,IACb,WAAW,CAAC;AAAA,IACZ,SAAS,CAAC;AAAA,IACV,aAAa,CAAC;AAAA,IACd,QAAQ,CAAC;AAAA,IACT,WAAW,CAAC;AAAA,IACZ,QAAQ,CAAC;AAAA,IACT,OAAO,CAAC;AAAA,IACR,UAAU,CAAC;AAAA,IACX,QAAQ,CAAC;AAAA,IACT,OAAO,CAAC;AAAA,IACR,UAAU,CAAC;AAAA,EACf;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,UAAU,MAAM,SAAS;AACrB,SAAK,OAAO,KAAK;AACjB,UAAM,OAAO,KAAK;AAElB,YAAQ,KAAK,SAAS,KAAK,MAAM,SAAS;AAAA,MAEtC,KAAK;AACD;AAAA,MAEJ,KAAK;AAAA,MACL,KAAK;AACD;AAAA,MACJ;AAEI,gBAAQ,KAAK,yBAAyB,KAAK,MAAM,OAAO,EAAE;AAC1D;AAAA,IACR;AACA,QAAI,CAAC,QAAQ,WAAW;AAEpB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC/C;AAEA,YAAQ,KAAK,0EAA0E;AACvF,SAAK,UAAU,IAAI;AAEnB,SAAK,gCAAgC,IAAI;AAIzC,IAAgBC,YAAW,IAAI;AAE/B,SAAK,gCAAgC,IAAI;AACzC,SAAK,eAAe,IAAI;AACxB,SAAK,gBAAgB,IAAI;AAAA,EAC7B;AAAA;AAAA,EAEA,UAAU,MAAM;AACZ,SAAK,QAAQ,KAAK,SAAS,CAAC;AAE5B,SAAK,MAAM,UAAU;AACrB,SAAK,MAAM,YAAY,KAAK,MAAM,aAAa;AAAA,EACnD;AAAA,EACA,gCAAgC,MAAM;AAElC,eAAW,aAAa,aAAa;AACjC,WAAK,8BAA8B,MAAM,SAAS;AAAA,IACtD;AAAA,EACJ;AAAA;AAAA,EAEA,8BAA8B,MAAM,SAAS;AACzC,UAAM,YAAY,KAAK,OAAO;AAC9B,QAAI,CAAC,aAAa,MAAM,QAAQ,SAAS,GAAG;AACxC;AAAA,IACJ;AAEA,SAAK,OAAO,IAAI,CAAC;AAEjB,eAAW,MAAM,WAAW;AACxB,YAAM,SAAS,UAAU,EAAE;AAC3B,aAAO,KAAK,OAAO,MAAM;AACzB,YAAM,QAAQ,KAAK,OAAO,EAAE;AAC5B,WAAK,OAAO,EAAE,KAAK,MAAM;AACzB,WAAK,aAAa,OAAO,EAAE,EAAE,IAAI;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA,EAEA,gCAAgC,MAAM;AAClC,eAAW,aAAa,aAAa;AACjC,WAAK,qBAAqB,MAAM,SAAS;AAAA,IAC7C;AACA,QAAI,WAAW,MAAM;AACjB,WAAK,QAAQ,KAAK,kBAAkB,KAAK,OAAO,OAAO;AAAA,IAC3D;AAGA,eAAW,WAAW,KAAK,UAAU;AACjC,WAAK,mBAAmB,OAAO;AAAA,IACnC;AACA,eAAW,QAAQ,KAAK,QAAQ;AAC5B,WAAK,gBAAgB,IAAI;AAAA,IAC7B;AACA,eAAW,QAAQ,KAAK,OAAO;AAC3B,WAAK,gBAAgB,IAAI;AAAA,IAC7B;AACA,eAAW,QAAQ,KAAK,QAAQ;AAC5B,WAAK,iBAAiB,IAAI;AAAA,IAC9B;AAAA,EACJ;AAAA,EACA,mBAAmB,SAAS;AACxB,QAAI,QAAQ,QAAQ;AAChB,cAAQ,SAAS,KAAK,kBAAkB,QAAQ,QAAQ,OAAO;AAAA,IACnE;AAAA,EACJ;AAAA,EACA,gBAAgB,MAAM;AAClB,eAAW,aAAa,KAAK,YAAY;AACrC,YAAM,EAAE,YAAY,SAAS,SAAS,IAAI;AAC1C,iBAAW,iBAAiB,YAAY;AACpC,mBAAW,aAAa,IAAI,KAAK,kBAAkB,WAAW,aAAa,GAAG,UAAU;AAAA,MAC5F;AACA,UAAI,SAAS;AACT,kBAAU,UAAU,KAAK,kBAAkB,SAAS,UAAU;AAAA,MAClE;AACA,UAAI,UAAU;AACV,kBAAU,WAAW,KAAK,kBAAkB,UAAU,UAAU;AAAA,MACpE;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,gBAAgB,MAAM;AAClB,QAAI,KAAK,UAAU;AACf,WAAK,WAAW,KAAK,SAAS,IAAI,CAAC,UAAU,KAAK,kBAAkB,OAAO,MAAM,CAAC;AAAA,IACtF;AACA,QAAI,KAAK,QAAQ;AACb,WAAK,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,KAAK,kBAAkB,MAAM,MAAM,CAAC;AAAA,IAChF;AAAA,EACJ;AAAA,EACA,iBAAiB,OAAO;AACpB,QAAI,MAAM,OAAO;AACb,YAAM,QAAQ,MAAM,MAAM,IAAI,CAAC,SAAS,KAAK,kBAAkB,MAAM,MAAM,CAAC;AAAA,IAChF;AAAA,EACJ;AAAA;AAAA,EAEA,qBAAqB,MAAM,mBAAmB;AAC1C,QAAI,CAAC,KAAK,iBAAiB,GAAG;AAC1B,cAAQ,KAAK,2CAA2C,iBAAiB,EAAE;AAC3E,WAAK,iBAAiB,IAAI,CAAC;AAAA,IAC/B;AACA,eAAW,UAAU,KAAK,iBAAiB,GAAG;AAC1C,iBAAW,OAAO,QAAQ;AACtB,cAAM,KAAK,OAAO,GAAG;AACrB,cAAM,QAAQ,KAAK,kBAAkB,IAAI,GAAG;AAC5C,eAAO,GAAG,IAAI;AAAA,MAClB;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,kBAAkB,IAAI,KAAK;AACvB,UAAM,YAAY,UAAU,GAAG;AAC/B,QAAI,aAAa,KAAK,cAAc;AAChC,YAAM,QAAQ,KAAK,aAAa,SAAS,EAAE,EAAE;AAC7C,UAAI,CAAC,OAAO,SAAS,KAAK,GAAG;AACzB,cAAM,IAAI,MAAM,8BAA8B,GAAG,YAAY,EAAE,EAAE;AAAA,MACrE;AACA,aAAO;AAAA,IACX;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,eAAe,MAAM;AACjB,eAAW,UAAU,KAAK,KAAK,SAAS;AAEpC,aAAO,OAAO;AAAA,IAClB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,gBAAgB,MAAM;AAClB,eAAW,YAAY,KAAK,WAAW;AACnC,eAAS,uBAAuB;AAAA,QAC5B,iBAAiB,CAAC,GAAG,GAAG,GAAG,CAAC;AAAA,QAC5B,gBAAgB;AAAA,QAChB,iBAAiB;AAAA,MACrB;AACA,YAAM,YAAY,SAAS,QAAQ,OAAO,SAAS,QAAQ,eAAe,SAAS,QAAQ;AAC3F,YAAM,eAAe,KAAK,SAAS,UAAU,CAAC,YAAY,QAAQ,OAAO,SAAS;AAClF,UAAI,iBAAiB,IAAI;AACrB,iBAAS,qBAAqB,mBAAmB,EAAE,OAAO,aAAa;AAAA,MAC3E;AAAA,IACJ;AAAA,EACJ;AACJ;AACO,SAAS,gBAAgB,MAAM,UAAU,CAAC,GAAG;AAChD,SAAO,IAAI,iBAAiB,EAAE,UAAU,MAAM,OAAO;AACzD;;;AChQA,eAAsB,UAAU,MAAM,qBAAqB,aAAa,GAAG,SAAS,SAAS;AACzF,yBAAuB,MAAM,qBAAqB,YAAY,OAAO;AACrE,kBAAgB,MAAM,EAAE,WAAW,SAAS,MAAM,UAAU,CAAC;AAC7D,uBAAqB,MAAM,SAAS,OAAO;AAE3C,MAAI,SAAS,MAAM,eAAe,KAAK,KAAK,SAAS;AACjD,UAAM,YAAY,MAAM,SAAS,OAAO;AAAA,EAC5C;AAGA,MAAI,SAAS,MAAM,YAAY;AAC3B,UAAM,WAAW,MAAM,SAAS,OAAO;AAAA,EAC3C;AACA,QAAM,iBAAiB,MAAM,SAAS,OAAO;AAC7C,SAAO;AACX;AAQA,SAAS,uBAAuB,MAAM,MAAM,YAAY,SAAS;AAE7D,MAAI,QAAQ,KAAK;AACb,SAAK,UAAU,QAAQ;AAAA,EAC3B;AAEA,MAAI,gBAAgB,eAAe,CAAC,MAAM,MAAM,YAAY,OAAO,GAAG;AAClE,UAAM,cAAc,IAAI,YAAY;AACpC,WAAO,YAAY,OAAO,IAAI;AAAA,EAClC;AACA,MAAI,OAAO,SAAS,UAAU;AAE1B,SAAK,OAAO,UAAU,IAAI;AAAA,EAC9B,WACS,gBAAgB,aAAa;AAElC,UAAM,MAAM,CAAC;AACb,iBAAa,aAAa,KAAK,MAAM,YAAY,QAAQ,GAAG;AAC5D,IAAAC,QAAO,IAAI,SAAS,QAAQ,4BAA4B,IAAI,IAAI,EAAE;AAClE,SAAK,OAAO;AACZ,SAAK,OAAO,IAAI;AAAA,EACpB,OACK;AACD,IAAAA,QAAO,OAAO,qCAAqC;AAAA,EACvD;AAGA,QAAM,UAAU,KAAK,KAAK,WAAW,CAAC;AACtC,OAAK,UAAU,IAAI,MAAM,QAAQ,MAAM,EAAE,KAAK,IAAI;AAElD,MAAI,KAAK,QAAQ,KAAK,KAAK,OAAO,aAAa;AAC3C,UAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,SAAK,QAAQ,CAAC,IAAI;AAAA,MACd,aAAa,UAAU,CAAC,EAAE;AAAA,MAC1B,YAAY,UAAU,CAAC,EAAE;AAAA,MACzB,YAAY,UAAU,CAAC,EAAE;AAAA,IAC7B;AAAA,EAIJ;AAEA,QAAM,SAAS,KAAK,KAAK,UAAU,CAAC;AACpC,OAAK,SAAS,IAAI,MAAM,OAAO,MAAM,EAAE,KAAK,CAAC,CAAC;AAClD;AAIA,eAAe,YAAY,MAAM,SAAS,SAAS;AAE/C,QAAM,UAAU,KAAK,KAAK,WAAW,CAAC;AACtC,WAASC,KAAI,GAAGA,KAAI,QAAQ,QAAQ,EAAEA,IAAG;AACrC,UAAM,SAAS,QAAQA,EAAC;AACxB,QAAI,OAAO,KAAK;AACZ,YAAM,EAAE,OAAAC,OAAM,IAAI;AAClB,MAAAF,QAAOE,MAAK;AACZ,YAAM,MAAM,WAAW,OAAO,KAAK,OAAO;AAC1C,YAAM,WAAW,MAAM,SAAS,QAAQ,GAAG;AAC3C,YAAM,cAAc,MAAM,UAAU,cAAc;AAClD,WAAK,QAAQD,EAAC,IAAI;AAAA,QACd;AAAA,QACA,YAAY;AAAA,QACZ,YAAY,YAAY;AAAA,MAC5B;AACA,aAAO,OAAO;AAAA,IAClB,WACS,KAAK,QAAQA,EAAC,MAAM,MAAM;AAC/B,WAAK,QAAQA,EAAC,IAAI;AAAA,QACd,aAAa,IAAI,YAAY,OAAO,UAAU;AAAA,QAC9C,YAAY;AAAA,QACZ,YAAY,OAAO;AAAA,MACvB;AAAA,IACJ;AAAA,EACJ;AACJ;AASA,eAAe,WAAW,MAAM,SAAS,SAAS;AAC9C,QAAM,eAAe,0BAA0B,IAAI;AACnD,QAAM,SAAS,KAAK,KAAK,UAAU,CAAC;AACpC,QAAM,WAAW,CAAC;AAClB,aAAW,cAAc,cAAc;AACnC,aAAS,KAAK,UAAU,MAAM,OAAO,UAAU,GAAG,YAAY,SAAS,OAAO,CAAC;AAAA,EACnF;AACA,SAAO,MAAM,QAAQ,IAAI,QAAQ;AACrC;AAEA,SAAS,0BAA0B,MAAM;AACrC,QAAM,eAAe,oBAAI,IAAI;AAC7B,QAAM,WAAW,KAAK,KAAK,YAAY,CAAC;AACxC,aAAW,WAAW,UAAU;AAC5B,QAAI,QAAQ,WAAW,QAAW;AAC9B,mBAAa,IAAI,QAAQ,MAAM;AAAA,IACnC;AAAA,EACJ;AACA,SAAO,MAAM,KAAK,YAAY,EAAE,KAAK;AACzC;AAEA,eAAe,UAAU,MAAM,OAAO,OAAO,SAAS,SAAS;AAC3D,MAAI;AACJ,MAAI,MAAM,OAAO,CAAC,MAAM,eAAe,YAAY,GAAG;AAClD,UAAM,MAAM,WAAW,MAAM,KAAK,OAAO;AACzC,UAAM,EAAE,OAAAC,OAAM,IAAI;AAClB,UAAM,WAAW,MAAMA,OAAM,GAAG;AAChC,kBAAc,MAAM,SAAS,YAAY;AACzC,UAAM,aAAa;AAAA,MACf,MAAM;AAAA,IACV;AAAA,EACJ;AACA,MAAI,OAAO,SAAS,MAAM,UAAU,GAAG;AACnC,UAAM,QAAQ,2BAA2B,KAAK,MAAM,KAAK,SAAS,MAAM,UAAU;AAClF,kBAAc,iBAAiB,MAAM,QAAQ,MAAM,YAAY,MAAM,UAAU;AAAA,EACnF;AACA,EAAAF,QAAO,aAAa,wBAAwB;AAE5C,MAAI,cAAe,MAAM,iBAAiB,aAAa,CAAC,aAAa,WAAW,GAAG;AAAA,IAC/E,GAAG;AAAA,IACH,UAAU,MAAM;AAAA,IAChB,OAAO,QAAQ,SAAS,EAAE,QAAQ,2BAA2B,EAAE;AAAA,EACnE,GAAG,OAAO;AACV,MAAI,eAAe,YAAY,CAAC,GAAG;AAC/B,kBAAc;AAAA,MACV,YAAY;AAAA;AAAA,MAEZ,SAAS;AAAA,MACT,OAAO,YAAY,CAAC,EAAE;AAAA,MACtB,QAAQ,YAAY,CAAC,EAAE;AAAA,MACvB,MAAM,YAAY,CAAC;AAAA,IACvB;AAAA,EACJ;AAIA,OAAK,SAAS,KAAK,UAAU,CAAC;AAE9B,OAAK,OAAO,KAAK,IAAI;AACzB;;;AC9KO,IAAM,aAAa;AAAA,EACtB,UAAU;AAAA,EACV,WAAW;AAAA,EACX,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,QAAQ;AAAA,EACR,SAASG;AAAA,EACT,YAAY,CAAC,QAAQ,KAAK;AAAA,EAC1B,WAAW,CAAC,mBAAmB,mBAAmB;AAAA,EAClD,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,OAAO,CAAC,MAAM;AAAA,EACd,OAAAC;AAAA,EACA,SAAS;AAAA,IACL,MAAM;AAAA,MACF,WAAW;AAAA;AAAA,MACX,aAAa;AAAA;AAAA,MACb,YAAY;AAAA;AAAA,MACZ,kBAAkB;AAAA;AAAA,IACtB;AAAA;AAAA,IAEA,KAAK;AAAA;AAAA,EACT;AACJ;AACA,eAAsBA,OAAM,aAAa,UAAU,CAAC,GAAG,SAAS;AAE5D,YAAU,EAAE,GAAG,WAAW,SAAS,GAAG,QAAQ;AAE9C,UAAQ,OAAO,EAAE,GAAG,WAAW,QAAQ,MAAM,GAAG,QAAQ,KAAK;AAC7D,QAAM,EAAE,aAAa,EAAE,IAAI;AAC3B,QAAM,OAAO,CAAC;AACd,SAAO,MAAM,UAAU,MAAM,aAAa,YAAY,SAAS,OAAO;AAC1E;;;ACxBA,IAAMC,cAAa;AAAA,EACf,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACV;AACA,IAAMC,SAAQ;AAAA,EACV,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AAAA,EACN,MAAM;AAAA;AACV;AACA,IAAM,aAAa;AAAA;AAAA,EAEf,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA;AAAA,EAEhB,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,uBAAuB;AAC3B;AACA,IAAM,+BAA+B;AAAA,EACjC,WAAW,WAAW;AAAA,EACtB,WAAW,WAAW;AAAA,EACtB,OAAO,WAAW;AAAA,EAClB,OAAO,WAAW;AACtB;AAGA,IAAM,6BAA6B;AAAA,EAC/B,CAAC,WAAW,kBAAkB,GAAG,WAAW;AAAA,EAC5C,CAAC,WAAW,kBAAkB,GAAG,WAAW;AAAA,EAC5C,CAAC,WAAW,cAAc,GAAG,WAAW;AAAA,EACxC,CAAC,WAAW,cAAc,GAAG,WAAW;AAC5C;AACA,SAAS,qBAAqB;AAC1B,SAAO;AAAA,IACH,IAAI;AAAA,IACJ,YAAY;AAAA,EAChB;AACJ;AACA,SAAS,0BAA0B,eAAe;AAC9C,SAAOA,OAAM,aAAa;AAC9B;AACA,SAAS,wBAAwB,MAAM;AACnC,SAAOD,YAAW,IAAI;AAC1B;AACA,IAAM,oBAAN,MAAwB;AAAA,EACpB,UAAU;AAAA;AAAA,EAEV;AAAA;AAAA,EAEA;AAAA,EACA,UAAU,CAAC;AAAA,EACX,SAAS,CAAC;AAAA,EACV,YAAY,MAAM,UAAU,CAAC,GAAG;AAC5B,UAAM,EAAE,MAAM,UAAU,CAAC,GAAG,SAAS,CAAC,EAAE,IAAI;AAE5C,UAAM,EAAE,UAAU,GAAG,IAAI;AACzB,IAAAE,QAAO,IAAI;AACX,SAAK,UAAU;AACf,SAAK,UAAU;AACf,SAAK,SAAS;AACd,SAAK,kBAAkB;AACvB,SAAK,OAAO,KAAK,aAAa,KAAK,MAAM,OAAO;AAChD,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa,MAAM,UAAU,CAAC,GAAG;AAE7B,UAAM,OAAO,EAAE,GAAG,KAAK;AACvB,SAAK,OAAO;AACZ,QAAI,KAAK,aAAa;AAClB,WAAK,cAAc,KAAK,YAAY,IAAI,CAAC,SAASC,OAAM,KAAK,mBAAmB,SAASA,EAAC,CAAC;AAAA,IAC/F;AACA,QAAI,KAAK,QAAQ;AACb,WAAK,SAAS,KAAK,OAAO,IAAI,CAAC,OAAOA,OAAM,KAAK,cAAc,OAAOA,EAAC,CAAC;AAAA,IAC5E;AACA,QAAI,KAAK,UAAU;AACf,WAAK,WAAW,KAAK,SAAS,IAAI,CAAC,SAASA,OAAM,KAAK,gBAAgB,SAASA,EAAC,CAAC;AAAA,IACtF;AACA,QAAI,KAAK,UAAU;AACf,WAAK,WAAW,KAAK,SAAS,IAAI,CAAC,SAASA,OAAM,KAAK,gBAAgB,SAASA,EAAC,CAAC;AAAA,IACtF;AACA,QAAI,KAAK,WAAW;AAChB,WAAK,YAAY,KAAK,UAAU,IAAI,CAAC,UAAUA,OAAM,KAAK,iBAAiB,UAAUA,EAAC,CAAC;AAAA,IAC3F;AACA,QAAI,KAAK,WAAW;AAChB,WAAK,YAAY,KAAK,UAAU,IAAI,CAAC,UAAUA,OAAM,KAAK,iBAAiB,UAAUA,EAAC,CAAC;AAAA,IAC3F;AACA,QAAI,KAAK,QAAQ;AACb,WAAK,SAAS,KAAK,OAAO,IAAI,CAAC,MAAMA,OAAM,KAAK,aAAa,MAAMA,EAAC,CAAC;AAAA,IACzE;AACA,QAAI,KAAK,OAAO;AACZ,WAAK,QAAQ,KAAK,MAAM,IAAI,CAAC,MAAMA,OAAM,KAAK,aAAa,MAAMA,EAAC,CAAC;AACnE,WAAK,QAAQ,KAAK,MAAM,IAAI,CAAC,MAAMA,OAAM,KAAK,qBAAqB,IAAI,CAAC;AAAA,IAC5E;AACA,QAAI,KAAK,OAAO;AACZ,WAAK,QAAQ,KAAK,MAAM,IAAI,CAAC,MAAMA,OAAM,KAAK,aAAa,MAAMA,EAAC,CAAC;AAAA,IACvE;AACA,QAAI,KAAK,QAAQ;AACb,WAAK,SAAS,KAAK,OAAO,IAAI,CAAC,OAAOA,OAAM,KAAK,cAAc,OAAOA,EAAC,CAAC;AAAA,IAC5E;AACA,QAAI,OAAO,KAAK,KAAK,UAAU,YAAY,KAAK,QAAQ;AACpD,WAAK,QAAQ,KAAK,OAAO,KAAK,KAAK,KAAK;AAAA,IAC5C;AACA,WAAO;AAAA,EACX;AAAA,EACA,SAAS,OAAO;AACZ,WAAO,KAAK,KAAK,KAAK,KAAK,QAAQ,KAAK;AAAA,EAC5C;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,KAAK,KAAK,KAAK,OAAO,KAAK;AAAA,EAC3C;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,KAAK,KAAK,KAAK,OAAO,KAAK;AAAA,EAC3C;AAAA,EACA,QAAQ,OAAO;AACX,WAAO,KAAK,KAAK,KAAK,KAAK,QAAQ,KAAK;AAAA,EAC5C;AAAA,EACA,YAAY,OAAO;AACf,WAAO,KAAK,KAAK,KAAK,KAAK,WAAW,KAAK;AAAA,EAC/C;AAAA,EACA,YAAY,OAAO;AACf,WAAO,KAAK,KAAK,KAAK,KAAK,WAAW,KAAK;AAAA,EAC/C;AAAA,EACA,UAAU,OAAO;AACb,WAAO,KAAK,KAAK,KAAK,KAAK,SAAS,KAAK;AAAA,EAC7C;AAAA,EACA,WAAW,OAAO;AACd,WAAO,KAAK,KAAK,KAAK,KAAK,UAAU,KAAK;AAAA,EAC9C;AAAA,EACA,WAAW,OAAO;AACd,WAAO,KAAK,KAAK,KAAK,KAAK,UAAU,KAAK;AAAA,EAC9C;AAAA,EACA,SAAS,OAAO;AACZ,WAAO,KAAK,KAAK,KAAK,KAAK,QAAQ,KAAK;AAAA,EAC5C;AAAA,EACA,cAAc,OAAO;AACjB,WAAO,KAAK,KAAK,KAAK,KAAK,aAAa,KAAK;AAAA,EACjD;AAAA,EACA,UAAU,OAAO;AACb,WAAO,KAAK,KAAK,KAAK,KAAK,SAAS,KAAK;AAAA,EAC7C;AAAA,EACA,KAAK,OAAO,OAAO;AAEf,QAAI,OAAO,UAAU,UAAU;AAC3B,aAAO;AAAA,IACX;AACA,UAAM,SAAS,SAAS,MAAM,KAAK;AACnC,QAAI,CAAC,QAAQ;AACT,cAAQ,KAAK,mCAAmC,KAAK,IAAI,KAAK,GAAG;AAAA,IACrE;AACA,WAAO;AAAA,EACX;AAAA;AAAA,EAEA,cAAc,OAAO,OAAO;AACxB,WAAO;AAAA,MACH,GAAG;AAAA;AAAA,MAEH,IAAI,MAAM,MAAM,SAAS,KAAK;AAAA,MAC9B,QAAQ,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC;AAAA,IAC/D;AAAA,EACJ;AAAA,EACA,aAAa,UAAU,OAAO;AAE1B,UAAM,OAAO;AAAA,MACT,GAAG;AAAA;AAAA,MAEH,IAAI,UAAU,MAAM,QAAQ,KAAK;AAAA,IACrC;AACA,QAAI,SAAS,SAAS,QAAW;AAC7B,WAAK,OAAO,KAAK,QAAQ,SAAS,IAAI;AAAA,IAC1C;AACA,QAAI,SAAS,WAAW,QAAW;AAC/B,WAAK,SAAS,KAAK,UAAU,SAAS,MAAM;AAAA,IAChD;AACA,QAAI,SAAS,SAAS,QAAW;AAC7B,WAAK,OAAO,KAAK,QAAQ,SAAS,IAAI;AAAA,IAC1C;AAGA,QAAI,SAAS,WAAW,UAAa,SAAS,OAAO,QAAQ;AAEzD,WAAK,OAAO,SAAS,OAAO,OAAO,CAAC,OAAO,cAAc;AACrD,cAAM,OAAO,KAAK,QAAQ,SAAS;AACnC,cAAM,KAAK,KAAK;AAChB,cAAM,aAAa,MAAM,WAAW,OAAO,KAAK,UAAU;AAC1D,eAAO;AAAA,MACX,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACX;AAAA,EACA,qBAAqB,MAAM;AACvB,QAAI,KAAK,UAAU;AAEf,WAAK,WAAW,KAAK,SAAS,IAAI,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC;AAAA,IACpE;AACA,WAAO;AAAA,EACX;AAAA,EACA,aAAa,UAAU,OAAO;AAC1B,UAAM,sBAAsB,OAAO,SAAS,wBAAwB,WAC9D,KAAK,YAAY,SAAS,mBAAmB,IAC7C;AACN,WAAO;AAAA,MACH,GAAG;AAAA,MACH,IAAI,SAAS,MAAM,QAAQ,KAAK;AAAA,MAChC;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,aAAa,UAAU,OAAO;AAC1B,UAAM,OAAO;AAAA,MACT,GAAG;AAAA,MACH,IAAI,SAAS,MAAM,QAAQ,KAAK;AAAA,MAChC,YAAY,CAAC;AAAA,IACjB;AACA,QAAI,SAAS,YAAY;AACrB,WAAK,aAAa,SAAS,WAAW,IAAI,CAAC,kBAAkB;AACzD,cAAM,YAAY;AAAA,UACd,GAAG;AAAA,UACH,YAAY,CAAC;AAAA,UACb,SAAS;AAAA,UACT,UAAU;AAAA,QACd;AACA,cAAM,aAAa,cAAc;AACjC,mBAAW,aAAa,YAAY;AAChC,oBAAU,WAAW,SAAS,IAAI,KAAK,YAAY,WAAW,SAAS,CAAC;AAAA,QAC5E;AACA,YAAI,cAAc,YAAY,QAAW;AACrC,oBAAU,UAAU,KAAK,YAAY,cAAc,OAAO;AAAA,QAC9D;AACA,YAAI,cAAc,aAAa,QAAW;AACtC,oBAAU,WAAW,KAAK,YAAY,cAAc,QAAQ;AAAA,QAChE;AACA,eAAO;AAAA,MACX,CAAC;AAAA,IACL;AACA,WAAO;AAAA,EACX;AAAA,EACA,iBAAiB,cAAc,OAAO;AAElC,UAAM,WAAW;AAAA,MACb,GAAG;AAAA;AAAA,MAEH,IAAI,aAAa,MAAM,YAAY,KAAK;AAAA,IAC5C;AACA,QAAI,SAAS,eAAe;AACxB,eAAS,gBAAgB,EAAE,GAAG,SAAS,cAAc;AACrD,eAAS,cAAc,UAAU,KAAK,WAAW,SAAS,cAAc,KAAK;AAAA,IACjF;AACA,QAAI,SAAS,kBAAkB;AAC3B,eAAS,mBAAmB,EAAE,GAAG,SAAS,iBAAiB;AAC3D,eAAS,iBAAiB,UAAU,KAAK,WAAW,SAAS,iBAAiB,KAAK;AAAA,IACvF;AACA,QAAI,SAAS,iBAAiB;AAC1B,eAAS,kBAAkB,EAAE,GAAG,SAAS,gBAAgB;AACzD,eAAS,gBAAgB,UAAU,KAAK,WAAW,SAAS,gBAAgB,KAAK;AAAA,IACrF;AACA,QAAI,CAAC,SAAS,gBAAgB;AAC1B,eAAS,iBAAiB,SAAS,kBAAkB,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;AAAA,IAC7E;AACA,QAAI,SAAS,sBAAsB;AAC/B,eAAS,uBAAuB,EAAE,GAAG,SAAS,qBAAqB;AACnE,YAAM,KAAK,SAAS;AACpB,UAAI,GAAG,kBAAkB;AACrB,WAAG,mBAAmB,EAAE,GAAG,GAAG,iBAAiB;AAC/C,WAAG,iBAAiB,UAAU,KAAK,WAAW,GAAG,iBAAiB,KAAK;AAAA,MAC3E;AACA,UAAI,GAAG,0BAA0B;AAC7B,WAAG,2BAA2B,EAAE,GAAG,GAAG,yBAAyB;AAC/D,WAAG,yBAAyB,UAAU,KAAK,WAAW,GAAG,yBAAyB,KAAK;AAAA,MAC3F;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,iBAAiB,cAAc,OAAO;AAElC,UAAM,oBAAoB,0BAA0B,aAAa,aAAa;AAC9E,UAAM,aAAa,wBAAwB,aAAa,IAAI;AAC5D,UAAM,kBAAkB,oBAAoB;AAC5C,UAAM,WAAW;AAAA,MACb,GAAG;AAAA;AAAA,MAEH,IAAI,aAAa,MAAM,YAAY,KAAK;AAAA,MACxC;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,QAAQ;AAAA,IACZ;AACA,QAAI,aAAa,eAAe,QAAW;AAEvC,eAAS,aAAa,KAAK,cAAc,aAAa,UAAU;AAAA,IACpE;AAIA,QAAI,SAAS,YAAY;AACrB,YAAM,SAAS,SAAS,WAAW;AACnC,YAAM,EAAE,WAAW,WAAW,IAAI,8BAA8B,UAAU,SAAS,UAAU;AAC7F,YAAM,cAAc,SAAS,WAAW,cAAc,MAAM,SAAS,cAAc,KAAK,OAAO;AAC/F,UAAI,YAAY,OAAO,YAAY,MAAM,YAAY,aAAa,UAAU;AAC5E,UAAI,SAAS,WAAW,YAAY;AAChC,oBAAY,KAAK,+BAA+B,QAAQ,YAAY,SAAS,WAAW,YAAY,SAAS,iBAAiB,SAAS,KAAK;AAAA,MAChJ;AACA,eAAS,QAAQ,IAAI,UAAU,SAAS;AAAA,IAC5C;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,+BAA+B,QAAQ,YAAY,YAAY,iBAAiB,OAAO;AACnF,UAAM,SAAS,IAAI,WAAW,QAAQ,eAAe;AACrD,aAASA,KAAI,GAAGA,KAAI,OAAOA,MAAK;AAC5B,YAAM,gBAAgB,aAAaA,KAAI;AACvC,aAAO,IAAI,IAAI,WAAW,OAAO,YAAY,MAAM,eAAe,gBAAgB,eAAe,CAAC,GAAGA,KAAI,eAAe;AAAA,IAC5H;AACA,WAAO,OAAO;AAAA,EAClB;AAAA,EACA,gBAAgB,aAAa,OAAO;AAChC,WAAO;AAAA,MACH,GAAG;AAAA;AAAA,MAEH,IAAI,YAAY,MAAM,WAAW,KAAK;AAAA,MACtC,SAAS,OAAO,YAAY,YAAY,WAClC,KAAK,WAAW,YAAY,OAAO,IACnC,mBAAmB;AAAA,MACzB,QAAQ,OAAO,YAAY,WAAW,WAAW,KAAK,SAAS,YAAY,MAAM,IAAI;AAAA,IACzF;AAAA,EACJ;AAAA,EACA,gBAAgB,aAAa,OAAO;AAChC,UAAM,UAAU;AAAA;AAAA,MAEZ,IAAI,YAAY,MAAM,WAAW,KAAK;AAAA,MACtC,GAAG;AAAA,MACH,YAAY,CAAC;AAAA,IACjB;AAEA,eAAW,OAAO,SAAS;AACvB,YAAM,SAAS,KAAK,sBAAsB,GAAG;AAC7C,UAAI,WAAW,QAAW;AACtB,gBAAQ,WAAW,MAAM,IAAI,QAAQ,GAAG;AAAA,MAC5C;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,sBAAsB,KAAK;AACvB,WAAO,6BAA6B,GAAG;AAAA,EAC3C;AAAA,EACA,cAAc,WAAW,OAAO;AAC5B,UAAM,QAAQ;AAAA,MACV,GAAG;AAAA;AAAA,MAEH,IAAI,UAAU,MAAM,SAAS,KAAK;AAAA,MAClC,OAAO;AAAA,MACP,YAAY,UAAU,eAAe,SAAY,KAAK,cAAc,UAAU,UAAU,IAAI;AAAA,IAChG;AAGA,UAAM,iBAAiB,KAAK,OAAO,KAAK;AACxC,QAAI,gBAAgB;AAChB,YAAM,QAAQ;AAAA,IAClB;AACA,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,gBAAgB,OAAO;AACtC,UAAM,cAAc,eAAe;AACnC,UAAM,cAAc,KAAK,QAAQ,WAAW,EAAE;AAE9C,QAAI,aAAa,KAAK,QAAQ,WAAW,EAAE,cAAc;AACzD,QAAI,eAAe,YAAY;AAC3B,oBAAc,eAAe;AAAA,IACjC;AACA,UAAM,aAAa;AAAA;AAAA,MAEf,IAAI,cAAc,KAAK;AAAA,MACvB,GAAG;AAAA;AAAA,MAEH,QAAQ,KAAK,QAAQ,WAAW;AAAA,MAChC,MAAM,IAAI,WAAW,aAAa,YAAY,eAAe,UAAU;AAAA,IAC3E;AACA,WAAO;AAAA,EACX;AAAA,EACA,eAAe,YAAY,OAAO;AAC9B,UAAM,SAAS;AAAA,MACX,GAAG;AAAA;AAAA,MAEH,IAAI,WAAW,MAAM,UAAU,KAAK;AAAA,IACxC;AAEA,QAAI,OAAO,aAAa;AAAA,IAExB;AACA,QAAI,OAAO,cAAc;AAAA,IAEzB;AACA,WAAO;AAAA,EACX;AACJ;AACO,SAAS,gBAAgB,MAAM,SAAS;AAC3C,SAAO,IAAI,kBAAkB,EAAE,YAAY,MAAM,OAAO;AAC5D;;;ACxXM,SAAU,SAASC,SAKxB;AACG,SAAO,IAAI,QAAc,SAAUC,UAAS,QAAM;AAC9C,QAAID,QAAO,WAAW,WAAW;AAC7B,YAAM,IAAI,SAAS,8BAA8B;IACrD;AACA,QAAIA,QAAO,WAAW,OAAO;AACzB,YAAM,IAAI,SAAS,0BAA0B;IACjD;AACA,QAAIA,QAAO,WAAW;AAClB,UAAIA,QAAO,UAAU,WAAW;AAC5B,cAAM,IAAI,SAAS,6BAA6B;MACpD;AACA,UAAIA,QAAO,UAAU,OAAO;AACxB,cAAM,IAAI,SAAS,yBAAyB;MAChD;IACJ;AACA,UAAMA,QAAO,UAAU,YAAY;MAC/B,YAAY;KACf,EAAE,KAAK,CAAC,aAAY;AACjB,YAAM,gBAAgB,gBAAgB,QAAQ;AAC9C,YAAM,MAAsB;QACxB,UAAU;QACV,QAAQ;QACR,KAAMA,QAAO,OAAO,SAAU,KAAW;QACzC;QACA,OAAO,SAAU,KAAG;AAChB,kBAAQ,MAAM,GAAG;QACrB;QACA,WAAWA,QAAO;QAClB,YAAYA,QAAO;QACnB,eAAe,CAAA;;AAEnB,oBAAc,GAAG;AACjB,qBAAe,GAAG;AAClB,wBAAkB,GAAG;AACrB,MAAAC,SAAO;IACX,GAAG,CAAC,WAAU;AACV,aAAO,IAAI,SAAS,uBAAuB,MAAM,EAAE,CAAC;IACxD,CAAC;EACL,CAAC;AACL;AAEA,SAAS,cAAc,KAAQ;AAC3B,MAAI,CAAC,IAAI,YAAY;AACjB;EACJ;AACA,QAAM,WAAW,IAAI;AACrB,QAAM,WAAW,SAAS;AAC1B,MAAI,UAAU;AACV,aAASC,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,mBAAa,KAAK,SAASA,EAAC,CAAC;IACjC;EACJ;AACJ;AAEA,SAAS,aAAa,KAAU,SAAY;AACxC,MAAI,CAAC,QAAQ,UAAU,CAAC,QAAQ,OAAO,OAAO;AAC1C;EACJ;AACA,QAAM,YAAY,WAAW,IAAI,QAAQ;AACzC,MAAI,YAAY;AAChB,UAAQ,QAAQ,QAAQ,WAAW;IAC/B,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;EACR;AACA,MAAI,YAAY;AAChB,UAAQ,QAAQ,QAAQ,WAAW;IAC/B,KAAK;AACD,kBAAY;AACZ;IACJ,KAAK;AACD,kBAAY;AACZ;EACR;AACA,MAAI,QAAQ;AACZ,UAAQ,QAAQ,QAAQ,OAAO;IAC3B,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;EACR;AACA,MAAI,QAAQ;AACZ,UAAQ,QAAQ,QAAQ,OAAO;IAC3B,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;EACR;AACA,MAAI,QAAQ;AACZ,UAAQ,QAAQ,QAAQ,OAAO;IAC3B,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;IACJ,KAAK;AACD,cAAQ;AACR;EACR;AACA,MAAI,WAAW,cAAc;IACzB,IAAI;IACJ,WAAW,QAAQ,OAAO;IAC1B,WAAW,QAAQ,OAAO;IAC1B,YAAY;IACZ,OAAO,QAAQ,OAAO,MAAM;IAC5B,QAAQ,QAAQ,OAAO,MAAM;IAC7B;IACA;IACA;IACA;IACA;IACA,OAAO,CAAC,CAAC,QAAQ;;GAEpB;AACD,UAAQ,aAAa;AACzB;AAEA,SAAS,eAAe,KAAmB;AACvC,MAAI,CAAC,IAAI,YAAY;AACjB;EACJ;AACA,QAAM,WAAW,IAAI;AACrB,QAAM,YAAY,SAAS;AAC3B,MAAI,WAAW;AACX,aAASA,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,YAAM,WAAW,UAAUA,EAAC;AAC5B,eAAS,gBAAgB,gBAAgB,KAAK,QAAQ;AACtD,eAAS,cAAc,wBAAwB,KAAK,QAAQ;IAChE;EACJ;AACJ;AAEA,SAAS,gBAAgB,KAAqB,UAAa;AAGvD,QAAM,gBAAuC;;IAEzC,IAAI;IACJ,oBAAoB;IACpB,mBAAmB;IACnB,gBAAgB;IAChB,4BAA4B;;AAEhC,MAAI,SAAS,kBAAkB;AAC3B,kBAAc,qBAAqB,SAAS,iBAAiB,QAAQ;EACzE;AACA,MAAI,SAAS,iBAAiB;AAC1B,kBAAc,oBAAoB,SAAS,gBAAgB,QAAQ;EACvE;AAkBA,QAAM,cAAc,SAAS;AAC7B,MAAI,SAAS,sBAAsB;AAC/B,UAAM,uBAAuB,SAAS;AACtC,UAAM,mBAAmB,qBAAqB,oBAAoB,qBAAqB;AACvF,QAAI,kBAAkB;AAClB,UAAI,iBAAiB,SAAS;AAC1B,sBAAc,iBAAiB,iBAAiB,QAAQ;MAC5D,OAAO;AACH,sBAAc,iBAAiB,IAAI,SAAS,SAAS,iBAAiB,KAAK,EAAE;MACjF;IACJ;AACA,QAAI,YAAY,0BAA0B;AACtC,oBAAc,6BAA6B,YAAY,yBAAyB,QAAQ;IAC5F;EACJ;AACA,QAAM,aAAa,SAAS;AAC5B,MAAI,YAAY;AACZ,UAAM,cAAc,WAAW,qCAAqC;AACpE,QAAI,aAAa;AACb,YAAM,kBAAkB,YAAY;AACpC,UAAI,oBAAoB,QAAQ,oBAAoB,QAAW;MAE/D;AACA,YAAM,uBAAuB,YAAY;AACzC,UAAI,yBAAyB,QAAQ,yBAAyB,QAAW;AACrE,sBAAc,iBAAiB,IAAI,SAAS,SAAS,qBAAqB,KAAK,EAAE;MACrF;IACJ;EACJ;AACA,MAAI,cAAc,uBAAuB,UACrC,cAAc,sBAAsB,UACpC,cAAc,mBAAmB,UACjC,cAAc,+BAA+B,QAAW;AACxD,kBAAc,KAAK,cAAc,IAAI,QAAQ;AAE7C,QAAI,WAAW,iBAAiB,aAAa;AAC7C,WAAO,cAAc;EACzB;AACA,SAAO;AACX;AAEA,SAAS,wBAAwB,KAAqB,UAAa;AAC/D,QAAM,aAAa,SAAS;AAC5B,QAAM,qBAAqB;IACvB,OAAO,IAAI,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IACpC,SAAS;IACT,UAAU;IACV,WAAW;;AAEf,MAAI,YAAY;AACZ,UAAM,cAAc,WAAW,qCAAqC;AACpE,QAAI,aAAa;AACb,YAAM,gBAAgB,YAAY;AAClC,UAAI,kBAAkB,QAAQ,kBAAkB,QAAW;AACvD,2BAAmB,MAAM,IAAI,aAAa;MAC9C;IACJ;AACA,UAAMC,UAAS,WAAW,sBAAsB;AAChD,QAAIA,SAAQ;AACR,YAAM,YAAYA,QAAO;AACzB,YAAM,SAASA,QAAO,UAAU,CAAA;AAChC,YAAM,QAAQ,cAAc;AAC5B,YAAM,QAAQ,cAAc;AAC5B,YAAM,UAAU,cAAc;AAC9B,YAAM,UAAU,OAAO;AACvB,UAAI,YAAY,SAAS,SAAS,UAAU;AACxC,YAAI,CAAC,SAAS,OAAO,GAAG;AACpB,6BAAmB,MAAM,IAAI,OAAO;QACxC;MACJ;AACA,YAAM,eAAe,OAAO;AAC5B,UAAI,iBAAiB,QAAQ,iBAAiB,QAAW;AACrD,2BAAmB,UAAU;MACjC;AACA,YAAM,cAAc,OAAO;AAC3B,UAAI,gBAAgB,QAAQ,gBAAgB,QAAW;AACnD,2BAAmB,UAAU;MACjC;IACJ;EACJ;AACA,QAAM,cAAc,SAAS;AAC7B,MAAI,aAAa;AACb,UAAM,kBAAkB,YAAY;AACpC,QAAI,iBAAiB;AACjB,yBAAmB,MAAM,CAAC,IAAI,gBAAgB,CAAC;AAC/C,yBAAmB,MAAM,CAAC,IAAI,gBAAgB,CAAC;AAC/C,yBAAmB,MAAM,CAAC,IAAI,gBAAgB,CAAC;AAC/C,yBAAmB,UAAU,gBAAgB,CAAC;IAClD;AACA,UAAM,iBAAiB,YAAY;AACnC,QAAI,mBAAmB,QAAQ,mBAAmB,QAAW;AACzD,yBAAmB,WAAW;IAClC;AACA,UAAM,kBAAkB,YAAY;AACpC,QAAI,oBAAoB,QAAQ,oBAAoB,QAAW;AAC3D,yBAAmB,YAAY;IACnC;EACJ;AACA,SAAO;AACX;AAEA,SAAS,kBAAkB,KAAmB;AAC1C,QAAM,WAAW,IAAI;AACrB,QAAM,QAAQ,SAAS,SAAS,SAAS,OAAO,CAAC;AACjD,MAAI,CAAC,OAAO;AACR,QAAI,MAAM,2BAA2B;AACrC;EACJ;AACA,aAAW,KAAK,KAAK;AACzB;AAEA,SAAS,WAAW,KAAqB,OAAU;AAC/C,QAAM,QAAQ,MAAM;AACpB,MAAI,CAAC,OAAO;AACR;EACJ;AACA,WAASD,KAAI,GAAG,MAAM,MAAM,QAAQA,KAAI,KAAKA,MAAK;AAC9C,UAAM,OAAO,MAAMA,EAAC;AACpB,cAAU,KAAK,MAAM,GAAG,IAAI;EAChC;AACJ;AAEA,IAAM,kBAA4B,CAAA;AAElC,SAAS,UAAU,KAAqB,MAAW,OAAe,QAA8B;AAI5F,MAAI;AACJ,MAAI,KAAK,QAAQ;AACb,kBAAc,KAAK;AACnB,QAAI,QAAQ;AACR,eAAS,QAAQ,QAAQ,aAAa,WAAU,CAAE;IACtD,OAAO;AACH,eAAS;IACb;EACJ;AACA,MAAI,KAAK,aAAa;AAClB,kBAAc,iBAAiB,KAAK,WAAW;AAC/C,QAAI,QAAQ;AACR,eAAS,QAAQ,QAAQ,aAAa,WAAU,CAAE;IACtD,OAAO;AACH,eAAS;IACb;EACJ;AACA,MAAI,KAAK,UAAU;AACf,kBAAc,WAAW,KAAK,QAAQ;AACtC,QAAI,QAAQ;AACR,eAAS,QAAQ,QAAQ,aAAa,WAAU,CAAE;IACtD,OAAO;AACH,eAAS;IACb;EACJ;AACA,MAAI,KAAK,OAAO;AACZ,kBAAc,aAAa,KAAK,KAAK;AACrC,QAAI,QAAQ;AACR,eAAS,QAAQ,QAAQ,aAAa,WAAU,CAAE;IACtD,OAAO;AACH,eAAS;IACb;EACJ;AAEA,MAAI,KAAK,MAAM;AAEX,UAAM,OAAO,KAAK;AAClB,UAAM,gBAAgB,KAAK,WAAW;AAEtC,QAAI,gBAAgB,GAAG;AACnB,eAASA,KAAI,GAAGA,KAAI,eAAeA,MAAK;AACpC,cAAM,YAAY,KAAK,WAAWA,EAAC;AACnC,YAAI,CAAC,UAAU,aAAa;AACxB,gBAAM,aAAa,cAAc,IAAI;AAErC,gBAAM,iBAAsC;YACxC,IAAI;YACJ,WAAW;;YAEX,WAAW;;AAEf,kBAAQ,UAAU,MAAM;YACpB,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ,KAAK;AACD,6BAAe,YAAY;AAC3B;YACJ;AACI,6BAAe,YAAY;UACnC;AACA,gBAAM,WAAW,UAAU,WAAW;AACtC,cAAI,CAAC,UAAU;AACX;UACJ;AACA,yBAAe,YAAY,UAAU,WAAW,SAAS;AACzD,cAAI,UAAU,WAAW,SAAS;AAC9B,2BAAe,SAAS,UAAU,WAAW,QAAQ;UACzD;AACA,cAAI,UAAU,WAAW,YAAY;AACjC,2BAAe,MAAM,UAAU,WAAW,WAAW;UACzD;AACA,cAAI,UAAU,SAAS;AACnB,2BAAe,UAAU,UAAU,QAAQ;UAC/C;AAEA,cAAI,WAAW,eAAe,cAAc;AAC5C,oBAAU,cAAc;QAC5B;AAEA,cAAM,SAAS,GAAG,IAAI,QAAQ;AAC9B,cAAM,aAA8B;UAChC,IAAI;UACJ,YAAY,UAAU;UACtB,QAAQ,SAAS,OAAO,MAAK,IAAK,aAAY;UAC9C,cAAc;;AAElB,cAAM,WAAW,UAAU;AAC3B,YAAI,UAAU;AAEV,qBAAW,QAAQ,SAAS,YAAY;AACxC,qBAAW,UAAU,SAAS,YAAY;QAG9C,OAAO;AACH,qBAAW,QAAQ,CAAC,GAAK,GAAK,CAAG;AACjC,qBAAW,UAAU;QACzB;AAEA,YAAI,WAAW,WAAW,UAAU;AACpC,wBAAgB,KAAK,MAAM;MAC/B;IACJ;EACJ;AAIA,MAAI,KAAK,UAAU;AACf,UAAM,WAAW,KAAK;AACtB,aAASA,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,YAAM,YAAY,SAASA,EAAC;AAC5B,gBAAU,KAAK,WAAW,QAAQ,GAAG,MAAM;IAC/C;EACJ;AAIA,QAAM,WAAW,KAAK;AACtB,OAAM,aAAa,UAAa,aAAa,QAAS,UAAU,MAAM,gBAAgB,SAAS,GAAG;AAC9F,QAAI,aAAa,UAAa,aAAa,MAAM;AAC7C,UAAI,IAAI,qGAAqG;IACjH;AACA,QAAI,WAAW;AACf,QAAI,CAAC,CAAC,YAAY,IAAI,cAAc,QAAQ,GAAG;AAC3C,UAAI,IAAI,sEAAsE,QAAQ,iDAAiD;IAC3I;AACA,WAAO,CAAC,YAAY,IAAI,cAAc,QAAQ,GAAG;AAC7C,iBAAW,YAAY,IAAI;IAC/B;AAEA,QAAI,WAAW,aAAa;MACxB,IAAI;MACJ,SAAS;KACZ;AACD,QAAI,cAAc,QAAQ,IAAI;AAC9B,oBAAgB,SAAS;EAE7B;AACJ;;;ACvhBA,IAAAE,iBAAA;SAAAA,gBAAA;;;;;;ACOM,SAAU,WAAW,iBAAgC;AAEvD,WAASC,SAAQ,OAAY,SAAa;AAEtC,WAAQ,MAAM,WAAW,IAAK,CAAA,IAAU,UAAQ,OAAO,OAAO,EAAE;EACpE;AAGA,SAAgB;IACZ,UAAU,KAAK,MAAW,UAAQ,gBAAgB,UAAU,EAAC,IAAI,SAAQ,CAAC,CAAC;IAC3E,aAAa,IAAI,WAAWA,SAAQ,gBAAgB,WAAW,CAAC;;IAChE,wBAAwB,IAAI,YAAYA,SAAQ,gBAAgB,sBAAsB,CAAC;IACvF,uBAAuB,IAAI,YAAYA,SAAQ,gBAAgB,qBAAqB,CAAC;IACrF,WAAW,IAAI,YAAYA,SAAQ,gBAAgB,SAAS,CAAC;IAC7D,SAAS,IAAI,UAAUA,SAAQ,gBAAgB,OAAO,CAAC;IACvD,QAAQ,IAAI,WAAWA,SAAQ,gBAAgB,MAAM,CAAC;IACtD,KAAK,IAAI,aAAaA,SAAQ,gBAAgB,GAAG,CAAC;IAClD,SAAS,IAAI,YAAYA,SAAQ,gBAAgB,OAAO,CAAC;IACzD,aAAa,IAAI,YAAYA,SAAQ,gBAAgB,WAAW,CAAC;IACjE,wBAAwB,IAAI,WAAWA,SAAQ,gBAAgB,sBAAsB,CAAC;IACtF,UAAU,IAAI,aAAaA,SAAQ,gBAAgB,QAAQ,CAAC;IAC5D,8BAA8B,IAAI,aAAaA,SAAQ,gBAAgB,4BAA4B,CAAC;IACpG,2BAA2B,IAAI,WAAWA,SAAQ,gBAAgB,yBAAyB,CAAC;IAC5F,8BAA8B,IAAI,YAAYA,SAAQ,gBAAgB,4BAA4B,CAAC;IACnG,4BAA4B,IAAI,YAAYA,SAAQ,gBAAgB,0BAA0B,CAAC;IAC/F,2BAA2B,IAAI,YAAYA,SAAQ,gBAAgB,yBAAyB,CAAC;IAC7F,wBAAwB,IAAI,YAAYA,SAAQ,gBAAgB,sBAAsB,CAAC;IACvF,4BAA4B,IAAI,YAAYA,SAAQ,gBAAgB,0BAA0B,CAAC;IAC/F,gCAAgC,IAAI,YAAYA,SAAQ,gBAAgB,8BAA8B,CAAC;IACvG,2BAA2B,IAAI,YAAYA,SAAQ,gBAAgB,yBAAyB,CAAC;IAC7F,yBAAyB,IAAI,YAAYA,SAAQ,gBAAgB,uBAAuB,CAAC;IACzF,oBAAoB,IAAI,WAAWA,SAAQ,gBAAgB,kBAAkB,CAAC;;IAC9E,4BAA4B,IAAI,WAAWA,SAAQ,gBAAgB,0BAA0B,CAAC;IAC9F,cAAc,KAAK,MAAW,UAAQ,gBAAgB,cAAc,EAAC,IAAI,SAAQ,CAAC,CAAC;IACnF,yBAAyB,IAAI,YAAYA,SAAQ,gBAAgB,uBAAuB,CAAC;IACzF,cAAc,IAAI,aAAaA,SAAQ,gBAAgB,YAAY,CAAC;IACpE,yBAAyB,IAAI,YAAYA,SAAQ,gBAAgB,uBAAuB,CAAC;;AAEjG;;;ACxCM,SAAU,UAAU,aAAwB;AAE9C,QAAM,WAAW,IAAI,SAAS,WAAW;AACzC,QAAM,YAAY,IAAI,WAAW,WAAW;AAC5C,QAAM,aAAa,SAAS,UAAU,GAAG,IAAI;AAC7C,QAAM,cAAc,SAAS,UAAU,GAAG,IAAI;AAE9C,UAAQ,IAAI,gBAAgB,UAAU,EAAE;AACxC,QAAM,WAAW,CAAA;AACjB,MAAI,cAAc,cAAc,KAAK;AACrC,WAASC,KAAI,GAAGA,KAAI,aAAaA,MAAK;AAClC,UAAM,cAAc,SAAS,WAAWA,KAAI,KAAK,GAAG,IAAI;AACxD,aAAS,KAAK,UAAU,SAAS,YAAY,aAAa,WAAW,CAAC;AACtE,kBAAc;EAClB;AAEA,MAAIA,KAAI;AAER,SAAwB;IACpB,UAAU,SAASA,IAAG;IACtB,aAAa,SAASA,IAAG;IACzB,wBAAwB,SAASA,IAAG;IACpC,uBAAuB,SAASA,IAAG;IACnC,WAAW,SAASA,IAAG;IACvB,SAAS,SAASA,IAAG;IACrB,QAAQ,SAASA,IAAG;IACpB,KAAK,SAASA,IAAG;IACjB,SAAS,SAASA,IAAG;IACrB,aAAa,SAASA,IAAG;IACzB,wBAAwB,SAASA,IAAG;IACpC,UAAU,SAASA,IAAG;IACtB,8BAA8B,SAASA,IAAG;IAC1C,2BAA2B,SAASA,IAAG;IACvC,8BAA8B,SAASA,IAAG;IAC1C,4BAA4B,SAASA,IAAG;IACxC,2BAA2B,SAASA,IAAG;IACvC,wBAAwB,SAASA,IAAG;IACpC,4BAA4B,SAASA,IAAG;IACxC,gCAAgC,SAASA,IAAG;IAC5C,2BAA2B,SAASA,IAAG;IACvC,yBAAyB,SAASA,IAAG;IACrC,oBAAoB,SAASA,IAAG;IAChC,4BAA4B,SAASA,IAAG;IACxC,cAAc,SAASA,IAAG;IAC1B,yBAAyB,SAASA,IAAG;IACrC,cAAc,SAASA,IAAG;IAC1B,yBAAyB,SAASA,IAAG;;AAE7C;;;ACvCA,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAE5B,IAAM,yBAAyB;AAE/B,SAAS,iBAAiB,WAAW,SAAO;AACxC,QAAM,eAAe,CAAA;AACrB,MAAI,QAAQ,SAAS,GAAG;AACpB,aAASC,KAAI,GAAG,MAAM,QAAQ,SAAS,GAAGA,KAAI,KAAKA,MAAK;AACpD,mBAAa,KAAK,QAAQA,EAAC,CAAC;AAC5B,mBAAa,KAAK,QAAQA,KAAI,CAAC,CAAC;IACpC;EACJ,WAAW,UAAU,SAAS,GAAG;AAC7B,aAASA,KAAI,GAAG,MAAO,UAAU,SAAS,IAAK,GAAGA,KAAI,KAAKA,MAAK;AAC5D,mBAAa,KAAKA,EAAC;AACnB,mBAAa,KAAKA,KAAI,CAAC;IAC3B;EACJ;AACA,SAAO;AACX;AAEA,IAAMC,mBAAmB,WAAA;AACrB,QAAM,aAAa,IAAI,aAAa,CAAC;AACrC,SAAO,SAAU,UAAyB;AACtC,eAAW,CAAC,IAAI,SAAS,CAAC,IAAI;AAC9B,eAAW,CAAC,IAAI,SAAS,CAAC,IAAI;AAC9B,eAAW,CAAC,IAAI,SAAS,CAAC,IAAI;AAC9B,WAAO;EACX;AACJ,EAAE;AAKI,SAAU,WAAWC,SAG1B;AAEG,MAAI,SAAS;AAEb,QAAM,YAAY,MAAK;AACnB,WAAO,GAAG,QAAQ;EACtB;AAEA,QAAM,UAAUA,QAAO;AACvB,QAAM,aAAaA,QAAO;AAE1B,QAAM,cAAc,UAAS;AAG7B,QAAM,cAAc,QAAQ;AAC5B,QAAM,yBAAyB,QAAQ;AACvC,QAAM,wBAAwB,QAAQ;AACtC,QAAM,YAAY,QAAQ;AAC1B,QAAM,UAAU,QAAQ;AACxB,QAAM,SAAS,QAAQ;AACvB,QAAM,MAAM,QAAQ;AACpB,QAAM,UAAU,QAAQ;AACxB,QAAM,cAAc,QAAQ;AAC5B,QAAM,yBAAyB,QAAQ;AACvC,QAAM,WAAW,QAAQ;AACzB,QAAM,+BAA+B,QAAQ;AAC7C,QAAM,4BAA4B,QAAQ;AAC1C,QAAM,+BAA+B,QAAQ;AAC7C,QAAM,6BAA6B,QAAQ;AAC3C,QAAM,4BAA4B,QAAQ;AAC1C,QAAM,yBAAyB,QAAQ;AACvC,QAAM,6BAA6B,QAAQ;AAC3C,QAAM,iCAAiC,QAAQ;AAC/C,QAAM,4BAA4B,QAAQ;AAC1C,QAAM,0BAA0B,QAAQ;AACxC,QAAM,qBAAqB,QAAQ;AACnC,QAAM,6BAA6B,QAAQ;AAC3C,QAAM,eAAe,QAAQ;AAC7B,QAAM,0BAA0B,QAAQ;AACxC,QAAM,eAAe,QAAQ;AAC7B,QAAM,0BAA0B,QAAQ;AAExC,QAAM,cAAc,uBAAuB;AAC3C,QAAM,iBAAiB,uBAAuB,SAAS;AACvD,QAAM,gBAAgB,6BAA6B;AACnD,QAAM,YAAY,0BAA0B;AAC5C,QAAM,cAAc,wBAAwB;AAC5C,QAAM,WAAW,wBAAwB;AAYzC,WAAS,eAAe,GAAG,eAAe,aAAa,gBAAgB;AACnE,UAAM,gBAAiB,iBAAkB,cAAc;AACvD,UAAM,0BAA0B,uBAAuB,YAAY;AACnE,UAAM,wBAAwB,gBAAgB,YAAY,SAAU,uBAAuB,eAAe,CAAC;AAE3G,UAAM,yBAAyB,wBAAwB;AACvD,UAAM,2BAA4B,yBAAyB;AAE3D,UAAM,qBAAsB,eAAe;AAE3C,UAAM,aAAc,sBAAsB,qBAAqB,CAAC,MAAM;AACtE,UAAM,YAAY,sBAAsB,qBAAqB,CAAC;AAC9D,UAAM,QAAQ,sBAAsB,qBAAqB,CAAC;AAC1D,UAAM,SAAS,sBAAsB,qBAAqB,CAAC;AAC3D,UAAM,YAAY,sBAAsB,qBAAqB,CAAC;AAC9D,UAAM,YAAY,sBAAsB,qBAAqB,CAAC;AAC9D,UAAM,QAAQ,sBAAsB,qBAAqB,CAAC;AAC1D,UAAM,QAAQ,sBAAsB,qBAAqB,CAAC;AAC1D,UAAM,QAAQ,sBAAsB,qBAAqB,CAAC;AAE1D,QAAI,0BAA0B;AAE1B,YAAM,oBAAoB,IAAI,WAAW,YAAY,SAAS,yBAAyB,qBAAqB,CAAC;AAC7G,YAAM,cAAc,kBAAkB;AACtC,YAAM,YAAY,GAAG,WAAW,YAAY,YAAY;AAExD,UAAI,YAAY;AAEZ,mBAAW,cAAc;UACrB,IAAI;UACJ,SAAS,CAAC,WAAW;UACrB;UACA;UACA;UACA;UACA;SACH;MAEL,OAAO;AAEH,cAAM,WAAW,cAAc,gBAAgB,eAAgB,cAAc,eAAe,cAAc;AAC1G,cAAM,OAAO,IAAI,KAAK,CAAC,WAAW,GAAG,EAAC,MAAM,SAAQ,CAAC;AACrD,cAAM,aAAa,OAAO,OAAO,OAAO;AACxC,cAAM,WAAW,WAAW,gBAAgB,IAAI;AAChD,cAAM,MAAM,SAAS,cAAc,KAAK;AACxC,YAAI,MAAM;AAEV,mBAAW,cAAc;UACrB,IAAI;UACJ,OAAO;;UAEP;UACA;UACA;UACA;UACA;SACH;MACL;IACJ;EACJ;AAIA,WAAS,kBAAkB,GAAG,kBAAkB,gBAAgB,mBAAmB;AAC/E,UAAM,8BAA8B,kBAAkB;AACtD,UAAM,eAAe,GAAG,WAAW,eAAe,eAAe;AACjE,UAAM,oBAAoB,uBAAuB,8BAA8B,CAAC;AAChF,UAAM,gCAAgC,uBAAuB,8BAA8B,CAAC;AAC5F,UAAM,sBAAsB,uBAAuB,8BAA8B,CAAC;AAClF,UAAM,uBAAuB,uBAAuB,8BAA8B,CAAC;AACnF,UAAM,wBAAwB,uBAAuB,8BAA8B,CAAC;AACpF,eAAW,iBAAiB;MACxB,IAAI;MACJ,gBAAgB,qBAAqB,IAAI,GAAG,WAAW,YAAY,iBAAiB,KAAK;MACzF,kBAAkB,uBAAuB,IAAI,GAAG,WAAW,YAAY,mBAAmB,KAAK;MAC/F,4BAA4B,iCAAiC,IAAI,GAAG,WAAW,YAAY,6BAA6B,KAAK;MAC7H,mBAAmB,wBAAwB,IAAI,GAAG,WAAW,YAAY,oBAAoB,KAAK;MAClG,oBAAoB,yBAAyB,IAAI,GAAG,WAAW,YAAY,qBAAqB,KAAK;KACxG;EACL;AAIA,QAAM,sBAAsB,IAAI,YAAY,aAAa;AAEzD,WAAS,YAAY,GAAG,YAAY,WAAW,aAAa;AACxD,UAAM,gBAAgB,0BAA0B,SAAS;AACzD,QAAI,oBAAoB,aAAa,MAAM,QAAW;AAClD,0BAAoB,aAAa;IACrC,OAAO;AACH,0BAAoB,aAAa,IAAI;IACzC;EACJ;AAIA,QAAM,aAAa,WAAU;AAC7B,QAAM,UAAU,YAAW;AAE3B,QAAM,sBAAsB,CAAA;AAE5B,WAAS,YAAY,GAAG,YAAY,UAAU,aAAa;AAEvD,UAAM,gBAAiB,WAAW;AAElC,UAAM,aAAc,cAAc;AAElC,UAAM,uBAAuB,wBAAyB,SAAS;AAC/D,UAAM,sBAAsB,aAAc,cAAc,IAAM,wBAAwB,YAAY,CAAC,IAAI;AAEvG,UAAM,gBAAgB,YAAY;AAClC,UAAM,WAAW,aAAa,SAAS,eAAe,gBAAgB,CAAC;AAEvE,mBAAe,UAAU,UAAU;AAEnC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AACvC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AACvC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AACvC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AACvC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AACvC,YAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,WAAW,CAAC;AAEvC,UAAM,wBAAwB,CAAA;AAI9B,aAAS,kBAAkB,sBAAsB,mBAAmB,qBAAqB,mBAAmB;AAExG,YAAM,cAAc,aAAa,eAAe;AAEhD,YAAM,WAAW;AAEjB,YAAM,uBAAwB,cAAc;AAC5C,YAAM,mBAAoB,oBAAoB;AAC9C,YAAM,iBAAiB,wBAAyB,eAAe;AAC/D,YAAM,gBAAgB,mBAAoB,0BAA0B,SAAS,IAAM,wBAAwB,kBAAkB,CAAC,IAAI;AAElI,YAAM,UAAU,CAAA;AAIhB,eAAS,YAAY,gBAAgB,aAAa,eAAe,aAAa;AAE1E,cAAM,gBAAgB,0BAA0B,SAAS;AACzD,cAAM,qBAAqB,oBAAoB,aAAa;AAC5D,cAAM,mBAAoB,qBAAqB;AAE/C,cAAM,iBAAkB,kBAAmB,gBAAgB;AAE3D,cAAM,kBAAkB,mBAAmB,SAAS;AAEpD,cAAM,eAAgB,mBAAmB,IAAK,GAAG,WAAW,eAAe,eAAe,KAAK;AAE/F,cAAM,YAAYD,iBAAgB,2BAA2B,SAAU,YAAY,GAAK,YAAY,IAAK,CAAC,CAAC;AAC3G,cAAM,cAAc,2BAA4B,YAAY,IAAK,CAAC,IAAI;AACtE,cAAM,eAAe,2BAA4B,YAAY,IAAK,CAAC,IAAI;AACvE,cAAM,gBAAgB,2BAA4B,YAAY,IAAK,CAAC,IAAI;AAExE,cAAM,SAAS,UAAS;AAExB,YAAI,kBAAkB;AAIlB,gBAAM,kBAAkB,wBAAwB,SAAS;AACzD,gBAAM,aAAa,SAAS,MAAM,iBAAiB,kBAAkB,EAAE;AAEvE,gBAAM,aAAa,GAAG,WAAW,aAAa,SAAS,IAAI,aAAa;AAExE,cAAI,iBAAiB,oBAAoB,UAAU;AAEnD,cAAI,CAAC,gBAAgB;AACjB,6BAAiB,CAAA;AACjB,kBAAM,gBAAgB,0BAA0B,aAAa;AAC7D,gBAAI,gBAAgB;AACpB,oBAAQ,eAAe;cACnB,KAAK;AACD,+BAAe,gBAAgB;AAC/B,+BAAe,oBAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACxL,+BAAe,kBAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC9K,+BAAe,cAAc,IAAI,SAAS,uBAAwB,aAAa,GAAG,iBAAiB,IAAI,SAAS,uBAAwB,gBAAgB,CAAC,CAAC;AAC1J,+BAAe,kBAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC9K,+BAAe,sBAAsB,YAAY,SAAS,+BAAgC,aAAa,GAAG,iBAAiB,YAAY,SAAS,+BAAgC,gBAAgB,CAAC,CAAC;AAClM,gCAAiB,eAAe,kBAAkB,SAAS,KAAK,eAAe,gBAAgB,SAAS;AACxG;cACJ,KAAK;AACD,+BAAe,gBAAgB;AAC/B,+BAAe,oBAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACxL,+BAAe,kBAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC9K,+BAAe,cAAc,IAAI,SAAS,uBAAwB,aAAa,GAAG,iBAAiB,IAAI,SAAS,uBAAwB,gBAAgB,CAAC,CAAC;AAC1J,+BAAe,kBAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC9K,+BAAe,sBAAsB,YAAY,SAAS,+BAAgC,aAAa,GAAG,iBAAiB,YAAY,SAAS,+BAAgC,gBAAgB,CAAC,CAAC;AAClM,gCAAiB,eAAe,kBAAkB,SAAS,KAAK,eAAe,gBAAgB,SAAS;AACxG;cACJ,KAAK;AACD,+BAAe,gBAAgB;AAC/B,+BAAe,oBAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACxL,+BAAe,iBAAiB,OAAO,SAAS,0BAA2B,aAAa,GAAG,iBAAiB,OAAO,SAAS,0BAA2B,gBAAgB,CAAC,CAAC;AACzK,gCAAiB,eAAe,kBAAkB,SAAS;AAC3D;cACJ,KAAK;AACD,+BAAe,gBAAgB;AAC/B,+BAAe,oBAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACxL,+BAAe,kBAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC9K,gCAAiB,eAAe,kBAAkB,SAAS,KAAK,eAAe,gBAAgB,SAAS;AACxG;cACJ,KAAK;AACD,+BAAe,gBAAgB;AAC/B,+BAAe,oBAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACxL,+BAAe,kBAAkB,iBAC7B,eAAe,mBACf,QAAQ,SAAS,2BAA4B,aAAa,GACtD,iBACM,QAAQ,SACR,2BAA4B,gBAAgB,CAAC,CAAC,CAAC;AAC7D,gCAAiB,eAAe,kBAAkB,SAAS,KAAK,eAAe,gBAAgB,SAAS;AACxG;cACJ;AACI;YACR;AAEA,gBAAI,CAAC,eAAe;AAChB,+BAAiB;YACrB;UACJ;AAEA,cAAI,gBAAgB;AAEhB,gBAAI,CAAC,sBAAsB,UAAU,GAAG;AAEpC,yBAAW,yBAAyB;gBAChC,IAAI;gBACJ,WAAW,eAAe;gBAC1B,qBAAqB,eAAe;gBACpC,eAAe,eAAe;gBAC9B,kBAAkB,eAAe;gBACjC,SAAS,eAAe;gBACxB,aAAa,eAAe;gBAE5B,MAAM;eACT;AAED,oCAAsB,UAAU,IAAI;YACxC;AAEA,uBAAW,WAAW;cAClB,IAAI;cACJ;cACA;cACA,QAAQ;cACR,OAAO;cACP,SAAS;;;;;aAMZ;AAED,oBAAQ,KAAK,MAAM;UACvB;QAEJ,OAAO;AAEH,gBAAM,gBAAgB,0BAA0B,aAAa;AAE7D,cAAI;AACJ,cAAI;AACJ,cAAI;AACJ,cAAI;AACJ,cAAI;AACJ,cAAI;AACJ,cAAI;AACJ,cAAI,gBAAgB;AAEpB,kBAAQ,eAAe;YACnB,KAAK;AACD,8BAAgB;AAChB,kCAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACzK,gCAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC/J,4BAAc,IAAI,SAAS,uBAAwB,aAAa,GAAG,iBAAiB,IAAI,SAAS,uBAAwB,gBAAgB,CAAC,CAAC;AAC3I,gCAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC/J,oCAAsB,YAAY,SAAS,+BAAgC,aAAa,GAAG,iBAAiB,YAAY,SAAS,+BAAgC,gBAAgB,CAAC,CAAC;AACnL,8BAAiB,kBAAkB,SAAS,KAAK,gBAAgB,SAAS;AAC1E;YACJ,KAAK;AACD,8BAAgB;AAChB,kCAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACzK,gCAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC/J,4BAAc,IAAI,SAAS,uBAAwB,aAAa,GAAG,iBAAiB,IAAI,SAAS,uBAAwB,gBAAgB,CAAC,CAAC;AAC3I,gCAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC/J,oCAAsB,YAAY,SAAS,+BAAgC,aAAa,GAAG,iBAAiB,YAAY,SAAS,+BAAgC,gBAAgB,CAAC,CAAC;AACnL,8BAAiB,kBAAkB,SAAS,KAAK,gBAAgB,SAAS;AAC1E;YACJ,KAAK;AACD,8BAAgB;AAChB,kCAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACzK,+BAAiB,OAAO,SAAS,0BAA2B,aAAa,GAAG,iBAAiB,OAAO,SAAS,0BAA2B,gBAAgB,CAAC,CAAC;AAC1J,8BAAiB,kBAAkB,SAAS;AAC5C;YACJ,KAAK;AACD,8BAAgB;AAChB,kCAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACzK,gCAAkB,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBAAiB,QAAQ,SAAS,2BAA4B,gBAAgB,CAAC,CAAC;AAC/J,8BAAiB,kBAAkB,SAAS,KAAK,gBAAgB,SAAS;AAC1E;YACJ,KAAK;AACD,8BAAgB;AAChB,kCAAoB,UAAU,SAAS,6BAA8B,aAAa,GAAG,iBAAiB,UAAU,SAAS,6BAA8B,gBAAgB,CAAC,CAAC;AACzK,gCAAkB,iBACd,mBACA,QAAQ,SAAS,2BAA4B,aAAa,GAAG,iBACvD,QAAQ,SACR,2BAA4B,gBAAgB,CAAC,CAAC,CAAC;AACzD,8BAAiB,kBAAkB,SAAS,KAAK,gBAAgB,SAAS;AAC1E;YACJ;AACI;UACR;AAEA,cAAI,eAAe;AAEf,kBAAM,aAAa,UAAS;AAE5B,uBAAW,yBAAyB;cAChC,IAAI;cACJ,WAAW;cACX,qBAAqB;cACrB,eAAe,eAAe,YAAY,SAAS,IAAI,cAAc;cACrE,kBAAkB;cAClB,SAAS;cACT,aAAa;cACb,MAAM;aACT;AAED,uBAAW,WAAW;cAClB,IAAI;cACJ;cACA;cACA,QAAQ;cACR,OAAO;cACP,SAAS;aACZ;AACD,oBAAQ,KAAK,MAAM;UACvB;QACJ;MACJ;AAEA,UAAI,QAAQ,SAAS,GAAG;AAEpB,mBAAW,aAAa;UACpB,IAAI;UACJ;SACH;MACL;IACJ;EACJ;AACJ;;;AC7cM,SAAU,YAAYE,SAG3B;AACG,QAAM,EAAC,UAAU,WAAU,IAAIA;AAC/B,MAAI,WAAW,WAAW;AACtB,WAAO,QAAQ,OAAO,IAAI,SAAS,8BAA8B,CAAC;EACtE;AACA,MAAI,WAAW,OAAO;AAClB,WAAO,QAAQ,OAAO,IAAI,SAAS,0BAA0B,CAAC;EAClE;AACA,aAAW;IACP,SAAS,WAAW,UAAU,QAAQ,CAAC;IACvC;GACH;AACD,SAAO,QAAQ,QAAO;AAC1B;;;ACKM,SAAU,QAAQC,SAGvB;AACG,QAAM,EAAC,UAAU,WAAU,IAAIA;AAC/B,MAAI,WAAW,WAAW;AACtB,WAAO,QAAQ,OAAO,IAAI,SAAS,8BAA8B,CAAC;EACtE;AACA,MAAI,WAAW,OAAO;AAClB,WAAO,QAAQ,OAAO,IAAI,SAAS,0BAA0B,CAAC;EAClE;AACA,SAAO,YAAYA,OAAM;AAC7B;;;ACjBM,SAAU,cAAcC,SAG7B;AACG,MAAI,CAACA,SAAQ;AACT,WAAO,QAAQ,OAAO,IAAI,SAAS,6CAA6C,CAAC;EACrF;AACA,QAAM,EAAC,UAAU,UAAS,IAAIA;AAC9B,MAAI,CAAC,UAAU;AACX,WAAO,QAAQ,OAAO,IAAI,SAAS,uDAAuD,CAAC;EAC/F;AACA,MAAI,CAAC,WAAW;AACZ,WAAO,QAAQ,OAAO,IAAI,SAAS,wDAAwD,CAAC;EAChG;AACA,MAAI,UAAU,WAAW;AACrB,WAAO,QAAQ,OAAO,IAAI,SAAS,6BAA6B,CAAC;EACrE;AACA,MAAI,UAAU,OAAO;AACjB,WAAO,QAAQ,OAAO,IAAI,SAAS,yBAAyB,CAAC;EACjE;AAIA,MAAI,SAAS,cAAc;AACvB,aAASC,KAAI,GAAG,MAAM,SAAS,aAAa,QAAQA,KAAI,KAAKA,MAAK;AAC9D,YAAM,kBAAkB,SAAS,aAAaA,EAAC;AAC/C,UAAI,CAAC,gBAAgB,YAAY;AAC7B,wBAAgB,aAAa,CAAA;MACjC;AACA,UAAI,cAAc,UAAU,aAAa,gBAAgB,EAAE;AAC3D,UAAI,CAAC,aAAa;AACd,kBAAU,kBAAkB;UACxB,IAAI,gBAAgB;UACpB,MAAM,gBAAgB;UACtB,MAAM,gBAAgB;;;;UAMtB,YAAY,gBAAgB;SAC/B;MACL;IACJ;EACJ;AACA,MAAI,SAAS,aAAa;AACtB,aAASA,KAAI,GAAG,MAAM,SAAS,YAAY,QAAQA,KAAI,KAAKA,MAAK;AAC7D,YAAM,iBAAiB,SAAS,YAAYA,EAAC;AAC7C,YAAM,KAAK,eAAe;AAE1B,UAAI,aAAa,UAAU,QAAQ,EAAE;AACrC,UAAI,CAAC,YAAY;AACb,cAAM,mBAAmB,eAAe;AACxC,cAAM,iBAAiB,eAAe,gBAAgB,eAAe;AACrE,cAAM,OAAO,aAAa,eAAe,IAAI;AAC7C,kBAAU,aAAa;UACnB;UACA;UACA;UACA,MAAM,eAAe;UACrB;SACH;AACD,YAAI,eAAe,QAAQ;AACvB,oBAAU,mBAAmB;YACzB,kBAAkB,eAAe;YACjC,iBAAiB;YACjB,MAAM;WACT;QACL;MACJ;IACJ;EACJ;AACA,SAAO,QAAQ,QAAO;AAC1B;;;AC7EM,SAAU,gBAAgBC,SAK/B;AACG,SAAO,IAAI,QAAc,CAACC,UAAS,WAAU;AAEzC,QAAI,CAACD,SAAQ;AACT,aAAO,OAAO,IAAI,SAAS,2CAA2C,CAAC;IAC3E;AAEA,UAAM,aAAaA,QAAO;AAC1B,QAAI,CAAC,YAAY;AACb,aAAO,OAAO,IAAI,SAAS,gDAAgD,CAAC;IAChF;AAEA,UAAM,YAAYA,QAAO;AACzB,QAAI,CAACA,QAAO,YAAY,CAACA,QAAO,KAAK;AACjC,aAAO,OAAO,IAAI,SAAS,qDAAqD,CAAC;IACrF;AAEA,QAAIA,QAAO,KAAK;AACZ,YAAM,UAAU,iBAAiBA,QAAO,GAAG;AAE3C,YAAMA,QAAO,GAAG,EAAE,KAAK,cAAW;AAC9B,iBAAS,KAAI,EAAG,KAAK,cAAW;AAE5B,gBAAM,WAAW,SAAS;AAC1B,gBAAM,iBAAiB,SAAS;AAEhC,gBAAM,eAAe,CAAC,SAAoB;AACtC,gBAAIE,KAAI;AACR,kBAAM,cAAc,MAAK;AACrB,kBAAI,WAAW,WAAW;AACtB,qBAAI;cACR,WAAWA,MAAK,SAAS,QAAQ;AAC7B,qBAAI;cACR,OAAO;AACH,sBAAM,GAAG,OAAO,GAAG,SAASA,EAAC,CAAC,EAAE,EAAE,KAAK,CAAAC,cAAW;AAC9C,kBAAAA,UAAS,YAAW,EAAG,KAAK,cAAW;AACnC,4BAAQ;sBACJ;sBACA;qBACH,EAAE,KAAK,MAAK;AACT,sBAAAD;AACA,kCAAW;oBACf,CAAC,EAAE,MAAM,CAAC,UAAS;AACf,6BAAO,2CAA2C,KAAK,EAAE;oBAC7D,CAAC;kBACL,CAAC;gBACL,CAAC;cACL;YACJ;AACA,wBAAW;UACf;AAEA,gBAAM,qBAAqB,CAAC,SAAoB;AAC5C,gBAAIA,KAAI;AACR,kBAAM,wBAAwB,MAAK;AAC/B,kBAAI,UAAU,WAAW;AACrB,qBAAI;cACR,WAAWA,MAAK,eAAe,QAAQ;AACnC,qBAAI;cACR,OAAO;AACH,sBAAM,GAAG,OAAO,GAAG,eAAeA,EAAC,CAAC,EAAE,EAAE,KAAK,CAAAC,cAAW;AACpD,kBAAAA,UAAS,KAAI,EAAG,KAAK,cAAW;AAC5B,kCAAc;sBACV;sBACA;qBACH,EAAE,KAAK,MAAK;AACT,sBAAAD;AACA,4CAAqB;oBACzB,CAAC,EAAE,MAAM,CAAC,UAAS;AACf,6BAAO,oDAAoD,KAAK,EAAE;oBACtE,CAAC;kBACL,CAAC;gBACL,CAAC;cACL;YACJ;AACA,kCAAqB;UACzB;AAEA,cAAI,YAAY,gBAAgB;AAC5B,yBAAa,MAAK;AACd,iCAAmB,MAAK;AACpB,gBAAAD,SAAO;cACX,CAAC;YACL,CAAC;UACL,WAAW,UAAU;AACjB,yBAAa,MAAK;AACd,cAAAA,SAAO;YACX,CAAC;UACL,WAAW,gBAAgB;AACvB,+BAAmB,MAAK;AACpB,cAAAA,SAAO;YACX,CAAC;UACL,OAAO;AACH,YAAAA,SAAO;UACX;QACJ,CAAC;MACL,CAAC;IACL;EACJ,CAAC;AACL;AAGA,SAAS,iBAAiB,UAAQ;AAC9B,QAAM,YAAY,SAAS,MAAM,GAAG;AACpC,YAAU,IAAG;AACb,SAAO,UAAU,KAAK,GAAG,IAAI;AACjC;;;ACjIA,IAAAG,iBAAA;SAAAA,gBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACEA,IAAAC,iCAA8B;;;ACF9B,IAAAC,iCAA8B;;;AC2BxB,IAAO,aAAP,MAAiB;;;;EAKH;;;;EAKA;;;;EAKA;;;;EAKA;;;;;EAMhB;EAEA;;;;EAiBA,YAAY,OAAkB,aAA0B,gBAA8B;AAElF,SAAK,KAAK,YAAY;AACtB,SAAK,mBAAmB,YAAY;AACpC,SAAK,QAAQ;AACb,SAAK,cAAc;AACnB,SAAK,kBAAkB;AAEvB,SAAK,SAAS;MACV,SAAS;MACT,QAAQ;MACR,UAAU;MACV,WAAW;MACX,YAAY;MACZ,QAAQ;MACR,UAAU;MACV,aAAa;MACb,UAAU,IAAI,aAAa,CAAC;MAC5B,WAAW;MACX,gBAAgB;;AAGpB,SAAK,gBAAgB,WAAW,KAAK,MAAM,KAAK,WAAW,KAAK,OAAO,OAAO;AAI9E,SAAK,MAAM,wBAAwB,MAAM,KAAK,OAAO,SAAS,IAAI;AAIlE,SAAK,gBAAgB,YAAY,KAAK,MAAM,KAAK,WAAW,KAAK,OAAO,QAAQ;EACpF;;;;EAKA,IAAI,OAAI;AACJ,WAAO,KAAK,YAAY;EAC5B;;;;;;;;EASA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;;EAUA,IAAI,QAAQ,SAAgB;AACxB,QAAI,YAAY,KAAK,OAAO,SAAS;AACjC;;AAEJ,SAAK,OAAO,UAAU;AACtB,UAAM,SAAS,KAAK,gBAAgB,WAAW,KAAK,MAAM,KAAK,WAAW,OAAO;AACjF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,MAAM,wBAAwB,MAAM,SAAS,IAAI;AACtD,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,SAAM;AACN,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,OAAO,QAAe;AACtB,QAAI,KAAK,OAAO,WAAW,QAAQ;AAC/B;;AAEJ,SAAK,OAAO,SAAS;AACrB,UAAM,SAAS,KAAK,gBAAgB,UAAU,KAAK,MAAM,KAAK,WAAW,MAAM;AAC/E,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,MAAM,oBAAoB,MAAM,MAAM;AAC3C,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,YAAY,aAAoB;AAChC,QAAI,gBAAgB,KAAK,OAAO,aAAa;AACzC;;AAEJ,SAAK,OAAO,cAAc;AAC1B,UAAM,SAAS,KAAK,gBAAgB,eAAe,KAAK,MAAM,KAAK,WAAW,WAAW;AACzF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,MAAM,yBAAyB,MAAM,WAAW;AACrD,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,WAAQ;AACR,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,SAAS,UAAiB;AAC1B,QAAI,aAAa,KAAK,OAAO,UAAU;AACnC;;AAEJ,SAAK,OAAO,WAAW;AACvB,UAAM,SAAS,KAAK,gBAAgB,YAAY,KAAK,MAAM,KAAK,WAAW,QAAQ;AACnF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,MAAM,sBAAsB,MAAM,QAAQ;AAC/C,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,SAAM;AACN,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,OAAO,QAAe;AACtB,QAAI,WAAW,KAAK,OAAO,QAAQ;AAC/B;;AAEJ,UAAM,SAAS,KAAK,gBAAgB,UAAU,KAAK,MAAM,KAAK,WAAW,MAAM;AAC/E,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,OAAO,SAAS;AACrB,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,UAAU,WAAkB;AAC5B,QAAI,cAAc,KAAK,OAAO,WAAW;AACrC;;AAEJ,UAAM,SAAS,KAAK,gBAAgB,UAAU,KAAK,MAAM,KAAK,WAAW,SAAS;AAClF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,OAAO,YAAY;AACxB,SAAK,MAAM,OAAM;EACrB;;;;;;;;EASA,IAAI,aAAU;AACV,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,WAAW,YAAmB;AAC9B,QAAI,eAAe,KAAK,OAAO,YAAY;AACvC;;AAEJ,UAAM,SAAS,KAAK,gBAAgB,cAAc,KAAK,MAAM,KAAK,WAAW,UAAU;AACvF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,OAAO,aAAa;EAG7B;;;;;;;EAQA,IAAI,WAAQ;AACR,WAAO,KAAK,OAAO;EACvB;;;;;;;EAQA,IAAI,SAAS,UAAiB;AAC1B,QAAI,KAAK,OAAO,aAAa,UAAU;AACnC;;AAEJ,UAAM,SAAS,KAAK,gBAAgB,YAAY,KAAK,MAAM,KAAK,WAAW,QAAQ;AACnF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,OAAO,WAAW;EAG3B;;;;;;;;EASA,IAAI,WAAQ;AACR,WAAO,KAAK,OAAO;EACvB;;;;;;;;;EAUA,IAAI,SAAS,OAAyC;AAClD,QAAI,WAAW,KAAK,OAAO;AAC3B,QAAI,OAAO;AACP,eAAS,CAAC,IAAI,MAAM,CAAC;AACrB,eAAS,CAAC,IAAI,MAAM,CAAC;AACrB,eAAS,CAAC,IAAI,MAAM,CAAC;WAClB;AACH,eAAS,CAAC,IAAI;AACd,eAAS,CAAC,IAAI;AACd,eAAS,CAAC,IAAI;;AAElB,UAAM,SAAS,KAAK,gBAAgB,YAAY,KAAK,MAAM,KAAK,WAAW,QAAQ;AACnF,QAAI,kBAAkB,UAAU;AAC5B,YAAM;;AAEV,SAAK,OAAO,YAAY,CAAC,CAAC;AAC1B,SAAK,MAAM,sBAAsB,MAAM,KAAK,OAAO,SAAS;AAC5D,SAAK,MAAM,OAAM;EACrB;;;;;;;EAQA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO,SAAS,CAAC;EACjC;;;;;;;;EASA,IAAI,QAAQ,SAAkC;AAC1C,QAAI,WAAW,KAAK,OAAO;AAC3B,SAAK,OAAO,iBAAiB,YAAY,QAAQ,YAAY;AAE7D,aAAS,CAAC,IAAI,KAAK,OAAO,iBAAiB,UAAU;AACrD,SAAK,MAAM,qBAAqB,MAAM,KAAK,OAAO,cAAc;AAChE,SAAK,MAAM,OAAM;EACrB;;;;EAKA,WAAQ;AAEJ,QAAI,KAAK,OAAO,SAAS;AACrB,WAAK,MAAM,wBAAwB,MAAM,OAAO,KAAK;;AAEzD,QAAI,KAAK,OAAO,QAAQ;AACpB,WAAK,MAAM,oBAAoB,MAAM,KAAK;;AAE9C,QAAI,KAAK,OAAO,UAAU;AACtB,WAAK,MAAM,sBAAsB,MAAM,KAAK;;AAEhD,QAAI,KAAK,OAAO,aAAa;AACzB,WAAK,MAAM,yBAAyB,MAAM,KAAK;;AAEnD,QAAI,KAAK,OAAO,WAAW;AACvB,WAAK,MAAM,sBAAsB,MAAM,KAAK;;AAEhD,QAAI,KAAK,OAAO,gBAAgB;AAC5B,WAAK,MAAM,qBAAqB,MAAM,KAAK;;AAE/C,SAAK,MAAM,OAAM;EACrB;;;;ACpbJ,IAAAC,gCAA8B;AA0D9B,IAAM,eAAN,cAA2B,UAAS;;;;;;;;EAchB;;;;;;EAOP;;;;;;EAOA;;;;;;EAOA;EAET;;;;;EAWA,YAAY,MAAY,MAIpB,CAAA,GAAE;AAEF,UAAM,MAAM,GAAG;AAEf,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,QAAQ,IAAI,WAAW;MACvB,KAAK,IAAI,aAAa,IAAI,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;MAC1C,KAAK,IAAI,aAAa,IAAI,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;MAC3C,MAAM;;AAGV,SAAK,QAAQ,IAAI,aAAa,IAAI,8CAAe,CAAiC;AAClF,SAAK,QAAQ,IAAI,aAAa,IAAI,8CAAe,CAAiC;AAClF,SAAK,WAAW,IAAI,aAAa,IAAI,8CAAe,CAAyB;EACjF;;;;;;;;EASA,IAAI,SAAM;AACN,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,OAAO,OAAc;AACrB,QAAI,KAAK,OAAO,WAAW,OAAO;AAC9B;;AAEJ,SAAK,OAAO,SAAS;AACrB,SAAK,KAAK,OAAM;AAChB,SAAK,SAAS,SAAS,MAAM,KAAK,OAAO,MAAM;EACnD;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAsB;AAC1B,SAAK,OAAO,IAAI,IAAI,KAAK;AACzB,SAAK,OAAO,OAAQ,CAAQ,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,GAAG;AACpE,SAAK,MAAM,SAAS,MAAM,KAAK,OAAO,GAAG;EAC7C;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAsB;AAC1B,SAAK,OAAO,IAAI,IAAI,KAAK;AACzB,SAAK,OAAO,OAAQ,CAAQ,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,GAAG;AACpE,SAAK,KAAK,OAAM;AAChB,SAAK,MAAM,SAAS,MAAM,KAAK,OAAO,GAAG;EAC7C;;;;;;;;;EAUA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;EAKA,UAAO;AACH,UAAM,MAAM,KAAK,OAAO;AACxB,QAAI,CAAC,KAAK;AACV,QAAI,CAAC,KAAK;AACV,QAAI,CAAC,KAAK;AACV,SAAK,OAAO,OAAQ,CAAQ,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,GAAG;AACpE,SAAK,MAAM,SAAS,MAAM,KAAK,OAAO,GAAG;AACzC,SAAK,KAAK,OAAM;EACpB;;;;EAKA,UAAO;AACH,SAAK,MAAM,MAAK;AAChB,SAAK,SAAS;AACd,SAAK,MAAM,MAAK;AAChB,UAAM,QAAO;EACjB;;;;ACzOJ,IAAAC,gCAA8B;AAI9B,IAAM,YAAY;EACd,CAAC,UAAU,GAAG;IACV,QAAQ;;EAEZ,CAAC,eAAe,GAAG;IACf,QAAQ;;EAEZ,CAAC,eAAe,GAAG;IACf,QAAQ;;EAEZ,CAAC,SAAS,GAAG;IACT,QAAQ;;EAEZ,CAAC,QAAQ,GAAG;IACR,QAAQ;;EAEZ,CAAC,UAAU,GAAG;IACV,QAAQ;;;AAkChB,IAAM,UAAN,cAAsB,UAAS;EAE3B;EACA;EACA;;;;;;EAOS;;;;;;EAOA;;;;;;EAOA;;;;EAMT,YAAY,MAAY,MAIpB;IACA,OAAO;IACP,OAAO;IACP,QAAQ,CAAC,GAAG,GAAG,CAAC;KACnB;AAEG,UAAM,MAAM,GAAG;AAEf,SAAK,UAAU,IAAI,aAAa,IAAI,8CAAe,CAAmB;AACtE,SAAK,UAAU,IAAI,aAAa,IAAI,8CAAe,CAAmB;AACtE,SAAK,WAAW,IAAI,aAAa,IAAI,8CAAe,CAA4B;AAEhF,SAAK,SAAS;AACd,SAAK,SAAS;AACd,SAAK,UAAU,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AAEnC,SAAK,QAAQ,IAAI;AACjB,SAAK,QAAQ,IAAI;AACjB,SAAK,SAAS,IAAI;EACtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCA,IAAI,YAAS;AACT,WAAO;EACX;;;;EAKA,IAAI,QAAK;AACL,WAAO,KAAK;EAChB;;;;;;EAOA,IAAI,MAAM,OAAyB;AAC/B,QAAI,CAAC,OAAO;AACR,cAAQ;;AAGZ,UAAM,OAAO,UAAU,KAAK;AAC5B,QAAI,CAAC,MAAM;AACP,WAAK,MAAM,oCAAoC,QAAQ,2BAA2B;AAClF,cAAQ;;AAEZ,SAAK,SAAS;AACd,SAAK,QAAQ,SAAS,MAAM,KAAK,MAAM;EAC3C;;;;EAKA,IAAI,QAAK;AACL,WAAO,KAAK;EAChB;;;;;;EAOA,IAAI,MAAM,OAAyB;AAC/B,YAAQ,SAAS;AACjB,QAAI,SAAS,GAAG;AACZ,WAAK,MAAM,wCAAwC;AACnD;;AAEJ,SAAK,SAAS;AACd,SAAK,QAAQ,SAAS,MAAM,KAAK,MAAM;EAC3C;;;;EAKA,IAAI,SAAM;AACN,WAAO,KAAK;EAChB;;;;EAKA,IAAI,OAAO,OAAkC;AACzC,QAAI,CAAC,OAAO;AACR,WAAK,QAAQ,CAAC,IAAI;AAClB,WAAK,QAAQ,CAAC,IAAI;AAClB,WAAK,QAAQ,CAAC,IAAI;AAClB;;AAEJ,SAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,SAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,SAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,SAAK,SAAS,SAAS,MAAM,KAAK,OAAO;EAC7C;;;;;;;;;;EAWA,eAAe,UAA2B,UAA2B,WAAU,GAAE;AAC7E,YAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAK,KAAK,SAAS,SAAS,CAAC;AACxD,YAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAK,KAAK,SAAS,SAAS,CAAC;AACxD,YAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAK,KAAK,SAAS,SAAS,CAAC;AACxD,WAAO;EACX;;;;;;;;;;EAWA,eAAe,SAA0B,WAA4B,WAAU,GAAE;AAC7E,aAAS,CAAC,KAAK,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,KAAK;AACpD,aAAS,CAAC,KAAK,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,KAAK;AACpD,aAAS,CAAC,KAAK,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,KAAK;AACpD,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,QAAQ,MAAK;AAClB,SAAK,QAAQ,MAAK;AAClB,SAAK,SAAS,MAAK;EACvB;;;;AC7PE,IAAO,MAAP,cAAmB,UAAS;;;;EAKd;EAEhB;;EAeA,YAAY,MAAYC,SAAW;AAE/B,UAAM,MAAMA,OAAM;AAElB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,aAAa,CAAC,aAAa;MAC3B,SAASA,QAAO,YAAY;MAC5B,cAAcA,QAAO,gBAAgB;MACrC,WAAYA,QAAO,cAAc,SAAaA,QAAO,YAAY;MACjE,MAAOA,QAAO,SAAS,SAAaA,QAAO,OAAO;MAClD,OAAQA,QAAO,UAAU,SAAaA,QAAO,QAAQ;MACrD,eAAgBA,QAAO,kBAAkB,SAAaA,QAAO,gBAAgB;MAC7E,YAAaA,QAAO,eAAe,SAAaA,QAAO,aAAa;MACpE,MAAM,CAAC,CAAEA,QAAO;MAChB,aAAcA,QAAO,eAAe,SAAaA,QAAO,cAAc;MACtE,aAAcA,QAAO,gBAAgB,SAAaA,QAAO,cAAc;;EAE/E;;;;;;;;EASA,IAAI,YAAY,OAAe;AAC3B,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;;;;EAYA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,KAAK,OAAO,SAAS,gBAAe;EACpD;;;;;;;;EASA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,QAAQ,OAAc;AACtB,YAAQ,CAAC,CAAC;AACV,QAAI,KAAK,OAAO,YAAY,OAAO;AAC/B;;AAEJ,SAAK,OAAO,UAAU;AACtB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,WAAQ;AACR,QAAI,CAAC,KAAK,WAAW;AACjB,aAAO;;AAEX,QAAI,CAAC,KAAK,OAAO,SAAS;AACtB,aAAO;;AAEX,UAAM,iBAAiB,KAAK,KAAK,OAAO;AACxC,QAAI,mBAAmB,sBAAsB;AACzC,aAAO;;AAEX,QAAI,mBAAmB,uBAAuB;AAC1C,aAAO;;AAEX,WAAO;EACX;;;;;;EAOA,IAAI,eAAY;AACZ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,aAAa,OAAa;AAC1B,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,iBAAiB,OAAO;AACpC;;AAEJ,SAAK,OAAO,eAAe;AAC3B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAa;AACvB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,KAAK,OAAa;AAClB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,SAAS,OAAO;AAC5B;;AAEJ,SAAK,OAAO,OAAO;AACnB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,MAAM,OAAa;AACnB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,UAAU,OAAO;AAC7B;;AAEJ,SAAK,OAAO,QAAQ;AACpB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,gBAAa;AACb,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,cAAc,OAAa;AAC3B,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,kBAAkB,OAAO;AACrC;;AAEJ,SAAK,OAAO,gBAAgB;AAC5B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,aAAU;AACV,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,WAAW,OAAa;AACxB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,eAAe,OAAO;AAClC;;AAEJ,SAAK,OAAO,aAAa;AACzB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,KAAK,OAAc;AACnB,YAAS,UAAU;AACnB,QAAI,KAAK,OAAO,SAAS,OAAO;AAC5B;;AAEJ,SAAK,OAAO,OAAO;AACnB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,YAAY,OAAa;AACzB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,gBAAgB,OAAO;AACnC;;AAEJ,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,YAAY,OAAa;AACzB,QAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAQ;;AAEZ,QAAI,KAAK,OAAO,gBAAgB,OAAO;AACnC;;AAEJ,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,UAAO;AACP,QAAI,CAAC,KAAK,OAAO,SAAS;AACtB,aAAO;;AAEX,aAASC,KAAI,GAAG,MAAM,KAAK,OAAO,YAAY,QAAQA,KAAI,KAAKA,MAAK;AAChE,UAAI,KAAK,KAAK,eAAe,KAAK,OAAO,YAAYA,EAAC,GAAG;AACrD,eAAO;;;AAGf,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;AC3XJ,IAAM,YAAN,cAAwB,UAAS;;;;EAKb;;;;EAKhB;;;;EAQA,YAAY,MAAY,UAGpB,CAAA,GAAE;AAEF,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,aAAa,QAAQ,eAAe,CAAC,aAAa;MAClD,SAAS,QAAQ,YAAY;;EAErC;;;;;;;;EASA,IAAI,YAAY,OAAe;AAC3B,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,QAAQ,OAAc;AACtB,QAAI,KAAK,OAAO,YAAY,OAAO;AAC/B;;AAEJ,SAAK,OAAO,UAAU;AACtB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAO;AACP,QAAI,CAAC,KAAK,OAAO,SAAS;AACtB,aAAO;;AAEX,aAASC,KAAI,GAAG,MAAM,KAAK,OAAO,YAAY,QAAQA,KAAI,KAAKA,MAAK;AAChE,UAAI,KAAK,KAAK,eAAe,KAAK,OAAO,YAAYA,EAAC,GAAG;AACrD,eAAO;;;AAGf,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;ACzGJ,IAAM,gBAAN,cAA4B,UAAS;;;;EAKjB;EAEhB;;;;EAOA,YAAY,MAAY,UAAiC,EAAC,WAAW,EAAC,GAAC;AAEnE,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;;EAEzG;;;;;;EAOA,IAAI,UAAU,OAAa;AACvB,SAAK,OAAO,YAAY,SAAS;AACjC,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;ACnDJ,IAAAC,gCAA8B;AAyP9B,IAAM,YAAN,cAAwB,UAAS;;;;;;;;;;;EA6BpB;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOT;;;;;;EAOS;;;;;;EAOA;;;;;;;;EASA;EAET;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAEA;EAEA,YAAY,SAMX;AAEG,UAAM,QAAQ,MAAM,OAAO;AAE3B,SAAK,KAAK,QAAQ;AAClB,SAAK,SAAS,QAAQ;AACtB,SAAK,OAAO,QAAQ;AAEpB,SAAK,UAAU,CAAA;AACf,SAAK,iBAAiB,CAAA;AACtB,SAAK,gBAAgB,CAAA;AACrB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,kBAAkB,CAAA;AACvB,SAAK,mBAAmB,CAAA;AACxB,SAAK,iBAAiB,CAAA;AAEtB,SAAK,cAAe,QAAQ,gBAAgB;AAE5C,SAAK,cAAc;AACnB,SAAK,qBAAqB;AAC1B,SAAK,oBAAoB;AACzB,SAAK,yBAAyB;AAC9B,SAAK,sBAAsB;AAC3B,SAAK,uBAAuB;AAC5B,SAAK,qBAAqB;AAE1B,SAAK,iBAAiB,CAAC,CAAC,QAAQ;AAEhC,SAAK,eAAe,CAAA;AAEpB,SAAK,kBAAkB,IAAI,aAAa,IAAI,8CAAe,CAAyB;AACpF,SAAK,oBAAoB,IAAI,aAAa,IAAI,8CAAe,CAAyB;AACtF,SAAK,qBAAqB,IAAI,aAAa,IAAI,8CAAe,CAAyB;AAEvF,SAAK,iBAAgB;EACzB;;;;EAKA,IAAI,cAAW;AACX,WAAO;EACX;;;;;;EAOA,IAAI,YAAY,OAAe;AAC3B,SAAK,eAAe;AACpB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,cAAW;AACX,WAAO,KAAK;EAChB;;;;EAKA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;EAKA,IAAI,YAAS;AACT,QAAI,CAAC,KAAK,YAAY;AAClB,WAAK,aAAa,OAAO,KAAK,KAAK,OAAO;;AAE9C,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAoB,OAAO,KAAK,KAAK,cAAc;;AAE5D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,kBAAe;AACf,QAAI,CAAC,KAAK,kBAAkB;AACxB,WAAK,mBAAmB,OAAO,KAAK,KAAK,aAAa;;AAE1D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,wBAAqB;AACrB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,uBAAoB;AACpB,QAAI,CAAC,KAAK,uBAAuB;AAC7B,WAAK,wBAAwB,OAAO,KAAK,KAAK,kBAAkB;;AAEpE,WAAO,KAAK;EAChB;;;;EAKA,IAAI,qBAAkB;AAClB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,QAAI,CAAC,KAAK,oBAAoB;AAC1B,WAAK,qBAAqB,OAAO,KAAK,KAAK,eAAe;;AAE9D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,sBAAmB;AACnB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,qBAAkB;AAClB,QAAI,CAAC,KAAK,qBAAqB;AAC3B,WAAK,sBAAsB,OAAO,KAAK,KAAK,gBAAgB;;AAEhE,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAoB,OAAO,KAAK,KAAK,cAAc;;AAE5D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,WAAO,KAAK;EAChB;;;;EAKA,mBAAmB,YAAsB;AACrC,SAAK,QAAQ,WAAW,EAAE,IAAI;AAC9B,SAAK;AACL,SAAK,aAAa;AAClB,SAAK,gBAAgB,SAAS,MAAM,UAAU;EAClD;;;;EAKA,qBAAqB,YAAsB;AACvC,WAAO,KAAK,QAAQ,WAAW,EAAE;AACjC,WAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAO,KAAK,cAAc,WAAW,EAAE;AACvC,WAAO,KAAK,mBAAmB,WAAW,EAAE;AAC5C,WAAO,KAAK,gBAAgB,WAAW,EAAE;AACzC,WAAO,KAAK,iBAAiB,WAAW,EAAE;AAC1C,WAAO,KAAK,eAAe,WAAW,EAAE;AACxC,SAAK;AACL,SAAK,aAAa;AAClB,SAAK,kBAAkB,SAAS,MAAM,UAAU;EACpD;;;;EAKA,SAAM;AACF,SAAK,OAAO,SAAS,cAAc,KAAK,KAAK,SAAS;EAC1D;;;;EAKA,wBAAwB,YAAwB,SAAkB,SAAkB,MAAI;AACpF,QAAI,SAAS;AACT,WAAK,eAAe,WAAW,EAAE,IAAI;AACrC,WAAK;WACF;AACH,aAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAK;;AAET,SAAK,oBAAoB;AACzB,QAAI,QAAQ;AACR,WAAK,mBAAmB,SAAS,MAAM,UAAU;;AAErD,SAAK,KAAK,wBAAwB,YAAY,SAAS,MAAM;EACjE;;;;EAKA,oBAAoB,YAAwB,QAAe;AACvD,QAAI,QAAQ;AACR,WAAK,cAAc,WAAW,EAAE,IAAI;AACpC,WAAK;WACF;AACH,aAAO,KAAK,cAAc,WAAW,EAAE;AACvC,WAAK;;AAET,SAAK,mBAAmB;AACxB,SAAK,KAAK,oBAAoB,YAAY,MAAM;EACpD;;;;EAKA,yBAAyB,YAAwB,aAAoB;AACjE,QAAI,aAAa;AACb,WAAK,mBAAmB,WAAW,EAAE,IAAI;AACzC,WAAK;WACF;AACH,aAAO,KAAK,mBAAmB,WAAW,EAAE;AAC5C,WAAK;;AAET,SAAK,wBAAwB;AAC7B,SAAK,KAAK,yBAAyB,YAAY,WAAW;EAC9D;;;;EAKA,sBAAsB,YAAwB,UAAiB;AAC3D,QAAI,UAAU;AACV,WAAK,gBAAgB,WAAW,EAAE,IAAI;AACtC,WAAK;WACF;AACH,aAAO,KAAK,gBAAgB,WAAW,EAAE;AACzC,WAAK;;AAET,SAAK,qBAAqB;AAC1B,SAAK,KAAK,sBAAsB,YAAY,QAAQ;EACxD;;;;EAKA,sBAAsB,YAAwB,WAAkB;AAC5D,QAAI,WAAW;AACX,WAAK,iBAAiB,WAAW,EAAE,IAAI;AACvC,WAAK;WACF;AACH,aAAO,KAAK,iBAAiB,WAAW,EAAE;AAC1C,WAAK;;AAET,SAAK,sBAAsB;AAC3B,SAAK,KAAK,sBAAsB,YAAY,SAAS;EACzD;;;;EAKA,qBAAqB,YAAwB,gBAAuB;AAChE,QAAI,gBAAgB;AAChB,WAAK,eAAe,WAAW,EAAE,IAAI;AACrC,WAAK;WACF;AACH,aAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAK;;AAET,SAAK,oBAAoB;AACzB,SAAK,KAAK,qBAAqB,YAAY,cAAc;EAC7D;;;;;;;;;;;EAYA,kBAAkB,WAAqB,SAAgB;AACnD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,YAAY;AACxC,iBAAW,UAAU;AACrB,UAAI,SAAS;AACT,aAAK,mBAAmB,SAAS,MAAM,UAAU;;AAErD,aAAO;IACX,CAAC;EACL;;;;;;;;;;EAWA,qBAAqB,WAAqB,YAAmB;AACzD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,eAAe;AAC3C,iBAAW,aAAa;AACxB,aAAO;IACX,CAAC;EACL;;;;;;;;;;EAWA,iBAAiB,WAAqB,QAAe;AACjD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,WAAW;AACvC,iBAAW,SAAS;AACpB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,mBAAmB,WAAqB,UAAiB;AACrD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,aAAa;AACzC,iBAAW,WAAW;AACtB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,sBAAsB,WAAqB,aAAoB;AAC3D,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,gBAAgB;AAC5C,iBAAW,cAAc;AACzB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,iBAAiB,WAAqB,QAAe;AACjD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,WAAW;AACvC,UAAI,SAAS;AACT,mBAAW,SAAS;;AAExB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,oBAAoB,WAAqB,UAAkB;AACvD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,iBAAW,WAAW;IAC1B,CAAC;EACL;;;;;;;;;;;EAYA,kBAAkB,WAAqB,SAAe;AAClD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,YAAY;AACxC,UAAI,SAAS;AACT,mBAAW,UAAU;;AAEzB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,mBAAmB,WAAqB,UAAiB;AACrD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,aAAa;AACzC,UAAI,SAAS;AACT,mBAAW,WAAW;;AAE1B,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,oBAAoB,WAAqB,WAAkB;AACvD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAW,WAAW,cAAc;AAC1C,UAAI,SAAS;AACT,mBAAW,YAAY;;AAE3B,aAAO;IACX,CAAC;EACL;;;;;;;;EASA,YAAY,WAAqB,UAAkB;AAC/C,QAAI,UAAU;AACd,aAASC,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,YAAM,KAAK,UAAUA,EAAC;AACtB,UAAI,aAAa,KAAK,QAAQ,EAAE;AAChC,UAAI,YAAY;AACZ,kBAAU,SAAS,UAAU,KAAK;;;AAG1C,WAAO;EACX;EAEA,mBAAgB;AACZ,UAAM,SAAS,KAAK,OAAO,MAAM;AACjC,eAAW,MAAM,QAAQ;AACrB,YAAM,QAAQ,OAAO,EAAE;AACvB,WAAK,mBAAmB,KAAK;;AAEjC,SAAK,OAAO,MAAM,eAAe,UAAU,CAAC,OAAc,UAAqB;AAC3E,WAAK,mBAAmB,KAAK;IACjC,CAAC;EAIL;EAEA,mBAAmB,OAAiB;AAChC,UAAM,eAAe,MAAM;AAC3B,aAAS,MAAM,cAAc;AACzB,YAAM,cAAc,aAAa,EAAE;AACnC,YAAM,qBAAqB,KAAK,OAAO,SAAS,gBAAgB,EAAE;AAClE,UAAI,YAAY,WAAW,KAAK,IAAI;AACjC,YAAI,CAAC,KAAK,QAAQ,EAAE,GAAG;AACnB,gBAAM,aAAa,IAAI,WAAW,MAAM,aAAa,kBAAkB;AACvE,eAAK,QAAQ,WAAW,EAAE,IAAI;AAC9B,eAAK;AACL,eAAK,aAAa;AAClB,eAAK,gBAAgB,SAAS,MAAM,UAAU;;;;EAI7D;EAEA,4BAA4B,OAAiB;AACzC,UAAM,gBAAgB,MAAM;AAC5B,aAAS,MAAM,eAAe;AAC1B,YAAM,eAAe,cAAc,EAAE;AACrC,YAAM,aAAa,KAAK,QAAQ,aAAa,EAAE;AAC/C,UAAI,YAAY;AACZ,mBAAW,SAAQ;AACnB,aAAK;AACL,aAAK,aAAa;AAClB,aAAK,kBAAkB,SAAS,MAAM,UAAU;;;EAG5D;;;;;;EAOA,UAAO;AACH,SAAK,oBAAmB;AACxB,SAAK,gBAAgB,MAAK;AAC1B,SAAK,kBAAkB,MAAK;AAC5B,SAAK,mBAAmB,MAAK;AAC7B,UAAM,QAAO;EACjB;EAEA,sBAAmB;AACf,UAAM,UAAU,KAAK;AACrB,aAAS,MAAM,SAAS;AACpB,YAAM,aAAa,QAAQ,EAAE;AAC7B,WAAK,qBAAqB,UAAU;AACpC,WAAK,kBAAkB,SAAS,MAAM,UAAU;;EAExD;;;;ACv7BJ,IAAM,mBAAN,cAA+B,UAAS;;;;EAKpB;EAEhB;;;;EAeA,YAAY,MAAY,UAUpB,CAAA,GAAE;AAEF,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,MAAM,CAAC,CAAC,QAAQ;MAChB,WAAW,IAAI,aAAa,QAAQ,aAAa,CAAC,KAAK,KAAK,GAAG,CAAC;MAChE,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,OAAO,QAAQ,UAAU;MACzB,WAAW,IAAI,aAAa,QAAQ,aAAa,CAAC,KAAK,KAAK,GAAG,CAAC;MAChE,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,WAAW,CAAC,CAAC,QAAQ;MACrB,aAAa,CAAC,CAAC,QAAQ;;EAE/B;;;;;;EAOA,IAAI,KAAK,OAAc;AACnB,QAAI,KAAK,OAAO,SAAS,OAAO;AAC5B;;AAEJ,SAAK,OAAO,OAAO;AACnB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAsB;AAChC,UAAM,YAAY,KAAK,OAAO;AAC9B,QAAI,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG;AACrF;;AAEJ,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,OAAa;AACvB,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,MAAM,OAAc;AACpB,QAAI,KAAK,OAAO,UAAU,OAAO;AAC7B;;AAEJ,SAAK,OAAO,QAAQ;AACpB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAsB;AAChC,QAAI,YAAY,KAAK,OAAO;AAC5B,QAAI,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG;AACrF;;AAEJ,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,OAAa;AACvB,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAa;AACvB,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAc;AACxB,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,YAAY,OAAK;AACjB,YAAS,UAAU;AACnB,QAAI,KAAK,OAAO,gBAAgB,OAAO;AACnC;;AAEJ,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;EAKA,IAAI,OAAI;AACJ,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;AC1RJ,IAAM,QAAN,cAAoB,UAAS;;;;EAKT;;;;EAKhB;;;;EAWA,YAAY,MAAY,UAMpB,CAAA,GAAE;AAEF,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,aAAa,QAAQ,eAAe,CAAC,aAAa;MAClD,SAAS,QAAQ,YAAY;MAC7B,WAAW,IAAI,aAAa,QAAQ,aAAa,CAAC,KAAK,KAAK,GAAG,CAAC;MAChE,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;;EAEzG;;;;;;;;EASA,IAAI,YAAY,OAAe;AAC3B,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,QAAQ,OAAc;AACtB,QAAI,KAAK,OAAO,YAAY,OAAO;AAC/B;;AAEJ,SAAK,OAAO,UAAU;AACtB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,UAAO;AAKP,WAAO;EAGX;;;;;;EAOA,IAAI,UAAU,OAAsB;AAChC,QAAI,YAAY,KAAK,OAAO;AAC5B,QAAI,SAAS,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG;AAC9F;;AAEJ,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,cAAU,CAAC,IAAI;AACf,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,OAAa;AACvB,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,UAAU,OAAa;AACvB,QAAI,KAAK,OAAO,cAAc,OAAO;AACjC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAO;AACP,QAAI,CAAC,KAAK,OAAO,SAAS;AACtB,aAAO;;AAEX,aAASC,KAAI,GAAG,MAAM,KAAK,OAAO,YAAY,QAAQA,KAAI,KAAKA,MAAK;AAChE,UAAI,KAAK,KAAK,eAAe,KAAK,OAAO,YAAYA,EAAC,GAAG;AACrD,eAAO;;;AAGf,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;AClMJ,IAAM,iBAAN,cAA6B,UAAS;;;;EAKlB;EAEhB;;;;EAcA,YAAY,MAAY,UASpB,CAAA,GAAE;AAEF,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,aAAa,QAAQ,gBAAgB;MACrC,mBAAmB,QAAQ,sBAAsB;MACjD,yBAA0B,QAAQ,4BAA4B,UAAa,QAAQ,4BAA4B,OAAQ,QAAQ,0BAA0B;MACzJ,yBAA0B,QAAQ,4BAA4B,UAAa,QAAQ,4BAA4B,OAAQ,QAAQ,0BAA0B;MACzJ,iBAAiB,CAAC,CAAC,QAAQ;MAC3B,cAAe,QAAQ,iBAAiB,UAAa,QAAQ,iBAAiB,OAAQ,QAAQ,eAAe;MAC7G,cAAe,QAAQ,iBAAiB,UAAa,QAAQ,iBAAiB,OAAQ,QAAQ,eAAe;;EAErH;;;;;;EAOA,IAAI,UAAU,OAAa;AACvB,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;EAQA,IAAI,YAAY,OAAc;AAC1B,QAAI,KAAK,OAAO,gBAAgB,OAAO;AACnC;;AAEJ,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,QAAO;EACrB;;;;;;EAOA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,kBAAkB,OAAc;AAChC,QAAI,KAAK,OAAO,sBAAsB,OAAO;AACzC;;AAEJ,SAAK,OAAO,oBAAoB;AAChC,SAAK,KAAK,QAAO;EACrB;;;;;;EAOA,IAAI,oBAAiB;AACjB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,wBAAwB,OAAa;AACrC,QAAI,KAAK,OAAO,4BAA4B,OAAO;AAC/C;;AAEJ,SAAK,OAAO,0BAA0B;AACtC,SAAK,KAAK,QAAO;EACrB;;;;;;;;EASA,IAAI,0BAAuB;AACvB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,wBAAwB,OAAa;AACrC,QAAI,KAAK,OAAO,4BAA4B,OAAO;AAC/C;;AAEJ,SAAK,OAAO,0BAA0B;AACtC,SAAK,KAAK,QAAO;EACrB;;;;;;EAOA,IAAI,0BAAuB;AACvB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,gBAAgB,OAAc;AAC9B,QAAI,KAAK,OAAO,oBAAoB,OAAO;AACvC;;AAEJ,SAAK,OAAO,kBAAkB;AAC9B,SAAK,KAAK,QAAO;EACrB;;;;;;EAOA,IAAI,kBAAe;AACf,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,aAAa,OAAa;AAC1B,QAAI,KAAK,OAAO,iBAAiB,OAAO;AACpC;;AAEJ,SAAK,OAAO,eAAe;AAC3B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,eAAY;AACZ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,aAAa,OAAa;AAC1B,QAAI,KAAK,OAAO,iBAAiB,OAAO;AACpC;;AAEJ,SAAK,OAAO,eAAe;AAC3B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,eAAY;AACZ,WAAO,KAAK,OAAO;EACvB;;;;EAKA,IAAI,OAAI;AACJ,UAAM,QAAQ,KAAK;AACnB,WAAO,GAAG,MAAM,SAAS;UACvB,MAAM,WAAW;UACjB,MAAM,iBAAiB;UACvB,MAAM,uBAAuB;UAC7B,MAAM,uBAAuB;UAC7B,MAAM,eAAe;EAC3B;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;AC9PJ,IAAAC,iCAA8B;;;ACA9B,IAAAC,iCAA8B;AAoBxB,IAAO,wBAAP,cAAqC,UAAS;;;;EAKhC;;;;;;EAOP;;;;EAKT,OAAgB,OAAe;EAE/B;EAUA;EACA;EACA;;;;EAMA,YAAY,QAAgB,MAKxB,CAAA,GAAE;AAEF,UAAM,QAAQ,GAAG;AAEjB,SAAK,SAAS;AAEd,SAAK,SAAS;MACV,MAAM,IAAI,QAAQ;MAClB,KAAK,IAAI,OAAO;MAChB,KAAK,IAAI,OAAO;MAChB,SAAS,IAAI,WAAW;MACxB,YAAY,WAAU;MACtB,mBAAmB,WAAU;MAC7B,sBAAsB,WAAU;;AAGpC,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;AAElC,SAAK,kBAAkB,KAAK,OAAO,KAAK,WAAW,UAAW,MAAK;AAC/D,WAAK,SAAQ;IACjB,CAAC;AAED,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAA0C;EACtG;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAa;AACjB,QAAI,UAAU,KAAK,OAAO,KAAK;AAC3B;;AAEJ,SAAK,OAAO,MAAM;AAClB,SAAK,SAAQ;EAChB;;;;;;;;;;EAWD,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,QAAQ,OAAa;AACrB,YAAQ,SAAS;AACjB,QAAI,KAAK,OAAO,YAAY,OAAO;AAC/B;;AAEJ,QAAI,UAAU,OAAO,UAAU,OAAO,UAAU,OAAO;AACnD,WAAK,MAAM,sCAAsC,QAAQ,wBAAwB;AACjF,cAAQ;;AAEZ,SAAK,OAAO,UAAU;AACtB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,KAAK,OAAa;AAClB,QAAI,KAAK,OAAO,SAAS,OAAO;AAC5B;;AAEJ,SAAK,OAAO,OAAO;AACnB,SAAK,SAAQ;EACjB;;;;;;EAOA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,IAAI,OAAa;AACjB,QAAI,KAAK,OAAO,QAAQ,OAAO;AAC3B;;AAEJ,SAAK,OAAO,MAAM;AAClB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,aAAU;AACV,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,oBAAiB;AACjB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,qBAAqB;AAC1B,kBAAY,KAAK,OAAO,YAAY,KAAK,OAAO,iBAAiB;AACjE,WAAK,sBAAsB;;AAE/B,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,uBAAoB;AACpB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,4BAA4B;AACjC,oBAAc,KAAK,OAAO,YAAY,KAAK,OAAO,oBAAoB;AACtE,WAAK,6BAA6B;;AAEtC,WAAO,KAAK,OAAO;EACvB;;;;EAKA,QAAK;AACD,UAAM,cAAc;AACpB,UAAM,eAAe;AACrB,UAAM,WAAW,KAAK,OAAO,KAAK;AAClC,UAAM,SAAS,SAAS,WAAW,IAAI,SAAS,YAAY;AAC5D,UAAM,UAAU,KAAK,OAAO;AAC5B,QAAI,MAAM,KAAK,OAAO;AACtB,QAAI,YAAY,OAAQ,YAAY,SAAS,SAAS,KAAO,YAAY,SAAS,SAAS,GAAI;AAC3F,YAAM,MAAM;;AAEhB,UAAM,KAAK,IAAI,KAAK,GAAG;AACvB,oBAAgB,OAAO,KAAK,KAAK,MAAQ,QAAQ,KAAK,OAAO,MAAM,KAAK,OAAO,KAAK,KAAK,OAAO,UAAU;AAC1G,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;AAClC,SAAK,OAAO,KAAK,OAAM;AACvB,SAAK,aAAa,SAAS,MAAM,KAAK,OAAO,UAAU;EAC3D;;;;;;;;;;EAWA,UAAUC,YAA4B,SAAiBC,YAA4BC,UAA0B,UAAyB;AAElI,UAAM,cAAc,KAAK,OAAO,KAAK;AACrC,UAAM,gBAAgB,YAAY,cAAc;AAChD,UAAM,iBAAiB,YAAY,eAAe;AAElD,IAAAD,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,iBAAiB;AAChD,IAAAC,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,kBAAkB;AACjD,IAAAC,WAAU,CAAC,IAAI;AACf,IAAAA,WAAU,CAAC,IAAI;AAEf,cAAU,KAAK,mBAAmBA,YAAWC,QAAO;AACpD,kBAAcA,UAAS,IAAMA,SAAQ,CAAC,CAAC;AAEvC,IAAAA,SAAQ,CAAC,IAAI;AACb,IAAAA,SAAQ,CAAC,KAAK;AAEd,cAAU,KAAK,OAAO,mBAAmBA,UAAS,QAAQ;AAE1D,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,OAAO,KAAK,WAAW,YAAY,KAAK,eAAe;AAC5D,SAAK,aAAa,MAAK;EAC3B;;;;AC9SJ,IAAAC,iCAA8B;AAoBxB,IAAO,kBAAP,cAA+B,UAAS;;;;EAK1B;;;;;;EAOP;;;;EAKT,OAAgB,OAAe;EAE/B;EASA;EACA;EACA;;;;EAKA,YAAY,QAAgB,MAIxB,CAAA,GAAE;AAEF,UAAM,QAAQ,GAAG;AAEjB,SAAK,SAAS;AAEd,SAAK,SAAS;MACV,MAAM,IAAI,QAAQ;MAClB,KAAK,IAAI,OAAO;MAChB,OAAO,IAAI,SAAS;MACpB,YAAY,WAAU;MACtB,mBAAmB,WAAU;MAC7B,sBAAsB,WAAU;;AAGpC,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAAoC;AAE5F,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;AAElC,SAAK,kBAAkB,KAAK,OAAO,KAAK,WAAW,UAAU,MAAK;AAC9D,WAAK,SAAQ;IACjB,CAAC;EACL;;;;;;;;;;EAWA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;;EAUA,IAAI,MAAM,OAAa;AACnB,QAAI,SAAS,GAAG;AACZ,cAAQ;;AAEZ,SAAK,OAAO,QAAQ;AACpB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,KAAK,OAAa;AAClB,QAAI,KAAK,OAAO,SAAS,OAAO;AAC5B;;AAEJ,SAAK,OAAO,OAAO;AACnB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAa;AACjB,QAAI,KAAK,OAAO,QAAQ,OAAO;AAC3B;;AAEJ,SAAK,OAAO,MAAM;AAClB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,aAAU;AACV,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,oBAAiB;AACjB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,qBAAqB;AAC1B,kBAAY,KAAK,OAAO,YAAY,KAAK,OAAO,iBAAiB;AACjE,WAAK,sBAAsB;;AAE/B,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,uBAAoB;AACpB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,4BAA4B;AACjC,oBAAc,KAAK,OAAO,YAAY,KAAK,OAAO,oBAAoB;AACtE,WAAK,6BAA6B;;AAEtC,WAAO,KAAK,OAAO;EACvB;;;;EAKA,QAAK;AAED,UAAM,cAAc;AACpB,UAAM,eAAe;AAErB,UAAM,OAAO,KAAK,OAAO;AACzB,UAAMC,SAAQ,KAAK,OAAO;AAC1B,UAAM,WAAW,MAAMA;AAEvB,UAAM,WAAW,KAAK;AACtB,UAAM,gBAAgB,SAAS,WAAW;AAC1C,UAAM,iBAAiB,SAAS,YAAY;AAC5C,UAAM,SAAS,gBAAgB;AAE/B,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,QAAI,gBAAgB,gBAAgB;AAChC,aAAO,CAAC;AACR,cAAQ;AACR,YAAM,WAAW;AACjB,eAAS,CAAC,WAAW;WAElB;AACH,aAAO,CAAC,WAAW;AACnB,cAAQ,WAAW;AACnB,YAAM;AACN,eAAS,CAAC;;AAGd,eAAW,MAAM,OAAO,QAAQ,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,KAAK,KAAK,OAAO,UAAU;AAE9F,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;AAElC,SAAK,OAAO,KAAK,OAAM;AAEvB,SAAK,aAAa,SAAS,MAAM,KAAK,OAAO,UAAU;EAC3D;;;;;;;;;;EAWA,UACIC,YACA,SACAC,YACAC,UACA,UAAyB;AAEzB,UAAMC,UAAS,KAAK,OAAO,KAAK;AAEhC,UAAM,gBAAgBA,QAAO,cAAc;AAC3C,UAAM,iBAAiBA,QAAO,eAAe;AAE7C,IAAAF,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,iBAAiB;AAChD,IAAAC,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,kBAAkB;AACjD,IAAAC,WAAU,CAAC,IAAI;AACf,IAAAA,WAAU,CAAC,IAAI;AAEf,cAAU,KAAK,mBAAmBA,YAAWC,QAAO;AACpD,kBAAcA,UAAS,IAAMA,SAAQ,CAAC,CAAC;AAEvC,IAAAA,SAAQ,CAAC,IAAI;AACb,IAAAA,SAAQ,CAAC,KAAK;AAEd,cAAU,KAAK,OAAO,mBAAmBA,UAAS,QAAQ;AAE1D,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,OAAO,KAAK,WAAW,YAAY,KAAK,eAAe;AAC5D,SAAK,aAAa,MAAK;EAC3B;;;;AC5SJ,IAAAE,iCAA8B;AAiBxB,IAAO,oBAAP,cAAiC,UAAS;;;;EAK5C,OAAgB,OAAe;;;;EAIf;;;;;;EAMP;EACT;EAYA;EACA;;;;EAKA,YAAY,QAAgB,MAOxB,CAAA,GAAE;AAEF,UAAM,QAAQ,GAAG;AAEjB,SAAK,SAAS;AAEd,SAAK,SAAS;MACV,YAAY,WAAU;MACtB,mBAAmB,WAAU;MAC7B,sBAAsB,WAAU;MAChC,MAAM;MACN,KAAK;MACL,MAAO,IAAI,SAAS,UAAa,IAAI,SAAS,OAAQ,IAAI,OAAO;MACjE,OAAQ,IAAI,UAAU,UAAa,IAAI,UAAU,OAAQ,IAAI,QAAQ;MACrE,QAAS,IAAI,WAAW,UAAa,IAAI,WAAW,OAAQ,IAAI,SAAS;MACzE,KAAM,IAAI,QAAQ,UAAa,IAAI,QAAQ,OAAQ,IAAI,MAAM;;AAGjE,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAAsC;AAE9F,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;EACtC;;;;;;EAOA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,KAAK,OAAa;AAClB,SAAK,OAAO,OAAO;AACnB,SAAK,SAAQ;EACjB;;;;;;EAOA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,MAAM,OAAa;AACnB,SAAK,OAAO,QAAQ;AACpB,SAAK,SAAQ;EACjB;;;;;;EAOA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,IAAI,OAAa;AACjB,SAAK,OAAO,MAAM;AAClB,SAAK,SAAQ;EACjB;;;;;;EAOA,IAAI,SAAM;AACN,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,OAAO,OAAa;AACpB,SAAK,OAAO,SAAS;AACrB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,KAAK,OAAa;AAClB,SAAK,OAAO,OAAO;AACnB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAa;AACjB,SAAK,OAAO,MAAM;AAClB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,aAAU;AACV,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,oBAAiB;AACjB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,qBAAqB;AAC1B,kBAAY,KAAK,OAAO,YAAY,KAAK,OAAO,iBAAiB;AACjE,WAAK,sBAAsB;;AAE/B,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,uBAAoB;AACpB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,4BAA4B;AACjC,oBAAc,KAAK,OAAO,YAAY,KAAK,OAAO,oBAAoB;AACtE,WAAK,6BAA6B;;AAEtC,WAAO,KAAK,OAAO;EACvB;;;;EAKA,QAAK;AACD,gBAAY,KAAK,OAAO,MAAM,KAAK,OAAO,OAAO,KAAK,OAAO,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,KAAK,KAAK,OAAO,UAAU;AAC/I,SAAK,sBAAsB;AAC3B,SAAK,6BAA6B;AAClC,SAAK,OAAO,KAAK,OAAM;AACvB,SAAK,aAAa,SAAS,MAAM,KAAK,OAAO,UAAU;EAC3D;;;;;;;;;;EAWA,UACIC,YACA,SACAC,YACAC,UACA,UAAyB;AAEzB,UAAM,cAAc,KAAK,OAAO,KAAK;AAErC,UAAM,gBAAgB,YAAY,cAAc;AAChD,UAAM,iBAAiB,YAAY,eAAe;AAElD,IAAAD,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,iBAAiB;AAChD,IAAAC,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,kBAAkB;AACjD,IAAAC,WAAU,CAAC,IAAI;AACf,IAAAA,WAAU,CAAC,IAAI;AAEf,cAAU,KAAK,mBAAmBA,YAAWC,QAAO;AACpD,kBAAcA,UAAS,IAAMA,SAAQ,CAAC,CAAC;AAEvC,IAAAA,SAAQ,CAAC,IAAI;AACb,IAAAA,SAAQ,CAAC,KAAK;AAEd,cAAU,KAAK,OAAO,mBAAmBA,UAAS,QAAQ;AAE1D,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,aAAa,MAAK;EAC3B;;;;AC/SJ,IAAAC,iCAA8B;AAe9B,IAAM,mBAAN,cAAgC,UAAS;;;;EAKrB;;;;;;EAOP;;;;EAKT,OAAgB,OAAe;EAE/B;EAMA;EACA;;;;EAKA,YAAY,QAAgB,MAExB,CAAA,GAAE;AAEF,UAAM,QAAQ,GAAG;AAEjB,SAAK,SAAS;AAEd,SAAK,SAAS;MACV,YAAY,WAAW,IAAI,cAAc,aAAY,CAAE;MACvD,mBAAmB,WAAU;MAC7B,sBAAsB,WAAU;;AAGpC,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAAqC;AAE7F,SAAK,0BAA0B;AAC/B,SAAK,6BAA6B;EACtC;;;;;;;;EASA,IAAI,aAAU;AACV,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,WAAW,YAA2B;AAEtC,SAAK,OAAO,WAAW,IAAI,UAAU;AACrC,SAAK,0BAA0B;AAC/B,SAAK,6BAA6B;AAClC,SAAK,SAAQ;AACb,SAAK,OAAO,KAAK,OAAM;AACvB,SAAK,aAAa,SAAS,MAAM,KAAK,OAAO,UAAU;EAC3D;;;;;;EAOA,IAAI,oBAAiB;AACjB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,yBAAyB;AAC9B,kBAAY,KAAK,OAAO,YAAY,KAAK,OAAO,iBAAiB;AACjE,WAAK,0BAA0B;;AAEnC,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,uBAAoB;AACpB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,QAAI,KAAK,4BAA4B;AACjC,oBAAc,KAAK,OAAO,YAAY,KAAK,OAAO,oBAAoB;AACtE,WAAK,6BAA6B;;AAEtC,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,UACIC,YACA,SACAC,YACAC,UACA,UAAyB;AACzB,UAAM,cAAc,KAAK,OAAO,KAAK;AACrC,UAAM,gBAAgB,YAAY,cAAc;AAChD,UAAM,iBAAiB,YAAY,eAAe;AAClD,IAAAD,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,iBAAiB;AAChD,IAAAC,WAAU,CAAC,KAAKD,WAAU,CAAC,IAAI,kBAAkB;AACjD,IAAAC,WAAU,CAAC,IAAI;AACf,IAAAA,WAAU,CAAC,IAAI;AACf,cAAU,KAAK,mBAAmBA,YAAWC,QAAO;AACpD,kBAAcA,UAAS,IAAMA,SAAQ,CAAC,CAAC;AACvC,IAAAA,SAAQ,CAAC,IAAI;AACb,IAAAA,SAAQ,CAAC,KAAK;AACd,cAAU,KAAK,OAAO,mBAAmBA,UAAS,QAAQ;AAC1D,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,aAAa,MAAK;EAC3B;;;;AJ7HJ,IAAMC,YAAW,WAAU;AAC3B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAM,YAAY,WAAU;AAC5B,IAAMC,WAAU,WAAU;AAC1B,IAAM,WAAW,WAAU;AAC3B,IAAM,aAAa,WAAU;AAC7B,IAAM,iBAAiB,WAAU;AACjC,IAAM,gBAAgB,WAAU;AAChC,IAAM,YAAY,WAAU;AAwL5B,IAAM,SAAN,cAAqB,UAAS;;;;;;;;EASV;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;;;EAWP;;;;;;;;;;EAWA;;;;;;;;;;EAWA;;;;;;;;;;EAWA;;;;;;;;;;EAWA;EAEA;;;;EAqBT;EACA;;;;EAKA,YAAY,MAAY,MASpB,CAAA,GAAE;AAEF,UAAM,MAAM,GAAG;AAEf,SAAK,mBAAmB,IAAI,aAAa,IAAI,+CAAe,CAAkB;AAC9E,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAA2B;AACnF,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAA2B;AACnF,SAAK,cAAc,IAAI,aAAa,IAAI,+CAAe,CAA2B;AAClF,SAAK,YAAY,IAAI,aAAa,IAAI,+CAAe,CAAoB;AAEzE,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;MACrC,MAAM,WAAW,IAAI,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;MACtC,IAAI,WAAW,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;MAClC,SAAS,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;MAC7B,YAAY,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;MAChC,cAAc,WAAW,CAAC,GAAG,GAAG,EAAE,CAAC;MACnC,WAAW,IAAI,aAAa,IAAI,aAAa,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;MACxE,YAAY,IAAI,eAAe;MAC/B,gBAAgB,IAAI,mBAAmB;MACvC,gBAAgB,IAAI,kBAAkB;MACtC,cAAc,IAAI,eAAe,WAAW,IAAI,YAAY,IAAI,aAAY;MAC5E,iBAAiB,CAAC,CAAC,IAAI;MACvB,YAAY,WAAU;MACtB,kBAAkB,WAAU;MAC5B,mBAAmB,WAAU;;AAGjC,SAAK,WAAW,IAAI,SAAQ;AAE5B,SAAK,wBAAwB,IAAI,sBAAsB,IAAI;AAC3D,SAAK,kBAAkB,IAAI,gBAAgB,IAAI;AAC/C,SAAK,oBAAoB,IAAI,kBAAkB,IAAI;AACnD,SAAK,mBAAmB,IAAI,iBAAiB,IAAI;AAEjD,SAAK,oBAAoB,KAAK;AAE9B,SAAK,sBAAsB,aAAa,UAAU,MAAK;AACnD,UAAI,KAAK,OAAO,mBAAmB,2BAA2B;AAC1D,aAAK,aAAa,SAAS,MAAM,KAAK,sBAAsB,UAAU;;IAE9E,CAAC;AAED,SAAK,gBAAgB,aAAa,UAAU,MAAK;AAC7C,UAAI,KAAK,OAAO,mBAAmB,qBAAqB;AACpD,aAAK,aAAa,SAAS,MAAM,KAAK,gBAAgB,UAAU;;IAExE,CAAC;AAED,SAAK,kBAAkB,aAAa,UAAU,MAAK;AAC/C,UAAI,KAAK,OAAO,mBAAmB,uBAAuB;AACtD,aAAK,aAAa,SAAS,MAAM,KAAK,kBAAkB,UAAU;;IAE1E,CAAC;AAED,SAAK,iBAAiB,aAAa,UAAU,MAAK;AAC9C,UAAI,KAAK,OAAO,mBAAmB,sBAAsB;AACrD,aAAK,aAAa,SAAS,MAAM,KAAK,iBAAiB,UAAU;;IAEzE,CAAC;EACL;;;;;;;;EASA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;;EAUA,IAAI,IAAI,KAAoB;AAExB,SAAK,OAAO,IAAI,IAAI,GAAG;AACvB,SAAK,SAAQ;EACjB;;;;;;;;EASA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,KAAK,MAAqB;AAE1B,SAAK,OAAO,KAAK,IAAI,IAAI;AACzB,SAAK,SAAQ;EACjB;;;;;;EAOA,IAAI,KAAE;AACF,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,GAAG,IAAmB;AAEtB,SAAK,OAAO,GAAG,IAAI,EAAE;AACrB,SAAK,SAAQ;EACjB;;;;;;;;;;EAWA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,aAAU;AACV,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,eAAY;AACZ,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,iBAAc;AACd,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,eAAe,OAAc;AAC7B,SAAK,OAAO,iBAAiB;EACjC;;;;;;EAOA,IAAI,aAAU;AACV,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,WAAW,OAAc;AACzB,SAAK,OAAO,aAAa;EAC7B;;;;;;;;;;EAWA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,UAAU,MAAqB;AAC/B,UAAM,QAAQ,KAAK;AAEnB,UAAM,UAAU,IAAI,IAAI;AACxB,UAAM,WAAW,CAAC,IAAI,MAAM,UAAU,CAAC;AACvC,UAAM,WAAW,CAAC,IAAI,MAAM,UAAU,CAAC;AACvC,UAAM,WAAW,CAAC,IAAI,MAAM,UAAU,CAAC;AACvC,UAAM,QAAQ,CAAC,IAAI,MAAM,UAAU,CAAC;AACpC,UAAM,QAAQ,CAAC,IAAI,MAAM,UAAU,CAAC;AACpC,UAAM,QAAQ,CAAC,IAAI,MAAM,UAAU,CAAC;AACpC,UAAM,aAAa,CAAC,IAAI,MAAM,UAAU,CAAC;AACzC,UAAM,aAAa,CAAC,IAAI,MAAM,UAAU,CAAC;AACzC,UAAM,aAAa,CAAC,IAAI,MAAM,UAAU,CAAC;AACzC,SAAK,YAAY,SAAS,MAAM,MAAM,SAAS;EACnD;;;;;;EAOA,IAAI,eAAY;AAEZ,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,aAAa,QAAuB;AAEpC,SAAK,OAAO,aAAa,IAAI,UAAU,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;AACvF,SAAK,OAAO,kBAAkB,CAAC,CAAC;AAChC,SAAK,SAAQ;EACjB;;;;;EAMA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC,KAAK,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC;EAC5G;;;;;EAMA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC,KAAK,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC;EAC5G;;;;;EAMA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC,KAAK,KAAK,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC;EAC5G;;;;;;EAOA,IAAI,cAAW;AACX,WAAO,QAAQ,QAAQ,KAAK,OAAO,MAAM,KAAK,OAAO,KAAKL,SAAQ,CAAC;EACvE;;;;;;EAOA,IAAI,aAAU;AACV,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,oBAAiB;AACjB,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,aAAU;AAEV,WAAO,KAAK,kBAAkB;EAClC;;;;;;EAOA,IAAI,UAAO;AACP,QAAI,KAAK,OAAO;AACZ,WAAK,aAAY;;AAErB,WAAO,KAAK;EAChB;;;;;;;;;;EAWA,IAAI,iBAAc;AACd,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,eAAe,OAAyB;AACxC,YAAQ,SAAS;AACjB,QAAI,KAAK,OAAO,mBAAmB,OAAO;AACtC;;AAEJ,QAAI,UAAU,2BAA2B;AACrC,WAAK,oBAAoB,KAAK;eACvB,UAAU,qBAAqB;AACtC,WAAK,oBAAoB,KAAK;eACvB,UAAU,uBAAuB;AACxC,WAAK,oBAAoB,KAAK;eACvB,UAAU,sBAAsB;AACvC,WAAK,oBAAoB,KAAK;WAC3B;AACH,WAAK,MAAM,yCAAyC,QAAQ,0CAA0C;AACtG,WAAK,oBAAoB,KAAK;AAC9B,cAAQ;;AAGZ,SAAK,kBAAkB,MAAK;AAC5B,SAAK,OAAO,iBAAiB;AAC7B,SAAK,MAAK;AACV,SAAK,iBAAiB,SAAS,MAAM,KAAK,OAAO,cAAc;AAC/D,SAAK,aAAa,SAAS,MAAM,KAAK,kBAAkB,UAAU;EACtE;EAEA,WAAQ;AACJ,UAAM,SAAQ;AACd,SAAK,KAAK,OAAM;EACpB;EAEA,QAAK;AACD,UAAM,QAAQ,KAAK;AAKnB,QAAI;AACJ,QAAI,KAAK,mBAAmB,qBAAqB;AAC7C,cAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM,UAAU;AACrD,oBAAc,YAAY,cAAc;AACxC,oBAAc,gBAAgB,KAAQ,aAAa;AACnD,cAAQ,KAAK,OAAO,MAAM,eAAe,SAAS;AAClD,YAAM;WACH;AACH,YAAM,KAAK,OAAO;;AAEtB,QAAI,MAAM,iBAAiB;AACvB,kBAAY,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI,QAAQ;AAC3D,cAAQ,MAAM,cAAc,UAAU,MAAM,UAAU;WACnD;AACH,kBAAY,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI,MAAM,UAAU;;AAEvE,gBAAY,KAAK,OAAO,YAAY,KAAK,OAAO,iBAAiB;AACjE,kBAAc,KAAK,OAAO,mBAAmB,KAAK,OAAO,gBAAgB;AACzE,SAAK,KAAK,OAAM;AAChB,gBAAY,KAAK,OAAO,YAAY,KAAK,kBAAkB,YAAY,KAAK,QAAQ;AACpF,SAAK,aAAa,SAAS,MAAM,KAAK,OAAO,UAAU;AACvD,SAAK,UAAU,SAAS,MAAM,KAAK,QAAQ;EAC/C;;;;;;EAOA,SAAS,UAAgB;AACrB,QAAI,aAAa,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAMA,SAAQ;AACpE,kBAAc,WAAW,cAAc,KAAK,OAAO,aAAa,KAAK,OAAO,UAAU,KAAK,OAAO,IAAIK,QAAO;AAC7G,iBAAa,gBAAgBA,UAAS,YAAYJ,UAAS;AAC3D,SAAK,MAAM,QAAQ,KAAK,OAAO,MAAM,YAAYC,UAAS;AAC1D,SAAK,KAAK,gBAAgBG,UAAS,KAAK,OAAO,IAAIF,UAAS;EAChE;;;;;;EAOA,WAAW,UAAgB;AACvB,QAAI,KAAK,OAAO,gBAAgB;AAC5B,iBAAW,QAAQ,KAAK,OAAO,IAAI,KAAK,OAAO,OAAO,IAAI;AAC1D,UAAI,WAAW,GAAG;AACd;;;AAGR,QAAI,OAAO,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAMH,SAAQ;AAC9D,UAAM,OAAO,WAAW,cAAc,MAAMC,UAAS,GAAG,cAAc,KAAK,OAAO,IAAIC,UAAS,CAAC;AAChG,kBAAc,WAAW,cAAc,MAAMG,QAAO;AACpD,WAAO,gBAAgBA,UAAS,MAAMF,UAAS;AAC/C,SAAK,KAAK,gBAAgBE,UAAS,KAAK,OAAO,IAAID,UAAS;AAC5D,SAAK,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM,SAAS;EACxD;;;;;;EAOA,IAAI,UAAgB;AAChB,QAAI,QAAQ,QAAQ,KAAK,OAAO,MAAM,KAAK,OAAO,KAAKJ,SAAQ;AAC/D,kBAAc,WAAW,cAAc,KAAK,OAAO,aAAa,KAAK,OAAO,UAAU,KAAK,OAAO,IAAIK,QAAO;AAC7G,YAAQ,gBAAgBA,UAAS,OAAOJ,UAAS;AACjD,SAAK,OAAO,QAAQ,OAAO,KAAK,OAAO,KAAKC,UAAS;AACrD,QAAI,KAAK,OAAO,YAAY;AACxB,WAAK,KAAK,gBAAgBG,UAAS,KAAK,OAAO,IAAIF,UAAS;;EAEpE;;;;;;EAOA,MAAM,UAAgB;AAClB,QAAI,KAAK,OAAO,gBAAgB;AAC5B,iBAAW,QAAQ,KAAK,OAAO,IAAI,KAAK,OAAO,OAAO,IAAI;AAC1D,UAAI,WAAW,GAAG;AACd;;;AAGR,QAAI,QAAQ,QAAQ,KAAK,OAAO,MAAM,KAAK,OAAO,KAAKH,SAAQ;AAC/D,UAAM,OAAO,WAAW,cAAc,OAAOC,UAAS,GAAG,cAAc,KAAK,OAAO,IAAIC,UAAS,CAAC;AACjG,kBAAc,WAAW,cAAc,MAAMG,QAAO;AACpD,SAAK,KAAK,gBAAgBA,UAAS,KAAK,OAAO,IAAI,SAAS;AAC5D,YAAQ,gBAAgBA,UAAS,OAAOF,UAAS;AACjD,SAAK,OAAO,QAAQ,OAAO,KAAK,OAAO,KAAKC,UAAS;EACzD;;;;;;EAOA,IAAI,KAAoB;AACpB,UAAM,OAAO,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAMJ,SAAQ;AAChE,UAAM,MAAM,CAAC,GAAG,GAAG,CAAC;AACpB,QAAI;AACJ,QAAI,IAAI,CAAC,MAAM,GAAG;AACd,YAAM,OAAO,WAAW,cAAc,MAAM,CAAA,CAAE,GAAG,cAAc,KAAK,OAAO,IAAIC,UAAS,CAAC;AACzF,UAAI,cAAc,MAAM,IAAI,CAAC,CAAC;AAC9B,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;;AAEjB,QAAI,IAAI,CAAC,MAAM,GAAG;AACd,UAAI,cAAc,cAAc,KAAK,OAAO,IAAIC,UAAS,GAAG,IAAI,CAAC,CAAC;AAClE,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;;AAEjB,QAAI,IAAI,CAAC,MAAM,GAAG;AACd,UAAI,cAAc,cAAc,MAAMC,UAAS,GAAG,IAAI,CAAC,CAAC;AACxD,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;AACb,UAAI,CAAC,KAAK,EAAE,CAAC;;AAEjB,SAAK,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAKC,UAAS;AAClD,SAAK,OAAO,QAAQ,KAAK,OAAO,MAAM,KAAK,SAAS;EACxD;;;;;;EAOA,KAAK,OAAa;AACd,UAAM,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAK,OAAO,MAAMJ,SAAQ;AAC/D,UAAM,UAAU,KAAK,IAAI,QAAQ,GAAG,CAAC;AACrC,UAAM,aAAa,KAAK,IAAI,UAAU,KAAK;AAC3C,QAAI,aAAa,KAAK;AAClB;;AAEJ,UAAM,MAAM,cAAc,KAAKE,UAAS;AACxC,SAAK,MAAM,QAAQ,KAAK,OAAO,MAAM,cAAc,KAAK,UAAU,GAAGC,UAAS;EAClF;;;;;;;;;;;;;;;;;;;EAqBA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,iBAAiB,MAAK;AAC3B,SAAK,aAAa,MAAK;AACvB,SAAK,aAAa,MAAK;AACvB,SAAK,YAAY,MAAK;EAC1B;;;;AK37BJ,IAAAG,iCAA8B;;;ACI9B,IAAM,QAAQ;EACV,OAAO;IACH,SAAS;;EAEb,QAAQ;IACJ,SAAU,aAAa,UAAU,YAAa,UAAU,YAAY;;EAExE,YAAY;IACR,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,SAAS;;EAEb,QAAQ;IACJ,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,SAAS;IACT,KAAK;IACL,SAAS;IACT,UAAU;IACV,YAAY;IACZ,WAAW;IACX,UAAU;;EAEd,OAAO;IACH,YAAY;IACZ,KAAK;IACL,UAAU;IACV,gBAAgB;IAChB,aAAa;;;;;ACtBrB,IAAM,YAAuB;EACzB,UAAU;EACV,MAAM;EACN,WAAW;EACX,UAAU;EACV,WAAW;;AAGf,IAAM,YAAN,MAAe;EAEK;EAEhB,qBAA6C,CAAA;;EAG7C,eAAoB,IAAIC,KAAG;;EAC3B,aAAoB,IAAI,MAAK;;EAC7B,cAAsB;;EACtB,YAAoB;EACpB,eAAuB;;;;EAKvB,cAAA;AAEI,SAAK,UAAU,CAAA;AAEf,UAAM,QAAQ,MAAK;AACf,YAAM,OAAO,KAAK,IAAG;AACrB,UAAI,KAAK,YAAY,GAAG;AACpB,aAAK,eAAe,OAAO,KAAK;;AAEpC,WAAK,UAAU,IAAI;AACnB,WAAK,gBAAgB,IAAI;AACzB,WAAK,eAAc;AACnB,WAAK,YAAY;AAEjB,4BAAsB,KAAK;IAC/B;AAEA,0BAAsB,KAAK;EAC/B;EAEA,UAAU,MAAY;AAClB,UAAM,WAAW,KAAK,eAAe,OAAO,KAAK,WAAW;AAC5D,UAAM,iBAAiB,KAAK,YAAW;AACvC,UAAM,MAAM,WAAW;AACvB,UAAM,MAAM,iBAAiB;AAC7B,UAAM,MAAM,cAAc,KAAK;EACnC;EAEA,eAAe,QAAgB,IAAE;AAC7B,QAAI,QAAQ,oBAAI,KAAI,GAAI,QAAO;AAC/B,QAAI,WAAW;AACf,WAAO,KAAK,WAAW,SAAS,MAAM,QAAQ,KAAK,OAAO,QAAQ;AAC9D,YAAM,WAAW,KAAK,WAAW,MAAK;AACtC,YAAM,QAAQ,KAAK,WAAW,MAAK;AACnC,UAAI,OAAO;AACP,iBAAS,KAAK,KAAK;aAChB;AACH,iBAAQ;;AAEZ,cAAQ,oBAAI,KAAI,GAAI,QAAO;AAC3B;;AAEJ,WAAO;EACX;EAEA,gBAAgB,MAAY;AACxB,cAAU,OAAO;AACjB,aAAS,MAAM,UAAU,SAAS;AAC9B,UAAI,KAAK,QAAQ,eAAe,EAAE,GAAG;AACjC,cAAM,SAAS,KAAK,QAAQ,EAAE;AAC9B,kBAAU,WAAW;AACrB,kBAAU,YAAY,OAAO;AAC7B,kBAAU,YAAY,UAAU,YAAY,OAAO,UAAU,OAAO,UAAU,WAAW;AACzF,eAAO,OAAO,SAAS,QAAQ,SAAS;;;AAGhD,cAAU,WAAW;EACzB;EAEA,iBAAc;AACV,aAAS,MAAM,KAAK,SAAS;AACzB,UAAI,KAAK,QAAQ,eAAe,EAAE,GAAG;AACjC,cAAM,SAAS,KAAK,QAAQ,EAAE;AAC9B,YAAI,aAAa,KAAK,mBAAmB,EAAE;AAC3C,YAAI,CAAC,YAAY;AACb,uBAAa,KAAK,mBAAmB,EAAE,IAAI,CAAA;;AAoB3C,eAAO,OAAO,CAAA,CAAE;;;EAKhC;EAEA,eAAe,QAAc;AACzB,QAAI,OAAO,IAAI;AACX,UAAI,KAAK,QAAQ,OAAO,EAAE,GAAG;AACzB,gBAAQ,MAAM,kBAAkB,SAAS,OAAO,EAAE,CAAC,iBAAiB;AACpE;;WAED;AAGH,aAAO,KAAK,KAAK,aAAa,QAAQ,CAAA,CAAE;;AAE5C,SAAK,QAAQ,OAAO,EAAE,IAAI;AAG1B,SAAK,mBAAmB,OAAO,EAAE,IAAI;;;;;AAKrC,UAAM,WAAW;EACrB;EAEA,iBAAiB,QAAa;AAC1B,QAAI,CAAC,KAAK,QAAQ,OAAO,EAAE,GAAG;AAC1B;;AAEJ,SAAK,aAAa,WAAW,OAAO,EAAE;AACtC,WAAO,KAAK,QAAQ,OAAO,EAAE;AAC7B,WAAO,KAAK,mBAAmB,OAAO,EAAE;AACxC,UAAM,WAAW;EACrB;EAEA,aAAa,UAAoB,OAAU;AACvC,SAAK,WAAW,KAAK,QAAQ;AAC7B,SAAK,WAAW,KAAK,KAAK;EAC9B;EAEA,cAAW;AACP,WAAO,KAAK,WAAW;EAC3B;;AAGJ,IAAM,YAAY,IAAI,UAAS;;;AFhK/B,IAAMC,YAAW,WAAU;AAC3B,IAAM,UAAU,WAAU;AAC1B,IAAM,SAAS,WAAU;AACzB,IAAM,QAAQ,WAAU;AACxB,IAAM,gBAAgB,WAAU;AAchC,IAAM,wBAAN,MAAM,+BAA8B,UAAS;;;;EAKzB;;;;EAKA;EAEhB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;EAQS;;;;;;EAOA;;;;;;EAOA;;;;EAKT,YAAY,MAAY,KAEvB;AAEG,UAAM,MAAM,GAAG;AAEf,SAAK,OAAO;AACZ,SAAK,SAAS,KAAK;AAEnB,SAAK,SAAS,WAAU;AACxB,SAAK,QAAQ,WAAU;AACvB,SAAK,OAAO,WAAU;AACtB,SAAK,SAAS,WAAU;AACxB,SAAK,QAAQ,WAAU;AACvB,SAAK,OAAO,WAAU;AACtB,SAAK,eAAe;AACpB,SAAK,eAAe;AACpB,SAAK,UAAU;AACf,SAAK,gBAAgB;AACrB,SAAK,aAAa;AAClB,SAAK,cAAc;AACnB,SAAK,YAAY;AACjB,SAAK,iBAAiB;AACtB,SAAK,SAAS;AACd,SAAK,SAAS;AACd,SAAK,SAAS;AACd,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,YAAY;AAEjB,SAAK,YAAY,IAAI,aAAa,IAAI,+CAAe,CAA+B;AACpF,SAAK,YAAY,IAAI,aAAa,IAAI,+CAAe,CAA+B;AACpF,SAAK,cAAc,IAAI,aAAa,IAAI,+CAAe,CAA+B;EAC1F;;;;;;;;;;;;;;;;;;;;;;;;;EA0BA,MAAMC,UAWI,CAAA,GACJ,UAEC;AAEH,QAAI,KAAK,SAAS;AACd,WAAK,KAAI;;AAGb,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,SAAK,cAAc;AACnB,SAAK,mBAAmB;AAExB,SAAK,YAAY;AAEjB,UAAM,SAAS,KAAK;AACpB,UAAM,kBAAmB,CAAC,CAACA,QAAO,cAAgBA,QAAO,eAAe,OAAO;AAE/E,SAAK,MAAM,CAAC,IAAI,OAAO,IAAI,CAAC;AAC5B,SAAK,MAAM,CAAC,IAAI,OAAO,IAAI,CAAC;AAC5B,SAAK,MAAM,CAAC,IAAI,OAAO,IAAI,CAAC;AAE5B,SAAK,OAAO,CAAC,IAAI,OAAO,KAAK,CAAC;AAC9B,SAAK,OAAO,CAAC,IAAI,OAAO,KAAK,CAAC;AAC9B,SAAK,OAAO,CAAC,IAAI,OAAO,KAAK,CAAC;AAE9B,SAAK,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC;AAC1B,SAAK,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC;AAC1B,SAAK,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC;AAE1B,SAAK,eAAe,OAAO,gBAAgB;AAC3C,SAAK,eAAeA,QAAO,cAAc,KAAK;AAE9C,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,QAAIA,QAAO,MAAM;AACb,aAAOA,QAAO;eAENA,QAAO,OAAOA,QAAO,QAASA,QAAO,IAAI;AAEjD,YAAMA,QAAO;AAEb,aAAOA,QAAO;AAEd,WAAKA,QAAO;eAELA,QAAO,KAAK;AACnB,YAAMA,QAAO;eAENA,QAAO,MAAM;AACpB,aAAOA,QAAO;WAEX;AACH,UAAI,CAAC,iBAAiB;AAClB,eAAO,KAAK,KAAK;;;AAIzB,UAAM,MAAMA,QAAO;AAEnB,QAAI,MAAM;AAEN,UAAI,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG;AAC7D;;AAGJ,UAAI,KAAK,CAAC,MAAM,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,KAAK,CAAC,GAAG;AACnE;;AAGJ,aAAO,KAAK,MAAK;AACjB,YAAM,aAAa,eAAe,IAAI;AAEtC,WAAK,SAAS,OAAO;AAErB,YAAMC,cAAa,QAAQ,KAAK,OAAO,KAAK,QAAQF,SAAQ;AAC5D,YAAMG,kBAAiB,cAAcD,WAAU;AAC/C,YAAM,OAAO,MAAM,kBAAkB,MAAM,GAAG,IAAI,aAAa,IAAI;AACnE,YAAM,SAASD,QAAO,UAAU,KAAK;AACrC,YAAM,MAAM,KAAK,IAAI,OAAO,KAAK,IAAI,SAAS,QAAQ,CAAC;AAEvD,WAAK,eAAe,OAAO;AAE3B,WAAK,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,IAAKE,gBAAe,CAAC,IAAI;AACtD,WAAK,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,IAAKA,gBAAe,CAAC,IAAI;AACtD,WAAK,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,IAAKA,gBAAe,CAAC,IAAI;AAEtD,WAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;AAC1B,WAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;AAC1B,WAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;AAE1B,WAAK,mBAAmB;eAGjB,OAAO,QAAQ,IAAI;AAE1B,WAAK,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE7C,WAAK,aAAa,CAAC,CAAC,OAAO,CAAC;AAE5B,WAAK,cAAc,CAAC,CAAC,QAAQ,CAAC;AAE9B,UAAI,KAAK;AACL,aAAK,MAAM,CAAC,IAAI,IAAI,CAAC;AACrB,aAAK,MAAM,CAAC,IAAI,IAAI,CAAC;AACrB,aAAK,MAAM,CAAC,IAAI,IAAI,CAAC;;AAGzB,UAAI,MAAM;AACN,aAAK,OAAO,CAAC,IAAI,KAAK,CAAC;AACvB,aAAK,OAAO,CAAC,IAAI,KAAK,CAAC;AACvB,aAAK,OAAO,CAAC,IAAI,KAAK,CAAC;;AAG3B,UAAI,IAAI;AACJ,aAAK,KAAK,CAAC,IAAI,GAAG,CAAC;AACnB,aAAK,KAAK,CAAC,IAAI,GAAG,CAAC;AACnB,aAAK,KAAK,CAAC,IAAI,GAAG,CAAC;;;AAI3B,QAAI,iBAAiB;AAEjB,UAAIF,QAAO,eAAe,uBAAuB,OAAO,mBAAmB,qBAAqB;AAC5F,aAAK,eAAe;AACpB,aAAK,eAAe,OAAO,WAAW,MAAK;AAC3C,aAAK,eAAe,OAAO,gBAAgB,WAAW,MAAK;AAC3D,eAAO,iBAAiB;;AAG5B,UAAIA,QAAO,eAAe,6BAA6B,OAAO,mBAAmB,2BAA2B;AACxG,aAAK,eAAe;AACpB,aAAK,eAAe,OAAO,WAAW,MAAK;AAC3C,aAAK,eAAe,OAAO,sBAAsB,WAAW,MAAK;AACjE,eAAO,iBAAiB;;WAEzB;AAEH,WAAK,eAAe;;AAGxB,SAAK,UAAU,SAAS,MAAM,IAAI;AAElC,SAAK,SAAS,KAAK,IAAG;AACtB,SAAK,SAAS,KAAK,UAAUA,QAAO,WAAWA,QAAO,WAAW,MAAO,KAAK;AAE7E,SAAK,UAAU;AAEf,cAAU,aAAa,KAAK,SAAS,IAAI;EAC7C;;;;;;;;;;;;;;;;;;EAmBA,OAAOA,SAAW;AACd,SAAK,QAAQA,OAAM;EACvB;EAEA,QAAQA,SAAW;AAEf,QAAI,KAAK,SAAS;AACd,WAAK,KAAI;;AAGb,UAAM,SAAS,KAAK;AAEpB,QAAI;AACJ,QAAIG;AACJ,QAAIC;AACJ,QAAIC;AAEJ,QAAIL,QAAO,MAAM;AACb,aAAOA,QAAO;eACPA,QAAO,OAAOA,QAAO,QAAQA,QAAO,IAAI;AAC/C,MAAAG,UAASH,QAAO;AAChB,MAAAI,WAAUJ,QAAO;AACjB,MAAAK,SAAQL,QAAO;WACZ;AACH,aAAO,KAAK,KAAK;;AAGrB,UAAM,MAAMA,QAAO;AAEnB,QAAI,MAAM;AAEN,UAAI,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG;AAChE;;AAGJ,YAAM,OAAO,MAAM,kBAAkB,MAAM,GAAG,IAAI,aAAa,IAAI;AAEnE,MAAAI,WAAU,OAAO,eAAe,MAAMA,QAAO;AAE7C,UAAI,KAAK,QAAQ;AACb,gBAAQ,OAAO,MAAMA,UAAS,aAAa;aACxC;AACH,gBAAQ,OAAO,KAAK,OAAO,MAAM,aAAa;;AAGlD,oBAAc,aAAa;AAC3B,UAAI;AACJ,YAAM,MAAOJ,QAAO,QAAQ,SAAaA,QAAO,MAAM,KAAK;AAE3D,UAAI,KAAK;AACL,eAAO,KAAK,IAAK,OAAQ,KAAK,KAAKA,QAAO,UAAU,KAAK,WAAW,QAAQ,CAAC;aAE1E;AACH,eAAO,QAAQ,QAAQ,OAAO,KAAK,OAAO,MAAMD,SAAQ,CAAC;;AAG7D,oBAAc,eAAe,IAAI;AAEjC,aAAO,MAAM,QAAQK,UAAS,eAAeL,SAAQ;AACrD,aAAO,OAAOK;AAEd,WAAK,OAAO,gBAAgB,QAAQ,OAAO;eAEpCD,WAAUC,YAAWC,QAAO;AAEnC,UAAIF,SAAQ;AACR,eAAO,MAAMA;;AAEjB,UAAIC,UAAS;AACT,eAAO,OAAOA;;AAElB,UAAIC,QAAO;AACP,eAAO,KAAKA;;;AAIpB,QAAIL,QAAO,YAAY;AACnB,aAAO,iBAAiBA,QAAO;;EAEvC;EAEA,UAAO;AACH,QAAI,CAAC,KAAK,SAAS;AACf;;AAEJ,UAAM,OAAO,KAAK,IAAG;AAErB,QAAIM,MAAK,OAAO,KAAK,WAAW,KAAK,SAAS,KAAK;AACnD,UAAM,WAAYA,MAAK;AAEvB,QAAIA,KAAI,GAAG;AACP,MAAAA,KAAI;;AAGR,UAAM,UAAU,KAAK,SAAS,uBAAsB,MAAMA,IAAG,GAAG,GAAG,CAAC,IAAIA;AACxE,UAAM,SAAS,KAAK;AAEpB,QAAI,KAAK,cAAc,KAAK,aAAa;AAErC,UAAI,KAAK,YAAY;AACjB,gBAAQ,OAAO,KAAK,OAAO,MAAM,aAAa;AAC9C,eAAO,MAAM,SAAS,SAAS,GAAG,GAAG,KAAK,OAAO,KAAK,OAAO,MAAM;AACnE,eAAO,OAAO,QAAQ,QAAQ,eAAe,OAAO;iBAC7C,KAAK,aAAa;AACzB,eAAO,OAAO,SAAS,SAAS,GAAG,GAAG,KAAK,QAAQ,KAAK,QAAQ,OAAO;AACvE,eAAO,KAAK,SAAS,SAAS,GAAG,GAAG,KAAK,MAAM,KAAK,MAAM,KAAK;;eAG5D,KAAK,kBAAkB;AAE9B,aAAO,MAAM,SAAS,SAAS,GAAG,GAAG,KAAK,OAAO,KAAK,OAAO,MAAM;AACnE,aAAO,OAAO,SAAS,SAAS,GAAG,GAAG,KAAK,QAAQ,KAAK,QAAQ,OAAO;AACvE,aAAO,KAAK,SAAS,SAAS,GAAG,GAAG,KAAK,MAAM,KAAK,MAAM,KAAK;;AAGnE,QAAI,KAAK,cAAc;AACnB,YAAM,QAAS,KAAK,iBAAiB,sBAAuB,uBAAsB,aAAaA,IAAG,GAAG,GAAG,CAAC,IAAI,uBAAsB,aAAaA,IAAG,GAAG,GAAG,CAAC;AAC1J,aAAO,iBAAiB,aAAa,SAAS,OAAO,GAAG,GAAG,KAAK,cAAc,KAAK,YAAY;WAE5F;AACH,aAAO,gBAAgB,QAAQ,KAAK,eAAgBA,MAAK,KAAK,eAAe,KAAK;;AAGtF,QAAI,UAAU;AACV,aAAO,gBAAgB,QAAQ,KAAK;AACpC,WAAK,KAAI;AACT;;AAEJ,cAAU,aAAa,KAAK,SAAS,IAAI;EAC7C;EAEA,OAAO,MAAMA,IAAWC,IAAWC,IAAW,GAAS;AACnD,IAAAF,MAAK;AACL,WAAO,CAACE,KAAIF,MAAKA,KAAI,KAAKC;EAC9B;EAEA,OAAO,aAAaD,IAAWC,IAAWC,IAAW,GAAS;AAC1D,IAAAF,MAAK;AACL,WAAOE,KAAIF,KAAIA,KAAIA,KAAIC;EAC3B;EAEA,OAAO,aAAaD,IAAWC,IAAWC,IAAW,GAAS;AAC1D,WAAOA,MAAK,CAAC,KAAK,IAAI,GAAG,MAAMF,KAAI,CAAC,IAAI,KAAKC;EACjD;;;;EAKA,OAAI;AACA,QAAI,CAAC,KAAK,SAAS;AACf;;AAEJ,SAAK,UAAU;AACf,SAAK,SAAS;AACd,SAAK,SAAS;AACd,QAAI,KAAK,cAAc;AACnB,WAAK,OAAO,iBAAiB,KAAK;;AAEtC,UAAM,WAAW,KAAK;AACtB,QAAI,UAAU;AACV,WAAK,YAAY;AACjB,eAAQ;;AAEZ,SAAK,UAAU,SAAS,MAAM,IAAI;EACtC;;;;EAKA,SAAM;AACF,QAAI,CAAC,KAAK,SAAS;AACf;;AAEJ,SAAK,UAAU;AACf,SAAK,SAAS;AACd,SAAK,SAAS;AACd,QAAI,KAAK,WAAW;AAChB,WAAK,YAAY;;AAErB,SAAK,YAAY,SAAS,MAAM,IAAI;EACxC;;;;;;;;EASA,IAAI,SAAS,OAAa;AACtB,SAAK,YAAY,QAAS,QAAQ,MAAU;AAC5C,SAAK,KAAI;EACb;;;;;;EAOA,IAAI,WAAQ;AACR,WAAO,KAAK,YAAY;EAC5B;;;;;;;;;EAUA,IAAI,IAAI,OAAc;AAClB,SAAK,OAAO;EAChB;;;;;;;;;EAUA,IAAI,MAAG;AACH,WAAO,KAAK;EAChB;;;;;;;EAQA,IAAI,OAAO,OAAa;AACpB,SAAK,UAAU;EACnB;;;;;;;EAQA,IAAI,SAAM;AACN,WAAO,KAAK;EAChB;;;;;;;EAQA,IAAI,MAAM,OAAc;AACpB,SAAK,SAAS;EAClB;;;;;;;EAQA,IAAI,QAAK;AACL,WAAO,KAAK;EAChB;;;;EAKA,UAAO;AACH,SAAK,KAAI;AACT,UAAM,QAAO;AACb,SAAK,UAAU,MAAK;AACpB,SAAK,UAAU,MAAK;AACpB,SAAK,YAAY,MAAK;EAC1B;;;;AGtlBJ,IAAM,eAAN,cAA2B,UAAS;;;;EAUhB;EAEhB;;;;;EAUA,YAAY,MAAY,MAOpB,CAAA,GAAE;AACF,UAAM,MAAM,GAAG;AACf,SAAK,OAAO;AACZ,SAAK,SAAS;MACV,MAAM;MACN,OAAO,IAAI,aAAa,IAAI,SAAS,CAAC,KAAK,KAAK,GAAG,CAAC;MACpD,WAAY,IAAI,cAAc,UAAa,IAAI,cAAc,OAAQ,IAAI,YAAY;;AAEzF,SAAK,KAAK,cAAc,IAAI;EAChC;;;;;;;;EASA,IAAI,MAAME,QAAsB;AAC5B,SAAK,OAAO,MAAM,IAAIA,MAAK;AAC3B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,WAAiB;AAC3B,SAAK,OAAO,YAAY,cAAc,SAAY,YAAY;AAC9D,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,KAAK,gBAAgB,IAAI;EAClC;;;;ACrFJ,IAAM,WAAN,cAAuB,UAAS;;;;EAUZ;EAEhB;;;;;;;;;;EAiBA,YAAY,MAAY,UAGpB,CAAA,GAAE;AACF,UAAM,MAAM,OAAO;AACnB,SAAK,OAAO;AACZ,SAAK,SAAS;MACV,MAAM;MACN,KAAK,IAAI,aAAa,QAAQ,OAAO,CAAC,GAAK,GAAK,CAAG,CAAC;MACpD,OAAO,IAAI,aAAa,QAAQ,SAAS,CAAC,KAAK,KAAK,GAAG,CAAC;MACxD,WAAY,QAAQ,cAAc,UAAa,QAAQ,cAAc,OAAQ,QAAQ,YAAY;MACjG,OAAO,QAAQ,SAAS;;AAE5B,SAAK,KAAK,cAAc,IAAI;EAChC;;;;;;;;EASA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;EAKA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,IAAI,OAAsB;AAC1B,SAAK,OAAO,IAAI,IAAI,KAAK;AACzB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,MAAMC,QAAsB;AAC5B,SAAK,OAAO,MAAM,IAAIA,MAAK;AAC3B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,WAAiB;AAC3B,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,KAAK,gBAAgB,IAAI;AAC9B,SAAK,KAAK,OAAM;EACpB;;;;AC7IJ,IAAM,iBAAN,MAAoB;EAGhB,cAAA;AAEI,SAAK,MAAK;EACd;;;;EAOA,QAAK;EAEL;;;;AC8BE,IAAO,kBAAP,cAA+B,UAAS;;;;EAK1B;;;;EAKhB;;;;EASA,YAAY,MAAY,UAIpB,CAAA,GAAE;AAEF,UAAM,MAAM,OAAO;AAEnB,SAAK,OAAO;AAEZ,SAAK,SAAS;MACV,SAAS,QAAQ,YAAY;MAC7B,aAAa,QAAQ,eAAe,CAAC,UAAU;MAC/C,iBAAiB,QAAQ,mBAAmB;;EAEpD;;;;;;EAOA,IAAI,QAAQ,OAAc;AACtB,QAAI,KAAK,OAAO,YAAY,OAAO;AAC/B;;AAEJ,SAAK,OAAO,UAAU;AACtB,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,UAAO;AACP,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,YAAY,OAAe;AAC3B,SAAK,OAAO,cAAc;AAC1B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,cAAW;AACX,WAAO,KAAK,OAAO;EACvB;;;;;;EAOA,IAAI,gBAAgB,OAAa;AAC7B,QAAI,KAAK,OAAO,oBAAoB,OAAO;AACvC;;AAEJ,SAAK,OAAO,kBAAkB;AAC9B,SAAK,KAAK,OAAM;EACpB;;;;;;EAOA,IAAI,kBAAe;AACf,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAO;AACP,QAAI,CAAC,KAAK,OAAO,SAAS;AACtB,aAAO;;AAEX,aAASC,KAAI,GAAG,MAAM,KAAK,OAAO,YAAY,QAAQA,KAAI,KAAKA,MAAK;AAChE,UAAI,KAAK,KAAK,eAAe,KAAK,OAAO,YAAYA,EAAC,GAAG;AACrD,eAAO;;;AAGf,WAAO;EACX;;;;EAKA,UAAO;AACH,UAAM,QAAO;EACjB;;;;AtBlEJ,IAAM,OAAN,cAAmB,UAAS;;;;;EAgBxB;;;;EAKS;;;;EAKF;;;;EAKS;;;;;EAMA;;;;EAKP;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;;;EAUA;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;EAKA,oBAAoC,CAAA;;;;EAKpC;;;;EAKA,aAAuD,CAAA;EAEhE;;;;;;EAOS;;;;;;;;;;;;;;;;EAiBA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;;;EASA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;EAET;EAEA,cAAsB;EAEtB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cAA6B;EAC7B,qBAAoC;EACpC;;;;EAKA,YAAY,SAaX;AACG,UAAM,MAAM,OAAO;AAEnB,SAAK,SAAS,QAAQ;AAEtB,UAAMC,UACF,QAAQ,eACR,SAAS,eAAuB,QAAQ,SAAS;AAErD,QAAI,EAAEA,mBAAkB,cAAc;AAClC,YAAM;;AAGV,SAAK,cAAcA;AACnB,SAAK,YAAY;AACjB,SAAK,UAAU,CAAA;AACf,SAAK,iBAAiB,CAAA;AACtB,SAAK,gBAAgB,CAAA;AACrB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,kBAAkB,CAAA;AACvB,SAAK,mBAAmB,CAAA;AACxB,SAAK,iBAAiB,CAAA;AACtB,SAAK,gBAAgB,CAAA;AACrB,SAAK,oBAAoB,CAAA;AACzB,SAAK,SAAS,CAAA;AACd,SAAK,aAAa,CAAA;AAClB,SAAK,SAAS,CAAA;AAEd,SAAK,cAAc;AACnB,SAAK,aAAa;AAClB,SAAK,qBAAqB;AAC1B,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,mBAAmB;AACxB,SAAK,yBAAyB;AAC9B,SAAK,wBAAwB;AAC7B,SAAK,sBAAsB;AAC3B,SAAK,qBAAqB;AAC1B,SAAK,uBAAuB;AAC5B,SAAK,sBAAsB;AAC3B,SAAK,qBAAqB;AAC1B,SAAK,oBAAoB;AACzB,SAAK,iBAAiB,CAAC,CAAC,QAAQ;AAChC,SAAK,cAAc;AACnB,SAAK,iBAAiB;AAEtB,SAAK,qBAAqB;AAC1B,SAAK,cAAc;AAcnB,SAAK,aAAa,IAAI,aAClB,IAAI,+CAAe,CAAuB;AAG9C,SAAK,mBAAmB,WAAW;MAC/B,QAAQ,kBAAkB,QAAQ,gBAAgB,CAAC,IAAI;MACvD,QAAQ,kBAAkB,QAAQ,gBAAgB,CAAC,IAAI;MACvD,QAAQ,kBAAkB,QAAQ,gBAAgB,CAAC,IAAI;KAC1D;AACD,SAAK,mCACD,CAAC,CAAC,QAAQ;AACd,SAAK,cAAc,CAAC,CAAC,QAAQ;AAG7B,SAAK,WAAW;MACZ,KAAK,YAAY;MACjB,KAAK,YAAY;MACjB,KAAK,YAAY;MACjB,KAAK,YAAY;;AAKrB,QAAI,kBAAkB;AACtB,QAAI,mBAAmB;AACvB,QAAI,gBAAgB;AACpB,QAAI,iBAAiB;AACrB,QAAI,qBAAqB;AACzB,QAAI,oBAAoB;AACxB,QAAI,aAAiC;AAErC,QAAI,sBAAqC;AAEzC,SAAK,UAAU,KAAK,OAAO,OAAO,UAAU,MAAK;AAC7C,YAAM,cAAc,KAAK;AACzB,YAAM,qBAAqB,KAAK,gBAAgB,oBAAoB;AACpE,YAAM,gBACF,OAAO,eAAe,mBACtB,OAAO,gBAAgB;AAC3B,YAAM,cACF,YAAY,gBAAgB,iBAC5B,YAAY,iBAAiB;AACjC,YAAM,aACF,YAAY,eAAe,sBAC3B,YAAY,cAAc;AAC9B,YAAM,SAAS,YAAY;AAC3B,YAAM,YAAY,WAAW;AAE7B,UACI,sBACA,iBACA,eACA,cACA,WACF;AAEE,YAAI,sBAAsB,eAAe,YAAY;AACjD,gBAAM,WAAW,YAAY;AAC7B,gBAAM,YAAY,YAAY;AAC9B,cAAI,sBAAsB,aAAa;;AAWvC,gBAAM,WAAW,KAAK;AACtB,mBAAS,CAAC,IAAI,YAAY;AAC1B,mBAAS,CAAC,IAAI,YAAY;AAC1B,mBAAS,CAAC,IAAI;AACd,mBAAS,CAAC,IAAI;AACd,cAAI,CAAC,sBAAsB,aAAa;AACpC,iBAAK,WAAW,SAAS,MAAM,QAAQ;;AAE3C,0BAAgB;AAChB,2BAAiB;;AAGrB,YAAI,oBAAoB;;AAGxB,YAAI,eAAe;AACf,4BAAkB,OAAO;AACzB,6BAAmB,OAAO;;AAE9B,YAAI,YAAY;AACZ,+BAAqB,YAAY;AACjC,8BAAoB,YAAY;;AAEpC,qBAAa;;IAErB,CAAC;AAED,SAAK,SAAS,IAAI,OAAO,IAAI;AAE7B,SAAK,MAAM,IAAI,IAAI,MAAM,CAAA,CAAE;AAE3B,SAAK,YAAY,IAAI,UAAU,MAAM,CAAA,CAAE;AAEvC,SAAK,eAAe,IAAI,sBAAsB,MAAM;MAChD,UAAU;KACb;AAED,SAAK,UAAU,IAAI,QAAQ,MAAM;MAC7B,OAAO,QAAQ;MACf,OAAO,QAAQ;MACf,QAAQ,QAAQ;KACnB;AAED,SAAK,eAAe,IAAI,iBAAiB,MAAM;MAC3C,MAAM;MACN,WAAW,CAAC,KAAK,KAAK,GAAG;MACzB,WAAW;MACX,OAAO;MACP,WAAW,CAAC,KAAK,KAAK,GAAG;MACzB,WAAW;MACX,WAAW;KACd;AAED,SAAK,oBAAoB,IAAI,iBAAiB,MAAM;MAChD,MAAM;MACN,WAAW,CAAC,GAAK,GAAK,CAAG;MACzB,WAAW;MACX,OAAO;MACP,WAAW,CAAC,KAAK,KAAK,GAAG;MACzB,WAAW;MACX,WAAW;KACd;AAED,SAAK,mBAAmB,IAAI,iBAAiB,MAAM;MAC/C,MAAM;MACN,WAAW,CAAC,GAAK,GAAK,CAAG;MACzB,WAAW;MACX,OAAO;MACP,WAAW,CAAC,KAAK,KAAK,GAAG;MACzB,WAAW;MACX,WAAW;KACd;AAED,SAAK,QAAQ,IAAI,MAAM,MAAM;MACzB,WAAW,CAAC,GAAK,GAAK,CAAG;MACzB,WAAW;MACX,WAAW;MACX,SAAS;MACT,aAAa,CAAC,aAAa;KAC9B;AAED,SAAK,kBAAkB,IAAI,gBAAgB,MAAM;MAC7C,SAAS;MACT,aAAa,CAAC,UAAU;MACxB,iBAAiB;KACpB;AAED,SAAK,iBAAiB,IAAI,eAAe,MAAM;MAC3C,WAAW;MACX,aAAa;MACb,mBAAmB;MACnB,yBAAyB;MACzB,yBAAyB;MACzB,iBAAiB;MACjB,cAAc;MACd,cAAc;KACjB;AAED,SAAK,gBAAgB,IAAI,cAAc,MAAM;MACzC,WAAW;KACd;AAED,SAAK,SAAS,CAAA;AAEd,SAAK,iBAAiB,CAAC,CAAC,QAAQ;AAEhC,SAAK,aAAa,QAAQ,eAAe;AAEzC,SAAK,kBAAkB,IAAI,aACvB,IAAI,+CAAe,CAAoB;AAG3C,SAAK,oBAAoB,IAAI,aACzB,IAAI,+CAAe,CAAoB;AAG3C,SAAK,qBAAqB,IAAI,aAC1B,IAAI,+CAAe,CAAoB;AAG3C,SAAK,iBAAiB,IAAI,aACtB,IAAI,+CAAe,CAAoB;AAG3C,SAAK,iBAAiB,IAAI,aACtB,IAAI,+CAAe,CAAmB;AAG1C,SAAK,mBAAmB,IAAI,aACxB,IAAI,+CAAe,CAAmB;AAG1C,SAAK,wBAAwB,IAAI,aAC7B,IAAI,+CAAe,CAAsB;AAG7C,SAAK,0BAA0B,IAAI,aAC/B,IAAI,+CAAe,CAAsB;AAG7C,SAAK,oBAAoB,IAAI,aACzB,IAAI,+CAAe,CAAc;AAGrC,SAAK,qBAAqB,IAAI,aAC1B,IAAI,+CAAe,CAAc;AAGrC,QAAI,aAAa,MAAM;MACnB,OAAO,CAAC,GAAK,GAAK,CAAG;MACrB,WAAW;KACd;AAED,QAAI,SAAS,MAAM;MACf,KAAK,CAAC,KAAK,MAAK,IAAI;MACpB,OAAO,CAAC,KAAK,KAAK,CAAG;MACrB,WAAW;MACX,OAAO;KACV;AAED,QAAI,SAAS,MAAM;MACf,KAAK,CAAC,MAAM,IAAM,GAAG;MACrB,OAAO,CAAC,GAAG,GAAG,GAAE;MAChB,WAAW;MACX,OAAO;KACV;AAED,QAAI,SAAS,MAAM;MACf,KAAK,CAAC,MAAM,IAAM,IAAI;MACtB,OAAO,CAAC,GAAI,GAAI,CAAC;MACjB,WAAW;MACX,OAAO;KACV;EAEL;;;;EAKA,kBAAe;AACX,eAAW,MAAM,KAAK,OAAO,MAAM,QAAQ;AACvC,WAAK,gCAAgC,KAAK,OAAO,MAAM,OAAO,EAAE,CAAC;;AAErE,SAAK,OAAO,MAAM,eAAe,UAAU,CAAC,OAAc,eAA0B;AAC5E,WAAK,gCAAgC,UAAU;IACnD,CAAC;AAEL,SAAK,OAAO,MAAM,iBAAiB,UAAU,CAAC,OAAc,eAA0B;AAC9E,WAAK,iCAAiC,UAAU;IACpD,CAAC;EAET;EAEA,gCAAgC,YAAsB;AAIlD,UAAM,eAAe,WAAW;AAChC,UAAM,kBAAkB,KAAK,OAAO,SAAS;AAC7C,aAAS,MAAM,cAAc;AACzB,YAAM,cAAc,aAAa,EAAE;AACnC,YAAM,iBAAiB,gBAAgB,EAAE;AACzC,YAAM,UAAU,YAAY,WAAW;AACvC,UAAI,YAAY,KAAK,OAAO,OAAO;AACnC,UAAI,CAAC,WAAW;AACZ,YAAI,CAAC,KAAK,YAAY;AAClB;;AAEJ,oBAAY,IAAI,UAAU;UACtB,IAAI;UACJ,MAAM;UACN,QAAQ,KAAK;SAChB;AACD,aAAK,OAAO,OAAO,IAAI;AACvB,kBAAU,YAAY,IAAI,MAAK;AAC3B,iBAAO,KAAK,OAAO,UAAU,EAAE;AAC/B,eAAK,iBAAiB,SAAS,MAAM,SAAS;QAClD,CAAC;AACD,aAAK,eAAe,SAAS,MAAM,SAAS;;AAEhD,YAAM,aAAa,IAAI,WAAW,WAAW,aAAa,cAAc;AACxE,gBAAU,mBAAmB,UAAU;AACvC,WAAK,mBAAmB,UAAU;AAClC,WAAK,gBAAgB,SAAS,MAAM,UAAU;;EAEtD;;;;;;;;;;;;;;;EAgBA,cAAc,YAAkB;AAC5B,QAAI,eAAe,iBAAiB,eAAe,YAAY;AAC3D,aAAO,IAAI,SAAS,0GAA0G;;AAElI,SAAK,cAAc;EACvB;;;;;;;;;;;EAYA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;EAKA,IAAI,OAAI;AACJ,WAAO,KAAK,OAAO,MAAM;EAC7B;;;;;;EAOA,IAAI,kBAAe;AACf,WAAO,KAAK;EAChB;;;;;;EAOA,IAAI,gBAAgB,OAAsB;AACtC,QAAI,OAAO;AACP,WAAK,iBAAiB,CAAC,IAAI,MAAM,CAAC;AAClC,WAAK,iBAAiB,CAAC,IAAI,MAAM,CAAC;AAClC,WAAK,iBAAiB,CAAC,IAAI,MAAM,CAAC;WAC/B;AACH,WAAK,iBAAiB,CAAC,IAAI;AAC3B,WAAK,iBAAiB,CAAC,IAAI;AAC3B,WAAK,iBAAiB,CAAC,IAAI;;AAE/B,SAAK,OAAM;EACf;;;;;;;;;;;;;EAcA,IAAI,kCAA+B;AAC/B,WAAO,KAAK;EAChB;;;;;;;;;EAUA,IAAI,gCACA,iCAAwC;AAExC,SAAK,mCACD,oCAAoC;EAC5C;;;;EAKA,IAAI,cAAW;AAEX,WAAO;EACX;;;;;;EAOA,IAAI,gBAAa;AACb,WAAO,KAAK;EAChB;;;;;;EAOA,IAAI,cAAc,OAAc;AAC5B,QAAI,KAAK,mBAAmB,OAAO;AAC/B;;AAEJ,SAAK,iBAAiB;AACtB,SAAK,OAAM;EACf;;;;EAKA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;EAKA,IAAI,YAAS;AACT,QAAI,CAAC,KAAK,YAAY;AAClB,WAAK,aAAa,OAAO,KAAK,KAAK,OAAO;;AAE9C,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAoB,OAAO,KAAK,KAAK,cAAc;;AAE5D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,kBAAe;AACf,QAAI,CAAC,KAAK,kBAAkB;AACxB,WAAK,mBAAmB,OAAO,KAAK,KAAK,aAAa;;AAE1D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,wBAAqB;AACrB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,uBAAoB;AACpB,QAAI,CAAC,KAAK,uBAAuB;AAC7B,WAAK,wBAAwB,OAAO,KAAK,KAAK,kBAAkB;;AAEpE,WAAO,KAAK;EAChB;;;;EAKA,IAAI,qBAAkB;AAClB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,QAAI,CAAC,KAAK,oBAAoB;AAC1B,WAAK,qBAAqB,OAAO,KAAK,KAAK,eAAe;;AAE9D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,sBAAmB;AACnB,WAAO,KAAK;EAChB;;;;EAKA,IAAI,qBAAkB;AAClB,QAAI,CAAC,KAAK,qBAAqB;AAC3B,WAAK,sBAAsB,OAAO,KAAK,KAAK,gBAAgB;;AAEhE,WAAO,KAAK;EAChB;;;;EAKA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAoB,OAAO,KAAK,KAAK,cAAc;;AAE5D,WAAO,KAAK;EAChB;;;;EAKA,IAAI,oBAAiB;AACjB,WAAO,KAAK;EAChB;;;;EAKA,mBAAmB,YAAsB;AACrC,SAAK,QAAQ,WAAW,EAAE,IAAI;AAC9B,SAAK;AACL,SAAK,aAAa;EACtB;;;;EAKA,qBAAqB,YAAsB;AACvC,WAAO,KAAK,QAAQ,WAAW,EAAE;AACjC,WAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAO,KAAK,cAAc,WAAW,EAAE;AACvC,WAAO,KAAK,mBAAmB,WAAW,EAAE;AAC5C,WAAO,KAAK,gBAAgB,WAAW,EAAE;AACzC,WAAO,KAAK,iBAAiB,WAAW,EAAE;AAC1C,WAAO,KAAK,eAAe,WAAW,EAAE;AACxC,SAAK;AACL,SAAK,aAAa;EACtB;;;;EAKA,wBACI,YACA,SACA,SAAkB,MAAI;AAEtB,QAAI,SAAS;AACT,WAAK,eAAe,WAAW,EAAE,IAAI;AACrC,WAAK;WACF;AACH,aAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAK;;AAET,SAAK,oBAAoB;AACzB,QAAI,QAAQ;AACR,WAAK,mBAAmB,SAAS,MAAM,UAAU;;EAEzD;;;;EAKA,oBACI,YACA,QACA,SAAkB,MAAI;AAEtB,QAAI,QAAQ;AACR,WAAK,cAAc,WAAW,EAAE,IAAI;AACpC,WAAK;WACF;AACH,aAAO,KAAK,cAAc,WAAW,EAAE;AACvC,WAAK;;AAET,SAAK,mBAAmB;AACxB,QAAI,QAAQ;AACR,WAAK,eAAe,SAAS,MAAM,UAAU;;EAErD;;;;EAKA,yBAAyB,YAAwB,aAAoB;AACjE,QAAI,aAAa;AACb,WAAK,mBAAmB,WAAW,EAAE,IAAI;AACzC,WAAK;WACF;AACH,aAAO,KAAK,mBAAmB,WAAW,EAAE;AAC5C,WAAK;;AAET,SAAK,wBAAwB;EACjC;;;;EAKA,sBAAsB,YAAwB,UAAiB;AAC3D,QAAI,UAAU;AACV,WAAK,gBAAgB,WAAW,EAAE,IAAI;AACtC,WAAK;WACF;AACH,aAAO,KAAK,gBAAgB,WAAW,EAAE;AACzC,WAAK;;AAET,SAAK,qBAAqB;EAC9B;;;;EAKA,sBAAsB,YAAwB,WAAkB;AAC5D,QAAI,WAAW;AACX,WAAK,iBAAiB,WAAW,EAAE,IAAI;AACvC,WAAK;WACF;AACH,aAAO,KAAK,iBAAiB,WAAW,EAAE;AAC1C,WAAK;;AAET,SAAK,sBAAsB;EAC/B;;;;EAKA,qBAAqB,YAAwB,gBAAuB;AAChE,QAAI,gBAAgB;AAChB,WAAK,eAAe,WAAW,EAAE,IAAI;AACrC,WAAK;WACF;AACH,aAAO,KAAK,eAAe,WAAW,EAAE;AACxC,WAAK;;AAET,SAAK,oBAAoB;EAC7B;;;;;;EAOA,mBAAmB,oBAAsC;AACrD,QAAI,KAAK,mBAAmB,MAAMC,YAAU;AAC5C,QAAI,KAAK,cAAc,EAAE,GAAG;AACxB,WAAK,MACD,yBAAyB,EAAE,8CAA8C;AAE7E,WAAKA,YAAU;;AAEnB,UAAM,eAAe,IAAI,aAAa,MAAM,kBAAkB;AAC9D,SAAK,sBAAsB,YAAY;AACvC,iBAAa,YAAY,IAAI,MAAK;AAC9B,WAAK,wBAAwB,YAAY;IAC7C,CAAC;AACD,WAAO;EACX;;;;EAKA,qBAAkB;AACd,UAAM,YAAY,OAAO,KAAK,KAAK,aAAa;AAChD,aAASC,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,WAAK,cAAc,UAAUA,EAAC,CAAC,EAAE,QAAO;;AAE5C,SAAK,kBAAkB,SAAS;AAChC,SAAK,qBAAqB;EAC9B;;;;EAKA,uBAAoB;AAChB,QAAI,KAAK,oBAAoB;AACzB,aAAO,KAAK;;AAEhB,QAAI,KAAK,kBAAkB,WAAW,GAAG;AACrC,aAAQ,KAAK,qBAAqB;;AAEtC,QAAI;AACJ,UAAM,YAAY,CAAA;AAClB,aAASA,KAAI,GAAG,MAAM,KAAK,kBAAkB,QAAQA,KAAI,KAAKA,MAAK;AAC/D,qBAAe,KAAK,kBAAkBA,EAAC;AACvC,gBAAU,KAAK,IAAI;;AAEvB,cAAU,KAAK,GAAG;AAClB,SAAK,qBAAqB,UAAU,KAAK,EAAE;AAC3C,WAAO,KAAK;EAChB;;;;EAKA,cAAc,OAA2C;AACrD,SAAK,WAAW,KAAK,KAAK;AAC1B,SAAK,OAAO,MAAM,EAAE,IAAI;AACxB,SAAK,cAAc;AACnB,SAAK,QAAO;EAChB;;;;EAKA,gBAAgB,OAA2C;AACvD,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,UAAI,KAAK,WAAWA,EAAC,EAAE,OAAO,MAAM,IAAI;AACpC,aAAK,WAAW,OAAOA,IAAG,CAAC;AAC3B,aAAK,cAAc;AACnB,eAAO,KAAK,OAAO,MAAM,EAAE;AAC3B,aAAK,QAAO;AACZ;;;EAGZ;;;;EAKA,cAAW;AACP,UAAM,WAAW,OAAO,KAAK,KAAK,MAAM;AACxC,aAASA,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,WAAK,OAAO,SAASA,EAAC,CAAC,EAAE,QAAO;;EAExC;;;;EAKA,gBAAa;AACT,QAAI,KAAK,aAAa;AAClB,aAAO,KAAK;;AAEhB,QAAI,KAAK,WAAW,WAAW,GAAG;AAC9B,aAAQ,KAAK,cAAc;;AAE/B,UAAM,YAAY,CAAA;AAClB,UAAM,SAAS,KAAK;AACpB,aAASA,KAAI,GAAG,MAAM,OAAO,QAAQA,KAAI,KAAKA,MAAK;AAC/C,YAAM,QAAa,OAAOA,EAAC;AAC3B,gBAAU,KAAK,GAAG;AAClB,gBAAU,KAAK,iBAAiB,WAAW,MAAM,GAAG;AACpD,gBAAU,KAAK,MAAM,UAAU,UAAU,MAAM,GAAG;AAClD,UAAI,MAAM,aAAa;AACnB,kBAAU,KAAK,IAAI;;;AAS3B,cAAU,KAAK,GAAG;AAClB,SAAK,cAAc,UAAU,KAAK,EAAE;AACpC,WAAO,KAAK;EAChB;;;;EAKA,UAAO;AACH,SAAK,OAAO,SAAS,gBAAgB,KAAK,SAAS;EACvD;;;;EAKA,SAAM;AACF,SAAK,OAAO,SAAS,cAAc,KAAK,SAAS;EACrD;;;;EAKA,8BAA2B;AACvB,WAAO,CAAC,KAAK,KAAK,KAAK,CAAC;EAC5B;;;;;;;;;;;EAYA,kBAAkB,WAAqB,SAAgB;AACnD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,YAAY;AACvC,iBAAW,UAAU;AACrB,aAAO;IACX,CAAC;EACL;;;;;;;;;;EAWA,qBAAqB,WAAqB,YAAmB;AACzD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,eAAe;AAC1C,iBAAW,aAAa;AACxB,aAAO;IACX,CAAC;EACL;;;;;;;;;;EAWA,iBAAiB,WAAqB,QAAe;AACjD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,WAAW;AACtC,iBAAW,SAAS;AACpB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,mBAAmB,WAAqB,UAAiB;AACrD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,aAAa;AACxC,iBAAW,WAAW;AACtB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,sBAAsB,WAAqB,aAAoB;AAC3D,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,gBAAgB;AAC3C,iBAAW,cAAc;AACzB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,iBAAiB,WAAqB,QAAe;AACjD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,WAAW;AACtC,UAAI,SAAS;AACT,mBAAW,SAAS;;AAExB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,oBAAoB,WAAqB,UAAkB;AACvD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,iBAAW,WAAW;IAC1B,CAAC;EACL;;;;;;;;;;;EAYA,kBAAkB,WAAqB,SAAe;AAClD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,YAAY;AACvC,UAAI,SAAS;AACT,mBAAW,UAAU;;AAEzB,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,mBAAmB,WAAqB,UAAiB;AACrD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,aAAa;AACxC,UAAI,SAAS;AACT,mBAAW,WAAW;;AAE1B,aAAO;IACX,CAAC;EACL;;;;;;;;;;;EAYA,oBAAoB,WAAqB,WAAkB;AACvD,WAAO,KAAK,YAAY,WAAW,CAAC,eAA0B;AAC1D,YAAM,UAAU,WAAW,cAAc;AACzC,UAAI,SAAS;AACT,mBAAW,YAAY;;AAE3B,aAAO;IACX,CAAC;EACL;;;;;;;;EASA,YAAY,WAAqB,UAAkB;AAC/C,QAAI,UAAU;AACd,aAASA,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,YAAM,KAAK,UAAUA,EAAC;AACtB,UAAI,aAAa,KAAK,QAAQ,EAAE;AAChC,UAAI,YAAY;AACZ,kBAAU,SAAS,UAAU,KAAK;;;AAG1C,WAAO;EACX;;;;;;;;;;;;;EAcA,YAAY,iBAAgC;AACxC,QAAI,YAAY,KAAK,OAAO,gBAAgB,EAAE;AAC9C,QAAI,CAAC,WAAW;AACZ,kBAAY,IAAI,UAAU;;QAEtB,IAAI,gBAAgB;QACpB,MAAM;QACN,QAAQ,KAAK;OAChB;AACD,WAAK,OAAO,gBAAgB,EAAE,IAAI;AAClC,WAAK,eAAe,SAAS,MAAM,SAAS;AAC5C,gBAAU,YAAY,IAAI,MAAK;AAC3B,eAAO,KAAK,OAAO,UAAU,EAAE;AAC/B,aAAK,iBAAiB,SAAS,MAAM,SAAS;MAClD,CAAC;;AAEL,cAAU,cAAc;AACxB,WAAO;EACX;;;;;;;;;;;;;EAcA,KAAK,YAAwB,YAAuB;AAChD,WAAO,KAAK,OAAO,SAAS,KAAK,KAAK,WAAW,YAAY,UAAU;EAC3E;;;;;;;;EASA,gBAAa;AACT,QAAI,KAAK,gBAAgB;AACrB;;AAEJ,SAAK,OAAO,SAAS,cAAc,KAAK,SAAS;AACjD,SAAK,iBAAiB;EAC1B;;;;;;;EAQA,YAAY,gBAAgC,gBAA+B;AA6DvE,WAAO,IAAI,eAAc;EAC7B;EAEA,sBAAsB,cAA0B;AAC5C,SAAK,kBAAkB,KAAK,YAAY;AACxC,SAAK,cAAc,aAAa,EAAE,IAAI;AACtC,SAAK,qBAAqB;AAC1B,SAAK,QAAO;AACZ,SAAK,sBAAsB,SAAS,MAAM,YAAY;EAC1D;EAEA,wBAAwB,cAA0B;AAC9C,aAASA,KAAI,GAAG,MAAM,KAAK,kBAAkB,QAAQA,KAAI,KAAKA,MAAK;AAC/D,UAAI,KAAK,kBAAkBA,EAAC,EAAE,OAAO,aAAa,IAAI;AAClD,aAAK,kBAAkB,OAAOA,IAAG,CAAC;AAClC,aAAK,qBAAqB;AAC1B,eAAO,KAAK,cAAc,aAAa,EAAE;AACzC,aAAK,QAAO;AACZ,aAAK,wBAAwB,SAAS,MAAM,YAAY;AACxD;;;EAGZ;EAEA,+BAA4B;AACxB,WAAO,KAAK,kBAAkB;EAClC;;;;;;EAOA,UAAO;AACH,SAAK,OAAO,OAAO,YAAY,KAAK,OAAO;AAC3C,SAAK,mBAAkB;AACvB,SAAK,oBAAmB;AACxB,SAAK,gBAAgB,MAAK;AAC1B,SAAK,kBAAkB,MAAK;AAC5B,SAAK,mBAAmB,MAAK;AAC7B,SAAK,eAAe,MAAK;AACzB,SAAK,eAAe,MAAK;AACzB,SAAK,iBAAiB,MAAK;AAC3B,SAAK,sBAAsB,MAAK;AAChC,SAAK,wBAAwB,MAAK;AAClC,UAAM,QAAO;EACjB;EAEA,iCAAiC,YAAsB;AACnD,UAAM,UAAU,WAAW;AAC3B,aAAS,MAAM,SAAS;AACpB,YAAM,SAAS,QAAQ,EAAE;AACzB,YAAM,UAAU,OAAO,WAAW;AAClC,UAAI,YAAY,KAAK,OAAO,OAAO;AACnC,YAAM,aAAa,KAAK,QAAQ,OAAO,EAAE;AACzC,WAAK,qBAAqB,UAAU;AACpC,UAAI,WAAW;AACX,kBAAU,qBAAqB,UAAU;AACzC,YAAI,UAAU,eAAe,UAAU,eAAe,GAAG;AACrD,oBAAU,QAAO;;;AAGzB,WAAK,kBAAkB,SAAS,MAAM,UAAU;;EAExD;EAEA,qBAAkB;AACd,UAAM,aAAa,KAAK;AACxB,aAAS,MAAM,YAAY;AACvB,YAAM,YAAY,WAAW,EAAE;AAC/B,gBAAU,QAAO;;EAEzB;EAEA,sBAAmB;AACf,UAAM,UAAU,KAAK;AACrB,aAAS,MAAM,SAAS;AACpB,YAAM,SAAS,QAAQ,EAAE;AACzB,YAAM,cAAc,OAAO;AAC3B,YAAM,UAAU,YAAY,WAAW;AACvC,UAAI,YAAY,KAAK,OAAO,OAAO;AACnC,YAAM,aAAa,KAAK,QAAQ,OAAO,EAAE;AACzC,WAAK,qBAAqB,UAAU;AACpC,UAAI,WAAW;AACX,kBAAU,qBAAqB,UAAU;AACzC,YAAI,UAAU,eAAe,UAAU,eAAe,GAAG;AACrD,oBAAU,QAAO;;;AAGzB,WAAK,kBAAkB,SAAS,MAAM,UAAU;;EAExD;;;;ADprDE,IAAO,SAAP,cAAsB,UAAS;;;;EAiBxB;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;EASA;;;;;;;;;EAUA;;;;;;;;EASA;;;;;;;EAQT;;;;;EAMS,aAAqB,oBAAI,KAAI,GAAI,QAAO;;;;;;EAOxC;EAET;;;;;;;;;;;;;;;EAgBA,YAAYC,SAOX;AACG,UAAM,MAAM,CAAA,CAAE;AAEd,SAAK,KAAKA,QAAO,MAAMC,YAAU;AAEjC,QAAID,QAAO,SAAS,WAAW,QAAW;AACtC,YAAM,IAAI,SAAS,sFAAsF;;AAG7G,SAAK,QAAQ,IAAI,aAAa,IAAI,+CAAe,CAAkB;AACnE,SAAK,SAAS,IAAI,aAAa,IAAI,+CAAe,CAAsB;AACxE,SAAK,gBAAgB,IAAI,aAAa,IAAI,+CAAe,CAAgB;AACzE,SAAK,kBAAkB,IAAI,aAAa,IAAI,+CAAe,CAAgB;AAE3E,SAAK,WAAW,CAAA;AAChB,SAAK,WAAW;AAChB,SAAK,QAAQ,CAAA;AACb,SAAK,YAAY;AAEjB,SAAK,eAAe;MAChB,UAAU;MACV,UAAU;MACV,eAAe;MACf,eAAe;MACf,eAAe;MACf,cAAc;MACd,eAAe;MACf,gBAAgB;;AAGpB,SAAK,QAAQA,QAAO,SAAS,IAAI,MAAK;AAEtC,IAAAA,QAAO,SAAS,aAAa,IAAI;AACjC,IAAAA,QAAO,SAAS,gBAAgB,KAAK,YAAY;AAEjD,SAAK,WAAWA,QAAO;AAEvB,SAAK,sBAAsB,CAAA;AAE3B,SAAK,MAAM,eAAe,UAAU,CAAC,OAAc,eAA0B;AACzE,WAAK,SAAS,iBAAiB,UAAU;IAC7C,CAAC;AACD,SAAK,MAAM,iBAAiB,UAAU,CAAC,OAAc,eAA0B;AAC3E,WAAK,SAAS,iBAAiB,UAAU;IAC7C,CAAC;AAED,cAAU,eAAe,IAAI;EACjC;;;;;;;;;;;;EAaA,QAAQE,KAAO;AACX,QAAI,WAAWA,IAAG,SAAQ;AAK1B,QAAI,YAAY,KAAK,qBAAqB;AACtC,aAAO,KAAK,oBAAoB,QAAQ,EAAE;;AAG9C,QAAI,aAAa;AACjB,QAAI,YAAY;AAEhB,QAAI;AAOJ,UAAM,cAAc,YAAa,MAAI;AACjC,iBAAW;AACX;IACJ;AAOA,UAAM,YAAY,KAAK,OAAO,IAAI,MAAK;AACnC,YAAM,MAAM;AACZ,UAAI,MAAM,YAAY;AAClB,qBAAa;AACb,QAAAA,IAAG,GAAG,QAAQ;;IAEtB,CAAC;AAKD,SAAK,oBAAoB,QAAQ,IAAI,EAAC,WAAW,YAAW;AAE5D,WAAO;EACX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCA,WAAWF,SAAkB;AACzB,QAAI,KAAK,SAAS,UAAU,KAAK,aAAa,UAAU;AACpD,aAAO,IAAI,SAAS,0EAA0E,KAAK,aAAa,QAAQ,aAAa;;AAEzI,QAAI,SAASA,QAAO,MAAMC,YAAU;AACpC,QAAI,KAAK,MAAM,MAAM,GAAG;AACpB,aAAO,IAAI,SAAS,iBAAiB,MAAM,iCAAiC;;AAGhF,UAAM,cAAcD,QAAO,eAAe,SAAS,eAAeA,QAAO,SAAS;AAClF,QAAI,EAAE,uBAAuB,cAAc;AACvC,aAAO,IAAI,SAAS,gEAAgE;;AAExF,UAAM,OAAO,IAAI,KAAK,MAAM,EAAC,QAAQ,QAAQ,KAAI,GAAGA,OAAM,CAAC;AAC3D;AACI,YAAM,SAA0B,KAAK,SAAS,WAAW,IAAI;AAC7D,UAAI,kBAAkB,UAAU;AAC5B,aAAK,MAAM,gCAAgC,KAAK,MAAM,OAAO,OAAO,OAAO,EAAE;AAC7E,eAAO;;;AAGf,SAAK,cAAc,IAAI;AACvB,SAAK,YAAY,IAAI,MAAK;AACtB,WAAK,gBAAgB,IAAI;AACzB,WAAK,SAAS,WAAW,IAAI;AAC7B,WAAK,gBAAgB,SAAS,MAAM,IAAI;IAC5C,CAAC;AAGD,aAAS,MAAM,KAAK,MAAM,QAAQ;AAC9B,WAAK,SAAS,iBAAiB,KAAK,MAAM,OAAO,EAAE,CAAC;;AAExD,SAAK,gBAAe;AACpB,SAAK,cAAc,SAAS,MAAM,IAAI;AACtC,WAAO;EACX;;;;;;EAOA,SAAM;AACF,aAAS,UAAU,KAAK,OAAO;AAC3B,WAAK,MAAM,MAAM,EAAE,OAAM;;EAEjC;;;;;;;;;EAUA,IAAI,SAAe;AACf,WAAO,QAAQ,IAAI,SAAS,KAAK,qBAAqB,OAAO,CAAC,EAAE;EACpE;;;;;;;;;EAUA,KAAK,SAAe;AAChB,WAAO,QAAQ,KAAK,UAAU,KAAK,qBAAqB,OAAO,CAAC,EAAE;EACtE;;;;;;;;;EAUA,MAAM,SAAe;AACjB,WAAO,QAAQ,MAAM,WAAW,KAAK,qBAAqB,OAAO,CAAC,EAAE;EACxE;;;;;EAMA,OAAOA,SAAW;AACd,aAAS,YAAY,GAAG,YAAY,KAAK,SAAS,QAAQ,aAAa;AAGlE,WAAK,SAAS,OAAO,WAAW,EAAC,OAAO,MAAK,CAAC;;EAEvD;EAEA,qBAAqB,SAAe;AAChC,WAAO,IAAI,KAAK,YAAY,IAAI,KAAK,SAAS,KAAK,EAAE,CAAC,OAAO,OAAO;EACxE;EAEA,cAAc,MAAU;AACpB,QAAI,KAAK,MAAM,KAAK,EAAE,GAAG;AACrB;;AAEJ,SAAK,MAAM,KAAK,EAAE,IAAI;AACtB,aAAS,YAAY,KAAK,aAAa;AACnC,UAAI,CAAC,KAAK,SAAS,SAAS,GAAG;AAC3B,aAAK,SAAS,SAAS,IAAI;AAC3B,aAAK;AACL,aAAK,YAAY;AACjB;;;EAGZ;EAEA,gBAAgB,MAAU;AACtB,QAAI,CAAC,KAAK,MAAM,KAAK,EAAE,GAAG;AACtB;;AAEJ,WAAO,KAAK,MAAM,KAAK,EAAE;AACzB,WAAO,KAAK,SAAS,KAAK,SAAS;AACnC,SAAK;EACT;;;;EAKA,UAAO;AACH,QAAI,KAAK,WAAW;AAChB;;AAEJ,SAAK,SAAS,aAAY;AAC1B,cAAU,iBAAiB,IAAI;AAC/B,aAAS,MAAM,KAAK,OAAO;AACvB,WAAK,MAAM,EAAE,EAAE,QAAO;;AAE1B,SAAK,MAAM,MAAK;AAChB,SAAK,OAAO,MAAK;AACjB,SAAK,cAAc,MAAK;AACxB,SAAK,gBAAgB,MAAK;AAC1B,UAAM,QAAO;EACjB;;;;AwB7YJ,IAAM,aAAN,cAAyB,UAAS;;;;EAUd;EAEhB;;;;;;;;;;;;;;EAsBA,YAAY,MAAY,MAiBpB,CAAA,GAAE;AAEF,UAAM,MAAM,GAAG;AAEf,SAAK,OAAO;AAGZ,SAAK,SAAS;MACV,MAAM;MACN,KAAK,IAAI,aAAa,IAAI,OAAO,CAAC,GAAK,GAAK,CAAG,CAAC;MAChD,OAAO,IAAI,aAAa,IAAI,SAAS,CAAC,KAAK,KAAK,GAAG,CAAC;MACpD,WAAW;;MAEX,aAAa,IAAI,aAAa,CAAC,IAAI,qBAAqB,IAAI,mBAAmB,IAAI,oBAAoB,CAAC;MACxG,OAAO,IAAI,SAAS;;AAGxB,SAAK,KAAK,cAAc,IAAI;EAChC;;;;EAKA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,MAAG;AACH,WAAO,KAAK,OAAO;EACvB;;;;;;;;;;EAWA,IAAI,IAAI,KAAoB;AACxB,SAAK,OAAO,IAAI,IAAI,OAAO,CAAC,GAAK,GAAK,CAAG,CAAC;AAC1C,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,QAAK;AACL,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,MAAMG,QAAsB;AAC5B,SAAK,OAAO,MAAM,IAAIA,UAAS,CAAC,KAAK,KAAK,GAAG,CAAC;AAC9C,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,YAAS;AACT,WAAO,KAAK,OAAO;EACvB;;;;;;;;EASA,IAAI,UAAU,WAAiB;AAC3B,QAAI,cAAc,KAAK,OAAO,WAAW;AACrC;;AAEJ,SAAK,OAAO,YAAY;AACxB,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,sBAAmB;AACnB,WAAO,KAAK,OAAO,YAAY,CAAC;EACpC;;;;;;;;EASA,IAAI,oBAAoB,OAAa;AACjC,SAAK,OAAO,YAAY,CAAC,IAAI;AAC7B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,oBAAiB;AACjB,WAAO,KAAK,OAAO,YAAY,CAAC;EACpC;;;;;;;;EASA,IAAI,kBAAkB,OAAa;AAC/B,SAAK,OAAO,YAAY,CAAC,IAAI;AAC7B,SAAK,KAAK,OAAM;EACpB;;;;;;;;EASA,IAAI,uBAAoB;AACpB,WAAO,KAAK,OAAO,YAAY,CAAC;EACpC;;;;;;;;EASA,IAAI,qBAAqB,OAAa;AAClC,SAAK,OAAO,YAAY,CAAC,IAAI;AAC7B,SAAK,KAAK,OAAM;EACpB;;;;EAKA,UAAO;AACH,UAAM,QAAO;AACb,SAAK,KAAK,gBAAgB,IAAI;AAC9B,SAAK,KAAK,OAAM;EACpB;;;;ACpPJ,IAAM,aAAN,MAAgB;EAEZ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,cAAA;AAEI,SAAK,cAAc;AACnB,SAAK,aAAa,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;AACvC,SAAK,UAAU,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AACzC,SAAK,aAAa,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AAC5C,SAAK,WAAW,IAAI,WAAW,CAAC;AAChC,SAAK,YAAY,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AAC3C,SAAK,YAAY,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AAC3C,SAAK,WAAW,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AAC1C,SAAK,eAAe,IAAI,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AAC9C,SAAK,MAAM,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC;AAClC,SAAK,aAAa;AAClB,SAAK,gBAAgB;AACrB,SAAK,cAAc;AACnB,SAAK,gBAAgB;AACrB,SAAK,uBAAuB;AAC5B,SAAK,eAAe;AACpB,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,kBAAkB;AACvB,SAAK,SAAS;AACd,SAAK,mBAAmB;AACxB,SAAK,iBAAiB;AAEtB,SAAK,MAAK;EACd;;;;EAKA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;EAKA,IAAI,WAAW,OAAoC;AAC/C,SAAK,cAAc;EACvB;;;;EAKA,IAAI,YAAS;AACT,WAAO,KAAK,gBAAgB,KAAK,aAAa;EAClD;;;;EAKA,IAAI,UAAU,OAA+C;AACzD,QAAI,OAAO;AACP,WAAK,WAAW,CAAC,IAAI,MAAM,CAAC;AAC5B,WAAK,WAAW,CAAC,IAAI,MAAM,CAAC;AAC5B,WAAK,gBAAgB;WAClB;AACH,WAAK,gBAAgB;;EAE7B;;;;EAKA,IAAI,SAAM;AACN,WAAO,KAAK,aAAa,KAAK,UAAU;EAC5C;;;;EAKA,IAAI,OAAO,OAAU;AACjB,QAAI,OAAO;AACP,WAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,WAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,WAAK,QAAQ,CAAC,IAAI,MAAM,CAAC;AACzB,WAAK,aAAa;WACf;AACH,WAAK,aAAa;;EAE1B;;;;EAKA,IAAI,YAAS;AACT,WAAO,KAAK,gBAAgB,KAAK,aAAa;EAClD;;;;EAKA,IAAI,UAAU,OAAU;AACpB,QAAI,OAAO;AACP,WAAK,WAAW,CAAC,IAAI,MAAM,CAAC;AAC5B,WAAK,WAAW,CAAC,IAAI,MAAM,CAAC;AAC5B,WAAK,WAAW,CAAC,IAAI,MAAM,CAAC;AAC5B,WAAK,gBAAgB;WAClB;AACH,WAAK,gBAAgB;;EAE7B;;;;;EAMA,IAAI,UAAO;AACP,WAAO,KAAK,gBAAgB,QAAQ,KAAK,cAAc,KAAK,WAAW;EAC3E;;;;EAKA,IAAI,QAAQ,OAAU;AAClB,QAAI,OAAO;AACP,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,cAAc;WAChB;AACH,WAAK,cAAc;;EAE3B;;;;;EAMA,IAAI,WAAQ;AACR,WAAO,KAAK,gBAAe,QAAQ,KAAK,eAAe,KAAK,YAAY;EAC5E;;;;EAKA,IAAI,SAAS,OAAU;AACnB,QAAI,OAAO;AACP,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,eAAe;WACjB;AACH,WAAK,eAAe;;EAE5B;;;;;EAMA,IAAI,WAAQ;AACR,WAAO,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY;EACpE;;;;EAKA,IAAI,SAAS,OAAU;AACnB,QAAI,OAAO;AACP,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,UAAU,CAAC,IAAI,MAAM,CAAC;AAC3B,WAAK,eAAe;WACjB;AACH,WAAK,eAAe;;EAE5B;;;;;EAMA,IAAI,UAAO;AACP,WAAO,KAAK,eAAe,KAAK,cAAc,KAAK,WAAW;EAClE;;;;EAKA,IAAI,QAAQ,OAAU;AAClB,QAAI,OAAO;AACP,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,SAAS,CAAC,IAAI,MAAM,CAAC;AAC1B,WAAK,cAAc;WAChB;AACH,WAAK,cAAc;;EAE3B;;;;;EAMA,IAAI,cAAW;AACX,WAAO,KAAK,gBAAgB,QAAO,KAAK,kBAAkB,KAAK,eAAe;EAClF;;;;EAKA,IAAI,YAAY,OAAU;AACtB,QAAI,OAAO;AACP,WAAK,aAAa,CAAC,IAAI,MAAM,CAAC;AAC9B,WAAK,aAAa,CAAC,IAAI,MAAM,CAAC;AAC9B,WAAK,aAAa,CAAC,IAAI,MAAM,CAAC;AAC9B,WAAK,kBAAkB;WACpB;AACH,WAAK,kBAAkB;;EAE/B;;;;;EAMA,IAAI,KAAE;AACF,WAAO,KAAK,gBAAgB,QAAO,KAAK,SAAS,KAAK,MAAM;EAChE;;;;EAKA,IAAI,GAAG,OAAU;AACb,QAAI,OAAO;AACP,WAAK,IAAI,CAAC,IAAI,MAAM,CAAC;AACrB,WAAK,IAAI,CAAC,IAAI,MAAM,CAAC;AACrB,WAAK,SAAS;WACX;AACH,WAAK,SAAS;;EAEtB;;;;;EAMA,IAAI,kBAAe;AACf,WAAO,KAAK,gBAAgB,QAAO,KAAK;EAC5C;;;;EAKA,IAAI,gBAAgB,OAAc;AAC9B,SAAK,mBAAmB;EAC5B;;;;;EAMA,IAAI,gBAAa;AACb,WAAO,KAAK,gBAAgB,QAAO,KAAK;EAC5C;EAEA,IAAI,cAAc,OAAc;AAC5B,SAAK,iBAAiB;EAC1B;;;;;EAMA,IAAI,mBAAgB;AAChB,WAAO,KAAK,uBAAuB,KAAK,oBAAoB;EAChE;;;;EAKA,IAAI,iBAAiB,OAA+C;AAChE,QAAI,OAAO;AACP,WAAK,kBAAkB,CAAC,IAAI,MAAM,CAAC;AACnC,WAAK,kBAAkB,CAAC,IAAI,MAAM,CAAC;AACnC,WAAK,uBAAuB;WACzB;AACH,WAAK,uBAAuB;;EAEpC;;;;EAKA,QAAK;AACD,SAAK,cAAc;AACnB,SAAK,gBAAgB;AACrB,SAAK,uBAAuB;AAC5B,SAAK,aAAa;AAClB,SAAK,gBAAgB;AACrB,SAAK,cAAc;AACnB,SAAK,eAAe;AACpB,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,kBAAkB;AACvB,SAAK,SAAS;AACd,SAAK,mBAAmB;AACxB,SAAK,iBAAiB;EAC1B;;;;AC7UJ,IAAAC,iBAAA;SAAAA,gBAAA;;;;;;ACAA,IAAAC,iBAAA;SAAAA,gBAAA;;;;;ACmBA,IAAM,mBAAmB;AACzB,IAAM,2BAA2B;AAEjC,IAAI,oBAAoB;AAExB,IAAM,cAAc;EAChB,OAAO;EACP,WAAW;;AAGf,IAAM,mBAAmB;EACrB,MAAM;EACN,MAAM;EACN,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,oBAAoB;EACpB,QAAQ;EACR,cAAc;EACd,eAAe;EACf,UAAU;EACV,SAAS;EACT,6BAA6B;EAC7B,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,UAAU;;AAGd,IAAM,eAAe;EACjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAQE,IAAO,wBAAP,MAA4B;EAE9B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;;;;;EAWA,YAAYC,SAAyD;AAEjE,SAAK,kBAAkBA,QAAO,kBAAkB;AAChD,SAAK,oBAAoB;AACzB,SAAK,qBAAqB;AAC1B,SAAK,cAAc,IAAI,WAAU;AACjC,SAAK,mBAAmB;AAExB,QAAIA,QAAO,aAAa;AACpB,WAAK,YAAY,eAAeA,QAAO,WAAW;;AAGtD,SAAK,gBAAgB;AACrB,SAAK,mBAAmB;AACxB,SAAK,sBAAsB,CAAC,MAAM;EACtC;;;;;;EAOA,KAAK,cAA0B;AAC3B,SAAK,gBAAgB;MACjB,eAAe,aAAa;MAC5B,eAAe,aAAa;MAC5B,eAAe,aAAa;MAC5B,cAAc,aAAa;MAC3B,eAAe,aAAa;MAC5B,gBAAgB,aAAa;;EAErC;;;;;;;;EASA,UAAU,SAAwBC,UAAS,CAAA,GAAE;AACzC,WAAO,IAAI,QAAiC,CAACC,UAAS,WAAU;AAC5D,YAAM,aAAaD;AACnB,WAAK,gBAAe,EAAG,KAAK,MAAK;AAC7B,eAAO,KAAK,YAAY,YAAY;UAChC,MAAM;UACN;UACA;WACD,OAAO;MACd,CAAC,EAAE,KAAK,CAAC,MAAK;AAEV,cAAM,kBAAkB,EAAE;AAC1B,cAAM,EAAC,SAAS,OAAO,QAAQ,QAAQ,MAAM,OAAO,eAAe,SAAQ,IAAI;AAC/E,YAAI,SAAS,SAAS;AAClB,iBAAO,OAAO,KAAK;;AAEvB,QAAAC,SAAiC;UAC7B;UACA,OAAO;YACH;YACA,WAAW,QAAQ,WAAW,IAAI,eAAe;YACjD,WAAW,QAAQ,WAAW,IAAI,eAAe;YACjD,UAAU,kBAAkB,mBAAmB,eAAe;YAC9D,kBAAkB,CAAC,EAAE,WAAW;;SAEvC;MACL,CAAC;IACL,CAAC;EACL;;;;EAKA,UAAO;AACH,QAAI,gBAAgB,KAAK,gBAAgB;AACzC,SAAK,YAAY,QAAO;AACxB;EACJ;EAEA,kBAAe;AACX,QAAI,CAAC,KAAK,oBAAoB;AAC1B,YAAM,WAAW,IAAI,WAAU;AAC/B,eAAS,QAAQ,KAAK,eAAe;AACrC,eAAS,mBAAmB,KAAK,gBAAgB;AAEjD,YAAM,YAAY,SAAS,UAAU,qBAAqB;AAC1D,YAAM,eAAe,IAAI,WAAU;AACnC,mBAAa,QAAQ,KAAK,eAAe;AACzC,mBAAa,gBAAgB,aAAa;AAC1C,mBAAa,mBAAmB,KAAK,gBAAgB;AAErD,YAAM,gBAAgB,aAAa,UAAU,uBAAuB;AACpE,WAAK,qBAAqB,QAAQ,IAAI,CAAC,WAAW,aAAa,CAAC,EAC3D,KAAK,CAAC,CAACC,YAAWC,cAAa,MAAK;AACjC,cAAM,KAAK,YAAY,SAAQ;AAC/B,cAAM,OAAO;UACT;UACA,yBAAyB,KAAK,UAAU,YAAY;UACpD,6BAA6B,KAAK,UAAU,gBAAgB;UAC5D,wBAAwB,KAAK,UAAU,WAAW;UAClD;UACAD;UACA;UACA,GAAG,UAAU,GAAG,QAAQ,GAAG,IAAI,GAAG,GAAG,YAAY,GAAG,CAAC;UACvD,KAAK,IAAI;AACX,aAAK,mBAAmB,IAAI,gBAAgB,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;AAC5D,aAAK,oBAAoBC;AACzB,aAAK,YAAY,iBAAiB,MAAK;AACnC,gBAAM,SAAS,IAAI,OAAO,KAAK,gBAAgB;AAC/C,gBAAM,mBAAmB,KAAK,kBAAkB,MAAM,CAAC;AACvD,iBAAO,YAAY;YACf,MAAM;YACN,QAAQ,KAAK;YACb;aACD,CAAC,gBAAgB,CAAC;AACrB,iBAAO;QACX,CAAC;MACL,CAAC;AACL,UAAI,oBAAoB,GAAG;AACvB,gBAAQ,KAAK,8KAAmL;;AAEpM;;AAEJ,WAAO,KAAK;EAChB;;AAIJ,IAAM,cAAc,WAAA;AAEhB,MAAIH;AACJ,MAAI;AACJ,MAAI;AAGJ,QAAMI,gBAAe;AAErB,QAAMC,oBAAmB;AAEzB,QAAMC,eAAc;AAEpB,OAAK,iBAAiB,WAAW,SAAU,GAAC;AACxC,UAAM,UAAU,EAAE;AAClB,YAAQ,QAAQ,MAAM;MAClB,KAAK;AACD,QAAAN,UAAS,QAAQ;AACjB,aAAK,QAAQ,gBAAgB;AAC7B;MACJ,KAAK;AACD,0BAAkB,KAAK,MAAK;AACxB,cAAI;AACA,kBAAM,EACF,OACA,QACA,UACA,SACA,QACA,eACA,SAAQ,IACR,UAAU,QAAQ,QAAQ,CAAC,CAAC;AAChC,kBAAM,UAAU,CAAA;AAChB,qBAASO,KAAI,GAAGA,KAAI,QAAQ,QAAQ,EAAEA,IAAG;AACrC,sBAAQ,KAAK,QAAQA,EAAC,EAAE,KAAK,MAAM;;AAEvC,iBAAK,YAAY;cACb,MAAM;cACN,IAAI,QAAQ;cACZ;cACA;cACA;cACA;cACA;cACA;cACA;;eAED,OAAO;mBACL,OAAO;AACZ,oBAAQ,MAAM,kBAAkB,KAAK,EAAE;AAEvC,iBAAK,YAAY,EAAC,MAAM,SAAS,IAAI,QAAQ,IAAI,OAAO,MAAM,QAAO,CAAC;;QAE9E,CAAC;AACD;;EAEZ,CAAC;AAED,WAAS,KAAK,YAAe;AACzB,wBAAoB,IAAI,QAAQ,CAAAN,aAAU;AACtC,oBAAc;QACV;QACA,sBAAsBA;;AAG1B,YAAM,WAAW;IACrB,CAAC,EAAE,KAAK,MAAK;AACT,kBAAY,gBAAe;AAC3B,UAAI,YAAY,aAAa,QAAW;AACpC,gBAAQ,KAAK,kEAAkE;;IAEvF,CAAC;EACL;AAEA,WAAS,UAAU,QAAwB;AACvC,UAAM,WAAW,IAAI,YAAY,SAAS,IAAI,WAAW,MAAM,CAAC;AAEhE,aAAS,UAAO;AACZ,eAAS,MAAK;AACd,eAAS,OAAM;IACnB;AAEA,QAAI,CAAC,SAAS,QAAO,GAAI;AACrB,cAAO;AACP,YAAM,IAAI,MAAM,0DAA0D;;AAE9E,UAAM,cAAc,SAAS,QAAO,IAAKK,aAAY,YAAYA,aAAY;AAC7E,UAAM,QAAQ,SAAS,SAAQ;AAC/B,UAAM,SAAS,SAAS,UAAS;AACjC,UAAM,SAAS,SAAS,UAAS;AACjC,UAAM,WAAW,SAAS,YAAW;AACrC,UAAM,gBAAgB,SAAS,mBAAkB;AACjD,UAAM,WAAW,SAAS,YAAW;AACrC,UAAM,EAAC,kBAAkB,aAAY,IAAI,oBAAoB,aAAa,OAAO,QAAQ,QAAQ;AACjG,QAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ;AAC9B,cAAO;AACP,YAAM,IAAI,MAAM,wCAAwC;;AAE5D,QAAI,CAAC,SAAS,iBAAgB,GAAI;AAC9B,cAAO;AACP,YAAM,IAAI,MAAM,iDAAiD;;AAErE,UAAM,UAAU,CAAA;AAChB,aAAS,MAAM,GAAG,MAAM,QAAQ,OAAO;AACnC,YAAM,YAAY,SAAS,kBAAkB,KAAK,GAAG,CAAC;AACtD,YAAM,WAAW,UAAU;AAC3B,YAAM,YAAY,UAAU;AAC5B,YAAM,MAAM,IAAI,WAAW,SAAS,8BAA8B,KAAK,GAAG,GAAG,gBAAgB,CAAC;AAC9F,YAAM,SAAS,SAAS,eAAe,KAAK,KAAK,GAAG,GAAG,kBAAkB,GAAG,IAAI,EAAE;AAClF,UAAI,CAAC,QAAQ;AACT,gBAAO;AACP,cAAM,IAAI,MAAM,gDAAgD;;AAEpE,cAAQ,KAAK,EAAC,MAAM,KAAK,OAAO,UAAU,QAAQ,UAAS,CAAC;;AAEhE,YAAO;AACP,WAAO,EAAC,OAAO,QAAQ,UAAU,SAAS,QAAQ,cAAc,eAAe,SAAQ;EAC3F;AAUA,QAAM,iBAAiB,CAAC;IACpB,IAAI;IACJ,aAAa,CAACA,aAAY,SAAS;IACnC,kBAAkB,CAACD,kBAAiB,UAAUA,kBAAiB,QAAQ;IACvE,cAAc,CAACD,cAAa,sBAAsBA,cAAa,oBAAoB;IACnF,eAAe;IACf,eAAe;IACf,iBAAiB;KAClB;IACC,IAAI;IACJ,aAAa,CAACE,aAAY,OAAOA,aAAY,SAAS;IACtD,kBAAkB,CAACD,kBAAiB,QAAQA,kBAAiB,MAAM;IACnE,cAAc,CAACD,cAAa,kBAAkBA,cAAa,gBAAgB;IAC3E,eAAe;IACf,eAAe;IACf,iBAAiB;KAClB;IACC,IAAI;IACJ,aAAa,CAACE,aAAY,OAAOA,aAAY,SAAS;IACtD,kBAAkB,CAACD,kBAAiB,KAAKA,kBAAiB,GAAG;IAC7D,cAAc,CAACD,cAAa,sBAAsBA,cAAa,qBAAqB;IACpF,eAAe;IACf,eAAe;IACf,iBAAiB;KAClB;IACC,IAAI;IACJ,aAAa,CAACE,aAAY,OAAOA,aAAY,SAAS;IACtD,kBAAkB,CAACD,kBAAiB,MAAMA,kBAAiB,IAAI;IAC/D,cAAc,CAACD,cAAa,iBAAiBA,cAAa,oBAAoB;IAC9E,eAAe;IACf,eAAe;IACf,iBAAiB;KAClB;IACC,IAAI;IACJ,aAAa,CAACE,aAAY,OAAOA,aAAY,SAAS;IACtD,kBAAkB,CAACD,kBAAiB,IAAI;IACxC,cAAc,CAACD,cAAa,eAAe;IAC3C,eAAe;IACf,eAAe;IACf,iBAAiB;KAClB;IACC,IAAI;IACJ,aAAa,CAACE,aAAY,OAAOA,aAAY,SAAS;IACtD,kBAAkB,CAACD,kBAAiB,cAAcA,kBAAiB,aAAa;IAChF,cAAc,CAACD,cAAa,yBAAyBA,cAAa,wBAAwB;IAC1F,eAAe;IACf,eAAe;IACf,iBAAiB;GACpB;AACD,QAAM,gBAAgB,eAAe,KAAK,SAAUI,IAAGC,IAAC;AACpD,WAAOD,GAAE,gBAAgBC,GAAE;EAC/B,CAAC;AACD,QAAM,gBAAgB,eAAe,KAAK,SAAUD,IAAGC,IAAC;AACpD,WAAOD,GAAE,gBAAgBC,GAAE;EAC/B,CAAC;AAED,WAAS,oBAAoB,aAAqB,OAAe,QAAgB,UAAa;AAC1F,QAAI;AACJ,QAAI;AACJ,UAAM,UAAU,gBAAgBH,aAAY,QAAQ,gBAAgB;AACpE,aAASC,KAAI,GAAGA,KAAI,QAAQ,QAAQA,MAAK;AACrC,YAAM,MAAM,QAAQA,EAAC;AACrB,UAAI,CAACP,QAAO,IAAI,EAAE;AAAG;AACrB,UAAI,CAAC,IAAI,YAAY,SAAS,WAAW;AAAG;AAC5C,UAAI,YAAY,IAAI,iBAAiB,SAAS;AAAG;AACjD,UAAI,IAAI,mBAAmB,EAAE,aAAa,KAAK,KAAK,aAAa,MAAM;AAAI;AAC3E,yBAAmB,IAAI,iBAAiB,WAAW,IAAI,CAAC;AACxD,qBAAe,IAAI,aAAa,WAAW,IAAI,CAAC;AAChD,aAAO;QACH;QACA;;;AAGR,YAAQ,KAAK,yFAAyF;AACtG,uBAAmBK,kBAAiB;AACpC,mBAAeD,cAAa;AAC5B,WAAO;MACH;MACA;;EAER;AAEA,WAAS,aAAa,OAAa;AAC/B,QAAI,SAAS;AAAG,aAAO;AACvB,YAAQ,QAAQ,QAAQ,OAAO,KAAK,UAAU;EAClD;AACJ;;;ACzaM,IAAO,gBAAP,MAAoB;;;;EAKtB;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;;;;;;;;EAeA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA,YACI,IACA,MACA,MACA,UACA,UACA,OACA,YACA,QACA,QAAe;AAEf,SAAK,KAAK;AACV,SAAK,OAAO;AACZ,SAAK,YAAY;AAEjB,YAAQ,KAAK,aAAa;MAEtB,KAAK;AACD,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ,KAAK;AACD,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ,KAAM;AACF,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ,KAAM;AACF,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ,KAAK;AACD,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ,KAAK;AACD,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;AACpB;MAEJ;AACI,aAAK,WAAW,GAAG;AACnB,aAAK,eAAe;;AAG5B,SAAK,QAAQ;AACb,SAAK,SAAS;AACd,SAAK,aAAa;AAClB,SAAK,WAAW;AAChB,SAAK,WAAW;AAChB,SAAK,aAAa,CAAC,CAAC;AACpB,SAAK,SAAS,UAAU;AACxB,SAAK,SAAS,UAAU;AAExB,SAAK,UAAU,IAAI;EACvB;EAEA,UAAU,MAAS;AACf,SAAK,YAAY;AAEjB,SAAK,SAAS,KAAK,GAAG,aAAY;AAClC,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,MAAM,sCAAsC;;AAE1D,QAAI,KAAK,QAAQ;AACb,WAAK,GAAG,WAAW,KAAK,MAAM,KAAK,MAAM;AACzC,WAAK,GAAG,WAAW,KAAK,MAAM,KAAK,SAAS,KAAK,aAAa,KAAK,MAAM,GAAG,KAAK,UAAU,IAAI,MAAM,KAAK,KAAK;AAC/G,WAAK,GAAG,WAAW,KAAK,MAAM,IAAI;AAClC,WAAK,SAAS,KAAK;AACnB,WAAK,WAAW,KAAK,SAAS,KAAK;AACnC,WAAK,YAAY;;EAEzB;;;;;;EAOA,QAAQ,MAAW,QAAc;AAC7B,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,QAAI,KAAK,UAAU,UAAU,KAAK,KAAK,QAAQ;AAC3C,WAAK,QAAO;AACZ,WAAK,UAAU,IAAI;WAChB;AACH,WAAK,GAAG,WAAW,KAAK,MAAM,KAAK,MAAM;AACzC,UAAI,UAAU,WAAW,GAAG;AACxB,aAAK,GAAG,cAAc,KAAK,MAAM,SAAS,KAAK,cAAc,IAAI;aAC9D;AACH,aAAK,GAAG,WAAW,KAAK,MAAM,MAAM,KAAK,KAAK;;AAElD,WAAK,GAAG,WAAW,KAAK,MAAM,IAAI;;EAE1C;;;;EAKA,OAAI;AACA,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,SAAK,GAAG,WAAW,KAAK,MAAM,KAAK,MAAM;EAC7C;;;;EAKA,SAAM;AACF,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,SAAK,GAAG,WAAW,KAAK,MAAM,IAAI;EACtC;;;;EAKA,UAAO;AACH,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,SAAK,GAAG,aAAa,KAAK,MAAM;AAChC,SAAK,YAAY;EACrB;;;;ACxNE,IAAO,iBAAP,MAAqB;EACvB;EACA;;;;;;EAOA,YAAY,IAA4B,UAAgB;AACpD,SAAK,KAAK;AACV,SAAK,WAAW;EACpB;;;;;EAMA,gBAAgB,UAAuB;AACnC,QAAI,CAAC,UAAU;AACX;;AAEJ,aAAS,KAAI;AACb,SAAK,GAAG,wBAAwB,KAAK,QAAQ;AAC7C,SAAK,GAAG,oBAAoB,KAAK,UAAU,SAAS,UAAU,SAAS,UAAU,SAAS,YAAY,SAAS,QAAQ,SAAS,MAAM;EAC1I;;;;AC3BE,IAAO,cAAP,MAAkB;;;;EAKpB;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;EAQA,YAAY,IAA4B,MAAc,QAAc;AAChE,SAAK,YAAY;AACjB,SAAK,WAAW;AAEhB,SAAK,SAAS,GAAG,aAAa,IAAI;AAClC,QAAI,CAAC,KAAK,QAAQ;AACd,WAAK,SAAS;QACV;;AAEJ;;AAEJ,SAAK,YAAY;AACjB,OAAG,aAAa,KAAK,QAAQ,MAAM;AACnC,OAAG,cAAc,KAAK,MAAM;AAC5B,SAAK,WAAW,GAAG,mBAAmB,KAAK,QAAQ,GAAG,cAAc;AACpE,QAAI,CAAC,KAAK,UAAU;AAChB,UAAI,CAAC,GAAG,cAAa,GAAI;AACrB,cAAM,QAAQ,OAAO,MAAM,IAAI;AAC/B,cAAM,gBAAgB,CAAA;AACtB,iBAASM,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK;AACnC,wBAAc,KAAMA,KAAI,IAAK,OAAO,MAAMA,EAAC,IAAI,IAAI;;AAEvD,aAAK,SAAS,CAAA;AACd,aAAK,OAAO,KAAK,EAAE;AACnB,aAAK,OAAO,KAAK,GAAG,iBAAiB,KAAK,MAAM,KAAK,EAAE;AACvD,aAAK,SAAS,KAAK,OAAO,OAAO,cAAc,KAAK,EAAE,CAAC;;;EAGnE;;;;EAKA,UAAO;EAEP;;;;AC7DE,IAAO,eAAP,MAAmB;EAEJ;EACA;;;;;;EAOjB,YAAY,IAA4B,UAA8B;AAClE,SAAK,KAAK;AACV,SAAK,WAAW;EACpB;;;;;;EAOA,YAAY,SAA+B,MAAY;AACnD,QAAI,QAAQ,KAAK,IAAI,GAAG;AACpB,WAAK,GAAG,UAAU,KAAK,UAAU,IAAI;AACrC,aAAO;;AAEX,WAAO;EACX;;;;ACxBJ,IAAM,MAAM,IAAIC,KAAI,CAAA,GAAI,EAAE;AAKpB,IAAO,eAAP,MAAmB;;;;EAKrB;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;EAOA,YAAY,IACA,cAGC;AAWT,SAAK,KAAK,IAAI,QAAQ,CAAA,CAAE;AACxB,SAAK,SAAS;AACd,SAAK,KAAK;AACV,SAAK,YAAY;AACjB,SAAK,WAAW;AAChB,SAAK,SAAS;AACd,SAAK,YAAY;AACjB,SAAK,SAAS;AACd,SAAK,WAAW,CAAA;AAChB,SAAK,WAAW,CAAA;AAChB,SAAK,aAAa,CAAA;AAElB,SAAK,eAAe,IAAI,YAAY,IAAI,GAAG,eAAe,KAAK,OAAO,MAAM;AAC5E,SAAK,iBAAiB,IAAI,YAAY,IAAI,GAAG,iBAAiB,KAAK,OAAO,QAAQ;AAElF,QAAI,CAAC,KAAK,aAAa,WAAW;AAC9B,WAAK,SAAS,CAAC,kCAAkC,EAAE,OAAO,KAAK,aAAa,MAAM;AAClF,gBAAU,KAAK,MAAM;AACrB;;AAGJ,QAAI,CAAC,KAAK,eAAe,WAAW;AAChC,WAAK,SAAS,CAAC,oCAAoC,EAAE,OAAO,KAAK,eAAe,MAAM;AACtF,gBAAU,KAAK,MAAM;AACrB;;AAGJ,SAAK,YAAY;AAEjB,QAAI,CAAC,KAAK,aAAa,UAAU;AAC7B,WAAK,SAAS,CAAC,iCAAiC,EAAE,OAAO,KAAK,aAAa,MAAM;AACjF,gBAAU,KAAK,MAAM;AACrB;;AAGJ,QAAI,CAAC,KAAK,eAAe,UAAU;AAC/B,WAAK,SAAS,CAAC,mCAAmC,EAAE,OAAO,KAAK,eAAe,MAAM;AACrF,gBAAU,KAAK,MAAM;AACrB;;AAGJ,SAAK,WAAW;AAEhB,SAAK,SAAS,GAAG,cAAa;AAE9B,QAAI,CAAC,KAAK,QAAQ;AACd,WAAK,SAAS,CAAC,4BAA4B;AAC3C;;AAGJ,OAAG,aAAa,KAAK,QAAQ,KAAK,aAAa,MAAM;AACrD,OAAG,aAAa,KAAK,QAAQ,KAAK,eAAe,MAAM;AACvD,OAAG,YAAY,KAAK,MAAM;AAE1B,SAAK,SAAS,GAAG,oBAAoB,KAAK,QAAQ,GAAG,WAAW;AAKhE,SAAK,YAAY;AAEjB,QAAI,CAAC,KAAK,UAAU,CAAC,KAAK,WAAW;AACjC,WAAK,SAAS,CAAA;AACd,WAAK,OAAO,KAAK,EAAE;AAEnB,WAAK,OAAO,KAAK,GAAG,kBAAkB,KAAK,MAAM,CAAC;AAClD,WAAK,OAAO,KAAK,oBAAoB;AACrC,WAAK,SAAS,KAAK,OAAO,OAAO,KAAK,OAAO,MAAM;AACnD,WAAK,OAAO,KAAK,sBAAsB;AACvC,WAAK,SAAS,KAAK,OAAO,OAAO,KAAK,OAAO,QAAQ;AACrD,gBAAU,KAAK,MAAM;AACrB;;AAGJ,UAAM,cAAc,GAAG,oBAAoB,KAAK,QAAQ,GAAG,eAAe;AAC1E,aAASC,KAAI,GAAGA,KAAI,aAAa,EAAEA,IAAG;AAClC,YAAM,IAAI,GAAG,iBAAiB,KAAK,QAAQA,EAAC;AAC5C,UAAI,GAAG;AACH,YAAI,QAAQ,EAAE;AAEd,YAAI,MAAM,MAAM,SAAS,CAAC,MAAM,MAAU;AACtC,kBAAQ,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC;;AAE5C,cAAM,WAAW,GAAG,mBAAmB,KAAK,QAAQ,KAAK;AACzD,YAAK,EAAE,SAAS,GAAG,cAAgB,EAAE,SAAS,GAAG,gBAAmB,EAAE,SAAS,SAAW,EAAE,SAAS,OAAQ;AAEzG,eAAK,SAAS,KAAK,IAAI,IAAI,aAAa,IAAI,QAAQ;eACjD;AAEH,eAAK,SAAS,KAAK,IAAI;;;;AAKnC,UAAM,aAAa,GAAG,oBAAoB,KAAK,QAAQ,GAAG,iBAAiB;AAC3E,aAASA,KAAI,GAAGA,KAAI,YAAYA,MAAK;AACjC,YAAMC,KAAI,GAAG,gBAAgB,KAAK,QAAQD,EAAC;AAC3C,UAAIC,IAAG;AACH,cAAM,WAAW,GAAG,kBAAkB,KAAK,QAAQA,GAAE,IAAI;AACzD,aAAK,WAAWA,GAAE,IAAI,IAAI,IAAI,eAAe,IAAI,QAAQ;;;AAIjE,SAAK,YAAY;EACrB;;;;EAKA,OAAI;AACA,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,SAAK,GAAG,WAAW,KAAK,MAAM;EAClC;;;;;EAMA,YAAYC,QAAY;AACpB,WAAO,KAAK,SAASA,MAAI;EAC7B;;;;;EAMA,aAAaA,QAAY;AACrB,WAAO,KAAK,WAAWA,MAAI;EAC/B;;;;;EAMA,WAAWA,QAAY;AACnB,WAAO,KAAK,SAASA,MAAI;EAC7B;;;;;;;EAQA,YAAYA,QAAc,SAA+B,MAAY;AACjE,QAAI,CAAC,KAAK,WAAW;AACjB,aAAO;;AAEX,UAAM,UAAU,KAAK,SAASA,MAAI;AAClC,QAAI,SAAS;AACT,aAAO,QAAQ,YAAY,SAAS,IAAI;WACrC;AACH,aAAO;;EAEf;;;;EAKA,UAAO;AACH,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,QAAI,WAAW,KAAK,EAAE;AACtB,SAAK,GAAG,cAAc,KAAK,MAAM;AACjC,SAAK,GAAG,aAAa,KAAK,aAAa,MAAM;AAC7C,SAAK,GAAG,aAAa,KAAK,eAAe,MAAM;AAC/C,SAAK,aAAa,CAAA;AAClB,SAAK,WAAW,CAAA;AAChB,SAAK,WAAW,CAAA;AAChB,SAAK,YAAY;EACrB;;AAoBJ,SAAS,UAAU,QAAgB;AAC/B,UAAQ,MAAM,OAAO,KAAK,IAAI,CAAC;AACnC;;;ACrSA,IAAM,oBAAN,MAAuB;EACnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAYC,SAA2B,IAA4B,SAGlE;AAEG,SAAK,MAAM;AACX,SAAK,YAAY;AACjB,SAAK,SAASA;AACd,SAAK,UAAU;AACf,SAAK,QAAQ;AACb,SAAK,OAAO,QAAQ;AACpB,SAAK,mBAAmB,CAAC,CAAC,QAAQ;EACtC;;;;;EAMA,QAAQ,MAAS;AACb,SAAK,OAAO;EAChB;EAEA,qBAAqB,IAA0B;AAC3C,SAAK,MAAM;AACX,SAAK,UAAU;AACf,SAAK,YAAY;AACjB,SAAK,QAAQ;EACjB;;;;EAKA,QAAQ,iBAAoB;AACxB,SAAK,MAAM,GAAG,eAAe;AAC7B,QAAI,KAAK,OAAO;AACZ;;AAEJ,UAAM,KAAK,KAAK;AAEhB,OAAG,gBAAgB,GAAG,aAAa,KAAK,QAAQ,QAAQ;AACxD,SAAK,QAAQ;EACjB;;;;;;;;;;EAWA,cAAc,OAAe,QAAgB,iBAAiB,MAAI;AAC9D,UAAM,KAAK,KAAK;AAEhB,UAAM,eAAe,GAAG,cAAa;AACrC,OAAG,YAAY,GAAG,YAAY,YAAY;AAC1C,OAAG,cAAc,GAAG,YAAY,GAAG,oBAAoB,GAAG,OAAO;AACjE,OAAG,cAAc,GAAG,YAAY,GAAG,oBAAoB,GAAG,OAAO;AACjE,OAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,aAAa;AACnE,OAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,aAAa;AAEnE,QAAI,gBAAgB;AAChB,SAAG,aAAa,GAAG,YAAY,GAAG,gBAAgB,OAAO,MAAM;WAC5D;AACH,SAAG,WAAW,GAAG,YAAY,GAAG,GAAG,MAAM,OAAO,QAAQ,GAAG,GAAG,MAAM,GAAG,eAAe,IAAI;;AAG9F,WAAO;EACX;;;;;;EAOA,SAAS,iBAAoB;AAEzB,QAAI;AACJ,QAAI;AACJ,UAAM,KAAK,KAAK;AAEhB,QAAI,KAAK,MAAM;AACX,cAAQ,KAAK,KAAK,CAAC;AACnB,eAAS,KAAK,KAAK,CAAC;WAEjB;AACH,cAAQ,GAAG;AACX,eAAS,GAAG;;AAGhB,QAAI,KAAK,SAAS;AAEd,UAAI,KAAK,QAAQ,UAAU,SAAS,KAAK,QAAQ,WAAW,QAAQ;AAChE;aAEG;AACH,aAAK,QAAQ,SAAS,QAAQ,aAAW,GAAG,cAAc,OAAO,CAAC;AAClE,WAAG,kBAAkB,KAAK,QAAQ,QAAQ;AAC1C,WAAG,mBAAmB,KAAK,QAAQ,SAAS;;;AAIpD,UAAM,gBAAgB,CAAA;AACtB,QAAI,gBAAgB,SAAS,GAAG;AAC5B,oBAAc,KAAK,GAAG,gBAAgB,IAAI,oBAAkB,KAAK,cAAc,OAAO,QAAQ,cAAc,CAAC,CAAC;WAC3G;AACH,oBAAc,KAAK,KAAK,cAAc,OAAO,MAAM,CAAC;;AAGxD,QAAI;AAEJ,QAAI,KAAK,kBAAkB;AACvB,qBAAe,GAAG,cAAa;AAC/B,SAAG,YAAY,GAAG,YAAY,YAAY;AAC1C,SAAG,cAAc,GAAG,YAAY,GAAG,oBAAoB,GAAG,OAAO;AACjE,SAAG,cAAc,GAAG,YAAY,GAAG,oBAAoB,GAAG,OAAO;AACjE,SAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,aAAa;AACnE,SAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,aAAa;AACnE,SAAG,WAAW,GAAG,YAAY,GAAG,GAAG,oBAAoB,OAAO,QAAQ,GAAG,GAAG,iBAAiB,GAAG,OAAO,IAAI;;AAG/G,UAAM,YAAY,GAAG,mBAAkB;AACvC,OAAG,iBAAiB,GAAG,cAAc,SAAS;AAC9C,OAAG,oBAAoB,GAAG,cAAc,GAAG,oBAAoB,OAAO,MAAM;AAE5E,UAAM,WAAW,GAAG,kBAAiB;AACrC,OAAG,gBAAgB,GAAG,aAAa,QAAQ;AAC3C,aAASC,KAAI,GAAGA,KAAI,cAAc,QAAQA,MAAK;AAC3C,SAAG,qBAAqB,GAAG,aAAa,GAAG,oBAAoBA,IAAG,GAAG,YAAY,cAAcA,EAAC,GAAG,CAAC;;AAExG,QAAI,gBAAgB,SAAS,GAAG;AAC5B,SAAG,YAAY,cAAc,IAAI,CAAC,GAAGA,OAAM,GAAG,oBAAoBA,EAAC,CAAC;;AAGxE,QAAI,KAAK,kBAAkB;AACvB,SAAG,qBAAqB,GAAG,aAAa,GAAG,kBAAkB,GAAG,YAAY,cAAc,CAAC;WACxF;AACH,SAAG,wBAAwB,GAAG,aAAa,GAAG,kBAAkB,GAAG,cAAc,SAAS;;AAG9F,OAAG,YAAY,GAAG,YAAY,IAAI;AAClC,OAAG,iBAAiB,GAAG,cAAc,IAAI;AACzC,OAAG,gBAAgB,GAAG,aAAa,IAAI;AAIvC,OAAG,gBAAgB,GAAG,aAAa,QAAQ;AAC3C,QAAI,CAAC,GAAG,cAAc,QAAQ,GAAG;AAC7B,YAAM;;AAEV,OAAG,gBAAgB,GAAG,aAAa,IAAI;AAEvC,UAAM,SAAS,GAAG,uBAAuB,GAAG,WAAW;AAEvD,YAAQ,QAAQ;MAEZ,KAAK,GAAG;AACJ;MAEJ,KAAK,GAAG;AACJ,cAAM;MAEV,KAAK,GAAG;AACJ,cAAM;MAEV,KAAK,GAAG;AACJ,cAAM;MAEV,KAAK,GAAG;AACJ,cAAM;MAEV;AACI,cAAM,6BAA6B;;AAG3C,SAAK,UAAU;MACX;MACA;MACA,SAAS,cAAc,CAAC;MACxB,UAAU;MACV;MACA;MACA;;AAGJ,SAAK,QAAQ;EACjB;;;;EAKA,QAAK;AACD,QAAI,CAAC,KAAK,OAAO;AACb,YAAM;;AAEV,UAAM,KAAK,KAAK;AAChB,OAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;EACtD;;;;;;EAOA,KAAK,OAAe,OAAe,WAAW,MAAM,SAAS,MAAM,YAAY,YAAY,kBAA0B,GAAG,mBAAmB,GAAC;AACxI,UAAM,IAAI;AACV,UAAM,IAAI,KAAK,QAAQ,SAAU,KAAK,QAAQ,SAAS,QAAQ,IAAM,KAAK,IAAI,sBAAsB;AACpG,UAAM,MAAM,IAAI,UAAU,eAAe;AACzC,UAAM,KAAK,KAAK;AAChB,OAAG,WAAW,GAAG,oBAAoB,gBAAgB;AACrD,OAAG,WAAW,GAAG,GAAG,GAAG,GAAG,YAAY,GAAG,MAAM,UAAU,GAAG,eAAe,KAAK,CAAC;AACjF,WAAO;EACX;EAEA,UAAU,WAAW,MAAM,SAAS,MAAM,YAAY,YAAY,kBAAkB,GAAG,mBAAmB,GAAC;AACvG,UAAM,MAAM,IAAI,UAAU,KAAK,QAAQ,QAAQ,KAAK,QAAQ,SAAS,eAAe;AACpF,UAAM,KAAK,KAAK;AAChB,OAAG,WAAW,GAAG,oBAAoB,gBAAgB;AACrD,OAAG,WAAW,GAAG,GAAG,KAAK,QAAQ,OAAO,KAAK,QAAQ,QAAQ,YAAY,GAAG,MAAM,UAAU,GAAG,eAAe,KAAK,CAAC;AACpH,WAAO;EACX;;;;;;;;;EAUA,oBAAiB;AACb,UAAM,KAAK,KAAK;AAChB,UAAM,iBAAiB,KAAK,mBAAkB;AAC9C,UAAM,YAAY,eAAe;AACjC,UAAMD,UAAS,eAAe;AAC9B,UAAM,YAAY,eAAe;AACjC,UAAM,UAAU,eAAe;AAC/B,OAAG,WAAW,GAAG,GAAG,KAAK,QAAQ,OAAO,KAAK,QAAQ,QAAQ,GAAG,MAAM,GAAG,eAAe,SAAS;AACjG,UAAM,QAAQ,KAAK,QAAQ;AAC3B,UAAM,SAAS,KAAK,QAAQ;AAC5B,UAAM,aAAa,SAAS,IAAI;AAChC,UAAM,cAAc,QAAQ;AAC5B,UAAM,OAAO,IAAI,WAAW,QAAQ,CAAC;AACrC,aAAS,IAAI,GAAG,IAAI,YAAY,EAAE,GAAG;AACjC,YAAM,YAAY,IAAI;AACtB,YAAM,gBAAgB,SAAS,IAAI,KAAK;AACxC,WAAK,IAAI,UAAU,SAAS,WAAW,YAAY,WAAW,CAAC;AAC/D,gBAAU,WAAW,WAAW,cAAc,eAAe,WAAW;AACxE,gBAAU,IAAI,MAAM,YAAY;;AAEpC,cAAU,KAAK,IAAI,SAAS;AAC5B,YAAQ,aAAa,WAAW,GAAG,CAAC;AACpC,WAAOA;EACX;;;;;EAMA,UAAUE,SAIT;AACG,UAAM,KAAK,KAAK;AAChB,UAAM,iBAAiB,KAAK,mBAAkB;AAC9C,UAAM,YAAY,eAAe;AACjC,UAAMF,UAAS,eAAe;AAC9B,UAAM,YAAY,eAAe;AACjC,UAAM,UAAU,eAAe;AAC/B,UAAM,EAAC,OAAO,OAAM,IAAI,KAAK;AAC7B,OAAG,WAAW,GAAG,GAAG,OAAO,QAAQ,GAAG,MAAM,GAAG,eAAe,SAAS;AACvE,cAAU,KAAK,IAAI,SAAS;AAC5B,YAAQ,aAAa,WAAW,GAAG,CAAC;AAGpC,YAAQ,KAAI;AACZ,YAAQ,2BAA2B;AACnC,YAAQ,MAAM,GAAG,EAAE;AACnB,YAAQ,UAAUA,SAAQ,GAAG,CAAC,QAAQ,OAAO,MAAM;AACnD,YAAQ,QAAO;AAEf,QAAI,SAASE,QAAO,UAAU;AAC9B,QAAI,WAAW,UAAU,WAAW,SAAS,WAAW,OAAO;AAC3D,cAAQ,MAAM,gCAAgC,SAAS,uEAAuE;AAC9H,eAAS;;AAEb,WAAOF,QAAO,UAAU,SAAS,MAAM,EAAE;EAC7C;EAEA,mBAAmB,OAAO,YAAY,aAAa,GAAC;AAEhD,UAAM,cAAc,KAAK,QAAQ;AACjC,UAAM,eAAe,KAAK,QAAQ;AAElC,QAAI,iBAAiB,KAAK;AAE1B,QAAI,gBAAgB;AAChB,UAAI,eAAe,UAAU,eAAe,eAAe,WAAW,cAAc;AAChF,aAAK,kBAAkB;AACvB,yBAAiB;;;AAIzB,QAAI,CAAC,gBAAgB;AACjB,YAAMA,UAAS,SAAS,cAAc,QAAQ;AAC9C,YAAM,UAAUA,QAAO,WAAW,IAAI;AACtC,MAAAA,QAAO,QAAQ;AACf,MAAAA,QAAO,SAAS;AAChB,uBAAiB;QACb,WAAW,IAAI,KAAK,cAAc,eAAe,UAAU;QAC3D,QAAQA;QACR;QACA,WAAW,QAAQ,gBAAgB,aAAa,YAAY;QAC5D,OAAO;QACP,QAAQ;;AAGZ,WAAK,kBAAkB;;AAE3B,mBAAe,QAAQ,eAAc;AACrC,WAAO;EACX;EAEA,SAAM;AACF,UAAM,KAAK,KAAK;AAChB,OAAG,gBAAgB,GAAG,aAAa,IAAI;AACvC,SAAK,QAAQ;EACjB;EAEA,aAAU;AACN,WAAO,KAAK,aAAa,KAAK,WAAW;MACrC,MAAM,CAAC,SAAgB;AACnB,YAAI,KAAK,WAAW,KAAK,QAAQ,SAAS;AAEtC,eAAK,IAAI,cAAc,KAAK,IAAI,YAAY,IAAI,CAAC;AACjD,eAAK,IAAI,YAAY,KAAK,IAAI,YAAY,KAAK,QAAQ,OAAO;AAC9D,iBAAO;;AAEX,eAAO;MACX;MACA,QAAQ,CAAC,SAAgB;AACrB,YAAI,KAAK,WAAW,KAAK,QAAQ,SAAS;AAEtC,eAAK,IAAI,cAAc,KAAK,IAAI,YAAY,IAAI,CAAC;AACjD,eAAK,IAAI,YAAY,KAAK,IAAI,YAAY,IAAI;;MAEtD;;EAER;EAEA,kBAAe;AACX,WAAO,KAAK;EAChB;;;;EAKA,kBAAe;AACX,QAAI,CAAC,KAAK,kBAAkB;AACxB,aAAO;;AAEX,WAAO,KAAK,kBAAkB,KAAK,gBAAgB;MAC/C,MAAM,CAAC,SAAgB;AACnB,YAAI,KAAK,WAAW,KAAK,QAAQ,cAAc;AAE3C,eAAK,IAAI,cAAc,KAAK,IAAI,YAAY,IAAI,CAAC;AACjD,eAAK,IAAI,YAAY,KAAK,IAAI,YAAY,KAAK,QAAQ,YAAY;AACnE,iBAAO;;AAEX,eAAO;MACX;MACA,QAAQ,CAAC,SAAgB;AACrB,YAAI,KAAK,WAAW,KAAK,QAAQ,cAAc;AAE3C,eAAK,IAAI,cAAc,KAAK,IAAI,YAAY,IAAI,CAAC;AACjD,eAAK,IAAI,YAAY,KAAK,IAAI,YAAY,IAAI;;MAEtD;;EAER;EAEA,UAAO;AACH,QAAI,KAAK,WAAW;AAChB,YAAM,KAAK,KAAK;AAChB,WAAK,QAAQ,SAAS,QAAQ,aAAW,GAAG,cAAc,OAAO,CAAC;AAClE,SAAG,cAAc,KAAK,QAAQ,YAAY;AAC1C,SAAG,kBAAkB,KAAK,QAAQ,QAAQ;AAC1C,SAAG,mBAAmB,KAAK,QAAQ,SAAS;AAC5C,WAAK,YAAY;AACjB,WAAK,UAAU;AACf,WAAK,QAAQ;;AAEjB,SAAK,kBAAkB;AACvB,SAAK,WAAW;AAChB,SAAK,gBAAgB;EACzB;;;;AC1ZE,SAAU,kBAAkB,IAA4BG,QAAY;AAEtE,MAAI,GAAG,sBAAsB,QAAW;AAEpC,OAAG,oBAAoB,CAAA;;AAG3B,MAAI,GAAG,kBAAkBA,MAAI,MAAM,QAAW;AAE1C,WAAO,GAAG,kBAAkBA,MAAI;;AAEpC,MAAI;AACJ,UAAQA,QAAM;IACV,KAAK;AACD,kBAAY,GAAG,aAAa,qBAAqB,KAAK,GAAG,aAAa,yBAAyB,KAAK,GAAG,aAAa,4BAA4B;AAChJ;IACJ,KAAK;AACD,kBAAY,GAAG,aAAa,gCAAgC,KAAK,GAAG,aAAa,oCAAoC,KAAK,GAAG,aAAa,uCAAuC;AACjL;IACJ,KAAK;AACD,kBAAY,GAAG,aAAa,+BAA+B,KAAK,GAAG,aAAa,mCAAmC,KAAK,GAAG,aAAa,sCAAsC;AAC9K;IACJ,KAAK;AACD,kBAAY,GAAG,aAAa,gCAAgC,KAAK,GAAG,aAAa,uCAAuC;AACxH;IACJ;AACI,kBAAY,GAAG,aAAaA,MAAI;;AAGxC,KAAG,kBAAkBA,MAAI,IAAI;AAC7B,SAAO;AACX;;;ACkCM,SAAU,qBAAqB,IAA4B,aAAqB,UAAiB;AAEnG,MAAI;AACJ,QAAMC,KAAI;AAEV,MAAIA,OAAM;AAAkB,WAAO,GAAG;AACtC,MAAIA,OAAM;AAAuB,WAAO,GAAG;AAC3C,MAAIA,OAAM;AAAuB,WAAO,GAAG;AAE3C,MAAIA,OAAM;AAAU,WAAO,GAAG;AAC9B,MAAIA,OAAM;AAAW,WAAO,GAAG;AAC/B,MAAIA,OAAM;AAAmB,WAAO,GAAG;AACvC,MAAIA,OAAM;AAAS,WAAO,GAAG;AAC7B,MAAIA,OAAM;AAAiB,WAAO,GAAG;AACrC,MAAIA,OAAM;AAAW,WAAO,GAAG;AAE/B,MAAIA,OAAM,eAAe;AACrB,WAAO,GAAG;;AAGd,MAAIA,OAAM;AAAa,WAAO,GAAG;AACjC,MAAIA,OAAM;AAAY,WAAO,GAAG;AAChC,MAAIA,OAAM;AAAiB,WAAO,GAAG;AACrC,MAAIA,OAAM;AAAsB,WAAO,GAAG;AAC1C,MAAIA,OAAM;AAAa,WAAO,GAAG;AACjC,MAAIA,OAAM;AAAoB,WAAO,GAAG;AACxC,MAAIA,OAAM;AAAW,WAAO,GAAG;AAE/B,MAAIA,OAAM,WAAW;AACjB,WAAO,GAAG;;AAKd,MAAIA,OAAM;AAAkB,WAAO,GAAG;AACtC,MAAIA,OAAM;AAAU,WAAO,GAAG;AAC9B,MAAIA,OAAM;AAAiB,WAAO,GAAG;AACrC,MAAIA,OAAM;AAAmB,WAAO,GAAG;AAIvC,MAAIA,OAAM,wBAAwBA,OAAM,yBAAyBA,OAAM,yBAAyBA,OAAM,uBAAuB;AACzH,QAAI,aAAa,cAAc;AAC3B,YAAMC,aAAY,kBAAkB,IAAI,oCAAoC;AAC5E,UAAIA,eAAc,MAAM;AACpB,YAAID,OAAM;AAAsB,iBAAOC,WAAU;AACjD,YAAID,OAAM;AAAuB,iBAAOC,WAAU;AAClD,YAAID,OAAM;AAAuB,iBAAOC,WAAU;AAClD,YAAID,OAAM;AAAuB,iBAAOC,WAAU;aAC/C;AACH,eAAO;;WAER;AACH,kBAAY,kBAAkB,IAAI,+BAA+B;AACjE,UAAI,cAAc,MAAM;AACpB,YAAID,OAAM;AAAsB,iBAAO,UAAU;AACjD,YAAIA,OAAM;AAAuB,iBAAO,UAAU;AAClD,YAAIA,OAAM;AAAuB,iBAAO,UAAU;AAClD,YAAIA,OAAM;AAAuB,iBAAO,UAAU;aAC/C;AACH,eAAO;;;;AAOnB,MAAIA,OAAM,2BAA2BA,OAAM,2BAA2BA,OAAM,4BAA4BA,OAAM,0BAA0B;AACpI,UAAMC,aAAY,kBAAkB,IAAI,gCAAgC;AACxE,QAAIA,eAAc,MAAM;AACpB,UAAID,OAAM;AAAyB,eAAOC,WAAU;AACpD,UAAID,OAAM;AAAyB,eAAOC,WAAU;AACpD,UAAID,OAAM;AAA0B,eAAOC,WAAU;AACrD,UAAID,OAAM;AAA0B,eAAOC,WAAU;WAClD;AACH,aAAO;;;AAMf,MAAID,OAAM,iBAAiB;AACvB,UAAMC,aAAY,kBAAkB,IAAI,+BAA+B;AACvE,QAAIA,eAAc,MAAM;AACpB,aAAOA,WAAU;WACd;AACH,aAAO;;;AAMf,MAAID,OAAM,mBAAmBA,OAAM,sBAAsB;AACrD,UAAMC,aAAY,kBAAkB,IAAI,8BAA8B;AACtE,QAAIA,eAAc,MAAM;AACpB,UAAID,OAAM;AAAiB,eAAQ,aAAa,eAAgBC,WAAU,wBAAwBA,WAAU;AAC5G,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,mCAAmCA,WAAU;WACzH;AACH,aAAO;;;AAMf,MAAID,OAAM,wBAAwBA,OAAM,wBAAwBA,OAAM,wBAClEA,OAAM,wBAAwBA,OAAM,wBAAwBA,OAAM,wBAClEA,OAAM,wBAAwBA,OAAM,wBAAwBA,OAAM,yBAClEA,OAAM,yBAAyBA,OAAM,yBAAyBA,OAAM,0BACpEA,OAAM,0BAA0BA,OAAM,wBAAwB;AAC9D,UAAMC,aAAY,kBAAkB,IAAI,+BAA+B;AACvE,QAAIA,eAAc,MAAM;AACpB,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAsB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;AAChI,UAAID,OAAM;AAAuB,eAAQ,aAAa,eAAgBC,WAAU,wCAAwCA,WAAU;AAClI,UAAID,OAAM;AAAuB,eAAQ,aAAa,eAAgBC,WAAU,wCAAwCA,WAAU;AAClI,UAAID,OAAM;AAAuB,eAAQ,aAAa,eAAgBC,WAAU,wCAAwCA,WAAU;AAClI,UAAID,OAAM;AAAwB,eAAQ,aAAa,eAAgBC,WAAU,yCAAyCA,WAAU;AACpI,UAAID,OAAM;AAAwB,eAAQ,aAAa,eAAgBC,WAAU,yCAAyCA,WAAU;AACpI,UAAID,OAAM;AAAwB,eAAQ,aAAa,eAAgBC,WAAU,yCAAyCA,WAAU;WACjI;AACH,aAAO;;;AAMf,MAAID,OAAM,kBAAkB;AACxB,UAAMC,aAAY,kBAAkB,IAAI,8BAA8B;AACtE,QAAIA,eAAc,MAAM;AACpB,UAAID,OAAM,kBAAkB;AACxB,eAAQ,aAAa,eAAgBC,WAAU,uCAAuCA,WAAU;;WAEjG;AACH,aAAO;;;AAMf,MAAID,OAAM,oBAAoB;AAC1B,WAAO,GAAG;;AAEd,MAAIA,OAAM,gBAAgB;AACtB,WAAO,GAAG;;AAEd,MAAIA,OAAM,qBAAqB;AAC3B,WAAO,GAAG;;AAEd,MAAIA,OAAM,4BAA4B;AAClC,WAAO,GAAG;;AAEd,MAAIA,OAAM,2BAA2B;AACjC,WAAO,GAAG;;AAEd,MAAIA,OAAM,2BAA2B;AACjC,WAAO,GAAG;;AAEd,MAAIA,OAAM,0BAA0B;AAChC,WAAO,GAAG;;AAEd,MAAIA,OAAM,eAAe;AACrB,WAAO,GAAG;;AAEd,MAAIA,OAAM,cAAc;AACpB,WAAO,GAAG;;AAGd,SAAO;AACX;;;ACpOA,IAAM,QAAQ,IAAI,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AAKnC,IAAO,eAAP,MAAmB;EAEb;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAER,YAAYE,SAWX;AAEG,SAAK,KAAKA,QAAO;AAEjB,SAAK,SAASA,QAAO,UAAUA,QAAO,GAAG;AACzC,SAAK,SAASA,QAAO,UAAU;AAC/B,SAAK,OAAOA,QAAO,QAAQ;AAC3B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB,CAAC,CAACA,QAAO;AACjC,SAAK,QAAQ,CAAC,CAACA,QAAO;AACtB,SAAK,kBAAkB;AACvB,SAAK,QAAQA,QAAO,SAAS;AAC7B,SAAK,QAAQA,QAAO,SAAS;AAC7B,SAAK,QAAQA,QAAO,SAAS;AAG7B,SAAK,UAAUA,QAAO,GAAG,cAAa;AAEtC,QAAIA,QAAO,cAAc;AACrB,WAAK,gBAAgBA,QAAO,YAAY;;AAG5C,SAAK,YAAY;EACrB;EAEA,gBAAgB,OAA2B;AACvC,QAAI,CAAC,OAAO;AACR,YAAM,CAAC,IAAI;AACX,YAAM,CAAC,IAAI;AACX,YAAM,CAAC,IAAI;AACX,YAAM,CAAC,IAAI;WACR;AACH,YAAM,CAAC,IAAI,KAAK,MAAM,MAAM,CAAC,IAAI,GAAG;AACpC,YAAM,CAAC,IAAI,KAAK,MAAM,MAAM,CAAC,IAAI,GAAG;AACpC,YAAM,CAAC,IAAI,KAAK,MAAM,MAAM,CAAC,IAAI,GAAG;AACpC,YAAM,CAAC,IAAI,KAAK,OAAO,MAAM,CAAC,MAAM,SAAY,MAAM,CAAC,IAAI,KAAK,GAAG;;AAEvE,UAAM,KAAK,KAAK;AAChB,OAAG,YAAY,KAAK,QAAQ,KAAK,OAAO;AACxC,QAAI,KAAK,WAAW,GAAG,kBAAkB;AACrC,YAAMC,SAAQ;QACV,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;;AAEP,eAASC,KAAI,GAAG,MAAMD,OAAM,QAAQC,KAAI,KAAKA,MAAK;AAC9C,WAAG,WAAWD,OAAMC,EAAC,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,eAAe,KAAK;;WAE9E;AACH,SAAG,WAAW,KAAK,QAAQ,GAAG,GAAG,MAAM,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,eAAe,KAAK;;AAEpF,OAAG,YAAY,KAAK,QAAQ,IAAI;EACpC;EAEA,UAAU,QAAc;AACpB,SAAK,SAAS,UAAU,KAAK,GAAG;EACpC;EAEA,SAAS,OAAyB,QAahC,CAAA,GAAE;AAEA,UAAM,KAAK,KAAK;AAEhB,QAAI,MAAM,WAAW,QAAW;AAC5B,WAAK,SAAS,MAAM;;AAExB,QAAI,MAAM,mBAAmB,QAAW;AACpC,WAAK,iBAAiB,MAAM;;AAEhC,QAAI,MAAM,aAAa,QAAW;AAC9B,WAAK,WAAW,MAAM;;AAE1B,QAAI,MAAM,SAAS,QAAW;AAC1B,WAAK,OAAO,MAAM;;AAEtB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,qBAAqB,QAAW;AACtC,WAAK,mBAAmB,MAAM;;AAElC,QAAI,MAAM,oBAAoB,QAAW;AACrC,WAAK,kBAAkB,MAAM;;AAEjC,QAAI,MAAM,cAAc,QAAW;AAC/B,WAAK,YAAY,MAAM;;AAE3B,QAAI,MAAM,cAAc,QAAW;AAC/B,WAAK,YAAY,MAAM;;AAE3B,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAGvB,QAAI,iBAAiB;AAErB,OAAG,YAAY,KAAK,QAAQ,KAAK,OAAO;AACxC,OAAG,YAAY,GAAG,qBAAqB,KAAK,KAAK;AACjD,OAAG,YAAY,GAAG,gCAAgC,KAAK,gBAAgB;AACvE,OAAG,YAAY,GAAG,kBAAkB,KAAK,eAAe;AACxD,OAAG,YAAY,GAAG,oCAAoC,GAAG,IAAI;AAE7D,UAAM,YAAY,qBAAqB,IAAI,KAAK,SAAS;AACzD,OAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,SAAS;AAE9D,QAAI,cAAc,GAAG,0BACd,cAAc,GAAG,yBACjB,cAAc,GAAG,yBACjB,cAAc,GAAG,sBAAsB;AAC1C,uBAAiB;;AAGrB,UAAM,YAAY,qBAAqB,IAAI,KAAK,SAAS;AACzD,QAAI,WAAW;AACX,SAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,SAAS;;AAGlE,UAAM,QAAQ,qBAAqB,IAAI,KAAK,KAAK;AACjD,QAAI,OAAO;AACP,SAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;AAG1D,UAAM,QAAQ,qBAAqB,IAAI,KAAK,KAAK;AACjD,QAAI,OAAO;AACP,SAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;AAG1D,UAAM,WAAW,qBAAqB,IAAI,KAAK,QAAQ,KAAK,QAAQ;AACpE,UAAM,SAAS,qBAAqB,IAAI,KAAK,IAAI;AACjD,UAAM,mBAAmB,kBAAkB,IAAI,KAAK,gBAAgB,UAAU,QAAQ,KAAK,UAAU,KAAK;AAE1G,QAAI,KAAK,WAAW,GAAG,kBAAkB;AACrC,UAAI,QAAQ,KAAK,GAAG;AAChB,cAAM,SAAS;AACf,cAAMD,SAAQ;UACV,GAAG;UACH,GAAG;UACH,GAAG;UACH,GAAG;UACH,GAAG;UACH,GAAG;;AAEP,iBAASC,KAAI,GAAG,MAAMD,OAAM,QAAQC,KAAI,KAAKA,MAAK;AAE9C,aAAG,WAAWD,OAAMC,EAAC,GAAG,GAAG,kBAAkB,UAAU,QAAQ,OAAOA,EAAC,CAAC;;;WAG7E;AACH,SAAG,WAAW,GAAG,YAAY,GAAG,kBAAkB,UAAU,QAAQ,KAAK;;AAO7E,OAAG,YAAY,KAAK,QAAQ,IAAI;EACpC;EAEA,kBAAkBF,SAA+B;AAE7C,UAAM,KAAK,KAAK;AAChB,UAAM,UAAUA,QAAO,WAAW,CAAA;AAClC,UAAM,SAAS,QAAQ;AACvB,UAAM,QAAQA,QAAO;AAIrB,QAAI,MAAM,WAAW,QAAW;AAC5B,WAAK,SAAS,MAAM;;AAExB,QAAI,MAAM,mBAAmB,QAAW;AACpC,WAAK,iBAAiB,MAAM;;AAEhC,QAAI,MAAM,aAAa,QAAW;AAC9B,WAAK,WAAW,MAAM;;AAE1B,QAAI,MAAM,SAAS,QAAW;AAC1B,WAAK,OAAO,MAAM;;AAEtB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,qBAAqB,QAAW;AACtC,WAAK,mBAAmB,MAAM;;AAElC,QAAI,MAAM,oBAAoB,QAAW;AACrC,WAAK,kBAAkB,MAAM;;AAEjC,QAAI,MAAM,cAAc,QAAW;AAC/B,WAAK,YAAY,MAAM;;AAE3B,QAAI,MAAM,cAAc,QAAW;AAC/B,WAAK,YAAY,MAAM;;AAE3B,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAEvB,QAAI,MAAM,UAAU,QAAW;AAC3B,WAAK,QAAQ,MAAM;;AAGvB,OAAG,cAAc,GAAG,WAAW,CAAC;AAChC,OAAG,YAAY,KAAK,QAAQ,KAAK,OAAO;AAExC,QAAI,eAAe,QAAQ,SAAS;AAEpC,OAAG,YAAY,GAAG,qBAAqB,KAAK,KAAK;AACjD,OAAG,YAAY,GAAG,gCAAgC,KAAK,gBAAgB;AACvE,OAAG,YAAY,GAAG,kBAAkB,KAAK,eAAe;AACxD,OAAG,YAAY,GAAG,oCAAoC,GAAG,IAAI;AAE7D,UAAM,QAAQ,qBAAqB,IAAI,KAAK,KAAK;AACjD,QAAI,OAAO;AACP,SAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;AAG1D,UAAM,QAAQ,qBAAqB,IAAI,KAAK,KAAK;AACjD,QAAI,OAAO;AACP,SAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;AAI1D,QAAI,KAAK,SAAS,GAAG,cAAc,KAAK,SAAS,GAAG,kBAAkB;AAClE,YAAM,QAAQ,qBAAqB,IAAI,KAAK,KAAK;AACjD,UAAI,OAAO;AACP,WAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;AAE1D,SAAG,cAAc,KAAK,MAAM,GAAG,gBAAgB,KAAK;;AAGxD,QAAI,cAAc;AACd,SAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,eAAe,IAAI,KAAK,SAAS,CAAC;AACvF,SAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,eAAe,IAAI,KAAK,SAAS,CAAC;WAEpF;AACH,SAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,qBAAqB,IAAI,KAAK,SAAS,CAAC;AAC7F,SAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,qBAAqB,IAAI,KAAK,SAAS,CAAC;;AAGjG,UAAM,WAAW,qBAAqB,IAAI,KAAK,QAAQ,KAAK,QAAQ;AACpE,UAAM,SAAS,qBAAqB,IAAI,KAAK,IAAI;AACjD,UAAM,mBAAmB,kBAAkB,IAAI,KAAK,gBAAgB,UAAU,QAAQ,KAAK,UAAU,KAAK;AAE1G,OAAG,aAAa,GAAG,YAAY,QAAQ,kBAAkB,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,EAAE,MAAM;AAE5F,aAASE,KAAI,GAAG,MAAM,QAAQ,QAAQA,KAAI,KAAKA,MAAK;AAEhD,YAAM,SAAS,QAAQA,EAAC;AAExB,UAAI,KAAK,WAAW,YAAY;AAC5B,YAAI,aAAa,MAAM;AACnB,aAAG,wBAAwB,GAAG,YAAYA,IAAG,GAAG,GAAG,OAAO,OAAO,OAAO,QAAQ,UAAU,OAAO,IAAI;eAClG;AACH,kBAAQ,KAAK,+EAA+E;;aAE7F;AACH,WAAG,cAAc,GAAG,YAAYA,IAAG,GAAG,GAAG,OAAO,OAAO,OAAO,QAAQ,UAAU,QAAQ,OAAO,IAAI;;;AAI3G,OAAG,YAAY,KAAK,QAAQ,IAAI;EACpC;EAEA,SAAS,OAaR;AACG,UAAM,KAAK,KAAK;AAChB,OAAG,YAAY,KAAK,QAAQ,KAAK,OAAO;AACxC,SAAK,aAAa,KAAK;AACvB,OAAG,YAAY,KAAK,QAAQ,IAAI;EACpC;EAEA,aAAa,OAaZ;AACG,UAAM,KAAK,KAAK;AAChB,QAAI,MAAM,WAAW,QAAW;AAC5B,WAAK,SAAS,MAAM;;AAExB,QAAI,MAAM,mBAAmB,QAAW;AACpC,WAAK,iBAAiB,MAAM;;AAEhC,QAAI,MAAM,aAAa,QAAW;AAC9B,WAAK,WAAW,MAAM;;AAE1B,QAAI,MAAM,SAAS,QAAW;AAC1B,WAAK,OAAO,MAAM;;AAEtB,QAAI,MAAM,cAAc,QAAW;AAC/B,YAAM,YAAY,qBAAqB,IAAI,MAAM,SAAS;AAC1D,UAAI,WAAW;AACX,aAAK,YAAY,MAAM;AACvB,WAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,SAAS;AAC9D,YAAI,cAAc,GAAG,0BAA0B,cAAc,GAAG,yBAAyB,cAAc,GAAG,yBAAyB,cAAc,GAAG,sBAAsB;AACtK,aAAG,eAAe,KAAK,MAAM;;;;AAIzC,QAAI,MAAM,cAAc,QAAW;AAC/B,YAAM,YAAY,qBAAqB,IAAI,MAAM,SAAS;AAC1D,UAAI,WAAW;AACX,aAAK,YAAY,MAAM;AACvB,WAAG,cAAc,KAAK,QAAQ,GAAG,oBAAoB,SAAS;;;AAGtE,QAAI,MAAM,UAAU,QAAW;AAC3B,YAAM,QAAQ,qBAAqB,IAAI,MAAM,KAAK;AAClD,UAAI,OAAO;AACP,aAAK,QAAQ,MAAM;AACnB,WAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;;AAG9D,QAAI,MAAM,UAAU,QAAW;AAC3B,YAAM,QAAQ,qBAAqB,IAAI,MAAM,KAAK;AAClD,UAAI,OAAO;AACP,aAAK,QAAQ,MAAM;AACnB,WAAG,cAAc,KAAK,QAAQ,GAAG,gBAAgB,KAAK;;;EAGlE;EAEA,KAAK,MAAY;AACb,QAAI,CAAC,KAAK,WAAW;AACjB,aAAO;;AAEX,QAAI,KAAK,SAAS;AACd,YAAM,KAAK,KAAK;AAEhB,SAAG,cAAc,GAAG,UAAU,IAAI,EAAE,CAAC;AACrC,SAAG,YAAY,KAAK,QAAQ,KAAK,OAAO;AACxC,aAAO;;AAEX,WAAO;EACX;EAEA,OAAO,MAAY;AACf,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,QAAI,KAAK,SAAS;AACd,YAAM,KAAK,KAAK;AAEhB,SAAG,cAAc,GAAG,UAAU,IAAI,EAAE,CAAC;AACrC,SAAG,YAAY,KAAK,QAAQ,IAAI;;EAExC;EAEA,UAAO;AACH,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,QAAI,KAAK,SAAS;AACd,WAAK,GAAG,cAAc,KAAK,OAAO;AAElC,WAAK,UAAU;;EAEvB;;AAGJ,SAAS,kBACL,IACA,oBACA,UACA,QACA,UACA,iBAAiB,OAAK;AACtB,MAAI,uBAAuB,MAAM;AAE7B,QAAI,GAAG,kBAAkB,MAAM,QAAW;AAEtC,aAAO,GAAG,kBAAkB;;AAEhC,YAAQ,KAAK,wDAAyD,qBAAqB,GAAI;;AAEnG,MAAI,iBAAiB;AACrB,MAAI,aAAa,GAAG,KAAK;AACrB,QAAI,WAAW,GAAG;AAAO,uBAAiB,GAAG;AAC7C,QAAI,WAAW,GAAG;AAAY,uBAAiB,GAAG;AAClD,QAAI,WAAW,GAAG;AAAe,uBAAiB,GAAG;;AAEzD,MAAI,aAAa,GAAG,IAAI;AACpB,QAAI,WAAW,GAAG;AAAO,uBAAiB,GAAG;AAC7C,QAAI,WAAW,GAAG;AAAY,uBAAiB,GAAG;AAClD,QAAI,WAAW,GAAG;AAAe,uBAAiB,GAAG;;AAEzD,MAAI,aAAa,GAAG,MAAM;AACtB,QAAI,WAAW,GAAG;AAAO,uBAAiB,GAAG;AAC7C,QAAI,WAAW,GAAG;AAAY,uBAAiB,GAAG;AAClD,QAAI,WAAW,GAAG;AAAe,uBAAkB,aAAa,gBAAgB,mBAAmB,QAAS,GAAG,eAAe,GAAG;AACjI,QAAI,WAAW,GAAG;AAAwB,uBAAiB,GAAG;AAC9D,QAAI,WAAW,GAAG;AAAwB,uBAAiB,GAAG;;AAElE,MAAI,mBAAmB,GAAG,QAAQ,mBAAmB,GAAG,QACpD,mBAAmB,GAAG,SAAS,mBAAmB,GAAG,SACrD,mBAAmB,GAAG,WAAW,mBAAmB,GAAG,SAAS;AAChE,sBAAkB,IAAI,wBAAwB;;AAElD,SAAO;AACX;AAEA,SAAS,eAAe,IAA4BC,IAAS;AACzD,MAAIA,OAAM,iBAAiBA,OAAM,8BAA8BA,OAAM,2BAA2B;AAC5F,WAAO,GAAG;;AAEd,SAAO,GAAG;AAEd;;;AC/eO,IAAM,eAAgB,WAAA;AAEzB,QAAM,UAAU,SAAS,cAAc,QAAQ,GAAG,KAAK,OAAO,cAAc,kBAAkB,sBAC1F,uBAAuB;AAG3B,MAAI,CAAC,QAAQ,YAAY;AACrB,WAAO;MACH,WAAW,WAAA;MACX;MACA,WAAW,WAAA;MACX;MACA,YAAY,WAAA;MACZ;;;AAKR,QAAM,gBAAgB,CAAC,CAAE,QAAQ,WAAW,IAAI,EAAE,cAAe,cAAc,CAAC,CAAE,QAAQ,WACtF,aAAa,CAAC,CAAE,OAAO;AAG3B,QAAM,iBAAiB,SAAUC,UAA0B;AAEvD,UAAM,SAAS,SAASA,SAAQ,KAAK,GAAG,UAAU,SAASA,SAAQ,MAAM;AAEzE,WAAOA,SAAQ,WAAW,IAAI,EAAE,aAAa,GAAG,GAAG,QAAQ,OAAO;EACtE;AAGA,QAAM,aAAa,SAAU,MAAS;AAClC,QAAIC,IAAQ,OAAY,UAAe;AACvC,QAAI,OAAO,QAAQ,UAAU;AACzB,gBAAU;WACP;AACH,cAAQ;AACR,WAAKA,KAAI,GAAGA,KAAI,MAAM,QAAQA,MAAK;AAC/B,mBAAW,GAAG,MAAMA,EAAC,CAAC;;;AAG9B,WAAO,KAAK,OAAO;EACvB;AAGA,QAAM,YAAY,SAAU,OAAgB;AACxC,QAAI,YAAY;AAChB,UAAM,SAAS,MAAM;AACrB,UAAM,UAAU,MAAM;AAEtB,iBAAa;AAEb,QAAI,YAAY,SAAS,UAAU,IAAI;AACvC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAE/B,iBAAa,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;AACvC,iBAAa,GAAG,IAAI,GAAG,GAAG,CAAC;AAE3B,QAAI,cAAc;AAClB,iBAAa,GAAG,cAAc,GAAG;AACjC,kBAAc,KAAK,MAAM,cAAc,GAAG;AAC1C,iBAAa,GAAG,cAAc,GAAG;AACjC,kBAAc,KAAK,MAAM,cAAc,GAAG;AAC1C,iBAAa,GAAG,cAAc,GAAG;AACjC,kBAAc,KAAK,MAAM,cAAc,GAAG;AAC1C,iBAAa,GAAG,cAAc,GAAG;AAEjC,QAAI,eAAe;AACnB,iBAAa,GAAG,eAAe,GAAG;AAClC,mBAAe,KAAK,MAAM,eAAe,GAAG;AAC5C,iBAAa,GAAG,eAAe,GAAG;AAClC,mBAAe,KAAK,MAAM,eAAe,GAAG;AAC5C,iBAAa,GAAG,eAAe,GAAG;AAClC,mBAAe,KAAK,MAAM,eAAe,GAAG;AAC5C,iBAAa,GAAG,eAAe,GAAG;AAElC,iBAAa,GAAG,GAAG,GAAG,IAAI,CAAC;AAC3B,iBAAa,GAAG,GAAG,GAAG,GAAG,CAAC;AAE1B,QAAI,YAAY,SAAS,UAAU;AACnC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAC/B,gBAAY,KAAK,MAAM,YAAY,GAAG;AACtC,iBAAa,GAAG,YAAY,GAAG;AAE/B,iBAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE9D,UAAM,WAAW,MAAM;AACvB,QAAI,eAAe;AACnB,QAAIC;AACJ,QAAI;AACJ,QAAI,IAAI;AACR,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,OAAG;AACC,iBAAW,UAAU,IAAI,KAAK;AAC9B,oBAAc;AACd,WAAK,IAAI,GAAG,IAAI,QAAQ,KAAK;AACzB,mBAAW,IAAI;AACf,uBAAe;UACX,SAAS,WAAW,WAAW,CAAC;;UAChC,SAAS,WAAW,WAAW,CAAC;;UAChC,SAAS,WAAW,QAAQ;;UAC5B,SAAS,WAAW,WAAW,CAAC;;;;AAGxC,sBAAgB;aACX,EAAE;AAEX,WAAO,WAAW,YAAY,YAAY;EAC9C;AAGA,QAAM,WAAW,SAAU,SAAe;AACtC,QAAI,CAAC,OAAO,KAAK,OAAO,GAAG;AACvB,eAAS,SAAS,OAAO;;EAEjC;AAEA,QAAM,cAAc,SAAU,SAAiB,SAAe;AAC1D,WAAO,UAAU,UAAU,aAAa;EAC5C;AAGA,QAAM,kBAAkB,SAAU,WAAc;AAC5C,UAAM,cAAc,SAAS,cAAc,KAAK;AAChD,gBAAY,MAAM;AAClB,WAAO;EACX;AAEA,QAAM,cAAc,SAAUF,UAA4B,QAAgB,SAAiB,OAAc;AACrG,QAAI,UAAU,SAAS;AACnB,YAAM,cAAc,SAAS,cAAc,QAAQ;AACnD,kBAAY,QAAQ;AACpB,kBAAY,SAAS;AACrB,kBAAY,MAAM,QAAQ,SAAS;AACnC,kBAAY,MAAM,SAAS,UAAU;AACrC,YAAM,WAAW,YAAY,WAAW,IAAI;AAC5C,UAAI,OAAO;AAEP,iBAAS,KAAI;AAEb,iBAAS,MAAM,GAAK,EAAI;AAExB,iBAAS,wBAAwB;AAEjC,iBAAS,UAAUA,UAAS,GAAG,GAAGA,SAAQ,OAAOA,SAAQ,QAAQ,GAAG,GAAG,QAAQ,CAAC,OAAO;AAEvF,iBAAS,QAAO;aACb;AAEH,iBAAS,wBAAwB;AAEjC,iBAAS,UAAUA,UAAS,GAAG,GAAGA,SAAQ,OAAOA,SAAQ,QAAQ,GAAG,GAAG,QAAQ,OAAO;;AAE1F,aAAO;;AAEX,WAAOA;EACX;AAEA,SAAO;IACH,WAAW,SAAUA,UAA4B,YAAqB,QAAgB,SAAiB,OAAc;AACjH,UAAI,CAAC;AAAa,eAAO;AACzB,YAAM,gBAAgB,YAAYA,UAAS,QAAQ,SAAS,KAAK;AACjE,YAAM,UAAU;AAChB,YAAM,UAAU,cAAc,UAAU,OAAO;AAC/C,UAAI,YAAY;AACZ,eAAO,gBAAgB,OAAO;aAC3B;AACH,iBAAS,uBAAuB,QAAQ,QAAQ,SAAS,eAAe,IAAI,OAAO;;AAEvF,aAAO;IACX;IAEA,YAAY,SAAUA,UAA4B,YAAqB,QAAgB,SAAiB,OAAc;AAClH,UAAI,CAAC;AAAa,eAAO;AACzB,YAAM,gBAAgB,YAAYA,UAAS,QAAQ,SAAS,KAAK;AACjE,YAAM,UAAU;AAChB,YAAM,UAAU,cAAc,UAAU,OAAO;AAE/C,UAAI,QAAQ,QAAQ,OAAO,KAAK;AAAG,eAAO;AAC1C,UAAI,YAAY;AACZ,eAAO,gBAAgB,OAAO;aAC3B;AACH,iBAAS,uBAAuB,QAAQ,QAAQ,SAAS,eAAe,IAAI,OAAO;;AAEvF,aAAO;IACX;IAEA,WAAW,SAAUA,UAA4B,YAAqB,QAAgB,SAAiB,OAAc;AACjH,UAAI,EAAE,eAAe,iBAAiB;AAAa,eAAO;AAC1D,YAAM,gBAAgB,YAAYA,UAAS,QAAQ,SAAS,KAAK;AACjE,YAAM,UAAU;AAChB,YAAM,QAAQ,eAAe,aAAa,GAAG,aAAa,UAAU,KAAK;AACzE,UAAI,YAAY;AACZ,eAAO,gBAAgB,YAAY,YAAY,OAAO,CAAC;aACpD;AACH,iBAAS,YAAY,YAAY,OAAO,CAAC;;AAE7C,aAAO;IACX;;AAER,EAAE;;;ACzNF,IAAM,aAEF;EACA,OAAO;EACP,sBAAsB,CAAA;;AAG1B,IAAM,SAAS,SAAS,cAAc,QAAQ;AAE9C,IAAI,QAAQ;AAGR,QAAM,KAA6B,OAAO,WAAW,UAAU,EAAC,WAAW,KAAI,CAAC;AAEhF,aAAW,QAAQ,CAAC,CAAC;AAErB,MAAI,WAAW,OAAO;AAElB,eAAW,YAAY,GAAG,qBAAoB,EAAG;AACjD,QAAI,GAAG,0BAA0B;AAE7B,UAAI,GAAG,yBAAyB,GAAG,iBAAiB,GAAG,UAAU,EAAE,YAAY,GAAG;AAC9E,mBAAW,yBAAyB;aACjC;AACH,YAAI,GAAG,yBAAyB,GAAG,iBAAiB,GAAG,YAAY,EAAE,YAAY,GAAG;AACpE,qBAAW,yBAAyB;eACjC;AACH,qBAAW,yBAAyB;;;WAGrD;AACH,iBAAW,yBAAyB;;AAExC,eAAW,oBAAoB,GAAG,aAAa,GAAG,UAAU;AAC5D,eAAW,mBAAmB,GAAG,aAAa,GAAG,gBAAgB;AACjE,eAAW,oBAAoB,GAAG,aAAa,GAAG,yBAAyB;AAC3E,eAAW,wBAAwB,GAAG,aAAa,GAAG,qBAAqB;AAC3E,eAAW,oBAAoB,GAAG,aAAa,GAAG,gCAAgC;AAClF,eAAW,0BAA0B,GAAG,aAAa,GAAG,uBAAuB;AAC/E,eAAW,qBAAqB,GAAG,aAAa,GAAG,kBAAkB;AACrE,eAAW,6BAA6B,GAAG,aAAa,GAAG,0BAA0B;AACrF,eAAW,+BAA+B,GAAG,aAAa,GAAG,4BAA4B;AACzF,eAAW,sBAAsB,GAAG,aAAa,GAAG,mBAAmB;AAEvE,OAAG,uBAAsB,EAAG,QAAQ,SAAU,KAAQ;AAClD,iBAAW,qBAAqB,GAAG,IAAI;IAC3C,CAAC;AACD,eAAW,yBAAyB,WAAW,qBAAqB,qBAAqB;;;;;AC1C3F,IAAO,gBAAP,MAAoB;;;;EAKf;;;;EAKA;;;;EAKA;;;;EAKA;EAEA;;;;;;;;;;EAWA;;;;EAKA;;;;EAKA;;;;;EAMA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;EAQA;;;;EAKA;;;;;;;EAQA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;EAIA;;;;EAKA;;;;EAKA;EAEA;EAEA;EAEP,YAAY,QAAgB,IAA4B,eAA4B;AAChF,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,KAAK;AACV,SAAK,gBAAgB;AACrB,SAAK,MAAK;EACd;;;;EAKA,QAAK;AACD,SAAK,gBAAgB;AACrB,SAAK,aAAa;AAClB,SAAK,UAAU;AACf,SAAK,YAAY;AACjB,SAAK,YAAY;AACjB,SAAK,cAAc;AACnB,SAAK,mBAAmB;AACxB,SAAK,mBAAmB;AACxB,SAAK,iBAAiB;AACtB,SAAK,iBAAiB;AACtB,SAAK,YAAY;AACjB,SAAK,WAAW;AAChB,SAAK,gBAAgB;AACrB,SAAK,YAAY;AACjB,SAAK,mBAAmB;EAC5B;;;;EAKA,IAAI,kBAAe;AACf,UAAM,cAAc,KAAK;AACzB,SAAK,eAAe,KAAK,cAAc,KAAK,WAAW;AACvD,WAAO;EACX;;;;ACpKE,IAAO,wBAAP,MAA4B;EAE9B,cAAA;EACA;;;;ACFE,IAAO,uBAAP,MAA2B;EAE7B;EACA;EAEA,YAAY,SAA8B,WAAuB;AAC7D,SAAK,UAAU;AACf,SAAK,YAAY;EACrB;EAEA,UAAO;AACH,QAAI,KAAK,WAAW;AAChB,WAAK,UAAU,QAAO;;EAE9B;;;;AChBG,IAAM,qBAAqB;EAC9B,SAAS;EACT,QAAQ,KAAK;EACb,UAAU,KAAK;EACf,WAAW,KAAK;EAChB,YAAY,KAAK;EACjB,aAAa,KAAK;EAClB,gBAAgB,KAAK;EACrB,QAAQ,KAAK;EACb,aAAa,KAAK;EAClB,UAAU,KAAK;EACf,WAAW,KAAK;EAChB,aAAa,KAAK;;;;ACTtB,IAAM,aAAa,IAAI,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC;AAKtC,IAAO,sBAAP,MAA0B;EAEnB;EACA;EACA;EAEA;EAET;EACA;EACA;EACA;EACA;EACA;;;;;EAMA,YAAYG,SAMX;AACG,SAAK,KAAKA,QAAO;AACjB,SAAK,gBAAgBA,QAAO;AAC5B,SAAK,iBAAiBA,QAAO,kBAAkB,CAAA;AAM/C,SAAK,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC;AACzB,SAAK,QAAQA,QAAO;AACpB,SAAK,cAAc,YAAYA,QAAO,IAAI;AAC1C,SAAK,UAAU,WAAU;AACzB,SAAK,mBAAmB;AACxB,SAAK,kBAAkB;AAEvB,SAAK,UAAUA,QAAO,WAAW;AACjC,aAASC,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,kBAAkB,IAAI;;EAErD;EAEA,IAAI,OAAI;AACJ,WAAO,KAAK;EAChB;EAEA,WAAW,WAAmB,SAAgB;AAC1C,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,aAAa,SAAS;AACrE;;AAEJ,SAAK,OAAO,SAAS,IAAI,UAAU,KAAK,OAAO,SAAS,IAAI,mBAAmB,UAAU,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AACtI,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,WAAW,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE3E;EAEA,eAAe,WAAmB,aAAoB;AAClD,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,iBAAiB,aAAa;AAC7E;;AAEJ,SAAK,OAAO,SAAS,IAAI,cAAc,KAAK,OAAO,SAAS,IAAI,mBAAmB,cAAc,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AAC9I,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,eAAe,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE/E;EAEA,UAAU,WAAmB,QAAe;AACxC,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,YAAY,QAAQ;AACnE;;AAEJ,SAAK,OAAO,SAAS,IAAI,SAAS,KAAK,OAAO,SAAS,IAAI,mBAAmB,SAAS,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AACpI,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,UAAU,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE1E;EAEA,YAAY,WAAmB,UAAiB;AAC5C,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,cAAc,UAAU;AACvE;;AAEJ,SAAK,OAAO,SAAS,IAAI,WAAW,KAAK,OAAO,SAAS,IAAI,mBAAmB,WAAW,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AACxI,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,YAAY,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE5E;EAEA,UAAU,WAAmB,QAAe;AACxC,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,YAAY,QAAQ;AACnE;;AAEJ,SAAK,OAAO,SAAS,IAAI,SAAS,KAAK,OAAO,SAAS,IAAI,mBAAmB,SAAS,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AACpI,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,UAAU,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE1E;EAEA,aAAa,WAAmB,WAAkB;AAC9C,QAAK,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,eAAgB,WAAW;AAC3E;;AAEJ,SAAK,OAAO,SAAS,IAAI,YAAY,KAAK,OAAO,SAAS,IAAI,mBAAmB,YAAY,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AAC1I,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,aAAa,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE7E;EAEA,cAAc,WAAmB,YAAmB;AAChD,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,gBAAgB,YAAY;AAC3E;;AAEJ,SAAK,OAAO,SAAS,IAAI,aAAa,KAAK,OAAO,SAAS,IAAI,mBAAmB,aAAa,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AAC5I,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,cAAc,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE9E;EAEA,YAAY,WAAmB,UAAiB;AAC5C,QAAI,CAAC,EAAE,KAAK,OAAO,SAAS,IAAI,mBAAmB,cAAc,UAAU;AACvE;;AAEJ,SAAK,OAAO,SAAS,IAAI,WAAW,KAAK,OAAO,SAAS,IAAI,mBAAmB,WAAW,KAAK,OAAO,SAAS,IAAI,CAAC,mBAAmB;AACxI,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,YAAY,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE5E;EAEA,YAAY,WAAmBC,QAAuB;AAClD,QAAIA,QAAO;AACP,iBAAW,CAAC,IAAI,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAK;AAC3C,iBAAW,CAAC,IAAI,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAK;AAC3C,iBAAW,CAAC,IAAI,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAK;AAC3C,eAASD,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,aAAK,eAAeA,EAAC,EAAE,YAAY,WAAW,UAAU;;WAEzD;AACH,eAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,aAAK,eAAeA,EAAC,EAAE,YAAY,WAAW,IAAI;;;EAG9D;EAEA,WAAW,WAAmB,SAAgB;AAC1C,QAAI,KAAK,eAAe,WAAW,GAAG;AAClC;;AAGJ,UAAM,uBAAuB,KAAK,eAAe,CAAC,EAAE,SAAS,CAAC;AAC9D,QAAI,mBAAmB;AACvB,QAAI,YAAY,QAAQ,YAAY,QAAW;AAC3C,UAAI,UAAU,GAAG;AACb,kBAAU;iBACH,UAAU,GAAG;AACpB,kBAAU;;AAEd,yBAAmB,KAAK,MAAM,UAAU,GAAK;AAE7C,UAAI,yBAAyB,kBAAkB;AAC3C;;WAED;AACH,yBAAmB;AAEnB,UAAI,yBAAyB,kBAAkB;AAC3C;;;AAGR,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,WAAW,WAAW,kBAAkB,KAAK,OAAO,SAAS,CAAC;;EAE7F;EAEA,UAAU,WAAmB,QAAuB;EAEpD;EAEA,UAAU,WAAiB;AACvB,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,UAAU,WAAW,KAAK,OAAO,SAAS,CAAC;;EAE1E;EAEA,oBAAoB,WAAiB;AACjC,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,oBAAoB,SAAS;;EAE5D;EAEA,UAAO;AACH,aAASA,KAAI,GAAG,MAAM,KAAK,eAAe,QAAQA,KAAI,KAAKA,MAAK;AAC5D,WAAK,eAAeA,EAAC,EAAE,QAAO;;EAEtC;;;;ACtMJ,IAAME,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAKtB,IAAO,oBAAP,MAAwB;EAE1B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAYC,SAUX;AACG,SAAK,iBAAiB;AACtB,SAAK,cAAcA,QAAO;AAC1B,SAAK,KAAKA,QAAO;AACjB,SAAK,SAAS;AACd,SAAK,UAAU,CAAA;AACf,SAAK,QAAQ,CAACA,QAAO,MAAM,CAAC,GAAGA,QAAO,MAAM,CAAC,GAAGA,QAAO,MAAM,CAAC,GAAGA,QAAO,OAAO;AAC/E,aAASC,KAAI,GAAGA,KAAI,GAAGA,MAAK;AACxB,WAAK,QAAQ,KAAK;QACd,UAAU,CAACD,QAAO,MAAM,CAAC,GAAGA,QAAO,MAAM,CAAC,GAAGA,QAAO,MAAM,CAAC,GAAGA,QAAO,OAAO;QAC5E,YAAY;QACZ,aAAcA,QAAO,UAAU;OAClC;;AAEL,SAAK,QAAQA,QAAO;AACpB,SAAK,SAASA,QAAO;AACrB,SAAK,UAAUA,QAAO;AACtB,SAAK,OAAO,YAAW;AACvB,SAAK,qBAAqBA,QAAO;AACjC,SAAK,mBAAmBA,QAAO;AAC/B,SAAK,YAAYA,QAAO;EAC5B;EAEA,uBAAoB;AAChB,UAAM,IAAI,MAAM,yBAAyB;EAC7C;EAEA,kBAAkB,gBAA8B;AAC5C,SAAK,iBAAiB;EAC1B;EAEA,WAAW,WAAmB,OAAU;AACpC,SAAK,MAAM,oBAAoB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EACxG;EAEA,UAAU,QAAuB;AAC7B,UAAME,UAAS,gBAAgB,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;AAChD,UAAM,UAAU,KAAK;AACrB,SAAK,OAAO,UAAU,KAAK,YAAY,iBAAiB,SAASA,OAAM,IAAI,KAAK,YAAY,QAAQA,OAAM;AAC1G,UAAM,cAAc,CAAC,WAAW,QAAQ,OAAO,KAAK,KAAK;AACzD,UAAM,aAAa,KAAK,KAAK;AAC7B,UAAM,UAAW,WAAW,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM;AACjF,SAAK,MAAM,mBAAmB,KAAK,WAAW,UACxC,QAAQ,QAAQ,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,GAAGJ,UAAS,GAAGC,UAAS,IACtG,MAAM;AACZ,QAAI,aAAa;;EAGrB;EAEA,YAAY,UAAgB;EAC5B;EAEA,aAAa,WAAiB;EAC9B;EAEA,SAASI,QAAsB;AAC3B,UAAM,aAAa;AACnB,SAAK,MAAM,CAAC,IAAIA,OAAM,CAAC;AACvB,SAAK,MAAM,CAAC,IAAIA,OAAM,CAAC;AACvB,SAAK,MAAM,CAAC,IAAIA,OAAM,CAAC;AACvB,QAAI,CAAC,KAAK,YAAY;AAClB,eAAS,YAAY,GAAG,MAAM,KAAK,MAAM,cAAc,OAAO,SAAS,QAAQ,YAAY,KAAK,aAAa;AACzG,aAAK,MAAM,kBAAkB,WAAW,KAAK,WAAWA,QAAO,UAAU;;;EAGrF;EAEA,YAAY,WAAmB,UAAgC;AAC3D,UAAM,aAAa;AACnB,UAAM,UAAU,KAAK,QAAQ,SAAS;AACtC,UAAM,eAAe,QAAQ;AAC7B,QAAI,UAAU;AACV,mBAAa,CAAC,IAAI,SAAS,CAAC;AAC5B,mBAAa,CAAC,IAAI,SAAS,CAAC;AAC5B,mBAAa,CAAC,IAAI,SAAS,CAAC;AAC5B,WAAK,MAAM,kBAAkB,WAAW,KAAK,WAAW,cAAc,UAAU;AAChF,cAAQ,aAAa;WAClB;AACH,WAAK,MAAM,kBAAkB,WAAW,KAAK,WAAW,cAAc,UAAU;AAChF,cAAQ,aAAa;;EAE7B;EAEA,WAAW,WAAmB,SAAiB,OAAa;AACxD,UAAM,aAAa;AACnB,UAAM,UAAU,KAAK,QAAQ,SAAS;AACtC,UAAM,iBAAkB,UAAU;AAClC,UAAM,kBAAkB,QAAQ;AAChC,UAAM,uBAAwB,oBAAoB;AAClD,YAAQ,MAAM,CAAC,IAAI;AACnB,YAAQ,SAAS,CAAC,IAAI;AACtB,YAAQ,cAAc;AACtB,QAAI,KAAK,YAAY;AACjB,WAAK,MAAM,kBAAkB,WAAW,KAAK,WAAW,QAAQ,UAAU,UAAU;WACjF;AACH,WAAK,MAAM,kBAAkB,WAAW,KAAK,WAAW,QAAQ,OAAO,UAAU;;AAErF,QAAI,sBAAsB;AACtB,WAAK,MAAM,wBAAwB,WAAW,KAAK,WAAW,OAAO,cAAc;;EAE3F;EAEA,eAAe,WAAmB,OAAa;AAC3C,SAAK,MAAM,wBAAwB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EAC5G;EAEA,UAAU,WAAmB,OAAa;AACtC,SAAK,MAAM,mBAAmB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EACvG;EAEA,YAAY,WAAmB,OAAa;AACxC,SAAK,MAAM,qBAAqB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EACzG;EAEA,aAAa,WAAmB,OAAa;AACzC,SAAK,MAAM,sBAAsB,WAAW,KAAK,WAAW,KAAK;EACrE;EAEA,cAAc,WAAmB,OAAa;AAC1C,SAAK,MAAM,uBAAuB,WAAW,KAAK,WAAW,KAAK;EACtE;EAEA,YAAY,WAAmB,OAAa;AACxC,SAAK,MAAM,qBAAqB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EACzG;EAEA,UAAU,WAAmB,OAAa;AACtC,SAAK,MAAM,mBAAmB,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EACvG;EAEA,kBAAe;AACX,WAAO;EACX;EAEA,kBAAkB,WAAgB,eAAkB;EAEpD;EAEA,oBAAoB,YAAe;EAEnC;EAEA,kBAAe;AACX,WAAO;EACX;EAEA,gBAAgB,eAA4B;EAE5C;EAEA,UAAU,WAAmB,OAAa;AACtC,SAAK,MAAM,UAAU,WAAW,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,EAAE,WAAW;EAC9F;EAEA,oBAAoB,WAAiB;AACjC,SAAK,MAAM,oBAAoB,SAAS;EAC5C;EAEA,UAAO;AACH,QAAI,KAAK,QAAQ,KAAK,aAAa;AAC/B,WAAK,YAAY,QAAQ,KAAK,IAAI;;EAE1C;;;;AC3ME,IAAO,0BAAP,MAA8B;EAEhB;EACA;EACA;EACA;EACA;EAEhB,YAAYC,SAMX;AACG,SAAK,KAAKA,QAAO;AACjB,SAAK,uBAAuBA,QAAO;AACnC,SAAK,mCAAmCA,QAAO;AAC/C,SAAK,0BAA0BA,QAAO;AACtC,SAAK,2BAA2BA,QAAO;EAC3C;;;;ACtBE,IAAO,aAAP,MAAiB;EAEnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,cAAA;AACI,SAAK,MAAK;EACd;EAEA,QAAK;AACD,SAAK,YAAY;AACjB,SAAK,aAAa;AAClB,SAAK,iBAAiB;AACtB,SAAK,YAAY;AACjB,SAAK,cAAc;AACnB,SAAK,iBAAiB;AACtB,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,YAAY;EACrB;;;;ACnBJ,IAAM,cAAN,MAAiB;;;;;;;;;;EAWb;;;;;;;;;;;;;;;EAgBA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;EAKA,cAAA;AACI,SAAK,gBAAgB,CAAA;AACrB,SAAK,8BAA8B,CAAA;AACnC,SAAK,MAAK;EACd;;;;EAKA,QAAK;AACD,SAAK,SAAS;AACd,SAAK,YAAY;AACjB,SAAK,YAAY;AACjB,SAAK,mBAAmB;AACxB,SAAK,cAAc;AACnB,SAAK,mBAAmB;AACxB,SAAK,cAAc;AACnB,SAAK,mBAAmB;AACxB,SAAK,yBAAyB;AAC9B,SAAK,oBAAoB;AACzB,SAAK,8BAA8B;AACnC,SAAK,yBAAyB;AAC9B,SAAK,8BAA8B;AACnC,SAAK,yBAAyB;AAC9B,SAAK,mCAAmC;AACxC,SAAK,8BAA8B;AACnC,SAAK,2BAA2B;AAChC,SAAK,sBAAsB;AAC3B,SAAK,gCAAgC;AACrC,SAAK,2BAA2B;EACpC;;;;ACzFE,IAAO,oBAAP,MAAwB;EAE1B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,uBAA+B,KAAM;AAC7C,QAAI,uBAAuB,KAAQ;AAC/B,6BAAuB;;AAE3B,SAAK,WAAW;AAChB,SAAK,aAAa;AAClB,SAAK,YAAY,CAAA;AACjB,SAAK,SAAS,CAAA;AACd,SAAK,KAAK,CAAA;AACV,SAAK,UAAU,CAAA;AACf,SAAK,aAAa,CAAA;AAClB,SAAK,UAAU,CAAA;AACf,SAAK,UAAU,CAAA;AACf,SAAK,cAAc,CAAA;EACvB;;;;AC3BG,IAAM,gBAAgB;;EAIzB,cAAc;;EAId,cAAc;EACd,mBAAmB;;EAInB,wBAAwB;EACxB,qBAAqB;EACrB,mBAAmB;;EAInB,MAAM;;;;ACjBV,IAAM,gBAAN,MAAmB;EACf;EACA;EAEA,cAAA;AACI,SAAK,eAAe,CAAA;AACpB,SAAK,iBAAiB,CAAA;EAC1B;EAEA,SAAM;AACF,SAAK,eAAe,CAAA;AACpB,SAAK,iBAAiB,CAAA;EAC1B;EAEA,cAAc,KAAW;AACrB,QAAI,aAAa,KAAK,aAAa,GAAG;AACtC,QAAI,CAAC,YAAY;AACb,mBAAa,IAAI,WAAW,GAAG;AAC/B,WAAK,aAAa,GAAG,IAAI;;AAE7B,WAAO;EACX;EAEA,gBAAgB,KAAW;AACvB,QAAI,eAAe,KAAK,eAAe,GAAG;AAC1C,QAAI,CAAC,cAAc;AACf,qBAAe,IAAI,aAAa,GAAG;AACnC,WAAK,eAAe,GAAG,IAAI;;AAE/B,WAAO;EACX;;AAGJ,IAAM,6BAA6B,IAAI,cAAa;AAEpD,IAAI,aAAa;AAKjB,SAAS,mBAAgB;AACrB;AACA,SAAO;AACX;AAKA,SAAS,mBAAgB;AACrB,MAAI,eAAe,GAAG;AAClB;;AAEJ;AACA,MAAI,eAAe,GAAG;AAClB,+BAA2B,OAAM;;AAEzC;;;ACxCA,IAAI,YAAY;AAEhB,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAKtB,IAAO,mBAAP,MAAuB;EAEzB;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,wBAAgD,aAA2B;AAEnF,SAAK,gBAAgB,uBAAuB;AAC5C,SAAK,YAAY,uBAAuB;AACxC,SAAK,gBAAgB,uBAAuB;AAC5C,SAAK,aAAa,uBAAuB;AACzC,SAAK,SAAS,oBAAoB,uBAAuB,SAAS;AAElE,SAAK,aAAa,CAAA;AAClB,aAASC,KAAG,GAAG,MAAM,KAAK,cAAc,OAAO,SAAS,QAAQA,KAAI,KAAKA,MAAK;AAC1E,WAAK,WAAW,KAAK,IAAI,WAAU,CAAE;;AAGzC,SAAK,eAAe;AACpB,SAAK,YAAY,CAAA;AACjB,SAAK,UAAU,IAAI,kBAAiB;AACpC,SAAK,iBAAiB,iBAAgB;AACtC,SAAK,eAAe;AACpB,SAAK,SAAS;AACd,SAAK,QAAQ,cAAa;AAC1B,SAAK,YAAY;AAEjB,SAAK,cAAsC;MACvC,aAAa;MACb,cAAc;MACd,YAAY;MACZ,YAAY;MACZ,WAAW,CAAA;MACX,WAAW,CAAA;MACX,0BAA0B,WAAU;MACpC,2BAA2B,WAAU;MACrC,QAAQ,WAAW,uBAAuB,MAAM;MAChD,cAAc;;EAEtB;EAEA,IAAI,OAAI;AACJ,WAAO,GAAG,KAAK,SAAS;EAC5B;EAEA,IAAI,OAAI;AACJ,QAAI,KAAK,WAAW;AAChB,oBAAc,KAAK,KAAK;AACxB,eAASA,KAAI,GAAG,MAAM,KAAK,QAAQ,QAAQA,KAAI,KAAKA,MAAK;AACrD,oBAAY,KAAK,OAAO,KAAK,QAAQA,EAAC,EAAE,IAAI;;AAEhD,WAAK,YAAY;;AAErB,WAAO,KAAK;EAChB;EAEA,mBAAmB,eAA4B;AAC3C,QAAI,KAAK,QAAQ;AACb,YAAM,IAAI,SAAS,eAAe;;AAEtC,UAAM,cAAc,cAAc,oBAAoB;AACtD,UAAM,aAAa,cAAc,UAAU,cAAc,QAAQ,SAAS;AAC1E,WAAS,KAAK,QAAQ,UAAU,SAAS,cAAgB,KAAK,QAAQ,YAC9D,KAAK,QAAQ,QAAQ,SAAS,aAAe,KAAK,QAAQ;EACtE;EAEA,gBAAgB,iBAAkC,WAAoB;AAClE,QAAI,KAAK,QAAQ;AACb,YAAM,IAAI,SAAS,eAAe;;AAEtC,UAAM,WAAW,UAAU;AAC3B,UAAMC,SAAQ,UAAU;AACxB,UAAM,YAAY,gBAAgB;AAClC,UAAM,SAAS,KAAK;AACpB,UAAM,iBAAiB,OAAO,UAAU;AACxC,UAAM,aAAa,iBAAiB;AACpC,UAAM,UAAU,SAAS;AACzB,UAAM,cAAc,SAAS;AAC7B,UAAM,sBAAsB,SAAS;AACrC,UAAM,eAAe,SAAS;AAC9B,UAAM,eAAe,SAAS;AAC9B,UAAM,mBAAmB,SAAS;AAClC,UAAM,mBAAmB,oBAAoB,SAAS;AACtD,QAAI,gBAAgB,OAAO,UAAU,SAAS;AAC9C,QAAI,oBAAoB;AACxB,QAAI,CAAC,qBAAqB;AACtB,YAAM;;AAEV,QAAI,SAAS;AACT,eAASD,KAAI,GAAG,MAAM,QAAQ,QAAQA,KAAI,KAAKA,MAAK;AAChD,eAAO,QAAQ,KAAK,gBAAgB,QAAQA,EAAC,CAAC;;;AAGtD,QAAI,aAAa;AACb,eAASA,KAAI,GAAG,MAAM,YAAY,QAAQA,KAAI,KAAKA,MAAK;AACpD,eAAO,YAAY,KAAK,gBAAgB,YAAYA,EAAC,CAAC;;;AAG9D,aAAS,IAAI,GAAG,OAAO,oBAAoB,QAAQ,IAAI,MAAM,KAAK,GAAG;AACjE,MAAAH,WAAU,CAAC,IAAI,oBAAoB,CAAC;AACpC,MAAAA,WAAU,CAAC,IAAI,oBAAoB,IAAI,CAAC;AACxC,MAAAA,WAAU,CAAC,IAAI,oBAAoB,IAAI,CAAC;AACxC,gCAA0BA,YAAW,cAAcC,UAAS;AAC5D,UAAI,UAAU,WAAW;AACrB,QAAAA,WAAU,CAAC,IAAI;AACf,wBAAgB,UAAU,WAAWA,YAAWC,UAAS;AACzD,eAAO,UAAU,KAAKA,WAAU,CAAC,CAAC;AAClC,eAAO,UAAU,KAAKA,WAAU,CAAC,CAAC;AAClC,eAAO,UAAU,KAAKA,WAAU,CAAC,CAAC;aAC/B;AACH,eAAO,UAAU,KAAKD,WAAU,CAAC,CAAC;AAClC,eAAO,UAAU,KAAKA,WAAU,CAAC,CAAC;AAClC,eAAO,UAAU,KAAKA,WAAU,CAAC,CAAC;;;AAG1C,QAAI,kBAAkB;AAClB,eAASE,KAAI,GAAG,MAAM,iBAAiB,QAAQA,KAAI,KAAKA,MAAK;AACzD,eAAO,OAAO,KAAK,iBAAiBA,EAAC,CAAC;;;AAG9C,QAAI,gBAAgB,aAAa,SAAS,GAAG;AACzC,eAASA,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,eAAO,GAAG,KAAK,aAAaA,EAAC,CAAC;;;AAGtC,qBAAiB;AACjB,yBAAqB;AACrB,QAAIC,QAAO;AACP,YAAMC,KAAID,OAAM,CAAC,IAAI;AACrB,YAAM,IAAIA,OAAM,CAAC,IAAI;AACrB,YAAME,KAAIF,OAAM,CAAC,IAAI;AACrB,YAAMG,KAAI;AACV,eAASJ,KAAI,GAAGA,KAAI,mBAAmBA,MAAK;AACxC,eAAO,OAAO,KAAKE,EAAC;AACpB,eAAO,OAAO,KAAK,CAAC;AACpB,eAAO,OAAO,KAAKC,EAAC;AACpB,eAAO,OAAO,KAAKC,EAAC;;;AAG5B,aAASJ,KAAI,GAAG,MAAM,mBAAmBA,KAAI,KAAKA,MAAK,GAAG;AACtD,aAAO,WAAW,KAAK,GAAG,SAAS;;AAEvC,UAAM,iBAAiB,KAAK,UAAU,SAAS;AAC/C,SAAK,UAAU,KAAK,UAAU;AAC9B,SAAK,UAAU,KAAK,aAAa;AACjC,aAAS,YAAY,GAAG,MAAM,KAAK,WAAW,QAAQ,YAAY,KAAK,aAAa;AAChF,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,WAAO;EACX;;;;;EAMA,QAAK;AACD,QAAI,KAAK,QAAQ;AACb,YAAM,IAAI,SAAS,eAAe;;AAEtC,UAAM,cAAc,KAAK;AACzB,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,SAAS,KAAK;AACpB,UAAM,WAAW,KAAK,WAAW;AACjC,QAAI,OAAO,UAAU,SAAS,GAAG;AAC7B,YAAM,YAAY,IAAI,aAAa,OAAO,SAAS;AACnD,wBAAkB,WAAW,KAAK,OAAO,IAAI;AAC7C,YAAM,qBAAqB,mBAAmB,WAAW,KAAK,KAAK;AACnE,kBAAY,eAAe,IAAI,cAAc,IAAI,GAAG,cAAc,oBAAoB,OAAO,UAAU,QAAQ,GAAG,GAAG,WAAW;AAEhI,kBAAY,0BAA0B,IAAI,CAAC,KAAK,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC;AAEvF,kBAAY,yBAAyB,IAAI;SACpC,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK;SACjC,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK;SACjC,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK;OAAM;;AAEhD,QAAI,OAAO,OAAO,SAAS,GAAG;AAC1B,YAAM,SAAS,IAAI,WAAW,OAAO,MAAM;AAC3C,UAAI,aAAa;AACjB,eAAS,YAAY,GAAG,YAAY,UAAU,aAAa;AACvD,oBAAY,UAAU,SAAS,IAAI,IAAI,cAAc,IAAI,GAAG,cAAc,QAAQ,OAAO,OAAO,QAAQ,GAAG,GAAG,aAAa,UAAU;;;AAG7I,QAAI,OAAO,UAAU,SAAS,GAAG;AAC7B,YAAM,cAAc,OAAO,UAAU,SAAS;AAC9C,YAAM,QAAQ,IAAI,aAAa,WAAW;AAC1C,UAAI,gBAAgB;AACpB,eAAS,YAAY,GAAG,YAAY,UAAU,aAAa;AACvD,oBAAY,UAAU,SAAS,IAAI,IAAI,cAAc,IAAI,GAAG,cAAc,OAAO,MAAM,QAAQ,GAAG,GAAG,cAAc,aAAa;;;AAGxI,QAAI,OAAO,WAAW,SAAS,GAAG;AAC9B,YAAM,aAAa,IAAI,WAAW,OAAO,UAAU;AACnD,UAAI,aAAa;AACjB,kBAAY,gBAAgB,IAAI,cAAc,IAAI,GAAG,cAAc,YAAY,OAAO,WAAW,QAAQ,GAAG,GAAG,aAAa,UAAU;;AAE1I,QAAI,OAAO,QAAQ,SAAS,GAAG;AAC3B,YAAM,UAAU,IAAI,YAAY,OAAO,OAAO;AAC9C,kBAAY,aAAa,IAAI,cAAc,IAAI,GAAG,sBAAsB,SAAS,OAAO,QAAQ,QAAQ,GAAG,GAAG,WAAW;;AAE7H,QAAI,OAAO,YAAY,SAAS,GAAG;AAC/B,YAAM,cAAc,IAAI,YAAY,OAAO,WAAW;AACtD,kBAAY,iBAAiB,IAAI,cAAc,IAAI,GAAG,sBAAsB,aAAa,OAAO,YAAY,QAAQ,GAAG,GAAG,WAAW;;AAEzI,QAAI,OAAO,GAAG,SAAS,GAAG;AACtB,UAAI,CAAC,YAAY,gBAAgB;AAC7B,cAAM,SAAS,YAAY,OAAO,EAAE;AACpC,cAAM,SAAS,YAAY,OAAO,IAAI,OAAO,KAAK,OAAO,GAAG;AAC5D,cAAM,KAAK,OAAO;AAClB,YAAI,gBAAgB;AACpB,oBAAY,iBAAiB,WAAW,OAAO,gBAAgB;AAC/D,oBAAY,QAAQ,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,GAAG,QAAQ,GAAG,GAAG,aAAa,aAAa;aACvG;AACH,YAAI,gBAAgB;AACpB,oBAAY,QAAQ,IAAI,cAAc,IAAI,GAAG,cAAc,OAAO,IAAI,OAAO,GAAG,QAAQ,GAAG,GAAG,aAAa,aAAa;;;AAGhI,SAAK,YAAY,eACX,CAAC,CAAC,YAAY,wBACb,CAAC,CAAC,YAAY,SACd,CAAC,CAAC,YAAY,cACd,CAAC,CAAC,YAAY,cACd,CAAC,CAAC,YAAY,WAAW,gBACzB,CAAC,CAAC,YAAY,WAAW;AAChC,SAAK,YAAY,wBACX,CAAC,CAAC,YAAY,SACb,CAAC,CAAC,YAAY,cACd,CAAC,CAAC,YAAY,WAAW;AAChC,SAAK,UAAU;AACf,SAAK,SAAS;EAClB;EAEA,UAAU,WAAmB,gBAAwB,OAAe,iBAAwB;AACxF,UAAM,kBAAkB,KAAK,WAAW,SAAS;AACjD,UAAM,kBAAkB,KAAK,cAAc,WAAW,SAAS;AAC/D,QAAI,QAAQ,mBAAmB,SAAS;AACpC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,aAAa;AACxC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,UAAU;AACrC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,WAAW;AACtC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,UAAU;AACrC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,iBAAiB;AACjB,sBAAgB;AAChB,sBAAgB;;AAEpB,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,eAAe;EAC5E;EAEA,oBAAoB,WAAmB,gBAAwB,OAAe,aAAoB;AAC9F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,SAAS;AACpC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,wBAAwB,WAAmB,gBAAwB,OAAe,aAAoB;AAClG,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,aAAa;AACxC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,mBAAmB,WAAmB,gBAAwB,OAAe,aAAoB;AAC7F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,qBAAqB,WAAmB,gBAAwB,OAAe,aAAoB;AAC/F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,UAAU;AACrC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,sBAAsB,WAAmB,gBAAwB,OAAa;AAC1E,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,WAAW;AACtC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,KAAK;EAC3D;EAEA,mBAAmB,WAAmB,gBAAwB,OAAe,aAAoB;AAC7F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,uBAAuB,WAAmB,gBAAwB,OAAa;AAC3E,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;EAEA,qBAAqB,WAAmB,gBAAwB,OAAe,aAAoB;AAC/F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,QAAI,QAAQ,mBAAmB,UAAU;AACrC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,kBAAkB,WAAmB,gBAAwBC,QAAsB;AAC/E,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAElC,UAAM,cAAc,iBAAiB;AACrC,UAAM,aAAa,KAAK,UAAU,WAAW;AAC7C,UAAM,WAAW,KAAK,UAAU,cAAc,CAAC;AAC/C,UAAM,aAAa,aAAa;AAChC,UAAM,WAAW,WAAW;AAC5B,UAAM,YAAY,KAAK,eAAe,cAAc,QAAQ;AAC5D,UAAMC,KAAID,OAAM,CAAC;AACjB,UAAM,IAAIA,OAAM,CAAC;AACjB,UAAME,KAAIF,OAAM,CAAC;AACjB,aAASD,KAAI,GAAGA,KAAI,UAAUA,MAAK,GAAG;AAClC,gBAAUA,KAAI,CAAC,IAAIE;AACnB,gBAAUF,KAAI,CAAC,IAAI;AACnB,gBAAUA,KAAI,CAAC,IAAIG;;AAEvB,SAAK,YAAY,UAAU,SAAS,EAAE,QAAQ,WAAW,UAAU;EACvE;EAEA,wBAAwB,WAAmB,gBAAwB,OAAe,aAAoB;AAClG,QAAI,aAAa;AACb,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,kBAAkB,WAAmB,gBAAwB,OAAe,cAAuB,OAAK;AAEpG,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;AAGlC,UAAM,OAAO,KAAK,cAAc,OAAO,SAAS,SAAS;AAEzD,UAAM,cAAc,iBAAiB;AACrC,UAAM,aAAa,KAAK,UAAU,WAAW;AAC7C,UAAM,WAAW,KAAK,UAAU,cAAc,CAAC;AAC/C,UAAM,YAAY;AAClB,UAAM,WAAW,WAAW;AAC5B,UAAM,YAAY,KAAK,eAAe,gBAAgB,QAAQ;AAE9D,UAAM,UAAU,CAAC,EAAE,QAAQ,mBAAmB;AAC9C,UAAM,SAAS,CAAC,EAAE,QAAQ,mBAAmB;AAC7C,UAAM,cAAc,CAAC,EAAE,QAAQ,mBAAmB;AAClD,UAAM,WAAW,CAAC,EAAE,QAAQ,mBAAmB;AAC/C,UAAM,WAAW,CAAC,EAAE,QAAQ,mBAAmB;AAC/C,UAAM,SAAS,CAAC,EAAE,QAAQ,mBAAmB;AAE7C,QAAI;AACJ,QAAI,CAAC,WAAW,UAAU,UAClB,eAAe,CAAC,KAAK,kBAAkB,eACvC,YAAY,CAAC,KAAK,iBAAiB,aAAc;AACrD,kBAAY,cAAc;WACvB;AACH,UAAI,aAAa;AACb,oBAAY,cAAc;aACvB;AACH,oBAAY,cAAc;;;AAIlC,QAAI;AACJ,QAAI,CAAC,WAAW,QAAQ;AACpB,uBAAiB,cAAc;eACxB,UAAU;AACjB,uBAAiB,cAAc;eACxB,aAAa;AACpB,uBAAiB,cAAc;eACxB,QAAQ;AACf,uBAAiB,cAAc;WAC5B;AACH,uBAAiB,cAAc;;AAGnC,QAAI,WAAY,WAAW,CAAC,UAAU,WAAY,cAAc,OAAO,cAAc;AAErF,UAAM,gBAAgB,CAAC,EAAE,QAAQ,mBAAmB,aAAa,IAAI;AAErE,aAASH,KAAI,GAAGA,KAAI,UAAUA,MAAK;AAC/B,UAAI,WAAW;AACf,kBAAY;AACZ,kBAAY,kBAAkB;AAC9B,kBAAY,YAAY;AACxB,kBAAY,iBAAiB;AAC7B,gBAAUA,EAAC,IAAI;;AAGnB,SAAK,YAAY,UAAU,SAAS,EAAE,QAAQ,WAAW,SAAS;EACtE;EAEA,mBAAmB,gBAAwB,QAAuB;AAC9D,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;EAEA,mBAAmB,WAAmB,gBAAwB,QAAuB;AACjF,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;EAEA,kBAAe;AACX,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;AAEJ,QAAI,KAAK,aAAa,eAAe;AACjC,WAAK,aAAa,cAAc,uBAAuB,MAAM,cAAc,YAAY;;EAE/F;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAC9C,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;AAEJ,QAAI,KAAK,aAAa,eAAe;AACjC,WAAK,aAAa,cAAc,uBAAuB,MAAM,cAAc,iBAAiB;;EAEpG;EAEA,YAAS;AACL,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;EAKR;EAEA,cAAW;AACP,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;EAKR;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,cAAc,GAAG;AAC5C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,uBAAuB,MAAM,cAAc,iBAAiB;;EAEzG;EAEA,4BAAyB;AACrB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,uBAAuB,MAAM,cAAc,sBAAsB;;EAE9G;EAEA,yBAAsB;AAClB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,gBAAgB,GAAG;AAC9C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,uBAAuB,MAAM,cAAc,mBAAmB;;EAE3G;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,uBAAuB,MAAM,cAAc,YAAY;;EAEpG;EAEA,4BAAyB;AACrB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,uBAAuB,MAAM,cAAc,iBAAiB;;EAEzG;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,uBAAuB,MAAM,cAAc,sBAAsB;;EAEnH;EAEA,oBAAiB;AACb,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,gBAAgB,GAAG;AAC9C;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,uBAAuB,MAAM,cAAc,mBAAmB;;EAEhH;EAEA,kBAAe;AACX,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,cAAc,GAAG;AAC5C;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,uBAAuB,MAAM,cAAc,iBAAiB;;EAE9G;EAEA,gBAAa;AACT,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,mBAAmB;AACrC,WAAK,aAAa,kBAAkB,uBAAuB,MAAM,cAAc,YAAY;;EAEnG;EAEA,aAAU;AACN,UAAM,YAAY,KAAK,cAAc,KAAK;EAQ9C;EAEA,eAAY;AACR,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,kBAAkB;AACpC,WAAK,aAAa,iBAAiB,uBAAuB,MAAM,cAAc,IAAI;;EAE1F;EAEA,iBAAc;AACV,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,mBAAmB;AACrC,WAAK,aAAa,kBAAkB,uBAAuB,MAAM,cAAc,IAAI;;EAE3F;EAEA,eAAY;AACR,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aAAa,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC9H;;AAEJ,QAAI,KAAK,aAAa,kBAAkB;AACpC,WAAK,aAAa,iBAAiB,uBAAuB,MAAM,cAAc,IAAI;;EAE1F;EAEA,WAAQ;AACJ,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aAAa,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC9H;;AAEJ,QAAI,KAAK,aAAa,cAAc;AAChC,WAAK,aAAa,aAAa,uBAAuB,MAAM,cAAc,IAAI;;EAEtF;EAEA,kBAAe;EAOf;EAEA,UAAO;AACH,UAAM,cAAc,KAAK;AACzB,QAAI,YAAY,cAAc;AAC1B,kBAAY,aAAa,QAAO;AAChC,kBAAY,eAAe;;AAE/B,QAAI,YAAY,YAAY;AACxB,kBAAY,WAAW,QAAO;AAC9B,kBAAY,aAAa;;AAE7B,aAAS,YAAY,GAAG,MAAM,YAAY,UAAU,QAAQ,YAAY,KAAK,aAAa;AACtF,UAAI,YAAY,UAAU,SAAS,GAAG;AAClC,oBAAY,UAAU,SAAS,EAAE,QAAO;AACxC,oBAAY,UAAU,SAAS,IAAI;;;AAG3C,aAAS,YAAY,GAAG,MAAM,YAAY,UAAU,QAAQ,YAAY,KAAK,aAAa;AACtF,UAAI,YAAY,UAAU,SAAS,GAAG;AAClC,oBAAY,UAAU,SAAS,EAAE,QAAO;AACxC,oBAAY,UAAU,SAAS,IAAI;;;AAG3C,QAAI,YAAY,eAAe;AAC3B,kBAAY,cAAc,QAAO;AACjC,kBAAY,gBAAgB;;AAEhC,QAAI,YAAY,OAAO;AACnB,kBAAY,MAAM,QAAO;AACzB,kBAAY,QAAQ;;AAExB,QAAI,YAAY,YAAY;AACxB,kBAAY,WAAW,QAAO;AAC9B,kBAAY,aAAa;;AAE7B,QAAI,YAAY,gBAAgB;AAC5B,kBAAY,eAAe,QAAO;AAClC,kBAAY,iBAAiB;;AAGjC,qBAAgB;EACpB;EAEA,oBAAoB,WAAiB;EACrC;EAEA,UAAO;AACH,WAAO;EACX;;;;AC7xBJ,IAAM,eAAe,IAAI,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AAElD,SAAS,iBAAiB,UAAQ;AAC9B,QAAM,MAAM,CAAA;AACZ,MAAI;AACJ,MAAIK;AACJ,WAASC,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,WAAO,SAASA,EAAC;AACjB,IAAAD,KAAI,KAAK,QAAQ,GAAG;AACpB,QAAIA,KAAI,GAAG;AACP,UAAI,KAAK,OAAOA,KAAI,CAAC,MAAM,KAAK;AAC5B,eAAO,KAAK,UAAU,GAAGA,EAAC;;;AAGlC,QAAI,KAAK,IAAI;;AAEjB,SAAO,IAAI,KAAK,IAAI;AACxB;AAKM,IAAgB,cAAhB,MAA2B;EAE7B;EACA;EACA;EACA;EACA;EAEA;EAEA;EA2BA;EAcA,YAAY,eAA8B,MAA0B,EAAC,OAAO,MAAK,GAAC;AAC9E,SAAK,gBAAgB;AACrB,SAAK,eAAe;AACpB,SAAK,QAAQ,IAAI;AACjB,SAAK,MAAK;EACd;EAIA,IAAI,qBAAkB;AAClB,WAAO,KAAK,cAAc,KAAK,cAAa;EAChD;EAEA,IAAI,cAAW;AACX,WAAO,KAAK,cAAc,KAAK,qBAAoB;EACvD;EAEA,IAAI,aAAU;AACV,UAAM,iBAAiB,KAAK,cAAc,KAAK;AAC/C,WAAO,GAAG,eAAe,WAAW,IAAI,eAAe,iBAAiB;EAC5E;EAEA,cAAW;AACP,SAAK,eAAe;EACxB;EAEA,WAAQ;AACJ,QAAI,CAAC,KAAK,cAAc;AACpB,aAAO;;AAEX,SAAK,eAAe;AACpB,WAAO,KAAK,SAAS,KAAK,QAAO;EACrC;EAEA,QAAK;AAED,UAAM,OAAO,KAAK,cAAc;AAChC,UAAM,KAAK,KAAK,cAAc;AAE9B,UAAM,YAAY,CAAA;AAClB,SAAK,kBAAkB,SAAS;AAEhC,UAAM,cAAc,CAAA;AACpB,SAAK,oBAAoB,WAAW;AAEpC,SAAK,UAAU,IAAI,aAAa,IAAI;MAChC,QAAQ,iBAAiB,SAAS;MAClC,UAAU,iBAAiB,WAAW;KACzC;AAED,QAAI,KAAK,QAAQ,QAAQ;AACrB,WAAK,SAAS,KAAK,QAAQ;AAC3B;;AAGJ,UAAM,UAAU,KAAK;AAErB,SAAK,WAAW;MACZ,YAAY,QAAQ,YAAY,YAAY;MAC5C,aAAa,QAAQ,YAAY,aAAa;MAC9C,kBAAkB,QAAQ,YAAY,kBAAkB;MACxD,YAAY,QAAQ,YAAY,YAAY;MAC5C,YAAY,QAAQ,YAAY,YAAY;MAC5C,aAAa,QAAQ,YAAY,aAAa;MAC9C,2BAA2B,QAAQ,YAAY,2BAA2B;MAC1E,0BAA0B,QAAQ,YAAY,0BAA0B;MACxE,kBAAkB,QAAQ,YAAY,kBAAkB;MACxD,WAAW,QAAQ,YAAY,WAAW;MAC1C,gBAAgB,QAAQ,YAAY,gBAAgB;MACpD,iBAAiB,QAAQ,YAAY,iBAAiB;MACtD,0BAA0B,QAAQ,YAAY,0BAA0B;MACxE,WAAW,QAAQ,YAAY,WAAW;MAC1C,UAAU,QAAQ,YAAY,UAAU;MACxC,aAAa,QAAQ,YAAY,aAAa;MAC9C,mBAAmB,QAAQ,YAAY,mBAAmB;MAC1D,iBAAiB,QAAQ,YAAY,iBAAiB;MACtD,eAAe,CAAA;MACf,YAAY,CAAA;MACZ,UAAU,CAAA;MACV,UAAU,CAAA;MACV,kBAAkB,CAAA;MAClB,cAAc,QAAQ,YAAY,cAAc;;AAGpD,UAAM,SAAS,KAAK;AACpB,aAASC,KAAI,GAAG,MAAM,OAAO,QAAQA,KAAI,KAAKA,MAAK;AAC/C,YAAM,QAAQ,OAAOA,EAAC;AACtB,UAAI,iBAAiB,UAAU;AAC3B,aAAK,SAAS,WAAWA,EAAC,IAAI,QAAQ,YAAY,eAAeA,EAAC;AAClE,aAAK,SAAS,SAASA,EAAC,IAAI;AAC5B,aAAK,SAAS,SAASA,EAAC,IAAI,QAAQ,YAAY,aAAaA,EAAC;AAC9D;aACG;AACH,aAAK,SAAS,WAAWA,EAAC,IAAI,QAAQ,YAAY,eAAeA,EAAC;AAClE,aAAK,SAAS,SAASA,EAAC,IAAI,QAAQ,YAAY,aAAaA,EAAC;AAC9D,aAAK,SAAS,SAASA,EAAC,IAAI;AAC5B,aAAK,SAAS,iBAAiBA,EAAC,IAAI,QAAQ,YAAY,qBAAqBA,EAAC;;;AAItF,UAAM,WAAW,KAAK;AAEtB,aAASA,KAAI,GAAG,MAAM,KAAK,kBAAkB,QAAQA,KAAI,KAAKA,MAAK;AAC/D,eAAS,cAAc,KAAK;QACxB,QAAQ,QAAQ,YAAY,uBAAuBA,EAAC;QACpD,KAAK,QAAQ,YAAY,oBAAoBA,EAAC;QAC9C,KAAK,QAAQ,YAAY,oBAAoBA,EAAC;OACjD;;AAGL,SAAK,aAAa;MACd,UAAU,QAAQ,aAAa,UAAU;MACzC,QAAQ,QAAQ,aAAa,QAAQ;MACrC,OAAO,QAAQ,aAAa,OAAO;MACnC,IAAI,QAAQ,aAAa,IAAI;MAC7B,WAAW,QAAQ,aAAa,WAAW;MAC3C,OAAO,QAAQ,aAAa,OAAO;MACnC,WAAW,QAAQ,aAAa,WAAW;MAC3C,aAAa,QAAQ,aAAa,aAAa;;MAI/C,iBAAiB,QAAQ,aAAa,iBAAiB;MACvD,iBAAiB,QAAQ,aAAa,iBAAiB;MACvD,iBAAiB,QAAQ,aAAa,iBAAiB;;AAG3D,SAAK,OAAO,KAAK,QAAO;AAExB,SAAK,eAAe;EACxB;EAMA,aAAa,KAAa;AACtB,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,MAAM,KAAK,YAAY,IAAI,gBAAgB;EACxD;EAEA,iBAAiB,KAAa;AAC1B,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,yBAAyB;AAClC,QAAI,KAAK,EAAE;EACf;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,oDAAoD;AAC7D,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,2BAA2B;AACpC,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,wCAAwC;AACjD,QAAI,KAAK,mBAAmB;EAChC;EAEA,8BAA8B,KAAa;AACvC,QAAI,KAAK,sDAAsD;AAC/D,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,2BAA2B;AACpC,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,wCAAwC;AACjD,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,0BAA0B;EACvC;EAEA,0BAA0B,KAAa;AACnC,QAAI,KAAK,kDAAkD;AAC3D,QAAI,KAAK,oBAAoB;AAC7B,QAAI,KAAK,sBAAsB;AAE/B,QAAI,KAAK,iCAAiC;AAC1C,QAAI,KAAK,2BAA2B;AAEpC,QAAI,KAAK,mCAAmC;AAC5C,QAAI,KAAK,8BAA8B;AAEnC,QAAI,KAAK,kEAAkE;AAI/E,QAAI,KAAK,8BAA8B;AACvC,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,GAAG;EAChB;EAEA,kBAAkB,KAAa;AAC3B,QAAI,KAAK,cAAc,KAAK,6BAA4B,IAAK,GAAG;AAC5D,UAAI,KAAK,0CAA0C;AACnD,UAAI,KAAK,0BAA0B;AACnC,UAAI,KAAK,yBAAyB;;EAE1C;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,sCAAsC;AAC/C,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,gBAAgB;EAC7B;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,oDAAoD;AAC7D,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,gBAAgB;EAC7B;EAEA,oBAAoB,KAAa;AAC7B,QAAI,KAAK,mBAAmB;EAChC;EAEA,mBAAmB,KAAa;AAC5B,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,6CAA6C;AACtD,QAAI,KAAK,qCAAqC;AAC9C,QAAI,KAAK,mDAAmD;EAChE;EAEA,0BAA0B,KAAa;AACnC,QAAI,KAAK,SAAS;AAClB,QAAI,KAAK,GAAG;EAChB;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,SAAS;AAClB,QAAI,KAAK,GAAG;EAChB;EAEA,mBAAmB,KAAa;AAC5B,QAAI,KAAK,cAAc,KAAK,6BAA4B,IAAK,GAAG;AAC5D,UAAI,KAAK,iDAAiD;AAC1D,UAAI,KAAK,uCAAuC;AAChD,UAAI,KAAK,mDAAmD;;EAEpE;EAEA,iCAAiC,KAAa;AAC1C,QAAI,KAAK,mEAAmE;AAC5E,QAAI,KAAK,iHAAiH;AAC1H,QAAI,KAAK,6DAA6D;AACtE,QAAI,KAAK,oDAAoD;EACjE;EAEA,iCAAiC,KAAa;AAC1C,QAAI,KAAK,mEAAmE;AAC5E,QAAI,KAAK,iHAAiH;AAC1H,QAAI,KAAK,6DAA6D;AACtE,QAAI,KAAK,kEAAkE;EAC/E;EAEA,mCAAmC,KAAa;AAC5C,QAAI,KAAK,qEAAqE;AAC9E,QAAI,KAAK,iHAAiH;AAC1H,QAAI,KAAK,wKAAwK;AACjL,QAAI,KAAK,oDAAoD;EACjE;EAEA,mCAAmC,KAAa;AAC5C,QAAI,KAAK,qEAAqE;AAC9E,QAAI,KAAK,iHAAiH;AAC1H,QAAI,KAAK,wKAAwK;AACjL,QAAI,KAAK,kEAAkE;EAC/E;EAEA,sBAAsB,KAAa;AAC/B,QAAI,KAAK,wDAAwD;AACjE,QAAI,KAAK,2BAA2B;AACpC,QAAI,KAAK,4BAA4B;AACrC,QAAI,KAAK,mCAAmC;EAChD;EAEA,uBAAuB,KAAa;AAChC,QAAI,KAAK,yDAAyD;AAClE,QAAI,KAAK,uGAAuG;AAChH,QAAI,KAAK,yCAAyC;EACtD;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,2DAA2D;AACpE,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,4BAA4B;EACzC;EAEA,0BAA0B,KAAa;AACnC,QAAI,KAAK,4DAA4D;AACrE,QAAI,KAAK,wFAAwF;EACrG;EAEA,wBAAwB,KAAa;AACjC,QAAI,KAAK,0DAA0D;AACnE,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,4BAA4B;EACzC;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,2DAA2D;AACpE,QAAI,KAAK,uGAAuG;EACpH;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,2DAA2D;AACpE,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,4BAA4B;EACzC;EAEA,0BAA0B,KAAa;AACnC,QAAI,KAAK,4DAA4D;AACrE,QAAI,KAAK,yHAAyH;EACtI;EAEA,8BAA8B,KAAa;AACvC,QAAI,KAAK,gEAAgE;AACzE,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,4BAA4B;EACzC;EAEA,+BAA+B,KAAa;AACxC,QAAI,KAAK,iEAAiE;AAC1E,QAAI,KAAK,wFAAwF;EACrG;EAEA,2BAA2B,KAAa;AACpC,QAAI,KAAK,6DAA6D;AACtE,QAAI,KAAK,8IAA8I;EAC3J;EAEA,eAAe,KAAa;AACxB,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,MAAM,KAAK,YAAY,IAAI,kBAAkB;EAC1D;EAEA,sBAAsB,KAAa;AAC/B,QAAI,KAAK,8CAA8C;AACvD,QAAI,KAAK,mCAAmC;AAC5C,QAAI,KAAK,wBAAwB;AACjC,QAAI,KAAK,sBAAsB;AAC/B,QAAI,KAAK,OAAO;AAChB,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,wBAAwB;AACjC,QAAI,KAAK,QAAQ;EACrB;EAEA,wBAAwB,KAAa;AACjC,QAAI,KAAK,gDAAgD;AACzD,UAAM,OAAO,KAAK,cAAc;AAChC,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,oBAAoB;AAC7B,QAAI,KAAK,wBAAwB;AACjC,QAAI,KAAK,4BAA4B;AACrC,QAAI,KAAK,0BAA0B;AACnC,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,UAAI,iBAAiB,cAAc;AAC/B;;AAEJ,UAAI,KAAK,0BAA0BA,EAAC,GAAG;AACvC,UAAI,iBAAiB,UAAU;AAC3B,YAAI,KAAK,wBAAwBA,EAAC,GAAG;;AAEzC,UAAI,iBAAiB,YAAY;AAC7B,YAAI,KAAK,wBAAwBA,EAAC,GAAG;;;EAGjD;EAEA,yBAAyB,KAAa;AAClC,QAAI,KAAK,iDAAiD;AAC1D,UAAM,OAAO,KAAK,cAAc;AAChC,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,2CAA2C;AACpD,QAAI,KAAK,yBAAyB;AAClC,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,6DAA6D;AACtE,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,UAAI,iBAAiB,cAAc;AAC/B;;AAEJ,UAAI,iBAAiB,UAAU;AAC3B,YAAI,MAAM,UAAU,QAAQ;AACxB,cAAI,KAAK,oCAAoCA,EAAC,IAAI;eAC/C;AACH,cAAI,KAAK,uDAAuDA,EAAC,eAAe;;iBAE7E,iBAAiB,YAAY;AACpC,YAAI,MAAM,UAAU,QAAQ;AACxB,cAAI,KAAK,qCAAqCA,EAAC,uBAAuB;eACnE;AACH,cAAI,KAAK,wDAAwDA,EAAC,eAAe;;aAElF;AACH;;AAEJ,UAAI,KAAK,wDAAwD;AACjE,UAAI,KAAK,6CAA6CA,EAAC,oBAAoBA,EAAC,MAAM;;AAEtF,QAAI,KAAK,8GAA8G;EAC3H;EAEA,2BAA2B,KAAa;AACpC,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,oBAAoB;EACjC;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,oDAAoD;AAC7D,QAAI,KAAK,oBAAoB;EACjC;EAEA,0BAA0B,KAAa;AACnC,QAAI,KAAK,kDAAkD;AAC3D,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,oBAAoB;EACjC;EAEA,2BAA2B,KAAa;AACpC,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,oBAAoB;EACjC;EAEA,2BAA2B,KAAa;AACpC,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,oBAAoB;EACjC;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,oDAAoD;AAC7D,QAAI,KAAK,oBAAoB;EACjC;EAEA,gCAAgC,KAAa;AACzC,QAAI,KAAK,wDAAwD;AACjE,QAAI,KAAK,iBAAiB;AAC1B,QAAI,KAAK,oBAAoB;EACjC;EAEA,iCAAiC,KAAa;AAC1C,QAAI,KAAK,yDAAyD;AAClE,QAAI,KAAK,oBAAoB;EACjC;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,mDAAmD;AAC5D,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,oBAAoB;EACjC;EAEA,6BAA6B,KAAa;AACtC,QAAI,KAAK,oDAAoD;AAC7D,QAAI,KAAK,wBAAwB;EACrC;EAEA,oBAAoB,KAAa;AAC7B,UAAM,mBAAmB,KAAK,cAAc,KAAK,6BAA4B;AAC7E,QAAI,qBAAqB,GAAG;AACxB;;AAEJ,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,yBAAyB;AAClC,QAAI,KAAK,wBAAwB;AACjC,aAASA,KAAI,GAAGA,KAAI,kBAAkBA,MAAK;AACvC,UAAI,KAAK,oCAAoCA,KAAI,GAAG;AACpD,UAAI,KAAK,iCAAiCA,KAAI,GAAG;AACjD,UAAI,KAAK,iCAAiCA,KAAI,GAAG;;EAEzD;EAEA,qBAAqB,KAAa;AAC9B,UAAM,mBAAmB,KAAK,cAAc,KAAK,6BAA4B;AAC7E,QAAI,qBAAqB,GAAG;AACxB;;AAEJ,QAAI,KAAK,6CAA6C;AACtD,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,uBAAuB;AAChC,aAASA,KAAI,GAAGA,KAAI,kBAAkBA,MAAK;AACvC,UAAI,KAAK,+BAA+BA,KAAI,KAAK;AACjD,UAAI,KAAK,6CAA6CA,KAAI,+CAA+CA,KAAI,sBAAsB;AACnI,UAAI,KAAK,OAAO;;AAEpB,QAAI,KAAK,kCAAkC;AAC3C,QAAI,KAAK,KAAK;EAClB;EAEA,2BAA2B,KAAa;AACpC,QAAI,KAAK,gBAAgB;AACzB,QAAI,KAAK,kBAAkB;EAC/B;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,6FAA6F;EAC1G;EAEA,yBAAyB,KAAa;AAClC,UAAM,iBAAiB,KAAK,cAAc,KAAK;AAC/C,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,gCAAgC;;AAE7C,QAAI,eAAe,iBAAiB;AAChC,UAAI,KAAK,8BAA8B;;EAE/C;EAEA,iCAAiC,KAAa;AAC1C,UAAM,iBAAiB,KAAK,cAAc,KAAK;AAC/C,QAAI,eAAe,iBAAiB;AAChC,UAAI,KAAK,2CAA2C;AACpD,UAAI,KAAK,uEAAuE;AAChF,UAAI,KAAK,4CAA4C;AACrD,UAAI,KAAK,UAAU;;EAE3B;EAEA,kCAAkC,KAAa;AAC3C,QAAI,KAAK,GAAG;EAChB;EAEA,0BAA0B,KAAa;AACnC,UAAM,iBAAiB,KAAK,cAAc,KAAK;AAC/C,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,2DAA2D;AACpE,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;AAC1G,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;WACvG;AACH,UAAI,KAAK,2BAA2B;;EAE5C;EAEA,4BAA4B,KAAa;AACrC,QAAI,KAAK,cAAc,KAAK,eAAe,aAAa;AACpD,UAAI,KAAK,yCAAyC;AAClD,UAAI,KAAK,4BAA4B;AACrC,UAAI,KAAK,kBAAkB;AAC3B,UAAI,KAAK,iBAAiB;AAC1B,UAAI,KAAK,KAAK;;EAEtB;EAEA,KAAK,YAAkB;AACnB,UAAM,OAAO,KAAK,cAAc;AAChC,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,WAAW,KAAK;AACtB,SAAK,cAAc,cAAc;AACjC,QAAI,KAAK,WAAW,CAAC,KAAK,SAAQ,GAAI;AAClC,WAAK,QAAQ,QAAO;AACpB,WAAK,UAAU;;AAEnB,QAAI,CAAC,KAAK,SAAS;AACf,WAAK,MAAK;AACV,UAAI,KAAK,QAAQ;AACb,eAAO;;AAEX,WAAK,cAAc,gBAAgB;;AAEvC,QAAI,CAAC,KAAK,SAAS;AACf,aAAO;;AAEX,QAAI,KAAK,cAAc,kBAAkB,KAAK,QAAQ,IAAI;AACtD,aAAO;;AAEX,SAAK,QAAQ,KAAI;AACjB,SAAK,cAAc,gBAAgB,KAAK,QAAQ;AAChD,OAAG,UAAU,SAAS,YAAY,UAAU;AAC5C,QAAI,SAAS,YAAY;AACrB,SAAG,iBAAiB,SAAS,YAAY,OAEhC,eAAe,cAAc,OAC5B,KAAK,cAAc,iBACnB,KAAK,OAAO,UAAW;;AAErC,QAAI,SAAS,WAAW;AACpB,SAAG,UAAU,SAAS,WAAW,KAAK,eAAe,SAAS;;AAElE,QAAI,SAAS,iBAAiB;AAC1B,SAAG,UAAU,SAAS,iBAAkB,KAAK,OAAO,mBAAmB,sBAAuB,IAAO,GAAG,uBAAuB,IAAI,KAAK,IAAI,MAAM,KAAK,OAAO,sBAAsB,MAAM,KAAK,KAAK,GAAK,EAAG;;AAEhN,QAAI,SAAS,WAAW;AACpB,SAAG,UAAU,SAAS,WAAW,KAAK,cAAc,SAAS;AAC7D,SAAG,UAAU,SAAS,UAAU,KAAK,cAAc,QAAQ;;AAE/D,QAAI,SAAS,mBAAmB;AAC5B,SAAG,UAAU,SAAS,mBAAmB,GAAG,oBAAoB,GAAG,mBAAmB;;AAE1F,QAAI,SAAS,aAAa;AACtB,SAAG,WAAW,SAAS,aAA2B,KAAK,cAAc,WAAW;;AAEpF,QAAI,SAAS,cAAc;AACvB,SAAG,WAAW,SAAS,cAA4B,KAAK,4BAA2B,CAAE;;AAEzF,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,UAAI,KAAK,SAAS,WAAWA,EAAC,GAAG;AAC7B,WAAG,UAAU,KAAK,SAAS,WAAWA,EAAC,GAAG,MAAM,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,MAAM,SAAS;;AAE7G,UAAI,KAAK,SAAS,SAASA,EAAC,GAAG;AAC3B,cAAM,aAAyB;AAC/B,WAAG,WAAW,KAAK,SAAS,SAASA,EAAC,GAAiB,WAAW,GAAG;;AAEzE,UAAI,KAAK,SAAS,SAASA,EAAC,GAAG;AAC3B,cAAM,WAAqB;AAC3B,WAAG,WAAW,KAAK,SAAS,SAASA,EAAC,GAAiB,SAAS,GAAG;;;AAG3E,QAAI,KAAK,SAAS,iBAAiB;AAC/B,UAAI,KAAK,OAAO;AACZ,YAAI,eAAe,cAAc,mBAAmB;AAChD,gBAAM,WAAW,KAAK;AACtB,gBAAMC,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;mBACrF,eAAe,cAAc,wBAAwB;AAC5D,gBAAM,WAAW,KAAK;AACtB,gBAAMA,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;mBACrF,eAAe,cAAc,qBAAqB;AACzD,gBAAM,WAAW,KAAK;AACtB,gBAAMA,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;eACzF;AACH,aAAG,WAAW,KAAK,SAAS,iBAAiB,YAAY;;aAE1D;AACH,YAAI,eAAe,cAAc,mBAAmB;AAChD,gBAAM,WAAW,KAAK;AACtB,gBAAMA,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;mBACrF,eAAe,cAAc,wBAAwB;AAC5D,gBAAM,WAAW,KAAK;AACtB,gBAAMA,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;mBACrF,eAAe,cAAc,qBAAqB;AACzD,gBAAM,WAAW,KAAK;AACtB,gBAAMA,SAAQ,SAAS;AACvB,aAAG,UAAU,KAAK,SAAS,iBAAiBA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAGA,OAAM,CAAC,GAAG,SAAS,SAAS;eACzF;AACH,aAAG,WAAW,KAAK,SAAS,iBAAiB,YAAY;;;;AAIrE,WAAO;EACX;EAEA,yBAAyB,oBAAwC,YAAkB;EAEnF;EAEA,uBAAuB,oBAAsC,YAAkB;EAE/E;EAEA,UAAO;AACH,QAAI,KAAK,SAAS;AACd,WAAK,QAAQ,QAAO;;AAExB,SAAK,UAAU;EACnB;;;;ACjuBE,IAAgB,sBAAhB,cAA4C,YAAW;EAEzD,uBAAuB,kBAAoC,YAAkB;AACzE,QAAI,CAAC,KAAK,KAAK,UAAU,GAAG;AACxB;;AAEJ,UAAM,aAAa,KAAK;AACxB,UAAM,cAAc,iBAAiB;AACrC,UAAM,OAAO,KAAK,cAAc;AAChC,UAAM,YAAY,KAAK;AACvB,UAAM,KAAK,KAAK,cAAc;AAC9B,eAAW,SAAS,gBAAgB,YAAY,YAAY;AAC5D,QAAI,WAAW,OAAO;AAClB,iBAAW,MAAM,gBAAgB,YAAY,UAAU,SAAS,CAAC;;AAErE,QAAI,WAAW,OAAO;AAClB,iBAAW,MAAM,gBAAgB,YAAY,UAAU,SAAS,CAAC;;AAErE,QAAI,WAAW,WAAW;AACtB,iBAAW,UAAU,gBAAgB,YAAY,aAAa;;AAElE,QAAI,WAAW,WAAW;;AAG1B,QAAI,WAAW,IAAI;AACf,iBAAW,GAAG,gBAAgB,YAAY,KAAK;;AAEnD,OAAG,UAAU,KAAK,SAAS,YAAY,UAAU;AACjD,OAAG,WAAW,KAAK,SAAS,2BAAqD,YAAY,yBAAyB;AACtH,OAAG,WAAW,KAAK,SAAS,0BAAoD,YAAY,wBAAwB;AACpH,OAAG,iBAAiB,KAAK,SAAS,aAAa,OAAiC,iBAAiB,cAAc,WAAW;AAC1H,OAAG,iBAAiB,KAAK,SAAS,YAAY,OAChB,iBACtB,eAAe,cAAc,OACvB,KAAK,cAAc,iBACnB,KAAK,cAAc,KAAK,OAAO,YACrC,YAAY,MAAM,CAAC;AAC3B,QAAI,YAAY,YAAY;AACxB,kBAAY,WAAW,KAAI;;AAE/B,SAAK,+BAA+B,kBAAkB,UAAU;EACpE;;;;AC5CE,IAAO,gCAAP,cAA6C,oBAAmB;EAElE,UAAO;AACH,UAAM,OAAO,KAAK,cAAc;AAChC,UAAM,iBAAiB,KAAK;AAC5B,WAAO,GAAG,eAAe,iBAAiB,IAAI,eAAe,eAAe,IAAI,eAAe,WAAW,IAAI,KAAK,qBAAoB,CAAE;EAC7I;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,2BAA2B,GAAG;AACnC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,iCAAiC,GAAG;AACzC;AACI,aAAK,iCAAiC,GAAG;AACzC,aAAK,mBAAmB,GAAG;AAC3B,aAAK,4BAA4B,GAAG;AACpC,aAAK,0BAA0B,GAAG;;AAEtC,WAAK,kCAAkC,GAAG;;AAE9C,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,0BAA0B,GAAG;AAClC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,4BAA4B,GAAG;AACpC,SAAK,qBAAqB,GAAG;AAC7B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,OAAG,WAAW,GAAG,QAAQ,GAAG,iBAAiB,YAAY,aAAa,QAAQ;EAClF;;;;AC1CE,IAAO,oCAAP,cAAiD,oBAAmB;EAEtE,UAAO;AACH,WAAO;EACX;EAEA,kBAAkB,KAAa;AAC3B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,OAAO,cAAc;AAC3B,UAAM,WAAW,KAAK,6BAA4B,IAAK;AACvD,UAAM,iBAAiB,KAAK;AAC5B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,kBAAkB,GAAG;AAC1B,QAAI,KAAK,oBAAoB;AAC7B,QAAI,KAAK,0BAA0B;AACnC,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,gCAAgC;;AAO7C,QAAI,KAAK,sBAAsB;AAC/B,QAAI,KAAK,mBAAmB;AAG5B,QAAI,KAAK,wCAAwC;AACjD,QAAI,KAAK,+BAA+B;AACxC,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,YAAY;AACrB,QAAI,KAAK,0FAA0F;AACnG,QAAI,KAAK,yDAAyD;AAClE,QAAI,KAAK,0IAA0I;AACnJ,QAAI,UAAU;AACV,UAAI,KAAK,uCAAuC;AAChD,UAAI,KAAK,uBAAuB;;AAEpC,QAAI,KAAK,2CAA2C;AAIpD,QAAI,KAAK,wBAAwB;AACjC,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,2DAA2D;AACpE,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;AAC1G,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;WACvG;AACH,UAAI,KAAK,2BAA2B;;AAExC,QAAI,KAAK,uBAAuB;AAChC,QAAI,KAAK,KAAK;AACd,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,OAAO,cAAc;AAC3B,UAAM,WAAW,KAAK,6BAA4B,IAAK;AACvD,QAAI,KAAK;;;;;;;;eAQF;AAKP,QAAI,UAAU;AACV,UAAI,KAAK,yBAAyB;AAClC,UAAI,KAAK,kBAAkB;AAC3B,eAASC,KAAI,GAAGA,KAAI,KAAK,6BAA4B,GAAIA,MAAK;AAC1D,YAAI,KAAK,oCAAoCA,KAAI,GAAG;AACpD,YAAI,KAAK,iCAAiCA,KAAI,GAAG;AACjD,YAAI,KAAK,iCAAiCA,KAAI,GAAG;;;AAGzD,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,oBAAoB;AAC7B,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,eAAe,aAAa;AACjC,UAAI,KAAK,yCAAyC;AAClD,UAAI,KAAK,4BAA4B;AACrC,UAAI,KAAK,kBAAkB;AAC3B,UAAI,KAAK,iBAAiB;AAC1B,UAAI,KAAK,KAAK;;AAElB,QAAI,UAAU;AACV,UAAI,KAAK,oDAAoD;AAC7D,UAAI,KAAK,oBAAoB;AAC7B,UAAI,KAAK,yBAAyB;AAClC,eAASA,KAAI,GAAGA,KAAI,KAAK,6BAA4B,GAAIA,MAAK;AAC1D,YAAI,KAAK,iCAAiCA,KAAI,KAAK;AACnD,YAAI,KAAK,iDAAiDA,KAAI,+CAA+CA,KAAI,sBAAsB;AACvI,YAAI,KAAK,SAAS;;AAEtB,UAAI,KAAK,oCAAoC;AAC7C,UAAI,KAAK,KAAK;;AAKlB,QAAI,KAAK,4BAA4B;AACrC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;EAoBrF;;;;AClIE,IAAO,sCAAP,cAAmD,oBAAmB;EAExE,UAAO;AACH,WAAO;EACX;EAEA,kBAAkB,KAAa;AAC3B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,OAAO,cAAc;AAC3B,UAAM,WAAW,KAAK,6BAA4B,IAAK;AACvD,UAAM,iBAAiB,KAAK;AAC5B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,kBAAkB,GAAG;AAC1B,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,0BAA0B;AACnC,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,gCAAgC;;AAG7C,QAAI,KAAK,mBAAmB;AAG5B,QAAI,KAAK,6CAA6C;AACtD,QAAI,KAAK,qCAAqC;AAC9C,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,UAAU;AACnB,QAAI,KAAK,oFAAoF;AAC7F,QAAI,KAAK,mDAAmD;AAC5D,QAAI,UAAU;AACV,UAAI,KAAK,iCAAiC;AAC1C,UAAI,KAAK,iBAAiB;;AAE9B,QAAI,KAAK,2CAA2C;AAIpD,QAAI,KAAK,wBAAwB;AACjC,QAAI,eAAe,mBAAmB;AAClC,UAAI,KAAK,2DAA2D;AACpE,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;AAC1G,UAAI,KAAK,sCAAsC,KAAK,MAAM,eAAe,uBAAuB,IAAI,MAAM;WACvG;AACH,UAAI,KAAK,2BAA2B;;AAExC,QAAI,KAAK,GAAG;AACZ,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,OAAO,cAAc;AAC3B,UAAM,WAAW,KAAK,6BAA4B,IAAK;AACvD,SAAK,eAAe,GAAG;AACvB,QAAI,KAAK,mCAAmC;AAC5C,QAAI,KAAK,wBAAwB;AACjC,QAAI,KAAK,sBAAsB;AAC/B,QAAI,KAAK,OAAO;AAChB,QAAI,KAAK,0BAA0B;AACnC,QAAI,KAAK,wBAAwB;AACjC,QAAI,KAAK,QAAQ;AACjB,QAAI,UAAU;AACV,UAAI,KAAK,yBAAyB;AAClC,UAAI,KAAK,kBAAkB;AAC3B,eAASC,KAAI,GAAG,MAAM,KAAK,6BAA4B,GAAIA,KAAI,KAAKA,MAAK;AACrE,YAAI,KAAK,oCAAoCA,KAAI,GAAG;AACpD,YAAI,KAAK,iCAAiCA,KAAI,GAAG;AACjD,YAAI,KAAK,iCAAiCA,KAAI,GAAG;;;AAGzD,QAAI,KAAK,qBAAqB;AAC9B,QAAI,KAAK,oBAAoB;AAC7B,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,eAAe,aAAa;AACjC,UAAI,KAAK,yCAAyC;AAClD,UAAI,KAAK,4BAA4B;AACrC,UAAI,KAAK,kBAAkB;AAC3B,UAAI,KAAK,iBAAiB;AAC1B,UAAI,KAAK,KAAK;;AAElB,SAAK,qBAAqB,GAAG;AAC7B,QAAI,KAAK,mBAAmB;AAC5B,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;EAgCrF;;;;ACrHE,IAAO,iBAAP,MAAqB;EAEvB;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,eAA4B;AACpC,SAAK,gBAAgB,cAAc;AACnC,SAAK,cAAc,cAAc;EACrC;EAEA,WAAQ;AACJ,QAAI,KAAK,kBAAmB,CAAC,KAAK,eAAe,SAAQ,GAAK;AAC1D,WAAK,eAAe,QAAO;AAC3B,WAAK,iBAAiB;;AAE1B,QAAI,KAAK,uBAAwB,CAAC,KAAK,oBAAoB,SAAQ,GAAK;AACpE,WAAK,oBAAoB,QAAO;AAChC,WAAK,sBAAsB;;AAE/B,QAAI,KAAK,uBAAwB,CAAC,KAAK,oBAAoB,SAAQ,GAAK;AACpE,WAAK,oBAAoB,QAAO;AAChC,WAAK,sBAAsB;;AAE/B,QAAI,KAAK,qBAAsB,CAAC,KAAK,kBAAkB,SAAQ,GAAK;AAChE,WAAK,kBAAkB,QAAO;AAC9B,WAAK,oBAAoB;;AAE7B,QAAI,KAAK,sBAAuB,CAAC,KAAK,mBAAmB,SAAQ,GAAK;AAClE,WAAK,mBAAmB,QAAO;AAC/B,WAAK,qBAAqB;;AAE9B,QAAI,KAAK,sBAAsB,KAAK,mBAAmB,SAAQ,MAAO,OAAO;AACzE,WAAK,mBAAmB,QAAO;AAC/B,WAAK,qBAAqB;;AAE9B,QAAI,KAAK,qBAAsB,CAAC,KAAK,kBAAkB,SAAQ,GAAK;AAChE,WAAK,kBAAkB,QAAO;AAC9B,WAAK,oBAAoB;;AAE7B,QAAI,KAAK,iBAAkB,CAAC,KAAK,cAAc,SAAQ,GAAK;AACxD,WAAK,cAAc,QAAO;AAC1B,WAAK,gBAAgB;;EAE7B;EAEA,eAAY;EAEZ;EAEA,IAAI,gBAAa;AACb,QAAI,CAAC,KAAK,gBAAgB;AACtB,WAAK,iBAAiB,KAAK,mBAAkB;;AAEjD,WAAO,KAAK;EAChB;EAEA,IAAI,qBAAkB;AAClB,QAAI,CAAC,KAAK,qBAAqB;AAC3B,WAAK,sBAAsB,KAAK,yBAAwB;;AAE5D,WAAO,KAAK;EAChB;EAEA,IAAI,qBAAkB;AAClB,QAAI,CAAC,KAAK,qBAAqB;AAC3B,WAAK,sBAAsB,KAAK,yBAAwB;;AAE5D,WAAO,KAAK;EAChB;EAEA,IAAI,0BAAuB;AACvB,QAAI,CAAC,KAAK,0BAA0B;AAChC,WAAK,2BAA2B,KAAK,8BAA6B;;AAEtE,WAAO,KAAK;EAChB;EAEA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAqB,KAAK,uBAAsB;;AAEzD,WAAO,KAAK;EAChB;EAEA,IAAI,oBAAiB;AACjB,QAAI,CAAC,KAAK,oBAAoB;AAC1B,WAAK,qBAAqB,KAAK,wBAAuB;;AAE1D,WAAO,KAAK;EAChB;EAEA,IAAI,oBAAiB;AACjB,QAAI,CAAC,KAAK,oBAAoB;AAC1B,WAAK,qBAAqB,KAAK,wBAAuB;;AAE1D,WAAO,KAAK;EAChB;EAEA,IAAI,mBAAgB;AAChB,QAAI,CAAC,KAAK,mBAAmB;AACzB,WAAK,oBAAoB,KAAK,uBAAsB;;AAExD,WAAO,KAAK;EAChB;EAEA,IAAI,eAAY;AACZ,QAAI,CAAC,KAAK,eAAe;AACrB,WAAK,oBAAoB,KAAK,mBAAkB;;AAEpD,WAAO,KAAK;EAChB;EAEU,qBAAkB;AACxB,WAAO;EACX;EAEU,2BAAwB;AAC9B,WAAO;EACX;EAEU,2BAAwB;AAC9B,WAAO;EACX;EAEU,gCAA6B;AACnC,WAAO;EACX;EAEU,yBAAsB;AAC5B,WAAO;EACX;EAEU,0BAAuB;AAC7B,WAAO;EACX;EAEU,0BAAuB;AAC7B,WAAO;EACX;EAEU,yBAAsB;AAC5B,WAAO;EACX;EAEU,qBAAkB;AACxB,WAAO;EACX;EAEA,WAAQ;AACJ,QAAI,KAAK,gBAAgB;AACrB,WAAK,eAAe,QAAO;;AAE/B,QAAI,KAAK,qBAAqB;AAC1B,WAAK,oBAAoB,QAAO;;AAEpC,QAAI,KAAK,qBAAqB;AAC1B,WAAK,oBAAoB,QAAO;;AAEpC,QAAI,KAAK,0BAA0B;AAC/B,WAAK,yBAAyB,QAAO;;AAEzC,QAAI,KAAK,mBAAmB;AACxB,WAAK,kBAAkB,QAAO;;AAElC,QAAI,KAAK,oBAAoB;AACzB,WAAK,mBAAmB,QAAO;;AAEnC,QAAI,KAAK,oBAAoB;AACzB,WAAK,mBAAmB,QAAO;;AAEnC,QAAI,KAAK,mBAAmB;AACxB,WAAK,kBAAkB,QAAO;;AAElC,QAAI,KAAK,eAAe;AACpB,WAAK,cAAc,QAAO;;EAElC;;AAME,IAAO,qBAAP,MAAyB;EAE3B;EAEA;EAEA,YAAY,mBAAkD;AAC1D,SAAK,gBAAgB,CAAA;AACrB,SAAK,qBAAqB;EAC9B;EAEA,aAAa,eAA4B;AACrC,UAAM,WAAW,cAAc,OAAO;AACtC,QAAI,cAAc,KAAK,cAAc,QAAQ;AAC7C,QAAI,CAAC,aAAa;AACd,oBAAc,KAAK,mBAAmB,aAAa;AACnD,WAAK,cAAc,QAAQ,IAAI;AAC/B,kBAAY,SAAQ;AACpB,kBAAY,aAAY;AACxB,oBAAc,WAAW,IAAI,MAAK;AAC9B,oBAAY,SAAQ;AACpB,oBAAY,aAAY;MAC5B,CAAC;AACD,oBAAc,YAAY,IAAI,MAAK;AAC/B,eAAO,KAAK,cAAc,QAAQ;AAClC,oBAAY,SAAQ;MACxB,CAAC;;AAEL,WAAO;EACX;;;;AC3NH,IAAM,kBAAN,cAA8B,eAAc;EAEzC,qBAAkB;AACf,WAAO,IAAI,8BAA8B,KAAK,aAAa;EAC9D;EAEA,yBAAsB;AAClB,WAAO,IAAI,kCAAkC,KAAK,aAAa;EACnE;EAEA,2BAAwB;AACpB,WAAO,IAAI,oCAAoC,KAAK,aAAa;EACrE;;AAMG,IAAM,kBAAkB,IAAI,mBAAoB,CAAC,kBAAgD;AACpG,SAAO,IAAI,gBAAgB,aAAa;AAC5C,CAAE;;;ACzBI,IAAO,yBAAP,cAAsC,iBAAgB;EACxD,YAAY,aAAmC;AAC3C,UAAM,aAAa,gBAAgB,aAAa,YAAY,cAAc,aAAa,CAAC;EAC5F;;;;ACJE,IAAO,mCAAP,cAAgD,oBAAmB;EAErE,UAAO;AACH,UAAM,OAAO,KAAK,cAAc;AAChC,WAAO,GAAG,KAAK,cAAa,CAAE,IAAI,KAAK,qBAAoB,CAAE;EACjE;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,sBAAsB,GAAG;AAC9B,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,iCAAiC,GAAG;AACzC,WAAK,uBAAuB,GAAG;AAC/B,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,wBAAwB,GAAG;AAChC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,yBAAyB,GAAG;;AAErC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACrG;;;;ACvCE,IAAO,uCAAP,cAAoD,oBAAmB;EAEzE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,0BAA0B,GAAG;AAClC,SAAK,mBAAmB,GAAG;AAC3B;AACI,WAAK,iCAAiC,GAAG;AACzC,WAAK,2BAA2B,GAAG;AACnC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,yBAAyB,GAAG;EACrC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,6BAA6B,GAAG;;AAEzC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACrG;;;;ACtCE,IAAO,yCAAP,cAAsD,oBAAmB;EAE3E,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,iCAAiC,GAAG;AACzC,WAAK,0BAA0B,GAAG;AAClC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,qBAAqB,GAAG;AAC7B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACrG;;;;ACnCE,IAAO,wCAAP,cAAqD,oBAAmB;EAE1E,YAAY,eAA4B;AACpC,UAAM,eAAe,EAAE,OAAO,KAAI,CAAC;EACvC;EAEA,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,iCAAiC,GAAG;AACzC,WAAK,0BAA0B,GAAG;AAClC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,4BAA4B,GAAG;;AAExC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,OAAO,YAAY,eAAe,UAAU,YAAY,eAAe,UAAU,CAAC;EACzG;;;;AC1CE,IAAO,8CAAP,cAA2D,oBAAmB;EAEhF,YAAY,eAA4B;AACpC,UAAM,eAAe,EAAE,OAAO,KAAI,CAAC;EACvC;EAEA,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,8BAA8B,GAAG;AACtC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,iCAAiC,GAAG;AACzC,WAAK,+BAA+B,GAAG;AACvC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,gCAAgC,GAAG;AACxC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,iCAAiC,GAAG;;AAE7C,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,OAAO,YAAY,eAAe,UAAU,YAAY,eAAe,UAAU,CAAC;EACzG;;;;ACnCJ,IAAMC,mBAAN,cAA8B,eAAc;EAExC,qBAAkB;AACd,WAAO,IAAI,iCAAiC,KAAK,aAAa;EAClE;EAEA,yBAAsB;AAClB,WAAO,IAAI,qCAAqC,KAAK,aAAa;EACtE;EAEA,2BAAwB;AACpB,WAAO,IAAI,uCAAuC,KAAK,aAAa;EACxE;EAEA,2BAAwB;AACpB,WAAO,IAAI,sCAAsC,KAAK,aAAa;EACvE;EAEA,gCAA6B;AACzB,WAAO,IAAI,4CAA4C,KAAK,aAAa;EAC7E;;AAMG,IAAMC,mBAAkB,IAAI,mBAAoB,CAAC,kBAAgD;AACpG,SAAO,IAAID,iBAAgB,aAAa;AAC5C,CAAE;;;ACnCI,IAAO,4BAAP,cAAyC,iBAAgB;EAC3D,YAAY,aAAmC;AAC3C,UAAM,aAAaE,iBAAgB,aAAa,YAAY,cAAc,aAAa,CAAC;EAC5F;;;;ACNE,IAAO,sBAAP,MAA0B;EAE5B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,cAAA;AACI,SAAK,YAAY,CAAA;AACjB,SAAK,SAAS,CAAA;AACd,SAAK,KAAK,CAAA;AACV,SAAK,UAAU,CAAA;AACf,SAAK,aAAa,CAAA;AAClB,SAAK,UAAU,CAAA;AACf,SAAK,UAAU,CAAA;AACf,SAAK,cAAc,CAAA;AACnB,SAAK,kBAAkB,CAAA;AACvB,SAAK,kBAAkB,CAAA;AACvB,SAAK,kBAAkB,CAAA;EAC3B;;;;AClBJ,IAAM,gBAAgB,IAAI,WAAW,CAAC;AACtC,IAAM,cAAc,IAAI,aAAa,CAAC;AACtC,IAAMC,aAAY,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AACzC,IAAM,aAAa,IAAI,aAAa,CAAC;AAErC,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAM,YAAY,WAAU;AAE5B,IAAM,kBAAkB,IAAI,aAAa,CAAC;AAKpC,IAAO,qBAAP,MAAyB;EAE3B;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,aAAuC,aAA2B;AAE1E,YAAQ,KAAK,6BAA6B;AAE1C,SAAK,gBAAgB,YAAY;AACjC,SAAK,gBAAgB,YAAY;AACjC,SAAK,SAAS,sBAAsB,YAAY,cAAc,SAAS;AACvE,SAAK,aAAa,YAAY;AAE9B,SAAK,UAAU,IAAI,oBAAmB;AAEtC,SAAK,eAAe;AAEpB,SAAK,QAAQ,cAAa;AAE1B,SAAK,aAAa,CAAA;AAClB,aAASC,KAAG,GAAG,MAAM,KAAK,cAAc,OAAO,SAAS,QAAQA,KAAI,KAAKA,MAAK;AAC1E,WAAK,WAAW,KAAK,IAAI,WAAU,CAAE;;AAGzC,UAAM,WAAW,YAAY;AAC7B,UAAM,OAAO,SAAS;AACtB,UAAM,4BAA4B,WAAW,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;AACxE,UAAM,2BAA2B,WAAW,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC;AAEnI,SAAK,cAAwC;MACzC,aAAa;MACb,YAAY;MACZ,gBAAgB;MAChB,cAAc;MACd,KAAK,WAAU;MACf,QAAQ,WAAW,YAAY,MAAM;MACrC,eAAe,YAAY;MAC3B,YAAY,YAAY;MACxB,cAAc;MACd;MACA;MACA,WAAW,CAAA;MACX,WAAW,CAAA;MACX,gBAAgB;MAChB,oBAAoB;MACpB,oBAAoB;MACpB,oBAAoB;MACpB,0BAA0B;MAC1B,0BAA0B;MAC1B,0BAA0B;MAC1B,eAAe;;AAGnB,SAAK,YAAY,CAAA;AACjB,SAAK,UAAU,CAAA;AAEf,SAAK,QAAQ,cAAa;AAC1B,SAAK,YAAY;AAEjB,SAAK,SAAS;EAClB;EAEA,IAAI,OAAI;AACJ,WAAO,GAAG,KAAK,SAAS;EAC5B;EAEA,IAAI,OAAI;AACJ,QAAI,KAAK,WAAW;AAChB,oBAAc,KAAK,KAAK;AACxB,eAASA,KAAI,GAAG,MAAM,KAAK,QAAQ,QAAQA,KAAI,KAAKA,MAAK;AACrD,oBAAY,KAAK,OAAO,KAAK,QAAQA,EAAC,EAAE,IAAI;;AAEhD,WAAK,YAAY;;AAErB,WAAO,KAAK;EAChB;EAEA,mBAAmB,eAA4B;AAC3C,QAAI,KAAK,QAAQ;AACb,YAAM,IAAI,SAAS,eAAe;;AAEtC,WAAO;EACX;EAEA,gBAAgB,iBAAkC,WAAoB;AAElE,UAAMC,SAAQ,UAAU;AACxB,UAAM,UAAU,UAAU,YAAY,QAAQ,UAAU,YAAY,SAAY,UAAU,UAAU;AACpG,UAAM,aAAa,UAAU;AAC7B,UAAM,YAAY,gBAAgB;AAElC,QAAI,KAAK,QAAQ;AACb,YAAM;;AAGV,UAAMC,KAAID,OAAM,CAAC,IAAI;AACrB,UAAM,IAAIA,OAAM,CAAC,IAAI;AACrB,UAAME,KAAIF,OAAM,CAAC,IAAI;AAErB,SAAK,QAAQ,OAAO,KAAKC,EAAC;AAC1B,SAAK,QAAQ,OAAO,KAAK,CAAC;AAC1B,SAAK,QAAQ,OAAO,KAAKC,EAAC;AAC1B,SAAK,QAAQ,OAAO,KAAK,OAAO;AAEhC,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,EAAE,CAAC;AAEhD,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,EAAE,CAAC;AAEhD,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,CAAC,CAAC;AAC/C,SAAK,QAAQ,gBAAgB,KAAK,WAAW,EAAE,CAAC;AAChD,SAAK,QAAQ,gBAAgB,KAAK,WAAW,EAAE,CAAC;AAIhD,SAAK,QAAQ,WAAW,KAAK,GAAG,SAAS;AAEzC,SAAK,YAAY;AAEjB,UAAM,iBAAiB,KAAK,UAAU;AAEtC,UAAM,UAAU,CAAA;AAChB,SAAK,UAAU,KAAK,OAAO;AAE3B,aAAS,YAAY,GAAG,MAAM,KAAK,WAAW,QAAQ,YAAY,KAAK,aAAa;AAChF,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAG7C,SAAK,QAAQ,KAAK,SAAS;AAC3B,WAAO;EACX;EAEA,QAAK;AACD,QAAI,KAAK,QAAQ;AACb;;AAEJ,UAAM,cAAc,KAAK;AACzB,UAAM,gBAAgB,YAAY;AAClC,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,aAAa,YAAY;AAC/B,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,eAAe,KAAK,QAAQ,OAAO;AACzC,UAAM,cAAc,eAAe;AACnC,QAAI,eAAe,GAAG;AAClB,UAAI,gBAAgB;AACpB,YAAM,SAAS,IAAI,WAAW,KAAK,QAAQ,MAAM;AACjD,eAAS,YAAY,GAAG,YAAY,UAAU,aAAa;AACvD,oBAAY,UAAU,SAAS,IAAI,IAAI,cAAc,IAAI,GAAG,cAAc,QAAQ,KAAK,QAAQ,OAAO,QAAQ,GAAG,GAAG,cAAc,aAAa;;AAEnJ,WAAK,QAAQ,SAAS,CAAA;;AAE1B,QAAI,cAAc,GAAG;AAGjB,UAAI,gBAAgB;AACpB,YAAM,aAAa,IAAI,aAAa,WAAW;AAC/C,eAAS,YAAY,GAAG,YAAY,UAAU,aAAa;AACvD,oBAAY,UAAU,SAAS,IAAI,IAAI,cAAc,IAAI,GAAG,cAAc,YAAY,aAAa,GAAG,GAAG,cAAc,aAAa;;;AAG5I,UAAM,sBAAsB,cAAc;AAC1C,UAAM,UAAU,cAAc;AAC9B,UAAM,cAAc,cAAc;AAClC,UAAM,gBAAgB,cAAc;AACpC,UAAM,mBAAmB,cAAc;AACvC,QAAI,uBAAuB,oBAAoB,SAAS,GAAG;AACvD,YAAM,aAAa;AACnB,kBAAY,eAAe,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,YAAY,mBAAmB,GAAG,oBAAoB,QAAQ,GAAG,GAAG,aAAa,UAAU;;AAErK,QAAI,WAAW,QAAQ,SAAS,GAAG;AAC/B,kBAAY,aAAa,IAAI,cAAc,IAAI,GAAG,sBAAsB,IAAI,YAAY,OAAO,GAAG,QAAQ,QAAQ,GAAG,GAAG,WAAW;AACnI,kBAAY,aAAa,QAAQ;;AAErC,QAAI,eAAe,YAAY,SAAS,GAAG;AACvC,kBAAY,iBAAiB,IAAI,cAAc,IAAI,GAAG,sBAAsB,IAAI,YAAY,WAAW,GAAG,YAAY,QAAQ,GAAG,GAAG,WAAW;AAC/I,kBAAY,iBAAiB,YAAY;;AAM7C,QAAI,iBAAiB,cAAc,SAAS,GAAG;AAC3C,kBAAY,iBAAiB,cAAc;AAC3C,kBAAY,QAAQ,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,WAAW,aAAa,GAAG,cAAc,QAAQ,GAAG,GAAG,aAAa,KAAK;;AAE5I,QAAI,KAAK,QAAQ,gBAAgB,SAAS,GAAG;AACzC,YAAM,aAAa;AACnB,kBAAY,qBAAqB,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,eAAe,GAAG,KAAK,QAAQ,gBAAgB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC1L,kBAAY,qBAAqB,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,eAAe,GAAG,KAAK,QAAQ,gBAAgB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC1L,kBAAY,qBAAqB,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,eAAe,GAAG,KAAK,QAAQ,gBAAgB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC1L,WAAK,QAAQ,kBAAkB,CAAA;AAC/B,WAAK,QAAQ,kBAAkB,CAAA;AAC/B,WAAK,QAAQ,kBAAkB,CAAA;AAC/B,UAAI,YAAY,YAAY;AACxB,oBAAY,2BAA2B,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,qBAAqB,GAAG,KAAK,QAAQ,sBAAsB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC5M,oBAAY,2BAA2B,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,qBAAqB,GAAG,KAAK,QAAQ,sBAAsB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC5M,oBAAY,2BAA2B,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,aAAa,KAAK,QAAQ,qBAAqB,GAAG,KAAK,QAAQ,sBAAsB,QAAQ,GAAG,GAAG,aAAa,UAAU;AAC5M,aAAK,QAAQ,wBAAwB,CAAA;AACrC,aAAK,QAAQ,wBAAwB,CAAA;AACrC,aAAK,QAAQ,wBAAwB,CAAA;;;AAG7C,QAAI,KAAK,QAAQ,WAAW,SAAS,GAAG;AACpC,YAAM,aAAa;AACnB,kBAAY,gBAAgB,IAAI,cAAc,IAAI,GAAG,cAAc,IAAI,WAAW,KAAK,QAAQ,UAAU,GAAG,KAAK,QAAQ,WAAW,QAAQ,GAAG,GAAG,aAAa,UAAU;AACzK,WAAK,QAAQ,aAAa,CAAA;;AAE9B,gBAAY,eACN,CAAC,CAAC,YAAY,wBACb,CAAC,CAAC,YAAY,SACd,CAAC,CAAC,YAAY,cACd,CAAC,CAAC,cACF,CAAC,CAAC,WAAW,gBACb,CAAC,CAAC,WAAW;AACpB,gBAAY,wBACN,CAAC,CAAC,YAAY,SACb,CAAC,CAAC,cACF,CAAC,CAAC,WAAW;AACpB,SAAK,YAAY,gBAAgB;AACjC,SAAK,SAAS;EAClB;EAEA,UAAU,WAAmB,gBAAgB,OAAO,iBAAe;AAC/D,UAAM,kBAAkB,KAAK,WAAW,SAAS;AACjD,UAAM,kBAAkB,KAAK,cAAc,WAAW,SAAS;AAC/D,QAAI,QAAQ,mBAAmB,SAAS;AACpC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,aAAa;AACxC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,UAAU;AACrC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,WAAW;AACtC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,UAAU;AACrC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,sBAAgB;AAChB,sBAAgB;;AAEpB,QAAI,iBAAiB;AACjB,sBAAgB;AAChB,sBAAgB;;AAEpB,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,eAAe;EAC5E;EAEA,oBAAoB,WAAmB,gBAAwB,OAAe,aAAoB;AAC9F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,SAAS;AACpC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,wBAAwB,WAAmB,gBAAwB,OAAe,aAAoB;AAClG,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,aAAa;AACxC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,mBAAmB,WAAmB,gBAAwB,OAAe,aAAoB;AAC7F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,qBAAqB,WAAmB,gBAAwB,OAAe,aAAoB;AAC/F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,UAAU;AACrC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,sBAAsB,WAAmB,gBAAwB,OAAa;AAC1E,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,WAAW;AACtC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,KAAK;EAC3D;EAEA,cAAc,WAAmB,gBAAwB,OAAa;AAClE,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;EAEd;EAEA,qBAAqB,WAAmB,gBAAwB,OAAe,aAAoB;AAC/F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,UAAU;AACrC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,mBAAmB,WAAmB,gBAAwB,OAAe,aAAoB;AAC7F,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,QAAI,QAAQ,mBAAmB,QAAQ;AACnC,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,kBAAkB,WAAmB,gBAAwBF,QAAsB;AAC/E,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,kBAAc,CAAC,IAAIA,OAAM,CAAC;AAC1B,kBAAc,CAAC,IAAIA,OAAM,CAAC;AAC1B,kBAAc,CAAC,IAAIA,OAAM,CAAC;AAC1B,kBAAc,CAAC,IAAIA,OAAM,CAAC;AAC1B,QAAI,KAAK,YAAY,UAAU,SAAS,GAAG;AACvC,WAAK,YAAY,UAAU,SAAS,EAAE,QAAQ,eAAe,iBAAiB,CAAC;;EAEvF;EAEA,wBAAwB,WAAmB,gBAAwB,OAAe,aAAoB;AAClG,QAAI,aAAa;AACb,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;WACtC;AACH,WAAK,WAAW,SAAS,EAAE;AAC3B,WAAK,cAAc,WAAW,SAAS,EAAE;;AAE7C,SAAK,kBAAkB,WAAW,gBAAgB,OAAO,WAAW;EACxE;EAEA,kBAAkB,WAAmB,gBAAwB,OAAe,cAAuB,OAAK;AACpG,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAEV,UAAM,OAAO,KAAK,cAAc,OAAO,SAAS,SAAS;AACzD,UAAM,UAAU,CAAC,EAAE,QAAQ,mBAAmB;AAC9C,UAAM,SAAS,CAAC,EAAE,QAAQ,mBAAmB;AAC7C,UAAM,cAAc,CAAC,EAAE,QAAQ,mBAAmB;AAClD,UAAM,WAAW,CAAC,EAAE,QAAQ,mBAAmB;AAC/C,UAAM,WAAW,CAAC,EAAE,QAAQ,mBAAmB;AAC/C,UAAM,SAAS,CAAC,EAAE,QAAQ,mBAAmB;AAC7C,QAAI;AACJ,QAAI,CAAC,WAAW,UAAU,UAClB,eAAe,CAAC,KAAK,kBAAkB,eACvC,YAAY,CAAC,KAAK,iBAAiB,aAAc;AACrD,kBAAY,cAAc;WACvB;AACH,UAAI,aAAa;AACb,oBAAY,cAAc;aACvB;AACH,oBAAY,cAAc;;;AAGlC,QAAI;AACJ,QAAI,CAAC,WAAW,QAAQ;AACpB,uBAAiB,cAAc;eACxB,UAAU;AACjB,uBAAiB,cAAc;eACxB,aAAa;AACpB,uBAAiB,cAAc;eACxB,QAAQ;AACf,uBAAiB,cAAc;WAC5B;AACH,uBAAiB,cAAc;;AAEnC,UAAM,WAAY,WAAW,CAAC,UAAU,WAAY,cAAc,OAAO,cAAc;AACvF,UAAM,gBAAgB,CAAC,EAAE,QAAQ,mBAAmB,aAAa,IAAI;AACrE,QAAI,WAAW;AACf,gBAAY;AACZ,gBAAY,kBAAkB;AAC9B,gBAAY,YAAY;AACxB,gBAAY,iBAAiB;AAC7B,gBAAY,CAAC,IAAI;AACjB,QAAI,KAAK,YAAY,UAAU,SAAS,GAAG;AACvC,WAAK,YAAY,UAAU,SAAS,EAAE,QAAQ,aAAa,cAAc;;EAEjF;EAEA,UAAU,WAAmB,gBAAwB,QAAuB;AACxE,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM;;AAKV,UAAM,SAAS,iBAAiB;AAChC,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,EAAE;AAC9B,SAAK,YAAY,mBAAmB,QAAQ,iBAAiB,MAAM;AACnE,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,EAAE;AAC9B,SAAK,YAAY,mBAAmB,QAAQ,iBAAiB,MAAM;AACnE,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,CAAC;AAC7B,oBAAgB,CAAC,IAAI,OAAO,EAAE;AAC9B,oBAAgB,CAAC,IAAI,OAAO,EAAE;AAC9B,SAAK,YAAY,mBAAmB,QAAQ,iBAAiB,MAAM;EACvE;EAEA,kBAAe;AACX,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;AAEJ,QAAI,KAAK,aAAa,eAAe;AACjC,WAAK,aAAa,cAAc,yBAAyB,MAAM,cAAc,YAAY;;EAEjG;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAC9C,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;AAEJ,QAAI,KAAK,aAAa,eAAe;AACjC,WAAK,aAAa,cAAc,yBAAyB,MAAM,cAAc,iBAAiB;;EAEtG;EAEA,YAAS;AACL,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;EAKR;EAEA,cAAW;AACP,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,KAAK,WAAW,SAAS,EAAE,aACzE,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,WAAW;AAC/E;;EAKR;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,cAAc,GAAG;AAC5C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,yBAAyB,MAAM,cAAc,iBAAiB;;EAE3G;EAEA,4BAAyB;AACrB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,yBAAyB,MAAM,cAAc,sBAAsB;;EAEhH;EAEA,yBAAsB;AAClB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,gBAAgB,GAAG;AAC9C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,yBAAyB,MAAM,cAAc,mBAAmB;;EAE7G;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,yBAAyB,MAAM,cAAc,YAAY;;EAEtG;EAEA,4BAAyB;AACrB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,oBAAoB;AACtC,WAAK,aAAa,mBAAmB,yBAAyB,MAAM,cAAc,iBAAiB;;EAE3G;EAEA,uBAAoB;AAChB,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,mBAAmB,GAAG;AACjD;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,yBAAyB,MAAM,cAAc,sBAAsB;;EAErH;EAEA,oBAAiB;AACb,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,gBAAgB,GAAG;AAC9C;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,yBAAyB,MAAM,cAAc,mBAAmB;;EAElH;EAEA,kBAAe;AACX,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,KAC1C,KAAK,WAAW,SAAS,EAAE,cAAc,GAAG;AAC5C;;AAEJ,QAAI,KAAK,aAAa,yBAAyB;AAC3C,WAAK,aAAa,wBAAwB,yBAAyB,MAAM,cAAc,iBAAiB;;EAEhH;EAEA,gBAAa;AACT,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aACpE,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,mBAAmB;AACrC,WAAK,aAAa,kBAAkB,yBAAyB,MAAM,cAAc,YAAY;;EAErG;EAEA,aAAU;EAQV;EAEA,eAAY;AACR,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,kBAAkB;AACpC,WAAK,aAAa,iBAAiB,yBAAyB,MAAM,cAAc,IAAI;;EAE5F;EAEA,iBAAc;AACV,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC7C;;AAEJ,QAAI,KAAK,aAAa,mBAAmB;AACrC,WAAK,aAAa,kBAAkB,yBAAyB,MAAM,cAAc,IAAI;;EAE7F;EAEA,eAAY;AACR,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aAAa,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC9H;;AAEJ,QAAI,KAAK,aAAa,kBAAkB;AACpC,WAAK,aAAa,iBAAiB,yBAAyB,MAAM,cAAc,IAAI;;EAE5F;EAEA,WAAQ;AACJ,UAAM,YAAY,KAAK,cAAc,KAAK;AAC1C,QAAI,KAAK,WAAW,SAAS,EAAE,cAAc,KAAK,WAAW,SAAS,EAAE,aAAa,KAAK,WAAW,SAAS,EAAE,eAAe,GAAG;AAC9H;;AAEJ,QAAI,KAAK,aAAa,cAAc;AAChC,WAAK,aAAa,aAAa,yBAAyB,MAAM,cAAc,IAAI;;EAExF;EAEA,kBAAe;EAOf;EAEA,UAAO;AACH,UAAM,cAAc,KAAK;AACzB,aAAS,YAAY,GAAG,MAAM,YAAY,UAAU,QAAQ,YAAY,KAAK,aAAa;AACtF,UAAI,YAAY,UAAU,SAAS,GAAG;AAClC,oBAAY,UAAU,SAAS,EAAE,QAAO;AACxC,oBAAY,UAAU,SAAS,IAAI;;;AAG3C,QAAI,YAAY,sBAAsB;AAClC,kBAAY,qBAAqB,QAAO;AACxC,kBAAY,uBAAuB;;AAEvC,aAAS,YAAY,GAAG,MAAM,YAAY,UAAU,QAAQ,YAAY,KAAK,aAAa;AACtF,UAAI,YAAY,UAAU,SAAS,GAAG;AAClC,oBAAY,UAAU,SAAS,EAAE,QAAO;AACxC,oBAAY,UAAU,SAAS,IAAI;;;AAG3C,QAAI,YAAY,oBAAoB;AAChC,kBAAY,mBAAmB,QAAO;AACtC,kBAAY,qBAAqB;;AAErC,QAAI,YAAY,oBAAoB;AAChC,kBAAY,mBAAmB,QAAO;AACtC,kBAAY,qBAAqB;;AAErC,QAAI,YAAY,oBAAoB;AAChC,kBAAY,mBAAmB,QAAO;AACtC,kBAAY,qBAAqB;;AAErC,QAAI,YAAY,0BAA0B;AACtC,kBAAY,yBAAyB,QAAO;AAC5C,kBAAY,2BAA2B;;AAE3C,QAAI,YAAY,0BAA0B;AACtC,kBAAY,yBAAyB,QAAO;AAC5C,kBAAY,2BAA2B;;AAE3C,QAAI,YAAY,0BAA0B;AACtC,kBAAY,yBAAyB,QAAO;AAC5C,kBAAY,2BAA2B;;AAE3C,QAAI,YAAY,eAAe;AAC3B,kBAAY,cAAc,QAAO;AACjC,kBAAY,gBAAgB;;AAEhC,QAAI,YAAY,YAAY;AACxB,kBAAY,WAAW,QAAO;AAC9B,kBAAY,aAAa;;AAE7B,QAAI,YAAY,gBAAgB;AAC5B,kBAAY,eAAe,QAAO;AAClC,kBAAY,aAAa;;AAE7B,SAAK,cAAc;EACvB;EAEA,oBAAoB,WAAiB;EACrC;EAEA,UAAO;AACH,WAAO;EACX;EAEA,uBAAuB,gBAAgB,OAAK;AACxC,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;EAEA,mBAAmB,gBAAwB,QAAuB;AAC9D,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;EAEA,mBAAmB,WAAmB,gBAAwB,QAAuB;AACjF,QAAI,CAAC,KAAK,QAAQ;AACd,YAAM,IAAI,SAAS,WAAW;;EAEtC;;;;ACvyBE,IAAgB,wBAAhB,cAA8C,YAAW;EAE3D,yBAAyB,oBAAwC,YAAkB;AAC/E,QAAI,CAAC,KAAK,KAAK,UAAU,GAAG;AACxB;;AAEJ,UAAM,aAAa,KAAK;AACxB,UAAM,cAAc,mBAAmB;AACvC,UAAM,OAAO,KAAK,cAAc;AAChC,UAAM,YAAY,KAAK;AACvB,UAAM,KAAK,KAAK,cAAc;AAC9B,OAAG,UAAU,KAAK,SAAS,YAAY,UAAU;AACjD,eAAW,SAAS,gBAAgB,YAAY,YAAY;AAC5D,QAAI,WAAW,IAAI;AACf,iBAAW,GAAG,gBAAgB,YAAY,KAAK;;AAEnD,QAAI,WAAW,OAAO;AAClB,iBAAW,MAAM,gBAAgB,YAAY,UAAU,SAAS,CAAC;AACjE,SAAG,oBAAoB,WAAW,MAAM,UAAU,CAAC;;AAEvD,QAAI,WAAW,OAAO;AAClB,iBAAW,MAAM,gBAAgB,YAAY,UAAU,SAAS,CAAC;AACjE,SAAG,oBAAoB,WAAW,MAAM,UAAU,CAAC;;AAEvD,QAAI,WAAW,WAAW;AACtB,iBAAW,UAAU,gBAAgB,YAAY,aAAa;AAC9D,SAAG,oBAAoB,WAAW,UAAU,UAAU,CAAC;;AAE3D,QAAI,WAAW,WAAW;;AAG1B,QAAI,WAAW,iBAAiB;AAC5B,iBAAW,gBAAgB,gBAAgB,YAAY,kBAAkB;AACzE,SAAG,oBAAoB,WAAW,gBAAgB,UAAU,CAAC;;AAEjE,QAAI,WAAW,iBAAiB;AAC5B,iBAAW,gBAAgB,gBAAgB,YAAY,kBAAkB;AACzE,SAAG,oBAAoB,WAAW,gBAAgB,UAAU,CAAC;;AAEjE,QAAI,WAAW,iBAAiB;AAC5B,iBAAW,gBAAgB,gBAAgB,YAAY,kBAAkB;AACzE,SAAG,oBAAoB,WAAW,gBAAgB,UAAU,CAAC;;AAEjE,OAAG,WAAW,KAAK,SAAS,2BAAqD,YAAY,yBAAyB;AACtH,OAAG,WAAW,KAAK,SAAS,0BAAoD,YAAY,wBAAwB;AACpH,OAAG,iBAAiB,KAAK,SAAS,aAAa,OAAiC,mBAAmB,cAAc,WAAW;AAC5H,OAAG,iBAAiB,KAAK,SAAS,YAAY,OAChB,iBACtB,eAAe,cAAc,OACvB,KAAK,cAAc,iBACnB,KAAK,cAAc,KAAK,OAAO,YACrC,YAAY,MAAM,CAAC;AAC3B,QAAI,YAAY,YAAY;AACxB,kBAAY,WAAW,KAAI;;AAE/B,SAAK,iCAAiC,oBAAoB,UAAU;EACxE;;;;AC1DE,IAAO,qCAAP,cAAkD,sBAAqB;EAEzE,UAAO;AACH,WAAO,GAAG,KAAK,kBAAkB,IAAI,KAAK,WAAW;EACzD;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,sBAAsB,GAAG;AAE9B,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,uBAAuB,GAAG;AAC/B,WAAK,mBAAmB,GAAG;;AAG/B,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,wBAAwB,GAAG;AAChC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,yBAAyB,GAAG;;AAErC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACxI;;;;ACxCE,IAAO,2CAAP,cAAwD,sBAAqB;EAE/E,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,0BAA0B,GAAG;AAClC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,4BAA4B,GAAG;;AAExC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACxI;;;;ACrCE,IAAO,yCAAP,cAAsD,sBAAqB;EAE7E,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,0BAA0B,GAAG;AAClC,SAAK,mBAAmB,GAAG;AAC3B;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,2BAA2B,GAAG;AACnC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,yBAAyB,GAAG;EACrC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,6BAA6B,GAAG;;AAEzC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,WAAW,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACxI;;;;ACtCE,IAAO,0CAAP,cAAuD,sBAAqB;EAE9E,YAAY,eAA4B;AACpC,UAAM,eAAe,EAAE,OAAO,KAAI,CAAC;EACvC;EAEA,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,0BAA0B,GAAG;AAClC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,4BAA4B,GAAG;;AAExC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,OAAO,YAAY,eAAe,UAAU,YAAY,eAAe,UAAU,GAAG,YAAY,YAAY;EAC5I;;;;AC1CE,IAAO,gDAAP,cAA6D,sBAAqB;EAEpF,YAAY,eAA4B;AACpC,UAAM,eAAe,EAAE,OAAO,KAAI,CAAC;EACvC;EAEA,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,8BAA8B,GAAG;AACtC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,+BAA+B,GAAG;AACvC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,gCAAgC,GAAG;AACxC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,iCAAiC,GAAG;;AAE7C,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,OAAO,YAAY,eAAe,UAAU,YAAY,eAAe,UAAU,GAAG,YAAY,YAAY;EAC5I;;;;ACpCJ,IAAMG,mBAAN,cAA8B,eAAc;EAExC,qBAAkB;AACd,WAAO,IAAI,mCAAmC,KAAK,aAAa;EACpE;EAEA,2BAAwB;AACpB,WAAO,IAAI,yCAAyC,KAAK,aAAa;EAC1E;EAEA,yBAAsB;AAClB,WAAO,IAAI,uCAAuC,KAAK,aAAa;EACxE;EAEA,2BAAwB;AACpB,WAAO,IAAI,wCAAwC,KAAK,aAAa;EACzE;EAEA,gCAA6B;AACzB,WAAO,IAAI,8CAA8C,KAAK,aAAa;EAC/E;;AAMG,IAAMC,mBAAkB,IAAI,mBAAoB,CAAC,kBAAgD;AACpG,SAAO,IAAID,iBAAgB,aAAa;AAC5C,CAAE;;;AClCI,IAAO,8BAAP,cAA2C,mBAAkB;EAC/D,YAAY,0BAAkD;AAC1D,UAAM,0BAA0BE,iBAAgB,aAAa,yBAAyB,cAAc,aAAa,CAAC;EACtH;;;;ACJE,IAAO,iCAAP,cAA8C,sBAAqB;EAErE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,wBAAwB,GAAG;AAChC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,yBAAyB,GAAG;AACjC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,0BAA0B,GAAG;AAClC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,2BAA2B,GAAG;;AAEvC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACpI;;;;ACtCE,IAAO,qCAAP,cAAkD,sBAAqB;EAEzE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,0BAA0B,GAAG;AAClC,SAAK,mBAAmB,GAAG;AAC3B;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,2BAA2B,GAAG;AACnC,WAAK,mBAAmB,GAAG;;EAEnC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,mBAAmB;AAC5B;AACI,WAAK,qBAAqB,GAAG;AAC7B,WAAK,6BAA6B,GAAG;;AAEzC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACpI;;;;ACrCE,IAAO,uCAAP,cAAoD,sBAAqB;EAE3E,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,8BAA8B,GAAG;AACtC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,SAAK,yBAAyB,GAAG;AACjC;AACI,WAAK,mCAAmC,GAAG;AAC3C,WAAK,0BAA0B,GAAG;AAClC,WAAK,mBAAmB,GAAG;;AAE/B,SAAK,0BAA0B,GAAG;EACtC;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,qBAAqB,GAAG;AAC7B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,GAAG;EAChB;EAEA,iCAAiC,oBAAwC,YAAkB;AACvF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,mBAAmB;AACvC,OAAG,sBAAsB,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,YAAY;EACpI;;;;AChCJ,IAAMC,mBAAN,cAA8B,eAAc;EAExC,qBAAkB;AACd,WAAO,IAAI,+BAA+B,KAAK,aAAa;EAChE;EAEA,yBAAsB;AAClB,WAAO,IAAI,mCAAmC,KAAK,aAAa;EACpE;EAEA,2BAAwB;AACpB,WAAO,IAAI,qCAAqC,KAAK,aAAa;EACtE;;AAMG,IAAMC,mBAAkB,IAAI,mBAAoB,CAAC,kBAAgD;AACpG,SAAO,IAAID,iBAAgB,aAAa;AAC5C,CAAE;;;ACvBI,IAAO,0BAAP,cAAuC,mBAAkB;EAC3D,YAAY,aAAqC;AAC7C,UAAM,aAAaE,iBAAgB,aAAa,YAAY,cAAc,aAAa,CAAC;EAC5F;;;;ACJE,IAAO,+BAAP,cAA4C,oBAAmB;EAEjE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,wBAAwB,GAAG;AAChC,QAAI,KAAK,mBAAmB;AAG5B,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,UAAU;AACnB,SAAK,iCAAiC,GAAG;AACzC,SAAK,yBAAyB,GAAG;AACjC,SAAK,mBAAmB,GAAG;AAC3B,QAAI,KAAK,GAAG;AACZ,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,0BAA0B,GAAG;AAClC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,qBAAqB,GAAG;AAC7B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACjG;;;;ACxCE,IAAO,mCAAP,cAAgD,oBAAmB;EAErE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,0BAA0B,GAAG;AAClC,QAAI,KAAK,mBAAmB;AAG5B,QAAI,KAAK,mCAAmC;AAC5C,QAAI,KAAK,gCAAgC;AACzC,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,UAAU;AACnB,SAAK,iCAAiC,GAAG;AACzC,SAAK,2BAA2B,GAAG;AACnC,SAAK,mBAAmB,GAAG;AAC3B,QAAI,KAAK,GAAG;AACZ,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,qBAAqB,GAAG;AAC7B,SAAK,6BAA6B,GAAG;AACrC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACjG;;;;ACzCE,IAAO,qCAAP,cAAkD,oBAAmB;EAEvE,UAAO;AACH,WAAO,KAAK;EAChB;EAEA,kBAAkB,KAAa;AAC3B,SAAK,aAAa,GAAG;AACrB,SAAK,iBAAiB,GAAG;AACzB,SAAK,4BAA4B,GAAG;AACpC,SAAK,kBAAkB,GAAG;AAC1B,SAAK,yBAAyB,GAAG;AACjC,QAAI,KAAK,mBAAmB;AAG5B,QAAI,KAAK,mCAAmC;AAC5C,QAAI,KAAK,gCAAgC;AACzC,QAAI,KAAK,4CAA4C;AACrD,QAAI,KAAK,UAAU;AACnB,SAAK,iCAAiC,GAAG;AACzC,SAAK,0BAA0B,GAAG;AAClC,SAAK,mBAAmB,GAAG;AAC3B,QAAI,KAAK,GAAG;AACZ,QAAI,KAAK,GAAG;EAChB;EAEA,oBAAoB,KAAa;AAC7B,SAAK,eAAe,GAAG;AACvB,SAAK,sBAAsB,GAAG;AAC9B,SAAK,oBAAoB,GAAG;AAC5B,SAAK,2BAA2B,GAAG;AACnC,QAAI,KAAK,mBAAmB;AAC5B,SAAK,qBAAqB,GAAG;AAC7B,SAAK,4BAA4B,GAAG;AACpC,QAAI,KAAK,GAAG;EAChB;EAEA,+BAA+B,kBAAoC,YAAkB;AACjF,UAAM,KAAK,KAAK,cAAc;AAC9B,UAAM,cAAc,iBAAiB;AACrC,OAAG,aAAa,GAAG,OAAO,YAAY,WAAW,UAAU,YAAY,WAAW,UAAU,CAAC;EACjG;;;;ACrCJ,IAAMC,mBAAN,cAA8B,eAAc;EAExC,qBAAkB;AACd,WAAO,IAAI,6BAA6B,KAAK,aAAa;EAC9D;EAEA,yBAAsB;AAClB,WAAO,IAAI,iCAAiC,KAAK,aAAa;EAClE;EAEA,2BAAwB;AACpB,WAAO,IAAI,mCAAmC,KAAK,aAAa;EACpE;;AAMG,IAAMC,mBAAkB,IAAI,mBAAoB,CAAC,kBAAgD;AACpG,SAAO,IAAID,iBAAgB,aAAa;AAC5C,CAAE;;;ACvBI,IAAO,wBAAP,cAAqC,iBAAgB;EACvD,YAAY,aAAmC;AAC3C,UAAM,aAAaE,iBAAgB,aAAa,YAAY,cAAc,aAAa,CAAC;EAC5F;;;;AC+BJ,IAAM,eAAe,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AACzC,IAAM,kBAAkB,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AAC5C,IAAM,kBAAkB,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AAC5C,IAAM,oBAAoB,aAAY;AAEtC,IAAM,wBAAwB;AAC9B,IAAM,6BAA6B;AACnC,IAAM,0BAA0B;AAChC,IAAM,2BAA2B;AACjC,IAAM,4BAA4B;AAClC,IAAM,sBAAsB;AAKtB,IAAO,qBAAP,cAAkC,UAAS;EAGpC;EACA;EAGT;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA,YAAYC,SAeX;AAEG,UAAMA,QAAO,MAAM;AAEnB,SAAK,KAAKA,QAAO;AACjB,SAAK,SAASA,QAAO;AAErB,SAAK,aAAa;MACd,IAAI,WAAU;MACd,IAAI,WAAU;MACd,IAAI,WAAU;MACd,IAAI,WAAU;;AAGlB,SAAK,gBAAgBA,QAAO;AAC5B,SAAK,iBAAiBA,QAAO;AAC7B,SAAK,qBAAqBA,QAAO;AAEjC,SAAK,QAAQ,cAAa;AAC1B,SAAK,aAAa;AAClB,SAAK,UAAU,CAAA;AACf,SAAK,YAAY,CAAA;AACjB,SAAK,iBAAiB,CAAA;AAEtB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,mBAAmB,CAAA;AACxB,SAAK,sBAAsB,CAAA;AAC3B,SAAK,iBAAiB,CAAA;AACtB,SAAK,kBAAkB,CAAA;AACvB,SAAK,sBAAsB,CAAA;AAE3B,SAAK,kBAAkB,CAAA;AAEvB,SAAK,iBAAiB;AACtB,SAAK,sBAAsB;AAC3B,SAAK,eAAe;AACpB,SAAK,aAAa;AAElB,SAAK,gBAAgB;AACrB,SAAK,YAAY;AACjB,SAAK,aAAa;AAClB,SAAK,iBAAiBA,QAAO,iBAAiB;AAE9C,SAAK,eAAe;AAIpB,SAAK,YAAY,WAAWA,QAAO,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC;AACxD,SAAK,YAAY,WAAWA,QAAO,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC;AACxD,SAAK,cAAc,WAAWA,QAAO,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AAC/D,QAAIA,QAAO,UAAU;AACjB,kBAAY,KAAK,WAAW,OAAO,KAAK,WAAW;;AAEvD,SAAK,SAAS,WAAWA,QAAO,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC;AAClD,SAAK,eAAe,WAAU;AAC9B,gBAAY,KAAK,WAAW,KAAK,aAAa,KAAK,QAAQ,KAAK,YAAY;AAE5E,QAAIA,QAAO,UAAUA,QAAO,YAAYA,QAAO,YAAYA,QAAO,SAASA,QAAO,YAAY;AAC1F,WAAK,cAAc,WAAU;AAC7B,WAAK,mBAAmB;AACxB,WAAK,0BAA0B;;AAGnC,SAAK,gBAAiBA,QAAO,kBAAkB;AAE/C,SAAK,WAAWA,QAAO;AAMvB,SAAK,yBAAwB;AAE7B,aAASC,KAAI,GAAG,MAAM,KAAK,UAAU,QAAQA,KAAI,KAAKA,MAAK;AACvD,YAAM,QAAQ,KAAK,UAAUA,EAAC;AAC9B,YAAM,aAAaA;;AAEvB,SAAK,iBAAiB,CAAA;AAEtB,SAAK,kBAAkBD,QAAO,UAAU;AACxC,SAAK,cAAc,cAAa;AAGhC,SAAK,cAAc;MACf,IAAI,YAAW;MACf,IAAI,YAAW;MACf,IAAI,YAAW;MACf,IAAI,YAAW;;EAEvB;EAEA,kBAAkB,YAAsB;AACpC,UAAM,WAAW,WAAW;AAC5B,UAAM,aAAa,WAAW;AAC9B,UAAM,SAAS,WAAW;AAC1B,UAAM,UAAU,WAAW;AAC3B,QAAI,UAAU;AACV,eAAS,aAAa,UAAU;AAC5B,aAAK,eAAe,SAAS,SAAS,CAAC;;;AAG/C,QAAI,YAAY;AACZ,eAAS,cAAc,YAAY;AAC/B,aAAK,gBAAgB,WAAW,UAAU,CAAC;;;AAGnD,QAAI,QAAQ;AACR,eAAS,UAAU,QAAQ;AACvB,aAAK,YAAY,OAAO,MAAM,CAAC;;;AAGvC,QAAI,SAAS;AACT,eAAS,YAAY,SAAS;AAC1B,aAAK,mBAAmB,QAAQ,QAAQ,CAAC;;;AAGjD,aAAS,WAAW,KAAK,gBAAgB;AACrC,WAAK,eAAe,OAAO,EAAE,MAAK;;AAOtC,UAAM,WAAW,KAAK,OAAO,SAAS;EAW1C;EAEA,eAAe,SAAqB;AAEhC,UAAM,YAAY,QAAQ;AAC1B,QAAI,KAAK,iBAAiB,SAAS,GAAG;AAClC,YAAM,IAAI,SAAS,gCAAgC,SAAS,wCAAwC;;AAExG,UAAM,YAAY,IAAI,aAAa,EAAC,IAAI,KAAK,eAAe,GAAE,CAAC;AAC/D,QAAI,QAAQ,cAAc;AACtB,gBAAU,gBAAgB,QAAQ,YAAY;;AAElD,QAAI,QAAQ,OAAO;AACf,YAAM,QAAQ,QAAQ;AACtB,YAAM,cAAc;AACpB,gBAAU,SAAS,OAAO;QACtB,WAAW,QAAQ;QACnB,WAAW,QAAQ;QACnB,OAAO,QAAQ;QACf,OAAO,QAAQ;QACf,OAAO,QAAQ;QACf,OAAO,QAAQ;QACf,UAAU,QAAQ;OACrB;eACM,QAAQ,KAAK;AACpB,YAAM,MAAM,QAAQ,IAAI,MAAM,GAAG,EAAE,IAAG;AACtC,cAAQ,KAAK;QACT,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;AACD,gBAAM,QAAQ,IAAI,MAAK;AACvB,gBAAM,SAAS,MAAK;AAChB,sBAAU,SAAS,OAAO;cACtB,WAAW,QAAQ;cACnB,WAAW,QAAQ;cACnB,OAAO,QAAQ;cACf,OAAO,QAAQ;cACf,OAAO,QAAQ;cACf,OAAO,QAAQ;cACf,UAAU,QAAQ;aACrB;UACL;AACA,gBAAM,MAAM,QAAQ;AACpB;QACJ;AACI,cAAI,CAAC,KAAK,oBAAoB;AAC1B,iBAAK,MAAM,wHAAwH,GAAG,IAAI;iBACvI;AACH,4BAAgB,QAAQ,KAAK,CAAC,gBAA4B;AAClD,kBAAI,CAAC,YAAY,YAAY;AACzB,qBAAK,MAAM,2DAA2D;AACtE;;AAEJ,mBAAK,mBAAmB,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,0BAAyB;AAC5E,0BAAU,kBAAkB,qBAAqB;AACjD,qBAAK,cAAc,cAAa;cACpC,CAAC;YACL,GACA,CAAC,WAAkB;AACf,mBAAK,MAAM,oCAAoC,MAAM,EAAE;YAC3D,CAAC;;AAET;;eAED,QAAQ,SAAS;AACxB,UAAI,CAAC,KAAK,oBAAoB;AAC1B,aAAK,MAAM,qHAAqH;aAC7H;AACH,aAAK,mBAAmB,UAAU,QAAQ,OAAO,EAAE,KAAK,CAAC,0BAAyB;AAC9E,oBAAU,kBAAkB,qBAAqB;AACjD,eAAK,cAAc,cAAa;QACpC,CAAC;;;AAGT,UAAM,kBAAkB,IAAI,qBAAqB,SAAS,SAAS;AACnE,YAAQ,kBAAkB;AAC1B,SAAK,iBAAiB,SAAS,IAAI;EACvC;EAEA,gBAAgB,UAAuB;AAEnC,UAAM,aAAa,SAAS;AAC5B,QAAI,KAAK,mBAAmB,UAAU,GAAG;AACrC,YAAM,IAAI,SAAS,4BAA4B,UAAU,wCAAwC;;AAErG,UAAM,mBAAmB,IAAI,sBAAqB;AAClD,SAAK,mBAAmB,UAAU,IAAI;AACtC,aAAS,mBAAmB;AAC5B,SAAK;EACT;EAEA,YAAY,MAAe;AAEvB,UAAM,mBAAmB,KAAK,mBAAmB,KAAK,SAAS,EAAE;AACjE,QAAI,CAAC,kBAAkB;AACnB,YAAM,IAAI,SAAS,4BAA4B,KAAK,SAAS,EAAE,kCAAkC;;AAErG,UAAM,eAAe,KAAK,aAA+B,KAAK,WAAY,KAAK;AAC/E,UAAM,qBAAqB,KAAK,oBAAoB,YAAY;AAChE,QAAI,CAAC,oBAAoB;AACrB,WAAK,MAAM,uBAAuB,YAAY,mCAAmC;;AAErF,UAAM,QAAQ,KAAK,UAAU,cAAc,IAAI;AAC/C,QAAI,CAAC,OAAO;AACR;;AAEJ,QAAI,SAAS,KAAK;AAClB,UAAME,SAAS,KAAK,QAAS,IAAI,WAAW,CAAC,KAAK,MAAM,KAAK,MAAM,CAAC,IAAI,GAAG,GAAG,KAAK,MAAM,KAAK,MAAM,CAAC,IAAI,GAAG,GAAG,KAAK,MAAM,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,GAAG;AACjK,UAAM,UAAW,KAAK,YAAY,UAAa,KAAK,YAAY,OAAQ,KAAK,MAAM,KAAK,UAAU,GAAG,IAAI;AACzG,UAAM,eAAe,IAAI,kBAAkB;MACvC,aAA+B,KAAK,cAAc;MAClD,IAAI,KAAK;MACT;MACA,OAAAA;MACA;MACA;MACA;MACA;MACA,WAAW;KACd;AACD,iBAAa,SAAS,KAAK,cAAc,eAAe,YAAY;AACpE,UAAMC,KAAI,aAAa,UAAU,KAAK;AACtC,UAAMC,KAAI,aAAa,UAAU,KAAK;AACtC,UAAM,IAAI,aAAa,UAAU,IAAI;AACrC,UAAMC,KAAI,aAAa,SAAS;AAChC,UAAM,YAAY,IAAI,WAAW,CAACA,IAAG,GAAGD,IAAGD,EAAC,CAAC;AAE7C,UAAM,YAAY,MAAM,gBAAgB,EAAC,UAAS,GAAG,IAAI;AAEzD,iBAAa,QAAQ;AACrB,iBAAa,YAAY;AACzB,SAAK,eAAe,KAAK,EAAE,IAAI;AAC/B,SAAK;EACT;EAEA,UAAU,cAAsB,MAAe;AAC3C,UAAM,gBAAgB,KAAK;AAC3B,UAAM,YAAY,cAAc;AAChC,UAAM,aAAa,cAAc,YAAY;AAC7C,UAAMG,UAAS,KAAK,KAAK;AACzB,UAAM,UAAU,OAAO,aAAa,eAAe,UAAU,IAAI,YAAY,IAAI,SAAS,IAAI,KAAK,MAAMA,QAAO,CAAC,CAAC,CAAC,IAAI,KAAK,MAAMA,QAAO,CAAC,CAAC,CAAC,IAAI,KAAK,MAAMA,QAAO,CAAC,CAAC,CAAC;AACrK,QAAI,QAAQ,KAAK,eAAe,OAAO;AACvC,QAAI,OAAO;AACP,UAAI,MAAM,mBAAmB,aAAa,GAAG;AACzC,eAAO;aACJ;AACH,cAAM,MAAK;AACX,eAAO,KAAK,eAAe,OAAO;;;AAG1C,QAAI;AACJ,QAAI,cAAc;AACd,mBAAa,KAAK,oBAAoB,YAAY;AAClD,UAAI,CAAC,YAAY;AACb,aAAK,MAAM,uBAAuB,YAAY,6FAA6F;;;AAInJ,QAAI,YAAY;AACZ,cAAQ,cAAc,WAAW;QAC7B,KAAK;QACL,KAAK;QACL,KAAK;AACD,kBAAQ,IAAI,4BAA4B;YACpC,eAAe,KAAK;YACpB,eAAe;YACf;YACA;YACA,YAAY;YACZ,QAAAA;WACH;AACD,eAAK,IAAI,0CAA0C;AACnD;QACJ,KAAK;AACD,kBAAQ,IAAI,wBAAwB;YAChC,eAAe,KAAK;YACpB,eAAe;YACf;YACA;YACA,YAAY;YACZ,QAAAA;WACH;AACD,eAAK,IAAI,sCAAsC;AAC/C;QACJ,KAAK;AASD,eAAK,IAAI,uCAAuC;AAChD;QACJ;AACI,eAAK,MAAM,iCAAiC,cAAc,SAAS,EAAE;AACrE;;WAEL;AACH,cAAQ,cAAc,WAAW;QAC7B,KAAK;QACL,KAAK;QACL,KAAK;AACD,kBAAQ,IAAI,0BAA0B;YAClC,eAAe,KAAK;YACpB,eAAe;YACf;YACA;YACA,YAAY;YACZ,QAAAA;WACH;AACD,eAAK,IAAI,wCAAwC;AACjD;QACJ,KAAK;AACD,kBAAQ,IAAI,sBAAsB;YAC9B;YACA,eAAe,KAAK;YACpB,eAAe;YACf;YACA,YAAY;YACZ,QAAAA;WACH;AACD,eAAK,IAAI,oCAAoC;AAC7C;QACJ,KAAK;AACD,kBAAQ,IAAI,uBAAuB;YAC/B,eAAe,KAAK;YACpB,eAAe;YACf;YACA;YACA,YAAY;YACZ,QAAAA;WACH;AACD,eAAK,IAAI,qCAAqC;AAC9C;QACJ;AACI,eAAK,MAAM,iCAAiC,cAAc,SAAS,EAAE;AACrE;;;AAGZ,SAAK,QAAQ,OAAO,IAAI;AACxB,SAAK,UAAU,KAAK,KAAK;AACzB,SAAK,eAAe,OAAO,IAAI;AAC/B,WAAO;EACX;EAEA,mBAAmB,aAAwB;AAEvC,QAAI,WAAW,YAAY;AAC3B,QAAI,aAAa,QAAW;AACxB,iBAAWC,YAAU;eACd,KAAK,gBAAgB,QAAQ,GAAG;AACvC,WAAK,MAAM,mDAAmD,WAAW,0BAA0B;AACnG,iBAAWA,YAAU;;AAEzB,UAAM,SAAS,YAAY;AAC3B,QAAI,WAAW,QAAW;AACtB,YAAM,IAAI,SAAS,uCAAuC;;AAE9D,UAAM,iBAAsC,CAAA;AAC5C,aAASN,KAAI,GAAG,MAAM,OAAO,QAAQA,KAAI,KAAKA,MAAK;AAC/C,YAAM,OAAO,OAAOA,EAAC;AACrB,YAAM,eAAkC,KAAK,eAAe,KAAK,EAAE;AACnE,UAAI,CAAC,cAAc;AACf,gBAAQ,MAAM,oCAAoC,KAAK,EAAE;aACtD;AACH,uBAAe,KAAK,YAAY;;;AAGxC,QAAI,eAAe,WAAW,GAAG;AAC7B;;AAEJ,UAAM,iBAAiB,IAAI,oBAAoB;MAC3C,IAAI;MACJ,eAAe;MACf;MACA,MAAM,YAAY;MAClB,SAAS,KAAK;KACjB;AACD,SAAK,oBAAoB,KAAK,cAAc;AAC5C,SAAK,gBAAgB,QAAQ,IAAI;AACjC,gBAAY,iBAAiB;AAC7B,SAAK;EACT;EAEA,IAAI,WAAQ;AACR,WAAO,KAAK;EAChB;EAEA,IAAI,WAAQ;AACR,WAAO,KAAK;EAChB;EAEA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;EAEA,IAAI,QAAK;AACL,WAAO,KAAK;EAChB;EAEA,IAAI,cAAW;AACX,WAAO,KAAK;EAChB;EAEA,IAAI,sBAAmB;AACnB,WAAO,KAAK;EAChB;EAEA,IAAI,YAAS;AACT,WAAO,KAAK;EAChB;EAEA,IAAI,UAAU,WAAkB;AAC5B,gBAAY,CAAC,CAAC;AACd,SAAK,aAAa;AAClB,SAAK,cAAc,cAAa;EACpC;EAEA,IAAI,SAAM;AACN,WAAO,KAAK;EAChB;EAEA,IAAI,OAAI;AACJ,QAAI,KAAK,YAAY;AACjB,WAAK,aAAY;;AAErB,WAAO,KAAK;EAChB;EAEA,IAAI,eAAY;AACZ,WAAO,KAAK;EAChB;EAEA,IAAI,WAAQ;AACR,WAAO,KAAK;EAChB;EAEA,IAAI,YAAS;AACT,WAAO,KAAK;EAChB;EAEA,2BAAwB;AACpB,UAAM,8BAA8B,IAAI,qBACpC,MACA,IAAI,aAAa;MACb,IAAI,KAAK,eAAe;MACxB,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;;KAC5B,CAAC;AAEN,UAAM,mCAAmC,IAAI,qBACzC,MACA,IAAI,aAAa;MACb,IAAI,KAAK,eAAe;MACxB,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;;KAC5B,CAAC;AACN,UAAM,gCAAgC,IAAI,qBACtC,MACA,IAAI,aAAa;MACb,IAAI,KAAK,eAAe;MACxB,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;;KAC5B,CAAC;AAEN,UAAM,iCAAiC,IAAI,qBACvC,MACA,IAAI,aAAa;MACb,IAAI,KAAK,eAAe;MACxB,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;;KAC5B,CAAC;AACN,UAAM,kCAAkC,IAAI,qBACxC,MACA,IAAI,aAAa;MACb,IAAI,KAAK,eAAe;MACxB,cAAc,CAAC,GAAG,GAAG,GAAG,CAAC;;KAC5B,CAAC;AACN,SAAK,iBAAiB,qBAAqB,IAAI;AAC/C,SAAK,iBAAiB,0BAA0B,IAAI;AACpD,SAAK,iBAAiB,uBAAuB,IAAI;AACjD,SAAK,iBAAiB,wBAAwB,IAAI;AAClD,SAAK,iBAAiB,yBAAyB,IAAI;AACnD,SAAK,oBAAoB,mBAAmB,IAAI,IAAI,wBAAwB;MACxE,IAAI;MACJ,sBAAsB;MACtB,kCAAkC;MAClC,yBAAyB;MACzB,0BAA0B;KAC7B;EACL;EAEA,eAAY;AACR,kBAAc,KAAK,KAAK;AACxB,aAASA,KAAI,GAAG,MAAM,KAAK,oBAAoB,QAAQA,KAAI,KAAKA,MAAK;AACjE,YAAM,iBAAiB,KAAK,oBAAoBA,EAAC;AACjD,kBAAY,KAAK,OAAO,eAAe,IAAI;;AAE/C,SAAK,aAAa;EACtB;;EAGA,mBAAmB,WAAiB;AAChC,UAAM,cAAc,KAAK,YAAY,SAAS;AAC9C,gBAAY,MAAK;AACjB,SAAK,gCAAgC,SAAS;AAC9C,QAAI,YAAY,YAAY,KAAK,YAAY,qBAAqB,GAAG;AACjE,kBAAY,SAAS;AACrB;;AAEJ,SAAK,mBAAmB,SAAS;EACrC;;;;EAKA,gCAAgC,WAAiB;AAC7C,UAAM,cAAc,KAAK,YAAY,SAAS;AAC9C,gBAAY,YAAY,KAAK,UAAU;AACvC,gBAAY,mBAAmB;AAC/B,aAAS,aAAa,GAAG,MAAM,KAAK,UAAU,QAAQ,aAAa,KAAK,cAAc;AAClF,YAAM,QAAQ,KAAK,UAAU,UAAU;AACvC,YAAM,eAAe,KAAK,gCAAgC,KAAK;AAC/D,UAAI,cAAc;AACd,oBAAY,cAAc,YAAY,kBAAkB,IAAI;;;EAGxE;EAEA,gCAAgC,OAAK;AAgBjC,WAAO;EACX;EAEA,mBAAmB,WAAiB;AAChC,UAAM,aAAa,KAAK,WAAW,SAAS;AAC5C,QAAI,WAAW,eAAe,GAAG;AAC7B;;AAEJ,QAAI,WAAW,cAAc,WAAW,WAAW;AAC/C;;AAEJ,UAAM,cAAc,KAAK,YAAY,SAAS;AAC9C,gBAAY,cAAe,WAAW,iBAAiB,WAAW;AAClE,QAAI,WAAW,iBAAiB,GAAG;AAC/B,kBAAY,mBAAmB;;AAEnC,QAAI,WAAW,YAAY,GAAG;AAC1B,YAAM,eAAe,KAAK,OAAO,SAAS,EAAE;AAC5C,UAAI,aAAa,MAAM;AACnB,YAAI,aAAa,YAAY,GAAK;AAC9B,sBAAY,8BAA8B;eACvC;AACH,sBAAY,yBAAyB;;;AAG7C,UAAI,aAAa,OAAO;AACpB,YAAI,aAAa,YAAY,GAAK;AAC9B,sBAAY,yBAAyB;eAClC;AACH,sBAAY,oBAAoB;;;;AAI5C,UAAM,eAAe,KAAK,OAAO,SAAS,EAAE;AAC5C,QAAI,aAAa,SAAS;AACtB,kBAAY,cAAe,WAAW,iBAAiB,WAAW;AAClE,UAAI,WAAW,iBAAiB,GAAG;AAC/B,oBAAY,mBAAmB;;;AAGvC,QAAI,WAAW,cAAc,GAAG;AAC5B,YAAM,mBAAmB,KAAK,OAAO,SAAS,EAAE;AAChD,UAAI,iBAAiB,MAAM;AACvB,YAAI,iBAAiB,YAAY,GAAK;AAClC,sBAAY,gCAAgC;eACzC;AACH,sBAAY,2BAA2B;;;AAG/C,UAAI,iBAAiB,OAAO;AACxB,YAAI,iBAAiB,YAAY,GAAK;AAClC,sBAAY,2BAA2B;eACpC;AACH,sBAAY,sBAAsB;;;;AAI9C,QAAI,WAAW,iBAAiB,GAAG;AAC/B,YAAM,oBAAoB,KAAK,OAAO,SAAS,EAAE;AACjD,UAAI,kBAAkB,MAAM;AACxB,YAAI,kBAAkB,YAAY,GAAK;AACnC,sBAAY,mCAAmC;eAC5C;AACH,sBAAY,8BAA8B;;;AAGlD,UAAI,kBAAkB,OAAO;AACzB,YAAI,kBAAkB,YAAY,GAAK;AACnC,sBAAY,8BAA8B;eACvC;AACH,sBAAY,yBAAyB;;;;EAIrD;EAEA,SAAM;EAcN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CA,UAAO;AACH,QAAI,KAAK,WAAW;AAChB;;AAIJ,aAAS,WAAW,KAAK,gBAAgB;AACrC,UAAI,KAAK,eAAe,eAAe,OAAO,GAAG;AAC7C,aAAK,eAAe,OAAO,EAAE,QAAO;;;AAG5C,aAASA,KAAI,GAAG,MAAM,KAAK,UAAU,QAAQA,KAAI,KAAKA,MAAK;AACvD,WAAK,UAAUA,EAAC,EAAE,QAAO;;AAE7B,aAAS,YAAY,KAAK,iBAAiB;AACvC,WAAK,gBAAgB,QAAQ,EAAE,QAAO;;AAE1C,aAAS,UAAU,KAAK,gBAAgB;AACpC,WAAK,eAAe,MAAM,EAAE,QAAO;;AAGvC,SAAK,iBAAiB,CAAA;AACtB,SAAK,UAAU,CAAA;AACf,SAAK,YAAY,CAAA;AACjB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,mBAAmB,CAAA;AACxB,SAAK,sBAAsB,CAAA;AAC3B,SAAK,iBAAiB,CAAA;AACtB,SAAK,kBAAkB,CAAA;AAEvB,UAAM,QAAO;EACjB;;;;ACh2BE,IAAO,cAAP,MAAkB;;;;EAKpB;;;;EAKA;;;;EAKA;;;;EAKA,cAAA;AACI,SAAK,MAAK;EACd;;;;EAKA,QAAK;AACD,SAAK,kBAAkB;AACvB,SAAK,gBAAgB;AACrB,SAAK,kBAAkB;EAC3B;;;;ACpBJ,IAAAO,iCAA8B;;;ACRxB,IAAO,2BAAP,MAA+B;EACjC;EACA;EACA;EACA;EACA;EAEA,YAAY,IAA4B,aAA8B;AAClE,SAAK,MAAM;AAEX,SAAK,eAAc;AACnB,SAAK,sBAAsB,CAAA;AAC3B,SAAK,uBAAuB,CAAA;EAChC;EAEA,gBAAgB,IAAY,SAG3B;AAEG,UAAM,gBAAe,KAAK;AAC1B,QAAI,eAAe,cAAc,EAAE;AACnC,QAAI,CAAC,cAAc;AACf,qBAAe,IAAI,kBAAkB,KAAK,cAAc,KAAK,KAAK,OAAO;AACzE,oBAAc,EAAE,IAAI;WACjB;AACH,UAAI,WAAW,QAAQ,MAAM;AACzB,qBAAa,QAAQ,QAAQ,IAAI;;;AAGzC,WAAO;EACX;EAEA,UAAO;AACH,aAAS,MAAM,KAAK,qBAAqB;AACrC,WAAK,oBAAoB,EAAE,EAAE,QAAO;;AAExC,aAAS,MAAM,KAAK,sBAAsB;AACtC,WAAK,qBAAqB,EAAE,EAAE,QAAO;;EAE7C;;;;AD1BJ,IAAM,KAAK,UAAU,UAAU,MAAM,kEAAkE;AACvG,IAAM,WAAY,MAAM,GAAG,CAAC,EAAE,YAAW,MAAO;AAGhD,IAAM,oBAAN,MAAuB;EAEnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAEA,YAAY,IAA4B,oBAAuC,MAAU;AACrF,SAAK,KAAK;AACV,SAAK,OAAO;AACZ,SAAK,sBAAsB;AAC3B,SAAK,aAAa;AAClB,SAAK,kBAAkB;AACvB,SAAK,oBAAoB;AACzB,SAAK,aAAa;AAClB,SAAK,aAAa;AAClB,SAAK,eAAe;AACpB,SAAK,qBAAqB;AAC1B,SAAK,kBAAkB,WAAU;AACjC,SAAK,qBAAqB,KAAK,YAAY,sBAAqB;AAChE,SAAK,sBAAsB,IAAI,yBAAyB,IAAI,kBAAkB;AAC9E,SAAK,UAAU,IAAIC,KAAI,CAAA,CAAE;EAC7B;EAEA,UAAO;AACH,SAAK,oBAAoB,QAAO;EACpC;;AAGJ,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAE5B,IAAM,YAAY;EACd,eAAe,WAAU;EACzB,iBAAiB,WAAU;EAC3B,oBAAoB,WAAU;EAC9B,gBAAgB,WAAU;EAC1B,gBAAgB,WAAU;;AAQxB,IAAO,gBAAP,MAAoB;;;;;;;;EAStB;;;;EAKA;;;;EAKA;EAGA;EAEA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA,WAAW,IAAIJ,KAAI,CAAA,CAAE;EACrB;EACA;EACA;EACA;;;EAGA;EACA;EACA;EACA;EAEA;;;;;EAMS;;;;;EAMA;EAET;EACA;EAEA;;;;;;;;;;EAWA,YAAYK,SAEX;AACG,SAAK,cAAc,IAAI,YAAW;AAClC,SAAK,kBAAkB,CAAA;AACvB,SAAK,cAAc;AACnB,SAAK,gBAAgB;AACrB,SAAK,qBAAqBA,QAAO,qBAAqB,IAAI,sBAAsB,CAAA,CAAE;AAClF,SAAK,kBAAkB;AACvB,SAAK,oBAAoB,CAAA;AACzB,SAAK,WAAW,IAAIL,KAAI,CAAA,CAAE;AAC1B,SAAK,aAAa,CAAA;AAClB,SAAK,kBAAkB;AACvB,SAAK,kBAAkB;AACvB,SAAK,gBAAgB;AACrB,SAAK,mBAAmB;AAIxB,SAAK,iCAAiC;AACtC,SAAK,kBAAkB,CAAA;AACvB,SAAK,mBAAmB;AACxB,SAAK,iBAAiB;AACtB,SAAK,aAAa;AAElB,SAAK,iBAAiB,CAAA;AACtB,SAAK,qBAAqB,CAAA;AAC1B,SAAK,sBAAsB;AAE3B,SAAK,cAAc,IAAI,WAAU;AAEjC,SAAK,aAAa,IAAI,aAAa,IAAI,+CAAe,CAA0B;AAChF,SAAK,cAAc,IAAI,aAAa,IAAI,+CAAe,CAA0B;AAEjF,SAAK,sBAAsB,SAAS,cAAc,QAAQ;AAC1D,UAAM,qBAAqB,KAAK;AAChC,uBAAmB,QAAQ;AAC3B,uBAAmB,SAAS;AAC5B,uBAAmB,MAAM,WAAW;AACpC,uBAAmB,MAAM,MAAM;AAC/B,uBAAmB,MAAM,OAAO;AAChC,uBAAmB,MAAM,SAAS;AAClC,uBAAmB,MAAM,gBAAgB,IAAI;AAC7C,uBAAmB,MAAM,SAAS,IAAI;AACtC,aAAS,KAAK,YAAY,kBAAkB;AAC5C,UAAM,cAAc;MAChB,OAAO;MACP,uBAAuB;MACvB,SAAS;MACT,oBAAoB;MACpB,WAAW;;AAEf,SAAK,MAA8B,mBAAmB,WAAW,UAAU,WAAW;AACtF,QAAI,CAAC,KAAK,KAAK;AACX,YAAM,IAAI,SAAS,gCAAgC;;AAEvD,SAAK,IAAI,KAAK,KAAK,IAAI,iCAAiC,KAAK,IAAI,MAAM;AAEvE,SAAK,qBAAqB,IAAI,yBAAyB,KAAK,KAAK,kBAAkB;EAGvF;;;;EAKA,IAAI,SAAM;AACN,WAAO,KAAK;EAChB;;;;;;EAOA,IAAI,oBAAiB;AACjB,WAAO,KAAK;EAChB;;;;;;;EAQA,gBAAgB,cAA0B;AACtC,iBAAa,WAAW;AACxB,UAAM,cAAc,SAAS,cAAc,QAAQ;AACnD,QAAI;AACJ,QAAI;AACA,WAAK,YAAY,WAAW,QAAQ;aAC/B,GAAG;AACR,cAAQ,MAAM,+BAA+B;;AAEjD,QAAI,IAAI;AACJ,mBAAa,gBAAgB,CAAC,CAAC,kBAAkB,IAAI,+BAA+B;AACpF,mBAAa,gBAAgB;AAC7B,mBAAa,gBAAgB,CAAC,CAAC,kBAAkB,IAAI,8BAA8B;AACnF,mBAAa,eAAe,CAAC,CAAC,kBAAkB,IAAI,+BAA+B;AACnF,mBAAa,gBAAgB,CAAC,CAAC,kBAAkB,IAAI,8BAA8B;AACnF,mBAAa,iBAAiB,CAAC,EAAE,kBAAkB,IAAI,gCAAgC,KAAK,kBAAkB,IAAI,uCAAuC;;EAEjK;;;;;;;;;;;;EAaA,aAAa,QAAc;AACvB,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,SAAS,qEAAqE;;AAE5F,QAAI,OAAO,UAAU;AACjB,YAAM,IAAI,SAAS,6FAA6F;;AAEpH,SAAK,UAAU;AACf,SAAK,mBAAmB,KAAK,KAAK,QAAQ,YAAY;AACtD,SAAK,gBAAgB,IAAI,cAAc,KAAK,SAAS,KAAK,KAAK,IAAI;EACvE;;;;;;;;;;EAWA,eAAY;AACR,QAAI,KAAK,SAAS;AACd,aAAO,IAAI,SAAS,0EAA0E;;AAElG,aAAS,MAAM,KAAK,iBAAiB;AACjC,YAAM,gBAAgB,KAAK,gBAAgB,EAAE;AAC7C,WAAK,uBAAuB,aAAa;AAGzC,oBAAc,QAAO;AACrB,aAAO,KAAK,gBAAgB,EAAE;;AAElC,SAAK,UAAU;AACf,SAAK,iBAAiB,CAAA;AACtB,SAAK,gBAAgB;AACrB,SAAK,aAAa,CAAA;AAClB,SAAK,kBAAkB,CAAA;AACvB,SAAK,cAAc;EACvB;;;;;;;;;;;;;;;;;;;;;EAsBA,WAAW,MAAU;AACjB,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,4DAA4D;;AAEnF,QAAI,KAAK,eAAe,KAAK,EAAE,GAAG;AAC9B,aAAO,IAAI,SAAS,4GAA4G;;AAGpI,SAAK,OAAO,aAAa,UAAU,KAAK,sBAAsB,MAAK;AAC/D,WAAK,mBAAmB;IAC5B,CAAC;AACD,UAAM,eAAe,IAAI,kBAAkB,KAAK,cAAc,IAAI,KAAK,qBAAqB,IAAI;AAChG,SAAK,eAAe,KAAK,EAAE,IAAI;AAC/B,SAAK,YAAY,KAAK,mBAAmB;AACzC,SAAK,mBAAmB,KAAK,YAAY;EAC7C;;;;;;;;;;;;;;;;;;;;;;EAwBA,WAAW,MAAU;AACjB,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,8DAA8D;;AAErF,UAAM,eAAe,KAAK,eAAe,KAAK,EAAE;AAChD,QAAI,CAAC,cAAc;AACf,aAAO,IAAI,SAAS,iEAAiE;;AAEzF,iBAAa,QAAO;AACpB,WAAO,KAAK,eAAe,KAAK,EAAE;AAClC,SAAK,OAAO,aAAa,YAAY,KAAK,mBAAmB;AAC7D,SAAK,YAAY;AACjB,SAAK,sBAAsB;AAC3B,aAAS,MAAM,KAAK,iBAAiB;AACjC,YAAM,gBAAgB,KAAK,gBAAgB,EAAE;AAC7C,WAAK,uBAAuB,aAAa;AAGzC,oBAAc,QAAO;AACrB,aAAO,KAAK,gBAAgB,EAAE;;AAElC,SAAK,gBAAgB;AACrB,SAAK,aAAa,CAAA;AAClB,SAAK,kBAAkB,CAAA;AACvB,SAAK,cAAc;EAEvB;;;;;;;;;;;;;;;;;;;;;;;;;EA0BA,iBAAiB,YAAsB;AACnC,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,kEAAkE;;AAEzF,QAAI,KAAK,mBAAmB,WAAW,GAAG;AACtC,YAAM,IAAI,SAAS,gEAAgE;;AAEvF,UAAM,gBAAgB,IAAI,mBAAmB;MACzC,IAAI,WAAW;MACf;MACA,QAAQ,KAAK;MACb,mBAAmB,KAAK;MACxB,eAAe;MACf,eAAe,KAAK;KACvB;AACD,SAAK,gBAAgB,cAAc,EAAE,IAAI;AACzC,SAAK,uBAAuB,aAAa;AACzC,SAAK,kBAAkB;AACvB,eAAW,gBAAgB;EAC/B;EAEA,uBAAuB,eAAiC;AACpD,UAAM,kBAAkB,cAAc;AACtC,aAAS,MAAM,iBAAiB;AAC5B,WAAK,gBAAgB,EAAE,IAAI,gBAAgB,EAAE;;EAErD;;;;;;;;;;;;;;;EAgBA,iBAAiB,YAAsB;AACnC,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,oEAAoE;;AAE3F,QAAI,KAAK,mBAAmB,WAAW,GAAG;AACtC,YAAM,IAAI,SAAS,gEAAgE;;AAEvF,QAAI,KAAK,gBAAgB,WAAW,EAAE,KAAK,QAAW;AAClD,aAAO,IAAI,SAAS,6EAA6E,WAAW,EAAE,4CAA4C;;AAE9J,SAAK,kBAAkB,UAAU;EACrC;EAEA,kBAAkB,YAAsB;AACpC,QAAI,KAAK,gBAAgB,WAAW,EAAE,GAAG;AACrC,YAAM,gBAAgB,KAAK,gBAAgB,WAAW,EAAE;AACxD,WAAK,uBAAuB,aAAa;AAGzC,oBAAc,QAAO;AACrB,aAAO,KAAK,gBAAgB,WAAW,EAAE;AACzC,WAAK,kBAAkB;AACvB,iBAAW,gBAAgB;;EAEnC;EAEA,uBAAuB,eAAiC;AACpD,UAAM,kBAAkB,cAAc;AACtC,aAAS,MAAM,iBAAiB;AAC5B,aAAO,KAAK,gBAAgB,EAAE;;EAEtC;;;;EAKA,eAAe,UAAkB;AAC7B,WAAO,KAAK,SAAS,QAAQ,QAAQ;EACzC;;;;EAKA,eAAe,QAAc;AACzB,SAAK,SAAS,WAAW,MAAM;EACnC;;;;;EAMA,cAAc,WAAkB;AAC5B,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AACd,mBAAa,aAAa;;EAElC;;;;;EAMA,mBAAmB,WAAmBM,QAAsB;AACxD,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AAEd,mBAAa,gBAAgB,IAAIA,MAAK;AACtC,mBAAa,aAAa;;EAElC;;;;;;EAOA,gBAAgB,WAAmBC,UAAgB;AAC/C,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AACd,mBAAa,eAAeA;AAC5B,mBAAa,aAAa;;EAElC;;;;;;EAOA,cAAc,WAAmBA,UAAgB;AAC7C,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AACd,mBAAa,aAAaA;AAC1B,mBAAa,aAAa;;EAElC;EAGA,kBAAe;AACX,WAAO,YAAY,WAAW,qBAAqB,0BAA0B;EACjF;;;;;;EAOA,cAAc,WAAmBA,UAAgB;AAC7C,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AACd,mBAAa,aAAaA;AAC1B,mBAAa,aAAa;;EAElC;;;;;;;;;;;;;EAcA,sBAAsB,WAAmBA,UAAgB;AACrD,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,cAAc;AACd,mBAAa,qBAAqBA;AAClC,mBAAa,aAAa;;EAElC;;;;;;;;;;;;EAaA,MAAM,WAAiB;AACnB,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,wEAAwE;;AAE/F,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,CAAC,cAAc;AACf,YAAM,IAAI,SAAS,gFAAgF,SAAS,EAAE;;AAElH,UAAM,KAAK,KAAK,cAAc;AAC9B,OAAG,SAAS,GAAG,GAAG,GAAG,oBAAoB,GAAG,mBAAmB;AAC/D,QAAI,aAAa,mBAAmB;AAChC,SAAG,WAAW,GAAG,GAAG,GAAG,CAAC;WACrB;AACH,SAAG,WAAW,aAAa,gBAAgB,CAAC,GAAG,aAAa,gBAAgB,CAAC,GAAG,aAAa,gBAAgB,CAAC,GAAG,CAAG;;AAExH,OAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;EACtD;;;;;;;;;;;EAYA,gBAAgB,WAAkB;AAC9B,SAAK,gBAAgB;EACzB;;;;;;;;;;;EAYA,eAAe,WAAkB;AAC7B,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,CAAC,cAAc;AACf,aAAO;;AAEX,WAAQ,aAAa,cAAc,KAAK,mBAAmB,KAAK;EACpE;;;;;;;;;;;;EAaA,OAAO,WAAmBF,SAAgD;AACtE,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,kEAAkE;;AAEzF,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,QAAI,CAAC,cAAc;AACf,YAAM,IAAI,SAAS,0EAA0E,SAAS,EAAE;;AAE5G,SAAK,YAAY,MAAK;AACtB,QAAI,KAAK,eAAe;AACpB,WAAK,WAAW,SAAS,MAAM,IAAI;AACnC,WAAK,gBAAgB;;AAGzB,QAAIA,QAAO,OAAO;AACd,mBAAa,aAAa;;AAE9B,SAAK,iBAAgB;AACrB,QAAI,aAAa,YAAY;AACzB,WAAK,cAAc,SAAS;AAC5B,WAAK,MAAM;QACP;QACA,OAAO;OACV;AAED,mBAAa,aAAa;;EAElC;EAEA,cAAc,WAAiB;AAC3B,UAAM,qBAAqB,KAAK,mBAAmB,SAAS;AAC5D,QAAI,CAAC,oBAAoB;AACrB,YAAM,IAAI,SAAS,uDAAuD,SAAS,EAAE;;AAEzF,UAAM,qBAAqB,KAAK;AAChC,QAAI,oBAAoB;AACpB,YAAM,2BAA2B,mBAAmB,KAAK,YAAY,sBAAqB;AAC1F,YAAM,wBAAwB,mBAAmB,oBAAoB,gBAAgB,YAAY;QAC7F,cAAc;QACd,MAAM,CAAC,yBAAyB,OAAO,yBAAyB,MAAM;OACzE;AACD,4BAAsB,KAAI;AAC1B,4BAAsB,MAAK;AAC3B,WAAK,MAAM;QACP,WAAW,mBAAmB,KAAK;QACnC,OAAO;OACV;AACD,YAAM,QAAQ,sBAAsB,UAAU;QAC1C,QAAQ;QACR,QAAQ,yBAAyB;QACjC,OAAO,yBAAyB;OACnC;AACD,4BAAsB,OAAM;AACT,yBAAmB,KAAK,YAAa,MAAM;;AAGlE,UAAM,qBAAqB,KAAK;AAEhC,UAAM,aAAa,mBAAmB;AACtC,UAAM,sBAAsB,WAAW;AACvC,UAAM,2BAA2B,oBAAoB,sBAAqB;AAE1E,uBAAmB,MAAM,MAAM,IAAI,GAAG,yBAAyB,IAAI;AACnE,uBAAmB,MAAM,KAAK,IAAI,GAAG,yBAAyB,GAAG;AACjE,uBAAmB,MAAM,OAAO,IAAI,GAAG,yBAAyB,KAAK;AACrE,uBAAmB,MAAM,QAAQ,IAAI,GAAG,yBAAyB,MAAM;AACvE,uBAAmB,QAAQ,yBAAyB;AACpD,uBAAmB,SAAS,yBAAyB;AACrD,uBAAmB,MAAM,SAAS,IAAI;AAEtC,SAAK,sBAAsB;EAC/B;EAEA,mBAAgB;AACZ,QAAI,KAAK,iBAAiB;AACtB,WAAK,gBAAe;AACpB,WAAK,kBAAkB;AACvB,WAAK,kBAAkB;;AAE3B,QAAI,KAAK,iBAAiB;AACtB,WAAK,eAAc;AACnB,WAAK,kBAAkB;AACvB,eAAS,YAAY,GAAG,MAAM,KAAK,mBAAmB,QAAQ,YAAY,KAAK,aAAa;AACxF,cAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,qBAAa,aAAa;;;EAGtC;EAEA,kBAAe;AACX,QAAI,eAAe;AACnB,aAAS,MAAM,KAAK,iBAAiB;AACjC,YAAM,gBAAgB,KAAK,gBAAgB,EAAE;AAC7C,eAASG,KAAI,GAAG,MAAM,cAAc,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAChE,aAAK,WAAW,cAAc,IAAI,cAAc,UAAUA,EAAC;;;AAGnE,SAAK,WAAW,SAAS;EAC7B;EAEA,iBAAc;AACV,SAAK,WAAW,KAAK,CAAC,QAAQ,WAAU;AACpC,UAAI,OAAO,SAAS,OAAO,QAAQ;AAC/B,eAAO;;AAEX,UAAI,OAAO,SAAS,OAAO,QAAQ;AAC/B,eAAO;;AAEX,aAAO;IACX,CAAC;EACL;EAEA,MAAMH,SAGL;AACG,UAAM,eAAe,KAAK,mBAAmBA,QAAO,SAAS;AAC7D,QAAI,CAAC,cAAc;AACf;;AAEJ,SAAK,oBAAmB;AACxB,QAAI,aAAa,cAAc,aAAa,KAAK,IAAI,UAAU;AAC3D,WAAK,gBAAgBA,OAAM;;AAE/B,SAAK,WAAWA,OAAM;EAC1B;EAEA,sBAAmB;AACf,QAAI,WAAW,qBAAqB,wBAAwB,GAAG;AAC3D,WAAK,kBAAkB,yBAAyB,KAAK,cAAc,GAAG,aAAa,wBAAwB;;AAE/G,QAAI,KAAK,kCAAkC,WAAW,qBAAqB,gBAAgB,GAAG;AAC1F,WAAK,kBAAkB,iBAAiB,KAAK,cAAc,GAAG,aAAa,gBAAgB;;AAE/F,QAAI,WAAW,qBAAqB,qBAAqB,GAAG;AACxD,WAAK,kBAAkB,sBAAsB,KAAK,cAAc,GAAG,aAAa,qBAAqB;;EAE7G;EAEA,gBAAgBA,SAEf;EA4BD;EAEA,WAAWA,SAGV;AACG,SAAK,cAAc,MAAK;AACxB,UAAM,KAAK,KAAK,cAAc;AAC9B,OAAG,SAAS,GAAG,GAAG,GAAG,oBAAoB,GAAG,mBAAmB;AAC/D,OAAG,WAAW,GAAG,GAAG,GAAG,CAAC;AACxB,OAAG,OAAO,GAAG,UAAU;AACvB,OAAG,UAAU,GAAG,GAAG;AACnB,OAAG,OAAO,GAAG,SAAS;AACtB,OAAG,UAAU,IAAI;AACjB,QAAIA,QAAO,UAAU,OAAO;AACxB,SAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;;EAgB1D;EAEA,WAAWA,SAGV;AAEG,UAAM,YAAYA,QAAO;AACzB,UAAM,eAAe,KAAK,mBAAmB,SAAS;AACtD,UAAM,OAAO,aAAa;AAC1B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,KAAK,cAAc;AAEzB,UAAM,mBAA4B,CAAA;AAClC,UAAM,sBAA+B,CAAA;AACrC,UAAM,2BAAoC,CAAA;AAC1C,UAAM,2BAAoC,CAAA;AAC1C,UAAM,4BAAqC,CAAA;AAC3C,UAAM,qBAA8B,CAAA;AACpC,UAAM,iCAA0C,CAAA;AAChD,UAAM,0BAAmC,CAAA;AACzC,UAAM,iCAA0C,CAAA;AAChD,UAAM,4BAAqC,CAAA;AAC3C,UAAM,sCAA+C,CAAA;AACrD,UAAM,iCAA0C,CAAA;AAChD,UAAM,8BAAuC,CAAA;AAC7C,UAAM,yBAAkC,CAAA;AACxC,UAAM,mCAA4C,CAAA;AAClD,UAAM,8BAAuC,CAAA;AAE7C,kBAAc,MAAK;AACnB,kBAAc,OAAO;AACrB,kBAAc,UAAU;AACxB,kBAAc,aAAa,aAAa,cAAc,CAAC,CAAC,KAAK;AAE7D,OAAG,SAAS,GAAG,GAAG,GAAG,oBAAoB,GAAG,mBAAmB;AAE/D,QAAI,aAAa,mBAAmB;AAChC,SAAG,WAAW,GAAG,GAAG,GAAG,CAAC;WACrB;AACH,SAAG,WAAW,aAAa,gBAAgB,CAAC,GAAG,aAAa,gBAAgB,CAAC,GAAG,aAAa,gBAAgB,CAAC,GAAG,CAAG;;AAGxH,OAAG,OAAO,GAAG,UAAU;AACvB,OAAG,UAAU,GAAG,GAAG;AACnB,OAAG,OAAO,GAAG,SAAS;AACtB,OAAG,UAAU,IAAI;AACjB,OAAG,UAAU,CAAC;AAEd,kBAAc,YAAY;AAE1B,UAAM,cAAc,KAAK,IAAI;AAE7B,QAAI,aAAa,cAAc,aAAa;WAMrC;AACH,oBAAc,mBAAmB;;AAIrC,QAAIA,QAAO,UAAU,OAAO;AACxB,SAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;;AAKtD,aAASG,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AAExD,YAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,YAAM,aAAa,MAAM,WAAW,SAAS;AAE7C,UAAI,WAAW,cAAc,WAAW,aAAa,WAAW,eAAe,GAAG;AAC9E;;AAGJ,UAAI,WAAW,iBAAiB,WAAW,WAAW;AAClD,cAAM,gBAAe;;AAGzB,UAAI,aAAa,oBAAoB;AACjC,YAAI,WAAW,iBAAiB,GAAG;AAC/B,mCAAyB,KAAK,KAAK;;;AAI3C,UAAI,WAAW,YAAY,GAAG;AAC1B,YAAI,KAAK,aAAa,MAAM;AACxB,cAAI,KAAK,aAAa,YAAY,GAAK;AACnC,2CAA+B,KAAK,KAAK;iBACtC;AACH,sCAA0B,KAAK,KAAK;;;;AAKhD,UAAI,WAAW,iBAAiB,GAAG;AAC/B,YAAI,KAAK,kBAAkB,MAAM;AAC7B,cAAI,KAAK,kBAAkB,YAAY,GAAK;AACxC,gDAAoC,KAAK,KAAK;iBAC3C;AACH,2CAA+B,KAAK,KAAK;;;;AAKrD,UAAI,WAAW,cAAc,GAAG;AAC5B,YAAI,KAAK,iBAAiB,MAAM;AAC5B,cAAI,KAAK,iBAAiB,YAAY,GAAK;AACvC,6CAAiC,KAAK,KAAK;iBACxC;AACH,wCAA4B,KAAK,KAAK;;;;AAKlD,UAAI,aAAa,gBAAgB,KAAK,MAAM,SAAS;AACjD,YAAI,WAAW,iBAAiB,WAAW,WAAW;AAClD,8BAAoB,KAAK,KAAK;;AAElC,YAAI,WAAW,iBAAiB,GAAG;AAC/B,mCAAyB,KAAK,KAAK;;AAEvC,YAAI,KAAK,iBAAiB,YAAY,GAAK;AACvC,sCAA4B,KAAK,KAAK;eACnC;AACH,iCAAuB,KAAK,KAAK;;AAErC,YAAI,WAAW,YAAY,GAAG;AAC1B,cAAI,KAAK,aAAa,YAAY,GAAK;AACnC,oCAAwB,KAAK,KAAK;iBAC/B;AACH,+BAAmB,KAAK,KAAK;;;AAGrC,YAAI,KAAK,kBAAkB,YAAY,GAAK;AACxC,yCAA+B,KAAK,KAAK;eACtC;AACH,oCAA0B,KAAK,KAAK;;;;AAOhD,QAAI,iBAAiB,SAAS,GAAG;AAC7B,oBAAc,UAAU;AACxB,eAASA,KAAI,GAAGA,KAAI,iBAAiB,QAAQA,MAAK;AAC9C,yBAAiBA,EAAC,EAAE,gBAAe;;;AAI3C,aAASA,KAAI,GAAGA,KAAI,oBAAoB,QAAQA,MAAK;AACjD,0BAAoBA,EAAC,EAAE,qBAAoB;;AAG/C,aAASA,KAAI,GAAGA,KAAI,0BAA0B,QAAQA,MAAK;AACvD,gCAA0BA,EAAC,EAAE,qBAAoB;;AAGrD,aAASA,KAAI,GAAGA,KAAI,mBAAmB,QAAQA,MAAK;AAChD,yBAAmBA,EAAC,EAAE,gBAAe;;AAGzC,QAAI,+BAA+B,SAAS,KACxC,wBAAwB,SAAS,KACjC,yBAAyB,SAAS,KAClC,yBAAyB,SAAS,GAAG;AACrC,SAAG,OAAO,GAAG,SAAS;AACtB,SAAG,OAAO,GAAG,KAAK;AAClB,UAAI,aAAa,mBAAmB;AAChC,WAAG,cAAc,GAAG,QAAQ;AAC5B,WAAG,kBAAkB,GAAG,WAAW,GAAG,qBAAqB,GAAG,KAAK,GAAG,mBAAmB;aACtF;AACH,WAAG,cAAc,GAAG,QAAQ;AAC5B,WAAG,UAAU,GAAG,WAAW,GAAG,mBAAmB;;AAErD,oBAAc,YAAY;AAC1B,UAAI,CAAC,KAAK,iBAAiB;AACvB,WAAG,UAAU,KAAK;;AAEtB,eAASA,KAAI,GAAGA,KAAI,wBAAwB,QAAQA,MAAK;AACrD,gCAAwBA,EAAC,EAAE,gBAAe;;AAE9C,eAASA,KAAI,GAAGA,KAAI,+BAA+B,QAAQA,MAAK;AAC5D,uCAA+BA,EAAC,EAAE,qBAAoB;;AAE1D,UAAI,yBAAyB,SAAS,KAAK,yBAAyB,SAAS,GAAG;AAC5E,WAAG,UAAU,GAAG,WAAW,GAAG,mBAAmB;;AAErD,eAASA,KAAI,GAAGA,KAAI,yBAAyB,QAAQA,MAAK;AACtD,iCAAyBA,EAAC,EAAE,0BAAyB;;AAEzD,eAASA,KAAI,GAAGA,KAAI,yBAAyB,QAAQA,MAAK;AACtD,iCAAyBA,EAAC,EAAE,qBAAoB;;AAEpD,SAAG,QAAQ,GAAG,KAAK;AACnB,UAAI,CAAC,KAAK,iBAAiB;AACvB,WAAG,UAAU,IAAI;;;AAIzB,QAAI,+BAA+B,SAAS,KAAK,0BAA0B,SAAS,GAAG;AACnF,oBAAc,gBAAgB;AAC9B,SAAG,MAAM,GAAG,gBAAgB;AAC5B,eAASA,KAAI,GAAGA,KAAI,0BAA0B,QAAQA,MAAK;AACvD,kCAA0BA,EAAC,EAAE,qBAAoB;;AAErD,eAASA,KAAI,GAAGA,KAAI,+BAA+B,QAAQA,MAAK;AAC5D,uCAA+BA,EAAC,EAAE,0BAAyB;;;AAInE,QAAI,oCAAoC,SAAS,KAC7C,+BAA+B,SAAS,KACxC,+BAA+B,SAAS,GAAG;AAC3C,oBAAc,gBAAgB;AAC9B,SAAG,MAAM,GAAG,gBAAgB;AAC5B,SAAG,OAAO,GAAG,SAAS;AACtB,SAAG,OAAO,GAAG,KAAK;AAClB,UAAI,aAAa,mBAAmB;AAChC,WAAG,cAAc,GAAG,QAAQ;AAC5B,WAAG,kBAAkB,GAAG,WAAW,GAAG,qBAAqB,GAAG,KAAK,GAAG,mBAAmB;aACtF;AACH,WAAG,UAAU,GAAG,WAAW,GAAG,mBAAmB;;AAErD,eAASA,KAAI,GAAGA,KAAI,+BAA+B,QAAQA,MAAK;AAC5D,uCAA+BA,EAAC,EAAE,qBAAoB;;AAE1D,eAASA,KAAI,GAAGA,KAAI,oCAAoC,QAAQA,MAAK;AACjE,4CAAoCA,EAAC,EAAE,0BAAyB;;AAEpE,SAAG,QAAQ,GAAG,KAAK;;AAGvB,QAAI,4BAA4B,SAAS,KAAK,uBAAuB,SAAS,GAAG;AAC7E,oBAAc,gBAAgB;AAC9B,SAAG,MAAM,GAAG,gBAAgB;AAC5B,eAASA,KAAI,GAAGA,KAAI,uBAAuB,QAAQA,MAAK;AACpD,+BAAuBA,EAAC,EAAE,kBAAiB;;AAE/C,eAASA,KAAI,GAAGA,KAAI,4BAA4B,QAAQA,MAAK;AACzD,oCAA4BA,EAAC,EAAE,uBAAsB;;;AAI7D,QAAI,iCAAiC,SAAS,KAAK,4BAA4B,SAAS,GAAG;AACvF,oBAAc,gBAAgB;AAC9B,SAAG,MAAM,GAAG,gBAAgB;AAC5B,SAAG,OAAO,GAAG,SAAS;AACtB,SAAG,OAAO,GAAG,KAAK;AAClB,UAAI,aAAa,mBAAmB;AAChC,WAAG,cAAc,GAAG,QAAQ;AAC5B,WAAG,kBAAkB,GAAG,WAAW,GAAG,qBAAqB,GAAG,KAAK,GAAG,mBAAmB;aACtF;AACH,WAAG,UAAU,GAAG,WAAW,GAAG,mBAAmB;;AAErD,eAASA,KAAI,GAAGA,KAAI,4BAA4B,QAAQA,MAAK;AACzD,oCAA4BA,EAAC,EAAE,kBAAiB;;AAEpD,eAASA,KAAI,GAAGA,KAAI,iCAAiC,QAAQA,MAAK;AAC9D,yCAAiCA,EAAC,EAAE,uBAAsB;;AAE9D,SAAG,QAAQ,GAAG,KAAK;;AAGvB,UAAM,kBAAkB,WAAW;AACnC,aAAS,KAAK,GAAG,KAAK,iBAAiB,MAAM;AACzC,SAAG,cAAc,GAAG,WAAW,EAAE;;AAErC,OAAG,YAAY,GAAG,kBAAkB,IAAI;AACxC,OAAG,YAAY,GAAG,YAAY,IAAI;AAElC,UAAM,mBAAmB,WAAW;AACpC,aAAS,KAAK,GAAG,KAAK,kBAAkB,MAAM;AAC1C,SAAG,yBAAyB,EAAE;;EAEtC;;;;;EAMA,KAAK,WACA,YACA,aAAa,KAAK,aAAW;AAE9B,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,IAAI,SAAS,uEAAuE;;AAG9F,UAAM,qBAAqB,KAAK,mBAAmB,SAAS;AAC5D,QAAI,CAAC,oBAAoB;AACrB,YAAM,IAAI,SAAS,+EAA+E,SAAS,EAAE;;AAGjH,UAAM,OAAO,mBAAmB;AAEhC,QAAI,KAAK,eAAe;AACpB,WAAK,WAAW,SAAS,MAAM,IAAI;AACnC,WAAK,gBAAgB;;AAGzB,SAAK,iBAAgB;AAErB,eAAW,MAAK;AAEhB,UAAM,EACF,eACA,gBACA,gBACA,oBACA,gBAAe,IACf;AAEJ,QAAI,WAAW,WAAW;AAGtB,oBAAc,IAAI,WAAW,SAAS;AAEtC,qBAAe,IAAI,KAAK,OAAO,UAAU;AAEzC,qBAAe,IAAI,KAAK,OAAO,UAAU;AACzC,iBAAW,YAAY,WAAW;WAC/B;AAKH,UAAI,WAAW,WAAW;AAKtB,uBAAe,IAAI,OAAO,SAAS;AAEnC,uBAAe,IAAI,KAAK,OAAO,UAAU;aACtC;AAIH,2BAAmB,IAAI,WAAW,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AACxD,wBAAgB,IAAI,WAAW,gBAAgB,CAAC,GAAG,GAAG,CAAC,CAAC;AACxD,cAAM,OAAO,QAAQ,oBAAoB,iBAAiBP,UAAS;AACnE,QAAAC,WAAU,CAAC,IAAI,KAAK,OAAM;AAC1B,QAAAA,WAAU,CAAC,IAAI,KAAK,OAAM;AAC1B,QAAAA,WAAU,CAAC,IAAI,KAAK,OAAM;AAC1B,sBAAcA,UAAS;AACvB,mBAAW,iBAAiBA,YAAWC,UAAS;AAEhD,uBAAe,IAAI,YAAY,oBAAoB,MAAMA,YAAWC,UAAS,CAAC;AAE9E,uBAAe,IAAI,KAAK,OAAO,gBAAgB,UAAU;AACzD,mBAAW,SAAS;AACpB,mBAAW,YAAY;;AAE3B,oBAAc,CAAC,IAAI,mBAAmB,KAAK,YAAY,cAAc;AACrE,oBAAc,CAAC,IAAI,mBAAmB,KAAK,YAAY,eAAe;;AAG1E,QAAI,WAAW,gBAAgB;AAC3B,YAAM,eAAe,KAAK,UAAU,WAAW,oBAAoB;QAC/D;QACA;QACA;QACA,eAAe,CAAC,CAAC,WAAW;OAC/B;AACD,UAAI,cAAc;AACd,cAAM,iBAAiB,aAAa;AACpC,cAAMK,QAAO,mBAAmB;AAChC,cAAM,aAAaA,MAAK,QAAQ,eAAe,EAAE;AACjD,mBAAW,aAAa;;;AAgBhC,WAAO;EACX;EAEA,UAAU,WACA,oBACAJ,SAKC;AAEP,UAAM,KAAK,KAAK;AAChB,UAAM,OAAO,mBAAmB;AAChC,UAAM,2BAA2B,mBAAmB,KAAK,YAAY,sBAAqB;AAC1F,UAAM,iBAAiBA,QAAO;AAC9B,UAAM,iBAAiBA,QAAO;AAC9B,UAAM,kBAAkB,KAAK;AAC7B,UAAM,gBAAgB,KAAK;AAC3B,UAAM,aAAa,KAAK,mBAAmB,gBAAgB,YAAY;MACnE,cAAc;MACd,MAAM,CAAC,GAAG,CAAC;KACd;AACD,eAAW,KAAI;AACf,eAAW,MAAK;AAChB,kBAAc,MAAK;AACnB,kBAAc,YAAY;AAC1B,kBAAc,YAAY;AAC1B,kBAAc,iBAAiB;AAC/B,kBAAc,iBAAiB;AAC/B,kBAAc,gBAAgB,CAAC,CAACA,QAAO;AACvC,kBAAc,cAAc;MACxB,KAAK,aAAaA,QAAO,cAAc,CAAC,IAAI,gBAAgB,iBAAiB,GAAG,kBAAkB;MAClG,KAAK,aAAaA,QAAO,cAAc,CAAC,IAAI,gBAAgB,iBAAiB,GAAG,mBAAmB;;AAEvG,OAAG,SAAS,GAAG,GAAG,GAAG,CAAC;AACtB,OAAG,UAAU,IAAI;AACjB,OAAG,OAAO,GAAG,UAAU;AACvB,OAAG,QAAQ,GAAG,SAAS;AACvB,OAAG,QAAQ,GAAG,KAAK;AACnB,OAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;AAClD,aAASG,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,YAAM,aAAa,MAAM,WAAW,SAAS;AAC7C,UAAI,WAAW,cAAc,WAAW,aACpC,WAAW,cAAc,WAAW,aACpC,WAAW,eAAe,GAAG;AAC7B;;AAEJ,YAAM,aAAY;;AAEtB,UAAM,MAAM,WAAW,KAAK,GAAG,CAAC;AAChC,UAAM,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK;AAEpE,YAAQ,IAAI,cAAc,MAAM;AAChC,eAAW,OAAM;AAEjB,QAAI,SAAS,GAAG;AACZ,aAAO;;AAGX,WAA0B,KAAK,SAAS,MAAM,MAAM;EACxD;EAEA,cACI,WACAH,SAMC;AAED,UAAM,qBAAqB,KAAK,mBAAmB,SAAS;AAC5D,QAAI,CAAC,oBAAoB;AACrB,YAAM,IAAI,SAAS,uDAAuD,SAAS,EAAE;;AAGzF,UAAM,KAAK,KAAK;AAChB,UAAM,OAAO,mBAAmB;AAChC,UAAM,iBAAiBA,QAAO;AAC9B,UAAM,iBAAiBA,QAAO;AAC9B,UAAM,kBAAkB,KAAK;AAC7B,UAAM,gBAAgB,KAAK;AAE3B,UAAM,2BAA2B,mBAAmB,KAAK,YAAY,sBAAqB;AAC1F,UAAM,aAAa,mBAAmB,oBAAoB,gBAAgB,aAAa;MACnF,cAAc;MACd,MAAM,CAAC,yBAAyB,OAAO,yBAAyB,MAAM;KACzE;AACD,eAAW,QAAQ,CAAC,yBAAyB,OAAO,yBAAyB,MAAM,CAAC;AACpF,eAAW,KAAI;AACf,eAAW,MAAK;AAEhB,kBAAc,MAAK;AACnB,kBAAc,YAAY;AAC1B,kBAAc,YAAY;AAC1B,kBAAc,iBAAiB;AAC/B,kBAAc,iBAAiB;AAC/B,kBAAc,gBAAgB,CAAC,CAACA,QAAO;AACvC,kBAAc,YAAY,CAAC,IAAI,KAAK,aAAaA,QAAO,UAAU,CAAC,IAAI,gBAAgB,iBAAiB,GAAG,kBAAkB;AAC7H,kBAAc,YAAY,CAAC,IAAI,KAAK,aAAaA,QAAO,UAAU,CAAC,IAAI,gBAAgB,iBAAiB,GAAG,mBAAmB;AAE9H,OAAG,SAAS,GAAG,GAAG,GAAG,CAAC;AACtB,OAAG,UAAU,IAAI;AACjB,OAAG,OAAO,GAAG,UAAU;AACvB,OAAG,QAAQ,GAAG,SAAS;AACvB,OAAG,QAAQ,GAAG,KAAK;AACnB,OAAG,MAAM,GAAG,mBAAmB,GAAG,gBAAgB;AAElD,QAAIA,QAAO,OAAO;AACd,MAAAA,QAAO,MAAM,eAAc;WACxB;AACH,eAASG,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,cAAM,QAAQ,KAAK,WAAWA,EAAC;AAC/B,cAAM,aAAa,MAAM,WAAW,SAAS;AAC7C,YAAI,WAAW,cAAc,WAAW,aACpC,WAAW,cAAc,WAAW,aACpC,WAAW,eAAe,GAAG;AAC7B;;AAEJ,cAAM,eAAc;;;AAI5B,UAAM,MAAM,WAAW,KAAK,GAAG,CAAC;AAEhC,eAAW,OAAM;AAEjB,UAAM,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK;AACpE,QAAI,SAAS,GAAG;AACZ,aAAO;;AAGX,WAA0B,KAAK,SAAS,MAAM,MAAM;EACxD;EAGA,aAAa,KAAa,MAAY;AAClC,WAAO,KAAK,MAAM,QAAQ;EAC9B;EAEA,aAAa,KAAa,MAAY;AAClC,WAAO,IAAI,KAAK,MAAM;EAC1B;EAEA,cAAc,WAAmBH,SAGhC;EAYD;EAEA,iBAAc;EAed;EAEA,eAAY;AAUR,WAAO;EACX;EAEA,uBAAoB;AAUhB,WAAO;EACX;;;;;;EAOA,cAAW;AAUP,SAAK,iBAAiB;EAC1B;EAEA,UAAO;AACH,QAAI,KAAK,YAAY;AACjB;;AAEJ,QAAI,KAAK,SAAS;AACd,WAAK,aAAY;;AAErB,SAAK,mBAAmB,QAAO;AAC/B,SAAK,aAAa;AAClB,SAAK,YAAY,SAAS,MAAM,IAAI;EACxC;;;;AEl9CE,SAAU,6BAA6B,YAAsB;AAE/D,QAAM,mBAAmB,CAAA;AACzB,QAAM,YAAY,CAAA;AAClB,MAAI,aAAa;AAEjB,SAAO,QAAQ,WAAW,OAAO,EAAE,QAAQ,CAAC,CAAC,UAAU,WAAW,MAAK;AAEnE,eAAW,aAAa,YAAY,QAAQ;AAExC,YAAM,gBAAgB,UAAU;AAChC,YAAM,eAAe,UAAU,aAAa,UAAU,WAAW,KAAK;AACtE,YAAM,OAAO,UAAU;AACvB,YAAM,UAAU,GAAG,YAAY,IAAI,cAAc,SAAS,IAAI,KAAK,EAAE;AAErE,UAAI,QAAQ,iBAAiB,OAAO;AAEpC,UAAI,YAAY;AAEhB,aAAO,CAAC,WAAW;AACf,YAAI,CAAC,OAAO;AACR,uBAAa,UAAU;AACvB,kBAAQ;YACJ;YACA,WAAW;YACX,aAAa;YACb,YAAY;;AAEhB,oBAAU,KAAK,KAAK;AACpB,2BAAiB,OAAO,IAAI;;AAGhC,cAAM,sBAAsB,cAAc,cAAc,qBAAqB,IAAK,iBAAiB,IAAI;AACvG,cAAM,qBAAqB,MAAM;AACjC,cAAM,sBAAsB,cAAc,oBAAoB,SAAS;AACvE,cAAM,qBAAqB,cAAc,QAAQ,SAAS;AAE1D,oBACK,MAAM,cAAc,uBAAwB,MAAS,QACrD,qBAAqB,sBAAuB;AAEjD,YAAI,WAAW;AACX,gBAAM;AACN,gBAAM,eAAe;;;AAK7B,UAAI,WAAW;AACX,kBAAU,mBAAmB;aAC1B;AACH,eAAO,iBAAiB,OAAO;AAC/B,gBAAQ;;;EAGpB,CAAC;AAED,QAAM,eAAuC;IACzC,cAAc,CAAA;;AAGlB,WAASK,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,UAAM,QAAQ,UAAUA,EAAC;AACzB,iBAAa,aAAa,KAAK;MAC3B,gBAAgB,MAAM;MACtB,aAAa,MAAM;MACnB,YAAY,MAAM;KACrB;;AAGL,aAAW,eAAe;AAC9B;;;ACjFA,IAAAC,iBAAA;SAAAA,gBAAA;;;;;ACWA,IAAM,iBAAN,MAAoB;EAChB;EACA;EACA;EACQ;EACA;EACA;EACA;EACA;EACA;EACA;EACR;EACA;EACA;EACQ;EACA;EACA;EAER,YAAY,eAA8B,SAAY;AAElD,SAAK,QAAQ,cAAc;AAE3B,SAAK,iBAAiB;AAEtB,SAAK,MAAM,YAAY,gBAAgB,SAAU,GAAC;AAC9C,QAAE,eAAc;IACpB;AAEA,SAAK,WAAW;AAMhB,SAAK,qBAAqB;AAM1B,SAAK,sBAAsB;AAM3B,SAAK,qBAAqB;AAM1B,SAAK,gBAAgB,WAAU;AAM/B,SAAK,SAAS;AAMd,SAAK,gBAAgB;AAMrB,SAAK,aAAa;AAElB,SAAK,sBAAsB;AAE3B,SAAK,YAAY;AAEjB,SAAK,kBAAkB;EAC3B;;;;EAKA,SAAM;AAEF,QAAI,CAAC,KAAK,SAAS,gBAAgB;AAC/B;;AAGJ,QAAI,CAAC,KAAK,sBAAsB,CAAC,KAAK,qBAAqB;AACvD;;AAGJ,UAAM,OAAO,GAAG,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,mBAAmB,IAAI,KAAK,kBAAkB;AACpJ,QAAI,KAAK,cAAc,MAAM;AACzB;;AAGJ,SAAK,SAAS;AACd,SAAK,gBAAgB;AACrB,SAAK,kBAAkB;AACvB,SAAK,6BAA6B;AAElC,UAAM,sBAAsB,KAAK,eAAe,eAAe,QAAQ;AAEvE,QAAI,KAAK,oBAAoB;AACzB,YAAM,iBAAiB,KAAK,MAAM,KAAK;QACnC,WAAW,KAAK;QAChB,YAAY,KAAK,SAAS;QAC1B,cAAc,KAAK,SAAS;QAC5B,YAAY,KAAK,SAAS;OAC7B;AACD,UAAI,mBAAmB,eAAe,iBAAiB,eAAe,kBAAkB;AACpF,aAAK,iBAAiB;AACtB,aAAK,kBAAkB;AACvB,aAAK;aACF;AACH,aAAK,sBAAsB;AAC3B,aAAK,iBAAiB;;;AAI9B,QAAI,KAAK,qBAAqB;AAC1B,UAAI,KAAK,cAAc,KAAK,WAAW,UAAU;AAC7C,cAAM,sBAAsB,KAAK,WAAW;AAC5C,YAAI,oBAAoB,CAAC,MAAM,KAAK,cAAc,CAAC,KAAK,oBAAoB,CAAC,MAAM,KAAK,cAAc,CAAC,GAAG;AACtG,eAAK,SAAS;AACd,eAAK,gBAAgB;AACrB,eAAK,mBAAmB,sBAAsB,IAAI;AAClD,eAAK,qBAAqB;AAC1B,eAAK,sBAAsB;AAC3B,cAAI,KAAK,oBAAoB;AACzB,iBAAK,kBAAkB;iBACpB;AACH,iBAAK,6BAA6B;;AAEtC,eAAK,qBAAqB;AAC1B;;;;AAKZ,QAAI,KAAK,oBAAoB;AACzB,UAAI,KAAK,eAAe,KAAK,WAAW,aAAa,KAAK,WAAW,mBAAmB;AACpF,cAAM,sBAAsB,KAAK,WAAW,aAAa,KAAK,WAAW;AACzE,YAAI,oBAAoB,CAAC,MAAM,KAAK,cAAc,CAAC,KAAK,oBAAoB,CAAC,MAAM,KAAK,cAAc,CAAC,GAAG;AACtG,eAAK,SAAS;AACd,eAAK,gBAAgB;AACrB,eAAK,qBAAqB;AAC1B,eAAK,sBAAsB;AAC3B;;;;AAKZ,QAAI,KAAK,uBAAwB,KAAK,sBAAsB,CAAC,KAAK,gBAAiB;AAC/E,WAAK,aAAa,KAAK,MAAM,KAAK;QAC9B,aAAa;QACb,mBAAmB;QACnB,WAAW,KAAK;OACnB;AACD,UAAI,KAAK,YAAY;AACjB,aAAK,SAAS;AACd,YAAI,KAAK,oBAAoB;AACzB,eAAK,kBAAkB;eACpB;AACH,eAAK,gBAAgB;;AAEzB,aAAK;iBACE,KAAK,oBAAoB;AAChC,aAAK,6BAA6B;AAClC,aAAK;;WAGN;AAEH,WAAK,aAAa,KAAK,MAAM,KAAK;QAC9B,WAAW,KAAK;OACnB;AAED,UAAI,KAAK,YAAY;AACjB,aAAK,SAAS;AACd,aAAK,gBAAgB;AACrB,aAAK;;;AAIb,SAAK,qBAAqB;AAC1B,SAAK,qBAAqB;AAC1B,SAAK,sBAAsB;EAC/B;EAEA,aAAU;AAEN,QAAI,KAAK,oBAAoB,GAAG;AAC5B;;AAGJ,QAAI,KAAK,4BAA4B;AACjC,WAAK,eAAe,wBAAwB,SAAS,KAAK,gBAAgB;QACtE,WAAW,KAAK;QAChB,YAAY,KAAK;OACpB;;AAGL,QAAI,KAAK,iBAAiB;AACtB,UAAI,KAAK,gBAAgB;AACrB,cAAM,aAAa,IAAI,WAAU;AACjC,mBAAW,aAAa,KAAK,eAAe;AAC5C,mBAAW,kBAAkB,KAAK,eAAe;AACjD,mBAAW,gBAAgB,KAAK,eAAe;AAC/C,mBAAW,WAAW,KAAK,eAAe;AAC1C,mBAAW,YAAY,KAAK;AAC5B,mBAAW,mBAAmB,KAAK,eAAe;AAClD,aAAK,eAAe,qBAAqB,SAAS,KAAK,gBAAgB,UAAU;AACjF,aAAK,iBAAiB;aACnB;AACH,aAAK,eAAe,qBAAqB,SAAS,KAAK,gBAAgB,KAAK,UAAU;;WAEvF;;AAIP,QAAI,KAAK,UAAU,KAAK,eAAe,KAAK,WAAW,cAAc,KAAK,WAAW,WAAW;AAE5F,UAAI,KAAK,WAAW,YAAY;AAE5B,cAAM,iBAAiB,KAAK,WAAW,WAAW;AAElD,YAAI,KAAK,wBAAwB,gBAAgB;AAE7C,cAAI,KAAK,wBAAwB,QAAW;AACxC,iBAAK,eAAe,WAAW,SAAS,KAAK,gBAAgB;cACzD,YAAY,KAAK,MAAM,QAAQ,KAAK,mBAAmB;aAC1D;;AAGL,eAAK,eAAe,aAAa,SAAS,KAAK,gBAAgB,KAAK,UAAU;AAC9E,eAAK,sBAAsB;;;AAInC,WAAK,eAAe,QAAQ,SAAS,KAAK,gBAAgB,KAAK,UAAU;AAEzE,UAAI,KAAK,WAAW,UAAU;AAC1B,aAAK,gBAAgB;AACrB,aAAK,eAAe,eAAe,SAAS,KAAK,gBAAgB,KAAK,UAAU;;WAGjF;AAEH,UAAI,KAAK,wBAAwB,QAAW;AACxC,aAAK,eAAe,WAAW,SAAS,KAAK,gBAAgB;UACzD,YAAY,KAAK,MAAM,QAAQ,KAAK,mBAAmB;SAC1D;AACD,aAAK,sBAAsB;;AAG/B,WAAK,eAAe,WAAW,SAAS,KAAK,gBAAgB;QACzD,WAAW,KAAK;OACnB;;AAGL,SAAK,aAAa;AAElB,SAAK,kBAAkB;EAC3B;;;;ACnQJ,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAE5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAM,YAAY,WAAU;AAI5B,IAAM,kBAAN,MAAqB;EACjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;EAKA,YAAY,MAAY,SAAO;AAI3B,SAAK,QAAQ;AACb,SAAK,WAAW;AAChB,SAAK,iBAAiB,WAAU;AAChC,SAAK,gBAAgB,WAAU;AAC/B,SAAK,WAAW;AAChB,SAAK,SAAS;AACd,SAAK,UAAU;AACf,SAAK,eAAe;AACpB,SAAK,YAAY;AACjB,SAAK,SAAS;AAEd,SAAK,sBAAsB;AAC3B,SAAK,eAAe;AACpB,SAAK,mBAAmB;AACxB,SAAK,uBAAuB;AAC5B,SAAK,uBAAuB;AAC5B,SAAK,aAAa,WAAU;AAC5B,SAAK,UAAU,WAAU;AAEzB,SAAK,gBAAgB,WAAU;AAC/B,SAAK,gBAAgB,WAAU;AAC/B,SAAK,kBAAkB,WAAU;AACjC,SAAK,eAAe;AAEpB,SAAK,gBAAgB,KAAK,MAAM,OAAO,aAAa,IAAI,MAAK;AACzD,WAAK,eAAe;IACxB,CAAC;AAED,SAAK,gBAAgB,KAAK,MAAM,OAAO,aAAa,IAAI,MAAK;AACzD,WAAK,eAAe;IACxB,CAAC;AAED,SAAK,UAAU,KAAK,MAAM,OAAO,OAAO,IAAI,MAAK;AAC7C,WAAK,mBAAkB;AACvB,WAAK,kBAAiB;IAC1B,CAAC;EACL;EAEA,oBAAiB;EAuBjB;EAEA,qBAAkB;AACd,QAAI,KAAK,cAAc;AACnB,WAAK,aAAa,QAAO;AACzB,WAAK,eAAe;;AAExB,QAAI,KAAK,sBAAsB;AAC3B,WAAK,qBAAqB,QAAO;AACjC,WAAK,uBAAuB;;EAEpC;EAEA,qBAAkB;EA8BlB;EAEA,oBAAiB;AACb,QAAI,KAAK,aAAa,KAAK,cAAc;AACrC,oBAAc,KAAK,YAAW,GAAI,KAAK,YAAY,KAAK,OAAO;AAC/D,UAAG,CAAC,YAAY,KAAK,SAAS,KAAK,aAAa,QAAQ,GAAG;AACvD,aAAK,mBAAkB;AACvB,aAAK,kBAAiB;;;EAGlC;;;;;;EAMA,gBAAgB,cAAY;AACxB,SAAK,gBAAgB;EACzB;;;;;;;;EASA,kBAAkB,MAAM;IACpB,MAAM;IACN,OAAO,CAAC,GAAE,GAAE,CAAC;KAChB;EAaD;;;;;EAMA,qBAAkB;AACd,SAAK,mBAAkB;AACvB,SAAK,sBAAsB;EAC/B;;;;EAKA,aAAU;AAEN,QAAI,KAAK,wBAAuB,GAAI;AAChC,WAAK,YAAY;AACjB,aAAO;;AAGX,UAAM,SAAS,KAAK,MAAM;AAE1B,QAAI,SAAS,YAAY,OAAO,KAAK,OAAO,MAAM,OAAO,OAAO;AAChE,oBAAgB,QAAQ,KAAK,YAAW,GAAI,KAAK,aAAa;AAE9D,UAAM,WAAW,KAAK,YAAW;AACjC,SAAK,cAAc,CAAC,KAAK,SAAS,OAAO,KAAK,QAAQ;AAEtD,aAAS,YAAY,MAAM;AAE3B,UAAM,SAAS,cAAc,QAAQ,KAAK,aAAa;AACvD,UAAM,OAAO,WAAU;AAEvB,YAAQ,OAAO,KAAK,UAAU,IAAI;AAClC,YAAQ,MAAM,MAAM;AAEpB,QAAI,OAAO,KAAK;AACZ,YAAMC,KAAI,KAAK,CAAC;AAChB,WAAK,CAAC,IAAI,KAAK,CAAC;AAChB,WAAK,CAAC,IAAIA;;AAGd,SAAK,UAAU,QAAQ,IAAI;AAC3B,SAAK,SAAS,KAAK,KAAK,KAAK,CAAC,IAAI,KAAK,OAAO;AAC9C,SAAK,WAAW,KAAK,MAAM,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;AAC3C,SAAK,YAAY;EACrB;EAEA,0BAAuB;AACnB,UAAM,SAAS,KAAK,MAAM;AAC1B,UAAM,cAAc,cAAc,QAAQ,OAAO,MAAM,OAAO,KAAKL,UAAS,CAAC;AAC7E,UAAM,YAAY,WAAW,aAAa,OAAO,SAASC,UAAS;AACnE,QAAI,eAAe,UAAU,SAAS;AACtC,WAAQ,gBAAgB;EAC5B;;;;;;EAOA,cAAW;AACP,WAAO,KAAK;EAChB;;;;;;EAOA,YAAY,UAAQ;AAChB,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,eAAe;EACxB;;;;;;;;EASA,kBAAkBK,YAAS;AACvB,UAAM,SAAS,KAAK,MAAM;AAC1B,UAAM,mBAAmB,KAAK,IAAI,SAAS,KAAK,MAAM,OAAO,MAAM,QAAQ,OAAO,GAAG,CAAC;AACtF,UAAM,uBAAuB,OAAO,WAAW;AAE/C,UAAM,MAAM,qBAAqB,SAAS,GAAG,EAAE;AAE/C,UAAM,MAAM,qBAAqB,SAAS,EAAE;AAC5C,UAAM,IAAI,CAAC,GAAG,GAAG,IAAM,CAAC;AACxB,UAAM,UAAU,QAAQ,GAAG,GAAG,IAAI,QAAQ,GAAG,GAAG;AAChD,UAAM,WAAWH;AACjB,WAAO,WAAW,UAAUG,YAAW,SAASF,YAAW,WAAW,QAAQ;AAC9E,UAAM,iBAAiB,cAAc,QAAQ,UAAU,OAAO,KAAKJ,UAAS,CAAC;AAC7E,UAAM,cAAc,QAAQ,OAAO,KAAK,cAAc,gBAAgB,kBAAkBC,UAAS,GAAGC,UAAS;AAC7G,SAAK,YAAY,WAAW;EAChC;;;;;EAMA,cAAW;AACP,WAAQ,KAAK,eAAgB,KAAK,iBAAiB,KAAK,MAAM,OAAO;EACzE;;;;;;;EAQA,cAAc,QAAQ,UAAQ;AAC1B,QAAI,CAAC,KAAK,WAAW;AACjB;;AAEJ,QAAI,WAAW,KAAK,aAAa,GAAG;AAChC;;AAEJ,UAAM,SAAS,KAAK,MAAM;AAC1B,QAAI,KAAK,CAAC;AACV,UAAM,KAAK,CAAC;AACZ,QAAI,OAAO,QAAQ,CAAC,MAAM,GAAG;AACzB,WAAK,CAAC;;AAEV,SAAK,YAAY,CAAC,KAAK;AACvB,SAAK,UAAU,KAAK;AACpB,SAAK,SAAS,MAAM,KAAK,QAAQ,MAAM,KAAK,KAAK,IAAI;AACrD,UAAM,MAAM;MACR,KAAK,UAAU,KAAK,IAAI,KAAK,MAAM,IAAI,KAAK,IAAI,KAAK,QAAQ;MAC7D,KAAK,UAAU,KAAK,IAAI,KAAK,MAAM;MACnC,KAAK,UAAU,KAAK,IAAI,KAAK,MAAM,IAAI,KAAK,IAAI,KAAK,QAAQ;;AAEjE,QAAI,OAAO,QAAQ,CAAC,MAAM,GAAG;AACzB,YAAMG,KAAI,IAAI,CAAC;AACf,UAAI,CAAC,IAAI,IAAI,CAAC;AACd,UAAI,CAAC,IAAIA;;AAGb,UAAM,aAAa,QAAQ,QAAQ,OAAO,MAAM,OAAO,KAAK,WAAU,CAAE,CAAC;AACzE,UAAM,WAAW,KAAK,YAAW;AACjC,YAAQ,KAAK,QAAQ;AACrB,QAAI,SAAS,YAAY,KAAK,UAAU,OAAO,OAAO;AACtD,aAAS,YAAY,MAAM;AAC3B,UAAM,SAAS,cAAc,QAAQ,KAAK,aAAa;AACvD,WAAO,EAAE,KAAK,OAAO,CAAC;AACtB,WAAO,EAAE,KAAK,OAAO,CAAC;AACtB,WAAO,EAAE,KAAK,OAAO,CAAC;AACtB,UAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;AAC/C,WAAO,MAAM,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;AAChD,YAAQ,OAAO,KAAK,cAAc,OAAO,UAAU,GAAG,OAAO,IAAI;AACjE,WAAO,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AAC5C,SAAK,UAAS;EAClB;;;;;;EAOA,YAAS;AACL,QAAI,KAAK,QAAQ;AACb;;AAEJ,QAAI,KAAK,eAAe;AACpB,WAAK,mBAAkB;AACvB,WAAK,cAAc,MAAM,aAAa;;AAE1C,QAAI,KAAK,qBAAqB;AAC1B,WAAK,mBAAkB;AACvB,WAAK,kBAAiB;;AAE1B,SAAK,SAAS;EAClB;;;;;;EAOA,YAAS;AACL,QAAI,CAAC,KAAK,QAAQ;AACd;;AAEJ,QAAI,KAAK,eAAe;AACpB,WAAK,cAAc,MAAM,aAAa;;AAE1C,QAAI,KAAK,qBAAqB;AAC1B,WAAK,mBAAkB;;AAE3B,SAAK,SAAS;EAClB;;;;EAKA,WAAQ;AACJ,SAAK,YAAY;EACrB;EAEA,UAAO;AACH,SAAK,mBAAkB;AACvB,SAAK,MAAM,OAAO,aAAa,MAAM,KAAK,aAAa;AACvD,SAAK,MAAM,OAAO,aAAa,MAAM,KAAK,aAAa;AACvD,SAAK,MAAM,OAAO,OAAO,MAAM,KAAK,OAAO;EAC/C;;;;AC1ZJ,IAAM,YAAY,WAAU;AAC5B,IAAM,UAAU,WAAU;AAE1B,IAAME,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAE5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAK5B,IAAM,gBAAN,MAAmB;EAEf;EAEA,YAAY,MAAI;AACZ,SAAK,QAAQ;EACjB;;;;;;;;;;;;EAaA,iBAAiB,wBAAwB,iBAAiB,YAAU;AAEhE,QAAI,wBAAwB;AAE5B,UAAM,SAAS,KAAK,MAAM;AAE1B,QAAI,wBAAwB;AACxB,YAAM,mBAAmB,QAAQ,wBAAwB,OAAO,KAAKL,UAAS;AAC9E,YAAM,kBAAkB,QAAQ,gBAAgB;AAChD,8BAAyB,kBAAkB;;AAG/C,QAAI,OAAO,mBAAmB,2BAA2B;AAErD,aAAO,gBAAgB,QAAQ,OAAO,gBAAgB,QAAQ;AAE9D,YAAM,sBAAsB,KAAK,WAAW,iBAAiBG,UAAS;AACtE,YAAM,SAAS,QAAQ,qBAAqB,OAAO,KAAKE,UAAS;AACjE,YAAM,UAAU,cAAc,cAAc,MAAM,GAAG,CAAC,YAAY,CAAA,CAAE;AAEpE,aAAO,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC;AAChG,aAAO,OAAO,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC;AAEpG,UAAI,wBAAwB;AAQxB,cAAM,eAAe,QAAQ,wBAAwB,OAAO,KAAKL,UAAS;AAC1E,cAAM,kBAAkB,QAAQ,YAAY;AAC5C,cAAMM,cAAa,cAAc,cAAc,QAAQ,OAAO,MAAM,OAAO,KAAKL,UAAS,CAAC,GAAG,eAAe;AAC5G,eAAO,OAAO,CAAC,OAAO,IAAI,CAAC,IAAIK,YAAW,CAAC,GAAG,OAAO,IAAI,CAAC,IAAIA,YAAW,CAAC,GAAG,OAAO,IAAI,CAAC,IAAIA,YAAW,CAAC,CAAC;;eAGvG,OAAO,mBAAmB,qBAAqB;AAMtD,YAAM,YAAY,KAAK,WAAW,iBAAiBH,UAAS;AAE5D,aAAO,gBAAgB,QAAQ,OAAO,gBAAgB,QAAQ;AAK9D,YAAM,YAAY,KAAK,WAAW,iBAAiBC,UAAS;AAC5D,YAAM,SAAS,QAAQ,WAAW,WAAWC,UAAS;AACtD,YAAM,iBAAiB,cAAc,cAAc,QAAQ,OAAO,MAAM,OAAO,KAAKL,UAAS,CAAC,GAAG,CAAC,YAAYC,UAAS;AACvH,YAAM,UAAU,QAAQ,QAAQ,gBAAgBC,UAAS;AAEzD,aAAO,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC;AAChG,aAAO,OAAO,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC;;AAGxG,WAAO;EACX;EAEA,WAAWK,YAAW,UAAQ;AAE1B,UAAM,SAAS,KAAK,MAAM;AAC1B,UAAM,uBAAuB,OAAO,WAAW;AAG/C,UAAM,MAAM,qBAAqB,SAAS,GAAG,EAAE;AAE/C,UAAM,MAAM,qBAAqB,SAAS,EAAE;AAC5C,UAAM,IAAI,CAAC,GAAG,GAAG,IAAM,CAAC;AACxB,UAAM,UAAU,QAAQ,GAAG,GAAG,IAAI,QAAQ,GAAG,GAAG;AAEhD,WAAO,WAAW,UAAUA,YAAW,SAAS,WAAW,SAAS,QAAQ;AAE5E,WAAO;EACX;EAEA,UAAO;EACP;;;;ACjHJ,IAAM,mBAAN,MAAsB;EAElB;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,MAAW,aAAa,SAAS,QAAQ,SAAO;AAExD,SAAK,QAAQ;AAEb,UAAM,cAAc,KAAK,MAAM;AAE/B,gBAAY,iBAAiB,cAAc,KAAK,qBAAqB,MAAK;AACtE,aAAO,YAAY;IACvB,CAAC;AAED,gBAAY,iBAAiB,cAAc,KAAK,qBAAqB,MAAK;AACtE,aAAO,YAAY;AACnB,kBAAY,MAAM,SAAS;IAC/B,CAAC;AAED,aAAS,iBAAiB,aAAa,KAAK,oBAAoB,CAAC,MAAK;AAClE,4BAAsB,GAAG,aAAa,OAAO,gBAAgB;IACjE,CAAC;AAED,gBAAY,iBAAiB,aAAa,KAAK,oBAAoB,CAAC,MAAK;AACrE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,4BAAsB,GAAG,aAAa,OAAO,gBAAgB;AAC7D,aAAO,YAAY;IACvB,CAAC;AAED,gBAAY,iBAAiB,WAAW,KAAK,kBAAkB,CAAC,MAAK;AACjE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;IAER,CAAC;EACL;EAEA,QAAK;EACL;EAEA,UAAO;AAEH,UAAM,cAAc,KAAK,MAAM;AAE/B,aAAS,oBAAoB,aAAa,KAAK,iBAAiB;AAChE,gBAAY,oBAAoB,cAAc,KAAK,kBAAkB;AACrE,gBAAY,oBAAoB,cAAc,KAAK,kBAAkB;AACrE,gBAAY,oBAAoB,aAAa,KAAK,iBAAiB;AACnE,gBAAY,oBAAoB,WAAW,KAAK,eAAe;EACnE;;AAGJ,SAAS,sBAAsB,OAAO,aAAaC,YAAS;AACxD,MAAI,CAAC,OAAO;AACR,YAAQ,OAAO;AACf,IAAAA,WAAU,CAAC,IAAI,MAAM;AACrB,IAAAA,WAAU,CAAC,IAAI,MAAM;SAClB;AACH,UAAM,EAAE,MAAM,IAAG,IAAK,YAAY,sBAAqB;AACvD,IAAAA,WAAU,CAAC,IAAI,MAAM,UAAU;AAC/B,IAAAA,WAAU,CAAC,IAAI,MAAM,UAAU;;AAEnC,SAAOA;AACX;;;ACrEA,IAAMC,yBAAwB,SAAU,OAAOC,YAAS;AACpD,MAAI,CAAC,OAAO;AACR,YAAQ,OAAO;AACf,IAAAA,WAAU,CAAC,IAAI,MAAM;AACrB,IAAAA,WAAU,CAAC,IAAI,MAAM;SAClB;AACH,QAAI,UAAU,MAAM;AACpB,QAAI,kBAAkB;AACtB,QAAI,iBAAiB;AACrB,WAAO,QAAQ,cAAc;AACzB,yBAAmB,QAAQ;AAC3B,wBAAkB,QAAQ;AAC1B,gBAAU,QAAQ;;AAEtB,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ;AAC7B,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ;;AAEjC,SAAOA;AACX;AAKA,IAAM,gCAAN,MAAmC;EAC/B;EACA;EACA;EACA;EACA;EAEA,YAAY,MAAW,aAAiB,SAAa,QAAY,SAAW;AAExE,SAAK,QAAQ;AAEb,UAAM,iBAAiB,YAAY;AACnC,UAAM,kBAAkB,YAAY;AAEpC,UAAM,oBAAoB,WAAU;AACpC,UAAM,gBAAgB,WAAU;AAChC,UAAM,gBAAgB,WAAU;AAChC,UAAM,YAAY,WAAU;AAE5B,UAAM,yBAAyB,CAAA;AAC/B,UAAMC,UAAS,KAAK,MAAM;AAE1B,QAAI,aAAa;AACjB,QAAI,eAAe;AACnB,QAAI,cAAc;AAElB,SAAK,WAAW,KAAK,OAAO,OAAO,IAAI,MAAK;AACxC,oBAAc;IAClB,CAAC;AAED,QAAI,kBAAkB;AACtB,QAAI,kBAAkB;AACtB,QAAI,sBAAsB;AAE1B,IAAAA,QAAO,iBAAiB,cAAc,KAAK,2BAA2B,CAAC,UAAS;AAE5E,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,YAAM,eAAc;AAEpB,YAAM,UAAU,MAAM;AACtB,YAAM,iBAAiB,MAAM;AAE7B,aAAO,iBAAiB,KAAK,IAAG;AAEhC,UAAI,QAAQ,WAAW,KAAK,eAAe,WAAW,GAAG;AAErD,uBAAe,OAAO;AAEtB,QAAAF,uBAAsB,QAAQ,CAAC,GAAG,iBAAiB;AAEnD,YAAI,QAAQ,eAAe;AAEvB,yBAAe,gBAAgB;AAC/B,yBAAe,sBAAsB;AACrC,yBAAe,OAAM;AAErB,cAAI,CAAC,QAAQ,UAAU;AAEnB,gBAAI,eAAe,UAAU,eAAe,iBAAiB,eAAe,cAAc,eAAe,WAAW,UAAU;AAE1H,8BAAgB,YAAY,eAAe,WAAW,QAAQ;AAE9D,kBAAI,CAAC,QAAQ,eAAe,gBAAgB,WAAU,GAAI;AACtD,gCAAgB,UAAS;;mBAG1B;AAEH,kBAAI,QAAQ,YAAY;AACpB,gCAAgB,kBAAkB,OAAO,gBAAgB;qBACtD;AACH,gCAAgB,YAAY,KAAK,OAAO,IAAI;;AAGhD,kBAAI,CAAC,QAAQ,eAAe,gBAAgB,WAAU,GAAI;AACtD,gCAAgB,UAAS;;;;;aAMtC;AACH,uBAAe;;AAGnB,aAAO,uBAAuB,SAAS,QAAQ,QAAQ;AACnD,+BAAuB,KAAK,WAAU,CAAE;;AAG5C,eAASG,KAAI,GAAG,MAAM,QAAQ,QAAQA,KAAI,KAAK,EAAEA,IAAG;AAChD,QAAAH,uBAAsB,QAAQG,EAAC,GAAG,uBAAuBA,EAAC,CAAC;;AAG/D,mBAAa,QAAQ;IACzB,CAAC;AAED,IAAAD,QAAO,iBAAiB,YAAY,KAAK,yBAAyB,MAAK;AACnE,UAAI,gBAAgB,YAAW,GAAI;AAC/B,wBAAgB,SAAQ;;AAE5B,wBAAkB;AAClB,wBAAkB;AAClB,4BAAsB;IAC1B,CAAC;AAED,IAAAA,QAAO,iBAAiB,aAAa,KAAK,0BAA0B,CAAC,UAAS;AAE1E,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,YAAM,gBAAe;AACrB,YAAM,eAAc;AAEpB,UAAI,aAAa;AAEb;;AAGJ,oBAAc;AAId,YAAM,iBAAiB,KAAK;AAC5B,YAAM,cAAc,eAAe,CAAC;AACpC,YAAM,eAAe,eAAe,CAAC;AAErC,YAAM,UAAU,MAAM;AAEtB,UAAI,MAAM,QAAQ,WAAW,YAAY;AAGrC;;AAGJ,UAAI,eAAe,GAAG;AAElB,QAAAF,uBAAsB,QAAQ,CAAC,GAAG,aAAa;AAM/C,gBAAQ,eAAe,uBAAuB,CAAC,GAAG,SAAS;AAE3D,cAAM,YAAY,UAAU,CAAC;AAC7B,cAAM,YAAY,UAAU,CAAC;AAE7B,YAAI,OAAO,qBAAqB,SAAS,KAAK,IAAI,SAAS,IAAI,QAAQ,iBAAiB,KAAK,IAAI,SAAS,IAAI,QAAQ,gBAAgB;AAClI,uBAAa,OAAO,gBAAgB;AACpC,iBAAO,mBAAmB;;AAG9B,YAAI,QAAQ,UAAU;AAElB,gBAAM,SAAS,KAAK;AAIpB,cAAI,OAAO,mBAAmB,2BAA2B;AAErD,kBAAM,cAAc;AACpB,kBAAM,iBAAiB,CAAC,GAAG,GAAG,CAAC;AAE/B,kBAAM,QAAQ,KAAK,IAAI,cAAc,QAAQ,QAAQ,gBAAgB,KAAK,OAAO,KAAK,CAAA,CAAE,CAAC,IAAI,KAAK,OAAO,WAAW;AACpH,kBAAM,iBAAiB,QAAQ,KAAK,IAAK,OAAO,sBAAsB,MAAM,IAAK,KAAK,KAAK,GAAK;AAEhG,oBAAQ,aAAc,YAAY,iBAAiB,eAAgB,QAAQ;AAC3E,oBAAQ,aAAc,YAAY,iBAAiB,eAAgB,QAAQ;iBAExE;AAEH,oBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,YAAY,gBAAgB,QAAQ;AAC/F,oBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,YAAY,gBAAgB,QAAQ;;eAGhG;AAEC,kBAAQ,gBAAiB,YAAY,eAAgB,QAAQ,mBAAmB;AAChF,kBAAQ,gBAAiB,YAAY,gBAAiB,QAAQ,mBAAmB;;iBAclF,eAAe,GAAG;AAEzB,cAAM,SAAS,QAAQ,CAAC;AACxB,cAAM,SAAS,QAAQ,CAAC;AAExB,QAAAA,uBAAsB,QAAQ,aAAa;AAC3C,QAAAA,uBAAsB,QAAQ,aAAa;AAE3C,cAAM,kBAAkB,kBAAkB,uBAAuB,CAAC,GAAG,uBAAuB,CAAC,CAAC;AAC9F,cAAM,qBAAqB,kBAAkB,eAAe,aAAa;AAEzE,cAAM,aAAa,WAAU;AAE7B,gBAAQ,iBAAiB,oBAAoB,UAAU;AAEvD,cAAM,YAAY,WAAW,CAAC;AAC9B,cAAM,YAAY,WAAW,CAAC;AAE9B,cAAM,SAAS,KAAK;AAIpB,cAAM,KAAK,SAAS,CAAC,OAAO,OAAO,OAAO,KAAK,GAAG,CAAC,OAAO,OAAO,OAAO,KAAK,CAAC;AAC9E,cAAM,KAAK,SAAS,uBAAuB,CAAC,GAAG,uBAAuB,CAAC,CAAC;AAExE,cAAM,cAAc,KAAK,MAAM,QAAQ;AAEvC,gBAAQ,aAAa;AAErB,YAAI,KAAK,IAAI,UAAU,IAAI,GAAK;AAI5B,cAAI,OAAO,mBAAmB,2BAA2B;AACrD,kBAAM,iBAAiB,eAAe,aAAa,eAAe,WAAW,WAAW,KAAK,OAAO,MAAM;AAE1G,kBAAM,QAAQ,KAAK,IAAI,QAAQ,QAAQ,gBAAgB,KAAK,OAAO,KAAK,CAAA,CAAE,CAAC,CAAC;AAC5E,kBAAM,iBAAiB,QAAQ,KAAK,IAAK,OAAO,sBAAsB,MAAM,IAAK,KAAK,KAAK,GAAK;AAEhG,oBAAQ,aAAc,YAAY,iBAAiB,eAAgB,QAAQ;AAC3E,oBAAQ,aAAc,YAAY,iBAAiB,eAAgB,QAAQ;iBAExE;AAEH,oBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,YAAY,gBAAgB,QAAQ;AAC/F,oBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,YAAY,gBAAgB,QAAQ;;;AAKvG,eAAO,mBAAmB;;AAG9B,eAASG,KAAI,GAAGA,KAAI,YAAY,EAAEA,IAAG;AACjC,QAAAH,uBAAsB,QAAQG,EAAC,GAAG,uBAAuBA,EAAC,CAAC;;IAEnE,CAAC;EACL;EAEA,QAAK;EACL;EAEA,UAAO;AACH,UAAMD,UAAS,KAAK,MAAM;AAC1B,IAAAA,QAAO,oBAAoB,cAAc,KAAK,wBAAwB;AACtE,IAAAA,QAAO,oBAAoB,YAAY,KAAK,sBAAsB;AAClE,IAAAA,QAAO,oBAAoB,aAAa,KAAK,uBAAuB;AACpE,SAAK,MAAM,OAAO,OAAO,MAAM,KAAK,QAAQ;EAChD;;;;AClRG,IAAM,YAAoB;AAkD1B,IAAM,iBAAyB;AAM/B,IAAM,eAAuB;AAK7B,IAAM,kBAA0B;AAKhC,IAAM,iBAAyB;AAoB/B,IAAM,YAAoB;AAK1B,IAAM,YAAoB;AAK1B,IAAM,YAAoB;AAK1B,IAAM,YAAoB;AAK1B,IAAM,YAAoB;AAK1B,IAAM,YAAoB;AAoB1B,IAAM,QAAgB;AAetB,IAAM,QAAgB;AAKtB,IAAM,QAAgB;AA4DtB,IAAM,QAAgB;AAUtB,IAAM,QAAgB;AAoBtB,IAAM,QAAgB;AAKtB,IAAM,QAAgB;AAUtB,IAAM,QAAgB;AA2EtB,IAAM,UAAkB;AAKxB,IAAM,eAAuB;;;ACzVpC,IAAM,YAAY,WAAU;AAErB,IAAME,yBAAwB,SAAU,OAAOC,YAAS;AAC3D,MAAI,CAAC,OAAO;AACR,YAAQ,OAAO;AACf,IAAAA,WAAU,CAAC,IAAI,MAAM;AACrB,IAAAA,WAAU,CAAC,IAAI,MAAM;SAClB;AACH,QAAI,UAAU,MAAM;AACpB,QAAI,kBAAkB;AACtB,QAAI,iBAAiB;AACrB,QAAI,eAAe;AACnB,QAAI,eAAe;AACnB,WAAO,QAAQ,cAAc;AAC3B,yBAAmB,QAAQ;AAC3B,wBAAkB,QAAQ;AAC1B,sBAAgB,QAAQ;AACxB,sBAAgB,QAAQ;AACxB,gBAAU,QAAQ;;AAEpB,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ,eAAe;AAC5C,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ,eAAe;;AAEhD,SAAOA;AACX;AAKM,IAAO,6BAAP,MAAiC;EACnC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,MAAW,aAAiB,SAAa,QAAY,SAAW;AAExE,SAAK,QAAQ;AAEb,UAAM,iBAAiB,YAAY;AAEnC,QAAI,QAAQ;AACZ,QAAI,QAAQ;AACZ,QAAI,YAAY;AAChB,QAAI,YAAY;AAChB,QAAI,eAAe;AACnB,QAAI,eAAe;AAEnB,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,QAAI,kBAAkB;AACtB,UAAM,iBAAiB,WAAU;AAEjC,QAAI,mCAAmC;AAEvC,UAAM,cAAc,KAAK,MAAM;AAE/B,UAAM,UAAU,CAAA;AAEhB,aAAS,iBAAiB,WAAW,KAAK,0BAA0B,CAAC,MAAK;AAItE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,YAAM,UAAU,EAAE;AAClB,cAAQ,OAAO,IAAI;IACvB,CAAC;AAED,aAAS,iBAAiB,SAAS,KAAK,wBAAwB,CAAC,MAAK;AAIlE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAkB;AAC9C;;AAEJ,YAAM,UAAU,EAAE;AAClB,cAAQ,OAAO,IAAI;IACvB,CAAC;AAED,aAAS,kBAAkB,OAAO,MAAI;AAClC,kBAAY,MAAM,SAAS;AAC3B,4BAAqB;AACrB,UAAI,MAAM;AACN,yBAAgB;;IAExB;AAEA,aAAS,wBAAqB;AAC1B,qBAAe;AACf,qBAAe;AAEf,cAAQ,OAAO,iBAAiB,CAAC;AACjC,cAAQ,OAAO,iBAAiB,CAAC;AACjC,kBAAY,OAAO,iBAAiB,CAAC;AACrC,kBAAY,OAAO,iBAAiB,CAAC;IACzC;AAEA,aAAS,mBAAgB;AACrB,qBAAe,gBAAgB,OAAO;AACtC,qBAAe,sBAAsB;AACrC,qBAAe,OAAM;AAErB,UAAI,eAAe,UAAU,eAAe,iBAAiB,eAAe,cAAc,eAAe,WAAW,UAAU;AAC1H,0BAAkB;AAClB,uBAAe,IAAI,eAAe,WAAW,QAAQ;aAClD;AACH,0BAAkB;;IAE1B;AAEA,gBAAY,iBAAiB,aAAa,KAAK,oBAAoB,CAAC,MAAK;AAErE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,cAAQ,EAAE,OAAO;QAEb,KAAK;AAED,cAAI,QAAQ,SAAS,KAAK,QAAQ,UAAU;AAExC,4BAAgB;AAEhB,8BAAiB;iBAEd;AAEH,4BAAgB;AAEhB,8BAAkB,KAAK;;AAG3B;QAEJ,KAAK;AAED,4BAAkB;AAElB,4BAAiB;AAEjB;QAEJ,KAAK;AAED,2BAAiB;AAEjB,cAAI,QAAQ,eAAe;AAEvB,8BAAiB;;AAGrB;QAEJ;AACI;;IAEZ,CAAC;AAED,aAAS,iBAAiB,aAAa,KAAK,4BAA4B,CAAC,MAAK;AAE1E,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,UAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,gBAAgB;AACvD;;AAKJ,YAAM,iBAAiB,KAAK;AAE5B,YAAM,cAAc,eAAe,CAAC;AACpC,YAAM,eAAe,eAAe,CAAC;AACrC,YAAM,IAAI,OAAO,iBAAiB,CAAC;AACnC,YAAM,IAAI,OAAO,iBAAiB,CAAC;AAEnC,YAAM,UAAU,QAAQ,SAAS,KAAK,QAAQ,YAAa,CAAC,QAAQ,iBAAiB,mBAAqB,QAAQ,iBAAiB;AAEnI,YAAM,SAAS,SAAS,qBAAqB,EAAE,YAAa,IAAI;AAChE,YAAM,SAAS,SAAS,qBAAqB,EAAE,YAAa,IAAI;AAEhE,UAAI,SAAS;AAET,cAAM,SAAS,KAAK;AAIpB,YAAI,OAAO,mBAAmB,2BAA2B;AAErD,gBAAM,QAAQ,KAAK,IAAI,kBAAkB,QAAQ,QAAQ,gBAAgB,KAAK,OAAO,KAAK,CAAA,CAAE,CAAC,IAAI,KAAK,OAAO,WAAW;AACxH,gBAAM,iBAAiB,QAAQ,KAAK,IAAK,OAAO,sBAAsB,MAAM,IAAK,KAAK,KAAK,GAAK;AAEhG,kBAAQ,aAAc,MAAM,SAAS,iBAAiB;AACtD,kBAAQ,aAAc,MAAM,SAAS,iBAAiB;eAEnD;AAEH,kBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,SAAS;AACpE,kBAAQ,aAAa,MAAM,OAAO,gBAAgB,SAAS,SAAS;;iBAGjE,iBAAiB,CAAC,mBAAmB,CAAC,gBAAgB;AAE7D,YAAI,CAAC,QAAQ,UAAU;AAEnB,cAAI,QAAQ,aAAa;AACrB,oBAAQ,gBAAiB,SAAS,cAAe,QAAQ,mBAAmB;AAC5E,oBAAQ,gBAAiB,SAAS,gBAAiB,QAAQ,mBAAmB;iBAE3E;AACH,oBAAQ,gBAAiB,SAAS,eAAgB,QAAQ,mBAAmB;AAC7E,oBAAQ,gBAAiB,SAAS,gBAAiB,QAAQ,mBAAmB;;;;AAK1F,cAAQ;AACR,cAAQ;IACZ,CAAC;AAED,gBAAY,iBAAiB,aAAa,KAAK,0BAA0B,CAAC,MAAK;AAE3E,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,UAAI,CAAC,OAAO,WAAW;AACnB;;AAGJ,yCAAmC;IACvC,CAAC;AAED,aAAS,iBAAiB,WAAW,KAAK,0BAA0B,CAAC,MAAK;AACtE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,cAAQ,EAAE,OAAO;QACb,KAAK;AACD,0BAAgB;AAChB,4BAAkB;AAClB,2BAAiB;AACjB;QACJ,KAAK;AACD,0BAAgB;AAChB,4BAAkB;AAClB,2BAAiB;AACjB;QACJ,KAAK;AACD,0BAAgB;AAChB,4BAAkB;AAClB,2BAAiB;AACjB;QACJ;AACI;;AAER,qBAAe;AACf,qBAAe;IACnB,CAAC;AAED,gBAAY,iBAAiB,WAAW,KAAK,kBAAkB,CAAC,MAAK;AACjE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,cAAQ,EAAE,OAAO;QACb,KAAK;AACD,UAAAD,uBAAsB,GAAG,SAAS;AAClC,gBAAM,IAAI,UAAU,CAAC;AACrB,gBAAM,IAAI,UAAU,CAAC;AACrB,cAAI,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,GAAG;AAC5D,wBAAY,cAAc,KAAK,cAAc;cACzC,SAAS,CAAC,KAAK,MAAM,EAAE,KAAK,GAAG,KAAK,MAAM,EAAE,KAAK,CAAC;cAClD;cACA,OAAO;eACR,IAAI;;AAEX;QACJ;AACI;;AAER,kBAAY,MAAM,eAAe,QAAQ;IAC7C,CAAC;AAED,gBAAY,iBAAiB,cAAc,KAAK,qBAAqB,MAAK;AACtE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,qBAAe;AACf,qBAAe;IACnB,CAAC;AAED,UAAM,aAAa,IAAI;AACvB,UAAM,aAAa,IAAI;AAEvB,QAAI,cAAc;AAElB,gBAAY,iBAAiB,SAAS,KAAK,qBAAqB,CAAC,MAAK;AAClE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAEJ,YAAM,UAAU,YAAY,IAAG,IAAK;AACpC,UAAI,cAAe,gBAAgB,OAAS,UAAU,cAAe;AACrE,oBAAc;AACd,UAAI,cAAc,YAAY;AAC1B,sBAAc;;AAElB,UAAI,cAAc,YAAY;AAC1B,sBAAc;;AAElB,YAAM,QAAQ,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;AACtD,UAAI,UAAU,GAAG;AACb;;AAEJ,YAAM,kBAAkB,QAAQ,KAAK,IAAI,KAAK;AAC9C,cAAQ,cAAc,CAAC,kBAAkB,cAAc,QAAQ;AAE/D,UAAI,kCAAkC;AAClC,eAAO,qBAAqB;AAC5B,2CAAmC;;IAG3C,GAAG,EAAC,SAAS,KAAI,CAAC;EACtB;EAEA,QAAK;EACL;EAEA,UAAO;AAEH,UAAM,cAAc,KAAK,MAAM;AAE/B,aAAS,oBAAoB,WAAW,KAAK,uBAAuB;AACpE,aAAS,oBAAoB,SAAS,KAAK,qBAAqB;AAChE,gBAAY,oBAAoB,aAAa,KAAK,iBAAiB;AACnE,aAAS,oBAAoB,aAAa,KAAK,yBAAyB;AACxE,gBAAY,oBAAoB,aAAa,KAAK,uBAAuB;AACzE,aAAS,oBAAoB,WAAW,KAAK,uBAAuB;AACpE,gBAAY,oBAAoB,WAAW,KAAK,eAAe;AAC/D,gBAAY,oBAAoB,cAAc,KAAK,kBAAkB;AACrE,gBAAY,oBAAoB,SAAS,KAAK,kBAAkB;EACpE;;;;ACrWJ,IAAM,SAAS,WAAU;AACzB,IAAME,cAAY,WAAU;AAC5B,IAAMC,cAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAE5B,IAAM,mBAAmB;EACrB,KAAK,WAAU;EACf,MAAM,WAAU;EAChB,IAAI,WAAU;;AAMZ,IAAO,0BAAP,MAA8B;EAChC;EAEA,YAAY,MAAY,aAAiB,SAAa,QAAY,SAAY;AAE1E,SAAK,QAAQ;EA0FjB;EAEA,QAAK;EACL;EAEA,UAAO;EAEP;;;;AClHJ,IAAM,mBAAN,MAAsB;EAElB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,YAAY,MAAY,aAAkB,SAAc,QAAa,SAAY;AAE7E,SAAK,QAAQ;AAEb,UAAM,iBAAiB,YAAY;AACnC,UAAM,kBAAkB,YAAY;AACpC,UAAM,gBAAgB,YAAY;AAElC,SAAK,UAAU;AACf,SAAK,WAAW;AAChB,SAAK,sBAAsB;AAE3B,QAAI,WAAW;AACf,QAAI,YAAY;AAEhB,UAAM,cAAc,KAAK,MAAM;AAE/B,UAAM,cAAc,CAAC,eAA2B;AAC5C,UAAI;AACJ,UAAI,cAAc,WAAW,UAAU;AACnC,cAAM,WAAW;;AAErB,YAAM,OAAO,cAAc,WAAW,aAAa,WAAW,WAAW,OAAO,KAAK;AACrF,UAAI,KAAK;AACL,cAAM,SAAS,KAAK;AACpB,cAAM,OAAO,QAAQ,OAAO,KAAK,OAAO,MAAM,CAAA,CAAE;AAChD,oBAAY,aAAa,MAAM;;;;UAI3B;SACH;aAEE;AACH,oBAAY,aAAa,MAAM;UAC3B;SACH;;IAET;AAEA,UAAM,uBAAuB,KAAK,OAAO,QACrC,KAAK,0BAA0B,CAAC,MAAK;AACjC,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,UAAI,YAAY,WAAW;AACvB;;AAGJ,UAAI,cAAc,UAAU,QAAQ,GAAG;AACnC,cAAMC,UAAS,WAAU;AACzB,cAAM,YAAY,WAAU;AAC5B,4BAAoB,KAAK,aAAa,KAAK,OAAO,YAAY,KAAK,OAAO,YAAY,KAAK,OAAO,YAAY,OAAO,kBAAkBA,SAAQ,SAAS;AACxJ,sBAAc,UAAU,SAAS,eAAe;UAC5C,WAAW,OAAO;UAClB,KAAK;YACD,QAAQA;YACR;YACA,WAAW,OAAO;;SAEzB;;AAGL,YAAM,YAAY,cAAc,QAAQ,QAAQ;AAChD,YAAM,iBAAiB,cAAc,aAAa,QAAQ;AAC1D,YAAM,eAAe,cAAc,WAAW,QAAQ;AACtD,YAAM,eAAe,cAAc,WAAW,QAAQ;AACtD,YAAM,mBAAmB,cAAc,eAAe,QAAQ;AAC9D,YAAM,yBAAyB,cAAc,qBAAqB,QAAQ;AAE1E,UAAI,aAAa,kBAAkB,gBAAgB,gBAAgB,oBAAoB,wBAAwB;AAE3G,uBAAe,gBAAgB,OAAO;AACtC,uBAAe,qBAAqB;AACpC,uBAAe,sBAAsB;AACrC,uBAAe,qBAAqB;AAEpC,uBAAe,OAAM;AAErB,YAAI,eAAe,YAAY;AAE3B,cAAI,eAAe,WAAW,YAAY;AACtC,kBAAM,iBAAiB,eAAe,WAAW,WAAW;AAE5D,gBAAI,KAAK,wBAAwB,gBAAgB;AAE7C,kBAAI,KAAK,wBAAwB,QAAW;AAExC,8BAAc,WAAW,SAAS,eAAe;kBAC7C,YAAY,KAAK,QAAQ,KAAK,mBAAmB;iBACpD;;AAGL,4BAAc,aAAa,SAAS,eAAe,eAAe,UAAU;AAE5E,mBAAK,sBAAsB;;;AAInC,wBAAc,QAAQ,SAAS,eAAe,eAAe,UAAU;AAEvE,cAAI,eAAe,WAAW,YAAY,eAAe,WAAW,iBAAiB;AACjF,0BAAc,eAAe,SAAS,eAAe,eAAe,UAAU;;eAG/E;AAEH,cAAI,KAAK,wBAAwB,QAAW;AAExC,0BAAc,WAAW,SAAS,eAAe;cAC7C,YAAY,KAAK,QAAQ,KAAK,mBAAmB;aACpD;AAED,iBAAK,sBAAsB;;AAG/B,wBAAc,WAAW,SAAS,eAAe;YAC7C,WAAW,eAAe;WAC7B;;;IAGb,CAAC;AAGL,gBAAY,iBAAiB,aAAa,oBAAoB;AAE9D,gBAAY,iBAAiB,aAAa,KAAK,0BAA0B,CAAC,MAAK;AAE3E,UAAI,EAAE,UAAU,GAAG;AACf,mBAAW;;AAGf,UAAI,EAAE,UAAU,GAAG;AACf,oBAAY;;AAGhB,YAAM,iBAAkB,EAAE,UAAU;AAEpC,UAAI,CAAC,gBAAgB;AACjB;;AAGJ,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAKJ,aAAO,mBAAmB,EAAE;AAC5B,aAAO,mBAAmB,EAAE;AAC5B,aAAO,mBAAmB,OAAO,iBAAiB,CAAC;AACnD,aAAO,mBAAmB,OAAO,iBAAiB,CAAC;AAEnD,UAAK,CAAC,QAAQ,eAAgB,QAAQ,eAAe;AAEjD,uBAAe,gBAAgB,OAAO;AACtC,uBAAe,sBAAsB;AAErC,uBAAe,OAAM;AAErB,YAAI,EAAE,UAAU,GAAG;AACf,gBAAM,aAAa,eAAe;AAClC,cAAI,cAAc,WAAW,UAAU;AACnC,4BAAgB,YAAY,WAAW,QAAQ;AAC/C,4BAAgB,WAAU;iBACvB;AACH,gBAAI,QAAQ,YAAY;AACpB,8BAAgB,kBAAkB,OAAO,gBAAgB;mBACtD;AACH,8BAAgB,YAAY,KAAK,OAAO,IAAI;;AAEhD,4BAAgB,WAAU;;;;IAI1C,CAAC;AAED,aAAS,iBAAiB,WAAW,KAAK,0BAA0B,CAAC,MAAK;AAEtE,UAAI,EAAE,UAAU,GAAG;AACf,mBAAW;;AAGf,UAAI,EAAE,UAAU,GAAG;AACf,oBAAY;;AAGhB,UAAI,gBAAgB,YAAW,GAAI;AAC/B,wBAAgB,SAAQ;;IAEhC,CAAC;AAED,gBAAY,iBAAiB,WAAW,KAAK,wBAAwB,CAAC,MAAK;AAEvE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,YAAM,eAAgB,EAAE,UAAU;AAElC,UAAI,CAAC,cAAc;AACf;;AAKJ,sBAAgB,UAAS;AAEzB,UAAI,KAAK,IAAI,EAAE,UAAU,OAAO,gBAAgB,IAAI,KAAK,KAAK,IAAI,EAAE,UAAU,OAAO,gBAAgB,IAAI,GAAG;AACxG;;AAGJ,YAAM,aAAa,cAAc,SAAS,QAAQ;AAClD,YAAM,oBAAoB,cAAc,gBAAgB,QAAQ;AAChE,YAAM,oBAAoB,cAAc,gBAAgB,QAAQ;AAChE,YAAM,mBAAmB,cAAc,eAAe,QAAQ;AAC9D,YAAM,0BAA0B,cAAc,sBAAsB,QAAQ;AAC5E,YAAM,0BAA0B,cAAc,sBAAsB,QAAQ;AAE5E,UAAK,CAAC,QAAQ,mBACT,CAAC,oBACD,CAAC,2BACD,CAAC,yBAA0B;AAI5B,YAAI,cAAc,qBAAqB,mBAAmB;AAEtD,yBAAe,gBAAgB,OAAO;AACtC,yBAAe,qBAAqB;AACpC,yBAAe,sBAAsB;AACrC,yBAAe,OAAM;AAErB,cAAI,eAAe,YAAY;AAE3B,0BAAc,SAAS,SAAS,eAAe,eAAe,UAAU;AAExE,gBAAI,eAAe,eAAe;AAC9B,4BAAc,gBAAgB,SAAS,eAAe,eAAe,UAAU;;iBAEhF;AACH,0BAAc,gBAAgB,eAAe;cACzC,WAAW,OAAO;aACrB;;;AAIT,aAAK,UAAU;AAEf;;AAGJ,WAAK;AAEL,UAAI,KAAK,YAAY,GAAG;AAEpB,uBAAe,gBAAgB,OAAO;AACtC,uBAAe,qBAAqB,QAAQ;AAC5C,uBAAe,sBAAsB;AACrC,uBAAe,OAAM;AAErB,cAAM,uBAAuB,eAAe;AAC5C,cAAM,wBAAwB,eAAe;AAE7C,aAAK,WAAW,WAAW,MAAK;AAE5B,cAAI,wBAAwB,qBAAqB,UAAU;AAEvD,0BAAc,SAAS,SAAS,eAAe,oBAAoB;AAEnE,gBAAI,uBAAuB;AAEvB,4BAAc,gBAAgB,SAAS,eAAe,oBAAoB;AAE1E,kBAAK,CAAC,QAAQ,eAAgB,QAAQ,eAAe;AACjD,4BAAY,gBAAgB,YAAY,qBAAqB,QAAQ;AACrE,oBAAI,YAAY,gBAAgB,WAAU,GAAI;AAC1C,8BAAY,gBAAgB,UAAS;;;;iBAI9C;AACH,0BAAc,gBAAgB,SAAS,eAAe;cAClD,WAAW,OAAO;aACrB;;AAGL,eAAK,UAAU;QAEnB,GAAG,QAAQ,oBAAoB;aAE5B;AAEH,YAAI,KAAK,aAAa,MAAM;AACxB,iBAAO,aAAa,KAAK,QAAQ;AACjC,eAAK,WAAW;;AAGpB,uBAAe,gBAAgB,OAAO;AACtC,uBAAe,qBAAqB,QAAQ,mBAAmB,oBAAoB;AACnF,uBAAe,sBAAsB,eAAe,sBAAsB;AAC1E,uBAAe,OAAM;AAErB,YAAI,eAAe,YAAY;AAE3B,wBAAc,eAAe,SAAS,eAAe,eAAe,UAAU;AAE9E,cAAI,eAAe,eAAe;AAC9B,0BAAc,sBAAsB,SAAS,eAAe,eAAe,UAAU;;AAGzF,cAAI,QAAQ,iBAAiB;AAEzB,wBAAY,eAAe,UAAU;AAErC,gBAAK,CAAC,QAAQ,eAAgB,QAAQ,eAAe;AAEjD,oBAAM,mBAAmB,eAAe,WAAW,WAAW;AAC9D,oBAAM,wBAAwB,eAAe,gBAAgB;AAE7D,0BAAY,gBAAgB,YAAY,qBAAqB;AAE7D,kBAAI,YAAY,gBAAgB,WAAU,GAAI;AAC1C,4BAAY,gBAAgB,UAAS;;;;eAK9C;AAEH,wBAAc,sBAAsB,SAAS,eAAe;YACxD,WAAW,OAAO;WACrB;AAED,cAAI,QAAQ,iBAAiB;AAEzB,wBAAW;AAEX,gBAAK,CAAC,QAAQ,eAAgB,QAAQ,eAAe;AAEjD,oBAAM,YAAY,KAAK;AACvB,oBAAM,iBAAiB,eAAe,SAAS;AAE/C,0BAAY,gBAAgB,YAAY,cAAc;AAEtD,kBAAI,YAAY,gBAAgB,WAAU,GAAI;AAC1C,4BAAY,gBAAgB,UAAS;;;;;AAMrD,aAAK,UAAU;;IAEvB,GAAG,KAAK;EACZ;EAEA,QAAK;AACD,SAAK,UAAU;AACf,SAAK,sBAAsB;AAC3B,QAAI,KAAK,UAAU;AACf,aAAO,aAAa,KAAK,QAAQ;AACjC,WAAK,WAAW;;EAExB;EAEA,UAAO;AACH,UAAM,cAAc,KAAK,MAAM;AAC/B,gBAAY,oBAAoB,aAAa,KAAK,uBAAuB;AACzE,gBAAY,oBAAoB,aAAa,KAAK,uBAAuB;AACzE,aAAS,oBAAoB,WAAW,KAAK,uBAAuB;AACpE,gBAAY,oBAAoB,WAAW,KAAK,qBAAqB;AACrE,QAAI,KAAK,UAAU;AACf,aAAO,aAAa,KAAK,QAAQ;AACjC,WAAK,WAAW;;EAExB;;;;ACvYJ,IAAM,eAAe;AACrB,IAAM,mBAAmB;AACzB,IAAM,yBAAyB;AAE/B,IAAMC,yBAAwB,SAAU,OAAOC,YAAS;AACpD,MAAI,CAAC,OAAO;AACR,YAAQ,OAAO;AACf,IAAAA,WAAU,CAAC,IAAI,MAAM;AACrB,IAAAA,WAAU,CAAC,IAAI,MAAM;SAClB;AACH,QAAI,UAAU,MAAM;AACpB,QAAI,kBAAkB;AACtB,QAAI,iBAAiB;AACrB,WAAO,QAAQ,cAAc;AACzB,yBAAmB,QAAQ;AAC3B,wBAAkB,QAAQ;AAC1B,gBAAU,QAAQ;;AAEtB,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ;AAC7B,IAAAA,WAAU,CAAC,IAAI,MAAM,QAAQ;;AAEjC,SAAOA;AACX;AAKM,IAAO,mBAAP,MAAuB;EAEzB;EACA;EACA;EAEA,YAAY,MAAY,aAAkB,SAAc,QAAa,SAAY;AAE7E,SAAK,QAAQ;AAEb,UAAM,iBAAiB,YAAY;AACnC,UAAM,gBAAgB,YAAY;AAElC,QAAI;AACJ,UAAM,gBAAgB,CAAA;AACtB,UAAM,cAAc,IAAI,aAAa,CAAC;AACtC,QAAI,eAAe;AACnB,QAAI,cAAc;AAElB,UAAM,cAAc,KAAK,MAAM;AAE/B,UAAM,cAAc,CAAC,eAA2B;AAC5C,UAAI;AACJ,UAAI,cAAc,WAAW,UAAU;AACnC,cAAM,WAAW;;AAErB,YAAM,OAAO,aAAa,WAAW,WAAW,OAAO,KAAK;AAC5D,UAAI,KAAK;AACL,cAAM,SAAS,KAAK;AACpB,cAAM,OAAO,QAAQ,OAAO,KAAK,OAAO,MAAM,CAAA,CAAE;AAChD,oBAAY,aAAa,MAAM;UAC3B;SACH;aAEE;AACH,oBAAY,aAAa,MAAM;UAC3B;SACH;;IAET;AAEA,gBAAY,iBAAiB,cAAc,KAAK,2BAA2B,CAAC,MAAK;AAE7E,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,UAAI,OAAO,qBAAqB,MAAM;AAClC,qBAAa,OAAO,gBAAgB;AACpC,eAAO,mBAAmB;;AAG9B,YAAM,UAAU,EAAE;AAClB,YAAM,iBAAiB,EAAE;AAEzB,uBAAiB,KAAK,IAAG;AAEzB,UAAI,QAAQ,WAAW,KAAK,eAAe,WAAW,GAAG;AACrD,uBAAe;AAEf,QAAAD,uBAAsB,QAAQ,CAAC,GAAG,WAAW;AAE7C,cAAM,oBAAoB,YAAY,CAAC;AACvC,cAAM,oBAAoB,YAAY,CAAC;AAEvC,cAAM,kBAAkB,QAAQ,CAAC,EAAE;AACnC,cAAM,kBAAkB,QAAQ,CAAC,EAAE;AAEnC,eAAO,mBAAmB,WAAW,MAAK;AACtC,sBAAY,cAAc,KAAK,cAAc;YACzC,SAAS,CAAC,KAAK,MAAM,eAAe,GAAG,KAAK,MAAM,eAAe,CAAC;YAClE,WAAW,CAAC,KAAK,MAAM,iBAAiB,GAAG,KAAK,MAAM,iBAAiB,CAAC;YACxE,OAAO;aACR,IAAI;AAEP,iBAAO,mBAAmB;QAC9B,GAAG,QAAQ,cAAc;aAEtB;AACH,uBAAe;;AAGnB,aAAO,cAAc,SAAS,QAAQ,QAAQ;AAC1C,sBAAc,KAAK,IAAI,aAAa,CAAC,CAAC;;AAG1C,eAASE,KAAI,GAAG,MAAM,QAAQ,QAAQA,KAAI,KAAK,EAAEA,IAAG;AAChD,QAAAF,uBAAsB,QAAQE,EAAC,GAAG,cAAcA,EAAC,CAAC;;AAGtD,oBAAc,SAAS,QAAQ;IAEnC,GAAG,EAAC,SAAS,KAAI,CAAC;AAGlB,gBAAY,iBAAiB,YAAY,KAAK,yBAAyB,CAAC,MAAK;AAEzE,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,YAAM,cAAc,KAAK,IAAG;AAC5B,YAAM,UAAU,EAAE;AAClB,YAAM,iBAAiB,EAAE;AAEzB,YAAM,oBAAoB,cAAc,QAAQ,eAAe;AAE/D,UAAI,OAAO,qBAAqB,MAAM;AAClC,qBAAa,OAAO,gBAAgB;AACpC,eAAO,mBAAmB;;AAK9B,UAAI,QAAQ,WAAW,KAAK,eAAe,WAAW,GAAG;AAErD,YAAI,eAAe,MAAM,cAAc,eAAe,cAAc;AAEhE,cAAI,cAAc,MAAM,eAAe,cAAc,kBAAkB;AAInE,YAAAF,uBAAsB,eAAe,CAAC,GAAG,eAAe,aAAa;AACrE,2BAAe,qBAAqB;AACpC,2BAAe,sBAAsB;AAErC,2BAAe,OAAM;AAErB,gBAAI,eAAe,YAAY;AAE3B,6BAAe,WAAW,aAAa;AAEvC,4BAAc,KAAK,gBAAgB,eAAe,UAAU;AAE5D,kBAAI,eAAe,eAAe;AAC9B,8BAAc,KAAK,uBAAuB,eAAe,UAAU;;AAGvE,kBAAI,QAAQ,iBAAiB;AACzB,4BAAY,eAAe,UAAU;;mBAEtC;AACH,4BAAc,KAAK,qBAAqB;AACxC,kBAAI,QAAQ,iBAAiB;AACzB,4BAAW;;;AAInB,0BAAc;qBAEP,SAAS,cAAc,CAAC,GAAG,WAAW,IAAI,wBAAwB;AAIzE,YAAAA,uBAAsB,eAAe,CAAC,GAAG,eAAe,aAAa;AACrE,2BAAe,qBAAqB;AACpC,2BAAe,sBAAsB;AAErC,2BAAe,OAAM;AAErB,gBAAI,eAAe,YAAY;AAE3B,6BAAe,WAAW,aAAa;AAEvC,4BAAc,KAAK,UAAU,eAAe,UAAU;AAEtD,kBAAI,eAAe,eAAe;AAC9B,8BAAc,KAAK,iBAAiB,eAAe,UAAU;;mBAG9D;AACH,4BAAc,KAAK,eAAe;;AAGtC,0BAAc;;AAGlB,yBAAe;;;AAIvB,oBAAc,SAAS,QAAQ;AAE/B,eAASE,KAAI,GAAG,MAAM,QAAQ,QAAQA,KAAI,KAAK,EAAEA,IAAG;AAChD,sBAAcA,EAAC,EAAE,CAAC,IAAI,QAAQA,EAAC,EAAE;AACjC,sBAAcA,EAAC,EAAE,CAAC,IAAI,QAAQA,EAAC,EAAE;;IAKzC,GAAG,EAAC,SAAS,KAAI,CAAC;EAEtB;EAEA,QAAK;EAKL;EAEA,UAAO;AACH,UAAM,cAAc,KAAK,MAAM;AAC/B,gBAAY,oBAAoB,cAAc,KAAK,wBAAwB;AAC3E,gBAAY,oBAAoB,YAAY,KAAK,sBAAsB;EAC3E;;;;ACvOE,IAAO,gCAAP,MAAoC;EACtC;EAEA,YAAY,MAAW,aAAa,SAAS,QAAQ,SAAO;AAExD,SAAK,QAAQ;AAGb,UAAM,aAAa,CAAA;EA6JvB;EAEA,QAAK;EACL;EAEA,UAAO;EAOP;;;;ACnLJ,IAAM,yBAAyB;AAC/B,IAAMC,WAAU;AAChB,IAAMC,YAAW,WAAU;AAOrB,IAAO,gBAAP,MAAoB;EACtB;EACA;EAEA,YAAY,MAAY,aAAa,SAAS,QAAQ,SAAO;AAEzD,SAAK,QAAQ;AACb,UAAM,SAAS,KAAK;AACpB,UAAM,iBAAiB,YAAY;AACnC,UAAM,kBAAkB,YAAY;AACpC,UAAM,gBAAgB,YAAY;AAElC,QAAI,YAAY;AAChB,QAAI,kBAAkB;AACtB,QAAI,wBAAwB;AAE5B,SAAK,UAAU,KAAK,OAAO,OAAO,UAAU,MAAK;AAE7C,UAAI,EAAE,QAAQ,UAAU,QAAQ,iBAAiB;AAC7C;;AAGJ,UAAI,aAAa;AAMjB,UAAI,KAAK,IAAI,QAAQ,UAAU,IAAID,UAAS;AACxC,gBAAQ,aAAa;;AAOzB,UAAI,KAAK,IAAI,QAAQ,YAAY,IAAIA,UAAS;AAC1C,gBAAQ,eAAe;;AAG3B,UAAI,KAAK,IAAI,QAAQ,YAAY,IAAIA,UAAS;AAC1C,gBAAQ,eAAe;;AAG3B,UAAI,QAAQ,iBAAiB,KAAK,QAAQ,iBAAiB,GAAG;AAC1D,gBAAQ,aAAa;;AAczB,UAAI,QAAQ,eAAe;AAEvB,YAAI,EAAE,aAAa,GAAG;AAElB,sBAAY;AAEZ,cAAI,QAAQ,eAAe,GAAG;AAC1B,gBAAI,QAAQ,iBAAiB,KAAK,QAAQ,iBAAiB,GAAG;AAE1D,kBAAI,QAAQ,iBAAiB,OAAO,oBAAoB;AAEpD,+BAAe,gBAAgB,OAAO;AACtC,+BAAe,sBAAsB;AACrC,+BAAe,OAAM;AAErB,oBAAI,eAAe,cAAc,eAAe,WAAW,UAAU;AACjE,0CAAwB,eAAe,WAAW;uBAE/C;AACH,oCAAkB;AAClB,0CAAwB;;AAG5B,uBAAO,qBAAqB;;;AAIpC,gBAAI,uBAAuB;AACvB,oBAAM,OAAO,KAAK,IAAI,QAAQ,QAAQ,uBAAuB,KAAK,OAAO,KAAKC,SAAQ,CAAC,CAAC;AACxF,gCAAkB,OAAO,QAAQ;;AAGrC,gBAAI,kBAAkB,QAAQ,eAAe;AACzC,gCAAkB,QAAQ;;;;aAInC;AACH,0BAAkB;AAClB,gCAAwB;;AAG5B,YAAM,oBAAqB,QAAQ,aAAa;AAMhD,UAAI,QAAQ,iBAAiB,KAAK,QAAQ,iBAAiB,GAAG;AAE1D,YAAK,CAAC,QAAQ,eAAgB,QAAQ,iBAAiB,gBAAgB,YAAW,GAAI;AAClF,0BAAgB,cAAc,QAAQ,cAAc,QAAQ,YAAY;AACxE,0BAAgB,UAAS;eAEtB;AAEH,cAAI,QAAQ,iBAAiB,GAAG;AAC5B,gBAAI,QAAQ,aAAa;AACrB,qBAAO,MAAM,CAAC,QAAQ,YAAY;mBAC/B;AACH,qBAAO,WAAW,QAAQ,YAAY;;;AAI9C,cAAI,QAAQ,iBAAiB,GAAG;AAC5B,gBAAI,QAAQ,aAAa;AACrB,qBAAO,IAAI,QAAQ,YAAY;mBAC5B;AACH,qBAAO,SAAS,QAAQ,YAAY;;;;AAKhD,gBAAQ,gBAAgB,QAAQ;AAChC,gBAAQ,gBAAgB,QAAQ;AAEhC,qBAAa;;AAOjB,UAAI,KAAK,IAAI,QAAQ,SAAS,IAAID,UAAS;AACvC,gBAAQ,YAAY;;AAGxB,UAAI,KAAK,IAAI,QAAQ,SAAS,IAAIA,UAAS;AACvC,gBAAQ,YAAY;;AAGxB,UAAI,KAAK,IAAI,QAAQ,SAAS,IAAIA,UAAS;AACvC,gBAAQ,YAAY;;AAGxB,UAAI,QAAQ,cAAc,KAAK,QAAQ,cAAc,KAAK,QAAQ,cAAc,GAAG;AAE/E,cAAM,MAAM,WAAU;AAEtB,YAAI,CAAC,IAAI,QAAQ;AACjB,YAAI,CAAC,IAAI,QAAQ;AACjB,YAAI,CAAC,IAAI,QAAQ;AAEjB,YAAI;AACJ,YAAI;AAEJ,YAAI,QAAQ,mBAAmB;AAE3B,cAAI,OAAO,KAAK;AACZ,0BAAc,OAAO,IAAI,CAAC;AAC1B,2BAAe,OAAO,KAAK,CAAC;qBACrB,OAAO,KAAK;AACnB,0BAAc,OAAO,IAAI,CAAC;AAC1B,2BAAe,OAAO,KAAK,CAAC;qBACrB,OAAO,KAAK;AACnB,0BAAc,OAAO,IAAI,CAAC;AAC1B,2BAAe,OAAO,KAAK,CAAC;;AAGhC,iBAAO,IAAI,GAAG;AAEd,gBAAM,MAAM,OAAO;AACnB,gBAAM,OAAO,OAAO;AAEpB,cAAI,OAAO,KAAK;AACZ,gBAAI,CAAC,IAAI;AACT,iBAAK,CAAC,IAAI;qBACH,OAAO,KAAK;AACnB,gBAAI,CAAC,IAAI;AACT,iBAAK,CAAC,IAAI;qBACH,OAAO,KAAK;AACnB,gBAAI,CAAC,IAAI;AACT,iBAAK,CAAC,IAAI;;AAGd,iBAAO,MAAM;AACb,iBAAO,OAAO;eAEX;AACH,iBAAO,IAAI,GAAG;;AAGlB,qBAAa;;AAGjB,cAAQ,aAAa,QAAQ;AAC7B,cAAQ,aAAa,QAAQ;AAC7B,cAAQ,aAAa,QAAQ;AAM7B,UAAI,sBAAsB,GAAG;AAEzB,YAAI,oBAAoB,GAAG;AACvB,uBAAa;eACV;AACH,uBAAa;;AAGjB,YAAI,QAAQ,aAAa;AAErB,cAAI;AACJ,cAAI;AAEJ,cAAI,QAAQ,mBAAmB;AAC3B,gBAAI,OAAO,KAAK;AACZ,4BAAc,OAAO,IAAI,CAAC;AAC1B,6BAAe,OAAO,KAAK,CAAC;uBACrB,OAAO,KAAK;AACnB,4BAAc,OAAO,IAAI,CAAC;AAC1B,6BAAe,OAAO,KAAK,CAAC;uBACrB,OAAO,KAAK;AACnB,4BAAc,OAAO,IAAI,CAAC;AAC1B,6BAAe,OAAO,KAAK,CAAC;;;AAIpC,cAAI,QAAQ,eAAe;AACvB,kBAAM,wBAAwB,cAAc,iBAAiB,uBAAuB,OAAO,kBAAkB,CAAC,iBAAiB;AAC/H,gBAAI,uBAAuB;AACvB,qBAAO,qBAAqB;;iBAE7B;AACH,mBAAO,IAAI,CAAC,GAAG,GAAG,iBAAiB,CAAC;AACpC,mBAAO,gBAAgB,QAAQ,OAAO,gBAAgB,QAAQ;;AAGlE,cAAI,QAAQ,mBAAmB;AAC3B,kBAAM,MAAM,OAAO;AACnB,kBAAM,OAAO,OAAO;AACpB,gBAAI,OAAO,KAAK;AACZ,kBAAI,CAAC,IAAI;AACT,mBAAK,CAAC,IAAI;uBACH,OAAO,KAAK;AACnB,kBAAI,CAAC,IAAI;AACT,mBAAK,CAAC,IAAI;uBACH,OAAO,KAAK;AACnB,kBAAI,CAAC,IAAI;AACT,mBAAK,CAAC,IAAI;;AAEd,mBAAO,MAAM;AACb,mBAAO,OAAO;;mBAGX,QAAQ,UAAU;AAEzB,cAAI,QAAQ,eAAe;AACvB,kBAAM,wBAAwB,cAAc,iBAAiB,uBAAuB,OAAO,kBAAkB,CAAC,iBAAiB;AAC/H,gBAAI,uBAAuB;AACvB,qBAAO,qBAAqB;;iBAE7B;AACH,mBAAO,gBAAgB,QAAQ,OAAO,gBAAgB,QAAQ;AAC9D,mBAAO,KAAK,iBAAiB;;eAG9B;AAEH,cAAI,QAAQ,eAAe;AACvB,kBAAM,wBAAwB,cAAc,iBAAiB,uBAAuB,OAAO,kBAAkB,CAAC,iBAAiB;AAC/H,gBAAI,uBAAuB;AACvB,qBAAO,qBAAqB;;iBAE7B;AACH,mBAAO,gBAAgB,QAAQ,OAAO,gBAAgB,QAAQ;AAC9D,mBAAO,KAAK,iBAAiB;;;AAIrC,gBAAQ,cAAc,QAAQ;;AAGlC,qBAAe,WAAU;AAEzB,eAAS,KAAK,MAAM,SAAS;IACjC,CAAC;EACL;EAGA,UAAO;AACH,SAAK,MAAM,OAAO,OAAO,MAAM,KAAK,OAAO;EAC/C;;;;ACzSJ,IAAAE,iCAA8B;AA0B9B,IAAM,2BAA2B;AACjC,IAAM,sBAAsB;AAC5B,IAAM,oBAAoB;AA+epB,IAAO,gBAAP,MAAO,uBAAsB,UAAS;;;;;;EAOxC,OAAO,WAAW;;;;;;EAOlB,OAAO,YAAY;;;;;;EAOnB,OAAO,SAAS;;;;;;EAOhB,OAAO,WAAW;;;;;;EAOlB,OAAO,eAAe;;;;;;EAOtB,OAAO,gBAAgB;;;;;;EAOvB,OAAO,eAAe;;;;;;EAOtB,OAAO,eAAe;;;;;;EAOtB,OAAO,eAAe;;;;;;EAOtB,OAAO,eAAe;;;;;;EAOtB,OAAO,iBAAiB;;;;;;EAOxB,OAAO,kBAAkB;;;;;;EAOzB,OAAO,kBAAkB;;;;;;EAOzB,OAAO,iBAAiB;;;;;;EAOxB,OAAO,iBAAiB;;;;;;EAOxB,OAAO,kBAAkB;;;;;;EAOzB,OAAO,gBAAgB;;;;;;EAOvB,OAAO,mBAAmB;EAE1B;;;;;;EAQS;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;EAET;EAkCA;EAgBA;EASA;EAQA;EACA;EAEA;;;;;EAQA,YAAY,MAAY,MAA0B,CAAA,GAAE;AAEhD,UAAM,MAAM,GAAG;AAEf,SAAK,UAAW,CAAA;AAEhB,SAAK,OAAO;AAEZ,SAAK,KAAK,YAAY,gBAAgB,CAAC,MAAK;AACxC,QAAE,eAAc;IACpB;AAIA,SAAK,WAAW;;MAIZ,gBAAgB;MAChB,eAAe;;MAIf,QAAQ;MACR,gBAAgB;MAChB,SAAS;MACT,UAAU;MACV,aAAa;MACb,eAAe;MACf,iBAAiB;MACjB,eAAe;MACf,WAAW;MACX,gBAAgB;MAChB,mBAAmB;MACnB,YAAY;MACZ,sBAAsB;MAEtB,cAAc;MACd,YAAY;MACZ,YAAY;MAEZ,gCAAgC;;MAIhC,kBAAkB;MAClB,sBAAsB;MACtB,iBAAiB;;MAIjB,iBAAiB;MACjB,cAAc;MACd,YAAY;;MAIZ,mBAAmB;MACnB,qBAAqB;MACrB,gBAAgB;MAChB,cAAc;MACd,yBAAyB;MACzB,eAAe;;AAKnB,SAAK,UAAU;MACX,kBAAkB,WAAU;MAC5B,WAAW;MACX,oBAAoB;MACpB,kBAAkB;MAClB,kBAAkB;MAClB,kBAAkB;MAClB,kBAAkB;MAClB,gBAAgB;MAChB,eAAe,CAAA;MACf,aAAa,WAAU;MACvB,cAAc;MACd,aAAa;MACb,kBAAkB;;AAKtB,SAAK,WAAW;MACZ,cAAc;MACd,cAAc;MACd,WAAW;MACX,WAAW;MACX,WAAW;MACX,YAAY;;AAKhB,SAAK,eAAe;MAChB,eAAe;MACf,gBAAgB,IAAI,eAAe,MAAM,KAAK,QAAQ;MACtD,iBAAiB,IAAI,gBAAgB,MAAM,KAAK,QAAQ;MACxD,eAAe,IAAI,cAAc,IAAI;MACrC,cAAc,IAAI,sBAAsB,KAAK,MAAM;QAC/C,UAAU;OACb;;AAKL,SAAK,YAAY;MACb,IAAI,iBAAiB,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MAC7F,IAAI,8BAA8B,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MAC1G,IAAI,2BAA2B,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MACvG,IAAI,wBAAwB,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MACpG,IAAI,iBAAiB,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MAC7F,IAAI,iBAAiB,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;MAC7F,IAAI,8BAA8B,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;;AAK9G,SAAK,iBAAiB,IAAI,cAAc,KAAK,MAAM,KAAK,cAAc,KAAK,UAAU,KAAK,SAAS,KAAK,QAAQ;AAEhH,SAAK,UAAU,IAAI,aAAa,IAAI,+CAAe,CAA6B;AAChF,SAAK,aAAa,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACnF,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACrF,SAAK,aAAa,IAAI,aAAa,IAAI,+CAAe,CAA6B;AAEnF,SAAK,eAAe,IAAI,aAAa,IAAI,+CAAe,CAAsB;AAC9E,SAAK,iBAAiB,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACvF,SAAK,WAAW,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACjF,SAAK,kBAAkB,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACxF,SAAK,kBAAkB,IAAI,aAAa,IAAI,+CAAe,CAAsB;AACjF,SAAK,iBAAiB,IAAI,aAAa,IAAI,+CAAe,CAA6B;AACvF,SAAK,wBAAwB,IAAI,aAAa,IAAI,+CAAe,CAA6B;AAC9F,SAAK,wBAAwB,IAAI,aAAa,IAAI,+CAAe,CAA6B;AAC9F,SAAK,0BAA0B,IAAI,aAAa,IAAI,+CAAe,CAAsB;AACzF,SAAK,uBAAuB,IAAI,aAAa,IAAI,+CAAe,CAAsB;AACtF,SAAK,YAAY,IAAI,aAAa,IAAI,+CAAe,CAAsB;AAI3E,SAAK,UAAU,IAAI;AACnB,QAAI,IAAI,UAAU;AACd,WAAK,WAAW,IAAI;;AAExB,SAAK,oBAAoB,IAAI;AAC7B,QAAI,IAAI,gBAAgB;AACpB,WAAK,iBAAiB,IAAI;WACvB;AACH,WAAK,SAAS,IAAI;;AAEtB,SAAK,kBAAkB,IAAI;AAC3B,SAAK,gBAAgB,IAAI;AACzB,SAAK,SAAS,IAAI;AAClB,SAAK,gBAAgB,IAAI;AACzB,SAAK,kBAAkB,IAAI;AAC3B,SAAK,kBAAkB,IAAI;AAC3B,SAAK,eAAe,IAAI;AACxB,SAAK,uBAAuB,IAAI;AAChC,SAAK,mBAAmB,IAAI;AAC5B,SAAK,iBAAiB,IAAI;AAC1B,SAAK,eAAe,IAAI;AACxB,SAAK,0BAA0B,IAAI;AACnC,SAAK,gBAAgB,IAAI;AACzB,SAAK,aAAa,IAAI;AACtB,SAAK,iBAAiB;AACtB,SAAK,oBAAoB,IAAI;AAC7B,SAAK,sBAAsB,IAAI;EACnC;;;;;;;;;EAUA,IAAI,OAAO,OAAa;AACpB,YAAQ,SAAS;AACjB,QAAI,SAAS,KAAK,GAAG;AACjB,YAAM,SAAS,CAAA;AAEf,cAAQ,OAAO;QAEX;AACI,eAAK,MAAM,qCAAqC,QAAQ,yBAAyB;QAErF,KAAK;AACD,iBAAO,eAAc,QAAQ,IAAI,CAAC,KAAK;AACvC,iBAAO,eAAc,SAAS,IAAI,CAAC,KAAK;AACxC,iBAAO,eAAc,MAAM,IAAI,CAAC,KAAK;AACrC,iBAAO,eAAc,QAAQ,IAAI,CAAC,KAAK;AACvC,iBAAO,eAAc,aAAa,IAAI,CAAA;AACtC,iBAAO,eAAc,YAAY,IAAI,CAAA;AACrC,iBAAO,eAAc,cAAc,IAAI,CAAC,OAAO,OAAO;AACtD,iBAAO,eAAc,eAAe,IAAI,CAAC,OAAO,YAAY;AAC5D,iBAAO,eAAc,YAAY,IAAI,CAAC,cAAc;AACpD,iBAAO,eAAc,YAAY,IAAI,CAAC,YAAY;AAClD,iBAAO,eAAc,YAAY,IAAI,CAAC,OAAO,cAAc;AAC3D,iBAAO,eAAc,YAAY,IAAI,CAAC,OAAO,eAAe;AAC5D,iBAAO,eAAc,eAAe,IAAI,CAAC,SAAS;AAClD,iBAAO,eAAc,cAAc,IAAI,CAAC,SAAS;AACjD,iBAAO,eAAc,cAAc,IAAI,CAAC,SAAS;AACjD,iBAAO,eAAc,eAAe,IAAI,CAAC,SAAS;AAClD,iBAAO,eAAc,aAAa,IAAI,CAAC,SAAS;AAChD,iBAAO,eAAc,gBAAgB,IAAI,CAAC,SAAS;AACnD;QAEJ,KAAK;AACD,iBAAO,eAAc,QAAQ,IAAI,CAAC,KAAK;AACvC,iBAAO,eAAc,SAAS,IAAI,CAAC,KAAK;AACxC,iBAAO,eAAc,MAAM,IAAI,CAAC,KAAK;AACrC,iBAAO,eAAc,QAAQ,IAAI,CAAC,KAAK;AACvC,iBAAO,eAAc,aAAa,IAAI,CAAA;AACtC,iBAAO,eAAc,YAAY,IAAI,CAAA;AACrC,iBAAO,eAAc,cAAc,IAAI,CAAC,OAAO,OAAO;AACtD,iBAAO,eAAc,eAAe,IAAI,CAAC,OAAO,YAAY;AAC5D,iBAAO,eAAc,YAAY,IAAI,CAAC,cAAc;AACpD,iBAAO,eAAc,YAAY,IAAI,CAAC,YAAY;AAClD,iBAAO,eAAc,YAAY,IAAI,CAAC,OAAO,cAAc;AAC3D,iBAAO,eAAc,YAAY,IAAI,CAAC,OAAO,eAAe;AAC5D,iBAAO,eAAc,eAAe,IAAI,CAAC,SAAS;AAClD,iBAAO,eAAc,cAAc,IAAI,CAAC,SAAS;AACjD,iBAAO,eAAc,cAAc,IAAI,CAAC,SAAS;AACjD,iBAAO,eAAc,eAAe,IAAI,CAAC,SAAS;AAClD,iBAAO,eAAc,aAAa,IAAI,CAAC,SAAS;AAChD,iBAAO,eAAc,gBAAgB,IAAI,CAAC,SAAS;AACnD;;AAGR,WAAK,UAAW;WACb;AACH,YAAM,SAAS;AACf,WAAK,UAAW;;EAExB;;;;;;EAOA,IAAI,SAAM;AACN,WAAO,KAAK;EAChB;;;;;;;EAQA,oBAAoB,QAAgB,YAAe;AAc/C,WAAO;EACX;;;;;;;;EASA,IAAI,aAAa,SAAoB;AACjC,SAAK,aAAa,gBAAgB,gBAAgB,OAAO;EAC7D;;;;;;;;;;EAWA,IAAI,OAAO,OAAc;AACrB,YAAQ,UAAU;AAClB,SAAK,SAAS,SAAS;AACvB,SAAK,UAAU,CAAC,EAAE,UAAU;AAC5B,SAAK,UAAU,CAAC,EAAE,UAAU;EAChC;;;;;;;;;;EAWA,IAAI,SAAM;AACN,WAAO,KAAK,SAAS;EACzB;;;;;;EAOA,IAAI,aAAa,cAAqB;AAClC,SAAK,SAAS,eAAe,CAAC,CAAC;EACnC;;;;;;EAOA,IAAI,eAAY;AACZ,WAAO,KAAK,SAAS;EACzB;;;;;;EAOA,IAAI,WAAW,YAAmB;AAC9B,SAAK,SAAS,aAAa,CAAC,CAAC;EACjC;;;;;;EAOA,IAAI,aAAU;AACV,WAAO,KAAK,SAAS;EACzB;;;;;;;;;EAUA,IAAI,WAAW,YAAkB;AAC7B,iBAAa,cAAc;AAC3B,SAAK,SAAS,aAAa;EAC/B;;;;;;EAOA,IAAI,aAAU;AACV,WAAO,KAAK,SAAS;EACzB;;;;;;EAOA,IAAI,+BAA+B,OAAc;AAC7C,SAAK,SAAS,iCAAiC,CAAC,CAAC;EACrD;;;;;;EAOA,IAAI,iCAA8B;AAC9B,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;EAaA,IAAI,UAAO;AACP,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;EAeA,IAAI,QAAQ,SAA2B;AACnC,cAAU,WAAW;AACrB,QAAI,YAAY,6BAA6B,YAAY,uBAAuB,YAAY,wBAAwB;AAChH,WAAK,MAAM,oCAAoC,UAAU,uFAAuF;AAChJ,gBAAU;;AAEd,SAAK,SAAS,cAAe,YAAY;AACzC,SAAK,SAAS,WAAY,YAAY;AACtC,QAAI,KAAK,SAAS,eAAe,KAAK,SAAS,UAAU;AACrD,WAAK,aAAa,gBAAgB,UAAS;AAC3C,WAAK,aAAa,gBAAgB,SAAQ;;AAE9C,SAAK,SAAS,UAAU;EAC5B;;;;;;;;;;;EAYA,IAAI,eAAe,OAAK;AACpB,SAAK,OAAM;AACX,SAAK,SAAS,iBAAiB,CAAC,CAAC;EACrC;EAEA,SAAM;AACF,aAASC,KAAI,GAAG,MAAM,KAAK,UAAU,QAAQA,KAAI,KAAKA,MAAK;AACvD,YAAM,UAAU,KAAK,UAAUA,EAAC;AAChC,UAAI,QAAQ,OAAO;AACf,gBAAQ,MAAK;;;AAIrB,SAAK,SAAS,YAAY;AAC1B,SAAK,SAAS,YAAY;AAC1B,SAAK,SAAS,eAAe;AAC7B,SAAK,SAAS,eAAe;AAC7B,SAAK,SAAS,aAAa;EAC/B;;;;;;;;;;;EAYA,IAAI,iBAAc;AACd,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;EAiBA,IAAI,cAAc,OAAK;AACnB,SAAK,SAAS,gBAAiB,UAAU;EAC7C;;;;;;;;;;;;;;;;EAiBA,IAAI,gBAAa;AACb,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,SAAS,UAAQ;AACjB,SAAK,aAAa,gBAAgB,YAAY,QAAQ;EAC1D;;;;;;;;EASA,IAAI,WAAQ;AACR,WAAO,KAAK,aAAa,gBAAgB,YAAW;EACxD;;;;;EAMA,IAAI,eAAe,OAAK;AACpB,SAAK,KAAK,qEAAqE;AAC/E,SAAK,gBAAgB;EACzB;;;;;EAMA,IAAI,iBAAc;AACd,SAAK,KAAK,qEAAqE;AAC/E,WAAO,KAAK;EAChB;;;;;EAMA,IAAI,aAAa,OAAK;AAClB,SAAK,KAAK,mEAAmE;EACjF;;;;;EAMA,IAAI,eAAY;AACZ,SAAK,KAAK,mEAAmE;AAC7E,WAAO;EACX;;;;;;;;;;;;;EAcA,IAAI,SAAS,OAAK;AACd,SAAK,SAAS,WAAW,CAAC,CAAC;AAC3B,SAAK,SAAS,cAAc;AAC5B,QAAI,KAAK,SAAS,UAAU;AACxB,WAAK,aAAa,gBAAgB,UAAS;AAC3C,WAAK,aAAa,gBAAgB,SAAQ;;AAE9C,SAAK,KAAK,yDAAyD;EACvE;;;;;;;;;;;;;EAcA,IAAI,WAAQ;AACR,SAAK,KAAK,yDAAyD;AACnE,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;EAcA,IAAI,YAAY,OAAK;AACjB,SAAK,KAAK,4DAA4D;AACtE,SAAK,SAAS,cAAc,CAAC,CAAC;AAC9B,SAAK,SAAS,WAAW;AACzB,QAAI,KAAK,SAAS,aAAa;AAC3B,WAAK,aAAa,gBAAgB,UAAS;AAC3C,WAAK,aAAa,gBAAgB,SAAQ;;EAElD;;;;;;;;;;;;;EAcA,IAAI,cAAW;AACX,SAAK,KAAK,4DAA4D;AACtE,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;EAaA,IAAI,kBAAkB,OAAK;AACvB,SAAK,SAAS,oBAAoB,CAAC,CAAC;EACxC;;;;;;;;;;;;EAaA,IAAI,oBAAiB;AACjB,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,gBAAgB,OAAK;AACrB,SAAK,SAAS,kBAAkB,UAAU;EAC9C;;;;;;;;EASA,IAAI,kBAAe;AACf,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,cAAc,OAAK;AACnB,SAAK,SAAS,gBAAgB,UAAU;EAC5C;;;;;;;;EASA,IAAI,gBAAa;AACb,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;;EAkBA,IAAI,gBAAgB,iBAAe;AAC/B,SAAK,SAAS,kBAAmB,oBAAoB,UAAa,oBAAoB,OAAQ,kBAAkB;EACpH;;;;;;;;;;EAWA,IAAI,kBAAe;AACf,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;EAiBA,IAAI,gBAAgB,iBAAe;AAC/B,SAAK,SAAS,kBAAmB,oBAAoB,QAAQ,oBAAoB,SAAa,kBAAkB;EACpH;;;;;;EAQA,IAAI,aAAa,cAAY;AACzB,SAAK,SAAS,eAAgB,iBAAiB,QAAQ,iBAAiB,SAAa,eAAe;EACxG;;;;;;;;EASA,IAAI,eAAY;AACZ,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,kBAAe;AACf,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;EAWA,IAAI,qBAAqB,sBAAoB;AACzC,SAAK,SAAS,uBAAwB,yBAAyB,QAAQ,yBAAyB,SAAa,uBAAuB;EACxI;;;;;;;;EASA,IAAI,uBAAoB;AACpB,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;;EAkBA,IAAI,iBAAiB,kBAAgB;AACjC,SAAK,SAAS,mBAAoB,qBAAqB,QAAQ,qBAAqB,SAAa,mBAAmB;EACxH;;;;;;;;EASA,IAAI,mBAAgB;AAChB,WAAO,KAAK,SAAS;EACzB;;;;;;;;;EAUA,IAAI,kBAAkB,mBAAiB;AACnC,SAAK,SAAS,oBAAqB,sBAAsB,QAAQ,sBAAsB,SAAa,oBAAoB;EAC5H;;;;;;;;EASA,IAAI,oBAAiB;AACjB,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,eAAe,gBAAc;AAC7B,SAAK,SAAS,iBAAkB,mBAAmB,QAAQ,mBAAmB,SAAa,iBAAiB;EAChH;;;;;;;;EASA,IAAI,iBAAc;AACd,WAAO,KAAK,SAAS;EACzB;;;;;;;;;EAUA,IAAI,oBAAoB,qBAAmB;AACvC,SAAK,SAAS,sBAAuB,wBAAwB,QAAQ,wBAAwB,SAAa,sBAAsB;EACpI;;;;;;;;EASA,IAAI,sBAAmB;AACnB,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;;;EAmBA,IAAI,aAAa,cAAY;AACzB,SAAK,SAAS,eAAgB,iBAAiB,UAAa,iBAAiB,OAAQ,eAAe;EACxG;;;;;;;;EASA,IAAI,eAAY;AACZ,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,wBAAwB,yBAAuB;AAC/C,SAAK,SAAS,0BAA2B,4BAA4B,UAAa,4BAA4B,OAAQ,0BAA0B;EACpJ;;;;;;;;EASA,IAAI,0BAAuB;AACvB,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,IAAI,cAAc,eAAa;AAC3B,SAAK,SAAS,gBAAiB,kBAAkB,UAAa,kBAAkB,OAAQ,gBAAgB;EAC5G;;;;;;;;EASA,IAAI,gBAAa;AACb,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;;;;;;;EAmBA,IAAI,WAAW,YAAU;AACrB,SAAK,SAAS,aAAc,eAAe,UAAa,eAAe,OAAQ,aAAa;EAChG;;;;;;;;EASA,IAAI,aAAU;AACV,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;;;EAaA,IAAI,eAAe,OAAK;AAEpB,YAAQ,SAAS;AACjB,QAAI,UAAU,YAAY,UAAU,UAAU;AAC1C,WAAK,MAAM,+DAA+D;AAC1E,cAAQ;;AAEZ,SAAK,SAAS,iBAAiB;AAC/B,SAAK,SAAS,KAAK,SAAS;EAChC;;;;;;;;;;;;EAaA,IAAI,iBAAc;AACd,WAAO,KAAK,SAAS;EACzB;;;;;;;;EASA,kBAAkB,MAAM,CAAA,GAAE;AACtB,SAAK,aAAa,gBAAgB,kBAAkB,GAAG;EAC3D;;;;;EAMA,qBAAkB;AACd,SAAK,aAAa,gBAAgB,mBAAkB;EACxD;;;;;;;;;;;;;EAcA,IAAI,WAAWC,UAAO;AAClB,SAAK,SAAS,aAAcA,aAAY;EAC5C;;;;;;;;;;;;;EAcA,IAAI,aAAU;AACV,WAAO,KAAK,SAAS;EACzB;;;;;;;;;;EAWA,IAAI,qBAAqB,OAAK;AAC1B,SAAK,SAAS,uBAAwB,UAAU,UAAa,UAAU,OAAQ,QAAQ;EAC3F;;;;;;;;EASA,IAAI,uBAAoB;AACpB,WAAO,KAAK,SAAS;EACzB;;;;;EAMA,UAAO;AACH,SAAK,iBAAgB;AACrB,SAAK,oBAAmB;AACxB,SAAK,eAAe,QAAO;AAC3B,UAAM,QAAO;EACjB;EAEA,mBAAgB;AACZ,aAASD,KAAI,GAAG,MAAM,KAAK,UAAU,QAAQA,KAAI,KAAKA,MAAK;AACvD,YAAM,UAAU,KAAK,UAAUA,EAAC;AAChC,UAAI,QAAQ,SAAS;AACjB,gBAAQ,QAAO;;;EAG3B;EAEA,sBAAmB;AACf,aAAS,OAAO,KAAK,cAAc;AAC/B,YAAM,aAAa,KAAK,aAAa,GAAG;AACxC,UAAI,WAAW,SAAS;AACpB,mBAAW,QAAO;;;EAG9B;;;;ACtwDJ,IAAAE,iBAAA;SAAAA,gBAAA;;;;;;AC3NA,IAAMC,YAAW,WAAU;AAC3B,IAAMC,cAAY,WAAU;AAC5B,IAAMC,aAAY,WAAU;AAStB,SAAU,iBAAiBC,SAA8B;AAE3D,QAAM,oBAAoBA,QAAO,kBAAkB,IAAI,IAAIA,QAAO,eAAe,IAAI;AACrF,QAAM,oBAAoBA,QAAO,kBAAkB,IAAI,IAAIA,QAAO,eAAe,IAAI;AAErF,QAAM,OAAOA,QAAO;AACpB,QAAM,OAAOA,QAAO;AACpB,QAAM,SAAS,KAAK;AACpB,QAAM,UAAW,CAAC,CAACA,QAAO;AAC1B,QAAM,YAAaA,QAAO,cAAc;AACxC,QAAM,QAASA,QAAO,UAAU;AAEhC,QAAM,kBAAkB,WAAU;AAClC,QAAM,wBAAyBA,QAAO,0BAA0B;AAChE,QAAM,eAAeA,QAAO;AAE5B,OAAK,mBAAkB;AAEvB,MAAI,aAAa,mBAAmB,aAAa,gBAAgB,SAAS,GAAG;AACzE,iBAAa,gBAAgB,QAAQ,SAAU,GAAC;AAC5C,UAAI,MAAM,iBAAiB,EAAE,UAAUH,SAAQ;AAC/C,UAAI,MAAM,iBAAiB,EAAE,WAAWA,SAAQ;AAChD,UAAI,uBAAuB;AACvB,mBAAW,GAAG;;AAElB,cAAQ,KAAK,eAAe;AAC5B,UAAI,OAAO,KAAK;AACZ,cAAM,KAAK,GAAG;AACd,cAAM,KAAK,GAAG;;AAElB,WAAK,mBAAmB,EAAC,KAAK,IAAG,CAAC;IACtC,CAAC;;AAkFL,MAAI,OAAO;AACP,SAAK,iBAAiB,KAAK,iBAAiB,KAAK;AACjD,SAAK,sBAAsB,KAAK,sBAAsB,KAAK;AAC3D,SAAK,mBAAmB,KAAK,mBAAmB,KAAK;;AAGzD,WAAS,iBAAiB,YAAU;AAChC,WAAO,CAAC,WAAW,UACb,CAAC,qBAAqB,kBAAkB,IAAI,WAAW,MAAM,EAAE,OAChE,CAAC,qBAAqB,CAAC,kBAAkB,IAAI,WAAW,MAAM,EAAE;EACzE;AAEA,MAAI,aAAa,YAAY;AACzB,QAAI,aAAa,WAAW,YAAY;AACpC,UAAI,CAAC,aAAa,WAAW,WAAW,oBAAoB;AACxD,aAAK,kBAAkB,KAAK,WAAW,KAAK;AAC5C,YAAI,aAAa,WAAW,WAAW,YAAY;AAC/C,uBAAa,WAAW,WAAW,WAAW,QAC1C,eACI,iBAAiB,MAAM,MAAMG,SAAQ,WACjC,CAAC,eAAc;AACX,gBAAI,iBAAiB,UAAU,GAAG;AAC9B,yBAAW,UAAU;;UAE7B,CAAC,CAAC;;aAEf;AACH,aAAK,kBAAkB,KAAK,WAAW,IAAI;AAC3C,YAAI,aAAa,WAAW,WAAW,YAAY;AAC/C,uBAAa,WAAW,WAAW,WAAW,QAC1C,eAAa,iBAAiB,MAAM,MAAMA,SAAQ,WAC9C,CAAC,eAAc;AACX,gBAAI,iBAAiB,UAAU,GAAG;AAC9B,yBAAW,UAAU;;UAE7B,CAAC,CAAC;;;AAGlB,YAAM,mBAAmB,aAAa,WAAW,WAAW;AAC5D,UAAI,kBAAkB;AAClB,YAAI,iBAAiB,mBAAmB,OAAO;AAC3C,eAAK,cAAc;YACf,gBAAgB,CAAC,QAAQ;YACzB,gBAAgB,CAAC,eAAmC;AAChD,oBAAM,aAAa,KAAK,QAAQ,WAAW,EAAE;AAC7C,kBAAI,cAAc,iBAAiB,UAAU,GAAG;AAC5C,2BAAW,UAAU;;AAEzB,qBAAO;YACX;WACH;;AAEL,YAAI,iBAAiB,uBAAuB,QAAW;AACnD,eAAK,cAAc;YACf,gBAAgB,CAAC,QAAQ;YACzB,gBAAgB,CAAC,eAAmC;AAChD,oBAAM,aAAa,KAAK,QAAQ,WAAW,EAAE;AAC7C,kBAAI,cAAc,iBAAiB,UAAU,GAAG;AAC5C,2BAAW,SAAS;;AAExB,qBAAO;YACX;WACH;;AAEL,YAAI,iBAAiB,6BAA6B,QAAW;;AAG7D,YAAI,iBAAiB,qBAAqB,OAAO;AAC7C,eAAK,cAAc;YACf,gBAAgB,CAAC,iBAAiB;YAClC,gBAAgB,CAAC,eAAmC;AAChD,oBAAM,aAAa,KAAK,QAAQ,WAAW,EAAE;AAC7C,kBAAI,cAAc,iBAAiB,UAAU,GAAG;AAC5C,2BAAW,UAAU;;AAEzB,qBAAO;YACX;WACH;;AAEL,YAAI,iBAAiB,iCAAiC,QAAW;;AAGjE,YAAI,iBAAiB,yBAAyB,QAAW;AACrD,eAAK,cAAc;YACf,gBAAgB,CAAC,iBAAiB;YAClC,gBAAgB,CAAC,eAAmC;AAChD,oBAAM,aAAa,KAAK,QAAQ,WAAW,EAAE;AAC7C,kBAAI,cAAc,iBAAiB,UAAU,GAAG;AAC5C,2BAAW,SAAS;;AAExB,qBAAO;YACX;WACH;;;;AAKb,QAAI,aAAa,WAAW,WAAW;AACnC,WAAK,mBAAmB,KAAK,mBAAmB,KAAK;AACrD,mBAAa,WAAW,UAAU,QAC9B,eAAa,iBAAiB,MAAM,MAAMA,SAAQ,WAC9C,CAAC,eAAc;AACX,YAAI,iBAAiB,UAAU,GAAG;AAC9B,qBAAW,WAAW;;MAE9B,CAAC,CAAC;;AAGd,QAAI,aAAa,WAAW,cAAc;AACtC,WAAK,iBAAiB,KAAK,iBAAiB,KAAK;AACjD,mBAAa,WAAW,aAAa,QACjC,eAAa,iBAAiB,MAAM,MAAMA,SAAQ,WAC9C,CAAC,eAAc;AACX,YAAI,iBAAiB,UAAU,GAAG;AAC9B,qBAAW,SAAS;;MAE5B,CAAC,CAAC;;AAEd,QAAI,aAAa,WAAW,UAAU;AAClC,mBAAa,WAAW,SAAS,QAAQ,cAAW;AAChD,YAAIC,SAAQ,SAAS;AACrB,YAAI,QAAQ;AACZ,YAAI,eAAe;AACnB,YAAIA,OAAM,WAAW,GAAG;AACpB,kBAAQ,SAASA,OAAM,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI;AAC9C,cAAI,SAAS,KAAO,SAAS,MAAM;AAC/B,oBAAQ;;AAEZ,UAAAA,SAAQA,OAAM,UAAU,CAAC;AACzB,yBAAe;;AAEnB,cAAM,WAAW;UACb,SAASA,OAAM,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI;UACtC,SAASA,OAAM,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI;UACtC,SAASA,OAAM,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI;;AAE1C,iBAAS,WAAW,IAAI,eACpB,iBAAiB,MAAM,MAAMD,SAAQ,WACjC,CAAC,eAAc;AACX,qBAAW,WAAW;AACtB,cAAI,cAAc;AACd,uBAAW,UAAU;;QAE7B,CAAC,CAAC;MACd,CAAC;;;AAIT,MAAI,aAAa,sBAAsB,aAAa,mBAAmB;AACnE,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,QAAI,aAAa,oBAAoB;AACjC,YAAM,iBAAiB,aAAa,mBAAmB,mBAAmBH,SAAQ;AAClF,aAAO,iBAAiB,aAAa,mBAAmB,kBAAkBA,SAAQ;AAClF,WAAK,iBAAiB,aAAa,mBAAmB,kBAAkBA,SAAQ;AAEhF,aAAO,sBAAsB,MAAM,aAAa,mBAAmB;AAEnE,mBAAa;WACV;AACH,YAAM,iBAAiB,aAAa,kBAAkB,mBAAmBA,SAAQ;AACjF,aAAO,iBAAiB,aAAa,kBAAkB,kBAAkBA,SAAQ;AACjF,WAAK,iBAAiB,aAAa,kBAAkB,kBAAkBA,SAAQ;AAE/E,aAAO,gBAAgB,QAAQ,aAAa,kBAAkB;AAE9D,mBAAa;;AAGjB,YAAQ,KAAK,eAAe;AAE5B,QAAI,OAAO,KAAK;AACZ,YAAM,KAAK,GAAG;AACd,aAAO,KAAK,IAAI;AAChB,WAAK,KAAK,EAAE;;AAGhB,QAAI,SAAS;AACT,YAAM,MAAM,KAAK,KAAK;QAClB,aAAa;QACb,WAAW;QACX,cAAc;OACjB;AACD,aAAQ,MAAM,IAAI,WAAW,QAAQ,KAAK,MAAMA,SAAQ;WACrD;AACH,aAAO,QAAQ,KAAK,MAAMA,SAAQ;;AAGtC,QAAI,WAAW;AACX,aAAO,MAAM;AACb,aAAO,OAAO;AACd,aAAO,KAAK;AACZ,aAAO,iBAAiB;WACrB;AACH,WAAK,aAAa,MAAM,EAAC,KAAK,MAAM,IAAI,UAAUG,QAAO,UAAU,WAAU,GAAG,MAAK;MAErF,CAAC;;;AAGb;AAGA,SAAS,iBAAiB,MAAY,MAAYA,SAAgC,WAAyB,UAAQ;AAG/G,MAAI,UAAU,qBAAqB,UAAU,uBAAuBA,QAAO,mBAAmB;AAE1F,UAAM,KAAK,UAAU;AACrB,UAAM,aAAa,KAAK,QAAQ,EAAE;AAElC,QAAI,YAAY;AACZ,eAAS,UAAU;AACnB;;AAGJ,QAAIA,QAAO,wBAAwB;AAC/B,YAAM,aAAa,KAAK,QAAQ,EAAE;AAClC,UAAI,YAAY;AACZ,aAAK,cAAc;UACf,eAAe,WAAW;UAC1B,cAAc;UACd,gBAAgB,CAAC,gBAAgB;UACjC,gBAAgB,CAACE,gBAAmC;AAChD,kBAAMC,cAAa,KAAK,QAAQD,YAAW,EAAE;AAC7C,gBAAIC,aAAY;AACZ,uBAASA,WAAU;;AAEvB,mBAAO;UACX;SACH;AACD;;;;AAKZ,MAAI,UAAU,UAAU;AAEpB,UAAM,mBAAmB,UAAU;AACnC,UAAM,aAAa,KAAK,QAAQ,gBAAgB;AAEhD,QAAI,YAAY;AACZ,eAAS,UAAU;AACnB;;AAGJ,QAAIH,QAAO,wBAAwB;AAC/B,YAAM,aAAa,KAAK,QAAQ,gBAAgB;AAChD,UAAI,YAAY;AACZ,aAAK,cAAc;UACf,eAAe,WAAW;UAC1B,cAAc;UACd,gBAAgB,CAAC,gBAAgB;UACjC,gBAAgB,CAACE,gBAAmC;AAChD,kBAAMC,cAAa,KAAK,QAAQD,YAAW,EAAE;AAC7C,gBAAIC,aAAY;AACZ,uBAASA,WAAU;;AAEvB,mBAAO;UACX;SACH;AACD;;;;AAuBhB;AAMA,SAAS,iBAAiB,KAAgB,MAAqB;AAC3D,SAAO,IAAI,aAAa,CAAC;AACzB,OAAK,CAAC,IAAI,IAAI;AACd,OAAK,CAAC,IAAI,IAAI;AACd,OAAK,CAAC,IAAI,IAAI;AACd,SAAO;AACX;AAMA,SAAS,KAAK,KAAoB;AAC9B,SAAO,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACrD;;;AC1aM,SAAU,iBAAiBC,SAA8B;AAE3D,QAAM,oBAAoBA,QAAO,kBAAkB,IAAI,IAAIA,QAAO,eAAe,IAAI;AACrF,QAAM,oBAAoBA,QAAO,kBAAkB,IAAI,IAAIA,QAAO,eAAe,IAAI;AAErF,QAAM,OAAOA,QAAO;AACpB,QAAM,SAAS,KAAK;AAEpB,QAAM,kBAAkB,WAAU;AAClC,QAAM,wBAAyBA,QAAO,0BAA0B;AAChE,MAAI,eAAoB,CAAA;AAExB,MAAI,gBAAgB,cAAc,QAAQ,OAAO,MAAM,OAAO,KAAK,WAAU,CAAE,CAAC;AAChF,MAAI,MAAM,OAAO;AACjB,MAAI,KAAK,OAAO;AAEhB,MAAI,OAAO,KAAK;AAEZ,oBAAgB,KAAK,aAAa;AAClC,UAAM,KAAK,GAAG;AACd,SAAK,KAAK,EAAE;;AAGhB,QAAM,oBAAoB,iBAAiB,QAAQ,KAAK,eAAe,CAAC;AAExE,MAAI,OAAO,mBAAmB,qBAAqB;AAC/C,iBAAa,oBAAoB;MAC7B;MACA,kBAAkB,iBAAiB,aAAa;MAChD,kBAAkB,iBAAiB,EAAE;MACrC,qBAAqB,OAAO,gBAAgB;;SAE7C;AACH,iBAAa,qBAAqB;MAC9B;MACA,kBAAkB,iBAAiB,aAAa;MAChD,kBAAkB,iBAAiB,EAAE;MACrC,eAAe,OAAO,sBAAsB;;;AAqGpD,eAAa,aAAa;IACtB,YAAY;MACR,kBAAkB;QACd,gBAAgB,CAAC,CAACA,QAAO;QACzB,0BAA0B,CAAC,CAACA,QAAO;QACnC,kBAAkB,CAAC,CAACA,QAAO;QAC3B,oBAAoB,CAAC,CAACA,QAAO;QAC7B,8BAA8B,CAAC,CAACA,QAAO;QACvC,sBAAsB,CAAC,CAACA,QAAO;;;;AAK3C,QAAM,mBAAmB,IAAI,IAAI,KAAK,gBAAgB;AACtD,QAAM,kBAAkB,IAAI,IAAI,KAAK,eAAe;AACpD,QAAM,qBAAqB,IAAI,IAAI,KAAK,kBAAkB;AAE1D,QAAM,cAAc,OAAO,OAAO,KAAK,OAAO,EACzC,OAAO;;;;IAMJ,CAAC,WAAW,UACV,CAAC,qBAAqB,kBAAkB,IAAI,WAAW,MAAM,EAAE,OAC5D,CAAC,qBAAqB,CAAC,kBAAkB,IAAI,WAAW,MAAM,EAAE,MAElE,iBAAiB,IAAI,WAAW,EAAE,KAClC,mBAAmB,IAAI,WAAW,EAAE,KACpC,gBAAgB,IAAI,WAAW,EAAE;GAAC,EACxC,OAAO,CAACC,cAAa,eAA0B;AAE5C,QAAIC,SAAQ,cAAc,WAAW,QAAQ;AAC7C,QAAI;AAEJ,QAAI,WAAW,QAAQ;AACnB,UAAI,KAAK,aAAa,cAAc,KAAO,KAAK,aAAa,cAAc,GAAK;AAE5E,gBAAQ;aACL;AACH,gBAAQ,KAAK,aAAa;;AAE9B,cAAQ,KAAK,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AAC5D,MAAAA,SAAQ,QAAQA;eACT,iBAAiB,IAAI,WAAW,EAAE,GAAG;AAC5C,cAAQ,KAAK,MAAM,WAAW,UAAU,GAAG,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AACzE,MAAAA,SAAQ,QAAQA;;AAGpB,QAAI,CAACD,aAAYC,MAAK,GAAG;AACrB,MAAAD,aAAYC,MAAK,IAAI,CAAA;;AAGzB,UAAM,WAAW,WAAW;AAC5B,UAAM,mBAAmB,WAAW;AACpC,UAAM,YAAiB;MACnB,UAAU;MACV,oBAAoBF,QAAO;;AAE/B,QAAI,qBAAqB,UAAU;AAC/B,gBAAU,oBAAoB;;AAGlC,IAAAC,aAAYC,MAAK,EAAE,KAAK,SAAS;AAEjC,WAAOD;EAEX,GAAG,CAAA,CAAE;AAET,QAAM,gBAAgB,OAAO,QAAQ,WAAW,EAAE,IAAI,CAAC,CAACC,QAAO,UAAU,MAAK;AAC1E,WAAO,EAAC,OAAAA,QAAO,WAAU;EAC7B,CAAC;AAED,eAAa,WAAW,WAAW;AAEnC,QAAM,YAAY,KAAK;AACvB,QAAM,iBAAiB,KAAK;AAC5B,QAAM,mBAAmB,KAAK;AAC9B,QAAM,qBAAqB,UAAU,OAAO,QAAM,CAAC,eAAe,EAAE,CAAC;AACrE,QAAM,oBAAoB,KAAK;AAE/B,MAAIF,QAAO,oBAAoB,iBAAiB,SAAS,mBAAmB,QAAQ;AAChF,iBAAa,WAAW,WAAW,aAAa,oBAAoBA,SAAQ,gBAAgB;AAC5F,iBAAa,WAAW,WAAW,qBAAqB;SACrD;AACH,iBAAa,WAAW,WAAW,aAAa,oBAAoBA,SAAQ,kBAAkB;AAC9F,iBAAa,WAAW,WAAW,qBAAqB;;AAG5D,eAAa,WAAW,YAAY,oBAAoBA,SAAQ,iBAAiB;AAEjF,eAAa,WAAW,eAAe,oBAAoBA,SAAQ,KAAK,eAAe;AAEvF,MAAIA,QAAO,aAAa,OAAO;AAC3B,iBAAa,WAAW;MACpB,eAAe;MACf,eAAe,KAAK,YAAY,EAAC,QAAQ,MAAK,CAAC;;;AAIvD,SAAO;AACX;AAEA,SAAS,oBAAoBA,SAAgC,WAAS;AAClE,QAAM,OAAOA,QAAO;AACpB,QAAM,aAAa,CAAA;AACnB,WAASG,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,UAAM,WAAW,UAAUA,EAAC;AAC5B,UAAM,aAAa,KAAK,QAAQ,QAAQ;AACxC,QAAI,YAAY;AACZ,YAAM,YAAiB;QACnB,UAAU,WAAW;QACrB,oBAAoBH,QAAO;;AAE/B,UAAI,WAAW,qBAAqB,UAAU;AAC1C,kBAAU,oBAAoB;;AAElC,iBAAW,KAAK,SAAS;;;AAGjC,SAAO;AACX;AAOA,SAAS,iBAAiB,KAAoB;AAC1C,SAAO,EAAC,KAAK,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,EAAC;AACjD;AAEA,SAAS,KAAK,KAAoB;AAC9B,SAAO,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACrD;AAMA,SAAS,cAAcI,QAAK;AACxB,MAAI,MAAM;AACV,SAAO,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AAC9D,SAAO,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AAC9D,SAAO,KAAK,MAAMA,OAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG;AAC9D,SAAO;AACX;;;AC5SA,IAAAC,iBAAA;SAAAA,gBAAA;;;;;ACGA,IAAAC,iCAA8B;AAcxB,IAAO,WAAP,MAAO,kBAAiB,UAAS;;;;;;;;;;;;EAanC,OAAO,uBAAuB;;;;;;;;;;EAW9B,OAAO,iBAAiB;;;;;;;;;;EAWxB,OAAO,kBAAkB;;;;EAKzB;;;;;EAMA;;;;;;EAOS;;;;;;EAOA;EAWT;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;;;;;;EAQA,YAAYC,SAAsB;AAE9B,UAAM,IAAI;AAEV,QAAI,CAACA,QAAO,kBAAkB;AAC1B,YAAM,IAAI,MAAM,mCAAmC;;AAGvD,QAAI,CAACA,QAAO,MAAM;AACd,YAAM,IAAI,MAAM,uBAAuB;;AAG3C,QAAI,CAACA,QAAO,MAAM;AACd,YAAM,IAAI,MAAM,uBAAuB;;AAG3C,SAAK,OAAOA,QAAO;AACnB,SAAK,OAAOA,QAAO;AAEnB,SAAK,UAAUA,QAAO,KAAK;AAC3B,SAAK,YAAYA,QAAO;AACxB,SAAK,cAAcA,QAAO;AAC1B,SAAK,aAAa,UAAS;AAC3B,SAAK,oBAAoBA,QAAO;AAChC,SAAK,cAAc,CAAA;AACnB,SAAK,mBAAoBA,QAAO,mBAAmB;AACnD,SAAK,aAAcA,QAAO,cAAc;AACxC,SAAK,mBAAoBA,QAAO,oBAAoB;AACpD,SAAK,eAAe;AACpB,SAAK,mBAAmB;AACxB,SAAK,kBAAkB;AACvB,SAAK,aAAa,CAAA;AAClB,SAAK,eAAe,CAAA;AACpB,SAAK,YAAYA,QAAO;AACxB,SAAK,aAAaA,QAAO;AAEzB,SAAK,mBAAmBA,QAAO;AAE/B,SAAK,yBAAyB;AAC9B,SAAK,aAAa;AAElB,SAAK,qBAAqB,IAAI,aAAa,IAAI,+CAAe,CAA2C;AACzG,SAAK,gBAAgB,IAAI,aAAa,IAAI,+CAAe,CAA0C;AACnG,SAAK,cAAc,IAAI,aAAa,IAAI,+CAAe,CAAkB;AAEzE,SAAK,kBAAkB,gBAAgB,CAAC,MAAK;AACzC,QAAE,eAAc;IACpB;AAEA,SAAK,0BAA0B,KAAK,KAAK,mBAAmB,UAAU,CAAC,MAAY,eAA0B;AACzG,UAAI,KAAK,kBAAkB;AACvB;;AAEJ,YAAM,WAAW,WAAW;AAE5B,YAAM,OAAO,KAAK,aAAa,QAAQ;AACvC,UAAI,CAAC,MAAM;AACP;;AAEJ,YAAM,UAAU,WAAW;AAC3B,YAAM,UAAW,YAAY,KAAK;AAClC,UAAI,CAAC,SAAS;AACV;;AAEJ,WAAK,kBAAkB;AACvB,WAAK,UAAU;AACf,UAAI,SAAS;AACT,aAAK;aACF;AACH,aAAK;;AAET,YAAM,WAA4B,SAAS,eAAe,KAAK,MAAM;AACrE,UAAI,UAAU;AACV,iBAAS,UAAU;;AAEvB,UAAI,aAAa,KAAK;AACtB,aAAO,YAAY;AACf,mBAAW,UAAU;AACrB,YAAI,SAAS;AACT,qBAAW;eACR;AACH,qBAAW;;AAEf,cAAM,iBAAkC,SAAS,eAAe,WAAW,MAAM;AACjF,YAAI,gBAAgB;AAChB,gBAAM,aAAc,WAAW,wBAAwB;AACvD,cAAI,eAAe,eAAe,SAAS;AACvC,2BAAe,UAAU;;;AAGjC,qBAAa,WAAW;;AAE5B,WAAK,kBAAkB;IAC3B,CAAC;AAED,SAAK,sBAAsB,KAAK,KAAK,eAAe,UAAU,CAAC,MAAY,eAA0B;AACjG,UAAI,KAAK,kBAAkB;AACvB;;AAEJ,YAAM,WAAW,WAAW;AAC5B,YAAM,OAAO,KAAK,aAAa,QAAQ;AACvC,UAAI,CAAC,MAAM;AACP;;AAEJ,WAAK,kBAAkB;AACvB,YAAM,SAAS,WAAW;AAC1B,YAAM,UAAW,WAAW,KAAK;AACjC,UAAI,CAAC,SAAS;AACV;;AAEJ,WAAK,SAAS;AACd,YAAM,oBAAoB,UAAU,KAAK;AACzC,YAAM,kBAAkB,SAAS,eAAe,iBAAiB;AACjE,UAAI,oBAAoB,MAAM;AAC1B,YAAI,QAAQ;AACR,0BAAgB,UAAU,IAAI,aAAa;eACxC;AACH,0BAAgB,UAAU,OAAO,aAAa;;;AAGtD,WAAK,kBAAkB;IAC3B,CAAC;AAED,SAAK,uBAAuB,CAAC,UAAqB;AAC9C,YAAM,eAAc;AACpB,YAAM,gBAAe;AACrB,YAAM,gBAA8B,MAAM;AAC1C,WAAK,qBAAqB,aAAa;IAC3C;AAEA,SAAK,yBAAyB,CAAC,UAAS;AACpC,YAAM,eAAc;AACpB,YAAM,gBAAe;AACrB,YAAM,gBAA8B,MAAM;AAC1C,WAAK,uBAAuB,aAAa;IAC7C;AAEA,SAAK,yBAAyB,CAAC,UAAc;AACzC,UAAI,KAAK,iBAAiB;AACtB;;AAEJ,WAAK,mBAAmB;AACxB,YAAM,WAAW,MAAM;AACvB,YAAM,UAAU,SAAS;AACzB,YAAM,SAAS,SAAS;AACxB,YAAM,kBAAkB;AACxB,YAAM,cAAc,KAAK,aAAa,eAAe;AACrD,YAAM,UAAU,KAAK,KAAK;AAC1B,UAAI,aAAa;AACjB,WAAK,cAAc,aAAa,CAAC,SAAsB;AACnD,cAAM,WAAW,KAAK;AACtB,cAAM,aAAa,KAAK;AACxB,cAAM,aAAa,QAAQ,QAAQ;AACnC,cAAM,SAAU,KAAK,WAAW,WAAW;AAC3C,aAAK,wBAAwB,UAAU,KAAK,iBAAiB;AAC7D,YAAI,UAAW,YAAY,KAAK,SAAU;AACtC;;AAEJ,aAAK,UAAU;AACf,cAAM,YAA6B,SAAS,eAAe,UAAU;AACrE,YAAI,WAAW;AACX,oBAAU,UAAU;;AAExB,YAAI,YAAY;AACZ,qBAAW,UAAU;;MAE7B,CAAC;AACD,UAAI,aAAa,YAAY;AAC7B,aAAO,YAAY;AACf,mBAAW,UAAU;AACrB,cAAM,YAA6B,SAAS,eAAe,WAAW,MAAM;AAC5E,YAAI,SAAS;AACT,qBAAW,yBAAyB;eACjC;AACH,qBAAW,yBAAyB;;AAExC,cAAM,aAAc,WAAW,wBAAwB;AACvD,YAAI,eAAe,UAAU,SAAS;AAClC,oBAAU,UAAU;;AAExB,qBAAa,WAAW;;AAE5B,WAAK,mBAAmB;IAC5B;AAEA,SAAK,YAAYA,QAAO;AAExB,UAAM,WAAW,OAAO,KAAK,KAAK,KAAK,MAAM;AAC7C,aAASC,KAAI,GAAG,MAAM,SAAS,QAAQA,KAAI,KAAKA,MAAK;AACjD,YAAM,UAAU,SAASA,EAAC;AAC1B,WAAK,UAAU,OAAO;;AAG1B,SAAK,QAAQ,MAAM,eAAe,UAAU,CAAC,OAAO,eAAc;AAC9D,UAAI,KAAK,KAAK,OAAO,WAAW,EAAE,GAAG;AACjC,aAAK,UAAU,WAAW,EAAE;;IAEpC,CAAC;EACL;;;;;;;;;;EAWA,IAAI,YAAS;AACT,WAAO,KAAK;EAChB;;;;;;;;;;EAWA,IAAI,UAAU,WAAiB;AAC3B,gBAAa,cAAc,QAAQ,cAAc,SAAa,YAAY,UAAS;AACnF,QAAI,cAAc,UAAS,wBAAwB,cAAc,UAAS,mBAAmB,cAAc,UAAS,gBAAgB;AAChI,WAAK,MAAM,kFAAkF;AAC7F,kBAAY,UAAS;;AAEzB,QAAI,KAAK,eAAe,WAAW;AAC/B;;AAEJ,SAAK,aAAa;AAClB,SAAK,cAAa;EACtB;;;;;;;EAQA,IAAI,WAAQ;AACR,WAAO,KAAK;EAChB;;;;;;;EAQA,IAAI,SAAS,UAAgB;AACzB,QAAI,KAAK,cAAc,UAAU;AAC7B;;AAEJ,SAAK,YAAY;AACjB,SAAK,cAAa;EACtB;;;;;;;;;;;;EAaA,IAAI,aAAU;AACV,WAAO,KAAK;EAChB;;;;;;;;;;;;EAaA,IAAI,WAAW,YAAoB;AAC/B,QAAI,KAAK,gBAAgB,YAAY;AACjC;;AAEJ,SAAK,cAAc;AACnB,QAAI,KAAK,eAAe,UAAS,iBAAiB;AAC9C,WAAK,cAAa;;EAE1B;;;;;;;;;;;;;;;;;EAkBA,SAAS,UAAgB;AACrB,QAAI,KAAK,wBAAwB;AAC7B,WAAK,WAAU;;AAEnB,UAAM,OAAO,KAAK,aAAa,QAAQ;AACvC,QAAI,CAAC,MAAM;AACP;;AAEJ,UAAM,SAAS,KAAK;AACpB,UAAM,kBAAkB,YAAY;AACpC,UAAM,gBAAgB,SAAS,eAAe,eAAe;AAC7D,QAAI,eAAe;AACf,WAAK,qBAAqB,aAAa;AACvC,oBAAc,eAAc;AAC5B;;AAEJ,UAAM,OAAO,CAAA;AACb,SAAK,QAAQ,IAAI;AACjB,QAAI,aAAa,KAAK;AACtB,WAAO,YAAY;AACf,WAAK,QAAQ,UAAU;AACvB,mBAAa,WAAW;;AAE5B,aAASA,KAAI,GAAG,MAAM,KAAK,QAAQA,KAAI,KAAKA,MAAK;AAC7C,YAAMC,QAAO,KAAKD,EAAC;AACnB,YAAME,UAASD,MAAK;AACpB,YAAME,mBAAkB,YAAYD;AACpC,YAAME,iBAAgB,SAAS,eAAeD,gBAAe;AAC7D,UAAIC,gBAAe;AACf,aAAK,qBAAqBA,cAAa;;;AAG/C,UAAM,oBAAoB,UAAU;AACpC,UAAM,kBAAkB,SAAS,eAAe,iBAAiB;AAEjE,oBAAgB,eAAe,EAAC,OAAO,SAAQ,CAAC;AAEhD,oBAAgB,UAAU,IAAI,kBAAkB;AAChD,SAAK,yBAAyB;EAClC;;;;;;;;EASA,aAAU;AACN,QAAI,CAAC,KAAK,wBAAwB;AAC9B;;AAEJ,UAAM,kBAAkB,SAAS,eAAe,KAAK,sBAAsB;AAC3E,QAAI,CAAC,iBAAiB;AAClB,WAAK,yBAAyB;AAC9B;;AAEJ,oBAAgB,UAAU,OAAO,kBAAkB;AACnD,SAAK,yBAAyB;EAClC;;;;;;;;EASA,cAAc,OAAa;AACvB,SAAK,SAAQ;AACb,UAAM,SAAS,CAAC,MAAoB,eAAsB;AACtD,UAAI,eAAe,OAAO;AACtB;;AAEJ,YAAM,SAAS,KAAK;AACpB,YAAM,kBAAkB,UAAU,MAAM;AACxC,YAAM,gBAAgB,SAAS,eAAe,eAAe;AAC7D,UAAI,eAAe;AACf,aAAK,qBAAqB,aAAa;AACvC,cAAM,aAAa,KAAK;AACxB,iBAASJ,KAAI,GAAG,MAAM,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACnD,gBAAM,YAAY,WAAWA,EAAC;AAC9B,iBAAO,WAAW,aAAa,CAAC;;;IAG5C;AACA,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,WAAW,KAAK,WAAWA,EAAC;AAClC,aAAO,UAAU,CAAC;;EAE1B;;;;EAKA,WAAQ;AACJ,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,WAAW,KAAK,WAAWA,EAAC;AAClC,YAAM,WAAW,SAAS;AAC1B,WAAK,cAAc,QAAQ;;EAEnC;;;;EAKA,UAAO;AACH,QAAI,CAAC,KAAK,mBAAmB;AACzB;;AAEJ,SAAK,cAAc,CAAA;AACnB,QAAI,KAAK,gBAAgB,CAAC,KAAK,YAAY;AAEvC,WAAK,aAAa,WAAW,YAAY,KAAK,YAAY;AAC1D,WAAK,KAAK,mBAAmB,YAAY,KAAK,uBAAuB;AACrE,WAAK,KAAK,eAAe,YAAY,KAAK,mBAAmB;AAC7D,WAAK,aAAa;;AAEtB,UAAM,QAAO;EACjB;;;;;;;;;;;EAYA,UAAU,SAAiB,UAAU,CAAA,GAAE;AACnC,QAAI,CAAC,KAAK,mBAAmB;AACzB;;AAEJ,UAAM,QAAQ,KAAK,QAAQ,MAAM,OAAO,OAAO;AAC/C,QAAI,CAAC,OAAO;AACR,WAAK,MAAM,yBAAyB,OAAO,EAAE;AAC7C;;AAEJ,UAAM,YAAY,KAAK,KAAK,OAAO,OAAO;AAC1C,QAAI,CAAC,WAAW;AACZ,WAAK,MAAM,wBAAwB,OAAO,EAAE;AAC5C;;AAEJ,QAAI,KAAK,YAAY,OAAO,GAAG;AAC3B,WAAK,MAAM,wBAAwB,OAAO,EAAE;AAC5C;;AAEJ,SAAK,YAAY,OAAO,IAAI;AAC5B,UAAM,YAAY,IAAI,MAAK;AACvB,WAAK,aAAa,MAAM,EAAE;IAC9B,CAAC;AACD,SAAK,cAAa;EACtB;;;;;;;EAQA,aAAa,SAAe;AACxB,QAAI,CAAC,KAAK,mBAAmB;AACzB;;AAEJ,UAAM,YAAY,KAAK,YAAY,OAAO;AAC1C,QAAI,CAAC,WAAW;AACZ;;AAEJ,WAAO,KAAK,YAAY,OAAO;AAC/B,SAAK,cAAa;EACtB;EAEA,gBAAa;AACT,QAAI,KAAK,cAAc;AAEnB,WAAK,aAAa,WAAW,YAAY,KAAK,YAAY;AAC1D,WAAK,eAAe;;AAGxB,SAAK,aAAa,CAAA;AAClB,SAAK,eAAe,CAAA;AAEpB,SAAK,oBAAmB;EAI5B;EAEA,YAAS;AACL,QAAI,QAAQ;AACZ,YAAQ,KAAK,YAAY;MACrB,KAAK,UAAS;AACV,gBAAS,KAAK,WAAW,SAAS;AAElC;MACJ,KAAK,UAAS;AACV,gBAAS,KAAK,WAAW,SAAS;AAClC;MACJ,KAAK,UAAS;MACd;AACI,gBAAS,KAAK,WAAW,SAAS;AAClC;;AAER,WAAO;EACX;EAEA,sCAAsC,QAAQ,GAAG,KAAU,cAAiB;AA4BxE,WAAO;EACX;EAEA,sBAAmB;AACf,QAAI,KAAK,kBAAkB;AACvB,WAAK,gBAAe;;AAExB,YAAQ,KAAK,YAAY;MACrB,KAAK,UAAS;AACV,aAAK,kBAAiB;AACtB,YAAI,KAAK,WAAW,WAAW,GAAG;AAC9B,eAAK,MAAM,oDAAoD;;AAEnE;MACJ,KAAK,UAAS;AACV,aAAK,iBAAgB;AACrB;MACJ,KAAK,UAAS;MACd;AACI,aAAK,uBAAsB;;AAEnC,QAAI,KAAK,YAAY;AACjB,WAAK,aAAY;;AAErB,SAAK,sBAAqB;AAC1B,SAAK,oBAAmB;AACxB,SAAK,cAAc,KAAK,gBAAgB;EAC5C;EAEA,uBAAoB;AAChB,UAAM,UAAU,KAAK,KAAK;AAC1B,aAAS,YAAY,SAAS;AAC1B,YAAM,aAAa,QAAQ,QAAQ;AACnC,UAAI,OAAO,KAAK,WAAW,QAAQ,EAAE,WAAW,GAAG;AAC/C,cAAM,iBAAiB,WAAW;AAClC,cAAMK,SAAO,WAAW;AACxB,cAAM,WAAYA,UAAQA,WAAS,MAAMA,WAAS,eAAeA,WAAS,YAAaA,SAAO,GAAG,cAAc;AAC/G,cAAM,KAAK,SAAS,cAAc,IAAI;AACtC,cAAM,KAAK,SAAS,cAAc,IAAI;AACtC,WAAG,YAAY,EAAE;AACjB,aAAK,kBAAkB,YAAY,EAAE;AACrC,aAAK,eAAe;AACpB,cAAM,gBAAgB,SAAS,cAAc,GAAG;AAChD,sBAAc,OAAO;AACrB,sBAAc,cAAc;AAC5B,sBAAc,UAAU,IAAI,MAAM;AAClC,sBAAc,UAAU,IAAI,SAAS;AACrC,WAAG,YAAY,aAAa;AAC5B,cAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,aAAK,cAAc;AACnB,WAAG,YAAY,IAAI;;;EAG/B;EAEA,kBAAe;AACX,UAAM,UAAU,KAAK,KAAK;AAC1B,aAAS,YAAY,SAAS;AAC1B,YAAM,aAAa,QAAQ,QAAQ;AACnC,UAAI,OAAO,KAAK,WAAW,QAAQ,EAAE,WAAW,GAAG;AAC/C,aAAK,iBAAiB,UAAU;;;EAG5C;EAEA,iBAAiB,YAAsB;AACnC,UAAM,SAAS,KAAK;AACpB,UAAM,QAAQ,OAAO;AACrB,UAAM,eAAe,WAAW,QAAQ,KAAK,SAAS;AACtD,UAAM,WAAW,WAAW;AAC5B,UAAM,aAAa,MAAM,QAAQ,QAAQ;AACzC,QAAI,oBAAoB;AACxB,QAAI,YAAY;AACZ;;AAEJ,QAAI,cAAc;AACd,eAASL,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,cAAM,cAAc,aAAaA,EAAC;AAClC,cAAM,uBAAuB,YAAY;AACzC,cAAM,kBAAkB,KAAK,iBAAiB,oBAAoB;AAClE,aAAK,6BAA6B,qBAAqB,EAAE,IAAI;AAC7D,6BAAqB;;;AAG7B,SAAK,6BAA6B,WAAW,EAAE,IAAI;AACnD,WAAO;EACX;EAEA,oBAAiB;AACb,UAAM,UAAU,KAAK,KAAK;AAC1B,aAAS,YAAY,SAAS;AAC1B,YAAM,aAAa,QAAQ,QAAQ;AACnC,UAAI,OAAO,KAAK,WAAW,QAAQ,EAAE,WAAW,GAAG;AAC/C,aAAK,mBAAmB,YAAY,CAAA,GAAI,MAAM,MAAM,IAAI;;;EAGpE;EAEA,mBACI,YACA,WACA,cACA,YACA,WAAiD;AAEjD,QAAI,KAAK,oBAAqB,CAAC,KAAK,6BAA6B,WAAW,EAAE,GAAI;AAC9E;;AAGJ,UAAM,WAAW,WAAW;AAC5B,UAAM,OAAO,WAAW;AACxB,UAAMK,SAAO,WAAW;AACxB,UAAM,eAAe,WAAW,QAAQ,KAAK,SAAS;AAEtD,QAAI,UAAU,SAAS,KAAK,YAAY,QAAQ;AAC5C,YAAM,YAAY,KAAK,YAAY,UAAU,MAAM;AACnD,UAAI,UAAU,WAAW,GAAG;AACxB,YAAI,SAAS,WAAW;AACpB,gBAAM,OAAqB;YACvB,QAAQ;YACR;YACA,OAAO,KAAK,cAAeA,UAAQA,WAAS,MAAMA,WAAS,eAAeA,WAAS,YAAaA,SAAO;YACvG;YACA,YAAY;YACZ,gBAAgB;YAChB,uBAAuB;YACvB,SAAS;YACT,QAAQ;YACR,YAAY,CAAA;;AAEhB,oBAAU,KAAK,IAAI;AACnB,eAAK,WAAW,KAAK,IAAI;AACzB,eAAK,aAAa,KAAK,QAAQ,IAAI;;aAEpC;AACH,YAAI,SAAS,WAAW;AACpB,gBAAM,aAAa,UAAU,UAAU,SAAS,CAAC;AACjD,gBAAM,OAAqB;YACvB,QAAQ;YACR;YACA,OAAQA,UAAQA,WAAS,MAAMA,WAAS,eAAeA,WAAS,YAAaA,SAAO,GAAG,IAAI;YAC3F;YACA;YACA,gBAAgB;YAChB,uBAAuB;YACvB,SAAS;YACT,QAAQ;YACR,YAAY,CAAA;;AAEhB,qBAAW,WAAW,KAAK,IAAI;AAC/B,oBAAU,KAAK,IAAI;AACnB,eAAK,aAAa,KAAK,QAAQ,IAAI;;;WAGxC;AAEH,YAAM,aAAa,UAAU,UAAU,SAAS,CAAC;AACjD,YAAM,cAAc,KAAK,KAAK;AAC9B,YAAM,aAAa,YAAY,QAAQ;AAKvC,UAAI,YAAY;AACZ,oBAAY,aAAa,CAAA;AACzB,YAAI,WAAyB,UAAU,IAAI;AAC3C,YAAI,CAAC,UAAU;AACX,gBAAM,mBAAmB,WAAW,WAAW,MAAM;AACrD,gBAAM,iBAAiB;AACvB,qBAAW;YACP,QAAQ;YACR,UAAU;YACV,OAAO,GAAG,IAAI;YACd;YACA;YACA,gBAAgB;YAChB,uBAAuB;YACvB,SAAS;YACT,QAAQ;YACR,YAAY,CAAA;;AAEhB,qBAAW,WAAW,KAAK,QAAQ;AACnC,eAAK,aAAa,gBAAgB,IAAI;AACtC,oBAAU,IAAI,IAAI;;AAEtB,cAAM,WAAyB;UAC3B,QAAQ;UACR;UACA,OAAQA,UAAQA,WAAS,MAAMA,WAAS,eAAeA,WAAS,YAAaA,SAAO,KAAK;UACzF;UACA,YAAY;UACZ,gBAAgB;UAChB,uBAAuB;UACvB,SAAS;UACT,QAAQ;UACR,YAAY,CAAA;;AAEhB,iBAAS,WAAW,KAAK,QAAQ;AACjC,aAAK,aAAa,SAAS,QAAQ,IAAI;;;AAI/C,QAAI,cAAc;AACd,eAASL,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,cAAM,cAAc,aAAaA,EAAC;AAClC,cAAM,uBAAuB,YAAY;AACzC,aAAK,mBAAmB,sBAAsB,WAAW,cAAc,YAAY,SAAS;;;EAGxG;EAEA,mBAAgB;AACZ,UAAM,UAAU,KAAK,KAAK;AAC1B,aAAS,YAAY,SAAS;AAC1B,YAAM,aAAa,QAAQ,QAAQ;AACnC,UAAI,OAAO,KAAK,WAAW,QAAQ,EAAE,WAAW,GAAG;AAC/C,aAAK,kBAAkB,YAAY,MAAM,IAAI;;;EAGzD;EAEA,kBAAkB,YAAwB,UAA+B,WAA0D;AAE/H,QAAI,KAAK,oBAAqB,CAAC,KAAK,6BAA6B,WAAW,EAAE,GAAI;AAC9E;;AAGJ,UAAM,WAAW,WAAW;AAC5B,UAAM,OAAO,WAAW;AACxB,UAAMK,SAAO,WAAW;AACxB,UAAM,eAAe,WAAW,QAAQ,KAAK,SAAS;AA+DtD,QAAI,cAAc;AACd,eAASL,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,cAAM,cAAc,aAAaA,EAAC;AAClC,cAAM,uBAAuB,YAAY;AACzC,aAAK,kBAAkB,sBAAsB,UAAU,SAAS;;;EAG5E;EAEA,yBAAsB;AAClB,UAAM,UAAU,KAAK,KAAK;AAC1B,aAAS,YAAY,SAAS;AAC1B,YAAM,aAAa,QAAQ,QAAQ;AACnC,UAAI,OAAO,KAAK,WAAW,QAAQ,EAAE,WAAW,GAAG;AAC/C,aAAK,wBAAwB,YAAY,IAAI;;;EAGzD;EAEA,wBAAwB,YAAwB,YAA+B;AAE3E,QAAI,KAAK,oBAAqB,CAAC,KAAK,6BAA6B,WAAW,EAAE,GAAI;AAC9E;;AAGJ,UAAM,WAAW,WAAW;AAC5B,UAAM,OAAO,WAAW;AACxB,UAAMK,SAAO,WAAW,QAAQ;AAChC,UAAM,eAAe,WAAW,QAAQ,KAAK,SAAS;AAEtD,UAAM,OAAqB;MACvB,QAAQ;MACR;MACA,OAAQ,CAAC,aACF,KAAK,aAAaA,SAClBA,UAAQA,WAAS,MAAMA,WAAS,eAAeA,WAAS,YACrDA,SACA;MACV;MACA;MACA,gBAAgB;MAChB,uBAAuB;MACvB,SAAS;MACT,QAAQ;MACR,YAAY,CAAA;;AAEhB,QAAI,YAAY;AACZ,iBAAW,WAAW,KAAK,IAAI;WAC5B;AACH,WAAK,WAAW,KAAK,IAAI;;AAE7B,SAAK,aAAa,KAAK,QAAQ,IAAI;AAEnC,QAAI,cAAc;AACd,eAASL,KAAI,GAAG,MAAM,aAAa,QAAQA,KAAI,KAAKA,MAAK;AACrD,cAAM,cAAc,aAAaA,EAAC;AAClC,cAAM,uBAAuB,YAAY;AACzC,aAAK,wBAAwB,sBAAsB,IAAI;;;EAGnE;EAEA,eAAY;AACR,aAASA,KAAI,GAAG,MAAM,KAAK,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACxD,YAAM,WAAW,KAAK,WAAWA,EAAC;AAClC,WAAK,gBAAgB,QAAQ;;EAErC;EAEA,gBAAgB,MAAkB;EAelC;EAEA,sBAAmB;EA+BnB;EAEA,eAAe,OAAqB,OAAmB;AACnD,UAAM,SAAS,MAAM,MAAM,YAAW;AACtC,UAAM,SAAS,MAAM,MAAM,YAAW;AACtC,QAAI,SAAS,QAAQ;AACjB,aAAO;;AAEX,QAAI,SAAS,QAAQ;AACjB,aAAO;;AAEX,WAAO;EACX;EAEA,wBAAqB;AACjB,UAAM,YAAY,OAAO,KAAK,KAAK,KAAK,OAAO;AAC/C,UAAM,cAAc,KAAK,KAAK;AAC9B,UAAM,cAAc,KAAK,KAAK;AAC9B,aAASA,KAAI,GAAG,MAAM,UAAU,QAAQA,KAAI,KAAKA,MAAK;AAClD,YAAM,WAAW,UAAUA,EAAC;AAC5B,YAAM,aAAa,YAAY,QAAQ;AACvC,UAAI,YAAY;AACZ,cAAM,OAAO,KAAK,aAAa,QAAQ;AACvC,YAAI,MAAM;AACN,gBAAM,aAAa,YAAY,QAAQ;AACvC,cAAI,YAAY;AACZ,kBAAM,UAAU,WAAW;AAC3B,iBAAK,iBAAiB;AACtB,iBAAK,SAAS,WAAW;AACzB,gBAAI,SAAS;AACT,mBAAK,wBAAwB;AAC7B,mBAAK,UAAU;mBACZ;AACH,mBAAK,wBAAwB;AAC7B,mBAAK,UAAU;;AAEnB,gBAAI,aAAa,KAAK;AACtB,mBAAO,YAAY;AACf,yBAAW;AACX,kBAAI,SAAS;AACT,2BAAW;AACX,2BAAW,UAAU;;AAEzB,2BAAa,WAAW;;;;;;EAMhD;EAEA,cAAc,MAAoB,UAAsC;AACpE,aAAS,IAAI;AACb,UAAM,aAAa,KAAK;AACxB,QAAI,CAAC,YAAY;AACb;;AAEJ,aAASA,KAAI,GAAG,MAAM,WAAW,QAAQA,KAAI,KAAKA,MAAK;AACnD,WAAK,cAAc,WAAWA,EAAC,GAAG,QAAQ;;EAElD;EAEA,sBAAmB;AACf,QAAI,KAAK,WAAW,WAAW,GAAG;AAC9B;;AAEJ,UAAM,mBAAmB,KAAK,WAAW,IAAI,CAAC,aAAY;AACtD,aAAO,KAAK,mBAAmB,QAAQ;IAC3C,CAAC;AACD,UAAM,KAAK,SAAS,cAAc,IAAI;AACtC,qBAAiB,QAAQ,CAAC,gBAAe;AACrC,SAAG,YAAY,WAAW;IAC9B,CAAC;AACD,SAAK,kBAAkB,YAAY,EAAE;AACrC,SAAK,eAAe;EACxB;EAEA,mBAAmB,MAAkB;AACjC,UAAM,cAAc,SAAS,cAAc,IAAI;AAE/C,UAAM,SAAS,KAAK;AACpB,QAAI,KAAK,QAAQ;AACb,kBAAY,UAAU,IAAI,aAAa;;AAE3C,gBAAY,KAAK,UAAU;AAC3B,QAAI,KAAK,WAAW,SAAS,GAAG;AAC5B,YAAM,kBAAkB,YAAY;AACpC,YAAM,gBAAgB,SAAS,cAAc,GAAG;AAChD,oBAAc,OAAO;AACrB,oBAAc,KAAK;AACnB,oBAAc,cAAc;AAC5B,oBAAc,UAAU,IAAI,MAAM;AAClC,oBAAc,iBAAiB,SAAS,KAAK,oBAAoB;AACjE,kBAAY,YAAY,aAAa;;AAEzC,UAAM,WAAW,SAAS,cAAc,OAAO;AAC/C,aAAS,KAAK;AACd,aAAS,OAAO;AAChB,aAAS,UAAU,KAAK;AAExB,aAAS,MAAM,gBAAgB,IAAI;AAEnC,aAAS,iBAAiB,UAAU,KAAK,sBAAsB;AAC/D,gBAAY,YAAY,QAAQ;AAChC,UAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,SAAK,cAAc,KAAK;AACxB,gBAAY,YAAY,IAAI;AAC5B,SAAK,gBAAgB,CAAC,MAAiB;AACnC,WAAK,cAAc,SAAS,MAAoC;QAC5D,OAAO;QACP,UAAU;QACV,cAAc;OACjB;AACD,QAAE,eAAc;IACpB;AACA,SAAK,UAAU,CAAC,MAAiB;AAC7B,WAAK,mBAAmB,SAAS,MAAqC;QAClE,OAAO;QACP,UAAU;QACV,cAAc;OACjB;AACD,QAAE,eAAc;IACpB;AACA,WAAO;EACX;EAEA,qBAAqB,eAA0B;AAC3C,UAAM,gBAAgB,cAAc;AACpC,QAAI,CAAC,eAAe;AAChB;;AAEJ,UAAM,WAAW,cAAc,qBAAqB,IAAI,EAAE,CAAC;AAC3D,QAAI,UAAU;AACV;;AAEJ,UAAM,SAAS,cAAc,GAAG,QAAQ,SAAS,EAAE;AACnD,UAAM,WAAW;AACjB,UAAM,aAAa,KAAK,aAAa,QAAQ;AAC7C,UAAM,aAAa,WAAW;AAC9B,UAAM,eAAe,WAAW,IAAI,CAAC,SAAQ;AACzC,aAAO,KAAK,mBAAmB,IAAI;IACvC,CAAC;AACD,UAAM,KAAK,SAAS,cAAc,IAAI;AACtC,iBAAa,QAAQ,CAAC,gBAAe;AACjC,SAAG,YAAY,WAAW;IAC9B,CAAC;AACD,kBAAc,YAAY,EAAE;AAC5B,kBAAc,UAAU,OAAO,MAAM;AACrC,kBAAc,UAAU,IAAI,OAAO;AACnC,kBAAc,cAAc;AAC5B,kBAAc,oBAAoB,SAAS,KAAK,oBAAoB;AACpE,kBAAc,iBAAiB,SAAS,KAAK,sBAAsB;EACvE;EAEA,cAAc,UAAgB;AAC1B,UAAM,SAAS;AACf,UAAM,kBAAkB,UAAU,MAAM;AACxC,UAAM,gBAAgB,SAAS,eAAe,eAAe;AAC7D,QAAI,CAAC,eAAe;AAChB;;AAEJ,SAAK,uBAAuB,aAAa;EAC7C;EAEA,uBAAuB,eAA0B;AAC7C,QAAI,CAAC,eAAe;AAChB;;AAEJ,UAAM,SAAS,cAAc;AAC7B,QAAI,CAAC,QAAQ;AACT;;AAEJ,UAAM,KAAK,OAAO,cAAc,IAAI;AACpC,QAAI,CAAC,IAAI;AACL;;AAEJ,WAAO,YAAY,EAAE;AACrB,kBAAc,UAAU,OAAO,OAAO;AACtC,kBAAc,UAAU,IAAI,MAAM;AAClC,kBAAc,cAAc;AAC5B,kBAAc,oBAAoB,SAAS,KAAK,sBAAsB;AACtE,kBAAc,iBAAiB,SAAS,KAAK,oBAAoB;EACrE;;", "names": ["i", "s", "name", "name", "EventDispatcher", "name", "require_dist", "name", "require_dist", "require_dist", "name", "require_dist", "require_dist", "name", "require_dist", "require_dist", "i", "dist_exports", "dist_exports", "dist_exports", "s", "i", "t", "t2", "f", "tempVec3", "a", "b", "c", "normal", "tempMat4b2", "p", "r", "p2", "scale", "c2", "angle", "origin", "EPSILON", "canvas", "canvasPos", "dist_exports", "Map", "createUUID", "Map", "t", "i", "l", "resolve", "i", "resolve", "msg", "i", "ab", "err", "a", "i", "r", "t", "n", "c", "resolve", "err", "filename", "o", "o2", "name", "b", "createUUID", "dist_exports", "dist_exports", "dist_exports", "i", "p", "translate", "scale", "createVec3", "i", "dot", "p", "createVec3", "tempVec3b", "tempMat4a", "r", "p", "p2", "i", "tempVec3", "center", "s", "a", "b", "c", "tempVec3a", "rtcCenter", "tempVec4a", "center", "i", "dist_exports", "t", "t2", "p", "dist_exports", "center", "l", "i", "center", "center", "i", "i", "center", "i", "a", "b", "c", "origin", "c", "a", "i", "center", "a", "b", "c", "dist_exports", "import_strongly_typed_events", "messages", "i", "n", "dist_exports", "i", "name", "import_strongly_typed_events", "i", "resolve", "type", "import_strongly_typed_events", "depth", "i", "dist_exports", "import_strongly_typed_events", "import_strongly_typed_events", "params", "i", "params", "color", "i", "dot", "params", "i", "scale", "origin", "resolve", "origin", "origin", "params", "scale", "dist_exports", "params", "params", "i", "geometryView", "viewPos", "canvasPos", "params", "canvasPos", "dist_exports", "MAX_KD_TREE_DEPTH", "kdTreeDimLength", "params", "i", "tempAABBInt16", "insertPoint", "a", "kdTree", "aabb", "insertLine", "b", "insertTriangle", "c", "i", "geometryView", "i", "a", "b", "c", "params", "i", "params", "i", "params", "origin", "dir", "i", "dist_exports", "params", "origin", "i", "l", "a", "b", "c", "dist_exports", "dist_exports", "BasicAggregation", "typeCodes", "typeNames", "dist_exports", "dist_exports", "i", "earcut", "equals", "p", "a", "b", "c", "n", "r", "a2", "b2", "tempVec3a", "tempVec3b", "tempVec3c", "params", "rotateX", "scale", "translate", "i", "typeCodes", "surfaces", "normal", "p", "n", "dot", "dist_exports", "params", "resolve", "i", "color", "tempVec3a", "tempVec3b", "params", "i", "color", "scale", "dist_exports", "__commonJS", "cb", "__commonJS", "module", "Module", "resolve", "err", "assert", "b", "cb", "filename", "module2", "i", "p", "l", "r", "c", "name", "f", "o", "clone", "t", "a", "strings", "s", "a2", "p", "a", "i", "IfcActorRole", "IfcAddress", "IfcApplication", "IfcAppliedValue", "IfcApproval", "IfcApprovalRelationship", "IfcBoundaryCondition", "IfcBoundaryEdgeCondition", "IfcBoundaryFaceCondition", "IfcBoundaryNodeCondition", "IfcBoundaryNodeConditionWarping", "IfcClassification", "IfcColourSpecification", "IfcConnectionGeometry", "IfcConnectionPointGeometry", "IfcConnectionSurfaceGeometry", "IfcConstraint", "IfcCostValue", "IfcCurrencyRelationship", "IfcCurveStyleFont", "IfcCurveStyleFontAndScaling", "IfcCurveStyleFontPattern", "IfcDerivedUnit", "IfcDerivedUnitElement", "IfcDimensionalExponents", "IfcDocumentInformation", "IfcDocumentInformationRelationship", "IfcExternalReference", "IfcExternallyDefinedHatchStyle", "IfcExternallyDefinedSurfaceStyle", "IfcExternallyDefinedTextFont", "IfcGridAxis", "IfcIrregularTimeSeriesValue", "IfcLibraryInformation", "IfcLibraryReference", "IfcLightDistributionData", "IfcLightIntensityDistribution", "IfcMaterial", "IfcMaterialClassificationRelationship", "IfcMaterialLayer", "IfcMaterialLayerSet", "IfcMaterialLayerSetUsage", "IfcMaterialList", "IfcMaterialProperties", "IfcMeasureWithUnit", "IfcMetric", "IfcMonetaryUnit", "IfcNamedUnit", "IfcObjectPlacement", "IfcObjective", "IfcOrganization", "IfcOrganizationRelationship", "IfcOwnerHistory", "IfcPerson", "IfcPersonAndOrganization", "IfcPhysicalQuantity", "IfcPhysicalSimpleQuantity", "IfcPostalAddress", "IfcPreDefinedItem", "IfcPreDefinedTextFont", "IfcPresentationLayerAssignment", "IfcPresentationLayerWithStyle", "IfcPresentationStyle", "IfcPresentationStyleAssignment", "IfcProductRepresentation", "IfcProfileDef", "IfcProfileProperties", "IfcProperty", "IfcPropertyDependencyRelationship", "IfcPropertyEnumeration", "IfcQuantityArea", "IfcQuantityCount", "IfcQuantityLength", "IfcQuantityTime", "IfcQuantityVolume", "IfcQuantityWeight", "IfcReinforcementBarProperties", "IfcRepresentation", "IfcRepresentationContext", "IfcRepresentationItem", "IfcRepresentationMap", "IfcRoot", "IfcSIUnit", "IfcSectionProperties", "IfcSectionReinforcementProperties", "IfcShapeAspect", "IfcShapeModel", "IfcShapeRepresentation", "IfcSimpleProperty", "IfcStructuralConnectionCondition", "IfcStructuralLoad", "IfcStructuralLoadStatic", "IfcStructuralLoadTemperature", "IfcStyleModel", "IfcStyledItem", "IfcStyledRepresentation", "IfcSurfaceStyle", "IfcSurfaceStyleLighting", "IfcSurfaceStyleRefraction", "IfcSurfaceStyleShading", "IfcSurfaceStyleWithTextures", "IfcSurfaceTexture", "IfcTable", "IfcTableRow", "IfcTelecomAddress", "IfcTextStyle", "IfcTextStyleFontModel", "IfcTextStyleForDefinedFont", "IfcTextStyleTextModel", "IfcTextureCoordinate", "IfcTextureCoordinateGenerator", "IfcTextureMap", "IfcTextureVertex", "IfcTimeSeries", "IfcTimeSeriesValue", "IfcTopologicalRepresentationItem", "IfcTopologyRepresentation", "IfcUnitAssignment", "IfcVertex", "IfcVertexPoint", "IfcVirtualGridIntersection", "IfcArbitraryClosedProfileDef", "IfcArbitraryOpenProfileDef", "IfcArbitraryProfileDefWithVoids", "IfcBlobTexture", "IfcCenterLineProfileDef", "IfcClassificationReference", "IfcColourRgb", "IfcComplexProperty", "IfcCompositeProfileDef", "IfcConnectedFaceSet", "IfcConnectionCurveGeometry", "IfcConnectionPointEccentricity", "IfcContextDependentUnit", "IfcConversionBasedUnit", "IfcCurveStyle", "IfcDerivedProfileDef", "IfcDocumentReference", "IfcEdge", "IfcEdgeCurve", "IfcFace", "IfcFaceBound", "IfcFaceOuterBound", "IfcFaceSurface", "IfcFailureConnectionCondition", "IfcFillAreaStyle", "IfcGeometricRepresentationContext", "IfcGeometricRepresentationItem", "IfcGeometricRepresentationSubContext", "IfcGeometricSet", "IfcGridPlacement", "IfcHalfSpaceSolid", "IfcImageTexture", "IfcIrregularTimeSeries", "IfcLightSource", "IfcLightSourceAmbient", "IfcLightSourceDirectional", "IfcLightSourceGoniometric", "IfcLightSourcePositional", "IfcLightSourceSpot", "IfcLocalPlacement", "IfcLoop", "IfcMappedItem", "IfcMaterialDefinitionRepresentation", "IfcObjectDefinition", "IfcOpenShell", "IfcOrientedEdge", "IfcParameterizedProfileDef", "IfcPath", "IfcPhysicalComplexQuantity", "IfcPixelTexture", "IfcPlacement", "IfcPlanarExtent", "IfcPoint", "IfcPointOnCurve", "IfcPointOnSurface", "IfcPolyLoop", "IfcPolygonalBoundedHalfSpace", "IfcPreDefinedColour", "IfcPreDefinedCurveFont", "IfcProductDefinitionShape", "IfcPropertyBoundedValue", "IfcPropertyDefinition", "IfcPropertyEnumeratedValue", "IfcPropertyListValue", "IfcPropertyReferenceValue", "IfcPropertySetDefinition", "IfcPropertySingleValue", "IfcPropertyTableValue", "IfcRectangleProfileDef", "IfcRegularTimeSeries", "IfcReinforcementDefinitionProperties", "IfcRelationship", "IfcRoundedRectangleProfileDef", "IfcSectionedSpine", "IfcShellBasedSurfaceModel", "IfcSlippageConnectionCondition", "IfcSolidModel", "IfcStructuralLoadLinearForce", "IfcStructuralLoadPlanarForce", "IfcStructuralLoadSingleDisplacement", "IfcStructuralLoadSingleDisplacementDistortion", "IfcStructuralLoadSingleForce", "IfcStructuralLoadSingleForceWarping", "IfcSubedge", "IfcSurface", "IfcSurfaceStyleRendering", "IfcSweptAreaSolid", "IfcSweptDiskSolid", "IfcSweptSurface", "IfcTShapeProfileDef", "IfcTextLiteral", "IfcTextLiteralWithExtent", "IfcTrapeziumProfileDef", "IfcTypeObject", "IfcTypeProduct", "IfcUShapeProfileDef", "IfcVector", "IfcVertexLoop", "IfcWindowLiningProperties", "IfcWindowPanelProperties", "IfcWindowStyle", "IfcZShapeProfileDef", "IfcAnnotationFillArea", "IfcAxis1Placement", "IfcAxis2Placement2D", "IfcAxis2Placement3D", "IfcBooleanResult", "IfcBoundedSurface", "IfcBoundingBox", "IfcBoxedHalfSpace", "IfcCShapeProfileDef", "IfcCartesianPoint", "IfcCartesianTransformationOperator", "IfcCartesianTransformationOperator2D", "IfcCartesianTransformationOperator2DnonUniform", "IfcCartesianTransformationOperator3D", "IfcCartesianTransformationOperator3DnonUniform", "IfcCircleProfileDef", "IfcClosedShell", "IfcCompositeCurveSegment", "IfcCsgPrimitive3D", "IfcCsgSolid", "IfcCurve", "IfcCurveBoundedPlane", "IfcDirection", "IfcDoorLiningProperties", "IfcDoorPanelProperties", "IfcDoorStyle", "IfcDraughtingPreDefinedColour", "IfcDraughtingPreDefinedCurveFont", "IfcEdgeLoop", "IfcElementQuantity", "IfcElementType", "IfcElementarySurface", "IfcEllipseProfileDef", "IfcExtrudedAreaSolid", "IfcFaceBasedSurfaceModel", "IfcFillAreaStyleHatching", "IfcFillAreaStyleTiles", "IfcFurnishingElementType", "IfcFurnitureType", "IfcGeometricCurveSet", "IfcIShapeProfileDef", "IfcLShapeProfileDef", "IfcLine", "IfcManifoldSolidBrep", "IfcObject", "IfcOffsetCurve2D", "IfcOffsetCurve3D", "IfcPermeableCoveringProperties", "IfcPlanarBox", "IfcPlane", "IfcProcess", "IfcProduct", "IfcProject", "IfcPropertySet", "IfcProxy", "IfcRectangleHollowProfileDef", "IfcRectangularPyramid", "IfcRectangularTrimmedSurface", "IfcRelAssigns", "IfcRelAssignsToActor", "IfcRelAssignsToControl", "IfcRelAssignsToGroup", "IfcRelAssignsToProcess", "IfcRelAssignsToProduct", "IfcRelAssignsToResource", "IfcRelAssociates", "IfcRelAssociatesApproval", "IfcRelAssociatesClassification", "IfcRelAssociatesConstraint", "IfcRelAssociatesDocument", "IfcRelAssociatesLibrary", "IfcRelAssociatesMaterial", "IfcRelConnects", "IfcRelConnectsElements", "IfcRelConnectsPathElements", "IfcRelConnectsPortToElement", "IfcRelConnectsPorts", "IfcRelConnectsStructuralActivity", "IfcRelConnectsStructuralMember", "IfcRelConnectsWithEccentricity", "IfcRelConnectsWithRealizingElements", "IfcRelContainedInSpatialStructure", "IfcRelCoversBldgElements", "IfcRelCoversSpaces", "IfcRelDecomposes", "IfcRelDefines", "IfcRelDefinesByProperties", "IfcRelDefinesByType", "IfcRelFillsElement", "IfcRelFlowControlElements", "IfcRelNests", "IfcRelProjectsElement", "IfcRelReferencedInSpatialStructure", "IfcRelSequence", "IfcRelServicesBuildings", "IfcRelSpaceBoundary", "IfcRelVoidsElement", "IfcResource", "IfcRevolvedAreaSolid", "IfcRightCircularCone", "IfcRightCircularCylinder", "IfcSpatialStructureElement", "IfcSpatialStructureElementType", "IfcSphere", "IfcStructuralActivity", "IfcStructuralItem", "IfcStructuralMember", "IfcStructuralReaction", "IfcStructuralSurfaceMember", "IfcStructuralSurfaceMemberVarying", "IfcSurfaceCurveSweptAreaSolid", "IfcSurfaceOfLinearExtrusion", "IfcSurfaceOfRevolution", "IfcSystemFurnitureElementType", "IfcTask", "IfcTransportElementType", "IfcActor", "IfcAnnotation", "IfcAsymmetricIShapeProfileDef", "IfcBlock", "IfcBooleanClippingResult", "IfcBoundedCurve", "IfcBuilding", "IfcBuildingStorey", "IfcCircleHollowProfileDef", "IfcColumnType", "IfcCompositeCurve", "IfcConic", "IfcConstructionResource", "IfcControl", "IfcCostItem", "IfcCostSchedule", "IfcCoveringType", "IfcCrewResource", "IfcCurtainWallType", "IfcDistributionElementType", "IfcDistributionFlowElementType", "IfcElement", "IfcElementAssembly", "IfcElementComponent", "IfcElementComponentType", "IfcEllipse", "IfcEnergyConversionDeviceType", "IfcEvaporativeCoolerType", "IfcEvaporatorType", "IfcFacetedBrep", "IfcFacetedBrepWithVoids", "IfcFastener", "IfcFastenerType", "IfcFeatureElement", "IfcFeatureElementAddition", "IfcFeatureElementSubtraction", "IfcFlowControllerType", "IfcFlowFittingType", "IfcFlowMeterType", "IfcFlowMovingDeviceType", "IfcFlowSegmentType", "IfcFlowStorageDeviceType", "IfcFlowTerminalType", "IfcFlowTreatmentDeviceType", "IfcFurnishingElement", "IfcGrid", "IfcGroup", "IfcHeatExchangerType", "IfcHumidifierType", "IfcInventory", "IfcJunctionBoxType", "IfcLaborResource", "IfcLampType", "IfcLightFixtureType", "IfcMechanicalFastener", "IfcMechanicalFastenerType", "IfcMemberType", "IfcMotorConnectionType", "IfcOccupant", "IfcOpeningElement", "IfcOutletType", "IfcPerformanceHistory", "IfcPermit", "IfcPipeFittingType", "IfcPipeSegmentType", "IfcPlateType", "IfcPolyline", "IfcPort", "IfcProcedure", "IfcProjectOrder", "IfcProjectionElement", "IfcProtectiveDeviceType", "IfcPumpType", "IfcRailingType", "IfcRampFlightType", "IfcRelAggregates", "IfcSanitaryTerminalType", "IfcSite", "IfcSlabType", "IfcSpace", "IfcSpaceHeaterType", "IfcSpaceType", "IfcStackTerminalType", "IfcStairFlightType", "IfcStructuralAction", "IfcStructuralConnection", "IfcStructuralCurveConnection", "IfcStructuralCurveMember", "IfcStructuralCurveMemberVarying", "IfcStructuralLinearAction", "IfcStructuralLoadGroup", "IfcStructuralPlanarAction", "IfcStructuralPointAction", "IfcStructuralPointConnection", "IfcStructuralPointReaction", "IfcStructuralResultGroup", "IfcStructuralSurfaceConnection", "IfcSubContractResource", "IfcSwitchingDeviceType", "IfcSystem", "IfcTankType", "IfcTransformerType", "IfcTransportElement", "IfcTrimmedCurve", "IfcTubeBundleType", "IfcUnitaryEquipmentType", "IfcValveType", "IfcVirtualElement", "IfcWallType", "IfcWasteTerminalType", "IfcWorkControl", "IfcWorkPlan", "IfcWorkSchedule", "IfcZone", "IfcActionRequest", "IfcAirTerminalBoxType", "IfcAirTerminalType", "IfcAirToAirHeatRecoveryType", "IfcAsset", "IfcBSplineCurve", "IfcBeamType", "IfcBoilerType", "IfcBuildingElementPart", "IfcBuildingElementProxy", "IfcBuildingElementProxyType", "IfcCableCarrierFittingType", "IfcCableCarrierSegmentType", "IfcCableSegmentType", "IfcChillerType", "IfcCircle", "IfcCoilType", "IfcColumn", "IfcCompressorType", "IfcCondenserType", "IfcConstructionEquipmentResource", "IfcConstructionMaterialResource", "IfcConstructionProductResource", "IfcCooledBeamType", "IfcCoolingTowerType", "IfcCovering", "IfcCurtainWall", "IfcDamperType", "IfcDiscreteAccessory", "IfcDiscreteAccessoryType", "IfcDistributionChamberElementType", "IfcDistributionControlElementType", "IfcDistributionElement", "IfcDistributionFlowElement", "IfcDistributionPort", "IfcDoor", "IfcDuctFittingType", "IfcDuctSegmentType", "IfcDuctSilencerType", "IfcElectricApplianceType", "IfcElectricFlowStorageDeviceType", "IfcElectricGeneratorType", "IfcElectricMotorType", "IfcElectricTimeControlType", "IfcEnergyConversionDevice", "IfcFanType", "IfcFilterType", "IfcFireSuppressionTerminalType", "IfcFlowController", "IfcFlowFitting", "IfcFlowInstrumentType", "IfcFlowMovingDevice", "IfcFlowSegment", "IfcFlowStorageDevice", "IfcFlowTerminal", "IfcFlowTreatmentDevice", "IfcFooting", "IfcMember", "IfcPile", "IfcPlate", "IfcRailing", "IfcRamp", "IfcRampFlight", "IfcReinforcingElement", "IfcReinforcingMesh", "IfcRoof", "IfcSensorType", "IfcSlab", "IfcStair", "IfcStairFlight", "IfcStructuralAnalysisModel", "IfcTendon", "IfcTendonAnchor", "IfcVibrationIsolatorType", "IfcWall", "IfcWallStandardCase", "IfcWindow", "IfcActuatorType", "IfcAlarmType", "IfcBeam", "IfcControllerType", "IfcDistributionChamberElement", "IfcDistributionControlElement", "IfcReinforcingBar", "p2", "IfcConnectionVolumeGeometry", "IfcCoordinateOperation", "IfcCoordinateReferenceSystem", "IfcExternalInformation", "IfcMapConversion", "IfcMaterialDefinition", "IfcMaterialLayerWithOffsets", "IfcMaterialProfile", "IfcMaterialProfileSet", "IfcMaterialProfileWithOffsets", "IfcMaterialUsageDefinition", "IfcPresentationItem", "IfcProjectedCRS", "IfcPropertyAbstraction", "IfcRecurrencePattern", "IfcReference", "IfcResourceLevelRelationship", "IfcSchedulingTime", "IfcStructuralLoadConfiguration", "IfcStructuralLoadOrResult", "IfcSurfaceReinforcementArea", "IfcTableColumn", "IfcTaskTime", "IfcTaskTimeRecurring", "IfcTextureVertexList", "IfcTimePeriod", "IfcWorkTime", "IfcColourRgbList", "IfcConversionBasedUnitWithOffset", "IfcEventTime", "IfcExtendedProperties", "IfcExternalReferenceRelationship", "IfcIndexedColourMap", "IfcIndexedTextureMap", "IfcIndexedTriangleTextureMap", "IfcLagTime", "IfcMaterialConstituent", "IfcMaterialConstituentSet", "IfcMaterialProfileSetUsage", "IfcMaterialProfileSetUsageTapering", "IfcMaterialRelationship", "IfcMirroredProfileDef", "IfcPreDefinedProperties", "IfcPropertyTemplateDefinition", "IfcQuantitySet", "IfcResourceApprovalRelationship", "IfcResourceConstraintRelationship", "IfcResourceTime", "IfcSweptDiskSolidPolygonal", "IfcTessellatedItem", "IfcTypeProcess", "IfcTypeResource", "IfcAdvancedFace", "IfcCartesianPointList", "IfcCartesianPointList2D", "IfcCartesianPointList3D", "IfcConstructionResourceType", "IfcContext", "IfcCrewResourceType", "IfcCurveBoundedSurface", "IfcEventType", "IfcExtrudedAreaSolidTapered", "IfcFixedReferenceSweptAreaSolid", "IfcGeographicElementType", "IfcIndexedPolygonalFace", "IfcIndexedPolygonalFaceWithVoids", "IfcLaborResourceType", "IfcPcurve", "IfcPreDefinedPropertySet", "IfcProcedureType", "IfcProjectLibrary", "IfcPropertySetTemplate", "IfcPropertyTemplate", "IfcRelAssignsToGroupByFactor", "IfcRelDeclares", "IfcRelDefinesByObject", "IfcRelDefinesByTemplate", "IfcRelInterferesElements", "IfcRelSpaceBoundary1stLevel", "IfcRelSpaceBoundary2ndLevel", "IfcReparametrisedCompositeCurveSegment", "IfcRevolvedAreaSolidTapered", "IfcSimplePropertyTemplate", "IfcSpatialElement", "IfcSpatialElementType", "IfcSpatialZone", "IfcSpatialZoneType", "IfcSphericalSurface", "IfcStructuralSurfaceReaction", "IfcSubContractResourceType", "IfcSurfaceCurve", "IfcTaskType", "IfcTessellatedFaceSet", "IfcToroidalSurface", "IfcTriangulatedFaceSet", "IfcAdvancedBrep", "IfcAdvancedBrepWithVoids", "IfcBSplineSurface", "IfcBSplineSurfaceWithKnots", "IfcChimneyType", "IfcCivilElementType", "IfcComplexPropertyTemplate", "IfcCompositeCurveOnSurface", "IfcConstructionEquipmentResourceType", "IfcConstructionMaterialResourceType", "IfcConstructionProductResourceType", "IfcCylindricalSurface", "IfcDoorType", "IfcElementAssemblyType", "IfcEngineType", "IfcEvent", "IfcExternalSpatialStructureElement", "IfcFootingType", "IfcFurniture", "IfcGeographicElement", "IfcIndexedPolyCurve", "IfcInterceptorType", "IfcIntersectionCurve", "IfcMedicalDeviceType", "IfcOpeningStandardCase", "IfcPileType", "IfcPolygonalFaceSet", "IfcRampType", "IfcRationalBSplineSurfaceWithKnots", "IfcReinforcingElementType", "IfcReinforcingMeshType", "IfcRoofType", "IfcSeamCurve", "IfcShadingDeviceType", "IfcSolarDeviceType", "IfcStairType", "IfcStructuralCurveAction", "IfcStructuralCurveReaction", "IfcStructuralSurfaceAction", "IfcSurfaceFeature", "IfcSystemFurnitureElement", "IfcTendonAnchorType", "IfcTendonType", "IfcVibrationIsolator", "IfcVoidingFeature", "IfcWindowType", "IfcWorkCalendar", "IfcAudioVisualApplianceType", "IfcBSplineCurveWithKnots", "IfcBoundaryCurve", "IfcBuildingElementPartType", "IfcBuildingSystem", "IfcBurnerType", "IfcCableFittingType", "IfcChimney", "IfcCivilElement", "IfcColumnStandardCase", "IfcCommunicationsApplianceType", "IfcDistributionSystem", "IfcDoorStandardCase", "IfcElectricDistributionBoardType", "IfcEngine", "IfcEvaporativeCooler", "IfcEvaporator", "IfcExternalSpatialElement", "IfcFlowMeter", "IfcHeatExchanger", "IfcHumidifier", "IfcInterceptor", "IfcJunctionBox", "IfcLamp", "IfcLightFixture", "IfcMedicalDevice", "IfcMemberStandardCase", "IfcMotorConnection", "IfcOuterBoundaryCurve", "IfcOutlet", "IfcPipeFitting", "IfcPipeSegment", "IfcPlateStandardCase", "IfcProtectiveDevice", "IfcProtectiveDeviceTrippingUnitType", "IfcPump", "IfcRationalBSplineCurveWithKnots", "IfcReinforcingBarType", "IfcSanitaryTerminal", "IfcShadingDevice", "IfcSlabElementedCase", "IfcSlabStandardCase", "IfcSolarDevice", "IfcSpaceHeater", "IfcStackTerminal", "IfcStructuralLoadCase", "IfcSwitchingDevice", "IfcTank", "IfcTransformer", "IfcTubeBundle", "IfcUnitaryControlElementType", "IfcUnitaryEquipment", "IfcValve", "IfcWallElementedCase", "IfcWasteTerminal", "IfcWindowStandardCase", "IfcAirTerminal", "IfcAirTerminalBox", "IfcAirToAirHeatRecovery", "IfcAudioVisualAppliance", "IfcBeamStandardCase", "IfcBoiler", "IfcBurner", "IfcCableCarrierFitting", "IfcCableCarrierSegment", "IfcCableFitting", "IfcCableSegment", "IfcChiller", "IfcCoil", "IfcCommunicationsAppliance", "IfcCompressor", "IfcCondenser", "IfcCooledBeam", "IfcCoolingTower", "IfcDamper", "IfcDistributionCircuit", "IfcDuctFitting", "IfcDuctSegment", "IfcDuctSilencer", "IfcElectricAppliance", "IfcElectricDistributionBoard", "IfcElectricFlowStorageDevice", "IfcElectricGenerator", "IfcElectricMotor", "IfcElectricTimeControl", "IfcFan", "IfcFilter", "IfcFireSuppressionTerminal", "IfcFlowInstrument", "IfcProtectiveDeviceTrippingUnit", "IfcSensor", "IfcUnitaryControlElement", "IfcActuator", "IfcAlarm", "IfcController", "tempVec4a", "tempVec4b", "params", "resolve", "i", "name", "origin", "l", "dist_exports", "s", "c", "n", "f", "rank", "t", "i", "p", "b", "copy", "l", "c2", "inflate", "i", "params", "color", "params", "params", "params", "i", "params", "params", "dist_exports", "window_", "document_", "isBrowser", "COLOR", "color", "isBrowser", "name", "assert", "isBrowser", "window_", "isBrowser", "Log", "enabled", "assert", "Log", "name", "module", "VERSION", "assert", "globals", "self_", "window_", "global_", "document_", "isBrowser", "matches", "nodeVersion", "resolve", "assert", "assert", "isBrowser", "name", "assert", "WorkerPool", "name", "onMessage", "isBrowser", "name", "WorkerPool", "isBrowser", "assert", "VERSION", "assert", "isBrowser", "assert", "VERSION", "isBrowser", "name", "i", "i", "resolvePath", "filename", "toArrayBuffer", "toArrayBuffer", "i", "isFunction", "isObject", "isBuffer", "isObject", "isFunction", "isObject", "isFunction", "matches", "matches", "resolve", "i", "resolvePath", "Log", "isObject", "Log", "getFirstCharacters", "getMagicString", "i", "DEFAULT_CHUNK_SIZE", "DEFAULT_CHUNK_SIZE", "toArrayBuffer", "isBuffer", "isObject", "assert", "i", "name", "VERSION", "Module", "dirname", "filename", "readBinary", "assert", "f", "data", "err", "readAsync", "ret", "i", "buffer", "cb", "key", "c", "name", "typeConverters", "o", "handle", "clone", "dynCall", "r", "t", "a", "s", "global", "b", "l", "n", "p", "d", "e", "g", "h", "j", "k", "m", "ua", "ab", "q", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "r", "i", "o", "LASLoader", "a", "i", "color", "LASLoader", "params", "resolve", "log", "LASLoader", "createUUID", "i", "l", "n", "dist_exports", "VERSION", "canvas", "URL", "resolve", "isEmptyObject", "i", "i", "parseImageNode", "VERSION", "parseImageNode", "assert", "assert", "assert", "result", "i", "name", "assert", "n", "ATTRIBUTE_TYPE_TO_COMPONENTS", "ATTRIBUTE_COMPONENT_TYPE_TO_ARRAY", "ATTRIBUTE_COMPONENT_TYPE_TO_BYTE_SIZE", "c", "decode", "name", "name", "decode", "isArray", "params", "i", "decode", "name", "name", "decode", "decodePropertyTextures", "decodePropertyTables", "findPropertyTableByClass", "processPropertyTable", "getPropertyDataFromBinarySource", "getArrayOffsetsForProperty", "getStringOffsetsForProperty", "getPropertyDataNumeric", "isArray", "VERSION", "VERSION", "BASIS", "resolve", "module", "canvas", "NUL", "Uint8Array", "KTX2SupercompressionScheme", "KTX2DataFormatType", "KTX2DataFormatModel", "KTX2DataFormatPrimaries", "KTX2DataFormatTransfer", "KTX2DataFormatFlags", "KTX2DataFormatChannelETC1S", "KTX2DataFormatChannelUASTC", "VERSION", "LITTLE_ENDIAN", "getMagicString", "decode", "name", "decode", "i", "name", "decode", "name", "name", "name", "preprocess", "name", "preprocess", "decode", "name", "preprocess", "VERSION", "VERSION", "numFaces", "i", "resolve", "DracoLoader", "parse", "name", "name", "preprocess", "decode", "DracoLoader", "decode", "name", "isArray", "a", "b", "isArray", "i", "i", "isArray", "a", "b", "t", "scale", "i", "assert", "i", "assert", "a", "b", "a", "forEach", "a", "i", "l", "a", "a", "create", "dot", "a", "b", "cross", "a", "transformMat3", "b", "p", "r", "dot", "forEach", "create", "a", "i", "l", "isArray", "cross", "origin", "transformMat3", "i", "a", "a", "b", "translate", "s", "c", "scale", "INDICES", "a", "scale", "translate", "transformMat3", "name", "decode", "i", "scale", "decode", "encode", "name", "name", "decode", "encode", "assert", "decode", "encode", "name", "name", "decode", "encode", "decode", "encode", "name", "name", "decode", "encode", "EXTENSIONS", "preprocess", "preprocess", "assert", "i", "fetch", "VERSION", "parse", "COMPONENTS", "BYTES", "assert", "i", "params", "resolve", "i", "common", "dist_exports", "inflate", "i", "tempVec4a", "tempVec4b", "i", "decompressColor", "params", "params", "params", "params", "i", "params", "resolve", "i", "response", "dist_exports", "import_strongly_typed_events", "import_strongly_typed_events", "import_strongly_typed_events", "import_strongly_typed_events", "params", "i", "i", "import_strongly_typed_events", "i", "i", "import_strongly_typed_events", "import_strongly_typed_events", "canvasPos", "screenPos", "viewPos", "import_strongly_typed_events", "scale", "canvasPos", "screenPos", "viewPos", "canvas", "import_strongly_typed_events", "canvasPos", "screenPos", "viewPos", "import_strongly_typed_events", "canvasPos", "screenPos", "viewPos", "tempVec3", "tempVec3b", "tempVec3c", "tempVec3d", "tempVec3e", "tempMat", "import_strongly_typed_events", "Map", "tempVec3", "params", "eyeLookVec", "eyeLookVecNorm", "newEye", "newLook", "newUp", "t", "b", "c", "color", "color", "i", "canvas", "createUUID", "i", "params", "createUUID", "cb", "color", "dist_exports", "dist_exports", "params", "config", "resolve", "jsContent", "binaryContent", "EngineFormat", "TranscoderFormat", "BasisFormat", "i", "a", "b", "i", "Map", "i", "a", "name", "canvas", "i", "params", "name", "p", "extension", "params", "faces", "i", "f", "oCanvas", "i", "c", "params", "i", "color", "tempMat4a", "tempMat4b", "params", "i", "center", "color", "params", "tempVec3a", "tempVec4a", "tempVec4b", "i", "color", "r", "b", "a", "n", "i", "color", "i", "i", "RendererFactory", "rendererFactory", "rendererFactory", "tempVec4a", "tempVec3a", "tempVec3b", "tempVec3c", "tempVec3d", "tempVec3e", "tempVec3f", "i", "color", "r", "b", "RendererFactory", "rendererFactory", "rendererFactory", "RendererFactory", "rendererFactory", "rendererFactory", "RendererFactory", "rendererFactory", "rendererFactory", "params", "i", "color", "a", "b", "r", "origin", "createUUID", "import_strongly_typed_events", "Map", "tempVec3a", "tempVec3b", "tempVec3c", "tempMat4b", "params", "color", "enabled", "i", "view", "i", "dist_exports", "tempVec3a", "tempVec3b", "tempVec3c", "tempVec4a", "tempVec4b", "t", "canvasPos", "tempVec3a", "tempVec3b", "tempVec3c", "tempVec4a", "tempVec4b", "tempVec4c", "eyeLookVec", "canvasPos", "canvasPos", "getCanvasPosFromEvent", "canvasPos", "canvas", "i", "getCanvasPosFromEvent", "canvasPos", "tempVec3a", "tempVec3b", "tempVec3c", "tempVec3d", "origin", "getCanvasPosFromEvent", "canvasPos", "i", "EPSILON", "tempVec3", "import_strongly_typed_events", "i", "enabled", "dist_exports", "tempVec3", "tempVec3b", "tempVec3c", "params", "color", "dataObject", "viewObject", "params", "coloringMap", "color", "i", "color", "dist_exports", "import_strongly_typed_events", "params", "i", "node", "nodeId", "switchElementId", "switchElement", "name"] } diff --git a/packages/ktx2/src/index.ts b/packages/ktx2/src/index.ts index b96435298..a6e662f3e 100755 --- a/packages/ktx2/src/index.ts +++ b/packages/ktx2/src/index.ts @@ -12,8 +12,8 @@ * * --- * - * * Provides {@link KTX2TextureTranscoder} - * * Configure a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} that has a {@link KTX2TextureTranscoder} + * * Provides {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} + * * Configure a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} that has a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} * * Then a Viewer is able to view a {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} that has KTX2-encoded compressed textures * * Uses the [Basis Universal GPU SceneTexture Codec](https://github.com/BinomialLLC/basis_universal) to * transcode [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures. @@ -44,7 +44,7 @@ * * ### Loading an DTX file containing [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) textures into a Viewer * - * Create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a + * Create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}. Then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer, and use {@link loadDTX} to * load a [DTX](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#dtx) file with KTX2-compressed textures into the SceneModel. For each [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture in the file, the * KTX2TextureTranscoder will transparently transcode the [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) data for us. @@ -88,8 +88,8 @@ * * ### Loading KTX2 texture files into a Viewer * - * As in the previous example, create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a - * {@link @xeokit/ktx2!KTX2TextureTranscoder}, then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer. + * As in the previous example, create a {@link @xeokit/viewer!Viewer | Viewer} with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a + * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}, then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer. * * This time, we'll build the SceneModel ourselves, using its builder methods. When we * call builder method {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with a path to a KTX2-compressed texture file, the @@ -119,27 +119,27 @@ * view1.camera.look = [4.400, 3.724, 8.899]; * view1.camera.up = [-0.018, 0.999, 0.039]; * - * const viewerModel = myViewer.scene.createModel({ + * const sceneModel = myViewer.scene.createModel({ * id: "myModel" * }); * - * viewerModel.createTexture({ + * sceneModel.createTexture({ * id: "myColorTexture", * src: "sample_uastc_zstd.ktx2" // <<----- KTX2 texture asset * }); * - * viewerModel.createTexture({ + * sceneModel.createTexture({ * id: "myMetallicRoughnessTexture", * src: "crosshatchAlphaMap.jpg" // <<----- JPEG texture asset * }); * - * viewerModel.createTextureSet({ + * sceneModel.createTextureSet({ * id: "myTextureSet", * colorTextureId: "myColorTexture", * metallicRoughnessTextureId: "myMetallicRoughnessTexture" * }); * - * viewerModel.createGeometry({ + * sceneModel.createGeometry({ * id: "myGeometry", * primitive: TrianglesPrimitive, * positions: [1, 1, 1, ...], @@ -148,24 +148,24 @@ * indices: [0, 1, 2, ...], * }); * - * viewerModel.createLayerMesh({ + * sceneModel.createLayerMesh({ * id: "myMesh", * textureSetId: "myTextureSet", * geometryId: "myGeometry" * }); * - * viewerModel.createObject({ + * sceneModel.createObject({ * id: "myObject", * meshIds: ["myMesh"] * }); * - * viewerModel.build(); + * sceneModel.build(); * ```` * * ### Loading [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) texture ArrayBuffers into a Viewer * - * As in the previous two examples, create a {@link @xeokit/viewer!Viewer | Viewer} that has a {@link @xeokit/webglrenderer!WebGLRenderer} configured with a - * {@link @xeokit/ktx2!KTX2TextureTranscoder}, and then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer. + * As in the previous two examples, create a {@link @xeokit/viewer!Viewer | Viewer} that has a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} configured with a + * {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder}, and then create a {@link @xeokit/scene!SceneModel | SceneModel} within the Viewer. * * Once more, build the SceneModel using its builder methods. This time, call builder method * {@link @xeokit/scene!SceneModel.createTexture | SceneModel.createTexture} with an ArrayBuffer containing the contents of a KTX2-compressed texture @@ -195,7 +195,7 @@ * view1.camera.look = [4.400, 3.724, 8.899]; * view1.camera.up = [-0.018, 0.999, 0.039]; * - * const viewerModel = myViewer.scene.createModel({ + * const sceneModel = myViewer.scene.createModel({ * id: "myModel" * }); * @@ -203,23 +203,23 @@ * .then(response => { * if (response.ok) { * - * viewerModel.createTexture({ + * sceneModel.createTexture({ * id: "myColorTexture", * buffers: [arrayBuffer] // <<----- KTX2 texture asset * }); * - * viewerModel.createTexture({ + * sceneModel.createTexture({ * id: "myMetallicRoughnessTexture", * src: "../assets/textures/alpha/crosshatchAlphaMap.jpg" // <<----- JPEG texture asset * }); * - * viewerModel.createTextureSet({ + * sceneModel.createTextureSet({ * id: "myTextureSet", * colorTextureId: "myColorTexture", * metallicRoughnessTextureId: "myMetallicRoughnessTexture" * }); * - * viewerModel.createGeometry({ + * sceneModel.createGeometry({ * id: "myGeometry", * primitive: TrianglesPrimitive, * positions: [1, 1, 1, ...], @@ -228,18 +228,18 @@ * indices: [0, 1, 2, ...], * }); * - * viewerModel.createLayerMesh({ + * sceneModel.createLayerMesh({ * id: "myMesh", * textureSetId: "myTextureSet", * geometryId: "myGeometry" * }); * - * viewerModel.createObject({ + * sceneModel.createObject({ * id: "myObject", * meshIds: ["myMesh"] * }); * - * viewerModel.build(); + * sceneModel.build(); * } * }); * ```` diff --git a/packages/las/src/loadLAS.ts b/packages/las/src/loadLAS.ts index fd9b18e3c..b8e4a2a7d 100644 --- a/packages/las/src/loadLAS.ts +++ b/packages/las/src/loadLAS.ts @@ -48,7 +48,7 @@ export function loadLAS(params: { skip?: number; fp64?: boolean; colorDepth?: string | number, - }): Promise { + }={}): Promise { return new Promise(function (resolve, reject) { diff --git a/packages/scene/src/SceneGeometryCompressedParams.ts b/packages/scene/src/SceneGeometryCompressedParams.ts index b8de4b8a3..5bcd4778f 100644 --- a/packages/scene/src/SceneGeometryCompressedParams.ts +++ b/packages/scene/src/SceneGeometryCompressedParams.ts @@ -7,7 +7,7 @@ import {IntArrayParam} from "@xeokit/math"; * * ## Summary * - * * Created from {@link @xeokit/scene!SceneGeometryParams|SceneGeometryParams} using {@link @xeokit/scene!compressGeometryParams} + * * Created from {@link @xeokit/scene!SceneGeometryParams|SceneGeometryParams} using {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} * * Used with {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed} * * Generates edge indices for triangle meshes * * Ignores normals (our shaders auto-generate them) diff --git a/packages/scene/src/SceneGeometryParams.ts b/packages/scene/src/SceneGeometryParams.ts index d3dee8734..754612d8c 100755 --- a/packages/scene/src/SceneGeometryParams.ts +++ b/packages/scene/src/SceneGeometryParams.ts @@ -7,7 +7,7 @@ import type {FloatArrayParam, IntArrayParam} from "@xeokit/math"; * ## Summary * * * Contains uncompressed, human-readable geometry parameters for {@link @xeokit/scene!SceneModel.createGeometry | SceneModel.createGeometry} - * * Use {@link @xeokit/scene!compressGeometryParams} to compress {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} + * * Use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} * for {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed} * * See usage in: @@ -54,4 +54,4 @@ export interface SceneGeometryParams { * Ignored for primitive type {@link @xeokit/constants!PointsPrimitive}, which does not need indices. */ indices?: IntArrayParam; -} \ No newline at end of file +} diff --git a/packages/scene/src/SceneMeshParams.ts b/packages/scene/src/SceneMeshParams.ts index b56d66a29..2e300510a 100755 --- a/packages/scene/src/SceneMeshParams.ts +++ b/packages/scene/src/SceneMeshParams.ts @@ -46,24 +46,6 @@ export interface SceneMeshParams { */ opacity?: number; - /** - * The metallic-ness of new {@link @xeokit/scene!SceneMesh}. - * - * * This is a continuous factor in the range ````[0,1]````, where 0 is fully non-metallic and 1 is fully metallic. - * * Default is 0. - * * See [*Physically-Based Rendering*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#physically-based-rendering) - */ - metallic?: number; - - /** - * The roughness of new {@link @xeokit/scene!SceneMesh}. - * - * * This is a continuous factor in the range ````[0,1]````, where 0 is fully rough and 1 is perfectly smooth. - * * Default is 1. - * * See [*Physically-Based Rendering*](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#physically-based-rendering) - */ - roughness?: number; - /** * Optional local 3D translation vector. */ @@ -94,7 +76,11 @@ export interface SceneMeshParams { matrix?: FloatArrayParam; /** - * TODO + * Relative-to-center (RTC) origin. + * + * When this is given, then {@link @xeokit/scene!SceneMeshParams.matrix | SceneMeshParams.matrix} will be relative to this origin. + * + * Overrides {@link @xeokit/scene!SceneMeshParams.rtcMatrix | SceneMeshParams.rtcMatrix} */ - rtcMatrix?:FloatArrayParam; + origin?:FloatArrayParam; } diff --git a/packages/scene/src/SceneModel.ts b/packages/scene/src/SceneModel.ts index 65beade5c..26a41c8c7 100644 --- a/packages/scene/src/SceneModel.ts +++ b/packages/scene/src/SceneModel.ts @@ -638,7 +638,7 @@ export class SceneModel extends Component { * Creates a new {@link @xeokit/scene!SceneGeometry} within this SceneModel, from pre-compressed geometry parameters. * * * Stores the new {@link @xeokit/scene!SceneGeometry} in {@link @xeokit/scene!SceneModel.geometries | SceneModel.geometries}. - * * Use {@link @xeokit/scene!compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} + * * Use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to pre-compress {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} * into {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}. * * ### Usage @@ -803,8 +803,15 @@ export class SceneModel extends Component { } else { matrix = matrix.slice(); } - const origin = createVec3(); - const rtcMatrix = createRTCModelMat(matrix, origin); + let origin; + let rtcMatrix = matrix; + if (meshParams.origin) { + origin = meshParams.origin; + rtcMatrix = matrix; + } else { + origin = createVec3(); + rtcMatrix = createRTCModelMat(matrix, origin); + } const tile = this.scene.getTile(origin); if (!this.tiles[tile.id]) { this.tiles[tile.id] = tile; diff --git a/packages/scene/src/SceneModelParams.ts b/packages/scene/src/SceneModelParams.ts index ba045794d..2235df8cc 100755 --- a/packages/scene/src/SceneModelParams.ts +++ b/packages/scene/src/SceneModelParams.ts @@ -72,7 +72,7 @@ export interface SceneModelParams { geometries?: SceneGeometryParams[]; /** - * {@link @xeokit/scene!SceneGeometryCompressedParams} in the SceneModel. + * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams} in the SceneModel. */ geometriesCompressed?: SceneGeometryCompressedParams[]; diff --git a/packages/scene/src/index.ts b/packages/scene/src/index.ts index 06677126b..b27f45ef6 100644 --- a/packages/scene/src/index.ts +++ b/packages/scene/src/index.ts @@ -20,8 +20,8 @@ * To elaborate further: * * * The {@link @xeokit/scene!Scene | Scene} acts as a container for {@link @xeokit/scene!SceneModel | SceneModels}, which, in turn, - * comprise {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | Meshes}, {@link @xeokit/scene!SceneGeometry | Geometries}, and {@link @xeokit/scene!SceneTexture | Textures}. - * * Textures undergo compression to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) via the Basis Universal codec. + * comprise {@link @xeokit/scene!SceneObject | SceneObjects}, {@link @xeokit/scene!SceneMesh | SceneMeshes}, {@link @xeokit/scene!SceneGeometry | SceneGeometries}, and {@link @xeokit/scene!SceneTexture | SceneTextures}. + * * SceneTextures undergo compression to [KTX2](https://xeokit.github.io/sdk/docs/pages/GLOSSARY.html#ktx2) via the Basis Universal codec. * * SceneGeometry undergoes compression through quantization. * * Use a {@link "@xeokit/viewer" | Viewer} to view SceneModels in the browser. A Viewer equipped with a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} can view a Scene that has KTX2-compressed textures. * * Import SceneModels from a variety of model file formats using importer functions like {@link "@xeokit/gltf" | loadGLTF}, {@link "@xeokit/las" | loadLAS}, {@link "@xeokit/cityjson" | loadCityJSON}, and {@link "@xeokit/dtx" | loadDTX}. @@ -33,16 +33,14 @@ * *
    * - * [![](https://mermaid.ink/img/pako:eNqNVU2PmzAQ_SvIp3aVjTaJk0AOPbQr7aVRpc2qlSoujplN3AJGttkmjfLfawwkNph0uQBvnufNh8c-IcoTQCtEUyLlIyM7QbI4T5gAqhjPg6_PcR6YxzCCDYUcTi1mcAFEwVq7ST98dAwpEOFCWcWSNsK3v7TSBTp71IxrS5Il1-_O8koC5B5sYAc8AyWYAyo4qFLABpQHtaA6uW9GxU6lSVpr9dGnWvDYt7zU_gcNOhzbti1ZmthAAlIJbjn2lasO1mmRXTFPhQJCttsBl1WKwUDxKU-5uP4KXu72OUjLta4DSV2IF4QydbQ4RDfncP1v-mUxrs0aCLIpnz9OP1c7u5lWQ-ukkjL63GbZY3BK01LqoelZIGNSsjfoGDqRtftmKK5CsIwp7caCuGTVmMpHoDwr9NaV6045y7cbxrbWn0v6Gwan8Mlh2eFd9L80ApA4yj6Y6dOFwv-0vjP44yi1yb8cC18BfnCR3hRxZXagrGHpV_4SVfs27CBGkxjd3d_r93h8FyPrgHKIBhlg15Lv8eth1lCfX41pS7xk02O5jWz5ZsQtrkVsKdbQOE6x5nY2tcfbizW_10YMtKBd-qle6ynE-xbaG6ldiUYoA5ERlugbz_Q6RmoPGcRopT8TeCVlqmIU52dNJaXim2NO0eqVpBJGqCwSfVY3l-QFhYQpLtbNNVq9RqggOVqd0AGtpouH8WSyxOFiOo9meDnDI3TU8GyMo-UixBGehOEyCqfnEfrLuXb7MA6nC4wX0wgvQzzH88j4-2mMSpRw_geACkF7?type=png)](https://mermaid.live/edit#pako:eNqNVU2PmzAQ_SvIp3aVjTaJk0AOPbQr7aVRpc2qlSoujplN3AJGttkmjfLfawwkNph0uQBvnufNh8c-IcoTQCtEUyLlIyM7QbI4T5gAqhjPg6_PcR6YxzCCDYUcTi1mcAFEwVq7ST98dAwpEOFCWcWSNsK3v7TSBTp71IxrS5Il1-_O8koC5B5sYAc8AyWYAyo4qFLABpQHtaA6uW9GxU6lSVpr9dGnWvDYt7zU_gcNOhzbti1ZmthAAlIJbjn2lasO1mmRXTFPhQJCttsBl1WKwUDxKU-5uP4KXu72OUjLta4DSV2IF4QydbQ4RDfncP1v-mUxrs0aCLIpnz9OP1c7u5lWQ-ukkjL63GbZY3BK01LqoelZIGNSsjfoGDqRtftmKK5CsIwp7caCuGTVmMpHoDwr9NaV6045y7cbxrbWn0v6Gwan8Mlh2eFd9L80ApA4yj6Y6dOFwv-0vjP44yi1yb8cC18BfnCR3hRxZXagrGHpV_4SVfs27CBGkxjd3d_r93h8FyPrgHKIBhlg15Lv8eth1lCfX41pS7xk02O5jWz5ZsQtrkVsKdbQOE6x5nY2tcfbizW_10YMtKBd-qle6ynE-xbaG6ldiUYoA5ERlugbz_Q6RmoPGcRopT8TeCVlqmIU52dNJaXim2NO0eqVpBJGqCwSfVY3l-QFhYQpLtbNNVq9RqggOVqd0AGtpouH8WSyxOFiOo9meDnDI3TU8GyMo-UixBGehOEyCqfnEfrLuXb7MA6nC4wX0wgvQzzH88j4-2mMSpRw_geACkF7) + * [![](https://mermaid.ink/img/pako:eNqNVEuPmzAQ_ivIp3bFog1xeF270qpSo0qbPVVcHHuauAKMbLNKGuW_17wSQwAVDoZvvnmP54KoYIASRDOi1CsnB0nytGBcAtVcFM6P97RwmqdhODsKBVx6rMElEA1bYyb78nUgyIDIIZTXLGUjYv_HeLpB1wlvjWnLJWf375F67QLUEWzgACIHLfkA1HDSlYQd6AnUgtrkfjZe7FS6pI2vR_StdXh-lHy09mcFJhxbtq94xmyAgdJSWIanytUGO2iRXbGJCjmE7PeLHTAazkwHqMiEtBpSEsr1-Q7kxNT-dP_v2mEx7r1YiqEr0XQYCwrG7GLoHc0KGDTJMk7fRXU4FqDUA0NQmlXK3I4HCeRcKf4JI8FUeP2UzAVXSp5zbWxZkFC8vpTqFajISzOoajuqbvW5ILzpf-sIwAaaUzA3u4Da0wLsAN-H4C29_mwSdFK0StHT87M5Pe8pRdZtHhAbZIbdDvP_2J1gttBcHGamh2HUQ25xe-LbaGDHwzUwj3ut0QQseviwLkD9tirIRTnInHBm1nMzJCnSR8ghRYn5ZPCbVJlOUVpcDZVUWuzOBUWJlhW4qCqZ2SvdQu9BYFwLue02fn24qCQFSi7ohBI_ePFWqxBHgb-J1zhcYxedDbz2cBwGEY7xKorCOPKvLvorhLH64kV-gHHgxziM8AZv4sber0ZYu7z-A6rh2zE?type=png)](https://mermaid.live/edit#pako:eNqNVEuPmzAQ_ivIp3bFog1xeF270qpSo0qbPVVcHHuauAKMbLNKGuW_17wSQwAVDoZvvnmP54KoYIASRDOi1CsnB0nytGBcAtVcFM6P97RwmqdhODsKBVx6rMElEA1bYyb78nUgyIDIIZTXLGUjYv_HeLpB1wlvjWnLJWf375F67QLUEWzgACIHLfkA1HDSlYQd6AnUgtrkfjZe7FS6pI2vR_StdXh-lHy09mcFJhxbtq94xmyAgdJSWIanytUGO2iRXbGJCjmE7PeLHTAazkwHqMiEtBpSEsr1-Q7kxNT-dP_v2mEx7r1YiqEr0XQYCwrG7GLoHc0KGDTJMk7fRXU4FqDUA0NQmlXK3I4HCeRcKf4JI8FUeP2UzAVXSp5zbWxZkFC8vpTqFajISzOoajuqbvW5ILzpf-sIwAaaUzA3u4Da0wLsAN-H4C29_mwSdFK0StHT87M5Pe8pRdZtHhAbZIbdDvP_2J1gttBcHGamh2HUQ25xe-LbaGDHwzUwj3ut0QQseviwLkD9tirIRTnInHBm1nMzJCnSR8ghRYn5ZPCbVJlOUVpcDZVUWuzOBUWJlhW4qCqZ2SvdQu9BYFwLue02fn24qCQFSi7ohBI_ePFWqxBHgb-J1zhcYxedDbz2cBwGEY7xKorCOPKvLvorhLH64kV-gHHgxziM8AZv4sber0ZYu7z-A6rh2zE) * *
    * * ### Notes * - * * TextureSets are collections of textures that are shared among Meshes and are organized into texture atlasses to optimize rendering efficiency on GPUs. - * * Each SceneMesh can be assigned to only one SceneObject, whereas each SceneGeometry and SceneTextureSet can be allocated to an unlimited number of Meshes. - * * The {@link getSceneObjectGeometry} function can be used to conveniently iterate the World-space geometry within each - * {@link @xeokit/scene!SceneObject | SceneObject} - useful for building k-d trees, finding intersections etc. + * * SceneTextureSets are collections of textures that are shared among SceneMeshes and are organized into texture atlasses to optimize rendering efficiency on GPUs. + * * Each SceneMesh can be assigned to only one SceneObject, whereas each SceneGeometry and SceneTextureSet can be allocated to an unlimited number of SceneMeshes. * * ## Installation * @@ -61,7 +59,7 @@ * * In the example below, we'll create a {@link @xeokit/scene!SceneModel | SceneModel} that will model the simple table furniture model * shown in the image above. Our SceneModel will get five - * {@link @xeokit/scene!SceneObject | SceneObjects}, five {@link @xeokit/scene!SceneMesh | Meshes}, + * {@link @xeokit/scene!SceneObject | SceneObjects}, five {@link @xeokit/scene!SceneMesh | SceneMeshes}, * a {@link @xeokit/scene!SceneGeometry | SceneGeometry} and a {@link @xeokit/scene!SceneTexture | SceneTexture}. * * When we've finished constructing our SceneModel, we'll call {@link @xeokit/scene!SceneModel.build | SceneModel.build}, which @@ -264,14 +262,14 @@ * ### SceneGeometry Compression * * The geometry from our query example requires a closer look. Internally, the {@link @xeokit/scene!SceneModel.createGeometry} - * method uses the {@link @xeokit/scene!compressGeometryParams} function to compress the geometry and generate edge indices for + * method uses the {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function to compress the geometry and generate edge indices for * rendering it as a wireframe. * * We provide that function as part of the API in case users want to pre-compress the geometry themselves * and then use {@link @xeokit/scene!SceneModel.createGeometryCompressed | SceneModel.createGeometryCompressed} * to create the compressed geometry directly. * - * The {@link @xeokit/scene!compressGeometryParams} function performs these steps to compress the geometry: + * The {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} function performs these steps to compress the geometry: * * * Simplifies geometry by combining duplicate positions and adjusting indices * * Generates edge indices for triangle meshes @@ -287,7 +285,7 @@ * // ... * ```` * - * In the example below, we'll now use {@link @xeokit/scene!compressGeometryParams} to compress + * In the example below, we'll now use {@link @xeokit/scene!compressGeometryParams | compressGeometryParams} to compress * a {@link @xeokit/scene!SceneGeometryParams | SceneGeometryParams} into a * {@link @xeokit/scene!SceneGeometryCompressedParams | SceneGeometryCompressedParams}. * diff --git a/packages/treeview/src/index.ts b/packages/treeview/src/index.ts index 8a97ffa2e..89b5e1b0a 100644 --- a/packages/treeview/src/index.ts +++ b/packages/treeview/src/index.ts @@ -33,7 +33,7 @@ * import {loadDTX} from "@xeokit/dtx"; * ```` * - * Create a {@link @xeokit/viewer!Viewer | Viewer}, configured with a {@link @xeokit/webglrenderer!WebGLRenderer}: + * Create a {@link @xeokit/viewer!Viewer | Viewer}, configured with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}: * * ````javascript * const myViewer = new Viewer({ diff --git a/packages/viewer/src/CameraFlightAnimation.ts b/packages/viewer/src/CameraFlightAnimation.ts index 3b18f7bb5..fd0b56505 100755 --- a/packages/viewer/src/CameraFlightAnimation.ts +++ b/packages/viewer/src/CameraFlightAnimation.ts @@ -132,7 +132,7 @@ class CameraFlightAnimation extends Component { * * When the target is a boundary, the {@link @xeokit/viewer!Camera} will fly towards the target and stop when the target fills most of the canvas. * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up````, then CameraFlightAnimation will interpolate the {@link @xeokit/viewer!Camera} to that target and stop there. * - * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component} subtype that has + * @param {Object|Component} [params=Scene] Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has * an AABB. Defaults to the {@link @xeokit/scene!Scene | Scene}, which causes the {@link @xeokit/viewer!Camera} to fit the Scene in view. * @param [params.arc=0] Factor in range ````[0..1]```` indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} position * will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} position as it flies to the target. @@ -322,7 +322,7 @@ class CameraFlightAnimation extends Component { * * When the target is a boundary, this CameraFlightAnimation will position the {@link @xeokit/viewer!Camera} at where the target fills most of the canvas. * * When the target is an explicit {@link @xeokit/viewer!Camera} position, given as ````eye````, ````look```` and ````up```` vectors, then this CameraFlightAnimation will jump the {@link @xeokit/viewer!Camera} to that target. * - * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component} subtype that has a World-space AABB. + * @param {*|Component} params Either a parameters object or a {@link @xeokit/core!Component | Component} subtype that has a World-space AABB. * @param [params.arc=0] Factor in range [0..1] indicating how much the {@link @xeokit/viewer!Camera.eye | Camera.eye} will swing away from its {@link @xeokit/viewer!Camera.look | Camera.look} as it flies to the target. * @param {Number|String|Component} [params.component] ID or instance of a component to fly to. * @param [params.aabb] World-space axis-aligned bounding box (AABB) target to fly to. diff --git a/packages/viewer/src/index.ts b/packages/viewer/src/index.ts index ed59e2708..07f383563 100755 --- a/packages/viewer/src/index.ts +++ b/packages/viewer/src/index.ts @@ -17,7 +17,7 @@ * * Use a {@link @xeokit/viewer!Viewer | Viewer} to interactively view a {@link @xeokit/scene!Scene | Scene} in all major browsers, including mobile. * * A Viewer has a {@link @xeokit/viewer!Renderer}, which is a pluggable strategy that adapts the Viewer to use various browser graphics APIs. Currently we have two * Renderer implementations: - * {@link @xeokit/webglrenderer!WebGLRenderer} and WebGPURenderer. + * {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer} and WebGPURenderer. * * A Viewer can have multiple {@link @xeokit/viewer!View | Views}, each providing an independently configurable view of the Scene in a separate HTML canvas. * * Each View has a {@link @xeokit/viewer!ViewObject} for each of the {@link @xeokit/scene!SceneObject | SceneObjects} in the Scene, which represnts and controls that * SceneObject's appearance in the View's canvas. @@ -83,8 +83,8 @@ * Create a {@link @xeokit/viewer!Viewer | Viewer} to view our Scene. * * We'll configured it with - * a {@link @xeokit/webglrenderer!WebGLRenderer}, which will adapt the Viewer to use the browser's WebGL graphics API. - * We'll also equip our WebGLRenderer with a {@link @xeokit/ktx2!KTX2TextureTranscoder} so we that we can view compressed textures. + * a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}, which will adapt the Viewer to use the browser's WebGL graphics API. + * We'll also equip our WebGLRenderer with a {@link @xeokit/ktx2!KTX2TextureTranscoder | KTX2TextureTranscoder} so we that we can view compressed textures. * * ````javascript * const myViewer = new Viewer({ diff --git a/packages/webglrenderer/src/createSceneModelStreamParams.ts b/packages/webglrenderer/src/createSceneModelStreamParams.ts index 6a7a4ebd3..2fff39918 100644 --- a/packages/webglrenderer/src/createSceneModelStreamParams.ts +++ b/packages/webglrenderer/src/createSceneModelStreamParams.ts @@ -4,7 +4,7 @@ import {LinesPrimitive, TrianglesPrimitive} from "@xeokit/constants"; /** * Enables a {@link @xeokit/scene!SceneModel | SceneModel} to be progressively loaded - * into {@link @xeokit/viewer!Viewer | Viewer} that's configured with a {@link @xeokit/webglrenderer!WebGLRenderer}. + * into {@link @xeokit/viewer!Viewer | Viewer} that's configured with a {@link @xeokit/webglrenderer!WebGLRenderer | WebGLRenderer}. * * @param sceneModel */ diff --git a/packages/xkt/src/versions/v10/xktToModel.ts b/packages/xkt/src/versions/v10/xktToModel.ts index 569ee0296..9f1d9e17e 100644 --- a/packages/xkt/src/versions/v10/xktToModel.ts +++ b/packages/xkt/src/versions/v10/xktToModel.ts @@ -447,10 +447,8 @@ export function xktToModel(params: { id: meshId, geometryId, textureSetId, - // origin: tileCenter, + origin: tileCenter, color: meshColor, - metallic: meshMetallic, - roughness: meshRoughness, opacity: meshOpacity }); meshIds.push(meshId);